This is pretty4.c in view mode; [Download] [Up]
/* ANSI C code generated by SmallEiffel. */ /* -- SmallEiffel -- Release (- 0.95) -- FRANCE -- Copyright (C), 1994 - Dominique COLNET and Suzanne COLLIN -- University Henri Poincare' - Nancy 1 - email colnet@loria.fr -- CRIN (Centre de Recherche en Informatique de Nancy) -- FRANCE */ #include "pretty.h" T0* rT110run_type(T110 *C){ T0* R=NULL; R=(T0 *)C; return R; } T0* rT110start_position(T110 *C){ T0* R=NULL; R=((T46*)(C)->_base_class_name)->_start_position; return R; } void rT110make(T110 *C,T0* a1){ {T46 *n=((T46*)se_new(46)); rT46make(n,(T0 *)ms177,a1); C->_base_class_name=(T0 *)n;} } T0* rT111run_type(T111 *C){ T0* R=NULL; R=(T0 *)C; return R; } T0* rT111start_position(T111 *C){ T0* R=NULL; R=((T46*)(C)->_base_class_name)->_start_position; return R; } T0* rT111base_class(T111 *C){ T0* R=NULL; R=rT46base_class((T46*)(C)->_base_class_name); return R; } void rT111make(T111 *C,T0* a1){ {T46 *n=((T46*)se_new(46)); rT46make(n,(T0 *)ms178,a1); C->_base_class_name=(T0 *)n;} } T0* rT112run_type(T112 *C){ T0* R=NULL; R=(T0 *)C; return R; } T0* rT112start_position(T112 *C){ T0* R=NULL; R=((T46*)(C)->_base_class_name)->_start_position; return R; } T0* rT112base_class(T112 *C){ T0* R=NULL; R=rT46base_class((T46*)(C)->_base_class_name); return R; } void rT112make(T112 *C,T0* a1){ {T46 *n=((T46*)se_new(46)); rT46make(n,(T0 *)ms189,a1); C->_base_class_name=(T0 *)n;} } T0* rT113run_type(T113 *C){ T0* R=NULL; R=(T0 *)C; return R; } T0* rT113start_position(T113 *C){ T0* R=NULL; R=((T46*)(C)->_base_class_name)->_start_position; return R; } T0* rT113base_class(T113 *C){ T0* R=NULL; R=rT46base_class((T46*)(C)->_base_class_name); return R; } void rT113make(T113 *C,T0* a1){ {T46 *n=((T46*)se_new(46)); rT46make(n,(T0 *)ms181,a1); C->_base_class_name=(T0 *)n;} } T0* rT114run_type(T114 *C){ T0* R=NULL; R=(T0 *)C; return R; } T0* rT114start_position(T114 *C){ T0* R=NULL; R=((T46*)(C)->_base_class_name)->_start_position; return R; } void rT114pretty_print(T114 *C){ rT260put_string((T260*)oRBC27fmt,rT114written_mark(C)); } T0* rT114base_class(T114 *C){ T0* R=NULL; R=rT46base_class((T46*)(C)->_base_class_name); return R; } T0* rT114written_mark(T114 *C){ T0* R=NULL; R=((T46*)(C)->_base_class_name)->_to_string; return R; } T0* rT115start_position(T115 *C){ T0* R=NULL; R=((T46*)(C)->_base_class_name)->_start_position; return R; } void rT115pretty_print(T115 *C){ rT260put_string((T260*)oRBC27fmt,(C)->_written_mark); } T0* rT115base_class(T115 *C){ T0* R=NULL; R=rT46base_class((T46*)(C)->_base_class_name); return R; } void rT115make(T115 *C,T0* a1,T0* a2){ int _is_run=0; T0* _t=NULL; int _i=0; C->_base_class_name=a1; C->_generic_list=a2; _is_run=1; {T7 *n=((T7*)se_new(7)); rT7copy(n,((T46*)a1)->_to_string); C->_written_mark=(T0 *)n;} rT7extend((T7*)(C)->_written_mark,'\133'); _i=1; while (!((_i)>(((T104*)a2)->_upper))) { _t=rT104item((T104*)(C)->_generic_list,_i); rT7append((T7*)(C)->_written_mark,XrT56written_mark(_t)); _is_run=((_is_run)&&(((T0 *)XrT56run_type(_t))==((T0 *)_t))); _i=(_i)+(1); /*IF*/if ((_i)<=(((T104*)a2)->_upper)) { rT7extend((T7*)(C)->_written_mark,'\54'); } /*FI*/} rT7extend((T7*)(C)->_written_mark,'\135'); /*IF*/if (_is_run) { C->_run_type=(T0 *)C; } /*FI*/} void rT58fatal_error(/*C*/T0* a1){ (/*UT*/(void)(T43*)oRBC27eh); rT43fatal_error(a1); } T0*oRBC58storage; void rT58storage_grow(/*C*/int a1){ int _i=0; T0* _str=NULL; _i=((T34*)oRBC58storage)->_upper; rT34resize((T34*)oRBC58storage,1,(((T34*)oRBC58storage)->_upper)+(a1)); while (!((_i)==(((T34*)oRBC58storage)->_upper))) { _i=(_i)+(1); {T7 *n=((T7*)se_new(7)); rT7make(n,80); _str=(T0 *)n;} rT34put((T34*)oRBC58storage,_str,_i); } } int ofBC58sfr=0; T0*oRBC58sfr; T0* rT58sfr(/*C*/void){ if (ofBC58sfr==0){ T0* R=NULL; ofBC58sfr=1; {T42 *n=((T42*)se_new(42)); /*(IRF3*/((n)->_mode)=((T0 *)ms25); /*)*/R=(T0 *)n;} oRBC58sfr=R;} return oRBC58sfr;} T0* rT58item(/*C*/int a1){ T0* R=NULL; R=rT34item((T34*)oRBC58storage,a1); return R; } int ofBC58init_storage=0; void rT58init_storage(/*C*/void){ if (ofBC58init_storage==0){ ofBC58init_storage=1; rT58storage_grow(3000); }} void rT58read(T58 *C,T0* a1){ rT58init_storage(); rT42connect_to((T42*)rT58sfr(),a1); /*IF*/if (rT42is_connected((T42*)rT58sfr())) { C->_count=0; while (!(rT42end_of_input((T42*)rT58sfr()))) { C->_count=((C)->_count)+(1); /*IF*/if ((((T34*)oRBC58storage)->_upper)<((C)->_count)) { rT58storage_grow(1000); } /*FI*/rT42read_line_in((T42*)rT58sfr(),rT34item((T34*)oRBC58storage,(C)->_count)); } rT42disconnect((T42*)rT58sfr()); } else { (/*UT*/(void)(T43*)oRBC27eh); rT43append((T0 *)ms69); (/*UT*/(void)(T43*)oRBC27eh); rT43append(a1); rT58fatal_error((T0 *)ms70); } /*FI*/} T0* rT169expression(T169 *C,int a1){ T0* R=NULL; R=XrT79item((C)->_list,a1); return R; } T0* rT169first(T169 *C){ T0* R=NULL; R=XrT79item((C)->_list,1); return R; } int rT169count(T169 *C){ int R=0; R=XrT79upper((C)->_list); return R; } void rT169pretty_print(T169 *C){ int _i=0; rT260put_character((T260*)oRBC27fmt,'\50'); _i=1; while (!((_i)>(rT169count(C)))) { XrT66pretty_print(rT169expression(C,_i)); _i=(_i)+(1); /*IF*/if ((_i)<=(rT169count(C))) { rT260put_character((T260*)oRBC27fmt,'\54'); } /*FI*/} rT260put_character((T260*)oRBC27fmt,'\51'); } int rT92put_into(T92 *C,T0* a1,int a2){ int R=0; int _rank=0; _rank=rT94index_of((T94*)a1,(T0 *)C); /*IF*/if ((_rank)<=(((T94*)a1)->_upper)) { (/*UT*/(void)(T43*)oRBC27eh); rT43add_position(rT92start_position(C)); (/*UT*/(void)(T43*)oRBC27eh); rT43add_position(rT92start_position((T92*)rT94item((T94*)a1,_rank))); rT43error((T43*)oRBC27eh,(T0 *)ms504); } /*FI*/rT94put((T94*)a1,(T0 *)C,a2); R=(a2)+(1); return R; } T0* rT92start_position(T92 *C){ T0* R=NULL; R=((T95*)(C)->_name)->_start_position; return R; } void rT92pretty_print(T92 *C){ rT95pretty_print((T95*)(C)->_name); rT260put_string((T260*)oRBC27fmt,(T0 *)ms565); XrT56pretty_print((C)->_type); } int rT92is_equal(T92 *C,T0* a1){ int R=0; R=rT7is_equal((T7*)rT95to_key((T95*)(C)->_name),rT95to_key((T95*)((T92*)a1)->_name)); return R; } void rT92make(T92 *C,T0* a1,T0* a2){ C->_name=a1; C->_type=a2; } int rT140put_into(T140 *C,T0* a1,int a2){ int R=0; T0* _d1=NULL; int _i=0; _i=((T139*)(C)->_name_list)->_lower; R=a2; while (!((_i)>(((T139*)(C)->_name_list)->_upper))) { {T92 *n=((T92*)se_new(92)); rT92make(n,rT139item((T139*)(C)->_name_list,_i),(C)->_type); _d1=(T0 *)n;} R=rT92put_into((T92*)_d1,a1,R); _i=(_i)+(1); } return R; } int rT140count(T140 *C){ int R=0; R=rT139count((T139*)(C)->_name_list); return R; } void rT140pretty_print(T140 *C){ int _i=0; _i=((T139*)(C)->_name_list)->_lower; rT95pretty_print((T95*)rT139item((T139*)(C)->_name_list,_i)); _i=(_i)+(1); while (!((_i)>(((T139*)(C)->_name_list)->_upper))) { rT260put_string((T260*)oRBC27fmt,(T0 *)ms563); rT95pretty_print((T95*)rT139item((T139*)(C)->_name_list,_i)); _i=(_i)+(1); } rT260put_string((T260*)oRBC27fmt,(T0 *)ms564); XrT56pretty_print((C)->_type); } void rT140make(T140 *C,T0* a1,T0* a2){ C->_name_list=a1; C->_type=a2; } void rT213pretty_print(T213 *C){ int _i=0; rT260indent((T260*)oRBC27fmt); rT260keyword((T260*)oRBC27fmt,/*(IRF4*/(T0 *)ms106/*)*/); rT260level_incr((T260*)oRBC27fmt); /*IF*/if (((int)(C)->_header_comment)) { rT57pretty_print((T57*)(C)->_header_comment); } else { rT260indent((T260*)oRBC27fmt); } /*FI*//*IF*/if (((int)(C)->_list)) { _i=1; while (!((_i)>(((T156*)(C)->_list)->_upper))) { /*IF*/if (((((T260*)oRBC27fmt)->_zen_mode)&&((_i)==(((T156*)(C)->_list)->_upper)))) { /*(IRF3*/(((T260*)oRBC27fmt)->_semi_colon_flag)=(0); /*)*/} else { /*(IRF3*/(((T260*)oRBC27fmt)->_semi_colon_flag)=(1); /*)*/} /*FI*/rT260indent((T260*)oRBC27fmt); rT62pretty_print((T62*)rT156item((T156*)(C)->_list,_i)); _i=(_i)+(1); } } /*FI*/rT260level_decr((T260*)oRBC27fmt); rT260indent((T260*)oRBC27fmt); } void rT213make(T213 *C,T0* a1,T0* a2,T0* a3){ C->_start_position=a1; C->_header_comment=a2; C->_list=a3; } int rT259all_check(T259 *C){ int R=0; R=((C)->_level)>=(0); return R; } void rT73bracketed_print(T73 *C){ rT260put_character((T260*)oRBC27fmt,'\50'); rT73pretty_print(C); rT260put_character((T260*)oRBC27fmt,'\51'); } T0* rT73to_string(T73 *C){ T0* R=NULL; {T7 *n=((T7*)se_new(7)); rT7make(n,0); R=(T0 *)n;} rT7extend((T7*)R,'\47'); {int iv1=(C)->_pretty_print_mode; if (0 == iv1) goto l2; goto l3; l2: ; rT7extend((T7*)R,(C)->_value); goto l1; l3: ; if (1 == iv1) goto l4; goto l5; l4: ; rT73character_coding((C)->_value,R); goto l1; l5: ; if (2 == iv1) goto l6; goto l7; l6: ; rT7extend((T7*)R,'\45'); rT7extend((T7*)R,'\57'); rT2append_in(((unsigned char)(C)->_value),R); rT7extend((T7*)R,'\57'); goto l1; l7: ; l1: ; } rT7extend((T7*)R,'\47'); return R; } T0* rT73add_comment(T73 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) { R=(T0 *)C; } else { {T219 *n=((T219*)se_new(219)); rT219make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } void rT73print_as_target(T73 *C){ rT73bracketed_print(C); rT260put_character((T260*)oRBC27fmt,'\56'); } void rT73pretty_print(T73 *C){ rT260put_string((T260*)oRBC27fmt,rT73to_string(C)); } void rT73make(T73 *C,T0* a1,char a2,int a3){ C->_start_position=a1; C->_value=a2; /*(IRF3*/((C)->_pretty_print_mode)=(a3); /*)*/} void rT73character_coding(/*C*/char a1,T0* a2){ char _special=0; {int iv1=a1; if (64 == iv1) goto l9; goto l10; l9: ; _special='A'; goto l8; l10: ; if (8 == iv1) goto l11; goto l12; l11: ; _special='B'; goto l8; l12: ; if (94 == iv1) goto l13; goto l14; l13: ; _special='C'; goto l8; l14: ; if (36 == iv1) goto l15; goto l16; l15: ; _special='D'; goto l8; l16: ; if (12 == iv1) goto l17; goto l18; l17: ; _special='F'; goto l8; l18: ; if (92 == iv1) goto l19; goto l20; l19: ; _special='H'; goto l8; l20: ; if (126 == iv1) goto l21; goto l22; l21: ; _special='L'; goto l8; l22: ; if (10 == iv1) goto l23; goto l24; l23: ; _special='N'; goto l8; l24: ; if (96 == iv1) goto l25; goto l26; l25: ; _special='Q'; goto l8; l26: ; if (13 == iv1) goto l27; goto l28; l27: ; _special='R'; goto l8; l28: ; if (35 == iv1) goto l29; goto l30; l29: ; _special='S'; goto l8; l30: ; if (9 == iv1) goto l31; goto l32; l31: ; _special='T'; goto l8; l32: ; if (0 == iv1) goto l33; goto l34; l33: ; _special='U'; goto l8; l34: ; if (124 == iv1) goto l35; goto l36; l35: ; _special='V'; goto l8; l36: ; if (37 == iv1) goto l37; goto l38; l37: ; _special='\45'; goto l8; l38: ; if (39 == iv1) goto l39; goto l40; l39: ; _special='\47'; goto l8; l40: ; if (34 == iv1) goto l41; goto l42; l41: ; _special='\42'; goto l8; l42: ; if (91 == iv1) goto l43; goto l44; l43: ; _special='\50'; goto l8; l44: ; if (93 == iv1) goto l45; goto l46; l45: ; _special='\51'; goto l8; l46: ; if (123 == iv1) goto l47; goto l48; l47: ; _special='\74'; goto l8; l48: ; if (125 == iv1) goto l49; goto l50; l49: ; _special='\76'; goto l8; l50: ; l8: ; } rT7extend((T7*)a2,'\45'); /*IF*/if ((_special)==('\0')) { rT7extend((T7*)a2,'\57'); rT2append_in(((unsigned char)a1),a2); rT7extend((T7*)a2,'\57'); } else { rT7extend((T7*)a2,_special); } /*FI*/} int rT49a_constant(T49 *C){ int R=0; T0* _fn=NULL; T0* _e_current=NULL; /*IF*/if (rT49a_identifier(C)) { R=1; _fn=rT67to_feature_name((T67*)rT49tmp_name()); {T87 *n=((T87*)se_new(87)); rT87make(n,XrT65start_position(_fn),0); _e_current=(T0 *)n;} {T161 *n=((T161*)se_new(161)); rT161make(n,_e_current,_fn); C->_last_expression=(T0 *)n;}} else if (rT49a_character_constant(C)) { R=1; C->_last_expression=(C)->_last_character_constant; } else if (rT49a_integer_constant(C)) { R=1; C->_last_expression=(C)->_last_integer_constant; } /*FI*/return R; } int rT49a_conditional(T49 *C){ int R=0; T0* _ifthenelse=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms347)) { R=1; {T217 *n=((T217*)se_new(217)); /*(IRF3*/((n)->_start_position)=(rT49pos((C)->_start_line,(C)->_start_column)); /*)*/_ifthenelse=(T0 *)n;} rT49a_then_part_list(C,_ifthenelse); /*IF*/if (rT49a_keyword(C,(T0 *)ms99)) { /*(IRF3*/(((T217*)_ifthenelse)->_else_compound)=(rT49a_compound2(C,(T0 *)ms353,(T0 *)ms113)); /*)*/} else { /*IF*/if (!(rT49a_keyword(C,(T0 *)ms113))) { rT49wcp(C,(T0 *)ms354); } /*FI*/} /*FI*/C->_last_instruction=_ifthenelse; } /*FI*/return R; } int rT49a_boolean_constant(T49 *C){ int R=0; /*IF*/if (rT49a_keyword(C,(T0 *)ms152)) { {T71 *n=((T71*)se_new(71)); /*(IRF3*/((n)->_start_position)=(rT49pos((C)->_start_line,(C)->_start_column)); /*)*/C->_last_boolean_constant=(T0 *)n;}R=1; } else if (rT49a_keyword(C,(T0 *)ms153)) { {T72 *n=((T72*)se_new(72)); /*(IRF3*/((n)->_start_position)=(rT49pos((C)->_start_line,(C)->_start_column)); /*)*/C->_last_boolean_constant=(T0 *)n;}R=1; } /*FI*/return R; } int rT49a_then_part(T49 *C,T0* a1){ int R=0; T0* _expression=NULL; /*IF*/if (rT49a_expression(C)) { R=1; _expression=XrT66add_comment((C)->_last_expression,rT49get_comments(C)); /*IF*/if (!(rT49a_keyword(C,(T0 *)ms96))) { rT49wcp(C,(T0 *)ms348); } /*FI*/rT217add_if_then((T217*)a1,_expression,rT49a_compound1(C,(T0 *)ms349)); } /*FI*/return R; } void rT49a_then_part_list(T49 *C,T0* a1){ /*IF*/if (!(rT49a_then_part(C,a1))) { rT49fcp(C,(T0 *)ms350); } /*FI*/while (!(!(rT49a_keyword(C,(T0 *)ms351)))) { /*IF*/if (!(rT49a_then_part(C,a1))) { rT49fcp(C,(T0 *)ms352); } /*FI*/} } T0* rT49get_comments(T49 *C){ T0* R=NULL; /*IF*/if (((int)(C)->_last_comments)) { R=(C)->_last_comments; C->_last_comments=NULL; } /*FI*/return R; } int rT49a_parent(T49 *C){ int R=0; /*IF*/if (rT49a_class_type(C)) { R=1; /*IF*/if (rT7is_equal((T7*)((T46*)rT49current_class_name(C))->_to_string,((T46*)XrT56base_class_name((C)->_last_class_type))->_to_string)) { rT49error(XrT56start_position((C)->_last_class_type),(T0 *)ms217); } /*FI*/{T116 *n=((T116*)se_new(116)); rT116make(n,(C)->_last_class_type); C->_last_parent=(T0 *)n;} /*IF*/if (rT49a_keyword(C,(T0 *)ms220)) { rT49a_rename_list(C); /*IF*/if (((C)->_cc)==('\73')) { rT49wcp(C,(T0 *)ms224); C->_ok=rT49skip1(C,'\73'); } /*FI*/} /*FI*/rT49a_new_export_list(C); /*IF*/if (rT49a_keyword(C,(T0 *)ms235)) { rT49a_undefine_list(C); } /*FI*//*IF*/if (rT49a_keyword(C,(T0 *)ms236)) { rT49a_redefine_list(C); } /*FI*//*IF*/if (rT49a_keyword(C,(T0 *)ms237)) { rT49a_select_list(C); } /*FI*//*IF*/if (((((rT49a_keyword(C,(T0 *)ms238))||(rT49a_keyword(C,(T0 *)ms239)))||(rT49a_keyword(C,(T0 *)ms240)))||(rT49a_keyword(C,(T0 *)ms241)))||(rT49a_keyword(C,(T0 *)ms242))) { (/*UT*/(void)(T43*)oRBC27eh); rT43add_position(rT49pos((C)->_start_line,(C)->_start_column)); rT49fatal_error((T0 *)ms243); } /*FI*/C->_ok=rT49a_keyword(C,(T0 *)ms113); } /*FI*/return R; } void rT49a_parent_list(T49 *C,T0* a1,T0* a2){ T0* _list=NULL; while (!(!(rT49a_parent(C)))) { /*IF*/if (!(_list)) { _list=ma(128,0,1,(C)->_last_parent); } else { rT128add_last((T128*)_list,(C)->_last_parent); } /*FI*/C->_ok=rT49skip1(C,'\73'); /*(IRF3*/(((T116*)(C)->_last_parent)->_comment)=(rT49get_comments(C)); /*)*/} /*IF*/if (((((int)a2))||(((int)_list)))) { rT48set_parent_list((T48*)(C)->_last_base_class,a1,a2,_list); } /*FI*/} int rT49a_when_part(T49 *C,T0* a1){ int R=0; T0* _constant=NULL; T0* _e_when=NULL; int _state=0; /*IF*/if (rT49a_keyword(C,(T0 *)ms359)) { R=1; {T225 *n=((T225*)se_new(225)); rT225make(n,rT49pos((C)->_start_line,(C)->_start_column),rT49get_comments(C)); _e_when=(T0 *)n;} while (!((_state)>(3))) { {int iv1=_state; if (0 == iv1) goto l52; goto l53; l52: ; /*IF*/if (rT49a_constant(C)) { _constant=(C)->_last_expression; _state=1; } else if (rT49a_keyword(C,(T0 *)ms96)) { /*IF*/if (((int)_constant)) { rT225add_value((T225*)_e_when,_constant); } /*FI*//*(IRF3*/(((T225*)_e_when)->_compound)=(rT49a_compound1(C,(T0 *)ms360)); /*)*/rT224add_when((T224*)a1,_e_when); _state=4; } else if (((C)->_cc)==('\54')) { rT49wcp(C,(T0 *)ms226); C->_ok=rT49skip1(C,'\54'); } else { rT49fcp(C,(T0 *)ms361); _state=4; } /*FI*/goto l51; l53: ; if (1 == iv1) goto l54; goto l55; l54: ; /*IF*/if (rT49a_keyword(C,(T0 *)ms96)) { /*IF*/if (((int)_constant)) { rT225add_value((T225*)_e_when,_constant); } /*FI*//*(IRF3*/(((T225*)_e_when)->_compound)=(rT49a_compound1(C,(T0 *)ms362)); /*)*/rT224add_when((T224*)a1,_e_when); _state=4; } else if (rT49skip2(C,'\56','\56')) { _state=2; } else if (rT49skip1(C,'\54')) { rT225add_value((T225*)_e_when,_constant); _constant=NULL; _state=0; } else { rT49fcp(C,(T0 *)ms361); _state=4; } /*FI*/goto l51; l55: ; if (2 == iv1) goto l56; goto l57; l56: ; /*IF*/if (rT49a_constant(C)) { rT225add_slice((T225*)_e_when,_constant,(C)->_last_expression); _constant=NULL; _state=3; } else { rT49fcp(C,(T0 *)ms361); _state=4; } /*FI*/goto l51; l57: ; /*IF*/if (rT49skip1(C,'\54')) { _state=0; } else if (rT49a_keyword(C,(T0 *)ms96)) { /*(IRF3*/(((T225*)_e_when)->_compound)=(rT49a_compound1(C,(T0 *)ms363)); /*)*/rT224add_when((T224*)a1,_e_when); _state=4; } else if (rT49a_constant(C)) { _constant=(C)->_last_expression; rT49warning(rT67start_position((T67*)rT49tmp_name()),(T0 *)ms209); _state=1; } else { rT49fcp(C,(T0 *)ms361); _state=4; } /*FI*/ l51: ; } } } /*FI*/return R; } void rT49a_select_list(T49 *C){ /*IF*/if (rT49a_feature_list(C)) { rT116set_select((T116*)(C)->_last_parent,(C)->_last_feature_list); } /*FI*/} int rT49a_unary(T49 *C){ int R=0; /*IF*/if (rT49a_keyword(C,(T0 *)ms76)) { {T64 *n=((T64*)se_new(64)); rT64make(n,(T0 *)ms76,rT49pos((C)->_start_line,(C)->_start_column)); C->_last_prefix=(T0 *)n;} R=1; } else if (rT49skip1(C,'\53')) { {T64 *n=((T64*)se_new(64)); rT64make(n,(T0 *)ms78,rT49pos((C)->_start_line,(C)->_start_column)); C->_last_prefix=(T0 *)n;} R=1; } else if (rT49skip1(C,'\55')) { {T64 *n=((T64*)se_new(64)); rT64make(n,(T0 *)ms79,rT49pos((C)->_start_line,(C)->_start_column)); C->_last_prefix=(T0 *)n;} R=1; } /*FI*/return R; } int rT49a_rename_pair(T49 *C){ int R=0; T0* _rename_pair=NULL; T0* _name1=NULL; /*IF*/if (rT49a_identifier(C)) { _name1=rT67to_feature_name((T67*)rT49tmp_name()); /*IF*/if (rT49a_keyword(C,(T0 *)ms221)) { /*IF*/if (rT49a_identifier(C)) { R=1; /*IF*/if (rT7is_equal((T7*)((T67*)rT49tmp_name())->_to_string,XrT65to_string(_name1))) { rT49warning(rT67start_position((T67*)rT49tmp_name()),(T0 *)ms222); } else { {T117 *n=((T117*)se_new(117)); rT117make(n,_name1,rT67to_feature_name((T67*)rT49tmp_name())); _rename_pair=(T0 *)n;} rT116add_rename((T116*)(C)->_last_parent,_rename_pair); } /*FI*/} else { rT49fcp(C,(T0 *)ms223); } /*FI*/} else { rT49go_back(C,XrT65start_position(_name1)); } /*FI*/} /*FI*/return R; } void rT49a_rename_list(T49 *C){ while (!(!(rT49a_rename_pair(C)))) { C->_ok=rT49skip1(C,'\54'); } } T0* rT49to_call(/*C*/T0* a1,T0* a2,T0* a3){ T0* R=NULL; /*IF*/if (!(a2)) { R=a1; } else if (!(a3)) { {T161 *n=((T161*)se_new(161)); rT161make(n,a1,a2); R=(T0 *)n;}} else if ((rT169count((T169*)a3))==(1)) { {T173 *n=((T173*)se_new(173)); rT173make(n,a1,a2,a3); R=(T0 *)n;}} else { {T174 *n=((T174*)se_new(174)); rT174make(n,a1,a2,a3); R=(T0 *)n;}} /*FI*/return R; } int rT49a_e10(T49 *C){ int R=0; /*IF*/if (rT49a_strip(C)) { R=1; } else if (rT49skip1(C,'\50')) { R=1; /*IF*/if (rT49a_expression(C)) { /*IF*/if (rT49skip1(C,'\51')) { rT49a_r10(C,0,(C)->_last_expression,NULL,NULL); } else { rT49fcp(C,(T0 *)ms295); } /*FI*/} else { rT49fcp(C,(T0 *)ms296); } /*FI*/} else if (rT49a_manifest_constant(C)) { C->_last_expression=(C)->_last_manifest_constant; R=1; /*IF*/if (rT49skip1unless2(C,'\56','\56')) { rT49wcp(C,(T0 *)ms297); rT49a_after_a_dot(C,0,(C)->_last_expression); } /*FI*/} else if (rT49a_identifier(C)) { R=1; /*IF*/if (((((rT49a_result(C))||(rT49a_current(C)))||(rT49a_void(C)))||(rT49a_local_variable(C)))||(rT49a_argument(C))) { rT49a_r10(C,0,(C)->_last_expression,NULL,NULL); } else { rT49a_function_call(C); } /*FI*/} /*FI*/return R; } void rT49a_assignment_aux(T49 *C,int a1){ T0* _rhs=NULL; T0* _writable=NULL; /*IF*/if (rT49a_current(C)) { (/*UT*/(void)(T43*)oRBC27eh); rT43add_position(XrT66start_position((C)->_last_expression)); rT49fatal_error((T0 *)ms385); } else if (rT49a_void(C)) { (/*UT*/(void)(T43*)oRBC27eh); rT43add_position(rT67start_position((T67*)rT49tmp_name())); rT49fatal_error((T0 *)ms386); } else if (rT49a_argument(C)) { (/*UT*/(void)(T43*)oRBC27eh); rT43add_position(XrT66start_position((C)->_last_expression)); rT49fatal_error((T0 *)ms387); } else { /*IF*/if (rT7same_as((T7*)(T0 *)ms287,((T67*)rT49tmp_name())->_to_string)) { /*IF*/if (!((C)->_function_type)) { rT49error(rT67start_position((T67*)rT49tmp_name()),(T0 *)ms288); } /*FI*/_writable=rT67to_e_result((T67*)rT49tmp_name()); } else if (rT49a_local_variable(C)) { _writable=(C)->_last_expression; } else { _writable=rT67to_feature_name((T67*)rT49tmp_name()); } /*FI*//*IF*/if (rT49a_expression(C)) { _rhs=(C)->_last_expression; /*IF*/if (a1) { {T247 *n=((T247*)se_new(247)); rT247make(n,_writable,_rhs); C->_last_instruction=(T0 *)n;}} else { {T248 *n=((T248*)se_new(248)); rT248make(n,_writable,_rhs); C->_last_instruction=(T0 *)n;}} /*FI*/} else { rT49fcp(C,(T0 *)ms388); } /*FI*/} /*FI*/} int rT49a_assignment_or_call(T49 *C){ int R=0; /*IF*/if ((rT49skip1(C,'\50'))&&(rT49a_expression(C))) { R=1; /*IF*/if (rT49skip1(C,'\51')) { rT49a_r10(C,1,(C)->_last_expression,NULL,NULL); } else { rT49fcp(C,(T0 *)ms384); } /*FI*/} else if (rT49a_identifier(C)) { R=1; /*IF*/if (rT49skip2(C,'\72','\75')) { rT49a_assignment_aux(C,1); } else if (rT49skip2(C,'\77','\75')) { rT49a_assignment_aux(C,0); } else if ((((rT49a_current(C))||(rT49a_result(C)))||(rT49a_local_variable(C)))||(rT49a_argument(C))) { rT49a_r10(C,1,(C)->_last_expression,NULL,NULL); } else { rT49a_procedure_call(C); } /*FI*/} /*FI*/return R; } T0* rT49a_assertion(T49 *C){ T0* R=NULL; int _state=0; T0* _assertion=NULL; T0* _expression=NULL; T0* _tag=NULL; while (!((_state)>(3))) { {int iv1=_state; if (0 == iv1) goto l59; goto l60; l59: ; /*IF*/if (((C)->_cc)==('\73')) { rT49wcp(C,(T0 *)ms230); C->_ok=rT49skip1(C,'\73'); /*IF*/if (((int)(C)->_last_comments)) { {T62 *n=((T62*)se_new(62)); rT62make(n,NULL,NULL,rT49get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(156,0,1,_assertion); } else { rT156add_last((T156*)R,_assertion); } /*FI*/} /*FI*/} else if (rT49a_tag_mark(C)) { _tag=(C)->_last_tag_mark; _state=1; } else if (rT49a_expression(C)) { _expression=(C)->_last_expression; _state=2; } else { _state=4; } /*FI*/goto l58; l60: ; if (1 == iv1) goto l61; goto l62; l61: ; /*IF*/if (rT49skip1(C,'\73')) { {T62 *n=((T62*)se_new(62)); rT62make(n,_tag,NULL,rT49get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(156,0,1,_assertion); } else { rT156add_last((T156*)R,_assertion); } /*FI*/_state=0; } else if (rT49a_tag_mark(C)) { {T62 *n=((T62*)se_new(62)); rT62make(n,_tag,NULL,rT49get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(156,0,1,_assertion); } else { rT156add_last((T156*)R,_assertion); } /*FI*/_tag=(C)->_last_tag_mark; } else if (rT49a_expression(C)) { _expression=(C)->_last_expression; _state=3; } else { {T62 *n=((T62*)se_new(62)); rT62make(n,_tag,NULL,rT49get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(156,0,1,_assertion); } else { rT156add_last((T156*)R,_assertion); } /*FI*/_state=4; } /*FI*/goto l58; l62: ; if (2 == iv1) goto l63; goto l64; l63: ; /*IF*/if (rT49skip1(C,'\73')) { {T62 *n=((T62*)se_new(62)); rT62make(n,NULL,_expression,rT49get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(156,0,1,_assertion); } else { rT156add_last((T156*)R,_assertion); } /*FI*/_state=0; } else if (rT49a_tag_mark(C)) { {T62 *n=((T62*)se_new(62)); rT62make(n,NULL,_expression,rT49get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(156,0,1,_assertion); } else { rT156add_last((T156*)R,_assertion); } /*FI*/_tag=(C)->_last_tag_mark; _state=1; } else if (rT49a_expression(C)) { {T62 *n=((T62*)se_new(62)); rT62make(n,NULL,_expression,rT49get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(156,0,1,_assertion); } else { rT156add_last((T156*)R,_assertion); } /*FI*/_expression=(C)->_last_expression; _state=2; } else { {T62 *n=((T62*)se_new(62)); rT62make(n,NULL,_expression,rT49get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(156,0,1,_assertion); } else { rT156add_last((T156*)R,_assertion); } /*FI*/_state=4; } /*FI*/goto l58; l64: ; /*IF*/if (rT49skip1(C,'\73')) { {T62 *n=((T62*)se_new(62)); rT62make(n,_tag,_expression,rT49get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(156,0,1,_assertion); } else { rT156add_last((T156*)R,_assertion); } /*FI*/_state=0; } else if (rT49a_tag_mark(C)) { {T62 *n=((T62*)se_new(62)); rT62make(n,_tag,_expression,rT49get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(156,0,1,_assertion); } else { rT156add_last((T156*)R,_assertion); } /*FI*/_tag=(C)->_last_tag_mark; _state=1; } else if (rT49a_expression(C)) { {T62 *n=((T62*)se_new(62)); rT62make(n,_tag,_expression,rT49get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(156,0,1,_assertion); } else { rT156add_last((T156*)R,_assertion); } /*FI*/_expression=(C)->_last_expression; _state=2; } else { {T62 *n=((T62*)se_new(62)); rT62make(n,_tag,_expression,rT49get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(156,0,1,_assertion); } else { rT156add_last((T156*)R,_assertion); } /*FI*/_state=4; } /*FI*/ l58: ; } } return R; } void rT49a_formal_arg_list(T49 *C){ int _state=0; T0* _list=NULL; T0* _declaration=NULL; T0* _name_list=NULL; T0* _name=NULL; T0* _sp=NULL; C->_arguments=NULL; while (!((_state)>(5))) { {int iv1=_state; if (0 == iv1) goto l66; goto l67; l66: ; /*IF*/if (rT49skip1(C,'\50')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} _state=1; } else { _state=6; } /*FI*/goto l65; l67: ; if (1 == iv1) goto l68; goto l69; l68: ; /*IF*/if (rT49a_identifier(C)) { _name=rT67to_decl_name((T67*)rT49tmp_name()); _state=2; } else if (rT49skip1(C,'\51')) { _state=6; } else { _state=7; } /*FI*/goto l65; l69: ; if (2 == iv1) goto l70; goto l71; l70: ; /*IF*/if (rT49skip1(C,'\72')) { /*IF*/if (((int)_name_list)) { rT139add_last((T139*)_name_list,_name); _name=NULL; } /*FI*/_state=4; } else { C->_ok=rT49skip1(C,'\54'); /*IF*/if (!(_name_list)) { _name_list=ma(139,0,1,_name); } else { rT139add_last((T139*)_name_list,_name); } /*FI*/_name=NULL; _state=3; } /*FI*/goto l65; l71: ; if (3 == iv1) goto l72; goto l73; l72: ; /*IF*/if (rT49a_identifier(C)) { _name=rT67to_decl_name((T67*)rT49tmp_name()); _state=2; } else if (((((C)->_cc)==('\54'))||(((C)->_cc)==('\73')))) { rT49wcp(C,(T0 *)ms250); C->_ok=(rT49skip1(C,'\54'))||(rT49skip1(C,'\73')); } else { _state=7; } /*FI*/goto l65; l73: ; if (4 == iv1) goto l74; goto l75; l74: ; /*IF*/if (rT49a_type(C)) { /*IF*/if (((int)_name_list)) { {T140 *n=((T140*)se_new(140)); rT140make(n,_name_list,(C)->_last_type); _declaration=(T0 *)n;}_name_list=NULL; } else { {T92 *n=((T92*)se_new(92)); rT92make(n,_name,(C)->_last_type); _declaration=(T0 *)n;}_name=NULL; } /*FI*//*IF*/if (!(_list)) { _list=ma(141,0,1,_declaration); } else { XrT141add_last(_list,_declaration); } /*FI*/_declaration=NULL; _state=5; } else { _state=7; } /*FI*/goto l65; l75: ; /*IF*/if (rT49skip1(C,'\51')) { _state=6; } else if (((C)->_cc)==('\54')) { rT49wcp(C,(T0 *)ms251); C->_ok=rT49skip1(C,'\54'); _state=1; } else { C->_ok=rT49skip1(C,'\73'); _state=1; } /*FI*/ l65: ; } } /*IF*/if ((_state)==(7)) { rT49fcp(C,(T0 *)ms252); } else if ((((int)_sp))&&(!(_list))) { rT49warning(_sp,(T0 *)ms253); } else if (((int)_sp)) { {T90 *n=((T90*)se_new(90)); rT90make(n,_sp,_list); C->_arguments=(T0 *)n;} /*(IRF3*/(((T134*)oRBC49tmp_feature)->_arguments)=((C)->_arguments); /*)*/} /*FI*/} void rT49a_undefine_list(T49 *C){ /*IF*/if (rT49a_feature_list(C)) { rT116set_undefine((T116*)(C)->_last_parent,(C)->_last_feature_list); } /*FI*/} int rT49a_prefix(T49 *C){ int R=0; /*IF*/if (rT49a_keyword(C,(T0 *)ms73)) { R=1; /*IF*/if (((C)->_cc)==('\42')) { rT49next_char(C); } else { rT49wcp(C,(T0 *)ms75); } /*FI*//*IF*/if (rT49a_unary(C)) { } else if (rT49a_free_operator(C)) { C->_last_prefix=rT67to_prefix_name((T67*)rT49tmp_operator()); } else { rT49fcp(C,(T0 *)ms80); } /*FI*//*IF*/if (!(rT49skip1(C,'\42'))) { rT49wcp(C,(T0 *)ms81); } /*FI*/} /*FI*/return R; } void rT49a_formal_generic_list(T49 *C){ int _state=0; T0* _list=NULL; T0* _fga=NULL; T0* _constraint=NULL; T0* _name=NULL; T0* _sp=NULL; C->_formal_generic_list=NULL; while (!((_state)>(4))) { {int iv1=_state; if (0 == iv1) goto l77; goto l78; l77: ; /*IF*/if (rT49skip1(C,'\133')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} _state=1; } else { _state=5; } /*FI*/goto l76; l78: ; if (1 == iv1) goto l79; goto l80; l79: ; /*IF*/if (rT49a_base_class_name(C)) { _name=(C)->_last_class_name; _state=2; } else { _state=6; } /*FI*/goto l76; l80: ; if (2 == iv1) goto l81; goto l82; l81: ; /*IF*/if (rT49skip2(C,'\55','\76')) { _state=4; } else if ((((C)->_cc)==('\54'))||(((C)->_cc)==('\135'))) { {T82 *n=((T82*)se_new(82)); rT82make(n,_name,_constraint); _fga=(T0 *)n;} _name=NULL; _constraint=NULL; /*IF*/if (!(_list)) { _list=ma(84,0,1,_fga); } else { rT84add_last((T84*)_list,_fga); } /*FI*/_fga=NULL; /*IF*/if (rT49skip1(C,'\54')) { _state=1; } else { C->_ok=rT49skip1(C,'\135'); _state=5; } /*FI*/} else { _state=6; } /*FI*/goto l76; l82: ; if (3 == iv1) goto l83; goto l84; l83: ; /*IF*/if ((((C)->_cc)==('\54'))||(((C)->_cc)==('\135'))) { {T82 *n=((T82*)se_new(82)); rT82make(n,_name,_constraint); _fga=(T0 *)n;} _name=NULL; _constraint=NULL; /*IF*/if (!(_list)) { _list=ma(84,0,1,_fga); } else { rT84add_last((T84*)_list,_fga); } /*FI*/_fga=NULL; /*IF*/if (rT49skip1(C,'\54')) { _state=1; } else { C->_ok=rT49skip1(C,'\135'); _state=5; } /*FI*/} else { _state=6; } /*FI*/goto l76; l84: ; /*IF*/if (rT49a_class_type(C)) { _constraint=(C)->_last_class_type; _state=3; } else { rT49fcp(C,(T0 *)ms211); _state=6; } /*FI*/ l76: ; } } /*IF*/if ((_state)==(6)) { } else if ((((int)_sp))&&(!(_list))) { rT49warning(_sp,(T0 *)ms212); } else if (((int)_sp)) { {T83 *n=((T83*)se_new(83)); rT83make(n,_sp,_list); C->_formal_generic_list=(T0 *)n;} /*(IRF3*/(((T48*)(C)->_last_base_class)->_formal_generic_list)=((C)->_formal_generic_list); /*)*/} /*FI*/} void rT49fatal_error(/*C*/T0* a1){ (/*UT*/(void)(T43*)oRBC27eh); rT43fatal_error(a1); } void rT49a_function_call(T49 *C){ T0* _e_current=NULL; T0* _fn=NULL; _fn=rT67to_feature_name((T67*)rT49tmp_name()); {T87 *n=((T87*)se_new(87)); rT87make(n,XrT65start_position(_fn),0); _e_current=(T0 *)n;} rT49a_r10(C,0,_e_current,_fn,rT49a_actuals(C)); } int rT49a_keyword(T49 *C,T0* a1){ int R=0; int _i=0; C->_start_line=(C)->_line; C->_start_column=(C)->_column; while (!(((_i)==(((T7*)a1)->_count))||(!(rT3same_as((C)->_cc,rT7item((T7*)a1,(_i)+(1))))))) { _i=(_i)+(1); rT49next_char(C); } /*IF*/if ((_i)==(((T7*)a1)->_count)) { {int iv1=(C)->_cc; if ((9<=iv1)&&(iv1<=10)) goto l86; if (32 == iv1) goto l86; if (45 == iv1) goto l86; goto l87; l86: ; R=1; C->_last_keyword=a1; rT49skip_comments(C); goto l85; l87: ; if ((48<=iv1)&&(iv1<=57)) goto l88; if ((65<=iv1)&&(iv1<=90)) goto l88; if (95 == iv1) goto l88; if ((97<=iv1)&&(iv1<=122)) goto l88; goto l89; l88: ; while (!((_i)==(0))) { rT49prev_char(C); _i=(_i)-(1); } goto l85; l89: ; R=1; C->_last_keyword=a1; l85: ; } } else { while (!((_i)==(0))) { rT49prev_char(C); _i=(_i)-(1); } } /*FI*/return R; } int rT49a_loop(T49 *C){ int R=0; T0* _al=NULL; T0* _hc=NULL; T0* _lb=NULL; T0* _ue=NULL; T0* _vc=NULL; T0* _ic=NULL; T0* _i=NULL; T0* _e_loop=NULL; T0* _sp2=NULL; T0* _sp=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms366)) { R=1; {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} _i=rT49a_compound1(C,(T0 *)ms367); /*IF*/if (rT49a_keyword(C,(T0 *)ms368)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp2=(T0 *)n;} _hc=rT49get_comments(C); _al=rT49a_assertion(C); /*IF*/if ((((int)_hc))||(((int)_al))) { {T235 *n=((T235*)se_new(235)); rT235make(n,_sp2,_hc,_al); _ic=(T0 *)n;} } /*FI*/} /*FI*//*IF*/if (rT49a_keyword(C,(T0 *)ms369)) { /*IF*/if ((rT49a_tag_mark(C))&&(rT49a_expression(C))) { {T237 *n=((T237*)se_new(237)); rT237make(n,(C)->_last_tag_mark,(C)->_last_expression,rT49get_comments(C)); _vc=(T0 *)n;}} else if (rT49a_expression(C)) { {T238 *n=((T238*)se_new(238)); rT238make(n,(C)->_last_expression,rT49get_comments(C)); _vc=(T0 *)n;}} else { rT49wcp(C,(T0 *)ms370); } /*FI*/} /*FI*//*IF*/if (rT49a_keyword(C,(T0 *)ms371)) { /*IF*/if (rT49a_expression(C)) { _ue=XrT66add_comment((C)->_last_expression,rT49get_comments(C)); } else { rT49fcp(C,(T0 *)ms372); _ue=(C)->_last_expression; } /*FI*/} else { rT49fcp(C,(T0 *)ms373); _ue=(C)->_last_expression; } /*FI*//*IF*/if (((C)->_cc)==('\73')) { rT49wcp(C,(T0 *)ms230); C->_ok=rT49skip1(C,'\73'); } /*FI*//*IF*/if (!(rT49a_keyword(C,(T0 *)ms374))) { rT49wcp(C,(T0 *)ms375); } /*FI*/_lb=rT49a_compound2(C,(T0 *)ms376,(T0 *)ms113); {T234 *n=((T234*)se_new(234)); rT234make(n,_sp,_i,_ic,_vc,_ue,_lb); _e_loop=(T0 *)n;} C->_last_instruction=_e_loop; } /*FI*/return R; } int rT49a_inspect(T49 *C){ int R=0; T0* _ec=NULL; T0* _i=NULL; T0* _spec=NULL; T0* _sp=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms357)) { R=1; {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_expression(C)) { C->_last_expression=XrT66add_comment((C)->_last_expression,rT49get_comments(C)); } else { rT49fcp(C,(T0 *)ms358); } /*FI*/{T224 *n=((T224*)se_new(224)); rT224make(n,_sp,(C)->_last_expression); _i=(T0 *)n;} while (!(!(rT49a_when_part(C,_i)))) { } /*IF*/if (rT49a_keyword(C,(T0 *)ms99)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _spec=(T0 *)n;} _ec=rT49a_compound2(C,(T0 *)ms364,(T0 *)ms113); rT224set_else_compound((T224*)_i,_spec,_ec); } else if (!(rT49a_keyword(C,(T0 *)ms113))) { rT49wcp(C,(T0 *)ms365); } /*FI*/C->_last_instruction=_i; } /*FI*/return R; } int rT49a_instruction(T49 *C){ int R=0; R=(((((((rT49a_check(C))||(rT49a_debug(C)))||(rT49a_conditional(C)))||(rT49a_retry(C)))||(rT49a_inspect(C)))||(rT49a_loop(C)))||(rT49a_creation(C)))||(rT49a_assignment_or_call(C)); return R; } int rT49a_result(T49 *C){ int R=0; /*IF*/if (rT7same_as((T7*)(T0 *)ms287,((T67*)rT49tmp_name())->_to_string)) { /*IF*/if (!((C)->_function_type)) { rT49error(rT67start_position((T67*)rT49tmp_name()),(T0 *)ms288); } /*FI*/C->_last_expression=rT67to_e_result((T67*)rT49tmp_name()); R=1; } /*FI*/return R; } void rT49a_new_export_list(T49 *C){ int _state=0; T0* _new_export_item=NULL; T0* _items=NULL; T0* _clients=NULL; T0* _sp=NULL; T0* _export_list=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms225)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} while (!((_state)>(3))) { {int iv1=_state; if (0 == iv1) goto l91; goto l92; l91: ; /*IF*/if (((C)->_cc)==('\173')) { _clients=rT49a_clients(C); _state=1; } else if (((C)->_cc)==('\73')) { rT49wcp(C,(T0 *)ms230); C->_ok=rT49skip1(C,'\73'); } else { /*IF*/if (((int)_items)) { {T120 *n=((T120*)se_new(120)); rT120make(n,_sp,_items); _export_list=(T0 *)n;} /*(IRF3*/(((T116*)(C)->_last_parent)->_export_list)=(_export_list); /*)*/} /*FI*/_state=4; } /*FI*/goto l90; l92: ; if (1 == iv1) goto l93; goto l94; l93: ; /*IF*/if (rT49a_keyword(C,(T0 *)ms231)) { {T122 *n=((T122*)se_new(122)); rT122make_all(n,_clients); _new_export_item=(T0 *)n;} /*IF*/if (!(_items)) { _items=ma(125,0,1,_new_export_item); } else { rT125add_last((T125*)_items,_new_export_item); } /*FI*/_state=2; } else { /*IF*/if (rT49a_feature_list(C)) { {T122 *n=((T122*)se_new(122)); rT122make(n,_clients,(C)->_last_feature_list); _new_export_item=(T0 *)n;} /*IF*/if (!(_items)) { _items=ma(125,0,1,_new_export_item); } else { rT125add_last((T125*)_items,_new_export_item); } /*FI*/_state=2; } else { _state=3; } /*FI*/} /*FI*/goto l90; l94: ; if (2 == iv1) goto l95; goto l96; l95: ; /*IF*/if (rT49skip1(C,'\73')) { _state=0; } else if (((C)->_cc)==('\173')) { rT49wcp(C,(T0 *)ms234); _state=0; } else { /*IF*/if (((int)_items)) { {T120 *n=((T120*)se_new(120)); rT120make(n,_sp,_items); _export_list=(T0 *)n;} /*(IRF3*/(((T116*)(C)->_last_parent)->_export_list)=(_export_list); /*)*/} /*FI*/_state=4; } /*FI*/goto l90; l96: ; rT49fcp(C,(T0 *)ms228); _state=4; l90: ; } } } /*FI*/} int rT49a_current(T49 *C){ int R=0; /*IF*/if (rT7same_as((T7*)(T0 *)ms197,((T67*)rT49tmp_name())->_to_string)) { C->_last_expression=rT67to_e_current((T67*)rT49tmp_name()); R=1; } /*FI*/return R; } int rT49a_retry(T49 *C){ int R=0; /*IF*/if (rT49a_keyword(C,(T0 *)ms355)) { /*IF*/if (!((C)->_in_rescue)) { rT49error(rT49pos((C)->_start_line,(C)->_start_column),(T0 *)ms356); } /*FI*/{T223 *n=((T223*)se_new(223)); /*(IRF3*/((n)->_start_position)=(rT49pos((C)->_start_line,(C)->_start_column)); /*)*/C->_last_instruction=(T0 *)n;}R=1; } /*FI*/return R; } int rT49a_integer_constant(T49 *C){ int R=0; /*IF*/if (rT49skip1(C,'\53')) { /*IF*/if (!(rT49a_integer(C))) { rT49fcp(C,(T0 *)ms167); } else { R=1; } /*FI*/} else if (rT49skip1(C,'\55')) { /*IF*/if (!(rT49a_integer(C))) { rT49fcp(C,(T0 *)ms167); } else { C->_last_integer_constant=rT78_px45((T78*)(C)->_last_integer_constant); R=1; } /*FI*/} else { R=rT49a_integer(C); } /*FI*/return R; } int rT49a_integer(T49 *C){ int R=0; int _value=0; int _state=0; /*IF*/if (rT3is_digit((C)->_cc)) { R=1; C->_start_line=(C)->_line; C->_start_column=(C)->_column; _value=rT3value((C)->_cc); while (!((_state)>(3))) { rT49next_char(C); {int iv1=_state; if (0 == iv1) goto l98; goto l99; l98: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l101; goto l102; l101: ; _value=((_value)*(10))+(rT3value((C)->_cc)); goto l100; l102: ; if (95 == iv2) goto l103; goto l104; l103: ; _state=1; goto l100; l104: ; _state=4; l100: ; } goto l97; l99: ; if (1 == iv1) goto l105; goto l106; l105: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l108; goto l109; l108: ; _value=((_value)*(10))+(rT3value((C)->_cc)); _state=2; goto l107; l109: ; rT49fcp(C,(T0 *)ms163); l107: ; } goto l97; l106: ; if (2 == iv1) goto l110; goto l111; l110: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l113; goto l114; l113: ; _value=((_value)*(10))+(rT3value((C)->_cc)); _state=3; goto l112; l114: ; rT49fcp(C,(T0 *)ms163); l112: ; } goto l97; l111: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l116; goto l117; l116: ; _value=((_value)*(10))+(rT3value((C)->_cc)); _state=0; goto l115; l117: ; rT49fcp(C,(T0 *)ms163); l115: ; } l97: ; } rT49skip_comments(C); {T78 *n=((T78*)se_new(78)); rT78make(n,_value,rT49pos((C)->_start_line,(C)->_start_column)); C->_last_integer_constant=(T0 *)n;} } } /*FI*/return R; } void rT49err_exp(/*C*/T0* a1,T0* a2){ T0* _msg=NULL; {T7 *n=((T7*)se_new(7)); rT7make(n,0); _msg=(T0 *)n;} rT7append((T7*)_msg,(T0 *)ms277); rT7append((T7*)_msg,a2); rT7append((T7*)_msg,(T0 *)ms278); (/*UT*/(void)(T43*)oRBC27eh); rT43add_position(a1); rT49fatal_error(_msg); } int rT49a_expression(T49 *C){ int R=0; T0* _list=NULL; T0* _sp=NULL; /*IF*/if (rT49skip2(C,'\74','\74')) { R=1; {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} while (!(!(rT49a_expression(C)))) { /*IF*/if (!(_list)) { _list=ma(79,0,1,(C)->_last_expression); } else { XrT79add_last(_list,(C)->_last_expression); } /*FI*/C->_ok=rT49skip1(C,'\54'); } /*IF*/if (!(rT49skip2(C,'\76','\76'))) { rT49fcp(C,(T0 *)ms276); } /*FI*/{T158 *n=((T158*)se_new(158)); rT158make(n,_sp,_list); C->_last_expression=(T0 *)n;}} else { R=rT49a_e0(C); } /*FI*/return R; } int rT49a_void(T49 *C){ int R=0; /*IF*/if (rT7same_as((T7*)(T0 *)ms289,((T67*)rT49tmp_name())->_to_string)) { C->_last_expression=rT67to_e_void((T67*)rT49tmp_name()); R=1; } /*FI*/return R; } void rT49a_procedure_call(T49 *C){ T0* _e_current=NULL; T0* _fn=NULL; _fn=rT67to_feature_name((T67*)rT49tmp_name()); {T87 *n=((T87*)se_new(87)); rT87make(n,XrT65start_position(_fn),0); _e_current=(T0 *)n;} rT49a_r10(C,1,_e_current,_fn,rT49a_actuals(C)); } T0* rT49a_external_name(T49 *C){ T0* R=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms335)) { /*IF*/if (!(rT49a_manifest_string(C))) { rT49fcp(C,(T0 *)ms336); } else { R=((T74*)(C)->_last_manifest_string)->_to_string; } /*FI*/} /*FI*/return R; } T0* rT49a_external(T49 *C){ T0* R=NULL; T0* _external_lgg=NULL; /*IF*/if (!(rT49a_manifest_string(C))) { rT49fcp(C,(T0 *)ms329); _external_lgg=((T0 *)((T206*)se_new(206))); } else if (rT7is_equal(ms330,((T74*)(C)->_last_manifest_string)->_to_string)) { _external_lgg=((T0 *)((T206*)se_new(206))); } else if (rT7is_equal(ms331,((T74*)(C)->_last_manifest_string)->_to_string)) { _external_lgg=((T0 *)((T207*)se_new(207))); } else if (rT7is_equal(ms332,((T74*)(C)->_last_manifest_string)->_to_string)) { _external_lgg=((T0 *)((T208*)se_new(208))); } else { (/*UT*/(void)(T43*)oRBC27eh); rT43append((T0 *)ms333); (/*UT*/(void)(T43*)oRBC27eh); rT43append(((T74*)(C)->_last_manifest_string)->_to_string); rT49fcp(C,(T0 *)ms334); _external_lgg=((T0 *)((T206*)se_new(206))); } /*FI*/R=rT134to_external_routine((T134*)oRBC49tmp_feature,_external_lgg,rT49a_external_name(C)); return R; } T0*oRBC49forbidden_class; void rT49a_r10(T49 *C,int a1,T0* a2,T0* a3,T0* a4){ /*IF*/if (rT49skip1unless2(C,'\56','\56')) { rT49a_after_a_dot(C,a1,rT49to_call(a2,a3,a4)); } else { /*IF*/if (a1) { C->_last_instruction=rT49to_proc_call(C,a2,a3,a4); C->_last_expression=NULL; } else { C->_last_expression=rT49to_call(a2,a3,a4); C->_last_instruction=NULL; } /*FI*/} /*FI*/} T0* rT49analyse_class(T49 *C,T0* a1){ T0* R=NULL; int _old_nbw=0; int _old_nbe=0; /*IF*/if ((/*(IRF4*/((T43*)oRBC27eh)->_nb_errors/*)*/)>(0)) { (/*UT*/(void)(T43*)oRBC27eh); rT43append((T0 *)ms68); /*(IRF3*/(/*UT*/(void)(T43*)oRBC27eh); rT43do_print((T0 *)ms41); rT43die_with_code(1); /*)*/} /*FI*//*IF*/if (/*(IRF4*/(!(/*(IRF4*/(!(/*(IRF4*/((T49*)oRBC27eiffel_parser)->_is_running/*)*/))&&(((T50*)oRBC27small_eiffel)->_is_doing_eval_flag)/*)*/))&&(((T50*)oRBC27small_eiffel)->_is_compiling_flag)/*)*/) { rT41put_integer((T41*)oRBC1std_output,(/*(IRF4*/((/*UT*/(void)(T50*)oRBC27small_eiffel), ((T52*)oRBC50base_class_dictionary)->_count/*)*/))+(1)); rT41put_character((T41*)oRBC1std_output,'\11'); rT41put_string((T41*)oRBC1std_output,a1); rT41put_character((T41*)oRBC1std_output,'\12'); } /*FI*/_old_nbe=/*(IRF4*/((T43*)oRBC27eh)->_nb_errors/*)*/; _old_nbw=/*(IRF4*/((T43*)oRBC27eh)->_nb_warnings/*)*/; C->_is_running=1; C->_function_type=NULL; C->_in_ensure=0; C->_last_comments=NULL; rT58read((T58*)oRBC49text,a1); C->_line=1; C->_column=1; C->_current_line=((/*UT*/(void)(T58*)oRBC49text), rT58item((C)->_line)); /*IF*/if ((((T7*)(C)->_current_line)->_count)==(0)) { C->_cc='\12'; } else { C->_cc=rT7first((T7*)(C)->_current_line); } /*FI*/{T48 *n=((T48*)se_new(48)); rT48make(n,a1); C->_last_base_class=(T0 *)n;} rT49skip_comments(C); rT49a_class_declaration(C); C->_is_running=0; R=(C)->_last_base_class; /*IF*/if (((/*(IRF4*/((T43*)oRBC27eh)->_nb_errors/*)*/)-(_old_nbe))>(0)) { rT37put_string((T37*)oRBC1std_error,(T0 *)ms404); rT37put_integer((T37*)oRBC1std_error,/*(IRF4*/((T43*)oRBC27eh)->_nb_errors/*)*/); rT37put_string((T37*)oRBC1std_error,(T0 *)ms405); rT37put_string((T37*)oRBC1std_error,(T0 *)ms406); rT37put_string((T37*)oRBC1std_error,a1); rT37put_string((T37*)oRBC1std_error,(T0 *)ms407); R=NULL; } else if (((/*(IRF4*/((T43*)oRBC27eh)->_nb_warnings/*)*/)-(_old_nbw))>(0)) { rT37put_string((T37*)oRBC1std_error,(T0 *)ms408); rT37put_integer((T37*)oRBC1std_error,/*(IRF4*/((T43*)oRBC27eh)->_nb_warnings/*)*/); rT37put_string((T37*)oRBC1std_error,(T0 *)ms409); } /*FI*//*IF*/if (((int)R)) { rT50add_class((T50*)oRBC27small_eiffel,R); rT48get_started((T48*)R); } /*FI*/return R; } T0* rT49a_routine_body(T49 *C){ T0* R=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms327)) { rT48set_is_deferred((T48*)(C)->_last_base_class); R=rT134to_deferred_routine((T134*)oRBC49tmp_feature); } else if (rT49a_keyword(C,(T0 *)ms328)) { R=rT49a_external(C); } else if (rT49a_keyword(C,(T0 *)ms337)) { /*(IRF3*/(((T134*)oRBC49tmp_feature)->_routine_body)=(rT49a_compound1(C,(T0 *)ms389)); /*)*/R=rT134to_procedure_or_function((T134*)oRBC49tmp_feature); } else if (rT49a_keyword(C,(T0 *)ms390)) { /*(IRF3*/(((T134*)oRBC49tmp_feature)->_routine_body)=(rT49a_compound1(C,(T0 *)ms391)); /*)*/R=rT134to_once_routine((T134*)oRBC49tmp_feature); } else { rT49fcp(C,(T0 *)ms392); } /*FI*/return R; } T0* rT49a_routine(T49 *C){ T0* R=NULL; T0* _ea=NULL; T0* _al=NULL; T0* _hc=NULL; T0* _sp=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms273)) { /*IF*/if (rT49a_manifest_string(C)) { /*(IRF3*/(((T134*)oRBC49tmp_feature)->_obsolete_mark)=((C)->_last_manifest_string); /*)*/} else { rT49fcp(C,(T0 *)ms274); } /*FI*/} /*FI*//*(IRF3*/(((T134*)oRBC49tmp_feature)->_header_comment)=(rT49get_comments(C)); /*)*//*IF*/if (rT49a_keyword(C,(T0 *)ms275)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_keyword(C,(T0 *)ms99)) { _hc=rT49get_comments(C); rT134set_require_else((T134*)oRBC49tmp_feature,_sp,_hc,rT49a_assertion(C)); } else { _hc=rT49get_comments(C); rT134set_require((T134*)oRBC49tmp_feature,_sp,_hc,rT49a_assertion(C)); } /*FI*/} /*FI*//*IF*/if (rT49a_keyword(C,(T0 *)ms321)) { rT49a_local_var_list(C,rT49pos((C)->_start_line,(C)->_start_column)); } /*FI*/R=rT49a_routine_body(C); /*IF*/if (rT49a_keyword(C,(T0 *)ms393)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} C->_in_ensure=1; /*IF*/if (rT49a_keyword(C,(T0 *)ms96)) { _hc=rT49get_comments(C); _al=rT49a_assertion(C); /*IF*/if ((((int)_hc))||(((int)_al))) { {T155 *n=((T155*)se_new(155)); rT155make(n,_sp,_hc,_al); _ea=(T0 *)n;} /*(IRF3*/(((T155*)_ea)->_is_ensure_then)=(1); /*)*/} /*FI*/XrT154set_ensure_assertion(R,_ea); } else { _hc=rT49get_comments(C); _al=rT49a_assertion(C); /*IF*/if ((((int)_hc))||(((int)_al))) { {T155 *n=((T155*)se_new(155)); rT155make(n,_sp,_hc,_al); _ea=(T0 *)n;} } /*FI*/XrT154set_ensure_assertion(R,_ea); } /*FI*/C->_in_ensure=0; } /*FI*//*IF*/if (rT49a_keyword(C,(T0 *)ms394)) { C->_in_rescue=1; XrT154set_rescue_compound(R,rT49a_compound2(C,(T0 *)ms396,(T0 *)ms113)); C->_in_rescue=0; } else { /*IF*/if (!(rT49a_keyword(C,(T0 *)ms113))) { rT49wcp(C,(T0 *)ms397); } /*FI*/} /*FI*/C->_local_vars=NULL; return R; } T0*oRBC49tmp_feature; void rT49skip_comments(T49 *C){ int _state=0; T0* _sp=NULL; while (!((_state)==(2))) { {int iv1=_state; if (0 == iv1) goto l119; goto l120; l119: ; {int iv2=(C)->_cc; if ((9<=iv2)&&(iv2<=10)) goto l122; if (32 == iv2) goto l122; goto l123; l122: ; rT49next_char(C); goto l121; l123: ; if (45 == iv2) goto l124; goto l125; l124: ; rT49next_char(C); _state=1; goto l121; l125: ; _state=2; l121: ; } goto l118; l120: ; if (1 == iv1) goto l126; goto l127; l126: ; {int iv2=(C)->_cc; if (45 == iv2) goto l129; goto l130; l129: ; /*IF*/if (!((C)->_last_comments)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_line,((C)->_column)-(1)); _sp=(T0 *)n;} } /*FI*/rT49next_char(C); /*(IRF3*/(((T7*)oRBC49lcs)->_count)=(0); /*)*/while (!(((C)->_cc)==('\12'))) { rT7extend((T7*)oRBC49lcs,(C)->_cc); rT49next_char(C); } /*IF*/if (!((C)->_last_comments)) { {T57 *n=((T57*)se_new(57)); rT57make(n,_sp,ma(34,0,1,rT7twin((T7*)oRBC49lcs))); C->_last_comments=(T0 *)n;} } else { rT57add_last((T57*)(C)->_last_comments,rT7twin((T7*)oRBC49lcs)); } /*FI*/_state=0; goto l128; l130: ; rT49prev_char(C); _state=2; l128: ; } goto l118; l127: ; l118: ; } } } int rT49a_strip(T49 *C){ int R=0; T0* _sp=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms284)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49skip1(C,'\50')) { C->_ok=rT49a_feature_list(C); {T168 *n=((T168*)se_new(168)); rT168make(n,_sp,(C)->_last_feature_list); C->_last_expression=(T0 *)n;}/*IF*/if (!(rT49skip1(C,'\51'))) { rT49fcp(C,(T0 *)ms285); } /*FI*/R=1; } else { rT49fcp(C,(T0 *)ms286); } /*FI*/} /*FI*/return R; } void rT49prev_char(T49 *C){ /*IF*/if (((C)->_column)>(1)) { C->_column=((C)->_column)-(1); C->_cc=rT7item((T7*)(C)->_current_line,(C)->_column); } else { /*IF*/if (((C)->_line)>(1)) { C->_line=((C)->_line)-(1); C->_current_line=((/*UT*/(void)(T58*)oRBC49text), rT58item((C)->_line)); C->_column=(((T7*)(C)->_current_line)->_count)+(1); C->_cc='\12'; } else { C->_column=0; C->_cc='\0'; } /*FI*/} /*FI*/} int rT49a_type(T49 *C){ int R=0; T0* _argument_name=NULL; T0* _sp=NULL; R=1; /*IF*/if (rT49a_keyword(C,(T0 *)ms196)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_identifier(C)) { /*IF*/if (rT49a_current(C)) { {T88 *n=((T88*)se_new(88)); rT88make(n,_sp,(C)->_last_expression); C->_last_type=(T0 *)n;}} else if (rT49a_argument(C)) { _argument_name=(C)->_last_expression; if ((int)_argument_name) switch (((T0 *)_argument_name)->id) { case 86: break; default: _argument_name = NULL; };{T96 *n=((T96*)se_new(96)); rT96make(n,_sp,_argument_name); C->_last_type=(T0 *)n;}} else { {T97 *n=((T97*)se_new(97)); rT97make(n,_sp,rT67to_feature_name((T67*)rT49tmp_name())); C->_last_type=(T0 *)n;}} /*FI*/} else { rT49fcp(C,(T0 *)ms200); } /*FI*/} else if (rT49a_keyword(C,(T0 *)ms115)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_class_type(C)) { {T98 *n=((T98*)se_new(98)); rT98make(n,_sp,(C)->_last_class_type); C->_last_type=(T0 *)n;}} else { rT49fcp(C,(T0 *)ms202); } /*FI*/} else if (rT49a_keyword(C,(T0 *)ms193)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_integer(C)) { {T99 *n=((T99*)se_new(99)); rT99make(n,_sp,(C)->_last_integer_constant); C->_last_type=(T0 *)n;}} else if (rT49a_identifier(C)) { {T101 *n=((T101*)se_new(101)); rT101make(n,_sp,rT67to_feature_name((T67*)rT49tmp_name())); C->_last_type=(T0 *)n;}} else { rT49fcp(C,(T0 *)ms203); } /*FI*/} else if (rT49a_type_formal_generic(C)) { C->_last_type=(C)->_last_type_formal_generic; } else if (rT49a_class_type(C)) { C->_last_type=(C)->_last_class_type; } else { R=0; } /*FI*/return R; } int rT49a_type_formal_generic(T49 *C){ int R=0; int _rank=0; T0* _cn=NULL; T0* _fga=NULL; /*IF*/if (((int)(C)->_formal_generic_list)) { _rank=1; while (!((R)||((_rank)>(rT83count((T83*)(C)->_formal_generic_list))))) { _fga=rT83item((T83*)(C)->_formal_generic_list,_rank); /*IF*/if (rT49a_keyword(C,((T46*)((T82*)_fga)->_name)->_to_string)) { {T46 *n=((T46*)se_new(46)); rT46make(n,((T46*)((T82*)_fga)->_name)->_to_string,rT49pos((C)->_start_line,(C)->_start_column)); _cn=(T0 *)n;} {T102 *n=((T102*)se_new(102)); rT102make(n,_cn,_rank); C->_last_type_formal_generic=(T0 *)n;} R=1; } /*FI*/_rank=(_rank)+(1); } } /*FI*/return R; } void rT49next_char(T49 *C){ /*IF*/if (((C)->_column)<(((T7*)(C)->_current_line)->_count)) { C->_column=((C)->_column)+(1); C->_cc=rT7item((T7*)(C)->_current_line,(C)->_column); } else if (((C)->_column)==(((T7*)(C)->_current_line)->_count)) { C->_column=((C)->_column)+(1); C->_cc='\12'; } else if (((C)->_line)==(((T58*)oRBC49text)->_count)) { C->_cc='\0'; } else { C->_column=1; C->_line=((C)->_line)+(1); C->_current_line=((/*UT*/(void)(T58*)oRBC49text), rT58item((C)->_line)); /*IF*/if ((((T7*)(C)->_current_line)->_count)==(0)) { C->_cc='\12'; } else { C->_cc=rT7first((T7*)(C)->_current_line); } /*FI*/} /*FI*/} int ofBC49tmp_name=0; T0*oRBC49tmp_name; T0* rT49tmp_name(/*C*/void){ if (ofBC49tmp_name==0){ T0* R=NULL; ofBC49tmp_name=1; {T67 *n=((T67*)se_new(67)); rT67make(n,0,0); R=(T0 *)n;} oRBC49tmp_name=R;} return oRBC49tmp_name;} int ofBC49tmp_operator=0; T0*oRBC49tmp_operator; T0* rT49tmp_operator(/*C*/void){ if (ofBC49tmp_operator==0){ T0* R=NULL; ofBC49tmp_operator=1; {T67 *n=((T67*)se_new(67)); rT67make(n,0,0); R=(T0 *)n;} oRBC49tmp_operator=R;} return oRBC49tmp_operator;} T0* rT49current_position(T49 *C){ T0* R=NULL; {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_line,(C)->_column); R=(T0 *)n;} return R; } void rT49warning(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T43*)oRBC27eh); rT43add_position(a1); rT43warning((T43*)oRBC27eh,a2); } T0* rT49current_class_name(T49 *C){ T0* R=NULL; R=((T48*)(C)->_last_base_class)->_base_class_name; return R; } T0* rT49to_proc_call(T49 *C,T0* a1,T0* a2,T0* a3){ T0* R=NULL; /*IF*/if (!(a2)) { rT49fcp(C,(T0 *)ms294); } else if (!(a3)) { {T177 *n=((T177*)se_new(177)); rT177make(n,a1,a2); R=(T0 *)n;}} else if ((rT169count((T169*)a3))==(1)) { {T178 *n=((T178*)se_new(178)); rT178make(n,a1,a2,a3); R=(T0 *)n;}} else { {T179 *n=((T179*)se_new(179)); rT179make(n,a1,a2,a3); R=(T0 *)n;}} /*FI*/return R; } void rT49error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T43*)oRBC27eh); rT43add_position(a1); rT43error((T43*)oRBC27eh,a2); } void rT49ecp(T49 *C,T0* a1){ rT49error(rT49current_position(C),a1); } void rT49fcp(T49 *C,T0* a1){ (/*UT*/(void)(T43*)oRBC27eh); rT43add_position(rT49current_position(C)); rT49fatal_error(a1); } T0*oRBC49lcs; T0*oRBC49text; void rT49wcp(T49 *C,T0* a1){ rT49warning(rT49current_position(C),a1); } T0* rT49pos(/*C*/int a1,int a2){ T0* R=NULL; {T44 *n=((T44*)se_new(44)); rT44make(n,a1,a2); R=(T0 *)n;} return R; } int rT49a_e0(T49 *C){ int R=0; R=rT49a_e1(C); rT49a_r1(C,(C)->_last_expression); return R; } int rT49a_e1(T49 *C){ int R=0; R=rT49a_e2(C); rT49a_r2(C,(C)->_last_expression); return R; } int rT49a_e2(T49 *C){ int R=0; R=rT49a_e3(C); rT49a_r3(C,(C)->_last_expression); return R; } int rT49a_e3(T49 *C){ int R=0; R=rT49a_e4(C); rT49a_r4(C,(C)->_last_expression); return R; } int rT49a_e4(T49 *C){ int R=0; R=rT49a_e5(C); rT49a_r5(C,(C)->_last_expression); return R; } int rT49a_e5(T49 *C){ int R=0; R=rT49a_e6(C); rT49a_r6(C,(C)->_last_expression); return R; } int rT49a_e6(T49 *C){ int R=0; R=rT49a_e7(C); rT49a_r7(C,(C)->_last_expression); return R; } int rT49a_e7(T49 *C){ int R=0; R=rT49a_e8(C); rT49a_r8(C,(C)->_last_expression); return R; } int rT49a_e8(T49 *C){ int R=0; T0* _sp=NULL; T0* _prefix_freeop=NULL; T0* _op=NULL; T0* _prefix_moins=NULL; T0* _prefix_plus=NULL; T0* _prefix_not=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms76)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e8(C)) { {T159 *n=((T159*)se_new(159)); rT159make(n,_sp,(C)->_last_expression); _prefix_not=(T0 *)n;} C->_last_expression=_prefix_not; R=1; } else { rT49err_exp(_sp,(T0 *)ms76); } /*FI*/} else if (rT49skip1(C,'\53')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e8(C)) { {T164 *n=((T164*)se_new(164)); rT164make(n,_sp,(C)->_last_expression); _prefix_plus=(T0 *)n;} C->_last_expression=_prefix_plus; R=1; } else { rT49err_exp(_sp,(T0 *)ms279); } /*FI*/} else if (rT49skip1(C,'\55')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e8(C)) { {T165 *n=((T165*)se_new(165)); rT165make(n,_sp,(C)->_last_expression); _prefix_moins=(T0 *)n;} C->_last_expression=_prefix_moins; R=1; } else { rT49err_exp(_sp,(T0 *)ms280); } /*FI*/} else if (rT49a_free_operator(C)) { _op=rT67to_prefix_name((T67*)rT49tmp_operator()); /*IF*/if (rT49a_e8(C)) { {T166 *n=((T166*)se_new(166)); rT166make(n,(C)->_last_expression,_op); _prefix_freeop=(T0 *)n;} C->_last_expression=_prefix_freeop; R=1; } else { (/*UT*/(void)(T43*)oRBC27eh); rT43append((T0 *)ms281); rT49err_exp(((T64*)_op)->_start_position,((T64*)_op)->_to_string); } /*FI*/} else { R=rT49a_e9(C); } /*FI*/return R; } int rT49a_e9(T49 *C){ int R=0; T0* _e_old=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms282)) { /*IF*/if (!((C)->_in_ensure)) { rT49error(rT49pos((C)->_start_line,(C)->_start_column),(T0 *)ms283); } /*FI*//*IF*/if (rT49a_e10(C)) { {T167 *n=((T167*)se_new(167)); /*(IRF3*/((n)->_expression)=((C)->_last_expression); /*)*/_e_old=(T0 *)n;} C->_last_expression=_e_old; R=1; } else { rT49fcp(C,(T0 *)ms298); } /*FI*/} else { R=rT49a_e10(C); } /*FI*/return R; } void rT49a_r1(T49 *C,T0* a1){ T0* _sp=NULL; T0* _infix_implies=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms94)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e1(C)) { {T201 *n=((T201*)se_new(201)); rT201make(n,a1,_sp,(C)->_last_expression); _infix_implies=(T0 *)n;} rT49a_r1(C,_infix_implies); } else { rT49error(_sp,(T0 *)ms320); } /*FI*/} else { C->_last_expression=a1; } /*FI*/} void rT49a_r2(T49 *C,T0* a1){ T0* _sp=NULL; T0* _infix_xor=NULL; T0* _infix_or=NULL; T0* _infix_or_else=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms98)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_keyword(C,(T0 *)ms99)) { /*IF*/if (rT49a_e2(C)) { {T198 *n=((T198*)se_new(198)); rT198make(n,a1,_sp,(C)->_last_expression); _infix_or_else=(T0 *)n;} rT49a_r2(C,_infix_or_else); } else { rT49err_exp(_sp,(T0 *)ms100); } /*FI*/} else { /*IF*/if (rT49a_e2(C)) { {T199 *n=((T199*)se_new(199)); rT199make(n,a1,_sp,(C)->_last_expression); _infix_or=(T0 *)n;} rT49a_r2(C,_infix_or); } else { rT49err_exp(_sp,(T0 *)ms98); } /*FI*/} /*FI*/} else if (rT49a_keyword(C,(T0 *)ms93)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e2(C)) { {T200 *n=((T200*)se_new(200)); rT200make(n,a1,_sp,(C)->_last_expression); _infix_xor=(T0 *)n;} rT49a_r2(C,_infix_xor); } else { rT49err_exp(_sp,(T0 *)ms93); } /*FI*/} else { C->_last_expression=a1; } /*FI*/} void rT49a_r3(T49 *C,T0* a1){ T0* _sp=NULL; T0* _infix_and=NULL; T0* _infix_and_then=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms95)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_keyword(C,(T0 *)ms96)) { /*IF*/if (rT49a_e3(C)) { {T196 *n=((T196*)se_new(196)); rT196make(n,a1,_sp,(C)->_last_expression); _infix_and_then=(T0 *)n;} rT49a_r3(C,_infix_and_then); } else { rT49err_exp(_sp,(T0 *)ms97); } /*FI*/} else { /*IF*/if (rT49a_e3(C)) { {T197 *n=((T197*)se_new(197)); rT197make(n,a1,_sp,(C)->_last_expression); _infix_and=(T0 *)n;} rT49a_r3(C,_infix_and); } else { rT49err_exp(_sp,(T0 *)ms95); } /*FI*/} /*FI*/} else { C->_last_expression=a1; } /*FI*/} void rT49a_r4(T49 *C,T0* a1){ T0* _sp=NULL; T0* _infix_gt=NULL; T0* _infix_ge=NULL; T0* _infix_lt=NULL; T0* _infix_le=NULL; T0* _infix_not_equal=NULL; T0* _infix_equal=NULL; /*IF*/if (rT49skip1(C,'\75')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e4(C)) { {T190 *n=((T190*)se_new(190)); rT190make(n,a1,_sp,(C)->_last_expression); _infix_equal=(T0 *)n;} rT49a_r4(C,_infix_equal); } else { rT49err_exp(_sp,(T0 *)ms309); } /*FI*/} else if (rT49skip2(C,'\57','\75')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e4(C)) { {T191 *n=((T191*)se_new(191)); rT191make(n,a1,_sp,(C)->_last_expression); _infix_not_equal=(T0 *)n;} rT49a_r4(C,_infix_not_equal); } else { rT49err_exp(_sp,(T0 *)ms311); } /*FI*/} else if (rT49skip2(C,'\74','\75')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e4(C)) { {T192 *n=((T192*)se_new(192)); rT192make(n,a1,_sp,(C)->_last_expression); _infix_le=(T0 *)n;} rT49a_r4(C,_infix_le); } else { rT49err_exp(_sp,(T0 *)ms313); } /*FI*/} else if (rT49skip2(C,'\76','\75')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e4(C)) { {T194 *n=((T194*)se_new(194)); rT194make(n,a1,_sp,(C)->_last_expression); _infix_ge=(T0 *)n;} rT49a_r4(C,_infix_ge); } else { rT49err_exp(_sp,(T0 *)ms315); } /*FI*/} else if (rT49skip1(C,'\74')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e4(C)) { {T193 *n=((T193*)se_new(193)); rT193make(n,a1,_sp,(C)->_last_expression); _infix_lt=(T0 *)n;} rT49a_r4(C,_infix_lt); } else { rT49err_exp(_sp,(T0 *)ms317); } /*FI*/} else if (rT49skip1unless2(C,'\76','\76')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e4(C)) { {T195 *n=((T195*)se_new(195)); rT195make(n,a1,_sp,(C)->_last_expression); _infix_gt=(T0 *)n;} rT49a_r4(C,_infix_gt); } else { rT49err_exp(_sp,(T0 *)ms319); } /*FI*/} else { C->_last_expression=a1; } /*FI*/} void rT49a_r5(T49 *C,T0* a1){ T0* _sp=NULL; T0* _infix_minus=NULL; T0* _infix_plus=NULL; /*IF*/if (rT49skip1(C,'\53')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e5(C)) { {T188 *n=((T188*)se_new(188)); rT188make(n,a1,_sp,(C)->_last_expression); _infix_plus=(T0 *)n;} rT49a_r5(C,_infix_plus); } else { rT49err_exp(_sp,(T0 *)ms78); } /*FI*/} else if (rT49skip1(C,'\55')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e5(C)) { {T189 *n=((T189*)se_new(189)); rT189make(n,a1,_sp,(C)->_last_expression); _infix_minus=(T0 *)n;} rT49a_r5(C,_infix_minus); } else { rT49err_exp(_sp,(T0 *)ms79); } /*FI*/} else { C->_last_expression=a1; } /*FI*/} void rT49a_r6(T49 *C,T0* a1){ T0* _sp=NULL; T0* _infix_div=NULL; T0* _infix_int_rem=NULL; T0* _infix_int_div=NULL; T0* _infix_times=NULL; /*IF*/if (rT49skip1(C,'\52')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e6(C)) { {T184 *n=((T184*)se_new(184)); rT184make(n,a1,_sp,(C)->_last_expression); _infix_times=(T0 *)n;} rT49a_r6(C,_infix_times); } else { rT49err_exp(_sp,(T0 *)ms303); } /*FI*/} else if (rT49skip2(C,'\57','\57')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e6(C)) { {T185 *n=((T185*)se_new(185)); rT185make(n,a1,_sp,(C)->_last_expression); _infix_int_div=(T0 *)n;} rT49a_r6(C,_infix_int_div); } else { rT49err_exp(_sp,(T0 *)ms305); } /*FI*/} else if (rT49skip2(C,'\134','\134')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e6(C)) { {T186 *n=((T186*)se_new(186)); rT186make(n,a1,_sp,(C)->_last_expression); _infix_int_rem=(T0 *)n;} rT49a_r6(C,_infix_int_rem); } else { rT49err_exp(_sp,(T0 *)ms307); } /*FI*/} else if (rT49skip1unless2(C,'\57','\75')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e6(C)) { {T187 *n=((T187*)se_new(187)); rT187make(n,a1,_sp,(C)->_last_expression); _infix_div=(T0 *)n;} rT49a_r6(C,_infix_div); } else { rT49err_exp(_sp,(T0 *)ms89); } /*FI*/} else { C->_last_expression=a1; } /*FI*/} int rT49skip1unless2(T49 *C,char a1,char a2){ int R=0; C->_start_line=(C)->_line; C->_start_column=(C)->_column; /*IF*/if (((C)->_cc)==(a1)) { rT49next_char(C); /*IF*/if (((C)->_cc)==(a2)) { rT49prev_char(C); } else { R=1; rT49skip_comments(C); } /*FI*/} /*FI*/return R; } int rT49skip1(T49 *C,char a1){ int R=0; /*IF*/if ((a1)==((C)->_cc)) { C->_start_line=(C)->_line; C->_start_column=(C)->_column; R=1; rT49next_char(C); rT49skip_comments(C); } /*FI*/return R; } void rT49a_r7(T49 *C,T0* a1){ T0* _sp=NULL; T0* _infix_power=NULL; /*IF*/if (rT49skip1(C,'\136')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49a_e7(C)) { {T183 *n=((T183*)se_new(183)); rT183make(n,a1,_sp,(C)->_last_expression); _infix_power=(T0 *)n;} rT49a_r7(C,_infix_power); } else { rT49err_exp(_sp,(T0 *)ms301); } /*FI*/} else { C->_last_expression=a1; } /*FI*/} int rT49skip2(T49 *C,char a1,char a2){ int R=0; /*IF*/if ((a1)==((C)->_cc)) { C->_start_line=(C)->_line; C->_start_column=(C)->_column; rT49next_char(C); /*IF*/if ((a2)==((C)->_cc)) { R=1; rT49next_char(C); rT49skip_comments(C); } else { rT49prev_char(C); } /*FI*/} /*FI*/return R; } void rT49a_r8(T49 *C,T0* a1){ T0* _infix_freeop=NULL; T0* _infix_name=NULL; /*IF*/if (rT49a_free_operator(C)) { _infix_name=rT67to_infix_name_use((T67*)rT49tmp_operator()); /*IF*/if (rT49a_e8(C)) { {T181 *n=((T181*)se_new(181)); rT181make(n,a1,_infix_name,(C)->_last_expression); _infix_freeop=(T0 *)n;} rT49a_r8(C,_infix_freeop); } else { rT49err_exp(((T68*)_infix_name)->_start_position,((T68*)_infix_name)->_to_string); } /*FI*/} else { C->_last_expression=a1; } /*FI*/} int rT49a_debug(T49 *C){ int R=0; T0* _e_debug=NULL; T0* _list=NULL; T0* _sp=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms340)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT49skip1(C,'\50')) { while (!(!(rT49a_manifest_string(C)))) { /*IF*/if (!(_list)) { _list=ma(149,0,1,(C)->_last_manifest_string); } else { rT149add_last((T149*)_list,(C)->_last_manifest_string); } /*FI*/C->_ok=rT49skip1(C,'\54'); } /*IF*/if (!(_list)) { rT49wcp(C,(T0 *)ms341); } /*FI*//*IF*/if (!(rT49skip1(C,'\51'))) { rT49fcp(C,(T0 *)ms342); } /*FI*/} /*FI*/R=1; {T214 *n=((T214*)se_new(214)); rT214make(n,_sp,_list,rT49a_compound2(C,(T0 *)ms346,(T0 *)ms113)); _e_debug=(T0 *)n;} C->_last_instruction=_e_debug; } /*FI*/return R; } int rT49a_feature_declaration(T49 *C){ int R=0; rT134initialize((T134*)oRBC49tmp_feature); /*IF*/if (rT49a_keyword(C,(T0 *)ms246)) { /*IF*/if (rT49a_feature_name(C)) { R=1; XrT65set_is_frozen((C)->_last_feature_name,1); (/*UT*/(void)(T134*)oRBC49tmp_feature); rT134add_synonym((C)->_last_feature_name); } else { rT49fcp(C,(T0 *)ms232); } /*FI*/} else if (rT49a_feature_name(C)) { R=1; (/*UT*/(void)(T134*)oRBC49tmp_feature); rT134add_synonym((C)->_last_feature_name); } /*FI*/while (!(!(rT49skip1(C,'\54')))) { /*IF*/if (rT49a_keyword(C,(T0 *)ms247)) { /*IF*/if (rT49a_feature_name(C)) { XrT65set_is_frozen((C)->_last_feature_name,1); (/*UT*/(void)(T134*)oRBC49tmp_feature); rT134add_synonym((C)->_last_feature_name); } else { rT49fcp(C,(T0 *)ms248); } /*FI*/} else if (rT49a_feature_name(C)) { (/*UT*/(void)(T134*)oRBC49tmp_feature); rT134add_synonym((C)->_last_feature_name); } else { rT49ecp(C,(T0 *)ms249); } /*FI*/} /*IF*/if (R) { rT49a_formal_arg_list(C); C->_function_type=NULL; /*IF*/if (rT49skip1(C,'\72')) { /*IF*/if (!(rT49a_type(C))) { rT49fcp(C,(T0 *)ms255); } else { C->_function_type=(C)->_last_type; /*(IRF3*/(((T134*)oRBC49tmp_feature)->_type)=((C)->_last_type); /*)*/} /*FI*/} /*FI*//*IF*/if (rT49a_keyword(C,(T0 *)ms256)) { /*IF*/if (rT49a_keyword(C,(T0 *)ms257)) { C->_last_feature_declaration=rT134to_cst_att_unique((T134*)oRBC49tmp_feature); } else if (rT49a_boolean_constant(C)) { C->_last_feature_declaration=rT134to_cst_att_boolean((T134*)oRBC49tmp_feature,(C)->_last_boolean_constant); } else if (rT49a_character_constant(C)) { C->_last_feature_declaration=rT134to_cst_att_character((T134*)oRBC49tmp_feature,(C)->_last_character_constant); } else if (rT49a_manifest_string(C)) { C->_last_feature_declaration=rT134to_cst_att_string((T134*)oRBC49tmp_feature,(C)->_last_manifest_string); } else if (rT49a_bit_constant(C)) { C->_last_feature_declaration=rT134to_cst_att_bit((T134*)oRBC49tmp_feature,(C)->_last_bit_constant); } else if (rT49a_real_constant(C)) { C->_last_feature_declaration=rT134to_cst_att_real((T134*)oRBC49tmp_feature,(C)->_last_real_constant); } else if (rT49a_integer_constant(C)) { C->_last_feature_declaration=rT134to_cst_att_integer((T134*)oRBC49tmp_feature,(C)->_last_integer_constant); } else { C->_last_feature_declaration=rT49a_routine(C); } /*FI*/} else { C->_last_feature_declaration=rT134to_writable_attribute((T134*)oRBC49tmp_feature); } /*FI*/C->_function_type=NULL; C->_arguments=NULL; } /*FI*/return R; } void rT49a_feature_clause(T49 *C){ T0* _aof=NULL; T0* _comment=NULL; T0* _clients=NULL; T0* _feature_clause=NULL; _clients=rT49a_clients(C); _comment=rT49get_comments(C); while (!(!(rT49a_feature_declaration(C)))) { C->_ok=rT49skip1(C,'\73'); /*IF*/if (((int)(C)->_last_feature_declaration)) { /*IF*/if (!(_aof)) { _aof=ma(61,0,1,(C)->_last_feature_declaration); } else { rT61add_last((T61*)_aof,(C)->_last_feature_declaration); } /*FI*/XrT60set_header_comment((C)->_last_feature_declaration,rT49get_comments(C)); } /*FI*/} /*IF*/if ((((int)_aof))||(((int)_comment))) { {T133 *n=((T133*)se_new(133)); rT133make(n,_clients,_comment,_aof); _feature_clause=(T0 *)n;} rT48add_feature_clause((T48*)(C)->_last_base_class,_feature_clause); } /*FI*/} int rT49a_feature_list(T49 *C){ int R=0; int _state=0; C->_last_feature_list=NULL; while (!((_state)>=(3))) { {int iv1=_state; if (0 == iv1) goto l132; goto l133; l132: ; /*IF*/if (rT49a_feature_name(C)) { C->_last_feature_list=ma(127,0,1,(C)->_last_feature_name); R=1; _state=1; } else if (((C)->_cc)==('\54')) { rT49wcp(C,(T0 *)ms226); C->_ok=rT49skip1(C,'\54'); } else { _state=3; } /*FI*/goto l131; l133: ; if (1 == iv1) goto l134; goto l135; l134: ; /*IF*/if (((C)->_cc)==('\54')) { C->_ok=rT49skip1(C,'\54'); _state=2; } else if (rT49a_feature_name(C)) { rT49warning(XrT65start_position((C)->_last_feature_name),(T0 *)ms209); rT127add_last((T127*)(C)->_last_feature_list,(C)->_last_feature_name); } else { _state=3; } /*FI*/goto l131; l135: ; if (2 == iv1) goto l136; goto l137; l136: ; /*IF*/if (rT49a_feature_name(C)) { rT127add_last((T127*)(C)->_last_feature_list,(C)->_last_feature_name); _state=1; } else if (((C)->_cc)==('\54')) { rT49wcp(C,(T0 *)ms206); C->_ok=rT49skip1(C,'\54'); } else { rT49ecp(C,(T0 *)ms232); _state=3; } /*FI*/goto l131; l137: ; l131: ; } } return R; } int rT49a_feature_name(T49 *C){ int R=0; /*IF*/if (rT49a_prefix(C)) { C->_last_feature_name=(C)->_last_prefix; R=1; } else if (rT49a_infix(C)) { C->_last_feature_name=(C)->_last_infix; R=1; } else if (rT49a_identifier(C)) { C->_last_feature_name=rT67to_feature_name((T67*)rT49tmp_name()); R=1; } /*FI*/return R; } int rT49a_character_constant(T49 *C){ int R=0; char _value=0; int _printing_mode=0; int _state=0; T0* _sp=NULL; /*IF*/if (((C)->_cc)==('\47')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_line,(C)->_column); _sp=(T0 *)n;} R=1; while (!((_state)>(2))) { rT49next_char(C); {int iv1=_state; if (0 == iv1) goto l139; goto l140; l139: ; {int iv2=(C)->_cc; if (37 == iv2) goto l142; goto l143; l142: ; _state=1; goto l141; l143: ; if (39 == iv2) goto l144; goto l145; l144: ; rT49fcp(C,(T0 *)ms154); _state=2; goto l141; l145: ; _value=(C)->_cc; _printing_mode=0; _state=2; l141: ; } goto l138; l140: ; if (1 == iv1) goto l146; goto l147; l146: ; _printing_mode=1; _state=2; {int iv2=(C)->_cc; if (65 == iv2) goto l149; goto l150; l149: ; _value='\100'; goto l148; l150: ; if (66 == iv2) goto l151; goto l152; l151: ; _value='\10'; goto l148; l152: ; if (67 == iv2) goto l153; goto l154; l153: ; _value='\136'; goto l148; l154: ; if (68 == iv2) goto l155; goto l156; l155: ; _value='\44'; goto l148; l156: ; if (70 == iv2) goto l157; goto l158; l157: ; _value='\14'; goto l148; l158: ; if (72 == iv2) goto l159; goto l160; l159: ; _value='\134'; goto l148; l160: ; if (76 == iv2) goto l161; goto l162; l161: ; _value='\176'; goto l148; l162: ; if (78 == iv2) goto l163; goto l164; l163: ; _value='\12'; goto l148; l164: ; if (81 == iv2) goto l165; goto l166; l165: ; _value='\140'; goto l148; l166: ; if (82 == iv2) goto l167; goto l168; l167: ; _value='\15'; goto l148; l168: ; if (83 == iv2) goto l169; goto l170; l169: ; _value='\43'; goto l148; l170: ; if (84 == iv2) goto l171; goto l172; l171: ; _value='\11'; goto l148; l172: ; if (85 == iv2) goto l173; goto l174; l173: ; _value='\0'; goto l148; l174: ; if (86 == iv2) goto l175; goto l176; l175: ; _value='\174'; goto l148; l176: ; if (37 == iv2) goto l177; goto l178; l177: ; _value='\45'; goto l148; l178: ; if (39 == iv2) goto l179; goto l180; l179: ; _value='\47'; goto l148; l180: ; if (34 == iv2) goto l181; goto l182; l181: ; _value='\42'; goto l148; l182: ; if (40 == iv2) goto l183; goto l184; l183: ; _value='\133'; goto l148; l184: ; if (41 == iv2) goto l185; goto l186; l185: ; _value='\135'; goto l148; l186: ; if (60 == iv2) goto l187; goto l188; l187: ; _value='\173'; goto l148; l188: ; if (62 == iv2) goto l189; goto l190; l189: ; _value='\175'; goto l148; l190: ; if (47 == iv2) goto l191; goto l192; l191: ; rT49a_ascii_code(C); _value=(C)->_last_ascii_code; _printing_mode=2; goto l148; l192: ; rT49fcp(C,(T0 *)ms158); l148: ; } goto l138; l147: ; _state=3; {int iv2=(C)->_cc; if (39 == iv2) goto l194; goto l195; l194: ; goto l193; l195: ; rT49fcp(C,(T0 *)ms154); l193: ; } rT49next_char(C); rT49skip_comments(C); l138: ; } } {T73 *n=((T73*)se_new(73)); rT73make(n,_sp,_value,_printing_mode); C->_last_character_constant=(T0 *)n;} } /*FI*/return R; } int rT49a_check(T49 *C){ int R=0; T0* _al=NULL; T0* _hc=NULL; T0* _sp=NULL; /*IF*/if (rT49a_keyword(C,(T0 *)ms106)) { R=1; {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} _hc=rT49get_comments(C); _al=rT49a_assertion(C); /*IF*/if ((((int)_hc))||(((int)_al))) { {T212 *n=((T212*)se_new(212)); rT212make(n,_sp,_hc,_al); C->_last_instruction=(T0 *)n;}} else { rT49wcp(C,(T0 *)ms338); } /*FI*//*IF*/if (!(rT49a_keyword(C,(T0 *)ms113))) { rT49fcp(C,(T0 *)ms339); } /*FI*/} /*FI*/return R; } void rT49a_class_declaration(T49 *C){ T0* _al=NULL; T0* _hc=NULL; T0* _sp=NULL; rT49a_indexing(C); /*IF*/if (rT49a_keyword(C,(T0 *)ms169)) { rT48set_is_deferred((T48*)(C)->_last_base_class); } /*FI*//*IF*/if (rT49a_keyword(C,(T0 *)ms115)) { rT48set_is_expanded((T48*)(C)->_last_base_class); /*IF*/if (rT49a_keyword(C,(T0 *)ms171)) { rT48set_is_deferred((T48*)(C)->_last_base_class); } /*FI*/} /*FI*//*(IRF3*/(((T48*)(C)->_last_base_class)->_heading_comment1)=(rT49get_comments(C)); /*)*//*IF*/if (!(rT49a_keyword(C,(T0 *)ms172))) { rT49fcp(C,(T0 *)ms173); } /*FI*//*IF*/if (rT49a_base_class_name(C)) { rT46set_with((T46*)rT49current_class_name(C),(C)->_last_class_name); /*IF*/if (rT34fast_has((T34*)oRBC49forbidden_class,((T46*)(C)->_last_class_name)->_to_string)) { (/*UT*/(void)(T43*)oRBC27eh); rT43add_position(((T46*)(C)->_last_class_name)->_start_position); rT49fatal_error((T0 *)ms194); } /*FI*/} else { rT49fcp(C,(T0 *)ms195); } /*FI*/rT49a_formal_generic_list(C); /*IF*/if (rT49a_keyword(C,(T0 *)ms214)) { /*IF*/if (rT49a_manifest_string(C)) { /*(IRF3*/(((T48*)(C)->_last_base_class)->_obsolete_type_string)=((C)->_last_manifest_string); /*)*/} else { rT49fcp(C,(T0 *)ms215); } /*FI*/} /*FI*//*(IRF3*/(((T48*)(C)->_last_base_class)->_heading_comment2)=(rT49get_comments(C)); /*)*//*IF*/if (rT49a_keyword(C,(T0 *)ms216)) { rT49a_parent_list(C,rT49pos((C)->_start_line,(C)->_start_column),rT49get_comments(C)); } /*FI*/while (!(!(rT49a_keyword(C,(T0 *)ms108)))) { rT49a_creation_clause(C); } while (!(!(rT49a_keyword(C,(T0 *)ms245)))) { rT49a_feature_clause(C); } /*IF*/if (rT49a_keyword(C,(T0 *)ms400)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} _hc=rT49get_comments(C); _al=rT49a_assertion(C); rT48set_invariant((T48*)(C)->_last_base_class,_sp,_hc,_al); } /*FI*//*(IRF3*/(((T48*)(C)->_last_base_class)->_end_comment)=(rT49get_comments(C)); /*)*//*IF*/if ((rT49a_keyword(C,(T0 *)ms113))||(((T0 *)(C)->_last_keyword)==((T0 *)(T0 *)ms113))) { /*IF*/if (((C)->_cc)==('\73')) { rT49wcp(C,(T0 *)ms230); C->_ok=rT49skip1(C,'\73'); } /*FI*//*IF*/if (((C)->_cc)!=('\0')) { rT49fcp(C,(T0 *)ms401); } /*FI*//*IF*/if ((((int)(C)->_last_comments))&&((rT57count((T57*)(C)->_last_comments))>(1))) { rT49fcp(C,(T0 *)ms402); } /*FI*/} else { rT49fcp(C,(T0 *)ms403); } /*FI*/} int rT49a_class_type(T49 *C){ int R=0; T0* _generic_list=NULL; T0* _base_class_name=NULL; int _state=0; /*IF*/if (rT49a_base_type(C)) { C->_last_class_type=(C)->_last_base_type; R=1; } else if (rT49a_base_class_name(C)) { R=1; _base_class_name=(C)->_last_class_name; while (!((_state)>(2))) { {int iv1=_state; if (0 == iv1) goto l197; goto l198; l197: ; /*IF*/if (rT49skip1(C,'\133')) { _state=1; } else { {T114 *n=((T114*)se_new(114)); /*(IRF3*/((n)->_base_class_name)=(_base_class_name); /*)*/C->_last_class_type=(T0 *)n;}_state=3; } /*FI*/goto l196; l198: ; if (1 == iv1) goto l199; goto l200; l199: ; /*IF*/if (rT49a_type(C)) { /*IF*/if (!(_generic_list)) { _generic_list=ma(104,0,1,(C)->_last_type); } else { rT104add_last((T104*)_generic_list,(C)->_last_type); } /*FI*/_state=2; } else if (((C)->_cc)==('\54')) { rT49wcp(C,(T0 *)ms206); C->_ok=rT49skip1(C,'\54'); } else if (((C)->_cc)==('\135')) { _state=2; } else { rT49fcp(C,(T0 *)ms207); _state=2; } /*FI*/goto l196; l200: ; /*IF*/if (rT49skip1(C,'\54')) { _state=1; } else if (((C)->_cc)==('\135')) { /*IF*/if (!(_generic_list)) { rT49wcp(C,(T0 *)ms208); {T114 *n=((T114*)se_new(114)); /*(IRF3*/((n)->_base_class_name)=(_base_class_name); /*)*/C->_last_class_type=(T0 *)n;}} else { {T115 *n=((T115*)se_new(115)); rT115make(n,_base_class_name,_generic_list); C->_last_class_type=(T0 *)n;}} /*FI*/C->_ok=rT49skip1(C,'\135'); _state=3; } else if (rT49a_type(C)) { /*IF*/if (!(_generic_list)) { _generic_list=ma(104,0,1,(C)->_last_type); } else { rT104add_last((T104*)_generic_list,(C)->_last_type); } /*FI*/rT49warning(XrT56start_position((C)->_last_type),(T0 *)ms209); } else { rT49fcp(C,(T0 *)ms210); _state=3; } /*FI*/ l196: ; } } } /*FI*/return R; } int rT49a_identifier(T49 *C){ int R=0; int _do_warning=0; int _state=0; /*IF*/if (rT3is_letter((C)->_cc)) { rT67make((T67*)rT49tmp_name(),(C)->_line,(C)->_column); rT67extend((T67*)rT49tmp_name(),(C)->_cc); while (!((_state)>(0))) { rT49next_char(C); {int iv1=(C)->_cc; if ((48<=iv1)&&(iv1<=57)) goto l202; if (95 == iv1) goto l202; if ((97<=iv1)&&(iv1<=122)) goto l202; goto l203; l202: ; rT67extend((T67*)rT49tmp_name(),(C)->_cc); goto l201; l203: ; if ((65<=iv1)&&(iv1<=90)) goto l204; goto l205; l204: ; _do_warning=1; rT67extend((T67*)rT49tmp_name(),rT3to_lower((C)->_cc)); goto l201; l205: ; _state=1; l201: ; } } /*IF*/if (rT67isa_keyword((T67*)rT49tmp_name())) { _state=rT67count((T67*)rT49tmp_name()); while (!((_state)==(0))) { _state=(_state)-(1); rT49prev_char(C); } } else { R=1; rT49skip_comments(C); /*IF*/if (_do_warning) { rT49warning(rT67start_position((T67*)rT49tmp_name()),(T0 *)ms151); } /*FI*/} /*FI*/} /*FI*/return R; } int rT49a_base_class_name(T49 *C){ int R=0; int _do_warning=0; int _state=0; /*IF*/if (rT3is_letter((C)->_cc)) { /*IF*/if (((C)->_cc)>=('a')) { _do_warning=1; C->_cc=rT3to_upper((C)->_cc); } /*FI*/rT67make((T67*)rT49tmp_name(),(C)->_line,(C)->_column); rT67extend((T67*)rT49tmp_name(),(C)->_cc); while (!((_state)>(0))) { rT49next_char(C); {int iv1=(C)->_cc; if ((48<=iv1)&&(iv1<=57)) goto l207; if ((65<=iv1)&&(iv1<=90)) goto l207; if (95 == iv1) goto l207; goto l208; l207: ; rT67extend((T67*)rT49tmp_name(),(C)->_cc); goto l206; l208: ; if ((97<=iv1)&&(iv1<=122)) goto l209; goto l210; l209: ; _do_warning=1; rT67extend((T67*)rT49tmp_name(),rT3to_upper((C)->_cc)); goto l206; l210: ; _state=1; l206: ; } } /*IF*/if (rT67isa_keyword((T67*)rT49tmp_name())) { _state=rT67count((T67*)rT49tmp_name()); while (!((_state)==(0))) { _state=(_state)-(1); rT49prev_char(C); } } else { R=1; rT49skip_comments(C); /*IF*/if (_do_warning) { rT49warning(rT67start_position((T67*)rT49tmp_name()),(T0 *)ms174); } /*FI*/C->_last_class_name=rT67to_class_name((T67*)rT49tmp_name()); } /*FI*/} /*FI*/return R; } int rT49a_base_type(T49 *C){ int R=0; T0* _sp=NULL; R=1; /*IF*/if (rT49a_keyword(C,(T0 *)ms175)) { {T85 *n=((T85*)se_new(85)); rT85make(n,rT49pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT49a_keyword(C,(T0 *)ms180)) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (((rT49skip1(C,'\133'))&&(rT49a_type(C)))&&(rT49skip1(C,'\135'))) { {T103 *n=((T103*)se_new(103)); rT103make(n,_sp,(C)->_last_type); C->_last_base_type=(T0 *)n;}} else { rT49fcp(C,(T0 *)ms205); } /*FI*/} else if (rT49a_keyword(C,(T0 *)ms182)) { {T105 *n=((T105*)se_new(105)); rT105make(n,rT49pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT49a_keyword(C,(T0 *)ms184)) { {T107 *n=((T107*)se_new(107)); rT107make(n,rT49pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT49a_keyword(C,(T0 *)ms191)) { {T108 *n=((T108*)se_new(108)); rT108make(n,rT49pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT49a_keyword(C,(T0 *)ms187)) { {T109 *n=((T109*)se_new(109)); rT109make(n,rT49pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT49a_keyword(C,(T0 *)ms177)) { {T110 *n=((T110*)se_new(110)); rT110make(n,rT49pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT49a_keyword(C,(T0 *)ms178)) { {T111 *n=((T111*)se_new(111)); rT111make(n,rT49pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT49a_keyword(C,(T0 *)ms189)) { {T112 *n=((T112*)se_new(112)); rT112make(n,rT49pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT49a_keyword(C,(T0 *)ms181)) { {T113 *n=((T113*)se_new(113)); rT113make(n,rT49pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else { R=0; } /*FI*/return R; } void rT49a_ascii_code(T49 *C){ int _counter=0; rT49next_char(C); _counter=0; C->_last_ascii_code=0; while (!((((_counter)>(3))||(((C)->_cc)==('\57'))))) { {int iv1=(C)->_cc; if ((48<=iv1)&&(iv1<=57)) goto l212; goto l213; l212: ; C->_last_ascii_code=(((C)->_last_ascii_code)*(10))+(rT3value((C)->_cc)); goto l211; l213: ; rT49fcp(C,(T0 *)ms155); l211: ; } _counter=(_counter)+(1); rT49next_char(C); } /*IF*/if ((_counter)==(0)) { rT49fcp(C,(T0 *)ms156); } else if ((_counter)>(3)) { rT49fcp(C,(T0 *)ms157); } else { } /*FI*/} int rT49a_actual(T49 *C){ int R=0; /*IF*/if (rT49skip1(C,'\44')) { /*IF*/if (rT49a_identifier(C)) { {T172 *n=((T172*)se_new(172)); /*(IRF3*/((n)->_feature_name)=(rT67to_feature_name((T67*)rT49tmp_name())); /*)*/C->_last_expression=(T0 *)n;}R=1; } else { rT49fcp(C,(T0 *)ms232); } /*FI*/} else if (rT49a_expression(C)) { R=1; } /*FI*/return R; } T0* rT49a_actuals(T49 *C){ T0* R=NULL; T0* _args=NULL; /*IF*/if (rT49skip1(C,'\50')) { while (!(!(rT49a_actual(C)))) { /*IF*/if (!(_args)) { _args=ma(79,0,1,(C)->_last_expression); } else { XrT79add_last(_args,(C)->_last_expression); } /*FI*/C->_ok=rT49skip1(C,'\54'); } /*IF*/if (!(_args)) { rT49wcp(C,(T0 *)ms291); } else { {T169 *n=((T169*)se_new(169)); /*(IRF3*/((n)->_list)=(_args); /*)*/R=(T0 *)n;} } /*FI*//*IF*/if (!(rT49skip1(C,'\51'))) { rT49fcp(C,(T0 *)ms292); } /*FI*/} /*FI*/return R; } T0* rT49a_clients(T49 *C){ T0* R=NULL; int _state=0; T0* _list=NULL; T0* _sp=NULL; /*IF*/if (rT49skip1(C,'\173')) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} while (!((_state)>(3))) { {int iv1=_state; if (0 == iv1) goto l215; goto l216; l215: ; /*IF*/if (rT49a_base_class_name(C)) { _list=ma(123,0,1,(C)->_last_class_name); _state=2; } else if (rT49skip1(C,'\175')) { _state=4; } else if (((C)->_cc)==('\54')) { rT49wcp(C,(T0 *)ms226); C->_ok=rT49skip1(C,'\54'); } else { _state=3; } /*FI*/goto l214; l216: ; if (1 == iv1) goto l217; goto l218; l217: ; /*IF*/if (rT49a_base_class_name(C)) { rT123add_last((T123*)_list,(C)->_last_class_name); _state=2; } else if (((C)->_cc)==('\54')) { rT49wcp(C,(T0 *)ms226); C->_ok=rT49skip1(C,'\54'); } else if (((C)->_cc)==('\175')) { rT49wcp(C,(T0 *)ms227); C->_ok=rT49skip1(C,'\175'); _state=4; } else { _state=3; } /*FI*/goto l214; l218: ; if (2 == iv1) goto l219; goto l220; l219: ; /*IF*/if (rT49skip1(C,'\54')) { _state=1; } else if (rT49skip1(C,'\175')) { _state=4; } else if (rT49a_base_class_name(C)) { rT49warning(((T46*)(C)->_last_class_name)->_start_position,(T0 *)ms209); rT123add_last((T123*)_list,(C)->_last_class_name); } else { _state=3; } /*FI*/goto l214; l220: ; rT49fcp(C,(T0 *)ms228); _state=4; l214: ; } } {T121 *n=((T121*)se_new(121)); rT121make(n,_sp,_list); R=(T0 *)n;} } else { {T121 *n=((T121*)se_new(121)); /*(IRF3*//*)*/R=(T0 *)n;} } /*FI*/return R; } void rT49go_back(T49 *C,T0* a1){ rT49go_back_at(C,((T44*)a1)->_line,((T44*)a1)->_column); } int rT49a_real_constant(T49 *C){ int R=0; int _old_column=0; int _old_line=0; _old_line=(C)->_line; _old_column=(C)->_column; /*IF*/if (rT49skip1(C,'\53')) { /*IF*/if (rT49a_real(C)) { R=1; } else { rT49go_back_at(C,_old_line,_old_column); } /*FI*/} else if (rT49skip1(C,'\55')) { /*IF*/if (rT49a_real(C)) { C->_last_real_constant=rT77_px45((T77*)(C)->_last_real_constant); R=1; } else { rT49go_back_at(C,_old_line,_old_column); } /*FI*/} else if (rT49a_real(C)) { R=1; } /*FI*/return R; } int rT49a_real(T49 *C){ int R=0; float _frac_i=0; float _frac_part=0; int _integral_part=0; int _back_count=0; int _exponent_sign=0; int _exponent=0; int _state=0; T0* _ts=NULL; T0* _sp=NULL; /*IF*/if ((rT3is_digit((C)->_cc))||(((C)->_cc)==('\56'))) { {T44 *n=((T44*)se_new(44)); rT44make(n,(C)->_line,(C)->_column); _sp=(T0 *)n;} _exponent_sign=1; _frac_i=((float)1.); /*IF*/if (((C)->_cc)==('\56')) { _state=5; } else { _integral_part=rT3value((C)->_cc); } /*FI*/while (!((_state)>(11))) { rT49next_char(C); _back_count=(_back_count)+(1); {int iv1=_state; if (0 == iv1) goto l222; goto l223; l222: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l225; goto l226; l225: ; _integral_part=((_integral_part)*(10))+(rT3value((C)->_cc)); goto l224; l226: ; if (46 == iv2) goto l227; goto l228; l227: ; _state=4; goto l224; l228: ; _state=13; l224: ; } goto l221; l223: ; if (1 == iv1) goto l229; goto l230; l229: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l232; goto l233; l232: ; _integral_part=((_integral_part)*(10))+(rT3value((C)->_cc)); _state=2; goto l231; l233: ; rT49fcp(C,(T0 *)ms163); l231: ; } goto l221; l230: ; if (2 == iv1) goto l234; goto l235; l234: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l237; goto l238; l237: ; _integral_part=((_integral_part)*(10))+(rT3value((C)->_cc)); _state=3; goto l236; l238: ; rT49fcp(C,(T0 *)ms163); l236: ; } goto l221; l235: ; if (3 == iv1) goto l239; goto l240; l239: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l242; goto l243; l242: ; _integral_part=((_integral_part)*(10))+(rT3value((C)->_cc)); _state=0; goto l241; l243: ; rT49fcp(C,(T0 *)ms163); l241: ; } goto l221; l240: ; if (4 == iv1) goto l244; goto l245; l244: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l247; goto l248; l247: ; _frac_i=((float)10.); _frac_part=(rT2to_real(rT3value((C)->_cc)))/(_frac_i); _state=6; goto l246; l248: ; if (69 == iv2) goto l249; if (101 == iv2) goto l249; goto l250; l249: ; _state=10; goto l246; l250: ; _state=12; l246: ; } goto l221; l245: ; if (5 == iv1) goto l251; goto l252; l251: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l254; goto l255; l254: ; _frac_i=((float)10.); _frac_part=(rT2to_real(rT3value((C)->_cc)))/(_frac_i); _state=6; goto l253; l255: ; _state=13; l253: ; } goto l221; l252: ; if (6 == iv1) goto l256; goto l257; l256: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l259; goto l260; l259: ; _frac_i=(_frac_i)*(((float)10.)); _frac_part=(_frac_part)+((rT2to_real(rT3value((C)->_cc)))/(_frac_i)); goto l258; l260: ; if (69 == iv2) goto l261; if (101 == iv2) goto l261; goto l262; l261: ; _state=10; goto l258; l262: ; if (95 == iv2) goto l263; goto l264; l263: ; _state=7; goto l258; l264: ; _state=12; l258: ; } goto l221; l257: ; if (7 == iv1) goto l265; goto l266; l265: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l268; goto l269; l268: ; _frac_i=(_frac_i)*(((float)10.)); _frac_part=(_frac_part)+((rT2to_real(rT3value((C)->_cc)))/(_frac_i)); _state=8; goto l267; l269: ; rT49fcp(C,(T0 *)ms164); l267: ; } goto l221; l266: ; if (8 == iv1) goto l270; goto l271; l270: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l273; goto l274; l273: ; _frac_i=(_frac_i)*(((float)10.)); _frac_part=(_frac_part)+((rT2to_real(rT3value((C)->_cc)))/(_frac_i)); _state=9; goto l272; l274: ; rT49fcp(C,(T0 *)ms164); l272: ; } goto l221; l271: ; if (9 == iv1) goto l275; goto l276; l275: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l278; goto l279; l278: ; _frac_i=(_frac_i)*(((float)10.)); _frac_part=(_frac_part)+((rT2to_real(rT3value((C)->_cc)))/(_frac_i)); _state=6; goto l277; l279: ; rT49fcp(C,(T0 *)ms164); l277: ; } goto l221; l276: ; if (10 == iv1) goto l280; goto l281; l280: ; {int iv2=(C)->_cc; if (43 == iv2) goto l283; goto l284; l283: ; _state=11; goto l282; l284: ; if (45 == iv2) goto l285; goto l286; l285: ; _exponent_sign=-(1); _state=11; goto l282; l286: ; if ((48<=iv2)&&(iv2<=57)) goto l287; goto l288; l287: ; _exponent=rT3value((C)->_cc); _state=11; goto l282; l288: ; rT49fcp(C,(T0 *)ms165); _state=13; l282: ; } goto l221; l281: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l290; goto l291; l290: ; _exponent=((_exponent)*(10))+(rT3value((C)->_cc)); goto l289; l291: ; _state=12; l289: ; } l221: ; } } /*IF*/if ((_state)==(12)) { _ts=rT7substring((T7*)(C)->_current_line,((T44*)_sp)->_column,((C)->_column)-(1)); {T77 *n=((T77*)se_new(77)); rT77make(n,_sp,_ts,_integral_part,_frac_part,(_exponent)*(_exponent_sign)); C->_last_real_constant=(T0 *)n;} R=1; rT49skip_comments(C); } else { while (!((_back_count)==(0))) { _back_count=(_back_count)-(1); rT49prev_char(C); } } /*FI*/} /*FI*/return R; } void rT49go_back_at(T49 *C,int a1,int a2){ C->_line=a1; C->_column=a2; C->_current_line=((/*UT*/(void)(T58*)oRBC49text), rT58item((C)->_line)); /*IF*/if (((C)->_column)==((((T7*)(C)->_current_line)->_count)+(1))) { C->_cc='\12'; } else if (((C)->_column)==(0)) { C->_cc='\0'; } else { C->_cc=rT7item((T7*)(C)->_current_line,(C)->_column); } /*FI*/}
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.