/*===========================================================================*/
/*   (Foreign/calias.scm)                                                    */
/*   Bigloo (2.6b)                                                           */
/*   Inria -- Sophia Antipolis (c)       Mon Dec 15 12:14:36 CET 2003        */
/*===========================================================================*/
/* COMPILATION: (/users/serrano/prgm/project/bigloo/bin/bigloo -q -afile .afile -fsharing -fno-reflection -cc gcc-2.95 -lib-dir /users/serrano/prgm/project/bigloo/lib/2.6b -unsafev -no-hello -O2 -rm -unsafe -s -indent Foreign/calias.scm)*/
/* GC selection */
#define THE_GC BOEHM_GC

#include <bigloo.h>


/* Object type definitions */
typedef struct BgL_typez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   obj_t BgL_siza7eza7;
   obj_t BgL_classz00;
   obj_t BgL_coercezd2tozd2;
   obj_t BgL_parentsz00;
   bool_t BgL_initzf3zf3;
   bool_t BgL_magiczf3zf3;
   obj_t BgL_z42z42;
   obj_t BgL_aliasz00;
   obj_t BgL_pointedzd2tozd2byz00;
   obj_t BgL_tvectorz00;
   obj_t BgL_locationz00;
   obj_t BgL_importzd2locationzd2;
} *BgL_typez00_bglt;

typedef struct BgL_caliasz00_bgl {
   bool_t BgL_arrayzf3zf3;
} *BgL_caliasz00_bglt;

typedef struct BgL_cenumz00_bgl {
   struct BgL_typez00_bgl * BgL_btypez00;
   obj_t BgL_literalsz00;
} *BgL_cenumz00_bglt;

typedef struct BgL_copaquez00_bgl {
   struct BgL_typez00_bgl * BgL_btypez00;
} *BgL_copaquez00_bglt;

typedef struct BgL_cfunctionz00_bgl {
   struct BgL_typez00_bgl * BgL_btypez00;
   long BgL_arityz00;
   struct BgL_typez00_bgl * BgL_typezd2reszd2;
   obj_t BgL_typezd2argszd2;
} *BgL_cfunctionz00_bglt;

typedef struct BgL_cptrz00_bgl {
   struct BgL_typez00_bgl * BgL_btypez00;
   struct BgL_typez00_bgl * BgL_pointzd2tozd2;
   bool_t BgL_arrayzf3zf3;
} *BgL_cptrz00_bglt;

typedef struct BgL_cstructz00_bgl {
   bool_t BgL_structzf3zf3;
   obj_t BgL_fieldsz00;
   obj_t BgL_cstructza2za2;
} *BgL_cstructz00_bglt;

typedef struct BgL_cstructza2za2_bgl {
   struct BgL_typez00_bgl * BgL_btypez00;
   struct BgL_cstructz00_bgl * BgL_cstructz00;
} *BgL_cstructza2za2_bglt;


BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zzforeign_caliasz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_tracez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_toolsz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_typez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_shapez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzforeign_ctypez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzforeign_accessz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__objectz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__readerz00(long, char *);
static obj_t BGl_methodzd2initzd2zzforeign_caliasz00();
extern obj_t BGl_makezd2ctypezd2accessesz12z12zzforeign_accessz00(BgL_typez00_bglt, BgL_typez00_bglt, obj_t);
static obj_t BGl_makezd2ctypezd2accessesz12zd2calias1568zc0zzforeign_caliasz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_importedzd2moduleszd2initz00zzforeign_caliasz00();
static obj_t BGl_requirezd2initializa7ationz75zzforeign_caliasz00 = BUNSPEC;
BGL_IMPORT obj_t BGl_addzd2methodz12zc0zz__objectz00(obj_t, obj_t, obj_t);
static obj_t BGl_libraryzd2moduleszd2initz00zzforeign_caliasz00();
static obj_t BGl_toplevelzd2initzd2zzforeign_caliasz00();
extern obj_t BGl_caliasz00zzforeign_ctypez00;
static obj_t *__cnst;


