This is compile_to_c1.c in view mode; [Download] [Up]
/* ANSI C code generated by SmallEiffel. */ /* -- SmallEiffel -- Release (- 0.95) -- FRANCE -- Copyright (C), 1994 - Dominique COLNET and Suzanne COLLIN -- University Henri Poincare' - Nancy 1 - email colnet@loria.fr -- CRIN (Centre de Recherche en Informatique de Nancy) -- FRANCE */ #include "compile_to_c.h" T0 *se_new(int id){ int sz=s[id]; T0 *n=malloc(sz); memset(n,0,sz); n->id=id; return n; } T0* rT253runnable(/*C*/T0* a1,T0* a2,T0* a3){ T0* R=NULL; T0* _a=NULL; int _i=0; /*IF*/if (!(rT158empty((T158*)a1))) { R=rT158twin((T158*)a1); _i=((T158*)R)->_upper; while (!((_i)==(0))) { rT52push((T52*)oRBC27small_eiffel,a3); _a=rT64to_runnable((T64*)rT158item((T158*)R,_i),a2); /*IF*/if (!(_a)) { rT253error(rT64start_position((T64*)rT158item((T158*)R,_i)),(T0 *)ms473); } else { rT158put((T158*)R,_a,_i); } /*FI*/rT52pop((T52*)oRBC27small_eiffel); _i=(_i)-(1); } } /*FI*/return R; } T0* rT253run_require(/*C*/T0* a1){ T0* R=NULL; T0* _ar=NULL; T0* _er=NULL; T0* _r=NULL; int _i=0; rT269clear((T269*)oRBC62require_collector); rT50collect_for((T50*)XrT58base_class(XrT262current_type(a1)),1001,XrT262name(a1)); /*IF*/if (!(rT269empty((T269*)oRBC62require_collector))) { _i=1; while (!((_i)>(((T269*)oRBC62require_collector)->_upper))) { _er=rT269item((T269*)oRBC62require_collector,_i); /*IF*/if (!(rT137empty((T137*)_er))) { _r=rT253runnable(((T137*)_er)->_list,XrT262current_type(a1),a1); /*IF*/if (((int)_r)) { {T137 *n=((T137*)se_new(137)); rT137from_runnable(n,_r); _er=(T0 *)n;} /*IF*/if (!(_ar)) { _ar=ma(269,0,1,_er); } else { rT269add_last((T269*)_ar,_er); } /*FI*/} /*FI*/} /*FI*/_i=(_i)+(1); } /*IF*/if (((int)_ar)) { {T268 *n=((T268*)se_new(268)); /*(IRF3*/((n)->_list)=(_ar); /*)*/R=(T0 *)n;} } /*FI*/} /*FI*/return R; } T0*oRBC62require_collector; void rT253fatal_error(/*C*/T0* a1){ (/*UT*/(void)(T45*)oRBC27eh); rT45fatal_error(a1); } T0* rT253first_name(T253 *C){ T0* R=NULL; R=rT128item((T128*)(C)->_names,1); return R; } T0* rT253to_run_feature(T253 *C,T0* a1,T0* a2){ T0* R=NULL; {T282 *n=((T282*)se_new(282)); rT282make(n,a1,a2,(T0 *)C); R=(T0 *)n;} return R; } void rT253error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } void rT253fe_undefine(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms479); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT67to_string(a1)); (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms480); (/*UT*/(void)(T45*)oRBC27eh); rT45append(((T48*)((T50*)a2)->_base_class_name)->_to_string); rT253fatal_error((T0 *)ms481); } int rT253is_merge_with(T253 *C,T0* a1,T0* a2){ int R=0; int _ne=0; _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/; /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) { /*IF*/if (((!((C)->_result_type))||(!(XrT62result_type(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT253error(rT253start_position(C),(T0 *)ms484); } /*FI*/} /*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT62arguments(a1))) { /*IF*/if (((!((C)->_arguments))||(!(XrT62arguments(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT253error(rT253start_position(C),(T0 *)ms485); } else if ((rT92count((T92*)(C)->_arguments))!=(rT92count((T92*)XrT62arguments(a1)))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT253error(rT253start_position(C),(T0 *)ms486); } /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_result_type)) { /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) { rT45error((T45*)oRBC27eh,(T0 *)ms487); } /*FI*/} /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_arguments)) { /*IF*/if (!(rT92is_a_in((T92*)(C)->_arguments,XrT62arguments(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT253error(rT253start_position(C),(T0 *)ms490); } /*FI*/} /*FI*/} /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0); return R; } T0*oRBC27eh; T0* rT253start_position(T253 *C){ T0* R=NULL; R=XrT67start_position(rT253first_name(C)); return R; } void rT253collect_for(T253 *C,int a1){ /*IF*/if ((a1)==(1001)) { /*IF*/if (((int)(C)->_require_assertion)) { /*IF*/if (!(rT269fast_has((T269*)oRBC62require_collector,(C)->_require_assertion))) { rT269add_last((T269*)oRBC62require_collector,(C)->_require_assertion); } /*FI*/} /*FI*/} else { /*IF*/if (((int)(C)->_ensure_assertion)) { rT157add_into((T157*)(C)->_ensure_assertion,oRBC62assertion_collector); } /*FI*/} /*FI*/} void rT253add_into(T253 *C,T0* a1){ T0* _fn=NULL; int _i=0; C->_base_class=rT46base_class((T46*)XrT67start_position(rT128item((T128*)(C)->_names,1))); _i=1; while (!((_i)>(rT128count((T128*)(C)->_names)))) { _fn=rT128item((T128*)(C)->_names,_i); /*IF*/if (rT61has((T61*)a1,XrT67to_key(_fn))) { _fn=XrT62first_name(rT61at((T61*)a1,XrT67to_key(_fn))); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT67start_position(_fn)); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT67start_position(rT128item((T128*)(C)->_names,_i))); rT45error((T45*)oRBC27eh,(T0 *)ms414); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT67to_string(_fn)); rT45error((T45*)oRBC27eh,(T0 *)ms36); } else { rT61put((T61*)a1,(T0 *)C,XrT67to_key(_fn)); } /*FI*/_i=(_i)+(1); } } T0* rT253try_to_undefine(T253 *C,T0* a1,T0* a2){ T0* R=NULL; /*IF*/if (XrT67is_frozen(a1)) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT253start_position(C)); rT253error(XrT67start_position(a1),(T0 *)ms478); rT253fe_undefine(a1,a2); } else { R=rT253try_to_undefine_aux(C,a1,a2); /*IF*/if (((int)R)) { XrT204set_clients(R,(C)->_clients); } else { rT253fe_undefine(a1,a2); } /*FI*/} /*FI*/return R; } T0* rT253try_to_undefine_aux(T253 *C,T0* a1,T0* a2){ T0* R=NULL; {T206 *n=((T206*)se_new(206)); rT206from_effective(n,a1,(C)->_arguments,(C)->_result_type,(C)->_require_assertion,(C)->_ensure_assertion,a2); R=(T0 *)n;}return R; } void rT253set_header_comment(T253 *C,T0* a1){ /*IF*/if ((((int)a1))&&((rT59count((T59*)a1))>(1))) { C->_end_comment=a1; } /*FI*/} int rT253can_hide(T253 *C,T0* a1,T0* a2){ int R=0; int _ne=0; _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/; /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) { /*IF*/if (((!((C)->_result_type))||(!(XrT62result_type(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT253error(rT253start_position(C),(T0 *)ms497); } /*FI*/} /*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT62arguments(a1))) { /*IF*/if (((!((C)->_arguments))||(!(XrT62arguments(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT253error(rT253start_position(C),(T0 *)ms498); } else if ((rT92count((T92*)(C)->_arguments))!=(rT92count((T92*)XrT62arguments(a1)))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT253error(rT253start_position(C),(T0 *)ms499); } /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_result_type)) { /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms500); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT58run_time_mark(((T261*)a2)->_current_type)); rT45error((T45*)oRBC27eh,(T0 *)ms501); } /*FI*/} /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_arguments)) { /*IF*/if (!(rT92is_a_in((T92*)(C)->_arguments,XrT62arguments(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT253start_position(C)); (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms502); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT58run_time_mark(((T261*)a2)->_current_type)); rT45error((T45*)oRBC27eh,(T0 *)ms503); } /*FI*/} /*FI*/} /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0); return R; } T0* rT253run_ensure(/*C*/T0* a1){ T0* R=NULL; T0* _r=NULL; rT158clear((T158*)oRBC62assertion_collector); rT50collect_for((T50*)XrT58base_class(XrT262current_type(a1)),1002,XrT262name(a1)); _r=rT253runnable(oRBC62assertion_collector,XrT262current_type(a1),a1); /*IF*/if (((int)_r)) { {T157 *n=((T157*)se_new(157)); rT157from_runnable(n,_r); R=(T0 *)n;} } /*FI*/return R; } T0*oRBC27small_eiffel; T0* rT253base_class_name(T253 *C){ T0* R=NULL; R=((T50*)(C)->_base_class)->_base_class_name; return R; } void rT253set_rescue_compound(T253 *C,T0* a1){ /*IF*/if ((((int)a1))&&(/*(IRF4*/0/*)*/)) { rT253error(rT253start_position(C),(T0 *)ms397); } /*FI*/C->_rescue_compound=a1; } void rT253make_e_feature(T253 *C,T0* a1,T0* a2){ C->_names=a1; C->_result_type=a2; } void rT253make_routine(T253 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){ rT253make_e_feature(C,a1,NULL); C->_header_comment=a4; C->_arguments=a2; C->_obsolete_mark=a3; C->_require_assertion=a5; } void rT253make_effective_routine(T253 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6,T0* a7){ rT253make_routine(C,a1,a2,a3,a4,a5); C->_local_vars=a6; C->_routine_body=a7; C->_use_current_state=1015; } T0*oRBC62assertion_collector; void rT253make(T253 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6,T0* a7,T0* a8){ rT253make_effective_routine(C,a1,a2,a4,a5,a6,a7,a8); C->_result_type=a3; } T0* rT77twin(T77 *C){ T0* R=NULL; /*IF*//*AF*//*AE*/ R=(T0 *)se_new(C->id); AF_1 rT77copy((T77*)R,(T0 *)C); AF_0 /*FI*/return R; } int rT77static_value(T77 *C){ int R=0; R=(C)->_static_value_mem; return R; } void rT77fatal_error(/*C*/T0* a1){ (/*UT*/(void)(T45*)oRBC27eh); rT45fatal_error(a1); } T0* rT77to_runnable(T77 *C,T0* a1){ T0* R=NULL; /*IF*/if (!((C)->_current_type)) { C->_current_type=a1; R=(T0 *)C; } else { R=rT77to_runnable((T77*)rT77twin(C),a1); } /*FI*/return R; } void rT77error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } T0* rT77add_comment(T77 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) { R=(T0 *)C; } else { {T221 *n=((T221*)se_new(221)); rT221make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } T0* rT77result_type(/*C*/void){ T0* R=NULL; rT77error(/*(IRF4*/NULL/*)*/,(T0 *)ms1171); return R; } int rT77to_integer(/*C*/void){ int R=0; rT77error(/*(IRF4*/NULL/*)*/,(T0 *)ms169); return R; } T0* rT77written_in(/*C*/void){ T0* R=NULL; T0* _sp=NULL; _sp=/*(IRF4*/NULL/*)*/; /*IF*/if (((int)_sp)) { R=((T46*)_sp)->_base_class_name; } /*FI*/return R; } void rT77copy(T77 *C,T0* a1){ /*IF*//*AF*//*AE*/ memcpy(C,a1,s[C->id]); /*FI*/} int rT77is_a(/*C*/T0* a1){ int R=0; R=XrT58is_a(XrT102run_type(rT77result_type()),XrT58run_type(XrT68result_type(a1))); /*IF*/if (!(R)) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(/*(IRF4*/NULL/*)*/); rT77error(XrT68start_position(a1),(T0 *)ms1289); } /*FI*/return R; } T0*oRBC27cpp; int rT169static_value(T169 *C){ int R=0; R=(C)->_static_value_mem; return R; } T0* rT169to_runnable(T169 *C,T0* a1){ T0* R=NULL; T0* _exp=NULL; /*IF*/if (!((C)->_current_type)) { C->_current_type=a1; _exp=XrT68to_runnable((C)->_expression,a1); /*IF*/if (!(_exp)) { rT169error(rT169start_position(C),(T0 *)ms1162); } else { C->_expression=_exp; } /*FI*/C->_id=rT43next_e_old_id((T43*)oRBC27cpp); R=(T0 *)C; } else { {T169 *n=((T169*)se_new(169)); /*(IRF3*/((n)->_expression)=((C)->_expression); /*)*/R=(T0 *)n;} R=rT169to_runnable((T169*)R,a1); } /*FI*/return R; } void rT169error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } T0* rT169add_comment(T169 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) { R=(T0 *)C; } else { {T221 *n=((T221*)se_new(221)); rT221make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } T0* rT169result_type(T169 *C){ T0* R=NULL; R=XrT68result_type((C)->_expression); return R; } T0* rT169start_position(T169 *C){ T0* R=NULL; R=XrT68start_position((C)->_expression); return R; } int rT169use_current(T169 *C){ int R=0; R=XrT68use_current((C)->_expression); return R; } void rT169compile_to_c_old(T169 *C){ T0* _t=NULL; _t=XrT58run_type(rT169result_type(C)); rT43put_character((T43*)oRBC27cpp,'T'); /*IF*/if (XrT58is_expanded(_t)) { rT43put_integer((T43*)oRBC27cpp,XrT58id(_t)); rT43put_character((T43*)oRBC27cpp,'\40'); } else { rT43put_string((T43*)oRBC27cpp,(T0 *)ms1535); } /*FI*/rT43put_character((T43*)oRBC27cpp,'o'); rT43put_integer((T43*)oRBC27cpp,(C)->_id); rT43put_character((T43*)oRBC27cpp,'\75'); XrT68compile_to_c((C)->_expression); rT43put_string((T43*)oRBC27cpp,(T0 *)ms1536); } void rT169compile_to_c(T169 *C){ rT43put_character((T43*)oRBC27cpp,'o'); rT43put_integer((T43*)oRBC27cpp,(C)->_id); } int rT169to_integer(T169 *C){ int R=0; rT169error(rT169start_position(C),(T0 *)ms169); return R; } T0* rT169written_in(T169 *C){ T0* R=NULL; T0* _sp=NULL; _sp=rT169start_position(C); /*IF*/if (((int)_sp)) { R=((T46*)_sp)->_base_class_name; } /*FI*/return R; } int rT169is_a(T169 *C,T0* a1){ int R=0; R=XrT58is_a(XrT58run_type(rT169result_type(C)),XrT58run_type(XrT68result_type(a1))); /*IF*/if (!(R)) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT169start_position(C)); rT169error(XrT68start_position(a1),(T0 *)ms1289); } /*FI*/return R; } T0* rT79twin(T79 *C){ T0* R=NULL; /*IF*//*AF*//*AE*/ R=(T0 *)se_new(C->id); AF_1 rT79copy((T79*)R,(T0 *)C); AF_0 /*FI*/return R; } int rT79static_value(T79 *C){ int R=0; R=(C)->_static_value_mem; return R; } T0* rT79to_runnable(T79 *C,T0* a1){ T0* R=NULL; /*IF*/if (!((C)->_current_type)) { C->_current_type=a1; R=(T0 *)C; } else { R=rT79twin(C); /*(IRF3*/(((T79*)R)->_current_type)=(a1); /*)*/} /*FI*/return R; } void rT79error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } T0* rT79add_comment(T79 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) { R=(T0 *)C; } else { {T221 *n=((T221*)se_new(221)); rT221make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } int ofBC79result_type=0; T0*oRBC79result_type; T0* rT79result_type(/*C*/void){ if (ofBC79result_type==0){ T0* R=NULL; ofBC79result_type=1; {T114 *n=((T114*)se_new(114)); rT114make(n,NULL); R=(T0 *)n;} oRBC79result_type=R;} return oRBC79result_type;} T0* rT79_px45(T79 *C){ T0* R=NULL; rT79error((C)->_start_position,(T0 *)ms168); return R; } void rT79compile_to_c(T79 *C){ rT43put_string((T43*)oRBC27cpp,(T0 *)ms1175); rT43put_string((T43*)oRBC27cpp,(C)->_to_string); rT43put_character((T43*)oRBC27cpp,'\51'); } int rT79to_integer(T79 *C){ int R=0; rT79error((C)->_start_position,(T0 *)ms169); return R; } T0* rT79to_integer_constant(T79 *C){ T0* R=NULL; rT79error((C)->_start_position,(T0 *)ms269); return R; } T0* rT79written_in(T79 *C){ T0* R=NULL; T0* _sp=NULL; _sp=(C)->_start_position; /*IF*/if (((int)_sp)) { R=((T46*)_sp)->_base_class_name; } /*FI*/return R; } void rT79copy(T79 *C,T0* a1){ /*IF*//*AF*//*AE*/ memcpy(C,a1,s[C->id]); /*FI*/} int rT79is_a(T79 *C,T0* a1){ int R=0; R=XrT58is_a(rT114run_type((T114*)rT79result_type()),XrT58run_type(XrT68result_type(a1))); /*IF*/if (!(R)) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position((C)->_start_position); rT79error(XrT68start_position(a1),(T0 *)ms1289); } /*FI*/return R; } void rT79make(T79 *C,T0* a1,T0* a2,int a3,float a4,int a5){ C->_start_position=a1; C->_to_string=a2; C->_integral_part=a3; C->_fractional_part=a4; C->_exponent=a5; } T0* rT256runnable(/*C*/T0* a1,T0* a2,T0* a3){ T0* R=NULL; T0* _a=NULL; int _i=0; /*IF*/if (!(rT158empty((T158*)a1))) { R=rT158twin((T158*)a1); _i=((T158*)R)->_upper; while (!((_i)==(0))) { rT52push((T52*)oRBC27small_eiffel,a3); _a=rT64to_runnable((T64*)rT158item((T158*)R,_i),a2); /*IF*/if (!(_a)) { rT256error(rT64start_position((T64*)rT158item((T158*)R,_i)),(T0 *)ms473); } else { rT158put((T158*)R,_a,_i); } /*FI*/rT52pop((T52*)oRBC27small_eiffel); _i=(_i)-(1); } } /*FI*/return R; } T0* rT256run_require(/*C*/T0* a1){ T0* R=NULL; T0* _ar=NULL; T0* _er=NULL; T0* _r=NULL; int _i=0; rT269clear((T269*)oRBC62require_collector); rT50collect_for((T50*)XrT58base_class(XrT262current_type(a1)),1001,XrT262name(a1)); /*IF*/if (!(rT269empty((T269*)oRBC62require_collector))) { _i=1; while (!((_i)>(((T269*)oRBC62require_collector)->_upper))) { _er=rT269item((T269*)oRBC62require_collector,_i); /*IF*/if (!(rT137empty((T137*)_er))) { _r=rT256runnable(((T137*)_er)->_list,XrT262current_type(a1),a1); /*IF*/if (((int)_r)) { {T137 *n=((T137*)se_new(137)); rT137from_runnable(n,_r); _er=(T0 *)n;} /*IF*/if (!(_ar)) { _ar=ma(269,0,1,_er); } else { rT269add_last((T269*)_ar,_er); } /*FI*/} /*FI*/} /*FI*/_i=(_i)+(1); } /*IF*/if (((int)_ar)) { {T268 *n=((T268*)se_new(268)); /*(IRF3*/((n)->_list)=(_ar); /*)*/R=(T0 *)n;} } /*FI*/} /*FI*/return R; } void rT256fatal_error(/*C*/T0* a1){ (/*UT*/(void)(T45*)oRBC27eh); rT45fatal_error(a1); } T0* rT256first_name(T256 *C){ T0* R=NULL; R=rT128item((T128*)(C)->_names,1); return R; } T0* rT256to_run_feature(T256 *C,T0* a1,T0* a2){ T0* R=NULL; {T274 *n=((T274*)se_new(274)); rT274make(n,a1,a2,(T0 *)C); R=(T0 *)n;} return R; } void rT256error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } void rT256fe_undefine(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms479); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT67to_string(a1)); (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms480); (/*UT*/(void)(T45*)oRBC27eh); rT45append(((T48*)((T50*)a2)->_base_class_name)->_to_string); rT256fatal_error((T0 *)ms481); } int rT256is_merge_with(T256 *C,T0* a1,T0* a2){ int R=0; int _ne=0; _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/; /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) { /*IF*/if (((!((C)->_result_type))||(!(XrT62result_type(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT256error(rT256start_position(C),(T0 *)ms484); } /*FI*/} /*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT62arguments(a1))) { /*IF*/if (((!((C)->_arguments))||(!(XrT62arguments(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT256error(rT256start_position(C),(T0 *)ms485); } else if ((rT92count((T92*)(C)->_arguments))!=(rT92count((T92*)XrT62arguments(a1)))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT256error(rT256start_position(C),(T0 *)ms486); } /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_result_type)) { /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) { rT45error((T45*)oRBC27eh,(T0 *)ms487); } /*FI*/} /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_arguments)) { /*IF*/if (!(rT92is_a_in((T92*)(C)->_arguments,XrT62arguments(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT256error(rT256start_position(C),(T0 *)ms490); } /*FI*/} /*FI*/} /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0); return R; } T0* rT256start_position(T256 *C){ T0* R=NULL; R=XrT67start_position(rT256first_name(C)); return R; } void rT256collect_for(T256 *C,int a1){ /*IF*/if ((a1)==(1001)) { /*IF*/if (((int)(C)->_require_assertion)) { /*IF*/if (!(rT269fast_has((T269*)oRBC62require_collector,(C)->_require_assertion))) { rT269add_last((T269*)oRBC62require_collector,(C)->_require_assertion); } /*FI*/} /*FI*/} else { /*IF*/if (((int)(C)->_ensure_assertion)) { rT157add_into((T157*)(C)->_ensure_assertion,oRBC62assertion_collector); } /*FI*/} /*FI*/} void rT256add_into(T256 *C,T0* a1){ T0* _fn=NULL; int _i=0; C->_base_class=rT46base_class((T46*)XrT67start_position(rT128item((T128*)(C)->_names,1))); _i=1; while (!((_i)>(rT128count((T128*)(C)->_names)))) { _fn=rT128item((T128*)(C)->_names,_i); /*IF*/if (rT61has((T61*)a1,XrT67to_key(_fn))) { _fn=XrT62first_name(rT61at((T61*)a1,XrT67to_key(_fn))); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT67start_position(_fn)); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT67start_position(rT128item((T128*)(C)->_names,_i))); rT45error((T45*)oRBC27eh,(T0 *)ms414); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT67to_string(_fn)); rT45error((T45*)oRBC27eh,(T0 *)ms36); } else { rT61put((T61*)a1,(T0 *)C,XrT67to_key(_fn)); } /*FI*/_i=(_i)+(1); } } T0* rT256try_to_undefine(T256 *C,T0* a1,T0* a2){ T0* R=NULL; /*IF*/if (XrT67is_frozen(a1)) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT256start_position(C)); rT256error(XrT67start_position(a1),(T0 *)ms478); rT256fe_undefine(a1,a2); } else { R=rT256try_to_undefine_aux(C,a1,a2); /*IF*/if (((int)R)) { XrT204set_clients(R,(C)->_clients); } else { rT256fe_undefine(a1,a2); } /*FI*/} /*FI*/return R; } T0* rT256try_to_undefine_aux(T256 *C,T0* a1,T0* a2){ T0* R=NULL; rT256error(rT256start_position(C),(T0 *)ms1533); rT256fe_undefine(a1,a2); return R; } void rT256set_header_comment(T256 *C,T0* a1){ /*IF*/if ((((int)a1))&&((rT59count((T59*)a1))>(1))) { C->_end_comment=a1; } /*FI*/} void rT256mapping_c_name(T256 *C){ rT50mapping_c((T50*)(C)->_base_class); XrT67mapping_c(rT256first_name(C)); } int rT256can_hide(T256 *C,T0* a1,T0* a2){ int R=0; int _ne=0; _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/; /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) { /*IF*/if (((!((C)->_result_type))||(!(XrT62result_type(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT256error(rT256start_position(C),(T0 *)ms497); } /*FI*/} /*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT62arguments(a1))) { /*IF*/if (((!((C)->_arguments))||(!(XrT62arguments(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT256error(rT256start_position(C),(T0 *)ms498); } else if ((rT92count((T92*)(C)->_arguments))!=(rT92count((T92*)XrT62arguments(a1)))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT256error(rT256start_position(C),(T0 *)ms499); } /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_result_type)) { /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms500); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT58run_time_mark(((T261*)a2)->_current_type)); rT45error((T45*)oRBC27eh,(T0 *)ms501); } /*FI*/} /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_arguments)) { /*IF*/if (!(rT92is_a_in((T92*)(C)->_arguments,XrT62arguments(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT256start_position(C)); (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms502); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT58run_time_mark(((T261*)a2)->_current_type)); rT45error((T45*)oRBC27eh,(T0 *)ms503); } /*FI*/} /*FI*/} /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0); return R; } T0* rT256run_ensure(/*C*/T0* a1){ T0* R=NULL; T0* _r=NULL; rT158clear((T158*)oRBC62assertion_collector); rT50collect_for((T50*)XrT58base_class(XrT262current_type(a1)),1002,XrT262name(a1)); _r=rT256runnable(oRBC62assertion_collector,XrT262current_type(a1),a1); /*IF*/if (((int)_r)) { {T157 *n=((T157*)se_new(157)); rT157from_runnable(n,_r); R=(T0 *)n;} } /*FI*/return R; } T0* rT256base_class_name(T256 *C){ T0* R=NULL; R=((T50*)(C)->_base_class)->_base_class_name; return R; } void rT256set_rescue_compound(T256 *C,T0* a1){ /*IF*/if ((((int)a1))&&(/*(IRF4*/0/*)*/)) { rT256error(rT256start_position(C),(T0 *)ms397); } /*FI*/C->_rescue_compound=a1; } void rT256make_e_feature(T256 *C,T0* a1,T0* a2){ C->_names=a1; C->_result_type=a2; } void rT256make_routine(T256 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){ rT256make_e_feature(C,a1,NULL); C->_header_comment=a4; C->_arguments=a2; C->_obsolete_mark=a3; C->_require_assertion=a5; } void rT256make_effective_routine(T256 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6,T0* a7){ rT256make_routine(C,a1,a2,a3,a4,a5); C->_local_vars=a6; C->_routine_body=a7; C->_use_current_state=1015; } void rT256make(T256 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6,T0* a7,T0* a8){ rT256make_effective_routine(C,a1,a2,a4,a5,a6,a7,a8); C->_result_type=a3; } T0* rT255runnable(/*C*/T0* a1,T0* a2,T0* a3){ T0* R=NULL; T0* _a=NULL; int _i=0; /*IF*/if (!(rT158empty((T158*)a1))) { R=rT158twin((T158*)a1); _i=((T158*)R)->_upper; while (!((_i)==(0))) { rT52push((T52*)oRBC27small_eiffel,a3); _a=rT64to_runnable((T64*)rT158item((T158*)R,_i),a2); /*IF*/if (!(_a)) { rT255error(rT64start_position((T64*)rT158item((T158*)R,_i)),(T0 *)ms473); } else { rT158put((T158*)R,_a,_i); } /*FI*/rT52pop((T52*)oRBC27small_eiffel); _i=(_i)-(1); } } /*FI*/return R; } T0* rT255run_require(/*C*/T0* a1){ T0* R=NULL; T0* _ar=NULL; T0* _er=NULL; T0* _r=NULL; int _i=0; rT269clear((T269*)oRBC62require_collector); rT50collect_for((T50*)XrT58base_class(XrT262current_type(a1)),1001,XrT262name(a1)); /*IF*/if (!(rT269empty((T269*)oRBC62require_collector))) { _i=1; while (!((_i)>(((T269*)oRBC62require_collector)->_upper))) { _er=rT269item((T269*)oRBC62require_collector,_i); /*IF*/if (!(rT137empty((T137*)_er))) { _r=rT255runnable(((T137*)_er)->_list,XrT262current_type(a1),a1); /*IF*/if (((int)_r)) { {T137 *n=((T137*)se_new(137)); rT137from_runnable(n,_r); _er=(T0 *)n;} /*IF*/if (!(_ar)) { _ar=ma(269,0,1,_er); } else { rT269add_last((T269*)_ar,_er); } /*FI*/} /*FI*/} /*FI*/_i=(_i)+(1); } /*IF*/if (((int)_ar)) { {T268 *n=((T268*)se_new(268)); /*(IRF3*/((n)->_list)=(_ar); /*)*/R=(T0 *)n;} } /*FI*/} /*FI*/return R; } void rT255fatal_error(/*C*/T0* a1){ (/*UT*/(void)(T45*)oRBC27eh); rT45fatal_error(a1); } T0* rT255first_name(T255 *C){ T0* R=NULL; R=rT128item((T128*)(C)->_names,1); return R; } T0* rT255to_run_feature(T255 *C,T0* a1,T0* a2){ T0* R=NULL; {T283 *n=((T283*)se_new(283)); rT283make(n,a1,a2,(T0 *)C); R=(T0 *)n;} return R; } void rT255error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } void rT255fe_undefine(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms479); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT67to_string(a1)); (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms480); (/*UT*/(void)(T45*)oRBC27eh); rT45append(((T48*)((T50*)a2)->_base_class_name)->_to_string); rT255fatal_error((T0 *)ms481); } int rT255is_merge_with(T255 *C,T0* a1,T0* a2){ int R=0; int _ne=0; _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/; /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) { /*IF*/if (((!((C)->_result_type))||(!(XrT62result_type(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT255error(rT255start_position(C),(T0 *)ms484); } /*FI*/} /*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT62arguments(a1))) { /*IF*/if (((!((C)->_arguments))||(!(XrT62arguments(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT255error(rT255start_position(C),(T0 *)ms485); } else if ((rT92count((T92*)(C)->_arguments))!=(rT92count((T92*)XrT62arguments(a1)))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT255error(rT255start_position(C),(T0 *)ms486); } /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_result_type)) { /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) { rT45error((T45*)oRBC27eh,(T0 *)ms487); } /*FI*/} /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_arguments)) { /*IF*/if (!(rT92is_a_in((T92*)(C)->_arguments,XrT62arguments(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT255error(rT255start_position(C),(T0 *)ms490); } /*FI*/} /*FI*/} /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0); return R; } T0* rT255start_position(T255 *C){ T0* R=NULL; R=XrT67start_position(rT255first_name(C)); return R; } void rT255collect_for(T255 *C,int a1){ /*IF*/if ((a1)==(1001)) { /*IF*/if (((int)(C)->_require_assertion)) { /*IF*/if (!(rT269fast_has((T269*)oRBC62require_collector,(C)->_require_assertion))) { rT269add_last((T269*)oRBC62require_collector,(C)->_require_assertion); } /*FI*/} /*FI*/} else { /*IF*/if (((int)(C)->_ensure_assertion)) { rT157add_into((T157*)(C)->_ensure_assertion,oRBC62assertion_collector); } /*FI*/} /*FI*/} void rT255add_into(T255 *C,T0* a1){ T0* _fn=NULL; int _i=0; C->_base_class=rT46base_class((T46*)XrT67start_position(rT128item((T128*)(C)->_names,1))); _i=1; while (!((_i)>(rT128count((T128*)(C)->_names)))) { _fn=rT128item((T128*)(C)->_names,_i); /*IF*/if (rT61has((T61*)a1,XrT67to_key(_fn))) { _fn=XrT62first_name(rT61at((T61*)a1,XrT67to_key(_fn))); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT67start_position(_fn)); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT67start_position(rT128item((T128*)(C)->_names,_i))); rT45error((T45*)oRBC27eh,(T0 *)ms414); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT67to_string(_fn)); rT45error((T45*)oRBC27eh,(T0 *)ms36); } else { rT61put((T61*)a1,(T0 *)C,XrT67to_key(_fn)); } /*FI*/_i=(_i)+(1); } } T0* rT255try_to_undefine(T255 *C,T0* a1,T0* a2){ T0* R=NULL; /*IF*/if (XrT67is_frozen(a1)) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT255start_position(C)); rT255error(XrT67start_position(a1),(T0 *)ms478); rT255fe_undefine(a1,a2); } else { R=rT255try_to_undefine_aux(C,a1,a2); /*IF*/if (((int)R)) { XrT204set_clients(R,(C)->_clients); } else { rT255fe_undefine(a1,a2); } /*FI*/} /*FI*/return R; } T0* rT255try_to_undefine_aux(T255 *C,T0* a1,T0* a2){ T0* R=NULL; rT255error(rT255start_position(C),(T0 *)ms1533); rT255fe_undefine(a1,a2); return R; } void rT255set_header_comment(T255 *C,T0* a1){ /*IF*/if ((((int)a1))&&((rT59count((T59*)a1))>(1))) { C->_end_comment=a1; } /*FI*/} void rT255mapping_c_name(T255 *C){ rT50mapping_c((T50*)(C)->_base_class); XrT67mapping_c(rT255first_name(C)); } int rT255can_hide(T255 *C,T0* a1,T0* a2){ int R=0; int _ne=0; _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/; /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) { /*IF*/if (((!((C)->_result_type))||(!(XrT62result_type(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT255error(rT255start_position(C),(T0 *)ms497); } /*FI*/} /*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT62arguments(a1))) { /*IF*/if (((!((C)->_arguments))||(!(XrT62arguments(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT255error(rT255start_position(C),(T0 *)ms498); } else if ((rT92count((T92*)(C)->_arguments))!=(rT92count((T92*)XrT62arguments(a1)))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT255error(rT255start_position(C),(T0 *)ms499); } /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_result_type)) { /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms500); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT58run_time_mark(((T261*)a2)->_current_type)); rT45error((T45*)oRBC27eh,(T0 *)ms501); } /*FI*/} /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_arguments)) { /*IF*/if (!(rT92is_a_in((T92*)(C)->_arguments,XrT62arguments(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT255start_position(C)); (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms502); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT58run_time_mark(((T261*)a2)->_current_type)); rT45error((T45*)oRBC27eh,(T0 *)ms503); } /*FI*/} /*FI*/} /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0); return R; } T0* rT255run_ensure(/*C*/T0* a1){ T0* R=NULL; T0* _r=NULL; rT158clear((T158*)oRBC62assertion_collector); rT50collect_for((T50*)XrT58base_class(XrT262current_type(a1)),1002,XrT262name(a1)); _r=rT255runnable(oRBC62assertion_collector,XrT262current_type(a1),a1); /*IF*/if (((int)_r)) { {T157 *n=((T157*)se_new(157)); rT157from_runnable(n,_r); R=(T0 *)n;} } /*FI*/return R; } T0* rT255base_class_name(T255 *C){ T0* R=NULL; R=((T50*)(C)->_base_class)->_base_class_name; return R; } void rT255set_rescue_compound(T255 *C,T0* a1){ /*IF*/if ((((int)a1))&&(/*(IRF4*/0/*)*/)) { rT255error(rT255start_position(C),(T0 *)ms397); } /*FI*/C->_rescue_compound=a1; } void rT255make_e_feature(T255 *C,T0* a1,T0* a2){ C->_names=a1; C->_result_type=a2; } void rT255make_routine(T255 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){ rT255make_e_feature(C,a1,NULL); C->_header_comment=a4; C->_arguments=a2; C->_obsolete_mark=a3; C->_require_assertion=a5; } void rT255make(T255 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6,T0* a7){ rT255make_routine(C,a1,a2,a3,a4,a5); C->_local_vars=a6; C->_routine_body=a7; C->_use_current_state=1015; } void rT250warning(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45warning((T45*)oRBC27eh,a2); } T0* rT250current_type(T250 *C){ T0* R=NULL; /*IF*/if (((int)(C)->_run_compound)) { R=((T140*)(C)->_run_compound)->_current_type; } /*FI*/return R; } void rT250fatal_error(/*C*/T0* a1){ (/*UT*/(void)(T45*)oRBC27eh); rT45fatal_error(a1); } T0* rT250to_runnable(T250 *C,T0* a1){ T0* R=NULL; T0* _e=NULL; /*IF*/if (!((C)->_run_compound)) { C->_run_compound=a1; _e=XrT68to_runnable((C)->_left_side,rT250current_type(C)); /*IF*/if (!(_e)) { rT250error(XrT68start_position((C)->_left_side),(T0 *)ms1287); } else { C->_left_side=_e; } /*FI*//*IF*/if ((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0)) { _e=XrT68to_runnable((C)->_right_side,rT250current_type(C)); /*IF*/if (!(_e)) { rT250error(XrT68start_position((C)->_right_side),(T0 *)ms1288); } else { C->_right_side=_e; } /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0))&&(XrT58is_a(XrT58run_type(rT250right_type(C)),XrT58run_type(rT250left_type(C))))) { /*IF*/if (!(XrT68is_current((C)->_right_side))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_type(rT250right_type(C),(T0 *)ms1294); (/*UT*/(void)(T45*)oRBC27eh); rT45add_type(rT250left_type(C),(T0 *)ms1295); rT250warning(rT250start_position(C),(T0 *)ms1296); } /*FI*/} /*FI*//*(IRF3*/(/*UT*/(void)(T45*)oRBC27eh); /*(IRF3*/(((T7*)oRBC45explanation)->_count)=(0); /*)*/rT47clear((T47*)rT45positions()); /*)*//*IF*/if (!(XrT58is_reference(XrT58run_type(rT250left_type(C))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_type(XrT58run_type(rT250left_type(C)),(T0 *)ms1297); rT250error(rT250start_position(C),(T0 *)ms1298); } /*FI*//*IF*/if ((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0)) { R=(T0 *)C; } /*FI*/} else { {T250 *n=((T250*)se_new(250)); rT250make(n,(C)->_left_side,(C)->_right_side); R=(T0 *)n;} R=rT250to_runnable((T250*)R,a1); } /*FI*/return R; } T0* rT250left_type(T250 *C){ T0* R=NULL; R=XrT68result_type((C)->_left_side); return R; } void rT250error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } T0* rT250add_comment(T250 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) { R=(T0 *)C; } /*AF*/else { {T217 *n=((T217*)se_new(217)); rT217make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } T0* rT250start_position(T250 *C){ T0* R=NULL; R=XrT68start_position((C)->_left_side); return R; } int rT250use_current(T250 *C){ int R=0; /*IF*/if (XrT68use_current((C)->_left_side)) { R=1; } else { R=XrT68use_current((C)->_right_side); } /*FI*/return R; } void rT250compile_to_c(T250 *C){ int _i=0; T0* _run=NULL; _run=((T261*)XrT58run_class(XrT68result_type((C)->_left_side)))->_running; /*IF*/if ((!(_run))||(rT264empty((T264*)_run))) { XrT68compile_to_c((C)->_left_side); rT43put_string((T43*)oRBC27cpp,(T0 *)ms1362); } else { XrT68compile_to_c((C)->_left_side); rT43put_character((T43*)oRBC27cpp,'\75'); /*IF*/if (XrT58is_reference(XrT58run_type(rT250right_type(C)))) { /*IF*/if (XrT68is_current((C)->_right_side)) { rT43put_string((T43*)oRBC27cpp,(T0 *)ms1363); } /*FI*/XrT68compile_to_c((C)->_right_side); } else { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT250start_position(C)); rT250fatal_error((T0 *)ms1364); } /*FI*/rT43put_string((T43*)oRBC27cpp,(T0 *)ms1365); XrT68compile_to_c((C)->_left_side); rT43put_string((T43*)oRBC27cpp,(T0 *)ms1366); XrT68compile_to_c((C)->_left_side); rT43put_string((T43*)oRBC27cpp,(T0 *)ms1367); rT43put_string((T43*)oRBC27cpp,(T0 *)ms1368); _i=((T264*)_run)->_lower; while (!((_i)>(((T264*)_run)->_upper))) { rT43put_string((T43*)oRBC27cpp,(T0 *)ms1369); rT43put_integer((T43*)oRBC27cpp,((T261*)rT264item((T264*)_run,_i))->_id); rT43put_string((T43*)oRBC27cpp,(T0 *)ms1370); _i=(_i)+(1); } rT43put_string((T43*)oRBC27cpp,(T0 *)ms1371); XrT68compile_to_c((C)->_left_side); rT43put_string((T43*)oRBC27cpp,(T0 *)ms1372); } /*FI*/} T0* rT250right_type(T250 *C){ T0* R=NULL; R=XrT68result_type((C)->_right_side); return R; } void rT250make(T250 *C,T0* a1,T0* a2){ C->_left_side=a1; C->_right_side=a2; } T0* rT221twin(T221 *C){ T0* R=NULL; /*IF*//*AF*//*AE*/ R=(T0 *)se_new(C->id); AF_1 rT221copy((T221*)R,(T0 *)C); AF_0 /*FI*/return R; } int rT221is_static(T221 *C){ int R=0; R=XrT68is_static((C)->_expression); /*IF*/if (R) { C->_static_value_mem=XrT68static_value_mem((C)->_expression); } /*FI*/return R; } int rT221static_value(T221 *C){ int R=0; R=(C)->_static_value_mem; return R; } T0* rT221to_runnable(T221 *C,T0* a1){ T0* R=NULL; /*IF*/if (!((C)->_current_type)) { C->_current_type=a1; C->_expression=XrT68to_runnable((C)->_expression,a1); R=(T0 *)C; } else { R=rT221twin(C); /*(IRF3*/(((T221*)R)->_current_type)=(NULL); /*)*/R=rT221to_runnable((T221*)R,a1); } /*FI*/return R; } void rT221error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } int rT221c_simple(T221 *C){ int R=0; R=XrT68c_simple((C)->_expression); return R; } T0* rT221add_comment(T221 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) { R=(T0 *)C; } else { {T221 *n=((T221*)se_new(221)); rT221make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } T0* rT221result_type(T221 *C){ T0* R=NULL; R=XrT68result_type((C)->_expression); return R; } T0* rT221start_position(T221 *C){ T0* R=NULL; R=XrT68start_position((C)->_expression); return R; } int rT221use_current(T221 *C){ int R=0; R=XrT68use_current((C)->_expression); return R; } int rT221can_be_dropped(T221 *C){ int R=0; R=XrT68can_be_dropped((C)->_expression); return R; } void rT221compile_to_c_old(T221 *C){ XrT68compile_to_c_old((C)->_expression); } void rT221compile_to_c(T221 *C){ XrT68compile_to_c((C)->_expression); } int rT221to_integer(T221 *C){ int R=0; rT221error(rT221start_position(C),(T0 *)ms169); return R; } T0* rT221written_in(T221 *C){ T0* R=NULL; T0* _sp=NULL; _sp=rT221start_position(C); /*IF*/if (((int)_sp)) { R=((T46*)_sp)->_base_class_name; } /*FI*/return R; } void rT221copy(T221 *C,T0* a1){ /*IF*//*AF*//*AE*/ memcpy(C,a1,s[C->id]); /*FI*/} int rT221is_a(T221 *C,T0* a1){ int R=0; R=XrT58is_a(XrT58run_type(rT221result_type(C)),XrT58run_type(XrT68result_type(a1))); /*IF*/if (!(R)) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT221start_position(C)); rT221error(XrT68start_position(a1),(T0 *)ms1289); } /*FI*/return R; } void rT221make(T221 *C,T0* a1,T0* a2){ C->_expression=a1; C->_comment=a2; } T0* rT257first_name(T257 *C){ T0* R=NULL; R=rT128item((T128*)(C)->_names,1); return R; } void rT257fatal_error(/*C*/T0* a1){ (/*UT*/(void)(T45*)oRBC27eh); rT45fatal_error(a1); } T0* rT257to_run_feature(T257 *C,T0* a1,T0* a2){ T0* R=NULL; {T284 *n=((T284*)se_new(284)); rT284make(n,a1,a2,(T0 *)C); R=(T0 *)n;} return R; } void rT257error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } void rT257fe_undefine(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms479); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT67to_string(a1)); (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms480); (/*UT*/(void)(T45*)oRBC27eh); rT45append(((T48*)((T50*)a2)->_base_class_name)->_to_string); rT257fatal_error((T0 *)ms481); } int rT257is_merge_with(T257 *C,T0* a1,T0* a2){ int R=0; int _ne=0; _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/; /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) { /*IF*/if (((!((C)->_result_type))||(!(XrT62result_type(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT257error(rT257start_position(C),(T0 *)ms484); } /*FI*/} /*FI*//*IF*/if (((T0 *)/*(IRF4*/NULL/*)*/)!=((T0 *)XrT62arguments(a1))) { /*IF*/if (((!(/*(IRF4*/NULL/*)*/))||(!(XrT62arguments(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT257error(rT257start_position(C),(T0 *)ms485); } else if ((rT92count((T92*)/*(IRF4*/NULL/*)*/))!=(rT92count((T92*)XrT62arguments(a1)))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT257error(rT257start_position(C),(T0 *)ms486); } /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_result_type)) { /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) { rT45error((T45*)oRBC27eh,(T0 *)ms487); } /*FI*/} /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)/*(IRF4*/NULL/*)*/)) { /*IF*/if (!(rT92is_a_in((T92*)/*(IRF4*/NULL/*)*/,XrT62arguments(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT257error(rT257start_position(C),(T0 *)ms490); } /*FI*/} /*FI*/} /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0); return R; } T0* rT257start_position(T257 *C){ T0* R=NULL; R=XrT67start_position(rT257first_name(C)); return R; } void rT257collect_for(/*C*/int a1){ /*IF*/if ((a1)==(1001)) { /*IF*/if (((int)/*(IRF4*/NULL/*)*/)) { /*IF*/if (!(rT269fast_has((T269*)oRBC62require_collector,/*(IRF4*/NULL/*)*/))) { rT269add_last((T269*)oRBC62require_collector,/*(IRF4*/NULL/*)*/); } /*FI*/} /*FI*/} else { /*IF*/if (((int)/*(IRF4*/NULL/*)*/)) { rT157add_into((T157*)/*(IRF4*/NULL/*)*/,oRBC62assertion_collector); } /*FI*/} /*FI*/} void rT257add_into(T257 *C,T0* a1){ T0* _fn=NULL; int _i=0; C->_base_class=rT46base_class((T46*)XrT67start_position(rT128item((T128*)(C)->_names,1))); _i=1; while (!((_i)>(rT128count((T128*)(C)->_names)))) { _fn=rT128item((T128*)(C)->_names,_i); /*IF*/if (rT61has((T61*)a1,XrT67to_key(_fn))) { _fn=XrT62first_name(rT61at((T61*)a1,XrT67to_key(_fn))); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT67start_position(_fn)); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT67start_position(rT128item((T128*)(C)->_names,_i))); rT45error((T45*)oRBC27eh,(T0 *)ms414); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT67to_string(_fn)); rT45error((T45*)oRBC27eh,(T0 *)ms36); } else { rT61put((T61*)a1,(T0 *)C,XrT67to_key(_fn)); } /*FI*/_i=(_i)+(1); } } T0* rT257try_to_undefine(T257 *C,T0* a1,T0* a2){ T0* R=NULL; /*IF*/if (XrT67is_frozen(a1)) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT257start_position(C)); rT257error(XrT67start_position(a1),(T0 *)ms478); rT257fe_undefine(a1,a2); } else { R=rT257try_to_undefine_aux(C,a1,a2); /*IF*/if (((int)R)) { XrT204set_clients(R,(C)->_clients); } else { rT257fe_undefine(a1,a2); } /*FI*/} /*FI*/return R; } T0* rT257try_to_undefine_aux(T257 *C,T0* a1,T0* a2){ T0* R=NULL; (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT257start_position(C)); rT257error(XrT67start_position(a1),(T0 *)ms1532); rT257fe_undefine(a1,a2); return R; } int rT257can_hide(T257 *C,T0* a1,T0* a2){ int R=0; int _ne=0; _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/; /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) { /*IF*/if (((!((C)->_result_type))||(!(XrT62result_type(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT257error(rT257start_position(C),(T0 *)ms497); } /*FI*/} /*FI*//*IF*/if (((T0 *)/*(IRF4*/NULL/*)*/)!=((T0 *)XrT62arguments(a1))) { /*IF*/if (((!(/*(IRF4*/NULL/*)*/))||(!(XrT62arguments(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT257error(rT257start_position(C),(T0 *)ms498); } else if ((rT92count((T92*)/*(IRF4*/NULL/*)*/))!=(rT92count((T92*)XrT62arguments(a1)))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT257error(rT257start_position(C),(T0 *)ms499); } /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_result_type)) { /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms500); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT58run_time_mark(((T261*)a2)->_current_type)); rT45error((T45*)oRBC27eh,(T0 *)ms501); } /*FI*/} /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)/*(IRF4*/NULL/*)*/)) { /*IF*/if (!(rT92is_a_in((T92*)/*(IRF4*/NULL/*)*/,XrT62arguments(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT257start_position(C)); (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms502); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT58run_time_mark(((T261*)a2)->_current_type)); rT45error((T45*)oRBC27eh,(T0 *)ms503); } /*FI*/} /*FI*/} /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0); return R; } T0* rT257base_class_name(T257 *C){ T0* R=NULL; R=((T50*)(C)->_base_class)->_base_class_name; return R; } void rT257make(T257 *C,T0* a1,T0* a2){ C->_names=a1; C->_result_type=a2; } T0* rT227current_type(T227 *C){ T0* R=NULL; R=rT232current_type((T232*)(C)->_when_list); return R; } T0* rT227to_runnable_integer(T227 *C,T0* a1){ T0* R=NULL; T0* _when_item=NULL; int _i=0; int _ne=0; /*IF*/if (!((C)->_when_list)) { _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/; C->_when_list=a1; /*IF*/if (!((C)->_list)) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(((T226*)rT227e_inspect(C))->_start_position); rT227error((C)->_start_position,(T0 *)ms1262); } else { _i=XrT231lower((C)->_list); while (!(((_i)>(XrT231upper((C)->_list)))||(((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))>(0)))) { _when_item=XrT229to_runnable_integer(XrT231item((C)->_list,_i),(T0 *)C); /*IF*/if (!(_when_item)) { rT227error((C)->_start_position,(T0 *)ms1259); } else { XrT231put((C)->_list,_when_item,_i); } /*FI*/_i=(_i)+(1); } } /*FI*//*IF*/if (((int)(C)->_compound)) { C->_compound=rT140to_runnable((T140*)(C)->_compound,rT227current_type(C)); /*IF*/if (!((C)->_compound)) { rT227error((C)->_start_position,(T0 *)ms1259); } /*FI*/} /*FI*/R=(T0 *)C; } else { {T227 *n=((T227*)se_new(227)); rT227from_e_when(n,(T0 *)C); R=(T0 *)n;} R=rT227to_runnable_integer((T227*)R,a1); } /*FI*/return R; }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.