This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran 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]

[gfortran,patch] Internationalisation of the Fortran front-end


Hi all,

Attached is a patch (i18n.diff) that adds internationalization to the fortran front-end: it enables the compiler to issue localised error and warning messages. This is done in two complementary ways:

1. Messages issued by gfc_error, gfc_warning and other functions called on constant strings are translated using the msgid convention. That is, developpers will not have to worry about the localization of such messages.

2. Some of the messages are handled in a... rudimentary way. For those, I added manual translation macros: _(). For example, see changes in arith.c

Finally, I removed some nasty very english-specific constructions: exit gfc_article()!

I think while this is not a vital feature (although some will argue that localisation is an important composant of the GNU project), the earlier it can go in, the less work for the translators (and the better the translation).

Built and regtested on i686-linux.
OK for 4.1? (and do we want it for 4.0)


FX


PS: I don't know if a complete ChangeLog is needed, or if I can just list the files and functions and say "Added localisation support". I added the gcc.pot generated with maintainer mode, so that you can check it if you want.
Index: gcc/fortran/arith.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/arith.c,v
retrieving revision 1.30
diff -u -3 -p -r1.30 arith.c
--- gcc/fortran/arith.c	7 Jul 2005 07:54:41 -0000	1.30
+++ gcc/fortran/arith.c	30 Aug 2005 19:15:05 -0000
@@ -138,25 +138,25 @@ gfc_arith_error (arith code)
   switch (code)
     {
     case ARITH_OK:
-      p = "Arithmetic OK";
+      p = _("Arithmetic OK");
       break;
     case ARITH_OVERFLOW:
-      p = "Arithmetic overflow";
+      p = _("Arithmetic overflow");
       break;
     case ARITH_UNDERFLOW:
-      p = "Arithmetic underflow";
+      p = _("Arithmetic underflow");
       break;
     case ARITH_NAN:
-      p = "Arithmetic NaN";
+      p = _("Arithmetic NaN");
       break;
     case ARITH_DIV0:
-      p = "Division by zero";
+      p = _("Division by zero");
       break;
     case ARITH_INCOMMENSURATE:
-      p = "Array operands are incommensurate";
+      p = _("Array operands are incommensurate");
       break;
     case ARITH_ASYMMETRIC:
-      p = "Integer outside symmetric range implied by Standard Fortran";
+      p = _("Integer outside symmetric range implied by Standard Fortran");
       break;
     default:
       gfc_internal_error ("gfc_arith_error(): Bad error code");
Index: gcc/fortran/array.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/array.c,v
retrieving revision 1.18
diff -u -3 -p -r1.18 array.c
--- gcc/fortran/array.c	14 Jul 2005 01:37:41 -0000	1.18
+++ gcc/fortran/array.c	30 Aug 2005 19:15:05 -0000
@@ -169,8 +169,8 @@ gfc_match_array_ref (gfc_array_ref * ar,
 	}
     }
 
-  gfc_error ("Array reference at %C cannot have more than "
-	     stringize (GFC_MAX_DIMENSIONS) " dimensions");
+  gfc_error ("Array reference at %C cannot have more than %d dimensions",
+	     GFC_MAX_DIMENSIONS);
 
 error:
   return MATCH_ERROR;
@@ -419,8 +419,8 @@ gfc_match_array_spec (gfc_array_spec ** 
 
       if (as->rank >= GFC_MAX_DIMENSIONS)
 	{
-	  gfc_error ("Array specification at %C has more than "
-		     stringize (GFC_MAX_DIMENSIONS) " dimensions");
+	  gfc_error ("Array specification at %C has more than %d dimensions",
+		     GFC_MAX_DIMENSIONS);
 	  goto cleanup;
 	}
 
Index: gcc/fortran/check.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/check.c,v
retrieving revision 1.33
diff -u -3 -p -r1.33 check.c
--- gcc/fortran/check.c	9 Aug 2005 17:33:10 -0000	1.33
+++ gcc/fortran/check.c	30 Aug 2005 19:15:05 -0000
@@ -37,11 +37,11 @@ Software Foundation, 51 Franklin Street,
    function can be called in all kinds of ways.  */
 
 static void
-must_be (gfc_expr * e, int n, const char *thing)
+must_be (gfc_expr * e, int n, const char *thing_msgid)
 {
   gfc_error ("'%s' argument of '%s' intrinsic at %L must be %s",
 	     gfc_current_intrinsic_arg[n], gfc_current_intrinsic, &e->where,
-	     thing);
+	     thing_msgid);
 }
 
 
