1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-17 01:00:20 +02:00

Raise an exception upon VM stack overflows (fixes bug #29574).

* libguile/vm-engine.c (VM_NAME)[vm_error_stack_overflow]: Increase
  `vp->stack_limit' when possible.

* libguile/vm.c (VM_STACK_RESERVE_SIZE): New macro.

* test-suite/lib.scm (exception:vm-error): New variable.

* test-suite/tests/eval.test ("stack overflow"): New test prefix.
This commit is contained in:
Ludovic Courtès 2010-05-26 23:00:58 +02:00
parent 01fded8c77
commit f1046e6b78
4 changed files with 26 additions and 3 deletions

View file

@ -37,6 +37,7 @@
exception:string-contains-nul
exception:read-error
exception:null-pointer-error
exception:vm-error
;; Reporting passes and failures.
run-test
@ -281,6 +282,8 @@
(cons 'read-error "^.*$"))
(define exception:null-pointer-error
(cons 'null-pointer-error "^.*$"))
(define exception:vm-error
(cons 'vm-error "^.*$"))
;; as per throw in scm_to_locale_stringn()
(define exception:string-contains-nul