/*===========================================================================*/
/*   (Rgc/rgcposix.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-unsafe -O3 -fcfa-arithmetic -q -lib-dir /home/serrano/prgm/project/bigloo/4.7a/lib/bigloo/4.7a +rm -mklib -cc gcc -fsharing -q -no-hello -unsafe -safee -O4 -stdc -c Rgc/rgcposix.scm -indent -o objs/obj_u/Rgc/rgcposix.c) */
/* GC selection */
#define THE_GC BOEHM_GC

/* unsafe mode */
#define BIGLOO_UNSAFE 1

/* 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___RGC_POSIX_TYPE_DEFINITIONS
#define BGL___RGC_POSIX_TYPE_DEFINITIONS
#endif													// BGL___RGC_POSIX_TYPE_DEFINITIONS
#endif													// BGL_MODULE_TYPE_DEFINITIONS

	static obj_t BGl_za2errzd2stringza2zd2zz__rgc_posixz00 = BUNSPEC;
	static obj_t BGl_list1806z00zz__rgc_posixz00 = BUNSPEC;
	extern obj_t BGl_stringzd2ze3numberz31zz__r4_numbers_6_5z00(obj_t, obj_t);
	static obj_t BGl_makezd2rgczd2sequencez00zz__rgc_posixz00(obj_t);
	static obj_t BGl_parsezd2posixzd2expz00zz__rgc_posixz00(obj_t, long);
	static obj_t BGl_requirezd2initializa7ationz75zz__rgc_posixz00 = BUNSPEC;
	static obj_t BGl_parsezd2posixzd2branchz00zz__rgc_posixz00(obj_t, long);
	extern obj_t BGl_typezd2errorzd2zz__errorz00(obj_t, obj_t, obj_t, obj_t,
		obj_t);
	BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zz__rgc_posixz00(long,
		char *);
	extern obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
	static obj_t BGl_symbol1783z00zz__rgc_posixz00 = BUNSPEC;
	static obj_t BGl_symbol1785z00zz__rgc_posixz00 = BUNSPEC;
	static obj_t BGl_symbol1787z00zz__rgc_posixz00 = BUNSPEC;
	static obj_t BGl_symbol1789z00zz__rgc_posixz00 = BUNSPEC;
	static obj_t BGl_symbol1791z00zz__rgc_posixz00 = BUNSPEC;
	static obj_t BGl_symbol1794z00zz__rgc_posixz00 = BUNSPEC;
	static obj_t BGl_toplevelzd2initzd2zz__rgc_posixz00(void);
	static obj_t BGl_symbol1796z00zz__rgc_posixz00 = BUNSPEC;
	static obj_t BGl_cnstzd2initzd2zz__rgc_posixz00(void);
	extern obj_t bgl_reverse(obj_t);
	static obj_t BGl_genericzd2initzd2zz__rgc_posixz00(void);
	static obj_t BGl_importedzd2moduleszd2initz00zz__rgc_posixz00(void);
	static obj_t BGl_parsezd2posixzd2piecez00zz__rgc_posixz00(obj_t, obj_t);
	static obj_t BGl_gczd2rootszd2initz00zz__rgc_posixz00(void);
	static obj_t BGl_makezd2rgczd2repeatz00zz__rgc_posixz00(obj_t, obj_t, obj_t);
	static obj_t BGl_objectzd2initzd2zz__rgc_posixz00(void);
	extern obj_t BGl_2zb2zb2zz__r4_numbers_6_5z00(obj_t, obj_t);
	extern obj_t BGl_listzd2ze3stringz31zz__r4_strings_6_7z00(obj_t);
	extern obj_t BGl_memqz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
	static obj_t BGl_parsezd2posixzd2atomz00zz__rgc_posixz00(obj_t, obj_t);
	extern obj_t bgl_bignum_add(obj_t, obj_t);
	extern obj_t bstring_to_symbol(obj_t);
	extern obj_t c_substring(obj_t, long, long);
	static obj_t BGl_methodzd2initzd2zz__rgc_posixz00(void);
	static obj_t BGl_makezd2rgczd2orz00zz__rgc_posixz00(obj_t);
	BGL_EXPORTED_DECL obj_t BGl_posixzd2ze3rgcz31zz__rgc_posixz00(obj_t);
	static obj_t BGl_symbol1800z00zz__rgc_posixz00 = BUNSPEC;
	static obj_t BGl_symbol1802z00zz__rgc_posixz00 = BUNSPEC;
	static obj_t BGl_parsezd2posixzd2bracketz00zz__rgc_posixz00(obj_t, long);
	static obj_t BGl_symbol1808z00zz__rgc_posixz00 = BUNSPEC;
	static obj_t BGl_symbol1810z00zz__rgc_posixz00 = BUNSPEC;
	extern obj_t bgl_long_to_bignum(long);
	static obj_t BGl_parsezd2posixzd2bracesz00zz__rgc_posixz00(obj_t, obj_t);
	static obj_t BGl_z62posixzd2ze3rgcz53zz__rgc_posixz00(obj_t, obj_t);
	extern obj_t BGl_errorz00zz__errorz00(obj_t, obj_t, obj_t);
	static obj_t *__cnst;


	   
		 
		BGL_DEFINE_STRING(BGl_string1790z00zz__rgc_posixz00,
		BgL_bgl_string1790za700za7za7_1816za7, "**", 2);
	      BGL_DEFINE_STRING(BGl_string1792z00zz__rgc_posixz00,
		BgL_bgl_string1792za700za7za7_1817za7, ">=", 2);
	      BGL_DEFINE_STRING(BGl_string1793z00zz__rgc_posixz00,
		BgL_bgl_string1793za700za7za7_1818za7, "RGC:Illegal posix string", 24);
	      BGL_DEFINE_STRING(BGl_string1795z00zz__rgc_posixz00,
		BgL_bgl_string1795za700za7za7_1819za7, "or", 2);
	      BGL_DEFINE_STRING(BGl_string1797z00zz__rgc_posixz00,
		BgL_bgl_string1797za700za7za7_1820za7, ":", 1);
	      BGL_DEFINE_STRING(BGl_string1798z00zz__rgc_posixz00,
		BgL_bgl_string1798za700za7za7_1821za7, "RGC: `^' regexps not supported.",
		31);
	      BGL_DEFINE_STRING(BGl_string1799z00zz__rgc_posixz00,
		BgL_bgl_string1799za700za7za7_1822za7, "RGC: `$' regexps not supported.",
		31);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_posixzd2ze3rgczd2envze3zz__rgc_posixz00,
		BgL_bgl_za762posixza7d2za7e3rg1823za7,
		BGl_z62posixzd2ze3rgcz53zz__rgc_posixz00, 0L, BUNSPEC, 1);
	      BGL_DEFINE_STRING(BGl_string1801z00zz__rgc_posixz00,
		BgL_bgl_string1801za700za7za7_1824za7, "all", 3);
	      BGL_DEFINE_STRING(BGl_string1803z00zz__rgc_posixz00,
		BgL_bgl_string1803za700za7za7_1825za7, "submatch", 8);
	      BGL_DEFINE_STRING(BGl_string1804z00zz__rgc_posixz00,
		BgL_bgl_string1804za700za7za7_1826za7,
		"RGC:subexpression has no terminating close parenthesis", 54);
	      BGL_DEFINE_STRING(BGl_string1805z00zz__rgc_posixz00,
		BgL_bgl_string1805za700za7za7_1827za7,
		"RGC:expression may not terminate with a backslash", 49);
	      BGL_DEFINE_STRING(BGl_string1807z00zz__rgc_posixz00,
		BgL_bgl_string1807za700za7za7_1828za7,
		"double-bracket regexps not supported.", 37);
	      BGL_DEFINE_STRING(BGl_string1809z00zz__rgc_posixz00,
		BgL_bgl_string1809za700za7za7_1829za7, "out", 3);
	      BGL_DEFINE_STRING(BGl_string1811z00zz__rgc_posixz00,
		BgL_bgl_string1811za700za7za7_1830za7, "in", 2);
	      BGL_DEFINE_STRING(BGl_string1812z00zz__rgc_posixz00,
		BgL_bgl_string1812za700za7za7_1831za7, "Illegal - in [...] regexp", 25);
	      BGL_DEFINE_STRING(BGl_string1813z00zz__rgc_posixz00,
		BgL_bgl_string1813za700za7za7_1832za7,
		"Missing close right bracket in regexp", 37);
	      BGL_DEFINE_STRING(BGl_string1814z00zz__rgc_posixz00,
		BgL_bgl_string1814za700za7za7_1833za7, "Missing close brace in regexp", 29);
	      BGL_DEFINE_STRING(BGl_string1815z00zz__rgc_posixz00,
		BgL_bgl_string1815za700za7za7_1834za7, "__rgc_posix", 11);
	      BGL_DEFINE_STRING(BGl_string1779z00zz__rgc_posixz00,
		BgL_bgl_string1779za700za7za7_1835za7,
		"RGC:Illegal Posix regexp -- terminated early", 44);
	      BGL_DEFINE_STRING(BGl_string1780z00zz__rgc_posixz00,
		BgL_bgl_string1780za700za7za7_1836za7,
		"/tmp/bigloo/runtime/Rgc/rgcposix.scm", 36);
	      BGL_DEFINE_STRING(BGl_string1781z00zz__rgc_posixz00,
		BgL_bgl_string1781za700za7za7_1837za7, "&posix->rgc", 11);
	      BGL_DEFINE_STRING(BGl_string1782z00zz__rgc_posixz00,
		BgL_bgl_string1782za700za7za7_1838za7, "bstring", 7);
	      BGL_DEFINE_STRING(BGl_string1784z00zz__rgc_posixz00,
		BgL_bgl_string1784za700za7za7_1839za7, "*", 1);
	      BGL_DEFINE_STRING(BGl_string1786z00zz__rgc_posixz00,
		BgL_bgl_string1786za700za7za7_1840za7, "+", 1);
	      BGL_DEFINE_STRING(BGl_string1788z00zz__rgc_posixz00,
		BgL_bgl_string1788za700za7za7_1841za7, "?", 1);

/* contant bindings */
	static void bgl_constant_bindings()
	{
		BGL_BIND_STRING(BGl_string1788z00zz__rgc_posixz00,
			BgL_bgl_string1788za700za7za7_1841za7);
		BGL_BIND_STRING(BGl_string1786z00zz__rgc_posixz00,
			BgL_bgl_string1786za700za7za7_1840za7);
		BGL_BIND_STRING(BGl_string1784z00zz__rgc_posixz00,
			BgL_bgl_string1784za700za7za7_1839za7);
		BGL_BIND_STRING(BGl_string1782z00zz__rgc_posixz00,
			BgL_bgl_string1782za700za7za7_1838za7);
		BGL_BIND_STRING(BGl_string1781z00zz__rgc_posixz00,
			BgL_bgl_string1781za700za7za7_1837za7);
		BGL_BIND_STRING(BGl_string1780z00zz__rgc_posixz00,
			BgL_bgl_string1780za700za7za7_1836za7);
		BGL_BIND_STRING(BGl_string1779z00zz__rgc_posixz00,
			BgL_bgl_string1779za700za7za7_1835za7);
		BGL_BIND_STRING(BGl_string1815z00zz__rgc_posixz00,
			BgL_bgl_string1815za700za7za7_1834za7);
		BGL_BIND_STRING(BGl_string1814z00zz__rgc_posixz00,
			BgL_bgl_string1814za700za7za7_1833za7);
		BGL_BIND_STRING(BGl_string1813z00zz__rgc_posixz00,
			BgL_bgl_string1813za700za7za7_1832za7);
		BGL_BIND_STRING(BGl_string1812z00zz__rgc_posixz00,
			BgL_bgl_string1812za700za7za7_1831za7);
		BGL_BIND_STRING(BGl_string1811z00zz__rgc_posixz00,
			BgL_bgl_string1811za700za7za7_1830za7);
		BGL_BIND_STRING(BGl_string1809z00zz__rgc_posixz00,
			BgL_bgl_string1809za700za7za7_1829za7);
		BGL_BIND_STRING(BGl_string1807z00zz__rgc_posixz00,
			BgL_bgl_string1807za700za7za7_1828za7);
		BGL_BIND_STRING(BGl_string1805z00zz__rgc_posixz00,
			BgL_bgl_string1805za700za7za7_1827za7);
		BGL_BIND_STRING(BGl_string1804z00zz__rgc_posixz00,
			BgL_bgl_string1804za700za7za7_1826za7);
		BGL_BIND_STRING(BGl_string1803z00zz__rgc_posixz00,
			BgL_bgl_string1803za700za7za7_1825za7);
		BGL_BIND_STRING(BGl_string1801z00zz__rgc_posixz00,
			BgL_bgl_string1801za700za7za7_1824za7);
		BGL_BIND_PROCEDURE(BGl_posixzd2ze3rgczd2envze3zz__rgc_posixz00,
			BgL_bgl_za762posixza7d2za7e3rg1823za7);
		BGL_BIND_STRING(BGl_string1799z00zz__rgc_posixz00,
			BgL_bgl_string1799za700za7za7_1822za7);
		BGL_BIND_STRING(BGl_string1798z00zz__rgc_posixz00,
			BgL_bgl_string1798za700za7za7_1821za7);
		BGL_BIND_STRING(BGl_string1797z00zz__rgc_posixz00,
			BgL_bgl_string1797za700za7za7_1820za7);
		BGL_BIND_STRING(BGl_string1795z00zz__rgc_posixz00,
			BgL_bgl_string1795za700za7za7_1819za7);
		BGL_BIND_STRING(BGl_string1793z00zz__rgc_posixz00,
			BgL_bgl_string1793za700za7za7_1818za7);
		BGL_BIND_STRING(BGl_string1792z00zz__rgc_posixz00,
			BgL_bgl_string1792za700za7za7_1817za7);
		BGL_BIND_STRING(BGl_string1790z00zz__rgc_posixz00,
			BgL_bgl_string1790za700za7za7_1816za7);
	}

