This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU Guile".
http://git.savannah.gnu.org/cgit/guile.git/commit/?id=824b9ad8b792ab42c5cc614d66462dfaab489075 The branch, stable-2.0 has been updated via 824b9ad8b792ab42c5cc614d66462dfaab489075 (commit) from fe51c7b3e0a1e93be3bb81dd2d4b18936fe2df3a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 824b9ad8b792ab42c5cc614d66462dfaab489075 Author: Mark H Weaver <[email protected]> Date: Thu Jul 18 14:10:43 2013 -0400 Modify SCM_UNPACK type check to avoid warnings in clang. * libguile/tags.h (SCM_UNPACK): Change (*(SCM*)0=(x)) to (*(volatile SCM *)0=(x)), to avoid null-dereference warnings from clang. Reported by Shane Celis <[email protected]>. ----------------------------------------------------------------------- Summary of changes: libguile/tags.h | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/libguile/tags.h b/libguile/tags.h index a3032bf..c41543f 100644 --- a/libguile/tags.h +++ b/libguile/tags.h @@ -87,14 +87,15 @@ typedef union SCM { struct { scm_t_bits n; } n; } SCM; The 0?: constructions makes sure that the code is never executed, and that there is no performance hit. However, the alternative is compiled, and does generate a warning when used with the wrong - pointer type. + pointer type. We use a volatile pointer type to avoid warnings + from clang. The Tru64 and ia64-hp-hpux11.23 compilers fail on `case (0?0=0:x)' statements, so for them type-checking is disabled. */ #if defined __DECC || defined __HP_cc # define SCM_UNPACK(x) ((scm_t_bits) (x)) #else -# define SCM_UNPACK(x) ((scm_t_bits) (0? (*(SCM*)0=(x)): x)) +# define SCM_UNPACK(x) ((scm_t_bits) (0? (*(volatile SCM *)0=(x)): x)) #endif /* hooks/post-receive -- GNU Guile
