/*
-- ANSI C code generated by :
-- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.82)      --
-- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
-- Dominique COLNET and Suzanne COLLIN -    colnet@loria.fr     --
--                 http://www.loria.fr/SmallEiffel              --
*/
#include "pretty.h"
int r818a_feature_name(T818* C){
int R=0;
/*IF*/if (r818a_prefix(C)) {
C->_last_feature_name=(((T818*)C))->_last_prefix/*125*/;
R=1;
}
 else if (r818a_infix(C)) {
C->_last_feature_name=(((T818*)C))->_last_infix/*121*/;
R=1;
}
 else if (r818a_identifier(C)) {
C->_last_feature_name=r511to_simple_feature_name(((T511*)(oBC818tmp_name)));
R=1;
}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.us_and*/
void r818a_feature_clause(T818* C){
T0* _comment=NULL;
T0* _clients=NULL;
T0* _feature_clause=NULL;
_clients=r818a_clients(C);
_comment=r818get_comments(C);
/*[IRF3.3clear*/((((T352*)(((T352*)(oBC818faof)))))->_upper)=(-(1));
/*]*/
while (!(!(r818a_feature_declaration(C)))) {
C->_ok=r818skip1(C,'\73');
/*IF*/if (((((T818*)C))->_last_feature_declaration/*101*/)!=((void*)(NULL))) {
r352add_last(((T352*)(oBC818faof)),(((T818*)C))->_last_feature_declaration/*101*/);
X359set_header_comment((((T818*)C))->_last_feature_declaration/*101*/,r818get_comments(C));
}
/*FI*/}
/*IF*/if (((((T352*)((T352*)(oBC818faof))))->_upper/*8*/)>=(0)) {
{T153*n=malloc(sizeof(*n));
*n=M153;
r153make(n,_clients,_comment,r352twin(((T352*)(oBC818faof))));
_feature_clause=(T0*)n;
}
r605add_feature_clause(((T605*)((((T818*)C))->_last_base_class/*65*/)),_feature_clause);
}
 else if ((_comment)!=((void*)(NULL))) {
{T153*n=malloc(sizeof(*n));
*n=M153;
r153make(n,_clients,_comment,NULL);
_feature_clause=(T0*)n;
}
r605add_feature_clause(((T605*)((((T818*)C))->_last_base_class/*65*/)),_feature_clause);
}
/*FI*/C->_last_keyword=NULL;
}
/*No:EIFFEL_PARSER.in_rescue*/
/*No:EIFFEL_PARSER.us_and_then*/
int r818a_manifest_constant(T818* C){
int R=0;
/*IF*/if (r818a_boolean_constant(C)) {
C->_last_manifest_constant=(((T818*)C))->_last_boolean_constant/*81*/;
R=1;
}
 else if (r818a_character_constant(C)) {
C->_last_manifest_constant=(((T818*)C))->_last_character_constant/*85*/;
R=1;
}
 else if (r818a_manifest_string(C)) {
C->_last_manifest_constant=(((T818*)C))->_last_manifest_string/*145*/;
R=1;
}
 else if (r818a_bit_constant(C)) {
C->_last_manifest_constant=(((T818*)C))->_last_bit_constant/*77*/;
R=1;
}
 else if (r818a_real_constant(C)) {
C->_last_manifest_constant=(((T818*)C))->_last_real_constant/*153*/;
R=1;
}
 else if (r818a_integer_constant(C)) {
C->_last_manifest_constant=(((T818*)C))->_last_integer_constant/*129*/;
R=1;
}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.last_instruction*/
int r818a_bit_constant(T818* C){
int R=0;
int _state=0;
int _c=0;
int _l=0;
/*IF*/if ((((((T818*)C))->_cc/*24*/)==('0'))||(((((T818*)C))->_cc/*24*/)==('1'))) {
_l=(((T818*)C))->_line/*16*/;
_c=(((T818*)C))->_column/*12*/;
/*[IRF3.3clear*/((((T7*)(((T7*)(oBC818tmp_string)))))->_count)=(0);
/*]*/
r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/);
while (!((_state)>(0))) {
r818next_char(C);
{int z1=(((T818*)C))->_cc/*24*/;

if(((48<=z1)&&(z1<=49))){
r7extend(((T7*)(oBC818tmp_string)),(((T818*)C))->_cc/*24*/);
}
 else 
if((66==z1)||(98==z1)){
{T940*n=malloc(sizeof(*n));
*n=M940;
r940make(n,r818pos(_l,_c),r7twin(((T7*)(oBC818tmp_string))));
C->_last_bit_constant=(T0*)n;
}
r818next_char(C);
r818skip_comments(C);
_state=1;
R=1;
}
 else{r818go_back_at(C,_l,_c);
_state=2;
}}
}
}
/*FI*/return R;
}
T0*oBC818faof=NULL;
/*No:EIFFEL_PARSER.fz_jvm_invokestatic*/
int r818a_index_clause(T818* C){
int R=0;
T0* _index_clause=NULL;
/*IF*/if (r818a_identifier(C)) {
R=1;
/*IF*/if (r818skip1(C,'\72')) {
{T782*n=malloc(sizeof(*n));
*n=M782;
/*[IRF3.3make*/((((T782*)(n)))->_index)=(r511to_string(((T511*)(oBC818tmp_name))));
/*]*/
_index_clause=(T0*)n;
}
/*IF*/if (r818a_index_value(C)) {
r782add_index_value(((T782*)_index_clause),(((T818*)C))->_last_index_value/*137*/);
}
else {
r818fcp(C,((T0*)ms141_818));
}
/*FI*/}
else {
{T782*n=malloc(sizeof(*n));
*n=M782;
/*[IRF3.3make*/((((T782*)(n)))->_index)=(NULL);
/*]*/
_index_clause=(T0*)n;
}
r782add_index_value(((T782*)_index_clause),r511to_simple_feature_name(((T511*)(oBC818tmp_name))));
}
/*FI*/}
 else if (r818a_manifest_constant(C)) {
R=1;
{T782*n=malloc(sizeof(*n));
*n=M782;
/*[IRF3.3make*/((((T782*)(n)))->_index)=(NULL);
/*]*/
_index_clause=(T0*)n;
}
r782add_index_value(((T782*)_index_clause),(((T818*)C))->_last_manifest_constant/*141*/);
}
/*FI*//*IF*/if (R) {
while (!(!(r818skip1(C,'\54')))) {
/*IF*/if (r818a_index_value(C)) {
r782add_index_value(((T782*)_index_clause),(((T818*)C))->_last_index_value/*137*/);
}
else {
r818fcp(C,((T0*)ms141_818));
}
/*FI*/}
r605add_index_clause(((T605*)((((T818*)C))->_last_base_class/*65*/)),_index_clause);
}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.line*/
/*No:EIFFEL_PARSER.make*/
/*No:EIFFEL_PARSER.last_index_value*/
/*No:EIFFEL_PARSER.show_nb_warnings*/
/*No:EIFFEL_PARSER.fz_rescue*/
int r818a_infix(T818* C){
int R=0;
T0* _sp=NULL;
/*IF*/if (r818a_keyword(C,((T0*)ms23_470))) {
R=1;
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
/*IF*/if (((((T818*)C))->_cc/*24*/)==('\42')) {
r818next_char(C);
}
else {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms96_818);
r818warning(r818current_position(C1),b1);
}/*]*/
}
/*FI*//*IF*/if (r818a_binary(C,_sp)) {
C->_last_infix=(((T818*)C))->_last_binary/*73*/;
}
 else if (r818a_free_operator(C)) {
C->_last_infix=r511to_infix_name(_sp);
}
else {
r818fcp(C,((T0*)ms97_818));
}
/*FI*//*IF*/if (!(r818skip1(C,'\42'))) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms98_818);
r818warning(r818current_position(C1),b1);
}/*]*/
}
/*FI*/}
/*FI*/return R;
}
T0* r818a_actuals(T818* C){
T0* R=NULL;
T0* _args=NULL;
/*IF*/if (r818skip1(C,'\50')) {
while (!(!(r818a_actual(C)))) {
/*IF*/if ((_args)==((void*)(NULL))) {
_args=se_ma96(1,(((T818*)C))->_last_expression/*97*/);
}
else {
X96add_last(_args,(((T818*)C))->_last_expression/*97*/);
}
/*FI*//*IF*/if ((!(r818skip1(C,'\54')))&&(((((T818*)C))->_cc/*24*/)!=('\51'))) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms143_818);
r818warning(r818current_position(C1),b1);
}/*]*/
}
/*FI*/}
/*IF*/if ((_args)==((void*)(NULL))) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms31_818);
r818warning(r818current_position(C1),b1);
}/*]*/
}
else {
{T431*n=malloc(sizeof(*n));
*n=M431;
/*[IRF3.3make*/((((T431*)(n)))->_list)=(_args);
/*]*/
R=(T0*)n;
}
}
/*FI*//*IF*/if (!(r818skip1(C,'\51'))) {
r818fcp(C,((T0*)ms32_818));
}
/*FI*/}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.us_pointer*/
/*No:EIFFEL_PARSER.fz_iinaiv*/
int r818a_actual(T818* C){
int R=0;
/*IF*/if (r818skip1(C,'\44')) {
/*IF*/if (r818a_identifier(C)) {
/*IF*/if (((r818a_result(C))||(r818a_void(C)))||(r818a_current(C))) {
r683add_position(X662start_position((((T818*)C))->_last_expression/*97*/));
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms155_818);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
else {
{T708*n=malloc(sizeof(*n));
*n=M708;
/*[IRF3.3make*/((((T708*)(n)))->_feature_name)=(r511to_simple_feature_name(((T511*)(oBC818tmp_name))));
/*]*/
C->_last_expression=(T0*)n;
}
R=1;
}
/*FI*/}
else {
r818fcp(C,((T0*)ms155_818));
}
/*FI*/}
 else if (r818a_expression(C)) {
R=1;
}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.us_string*/
/*No:EIFFEL_PARSER.local_vars*/
void r818a_base_class_name1(T818* C){
T0* _ccn=NULL;
int _do_warning=0;
int _state=0;
_ccn=(((T605*)((T605*)((((T818*)C))->_last_base_class/*65*/))))->_base_class_name/*24*/;
/*IF*/if (r3is_letter((((T818*)C))->_cc/*24*/)) {
r627set_line_column(((T627*)((((T451*)((T451*)_ccn)))->_start_position/*4*/)),(((T818*)C))->_line/*16*/,(((T818*)C))->_column/*12*/);
r511initialize(((T511*)(oBC818tmp_name)),(((T818*)C))->_line/*16*/,(((T818*)C))->_column/*12*/);
/*IF*/if ((((unsigned)((((T818*)C))->_cc/*24*/))>=((unsigned)('a')))) {
_do_warning=1;
C->_cc=r3to_upper((((T818*)C))->_cc/*24*/);
}
/*FI*//*[IRF3.6extend*/{char b1=(((T818*)C))->_cc/*24*/;
r7extend(((T7*)(oBC511tmp_string)),b1);
}/*]*/
while (!((_state)>(0))) {
r818next_char(C);
{int z1=(((T818*)C))->_cc/*24*/;

if(((48<=z1)&&(z1<=57))||((65<=z1)&&(z1<=90))||(95==z1)){
/*[IRF3.6extend*/{char b1=(((T818*)C))->_cc/*24*/;
r7extend(((T7*)(oBC511tmp_string)),b1);
}/*]*/
}
 else 
if(((97<=z1)&&(z1<=122))){
_do_warning=1;
/*[IRF3.6extend*/{char b1=r3to_upper((((T818*)C))->_cc/*24*/);
r7extend(((T7*)(oBC511tmp_string)),b1);
}/*]*/
}
 else{_state=1;
}}
}
r818skip_comments(C);
/*IF*/if (r511isa_keyword()) {
r683add_position((((T451*)((T451*)_ccn)))->_start_position/*4*/);
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms154_818);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
/*FI*//*IF*/if (_do_warning) {
r818warning((((T451*)((T451*)_ccn)))->_start_position/*4*/,((T0*)ms153_818));
}
/*FI*/r451identify(((T451*)_ccn),r511to_string(((T511*)(oBC818tmp_name))));
}
else {
r818fcp(C,((T0*)ms154_818));
}
/*FI*//*IF*/if (r52fast_has(((T52*)(oBC818forbidden_class)),(((T451*)((T451*)_ccn)))->_to_string/*0*/)) {
r683add_position((((T451*)((T451*)_ccn)))->_start_position/*4*/);
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms25_818);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
/*FI*/}
int r818a_strip(T818* C){
int R=0;
T0* _sp=NULL;
/*IF*/if (r818a_keyword(C,((T0*)ms45_470))) {
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
/*IF*/if (r818skip1(C,'\50')) {
C->_ok=r818a_feature_list(C);
{T420*n=malloc(sizeof(*n));
*n=M420;
r420make(n,_sp,(((T818*)C))->_last_feature_list/*105*/);
C->_last_expression=(T0*)n;
}
/*IF*/if (!(r818skip1(C,'\51'))) {
r818fcp(C,((T0*)ms123_818));
}
/*FI*/R=1;
}
else {
r818fcp(C,((T0*)ms124_818));
}
/*FI*/}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.fz_external*/
T0* r818a_compound1(T818* C,T0* a1){
T0* R=NULL;
T0* _instruction=NULL;
T0* _list=NULL;
T0* _hc=NULL;
_hc=r818get_comments(C);
while (!(((((T818*)C))->_cc/*24*/)!=('\73'))) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms68_470);
r818warning(r818current_position(C1),b1);
}/*]*/
C->_ok=r818skip1(C,'\73');
}
while (!((!(r818a_instruction(C)))||((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)>(0)))) {
_instruction=(((T818*)C))->_last_instruction/*133*/;
/*IF*/if (((((T818*)C))->_cc/*24*/)==('\50')) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms144_818);
r818warning(r818current_position(C1),b1);
}/*]*/
}
/*FI*/C->_ok=r818skip1(C,'\73');
while (!(((((T818*)C))->_cc/*24*/)!=('\73'))) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms68_470);
r818warning(r818current_position(C1),b1);
}/*]*/
C->_ok=r818skip1(C,'\73');
}
/*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) {
/*IF*/if ((_list)==((void*)(NULL))) {
_list=se_ma419(1,X465add_comment(_instruction,r818get_comments(C)));
}
else {
r419add_last(((T419*)_list),X465add_comment(_instruction,r818get_comments(C)));
}
/*FI*/}
/*FI*/}
/*IF*/if (((_hc)!=((void*)(NULL)))||((_list)!=((void*)(NULL)))) {
{T592*n=malloc(sizeof(*n));
*n=M592;
r592make(n,_hc,_list);
R=(T0*)n;
}
}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.fz_prefix*/
/*No:EIFFEL_PARSER.fz_all*/
/*No:EIFFEL_PARSER.column*/
int r818a_loop(T818* C){
int R=0;
T0* _al=NULL;
T0* _hc=NULL;
T0* _lb=NULL;
T0* _ue=NULL;
T0* _vc=NULL;
T0* _ic=NULL;
T0* _i=NULL;
T0* _e_loop=NULL;
int _c2=0;
int _l2=0;
int _c1=0;
int _l1=0;
/*IF*/if (r818a_keyword(C,((T0*)ms19_470))) {
R=1;
_l1=(((T818*)C))->_start_line/*169*/;
_c1=(((T818*)C))->_start_column/*165*/;
_i=r818a_compound1(C,((T0*)ms102_818));
/*IF*/if (r818a_keyword(C,((T0*)ms26_470))) {
_l2=(((T818*)C))->_start_line/*169*/;
_c2=(((T818*)C))->_start_column/*165*/;
_hc=r818get_comments(C);
_al=r818a_assertion(C);
/*IF*/if (((_hc)!=((void*)(NULL)))||((_al)!=((void*)(NULL)))) {
{T213*n=malloc(sizeof(*n));
*n=M213;
r213make(n,r818pos(_l2,_c2),_hc,_al);
_ic=(T0*)n;
}
}
/*FI*/}
/*FI*//*IF*/if (r818a_keyword(C,((T0*)ms51_470))) {
/*IF*/if ((r818a_tag_mark(C))&&(r818a_expression(C))) {
{T158*n=malloc(sizeof(*n));
*n=M158;
r158make(n,(((T818*)C))->_last_tag_mark/*161*/,(((T818*)C))->_last_expression/*97*/,r818get_comments(C));
_vc=(T0*)n;
}
}
 else if (r818a_expression(C)) {
{T145*n=malloc(sizeof(*n));
*n=M145;
r145make(n,(((T818*)C))->_last_expression/*97*/,r818get_comments(C));
_vc=(T0*)n;
}
}
else {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms103_818);
r818warning(r818current_position(C1),b1);
}/*]*/
}
/*FI*/}
/*FI*//*IF*/if (r818a_keyword(C,((T0*)ms50_470))) {
/*IF*/if (r818a_expression(C)) {
_ue=X662add_comment((((T818*)C))->_last_expression/*97*/,r818get_comments(C));
}
else {
r818fcp(C,((T0*)ms104_818));
_ue=(((T818*)C))->_last_expression/*97*/;
}
/*FI*/}
else {
r818fcp(C,((T0*)ms105_818));
_ue=(((T818*)C))->_last_expression/*97*/;
}
/*FI*//*IF*/if (((((T818*)C))->_cc/*24*/)==('\73')) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms68_470);
r818warning(r818current_position(C1),b1);
}/*]*/
C->_ok=r818skip1(C,'\73');
}
/*FI*//*IF*/if (!(r818a_keyword(C,((T0*)ms32_470)))) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms106_818);
r818warning(r818current_position(C1),b1);
}/*]*/
}
/*FI*/_lb=r818a_compound2(C,((T0*)ms107_818),((T0*)ms12_470));
{T880*n=malloc(sizeof(*n));
*n=M880;
r880make(n,r818pos(_l1,_c1),_i,_ic,_vc,_ue,_lb);
_e_loop=(T0*)n;
}
C->_last_instruction=_e_loop;
}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.fz_feature*/
/*No:EIFFEL_PARSER.fz_true*/
int r818a_local_variable(T818* C){
int R=0;
int _rank=0;
/*IF*/if (((((T818*)C))->_local_vars/*49*/)!=((void*)(NULL))) {
_rank=r620rank_of(((T620*)((((T818*)C))->_local_vars/*49*/)),r511to_string(((T511*)(oBC818tmp_name))));
/*IF*/if ((_rank)>(0)) {
C->_last_expression=r511to_local_name2(((T511*)(oBC818tmp_name)),(((T818*)C))->_local_vars/*49*/,_rank);
R=1;
}
/*FI*/}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.start_column*/
/*No:EIFFEL_PARSER.us_ge*/
/*No:EIFFEL_PARSER.us_neq*/
T0*oBC364echo=NULL;
int r818skip1unless2(T818* C,char a1,char a2){
int R=0;
C->_start_line=(((T818*)C))->_line/*16*/;
C->_start_column=(((T818*)C))->_column/*12*/;
/*IF*/if (((((T818*)C))->_cc/*24*/)==(a1)) {
r818next_char(C);
/*IF*/if (((((T818*)C))->_cc/*24*/)==(a2)) {
r818prev_char(C);
}
else {
R=1;
r818skip_comments(C);
}
/*FI*/}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.fz_if*/
T0* r818a_compound2(T818* C,T0* a1,T0* a2){
T0* R=NULL;
T0* _instruction=NULL;
T0* _list=NULL;
T0* _hc=NULL;
_hc=r818get_comments(C);
while (!(((((T818*)C))->_cc/*24*/)!=('\73'))) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms68_470);
r818warning(r818current_position(C1),b1);
}/*]*/
C->_ok=r818skip1(C,'\73');
}
while (!((!(r818a_instruction(C)))||((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)>(0)))) {
_instruction=(((T818*)C))->_last_instruction/*133*/;
/*IF*/if (((((T818*)C))->_cc/*24*/)==('\50')) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms144_818);
r818warning(r818current_position(C1),b1);
}/*]*/
}
/*FI*/C->_ok=r818skip1(C,'\73');
while (!(((((T818*)C))->_cc/*24*/)!=('\73'))) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms68_470);
r818warning(r818current_position(C1),b1);
}/*]*/
C->_ok=r818skip1(C,'\73');
}
/*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) {
/*IF*/if ((_list)==((void*)(NULL))) {
_list=se_ma419(1,X465add_comment(_instruction,r818get_comments(C)));
}
else {
r419add_last(((T419*)_list),X465add_comment(_instruction,r818get_comments(C)));
}
/*FI*/}
/*FI*/}
/*IF*/if (!(r818a_keyword(C,a2))) {
/*[IRF3.6append*/{T0* b1=((T0*)ms57_818);
r7append(((T7*)(oBC683explanation)),b1);
}/*]*/
/*[IRF3.6append*/{T0* b1=a1;
r7append(((T7*)(oBC683explanation)),b1);
}/*]*/
/*[IRF3.6append*/{T0* b1=((T0*)ms58_818);
r7append(((T7*)(oBC683explanation)),b1);
}/*]*/
/*[IRF3.6append*/{T0* b1=a2;
r7append(((T7*)(oBC683explanation)),b1);
}/*]*/
r818fcp(C,((T0*)ms59_818));
}
/*FI*//*IF*/if (((_hc)!=((void*)(NULL)))||((_list)!=((void*)(NULL)))) {
{T592*n=malloc(sizeof(*n));
*n=M592;
r592make(n,_hc,_list);
R=(T0*)n;
}
}
/*FI*/return R;
}
int r818a_rename_pair(T818* C){
int R=0;
T0* _rename_pair=NULL;
T0* _name1=NULL;
/*IF*/if (r818a_feature_name(C)) {
_name1=(((T818*)C))->_last_feature_name/*109*/;
/*IF*/if (r818a_keyword(C,((T0*)ms3_470))) {
/*IF*/if (r818a_feature_name(C)) {
R=1;
{T498*n=malloc(sizeof(*n));
*n=M498;
r498make(n,_name1,(((T818*)C))->_last_feature_name/*109*/);
_rename_pair=(T0*)n;
}
r877add_rename(((T877*)((((T818*)C))->_last_parent/*149*/)),_rename_pair);
}
else {
r818fcp(C,((T0*)ms113_818));
}
/*FI*/}
else {
/*[IRF3.6go_back*/{T818* C1=C;
T0* b1=X776start_position(_name1);
r818go_back_at(C1,/*(IRF4.6line*/((((T627*)((T627*)b1)))->_mem_line_column/*4*/)/(1000)/*)*/,/*(IRF4.6column*/((((T627*)((T627*)b1)))->_mem_line_column/*4*/)%(1000)/*)*/);
}/*]*/
}
/*FI*/}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.us_slash*/
/*No:EIFFEL_PARSER.fz_alias*/
/*No:EIFFEL_PARSER.fz_debug*/
int r818a_keyword(T818* C,T0* a1){
int R=0;
int _keyword_count=0;
int _i=0;
_keyword_count=(((T7*)((T7*)a1)))->_count/*4*/;
C->_start_line=(((T818*)C))->_line/*16*/;
C->_start_column=(((T818*)C))->_column/*12*/;
while (!(((_i)==(_keyword_count))||(!(r3same_as((((T818*)C))->_cc/*24*/,/*(IRF4.6item*/((((T7*)((T7*)a1)))->_storage/*0*/)[((_i)+(1))-(1)]/*)*/))))) {
_i=(_i)+(1);
r818next_char(C);
}
/*IF*/if ((_i)==(_keyword_count)) {
{int z1=(((T818*)C))->_cc/*24*/;

if(((9<=z1)&&(z1<=10))||(32==z1)||(45==z1)){
R=1;
C->_last_keyword=a1;
r818skip_comments(C);
}
 else 
if(((48<=z1)&&(z1<=57))||((65<=z1)&&(z1<=90))||(95==z1)||((97<=z1)&&(z1<=122))){
while (!((_i)==(0))) {
r818prev_char(C);
_i=(_i)-(1);
}
}
 else{R=1;
C->_last_keyword=a1;
}}
}
else {
while (!((_i)==(0))) {
r818prev_char(C);
_i=(_i)-(1);
}
}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.us_character*/
/*No:EIFFEL_PARSER.us_le*/
/*No:EIFFEL_PARSER.fz_from*/
/*No:EIFFEL_PARSER.last_keyword*/
/*No:EIFFEL_PARSER.fz_unique*/
/*No:EIFFEL_PARSER.fz_loop*/
/*No:EIFFEL_PARSER.em1*/
/*No:EIFFEL_PARSER.fz_do*/
int r818a_unary(T818* C){
int R=0;
/*IF*/if (r818a_keyword(C,((T0*)ms40_473))) {
{T406*n=malloc(sizeof(*n));
*n=M406;
r406make(n,((T0*)ms40_473),r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/));
C->_last_prefix=(T0*)n;
}
R=1;
}
 else if (r818skip1(C,'\53')) {
{T406*n=malloc(sizeof(*n));
*n=M406;
r406make(n,((T0*)ms43_473),r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/));
C->_last_prefix=(T0*)n;
}
R=1;
}
 else if (r818skip1(C,'\55')) {
{T406*n=malloc(sizeof(*n));
*n=M406;
r406make(n,((T0*)ms37_473),r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/));
C->_last_prefix=(T0*)n;
}
R=1;
}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.em2*/
/*No:EIFFEL_PARSER.last_feature_declaration*/
/*No:EIFFEL_PARSER.em3*/
/*No:EIFFEL_PARSER.fz_c_inlinewithoutcurrent*/
/*No:EIFFEL_PARSER.fz_obsolete*/
/*No:EIFFEL_PARSER.em4*/
/*No:EIFFEL_PARSER.fz_se*/
void r818go_back_at(T818* C,int a1,int a2){
C->_line=a1;
C->_column=a2;
C->_current_line=r676item((((T818*)C))->_line/*16*/);
/*IF*/if (((((T818*)C))->_column/*12*/)==(((((T7*)((T7*)((((T818*)C))->_current_line/*20*/))))->_count/*4*/)+(1))) {
C->_cc='\n';
}
 else if (((((T818*)C))->_column/*12*/)==(0)) {
C->_cc='\0';
}
else {
C->_cc=/*(IRF4.6item*/((((T7*)((T7*)((((T818*)C))->_current_line/*20*/))))->_storage/*0*/)[((((T818*)C))->_column/*12*/)-(1)]/*)*/;
}
/*FI*/}
void r818a_ascii_code(T818* C){
int _counter=0;
r818next_char(C);
_counter=0;
C->_last_ascii_code=0;
while (!(((_counter)>(3))||(((((T818*)C))->_cc/*24*/)==('\57')))) {
{int z1=(((T818*)C))->_cc/*24*/;

if(((48<=z1)&&(z1<=57))){
C->_last_ascii_code=(((((T818*)C))->_last_ascii_code/*61*/)*(10))+(r3value((((T818*)C))->_cc/*24*/));
}
 else{r818fcp(C,((T0*)ms21_818));
}}
_counter=(_counter)+(1);
r818next_char(C);
}
/*IF*/if ((_counter)==(0)) {
r818fcp(C,((T0*)ms22_818));
}
 else if ((_counter)>(3)) {
r818fcp(C,((T0*)ms23_818));
}
else {
}
/*FI*/}
/*No:EIFFEL_PARSER.fz_as*/
/*No:EIFFEL_PARSER.em5*/
/*No:EIFFEL_PARSER.fz_false*/
/*No:EIFFEL_PARSER.us_bit*/
/*No:EIFFEL_PARSER.em6*/
int r818a_current(T818* C){
int R=0;
/*IF*/if (r511is_current()) {
C->_last_expression=r511to_e_current(((T511*)(oBC818tmp_name)));
R=1;
}
/*FI*/return R;
}
void r818a_parent_list(T818* C,T0* a1,T0* a2){
T0* _list=NULL;
while (!(!(r818a_parent(C)))) {
/*IF*/if ((_list)==((void*)(NULL))) {
_list=se_ma26(1,(((T818*)C))->_last_parent/*149*/);
}
else {
r26add_last(((T26*)_list),(((T818*)C))->_last_parent/*149*/);
}
/*FI*/C->_ok=r818skip1(C,'\73');
/*[IRF3.3set_comment*/((((T877*)(((T877*)((((T818*)C))->_last_parent/*149*/)))))->_comment)=(r818get_comments(C));
/*]*/
}
/*IF*/if (((a2)!=((void*)(NULL)))||((_list)!=((void*)(NULL)))) {
/*IF*/if ((_list)==((void*)(NULL))) {
/*IF*/if (((((T605*)((T605*)((((T818*)C))->_last_base_class/*65*/))))->_heading_comment2/*32*/)==((void*)(NULL))) {
/*[IRF3.3set_heading_comment2*/((((T605*)(((T605*)((((T818*)C))->_last_base_class/*65*/)))))->_heading_comment2)=(a2);
/*]*/
}
else {
r393append(((T393*)((((T605*)((T605*)((((T818*)C))->_last_base_class/*65*/))))->_heading_comment2/*32*/)),a2);
}
/*FI*/}
else {
r605set_parent_list(((T605*)((((T818*)C))->_last_base_class/*65*/)),a1,a2,_list);
}
/*FI*/}
/*FI*/}
/*No:EIFFEL_PARSER.em7*/
/*No:EIFFEL_PARSER.fz_jvm_invokevirtual*/
void r818a_select_list(T818* C){
/*IF*/if (r818a_feature_list(C)) {
r877set_select(((T877*)((((T818*)C))->_last_parent/*149*/)),(((T818*)C))->_last_feature_list/*105*/);
}
/*FI*/}
void r818err_exp(T0* a1,T0* a2){
T0* _msg=NULL;
{T7*n=malloc(sizeof(*n));
*n=M7;
r7make(n,0);
_msg=(T0*)n;
}
r7append(((T7*)_msg),((T0*)ms11_818));
r7append(((T7*)_msg),a2);
r7append(((T7*)_msg),((T0*)ms12_818));
r683add_position(a1);
/*[IRF3.6fatal_error*/{T0* b1=_msg;
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
/*No:EIFFEL_PARSER.em8*/
/*No:EIFFEL_PARSER.last_boolean_constant*/
/*No:EIFFEL_PARSER.em9*/
T0* r818current_position(T818* C){
T0* R=NULL;
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_line/*16*/,(((T818*)C))->_column/*12*/);
R=(T0*)n;
}
return R;
}
/*No:EIFFEL_PARSER.last_tag_mark*/
/*No:EIFFEL_PARSER.us_boolean*/
/*No:EIFFEL_PARSER.last_feature_name*/
/*No:EIFFEL_PARSER.us_eq*/
int r818a_free_operator(T818* C){
int R=0;
/*IF*/if ((((((((T818*)C))->_cc/*24*/)==('\100'))||(((((T818*)C))->_cc/*24*/)==('\43')))||(((((T818*)C))->_cc/*24*/)==('\174')))||(((((T818*)C))->_cc/*24*/)==('\46'))) {
R=1;
r511initialize(((T511*)(oBC818tmp_name)),(((T818*)C))->_line/*16*/,(((T818*)C))->_column/*12*/);
/*[IRF3.6extend*/{char b1=(((T818*)C))->_cc/*24*/;
r7extend(((T7*)(oBC511tmp_string)),b1);
}/*]*/
r818next_char(C);
while (!((((((((T818*)C))->_cc/*24*/)==('\n'))||(((((T818*)C))->_cc/*24*/)==('\40')))||(((((T818*)C))->_cc/*24*/)==('\11')))||(((((T818*)C))->_cc/*24*/)==('\42')))) {
/*[IRF3.6extend*/{char b1=(((T818*)C))->_cc/*24*/;
r7extend(((T7*)(oBC511tmp_string)),b1);
}/*]*/
r818next_char(C);
}
r818skip_comments(C);
}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.function_type*/
int r818a_then_part(T818* C,T0* a1){
int R=0;
T0* _expression=NULL;
/*IF*/if (r818a_expression(C)) {
R=1;
_expression=X662add_comment((((T818*)C))->_last_expression/*97*/,r818get_comments(C));
/*IF*/if (!(r818a_keyword(C,((T0*)ms46_470)))) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms127_818);
r818warning(r818current_position(C1),b1);
}/*]*/
}
/*FI*/r530add_if_then(((T530*)a1),_expression,r818a_compound1(C,((T0*)ms128_818)));
}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.us_xor*/
/*No:EIFFEL_PARSER.last_integer_constant*/
/*No:EIFFEL_PARSER.in_ensure*/
/*No:EIFFEL_PARSER.fz_frozen*/
/*No:EIFFEL_PARSER.ms_numbering*/
T0* r818a_clients(T818* C){
T0* R=NULL;
int _state=0;
T0* _list=NULL;
T0* _sp=NULL;
/*IF*/if (r818skip1(C,'\173')) {
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
while (!((_state)>(3))) {
{int z1=_state;

if((0==z1)){
/*IF*/if (r818a_base_class_name(C)) {
_list=se_ma901(1,(((T818*)C))->_last_class_name/*89*/);
_state=2;
}
 else if (r818skip1(C,'\175')) {
_state=4;
}
 else if (((((T818*)C))->_cc/*24*/)==('\54')) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms145_818);
r818warning(r818current_position(C1),b1);
}/*]*/
C->_ok=r818skip1(C,'\54');
}
else {
_state=3;
}
/*FI*/}
 else 
if((1==z1)){
/*IF*/if (r818a_base_class_name(C)) {
r901add_last(((T901*)_list),(((T818*)C))->_last_class_name/*89*/);
_state=2;
}
 else if (((((T818*)C))->_cc/*24*/)==('\54')) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms145_818);
r818warning(r818current_position(C1),b1);
}/*]*/
C->_ok=r818skip1(C,'\54');
}
 else if (((((T818*)C))->_cc/*24*/)==('\175')) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms56_818);
