]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
diagnostics: Fix selftest ICE in certain locales [PR107722]
authorJakub Jelinek <jakub@redhat.com>
Wed, 23 Nov 2022 13:43:48 +0000 (14:43 +0100)
committerJakub Jelinek <jakub@redhat.com>
Wed, 23 Nov 2022 13:43:48 +0000 (14:43 +0100)
As reported in the PR, since special_fname_builtin () call has been
introduced, the diagnostics code compares filename against _("<built-in>")
rather than "<built-in>", which means that if self tests are performed
with the string being translated, one self-test fails.
The following patch fixes that.

2022-11-23  Jakub Jelinek  <jakub@redhat.com>

PR bootstrap/107722
* diagnostic.cc (test_diagnostic_get_location_text): Test
special_fname_builtin () rather than "<built-in>" and expect
special_fname_builtin () concatenated with ":" for it.

gcc/diagnostic.cc

index 7c7ee6da746effca2f293933a0c9a19a34e9b8b2..a9562a815b120eafed8e9234dfc42582c3e66832 100644 (file)
@@ -2593,7 +2593,10 @@ test_diagnostic_get_location_text ()
   const char *old_progname = progname;
   progname = "PROGNAME";
   assert_location_text ("PROGNAME:", NULL, 0, 0, true);
-  assert_location_text ("<built-in>:", "<built-in>", 42, 10, true);
+  char *built_in_colon = concat (special_fname_builtin (), ":", (char *) 0);
+  assert_location_text (built_in_colon, special_fname_builtin (),
+                       42, 10, true);
+  free (built_in_colon);
   assert_location_text ("foo.c:42:10:", "foo.c", 42, 10, true);
   assert_location_text ("foo.c:42:9:", "foo.c", 42, 10, true, 0);
   assert_location_text ("foo.c:42:1010:", "foo.c", 42, 10, true, 1001);