prevent compile
from binding in the current namespace
When `compile` is used on a top-level definition, do not create a binding in the current namespace, but arrange for a suitable binding to be in place for the target namespace. Closes #1036
This commit is contained in:
parent
24592f78fc
commit
16c198805b
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
(define collection 'multi)
|
(define collection 'multi)
|
||||||
|
|
||||||
(define version "6.2.900.14")
|
(define version "6.2.900.15")
|
||||||
|
|
||||||
(define deps `("racket-lib"
|
(define deps `("racket-lib"
|
||||||
["racket" #:version ,version]))
|
["racket" #:version ,version]))
|
||||||
|
|
|
@ -36,15 +36,28 @@ structures that are produced by @racket[zo-parse] and consumed by
|
||||||
|
|
||||||
@defstruct+[(compilation-top zo)
|
@defstruct+[(compilation-top zo)
|
||||||
([max-let-depth exact-nonnegative-integer?]
|
([max-let-depth exact-nonnegative-integer?]
|
||||||
|
[binding-namess (hash/c exact-nonnegative-integer?
|
||||||
|
(hash/c symbol? identifier?))]
|
||||||
[prefix prefix?]
|
[prefix prefix?]
|
||||||
[code (or/c form? any/c)])]{
|
[code (or/c form? any/c)])]{
|
||||||
Wraps compiled code. The @racket[max-let-depth] field indicates the
|
Wraps compiled code.
|
||||||
|
|
||||||
|
The @racket[max-let-depth] field indicates the
|
||||||
maximum stack depth that @racket[code] creates (not counting the
|
maximum stack depth that @racket[code] creates (not counting the
|
||||||
@racket[prefix] array). The @racket[prefix] field describes top-level
|
@racket[prefix] array).
|
||||||
variables, module-level variables, and quoted syntax-objects accessed
|
|
||||||
by @racket[code]. The @racket[code] field contains executable code;
|
The @racket[binding-namess] field provides a per-phase mapping from
|
||||||
it is normally a @racket[form], but a literal value is represented as
|
symbols that appear in @racket[prefix] for top-level
|
||||||
itself.}
|
@racket[def-values] forms and in top-level @racket[def-syntaxes]
|
||||||
|
forms. Each symbol is mapped to an identifier that will be bound
|
||||||
|
(after introduction into the namespace) by the definition.
|
||||||
|
|
||||||
|
The @racket[prefix] field describes top-level variables,
|
||||||
|
module-level variables, and quoted syntax-objects accessed by
|
||||||
|
@racket[code].
|
||||||
|
|
||||||
|
The @racket[code] field contains executable code; it is normally a
|
||||||
|
@racket[form], but a literal value is represented as itself.}
|
||||||
|
|
||||||
@defstruct+[(prefix zo)
|
@defstruct+[(prefix zo)
|
||||||
([num-lifts exact-nonnegative-integer?]
|
([num-lifts exact-nonnegative-integer?]
|
||||||
|
|
|
@ -220,6 +220,7 @@
|
||||||
(zo-marshal
|
(zo-marshal
|
||||||
(compilation-top
|
(compilation-top
|
||||||
10
|
10
|
||||||
|
#hash()
|
||||||
(prefix 0
|
(prefix 0
|
||||||
(list 'dummy)
|
(list 'dummy)
|
||||||
null
|
null
|
||||||
|
|
|
@ -325,11 +325,13 @@
|
||||||
;; Check that compilation in one namespace can
|
;; Check that compilation in one namespace can
|
||||||
;; be transferred to another namespace
|
;; be transferred to another namespace
|
||||||
|
|
||||||
|
(let ()
|
||||||
|
(define (check-namespace-transfer compile-wrap)
|
||||||
(let ()
|
(let ()
|
||||||
;; transfer a `require`
|
;; transfer a `require`
|
||||||
(define c
|
(define c
|
||||||
(parameterize ([current-namespace (make-base-namespace)])
|
(parameterize ([current-namespace (make-base-namespace)])
|
||||||
(compile '(require racket/base))))
|
(compile-wrap (compile '(require racket/base)))))
|
||||||
(parameterize ([current-namespace (make-base-empty-namespace)])
|
(parameterize ([current-namespace (make-base-empty-namespace)])
|
||||||
(test (void) 'eval (eval c))
|
(test (void) 'eval (eval c))
|
||||||
(test add1 eval 'add1)))
|
(test add1 eval 'add1)))
|
||||||
|
@ -339,7 +341,7 @@
|
||||||
;; namespace is unchanged
|
;; namespace is unchanged
|
||||||
(define-values (c get)
|
(define-values (c get)
|
||||||
(parameterize ([current-namespace (make-base-namespace)])
|
(parameterize ([current-namespace (make-base-namespace)])
|
||||||
(define c (compile '(define one 1)))
|
(define c (compile-wrap (compile '(define one 1))))
|
||||||
(values
|
(values
|
||||||
c
|
c
|
||||||
(eval '(lambda () one)))))
|
(eval '(lambda () one)))))
|
||||||
|
@ -358,15 +360,48 @@
|
||||||
(define one 1)
|
(define one 1)
|
||||||
(define id (quote-syntax one))
|
(define id (quote-syntax one))
|
||||||
one)))
|
one)))
|
||||||
(define c (compile '(m id)))
|
(define c (compile-wrap (compile '(m id))))
|
||||||
(values
|
(values
|
||||||
c
|
c
|
||||||
(eval '(lambda () one)))))
|
(eval '(lambda () one)))))
|
||||||
(parameterize ([current-namespace (make-base-empty-namespace)])
|
(parameterize ([current-namespace (make-base-empty-namespace)])
|
||||||
(test 1 'eval (eval c))
|
(test 1 'eval (eval c))
|
||||||
(err/rt-test (eval 'one) exn:fail:syntax?)
|
(err/rt-test (eval 'one) exn:fail:syntax?)
|
||||||
|
(test #t identifier? (eval 'id))
|
||||||
(test 1 eval (eval 'id))
|
(test 1 eval (eval 'id))
|
||||||
(err/rt-test (get) exn:fail:contract:variable?)))
|
(err/rt-test (get) exn:fail:contract:variable?))))
|
||||||
|
(check-namespace-transfer values)
|
||||||
|
(check-namespace-transfer (lambda (c)
|
||||||
|
(define o (open-output-bytes))
|
||||||
|
(write c o)
|
||||||
|
(parameterize ([read-accept-compiled #t])
|
||||||
|
(read (open-input-bytes (get-output-bytes o)))))))
|
||||||
|
|
||||||
|
;; ----------------------------------------
|
||||||
|
;; Make sure compilation doesn't bind in the current namespace
|
||||||
|
|
||||||
|
(parameterize ([current-namespace (make-base-namespace)])
|
||||||
|
(eval '(define-syntax-rule (m2 c-id r-id)
|
||||||
|
(begin
|
||||||
|
(require (rename-in racket/base [+ plus]))
|
||||||
|
(define (c-id) (compile #'(define plus 1)))
|
||||||
|
(define (r-id) (eval #'plus)))))
|
||||||
|
(eval '(m2 def ref))
|
||||||
|
(test + eval '(ref))
|
||||||
|
(eval '(def))
|
||||||
|
(test + eval '(ref))
|
||||||
|
(eval (eval '(def)))
|
||||||
|
(test 1 eval '(ref)))
|
||||||
|
|
||||||
|
#|
|
||||||
|
(define-syntax-rule (m3 c-id)
|
||||||
|
(begin
|
||||||
|
(define-syntax plus #f)
|
||||||
|
(define (c-id) (compile #'(define plus plus)))))
|
||||||
|
|
||||||
|
(m3 cdef)
|
||||||
|
(cdef)
|
||||||
|
|#
|
||||||
|
|
||||||
;; ----------------------------------------
|
;; ----------------------------------------
|
||||||
|
|
||||||
|
|
|
@ -4234,8 +4234,8 @@
|
||||||
(write-bytes
|
(write-bytes
|
||||||
(zo-marshal
|
(zo-marshal
|
||||||
(match m
|
(match m
|
||||||
[(compilation-top max-let-depth prefix code)
|
[(compilation-top max-let-depth binding-namess prefix code)
|
||||||
(compilation-top max-let-depth prefix
|
(compilation-top max-let-depth binding-namess prefix
|
||||||
(let ([body (mod-body code)])
|
(let ([body (mod-body code)])
|
||||||
(struct-copy mod code [body
|
(struct-copy mod code [body
|
||||||
(match body
|
(match body
|
||||||
|
|
|
@ -1282,7 +1282,7 @@
|
||||||
(let-syntax ([z (lambda (stx) #`#,(@@foo 3))])
|
(let-syntax ([z (lambda (stx) #`#,(@@foo 3))])
|
||||||
z))
|
z))
|
||||||
|
|
||||||
(test (void) eval (expand #'(begin-for-syntax (define @@zoo (@@foo 2)))))
|
(test (void) eval-syntax (expand #'(begin-for-syntax (define @@zoo (@@foo 2)))))
|
||||||
(define-syntax (@@x stx) #`#, @@zoo)
|
(define-syntax (@@x stx) #`#, @@zoo)
|
||||||
(test 2 '@@x/@@zoo @@x)
|
(test 2 '@@x/@@zoo @@x)
|
||||||
(begin-for-syntax (define @@zoo2 (@@foo 2)))
|
(begin-for-syntax (define @@zoo2 (@@foo 2)))
|
||||||
|
@ -1290,7 +1290,7 @@
|
||||||
(test 2 '@@x/@@zoo @@x)
|
(test 2 '@@x/@@zoo @@x)
|
||||||
|
|
||||||
(begin-for-syntax (@@foo 1))
|
(begin-for-syntax (@@foo 1))
|
||||||
(test (void) eval (expand #'(begin-for-syntax (@@foo 1))))
|
(test (void) eval-syntax (expand #'(begin-for-syntax (@@foo 1))))
|
||||||
|
|
||||||
(module @@p racket/base
|
(module @@p racket/base
|
||||||
(require (for-syntax racket/base
|
(require (for-syntax racket/base
|
||||||
|
|
|
@ -1706,7 +1706,7 @@ Scheme_Object *scheme_get_shadower(Scheme_Object *sym, Scheme_Comp_Env *env, int
|
||||||
return sym;
|
return sym;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Scheme_Hash_Table *get_binding_names_table(Scheme_Env *env)
|
Scheme_Hash_Table *scheme_get_binding_names_table(Scheme_Env *env)
|
||||||
{
|
{
|
||||||
Scheme_Hash_Table *binding_names;
|
Scheme_Hash_Table *binding_names;
|
||||||
|
|
||||||
|
@ -1753,22 +1753,23 @@ static int binding_name_available(Scheme_Hash_Table *binding_names, Scheme_Objec
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Scheme_Object *select_binding_name(Scheme_Object *sym, Scheme_Env *env, Scheme_Object *id)
|
static Scheme_Object *select_binding_name(Scheme_Object *sym, Scheme_Env *env,
|
||||||
|
Scheme_Object *id, Scheme_Object *orig_id)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
char onstack[50], *buf;
|
char onstack[50], *buf;
|
||||||
intptr_t len;
|
intptr_t len;
|
||||||
Scheme_Hash_Table *binding_names;
|
Scheme_Hash_Table *binding_names;
|
||||||
|
|
||||||
binding_names = get_binding_names_table(env);
|
binding_names = scheme_get_binding_names_table(env);
|
||||||
|
|
||||||
/* Use a plain symbol only if the binding has no extra scopes: */
|
/* Use a plain symbol only if the binding has no extra scopes: */
|
||||||
if (SCHEME_SYM_WEIRDP(sym)
|
if (SCHEME_SYM_WEIRDP(sym)
|
||||||
|| scheme_stx_equal_module_context(id, ((env->module && env->module->ii_src)
|
|| scheme_stx_equal_module_context(orig_id, ((env->module && env->module->ii_src)
|
||||||
? env->module->ii_src
|
? env->module->ii_src
|
||||||
: env->stx_context))) {
|
: env->stx_context))) {
|
||||||
if (binding_name_available(binding_names, sym, id, scheme_env_phase(env))) {
|
if (binding_name_available(binding_names, sym, orig_id, scheme_env_phase(env))) {
|
||||||
scheme_hash_set(binding_names, sym, id);
|
scheme_hash_set(binding_names, sym, orig_id);
|
||||||
return sym;
|
return sym;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1786,7 +1787,7 @@ static Scheme_Object *select_binding_name(Scheme_Object *sym, Scheme_Env *env, S
|
||||||
sym = scheme_intern_exact_parallel_symbol(buf, strlen(buf));
|
sym = scheme_intern_exact_parallel_symbol(buf, strlen(buf));
|
||||||
|
|
||||||
if (binding_name_available(binding_names, sym, id, scheme_env_phase(env))) {
|
if (binding_name_available(binding_names, sym, id, scheme_env_phase(env))) {
|
||||||
scheme_hash_set(binding_names, sym, id);
|
scheme_hash_set(binding_names, sym, orig_id);
|
||||||
return sym;
|
return sym;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1794,26 +1795,42 @@ static Scheme_Object *select_binding_name(Scheme_Object *sym, Scheme_Env *env, S
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Scheme_Object *scheme_global_binding(Scheme_Object *id, Scheme_Env *env)
|
static int binding_matches_env(Scheme_Object *binding, Scheme_Env *env, Scheme_Object *phase)
|
||||||
{
|
{
|
||||||
Scheme_Object *sym, *binding, *phase;
|
return (SCHEME_VECTORP(binding)
|
||||||
|
&& SAME_OBJ(SCHEME_VEC_ELS(binding)[0],
|
||||||
|
(env->module
|
||||||
|
? env->module->self_modidx
|
||||||
|
: scheme_false))
|
||||||
|
&& SAME_OBJ(SCHEME_VEC_ELS(binding)[2], phase));
|
||||||
|
}
|
||||||
|
|
||||||
|
Scheme_Object *scheme_global_binding(Scheme_Object *id, Scheme_Env *env, int for_top_level)
|
||||||
|
{
|
||||||
|
Scheme_Object *sym, *binding, *phase, *orig_id = id;
|
||||||
int exact_match;
|
int exact_match;
|
||||||
|
|
||||||
phase = scheme_env_phase(env);
|
phase = scheme_env_phase(env);
|
||||||
|
|
||||||
|
if (for_top_level) {
|
||||||
|
/* While compiling, we want to avoid binding in the top-level namespace.
|
||||||
|
Adding an extra scope avoids that while still letting us have some binding
|
||||||
|
to generate names for top-level definitions. */
|
||||||
|
if (!env->tmp_bind_scope) {
|
||||||
|
sym = scheme_new_scope(SCHEME_STX_MODULE_SCOPE);
|
||||||
|
env->tmp_bind_scope = sym;
|
||||||
|
}
|
||||||
|
id = scheme_stx_add_scope(id, env->tmp_bind_scope, phase);
|
||||||
|
}
|
||||||
|
|
||||||
binding = scheme_stx_lookup_stop_at_free_eq(id, phase, &exact_match);
|
binding = scheme_stx_lookup_stop_at_free_eq(id, phase, &exact_match);
|
||||||
|
|
||||||
if (!SCHEME_FALSEP(binding)) {
|
if (!SCHEME_FALSEP(binding)) {
|
||||||
if (exact_match) {
|
if (exact_match) {
|
||||||
if (SCHEME_VECTORP(binding)
|
if (binding_matches_env(binding, env, phase)) {
|
||||||
&& SAME_OBJ(SCHEME_VEC_ELS(binding)[0],
|
|
||||||
(env->module
|
|
||||||
? env->module->self_modidx
|
|
||||||
: scheme_false))
|
|
||||||
&& SAME_OBJ(SCHEME_VEC_ELS(binding)[2], phase)) {
|
|
||||||
sym = SCHEME_VEC_ELS(binding)[1];
|
sym = SCHEME_VEC_ELS(binding)[1];
|
||||||
/* Make sure name is in binding_names and with a specific `id`: */
|
/* Make sure name is in binding_names and with a specific `id`: */
|
||||||
scheme_hash_set(get_binding_names_table(env), sym, id);
|
scheme_hash_set(scheme_get_binding_names_table(env), sym, orig_id);
|
||||||
return sym;
|
return sym;
|
||||||
}
|
}
|
||||||
/* Since the binding didn't match, we'll "shadow" the binding
|
/* Since the binding didn't match, we'll "shadow" the binding
|
||||||
|
@ -1821,7 +1838,7 @@ Scheme_Object *scheme_global_binding(Scheme_Object *id, Scheme_Env *env)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sym = select_binding_name(SCHEME_STX_VAL(id), env, id);
|
sym = select_binding_name(SCHEME_STX_VAL(id), env, id, orig_id);
|
||||||
|
|
||||||
scheme_add_module_binding(id, phase,
|
scheme_add_module_binding(id, phase,
|
||||||
(env->module ? env->module->self_modidx : scheme_false),
|
(env->module ? env->module->self_modidx : scheme_false),
|
||||||
|
@ -1840,8 +1857,24 @@ Scheme_Object *scheme_future_global_binding(Scheme_Object *id, Scheme_Env *env)
|
||||||
/* The identifier id is being referenced before it has a binding. We
|
/* The identifier id is being referenced before it has a binding. We
|
||||||
want to allow it, anyway, perhaps because it's outside of a module
|
want to allow it, anyway, perhaps because it's outside of a module
|
||||||
context or because it's phase-1 code. So, we assume that it's going to
|
context or because it's phase-1 code. So, we assume that it's going to
|
||||||
have no extra scopes and get the base name. */
|
have no extra scopes and get the base name.
|
||||||
|
|
||||||
|
Then again, if `id` has a binding after adding the environment's temporary
|
||||||
|
binding scope, then map the identifier to that temporary binding's name.
|
||||||
|
That special case allows compiling a `define` to create a binding that
|
||||||
|
can be referenced in the same compilation. */
|
||||||
{
|
{
|
||||||
|
if (env->tmp_bind_scope) {
|
||||||
|
Scheme_Object *binding, *phase;
|
||||||
|
|
||||||
|
phase = scheme_env_phase(env);
|
||||||
|
id = scheme_stx_add_scope(id, env->tmp_bind_scope, phase);
|
||||||
|
binding = scheme_stx_lookup_stop_at_free_eq(id, phase, NULL);
|
||||||
|
|
||||||
|
if (binding_matches_env(binding, env, phase))
|
||||||
|
return SCHEME_VEC_ELS(binding)[1];
|
||||||
|
}
|
||||||
|
|
||||||
return SCHEME_STX_VAL(id);
|
return SCHEME_STX_VAL(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -822,6 +822,25 @@ void scheme_define_parse(Scheme_Object *form,
|
||||||
scheme_wrong_syntax(NULL, *var, form, "bad variable list");
|
scheme_wrong_syntax(NULL, *var, form, "bad variable list");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static Scheme_Object *global_binding(Scheme_Object *id, Scheme_Comp_Env *env)
|
||||||
|
{
|
||||||
|
Scheme_Object *sym;
|
||||||
|
|
||||||
|
sym = scheme_global_binding(id, env->genv, env->flags & SCHEME_TMP_TL_BIND_FRAME);
|
||||||
|
|
||||||
|
if (env->binding_namess && !SAME_OBJ(sym, SCHEME_STX_VAL(id))) {
|
||||||
|
/* Record the new binding */
|
||||||
|
Scheme_Hash_Tree *binds;
|
||||||
|
binds = (Scheme_Hash_Tree *)scheme_hash_get(env->binding_namess, scheme_env_phase(env->genv));
|
||||||
|
if (!binds)
|
||||||
|
binds = scheme_make_hash_tree(0);
|
||||||
|
binds = scheme_hash_tree_set(binds, sym, id);
|
||||||
|
scheme_hash_set(env->binding_namess, scheme_env_phase(env->genv), (Scheme_Object *)binds);
|
||||||
|
}
|
||||||
|
|
||||||
|
return sym;
|
||||||
|
}
|
||||||
|
|
||||||
static Scheme_Object *
|
static Scheme_Object *
|
||||||
defn_targets_syntax (Scheme_Object *var, Scheme_Comp_Env *env, Scheme_Compile_Info *rec, int drec)
|
defn_targets_syntax (Scheme_Object *var, Scheme_Comp_Env *env, Scheme_Compile_Info *rec, int drec)
|
||||||
{
|
{
|
||||||
|
@ -831,7 +850,7 @@ defn_targets_syntax (Scheme_Object *var, Scheme_Comp_Env *env, Scheme_Compile_In
|
||||||
Scheme_Object *name, *pr, *bucket;
|
Scheme_Object *name, *pr, *bucket;
|
||||||
|
|
||||||
name = SCHEME_STX_CAR(var);
|
name = SCHEME_STX_CAR(var);
|
||||||
name = scheme_global_binding(name, env->genv);
|
name = global_binding(name, env);
|
||||||
|
|
||||||
if (rec[drec].resolve_module_ids || !env->genv->module) {
|
if (rec[drec].resolve_module_ids || !env->genv->module) {
|
||||||
bucket = (Scheme_Object *)scheme_global_bucket(name, env->genv);
|
bucket = (Scheme_Object *)scheme_global_bucket(name, env->genv);
|
||||||
|
@ -3410,9 +3429,7 @@ static void prep_exp_env_compile_rec(Scheme_Compile_Info *rec, int drec)
|
||||||
|
|
||||||
static Scheme_Object *stx_val(Scheme_Object *name, Scheme_Object *_env)
|
static Scheme_Object *stx_val(Scheme_Object *name, Scheme_Object *_env)
|
||||||
{
|
{
|
||||||
Scheme_Env *env = (Scheme_Env *)_env;
|
return global_binding(name, (Scheme_Comp_Env *)_env);
|
||||||
|
|
||||||
return scheme_global_binding(name, env);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static Scheme_Object *
|
static Scheme_Object *
|
||||||
|
@ -3434,7 +3451,7 @@ do_define_syntaxes_syntax(Scheme_Object *form, Scheme_Comp_Env *env,
|
||||||
scheme_prepare_exp_env(env->genv);
|
scheme_prepare_exp_env(env->genv);
|
||||||
scheme_prepare_compile_env(env->genv->exp_env);
|
scheme_prepare_compile_env(env->genv->exp_env);
|
||||||
|
|
||||||
names = scheme_named_map_1(NULL, stx_val, names, (Scheme_Object *)env->genv);
|
names = scheme_named_map_1(NULL, stx_val, names, (Scheme_Object *)env);
|
||||||
|
|
||||||
exp_env = scheme_new_comp_env(env->genv->exp_env, env->insp, NULL, 0);
|
exp_env = scheme_new_comp_env(env->genv->exp_env, env->insp, NULL, 0);
|
||||||
|
|
||||||
|
@ -3517,9 +3534,11 @@ begin_for_syntax_expand(Scheme_Object *orig_form, Scheme_Comp_Env *in_env, Schem
|
||||||
scheme_prepare_exp_env(in_env->genv);
|
scheme_prepare_exp_env(in_env->genv);
|
||||||
scheme_prepare_compile_env(in_env->genv->exp_env);
|
scheme_prepare_compile_env(in_env->genv->exp_env);
|
||||||
|
|
||||||
if (rec[drec].comp)
|
if (rec[drec].comp) {
|
||||||
env = scheme_new_comp_env(in_env->genv->exp_env, in_env->insp, NULL, 0);
|
env = scheme_new_comp_env(in_env->genv->exp_env, in_env->insp, NULL,
|
||||||
else
|
(in_env->flags & SCHEME_TMP_TL_BIND_FRAME));
|
||||||
|
env->bindings = in_env->bindings;
|
||||||
|
} else
|
||||||
env = scheme_new_expand_env(in_env->genv->exp_env, in_env->insp, NULL, 0);
|
env = scheme_new_expand_env(in_env->genv->exp_env, in_env->insp, NULL, 0);
|
||||||
|
|
||||||
if (rec[drec].comp)
|
if (rec[drec].comp)
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
{
|
{
|
||||||
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,10,54,46,50,46,57,48,48,46,49,51,84,0,0,0,0,0,0,0,
|
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,10,54,46,50,46,57,48,48,46,49,53,84,0,0,0,0,0,0,0,
|
||||||
0,0,0,0,0,0,0,0,0,0,0,0,0,54,0,0,0,1,0,0,8,
|
0,0,0,0,0,0,0,0,0,0,0,0,0,54,0,0,0,1,0,0,8,
|
||||||
0,18,0,22,0,26,0,31,0,38,0,42,0,47,0,59,0,66,0,69,0,
|
0,18,0,22,0,26,0,31,0,38,0,42,0,47,0,59,0,66,0,69,0,
|
||||||
82,0,89,0,94,0,103,0,109,0,123,0,137,0,140,0,146,0,157,0,159,
|
82,0,89,0,94,0,103,0,109,0,123,0,137,0,140,0,146,0,157,0,159,
|
||||||
0,173,0,180,0,202,0,204,0,218,0,246,0,251,0,255,0,72,1,79,1,
|
0,173,0,180,0,202,0,204,0,218,0,246,0,251,0,255,0,72,1,79,1,
|
||||||
90,1,128,1,135,1,144,1,177,1,210,1,16,2,21,2,102,2,107,2,112,
|
90,1,128,1,135,1,144,1,177,1,210,1,16,2,21,2,102,2,107,2,112,
|
||||||
2,133,2,30,3,51,3,104,3,173,3,242,3,132,4,24,5,35,5,118,5,
|
2,133,2,30,3,51,3,104,3,173,3,242,3,132,4,24,5,35,5,118,5,
|
||||||
0,0,147,7,0,0,3,1,5,105,110,115,112,48,71,35,37,109,105,110,45,
|
0,0,148,7,0,0,3,1,5,105,110,115,112,48,71,35,37,109,105,110,45,
|
||||||
115,116,120,29,11,11,11,65,97,110,100,66,99,111,110,100,68,100,101,102,105,
|
115,116,120,29,11,11,11,65,97,110,100,66,99,111,110,100,68,100,101,102,105,
|
||||||
110,101,65,108,101,116,66,108,101,116,42,73,108,101,116,42,45,118,97,108,117,
|
110,101,65,108,101,116,66,108,101,116,42,73,108,101,116,42,45,118,97,108,117,
|
||||||
101,115,68,108,101,116,114,101,99,64,111,114,74,112,97,114,97,109,101,116,101,
|
101,115,68,108,101,116,114,101,99,64,111,114,74,112,97,114,97,109,101,116,101,
|
||||||
|
@ -72,37 +72,37 @@
|
||||||
22,82,248,22,164,4,196,249,22,157,4,80,143,42,39,28,248,22,64,248,22,
|
22,82,248,22,164,4,196,249,22,157,4,80,143,42,39,28,248,22,64,248,22,
|
||||||
158,4,248,22,81,197,250,22,90,2,27,248,22,90,248,22,164,20,199,248,22,
|
158,4,248,22,81,197,250,22,90,2,27,248,22,90,248,22,164,20,199,248,22,
|
||||||
102,198,27,248,22,158,4,248,22,164,20,197,250,22,90,2,27,248,22,90,248,
|
102,198,27,248,22,158,4,248,22,164,20,197,250,22,90,2,27,248,22,90,248,
|
||||||
22,81,197,250,22,91,2,24,248,22,165,20,199,248,22,165,20,202,144,39,20,
|
22,81,197,250,22,91,2,24,248,22,165,20,199,248,22,165,20,202,145,39,9,
|
||||||
121,145,2,1,39,16,1,11,16,0,20,27,15,61,9,2,2,2,2,2,3,
|
20,121,145,2,1,39,16,1,11,16,0,20,27,15,61,9,2,2,2,2,2,
|
||||||
11,11,11,11,9,9,11,11,11,10,39,80,143,39,39,20,121,145,2,1,39,
|
3,11,11,11,11,9,9,11,11,11,10,39,80,143,39,39,20,121,145,2,1,
|
||||||
16,0,16,0,41,42,39,16,0,39,16,0,39,11,11,11,16,11,2,4,2,
|
39,16,0,16,0,41,42,39,16,0,39,16,0,39,11,11,11,16,11,2,4,
|
||||||
5,2,6,2,7,2,8,2,9,2,10,2,11,2,12,2,13,2,14,16,11,
|
2,5,2,6,2,7,2,8,2,9,2,10,2,11,2,12,2,13,2,14,16,
|
||||||
11,11,11,11,11,11,11,11,11,11,11,16,11,2,4,2,5,2,6,2,7,
|
11,11,11,11,11,11,11,11,11,11,11,11,16,11,2,4,2,5,2,6,2,
|
||||||
2,8,2,9,2,10,2,11,2,12,2,13,2,14,39,50,40,16,0,39,16,
|
7,2,8,2,9,2,10,2,11,2,12,2,13,2,14,39,50,40,16,0,39,
|
||||||
1,2,15,40,11,11,11,16,0,16,0,16,0,39,39,11,12,11,11,16,0,
|
16,1,2,15,40,11,11,11,16,0,16,0,16,0,39,39,11,12,11,11,16,
|
||||||
16,0,16,0,39,39,16,12,16,5,11,20,15,16,2,20,14,144,39,39,40,
|
0,16,0,16,0,39,39,16,12,16,5,11,20,15,16,2,20,14,144,39,39,
|
||||||
80,143,39,39,39,20,121,145,2,1,39,16,1,2,15,16,1,33,36,10,16,
|
40,80,143,39,39,39,20,121,145,2,1,39,16,1,2,15,16,1,33,36,10,
|
||||||
5,2,13,88,148,8,36,40,56,40,9,223,0,33,37,39,20,121,145,2,1,
|
16,5,2,13,88,148,8,36,40,56,40,9,223,0,33,37,39,20,121,145,2,
|
||||||
39,16,1,2,15,16,0,11,16,5,2,14,88,148,8,36,40,56,40,9,223,
|
1,39,16,1,2,15,16,0,11,16,5,2,14,88,148,8,36,40,56,40,9,
|
||||||
0,33,38,39,20,121,145,2,1,39,16,1,2,15,16,0,11,16,5,2,4,
|
223,0,33,38,39,20,121,145,2,1,39,16,1,2,15,16,0,11,16,5,2,
|
||||||
88,148,8,36,40,56,42,9,223,0,33,39,39,20,121,145,2,1,39,16,1,
|
4,88,148,8,36,40,56,42,9,223,0,33,39,39,20,121,145,2,1,39,16,
|
||||||
2,15,16,1,33,40,11,16,5,2,11,88,148,8,36,40,59,42,9,223,0,
|
1,2,15,16,1,33,40,11,16,5,2,11,88,148,8,36,40,59,42,9,223,
|
||||||
33,41,39,20,121,145,2,1,39,16,1,2,15,16,1,33,42,11,16,5,2,
|
0,33,41,39,20,121,145,2,1,39,16,1,2,15,16,1,33,42,11,16,5,
|
||||||
7,88,148,8,36,40,61,40,9,223,0,33,45,39,20,121,145,2,1,39,16,
|
2,7,88,148,8,36,40,61,40,9,223,0,33,45,39,20,121,145,2,1,39,
|
||||||
1,2,15,16,0,11,16,5,2,10,88,148,8,36,40,56,40,9,223,0,33,
|
16,1,2,15,16,0,11,16,5,2,10,88,148,8,36,40,56,40,9,223,0,
|
||||||
47,39,20,121,145,2,1,39,16,1,2,15,16,0,11,16,5,2,8,88,148,
|
33,47,39,20,121,145,2,1,39,16,1,2,15,16,0,11,16,5,2,8,88,
|
||||||
8,36,40,57,40,9,223,0,33,48,39,20,121,145,2,1,39,16,1,2,15,
|
148,8,36,40,57,40,9,223,0,33,48,39,20,121,145,2,1,39,16,1,2,
|
||||||
16,0,11,16,5,2,9,88,148,8,36,40,57,40,9,223,0,33,49,39,20,
|
15,16,0,11,16,5,2,9,88,148,8,36,40,57,40,9,223,0,33,49,39,
|
||||||
121,145,2,1,39,16,1,2,15,16,0,11,16,5,2,12,88,148,8,36,40,
|
20,121,145,2,1,39,16,1,2,15,16,0,11,16,5,2,12,88,148,8,36,
|
||||||
59,40,9,223,0,33,50,39,20,121,145,2,1,39,16,1,2,15,16,0,11,
|
40,59,40,9,223,0,33,50,39,20,121,145,2,1,39,16,1,2,15,16,0,
|
||||||
16,5,2,5,88,148,8,36,40,61,42,9,223,0,33,51,39,20,121,145,2,
|
11,16,5,2,5,88,148,8,36,40,61,42,9,223,0,33,51,39,20,121,145,
|
||||||
1,39,16,1,2,15,16,1,33,52,11,16,5,2,6,88,148,8,36,40,57,
|
2,1,39,16,1,2,15,16,1,33,52,11,16,5,2,6,88,148,8,36,40,
|
||||||
40,9,223,0,33,53,39,20,121,145,2,1,39,16,1,2,15,16,0,11,16,
|
57,40,9,223,0,33,53,39,20,121,145,2,1,39,16,1,2,15,16,0,11,
|
||||||
0,94,2,17,2,18,93,2,17,9,9,39,9,0};
|
16,0,94,2,17,2,18,93,2,17,9,9,39,9,0};
|
||||||
EVAL_ONE_SIZED_STR((char *)expr, 2092);
|
EVAL_ONE_SIZED_STR((char *)expr, 2093);
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,10,54,46,50,46,57,48,48,46,49,51,84,0,0,0,0,0,0,0,
|
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,10,54,46,50,46,57,48,48,46,49,53,84,0,0,0,0,0,0,0,
|
||||||
0,0,0,0,0,0,0,0,0,0,0,0,0,192,0,0,0,1,0,0,8,
|
0,0,0,0,0,0,0,0,0,0,0,0,0,192,0,0,0,1,0,0,8,
|
||||||
0,16,0,29,0,34,0,51,0,63,0,85,0,114,0,158,0,164,0,178,0,
|
0,16,0,29,0,34,0,51,0,63,0,85,0,114,0,158,0,164,0,178,0,
|
||||||
193,0,211,0,223,0,239,0,253,0,19,1,39,1,73,1,90,1,107,1,130,
|
193,0,211,0,223,0,239,0,253,0,19,1,39,1,73,1,90,1,107,1,130,
|
||||||
|
@ -122,7 +122,7 @@
|
||||||
109,45,167,45,200,45,76,46,235,46,251,46,92,47,109,47,187,49,238,51,254,
|
109,45,167,45,200,45,76,46,235,46,251,46,92,47,109,47,187,49,238,51,254,
|
||||||
51,228,53,160,54,162,54,189,54,205,54,221,54,62,55,129,56,61,57,77,57,
|
51,228,53,160,54,162,54,189,54,205,54,221,54,62,55,129,56,61,57,77,57,
|
||||||
86,57,93,57,159,58,225,59,87,60,133,63,7,64,139,64,84,66,34,67,76,
|
86,57,93,57,159,58,225,59,87,60,133,63,7,64,139,64,84,66,34,67,76,
|
||||||
67,184,67,0,0,131,75,0,0,3,1,5,105,110,115,112,48,69,35,37,117,
|
67,184,67,0,0,132,75,0,0,3,1,5,105,110,115,112,48,69,35,37,117,
|
||||||
116,105,108,115,74,112,97,116,104,45,115,116,114,105,110,103,63,66,98,115,98,
|
116,105,108,115,74,112,97,116,104,45,115,116,114,105,110,103,63,66,98,115,98,
|
||||||
115,78,110,111,114,109,97,108,45,99,97,115,101,45,112,97,116,104,73,114,101,
|
115,78,110,111,114,109,97,108,45,99,97,115,101,45,112,97,116,104,73,114,101,
|
||||||
114,111,111,116,45,112,97,116,104,1,20,102,105,110,100,45,101,120,101,99,117,
|
114,111,111,116,45,112,97,116,104,1,20,102,105,110,100,45,101,120,101,99,117,
|
||||||
|
@ -947,109 +947,110 @@
|
||||||
27,250,80,144,45,43,42,248,22,152,16,2,56,11,11,27,248,22,139,4,23,
|
27,250,80,144,45,43,42,248,22,152,16,2,56,11,11,27,248,22,139,4,23,
|
||||||
199,1,27,28,23,194,2,23,194,1,86,94,23,194,1,39,27,248,22,139,4,
|
199,1,27,28,23,194,2,23,194,1,86,94,23,194,1,39,27,248,22,139,4,
|
||||||
23,202,1,249,22,140,6,23,198,1,20,20,95,88,148,8,36,39,51,11,9,
|
23,202,1,249,22,140,6,23,198,1,20,20,95,88,148,8,36,39,51,11,9,
|
||||||
224,3,2,33,190,2,23,195,1,23,196,1,248,80,144,41,8,54,42,193,144,
|
224,3,2,33,190,2,23,195,1,23,196,1,248,80,144,41,8,54,42,193,145,
|
||||||
39,20,121,145,2,1,39,16,1,11,16,0,20,27,15,56,9,2,2,2,2,
|
39,9,20,121,145,2,1,39,16,1,11,16,0,20,27,15,56,9,2,2,2,
|
||||||
29,11,11,11,11,11,11,11,9,9,11,11,11,10,46,80,143,39,39,20,121,
|
2,29,11,11,11,11,11,11,11,9,9,11,11,11,10,46,80,143,39,39,20,
|
||||||
145,2,1,54,16,40,2,3,2,4,2,5,2,6,2,7,2,8,2,9,30,
|
121,145,2,1,54,16,40,2,3,2,4,2,5,2,6,2,7,2,8,2,9,
|
||||||
2,11,1,20,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,45,
|
30,2,11,1,20,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,
|
||||||
107,101,121,11,6,30,2,11,1,23,101,120,116,101,110,100,45,112,97,114,97,
|
45,107,101,121,11,6,30,2,11,1,23,101,120,116,101,110,100,45,112,97,114,
|
||||||
109,101,116,101,114,105,122,97,116,105,111,110,11,4,2,12,2,13,2,14,2,
|
97,109,101,116,101,114,105,122,97,116,105,111,110,11,4,2,12,2,13,2,14,
|
||||||
15,2,16,2,17,2,18,30,2,11,1,19,99,97,99,104,101,45,99,111,110,
|
2,15,2,16,2,17,2,18,30,2,11,1,19,99,97,99,104,101,45,99,111,
|
||||||
102,105,103,117,114,97,116,105,111,110,11,1,2,19,2,20,2,21,2,22,2,
|
110,102,105,103,117,114,97,116,105,111,110,11,1,2,19,2,20,2,21,2,22,
|
||||||
23,2,24,2,25,2,26,2,27,2,28,2,29,30,2,11,1,21,101,120,99,
|
2,23,2,24,2,25,2,26,2,27,2,28,2,29,30,2,11,1,21,101,120,
|
||||||
101,112,116,105,111,110,45,104,97,110,100,108,101,114,45,107,101,121,11,3,2,
|
99,101,112,116,105,111,110,45,104,97,110,100,108,101,114,45,107,101,121,11,3,
|
||||||
30,2,31,2,32,2,33,2,34,2,35,2,36,2,37,2,38,2,39,2,40,
|
2,30,2,31,2,32,2,33,2,34,2,35,2,36,2,37,2,38,2,39,2,
|
||||||
16,0,40,42,39,16,0,39,16,19,2,13,2,14,2,12,2,25,2,4,2,
|
40,16,0,40,42,39,16,0,39,16,19,2,13,2,14,2,12,2,25,2,4,
|
||||||
35,2,23,2,24,2,19,2,29,2,33,2,21,2,22,2,31,2,27,2,30,
|
2,35,2,23,2,24,2,19,2,29,2,33,2,21,2,22,2,31,2,27,2,
|
||||||
2,32,2,36,2,28,58,11,11,11,16,17,2,9,2,17,2,15,2,40,2,
|
30,2,32,2,36,2,28,58,11,11,11,16,17,2,9,2,17,2,15,2,40,
|
||||||
16,2,7,2,26,2,39,2,18,2,20,2,38,2,5,2,34,2,8,2,37,
|
2,16,2,7,2,26,2,39,2,18,2,20,2,38,2,5,2,34,2,8,2,
|
||||||
2,3,2,6,16,17,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
|
37,2,3,2,6,16,17,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
|
||||||
11,11,16,17,2,9,2,17,2,15,2,40,2,16,2,7,2,26,2,39,2,
|
11,11,11,16,17,2,9,2,17,2,15,2,40,2,16,2,7,2,26,2,39,
|
||||||
18,2,20,2,38,2,5,2,34,2,8,2,37,2,3,2,6,56,56,40,12,
|
2,18,2,20,2,38,2,5,2,34,2,8,2,37,2,3,2,6,56,56,40,
|
||||||
11,11,16,0,16,0,16,0,39,39,11,12,11,11,16,0,16,0,16,0,39,
|
12,11,11,16,0,16,0,16,0,39,39,11,12,11,11,16,0,16,0,16,0,
|
||||||
39,16,51,20,15,16,2,32,0,88,148,8,36,40,48,11,2,3,222,33,78,
|
39,39,16,51,20,15,16,2,32,0,88,148,8,36,40,48,11,2,3,222,33,
|
||||||
80,144,39,39,40,20,15,16,2,249,22,155,7,7,92,7,92,80,144,39,40,
|
78,80,144,39,39,40,20,15,16,2,249,22,155,7,7,92,7,92,80,144,39,
|
||||||
40,20,15,16,2,88,148,8,36,40,57,41,2,5,223,0,33,83,80,144,39,
|
40,40,20,15,16,2,88,148,8,36,40,57,41,2,5,223,0,33,83,80,144,
|
||||||
41,40,20,15,16,2,88,148,8,36,41,61,41,2,6,223,0,33,85,80,144,
|
39,41,40,20,15,16,2,88,148,8,36,41,61,41,2,6,223,0,33,85,80,
|
||||||
39,42,40,20,15,16,2,20,26,96,2,7,88,148,8,36,42,8,24,8,32,
|
144,39,42,40,20,15,16,2,20,26,96,2,7,88,148,8,36,42,8,24,8,
|
||||||
9,223,0,33,92,88,148,8,36,41,50,55,9,223,0,33,93,88,148,8,36,
|
32,9,223,0,33,92,88,148,8,36,41,50,55,9,223,0,33,93,88,148,8,
|
||||||
40,49,55,9,223,0,33,94,80,144,39,43,40,20,15,16,2,27,248,22,164,
|
36,40,49,55,9,223,0,33,94,80,144,39,43,40,20,15,16,2,27,248,22,
|
||||||
16,248,22,167,8,27,28,249,22,169,9,247,22,180,8,2,43,6,1,1,59,
|
164,16,248,22,167,8,27,28,249,22,169,9,247,22,180,8,2,43,6,1,1,
|
||||||
6,1,1,58,250,22,137,8,6,14,14,40,91,94,126,97,93,42,41,126,97,
|
59,6,1,1,58,250,22,137,8,6,14,14,40,91,94,126,97,93,42,41,126,
|
||||||
40,46,42,41,23,196,2,23,196,1,88,148,8,36,41,51,11,2,8,223,0,
|
97,40,46,42,41,23,196,2,23,196,1,88,148,8,36,41,51,11,2,8,223,
|
||||||
33,98,80,144,39,44,40,20,15,16,2,88,148,39,40,8,38,8,128,6,2,
|
0,33,98,80,144,39,44,40,20,15,16,2,88,148,39,40,8,38,8,128,6,
|
||||||
9,223,0,33,99,80,144,39,45,40,20,15,16,2,32,0,88,148,8,36,41,
|
2,9,223,0,33,99,80,144,39,45,40,20,15,16,2,32,0,88,148,8,36,
|
||||||
50,11,2,12,222,33,100,80,144,39,48,40,20,15,16,2,32,0,88,148,8,
|
41,50,11,2,12,222,33,100,80,144,39,48,40,20,15,16,2,32,0,88,148,
|
||||||
36,42,51,11,2,13,222,33,102,80,144,39,49,40,20,15,16,2,32,0,88,
|
8,36,42,51,11,2,13,222,33,102,80,144,39,49,40,20,15,16,2,32,0,
|
||||||
148,8,36,41,49,11,2,14,222,33,103,80,144,39,50,40,20,15,16,2,88,
|
88,148,8,36,41,49,11,2,14,222,33,103,80,144,39,50,40,20,15,16,2,
|
||||||
148,39,42,53,8,128,128,2,15,223,0,33,105,80,144,39,51,40,20,15,16,
|
88,148,39,42,53,8,128,128,2,15,223,0,33,105,80,144,39,51,40,20,15,
|
||||||
2,88,148,39,44,55,8,128,128,2,17,223,0,33,107,80,144,39,53,40,20,
|
16,2,88,148,39,44,55,8,128,128,2,17,223,0,33,107,80,144,39,53,40,
|
||||||
15,16,2,88,148,39,39,56,55,9,223,0,33,108,80,144,39,8,40,42,20,
|
20,15,16,2,88,148,39,39,56,55,9,223,0,33,108,80,144,39,8,40,42,
|
||||||
15,16,2,88,148,39,39,47,16,4,39,40,8,128,4,39,2,18,223,0,33,
|
20,15,16,2,88,148,39,39,47,16,4,39,40,8,128,4,39,2,18,223,0,
|
||||||
109,80,144,39,54,40,20,15,16,2,88,148,39,39,56,55,9,223,0,33,110,
|
33,109,80,144,39,54,40,20,15,16,2,88,148,39,39,56,55,9,223,0,33,
|
||||||
80,144,39,8,41,42,20,15,16,2,88,148,39,39,47,16,4,39,40,8,128,
|
110,80,144,39,8,41,42,20,15,16,2,88,148,39,39,47,16,4,39,40,8,
|
||||||
8,39,2,20,223,0,33,111,80,144,39,57,40,20,15,16,2,88,148,8,36,
|
128,8,39,2,20,223,0,33,111,80,144,39,57,40,20,15,16,2,88,148,8,
|
||||||
39,8,38,8,128,6,9,223,0,33,112,80,144,39,8,42,42,20,15,16,2,
|
36,39,8,38,8,128,6,9,223,0,33,112,80,144,39,8,42,42,20,15,16,
|
||||||
88,148,8,36,40,50,16,4,39,39,8,128,16,39,2,21,223,0,33,113,80,
|
2,88,148,8,36,40,50,16,4,39,39,8,128,16,39,2,21,223,0,33,113,
|
||||||
144,39,58,40,20,15,16,2,20,28,143,32,0,88,148,39,40,48,11,2,22,
|
80,144,39,58,40,20,15,16,2,20,28,143,32,0,88,148,39,40,48,11,2,
|
||||||
222,33,114,32,0,88,148,39,40,48,11,2,22,222,33,115,80,144,39,59,40,
|
22,222,33,114,32,0,88,148,39,40,48,11,2,22,222,33,115,80,144,39,59,
|
||||||
20,15,16,2,88,148,8,36,40,50,8,240,0,128,0,0,2,23,223,0,33,
|
40,20,15,16,2,88,148,8,36,40,50,8,240,0,128,0,0,2,23,223,0,
|
||||||
116,80,144,39,60,40,20,15,16,2,88,148,39,39,56,55,9,223,0,33,117,
|
33,116,80,144,39,60,40,20,15,16,2,88,148,39,39,56,55,9,223,0,33,
|
||||||
80,144,39,8,43,42,20,15,16,2,88,148,8,36,40,51,16,4,39,40,8,
|
117,80,144,39,8,43,42,20,15,16,2,88,148,8,36,40,51,16,4,39,40,
|
||||||
128,32,39,2,24,223,0,33,118,80,144,39,61,40,20,15,16,2,88,148,39,
|
8,128,32,39,2,24,223,0,33,118,80,144,39,61,40,20,15,16,2,88,148,
|
||||||
40,56,55,2,19,223,0,33,119,80,144,39,56,40,20,15,16,2,88,148,8,
|
39,40,56,55,2,19,223,0,33,119,80,144,39,56,40,20,15,16,2,88,148,
|
||||||
36,41,58,16,4,8,240,0,128,0,0,8,32,8,128,64,39,2,50,223,0,
|
8,36,41,58,16,4,8,240,0,128,0,0,8,32,8,128,64,39,2,50,223,
|
||||||
33,120,80,144,39,8,44,42,20,15,16,2,88,148,8,36,42,52,16,4,39,
|
0,33,120,80,144,39,8,44,42,20,15,16,2,88,148,8,36,42,52,16,4,
|
||||||
39,8,128,64,39,2,25,223,0,33,121,80,144,39,8,23,40,20,15,16,2,
|
39,39,8,128,64,39,2,25,223,0,33,121,80,144,39,8,23,40,20,15,16,
|
||||||
88,148,39,39,56,55,9,223,0,33,122,80,144,39,8,45,42,20,15,16,2,
|
2,88,148,39,39,56,55,9,223,0,33,122,80,144,39,8,45,42,20,15,16,
|
||||||
88,148,8,36,39,57,16,4,8,240,0,128,0,0,8,137,2,8,128,128,39,
|
2,88,148,8,36,39,57,16,4,8,240,0,128,0,0,8,137,2,8,128,128,
|
||||||
2,26,223,0,33,123,80,144,39,8,24,40,20,15,16,2,247,22,140,2,80,
|
39,2,26,223,0,33,123,80,144,39,8,24,40,20,15,16,2,247,22,140,2,
|
||||||
144,39,8,25,40,20,15,16,2,248,22,16,67,115,116,97,109,112,80,144,39,
|
80,144,39,8,25,40,20,15,16,2,248,22,16,67,115,116,97,109,112,80,144,
|
||||||
8,26,40,20,15,16,2,88,148,39,40,49,8,240,0,0,0,4,9,223,0,
|
39,8,26,40,20,15,16,2,88,148,39,40,49,8,240,0,0,0,4,9,223,
|
||||||
33,125,80,144,39,8,46,42,20,15,16,2,88,148,39,41,51,16,4,39,8,
|
0,33,125,80,144,39,8,46,42,20,15,16,2,88,148,39,41,51,16,4,39,
|
||||||
128,80,8,240,0,64,0,0,39,2,29,223,0,33,133,2,80,144,39,8,27,
|
8,128,80,8,240,0,64,0,0,39,2,29,223,0,33,133,2,80,144,39,8,
|
||||||
40,20,15,16,2,32,0,88,148,8,36,40,48,11,2,30,222,33,134,2,80,
|
27,40,20,15,16,2,32,0,88,148,8,36,40,48,11,2,30,222,33,134,2,
|
||||||
144,39,8,29,40,20,15,16,2,88,148,8,36,42,48,8,240,0,0,0,2,
|
80,144,39,8,29,40,20,15,16,2,88,148,8,36,42,48,8,240,0,0,0,
|
||||||
74,109,97,107,101,45,104,97,110,100,108,101,114,223,0,33,136,2,80,144,39,
|
2,74,109,97,107,101,45,104,97,110,100,108,101,114,223,0,33,136,2,80,144,
|
||||||
8,47,42,20,15,16,2,88,148,39,40,47,16,4,8,128,6,8,128,104,8,
|
39,8,47,42,20,15,16,2,88,148,39,40,47,16,4,8,128,6,8,128,104,
|
||||||
240,0,128,0,0,39,2,31,223,0,33,146,2,80,144,39,8,30,40,20,15,
|
8,240,0,128,0,0,39,2,31,223,0,33,146,2,80,144,39,8,30,40,20,
|
||||||
16,2,88,148,39,41,59,16,2,39,8,240,0,128,0,0,2,32,223,0,33,
|
15,16,2,88,148,39,41,59,16,2,39,8,240,0,128,0,0,2,32,223,0,
|
||||||
148,2,80,144,39,8,31,40,20,15,16,2,88,148,8,36,41,61,16,4,39,
|
33,148,2,80,144,39,8,31,40,20,15,16,2,88,148,8,36,41,61,16,4,
|
||||||
8,240,0,64,0,0,39,40,2,50,223,0,33,149,2,80,144,39,8,48,42,
|
39,8,240,0,64,0,0,39,40,2,50,223,0,33,149,2,80,144,39,8,48,
|
||||||
20,15,16,2,88,148,39,47,8,33,16,4,39,39,40,41,67,99,108,111,111,
|
42,20,15,16,2,88,148,39,47,8,33,16,4,39,39,40,41,67,99,108,111,
|
||||||
112,223,0,33,156,2,80,144,39,8,49,42,20,15,16,2,88,148,39,44,8,
|
111,112,223,0,33,156,2,80,144,39,8,49,42,20,15,16,2,88,148,39,44,
|
||||||
25,16,4,39,8,240,0,192,0,0,39,42,2,16,223,0,33,157,2,80,144,
|
8,25,16,4,39,8,240,0,192,0,0,39,42,2,16,223,0,33,157,2,80,
|
||||||
39,52,40,20,15,16,2,88,148,39,42,58,16,4,47,39,43,39,2,33,223,
|
144,39,52,40,20,15,16,2,88,148,39,42,58,16,4,47,39,43,39,2,33,
|
||||||
0,33,162,2,80,144,39,8,32,40,20,15,16,2,32,0,88,148,39,42,53,
|
223,0,33,162,2,80,144,39,8,32,40,20,15,16,2,32,0,88,148,39,42,
|
||||||
11,2,35,222,33,163,2,80,144,39,8,34,40,20,15,16,2,32,0,88,148,
|
53,11,2,35,222,33,163,2,80,144,39,8,34,40,20,15,16,2,32,0,88,
|
||||||
8,36,44,8,27,11,2,36,222,33,168,2,80,144,39,8,35,40,20,15,16,
|
148,8,36,44,8,27,11,2,36,222,33,168,2,80,144,39,8,35,40,20,15,
|
||||||
2,20,28,143,32,0,88,148,8,36,41,55,11,2,37,222,33,171,2,88,148,
|
16,2,20,28,143,32,0,88,148,8,36,41,55,11,2,37,222,33,171,2,88,
|
||||||
8,100,41,52,16,4,39,39,47,39,2,37,223,0,33,173,2,80,144,39,8,
|
148,8,100,41,52,16,4,39,39,47,39,2,37,223,0,33,173,2,80,144,39,
|
||||||
36,40,20,15,16,2,20,28,143,32,0,88,148,8,36,41,55,11,2,34,222,
|
8,36,40,20,15,16,2,20,28,143,32,0,88,148,8,36,41,55,11,2,34,
|
||||||
33,178,2,88,148,8,100,41,52,16,4,39,39,47,39,2,34,223,0,33,179,
|
222,33,178,2,88,148,8,100,41,52,16,4,39,39,47,39,2,34,223,0,33,
|
||||||
2,80,144,39,8,33,40,20,15,16,2,20,28,143,32,0,88,148,39,40,47,
|
179,2,80,144,39,8,33,40,20,15,16,2,20,28,143,32,0,88,148,39,40,
|
||||||
11,2,38,222,33,180,2,32,0,88,148,39,40,47,11,2,38,222,33,181,2,
|
47,11,2,38,222,33,180,2,32,0,88,148,39,40,47,11,2,38,222,33,181,
|
||||||
80,144,39,8,37,40,20,15,16,2,88,148,8,36,40,58,16,4,55,41,39,
|
2,80,144,39,8,37,40,20,15,16,2,88,148,8,36,40,58,16,4,55,41,
|
||||||
43,2,50,223,0,33,182,2,80,144,39,8,50,42,20,15,16,2,88,148,8,
|
39,43,2,50,223,0,33,182,2,80,144,39,8,50,42,20,15,16,2,88,148,
|
||||||
36,40,58,16,4,55,41,39,47,2,50,223,0,33,183,2,80,144,39,8,51,
|
8,36,40,58,16,4,55,41,39,47,2,50,223,0,33,183,2,80,144,39,8,
|
||||||
42,20,15,16,2,88,148,39,39,56,55,9,223,0,33,184,2,80,144,39,8,
|
51,42,20,15,16,2,88,148,39,39,56,55,9,223,0,33,184,2,80,144,39,
|
||||||
52,42,20,15,16,2,88,148,8,36,40,8,23,16,4,55,41,39,8,32,2,
|
8,52,42,20,15,16,2,88,148,8,36,40,8,23,16,4,55,41,39,8,32,
|
||||||
50,223,0,33,185,2,80,144,39,8,53,42,20,15,16,2,20,26,96,2,39,
|
2,50,223,0,33,185,2,80,144,39,8,53,42,20,15,16,2,20,26,96,2,
|
||||||
88,148,39,39,60,16,4,8,32,8,140,2,39,43,9,223,0,33,186,2,88,
|
39,88,148,39,39,60,16,4,8,32,8,140,2,39,43,9,223,0,33,186,2,
|
||||||
148,39,40,61,16,4,8,32,8,140,2,39,47,9,223,0,33,187,2,88,148,
|
88,148,39,40,61,16,4,8,32,8,140,2,39,47,9,223,0,33,187,2,88,
|
||||||
39,41,8,30,16,4,8,48,8,139,2,39,8,48,9,223,0,33,188,2,80,
|
148,39,41,8,30,16,4,8,48,8,139,2,39,8,48,9,223,0,33,188,2,
|
||||||
144,39,8,38,40,20,15,16,2,88,148,8,36,40,60,16,4,8,128,6,39,
|
80,144,39,8,38,40,20,15,16,2,88,148,8,36,40,60,16,4,8,128,6,
|
||||||
39,8,64,2,50,223,0,33,189,2,80,144,39,8,54,42,20,15,16,2,88,
|
39,39,8,64,2,50,223,0,33,189,2,80,144,39,8,54,42,20,15,16,2,
|
||||||
148,8,36,42,56,16,4,55,39,39,8,64,2,40,223,0,33,191,2,80,144,
|
88,148,8,36,42,56,16,4,55,39,39,8,64,2,40,223,0,33,191,2,80,
|
||||||
39,8,39,40,95,29,94,2,10,70,35,37,107,101,114,110,101,108,11,29,94,
|
144,39,8,39,40,95,29,94,2,10,70,35,37,107,101,114,110,101,108,11,29,
|
||||||
2,10,71,35,37,109,105,110,45,115,116,120,11,2,11,9,9,9,39,9,0};
|
94,2,10,71,35,37,109,105,110,45,115,116,120,11,2,11,9,9,9,39,9,
|
||||||
EVAL_ONE_SIZED_STR((char *)expr, 19760);
|
0};
|
||||||
|
EVAL_ONE_SIZED_STR((char *)expr, 19761);
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,10,54,46,50,46,57,48,48,46,49,51,84,0,0,0,0,0,0,0,
|
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,10,54,46,50,46,57,48,48,46,49,53,84,0,0,0,0,0,0,0,
|
||||||
0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,1,0,0,8,
|
0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,1,0,0,8,
|
||||||
0,23,0,48,0,65,0,83,0,105,0,128,0,149,0,171,0,180,0,189,0,
|
0,23,0,48,0,65,0,83,0,105,0,128,0,149,0,171,0,180,0,189,0,
|
||||||
196,0,205,0,212,0,0,0,247,1,0,0,3,1,5,105,110,115,112,48,76,
|
196,0,205,0,212,0,0,0,248,1,0,0,3,1,5,105,110,115,112,48,76,
|
||||||
35,37,112,108,97,99,101,45,115,116,114,117,99,116,1,23,115,116,114,117,99,
|
35,37,112,108,97,99,101,45,115,116,114,117,99,116,1,23,115,116,114,117,99,
|
||||||
116,58,84,72,45,112,108,97,99,101,45,99,104,97,110,110,101,108,78,84,72,
|
116,58,84,72,45,112,108,97,99,101,45,99,104,97,110,110,101,108,78,84,72,
|
||||||
45,112,108,97,99,101,45,99,104,97,110,110,101,108,79,84,72,45,112,108,97,
|
45,112,108,97,99,101,45,99,104,97,110,110,101,108,79,84,72,45,112,108,97,
|
||||||
|
@ -1059,25 +1060,25 @@
|
||||||
97,99,101,45,99,104,97,110,110,101,108,45,105,110,1,20,84,72,45,112,108,
|
97,99,101,45,99,104,97,110,110,101,108,45,105,110,1,20,84,72,45,112,108,
|
||||||
97,99,101,45,99,104,97,110,110,101,108,45,111,117,116,249,80,143,41,42,23,
|
97,99,101,45,99,104,97,110,110,101,108,45,111,117,116,249,80,143,41,42,23,
|
||||||
196,1,39,249,80,143,41,42,23,196,1,39,249,80,143,41,42,195,39,249,80,
|
196,1,39,249,80,143,41,42,23,196,1,39,249,80,143,41,42,195,39,249,80,
|
||||||
143,41,42,23,196,1,40,249,80,143,41,42,195,40,144,39,20,121,145,2,1,
|
143,41,42,23,196,1,40,249,80,143,41,42,195,40,145,39,9,20,121,145,2,
|
||||||
39,16,1,11,16,0,20,27,15,56,9,2,2,2,2,29,11,11,11,11,11,
|
1,39,16,1,11,16,0,20,27,15,56,9,2,2,2,2,29,11,11,11,11,
|
||||||
11,11,9,9,11,11,11,10,48,80,143,39,39,20,121,145,2,1,39,16,7,
|
11,11,11,9,9,11,11,11,10,48,80,143,39,39,20,121,145,2,1,39,16,
|
||||||
2,3,2,4,2,5,2,6,2,7,2,8,2,9,16,0,40,42,39,16,0,
|
7,2,3,2,4,2,5,2,6,2,7,2,8,2,9,16,0,40,42,39,16,
|
||||||
39,16,2,2,6,2,7,41,11,11,11,16,5,2,4,2,8,2,9,2,5,
|
0,39,16,2,2,6,2,7,41,11,11,11,16,5,2,4,2,8,2,9,2,
|
||||||
2,3,16,5,11,11,11,11,11,16,5,2,4,2,8,2,9,2,5,2,3,
|
5,2,3,16,5,11,11,11,11,11,16,5,2,4,2,8,2,9,2,5,2,
|
||||||
44,44,40,12,11,11,16,0,16,0,16,0,39,39,11,12,11,11,16,0,16,
|
3,44,44,40,12,11,11,16,0,16,0,16,0,39,39,11,12,11,11,16,0,
|
||||||
0,16,0,39,39,16,3,20,15,16,6,253,22,190,10,2,4,11,41,39,11,
|
16,0,16,0,39,39,16,3,20,15,16,6,253,22,190,10,2,4,11,41,39,
|
||||||
248,22,90,249,22,80,22,175,10,88,148,39,40,48,47,9,223,9,33,10,80,
|
11,248,22,90,249,22,80,22,175,10,88,148,39,40,48,47,9,223,9,33,10,
|
||||||
144,39,39,40,80,144,39,40,40,80,144,39,41,40,80,144,39,42,40,80,144,
|
80,144,39,39,40,80,144,39,40,40,80,144,39,41,40,80,144,39,42,40,80,
|
||||||
39,43,40,20,15,16,2,20,28,143,88,148,39,40,48,47,9,223,0,33,11,
|
144,39,43,40,20,15,16,2,20,28,143,88,148,39,40,48,47,9,223,0,33,
|
||||||
88,148,39,40,48,47,9,223,0,33,12,80,144,39,44,40,20,15,16,2,20,
|
11,88,148,39,40,48,47,9,223,0,33,12,80,144,39,44,40,20,15,16,2,
|
||||||
28,143,88,148,39,40,48,47,9,223,0,33,13,88,148,39,40,48,47,9,223,
|
20,28,143,88,148,39,40,48,47,9,223,0,33,13,88,148,39,40,48,47,9,
|
||||||
0,33,14,80,144,39,45,40,93,29,94,67,113,117,111,116,101,70,35,37,107,
|
223,0,33,14,80,144,39,45,40,93,29,94,67,113,117,111,116,101,70,35,37,
|
||||||
101,114,110,101,108,11,9,9,9,39,9,0};
|
107,101,114,110,101,108,11,9,9,9,39,9,0};
|
||||||
EVAL_ONE_SIZED_STR((char *)expr, 578);
|
EVAL_ONE_SIZED_STR((char *)expr, 579);
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,10,54,46,50,46,57,48,48,46,49,51,84,0,0,0,0,0,0,0,
|
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,10,54,46,50,46,57,48,48,46,49,53,84,0,0,0,0,0,0,0,
|
||||||
0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,1,0,0,8,
|
0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,1,0,0,8,
|
||||||
0,15,0,26,0,53,0,59,0,73,0,86,0,112,0,129,0,151,0,159,0,
|
0,15,0,26,0,53,0,59,0,73,0,86,0,112,0,129,0,151,0,159,0,
|
||||||
171,0,186,0,202,0,220,0,241,0,253,0,13,1,36,1,60,1,72,1,103,
|
171,0,186,0,202,0,220,0,241,0,253,0,13,1,36,1,60,1,72,1,103,
|
||||||
|
@ -1088,7 +1089,7 @@
|
||||||
13,165,13,160,14,40,15,115,15,22,16,35,16,188,16,116,17,159,17,241,17,
|
13,165,13,160,14,40,15,115,15,22,16,35,16,188,16,116,17,159,17,241,17,
|
||||||
113,18,174,18,182,18,193,18,227,19,74,20,102,20,115,20,36,21,43,21,203,
|
113,18,174,18,182,18,193,18,227,19,74,20,102,20,115,20,36,21,43,21,203,
|
||||||
21,223,21,67,22,89,22,99,22,113,22,151,22,250,22,254,22,5,23,211,23,
|
21,223,21,67,22,89,22,99,22,113,22,151,22,250,22,254,22,5,23,211,23,
|
||||||
104,32,157,32,181,32,205,32,0,0,253,36,0,0,3,1,5,105,110,115,112,
|
104,32,157,32,181,32,205,32,0,0,254,36,0,0,3,1,5,105,110,115,112,
|
||||||
48,68,35,37,98,111,111,116,72,100,108,108,45,115,117,102,102,105,120,1,25,
|
48,68,35,37,98,111,111,116,72,100,108,108,45,115,117,102,102,105,120,1,25,
|
||||||
100,101,102,97,117,108,116,45,108,111,97,100,47,117,115,101,45,99,111,109,112,
|
100,101,102,97,117,108,116,45,108,111,97,100,47,117,115,101,45,99,111,109,112,
|
||||||
105,108,101,100,67,113,117,111,116,101,29,94,2,5,70,35,37,112,97,114,97,
|
105,108,101,100,67,113,117,111,116,101,29,94,2,5,70,35,37,112,97,114,97,
|
||||||
|
@ -1488,65 +1489,65 @@
|
||||||
22,190,4,80,144,40,60,41,248,22,176,5,80,144,40,40,42,248,22,144,15,
|
22,190,4,80,144,40,60,41,248,22,176,5,80,144,40,40,42,248,22,144,15,
|
||||||
80,144,40,48,42,20,18,144,11,80,143,39,59,248,80,144,40,8,27,40,249,
|
80,144,40,48,42,20,18,144,11,80,143,39,59,248,80,144,40,8,27,40,249,
|
||||||
22,31,11,80,144,42,41,40,20,18,144,11,80,143,39,59,248,80,144,40,8,
|
22,31,11,80,144,42,41,40,20,18,144,11,80,143,39,59,248,80,144,40,8,
|
||||||
27,40,249,22,31,11,80,144,42,41,40,144,39,20,121,145,2,1,39,16,1,
|
27,40,249,22,31,11,80,144,42,41,40,145,39,9,20,121,145,2,1,39,16,
|
||||||
11,16,0,20,27,15,56,9,2,2,2,2,29,11,11,11,11,11,11,11,9,
|
1,11,16,0,20,27,15,56,9,2,2,2,2,29,11,11,11,11,11,11,11,
|
||||||
9,11,11,11,10,41,80,143,39,39,20,121,145,2,1,44,16,28,2,3,2,
|
9,9,11,11,11,10,41,80,143,39,39,20,121,145,2,1,44,16,28,2,3,
|
||||||
4,30,2,6,1,20,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,
|
2,4,30,2,6,1,20,112,97,114,97,109,101,116,101,114,105,122,97,116,105,
|
||||||
110,45,107,101,121,11,6,30,2,6,1,23,101,120,116,101,110,100,45,112,97,
|
111,110,45,107,101,121,11,6,30,2,6,1,23,101,120,116,101,110,100,45,112,
|
||||||
114,97,109,101,116,101,114,105,122,97,116,105,111,110,11,4,30,2,7,74,112,
|
97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,11,4,30,2,7,74,
|
||||||
97,116,104,45,115,116,114,105,110,103,63,42,196,15,2,8,30,2,7,73,114,
|
112,97,116,104,45,115,116,114,105,110,103,63,42,196,15,2,8,30,2,7,73,
|
||||||
101,114,111,111,116,45,112,97,116,104,44,196,16,30,2,7,77,112,97,116,104,
|
114,101,114,111,111,116,45,112,97,116,104,44,196,16,30,2,7,77,112,97,116,
|
||||||
45,97,100,100,45,115,117,102,102,105,120,44,196,12,2,9,2,10,2,11,2,
|
104,45,97,100,100,45,115,117,102,102,105,120,44,196,12,2,9,2,10,2,11,
|
||||||
12,2,13,2,14,2,15,2,16,2,17,2,18,2,19,2,20,2,21,2,22,
|
2,12,2,13,2,14,2,15,2,16,2,17,2,18,2,19,2,20,2,21,2,
|
||||||
30,2,7,1,19,112,97,116,104,45,114,101,112,108,97,99,101,45,115,117,102,
|
22,30,2,7,1,19,112,97,116,104,45,114,101,112,108,97,99,101,45,115,117,
|
||||||
102,105,120,44,196,14,30,2,7,75,102,105,110,100,45,99,111,108,45,102,105,
|
102,102,105,120,44,196,14,30,2,7,75,102,105,110,100,45,99,111,108,45,102,
|
||||||
108,101,49,196,4,30,2,7,78,110,111,114,109,97,108,45,99,97,115,101,45,
|
105,108,101,49,196,4,30,2,7,78,110,111,114,109,97,108,45,99,97,115,101,
|
||||||
112,97,116,104,42,196,11,2,23,2,24,30,2,6,76,114,101,112,97,114,97,
|
45,112,97,116,104,42,196,11,2,23,2,24,30,2,6,76,114,101,112,97,114,
|
||||||
109,101,116,101,114,105,122,101,11,7,16,0,40,42,39,16,0,39,16,16,2,
|
97,109,101,116,101,114,105,122,101,11,7,16,0,40,42,39,16,0,39,16,16,
|
||||||
15,2,16,2,8,2,12,2,17,2,18,2,11,2,4,2,10,2,3,2,20,
|
2,15,2,16,2,8,2,12,2,17,2,18,2,11,2,4,2,10,2,3,2,
|
||||||
2,13,2,14,2,9,2,19,2,22,55,11,11,11,16,3,2,23,2,21,2,
|
20,2,13,2,14,2,9,2,19,2,22,55,11,11,11,16,3,2,23,2,21,
|
||||||
24,16,3,11,11,11,16,3,2,23,2,21,2,24,42,42,40,12,11,11,16,
|
2,24,16,3,11,11,11,16,3,2,23,2,21,2,24,42,42,40,12,11,11,
|
||||||
0,16,0,16,0,39,39,11,12,11,11,16,0,16,0,16,0,39,39,16,24,
|
16,0,16,0,16,0,39,39,11,12,11,11,16,0,16,0,16,0,39,39,16,
|
||||||
20,15,16,2,248,22,180,8,71,115,111,45,115,117,102,102,105,120,80,144,39,
|
24,20,15,16,2,248,22,180,8,71,115,111,45,115,117,102,102,105,120,80,144,
|
||||||
39,40,20,15,16,2,88,148,39,41,8,39,8,189,3,2,4,223,0,33,50,
|
39,39,40,20,15,16,2,88,148,39,41,8,39,8,189,3,2,4,223,0,33,
|
||||||
80,144,39,40,40,20,15,16,2,32,0,88,148,8,36,44,55,11,2,9,222,
|
50,80,144,39,40,40,20,15,16,2,32,0,88,148,8,36,44,55,11,2,9,
|
||||||
33,51,80,144,39,47,40,20,15,16,2,20,28,143,32,0,88,148,8,36,40,
|
222,33,51,80,144,39,47,40,20,15,16,2,20,28,143,32,0,88,148,8,36,
|
||||||
45,11,2,10,222,192,32,0,88,148,8,36,40,45,11,2,10,222,192,80,144,
|
40,45,11,2,10,222,192,32,0,88,148,8,36,40,45,11,2,10,222,192,80,
|
||||||
39,48,40,20,15,16,2,247,22,141,2,80,144,39,44,40,20,15,16,2,8,
|
144,39,48,40,20,15,16,2,247,22,141,2,80,144,39,44,40,20,15,16,2,
|
||||||
128,8,80,144,39,49,40,20,15,16,2,249,22,185,8,8,128,8,11,80,144,
|
8,128,8,80,144,39,49,40,20,15,16,2,249,22,185,8,8,128,8,11,80,
|
||||||
39,50,40,20,15,16,2,88,148,8,36,40,53,8,128,32,2,13,223,0,33,
|
144,39,50,40,20,15,16,2,88,148,8,36,40,53,8,128,32,2,13,223,0,
|
||||||
52,80,144,39,51,40,20,15,16,2,88,148,8,36,41,57,8,128,32,2,14,
|
33,52,80,144,39,51,40,20,15,16,2,88,148,8,36,41,57,8,128,32,2,
|
||||||
223,0,33,53,80,144,39,52,40,20,15,16,2,247,22,76,80,144,39,53,40,
|
14,223,0,33,53,80,144,39,52,40,20,15,16,2,247,22,76,80,144,39,53,
|
||||||
20,15,16,2,248,22,16,76,109,111,100,117,108,101,45,108,111,97,100,105,110,
|
40,20,15,16,2,248,22,16,76,109,111,100,117,108,101,45,108,111,97,100,105,
|
||||||
103,80,144,39,54,40,20,15,16,2,11,80,143,39,55,20,15,16,2,11,80,
|
110,103,80,144,39,54,40,20,15,16,2,11,80,143,39,55,20,15,16,2,11,
|
||||||
143,39,56,20,15,16,2,32,0,88,148,39,41,60,11,2,19,222,33,72,80,
|
80,143,39,56,20,15,16,2,32,0,88,148,39,41,60,11,2,19,222,33,72,
|
||||||
144,39,57,40,20,15,16,2,32,0,88,148,8,36,40,52,11,2,20,222,33,
|
80,144,39,57,40,20,15,16,2,32,0,88,148,8,36,40,52,11,2,20,222,
|
||||||
73,80,144,39,58,40,20,15,16,2,11,80,143,39,59,20,15,16,2,88,149,
|
33,73,80,144,39,58,40,20,15,16,2,11,80,143,39,59,20,15,16,2,88,
|
||||||
8,34,40,48,8,240,4,0,16,0,1,21,112,114,101,112,45,112,108,97,110,
|
149,8,34,40,48,8,240,4,0,16,0,1,21,112,114,101,112,45,112,108,97,
|
||||||
101,116,45,114,101,115,111,108,118,101,114,33,40,224,1,0,33,74,80,144,39,
|
110,101,116,45,114,101,115,111,108,118,101,114,33,40,224,1,0,33,74,80,144,
|
||||||
8,28,42,20,15,16,2,88,148,39,40,53,8,240,0,0,3,0,69,103,101,
|
39,8,28,42,20,15,16,2,88,148,39,40,53,8,240,0,0,3,0,69,103,
|
||||||
116,45,100,105,114,223,0,33,75,80,144,39,8,29,42,20,15,16,2,88,148,
|
101,116,45,100,105,114,223,0,33,75,80,144,39,8,29,42,20,15,16,2,88,
|
||||||
39,40,52,8,240,0,0,64,0,74,112,97,116,104,45,115,115,45,62,114,107,
|
148,39,40,52,8,240,0,0,64,0,74,112,97,116,104,45,115,115,45,62,114,
|
||||||
116,223,0,33,76,80,144,39,8,30,42,20,15,16,2,88,148,8,36,40,48,
|
107,116,223,0,33,76,80,144,39,8,30,42,20,15,16,2,88,148,8,36,40,
|
||||||
8,240,0,0,4,0,9,223,0,33,77,80,144,39,8,31,42,20,15,16,2,
|
48,8,240,0,0,4,0,9,223,0,33,77,80,144,39,8,31,42,20,15,16,
|
||||||
88,148,39,40,48,8,240,0,128,0,0,9,223,0,33,78,80,144,39,8,32,
|
2,88,148,39,40,48,8,240,0,128,0,0,9,223,0,33,78,80,144,39,8,
|
||||||
42,20,15,16,2,27,11,20,19,143,39,90,144,40,10,89,146,40,39,10,20,
|
32,42,20,15,16,2,27,11,20,19,143,39,90,144,40,10,89,146,40,39,10,
|
||||||
26,96,2,22,88,148,8,36,41,57,8,32,9,224,2,1,33,79,88,148,39,
|
20,26,96,2,22,88,148,8,36,41,57,8,32,9,224,2,1,33,79,88,148,
|
||||||
42,52,11,9,223,0,33,80,88,148,39,43,8,32,16,4,8,240,44,240,0,
|
39,42,52,11,9,223,0,33,80,88,148,39,43,8,32,16,4,8,240,44,240,
|
||||||
0,8,240,220,241,0,0,40,39,9,224,2,1,33,96,207,80,144,39,60,40,
|
0,0,8,240,220,241,0,0,40,39,9,224,2,1,33,96,207,80,144,39,60,
|
||||||
20,15,16,2,88,148,39,39,48,16,2,8,134,8,8,176,32,2,23,223,0,
|
40,20,15,16,2,88,148,39,39,48,16,2,8,134,8,8,176,32,2,23,223,
|
||||||
33,97,80,144,39,8,25,40,20,15,16,2,20,28,143,88,148,8,36,39,48,
|
0,33,97,80,144,39,8,25,40,20,15,16,2,20,28,143,88,148,8,36,39,
|
||||||
16,2,43,8,144,32,2,24,223,0,33,98,88,148,8,36,39,48,16,2,43,
|
48,16,2,43,8,144,32,2,24,223,0,33,98,88,148,8,36,39,48,16,2,
|
||||||
8,144,32,2,24,223,0,33,99,80,144,39,8,26,40,96,29,94,2,5,70,
|
43,8,144,32,2,24,223,0,33,99,80,144,39,8,26,40,96,29,94,2,5,
|
||||||
35,37,107,101,114,110,101,108,11,29,94,2,5,71,35,37,109,105,110,45,115,
|
70,35,37,107,101,114,110,101,108,11,29,94,2,5,71,35,37,109,105,110,45,
|
||||||
116,120,11,2,7,2,6,9,9,9,39,9,0};
|
115,116,120,11,2,7,2,6,9,9,9,39,9,0};
|
||||||
EVAL_ONE_SIZED_STR((char *)expr, 9714);
|
EVAL_ONE_SIZED_STR((char *)expr, 9715);
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,10,54,46,50,46,57,48,48,46,49,51,84,0,0,0,0,0,0,0,
|
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,10,54,46,50,46,57,48,48,46,49,53,84,0,0,0,0,0,0,0,
|
||||||
0,0,0,0,0,0,0,0,0,0,0,0,0,17,0,0,0,1,0,0,8,
|
0,0,0,0,0,0,0,0,0,0,0,0,0,17,0,0,0,1,0,0,8,
|
||||||
0,18,0,24,0,38,0,52,0,64,0,84,0,98,0,113,0,126,0,131,0,
|
0,18,0,24,0,38,0,52,0,64,0,84,0,98,0,113,0,126,0,131,0,
|
||||||
135,0,147,0,231,0,238,0,8,1,0,0,198,1,0,0,3,1,5,105,110,
|
135,0,147,0,231,0,238,0,8,1,0,0,199,1,0,0,3,1,5,105,110,
|
||||||
115,112,48,71,35,37,98,117,105,108,116,105,110,67,113,117,111,116,101,29,94,
|
115,112,48,71,35,37,98,117,105,108,116,105,110,67,113,117,111,116,101,29,94,
|
||||||
2,3,70,35,37,107,101,114,110,101,108,11,29,94,2,3,70,35,37,101,120,
|
2,3,70,35,37,107,101,114,110,101,108,11,29,94,2,3,70,35,37,101,120,
|
||||||
112,111,98,115,11,29,94,2,3,68,35,37,98,111,111,116,11,29,94,2,3,
|
112,111,98,115,11,29,94,2,3,68,35,37,98,111,111,116,11,29,94,2,3,
|
||||||
|
@ -1559,15 +1560,15 @@
|
||||||
2,1,143,2,15,16,4,2,8,39,39,2,1,143,2,15,16,4,2,9,39,
|
2,1,143,2,15,16,4,2,8,39,39,2,1,143,2,15,16,4,2,9,39,
|
||||||
39,2,1,143,2,15,16,4,2,10,39,39,2,1,16,0,38,15,143,2,14,
|
39,2,1,143,2,15,16,4,2,10,39,39,2,1,16,0,38,15,143,2,14,
|
||||||
2,11,18,143,16,2,143,10,16,3,9,2,11,2,13,143,11,16,3,9,9,
|
2,11,18,143,16,2,143,10,16,3,9,2,11,2,13,143,11,16,3,9,9,
|
||||||
2,13,16,3,9,9,9,144,39,20,121,145,2,1,39,16,1,11,16,0,20,
|
2,13,16,3,9,9,9,145,39,9,20,121,145,2,1,39,16,1,11,16,0,
|
||||||
27,15,56,9,2,2,2,2,29,11,11,11,11,11,11,11,9,9,11,11,11,
|
20,27,15,56,9,2,2,2,2,29,11,11,11,11,11,11,11,9,9,11,11,
|
||||||
33,16,39,80,143,39,39,20,121,145,2,1,39,16,0,16,0,40,42,39,16,
|
11,33,16,39,80,143,39,39,20,121,145,2,1,39,16,0,16,0,40,42,39,
|
||||||
0,39,16,0,39,11,11,11,16,0,16,0,16,0,39,39,40,12,11,11,16,
|
16,0,39,16,0,39,11,11,11,16,0,16,0,16,0,39,39,40,12,11,11,
|
||||||
0,16,0,16,0,39,39,11,12,11,11,16,0,16,0,16,0,39,39,16,0,
|
16,0,16,0,16,0,39,39,11,12,11,11,16,0,16,0,16,0,39,39,16,
|
||||||
104,2,4,2,5,29,94,2,3,71,35,37,102,111,114,101,105,103,110,11,29,
|
0,104,2,4,2,5,29,94,2,3,71,35,37,102,111,114,101,105,103,110,11,
|
||||||
94,2,3,70,35,37,117,110,115,97,102,101,11,29,94,2,3,71,35,37,102,
|
29,94,2,3,70,35,37,117,110,115,97,102,101,11,29,94,2,3,71,35,37,
|
||||||
108,102,120,110,117,109,11,2,6,2,7,2,8,2,9,2,10,29,94,2,3,
|
102,108,102,120,110,117,109,11,2,6,2,7,2,8,2,9,2,10,29,94,2,
|
||||||
69,35,37,112,108,97,99,101,11,29,94,2,3,71,35,37,102,117,116,117,114,
|
3,69,35,37,112,108,97,99,101,11,29,94,2,3,71,35,37,102,117,116,117,
|
||||||
101,115,11,9,9,9,39,9,0};
|
114,101,115,11,9,9,9,39,9,0};
|
||||||
EVAL_ONE_SIZED_STR((char *)expr, 533);
|
EVAL_ONE_SIZED_STR((char *)expr, 534);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1613,6 +1613,65 @@ void scheme_shadow(Scheme_Env *env, Scheme_Object *n, Scheme_Object *val, int as
|
||||||
scheme_add_binding_copy(id, scheme_rename_transformer_id(val), scheme_env_phase(env));
|
scheme_add_binding_copy(id, scheme_rename_transformer_id(val), scheme_env_phase(env));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void install_one_binding_name(Scheme_Hash_Table *bt, Scheme_Object *name, Scheme_Object *id, Scheme_Env *benv)
|
||||||
|
{
|
||||||
|
if (SCHEME_SYMBOLP(name) && SCHEME_STX_SYMBOLP(id)) {
|
||||||
|
if (benv->stx_context)
|
||||||
|
id = scheme_stx_push_introduce_module_context(id, benv->stx_context);
|
||||||
|
scheme_hash_set(bt, name, id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void scheme_install_binding_names(Scheme_Object *binding_namess, Scheme_Env *env)
|
||||||
|
/* binding_namess has a per-phase mapping of symbosl to identifier, recorded
|
||||||
|
when `define` and `define-syntaxes` forms were compiled at the top level;
|
||||||
|
install the symbol-to-identifier mapping that was recorded during compilation
|
||||||
|
into the current namespace */
|
||||||
|
{
|
||||||
|
Scheme_Env *benv;
|
||||||
|
Scheme_Object *sym, *id, *table;
|
||||||
|
Scheme_Hash_Tree *ht;
|
||||||
|
Scheme_Hash_Table *bt;
|
||||||
|
intptr_t i, phase;
|
||||||
|
|
||||||
|
if (!binding_namess) return;
|
||||||
|
|
||||||
|
while (SCHEME_PAIRP(binding_namess)) {
|
||||||
|
table = SCHEME_CAR(binding_namess);
|
||||||
|
if (!SCHEME_PAIRP(table))
|
||||||
|
return;
|
||||||
|
phase = SCHEME_INT_VAL(SCHEME_CAR(table));
|
||||||
|
table = SCHEME_CDR(table);
|
||||||
|
|
||||||
|
if (phase < 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
benv = env;
|
||||||
|
while (phase > 0) {
|
||||||
|
scheme_prepare_exp_env(benv);
|
||||||
|
benv = benv->exp_env;
|
||||||
|
phase--;
|
||||||
|
}
|
||||||
|
|
||||||
|
bt = scheme_get_binding_names_table(benv);
|
||||||
|
|
||||||
|
if (SCHEME_HASHTRP(table)) {
|
||||||
|
ht = (Scheme_Hash_Tree *)table;
|
||||||
|
i = -1;
|
||||||
|
while ((i = scheme_hash_tree_next(ht, i)) != -1) {
|
||||||
|
scheme_hash_tree_index(ht, i, &sym, &id);
|
||||||
|
install_one_binding_name(bt, sym, id, benv);
|
||||||
|
}
|
||||||
|
} else if (SCHEME_VECTORP(table)) {
|
||||||
|
for (i = SCHEME_VEC_SIZE(table) >> 1; i--; ) {
|
||||||
|
install_one_binding_name(bt, SCHEME_VEC_ELS(table)[2*i], SCHEME_VEC_ELS(table)[2*i+1], benv);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
binding_namess = SCHEME_CDR(binding_namess);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/********** Auxilliary tables **********/
|
/********** Auxilliary tables **********/
|
||||||
|
|
||||||
Scheme_Object **scheme_make_builtin_references_table(int *_unsafe_start)
|
Scheme_Object **scheme_make_builtin_references_table(int *_unsafe_start)
|
||||||
|
@ -1917,7 +1976,7 @@ namespace_set_variable_value(int argc, Scheme_Object *argv[])
|
||||||
id = scheme_datum_to_syntax(argv[0], scheme_false, scheme_false, 0, 0);
|
id = scheme_datum_to_syntax(argv[0], scheme_false, scheme_false, 0, 0);
|
||||||
scheme_prepare_env_stx_context(env);
|
scheme_prepare_env_stx_context(env);
|
||||||
id = scheme_stx_add_module_context(id, env->stx_context);
|
id = scheme_stx_add_module_context(id, env->stx_context);
|
||||||
(void)scheme_global_binding(id, env);
|
(void)scheme_global_binding(id, env, 0);
|
||||||
}
|
}
|
||||||
scheme_shadow(env, argv[0], argv[1], 1);
|
scheme_shadow(env, argv[0], argv[1], 1);
|
||||||
}
|
}
|
||||||
|
|
|
@ -2093,11 +2093,16 @@ define_execute_with_dynamic_state(Scheme_Object *vec, int delta, int defmacro,
|
||||||
g = 1;
|
g = 1;
|
||||||
|
|
||||||
/* Special handling of 0 values for define-syntaxes:
|
/* Special handling of 0 values for define-syntaxes:
|
||||||
do nothing. This makes (define-values (a b c) (values))
|
just create binding. This makes (define-values (a b c) (values))
|
||||||
a kind of declaration form, which is useful is
|
a kind of declaration form, which is useful is
|
||||||
a, b, or c is introduced by a macro. */
|
a, b, or c is introduced by a macro. */
|
||||||
if (dm_env && !g)
|
if (dm_env && !g) {
|
||||||
|
for (i = SCHEME_VEC_SIZE(vec) - delta; i--; ) {
|
||||||
|
b = scheme_global_keyword_bucket(SCHEME_VEC_ELS(vec)[i+delta], dm_env);
|
||||||
|
scheme_shadow(dm_env, (Scheme_Object *)b->key, scheme_false, 1);
|
||||||
|
}
|
||||||
return scheme_void;
|
return scheme_void;
|
||||||
|
}
|
||||||
|
|
||||||
i = SCHEME_VEC_SIZE(vec) - delta;
|
i = SCHEME_VEC_SIZE(vec) - delta;
|
||||||
|
|
||||||
|
@ -4015,7 +4020,36 @@ static int get_comp_flags(Scheme_Config *config)
|
||||||
return comp_flags;
|
return comp_flags;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Scheme_Object *optimize_resolve_expr(Scheme_Object* o, Comp_Prefix *cp, Scheme_Object *src_insp_desc)
|
static void create_binding_namess(Scheme_Comp_Env *cenv)
|
||||||
|
{
|
||||||
|
Scheme_Hash_Table *binding_namess;
|
||||||
|
binding_namess= scheme_make_hash_table(SCHEME_hash_ptr);
|
||||||
|
cenv->binding_namess = binding_namess;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static Scheme_Object *binding_namess_as_list(Scheme_Hash_Table *binding_namess)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
Scheme_Object *l = scheme_null, **sorted_keys;
|
||||||
|
|
||||||
|
if (!binding_namess->count)
|
||||||
|
return scheme_null;
|
||||||
|
|
||||||
|
sorted_keys = scheme_extract_sorted_keys((Scheme_Object *)binding_namess);
|
||||||
|
|
||||||
|
for (i = binding_namess->count; i--; ) {
|
||||||
|
l = scheme_make_pair(scheme_make_pair(sorted_keys[i],
|
||||||
|
scheme_hash_get(binding_namess, sorted_keys[i])),
|
||||||
|
l);
|
||||||
|
}
|
||||||
|
|
||||||
|
return l;
|
||||||
|
}
|
||||||
|
|
||||||
|
static Scheme_Object *optimize_resolve_expr(Scheme_Object* o, Comp_Prefix *cp,
|
||||||
|
Scheme_Object *src_insp_desc,
|
||||||
|
Scheme_Object *binding_namess)
|
||||||
{
|
{
|
||||||
Optimize_Info *oi;
|
Optimize_Info *oi;
|
||||||
Resolve_Prefix *rp;
|
Resolve_Prefix *rp;
|
||||||
|
@ -4054,6 +4088,7 @@ static Scheme_Object *optimize_resolve_expr(Scheme_Object* o, Comp_Prefix *cp, S
|
||||||
top->max_let_depth = max_let_depth;
|
top->max_let_depth = max_let_depth;
|
||||||
top->code = o;
|
top->code = o;
|
||||||
top->prefix = rp;
|
top->prefix = rp;
|
||||||
|
top->binding_namess = binding_namess;
|
||||||
return (Scheme_Object *)top;
|
return (Scheme_Object *)top;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4135,7 +4170,9 @@ static void *compile_k(void)
|
||||||
|
|
||||||
cenv = scheme_new_comp_env(genv, insp, frame_scopes,
|
cenv = scheme_new_comp_env(genv, insp, frame_scopes,
|
||||||
SCHEME_TOPLEVEL_FRAME
|
SCHEME_TOPLEVEL_FRAME
|
||||||
| SCHEME_KEEP_SCOPES_FRAME);
|
| SCHEME_KEEP_SCOPES_FRAME
|
||||||
|
| SCHEME_TMP_TL_BIND_FRAME);
|
||||||
|
create_binding_namess(cenv);
|
||||||
|
|
||||||
if (rib) {
|
if (rib) {
|
||||||
cenv->expand_result_adjust = scheme_stx_push_introduce_module_context;
|
cenv->expand_result_adjust = scheme_stx_push_introduce_module_context;
|
||||||
|
@ -4192,7 +4229,7 @@ static void *compile_k(void)
|
||||||
} else {
|
} else {
|
||||||
/* We want to simply compile `form', but we have to loop in case
|
/* We want to simply compile `form', but we have to loop in case
|
||||||
an expression is lifted in the process of compiling: */
|
an expression is lifted in the process of compiling: */
|
||||||
Scheme_Object *l, *prev_o = NULL;
|
Scheme_Object *l, *prev_o = NULL, *binding_namess;
|
||||||
int max_let_depth;
|
int max_let_depth;
|
||||||
|
|
||||||
while (1) {
|
while (1) {
|
||||||
|
@ -4253,11 +4290,14 @@ static void *compile_k(void)
|
||||||
|
|
||||||
rp = scheme_remap_prefix(rp, ri);
|
rp = scheme_remap_prefix(rp, ri);
|
||||||
|
|
||||||
|
binding_namess = binding_namess_as_list(cenv->binding_namess);
|
||||||
|
|
||||||
top = MALLOC_ONE_TAGGED(Scheme_Compilation_Top);
|
top = MALLOC_ONE_TAGGED(Scheme_Compilation_Top);
|
||||||
top->iso.so.type = scheme_compilation_top_type;
|
top->iso.so.type = scheme_compilation_top_type;
|
||||||
top->max_let_depth = max_let_depth;
|
top->max_let_depth = max_let_depth;
|
||||||
top->code = o;
|
top->code = o;
|
||||||
top->prefix = rp;
|
top->prefix = rp;
|
||||||
|
top->binding_namess = binding_namess;
|
||||||
|
|
||||||
if (recompile_every_compile) {
|
if (recompile_every_compile) {
|
||||||
int i;
|
int i;
|
||||||
|
@ -4418,6 +4458,8 @@ static void *eval_k(void)
|
||||||
v = scheme_eval_clone(v);
|
v = scheme_eval_clone(v);
|
||||||
rp = scheme_prefix_eval_clone(top->prefix);
|
rp = scheme_prefix_eval_clone(top->prefix);
|
||||||
|
|
||||||
|
scheme_install_binding_names(top->binding_namess, env);
|
||||||
|
|
||||||
save_runstack = scheme_push_prefix(env, rp, NULL, NULL, 0, env->phase, NULL, scheme_false);
|
save_runstack = scheme_push_prefix(env, rp, NULL, NULL, 0, env->phase, NULL, scheme_false);
|
||||||
|
|
||||||
if (as_tail) {
|
if (as_tail) {
|
||||||
|
@ -4913,7 +4955,8 @@ static Scheme_Object *recompile_top(Scheme_Object *top)
|
||||||
printf("%s\n\n", scheme_print_to_string(code, NULL));
|
printf("%s\n\n", scheme_print_to_string(code, NULL));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
top = optimize_resolve_expr(code, cp, ((Scheme_Compilation_Top*)top)->prefix->src_insp_desc);
|
top = optimize_resolve_expr(code, cp, ((Scheme_Compilation_Top*)top)->prefix->src_insp_desc,
|
||||||
|
((Scheme_Compilation_Top*)top)->binding_namess);
|
||||||
|
|
||||||
return top;
|
return top;
|
||||||
}
|
}
|
||||||
|
@ -5003,7 +5046,7 @@ scheme_make_lifted_defn(Scheme_Object *sys_wraps, Scheme_Object **_ids, Scheme_O
|
||||||
/* Registers scoped ids: */
|
/* Registers scoped ids: */
|
||||||
for (ids = *_ids; !SCHEME_NULLP(ids); ids = SCHEME_CDR(ids)) {
|
for (ids = *_ids; !SCHEME_NULLP(ids); ids = SCHEME_CDR(ids)) {
|
||||||
id = SCHEME_CAR(ids);
|
id = SCHEME_CAR(ids);
|
||||||
(void)scheme_global_binding(id, env->genv);
|
(void)scheme_global_binding(id, env->genv, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
l = icons(scheme_datum_to_syntax(define_values_symbol, scheme_false, sys_wraps, 0, 0),
|
l = icons(scheme_datum_to_syntax(define_values_symbol, scheme_false, sys_wraps, 0, 0),
|
||||||
|
|
|
@ -93,6 +93,8 @@ static Scheme_Object *read_module(Scheme_Object *obj);
|
||||||
static Scheme_Object *read_top_level_require(Scheme_Object *obj);
|
static Scheme_Object *read_top_level_require(Scheme_Object *obj);
|
||||||
static Scheme_Object *write_top_level_require(Scheme_Object *obj);
|
static Scheme_Object *write_top_level_require(Scheme_Object *obj);
|
||||||
|
|
||||||
|
static Scheme_Object *ht_to_vector(Scheme_Object *ht, int delay);
|
||||||
|
|
||||||
void scheme_init_marshal(Scheme_Env *env)
|
void scheme_init_marshal(Scheme_Env *env)
|
||||||
{
|
{
|
||||||
scheme_install_type_writer(scheme_application_type, write_application);
|
scheme_install_type_writer(scheme_application_type, write_application);
|
||||||
|
@ -296,6 +298,22 @@ static Scheme_Object *read_letrec(Scheme_Object *obj)
|
||||||
return (Scheme_Object *)lr;
|
return (Scheme_Object *)lr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static Scheme_Object *binding_namess_to_vectors(Scheme_Object *l)
|
||||||
|
{
|
||||||
|
Scheme_Object *r = scheme_null;
|
||||||
|
|
||||||
|
if (!l) return scheme_null;
|
||||||
|
|
||||||
|
while (!SCHEME_NULLP(l)) {
|
||||||
|
r = cons(cons(SCHEME_CAR(SCHEME_CAR(l)),
|
||||||
|
ht_to_vector(SCHEME_CDR(SCHEME_CAR(l)), 0)),
|
||||||
|
r);
|
||||||
|
l = SCHEME_CDR(l);
|
||||||
|
}
|
||||||
|
|
||||||
|
return r;
|
||||||
|
}
|
||||||
|
|
||||||
static Scheme_Object *write_top(Scheme_Object *obj)
|
static Scheme_Object *write_top(Scheme_Object *obj)
|
||||||
{
|
{
|
||||||
Scheme_Compilation_Top *top = (Scheme_Compilation_Top *)obj;
|
Scheme_Compilation_Top *top = (Scheme_Compilation_Top *)obj;
|
||||||
|
@ -307,8 +325,9 @@ static Scheme_Object *write_top(Scheme_Object *obj)
|
||||||
NULL);
|
NULL);
|
||||||
|
|
||||||
return cons(scheme_make_integer(top->max_let_depth),
|
return cons(scheme_make_integer(top->max_let_depth),
|
||||||
|
cons(binding_namess_to_vectors(top->binding_namess),
|
||||||
cons((Scheme_Object *)top->prefix,
|
cons((Scheme_Object *)top->prefix,
|
||||||
scheme_protect_quote(top->code)));
|
scheme_protect_quote(top->code))));
|
||||||
}
|
}
|
||||||
|
|
||||||
static Scheme_Object *read_top(Scheme_Object *obj)
|
static Scheme_Object *read_top(Scheme_Object *obj)
|
||||||
|
@ -321,6 +340,9 @@ static Scheme_Object *read_top(Scheme_Object *obj)
|
||||||
top->max_let_depth = SCHEME_INT_VAL(SCHEME_CAR(obj));
|
top->max_let_depth = SCHEME_INT_VAL(SCHEME_CAR(obj));
|
||||||
obj = SCHEME_CDR(obj);
|
obj = SCHEME_CDR(obj);
|
||||||
if (!SCHEME_PAIRP(obj)) return NULL;
|
if (!SCHEME_PAIRP(obj)) return NULL;
|
||||||
|
top->binding_namess = SCHEME_CAR(obj); /* checking is in scheme_install_binding_names() */
|
||||||
|
obj = SCHEME_CDR(obj);
|
||||||
|
if (!SCHEME_PAIRP(obj)) return NULL;
|
||||||
top->prefix = (Resolve_Prefix *)SCHEME_CAR(obj);
|
top->prefix = (Resolve_Prefix *)SCHEME_CAR(obj);
|
||||||
top->code = SCHEME_CDR(obj);
|
top->code = SCHEME_CDR(obj);
|
||||||
if (!SAME_TYPE(SCHEME_TYPE(top->prefix), scheme_resolve_prefix_type))
|
if (!SAME_TYPE(SCHEME_TYPE(top->prefix), scheme_resolve_prefix_type))
|
||||||
|
@ -1253,7 +1275,7 @@ static Scheme_Object *read_resolve_prefix(Scheme_Object *obj)
|
||||||
return (Scheme_Object *)rp;
|
return (Scheme_Object *)rp;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Scheme_Object *ht_to_vector(Scheme_Object *ht)
|
static Scheme_Object *ht_to_vector(Scheme_Object *ht, int delay)
|
||||||
/* recurs for values in hash table; we assume that such nesting is shallow */
|
/* recurs for values in hash table; we assume that such nesting is shallow */
|
||||||
{
|
{
|
||||||
intptr_t i, j, c;
|
intptr_t i, j, c;
|
||||||
|
@ -1292,8 +1314,8 @@ static Scheme_Object *ht_to_vector(Scheme_Object *ht)
|
||||||
k = sorted_keys[i];
|
k = sorted_keys[i];
|
||||||
val = scheme_hash_tree_get(t, k);
|
val = scheme_hash_tree_get(t, k);
|
||||||
if (SCHEME_HASHTRP(val) || SCHEME_HASHTP(val))
|
if (SCHEME_HASHTRP(val) || SCHEME_HASHTP(val))
|
||||||
val = ht_to_vector(val);
|
val = ht_to_vector(val, delay);
|
||||||
else if (!SAME_OBJ(val, scheme_true))
|
else if (delay && !SAME_OBJ(val, scheme_true))
|
||||||
val = make_delayed_syntax(val);
|
val = make_delayed_syntax(val);
|
||||||
SCHEME_VEC_ELS(vec)[j++] = k;
|
SCHEME_VEC_ELS(vec)[j++] = k;
|
||||||
SCHEME_VEC_ELS(vec)[j++] = val;
|
SCHEME_VEC_ELS(vec)[j++] = val;
|
||||||
|
@ -1304,8 +1326,8 @@ static Scheme_Object *ht_to_vector(Scheme_Object *ht)
|
||||||
k = sorted_keys[i];
|
k = sorted_keys[i];
|
||||||
val = scheme_hash_get(t, k);
|
val = scheme_hash_get(t, k);
|
||||||
if (SCHEME_HASHTRP(val) || SCHEME_HASHTP(val))
|
if (SCHEME_HASHTRP(val) || SCHEME_HASHTP(val))
|
||||||
val = ht_to_vector(val);
|
val = ht_to_vector(val, delay);
|
||||||
else if (!SAME_OBJ(val, scheme_true))
|
else if (delay && !SAME_OBJ(val, scheme_true))
|
||||||
val = make_delayed_syntax(val);
|
val = make_delayed_syntax(val);
|
||||||
SCHEME_VEC_ELS(vec)[j++] = k;
|
SCHEME_VEC_ELS(vec)[j++] = k;
|
||||||
SCHEME_VEC_ELS(vec)[j++] = val;
|
SCHEME_VEC_ELS(vec)[j++] = val;
|
||||||
|
@ -1501,9 +1523,9 @@ static Scheme_Object *write_module(Scheme_Object *obj)
|
||||||
|
|
||||||
l = cons((m->phaseless ? scheme_true : scheme_false), l);
|
l = cons((m->phaseless ? scheme_true : scheme_false), l);
|
||||||
|
|
||||||
l = cons(ht_to_vector(m->other_binding_names), l);
|
l = cons(ht_to_vector(m->other_binding_names, 1), l);
|
||||||
l = cons(ht_to_vector(m->et_binding_names), l);
|
l = cons(ht_to_vector(m->et_binding_names, 1), l);
|
||||||
l = cons(ht_to_vector(m->binding_names), l);
|
l = cons(ht_to_vector(m->binding_names, 1), l);
|
||||||
l = cons(m->me->src_modidx, l);
|
l = cons(m->me->src_modidx, l);
|
||||||
|
|
||||||
l = cons(scheme_resolved_module_path_value(m->modsrc), l);
|
l = cons(scheme_resolved_module_path_value(m->modsrc), l);
|
||||||
|
|
|
@ -7939,7 +7939,7 @@ static Scheme_Object *add_lifted_defn(Scheme_Object *data, Scheme_Object **_ids,
|
||||||
|
|
||||||
id = introduce_to_module_context(id, rn);
|
id = introduce_to_module_context(id, rn);
|
||||||
|
|
||||||
name = scheme_global_binding(id, env->genv);
|
name = scheme_global_binding(id, env->genv, 0);
|
||||||
|
|
||||||
/* Create the bucket, indicating that the name will be defined: */
|
/* Create the bucket, indicating that the name will be defined: */
|
||||||
scheme_add_global_symbol(name, scheme_undefined, env->genv);
|
scheme_add_global_symbol(name, scheme_undefined, env->genv);
|
||||||
|
@ -8979,7 +8979,7 @@ static Scheme_Object *do_module_begin_at_phase(Scheme_Object *form, Scheme_Comp_
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Generate symbol for this binding: */
|
/* Generate symbol for this binding: */
|
||||||
name = scheme_global_binding(name, env->genv);
|
name = scheme_global_binding(name, env->genv, 0);
|
||||||
|
|
||||||
/* Create the bucket, indicating that the name will be defined: */
|
/* Create the bucket, indicating that the name will be defined: */
|
||||||
scheme_add_global_symbol(name, scheme_undefined, env->genv);
|
scheme_add_global_symbol(name, scheme_undefined, env->genv);
|
||||||
|
@ -9086,7 +9086,7 @@ static Scheme_Object *do_module_begin_at_phase(Scheme_Object *form, Scheme_Comp_
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Generate symbol for this binding: */
|
/* Generate symbol for this binding: */
|
||||||
name = scheme_global_binding(name, env->genv);
|
name = scheme_global_binding(name, env->genv, 0);
|
||||||
|
|
||||||
if (!SAME_OBJ(SCHEME_STX_VAL(orig_name), name)
|
if (!SAME_OBJ(SCHEME_STX_VAL(orig_name), name)
|
||||||
|| !scheme_stx_equal_module_context(orig_name, env->genv->module->rn_stx))
|
|| !scheme_stx_equal_module_context(orig_name, env->genv->module->rn_stx))
|
||||||
|
@ -11864,7 +11864,7 @@ void add_single_require(Scheme_Module_Exports *me, /* from module */
|
||||||
modname = scheme_module_resolve(modidx, 1);
|
modname = scheme_module_resolve(modidx, 1);
|
||||||
menv = scheme_module_access(modname, orig_env, 0);
|
menv = scheme_module_access(modname, orig_env, 0);
|
||||||
val = scheme_lookup_in_table(menv->toplevel, (char *)exsns[j]);
|
val = scheme_lookup_in_table(menv->toplevel, (char *)exsns[j]);
|
||||||
b = scheme_global_bucket(scheme_global_binding(iname, orig_env), orig_env);
|
b = scheme_global_bucket(scheme_global_binding(iname, orig_env, 0), orig_env);
|
||||||
scheme_set_global_bucket(((copy_vars == 2)
|
scheme_set_global_bucket(((copy_vars == 2)
|
||||||
? "namespace-require/constant"
|
? "namespace-require/constant"
|
||||||
: "namespace-require/copy"),
|
: "namespace-require/copy"),
|
||||||
|
|
|
@ -24,6 +24,9 @@ static int mark_comp_env_MARK(void *p, struct NewGC *gc) {
|
||||||
|
|
||||||
gcMARK2(e->use, gc);
|
gcMARK2(e->use, gc);
|
||||||
gcMARK2(e->lifts, gc);
|
gcMARK2(e->lifts, gc);
|
||||||
|
gcMARK2(e->bindings, gc);
|
||||||
|
|
||||||
|
gcMARK2(e->binding_namess, gc);
|
||||||
|
|
||||||
gcMARK2(e->expand_result_adjust_arg, gc);
|
gcMARK2(e->expand_result_adjust_arg, gc);
|
||||||
|
|
||||||
|
@ -50,6 +53,9 @@ static int mark_comp_env_FIXUP(void *p, struct NewGC *gc) {
|
||||||
|
|
||||||
gcFIXUP2(e->use, gc);
|
gcFIXUP2(e->use, gc);
|
||||||
gcFIXUP2(e->lifts, gc);
|
gcFIXUP2(e->lifts, gc);
|
||||||
|
gcFIXUP2(e->bindings, gc);
|
||||||
|
|
||||||
|
gcFIXUP2(e->binding_namess, gc);
|
||||||
|
|
||||||
gcFIXUP2(e->expand_result_adjust_arg, gc);
|
gcFIXUP2(e->expand_result_adjust_arg, gc);
|
||||||
|
|
||||||
|
|
|
@ -2311,6 +2311,7 @@ static int namespace_val_MARK(void *p, struct NewGC *gc) {
|
||||||
gcMARK2(e->access_insp, gc);
|
gcMARK2(e->access_insp, gc);
|
||||||
|
|
||||||
gcMARK2(e->stx_context, gc);
|
gcMARK2(e->stx_context, gc);
|
||||||
|
gcMARK2(e->tmp_bind_scope, gc);
|
||||||
|
|
||||||
gcMARK2(e->syntax, gc);
|
gcMARK2(e->syntax, gc);
|
||||||
gcMARK2(e->exp_env, gc);
|
gcMARK2(e->exp_env, gc);
|
||||||
|
@ -2357,6 +2358,7 @@ static int namespace_val_FIXUP(void *p, struct NewGC *gc) {
|
||||||
gcFIXUP2(e->access_insp, gc);
|
gcFIXUP2(e->access_insp, gc);
|
||||||
|
|
||||||
gcFIXUP2(e->stx_context, gc);
|
gcFIXUP2(e->stx_context, gc);
|
||||||
|
gcFIXUP2(e->tmp_bind_scope, gc);
|
||||||
|
|
||||||
gcFIXUP2(e->syntax, gc);
|
gcFIXUP2(e->syntax, gc);
|
||||||
gcFIXUP2(e->exp_env, gc);
|
gcFIXUP2(e->exp_env, gc);
|
||||||
|
@ -2450,6 +2452,7 @@ static int compilation_top_val_MARK(void *p, struct NewGC *gc) {
|
||||||
Scheme_Compilation_Top *t = (Scheme_Compilation_Top *)p;
|
Scheme_Compilation_Top *t = (Scheme_Compilation_Top *)p;
|
||||||
gcMARK2(t->code, gc);
|
gcMARK2(t->code, gc);
|
||||||
gcMARK2(t->prefix, gc);
|
gcMARK2(t->prefix, gc);
|
||||||
|
gcMARK2(t->binding_namess, gc);
|
||||||
|
|
||||||
return
|
return
|
||||||
gcBYTES_TO_WORDS(sizeof(Scheme_Compilation_Top));
|
gcBYTES_TO_WORDS(sizeof(Scheme_Compilation_Top));
|
||||||
|
@ -2459,6 +2462,7 @@ static int compilation_top_val_FIXUP(void *p, struct NewGC *gc) {
|
||||||
Scheme_Compilation_Top *t = (Scheme_Compilation_Top *)p;
|
Scheme_Compilation_Top *t = (Scheme_Compilation_Top *)p;
|
||||||
gcFIXUP2(t->code, gc);
|
gcFIXUP2(t->code, gc);
|
||||||
gcFIXUP2(t->prefix, gc);
|
gcFIXUP2(t->prefix, gc);
|
||||||
|
gcFIXUP2(t->binding_namess, gc);
|
||||||
|
|
||||||
return
|
return
|
||||||
gcBYTES_TO_WORDS(sizeof(Scheme_Compilation_Top));
|
gcBYTES_TO_WORDS(sizeof(Scheme_Compilation_Top));
|
||||||
|
|
|
@ -932,6 +932,7 @@ namespace_val {
|
||||||
gcMARK2(e->access_insp, gc);
|
gcMARK2(e->access_insp, gc);
|
||||||
|
|
||||||
gcMARK2(e->stx_context, gc);
|
gcMARK2(e->stx_context, gc);
|
||||||
|
gcMARK2(e->tmp_bind_scope, gc);
|
||||||
|
|
||||||
gcMARK2(e->syntax, gc);
|
gcMARK2(e->syntax, gc);
|
||||||
gcMARK2(e->exp_env, gc);
|
gcMARK2(e->exp_env, gc);
|
||||||
|
@ -988,6 +989,7 @@ compilation_top_val {
|
||||||
Scheme_Compilation_Top *t = (Scheme_Compilation_Top *)p;
|
Scheme_Compilation_Top *t = (Scheme_Compilation_Top *)p;
|
||||||
gcMARK2(t->code, gc);
|
gcMARK2(t->code, gc);
|
||||||
gcMARK2(t->prefix, gc);
|
gcMARK2(t->prefix, gc);
|
||||||
|
gcMARK2(t->binding_namess, gc);
|
||||||
|
|
||||||
size:
|
size:
|
||||||
gcBYTES_TO_WORDS(sizeof(Scheme_Compilation_Top));
|
gcBYTES_TO_WORDS(sizeof(Scheme_Compilation_Top));
|
||||||
|
@ -1279,6 +1281,9 @@ mark_comp_env {
|
||||||
|
|
||||||
gcMARK2(e->use, gc);
|
gcMARK2(e->use, gc);
|
||||||
gcMARK2(e->lifts, gc);
|
gcMARK2(e->lifts, gc);
|
||||||
|
gcMARK2(e->bindings, gc);
|
||||||
|
|
||||||
|
gcMARK2(e->binding_namess, gc);
|
||||||
|
|
||||||
gcMARK2(e->expand_result_adjust_arg, gc);
|
gcMARK2(e->expand_result_adjust_arg, gc);
|
||||||
|
|
||||||
|
|
|
@ -1413,6 +1413,8 @@ typedef struct {
|
||||||
mzshort max_let_depth;
|
mzshort max_let_depth;
|
||||||
Scheme_Object *code;
|
Scheme_Object *code;
|
||||||
struct Resolve_Prefix *prefix; /* NULL => a wrapper for a JITted module in `code' */
|
struct Resolve_Prefix *prefix; /* NULL => a wrapper for a JITted module in `code' */
|
||||||
|
Scheme_Object *binding_namess; /* list of <phase> to hash of <symbol> to <id>;
|
||||||
|
additions to the top-level bindings table */
|
||||||
} Scheme_Compilation_Top;
|
} Scheme_Compilation_Top;
|
||||||
|
|
||||||
/* A `let', `let*', or `letrec' form is compiled to the intermediate
|
/* A `let', `let*', or `letrec' form is compiled to the intermediate
|
||||||
|
@ -2582,6 +2584,9 @@ typedef struct Scheme_Comp_Env
|
||||||
|
|
||||||
Scheme_Object *lifts;
|
Scheme_Object *lifts;
|
||||||
|
|
||||||
|
Scheme_Hash_Table *binding_namess; /* <phase> -> (<symbol> -> <id>); additions to the environment's
|
||||||
|
bindings table made during a particular compilation */
|
||||||
|
|
||||||
mzshort rename_var_count; /* number of non-NULL `values' when `renames' was computed */
|
mzshort rename_var_count; /* number of non-NULL `values' when `renames' was computed */
|
||||||
mzshort rename_rstart; /* leftover rstart from previous round; see env.c */
|
mzshort rename_rstart; /* leftover rstart from previous round; see env.c */
|
||||||
Scheme_Hash_Table *dup_check; /* table for finding colliding symbols in `values' */
|
Scheme_Hash_Table *dup_check; /* table for finding colliding symbols in `values' */
|
||||||
|
@ -3168,6 +3173,7 @@ void scheme_mark_all_use(Scheme_Comp_Env *frame);
|
||||||
#define SCHEME_POST_BIND_FRAME (1 << 11)
|
#define SCHEME_POST_BIND_FRAME (1 << 11)
|
||||||
#define SCHEME_NESTED_MODULE_FRAME (1 << 12)
|
#define SCHEME_NESTED_MODULE_FRAME (1 << 12)
|
||||||
#define SCHEME_KEEP_SCOPES_FRAME (1 << 13)
|
#define SCHEME_KEEP_SCOPES_FRAME (1 << 13)
|
||||||
|
#define SCHEME_TMP_TL_BIND_FRAME (1 << 14)
|
||||||
|
|
||||||
#define SCHEME_REC_BINDING_FRAME (SCHEME_TOPLEVEL_FRAME | SCHEME_MODULE_BEGIN_FRAME \
|
#define SCHEME_REC_BINDING_FRAME (SCHEME_TOPLEVEL_FRAME | SCHEME_MODULE_BEGIN_FRAME \
|
||||||
| SCHEME_INTDEF_FRAME | SCHEME_FOR_INTDEF)
|
| SCHEME_INTDEF_FRAME | SCHEME_FOR_INTDEF)
|
||||||
|
@ -3285,6 +3291,8 @@ void scheme_define_parse(Scheme_Object *form,
|
||||||
|
|
||||||
void scheme_shadow(Scheme_Env *env, Scheme_Object *n, Scheme_Object *val, int as_var);
|
void scheme_shadow(Scheme_Env *env, Scheme_Object *n, Scheme_Object *val, int as_var);
|
||||||
void scheme_binding_names_from_module(Scheme_Env *menv);
|
void scheme_binding_names_from_module(Scheme_Env *menv);
|
||||||
|
void scheme_install_binding_names(Scheme_Object *binding_namess, Scheme_Env *env);
|
||||||
|
Scheme_Hash_Table *scheme_get_binding_names_table(Scheme_Env *env);
|
||||||
|
|
||||||
int scheme_prefix_depth(Resolve_Prefix *rp);
|
int scheme_prefix_depth(Resolve_Prefix *rp);
|
||||||
Scheme_Object **scheme_push_prefix(Scheme_Env *genv, Resolve_Prefix *rp,
|
Scheme_Object **scheme_push_prefix(Scheme_Env *genv, Resolve_Prefix *rp,
|
||||||
|
@ -3421,6 +3429,7 @@ struct Scheme_Env {
|
||||||
Scheme_Object *access_insp; /* for gaining protected access */
|
Scheme_Object *access_insp; /* for gaining protected access */
|
||||||
|
|
||||||
Scheme_Object *stx_context; /* encapsulates scopes, shifts, etc. */
|
Scheme_Object *stx_context; /* encapsulates scopes, shifts, etc. */
|
||||||
|
Scheme_Object *tmp_bind_scope; /* for compiling top-level definitions */
|
||||||
|
|
||||||
Scheme_Bucket_Table *syntax;
|
Scheme_Bucket_Table *syntax;
|
||||||
struct Scheme_Env *exp_env;
|
struct Scheme_Env *exp_env;
|
||||||
|
@ -3633,7 +3642,7 @@ void scheme_add_global_constant_symbol(Scheme_Object *name, Scheme_Object *v, Sc
|
||||||
} while(0)
|
} while(0)
|
||||||
|
|
||||||
|
|
||||||
Scheme_Object *scheme_global_binding(Scheme_Object *id, Scheme_Env *env);
|
Scheme_Object *scheme_global_binding(Scheme_Object *id, Scheme_Env *env, int for_top_level);
|
||||||
Scheme_Object *scheme_future_global_binding(Scheme_Object *id, Scheme_Env *env);
|
Scheme_Object *scheme_future_global_binding(Scheme_Object *id, Scheme_Env *env);
|
||||||
|
|
||||||
Scheme_Object *scheme_sys_wraps(Scheme_Comp_Env *env);
|
Scheme_Object *scheme_sys_wraps(Scheme_Comp_Env *env);
|
||||||
|
|
|
@ -13,12 +13,12 @@
|
||||||
consistently.)
|
consistently.)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define MZSCHEME_VERSION "6.2.900.14"
|
#define MZSCHEME_VERSION "6.2.900.15"
|
||||||
|
|
||||||
#define MZSCHEME_VERSION_X 6
|
#define MZSCHEME_VERSION_X 6
|
||||||
#define MZSCHEME_VERSION_Y 2
|
#define MZSCHEME_VERSION_Y 2
|
||||||
#define MZSCHEME_VERSION_Z 900
|
#define MZSCHEME_VERSION_Z 900
|
||||||
#define MZSCHEME_VERSION_W 14
|
#define MZSCHEME_VERSION_W 15
|
||||||
|
|
||||||
#define MZSCHEME_VERSION_MAJOR ((MZSCHEME_VERSION_X * 100) + MZSCHEME_VERSION_Y)
|
#define MZSCHEME_VERSION_MAJOR ((MZSCHEME_VERSION_X * 100) + MZSCHEME_VERSION_Y)
|
||||||
#define MZSCHEME_VERSION_MINOR ((MZSCHEME_VERSION_Z * 1000) + MZSCHEME_VERSION_W)
|
#define MZSCHEME_VERSION_MINOR ((MZSCHEME_VERSION_Z * 1000) + MZSCHEME_VERSION_W)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user