diff --git a/src/ChangeLog b/src/ChangeLog index dfe694c71a3..3a2984ff398 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-04-16 Paul Eggert + + * alloc.c (which_symbols): Fix alignment issue / type clash. + 2012-04-15 Andreas Schwab * lisp.h (struct Lisp_Symbol): Remove explicit padding. diff --git a/src/alloc.c b/src/alloc.c index 7f78619407d..0e68817629c 100644 --- a/src/alloc.c +++ b/src/alloc.c @@ -6320,11 +6320,12 @@ which_symbols (Lisp_Object obj, EMACS_INT find_max) { for (sblk = symbol_block; sblk; sblk = sblk->next) { - struct Lisp_Symbol *sym = sblk->symbols; + union aligned_Lisp_Symbol *aligned_sym = sblk->symbols; int bn; - for (bn = 0; bn < SYMBOL_BLOCK_SIZE; bn++, sym++) + for (bn = 0; bn < SYMBOL_BLOCK_SIZE; bn++, aligned_sym++) { + struct Lisp_Symbol *sym = &aligned_sym->s; Lisp_Object val; Lisp_Object tem;