mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
Fix compilation error due to strict aliasing rules on `i386-unknown-freebsd7.0'.
* libguile/threads.c (scm_threads_mark_stacks): Cast `&t->regs' to `(void *)' rather than `(SCM_STACKITEM *)' to avoid "warning: dereferencing type-punned pointer will break strict-aliasing rules" with GCC 4.2.1 on `i386-unknown-freebsd7.0'.
This commit is contained in:
parent
f23f643881
commit
c18ed8cead
2 changed files with 2 additions and 1 deletions
1
NEWS
1
NEWS
|
@ -34,6 +34,7 @@ available: Guile is now always configured in "maintainer mode".
|
|||
** Fix build issue on Tru64 and ia64-hp-hpux11.23 (`SCM_UNPACK' macro)
|
||||
** Fix build issue on mips, mipsel, powerpc and ia64 (stack direction)
|
||||
** Fix build issue on hppa2.0w-hp-hpux11.11 (`dirent64' and `readdir64_r')
|
||||
** Fix build issue on i386-unknown-freebsd7.0 ("break strict-aliasing rules")
|
||||
** Fix misleading output from `(help rationalize)'
|
||||
** Fix build failure on Debian hppa architecture (bad stack growth detection)
|
||||
** Fix `gcd' when called with a single, negative argument.
|
||||
|
|
|
@ -1391,7 +1391,7 @@ scm_threads_mark_stacks (void)
|
|||
#else
|
||||
scm_mark_locations (t->top, t->base - t->top);
|
||||
#endif
|
||||
scm_mark_locations ((SCM_STACKITEM *) &t->regs,
|
||||
scm_mark_locations ((void *) &t->regs,
|
||||
((size_t) sizeof(t->regs)
|
||||
/ sizeof (SCM_STACKITEM)));
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue