ftp.nice.ch/pub/next/developer/languages/eiffel/SmallEiffel.0.91.N.bs.tar.gz#/SmallEiffel/bin_c/compile_to_c21.c

This is compile_to_c21.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"
/*EIFFEL_RUN_CONTROL*/int rT47invariant_check(T47 *C){
int R=0;
R=((C)->_level)>=(-2);
return R;
}
/*EIFFEL_RUN_CONTROL*/int rT47require_check(T47 *C){
int R=0;
R=((C)->_level)>=(-4);
return R;
}
/*EIFFEL_RUN_CONTROL*/int rT47boost(T47 *C){
int R=0;
R=((C)->_level)==(-6);
return R;
}
/*EIFFEL_RUN_CONTROL*/int rT47no_check(T47 *C){
int R=0;
R=((C)->_level)>=(-5);
return R;
}
/*EIFFEL_RUN_CONTROL*/int rT47ensure_check(T47 *C){
int R=0;
R=((C)->_level)>=(-3);
return R;
}
/*EIFFEL_RUN_CONTROL*/int rT47loop_check(T47 *C){
int R=0;
R=((C)->_level)>=(-1);
return R;
}
/*EIFFEL_RUN_CONTROL*/int rT47all_check(T47 *C){
int R=0;
R=((C)->_level)>=(0);
return R;
}
/*CHARACTER*/int rT3same_as(T3 C,char a1){
int R=0;
/*IF*/if ((C)==(a1)) {
R=1;
}
else {
{int iv1=((unsigned char)C);
if ((65<=iv1)&&(iv1<=90)) goto l462;
goto l463;
 l462: ;
R=(C)==(rT3to_upper(a1));
goto l461;
 l463: ;
if ((97<=iv1)&&(iv1<=122)) goto l464;
goto l465;
 l464: ;
R=(C)==(rT3to_lower(a1));
goto l461;
 l465: ;
 l461: ;
}
}
/*FI*/return R;
}
/*CHARACTER*/char rT3to_upper(T3 C){
char R=0;
/*IF*/if ((((unsigned char)C))<(97)) {
R=C;
}
 else if ((((unsigned char)C))>(122)) {
R=C;
}
else {
R=(((unsigned char)C))-(32);
}
/*FI*/return R;
}
/*CHARACTER*/int rT3is_digit(T3 C){
int R=0;
{int iv1=C;
if ((48<=iv1)&&(iv1<=57)) goto l467;
goto l468;
 l467: ;
R=1;
goto l466;
 l468: ;
 l466: ;
}
return R;
}
/*CHARACTER*/int rT3is_letter(T3 C){
int R=0;
{int iv1=C;
if ((65<=iv1)&&(iv1<=90)) goto l470;
if ((97<=iv1)&&(iv1<=122)) goto l470;
goto l471;
 l470: ;
R=1;
goto l469;
 l471: ;
 l469: ;
}
return R;
}
/*CHARACTER*/int rT3is_separator(T3 C){
int R=0;
{int iv1=C;
if (0 == iv1) goto l473;
if ((9<=iv1)&&(iv1<=10)) goto l473;
if (13 == iv1) goto l473;
if (32 == iv1) goto l473;
goto l474;
 l473: ;
R=1;
goto l472;
 l474: ;
 l472: ;
}
return R;
}
/*CHARACTER*/int rT3_ix6261(T3 C,char a1){
int R=0;
R=(((unsigned char)C))>=(((unsigned char)a1));
return R;
}
/*CHARACTER*/int rT3_ix60(T3 C,char a1){
int R=0;
R=(((unsigned char)C))<(((unsigned char)a1));
return R;
}
/*CHARACTER*/int rT3value(T3 C){
int R=0;
R=(((unsigned char)C))-(48);
return R;
}
/*CHARACTER*/char rT3to_lower(T3 C){
char R=0;
/*IF*/if ((((unsigned char)C))<(65)) {
R=C;
}
 else if ((((unsigned char)C))>(90)) {
R=C;
}
else {
R=(((unsigned char)C))+(32);
}
/*FI*/return R;
}
int ofBC27type_pointer=0;
T0*oRBC27type_pointer;
/*ADDRESS_OF*/T0* rT178type_pointer(/*C*/void){
if (ofBC27type_pointer==0){
T0* R=NULL;
ofBC27type_pointer=1;
{T115 *n=((T115*)se_new(115));
rT115make(n,NULL);
R=(T0 *)n;}
oRBC27type_pointer=R;}
return oRBC27type_pointer;}
/*ADDRESS_OF*/int rT178static_value(T178 *C){
int R=0;
R=(C)->_static_value_mem;
return R;
}
/*ADDRESS_OF*/T0* rT178to_runnable(T178 *C,T0* a1){
T0* R=NULL;
/*IF*/if (!((C)->_current_type)) {
C->_current_type=a1;
C->_rf=rT269get_feature((T269*)XrT62run_class(a1),(C)->_feature_name);
/*IF*/if (!((C)->_rf)) {
rT178error(rT178start_position(C),(T0 *)ms3_178);
}
/*FI*/R=(T0 *)C;
}
else {
{T178 *n=((T178*)se_new(178));
/*[IRF3:make*//*AW*/(n)->_feature_name=((C)->_feature_name);/*]*/
R=(T0 *)n;}
R=rT178to_runnable((T178*)R,a1);
}
/*FI*/return R;
}
/*ADDRESS_OF*/void rT178error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*ADDRESS_OF*/T0* rT178add_comment(T178 *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;
}
/*ADDRESS_OF*/T0* rT178start_position(T178 *C){
T0* R=NULL;
R=/*XrT*FEATURE_NAME*/((T70*)(C)->_feature_name)->_start_position;
return R;
}
/*ADDRESS_OF*/void rT178compile_to_c(T178 *C){
rT44put_string((T44*)oRBC27cpp,(T0 *)ms2_178);
XrT268address_of((C)->_rf);
rT44put_character((T44*)oRBC27cpp,'\51');
}/*ADDRESS_OF*/int rT178to_integer(T178 *C){
int R=0;
rT178error(rT178start_position(C),(T0 *)ms104_27);
return R;
}
/*ADDRESS_OF*/int rT178is_a(T178 *C,T0* a1){
int R=0;
R=XrT62is_a(rT115run_type((T115*)/*(IRF4*/rT178type_pointer()/*)*/),XrT62run_type(XrT72result_type(a1)));
/*IF*/if (!(R)) {
rT48add_position(rT178start_position(C));
rT178error(XrT72start_position(a1),(T0 *)ms2_72);
}
/*FI*/return R;
}
/*DEFERRED_FUNCTION*/T0* rT211first_name(T211 *C){
T0* R=NULL;
R=rT130item((T130*)(C)->_names,1);
return R;
}
/*DEFERRED_FUNCTION*/T0* rT211to_run_feature(T211 *C,T0* a1,T0* a2){
T0* R=NULL;
{T286 *n=((T286*)se_new(286));
rT286make(n,a1,a2,(T0 *)C);
R=(T0 *)n;}
return R;
}
/*DEFERRED_FUNCTION*/void rT211error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*DEFERRED_FUNCTION*/int rT211is_merge_with(T211 *C,T0* a1,T0* a2){
int R=0;
int _ne=0;
_ne=/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/;
/*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)/*XrT*E_FEATURE*/((T148*)a1)->_result_type)) {
/*IF*/if (((!((C)->_result_type))||(!(/*XrT*E_FEATURE*/((T148*)a1)->_result_type)))) {
rT48add_position(XrT66start_position(a1));
rT211error(rT211start_position(C),(T0 *)ms1_66);
}
/*FI*/}
/*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT66arguments(a1))) {
/*IF*/if (((!((C)->_arguments))||(!(XrT66arguments(a1))))) {
rT48add_position(XrT66start_position(a1));
rT211error(rT211start_position(C),(T0 *)ms2_66);
}
 else if ((rT97count((T97*)(C)->_arguments))!=(rT97count((T97*)XrT66arguments(a1)))) {
rT48add_position(XrT66start_position(a1));
rT211error(rT211start_position(C),(T0 *)ms3_66);
}
/*FI*/}
/*FI*//*IF*/if (((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) {
/*IF*/if (((int)(C)->_result_type)) {
/*IF*/if (!(XrT62is_a_in((C)->_result_type,/*XrT*E_FEATURE*/((T148*)a1)->_result_type,a2))) {
rT48error((T48*)oRBC27eh,(T0 *)ms13_66);
}
/*FI*/}
/*FI*/}
/*FI*//*IF*/if (((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) {
/*IF*/if (((int)(C)->_arguments)) {
/*IF*/if (!(rT97is_a_in((T97*)(C)->_arguments,XrT66arguments(a1),a2))) {
rT48add_position(XrT66start_position(a1));
rT211error(rT211start_position(C),(T0 *)ms13_66);
}
/*FI*/}
/*FI*/}
/*FI*/R=((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0);
return R;
}
/*DEFERRED_FUNCTION*/T0* rT211start_position(T211 *C){
T0* R=NULL;
R=/*XrT*FEATURE_NAME*/((T70*)rT211first_name(C))->_start_position;
return R;
}
/*DEFERRED_FUNCTION*/void rT211collect_for(T211 *C,int a1){
/*IF*/if ((a1)==(1001)) {
/*IF*/if (((int)(C)->_require_assertion)) {
/*IF*/if (!(rT276fast_has((T276*)oRBC66require_collector,(C)->_require_assertion))) {
rT276add_last((T276*)oRBC66require_collector,(C)->_require_assertion);
}
/*FI*/}
/*FI*/}
else {
/*IF*/if (((int)(C)->_ensure_assertion)) {
rT161add_into((T161*)(C)->_ensure_assertion,oRBC66assertion_collector);
}
/*FI*/}
/*FI*/}/*DEFERRED_FUNCTION*/void rT211add_into(T211 *C,T0* a1){
T0* _fn=NULL;
int _i=0;
C->_base_class=rT49base_class((T49*)/*XrT*FEATURE_NAME*/((T70*)rT130item((T130*)(C)->_names,1))->_start_position);
_i=1;
while (!((_i)>(rT130count((T130*)(C)->_names)))) {
_fn=rT130item((T130*)(C)->_names,_i);
/*IF*/if (rT65has((T65*)a1,XrT71to_key(_fn))) {
_fn=XrT66first_name(rT65at((T65*)a1,XrT71to_key(_fn)));
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)_fn)->_start_position);
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)rT130item((T130*)(C)->_names,_i))->_start_position);
rT48error((T48*)oRBC27eh,(T0 *)ms12_66);
rT48append(/*XrT*FEATURE_NAME*/((T70*)_fn)->_to_string);
rT48error((T48*)oRBC27eh,(T0 *)ms102_27);
}
else {
rT65put((T65*)a1,(T0 *)C,XrT71to_key(_fn));
}
/*FI*/_i=(_i)+(1);
}
}/*DEFERRED_FUNCTION*/T0* rT211try_to_undefine(T211 *C,T0* a1,T0* a2){
T0* R=NULL;
XrT71undefine_in(a1,a2);
R=rT211try_to_undefine_aux(C,a1,a2);
/*IF*/if (((int)R)) {
/*XrT*DEFERRED_ROUTINE*//*[IRF3:set_clients*//*AW*/((T210*)R)->_clients=((C)->_clients);/*]*/
}
else {
rT53fatal_undefine((T53*)a2,a1);
}
/*FI*/return R;
}
/*DEFERRED_FUNCTION*/T0* rT211try_to_undefine_aux(T211 *C,T0* a1,T0* a2){
T0* R=NULL;
R=(T0 *)C;
return R;
}
/*DEFERRED_FUNCTION*/void rT211set_header_comment(T211 *C,T0* a1){
/*IF*/if ((((int)a1))&&((rT63count((T63*)a1))>(1))) {
C->_end_comment=a1;
}
/*FI*/}/*DEFERRED_FUNCTION*/void rT211from_effective(T211 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6){
{T130 *n=((T130*)se_new(130));
rT130make(n,ma(131,0,1,a1));
C->_names=(T0 *)n;}
rT211make(C,(C)->_names,a2,a3,NULL,NULL,a4);
/*[IRF3:set_ensure_assertion*//*AW*/(C)->_ensure_assertion=(a5);/*]*/
C->_base_class=a6;
}/*DEFERRED_FUNCTION*/int rT211stupid_switch(/*C*/T0* a1,T0* a2){
int R=0;
return R;
}
/*DEFERRED_FUNCTION*/int rT211can_hide(T211 *C,T0* a1,T0* a2){
int R=0;
/*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)/*XrT*E_FEATURE*/((T148*)a1)->_result_type)) {
/*IF*/if (((!((C)->_result_type))||(!(/*XrT*E_FEATURE*/((T148*)a1)->_result_type)))) {
rT48add_position(XrT66start_position(a1));
rT211error(rT211start_position(C),(T0 *)ms4_66);
}
/*FI*/}
/*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT66arguments(a1))) {
/*IF*/if (((!((C)->_arguments))||(!(XrT66arguments(a1))))) {
rT48add_position(XrT66start_position(a1));
rT211error(rT211start_position(C),(T0 *)ms5_66);
}
 else if ((rT97count((T97*)(C)->_arguments))!=(rT97count((T97*)XrT66arguments(a1)))) {
rT48add_position(XrT66start_position(a1));
rT211error(rT211start_position(C),(T0 *)ms6_66);
}
/*FI*/}
/*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
/*IF*/if (((int)(C)->_result_type)) {
/*IF*/if (!(XrT62is_a_in((C)->_result_type,/*XrT*E_FEATURE*/((T148*)a1)->_result_type,a2))) {
rT48append((T0 *)ms14_66);
rT48append(XrT62run_time_mark(((T269*)a2)->_current_type));
rT48error((T48*)oRBC27eh,(T0 *)ms7_66);
}
/*FI*/}
/*FI*/}
/*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
/*IF*/if (((int)(C)->_arguments)) {
/*IF*/if (!(rT97is_a_in((T97*)(C)->_arguments,XrT66arguments(a1),a2))) {
rT48add_position(XrT66start_position(a1));
rT48add_position(rT211start_position(C));
rT48append((T0 *)ms14_66);
rT48append(XrT62run_time_mark(((T269*)a2)->_current_type));
rT48error((T48*)oRBC27eh,(T0 *)ms8_66);
}
/*FI*/}
/*FI*/}
/*FI*/R=(/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0);
return R;
}
/*DEFERRED_FUNCTION*/T0* rT211base_class_name(T211 *C){
T0* R=NULL;
R=((T53*)(C)->_base_class)->_base_class_name;
return R;
}
/*DEFERRED_FUNCTION*/void rT211set_rescue_compound(T211 *C,T0* a1){
/*IF*/if ((((int)a1))&&(/*(IRF4*/1/*)*/)) {
rT211error(rT211start_position(C),(T0 *)ms8_160);
}
/*FI*/C->_rescue_compound=a1;
}/*DEFERRED_FUNCTION*/void rT211make_e_feature(T211 *C,T0* a1,T0* a2){
C->_names=a1;
C->_result_type=a2;
}/*DEFERRED_FUNCTION*/void rT211make_routine(T211 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
rT211make_e_feature(C,a1,NULL);
C->_header_comment=a4;
C->_arguments=a2;
C->_obsolete_mark=a3;
C->_require_assertion=a5;
}/*DEFERRED_FUNCTION*/void rT211make(T211 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6){
rT211make_routine(C,a1,a2,a4,a5,a6);
C->_result_type=a3;
}/*DEFERRED_PROCEDURE*/T0* rT210first_name(T210 *C){
T0* R=NULL;
R=rT130item((T130*)(C)->_names,1);
return R;
}
/*DEFERRED_PROCEDURE*/T0* rT210to_run_feature(T210 *C,T0* a1,T0* a2){
T0* R=NULL;
{T286 *n=((T286*)se_new(286));
rT286make(n,a1,a2,(T0 *)C);
R=(T0 *)n;}
return R;
}
/*DEFERRED_PROCEDURE*/void rT210error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*DEFERRED_PROCEDURE*/int rT210is_merge_with(T210 *C,T0* a1,T0* a2){
int R=0;
int _ne=0;
_ne=/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/;
/*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)/*XrT*E_FEATURE*/((T148*)a1)->_result_type)) {
/*IF*/if (((!((C)->_result_type))||(!(/*XrT*E_FEATURE*/((T148*)a1)->_result_type)))) {
rT48add_position(XrT66start_position(a1));
rT210error(rT210start_position(C),(T0 *)ms1_66);
}
/*FI*/}
/*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT66arguments(a1))) {
/*IF*/if (((!((C)->_arguments))||(!(XrT66arguments(a1))))) {
rT48add_position(XrT66start_position(a1));
rT210error(rT210start_position(C),(T0 *)ms2_66);
}
 else if ((rT97count((T97*)(C)->_arguments))!=(rT97count((T97*)XrT66arguments(a1)))) {
rT48add_position(XrT66start_position(a1));
rT210error(rT210start_position(C),(T0 *)ms3_66);
}
/*FI*/}
/*FI*//*IF*/if (((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) {
/*IF*/if (((int)(C)->_result_type)) {
/*IF*/if (!(XrT62is_a_in((C)->_result_type,/*XrT*E_FEATURE*/((T148*)a1)->_result_type,a2))) {
rT48error((T48*)oRBC27eh,(T0 *)ms13_66);
}
/*FI*/}
/*FI*/}
/*FI*//*IF*/if (((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) {
/*IF*/if (((int)(C)->_arguments)) {
/*IF*/if (!(rT97is_a_in((T97*)(C)->_arguments,XrT66arguments(a1),a2))) {
rT48add_position(XrT66start_position(a1));
rT210error(rT210start_position(C),(T0 *)ms13_66);
}
/*FI*/}
/*FI*/}
/*FI*/R=((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0);
return R;
}
/*DEFERRED_PROCEDURE*/T0* rT210start_position(T210 *C){
T0* R=NULL;
R=/*XrT*FEATURE_NAME*/((T70*)rT210first_name(C))->_start_position;
return R;
}
/*DEFERRED_PROCEDURE*/void rT210collect_for(T210 *C,int a1){
/*IF*/if ((a1)==(1001)) {
/*IF*/if (((int)(C)->_require_assertion)) {
/*IF*/if (!(rT276fast_has((T276*)oRBC66require_collector,(C)->_require_assertion))) {
rT276add_last((T276*)oRBC66require_collector,(C)->_require_assertion);
}
/*FI*/}
/*FI*/}
else {
/*IF*/if (((int)(C)->_ensure_assertion)) {
rT161add_into((T161*)(C)->_ensure_assertion,oRBC66assertion_collector);
}
/*FI*/}
/*FI*/}/*DEFERRED_PROCEDURE*/void rT210add_into(T210 *C,T0* a1){
T0* _fn=NULL;
int _i=0;
C->_base_class=rT49base_class((T49*)/*XrT*FEATURE_NAME*/((T70*)rT130item((T130*)(C)->_names,1))->_start_position);
_i=1;
while (!((_i)>(rT130count((T130*)(C)->_names)))) {
_fn=rT130item((T130*)(C)->_names,_i);
/*IF*/if (rT65has((T65*)a1,XrT71to_key(_fn))) {
_fn=XrT66first_name(rT65at((T65*)a1,XrT71to_key(_fn)));
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)_fn)->_start_position);
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)rT130item((T130*)(C)->_names,_i))->_start_position);
rT48error((T48*)oRBC27eh,(T0 *)ms12_66);
rT48append(/*XrT*FEATURE_NAME*/((T70*)_fn)->_to_string);
rT48error((T48*)oRBC27eh,(T0 *)ms102_27);
}
else {
rT65put((T65*)a1,(T0 *)C,XrT71to_key(_fn));
}
/*FI*/_i=(_i)+(1);
}
}/*DEFERRED_PROCEDURE*/T0* rT210try_to_undefine(T210 *C,T0* a1,T0* a2){
T0* R=NULL;
XrT71undefine_in(a1,a2);
R=rT210try_to_undefine_aux(C,a1,a2);
/*IF*/if (((int)R)) {
/*XrT*DEFERRED_ROUTINE*//*[IRF3:set_clients*//*AW*/((T210*)R)->_clients=((C)->_clients);/*]*/
}
else {
rT53fatal_undefine((T53*)a2,a1);
}
/*FI*/return R;
}
/*DEFERRED_PROCEDURE*/T0* rT210try_to_undefine_aux(T210 *C,T0* a1,T0* a2){
T0* R=NULL;
R=(T0 *)C;
return R;
}
/*DEFERRED_PROCEDURE*/void rT210set_header_comment(T210 *C,T0* a1){
/*IF*/if ((((int)a1))&&((rT63count((T63*)a1))>(1))) {
C->_end_comment=a1;
}
/*FI*/}/*DEFERRED_PROCEDURE*/void rT210from_effective(T210 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
{T130 *n=((T130*)se_new(130));
rT130make(n,ma(131,0,1,a1));
C->_names=(T0 *)n;}
rT210make_routine(C,(C)->_names,a2,NULL,NULL,a3);
/*[IRF3:set_ensure_assertion*//*AW*/(C)->_ensure_assertion=(a4);/*]*/
C->_base_class=a5;
}/*DEFERRED_PROCEDURE*/int rT210stupid_switch(/*C*/T0* a1,T0* a2){
int R=0;
return R;
}
/*DEFERRED_PROCEDURE*/int rT210can_hide(T210 *C,T0* a1,T0* a2){
int R=0;
/*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)/*XrT*E_FEATURE*/((T148*)a1)->_result_type)) {
/*IF*/if (((!((C)->_result_type))||(!(/*XrT*E_FEATURE*/((T148*)a1)->_result_type)))) {
rT48add_position(XrT66start_position(a1));
rT210error(rT210start_position(C),(T0 *)ms4_66);
}
/*FI*/}
/*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT66arguments(a1))) {
/*IF*/if (((!((C)->_arguments))||(!(XrT66arguments(a1))))) {
rT48add_position(XrT66start_position(a1));
rT210error(rT210start_position(C),(T0 *)ms5_66);
}
 else if ((rT97count((T97*)(C)->_arguments))!=(rT97count((T97*)XrT66arguments(a1)))) {
rT48add_position(XrT66start_position(a1));
rT210error(rT210start_position(C),(T0 *)ms6_66);
}
/*FI*/}
/*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
/*IF*/if (((int)(C)->_result_type)) {
/*IF*/if (!(XrT62is_a_in((C)->_result_type,/*XrT*E_FEATURE*/((T148*)a1)->_result_type,a2))) {
rT48append((T0 *)ms14_66);
rT48append(XrT62run_time_mark(((T269*)a2)->_current_type));
rT48error((T48*)oRBC27eh,(T0 *)ms7_66);
}
/*FI*/}
/*FI*/}
/*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
/*IF*/if (((int)(C)->_arguments)) {
/*IF*/if (!(rT97is_a_in((T97*)(C)->_arguments,XrT66arguments(a1),a2))) {
rT48add_position(XrT66start_position(a1));
rT48add_position(rT210start_position(C));
rT48append((T0 *)ms14_66);
rT48append(XrT62run_time_mark(((T269*)a2)->_current_type));
rT48error((T48*)oRBC27eh,(T0 *)ms8_66);
}
/*FI*/}
/*FI*/}
/*FI*/R=(/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0);
return R;
}
/*DEFERRED_PROCEDURE*/T0* rT210base_class_name(T210 *C){
T0* R=NULL;
R=((T53*)(C)->_base_class)->_base_class_name;
return R;
}
/*DEFERRED_PROCEDURE*/void rT210set_rescue_compound(T210 *C,T0* a1){
/*IF*/if ((((int)a1))&&(/*(IRF4*/1/*)*/)) {
rT210error(rT210start_position(C),(T0 *)ms8_160);
}
/*FI*/C->_rescue_compound=a1;
}/*DEFERRED_PROCEDURE*/void rT210make_e_feature(T210 *C,T0* a1,T0* a2){
C->_names=a1;
C->_result_type=a2;
}/*DEFERRED_PROCEDURE*/void rT210make_routine(T210 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
rT210make_e_feature(C,a1,NULL);
C->_header_comment=a4;
C->_arguments=a2;
C->_obsolete_mark=a3;
C->_require_assertion=a5;
}/*DEFERRED_PROCEDURE*/void rT210make(T210 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
rT210make_routine(C,a1,a2,a3,a4,a5);
}/*LOCAL_NAME*/void rT186name_clash(T186 *C){
T0* _rf=NULL;
T0* _rc=NULL;
/*IF*/if (rT53has_feature((T53*)rT186base_class_written(C),(C)->_to_string)) {
_rc=XrT62run_class((C)->_current_type);
_rf=rT269get_feature_with((T269*)_rc,(C)->_to_string);
/*IF*/if (((int)_rf)) {
rT48add_position(XrT268start_position(_rf));
}
/*FI*/rT186error((C)->_start_position,(T0 *)ms1_186);
}
/*FI*/}/*LOCAL_NAME*/T0* rT186twin(T186 *C){
T0* R=NULL;
/*IF*//*AF*//*AE*/
R=(T0 *)se_new(C->id);AF_1
rT186copy((T186*)R,(T0 *)C);
AF_0
/*FI*/return R;
}
/*LOCAL_NAME*/int rT186static_value(T186 *C){
int R=0;
R=(C)->_static_value_mem;
return R;
}
/*LOCAL_NAME*/T0* rT186to_runnable(T186 *C,T0* a1){
T0* R=NULL;
T0* _rf=NULL;
/*IF*/if (!((C)->_current_type)) {
C->_current_type=a1;
R=(T0 *)C;
/*IF*/if (((T0 *)(C)->_declaration_name)==((T0 *)C)) {
rT186result_type_to_runnable(C);
}
else {
_rf=rT55top_rf((T55*)oRBC27small_eiffel);
C->_result_type=rT141type((T141*)XrT268local_vars(_rf),(C)->_rank);
}
/*FI*/}
else {
R=rT186twin(C);
/*[IRF3:set_current_type*//*AW*/((T186*)R)->_current_type=(NULL);/*]*/
R=rT186to_runnable((T186*)R,a1);
}
/*FI*/return R;
}
/*LOCAL_NAME*/void rT186error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*LOCAL_NAME*/T0* rT186add_comment(T186 *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;
}
/*LOCAL_NAME*/void rT186result_type_to_runnable(T186 *C){
T0* _rt=NULL;
_rt=XrT62to_runnable((C)->_result_type,(C)->_current_type);
/*IF*/if (!(_rt)) {
rT186error(XrT62start_position((C)->_result_type),(T0 *)ms1_93);
}
else {
C->_result_type=_rt;
}
/*FI*/}/*LOCAL_NAME*/void rT186set_declaration_name(T186 *C){
C->_declaration_name=(T0 *)C;
}/*LOCAL_NAME*/T0* rT186to_key(T186 *C){
T0* R=NULL;
R=(C)->_to_string;
return R;
}
/*LOCAL_NAME*/int rT186can_be_dropped(T186 *C){
int R=0;
R=XrT62is_expanded(XrT62run_type((C)->_result_type));
return R;
}
/*LOCAL_NAME*/void rT186refer_to(T186 *C,T0* a1,T0* a2,int a3){
C->_start_position=a1;
C->_rank=a3;
C->_declaration_name=rT141name((T141*)a2,a3);
C->_to_string=((T186*)(C)->_declaration_name)->_to_string;
C->_result_type=((T186*)(C)->_declaration_name)->_result_type;
}/*LOCAL_NAME*/void rT186compile_to_c(T186 *C){
rT44put_character((T44*)oRBC27cpp,'\137');
rT44put_string((T44*)oRBC27cpp,(C)->_to_string);
}/*LOCAL_NAME*/int rT186to_integer(T186 *C){
int R=0;
rT186error((C)->_start_position,(T0 *)ms104_27);
return R;
}
/*LOCAL_NAME*/T0* rT186written_in(T186 *C){
T0* R=NULL;
T0* _sp=NULL;
_sp=(C)->_start_position;
/*IF*/if (((int)_sp)) {
R=((T49*)_sp)->_base_class_name;
}
/*FI*/return R;
}
/*LOCAL_NAME*/T0* rT186base_class_written(T186 *C){
T0* R=NULL;
R=rT51base_class((T51*)rT186written_in(C));
return R;
}
/*LOCAL_NAME*/void rT186copy(T186 *C,T0* a1){
/*IF*//*AF*//*AE*/
memcpy(C,a1,s[C->id]);
/*FI*/}/*LOCAL_NAME*/int rT186is_a(T186 *C,T0* a1){
int R=0;
R=XrT62is_a(XrT62run_type((C)->_result_type),XrT62run_type(XrT72result_type(a1)));
/*IF*/if (!(R)) {
rT48add_position((C)->_start_position);
rT186error(XrT72start_position(a1),(T0 *)ms2_72);
}
/*FI*/return R;
}
/*LOCAL_NAME*/void rT186make(T186 *C,T0* a1,T0* a2){
C->_start_position=a1;
C->_to_string=a2;
C->_declaration_name=(T0 *)C;
}

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.