This is compile_to_c10.c in view mode; [Download] [Up]
/* ANSI C code generated by SmallEiffel. */ /* -- SmallEiffel -- Release (- 0.91) -- 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" /*WHEN_ITEM_1*/T0* rT235current_type(T235 *C){ T0* R=NULL; R=rT234current_type((T234*)(C)->_e_when); return R; } /*WHEN_ITEM_1*/T0* rT235twin(T235 *C){ T0* R=NULL; /*IF*//*AF*//*AE*/ R=(T0 *)se_new(C->id);AF_1 rT235copy((T235*)R,(T0 *)C); AF_0 /*FI*/return R; } /*WHEN_ITEM_1*/T0* rT235to_runnable_character(T235 *C,T0* a1){ T0* R=NULL; T0* _e=NULL; /*IF*/if (!((C)->_e_when)) { C->_e_when=a1; _e=XrT72to_runnable((C)->_expression,rT235current_type(C)); /*IF*/if ((((int)_e))&&(XrT62is_character(XrT72result_type(_e)))) { C->_expression=_e; C->_expression_value=XrT72to_integer((C)->_expression); rT234add_when_item_1((T234*)(C)->_e_when,(T0 *)C); } else { rT235error(XrT72start_position((C)->_expression),(T0 *)ms2_235); } /*FI*/R=(T0 *)C; } else { {T235 *n=((T235*)se_new(235)); /*[IRF3:make*//*AW*/(n)->_expression=((C)->_expression);/*]*/ R=(T0 *)n;} R=rT235to_runnable_character((T235*)R,a1); } /*FI*/return R; } /*WHEN_ITEM_1*/T0* rT235to_runnable_integer(T235 *C,T0* a1){ T0* R=NULL; T0* _e=NULL; /*IF*/if (!((C)->_e_when)) { C->_e_when=a1; _e=XrT72to_runnable((C)->_expression,rT235current_type(C)); /*IF*/if ((((int)_e))&&(XrT62is_integer(XrT72result_type(_e)))) { C->_expression=_e; C->_expression_value=XrT72to_integer((C)->_expression); rT234add_when_item_1((T234*)(C)->_e_when,(T0 *)C); } else { rT235error(XrT72start_position((C)->_expression),(T0 *)ms1_235); } /*FI*/R=(T0 *)C; } else { {T235 *n=((T235*)se_new(235)); /*[IRF3:make*//*AW*/(n)->_expression=((C)->_expression);/*]*/ R=(T0 *)n;} R=rT235to_runnable_integer((T235*)R,a1); } /*FI*/return R; } /*WHEN_ITEM_1*/void rT235error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*WHEN_ITEM_1*/T0* rT235start_position(T235 *C){ T0* R=NULL; R=XrT72start_position((C)->_expression); return R; } /*WHEN_ITEM_1*/void rT235copy(T235 *C,T0* a1){ /*IF*//*AF*//*AE*/ memcpy(C,a1,s[C->id]); /*FI*/}/*E_VOID*/T0* rT177twin(T177 *C){ T0* R=NULL; /*IF*//*AF*//*AE*/ R=(T0 *)se_new(C->id);AF_1 rT177copy((T177*)R,(T0 *)C); AF_0 /*FI*/return R; } /*E_VOID*/int rT177static_value(T177 *C){ int R=0; R=(C)->_static_value_mem; return R; } /*E_VOID*/T0* rT177to_runnable(T177 *C,T0* a1){ T0* R=NULL; /*IF*/if (!((C)->_current_type)) { C->_current_type=a1; R=(T0 *)C; } else { R=rT177twin(C); /*[IRF3:set_current_type*//*AW*/((T177*)R)->_current_type=(a1);/*]*/ } /*FI*/return R; } /*E_VOID*/void rT177error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*E_VOID*/T0* rT177add_comment(T177 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT63count((T63*)a1))==(0))) { R=(T0 *)C; } else { {T228 *n=((T228*)se_new(228)); rT228make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } int ofBC177result_type=0; T0*oRBC177result_type; /*E_VOID*/T0* rT177result_type(/*C*/void){ if (ofBC177result_type==0){ T0* R=NULL; ofBC177result_type=1; {T114 *n=((T114*)se_new(114)); rT114make(n,NULL); R=(T0 *)n;} oRBC177result_type=R;} return oRBC177result_type;} /*E_VOID*/T0* rT177to_key(T177 *C){ T0* R=NULL; R=(C)->_to_string; return R; } /*E_VOID*/int rT177to_integer(T177 *C){ int R=0; rT177error((C)->_start_position,(T0 *)ms104_27); return R; } /*E_VOID*/void rT177copy(T177 *C,T0* a1){ /*IF*//*AF*//*AE*/ memcpy(C,a1,s[C->id]); /*FI*/}/*E_VOID*/int rT177is_a(T177 *C,T0* a1){ int R=0; R=XrT62is_a(rT114run_type((T114*)rT177result_type()),XrT62run_type(XrT72result_type(a1))); /*IF*/if (!(R)) { rT48add_position((C)->_start_position); rT177error(XrT72start_position(a1),(T0 *)ms2_72); } /*FI*/return R; } /*E_VOID*/void rT177make(T177 *C,T0* a1){ C->_start_position=a1; C->_to_string=(T0 *)ms121_27; }/*PROC_CALL_N*/T0* rT185current_type(T185 *C){ T0* R=NULL; /*IF*/if (((int)(C)->_run_compound)) { R=((T142*)(C)->_run_compound)->_current_type; } /*FI*/return R; } /*PROC_CALL_N*/void rT185fatal_error(/*C*/T0* a1){ rT48fatal_error(a1); }/*PROC_CALL_N*/void rT185cpc_to_runnable(T185 *C,T0* a1){ T0* _rc=NULL; T0* _t=NULL; _t=XrT72to_runnable((C)->_target,a1); /*IF*/if (!(_t)) { rT48add_position(XrT72start_position((C)->_target)); rT185fatal_error((T0 *)ms1_169); } /*FI*/C->_target=_t; _rc=XrT62run_class(XrT72result_type((C)->_target)); C->_run_feature=rT269get_rf((T269*)_rc,(T0 *)C); }/*PROC_CALL_N*/void rT185to_runnable_0(T185 *C,T0* a1){ C->_run_compound=a1; rT185cpc_to_runnable(C,rT185current_type(C)); /*IF*/if (((int)/*XrT*RUN_FEATURE*/((T274*)(C)->_run_feature)->_result_type)) { rT48add_position(XrT268start_position((C)->_run_feature)); rT185error(/*XrT*FEATURE_NAME*/((T70*)(C)->_feature_name)->_start_position,(T0 *)ms1_182); } /*FI*/}/*PROC_CALL_N*/T0* rT185to_runnable(T185 *C,T0* a1){ T0* R=NULL; T0* _a=NULL; /*IF*/if (!((C)->_run_compound)) { rT185to_runnable_0(C,a1); /*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { _a=rT175to_runnable((T175*)(C)->_arguments,rT185current_type(C)); /*IF*/if (!(_a)) { rT185error(rT175start_position((T175*)(C)->_arguments),(T0 *)ms1_185); } else { C->_arguments=_a; } /*FI*/} /*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { rT175match_with((T175*)(C)->_arguments,(C)->_run_feature); } /*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { R=(T0 *)C; } /*FI*/} else { {T185 *n=((T185*)se_new(185)); rT185make(n,(C)->_target,(C)->_feature_name,(C)->_arguments); R=(T0 *)n;} R=rT185to_runnable((T185*)R,a1); } /*FI*/return R; } /*PROC_CALL_N*/void rT185error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*PROC_CALL_N*/T0* rT185add_comment(T185 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT63count((T63*)a1))==(0))) { R=(T0 *)C; } /*AF*/else { {T224 *n=((T224*)se_new(224)); rT224make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } /*PROC_CALL_N*/T0* rT185start_position(T185 *C){ T0* R=NULL; R=/*XrT*FEATURE_NAME*/((T70*)(C)->_feature_name)->_start_position; return R; } /*PROC_CALL_N*/int rT185use_current(T185 *C){ int R=0; /*IF*/if ((rT185arg_count(C))>(0)) { R=rT175use_current((T175*)(C)->_arguments); } /*FI*//*IF*/if (R) { } else if (XrT72is_current((C)->_target)) { R=XrT268use_current((C)->_run_feature); } else { R=XrT72use_current((C)->_target); } /*FI*/return R; } /*PROC_CALL_N*/void rT185compile_to_c(T185 *C){ T0* _dyn_rf=NULL; T0* _tt=NULL; T0* _r=NULL; rT44rs_push_position((T44*)oRBC27cpp,'3',rT185start_position(C)); rT185call_proc_call_c2c(C); rT44rs_pop_position((T44*)oRBC27cpp); }/*PROC_CALL_N*/void rT185call_proc_call_c2c(T185 *C){ T0* _tt=NULL; _tt=XrT62run_type(XrT72result_type((C)->_target)); /*IF*/if (((XrT72is_current((C)->_target))||(XrT72is_manifest_string((C)->_target)))||(XrT62is_expanded(_tt))) { rT44push_direct((T44*)oRBC27cpp,(C)->_run_feature,(C)->_target,(C)->_arguments); XrT268mapping_c((C)->_run_feature); rT44pop((T44*)oRBC27cpp); } else { rT44push_cpc((T44*)oRBC27cpp,(C)->_run_feature,((T269*)XrT62run_class(_tt))->_running,(C)->_target,(C)->_arguments); } /*FI*/}/*PROC_CALL_N*/int rT185arg_count(T185 *C){ int R=0; R=rT175count((T175*)(C)->_arguments); return R; } /*PROC_CALL_N*/void rT185make(T185 *C,T0* a1,T0* a2,T0* a3){ C->_target=a1; C->_feature_name=a2; C->_arguments=a3; }/*PROC_CALL_1*/T0* rT184current_type(T184 *C){ T0* R=NULL; /*IF*/if (((int)(C)->_run_compound)) { R=((T142*)(C)->_run_compound)->_current_type; } /*FI*/return R; } /*PROC_CALL_1*/void rT184fatal_error(/*C*/T0* a1){ rT48fatal_error(a1); }/*PROC_CALL_1*/void rT184cpc_to_runnable(T184 *C,T0* a1){ T0* _rc=NULL; T0* _t=NULL; _t=XrT72to_runnable((C)->_target,a1); /*IF*/if (!(_t)) { rT48add_position(XrT72start_position((C)->_target)); rT184fatal_error((T0 *)ms1_169); } /*FI*/C->_target=_t; _rc=XrT62run_class(XrT72result_type((C)->_target)); C->_run_feature=rT269get_rf((T269*)_rc,(T0 *)C); }/*PROC_CALL_1*/void rT184to_runnable_0(T184 *C,T0* a1){ C->_run_compound=a1; rT184cpc_to_runnable(C,rT184current_type(C)); /*IF*/if (((int)/*XrT*RUN_FEATURE*/((T274*)(C)->_run_feature)->_result_type)) { rT48add_position(XrT268start_position((C)->_run_feature)); rT184error(/*XrT*FEATURE_NAME*/((T70*)(C)->_feature_name)->_start_position,(T0 *)ms1_182); } /*FI*/}/*PROC_CALL_1*/T0* rT184to_runnable(T184 *C,T0* a1){ T0* R=NULL; T0* _a=NULL; /*IF*/if (!((C)->_run_compound)) { rT184to_runnable_0(C,a1); /*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { _a=rT175to_runnable((T175*)(C)->_arguments,rT184current_type(C)); /*IF*/if (!(_a)) { rT184error(XrT72start_position(rT184arg1(C)),(T0 *)ms1_184); } else { C->_arguments=_a; } /*FI*/} /*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { rT175match_with((T175*)(C)->_arguments,(C)->_run_feature); } /*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { R=(T0 *)C; } /*FI*/} else { {T184 *n=((T184*)se_new(184)); rT184make(n,(C)->_target,(C)->_feature_name,(C)->_arguments); R=(T0 *)n;} R=rT184to_runnable((T184*)R,a1); } /*FI*/return R; } /*PROC_CALL_1*/void rT184error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*PROC_CALL_1*/T0* rT184add_comment(T184 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT63count((T63*)a1))==(0))) { R=(T0 *)C; } /*AF*/else { {T224 *n=((T224*)se_new(224)); rT224make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } /*PROC_CALL_1*/T0* rT184arg1(T184 *C){ T0* R=NULL; R=rT175first((T175*)(C)->_arguments); return R; } /*PROC_CALL_1*/T0* rT184start_position(T184 *C){ T0* R=NULL; R=/*XrT*FEATURE_NAME*/((T70*)(C)->_feature_name)->_start_position; return R; } /*PROC_CALL_1*/int rT184use_current(T184 *C){ int R=0; T0* _s=NULL; T0* _ms=NULL; /*IF*/if (rT7is_equal((T7*)(T0 *)ms69_27,/*XrT*FEATURE_NAME*/((T70*)(C)->_feature_name)->_to_string)) { _ms=rT184arg1(C); if ((int)_ms) switch (((T0 *)_ms)->id) { case 80: break; default: _ms = NULL; };_s=((T80*)_ms)->_to_string; R=rT7has((T7*)_s,'C'); } else { R=rT184standard_use_current(C); } /*FI*/return R; } /*PROC_CALL_1*/void rT184compile_to_c(T184 *C){ T0* _dyn_rf=NULL; T0* _tt=NULL; T0* _r=NULL; rT44rs_push_position((T44*)oRBC27cpp,'3',rT184start_position(C)); rT184call_proc_call_c2c(C); rT44rs_pop_position((T44*)oRBC27cpp); }/*PROC_CALL_1*/int rT184standard_use_current(T184 *C){ int R=0; /*IF*/{/*AT*/R=rT175use_current((T175*)(C)->_arguments); } /*FI*//*IF*/if (R) { } else if (XrT72is_current((C)->_target)) { R=XrT268use_current((C)->_run_feature); } else { R=XrT72use_current((C)->_target); } /*FI*/return R; } /*PROC_CALL_1*/void rT184call_proc_call_c2c(T184 *C){ T0* _tt=NULL; _tt=XrT62run_type(XrT72result_type((C)->_target)); /*IF*/if (((XrT72is_current((C)->_target))||(XrT72is_manifest_string((C)->_target)))||(XrT62is_expanded(_tt))) { rT44push_direct((T44*)oRBC27cpp,(C)->_run_feature,(C)->_target,(C)->_arguments); XrT268mapping_c((C)->_run_feature); rT44pop((T44*)oRBC27cpp); } else { rT44push_cpc((T44*)oRBC27cpp,(C)->_run_feature,((T269*)XrT62run_class(_tt))->_running,(C)->_target,(C)->_arguments); } /*FI*/}/*PROC_CALL_1*/void rT184make(T184 *C,T0* a1,T0* a2,T0* a3){ C->_target=a1; C->_feature_name=a2; C->_arguments=a3; }/*PROC_CALL_0*/T0* rT183current_type(T183 *C){ T0* R=NULL; /*IF*/if (((int)(C)->_run_compound)) { R=((T142*)(C)->_run_compound)->_current_type; } /*FI*/return R; } /*PROC_CALL_0*/void rT183fatal_error(/*C*/T0* a1){ rT48fatal_error(a1); }/*PROC_CALL_0*/void rT183cpc_to_runnable(T183 *C,T0* a1){ T0* _rc=NULL; T0* _t=NULL; _t=XrT72to_runnable((C)->_target,a1); /*IF*/if (!(_t)) { rT48add_position(XrT72start_position((C)->_target)); rT183fatal_error((T0 *)ms1_169); } /*FI*/C->_target=_t; _rc=XrT62run_class(XrT72result_type((C)->_target)); C->_run_feature=rT269get_rf((T269*)_rc,(T0 *)C); }/*PROC_CALL_0*/void rT183to_runnable_0(T183 *C,T0* a1){ C->_run_compound=a1; rT183cpc_to_runnable(C,rT183current_type(C)); /*IF*/if (((int)/*XrT*RUN_FEATURE*/((T274*)(C)->_run_feature)->_result_type)) { rT48add_position(XrT268start_position((C)->_run_feature)); rT183error(/*XrT*FEATURE_NAME*/((T70*)(C)->_feature_name)->_start_position,(T0 *)ms1_182); } /*FI*/}/*PROC_CALL_0*/T0* rT183to_runnable(T183 *C,T0* a1){ T0* R=NULL; /*IF*/if (!((C)->_run_compound)) { rT183to_runnable_0(C,a1); /*IF*/if (((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0))&&((XrT268arg_count((C)->_run_feature))>(0))) { rT48add_position(/*XrT*FEATURE_NAME*/((T70*)(C)->_feature_name)->_start_position); rT183error(XrT268start_position((C)->_run_feature),(T0 *)ms1_183); } /*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { R=(T0 *)C; } /*FI*/} else { {T183 *n=((T183*)se_new(183)); rT183make(n,(C)->_target,(C)->_feature_name); R=(T0 *)n;} R=rT183to_runnable((T183*)R,a1); } /*FI*/return R; } /*PROC_CALL_0*/void rT183error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*PROC_CALL_0*/T0* rT183add_comment(T183 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT63count((T63*)a1))==(0))) { R=(T0 *)C; } /*AF*/else { {T224 *n=((T224*)se_new(224)); rT224make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } /*PROC_CALL_0*/T0* rT183start_position(T183 *C){ T0* R=NULL; R=/*XrT*FEATURE_NAME*/((T70*)(C)->_feature_name)->_start_position; return R; } /*PROC_CALL_0*/int rT183use_current(T183 *C){ int R=0; /*IF*//*AF*//*AE*/ /*FI*//*IF*/if (R) { } else if (XrT72is_current((C)->_target)) { R=XrT268use_current((C)->_run_feature); } else { R=XrT72use_current((C)->_target); } /*FI*/return R; } /*PROC_CALL_0*/void rT183compile_to_c(T183 *C){ T0* _dyn_rf=NULL; T0* _tt=NULL; T0* _r=NULL; rT44rs_push_position((T44*)oRBC27cpp,'3',rT183start_position(C)); rT183call_proc_call_c2c(C); rT44rs_pop_position((T44*)oRBC27cpp); }/*PROC_CALL_0*/void rT183call_proc_call_c2c(T183 *C){ T0* _tt=NULL; _tt=XrT62run_type(XrT72result_type((C)->_target)); /*IF*/if (((XrT72is_current((C)->_target))||(XrT72is_manifest_string((C)->_target)))||(XrT62is_expanded(_tt))) { rT44push_direct((T44*)oRBC27cpp,(C)->_run_feature,(C)->_target,/*(IRF4*/NULL/*)*/); XrT268mapping_c((C)->_run_feature); rT44pop((T44*)oRBC27cpp); } else { rT44push_cpc((T44*)oRBC27cpp,(C)->_run_feature,((T269*)XrT62run_class(_tt))->_running,(C)->_target,/*(IRF4*/NULL/*)*/); } /*FI*/}/*PROC_CALL_0*/void rT183make(T183 *C,T0* a1,T0* a2){ C->_target=a1; C->_feature_name=a2; }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.