r818warning(r818current_position(C1),b1);
}/*]*/
C->_ok=r818skip1(C,'\175');
_state=4;
}
else {
_state=3;
}
/*FI*/}
 else 
if((2==z1)){
/*IF*/if (r818skip1(C,'\54')) {
_state=1;
}
 else if (r818skip1(C,'\175')) {
_state=4;
}
 else if (r818a_base_class_name(C)) {
r818warning((((T451*)((T451*)((((T818*)C))->_last_class_name/*89*/))))->_start_position/*4*/,((T0*)ms143_818));
r901add_last(((T901*)_list),(((T818*)C))->_last_class_name/*89*/);
}
else {
_state=3;
}
/*FI*/}
 else{r818fcp(C,((T0*)ms149_818));
_state=4;
}}
}
{T636*n=malloc(sizeof(*n));
*n=M636;
r636make(n,_sp,_list);
R=(T0*)n;
}
}
else {
{T636*n=malloc(sizeof(*n));
*n=M636;
/*[IRF3.1omitted*//*]*/
R=(T0*)n;
}
}
/*FI*/return R;
}
int r818a_when_part(T818* C,T0* a1){
int R=0;
T0* _constant=NULL;
T0* _e_when=NULL;
int _state=0;
/*IF*/if (r818a_keyword(C,((T0*)ms52_470))) {
R=1;
{T843*n=malloc(sizeof(*n));
*n=M843;
r843make(n,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/),r818get_comments(C));
_e_when=(T0*)n;
}
while (!((_state)>(3))) {
{int z1=_state;

if((0==z1)){
/*IF*/if (r818a_constant(C)) {
_constant=(((T818*)C))->_last_expression/*97*/;
_state=1;
}
 else if (r818a_keyword(C,((T0*)ms46_470))) {
/*IF*/if ((_constant)!=((void*)(NULL))) {
r843add_value(((T843*)_e_when),_constant);
}
/*FI*//*[IRF3.3set_compound*/((((T843*)(((T843*)_e_when))))->_compound)=(r818a_compound1(C,((T0*)ms132_818)));
/*]*/
r270add_when(((T270*)a1),_e_when);
_state=4;
}
 else if (((((T818*)C))->_cc/*24*/)==('\54')) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms145_818);
r818warning(r818current_position(C1),b1);
}/*]*/
C->_ok=r818skip1(C,'\54');
}
else {
r818fcp(C,((T0*)ms142_818));
_state=4;
}
/*FI*/}
 else 
