summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2009-11-29 16:45:38 +0100
committerLudovic Courtès <ludo@gnu.org>2009-11-29 16:45:38 +0100
commit8a30946f7fd717f3e8c52e99c8d24c4fb4e5f1af (patch)
treea84f0ef0a5bb1bec903fa758a60450510c12b5c0
parent8b22ed7abdc72f7a8f1844af89aa790d27857c7b (diff)
downloadguile-8a30946f7fd717f3e8c52e99c8d24c4fb4e5f1af.tar.gz
Make `SCM' type definition acceptable for C++ compilers.
* libguile/tags.h (SCM) [SCM_DEBUG_TYPING_STRICTNESS == 1]: Use a named struct to avoid errors from C++ compilers such as "error: non-local function ‘<anonymous struct>* foo(<anonymous struct>*)’ uses anonymous type". This fixes a regression introduced in c6054feaf03f8bde236f5e45a946f38827074923 ("Add support for static allocation of cells, strings and stringbufs."). Reported by Linas Vepstas <linasvepstas@gmail.com>.
-rw-r--r--libguile/tags.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/libguile/tags.h b/libguile/tags.h
index 79f709306..210a82b73 100644
--- a/libguile/tags.h
+++ b/libguile/tags.h
@@ -82,7 +82,7 @@ typedef scm_t_uintptr scm_t_bits;
/* This is the default, which provides an intermediate level of compile time
* type checking while still resulting in very efficient code.
*/
- typedef struct { char scm_unused_field; } * SCM;
+ typedef struct scm_unused_struct { char scm_unused_field; } *SCM;
/*
The 0?: constructions makes sure that the code is never executed,