fix validator to allow an ignored reference to a flonum stack slot
Closes PR 10972
This commit is contained in:
parent
1e1202d6f2
commit
fb14524241
|
@ -12138,8 +12138,10 @@ void scheme_validate_expr(Mz_CPort *port, Scheme_Object *expr,
|
||||||
if (stack[p] != VALID_FLONUM)
|
if (stack[p] != VALID_FLONUM)
|
||||||
scheme_ill_formed_code(port);
|
scheme_ill_formed_code(port);
|
||||||
} else if ((stack[p] != VALID_VAL) && (stack[p] != VALID_VAL_NOCLEAR)) {
|
} else if ((stack[p] != VALID_VAL) && (stack[p] != VALID_VAL_NOCLEAR)) {
|
||||||
if (result_ignored && ((stack[p] == VALID_BOX) || (stack[p] == VALID_BOX_NOCLEAR))) {
|
if (result_ignored && ((stack[p] == VALID_BOX)
|
||||||
/* ok to look up and ignore box */
|
|| (stack[p] == VALID_BOX_NOCLEAR)
|
||||||
|
|| (stack[p] == VALID_FLONUM))) {
|
||||||
|
/* ok to look up and ignore box or flonum */
|
||||||
} else if ((proc_with_refs_ok >= 2)
|
} else if ((proc_with_refs_ok >= 2)
|
||||||
&& ((stack[p] == VALID_BOX) || (stack[p] == VALID_BOX_NOCLEAR))
|
&& ((stack[p] == VALID_BOX) || (stack[p] == VALID_BOX_NOCLEAR))
|
||||||
&& scheme_validate_rator_wants_box(app_rator, proc_with_refs_ok - 2, 1,
|
&& scheme_validate_rator_wants_box(app_rator, proc_with_refs_ok - 2, 1,
|
||||||
|
|
Loading…
Reference in New Issue
Block a user