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

This is pretty5.c in view mode; [Download] [Up]

/* ANSI C code generated by SmallEiffel. */
/*
-- SmallEiffel  -- Release (- 0.95)    --      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 "pretty.h"
int rT49a_binary(T49 *C,T0* a1){
int R=0;
R=1;
/*IF*/if (rT49skip2(C,'\74','\75')) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms84,a1);
C->_last_binary=(T0 *)n;}
}
 else if (rT49skip2(C,'\76','\75')) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms85,a1);
C->_last_binary=(T0 *)n;}
}
 else if (rT49skip2(C,'\57','\57')) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms86,a1);
C->_last_binary=(T0 *)n;}
}
 else if (rT49skip2(C,'\134','\134')) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms87,a1);
C->_last_binary=(T0 *)n;}
}
 else if (rT49skip1(C,'\53')) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms78,a1);
C->_last_binary=(T0 *)n;}
}
 else if (rT49skip1(C,'\55')) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms79,a1);
C->_last_binary=(T0 *)n;}
}
 else if (rT49skip1(C,'\52')) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms88,a1);
C->_last_binary=(T0 *)n;}
}
 else if (rT49skip1(C,'\57')) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms89,a1);
C->_last_binary=(T0 *)n;}
}
 else if (rT49skip1(C,'\76')) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms90,a1);
C->_last_binary=(T0 *)n;}
}
 else if (rT49skip1(C,'\74')) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms91,a1);
C->_last_binary=(T0 *)n;}
}
 else if (rT49skip1(C,'\136')) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms92,a1);
C->_last_binary=(T0 *)n;}
}
 else if (rT49a_keyword(C,(T0 *)ms93)) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms93,a1);
C->_last_binary=(T0 *)n;}
}
 else if (rT49a_keyword(C,(T0 *)ms94)) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms94,a1);