/* 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_za2errzd2stringza2zd2zz__rgc_posixz00));
		ADD_ROOT((void *) (&BGl_list1806z00zz__rgc_posixz00));
		ADD_ROOT((void *) (&BGl_requirezd2initializa7ationz75zz__rgc_posixz00));
		ADD_ROOT((void *) (&BGl_symbol1783z00zz__rgc_posixz00));
		ADD_ROOT((void *) (&BGl_symbol1785z00zz__rgc_posixz00));
		ADD_ROOT((void *) (&BGl_symbol1787z00zz__rgc_posixz00));
		ADD_ROOT((void *) (&BGl_symbol1789z00zz__rgc_posixz00));
		ADD_ROOT((void *) (&BGl_symbol1791z00zz__rgc_posixz00));
		ADD_ROOT((void *) (&BGl_symbol1794z00zz__rgc_posixz00));
		ADD_ROOT((void *) (&BGl_symbol1796z00zz__rgc_posixz00));
		ADD_ROOT((void *) (&BGl_symbol1800z00zz__rgc_posixz00));
		ADD_ROOT((void *) (&BGl_symbol1802z00zz__rgc_posixz00));
		ADD_ROOT((void *) (&BGl_symbol1808z00zz__rgc_posixz00));
		ADD_ROOT((void *) (&BGl_symbol1810z00zz__rgc_posixz00));
#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__rgc_posixz00(long
		BgL_checksumz00_2339, char *BgL_fromz00_2340)
	{
		{
			if (CBOOL(BGl_requirezd2initializa7ationz75zz__rgc_posixz00))
				{
					BGl_requirezd2initializa7ationz75zz__rgc_posixz00 =
						BBOOL(((bool_t) 0));
					bgl_constant_bindings();
					BGl_gczd2rootszd2initz00zz__rgc_posixz00();
					BGl_cnstzd2initzd2zz__rgc_posixz00();
					BGl_importedzd2moduleszd2initz00zz__rgc_posixz00();
					return BGl_toplevelzd2initzd2zz__rgc_posixz00();
				}
			else
				{
					return BUNSPEC;
				}
		}

	}



/* cnst-init */
	obj_t BGl_cnstzd2initzd2zz__rgc_posixz00(void)
	{
		{	/* Rgc/rgcposix.scm 14 */
			BGl_symbol1783z00zz__rgc_posixz00 =
				bstring_to_symbol(BGl_string1784z00zz__rgc_posixz00);
			BGl_symbol1785z00zz__rgc_posixz00 =
				bstring_to_symbol(BGl_string1786z00zz__rgc_posixz00);
			BGl_symbol1787z00zz__rgc_posixz00 =
				bstring_to_symbol(BGl_string1788z00zz__rgc_posixz00);
			BGl_symbol1789z00zz__rgc_posixz00 =
				bstring_to_symbol(BGl_string1790z00zz__rgc_posixz00);
			BGl_symbol1791z00zz__rgc_posixz00 =
				bstring_to_symbol(BGl_string1792z00zz__rgc_posixz00);
			BGl_symbol1794z00zz__rgc_posixz00 =
				bstring_to_symbol(BGl_string1795z00zz__rgc_posixz00);
			BGl_symbol1796z00zz__rgc_posixz00 =
				bstring_to_symbol(BGl_string1797z00zz__rgc_posixz00);
			BGl_symbol1800z00zz__rgc_posixz00 =
				bstring_to_symbol(BGl_string1801z00zz__rgc_posixz00);
			BGl_symbol1802z00zz__rgc_posixz00 =
				bstring_to_symbol(BGl_string1803z00zz__rgc_posixz00);
			BGl_list1806z00zz__rgc_posixz00 =
				MAKE_YOUNG_PAIR(BCHAR(((unsigned char) '.')),
				MAKE_YOUNG_PAIR(BCHAR(((unsigned char) '=')),
					MAKE_YOUNG_PAIR(BCHAR(((unsigned char) ':')), BNIL)));
			BGl_symbol1808z00zz__rgc_posixz00 =
				bstring_to_symbol(BGl_string1809z00zz__rgc_posixz00);
			return (BGl_symbol1810z00zz__rgc_posixz00 =
				bstring_to_symbol(BGl_string1811z00zz__rgc_posixz00), BUNSPEC);
		}

	}



/* gc-roots-init */
	obj_t BGl_gczd2rootszd2initz00zz__rgc_posixz00(void)
	{
		{	/* Rgc/rgcposix.scm 14 */
			return bgl_gc_roots_register();
		}

	}



/* toplevel-init */
	obj_t BGl_toplevelzd2initzd2zz__rgc_posixz00(void)
	{
		{	/* Rgc/rgcposix.scm 14 */
			return (BGl_za2errzd2stringza2zd2zz__rgc_posixz00 = BUNSPEC, BUNSPEC);
		}

	}



/* posix->rgc */
	BGL_EXPORTED_DEF obj_t BGl_posixzd2ze3rgcz31zz__rgc_posixz00(obj_t BgL_sz00_3)
	{
		{	/* Rgc/rgcposix.scm 52 */
			BGl_za2errzd2stringza2zd2zz__rgc_posixz00 = BgL_sz00_3;
			{	/* Rgc/rgcposix.scm 54 */
				obj_t BgL_rgcz00_1199;

				BgL_rgcz00_1199 =
					BGl_parsezd2posixzd2expz00zz__rgc_posixz00(BgL_sz00_3, 0L);
				{	/* Rgc/rgcposix.scm 55 */
					obj_t BgL_iz00_1200;

					{	/* Rgc/rgcposix.scm 56 */
						obj_t BgL_tmpz00_1880;

						{	/* Rgc/rgcposix.scm 56 */
							int BgL_tmpz00_2368;

							BgL_tmpz00_2368 = (int) (1L);
							BgL_tmpz00_1880 = BGL_MVALUES_VAL(BgL_tmpz00_2368);
						}
						{	/* Rgc/rgcposix.scm 56 */
							int BgL_tmpz00_2371;

							BgL_tmpz00_2371 = (int) (1L);
							BGL_MVALUES_VAL_SET(BgL_tmpz00_2371, BUNSPEC);
						}
						BgL_iz00_1200 = BgL_tmpz00_1880;
					}
					if (((long) CINT(BgL_iz00_1200) == STRING_LENGTH(BgL_sz00_3)))
						{	/* Rgc/rgcposix.scm 56 */
							return BgL_rgcz00_1199;
						}
					else
						{	/* Rgc/rgcposix.scm 56 */
							return
								BGl_errorz00zz__errorz00(BFALSE,
								BGl_string1779z00zz__rgc_posixz00,
								BGl_za2errzd2stringza2zd2zz__rgc_posixz00);
						}
				}
			}
		}

	}



/* &posix->rgc */
	obj_t BGl_z62posixzd2ze3rgcz53zz__rgc_posixz00(obj_t BgL_envz00_2324,
		obj_t BgL_sz00_2325)
	{
		{	/* Rgc/rgcposix.scm 52 */
			{	/* Rgc/rgcposix.scm 53 */
				obj_t BgL_auxz00_2379;

				if (STRINGP(BgL_sz00_2325))
					{	/* Rgc/rgcposix.scm 53 */
						BgL_auxz00_2379 = BgL_sz00_2325;
					}
				else
					{
						obj_t BgL_auxz00_2382;

						BgL_auxz00_2382 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1780z00zz__rgc_posixz00,
							BINT(1819L), BGl_string1781z00zz__rgc_posixz00,
							BGl_string1782z00zz__rgc_posixz00, BgL_sz00_2325);
						FAILURE(BgL_auxz00_2382, BFALSE, BFALSE);
					}
				return BGl_posixzd2ze3rgcz31zz__rgc_posixz00(BgL_auxz00_2379);
			}
		}

	}



