diff lib/obstack.h @ 17406:253d6bbd7aa4

obstack: port --enable-gcc-warnings to clang * lib/obstack.h (obstack_ptr_grow_fast, obstack_int_grow_fast): Avoid casts from looser to stricter-aligned pointers.
author Paul Eggert <eggert@cs.ucla.edu>
date Wed, 15 May 2013 00:27:15 -0700
parents e542fd46ad6f
children
line wrap: on
line diff
--- a/lib/obstack.h
+++ b/lib/obstack.h
@@ -342,14 +342,16 @@
 # define obstack_ptr_grow_fast(OBSTACK,aptr)                            \
 __extension__                                                           \
 ({ struct obstack *__o1 = (OBSTACK);                                    \
-   *(const void **) __o1->next_free = (aptr);                           \
+   void *__p1 = __o1->next_free;                                        \
+   *(const void **) __p1 = (aptr);                                      \
    __o1->next_free += sizeof (const void *);                            \
    (void) 0; })
 
 # define obstack_int_grow_fast(OBSTACK,aint)                            \
 __extension__                                                           \
 ({ struct obstack *__o1 = (OBSTACK);                                    \
-   *(int *) __o1->next_free = (aint);                                   \
+   void *__p1 = __o1->next_free;                                        \
+   *(int *) __p1 = (aint);                                              \
    __o1->next_free += sizeof (int);                                     \
    (void) 0; })