/*===========================================================================*/
/*   (Ieee/control5.scm)                                                     */
/*   Bigloo (2.6b)                                                           */
/*   Inria -- Sophia Antipolis (c)       Mon Dec 15 12:14:36 CET 2003        */
/*===========================================================================*/
/* COMPILATION: (/users/serrano/prgm/project/bigloo/bin/bigloo -O4 -mklib -cc gcc-2.95 -fsharing -q -s -copt -DBGL_NO_PIC -unsafe -c Ieee/control5.scm -indent -o objs/obj_u/Ieee/control5.c)*/
/* GC selection */
#define THE_GC BOEHM_GC

#include <bigloo.h>
#include <signal.h>

static long BGl_za2reszd2numberza2zd2zz__r5_control_features_6_4z00;
BGL_EXPORTED_DECL obj_t BGl_callzd2withzd2valuesz00zz__r5_control_features_6_4z00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zz__r5_control_features_6_4z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
BGL_EXPORTED_DECL int BGl_z52getzd2mvalueszd2numberz52zz__r5_control_features_6_4z00();
static obj_t BGl_requirezd2initializa7ationz75zz__r5_control_features_6_4z00 = BUNSPEC;
static obj_t BGl__z52getzd2mvalueszd2numberz52zz__r5_control_features_6_4z00(obj_t);
static obj_t BGl__z52getzd2mvalueszd2val1599z52zz__r5_control_features_6_4z00(obj_t, obj_t);
BGL_EXPORTED_DECL int BGl_z52setzd2mvalueszd2numberz12z40zz__r5_control_features_6_4z00(int);
static obj_t BGl__z52setzd2mvalueszd2numberz121597z40zz__r5_control_features_6_4z00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_z52getzd2mvalueszd2valz52zz__r5_control_features_6_4z00(int);
static obj_t BGl__z52setzd2mvalueszd2valz121601z40zz__r5_control_features_6_4z00(obj_t, obj_t, obj_t);
static obj_t BGl_za2res1za2z00zz__r5_control_features_6_4z00 = BUNSPEC;
static obj_t BGl_za2res2za2z00zz__r5_control_features_6_4z00 = BUNSPEC;
static obj_t BGl__callzd2withzd2valuesz00zz__r5_control_features_6_4z00(obj_t, obj_t, obj_t);
static obj_t BGl_za2res3za2z00zz__r5_control_features_6_4z00 = BUNSPEC;
static obj_t BGl__valuesz00zz__r5_control_features_6_4z00(obj_t, obj_t);
static obj_t BGl_toplevelzd2initzd2zz__r5_control_features_6_4z00();
BGL_EXPORTED_DECL obj_t BGl_valuesz00zz__r5_control_features_6_4z00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_z52setzd2mvalueszd2valz12z40zz__r5_control_features_6_4z00(int, obj_t);
static obj_t BGl_importedzd2moduleszd2initz00zz__r5_control_features_6_4z00();
static obj_t *__cnst;


