added enclosing-module-name property on #%module-begin forms
svn: r533
This commit is contained in:
parent
461193f073
commit
d4fc63c878
|
@ -114,6 +114,8 @@ static Scheme_Object *prefix_all_defined_except_symbol;
|
||||||
static Scheme_Object *struct_symbol;
|
static Scheme_Object *struct_symbol;
|
||||||
static Scheme_Object *protect_symbol;
|
static Scheme_Object *protect_symbol;
|
||||||
|
|
||||||
|
static Scheme_Object *module_name_symbol;
|
||||||
|
|
||||||
Scheme_Object *scheme_module_stx;
|
Scheme_Object *scheme_module_stx;
|
||||||
Scheme_Object *scheme_begin_stx;
|
Scheme_Object *scheme_begin_stx;
|
||||||
Scheme_Object *scheme_define_values_stx;
|
Scheme_Object *scheme_define_values_stx;
|
||||||
|
@ -510,6 +512,9 @@ void scheme_finish_kernel(Scheme_Env *env)
|
||||||
prefix_all_defined_except_symbol = scheme_intern_symbol("prefix-all-defined-except");
|
prefix_all_defined_except_symbol = scheme_intern_symbol("prefix-all-defined-except");
|
||||||
struct_symbol = scheme_intern_symbol("struct");
|
struct_symbol = scheme_intern_symbol("struct");
|
||||||
protect_symbol = scheme_intern_symbol("protect");
|
protect_symbol = scheme_intern_symbol("protect");
|
||||||
|
|
||||||
|
REGISTER_SO(module_name_symbol);
|
||||||
|
module_name_symbol = scheme_intern_symbol("enclosing-module-name");
|
||||||
}
|
}
|
||||||
|
|
||||||
void scheme_require_from_original_env(Scheme_Env *env, int syntax_only)
|
void scheme_require_from_original_env(Scheme_Env *env, int syntax_only)
|
||||||
|
@ -3102,6 +3107,7 @@ static Scheme_Object *do_module(Scheme_Object *form, Scheme_Comp_Env *env,
|
||||||
}
|
}
|
||||||
|
|
||||||
fm = scheme_datum_to_syntax(fm, form, form, 0, 2);
|
fm = scheme_datum_to_syntax(fm, form, form, 0, 2);
|
||||||
|
fm = scheme_stx_property(fm, module_name_symbol, m->modname);
|
||||||
|
|
||||||
if (!empty_self_modidx) {
|
if (!empty_self_modidx) {
|
||||||
REGISTER_SO(empty_self_modidx);
|
REGISTER_SO(empty_self_modidx);
|
||||||
|
@ -3129,6 +3135,7 @@ static Scheme_Object *do_module(Scheme_Object *form, Scheme_Comp_Env *env,
|
||||||
mb = scheme_add_rename(mb, tt_rn);
|
mb = scheme_add_rename(mb, tt_rn);
|
||||||
fm = scheme_make_pair(mb, scheme_make_pair(fm, scheme_null));
|
fm = scheme_make_pair(mb, scheme_make_pair(fm, scheme_null));
|
||||||
fm = scheme_datum_to_syntax(fm, form, form, 0, 2);
|
fm = scheme_datum_to_syntax(fm, form, form, 0, 2);
|
||||||
|
fm = scheme_stx_property(fm, module_name_symbol, m->modname);
|
||||||
check_mb = 1;
|
check_mb = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user