summaryrefslogtreecommitdiff
path: root/src/thread.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/thread.c')
-rw-r--r--src/thread.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/src/thread.c b/src/thread.c
index 3f9595274e9..0bb0b7e006a 100644
--- a/src/thread.c
+++ b/src/thread.c
@@ -645,17 +645,12 @@ run_thread (void *state)
{
/* Make sure stack_top and m_stack_bottom are properly aligned as GC
expects. */
- union
- {
- void *p;
- char c;
- } stack_pos;
+ max_align_t stack_pos;
struct thread_state *self = state;
struct thread_state **iter;
- self->m_stack_bottom = &stack_pos.c;
- self->stack_top = &stack_pos.c;
+ self->m_stack_bottom = self->stack_top = (char *) &stack_pos;
self->thread_id = sys_thread_self ();
acquire_global_lock (self);