DEFINE_EXPORT_PROCEDURE( BGl_z52setzd2mvalueszd2valz12zd2envz92zz__r5_control_features_6_4z00, BgL_bgl__za752setza7d2mvaluesza7d2valza7121601za740za7za7__r5_control_features_6_4za7001634z00, BGl__z52setzd2mvalueszd2valz121601z40zz__r5_control_features_6_4z00, 0L, 2 );
DEFINE_EXPORT_PROCEDURE( BGl_z52getzd2mvalueszd2valzd2envz80zz__r5_control_features_6_4z00, BgL_bgl__za752getza7d2mvaluesza7d2val1599za752za7za7__r5_control_features_6_4za7001635za7, BGl__z52getzd2mvalueszd2val1599z52zz__r5_control_features_6_4z00, 0L, 1 );
DEFINE_EXPORT_PROCEDURE( BGl_valueszd2envzd2zz__r5_control_features_6_4z00, BgL_bgl__valuesza700za7za7__r5_control_features_6_4za7001636z00, va_generic_entry, BGl__valuesz00zz__r5_control_features_6_4z00, -1 );
DEFINE_EXPORT_PROCEDURE( BGl_z52getzd2mvalueszd2numberzd2envz80zz__r5_control_features_6_4z00, BgL_bgl__za752getza7d2mvaluesza7d2numberza752za7za7__r5_control_features_6_4za7001637za7, BGl__z52getzd2mvalueszd2numberz52zz__r5_control_features_6_4z00, 0L, 0 );
DEFINE_EXPORT_PROCEDURE( BGl_callzd2withzd2valueszd2envzd2zz__r5_control_features_6_4z00, BgL_bgl__callza7d2withza7d2valuesza700za7za7__r5_control_features_6_4za7001638z00, BGl__callzd2withzd2valuesz00zz__r5_control_features_6_4z00, 0L, 2 );
DEFINE_EXPORT_PROCEDURE( BGl_z52setzd2mvalueszd2numberz12zd2envz92zz__r5_control_features_6_4z00, BgL_bgl__za752setza7d2mvaluesza7d2numberza7121597za740za7za7__r5_control_features_6_4za7001639z00, BGl__z52setzd2mvalueszd2numberz121597z40zz__r5_control_features_6_4z00, 0L, 1 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zz__r5_control_features_6_4z00(long BgL_checksumz00_458, char * BgL_fromz00_459)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zz__r5_control_features_6_4z00))
{ 
BGl_requirezd2initializa7ationz75zz__r5_control_features_6_4z00 = 
BBOOL(((bool_t)0)); 
BGl_importedzd2moduleszd2initz00zz__r5_control_features_6_4z00(); 
BGl_toplevelzd2initzd2zz__r5_control_features_6_4z00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* toplevel-init */
obj_t BGl_toplevelzd2initzd2zz__r5_control_features_6_4z00()
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 14 */
BGl_za2reszd2numberza2zd2zz__r5_control_features_6_4z00 = ((long)1); 
BGl_za2res1za2z00zz__r5_control_features_6_4z00 = BUNSPEC; 
BGl_za2res2za2z00zz__r5_control_features_6_4z00 = BUNSPEC; 
return ( 
BGl_za2res3za2z00zz__r5_control_features_6_4z00 = BUNSPEC, BUNSPEC) ;} 
}



/* %get-mvalues-number */
BGL_EXPORTED_DEF int BGl_z52getzd2mvalueszd2numberz52zz__r5_control_features_6_4z00()
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 65 */
return 
BGL_MVALUES_NUMBER();} 
}



/* _%get-mvalues-number */
obj_t BGl__z52getzd2mvalueszd2numberz52zz__r5_control_features_6_4z00(obj_t BgL_envz00_441)
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 65 */
{ /* ./Ieee/control5.scm 66 */
int BgL_auxz00_466;
BgL_auxz00_466 = 
BGL_MVALUES_NUMBER(); 
return 
BINT(BgL_auxz00_466);} } 
}



/* %set-mvalues-number! */
BGL_EXPORTED_DEF int BGl_z52setzd2mvalueszd2numberz12z40zz__r5_control_features_6_4z00(int BgL_nz00_1)
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 71 */
return 
BGL_MVALUES_NUMBER_SET(BgL_nz00_1);} 
}



/* _%set-mvalues-number!1597 */
obj_t BGl__z52setzd2mvalueszd2numberz121597z40zz__r5_control_features_6_4z00(obj_t BgL_envz00_442, obj_t BgL_nz00_443)
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 71 */
{ /* ./Ieee/control5.scm 72 */
int BgL_auxz00_470;
{ /* ./Ieee/control5.scm 72 */
int BgL_auxz00_471;
BgL_auxz00_471 = 
CINT(BgL_nz00_443); 
BgL_auxz00_470 = 
BGL_MVALUES_NUMBER_SET(BgL_auxz00_471); } 
return 
BINT(BgL_auxz00_470);} } 
}



