/*===========================================================================*/
/*   (Llib/i18n.scm)                                                         */
/*   Bigloo (4.7a)                                                           */
/*   Inria -- Sophia Antipolis (c)       Thu Feb 19 09:11:58 AM CET 2026     */
/*===========================================================================*/
/* COMPILATION: (/home/serrano/prgm/project/bigloo/4.7a/bin/bigloo -srfi bigloo-safe -O3 -fcfa-arithmetic -q -lib-dir /home/serrano/prgm/project/bigloo/4.7a/lib/bigloo/4.7a +rm -O3 -mklib -cc gcc -fsharing -q -unsafev -eval (set! *indent* 4) -stdc -c Llib/i18n.scm -indent -o objs/obj_s/Llib/i18n.c) */
/* GC selection */
#define THE_GC BOEHM_GC

/* traces mode */
#define BIGLOO_TRACE 0

/* standard Bigloo include */
#include <bigloo.h>

#ifdef __cplusplus
extern "C" {
#endif
#ifndef BGL_MODULE_TYPE_DEFINITIONS
#define BGL_MODULE_TYPE_DEFINITIONS
#ifndef BGL___I18N_TYPE_DEFINITIONS
#define BGL___I18N_TYPE_DEFINITIONS
#endif // BGL___I18N_TYPE_DEFINITIONS
#endif // BGL_MODULE_TYPE_DEFINITIONS

static obj_t BGl_requirezd2initializa7ationz75zz__i18nz00 = BUNSPEC;
extern obj_t BGl_typezd2errorzd2zz__errorz00(obj_t, obj_t, obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zz__i18nz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__threadz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__objectz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__bexitz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__paramz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
extern obj_t bgl_utf8_string_locale_capitalize(obj_t);
extern obj_t bgl_utf8_string_locale_upcase(obj_t);
static obj_t BGl_z62utf8zd2stringzd2localezd2downcasezb0zz__i18nz00(obj_t, obj_t);
static obj_t BGl_z62utf8zd2stringzd2localezd2upcasezb0zz__i18nz00(obj_t, obj_t);
static obj_t BGl_genericzd2initzd2zz__i18nz00(void);
static obj_t BGl_importedzd2moduleszd2initz00zz__i18nz00(void);
static obj_t BGl_gczd2rootszd2initz00zz__i18nz00(void);
static obj_t BGl_objectzd2initzd2zz__i18nz00(void);
BGL_EXPORTED_DECL int BGl_utf8zd2stringzd2localezd2compare3zd2zz__i18nz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_utf8zd2stringzd2localezd2capitaliza7ez75zz__i18nz00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_utf8zd2stringzd2localezd2upcasezd2zz__i18nz00(obj_t);
static obj_t BGl_methodzd2initzd2zz__i18nz00(void);
BGL_EXPORTED_DECL obj_t BGl_utf8zd2stringzd2localezd2downcasezd2zz__i18nz00(obj_t);
static obj_t BGl_z62utf8zd2stringzd2localezd2capitaliza7ez17zz__i18nz00(obj_t, obj_t);
extern obj_t bgl_utf8_string_locale_downcase(obj_t);
static obj_t BGl_z62utf8zd2stringzd2localezd2compare3zb0zz__i18nz00(obj_t, obj_t, obj_t);
static obj_t *__cnst;


DEFINE_EXPORT_BGL_PROCEDURE(BGl_utf8zd2stringzd2localezd2upcasezd2envz00zz__i18nz00, BgL_bgl_za762utf8za7d2string1641z00, BGl_z62utf8zd2stringzd2localezd2upcasezb0zz__i18nz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_utf8zd2stringzd2localezd2compare3zd2envz00zz__i18nz00, BgL_bgl_za762utf8za7d2string1642z00, BGl_z62utf8zd2stringzd2localezd2compare3zb0zz__i18nz00, 0L, BUNSPEC, 2);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_utf8zd2stringzd2localezd2capitaliza7ezd2envza7zz__i18nz00, BgL_bgl_za762utf8za7d2string1643z00, BGl_z62utf8zd2stringzd2localezd2capitaliza7ez17zz__i18nz00, 0L, BUNSPEC, 1);
BGL_DEFINE_STRING(BGl_string1634z00zz__i18nz00, BgL_bgl_string1634za700za7za7_1644za7, "/tmp/bigloo/runtime/Llib/i18n.scm", 33 );
BGL_DEFINE_STRING(BGl_string1635z00zz__i18nz00, BgL_bgl_string1635za700za7za7_1645za7, "&utf8-string-locale-compare3", 28 );
BGL_DEFINE_STRING(BGl_string1636z00zz__i18nz00, BgL_bgl_string1636za700za7za7_1646za7, "bstring", 7 );
BGL_DEFINE_STRING(BGl_string1637z00zz__i18nz00, BgL_bgl_string1637za700za7za7_1647za7, "&utf8-string-locale-upcase", 26 );
BGL_DEFINE_STRING(BGl_string1638z00zz__i18nz00, BgL_bgl_string1638za700za7za7_1648za7, "&utf8-string-locale-downcase", 28 );
BGL_DEFINE_STRING(BGl_string1639z00zz__i18nz00, BgL_bgl_string1639za700za7za7_1649za7, "&utf8-string-locale-capitalize", 30 );
BGL_DEFINE_STRING(BGl_string1640z00zz__i18nz00, BgL_bgl_string1640za700za7za7_1650za7, "__i18n", 6 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_utf8zd2stringzd2localezd2downcasezd2envz00zz__i18nz00, BgL_bgl_za762utf8za7d2string1651z00, BGl_z62utf8zd2stringzd2localezd2downcasezb0zz__i18nz00, 0L, BUNSPEC, 1);

/* contant bindings */
static void bgl_constant_bindings() {
BGL_BIND_PROCEDURE(BGl_utf8zd2stringzd2localezd2downcasezd2envz00zz__i18nz00, BgL_bgl_za762utf8za7d2string1651z00);
BGL_BIND_STRING(BGl_string1640z00zz__i18nz00, BgL_bgl_string1640za700za7za7_1650za7);
BGL_BIND_STRING(BGl_string1639z00zz__i18nz00, BgL_bgl_string1639za700za7za7_1649za7);
BGL_BIND_STRING(BGl_string1638z00zz__i18nz00, BgL_bgl_string1638za700za7za7_1648za7);
BGL_BIND_STRING(BGl_string1637z00zz__i18nz00, BgL_bgl_string1637za700za7za7_1647za7);
BGL_BIND_STRING(BGl_string1636z00zz__i18nz00, BgL_bgl_string1636za700za7za7_1646za7);
BGL_BIND_STRING(BGl_string1635z00zz__i18nz00, BgL_bgl_string1635za700za7za7_1645za7);
BGL_BIND_STRING(BGl_string1634z00zz__i18nz00, BgL_bgl_string1634za700za7za7_1644za7);
BGL_BIND_PROCEDURE(BGl_utf8zd2stringzd2localezd2capitaliza7ezd2envza7zz__i18nz00, BgL_bgl_za762utf8za7d2string1643z00);
BGL_BIND_PROCEDURE(BGl_utf8zd2stringzd2localezd2compare3zd2envz00zz__i18nz00, BgL_bgl_za762utf8za7d2string1642z00);
BGL_BIND_PROCEDURE(BGl_utf8zd2stringzd2localezd2upcasezd2envz00zz__i18nz00, BgL_bgl_za762utf8za7d2string1641z00);
}

/* GC roots registration */
static obj_t bgl_gc_roots_register() {
#if defined( BGL_GC_ROOTS )
#define ADD_ROOT( addr ) (addr > roots_max ? roots_max = addr : (addr < roots_min ? roots_min = addr : 0))
void *roots_min = (void*)ULONG_MAX, *roots_max = 0;
ADD_ROOT( (void *)(&BGl_requirezd2initializa7ationz75zz__i18nz00) );
#undef ADD_ROOT
if( roots_max > 0 ) GC_add_roots( roots_min, ((void **)roots_max) + 1 );
#endif
return BUNSPEC;
}



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zz__i18nz00(long BgL_checksumz00_1752, char * BgL_fromz00_1753)
{
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zz__i18nz00))
{ 
BGl_requirezd2initializa7ationz75zz__i18nz00 = 
BBOOL(((bool_t)0)); 
bgl_constant_bindings(); 
BGl_gczd2rootszd2initz00zz__i18nz00(); 
BGl_importedzd2moduleszd2initz00zz__i18nz00(); 
return 
BGl_methodzd2initzd2zz__i18nz00();}  else 
{ 
return BUNSPEC;} } 

}