C->_last_binary=(T0 *)n;}
}
 else if (rT49a_keyword(C,(T0 *)ms95)) {
/*IF*/if (rT49a_keyword(C,(T0 *)ms96)) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms97,a1);
C->_last_binary=(T0 *)n;}
}
else {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms95,a1);
C->_last_binary=(T0 *)n;}
}
/*FI*/}
 else if (rT49a_keyword(C,(T0 *)ms98)) {
/*IF*/if (rT49a_keyword(C,(T0 *)ms99)) {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms100,a1);
C->_last_binary=(T0 *)n;}
}
else {
{T68 *n=((T68*)se_new(68));
rT68make(n,(T0 *)ms98,a1);
C->_last_binary=(T0 *)n;}
}
/*FI*/}
else {
C->_last_binary=NULL;
R=0;
}
/*FI*/return R;
}
int rT49a_creation(T49 *C){
int R=0;
int _state=0;
T0* _call=NULL;
T0* _proc_name=NULL;
T0* _writable=NULL;
T0* _type=NULL;
T0* _sp=NULL;
while (!((_state)>(6))) {
{int iv1=_state;
if (0 == iv1) goto l293;
goto l294;
 l293: ;
/*IF*/if (rT49skip1(C,'\41')) {
{T44 *n=((T44*)se_new(44));
rT44make(n,(C)->_start_line,(C)->_start_column);
_sp=(T0 *)n;}
_state=1;
}
else {
_state=7;
}
/*FI*/goto l292;
 l294: ;
if (1 == iv1) goto l295;
goto l296;
 l295: ;
/*IF*/if (rT49a_type(C)) {
_type=(C)->_last_type;
/*IF*/if (XrT56is_anchored(_type)) {
rT49warning(XrT56start_position(_type),(T0 *)ms377);
}
/*FI*/_state=2;
}
 else if (rT49skip1(C,'\41')) {
_state=3;
}
else {
rT49fcp(C,(T0 *)ms378);
_state=8;
}
/*FI*/goto l292;
 l296: ;
if (2 == iv1) goto l297;
goto l298;
 l297: ;
/*IF*/if (rT49skip1(C,'\41')) {
_state=3;
}
else {
_state=8;
rT49fcp(C,(T0 *)ms379);
}
/*FI*/goto l292;
 l298: ;
if (3 == iv1) goto l299;
goto l300;
 l299: ;
/*IF*/if (rT49a_identifier(C)) {
/*IF*/if (rT49a_current(C)) {
_state=8;
rT49error(XrT66start_position((C)->_last_expression),(T0 *)ms380);
}
 else if (rT49a_argument(C)) {
_state=8;
rT49error(XrT66start_position((C)->_last_expression),(T0 *)ms381);
}
 else if ((rT49a_result(C))||(rT49a_local_variable(C))) {
_writable=(C)->_last_expression;
_state=4;
}
else {
_writable=rT67to_feature_name((T67*)rT49tmp_name());
_state=4;
}
/*FI*/}
else {
_state=8;
rT49fcp(C,(T0 *)ms382);
}
/*FI*/goto l292;
 l300: ;
if (4 == iv1) goto l301;
goto l302;
 l301: ;
/*IF*/if (rT49skip1unless2(C,'\56','\56')) {
_state=5;
}
else {
_state=7;
}
/*FI*/goto l292;
 l302: ;
if (5 == iv1) goto l303;
goto l304;
 l303: ;
/*IF*/if (rT49a_identifier(C)) {
_proc_name=rT67to_feature_name((T67*)rT49tmp_name());
_state=6;
}
else {
_state=8;
rT49fcp(C,(T0 *)ms383);
}
/*FI*/goto l292;
 l304: ;
/*IF*/if (((C)->_cc)==('\50')) {
_call=rT49to_proc_call(C,_writable,_proc_name,rT49a_actuals(C));
}
else {
{T177 *n=((T177*)se_new(177));
rT177make(n,_writable,_proc_name);
_call=(T0 *)n;}}
/*FI*/_state=7;
 l292: ;
}
}
/*IF*/if (((_state)==(7))&&(((int)_sp))) {
R=1;
/*IF*/if (((!(_type))&&(!(_call)))) {
{T239 *n=((T239*)se_new(239));
rT239make(n,_sp,_writable);
C->_last_instruction=(T0 *)n;}}
 else if (((((int)_type))&&(!(_call)))) {
{T242 *n=((T242*)se_new(242));
rT242make(n,_sp,_type,_writable);
C->_last_instruction=(T0 *)n;}}
 else if (((!(_type))&&(((int)_call)))) {
{T244 *n=((T244*)se_new(244));
rT244make(n,_sp,_writable,_call);
C->_last_instruction=(T0 *)n;}}
else {
{T246 *n=((T246*)se_new(246));
rT246make(n,_sp,_type,_writable,_call);
C->_last_instruction=(T0 *)n;}}
/*FI*/}
/*FI*/return R;
}
void rT49a_creation_clause(T49 *C){
T0* _creation_clause=NULL;
T0* _list=NULL;
T0* _comments=NULL;
T0* _clients=NULL;
_clients=rT49a_clients(C);
_comments=rT49get_comments(C);
/*IF*/if (rT49a_feature_list(C)) {
_list=(C)->_last_feature_list;
{T130 *n=((T130*)se_new(130));
rT130make(n,_clients,_comments,_list);
_creation_clause=(T0 *)n;}
rT48add_creation_clause((T48*)(C)->_last_base_class,_creation_clause);
}
else {
/*IF*/if (((((int)_comments))||(((int)_clients)))) {
/*IF*/if (((int)_comments)) {
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(((T57*)_comments)->_start_position);
}
/*FI*//*IF*/if (((int)_clients)) {
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(((T121*)_clients)->_start_position);
}
/*FI*/rT43warning((T43*)oRBC27eh,(T0 *)ms244);
}
/*FI*/}
/*FI*/}
int rT49a_argument(T49 *C){
int R=0;
int _rank=0;
/*IF*/if (((int)(C)->_arguments)) {
_rank=rT90rank_of((T90*)(C)->_arguments,rT49tmp_name());
/*IF*/if ((_rank)>(0)) {
C->_last_expression=rT67to_argument_name((T67*)rT49tmp_name(),(C)->_arguments,_rank);
R=1;
}
/*FI*/}
/*FI*/return R;
}
void rT49a_after_a_dot(T49 *C,int a1,T0* a2){
T0* _eal=NULL;
T0* _fn=NULL;
/*IF*/if (rT49a_identifier(C)) {
/*IF*/if (((rT49a_result(C))||(rT49a_void(C)))||(rT49a_current(C))) {
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(XrT66start_position((C)->_last_expression));
rT43error((T43*)oRBC27eh,(T0 *)ms290);
}
/*FI*/_fn=rT67to_feature_name((T67*)rT49tmp_name());
_eal=rT49a_actuals(C);
rT49a_r10(C,a1,a2,_fn,_eal);
}
else {
rT49fcp(C,(T0 *)ms293);
}
/*FI*/}
void rT49a_redefine_list(T49 *C){
/*IF*/if (rT49a_feature_list(C)) {
rT116set_redefine((T116*)(C)->_last_parent,(C)->_last_feature_list);
}
/*FI*/}
int rT49a_index_clause(T49 *C){
int R=0;
T0* _index_clause=NULL;
/*IF*/if (rT49a_feature_name(C)) {
R=1;
/*IF*/if (rT49skip1(C,'\72')) {
{T63 *n=((T63*)se_new(63));
/*(IRF3*/((n)->_index)=(XrT65to_string((C)->_last_feature_name));
/*)*/_index_clause=(T0 *)n;}
/*IF*/if (rT49a_index_value(C)) {
rT63add_index_value((T63*)_index_clause,(C)->_last_index_value);
}
else {
rT49fcp(C,(T0 *)ms168);
}
/*FI*/}
else {
{T63 *n=((T63*)se_new(63));
/*(IRF3*/((n)->_index)=(NULL);
/*)*/_index_clause=(T0 *)n;}
rT63add_index_value((T63*)_index_clause,(C)->_last_feature_name);
}
/*FI*/}
 else if (rT49a_manifest_constant(C)) {
R=1;
{T63 *n=((T63*)se_new(63));
/*(IRF3*/((n)->_index)=(NULL);
/*)*/_index_clause=(T0 *)n;}
rT63add_index_value((T63*)_index_clause,(C)->_last_manifest_constant);
}
/*FI*//*IF*/if (R) {
while (!(!(rT49skip1(C,'\54')))) {
/*IF*/if (rT49a_index_value(C)) {
rT63add_index_value((T63*)_index_clause,(C)->_last_index_value);
}
else {
rT49fcp(C,(T0 *)ms168);
}
/*FI*/}
rT48add_index_clause((T48*)(C)->_last_base_class,_index_clause);
}
/*FI*/return R;
}
void rT49a_index_list(T49 *C){
while (!(!(rT49a_index_clause(C)))) {
C->_ok=rT49skip1(C,'\73');
}
}
void rT49a_indexing(T49 *C){
/*IF*/if (rT49a_keyword(C,(T0 *)ms72)) {
rT49a_index_list(C);
}
/*FI*/}
int rT49a_index_value(T49 *C){
int R=0;
/*IF*/if (rT49a_feature_name(C)) {
C->_last_index_value=(C)->_last_feature_name;
R=1;
}
 else if (rT49a_manifest_constant(C)) {
C->_last_index_value=(C)->_last_manifest_constant;
R=1;
}
/*FI*/return R;
}
int rT49a_tag_mark(T49 *C){
int R=0;
/*IF*/if (rT49a_identifier(C)) {
/*IF*/if (rT49skip1unless2(C,'\72','\75')) {
R=1;
C->_last_tag_mark=rT67to_tag_name((T67*)rT49tmp_name());
}
else {
C->_last_tag_mark=NULL;
rT49go_back_at(C,((T67*)rT49tmp_name())->_li,((T67*)rT49tmp_name())->_co);
}
/*FI*/}
else {
C->_last_tag_mark=NULL;
}
/*FI*/return R;
}
int rT49a_manifest_constant(T49 *C){
int R=0;
/*IF*/if (rT49a_boolean_constant(C)) {
C->_last_manifest_constant=(C)->_last_boolean_constant;
R=1;
}
 else if (rT49a_character_constant(C)) {
C->_last_manifest_constant=(C)->_last_character_constant;
R=1;
}
 else if (rT49a_manifest_string(C)) {
C->_last_manifest_constant=(C)->_last_manifest_string;
R=1;
}
 else if (rT49a_bit_constant(C)) {
C->_last_manifest_constant=(C)->_last_bit_constant;
R=1;
}
 else if (rT49a_real_constant(C)) {
C->_last_manifest_constant=(C)->_last_real_constant;
R=1;
}
 else if (rT49a_integer_constant(C)) {
C->_last_manifest_constant=(C)->_last_integer_constant;
R=1;
}
/*FI*/return R;
}
int rT49a_manifest_string(T49 *C){
int R=0;
int _state=0;
/*IF*/if (((C)->_cc)==('\42')) {
R=1;
{T74 *n=((T74*)se_new(74));
rT74make(n,rT49pos((C)->_line,(C)->_column));
C->_last_manifest_string=(T0 *)n;}
while (!((_state)>(3))) {
rT49next_char(C);
{int iv1=_state;
if (0 == iv1) goto l306;
goto l307;
 l306: ;
{int iv2=(C)->_cc;
if (10 == iv2) goto l309;
goto l310;
 l309: ;
rT49fcp(C,(T0 *)ms159);
goto l308;
 l310: ;
if (34 == iv2) goto l311;
goto l312;
 l311: ;
_state=4;
goto l308;
 l312: ;
if (37 == iv2) goto l313;
goto l314;
 l313: ;
_state=1;
goto l308;
 l314: ;
rT74add((T74*)(C)->_last_manifest_string,(C)->_cc);
 l308: ;
}
goto l305;
 l307: ;
if (1 == iv1) goto l315;
goto l316;
 l315: ;
_state=0;
{int iv2=(C)->_cc;
if (10 == iv2) goto l318;
goto l319;
 l318: ;
_state=3;
goto l317;
 l319: ;
if (65 == iv2) goto l320;
goto l321;
 l320: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\100');
goto l317;
 l321: ;
if (66 == iv2) goto l322;
goto l323;
 l322: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\10');
goto l317;
 l323: ;
if (67 == iv2) goto l324;
goto l325;
 l324: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\136');
goto l317;
 l325: ;
if (68 == iv2) goto l326;
goto l327;
 l326: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\44');
goto l317;
 l327: ;
if (70 == iv2) goto l328;
goto l329;
 l328: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\14');
goto l317;
 l329: ;
if (72 == iv2) goto l330;
goto l331;
 l330: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\134');
goto l317;
 l331: ;
if (76 == iv2) goto l332;
goto l333;
 l332: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\176');
goto l317;
 l333: ;
if (78 == iv2) goto l334;
goto l335;
 l334: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\12');
goto l317;
 l335: ;
if (81 == iv2) goto l336;
goto l337;
 l336: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\140');
goto l317;
 l337: ;
if (82 == iv2) goto l338;
goto l339;
 l338: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\15');
goto l317;
 l339: ;
if (83 == iv2) goto l340;
goto l341;
 l340: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\43');
goto l317;
 l341: ;
if (84 == iv2) goto l342;
goto l343;
 l342: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\11');
goto l317;
 l343: ;
if (85 == iv2) goto l344;
goto l345;
 l344: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\0');
goto l317;
 l345: ;
if (86 == iv2) goto l346;
goto l347;
 l346: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\174');
goto l317;
 l347: ;
if (37 == iv2) goto l348;
goto l349;
 l348: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\45');
goto l317;
 l349: ;
if (39 == iv2) goto l350;
goto l351;
 l350: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\47');
goto l317;
 l351: ;
if (34 == iv2) goto l352;
goto l353;
 l352: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\42');
goto l317;
 l353: ;
if (40 == iv2) goto l354;
goto l355;
 l354: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\133');
goto l317;
 l355: ;
if (41 == iv2) goto l356;
goto l357;
 l356: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\135');
goto l317;
 l357: ;
if (60 == iv2) goto l358;
goto l359;
 l358: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\173');
goto l317;
 l359: ;
if (62 == iv2) goto l360;
goto l361;
 l360: ;
rT74add_percent((T74*)(C)->_last_manifest_string,'\175');
goto l317;
 l361: ;
if (47 == iv2) goto l362;
goto l363;
 l362: ;
rT49a_ascii_code(C);
rT74add_ascii((T74*)(C)->_last_manifest_string,(C)->_last_ascii_code);
goto l317;
 l363: ;
if (9 == iv2) goto l364;
if (32 == iv2) goto l364;
goto l365;
 l364: ;
_state=2;
goto l317;
 l365: ;
rT49fcp(C,(T0 *)ms160);
_state=0;
 l317: ;
}
goto l305;
 l316: ;
if (2 == iv1) goto l366;
goto l367;
 l366: ;
{int iv2=(C)->_cc;
if (10 == iv2) goto l369;
goto l370;
 l369: ;
_state=3;
goto l368;
 l370: ;
if (9 == iv2) goto l371;
if (32 == iv2) goto l371;
goto l372;
 l371: ;
goto l368;
 l372: ;
rT49fcp(C,(T0 *)ms161);
 l368: ;
}
goto l305;
 l367: ;
{int iv2=(C)->_cc;
if (9 == iv2) goto l374;
if (32 == iv2) goto l374;
goto l375;
 l374: ;
goto l373;
 l375: ;
if (37 == iv2) goto l376;
goto l377;
 l376: ;
rT74break_line((T74*)(C)->_last_manifest_string);
_state=0;
goto l373;
 l377: ;
if (10 == iv2) goto l378;
goto l379;
 l378: ;
rT49fcp(C,(T0 *)ms159);
_state=0;
goto l373;
 l379: ;
rT49fcp(C,(T0 *)ms162);
_state=0;
 l373: ;
}
 l305: ;
}
}
rT49next_char(C);
rT49skip_comments(C);
}
/*FI*/return R;
}
int rT49a_infix(T49 *C){
int R=0;
T0* _sp=NULL;
/*IF*/if (rT49a_keyword(C,(T0 *)ms82)) {
R=1;
{T44 *n=((T44*)se_new(44));
rT44make(n,(C)->_start_line,(C)->_start_column);
_sp=(T0 *)n;}
/*IF*/if (((C)->_cc)==('\42')) {
rT49next_char(C);
}
else {
rT49wcp(C,(T0 *)ms83);
}
/*FI*//*IF*/if (rT49a_binary(C,_sp)) {
C->_last_infix=(C)->_last_binary;
}
 else if (rT49a_free_operator(C)) {
C->_last_infix=rT67to_infix_name((T67*)rT49tmp_operator(),_sp);
}
else {
rT49fcp(C,(T0 *)ms101);
}
/*FI*//*IF*/if (!(rT49skip1(C,'\42'))) {
rT49wcp(C,(T0 *)ms102);
}
/*FI*/}
/*FI*/return R;
}
int rT49a_free_operator(T49 *C){
int R=0;
/*IF*/if ((((((C)->_cc)==('\100'))||(((C)->_cc)==('\43')))||(((C)->_cc)==('\174')))||(((C)->_cc)==('\46'))) {
R=1;
rT67make((T67*)rT49tmp_operator(),(C)->_line,(C)->_column);
rT67extend((T67*)rT49tmp_operator(),(C)->_cc);
rT49next_char(C);
while (!((((((C)->_cc)==('\12'))||(((C)->_cc)==('\40')))||(((C)->_cc)==('\11')))||(((C)->_cc)==('\42')))) {
rT67extend((T67*)rT49tmp_operator(),(C)->_cc);
rT49next_char(C);
}
rT49skip_comments(C);
}
/*FI*/return R;
}
void rT49a_local_var_list(T49 *C,T0* a1){
int _state=0;
int _rank=0;
T0* _list=NULL;
T0* _declaration=NULL;
T0* _name_list=NULL;
T0* _name=NULL;
while (!((_state)>(4))) {
{int iv1=_state;
if (0 == iv1) goto l381;
goto l382;
 l381: ;
/*IF*/if (rT49a_identifier(C)) {
_name=rT67to_decl_name((T67*)rT49tmp_name());
_state=1;
/*IF*/if (((int)(C)->_arguments)) {
_rank=rT90rank_of((T90*)(C)->_arguments,_name);
/*IF*/if ((_rank)>(0)) {
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(((T95*)_name)->_start_position);
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(XrT47start_position(rT90name((T90*)(C)->_arguments,_rank)));
rT43error((T43*)oRBC27eh,(T0 *)ms322);
}
/*FI*/}
/*FI*/}
 else if (((((C)->_cc)==('\54'))||(((C)->_cc)==('\73')))) {
rT49wcp(C,(T0 *)ms250);
C->_ok=(rT49skip1(C,'\54'))||(rT49skip1(C,'\73'));
}
else {
_state=5;
}
/*FI*/goto l380;
 l382: ;
if (1 == iv1) goto l383;
goto l384;
 l383: ;
/*IF*/if (rT49skip1(C,'\72')) {
/*IF*/if (((int)_name_list)) {
rT139add_last((T139*)_name_list,_name);
_name=NULL;
}
/*FI*/_state=3;
}
else {
/*IF*/if (((C)->_cc)==('\73')) {
rT49wcp(C,(T0 *)ms323);
C->_ok=rT49skip1(C,'\73');
}
else {
C->_ok=rT49skip1(C,'\54');
}
/*FI*//*IF*/if (!(_name_list)) {
_name_list=ma(139,0,1,_name);
}
else {
rT139add_last((T139*)_name_list,_name);
}
/*FI*/_name=NULL;
_state=2;
}
/*FI*/goto l380;
 l384: ;
if (2 == iv1) goto l385;
goto l386;
 l385: ;
/*IF*/if (rT49a_identifier(C)) {
_name=rT67to_decl_name((T67*)rT49tmp_name());
_state=1;
/*IF*/if (((int)(C)->_arguments)) {
_rank=rT90rank_of((T90*)(C)->_arguments,_name);
/*IF*/if ((_rank)>(0)) {
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(((T95*)_name)->_start_position);
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(XrT47start_position(rT90name((T90*)(C)->_arguments,_rank)));
rT43error((T43*)oRBC27eh,(T0 *)ms324);
}
/*FI*/}
/*FI*/}
 else if (((((C)->_cc)==('\54'))||(((C)->_cc)==('\73')))) {
rT49wcp(C,(T0 *)ms250);
C->_ok=(rT49skip1(C,'\54'))||(rT49skip1(C,'\73'));
}
else {
_state=6;
}
/*FI*/goto l380;
 l386: ;
if (3 == iv1) goto l387;
goto l388;
 l387: ;
/*IF*/if (rT49a_type(C)) {
/*IF*/if (((int)_name_list)) {
{T140 *n=((T140*)se_new(140));
rT140make(n,_name_list,(C)->_last_type);
_declaration=(T0 *)n;}_name_list=NULL;
}
else {
{T92 *n=((T92*)se_new(92));
rT92make(n,_name,(C)->_last_type);
_declaration=(T0 *)n;}_name=NULL;
}
/*FI*//*IF*/if (!(_list)) {
_list=ma(141,0,1,_declaration);
}
else {
XrT141add_last(_list,_declaration);
}
/*FI*/_state=4;
}
else {
_state=6;
}
/*FI*/goto l380;
 l388: ;
/*IF*/if (((C)->_cc)==('\54')) {
rT49wcp(C,(T0 *)ms325);
C->_ok=rT49skip1(C,'\54');
_state=0;
}
else {
C->_ok=rT49skip1(C,'\73');
_state=0;
}
/*FI*/ l380: ;
}
}
/*IF*/if ((_state)==(6)) {
rT49fcp(C,(T0 *)ms326);
}
 else if (((int)_list)) {
{T137 *n=((T137*)se_new(137));
rT137make(n,a1,_list);
C->_local_vars=(T0 *)n;}
/*(IRF3*/(((T134*)oRBC49tmp_feature)->_local_vars)=((C)->_local_vars);
/*)*/}
/*FI*/}
int rT49a_local_variable(T49 *C){
int R=0;
int _rank=0;
/*IF*/if (((int)(C)->_local_vars)) {
_rank=rT137rank_of((T137*)(C)->_local_vars,rT49tmp_name());
/*IF*/if ((_rank)>(0)) {
C->_last_expression=rT67to_local_name((T67*)rT49tmp_name(),(C)->_local_vars,_rank);
R=1;
}
/*FI*/}
/*FI*/return R;
}
T0* rT49a_compound2(T49 *C,T0* a1,T0* a2){
T0* R=NULL;
T0* _instruction=NULL;
T0* _list=NULL;
T0* _hc=NULL;
_hc=rT49get_comments(C);
while (!(((C)->_cc)!=('\73'))) {
rT49wcp(C,(T0 *)ms230);
C->_ok=rT49skip1(C,'\73');
}
while (!(((!(rT49a_instruction(C)))||((/*(IRF4*/((T43*)oRBC27eh)->_nb_errors/*)*/)>(10))))) {
_instruction=(C)->_last_instruction;
/*IF*/if (((C)->_cc)==('\50')) {
rT49wcp(C,(T0 *)ms234);
}
/*FI*/C->_ok=rT49skip1(C,'\73');
while (!(((C)->_cc)!=('\73'))) {
rT49wcp(C,(T0 *)ms230);
C->_ok=rT49skip1(C,'\73');
}
/*IF*/if ((/*(IRF4*/((T43*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
/*IF*/if (!(_list)) {
_list=ma(216,0,1,XrT175add_comment(_instruction,rT49get_comments(C)));
}
else {
rT216add_last((T216*)_list,XrT175add_comment(_instruction,rT49get_comments(C)));
}
/*FI*/}
/*FI*/}
/*IF*/if (!(rT49a_keyword(C,a2))) {
(/*UT*/(void)(T43*)oRBC27eh);
rT43append((T0 *)ms343);
(/*UT*/(void)(T43*)oRBC27eh);
rT43append(a1);
(/*UT*/(void)(T43*)oRBC27eh);
rT43append((T0 *)ms344);
(/*UT*/(void)(T43*)oRBC27eh);
rT43append(a2);
rT49fcp(C,(T0 *)ms345);
}
/*FI*//*IF*/if ((((int)_hc))||(((int)_list))) {
{T138 *n=((T138*)se_new(138));
rT138make(n,_hc,_list);
R=(T0 *)n;}
}
/*FI*/return R;
}
T0* rT49a_compound1(T49 *C,T0* a1){
T0* R=NULL;
T0* _instruction=NULL;
T0* _list=NULL;
T0* _hc=NULL;
_hc=rT49get_comments(C);
while (!(((C)->_cc)!=('\73'))) {
rT49wcp(C,(T0 *)ms230);
C->_ok=rT49skip1(C,'\73');
}
while (!(((!(rT49a_instruction(C)))||((/*(IRF4*/((T43*)oRBC27eh)->_nb_errors/*)*/)>(10))))) {
_instruction=(C)->_last_instruction;
/*IF*/if (((C)->_cc)==('\50')) {
rT49wcp(C,(T0 *)ms234);
}
/*FI*/C->_ok=rT49skip1(C,'\73');
while (!(((C)->_cc)!=('\73'))) {
rT49wcp(C,(T0 *)ms230);
C->_ok=rT49skip1(C,'\73');
}
/*IF*/if ((/*(IRF4*/((T43*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
/*IF*/if (!(_list)) {
_list=ma(216,0,1,XrT175add_comment(_instruction,rT49get_comments(C)));
}
else {
rT216add_last((T216*)_list,XrT175add_comment(_instruction,rT49get_comments(C)));
}
/*FI*/}
/*FI*/}
/*IF*/if ((((int)_hc))||(((int)_list))) {
{T138 *n=((T138*)se_new(138));
rT138make(n,_hc,_list);
R=(T0 *)n;}
}
/*FI*/return R;
}
int rT49a_bit_constant(T49 *C){
int R=0;
T0* _sequence=NULL;
int _state=0;
/*IF*/if ((((C)->_cc)==('0'))||(((C)->_cc)==('1'))) {
{T7 *n=((T7*)se_new(7));
rT7make(n,16);
_sequence=(T0 *)n;}
rT7extend((T7*)_sequence,(C)->_cc);
while (!((_state)>(0))) {
rT49next_char(C);
{int iv1=(C)->_cc;
if ((48<=iv1)&&(iv1<=49)) goto l390;
goto l391;
 l390: ;
rT7extend((T7*)_sequence,(C)->_cc);
goto l389;
 l391: ;
if (66 == iv1) goto l392;
if (98 == iv1) goto l392;
goto l393;
 l392: ;
{T75 *n=((T75*)se_new(75));
/*(IRF3*/((n)->_value)=(_sequence);
/*)*/C->_last_bit_constant=(T0 *)n;}
rT49next_char(C);
rT49skip_comments(C);
_state=1;
R=1;
goto l389;
 l393: ;
_state=((T7*)_sequence)->_count;
while (!((_state)==(0))) {
_state=(_state)-(1);
rT49prev_char(C);
}
_state=2;
 l389: ;
}
}
}
/*FI*/return R;
}
int rT3same_as(T3 C,char a1){
int R=0;
/*IF*/if ((C)==(a1)) {
R=1;
}
else {
{int iv1=((unsigned char)C);
if ((65<=iv1)&&(iv1<=90)) goto l395;
goto l396;
 l395: ;
R=(C)==(rT3to_upper(a1));
goto l394;
 l396: ;
if ((97<=iv1)&&(iv1<=122)) goto l397;
goto l398;
 l397: ;
R=(C)==(rT3to_lower(a1));
goto l394;
 l398: ;
 l394: ;
}
}
/*FI*/return R;
}
char rT3to_upper(T3 C){
char R=0;
/*IF*/if ((((unsigned char)C))<(97)) {
R=C;
}
 else if ((((unsigned char)C))>(122)) {
R=C;
}
else {
R=(((unsigned char)C))-(32);
}
/*FI*/return R;
}
int rT3is_digit(T3 C){
int R=0;
{int iv1=C;
if ((48<=iv1)&&(iv1<=57)) goto l400;
goto l401;
 l400: ;
R=1;
goto l399;
 l401: ;
 l399: ;
}
return R;
}
int rT3is_letter(T3 C){
int R=0;
{int iv1=C;
if ((65<=iv1)&&(iv1<=90)) goto l403;
if ((97<=iv1)&&(iv1<=122)) goto l403;
goto l404;
 l403: ;
R=1;
goto l402;
 l404: ;
 l402: ;
}
return R;
}
int rT3is_separator(T3 C){
int R=0;
{int iv1=C;
if (0 == iv1) goto l406;
if ((9<=iv1)&&(iv1<=10)) goto l406;
if (13 == iv1) goto l406;
if (32 == iv1) goto l406;
goto l407;
 l406: ;
R=1;
goto l405;
 l407: ;
 l405: ;
}
return R;
}
int rT3_ix6261(T3 C,char a1){
int R=0;
R=(((unsigned char)C))>=(((unsigned char)a1));
return R;
}
int rT3value(T3 C){
int R=0;
R=(((unsigned char)C))-(48);
return R;
}
char rT3to_lower(T3 C){
char R=0;
/*IF*/if ((((unsigned char)C))<(65)) {
R=C;
}
 else if ((((unsigned char)C))>(90)) {
R=C;
}
else {
R=(((unsigned char)C))+(32);
}
/*FI*/return R;
}
void rT172bracketed_print(T172 *C){
rT260put_character((T260*)oRBC27fmt,'\50');
rT172pretty_print(C);
rT260put_character((T260*)oRBC27fmt,'\51');
}
void rT172error(/*C*/T0* a1,T0* a2){
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(a1);
rT43error((T43*)oRBC27eh,a2);
}
T0* rT172add_comment(T172 *C,T0* a1){
T0* R=NULL;
/*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
R=(T0 *)C;
}
else {
{T219 *n=((T219*)se_new(219));
rT219make(n,(T0 *)C,a1);
R=(T0 *)n;}}
/*FI*/return R;
}
void rT172print_as_target(T172 *C){
rT172error(rT172start_position(C),(T0 *)ms499);
}
T0* rT172start_position(T172 *C){
T0* R=NULL;
R=XrT65start_position((C)->_feature_name);
return R;
}
void rT172pretty_print(T172 *C){
rT260put_character((T260*)oRBC27fmt,'\44');
XrT65pretty_print((C)->_feature_name);
}
T0* rT204first_name(T204 *C){
T0* R=NULL;
R=rT126item((T126*)(C)->_names,1);
return R;
}
void rT204error(/*C*/T0* a1,T0* a2){
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(a1);
rT43error((T43*)oRBC27eh,a2);
}
T0* rT204start_position(T204 *C){
T0* R=NULL;
R=XrT65start_position(rT204first_name(C));
return R;
}
void rT204pretty_print_arguments(T204 *C){
/*IF*/if (((int)(C)->_arguments)) {
rT90pretty_print((T90*)(C)->_arguments);
}
/*FI*/}
void rT204pretty_print_one_name(/*C*/T0* a1){
/*IF*/if (XrT65is_frozen(a1)) {
rT260keyword((T260*)oRBC27fmt,(T0 *)ms505);
}
/*FI*/XrT65pretty_print(a1);
}
void rT204pretty_print_names(T204 *C){
int _i=0;
_i=1;
rT204pretty_print_one_name(rT126item((T126*)(C)->_names,_i));
_i=(_i)+(1);
while (!((_i)>(rT126count((T126*)(C)->_names)))) {
rT260put_string((T260*)oRBC27fmt,(T0 *)ms506);
rT204pretty_print_one_name(rT126item((T126*)(C)->_names,_i));
_i=(_i)+(1);
}
}
void rT204pretty_print_profile(T204 *C){
rT204pretty_print_names(C);
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT204pretty_print_arguments(C);
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(3);
/*)*//*IF*/if (((int)(C)->_result_type)) {
rT260put_string((T260*)oRBC27fmt,(T0 *)ms507);
XrT56pretty_print((C)->_result_type);
}
/*FI*/}
void rT204pretty_print(T204 *C){
T0* _fn=NULL;
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(1);
/*)*/rT260indent((T260*)oRBC27fmt);
rT204pretty_print_profile(C);
rT260keyword((T260*)oRBC27fmt,(T0 *)ms511);
/*IF*/if (((int)(C)->_obsolete_mark)) {
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT260indent((T260*)oRBC27fmt);
rT260keyword((T260*)oRBC27fmt,(T0 *)ms512);
rT74pretty_print((T74*)(C)->_obsolete_mark);
}
/*FI*//*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT260indent((T260*)oRBC27fmt);
/*IF*/if (((int)(C)->_header_comment)) {
rT57pretty_print((T57*)(C)->_header_comment);
}
/*FI*//*IF*/if (((int)(C)->_require_assertion)) {
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT135pretty_print((T135*)(C)->_require_assertion);
}
/*FI*//*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT260indent((T260*)oRBC27fmt);
/*(IRF3*/rT260put_string((T260*)oRBC27fmt,(T0 *)ms515);
/*)*//*IF*/if (((int)(C)->_ensure_assertion)) {
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT155pretty_print((T155*)(C)->_ensure_assertion);
}
/*FI*//*IF*/if (((int)(C)->_rescue_compound)) {
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT260indent((T260*)oRBC27fmt);
rT260keyword((T260*)oRBC27fmt,(T0 *)ms518);
rT138pretty_print((T138*)(C)->_rescue_compound);
}
/*FI*//*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT260indent((T260*)oRBC27fmt);
rT260keyword((T260*)oRBC27fmt,(T0 *)ms519);
/*IF*/if ((((int)(C)->_end_comment))&&(!(rT57dummy((T57*)(C)->_end_comment)))) {
rT57pretty_print((T57*)(C)->_end_comment);
}
 else if (((T260*)oRBC27fmt)->_print_end_routine) {
rT260put_string((T260*)oRBC27fmt,(T0 *)ms521);
_fn=rT204first_name(C);
/*IF*/if (XrT65is_prefix_name(_fn)) {
rT260keyword((T260*)oRBC27fmt,(T0 *)ms522);
rT260put_character((T260*)oRBC27fmt,'\42');
rT260put_string((T260*)oRBC27fmt,XrT65to_string(_fn));
rT260put_character((T260*)oRBC27fmt,'\42');
}
 else if (XrT65is_infix_name(_fn)) {
rT260keyword((T260*)oRBC27fmt,(T0 *)ms523);
rT260put_character((T260*)oRBC27fmt,'\42');
rT260put_string((T260*)oRBC27fmt,XrT65to_string(_fn));
rT260put_character((T260*)oRBC27fmt,'\42');
}
else {
rT260put_string((T260*)oRBC27fmt,XrT65to_string(_fn));
}
/*FI*/}
/*FI*/rT260put_character((T260*)oRBC27fmt,'\12');
}
void rT204add_into(T204 *C,T0* a1){
T0* _fn=NULL;
int _i=0;
C->_base_class=rT44base_class((T44*)XrT65start_position(rT126item((T126*)(C)->_names,1)));
_i=1;
while (!((_i)>(rT126count((T126*)(C)->_names)))) {
_fn=rT126item((T126*)(C)->_names,_i);
/*IF*/if (rT59has((T59*)a1,XrT65to_key(_fn))) {
_fn=XrT60first_name(rT59at((T59*)a1,XrT65to_key(_fn)));
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(XrT65start_position(_fn));
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(XrT65start_position(rT126item((T126*)(C)->_names,_i)));
rT43error((T43*)oRBC27eh,(T0 *)ms412);
(/*UT*/(void)(T43*)oRBC27eh);
rT43append(XrT65to_string(_fn));
rT43error((T43*)oRBC27eh,(T0 *)ms34);
}
else {
rT59put((T59*)a1,(T0 *)C,XrT65to_key(_fn));
}
/*FI*/_i=(_i)+(1);
}
}
void rT204set_header_comment(T204 *C,T0* a1){
/*IF*/if ((((int)a1))&&((rT57count((T57*)a1))>(1))) {
C->_end_comment=a1;
}
/*FI*/}
void rT204set_rescue_compound(T204 *C,T0* a1){
/*IF*/if ((((int)a1))&&(/*(IRF4*/1/*)*/)) {
rT204error(rT204start_position(C),(T0 *)ms395);
}
/*FI*/C->_rescue_compound=a1;
}
void rT204make_e_feature(T204 *C,T0* a1,T0* a2){
C->_names=a1;
C->_result_type=a2;
}
void rT204make_routine(T204 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
rT204make_e_feature(C,a1,NULL);
C->_header_comment=a4;
C->_arguments=a2;
C->_obsolete_mark=a3;
C->_require_assertion=a5;
}
void rT204make(T204 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6){
rT204make_routine(C,a1,a2,a4,a5,a6);
C->_result_type=a3;
}
T0* rT203first_name(T203 *C){
T0* R=NULL;
R=rT126item((T126*)(C)->_names,1);
return R;
}
void rT203error(/*C*/T0* a1,T0* a2){
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(a1);
rT43error((T43*)oRBC27eh,a2);
}
T0* rT203start_position(T203 *C){
T0* R=NULL;
R=XrT65start_position(rT203first_name(C));
return R;
}
void rT203pretty_print_arguments(T203 *C){
/*IF*/if (((int)(C)->_arguments)) {
rT90pretty_print((T90*)(C)->_arguments);
}
/*FI*/}
void rT203pretty_print_one_name(/*C*/T0* a1){
/*IF*/if (XrT65is_frozen(a1)) {
rT260keyword((T260*)oRBC27fmt,(T0 *)ms505);
}
/*FI*/XrT65pretty_print(a1);
}
void rT203pretty_print_names(T203 *C){
int _i=0;
_i=1;
rT203pretty_print_one_name(rT126item((T126*)(C)->_names,_i));
_i=(_i)+(1);
while (!((_i)>(rT126count((T126*)(C)->_names)))) {
rT260put_string((T260*)oRBC27fmt,(T0 *)ms506);
rT203pretty_print_one_name(rT126item((T126*)(C)->_names,_i));
_i=(_i)+(1);
}
}
void rT203pretty_print_profile(T203 *C){
rT203pretty_print_names(C);
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT203pretty_print_arguments(C);
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(3);
/*)*//*IF*/if (((int)(C)->_result_type)) {
rT260put_string((T260*)oRBC27fmt,(T0 *)ms507);
XrT56pretty_print((C)->_result_type);
}
/*FI*/}
void rT203pretty_print(T203 *C){
T0* _fn=NULL;
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(1);
/*)*/rT260indent((T260*)oRBC27fmt);
rT203pretty_print_profile(C);
rT260keyword((T260*)oRBC27fmt,(T0 *)ms511);
/*IF*/if (((int)(C)->_obsolete_mark)) {
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT260indent((T260*)oRBC27fmt);
rT260keyword((T260*)oRBC27fmt,(T0 *)ms512);
rT74pretty_print((T74*)(C)->_obsolete_mark);
}
/*FI*//*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT260indent((T260*)oRBC27fmt);
/*IF*/if (((int)(C)->_header_comment)) {
rT57pretty_print((T57*)(C)->_header_comment);
}
/*FI*//*IF*/if (((int)(C)->_require_assertion)) {
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT135pretty_print((T135*)(C)->_require_assertion);
}
/*FI*//*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT260indent((T260*)oRBC27fmt);
/*(IRF3*/rT260put_string((T260*)oRBC27fmt,(T0 *)ms515);
/*)*//*IF*/if (((int)(C)->_ensure_assertion)) {
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT155pretty_print((T155*)(C)->_ensure_assertion);
}
/*FI*//*IF*/if (((int)(C)->_rescue_compound)) {
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT260indent((T260*)oRBC27fmt);
rT260keyword((T260*)oRBC27fmt,(T0 *)ms518);
rT138pretty_print((T138*)(C)->_rescue_compound);
}
/*FI*//*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT260indent((T260*)oRBC27fmt);
rT260keyword((T260*)oRBC27fmt,(T0 *)ms519);
/*IF*/if ((((int)(C)->_end_comment))&&(!(rT57dummy((T57*)(C)->_end_comment)))) {
rT57pretty_print((T57*)(C)->_end_comment);
}
 else if (((T260*)oRBC27fmt)->_print_end_routine) {
rT260put_string((T260*)oRBC27fmt,(T0 *)ms521);
_fn=rT203first_name(C);
/*IF*/if (XrT65is_prefix_name(_fn)) {
rT260keyword((T260*)oRBC27fmt,(T0 *)ms522);
rT260put_character((T260*)oRBC27fmt,'\42');
rT260put_string((T260*)oRBC27fmt,XrT65to_string(_fn));
rT260put_character((T260*)oRBC27fmt,'\42');
}
 else if (XrT65is_infix_name(_fn)) {
rT260keyword((T260*)oRBC27fmt,(T0 *)ms523);
rT260put_character((T260*)oRBC27fmt,'\42');
rT260put_string((T260*)oRBC27fmt,XrT65to_string(_fn));
rT260put_character((T260*)oRBC27fmt,'\42');
}
else {
rT260put_string((T260*)oRBC27fmt,XrT65to_string(_fn));
}
/*FI*/}
/*FI*/rT260put_character((T260*)oRBC27fmt,'\12');
}
void rT203add_into(T203 *C,T0* a1){
T0* _fn=NULL;
int _i=0;
C->_base_class=rT44base_class((T44*)XrT65start_position(rT126item((T126*)(C)->_names,1)));
_i=1;
while (!((_i)>(rT126count((T126*)(C)->_names)))) {
_fn=rT126item((T126*)(C)->_names,_i);
/*IF*/if (rT59has((T59*)a1,XrT65to_key(_fn))) {
_fn=XrT60first_name(rT59at((T59*)a1,XrT65to_key(_fn)));
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(XrT65start_position(_fn));
(/*UT*/(void)(T43*)oRBC27eh);
rT43add_position(XrT65start_position(rT126item((T126*)(C)->_names,_i)));
rT43error((T43*)oRBC27eh,(T0 *)ms412);
(/*UT*/(void)(T43*)oRBC27eh);
rT43append(XrT65to_string(_fn));
rT43error((T43*)oRBC27eh,(T0 *)ms34);
}
else {
rT59put((T59*)a1,(T0 *)C,XrT65to_key(_fn));
}
/*FI*/_i=(_i)+(1);
}
}
void rT203set_header_comment(T203 *C,T0* a1){
/*IF*/if ((((int)a1))&&((rT57count((T57*)a1))>(1))) {
C->_end_comment=a1;
}
/*FI*/}
void rT203set_rescue_compound(T203 *C,T0* a1){
/*IF*/if ((((int)a1))&&(/*(IRF4*/1/*)*/)) {
rT203error(rT203start_position(C),(T0 *)ms395);
}
/*FI*/C->_rescue_compound=a1;
}
void rT203make_e_feature(T203 *C,T0* a1,T0* a2){
C->_names=a1;
C->_result_type=a2;
}
void rT203make_routine(T203 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
rT203make_e_feature(C,a1,NULL);
C->_header_comment=a4;
C->_arguments=a2;
C->_obsolete_mark=a3;
C->_require_assertion=a5;
}
void rT203make(T203 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
rT203make_routine(C,a1,a2,a3,a4,a5);
}
void rT260put_integer(T260 *C,int a1){
/*(IRF3*/(((T7*)(T0 *)ms464)->_count)=(0);
/*)*/rT2append_in(a1,(T0 *)ms464);
rT260put_string(C,(T0 *)ms464);
}
void rT260put_string(T260 *C,T0* a1){
int _i=0;
_i=1;
while (!((_i)>(((T7*)a1)->_count))) {
rT260put_character(C,rT7item((T7*)a1,_i));
_i=(_i)+(1);
}
}
void rT260indent(T260 *C){
int _goal=0;
_goal=(1)+(((C)->_indent_level)*(3));
/*IF*/if (((C)->_column)>(_goal)) {
rT260put_character(C,'\12');
}
/*FI*/while (!((_goal)==((C)->_column))) {
rT260put_character(C,'\40');
}
{int iv1=(C)->_last_character;
if (10 == iv1) goto l409;
if (32 == iv1) goto l409;
goto l410;
 l409: ;
goto l408;
 l410: ;
rT260put_character(C,'\12');
rT260indent(C);
 l408: ;
}
}
void rT260keyword(T260 *C,T0* a1){
{int iv1=(C)->_last_character;
if (10 == iv1) goto l412;
if (32 == iv1) goto l412;
goto l413;
 l412: ;
goto l411;
 l413: ;
rT260put_character(C,'\40');
 l411: ;
}
rT260put_string(C,a1);
/*IF*/if (((C)->_last_character)!=('\40')) {
rT260put_character(C,'\40');
}
/*FI*/}
void rT260connect_to(T260 *C,T0* a1){
C->_sfw=a1;
C->_line=1;
C->_column=1;
C->_blank_lines=0;
C->_last_character='\0';
}
void rT260format_parano(T260 *C){
C->_print_current=1;
C->_print_end_check=1;
C->_print_end_loop=1;
C->_print_end_if=1;
C->_print_end_inspect=1;
C->_print_end_routine=1;
C->_print_end_debug=1;
}
void rT260format_end(T260 *C){
C->_print_current=0;
C->_print_end_check=1;
C->_print_end_loop=1;
C->_print_end_if=1;
C->_print_end_inspect=1;
C->_print_end_routine=1;
C->_print_end_debug=1;
}
void rT260format_zen(T260 *C){
C->_zen_mode=1;
C->_print_current=0;
C->_print_end_check=0;
C->_print_end_loop=0;
C->_print_end_if=0;
C->_print_end_inspect=0;
C->_print_end_routine=0;
C->_print_end_debug=0;
}
void rT260format_default(T260 *C){
C->_print_current=0;
C->_print_end_check=0;
C->_print_end_loop=0;
C->_print_end_if=0;
C->_print_end_inspect=0;
C->_print_end_routine=1;
C->_print_end_debug=0;
}
void rT260skip(T260 *C,int a1){
while (!(((C)->_blank_lines)>=(a1))) {
rT260put_character(C,'\12');
}
rT260indent(C);
}
void rT260level_decr(T260 *C){
C->_indent_level=((C)->_indent_level)-(1);
}
void rT260level_incr(T260 *C){
C->_indent_level=((C)->_indent_level)+(1);
}
void rT260put_character(T260 *C,char a1){
XrT38put_character((C)->_sfw,a1);
C->_last_character=a1;
{int iv1=a1;
if (10 == iv1) goto l415;
goto l416;
 l415: ;
C->_line=((C)->_line)+(1);
C->_column=1;
C->_blank_lines=((C)->_blank_lines)+(1);
goto l414;
 l416: ;
if (9 == iv1) goto l417;
if (32 == iv1) goto l417;
goto l418;
 l417: ;
C->_column=((C)->_column)+(1);
goto l414;
 l418: ;
C->_column=((C)->_column)+(1);
C->_blank_lines=-(1);
 l414: ;
}
}
void rT260put_end(T260 *C,T0* a1){
rT260put_string(C,(T0 *)ms530);
rT260put_string(C,a1);
rT260put_character(C,'\12');
}
void rT180bracketed_print(T180 *C){
rT260put_character((T260*)oRBC27fmt,'\50');
rT180pretty_print(C);
rT260put_character((T260*)oRBC27fmt,'\51');
}
T0* rT180add_comment(T180 *C,T0* a1){
T0* R=NULL;
/*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
R=(T0 *)C;
}
else {
{T219 *n=((T219*)se_new(219));
rT219make(n,(T0 *)C,a1);
R=(T0 *)n;}}
/*FI*/return R;
}
void rT180print_as_target(T180 *C){
rT260put_string((T260*)oRBC27fmt,(C)->_to_string);
rT260put_character((T260*)oRBC27fmt,'\56');
}
void rT180pretty_print(T180 *C){
rT260put_string((T260*)oRBC27fmt,(C)->_to_string);
}
T0* rT180to_key(T180 *C){
T0* R=NULL;
R=(C)->_to_string;
return R;
}
void rT180make(T180 *C,T0* a1,T0* a2,T0* a3,int a4){
C->_start_position=a1;
C->_to_string=a2;
C->_result_type=a3;
C->_rank=a4;
}
T0* rT74twin(T74 *C){
T0* R=NULL;
/*IF*//*AF*//*AE*/
R=(T0 *)se_new(C->id);
AF_1
rT74copy((T74*)R,(T0 *)C);
AF_0
/*FI*/return R;
}
void rT74bracketed_print(T74 *C){
rT260put_character((T260*)oRBC27fmt,'\50');
rT74pretty_print(C);
rT260put_character((T260*)oRBC27fmt,'\51');
}
void rT74break_line(T74 *C){
/*IF*/if (!((C)->_break)) {
C->_break=ma(53,2,1,(((T7*)(C)->_to_string)->_count)+(1));
}
else {
rT53add_last((T53*)(C)->_break,(((T7*)(C)->_to_string)->_count)+(1));
}
/*FI*/}
void rT74add_ascii(T74 *C,char a1){
rT7extend((T7*)(C)->_to_string,a1);
/*IF*/if (!((C)->_ascii)) {
C->_ascii=ma(53,2,1,((T7*)(C)->_to_string)->_count);
}
else {
rT53add_last((T53*)(C)->_ascii,((T7*)(C)->_to_string)->_count);
}
/*FI*/}
void rT74add(T74 *C,char a1){
rT7extend((T7*)(C)->_to_string,a1);
}
T0* rT74add_comment(T74 *C,T0* a1){
T0* R=NULL;
/*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
R=(T0 *)C;
}
else {
{T219 *n=((T219*)se_new(219));
rT219make(n,(T0 *)C,a1);
R=(T0 *)n;}}
/*FI*/return R;
}
void rT74print_as_target(T74 *C){
rT74bracketed_print(C);
rT260put_character((T260*)oRBC27fmt,'\56');
}
void rT74print_character(T74 *C,int a1){
int _val=0;
/*IF*/if ((((int)(C)->_percent))&&(rT53fast_has((T53*)(C)->_percent,a1))) {
/*(IRF3*/(((T7*)(T0 *)ms462)->_count)=(0);
/*)*/rT74character_coding(rT7item((T7*)(C)->_to_string,a1),(T0 *)ms462);
rT260put_string((T260*)oRBC27fmt,(T0 *)ms462);
}
 else if ((((int)(C)->_ascii))&&(rT53fast_has((T53*)(C)->_ascii,a1))) {
_val=((unsigned char)rT7item((T7*)(C)->_to_string,a1));
rT260put_string((T260*)oRBC27fmt,(T0 *)ms463);
rT260put_integer((T260*)oRBC27fmt,_val);
rT260put_string((T260*)oRBC27fmt,(T0 *)ms89);
}
else {
rT260put_character((T260*)oRBC27fmt,rT7item((T7*)(C)->_to_string,a1));
}
/*FI*/}
void rT74pretty_print(T74 *C){
int _column=0;
int _i=0;
_column=((T260*)oRBC27fmt)->_column;
rT260put_character((T260*)oRBC27fmt,'\42');
_i=1;
while (!((_i)>(((T7*)(C)->_to_string)->_count))) {
/*IF*/if (rT74is_on_next_line(C,_i)) {
rT260put_string((T260*)oRBC27fmt,(T0 *)ms461);
while (!((_column)==(((T260*)oRBC27fmt)->_column))) {
rT260put_character((T260*)oRBC27fmt,'\40');
}
rT260put_character((T260*)oRBC27fmt,'\45');
}
/*FI*/rT74print_character(C,_i);
_i=(_i)+(1);
}
rT260put_character((T260*)oRBC27fmt,'\42');
}
int rT74is_on_next_line(T74 *C,int a1){
int R=0;
/*IF*/if (((int)(C)->_break)) {
R=rT53fast_has((T53*)(C)->_break,a1);
}
/*FI*/return R;
}
void rT74add_percent(T74 *C,char a1){
rT7extend((T7*)(C)->_to_string,a1);
/*IF*/if (!((C)->_percent)) {
C->_percent=ma(53,2,1,((T7*)(C)->_to_string)->_count);
}
else {
rT53add_last((T53*)(C)->_percent,((T7*)(C)->_to_string)->_count);
}
/*FI*/}
void rT74copy(T74 *C,T0* a1){
/*IF*//*AF*//*AE*/
memcpy(C,a1,s[C->id]);
/*FI*/}
void rT74make(T74 *C,T0* a1){
C->_start_position=a1;
{T7 *n=((T7*)se_new(7));
rT7make(n,0);
C->_to_string=(T0 *)n;}
}
void rT74character_coding(/*C*/char a1,T0* a2){
char _special=0;
{int iv1=a1;
if (64 == iv1) goto l420;
goto l421;
 l420: ;
_special='A';
goto l419;
 l421: ;
if (8 == iv1) goto l422;
goto l423;
 l422: ;
_special='B';
goto l419;
 l423: ;
if (94 == iv1) goto l424;
goto l425;
 l424: ;
_special='C';
goto l419;
 l425: ;
if (36 == iv1) goto l426;
goto l427;
 l426: ;
_special='D';
goto l419;
 l427: ;
if (12 == iv1) goto l428;
goto l429;
 l428: ;
_special='F';
goto l419;
 l429: ;
if (92 == iv1) goto l430;
goto l431;
 l430: ;
_special='H';
goto l419;
 l431: ;
if (126 == iv1) goto l432;
goto l433;
 l432: ;
_special='L';
goto l419;
 l433: ;
if (10 == iv1) goto l434;
goto l435;
 l434: ;
_special='N';
goto l419;
 l435: ;
if (96 == iv1) goto l436;
goto l437;
 l436: ;
_special='Q';
goto l419;
 l437: ;
if (13 == iv1) goto l438;
goto l439;
 l438: ;
_special='R';
goto l419;
 l439: ;
if (35 == iv1) goto l440;
goto l441;
 l440: ;
_special='S';
goto l419;
 l441: ;
if (9 == iv1) goto l442;
goto l443;
 l442: ;
_special='T';
goto l419;
 l443: ;
if (0 == iv1) goto l444;
goto l445;
 l444: ;
_special='U';
goto l419;
 l445: ;
if (124 == iv1) goto l446;
goto l447;
 l446: ;
_special='V';
goto l419;
 l447: ;
if (37 == iv1) goto l448;
goto l449;
 l448: ;
_special='\45';
goto l419;
 l449: ;
if (39 == iv1) goto l450;
goto l451;
 l450: ;
_special='\47';
goto l419;
 l451: ;
if (34 == iv1) goto l452;
goto l453;
 l452: ;
_special='\42';
goto l419;
 l453: ;
if (91 == iv1) goto l454;
goto l455;
 l454: ;
_special='\50';
goto l419;
 l455: ;
if (93 == iv1) goto l456;
goto l457;
 l456: ;
_special='\51';
goto l419;
 l457: ;
if (123 == iv1) goto l458;
goto l459;
 l458: ;
_special='\74';
goto l419;
 l459: ;
if (125 == iv1) goto l460;
goto l461;
 l460: ;
_special='\76';
goto l419;
 l461: ;
 l419: ;
}
rT7extend((T7*)a2,'\45');
/*IF*/if ((_special)==('\0')) {
rT7extend((T7*)a2,'\57');
rT2append_in(((unsigned char)a1),a2);
rT7extend((T7*)a2,'\57');
}
else {
rT7extend((T7*)a2,_special);
}
/*FI*/}
void rT121pretty_print(T121 *C){
/*IF*/if (rT121is_omitted(C)) {
/*IF*/if (((T260*)oRBC27fmt)->_zen_mode) {
}
else {
rT260put_string((T260*)oRBC27fmt,(T0 *)ms470);
}
/*FI*/}
else {
/*IF*/if (!((C)->_list)) {
/*IF*/if (((T260*)oRBC27fmt)->_zen_mode) {
rT260put_string((T260*)oRBC27fmt,(T0 *)ms471);
}
else {
rT260put_string((T260*)oRBC27fmt,(T0 *)ms472);
}
/*FI*/}
else {
rT260put_character((T260*)oRBC27fmt,'\173');
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT124pretty_print((T124*)(C)->_list);
rT260put_character((T260*)oRBC27fmt,'\175');
}
/*FI*/}
/*FI*/}
int rT121is_omitted(T121 *C){
int R=0;
R=!((C)->_start_position);
return R;
}
void rT121make(T121 *C,T0* a1,T0* a2){
C->_start_position=a1;
/*IF*/if (((int)a2)) {
{T124 *n=((T124*)se_new(124));
rT124make(n,a2);
C->_list=(T0 *)n;}
}
/*FI*/}
T0* rT137name(T137 *C,int a1){
T0* R=NULL;
R=((T92*)rT94item((T94*)(C)->_flat_list,a1))->_name;
return R;
}
T0* rT137type(T137 *C,int a1){
T0* R=NULL;
/*IF*/if (((int)(C)->_run_types)) {
R=rT104item((T104*)(C)->_run_types,a1);
}
else {
R=((T92*)rT94item((T94*)(C)->_flat_list,a1))->_type;
}
/*FI*/return R;
}
int rT137count(T137 *C){
int R=0;
R=((T94*)(C)->_flat_list)->_upper;
return R;
}
int rT137rank_of(T137 *C,T0* a1){
int R=0;
T0* _ns=NULL;
_ns=XrT47to_string(a1);
R=rT137count(C);
while (!(((R)==(0))||(rT7is_equal((T7*)_ns,XrT47to_string(rT137name(C,R)))))) {
R=(R)-(1);
}
return R;
}
void rT137pretty_print(T137 *C){
int _i=0;
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT260indent((T260*)oRBC27fmt);
rT260keyword((T260*)oRBC27fmt,(T0 *)ms526);
/*IF*/if (((((T260*)oRBC27fmt)->_zen_mode)&&((XrT141count((C)->_list))==(1)))) {
XrT93pretty_print(XrT141first((C)->_list));
rT260put_character((T260*)oRBC27fmt,'\73');
}
else {
_i=1;
while (!((_i)>(XrT141upper((C)->_list)))) {
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(3);
/*)*/rT260indent((T260*)oRBC27fmt);
XrT93pretty_print(XrT141item((C)->_list,_i));
rT260put_character((T260*)oRBC27fmt,'\73');
_i=(_i)+(1);
}
}
/*FI*//*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(2);
/*)*/rT260indent((T260*)oRBC27fmt);
}
void rT137make(T137 *C,T0* a1,T0* a2){
int _actual_count=0;
int _ifl=0;
int _il=0;
C->_start_position=a1;
C->_list=a2;
_il=1;
while (!((_il)>(XrT141upper((C)->_list)))) {
_actual_count=(_actual_count)+(XrT93count(XrT141item((C)->_list,_il)));
_il=(_il)+(1);
}
{T94 *n=((T94*)se_new(94));
rT94make(n,1,_actual_count);
C->_flat_list=(T0 *)n;}
_ifl=1;
_il=1;
while (!((_il)>(XrT141upper((C)->_list)))) {
_ifl=XrT93put_into(XrT141item((C)->_list,_il),(C)->_flat_list,_ifl);
_il=(_il)+(1);
}
}
void rT158bracketed_print(T158 *C){
rT260put_character((T260*)oRBC27fmt,'\50');
rT158pretty_print(C);
rT260put_character((T260*)oRBC27fmt,'\51');
}
T0* rT158add_comment(T158 *C,T0* a1){
T0* R=NULL;
/*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
R=(T0 *)C;
}
else {
{T219 *n=((T219*)se_new(219));
rT219make(n,(T0 *)C,a1);
R=(T0 *)n;}}
/*FI*/return R;
}
void rT158print_as_target(T158 *C){
rT158bracketed_print(C);
rT260put_character((T260*)oRBC27fmt,'\56');
}
void rT158pretty_print(T158 *C){
int _i=0;
rT260put_string((T260*)oRBC27fmt,(T0 *)ms493);
rT260level_incr((T260*)oRBC27fmt);
/*IF*/if (((int)(C)->_list)) {
_i=1;
while (!((_i)>(XrT79upper((C)->_list)))) {
XrT66pretty_print(XrT79item((C)->_list,_i));
_i=(_i)+(1);
/*IF*/if ((_i)<=(XrT79upper((C)->_list))) {
rT260put_character((T260*)oRBC27fmt,'\54');
}
/*FI*/}
}
/*FI*/rT260put_string((T260*)oRBC27fmt,(T0 *)ms494);
rT260level_decr((T260*)oRBC27fmt);
}
void rT158make(T158 *C,T0* a1,T0* a2){
C->_start_position=a1;
C->_list=a2;
}
void rT59resize(T59 *C,int a1){
int _p=0;
int _n=0;
int _i=0;
T0* _new_buc=NULL;
int _hash=0;
{T53 *n=((T53*)se_new(53));
rT53make(n,0,(a1)-(1));
_new_buc=(T0 *)n;}
_i=0;
while (!((_i)>=((C)->_modulus))) {
_n=rT53item((T53*)(C)->_buckets,_i);
while (!((_n)==(0))) {
_p=rT53item((T53*)(C)->_chain,_n);
_hash=(rT7hash_code((T7*)rT34item((T34*)(C)->_keys,_n)))%(a1);
rT53put((T53*)(C)->_chain,rT53item((T53*)_new_buc,_hash),_n);
rT53put((T53*)_new_buc,_n,_hash);
_n=_p;
}
_i=(_i)+(1);
}
C->_buckets=_new_buc;
C->_modulus=a1;
C->_item_mem=0;
}
T0* rT59at(T59 *C,T0* a1){
T0* R=NULL;
int _foo=0;
_foo=rT59has(C,a1);
R=rT61item((T61*)(C)->_store,(C)->_has_mem);
return R;
}
void rT59put(T59 *C,T0* a1,T0* a2){
int _hash=0;
_hash=(rT7hash_code((T7*)a2))%((C)->_modulus);
/*IF*/if ((((C)->_has_mem)==(0))||(!(rT7is_equal((T7*)a2,rT34item((T34*)(C)->_keys,(C)->_has_mem))))) {
C->_has_mem=rT53item((T53*)(C)->_buckets,_hash);
while (!((((C)->_has_mem)==(0))||(rT7is_equal((T7*)a2,rT34item((T34*)(C)->_keys,(C)->_has_mem))))) {
C->_has_mem=rT53item((T53*)(C)->_chain,(C)->_has_mem);
}
/*IF*/if (((C)->_has_mem)==(0)) {
/*IF*/if (((C)->_count)>=(rT61count((T61*)(C)->_store))) {
rT59expand(C);
}
/*FI*/rT34put((T34*)(C)->_keys,a2,(C)->_free);
rT61put((T61*)(C)->_store,a1,(C)->_free);
C->_has_mem=(C)->_free;
C->_free=rT53item((T53*)(C)->_chain,(C)->_free);
rT53put((T53*)(C)->_chain,rT53item((T53*)(C)->_buckets,_hash),(C)->_has_mem);
rT53put((T53*)(C)->_buckets,(C)->_has_mem,_hash);
C->_count=((C)->_count)+(1);
/*IF*/if (((C)->_count)>(((C)->_modulus)*(2))) {
rT59resize(C,(2)*((C)->_modulus));
}
/*FI*/}
/*FI*/}
else {
rT61put((T61*)(C)->_store,a1,(C)->_has_mem);
}
/*FI*/C->_item_mem=0;
}
void rT59expand(T59 *C){
int _old_size=0;
int _i=0;
C->_item_mem=0;
_old_size=rT61count((T61*)(C)->_store);
rT53resize((T53*)(C)->_chain,1,(2)*(_old_size));
rT34resize((T34*)(C)->_keys,1,(2)*(_old_size));
rT61resize((T61*)(C)->_store,1,(2)*(_old_size));
_i=(_old_size)+(1);
while (!((_i)==(rT53count((T53*)(C)->_chain)))) {
rT53put((T53*)(C)->_chain,(_i)+(1),_i);
_i=(_i)+(1);
}
rT53put((T53*)(C)->_chain,(C)->_free,_i);
C->_free=(_old_size)+(1);
}
int rT59has(T59 *C,T0* a1){
int R=0;
/*IF*/if ((((C)->_has_mem)==(0))||(!(rT7is_equal((T7*)a1,rT34item((T34*)(C)->_keys,(C)->_has_mem))))) {
C->_has_mem=rT53item((T53*)(C)->_buckets,(rT7hash_code((T7*)a1))%((C)->_modulus));
while (!((((C)->_has_mem)==(0))||(rT7is_equal((T7*)a1,rT34item((T34*)(C)->_keys,(C)->_has_mem))))) {
C->_has_mem=rT53item((T53*)(C)->_chain,(C)->_has_mem);
}
}
/*FI*/R=((C)->_has_mem)!=(0);
return R;
}
void rT59make(T59 *C){
int _i=0;
C->_modulus=32;
C->_count=0;
C->_free=1;
C->_has_mem=0;
C->_item_mem=0;
{T53 *n=((T53*)se_new(53));
rT53make(n,0,((C)->_modulus)-(1));
C->_buckets=(T0 *)n;}
{T53 *n=((T53*)se_new(53));
rT53make(n,1,16);
C->_chain=(T0 *)n;}
{T61 *n=((T61*)se_new(61));
rT61make(n,1,16);
C->_store=(T0 *)n;}
{T34 *n=((T34*)se_new(34));
rT34make(n,1,16);
C->_keys=(T0 *)n;}
_i=1;
while (!((_i)==(rT53count((T53*)(C)->_chain)))) {
rT53put((T53*)(C)->_chain,(_i)+(1),_i);
_i=(_i)+(1);
}
rT53put((T53*)(C)->_chain,0,_i);
_i=0;
while (!((_i)>=((C)->_modulus))) {
rT53put((T53*)(C)->_buckets,0,_i);
_i=(_i)+(1);
}
}
void rT55resize(T55 *C,int a1){
int _p=0;
int _n=0;
int _i=0;
T0* _new_buc=NULL;
int _hash=0;
{T53 *n=((T53*)se_new(53));
rT53make(n,0,(a1)-(1));
_new_buc=(T0 *)n;}
_i=0;
while (!((_i)>=((C)->_modulus))) {
_n=rT53item((T53*)(C)->_buckets,_i);
while (!((_n)==(0))) {
_p=rT53item((T53*)(C)->_chain,_n);
_hash=(rT7hash_code((T7*)rT34item((T34*)(C)->_keys,_n)))%(a1);
rT53put((T53*)(C)->_chain,rT53item((T53*)_new_buc,_hash),_n);
rT53put((T53*)_new_buc,_n,_hash);
_n=_p;
}
_i=(_i)+(1);
}
C->_buckets=_new_buc;
C->_modulus=a1;
C->_item_mem=0;
}
T0* rT55at(T55 *C,T0* a1){
T0* R=NULL;
int _foo=0;
_foo=rT55has(C,a1);
R=rT34item((T34*)(C)->_store,(C)->_has_mem);
return R;
}
void rT55put(T55 *C,T0* a1,T0* a2){
int _hash=0;
_hash=(rT7hash_code((T7*)a2))%((C)->_modulus);
/*IF*/if ((((C)->_has_mem)==(0))||(!(rT7is_equal((T7*)a2,rT34item((T34*)(C)->_keys,(C)->_has_mem))))) {
C->_has_mem=rT53item((T53*)(C)->_buckets,_hash);
while (!((((C)->_has_mem)==(0))||(rT7is_equal((T7*)a2,rT34item((T34*)(C)->_keys,(C)->_has_mem))))) {
C->_has_mem=rT53item((T53*)(C)->_chain,(C)->_has_mem);
}
/*IF*/if (((C)->_has_mem)==(0)) {
/*IF*/if (((C)->_count)>=(rT34count((T34*)(C)->_store))) {
rT55expand(C);
}
/*FI*/rT34put((T34*)(C)->_keys,a2,(C)->_free);
rT34put((T34*)(C)->_store,a1,(C)->_free);
C->_has_mem=(C)->_free;
C->_free=rT53item((T53*)(C)->_chain,(C)->_free);
rT53put((T53*)(C)->_chain,rT53item((T53*)(C)->_buckets,_hash),(C)->_has_mem);
rT53put((T53*)(C)->_buckets,(C)->_has_mem,_hash);
C->_count=((C)->_count)+(1);
/*IF*/if (((C)->_count)>(((C)->_modulus)*(2))) {
rT55resize(C,(2)*((C)->_modulus));
}
/*FI*/}
/*FI*/}
else {
rT34put((T34*)(C)->_store,a1,(C)->_has_mem);
}
/*FI*/C->_item_mem=0;
}
void rT55expand(T55 *C){
int _old_size=0;
int _i=0;
C->_item_mem=0;
_old_size=rT34count((T34*)(C)->_store);
rT53resize((T53*)(C)->_chain,1,(2)*(_old_size));
rT34resize((T34*)(C)->_keys,1,(2)*(_old_size));
rT34resize((T34*)(C)->_store,1,(2)*(_old_size));
_i=(_old_size)+(1);
while (!((_i)==(rT53count((T53*)(C)->_chain)))) {
rT53put((T53*)(C)->_chain,(_i)+(1),_i);
_i=(_i)+(1);
}
rT53put((T53*)(C)->_chain,(C)->_free,_i);
C->_free=(_old_size)+(1);
}
int rT55has(T55 *C,T0* a1){
int R=0;
/*IF*/if ((((C)->_has_mem)==(0))||(!(rT7is_equal((T7*)a1,rT34item((T34*)(C)->_keys,(C)->_has_mem))))) {
C->_has_mem=rT53item((T53*)(C)->_buckets,(rT7hash_code((T7*)a1))%((C)->_modulus));
while (!((((C)->_has_mem)==(0))||(rT7is_equal((T7*)a1,rT34item((T34*)(C)->_keys,(C)->_has_mem))))) {
C->_has_mem=rT53item((T53*)(C)->_chain,(C)->_has_mem);
}
}
/*FI*/R=((C)->_has_mem)!=(0);
return R;
}
void rT55make(T55 *C){
int _i=0;
C->_modulus=32;
C->_count=0;
C->_free=1;
C->_has_mem=0;
C->_item_mem=0;
{T53 *n=((T53*)se_new(53));
rT53make(n,0,((C)->_modulus)-(1));
C->_buckets=(T0 *)n;}
{T53 *n=((T53*)se_new(53));
rT53make(n,1,16);
C->_chain=(T0 *)n;}
{T34 *n=((T34*)se_new(34));
rT34make(n,1,16);
C->_store=(T0 *)n;}
{T34 *n=((T34*)se_new(34));
rT34make(n,1,16);
C->_keys=(T0 *)n;}
_i=1;
while (!((_i)==(rT53count((T53*)(C)->_chain)))) {
rT53put((T53*)(C)->_chain,(_i)+(1),_i);
_i=(_i)+(1);
}
rT53put((T53*)(C)->_chain,0,_i);
_i=0;
while (!((_i)>=((C)->_modulus))) {
rT53put((T53*)(C)->_buckets,0,_i);
_i=(_i)+(1);
}
}
void rT52shrink(T52 *C){
int _k=0;
int _j=0;
int _i=0;
T0* _chn=NULL;
T0* _kys=NULL;
T0* _str=NULL;
{T34 *n=((T34*)se_new(34));
rT34make(n,1,(rT54count((T54*)(C)->_store))/(2));
_kys=(T0 *)n;}
{T54 *n=((T54*)se_new(54));
rT54make(n,1,(rT54count((T54*)(C)->_store))/(2));
_str=(T0 *)n;}
{T53 *n=((T53*)se_new(53));
rT53make(n,1,(rT54count((T54*)(C)->_store))/(2));
_chn=(T0 *)n;}
_i=1;
_j=0;
while (!((_j)>=((C)->_modulus))) {
_k=rT53item((T53*)(C)->_buckets,_j);
/*IF*/if ((_k)!=(0)) {
rT53put((T53*)(C)->_buckets,_i,_j);
}
/*FI*/while (!((_k)==(0))) {
rT34put((T34*)_kys,rT34item((T34*)(C)->_keys,_k),_i);
rT54put((T54*)_str,rT54item((T54*)(C)->_store,_k),_i);
_k=rT53item((T53*)(C)->_chain,_k);
/*IF*/if ((_k)==(0)) {
rT53put((T53*)_chn,0,_i);
}
else {
rT53put((T53*)_chn,(_i)+(1),_i);
}
/*FI*/_i=(_i)+(1);
}
_j=(_j)+(1);
}
_i=((C)->_count)+(1);
while (!((_i)>=(rT53count((T53*)_chn)))) {
rT53put((T53*)_chn,(_i)+(1),_i);
_i=(_i)+(1);
}
rT53put((T53*)_chn,0,_i);
C->_free=((C)->_count)+(1);
C->_chain=_chn;
C->_keys=_kys;
C->_store=_str;
C->_item_mem=0;
}
void rT52remove(T52 *C,T0* a1){
int _p=0;
int _n=0;
int _hash=0;
_hash=(rT7hash_code((T7*)a1))%((C)->_modulus);
_n=rT53item((T53*)(C)->_buckets,_hash);
while (!(((_n)==(0))||(rT7is_equal((T7*)a1,rT34item((T34*)(C)->_keys,_n))))) {
_p=_n;
_n=rT53item((T53*)(C)->_chain,_n);
}
/*IF*/if ((_n)!=(0)) {
/*IF*/if ((_p)!=(0)) {
rT53put((T53*)(C)->_chain,rT53item((T53*)(C)->_chain,_n),_p);
}
else {
rT53put((T53*)(C)->_buckets,rT53item((T53*)(C)->_chain,_n),_hash);
}
/*FI*/rT53put((T53*)(C)->_chain,(C)->_free,_n);
C->_free=_n;
C->_count=((C)->_count)-(1);
/*IF*/if ((_n)==((C)->_has_mem)) {
C->_has_mem=0;
}
/*FI*//*IF*/if ((((C)->_count)<((rT54count((T54*)(C)->_store))/(4)))&&(((C)->_count)>(16))) {
rT52shrink(C);
}
/*FI*/}
/*FI*/C->_item_mem=0;
}
void rT52resize(T52 *C,int a1){
int _p=0;
int _n=0;
int _i=0;
T0* _new_buc=NULL;
int _hash=0;
{T53 *n=((T53*)se_new(53));
rT53make(n,0,(a1)-(1));
_new_buc=(T0 *)n;}
_i=0;
while (!((_i)>=((C)->_modulus))) {
_n=rT53item((T53*)(C)->_buckets,_i);
while (!((_n)==(0))) {
_p=rT53item((T53*)(C)->_chain,_n);
_hash=(rT7hash_code((T7*)rT34item((T34*)(C)->_keys,_n)))%(a1);
rT53put((T53*)(C)->_chain,rT53item((T53*)_new_buc,_hash),_n);
rT53put((T53*)_new_buc,_n,_hash);
_n=_p;
}
_i=(_i)+(1);
}
C->_buckets=_new_buc;
C->_modulus=a1;
C->_item_mem=0;
}
T0* rT52at(T52 *C,T0* a1){
T0* R=NULL;
int _foo=0;
_foo=rT52has(C,a1);
R=rT54item((T54*)(C)->_store,(C)->_has_mem);
return R;
}
void rT52put(T52 *C,T0* a1,T0* a2){
int _hash=0;
_hash=(rT7hash_code((T7*)a2))%((C)->_modulus);
/*IF*/if ((((C)->_has_mem)==(0))||(!(rT7is_equal((T7*)a2,rT34item((T34*)(C)->_keys,(C)->_has_mem))))) {
C->_has_mem=rT53item((T53*)(C)->_buckets,_hash);
while (!((((C)->_has_mem)==(0))||(rT7is_equal((T7*)a2,rT34item((T34*)(C)->_keys,(C)->_has_mem))))) {
C->_has_mem=rT53item((T53*)(C)->_chain,(C)->_has_mem);
}
/*IF*/if (((C)->_has_mem)==(0)) {
/*IF*/if (((C)->_count)>=(rT54count((T54*)(C)->_store))) {
rT52expand(C);
}
/*FI*/rT34put((T34*)(C)->_keys,a2,(C)->_free);
rT54put((T54*)(C)->_store,a1,(C)->_free);
C->_has_mem=(C)->_free;
C->_free=rT53item((T53*)(C)->_chain,(C)->_free);
rT53put((T53*)(C)->_chain,rT53item((T53*)(C)->_buckets,_hash),(C)->_has_mem);
rT53put((T53*)(C)->_buckets,(C)->_has_mem,_hash);
C->_count=((C)->_count)+(1);
/*IF*/if (((C)->_count)>(((C)->_modulus)*(2))) {
rT52resize(C,(2)*((C)->_modulus));
}
/*FI*/}
/*FI*/}
else {
rT54put((T54*)(C)->_store,a1,(C)->_has_mem);
}
/*FI*/C->_item_mem=0;
}
void rT52expand(T52 *C){
int _old_size=0;
int _i=0;
C->_item_mem=0;
_old_size=rT54count((T54*)(C)->_store);
rT53resize((T53*)(C)->_chain,1,(2)*(_old_size));
rT34resize((T34*)(C)->_keys,1,(2)*(_old_size));
rT54resize((T54*)(C)->_store,1,(2)*(_old_size));
_i=(_old_size)+(1);
while (!((_i)==(rT53count((T53*)(C)->_chain)))) {
rT53put((T53*)(C)->_chain,(_i)+(1),_i);
_i=(_i)+(1);
}
rT53put((T53*)(C)->_chain,(C)->_free,_i);
C->_free=(_old_size)+(1);
}
int rT52has(T52 *C,T0* a1){
int R=0;
/*IF*/if ((((C)->_has_mem)==(0))||(!(rT7is_equal((T7*)a1,rT34item((T34*)(C)->_keys,(C)->_has_mem))))) {
C->_has_mem=rT53item((T53*)(C)->_buckets,(rT7hash_code((T7*)a1))%((C)->_modulus));
while (!((((C)->_has_mem)==(0))||(rT7is_equal((T7*)a1,rT34item((T34*)(C)->_keys,(C)->_has_mem))))) {
C->_has_mem=rT53item((T53*)(C)->_chain,(C)->_has_mem);
}
}
/*FI*/R=((C)->_has_mem)!=(0);
return R;
}
void rT52make(T52 *C){
int _i=0;
C->_modulus=32;
C->_count=0;
C->_free=1;
C->_has_mem=0;
C->_item_mem=0;
{T53 *n=((T53*)se_new(53));
rT53make(n,0,((C)->_modulus)-(1));
C->_buckets=(T0 *)n;}
{T53 *n=((T53*)se_new(53));
rT53make(n,1,16);
C->_chain=(T0 *)n;}
{T54 *n=((T54*)se_new(54));
rT54make(n,1,16);
C->_store=(T0 *)n;}
{T34 *n=((T34*)se_new(34));
rT34make(n,1,16);
C->_keys=(T0 *)n;}
_i=1;
while (!((_i)==(rT53count((T53*)(C)->_chain)))) {
rT53put((T53*)(C)->_chain,(_i)+(1),_i);
_i=(_i)+(1);
}
rT53put((T53*)(C)->_chain,0,_i);
_i=0;
while (!((_i)>=((C)->_modulus))) {
rT53put((T53*)(C)->_buckets,0,_i);
_i=(_i)+(1);
}
}
T0* rT246add_comment(T246 *C,T0* a1){
T0* R=NULL;
/*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
R=(T0 *)C;
}
/*AF*/else {
{T215 *n=((T215*)se_new(215));
rT215make(n,(T0 *)C,a1);
R=(T0 *)n;}}
/*FI*/return R;
}
void rT246pretty_print(T246 *C){
rT260put_character((T260*)oRBC27fmt,'\41');
XrT56pretty_print((C)->_type);
rT260put_character((T260*)oRBC27fmt,'\41');
XrT176pretty_print((C)->_call);
}
void rT246make(T246 *C,T0* a1,T0* a2,T0* a3,T0* a4){
C->_start_position=a1;
C->_type=a2;
C->_writable=a3;
C->_call=a4;
}
T0* rT244add_comment(T244 *C,T0* a1){
T0* R=NULL;
/*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
R=(T0 *)C;
}
/*AF*/else {
{T215 *n=((T215*)se_new(215));
rT215make(n,(T0 *)C,a1);
R=(T0 *)n;}}
/*FI*/return R;
}
void rT244pretty_print(T244 *C){
rT260put_string((T260*)oRBC27fmt,(T0 *)ms555);
XrT176pretty_print((C)->_call);
}
void rT244make(T244 *C,T0* a1,T0* a2,T0* a3){
C->_start_position=a1;
C->_writable=a2;
C->_call=a3;
}
T0* rT242add_comment(T242 *C,T0* a1){
T0* R=NULL;
/*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
R=(T0 *)C;
}
/*AF*/else {
{T215 *n=((T215*)se_new(215));
rT215make(n,(T0 *)C,a1);
R=(T0 *)n;}}
/*FI*/return R;
}
void rT242pretty_print(T242 *C){
rT260put_character((T260*)oRBC27fmt,'\41');
XrT56pretty_print((C)->_type);
rT260put_character((T260*)oRBC27fmt,'\41');
XrT66pretty_print((C)->_writable);
/*IF*/if (((T260*)oRBC27fmt)->_semi_colon_flag) {
rT260put_character((T260*)oRBC27fmt,'\73');
}
/*FI*/}
void rT242make(T242 *C,T0* a1,T0* a2,T0* a3){
C->_start_position=a1;
C->_type=a2;
C->_writable=a3;
}
T0* rT239add_comment(T239 *C,T0* a1){
T0* R=NULL;
/*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
R=(T0 *)C;
}
/*AF*/else {
{T215 *n=((T215*)se_new(215));
rT215make(n,(T0 *)C,a1);
R=(T0 *)n;}}
/*FI*/return R;
}
void rT239pretty_print(T239 *C){
rT260put_string((T260*)oRBC27fmt,(T0 *)ms554);
XrT66pretty_print((C)->_writable);
/*IF*/if (((T260*)oRBC27fmt)->_semi_colon_flag) {
rT260put_character((T260*)oRBC27fmt,'\73');
}
/*FI*/}
void rT239make(T239 *C,T0* a1,T0* a2){
C->_start_position=a1;
C->_writable=a2;
}
T0* rT214add_comment(T214 *C,T0* a1){
T0* R=NULL;
/*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
R=(T0 *)C;
}
 else {/*AT*//*IF*/if ((rT57count((T57*)a1))==(1)) {
R=(T0 *)C;
}
else {
{T215 *n=((T215*)se_new(215));
rT215make(n,(T0 *)C,a1);
R=(T0 *)n;}}
/*FI*/}
/*FI*/return R;
}
void rT214pretty_print(T214 *C){
int _i=0;
rT260keyword((T260*)oRBC27fmt,(T0 *)ms532);
rT260level_incr((T260*)oRBC27fmt);
/*IF*/if (((int)(C)->_list)) {
rT260put_character((T260*)oRBC27fmt,'\50');
_i=((T149*)(C)->_list)->_lower;
while (!((_i)>(((T149*)(C)->_list)->_upper))) {
rT74pretty_print((T74*)rT149item((T149*)(C)->_list,_i));
_i=(_i)+(1);
/*IF*/if ((_i)<=(((T149*)(C)->_list)->_upper)) {
rT260put_character((T260*)oRBC27fmt,'\54');
}
/*FI*/}
rT260put_character((T260*)oRBC27fmt,'\51');
}
/*FI*/rT260level_decr((T260*)oRBC27fmt);
/*IF*/if (((int)(C)->_compound)) {
rT138pretty_print((T138*)(C)->_compound);
}
/*FI*/rT260indent((T260*)oRBC27fmt);
rT260keyword((T260*)oRBC27fmt,(T0 *)ms533);
/*IF*/if (((T260*)oRBC27fmt)->_print_end_debug) {
rT260put_end((T260*)oRBC27fmt,(T0 *)ms534);
}
/*FI*/}
void rT214make(T214 *C,T0* a1,T0* a2,T0* a3){
C->_start_position=a1;
C->_list=a2;
C->_compound=a3;
}
void rT130pretty_print(T130 *C){
int _i=0;
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(0);
/*)*//*IF*/if (!(((T260*)oRBC27fmt)->_zen_mode)) {
rT260skip((T260*)oRBC27fmt,1);
}
else {
rT260indent((T260*)oRBC27fmt);
}
/*FI*/rT260keyword((T260*)oRBC27fmt,(T0 *)ms480);
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(1);
/*)*//*IF*/if (((int)(C)->_clients)) {
rT121pretty_print((T121*)(C)->_clients);
}
/*FI*//*IF*/if (((int)(C)->_comment)) {
rT57pretty_print((T57*)(C)->_comment);
}
/*FI*//*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(1);
/*)*//*IF*/if (!(((T260*)oRBC27fmt)->_zen_mode)) {
rT260indent((T260*)oRBC27fmt);
}
/*FI*/rT126pretty_print((T126*)(C)->_procedure_list);
}
void rT130make(T130 *C,T0* a1,T0* a2,T0* a3){
C->_clients=a1;
C->_comment=a2;
{T126 *n=((T126*)se_new(126));
rT126make(n,a3);
C->_procedure_list=(T0 *)n;}
}
void rT131pretty_print(T131 *C){
int _i=0;
_i=1;
while (!((_i)>(((T132*)(C)->_list)->_upper))) {
rT130pretty_print((T130*)rT132item((T132*)(C)->_list,_i));
/*IF*/if (!(((T260*)oRBC27fmt)->_zen_mode)) {
/*(IRF3*/(((T260*)oRBC27fmt)->_indent_level)=(0);
/*)*/rT260skip((T260*)oRBC27fmt,1);
}
/*FI*/_i=(_i)+(1);
}
}
void rT131add_last(T131 *C,T0* a1){
rT132add_last((T132*)(C)->_list,a1);
}
void rT221pretty_print(T221 *C){
int _i=0;
_i=1;
while (!((_i)>(((T222*)(C)->_list)->_upper))) {
rT220pretty_print((T220*)rT222item((T222*)(C)->_list,_i));
_i=(_i)+(1);
/*IF*/if ((_i)<=(((T222*)(C)->_list)->_upper)) {
rT260indent((T260*)oRBC27fmt);
rT260keyword((T260*)oRBC27fmt,(T0 *)ms537);
}
/*FI*/}
}
void rT221add_last(T221 *C,T0* a1){
rT222add_last((T222*)(C)->_list,a1);
}

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