re PR bootstrap/77569 (self tests fail when not using C locale)
authorJakub Jelinek <jakub@redhat.com>
Wed, 4 Jan 2017 07:53:30 +0000 (08:53 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Wed, 4 Jan 2017 07:53:30 +0000 (08:53 +0100)
PR bootstrap/77569
* input.c (ebcdic_execution_charset::on_error): Don't use strstr for
a substring of the message, but strcmp with the whole message.  Ifdef
ENABLE_NLS, translate the message first using dgettext.

From-SVN: r244047

gcc/ChangeLog
gcc/input.c

index 9c1965e29601e4150d22f24085ab73aae9e2df58..944ac447c9ddb3155fa5069a03643d18a84da74e 100644 (file)
@@ -1,3 +1,10 @@
+2017-01-04  Jakub Jelinek  <jakub@redhat.com>
+
+       PR bootstrap/77569
+       * input.c (ebcdic_execution_charset::on_error): Don't use strstr for
+       a substring of the message, but strcmp with the whole message.  Ifdef
+       ENABLE_NLS, translate the message first using dgettext.
+
 2017-01-03  Jeff Law  <law@redhat.com>
 
        PR tree-optimizatin/78856
index 22cc74c536c4dad9a550721c4a38d5816548a75a..0294034114bde6774cfc6f6aeb3dee1e32b23998 100644 (file)
@@ -2026,9 +2026,14 @@ class ebcdic_execution_charset : public lexer_test_options
     ATTRIBUTE_FPTR_PRINTF(5,0)
   {
     gcc_assert (s_singleton);
+    /* Avoid exgettext from picking this up, it is translated in libcpp.  */
+    const char *msg = "conversion from %s to %s not supported by iconv";
+#ifdef ENABLE_NLS
+    msg = dgettext ("cpplib", msg);
+#endif
     /* Detect and record errors emitted by libcpp/charset.c:init_iconv_desc
        when the local iconv build doesn't support the conversion.  */
-    if (strstr (msgid, "not supported by iconv"))
+    if (strcmp (msgid, msg) == 0)
       {
        s_singleton->m_num_iconv_errors++;
        return true;