/* %get-mvalues-val */
BGL_EXPORTED_DEF obj_t BGl_z52getzd2mvalueszd2valz52zz__r5_control_features_6_4z00(int BgL_nz00_2)
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 77 */
return 
BGL_MVALUES_VAL(BgL_nz00_2);} 
}



/* _%get-mvalues-val1599 */
obj_t BGl__z52getzd2mvalueszd2val1599z52zz__r5_control_features_6_4z00(obj_t BgL_envz00_444, obj_t BgL_nz00_445)
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 77 */
{ /* ./Ieee/control5.scm 78 */
int BgL_auxz00_476;
BgL_auxz00_476 = 
CINT(BgL_nz00_445); 
return 
BGL_MVALUES_VAL(BgL_auxz00_476);} } 
}



/* %set-mvalues-val! */
BGL_EXPORTED_DEF obj_t BGl_z52setzd2mvalueszd2valz12z40zz__r5_control_features_6_4z00(int BgL_nz00_3, obj_t BgL_oz00_4)
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 83 */
return 
BGL_MVALUES_VAL_SET(BgL_nz00_3, BgL_oz00_4);} 
}



/* _%set-mvalues-val!1601 */
obj_t BGl__z52setzd2mvalueszd2valz121601z40zz__r5_control_features_6_4z00(obj_t BgL_envz00_446, obj_t BgL_nz00_447, obj_t BgL_oz00_448)
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 83 */
{ /* ./Ieee/control5.scm 84 */
int BgL_auxz00_480;
BgL_auxz00_480 = 
CINT(BgL_nz00_447); 
return 
BGL_MVALUES_VAL_SET(BgL_auxz00_480, BgL_oz00_448);} } 
}