/* make-rgc-repeat */
	obj_t BGl_makezd2rgczd2repeatz00zz__rgc_posixz00(obj_t BgL_minz00_5,
		obj_t BgL_maxz00_6, obj_t BgL_rgcz00_7)
	{
		{	/* Rgc/rgcposix.scm 77 */
			{	/* Rgc/rgcposix.scm 79 */
				bool_t BgL_test1845z00_2387;

				if ((BgL_minz00_5 == BINT(0L)))
					{	/* Rgc/rgcposix.scm 79 */
						if (CBOOL(BgL_maxz00_6))
							{	/* Rgc/rgcposix.scm 79 */
								BgL_test1845z00_2387 = ((bool_t) 0);
							}
						else
							{	/* Rgc/rgcposix.scm 79 */
								BgL_test1845z00_2387 = ((bool_t) 1);
							}
					}
				else
					{	/* Rgc/rgcposix.scm 79 */
						BgL_test1845z00_2387 = ((bool_t) 0);
					}
				if (BgL_test1845z00_2387)
					{	/* Rgc/rgcposix.scm 80 */
						obj_t BgL_arg1261z00_1205;

						BgL_arg1261z00_1205 = MAKE_YOUNG_PAIR(BgL_rgcz00_7, BNIL);
						return
							MAKE_YOUNG_PAIR(BGl_symbol1783z00zz__rgc_posixz00,
							BgL_arg1261z00_1205);
					}
				else
					{	/* Rgc/rgcposix.scm 81 */
						bool_t BgL_test1848z00_2395;

						if ((BgL_minz00_5 == BINT(1L)))
							{	/* Rgc/rgcposix.scm 81 */
								if (CBOOL(BgL_maxz00_6))
									{	/* Rgc/rgcposix.scm 81 */
										BgL_test1848z00_2395 = ((bool_t) 0);
									}
								else
									{	/* Rgc/rgcposix.scm 81 */
										BgL_test1848z00_2395 = ((bool_t) 1);
									}
							}
						else
							{	/* Rgc/rgcposix.scm 81 */
								BgL_test1848z00_2395 = ((bool_t) 0);
							}
						if (BgL_test1848z00_2395)
							{	/* Rgc/rgcposix.scm 82 */
								obj_t BgL_arg1263z00_1207;

								BgL_arg1263z00_1207 = MAKE_YOUNG_PAIR(BgL_rgcz00_7, BNIL);
								return
									MAKE_YOUNG_PAIR(BGl_symbol1785z00zz__rgc_posixz00,
									BgL_arg1263z00_1207);
							}
						else
							{	/* Rgc/rgcposix.scm 83 */
								bool_t BgL_test1851z00_2403;

								if ((BgL_minz00_5 == BINT(0L)))
									{	/* Rgc/rgcposix.scm 83 */
										BgL_test1851z00_2403 = (BgL_maxz00_6 == BINT(1L));
									}
								else
									{	/* Rgc/rgcposix.scm 83 */
										BgL_test1851z00_2403 = ((bool_t) 0);
									}
								if (BgL_test1851z00_2403)
									{	/* Rgc/rgcposix.scm 84 */
										obj_t BgL_arg1265z00_1209;

										BgL_arg1265z00_1209 = MAKE_YOUNG_PAIR(BgL_rgcz00_7, BNIL);
										return
											MAKE_YOUNG_PAIR(BGl_symbol1787z00zz__rgc_posixz00,
											BgL_arg1265z00_1209);
									}
								else
									{	/* Rgc/rgcposix.scm 83 */
										if (CBOOL(BgL_maxz00_6))
											{	/* Rgc/rgcposix.scm 88 */
												obj_t BgL_arg1266z00_1210;

												{	/* Rgc/rgcposix.scm 88 */
													obj_t BgL_arg1267z00_1211;

													{	/* Rgc/rgcposix.scm 88 */
														obj_t BgL_arg1269z00_1212;

														BgL_arg1269z00_1212 =
															MAKE_YOUNG_PAIR(BgL_rgcz00_7, BNIL);
														BgL_arg1267z00_1211 =
															MAKE_YOUNG_PAIR(BgL_maxz00_6,
															BgL_arg1269z00_1212);
													}
													BgL_arg1266z00_1210 =
														MAKE_YOUNG_PAIR(BgL_minz00_5, BgL_arg1267z00_1211);
												}
												return
													MAKE_YOUNG_PAIR(BGl_symbol1789z00zz__rgc_posixz00,
													BgL_arg1266z00_1210);
											}
										else
											{	/* Rgc/rgcposix.scm 86 */
												obj_t BgL_arg1271z00_1213;

												{	/* Rgc/rgcposix.scm 86 */
													obj_t BgL_arg1274z00_1214;

													BgL_arg1274z00_1214 =
														MAKE_YOUNG_PAIR(BgL_rgcz00_7, BNIL);
													BgL_arg1271z00_1213 =
														MAKE_YOUNG_PAIR(BgL_minz00_5, BgL_arg1274z00_1214);
												}
												return
													MAKE_YOUNG_PAIR(BGl_symbol1791z00zz__rgc_posixz00,
													BgL_arg1271z00_1213);
											}
									}
							}
					}
			}
		}

	}



/* make-rgc-or */
	obj_t BGl_makezd2rgczd2orz00zz__rgc_posixz00(obj_t BgL_rgcsz00_8)
	{
		{	/* Rgc/rgcposix.scm 93 */
			if (NULLP(BgL_rgcsz00_8))
				{	/* Rgc/rgcposix.scm 95 */
					return
						BGl_errorz00zz__errorz00(BFALSE, BGl_string1793z00zz__rgc_posixz00,
						BGl_za2errzd2stringza2zd2zz__rgc_posixz00);
				}
			else
				{	/* Rgc/rgcposix.scm 95 */
					if (NULLP(CDR(BgL_rgcsz00_8)))
						{	/* Rgc/rgcposix.scm 97 */
							return CAR(BgL_rgcsz00_8);
						}
					else
						{	/* Rgc/rgcposix.scm 97 */
							return
								MAKE_YOUNG_PAIR(BGl_symbol1794z00zz__rgc_posixz00,
								BgL_rgcsz00_8);
						}
				}
		}

	}



/* make-rgc-sequence */
	obj_t BGl_makezd2rgczd2sequencez00zz__rgc_posixz00(obj_t BgL_rgcsz00_9)
	{
		{	/* Rgc/rgcposix.scm 105 */
			if (NULLP(BgL_rgcsz00_9))
				{	/* Rgc/rgcposix.scm 107 */
					return
						BGl_errorz00zz__errorz00(BFALSE, BGl_string1793z00zz__rgc_posixz00,
						BGl_za2errzd2stringza2zd2zz__rgc_posixz00);
				}
			else
				{	/* Rgc/rgcposix.scm 107 */
					if (NULLP(CDR(BgL_rgcsz00_9)))
						{	/* Rgc/rgcposix.scm 109 */
							return CAR(BgL_rgcsz00_9);
						}
					else
						{	/* Rgc/rgcposix.scm 109 */
							return
								MAKE_YOUNG_PAIR(BGl_symbol1796z00zz__rgc_posixz00,
								BgL_rgcsz00_9);
						}
				}
		}

	}



/* parse-posix-exp */
	obj_t BGl_parsezd2posixzd2expz00zz__rgc_posixz00(obj_t BgL_sz00_10,
		long BgL_iz00_11)
	{
		{	/* Rgc/rgcposix.scm 119 */
			{	/* Rgc/rgcposix.scm 120 */
				long BgL_lenz00_1223;

				BgL_lenz00_1223 = STRING_LENGTH(BgL_sz00_10);
				if ((BgL_iz00_11 < BgL_lenz00_1223))
					{
						long BgL_iz00_1227;
						obj_t BgL_branchesz00_1228;

						BgL_iz00_1227 = BgL_iz00_11;
						BgL_branchesz00_1228 = BNIL;
					BgL_zc3z04anonymousza31284ze3z87_1229:
						{	/* Rgc/rgcposix.scm 124 */
							obj_t BgL_branchz00_1230;

							BgL_branchz00_1230 =
								BGl_parsezd2posixzd2branchz00zz__rgc_posixz00(BgL_sz00_10,
								BgL_iz00_1227);
							{	/* Rgc/rgcposix.scm 125 */
								obj_t BgL_iz00_1231;

								{	/* Rgc/rgcposix.scm 126 */
									obj_t BgL_tmpz00_1891;

									{	/* Rgc/rgcposix.scm 126 */
										int BgL_tmpz00_2440;

										BgL_tmpz00_2440 = (int) (1L);
										BgL_tmpz00_1891 = BGL_MVALUES_VAL(BgL_tmpz00_2440);
									}
									{	/* Rgc/rgcposix.scm 126 */
										int BgL_tmpz00_2443;

										BgL_tmpz00_2443 = (int) (1L);
										BGL_MVALUES_VAL_SET(BgL_tmpz00_2443, BUNSPEC);
									}
									BgL_iz00_1231 = BgL_tmpz00_1891;
								}
								{	/* Rgc/rgcposix.scm 126 */
									obj_t BgL_branchesz00_1232;

									BgL_branchesz00_1232 =
										MAKE_YOUNG_PAIR(BgL_branchz00_1230, BgL_branchesz00_1228);
									{	/* Rgc/rgcposix.scm 127 */
										bool_t BgL_test1859z00_2447;

										if (((long) CINT(BgL_iz00_1231) < BgL_lenz00_1223))
											{	/* Rgc/rgcposix.scm 127 */
												BgL_test1859z00_2447 =
													(((unsigned char) '|') ==
													STRING_REF(BgL_sz00_10, (long) CINT(BgL_iz00_1231)));
											}
										else
											{	/* Rgc/rgcposix.scm 127 */
												BgL_test1859z00_2447 = ((bool_t) 0);
											}
										if (BgL_test1859z00_2447)
											{
												obj_t BgL_branchesz00_2457;
												long BgL_iz00_2454;

												BgL_iz00_2454 = ((long) CINT(BgL_iz00_1231) + 1L);
												BgL_branchesz00_2457 = BgL_branchesz00_1232;
												BgL_branchesz00_1228 = BgL_branchesz00_2457;
												BgL_iz00_1227 = BgL_iz00_2454;
												goto BgL_zc3z04anonymousza31284ze3z87_1229;
											}
										else
											{	/* Rgc/rgcposix.scm 129 */
												obj_t BgL_val0_1102z00_1237;

												BgL_val0_1102z00_1237 =
													BGl_makezd2rgczd2orz00zz__rgc_posixz00(bgl_reverse
													(BgL_branchesz00_1232));
												{	/* Rgc/rgcposix.scm 129 */
													int BgL_tmpz00_2460;

													BgL_tmpz00_2460 = (int) (2L);
													BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2460);
												}
												{	/* Rgc/rgcposix.scm 129 */
													int BgL_tmpz00_2463;

													BgL_tmpz00_2463 = (int) (1L);
													BGL_MVALUES_VAL_SET(BgL_tmpz00_2463, BgL_iz00_1231);
												}
												return BgL_val0_1102z00_1237;
											}
									}
								}
							}
						}
					}
				else
					{	/* Rgc/rgcposix.scm 121 */
						{	/* Rgc/rgcposix.scm 130 */
							int BgL_tmpz00_2466;

							BgL_tmpz00_2466 = (int) (2L);
							BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2466);
						}
						{	/* Rgc/rgcposix.scm 130 */
							obj_t BgL_auxz00_2471;
							int BgL_tmpz00_2469;

							BgL_auxz00_2471 = BINT(BgL_iz00_11);
							BgL_tmpz00_2469 = (int) (1L);
							BGL_MVALUES_VAL_SET(BgL_tmpz00_2469, BgL_auxz00_2471);
						}
						return BNIL;
					}
			}
		}

	}