@@ -206,7 +206,7 @@ same_type_check (gfc_expr * e, int n, gf
   if (gfc_compare_types (&e->ts, &f->ts))
     return SUCCESS;
 
-  sprintf (message, "the same type and kind as '%s'",
+  sprintf (message, _("the same type and kind as '%s'"),
 	   gfc_current_intrinsic_arg[n]);
 
   must_be (f, m, message);
@@ -225,7 +225,7 @@ rank_check (gfc_expr * e, int n, int ran
   if (e->rank == rank)
     return SUCCESS;
 
-  sprintf (message, "of rank %d", rank);
+  sprintf (message, _("of rank %d"), rank);
 
   must_be (e, n, message);
 
@@ -262,7 +262,7 @@ kind_value_check (gfc_expr * e, int n, i
   if (e->ts.kind == k)
     return SUCCESS;
 
-  sprintf (message, "of kind %d", k);
+  sprintf (message, _("of kind %d"), k);
 
   must_be (e, n, message);
   return FAILURE;
@@ -507,7 +507,7 @@ gfc_check_associated (gfc_expr * pointer
         if (target->ref->u.ar.dimen_type[i] == DIMEN_VECTOR)
           {
             gfc_error ("Array section with a vector subscript at %L shall not "
-		       "be the target of an pointer",
+		       "be the target of a pointer",
                        &target->where);
             t = FAILURE;
             break;
@@ -1727,9 +1727,8 @@ gfc_check_reshape (gfc_expr * source, gf
 
   if (m > 0)
     {
-      gfc_error
-	("'shape' argument of 'reshape' intrinsic at %L has more than "
-	 stringize (GFC_MAX_DIMENSIONS) " elements", &shape->where);
+      gfc_error ("'shape' argument of 'reshape' intrinsic at %L has more "
+		 "than %d elements", &shape->where, GFC_MAX_DIMENSIONS);
       return FAILURE;
     }
 
@@ -1902,7 +1901,11 @@ gfc_check_spread (gfc_expr * source, gfc
 {
   if (source->rank >= GFC_MAX_DIMENSIONS)
     {
-      must_be (source, 0, "less than rank " stringize (GFC_MAX_DIMENSIONS));
+      char message[100];
+
+      sprintf (message, _("less than rank %d"), GFC_MAX_DIMENSIONS);
+      must_be (source, 0, message);
+
       return FAILURE;
     }
 
Index: gcc/fortran/error.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/error.c,v
retrieving revision 1.15
diff -u -3 -p -r1.15 error.c
--- gcc/fortran/error.c	14 Jul 2005 10:12:15 -0000	1.15
+++ gcc/fortran/error.c	30 Aug 2005 19:15:05 -0000
@@ -449,12 +449,12 @@ error_print (const char *type, const cha
 /* Wrapper for error_print().  */
 
 static void
-error_printf (const char *format, ...)
+error_printf (const char *gmsgid, ...)
 {
   va_list argp;
 
-  va_start (argp, format);
-  error_print ("", format, argp);
+  va_start (argp, gmsgid);
+  error_print ("", _(gmsgid), argp);
   va_end (argp);
 }
 
@@ -462,7 +462,7 @@ error_printf (const char *format, ...)
 /* Issue a warning.  */
 
 void
-gfc_warning (const char *format, ...)
+gfc_warning (const char *gmsgid, ...)
 {
   va_list argp;
 
@@ -473,10 +473,10 @@ gfc_warning (const char *format, ...)
   warning_buffer.index = 0;
   cur_error_buffer = &warning_buffer;
 
-  va_start (argp, format);
+  va_start (argp, gmsgid);
   if (buffer_flag == 0)
     warnings++;
-  error_print ("Warning:", format, argp);
+  error_print (_("Warning:"), _(gmsgid), argp);
   va_end (argp);
 
   error_char ('\0');
@@ -489,7 +489,7 @@ gfc_warning (const char *format, ...)
    an error is generated.  */
 
 try
-gfc_notify_std (int std, const char *format, ...)
+gfc_notify_std (int std, const char *gmsgid, ...)
 {
   va_list argp;
   bool warning;
@@ -514,11 +514,11 @@ gfc_notify_std (int std, const char *for
       else
 	errors++;
     }
-  va_start (argp, format);
+  va_start (argp, gmsgid);
   if (warning)
-    error_print ("Warning:", format, argp);
+    error_print (_("Warning:"), _(gmsgid), argp);
   else
-    error_print ("Error:", format, argp);
+    error_print (_("Error:"), _(gmsgid), argp);
   va_end (argp);
 
   error_char ('\0');
@@ -529,7 +529,7 @@ gfc_notify_std (int std, const char *for
 /* Immediate warning (i.e. do not buffer the warning).  */
 
 void
-gfc_warning_now (const char *format, ...)
+gfc_warning_now (const char *gmsgid, ...)
 {
   va_list argp;
   int i;
@@ -541,8 +541,8 @@ gfc_warning_now (const char *format, ...
   buffer_flag = 0;
   warnings++;
 
-  va_start (argp, format);
-  error_print ("Warning:", format, argp);
+  va_start (argp, gmsgid);
+  error_print (_("Warning:"), _(gmsgid), argp);
   va_end (argp);
 
   error_char ('\0');
@@ -578,7 +578,7 @@ gfc_warning_check (void)
 /* Issue an error.  */
 
 void
-gfc_error (const char *format, ...)
+gfc_error (const char *gmsgid, ...)
 {
   va_list argp;
 
@@ -589,10 +589,10 @@ gfc_error (const char *format, ...)
   error_buffer.index = 0;
   cur_error_buffer = &error_buffer;
 
-  va_start (argp, format);
+  va_start (argp, gmsgid);
   if (buffer_flag == 0)
     errors++;
-  error_print ("Error:", format, argp);
+  error_print (_("Error:"), _(gmsgid), argp);
   va_end (argp);
 
   error_char ('\0');
@@ -602,7 +602,7 @@ gfc_error (const char *format, ...)
 /* Immediate error.  */
 
 void
-gfc_error_now (const char *format, ...)
+gfc_error_now (const char *gmsgid, ...)
 {
   va_list argp;
   int i;
@@ -615,8 +615,8 @@ gfc_error_now (const char *format, ...)
   buffer_flag = 0;
   errors++;
 
-  va_start (argp, format);
-  error_print ("Error:", format, argp);
+  va_start (argp, gmsgid);
+  error_print (_("Error:"), _(gmsgid), argp);
   va_end (argp);
 
   error_char ('\0');
@@ -627,14 +627,14 @@ gfc_error_now (const char *format, ...)
 /* Fatal error, never returns.  */
 
 void
-gfc_fatal_error (const char *format, ...)
+gfc_fatal_error (const char *gmsgid, ...)
 {
   va_list argp;
 
   buffer_flag = 0;
 
-  va_start (argp, format);
-  error_print ("Fatal Error:", format, argp);
+  va_start (argp, gmsgid);
+  error_print (_("Fatal Error:"), _(gmsgid), argp);
   va_end (argp);
 
   exit (3);
@@ -735,13 +735,13 @@ gfc_free_error (gfc_error_buf * err)
 /* Debug wrapper for printf.  */
 
 void
-gfc_status (const char *format, ...)
+gfc_status (const char *cmsgid, ...)
 {
   va_list argp;
 
-  va_start (argp, format);
+  va_start (argp, cmsgid);
 
-  vprintf (format, argp);
+  vprintf (_(cmsgid), argp);
 
   va_end (argp);
 }
Index: gcc/fortran/expr.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/expr.c,v
retrieving revision 1.28
diff -u -3 -p -r1.28 expr.c
--- gcc/fortran/expr.c	3 Aug 2005 01:55:37 -0000	1.28
+++ gcc/fortran/expr.c	30 Aug 2005 19:15:05 -0000
@@ -255,15 +255,15 @@ gfc_extract_int (gfc_expr * expr, int *r
 {
 
   if (expr->expr_type != EXPR_CONSTANT)
-    return "Constant expression required at %C";
+    return _("Constant expression required at %C");
 
   if (expr->ts.type != BT_INTEGER)
-    return "Integer expression required at %C";
+    return _("Integer expression required at %C");
 
   if ((mpz_cmp_si (expr->value.integer, INT_MAX) > 0)
       || (mpz_cmp_si (expr->value.integer, INT_MIN) < 0))
     {
-      return "Integer value too large in expression at %C";
+      return _("Integer value too large in expression at %C");
     }
 
   *result = (int) mpz_get_si (expr->value.integer);
@@ -1753,7 +1753,8 @@ gfc_specification_expr (gfc_expr * e)
 /* Given two expressions, make sure that the arrays are conformable.  */
 
 try
-gfc_check_conformance (const char *optype, gfc_expr * op1, gfc_expr * op2)
+gfc_check_conformance (const char *optype_msgid,
+		       gfc_expr * op1, gfc_expr * op2)
 {
   int op1_flag, op2_flag, d;
   mpz_t op1_size, op2_size;
@@ -1764,7 +1765,8 @@ gfc_check_conformance (const char *optyp
 
   if (op1->rank != op2->rank)
     {
-      gfc_error ("Incompatible ranks in %s at %L", optype, &op1->where);
+      gfc_error ("Incompatible ranks in %s at %L", _(optype_msgid),
+		 &op1->where);
       return FAILURE;
     }
 
@@ -1778,7 +1780,8 @@ gfc_check_conformance (const char *optyp
       if (op1_flag && op2_flag && mpz_cmp (op1_size, op2_size) != 0)
 	{
 	  gfc_error ("%s at %L has different shape on dimension %d (%d/%d)",
-		     optype, &op1->where, d + 1, (int) mpz_get_si (op1_size),
+		     _(optype_msgid), &op1->where, d + 1,
+		     (int) mpz_get_si (op1_size),
 		     (int) mpz_get_si (op2_size));
 
 	  t = FAILURE;
@@ -1920,7 +1923,7 @@ gfc_check_pointer_assign (gfc_expr * lva
 
   if (lvalue->ts.kind != rvalue->ts.kind)
     {
-      gfc_error	("Different kind type parameters in pointer "
+      gfc_error ("Different kind type parameters in pointer "
 		 "assignment at %L", &lvalue->where);
       return FAILURE;
     }
@@ -1928,14 +1931,14 @@ gfc_check_pointer_assign (gfc_expr * lva
   attr = gfc_expr_attr (rvalue);
   if (!attr.target && !attr.pointer)
     {
-      gfc_error	("Pointer assignment target is neither TARGET "
+      gfc_error ("Pointer assignment target is neither TARGET "
 		 "nor POINTER at %L", &rvalue->where);
       return FAILURE;
     }
 
   if (is_pure && gfc_impure_variable (rvalue->symtree->n.sym))
     {
-      gfc_error	("Bad target in pointer assignment in PURE "
+      gfc_error ("Bad target in pointer assignment in PURE "
 		 "procedure at %L", &rvalue->where);
     }
 
Index: gcc/fortran/gfortran.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/gfortran.h,v
retrieving revision 1.81
diff -u -3 -p -r1.81 gfortran.h
--- gcc/fortran/gfortran.h	19 Aug 2005 09:05:03 -0000	1.81
+++ gcc/fortran/gfortran.h	30 Aug 2005 19:15:06 -0000
@@ -30,6 +30,7 @@ Software Foundation, 51 Franklin Street,
    time I looked, so by comparison this is perfectly reasonable.  */
 
 #include "system.h"
+#include "intl.h"
 #include "coretypes.h"
 #include "input.h"
 
@@ -1519,7 +1520,6 @@ void gfc_free (void *);
 int gfc_terminal_width(void);
 void gfc_clear_ts (gfc_typespec *);
 FILE *gfc_open_file (const char *);
-const char *gfc_article (const char *);
 const char *gfc_basic_typename (bt);
 const char *gfc_typename (gfc_typespec *);
 
Index: gcc/fortran/gfortranspec.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/gfortranspec.c,v
retrieving revision 1.9
diff -u -3 -p -r1.9 gfortranspec.c
--- gcc/fortran/gfortranspec.c	25 Jun 2005 00:40:34 -0000	1.9
+++ gcc/fortran/gfortranspec.c	30 Aug 2005 19:15:06 -0000
@@ -51,6 +51,7 @@ Boston, MA 02110-1301, USA.  */
 
 #include "coretypes.h"
 #include "tm.h"
+#include "intl.h"
 
 #ifndef MATH_LIBRARY
 #define MATH_LIBRARY "-lm"
@@ -345,7 +346,7 @@ lang_specific_driver (int *in_argc, cons
 	  break;
 
 	case OPTION_version:
-	  printf ("\
+	  printf (_("\
 GNU Fortran 95 (GCC %s)\n\
 Copyright (C) 2005 Free Software Foundation, Inc.\n\
 \n\
@@ -353,7 +354,7 @@ GNU Fortran comes with NO WARRANTY, to t
 You may redistribute copies of GNU Fortran\n\
 under the terms of the GNU General Public License.\n\
 For more information about these matters, see the file named COPYING\n\
-", version_string);
+"), version_string);
 	  exit (0);
 	  break;
 
@@ -528,7 +529,7 @@ For more information about these matters
 
   if (verbose && g77_newargv != g77_xargv)
     {
-      fprintf (stderr, "Driving:");
+      fprintf (stderr, _("Driving:"));
       for (i = 0; i < g77_newargc; i++)
 	fprintf (stderr, " %s", g77_newargv[i]);
       fprintf (stderr, "\n");
Index: gcc/fortran/io.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/io.c,v
retrieving revision 1.30
diff -u -3 -p -r1.30 io.c
--- gcc/fortran/io.c	14 Aug 2005 16:15:39 -0000	1.30
+++ gcc/fortran/io.c	30 Aug 2005 19:15:07 -0000
@@ -400,11 +400,11 @@ format_lex (void)
 static try
 check_format (void)
 {
-  const char *posint_required	  = "Positive width required";
-  const char *period_required	  = "Period required";
-  const char *nonneg_required	  = "Nonnegative width required";
-  const char *unexpected_element  = "Unexpected element";
-  const char *unexpected_end	  = "Unexpected end of format string";
+  const char *posint_required	  = _("Positive width required");
+  const char *period_required	  = _("Period required");
+  const char *nonneg_required	  = _("Nonnegative width required");
+  const char *unexpected_element  = _("Unexpected element");
+  const char *unexpected_end	  = _("Unexpected end of format string");
 
   const char *error;
   format_token t, u;
@@ -421,7 +421,7 @@ check_format (void)
   t = format_lex ();
   if (t != FMT_LPAREN)
     {
-      error = "Missing leading left parenthesis";
+      error = _("Missing leading left parenthesis");
       goto syntax;
     }
 
@@ -459,7 +459,7 @@ format_item_1:
       t = format_lex ();
       if (t != FMT_P)
 	{
-	  error = "Expected P edit descriptor";
+	  error = _("Expected P edit descriptor");
 	  goto syntax;
 	}
 
@@ -467,7 +467,7 @@ format_item_1:
 
     case FMT_P:
       /* P requires a prior number.  */
-      error = "P descriptor requires leading scale factor";
+      error = _("P descriptor requires leading scale factor");
       goto syntax;
 
     case FMT_X:
@@ -497,7 +497,7 @@ format_item_1:
         return FAILURE;
       if (t != FMT_RPAREN || level > 0)
 	{
-	  error = "$ must be the last specifier";
+	  error = _("$ must be the last specifier");
 	  goto syntax;
 	}
 
@@ -542,7 +542,7 @@ data_desc:
 	  t = format_lex ();
 	  if (t == FMT_POSINT)
 	    {
-	      error = "Repeat count cannot follow P descriptor";
+	      error = _("Repeat count cannot follow P descriptor");
 	      goto syntax;
 	    }
 
@@ -605,7 +605,7 @@ data_desc:
 	  u = format_lex ();
 	  if (u != FMT_POSINT)
 	    {
-	      error = "Positive exponent width required";
+	      error = _("Positive exponent width required");
 	      goto syntax;
 	    }
 	}
Index: gcc/fortran/matchexp.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/matchexp.c,v
retrieving revision 1.10
diff -u -3 -p -r1.10 matchexp.c
--- gcc/fortran/matchexp.c	22 Jul 2005 07:31:17 -0000	1.10
+++ gcc/fortran/matchexp.c	30 Aug 2005 19:15:07 -0000
@@ -26,7 +26,7 @@ Software Foundation, 51 Franklin Street,
 #include "arith.h"
 #include "match.h"
 
-static char expression_syntax[] = "Syntax error in expression at %C";
+static char expression_syntax[] = N_("Syntax error in expression at %C");
 
 
 /* Match a user-defined operator name.  This is a normal name with a
Index: gcc/fortran/misc.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/misc.c,v
retrieving revision 1.10
diff -u -3 -p -r1.10 misc.c
--- gcc/fortran/misc.c	7 Jul 2005 07:54:42 -0000	1.10
+++ gcc/fortran/misc.c	30 Aug 2005 19:15:07 -0000
@@ -105,36 +105,6 @@ gfc_open_file (const char *name)
 }
 
 
-/* Given a word, return the correct article.  */
-
-const char *
-gfc_article (const char *word)
-{
-  const char *p;
-
-  switch (*word)
-    {
-    case 'a':
-    case 'A':
-    case 'e':
-    case 'E':
-    case 'i':
-    case 'I':
-    case 'o':
-    case 'O':
-    case 'u':
-    case 'U':
-      p = "an";
-      break;
-
-    default:
-      p = "a";
-    }
-
-  return p;
-}
-
-
 /* Return a string for each type.  */
 
 const char *
Index: gcc/fortran/module.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/module.c,v
retrieving revision 1.35
diff -u -3 -p -r1.35 module.c
--- gcc/fortran/module.c	19 Aug 2005 09:05:03 -0000	1.35
+++ gcc/fortran/module.c	30 Aug 2005 19:15:07 -0000
@@ -788,27 +788,25 @@ static char *atom_string, atom_name[MAX_
 static void bad_module (const char *) ATTRIBUTE_NORETURN;
 
 static void
-bad_module (const char *message)
+bad_module (const char *msgid)
 {
-  const char *p;
+  fclose (module_fp);
 
   switch (iomode)
     {
     case IO_INPUT:
-      p = "Reading";
+      gfc_fatal_error ("Reading module %s at line %d column %d: %s",
+	  	       module_name, module_line, module_column, msgid);
       break;
     case IO_OUTPUT:
-      p = "Writing";
+      gfc_fatal_error ("Writing module %s at line %d column %d: %s",
+	  	       module_name, module_line, module_column, msgid);
       break;
     default:
-      p = "???";
+      gfc_fatal_error ("Module %s at line %d column %d: %s",
+	  	       module_name, module_line, module_column, msgid);
       break;
     }
-
-  fclose (module_fp);
-
-  gfc_fatal_error ("%s module %s at line %d column %d: %s", p,
-		   module_name, module_line, module_column, message);
 }
 
 
@@ -1115,19 +1113,19 @@ require_atom (atom_type type)
       switch (type)
 	{
 	case ATOM_NAME:
-	  p = "Expected name";
+	  p = _("Expected name");
 	  break;
 	case ATOM_LPAREN:
-	  p = "Expected left parenthesis";
+	  p = _("Expected left parenthesis");
 	  break;
 	case ATOM_RPAREN:
-	  p = "Expected right parenthesis";
+	  p = _("Expected right parenthesis");
 	  break;
 	case ATOM_INTEGER:
-	  p = "Expected integer";
+	  p = _("Expected integer");
 	  break;
 	case ATOM_STRING:
-	  p = "Expected string";
+	  p = _("Expected string");
 	  break;
 	default:
 	  gfc_internal_error ("require_atom(): bad atom type required");
Index: gcc/fortran/parse.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/parse.c,v
retrieving revision 1.30
diff -u -3 -p -r1.30 parse.c
--- gcc/fortran/parse.c	14 Aug 2005 21:45:03 -0000	1.30
+++ gcc/fortran/parse.c	30 Aug 2005 19:15:07 -0000
@@ -731,13 +731,13 @@ gfc_ascii_statement (gfc_statement st)
   switch (st)
     {
     case ST_ARITHMETIC_IF:
-      p = "arithmetic IF";
+      p = _("arithmetic IF");
       break;
     case ST_ALLOCATE:
       p = "ALLOCATE";
       break;
     case ST_ATTR_DECL:
-      p = "attribute declaration";
+      p = _("attribute declaration");
       break;
     case ST_BACKSPACE:
       p = "BACKSPACE";
@@ -767,7 +767,7 @@ gfc_ascii_statement (gfc_statement st)
       p = "CYCLE";
       break;
     case ST_DATA_DECL:
-      p = "data declaration";
+      p = _("data declaration");
       break;
     case ST_DATA:
       p = "DATA";
@@ -776,7 +776,7 @@ gfc_ascii_statement (gfc_statement st)
       p = "DEALLOCATE";
       break;
     case ST_DERIVED_DECL:
-      p = "Derived type declaration";
+      p = _("derived type declaration");
       break;
     case ST_DO:
       p = "DO";
@@ -855,7 +855,7 @@ gfc_ascii_statement (gfc_statement st)
       p = "GOTO";
       break;
     case ST_IF_BLOCK:
-      p = "block IF";
+      p = _("block IF");
       break;
     case ST_IMPLICIT:
       p = "IMPLICIT";
@@ -864,7 +864,7 @@ gfc_ascii_statement (gfc_statement st)
       p = "IMPLICIT NONE";
       break;
     case ST_IMPLIED_ENDDO:
-      p = "implied END DO";
+      p = _("implied END DO");
       break;
     case ST_INQUIRE:
       p = "INQUIRE";
@@ -931,10 +931,10 @@ gfc_ascii_statement (gfc_statement st)
       p = "WRITE";
       break;
     case ST_ASSIGNMENT:
-      p = "assignment";
+      p = _("assignment");
       break;
     case ST_POINTER_ASSIGNMENT:
-      p = "pointer assignment";
+      p = _("pointer assignment");
       break;
     case ST_SELECT_CASE:
       p = "SELECT CASE";
@@ -943,7 +943,7 @@ gfc_ascii_statement (gfc_statement st)
       p = "SEQUENCE";
       break;
     case ST_SIMPLE_IF:
-      p = "Simple IF";
+      p = _("simple IF");
       break;
     case ST_STATEMENT_FUNCTION:
       p = "STATEMENT FUNCTION";
@@ -969,43 +969,43 @@ gfc_state_name (gfc_compile_state state)
   switch (state)
     {
     case COMP_PROGRAM:
-      p = "a PROGRAM";
+      p = _("a PROGRAM");
       break;
     case COMP_MODULE:
-      p = "a MODULE";
+      p = _("a MODULE");
       break;
     case COMP_SUBROUTINE:
-      p = "a SUBROUTINE";
+      p = _("a SUBROUTINE");
       break;
     case COMP_FUNCTION:
-      p = "a FUNCTION";
+      p = _("a FUNCTION");
       break;
     case COMP_BLOCK_DATA:
-      p = "a BLOCK DATA";
+      p = _("a BLOCK DATA");
       break;
     case COMP_INTERFACE:
-      p = "an INTERFACE";
+      p = _("an INTERFACE");
       break;
     case COMP_DERIVED:
-      p = "a DERIVED TYPE block";
+      p = _("a DERIVED TYPE block");
       break;
     case COMP_IF:
-      p = "an IF-THEN block";
+      p = _("an IF-THEN block");
       break;
     case COMP_DO:
-      p = "a DO block";
+      p = _("a DO block");
       break;
     case COMP_SELECT:
-      p = "a SELECT block";
+      p = _("a SELECT block");
       break;
     case COMP_FORALL:
-      p = "a FORALL block";
+      p = _("a FORALL block");
       break;
     case COMP_WHERE:
-      p = "a WHERE block";
+      p = _("a WHERE block");
       break;
     case COMP_CONTAINS:
-      p = "a contained subprogram";
+      p = _("a contained subprogram");
       break;
 
     default:
Index: gcc/fortran/primary.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/primary.c,v
retrieving revision 1.34
diff -u -3 -p -r1.34 primary.c
--- gcc/fortran/primary.c	6 Aug 2005 19:18:45 -0000	1.34
+++ gcc/fortran/primary.c	30 Aug 2005 19:15:07 -0000
@@ -317,18 +317,18 @@ match_boz_constant (gfc_expr ** result)
     {
     case 'b':
       radix = 2;
-      rname = "binary";
+      rname = _("binary");
       break;
     case 'o':
       radix = 8;
-      rname = "octal";
+      rname = _("octal");
       break;
     case 'x':
       x_hex = 1;
       /* Fall through.  */
     case 'z':
       radix = 16;
-      rname = "hexadecimal";
+      rname = _("hexadecimal");
       break;
     default:
       goto backup;
@@ -351,7 +351,7 @@ match_boz_constant (gfc_expr ** result)
   length = match_digits (0, radix, NULL);
   if (length == -1)
     {
-      gfc_error ("Empty set of digits in %s constants at %C", rname);
+      gfc_error ("Empty set of digits in %s constant at %C", rname);
       return MATCH_ERROR;
     }
 
Index: gcc/fortran/resolve.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/resolve.c,v
retrieving revision 1.51
diff -u -3 -p -r1.51 resolve.c
--- gcc/fortran/resolve.c	10 Aug 2005 20:16:26 -0000	1.51
+++ gcc/fortran/resolve.c	30 Aug 2005 19:15:07 -0000
@@ -411,13 +411,27 @@ resolve_entries (gfc_namespace * ns)
 	    {
 	      sym = el->sym->result;
 	      if (sym->attr.dimension)
-		gfc_error ("%s result %s can't be an array in FUNCTION %s at %L",
-			   el == ns->entries ? "FUNCTION" : "ENTRY", sym->name,
-			   ns->entries->sym->name, &sym->declared_at);
+	      {
+		if (el == ns->entries)
+		  gfc_error
+		  ("FUNCTION result %s can't be an array in FUNCTION %s at %L",
+		   sym->name, ns->entries->sym->name, &sym->declared_at);
+	        else
+		  gfc_error
+		    ("ENTRY result %s can't be an array in FUNCTION %s at %L",
+		     sym->name, ns->entries->sym->name, &sym->declared_at);
+	      }
 	      else if (sym->attr.pointer)
-		gfc_error ("%s result %s can't be a POINTER in FUNCTION %s at %L",
-			   el == ns->entries ? "FUNCTION" : "ENTRY", sym->name,
-			   ns->entries->sym->name, &sym->declared_at);
+	      {
+		if (el == ns->entries)
+		  gfc_error
+		  ("FUNCTION result %s can't be a POINTER in FUNCTION %s at %L",
+		   sym->name, ns->entries->sym->name, &sym->declared_at);
+	        else
+		  gfc_error
+		    ("ENTRY result %s can't be a POINTER in FUNCTION %s at %L",
+		     sym->name, ns->entries->sym->name, &sym->declared_at);
+	      }
 	      else
 		{
 		  ts = &sym->ts;
@@ -450,10 +464,18 @@ resolve_entries (gfc_namespace * ns)
 		      break;
 		    }
 		  if (sym)
-		    gfc_error ("%s result %s can't be of type %s in FUNCTION %s at %L",
-			       el == ns->entries ? "FUNCTION" : "ENTRY", sym->name,
-			       gfc_typename (ts), ns->entries->sym->name,
-			       &sym->declared_at);
+		  {
+		    if (el == ns->entries)
+		      gfc_error
+			("FUNCTION result %s can't be of type %s in FUNCTION %s at %L",
+			 sym->name, gfc_typename (ts), ns->entries->sym->name,
+			 &sym->declared_at);
+		    else
+		      gfc_error
+			("ENTRY result %s can't be of type %s in FUNCTION %s at %L",
+			 sym->name, gfc_typename (ts), ns->entries->sym->name,
+			 &sym->declared_at);
+		  }
 		}
 	    }
 	}
@@ -1417,7 +1439,7 @@ resolve_operator (gfc_expr * e)
 	  break;
 	}
 
-      sprintf (msg, "Operand of unary numeric operator '%s' at %%L is %s",
+      sprintf (msg, _("Operand of unary numeric operator '%s' at %%L is %s"),
 	       gfc_op2string (e->value.op.operator), gfc_typename (&e->ts));
       goto bad_op;
 
@@ -1433,7 +1455,7 @@ resolve_operator (gfc_expr * e)
 	}
 
       sprintf (msg,
-	       "Operands of binary numeric operator '%s' at %%L are %s/%s",
+	       _("Operands of binary numeric operator '%s' at %%L are %s/%s"),
 	       gfc_op2string (e->value.op.operator), gfc_typename (&op1->ts),
 	       gfc_typename (&op2->ts));
       goto bad_op;
@@ -1447,7 +1469,7 @@ resolve_operator (gfc_expr * e)
 	}
 
       sprintf (msg,
-	       "Operands of string concatenation operator at %%L are %s/%s",
+	       _("Operands of string concatenation operator at %%L are %s/%s"),
 	       gfc_typename (&op1->ts), gfc_typename (&op2->ts));
       goto bad_op;
 
@@ -1466,7 +1488,7 @@ resolve_operator (gfc_expr * e)
 	  break;
 	}
 
-      sprintf (msg, "Operands of logical operator '%s' at %%L are %s/%s",
+      sprintf (msg, _("Operands of logical operator '%s' at %%L are %s/%s"),
 	       gfc_op2string (e->value.op.operator), gfc_typename (&op1->ts),
 	       gfc_typename (&op2->ts));
 
@@ -1480,7 +1502,7 @@ resolve_operator (gfc_expr * e)
 	  break;
 	}
 
-      sprintf (msg, "Operand of .NOT. operator at %%L is %s",
+      sprintf (msg, _("Operand of .NOT. operator at %%L is %s"),
 	       gfc_typename (&op1->ts));
       goto bad_op;
 
@@ -1490,7 +1512,7 @@ resolve_operator (gfc_expr * e)
     case INTRINSIC_LE:
       if (op1->ts.type == BT_COMPLEX || op2->ts.type == BT_COMPLEX)
 	{
-	  strcpy (msg, "COMPLEX quantities cannot be compared at %L");
+	  strcpy (msg, _("COMPLEX quantities cannot be compared at %L"));
 	  goto bad_op;
 	}
 
@@ -1515,11 +1537,13 @@ resolve_operator (gfc_expr * e)
 	}
 
       if (op1->ts.type == BT_LOGICAL && op2->ts.type == BT_LOGICAL)
-	sprintf (msg, "Logicals at %%L must be compared with %s instead of %s",
+	sprintf (msg,
+	         _("Logicals at %%L must be compared with %s instead of %s"),
 		 e->value.op.operator == INTRINSIC_EQ ? ".EQV." : ".NEQV.",
 		 gfc_op2string (e->value.op.operator));
       else
-	sprintf (msg, "Operands of comparison operator '%s' at %%L are %s/%s",
+	sprintf (msg,
+	         _("Operands of comparison operator '%s' at %%L are %s/%s"),
 		 gfc_op2string (e->value.op.operator), gfc_typename (&op1->ts),
 		 gfc_typename (&op2->ts));
 
@@ -1527,10 +1551,10 @@ resolve_operator (gfc_expr * e)
 
     case INTRINSIC_USER:
       if (op2 == NULL)
-	sprintf (msg, "Operand of user operator '%s' at %%L is %s",
+	sprintf (msg, _("Operand of user operator '%s' at %%L is %s"),
 		 e->value.op.uop->name, gfc_typename (&op1->ts));
       else
-	sprintf (msg, "Operands of user operator '%s' at %%L are %s/%s",
+	sprintf (msg, _("Operands of user operator '%s' at %%L are %s/%s"),
 		 e->value.op.uop->name, gfc_typename (&op1->ts),
 		 gfc_typename (&op2->ts));
 
@@ -2342,24 +2366,26 @@ gfc_resolve_expr (gfc_expr * e)
    INTEGER or (optionally) REAL type.  */
 
 static try
-gfc_resolve_iterator_expr (gfc_expr * expr, bool real_ok, const char * name)
+gfc_resolve_iterator_expr (gfc_expr * expr, bool real_ok,
+			   const char * name_msgid)
 {
   if (gfc_resolve_expr (expr) == FAILURE)
     return FAILURE;
 
   if (expr->rank != 0)
     {
-      gfc_error ("%s at %L must be a scalar", name, &expr->where);
+      gfc_error ("%s at %L must be a scalar", _(name_msgid), &expr->where);
       return FAILURE;
     }
 
   if (!(expr->ts.type == BT_INTEGER
 	|| (expr->ts.type == BT_REAL && real_ok)))
     {
-      gfc_error ("%s at %L must be INTEGER%s",
-		 name,
-		 &expr->where,
-		 real_ok ? " or REAL" : "");
+      if (real_ok)
+	gfc_error ("%s at %L must be INTEGER or REAL", _(name_msgid),
+		   &expr->where);
+      else
+	gfc_error ("%s at %L must be INTEGER", _(name_msgid), &expr->where);
       return FAILURE;
     }
   return SUCCESS;
@@ -4147,9 +4173,12 @@ resolve_symbol (gfc_symbol * sym)
 	  || sym->as->type == AS_ASSUMED_SHAPE)
       && sym->attr.dummy == 0)
     {
-      gfc_error ("Assumed %s array at %L must be a dummy argument",
-		 sym->as->type == AS_ASSUMED_SIZE ? "size" : "shape",
-                 &sym->declared_at);
+      if (sym->as->type == AS_ASSUMED_SIZE)
+	gfc_error ("Assumed size array at %L must be a dummy argument",
+		   &sym->declared_at);
+      else
+	gfc_error ("Assumed shape array at %L must be a dummy argument",
+		   &sym->declared_at);
       return;
     }
 
@@ -4265,15 +4294,15 @@ resolve_symbol (gfc_symbol * sym)
       /* Can the sybol have an initializer?  */
       whynot = NULL;
       if (sym->attr.allocatable)
-	whynot = "Allocatable";
+	whynot = _("Allocatable");
       else if (sym->attr.external)
-	whynot = "External";
+	whynot = _("External");
       else if (sym->attr.dummy)
-	whynot = "Dummy";
+	whynot = _("Dummy");
       else if (sym->attr.intrinsic)
-	whynot = "Intrinsic";
+	whynot = _("Intrinsic");
       else if (sym->attr.result)
-	whynot = "Function Result";
+	whynot = _("Function Result");
       else if (sym->attr.dimension && !sym->attr.pointer)
 	{
 	  /* Don't allow initialization of automatic arrays.  */
@@ -4284,7 +4313,7 @@ resolve_symbol (gfc_symbol * sym)
 		  || sym->as->upper[i] == NULL
 		  || sym->as->upper[i]->expr_type != EXPR_CONSTANT)
 		{
-		  whynot = "Automatic array";
+		  whynot = _("Automatic array");
 		  break;
 		}
 	    }
Index: gcc/fortran/symbol.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/symbol.c,v
retrieving revision 1.32
diff -u -3 -p -r1.32 symbol.c
--- gcc/fortran/symbol.c	3 Jul 2005 18:39:20 -0000	1.32
+++ gcc/fortran/symbol.c	30 Aug 2005 19:15:08 -0000
@@ -904,9 +904,8 @@ gfc_add_procedure (symbol_attribute * at
 
   if (attr->proc != PROC_UNKNOWN)
     {
-      gfc_error ("%s procedure at %L is already %s %s procedure",
+      gfc_error ("%s procedure at %L is already declared as %s procedure",
 		 gfc_code2string (procedures, t), where,
-		 gfc_article (gfc_code2string (procedures, attr->proc)),
 		 gfc_code2string (procedures, attr->proc));
 
       return FAILURE;
Index: gcc/fortran/trans-const.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/fortran/trans-const.c,v
retrieving revision 1.29
diff -u -3 -p -r1.29 trans-const.c
--- gcc/fortran/trans-const.c	7 Jul 2005 07:54:43 -0000	1.29
+++ gcc/fortran/trans-const.c	30 Aug 2005 19:15:09 -0000
@@ -86,12 +86,13 @@ gfc_build_string_const (int length, cons
   return str;
 }
 
-/* Build a Fortran character constant from a zero-terminated string.  */
-
+/* Build a Fortran character constant from a zero-terminated string.
+   Since this is mainly used for error messages, the string will get
+   translated.  */
 tree
-gfc_build_cstring_const (const char *s)
+gfc_build_cstring_const (const char *msgid)
 {
-  return gfc_build_string_const (strlen (s) + 1, s);
+  return gfc_build_string_const (strlen (msgid) + 1, _(msgid));
 }
 
 /* Return a string constant with the given length.  Used for static
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n";
"POT-Creation-Date: 2005-08-27 23:40+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"

#: c-decl.c:3709
msgid "<anonymous>"
msgstr ""

#: c-format.c:343 c-format.c:367
msgid "' ' flag"
msgstr ""

#: c-format.c:343 c-format.c:367
msgid "the ' ' printf flag"
msgstr ""

#: c-format.c:344 c-format.c:368 c-format.c:402 c-format.c:414 c-format.c:471
msgid "'+' flag"
msgstr ""

#: c-format.c:344 c-format.c:368 c-format.c:402 c-format.c:414
msgid "the '+' printf flag"
msgstr ""

#: c-format.c:345 c-format.c:369 c-format.c:415 c-format.c:447
msgid "'#' flag"
msgstr ""

#: c-format.c:345 c-format.c:369 c-format.c:415
msgid "the '#' printf flag"
msgstr ""

#: c-format.c:346 c-format.c:370 c-format.c:445
msgid "'0' flag"
msgstr ""

#: c-format.c:346 c-format.c:370
msgid "the '0' printf flag"
msgstr ""

#: c-format.c:347 c-format.c:371 c-format.c:444 c-format.c:474
msgid "'-' flag"
msgstr ""

#: c-format.c:347 c-format.c:371
msgid "the '-' printf flag"
msgstr ""

#: c-format.c:348 c-format.c:428
msgid "''' flag"
msgstr ""

#: c-format.c:348
msgid "the ''' printf flag"
msgstr ""

#: c-format.c:349 c-format.c:429
msgid "'I' flag"
msgstr ""

#: c-format.c:349
msgid "the 'I' printf flag"
msgstr ""

#: c-format.c:350 c-format.c:372 c-format.c:426 c-format.c:448 c-format.c:475
#: c-format.c:1601 config/sol2-c.c:46
msgid "field width"
msgstr ""

#: c-format.c:350 c-format.c:372 config/sol2-c.c:46
msgid "field width in printf format"
msgstr ""

#: c-format.c:351 c-format.c:373 c-format.c:404 c-format.c:417
msgid "precision"
msgstr ""

#: c-format.c:351 c-format.c:373 c-format.c:404 c-format.c:417
msgid "precision in printf format"
msgstr ""

#: c-format.c:352 c-format.c:374 c-format.c:405 c-format.c:418 c-format.c:427
#: c-format.c:478 config/sol2-c.c:47
msgid "length modifier"
msgstr ""

#: c-format.c:352 c-format.c:374 c-format.c:405 c-format.c:418
#: config/sol2-c.c:47
msgid "length modifier in printf format"
msgstr ""

#: c-format.c:403 c-format.c:416
msgid "'q' flag"
msgstr ""

#: c-format.c:403 c-format.c:416
msgid "the 'q' diagnostic flag"
msgstr ""

#: c-format.c:424
msgid "assignment suppression"
msgstr ""

#: c-format.c:424
msgid "the assignment suppression scanf feature"
msgstr ""

#: c-format.c:425
msgid "'a' flag"
msgstr ""

#: c-format.c:425
msgid "the 'a' scanf flag"
msgstr ""

#: c-format.c:426
msgid "field width in scanf format"
msgstr ""

#: c-format.c:427
msgid "length modifier in scanf format"
msgstr ""

#: c-format.c:428
msgid "the ''' scanf flag"
msgstr ""

#: c-format.c:429
msgid "the 'I' scanf flag"
msgstr ""

#: c-format.c:443
msgid "'_' flag"
msgstr ""

#: c-format.c:443
msgid "the '_' strftime flag"
msgstr ""

#: c-format.c:444
msgid "the '-' strftime flag"
msgstr ""

#: c-format.c:445
msgid "the '0' strftime flag"
msgstr ""

#: c-format.c:446 c-format.c:470
msgid "'^' flag"
msgstr ""

#: c-format.c:446
msgid "the '^' strftime flag"
msgstr ""

#: c-format.c:447
msgid "the '#' strftime flag"
msgstr ""

#: c-format.c:448
msgid "field width in strftime format"
msgstr ""

#: c-format.c:449
msgid "'E' modifier"
msgstr ""

#: c-format.c:449
msgid "the 'E' strftime modifier"
msgstr ""

#: c-format.c:450
msgid "'O' modifier"
msgstr ""

#: c-format.c:450
msgid "the 'O' strftime modifier"
msgstr ""

#: c-format.c:451
msgid "the 'O' modifier"
msgstr ""

#: c-format.c:469
msgid "fill character"
msgstr ""

#: c-format.c:469
msgid "fill character in strfmon format"
msgstr ""

#: c-format.c:470
msgid "the '^' strfmon flag"
msgstr ""

#: c-format.c:471
msgid "the '+' strfmon flag"
msgstr ""

#: c-format.c:472
msgid "'(' flag"
msgstr ""

#: c-format.c:472
msgid "the '(' strfmon flag"
msgstr ""

#: c-format.c:473
msgid "'!' flag"
msgstr ""

#: c-format.c:473
msgid "the '!' strfmon flag"
msgstr ""

#: c-format.c:474
msgid "the '-' strfmon flag"
msgstr ""

#: c-format.c:475
msgid "field width in strfmon format"
msgstr ""

#: c-format.c:476
msgid "left precision"
msgstr ""

#: c-format.c:476
msgid "left precision in strfmon format"
msgstr ""

#: c-format.c:477
msgid "right precision"
msgstr ""

#: c-format.c:477
msgid "right precision in strfmon format"
msgstr ""

#: c-format.c:478
msgid "length modifier in strfmon format"
msgstr ""

#: c-format.c:1703
msgid "field precision"
msgstr ""

#: c-incpath.c:70
#, c-format
msgid "ignoring duplicate directory \"%s\"\n"
msgstr ""

#: c-incpath.c:73
#, c-format
msgid "  as it is a non-system directory that duplicates a system directory\n"
msgstr ""

#: c-incpath.c:77
#, c-format
msgid "ignoring nonexistent directory \"%s\"\n"
msgstr ""

#: c-incpath.c:286
#, c-format
msgid "#include \"...\" search starts here:\n"
msgstr ""

#: c-incpath.c:290
#, c-format
msgid "#include <...> search starts here:\n"
msgstr ""

#: c-incpath.c:295
#, c-format
msgid "End of search list.\n"
msgstr ""

#: c-opts.c:1312
msgid "<built-in>"
msgstr ""

#: c-opts.c:1328
msgid "<command line>"
msgstr ""

#: c-typeck.c:2116 c-typeck.c:4496 c-typeck.c:4498 c-typeck.c:4506
#: c-typeck.c:4536 c-typeck.c:5915
msgid "initializer element is not constant"
msgstr ""

#: c-typeck.c:4302
msgid "array initialized from parenthesized string constant"
msgstr ""

#: c-typeck.c:4362 cp/typeck2.c:672
#, gcc-internal-format
msgid "char-array initialized from wide string"
msgstr ""

#: c-typeck.c:4367
msgid "wchar_t-array initialized from non-wide string"
msgstr ""

#: c-typeck.c:4385 cp/typeck2.c:692
#, gcc-internal-format
msgid "initializer-string for array of chars is too long"
msgstr ""

#: c-typeck.c:4391
msgid "array of inappropriate type initialized from string constant"
msgstr ""

#. ??? This should not be an error when inlining calls to
#. unprototyped functions.
#: c-typeck.c:4455 c-typeck.c:3954 cp/typeck.c:1392
#, gcc-internal-format
msgid "invalid use of non-lvalue array"
msgstr ""

#: c-typeck.c:4479
msgid "array initialized from non-constant array expression"
msgstr ""

#: c-typeck.c:4543 c-typeck.c:5919
#, gcc-internal-format
msgid "initializer element is not computable at load time"
msgstr ""

#. Although C99 is unclear about whether incomplete arrays
#. of VLAs themselves count as VLAs, it does not make
#. sense to permit them to be initialized given that
#. ordinary VLAs may not be initialized.
#: c-typeck.c:4554 c-decl.c:3144 c-decl.c:3159
#, gcc-internal-format
msgid "variable-sized object may not be initialized"
msgstr ""

#: c-typeck.c:4558
msgid "invalid initializer"
msgstr ""

#: c-typeck.c:5032
msgid "extra brace group at end of initializer"
msgstr ""

#: c-typeck.c:5052
msgid "missing braces around initializer"
msgstr ""

#: c-typeck.c:5113
msgid "braces around scalar initializer"
msgstr ""

#: c-typeck.c:5170
msgid "initialization of flexible array member in a nested context"
msgstr ""

#: c-typeck.c:5172
msgid "initialization of a flexible array member"
msgstr ""

#: c-typeck.c:5199
msgid "missing initializer"
msgstr ""

#: c-typeck.c:5221
msgid "empty scalar initializer"
msgstr ""

#: c-typeck.c:5226
msgid "extra elements in scalar initializer"
msgstr ""

#: c-typeck.c:5330 c-typeck.c:5390
msgid "array index in non-array initializer"
msgstr ""

#: c-typeck.c:5335 c-typeck.c:5443
msgid "field name not in record or union initializer"
msgstr ""

#: c-typeck.c:5381
msgid "array index in initializer not of integer type"
msgstr ""

#: c-typeck.c:5386 c-typeck.c:5388
msgid "nonconstant array index in initializer"
msgstr ""

#: c-typeck.c:5392 c-typeck.c:5395
msgid "array index in initializer exceeds array bounds"
msgstr ""

#: c-typeck.c:5406
msgid "empty index range in initializer"
msgstr ""

#: c-typeck.c:5415
msgid "array index range in initializer exceeds array bounds"
msgstr ""

#: c-typeck.c:5490 c-typeck.c:5511 c-typeck.c:5983
msgid "initialized field with side-effects overwritten"
msgstr ""

#: c-typeck.c:6191
msgid "excess elements in char array initializer"
msgstr ""

#: c-typeck.c:6198 c-typeck.c:6244
msgid "excess elements in struct initializer"
msgstr ""

#: c-typeck.c:6259
msgid "non-static initialization of a flexible array member"
msgstr ""

#: c-typeck.c:6327
msgid "excess elements in union initializer"
msgstr ""

#: c-typeck.c:6414
msgid "excess elements in array initializer"
msgstr ""

#: c-typeck.c:6444
msgid "excess elements in vector initializer"
msgstr ""

#: c-typeck.c:6468
msgid "excess elements in scalar initializer"
msgstr ""

#: cfgrtl.c:2135
msgid "flow control insn inside a basic block"
msgstr ""

#: cfgrtl.c:2213
msgid "wrong insn in the fallthru edge"
msgstr ""

#: cfgrtl.c:2255
msgid "insn outside basic block"
msgstr ""

#: cfgrtl.c:2262
msgid "return not followed by barrier"
msgstr ""

#: cgraph.c:300 ipa-inline.c:292
msgid "function body not available"
msgstr ""

#: cgraph.c:302 cgraphunit.c:586
msgid "redefined extern inline functions are not considered for inlining"
msgstr ""

#: cgraph.c:305 cgraphunit.c:591
msgid "function not considered for inlining"
msgstr ""

#: cgraph.c:307 cgraphunit.c:589 ipa-inline.c:285
msgid "function not inlinable"
msgstr ""

#: collect2.c:373 gcc.c:6757
#, c-format
msgid "internal gcc abort in %s, at %s:%d"
msgstr ""

#: collect2.c:872
#, c-format
msgid "no arguments"
msgstr ""

#: collect2.c:1246 collect2.c:1394 collect2.c:1429
#, c-format
msgid "fopen %s"
msgstr ""

#: collect2.c:1249 collect2.c:1399 collect2.c:1432
#, c-format
msgid "fclose %s"
msgstr ""

#: collect2.c:1258
#, c-format
msgid "collect2 version %s"
msgstr ""

#: collect2.c:1348
#, c-format
msgid "%d constructor(s) found\n"
msgstr ""

#: collect2.c:1349
#, c-format
msgid "%d destructor(s)  found\n"
msgstr ""

#: collect2.c:1350
#, c-format
msgid "%d frame table(s) found\n"
msgstr ""

#: collect2.c:1487
#, c-format
msgid "can't get program status"
msgstr ""

#: collect2.c:1537
#, c-format
msgid "[cannot find %s]"
msgstr ""

#: collect2.c:1552
#, c-format
msgid "cannot find '%s'"
msgstr ""

#: collect2.c:1556 collect2.c:2045 collect2.c:2200 gcc.c:2804
#, c-format
msgid "pex_init failed"
msgstr ""

#: collect2.c:1591
#, c-format
msgid "[Leaving %s]\n"
msgstr ""

#: collect2.c:1811
#, c-format
msgid ""
"\n"
"write_c_file - output name is %s, prefix is %s\n"
msgstr ""

#: collect2.c:2019
#, c-format
msgid "cannot find 'nm'"
msgstr ""

#: collect2.c:2066
#, c-format
msgid "can't open nm output"
msgstr ""

#: collect2.c:2110
#, c-format
msgid "init function found in object %s"
msgstr ""

#: collect2.c:2118
#, c-format
msgid "fini function found in object %s"
msgstr ""

#: collect2.c:2221
#, c-format
msgid "can't open ldd output"
msgstr ""

#: collect2.c:2224
#, c-format
msgid ""
"\n"
"ldd output with constructors/destructors.\n"
msgstr ""

#: collect2.c:2239
#, c-format
msgid "dynamic dependency %s not found"
msgstr ""

#: collect2.c:2251
#, c-format
msgid "unable to open dynamic dependency '%s'"
msgstr ""

#: collect2.c:2407
#, c-format
msgid "%s: not a COFF file"
msgstr ""

#: collect2.c:2527
#, c-format
msgid "%s: cannot open as COFF file"
msgstr ""

#: collect2.c:2585
#, c-format
msgid "library lib%s not found"
msgstr ""

#: cppspec.c:106
#, c-format
msgid "\"%s\" is not a valid option to the preprocessor"
msgstr ""

#: cppspec.c:128
#, c-format
msgid "too many input files"
msgstr ""

#: diagnostic.c:174
#, c-format
msgid "%s:%d: confused by earlier errors, bailing out\n"
msgstr ""

#: diagnostic.c:234
#, c-format
msgid "compilation terminated due to -Wfatal-errors.\n"
msgstr ""

#: diagnostic.c:243
#, c-format
msgid ""
"Please submit a full bug report,\n"
"with preprocessed source if appropriate.\n"
"See %s for instructions.\n"
msgstr ""

#: diagnostic.c:252
#, c-format
msgid "compilation terminated.\n"
msgstr ""

#: diagnostic.c:571
#, c-format
msgid "Internal compiler error: Error reporting routines re-entered.\n"
msgstr ""

#: final.c:1088
msgid "negative insn length"
msgstr ""

#: final.c:2445
msgid "could not split insn"
msgstr ""

#: final.c:2791
msgid "invalid 'asm': "
msgstr ""

#: final.c:2974
#, c-format
msgid "nested assembly dialect alternatives"
msgstr ""

#: final.c:2991 final.c:3003
#, c-format
msgid "unterminated assembly dialect alternative"
msgstr ""

#: final.c:3050
#, c-format
msgid "operand number missing after %%-letter"
msgstr ""

#: final.c:3053 final.c:3094
#, c-format
msgid "operand number out of range"
msgstr ""

#: final.c:3113
#, c-format
msgid "invalid %%-code"
msgstr ""

#: final.c:3143
#, c-format
msgid "'%%l' operand isn't a label"
msgstr ""

#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
#. We can't handle floating point constants; PRINT_OPERAND must
#. handle them.
#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
#: final.c:3244 vmsdbgout.c:487 config/i386/i386.c:6424
#: config/pdp11/pdp11.c:1700
#, c-format
msgid "floating constant misused"
msgstr ""

#: final.c:3300 vmsdbgout.c:544 config/i386/i386.c:6500
#: config/pdp11/pdp11.c:1747
#, c-format
msgid "invalid expression as operand"
msgstr ""

#: flow.c:1701
msgid "Attempt to delete prologue/epilogue insn:"
msgstr ""

#: gcc.c:1642
#, c-format
msgid "Using built-in specs.\n"
msgstr ""

#: gcc.c:1825
#, c-format
msgid ""
"Setting spec %s to '%s'\n"
"\n"
msgstr ""

#: gcc.c:1934
#, c-format
msgid "Reading specs from %s\n"
msgstr ""

#: gcc.c:2030 gcc.c:2049
#, c-format
msgid "specs %%include syntax malformed after %ld characters"
msgstr ""

#: gcc.c:2057
#, c-format
msgid "could not find specs file %s\n"
msgstr ""

#: gcc.c:2074 gcc.c:2082 gcc.c:2091 gcc.c:2100
#, c-format
msgid "specs %%rename syntax malformed after %ld characters"
msgstr ""

#: gcc.c:2109
#, c-format
msgid "specs %s spec was not found to be renamed"
msgstr ""

#: gcc.c:2116
#, c-format
msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
msgstr ""

#: gcc.c:2121
#, c-format
msgid "rename spec %s to %s\n"
msgstr ""

#: gcc.c:2123
#, c-format
msgid ""
"spec is '%s'\n"
"\n"
msgstr ""

#: gcc.c:2136
#, c-format
msgid "specs unknown %% command after %ld characters"
msgstr ""

#: gcc.c:2147 gcc.c:2160
#, c-format
msgid "specs file malformed after %ld characters"
msgstr ""

#: gcc.c:2213
#, c-format
msgid "spec file has no spec for linking"
msgstr ""

#: gcc.c:2635
#, c-format
msgid "system path '%s' is not absolute"
msgstr ""

#: gcc.c:2698
#, c-format
msgid "-pipe not supported"
msgstr ""

#: gcc.c:2760
#, c-format
msgid ""
"\n"
"Go ahead? (y or n) "
msgstr ""

#: gcc.c:2843
msgid "failed to get exit status"
msgstr ""

#: gcc.c:2849
msgid "failed to get process times"
msgstr ""

#: gcc.c:2872
#, c-format
msgid ""
"Internal error: %s (program %s)\n"
"Please submit a full bug report.\n"
"See %s for instructions."
msgstr ""

#: gcc.c:2900
#, c-format
msgid "# %s %.2f %.2f\n"
msgstr ""

#: gcc.c:3036
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr ""

#: gcc.c:3037
msgid "Options:\n"
msgstr ""

#: gcc.c:3039
msgid "  -pass-exit-codes         Exit with highest error code from a phase\n"
msgstr ""

#: gcc.c:3040
msgid "  --help                   Display this information\n"
msgstr ""

#: gcc.c:3041
msgid ""
"  --target-help            Display target specific command line options\n"
msgstr ""

#: gcc.c:3043
msgid "  (Use '-v --help' to display command line options of sub-processes)\n"
msgstr ""

#: gcc.c:3044
msgid "  -dumpspecs               Display all of the built in spec strings\n"
msgstr ""

#: gcc.c:3045
msgid "  -dumpversion             Display the version of the compiler\n"
msgstr ""

#: gcc.c:3046
msgid "  -dumpmachine             Display the compiler's target processor\n"
msgstr ""

#: gcc.c:3047
msgid ""
"  -print-search-dirs       Display the directories in the compiler's search "
"path\n"
msgstr ""

#: gcc.c:3048
msgid ""
"  -print-libgcc-file-name  Display the name of the compiler's companion "
"library\n"
msgstr ""

#: gcc.c:3049
msgid "  -print-file-name=<lib>   Display the full path to library <lib>\n"
msgstr ""

#: gcc.c:3050
msgid ""
"  -print-prog-name=<prog>  Display the full path to compiler component "
"<prog>\n"
msgstr ""

#: gcc.c:3051
msgid ""
"  -print-multi-directory   Display the root directory for versions of "
"libgcc\n"
msgstr ""

#: gcc.c:3052
msgid ""
"  -print-multi-lib         Display the mapping between command line options "
"and\n"
"                           multiple library search directories\n"
msgstr ""

#: gcc.c:3055
msgid "  -print-multi-os-directory Display the relative path to OS libraries\n"
msgstr ""

#: gcc.c:3056
msgid ""
"  -Wa,<options>            Pass comma-separated <options> on to the "
"assembler\n"
msgstr ""

#: gcc.c:3057
msgid ""
"  -Wp,<options>            Pass comma-separated <options> on to the "
"preprocessor\n"
msgstr ""

#: gcc.c:3058
msgid ""
"  -Wl,<options>            Pass comma-separated <options> on to the linker\n"
msgstr ""

#: gcc.c:3059
msgid "  -Xassembler <arg>        Pass <arg> on to the assembler\n"
msgstr ""

#: gcc.c:3060
msgid "  -Xpreprocessor <arg>     Pass <arg> on to the preprocessor\n"
msgstr ""

#: gcc.c:3061
msgid "  -Xlinker <arg>           Pass <arg> on to the linker\n"
msgstr ""

#: gcc.c:3062
msgid ""
"  -combine                 Pass multiple source files to compiler at once\n"
msgstr ""

#: gcc.c:3063
msgid "  -save-temps              Do not delete intermediate files\n"
msgstr ""

#: gcc.c:3064
msgid "  -pipe                    Use pipes rather than intermediate files\n"
msgstr ""

#: gcc.c:3065
msgid "  -time                    Time the execution of each subprocess\n"
msgstr ""

#: gcc.c:3066
msgid ""
"  -specs=<file>            Override built-in specs with the contents of "
"<file>\n"
msgstr ""

#: gcc.c:3067
msgid ""
"  -std=<standard>          Assume that the input sources are for <standard>\n"
msgstr ""

#: gcc.c:3068
msgid ""
"  --sysroot=<directory>    Use <directory> as the root directory for "
"headers\n"
"                           for headers and libraries\n"
msgstr ""

#: gcc.c:3071
msgid ""
"  -B <directory>           Add <directory> to the compiler's search paths\n"
msgstr ""

#: gcc.c:3072
msgid "  -b <machine>             Run gcc for target <machine>, if installed\n"
msgstr ""

#: gcc.c:3073
msgid ""
"  -V <version>             Run gcc version number <version>, if installed\n"
msgstr ""

#: gcc.c:3074
msgid ""
"  -v                       Display the programs invoked by the compiler\n"
msgstr ""

#: gcc.c:3075
msgid ""
"  -###                     Like -v but options quoted and commands not "
"executed\n"
msgstr ""

#: gcc.c:3076
msgid ""
"  -E                       Preprocess only; do not compile, assemble or "
"link\n"
msgstr ""

#: gcc.c:3077
msgid "  -S                       Compile only; do not assemble or link\n"
msgstr ""

#: gcc.c:3078
msgid "  -c                       Compile and assemble, but do not link\n"
msgstr ""

#: gcc.c:3079
msgid "  -o <file>                Place the output into <file>\n"
msgstr ""

#: gcc.c:3080
msgid ""
"  -x <language>            Specify the language of the following input "
"files\n"
"                           Permissible languages include: c c++ assembler "
"none\n"
"                           'none' means revert to the default behavior of\n"
"                           guessing the language based on the file's "
"extension\n"
msgstr ""

#: gcc.c:3087
#, c-format
msgid ""
"\n"
"Options starting with -g, -f, -m, -O, -W, or --param are automatically\n"
" passed on to the various sub-processes invoked by %s.  In order to pass\n"
" other options on to these processes the -W<letter> options must be used.\n"
msgstr ""

#: gcc.c:3211
#, c-format
msgid "'-%c' option must have argument"
msgstr ""

#: gcc.c:3233
#, c-format
msgid "couldn't run '%s': %s"
msgstr ""

#. translate_options () has turned --version into -fversion.
#: gcc.c:3418
#, c-format
msgid "%s (GCC) %s\n"
msgstr ""

#: gcc.c:3420 gcov.c:415 java/gjavah.c:2400 java/jcf-dump.c:931
#: java/jv-scan.c:129
msgid "(C)"
msgstr ""

#: gcc.c:3421 java/gjavah.c:2401 java/jcf-dump.c:932 java/jv-scan.c:130
#, c-format
msgid ""
"This is free software; see the source for copying conditions.  There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
"\n"
msgstr ""

#: gcc.c:3522
#, c-format
msgid "argument to '-Xlinker' is missing"
msgstr ""

#: gcc.c:3530
#, c-format
msgid "argument to '-Xpreprocessor' is missing"
msgstr ""

#: gcc.c:3537
#, c-format
msgid "argument to '-Xassembler' is missing"
msgstr ""

#: gcc.c:3544
#, c-format
msgid "argument to '-l' is missing"
msgstr ""

#: gcc.c:3565
#, c-format
msgid "argument to '-specs' is missing"
msgstr ""

#: gcc.c:3579
#, c-format
msgid "argument to '-specs=' is missing"
msgstr ""

#: gcc.c:3617
#, c-format
msgid "'-%c' must come at the start of the command line"
msgstr ""

#: gcc.c:3626
#, c-format
msgid "argument to '-B' is missing"
msgstr ""

#: gcc.c:4011
#, c-format
msgid "argument to '-x' is missing"
msgstr ""

#: gcc.c:4039
#, c-format
msgid "argument to '-%s' is missing"
msgstr ""

#: gcc.c:4377
#, c-format
msgid "switch '%s' does not start with '-'"
msgstr ""

#: gcc.c:4607
#, c-format
msgid "spec '%s' invalid"
msgstr ""

#: gcc.c:4673
#, c-format
msgid "%s\n"
msgstr ""

#: gcc.c:4746
#, c-format
msgid "spec '%s' has invalid '%%0%c'"
msgstr ""

#: gcc.c:4943
#, c-format
msgid "spec '%s' has invalid '%%W%c"
msgstr ""

#: gcc.c:4974
#, c-format
msgid "spec '%s' has invalid '%%x%c'"
msgstr ""

#: gcc.c:5196
#, c-format
msgid "Processing spec %c%s%c, which is '%s'\n"
msgstr ""

#: gcc.c:5338
#, c-format
msgid "unknown spec function '%s'"
msgstr ""

#: gcc.c:5357
#, c-format
msgid "error in args to spec function '%s'"
msgstr ""

#: gcc.c:5405
#, c-format
msgid "malformed spec function name"
msgstr ""

#. )
#: gcc.c:5408
#, c-format
msgid "no arguments for spec function"
msgstr ""

#: gcc.c:5427
#, c-format
msgid "malformed spec function arguments"
msgstr ""

#: gcc.c:5666
#, c-format
msgid "braced spec '%s' is invalid at '%c'"
msgstr ""

#: gcc.c:5754
#, c-format
msgid "braced spec body '%s' is invalid"
msgstr ""

#: gcc.c:6301
#, c-format
msgid "install: %s%s\n"
msgstr ""

#: gcc.c:6302
#, c-format
msgid "programs: %s\n"
msgstr ""

#: gcc.c:6303
#, c-format
msgid "libraries: %s\n"
msgstr ""

#: gcc.c:6360
#, c-format
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
msgstr ""

#: gcc.c:6376
#, c-format
msgid "Target: %s\n"
msgstr ""

#: gcc.c:6377
#, c-format
msgid "Configured with: %s\n"
msgstr ""

#: gcc.c:6391
#, c-format
msgid "Thread model: %s\n"
msgstr ""

#: gcc.c:6402
#, c-format
msgid "gcc version %s\n"
msgstr ""

#: gcc.c:6404
#, c-format
msgid "gcc driver version %s executing gcc version %s\n"
msgstr ""

#: gcc.c:6412
#, c-format
msgid "no input files"
msgstr ""

#: gcc.c:6492
#, c-format
msgid "spec '%s' is invalid"
msgstr ""

#: gcc.c:6957
#, c-format
msgid "multilib spec '%s' is invalid"
msgstr ""

#: gcc.c:7149
#, c-format
msgid "multilib exclusions '%s' is invalid"
msgstr ""

#: gcc.c:7207 gcc.c:7348
#, c-format
msgid "multilib select '%s' is invalid"
msgstr ""

#: gcc.c:7386
#, c-format
msgid "multilib exclusion '%s' is invalid"
msgstr ""

#: gcc.c:7645 gcc.c:7650
#, c-format
msgid "invalid version number `%s'"
msgstr ""

#: gcov.c:388
#, c-format
msgid ""
"Usage: gcov [OPTION]... SOURCEFILE\n"
"\n"
msgstr ""

#: gcov.c:389
#, c-format
msgid ""
"Print code coverage information.\n"
"\n"
msgstr ""

#: gcov.c:390
#, c-format
msgid "  -h, --help                      Print this help, then exit\n"
msgstr ""

#: gcov.c:391
#, c-format
msgid "  -v, --version                   Print version number, then exit\n"
msgstr ""

#: gcov.c:392
#, c-format
msgid ""
"  -a, --all-blocks                Show information for every basic block\n"
msgstr ""

#: gcov.c:393
#, c-format
msgid ""
"  -b, --branch-probabilities      Include branch probabilities in output\n"
msgstr ""

#: gcov.c:394
#, c-format
msgid ""
"  -c, --branch-counts             Given counts of branches taken\n"
"                                    rather than percentages\n"
msgstr ""

#: gcov.c:396
#, c-format
msgid "  -n, --no-output                 Do not create an output file\n"
msgstr ""

#: gcov.c:397
#, c-format
msgid ""
"  -l, --long-file-names           Use long output file names for included\n"
"                                    source files\n"
msgstr ""

#: gcov.c:399
#, c-format
msgid "  -f, --function-summaries        Output summaries for each function\n"
msgstr ""

#: gcov.c:400
#, c-format
msgid ""
"  -o, --object-directory DIR|FILE Search for object files in DIR or called "
"FILE\n"
msgstr ""

#: gcov.c:401
#, c-format
msgid "  -p, --preserve-paths            Preserve all pathname components\n"
msgstr ""

#: gcov.c:402
#, c-format
msgid ""
"  -u, --unconditional-branches    Show unconditional branch counts too\n"
msgstr ""

#: gcov.c:403
#, c-format
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
"%s.\n"
msgstr ""

#: gcov.c:413
#, c-format
msgid "gcov (GCC) %s\n"
msgstr ""

#: gcov.c:417
#, c-format
msgid ""
"This is free software; see the source for copying conditions.\n"
"There is NO warranty; not even for MERCHANTABILITY or \n"
"FITNESS FOR A PARTICULAR PURPOSE.\n"
"\n"
msgstr ""

#: gcov.c:507
#, c-format
msgid "%s:no functions found\n"
msgstr ""

#: gcov.c:528 gcov.c:556 fortran/dump-parse-tree.c:67
#, c-format
msgid "\n"
msgstr ""

#: gcov.c:543
#, c-format
msgid "%s:creating '%s'\n"
msgstr ""

#: gcov.c:547
#, c-format
msgid "%s:error writing output file '%s'\n"
msgstr ""

#: gcov.c:552
#, c-format
msgid "%s:could not open output file '%s'\n"
msgstr ""

#: gcov.c:703
#, c-format
msgid "%s:cannot open graph file\n"
msgstr ""

#: gcov.c:709
#, c-format
msgid "%s:not a gcov graph file\n"
msgstr ""

#: gcov.c:722
#, c-format
msgid "%s:version '%.4s', prefer '%.4s'\n"
msgstr ""

#: gcov.c:774
#, c-format
msgid "%s:already seen blocks for '%s'\n"
msgstr ""

#: gcov.c:892 gcov.c:1048
#, c-format
msgid "%s:corrupted\n"
msgstr ""

#: gcov.c:966
#, c-format
msgid "%s:cannot open data file\n"
msgstr ""

#: gcov.c:971
#, c-format
msgid "%s:not a gcov data file\n"
msgstr ""

#: gcov.c:984
#, c-format
msgid "%s:version '%.4s', prefer version '%.4s'\n"
msgstr ""

#: gcov.c:990
#, c-format
msgid "%s:stamp mismatch with graph file\n"
msgstr ""

#: gcov.c:1016
#, c-format
msgid "%s:unknown function '%u'\n"
msgstr ""

#: gcov.c:1029
#, c-format
msgid "%s:profile mismatch for '%s'\n"
msgstr ""

#: gcov.c:1048
#, c-format
msgid "%s:overflowed\n"
msgstr ""

#: gcov.c:1072
#, c-format
msgid "%s:'%s' lacks entry and/or exit blocks\n"
msgstr ""

#: gcov.c:1077
#, c-format
msgid "%s:'%s' has arcs to entry block\n"
msgstr ""

#: gcov.c:1085
#, c-format
msgid "%s:'%s' has arcs from exit block\n"
msgstr ""

#: gcov.c:1293
#, c-format
msgid "%s:graph is unsolvable for '%s'\n"
msgstr ""

#: gcov.c:1373
#, c-format
msgid "%s '%s'\n"
msgstr ""

#: gcov.c:1376
#, c-format
msgid "Lines executed:%s of %d\n"
msgstr ""

#: gcov.c:1380
#, c-format
msgid "No executable lines\n"
msgstr ""

#: gcov.c:1386
#, c-format
msgid "Branches executed:%s of %d\n"
msgstr ""

#: gcov.c:1390
#, c-format
msgid "Taken at least once:%s of %d\n"
msgstr ""

#: gcov.c:1396
#, c-format
msgid "No branches\n"
msgstr ""

#: gcov.c:1398
#, c-format
msgid "Calls executed:%s of %d\n"
msgstr ""

#: gcov.c:1402
#, c-format
msgid "No calls\n"
msgstr ""

#: gcov.c:1543
#, c-format
msgid "%s:no lines for '%s'\n"
msgstr ""

#: gcov.c:1738
#, c-format
msgid "call   %2d returned %s\n"
msgstr ""

#: gcov.c:1743
#, c-format
msgid "call   %2d never executed\n"
msgstr ""

#: gcov.c:1748
#, c-format
msgid "branch %2d taken %s%s\n"
msgstr ""

#: gcov.c:1752
#, c-format
msgid "branch %2d never executed\n"
msgstr ""

#: gcov.c:1757
#, c-format
msgid "unconditional %2d taken %s\n"
msgstr ""

#: gcov.c:1760
#, c-format
msgid "unconditional %2d never executed\n"
msgstr ""

#: gcov.c:1792
#, c-format
msgid "%s:cannot open source file\n"
msgstr ""

#: gcov.c:1802
#, c-format
msgid "%s:source file is newer than graph file '%s'\n"
msgstr ""

#. Return if there's nothing to do, or it is too expensive.
#: gcse.c:690
msgid "GCSE disabled"
msgstr ""

#. Return if there's nothing to do, or it is too expensive.
#: gcse.c:6480
msgid "jump bypassing disabled"
msgstr ""

#. Opening quotation mark.
#: intl.c:58
msgid "`"
msgstr ""

#. Closing quotation mark.
#: intl.c:61
msgid "'"
msgstr ""

#: ipa-inline.c:271
msgid "--param large-function-growth limit reached"
msgstr ""

#: ipa-inline.c:301
msgid "--param max-inline-insns-single limit reached"
msgstr ""

#: ipa-inline.c:310
msgid "--param max-inline-insns-auto limit reached"
msgstr ""

#: ipa-inline.c:336 ipa-inline.c:760
msgid "recursive inlining"
msgstr ""

#: ipa-inline.c:773
msgid "call is unlikely"
msgstr ""

#: ipa-inline.c:844
msgid "--param inline-unit-growth limit reached"
msgstr ""

#: langhooks.c:507
msgid "At top level:"
msgstr ""

#: langhooks.c:512
#, c-format
msgid "In member function %qs:"
msgstr ""

#: langhooks.c:516
#, c-format
msgid "In function %qs:"
msgstr ""

#: loop-iv.c:2709 tree-ssa-loop-niter.c:1022
msgid "assuming that the loop is not infinite"
msgstr ""

#: loop-iv.c:2710 tree-ssa-loop-niter.c:1023
msgid "cannot optimize possibly infinite loops"
msgstr ""

#: loop-iv.c:2718 tree-ssa-loop-niter.c:1027
msgid "assuming that the loop counter does not overflow"
msgstr ""

#: loop-iv.c:2719 tree-ssa-loop-niter.c:1028
msgid "cannot optimize loop, the loop counter may overflow"
msgstr ""

#. What to print when a switch has no documentation.
#: opts.c:90
msgid "This switch lacks documentation"
msgstr ""

#: opts.c:1210
#, c-format
msgid ""
"\n"
"Target specific options:\n"
msgstr ""

#: opts.c:1231
msgid "The following options are language-independent:\n"
msgstr ""

#: opts.c:1238
#, c-format
msgid ""
"The %s front end recognizes the following options:\n"
"\n"
msgstr ""

#: opts.c:1251
msgid "The --param option recognizes the following as parameters:\n"
msgstr ""

#: protoize.c:583
#, c-format
msgid "%s: error writing file '%s': %s\n"
msgstr ""

#: protoize.c:627
#, c-format
msgid "%s: usage '%s [ -VqfnkN ] [ -i <istring> ] [ filename ... ]'\n"
msgstr ""

#: protoize.c:630
#, c-format
msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B <dirname> ] [ filename ... ]'\n"
msgstr ""

#: protoize.c:731
#, c-format
msgid "%s: warning: no read access for file '%s'\n"
msgstr ""

#: protoize.c:739
#, c-format
msgid "%s: warning: no write access for file '%s'\n"
msgstr ""

#: protoize.c:747
#, c-format
msgid "%s: warning: no write access for dir containing '%s'\n"
msgstr ""

#. Catch cases like /.. where we try to backup to a
#. point above the absolute root of the logical file
#. system.
#: protoize.c:1134
#, c-format
msgid "%s: invalid file name: %s\n"
msgstr ""

#: protoize.c:1282
#, c-format
msgid "%s: %s: can't get status: %s\n"
msgstr ""

#: protoize.c:1303
#, c-format
msgid ""
"\n"
"%s: fatal error: aux info file corrupted at line %d\n"
msgstr ""

#: protoize.c:1632
#, c-format
msgid "%s:%d: declaration of function '%s' takes different forms\n"
msgstr ""

#: protoize.c:1887
#, c-format
msgid "%s: compiling '%s'\n"
msgstr ""

#: protoize.c:1910
#, c-format
msgid "%s: wait: %s\n"
msgstr ""

#: protoize.c:1915
#, c-format
msgid "%s: subprocess got fatal signal %d\n"
msgstr ""

#: protoize.c:1923
#, c-format
msgid "%s: %s exited with status %d\n"
msgstr ""

#: protoize.c:1972
#, c-format
msgid "%s: warning: missing SYSCALLS file '%s'\n"
msgstr ""

#: protoize.c:1981 protoize.c:2010
#, c-format
msgid "%s: can't read aux info file '%s': %s\n"
msgstr ""

#: protoize.c:2026 protoize.c:2054
#, c-format
msgid "%s: can't get status of aux info file '%s': %s\n"
msgstr ""

#: protoize.c:2082
#, c-format
msgid "%s: can't open aux info file '%s' for reading: %s\n"
msgstr ""

#: protoize.c:2100
#, c-format
msgid "%s: error reading aux info file '%s': %s\n"
msgstr ""

#: protoize.c:2113
#, c-format
msgid "%s: error closing aux info file '%s': %s\n"
msgstr ""

#: protoize.c:2129
#, c-format
msgid "%s: can't delete aux info file '%s': %s\n"
msgstr ""

#: protoize.c:2211 protoize.c:4180
#, c-format
msgid "%s: can't delete file '%s': %s\n"
msgstr ""

#: protoize.c:2289
#, c-format
msgid "%s: warning: can't rename file '%s' to '%s': %s\n"
msgstr ""

#: protoize.c:2411
#, c-format
msgid "%s: conflicting extern definitions of '%s'\n"
msgstr ""

#: protoize.c:2415
#, c-format
msgid "%s: declarations of '%s' will not be converted\n"
msgstr ""

#: protoize.c:2417
#, c-format
msgid "%s: conflict list for '%s' follows:\n"
msgstr ""

#: protoize.c:2450
#, c-format
msgid "%s: warning: using formals list from %s(%d) for function '%s'\n"
msgstr ""

#: protoize.c:2490
#, c-format
msgid "%s: %d: '%s' used but missing from SYSCALLS\n"
msgstr ""

#: protoize.c:2496
#, c-format
msgid "%s: %d: warning: no extern definition for '%s'\n"
msgstr ""

#: protoize.c:2526
#, c-format
msgid "%s: warning: no static definition for '%s' in file '%s'\n"
msgstr ""

#: protoize.c:2532
#, c-format
msgid "%s: multiple static defs of '%s' in file '%s'\n"
msgstr ""

#: protoize.c:2702 protoize.c:2705
#, c-format
msgid "%s: %d: warning: source too confusing\n"
msgstr ""

#: protoize.c:2900
#, c-format
msgid "%s: %d: warning: varargs function declaration not converted\n"
msgstr ""

#: protoize.c:2915
#, c-format
msgid "%s: declaration of function '%s' not converted\n"
msgstr ""

#: protoize.c:3038
#, c-format
msgid "%s: warning: too many parameter lists in declaration of '%s'\n"
msgstr ""

#: protoize.c:3059
#, c-format
msgid ""
"\n"
"%s: warning: too few parameter lists in declaration of '%s'\n"
msgstr ""

#: protoize.c:3155
#, c-format
msgid "%s: %d: warning: found '%s' but expected '%s'\n"
msgstr ""

#: protoize.c:3330
#, c-format
msgid "%s: local declaration for function '%s' not inserted\n"
msgstr ""

#: protoize.c:3357
#, c-format
msgid ""
"\n"
"%s: %d: warning: can't add declaration of '%s' into macro call\n"
msgstr ""

#: protoize.c:3429
#, c-format
msgid "%s: global declarations for file '%s' not inserted\n"
msgstr ""

#: protoize.c:3518 protoize.c:3548
#, c-format
msgid "%s: definition of function '%s' not converted\n"
msgstr ""

#: protoize.c:3537
#, c-format
msgid "%s: %d: warning: definition of %s not converted\n"
msgstr ""

#: protoize.c:3863
#, c-format
msgid "%s: found definition of '%s' at %s(%d)\n"
msgstr ""

#. If we make it here, then we did not know about this
#. function definition.
#: protoize.c:3879
#, c-format
msgid "%s: %d: warning: '%s' excluded by preprocessing\n"
msgstr ""

#: protoize.c:3882
#, c-format
msgid "%s: function definition not converted\n"
msgstr ""

#: protoize.c:3940
#, c-format
msgid "%s: '%s' not converted\n"
msgstr ""

#: protoize.c:3948
#, c-format
msgid "%s: would convert file '%s'\n"
msgstr ""

#: protoize.c:3951
#, c-format
msgid "%s: converting file '%s'\n"
msgstr ""

#: protoize.c:3961
#, c-format
msgid "%s: can't get status for file '%s': %s\n"
msgstr ""

#: protoize.c:4003
#, c-format
msgid "%s: can't open file '%s' for reading: %s\n"
msgstr ""

#: protoize.c:4018
#, c-format
msgid ""
"\n"
"%s: error reading input file '%s': %s\n"
msgstr ""

#: protoize.c:4052
#, c-format
msgid "%s: can't create/open clean file '%s': %s\n"
msgstr ""

#: protoize.c:4157
#, c-format
msgid "%s: warning: file '%s' already saved in '%s'\n"
msgstr ""

#: protoize.c:4165
#, c-format
msgid "%s: can't link file '%s' to '%s': %s\n"
msgstr ""

#: protoize.c:4195
#, c-format
msgid "%s: can't create/open output file '%s': %s\n"
msgstr ""

#: protoize.c:4228
#, c-format
msgid "%s: can't change mode of file '%s': %s\n"
msgstr ""

#: protoize.c:4404
#, c-format
msgid "%s: cannot get working directory: %s\n"
msgstr ""

#: protoize.c:4502
#, c-format
msgid "%s: input file names must have .c suffixes: %s\n"
msgstr ""

#: reload.c:3730
msgid "unable to generate reloads for:"
msgstr ""

#: reload1.c:1889
msgid "this is the insn:"
msgstr ""

#. It's the compiler's fault.
#: reload1.c:5009
msgid "could not find a spill register"
msgstr ""

#. It's the compiler's fault.
#: reload1.c:6640
msgid "VOIDmode on an output"
msgstr ""

#: rtl-error.c:128
msgid "unrecognizable insn:"
msgstr ""

#: rtl-error.c:130
msgid "insn does not satisfy its constraints:"
msgstr ""

#: timevar.c:412
msgid ""
"\n"
"Execution times (seconds)\n"
msgstr ""

#. Print total time.
#: timevar.c:470
msgid " TOTAL                 :"
msgstr ""

#: timevar.c:499
#, c-format
msgid "time in %s: %ld.%06ld (%ld%%)\n"
msgstr ""

#: tlink.c:384
#, c-format
msgid "collect: reading %s\n"
msgstr ""

#: tlink.c:478
#, c-format
msgid "removing .rpo file"
msgstr ""

#: tlink.c:480
#, c-format
msgid "renaming .rpo file"
msgstr ""

#: tlink.c:534
#, c-format
msgid "collect: recompiling %s\n"
msgstr ""

#: tlink.c:714
#, c-format
msgid "collect: tweaking %s in %s\n"
msgstr ""

#: tlink.c:764
#, c-format
msgid "collect: relinking\n"
msgstr ""

#: toplev.c:582
#, c-format
msgid "unrecoverable error"
msgstr ""

#: toplev.c:1095
#, c-format
msgid ""
"%s%s%s version %s (%s)\n"
"%s\tcompiled by GNU C version %s.\n"
msgstr ""

#: toplev.c:1097
#, c-format
msgid "%s%s%s version %s (%s) compiled by CC.\n"
msgstr ""

#: toplev.c:1101
#, c-format
msgid ""
"%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
msgstr ""

#: toplev.c:1163
msgid "options passed: "
msgstr ""

#: toplev.c:1192
msgid "options enabled: "
msgstr ""

#: toplev.c:1311
#, c-format
msgid "created and used with differing settings of '%s'"
msgstr ""

#: toplev.c:1313
msgid "out of memory"
msgstr ""

#: toplev.c:1328
msgid "created and used with different settings of -fpic"
msgstr ""

#: toplev.c:1330
msgid "created and used with different settings of -fpie"
msgstr ""

#: tree-inline.c:1978
msgid "originally indirect function call not considered for inlining"
msgstr ""

#.
#. Local variables:
#. mode:c
#. End:
#.
#: diagnostic.def:1
msgid "fatal error: "
msgstr ""

#: diagnostic.def:2
msgid "internal compiler error: "
msgstr ""

#: diagnostic.def:3
msgid "error: "
msgstr ""

#: diagnostic.def:4
msgid "sorry, unimplemented: "
msgstr ""

#: diagnostic.def:5
msgid "warning: "
msgstr ""

#: diagnostic.def:6
msgid "anachronism: "
msgstr ""

#: diagnostic.def:7
msgid "note: "
msgstr ""

#: diagnostic.def:8
msgid "debug: "
msgstr ""

#: params.def:48
msgid ""
"The maximum number of fields in a structure variable without direct "
"structure accesses that GCC will attempt to track separately"
msgstr ""

#: params.def:57
msgid ""
"The maximum structure size (in bytes) for which GCC will use by-element "
"copies"
msgstr ""

#: params.def:66
msgid ""
"The maximum number of structure fields for which GCC will use by-element "
"copies"
msgstr ""

#: params.def:78
msgid ""
"The threshold ratio between instantiated fields and the total structure size"
msgstr ""

#: params.def:95
msgid ""
"The maximum number of instructions in a single function eligible for inlining"
msgstr ""

#: params.def:107
msgid "The maximum number of instructions when automatically inlining"
msgstr ""

#: params.def:112
msgid ""
"The maximum number of instructions inline function can grow to via recursive "
"inlining"
msgstr ""

#: params.def:117
msgid ""
"The maximum number of instructions non-inline function can grow to via "
"recursive inlining"
msgstr ""

#: params.def:122
msgid "The maximum depth of recursive inlining for inline functions"
msgstr ""

#: params.def:127
msgid "The maximum depth of recursive inlining for non-inline functions"
msgstr ""

#: params.def:132
msgid ""
"Inline recursively only when the probability of call being executed exceeds "
"the parameter"
msgstr ""

#: params.def:139
msgid ""
"If -fvariable-expansion-in-unroller is used, the maximum number "
"of            times that an individual variable will be expanded            "
"during loop unrolling"
msgstr ""

#: params.def:152
msgid "The maximum number of instructions to consider to fill a delay slot"
msgstr ""

#: params.def:163
msgid ""
"The maximum number of instructions to consider to find accurate live "
"register information"
msgstr ""

#: params.def:173
msgid "The maximum length of scheduling's pending operations list"
msgstr ""

#: params.def:178
msgid "The size of function body to be considered large"
msgstr ""

#: params.def:182
msgid "Maximal growth due to inlining of large function (in percent)"
msgstr ""

#: params.def:186
msgid ""
"how much can given compilation unit grow because of the inlining (in percent)"
msgstr ""

#: params.def:190
msgid "expense of call operation relative to ordinary arithmetic operations"
msgstr ""

#: params.def:197
msgid "The maximum amount of memory to be allocated by GCSE"
msgstr ""

#: params.def:202
msgid "The maximum number of passes to make when doing GCSE"
msgstr ""

#: params.def:212
msgid ""
"The threshold ratio for performing partial redundancy elimination after "
"reload"
msgstr ""

#: params.def:219
msgid ""
"The threshold ratio of critical edges execution count that permit performing "
"redundancy elimination after reload"
msgstr ""

#: params.def:230
msgid "The maximum number of instructions to consider to unroll in a loop"
msgstr ""

#: params.def:236
msgid ""
"The maximum number of instructions to consider to unroll in a loop on average"
msgstr ""

#: params.def:241
msgid "The maximum number of unrollings of a single loop"
msgstr ""

#: params.def:246
msgid "The maximum number of insns of a peeled loop"
msgstr ""

#: params.def:251
msgid "The maximum number of peelings of a single loop"
msgstr ""

#: params.def:256
msgid "The maximum number of insns of a completely peeled loop"
msgstr ""

#: params.def:261
msgid ""
"The maximum number of peelings of a single loop that is peeled completely"
msgstr ""

#: params.def:266
msgid "The maximum number of insns of a peeled loop that rolls only once"
msgstr ""

#: params.def:272
msgid "The maximum number of insns of an unswitched loop"
msgstr ""

#: params.def:277
msgid "The maximum number of unswitchings in a single loop"
msgstr ""

#: params.def:284
msgid ""
"Bound on the number of iterations the brute force # of iterations analysis "
"algorithm evaluates"
msgstr ""

#: params.def:289
msgid ""
"Maximum number of loops to perform swing modulo scheduling on (mainly for "
"debugging)"
msgstr ""

#: params.def:295
msgid ""
"A factor for tuning the upper bound that swing modulo scheduler uses for "
"scheduling a loop"
msgstr ""

#: params.def:299
msgid ""
"The number of cycles the swing modulo scheduler considers when \t  checking "
"conflicts using DFA"
msgstr ""

#: params.def:304
msgid ""
"A threshold on the average loop count considered by the swing modulo "
"scheduler"
msgstr ""

#: params.def:309
msgid ""
"Select fraction of the maximal count of repetitions of basic block in "
"program given basic block needs to have to be considered hot"
msgstr ""

#: params.def:313
msgid ""
"Select fraction of the maximal frequency of executions of basic block in "
"function given basic block needs to have to be considered hot"
msgstr ""

#: params.def:317
msgid ""
"The percentage of function, weighted by execution frequency, that must be "
"covered by trace formation. Used when profile feedback is available"
msgstr ""

#: params.def:321
msgid ""
"The percentage of function, weighted by execution frequency, that must be "
"covered by trace formation. Used when profile feedback is not available"
msgstr ""

#: params.def:325
msgid "Maximal code growth caused by tail duplication (in percent)"
msgstr ""

#: params.def:329
msgid ""
"Stop reverse growth if the reverse probability of best edge is less than "
"this threshold (in percent)"
msgstr ""

#: params.def:333
msgid ""
"Stop forward growth if the probability of best edge is less than this "
"threshold (in percent). Used when profile feedback is available"
msgstr ""

#: params.def:337
msgid ""
"Stop forward growth if the probability of best edge is less than this "
"threshold (in percent). Used when profile feedback is not available"
msgstr ""

#: params.def:343
msgid "The maximum number of incoming edges to consider for crossjumping"
msgstr ""

#: params.def:349
msgid ""
"The minimum number of matching instructions to consider for crossjumping"
msgstr ""

#: params.def:355
msgid ""
"The maximum number of insns to duplicate when unfactoring computed gotos"
msgstr ""

#: params.def:361
msgid "The maximum length of path considered in cse"
msgstr ""

#: params.def:368
msgid ""
"The minimum cost of an expensive expression in the loop invariant motion"
msgstr ""

#: params.def:377
msgid ""
"Bound on number of candidates below that all candidates are considered in iv "
"optimizations"
msgstr ""

#: params.def:385
msgid "Bound on number of iv uses in loop optimized in iv optimizations"
msgstr ""

#: params.def:393
msgid ""
"If number of candidates in the set is smaller, we always try to remove "
"unused ivs during its optimization"
msgstr ""

#: params.def:398
msgid "Bound on size of expressions used in the scalar evolutions analyzer"
msgstr ""

#: params.def:405
msgid ""
"Given N calls and V call-clobbered vars in a function.  Use .GLOBAL_VAR if "
"NxV is larger than this limit"
msgstr ""

#: params.def:410
msgid "The maximum memory locations recorded by cselib"
msgstr ""

#: params.def:423
msgid ""
"Minimum heap expansion to trigger garbage collection, as a percentage of the "
"total size of the heap"
msgstr ""

#: params.def:428
msgid "Minimum heap size before we start collecting garbage, in kilobytes"
msgstr ""

#: params.def:436
msgid ""
"The maximum number of instructions to search backward when looking for "
"equivalent reload"
msgstr ""

#: params.def:441
msgid ""
"The maximum number of virtual operands allowed to represent aliases before "
"triggering alias grouping"
msgstr ""

#: params.def:446
msgid ""
"The maximum number of blocks in a region to be considered for interblock "
"scheduling"
msgstr ""

#: params.def:451
msgid ""
"The maximum number of insns in a region to be considered for interblock "
"scheduling"
msgstr ""

#: params.def:456
msgid ""
"The maximum number of RTL nodes that can be recorded as combiner's last value"
msgstr ""

#: params.def:464
msgid "The upper bound for sharing integer constants"
msgstr ""

#: params.def:483
msgid ""
"Minimum number of virtual mappings to consider switching to full virtual "
"renames"
msgstr ""

#: params.def:488
msgid ""
"Ratio between virtual mappings and virtual symbols to do full virtual renames"
msgstr ""

#: params.def:493
msgid ""
"The lower bound for a buffer to be considered for stack smashing protection"
msgstr ""

#: config/alpha/alpha.c:5063
#, c-format
msgid "invalid %%H value"
msgstr ""

#: config/alpha/alpha.c:5084 config/bfin/bfin.c:1162
#, c-format
msgid "invalid %%J value"
msgstr ""

#: config/alpha/alpha.c:5114 config/ia64/ia64.c:4505
#, c-format
msgid "invalid %%r value"
msgstr ""

#: config/alpha/alpha.c:5124 config/rs6000/rs6000.c:10365
#: config/xtensa/xtensa.c:1691
#, c-format
msgid "invalid %%R value"
msgstr ""

#: config/alpha/alpha.c:5130 config/rs6000/rs6000.c:10284
#: config/xtensa/xtensa.c:1658
#, c-format
msgid "invalid %%N value"
msgstr ""

#: config/alpha/alpha.c:5138 config/rs6000/rs6000.c:10312
#, c-format
msgid "invalid %%P value"
msgstr ""

#: config/alpha/alpha.c:5146
#, c-format
msgid "invalid %%h value"
msgstr ""

#: config/alpha/alpha.c:5154 config/xtensa/xtensa.c:1684
#, c-format
msgid "invalid %%L value"
msgstr ""

#: config/alpha/alpha.c:5193 config/rs6000/rs6000.c:10266
#, c-format
msgid "invalid %%m value"
msgstr ""

#: config/alpha/alpha.c:5201 config/rs6000/rs6000.c:10274
#, c-format
msgid "invalid %%M value"
msgstr ""

#: config/alpha/alpha.c:5245
#, c-format
msgid "invalid %%U value"
msgstr ""

#: config/alpha/alpha.c:5257 config/alpha/alpha.c:5271
#: config/rs6000/rs6000.c:10373
#, c-format
msgid "invalid %%s value"
msgstr ""

#: config/alpha/alpha.c:5294
#, c-format
msgid "invalid %%C value"
msgstr ""

#: config/alpha/alpha.c:5331 config/rs6000/rs6000.c:10105
#: config/rs6000/rs6000.c:10123
#, c-format
msgid "invalid %%E value"
msgstr ""

#: config/alpha/alpha.c:5356 config/alpha/alpha.c:5404
#, c-format
msgid "unknown relocation unspec"
msgstr ""

#: config/alpha/alpha.c:5365 config/crx/crx.c:1073
#: config/rs6000/rs6000.c:10686
#, c-format
msgid "invalid %%xn code"
msgstr ""

#: config/arc/arc.c:1715 config/m32r/m32r.c:1805
#, c-format
msgid "invalid operand to %%R code"
msgstr ""

#: config/arc/arc.c:1747 config/m32r/m32r.c:1828
#, c-format
msgid "invalid operand to %%H/%%L code"
msgstr ""

#: config/arc/arc.c:1769 config/m32r/m32r.c:1899
#, c-format
msgid "invalid operand to %%U code"
msgstr ""

#: config/arc/arc.c:1780
#, c-format
msgid "invalid operand to %%V code"
msgstr ""

#. Unknown flag.
#. Undocumented flag.
#: config/arc/arc.c:1787 config/m32r/m32r.c:1926 config/sparc/sparc.c:6807
#, c-format
msgid "invalid operand output code"
msgstr ""

#: config/arm/arm.c:10566 config/arm/arm.c:10584
#, c-format
msgid "predicated Thumb instruction"
msgstr ""

#: config/arm/arm.c:10572
#, c-format
msgid "predicated instruction in conditional sequence"
msgstr ""

#: config/arm/arm.c:10680 config/arm/arm.c:10690 config/arm/arm.c:10700
#: config/arm/arm.c:10726 config/arm/arm.c:10744 config/arm/arm.c:10779
#: config/arm/arm.c:10798 config/arm/arm.c:10813 config/arm/arm.c:10839
#: config/arm/arm.c:10846 config/arm/arm.c:10853
#, c-format
msgid "invalid operand for code '%c'"
msgstr ""

#: config/arm/arm.c:10739
#, c-format
msgid "instruction never exectued"
msgstr ""

#: config/arm/arm.c:10864
#, c-format
msgid "missing operand"
msgstr ""

#: config/avr/avr.c:1116
msgid "bad address, not (reg+disp):"
msgstr ""

#: config/avr/avr.c:1123
msgid "bad address, not post_inc or pre_dec:"
msgstr ""

#: config/avr/avr.c:1134
msgid "internal compiler error.  Bad address:"
msgstr ""

#: config/avr/avr.c:1147
msgid "internal compiler error.  Unknown mode:"
msgstr ""

#: config/avr/avr.c:1770 config/avr/avr.c:2453
msgid "invalid insn:"
msgstr ""

#: config/avr/avr.c:1804 config/avr/avr.c:1890 config/avr/avr.c:1939
#: config/avr/avr.c:1967 config/avr/avr.c:2062 config/avr/avr.c:2231
#: config/avr/avr.c:2487 config/avr/avr.c:2599
msgid "incorrect insn:"
msgstr ""

#: config/avr/avr.c:1986 config/avr/avr.c:2147 config/avr/avr.c:2302
#: config/avr/avr.c:2665
msgid "unknown move insn:"
msgstr ""

#: config/avr/avr.c:2895
msgid "bad shift insn:"
msgstr ""

#: config/avr/avr.c:3011 config/avr/avr.c:3459 config/avr/avr.c:3845
msgid "internal compiler error.  Incorrect shift:"
msgstr ""

#: config/bfin/bfin.c:1124
#, c-format
msgid "invalid %%j value"
msgstr ""

#: config/bfin/bfin.c:1243
#, c-format
msgid "invalid const_double operand"
msgstr ""

#: config/c4x/c4x.c:1584
msgid "using CONST_DOUBLE for address"
msgstr ""

#: config/c4x/c4x.c:1722
msgid "c4x_address_cost: Invalid addressing mode"
msgstr ""

#: config/c4x/c4x.c:1857
#, c-format
msgid "c4x_print_operand: %%L inconsistency"
msgstr ""

#: config/c4x/c4x.c:1863
#, c-format
msgid "c4x_print_operand: %%N inconsistency"
msgstr ""

#: config/c4x/c4x.c:1904
#, c-format
msgid "c4x_print_operand: %%O inconsistency"
msgstr ""

#: config/c4x/c4x.c:1999
msgid "c4x_print_operand: Bad operand case"
msgstr ""

#: config/c4x/c4x.c:2040
msgid "c4x_print_operand_address: Bad post_modify"
msgstr ""

#: config/c4x/c4x.c:2062
msgid "c4x_print_operand_address: Bad pre_modify"
msgstr ""

#: config/c4x/c4x.c:2110 config/c4x/c4x.c:2122 config/c4x/c4x.c:2137
msgid "c4x_print_operand_address: Bad operand case"
msgstr ""

#: config/c4x/c4x.c:2388
msgid "c4x_rptb_insert: Cannot find start label"
msgstr ""

#: config/c4x/c4x.c:2990
msgid "invalid indirect memory address"
msgstr ""

#: config/c4x/c4x.c:3079
msgid "invalid indirect (S) memory address"
msgstr ""

#: config/c4x/c4x.c:3414
msgid "c4x_valid_operands: Internal error"
msgstr ""

#: config/c4x/c4x.c:3853
msgid "c4x_operand_subword: invalid mode"
msgstr ""

#: config/c4x/c4x.c:3856
msgid "c4x_operand_subword: invalid operand"
msgstr ""

#. We could handle these with some difficulty.
#. e.g., *p-- => *(p-=2); *(p+1).
#: config/c4x/c4x.c:3882
msgid "c4x_operand_subword: invalid autoincrement"
msgstr ""

#: config/c4x/c4x.c:3888
msgid "c4x_operand_subword: invalid address"
msgstr ""

#: config/c4x/c4x.c:3899
msgid "c4x_operand_subword: address not offsettable"
msgstr ""

#: config/c4x/c4x.c:4101
msgid "c4x_rptb_rpts_p: Repeat block top label moved"
msgstr ""

#. Use `%s' to print the string in case there are any escape
#. characters in the message.
#: config/cris/cris.c:491 fortran/dump-parse-tree.c:82
#: fortran/dump-parse-tree.c:414 fortran/dump-parse-tree.c:741 c-typeck.c:4255
#: c-typeck.c:4270 c-typeck.c:4285 final.c:2796 final.c:2798 gcc.c:4659
#: loop-iv.c:2711 loop-iv.c:2720 rtl-error.c:113 toplev.c:586
#: tree-ssa-loop-niter.c:1033 cp/parser.c:1946 cp/typeck.c:4203
#: java/expr.c:398
#, gcc-internal-format
msgid "%s"
msgstr ""

#: config/cris/cris.c:543
msgid "unexpected index-type in cris_print_index"
msgstr ""

#: config/cris/cris.c:557
msgid "unexpected base-type in cris_print_base"
msgstr ""

#: config/cris/cris.c:673
msgid "invalid operand for 'b' modifier"
msgstr ""

#: config/cris/cris.c:690
msgid "invalid operand for 'o' modifier"
msgstr ""

#: config/cris/cris.c:709
msgid "invalid operand for 'O' modifier"
msgstr ""

#: config/cris/cris.c:742
msgid "invalid operand for 'p' modifier"
msgstr ""

#: config/cris/cris.c:781
msgid "invalid operand for 'z' modifier"
msgstr ""

#: config/cris/cris.c:835 config/cris/cris.c:865
msgid "invalid operand for 'H' modifier"
msgstr ""

#: config/cris/cris.c:841
msgid "bad register"
msgstr ""

#: config/cris/cris.c:879
msgid "invalid operand for 'e' modifier"
msgstr ""

#: config/cris/cris.c:896
msgid "invalid operand for 'm' modifier"
msgstr ""

#: config/cris/cris.c:921
msgid "invalid operand for 'A' modifier"
msgstr ""

#: config/cris/cris.c:944
msgid "invalid operand for 'D' modifier"
msgstr ""

#: config/cris/cris.c:958
msgid "invalid operand for 'T' modifier"
msgstr ""

#: config/cris/cris.c:967
msgid "invalid operand modifier letter"
msgstr ""

#: config/cris/cris.c:1024
msgid "unexpected multiplicative operand"
msgstr ""

#: config/cris/cris.c:1044
msgid "unexpected operand"
msgstr ""

#: config/cris/cris.c:1077 config/cris/cris.c:1087
msgid "unrecognized address"
msgstr ""

#: config/cris/cris.c:1938
msgid "unrecognized supposed constant"
msgstr ""

#: config/cris/cris.c:2294 config/cris/cris.c:2339
msgid "unexpected side-effects in address"
msgstr ""

#. Can't possibly get a GOT-needing-fixup for a function-call,
#. right?
#: config/cris/cris.c:3097
msgid "Unidentifiable call op"
msgstr ""

#: config/cris/cris.c:3132
#, c-format
msgid "PIC register isn't set up"
msgstr ""

#: config/fr30/fr30.c:464
#, c-format
msgid "fr30_print_operand_address: unhandled address"
msgstr ""

#: config/fr30/fr30.c:488
#, c-format
msgid "fr30_print_operand: unrecognized %%p code"
msgstr ""

#: config/fr30/fr30.c:508
#, c-format
msgid "fr30_print_operand: unrecognized %%b code"
msgstr ""

#: config/fr30/fr30.c:529
#, c-format
msgid "fr30_print_operand: unrecognized %%B code"
msgstr ""

#: config/fr30/fr30.c:537
#, c-format
msgid "fr30_print_operand: invalid operand to %%A code"
msgstr ""

#: config/fr30/fr30.c:554
#, c-format
msgid "fr30_print_operand: invalid %%x code"
msgstr ""

#: config/fr30/fr30.c:561
#, c-format
msgid "fr30_print_operand: invalid %%F code"
msgstr ""

#: config/fr30/fr30.c:578
#, c-format
msgid "fr30_print_operand: unknown code"
msgstr ""

#: config/fr30/fr30.c:606 config/fr30/fr30.c:615 config/fr30/fr30.c:626
#: config/fr30/fr30.c:639
#, c-format
msgid "fr30_print_operand: unhandled MEM"
msgstr ""

#: config/frv/frv.c:2541
msgid "bad insn to frv_print_operand_address:"
msgstr ""

#: config/frv/frv.c:2552
msgid "bad register to frv_print_operand_memory_reference_reg:"
msgstr ""

#: config/frv/frv.c:2591 config/frv/frv.c:2601 config/frv/frv.c:2610
#: config/frv/frv.c:2631 config/frv/frv.c:2636
msgid "bad insn to frv_print_operand_memory_reference:"
msgstr ""

#: config/frv/frv.c:2722
#, c-format
msgid "bad condition code"
msgstr ""

#: config/frv/frv.c:2797
msgid "bad insn in frv_print_operand, bad const_double"
msgstr ""

#: config/frv/frv.c:2858
msgid "bad insn to frv_print_operand, 'e' modifier:"
msgstr ""

#: config/frv/frv.c:2866
msgid "bad insn to frv_print_operand, 'F' modifier:"
msgstr ""

#: config/frv/frv.c:2882
msgid "bad insn to frv_print_operand, 'f' modifier:"
msgstr ""

#: config/frv/frv.c:2896
msgid "bad insn to frv_print_operand, 'g' modifier:"
msgstr ""

#: config/frv/frv.c:2944
msgid "bad insn to frv_print_operand, 'L' modifier:"
msgstr ""

#: config/frv/frv.c:2957
msgid "bad insn to frv_print_operand, 'M/N' modifier:"
msgstr ""

#: config/frv/frv.c:2978
msgid "bad insn to frv_print_operand, 'O' modifier:"
msgstr ""

#: config/frv/frv.c:2996
msgid "bad insn to frv_print_operand, P modifier:"
msgstr ""

#: config/frv/frv.c:3016
msgid "bad insn in frv_print_operand, z case"
msgstr ""

#: config/frv/frv.c:3047
msgid "bad insn in frv_print_operand, 0 case"
msgstr ""

#: config/frv/frv.c:3052
msgid "frv_print_operand: unknown code"
msgstr ""

#: config/frv/frv.c:4421
msgid "bad output_move_single operand"
msgstr ""

#: config/frv/frv.c:4548
msgid "bad output_move_double operand"
msgstr ""

#: config/frv/frv.c:4690
msgid "bad output_condmove_single operand"
msgstr ""

#. This macro is a C statement to print on `stderr' a string describing the
#. particular machine description choice.  Every machine description should
#. define `TARGET_VERSION'.  For example:
#.
#. #ifdef MOTOROLA
#. #define TARGET_VERSION           fprintf (stderr, " (68k, Motorola syntax)");
#. #else
#. #define TARGET_VERSION           fprintf (stderr, " (68k, MIT syntax)");
#. #endif
#: config/frv/frv.h:329
#, c-format
msgid " (frv)"
msgstr ""

#: config/i386/i386.c:6494
#, c-format
msgid "invalid UNSPEC as operand"
msgstr ""

#: config/i386/i386.c:7076
#, c-format
msgid ""
"operand is neither a constant nor a condition code, invalid operand code 'c'"
msgstr ""

#: config/i386/i386.c:7129
#, c-format
msgid "invalid operand code '%c'"
msgstr ""

#: config/i386/i386.c:7172
#, c-format
msgid "invalid constraints for operand"
msgstr ""

#: config/i386/i386.c:12763
msgid "unknown insn mode"
msgstr ""

#. If the environment variable DJDIR is not defined, then DJGPP is not        installed correctly and GCC will quickly become confused with the        default prefix settings. Report the problem now so the user doesn't        receive deceptive "file not found" error messages later.
#. DJDIR is automatically defined by the DJGPP environment config            file pointed to by the environment variable DJGPP. Examine DJGPP            to try and figure out what's wrong.
#: config/i386/xm-djgpp.h:62
#, c-format
msgid "environment variable DJGPP not defined"
msgstr ""

#: config/i386/xm-djgpp.h:64
#, c-format
msgid "environment variable DJGPP points to missing file '%s'"
msgstr ""

#: config/i386/xm-djgpp.h:67
#, c-format
msgid "environment variable DJGPP points to corrupt file '%s'"
msgstr ""

#: config/ia64/ia64.c:4555
#, c-format
msgid "ia64_print_operand: unknown code"
msgstr ""

#: config/ia64/ia64.c:8794
msgid "invalid conversion from %<__fpreg%>"
msgstr ""

#: config/ia64/ia64.c:8797
msgid "invalid conversion to %<__fpreg%>"
msgstr ""

#: config/ia64/ia64.c:8810 config/ia64/ia64.c:8821
msgid "invalid operation on %<__fpreg%>"
msgstr ""

#: config/iq2000/iq2000.c:3125
#, c-format
msgid "invalid %%P operand"
msgstr ""

#: config/iq2000/iq2000.c:3133 config/rs6000/rs6000.c:10302
#, c-format
msgid "invalid %%p value"
msgstr ""

#: config/iq2000/iq2000.c:3189 config/mips/mips.c:5532
#, c-format
msgid "invalid use of %%d, %%x, or %%X"
msgstr ""

#: config/m32r/m32r.c:1775
#, c-format
msgid "invalid operand to %%s code"
msgstr ""

#: config/m32r/m32r.c:1782
#, c-format
msgid "invalid operand to %%p code"
msgstr ""

#: config/m32r/m32r.c:1837
msgid "bad insn for 'A'"
msgstr ""

#: config/m32r/m32r.c:1884
#, c-format
msgid "invalid operand to %%T/%%B code"
msgstr ""

#: config/m32r/m32r.c:1907
#, c-format
msgid "invalid operand to %%N code"
msgstr ""

#: config/m32r/m32r.c:1940
msgid "pre-increment address is not a register"
msgstr ""

#: config/m32r/m32r.c:1947
msgid "pre-decrement address is not a register"
msgstr ""

#: config/m32r/m32r.c:1954
msgid "post-increment address is not a register"
msgstr ""

#: config/m32r/m32r.c:2030 config/m32r/m32r.c:2044
#: config/rs6000/rs6000.c:17526
msgid "bad address"
msgstr ""

#: config/m32r/m32r.c:2049
msgid "lo_sum not of register"
msgstr ""

#. !!!! SCz wrong here.
#: config/m68hc11/m68hc11.c:3189 config/m68hc11/m68hc11.c:3567
msgid "move insn not handled"
msgstr ""

#: config/m68hc11/m68hc11.c:3413 config/m68hc11/m68hc11.c:3497
#: config/m68hc11/m68hc11.c:3770
msgid "invalid register in the move instruction"
msgstr ""

#: config/m68hc11/m68hc11.c:3447
msgid "invalid operand in the instruction"
msgstr ""

#: config/m68hc11/m68hc11.c:3744
msgid "invalid register in the instruction"
msgstr ""

#: config/m68hc11/m68hc11.c:3777
msgid "operand 1 must be a hard register"
msgstr ""

#: config/m68hc11/m68hc11.c:3791
msgid "invalid rotate insn"
msgstr ""

#: config/m68hc11/m68hc11.c:4215
msgid "registers IX, IY and Z used in the same INSN"
msgstr ""

#: config/m68hc11/m68hc11.c:4552 config/m68hc11/m68hc11.c:4852
msgid "cannot do z-register replacement"
msgstr ""

#: config/m68hc11/m68hc11.c:4915
msgid "invalid Z register replacement for insn"
msgstr ""

#: config/mips/mips.c:5200
msgid "mips_debugger_offset called with non stack/frame/arg pointer"
msgstr ""

#: config/mips/mips.c:5410
#, c-format
msgid "PRINT_OPERAND, invalid insn for %%C"
msgstr ""

#: config/mips/mips.c:5427
#, c-format
msgid "PRINT_OPERAND, invalid insn for %%N"
msgstr ""

#: config/mips/mips.c:5436
#, c-format
msgid "PRINT_OPERAND, invalid insn for %%F"
msgstr ""

#: config/mips/mips.c:5445
#, c-format
msgid "PRINT_OPERAND, invalid insn for %%W"
msgstr ""

#: config/mips/mips.c:5466
#, c-format
msgid "invalid %%Y value"
msgstr ""

#: config/mips/mips.c:5483 config/mips/mips.c:5491
#, c-format
msgid "PRINT_OPERAND, invalid insn for %%q"
msgstr ""

#: config/mips/mips.c:5560
msgid "PRINT_OPERAND, invalid operand for relocation"
msgstr ""

#: config/mmix/mmix.c:1468 config/mmix/mmix.c:1598
msgid "MMIX Internal: Expected a CONST_INT, not this"
msgstr ""

#: config/mmix/mmix.c:1547
msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
msgstr ""

#: config/mmix/mmix.c:1566
msgid "MMIX Internal: Expected a register, not this"
msgstr ""

#: config/mmix/mmix.c:1576
msgid "MMIX Internal: Expected a constant, not this"
msgstr ""

#. We need the original here.
#: config/mmix/mmix.c:1660
msgid "MMIX Internal: Cannot decode this operand"
msgstr ""

#: config/mmix/mmix.c:1717
msgid "MMIX Internal: This is not a recognized address"
msgstr ""

#: config/mmix/mmix.c:2650
msgid "MMIX Internal: Trying to output invalidly reversed condition:"
msgstr ""

#: config/mmix/mmix.c:2657
msgid "MMIX Internal: What's the CC of this?"
msgstr ""

#: config/mmix/mmix.c:2661
msgid "MMIX Internal: What is the CC of this?"
msgstr ""

#: config/mmix/mmix.c:2731
msgid "MMIX Internal: This is not a constant:"
msgstr ""

#: config/rs6000/host-darwin.c:83
#, c-format
msgid "Out of stack space.\n"
msgstr ""

#: config/rs6000/host-darwin.c:104
#, c-format
msgid "Try running '%s' in the shell to raise its limit.\n"
msgstr ""

#: config/rs6000/rs6000.c:10132
#, c-format
msgid "invalid %%f value"
msgstr ""

#: config/rs6000/rs6000.c:10141
#, c-format
msgid "invalid %%F value"
msgstr ""

#: config/rs6000/rs6000.c:10150
#, c-format
msgid "invalid %%G value"
msgstr ""

#: config/rs6000/rs6000.c:10185
#, c-format
msgid "invalid %%j code"
msgstr ""

#: config/rs6000/rs6000.c:10195
#, c-format
msgid "invalid %%J code"
msgstr ""

#: config/rs6000/rs6000.c:10205
#, c-format
msgid "invalid %%k value"
msgstr ""

#: config/rs6000/rs6000.c:10225 config/xtensa/xtensa.c:1677
#, c-format
msgid "invalid %%K value"
msgstr ""

#: config/rs6000/rs6000.c:10292
#, c-format
msgid "invalid %%O value"
msgstr ""

#: config/rs6000/rs6000.c:10339
#, c-format
msgid "invalid %%q value"
msgstr ""

#: config/rs6000/rs6000.c:10383
#, c-format
msgid "invalid %%S value"
msgstr ""

#: config/rs6000/rs6000.c:10423
#, c-format
msgid "invalid %%T value"
msgstr ""

#: config/rs6000/rs6000.c:10433
#, c-format
msgid "invalid %%u value"
msgstr ""

#: config/rs6000/rs6000.c:10442 config/xtensa/xtensa.c:1647
#, c-format
msgid "invalid %%v value"
msgstr ""

#: config/rs6000/rs6000.c:19033
msgid "AltiVec argument passed to unprototyped function"
msgstr ""

#: config/s390/s390.c:4002
#, c-format
msgid "cannot decompose address"
msgstr ""

#: config/s390/s390.c:4209
msgid "UNKNOWN in print_operand !?"
msgstr ""

#: config/sh/sh.c:7572
msgid "created and used with different architectures / ABIs"
msgstr ""

#: config/sh/sh.c:7574
msgid "created and used with different ABIs"
msgstr ""

#: config/sh/sh.c:7576
msgid "created and used with different endianness"
msgstr ""

#: config/sparc/sparc.c:6615 config/sparc/sparc.c:6621
#, c-format
msgid "invalid %%Y operand"
msgstr ""

#: config/sparc/sparc.c:6691
#, c-format
msgid "invalid %%A operand"
msgstr ""

#: config/sparc/sparc.c:6701
#, c-format
msgid "invalid %%B operand"
msgstr ""

#: config/sparc/sparc.c:6740
#, c-format
msgid "invalid %%c operand"
msgstr ""

#: config/sparc/sparc.c:6741
#, c-format
msgid "invalid %%C operand"
msgstr ""

#: config/sparc/sparc.c:6762
#, c-format
msgid "invalid %%d operand"
msgstr ""

#: config/sparc/sparc.c:6763
#, c-format
msgid "invalid %%D operand"
msgstr ""

#: config/sparc/sparc.c:6779
#, c-format
msgid "invalid %%f operand"
msgstr ""

#: config/sparc/sparc.c:6793
#, c-format
msgid "invalid %%s operand"
msgstr ""

#: config/sparc/sparc.c:6847
#, c-format
msgid "long long constant not a valid immediate operand"
msgstr ""

#: config/sparc/sparc.c:6850
#, c-format
msgid "floating point constant not a valid immediate operand"
msgstr ""

#: config/stormy16/stormy16.c:1764 config/stormy16/stormy16.c:1835
#, c-format
msgid "'B' operand is not constant"
msgstr ""

#: config/stormy16/stormy16.c:1791
#, c-format
msgid "'B' operand has multiple bits set"
msgstr ""

#: config/stormy16/stormy16.c:1817
#, c-format
msgid "'o' operand is not constant"
msgstr ""

#: config/stormy16/stormy16.c:1849
#, c-format
msgid "xstormy16_print_operand: unknown code"
msgstr ""

#: config/v850/v850.c:360
msgid "const_double_split got a bad insn:"
msgstr ""

#: config/v850/v850.c:924
msgid "output_move_single:"
msgstr ""

#: config/xtensa/xtensa.c:748 config/xtensa/xtensa.c:780
#: config/xtensa/xtensa.c:789
msgid "bad test"
msgstr ""

#: config/xtensa/xtensa.c:1635
#, c-format
msgid "invalid %%D value"
msgstr ""

#: config/xtensa/xtensa.c:1672
msgid "invalid mask"
msgstr ""

#: config/xtensa/xtensa.c:1698
#, c-format
msgid "invalid %%x value"
msgstr ""

#: config/xtensa/xtensa.c:1705
#, c-format
msgid "invalid %%d value"
msgstr ""

#: config/xtensa/xtensa.c:1726 config/xtensa/xtensa.c:1736
#, c-format
msgid "invalid %%t/%%b value"
msgstr ""

#: config/xtensa/xtensa.c:1778
msgid "invalid address"
msgstr ""

#: config/xtensa/xtensa.c:1803
msgid "no register in address"
msgstr ""

#: config/xtensa/xtensa.c:1811
msgid "address offset not a constant"
msgstr ""

#: cp/call.c:2444
msgid "candidates are:"
msgstr ""

#: cp/call.c:6216
msgid "candidate 1:"
msgstr ""

#: cp/call.c:6217
msgid "candidate 2:"
msgstr ""

#: cp/decl2.c:697
msgid "candidates are: %+#D"
msgstr ""

#: cp/decl2.c:699
msgid "candidate is: %+#D"
msgstr ""

#: cp/g++spec.c:238 java/jvspec.c:417
#, c-format
msgid "argument to '%s' missing\n"
msgstr ""

#: fortran/arith.c:141
msgid "Arithmetic OK"
msgstr ""

#: fortran/arith.c:144
msgid "Arithmetic overflow"
msgstr ""

#: fortran/arith.c:147
msgid "Arithmetic underflow"
msgstr ""

#: fortran/arith.c:150
msgid "Arithmetic NaN"
msgstr ""

#: fortran/arith.c:153
msgid "Division by zero"
msgstr ""

#: fortran/arith.c:156
msgid "Array operands are incommensurate"
msgstr ""

#: fortran/arith.c:159
msgid "Integer outside symmetric range implied by Standard Fortran"
msgstr ""

#: fortran/arith.c:1383
msgid "Elemental binary operation"
msgstr ""

#: fortran/check.c:70
msgid "a numeric type"
msgstr ""

#: fortran/check.c:83
msgid "INTEGER or REAL"
msgstr ""

#: fortran/check.c:98
msgid "REAL or COMPLEX"
msgstr ""

#: fortran/check.c:122
msgid "a constant"
msgstr ""

#: fortran/check.c:148
msgid "double precision"
msgstr ""

#: fortran/check.c:163
msgid "a logical array"
msgstr ""

#: fortran/check.c:179
msgid "an array"
msgstr ""

#: fortran/check.c:193
msgid "a scalar"
msgstr ""

#: fortran/check.c:209
#, c-format
msgid "the same type and kind as '%s'"
msgstr ""

#: fortran/check.c:228
#, c-format
msgid "of rank %d"
msgstr ""

#: fortran/check.c:265
#, c-format
msgid "of kind %d"
msgstr ""

#: fortran/check.c:292
msgid "a variable"
msgstr ""

#: fortran/check.c:439
msgid "ALLOCATABLE"
msgstr ""

#: fortran/check.c:476 fortran/check.c:1538
msgid "a POINTER"
msgstr ""

#: fortran/check.c:495
msgid "a POINTER or a TARGET"
msgstr ""

#: fortran/check.c:619 fortran/check.c:679
msgid "not be present if 'x' is COMPLEX"
msgstr ""

#: fortran/check.c:726 fortran/check.c:1348 fortran/check.c:1354
msgid "numeric or LOGICAL"
msgstr ""

#: fortran/check.c:1025
msgid "the same kind as 'string'"
msgstr ""

#: fortran/check.c:1137
msgid "a non-derived type"
msgstr ""

#: fortran/check.c:1373
msgid "of rank 1 or 2"
msgstr ""

#: fortran/check.c:1557
msgid "conformable with 'mask' argument"
msgstr ""

#: fortran/check.c:1581
msgid "of type REAL or COMPLEX"
msgstr ""

#: fortran/check.c:1600
msgid "a dummy variable"
msgstr ""

#: fortran/check.c:1606
msgid "an OPTIONAL dummy variable"
msgstr ""

#: fortran/check.c:1906
#, c-format
msgid "less than rank %d"
msgstr ""

#: fortran/dump-parse-tree.c:53
#, c-format
msgid "%-5d "
msgstr ""

#: fortran/dump-parse-tree.c:55
#, c-format
msgid "      "
msgstr ""

#: fortran/dump-parse-tree.c:77 fortran/dump-parse-tree.c:592
#, c-format
msgid "(%s "
msgstr ""

#: fortran/dump-parse-tree.c:90 fortran/dump-parse-tree.c:837
#: fortran/dump-parse-tree.c:874 fortran/dump-parse-tree.c:884
#, c-format
msgid "%d"
msgstr ""

#: fortran/dump-parse-tree.c:94 fortran/dump-parse-tree.c:121
#: fortran/dump-parse-tree.c:164 fortran/dump-parse-tree.c:401
#: fortran/dump-parse-tree.c:493 fortran/dump-parse-tree.c:579
#: fortran/dump-parse-tree.c:600
#, c-format
msgid ")"
msgstr ""

#: fortran/dump-parse-tree.c:104 fortran/dump-parse-tree.c:419
#, c-format
msgid "("
msgstr ""

#: fortran/dump-parse-tree.c:110
#, c-format
msgid "%s = "
msgstr ""

#: fortran/dump-parse-tree.c:114
#, c-format
msgid "(arg not-present)"
msgstr ""

#: fortran/dump-parse-tree.c:118 fortran/dump-parse-tree.c:395
#: fortran/dump-parse-tree.c:489
#, c-format
msgid " "
msgstr ""

#: fortran/dump-parse-tree.c:135 fortran/dump-parse-tree.c:310
#, c-format
msgid "()"
msgstr ""

#: fortran/dump-parse-tree.c:139
#, c-format
msgid "(%d"
msgstr ""

#: fortran/dump-parse-tree.c:153
#, c-format
msgid " %s "
msgstr ""

#: fortran/dump-parse-tree.c:180
#, c-format
msgid "FULL"
msgstr ""

#: fortran/dump-parse-tree.c:211 fortran/dump-parse-tree.c:220
#: fortran/dump-parse-tree.c:295
#, c-format
msgid " , "
msgstr ""

#: fortran/dump-parse-tree.c:225
#, c-format
msgid "UNKNOWN"
msgstr ""

#: fortran/dump-parse-tree.c:250
#, c-format
msgid " %% %s"
msgstr ""

#: fortran/dump-parse-tree.c:322 fortran/dump-parse-tree.c:379
#, c-format
msgid "''"
msgstr ""

#: fortran/dump-parse-tree.c:324
#, c-format
msgid "%c"
msgstr ""

#: fortran/dump-parse-tree.c:331
#, c-format
msgid "%s("
msgstr ""

#: fortran/dump-parse-tree.c:337
#, c-format
msgid "(/ "
msgstr ""

#: fortran/dump-parse-tree.c:339
#, c-format
msgid " /)"
msgstr ""

#: fortran/dump-parse-tree.c:345
#, c-format
msgid "NULL()"
msgstr ""

#: fortran/dump-parse-tree.c:355 fortran/dump-parse-tree.c:368
#: fortran/dump-parse-tree.c:393 fortran/dump-parse-tree.c:399
#, c-format
m