/* values */
BGL_EXPORTED_DEF obj_t BGl_valuesz00zz__r5_control_features_6_4z00(obj_t BgL_argsz00_5)
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 99 */
{ /* ./Ieee/control5.scm 100 */
obj_t BgL_allzd2argszd2_254;
BgL_allzd2argszd2_254 = BgL_argsz00_5; 
if(
NULLP(BgL_argsz00_5))
{ /* ./Ieee/control5.scm 102 */
int BgL_nz00_403;
BgL_nz00_403 = 
(int)(((long)0)); 
{ /* ./Ieee/control5.scm 102 */
int BgL_auxz00_486;
BgL_auxz00_486 = 
BGL_MVALUES_NUMBER_SET(BgL_nz00_403); 
return 
BINT(BgL_auxz00_486);} }  else 
{ /* ./Ieee/control5.scm 103 */
bool_t BgL_testz00_489;
{ /* ./Ieee/control5.scm 103 */
obj_t BgL_auxz00_490;
BgL_auxz00_490 = 
CDR(BgL_argsz00_5); 
BgL_testz00_489 = 
NULLP(BgL_auxz00_490); } 
if(BgL_testz00_489)
{ /* ./Ieee/control5.scm 103 */
{ /* ./Ieee/control5.scm 105 */
int BgL_auxz00_493;
BgL_auxz00_493 = 
(int)(((long)1)); 
BGL_MVALUES_NUMBER_SET(BgL_auxz00_493); } 
return 
CAR(BgL_argsz00_5);}  else 
{ /* ./Ieee/control5.scm 107 */
obj_t BgL_res0z00_257;
BgL_res0z00_257 = 
CAR(BgL_argsz00_5); 
BgL_argsz00_5 = 
CDR(BgL_argsz00_5); 
{ /* ./Ieee/control5.scm 109 */
obj_t BgL_auxz00_501;int BgL_auxz00_499;
BgL_auxz00_501 = 
CAR(BgL_argsz00_5); 
BgL_auxz00_499 = 
(int)(((long)1)); 
BGL_MVALUES_VAL_SET(BgL_auxz00_499, BgL_auxz00_501); } 
BgL_argsz00_5 = 
CDR(BgL_argsz00_5); 
if(
PAIRP(BgL_argsz00_5))
{ /* ./Ieee/control5.scm 111 */
{ /* ./Ieee/control5.scm 113 */
obj_t BgL_auxz00_509;int BgL_auxz00_507;
BgL_auxz00_509 = 
CAR(BgL_argsz00_5); 
BgL_auxz00_507 = 
(int)(((long)2)); 
BGL_MVALUES_VAL_SET(BgL_auxz00_507, BgL_auxz00_509); } 
BgL_argsz00_5 = 
CDR(BgL_argsz00_5); 
if(
PAIRP(BgL_argsz00_5))
{ /* ./Ieee/control5.scm 116 */
bool_t BgL_testz00_515;
{ /* ./Ieee/control5.scm 116 */
obj_t BgL_auxz00_516;
BgL_auxz00_516 = 
CDR(BgL_argsz00_5); 
BgL_testz00_515 = 
PAIRP(BgL_auxz00_516); } 
if(BgL_testz00_515)
{ /* ./Ieee/control5.scm 116 */
{ /* ./Ieee/control5.scm 118 */
int BgL_auxz00_519;
BgL_auxz00_519 = 
(int)(((long)-1)); 
BGL_MVALUES_NUMBER_SET(BgL_auxz00_519); } 
return BgL_allzd2argszd2_254;}  else 
{ /* ./Ieee/control5.scm 116 */
{ /* ./Ieee/control5.scm 121 */
obj_t BgL_auxz00_524;int BgL_auxz00_522;
BgL_auxz00_524 = 
CAR(BgL_argsz00_5); 
BgL_auxz00_522 = 
(int)(((long)3)); 
BGL_MVALUES_VAL_SET(BgL_auxz00_522, BgL_auxz00_524); } 
{ /* ./Ieee/control5.scm 122 */
int BgL_auxz00_527;
BgL_auxz00_527 = 
(int)(((long)4)); 
BGL_MVALUES_NUMBER_SET(BgL_auxz00_527); } 
return BgL_res0z00_257;} }  else 
{ /* ./Ieee/control5.scm 115 */
{ /* ./Ieee/control5.scm 125 */
int BgL_auxz00_530;
BgL_auxz00_530 = 
(int)(((long)3)); 
BGL_MVALUES_NUMBER_SET(BgL_auxz00_530); } 
return BgL_res0z00_257;} }  else 
{ /* ./Ieee/control5.scm 111 */
{ /* ./Ieee/control5.scm 128 */
int BgL_auxz00_533;
BgL_auxz00_533 = 
(int)(((long)2)); 
BGL_MVALUES_NUMBER_SET(BgL_auxz00_533); } 
return BgL_res0z00_257;} } } } } 
}



/* _values */
obj_t BGl__valuesz00zz__r5_control_features_6_4z00(obj_t BgL_envz00_449, obj_t BgL_argsz00_450)
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 99 */
return 
BGl_valuesz00zz__r5_control_features_6_4z00(BgL_argsz00_450);} 
}