/* gc-roots-init */
obj_t BGl_gczd2rootszd2initz00zz__i18nz00(void)
{
{ /* Llib/i18n.scm 15 */
return 
bgl_gc_roots_register();} 

}



/* utf8-string-locale-compare3 */
BGL_EXPORTED_DEF int BGl_utf8zd2stringzd2localezd2compare3zd2zz__i18nz00(obj_t BgL_leftz00_3, obj_t BgL_rightz00_4)
{
{ /* Llib/i18n.scm 77 */
return 
BGL_UTF8_STRING_LOCALE_COMPARE3(BgL_leftz00_3, BgL_rightz00_4);} 

}



/* &utf8-string-locale-compare3 */
obj_t BGl_z62utf8zd2stringzd2localezd2compare3zb0zz__i18nz00(obj_t BgL_envz00_1733, obj_t BgL_leftz00_1734, obj_t BgL_rightz00_1735)
{
{ /* Llib/i18n.scm 77 */
{ /* Llib/i18n.scm 78 */
 int BgL_tmpz00_1763;
{ /* Llib/i18n.scm 78 */
 obj_t BgL_auxz00_1771; obj_t BgL_auxz00_1764;
if(
STRINGP(BgL_rightz00_1735))
{ /* Llib/i18n.scm 78 */
BgL_auxz00_1771 = BgL_rightz00_1735
; }  else 
{ 
 obj_t BgL_auxz00_1774;
BgL_auxz00_1774 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string1634z00zz__i18nz00, 
BINT(2946L), BGl_string1635z00zz__i18nz00, BGl_string1636z00zz__i18nz00, BgL_rightz00_1735); 
FAILURE(BgL_auxz00_1774,BFALSE,BFALSE);} 
if(
STRINGP(BgL_leftz00_1734))
{ /* Llib/i18n.scm 78 */
BgL_auxz00_1764 = BgL_leftz00_1734
; }  else 
{ 
 obj_t BgL_auxz00_1767;
BgL_auxz00_1767 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string1634z00zz__i18nz00, 
BINT(2946L), BGl_string1635z00zz__i18nz00, BGl_string1636z00zz__i18nz00, BgL_leftz00_1734); 
FAILURE(BgL_auxz00_1767,BFALSE,BFALSE);} 
BgL_tmpz00_1763 = 
BGl_utf8zd2stringzd2localezd2compare3zd2zz__i18nz00(BgL_auxz00_1764, BgL_auxz00_1771); } 
return 
BINT(BgL_tmpz00_1763);} } 

}



