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

This is compile_to_c28.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"
/*CLASS_NAME_LIST*/void rT128warning(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48warning((T48*)oRBC27eh,a2);
}/*CLASS_NAME_LIST*/int rT128index_of(T128 *C,T0* a1){
int R=0;
T0* _to_string=NULL;
_to_string=/*XrT*NAME*/((T94*)a1)->_to_string;
R=((T127*)(C)->_list)->_upper;
while (!(((R)==(0))||(((T0 *)_to_string)==((T0 *)((T51*)rT127item((T127*)(C)->_list,R))->_to_string)))) {
R=(R)-(1);
}
return R;
}
/*CLASS_NAME_LIST*/int rT128gives_permission_to(T128 *C,T0* a1){
int R=0;
int _i=0;
/*IF*/if ((rT128index_of(C,a1))>(0)) {
R=1;
}
else {
_i=((T127*)(C)->_list)->_upper;
while (!((R)||((_i)==(0)))) {
R=rT51is_subclass_of((T51*)a1,rT127item((T127*)(C)->_list,_i));
_i=(_i)-(1);
}
}
/*FI*/return R;
}
/*CLASS_NAME_LIST*/void rT128make(T128 *C,T0* a1){
int _i2=0;
int _i=0;
C->_list=a1;
_i=((T127*)(C)->_list)->_upper;
while (!((_i)==(0))) {
_i2=rT128index_of(C,rT127item((T127*)(C)->_list,_i));
/*IF*/if ((_i2)!=(_i)) {
rT48add_position(((T51*)rT127item((T127*)(C)->_list,_i2))->_start_position);
rT128warning(((T51*)rT127item((T127*)(C)->_list,_i))->_start_position,(T0 *)ms1_128);
}
/*FI*/_i=(_i)-(1);
}
}/*PARENT_LIST*/T0* rT133first_parent_for(T133 *C,T0* a1){
T0* R=NULL;
T0* _pbc=NULL;
T0* _p=NULL;
int _i=0;
_i=1;
while (!(((int)R))) {
_p=rT132item((T132*)(C)->_list,_i);
_pbc=XrT62base_class(((T120*)_p)->_type);
/*IF*/if (((T0 *)_pbc)==((T0 *)a1)) {
R=_p;
}
 else if (rT53is_subclass_of((T53*)_pbc,a1)) {
R=_p;
}
/*FI*/_i=(_i)+(1);
}
return R;
}
/*PARENT_LIST*/void rT133fatal_error(/*C*/T0* a1){
rT48fatal_error(a1);
}/*PARENT_LIST*/int rT133count(T133 *C){
int R=0;
R=((T132*)(C)->_list)->_upper;
return R;
}
/*PARENT_LIST*/void rT133error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*PARENT_LIST*/T0* rT133clients_for(T133 *C,T0* a1,T0* a2){
T0* R=NULL;
T0* _c=NULL;
int _i=0;
_i=1;
while (!((_i)>(((T132*)(C)->_list)->_upper))) {
_c=rT120clients_for((T120*)rT132item((T132*)(C)->_list,_i),a1,a2);
/*IF*/if (!(_c)) {
}
 else if (!(R)) {
R=_c;
}
else {
R=rT125merge_with((T125*)R,_c,a1,a2);
}
/*FI*/_i=(_i)+(1);
}
return R;
}
/*PARENT_LIST*/int rT133has_parent(T133 *C,T0* a1){
int R=0;
T0* _bc=NULL;
int _i=0;
_i=1;
while (!(((R)||((_i)>(((T132*)(C)->_list)->_upper)))||((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)>(0)))) {
_bc=XrT62base_class(((T120*)rT132item((T132*)(C)->_list,_i))->_type);
/*IF*/if (((int)_bc)) {
/*IF*/if (((T0 *)_bc)==((T0 *)rT60first((T60*)oRBC53visited))) {
rT48append((T0 *)ms3_133);
rT48append(((T51*)((T53*)rT60first((T60*)oRBC53visited))->_base_class_name)->_to_string);
rT48append((T0 *)ms4_133);
rT48append(((T51*)rT133base_class_name(C))->_to_string);
rT133error(XrT62start_position(((T120*)rT132item((T132*)(C)->_list,_i))->_type),(T0 *)ms102_27);
}
 else if (((T0 *)a1)==((T0 *)_bc)) {
R=1;
}
 else if (rT60fast_has((T60*)oRBC53visited,_bc)) {
}
else {
R=rT53is_subclass_of_aux((T53*)_bc,a1);
}
/*FI*/}
/*FI*/_i=(_i)+(1);
}
return R;
}
/*PARENT_LIST*/int rT133has_redefine(T133 *C,T0* a1){
int R=0;
int _i=0;
_i=1;
while (!((R)||((_i)>(((T132*)(C)->_list)->_upper)))) {
R=rT120has_redefine((T120*)rT132item((T132*)(C)->_list,_i),a1);
_i=(_i)+(1);
}
return R;
}
/*PARENT_LIST*/T0* rT133super(T133 *C){
T0* R=NULL;
R=rT132first((T132*)(C)->_list);
return R;
}
/*PARENT_LIST*/void rT133collect_for(T133 *C,int a1,T0* a2){
int _i=0;
_i=1;
while (!((_i)>(((T132*)(C)->_list)->_upper))) {
rT120collect_for((T120*)rT132item((T132*)(C)->_list,_i),a1,a2);
_i=(_i)+(1);
}
}/*PARENT_LIST*/void rT133collect_invariant(T133 *C,T0* a1){
int _i=0;
_i=((T132*)(C)->_list)->_upper;
while (!((_i)==(0))) {
rT53collect_invariant((T53*)XrT62base_class(((T120*)rT132item((T132*)(C)->_list,_i))->_type),a1);
_i=(_i)-(1);
}
}/*PARENT_LIST*/void rT133get_started(T133 *C){
int _i=0;
_i=1;
while (!((_i)>(((T132*)(C)->_list)->_upper))) {
rT120get_started((T120*)rT132item((T132*)(C)->_list,_i),(T0 *)C);
_i=(_i)+(1);
}
}/*PARENT_LIST*/T0* rT133look_up_for(T133 *C,T0* a1,T0* a2){
T0* R=NULL;
T0* _p_result=NULL;
T0* _p_f=NULL;
T0* _f=NULL;
int _i=0;
_i=1;
while (!(((_i)>(((T132*)(C)->_list)->_upper))||((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)>(0)))) {
_p_f=rT132item((T132*)(C)->_list,_i);
_i=(_i)+(1);
_f=rT120look_up_for((T120*)_p_f,a1,a2);
/*IF*/if (!(_f)) {
}
 else if (!(R)) {
R=_f;
_p_result=_p_f;
}
 else if (((T0 *)R)==((T0 *)_f)) {
}
else {
/*IF*/if ((rT120has_select((T120*)_p_result,a2))&&(rT120has_select((T120*)_p_f,a2))) {
rT48add_position(rT120start_position((T120*)_p_result));
rT48append((T0 *)ms5_133);
rT48append(/*XrT*FEATURE_NAME*/((T70*)a2)->_to_string);
rT133error(rT120start_position((T120*)_p_f),(T0 *)ms102_27);
R=NULL;
}
/*FI*//*IF*/if (rT120has_select((T120*)_p_f,a2)) {
/*IF*/if (XrT66is_merge_with(_f,R,a1)) {
R=_f;
_p_result=_p_f;
}
else {
rT48add_position(XrT66start_position(R));
rT133error(XrT66start_position(_f),(T0 *)ms6_133);
R=NULL;
}
/*FI*/}
 else if (XrT66is_deferred(_f)) {
/*IF*/if (XrT66is_merge_with(R,_f,a1)) {
}
else {
rT48add_position(XrT66start_position(R));
rT133error(XrT66start_position(_f),(T0 *)ms7_133);
R=NULL;
}
/*FI*/}
 else if (XrT66is_deferred(R)) {
/*IF*/if (XrT66is_merge_with(_f,R,a1)) {
R=_f;
_p_result=_p_f;
}
else {
rT48add_position(XrT66start_position(R));
rT133error(XrT66start_position(_f),(T0 *)ms8_133);
R=NULL;
}
/*FI*/}
else {
rT48add_position(rT120start_position((T120*)_p_f));
rT48add_position(rT120start_position((T120*)_p_result));
rT48add_position(XrT66start_position(R));
rT48add_position(XrT66start_position(_f));
rT48append((T0 *)ms9_133);
/*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48);
rT48die_with_code(1);
/*]*/
}
/*FI*/}
/*FI*/}
return R;
}
/*PARENT_LIST*/T0* rT133new_name_of(T133 *C,T0* a1,T0* a2){
T0* R=NULL;
T0* _bc=NULL;
T0* _p=NULL;
int _i=0;
_i=((T132*)(C)->_list)->_upper;
while (!(((int)R))) {
_p=rT132item((T132*)(C)->_list,_i);
_bc=XrT62base_class(((T120*)_p)->_type);
/*IF*/if ((((T0 *)_bc)==((T0 *)a1))||(rT53is_subclass_of((T53*)_bc,a1))) {
R=rT120new_name_of((T120*)_p,a1,a2);
}
/*FI*/_i=(_i)-(1);
}
/*IF*/if (!(R)) {
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)a2)->_start_position);
rT48add_position((C)->_start_position);
rT48append((T0 *)ms1_133);
rT48append(/*XrT*FEATURE_NAME*/((T70*)a2)->_to_string);
rT133fatal_error((T0 *)ms2_133);
}
/*FI*/return R;
}
/*PARENT_LIST*/T0* rT133base_class_name(T133 *C){
T0* R=NULL;
R=((T53*)(C)->_base_class)->_base_class_name;
return R;
}
/*PARENT_LIST*/int rT133is_a_vncg(T133 *C,T0* a1,T0* a2){
int R=0;
int _i=0;
_i=((T132*)(C)->_list)->_upper;
while (!((R)||((_i)==(0)))) {
R=rT120is_a_vncg((T120*)rT132item((T132*)(C)->_list,_i),a1,a2);
_i=(_i)-(1);
}
return R;
}
/*PARENT_LIST*/int rT133has(T133 *C,T0* a1){
int R=0;
int _i=0;
_i=((T132*)(C)->_list)->_upper;
while (!((R)||((_i)==(0)))) {
R=rT120has((T120*)rT132item((T132*)(C)->_list,_i),a1);
_i=(_i)-(1);
}
return R;
}
/*PARENT_LIST*/void rT133make(T133 *C,T0* a1,T0* a2,T0* a3,T0* a4){
C->_base_class=a1;
C->_heading_comment=a3;
C->_start_position=a2;
C->_list=a4;
}/*ASSIGNMENT*/void rT256warning(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48warning((T48*)oRBC27eh,a2);
}/*ASSIGNMENT*/T0* rT256current_type(T256 *C){
T0* R=NULL;
/*IF*/if (((int)(C)->_run_compound)) {
R=((T142*)(C)->_run_compound)->_current_type;
}
/*FI*/return R;
}
/*ASSIGNMENT*/void rT256fatal_error(/*C*/T0* a1){
rT48fatal_error(a1);
}/*ASSIGNMENT*/T0* rT256to_runnable(T256 *C,T0* a1){
T0* R=NULL;
T0* _e=NULL;
T0* _right_run_type=NULL;
T0* _left_run_type=NULL;
/*IF*/if (!((C)->_run_compound)) {
C->_run_compound=a1;
_e=XrT72to_runnable((C)->_left_side,rT256current_type(C));
/*IF*/if (!(_e)) {
rT256error(XrT72start_position((C)->_left_side),(T0 *)ms99_27);
}
else {
C->_left_side=_e;
}
/*FI*/_e=XrT72to_runnable((C)->_right_side,rT256current_type(C));
/*IF*/if (!(_e)) {
rT256error(XrT72start_position((C)->_right_side),(T0 *)ms100_27);
}
else {
C->_right_side=_e;
}
/*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
/*IF*/if (!(XrT72is_a((C)->_right_side,(C)->_left_side))) {
rT256error(XrT72start_position((C)->_left_side),(T0 *)ms9_256);
}
/*FI*/}
/*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
_left_run_type=XrT62run_type(rT256left_type(C));
_right_run_type=XrT62run_type(rT256right_type(C));
/*IF*/if (XrT62is_reference(_left_run_type)) {
/*IF*/if (XrT62is_reference(_right_run_type)) {
}
else {
XrT62used_as_reference(_right_run_type);
}
/*FI*/}
else {
/*IF*/if (XrT62is_reference(_right_run_type)) {
/*IF*/if (XrT72is_void((C)->_right_side)) {
rT48add_position(XrT72start_position((C)->_right_side));
rT48append((T0 *)ms10_256);
rT48add_type(rT256left_type(C),(T0 *)ms11_256);
rT48print_as_error((T48*)oRBC27eh);
}
else {
rT256warning(XrT72start_position((C)->_left_side),(T0 *)ms12_256);
}
/*FI*/}
else {
}
/*FI*/}
/*FI*/}
/*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
R=(T0 *)C;
}
/*FI*/}
else {
{T256 *n=((T256*)se_new(256));
rT256make(n,(C)->_left_side,(C)->_right_side);
R=(T0 *)n;}
R=rT256to_runnable((T256*)R,a1);
}
/*FI*/return R;
}
/*ASSIGNMENT*/T0* rT256left_type(T256 *C){
T0* R=NULL;
R=XrT72result_type((C)->_left_side);
return R;
}
/*ASSIGNMENT*/void rT256error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*ASSIGNMENT*/T0* rT256add_comment(T256 *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;
}
/*ASSIGNMENT*/T0* rT256start_position(T256 *C){
T0* R=NULL;
R=XrT72start_position((C)->_left_side);
return R;
}
/*ASSIGNMENT*/int rT256use_current(T256 *C){
int R=0;
R=XrT72use_current((C)->_left_side);
R=(R)||(XrT72use_current((C)->_right_side));
return R;
}
/*ASSIGNMENT*/void rT256compile_to_c(T256 *C){
int _trace_instruction=0;
T0* _right_run_type=NULL;
T0* _left_run_type=NULL;
_trace_instruction=!(XrT72c_simple((C)->_right_side));
/*IF*/if (_trace_instruction) {
rT44rs_push_position((T44*)oRBC27cpp,'1',rT256start_position(C));
}
/*FI*/_left_run_type=XrT62run_type(rT256left_type(C));
_right_run_type=XrT62run_type(rT256right_type(C));
/*IF*/if (XrT62is_reference(_left_run_type)) {
/*IF*/if (XrT62is_reference(_right_run_type)) {
XrT72compile_to_c((C)->_left_side);
rT44put_character((T44*)oRBC27cpp,'\75');
/*IF*/if (XrT72is_current((C)->_right_side)) {
rT44put_string((T44*)oRBC27cpp,(T0 *)ms1_256);
}
/*FI*//*IF*/if (XrT72is_manifest_string((C)->_right_side)) {
rT44put_string((T44*)oRBC27cpp,(T0 *)ms2_256);
}
/*FI*/XrT72compile_to_c((C)->_right_side);
rT44put_string((T44*)oRBC27cpp,(T0 *)ms3_256);
}
else {
XrT72compile_to_c((C)->_left_side);
rT44put_character((T44*)oRBC27cpp,'\75');
XrT62to_reference(_right_run_type);
rT44put_character((T44*)oRBC27cpp,'\50');
XrT72compile_to_c((C)->_right_side);
rT44put_string((T44*)oRBC27cpp,(T0 *)ms4_256);
}
/*FI*/}
else {
/*IF*/if (XrT62is_reference(_right_run_type)) {
rT48add_position(XrT72start_position((C)->_left_side));
rT256fatal_error((T0 *)ms5_256);
}
else {
XrT72compile_to_c((C)->_left_side);
rT44put_character((T44*)oRBC27cpp,'\75');
XrT72compile_to_c((C)->_right_side);
rT44put_string((T44*)oRBC27cpp,(T0 *)ms6_256);
}
/*FI*/}
/*FI*//*IF*/if (_trace_instruction) {
rT44rs_pop_position((T44*)oRBC27cpp);
}
/*FI*/}/*ASSIGNMENT*/int rT256is_pre_computable(T256 *C){
int R=0;
R=(XrT72is_result((C)->_left_side))&&(XrT72is_pre_computable((C)->_right_side));
return R;
}
/*ASSIGNMENT*/T0* rT256right_type(T256 *C){
T0* R=NULL;
R=XrT72result_type((C)->_right_side);
return R;
}
/*ASSIGNMENT*/void rT256make(T256 *C,T0* a1,T0* a2){
C->_left_side=a1;
C->_right_side=a2;
}/*INTEGER_CONSTANT*/T0* rT84twin(T84 *C){
T0* R=NULL;
/*IF*//*AF*//*AE*/
R=(T0 *)se_new(C->id);AF_1
rT84copy((T84*)R,(T0 *)C);
AF_0
/*FI*/return R;
}
/*INTEGER_CONSTANT*/int rT84is_static(T84 *C){
int R=0;
C->_static_value_mem=(C)->_value;
R=1;
return R;
}
/*INTEGER_CONSTANT*/int rT84static_value(T84 *C){
int R=0;
R=(C)->_static_value_mem;
return R;
}
/*INTEGER_CONSTANT*/T0* rT84to_runnable(T84 *C,T0* a1){
T0* R=NULL;
/*IF*/if (!((C)->_current_type)) {
C->_current_type=a1;
R=(T0 *)C;
}
else {
R=rT84twin(C);
/*[IRF3:set_current_type*//*AW*/((T84*)R)->_current_type=(a1);/*]*/
}
/*FI*/return R;
}
/*INTEGER_CONSTANT*/void rT84error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*INTEGER_CONSTANT*/T0* rT84add_comment(T84 *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 ofBC84result_type=0;
T0*oRBC84result_type;
/*INTEGER_CONSTANT*/T0* rT84result_type(/*C*/void){
if (ofBC84result_type==0){
T0* R=NULL;
ofBC84result_type=1;
{T113 *n=((T113*)se_new(113));
rT113make(n,NULL);
R=(T0 *)n;}
oRBC84result_type=R;}
return oRBC84result_type;}
/*INTEGER_CONSTANT*/T0* rT84_px45(T84 *C){
T0* R=NULL;
{T84 *n=((T84*)se_new(84));
rT84make(n,-((C)->_value),NULL);
R=(T0 *)n;}
return R;
}
/*INTEGER_CONSTANT*/void rT84compile_to_c(T84 *C){
rT44put_integer((T44*)oRBC27cpp,(C)->_value);
}/*INTEGER_CONSTANT*/int rT84to_integer(T84 *C){
int R=0;
R=(C)->_value;
return R;
}
/*INTEGER_CONSTANT*/T0* rT84to_real_constant(T84 *C){
T0* R=NULL;
rT84error((C)->_start_position,(T0 *)ms1_84);
return R;
}
/*INTEGER_CONSTANT*/void rT84copy(T84 *C,T0* a1){
/*IF*//*AF*//*AE*/
memcpy(C,a1,s[C->id]);
/*FI*/}/*INTEGER_CONSTANT*/int rT84is_a(T84 *C,T0* a1){
int R=0;
R=XrT62is_a(rT113run_type((T113*)rT84result_type()),XrT62run_type(XrT72result_type(a1)));
/*IF*/if (!(R)) {
rT48add_position((C)->_start_position);
rT84error(XrT72start_position(a1),(T0 *)ms2_72);
}
/*FI*/return R;
}
/*INTEGER_CONSTANT*/void rT84make(T84 *C,int a1,T0* a2){
C->_value=a1;
C->_start_position=a2;
}/*E_FALSE*/T0* rT78type_boolean(/*C*/void){
if (ofBC27type_boolean==0){
T0* R=NULL;
ofBC27type_boolean=1;
{T109 *n=((T109*)se_new(109));
rT109make(n,NULL);
R=(T0 *)n;}
oRBC27type_boolean=R;}
return oRBC27type_boolean;}
/*E_FALSE*/T0* rT78twin(T78 *C){
T0* R=NULL;
/*IF*//*AF*//*AE*/
R=(T0 *)se_new(C->id);AF_1
rT78copy((T78*)R,(T0 *)C);
AF_0
/*FI*/return R;
}
/*E_FALSE*/int rT78static_value(T78 *C){
int R=0;
R=(C)->_static_value_mem;
return R;
}
/*E_FALSE*/T0* rT78to_runnable(T78 *C,T0* a1){
T0* R=NULL;
/*IF*/if (!((C)->_current_type)) {
C->_current_type=a1;
R=(T0 *)C;
}
else {
R=rT78twin(C);
/*[IRF3:set_current_type*//*AW*/((T78*)R)->_current_type=(a1);/*]*/
}
/*FI*/return R;
}
/*E_FALSE*/void rT78error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*E_FALSE*/T0* rT78add_comment(T78 *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;
}
/*E_FALSE*/void rT78copy(T78 *C,T0* a1){
/*IF*//*AF*//*AE*/
memcpy(C,a1,s[C->id]);
/*FI*/}/*E_FALSE*/int rT78is_a(T78 *C,T0* a1){
int R=0;
R=XrT62is_a(rT109run_type((T109*)/*(IRF4*/rT78type_boolean()/*)*/),XrT62run_type(XrT72result_type(a1)));
/*IF*/if (!(R)) {
rT48add_position((C)->_start_position);
rT78error(XrT72start_position(a1),(T0 *)ms2_72);
}
/*FI*/return R;
}
T0*oRBC2tmp_string;
/*INTEGER*/int rT2min(T2 C,int a1){
int R=0;
/*IF*/if ((C)<(a1)) {
R=C;
}
else {
R=a1;
}
/*FI*/return R;
}
/*INTEGER*/int rT2max(T2 C,int a1){
int R=0;
/*IF*/if ((a1)<(C)) {
R=C;
}
else {
R=a1;
}
/*FI*/return R;
}
/*INTEGER*/T0* rT2to_string(T2 C){
T0* R=NULL;
{T7 *n=((T7*)se_new(7));
rT7make(n,0);
R=(T0 *)n;}
rT2append_in(C,R);
return R;
}
/*INTEGER*/char rT2digit(T2 C){
char R=0;
R=rT7item(ms1_2,(C)+(1));
return R;
}
/*INTEGER*/int rT2to_octal(T2 C){
int R=0;
/*IF*/if ((C)==(0)) {
}
 else if ((C)<(0)) {
R=-(rT2to_octal(-(C)));
}
else {
/*[IRF3:clear*//*AW*/((T7*)oRBC2tmp_string)->_count=(0);/*]*/
R=C;
while (!((R)==(0))) {
rT7extend((T7*)oRBC2tmp_string,rT2digit((R)%(8)));
R=(R)/(8);
}
rT7reverse((T7*)oRBC2tmp_string);
R=rT7to_integer((T7*)oRBC2tmp_string);
}
/*FI*/return R;
}
/*INTEGER*/void rT2append_in(T2 C,T0* a1){
int _i=0;
int _val=0;
/*IF*/if ((C)==(0)) {
rT7extend((T7*)a1,'0');
}
else {
/*IF*/if ((C)<(0)) {
rT7extend((T7*)a1,'\55');
rT2append_in(-(C),a1);
}
else {
_i=(((T7*)a1)->_count)+(1);
_val=C;
while (!((_val)==(0))) {
rT7extend((T7*)a1,rT2digit((_val)%(10)));
_val=(_val)/(10);
}
_val=((T7*)a1)->_count;
while (!((_i)>=(_val))) {
rT7swap((T7*)a1,_i,_val);
_val=(_val)-(1);
_i=(_i)+(1);
}
}
/*FI*/}
/*FI*/}/*INTEGER*/float rT2to_real(T2 C){
float R=0;
R=C;
return R;
}
/*INTEGER*/int rT2_ix94(T2 C,int a1){
int R=0;
/*IF*/if ((a1)==(0)) {
R=1;
}
 else if (((a1)%(2))==(0)) {
R=rT2_ix94((C)*(C),(a1)/(2));
}
else {
R=(C)*(rT2_ix94(C,(a1)-(1)));
}
/*FI*/return R;
}

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