diff --git a/racket/src/racket/src/env.c b/racket/src/racket/src/env.c index 288e4d7f18..d3e5888ce4 100644 --- a/racket/src/racket/src/env.c +++ b/racket/src/racket/src/env.c @@ -2214,11 +2214,7 @@ static Scheme_Object *variable_modidx(int argc, Scheme_Object *argv[]) && SCHEME_TRUEP(((Scheme_Modidx *)env->module->self_modidx)->path)) return env->module->self_modidx; else - return scheme_make_modidx(scheme_make_pair(scheme_intern_symbol("quote"), - scheme_make_pair(scheme_resolved_module_path_value(env->module->modname), - scheme_null)), - scheme_false, - scheme_false); + return scheme_resolved_module_path_to_modidx(env->module->modname); } else return env->link_midx; } else diff --git a/racket/src/racket/src/module.c b/racket/src/racket/src/module.c index 15e3338bf7..0baaa24df2 100644 --- a/racket/src/racket/src/module.c +++ b/racket/src/racket/src/module.c @@ -4156,7 +4156,7 @@ static int same_resolved_modidx(Scheme_Object *a, Scheme_Object *b) return scheme_equal(a, b); } -static Scheme_Object *resolved_module_path_to_modidx(Scheme_Object *rmp) +Scheme_Object *scheme_resolved_module_path_to_modidx(Scheme_Object *rmp) { Scheme_Object *path; @@ -12828,7 +12828,7 @@ void parse_requires(Scheme_Object *form, int at_phase, } if (SAME_TYPE(SCHEME_TYPE(idx), scheme_resolved_module_path_type)) - idx = resolved_module_path_to_modidx(idx); + idx = scheme_resolved_module_path_to_modidx(idx); add_single_require(m->me, x_just_mode, x_mode, idx, rename_env, rn_set, (for_m ? for_m->rn_stx : NULL), diff --git a/racket/src/racket/src/schpriv.h b/racket/src/racket/src/schpriv.h index b1efac1107..fe984c46ab 100644 --- a/racket/src/racket/src/schpriv.h +++ b/racket/src/racket/src/schpriv.h @@ -4000,6 +4000,8 @@ Scheme_Object *scheme_intern_resolved_module_path(Scheme_Object *o); Scheme_Object *scheme_resolved_module_path_value(Scheme_Object *rmp); int scheme_resolved_module_path_value_matches(Scheme_Object *rmp, Scheme_Object *o); +Scheme_Object *scheme_resolved_module_path_to_modidx(Scheme_Object *rmp); + Scheme_Object *scheme_hash_module_variable(Scheme_Env *env, Scheme_Object *modidx, Scheme_Object *stxsym, Scheme_Object *insp, int pos, intptr_t mod_phase, int is_constant,