/* parse-posix-branch */
	obj_t BGl_parsezd2posixzd2branchz00zz__rgc_posixz00(obj_t BgL_sz00_12,
		long BgL_iz00_13)
	{
		{	/* Rgc/rgcposix.scm 138 */
			{	/* Rgc/rgcposix.scm 139 */
				long BgL_lenz00_1245;

				BgL_lenz00_1245 = STRING_LENGTH(BgL_sz00_12);
				{
					obj_t BgL_iz00_1248;
					obj_t BgL_piecesz00_1249;

					BgL_iz00_1248 = BINT(BgL_iz00_13);
					BgL_piecesz00_1249 = BNIL;
				BgL_zc3z04anonymousza31294ze3z87_1250:
					if (((long) CINT(BgL_iz00_1248) < BgL_lenz00_1245))
						{	/* Rgc/rgcposix.scm 143 */
							obj_t BgL_piecez00_1252;

							BgL_piecez00_1252 =
								BGl_parsezd2posixzd2piecez00zz__rgc_posixz00(BgL_sz00_12,
								BgL_iz00_1248);
							{	/* Rgc/rgcposix.scm 144 */
								obj_t BgL_iz00_1253;

								{	/* Rgc/rgcposix.scm 145 */
									obj_t BgL_tmpz00_1902;

									{	/* Rgc/rgcposix.scm 145 */
										int BgL_tmpz00_2479;

										BgL_tmpz00_2479 = (int) (1L);
										BgL_tmpz00_1902 = BGL_MVALUES_VAL(BgL_tmpz00_2479);
									}
									{	/* Rgc/rgcposix.scm 145 */
										int BgL_tmpz00_2482;

										BgL_tmpz00_2482 = (int) (1L);
										BGL_MVALUES_VAL_SET(BgL_tmpz00_2482, BUNSPEC);
									}
									BgL_iz00_1253 = BgL_tmpz00_1902;
								}
								{	/* Rgc/rgcposix.scm 145 */
									obj_t BgL_piecesz00_1254;

									BgL_piecesz00_1254 =
										MAKE_YOUNG_PAIR(BgL_piecez00_1252, BgL_piecesz00_1249);
									if (((long) CINT(BgL_iz00_1253) < BgL_lenz00_1245))
										{	/* Rgc/rgcposix.scm 147 */
											unsigned char BgL_aux1042z00_1257;

											BgL_aux1042z00_1257 =
												STRING_REF(BgL_sz00_12, (long) CINT(BgL_iz00_1253));
											switch (BgL_aux1042z00_1257)
												{
												case ((unsigned char) ')'):
												case ((unsigned char) '|'):

													{	/* Rgc/rgcposix.scm 149 */
														obj_t BgL_val0_1106z00_1259;

														BgL_val0_1106z00_1259 =
															BGl_makezd2rgczd2sequencez00zz__rgc_posixz00
															(bgl_reverse(BgL_piecesz00_1254));
														{	/* Rgc/rgcposix.scm 149 */
															int BgL_tmpz00_2493;

															BgL_tmpz00_2493 = (int) (2L);
															BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2493);
														}
														{	/* Rgc/rgcposix.scm 149 */
															int BgL_tmpz00_2496;

															BgL_tmpz00_2496 = (int) (1L);
															BGL_MVALUES_VAL_SET(BgL_tmpz00_2496,
																BgL_iz00_1253);
														}
														return BgL_val0_1106z00_1259;
													}
													break;
												default:
													{
														obj_t BgL_piecesz00_2500;
														obj_t BgL_iz00_2499;

														BgL_iz00_2499 = BgL_iz00_1253;
														BgL_piecesz00_2500 = BgL_piecesz00_1254;
														BgL_piecesz00_1249 = BgL_piecesz00_2500;
														BgL_iz00_1248 = BgL_iz00_2499;
														goto BgL_zc3z04anonymousza31294ze3z87_1250;
													}
												}
										}
									else
										{	/* Rgc/rgcposix.scm 152 */
											obj_t BgL_val0_1108z00_1262;

											BgL_val0_1108z00_1262 =
												BGl_makezd2rgczd2sequencez00zz__rgc_posixz00(bgl_reverse
												(BgL_piecesz00_1254));
											{	/* Rgc/rgcposix.scm 152 */
												int BgL_tmpz00_2504;

												BgL_tmpz00_2504 = (int) (2L);
												BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2504);
											}
											{	/* Rgc/rgcposix.scm 152 */
												int BgL_tmpz00_2507;

												BgL_tmpz00_2507 = (int) (1L);
												BGL_MVALUES_VAL_SET(BgL_tmpz00_2507, BgL_iz00_1253);
											}
											return BgL_val0_1108z00_1262;
										}
								}
							}
						}
					else
						{	/* Rgc/rgcposix.scm 153 */
							obj_t BgL_val0_1110z00_1265;

							BgL_val0_1110z00_1265 =
								BGl_makezd2rgczd2sequencez00zz__rgc_posixz00(bgl_reverse
								(BgL_piecesz00_1249));
							{	/* Rgc/rgcposix.scm 153 */
								int BgL_tmpz00_2512;

								BgL_tmpz00_2512 = (int) (2L);
								BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2512);
							}
							{	/* Rgc/rgcposix.scm 153 */
								int BgL_tmpz00_2515;

								BgL_tmpz00_2515 = (int) (1L);
								BGL_MVALUES_VAL_SET(BgL_tmpz00_2515, BgL_iz00_1248);
							}
							return BgL_val0_1110z00_1265;
						}
				}
			}
		}

	}



