fix validation of top-level define-{syntaxes,values-for-syntax}

(Only appears in bytecode for non-module code.)

Merge to 5.1.2
(cherry picked from commit 0d2b08f053)
This commit is contained in:
Matthew Flatt 2011-07-20 14:08:30 -06:00 committed by Eli Barzilay
parent 196ac13bdd
commit eddf893dc6

View File

@ -429,7 +429,7 @@ static void do_define_syntaxes_validate(Scheme_Object *data, Mz_CPort *port,
Scheme_Object *name, *val, *base_stack_depth, *dummy;
int sdepth;
if (!SCHEME_VECTORP(data)
if (!SAME_TYPE(SCHEME_TYPE(data), (for_stx ? scheme_define_for_syntax_type : scheme_define_syntaxes_type))
|| (SCHEME_VEC_SIZE(data) < 4))
scheme_ill_formed_code(port);