This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH/libiberty] fix build of gcc-4_2-branch on glibc 2.8



Pixel <pixel@mandriva.com> writes:


> solution below: do not rely in HAVE_DECL_ASPRINTF when __GNU_LIBRARY__ is set
>
> (another solution would be to ensure HAVE_DECL_ASPRINTF is detected with _GNU_SOURCE set)

I think a slightly more reliable solution would be

#ifndef asprintf
extern int asprintf (char **, const char *, ...) ATTRIBUTE_PRINTF_2;
#endif

with an appropriate comment.

Ian
--- include/libiberty.h.old 2008-07-24 06:15:25.000000000 +0200
+++ include/libiberty.h 2008-07-24 06:16:34.000000000 +0200
@@ -553,16 +553,19 @@
#if !HAVE_DECL_ASPRINTF
/* Like sprintf but provides a pointer to malloc'd storage, which must
be freed by the caller. */
-
+#ifndef asprintf +/* Added ifndef to fix that code break on "previous declaration of 'asprintf_chk' was here" + when using glibc 2.8 see http://gcc.gnu.org/ml/gcc-patches/2008-07/msg00292.html */
+ extern int asprintf (char **, const char *, ...) ATTRIBUTE_PRINTF_2;
#endif
+#endif


#if !HAVE_DECL_VASPRINTF

We have test it on two system to compile gcc 4.2.4 binutils 2.18 gdb 6.8
/zorry

sorry for sending it to gcc-help




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]