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

This is compile_to_c16.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"
/*TYPE_BIT_1*/void rT103c_initialize(T103 *C){
int _i=0;
rT7copy((T7*)oRBC62tmp_string,(T0 *)ms10_104);
_i=rT103displacement(C);
while (!((_i)==(0))) {
rT7extend((T7*)oRBC62tmp_string,'0');
_i=(_i)-(1);
/*IF*/if ((_i)>(0)) {
rT7extend((T7*)oRBC62tmp_string,'\54');
}
/*FI*/}
rT7append((T7*)oRBC62tmp_string,(T0 *)ms11_104);
rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string);
}/*TYPE_BIT_1*/T0* rT103run_type(T103 *C){
T0* R=NULL;
R=(T0 *)C;
return R;
}
/*TYPE_BIT_1*/T0* rT103run_time_mark(T103 *C){
T0* R=NULL;
{T7 *n=((T7*)se_new(7));
rT7copy(n,(T0 *)ms9_104);
R=(T0 *)n;}
rT7append((T7*)R,rT2to_string(rT103nb(C)));
return R;
}
/*TYPE_BIT_1*/T0* rT103to_runnable(T103 *C,T0* a1){
T0* R=NULL;
R=(T0 *)C;
return R;
}
/*TYPE_BIT_1*/void rT103cast_to_ref(T103 *C){
XrT62cast_to_ref(rT103run_type(C));
}/*TYPE_BIT_1*/int rT103id(T103 *C){
int R=0;
R=((T269*)rT103run_class(C))->_id;
return R;
}
/*TYPE_BIT_1*/int rT103nb(T103 *C){
int R=0;
R=((T84*)(C)->_n)->_value;
return R;
}
/*TYPE_BIT_1*/T0* rT103generic_list(T103 *C){
T0* R=NULL;
rT48add_type((T0 *)C,(T0 *)ms1_62);
/*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48);
rT48die_with_code(1);
/*]*/
return R;
}
/*TYPE_BIT_1*/T0* rT103look_up_for(T103 *C,T0* a1,T0* a2){
T0* R=NULL;
R=rT53look_up_for((T53*)rT103base_class(C),a1,a2);
return R;
}
/*TYPE_BIT_1*/void rT103mapping_cast(T103 *C){
rT7copy((T7*)oRBC62tmp_string,(T0 *)ms4_62);
rT2append_in(rT103id(C),oRBC62tmp_string);
/*IF*//*AF*//*AE*/
/*FI*/rT7extend((T7*)oRBC62tmp_string,'\51');
rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string);
}/*TYPE_BIT_1*/void rT103mapping_c_in(T103 *C,T0* a1){
rT7extend((T7*)a1,'T');
rT2append_in(rT103id(C),a1);
}/*TYPE_BIT_1*/T0* rT103run_class(T103 *C){
T0* R=NULL;
R=rT55run_class(rT103run_type(C));
return R;
}
/*TYPE_BIT_1*/T0* rT103smallest_ancestor(T103 *C,T0* a1){
T0* R=NULL;
T0* _other_bit=NULL;
_other_bit=a1;
if ((int)_other_bit) switch (((T0 *)_other_bit)->id) {
case 103: case 105: 
break;
default:
_other_bit = NULL;
};/*IF*/if ((rT103nb(C))<(XrT104nb(_other_bit))) {
R=(T0 *)C;
}
else {
R=a1;
}
/*FI*/return R;
}
/*TYPE_BIT_1*/T0* rT103written_mark(T103 *C){
T0* R=NULL;
{T7 *n=((T7*)se_new(7));
rT7copy(n,(T0 *)ms1_103);
R=(T0 *)n;}
rT7append((T7*)R,rT2to_string(rT103nb(C)));
return R;
}
int ofBC104base_class_name=0;
T0*oRBC104base_class_name;
/*TYPE_BIT_1*/T0* rT103base_class_name(/*C*/void){
if (ofBC104base_class_name==0){
T0* R=NULL;
ofBC104base_class_name=1;
{T51 *n=((T51*)se_new(51));
rT51make(n,(T0 *)ms1_104,NULL);
R=(T0 *)n;}
oRBC104base_class_name=R;}
return oRBC104base_class_name;}
/*TYPE_BIT_1*/T0* rT103base_class(T103 *C){
T0* R=NULL;
T0* _bcn=NULL;
_bcn=rT103base_class_name();
/*IF*/if (((int)_bcn)) {
R=rT51base_class((T51*)_bcn);
}
else {
rT48append((T0 *)ms2_62);
rT48add_type((T0 *)C,(T0 *)ms102_27);
/*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48);
rT48die_with_code(1);
/*]*/
}
/*FI*/return R;
}
/*TYPE_BIT_1*/int rT103is_a_in(T103 *C,T0* a1,T0* a2){
int R=0;
T0* _ct=NULL;
T0* _t2=NULL;
T0* _t1=NULL;
/*IF*/if (rT7is_equal((T7*)rT103written_mark(C),XrT62written_mark(a1))) {
R=1;
}
else {
_ct=((T269*)a2)->_current_type;
_t1=rT103to_runnable(C,_ct);
_t2=XrT62to_runnable(a1,_ct);
/*IF*/if (rT7is_equal((T7*)XrT62run_time_mark(_t1),XrT62run_time_mark(_t2))) {
R=1;
}
else {
R=XrT62is_a(_t1,_t2);
}
/*FI*/}
/*FI*/return R;
}
/*TYPE_BIT_1*/void rT103c_struct(T103 *C){
rT7copy((T7*)oRBC62tmp_string,(T0 *)ms5_104);
rT2append_in(rT103id(C),oRBC62tmp_string);
rT7append((T7*)oRBC62tmp_string,(T0 *)ms6_104);
rT2append_in(rT103displacement(C),oRBC62tmp_string);
rT7append((T7*)oRBC62tmp_string,(T0 *)ms7_104);
rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string);
}/*TYPE_BIT_1*/int rT103is_a(T103 *C,T0* a1){
int R=0;
T0* _other_bit=NULL;
/*IF*/if (XrT62is_bit(a1)) {
_other_bit=a1;
if ((int)_other_bit) switch (((T0 *)_other_bit)->id) {
case 103: case 105: 
break;
default:
_other_bit = NULL;
};/*IF*/if ((rT103nb(C))<=(XrT104nb(_other_bit))) {
R=1;
}
else {
rT48add_type((T0 *)C,(T0 *)ms105_27);
rT48add_type(a1,(T0 *)ms8_104);
}
/*FI*/}
/*FI*/return R;
}
/*TYPE_BIT_1*/int rT103displacement(T103 *C){
int R=0;
R=(rT103nb(C))/(8);
/*IF*/if (((rT103nb(C))%(8))>(0)) {
R=(R)+(1);
}
/*FI*/return R;
}
/*TYPE_BIT_1*/int rT103has_creation(/*C*/T0* a1){
int R=0;
return R;
}
/*TYPE_BIT_1*/void rT103make(T103 *C,T0* a1,T0* a2){
C->_start_position=a1;
C->_n=a2;
}/*TYPE_BIT_1*/void rT103c_typedef(T103 *C){
int _mem_id=0;
_mem_id=rT103id(C);
rT7copy((T7*)oRBC62tmp_string,(T0 *)ms2_104);
rT2append_in(_mem_id,oRBC62tmp_string);
rT7append((T7*)oRBC62tmp_string,(T0 *)ms3_104);
rT2append_in(_mem_id,oRBC62tmp_string);
rT7append((T7*)oRBC62tmp_string,(T0 *)ms4_104);
rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string);
}/*TYPE_BIT_1*/void rT103c_type_in(T103 *C,T0* a1){
rT7extend((T7*)a1,'T');
rT2append_in(rT103id(C),a1);
}/*TYPE_BIT_2*/int rT105is_run_type(T105 *C){
int R=0;
R=((C)->_nb)>=(0);
return R;
}
/*TYPE_BIT_2*/void rT105c_initialize(T105 *C){
int _i=0;
rT7copy((T7*)oRBC62tmp_string,(T0 *)ms10_104);
_i=rT105displacement(C);
while (!((_i)==(0))) {
rT7extend((T7*)oRBC62tmp_string,'0');
_i=(_i)-(1);
/*IF*/if ((_i)>(0)) {
rT7extend((T7*)oRBC62tmp_string,'\54');
}
/*FI*/}
rT7append((T7*)oRBC62tmp_string,(T0 *)ms11_104);
rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string);
}/*TYPE_BIT_2*/void rT105fatal_error(/*C*/T0* a1){
rT48fatal_error(a1);
}/*TYPE_BIT_2*/T0* rT105run_type(T105 *C){
T0* R=NULL;
R=(T0 *)C;
return R;
}
/*TYPE_BIT_2*/T0* rT105run_time_mark(T105 *C){
T0* R=NULL;
{T7 *n=((T7*)se_new(7));
rT7copy(n,(T0 *)ms9_104);
R=(T0 *)n;}
rT7append((T7*)R,rT2to_string((C)->_nb));
return R;
}
/*TYPE_BIT_2*/T0* rT105to_runnable(T105 *C,T0* a1){
T0* R=NULL;
T0* _run_feature_1=NULL;
T0* _run_feature=NULL;
/*IF*/if (((C)->_nb)==(-(1))) {
_run_feature=XrT71run_feature((C)->_n,a1);
/*IF*/if (!(_run_feature)) {
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)(C)->_n)->_start_position);
rT105fatal_error((T0 *)ms108_27);
}
else {
_run_feature_1=_run_feature;
if ((int)_run_feature_1) switch (((T0 *)_run_feature_1)->id) {
case 285: 
break;
default:
_run_feature_1 = NULL;
};/*IF*/if (!(_run_feature_1)) {
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)(C)->_n)->_start_position);
rT48add_position(XrT268start_position(_run_feature));
rT105fatal_error((T0 *)ms1_105);
}
else {
rT105error((C)->_start_position,(T0 *)ms2_105);
/*IF*/if (((C)->_nb)<(0)) {
rT105error(rT285start_position((T285*)_run_feature_1),(T0 *)ms3_105);
}
else {
R=(T0 *)C;
}
/*FI*/}
/*FI*/}
/*FI*/}
else {
{T105 *n=((T105*)se_new(105));
rT105make(n,(C)->_start_position,(C)->_n);
R=(T0 *)n;}
R=rT105to_runnable((T105*)R,a1);
}
/*FI*/return R;
}
/*TYPE_BIT_2*/void rT105cast_to_ref(T105 *C){
XrT62cast_to_ref(rT105run_type(C));
}/*TYPE_BIT_2*/void rT105error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*TYPE_BIT_2*/int rT105id(T105 *C){
int R=0;
R=((T269*)rT105run_class(C))->_id;
return R;
}
/*TYPE_BIT_2*/T0* rT105generic_list(T105 *C){
T0* R=NULL;
rT48add_type((T0 *)C,(T0 *)ms1_62);
/*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48);
rT48die_with_code(1);
/*]*/
return R;
}
/*TYPE_BIT_2*/T0* rT105look_up_for(T105 *C,T0* a1,T0* a2){
T0* R=NULL;
R=rT53look_up_for((T53*)rT105base_class(C),a1,a2);
return R;
}
/*TYPE_BIT_2*/void rT105mapping_cast(T105 *C){
rT7copy((T7*)oRBC62tmp_string,(T0 *)ms4_62);
rT2append_in(rT105id(C),oRBC62tmp_string);
/*IF*//*AF*//*AE*/
/*FI*/rT7extend((T7*)oRBC62tmp_string,'\51');
rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string);
}/*TYPE_BIT_2*/void rT105mapping_c_in(T105 *C,T0* a1){
rT7extend((T7*)a1,'T');
rT2append_in(rT105id(C),a1);
}/*TYPE_BIT_2*/T0* rT105run_class(T105 *C){
T0* R=NULL;
R=rT55run_class(rT105run_type(C));
return R;
}
/*TYPE_BIT_2*/T0* rT105smallest_ancestor(T105 *C,T0* a1){
T0* R=NULL;
T0* _other_bit=NULL;
_other_bit=a1;
if ((int)_other_bit) switch (((T0 *)_other_bit)->id) {
case 103: case 105: 
break;
default:
_other_bit = NULL;
};/*IF*/if (((C)->_nb)<(XrT104nb(_other_bit))) {
R=(T0 *)C;
}
else {
R=a1;
}
/*FI*/return R;
}
/*TYPE_BIT_2*/T0* rT105written_mark(T105 *C){
T0* R=NULL;
{T7 *n=((T7*)se_new(7));
rT7copy(n,(T0 *)ms4_105);
R=(T0 *)n;}
rT7append((T7*)R,/*XrT*FEATURE_NAME*/((T70*)(C)->_n)->_to_string);
return R;
}
/*TYPE_BIT_2*/T0* rT105base_class_name(/*C*/void){
if (ofBC104base_class_name==0){
T0* R=NULL;
ofBC104base_class_name=1;
{T51 *n=((T51*)se_new(51));
rT51make(n,(T0 *)ms1_104,NULL);
R=(T0 *)n;}
oRBC104base_class_name=R;}
return oRBC104base_class_name;}
/*TYPE_BIT_2*/T0* rT105base_class(T105 *C){
T0* R=NULL;
T0* _bcn=NULL;
_bcn=rT105base_class_name();
/*IF*/if (((int)_bcn)) {
R=rT51base_class((T51*)_bcn);
}
else {
rT48append((T0 *)ms2_62);
rT48add_type((T0 *)C,(T0 *)ms102_27);
/*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48);
rT48die_with_code(1);
/*]*/
}
/*FI*/return R;
}
/*TYPE_BIT_2*/int rT105is_a_in(T105 *C,T0* a1,T0* a2){
int R=0;
T0* _ct=NULL;
T0* _t2=NULL;
T0* _t1=NULL;
/*IF*/if (rT7is_equal((T7*)rT105written_mark(C),XrT62written_mark(a1))) {
R=1;
}
else {
_ct=((T269*)a2)->_current_type;
_t1=rT105to_runnable(C,_ct);
_t2=XrT62to_runnable(a1,_ct);
/*IF*/if (rT7is_equal((T7*)XrT62run_time_mark(_t1),XrT62run_time_mark(_t2))) {
R=1;
}
else {
R=XrT62is_a(_t1,_t2);
}
/*FI*/}
/*FI*/return R;
}
/*TYPE_BIT_2*/void rT105c_struct(T105 *C){
rT7copy((T7*)oRBC62tmp_string,(T0 *)ms5_104);
rT2append_in(rT105id(C),oRBC62tmp_string);
rT7append((T7*)oRBC62tmp_string,(T0 *)ms6_104);
rT2append_in(rT105displacement(C),oRBC62tmp_string);
rT7append((T7*)oRBC62tmp_string,(T0 *)ms7_104);
rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string);
}/*TYPE_BIT_2*/int rT105is_a(T105 *C,T0* a1){
int R=0;
T0* _other_bit=NULL;
/*IF*/if (XrT62is_bit(a1)) {
_other_bit=a1;
if ((int)_other_bit) switch (((T0 *)_other_bit)->id) {
case 103: case 105: 
break;
default:
_other_bit = NULL;
};/*IF*/if (((C)->_nb)<=(XrT104nb(_other_bit))) {
R=1;
}
else {
rT48add_type((T0 *)C,(T0 *)ms105_27);
rT48add_type(a1,(T0 *)ms8_104);
}
/*FI*/}
/*FI*/return R;
}
/*TYPE_BIT_2*/int rT105displacement(T105 *C){
int R=0;
R=((C)->_nb)/(8);
/*IF*/if ((((C)->_nb)%(8))>(0)) {
R=(R)+(1);
}
/*FI*/return R;
}
/*TYPE_BIT_2*/int rT105has_creation(/*C*/T0* a1){
int R=0;
return R;
}
/*TYPE_BIT_2*/void rT105make(T105 *C,T0* a1,T0* a2){
C->_start_position=a1;
C->_n=a2;
C->_nb=-(1);
}/*TYPE_BIT_2*/void rT105c_typedef(T105 *C){
int _mem_id=0;
_mem_id=rT105id(C);
rT7copy((T7*)oRBC62tmp_string,(T0 *)ms2_104);
rT2append_in(_mem_id,oRBC62tmp_string);
rT7append((T7*)oRBC62tmp_string,(T0 *)ms3_104);
rT2append_in(_mem_id,oRBC62tmp_string);
rT7append((T7*)oRBC62tmp_string,(T0 *)ms4_104);
rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string);
}/*TYPE_BIT_2*/void rT105c_type_in(T105 *C,T0* a1){
rT7extend((T7*)a1,'T');
rT2append_in(rT105id(C),a1);
}/*TYPE_FORMAL_GENERIC*/int rT106is_run_type(T106 *C){
int R=0;
R=((int)(C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106is_string(T106 *C){
int R=0;
R=XrT62is_string((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106is_character(T106 *C){
int R=0;
R=XrT62is_character((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106is_bit(T106 *C){
int R=0;
R=XrT62is_bit((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/T0* rT106run_time_mark(T106 *C){
T0* R=NULL;
R=XrT62run_time_mark((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/T0* rT106to_runnable(T106 *C,T0* a1){
T0* R=NULL;
T0* _t=NULL;
T0* _rt=NULL;
T0* _p=NULL;
T0* _bc_ct=NULL;
T0* _bc_written=NULL;
_bc_written=rT49base_class((T49*)rT106start_position(C));
_bc_ct=XrT62base_class(a1);
/*IF*/if (((T0 *)_bc_written)==((T0 *)_bc_ct)) {
_rt=XrT62to_runnable(rT108item((T108*)XrT62generic_list(a1),(C)->_rank),a1);
R=rT106make_runnable(C,_rt);
}
 else if (rT53is_subclass_of((T53*)_bc_ct,_bc_written)) {
_p=rT53first_parent_for((T53*)_bc_ct,_bc_written);
_t=((T120*)_p)->_type;
_rt=XrT62to_runnable(rT108item((T108*)XrT62generic_list(_t),(C)->_rank),a1);
R=rT106make_runnable(C,_rt);
}
else {
R=(T0 *)C;
}
/*FI*/return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106is_any(T106 *C){
int R=0;
R=XrT62is_any((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/void rT106cast_to_ref(T106 *C){
XrT62cast_to_ref((C)->_run_type);
}/*TYPE_FORMAL_GENERIC*/void rT106error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*TYPE_FORMAL_GENERIC*/int rT106is_boolean(T106 *C){
int R=0;
R=XrT62is_boolean((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106fast_mapping_c(T106 *C){
int R=0;
R=XrT62fast_mapping_c((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106id(T106 *C){
int R=0;
R=((T269*)rT106run_class(C))->_id;
return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106is_array(T106 *C){
int R=0;
R=XrT62is_array((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106is_double(T106 *C){
int R=0;
R=XrT62is_double((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/T0* rT106start_position(T106 *C){
T0* R=NULL;
R=((T51*)(C)->_formal_name)->_start_position;
return R;
}
/*TYPE_FORMAL_GENERIC*/T0* rT106generic_list(T106 *C){
T0* R=NULL;
rT48add_type((T0 *)C,(T0 *)ms1_62);
/*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48);
rT48die_with_code(1);
/*]*/
return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106is_integer(T106 *C){
int R=0;
R=XrT62is_integer((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106is_real(T106 *C){
int R=0;
R=XrT62is_real((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106is_reference(T106 *C){
int R=0;
R=XrT62is_reference((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/T0* rT106look_up_for(T106 *C,T0* a1,T0* a2){
T0* R=NULL;
R=rT53look_up_for((T53*)rT106base_class(C),a1,a2);
return R;
}
/*TYPE_FORMAL_GENERIC*/void rT106mapping_cast(T106 *C){
rT7copy((T7*)oRBC62tmp_string,(T0 *)ms4_62);
rT2append_in(rT106id(C),oRBC62tmp_string);
/*IF*/if (rT106is_reference(C)) {
rT7extend((T7*)oRBC62tmp_string,'\52');
}
/*FI*/rT7extend((T7*)oRBC62tmp_string,'\51');
rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string);
}/*TYPE_FORMAL_GENERIC*/void rT106mapping_c_in(T106 *C,T0* a1){
rT7extend((T7*)a1,'T');
rT2append_in(rT106id(C),a1);
}/*TYPE_FORMAL_GENERIC*/T0* rT106run_class(T106 *C){
T0* R=NULL;
R=rT55run_class((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106is_expanded(T106 *C){
int R=0;
R=XrT62is_expanded((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106is_none(T106 *C){
int R=0;
R=XrT62is_none((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/void rT106to_reference(T106 *C){
XrT62to_reference((C)->_run_type);
}/*TYPE_FORMAL_GENERIC*/T0* rT106smallest_ancestor(T106 *C,T0* a1){
T0* R=NULL;
R=XrT62smallest_ancestor((C)->_run_type,a1);
return R;
}
/*TYPE_FORMAL_GENERIC*/T0* rT106written_mark(T106 *C){
T0* R=NULL;
R=((T51*)(C)->_formal_name)->_to_string;
return R;
}
/*TYPE_FORMAL_GENERIC*/T0* rT106base_class_name(T106 *C){
T0* R=NULL;
R=XrT62base_class_name((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/T0* rT106base_class(T106 *C){
T0* R=NULL;
T0* _bcn=NULL;
_bcn=rT106base_class_name(C);
/*IF*/if (((int)_bcn)) {
R=rT51base_class((T51*)_bcn);
}
else {
rT48append((T0 *)ms2_62);
rT48add_type((T0 *)C,(T0 *)ms102_27);
/*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48);
rT48die_with_code(1);
/*]*/
}
/*FI*/return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106is_a_in(T106 *C,T0* a1,T0* a2){
int R=0;
T0* _ct=NULL;
T0* _t2=NULL;
T0* _t1=NULL;
/*IF*/if (rT7is_equal((T7*)rT106written_mark(C),XrT62written_mark(a1))) {
R=1;
}
else {
_ct=((T269*)a2)->_current_type;
_t1=rT106to_runnable(C,_ct);
_t2=XrT62to_runnable(a1,_ct);
/*IF*/if (rT7is_equal((T7*)XrT62run_time_mark(_t1),XrT62run_time_mark(_t2))) {
R=1;
}
else {
R=XrT62is_a(_t1,_t2);
}
/*FI*/}
/*FI*/return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106displacement(T106 *C){
int R=0;
R=XrT62displacement((C)->_run_type);
return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106is_a(T106 *C,T0* a1){
int R=0;
R=XrT62is_a((C)->_run_type,a1);
return R;
}
/*TYPE_FORMAL_GENERIC*/T0* rT106make_runnable(T106 *C,T0* a1){
T0* R=NULL;
/*IF*/if (!(a1)) {
rT106error(rT106start_position(C),(T0 *)ms98_27);
}
else {
/*IF*/if (!((C)->_run_type)) {
C->_run_type=XrT62run_type(a1);
R=(T0 *)C;
}
 else if (rT7is_equal((T7*)XrT62run_time_mark((C)->_run_type),XrT62run_time_mark(a1))) {
R=(T0 *)C;
}
else {
{T106 *n=((T106*)se_new(106));
rT106make(n,(C)->_formal_name,(C)->_rank);
R=(T0 *)n;}
R=rT106make_runnable((T106*)R,a1);
}
/*FI*/}
/*FI*/return R;
}
/*TYPE_FORMAL_GENERIC*/int rT106has_creation(T106 *C,T0* a1){
int R=0;
/*IF*/if (((T0 *)C)==((T0 *)(C)->_run_type)) {
R=rT53has_creation((T53*)rT106base_class(C),a1);
}
else {
R=XrT62has_creation((C)->_run_type,a1);
}
/*FI*/return R;
}
/*TYPE_FORMAL_GENERIC*/void rT106make(T106 *C,T0* a1,int a2){
C->_rank=a2;
C->_formal_name=a1;
}/*TYPE_FORMAL_GENERIC*/void rT106c_type_in(T106 *C,T0* a1){
XrT62c_type_in((C)->_run_type,a1);
}/*TYPE_FORMAL_GENERIC*/void rT106to_expanded(T106 *C){
XrT62to_expanded((C)->_run_type);
}/*TYPE_ARRAY*/T0* rT107twin(T107 *C){
T0* R=NULL;
/*IF*//*AF*//*AE*/
R=(T0 *)se_new(C->id);AF_1
rT107copy((T107*)R,(T0 *)C);
AF_0
/*FI*/return R;
}
/*TYPE_ARRAY*/void rT107fatal_error(/*C*/T0* a1){
rT48fatal_error(a1);
}/*TYPE_ARRAY*/void rT107cast_to_ref(T107 *C){
rT107cast_to_ref((T107*)(C)->_run_type);
}/*TYPE_ARRAY*/int rT107id(T107 *C){
int R=0;
R=((T269*)rT107run_class(C))->_id;
return R;
}
/*TYPE_ARRAY*/T0* rT107look_up_for(T107 *C,T0* a1,T0* a2){
T0* R=NULL;
R=rT53look_up_for((T53*)rT107base_class(C),a1,a2);
return R;
}
/*TYPE_ARRAY*/T0* rT107run_class(T107 *C){
T0* R=NULL;
R=rT55run_class((C)->_run_type);
return R;
}
/*TYPE_ARRAY*/void rT107mapping_c_in(T107 *C,T0* a1){
rT7extend((T7*)a1,'T');
rT2append_in(rT107id(C),a1);
}/*TYPE_ARRAY*/void rT107mapping_cast(T107 *C){
rT7copy((T7*)oRBC62tmp_string,(T0 *)ms4_62);
rT2append_in(rT107id(C),oRBC62tmp_string);
/*IF*/{/*AT*/rT7extend((T7*)oRBC62tmp_string,'\52');
}
/*FI*/rT7extend((T7*)oRBC62tmp_string,'\51');
rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string);
}/*TYPE_ARRAY*/T0* rT107smallest_ancestor(T107 *C,T0* a1){
T0* R=NULL;
T0* _array_of3=NULL;
T0* _array_of2=NULL;
T0* _array_of1=NULL;
T0* _rto=NULL;
_rto=XrT62run_type(a1);
/*IF*/if (XrT62is_array(_rto)) {
_array_of1=XrT62run_type(rT107array_of(C));
_array_of2=rT108first((T108*)XrT62generic_list(_rto));
_array_of3=XrT62smallest_ancestor(_array_of1,_array_of2);
/*IF*/if (((T0 *)_array_of3)==((T0 *)_array_of1)) {
R=(T0 *)C;
}
 else if (((T0 *)_array_of3)==((T0 *)_array_of2)) {
R=a1;
}
else {
{T107 *n=((T107*)se_new(107));
rT107make(n,NULL,_array_of3);
R=(T0 *)n;}}
/*FI*/}
else {
rT107fatal_error((T0 *)ms1_107);
}
/*FI*/return R;
}
/*TYPE_ARRAY*/void rT107c_struct(T107 *C){
/*IF*/if (XrT62is_expanded(XrT62run_type(rT107array_of(C)))) {
rT44put_string((T44*)oRBC27cpp,(T0 *)ms5_107);
rT44put_integer((T44*)oRBC27cpp,rT107id(C));
rT44put_string((T44*)oRBC27cpp,(T0 *)ms6_107);
rT44put_integer((T44*)oRBC27cpp,XrT62id(rT107array_of(C)));
rT44put_character((T44*)oRBC27cpp,'\40');
rT44put_string((T44*)oRBC27cpp,(T0 *)ms7_107);
}
else {
rT44put_character((T44*)oRBC27cpp,'\12');
}
/*FI*/}/*TYPE_ARRAY*/int rT107displacement(/*C*/void){
int R=0;
void * _p=0;
R=((0),sizeof(T8));
return R;
}
/*TYPE_ARRAY*/int rT107is_a(T107 *C,T0* a1){
int R=0;
/*IF*/if (((T0 *)rT107run_class(C))==((T0 *)XrT62run_class(a1))) {
R=1;
}
 else if (XrT62is_array(a1)) {
R=XrT62is_a(rT107array_of(C),rT108first((T108*)XrT62generic_list(a1)));
}
 else if (rT53is_subclass_of((T53*)rT107base_class(C),XrT62base_class(a1))) {
R=1;
}
else {
/*IF*/if (rT53is_subclass_of((T53*)XrT62base_class(a1),rT107base_class(C))) {
rT48add_type(a1,(T0 *)ms2_107);
rT48add_type((T0 *)C,(T0 *)ms3_107);
}
else {
rT48add_type((T0 *)C,(T0 *)ms105_27);
rT48add_type(a1,(T0 *)ms102_27);
}
/*FI*/}
/*FI*/return R;
}
/*TYPE_ARRAY*/void rT107make(T107 *C,T0* a1,T0* a2){
{T51 *n=((T51*)se_new(51));
rT51make(n,(T0 *)ms37_27,a1);
C->_base_class_name=(T0 *)n;}
C->_generic_list=ma(108,0,1,a2);
/*IF*/if (((T0 *)XrT62run_type(a2))==((T0 *)a2)) {
C->_run_type=(T0 *)C;
}
/*FI*/{T7 *n=((T7*)se_new(7));
rT7make(n,16);
C->_written_mark=(T0 *)n;}
rT7append((T7*)(C)->_written_mark,(T0 *)ms37_27);
rT7extend((T7*)(C)->_written_mark,'\133');
rT7append((T7*)(C)->_written_mark,XrT62written_mark(a2));
rT7extend((T7*)(C)->_written_mark,'\135');
}/*TYPE_ARRAY*/T0* rT107array_of(T107 *C){
T0* R=NULL;
R=rT108first((T108*)(C)->_generic_list);
return R;
}
/*TYPE_ARRAY*/void rT107c_type_in(/*C*/T0* a1){
rT7append((T7*)a1,(T0 *)ms3_62);
}/*TYPE_ARRAY*/void rT107c_typedef(T107 *C){
int _mem_id=0;
_mem_id=rT107id(C);
rT44put_string((T44*)oRBC27cpp,(T0 *)ms8_107);
/*IF*/if (XrT62is_expanded(XrT62run_type(rT107array_of(C)))) {
rT44put_integer((T44*)oRBC27cpp,_mem_id);
}
else {
rT44put_string((T44*)oRBC27cpp,(T0 *)ms9_107);
}
/*FI*/rT44put_string((T44*)oRBC27cpp,(T0 *)ms10_107);
rT44put_integer((T44*)oRBC27cpp,_mem_id);
rT44put_string((T44*)oRBC27cpp,(T0 *)ms11_107);
}/*TYPE_ARRAY*/int rT107is_run_type(T107 *C){
int R=0;
R=((int)(C)->_run_type);
return R;
}
/*TYPE_ARRAY*/T0* rT107run_time_mark(T107 *C){
T0* R=NULL;
R=((T107*)(C)->_run_type)->_written_mark;
return R;
}
/*TYPE_ARRAY*/T0* rT107to_runnable(T107 *C,T0* a1){
T0* R=NULL;
T0* _rt=NULL;
T0* _run_array_of=NULL;
/*IF*/if (((T0 *)(C)->_run_type)==((T0 *)C)) {
_run_array_of=XrT62to_runnable(rT107array_of(C),a1);
R=(T0 *)C;
}
else {
_run_array_of=XrT62to_runnable(rT107array_of(C),a1);
/*IF*/if ((!(_run_array_of))||(!(XrT62is_run_type(_run_array_of)))) {
rT107error(XrT62start_position(rT107array_of(C)),(T0 *)ms4_107);
}
/*FI*/_run_array_of=XrT62run_type(_run_array_of);
/*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
/*IF*/if (!((C)->_run_type)) {
{T107 *n=((T107*)se_new(107));
rT107make(n,rT107start_position(C),_run_array_of);
C->_run_type=(T0 *)n;}
R=(T0 *)C;
}
else {
/*IF*/if (((T0 *)rT108first((T108*)((T107*)(C)->_run_type)->_generic_list))==((T0 *)_run_array_of)) {
R=(T0 *)C;
}
else {
R=rT107twin(C);
{T107 *n=((T107*)se_new(107));
rT107make(n,rT107start_position(C),_run_array_of);
_rt=(T0 *)n;}
/*[IRF3:set_run_type*//*AW*/((T107*)R)->_run_type=(_rt);/*]*/
}
/*FI*/}
/*FI*/}
/*FI*/}
/*FI*/return R;
}
/*TYPE_ARRAY*/void rT107error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*TYPE_ARRAY*/T0* rT107start_position(T107 *C){
T0* R=NULL;
R=((T51*)(C)->_base_class_name)->_start_position;
return R;
}
/*TYPE_ARRAY*/T0* rT107base_class(T107 *C){
T0* R=NULL;
T0* _bcn=NULL;
_bcn=(C)->_base_class_name;
/*IF*/if (((int)_bcn)) {
R=rT51base_class((T51*)_bcn);
}
else {
rT48append((T0 *)ms2_62);
rT48add_type((T0 *)C,(T0 *)ms102_27);
/*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48);
rT48die_with_code(1);
/*]*/
}
/*FI*/return R;
}
/*TYPE_ARRAY*/void rT107copy(T107 *C,T0* a1){
/*IF*//*AF*//*AE*/
memcpy(C,a1,s[C->id]);
/*FI*/}/*TYPE_ARRAY*/int rT107is_a_in(T107 *C,T0* a1,T0* a2){
int R=0;
T0* _ct=NULL;
T0* _t2=NULL;
T0* _t1=NULL;
/*IF*/if (rT7is_equal((T7*)(C)->_written_mark,XrT62written_mark(a1))) {
R=1;
}
else {
_ct=((T269*)a2)->_current_type;
_t1=rT107to_runnable(C,_ct);
_t2=XrT62to_runnable(a1,_ct);
/*IF*/if (rT7is_equal((T7*)XrT62run_time_mark(_t1),XrT62run_time_mark(_t2))) {
R=1;
}
else {
R=XrT62is_a(_t1,_t2);
}
/*FI*/}
/*FI*/return R;
}
/*TYPE_ARRAY*/int rT107has_creation(T107 *C,T0* a1){
int R=0;
/*IF*/if (((T0 *)C)==((T0 *)(C)->_run_type)) {
R=rT53has_creation((T53*)rT107base_class(C),a1);
}
else {
R=rT107has_creation((T107*)(C)->_run_type,a1);
}
/*FI*/return R;
}
int ofBC109used_as_reference=0;
/*TYPE_BOOLEAN*/void rT109used_as_reference(/*C*/void){
if (ofBC109used_as_reference==0){
ofBC109used_as_reference=1;
rT109load_ref((T0 *)ms41_27);
}}
/*TYPE_BOOLEAN*/T0* rT109generic_list(T109 *C){
T0* R=NULL;
rT48add_type((T0 *)C,(T0 *)ms1_62);
/*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48);
rT48die_with_code(1);
/*]*/
return R;
}
/*TYPE_BOOLEAN*/T0* rT109look_up_for(T109 *C,T0* a1,T0* a2){
T0* R=NULL;
R=rT53look_up_for((T53*)rT109base_class(C),a1,a2);
return R;
}
/*TYPE_BOOLEAN*/T0* rT109run_class(T109 *C){
T0* R=NULL;
R=rT55run_class(rT109run_type(C));
return R;
}
/*TYPE_BOOLEAN*/void rT109mapping_c_in(/*C*/T0* a1){
rT7append((T7*)a1,(T0 *)ms3_109);
}/*TYPE_BOOLEAN*/T0* rT109smallest_ancestor(T109 *C,T0* a1){
T0* R=NULL;
T0* _rto=NULL;
_rto=XrT62run_type(a1);
/*IF*/if (XrT62is_boolean(_rto)) {
R=(T0 *)C;
}
else {
R=rT118smallest_ancestor((T118*)rT109type_boolean_ref(),_rto);
}
/*FI*/return R;
}
/*TYPE_BOOLEAN*/void rT109to_reference(T109 *C){
rT44to_reference((T44*)oRBC27cpp,(T0 *)C,rT109type_boolean_ref());
}/*TYPE_BOOLEAN*/int rT109is_a(T109 *C,T0* a1){
int R=0;
/*IF*/if (XrT62is_boolean(a1)) {
R=1;
}
else {
R=rT53is_subclass_of((T53*)rT109base_class(C),XrT62base_class(a1));
/*IF*/if (R) {
rT109used_as_reference();
}
/*FI*/}
/*FI*//*IF*/if (!(R)) {
rT48add_type((T0 *)C,(T0 *)ms105_27);
rT48add_type(a1,(T0 *)ms102_27);
}
/*FI*/return R;
}
/*TYPE_BOOLEAN*/void rT109make(T109 *C,T0* a1){
{T51 *n=((T51*)se_new(51));
rT51make(n,(T0 *)ms40_27,a1);
C->_base_class_name=(T0 *)n;}
}/*TYPE_BOOLEAN*/void rT109to_expanded(T109 *C){
rT44to_expanded((T44*)oRBC27cpp,rT109type_boolean_ref(),(T0 *)C);
}/*TYPE_BOOLEAN*/void rT109c_type_in(/*C*/T0* a1){
rT7append((T7*)a1,(T0 *)ms2_109);
}int ofBC27type_boolean_ref=0;
T0*oRBC27type_boolean_ref;
/*TYPE_BOOLEAN*/T0* rT109type_boolean_ref(/*C*/void){
if (ofBC27type_boolean_ref==0){
T0* R=NULL;
T0* _boolean_ref=NULL;
ofBC27type_boolean_ref=1;
{T51 *n=((T51*)se_new(51));
rT51make(n,(T0 *)ms41_27,NULL);
_boolean_ref=(T0 *)n;}
{T118 *n=((T118*)se_new(118));
/*[IRF3:make*//*AW*/(n)->_base_class_name=(_boolean_ref);/*]*/
R=(T0 *)n;}
oRBC27type_boolean_ref=R;}
return oRBC27type_boolean_ref;}
/*TYPE_BOOLEAN*/T0* rT109run_type(T109 *C){
T0* R=NULL;
R=(T0 *)C;
return R;
}
/*TYPE_BOOLEAN*/T0* rT109to_runnable(T109 *C,T0* a1){
T0* R=NULL;
R=(T0 *)C;
rT109check_type(C);
return R;
}
/*TYPE_BOOLEAN*/void rT109error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*TYPE_BOOLEAN*/T0* rT109start_position(T109 *C){
T0* R=NULL;
R=((T51*)(C)->_base_class_name)->_start_position;
return R;
}
/*TYPE_BOOLEAN*/T0* rT109base_class(T109 *C){
T0* R=NULL;
T0* _bcn=NULL;
_bcn=(C)->_base_class_name;
/*IF*/if (((int)_bcn)) {
R=rT51base_class((T51*)_bcn);
}
else {
rT48append((T0 *)ms2_62);
rT48add_type((T0 *)C,(T0 *)ms102_27);
/*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48);
rT48die_with_code(1);
/*]*/
}
/*FI*/return R;
}
/*TYPE_BOOLEAN*/int rT109is_a_in(T109 *C,T0* a1,T0* a2){
int R=0;
T0* _ct=NULL;
T0* _t2=NULL;
T0* _t1=NULL;
/*IF*/if (rT7is_equal((T7*)/*(IRF4*/(T0 *)ms40_27/*)*/,XrT62written_mark(a1))) {
R=1;
}
else {
_ct=((T269*)a2)->_current_type;
_t1=rT109to_runnable(C,_ct);
_t2=XrT62to_runnable(a1,_ct);
/*IF*/if (rT7is_equal((T7*)XrT62run_time_mark(_t1),XrT62run_time_mark(_t2))) {
R=1;
}
else {
R=XrT62is_a(_t1,_t2);
}
/*FI*/}
/*FI*/return R;
}
int ofBC109check_type=0;
/*TYPE_BOOLEAN*/void rT109check_type(T109 *C){
if (ofBC109check_type==0){
T0* _rc=NULL;
T0* _bc=NULL;
ofBC109check_type=1;
_bc=rT109base_class(C);
/*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
_rc=rT109run_class(C);
}
/*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
/*IF*/if (!(((T53*)_bc)->_is_expanded)) {
rT109error(rT109start_position(C),(T0 *)ms4_109);
}
/*FI*/}
/*FI*/}}
/*TYPE_BOOLEAN*/int rT109has_creation(T109 *C,T0* a1){
int R=0;
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)a1)->_start_position);
rT109error(rT109start_position(C),(T0 *)ms1_110);
return R;
}
/*TYPE_BOOLEAN*/void rT109load_ref(/*C*/T0* a1){
T0* _rf=NULL;
T0* _rc=NULL;
T0* _cn=NULL;
{T51 *n=((T51*)se_new(51));
rT51make(n,a1,NULL);
_cn=(T0 *)n;}
_rc=rT53run_class((T53*)rT51base_class((T51*)_cn));
rT269set_at_run_time((T269*)_rc);
_rf=rT269get_feature_with((T269*)_rc,(T0 *)ms2_110);
}int ofBC111used_as_reference=0;
/*TYPE_CHARACTER*/void rT111used_as_reference(/*C*/void){
if (ofBC111used_as_reference==0){
ofBC111used_as_reference=1;
rT111load_ref((T0 *)ms43_27);
}}
/*TYPE_CHARACTER*/T0* rT111generic_list(T111 *C){
T0* R=NULL;
rT48add_type((T0 *)C,(T0 *)ms1_62);
/*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48);
rT48die_with_code(1);
/*]*/
return R;
}
/*TYPE_CHARACTER*/T0* rT111look_up_for(T111 *C,T0* a1,T0* a2){
T0* R=NULL;
R=rT53look_up_for((T53*)rT111base_class(C),a1,a2);
return R;
}
/*TYPE_CHARACTER*/T0* rT111run_class(T111 *C){
T0* R=NULL;
R=rT55run_class(rT111run_type(C));
return R;
}
/*TYPE_CHARACTER*/void rT111mapping_c_in(/*C*/T0* a1){
rT7append((T7*)a1,(T0 *)ms3_111);
}/*TYPE_CHARACTER*/T0* rT111smallest_ancestor(T111 *C,T0* a1){
T0* R=NULL;
T0* _rto=NULL;
_rto=XrT62run_type(a1);
/*IF*/if (XrT62is_character(_rto)) {
R=(T0 *)C;
}
else {
R=rT118smallest_ancestor((T118*)rT111type_character_ref(),_rto);
}
/*FI*/return R;
}
/*TYPE_CHARACTER*/void rT111to_reference(T111 *C){
rT44to_reference((T44*)oRBC27cpp,(T0 *)C,rT111type_character_ref());
}/*TYPE_CHARACTER*/int rT111is_a(T111 *C,T0* a1){
int R=0;
/*IF*/if (XrT62is_character(a1)) {
R=1;
}
else {
R=rT53is_subclass_of((T53*)rT111base_class(C),XrT62base_class(a1));
/*IF*/if (R) {
rT111used_as_reference();
}
/*FI*/}
/*FI*//*IF*/if (!(R)) {
rT48add_type((T0 *)C,(T0 *)ms105_27);
rT48add_type(a1,(T0 *)ms102_27);
}
/*FI*/return R;
}
/*TYPE_CHARACTER*/void rT111make(T111 *C,T0* a1){
{T51 *n=((T51*)se_new(51));
rT51make(n,(T0 *)ms42_27,a1);
C->_base_class_name=(T0 *)n;}
}/*TYPE_CHARACTER*/void rT111to_expanded(T111 *C){
rT44to_expanded((T44*)oRBC27cpp,rT111type_character_ref(),(T0 *)C);
}/*TYPE_CHARACTER*/void rT111c_type_in(/*C*/T0* a1){
rT7append((T7*)a1,(T0 *)ms2_111);
}int ofBC27type_character_ref=0;
T0*oRBC27type_character_ref;
/*TYPE_CHARACTER*/T0* rT111type_character_ref(/*C*/void){
if (ofBC27type_character_ref==0){
T0* R=NULL;
T0* _character_ref=NULL;
ofBC27type_character_ref=1;
{T51 *n=((T51*)se_new(51));
rT51make(n,(T0 *)ms43_27,NULL);
_character_ref=(T0 *)n;}
{T118 *n=((T118*)se_new(118));
/*[IRF3:make*//*AW*/(n)->_base_class_name=(_character_ref);/*]*/
R=(T0 *)n;}
oRBC27type_character_ref=R;}
return oRBC27type_character_ref;}
/*TYPE_CHARACTER*/T0* rT111run_type(T111 *C){
T0* R=NULL;
R=(T0 *)C;
return R;
}
/*TYPE_CHARACTER*/T0* rT111to_runnable(T111 *C,T0* a1){
T0* R=NULL;
R=(T0 *)C;
rT111check_type(C);
return R;
}
/*TYPE_CHARACTER*/void rT111error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*TYPE_CHARACTER*/T0* rT111start_position(T111 *C){
T0* R=NULL;
R=((T51*)(C)->_base_class_name)->_start_position;
return R;
}
/*TYPE_CHARACTER*/T0* rT111base_class(T111 *C){
T0* R=NULL;
T0* _bcn=NULL;
_bcn=(C)->_base_class_name;
/*IF*/if (((int)_bcn)) {
R=rT51base_class((T51*)_bcn);
}
else {
rT48append((T0 *)ms2_62);
rT48add_type((T0 *)C,(T0 *)ms102_27);
/*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48);
rT48die_with_code(1);
/*]*/
}
/*FI*/return R;
}
/*TYPE_CHARACTER*/int rT111is_a_in(T111 *C,T0* a1,T0* a2){
int R=0;
T0* _ct=NULL;
T0* _t2=NULL;
T0* _t1=NULL;
/*IF*/if (rT7is_equal((T7*)/*(IRF4*/(T0 *)ms42_27/*)*/,XrT62written_mark(a1))) {
R=1;
}
else {
_ct=((T269*)a2)->_current_type;
_t1=rT111to_runnable(C,_ct);
_t2=XrT62to_runnable(a1,_ct);
/*IF*/if (rT7is_equal((T7*)XrT62run_time_mark(_t1),XrT62run_time_mark(_t2))) {
R=1;
}
else {
R=XrT62is_a(_t1,_t2);
}
/*FI*/}
/*FI*/return R;
}
int ofBC111check_type=0;
/*TYPE_CHARACTER*/void rT111check_type(T111 *C){
if (ofBC111check_type==0){
T0* _rc=NULL;
T0* _bc=NULL;
ofBC111check_type=1;
_bc=rT111base_class(C);
/*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
_rc=rT111run_class(C);
}
/*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
/*IF*/if (!(((T53*)_bc)->_is_expanded)) {
rT111error(rT111start_position(C),(T0 *)ms4_111);
}
/*FI*/}
/*FI*/}}
/*TYPE_CHARACTER*/int rT111has_creation(T111 *C,T0* a1){
int R=0;
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)a1)->_start_position);
rT111error(rT111start_position(C),(T0 *)ms1_110);
return R;
}
/*TYPE_CHARACTER*/void rT111load_ref(/*C*/T0* a1){
T0* _rf=NULL;
T0* _rc=NULL;
T0* _cn=NULL;
{T51 *n=((T51*)se_new(51));
rT51make(n,a1,NULL);
_cn=(T0 *)n;}
_rc=rT53run_class((T53*)rT51base_class((T51*)_cn));
rT269set_at_run_time((T269*)_rc);
_rf=rT269get_feature_with((T269*)_rc,(T0 *)ms2_110);
}int ofBC112used_as_reference=0;
/*TYPE_DOUBLE*/void rT112used_as_reference(/*C*/void){
if (ofBC112used_as_reference==0){
ofBC112used_as_reference=1;
rT112load_ref((T0 *)ms46_27);
}}
/*TYPE_DOUBLE*/T0* rT112generic_list(T112 *C){
T0* R=NULL;
rT48add_type((T0 *)C,(T0 *)ms1_62);
/*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48);
rT48die_with_code(1);
/*]*/
return R;
}
/*TYPE_DOUBLE*/T0* rT112look_up_for(T112 *C,T0* a1,T0* a2){
T0* R=NULL;
R=rT53look_up_for((T53*)rT112base_class(C),a1,a2);
return R;
}
/*TYPE_DOUBLE*/T0* rT112run_class(T112 *C){
T0* R=NULL;
R=rT55run_class(rT112run_type(C));
return R;
}

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