/* call-with-values */
BGL_EXPORTED_DEF obj_t BGl_callzd2withzd2valuesz00zz__r5_control_features_6_4z00(obj_t BgL_producerz00_6, obj_t BgL_consumerz00_7)
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 134 */
{ /* ./Ieee/control5.scm 135 */
int BgL_auxz00_537;
BgL_auxz00_537 = 
(int)(((long)1)); 
BGL_MVALUES_NUMBER_SET(BgL_auxz00_537); } 
{ /* ./Ieee/control5.scm 136 */
obj_t BgL_res0z00_269;
BgL_res0z00_269 = 
PROCEDURE_ENTRY(BgL_producerz00_6)(BgL_producerz00_6, BEOA); 
{ /* ./Ieee/control5.scm 137 */
int BgL_aux1004z00_271;
BgL_aux1004z00_271 = 
BGL_MVALUES_NUMBER(); 
switch( 
(long)(BgL_aux1004z00_271)) { case ((long)-1) : 

return 
apply(BgL_consumerz00_7, BgL_res0z00_269);break;case ((long)0) : 

return 
PROCEDURE_ENTRY(BgL_consumerz00_7)(BgL_consumerz00_7, BEOA);break;case ((long)1) : 

return 
PROCEDURE_ENTRY(BgL_consumerz00_7)(BgL_consumerz00_7, BgL_res0z00_269, BEOA);break;case ((long)2) : 

{ /* ./Ieee/control5.scm 146 */
obj_t BgL_arg1058z00_273;
{ /* ./Ieee/control5.scm 146 */
int BgL_auxz00_549;
BgL_auxz00_549 = 
(int)(((long)1)); 
BgL_arg1058z00_273 = 
BGL_MVALUES_VAL(BgL_auxz00_549); } 
return 
PROCEDURE_ENTRY(BgL_consumerz00_7)(BgL_consumerz00_7, BgL_res0z00_269, BgL_arg1058z00_273, BEOA);} break;case ((long)3) : 

{ /* ./Ieee/control5.scm 149 */
obj_t BgL_arg1064z00_274;obj_t BgL_arg1065z00_275;
{ /* ./Ieee/control5.scm 149 */
int BgL_auxz00_554;
BgL_auxz00_554 = 
(int)(((long)1)); 
BgL_arg1064z00_274 = 
BGL_MVALUES_VAL(BgL_auxz00_554); } 
{ /* ./Ieee/control5.scm 150 */
int BgL_auxz00_557;
BgL_auxz00_557 = 
(int)(((long)2)); 
BgL_arg1065z00_275 = 
BGL_MVALUES_VAL(BgL_auxz00_557); } 
return 
PROCEDURE_ENTRY(BgL_consumerz00_7)(BgL_consumerz00_7, BgL_res0z00_269, BgL_arg1064z00_274, BgL_arg1065z00_275, BEOA);} break;case ((long)4) : 

{ /* ./Ieee/control5.scm 153 */
obj_t BgL_arg1073z00_276;obj_t BgL_arg1075z00_277;obj_t BgL_arg1076z00_278;
{ /* ./Ieee/control5.scm 153 */
int BgL_auxz00_562;
BgL_auxz00_562 = 
(int)(((long)1)); 
BgL_arg1073z00_276 = 
BGL_MVALUES_VAL(BgL_auxz00_562); } 
{ /* ./Ieee/control5.scm 154 */
int BgL_auxz00_565;
BgL_auxz00_565 = 
(int)(((long)2)); 
BgL_arg1075z00_277 = 
BGL_MVALUES_VAL(BgL_auxz00_565); } 
{ /* ./Ieee/control5.scm 155 */
int BgL_auxz00_568;
BgL_auxz00_568 = 
(int)(((long)3)); 
BgL_arg1076z00_278 = 
BGL_MVALUES_VAL(BgL_auxz00_568); } 
return 
PROCEDURE_ENTRY(BgL_consumerz00_7)(BgL_consumerz00_7, BgL_res0z00_269, BgL_arg1073z00_276, BgL_arg1075z00_277, BgL_arg1076z00_278, BEOA);} break;
default: 
return 
apply(BgL_consumerz00_7, BgL_res0z00_269);} } } } 
}



/* _call-with-values */
obj_t BGl__callzd2withzd2valuesz00zz__r5_control_features_6_4z00(obj_t BgL_envz00_451, obj_t BgL_producerz00_452, obj_t BgL_consumerz00_453)
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 134 */
return 
BGl_callzd2withzd2valuesz00zz__r5_control_features_6_4z00(BgL_producerz00_452, BgL_consumerz00_453);} 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zz__r5_control_features_6_4z00()
{ AN_OBJECT;
{ /* ./Ieee/control5.scm 14 */
return 
BGl_modulezd2initializa7ationz75zz__errorz00(((long)11084), "__r5_control_features_6_4");} 
}

