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

This is compile_to_c17.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_DOUBLE*/void rT112mapping_c_in(/*C*/T0* a1){
rT7append((T7*)a1,(T0 *)ms3_112);
}/*TYPE_DOUBLE*/T0* rT112smallest_ancestor(T112 *C,T0* a1){
T0* R=NULL;
T0* _rto=NULL;
_rto=XrT62run_type(a1);
/*IF*/if (XrT62is_integer(_rto)) {
R=(T0 *)C;
}
 else if (XrT62is_real(_rto)) {
R=(T0 *)C;
}
 else if (XrT62is_double(_rto)) {
R=(T0 *)C;
}
else {
R=rT118smallest_ancestor((T118*)rT112type_double_ref(),_rto);
}
/*FI*/return R;
}
/*TYPE_DOUBLE*/void rT112to_reference(T112 *C){
rT44to_reference((T44*)oRBC27cpp,(T0 *)C,rT112type_double_ref());
}/*TYPE_DOUBLE*/int rT112is_a(T112 *C,T0* a1){
int R=0;
/*IF*/if (XrT62is_double(a1)) {
R=1;
}
else {
R=rT53is_subclass_of((T53*)rT112base_class(C),XrT62base_class(a1));
/*IF*/if (R) {
rT112used_as_reference();
}
/*FI*/}
/*FI*//*IF*/if (!(R)) {
rT48add_type((T0 *)C,(T0 *)ms105_27);
rT48add_type(a1,(T0 *)ms102_27);
}
/*FI*/return R;
}
/*TYPE_DOUBLE*/void rT112make(T112 *C,T0* a1){
{T51 *n=((T51*)se_new(51));
rT51make(n,(T0 *)ms45_27,a1);
C->_base_class_name=(T0 *)n;}
}/*TYPE_DOUBLE*/void rT112to_expanded(T112 *C){
rT44to_expanded((T44*)oRBC27cpp,rT112type_double_ref(),(T0 *)C);
}/*TYPE_DOUBLE*/void rT112c_type_in(/*C*/T0* a1){
rT7append((T7*)a1,(T0 *)ms2_112);
}int ofBC27type_double_ref=0;
T0*oRBC27type_double_ref;
/*TYPE_DOUBLE*/T0* rT112type_double_ref(/*C*/void){
if (ofBC27type_double_ref==0){
T0* R=NULL;
T0* _double_ref=NULL;
ofBC27type_double_ref=1;
{T51 *n=((T51*)se_new(51));
rT51make(n,(T0 *)ms46_27,NULL);
_double_ref=(T0 *)n;}
{T118 *n=((T118*)se_new(118));
/*[IRF3:make*//*AW*/(n)->_base_class_name=(_double_ref);/*]*/
R=(T0 *)n;}
oRBC27type_double_ref=R;}
return oRBC27type_double_ref;}
/*TYPE_DOUBLE*/T0* rT112run_type(T112 *C){
T0* R=NULL;
R=(T0 *)C;
return R;
}
/*TYPE_DOUBLE*/T0* rT112to_runnable(T112 *C,T0* a1){
T0* R=NULL;
R=(T0 *)C;
rT112check_type(C);
return R;
}
/*TYPE_DOUBLE*/void rT112error(/*C*/T0* a1,T0* a2){
rT48add_position(a1);
rT48error((T48*)oRBC27eh,a2);
}/*TYPE_DOUBLE*/T0* rT112start_position(T112 *C){
T0* R=NULL;
R=((T51*)(C)->_base_class_name)->_start_position;
return R;
}
/*TYPE_DOUBLE*/T0* rT112base_class(T112 *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_DOUBLE*/int rT112is_a_in(T112 *C,T0* a1,T0* a2){
int R=0;
T0* _ct=NULL;
T0* _t2=NULL;
T0* _t1=NULL;
/*IF*/if (rT7is_equal((T7*)/*(IRF4*/(T0 *)ms45_27/*)*/,XrT62written_mark(a1))) {
R=1;
}
else {
_ct=((T269*)a2)->_current_type;
_t1=rT112to_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 ofBC112check_type=0;
/*TYPE_DOUBLE*/void rT112check_type(T112 *C){
if (ofBC112check_type==0){
T0* _rc=NULL;
T0* _bc=NULL;
ofBC112check_type=1;
_bc=rT112base_class(C);
/*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
_rc=rT112run_class(C);
}
/*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
/*IF*/if (!(((T53*)_bc)->_is_expanded)) {
rT112error(rT112start_position(C),(T0 *)ms4_112);
}
/*FI*/}
/*FI*/}}
/*TYPE_DOUBLE*/int rT112has_creation(T112 *C,T0* a1){
int R=0;
rT48add_position(/*XrT*FEATURE_NAME*/((T70*)a1)->_start_position);
rT112error(rT112start_position(C),(T0 *)ms1_110);
return R;
}
/*TYPE_DOUBLE*/void rT112load_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);
}

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