/* parse-posix-piece */
	obj_t BGl_parsezd2posixzd2piecez00zz__rgc_posixz00(obj_t BgL_sz00_14,
		obj_t BgL_iz00_15)
	{
		{	/* Rgc/rgcposix.scm 161 */
			{	/* Rgc/rgcposix.scm 162 */
				long BgL_lenz00_1269;

				BgL_lenz00_1269 = STRING_LENGTH(BgL_sz00_14);
				{	/* Rgc/rgcposix.scm 163 */
					obj_t BgL_atomz00_1270;

					BgL_atomz00_1270 =
						BGl_parsezd2posixzd2atomz00zz__rgc_posixz00(BgL_sz00_14,
						BgL_iz00_15);
					{	/* Rgc/rgcposix.scm 164 */
						obj_t BgL_iz00_1271;

						{	/* Rgc/rgcposix.scm 165 */
							obj_t BgL_tmpz00_1908;

							{	/* Rgc/rgcposix.scm 165 */
								int BgL_tmpz00_2521;

								BgL_tmpz00_2521 = (int) (1L);
								BgL_tmpz00_1908 = BGL_MVALUES_VAL(BgL_tmpz00_2521);
							}
							{	/* Rgc/rgcposix.scm 165 */
								int BgL_tmpz00_2524;

								BgL_tmpz00_2524 = (int) (1L);
								BGL_MVALUES_VAL_SET(BgL_tmpz00_2524, BUNSPEC);
							}
							BgL_iz00_1271 = BgL_tmpz00_1908;
						}
						if (((long) CINT(BgL_iz00_1271) < BgL_lenz00_1269))
							{

								{	/* Rgc/rgcposix.scm 166 */
									unsigned char BgL_aux1044z00_1274;

									BgL_aux1044z00_1274 =
										STRING_REF(BgL_sz00_14, (long) CINT(BgL_iz00_1271));
									switch (BgL_aux1044z00_1274)
										{
										case ((unsigned char) '*'):
										case ((unsigned char) '+'):
										case ((unsigned char) '?'):

											{	/* Rgc/rgcposix.scm 168 */
												obj_t BgL_fromz00_1276;

												switch (BgL_aux1044z00_1274)
													{
													case ((unsigned char) '*'):

														{	/* Rgc/rgcposix.scm 170 */
															obj_t BgL_val0_1114z00_1283;

															BgL_val0_1114z00_1283 = BINT(0L);
															{	/* Rgc/rgcposix.scm 170 */
																int BgL_tmpz00_2533;

																BgL_tmpz00_2533 = (int) (2L);
																BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2533);
															}
															{	/* Rgc/rgcposix.scm 170 */
																int BgL_tmpz00_2536;

																BgL_tmpz00_2536 = (int) (1L);
																BGL_MVALUES_VAL_SET(BgL_tmpz00_2536, BFALSE);
															}
															BgL_fromz00_1276 = BgL_val0_1114z00_1283;
														} break;
													case ((unsigned char) '+'):

														{	/* Rgc/rgcposix.scm 171 */
															obj_t BgL_val0_1116z00_1285;

															BgL_val0_1116z00_1285 = BINT(1L);
															{	/* Rgc/rgcposix.scm 171 */
																int BgL_tmpz00_2540;

																BgL_tmpz00_2540 = (int) (2L);
																BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2540);
															}
															{	/* Rgc/rgcposix.scm 171 */
																int BgL_tmpz00_2543;

																BgL_tmpz00_2543 = (int) (1L);
																BGL_MVALUES_VAL_SET(BgL_tmpz00_2543, BFALSE);
															}
															BgL_fromz00_1276 = BgL_val0_1116z00_1285;
														} break;
													case ((unsigned char) '?'):

														{	/* Rgc/rgcposix.scm 172 */
															obj_t BgL_val0_1118z00_1287;

															BgL_val0_1118z00_1287 = BINT(0L);
															{	/* Rgc/rgcposix.scm 172 */
																int BgL_tmpz00_2547;

																BgL_tmpz00_2547 = (int) (2L);
																BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2547);
															}
															{	/* Rgc/rgcposix.scm 172 */
																obj_t BgL_auxz00_2552;
																int BgL_tmpz00_2550;

																BgL_auxz00_2552 = BINT(1L);
																BgL_tmpz00_2550 = (int) (1L);
																BGL_MVALUES_VAL_SET(BgL_tmpz00_2550,
																	BgL_auxz00_2552);
															}
															BgL_fromz00_1276 = BgL_val0_1118z00_1287;
														} break;
													default:
														BgL_fromz00_1276 = BUNSPEC;
													}
												{	/* Rgc/rgcposix.scm 169 */
													obj_t BgL_toz00_1277;

													{	/* Rgc/rgcposix.scm 173 */
														obj_t BgL_tmpz00_1915;

														{	/* Rgc/rgcposix.scm 173 */
															int BgL_tmpz00_2556;

															BgL_tmpz00_2556 = (int) (1L);
															BgL_tmpz00_1915 =
																BGL_MVALUES_VAL(BgL_tmpz00_2556);
														}
														{	/* Rgc/rgcposix.scm 173 */
															int BgL_tmpz00_2559;

															BgL_tmpz00_2559 = (int) (1L);
															BGL_MVALUES_VAL_SET(BgL_tmpz00_2559, BUNSPEC);
														}
														BgL_toz00_1277 = BgL_tmpz00_1915;
													}
													{	/* Rgc/rgcposix.scm 173 */
														obj_t BgL_val0_1120z00_1278;
														long BgL_val1_1121z00_1279;

														BgL_val0_1120z00_1278 =
															BGl_makezd2rgczd2repeatz00zz__rgc_posixz00
															(BgL_fromz00_1276, BgL_toz00_1277,
															BgL_atomz00_1270);
														BgL_val1_1121z00_1279 =
															((long) CINT(BgL_iz00_1271) + 1L);
														{	/* Rgc/rgcposix.scm 173 */
															int BgL_tmpz00_2565;

															BgL_tmpz00_2565 = (int) (2L);
															BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2565);
														}
														{	/* Rgc/rgcposix.scm 173 */
															obj_t BgL_auxz00_2570;
															int BgL_tmpz00_2568;

															BgL_auxz00_2570 = BINT(BgL_val1_1121z00_1279);
															BgL_tmpz00_2568 = (int) (1L);
															BGL_MVALUES_VAL_SET(BgL_tmpz00_2568,
																BgL_auxz00_2570);
														}
														return BgL_val0_1120z00_1278;
													}
												}
											}
											break;
										case ((unsigned char) '{'):

											{	/* Rgc/rgcposix.scm 175 */
												obj_t BgL_fromz00_1289;

												{	/* Rgc/rgcposix.scm 176 */
													obj_t BgL_arg1329z00_1294;

													if (INTEGERP(BgL_iz00_1271))
														{	/* Rgc/rgcposix.scm 176 */
															obj_t BgL_tmpz00_1919;

															BgL_tmpz00_1919 = BINT(0L);
															{	/* Rgc/rgcposix.scm 176 */
																bool_t BgL_test1865z00_2576;

																{	/* Rgc/rgcposix.scm 176 */
																	obj_t BgL_tmpz00_2577;

																	BgL_tmpz00_2577 = BINT(1L);
																	BgL_test1865z00_2576 =
																		BGL_ADDFX_OV(BgL_iz00_1271, BgL_tmpz00_2577,
																		BgL_tmpz00_1919);
																}
																if (BgL_test1865z00_2576)
																	{	/* Rgc/rgcposix.scm 176 */
																		BgL_arg1329z00_1294 =
																			bgl_bignum_add(bgl_long_to_bignum(
																				(long) CINT(BgL_iz00_1271)),
																			bgl_long_to_bignum(1L));
																	}
																else
																	{	/* Rgc/rgcposix.scm 176 */
																		BgL_arg1329z00_1294 = BgL_tmpz00_1919;
																	}
															}
														}
													else
														{	/* Rgc/rgcposix.scm 176 */
															BgL_arg1329z00_1294 =
																BGl_2zb2zb2zz__r4_numbers_6_5z00(BgL_iz00_1271,
																BINT(1L));
														}
													BgL_fromz00_1289 =
														BGl_parsezd2posixzd2bracesz00zz__rgc_posixz00
														(BgL_sz00_14, BgL_arg1329z00_1294);
												}
												{	/* Rgc/rgcposix.scm 176 */
													obj_t BgL_toz00_1290;
													obj_t BgL_iz00_1291;

													{	/* Rgc/rgcposix.scm 177 */
														obj_t BgL_tmpz00_1927;

														{	/* Rgc/rgcposix.scm 177 */
															int BgL_tmpz00_2587;

															BgL_tmpz00_2587 = (int) (1L);
															BgL_tmpz00_1927 =
																BGL_MVALUES_VAL(BgL_tmpz00_2587);
														}
														{	/* Rgc/rgcposix.scm 177 */
															int BgL_tmpz00_2590;

															BgL_tmpz00_2590 = (int) (1L);
															BGL_MVALUES_VAL_SET(BgL_tmpz00_2590, BUNSPEC);
														}
														BgL_toz00_1290 = BgL_tmpz00_1927;
													}
													{	/* Rgc/rgcposix.scm 177 */
														obj_t BgL_tmpz00_1928;

														{	/* Rgc/rgcposix.scm 177 */
															int BgL_tmpz00_2593;

															BgL_tmpz00_2593 = (int) (2L);
															BgL_tmpz00_1928 =
																BGL_MVALUES_VAL(BgL_tmpz00_2593);
														}
														{	/* Rgc/rgcposix.scm 177 */
															int BgL_tmpz00_2596;

															BgL_tmpz00_2596 = (int) (2L);
															BGL_MVALUES_VAL_SET(BgL_tmpz00_2596, BUNSPEC);
														}
														BgL_iz00_1291 = BgL_tmpz00_1928;
													}
													{	/* Rgc/rgcposix.scm 177 */
														obj_t BgL_val0_1122z00_1292;

														BgL_val0_1122z00_1292 =
															BGl_makezd2rgczd2repeatz00zz__rgc_posixz00
															(BgL_fromz00_1289, BgL_toz00_1290,
															BgL_atomz00_1270);
														{	/* Rgc/rgcposix.scm 177 */
															int BgL_tmpz00_2600;

															BgL_tmpz00_2600 = (int) (2L);
															BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2600);
														}
														{	/* Rgc/rgcposix.scm 177 */
															int BgL_tmpz00_2603;

															BgL_tmpz00_2603 = (int) (1L);
															BGL_MVALUES_VAL_SET(BgL_tmpz00_2603,
																BgL_iz00_1291);
														}
														return BgL_val0_1122z00_1292;
													}
												}
											}
											break;
										default:
											{	/* Rgc/rgcposix.scm 178 */
												int BgL_tmpz00_2606;

												BgL_tmpz00_2606 = (int) (2L);
												BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2606);
											}
											{	/* Rgc/rgcposix.scm 178 */
												int BgL_tmpz00_2609;

												BgL_tmpz00_2609 = (int) (1L);
												BGL_MVALUES_VAL_SET(BgL_tmpz00_2609, BgL_iz00_1271);
											}
											return BgL_atomz00_1270;
										}
								}
							}
						else
							{	/* Rgc/rgcposix.scm 165 */
								{	/* Rgc/rgcposix.scm 179 */
									int BgL_tmpz00_2613;

									BgL_tmpz00_2613 = (int) (2L);
									BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2613);
								}
								{	/* Rgc/rgcposix.scm 179 */
									int BgL_tmpz00_2616;

									BgL_tmpz00_2616 = (int) (1L);
									BGL_MVALUES_VAL_SET(BgL_tmpz00_2616, BgL_iz00_1271);
								}
								return BgL_atomz00_1270;
							}
					}
				}
			}
		}

	}



