From 82ad7da253f4a1a042b20c441f22ad1138739a3d Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Tue, 7 Oct 2008 14:56:26 +0000 Subject: [PATCH] change -S, -X, and -z flags for mz/mr svn: r11964 --- collects/scribblings/inside/hooks.scrbl | 17 +- collects/scribblings/reference/collects.scrbl | 12 +- collects/scribblings/reference/startup.scrbl | 39 +- doc/release-notes/mred/HISTORY.txt | 6 + doc/release-notes/mzscheme/HISTORY.txt | 4 + src/mzscheme/cmdline.inc | 88 +-- src/mzscheme/include/scheme.h | 1 + src/mzscheme/src/cstartup.inc | 503 +++++++++--------- src/mzscheme/src/eval.c | 12 +- src/mzscheme/src/salloc.c | 5 +- src/mzscheme/src/schemef.h | 10 +- src/mzscheme/src/startup.inc | 8 +- src/mzscheme/src/startup.ss | 8 +- 13 files changed, 378 insertions(+), 335 deletions(-) diff --git a/collects/scribblings/inside/hooks.scrbl b/collects/scribblings/inside/hooks.scrbl index 0c8e6453bc..8e95433539 100644 --- a/collects/scribblings/inside/hooks.scrbl +++ b/collects/scribblings/inside/hooks.scrbl @@ -57,10 +57,19 @@ Sets the path to be returned by @scheme[(find-system-path 'collects-dir)].} -@function[(void scheme_init_collection_paths +@function[(void scheme_init_collection_paths_post [Scheme_Env* env] - [Scheme_Object* extra_paths])]{ + [Scheme_Object* pre_extra_paths] + [Scheme_Object* post_extra_paths])]{ Initializes the @scheme[current-library-collection-paths] parameter -using @scheme[find-library-collection-paths]. The @var{extra_paths} -argument is propagated to @scheme[find-library-collection-paths].} +using @scheme[find-library-collection-paths]. The +@var{pre_extra_paths} and @var{post_extra-paths} arguments are +propagated to @scheme[find-library-collection-paths].} + +@function[(void scheme_init_collection_paths + [Scheme_Env* env] + [Scheme_Object* pre_extra_paths])]{ + +Like @cpp{scheme_init_collection_paths_post}, but with @scheme[null] +as the last argument.} diff --git a/collects/scribblings/reference/collects.scrbl b/collects/scribblings/reference/collects.scrbl index 12425b23b1..7b96a18cad 100644 --- a/collects/scribblings/reference/collects.scrbl +++ b/collects/scribblings/reference/collects.scrbl @@ -63,7 +63,8 @@ is initialized in @exec{mzscheme} to the result of @scheme[(find-library-collection-paths)]. -@defproc[(find-library-collection-paths [extras (listof path-string?) null]) +@defproc[(find-library-collection-paths [pre-extras (listof path-string?) null] + [post-extras (listof path-string?) null]) (listof path?)]{ Produces a list of paths as follows: @@ -75,14 +76,19 @@ Produces a list of paths as follows: default collection path list, unless the value of the @scheme[use-user-specific-search-paths] parameter is @scheme[#f].} - @item{Extra directories provided in @scheme[extras] are included next, - converted to complete paths relative to the executable.} + @item{Extra directories provided in @scheme[pre-extras] are included + next to the default collection path list, converted to complete + paths relative to the executable.} @item{If the directory specified by @scheme[(find-system-path 'collects-dir)] is absolute, or if it is relative (to the executable) and it exists, then it is added to the end of the default collection path list.} + @item{Extra directories provided in @scheme[post-extras] are included + last in the default collection path list, converted to complete + paths relative to the executable.} + @item{If the @indexed-envvar{PLTCOLLECTS} environment variable is defined, it is combined with the default list using @scheme[path-list-string->path-list]. If it is not defined, the diff --git a/collects/scribblings/reference/startup.scrbl b/collects/scribblings/reference/startup.scrbl index a7cd4531bd..92b19589f9 100644 --- a/collects/scribblings/reference/startup.scrbl +++ b/collects/scribblings/reference/startup.scrbl @@ -49,11 +49,11 @@ the implemetation of @schememodname[scheme/base], and The first action of MzScheme or MrEd is to initialize @scheme[current-library-collection-paths] to the result of -@scheme[(find-library-collection-paths _extras)], where -@scheme[_extras] are extra directory paths provided in order in the -command line with @Flag{S}/@DFlag{search}. An executable created from -the MzScheme or MrEd executable can embed additional paths that are -appended to @scheme[_extras]. +@scheme[(find-library-collection-paths _pre-extras _extras)], where +@scheme[_pre-extras] is normally @scheme[null] and @scheme[_extras] +are extra directory paths provided in order in the command line with +@Flag{S}/@DFlag{search}. An executable created from the MzScheme or +MrEd executable can embed paths used as @scheme[_pre-extras]. MzScheme and MrEd next @scheme[require] @schememodname[scheme/init] and @schememodname[scheme/gui/init], respectively, but only if the @@ -62,7 +62,7 @@ command line does not specify a @scheme[require] flag @Flag{u}/@DFlag{require-script}) before any @scheme[eval], @scheme[load], or read-eval-print-loop flag (@Flag{e}/@DFlag{eval}, @Flag{f}/@DFlag{load}, @Flag{r}/@DFlag{script}, @Flag{m}/@DFlag{main}, -@Flag{i}/@DFlag{repl}, or @Flag{z}/@DFlag{text-repl}). The +or @Flag{i}/@DFlag{repl}). The initialization library can be changed with the @Flag{I} @tech{configuration option}. @@ -78,7 +78,7 @@ evaluation if no command line flags are provided other than @tech{configuration options}. If any command-line argument is provided that is not a @tech{configuration option}, then the read-eval-print-loop is not started, unless the @Flag{i}/@DFlag{repl} -or @Flag{z}/@DFlag{text-repl} flag is provided on the command line to +flag is provided on the command line to specifically re-enable it. In addition, just before the command line is started, MzScheme loads the file @scheme[(find-system-path 'init-file)] and MrEd loads the file @@ -184,12 +184,9 @@ flags: loop, using either @scheme[read-eval-print-loop] (MzScheme) or @scheme[graphical-read-eval-print-loop] (MrEd) after showing @scheme[(banner)] and loading @scheme[(find-system-path - 'init-file)].} - - @item{@FlagFirst{z} or @DFlagFirst{text-repl} : MrEd only; like - @Flag{i}/@DFlag{repl}, but uses - @scheme[textual-read-eval-print-loop] instead of - @scheme[graphical-read-eval-print-loop].} + 'init-file)]. For MrEd, supply the @Flag{z}/@DFlag{text-repl} + configuration option to use @scheme[read-eval-print-loop] + instead of @scheme[graphical-read-eval-print-loop].} @item{@FlagFirst{n} or @DFlagFirst{no-lib} : Skips requiring the initialization library (i.e., @schememodname[scheme/init] or @@ -219,7 +216,12 @@ flags: @item{@FlagFirst{q} or @DFlagFirst{no-init-file} : Skips loading @scheme[(find-system-path 'init-file)] for - @Flag{i}/@DFlag{repl} or @Flag{z}/@DFlag{text-repl}.} + @Flag{i}/@DFlag{repl}.} + + @item{@FlagFirst{z} or @DFlagFirst{text-repl} : MrEd only; changes + @Flag{i}/@DFlag{repl} to use + @scheme[textual-read-eval-print-loop] instead of + @scheme[graphical-read-eval-print-loop].} @item{@FlagFirst{I} @nonterm{path} : Sets @scheme[(lib #, @nontermstr{path})] as the path to @scheme[require] to initialize @@ -231,12 +233,13 @@ flags: 'collects-dir)] produce @nonterm{dir}.} @item{@FlagFirst{S} @nonterm{dir} or @DFlagFirst{search} - @nonterm{dir} : Adds @nonterm{dir} to the library collection - search path. The @scheme{dir} is added after a user-specific - directory, if any, and before the main collection directory.} + @nonterm{dir} : Adds @nonterm{dir} to the default library + collection search path after the main collection directory. If + the @Flag{S}/@DFlag{dir} flag is supplied multiple times, the + search order is as supplied.} @item{@FlagFirst{U} or @DFlagFirst{no-user-path} : Omits - user-psecific paths in the search for collections, C + user-specific paths in the search for collections, C libraries, etc. by initializing the @scheme[use-user-specific-search-paths] parameter to @scheme[#f].} diff --git a/doc/release-notes/mred/HISTORY.txt b/doc/release-notes/mred/HISTORY.txt index 5dcbd5342f..7e0ec1b3d1 100644 --- a/doc/release-notes/mred/HISTORY.txt +++ b/doc/release-notes/mred/HISTORY.txt @@ -1,3 +1,9 @@ +Version 4.1.1.1 + +Changed -z/--text-repl to a configuration option + +---------------------------------------------------------------------- + Version 4.1.1, October 2008 Minor bug fixes diff --git a/doc/release-notes/mzscheme/HISTORY.txt b/doc/release-notes/mzscheme/HISTORY.txt index e568c4828e..27b9ceff2c 100644 --- a/doc/release-notes/mzscheme/HISTORY.txt +++ b/doc/release-notes/mzscheme/HISTORY.txt @@ -1,3 +1,7 @@ +Version 4.1.1.1 +Changed -X and -S to complete directory relative to pwd, and + changed -S to add after main collects + Version 4.1.1, October 2008 Added read-language Added module-compiled-language-info, module->language-info, diff --git a/src/mzscheme/cmdline.inc b/src/mzscheme/cmdline.inc index fca838b2c1..5bf537bff0 100644 --- a/src/mzscheme/cmdline.inc +++ b/src/mzscheme/cmdline.inc @@ -383,6 +383,22 @@ static int finish_cmd_line_run(FinishArgs *fa, Repl_Proc repl) return exit_val; } +static Scheme_Object *reverse_path_list(Scheme_Object *l, int rel_to_cwd) +{ + Scheme_Object *r, *path; + + r = scheme_make_null(); + while (SCHEME_PAIRP(l)) { + path = SCHEME_CAR(l); + if (rel_to_cwd) + path = scheme_path_to_complete_path(path, NULL); + r = scheme_make_pair(path, r); + l = SCHEME_CDR(l); + } + + return r; +} + static int get_log_level(char *prog, char *real_switch, const char *envvar, const char *what, char *str) { if (!strcmp(str, "none")) @@ -747,8 +763,7 @@ static int run_from_cmd_line(int argc, char *_argv[], --argc; if (!collects_extra) collects_extra = scheme_make_null(); - collects_extra = scheme_make_pair(scheme_make_path(argv[0]), - collects_extra); + collects_extra = scheme_make_pair(scheme_make_path(argv[0]), collects_extra); was_config_flag = 1; break; case 'c': @@ -889,8 +904,7 @@ static int run_from_cmd_line(int argc, char *_argv[], case 'z': alternate_rep = 1; no_front = 1; - use_repl = 1; - init_ns = 1; + was_config_flag = 1; break; case 'K': no_front = 1; @@ -1034,31 +1048,29 @@ static int run_from_cmd_line(int argc, char *_argv[], if (!collects_path) collects_path = scheme_make_path(_coldir XFORM_OK_PLUS _coldir_offset); + else + collects_path = scheme_path_to_complete_path(collects_path, NULL); scheme_set_collects_path(collects_path); /* Make list of additional collection paths: */ - if (collects_extra) { - l = collects_extra; - } else { - l = scheme_make_null(); - offset = _coldir_offset; - while (1) { - len = strlen(_coldir XFORM_OK_PLUS offset); - offset += len + 1; - if (!_coldir[offset]) - break; - l = scheme_make_pair(scheme_make_path(_coldir XFORM_OK_PLUS offset), - l); - } + if (collects_extra) + r = reverse_path_list(collects_extra, 1); + else + r = scheme_make_null(); + + l = scheme_make_null(); + offset = _coldir_offset; + while (1) { + len = strlen(_coldir XFORM_OK_PLUS offset); + offset += len + 1; + if (!_coldir[offset]) + break; + l = scheme_make_pair(scheme_make_path(_coldir XFORM_OK_PLUS offset), + l); } - /* Reverse list */ - r = scheme_make_null(); - while (SCHEME_PAIRP(l)) { - r = scheme_make_pair(SCHEME_CAR(l), r); - l = SCHEME_CDR(l); - } - - scheme_init_collection_paths(global_env, r); + l = reverse_path_list(l, 0); + + scheme_init_collection_paths_post(global_env, l, r); } #endif /* NO_FILE_SYSTEM_UTILS */ @@ -1093,12 +1105,6 @@ static int run_from_cmd_line(int argc, char *_argv[], return cont_run(fa); -#ifdef CMDLINE_STDIO_FLAG -# define REPL_FLAGS "-i/-z" -#else -# define REPL_FLAGS "-i" -#endif - #ifndef DONT_PARSE_COMMAND_LINE show_help: prog =("%s" @@ -1124,10 +1130,7 @@ static int run_from_cmd_line(int argc, char *_argv[], " -m, --main : Call `main' with command-line arguments, print results\n" " Interaction options:\n" " -i, --repl : Run interactive read-eval-print loop; implies -v\n" -# ifdef CMDLINE_STDIO_FLAG - " -z, --text-repl : Like -i, but use text read-eval-print loop\n" -# endif - " -n, --no-lib : Skip `(require (lib \"\"))' for " REPL_FLAGS "/-e/-f/-r\n" + " -n, --no-lib : Skip `(require (lib \"\"))' for -i/-e/-f/-r\n" " -v, --version : Show version\n" # ifdef CMDLINE_STDIO_FLAG " -K, --back : Don't bring application to the foreground (Mac OS X)\n" @@ -1137,10 +1140,13 @@ static int run_from_cmd_line(int argc, char *_argv[], # endif " Configuration options:\n" " -c, --no-compiled : Disable loading of compiled files\n" - " -q, --no-init-file : Skip load of " INIT_FILENAME " for " REPL_FLAGS "\n" + " -q, --no-init-file : Skip load of " INIT_FILENAME " for -i\n" +# ifdef CMDLINE_STDIO_FLAG + " -z, --text-repl : Use text read-eval-print loop for -i\n" +# endif " -I : Set to \n" - " -X , --collects : Main collects at relative to " PROGRAM "\n" - " -S , --search : More collects at relative to " PROGRAM "\n" + " -X , --collects : Main collects at \n" + " -S , --search : More collects at (after main collects)\n" " -U, --no-user-path : Ignore user-specific collects, etc.\n" " -N , --name : Sets `(find-system-path 'run-file)' to \n" # ifdef MZ_USE_JIT @@ -1166,10 +1172,10 @@ static int run_from_cmd_line(int argc, char *_argv[], " Example: `-ifve file expr' is the same as `-i -f file -v -e expr'\n" "Start-up sequence:\n" " 1. Set `current-library-collection-paths'\n" - " 2. Require `(lib \"\")' [when " REPL_FLAGS "/-e/-f/-r, unless -n]\n" + " 2. Require `(lib \"\")' [when -i/-e/-f/-r, unless -n]\n" " 3. Evaluate/load expressions/files in order, until first error\n" - " 4. Load \"" INIT_FILENAME "\" [when " REPL_FLAGS "]\n" - " 5. Run read-eval-print loop [when " REPL_FLAGS "]\n" + " 4. Load \"" INIT_FILENAME "\" [when -i]\n" + " 5. Run read-eval-print loop [when -i]\n" # ifdef YIELD_BEFORE_EXIT " 6. Run `(yield 'wait)' [unless -V]\n" # endif diff --git a/src/mzscheme/include/scheme.h b/src/mzscheme/include/scheme.h index aa1c2d6ee2..51c294dcc4 100644 --- a/src/mzscheme/include/scheme.h +++ b/src/mzscheme/include/scheme.h @@ -1734,6 +1734,7 @@ MZ_EXTERN void scheme_set_collects_path(Scheme_Object *p); MZ_EXTERN void scheme_set_original_dir(Scheme_Object *d); MZ_EXTERN void scheme_init_collection_paths(Scheme_Env *global_env, Scheme_Object *extra_dirs); +MZ_EXTERN void scheme_init_collection_paths_post(Scheme_Env *global_env, Scheme_Object *extra_dirs, Scheme_Object *extra_post_dirs); /* Initialization */ MZ_EXTERN Scheme_Env *scheme_basic_env(void); diff --git a/src/mzscheme/src/cstartup.inc b/src/mzscheme/src/cstartup.inc index 10e1ae9207..044326d689 100644 --- a/src/mzscheme/src/cstartup.inc +++ b/src/mzscheme/src/cstartup.inc @@ -1,5 +1,5 @@ { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,49,46,48,46,52,50,0,0,0,1,0,0,6,0,9,0, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,49,46,49,46,49,50,0,0,0,1,0,0,6,0,9,0, 13,0,20,0,23,0,36,0,41,0,48,0,53,0,58,0,65,0,69,0,78, 0,84,0,98,0,112,0,115,0,119,0,121,0,132,0,134,0,148,0,155,0, 177,0,179,0,193,0,253,0,23,1,32,1,41,1,51,1,68,1,107,1,146, @@ -14,11 +14,11 @@ 115,61,120,73,108,101,116,114,101,99,45,118,97,108,117,101,115,66,108,97,109, 98,100,97,1,20,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110, 45,107,101,121,61,118,73,100,101,102,105,110,101,45,118,97,108,117,101,115,98, -10,35,11,8,147,225,94,159,2,16,35,35,159,2,15,35,35,16,20,2,3, +10,35,11,8,174,227,94,159,2,16,35,35,159,2,15,35,35,16,20,2,3, 2,2,2,4,2,2,2,11,2,2,2,5,2,2,2,6,2,2,2,7,2, 2,2,8,2,2,2,9,2,2,2,10,2,2,2,12,2,2,97,36,11,8, -147,225,93,159,2,15,35,36,16,2,2,13,161,2,2,36,2,13,2,2,2, -13,97,10,11,11,8,147,225,16,0,97,10,37,11,8,147,225,16,0,13,16, +174,227,93,159,2,15,35,36,16,2,2,13,161,2,2,36,2,13,2,2,2, +13,97,10,11,11,8,174,227,16,0,97,10,37,11,8,174,227,16,0,13,16, 4,35,29,11,11,2,2,11,18,98,64,104,101,114,101,8,31,8,30,8,29, 8,28,8,27,27,248,22,190,3,23,196,1,249,22,183,3,80,158,38,35,251, 22,73,2,17,248,22,88,23,200,2,12,249,22,63,2,1,248,22,90,23,202, @@ -28,14 +28,14 @@ 36,28,248,22,71,248,22,65,23,195,2,248,22,64,193,249,22,183,3,80,158, 38,35,251,22,73,2,17,248,22,64,23,200,2,249,22,63,2,12,248,22,65, 23,202,1,11,18,100,10,8,31,8,30,8,29,8,28,8,27,16,4,11,11, -2,18,3,1,7,101,110,118,56,50,54,57,16,4,11,11,2,19,3,1,7, -101,110,118,56,50,55,48,27,248,22,65,248,22,190,3,23,197,1,28,248,22, +2,18,3,1,7,101,110,118,57,57,52,52,16,4,11,11,2,19,3,1,7, +101,110,118,57,57,52,53,27,248,22,65,248,22,190,3,23,197,1,28,248,22, 71,23,194,2,20,15,159,36,35,36,28,248,22,71,248,22,65,23,195,2,248, 22,64,193,249,22,183,3,80,158,38,35,250,22,73,2,20,248,22,73,249,22, 73,248,22,73,2,21,248,22,64,23,202,2,251,22,73,2,17,2,21,2,21, 249,22,63,2,5,248,22,65,23,205,1,18,100,11,8,31,8,30,8,29,8, -28,8,27,16,4,11,11,2,18,3,1,7,101,110,118,56,50,55,50,16,4, -11,11,2,19,3,1,7,101,110,118,56,50,55,51,248,22,190,3,193,27,248, +28,8,27,16,4,11,11,2,18,3,1,7,101,110,118,57,57,52,55,16,4, +11,11,2,19,3,1,7,101,110,118,57,57,52,56,248,22,190,3,193,27,248, 22,190,3,194,249,22,63,248,22,73,248,22,64,196,248,22,65,195,27,248,22, 65,248,22,190,3,23,197,1,249,22,183,3,80,158,38,35,28,248,22,51,248, 22,184,3,248,22,64,23,198,2,27,249,22,2,32,0,89,162,8,44,36,42, @@ -65,8 +65,8 @@ 251,22,73,2,17,28,249,22,154,8,248,22,184,3,248,22,64,23,201,2,64, 101,108,115,101,10,248,22,64,23,198,2,250,22,74,2,20,9,248,22,65,23, 201,1,249,22,63,2,9,248,22,65,23,203,1,99,8,31,8,30,8,29,8, -28,8,27,16,4,11,11,2,18,3,1,7,101,110,118,56,50,57,53,16,4, -11,11,2,19,3,1,7,101,110,118,56,50,57,54,18,158,94,10,64,118,111, +28,8,27,16,4,11,11,2,18,3,1,7,101,110,118,57,57,55,48,16,4, +11,11,2,19,3,1,7,101,110,118,57,57,55,49,18,158,94,10,64,118,111, 105,100,8,47,27,248,22,65,248,22,190,3,196,249,22,183,3,80,158,38,35, 28,248,22,51,248,22,184,3,248,22,64,197,250,22,73,2,26,248,22,73,248, 22,64,199,248,22,88,198,27,248,22,184,3,248,22,64,197,250,22,73,2,26, @@ -99,256 +99,257 @@ EVAL_ONE_SIZED_STR((char *)expr, 2032); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,49,46,48,46,52,59,0,0,0,1,0,0,3,0,16,0, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,49,46,49,46,49,60,0,0,0,1,0,0,3,0,16,0, 21,0,38,0,53,0,71,0,87,0,97,0,115,0,135,0,151,0,169,0,200, 0,229,0,251,0,9,1,15,1,29,1,34,1,44,1,52,1,80,1,112,1, 157,1,202,1,226,1,9,2,11,2,68,2,158,3,199,3,33,5,137,5,241, 5,102,6,116,6,150,6,166,6,16,8,30,8,193,8,200,9,206,10,213,10, -219,10,91,11,104,11,59,12,161,12,174,12,196,12,148,13,52,14,123,15,131, -15,139,15,165,15,19,16,0,0,54,19,0,0,29,11,11,72,112,97,116,104, -45,115,116,114,105,110,103,63,64,98,115,98,115,76,110,111,114,109,97,108,45, -99,97,115,101,45,112,97,116,104,74,45,99,104,101,99,107,45,114,101,108,112, -97,116,104,77,45,99,104,101,99,107,45,99,111,108,108,101,99,116,105,111,110, -75,99,111,108,108,101,99,116,105,111,110,45,112,97,116,104,69,45,102,105,110, -100,45,99,111,108,77,99,104,101,99,107,45,115,117,102,102,105,120,45,99,97, -108,108,79,112,97,116,104,45,114,101,112,108,97,99,101,45,115,117,102,102,105, -120,75,112,97,116,104,45,97,100,100,45,115,117,102,102,105,120,77,108,111,97, -100,47,117,115,101,45,99,111,109,112,105,108,101,100,1,29,102,105,110,100,45, -108,105,98,114,97,114,121,45,99,111,108,108,101,99,116,105,111,110,45,112,97, -116,104,115,1,27,112,97,116,104,45,108,105,115,116,45,115,116,114,105,110,103, -45,62,112,97,116,104,45,108,105,115,116,1,20,102,105,110,100,45,101,120,101, -99,117,116,97,98,108,101,45,112,97,116,104,73,101,109,98,101,100,100,101,100, -45,108,111,97,100,65,113,117,111,116,101,29,94,2,17,68,35,37,112,97,114, -97,109,122,11,64,108,111,111,112,69,101,120,101,99,45,102,105,108,101,67,119, -105,110,100,111,119,115,6,25,25,112,97,116,104,32,111,114,32,118,97,108,105, -100,45,112,97,116,104,32,115,116,114,105,110,103,6,29,29,126,97,58,32,105, -110,118,97,108,105,100,32,114,101,108,97,116,105,118,101,32,112,97,116,104,58, -32,126,115,6,42,42,126,97,58,32,99,111,108,108,101,99,116,105,111,110,32, -110,111,116,32,102,111,117,110,100,58,32,126,115,32,105,110,32,97,110,121,32, -111,102,58,32,126,115,6,42,42,112,97,116,104,32,40,102,111,114,32,97,110, -121,32,115,121,115,116,101,109,41,32,111,114,32,118,97,108,105,100,45,112,97, -116,104,32,115,116,114,105,110,103,6,21,21,115,116,114,105,110,103,32,111,114, -32,98,121,116,101,32,115,116,114,105,110,103,6,36,36,99,97,110,110,111,116, -32,97,100,100,32,97,32,115,117,102,102,105,120,32,116,111,32,97,32,114,111, -111,116,32,112,97,116,104,58,32,5,0,27,20,14,159,80,158,36,50,250,80, -158,39,51,249,22,27,11,80,158,41,50,22,170,12,10,248,22,147,5,23,196, -2,28,248,22,144,6,23,194,2,12,87,94,248,22,157,8,23,194,1,248,80, -159,37,53,36,195,28,248,22,71,23,195,2,9,27,248,22,64,23,196,2,27, -28,248,22,151,13,23,195,2,23,194,1,28,248,22,150,13,23,195,2,249,22, -152,13,23,196,1,250,80,158,42,48,248,22,166,13,2,20,11,10,250,80,158, -40,48,248,22,166,13,2,20,23,197,1,10,28,23,193,2,249,22,63,248,22, -154,13,249,22,152,13,23,198,1,247,22,167,13,27,248,22,65,23,200,1,28, -248,22,71,23,194,2,9,27,248,22,64,23,195,2,27,28,248,22,151,13,23, -195,2,23,194,1,28,248,22,150,13,23,195,2,249,22,152,13,23,196,1,250, -80,158,47,48,248,22,166,13,2,20,11,10,250,80,158,45,48,248,22,166,13, -2,20,23,197,1,10,28,23,193,2,249,22,63,248,22,154,13,249,22,152,13, -23,198,1,247,22,167,13,248,80,159,45,52,36,248,22,65,23,199,1,87,94, -23,193,1,248,80,159,43,52,36,248,22,65,23,197,1,87,94,23,193,1,27, -248,22,65,23,198,1,28,248,22,71,23,194,2,9,27,248,22,64,23,195,2, -27,28,248,22,151,13,23,195,2,23,194,1,28,248,22,150,13,23,195,2,249, -22,152,13,23,196,1,250,80,158,45,48,248,22,166,13,2,20,11,10,250,80, -158,43,48,248,22,166,13,2,20,23,197,1,10,28,23,193,2,249,22,63,248, -22,154,13,249,22,152,13,23,198,1,247,22,167,13,248,80,159,43,52,36,248, -22,65,23,199,1,248,80,159,41,52,36,248,22,65,196,27,248,22,191,12,23, -195,2,28,23,193,2,192,87,94,23,193,1,28,248,22,149,6,23,195,2,27, -248,22,149,13,195,28,192,192,248,22,150,13,195,11,87,94,28,28,248,22,128, -13,23,195,2,10,27,248,22,191,12,23,196,2,28,23,193,2,192,87,94,23, -193,1,28,248,22,149,6,23,196,2,27,248,22,149,13,23,197,2,28,23,193, -2,192,87,94,23,193,1,248,22,150,13,23,197,2,11,12,250,22,184,8,76, -110,111,114,109,97,108,45,112,97,116,104,45,99,97,115,101,6,42,42,112,97, -116,104,32,40,102,111,114,32,97,110,121,32,115,121,115,116,101,109,41,32,111, -114,32,118,97,108,105,100,45,112,97,116,104,32,115,116,114,105,110,103,23,197, -2,28,28,248,22,128,13,23,195,2,249,22,154,8,248,22,129,13,23,197,2, -2,21,249,22,154,8,247,22,168,7,2,21,27,28,248,22,149,6,23,196,2, -23,195,2,248,22,158,7,248,22,132,13,23,197,2,28,249,22,179,13,0,21, -35,114,120,34,94,91,92,92,93,91,92,92,93,91,63,93,91,92,92,93,34, -23,195,2,28,248,22,149,6,195,248,22,135,13,195,194,27,248,22,188,6,23, -195,1,249,22,136,13,248,22,161,7,250,22,185,13,0,6,35,114,120,34,47, -34,28,249,22,179,13,0,22,35,114,120,34,91,47,92,92,93,91,46,32,93, -43,91,47,92,92,93,42,36,34,23,201,2,23,199,1,250,22,185,13,0,19, -35,114,120,34,91,32,46,93,43,40,91,47,92,92,93,42,41,36,34,23,202, -1,6,2,2,92,49,80,158,43,36,2,21,28,248,22,149,6,194,248,22,135, -13,194,193,87,94,28,27,248,22,191,12,23,196,2,28,23,193,2,192,87,94, -23,193,1,28,248,22,149,6,23,196,2,27,248,22,149,13,23,197,2,28,23, -193,2,192,87,94,23,193,1,248,22,150,13,23,197,2,11,12,250,22,184,8, -23,196,2,2,22,23,197,2,28,248,22,149,13,23,195,2,12,248,22,146,11, -249,22,155,10,248,22,178,6,250,22,133,7,2,23,23,200,1,23,201,1,247, -22,23,87,94,28,27,248,22,191,12,23,196,2,28,23,193,2,192,87,94,23, -193,1,28,248,22,149,6,23,196,2,27,248,22,149,13,23,197,2,28,23,193, -2,192,87,94,23,193,1,248,22,150,13,23,197,2,11,12,250,22,184,8,23, -196,2,2,22,23,197,2,28,248,22,149,13,23,195,2,12,248,22,146,11,249, -22,155,10,248,22,178,6,250,22,133,7,2,23,23,200,1,23,201,1,247,22, -23,87,94,87,94,28,27,248,22,191,12,23,196,2,28,23,193,2,192,87,94, -23,193,1,28,248,22,149,6,23,196,2,27,248,22,149,13,23,197,2,28,23, -193,2,192,87,94,23,193,1,248,22,150,13,23,197,2,11,12,250,22,184,8, -195,2,22,23,197,2,28,248,22,149,13,23,195,2,12,248,22,146,11,249,22, -155,10,248,22,178,6,250,22,133,7,2,23,199,23,201,1,247,22,23,249,22, -3,89,162,8,44,36,49,9,223,2,33,34,196,248,22,146,11,249,22,185,10, -23,196,1,247,22,23,87,94,250,80,159,38,39,36,2,7,196,197,251,80,159, -39,41,36,2,7,32,0,89,162,8,44,36,44,9,222,33,36,197,198,32,38, -89,162,43,41,58,65,99,108,111,111,112,222,33,39,28,248,22,71,23,199,2, -87,94,23,198,1,248,23,196,1,251,22,133,7,2,24,23,199,1,28,248,22, -71,23,203,2,87,94,23,202,1,23,201,1,250,22,1,22,145,13,23,204,1, -23,205,1,23,198,1,27,249,22,145,13,248,22,64,23,202,2,23,199,2,28, -248,22,140,13,23,194,2,27,250,22,1,22,145,13,23,197,1,23,202,2,28, -248,22,140,13,23,194,2,192,87,94,23,193,1,27,248,22,65,23,202,1,28, -248,22,71,23,194,2,87,94,23,193,1,248,23,199,1,251,22,133,7,2,24, -23,202,1,28,248,22,71,23,206,2,87,94,23,205,1,23,204,1,250,22,1, -22,145,13,23,207,1,23,208,1,23,201,1,27,249,22,145,13,248,22,64,23, -197,2,23,202,2,28,248,22,140,13,23,194,2,27,250,22,1,22,145,13,23, -197,1,204,28,248,22,140,13,193,192,253,2,38,203,204,205,206,23,15,248,22, -65,201,253,2,38,202,203,204,205,206,248,22,65,200,87,94,23,193,1,27,248, -22,65,23,201,1,28,248,22,71,23,194,2,87,94,23,193,1,248,23,198,1, -251,22,133,7,2,24,23,201,1,28,248,22,71,23,205,2,87,94,23,204,1, -23,203,1,250,22,1,22,145,13,23,206,1,23,207,1,23,200,1,27,249,22, -145,13,248,22,64,23,197,2,23,201,2,28,248,22,140,13,23,194,2,27,250, -22,1,22,145,13,23,197,1,203,28,248,22,140,13,193,192,253,2,38,202,203, -204,205,206,248,22,65,201,253,2,38,201,202,203,204,205,248,22,65,200,27,247, -22,168,13,253,2,38,198,199,200,201,202,198,87,95,28,28,248,22,128,13,23, -194,2,10,27,248,22,191,12,23,195,2,28,23,193,2,192,87,94,23,193,1, -28,248,22,149,6,23,195,2,27,248,22,149,13,23,196,2,28,23,193,2,192, -87,94,23,193,1,248,22,150,13,23,196,2,11,12,252,22,184,8,23,200,2, -2,25,35,23,198,2,23,199,2,28,28,248,22,149,6,23,195,2,10,248,22, -137,7,23,195,2,87,94,23,194,1,12,252,22,184,8,23,200,2,2,26,36, -23,198,2,23,199,1,91,159,38,11,90,161,38,35,11,248,22,148,13,23,197, -2,87,94,23,195,1,87,94,28,192,12,250,22,185,8,23,201,1,2,27,23, -199,1,249,22,7,194,195,91,159,37,11,90,161,37,35,11,87,95,28,28,248, -22,128,13,23,196,2,10,27,248,22,191,12,23,197,2,28,23,193,2,192,87, -94,23,193,1,28,248,22,149,6,23,197,2,27,248,22,149,13,23,198,2,28, -23,193,2,192,87,94,23,193,1,248,22,150,13,23,198,2,11,12,252,22,184, -8,2,10,2,25,35,23,200,2,23,201,2,28,28,248,22,149,6,23,197,2, -10,248,22,137,7,23,197,2,12,252,22,184,8,2,10,2,26,36,23,200,2, -23,201,2,91,159,38,11,90,161,38,35,11,248,22,148,13,23,199,2,87,94, -23,195,1,87,94,28,23,193,2,12,250,22,185,8,2,10,2,27,23,201,2, -249,22,7,23,195,1,23,196,1,27,249,22,137,13,250,22,184,13,0,18,35, -114,120,35,34,40,91,46,93,91,94,46,93,42,124,41,36,34,248,22,133,13, -23,201,1,28,248,22,149,6,23,203,2,249,22,161,7,23,204,1,8,63,23, -202,1,28,248,22,128,13,23,199,2,248,22,129,13,23,199,1,87,94,23,198, -1,247,22,130,13,28,248,22,191,12,194,249,22,145,13,195,194,192,91,159,37, -11,90,161,37,35,11,87,95,28,28,248,22,128,13,23,196,2,10,27,248,22, -191,12,23,197,2,28,23,193,2,192,87,94,23,193,1,28,248,22,149,6,23, -197,2,27,248,22,149,13,23,198,2,28,23,193,2,192,87,94,23,193,1,248, -22,150,13,23,198,2,11,12,252,22,184,8,2,11,2,25,35,23,200,2,23, -201,2,28,28,248,22,149,6,23,197,2,10,248,22,137,7,23,197,2,12,252, -22,184,8,2,11,2,26,36,23,200,2,23,201,2,91,159,38,11,90,161,38, -35,11,248,22,148,13,23,199,2,87,94,23,195,1,87,94,28,23,193,2,12, -250,22,185,8,2,11,2,27,23,201,2,249,22,7,23,195,1,23,196,1,27, -249,22,137,13,249,22,147,7,250,22,185,13,0,9,35,114,120,35,34,91,46, -93,34,248,22,133,13,23,203,1,6,1,1,95,28,248,22,149,6,23,202,2, -249,22,161,7,23,203,1,8,63,23,201,1,28,248,22,128,13,23,199,2,248, -22,129,13,23,199,1,87,94,23,198,1,247,22,130,13,28,248,22,191,12,194, -249,22,145,13,195,194,192,249,247,22,180,4,194,11,248,80,158,36,46,9,27, -247,22,170,13,249,80,158,38,47,28,23,195,2,27,248,22,166,7,6,11,11, -80,76,84,67,79,76,76,69,67,84,83,28,192,192,6,0,0,6,0,0,27, -28,23,196,1,250,22,145,13,248,22,166,13,69,97,100,100,111,110,45,100,105, -114,247,22,164,7,6,8,8,99,111,108,108,101,99,116,115,11,27,248,80,159, -41,52,36,249,22,77,23,202,1,248,22,73,248,22,166,13,72,99,111,108,108, -101,99,116,115,45,100,105,114,28,23,194,2,249,22,63,23,196,1,23,195,1, -192,32,47,89,162,8,44,38,54,2,19,222,33,48,27,249,22,177,13,23,197, -2,23,198,2,28,23,193,2,87,94,23,196,1,27,248,22,88,23,195,2,27, -27,248,22,97,23,197,1,27,249,22,177,13,23,201,2,23,196,2,28,23,193, -2,87,94,23,194,1,27,248,22,88,23,195,2,27,250,2,47,23,203,2,23, -204,1,248,22,97,23,199,1,28,249,22,143,7,23,196,2,2,28,249,22,77, -23,202,2,194,249,22,63,248,22,136,13,23,197,1,23,195,1,87,95,23,199, -1,23,193,1,28,249,22,143,7,23,196,2,2,28,249,22,77,23,200,2,9, -249,22,63,248,22,136,13,23,197,1,9,28,249,22,143,7,23,196,2,2,28, -249,22,77,197,194,87,94,23,196,1,249,22,63,248,22,136,13,23,197,1,194, -87,94,23,193,1,28,249,22,143,7,23,198,2,2,28,249,22,77,195,9,87, -94,23,194,1,249,22,63,248,22,136,13,23,199,1,9,87,95,28,28,248,22, -137,7,194,10,248,22,149,6,194,12,250,22,184,8,2,14,6,21,21,98,121, -116,101,32,115,116,114,105,110,103,32,111,114,32,115,116,114,105,110,103,196,28, -28,248,22,72,195,249,22,4,22,191,12,196,11,12,250,22,184,8,2,14,6, -13,13,108,105,115,116,32,111,102,32,112,97,116,104,115,197,250,2,47,197,195, -28,248,22,149,6,197,248,22,160,7,197,196,32,50,89,162,8,44,39,57,2, -19,222,33,53,32,51,89,162,8,44,38,54,70,102,111,117,110,100,45,101,120, -101,99,222,33,52,28,23,193,2,91,159,38,11,90,161,38,35,11,248,22,148, -13,23,199,2,87,95,23,195,1,23,194,1,27,28,23,198,2,27,248,22,153, -13,23,201,2,28,249,22,156,8,23,195,2,23,202,2,11,28,248,22,149,13, -23,194,2,250,2,51,23,201,2,23,202,2,249,22,145,13,23,200,2,23,198, -1,250,2,51,23,201,2,23,202,2,23,196,1,11,28,23,193,2,192,87,94, -23,193,1,27,28,248,22,191,12,23,196,2,27,249,22,145,13,23,198,2,23, -201,2,28,28,248,22,140,13,193,10,248,22,139,13,193,192,11,11,28,23,193, -2,192,87,94,23,193,1,28,23,199,2,11,27,248,22,153,13,23,202,2,28, -249,22,156,8,23,195,2,23,203,1,11,28,248,22,149,13,23,194,2,250,2, -51,23,202,1,23,203,1,249,22,145,13,23,201,1,23,198,1,250,2,51,201, -202,195,194,28,248,22,71,23,197,2,11,27,248,22,152,13,248,22,64,23,199, -2,27,249,22,145,13,23,196,1,23,197,2,28,248,22,139,13,23,194,2,250, -2,51,198,199,195,87,94,23,193,1,27,248,22,65,23,200,1,28,248,22,71, -23,194,2,11,27,248,22,152,13,248,22,64,23,196,2,27,249,22,145,13,23, -196,1,23,200,2,28,248,22,139,13,23,194,2,250,2,51,201,202,195,87,94, -23,193,1,27,248,22,65,23,197,1,28,248,22,71,23,194,2,11,27,248,22, -152,13,248,22,64,195,27,249,22,145,13,23,196,1,202,28,248,22,139,13,193, -250,2,51,204,205,195,251,2,50,204,205,206,248,22,65,199,87,95,28,27,248, -22,191,12,23,196,2,28,23,193,2,192,87,94,23,193,1,28,248,22,149,6, -23,196,2,27,248,22,149,13,23,197,2,28,23,193,2,192,87,94,23,193,1, -248,22,150,13,23,197,2,11,12,250,22,184,8,2,15,6,25,25,112,97,116, -104,32,111,114,32,115,116,114,105,110,103,32,40,115,97,110,115,32,110,117,108, -41,23,197,2,28,28,23,195,2,28,27,248,22,191,12,23,197,2,28,23,193, -2,192,87,94,23,193,1,28,248,22,149,6,23,197,2,27,248,22,149,13,23, -198,2,28,23,193,2,192,87,94,23,193,1,248,22,150,13,23,198,2,11,248, -22,149,13,23,196,2,11,10,12,250,22,184,8,2,15,6,29,29,35,102,32, -111,114,32,114,101,108,97,116,105,118,101,32,112,97,116,104,32,111,114,32,115, -116,114,105,110,103,23,198,2,28,28,248,22,149,13,23,195,2,91,159,38,11, -90,161,38,35,11,248,22,148,13,23,198,2,249,22,154,8,194,68,114,101,108, -97,116,105,118,101,11,27,248,22,166,7,6,4,4,80,65,84,72,251,2,50, -23,199,1,23,200,1,23,201,1,28,23,197,2,27,249,80,158,43,47,23,200, -1,9,28,249,22,154,8,247,22,168,7,2,21,249,22,63,248,22,136,13,5, -1,46,23,195,1,192,9,27,248,22,152,13,23,196,1,28,248,22,139,13,193, -250,2,51,198,199,195,11,250,80,158,38,48,196,197,11,250,80,158,38,48,196, -11,11,87,94,249,22,140,6,247,22,176,4,195,248,22,166,5,249,22,163,3, -35,249,22,147,3,197,198,27,28,23,197,2,87,95,23,196,1,23,195,1,23, -197,1,87,94,23,197,1,27,248,22,166,13,2,20,27,249,80,158,40,48,23, -196,1,11,27,27,248,22,166,3,23,200,1,28,192,192,35,27,27,248,22,166, -3,23,202,1,28,192,192,35,249,22,143,5,23,197,1,83,158,39,20,97,95, -89,162,8,44,35,47,9,224,3,2,33,57,23,195,1,23,196,1,27,248,22, -128,5,23,195,1,248,80,159,38,53,36,193,159,35,20,103,159,35,16,1,65, -98,101,103,105,110,16,0,83,158,41,20,100,138,67,35,37,117,116,105,108,115, -2,1,11,11,10,10,42,80,158,35,35,20,103,159,37,16,17,30,2,1,2, -2,193,30,2,1,2,3,193,30,2,1,2,4,193,30,2,1,2,5,193,30, -2,1,2,6,193,30,2,1,2,7,193,30,2,1,2,8,193,30,2,1,2, -9,193,30,2,1,2,10,193,30,2,1,2,11,193,30,2,1,2,12,193,30, -2,1,2,13,193,30,2,1,2,14,193,30,2,1,2,15,193,30,2,1,2, -16,193,30,2,18,1,20,112,97,114,97,109,101,116,101,114,105,122,97,116,105, -111,110,45,107,101,121,4,30,2,18,1,23,101,120,116,101,110,100,45,112,97, -114,97,109,101,116,101,114,105,122,97,116,105,111,110,3,16,0,11,11,16,4, -2,6,2,5,2,3,2,9,39,11,38,35,11,11,16,11,2,8,2,7,2, -16,2,15,2,13,2,12,2,4,2,11,2,14,2,10,2,2,16,11,11,11, -11,11,11,11,11,11,11,11,11,16,11,2,8,2,7,2,16,2,15,2,13, -2,12,2,4,2,11,2,14,2,10,2,2,46,46,36,11,11,16,0,16,0, -16,0,35,35,11,11,11,16,0,16,0,16,0,35,35,16,0,16,17,83,158, -35,16,2,89,162,43,36,48,2,19,223,0,33,29,80,159,35,53,36,83,158, -35,16,2,89,162,8,44,36,55,2,19,223,0,33,30,80,159,35,52,36,83, -158,35,16,2,32,0,89,162,43,36,44,2,2,222,33,31,80,159,35,35,36, -83,158,35,16,2,249,22,151,6,7,92,7,92,80,159,35,36,36,83,158,35, -16,2,89,162,43,36,53,2,4,223,0,33,32,80,159,35,37,36,83,158,35, -16,2,32,0,89,162,8,44,37,49,2,5,222,33,33,80,159,35,38,36,83, -158,35,16,2,32,0,89,162,8,44,38,50,2,6,222,33,35,80,159,35,39, -36,83,158,35,16,2,89,162,8,45,37,47,2,7,223,0,33,37,80,159,35, -40,36,83,158,35,16,2,32,0,89,162,43,39,51,2,8,222,33,40,80,159, -35,41,36,83,158,35,16,2,32,0,89,162,43,38,49,2,9,222,33,41,80, -159,35,42,36,83,158,35,16,2,32,0,89,162,43,37,52,2,10,222,33,42, -80,159,35,43,36,83,158,35,16,2,32,0,89,162,43,37,53,2,11,222,33, -43,80,159,35,44,36,83,158,35,16,2,32,0,89,162,43,36,43,2,12,222, -33,44,80,159,35,45,36,83,158,35,16,2,83,158,38,20,96,95,2,13,89, -162,43,35,42,9,223,0,33,45,89,162,43,36,52,9,223,0,33,46,80,159, -35,46,36,83,158,35,16,2,27,248,22,173,13,248,22,160,7,27,28,249,22, -154,8,247,22,168,7,2,21,6,1,1,59,6,1,1,58,250,22,133,7,6, -14,14,40,91,94,126,97,93,42,41,126,97,40,46,42,41,23,196,2,23,196, -1,89,162,8,44,37,47,2,14,223,0,33,49,80,159,35,47,36,83,158,35, -16,2,83,158,38,20,96,96,2,15,89,162,8,44,38,53,9,223,0,33,54, -89,162,43,37,46,9,223,0,33,55,89,162,43,36,45,9,223,0,33,56,80, -159,35,48,36,83,158,35,16,2,89,162,43,38,51,2,16,223,0,33,58,80, -159,35,49,36,94,29,94,2,17,68,35,37,107,101,114,110,101,108,11,29,94, -2,17,69,35,37,109,105,110,45,115,116,120,11,9,9,9,35,0}; - EVAL_ONE_SIZED_STR((char *)expr, 5057); +220,10,227,10,102,11,115,11,70,12,172,12,185,12,207,12,159,13,63,14,134, +15,142,15,150,15,176,15,30,16,0,0,75,19,0,0,29,11,11,72,112,97, +116,104,45,115,116,114,105,110,103,63,64,98,115,98,115,76,110,111,114,109,97, +108,45,99,97,115,101,45,112,97,116,104,74,45,99,104,101,99,107,45,114,101, +108,112,97,116,104,77,45,99,104,101,99,107,45,99,111,108,108,101,99,116,105, +111,110,75,99,111,108,108,101,99,116,105,111,110,45,112,97,116,104,69,45,102, +105,110,100,45,99,111,108,77,99,104,101,99,107,45,115,117,102,102,105,120,45, +99,97,108,108,79,112,97,116,104,45,114,101,112,108,97,99,101,45,115,117,102, +102,105,120,75,112,97,116,104,45,97,100,100,45,115,117,102,102,105,120,77,108, +111,97,100,47,117,115,101,45,99,111,109,112,105,108,101,100,1,29,102,105,110, +100,45,108,105,98,114,97,114,121,45,99,111,108,108,101,99,116,105,111,110,45, +112,97,116,104,115,1,27,112,97,116,104,45,108,105,115,116,45,115,116,114,105, +110,103,45,62,112,97,116,104,45,108,105,115,116,1,20,102,105,110,100,45,101, +120,101,99,117,116,97,98,108,101,45,112,97,116,104,73,101,109,98,101,100,100, +101,100,45,108,111,97,100,65,113,117,111,116,101,29,94,2,17,68,35,37,112, +97,114,97,109,122,11,64,108,111,111,112,69,101,120,101,99,45,102,105,108,101, +67,119,105,110,100,111,119,115,6,25,25,112,97,116,104,32,111,114,32,118,97, +108,105,100,45,112,97,116,104,32,115,116,114,105,110,103,6,29,29,126,97,58, +32,105,110,118,97,108,105,100,32,114,101,108,97,116,105,118,101,32,112,97,116, +104,58,32,126,115,6,42,42,126,97,58,32,99,111,108,108,101,99,116,105,111, +110,32,110,111,116,32,102,111,117,110,100,58,32,126,115,32,105,110,32,97,110, +121,32,111,102,58,32,126,115,6,42,42,112,97,116,104,32,40,102,111,114,32, +97,110,121,32,115,121,115,116,101,109,41,32,111,114,32,118,97,108,105,100,45, +112,97,116,104,32,115,116,114,105,110,103,6,21,21,115,116,114,105,110,103,32, +111,114,32,98,121,116,101,32,115,116,114,105,110,103,6,36,36,99,97,110,110, +111,116,32,97,100,100,32,97,32,115,117,102,102,105,120,32,116,111,32,97,32, +114,111,111,116,32,112,97,116,104,58,32,5,0,27,20,14,159,80,158,36,50, +250,80,158,39,51,249,22,27,11,80,158,41,50,22,170,12,10,248,22,147,5, +23,196,2,28,248,22,144,6,23,194,2,12,87,94,248,22,157,8,23,194,1, +248,80,159,37,53,36,195,28,248,22,71,23,195,2,9,27,248,22,64,23,196, +2,27,28,248,22,151,13,23,195,2,23,194,1,28,248,22,150,13,23,195,2, +249,22,152,13,23,196,1,250,80,158,42,48,248,22,166,13,2,20,11,10,250, +80,158,40,48,248,22,166,13,2,20,23,197,1,10,28,23,193,2,249,22,63, +248,22,154,13,249,22,152,13,23,198,1,247,22,167,13,27,248,22,65,23,200, +1,28,248,22,71,23,194,2,9,27,248,22,64,23,195,2,27,28,248,22,151, +13,23,195,2,23,194,1,28,248,22,150,13,23,195,2,249,22,152,13,23,196, +1,250,80,158,47,48,248,22,166,13,2,20,11,10,250,80,158,45,48,248,22, +166,13,2,20,23,197,1,10,28,23,193,2,249,22,63,248,22,154,13,249,22, +152,13,23,198,1,247,22,167,13,248,80,159,45,52,36,248,22,65,23,199,1, +87,94,23,193,1,248,80,159,43,52,36,248,22,65,23,197,1,87,94,23,193, +1,27,248,22,65,23,198,1,28,248,22,71,23,194,2,9,27,248,22,64,23, +195,2,27,28,248,22,151,13,23,195,2,23,194,1,28,248,22,150,13,23,195, +2,249,22,152,13,23,196,1,250,80,158,45,48,248,22,166,13,2,20,11,10, +250,80,158,43,48,248,22,166,13,2,20,23,197,1,10,28,23,193,2,249,22, +63,248,22,154,13,249,22,152,13,23,198,1,247,22,167,13,248,80,159,43,52, +36,248,22,65,23,199,1,248,80,159,41,52,36,248,22,65,196,27,248,22,191, +12,23,195,2,28,23,193,2,192,87,94,23,193,1,28,248,22,149,6,23,195, +2,27,248,22,149,13,195,28,192,192,248,22,150,13,195,11,87,94,28,28,248, +22,128,13,23,195,2,10,27,248,22,191,12,23,196,2,28,23,193,2,192,87, +94,23,193,1,28,248,22,149,6,23,196,2,27,248,22,149,13,23,197,2,28, +23,193,2,192,87,94,23,193,1,248,22,150,13,23,197,2,11,12,250,22,184, +8,76,110,111,114,109,97,108,45,112,97,116,104,45,99,97,115,101,6,42,42, +112,97,116,104,32,40,102,111,114,32,97,110,121,32,115,121,115,116,101,109,41, +32,111,114,32,118,97,108,105,100,45,112,97,116,104,32,115,116,114,105,110,103, +23,197,2,28,28,248,22,128,13,23,195,2,249,22,154,8,248,22,129,13,23, +197,2,2,21,249,22,154,8,247,22,168,7,2,21,27,28,248,22,149,6,23, +196,2,23,195,2,248,22,158,7,248,22,132,13,23,197,2,28,249,22,179,13, +0,21,35,114,120,34,94,91,92,92,93,91,92,92,93,91,63,93,91,92,92, +93,34,23,195,2,28,248,22,149,6,195,248,22,135,13,195,194,27,248,22,188, +6,23,195,1,249,22,136,13,248,22,161,7,250,22,185,13,0,6,35,114,120, +34,47,34,28,249,22,179,13,0,22,35,114,120,34,91,47,92,92,93,91,46, +32,93,43,91,47,92,92,93,42,36,34,23,201,2,23,199,1,250,22,185,13, +0,19,35,114,120,34,91,32,46,93,43,40,91,47,92,92,93,42,41,36,34, +23,202,1,6,2,2,92,49,80,158,43,36,2,21,28,248,22,149,6,194,248, +22,135,13,194,193,87,94,28,27,248,22,191,12,23,196,2,28,23,193,2,192, +87,94,23,193,1,28,248,22,149,6,23,196,2,27,248,22,149,13,23,197,2, +28,23,193,2,192,87,94,23,193,1,248,22,150,13,23,197,2,11,12,250,22, +184,8,23,196,2,2,22,23,197,2,28,248,22,149,13,23,195,2,12,248,22, +146,11,249,22,155,10,248,22,178,6,250,22,133,7,2,23,23,200,1,23,201, +1,247,22,23,87,94,28,27,248,22,191,12,23,196,2,28,23,193,2,192,87, +94,23,193,1,28,248,22,149,6,23,196,2,27,248,22,149,13,23,197,2,28, +23,193,2,192,87,94,23,193,1,248,22,150,13,23,197,2,11,12,250,22,184, +8,23,196,2,2,22,23,197,2,28,248,22,149,13,23,195,2,12,248,22,146, +11,249,22,155,10,248,22,178,6,250,22,133,7,2,23,23,200,1,23,201,1, +247,22,23,87,94,87,94,28,27,248,22,191,12,23,196,2,28,23,193,2,192, +87,94,23,193,1,28,248,22,149,6,23,196,2,27,248,22,149,13,23,197,2, +28,23,193,2,192,87,94,23,193,1,248,22,150,13,23,197,2,11,12,250,22, +184,8,195,2,22,23,197,2,28,248,22,149,13,23,195,2,12,248,22,146,11, +249,22,155,10,248,22,178,6,250,22,133,7,2,23,199,23,201,1,247,22,23, +249,22,3,89,162,8,44,36,49,9,223,2,33,34,196,248,22,146,11,249,22, +185,10,23,196,1,247,22,23,87,94,250,80,159,38,39,36,2,7,196,197,251, +80,159,39,41,36,2,7,32,0,89,162,8,44,36,44,9,222,33,36,197,198, +32,38,89,162,43,41,58,65,99,108,111,111,112,222,33,39,28,248,22,71,23, +199,2,87,94,23,198,1,248,23,196,1,251,22,133,7,2,24,23,199,1,28, +248,22,71,23,203,2,87,94,23,202,1,23,201,1,250,22,1,22,145,13,23, +204,1,23,205,1,23,198,1,27,249,22,145,13,248,22,64,23,202,2,23,199, +2,28,248,22,140,13,23,194,2,27,250,22,1,22,145,13,23,197,1,23,202, +2,28,248,22,140,13,23,194,2,192,87,94,23,193,1,27,248,22,65,23,202, +1,28,248,22,71,23,194,2,87,94,23,193,1,248,23,199,1,251,22,133,7, +2,24,23,202,1,28,248,22,71,23,206,2,87,94,23,205,1,23,204,1,250, +22,1,22,145,13,23,207,1,23,208,1,23,201,1,27,249,22,145,13,248,22, +64,23,197,2,23,202,2,28,248,22,140,13,23,194,2,27,250,22,1,22,145, +13,23,197,1,204,28,248,22,140,13,193,192,253,2,38,203,204,205,206,23,15, +248,22,65,201,253,2,38,202,203,204,205,206,248,22,65,200,87,94,23,193,1, +27,248,22,65,23,201,1,28,248,22,71,23,194,2,87,94,23,193,1,248,23, +198,1,251,22,133,7,2,24,23,201,1,28,248,22,71,23,205,2,87,94,23, +204,1,23,203,1,250,22,1,22,145,13,23,206,1,23,207,1,23,200,1,27, +249,22,145,13,248,22,64,23,197,2,23,201,2,28,248,22,140,13,23,194,2, +27,250,22,1,22,145,13,23,197,1,203,28,248,22,140,13,193,192,253,2,38, +202,203,204,205,206,248,22,65,201,253,2,38,201,202,203,204,205,248,22,65,200, +27,247,22,168,13,253,2,38,198,199,200,201,202,198,87,95,28,28,248,22,128, +13,23,194,2,10,27,248,22,191,12,23,195,2,28,23,193,2,192,87,94,23, +193,1,28,248,22,149,6,23,195,2,27,248,22,149,13,23,196,2,28,23,193, +2,192,87,94,23,193,1,248,22,150,13,23,196,2,11,12,252,22,184,8,23, +200,2,2,25,35,23,198,2,23,199,2,28,28,248,22,149,6,23,195,2,10, +248,22,137,7,23,195,2,87,94,23,194,1,12,252,22,184,8,23,200,2,2, +26,36,23,198,2,23,199,1,91,159,38,11,90,161,38,35,11,248,22,148,13, +23,197,2,87,94,23,195,1,87,94,28,192,12,250,22,185,8,23,201,1,2, +27,23,199,1,249,22,7,194,195,91,159,37,11,90,161,37,35,11,87,95,28, +28,248,22,128,13,23,196,2,10,27,248,22,191,12,23,197,2,28,23,193,2, +192,87,94,23,193,1,28,248,22,149,6,23,197,2,27,248,22,149,13,23,198, +2,28,23,193,2,192,87,94,23,193,1,248,22,150,13,23,198,2,11,12,252, +22,184,8,2,10,2,25,35,23,200,2,23,201,2,28,28,248,22,149,6,23, +197,2,10,248,22,137,7,23,197,2,12,252,22,184,8,2,10,2,26,36,23, +200,2,23,201,2,91,159,38,11,90,161,38,35,11,248,22,148,13,23,199,2, +87,94,23,195,1,87,94,28,23,193,2,12,250,22,185,8,2,10,2,27,23, +201,2,249,22,7,23,195,1,23,196,1,27,249,22,137,13,250,22,184,13,0, +18,35,114,120,35,34,40,91,46,93,91,94,46,93,42,124,41,36,34,248,22, +133,13,23,201,1,28,248,22,149,6,23,203,2,249,22,161,7,23,204,1,8, +63,23,202,1,28,248,22,128,13,23,199,2,248,22,129,13,23,199,1,87,94, +23,198,1,247,22,130,13,28,248,22,191,12,194,249,22,145,13,195,194,192,91, +159,37,11,90,161,37,35,11,87,95,28,28,248,22,128,13,23,196,2,10,27, +248,22,191,12,23,197,2,28,23,193,2,192,87,94,23,193,1,28,248,22,149, +6,23,197,2,27,248,22,149,13,23,198,2,28,23,193,2,192,87,94,23,193, +1,248,22,150,13,23,198,2,11,12,252,22,184,8,2,11,2,25,35,23,200, +2,23,201,2,28,28,248,22,149,6,23,197,2,10,248,22,137,7,23,197,2, +12,252,22,184,8,2,11,2,26,36,23,200,2,23,201,2,91,159,38,11,90, +161,38,35,11,248,22,148,13,23,199,2,87,94,23,195,1,87,94,28,23,193, +2,12,250,22,185,8,2,11,2,27,23,201,2,249,22,7,23,195,1,23,196, +1,27,249,22,137,13,249,22,147,7,250,22,185,13,0,9,35,114,120,35,34, +91,46,93,34,248,22,133,13,23,203,1,6,1,1,95,28,248,22,149,6,23, +202,2,249,22,161,7,23,203,1,8,63,23,201,1,28,248,22,128,13,23,199, +2,248,22,129,13,23,199,1,87,94,23,198,1,247,22,130,13,28,248,22,191, +12,194,249,22,145,13,195,194,192,249,247,22,180,4,194,11,249,80,158,37,46, +9,9,249,80,158,37,46,195,9,27,247,22,170,13,249,80,158,38,47,28,23, +195,2,27,248,22,166,7,6,11,11,80,76,84,67,79,76,76,69,67,84,83, +28,192,192,6,0,0,6,0,0,27,28,23,196,1,250,22,145,13,248,22,166, +13,69,97,100,100,111,110,45,100,105,114,247,22,164,7,6,8,8,99,111,108, +108,101,99,116,115,11,27,248,80,159,41,52,36,250,22,77,23,203,1,248,22, +73,248,22,166,13,72,99,111,108,108,101,99,116,115,45,100,105,114,23,204,1, +28,23,194,2,249,22,63,23,196,1,23,195,1,192,32,48,89,162,8,44,38, +54,2,19,222,33,49,27,249,22,177,13,23,197,2,23,198,2,28,23,193,2, +87,94,23,196,1,27,248,22,88,23,195,2,27,27,248,22,97,23,197,1,27, +249,22,177,13,23,201,2,23,196,2,28,23,193,2,87,94,23,194,1,27,248, +22,88,23,195,2,27,250,2,48,23,203,2,23,204,1,248,22,97,23,199,1, +28,249,22,143,7,23,196,2,2,28,249,22,77,23,202,2,194,249,22,63,248, +22,136,13,23,197,1,23,195,1,87,95,23,199,1,23,193,1,28,249,22,143, +7,23,196,2,2,28,249,22,77,23,200,2,9,249,22,63,248,22,136,13,23, +197,1,9,28,249,22,143,7,23,196,2,2,28,249,22,77,197,194,87,94,23, +196,1,249,22,63,248,22,136,13,23,197,1,194,87,94,23,193,1,28,249,22, +143,7,23,198,2,2,28,249,22,77,195,9,87,94,23,194,1,249,22,63,248, +22,136,13,23,199,1,9,87,95,28,28,248,22,137,7,194,10,248,22,149,6, +194,12,250,22,184,8,2,14,6,21,21,98,121,116,101,32,115,116,114,105,110, +103,32,111,114,32,115,116,114,105,110,103,196,28,28,248,22,72,195,249,22,4, +22,191,12,196,11,12,250,22,184,8,2,14,6,13,13,108,105,115,116,32,111, +102,32,112,97,116,104,115,197,250,2,48,197,195,28,248,22,149,6,197,248,22, +160,7,197,196,32,51,89,162,8,44,39,57,2,19,222,33,54,32,52,89,162, +8,44,38,54,70,102,111,117,110,100,45,101,120,101,99,222,33,53,28,23,193, +2,91,159,38,11,90,161,38,35,11,248,22,148,13,23,199,2,87,95,23,195, +1,23,194,1,27,28,23,198,2,27,248,22,153,13,23,201,2,28,249,22,156, +8,23,195,2,23,202,2,11,28,248,22,149,13,23,194,2,250,2,52,23,201, +2,23,202,2,249,22,145,13,23,200,2,23,198,1,250,2,52,23,201,2,23, +202,2,23,196,1,11,28,23,193,2,192,87,94,23,193,1,27,28,248,22,191, +12,23,196,2,27,249,22,145,13,23,198,2,23,201,2,28,28,248,22,140,13, +193,10,248,22,139,13,193,192,11,11,28,23,193,2,192,87,94,23,193,1,28, +23,199,2,11,27,248,22,153,13,23,202,2,28,249,22,156,8,23,195,2,23, +203,1,11,28,248,22,149,13,23,194,2,250,2,52,23,202,1,23,203,1,249, +22,145,13,23,201,1,23,198,1,250,2,52,201,202,195,194,28,248,22,71,23, +197,2,11,27,248,22,152,13,248,22,64,23,199,2,27,249,22,145,13,23,196, +1,23,197,2,28,248,22,139,13,23,194,2,250,2,52,198,199,195,87,94,23, +193,1,27,248,22,65,23,200,1,28,248,22,71,23,194,2,11,27,248,22,152, +13,248,22,64,23,196,2,27,249,22,145,13,23,196,1,23,200,2,28,248,22, +139,13,23,194,2,250,2,52,201,202,195,87,94,23,193,1,27,248,22,65,23, +197,1,28,248,22,71,23,194,2,11,27,248,22,152,13,248,22,64,195,27,249, +22,145,13,23,196,1,202,28,248,22,139,13,193,250,2,52,204,205,195,251,2, +51,204,205,206,248,22,65,199,87,95,28,27,248,22,191,12,23,196,2,28,23, +193,2,192,87,94,23,193,1,28,248,22,149,6,23,196,2,27,248,22,149,13, +23,197,2,28,23,193,2,192,87,94,23,193,1,248,22,150,13,23,197,2,11, +12,250,22,184,8,2,15,6,25,25,112,97,116,104,32,111,114,32,115,116,114, +105,110,103,32,40,115,97,110,115,32,110,117,108,41,23,197,2,28,28,23,195, +2,28,27,248,22,191,12,23,197,2,28,23,193,2,192,87,94,23,193,1,28, +248,22,149,6,23,197,2,27,248,22,149,13,23,198,2,28,23,193,2,192,87, +94,23,193,1,248,22,150,13,23,198,2,11,248,22,149,13,23,196,2,11,10, +12,250,22,184,8,2,15,6,29,29,35,102,32,111,114,32,114,101,108,97,116, +105,118,101,32,112,97,116,104,32,111,114,32,115,116,114,105,110,103,23,198,2, +28,28,248,22,149,13,23,195,2,91,159,38,11,90,161,38,35,11,248,22,148, +13,23,198,2,249,22,154,8,194,68,114,101,108,97,116,105,118,101,11,27,248, +22,166,7,6,4,4,80,65,84,72,251,2,51,23,199,1,23,200,1,23,201, +1,28,23,197,2,27,249,80,158,43,47,23,200,1,9,28,249,22,154,8,247, +22,168,7,2,21,249,22,63,248,22,136,13,5,1,46,23,195,1,192,9,27, +248,22,152,13,23,196,1,28,248,22,139,13,193,250,2,52,198,199,195,11,250, +80,158,38,48,196,197,11,250,80,158,38,48,196,11,11,87,94,249,22,140,6, +247,22,176,4,195,248,22,166,5,249,22,163,3,35,249,22,147,3,197,198,27, +28,23,197,2,87,95,23,196,1,23,195,1,23,197,1,87,94,23,197,1,27, +248,22,166,13,2,20,27,249,80,158,40,48,23,196,1,11,27,27,248,22,166, +3,23,200,1,28,192,192,35,27,27,248,22,166,3,23,202,1,28,192,192,35, +249,22,143,5,23,197,1,83,158,39,20,97,95,89,162,8,44,35,47,9,224, +3,2,33,58,23,195,1,23,196,1,27,248,22,128,5,23,195,1,248,80,159, +38,53,36,193,159,35,20,103,159,35,16,1,65,98,101,103,105,110,16,0,83, +158,41,20,100,138,67,35,37,117,116,105,108,115,2,1,11,11,10,10,42,80, +158,35,35,20,103,159,37,16,17,30,2,1,2,2,193,30,2,1,2,3,193, +30,2,1,2,4,193,30,2,1,2,5,193,30,2,1,2,6,193,30,2,1, +2,7,193,30,2,1,2,8,193,30,2,1,2,9,193,30,2,1,2,10,193, +30,2,1,2,11,193,30,2,1,2,12,193,30,2,1,2,13,193,30,2,1, +2,14,193,30,2,1,2,15,193,30,2,1,2,16,193,30,2,18,1,20,112, +97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,45,107,101,121,4,30, +2,18,1,23,101,120,116,101,110,100,45,112,97,114,97,109,101,116,101,114,105, +122,97,116,105,111,110,3,16,0,11,11,16,4,2,6,2,5,2,3,2,9, +39,11,38,35,11,11,16,11,2,8,2,7,2,16,2,15,2,13,2,12,2, +4,2,11,2,14,2,10,2,2,16,11,11,11,11,11,11,11,11,11,11,11, +11,16,11,2,8,2,7,2,16,2,15,2,13,2,12,2,4,2,11,2,14, +2,10,2,2,46,46,36,11,11,16,0,16,0,16,0,35,35,11,11,11,16, +0,16,0,16,0,35,35,16,0,16,17,83,158,35,16,2,89,162,43,36,48, +2,19,223,0,33,29,80,159,35,53,36,83,158,35,16,2,89,162,8,44,36, +55,2,19,223,0,33,30,80,159,35,52,36,83,158,35,16,2,32,0,89,162, +43,36,44,2,2,222,33,31,80,159,35,35,36,83,158,35,16,2,249,22,151, +6,7,92,7,92,80,159,35,36,36,83,158,35,16,2,89,162,43,36,53,2, +4,223,0,33,32,80,159,35,37,36,83,158,35,16,2,32,0,89,162,8,44, +37,49,2,5,222,33,33,80,159,35,38,36,83,158,35,16,2,32,0,89,162, +8,44,38,50,2,6,222,33,35,80,159,35,39,36,83,158,35,16,2,89,162, +8,45,37,47,2,7,223,0,33,37,80,159,35,40,36,83,158,35,16,2,32, +0,89,162,43,39,51,2,8,222,33,40,80,159,35,41,36,83,158,35,16,2, +32,0,89,162,43,38,49,2,9,222,33,41,80,159,35,42,36,83,158,35,16, +2,32,0,89,162,43,37,52,2,10,222,33,42,80,159,35,43,36,83,158,35, +16,2,32,0,89,162,43,37,53,2,11,222,33,43,80,159,35,44,36,83,158, +35,16,2,32,0,89,162,43,36,43,2,12,222,33,44,80,159,35,45,36,83, +158,35,16,2,83,158,38,20,96,96,2,13,89,162,43,35,43,9,223,0,33, +45,89,162,43,36,44,9,223,0,33,46,89,162,43,37,54,9,223,0,33,47, +80,159,35,46,36,83,158,35,16,2,27,248,22,173,13,248,22,160,7,27,28, +249,22,154,8,247,22,168,7,2,21,6,1,1,59,6,1,1,58,250,22,133, +7,6,14,14,40,91,94,126,97,93,42,41,126,97,40,46,42,41,23,196,2, +23,196,1,89,162,8,44,37,47,2,14,223,0,33,50,80,159,35,47,36,83, +158,35,16,2,83,158,38,20,96,96,2,15,89,162,8,44,38,53,9,223,0, +33,55,89,162,43,37,46,9,223,0,33,56,89,162,43,36,45,9,223,0,33, +57,80,159,35,48,36,83,158,35,16,2,89,162,43,38,51,2,16,223,0,33, +59,80,159,35,49,36,94,29,94,2,17,68,35,37,107,101,114,110,101,108,11, +29,94,2,17,69,35,37,109,105,110,45,115,116,120,11,9,9,9,35,0}; + EVAL_ONE_SIZED_STR((char *)expr, 5080); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,49,46,48,46,52,8,0,0,0,1,0,0,6,0,19,0, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,49,46,49,46,49,8,0,0,0,1,0,0,6,0,19,0, 34,0,48,0,62,0,76,0,111,0,0,0,255,0,0,0,65,113,117,111,116, 101,29,94,2,1,67,35,37,117,116,105,108,115,11,29,94,2,1,69,35,37, 110,101,116,119,111,114,107,11,29,94,2,1,68,35,37,112,97,114,97,109,122, 11,29,94,2,1,68,35,37,101,120,112,111,98,115,11,29,94,2,1,68,35, -37,107,101,114,110,101,108,11,98,10,35,11,8,149,227,97,159,2,2,35,35, +37,107,101,114,110,101,108,11,98,10,35,11,8,176,229,97,159,2,2,35,35, 159,2,3,35,35,159,2,4,35,35,159,2,5,35,35,159,2,6,35,35,16, 0,159,35,20,103,159,35,16,1,65,98,101,103,105,110,16,0,83,158,41,20, 100,138,69,35,37,98,117,105,108,116,105,110,29,11,11,11,10,10,18,96,11, @@ -360,7 +361,7 @@ EVAL_ONE_SIZED_STR((char *)expr, 292); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,49,46,48,46,52,52,0,0,0,1,0,0,3,0,14,0, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,49,46,49,46,49,52,0,0,0,1,0,0,3,0,14,0, 41,0,47,0,60,0,74,0,96,0,122,0,134,0,152,0,172,0,184,0,200, 0,223,0,3,1,8,1,13,1,18,1,23,1,54,1,58,1,66,1,74,1, 82,1,185,1,230,1,250,1,29,2,64,2,98,2,108,2,155,2,165,2,172, diff --git a/src/mzscheme/src/eval.c b/src/mzscheme/src/eval.c index e9270db361..1f6e7c342f 100644 --- a/src/mzscheme/src/eval.c +++ b/src/mzscheme/src/eval.c @@ -9367,7 +9367,7 @@ Scheme_Object *scheme_eval_string_multi_with_prompt(const char *str, Scheme_Env return do_eval_string_all(str, env, 0, 1); } -void scheme_init_collection_paths(Scheme_Env *global_env, Scheme_Object *extra_dirs) +void scheme_init_collection_paths_post(Scheme_Env *global_env, Scheme_Object *extra_dirs, Scheme_Object *post_dirs) { mz_jmp_buf * volatile save, newbuf; Scheme_Thread * volatile p; @@ -9375,20 +9375,26 @@ void scheme_init_collection_paths(Scheme_Env *global_env, Scheme_Object *extra_d save = p->error_buf; p->error_buf = &newbuf; if (!scheme_setjmp(newbuf)) { - Scheme_Object *clcp, *flcp, *a[1]; + Scheme_Object *clcp, *flcp, *a[2]; clcp = scheme_builtin_value("current-library-collection-paths"); flcp = scheme_builtin_value("find-library-collection-paths"); if (clcp && flcp) { a[0] = extra_dirs; - a[0] = _scheme_apply(flcp, 1, a); + a[1] = post_dirs; + a[0] = _scheme_apply(flcp, 2, a); _scheme_apply(clcp, 1, a); } } p->error_buf = save; } +void scheme_init_collection_paths(Scheme_Env *global_env, Scheme_Object *extra_dirs) +{ + scheme_init_collection_paths_post(global_env, extra_dirs, scheme_null); +} + static Scheme_Object *allow_set_undefined(int argc, Scheme_Object **argv) { return scheme_param_config("compile-allow-set!-undefined", diff --git a/src/mzscheme/src/salloc.c b/src/mzscheme/src/salloc.c index 2b412ed343..401e33467a 100644 --- a/src/mzscheme/src/salloc.c +++ b/src/mzscheme/src/salloc.c @@ -704,11 +704,8 @@ static long free_list_find_bucket(long size) if (free_list[hi].size == size) return hi; - else { - if (free_list[lo].size < size) - abort(); + else return lo; - } } void *scheme_malloc_code(long size) diff --git a/src/mzscheme/src/schemef.h b/src/mzscheme/src/schemef.h index 4f41e27057..a54723db2e 100644 --- a/src/mzscheme/src/schemef.h +++ b/src/mzscheme/src/schemef.h @@ -222,15 +222,15 @@ MZ_EXTERN char *scheme_get_type_name(Scheme_Type type); /*========================================================================*/ MZ_EXTERN Scheme_Object scheme_eof[1]; -MZ_EXTERN Scheme_Object *scheme_make_eof(void); +XFORM_NONGCING MZ_EXTERN Scheme_Object *scheme_make_eof(void); MZ_EXTERN Scheme_Object scheme_null[1]; -MZ_EXTERN Scheme_Object *scheme_make_null(void); +XFORM_NONGCING MZ_EXTERN Scheme_Object *scheme_make_null(void); MZ_EXTERN Scheme_Object scheme_true[1]; -MZ_EXTERN Scheme_Object *scheme_make_true(void); +XFORM_NONGCING MZ_EXTERN Scheme_Object *scheme_make_true(void); MZ_EXTERN Scheme_Object scheme_false[1]; -MZ_EXTERN Scheme_Object *scheme_make_false(void); +XFORM_NONGCING MZ_EXTERN Scheme_Object *scheme_make_false(void); MZ_EXTERN Scheme_Object scheme_void[1]; -MZ_EXTERN Scheme_Object *scheme_make_void(void); +XFORM_NONGCING MZ_EXTERN Scheme_Object *scheme_make_void(void); MZ_EXTERN Scheme_Object scheme_undefined[1]; MZ_EXTERN Scheme_Object *scheme_tail_call_waiting; MZ_EXTERN Scheme_Object *scheme_multiple_values; diff --git a/src/mzscheme/src/startup.inc b/src/mzscheme/src/startup.inc index 0defa286e3..ef05eef656 100644 --- a/src/mzscheme/src/startup.inc +++ b/src/mzscheme/src/startup.inc @@ -261,8 +261,9 @@ "(lambda(f)((current-load/use-compiled) f #f)))" "(define-values(find-library-collection-paths)" "(case-lambda" -"(()(find-library-collection-paths null))" -"((extra-collects-dirs)" +"(()(find-library-collection-paths null null))" +"((extra-collects-dirs)(find-library-collection-paths extra-collects-dirs null))" +"((extra-collects-dirs post-collects-dirs)" "(let((user-too?(use-user-specific-search-paths))" "(cons-if(lambda(f r)(if f(cons f r) r))))" "(path-list-string->path-list" @@ -276,7 +277,8 @@ " \"collects\"))" "(let loop((l(append" " extra-collects-dirs" -"(list(find-system-path 'collects-dir)))))" +"(list(find-system-path 'collects-dir))" +" post-collects-dirs)))" "(if(null? l)" " null" "(let*((collects-path(car l))" diff --git a/src/mzscheme/src/startup.ss b/src/mzscheme/src/startup.ss index 10d5b14772..a9391aacf7 100644 --- a/src/mzscheme/src/startup.ss +++ b/src/mzscheme/src/startup.ss @@ -325,8 +325,9 @@ (define-values (find-library-collection-paths) (case-lambda - [() (find-library-collection-paths null)] - [(extra-collects-dirs) + [() (find-library-collection-paths null null)] + [(extra-collects-dirs) (find-library-collection-paths extra-collects-dirs null)] + [(extra-collects-dirs post-collects-dirs) (let ([user-too? (use-user-specific-search-paths)] [cons-if (lambda (f r) (if f (cons f r) r))]) (path-list-string->path-list @@ -340,7 +341,8 @@ "collects")) (let loop ([l (append extra-collects-dirs - (list (find-system-path 'collects-dir)))]) + (list (find-system-path 'collects-dir)) + post-collects-dirs)]) (if (null? l) null (let* ([collects-path (car l)]