1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-14 15:40:19 +02:00

callees now check their args, cons rest list, reserve locals

* gdbinit: Ignore SIGPWR and SIGXCPU, which the BDW GC seems to use.

* libguile/vm-engine.h (FETCH_WIDTH): Remove unused macro.
  (INIT_ARGS, INIT_FRAME): Remove; callees now check their args and
  reserve space for their locals.

* libguile/vm-engine.c:
* libguile/vm-i-system.c: Turn on callee arg checking and local
  reservation. Seems to work!
This commit is contained in:
Andy Wingo 2009-09-27 20:25:39 -04:00
parent 55d9bc947e
commit a6f15a1eba
4 changed files with 18 additions and 68 deletions

View file

@ -112,7 +112,7 @@ VM_NAME (struct scm_vm *vp, SCM program, SCM *argv, int nargs)
CACHE_PROGRAM ();
PUSH (program);
fp = sp + 1;
INIT_FRAME ();
ip = bp->base;
/* MV-call frame, function & arguments */
PUSH ((SCM)fp); /* dynamic link */
PUSH (0); /* mvra */