diff options
author | Daniel Kraft <d@domob.eu> | 2009-08-04 09:37:50 +0200 |
---|---|---|
committer | Daniel Kraft <d@domob.eu> | 2009-08-04 09:37:50 +0200 |
commit | 157ffbd797b466d80c2a1002a1d40d9b6a89d102 (patch) | |
tree | e9575c49ce0bbece1b26bffff183d9b1f9923448 /libguile/vm-i-system.c | |
parent | 1b1195f29bd73885bcd9fd77e9b2dae0dfa003c0 (diff) | |
parent | a876e7dcea78e770bedba40017fbb225cf88bff5 (diff) | |
download | guile-157ffbd797b466d80c2a1002a1d40d9b6a89d102.tar.gz |
Merge branch 'master' of git://git.savannah.gnu.org/guile into elisp
Diffstat (limited to 'libguile/vm-i-system.c')
-rw-r--r-- | libguile/vm-i-system.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libguile/vm-i-system.c b/libguile/vm-i-system.c index 5a4809db4..ad0ec547e 100644 --- a/libguile/vm-i-system.c +++ b/libguile/vm-i-system.c @@ -177,7 +177,13 @@ VM_DEFINE_INSTRUCTION (15, make_uint64, "make-uint64", 8, 0, 1) VM_DEFINE_INSTRUCTION (16, make_char8, "make-char8", 1, 0, 1) { - PUSH (SCM_MAKE_CHAR (FETCH ())); + scm_t_uint8 v = 0; + v = FETCH (); + + PUSH (SCM_MAKE_CHAR (v)); + /* Don't simplify this to PUSH (SCM_MAKE_CHAR (FETCH ())). The + contents of SCM_MAKE_CHAR may be evaluated more than once, + resulting in a double fetch. */ NEXT; } |