/* parse-posix-atom */
	obj_t BGl_parsezd2posixzd2atomz00zz__rgc_posixz00(obj_t BgL_sz00_16,
		obj_t BgL_iz00_17)
	{
		{	/* Rgc/rgcposix.scm 187 */
			{	/* Rgc/rgcposix.scm 188 */
				long BgL_lenz00_1299;

				BgL_lenz00_1299 = STRING_LENGTH(BgL_sz00_16);
				if (((long) CINT(BgL_iz00_17) < BgL_lenz00_1299))
					{	/* Rgc/rgcposix.scm 190 */
						unsigned char BgL_cz00_1302;

						BgL_cz00_1302 = STRING_REF(BgL_sz00_16, (long) CINT(BgL_iz00_17));
						{

							switch (BgL_cz00_1302)
								{
								case ((unsigned char) '^'):

									return
										BGl_errorz00zz__errorz00(BFALSE,
										BGl_string1798z00zz__rgc_posixz00,
										BGl_za2errzd2stringza2zd2zz__rgc_posixz00);
									break;
								case ((unsigned char) '$'):

									return
										BGl_errorz00zz__errorz00(BFALSE,
										BGl_string1799z00zz__rgc_posixz00,
										BGl_za2errzd2stringza2zd2zz__rgc_posixz00);
									break;
								case ((unsigned char) '.'):

									{	/* Rgc/rgcposix.scm 194 */
										obj_t BgL_val0_1128z00_1306;
										long BgL_val1_1129z00_1307;

										BgL_val0_1128z00_1306 = BGl_symbol1800z00zz__rgc_posixz00;
										BgL_val1_1129z00_1307 = ((long) CINT(BgL_iz00_17) + 1L);
										{	/* Rgc/rgcposix.scm 194 */
											int BgL_tmpz00_2629;

											BgL_tmpz00_2629 = (int) (2L);
											BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2629);
										}
										{	/* Rgc/rgcposix.scm 194 */
											obj_t BgL_auxz00_2634;
											int BgL_tmpz00_2632;

											BgL_auxz00_2634 = BINT(BgL_val1_1129z00_1307);
											BgL_tmpz00_2632 = (int) (1L);
											BGL_MVALUES_VAL_SET(BgL_tmpz00_2632, BgL_auxz00_2634);
										}
										return BgL_val0_1128z00_1306;
									}
									break;
								case ((unsigned char) '['):

									return
										BGl_parsezd2posixzd2bracketz00zz__rgc_posixz00(BgL_sz00_16,
										((long) CINT(BgL_iz00_17) + 1L));
									break;
								case ((unsigned char) '('):

									{	/* Rgc/rgcposix.scm 196 */
										obj_t BgL_rez00_1309;

										BgL_rez00_1309 =
											BGl_parsezd2posixzd2expz00zz__rgc_posixz00(BgL_sz00_16,
											((long) CINT(BgL_iz00_17) + 1L));
										{	/* Rgc/rgcposix.scm 197 */
											obj_t BgL_iz00_1310;

											{	/* Rgc/rgcposix.scm 198 */
												obj_t BgL_tmpz00_1939;

												{	/* Rgc/rgcposix.scm 198 */
													int BgL_tmpz00_2643;

													BgL_tmpz00_2643 = (int) (1L);
													BgL_tmpz00_1939 = BGL_MVALUES_VAL(BgL_tmpz00_2643);
												}
												{	/* Rgc/rgcposix.scm 198 */
													int BgL_tmpz00_2646;

													BgL_tmpz00_2646 = (int) (1L);
													BGL_MVALUES_VAL_SET(BgL_tmpz00_2646, BUNSPEC);
												}
												BgL_iz00_1310 = BgL_tmpz00_1939;
											}
											{	/* Rgc/rgcposix.scm 198 */
												bool_t BgL_test1867z00_2649;

												if (((long) CINT(BgL_iz00_1310) < BgL_lenz00_1299))
													{	/* Rgc/rgcposix.scm 198 */
														BgL_test1867z00_2649 =
															(((unsigned char) ')') ==
															STRING_REF(BgL_sz00_16,
																(long) CINT(BgL_iz00_1310)));
													}
												else
													{	/* Rgc/rgcposix.scm 198 */
														BgL_test1867z00_2649 = ((bool_t) 0);
													}
												if (BgL_test1867z00_2649)
													{	/* Rgc/rgcposix.scm 199 */
														obj_t BgL_val0_1130z00_1314;
														long BgL_val1_1131z00_1315;

														{	/* Rgc/rgcposix.scm 199 */
															obj_t BgL_arg1337z00_1316;

															BgL_arg1337z00_1316 =
																MAKE_YOUNG_PAIR(BgL_rez00_1309, BNIL);
															BgL_val0_1130z00_1314 =
																MAKE_YOUNG_PAIR
																(BGl_symbol1802z00zz__rgc_posixz00,
																BgL_arg1337z00_1316);
														}
														BgL_val1_1131z00_1315 =
															((long) CINT(BgL_iz00_1310) + 1L);
														{	/* Rgc/rgcposix.scm 199 */
															int BgL_tmpz00_2660;

															BgL_tmpz00_2660 = (int) (2L);
															BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2660);
														}
														{	/* Rgc/rgcposix.scm 199 */
															obj_t BgL_auxz00_2665;
															int BgL_tmpz00_2663;

															BgL_auxz00_2665 = BINT(BgL_val1_1131z00_1315);
															BgL_tmpz00_2663 = (int) (1L);
															BGL_MVALUES_VAL_SET(BgL_tmpz00_2663,
																BgL_auxz00_2665);
														}
														return BgL_val0_1130z00_1314;
													}
												else
													{	/* Rgc/rgcposix.scm 198 */
														return
															BGl_errorz00zz__errorz00(BFALSE,
															BGl_string1804z00zz__rgc_posixz00,
															BGl_za2errzd2stringza2zd2zz__rgc_posixz00);
													}
											}
										}
									}
									break;
								case ((unsigned char) '\\'):

									{	/* Rgc/rgcposix.scm 201 */
										long BgL_iz00_1320;

										BgL_iz00_1320 = ((long) CINT(BgL_iz00_17) + 1L);
										if ((BgL_iz00_1320 < BgL_lenz00_1299))
											{	/* Rgc/rgcposix.scm 203 */
												obj_t BgL_val0_1132z00_1322;
												long BgL_val1_1133z00_1323;

												{	/* Rgc/rgcposix.scm 203 */
													unsigned char BgL_arg1341z00_1324;

													BgL_arg1341z00_1324 =
														STRING_REF(BgL_sz00_16, BgL_iz00_1320);
													{	/* Rgc/rgcposix.scm 203 */
														obj_t BgL_list1342z00_1325;

														BgL_list1342z00_1325 =
															MAKE_YOUNG_PAIR(BCHAR(BgL_arg1341z00_1324), BNIL);
														BgL_val0_1132z00_1322 =
															BGl_listzd2ze3stringz31zz__r4_strings_6_7z00
															(BgL_list1342z00_1325);
												}}
												BgL_val1_1133z00_1323 = (BgL_iz00_1320 + 1L);
												{	/* Rgc/rgcposix.scm 203 */
													int BgL_tmpz00_2678;

													BgL_tmpz00_2678 = (int) (2L);
													BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2678);
												}
												{	/* Rgc/rgcposix.scm 203 */
													obj_t BgL_auxz00_2683;
													int BgL_tmpz00_2681;

													BgL_auxz00_2683 = BINT(BgL_val1_1133z00_1323);
													BgL_tmpz00_2681 = (int) (1L);
													BGL_MVALUES_VAL_SET(BgL_tmpz00_2681, BgL_auxz00_2683);
												}
												return BgL_val0_1132z00_1322;
											}
										else
											{	/* Rgc/rgcposix.scm 202 */
												return
													BGl_errorz00zz__errorz00(BFALSE,
													BGl_string1805z00zz__rgc_posixz00,
													BGl_za2errzd2stringza2zd2zz__rgc_posixz00);
											}
									}
									break;
								case ((unsigned char) ')'):
								case ((unsigned char) '|'):
								case ((unsigned char) '*'):
								case ((unsigned char) '+'):
								case ((unsigned char) '?'):
								case ((unsigned char) '{'):

									{	/* Rgc/rgcposix.scm 206 */
										int BgL_tmpz00_2687;

										BgL_tmpz00_2687 = (int) (2L);
										BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2687);
									}
									{	/* Rgc/rgcposix.scm 206 */
										int BgL_tmpz00_2690;

										BgL_tmpz00_2690 = (int) (1L);
										BGL_MVALUES_VAL_SET(BgL_tmpz00_2690, BgL_iz00_17);
									}
									return BNIL;
									break;
								default:
									{	/* Rgc/rgcposix.scm 207 */
										obj_t BgL_val0_1126z00_1328;
										long BgL_val1_1127z00_1329;

										{	/* Rgc/rgcposix.scm 207 */
											obj_t BgL_list1343z00_1330;

											BgL_list1343z00_1330 =
												MAKE_YOUNG_PAIR(BCHAR(BgL_cz00_1302), BNIL);
											BgL_val0_1126z00_1328 =
												BGl_listzd2ze3stringz31zz__r4_strings_6_7z00
												(BgL_list1343z00_1330);
										}
										BgL_val1_1127z00_1329 = ((long) CINT(BgL_iz00_17) + 1L);
										{	/* Rgc/rgcposix.scm 207 */
											int BgL_tmpz00_2698;

											BgL_tmpz00_2698 = (int) (2L);
											BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2698);
										}
										{	/* Rgc/rgcposix.scm 207 */
											obj_t BgL_auxz00_2703;
											int BgL_tmpz00_2701;

											BgL_auxz00_2703 = BINT(BgL_val1_1127z00_1329);
											BgL_tmpz00_2701 = (int) (1L);
											BGL_MVALUES_VAL_SET(BgL_tmpz00_2701, BgL_auxz00_2703);
										}
										return BgL_val0_1126z00_1328;
									}
								}
						}
					}
				else
					{	/* Rgc/rgcposix.scm 189 */
						{	/* Rgc/rgcposix.scm 208 */
							int BgL_tmpz00_2707;

							BgL_tmpz00_2707 = (int) (2L);
							BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2707);
						}
						{	/* Rgc/rgcposix.scm 208 */
							int BgL_tmpz00_2710;

							BgL_tmpz00_2710 = (int) (1L);
							BGL_MVALUES_VAL_SET(BgL_tmpz00_2710, BgL_iz00_17);
						}
						return BNIL;
					}
			}
		}

	}



