libiberty.h (ASTRDUP): Add casts required for stricter type conversion rules of C++.
authorBernardo Innocenti <bernie@develer.com>
Tue, 13 Jul 2004 20:54:38 +0000 (22:54 +0200)
committerBernardo Innocenti <bernie@gcc.gnu.org>
Tue, 13 Jul 2004 20:54:38 +0000 (22:54 +0200)
* libiberty.h (ASTRDUP): Add casts required for stricter
type conversion rules of C++.
* obstack.h (obstack_free): Likewise.

From-SVN: r84642

include/ChangeLog
include/libiberty.h
include/obstack.h

index a4df91ab323cf2f1a5f4a9924556f325accf3f3f..55ea8854ba29dc111ee0634bed00e2edea13f594 100644 (file)
@@ -1,3 +1,9 @@
+2004-07-13  Bernardo Innocenti  <bernie@develer.com>
+
+       * libiberty.h (ASTRDUP): Add casts required for stricter
+       type conversion rules of C++.
+       * obstack.h (obstack_free): Likewise.
+
 2004-05-04  Andreas Jaeger  <aj@suse.de>
 
        * demangle.h: Do not use C++ reserved keyword typename as
index 761b2cf060ff5a33f4cfe7229099b85ef55351c9..5c1015385806f385dbba28176046eec8c1c07261 100644 (file)
@@ -309,7 +309,7 @@ extern PTR C_alloca PARAMS ((size_t)) ATTRIBUTE_MALLOC;
 # define ASTRDUP(X) \
   (__extension__ ({ const char *const libiberty_optr = (X); \
    const unsigned long libiberty_len = strlen (libiberty_optr) + 1; \
-   char *const libiberty_nptr = alloca (libiberty_len); \
+   char *const libiberty_nptr = (char *const) alloca (libiberty_len); \
    (char *) memcpy (libiberty_nptr, libiberty_optr, libiberty_len); }))
 #else
 # define alloca(x) C_alloca(x)
@@ -323,7 +323,7 @@ extern unsigned long libiberty_len;
 # define ASTRDUP(X) \
   (libiberty_optr = (X), \
    libiberty_len = strlen (libiberty_optr) + 1, \
-   libiberty_nptr = alloca (libiberty_len), \
+   libiberty_nptr = (char *) alloca (libiberty_len), \
    (char *) memcpy (libiberty_nptr, libiberty_optr, libiberty_len))
 #endif
 
index 5496ff24071a6ccf87eaaf319eb8cf08387d8a49..007853e805d2115478ba40d8fbe900486d9049f9 100644 (file)
@@ -494,9 +494,9 @@ __extension__                                                               \
 # define obstack_free(OBSTACK, OBJ)                                    \
 __extension__                                                          \
 ({ struct obstack *__o = (OBSTACK);                                    \
-   void *__obj = (OBJ);                                                        \
+   void *__obj = (void *) (OBJ);                                       \
    if (__obj > (void *)__o->chunk && __obj < (void *)__o->chunk_limit)  \
-     __o->next_free = __o->object_base = __obj;                                \
+     __o->next_free = __o->object_base = (char *) __obj;               \
    else (obstack_free) (__o, __obj); })
 \f
 #else /* not __GNUC__ or not __STDC__ */