home *** CD-ROM | disk | FTP | other *** search
Wrap
/* -- ANSI C code generated by : -- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.82) -- -- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE -- -- Dominique COLNET and Suzanne COLLIN - colnet@loria.fr -- -- http://www.loria.fr/SmallEiffel -- */ #include "pretty.h" /*No:CST_ATT_BIT.arguments*/ T0* r588try_to_undefine(T588* C,T0* a1,T0* a2){ T0* R=NULL; X776undefine_in(a1,a2); R=r588try_to_undefine_aux(C,a1,a2); /*IF*/if ((R)!=((void*)(NULL))) { /*X249*//*[IRF3.3set_clients*/((((T853*)(((T853*)R))))->_clients)=((((T588*)C))->_clients/*20*/); /*]*/ } else { r605fatal_undefine(((T605*)a2),a1); } /*FI*/return R; } /*No:CST_ATT_BIT.is_deferred*/ void r588pretty_tail(T588* C){ r238put_string(((T238*)(oBC364fmt)),((T0*)ms1_418)); r940pretty_print(((T940*)(/*(IRF4.3value*/(((T588*)C))->_value_mem/*24*//*)*/))); } void r588add_into(T588* C,T0* a1){ T0* _fn=NULL; int _i=0; C->_base_class=r627base_class(((T627*)(X776start_position(/*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T588*)C))->_names/*8*/))))->_list/*0*/)),1)/*)*/)))); _i=1; while (!((_i)>(/*(IRF4.6count*/(((T855*)((T855*)((((T953*)((T953*)((((T588*)C))->_names/*8*/))))->_list/*0*/))))->_upper/*8*//*)*/))) { _fn=/*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T588*)C))->_names/*8*/))))->_list/*0*/)),_i)/*)*/; /*IF*/if (r237has(((T237*)a1),X776to_key(_fn))) { _fn=/*X359*/((T0*)/*(IRF4.6first_name*//*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T398*)((T398*)(r237at(((T237*)a1),X776to_key(_fn))))))->_names/*8*/))))->_list/*0*/)),1)/*)*//*)*/); r683add_position(X776start_position(_fn)); r683add_position(X776start_position(/*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T588*)C))->_names/*8*/))))->_list/*0*/)),_i)/*)*/)); r683error(((T683*)(oBC364eh)),((T0*)ms11_359)); /*[IRF3.6append*/{T0* b1=X776to_string(_fn); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ r683error(((T683*)(oBC364eh)),((T0*)ms67_470)); } else { r237put(((T237*)a1),(T0*)C,X776to_key(_fn)); } /*FI*/_i=(_i)+(1); } } T0* r588try_to_undefine_aux(T588* C,T0* a1,T0* a2){ T0* R=NULL; r683add_position(r588start_position(C)); r588error(X776start_position(a1),((T0*)ms1_308)); r605fatal_undefine(((T605*)a2),a1); return R; } void r588make(T588* C,T0* a1,T0* a2,T0* a3){ r588make_e_feature(C,a1,a2); C->_value_mem=a3; } /*No:CST_ATT_BIT.nb_errors*/ void r588pretty_print_one_name(T0* a1){ /*IF*/if (X776is_frozen(a1)) { r238keyword(((T238*)(oBC364fmt)),((T0*)ms10_359)); } /*FI*/X776definition_pretty_print(a1); } /*No:CST_ATT_BIT.set_header_comment*/ T0* r588start_position(T588* C){ T0* R=NULL; R=X776start_position(/*(IRF4.6first_name*//*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T588*)C))->_names/*8*/))))->_list/*0*/)),1)/*)*//*)*/); return R; } T0* r588to_run_feature(T588* C,T0* a1,T0* a2){ T0* R=NULL; T0* _rc=NULL; _rc=X291run_class(a1); R=r368at(((T368*)_rc),a2); if(NULL!=(R))switch(((T0*)R)->id) { case 808: break; default: R=NULL; };/*IF*/if ((R)==((void*)(NULL))) { {T808*n=malloc(sizeof(*n)); *n=M808; r808make(n,a1,a2,(T0*)C); R=(T0*)n; } } /*FI*/return R; } /*No:CST_ATT_BIT.ensure_assertion*/ /*No:CST_ATT_BIT.code_require*/ /*No:CST_ATT_BIT.result_type*/ /*No:CST_ATT_BIT.em1*/ void r588pretty_print(T588* C){ r588pretty_print_profile(C); r588pretty_tail(C); r238put_character(((T238*)(oBC364fmt)),'\73'); /*IF*/if (((((T588*)C))->_header_comment/*16*/)!=((void*)(NULL))) { /*[IRF3.3set_indent_level*/((((T238*)(((T238*)(oBC364fmt)))))->_indent_level)=(2); /*]*/ r238indent(((T238*)(oBC364fmt))); /*[IRF3.3set_indent_level*/((((T238*)(((T238*)(oBC364fmt)))))->_indent_level)=(1); /*]*/ r393pretty_print(((T393*)((((T588*)C))->_header_comment/*16*/))); } /*FI*/} /*No:CST_ATT_BIT.set_clients*/ /*No:CST_ATT_BIT.em2*/ /*No:CST_ATT_BIT.require_assertion*/ /*No:CST_ATT_BIT.value*/ /*No:CST_ATT_BIT.names*/ /*No:CST_ATT_BIT.value_mem*/ void r588pretty_print_profile(T588* C){ r588pretty_print_names(C); /*[IRF3.3set_indent_level*/((((T238*)(((T238*)(oBC364fmt)))))->_indent_level)=(2); /*]*/ /*[IRF3.1pretty_print_arguments*//*]*/ /*[IRF3.3set_indent_level*/((((T238*)(((T238*)(oBC364fmt)))))->_indent_level)=(3); /*]*/ /*IF*/if (((((T588*)C))->_result_type/*12*/)!=((void*)(NULL))) { r238put_string(((T238*)(oBC364fmt)),((T0*)ms8_359)); X291pretty_print((((T588*)C))->_result_type/*12*/); } /*FI*/} void r588pretty_print_names(T588* C){ int _i=0; _i=1; r588pretty_print_one_name(/*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T588*)C))->_names/*8*/))))->_list/*0*/)),_i)/*)*/); _i=(_i)+(1); while (!((_i)>(/*(IRF4.6count*/(((T855*)((T855*)((((T953*)((T953*)((((T588*)C))->_names/*8*/))))->_list/*0*/))))->_upper/*8*//*)*/))) { r238put_string(((T238*)(oBC364fmt)),((T0*)ms9_359)); r588pretty_print_one_name(/*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T588*)C))->_names/*8*/))))->_list/*0*/)),_i)/*)*/); _i=(_i)+(1); } } int r588can_hide(T588* C,T0* a1,T0* a2){ int R=0; /*IF*/if (((((T588*)C))->_result_type/*12*/)!=((void*)(/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/)))) { /*IF*/if ((((((T588*)C))->_result_type/*12*/)==((void*)(NULL)))||((/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/))==((void*)(NULL)))) { r683add_position(X359start_position(a1)); r588error(r588start_position(C),((T0*)ms5_359)); } /*FI*/} /*FI*//*IF*/if ((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(X359arguments(a1)))) { /*IF*/{/*AT*/r683add_position(X359start_position(a1)); r588error(r588start_position(C),((T0*)ms6_359)); } /*FI*/} /*FI*//*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) { /*IF*/if (((((T588*)C))->_result_type/*12*/)!=((void*)(NULL))) { /*IF*/if (!(X291is_a_in((((T588*)C))->_result_type/*12*/,/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/),a2))) { /*[IRF3.6append*/{T0* b1=((T0*)ms13_359); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=X291run_time_mark((((T368*)((T368*)a2)))->_current_type/*0*/); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ r683error(((T683*)(oBC364eh)),((T0*)ms67_470)); } /*FI*/} /*FI*/} /*FI*//*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) { /*IF*//*AF*//*AE*/ /*FI*/} /*FI*/R=(/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0); return R; } /*No:CST_ATT_BIT.header_comment*/ int r588is_merge_with(T588* C,T0* a1,T0* a2){ int R=0; /*IF*/if (((((T588*)C))->_result_type/*12*/)!=((void*)(/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/)))) { /*IF*/if ((((((T588*)C))->_result_type/*12*/)==((void*)(NULL)))||((/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/))==((void*)(NULL)))) { r683add_position(X359start_position(a1)); r588error(r588start_position(C),((T0*)ms2_359)); } /*FI*/} /*FI*//*IF*/if ((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(X359arguments(a1)))) { /*IF*/{/*AT*/r683add_position(X359start_position(a1)); r588error(r588start_position(C),((T0*)ms3_359)); } /*FI*/} /*FI*//*IF*/if (((((T588*)C))->_result_type/*12*/)!=((void*)(NULL))) { /*IF*/if (!(X291is_a_in((((T588*)C))->_result_type/*12*/,/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/),a2))) { r683error(((T683*)(oBC364eh)),((T0*)ms12_359)); } /*FI*/} /*FI*//*IF*//*AF*//*AE*/ /*FI*/R=(/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0); return R; } /*No:CST_ATT_BIT.fz_dot*/ /*No:CST_ATT_BIT.first_name*/ /*No:CST_ATT_BIT.clients*/ void r588collect_for(int a1){ /*IF*/if ((a1)==(1001)) { /*IF*//*AF*//*AE*/ /*FI*/} else { /*IF*//*AF*//*AE*/ /*FI*/} /*FI*/} void r588error(T0* a1,T0* a2){ r683add_position(a1); r683error(((T683*)(oBC364eh)),a2); } /*No:CST_ATT_BIT.base_class*/ /*No:CST_ATT_BIT.pretty_print_arguments*/ void r588make_e_feature(T588* C,T0* a1,T0* a2){ C->_names=a1; C->_result_type=a2; } int r590debug_check(T590* C){ int R=0; R=((((T590*)C))->_level/*0*/)==(1); return R; } /*No:RUN_CONTROL.level_check_debug*/ int r590all_check(T590* C){ int R=0; R=((((T590*)C))->_level/*0*/)>=(0); return R; } /*No:RUN_CONTROL.level_ensure*/ /*No:RUN_CONTROL.level_require*/ /*No:RUN_CONTROL.make*/ /*No:RUN_CONTROL.level_loop*/ /*No:RUN_CONTROL.level_check_all*/ int r590ensure_check(T590* C){ int R=0; R=((((T590*)C))->_level/*0*/)>=(-3); return R; } int r590require_check(T590* C){ int R=0; R=((((T590*)C))->_level/*0*/)>=(-4); return R; } /*No:RUN_CONTROL.level*/ int r590loop_check(T590* C){ int R=0; R=((((T590*)C))->_level/*0*/)>=(-1); return R; } /*No:RUN_CONTROL.level_invariant*/ int r590invariant_check(T590* C){ int R=0; R=((((T590*)C))->_level/*0*/)>=(-2); return R; } int r431is_like_argument(T431* C,T0* a1,T0* a2,T0* a3){ int R=0; T0* _ot=NULL; T0* _tla=NULL; _tla=a3; if(NULL!=(_tla))switch(((T0*)_tla)->id) { case 239: break; default: _tla=NULL; };/*IF*/if ((_tla)!=((void*)(NULL))) { R=1; _ot=X662result_type(r431expression(C,/*(IRF4.6rank*/(((T886*)((T886*)((((T239*)((T239*)_tla)))->_like_what/*12*/))))->_rank/*16*//*)*/)); /*IF*/if (!(X291is_a(X291run_type(a2),X291run_type(_ot)))) { r683add_position(X662start_position(a1)); r431error(X291start_position(a3),((T0*)ms12_431)); } /*FI*/} /*FI*/return R; } void r431match_with(T431* C,T0* a1){ T0* _ft=NULL; T0* _at=NULL; T0* _e=NULL; int _i=0; T0* _fal=NULL; _fal=/*X496*/((T0*)(((T808*)((T808*)a1)))->_arguments/*20*/); /*IF*/if ((_fal)==((void*)(NULL))) { r683add_position(X496start_position(a1)); r431error(r431start_position(C),((T0*)ms14_431)); } /*FI*//*IF*/if (((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0))&&((/*(IRF4.6count*/(((T65*)((T65*)((((T31*)((T31*)_fal)))->_flat_list/*12*/))))->_upper/*12*//*)*/)!=(r431count(C)))) { r683add_position((((T31*)((T31*)_fal)))->_start_position/*4*/); r431error(r431start_position(C),((T0*)ms14_431)); } /*FI*/_i=/*X96*/((int)(((T96*)((T96*)((((T431*)C))->_list/*0*/))))->_upper/*12*/); while (!(((_i)==(0))||((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)>(0)))) { _e=/*X96*/((T0*)r96item(((T96*)((((T431*)C))->_list/*0*/)),_i)); _at=X662result_type(_e); _ft=r31type(((T31*)_fal),_i); /*IF*/if (X662is_void(_e)) { /*IF*/if (X291is_expanded(_ft)) { r683add_position(X662start_position(_e)); r431error(X291start_position(_ft),((T0*)ms2_431)); } /*FI*/} else if (X291is_like_current(_ft)) { /*IF*/if (X662is_current(_e)) { } else if (X291is_a(X291run_type(_at),X291run_type(_ft))) { /*IF*/if (X291is_expanded(X291run_type(_at))) { } else if (X291is_a(X291run_type(_ft),X291run_type(_at))) { } else { r683add_position(X662start_position(_e)); r431error(X291start_position(_ft),((T0*)ms13_431)); } /*FI*/} else { r683add_position(X662start_position(_e)); r431error(X291start_position(_ft),((T0*)ms13_431)); } /*FI*/} else if (X291is_like_feature(_ft)) { /*IF*/if (X291is_a(X291run_type(_at),X291run_type(_ft))) { } else { r683add_position(X662start_position(_e)); r431error(X291start_position(_ft),((T0*)ms3_431)); } /*FI*/} else if (r431is_like_argument(C,_e,_at,_ft)) { } else if (X291is_a(X291run_type(_at),X291run_type(_ft))) { } else { r683print_as_error(((T683*)(oBC364eh))); r683add_position(X291start_position(_ft)); r431error(X662start_position(_e),((T0*)ms4_431)); } /*FI*/_at=X291run_type(_at); _ft=X291run_type(_ft); /*IF*/if (X291is_expanded(_ft)) { /*IF*/if (X291is_expanded(_at)) { } else { X291used_as_reference(_ft); } /*FI*/} else if (X291is_expanded(_at)) { X291used_as_reference(_at); } /*FI*/_i=(_i)-(1); } } /*No:EFFECTIVE_ARG_LIST.make*/ /*No:EFFECTIVE_ARG_LIST.nb_errors*/ T0* r431expression(T431* C,int a1){ T0* R=NULL; R=/*X96*/((T0*)r96item(((T96*)((((T431*)C))->_list/*0*/)),a1)); return R; } T0* r431start_position(T431* C){ T0* R=NULL; R=X662start_position(/*X96*/((T0*)r96item(((T96*)((((T431*)C))->_list/*0*/)),1))); return R; } T0* r431to_runnable(T431* C,T0* a1){ T0* R=NULL; T0* _e2=NULL; T0* _e1=NULL; int _i=0; /*IF*/if (((((T431*)C))->_current_type/*4*/)==((void*)(NULL))) { C->_current_type=a1; _i=/*X96*/((int)(((T96*)((T96*)((((T431*)C))->_list/*0*/))))->_upper/*12*/); while (!((_i)==(0))) { _e1=/*X96*/((T0*)r96item(((T96*)((((T431*)C))->_list/*0*/)),_i)); _e2=X662to_runnable(_e1,(((T431*)C))->_current_type/*4*/); /*IF*/if ((_e2)==((void*)(NULL))) { r431error(X662start_position(_e1),((T0*)ms5_431)); } else if ((_e1)!=((void*)(_e2))) { /*X96*//*[IRF3.6put*/{T96* C1=((T96*)((((T431*)C))->_list/*0*/)); T0* b1=_e2; int b2=_i; ((((T96*)C1))->_storage/*4*/)[(b2)-((((T96*)C1))->_lower/*16*/)]=(b1); }/*]*/ } /*FI*/_i=(_i)-(1); } /*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) { R=(T0*)C; } /*FI*/} else if ((X291run_class(a1))==((void*)(r431run_class(C)))) { R=(T0*)C; } else { {T431*n=malloc(sizeof(*n)); *n=M431; /*[IRF3.3make*/((((T431*)(n)))->_list)=(X96twin((((T431*)C))->_list/*0*/)); /*]*/ R=(T0*)n; } R=r431to_runnable(((T431*)R),a1); } /*FI*/return R; } /*No:EFFECTIVE_ARG_LIST.em1*/ void r431pretty_print(T431* C){ int _i=0; r238put_character(((T238*)(oBC364fmt)),'\50'); _i=1; while (!((_i)>(r431count(C)))) { X662pretty_print(r431expression(C,_i)); _i=(_i)+(1); /*IF*/if ((_i)<=(r431count(C))) { r238put_character(((T238*)(oBC364fmt)),'\54'); } /*FI*/} r238put_character(((T238*)(oBC364fmt)),'\51'); } /*No:EFFECTIVE_ARG_LIST.list*/ /*No:EFFECTIVE_ARG_LIST.em2*/ /*No:EFFECTIVE_ARG_LIST.current_type*/ T0* r431run_class(T431* C){ T0* R=NULL; R=X291run_class((((T431*)C))->_current_type/*4*/); return R; } void r431error(T0* a1,T0* a2){ r683add_position(a1); r683error(((T683*)(oBC364eh)),a2); } int r431count(T431* C){ int R=0; R=/*X96*/((int)(((T96*)((T96*)((((T431*)C))->_list/*0*/))))->_upper/*12*/); return R; } T0* r431first(T431* C){ T0* R=NULL; R=X96first((((T431*)C))->_list/*0*/); return R; } T0* r873add_comment(T873* C,T0* a1){ T0* R=NULL; /*IF*/if (((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r52count(((T52*)((((T393*)((T393*)a1)))->_list/*4*/)))/*)*/)==(0))) { R=(T0*)C; } else { {T529*n=malloc(sizeof(*n)); *n=M529; r529make(n,(T0*)C,a1); R=(T0*)n; } } /*FI*/return R; } int r873to_integer(T873* C){ int R=0; r873error((((T873*)C))->_start_position/*12*/,((T0*)ms69_470)); return R; } int r873is_a(T873* C,T0* a1){ int R=0; R=X291is_a(X291run_type((((T873*)C))->_result_type/*20*/),X291run_type(X662result_type(a1))); /*IF*/if (!(R)) { r683add_position((((T873*)C))->_start_position/*12*/); r873error(X662start_position(a1),((T0*)ms4_662)); } /*FI*/return R; } void r873name_clash(T873* C){ T0* _rc=NULL; T0* _rf=NULL; /*IF*/if (r605has_feature(((T605*)(r873base_class_written(C))),(((T873*)C))->_to_string/*8*/)) { _rc=X291run_class((((T873*)C))->_current_type/*4*/); _rf=r368get_feature_with(((T368*)_rc),(((T873*)C))->_to_string/*8*/); /*IF*/if ((_rf)!=((void*)(NULL))) { r683add_position(X496start_position(_rf)); } /*FI*/r873error((((T873*)C))->_start_position/*12*/,((T0*)ms1_873)); } /*FI*/} /*No:ARGUMENT_NAME1.is_current*/ T0* r873written_in(T873* C){ T0* R=NULL; T0* _sp=NULL; _sp=(((T873*)C))->_start_position/*12*/; /*IF*/if ((_sp)!=((void*)(NULL))) { R=(((T627*)((T627*)_sp)))->_base_class_name/*0*/; } /*FI*/return R; } void r873make(T873* C,T0* a1,T0* a2){ C->_start_position=a1; C->_to_string=r902item(a2); } void r873print_as_target(T873* C){ r238put_string(((T238*)(oBC364fmt)),(((T873*)C))->_to_string/*8*/); r238put_character(((T238*)(oBC364fmt)),'\56'); } /*No:ARGUMENT_NAME1.to_string*/ /*No:ARGUMENT_NAME1.fz_iinaiv*/ /*No:ARGUMENT_NAME1.set_result_type*/ /*No:ARGUMENT_NAME1.start_position*/ /*No:ARGUMENT_NAME1.precedence*/ T0* r873to_runnable(T873* C,T0* a1){ T0* R=NULL; T0* _t2=NULL; T0* _t1=NULL; _t1=(((T873*)C))->_result_type/*20*/; _t2=X291to_runnable(_t1,a1); /*IF*/if ((_t2)==((void*)(NULL))) { r683add_position(X291start_position(_t1)); r873error((((T873*)C))->_start_position/*12*/,((T0*)ms5_361)); } /*FI*//*IF*/if (((((T873*)C))->_current_type/*4*/)==((void*)(NULL))) { C->_current_type=a1; C->_result_type=_t2; R=(T0*)C; } else { {T873*n=malloc(sizeof(*n)); *n=M873; r873make_runnable(n,(T0*)C,a1,_t2); R=(T0*)n; } } /*FI*/return R; } /*No:ARGUMENT_NAME1.set_rank*/ /*No:ARGUMENT_NAME1.bracketed_pretty_print*/ /*No:ARGUMENT_NAME1.rank*/ /*No:ARGUMENT_NAME1.result_type*/ /*No:ARGUMENT_NAME1.atomic_precedence*/ /*No:ARGUMENT_NAME1.pretty_print*/ T0* r873base_class_written(T873* C){ T0* R=NULL; R=r451base_class(((T451*)(r873written_in(C)))); return R; } /*No:ARGUMENT_NAME1.current_type*/ /*No:ARGUMENT_NAME1.is_manifest_string*/ /*No:ARGUMENT_NAME1.is_void*/ void r873error(T0* a1,T0* a2){ r683add_position(a1); r683error(((T683*)(oBC364eh)),a2); } /*No:ARGUMENT_NAME1.em_ba*/ void r873make_runnable(T873* C,T0* a1,T0* a2,T0* a3){ *((T873*)(C))=*((T873*)(a1)); C->_current_type=a2; C->_result_type=a3; } T0* r292add_comment(T292* C,T0* a1){ T0* R=NULL; /*IF*/if (((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r52count(((T52*)((((T393*)((T393*)a1)))->_list/*4*/)))/*)*/)==(0))) { R=(T0*)C; } else {/*AT*//*IF*/if ((/*(IRF4.6count*/r52count(((T52*)((((T393*)((T393*)a1)))->_list/*4*/)))/*)*/)==(1)) { R=(T0*)C; } else { {T46*n=malloc(sizeof(*n)); *n=M46; r46make(n,(T0*)C,a1); R=(T0*)n; } } /*FI*/} /*FI*/return R; } void r292make(T292* C,T0* a1,T0* a2,T0* a3){ {T623*n=malloc(sizeof(*n)); *n=M623; r623make(n,a1,a2,a3); C->_check_invariant=(T0*)n; } } /*No:E_CHECK.start_position*/ T0* r292to_runnable(T292* C,T0* a1){ T0* R=NULL; T0* _al=NULL; /*IF*/if (((((T292*)C))->_run_compound/*4*/)==((void*)(NULL))) { C->_run_compound=a1; /*IF*/if (r590all_check(((T590*)(oBC364run_control)))) { _al=r623to_runnable(((T623*)((((T292*)C))->_check_invariant/*8*/)),(((T592*)((T592*)a1)))->_current_type/*4*/); /*IF*/if ((_al)==((void*)(NULL))) { r292error(/*(IRF4.6start_position*/(((T623*)((T623*)((((T292*)C))->_check_invariant/*8*/))))->_start_position/*0*//*)*/,((T0*)ms1_292)); } else { C->_check_invariant=_al; R=(T0*)C; } /*FI*/} else { R=(T0*)C; } /*FI*/} else { {T292*n=malloc(sizeof(*n)); *n=M292; r292make(n,/*(IRF4.6start_position*/(((T623*)((T623*)((((T292*)C))->_check_invariant/*8*/))))->_start_position/*0*//*)*/,NULL,(((T623*)((T623*)((((T292*)C))->_check_invariant/*8*/))))->_list/*8*/); R=(T0*)n; } R=r292to_runnable(((T292*)R),a1); } /*FI*/return R; } /*No:E_CHECK.check_invariant*/ void r292pretty_print(T292* C){ r623pretty_print(((T623*)((((T292*)C))->_check_invariant/*8*/))); r238put_string(((T238*)(oBC364fmt)),((T0*)ms2_292)); /*IF*/if (r238print_end_check(((T238*)(oBC364fmt)))) { r238put_end(((T238*)(oBC364fmt)),((T0*)ms3_292)); } /*FI*/} /*No:E_CHECK.run_compound*/ void r292error(T0* a1,T0* a2){ r683add_position(a1); r683error(((T683*)(oBC364eh)),a2); } /*No:E_CHECK.end_mark_comment*/ /*No:UNIQUE_STRING.us_put*/ /*No:UNIQUE_STRING.us_character_bits*/ /*No:UNIQUE_STRING.us_none*/ /*No:UNIQUE_STRING.us_dictionary*/ /*No:UNIQUE_STRING.us_minimum_integer*/ /*No:UNIQUE_STRING.us_character_ref*/ /*No:UNIQUE_STRING.us_integer*/ /*No:UNIQUE_STRING.us_copy*/ /*No:UNIQUE_STRING.us_generator*/ /*No:UNIQUE_STRING.us_minimum_character_code*/ /*No:UNIQUE_STRING.us_maximum_integer*/ /*No:UNIQUE_STRING.us_standard_copy*/ /*No:UNIQUE_STRING.us_maximum_character_code*/ /*No:UNIQUE_STRING.us_minimum_real*/ /*No:UNIQUE_STRING.us_sprintf_double*/ /*No:UNIQUE_STRING.us_with_capacity*/ void r902key_pfx_ifx(T0* a1){ char _c=0; int _i=0; _i=1; while (!((_i)>((((T7*)((T7*)a1)))->_count/*4*/))) { _c=/*(IRF4.6item*/((((T7*)((T7*)a1)))->_storage/*0*/)[(_i)-(1)]/*)*/; /*IF*/if (r3is_letter(_c)) { r7extend(((T7*)(oBC902pfx_ifx)),_c); } else { r2append_in(((unsigned char)_c),oBC902pfx_ifx); } /*FI*/_i=(_i)+(1); } } /*No:UNIQUE_STRING.us_backslash_backslash*/ /*No:UNIQUE_STRING.us_compile_to_jvm*/ /*No:UNIQUE_STRING.us_maximum_real*/ /*No:UNIQUE_STRING.us_conforms_to*/ /*No:UNIQUE_STRING.us_and*/ /*No:UNIQUE_STRING.us_print*/ /*No:UNIQUE_STRING.us_print_on*/ /*No:UNIQUE_STRING.us_double_ref*/ /*No:UNIQUE_STRING.us_and_then*/ /*No:UNIQUE_STRING.us_put_0*/ /*No:UNIQUE_STRING.us_array*/ /*No:UNIQUE_STRING.us_from_pointer*/ /*No:UNIQUE_STRING.us_lower*/ /*No:UNIQUE_STRING.us_std_neq*/ /*No:UNIQUE_STRING.us_pointer_bits*/ /*No:UNIQUE_STRING.us_slash_slash*/ /*No:UNIQUE_STRING.us_double_floor*/ /*No:UNIQUE_STRING.us_integer_bits*/ /*No:UNIQUE_STRING.us_stdout*/ /*No:UNIQUE_STRING.us_capacity*/ /*No:UNIQUE_STRING.us_put_1*/ /*No:UNIQUE_STRING.make*/ /*No:UNIQUE_STRING.us_current*/ /*No:UNIQUE_STRING.us_item*/ T0* r902read(T0* a1){ T0* R=NULL; R=r794at(((T794*)(oBC902memory)),a1); return R; } /*No:UNIQUE_STRING.us_pointer*/ /*No:UNIQUE_STRING.us_string*/ /*No:UNIQUE_STRING.us_se_remove*/ /*No:UNIQUE_STRING.us_flush_stream*/ /*No:UNIQUE_STRING.us_realloc*/ /*No:UNIQUE_STRING.us_like_current*/ /*No:UNIQUE_STRING.us_floor*/ /*No:UNIQUE_STRING.us_double_bits*/ /*No:UNIQUE_STRING.us_or_else*/ /*No:UNIQUE_STRING.us_blank*/ /*No:UNIQUE_STRING.us_is_expanded_type*/ /*No:UNIQUE_STRING.us_std_output*/ /*No:UNIQUE_STRING.us_fclose*/ T0* r902item(T0* a1){ T0* R=NULL; r902initialize(); /*IF*/if (r794has(((T794*)(oBC902memory)),a1)) { R=r902read(a1); } else { R=r7twin(((T7*)a1)); r902add1(R); } /*FI*/return R; } /*No:UNIQUE_STRING.us_ge*/ /*No:UNIQUE_STRING.us_neq*/ T0*oBC364eiffel_parser=NULL; /*No:UNIQUE_STRING.us_stdin*/ /*No:UNIQUE_STRING.us_slash*/ /*No:UNIQUE_STRING.us_compile_to_c*/ /*No:UNIQUE_STRING.us_crash*/ /*No:UNIQUE_STRING.us_c_inline_c*/ /*No:UNIQUE_STRING.us_standard_twin*/ /*No:UNIQUE_STRING.us_truncated_to_integer*/ /*No:UNIQUE_STRING.us_write_byte*/ /*No:UNIQUE_STRING.us_stderr*/ /*No:UNIQUE_STRING.us_se_system*/ /*No:UNIQUE_STRING.us_std_file_read*/ /*No:UNIQUE_STRING.us_sfr_open*/ /*No:UNIQUE_STRING.us_sfw_open*/ /*No:UNIQUE_STRING.us_character*/ /*No:UNIQUE_STRING.us_pointer_ref*/ /*No:UNIQUE_STRING.us_shift_left*/ /*No:UNIQUE_STRING.us_std_error*/ T0*oBC902pfx_ifx=NULL; /*No:UNIQUE_STRING.us_le*/ /*No:UNIQUE_STRING.us_make*/ /*No:UNIQUE_STRING.us_integer_ref*/ /*No:UNIQUE_STRING.us_bitn*/ /*No:UNIQUE_STRING.us_twin*/ /*No:UNIQUE_STRING.us_bit_n*/ /*No:UNIQUE_STRING.us_real*/ /*No:UNIQUE_STRING.us_die_with_code*/ /*No:UNIQUE_STRING.us_implies*/ /*No:UNIQUE_STRING.us_result*/ /*No:UNIQUE_STRING.us_generating_type*/ /*No:UNIQUE_STRING.us_is_basic_expanded_type*/ T0* r902for_prefix(T0* a1){ T0* R=NULL; r7copy(((T7*)(oBC902pfx_ifx)),((T0*)ms1_902)); r902key_pfx_ifx(a1); R=r902item(oBC902pfx_ifx); return R; } T0* r902for_infix(T0* a1){ T0* R=NULL; r7copy(((T7*)(oBC902pfx_ifx)),((T0*)ms2_902)); r902key_pfx_ifx(a1); R=r902item(oBC902pfx_ifx); return R; } /*No:UNIQUE_STRING.us_bit*/ /*No:UNIQUE_STRING.us_minus*/ /*No:UNIQUE_STRING.us_shift_right*/ /*No:UNIQUE_STRING.us_count*/ /*No:UNIQUE_STRING.us_se_argc*/ /*No:UNIQUE_STRING.us_storage*/ /*No:UNIQUE_STRING.us_object_size*/ /*No:UNIQUE_STRING.us_se_rename*/ /*No:UNIQUE_STRING.us_memory*/ /*No:UNIQUE_STRING.us_code*/ /*No:UNIQUE_STRING.us_sprintf_pointer*/ /*No:UNIQUE_STRING.us_standard_is_equal*/ /*No:UNIQUE_STRING.us_real_ref*/ /*No:UNIQUE_STRING.us_boolean*/ /*No:UNIQUE_STRING.us_is_not_void*/ /*No:UNIQUE_STRING.us_at*/ /*No:UNIQUE_STRING.us_eq*/ /*No:UNIQUE_STRING.us_double*/ /*No:UNIQUE_STRING.us_pointer_size*/ /*No:UNIQUE_STRING.us_to_double*/ /*No:UNIQUE_STRING.us_xor*/ /*No:UNIQUE_STRING.us_io*/ /*No:UNIQUE_STRING.us_platform*/ /*No:UNIQUE_STRING.us_is_equal*/ /*No:UNIQUE_STRING.us_to_bit*/ /*No:UNIQUE_STRING.us_bit_n_ref*/ /*No:UNIQUE_STRING.us_to_character*/ /*No:UNIQUE_STRING.us_se_string2double*/ /*No:UNIQUE_STRING.us_free*/ /*No:UNIQUE_STRING.us_read_byte*/ /*No:UNIQUE_STRING.us_not*/ /*No:UNIQUE_STRING.us_void*/ /*No:UNIQUE_STRING.us_muls*/ /*No:UNIQUE_STRING.us_trace_switch*/ /*No:UNIQUE_STRING.us_feof*/ /*No:UNIQUE_STRING.us_boolean_bits*/ /*No:UNIQUE_STRING.us_gt*/ /*No:UNIQUE_STRING.us_se_getenv*/ /*No:UNIQUE_STRING.us_to_integer*/ /*No:UNIQUE_STRING.us_native_array_character*/ /*No:UNIQUE_STRING.us_calloc*/ /*No:UNIQUE_STRING.us_to_pointer*/ /*No:UNIQUE_STRING.us_clear_all*/ /*No:UNIQUE_STRING.us_real_bits*/ /*No:UNIQUE_STRING.us_plus*/ /*No:UNIQUE_STRING.us_boolean_ref*/ /*No:UNIQUE_STRING.us_c_inline_h*/ /*No:UNIQUE_STRING.us_element_sizeof*/ /*No:UNIQUE_STRING.us_upper*/ /*No:UNIQUE_STRING.us_native_array*/ void r902add1(T0* a1){ r794put(((T794*)(oBC902memory)),a1,a1); } /*No:UNIQUE_STRING.us_pow*/ void r902add2(T0* a1){ /*IF*/if ((((T818*)((T818*)(oBC364eiffel_parser))))->_case_insensitive/*0*/) { r7to_lower(((T7*)a1)); } /*FI*/r902add1(a1); } T0*oBC902memory=NULL; /*No:UNIQUE_STRING.us_eof_code*/ /*No:UNIQUE_STRING.us_print_run_time_stack*/ int fBC902initialize=0; void r902initialize(void){ if (fBC902initialize==0){ fBC902initialize=1; r902add1(((T0*)ms1_473)); r902add1(((T0*)ms2_473)); r902add1(((T0*)ms3_473)); r902add1(((T0*)ms4_473)); r902add1(((T0*)ms5_473)); r902add1(((T0*)ms6_473)); r902add1(((T0*)ms7_473)); r902add1(((T0*)ms8_473)); r902add1(((T0*)ms9_473)); r902add1(((T0*)ms10_473)); r902add1(((T0*)ms11_473)); r902add1(((T0*)ms12_473)); r902add1(((T0*)ms13_473)); r902add1(((T0*)ms14_473)); r902add1(((T0*)ms15_473)); r902add1(((T0*)ms16_473)); r902add1(((T0*)ms17_473)); r902add1(((T0*)ms18_473)); r902add1(((T0*)ms19_473)); r902add1(((T0*)ms20_473)); r902add1(((T0*)ms21_473)); r902add1(((T0*)ms22_473)); r902add1(((T0*)ms23_473)); r902add1(((T0*)ms24_473)); r902add1(((T0*)ms25_473)); r902add1(((T0*)ms26_473)); r902add1(((T0*)ms27_473)); r902add1(((T0*)ms28_473)); r902add1(((T0*)ms29_473)); r902add1(((T0*)ms30_473)); r902add1(((T0*)ms31_473)); r902add1(((T0*)ms32_473)); r902add1(((T0*)ms33_473)); r902add1(((T0*)ms34_473)); r902add1(((T0*)ms35_473)); r902add1(((T0*)ms36_473)); r902add1(((T0*)ms37_473)); r902add1(((T0*)ms38_473)); r902add1(((T0*)ms39_473)); r902add1(((T0*)ms40_473)); r902add1(((T0*)ms41_473)); r902add1(((T0*)ms42_473)); r902add1(((T0*)ms43_473)); r902add1(((T0*)ms44_473)); r902add1(((T0*)ms45_473)); r902add1(((T0*)ms46_473)); r902add1(((T0*)ms47_473)); r902add1(((T0*)ms48_473)); r902add1(((T0*)ms49_473)); r902add1(((T0*)ms50_473)); r902add1(((T0*)ms51_473)); r902add1(((T0*)ms52_473)); r902add1(((T0*)ms53_473)); r902add1(((T0*)ms54_473)); r902add1(((T0*)ms55_473)); r902add1(((T0*)ms56_473)); r902add1(((T0*)ms57_473)); r902add1(((T0*)ms58_473)); r902add1(((T0*)ms59_473)); r902add1(((T0*)ms60_473)); r902add1(((T0*)ms61_473)); r902add1(((T0*)ms62_473)); r902add1(((T0*)ms63_473)); r902add1(((T0*)ms64_473)); r902add1(((T0*)ms65_473)); r902add1(((T0*)ms66_473)); r902add1(((T0*)ms67_473)); r902add1(((T0*)ms68_473)); r902add1(((T0*)ms69_473)); r902add1(((T0*)ms70_473)); r902add1(((T0*)ms71_473)); r902add1(((T0*)ms72_473)); r902add1(((T0*)ms73_473)); r902add1(((T0*)ms74_473)); r902add1(((T0*)ms75_473)); r902add1(((T0*)ms76_473)); r902add1(((T0*)ms77_473)); r902add1(((T0*)ms78_473)); r902add1(((T0*)ms79_473)); r902add1(((T0*)ms80_473)); r902add1(((T0*)ms81_473)); r902add1(((T0*)ms82_473)); r902add1(((T0*)ms83_473)); r902add1(((T0*)ms84_473)); r902add1(((T0*)ms85_473)); r902add1(((T0*)ms86_473)); r902add1(((T0*)ms87_473)); r902add1(((T0*)ms88_473)); r902add1(((T0*)ms89_473)); r902add2(((T0*)ms90_473)); r902add2(((T0*)ms91_473)); r902add2(((T0*)ms92_473)); r902add2(((T0*)ms93_473)); r902add2(((T0*)ms94_473)); r902add2(((T0*)ms95_473)); r902add2(((T0*)ms96_473)); r902add2(((T0*)ms97_473)); r902add1(((T0*)ms98_473)); r902add1(((T0*)ms99_473)); r902add1(((T0*)ms100_473)); r902add1(((T0*)ms101_473)); r902add1(((T0*)ms102_473)); r902add1(((T0*)ms103_473)); r902add1(((T0*)ms104_473)); r902add1(((T0*)ms105_473)); r902add1(((T0*)ms106_473)); r902add1(((T0*)ms107_473)); r902add1(((T0*)ms108_473)); r902add1(((T0*)ms109_473)); r902add1(((T0*)ms110_473)); r902add1(((T0*)ms111_473)); r902add1(((T0*)ms112_473)); r902add1(((T0*)ms113_473)); r902add1(((T0*)ms114_473)); r902add1(((T0*)ms115_473)); r902add1(((T0*)ms116_473)); r902add1(((T0*)ms117_473)); r902add1(((T0*)ms118_473)); r902add1(((T0*)ms119_473)); r902add1(((T0*)ms120_473)); r902add1(((T0*)ms121_473)); r902add1(((T0*)ms122_473)); r902add1(((T0*)ms123_473)); r902add1(((T0*)ms124_473)); r902add1(((T0*)ms125_473)); r902add1(((T0*)ms126_473)); r902add1(((T0*)ms127_473)); r902add1(((T0*)ms128_473)); r902add1(((T0*)ms129_473)); r902add1(((T0*)ms130_473)); r902add1(((T0*)ms131_473)); r902add1(((T0*)ms132_473)); r902add1(((T0*)ms133_473)); r902add1(((T0*)ms134_473)); r902add1(((T0*)ms135_473)); r902add1(((T0*)ms136_473)); r902add1(((T0*)ms137_473)); r902add1(((T0*)ms138_473)); r902add1(((T0*)ms139_473)); r902add1(((T0*)ms140_473)); r902add1(((T0*)ms141_473)); r902add1(((T0*)ms142_473)); r902add1(((T0*)ms143_473)); r902add1(((T0*)ms144_473)); r902add1(((T0*)ms145_473)); r902add1(((T0*)ms146_473)); r902add1(((T0*)ms147_473)); }} /*No:UNIQUE_STRING.us_malloc*/ /*No:UNIQUE_STRING.us_fixed_array*/ /*No:UNIQUE_STRING.us_std_input*/ /*No:UNIQUE_STRING.us_lt*/ /*No:UNIQUE_STRING.us_minimum_double*/ /*No:UNIQUE_STRING.us_se_argv*/ /*No:UNIQUE_STRING.us_any*/ /*No:UNIQUE_STRING.us_or*/ /*No:UNIQUE_STRING.us_general*/ /*No:UNIQUE_STRING.us_maximum_double*/ /*No:UNIQUE_STRING.us_to_real*/ /*No:EIFFEL_PARSER.cc*/ /*No:EIFFEL_PARSER.ok*/ void r818a_r5(T818* C,T0* a1){ T0* _sp=NULL; T0* _infix_minus=NULL; T0* _infix_plus=NULL; /*IF*/if (r818skip1(C,'\53')) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_e5(C)) { {T253*n=malloc(sizeof(*n)); *n=M253; r253make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/); _infix_plus=(T0*)n; } r818a_r5(C,_infix_plus); } else { r818err_exp(_sp,((T0*)ms43_473)); } /*FI*/} else if (r818skip1(C,'\55')) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_e5(C)) { {T574*n=malloc(sizeof(*n)); *n=M574; r574make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/); _infix_minus=(T0*)n; } r818a_r5(C,_infix_minus); } else { r818err_exp(_sp,((T0*)ms37_473)); } /*FI*/} else { C->_last_expression=a1; } /*FI*/} int r818a_e5(T818* C){ int R=0; R=r818a_e6(C); r818a_r6(C,(((T818*)C))->_last_expression/*97*/); return R; } /*No:EIFFEL_PARSER.arguments*/ /*No:EIFFEL_PARSER.fz_creation*/ /*No:EIFFEL_PARSER.em14*/ int r818a_binary(T818* C,T0* a1){ int R=0; R=1; /*IF*/if (r818skip2(C,'\74','\75')) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms35_473),a1); C->_last_binary=(T0*)n; } } else if (r818skip2(C,'\76','\75')) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms32_473),a1); C->_last_binary=(T0*)n; } } else if (r818skip2(C,'\57','\57')) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms45_818),a1); C->_last_binary=(T0*)n; } } else if (r818skip2(C,'\134','\134')) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms46_818),a1); C->_last_binary=(T0*)n; } } else if (r818skip1(C,'\53')) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms43_473),a1); C->_last_binary=(T0*)n; } } else if (r818skip1(C,'\55')) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms37_473),a1); C->_last_binary=(T0*)n; } } else if (r818skip1(C,'\52')) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms38_473),a1); C->_last_binary=(T0*)n; } } else if (r818skip1(C,'\57')) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms47_473),a1); C->_last_binary=(T0*)n; } } else if (r818skip1(C,'\76')) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms33_473),a1); C->_last_binary=(T0*)n; } } else if (r818skip1(C,'\74')) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms36_473),a1); C->_last_binary=(T0*)n; } } else if (r818skip1(C,'\136')) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms47_818),a1); C->_last_binary=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms50_473))) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms50_473),a1); C->_last_binary=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms34_473))) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms34_473),a1); C->_last_binary=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms27_473))) { /*IF*/if (r818a_keyword(C,((T0*)ms46_470))) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms28_473),a1); C->_last_binary=(T0*)n; } } else { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms27_473),a1); C->_last_binary=(T0*)n; } } /*FI*/} else if (r818a_keyword(C,((T0*)ms41_473))) { /*IF*/if (r818a_keyword(C,((T0*)ms10_470))) { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms42_473),a1); C->_last_binary=(T0*)n; } } else { {T454*n=malloc(sizeof(*n)); *n=M454; r454make(n,((T0*)ms41_473),a1); C->_last_binary=(T0*)n; } } /*FI*/} else { C->_last_binary=NULL; R=0; } /*FI*/return R; } void r818a_r6(T818* 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 (r818skip1(C,'\52')) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_e6(C)) { {T414*n=malloc(sizeof(*n)); *n=M414; r414make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/); _infix_times=(T0*)n; } r818a_r6(C,_infix_times); } else { r818err_exp(_sp,((T0*)ms38_473)); } /*FI*/} else if (r818skip2(C,'\57','\57')) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_e6(C)) { {T460*n=malloc(sizeof(*n)); *n=M460; r460make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/); _infix_int_div=(T0*)n; } r818a_r6(C,_infix_int_div); } else { r818err_exp(_sp,((T0*)ms120_818)); } /*FI*/} else if (r818skip2(C,'\134','\134')) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_e6(C)) { {T453*n=malloc(sizeof(*n)); *n=M453; r453make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/); _infix_int_rem=(T0*)n; } r818a_r6(C,_infix_int_rem); } else { r818err_exp(_sp,((T0*)ms121_818)); } /*FI*/} else if (r818skip1unless2(C,'\57','\75')) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_e6(C)) { {T520*n=malloc(sizeof(*n)); *n=M520; r520make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/); _infix_div=(T0*)n; } r818a_r6(C,_infix_div); } else { r818err_exp(_sp,((T0*)ms47_473)); } /*FI*/} else { C->_last_expression=a1; } /*FI*/} int r818a_e6(T818* C){ int R=0; R=r818a_e7(C); r818a_r7(C,(((T818*)C))->_last_expression/*97*/); return R; } /*No:EIFFEL_PARSER.em15*/ /*No:EIFFEL_PARSER.last_parent*/ void r818a_r7(T818* C,T0* a1){ T0* _sp=NULL; T0* _infix_power=NULL; /*IF*/if (r818skip1(C,'\136')) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_e7(C)) { {T557*n=malloc(sizeof(*n)); *n=M557; r557make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/); _infix_power=(T0*)n; } r818a_r7(C,_infix_power); } else { r818err_exp(_sp,((T0*)ms122_818)); } /*FI*/} else { C->_last_expression=a1; } /*FI*/} int r818a_e7(T818* C){ int R=0; R=r818a_e8(C); r818a_r8(C,(((T818*)C))->_last_expression/*97*/); return R; } int r818a_boolean_constant(T818* C){ int R=0; /*IF*/if (r818a_keyword(C,((T0*)ms47_470))) { {T849*n=malloc(sizeof(*n)); *n=M849; /*[IRF3.3make*/((((T849*)(n)))->_start_position)=(r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); /*]*/ C->_last_boolean_constant=(T0*)n; } R=1; } else if (r818a_keyword(C,((T0*)ms17_470))) { {T367*n=malloc(sizeof(*n)); *n=M367; /*[IRF3.3make*/((((T367*)(n)))->_start_position)=(r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); /*]*/ C->_last_boolean_constant=(T0*)n; } R=1; } /*FI*/return R; } /*No:EIFFEL_PARSER.last_type*/ int r818a_base_type(T818* C){ int R=0; T0* _sp=NULL; R=1; /*IF*/if (r818a_keyword(C,((T0*)ms1_473))) { {T669*n=malloc(sizeof(*n)); *n=M669; r669make(n,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); C->_last_base_type=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms2_473))) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (((r818skip1(C,'\133'))&&(r818a_type(C)))&&(r818skip1(C,'\135'))) { {T709*n=malloc(sizeof(*n)); *n=M709; r709make(n,_sp,(((T818*)C))->_last_type/*157*/); C->_last_base_type=(T0*)n; } } else { r818fcp(C,((T0*)ms40_818)); } /*FI*/} else if (r818a_keyword(C,((T0*)ms18_473))) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (((r818skip1(C,'\133'))&&(r818a_type(C)))&&(r818skip1(C,'\135'))) { {T933*n=malloc(sizeof(*n)); *n=M933; r933make(n,_sp,(((T818*)C))->_last_type/*157*/); C->_last_base_type=(T0*)n; } } else { r818fcp(C,((T0*)ms41_818)); } /*FI*/} else if (r818a_keyword(C,((T0*)ms42_818))) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (((r818skip1(C,'\133'))&&(r818a_type(C)))&&(r818skip1(C,'\135'))) { {T933*n=malloc(sizeof(*n)); *n=M933; r933make(n,_sp,(((T818*)C))->_last_type/*157*/); C->_last_base_type=(T0*)n; } } else { r818fcp(C,((T0*)ms43_818)); } /*FI*/r818warning(_sp,((T0*)ms44_818)); } else if (r818a_keyword(C,((T0*)ms6_473))) { {T707*n=malloc(sizeof(*n)); *n=M707; r707make(n,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); C->_last_base_type=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms8_473))) { {T252*n=malloc(sizeof(*n)); *n=M252; r252make(n,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); C->_last_base_type=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms11_473))) { {T388*n=malloc(sizeof(*n)); *n=M388; r388make(n,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); C->_last_base_type=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms15_473))) { {T788*n=malloc(sizeof(*n)); *n=M788; r788make(n,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); C->_last_base_type=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms19_473))) { {T284*n=malloc(sizeof(*n)); *n=M284; r284make(n,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); C->_last_base_type=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms21_473))) { {T900*n=malloc(sizeof(*n)); *n=M900; r900make(n,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); C->_last_base_type=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms23_473))) { {T209*n=malloc(sizeof(*n)); *n=M209; r209make(n,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); C->_last_base_type=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms25_473))) { {T491*n=malloc(sizeof(*n)); *n=M491; r491make(n,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); C->_last_base_type=(T0*)n; } } else { R=0; } /*FI*/return R; } /*No:EIFFEL_PARSER.em16*/ /*No:EIFFEL_PARSER.nb_warnings*/ /*No:EIFFEL_PARSER.last_expression*/ /*No:EIFFEL_PARSER.last_character_constant*/ void r818a_r8(T818* C,T0* a1){ T0* _infix_freeop=NULL; T0* _infix_name=NULL; /*IF*/if (r818a_free_operator(C)) { _infix_name=r511to_infix_name_use(((T511*)(oBC818tmp_name))); /*IF*/if (r818a_e8(C)) { {T534*n=malloc(sizeof(*n)); *n=M534; r534make(n,a1,_infix_name,(((T818*)C))->_last_expression/*97*/); _infix_freeop=(T0*)n; } r818a_r8(C,_infix_freeop); } else { r818err_exp((((T454*)((T454*)_infix_name)))->_start_position/*8*/,(((T454*)((T454*)_infix_name)))->_to_string/*4*/); } /*FI*/} else { C->_last_expression=a1; } /*FI*/} int r818a_e8(T818* 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 (r818a_keyword(C,((T0*)ms40_473))) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_e8(C)) { {T180*n=malloc(sizeof(*n)); *n=M180; r180make(n,_sp,(((T818*)C))->_last_expression/*97*/); _prefix_not=(T0*)n; } C->_last_expression=_prefix_not; R=1; } else { r818err_exp(_sp,((T0*)ms40_473)); } /*FI*/} else if (r818skip1(C,'\53')) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_e8(C)) { {T767*n=malloc(sizeof(*n)); *n=M767; r767make(n,_sp,(((T818*)C))->_last_expression/*97*/); _prefix_plus=(T0*)n; } C->_last_expression=_prefix_plus; R=1; } else { r818err_exp(_sp,((T0*)ms73_818)); } /*FI*/} else if (r818skip1(C,'\55')) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_e8(C)) { {T72*n=malloc(sizeof(*n)); *n=M72; r72make(n,_sp,(((T818*)C))->_last_expression/*97*/); _prefix_moins=(T0*)n; } C->_last_expression=_prefix_moins; R=1; } else { r818err_exp(_sp,((T0*)ms74_818)); } /*FI*/} else if (r818a_free_operator(C)) { _op=r511to_prefix_name(((T511*)(oBC818tmp_name))); /*IF*/if (r818a_e8(C)) { {T990*n=malloc(sizeof(*n)); *n=M990; /*[IRF3.6make*/{T990* C1=n; T0* b1=(((T818*)C))->_last_expression/*97*/; T0* b2=_op; r990make_call0(C1,b1,b2); }/*]*/ _prefix_freeop=(T0*)n; } C->_last_expression=_prefix_freeop; R=1; } else { /*[IRF3.6append*/{T0* b1=((T0*)ms75_818); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ r818err_exp((((T406*)((T406*)_op)))->_start_position/*8*/,(((T406*)((T406*)_op)))->_to_string/*4*/); } /*FI*/} else { R=r818a_e9(C); } /*FI*/return R; } int r818a_feature_declaration(T818* C){ int R=0; r505initialize(((T505*)(oBC818tmp_feature))); /*IF*/if (r818a_keyword(C,((T0*)ms20_470))) { /*IF*/if (r818a_feature_name(C)) { R=1; X776set_is_frozen((((T818*)C))->_last_feature_name/*109*/,1); /*[IRF3.6add_synonym*/{T0* b1=(((T818*)C))->_last_feature_name/*109*/; r855add_last(((T855*)(oBC505names)),b1); }/*]*/ } else { r818fcp(C,((T0*)ms140_818)); } /*FI*/} else if (r818a_feature_name(C)) { R=1; /*[IRF3.6add_synonym*/{T0* b1=(((T818*)C))->_last_feature_name/*109*/; r855add_last(((T855*)(oBC505names)),b1); }/*]*/ } /*FI*/while (!(!(r818skip1(C,'\54')))) { /*IF*/if (r818a_keyword(C,((T0*)ms20_470))) { /*IF*/if (r818a_feature_name(C)) { X776set_is_frozen((((T818*)C))->_last_feature_name/*109*/,1); /*[IRF3.6add_synonym*/{T0* b1=(((T818*)C))->_last_feature_name/*109*/; r855add_last(((T855*)(oBC505names)),b1); }/*]*/ } else { r818fcp(C,((T0*)ms92_818)); } /*FI*/} else if (r818a_feature_name(C)) { /*[IRF3.6add_synonym*/{T0* b1=(((T818*)C))->_last_feature_name/*109*/; r855add_last(((T855*)(oBC505names)),b1); }/*]*/ } else { /*[IRF3.6ecp*/{T818* C1=C; T0* b1=((T0*)ms93_818); r818error(r818current_position(C1),b1); }/*]*/ } /*FI*/} /*IF*/if (R) { r818a_formal_arg_list(C); C->_function_type=NULL; /*IF*/if (r818skip1(C,'\72')) { /*IF*/if (r818a_type(C)) { C->_function_type=(((T818*)C))->_last_type/*157*/; /*[IRF3.3set_type*/((((T505*)(((T505*)(oBC818tmp_feature)))))->_type)=((((T818*)C))->_last_type/*157*/); /*]*/ } else { r818fcp(C,((T0*)ms156_818)); } /*FI*/} /*FI*//*IF*/if (r818a_keyword(C,((T0*)ms27_470))) { /*IF*/if (r818a_keyword(C,((T0*)ms49_470))) { C->_last_feature_declaration=r505to_cst_att_unique(((T505*)(oBC818tmp_feature))); } else if (r818a_boolean_constant(C)) { C->_last_feature_declaration=r505to_cst_att_boolean(((T505*)(oBC818tmp_feature)),(((T818*)C))->_last_boolean_constant/*81*/); } else if (r818a_character_constant(C)) { C->_last_feature_declaration=r505to_cst_att_character(((T505*)(oBC818tmp_feature)),(((T818*)C))->_last_character_constant/*85*/); } else if (r818a_manifest_string(C)) { C->_last_feature_declaration=r505to_cst_att_string(((T505*)(oBC818tmp_feature)),(((T818*)C))->_last_manifest_string/*145*/); } else if (r818a_bit_constant(C)) { C->_last_feature_declaration=r505to_cst_att_bit(((T505*)(oBC818tmp_feature)),(((T818*)C))->_last_bit_constant/*77*/); } else if (r818a_real_constant(C)) { C->_last_feature_declaration=r505to_cst_att_real(((T505*)(oBC818tmp_feature)),(((T818*)C))->_last_real_constant/*153*/); } else if (r818a_integer_constant(C)) { C->_last_feature_declaration=r505to_cst_att_integer(((T505*)(oBC818tmp_feature)),(((T818*)C))->_last_integer_constant/*129*/); } else { C->_last_feature_declaration=r818a_routine(C); } /*FI*/} else { C->_last_feature_declaration=r505to_writable_attribute(((T505*)(oBC818tmp_feature))); } /*FI*/C->_function_type=NULL; C->_arguments=NULL; } /*FI*/return R; } /*No:EIFFEL_PARSER.us_integer*/ /*No:EIFFEL_PARSER.em17*/ int r818a_integer_constant(T818* C){ int R=0; int _c=0; int _l=0; /*IF*/if (r818skip1(C,'\53')) { _l=(((T818*)C))->_start_line/*169*/; _c=(((T818*)C))->_start_column/*165*/; /*IF*/if (r818a_integer(C)) { r627set_line_column(((T627*)((((T342*)((T342*)((((T818*)C))->_last_integer_constant/*129*/))))->_start_position/*8*/)),_l,_c); R=1; } else { r818fcp(C,((T0*)ms69_470)); } /*FI*/} else if (r818skip1(C,'\55')) { _l=(((T818*)C))->_start_line/*169*/; _c=(((T818*)C))->_start_column/*165*/; /*IF*/if (r818a_integer(C)) { r627set_line_column(((T627*)((((T342*)((T342*)((((T818*)C))->_last_integer_constant/*129*/))))->_start_position/*8*/)),_l,_c); r342unary_minus(((T342*)((((T818*)C))->_last_integer_constant/*129*/))); R=1; } else { r818fcp(C,((T0*)ms69_470)); } /*FI*/} else { R=r818a_integer(C); } /*FI*/return R; } void r818a_creation_clause(T818* C,T0* a1){ T0* _creation_clause=NULL; T0* _list=NULL; T0* _comments=NULL; T0* _clients=NULL; _clients=r818a_clients(C); _comments=r818get_comments(C); /*IF*/if (r818a_feature_list(C)) { _list=(((T818*)C))->_last_feature_list/*105*/; } /*FI*/{T583*n=malloc(sizeof(*n)); *n=M583; r583make(n,a1,_clients,_comments,_list); _creation_clause=(T0*)n; } r605add_creation_clause(((T605*)((((T818*)C))->_last_base_class/*65*/)),_creation_clause); } int r818a_e9(T818* C){ int R=0; T0* _e_old=NULL; /*IF*/if (r818a_keyword(C,((T0*)ms34_470))) { /*IF*/if (!((((T818*)C))->_in_ensure/*37*/)) { r818error(r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/),((T0*)ms76_818)); } /*FI*//*IF*/if (r818a_e10(C)) { {T664*n=malloc(sizeof(*n)); *n=M664; /*[IRF3.3make*/((((T664*)(n)))->_expression)=((((T818*)C))->_last_expression/*97*/); /*]*/ _e_old=(T0*)n; } C->_last_expression=_e_old; R=1; } else { r818fcp(C,((T0*)ms77_818)); } /*FI*/} else { R=r818a_e10(C); } /*FI*/return R; } int r818a_index_value(T818* C){ int R=0; /*IF*/if (r818a_identifier(C)) { C->_last_index_value=r511to_simple_feature_name(((T511*)(oBC818tmp_name))); R=1; } else if (r818a_manifest_constant(C)) { C->_last_index_value=(((T818*)C))->_last_manifest_constant/*141*/; R=1; } /*FI*/return R; } /*No:EIFFEL_PARSER.em18*/ void r818a_new_export_list(T818* C){ int _state=0; T0* _new_export_item=NULL; T0* _items=NULL; T0* _clients=NULL; T0* _sp=NULL; T0* _export_list=NULL; /*IF*/if (r818a_keyword(C,((T0*)ms15_470))) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } while (!((_state)>(3))) { {int z1=_state; if((0==z1)){ /*IF*/if (((((T818*)C))->_cc/*24*/)==('\173')) { _clients=r818a_clients(C); _state=1; } else if (((((T818*)C))->_cc/*24*/)==('\73')) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms68_470); r818warning(r818current_position(C1),b1); }/*]*/ C->_ok=r818skip1(C,'\73'); } else { /*IF*/if ((_items)!=((void*)(NULL))) { {T671*n=malloc(sizeof(*n)); *n=M671; r671make(n,_sp,_items); _export_list=(T0*)n; } /*[IRF3.3set_export*/((((T877*)(((T877*)((((T818*)C))->_last_parent/*149*/)))))->_export_list)=(_export_list); /*]*/ } /*FI*/_state=4; } /*FI*/} else if((1==z1)){ /*IF*/if (r818a_keyword(C,((T0*)ms2_470))) { {T542*n=malloc(sizeof(*n)); *n=M542; r542make_all(n,_clients); _new_export_item=(T0*)n; } /*IF*/if ((_items)==((void*)(NULL))) { _items=se_ma587(1,_new_export_item); } else { r587add_last(((T587*)_items),_new_export_item); } /*FI*/_state=2; } else { /*IF*/if (r818a_feature_list(C)) { {T542*n=malloc(sizeof(*n)); *n=M542; r542make(n,_clients,(((T818*)C))->_last_feature_list/*105*/); _new_export_item=(T0*)n; } /*IF*/if ((_items)==((void*)(NULL))) { _items=se_ma587(1,_new_export_item); } else { r587add_last(((T587*)_items),_new_export_item); } /*FI*/_state=2; } else { _state=3; } /*FI*/} /*FI*/} else if((2==z1)){ /*IF*/if (r818skip1(C,'\73')) { _state=0; } else if (((((T818*)C))->_cc/*24*/)==('\173')) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms144_818); r818warning(r818current_position(C1),b1); }/*]*/ _state=0; } else { /*IF*/if ((_items)!=((void*)(NULL))) { {T671*n=malloc(sizeof(*n)); *n=M671; r671make(n,_sp,_items); _export_list=(T0*)n; } /*[IRF3.3set_export*/((((T877*)(((T877*)((((T818*)C))->_last_parent/*149*/)))))->_export_list)=(_export_list); /*]*/ } /*FI*/_state=4; } /*FI*/} else{r818fcp(C,((T0*)ms149_818)); _state=4; }} } } /*FI*/} /*No:EIFFEL_PARSER.last_manifest_string*/ /*No:EIFFEL_PARSER.last_base_type*/ /*No:EIFFEL_PARSER.em19*/ /*No:EIFFEL_PARSER.last_comments*/ int r818a_retry(T818* C){ int R=0; /*IF*/if (r818a_keyword(C,((T0*)ms42_470))) { /*IF*/if (!((((T818*)C))->_in_rescue/*41*/)) { r818error(r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/),((T0*)ms30_818)); } /*FI*/{T526*n=malloc(sizeof(*n)); *n=M526; /*[IRF3.3make*/((((T526*)(n)))->_start_position)=(r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); /*]*/ C->_last_instruction=(T0*)n; } R=1; } /*FI*/return R; } /*No:EIFFEL_PARSER.drop_comments*/ int r818a_e10(T818* C){ int R=0; /*IF*/if (r818a_strip(C)) { R=1; } else if (r818skip1(C,'\50')) { R=1; /*IF*/if (r818a_expression(C)) { /*IF*/if (r818skip1(C,'\51')) { r818a_r10(C,0,(((T818*)C))->_last_expression/*97*/,NULL,NULL); } else { r818fcp(C,((T0*)ms78_818)); } /*FI*/} else { r818fcp(C,((T0*)ms79_818)); } /*FI*/} else if (r818a_manifest_constant(C)) { C->_last_expression=(((T818*)C))->_last_manifest_constant/*141*/; R=1; /*IF*/if (r818skip1unless2(C,'\56','\56')) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms80_818); r818warning(r818current_position(C1),b1); }/*]*/ r818a_after_a_dot(C,0,(((T818*)C))->_last_expression/*97*/); } /*FI*/} else if (r818a_identifier(C)) { R=1; /*IF*/if (((((r818a_result(C))||(r818a_current(C)))||(r818a_void(C)))||(r818a_local_variable(C)))||(r818a_argument(C))) { r818a_r10(C,0,(((T818*)C))->_last_expression/*97*/,NULL,NULL); } else { r818a_function_call(C); } /*FI*/} /*FI*/return R; } /*No:EIFFEL_PARSER.last_prefix*/ void r818a_r10(T818* C,int a1,T0* a2,T0* a3,T0* a4){ /*IF*/if (r818skip1unless2(C,'\56','\56')) { r818a_after_a_dot(C,a1,r818to_call(a2,a3,a4)); } else { /*IF*/if (a1) { C->_last_instruction=r818to_proc_call(C,a2,a3,a4); C->_last_expression=NULL; } else { C->_last_expression=r818to_call(a2,a3,a4); C->_last_instruction=NULL; } /*FI*/} /*FI*/} void r818skip_comments(T818* C){ int _state=0; T0* _sp=NULL; while (!((_state)==(2))) { {int z1=_state; if((0==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((9<=z2)&&(z2<=10))||(32==z2)){ r818next_char(C); } else if((45==z2)){ r818next_char(C); _state=1; } else{_state=2; }} } else {{int z2=(((T818*)C))->_cc/*24*/; if((45==z2)){ /*IF*/if ((((T818*)C))->_drop_comments/*4*/) { } else { /*IF*/if (((((T818*)C))->_last_comments/*25*/)==((void*)(NULL))) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_line/*16*/,((((T818*)C))->_column/*12*/)-(1)); _sp=(T0*)n; } } /*FI*/} /*FI*/r818next_char(C); /*[IRF3.3clear*/((((T7*)(((T7*)(oBC818lcs)))))->_count)=(0); /*]*/ while (!(((((T818*)C))->_cc/*24*/)==('\n'))) { r7extend(((T7*)(oBC818lcs)),(((T818*)C))->_cc/*24*/); r818next_char(C); } /*IF*/if ((((T818*)C))->_drop_comments/*4*/) { } else { /*IF*/if (((((T818*)C))->_last_comments/*25*/)==((void*)(NULL))) { {T393*n=malloc(sizeof(*n)); *n=M393; r393make(n,_sp,se_ma52(1,r7twin(((T7*)(oBC818lcs))))); C->_last_comments=(T0*)n; } } else { /*[IRF3.5add_last*/r52add_last(((T52*)((((T393*)((T393*)((((T818*)C))->_last_comments/*25*/))))->_list/*4*/)),r7twin(((T7*)(oBC818lcs)))); /*]*/ } /*FI*/} /*FI*/_state=0; } else{r818prev_char(C); _state=2; }} }} } } /*No:EIFFEL_PARSER.last_class_type*/ /*No:EIFFEL_PARSER.us_array*/ /*No:EIFFEL_PARSER.fz_c_withoutcurrent*/ T0* r818to_proc_call(T818* C,T0* a1,T0* a2,T0* a3){ T0* R=NULL; /*IF*/if ((a2)==((void*)(NULL))) { r818fcp(C,((T0*)ms135_818)); } else if ((a3)==((void*)(NULL))) { {T268*n=malloc(sizeof(*n)); *n=M268; r268make(n,a1,a2); R=(T0*)n; } } else if ((r431count(((T431*)a3)))==(1)) { {T317*n=malloc(sizeof(*n)); *n=M317; r317make(n,a1,a2,a3); R=(T0*)n; } } else { {T568*n=malloc(sizeof(*n)); *n=M568; r568make(n,a1,a2,a3); R=(T0*)n; } } /*FI*/return R; } int r818a_tag_mark(T818* C){ int R=0; /*IF*/if (r818a_identifier(C)) { /*IF*/if (r818skip1unless2(C,'\72','\75')) { R=1; C->_last_tag_mark=r511to_tag_name(((T511*)(oBC818tmp_name))); } else { C->_last_tag_mark=NULL; r818go_back_at(C,(((T511*)((T511*)(oBC818tmp_name))))->_li/*8*/,(((T511*)((T511*)(oBC818tmp_name))))->_co/*4*/); } /*FI*/} else { C->_last_tag_mark=NULL; } /*FI*/return R; } /*No:EIFFEL_PARSER.nb_errors*/ /*No:EIFFEL_PARSER.start_line*/ void r818a_index_list(T818* C){ while (!(!(r818a_index_clause(C)))) { C->_ok=r818skip1(C,'\73'); } } /*No:EIFFEL_PARSER.last_real_constant*/ T0* r818a_external(T818* C){ T0* R=NULL; T0* _l=NULL; /*IF*/if (((((T818*)C))->_cc/*24*/)!=('\42')) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms157_818); r818warning(r818current_position(C1),b1); }/*]*/ } else { C->_ok=r818skip1(C,'\42'); } /*FI*//*IF*/if (r818a_keyword(C,((T0*)ms121_470))) { {T85*n=malloc(sizeof(*n)); *n=M85; _l=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms98_470))) { {T893*n=malloc(sizeof(*n)); *n=M893; _l=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms90_470))) { {T240*n=malloc(sizeof(*n)); *n=M240; _l=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms99_470))) { {T320*n=malloc(sizeof(*n)); *n=M320; _l=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms91_470))) { {T680*n=malloc(sizeof(*n)); *n=M680; _l=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms81_818))) { {T85*n=malloc(sizeof(*n)); *n=M85; _l=(T0*)n; } r818wcpefnc(C,((T0*)ms82_818),((T0*)ms121_470)); } else if (r818a_keyword(C,((T0*)ms83_818))) { {T893*n=malloc(sizeof(*n)); *n=M893; _l=(T0*)n; } r818wcpefnc(C,((T0*)ms84_818),((T0*)ms98_470)); } else if (r818a_keyword(C,((T0*)ms85_818))) { {T240*n=malloc(sizeof(*n)); *n=M240; _l=(T0*)n; } r818wcpefnc(C,((T0*)ms86_818),((T0*)ms90_470)); } else if (r818a_keyword(C,((T0*)ms87_818))) { {T320*n=malloc(sizeof(*n)); *n=M320; _l=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms88_818))) { {T680*n=malloc(sizeof(*n)); *n=M680; _l=(T0*)n; } r818wcpefnc(C,((T0*)ms89_818),((T0*)ms91_470)); } else if (r818a_keyword(C,((T0*)ms28_470))) { {T300*n=malloc(sizeof(*n)); *n=M300; _l=(T0*)n; } } else if (r818a_keyword(C,((T0*)ms29_470))) { {T970*n=malloc(sizeof(*n)); *n=M970; _l=(T0*)n; } } else { r818fcp(C,((T0*)ms90_818)); } /*FI*//*IF*/if (((((T818*)C))->_cc/*24*/)!=('\42')) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms157_818); r818warning(r818current_position(C1),b1); }/*]*/ } else { C->_ok=r818skip1(C,'\42'); } /*FI*/R=r505to_external_routine(((T505*)(oBC818tmp_feature)),_l,r818a_alias(C)); return R; } /*No:EIFFEL_PARSER.show_nb_errors*/ int r818a_class_type(T818* C){ int R=0; T0* _generic_list=NULL; T0* _base_class_name=NULL; int _state=0; /*IF*/if (r818a_base_type(C)) { C->_last_class_type=(((T818*)C))->_last_base_type/*69*/; R=1; } else if (r818a_base_class_name(C)) { R=1; _base_class_name=(((T818*)C))->_last_class_name/*89*/; while (!((_state)>(2))) { {int z1=_state; if((0==z1)){ /*IF*/if (r818skip1(C,'\133')) { _state=1; } else { {T657*n=malloc(sizeof(*n)); *n=M657; /*[IRF3.3make*/((((T657*)(n)))->_base_class_name)=(_base_class_name); /*]*/ C->_last_class_type=(T0*)n; } _state=3; } /*FI*/} else if((1==z1)){ /*IF*/if (r818a_type(C)) { /*IF*/if ((_generic_list)==((void*)(NULL))) { _generic_list=se_ma701(1,(((T818*)C))->_last_type/*157*/); } else { r701add_last(((T701*)_generic_list),(((T818*)C))->_last_type/*157*/); } /*FI*/_state=2; } else if (((((T818*)C))->_cc/*24*/)==('\54')) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms150_818); r818warning(r818current_position(C1),b1); }/*]*/ C->_ok=r818skip1(C,'\54'); } else if (((((T818*)C))->_cc/*24*/)==('\135')) { _state=2; } else { r818fcp(C,((T0*)ms156_818)); _state=2; } /*FI*/} else{/*IF*/if (r818skip1(C,'\54')) { _state=1; } else if (((((T818*)C))->_cc/*24*/)==('\135')) { /*IF*/if ((_generic_list)==((void*)(NULL))) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms54_818); r818warning(r818current_position(C1),b1); }/*]*/ {T657*n=malloc(sizeof(*n)); *n=M657; /*[IRF3.3make*/((((T657*)(n)))->_base_class_name)=(_base_class_name); /*]*/ C->_last_class_type=(T0*)n; } } else { {T720*n=malloc(sizeof(*n)); *n=M720; r720make(n,_base_class_name,_generic_list); C->_last_class_type=(T0*)n; } } /*FI*/C->_ok=r818skip1(C,'\135'); _state=3; } else if (r818a_type(C)) { /*IF*/if ((_generic_list)==((void*)(NULL))) { _generic_list=se_ma701(1,(((T818*)C))->_last_type/*157*/); } else { r701add_last(((T701*)_generic_list),(((T818*)C))->_last_type/*157*/); } /*FI*/r818warning(X291start_position((((T818*)C))->_last_type/*157*/),((T0*)ms143_818)); } else { r818fcp(C,((T0*)ms55_818)); _state=3; } /*FI*/}} } } /*FI*/return R; } T0* r818analyse_class(T818* C,T0* a1){ T0* R=NULL; T0* _path=NULL; int _old_nbw=0; int _old_nbe=0; _path=(((T676*)((T676*)(oBC364parser_buffer))))->_path/*0*/; /*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)>(0)) { /*[IRF3.6append*/{T0* b1=((T0*)ms1_818); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ r683print_as_fatal_error(((T683*)(oBC364eh))); } /*FI*/r306put_integer(((T306*)(oBC364echo)),(/*(IRF4.9base_class_count*/(((T718*)((T718*)(oBC604base_class_dictionary))))->_count/*32*//*)*/)+(1)); r306put_character(((T306*)(oBC364echo)),'\11'); r306put_string(((T306*)(oBC364echo)),_path); r306put_character(((T306*)(oBC364echo)),'\n'); _old_nbe=/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/; _old_nbw=/*(IRF4.9nb_warnings*/(((T683*)((T683*)(oBC364eh))))->_nb_warnings/*4*//*)*/; C->_is_running=1; C->_function_type=NULL; C->_in_ensure=0; C->_last_comments=NULL; C->_ms_numbering=0; C->_line=1; C->_column=1; C->_current_line=r676item((((T818*)C))->_line/*16*/); /*IF*/if (((((T7*)((T7*)((((T818*)C))->_current_line/*20*/))))->_count/*4*/)==(0)) { C->_cc='\n'; } else { C->_cc=/*(IRF4.5first*//*(IRF4.6item*/((((T7*)((T7*)((((T818*)C))->_current_line/*20*/))))->_storage/*0*/)[(1)-(1)]/*)*//*)*/; } /*FI*/{T605*n=malloc(sizeof(*n)); *n=M605; r605make(n); C->_last_base_class=(T0*)n; } r818skip_comments(C); r818a_class_declaration(C); C->_is_running=0; /*[IRF3.3unset_is_ready*/((((T676*)(((T676*)(oBC364parser_buffer)))))->_path)=(NULL); /*]*/ R=(((T818*)C))->_last_base_class/*65*/; /*IF*/if (((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)-(_old_nbe))>(0)) { /*[IRF3.2show_nb_errors*/r818show_nb(/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/,((T0*)ms10_818)); /*]*/ r306w_put_string(((T0*)ms4_818)); r306w_put_string(_path); r306w_put_string(((T0*)ms5_818)); R=NULL; } else if (((/*(IRF4.9nb_warnings*/(((T683*)((T683*)(oBC364eh))))->_nb_warnings/*4*//*)*/)-(_old_nbw))>(0)) { /*[IRF3.2show_nb_warnings*/r818show_nb(/*(IRF4.9nb_warnings*/(((T683*)((T683*)(oBC364eh))))->_nb_warnings/*4*//*)*/,((T0*)ms9_818)); /*]*/ } /*FI*//*IF*/if ((R)!=((void*)(NULL))) { r604add_class(((T604*)(oBC364small_eiffel)),R); /*IF*/if (((a1)!=((void*)(NULL)))&&(((((T451*)((T451*)a1)))->_to_string/*0*/)!=((void*)((((T451*)((T451*)((((T605*)((T605*)R)))->_base_class_name/*24*/))))->_to_string/*0*/)))) { r683add_position((((T451*)((T451*)a1)))->_start_position/*4*/); /*[IRF3.6append*/{T0* b1=((T0*)ms135_470); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=_path; r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=((T0*)ms6_818); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=(((T451*)((T451*)a1)))->_to_string/*0*/; r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms137_470); r683fatal_error(((T683*)(oBC364eh)),b1); }/*]*/ } /*FI*/r605get_started(((T605*)R)); } /*FI*/return R; } T0*oBC364parser_buffer=NULL; T0*oBC818tmp_feature=NULL; int r818a_character_constant(T818* C){ int R=0; char _value=0; int _printing_mode=0; int _state=0; T0* _sp=NULL; /*IF*/if (((((T818*)C))->_cc/*24*/)==('\47')) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_line/*16*/,(((T818*)C))->_column/*12*/); _sp=(T0*)n; } R=1; while (!((_state)>(2))) { r818next_char(C); {int z1=_state; if((0==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if((37==z2)){ _state=1; } else if((39==z2)){ r818fcp(C,((T0*)ms148_818)); _state=2; } else{_value=(((T818*)C))->_cc/*24*/; _printing_mode=0; _state=2; }} } else if((1==z1)){ _printing_mode=1; _state=2; {int z2=(((T818*)C))->_cc/*24*/; if((65==z2)){ _value='\100'; } else if((66==z2)){ _value='\10'; } else if((67==z2)){ _value='\136'; } else if((68==z2)){ _value='\44'; } else if((70==z2)){ _value='\14'; } else if((72==z2)){ _value='\134'; } else if((76==z2)){ _value='\176'; } else if((78==z2)){ _value='\n'; } else if((81==z2)){ _value='\140'; } else if((82==z2)){ _value='\15'; } else if((83==z2)){ _value='\43'; } else if((84==z2)){ _value='\11'; } else if((85==z2)){ _value='\0'; } else if((86==z2)){ _value='\174'; } else if((37==z2)){ _value='\45'; } else if((39==z2)){ _value='\47'; } else if((34==z2)){ _value='\42'; } else if((40==z2)){ _value='\133'; } else if((41==z2)){ _value='\135'; } else if((60==z2)){ _value='\173'; } else if((62==z2)){ _value='\175'; } else if((47==z2)){ r818a_ascii_code(C); _value=((char)((((T818*)C))->_last_ascii_code/*61*/)); _printing_mode=2; } else{r818fcp(C,((T0*)ms24_818)); }} } else{_state=3; {int z2=(((T818*)C))->_cc/*24*/; if((39==z2)){ } else{r818fcp(C,((T0*)ms148_818)); }} r818next_char(C); r818skip_comments(C); }} } {T260*n=malloc(sizeof(*n)); *n=M260; r260make(n,_sp,_value,_printing_mode); C->_last_character_constant=(T0*)n; } } /*FI*/return R; } int r818a_check(T818* C){ int R=0; T0* _al=NULL; T0* _hc=NULL; T0* _sp=NULL; /*IF*/if (r818a_keyword(C,((T0*)ms4_470))) { R=1; {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } _hc=r818get_comments(C); _al=r818a_assertion(C); /*IF*/if (((_hc)!=((void*)(NULL)))||((_al)!=((void*)(NULL)))) { {T292*n=malloc(sizeof(*n)); *n=M292; r292make(n,_sp,_hc,_al); C->_last_instruction=(T0*)n; } } else { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms48_818); r818warning(r818current_position(C1),b1); }/*]*/ } /*FI*//*IF*/if (!(r818a_keyword(C,((T0*)ms12_470)))) { r818fcp(C,((T0*)ms49_818)); } /*FI*/} /*FI*/return R; } /*No:EIFFEL_PARSER.go_back*/ /*No:EIFFEL_PARSER.current_class*/ /*No:EIFFEL_PARSER.fz_export*/ /*No:EIFFEL_PARSER.fz_invariant*/ /*No:EIFFEL_PARSER.us_or_else*/ /*No:EIFFEL_PARSER.is_running*/ int r818a_result(T818* C){ int R=0; /*IF*/if (r511is_result()) { /*IF*/if (((((T818*)C))->_function_type/*29*/)==((void*)(NULL))) { r818error(r511start_position(((T511*)(oBC818tmp_name))),((T0*)ms152_818)); } /*FI*/C->_last_expression=r511to_e_result(((T511*)(oBC818tmp_name))); R=1; } /*FI*/return R; } int r818a_manifest_string(T818* C){ int R=0; int _state=0; /*IF*/if (((((T818*)C))->_cc/*24*/)==('\42')) { R=1; C->_ms_numbering=((((T818*)C))->_ms_numbering/*57*/)+(1); {T805*n=malloc(sizeof(*n)); *n=M805; r805make(n,r818pos((((T818*)C))->_line/*16*/,(((T818*)C))->_column/*12*/),(((T818*)C))->_ms_numbering/*57*/); C->_last_manifest_string=(T0*)n; } while (!((_state)>(3))) { r818next_char(C); {int z1=_state; if((0==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if((10==z2)){ r818fcp(C,((T0*)ms146_818)); } else if((34==z2)){ _state=4; } else if((37==z2)){ _state=1; } else{/*[IRF3.5add*/r7extend(((T7*)((((T805*)((T805*)((((T818*)C))->_last_manifest_string/*145*/))))->_to_string/*12*/)),(((T818*)C))->_cc/*24*/); /*]*/ }} } else if((1==z1)){ _state=0; {int z2=(((T818*)C))->_cc/*24*/; if((10==z2)){ _state=3; } else if((65==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\100'); } else if((66==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\10'); } else if((67==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\136'); } else if((68==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\44'); } else if((70==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\14'); } else if((72==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\134'); } else if((76==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\176'); } else if((78==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\n'); } else if((81==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\140'); } else if((82==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\15'); } else if((83==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\43'); } else if((84==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\11'); } else if((85==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\0'); } else if((86==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\174'); } else if((37==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\45'); } else if((39==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\47'); } else if((34==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\42'); } else if((40==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\133'); } else if((41==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\135'); } else if((60==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\173'); } else if((62==z2)){ r805add_percent(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),'\175'); } else if((47==z2)){ r818a_ascii_code(C); r805add_ascii(((T805*)((((T818*)C))->_last_manifest_string/*145*/)),((char)((((T818*)C))->_last_ascii_code/*61*/))); } else if((9==z2)||(32==z2)){ _state=2; } else{r818fcp(C,((T0*)ms26_818)); _state=0; }} } else if((2==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if((10==z2)){ _state=3; } else if((9==z2)||(32==z2)){ } else{r818fcp(C,((T0*)ms27_818)); }} } else{{int z2=(((T818*)C))->_cc/*24*/; if((9==z2)||(32==z2)){ } else if((37==z2)){ r805break_line(((T805*)((((T818*)C))->_last_manifest_string/*145*/))); _state=0; } else if((10==z2)){ r818fcp(C,((T0*)ms146_818)); _state=0; } else{r818fcp(C,((T0*)ms28_818)); _state=0; }} }} } r818next_char(C); r818skip_comments(C); } /*FI*/return R; } void r818a_function_call(T818* C){ T0* _e_current=NULL; T0* _sfn=NULL; _sfn=r511to_simple_feature_name(((T511*)(oBC818tmp_name))); {T358*n=malloc(sizeof(*n)); *n=M358; r358make(n,(((T446*)((T446*)_sfn)))->_start_position/*16*/,0); _e_current=(T0*)n; } r818a_r10(C,0,_e_current,_sfn,r818a_actuals(C)); } /*No:EIFFEL_PARSER.fz_01*/ int r818a_real_constant(T818* C){ int R=0; int _c=0; int _l=0; _l=(((T818*)C))->_line/*16*/; _c=(((T818*)C))->_column/*12*/; /*IF*/if (r818skip1(C,'\53')) { /*IF*/if (r818a_real(C)) { r627set_line_column(((T627*)((((T936*)((T936*)((((T818*)C))->_last_real_constant/*153*/))))->_start_position/*8*/)),_l,_c); R=1; } else { r818go_back_at(C,_l,_c); } /*FI*/} else if (r818skip1(C,'\55')) { /*IF*/if (r818a_real(C)) { r627set_line_column(((T627*)((((T936*)((T936*)((((T818*)C))->_last_real_constant/*153*/))))->_start_position/*8*/)),_l,_c); /*[IRF3.5unary_minus*/r7add_first(((T7*)((((T936*)((T936*)((((T818*)C))->_last_real_constant/*153*/))))->_to_string/*12*/)),'\55'); /*]*/ R=1; } else { r818go_back_at(C,_l,_c); } /*FI*/} else if (r818a_real(C)) { R=1; } /*FI*/return R; } /*No:EIFFEL_PARSER.fz_inspect*/ void r818show_nb(int a1,T0* a2){ /*IF*/if ((a1)>(0)) { r306w_put_string(((T0*)ms75_470)); r306w_put_integer(a1); r306w_put_string(a2); } /*FI*/} /*No:EIFFEL_PARSER.fz_c_withcurrent*/ /*No:EIFFEL_PARSER.fz_03*/ /*No:EIFFEL_PARSER.fz_rename*/ int r818a_identifier1(T818* C){ int R=0; int _state=0; /*IF*/if (r3is_letter((((T818*)C))->_cc/*24*/)) { r511initialize(((T511*)(oBC818tmp_name)),(((T818*)C))->_line/*16*/,(((T818*)C))->_column/*12*/); /*[IRF3.6extend*/{char b1=r3to_lower((((T818*)C))->_cc/*24*/); r7extend(((T7*)(oBC511tmp_string)),b1); }/*]*/ while (!((_state)>(0))) { r818next_char(C); {int z1=(((T818*)C))->_cc/*24*/; if(((48<=z1)&&(z1<=57))||(95==z1)||((97<=z1)&&(z1<=122))){ /*[IRF3.6extend*/{char b1=(((T818*)C))->_cc/*24*/; r7extend(((T7*)(oBC511tmp_string)),b1); }/*]*/ } else if(((65<=z1)&&(z1<=90))){ /*[IRF3.6extend*/{char b1=r3to_lower((((T818*)C))->_cc/*24*/); r7extend(((T7*)(oBC511tmp_string)),b1); }/*]*/ } else{_state=1; }} } /*IF*/if (r511isa_keyword()) { _state=/*(IRF4.9count*/(((T7*)((T7*)(oBC511tmp_string))))->_count/*4*//*)*/; while (!((_state)==(0))) { _state=(_state)-(1); r818prev_char(C); } } else { R=1; r818skip_comments(C); } /*FI*/} /*FI*/return R; } /*No:EIFFEL_PARSER.fz_once*/ /*No:EIFFEL_PARSER.ecp*/ void r818fcp(T818* C,T0* a1){ r683add_position(r818current_position(C)); /*[IRF3.6fatal_error*/{T0* b1=a1; r683fatal_error(((T683*)(oBC364eh)),b1); }/*]*/ } int r818a_conditional(T818* C){ int R=0; T0* _ifthenelse=NULL; /*IF*/if (r818a_keyword(C,((T0*)ms21_470))) { R=1; {T530*n=malloc(sizeof(*n)); *n=M530; /*[IRF3.3make*/((((T530*)(n)))->_start_position)=(r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); /*]*/ _ifthenelse=(T0*)n; } r818a_then_part_list(C,_ifthenelse); /*IF*/if (r818a_keyword(C,((T0*)ms10_470))) { /*[IRF3.3set_else_compound*/((((T530*)(((T530*)_ifthenelse))))->_else_compound)=(r818a_compound2(C,((T0*)ms60_818),((T0*)ms12_470))); /*]*/ } else { /*IF*/if (!(r818a_keyword(C,((T0*)ms12_470)))) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms61_818); r818warning(r818current_position(C1),b1); }/*]*/ } /*FI*/} /*FI*/C->_last_instruction=_ifthenelse; } /*FI*/return R; } /*No:EIFFEL_PARSER.us_real*/ void r818a_procedure_call(T818* C){ T0* _e_current=NULL; T0* _sfn=NULL; _sfn=r511to_simple_feature_name(((T511*)(oBC818tmp_name))); {T358*n=malloc(sizeof(*n)); *n=M358; r358make(n,(((T446*)((T446*)_sfn)))->_start_position/*16*/,0); _e_current=(T0*)n; } r818a_r10(C,1,_e_current,_sfn,r818a_actuals(C)); } /*No:EIFFEL_PARSER.us_implies*/ T0*oBC818tmp_string=NULL; int r818a_integer(T818* C){ int R=0; int _value=0; int _state=0; /*IF*/if (r3is_digit((((T818*)C))->_cc/*24*/)) { R=1; C->_start_line=(((T818*)C))->_line/*16*/; C->_start_column=(((T818*)C))->_column/*12*/; _value=r3value((((T818*)C))->_cc/*24*/); while (!((_state)>(7))) { r818next_char(C); {int z1=_state; if((0==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ _value=((_value)*(10))+(r3value((((T818*)C))->_cc/*24*/)); _state=1; } else if((95==z2)){ _state=4; } else{_state=8; }} } else if((1==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ _value=((_value)*(10))+(r3value((((T818*)C))->_cc/*24*/)); _state=2; } else if((95==z2)){ _state=4; } else{_state=8; }} } else if((2==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ _value=((_value)*(10))+(r3value((((T818*)C))->_cc/*24*/)); _state=3; } else if((95==z2)){ _state=4; } else{_state=8; }} } else if((3==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ _value=((_value)*(10))+(r3value((((T818*)C))->_cc/*24*/)); } else if((95==z2)){ r818fcp(C,((T0*)ms147_818)); } else{_state=8; }} } else if((4==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ _value=((_value)*(10))+(r3value((((T818*)C))->_cc/*24*/)); _state=5; } else{r818fcp(C,((T0*)ms147_818)); }} } else if((5==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ _value=((_value)*(10))+(r3value((((T818*)C))->_cc/*24*/)); _state=6; } else{r818fcp(C,((T0*)ms147_818)); }} } else if((6==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ _value=((_value)*(10))+(r3value((((T818*)C))->_cc/*24*/)); _state=7; } else{r818fcp(C,((T0*)ms147_818)); }} } else {{int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ r818fcp(C,((T0*)ms147_818)); } else if((95==z2)){ _state=4; } else{_state=8; }} }} } /*IF*/if (r3is_letter((((T818*)C))->_cc/*24*/)) { r818fcp(C,((T0*)ms158_818)); } /*FI*/r818skip_comments(C); {T342*n=malloc(sizeof(*n)); *n=M342; r342make(n,_value,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); C->_last_integer_constant=(T0*)n; } } /*FI*/return R; } /*No:EIFFEL_PARSER.last_binary*/ int r818a_identifier2(T818* C){ int R=0; int _do_warning=0; int _state=0; /*IF*/if (r3is_letter((((T818*)C))->_cc/*24*/)) { r511initialize(((T511*)(oBC818tmp_name)),(((T818*)C))->_line/*16*/,(((T818*)C))->_column/*12*/); /*[IRF3.6extend*/{char b1=(((T818*)C))->_cc/*24*/; r7extend(((T7*)(oBC511tmp_string)),b1); }/*]*/ while (!((_state)>(0))) { r818next_char(C); {int z1=(((T818*)C))->_cc/*24*/; if(((48<=z1)&&(z1<=57))||(95==z1)||((97<=z1)&&(z1<=122))){ /*[IRF3.6extend*/{char b1=(((T818*)C))->_cc/*24*/; r7extend(((T7*)(oBC511tmp_string)),b1); }/*]*/ } else if(((65<=z1)&&(z1<=90))){ _do_warning=1; /*[IRF3.6extend*/{char b1=(((T818*)C))->_cc/*24*/; r7extend(((T7*)(oBC511tmp_string)),b1); }/*]*/ } else{_state=1; }} } /*IF*/if (r511isa_keyword()) { _state=/*(IRF4.9count*/(((T7*)((T7*)(oBC511tmp_string))))->_count/*4*//*)*/; while (!((_state)==(0))) { _state=(_state)-(1); r818prev_char(C); } } else { R=1; r818skip_comments(C); /*IF*/if (_do_warning) { r818warning(r511start_position(((T511*)(oBC818tmp_name))),((T0*)ms159_818)); } /*FI*/} /*FI*/} /*FI*/return R; } /*No:EIFFEL_PARSER.us_minus*/ /*No:EIFFEL_PARSER.fz_elseif*/ T0*oBC818lcs=NULL; /*No:EIFFEL_PARSER.end_of_text*/ void r818prev_char(T818* C){ /*IF*/if (((((T818*)C))->_column/*12*/)>(1)) { C->_column=((((T818*)C))->_column/*12*/)-(1); C->_cc=/*(IRF4.6item*/((((T7*)((T7*)((((T818*)C))->_current_line/*20*/))))->_storage/*0*/)[((((T818*)C))->_column/*12*/)-(1)]/*)*/; } else { /*IF*/if (((((T818*)C))->_line/*16*/)>(1)) { C->_line=((((T818*)C))->_line/*16*/)-(1); C->_current_line=r676item((((T818*)C))->_line/*16*/); C->_column=((((T7*)((T7*)((((T818*)C))->_current_line/*20*/))))->_count/*4*/)+(1); C->_cc='\n'; } else { C->_column=0; C->_cc='\0'; } /*FI*/} /*FI*/} void r818a_indexing(T818* C){ /*IF*/if (r818a_keyword(C,((T0*)ms22_470))) { r818a_index_list(C); } /*FI*/} void r818next_char(T818* C){ /*IF*/if (((((T818*)C))->_column/*12*/)<((((T7*)((T7*)((((T818*)C))->_current_line/*20*/))))->_count/*4*/)) { C->_column=((((T818*)C))->_column/*12*/)+(1); C->_cc=/*(IRF4.6item*/((((T7*)((T7*)((((T818*)C))->_current_line/*20*/))))->_storage/*0*/)[((((T818*)C))->_column/*12*/)-(1)]/*)*/; } else if (((((T818*)C))->_column/*12*/)==((((T7*)((T7*)((((T818*)C))->_current_line/*20*/))))->_count/*4*/)) { C->_column=((((T818*)C))->_column/*12*/)+(1); C->_cc='\n'; } else if (((((T818*)C))->_line/*16*/)==((((T676*)((T676*)(oBC364parser_buffer))))->_count/*4*/)) { C->_cc='\0'; } else { C->_column=1; C->_line=((((T818*)C))->_line/*16*/)+(1); C->_current_line=r676item((((T818*)C))->_line/*16*/); /*IF*/if (((((T7*)((T7*)((((T818*)C))->_current_line/*20*/))))->_count/*4*/)==(0)) { C->_cc='\n'; } else { C->_cc=/*(IRF4.5first*//*(IRF4.6item*/((((T7*)((T7*)((((T818*)C))->_current_line/*20*/))))->_storage/*0*/)[(1)-(1)]/*)*//*)*/; } /*FI*/} /*FI*/} /*No:EIFFEL_PARSER.fz_redefine*/ T0* r818pos(int a1,int a2){ T0* R=NULL; {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,a1,a2); R=(T0*)n; } return R; } /*No:EIFFEL_PARSER.fz_variant*/ /*No:EIFFEL_PARSER.wcp*/ int r818a_base_class_name(T818* C){ int R=0; int _do_warning=0; int _state=0; /*IF*/if (r3is_letter((((T818*)C))->_cc/*24*/)) { /*IF*/if ((((unsigned)((((T818*)C))->_cc/*24*/))>=((unsigned)('a')))) { _do_warning=1; C->_cc=r3to_upper((((T818*)C))->_cc/*24*/); } /*FI*/r511initialize(((T511*)(oBC818tmp_name)),(((T818*)C))->_line/*16*/,(((T818*)C))->_column/*12*/); /*[IRF3.6extend*/{char b1=(((T818*)C))->_cc/*24*/; r7extend(((T7*)(oBC511tmp_string)),b1); }/*]*/ while (!((_state)>(0))) { r818next_char(C); {int z1=(((T818*)C))->_cc/*24*/; if(((48<=z1)&&(z1<=57))||((65<=z1)&&(z1<=90))||(95==z1)){ /*[IRF3.6extend*/{char b1=(((T818*)C))->_cc/*24*/; r7extend(((T7*)(oBC511tmp_string)),b1); }/*]*/ } else if(((97<=z1)&&(z1<=122))){ _do_warning=1; /*[IRF3.6extend*/{char b1=r3to_upper((((T818*)C))->_cc/*24*/); r7extend(((T7*)(oBC511tmp_string)),b1); }/*]*/ } else{_state=1; }} } /*IF*/if (r511isa_keyword()) { _state=/*(IRF4.9count*/(((T7*)((T7*)(oBC511tmp_string))))->_count/*4*//*)*/; while (!((_state)==(0))) { _state=(_state)-(1); r818prev_char(C); } } else { R=1; r818skip_comments(C); /*IF*/if (_do_warning) { r818warning(r511start_position(((T511*)(oBC818tmp_name))),((T0*)ms153_818)); } /*FI*/C->_last_class_name=r511to_class_name(((T511*)(oBC818tmp_name))); } /*FI*/} /*FI*/return R; } void r818a_formal_generic_list(T818* 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 z1=_state; if((0==z1)){ /*IF*/if (r818skip1(C,'\133')) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } _state=1; } else { _state=5; } /*FI*/} else if((1==z1)){ /*IF*/if (r818a_base_class_name(C)) { _name=(((T818*)C))->_last_class_name/*89*/; _state=2; } else { _state=6; } /*FI*/} else if((2==z1)){ /*IF*/if (r818skip2(C,'\55','\76')) { _state=4; } else if ((((((T818*)C))->_cc/*24*/)==('\54'))||(((((T818*)C))->_cc/*24*/)==('\135'))) { {T59*n=malloc(sizeof(*n)); *n=M59; r59make(n,_name,_constraint); _fga=(T0*)n; } _name=NULL; _constraint=NULL; /*IF*/if ((_list)==((void*)(NULL))) { _list=se_ma681(1,_fga); } else { r681add_last(((T681*)_list),_fga); } /*FI*/_fga=NULL; /*IF*/if (r818skip1(C,'\54')) { _state=1; } else { C->_ok=r818skip1(C,'\135'); _state=5; } /*FI*/} else { _state=6; } /*FI*/} else if((3==z1)){ /*IF*/if ((((((T818*)C))->_cc/*24*/)==('\54'))||(((((T818*)C))->_cc/*24*/)==('\135'))) { {T59*n=malloc(sizeof(*n)); *n=M59; r59make(n,_name,_constraint); _fga=(T0*)n; } _name=NULL; _constraint=NULL; /*IF*/if ((_list)==((void*)(NULL))) { _list=se_ma681(1,_fga); } else { r681add_last(((T681*)_list),_fga); } /*FI*/_fga=NULL; /*IF*/if (r818skip1(C,'\54')) { _state=1; } else { C->_ok=r818skip1(C,'\135'); _state=5; } /*FI*/} else { _state=6; } /*FI*/} else{/*IF*/if (r818a_class_type(C)) { _constraint=(((T818*)C))->_last_class_type/*93*/; _state=3; } else { r818fcp(C,((T0*)ms94_818)); _state=6; } /*FI*/}} } /*IF*/if ((_state)==(6)) { } else if (((_sp)!=((void*)(NULL)))&&((_list)==((void*)(NULL)))) { r818warning(_sp,((T0*)ms95_818)); } else if ((_sp)!=((void*)(NULL))) { {T881*n=malloc(sizeof(*n)); *n=M881; r881make(n,_sp,_list); C->_formal_generic_list=(T0*)n; } /*[IRF3.3set_formal_generic_list*/((((T605*)(((T605*)((((T818*)C))->_last_base_class/*65*/)))))->_formal_generic_list)=((((T818*)C))->_formal_generic_list/*33*/); /*]*/ } /*FI*/} int r818a_void(T818* C){ int R=0; /*IF*/if (r511is_void()) { C->_last_expression=r511to_e_void(((T511*)(oBC818tmp_name))); R=1; } /*FI*/return R; } /*No:EIFFEL_PARSER.fz_like*/ T0* r818a_assertion(T818* C){ T0* R=NULL; int _state=0; T0* _assertion=NULL; T0* _expression=NULL; T0* _tag=NULL; while (!((_state)>(3))) { {int z1=_state; if((0==z1)){ /*IF*/if (((((T818*)C))->_cc/*24*/)==('\73')) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms68_470); r818warning(r818current_position(C1),b1); }/*]*/ C->_ok=r818skip1(C,'\73'); /*IF*/if (((((T818*)C))->_last_comments/*25*/)!=((void*)(NULL))) { {T348*n=malloc(sizeof(*n)); *n=M348; r348make(n,NULL,NULL,r818get_comments(C)); _assertion=(T0*)n; } /*IF*/if ((R)==((void*)(NULL))) { R=se_ma608(1,_assertion); } else { r608add_last(((T608*)R),_assertion); } /*FI*/} /*FI*/} else if (r818a_tag_mark(C)) { _tag=(((T818*)C))->_last_tag_mark/*161*/; _state=1; } else if (r818a_expression(C)) { _expression=(((T818*)C))->_last_expression/*97*/; _state=2; } else { _state=4; } /*FI*/} else if((1==z1)){ /*IF*/if (r818skip1(C,'\73')) { {T348*n=malloc(sizeof(*n)); *n=M348; r348make(n,_tag,NULL,r818get_comments(C)); _assertion=(T0*)n; } /*IF*/if ((R)==((void*)(NULL))) { R=se_ma608(1,_assertion); } else { r608add_last(((T608*)R),_assertion); } /*FI*/_state=0; } else if (r818a_tag_mark(C)) { {T348*n=malloc(sizeof(*n)); *n=M348; r348make(n,_tag,NULL,r818get_comments(C)); _assertion=(T0*)n; } /*IF*/if ((R)==((void*)(NULL))) { R=se_ma608(1,_assertion); } else { r608add_last(((T608*)R),_assertion); } /*FI*/_tag=(((T818*)C))->_last_tag_mark/*161*/; } else if (r818a_expression(C)) { _expression=(((T818*)C))->_last_expression/*97*/; _state=3; } else { {T348*n=malloc(sizeof(*n)); *n=M348; r348make(n,_tag,NULL,r818get_comments(C)); _assertion=(T0*)n; } /*IF*/if ((R)==((void*)(NULL))) { R=se_ma608(1,_assertion); } else { r608add_last(((T608*)R),_assertion); } /*FI*/_state=4; } /*FI*/} else if((2==z1)){ /*IF*/if (r818skip1(C,'\73')) { {T348*n=malloc(sizeof(*n)); *n=M348; r348make(n,NULL,_expression,r818get_comments(C)); _assertion=(T0*)n; } /*IF*/if ((R)==((void*)(NULL))) { R=se_ma608(1,_assertion); } else { r608add_last(((T608*)R),_assertion); } /*FI*/_state=0; } else if (r818a_tag_mark(C)) { {T348*n=malloc(sizeof(*n)); *n=M348; r348make(n,NULL,_expression,r818get_comments(C)); _assertion=(T0*)n; } /*IF*/if ((R)==((void*)(NULL))) { R=se_ma608(1,_assertion); } else { r608add_last(((T608*)R),_assertion); } /*FI*/_tag=(((T818*)C))->_last_tag_mark/*161*/; _state=1; } else if (r818a_expression(C)) { {T348*n=malloc(sizeof(*n)); *n=M348; r348make(n,NULL,_expression,r818get_comments(C)); _assertion=(T0*)n; } /*IF*/if ((R)==((void*)(NULL))) { R=se_ma608(1,_assertion); } else { r608add_last(((T608*)R),_assertion); } /*FI*/_expression=(((T818*)C))->_last_expression/*97*/; _state=2; } else { {T348*n=malloc(sizeof(*n)); *n=M348; r348make(n,NULL,_expression,r818get_comments(C)); _assertion=(T0*)n; } /*IF*/if ((R)==((void*)(NULL))) { R=se_ma608(1,_assertion); } else { r608add_last(((T608*)R),_assertion); } /*FI*/_state=4; } /*FI*/} else{/*IF*/if (r818skip1(C,'\73')) { {T348*n=malloc(sizeof(*n)); *n=M348; r348make(n,_tag,_expression,r818get_comments(C)); _assertion=(T0*)n; } /*IF*/if ((R)==((void*)(NULL))) { R=se_ma608(1,_assertion); } else { r608add_last(((T608*)R),_assertion); } /*FI*/_state=0; } else if (r818a_tag_mark(C)) { {T348*n=malloc(sizeof(*n)); *n=M348; r348make(n,_tag,_expression,r818get_comments(C)); _assertion=(T0*)n; } /*IF*/if ((R)==((void*)(NULL))) { R=se_ma608(1,_assertion); } else { r608add_last(((T608*)R),_assertion); } /*FI*/_tag=(((T818*)C))->_last_tag_mark/*161*/; _state=1; } else if (r818a_expression(C)) { {T348*n=malloc(sizeof(*n)); *n=M348; r348make(n,_tag,_expression,r818get_comments(C)); _assertion=(T0*)n; } /*IF*/if ((R)==((void*)(NULL))) { R=se_ma608(1,_assertion); } else { r608add_last(((T608*)R),_assertion); } /*FI*/_expression=(((T818*)C))->_last_expression/*97*/; _state=2; } else { {T348*n=malloc(sizeof(*n)); *n=M348; r348make(n,_tag,_expression,r818get_comments(C)); _assertion=(T0*)n; } /*IF*/if ((R)==((void*)(NULL))) { R=se_ma608(1,_assertion); } else { r608add_last(((T608*)R),_assertion); } /*FI*/_state=4; } /*FI*/}} } return R; } void r818wcpefnc(T818* C,T0* a1,T0* a2){ /*[IRF3.6append*/{T0* b1=((T0*)ms136_818); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=a1; r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=((T0*)ms137_818); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=a2; r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms138_818); r818warning(r818current_position(C1),b1); }/*]*/ } /*No:EIFFEL_PARSER.us_double*/ T0* r818a_alias(T818* C){ T0* R=NULL; /*IF*/if (r818a_keyword(C,((T0*)ms1_470))) { /*IF*/if (r818a_manifest_string(C)) { R=(((T805*)((T805*)((((T818*)C))->_last_manifest_string/*145*/))))->_to_string/*12*/; } else { r818fcp(C,((T0*)ms91_818)); } /*FI*/} /*FI*/return R; } int r818a_debug(T818* C){ int R=0; T0* _e_debug=NULL; T0* _list=NULL; T0* _sp=NULL; /*IF*/if (r818a_keyword(C,((T0*)ms7_470))) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818skip1(C,'\50')) { while (!(!(r818a_manifest_string(C)))) { /*IF*/if ((_list)==((void*)(NULL))) { _list=se_ma381(1,(((T818*)C))->_last_manifest_string/*145*/); } else { r381add_last(((T381*)_list),(((T818*)C))->_last_manifest_string/*145*/); } /*FI*/C->_ok=r818skip1(C,'\54'); } /*IF*/if ((_list)==((void*)(NULL))) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms69_818); r818warning(r818current_position(C1),b1); }/*]*/ } /*FI*//*IF*/if (!(r818skip1(C,'\51'))) { r818fcp(C,((T0*)ms70_818)); } /*FI*/} /*FI*/R=1; {T347*n=malloc(sizeof(*n)); *n=M347; r347make(n,_sp,_list,r818a_compound2(C,((T0*)ms71_818),((T0*)ms12_470))); _e_debug=(T0*)n; } C->_last_instruction=_e_debug; } /*FI*/return R; } int r818a_real(T818* C){ int R=0; int _c=0; int _l=0; int _state=0; /*IF*/if ((r3is_digit((((T818*)C))->_cc/*24*/))||(((((T818*)C))->_cc/*24*/)==('\56'))) { _l=(((T818*)C))->_line/*16*/; _c=(((T818*)C))->_column/*12*/; /*[IRF3.3clear*/((((T7*)(((T7*)(oBC818tmp_string)))))->_count)=(0); /*]*/ /*IF*/if (((((T818*)C))->_cc/*24*/)==('\56')) { r7append(((T7*)(oBC818tmp_string)),((T0*)ms185_470)); _state=5; } else { r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/); } /*FI*/while (!((_state)>(11))) { r818next_char(C); {int z1=_state; if((0==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/); } else if((46==z2)){ r7extend(((T7*)(oBC818tmp_string)),'\56'); _state=4; } else{_state=13; }} } else if((1==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/); _state=2; } else{r818fcp(C,((T0*)ms147_818)); }} } else if((2==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/); _state=3; } else{r818fcp(C,((T0*)ms147_818)); }} } else if((3==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/); _state=0; } else{r818fcp(C,((T0*)ms147_818)); }} } else if((4==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/); _state=6; } else if((69==z2)||(101==z2)){ r7extend(((T7*)(oBC818tmp_string)),'E'); _state=10; } else{_state=12; }} } else if((5==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/); _state=6; } else{_state=13; }} } else if((6==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/); } else if((69==z2)||(101==z2)){ r7extend(((T7*)(oBC818tmp_string)),'E'); _state=10; } else if((95==z2)){ _state=7; } else{_state=12; }} } else if((7==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/); _state=8; } else{r818fcp(C,((T0*)ms139_818)); }} } else if((8==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/); _state=9; } else{r818fcp(C,((T0*)ms139_818)); }} } else if((9==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/); _state=6; } else{r818fcp(C,((T0*)ms139_818)); }} } else if((10==z1)){ {int z2=(((T818*)C))->_cc/*24*/; if((43==z2)){ _state=11; } else if((45==z2)){ r7extend(((T7*)(oBC818tmp_string)),'\55'); _state=11; } else if(((48<=z2)&&(z2<=57))){ r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/); _state=11; } else{r818fcp(C,((T0*)ms29_818)); _state=13; }} } else{{int z2=(((T818*)C))->_cc/*24*/; if(((48<=z2)&&(z2<=57))){ r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/); } else{_state=12; }} }} } /*IF*/if ((_state)==(12)) { {T936*n=malloc(sizeof(*n)); *n=M936; r936make(n,r818pos(_l,_c),r7twin(((T7*)(oBC818tmp_string)))); C->_last_real_constant=(T0*)n; } R=1; r818skip_comments(C); } else { r818go_back_at(C,_l,_c); } /*FI*/} /*FI*/return R; } void r818a_redefine_list(T818* C){ /*IF*/if (r818a_feature_list(C)) { r877set_redefine(((T877*)((((T818*)C))->_last_parent/*149*/)),(((T818*)C))->_last_feature_list/*105*/); } /*FI*/} /*No:EIFFEL_PARSER.fz_undefine*/ void r818a_local_var_list(T818* C,T0* a1){ int _state=0; int _rank=0; T0* _list=NULL; T0* _declaration=NULL; T0* _name_list=NULL; T0* _name=NULL; while (!((_state)>(4))) { {int z1=_state; if((0==z1)){ /*IF*/if (r818a_identifier(C)) { _name=r511to_local_name1(((T511*)(oBC818tmp_name))); _state=1; /*IF*/if (((((T818*)C))->_arguments/*45*/)!=((void*)(NULL))) { _rank=r31rank_of(((T31*)((((T818*)C))->_arguments/*45*/)),(((T39*)((T39*)_name)))->_to_string/*8*/); /*IF*/if ((_rank)>(0)) { r683add_position((((T39*)((T39*)_name)))->_start_position/*12*/); r683add_position((((T873*)((T873*)(/*(IRF4.6name*/r65item(((T65*)((((T31*)((T31*)((((T818*)C))->_arguments/*45*/))))->_flat_list/*12*/)),_rank)/*)*/))))->_start_position/*12*/); r683error(((T683*)(oBC364eh)),((T0*)ms16_818)); } /*FI*/} /*FI*/} else if ((((((T818*)C))->_cc/*24*/)==('\54'))||(((((T818*)C))->_cc/*24*/)==('\73'))) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms151_818); r818warning(r818current_position(C1),b1); }/*]*/ C->_ok=(r818skip1(C,'\54'))||(r818skip1(C,'\73')); } else { _state=5; } /*FI*/} else if((1==z1)){ /*IF*/if (r818skip1(C,'\72')) { /*IF*/if ((_name_list)!=((void*)(NULL))) { r733add_last(((T733*)_name_list),_name); _name=NULL; } /*FI*/_state=3; } else { /*IF*/if (((((T818*)C))->_cc/*24*/)==('\73')) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms17_818); r818warning(r818current_position(C1),b1); }/*]*/ C->_ok=r818skip1(C,'\73'); } else { C->_ok=r818skip1(C,'\54'); } /*FI*//*IF*/if ((_name_list)==((void*)(NULL))) { _name_list=se_ma733(1,_name); } else { r733add_last(((T733*)_name_list),_name); } /*FI*/_name=NULL; _state=2; } /*FI*/} else if((2==z1)){ /*IF*/if (r818a_identifier(C)) { _name=r511to_local_name1(((T511*)(oBC818tmp_name))); _state=1; /*IF*/if (((((T818*)C))->_arguments/*45*/)!=((void*)(NULL))) { _rank=r31rank_of(((T31*)((((T818*)C))->_arguments/*45*/)),(((T39*)((T39*)_name)))->_to_string/*8*/); /*IF*/if ((_rank)>(0)) { r683add_position((((T39*)((T39*)_name)))->_start_position/*12*/); r683add_position((((T873*)((T873*)(/*(IRF4.6name*/r65item(((T65*)((((T31*)((T31*)((((T818*)C))->_arguments/*45*/))))->_flat_list/*12*/)),_rank)/*)*/))))->_start_position/*12*/); r683error(((T683*)(oBC364eh)),((T0*)ms18_818)); } /*FI*/} /*FI*/} else if ((((((T818*)C))->_cc/*24*/)==('\54'))||(((((T818*)C))->_cc/*24*/)==('\73'))) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms151_818); r818warning(r818current_position(C1),b1); }/*]*/ C->_ok=(r818skip1(C,'\54'))||(r818skip1(C,'\73')); } else { _state=6; } /*FI*/} else if((3==z1)){ /*IF*/if (r818a_type(C)) { /*IF*/if ((_name_list)!=((void*)(NULL))) { {T64*n=malloc(sizeof(*n)); *n=M64; r64make(n,_name_list,(((T818*)C))->_last_type/*157*/); _declaration=(T0*)n; } _name_list=NULL; } else { {T723*n=malloc(sizeof(*n)); *n=M723; r723make(n,_name,(((T818*)C))->_last_type/*157*/); _declaration=(T0*)n; } _name=NULL; } /*FI*//*IF*/if ((_list)==((void*)(NULL))) { _list=se_ma382(1,_declaration); } else { r382add_last(((T382*)_list),_declaration); } /*FI*/_state=4; } else { _state=6; } /*FI*/} else{/*IF*/if (((((T818*)C))->_cc/*24*/)==('\54')) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms19_818); r818warning(r818current_position(C1),b1); }/*]*/ C->_ok=r818skip1(C,'\54'); _state=0; } else { C->_ok=r818skip1(C,'\73'); _state=0; } /*FI*/}} } /*IF*/if ((_state)==(6)) { r818fcp(C,((T0*)ms20_818)); } else if ((_list)!=((void*)(NULL))) { {T620*n=malloc(sizeof(*n)); *n=M620; r620make(n,a1,_list); C->_local_vars=(T0*)n; } /*[IRF3.3set_local_vars*/((((T505*)(((T505*)(oBC818tmp_feature)))))->_local_vars)=((((T818*)C))->_local_vars/*49*/); /*]*/ } /*FI*/} /*No:EIFFEL_PARSER.fz_59*/ /*No:EIFFEL_PARSER.fz_desc*/ void r818a_rename_list(T818* C){ while (!(!(r818a_rename_pair(C)))) { C->_ok=r818skip1(C,'\54'); } } int r818a_argument(T818* C){ int R=0; int _rank=0; /*IF*/if (((((T818*)C))->_arguments/*45*/)!=((void*)(NULL))) { _rank=r31rank_of(((T31*)((((T818*)C))->_arguments/*45*/)),r511to_string(((T511*)(oBC818tmp_name)))); /*IF*/if ((_rank)>(0)) { C->_last_expression=r511to_argument_name2(((T511*)(oBC818tmp_name)),(((T818*)C))->_arguments/*45*/,_rank); R=1; } /*FI*/} /*FI*/return R; } /*No:EIFFEL_PARSER.fz_local*/ /*No:EIFFEL_PARSER.formal_generic_list*/ T0* r818to_call(T0* a1,T0* a2,T0* a3){ T0* R=NULL; /*IF*/if ((a2)==((void*)(NULL))) { R=a1; } else if ((a3)==((void*)(NULL))) { {T487*n=malloc(sizeof(*n)); *n=M487; r487make(n,a1,a2); R=(T0*)n; } } else if ((r431count(((T431*)a3)))==(1)) { {T492*n=malloc(sizeof(*n)); *n=M492; r492make(n,a1,a2,a3); R=(T0*)n; } } else { {T915*n=malloc(sizeof(*n)); *n=M915; r915make(n,a1,a2,a3); R=(T0*)n; } } /*FI*/return R; } /*No:EIFFEL_PARSER.fz_require*/ /*No:EIFFEL_PARSER.fz_then*/ /*No:EIFFEL_PARSER.fz_when*/ /*No:EIFFEL_PARSER.fz_error_stars*/ void r818a_undefine_list(T818* C){ /*IF*/if (r818a_feature_list(C)) { r877set_undefine(((T877*)((((T818*)C))->_last_parent/*149*/)),(((T818*)C))->_last_feature_list/*105*/); } /*FI*/} /*No:EIFFEL_PARSER.current_line*/ /*No:EIFFEL_PARSER.fatal_error*/ /*No:EIFFEL_PARSER.us_native_array*/ void r818a_after_a_dot(T818* C,int a1,T0* a2){ T0* _eal=NULL; T0* _sfn=NULL; /*IF*/if (r818a_identifier(C)) { /*IF*/if (((r818a_result(C))||(r818a_void(C)))||(r818a_current(C))) { r683add_position(X662start_position((((T818*)C))->_last_expression/*97*/)); r683error(((T683*)(oBC364eh)),((T0*)ms33_818)); } /*FI*/_sfn=r511to_simple_feature_name(((T511*)(oBC818tmp_name))); _eal=r818a_actuals(C); r818a_r10(C,a1,a2,_sfn,_eal); } else { r818fcp(C,((T0*)ms34_818)); } /*FI*/} int r818a_constant(T818* C){ int R=0; T0* _sfn=NULL; T0* _e_current=NULL; /*IF*/if (r818a_identifier(C)) { R=1; _sfn=r511to_simple_feature_name(((T511*)(oBC818tmp_name))); {T358*n=malloc(sizeof(*n)); *n=M358; r358make(n,(((T446*)((T446*)_sfn)))->_start_position/*16*/,0); _e_current=(T0*)n; } {T487*n=malloc(sizeof(*n)); *n=M487; r487make(n,_e_current,_sfn); C->_last_expression=(T0*)n; } } else if (r818a_character_constant(C)) { R=1; C->_last_expression=(((T818*)C))->_last_character_constant/*85*/; } else if (r818a_integer_constant(C)) { R=1; C->_last_expression=(((T818*)C))->_last_integer_constant/*129*/; } /*FI*/return R; } /*No:EIFFEL_PARSER.last_bit_constant*/ /*No:EIFFEL_PARSER.fz_check*/ T0* r818a_routine_body(T818* C){ T0* R=NULL; /*IF*/if (r818a_keyword(C,((T0*)ms8_470))) { r605set_is_deferred(((T605*)((((T818*)C))->_last_base_class/*65*/))); R=r505to_deferred_routine(((T505*)(oBC818tmp_feature))); } else if (r818a_keyword(C,((T0*)ms16_470))) { R=r818a_external(C); } else if (r818a_keyword(C,((T0*)ms9_470))) { /*[IRF3.3set_routine_body*/((((T505*)(((T505*)(oBC818tmp_feature)))))->_routine_body)=(r818a_compound1(C,((T0*)ms116_818))); /*]*/ R=r505to_procedure_or_function(((T505*)(oBC818tmp_feature))); } else if (r818a_keyword(C,((T0*)ms35_470))) { /*[IRF3.3set_routine_body*/((((T505*)(((T505*)(oBC818tmp_feature)))))->_routine_body)=(r818a_compound1(C,((T0*)ms117_818))); /*]*/ R=r505to_once_routine(((T505*)(oBC818tmp_feature))); } else { r818fcp(C,((T0*)ms118_818)); } /*FI*/return R; } int r818a_type(T818* C){ int R=0; T0* _argument_name2=NULL; T0* _sp=NULL; R=1; /*IF*/if (r818a_keyword(C,((T0*)ms30_470))) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_identifier(C)) { /*IF*/if (r818a_current(C)) { {T958*n=malloc(sizeof(*n)); *n=M958; r958make(n,_sp,(((T818*)C))->_last_expression/*97*/); C->_last_type=(T0*)n; } } else if (r818a_argument(C)) { _argument_name2=(((T818*)C))->_last_expression/*97*/; if(NULL!=(_argument_name2))switch(((T0*)_argument_name2)->id) { case 886: break; default: _argument_name2=NULL; };{T239*n=malloc(sizeof(*n)); *n=M239; r239make(n,_sp,_argument_name2); C->_last_type=(T0*)n; } } else { {T648*n=malloc(sizeof(*n)); *n=M648; r648make(n,_sp,r511to_simple_feature_name(((T511*)(oBC818tmp_name)))); C->_last_type=(T0*)n; } } /*FI*/} else { r818fcp(C,((T0*)ms129_818)); } /*FI*/} else if (r818a_keyword(C,((T0*)ms14_470))) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_class_type(C)) { {T523*n=malloc(sizeof(*n)); *n=M523; r523make(n,_sp,(((T818*)C))->_last_class_type/*93*/); C->_last_type=(T0*)n; } } else { r818fcp(C,((T0*)ms130_818)); } /*FI*/} else if (r818a_keyword(C,((T0*)ms3_473))) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_integer(C)) { {T549*n=malloc(sizeof(*n)); *n=M549; r549make(n,_sp,(((T818*)C))->_last_integer_constant/*129*/); C->_last_type=(T0*)n; } } else if (r818a_identifier(C)) { {T558*n=malloc(sizeof(*n)); *n=M558; r558make(n,_sp,r511to_simple_feature_name(((T511*)(oBC818tmp_name)))); C->_last_type=(T0*)n; } } else { r818fcp(C,((T0*)ms131_818)); } /*FI*/} else if (r818a_type_formal_generic(C)) { C->_last_type=(((T818*)C))->_last_type_formal_generic/*117*/; } else if (r818a_class_type(C)) { C->_last_type=(((T818*)C))->_last_class_type/*93*/; } else { R=0; } /*FI*/return R; } /*No:EIFFEL_PARSER.last_manifest_constant*/ int r818a_inspect(T818* C){ int R=0; T0* _ec=NULL; T0* _i=NULL; T0* _spec=NULL; T0* _sp=NULL; /*IF*/if (r818a_keyword(C,((T0*)ms25_470))) { R=1; {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_expression(C)) { C->_last_expression=X662add_comment((((T818*)C))->_last_expression/*97*/,r818get_comments(C)); } else { r818fcp(C,((T0*)ms99_818)); } /*FI*/{T270*n=malloc(sizeof(*n)); *n=M270; r270make(n,_sp,(((T818*)C))->_last_expression/*97*/); _i=(T0*)n; } while (!(!(r818a_when_part(C,_i)))) { } /*IF*/if (r818a_keyword(C,((T0*)ms10_470))) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _spec=(T0*)n; } _ec=r818a_compound2(C,((T0*)ms100_818),((T0*)ms12_470)); r270set_else_compound(((T270*)_i),_spec,_ec); } else if (!(r818a_keyword(C,((T0*)ms12_470)))) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms101_818); r818warning(r818current_position(C1),b1); }/*]*/ } /*FI*/C->_last_instruction=_i; } /*FI*/return R; } int r818a_assignment_or_call(T818* C){ int R=0; /*IF*/if ((r818skip1(C,'\50'))&&(r818a_expression(C))) { R=1; /*IF*/if (r818skip1(C,'\51')) { r818a_r10(C,1,(((T818*)C))->_last_expression/*97*/,NULL,NULL); } else { r818fcp(C,((T0*)ms35_818)); } /*FI*/} else if (r818a_identifier(C)) { R=1; /*IF*/if (r818skip2(C,'\72','\75')) { r818a_assignment_aux(C,1); } else if (r818skip2(C,'\77','\75')) { r818a_assignment_aux(C,0); } else if ((((r818a_current(C))||(r818a_result(C)))||(r818a_local_variable(C)))||(r818a_argument(C))) { r818a_r10(C,1,(((T818*)C))->_last_expression/*97*/,NULL,NULL); } else { r818a_procedure_call(C); } /*FI*/} /*FI*/return R; } /*No:EIFFEL_PARSER.last_feature_list*/ T0* r818get_comments(T818* C){ T0* R=NULL; R=(((T818*)C))->_last_comments/*25*/; C->_last_comments=NULL; return R; } void r818warning(T0* a1,T0* a2){ r683add_position(a1); r683warning(((T683*)(oBC364eh)),a2); } /*No:EIFFEL_PARSER.fz_retry*/ /*No:EIFFEL_PARSER.fz_inherit*/ /*No:EIFFEL_PARSER.fz_select*/ int r818a_creation(T818* C){ int R=0; int _state=0; T0* _call=NULL; T0* _proc_name=NULL; T0* _writable=NULL; T0* _type=NULL; T0* _sp=NULL; while (!((_state)>(6))) { {int z1=_state; if((0==z1)){ /*IF*/if (r818skip1(C,'\41')) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } _state=1; } else { _state=7; } /*FI*/} else if((1==z1)){ /*IF*/if (r818a_type(C)) { _type=(((T818*)C))->_last_type/*157*/; /*IF*/if (X291is_anchored(_type)) { r818warning(X291start_position(_type),((T0*)ms62_818)); } /*FI*/_state=2; } else if (r818skip1(C,'\41')) { _state=3; } else { r818fcp(C,((T0*)ms63_818)); _state=8; } /*FI*/} else if((2==z1)){ /*IF*/if (r818skip1(C,'\41')) { _state=3; } else { _state=8; r818fcp(C,((T0*)ms64_818)); } /*FI*/} else if((3==z1)){ /*IF*/if (r818a_identifier(C)) { /*IF*/if (r818a_current(C)) { _state=8; r818error(X662start_position((((T818*)C))->_last_expression/*97*/),((T0*)ms65_818)); } else if (r818a_argument(C)) { _state=8; r818error(X662start_position((((T818*)C))->_last_expression/*97*/),((T0*)ms66_818)); } else if ((r818a_result(C))||(r818a_local_variable(C))) { _writable=(((T818*)C))->_last_expression/*97*/; _state=4; } else { _writable=r511to_simple_feature_name(((T511*)(oBC818tmp_name))); _state=4; } /*FI*/} else { _state=8; r818fcp(C,((T0*)ms67_818)); } /*FI*/} else if((4==z1)){ /*IF*/if (r818skip1unless2(C,'\56','\56')) { _state=5; } else { _state=7; } /*FI*/} else if((5==z1)){ /*IF*/if (r818a_identifier(C)) { _proc_name=r511to_simple_feature_name(((T511*)(oBC818tmp_name))); _state=6; } else { _state=8; r818fcp(C,((T0*)ms68_818)); } /*FI*/} else{/*IF*/if (((((T818*)C))->_cc/*24*/)==('\50')) { _call=r818to_proc_call(C,_writable,_proc_name,r818a_actuals(C)); } else { {T268*n=malloc(sizeof(*n)); *n=M268; r268make(n,_writable,_proc_name); _call=(T0*)n; } } /*FI*/_state=7; }} } /*IF*/if (((_state)==(7))&&((_sp)!=((void*)(NULL)))) { R=1; /*IF*/if (((_type)==((void*)(NULL)))&&((_call)==((void*)(NULL)))) { {T362*n=malloc(sizeof(*n)); *n=M362; r362make(n,_sp,_writable); C->_last_instruction=(T0*)n; } } else if (((_type)!=((void*)(NULL)))&&((_call)==((void*)(NULL)))) { {T376*n=malloc(sizeof(*n)); *n=M376; r376make(n,_sp,_type,_writable); C->_last_instruction=(T0*)n; } } else if (((_type)==((void*)(NULL)))&&((_call)!=((void*)(NULL)))) { {T390*n=malloc(sizeof(*n)); *n=M390; r390make(n,_sp,_writable,_call); C->_last_instruction=(T0*)n; } } else { {T404*n=malloc(sizeof(*n)); *n=M404; r404make(n,_sp,_type,_writable,_call); C->_last_instruction=(T0*)n; } } /*FI*/} /*FI*/return R; } /*No:EIFFEL_PARSER.fz_old*/ T0* r818a_routine(T818* C){ T0* R=NULL; T0* _ea=NULL; T0* _al=NULL; T0* _hc=NULL; T0* _sp=NULL; /*IF*/if (r818a_keyword(C,((T0*)ms33_470))) { /*IF*/if (r818a_manifest_string(C)) { /*[IRF3.3set_obsolete_mark*/((((T505*)(((T505*)(oBC818tmp_feature)))))->_obsolete_mark)=((((T818*)C))->_last_manifest_string/*145*/); /*]*/ } else { r818fcp(C,((T0*)ms114_818)); } /*FI*/} /*FI*//*[IRF3.3set_header_comment*/((((T505*)(((T505*)(oBC818tmp_feature)))))->_header_comment)=(r818get_comments(C)); /*]*/ /*IF*/if (r818a_keyword(C,((T0*)ms40_470))) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } /*IF*/if (r818a_keyword(C,((T0*)ms10_470))) { _hc=r818get_comments(C); r505set_require_else(((T505*)(oBC818tmp_feature)),_sp,_hc,r818a_assertion(C)); } else { _hc=r818get_comments(C); r505set_require(((T505*)(oBC818tmp_feature)),_sp,_hc,r818a_assertion(C)); } /*FI*/} /*FI*//*IF*/if (r818a_keyword(C,((T0*)ms31_470))) { r818a_local_var_list(C,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); } /*FI*/R=r818a_routine_body(C); /*IF*/if (r818a_keyword(C,((T0*)ms13_470))) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } C->_in_ensure=1; /*IF*/if (r818a_keyword(C,((T0*)ms46_470))) { _hc=r818get_comments(C); _al=r818a_assertion(C); /*IF*/if (((_hc)!=((void*)(NULL)))||((_al)!=((void*)(NULL)))) { {T633*n=malloc(sizeof(*n)); *n=M633; r633make(n,_sp,_hc,_al); _ea=(T0*)n; } /*[IRF3.3set_ensure_then*/((((T633*)(((T633*)_ea))))->_is_ensure_then)=(1); /*]*/ } /*FI*/X355set_ensure_assertion(R,_ea); } else { _hc=r818get_comments(C); _al=r818a_assertion(C); /*IF*/if (((_hc)!=((void*)(NULL)))||((_al)!=((void*)(NULL)))) { {T633*n=malloc(sizeof(*n)); *n=M633; r633make(n,_sp,_hc,_al); _ea=(T0*)n; } } /*FI*/X355set_ensure_assertion(R,_ea); } /*FI*/C->_in_ensure=0; } /*FI*//*IF*/if (r818a_keyword(C,((T0*)ms41_470))) { C->_in_rescue=1; X355set_rescue_compound(R,r818a_compound2(C,((T0*)ms41_470),((T0*)ms12_470))); C->_in_rescue=0; } else { /*IF*/if (!(r818a_keyword(C,((T0*)ms12_470)))) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms115_818); r818warning(r818current_position(C1),b1); }/*]*/ } /*FI*/} /*FI*/C->_local_vars=NULL; return R; } T0*oBC818tmp_name=NULL; void r818a_then_part_list(T818* C,T0* a1){ /*IF*/if (!(r818a_then_part(C,a1))) { r818fcp(C,((T0*)ms125_818)); } /*FI*/while (!(!(r818a_keyword(C,((T0*)ms11_470))))) { /*IF*/if (!(r818a_then_part(C,a1))) { r818fcp(C,((T0*)ms126_818)); } /*FI*/} } /*No:EIFFEL_PARSER.us_none*/ void r818a_assignment_aux(T818* C,int a1){ T0* _rhs=NULL; T0* _writable=NULL; /*IF*/if (r818a_current(C)) { r683add_position(X662start_position((((T818*)C))->_last_expression/*97*/)); /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms36_818); r683fatal_error(((T683*)(oBC364eh)),b1); }/*]*/ } else if (r818a_void(C)) { r683add_position(r511start_position(((T511*)(oBC818tmp_name)))); /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms37_818); r683fatal_error(((T683*)(oBC364eh)),b1); }/*]*/ } else if (r818a_argument(C)) { r683add_position(X662start_position((((T818*)C))->_last_expression/*97*/)); /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms38_818); r683fatal_error(((T683*)(oBC364eh)),b1); }/*]*/ } else { /*IF*/if (r511is_result()) { /*IF*/if (((((T818*)C))->_function_type/*29*/)==((void*)(NULL))) { r818error(r511start_position(((T511*)(oBC818tmp_name))),((T0*)ms152_818)); } /*FI*/_writable=r511to_e_result(((T511*)(oBC818tmp_name))); } else if (r818a_local_variable(C)) { _writable=(((T818*)C))->_last_expression/*97*/; } else { _writable=r511to_simple_feature_name(((T511*)(oBC818tmp_name))); } /*FI*//*IF*/if (r818a_expression(C)) { _rhs=(((T818*)C))->_last_expression/*97*/; /*IF*/if (a1) { {T629*n=malloc(sizeof(*n)); *n=M629; r629make(n,_writable,_rhs); C->_last_instruction=(T0*)n; } } else { {T126*n=malloc(sizeof(*n)); *n=M126; r126make(n,_writable,_rhs); C->_last_instruction=(T0*)n; } } /*FI*/} else { r818fcp(C,((T0*)ms39_818)); } /*FI*/} /*FI*/} /*No:EIFFEL_PARSER.case_insensitive*/ /*No:EIFFEL_PARSER.fz_deferred*/ int r818a_identifier(T818* C){ int R=0; /*IF*/if ((((T818*)C))->_case_insensitive/*0*/) { R=r818a_identifier1(C); } else { R=r818a_identifier2(C); } /*FI*/return R; } int r818a_expression(T818* C){ int R=0; T0* _list=NULL; T0* _sp=NULL; /*IF*/if (r818skip2(C,'\74','\74')) { R=1; {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } while (!(!(r818a_expression(C)))) { /*IF*/if ((_list)==((void*)(NULL))) { _list=se_ma96(1,(((T818*)C))->_last_expression/*97*/); } else { X96add_last(_list,(((T818*)C))->_last_expression/*97*/); } /*FI*/C->_ok=r818skip1(C,'\54'); } /*IF*/if (!(r818skip2(C,'\76','\76'))) { r818fcp(C,((T0*)ms72_818)); } /*FI*/{T436*n=malloc(sizeof(*n)); *n=M436; r436make(n,_sp,_list); C->_last_expression=(T0*)n; } } else { R=r818a_e0(C); } /*FI*/return R; } void r818a_formal_arg_list(T818* 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 z1=_state; if((0==z1)){ /*IF*/if (r818skip1(C,'\50')) { {T627*n=malloc(sizeof(*n)); *n=M627; r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/); _sp=(T0*)n; } _state=1; } else { _state=6; } /*FI*/} else if((1==z1)){ /*IF*/if (r818a_identifier(C)) { _name=r511to_argument_name1(((T511*)(oBC818tmp_name))); _state=2; } else if (r818skip1(C,'\51')) { _state=6; } else { _state=7; } /*FI*/} else if((2==z1)){ /*IF*/if (r818skip1(C,'\72')) { /*IF*/if ((_name_list)!=((void*)(NULL))) { r65add_last(((T65*)_name_list),_name); _name=NULL; } /*FI*/_state=4; } else { C->_ok=r818skip1(C,'\54'); /*IF*/if ((_name_list)==((void*)(NULL))) { _name_list=se_ma65(1,_name); } else { r65add_last(((T65*)_name_list),_name); } /*FI*/_name=NULL; _state=3; } /*FI*/} else if((3==z1)){ /*IF*/if (r818a_identifier(C)) { _name=r511to_argument_name1(((T511*)(oBC818tmp_name))); _state=2; } else if ((((((T818*)C))->_cc/*24*/)==('\54'))||(((((T818*)C))->_cc/*24*/)==('\73'))) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms151_818); r818warning(r818current_position(C1),b1); }/*]*/ C->_ok=(r818skip1(C,'\54'))||(r818skip1(C,'\73')); } else { _state=7; } /*FI*/} else if((4==z1)){ /*IF*/if (r818a_type(C)) { /*IF*/if ((_name_list)!=((void*)(NULL))) { {T64*n=malloc(sizeof(*n)); *n=M64; r64make(n,_name_list,(((T818*)C))->_last_type/*157*/); _declaration=(T0*)n; } _name_list=NULL; } else { {T723*n=malloc(sizeof(*n)); *n=M723; r723make(n,_name,(((T818*)C))->_last_type/*157*/); _declaration=(T0*)n; } _name=NULL; } /*FI*//*IF*/if ((_list)==((void*)(NULL))) { _list=se_ma382(1,_declaration); } else { r382add_last(((T382*)_list),_declaration); } /*FI*/_declaration=NULL; _state=5; } else { _state=7; } /*FI*/} else{/*IF*/if (r818skip1(C,'\51')) { _state=6; } else if (((((T818*)C))->_cc/*24*/)==('\54')) { /*[IRF3.6wcp*/{T818* C1=C; T0* b1=((T0*)ms13_818); r818warning(r818current_position(C1),b1); }/*]*/ C->_ok=r818skip1(C,'\54'); _state=1; } else { C->_ok=r818skip1(C,'\73'); _state=1; } /*FI*/}} } /*IF*/if ((_state)==(7)) { r818fcp(C,((T0*)ms14_818)); } else if (((_sp)!=((void*)(NULL)))&&((_list)==((void*)(NULL)))) { r818warning(_sp,((T0*)ms15_818)); } else if ((_sp)!=((void*)(NULL))) { {T31*n=malloc(sizeof(*n)); *n=M31; r31make(n,_sp,_list); C->_arguments=(T0*)n; } /*[IRF3.3set_arguments*/((((T505*)(((T505*)(oBC818tmp_feature)))))->_arguments)=((((T818*)C))->_arguments/*45*/); /*]*/ } /*FI*/} /*No:EIFFEL_PARSER.fz_end*/ /*No:EIFFEL_PARSER.fz_else*/ /*No:EIFFEL_PARSER.last_class_name*/ int r818a_type_formal_generic(T818* C){ int R=0; int _rank=0; T0* _cn=NULL; T0* _fga=NULL; /*IF*/if (((((T818*)C))->_formal_generic_list/*33*/)!=((void*)(NULL))) { _rank=1; while (!((R)||((_rank)>(/*(IRF4.6count*/(((T681*)((T681*)((((T881*)((T881*)((((T818*)C))->_formal_generic_list/*33*/))))->_list/*4*/))))->_upper/*8*//*)*/)))) { _fga=/*(IRF4.6item*/r681item(((T681*)((((T881*)((T881*)((((T818*)C))->_formal_generic_list/*33*/))))->_list/*4*/)),_rank)/*)*/; /*IF*/if (r818a_keyword(C,(((T451*)((T451*)((((T59*)((T59*)_fga)))->_name/*0*/))))->_to_string/*0*/)) { {T451*n=malloc(sizeof(*n)); *n=M451; r451make(n,(((T451*)((T451*)((((T59*)((T59*)_fga)))->_name/*0*/))))->_to_string/*0*/,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/)); _cn=(T0*)n; } {T283*n=malloc(sizeof(*n)); *n=M283; r283make(n,_cn,_rank); C->_last_type_formal_generic=(T0*)n; } R=1; } /*FI*/_rank=(_rank)+(1); } } /*FI*/return R; } /*No:EIFFEL_PARSER.last_infix*/