/* parse-posix-bracket */
	obj_t BGl_parsezd2posixzd2bracketz00zz__rgc_posixz00(obj_t BgL_sz00_18,
		long BgL_iz00_19)
	{
		{	/* Rgc/rgcposix.scm 216 */
			{	/* Rgc/rgcposix.scm 217 */
				long BgL_lenz00_1334;

				BgL_lenz00_1334 = STRING_LENGTH(BgL_sz00_18);
				if ((BgL_iz00_19 < BgL_lenz00_1334))
					{	/* Rgc/rgcposix.scm 219 */
						bool_t BgL_negatezf3zf3_1336;

						{	/* Rgc/rgcposix.scm 220 */
							unsigned char BgL_cz00_1400;

							BgL_cz00_1400 = STRING_REF(BgL_sz00_18, BgL_iz00_19);
							if ((BgL_cz00_1400 == ((unsigned char) '^')))
								{	/* Rgc/rgcposix.scm 222 */
									long BgL_val1_1139z00_1403;

									BgL_val1_1139z00_1403 = (BgL_iz00_19 + 1L);
									{	/* Rgc/rgcposix.scm 222 */
										int BgL_tmpz00_2720;

										BgL_tmpz00_2720 = (int) (2L);
										BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2720);
									}
									{	/* Rgc/rgcposix.scm 222 */
										obj_t BgL_auxz00_2725;
										int BgL_tmpz00_2723;

										BgL_auxz00_2725 = BINT(BgL_val1_1139z00_1403);
										BgL_tmpz00_2723 = (int) (1L);
										BGL_MVALUES_VAL_SET(BgL_tmpz00_2723, BgL_auxz00_2725);
									}
									BgL_negatezf3zf3_1336 = ((bool_t) 1);
								}
							else
								{	/* Rgc/rgcposix.scm 221 */
									{	/* Rgc/rgcposix.scm 223 */
										int BgL_tmpz00_2728;

										BgL_tmpz00_2728 = (int) (2L);
										BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2728);
									}
									{	/* Rgc/rgcposix.scm 223 */
										obj_t BgL_auxz00_2733;
										int BgL_tmpz00_2731;

										BgL_auxz00_2733 = BINT(BgL_iz00_19);
										BgL_tmpz00_2731 = (int) (1L);
										BGL_MVALUES_VAL_SET(BgL_tmpz00_2731, BgL_auxz00_2733);
									}
									BgL_negatezf3zf3_1336 = ((bool_t) 0);
						}}
						{	/* Rgc/rgcposix.scm 220 */
							obj_t BgL_i0z00_1337;

							{	/* Rgc/rgcposix.scm 224 */
								obj_t BgL_tmpz00_1961;

								{	/* Rgc/rgcposix.scm 224 */
									int BgL_tmpz00_2736;

									BgL_tmpz00_2736 = (int) (1L);
									BgL_tmpz00_1961 = BGL_MVALUES_VAL(BgL_tmpz00_2736);
								}
								{	/* Rgc/rgcposix.scm 224 */
									int BgL_tmpz00_2739;

									BgL_tmpz00_2739 = (int) (1L);
									BGL_MVALUES_VAL_SET(BgL_tmpz00_2739, BUNSPEC);
								}
								BgL_i0z00_1337 = BgL_tmpz00_1961;
							}
							{
								obj_t BgL_iz00_1340;
								obj_t BgL_csetz00_1341;

								BgL_iz00_1340 = BgL_i0z00_1337;
								BgL_csetz00_1341 = BNIL;
							BgL_zc3z04anonymousza31347ze3z87_1342:
								if (((long) CINT(BgL_iz00_1340) < BgL_lenz00_1334))
									{	/* Rgc/rgcposix.scm 227 */
										unsigned char BgL_cz00_1344;

										BgL_cz00_1344 =
											STRING_REF(BgL_sz00_18, (long) CINT(BgL_iz00_1340));
										{

											switch (BgL_cz00_1344)
												{
												case ((unsigned char) '['):

													{	/* Rgc/rgcposix.scm 231 */
														long BgL_i1z00_1348;

														BgL_i1z00_1348 = ((long) CINT(BgL_iz00_1340) + 1L);
														{	/* Rgc/rgcposix.scm 233 */
															bool_t BgL_test1873z00_2749;

															if ((BgL_i1z00_1348 < BgL_lenz00_1334))
																{	/* Rgc/rgcposix.scm 233 */
																	BgL_test1873z00_2749 =
																		CBOOL
																		(BGl_memqz00zz__r4_pairs_and_lists_6_3z00
																		(BCHAR(STRING_REF(BgL_sz00_18,
																					BgL_i1z00_1348)),
																			BGl_list1806z00zz__rgc_posixz00));
																}
															else
																{	/* Rgc/rgcposix.scm 233 */
																	BgL_test1873z00_2749 = ((bool_t) 0);
																}
															if (BgL_test1873z00_2749)
																{	/* Rgc/rgcposix.scm 233 */
																	return
																		BGl_errorz00zz__errorz00(BFALSE,
																		BGl_string1807z00zz__rgc_posixz00,
																		BGl_za2errzd2stringza2zd2zz__rgc_posixz00);
																}
															else
																{	/* Rgc/rgcposix.scm 238 */
																	obj_t BgL_arg1353z00_1352;

																	BgL_arg1353z00_1352 =
																		MAKE_YOUNG_PAIR(BCHAR(((unsigned char)
																				'[')), BgL_csetz00_1341);
																	{
																		obj_t BgL_csetz00_2761;
																		obj_t BgL_iz00_2759;

																		BgL_iz00_2759 = BINT(BgL_i1z00_1348);
																		BgL_csetz00_2761 = BgL_arg1353z00_1352;
																		BgL_csetz00_1341 = BgL_csetz00_2761;
																		BgL_iz00_1340 = BgL_iz00_2759;
																		goto BgL_zc3z04anonymousza31347ze3z87_1342;
																	}
																}
														}
													}
													break;
												case ((unsigned char) ']'):

													if (
														((long) CINT(BgL_iz00_1340) ==
															(long) CINT(BgL_i0z00_1337)))
														{	/* Rgc/rgcposix.scm 242 */
															long BgL_arg1357z00_1356;
															obj_t BgL_arg1358z00_1357;

															BgL_arg1357z00_1356 =
																((long) CINT(BgL_iz00_1340) + 1L);
															BgL_arg1358z00_1357 =
																MAKE_YOUNG_PAIR(BCHAR(((unsigned char) ']')),
																BgL_csetz00_1341);
															{
																obj_t BgL_csetz00_2772;
																obj_t BgL_iz00_2770;

																BgL_iz00_2770 = BINT(BgL_arg1357z00_1356);
																BgL_csetz00_2772 = BgL_arg1358z00_1357;
																BgL_csetz00_1341 = BgL_csetz00_2772;
																BgL_iz00_1340 = BgL_iz00_2770;
																goto BgL_zc3z04anonymousza31347ze3z87_1342;
															}
														}
													else
														{	/* Rgc/rgcposix.scm 241 */
															if (BgL_negatezf3zf3_1336)
																{	/* Rgc/rgcposix.scm 246 */
																	obj_t BgL_val0_1142z00_1358;
																	long BgL_val1_1143z00_1359;

																	BgL_val0_1142z00_1358 =
																		MAKE_YOUNG_PAIR
																		(BGl_symbol1808z00zz__rgc_posixz00,
																		BgL_csetz00_1341);
																	BgL_val1_1143z00_1359 =
																		((long) CINT(BgL_iz00_1340) + 1L);
																	{	/* Rgc/rgcposix.scm 246 */
																		int BgL_tmpz00_2777;

																		BgL_tmpz00_2777 = (int) (2L);
																		BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2777);
																	}
																	{	/* Rgc/rgcposix.scm 246 */
																		obj_t BgL_auxz00_2782;
																		int BgL_tmpz00_2780;

																		BgL_auxz00_2782 =
																			BINT(BgL_val1_1143z00_1359);
																		BgL_tmpz00_2780 = (int) (1L);
																		BGL_MVALUES_VAL_SET(BgL_tmpz00_2780,
																			BgL_auxz00_2782);
																	}
																	return BgL_val0_1142z00_1358;
																}
															else
																{	/* Rgc/rgcposix.scm 247 */
																	obj_t BgL_val0_1144z00_1360;
																	long BgL_val1_1145z00_1361;

																	BgL_val0_1144z00_1360 =
																		MAKE_YOUNG_PAIR
																		(BGl_symbol1810z00zz__rgc_posixz00,
																		BgL_csetz00_1341);
																	BgL_val1_1145z00_1361 =
																		((long) CINT(BgL_iz00_1340) + 1L);
																	{	/* Rgc/rgcposix.scm 247 */
																		int BgL_tmpz00_2788;

																		BgL_tmpz00_2788 = (int) (2L);
																		BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2788);
																	}
																	{	/* Rgc/rgcposix.scm 247 */
																		obj_t BgL_auxz00_2793;
																		int BgL_tmpz00_2791;

																		BgL_auxz00_2793 =
																			BINT(BgL_val1_1145z00_1361);
																		BgL_tmpz00_2791 = (int) (1L);
																		BGL_MVALUES_VAL_SET(BgL_tmpz00_2791,
																			BgL_auxz00_2793);
																	}
																	return BgL_val0_1144z00_1360;
																}
														}
													break;
												case ((unsigned char) '-'):

													{	/* Rgc/rgcposix.scm 250 */
														bool_t BgL_test1877z00_2796;

														if (
															((long) CINT(BgL_iz00_1340) ==
																(long) CINT(BgL_i0z00_1337)))
															{	/* Rgc/rgcposix.scm 250 */
																BgL_test1877z00_2796 = ((bool_t) 1);
															}
														else
															{	/* Rgc/rgcposix.scm 250 */
																if (
																	(((long) CINT(BgL_iz00_1340) + 1L) <
																		BgL_lenz00_1334))
																	{	/* Rgc/rgcposix.scm 251 */
																		BgL_test1877z00_2796 =
																			(((unsigned char) ']') ==
																			STRING_REF(BgL_sz00_18,
																				((long) CINT(BgL_iz00_1340) + 1L)));
																	}
																else
																	{	/* Rgc/rgcposix.scm 251 */
																		BgL_test1877z00_2796 = ((bool_t) 0);
																	}
															}
														if (BgL_test1877z00_2796)
															{	/* Rgc/rgcposix.scm 253 */
																long BgL_arg1364z00_1368;
																obj_t BgL_arg1365z00_1369;

																BgL_arg1364z00_1368 =
																	((long) CINT(BgL_iz00_1340) + 1L);
																BgL_arg1365z00_1369 =
																	MAKE_YOUNG_PAIR(BCHAR(((unsigned char) '-')),
																	BgL_csetz00_1341);
																{
																	obj_t BgL_csetz00_2815;
																	obj_t BgL_iz00_2813;

																	BgL_iz00_2813 = BINT(BgL_arg1364z00_1368);
																	BgL_csetz00_2815 = BgL_arg1365z00_1369;
																	BgL_csetz00_1341 = BgL_csetz00_2815;
																	BgL_iz00_1340 = BgL_iz00_2813;
																	goto BgL_zc3z04anonymousza31347ze3z87_1342;
																}
															}
														else
															{	/* Rgc/rgcposix.scm 250 */
																return
																	BGl_errorz00zz__errorz00(BFALSE,
																	BGl_string1812z00zz__rgc_posixz00,
																	BGl_za2errzd2stringza2zd2zz__rgc_posixz00);
															}
													}
													break;
												default:
													{	/* Rgc/rgcposix.scm 260 */
														long BgL_iz00_1375;

														BgL_iz00_1375 = ((long) CINT(BgL_iz00_1340) + 1L);
														{	/* Rgc/rgcposix.scm 261 */
															bool_t BgL_test1880z00_2819;

															if (((BgL_iz00_1375 + 1L) < BgL_lenz00_1334))
																{	/* Rgc/rgcposix.scm 261 */
																	BgL_test1880z00_2819 =
																		(((unsigned char) '-') ==
																		STRING_REF(BgL_sz00_18, BgL_iz00_1375));
																}
															else
																{	/* Rgc/rgcposix.scm 261 */
																	BgL_test1880z00_2819 = ((bool_t) 0);
																}
															if (BgL_test1880z00_2819)
																{	/* Rgc/rgcposix.scm 264 */
																	long BgL_iz00_1381;

																	BgL_iz00_1381 = (BgL_iz00_1375 + 1L);
																	{	/* Rgc/rgcposix.scm 264 */
																		long BgL_toz00_1382;

																		BgL_toz00_1382 =
																			(STRING_REF(BgL_sz00_18, BgL_iz00_1381));
																		{	/* Rgc/rgcposix.scm 265 */

																			{	/* Rgc/rgcposix.scm 266 */
																				long BgL_g1050z00_1383;

																				BgL_g1050z00_1383 = (BgL_cz00_1344);
																				{
																					long BgL_jz00_2000;
																					obj_t BgL_csetz00_2001;

																					BgL_jz00_2000 = BgL_g1050z00_1383;
																					BgL_csetz00_2001 = BgL_csetz00_1341;
																				BgL_laapz00_1999:
																					if ((BgL_jz00_2000 > BgL_toz00_1382))
																						{	/* Rgc/rgcposix.scm 269 */
																							long BgL_arg1376z00_2008;

																							BgL_arg1376z00_2008 =
																								(BgL_iz00_1381 + 1L);
																							{
																								obj_t BgL_csetz00_2834;
																								obj_t BgL_iz00_2832;

																								BgL_iz00_2832 =
																									BINT(BgL_arg1376z00_2008);
																								BgL_csetz00_2834 =
																									BgL_csetz00_2001;
																								BgL_csetz00_1341 =
																									BgL_csetz00_2834;
																								BgL_iz00_1340 = BgL_iz00_2832;
																								goto
																									BgL_zc3z04anonymousza31347ze3z87_1342;
																							}
																						}
																					else
																						{	/* Rgc/rgcposix.scm 271 */
																							long BgL_arg1377z00_2009;
																							obj_t BgL_arg1378z00_2010;

																							BgL_arg1377z00_2009 =
																								(BgL_jz00_2000 + 1L);
																							{	/* Rgc/rgcposix.scm 272 */
																								unsigned char
																									BgL_arg1379z00_2011;
																								BgL_arg1379z00_2011 =
																									(BgL_jz00_2000);
																								BgL_arg1378z00_2010 =
																									MAKE_YOUNG_PAIR(BCHAR
																									(BgL_arg1379z00_2011),
																									BgL_csetz00_2001);
																							}
																							{
																								obj_t BgL_csetz00_2840;
																								long BgL_jz00_2839;

																								BgL_jz00_2839 =
																									BgL_arg1377z00_2009;
																								BgL_csetz00_2840 =
																									BgL_arg1378z00_2010;
																								BgL_csetz00_2001 =
																									BgL_csetz00_2840;
																								BgL_jz00_2000 = BgL_jz00_2839;
																								goto BgL_laapz00_1999;
																							}
																						}
																				}
																			}
																		}
																	}
																}
															else
																{	/* Rgc/rgcposix.scm 275 */
																	obj_t BgL_arg1381z00_1395;

																	BgL_arg1381z00_1395 =
																		MAKE_YOUNG_PAIR(BCHAR(BgL_cz00_1344),
																		BgL_csetz00_1341);
																	{
																		obj_t BgL_csetz00_2845;
																		obj_t BgL_iz00_2843;

																		BgL_iz00_2843 = BINT(BgL_iz00_1375);
																		BgL_csetz00_2845 = BgL_arg1381z00_1395;
																		BgL_csetz00_1341 = BgL_csetz00_2845;
																		BgL_iz00_1340 = BgL_iz00_2843;
																		goto BgL_zc3z04anonymousza31347ze3z87_1342;
																	}
																}
														}
													}
												}
										}
									}
								else
									{	/* Rgc/rgcposix.scm 226 */
										return
											BGl_errorz00zz__errorz00(BFALSE,
											BGl_string1813z00zz__rgc_posixz00,
											BGl_za2errzd2stringza2zd2zz__rgc_posixz00);
									}
							}
						}
					}
				else
					{	/* Rgc/rgcposix.scm 218 */
						return
							BGl_errorz00zz__errorz00(BFALSE,
							BGl_string1813z00zz__rgc_posixz00,
							BGl_za2errzd2stringza2zd2zz__rgc_posixz00);
					}
			}
		}

	}