if((1==z1)){
/*IF*/if (r818a_keyword(C,((T0*)ms46_470))) {
/*IF*/if ((_constant)!=((void*)(NULL))) {
r843add_value(((T843*)_e_when),_constant);
}
/*FI*//*[IRF3.3set_compound*/((((T843*)(((T843*)_e_when))))->_compound)=(r818a_compound1(C,((T0*)ms133_818)));
/*]*/
r270add_when(((T270*)a1),_e_when);
_state=4;
}
 else if (r818skip2(C,'\56','\56')) {
_state=2;
}
 else if (r818skip1(C,'\54')) {
r843add_value(((T843*)_e_when),_constant);
_constant=NULL;
_state=0;
}
else {
r818fcp(C,((T0*)ms142_818));
_state=4;
}
/*FI*/}
 else 
if((2==z1)){
/*IF*/if (r818a_constant(C)) {
r843add_slice(((T843*)_e_when),_constant,(((T818*)C))->_last_expression/*97*/);
_constant=NULL;
_state=3;
}
else {
r818fcp(C,((T0*)ms142_818));
_state=4;
}
/*FI*/}
 else{/*IF*/if (r818skip1(C,'\54')) {
_state=0;
}
 else if (r818a_keyword(C,((T0*)ms46_470))) {
/*[IRF3.3set_compound*/((((T843*)(((T843*)_e_when))))->_compound)=(r818a_compound1(C,((T0*)ms134_818)));
/*]*/
r270add_when(((T270*)a1),_e_when);
_state=4;
}
 else if (r818a_constant(C)) {
_constant=(((T818*)C))->_last_expression/*97*/;
r818warning(r511start_position(((T511*)(oBC818tmp_name))),((T0*)ms143_818));
_state=1;
}
else {
r818fcp(C,((T0*)ms142_818));
_state=4;
}
/*FI*/}}
}
}
/*FI*/return R;
}
int r818a_feature_list(T818* C){
int R=0;
int _state=0;
C->_last_feature_list=NULL;
while (!((_state)>=(3))) {
{int z1=_state;

if((0==z1)){
/*IF*/if (r818a_feature_name(C)) {
C->_last_feature_list=se_ma855(1,(((T818*)C))->_last_feature_name/*109*/);
R=1;
_state=1;
}
 else if (((((T818*)C))->_cc/*24*/)==('\54')) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms145_818);
r818warning(r818current_position(C1),b1);
}/*]*/
C->_ok=r818skip1(C,'\54');
}
else {
_state=3;
}
/*FI*/}
 else 