/* utf8-string-locale-upcase */
BGL_EXPORTED_DEF obj_t BGl_utf8zd2stringzd2localezd2upcasezd2zz__i18nz00(obj_t BgL_strz00_5)
{
{ /* Llib/i18n.scm 83 */
BGL_TAIL return 
bgl_utf8_string_locale_upcase(BgL_strz00_5);} 

}



/* &utf8-string-locale-upcase */
obj_t BGl_z62utf8zd2stringzd2localezd2upcasezb0zz__i18nz00(obj_t BgL_envz00_1736, obj_t BgL_strz00_1737)
{
{ /* Llib/i18n.scm 83 */
{ /* Llib/i18n.scm 86 */
 obj_t BgL_auxz00_1781;
if(
STRINGP(BgL_strz00_1737))
{ /* Llib/i18n.scm 86 */
BgL_auxz00_1781 = BgL_strz00_1737
; }  else 
{ 
 obj_t BgL_auxz00_1784;
BgL_auxz00_1784 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string1634z00zz__i18nz00, 
BINT(3326L), BGl_string1637z00zz__i18nz00, BGl_string1636z00zz__i18nz00, BgL_strz00_1737); 
FAILURE(BgL_auxz00_1784,BFALSE,BFALSE);} 
return 
BGl_utf8zd2stringzd2localezd2upcasezd2zz__i18nz00(BgL_auxz00_1781);} } 

}



