diff options
author | Dirk Herrmann <dirk@dirk-herrmanns-seiten.de> | 2000-03-20 04:19:54 +0000 |
---|---|---|
committer | Dirk Herrmann <dirk@dirk-herrmanns-seiten.de> | 2000-03-20 04:19:54 +0000 |
commit | b464b97039b7bb57b7bde2c408060a4f84cce07b (patch) | |
tree | 8c5180b6f2dda518598cad361eca17c67954be04 /libguile/eval.h | |
parent | 3ab9f56eaf4940f181eb2c6dd034d2ef41370680 (diff) | |
download | guile-b464b97039b7bb57b7bde2c408060a4f84cce07b.tar.gz |
Fix mixup of packed/unpacked SCM values. (Thanks Thien-Thi Nguyen.)
Diffstat (limited to 'libguile/eval.h')
-rw-r--r-- | libguile/eval.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libguile/eval.h b/libguile/eval.h index 4d5ef02b9..0b163f77f 100644 --- a/libguile/eval.h +++ b/libguile/eval.h @@ -162,9 +162,9 @@ extern long scm_tc16_macro; * tag of 1. This is called a "gloc". */ -#define SCM_GLOC_SYM(x) (SCM_CAR((x)-1L)) -#define SCM_GLOC_VAL(x) (SCM_CDR((x)-1L)) -#define SCM_GLOC_VAL_LOC(x) (SCM_CDRLOC((x)-1L)) +#define SCM_GLOC_SYM(x) (SCM_CAR (SCM_PACK (SCM_UNPACK (x) - 1L))) +#define SCM_GLOC_VAL(x) (SCM_CDR (SCM_PACK (SCM_UNPACK (x) - 1L))) +#define SCM_GLOC_VAL_LOC(x) (SCM_CDRLOC (SCM_PACK (SCM_UNPACK (x) - 1L))) |