This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: Problems with gcc + exceptions + -pedantic + libiberty.h
On Mon, Jan 07, 2002 at 07:28:25PM -0500, DJ Delorie wrote:
>
> However, now that you've pointed it out, the existing logic is flawed
> in that a defined HAVE_DECL_* doesn't override the os-based guess.
> Patches welcome ;)
Here ya go.
* libiberty.h (basename): Don't declare if HAVE_DECL_BASENAME.
Index: include/libiberty.h
===================================================================
RCS file: /cvs/src/src/include/libiberty.h,v
retrieving revision 1.15
diff -u -p -r1.15 libiberty.h
--- libiberty.h 2001/10/23 15:31:55 1.15
+++ libiberty.h 2002/01/08 04:12:30
@@ -73,12 +73,12 @@ extern char **dupargv PARAMS ((char **))
declaration without arguments. If it is 0, we checked and failed
to find the declaration so provide a fully prototyped one. If it
is 1, we found it so don't provide any declaration at all. */
-#if defined (__GNU_LIBRARY__ ) || defined (__linux__) || defined (__FreeBSD__) || defined (__OpenBSD__) || defined (__CYGWIN__) || defined (__CYGWIN32__) || (defined (HAVE_DECL_BASENAME) && !HAVE_DECL_BASENAME)
+#if !HAVE_DECL_BASENAME
+#if defined (__GNU_LIBRARY__ ) || defined (__linux__) || defined (__FreeBSD__) || defined (__OpenBSD__) || defined (__CYGWIN__) || defined (__CYGWIN32__) || (defined (HAVE_DECL_BASENAME)
extern char *basename PARAMS ((const char *));
#else
-# if !defined (HAVE_DECL_BASENAME)
extern char *basename ();
-# endif
+#endif
#endif
/* A well-defined basename () that is always compiled in. */
--
Alan Modra
IBM OzLabs - Linux Technology Centre