summaryrefslogtreecommitdiff
path: root/libguile/objcodes.c
diff options
context:
space:
mode:
Diffstat (limited to 'libguile/objcodes.c')
-rw-r--r--libguile/objcodes.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/libguile/objcodes.c b/libguile/objcodes.c
index 19c2406b1..5466ecc2c 100644
--- a/libguile/objcodes.c
+++ b/libguile/objcodes.c
@@ -119,10 +119,10 @@ scm_c_make_objcode_slice (SCM parent, const scm_t_uint8 *ptr)
scm_from_uint32 (parent_data->len),
scm_from_uint32 (parent_data->metalen)));
-#if 0
- /* FIXME: We currently generate bytecode where the objcode-meta isn't
- suitable aligned, which is an issue on some arches (e.g., SPARC). */
- assert ((((uintptr_t) ptr) & (__alignof__ (struct scm_objcode) - 1UL)) == 0);
+#ifdef __GNUC__ /* we need `__alignof__' */
+ /* Make sure bytecode for the objcode-meta is suitable aligned. Failing to
+ do so leads to SIGBUS/SIGSEGV on some arches (e.g., SPARC). */
+ assert ((((scm_t_bits) ptr) & (__alignof__ (struct scm_objcode) - 1UL)) == 0);
#endif
data = (struct scm_objcode*)ptr;