if((1==z1)){
/*IF*/if (((((T818*)C))->_cc/*24*/)==('\54')) {
C->_ok=r818skip1(C,'\54');
_state=2;
}
 else if (r818a_feature_name(C)) {
r818warning(X776start_position((((T818*)C))->_last_feature_name/*109*/),((T0*)ms143_818));
r855add_last(((T855*)((((T818*)C))->_last_feature_list/*105*/)),(((T818*)C))->_last_feature_name/*109*/);
}
else {
_state=3;
}
/*FI*/}
 else {/*IF*/if (r818a_feature_name(C)) {
r855add_last(((T855*)((((T818*)C))->_last_feature_list/*105*/)),(((T818*)C))->_last_feature_name/*109*/);
_state=1;
}
 else if (((((T818*)C))->_cc/*24*/)==('\54')) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms150_818);
r818warning(r818current_position(C1),b1);
}/*]*/
C->_ok=r818skip1(C,'\54');
}
else {
/*[IRF3.6ecp*/{T818* C1=C;
T0* b1=((T0*)ms140_818);
r818error(r818current_position(C1),b1);
}/*]*/
_state=3;
}
/*FI*/}}
}
return R;
}
int r818a_instruction(T818* C){
int R=0;
R=(((((((r818a_check(C))||(r818a_debug(C)))||(r818a_conditional(C)))||(r818a_retry(C)))||(r818a_inspect(C)))||(r818a_loop(C)))||(r818a_creation(C)))||(r818a_assignment_or_call(C));
return R;
}
/*No:EIFFEL_PARSER.fz_is*/
/*No:EIFFEL_PARSER.fz_ensure*/
/*No:EIFFEL_PARSER.fz_indexing*/
/*No:EIFFEL_PARSER.us_not*/
int r818a_parent(T818* C){
int R=0;
/*IF*/if (r818a_class_type(C)) {
R=1;
{T877*n=malloc(sizeof(*n));
*n=M877;
r877make(n,(((T818*)C))->_last_class_type/*93*/);
C->_last_parent=(T0*)n;
}
/*IF*/if (r818a_keyword(C,((T0*)ms39_470))) {
r818a_rename_list(C);
/*IF*/if (((((T818*)C))->_cc/*24*/)==('\73')) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms108_818);
r818warning(r818current_position(C1),b1);
}/*]*/
C->_ok=r818skip1(C,'\73');
}
/*FI*/}
/*FI*/r818a_new_export_list(C);
/*IF*/if (r818a_keyword(C,((T0*)ms48_470))) {
r818a_undefine_list(C);
}
/*FI*//*IF*/if (r818a_keyword(C,((T0*)ms38_470))) {
r818a_redefine_list(C);
}
/*FI*//*IF*/if (r818a_keyword(C,((T0*)ms43_470))) {
r818a_select_list(C);
}
/*FI*//*IF*/if (((((r818a_keyword(C,((T0*)ms39_470)))||(r818a_keyword(C,((T0*)ms15_470))))||(r818a_keyword(C,((T0*)ms48_470))))||(r818a_keyword(C,((T0*)ms38_470))))||(r818a_keyword(C,((T0*)ms43_470)))) {
r683add_position(r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/));
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms109_818);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
/*FI*/C->_ok=r818a_keyword(C,((T0*)ms12_470));
}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.us_muls*/
/*No:EIFFEL_PARSER.last_ascii_code*/
/*No:EIFFEL_PARSER.fz_c_inlinewithcurrent*/
int r818a_prefix(T818* C){
int R=0;
/*IF*/if (r818a_keyword(C,((T0*)ms37_470))) {
R=1;
/*IF*/if (((((T818*)C))->_cc/*24*/)==('\42')) {
r818next_char(C);
}
else {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms110_818);
r818warning(r818current_position(C1),b1);
}/*]*/
}
/*FI*//*IF*/if (r818a_unary(C)) {
}
 else if (r818a_free_operator(C)) {
C->_last_prefix=r511to_prefix_name(((T511*)(oBC818tmp_name)));
}
else {
r818fcp(C,((T0*)ms111_818));
}
/*FI*//*IF*/if (!(r818skip1(C,'\42'))) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms112_818);
r818warning(r818current_position(C1),b1);
}/*]*/
}
/*FI*/}
/*FI*/return R;
}
void r818error(T0* a1,T0* a2){
r683add_position(a1);
r683error(((T683*)(oBC364eh)),a2);
}
/*No:EIFFEL_PARSER.us_gt*/
/*No:EIFFEL_PARSER.fz_until*/
int r818a_e0(T818* C){
int R=0;
R=r818a_e1(C);
r818a_r1(C,(((T818*)C))->_last_expression/*97*/);
return R;
}
void r818a_class_declaration(T818* C){
T0* _al=NULL;
T0* _hc=NULL;
T0* _sp=NULL;
r818a_indexing(C);
/*IF*/if (r818a_keyword(C,((T0*)ms8_470))) {
r605set_is_deferred(((T605*)((((T818*)C))->_last_base_class/*65*/)));
}
/*FI*//*IF*/if (r818a_keyword(C,((T0*)ms14_470))) {
r605set_is_expanded(((T605*)((((T818*)C))->_last_base_class/*65*/)));
/*IF*/if (r818a_keyword(C,((T0*)ms8_470))) {
r605set_is_deferred(((T605*)((((T818*)C))->_last_base_class/*65*/)));
}
/*FI*/}
/*FI*//*[IRF3.3set_heading_comment1*/((((T605*)(((T605*)((((T818*)C))->_last_base_class/*65*/)))))->_heading_comment1)=(r818get_comments(C));
/*]*/
/*IF*/if (!(r818a_keyword(C,((T0*)ms5_470)))) {
r818fcp(C,((T0*)ms50_818));
}
/*FI*/r818a_base_class_name1(C);
r818a_formal_generic_list(C);
/*IF*/if (r818a_keyword(C,((T0*)ms33_470))) {
/*IF*/if (r818a_manifest_string(C)) {
/*[IRF3.3set_obsolete_type_string*/((((T605*)(((T605*)((((T818*)C))->_last_base_class/*65*/)))))->_obsolete_type_string)=((((T818*)C))->_last_manifest_string/*145*/);
/*]*/
}
else {
r818fcp(C,((T0*)ms51_818));
}
/*FI*/}
/*FI*//*[IRF3.3set_heading_comment2*/((((T605*)(((T605*)((((T818*)C))->_last_base_class/*65*/)))))->_heading_comment2)=(r818get_comments(C));
/*]*/
/*IF*/if (r818a_keyword(C,((T0*)ms24_470))) {
r818a_parent_list(C,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/),r818get_comments(C));
}
/*FI*/while (!(!(r818a_keyword(C,((T0*)ms6_470))))) {
r818a_creation_clause(C,r818pos((((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/));
}
while (!(!(r818a_keyword(C,((T0*)ms18_470))))) {
r818a_feature_clause(C);
}
/*IF*/if (r818a_keyword(C,((T0*)ms26_470))) {
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
_hc=r818get_comments(C);
_al=r818a_assertion(C);
r605set_invariant(((T605*)((((T818*)C))->_last_base_class/*65*/)),_sp,_hc,_al);
}
/*FI*//*IF*/if ((r818a_keyword(C,((T0*)ms12_470)))||(((((T818*)C))->_last_keyword/*113*/)==((void*)(((T0*)ms12_470))))) {
/*IF*/if (((((T818*)C))->_cc/*24*/)==('\73')) {
/*[IRF3.6wcp*/{T818* C1=C;
T0* b1=((T0*)ms68_470);
r818warning(r818current_position(C1),b1);
}/*]*/
C->_ok=r818skip1(C,'\73');
}
/*FI*//*[IRF3.3set_end_comment*/((((T605*)(((T605*)((((T818*)C))->_last_base_class/*65*/)))))->_end_comment)=(r818get_comments(C));
/*]*/
/*IF*/if (((((T818*)C))->_cc/*24*/)!=('\0')) {
r818fcp(C,((T0*)ms52_818));
}
/*FI*/}
else {
r818fcp(C,((T0*)ms53_818));
}
/*FI*/}
int r818skip1(T818* C,char a1){
int R=0;
/*IF*/if ((a1)==((((T818*)C))->_cc/*24*/)) {
C->_start_line=(((T818*)C))->_line/*16*/;
C->_start_column=(((T818*)C))->_column/*12*/;
R=1;
r818next_char(C);
r818skip_comments(C);
}
/*FI*/return R;
}
/*No:EIFFEL_PARSER.us_plus*/
void r818a_r1(T818* C,T0* a1){
T0* _sp=NULL;
T0* _infix_implies=NULL;
/*IF*/if (r818a_keyword(C,((T0*)ms34_473))) {
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
/*IF*/if (r818a_e1(C)) {
{T90*n=malloc(sizeof(*n));
*n=M90;
r90make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/);
_infix_implies=(T0*)n;
}
r818a_r1(C,_infix_implies);
}
else {
r818error(_sp,((T0*)ms119_818));
}
/*FI*/}
else {
C->_last_expression=a1;
}
/*FI*/}
int r818a_e1(T818* C){
int R=0;
R=r818a_e2(C);
r818a_r2(C,(((T818*)C))->_last_expression/*97*/);
return R;
}
/*No:EIFFEL_PARSER.last_type_formal_generic*/
/*No:EIFFEL_PARSER.em10*/
/*No:EIFFEL_PARSER.em20*/
int r818skip2(T818* C,char a1,char a2){
int R=0;
/*IF*/if ((a1)==((((T818*)C))->_cc/*24*/)) {
C->_start_line=(((T818*)C))->_line/*16*/;
C->_start_column=(((T818*)C))->_column/*12*/;
r818next_char(C);
/*IF*/if ((a2)==((((T818*)C))->_cc/*24*/)) {
R=1;
r818next_char(C);
r818skip_comments(C);
}
else {
r818prev_char(C);
}
/*FI*/}
/*FI*/return R;
}
void r818a_r2(T818* C,T0* a1){
T0* _sp=NULL;
T0* _infix_xor=NULL;
T0* _infix_or=NULL;
T0* _infix_or_else=NULL;
/*IF*/if (r818a_keyword(C,((T0*)ms41_473))) {
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
/*IF*/if (r818a_keyword(C,((T0*)ms10_470))) {
/*IF*/if (r818a_e2(C)) {
{T278*n=malloc(sizeof(*n));
*n=M278;
r278make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/);
_infix_or_else=(T0*)n;
}
r818a_r2(C,_infix_or_else);
}
else {
r818err_exp(_sp,((T0*)ms42_473));
}
/*FI*/}
else {
/*IF*/if (r818a_e2(C)) {
{T121*n=malloc(sizeof(*n));
*n=M121;
r121make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/);
_infix_or=(T0*)n;
}
r818a_r2(C,_infix_or);
}
else {
r818err_exp(_sp,((T0*)ms41_473));
}
/*FI*/}
/*FI*/}
 else if (r818a_keyword(C,((T0*)ms50_473))) {
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
/*IF*/if (r818a_e2(C)) {
{T760*n=malloc(sizeof(*n));
*n=M760;
r760make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/);
_infix_xor=(T0*)n;
}
r818a_r2(C,_infix_xor);
}
else {
r818err_exp(_sp,((T0*)ms50_473));
}
/*FI*/}
else {
C->_last_expression=a1;
}
/*FI*/}
int r818a_e2(T818* C){
int R=0;
R=r818a_e3(C);
r818a_r3(C,(((T818*)C))->_last_expression/*97*/);
return R;
}
/*No:EIFFEL_PARSER.em11*/
/*No:EIFFEL_PARSER.fz_expanded*/
void r818a_r3(T818* C,T0* a1){
T0* _sp=NULL;
T0* _infix_and=NULL;
T0* _infix_and_then=NULL;
/*IF*/if (r818a_keyword(C,((T0*)ms27_473))) {
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
/*IF*/if (r818a_keyword(C,((T0*)ms46_470))) {
/*IF*/if (r818a_e3(C)) {
{T655*n=malloc(sizeof(*n));
*n=M655;
r655make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/);
_infix_and_then=(T0*)n;
}
r818a_r3(C,_infix_and_then);
}
else {
r818err_exp(_sp,((T0*)ms28_473));
}
/*FI*/}
else {
/*IF*/if (r818a_e3(C)) {
{T313*n=malloc(sizeof(*n));
*n=M313;
r313make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/);
_infix_and=(T0*)n;
}
r818a_r3(C,_infix_and);
}
else {
r818err_exp(_sp,((T0*)ms27_473));
}
/*FI*/}
/*FI*/}
else {
C->_last_expression=a1;
}
/*FI*/}
int r818a_e3(T818* C){
int R=0;
R=r818a_e4(C);
r818a_r4(C,(((T818*)C))->_last_expression/*97*/);
return R;
}
/*No:EIFFEL_PARSER.fz_class*/
/*No:EIFFEL_PARSER.last_base_class*/
/*No:EIFFEL_PARSER.fz_infix*/
/*No:EIFFEL_PARSER.em12*/
T0*oBC818forbidden_class=NULL;
/*No:EIFFEL_PARSER.us_lt*/
/*No:EIFFEL_PARSER.us_or*/
void r818a_r4(T818* C,T0* a1){
T0* _sp=NULL;
T0* _infix_gt=NULL;
T0* _infix_ge=NULL;
T0* _infix_lt=NULL;
T0* _infix_le=NULL;
T0* _infix_neq=NULL;
T0* _infix_eq=NULL;
/*IF*/if (r818skip1(C,'\75')) {
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
/*IF*/if (r818a_e4(C)) {
{T999*n=malloc(sizeof(*n));
*n=M999;
r999make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/);
_infix_eq=(T0*)n;
}
r818a_r4(C,_infix_eq);
}
else {
r818err_exp(_sp,((T0*)ms31_473));
}
/*FI*/}
 else if (r818skip2(C,'\57','\75')) {
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
/*IF*/if (r818a_e4(C)) {
{T517*n=malloc(sizeof(*n));
*n=M517;
r517make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/);
_infix_neq=(T0*)n;
}
r818a_r4(C,_infix_neq);
}
else {
r818err_exp(_sp,((T0*)ms39_473));
}
/*FI*/}
 else if (r818skip2(C,'\74','\75')) {
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
/*IF*/if (r818a_e4(C)) {
{T932*n=malloc(sizeof(*n));
*n=M932;
r932make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/);
_infix_le=(T0*)n;
}
r818a_r4(C,_infix_le);
}
else {
r818err_exp(_sp,((T0*)ms35_473));
}
/*FI*/}
 else if (r818skip2(C,'\76','\75')) {
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
/*IF*/if (r818a_e4(C)) {
{T890*n=malloc(sizeof(*n));
*n=M890;
r890make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/);
_infix_ge=(T0*)n;
}
r818a_r4(C,_infix_ge);
}
else {
r818err_exp(_sp,((T0*)ms32_473));
}
/*FI*/}
 else if (r818skip1(C,'\74')) {
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
/*IF*/if (r818a_e4(C)) {
{T112*n=malloc(sizeof(*n));
*n=M112;
r112make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/);
_infix_lt=(T0*)n;
}
r818a_r4(C,_infix_lt);
}
else {
r818err_exp(_sp,((T0*)ms36_473));
}
/*FI*/}
 else if (r818skip1unless2(C,'\76','\76')) {
{T627*n=malloc(sizeof(*n));
*n=M627;
r627make(n,(((T818*)C))->_start_line/*169*/,(((T818*)C))->_start_column/*165*/);
_sp=(T0*)n;
}
/*IF*/if (r818a_e4(C)) {
{T57*n=malloc(sizeof(*n));
*n=M57;
r57make(n,a1,_sp,(((T818*)C))->_last_expression/*97*/);
_infix_gt=(T0*)n;
}
r818a_r4(C,_infix_gt);
}
else {
r818err_exp(_sp,((T0*)ms33_473));
}
/*FI*/}
else {
C->_last_expression=a1;
}
/*FI*/}
int r818a_e4(T818* C){
int R=0;
R=r818a_e5(C);
r818a_r5(C,(((T818*)C))->_last_expression/*97*/);
return R;
}
/*No:EIFFEL_PARSER.us_any*/
/*No:EIFFEL_PARSER.em13*/
/*No:EIFFEL_PARSER.current_class_name*/
/*No:EIFFEL_PARSER.fz_strip*/
/*No:SMALL_EIFFEL.dos_system*/
/*No:SMALL_EIFFEL.fz_system_se*/
/*No:SMALL_EIFFEL.fz_sys*/
T0*oBC364tmp_file_read=NULL;
int fBC604loading_path=0;
T0*oBC604loading_path=NULL;
T0* r604loading_path(T604* C){
if (fBC604loading_path==0){
T0* R=NULL;
T0* _file=NULL;
T0* _path=NULL;
fBC604loading_path=1;
{T52*n=malloc(sizeof(*n));
*n=M52;
r52make(n,1,10);
R=(T0*)n;
}
r52clear(((T52*)R));
{T675*n=malloc(sizeof(*n));
*n=M675;
r675connect_to(n,((T0*)ms2_604));
_file=(T0*)n;
}
/*IF*/if (/*(IRF4.7is_connected*/((((T675*)((T675*)_file)))->_path/*4*/)!=(NULL)/*)*/) {
while (!(r675end_of_input(((T675*)_file)))) {
r675read_line(((T675*)_file));
r52add_last(((T52*)R),r7twin(((T7*)(oBC762last_string))));
}
r675disconnect(((T675*)_file));
}
/*FI*/_path=r7twin(((T7*)(r604small_eiffel_directory(C))));
r604add_directory(C,_path,((T0*)ms126_470));
r7append(((T7*)_path),((T0*)ms3_604));
r7append(((T7*)_path),r604system_name(C));
r675connect_to(((T675*)_file),_path);
/*IF*/if (/*(IRF4.7is_connected*/((((T675*)((T675*)_file)))->_path/*4*/)!=(NULL)/*)*/) {
while (!(r675end_of_input(((T675*)_file)))) {
r675read_line(((T675*)_file));
r52add_last(((T52*)R),r7twin(((T7*)(oBC762last_string))));
}
r675disconnect(((T675*)_file));
}
else {
r306w_put_string(((T0*)ms4_604));
r306w_put_string(_path);
r306w_put_string(((T0*)ms5_604));
}
/*FI*/oBC604loading_path=R;}
return oBC604loading_path;}
/*No:SMALL_EIFFEL.unix_system*/
int r604re_load_class(T604* C,T0* a1){
int R=0;
T0* _new_class=NULL;
T0* _name=NULL;
_name=(((T451*)((T451*)((((T605*)((T605*)a1)))->_base_class_name/*24*/))))->_to_string/*0*/;
r718remove(((T718*)(oBC604base_class_dictionary)),_name);
_new_class=r604load_class(C,_name);
R=(_new_class)!=((void*)(NULL));
return R;
}
/*No:SMALL_EIFFEL.exit_failure_code*/
/*No:SMALL_EIFFEL.vms_system*/
T0*oBC604run_class_dictionary=NULL;
int fBC364small_eiffel_directory=0;
T0*oBC364small_eiffel_directory=NULL;
T0* r604small_eiffel_directory(T604* C){
if (fBC364small_eiffel_directory==0){
T0* R=NULL;
char _slash=0;
int _i=0;
fBC364small_eiffel_directory=1;
R=r604get_environment_variable(C,((T0*)ms121_470));
/*IF*/if ((R)==((void*)(NULL))) {
R=r7twin(((T7*)(((T0*)ms121_470))));
r7to_upper(((T7*)R));
R=r604get_environment_variable(C,R);
/*IF*/if ((R)!=((void*)(NULL))) {
r7to_upper(((T7*)(((T0*)ms121_470))));
}
/*FI*/}
/*FI*//*IF*/if ((R)==((void*)(NULL))) {
R=((T0*)ms1_364);
}
/*FI*/_i=(((T7*)((T7*)R)))->_count/*4*/;
while (!((_i)<(0))) {
_slash=/*(IRF4.6item*/((((T7*)((T7*)R)))->_storage/*0*/)[(_i)-(1)]/*)*/;
/*IF*/if ((r3is_letter(_slash))||(r3is_digit(_slash))) {
_i=(_i)-(1);
}
else {
_i=-(1);
}
/*FI*/}
/*IF*/if ((_i)==(0)) {
r7extend(((T7*)R),'\57');
}
 else if (!((r7last(((T7*)R)))==(_slash))) {
r7extend(((T7*)R),_slash);
}
/*FI*/oBC364small_eiffel_directory=R;}
return oBC364small_eiffel_directory;}
T0*oBC604stack_rf=NULL;
/*No:SMALL_EIFFEL.amiga_system*/
/*No:SMALL_EIFFEL.make*/
/*No:SMALL_EIFFEL.last_unique*/
T0*oBC604tmp_tail=NULL;
int fBC604tmp_class_name=0;
T0*oBC604tmp_class_name=NULL;
T0* r604tmp_class_name(void){
if (fBC604tmp_class_name==0){
T0* R=NULL;
fBC604tmp_class_name=1;
{T451*n=malloc(sizeof(*n));
*n=M451;
r451make(n,((T0*)ms1_473),NULL);
R=(T0*)n;
}
oBC604tmp_class_name=R;}
return oBC604tmp_class_name;}
void r604add_class(T604* C,T0* a1){
r718put(((T718*)(oBC604base_class_dictionary)),a1,(((T451*)((T451*)((((T605*)((T605*)a1)))->_base_class_name/*24*/))))->_to_string/*0*/);
r604incr_magic_count(C);
}
void r604push(T604* C,T0* a1){
C->_top=((((T604*)C))->_top/*12*/)+(1);
r477force(((T477*)(oBC604stack_rf)),a1,(((T604*)C))->_top/*12*/);
}
int r604next_unique(T604* C){
int R=0;
/*IF*/if (((((T604*)C))->_last_unique/*16*/)<(1000)) {
C->_last_unique=1000;
}
/*FI*/C->_last_unique=((((T604*)C))->_last_unique/*16*/)+(1);
R=(((T604*)C))->_last_unique/*16*/;
return R;
}
T0* r604top_rf(T604* C){
T0* R=NULL;
R=r477item(((T477*)(oBC604stack_rf)),(((T604*)C))->_top/*12*/);
return R;
}
void r604add_directory(T604* C,T0* a1,T0* a2){
/*IF*/if ((((T0*)ms17_364))==((void*)(r604system_name(C)))) {
r7set_last(((T7*)a1),'\57');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\57');
}
 else if ((((T0*)ms19_364))==((void*)(r604system_name(C)))) {
r7set_last(((T7*)a1),'\134');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\134');
}
 else if ((((T0*)ms15_364))==((void*)(r604system_name(C)))) {
r7set_last(((T7*)a1),'\72');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\72');
}
 else if ((((T0*)ms14_364))==((void*)(r604system_name(C)))) {
r7set_last(((T7*)a1),'\134');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\134');
}
 else if ((((T0*)ms16_364))==((void*)(r604system_name(C)))) {
r7set_last(((T7*)a1),'\134');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\134');
}
 else if ((((T0*)ms13_364))==((void*)(r604system_name(C)))) {
r7set_last(((T7*)a1),'\57');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\57');
}
 else if ((((T0*)ms18_364))==((void*)(r604system_name(C)))) {
r7set_last(((T7*)a1),'\135');
r7remove_last(((T7*)a1),1);
r7set_last(((T7*)a1),'\56');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\135');
}
/*FI*/}
T0*oBC604parser_buffer_path=NULL;
/*No:SMALL_EIFFEL.windows_system*/
T0* r604get_environment_variable(T604* C,T0* a1){
T0* R=NULL;
void* _p=0;
_p=r7to_external(((T7*)a1));
R=(NULL==(_p=getenv((char*)_p)))?NULL:((T0*)e2s((char*)_p));
return R;
}
/*No:SMALL_EIFFEL.short_flag*/
/*No:SMALL_EIFFEL.fz_03*/
T0* r604get_class(T0* a1){
T0* R=NULL;
/*IF*/if (r718has(((T718*)(oBC604base_class_dictionary)),a1)) {
R=r718at(((T718*)(oBC604base_class_dictionary)),a1);
}
else {
r451make(((T451*)(r604tmp_class_name())),a1,NULL);
R=r451base_class(((T451*)(r604tmp_class_name())));
}
/*FI*/return R;
}
T0*oBC364system_list=NULL;
int fBC364system_name=0;
T0*oBC364system_name=NULL;
T0* r604system_name(T604* C){
if (fBC364system_name==0){
T0* R=NULL;
int _i=0;
fBC364system_name=1;
r7copy(((T7*)(oBC364tmp_path)),r604small_eiffel_directory(C));
/*IF*/if (r7has(((T7*)(oBC364tmp_path)),'\57')) {
r7set_last(((T7*)(oBC364tmp_path)),'\57');
r7append(((T7*)(oBC364tmp_path)),((T0*)ms126_470));
r7extend(((T7*)(oBC364tmp_path)),'\57');
r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470));
r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path);
}
/*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) {
r7copy(((T7*)(oBC364tmp_path)),r604small_eiffel_directory(C));
/*IF*/if (r7has(((T7*)(oBC364tmp_path)),'\134')) {
r7set_last(((T7*)(oBC364tmp_path)),'\134');
r7append(((T7*)(oBC364tmp_path)),((T0*)ms126_470));
r7extend(((T7*)(oBC364tmp_path)),'\134');
r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470));
r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path);
}
/*FI*/}
/*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) {
r7copy(((T7*)(oBC364tmp_path)),r604small_eiffel_directory(C));
/*IF*/if (r7has(((T7*)(oBC364tmp_path)),'\72')) {
r7set_last(((T7*)(oBC364tmp_path)),'\72');
r7append(((T7*)(oBC364tmp_path)),((T0*)ms126_470));
r7extend(((T7*)(oBC364tmp_path)),'\72');
r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470));
r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path);
}
/*FI*/}
/*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) {
r7copy(((T7*)(oBC364tmp_path)),r604small_eiffel_directory(C));
/*IF*/if (r7has(((T7*)(oBC364tmp_path)),'\135')) {
r7set_last(((T7*)(oBC364tmp_path)),'\135');
r7remove_last(((T7*)(oBC364tmp_path)),1);
r7extend(((T7*)(oBC364tmp_path)),'\56');
r7append(((T7*)(oBC364tmp_path)),((T0*)ms126_470));
r7extend(((T7*)(oBC364tmp_path)),'\135');
r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470));
r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path);
}
/*FI*/}
/*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) {
r7copy(((T7*)(oBC364tmp_path)),r604small_eiffel_directory(C));
r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470));
r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path);
}
/*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) {
r306w_put_string(((T0*)ms20_364));
r306w_put_string(((T0*)ms127_470));
r306w_put_string(((T0*)ms21_364));
r306w_put_string(r604small_eiffel_directory(C));
r306w_put_string(((T0*)ms242_470));
exit(1);
}
/*FI*/r675read_line(((T675*)(oBC364tmp_file_read)));
R=oBC762last_string;
_i=r52index_of(((T52*)(oBC364system_list)),R);
r675disconnect(((T675*)(oBC364tmp_file_read)));
/*IF*/if ((_i)>((((T52*)((T52*)(oBC364system_list))))->_upper/*8*/)) {
r306w_put_string(((T0*)ms22_364));
r306w_put_string(oBC364tmp_path);
r306w_put_string(((T0*)ms23_364));
_i=1;
while (!((_i)>((((T52*)((T52*)(oBC364system_list))))->_upper/*8*/))) {
r306w_put_string(r52item(((T52*)(oBC364system_list)),_i));
r306w_put_character('\n');
_i=(_i)+(1);
}
}
else {
R=r52item(((T52*)(oBC364system_list)),_i);
r306put_string(((T306*)(oBC364echo)),((T0*)ms24_364));
r306put_string(((T306*)(oBC364echo)),R);
r306put_string(((T306*)(oBC364echo)),((T0*)ms242_470));
}
/*FI*/oBC364system_name=R;}
return oBC364system_name;}
int r604parser_buffer_for(T604* C,T0* a1){
int R=0;
int _i=0;
r7copy(((T7*)(oBC604tmp_tail)),a1);
r7to_lower(((T7*)(oBC604tmp_tail)));
/*IF*/if (!(r7has_suffix(((T7*)(oBC604tmp_tail)),((T0*)ms25_364)))) {
r7append(((T7*)(oBC604tmp_tail)),((T0*)ms25_364));
}
/*FI*/_i=(((T52*)((T52*)(r604loading_path(C)))))->_lower/*12*/;
while (!(((_i)>((((T52*)((T52*)(r604loading_path(C)))))->_upper/*8*/))||(R))) {
r7copy(((T7*)(oBC604parser_buffer_path)),r52item(((T52*)(r604loading_path(C))),_i));
r7append(((T7*)(oBC604parser_buffer_path)),oBC604tmp_tail);
r676load_file(((T676*)(oBC364parser_buffer)),oBC604parser_buffer_path);
R=/*(IRF4.7is_ready*/((((T676*)((T676*)(oBC364parser_buffer))))->_path/*0*/)!=(NULL)/*)*/;
_i=(_i)+(1);
}
/*IF*/if ((!(R))&&(r794has(((T794*)(r604rename_dictionary(C))),oBC604tmp_tail))) {
r7copy(((T7*)(oBC604parser_buffer_path)),r794at(((T794*)(r604rename_dictionary(C))),oBC604tmp_tail));
r676load_file(((T676*)(oBC364parser_buffer)),oBC604parser_buffer_path);
/*IF*/if (/*(IRF4.7is_ready*/((((T676*)((T676*)(oBC364parser_buffer))))->_path/*0*/)!=(NULL)/*)*/) {
R=1;
}
else {
r306w_put_string(((T0*)ms10_604));
r306w_put_string(oBC604parser_buffer_path);
r306w_put_string(((T0*)ms137_470));
exit(1);
}
/*FI*/}
/*FI*//*IF*/if (!(R)) {
r7copy(((T7*)(oBC604tmp_tail)),a1);
/*IF*/if (!(r7has_suffix(((T7*)(oBC604tmp_tail)),((T0*)ms25_364)))) {
r7append(((T7*)(oBC604tmp_tail)),((T0*)ms25_364));
}
/*FI*/_i=(((T52*)((T52*)(r604loading_path(C)))))->_lower/*12*/;
while (!(((_i)>((((T52*)((T52*)(r604loading_path(C)))))->_upper/*8*/))||(R))) {
r7copy(((T7*)(oBC604parser_buffer_path)),r52item(((T52*)(r604loading_path(C))),_i));
r7append(((T7*)(oBC604parser_buffer_path)),oBC604tmp_tail);
r676load_file(((T676*)(oBC364parser_buffer)),oBC604parser_buffer_path);
R=/*(IRF4.7is_ready*/((((T676*)((T676*)(oBC364parser_buffer))))->_path/*0*/)!=(NULL)/*)*/;
_i=(_i)+(1);
}
}
/*FI*//*IF*/if (!(R)) {
r306w_put_string(((T0*)ms11_604));
r306w_put_string(a1);
r306w_put_string(((T0*)ms12_604));
/*[IRF3.3clear*/((((T7*)(((T7*)(oBC604parser_buffer_path)))))->_count)=(0);
/*]*/
r604append_loading_path_in(C,oBC604parser_buffer_path);
r306w_put_string(oBC604parser_buffer_path);
}
/*FI*/return R;
}
/*No:SMALL_EIFFEL.fz_b0*/
T0*oBC364tmp_path=NULL;
/*No:SMALL_EIFFEL.is_ready*/
/*No:SMALL_EIFFEL.base_class_count*/
/*No:SMALL_EIFFEL.fz_se*/
/*No:SMALL_EIFFEL.os2_system*/
void r604pop(T604* C){
C->_top=((((T604*)C))->_top/*12*/)-(1);
}
int fBC604rename_dictionary=0;
T0*oBC604rename_dictionary=NULL;
T0* r604rename_dictionary(T604* C){
if (fBC604rename_dictionary==0){
T0* R=NULL;
T0* _short_name=NULL;
T0* _full_name=NULL;
int _i=0;
fBC604rename_dictionary=1;
{T794*n=malloc(sizeof(*n));
*n=M794;
r794make(n);
R=(T0*)n;
}
_i=1;
while (!((_i)>((((T52*)((T52*)(r604loading_path(C)))))->_upper/*8*/))) {
r7copy(((T7*)(oBC364tmp_path)),r52item(((T52*)(r604loading_path(C))),_i));
r7append(((T7*)(oBC364tmp_path)),((T0*)ms13_604));
r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path);
/*IF*/if (/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/) {
while (!(r675end_of_input(((T675*)(oBC364tmp_file_read))))) {
r675read_word(((T675*)(oBC364tmp_file_read)));
_full_name=r7twin(((T7*)(oBC762last_string)));
r675read_word(((T675*)(oBC364tmp_file_read)));
_short_name=r7twin(((T7*)(oBC762last_string)));
r7prepend(((T7*)_short_name),r52item(((T52*)(r604loading_path(C))),_i));
/*IF*/if (r794has(((T794*)R),_full_name)) {
r306w_put_string(((T0*)ms14_604));
r306w_put_string(_full_name);
r306w_put_string(((T0*)ms15_604));
r306w_put_string(_short_name);
r306w_put_string(((T0*)ms16_604));
r306w_put_string(r794at(((T794*)R),_full_name));
r306w_put_string(((T0*)ms17_604));
exit(1);
}
/*FI*/r794put(((T794*)R),_short_name,_full_name);
r675skip_separators(((T675*)(oBC364tmp_file_read)));
}
r675disconnect(((T675*)(oBC364tmp_file_read)));
}
/*FI*/_i=(_i)+(1);
}
oBC604rename_dictionary=R;}
return oBC604rename_dictionary;}
T0* r604run_class(T0* a1){
T0* R=NULL;
T0* _run_string=NULL;
_run_string=X291run_time_mark(a1);
/*IF*/if (r250has(((T250*)(oBC604run_class_dictionary)),_run_string)) {
R=r250at(((T250*)(oBC604run_class_dictionary)),_run_string);
}
else {
{T368*n=malloc(sizeof(*n));
*n=M368;
r368make(n,a1);
R=(T0*)n;
}
}
/*FI*/return R;
}
void r604append_loading_path_in(T604* C,T0* a1){
T0* _sed=NULL;
int _i=0;
r7append(((T7*)a1),((T0*)ms62_604));
_i=(((T52*)((T52*)(r604loading_path(C)))))->_lower/*12*/;
while (!((_i)>((((T52*)((T52*)(r604loading_path(C)))))->_upper/*8*/))) {
r7extend(((T7*)a1),'\42');
r7append(((T7*)a1),r52item(((T52*)(r604loading_path(C))),_i));
r7extend(((T7*)a1),'\42');
r7extend(((T7*)a1),'\n');
_i=(_i)+(1);
}
r7append(((T7*)a1),((T0*)ms63_604));
r7append(((T7*)a1),((T0*)ms121_470));
_sed=r604get_environment_variable(C,((T0*)ms121_470));
r7append(((T7*)a1),((T0*)ms64_604));
/*IF*/if ((_sed)==((void*)(NULL))) {
r7append(((T7*)a1),((T0*)ms65_604));
}
else {
r7append(((T7*)a1),((T0*)ms66_604));
r7append(((T7*)a1),_sed);
r7append(((T7*)a1),((T0*)ms67_604));
}
/*FI*/r7extend(((T7*)a1),'\n');
}
/*No:SMALL_EIFFEL.top*/
int r604is_used(T0* a1){
int R=0;
R=r718has(((T718*)(oBC604base_class_dictionary)),a1);
return R;
}
/*No:SMALL_EIFFEL.macintosh_system*/
void r604incr_magic_count(T604* C){
C->_magic_count=((((T604*)C))->_magic_count/*8*/)+(1);
}
/*No:SMALL_EIFFEL.magic_count*/
/*No:SMALL_EIFFEL.eiffel_suffix*/
T0* r604base_class(T604* C,T0* a1){
T0* R=NULL;
/*IF*/if (r718has(((T718*)(oBC604base_class_dictionary)),(((T451*)((T451*)a1)))->_to_string/*0*/)) {
R=r718at(((T718*)(oBC604base_class_dictionary)),(((T451*)((T451*)a1)))->_to_string/*0*/);
}
 else if ((((T818*)((T818*)(oBC364eiffel_parser))))->_is_running/*8*/) {
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms6_604);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
else {
/*IF*/if (r604parser_buffer_for(C,(((T451*)((T451*)a1)))->_to_string/*0*/)) {
R=r818analyse_class(((T818*)(oBC364eiffel_parser)),a1);
}
/*FI*//*IF*/if ((R)==((void*)(NULL))) {
r683add_position((((T451*)((T451*)a1)))->_start_position/*4*/);
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms7_604);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
/*FI*/}
/*FI*/return R;
}
/*No:SMALL_EIFFEL.fatal_error*/
T0* r604load_class(T604* C,T0* a1){
T0* R=NULL;
/*IF*/if (r604parser_buffer_for(C,a1)) {
R=r818analyse_class(((T818*)(oBC364eiffel_parser)),NULL);
/*IF*/if ((R)==((void*)(NULL))) {
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms8_604);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
/*FI*/}
else {
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms9_604);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
/*FI*/return R;
}
/*No:SMALL_EIFFEL.us_any*/
T0*oBC604base_class_dictionary=NULL;
void r390check_creation_clause(T390* C,T0* a1){
T0* _args=NULL;
T0* _top=NULL;
T0* _bottom=NULL;
T0* _fn=NULL;
_fn=/*X173*/((T0*)(((T268*)((T268*)((((T390*)C))->_call/*20*/))))->_feature_name/*12*/);
/*IF*/if (X291is_like_current(a1)) {
_top=r627base_class(((T627*)(X776start_position(_fn))));
_bottom=X291base_class(a1);
_fn=r605new_name_of(((T605*)_bottom),_top,_fn);
/*IF*/if ((_fn)==((void*)(NULL))) {
_fn=/*X173*/((T0*)(((T268*)((T268*)((((T390*)C))->_call/*20*/))))->_feature_name/*12*/);
r683add_position(X776start_position(_fn));
/*[IRF3.6append*/{T0* b1=((T0*)ms143_470);
r7append(((T7*)(oBC683explanation)),b1);
}/*]*/
/*[IRF3.6append*/{T0* b1=X776to_string(_fn);
r7append(((T7*)(oBC683explanation)),b1);
}/*]*/
/*[IRF3.6append*/{T0* b1=((T0*)ms1_394);
r7append(((T7*)(oBC683explanation)),b1);
}/*]*/
/*[IRF3.6append*/{T0* b1=X291run_time_mark(a1);
r7append(((T7*)(oBC683explanation)),b1);
}/*]*/
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms137_470);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
/*FI*/}
/*FI*/C->_run_feature=r368get_feature(((T368*)(X291run_class(a1))),_fn);
/*IF*/if (((((T390*)C))->_run_feature/*16*/)==((void*)(NULL))) {
r390cp_not_found(C,_fn);
}
/*FI*//*IF*/if ((((T604*)((T604*)(oBC364small_eiffel))))->_short_flag/*4*/) {
}
 else if (!(X291has_creation(a1,_fn))) {
r683add_position(X776start_position(/*X173*/((T0*)(((T268*)((T268*)((((T390*)C))->_call/*20*/))))->_feature_name/*12*/)));
r683add_position(X776start_position(_fn));
/*[IRF3.6append*/{T0* b1=X776to_string(_fn);
r7append(((T7*)(oBC683explanation)),b1);
}/*]*/
/*[IRF3.6append*/{T0* b1=((T0*)ms2_394);
r7append(((T7*)(oBC683explanation)),b1);
}/*]*/
r683add_type(a1,((T0*)ms67_470));
r683print_as_fatal_error(((T683*)(oBC364eh)));
}
/*FI*/X496add_client((((T390*)C))->_run_feature/*16*/,r592run_class(((T592*)((((T390*)C))->_run_compound/*4*/))));
/*IF*/if ((/*X496*/((T0*)(((T808*)((T808*)((((T390*)C))->_run_feature/*16*/))))->_result_type/*24*/))!=((void*)(NULL))) {
r683add_position(X496start_position((((T390*)C))->_run_feature/*16*/));
r683add_position(X776start_position(_fn));
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms3_394);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
/*FI*//*IF*/if (((r390arg_count(C))==(0))&&((/*X496*/((T0*)(((T808*)((T808*)((((T390*)C))->_run_feature/*16*/))))->_arguments/*20*/))!=((void*)(NULL)))) {
r683add_position(X496start_position((((T390*)C))->_run_feature/*16*/));
r683add_position((((T390*)C))->_start_position/*8*/);
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms4_394);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
/*FI*//*IF*/if ((r390arg_count(C))>(0)) {
_args=r431to_runnable(((T431*)(X173arguments((((T390*)C))->_call/*20*/))),r390current_type(C));
/*IF*/if ((_args)==((void*)(NULL))) {
r390error(r431start_position(((T431*)(X173arguments((((T390*)C))->_call/*20*/)))),((T0*)ms56_470));
}
else {
r431match_with(((T431*)_args),(((T390*)C))->_run_feature/*16*/);
}
/*FI*/}
/*FI*/C->_call=X173make_runnable((((T390*)C))->_call/*20*/,(((T390*)C))->_run_compound/*4*/,(((T390*)C))->_writable/*12*/,_args,(((T390*)C))->_run_feature/*16*/);
}
T0* r390add_comment(T390* C,T0* a1){
T0* R=NULL;
/*IF*/if (((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r52count(((T52*)((((T393*)((T393*)a1)))->_list/*4*/)))/*)*/)==(0))) {
R=(T0*)C;
}
/*AF*/else {
{T46*n=malloc(sizeof(*n));
*n=M46;
r46make(n,(T0*)C,a1);
R=(T0*)n;
}
}
/*FI*/return R;
}
void r390check_created_type(T390* C,T0* a1){
T0* _rt=NULL;
_rt=X291run_type(a1);
/*IF*/if ((((T604*)((T604*)(oBC364small_eiffel))))->_short_flag/*4*/) {
}
 else if ((((T605*)((T605*)(X291base_class(_rt)))))->_is_deferred/*16*/) {
r683add_type(_rt,((T0*)ms2_747));
r683add_position((((T390*)C))->_start_position/*8*/);
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms3_747);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
/*FI*//*IF*/if (X291is_formal_generic(a1)) {
r683add_position((((T390*)C))->_start_position/*8*/);
/*[IRF3.6append*/{T0* b1=((T0*)ms4_747);
r7append(((T7*)(oBC683explanation)),b1);
}/*]*/
r683add_type(a1,((T0*)ms5_747));
r683print_as_fatal_error(((T683*)(oBC364eh)));
}
/*FI*/r368set_at_run_time(((T368*)(X291run_class(_rt))));
}
void r390cp_not_found(T390* C,T0* a1){
r683add_position(X776start_position(/*X173*/((T0*)(((T268*)((T268*)((((T390*)C))->_call/*20*/))))->_feature_name/*12*/)));
r683add_position(X776start_position(a1));
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms5_394);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
/*No:CREATION_CALL_3.writable*/
/*No:CREATION_CALL_3.fz_bad_arguments*/
void r390make(T390* C,T0* a1,T0* a2,T0* a3){
C->_start_position=a1;
C->_writable=a2;
C->_call=a3;
}
int r390arg_count(T390* C){
int R=0;
/*IF*/if (((((T390*)C))->_call/*20*/)!=((void*)(NULL))) {
R=X173arg_count((((T390*)C))->_call/*20*/);
}
/*FI*/return R;
}
/*No:CREATION_CALL_3.call*/
/*No:CREATION_CALL_3.run_feature*/
/*No:CREATION_CALL_3.start_position*/
T0* r390to_runnable(T390* C,T0* a1){
T0* R=NULL;
T0* _t=NULL;
/*IF*/if (((((T390*)C))->_run_compound/*4*/)==((void*)(NULL))) {
r390check_writable(C,a1);
_t=X662result_type((((T390*)C))->_writable/*12*/);
r390check_created_type(C,_t);
r390check_creation_clause(C,_t);
R=(T0*)C;
}
else {
{T390*n=malloc(sizeof(*n));
*n=M390;
r390make(n,(((T390*)C))->_start_position/*8*/,(((T390*)C))->_writable/*12*/,(((T390*)C))->_call/*20*/);
R=(T0*)n;
}
R=r390to_runnable(((T390*)R),a1);
}
/*FI*/return R;
}
/*No:CREATION_CALL_3.fz_03*/
void r390pretty_print(T390* C){
r238put_string(((T238*)(oBC364fmt)),((T0*)ms1_390));
X173pretty_print((((T390*)C))->_call/*20*/);
}
T0* r390current_type(T390* C){
T0* R=NULL;
/*IF*/if (((((T390*)C))->_run_compound/*4*/)!=((void*)(NULL))) {
R=(((T592*)((T592*)((((T390*)C))->_run_compound/*4*/))))->_current_type/*4*/;
}
/*FI*/return R;
}
/*No:CREATION_CALL_3.fz_09*/
/*No:CREATION_CALL_3.run_compound*/
/*No:CREATION_CALL_3.fz_dot*/
void r390check_writable(T390* C,T0* a1){
T0* _w=NULL;
C->_run_compound=a1;
_w=X662to_runnable((((T390*)C))->_writable/*12*/,r390current_type(C));
/*IF*/if ((_w)==((void*)(NULL))) {
r683add_position(X662start_position((((T390*)C))->_writable/*12*/));
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms1_747);
r683fatal_error(((T683*)(oBC364eh)),b1);
}/*]*/
}
else {
C->_writable=_w;
}
/*FI*/}
void r390error(T0* a1,T0* a2){
r683add_position(a1);
r683error(((T683*)(oBC364eh)),a2);
}
/*No:CREATION_CALL_3.fatal_error*/
/*No:CREATION_CALL_3.end_mark_comment*/
void r699add_into(T699* C,T0* a1){
T0* _a=NULL;
int _i=0;
/*IF*/if (((((T699*)C))->_list/*8*/)!=((void*)(NULL))) {
_i=1;
while (!((_i)>((((T608*)((T608*)((((T699*)C))->_list/*8*/))))->_upper/*8*/))) {
_a=r608item(((T608*)((((T699*)C))->_list/*8*/)),_i);
/*IF*/if (!(r608fast_has(((T608*)a1),_a))) {
r608add_last(((T608*)a1),_a);
}
/*FI*/_i=(_i)+(1);
}
}
/*FI*/}
void r699from_runnable(T699* C,T0* a1){
C->_list=a1;
C->_current_type=(((T348*)((T348*)(r608item(((T608*)((((T699*)C))->_list/*8*/)),1)))))->_current_type/*12*/;
}
void r699make(T699* C,T0* a1,T0* a2,T0* a3){
C->_start_position=a1;
C->_header_comment=a2;
C->_list=a3;
}
T0* r699name(void){
T0* R=NULL;
R=((T0*)ms26_470);
return R;
}
/*No:CLASS_INVARIANT.start_position*/
/*No:CLASS_INVARIANT.fz_invariant*/
void r699pretty_print(T699* C){
int _i=0;
/*[IRF3.3set_indent_level*/((((T238*)(((T238*)(oBC364fmt)))))->_indent_level)=(0);
/*]*/
/*IF*/if (!(r238zen_mode(((T238*)(oBC364fmt))))) {
r238skip(((T238*)(oBC364fmt)),1);
}
/*FI*/r238keyword(((T238*)(oBC364fmt)),r699name());
/*IF*/if (((((T699*)C))->_header_comment/*4*/)!=((void*)(NULL))) {
r393pretty_print(((T393*)((((T699*)C))->_header_comment/*4*/)));
}
/*FI*//*IF*/if (((((T699*)C))->_list/*8*/)!=((void*)(NULL))) {
_i=1;
while (!((_i)>((((T608*)((T608*)((((T699*)C))->_list/*8*/))))->_upper/*8*/))) {
/*[IRF3.3set_indent_level*/((((T238*)(((T238*)(oBC364fmt)))))->_indent_level)=(1);
/*]*/
r238indent(((T238*)(oBC364fmt)));
/*IF*/if (!(r238zen_mode(((T238*)(oBC364fmt))))) {
r238skip(((T238*)(oBC364fmt)),1);
}
/*FI*//*[IRF3.3set_semi_colon_flag*/((((T238*)(((T238*)(oBC364fmt)))))->_semi_colon_flag)=(1);
/*]*/
r348pretty_print(((T348*)(r608item(((T608*)((((T699*)C))->_list/*8*/)),_i))));
_i=(_i)+(1);
}
}
/*FI*/}
/*No:CLASS_INVARIANT.list*/
/*No:CLASS_INVARIANT.current_type*/
/*No:CLASS_INVARIANT.header_comment*/

