X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gas%2Fmessages.c;h=2865c9dab5157ebe85df2b00a2c34c74f32bef80;hb=711833262c7a413b10a32f01153454bc5a53a5a6;hp=69fcf78743fa815904db66ebae48808f7298b101;hpb=0af1713e7cd57b52f6c81f73aa58934132198880;p=platform%2Fupstream%2Fbinutils.git diff --git a/gas/messages.c b/gas/messages.c index 69fcf78..2865c9d 100644 --- a/gas/messages.c +++ b/gas/messages.c @@ -1,7 +1,5 @@ /* messages.c - error reporter - - Copyright 1987, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 2000, 2001, - 2003, 2004, 2005, 2006, 2007, 2008 - Free Software Foundation, Inc. + Copyright (C) 1987-2014 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. GAS is free software; you can redistribute it and/or modify @@ -113,7 +111,12 @@ as_show_where (void) as_where (&file, &line); identify (file); if (file) - fprintf (stderr, "%s:%u: ", file, line); + { + if (line != 0) + fprintf (stderr, "%s:%u: ", file, line); + else + fprintf (stderr, "%s: ", file); + } } /* Send to stderr a string as a warning, and locate warning @@ -122,7 +125,6 @@ as_show_where (void) Please explain in string (which may have '\n's) what recovery was done. */ -#ifdef USE_STDARG void as_tsktsk (const char *format, ...) { @@ -134,21 +136,6 @@ as_tsktsk (const char *format, ...) va_end (args); (void) putc ('\n', stderr); } -#else -void -as_tsktsk (format, va_alist) - const char *format; - va_dcl -{ - va_list args; - - as_show_where (); - va_start (args); - vfprintf (stderr, format, args); - va_end (args); - (void) putc ('\n', stderr); -} -#endif /* not NO_STDARG */ /* The common portion of as_warn and as_warn_where. */ @@ -162,10 +149,14 @@ as_warn_internal (char *file, unsigned int line, char *buffer) identify (file); if (file) - fprintf (stderr, "%s:%u: ", file, line); - fprintf (stderr, _("Warning: ")); - fputs (buffer, stderr); - (void) putc ('\n', stderr); + { + if (line != 0) + fprintf (stderr, "%s:%u: %s%s\n", file, line, _("Warning: "), buffer); + else + fprintf (stderr, "%s: %s%s\n", file, _("Warning: "), buffer); + } + else + fprintf (stderr, "%s%s\n", _("Warning: "), buffer); #ifndef NO_LISTING listing_warning (buffer); #endif @@ -177,7 +168,6 @@ as_warn_internal (char *file, unsigned int line, char *buffer) Please explain in string (which may have '\n's) what recovery was done. */ -#ifdef USE_STDARG void as_warn (const char *format, ...) { @@ -192,30 +182,11 @@ as_warn (const char *format, ...) as_warn_internal ((char *) NULL, 0, buffer); } } -#else -void -as_warn (format, va_alist) - const char *format; - va_dcl -{ - va_list args; - char buffer[2000]; - - if (!flag_no_warnings) - { - va_start (args); - vsnprintf (buffer, sizeof (buffer), format, args); - va_end (args); - as_warn_internal ((char *) NULL, 0, buffer); - } -} -#endif /* not NO_STDARG */ /* Like as_bad but the file name and line number are passed in. Unfortunately, we have to repeat the function in order to handle the varargs correctly and portably. */ -#ifdef USE_STDARG void as_warn_where (char *file, unsigned int line, const char *format, ...) { @@ -230,26 +201,6 @@ as_warn_where (char *file, unsigned int line, const char *format, ...) as_warn_internal (file, line, buffer); } } -#else -void -as_warn_where (file, line, format, va_alist) - char *file; - unsigned int line; - const char *format; - va_dcl -{ - va_list args; - char buffer[2000]; - - if (!flag_no_warnings) - { - va_start (args); - vsnprintf (buffer, sizeof (buffer), format, args); - va_end (args); - as_warn_internal (file, line, buffer); - } -} -#endif /* not NO_STDARG */ /* The common portion of as_bad and as_bad_where. */ @@ -263,10 +214,14 @@ as_bad_internal (char *file, unsigned int line, char *buffer) identify (file); if (file) - fprintf (stderr, "%s:%u: ", file, line); - fprintf (stderr, _("Error: ")); - fputs (buffer, stderr); - (void) putc ('\n', stderr); + { + if (line != 0) + fprintf (stderr, "%s:%u: %s%s\n", file, line, _("Error: "), buffer); + else + fprintf (stderr, "%s: %s%s\n", file, _("Error: "), buffer); + } + else + fprintf (stderr, "%s%s\n", _("Error: "), buffer); #ifndef NO_LISTING listing_error (buffer); #endif @@ -278,7 +233,6 @@ as_bad_internal (char *file, unsigned int line, char *buffer) Please explain in string (which may have '\n's) what recovery was done. */ -#ifdef USE_STDARG void as_bad (const char *format, ...) { @@ -292,28 +246,10 @@ as_bad (const char *format, ...) as_bad_internal ((char *) NULL, 0, buffer); } -#else -void -as_bad (format, va_alist) - const char *format; - va_dcl -{ - va_list args; - char buffer[2000]; - - va_start (args); - vsnprintf (buffer, sizeof (buffer), format, args); - va_end (args); - - as_bad_internal ((char *) NULL, 0, buffer); -} -#endif /* not NO_STDARG */ - /* Like as_bad but the file name and line number are passed in. Unfortunately, we have to repeat the function in order to handle the varargs correctly and portably. */ -#ifdef USE_STDARG void as_bad_where (char *file, unsigned int line, const char *format, ...) { @@ -327,31 +263,11 @@ as_bad_where (char *file, unsigned int line, const char *format, ...) as_bad_internal (file, line, buffer); } -#else -void -as_bad_where (file, line, format, va_alist) - char *file; - unsigned int line; - const char *format; - va_dcl -{ - va_list args; - char buffer[2000]; - - va_start (args); - vsnprintf (buffer, sizeof (buffer), format, args); - va_end (args); - - as_bad_internal (file, line, buffer); -} -#endif /* not NO_STDARG */ - /* Send to stderr a string as a fatal message, and print location of error in input file(s). Please only use this for when we DON'T have some recovery action. It xexit()s with a warning status. */ -#ifdef USE_STDARG void as_fatal (const char *format, ...) { @@ -369,23 +285,6 @@ as_fatal (const char *format, ...) unlink_if_ordinary (out_file_name); xexit (EXIT_FAILURE); } -#else -void -as_fatal (format, va_alist) - char *format; - va_dcl -{ - va_list args; - - as_show_where (); - va_start (args); - fprintf (stderr, _("Fatal error: ")); - vfprintf (stderr, format, args); - (void) putc ('\n', stderr); - va_end (args); - xexit (EXIT_FAILURE); -} -#endif /* not NO_STDARG */ /* Indicate assertion failure. Arguments: Filename, line number, optional function name. */