diff options
author | DJ Delorie <dj@redhat.com> | 2011-10-22 05:35:29 +0400 |
---|---|---|
committer | DJ Delorie <dj@redhat.com> | 2011-10-22 05:35:29 +0400 |
commit | bdea9e5fe8cb19d89015d8a6543ecab4b9e76a01 (patch) | |
tree | ab4961af3d0a707c2e4243d151538575f4753bb2 /include | |
parent | 22e671336e8db5fe4f026d1c0c8eb98b4e7d728f (diff) |
* obstack.h [!GNUC] (obstack_free): Avoid cast to int.
* ansidecl.h (ENUM_BITFIELD): Always use enum in C++
Diffstat (limited to 'include')
-rw-r--r-- | include/ChangeLog | 8 | ||||
-rw-r--r-- | include/ansidecl.h | 6 | ||||
-rw-r--r-- | include/obstack.h | 6 |
3 files changed, 15 insertions, 5 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index b5d2d72d2..716b43b66 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,11 @@ +2011-10-21 Ulrich Drepper <drepper@gmail.com> + + * obstack.h [!GNUC] (obstack_free): Avoid cast to int. + +2011-10-21 Marc Glisse <marc.glisse@inria.fr> + + * ansidecl.h (ENUM_BITFIELD): Always use enum in C++ + 2011-10-19 Alan Modra <amodra@gmail.com> PR ld/13254 diff --git a/include/ansidecl.h b/include/ansidecl.h index c39ce2f5d..23d85bf0e 100644 --- a/include/ansidecl.h +++ b/include/ansidecl.h @@ -416,10 +416,12 @@ So instead we use the macro below and test it against specific values. */ #define EXPORTED_CONST const #endif -/* Be conservative and only use enum bitfields with GCC. +/* Be conservative and only use enum bitfields with C++ or GCC. FIXME: provide a complete autoconf test for buggy enum bitfields. */ -#if (GCC_VERSION > 2000) +#ifdef __cplusplus +#define ENUM_BITFIELD(TYPE) enum TYPE +#elif (GCC_VERSION > 2000) #define ENUM_BITFIELD(TYPE) __extension__ enum TYPE #else #define ENUM_BITFIELD(TYPE) unsigned int diff --git a/include/obstack.h b/include/obstack.h index 4aec3a484..23487ba4f 100644 --- a/include/obstack.h +++ b/include/obstack.h @@ -532,9 +532,9 @@ __extension__ \ # define obstack_free(h,obj) \ ( (h)->temp = (char *) (obj) - (char *) (h)->chunk, \ (((h)->temp > 0 && (h)->temp < (h)->chunk_limit - (char *) (h)->chunk)\ - ? (int) ((h)->next_free = (h)->object_base \ - = (h)->temp + (char *) (h)->chunk) \ - : (((obstack_free) ((h), (h)->temp + (char *) (h)->chunk), 0), 0))) + ? (((h)->next_free = (h)->object_base \ + = (h)->temp + (char *) (h)->chunk), 0) \ + : ((obstack_free) ((h), (h)->temp + (char *) (h)->chunk), 0))) #endif /* not __GNUC__ or not __STDC__ */ |