extern obj_t BGl_makezd2ctypezd2accessesz12zd2envzc0zzforeign_accessz00;
DEFINE_STATIC_PROCEDURE( BGl_proc1672z00zzforeign_caliasz00, BgL_bgl_makeza7d2ctypeza7d2accessesza712za7d2calias1568za7c0za7za7foreign_caliasza7001682z00, BGl_makezd2ctypezd2accessesz12zd2calias1568zc0zzforeign_caliasz00, 0L, 3 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zzforeign_caliasz00(long BgL_checksumz00_175, char * BgL_fromz00_176)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zzforeign_caliasz00))
{ 
BGl_requirezd2initializa7ationz75zzforeign_caliasz00 = 
BBOOL(((bool_t)0)); 
BGl_libraryzd2moduleszd2initz00zzforeign_caliasz00(); 
BGl_importedzd2moduleszd2initz00zzforeign_caliasz00(); 
BGl_methodzd2initzd2zzforeign_caliasz00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* library-modules-init */
obj_t BGl_libraryzd2moduleszd2initz00zzforeign_caliasz00()
{ AN_OBJECT;
{ /* ./Foreign/calias.scm 15 */
BGl_modulezd2initializa7ationz75zz__objectz00(((long)0), "foreign_calias"); 
BGl_modulezd2initializa7ationz75zz__readerz00(((long)0), "foreign_calias"); 
return BUNSPEC;} 
}



/* toplevel-init */
obj_t BGl_toplevelzd2initzd2zzforeign_caliasz00()
{ AN_OBJECT;
{ /* ./Foreign/calias.scm 15 */
return BUNSPEC;} 
}



/* method-init */
obj_t BGl_methodzd2initzd2zzforeign_caliasz00()
{ AN_OBJECT;
{ /* ./Foreign/calias.scm 15 */
return 
BGl_addzd2methodz12zc0zz__objectz00(BGl_makezd2ctypezd2accessesz12zd2envzc0zzforeign_accessz00, BGl_caliasz00zzforeign_ctypez00, BGl_proc1672z00zzforeign_caliasz00);} 
}



/* make-ctype-accesses!-calias1568 */
obj_t BGl_makezd2ctypezd2accessesz12zd2calias1568zc0zzforeign_caliasz00(obj_t BgL_envz00_167, obj_t BgL_whatz00_168, obj_t BgL_whoz00_169, obj_t BgL_locz00_170)
{ AN_OBJECT;
{ /* ./Foreign/calias.scm 26 */
{ 
BgL_caliasz00_bglt BgL_whatz00_156;BgL_typez00_bglt BgL_whoz00_157;obj_t BgL_locz00_158;
BgL_whatz00_156 = 
(BgL_caliasz00_bglt)(BgL_whatz00_168); 
BgL_whoz00_157 = 
(BgL_typez00_bglt)(BgL_whoz00_169); 
BgL_locz00_158 = BgL_locz00_170; 
{ /* ./Foreign/calias.scm 30 */
obj_t BgL_arg1648z00_164;
{ /* ./Foreign/calias.scm 30 */
BgL_typez00_bglt BgL_obj1028z00_165;
BgL_obj1028z00_165 = 
(BgL_typez00_bglt)(BgL_whatz00_156); 
BgL_arg1648z00_164 = 
(((BgL_typez00_bglt)CREF(BgL_obj1028z00_165))->BgL_aliasz00); } 
return 
BGl_makezd2ctypezd2accessesz12z12zzforeign_accessz00(
(BgL_typez00_bglt)(BgL_arg1648z00_164), BgL_whoz00_157, BgL_locz00_158);} } } 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zzforeign_caliasz00()
{ AN_OBJECT;
{ /* ./Foreign/calias.scm 15 */
BGl_modulezd2initializa7ationz75zztools_tracez00(((long)59211), "foreign_calias"); 
BGl_modulezd2initializa7ationz75zztype_toolsz00(((long)15091), "foreign_calias"); 
BGl_modulezd2initializa7ationz75zztype_typez00(((long)19090), "foreign_calias"); 
BGl_modulezd2initializa7ationz75zztools_shapez00(((long)30833), "foreign_calias"); 
BGl_modulezd2initializa7ationz75zzforeign_ctypez00(((long)51394), "foreign_calias"); 
return 
BGl_modulezd2initializa7ationz75zzforeign_accessz00(((long)13730), "foreign_calias");} 
}

