diff options
author | Andy Wingo <wingo@pobox.com> | 2011-09-15 12:28:17 -0700 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2011-09-15 12:28:17 -0700 |
commit | 25f4a88032f51cecdf8b0147c8a2d0a4574972fa (patch) | |
tree | 3f853f4983f0e9b0724c96ee2f79840302a5c298 /libguile/tags.h | |
parent | 75917d62434b103a89fc65bde66a1a3e97b598a1 (diff) | |
download | guile-25f4a88032f51cecdf8b0147c8a2d0a4574972fa.tar.gz |
Revert "SCM is a union"
This reverts commit 8787d7a17029a8add20bb8e652ec744bc5d4e6c4.
Diffstat (limited to 'libguile/tags.h')
-rw-r--r-- | libguile/tags.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libguile/tags.h b/libguile/tags.h index 35b5d17c2..c90838ef1 100644 --- a/libguile/tags.h +++ b/libguile/tags.h @@ -74,9 +74,9 @@ typedef scm_t_uintptr scm_t_bits; * desired level of type checking, be defined in several ways: */ #if (SCM_DEBUG_TYPING_STRICTNESS == 2) -typedef union SCM { scm_t_bits n; } SCM; -# define SCM_UNPACK(x) ((x).n) -# define SCM_PACK(x) ((SCM) { (scm_t_bits) (x) }) +typedef union SCM { struct { scm_t_bits n; } n; } SCM; +# define SCM_UNPACK(x) ((x).n.n) +# define SCM_PACK(x) ((SCM) { { (scm_t_bits) (x) } }) #elif (SCM_DEBUG_TYPING_STRICTNESS == 1) /* This is the default, which provides an intermediate level of compile time * type checking while still resulting in very efficient code. |