* alloc.c (which_symbols): Fix alignment issue / type clash.
authorPaul Eggert <eggert@cs.ucla.edu>
Mon, 16 Apr 2012 00:33:25 +0000 (17:33 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Mon, 16 Apr 2012 00:33:25 +0000 (17:33 -0700)
src/ChangeLog
src/alloc.c

index c602b25..574bd27 100644 (file)
@@ -1,3 +1,7 @@
+2012-04-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * alloc.c (which_symbols): Fix alignment issue / type clash.
+
 2012-04-15  Andreas Schwab  <schwab@linux-m68k.org>
 
        * lisp.h (struct Lisp_Symbol): Remove explicit padding.
index 7f78619..0e68817 100644 (file)
@@ -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;