/* parse-posix-braces */
	obj_t BGl_parsezd2posixzd2bracesz00zz__rgc_posixz00(obj_t BgL_sz00_20,
		obj_t BgL_iz00_21)
	{
		{	/* Rgc/rgcposix.scm 285 */
			{	/* Rgc/rgcposix.scm 296 */
				obj_t BgL_commaz00_1407;
				obj_t BgL_rbz00_1408;

				{	/* Rgc/rgcposix.scm 287 */
					long BgL_lenz00_2053;

					BgL_lenz00_2053 = STRING_LENGTH(BgL_sz00_20);
					{
						obj_t BgL_offsetz00_2055;

						BgL_offsetz00_2055 = BgL_iz00_21;
					BgL_loopz00_2054:
						if (((long) CINT(BgL_offsetz00_2055) >= BgL_lenz00_2053))
							{	/* Rgc/rgcposix.scm 290 */
								BgL_commaz00_1407 = BFALSE;
							}
						else
							{	/* Rgc/rgcposix.scm 290 */
								if (
									(STRING_REF(BgL_sz00_20,
											(long) CINT(BgL_offsetz00_2055)) ==
										((unsigned char) ',')))
									{	/* Rgc/rgcposix.scm 292 */
										BgL_commaz00_1407 = BgL_offsetz00_2055;
									}
								else
									{
										obj_t BgL_offsetz00_2857;

										BgL_offsetz00_2857 = ADDFX(BgL_offsetz00_2055, BINT(1L));
										BgL_offsetz00_2055 = BgL_offsetz00_2857;
										goto BgL_loopz00_2054;
									}
							}
					}
				}
				{	/* Rgc/rgcposix.scm 287 */
					long BgL_lenz00_2068;

					BgL_lenz00_2068 = STRING_LENGTH(BgL_sz00_20);
					{
						obj_t BgL_offsetz00_2070;

						BgL_offsetz00_2070 = BgL_iz00_21;
					BgL_loopz00_2069:
						if (((long) CINT(BgL_offsetz00_2070) >= BgL_lenz00_2068))
							{	/* Rgc/rgcposix.scm 290 */
								BgL_rbz00_1408 = BFALSE;
							}
						else
							{	/* Rgc/rgcposix.scm 290 */
								if (
									(STRING_REF(BgL_sz00_20,
											(long) CINT(BgL_offsetz00_2070)) ==
										((unsigned char) '}')))
									{	/* Rgc/rgcposix.scm 292 */
										BgL_rbz00_1408 = BgL_offsetz00_2070;
									}
								else
									{
										obj_t BgL_offsetz00_2868;

										BgL_offsetz00_2868 = ADDFX(BgL_offsetz00_2070, BINT(1L));
										BgL_offsetz00_2070 = BgL_offsetz00_2868;
										goto BgL_loopz00_2069;
									}
							}
					}
				}
				if (CBOOL(BgL_rbz00_1408))
					{	/* Rgc/rgcposix.scm 299 */
						bool_t BgL_test1888z00_2873;

						if (CBOOL(BgL_commaz00_1407))
							{	/* Rgc/rgcposix.scm 299 */
								BgL_test1888z00_2873 =
									(
									(long) CINT(BgL_commaz00_1407) < (long) CINT(BgL_rbz00_1408));
							}
						else
							{	/* Rgc/rgcposix.scm 299 */
								BgL_test1888z00_2873 = ((bool_t) 0);
							}
						if (BgL_test1888z00_2873)
							{	/* Rgc/rgcposix.scm 300 */
								obj_t BgL_val0_1146z00_1410;
								obj_t BgL_val1_1147z00_1411;
								long BgL_val2_1148z00_1412;

								{	/* Rgc/rgcposix.scm 300 */
									obj_t BgL_arg1386z00_1413;

									BgL_arg1386z00_1413 =
										c_substring(BgL_sz00_20,
										(long) CINT(BgL_iz00_21), (long) CINT(BgL_commaz00_1407));
									{	/* Ieee/number.scm 173 */

										BgL_val0_1146z00_1410 =
											BGl_stringzd2ze3numberz31zz__r4_numbers_6_5z00
											(BgL_arg1386z00_1413, BINT(10L));
								}}
								if (
									(((long) CINT(BgL_commaz00_1407) + 1L) ==
										(long) CINT(BgL_rbz00_1408)))
									{	/* Rgc/rgcposix.scm 301 */
										BgL_val1_1147z00_1411 = BFALSE;
									}
								else
									{	/* Rgc/rgcposix.scm 302 */
										obj_t BgL_arg1388z00_1417;

										BgL_arg1388z00_1417 =
											c_substring(BgL_sz00_20,
											((long) CINT(BgL_commaz00_1407) + 1L),
											(long) CINT(BgL_rbz00_1408));
										{	/* Ieee/number.scm 173 */

											BgL_val1_1147z00_1411 =
												BGl_stringzd2ze3numberz31zz__r4_numbers_6_5z00
												(BgL_arg1388z00_1417, BINT(10L));
									}}
								BgL_val2_1148z00_1412 = ((long) CINT(BgL_rbz00_1408) + 1L);
								{	/* Rgc/rgcposix.scm 300 */
									int BgL_tmpz00_2897;

									BgL_tmpz00_2897 = (int) (3L);
									BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2897);
								}
								{	/* Rgc/rgcposix.scm 300 */
									int BgL_tmpz00_2900;

									BgL_tmpz00_2900 = (int) (1L);
									BGL_MVALUES_VAL_SET(BgL_tmpz00_2900, BgL_val1_1147z00_1411);
								}
								{	/* Rgc/rgcposix.scm 300 */
									obj_t BgL_auxz00_2905;
									int BgL_tmpz00_2903;

									BgL_auxz00_2905 = BINT(BgL_val2_1148z00_1412);
									BgL_tmpz00_2903 = (int) (2L);
									BGL_MVALUES_VAL_SET(BgL_tmpz00_2903, BgL_auxz00_2905);
								}
								return BgL_val0_1146z00_1410;
							}
						else
							{	/* Rgc/rgcposix.scm 304 */
								obj_t BgL_mz00_1422;

								{	/* Rgc/rgcposix.scm 304 */
									obj_t BgL_arg1391z00_1426;

									BgL_arg1391z00_1426 =
										c_substring(BgL_sz00_20,
										(long) CINT(BgL_iz00_21), (long) CINT(BgL_rbz00_1408));
									{	/* Ieee/number.scm 173 */

										BgL_mz00_1422 =
											BGl_stringzd2ze3numberz31zz__r4_numbers_6_5z00
											(BgL_arg1391z00_1426, BINT(10L));
								}}
								{	/* Rgc/rgcposix.scm 305 */
									long BgL_val2_1151z00_1425;

									BgL_val2_1151z00_1425 = ((long) CINT(BgL_rbz00_1408) + 1L);
									{	/* Rgc/rgcposix.scm 305 */
										int BgL_tmpz00_2915;

										BgL_tmpz00_2915 = (int) (3L);
										BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2915);
									}
									{	/* Rgc/rgcposix.scm 305 */
										int BgL_tmpz00_2918;

										BgL_tmpz00_2918 = (int) (1L);
										BGL_MVALUES_VAL_SET(BgL_tmpz00_2918, BgL_mz00_1422);
									}
									{	/* Rgc/rgcposix.scm 305 */
										obj_t BgL_auxz00_2923;
										int BgL_tmpz00_2921;

										BgL_auxz00_2923 = BINT(BgL_val2_1151z00_1425);
										BgL_tmpz00_2921 = (int) (2L);
										BGL_MVALUES_VAL_SET(BgL_tmpz00_2921, BgL_auxz00_2923);
									}
									return BgL_mz00_1422;
								}
							}
					}
				else
					{	/* Rgc/rgcposix.scm 298 */
						return
							BGl_errorz00zz__errorz00(BFALSE,
							BGl_string1814z00zz__rgc_posixz00,
							BGl_za2errzd2stringza2zd2zz__rgc_posixz00);
					}
			}
		}

	}



/* object-init */
	obj_t BGl_objectzd2initzd2zz__rgc_posixz00(void)
	{
		{	/* Rgc/rgcposix.scm 14 */
			return BUNSPEC;
		}

	}



/* generic-init */
	obj_t BGl_genericzd2initzd2zz__rgc_posixz00(void)
	{
		{	/* Rgc/rgcposix.scm 14 */
			return BUNSPEC;
		}

	}



/* method-init */
	obj_t BGl_methodzd2initzd2zz__rgc_posixz00(void)
	{
		{	/* Rgc/rgcposix.scm 14 */
			return BUNSPEC;
		}

	}



/* imported-modules-init */
	obj_t BGl_importedzd2moduleszd2initz00zz__rgc_posixz00(void)
	{
		{	/* Rgc/rgcposix.scm 14 */
			return
				BGl_modulezd2initializa7ationz75zz__errorz00(88804785L,
				BSTRING_TO_STRING(BGl_string1815z00zz__rgc_posixz00));
		}

	}

#ifdef __cplusplus
}
#endif