/* utf8-string-locale-downcase */
BGL_EXPORTED_DEF obj_t BGl_utf8zd2stringzd2localezd2downcasezd2zz__i18nz00(obj_t BgL_strz00_6)
{
{ /* Llib/i18n.scm 91 */
BGL_TAIL return 
bgl_utf8_string_locale_downcase(BgL_strz00_6);} 

}



/* &utf8-string-locale-downcase */
obj_t BGl_z62utf8zd2stringzd2localezd2downcasezb0zz__i18nz00(obj_t BgL_envz00_1738, obj_t BgL_strz00_1739)
{
{ /* Llib/i18n.scm 91 */
{ /* Llib/i18n.scm 94 */
 obj_t BgL_auxz00_1790;
if(
STRINGP(BgL_strz00_1739))
{ /* Llib/i18n.scm 94 */
BgL_auxz00_1790 = BgL_strz00_1739
; }  else 
{ 
 obj_t BgL_auxz00_1793;
BgL_auxz00_1793 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string1634z00zz__i18nz00, 
BINT(3703L), BGl_string1638z00zz__i18nz00, BGl_string1636z00zz__i18nz00, BgL_strz00_1739); 
FAILURE(BgL_auxz00_1793,BFALSE,BFALSE);} 
return 
BGl_utf8zd2stringzd2localezd2downcasezd2zz__i18nz00(BgL_auxz00_1790);} } 

}



/* utf8-string-locale-capitalize */
BGL_EXPORTED_DEF obj_t BGl_utf8zd2stringzd2localezd2capitaliza7ez75zz__i18nz00(obj_t BgL_strz00_7)
{
{ /* Llib/i18n.scm 99 */
BGL_TAIL return 
bgl_utf8_string_locale_capitalize(BgL_strz00_7);} 

}



/* &utf8-string-locale-capitalize */
obj_t BGl_z62utf8zd2stringzd2localezd2capitaliza7ez17zz__i18nz00(obj_t BgL_envz00_1740, obj_t BgL_strz00_1741)
{
{ /* Llib/i18n.scm 99 */
{ /* Llib/i18n.scm 102 */
 obj_t BgL_auxz00_1799;
if(
STRINGP(BgL_strz00_1741))
{ /* Llib/i18n.scm 102 */
BgL_auxz00_1799 = BgL_strz00_1741
; }  else 
{ 
 obj_t BgL_auxz00_1802;
BgL_auxz00_1802 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string1634z00zz__i18nz00, 
BINT(4086L), BGl_string1639z00zz__i18nz00, BGl_string1636z00zz__i18nz00, BgL_strz00_1741); 
FAILURE(BgL_auxz00_1802,BFALSE,BFALSE);} 
return 
BGl_utf8zd2stringzd2localezd2capitaliza7ez75zz__i18nz00(BgL_auxz00_1799);} } 

}



/* object-init */
obj_t BGl_objectzd2initzd2zz__i18nz00(void)
{
{ /* Llib/i18n.scm 15 */
return BUNSPEC;} 

}



/* generic-init */
obj_t BGl_genericzd2initzd2zz__i18nz00(void)
{
{ /* Llib/i18n.scm 15 */
return BUNSPEC;} 

}



/* method-init */
obj_t BGl_methodzd2initzd2zz__i18nz00(void)
{
{ /* Llib/i18n.scm 15 */
return BUNSPEC;} 

}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zz__i18nz00(void)
{
{ /* Llib/i18n.scm 15 */
BGl_modulezd2initializa7ationz75zz__errorz00(88804785L, 
BSTRING_TO_STRING(BGl_string1640z00zz__i18nz00)); 
BGl_modulezd2initializa7ationz75zz__paramz00(453939141L, 
BSTRING_TO_STRING(BGl_string1640z00zz__i18nz00)); 
BGl_modulezd2initializa7ationz75zz__bexitz00(443005284L, 
BSTRING_TO_STRING(BGl_string1640z00zz__i18nz00)); 
BGl_modulezd2initializa7ationz75zz__objectz00(475449627L, 
BSTRING_TO_STRING(BGl_string1640z00zz__i18nz00)); 
return 
BGl_modulezd2initializa7ationz75zz__threadz00(149516032L, 
BSTRING_TO_STRING(BGl_string1640z00zz__i18nz00));} 

}

#ifdef __cplusplus
}
#endif
