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

This is compile_to_c27.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"
/*FEATURE_NAME_LIST*/int rT130count(T130 *C){
int R=0;
R=((T131*)(C)->_list)->_upper;
return R;
}
/*FEATURE_NAME_LIST*/void rT130error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*FEATURE_NAME_LIST*/T0* rT130item(T130 *C,int a1){
T0* R=NULL;
R=rT131item((T131*)(C)->_list,a1);
return R;
}
/*FEATURE_NAME_LIST*/int rT130index_of(T130 *C,T0* a1){
int R=0;
T0* _fn_key=NULL;
_fn_key=XrT71to_key(a1);
R=1;
while (!(((R)>(rT130count(C)))||(rT7is_equal((T7*)_fn_key,XrT71to_key(rT130item(C,R)))))) {
R=(R)+(1);
}
return R;
}
/*FEATURE_NAME_LIST*/int rT130has(T130 *C,T0* a1){
int R=0;
R=(rT130index_of(C,a1))<=(((T131*)(C)->_list)->_upper);
return R;
}
/*FEATURE_NAME_LIST*/void rT130make(T130 *C,T0* a1){
int _i2=0;
int _i=0;
C->_list=a1;
_i=((T131*)a1)->_upper;
while (!((_i)==(0))) {
_i2=rT130index_of(C,rT131item((T131*)a1,_i));
/*IF*/if ((_i2)!=(_i)) {
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)rT131item((T131*)a1,_i2))->_start_position);
rT130error(/*XrT*FEATURE_NAME*/((T70*)rT131item((T131*)a1,_i))->_start_position,(T0 *)ms1_130);
}
/*FI*/_i=(_i)-(1);
}
}/*FEATURE_CLAUSE*/void rT137add_into(T137 *C,T0* a1){
T0* _f=NULL;
int _i=0;
/*IF*/if ((((int)(C)->_list))&&(!(rT67empty((T67*)(C)->_list)))) {
_i=1;
while (!((_i)>(((T67*)(C)->_list)->_upper))) {
_f=rT67item((T67*)(C)->_list,_i);
XrT66set_clients(_f,(C)->_clients);
XrT66add_into(_f,a1);
_i=(_i)+(1);
}
}
/*FI*/}/*FEATURE_CLAUSE*/void rT137make(T137 *C,T0* a1,T0* a2,T0* a3){
C->_clients=a1;
C->_comment=a2;
C->_list=a3;
}/*CLASS_INVARIANT*/void rT267c_define(T267 *C){
int _id=0;
_id=XrT62id((C)->_current_type);
rT7copy((T7*)oRBC267cdm,(T0 *)ms3_267);
rT2append_in(_id,oRBC267cdm);
rT7append((T7*)oRBC267cdm,(T0 *)ms4_267);
rT2append_in(_id,oRBC267cdm);
rT7append((T7*)oRBC267cdm,(T0 *)ms5_267);
rT2append_in(_id,oRBC267cdm);
rT7append((T7*)oRBC267cdm,(T0 *)ms6_267);
rT44put_c_heading((T44*)oRBC27cpp,oRBC267cdm);
rT44swap_on_c((T44*)oRBC27cpp);
rT7copy((T7*)oRBC267cdm,(T0 *)ms7_267);
rT2append_in(_id,oRBC267cdm);
rT7append((T7*)oRBC267cdm,(T0 *)ms8_267);
rT44put_string((T44*)oRBC27cpp,oRBC267cdm);
rT267compile_to_c(C);
rT44put_string((T44*)oRBC27cpp,(T0 *)ms9_267);
}/*CLASS_INVARIANT*/void rT267add_into(T267 *C,T0* a1){
T0* _a=NULL;
int _i=0;
/*IF*/if (((int)(C)->_list)) {
_i=1;
while (!((_i)>(((T162*)(C)->_list)->_upper))) {
_a=rT162item((T162*)(C)->_list,_i);
/*IF*/if (!(rT162fast_has((T162*)a1,_a))) {
rT162add_last((T162*)a1,_a);
}
/*FI*/_i=(_i)+(1);
}
}
/*FI*/}/*CLASS_INVARIANT*/void rT267from_runnable(T267 *C,T0* a1){
C->_list=a1;
C->_current_type=((T68*)rT162item((T162*)(C)->_list,1))->_current_type;
}T0*oRBC267cdm;
/*CLASS_INVARIANT*/void rT267compile_to_c(T267 *C){
int _i=0;
/*[IRF3:set_check_assertion_mode*//*AW*/((T44*)oRBC27cpp)->_check_assertion_mode=(/*(IRF4*/(T0 *)ms2_267/*)*/);/*]*/
/*IF*/if (((int)(C)->_list)) {
rT44put_string((T44*)oRBC27cpp,(T0 *)ms1_140);
rT44put_string((T44*)oRBC27cpp,/*(IRF4*/(T0 *)ms2_267/*)*/);
rT44put_string((T44*)oRBC27cpp,(T0 *)ms2_140);
rT44put_string((T44*)oRBC27cpp,/*(IRF4*/(T0 *)ms2_267/*)*/);
rT44put_string((T44*)oRBC27cpp,(T0 *)ms3_140);
_i=1;
while (!((_i)>(((T162*)(C)->_list)->_upper))) {
rT68compile_to_c((T68*)rT162item((T162*)(C)->_list,_i));
_i=(_i)+(1);
}
rT44put_string((T44*)oRBC27cpp,(T0 *)ms4_140);
rT44put_string((T44*)oRBC27cpp,/*(IRF4*/(T0 *)ms2_267/*)*/);
rT44put_string((T44*)oRBC27cpp,(T0 *)ms5_140);
}
/*FI*/}/*CLASS_INVARIANT*/void rT267make(T267 *C,T0* a1,T0* a2,T0* a3){
C->_start_position=a1;
C->_header_comment=a2;
C->_list=a3;
}/*PREFIX_NAME*/int rT70same_as(T70 *C,T0* a1){
int R=0;
R=rT7is_equal((T7*)(C)->_to_key,XrT52to_key(a1));
return R;
}
/*PREFIX_NAME*/int rT70static_value(T70 *C){
int R=0;
R=(C)->_static_value_mem;
return R;
}
/*PREFIX_NAME*/void rT70fatal_error(/*C*/T0* a1){
rT48fatal_error(a1);
}/*PREFIX_NAME*/T0* rT70to_runnable(T70 *C,T0* a1){
T0* R=NULL;
T0* _rf=NULL;
/*IF*/if (!((C)->_current_type)) {
C->_current_type=a1;
_rf=rT269get_feature((T269*)XrT62run_class((C)->_current_type),(T0 *)C);
/*IF*/if (!(_rf)) {
rT70error((C)->_start_position,(T0 *)ms2_71);
}
 else if (XrT268is_writable(_rf)) {
C->_result_type=/*XrT*RUN_FEATURE*/((T274*)_rf)->_result_type;
}
else {
rT48add_position(XrT268start_position(_rf));
rT70error((C)->_start_position,(T0 *)ms3_71);
}
/*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
R=(T0 *)C;
}
else {
rT70error((C)->_start_position,(T0 *)ms4_71);
}
/*FI*/}
 else if (((T0 *)a1)==((T0 *)(C)->_current_type)) {
R=(T0 *)C;
}
 else if (rT7is_equal((T7*)XrT62run_time_mark(a1),XrT62run_time_mark((C)->_current_type))) {
rT70error((C)->_start_position,(T0 *)ms5_71);
rT48add_type(a1,(T0 *)ms6_71);
rT48add_type((C)->_current_type,(T0 *)ms7_71);
rT48print_as_error((T48*)oRBC27eh);
}
else {
{T70 *n=((T70*)se_new(70));
rT70make(n,(C)->_to_string,(C)->_start_position);
R=(T0 *)n;}
R=rT70to_runnable((T70*)R,a1);
}
/*FI*/return R;
}
/*PREFIX_NAME*/void rT70error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*PREFIX_NAME*/T0* rT70add_comment(T70 *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;
}
/*PREFIX_NAME*/int rT70is_equal(T70 *C,T0* a1){
int R=0;
R=rT70standard_is_equal(C,a1);
return R;
}
/*PREFIX_NAME*/void rT70undefine_in(T70 *C,T0* a1){
/*IF*/if ((C)->_is_frozen) {
rT70error((C)->_start_position,(T0 *)ms12_71);
rT53fatal_undefine((T53*)a1,(T0 *)C);
}
/*FI*/}/*PREFIX_NAME*/int rT70can_be_dropped(T70 *C){
int R=0;
rT48add_position((C)->_start_position);
rT70fatal_error((T0 *)ms1_71);
return R;
}
/*PREFIX_NAME*/void rT70mapping_c(T70 *C){
/*[IRF3:clear*//*AW*/((T7*)oRBC71mapping_c_mem)->_count=(0);/*]*/
rT70mapping_c_in(C,oRBC71mapping_c_mem);
rT44put_string((T44*)oRBC27cpp,oRBC71mapping_c_mem);
}/*PREFIX_NAME*/void rT70mapping_c_in(T70 *C,T0* a1){
/*IF*//*AF*/{/*AT*/rT7append((T7*)a1,(T0 *)ms9_71);
rT70mapping_c_aux(C,a1);
}
/*FI*/}/*PREFIX_NAME*/void rT70mapping_c_aux(T70 *C,T0* a1){
int _i=0;
_i=1;
while (!((_i)>(((T7*)(C)->_to_string)->_count))) {
rT2append_in(((unsigned char)rT7item((T7*)(C)->_to_string,_i)),a1);
_i=(_i)+(1);
}
}/*PREFIX_NAME*/void rT70compile_to_c(T70 *C){
rT44put_string((T44*)oRBC27cpp,(T0 *)ms10_71);
rT44put_string((T44*)oRBC27cpp,(C)->_to_string);
}/*PREFIX_NAME*/int rT70to_integer(T70 *C){
int R=0;
rT70error((C)->_start_position,(T0 *)ms104_27);
return R;
}
/*PREFIX_NAME*/T0* rT70written_in(T70 *C){
T0* R=NULL;
T0* _sp=NULL;
_sp=(C)->_start_position;
/*IF*/if (((int)_sp)) {
R=((T49*)_sp)->_base_class_name;
}
/*FI*/return R;
}
/*PREFIX_NAME*/T0* rT70run_feature(T70 *C,T0* a1){
T0* R=NULL;
R=rT269get_feature((T269*)XrT62run_class(a1),(T0 *)C);
return R;
}
/*PREFIX_NAME*/int rT70standard_is_equal(T70 *C,T0* a1){
int R=0;
/*IF*//*AF*/if (((T0 *)a1)==((T0 *)C)) {
R=1;
}
else {
R=!memcmp(C,a1,s[C->id]);
}
/*FI*/return R;
}
/*PREFIX_NAME*/int rT70is_a(T70 *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);
rT70error(XrT72start_position(a1),(T0 *)ms2_72);
}
/*FI*/return R;
}
/*PREFIX_NAME*/void rT70make(T70 *C,T0* a1,T0* a2){
C->_to_string=a1;
C->_start_position=a2;
C->_to_key=rT7twin((T7*)(C)->_to_string);
rT7extend((T7*)(C)->_to_key,'\46');
}/*CLASS_NAME*/void rT51set_with(T51 *C,T0* a1){
C->_start_position=((T51*)a1)->_start_position;
rT51set_to_string(C,((T51*)a1)->_to_string);
}/*CLASS_NAME*/int rT51is_subclass_of(T51 *C,T0* a1){
int R=0;
/*IF*/if (((T0 *)(T0 *)ms36_27)==((T0 *)((T51*)a1)->_to_string)) {
R=1;
}
 else if (((T0 *)(T0 *)ms52_27)==((T0 *)((T51*)a1)->_to_string)) {
}
else {
R=rT53is_subclass_of((T53*)rT51base_class(C),rT51base_class((T51*)a1));
}
/*FI*/return R;
}
T0*oRBC51tmp_string;
/*CLASS_NAME*/int rT51frozen_id(T51 *C){
int R=0;
/*IF*/if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms48_27)) {
R=1;
}
 else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms49_27)) {
R=2;
}
 else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms42_27)) {
R=3;
}
 else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms55_27)) {
R=4;
}
 else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms45_27)) {
R=5;
}
 else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms40_27)) {
R=6;
}
 else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms57_27)) {
R=7;
}
 else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms53_27)) {
R=8;
}
/*FI*/return R;
}
/*CLASS_NAME*/void rT51error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*CLASS_NAME*/T0* rT51to_key(T51 *C){
T0* R=NULL;
R=(C)->_to_string;
return R;
}
T0*oRBC51names_memory;
/*CLASS_NAME*/T0* rT51base_class(T51 *C){
T0* R=NULL;
R=rT55base_class((T0 *)C);
return R;
}
/*CLASS_NAME*/int rT51is_a(T51 *C,T0* a1){
int R=0;
T0* _bc2=NULL;
T0* _bc1=NULL;
T0* _to_string2=NULL;
_to_string2=((T51*)a1)->_to_string;
/*IF*/if (((T0 *)(T0 *)ms36_27)==((T0 *)_to_string2)) {
R=1;
}
 else if (((T0 *)(C)->_to_string)==((T0 *)_to_string2)) {
R=1;
}
 else if (((T0 *)(T0 *)ms52_27)==((T0 *)_to_string2)) {
}
else {
_bc1=rT51base_class(C);
_bc2=rT51base_class((T51*)a1);
/*IF*/if (!(_bc1)) {
rT48append((T0 *)ms1_51);
rT48append((C)->_to_string);
rT51error((C)->_start_position,(T0 *)ms102_27);
}
 else if (!(_bc2)) {
rT48append((T0 *)ms2_51);
rT48append(_to_string2);
rT51error((C)->_start_position,(T0 *)ms102_27);
}
else {
R=rT53is_subclass_of((T53*)_bc1,_bc2);
}
/*FI*/}
/*FI*/return R;
}
/*CLASS_NAME*/void rT51make_unknown(T51 *C){
{T49 *n=((T49*)se_new(49));
rT49with(n,1,1,(T0 *)C);
C->_start_position=(T0 *)n;}
C->_to_string=(T0 *)ms3_51;
}/*CLASS_NAME*/void rT51make(T51 *C,T0* a1,T0* a2){
C->_start_position=a2;
rT51set_to_string(C,a1);
}/*CLASS_NAME*/void rT51set_to_string(T51 *C,T0* a1){
int _i=0;
rT7copy((T7*)oRBC51tmp_string,a1);
rT7to_upper((T7*)oRBC51tmp_string);
_i=rT45index_of((T45*)oRBC51names_memory,oRBC51tmp_string);
/*IF*/if ((_i)<=(((T45*)oRBC51names_memory)->_upper)) {
C->_to_string=rT45item((T45*)oRBC51names_memory,_i);
}
else {
C->_to_string=rT7twin((T7*)oRBC51tmp_string);
rT45add_last((T45*)oRBC51names_memory,(C)->_to_string);
}
/*FI*/}/*PARENT*/void rT120set_undefine(T120 *C,T0* a1){
{T130 *n=((T130*)se_new(130));
rT130make(n,a1);
C->_undefine_list=(T0 *)n;}
}/*PARENT*/void rT120fatal_error(/*C*/T0* a1){
rT48fatal_error(a1);
}/*PARENT*/T0* rT120clients_for(T120 *C,T0* a1,T0* a2){
T0* R=NULL;
/*IF*/if (rT51is_a((T51*)XrT62base_class_name((C)->_type),XrT66base_class_name(a2))) {
/*IF*/if (!((C)->_export_list)) {
R=rT53clients_for((T53*)XrT62base_class((C)->_type),a1,a2);
}
else {
R=rT126clients_for((T126*)(C)->_export_list,a1);
/*IF*/if (!(R)) {
/*IF*/if (!((C)->_rename_list)) {
R=rT53clients_for((T53*)XrT62base_class((C)->_type),a1,a2);
}
else {
R=rT53clients_for((T53*)XrT62base_class((C)->_type),rT122to_old_name((T122*)(C)->_rename_list,a1),a2);
}
/*FI*/}
else {
rT48add_position(rT120start_position(C));
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)a1)->_start_position);
rT48add_position(XrT66start_position(a2));
rT48error((T48*)oRBC27eh,(T0 *)ms6_120);
}
/*FI*/}
/*FI*/}
/*FI*/return R;
}
/*PARENT*/int rT120has_redefine(T120 *C,T0* a1){
int R=0;
/*IF*/if (((int)(C)->_redefine_list)) {
R=rT130has((T130*)(C)->_redefine_list,a1);
}
/*FI*/return R;
}
/*PARENT*/T0* rT120start_position(T120 *C){
T0* R=NULL;
R=XrT62start_position((C)->_type);
return R;
}
/*PARENT*/int rT120has_select(T120 *C,T0* a1){
int R=0;
/*IF*/if (((int)(C)->_select_list)) {
R=rT130has((T130*)(C)->_select_list,a1);
}
/*FI*/return R;
}
/*PARENT*/void rT120collect_for(T120 *C,int a1,T0* a2){
T0* _fn2=NULL;
/*IF*/if ((!((C)->_rename_list))||(!(rT122affect((T122*)(C)->_rename_list,a2)))) {
rT53collect_for((T53*)XrT62base_class((C)->_type),a1,a2);
}
else {
_fn2=rT122to_old_name((T122*)(C)->_rename_list,a2);
/*IF*/if (((T0 *)_fn2)!=((T0 *)a2)) {
rT53collect_for((T53*)XrT62base_class((C)->_type),a1,_fn2);
}
/*FI*/}
/*FI*/}/*PARENT*/int rT120has_undefine(T120 *C,T0* a1){
int R=0;
/*IF*/if (((int)(C)->_undefine_list)) {
R=rT130has((T130*)(C)->_undefine_list,a1);
}
/*FI*/return R;
}
/*PARENT*/void rT120get_started(T120 *C,T0* a1){
int _all_check=0;
T0* _fn2=NULL;
T0* _fn=NULL;
T0* _pbc=NULL;
T0* _wbc=NULL;
int _i=0;
_all_check=rT47all_check((T47*)oRBC27eiffel_run_control);
C->_parent_list=a1;
_pbc=XrT62base_class((C)->_type);
_wbc=((T133*)(C)->_parent_list)->_base_class;
/*IF*/if ((_all_check)&&(((int)(C)->_rename_list))) {
rT122get_started((T122*)(C)->_rename_list,_pbc);
}
/*FI*//*IF*/if ((_all_check)&&(((int)(C)->_undefine_list))) {
_i=rT130count((T130*)(C)->_undefine_list);
while (!((_i)==(0))) {
_fn=rT130item((T130*)(C)->_undefine_list,_i);
/*IF*/if (!(rT53has((T53*)_pbc,_fn))) {
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)_fn)->_start_position);
rT120fatal_error((T0 *)ms11_120);
}
/*FI*/_i=(_i)-(1);
}
}
/*FI*//*IF*/if ((_all_check)&&(((int)(C)->_redefine_list))) {
_i=rT130count((T130*)(C)->_redefine_list);
while (!((_i)==(0))) {
_fn=rT130item((T130*)(C)->_redefine_list,_i);
/*IF*/if (!(rT53proper_has((T53*)_wbc,_fn))) {
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)_fn)->_start_position);
rT120fatal_error((T0 *)ms12_120);
}
/*FI*//*IF*/if (!(rT53has((T53*)_pbc,_fn))) {
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)_fn)->_start_position);
rT120fatal_error((T0 *)ms13_120);
}
/*FI*//*IF*/if (((int)(C)->_rename_list)) {
_fn2=rT122to_new_name((T122*)(C)->_rename_list,_fn);
/*IF*/if (((T0 *)_fn2)!=((T0 *)_fn)) {
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)_fn)->_start_position);
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)_fn2)->_start_position);
rT120fatal_error((T0 *)ms14_120);
}
/*FI*/}
/*FI*/_i=(_i)-(1);
}
}
/*FI*/}T0*oRBC120forbidden_parent_list;
/*PARENT*/T0* rT120look_up_for(T120 *C,T0* a1,T0* a2){
T0* R=NULL;
T0* _f=NULL;
T0* _fn2=NULL;
/*IF*/if ((!((C)->_rename_list))||(!(rT122affect((T122*)(C)->_rename_list,a2)))) {
_f=XrT62look_up_for((C)->_type,a1,a2);
/*IF*/if (rT120has_undefine(C,a2)) {
R=XrT66try_to_undefine(_f,a2,((T133*)(C)->_parent_list)->_base_class);
}
else {
R=_f;
}
/*FI*/}
else {
_fn2=rT122to_old_name((T122*)(C)->_rename_list,a2);
/*IF*/if (((T0 *)_fn2)!=((T0 *)a2)) {
_f=XrT62look_up_for((C)->_type,a1,_fn2);
/*IF*/if (rT120has_undefine(C,_fn2)) {
R=XrT66try_to_undefine(_f,_fn2,((T133*)(C)->_parent_list)->_base_class);
}
else {
R=_f;
}
/*FI*/}
else {
_f=XrT62look_up_for((C)->_type,a1,a2);
/*IF*/if (!(_f)) {
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)a2)->_start_position);
rT120fatal_error((T0 *)ms3_120);
}
/*FI*/}
/*FI*/}
/*FI*/return R;
}
/*PARENT*/T0* rT120new_name_of(T120 *C,T0* a1,T0* a2){
T0* R=NULL;
T0* _bc=NULL;
_bc=XrT62base_class((C)->_type);
/*IF*/if (((T0 *)_bc)==((T0 *)a1)) {
/*IF*/if (!((C)->_rename_list)) {
R=a2;
}
else {
R=rT122to_new_name((T122*)(C)->_rename_list,a2);
}
/*FI*/}
else {
R=rT53new_name_of((T53*)_bc,a1,a2);
/*IF*/if (((int)(C)->_rename_list)) {
R=rT122to_new_name((T122*)(C)->_rename_list,R);
}
/*FI*/}
/*FI*/return R;
}
/*PARENT*/void rT120add_rename(T120 *C,T0* a1){
/*IF*/if (!((C)->_rename_list)) {
{T122 *n=((T122*)se_new(122));
/*[IRF3:make*//*AW*/(n)->_list=(ma(123,0,1,a1));/*]*/
C->_rename_list=(T0 *)n;}
}
else {
rT122add_last((T122*)(C)->_rename_list,a1);
}
/*FI*/}/*PARENT*/int rT120is_a_vncg(T120 *C,T0* a1,T0* a2){
int R=0;
T0* _t2_bcn=NULL;
T0* _type_bcn=NULL;
T0* _t2_bc=NULL;
T0* _type_bc=NULL;
T0* _rt=NULL;
T0* _tfg=NULL;
T0* _gl2=NULL;
T0* _gl1=NULL;
T0* _gl=NULL;
int _i=0;
int _rank=0;
_type_bc=XrT62base_class((C)->_type);
_type_bcn=((T51*)((T53*)_type_bc)->_base_class_name)->_to_string;
_t2_bc=XrT62base_class(a2);
_t2_bcn=((T51*)((T53*)_t2_bc)->_base_class_name)->_to_string;
/*IF*/if (((T0 *)_type_bcn)==((T0 *)_t2_bcn)) {
_gl=XrT62generic_list((C)->_type);
_gl2=XrT62generic_list(a2);
/*IF*/if (XrT62is_generic(a1)) {
_gl1=XrT62generic_list(a1);
}
/*FI*//*IF*/if ((!(_gl))||((rT108count((T108*)_gl))!=(rT108count((T108*)_gl2)))) {
rT48add_position(XrT62start_position((C)->_type));
rT48add_position(XrT62start_position(a2));
rT120fatal_error((T0 *)ms5_120);
}
/*FI*/R=1;
_i=rT108count((T108*)_gl2);
while (!((!(R))||((_i)==(0)))) {
/*IF*/if (XrT62is_formal_generic(rT108item((T108*)_gl,_i))) {
_tfg=rT108item((T108*)_gl,_i);
if ((int)_tfg) switch (((T0 *)_tfg)->id) {
case 106: 
break;
default:
_tfg = NULL;
};_rank=((T106*)_tfg)->_rank;
R=XrT62is_a(rT108item((T108*)_gl1,_rank),rT108item((T108*)_gl2,_i));
}
 else if (XrT62is_run_type(rT108item((T108*)_gl,_i))) {
R=XrT62is_a(rT108item((T108*)_gl2,_i),rT108item((T108*)_gl,_i));
}
else {
_i=-(1);
R=0;
}
/*FI*/_i=(_i)-(1);
}
/*IF*/if (!(R)) {
/*[IRF3:cancel*//*[IRF3:clear*//*AW*/((T7*)oRBC48explanation)->_count=(0);/*]*/
rT50clear((T50*)oRBC48positions);
/*]*/
/*IF*/if ((_i)<(0)) {
_rt=XrT62to_runnable((C)->_type,XrT62run_type(a1));
R=XrT62is_a(a2,_rt);
/*IF*/if (!(R)) {
/*[IRF3:cancel*//*[IRF3:clear*//*AW*/((T7*)oRBC48explanation)->_count=(0);/*]*/
rT50clear((T50*)oRBC48positions);
/*]*/
}
/*FI*/}
/*FI*/}
/*FI*/}
 else if (XrT62is_run_type((C)->_type)) {
R=XrT62is_a((C)->_type,a2);
/*IF*/if (!(R)) {
/*[IRF3:cancel*//*[IRF3:clear*//*AW*/((T7*)oRBC48explanation)->_count=(0);/*]*/
rT50clear((T50*)oRBC48positions);
/*]*/
}
/*FI*/}
 else if (rT53is_subclass_of((T53*)_type_bc,_t2_bc)) {
_rt=XrT62to_runnable((C)->_type,XrT62run_type(a1));
R=XrT62is_a(_rt,a2);
/*IF*/if (!(R)) {
/*[IRF3:cancel*//*[IRF3:clear*//*AW*/((T7*)oRBC48explanation)->_count=(0);/*]*/
rT50clear((T50*)oRBC48positions);
/*]*/
}
/*FI*/}
/*FI*/return R;
}
/*PARENT*/int rT120has(T120 *C,T0* a1){
int R=0;
/*IF*/if (!((C)->_rename_list)) {
R=rT53has((T53*)XrT62base_class((C)->_type),a1);
}
else {
R=rT53has((T53*)XrT62base_class((C)->_type),rT122to_old_name((T122*)(C)->_rename_list,a1));
}
/*FI*/return R;
}
/*PARENT*/void rT120set_redefine(T120 *C,T0* a1){
{T130 *n=((T130*)se_new(130));
rT130make(n,a1);
C->_redefine_list=(T0 *)n;}
}/*PARENT*/void rT120set_select(T120 *C,T0* a1){
{T130 *n=((T130*)se_new(130));
rT130make(n,a1);
C->_select_list=(T0 *)n;}
}/*PARENT*/void rT120make(T120 *C,T0* a1){
C->_type=a1;
/*IF*/if (rT45fast_has((T45*)oRBC120forbidden_parent_list,XrT62written_mark((C)->_type))) {
rT48add_position(XrT62start_position((C)->_type));
rT48append((T0 *)ms1_120);
rT48append(XrT62written_mark((C)->_type));
rT120fatal_error((T0 *)ms2_120);
}
/*FI*/}

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