[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.0-143-g572ee
From: |
Andy Wingo |
Subject: |
[Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.0-143-g572eef5 |
Date: |
Tue, 29 Mar 2011 15:41:24 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".
http://git.savannah.gnu.org/cgit/guile.git/commit/?id=572eef50c2d902d34427945dd504ba03af666e48
The branch, stable-2.0 has been updated
via 572eef50c2d902d34427945dd504ba03af666e48 (commit)
from 8cf49d836ff41838812cba1fd61bfce3fb877144 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 572eef50c2d902d34427945dd504ba03af666e48
Author: Andy Wingo <address@hidden>
Date: Tue Mar 29 17:41:31 2011 +0200
fix prompt and abort with the boot evaluator
* libguile/control.h:
* libguile/control.c (scm_i_prompt_pop_abort_args_x): Take a VM instead
of a prompt, given that it's the VM's registers that record the abort
arguments, not the prompt registers (which actually point right below
the abort values).
* libguile/eval.c (eval):
* libguile/throw.c (pre_init_catch): Pass the vm instead of a prompt.
-----------------------------------------------------------------------
Summary of changes:
libguile/control.c | 8 ++++----
libguile/control.h | 4 ++--
libguile/eval.c | 2 +-
libguile/throw.c | 2 +-
4 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/libguile/control.c b/libguile/control.c
index b6a5587..dc3fed2 100644
--- a/libguile/control.c
+++ b/libguile/control.c
@@ -55,18 +55,18 @@ scm_c_make_prompt (SCM k, SCM *fp, SCM *sp, scm_t_uint8
*abort_ip,
/* Only to be called if the SCM_PROMPT_SETJMP returns 1 */
SCM
-scm_i_prompt_pop_abort_args_x (SCM prompt)
+scm_i_prompt_pop_abort_args_x (SCM vm)
{
size_t i, n;
SCM vals = SCM_EOL;
- n = scm_to_size_t (SCM_PROMPT_REGISTERS (prompt)->sp[0]);
+ n = scm_to_size_t (SCM_VM_DATA (vm)->sp[0]);
for (i = 0; i < n; i++)
- vals = scm_cons (SCM_PROMPT_REGISTERS (prompt)->sp[-(i + 1)], vals);
+ vals = scm_cons (SCM_VM_DATA (vm)->sp[-(i + 1)], vals);
/* The abort did reset the VM's registers, but then these values
were pushed on; so we need to pop them ourselves. */
- SCM_VM_DATA (scm_the_vm ())->sp -= n + 1;
+ SCM_VM_DATA (vm)->sp -= n + 1;
/* FIXME NULLSTACK */
return vals;
diff --git a/libguile/control.h b/libguile/control.h
index bbc4c20..2167ffa 100644
--- a/libguile/control.h
+++ b/libguile/control.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2010 Free Software Foundation, Inc.
+/* Copyright (C) 2010, 2011 Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
@@ -46,7 +46,7 @@ SCM_INTERNAL SCM scm_c_make_prompt (SCM k, SCM *fp, SCM *sp,
scm_t_uint8 escape_only_p,
scm_t_int64 vm_cookie,
SCM winds);
-SCM_INTERNAL SCM scm_i_prompt_pop_abort_args_x (SCM prompt);
+SCM_INTERNAL SCM scm_i_prompt_pop_abort_args_x (SCM vm);
SCM_INTERNAL void scm_c_abort (SCM vm, SCM tag, size_t n, SCM *argv,
scm_t_int64 cookie) SCM_NORETURN;
diff --git a/libguile/eval.c b/libguile/eval.c
index e660714..164aadd 100644
--- a/libguile/eval.c
+++ b/libguile/eval.c
@@ -424,7 +424,7 @@ eval (SCM x, SCM env)
{
/* The prompt exited nonlocally. */
proc = handler;
- args = scm_i_prompt_pop_abort_args_x (prompt);
+ args = scm_i_prompt_pop_abort_args_x (scm_the_vm ());
goto apply_proc;
}
diff --git a/libguile/throw.c b/libguile/throw.c
index 750e6a2..9c29351 100644
--- a/libguile/throw.c
+++ b/libguile/throw.c
@@ -467,7 +467,7 @@ pre_init_catch (SCM tag, SCM thunk, SCM handler, SCM
pre_unwind_handler)
if (SCM_PROMPT_SETJMP (prompt))
{
/* nonlocal exit */
- SCM args = scm_i_prompt_pop_abort_args_x (prompt);
+ SCM args = scm_i_prompt_pop_abort_args_x (vm);
/* cdr past the continuation */
return scm_apply_0 (handler, scm_cdr (args));
}
hooks/post-receive
--
GNU Guile
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.0-143-g572eef5,
Andy Wingo <=