+2005-01-10  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/609
+       * ldmisc.c (vfinfo): Add an extra argument: is_warning.  Use this
+       to determine whether config.make_executable should be set to FALSE in
+       conjunction with config.fatal_warnings.
+       (info_msg, minfo, lfinof): Pass FALSE as the extra argument.
+       (einfo): Pass TRUE as the extra argument.
+
 2005-01-10  Greg Schaffer  <gschafer@zip.com.au>
 
        * configure.host (linux targets): Use "${CC} -dumpspecs" instead
 
 /* ldmisc.c
    Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-   2002, 2003, 2004
+   2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
    Written by Steve Chamberlain of Cygnus Support.
 
 */
 
 static void
-vfinfo (FILE *fp, const char *fmt, va_list arg)
+vfinfo (FILE *fp, const char *fmt, va_list arg, bfd_boolean is_warning)
 {
   bfd_boolean fatal = FALSE;
 
        }
     }
 
-  if (config.fatal_warnings)
+  if (is_warning && config.fatal_warnings)
     config.make_executable = FALSE;
 
   if (fatal)
   va_list arg;
 
   va_start (arg, fmt);
-  vfinfo (stdout, fmt, arg);
+  vfinfo (stdout, fmt, arg, FALSE);
   va_end (arg);
 }
 
   va_list arg;
 
   va_start (arg, fmt);
-  vfinfo (stderr, fmt, arg);
+  vfinfo (stderr, fmt, arg, TRUE);
   va_end (arg);
 }
 
   va_list arg;
 
   va_start (arg, fmt);
-  vfinfo (config.map_file, fmt, arg);
+  vfinfo (config.map_file, fmt, arg, FALSE);
   va_end (arg);
 }
 
   va_list arg;
 
   va_start (arg, fmt);
-  vfinfo (file, fmt, arg);
+  vfinfo (file, fmt, arg, FALSE);
   va_end (arg);
 }
 \f