From: Paul Eggert Date: Sat, 24 Dec 2016 02:28:44 +0000 (-0800) Subject: Use max_align_t instead of void * X-Git-Tag: emacs-26.0.90~1026 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=e2767bd010d5c30df97789b8b56a42eff4234e5b;p=emacs.git Use max_align_t instead of void * * src/thread.c (run_thread): Don’t assume void * is aligned enough. --- 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);