]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Regenerate .pot files
authorJoseph Myers <josmyers@redhat.com>
Thu, 19 Feb 2026 21:07:55 +0000 (21:07 +0000)
committerJoseph Myers <josmyers@redhat.com>
Thu, 19 Feb 2026 21:07:55 +0000 (21:07 +0000)
gcc/po/
* gcc.pot: Regenerate.

libcpp/po/
* cpplib.pot: Regenerate.

gcc/po/gcc.pot
libcpp/po/cpplib.pot

index 16ab924496cbb9a7de561e2f8002ad712f00dbe8..4eaeecad844b70cbfdc0773969167335c03200af 100644 (file)
@@ -8,13 +8,13 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n"
-"POT-Creation-Date: 2025-04-23 19:24+0000\n"
+"POT-Creation-Date: 2026-02-19 21:05+0000\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"
 "Language: \n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
 
@@ -128,61 +128,16 @@ msgid ""
 "for live patching"
 msgstr ""
 
-#: cif-code.def:144
-msgid "unreachable"
-msgstr ""
-
-#. The remainder are real diagnostic types.
-#: diagnostic.def:33
-msgid "fatal error: "
-msgstr ""
-
-#. This is like DK_ICE, but backtrace is not printed.  Used in the driver
-#. when reporting fatal signal in the compiler.
-#: diagnostic.def:34 diagnostic.def:55
-msgid "internal compiler error: "
-msgstr ""
-
-#. This one is just for counting DK_WARNING promoted to DK_ERROR
-#. due to -Werror and -Werror=warning.
-#: diagnostic.def:35 diagnostic.def:52
-msgid "error: "
-msgstr ""
-
-#: diagnostic.def:36
-msgid "sorry, unimplemented: "
-msgstr ""
-
-#: diagnostic.def:37
-msgid "warning: "
-msgstr ""
-
-#: diagnostic.def:38
-msgid "anachronism: "
-msgstr ""
-
-#: diagnostic.def:39
-msgid "note: "
-msgstr ""
-
-#: diagnostic.def:40
-msgid "debug: "
-msgstr ""
-
-#. For use when using the diagnostic_show_locus machinery to show
-#. a range of events within a path.
-#: diagnostic.def:44
-msgid "path: "
+#: cif-code.def:145
+msgid "callee must remain in translation unit"
 msgstr ""
 
-#. These two would be re-classified as DK_WARNING or DK_ERROR, so the
-#. prefix does not matter.
-#: diagnostic.def:48
-msgid "pedwarn: "
+#: cif-code.def:149
+msgid "unreachable"
 msgstr ""
 
-#: diagnostic.def:49
-msgid "permerror: "
+#: cif-code.def:154
+msgid "callback edges cannot be inlined"
 msgstr ""
 
 #: config/i386/djgpp.h:143
@@ -190,98 +145,47 @@ msgstr ""
 msgid "-f%s ignored (not supported for DJGPP)\n"
 msgstr ""
 
-#. The remainder are real diagnostic types.
-#: fortran/gfc-diagnostic.def:33
-msgid "Fatal Error"
-msgstr ""
-
-#. This is like DK_ICE, but backtrace is not printed.  Used in the driver
-#. when reporting fatal signal in the compiler.
-#: fortran/gfc-diagnostic.def:34 fortran/gfc-diagnostic.def:50
-msgid "internal compiler error"
-msgstr ""
-
-#: fortran/gfc-diagnostic.def:35
-msgid "Error"
-msgstr ""
-
-#: fortran/gfc-diagnostic.def:36
-msgid "sorry, unimplemented"
-msgstr ""
-
-#: fortran/gfc-diagnostic.def:37
-msgid "Warning"
-msgstr ""
-
-#: fortran/gfc-diagnostic.def:38
-msgid "anachronism"
-msgstr ""
-
-#: fortran/gfc-diagnostic.def:39
-msgid "note"
-msgstr ""
-
-#: fortran/gfc-diagnostic.def:40
-msgid "debug"
-msgstr ""
-
-#. These two would be re-classified as DK_WARNING or DK_ERROR, so the
-#. prefix does not matter.
-#: fortran/gfc-diagnostic.def:43
-msgid "pedwarn"
-msgstr ""
-
-#: fortran/gfc-diagnostic.def:44
-msgid "permerror"
-msgstr ""
-
-#. This one is just for counting DK_WARNING promoted to DK_ERROR
-#. due to -Werror and -Werror=warning.
-#: fortran/gfc-diagnostic.def:47
-msgid "error"
-msgstr ""
-
-#: gcc.cc:859 gcc.cc:916
+#: gcc.cc:873 gcc.cc:930
 msgid "-gz is not supported in this configuration"
 msgstr ""
 
-#: gcc.cc:865
+#: gcc.cc:879
 msgid "-gz=zstd is not supported in this configuration"
 msgstr ""
 
-#: gcc.cc:1099
+#: gcc.cc:1124
 msgid "-fuse-linker-plugin is not supported in this configuration"
 msgstr ""
 
-#: gcc.cc:1115
+#: gcc.cc:1140
 msgid "cannot specify -static with -fsanitize=address"
 msgstr ""
 
-#: gcc.cc:1117
+#: gcc.cc:1142
 msgid "cannot specify -static with -fsanitize=hwaddress"
 msgstr ""
 
-#: gcc.cc:1119
+#: gcc.cc:1144
 msgid "cannot specify -static with -fsanitize=thread"
 msgstr ""
 
-#: gcc.cc:1141
+#: gcc.cc:1166
 msgid "-fvtable-verify=std is not supported in this configuration"
 msgstr ""
 
-#: gcc.cc:1143
+#: gcc.cc:1168
 msgid "-fvtable-verify=preinit is not supported in this configuration"
 msgstr ""
 
-#: gcc.cc:1286 ada/gcc-interface/lang-specs.h:37
+#: gcc.cc:1311 ada/gcc-interface/lang-specs.h:37
 msgid "-pg and -fomit-frame-pointer are incompatible"
 msgstr ""
 
-#: gcc.cc:1461
+#: gcc.cc:1486
 msgid "GNU C no longer supports -traditional without -E"
 msgstr ""
 
-#: gcc.cc:1470
+#: gcc.cc:1495
 msgid "-E or -x required when input is from standard input"
 msgstr ""
 
@@ -329,7 +233,7 @@ msgstr ""
 msgid "-force_flat_namespace not allowed with -dynamiclib"
 msgstr ""
 
-#: config/darwin.h:216 config/darwin.h:672
+#: config/darwin.h:216 config/darwin.h:687
 msgid "gsplit-dwarf is not supported on this platform"
 msgstr ""
 
@@ -350,15 +254,15 @@ msgstr ""
 msgid "cannot use mshared and static together"
 msgstr ""
 
-#: config/sol2.h:335 config/sol2.h:340
+#: config/sol2.h:305 config/sol2.h:307
 msgid "does not support multilib"
 msgstr ""
 
-#: config/sol2.h:433
-msgid "-pie is not supported in this configuration"
+#: config/sol2.h:362 config/sol2.h:371
+msgid "-gsctf is not supported in this configuration"
 msgstr ""
 
-#: config/vxworks.h:219
+#: config/vxworks.h:236
 msgid "-Xbind-now and -Xbind-lazy are incompatible"
 msgstr ""
 
@@ -367,7 +271,7 @@ msgstr ""
 msgid "consider using `-pg' instead of `-p' with gprof (1)"
 msgstr ""
 
-#: config/arc/arc.h:68 config/mips/mips.h:1511
+#: config/arc/arc.h:68 config/mips/mips.h:1532
 msgid "may not use both -EB and -EL"
 msgstr ""
 
@@ -396,7 +300,7 @@ msgstr ""
 msgid "Darwin does not support -mfentry or associated options"
 msgstr ""
 
-#: config/i386/sol2.h:59
+#: config/i386/sol2.h:56
 msgid "-mx32 is not supported on Solaris"
 msgstr ""
 
@@ -434,6 +338,14 @@ msgstr ""
 msgid "  profiling support are only provided in archive format"
 msgstr ""
 
+#: config/riscv/riscv.h:127
+msgid "At least one valid -mcpu option must be given after -march=unset"
+msgstr ""
+
+#: config/rs6000/aix.h:286
+msgid "stack-protector not supported on AIX"
+msgstr ""
+
 #: config/rs6000/darwin.h:126
 msgid " conflicting code gen style switches are used"
 msgstr ""
@@ -472,7 +384,7 @@ msgstr ""
 
 #: config/sparc/linux64.h:156 config/sparc/linux64.h:162
 #: config/sparc/netbsd-elf.h:103 config/sparc/netbsd-elf.h:112
-#: config/sparc/sol2.h:240 config/sparc/sol2.h:246
+#: config/sparc/sol2.h:197 config/sparc/sol2.h:203
 msgid "may not use both -m32 and -m64"
 msgstr ""
 
@@ -514,18899 +426,19673 @@ msgid ""
 "objc++-cpp-output is deprecated; please use objective-c++-cpp-output instead"
 msgstr ""
 
-#: fortran/lang.opt:146
+#: lto/lang.opt:50
 #, no-c-format
-msgid "-J<directory>\tPut MODULE files in 'directory'."
+msgid "Set linker output type (used internally during LTO optimization)."
 msgstr ""
 
-#: fortran/lang.opt:198
+#: lto/lang.opt:54
 #, no-c-format
-msgid "Warn about possible aliasing of dummy arguments."
+msgid "Run the link-time optimizer in local transformation (LTRANS) mode."
 msgstr ""
 
-#: fortran/lang.opt:202
+#: lto/lang.opt:58
 #, no-c-format
-msgid "Warn about alignment of COMMON blocks."
+msgid "Specify a file to which a list of files output by LTRANS is written."
 msgstr ""
 
-#: fortran/lang.opt:206
+#: lto/lang.opt:62
 #, no-c-format
-msgid "Warn about missing ampersand in continued character constants."
+msgid "The resolution file."
 msgstr ""
 
-#: fortran/lang.opt:210
+#: lto/lang.opt:66
 #, no-c-format
-msgid "Warn about creation of array temporaries."
+msgid "Run the link-time optimizer in whole program analysis (WPA) mode."
 msgstr ""
 
-#: fortran/lang.opt:214 fortran/lang.opt:547 c-family/c.opt:1692
-#: config/alpha/alpha.opt:31 common.opt:691 common.opt:849 common.opt:1112
-#: common.opt:1116 common.opt:1120 common.opt:1124 common.opt:1876
-#: common.opt:1979 common.opt:2161 common.opt:2165 common.opt:2479
-#: common.opt:2705 common.opt:3472
+#: lto/lang.opt:70
 #, no-c-format
-msgid "Does nothing. Preserved for backward compatibility."
+msgid ""
+"Whole program analysis (WPA) mode with number of parallel jobs specified."
 msgstr ""
 
-#: fortran/lang.opt:218
+#: lto/lang.opt:78
 #, no-c-format
-msgid "Warn if the type of a variable might be not interoperable with C."
+msgid "Call the dump function for variables and function in IL."
 msgstr ""
 
-#: fortran/lang.opt:226
+#: lto/lang.opt:82
 #, no-c-format
-msgid "Warn about truncated character expressions."
+msgid "Dump the demangled output."
 msgstr ""
 
-#: fortran/lang.opt:230
+#: lto/lang.opt:86
 #, no-c-format
-msgid "Warn about equality comparisons involving REAL or COMPLEX expressions."
+msgid "Dump only the defined symbols."
 msgstr ""
 
-#: fortran/lang.opt:238
+#: lto/lang.opt:90
 #, no-c-format
-msgid "Warn about most implicit conversions."
+msgid "Print the initial values of the variables."
 msgstr ""
 
-#: fortran/lang.opt:242
+#: lto/lang.opt:94
 #, no-c-format
-msgid "Warn about possibly incorrect subscripts in do loops."
+msgid "Sort the symbols alphabetically."
 msgstr ""
 
-#: fortran/lang.opt:246
+#: lto/lang.opt:98
 #, no-c-format
-msgid "Warn when arguments of external procedures do not match."
+msgid "Sort the symbols according to size."
 msgstr ""
 
-#: fortran/lang.opt:254
+#: lto/lang.opt:102
 #, no-c-format
-msgid "Warn if loops have been interchanged."
+msgid "Display the symbols in reverse order."
 msgstr ""
 
-#: fortran/lang.opt:258
+#: lto/lang.opt:109
 #, no-c-format
-msgid "Warn about function call elimination."
+msgid "Dump the details of LTO objects."
 msgstr ""
 
-#: fortran/lang.opt:262
+#: lto/lang.opt:113
 #, no-c-format
-msgid "Warn about calls with implicit interface."
+msgid "Dump the statistics of tree types."
 msgstr ""
 
-#: fortran/lang.opt:266
+#: lto/lang.opt:117
 #, no-c-format
-msgid "Warn about called procedures not explicitly declared."
+msgid "Dump the statistics of trees."
 msgstr ""
 
-#: fortran/lang.opt:270
+#: lto/lang.opt:121
 #, no-c-format
-msgid "Warn about constant integer divisions with truncated results."
+msgid "Dump the statistics of gimple statements."
 msgstr ""
 
-#: fortran/lang.opt:274
+#: lto/lang.opt:131
 #, no-c-format
-msgid "Warn about truncated source lines."
+msgid "Dump the dump tool command line options."
 msgstr ""
 
-#: fortran/lang.opt:278
+#: lto/lang.opt:135
 #, no-c-format
-msgid "Warn on intrinsics not part of the selected standard."
+msgid "Dump the symtab callgraph."
 msgstr ""
 
-#: fortran/lang.opt:290
+#: config/picolibc.opt:26
 #, no-c-format
-msgid "Warn about USE statements that have no ONLY qualifier."
+msgid "Specify an OS support library to load after libc."
 msgstr ""
 
-#: fortran/lang.opt:306
+#: config/picolibc.opt:33
 #, no-c-format
-msgid "Warn that -fno-automatic may break recursion."
+msgid "Specify an alternate startup file."
 msgstr ""
 
-#: fortran/lang.opt:314
+#: config/picolibc.opt:40
 #, no-c-format
-msgid "Warn about real-literal-constants with 'q' exponent-letter."
+msgid "Specify the printf version linked from libc."
 msgstr ""
 
-#: fortran/lang.opt:318
+#: config/picolibc.opt:47
 #, no-c-format
-msgid "Warn when a left-hand-side array variable is reallocated."
+msgid "Specify the scanf version linked from libc."
 msgstr ""
 
-#: fortran/lang.opt:322
+#: config/nds32/nds32-elf.opt:3 config/nds32/nds32-linux.opt:3
 #, no-c-format
-msgid "Warn when a left-hand-side variable is reallocated."
+msgid "Specify the address generation strategy for code model."
 msgstr ""
 
-#: fortran/lang.opt:326
+#: config/nds32/nds32-elf.opt:7 config/nds32/nds32-linux.opt:7
 #, no-c-format
-msgid "Warn if the pointer in a pointer assignment might outlive its target."
+msgid "Known cmodel types (for use with the -mcmodel= option):"
 msgstr ""
 
-#: fortran/lang.opt:334
+#: config/nds32/nds32.opt:29 config/nds32/nds32.opt:89
 #, no-c-format
-msgid "Warn about \"suspicious\" constructs."
+msgid "Generate code in big-endian mode."
 msgstr ""
 
-#: fortran/lang.opt:338
+#: config/nds32/nds32.opt:33 config/nds32/nds32.opt:93
 #, no-c-format
-msgid "Permit nonconforming uses of the tab character."
+msgid "Generate code in little-endian mode."
 msgstr ""
 
-#: fortran/lang.opt:342
+#: config/nds32/nds32.opt:37
 #, no-c-format
-msgid "Warn about an invalid DO loop."
+msgid "Force performing fp-as-gp optimization."
 msgstr ""
 
-#: fortran/lang.opt:346
+#: config/nds32/nds32.opt:41
 #, no-c-format
-msgid "Warn about underflow of numerical constant expressions."
+msgid "Forbid performing fp-as-gp optimization."
 msgstr ""
 
-#: fortran/lang.opt:354
+#: config/nds32/nds32.opt:47
 #, no-c-format
-msgid "Warn if a user-procedure has the same name as an intrinsic."
+msgid "Specify which ABI type to generate code for: 2, 2fp+."
 msgstr ""
 
-#: fortran/lang.opt:362
+#: config/nds32/nds32.opt:51 config/i386/i386.opt:558
 #, no-c-format
-msgid "Warn about unused dummy arguments."
+msgid "Known ABIs (for use with the -mabi= option):"
 msgstr ""
 
-#: fortran/lang.opt:366
+#: config/nds32/nds32.opt:61
 #, no-c-format
-msgid "Warn about zero-trip DO loops."
+msgid "Specify the soft floating-point ABI, aliased to -mabi=2."
 msgstr ""
 
-#: fortran/lang.opt:370
+#: config/nds32/nds32.opt:65
 #, no-c-format
-msgid "Enable preprocessing."
+msgid "Specify the hard floating-point ABI, aliased to -mabi=2fp+."
 msgstr ""
 
-#: fortran/lang.opt:378
+#: config/nds32/nds32.opt:71
 #, no-c-format
-msgid "Disable preprocessing."
+msgid "Use reduced-set registers for register allocation."
 msgstr ""
 
-#: fortran/lang.opt:386
+#: config/nds32/nds32.opt:75
 #, no-c-format
-msgid "Accept argument mismatches in procedure calls."
+msgid "Use full-set registers for register allocation."
 msgstr ""
 
-#: fortran/lang.opt:390
+#: config/nds32/nds32.opt:81
 #, no-c-format
-msgid "Eliminate multiple function invocations also for impure functions."
+msgid "Always align function entry, jump target and return address."
 msgstr ""
 
-#: fortran/lang.opt:394
+#: config/nds32/nds32.opt:85
 #, no-c-format
-msgid "Enable alignment of COMMON blocks."
+msgid "Align function entry to 4 bytes."
 msgstr ""
 
-#: fortran/lang.opt:398
+#: config/nds32/nds32.opt:97
 #, no-c-format
 msgid ""
-"All intrinsics procedures are available regardless of selected standard."
+"Prevent $fp being allocated during register allocation so that compiler is "
+"able to force performing fp-as-gp optimization."
 msgstr ""
 
-#: fortran/lang.opt:402
+#: config/nds32/nds32.opt:101
 #, no-c-format
 msgid ""
-"Allow a BOZ literal constant to appear in an invalid context and with X "
-"instead of Z."
+"Forbid using $fp to access static and global variables.  This option "
+"strictly forbids fp-as-gp optimization regardless of '-mforce-fp-as-gp'."
 msgstr ""
 
-#: fortran/lang.opt:410
+#: config/nds32/nds32.opt:105
 #, no-c-format
-msgid ""
-"Do not treat local variables and COMMON blocks as if they were named in SAVE "
-"statements."
+msgid "Specify the address generation strategy for ICT call's code model."
 msgstr ""
 
-#: fortran/lang.opt:414
+#: config/nds32/nds32.opt:109
 #, no-c-format
-msgid "Specify that backslash in string introduces an escape character."
+msgid "Known cmodel types (for use with the -mict-model= option):"
 msgstr ""
 
-#: fortran/lang.opt:418
+#: config/nds32/nds32.opt:119
 #, no-c-format
-msgid "Produce a backtrace when a runtime error is encountered."
+msgid "Generate conditional move instructions."
 msgstr ""
 
-#: fortran/lang.opt:422
+#: config/nds32/nds32.opt:123
 #, no-c-format
-msgid ""
-"-fblas-matmul-limit=<n>\tSize of the smallest matrix for which matmul will "
-"use BLAS."
+msgid "Generate hardware abs instructions."
 msgstr ""
 
-#: fortran/lang.opt:433
+#: config/nds32/nds32.opt:127
 #, no-c-format
-msgid ""
-"Produce a warning at runtime if a array temporary has been created for a "
-"procedure argument."
+msgid "Generate performance extension instructions."
 msgstr ""
 
-#: fortran/lang.opt:437
+#: config/nds32/nds32.opt:131
 #, no-c-format
-msgid ""
-"-fconvert=<big-endian|little-endian|native|swap|r16_ieee|r16_ibm>\tThe "
-"endianness used for unformatted files."
+msgid "Generate performance extension version 2 instructions."
 msgstr ""
 
-#: fortran/lang.opt:462
+#: config/nds32/nds32.opt:135
 #, no-c-format
-msgid "Use the Cray Pointer extension."
+msgid "Generate string extension instructions."
 msgstr ""
 
-#: fortran/lang.opt:466
+#: config/nds32/nds32.opt:139
 #, no-c-format
-msgid "Generate C prototypes from BIND(C) declarations."
+msgid "Generate DSP extension instructions."
 msgstr ""
 
-#: fortran/lang.opt:470
+#: config/nds32/nds32.opt:143
 #, no-c-format
-msgid "Generate C prototypes from non-BIND(C) external procedure definitions."
+msgid "Generate v3 push25/pop25 instructions."
 msgstr ""
 
-#: fortran/lang.opt:474
+#: config/nds32/nds32.opt:147
 #, no-c-format
-msgid "Ignore 'D' in column one in fixed form."
+msgid "Generate 16-bit instructions."
 msgstr ""
 
-#: fortran/lang.opt:478
+#: config/nds32/nds32.opt:151
 #, no-c-format
-msgid "Treat lines with 'D' in column one as comments."
+msgid "Insert relax hint for linker to do relaxation."
 msgstr ""
 
-#: fortran/lang.opt:482
+#: config/nds32/nds32.opt:155
 #, no-c-format
-msgid "Issue debug information for compiler-generated auxiliary variables."
+msgid "Enable Virtual Hosting support."
 msgstr ""
 
-#: fortran/lang.opt:486
+#: config/nds32/nds32.opt:159
 #, no-c-format
-msgid "Enable all DEC language extensions."
+msgid "Specify the size of each interrupt vector, which must be 4 or 16."
 msgstr ""
 
-#: fortran/lang.opt:490
+#: config/nds32/nds32.opt:163
 #, no-c-format
-msgid "Enable the use of blank format items in format strings."
+msgid "Specify the security level of c-isr for the whole file."
 msgstr ""
 
-#: fortran/lang.opt:494
+#: config/nds32/nds32.opt:167
 #, no-c-format
 msgid ""
-"Enable the use of character literals in assignments and data statements for "
-"non-character variables."
+"Specify the size of each cache block, which must be a power of 2 between 4 "
+"and 512."
 msgstr ""
 
-#: fortran/lang.opt:499
+#: config/nds32/nds32.opt:171 config/arm/arm.opt:84 config/m68k/m68k.opt:103
+#: config/c6x/c6x.opt:67
 #, no-c-format
-msgid "Enable legacy parsing of INCLUDE as statement."
+msgid "Specify the name of the target architecture."
 msgstr ""
 
-#: fortran/lang.opt:503
+#: config/nds32/nds32.opt:175
 #, no-c-format
-msgid "Enable default widths for i, f and g format specifiers."
+msgid "Known arch types (for use with the -march= option):"
 msgstr ""
 
-#: fortran/lang.opt:507
+#: config/nds32/nds32.opt:197
 #, no-c-format
-msgid "Enable kind-specific variants of integer intrinsic functions."
+msgid "Specify the cpu for pipeline model."
 msgstr ""
 
-#: fortran/lang.opt:511
+#: config/nds32/nds32.opt:201
 #, no-c-format
-msgid "Enable legacy math intrinsics for compatibility."
+msgid "Known cpu types (for use with the -mcpu= option):"
 msgstr ""
 
-#: fortran/lang.opt:515
+#: config/nds32/nds32.opt:361
 #, no-c-format
-msgid "Enable support for DEC STRUCTURE/RECORD."
+msgid ""
+"Specify a FPU configuration value from 0 to 7; 0-3 is as FPU spec says, and "
+"4-7 correspond to 0-3."
 msgstr ""
 
-#: fortran/lang.opt:519
+#: config/nds32/nds32.opt:365
 #, no-c-format
-msgid "Enable DEC-style STATIC and AUTOMATIC attributes."
+msgid ""
+"Known floating-point number of registers (for use with the -mconfig-fpu= "
+"option):"
 msgstr ""
 
-#: fortran/lang.opt:523
+#: config/nds32/nds32.opt:393
 #, no-c-format
-msgid "Set the default double precision kind to an 8 byte wide type."
+msgid ""
+"Specify configuration of instruction mul: fast1, fast2 or slow. The default "
+"is fast1."
 msgstr ""
 
-#: fortran/lang.opt:527
+#: config/nds32/nds32.opt:412
 #, no-c-format
-msgid "Set the default integer kind to an 8 byte wide type."
+msgid ""
+"Specify how many read/write ports for n9/n10 cores.  The value should be "
+"3r2w or 2r1w."
 msgstr ""
 
-#: fortran/lang.opt:531
+#: config/nds32/nds32.opt:425
 #, no-c-format
-msgid "Set the default real kind to an 8 byte wide type."
+msgid "Enable constructor/destructor feature."
 msgstr ""
 
-#: fortran/lang.opt:535
+#: config/nds32/nds32.opt:429
 #, no-c-format
-msgid "Set the default real kind to an 10 byte wide type."
+msgid "Guide linker to relax instructions."
 msgstr ""
 
-#: fortran/lang.opt:539
+#: config/nds32/nds32.opt:433
 #, no-c-format
-msgid "Set the default real kind to an 16 byte wide type."
+msgid "Generate floating-point multiply-accumulation instructions."
 msgstr ""
 
-#: fortran/lang.opt:543
+#: config/nds32/nds32.opt:437
 #, no-c-format
-msgid "Allow dollar signs in entity names."
+msgid "Generate single-precision floating-point instructions."
 msgstr ""
 
-#: fortran/lang.opt:551
+#: config/nds32/nds32.opt:441
 #, no-c-format
-msgid "Display the code tree after parsing."
+msgid "Generate double-precision floating-point instructions."
 msgstr ""
 
-#: fortran/lang.opt:555
+#: config/nds32/nds32.opt:445
 #, no-c-format
-msgid "Display the code tree after front end optimization."
+msgid "Force disable hardware loop, even use -mext-dsp."
 msgstr ""
 
-#: fortran/lang.opt:559
+#: config/nds32/nds32.opt:449
 #, no-c-format
-msgid "Display the global symbol table after parsing."
+msgid "Permit scheduling of a function's prologue and epilogue sequence."
 msgstr ""
 
-#: fortran/lang.opt:563
+#: config/nds32/nds32.opt:453
 #, no-c-format
-msgid "Display the code tree after parsing; deprecated option."
+msgid "Generate return instruction in naked function."
 msgstr ""
 
-#: fortran/lang.opt:567
+#: config/nds32/nds32.opt:457
 #, no-c-format
-msgid ""
-"Specify that an external BLAS library should be used for matmul calls on "
-"large-size arrays."
+msgid "Always save $lp in the stack."
 msgstr ""
 
-#: fortran/lang.opt:571
+#: config/nds32/nds32.opt:461 config/arc/arc.opt:500 config/arm/arm.opt:303
 #, no-c-format
-msgid "Use f2c calling convention."
+msgid "Enable unaligned word and halfword accesses to packed data."
 msgstr ""
 
-#: fortran/lang.opt:575 cobol/lang.opt:78
+#: config/nds32/nds32.opt:465
 #, no-c-format
-msgid "Assume that the source file is fixed form."
+msgid "Allow use r15 for inline ASM."
 msgstr ""
 
-#: fortran/lang.opt:579
+#: config/arc/arc-tables.opt:25
 #, no-c-format
-msgid "Force creation of temporary to test infrequently-executed forall code."
+msgid "Known ARC CPUs (for use with the -mcpu= option):"
 msgstr ""
 
-#: fortran/lang.opt:583
+#: config/arc/arc.opt:27
 #, no-c-format
-msgid "Interpret any INTEGER(4) as an INTEGER(8)."
+msgid "Compile code for big endian mode."
 msgstr ""
 
-#: fortran/lang.opt:587 fortran/lang.opt:591
+#: config/arc/arc.opt:32
 #, no-c-format
-msgid "Specify where to find the compiled intrinsic modules."
+msgid "Compile code for little endian mode.  This is the default."
 msgstr ""
 
-#: fortran/lang.opt:595
+#: config/arc/arc.opt:36
 #, no-c-format
-msgid "Allow arbitrary character line width in fixed mode."
+msgid ""
+"Disable ARCompact specific pass to generate conditional execution "
+"instructions."
 msgstr ""
 
-#: fortran/lang.opt:599
+#: config/arc/arc.opt:40
 #, no-c-format
-msgid "-ffixed-line-length-<n>\tUse n as character line width in fixed mode."
+msgid "Generate ARCompact 32-bit code for ARC600 processor."
 msgstr ""
 
-#: fortran/lang.opt:603
+#: config/arc/arc.opt:44
 #, no-c-format
-msgid "Pad shorter fixed form lines to line width with spaces."
+msgid "Same as -mA6."
 msgstr ""
 
-#: fortran/lang.opt:607
+#: config/arc/arc.opt:48
 #, no-c-format
-msgid "-ffpe-trap=[...]\tStop on following floating point exceptions."
+msgid "Generate ARCompact 32-bit code for ARC601 processor."
 msgstr ""
 
-#: fortran/lang.opt:611
+#: config/arc/arc.opt:52
 #, no-c-format
-msgid "-ffpe-summary=[...]\tPrint summary of floating point exceptions."
+msgid "Generate ARCompact 32-bit code for ARC700 processor."
 msgstr ""
 
-#: fortran/lang.opt:615 cobol/lang.opt:82
+#: config/arc/arc.opt:56
 #, no-c-format
-msgid "Assume that the source file is free form."
+msgid "Same as -mA7."
 msgstr ""
 
-#: fortran/lang.opt:619
+#: config/arc/arc.opt:60
 #, no-c-format
-msgid "Allow arbitrary character line width in free mode."
+msgid "Force all calls to be made via a jli instruction."
 msgstr ""
 
-#: fortran/lang.opt:623
+#: config/arc/arc.opt:64
 #, no-c-format
-msgid "-ffree-line-length-<n>\tUse n as character line width in free mode."
+msgid "-mmpy-option=MPY\tCompile ARCv2 code with a multiplier design option."
 msgstr ""
 
-#: fortran/lang.opt:627
+#: config/arc/arc.opt:134
 #, no-c-format
-msgid "Try to interchange loops if profitable."
+msgid "Enable DIV-REM instructions for ARCv2."
 msgstr ""
 
-#: fortran/lang.opt:631
+#: config/arc/arc.opt:138
 #, no-c-format
-msgid "Enable front end optimization."
+msgid "Enable code density instructions for ARCv2."
 msgstr ""
 
-#: fortran/lang.opt:635
+#: config/arc/arc.opt:142 config/arc/arc.opt:299 config/arc/arc.opt:307
+#: config/arc/arc.opt:311 config/arc/arc.opt:315 config/arc/arc.opt:320
+#: config/arc/arc.opt:329 config/arc/arc.opt:409 config/pa/pa.opt:46
+#: config/pa/pa.opt:78 config/xtensa/xtensa.opt:42 fortran/lang.opt:879
+#: common.opt:655 common.opt:1233 common.opt:1237 common.opt:1241
+#: common.opt:1336 common.opt:1713 common.opt:1795 common.opt:1898
+#: common.opt:2170 common.opt:2317 common.opt:2375 common.opt:2849
+#: common.opt:2885 common.opt:2979 common.opt:2983 common.opt:3093
+#: common.opt:3228 common.opt:3236 common.opt:3244 common.opt:3252
+#: common.opt:3357 common.opt:3377 common.opt:3417 common.opt:3513
+#: common.opt:3693 common.opt:3697 common.opt:3701 common.opt:3705
+#: common.opt:3779 common.opt:3783 common.opt:3814 common.opt:3818
+#: c-family/c.opt:1877 c-family/c.opt:1980 c-family/c.opt:1988
+#: c-family/c.opt:2319
 #, no-c-format
-msgid ""
-"Specify that no implicit typing is allowed, unless overridden by explicit "
-"IMPLICIT statements."
+msgid "Does nothing.  Preserved for backward compatibility."
 msgstr ""
 
-#: fortran/lang.opt:639
+#: config/arc/arc.opt:148
 #, no-c-format
-msgid ""
-"-finit-character=<n>\tInitialize local character variables to ASCII value n."
+msgid "Use ordinarily cached memory accesses for volatile references."
 msgstr ""
 
-#: fortran/lang.opt:643
+#: config/arc/arc.opt:152
 #, no-c-format
-msgid ""
-"Initialize components of derived type variables according to other init "
-"flags."
+msgid "Enable cache bypass for volatile references."
 msgstr ""
 
-#: fortran/lang.opt:647
+#: config/arc/arc.opt:156
 #, no-c-format
-msgid "-finit-integer=<n>\tInitialize local integer variables to n."
+msgid "Generate instructions supported by barrel shifter."
 msgstr ""
 
-#: fortran/lang.opt:651
+#: config/arc/arc.opt:160
 #, no-c-format
-msgid "Initialize local variables to zero (from g77)."
+msgid "Generate norm instruction."
 msgstr ""
 
-#: fortran/lang.opt:655
+#: config/arc/arc.opt:164
 #, no-c-format
-msgid "-finit-logical=<true|false>\tInitialize local logical variables."
+msgid "Generate swap instruction."
 msgstr ""
 
-#: fortran/lang.opt:659
+#: config/arc/arc.opt:168
 #, no-c-format
-msgid "-finit-real=<zero|snan|nan|inf|-inf>\tInitialize local real variables."
+msgid "Generate mul64 and mulu64 instructions."
 msgstr ""
 
-#: fortran/lang.opt:681
+#: config/arc/arc.opt:172
 #, no-c-format
-msgid "-finline-arg-packing\tPerform argument packing inline."
+msgid "Do not generate mpy instructions for ARC700."
 msgstr ""
 
-#: fortran/lang.opt:691
+#: config/arc/arc.opt:176
 #, no-c-format
-msgid ""
-"Enable generation of inline code instead of calls to functions from the "
-"library to implement intrinsics."
+msgid "Generate extended arithmetic instructions, only valid for ARC700."
 msgstr ""
 
-#: fortran/lang.opt:712
+#: config/arc/arc.opt:180
 #, no-c-format
 msgid ""
-"-finline-matmul-limit=<n>\tSpecify the size of the largest matrix for which "
-"matmul will be inlined."
+"Dummy flag. This is the default unless FPX switches are provided explicitly."
 msgstr ""
 
-#: fortran/lang.opt:716
+#: config/arc/arc.opt:184
 #, no-c-format
-msgid ""
-"-fmax-array-constructor=<n>\tMaximum number of objects in an array "
-"constructor."
+msgid "Generate call insns as register indirect calls."
 msgstr ""
 
-#: fortran/lang.opt:720
+#: config/arc/arc.opt:188
 #, no-c-format
-msgid "-fmax-identifier-length=<n>\tMaximum identifier length."
+msgid "Generate BRcc instructions in arc_reorg."
 msgstr ""
 
-#: fortran/lang.opt:724
+#: config/arc/arc.opt:192
 #, no-c-format
-msgid "-fmax-subrecord-length=<n>\tMaximum length for subrecords."
+msgid ""
+"Generate sdata references.  This is the default, unless you compile for PIC."
 msgstr ""
 
-#: fortran/lang.opt:728
+#: config/arc/arc.opt:196
 #, no-c-format
-msgid ""
-"-fmax-stack-var-size=<n>\tSize in bytes of the largest array that will be "
-"put on the stack."
+msgid "Generate millicode thunks."
 msgstr ""
 
-#: fortran/lang.opt:732
+#: config/arc/arc.opt:200 config/arc/arc.opt:204
 #, no-c-format
-msgid "Put all local arrays on stack."
+msgid "FPX: Generate Single Precision FPX (compact) instructions."
 msgstr ""
 
-#: fortran/lang.opt:736
+#: config/arc/arc.opt:208
 #, no-c-format
-msgid "Set default accessibility of module entities to PRIVATE."
+msgid "FPX: Generate Single Precision FPX (fast) instructions."
 msgstr ""
 
-#: fortran/lang.opt:756
+#: config/arc/arc.opt:213
 #, no-c-format
-msgid "Handle OpenMP allocators for allocatables and pointers."
+msgid ""
+"FPX: Enable Argonaut ARC CPU Double Precision Floating Point extensions."
 msgstr ""
 
-#: fortran/lang.opt:760
+#: config/arc/arc.opt:217 config/arc/arc.opt:221
 #, no-c-format
-msgid "Try to lay out derived types as compactly as possible."
+msgid "FPX: Generate Double Precision FPX (compact) instructions."
 msgstr ""
 
-#: fortran/lang.opt:768
+#: config/arc/arc.opt:225
 #, no-c-format
-msgid "Protect parentheses in expressions."
+msgid "FPX: Generate Double Precision FPX (fast) instructions."
 msgstr ""
 
-#: fortran/lang.opt:772
+#: config/arc/arc.opt:229
 #, no-c-format
-msgid ""
-"Path to header file that should be pre-included before each compilation unit."
+msgid "Enable LR and SR instructions to use FPX extension aux registers."
 msgstr ""
 
-#: fortran/lang.opt:776
+#: config/arc/arc.opt:233
 #, no-c-format
-msgid "Enable range checking during compilation."
+msgid ""
+"Enable generation of ARC SIMD instructions via target-specific builtins."
 msgstr ""
 
-#: fortran/lang.opt:780
+#: config/arc/arc.opt:237
 #, no-c-format
-msgid "Interpret any REAL(4) as a REAL(8)."
+msgid "-mcpu=CPU\tCompile code for ARC variant CPU."
 msgstr ""
 
-#: fortran/lang.opt:784
+#: config/arc/arc.opt:241
 #, no-c-format
-msgid "Interpret any REAL(4) as a REAL(10)."
+msgid ""
+"Size optimization level: 0:none 1:opportunistic 2: regalloc 3:drop align, "
+"-Os."
 msgstr ""
 
-#: fortran/lang.opt:788
+#: config/arc/arc.opt:245 config/sh/sh.opt:243
 #, no-c-format
-msgid "Interpret any REAL(4) as a REAL(16)."
+msgid "Annotate assembler instructions with estimated addresses."
 msgstr ""
 
-#: fortran/lang.opt:792
+#: config/arc/arc.opt:249
 #, no-c-format
-msgid "Interpret any REAL(8) as a REAL(4)."
+msgid ""
+"Cost to assume for a multiply instruction, with 4 being equal to a normal "
+"insn."
 msgstr ""
 
-#: fortran/lang.opt:796
+#: config/arc/arc.opt:253
 #, no-c-format
-msgid "Interpret any REAL(8) as a REAL(10)."
+msgid "-mtune=TUNE\tTune code for given ARC variant."
 msgstr ""
 
-#: fortran/lang.opt:800
+#: config/arc/arc.opt:287
 #, no-c-format
-msgid "Interpret any REAL(8) as a REAL(16)."
+msgid "Enable the use of indexed loads."
 msgstr ""
 
-#: fortran/lang.opt:804
+#: config/arc/arc.opt:291
 #, no-c-format
-msgid "Reallocate the LHS in assignments."
+msgid "Enable the use of pre/post modify with register displacement."
 msgstr ""
 
-#: fortran/lang.opt:808
+#: config/arc/arc.opt:295
 #, no-c-format
-msgid "Use a 4-byte record marker for unformatted files."
+msgid "Generate 32x16 multiply and mac instructions."
 msgstr ""
 
-#: fortran/lang.opt:812
+#: config/arc/arc.opt:303
 #, no-c-format
-msgid "Use an 8-byte record marker for unformatted files."
+msgid "Don't use less than 25 bit addressing range for calls."
 msgstr ""
 
-#: fortran/lang.opt:816
+#: config/arc/arc.opt:325
 #, no-c-format
-msgid "Allocate local variables on the stack to allow indirect recursion."
+msgid "Enable pre-reload use of cbranchsi pattern."
 msgstr ""
 
-#: fortran/lang.opt:820
+#: config/arc/arc.opt:333
 #, no-c-format
-msgid "Copy array sections into a contiguous block on procedure entry."
+msgid ""
+"Use pc-relative switch case tables - this enables case table shortening."
 msgstr ""
 
-#: fortran/lang.opt:824
+#: config/arc/arc.opt:337
 #, no-c-format
-msgid "Experimental unsigned numbers."
+msgid "Enable compact casesi pattern."
 msgstr ""
 
-#: fortran/lang.opt:828
+#: config/arc/arc.opt:341
 #, no-c-format
-msgid ""
-"-fcoarray=<none|single|lib>\tSpecify which coarray parallelization should be "
-"used."
+msgid "Enable 'q' instruction alternatives."
 msgstr ""
 
-#: fortran/lang.opt:844
+#: config/arc/arc.opt:345
 #, no-c-format
-msgid "-fcheck=[...]\tSpecify which runtime checks are to be performed."
+msgid "Expand adddi3 and subdi3 at rtl generation time into add.f / adc etc."
 msgstr ""
 
-#: fortran/lang.opt:848
+#: config/arc/arc.opt:352
 #, no-c-format
-msgid "Append a second underscore if the name already contains an underscore."
+msgid "Enable variable polynomial CRC extension."
 msgstr ""
 
-#: fortran/lang.opt:856
+#: config/arc/arc.opt:356
 #, no-c-format
-msgid "Apply negative sign to zero values."
+msgid "Enable DSP 3.1 Pack A extensions."
 msgstr ""
 
-#: fortran/lang.opt:863
+#: config/arc/arc.opt:360
 #, no-c-format
-msgid ""
-"Disallow tail call optimization when a calling routine may have omitted "
-"character lengths."
+msgid "Enable dual viterbi butterfly extension."
 msgstr ""
 
-#: fortran/lang.opt:867
+#: config/arc/arc.opt:370
 #, no-c-format
-msgid "Append underscores to externally visible names."
+msgid "Enable Dual and Single Operand Instructions for Telephony."
 msgstr ""
 
-#: fortran/lang.opt:871 c-family/c.opt:1831 c-family/c.opt:1908
-#: c-family/c.opt:1916 c-family/c.opt:2247 config/xtensa/xtensa.opt:42
-#: config/pa/pa.opt:46 config/pa/pa.opt:78 config/arc/arc.opt:140
-#: config/arc/arc.opt:296 config/arc/arc.opt:304 config/arc/arc.opt:308
-#: config/arc/arc.opt:312 config/arc/arc.opt:317 config/arc/arc.opt:326
-#: config/arc/arc.opt:405 common.opt:649 common.opt:1210 common.opt:1214
-#: common.opt:1218 common.opt:1313 common.opt:1658 common.opt:1740
-#: common.opt:1839 common.opt:2109 common.opt:2256 common.opt:2313
-#: common.opt:2783 common.opt:2819 common.opt:2912 common.opt:2916
-#: common.opt:3025 common.opt:3160 common.opt:3168 common.opt:3176
-#: common.opt:3184 common.opt:3285 common.opt:3345 common.opt:3433
-#: common.opt:3613 common.opt:3617 common.opt:3621 common.opt:3625
-#: common.opt:3699 common.opt:3703 common.opt:3734 common.opt:3738
+#: config/arc/arc.opt:374
 #, no-c-format
-msgid "Does nothing.  Preserved for backward compatibility."
+msgid "Enable XY Memory extension (DSP version 3)."
 msgstr ""
 
-#: fortran/lang.opt:911
+#: config/arc/arc.opt:379
 #, no-c-format
-msgid "Statically link the GNU Fortran helper library (libgfortran)."
+msgid "Enable Locked Load/Store Conditional extension."
 msgstr ""
 
-#: fortran/lang.opt:915
+#: config/arc/arc.opt:383
 #, no-c-format
-msgid "Statically link the GCC Quad-Precision Math Library (libquadmath)."
+msgid "Enable swap byte ordering extension instruction."
 msgstr ""
 
-#: fortran/lang.opt:919
+#: config/arc/arc.opt:387
 #, no-c-format
-msgid "Conform to the ISO Fortran 2003 standard."
+msgid "Enable 64-bit Time-Stamp Counter extension instruction."
 msgstr ""
 
-#: fortran/lang.opt:923
+#: config/arc/arc.opt:392
 #, no-c-format
-msgid "Conform to the ISO Fortran 2008 standard."
+msgid "Pass -EB option through to linker."
 msgstr ""
 
-#: fortran/lang.opt:927
+#: config/arc/arc.opt:397
 #, no-c-format
-msgid "Conform to the ISO Fortran 2008 standard including TS 29113."
+msgid "Pass -EL option through to linker."
 msgstr ""
 
-#: fortran/lang.opt:931
+#: config/arc/arc.opt:401
 #, no-c-format
-msgid "Conform to the ISO Fortran 2018 standard."
+msgid "Pass -marclinux option through to linker."
 msgstr ""
 
-#: fortran/lang.opt:935
+#: config/arc/arc.opt:405
 #, no-c-format
-msgid "Conform to the ISO Fortran 2023 standard."
+msgid "Pass -marclinux_prof option through to linker."
 msgstr ""
 
-#: fortran/lang.opt:939
+#: config/arc/arc.opt:413
 #, no-c-format
-msgid "Enable experimental Fortran 202y features."
+msgid "Don't indicate any priority with TARGET_REGISTER_PRIORITY."
 msgstr ""
 
-#: fortran/lang.opt:943
+#: config/arc/arc.opt:417
 #, no-c-format
-msgid "Conform to the ISO Fortran 95 standard."
+msgid "Indicate priority for r0..r3 / r12..r15 with TARGET_REGISTER_PRIORITY."
 msgstr ""
 
-#: fortran/lang.opt:947
+#: config/arc/arc.opt:421
 #, no-c-format
-msgid "Conform to nothing in particular."
+msgid "Reduce priority for r0..r3 / r12..r15 with TARGET_REGISTER_PRIORITY."
 msgstr ""
 
-#: fortran/lang.opt:951
+#: config/arc/arc.opt:434
 #, no-c-format
-msgid "Accept extensions to support legacy code."
+msgid "Enable atomic instructions."
 msgstr ""
 
-#: rust/lang.opt:47 rust/lang.opt:51 c-family/c.opt:1563 c-family/c.opt:1567
+#: config/arc/arc.opt:438
 #, no-c-format
-msgid "Warn when a const variable is unused."
+msgid "Enable double load/store instructions for ARC HS."
 msgstr ""
 
-#: rust/lang.opt:55 c-family/c.opt:1579
+#: config/arc/arc.opt:442
 #, no-c-format
-msgid ""
-"Warn if a caller of a function, marked with attribute warn_unused_result, "
-"does not use its return value."
+msgid "Specify the name of the target floating point configuration."
 msgstr ""
 
-#: rust/lang.opt:59 c-family/c.opt:893 common.opt:660
+#: config/arc/arc.opt:485
 #, no-c-format
-msgid "Warn for infinitely recursive calls."
+msgid "Specify thread pointer register number."
 msgstr ""
 
-#: rust/lang.opt:63
+#: config/arc/arc.opt:492
 #, no-c-format
-msgid "-frust-crate=<name>             Set the crate name for the compilation"
+msgid "Enable use of NPS400 bit operations."
 msgstr ""
 
-#: rust/lang.opt:67
+#: config/arc/arc.opt:496
 #, no-c-format
-msgid ""
-"-frust-extern=              Specify where an external library is located"
+msgid "Enable use of NPS400 xld/xst extension."
 msgstr ""
 
-#: rust/lang.opt:71
+#: config/arc/arc.opt:504
 #, no-c-format
-msgid "Dump various Rust front end internals."
+msgid ""
+"Specifies the registers that the processor saves on an interrupt entry and "
+"exit."
 msgstr ""
 
-#: rust/lang.opt:75
+#: config/arc/arc.opt:508
 #, no-c-format
 msgid ""
-"-frust-dump-<type>              Dump Rust frontend internal information."
+"Specifies the number of registers replicated in second register bank on "
+"entry to fast interrupt."
 msgstr ""
 
-#: rust/lang.opt:79
+#: config/arc/arc.opt:512
 #, no-c-format
-msgid "Enable experimental compilation of Rust files at your own risk"
+msgid ""
+"Sets LP_COUNT register width.  Possible values are 8, 16, 20, 24, 28, and 32."
 msgstr ""
 
-#: rust/lang.opt:83
+#: config/arc/arc.opt:537
 #, no-c-format
-msgid "-frust-max-recursion-depth=<integer>"
+msgid "Enable 16-entry register file."
 msgstr ""
 
-#: rust/lang.opt:87
+#: config/arc/arc.opt:541
 #, no-c-format
-msgid ""
-"-frust-crate-type=[bin|lib|rlib|dylib|cdylib|staticlib|proc-macro]     Crate "
-"type to emit"
+msgid "Enable use of BI/BIH instructions when available."
 msgstr ""
 
-#: rust/lang.opt:115
+#: config/arc/arc.opt:545
 #, no-c-format
-msgid "-frust-mangling=[legacy|v0]     Version to use for name mangling"
+msgid "Enable ENTER_S and LEAVE_S opcodes for ARCv2."
 msgstr ""
 
-#: rust/lang.opt:128
+#: config/moxie/moxie.opt:23 config/csky/csky.opt:44 config/mcore/mcore.opt:35
 #, no-c-format
-msgid "-frust-cfg=<name>             Set a config expansion option"
+msgid "Generate big-endian code."
 msgstr ""
 
-#: rust/lang.opt:132
+#: config/moxie/moxie.opt:27 config/csky/csky.opt:51 config/mcore/mcore.opt:51
 #, no-c-format
-msgid ""
-"-frust-edition=[2015|2018|2021]             Edition to use when compiling "
-"rust code"
+msgid "Generate little-endian code."
 msgstr ""
 
-#: rust/lang.opt:148
+#: config/moxie/moxie.opt:31
 #, no-c-format
-msgid "Enable embedding metadata directly into object files"
+msgid "Enable MUL.X and UMUL.X instructions."
 msgstr ""
 
-#: rust/lang.opt:152
+#: config/linux-android.opt:23
 #, no-c-format
-msgid "-frust-metadata-output=<path.rox>  Path to output crate metadata"
+msgid "Generate code for the Android platform."
 msgstr ""
 
-#: rust/lang.opt:160
+#: config/nvptx/nvptx-gen.opt:24
 #, no-c-format
-msgid ""
-"-frust-compile-until=[ast|attributecheck|expansion|astvalidation|"
-"featuregating|nameresolution|lowering|typecheck|privacy|unsafety|const|"
-"borrowcheck|compilation|end]             The pipeline will run up until this "
-"stage when compiling Rust code"
+msgid "Known PTX ISA target architectures (for use with the -misa= option):"
 msgstr ""
 
-#: rust/lang.opt:209
+#: config/nvptx/nvptx.opt:31
 #, no-c-format
 msgid ""
-"Use the temporary and experimental name resolution pipeline instead of the "
-"stable one"
+"Ignored, but preserved for backward compatibility.  Only 64-bit ABI is "
+"supported."
 msgstr ""
 
-#: rust/lang.opt:213
+#: config/nvptx/nvptx.opt:36
 #, no-c-format
-msgid "Use the WIP borrow checker."
+msgid "Link in code for a __main kernel."
 msgstr ""
 
-#: rust/lang.opt:217
+#: config/nvptx/nvptx.opt:40
 #, no-c-format
-msgid ""
-"-frust-edition=[unwind|abort]             Panic strategy to compile crate "
-"with"
+msgid "Optimize partition neutering."
 msgstr ""
 
-#: rust/lang.opt:230
+#: config/nvptx/nvptx.opt:44
 #, no-c-format
-msgid "Enable the overflow checks in code generation"
+msgid "Use custom stacks instead of local memory for automatic storage."
 msgstr ""
 
-#: c-family/c.opt:71
+#: config/nvptx/nvptx.opt:48
 #, no-c-format
-msgid "--embed-dir=<dir>\tAdd <dir> to the #embed path."
+msgid ""
+"Specify size of .local memory used for stack when the exact amount is not "
+"known."
 msgstr ""
 
-#: c-family/c.opt:192
+#: config/nvptx/nvptx.opt:52
 #, no-c-format
-msgid ""
-"-A<question>=<answer>\tAssert the <answer> to <question>.  Putting '-' "
-"before <question> disables the <answer> to <question>."
+msgid "Generate code that can keep local state uniform across all lanes."
 msgstr ""
 
-#: c-family/c.opt:196
+#: config/nvptx/nvptx.opt:56
 #, no-c-format
-msgid "Do not discard comments."
+msgid ""
+"Generate code for OpenMP offloading: enables -msoft-stack and -muniform-simt."
 msgstr ""
 
-#: c-family/c.opt:200
+#: config/nvptx/nvptx.opt:60
 #, no-c-format
-msgid "Do not discard comments in macro expansions."
+msgid "Specify the PTX ISA target architecture to use."
 msgstr ""
 
-#: c-family/c.opt:204
+#: config/nvptx/nvptx.opt:64
 #, no-c-format
-msgid ""
-"-D<macro>[=<val>]\tDefine a <macro> with <val> as its value.  If just "
-"<macro> is given, <val> is taken to be 1."
+msgid "Alias:"
 msgstr ""
 
-#: c-family/c.opt:211
+#: config/nvptx/nvptx.opt:170
 #, no-c-format
-msgid "-F <dir>\tAdd <dir> to the end of the main framework include path."
+msgid "Known PTX ISA versions (for use with the -mptx= option):"
 msgstr ""
 
-#: c-family/c.opt:215
+#: config/nvptx/nvptx.opt:204
 #, no-c-format
-msgid "Enable parsing GIMPLE."
+msgid "Specify the PTX ISA version to use."
 msgstr ""
 
-#: c-family/c.opt:219
+#: config/nvptx/nvptx.opt:208
 #, no-c-format
-msgid "Print the name of header files as they are used."
+msgid "Initialize ptx registers."
 msgstr ""
 
-#: c-family/c.opt:223
+#: config/iq2000/iq2000.opt:31
 #, no-c-format
-msgid "-I <dir>\tAdd <dir> to the end of the main include path."
+msgid "Specify CPU for code generation purposes."
 msgstr ""
 
-#: c-family/c.opt:227
+#: config/iq2000/iq2000.opt:47
 #, no-c-format
-msgid "Generate make dependencies."
+msgid "Specify CPU for scheduling purposes."
 msgstr ""
 
-#: c-family/c.opt:231
+#: config/iq2000/iq2000.opt:51
 #, no-c-format
-msgid "Generate make dependencies and compile."
+msgid "Known IQ2000 CPUs (for use with the -mcpu= option):"
 msgstr ""
 
-#: c-family/c.opt:235
+#: config/iq2000/iq2000.opt:61 config/mips/mips.opt:142
 #, no-c-format
-msgid "-MF <file>\tWrite dependency output to the given file."
+msgid "Use ROM instead of RAM."
 msgstr ""
 
-#: c-family/c.opt:239
+#: config/iq2000/iq2000.opt:65 config/microblaze/microblaze.opt:92
 #, no-c-format
-msgid "Treat missing header files as generated files."
+msgid "Use GP relative sdata/sbss sections."
 msgstr ""
 
-#: c-family/c.opt:243
+#: config/iq2000/iq2000.opt:70
 #, no-c-format
-msgid "Like -M but ignore system header files."
+msgid "No default crt0.o."
 msgstr ""
 
-#: c-family/c.opt:247
+#: config/iq2000/iq2000.opt:74 config/mips/mips.opt:442
 #, no-c-format
-msgid "Like -MD but ignore system header files."
+msgid "Put uninitialized constants in ROM (needs -membedded-data)."
 msgstr ""
 
-#: c-family/c.opt:251
+#: config/sol2.opt:32
 #, no-c-format
-msgid "Generate C++ Module dependency information."
+msgid "Generate Solaris CTF."
 msgstr ""
 
-#: c-family/c.opt:259
+#: config/sol2.opt:36
 #, no-c-format
-msgid "Generate phony targets for all headers."
+msgid "Clear hardware capabilities when linking."
 msgstr ""
 
-#: c-family/c.opt:263
+#: config/sol2.opt:40
 #, no-c-format
-msgid "-MQ <target>\tAdd a target that may require quoting."
+msgid "Pass -z text to linker."
 msgstr ""
 
-#: c-family/c.opt:267
+#: config/gcn/gcn-tables.opt:25
 #, no-c-format
-msgid "-MT <target>\tAdd a target that does not require quoting."
+msgid "GCN GPU type to use:"
 msgstr ""
 
-#: c-family/c.opt:271
+#: config/gcn/gcn.opt:26 config/gcn/gcn.opt:30
 #, no-c-format
-msgid ""
-"Structured format for output dependency information.  Supported "
-"(\"p1689r5\")."
+msgid "Specify the name of the target GPU."
 msgstr ""
 
-#: c-family/c.opt:275
+#: config/gcn/gcn.opt:39
 #, no-c-format
-msgid "File for output dependency information."
+msgid "Generate code for a 32-bit ABI."
 msgstr ""
 
-#: c-family/c.opt:279
+#: config/gcn/gcn.opt:43
 #, no-c-format
-msgid "-fdeps-target=obj.o Output file for the compile step."
+msgid "Generate code for a 64-bit ABI."
 msgstr ""
 
-#: c-family/c.opt:283
+#: config/gcn/gcn.opt:47
 #, no-c-format
-msgid "Do not generate #line directives."
+msgid "Enable OpenMP GPU offloading."
 msgstr ""
 
-#: c-family/c.opt:287
+#: config/gcn/gcn.opt:62
 #, no-c-format
-msgid "-U<macro>\tUndefine <macro>."
+msgid "Obsolete; use GCN_STACK_SIZE at runtime."
 msgstr ""
 
-#: c-family/c.opt:291
+#: config/gcn/gcn.opt:69
 #, no-c-format
-msgid "Warn if the NSObject attribute is applied to a non-typedef."
+msgid ""
+"Amount of local data-share (LDS) memory to reserve for gang-private "
+"variables."
 msgstr ""
 
-#: c-family/c.opt:295
+#: config/gcn/gcn.opt:73
 #, no-c-format
-msgid ""
-"Warn about things that will change when compiling with an ABI-compliant "
-"compiler."
+msgid "Warn about invalid OpenACC dimensions."
 msgstr ""
 
-#: c-family/c.opt:299
+#: config/gcn/gcn.opt:77
 #, no-c-format
-msgid ""
-"Warn about things that change between the current -fabi-version and the "
-"specified version."
+msgid "SRAM-ECC and XNACK modes:"
 msgstr ""
 
-#: c-family/c.opt:303
+#: config/gcn/gcn.opt:93
 #, no-c-format
 msgid ""
-"Warn if a subobject has an abi_tag attribute that the complete object type "
-"does not have."
+"Compile for devices requiring XNACK enabled. Default \"any\" if USM is "
+"supported."
 msgstr ""
 
-#: c-family/c.opt:307
+#: config/gcn/gcn.opt:97
 #, no-c-format
-msgid "Warn about code affected by incompatible psABI changes."
+msgid ""
+"Compile for devices with the SRAM ECC feature enabled, or not. Default "
+"\"any\"."
 msgstr ""
 
-#: c-family/c.opt:311
+#: config/gcn/gcn.opt:101
 #, no-c-format
 msgid ""
-"Warn on suspicious calls of standard functions computing absolute values."
+"--param=gcn-preferred-vectorization-factor=[default,32,64]\tPreferred "
+"vectorization factor."
 msgstr ""
 
-#: c-family/c.opt:315
+#: config/pa/pa-hpux1010.opt:23 config/pa/pa-hpux.opt:31
+#: config/pa/pa-hpux1131.opt:23 config/pa/pa-hpux1111.opt:23
 #, no-c-format
-msgid "Warn about suspicious uses of memory addresses."
+msgid "Specify UNIX standard for predefines and linking."
 msgstr ""
 
-#: c-family/c.opt:319
+#: config/pa/pa-hpux.opt:27
 #, no-c-format
-msgid "Warn when the address of packed member of struct or union is taken."
+msgid "Generate cpp defines for server IO."
 msgstr ""
 
-#: c-family/c.opt:335
+#: config/pa/pa-hpux.opt:35
 #, no-c-format
-msgid "Warn about 'new' of type with extended alignment without -faligned-new."
+msgid "Generate cpp defines for workstation IO."
 msgstr ""
 
-#: c-family/c.opt:339
+#: config/pa/pa.opt:30 config/pa/pa.opt:99 config/pa/pa.opt:111
 #, no-c-format
-msgid ""
-"-Waligned-new=[none|global|all]\tWarn even if 'new' uses a class member "
-"allocation function."
+msgid "Generate PA1.0 code."
 msgstr ""
 
-#: c-family/c.opt:343 ada/gcc-interface/lang.opt:57
+#: config/pa/pa.opt:34 config/pa/pa.opt:115 config/pa/pa.opt:160
 #, no-c-format
-msgid "Enable most warning messages."
+msgid "Generate PA1.1 code."
 msgstr ""
 
-#: c-family/c.opt:347
+#: config/pa/pa.opt:38 config/pa/pa.opt:119
 #, no-c-format
-msgid "Warn on any use of alloca."
+msgid "Generate PA2.0 code (requires binutils 2.10 or later)."
 msgstr ""
 
-#: c-family/c.opt:351
+#: config/pa/pa.opt:42
 #, no-c-format
 msgid ""
-"Warn when allocating insufficient storage for the target type of the "
-"assigned pointer."
+"Generate libcalls for atomic loads and stores when sync libcalls are "
+"disabled."
 msgstr ""
 
-#: c-family/c.opt:355
+#: config/pa/pa.opt:50
 #, no-c-format
-msgid ""
-"-Walloc-size-larger-than=<bytes>\tWarn for calls to allocation functions "
-"that attempt to allocate objects larger than the specified number of bytes."
+msgid "Caller copies function arguments passed by hidden reference."
 msgstr ""
 
-#: c-family/c.opt:360
+#: config/pa/pa.opt:54
 #, no-c-format
-msgid ""
-"Disable Walloc-size-larger-than= warning.  Equivalent to Walloc-size-larger-"
-"than=<SIZE_MAX> or larger."
+msgid "Use ldcw/ldcd coherent cache-control hint."
 msgstr ""
 
-#: c-family/c.opt:364
+#: config/pa/pa.opt:58
 #, no-c-format
-msgid "Warn for calls to allocation functions that specify zero bytes."
+msgid "Disable FP regs.  Equivalent to -msoft-float."
 msgstr ""
 
-#: c-family/c.opt:368
+#: config/pa/pa.opt:62
 #, no-c-format
-msgid ""
-"-Walloca-larger-than=<number>\tWarn on unbounded uses of alloca, and on "
-"bounded uses of alloca whose bound can be larger than <number> bytes."
+msgid "Disable indexed addressing."
 msgstr ""
 
-#: c-family/c.opt:374
+#: config/pa/pa.opt:66
 #, no-c-format
-msgid ""
-"Disable Walloca-larger-than= warning.  Equivalent to Walloca-larger-"
-"than=<SIZE_MAX> or larger."
+msgid "Generate fast indirect calls."
 msgstr ""
 
-#: c-family/c.opt:378
+#: config/pa/pa.opt:70 config/ia64/ia64.opt:114 config/sh/sh.opt:227
 #, no-c-format
-msgid ""
-"Warn if conversion of the result of arithmetic might change the value even "
-"though converting the operands cannot."
+msgid "Specify range of registers to make fixed."
 msgstr ""
 
-#: c-family/c.opt:386
+#: config/pa/pa.opt:74
 #, no-c-format
-msgid "Warn about comparisons between two operands of array type."
+msgid "Assume code will be assembled by GAS."
 msgstr ""
 
-#: c-family/c.opt:390 c-family/c.opt:394
+#: config/pa/pa.opt:83
 #, no-c-format
-msgid ""
-"Warn about mismatched declarations of array parameters and unsafe accesses "
-"to them."
+msgid "Enable linker optimizations."
 msgstr ""
 
-#: c-family/c.opt:398
+#: config/pa/pa.opt:87
 #, no-c-format
-msgid ""
-"Warn whenever an Objective-C assignment is being intercepted by the garbage "
-"collector."
+msgid "Always generate long calls."
 msgstr ""
 
-#: c-family/c.opt:402
+#: config/pa/pa.opt:91 config/sh/sh.opt:303
 #, no-c-format
-msgid "Warn about casting functions to incompatible types."
+msgid "Use LRA instead of reload (transitional)."
 msgstr ""
 
-#: c-family/c.opt:410
+#: config/pa/pa.opt:95
 #, no-c-format
-msgid ""
-"-Wbidi-chars=[none|unpaired|any|ucn] Warn about UTF-8 bidirectional control "
-"characters."
+msgid "Emit long load/store sequences."
 msgstr ""
 
-#: c-family/c.opt:433
+#: config/pa/pa.opt:103
 #, no-c-format
-msgid ""
-"Warn about boolean expression compared with an integer value different from "
-"true/false."
+msgid "Disable space regs."
 msgstr ""
 
-#: c-family/c.opt:437
+#: config/pa/pa.opt:107
 #, no-c-format
-msgid "Warn about certain operations on boolean expressions."
+msgid "Assume memory references are ordered and barriers are not needed."
 msgstr ""
 
-#: c-family/c.opt:441
+#: config/pa/pa.opt:123
 #, no-c-format
-msgid "Warn when a built-in function is declared with the wrong signature."
+msgid "Use portable calling conventions."
 msgstr ""
 
-#: c-family/c.opt:445
+#: config/pa/pa.opt:127
 #, no-c-format
-msgid "Warn when a built-in preprocessor macro is undefined or redefined."
+msgid ""
+"Specify CPU for scheduling purposes.  Valid arguments are 700, 7100, 7100LC, "
+"7200, 7300, and 8000."
 msgstr ""
 
-#: c-family/c.opt:449
+#: config/pa/pa.opt:152 config/frv/frv.opt:216
 #, no-c-format
-msgid "Warn about features not present in ISO C11, but present in ISO C23."
+msgid "Use software floating point."
 msgstr ""
 
-#: c-family/c.opt:453
+#: config/pa/pa.opt:156
 #, no-c-format
-msgid "Deprecated in favor of -Wc11-c23-compat."
+msgid "Use software integer multiplication."
 msgstr ""
 
-#: c-family/c.opt:457
+#: config/pa/pa.opt:164
 #, no-c-format
-msgid "Warn about features not present in ISO C23, but present in ISO C2Y."
+msgid "Do not disable space regs."
 msgstr ""
 
-#: c-family/c.opt:461
+#: config/pa/pa64-hpux.opt:23
 #, no-c-format
-msgid "Warn about features not present in ISO C90, but present in ISO C99."
+msgid "Assume code will be linked by GNU ld."
 msgstr ""
 
-#: c-family/c.opt:465
+#: config/pa/pa64-hpux.opt:27
 #, no-c-format
-msgid "Warn about features not present in ISO C99, but present in ISO C11."
+msgid "Assume code will be linked by HP ld."
 msgstr ""
 
-#: c-family/c.opt:469
+#: config/rl78/rl78.opt:27 config/csky/csky.opt:198 config/rx/elf.opt:26
 #, no-c-format
-msgid "Warn about C constructs that are not in the common subset of C and C++."
+msgid "Use the simulator runtime."
 msgstr ""
 
-#: c-family/c.opt:476
+#: config/rl78/rl78.opt:31
 #, no-c-format
 msgid ""
-"Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO "
-"C++ 2011."
+"Selects the type of hardware multiplication and division to use (none/g13/"
+"g14)."
 msgstr ""
 
-#: c-family/c.opt:480
+#: config/rl78/rl78.opt:50
 #, no-c-format
-msgid ""
-"Warn about C++ constructs whose meaning differs between ISO C++ 2011 and ISO "
-"C++ 2014."
+msgid "Use all registers, reserving none for interrupt handlers."
 msgstr ""
 
-#: c-family/c.opt:487
+#: config/rl78/rl78.opt:54
 #, no-c-format
-msgid ""
-"Warn about C++ constructs whose meaning differs between ISO C++ 2014 and ISO "
-"C++ 2017."
+msgid "Enable assembler and linker relaxation.  Enabled by default at -Os."
 msgstr ""
 
-#: c-family/c.opt:494
+#: config/rl78/rl78.opt:58
 #, no-c-format
 msgid ""
-"Warn about C++ constructs whose meaning differs between ISO C++ 2017 and ISO "
-"C++ 2020."
+"Selects the type of RL78 core being targeted (g10/g13/g14).  The default is "
+"the G14.  If set, also selects the hardware multiply support to be used."
 msgstr ""
 
-#: c-family/c.opt:498
+#: config/rl78/rl78.opt:77
 #, no-c-format
-msgid "Warn about C++11 constructs in code compiled with an older standard."
+msgid "Alias for -mcpu=g10."
 msgstr ""
 
-#: c-family/c.opt:502
+#: config/rl78/rl78.opt:81
 #, no-c-format
-msgid "Warn about C++14 constructs in code compiled with an older standard."
+msgid "Alias for -mcpu=g13."
 msgstr ""
 
-#: c-family/c.opt:506
+#: config/rl78/rl78.opt:85 config/rl78/rl78.opt:89
 #, no-c-format
-msgid "Warn about C++17 constructs in code compiled with an older standard."
+msgid "Alias for -mcpu=g14."
 msgstr ""
 
-#: c-family/c.opt:510
+#: config/rl78/rl78.opt:93
 #, no-c-format
-msgid "Warn about C++20 constructs in code compiled with an older standard."
+msgid ""
+"Assume ES is zero throughout program execution, use ES: for read-only data."
 msgstr ""
 
-#: c-family/c.opt:514
+#: config/rl78/rl78.opt:97
 #, no-c-format
-msgid "Warn about C++23 constructs in code compiled with an older standard."
+msgid "Stores the MDUC registers in interrupt handlers for G13 target."
 msgstr ""
 
-#: c-family/c.opt:518
+#: config/bfin/bfin.opt:40 config/msp430/msp430.opt:3 config/c6x/c6x.opt:38
 #, no-c-format
-msgid "Warn about C++26 constructs in code compiled with an older standard."
+msgid "Use simulator runtime."
 msgstr ""
 
-#: c-family/c.opt:522
+#: config/bfin/bfin.opt:44 config/arm/arm.opt:115
 #, no-c-format
-msgid ""
-"Warn about suspicious calls to calloc-like functions where sizeof expression "
-"is the earlier size argument and not the latter."
+msgid "Specify the name of the target CPU."
 msgstr ""
 
-#: c-family/c.opt:526
+#: config/bfin/bfin.opt:48
 #, no-c-format
-msgid "Warn about casts between incompatible function types."
+msgid "Omit frame pointer for leaf functions."
 msgstr ""
 
-#: c-family/c.opt:530
+#: config/bfin/bfin.opt:52
 #, no-c-format
-msgid "Warn about casts which discard qualifiers."
+msgid "Program is entirely located in low 64k of memory."
 msgstr ""
 
-#: c-family/c.opt:534
+#: config/bfin/bfin.opt:56
 #, no-c-format
 msgid ""
-"Warn about a cast to reference type that does not use a related user-defined "
-"conversion function."
+"Work around a hardware anomaly by adding a number of NOPs before a CSYNC or "
+"SSYNC instruction."
 msgstr ""
 
-#: c-family/c.opt:538 c-family/c.opt:542
+#: config/bfin/bfin.opt:61
 #, no-c-format
-msgid "Warn about catch handlers of non-reference type."
+msgid "Avoid speculative loads to work around a hardware anomaly."
 msgstr ""
 
-#: c-family/c.opt:546
+#: config/bfin/bfin.opt:65
 #, no-c-format
-msgid ""
-"Complain about a name being declared as a class member after a previous use "
-"of the same name."
+msgid "Enabled ID based shared library."
 msgstr ""
 
-#: c-family/c.opt:550
+#: config/bfin/bfin.opt:69
 #, no-c-format
-msgid "Warn about subscripts whose type is \"char\"."
+msgid ""
+"Generate code that won't be linked against any other ID shared libraries, "
+"but may be used as a shared library."
 msgstr ""
 
-#: c-family/c.opt:554 c-family/c.opt:1728 c-family/c.opt:1732
-#: c-family/c.opt:1736 c-family/c.opt:1740 c-family/c.opt:1744
-#: c-family/c.opt:1748 c-family/c.opt:1752 c-family/c.opt:1759
-#: c-family/c.opt:1763 c-family/c.opt:1767 c-family/c.opt:1771
-#: c-family/c.opt:1775 c-family/c.opt:1779 c-family/c.opt:1783
-#: c-family/c.opt:1787 c-family/c.opt:1791 c-family/c.opt:1795
-#: c-family/c.opt:1799 c-family/c.opt:1803 c-family/c.opt:1807
-#: config/i386/i386.opt:1005
+#: config/bfin/bfin.opt:74 config/m68k/m68k.opt:180
 #, no-c-format
-msgid "Removed in GCC 9.  This switch has no effect."
+msgid "ID of shared library to build."
 msgstr ""
 
-#: c-family/c.opt:558
+#: config/bfin/bfin.opt:78 config/m68k/m68k.opt:176
 #, no-c-format
-msgid ""
-"Warn when a conversion function will never be called due to the type it "
-"converts to."
+msgid "Enable separate data segment."
 msgstr ""
 
-#: c-family/c.opt:562
+#: config/bfin/bfin.opt:82 config/c6x/c6x.opt:63
 #, no-c-format
-msgid "Warn for unsafe raw memory writes to objects of class types."
+msgid "Avoid generating pc-relative calls; use indirection."
 msgstr ""
 
-#: c-family/c.opt:566
+#: config/bfin/bfin.opt:86
 #, no-c-format
-msgid "Warn about variables that might be changed by \"longjmp\" or \"vfork\"."
+msgid "Link with the fast floating-point library."
 msgstr ""
 
-#: c-family/c.opt:570
+#: config/bfin/bfin.opt:90 config/frv/frv.opt:130 config/arm/arm.opt:343
 #, no-c-format
-msgid "Warn about uses of a comma operator within a subscripting expression."
+msgid "Enable Function Descriptor PIC mode."
 msgstr ""
 
-#: c-family/c.opt:574
+#: config/bfin/bfin.opt:94 config/frv/frv.opt:162
 #, no-c-format
-msgid ""
-"Warn about possibly nested block comments, and C++ comments spanning more "
-"than one physical line."
+msgid "Enable inlining of PLT in function calls."
 msgstr ""
 
-#: c-family/c.opt:578
+#: config/bfin/bfin.opt:98
 #, no-c-format
-msgid "Synonym for -Wcomment."
+msgid "Do stack checking using bounds in L1 scratch memory."
 msgstr ""
 
-#: c-family/c.opt:582
+#: config/bfin/bfin.opt:102
 #, no-c-format
-msgid "Warn for conditionally-supported constructs."
+msgid "Enable multicore support."
 msgstr ""
 
-#: c-family/c.opt:586
+#: config/bfin/bfin.opt:106
 #, no-c-format
-msgid "Warn for implicit type conversions that may change a value."
+msgid "Build for Core A."
 msgstr ""
 
-#: c-family/c.opt:590
+#: config/bfin/bfin.opt:110
 #, no-c-format
-msgid "Warn for converting NULL from/to a non-pointer type."
+msgid "Build for Core B."
 msgstr ""
 
-#: c-family/c.opt:598
+#: config/bfin/bfin.opt:114
 #, no-c-format
-msgid ""
-"Warn when performing class template argument deduction on a type with no "
-"deduction guides."
+msgid "Build for SDRAM."
 msgstr ""
 
-#: c-family/c.opt:603
+#: config/bfin/bfin.opt:118
 #, no-c-format
-msgid "Warn when all constructors and destructors are private."
+msgid "Assume ICPLBs are enabled at runtime."
 msgstr ""
 
-#: c-family/c.opt:607
+#: config/rs6000/rs6000-tables.opt:24
 #, no-c-format
-msgid "Warn about dangling else."
+msgid "Known CPUs (for use with the -mcpu= and -mtune= options):"
 msgstr ""
 
-#: c-family/c.opt:611 c-family/c.opt:615
+#: config/rs6000/rs6000.opt:117
 #, no-c-format
-msgid "Warn for uses of pointers to auto variables whose lifetime has ended."
+msgid "Use PowerPC-64 instruction set."
 msgstr ""
 
-#: c-family/c.opt:619
+#: config/rs6000/rs6000.opt:121
 #, no-c-format
-msgid "Warn when a reference is bound to a temporary whose lifetime has ended."
+msgid "Use PowerPC General Purpose group optional instructions."
 msgstr ""
 
-#: c-family/c.opt:623
+#: config/rs6000/rs6000.opt:125
 #, no-c-format
-msgid "Warn about __TIME__, __DATE__ and __TIMESTAMP__ usage."
+msgid "Use PowerPC Graphics group optional instructions."
 msgstr ""
 
-#: c-family/c.opt:627
+#: config/rs6000/rs6000.opt:129
 #, no-c-format
-msgid "Warn when a declaration is found after a statement."
+msgid "Use PowerPC V2.01 single field mfcr instruction."
 msgstr ""
 
-#: c-family/c.opt:631
+#: config/rs6000/rs6000.opt:133
 #, no-c-format
-msgid "Warn for missing parameter types in function declarations."
+msgid "Use PowerPC V2.02 popcntb instruction."
 msgstr ""
 
-#: c-family/c.opt:635
+#: config/rs6000/rs6000.opt:137
 #, no-c-format
-msgid "Warn when an explicitly defaulted function is deleted."
+msgid "Use PowerPC V2.02 floating point rounding instructions."
 msgstr ""
 
-#: c-family/c.opt:639
+#: config/rs6000/rs6000.opt:141
 #, no-c-format
-msgid "Warn when deleting a pointer to incomplete type."
+msgid "Use PowerPC V2.05 compare bytes instruction."
 msgstr ""
 
-#: c-family/c.opt:643
+#: config/rs6000/rs6000.opt:152
 #, no-c-format
-msgid "Warn about deleting polymorphic objects with non-virtual destructors."
+msgid "Use AltiVec instructions."
 msgstr ""
 
-#: c-family/c.opt:651
+#: config/rs6000/rs6000.opt:156
 #, no-c-format
-msgid ""
-"Mark implicitly-declared copy operations as deprecated if the class has a "
-"user-provided copy operation."
+msgid "Use decimal floating point instructions."
 msgstr ""
 
-#: c-family/c.opt:656
+#: config/rs6000/rs6000.opt:160
 #, no-c-format
-msgid ""
-"Mark implicitly-declared copy operations as deprecated if the class has a "
-"user-provided copy operation or destructor."
+msgid "Use 4xx half-word multiply instructions."
 msgstr ""
 
-#: c-family/c.opt:661
+#: config/rs6000/rs6000.opt:164
 #, no-c-format
-msgid ""
-"Warn about deprecated arithmetic conversions on operands of enumeration "
-"types."
+msgid "Use 4xx string-search dlmzb instruction."
 msgstr ""
 
-#: c-family/c.opt:665
+#: config/rs6000/rs6000.opt:168
 #, no-c-format
-msgid ""
-"Warn about deprecated arithmetic conversions on operands where one is of "
-"enumeration type and the other is of a floating-point type."
+msgid "Generate load/store multiple instructions."
 msgstr ""
 
-#: c-family/c.opt:670
+#: config/rs6000/rs6000.opt:179 config/pdp11/pdp11.opt:59
 #, no-c-format
-msgid ""
-"Warn about deprecated space between \"\" and suffix in a user-defined "
-"literal operator."
+msgid "Do not use hardware floating point."
 msgstr ""
 
-#: c-family/c.opt:674
+#: config/rs6000/rs6000.opt:183 config/frv/frv.opt:158
+#: config/pdp11/pdp11.opt:47
 #, no-c-format
-msgid ""
-"Warn about calls with arguments to functions declared without parameters."
+msgid "Use hardware floating point."
 msgstr ""
 
-#: c-family/c.opt:678
+#: config/rs6000/rs6000.opt:187
 #, no-c-format
-msgid ""
-"Warn about deprecated omission of comma before ... in varargs function "
-"declaration."
+msgid "Use PowerPC V2.06 popcntd instruction."
 msgstr ""
 
-#: c-family/c.opt:682
+#: config/rs6000/rs6000.opt:191
 #, no-c-format
 msgid ""
-"Warn about positional initialization of structs requiring designated "
-"initializers."
+"Under -ffast-math, generate a FRIZ instruction for (double)(long long) "
+"conversions."
 msgstr ""
 
-#: c-family/c.opt:686
+#: config/rs6000/rs6000.opt:195 config/i386/i386.opt:572
 #, no-c-format
-msgid "Warn if qualifiers on arrays which are pointer targets are discarded."
+msgid "Vector library ABI to use."
 msgstr ""
 
-#: c-family/c.opt:690
+#: config/rs6000/rs6000.opt:199
 #, no-c-format
-msgid "Warn if type qualifiers on pointers are discarded."
+msgid "Use vector/scalar (VSX) instructions."
 msgstr ""
 
-#: c-family/c.opt:694
+#: config/rs6000/rs6000.opt:227
 #, no-c-format
-msgid "Warn about compile-time integer division by zero."
+msgid "Do not generate load/store with update instructions."
 msgstr ""
 
-#: c-family/c.opt:698
+#: config/rs6000/rs6000.opt:231
 #, no-c-format
-msgid "Warn about implicit conversions from \"float\" to \"double\"."
+msgid "Generate load/store with update instructions."
 msgstr ""
 
-#: c-family/c.opt:702
+#: config/rs6000/rs6000.opt:235 config/arm/arm.opt:192
 #, no-c-format
-msgid ""
-"Warn when a declaration has duplicate const, volatile, restrict or _Atomic "
-"specifier."
+msgid "Do not load the PIC register in function prologues."
 msgstr ""
 
-#: c-family/c.opt:706
+#: config/rs6000/rs6000.opt:239
 #, no-c-format
-msgid "Warn about duplicated branches in if-else statements."
+msgid "Avoid generation of indexed load/store instructions when possible."
 msgstr ""
 
-#: c-family/c.opt:710
+#: config/rs6000/rs6000.opt:246
 #, no-c-format
-msgid "Warn about duplicated conditions in an if-else-if chain."
+msgid "Schedule the start and end of the procedure."
 msgstr ""
 
-#: c-family/c.opt:714
+#: config/rs6000/rs6000.opt:250
 #, no-c-format
-msgid "Warn about violations of Effective C++ style rules."
+msgid "Return all structures in memory (AIX default)."
 msgstr ""
 
-#: c-family/c.opt:718
+#: config/rs6000/rs6000.opt:254
 #, no-c-format
-msgid ""
-"Warn if an additional enum-base is used in an elaborated-type-specifier."
+msgid "Return small structures in registers (SVR4 default)."
 msgstr ""
 
-#: c-family/c.opt:722
+#: config/rs6000/rs6000.opt:258
 #, no-c-format
-msgid "Warn about an empty body in an if or else statement."
+msgid "Conform more closely to IBM XLC semantics."
 msgstr ""
 
-#: c-family/c.opt:726
+#: config/rs6000/rs6000.opt:262 config/rs6000/rs6000.opt:266
 #, no-c-format
-msgid "Warn about stray tokens after #else and #endif."
+msgid ""
+"Generate software reciprocal divide and square root for better throughput."
 msgstr ""
 
-#: c-family/c.opt:730
+#: config/rs6000/rs6000.opt:270
 #, no-c-format
-msgid "Warn about comparison of different enum types."
+msgid "Assume that the reciprocal estimate instructions provide more accuracy."
 msgstr ""
 
-#: c-family/c.opt:734
+#: config/rs6000/rs6000.opt:274
 #, no-c-format
-msgid "Warn about implicit conversion of enum types."
+msgid "Do not place floating point constants in TOC."
 msgstr ""
 
-#: c-family/c.opt:738
+#: config/rs6000/rs6000.opt:278
 #, no-c-format
-msgid "Warn about enum/integer type mismatches."
+msgid "Place floating point constants in TOC."
 msgstr ""
 
-#: c-family/c.opt:746
+#: config/rs6000/rs6000.opt:282
 #, no-c-format
-msgid ""
-"This switch is deprecated; use -Werror=implicit-function-declaration instead."
+msgid "Do not place symbol+offset constants in TOC."
 msgstr ""
 
-#: c-family/c.opt:750
+#: config/rs6000/rs6000.opt:286
 #, no-c-format
-msgid "Warn when an exception handler is shadowed by another handler."
+msgid "Place symbol+offset constants in TOC."
 msgstr ""
 
-#: c-family/c.opt:754
+#: config/rs6000/rs6000.opt:297
 #, no-c-format
-msgid "Warn if \"defined\" is used outside #if."
+msgid "Use only one TOC entry per procedure."
 msgstr ""
 
-#: c-family/c.opt:762
+#: config/rs6000/rs6000.opt:301
 #, no-c-format
-msgid "Warn about semicolon after in-class function definition."
+msgid "Put everything in the regular TOC."
 msgstr ""
 
-#: c-family/c.opt:766
+#: config/rs6000/rs6000.opt:305
 #, no-c-format
 msgid ""
-"Warn when a structure containing a C99 flexible array member as the last "
-"field is not at the end of another structure."
+"Emit NOPs before global and after local entry point for -fpatchable-function-"
+"entry."
 msgstr ""
 
-#: c-family/c.opt:771
+#: config/rs6000/rs6000.opt:309
 #, no-c-format
-msgid ""
-"Warn for implicit type conversions that cause loss of floating point "
-"precision."
+msgid "Generate VRSAVE instructions when generating AltiVec code."
 msgstr ""
 
-#: c-family/c.opt:775
+#: config/rs6000/rs6000.opt:313
 #, no-c-format
-msgid "Warn if testing floating point numbers for equality."
+msgid "Deprecated option.  Use -mno-vrsave instead."
 msgstr ""
 
-#: c-family/c.opt:779 c-family/c.opt:834
+#: config/rs6000/rs6000.opt:317
 #, no-c-format
-msgid "Warn about printf/scanf/strftime/strfmon format string anomalies."
+msgid "Deprecated option.  Use -mvrsave instead."
 msgstr ""
 
-#: c-family/c.opt:783
+#: config/rs6000/rs6000.opt:321
 #, no-c-format
-msgid "Warn about format strings that contain NUL bytes."
+msgid "Max number of bytes to move inline."
 msgstr ""
 
-#: c-family/c.opt:787
+#: config/rs6000/rs6000.opt:325
 #, no-c-format
-msgid "Warn about GCC format strings with strings unsuitable for diagnostics."
+msgid ""
+"Generate unaligned VSX load/store for inline expansion of memcpy/memmove."
 msgstr ""
 
-#: c-family/c.opt:791
+#: config/rs6000/rs6000.opt:329
 #, no-c-format
-msgid "Warn if passing too many arguments to a function for its format string."
+msgid ""
+"Generate unaligned VSX vector pair load/store for inline expansion of memcpy/"
+"memmove."
 msgstr ""
 
-#: c-family/c.opt:795
+#: config/rs6000/rs6000.opt:333
 #, no-c-format
-msgid "Warn about format strings that are not literals."
+msgid "Max number of bytes to compare without loops."
 msgstr ""
 
-#: c-family/c.opt:799
+#: config/rs6000/rs6000.opt:337
 #, no-c-format
-msgid ""
-"Warn about function calls with format strings that write past the end of the "
-"destination region.  Same as -Wformat-overflow=1."
+msgid "Max number of bytes to compare with loops."
 msgstr ""
 
-#: c-family/c.opt:804
+#: config/rs6000/rs6000.opt:341
 #, no-c-format
-msgid ""
-"Warn about function calls with format strings that write past the end of the "
-"destination region."
+msgid "Max number of bytes to compare."
 msgstr ""
 
-#: c-family/c.opt:809
+#: config/rs6000/rs6000.opt:345
 #, no-c-format
-msgid "Warn about possible security problems with format functions."
+msgid "Generate isel instructions."
 msgstr ""
 
-#: c-family/c.opt:813
+#: config/rs6000/rs6000.opt:349
 #, no-c-format
-msgid "Warn about sign differences with format functions."
+msgid "-mdebug=\tEnable debug output."
 msgstr ""
 
-#: c-family/c.opt:817
+#: config/rs6000/rs6000.opt:354
 #, no-c-format
-msgid ""
-"Warn about calls to snprintf and similar functions that truncate output. "
-"Same as -Wformat-truncation=1."
+msgid "Use the AltiVec ABI extensions."
 msgstr ""
 
-#: c-family/c.opt:822
+#: config/rs6000/rs6000.opt:358
 #, no-c-format
-msgid ""
-"Warn about calls to snprintf and similar functions that truncate output."
+msgid "Do not use the AltiVec ABI extensions."
 msgstr ""
 
-#: c-family/c.opt:826
+#: config/rs6000/rs6000.opt:363
 #, no-c-format
-msgid "Warn about strftime formats yielding 2-digit years."
+msgid "Use the AIX Vector Extended ABI."
 msgstr ""
 
-#: c-family/c.opt:830
+#: config/rs6000/rs6000.opt:367
 #, no-c-format
-msgid "Warn about zero-length formats."
+msgid "Do not use the AIX Vector Extended ABI."
 msgstr ""
 
-#: c-family/c.opt:838
+#: config/rs6000/rs6000.opt:372
 #, no-c-format
-msgid ""
-"Warn when __builtin_frame_address or __builtin_return_address is used "
-"unsafely."
+msgid "Use the ELFv1 ABI."
 msgstr ""
 
-#: c-family/c.opt:842
+#: config/rs6000/rs6000.opt:376
 #, no-c-format
-msgid ""
-"Warn about labels on declarations and at the end of compound statements."
+msgid "Use the ELFv2 ABI."
 msgstr ""
 
-#: c-family/c.opt:846
+#: config/rs6000/rs6000.opt:396
 #, no-c-format
-msgid ""
-"Warn about the global module fragment not containing only preprocessing "
-"directives."
+msgid "-mcpu=\tUse features of and schedule code for given CPU."
 msgstr ""
 
-#: c-family/c.opt:850
+#: config/rs6000/rs6000.opt:400
 #, no-c-format
-msgid ""
-"Warn when #ifndef of a header guard is followed by #define of a different "
-"macro with the header guard macro not defined at the end of header."
+msgid "-mtune=\tSchedule code for given CPU."
 msgstr ""
 
-#: c-family/c.opt:854
+#: config/rs6000/rs6000.opt:404
 #, no-c-format
-msgid "Warn when the field in a struct is not aligned."
+msgid "-mtraceback=[full,part,no]\tSelect type of traceback table."
 msgstr ""
 
-#: c-family/c.opt:858
+#: config/rs6000/rs6000.opt:420
 #, no-c-format
-msgid "Warn whenever type qualifiers are ignored."
+msgid "Avoid all range limits on call instructions."
 msgstr ""
 
-#: c-family/c.opt:862
+#: config/rs6000/rs6000.opt:428
 #, no-c-format
-msgid "Warn whenever attributes are ignored."
+msgid "Warn about deprecated 'vector long ...' AltiVec type usage."
 msgstr ""
 
-#: c-family/c.opt:866
+#: config/rs6000/rs6000.opt:432
 #, no-c-format
-msgid "Warn about implicit declarations."
+msgid ""
+"Use -mlong-double-64 for 64-bit IEEE floating point format.  Use -mlong-"
+"double-128 for 128-bit floating point format (either IEEE or IBM)."
 msgstr ""
 
-#: c-family/c.opt:874
+#: config/rs6000/rs6000.opt:441
 #, no-c-format
-msgid "Warn about implicit function declarations."
+msgid "Determine which dependences between insns are considered costly."
 msgstr ""
 
-#: c-family/c.opt:878
+#: config/rs6000/rs6000.opt:445
 #, no-c-format
-msgid "Warn when a declaration does not specify a type."
+msgid "Specify which post scheduling nop insertion scheme to apply."
 msgstr ""
 
-#: c-family/c.opt:885
+#: config/rs6000/rs6000.opt:449
 #, no-c-format
-msgid "Warn when a base is inaccessible in derived due to ambiguity."
+msgid "Specify alignment of structure fields default/natural."
 msgstr ""
 
-#: c-family/c.opt:889
+#: config/rs6000/rs6000.opt:453
 #, no-c-format
-msgid ""
-"Warn when there is a conversion between pointers that have incompatible "
-"types."
+msgid "Valid arguments to -malign-:"
 msgstr ""
 
-#: c-family/c.opt:897
+#: config/rs6000/rs6000.opt:463
 #, no-c-format
-msgid "Warn about variables which are initialized to themselves."
+msgid "Specify scheduling priority for dispatch slot restricted insns."
 msgstr ""
 
-#: c-family/c.opt:901
+#: config/rs6000/rs6000.opt:467
 #, no-c-format
-msgid ""
-"Warn about uses of std::initializer_list that can result in dangling "
-"pointers."
+msgid "Use r11 to hold the static link in calls to functions via pointers."
 msgstr ""
 
-#: c-family/c.opt:905
+#: config/rs6000/rs6000.opt:471
 #, no-c-format
-msgid ""
-"Warn about nonsensical values of --param destructive-interference-size or "
-"constructive-interference-size."
+msgid "Save the TOC in the prologue for indirect calls rather than inline."
 msgstr ""
 
-#: c-family/c.opt:910
+#: config/rs6000/rs6000.opt:483
 #, no-c-format
 msgid ""
-"Warn about C++11 inheriting constructors when the base has a variadic "
-"constructor."
+"Fuse certain integer operations together for better performance on power8."
 msgstr ""
 
-#: c-family/c.opt:914
+#: config/rs6000/rs6000.opt:487
 #, no-c-format
-msgid ""
-"Warn about incompatible integer to pointer and pointer to integer "
-"conversions."
+msgid "Allow sign extension in fusion operations."
 msgstr ""
 
-#: c-family/c.opt:918
+#: config/rs6000/rs6000.opt:491
 #, no-c-format
-msgid "Warn for suspicious integer expressions in boolean context."
+msgid "Use vector and scalar instructions added in ISA 2.07."
 msgstr ""
 
-#: c-family/c.opt:922
+#: config/rs6000/rs6000.opt:495
 #, no-c-format
 msgid ""
-"Warn when there is a cast to a pointer from an integer of a different size."
+"Fuse certain integer operations together for better performance on power10."
 msgstr ""
 
-#: c-family/c.opt:926
+#: config/rs6000/rs6000.opt:499
 #, no-c-format
-msgid "Warn when a function never produces a constant expression."
+msgid "Use ISA 2.07 Category:Vector.AES and Category:Vector.SHA2 instructions."
 msgstr ""
 
-#: c-family/c.opt:930
+#: config/rs6000/rs6000.opt:506
 #, no-c-format
-msgid "Warn about invalid uses of the \"offsetof\" macro."
+msgid "Use ISA 2.07 transactional memory (HTM) instructions."
 msgstr ""
 
-#: c-family/c.opt:934
+#: config/rs6000/rs6000.opt:510
 #, no-c-format
-msgid "Warn about PCH files that are found but not used."
+msgid "Generate the quad word memory instructions (lq/stq)."
 msgstr ""
 
-#: c-family/c.opt:938
+#: config/rs6000/rs6000.opt:514
 #, no-c-format
-msgid "Warn about invalid UTF-8 characters."
+msgid "Generate the quad word memory atomic instructions (lqarx/stqcx)."
 msgstr ""
 
-#: c-family/c.opt:942
+#: config/rs6000/rs6000.opt:518
 #, no-c-format
-msgid "Warn when a jump misses a variable initialization."
+msgid ""
+"Generate aggregate parameter passing code with at most 64-bit alignment."
 msgstr ""
 
-#: c-family/c.opt:961
+#: config/rs6000/rs6000.opt:522
 #, no-c-format
-msgid ""
-"Warn about leading whitespace style issues on lines except when in raw "
-"string literals."
+msgid "Analyze and remove doubleword swaps from VSX computations."
 msgstr ""
 
-#: c-family/c.opt:965
+#: config/rs6000/rs6000.opt:530
 #, no-c-format
-msgid ""
-"Warn when a string or character literal is followed by a ud-suffix which "
-"does not begin with an underscore."
+msgid "Use certain scalar instructions added in ISA 3.0."
 msgstr ""
 
-#: c-family/c.opt:969
+#: config/rs6000/rs6000.opt:534
 #, no-c-format
-msgid ""
-"Warn when logical not is used on the left hand side operand of a comparison."
+msgid "Use vector instructions added in ISA 3.0."
 msgstr ""
 
-#: c-family/c.opt:973
+#: config/rs6000/rs6000.opt:538
 #, no-c-format
-msgid ""
-"Warn when a logical operator is suspiciously always evaluating to true or "
-"false."
+msgid "Use the new min/max instructions defined in ISA 3.0."
 msgstr ""
 
-#: c-family/c.opt:977
+#: config/rs6000/rs6000.opt:542
 #, no-c-format
-msgid "Do not warn about using \"long long\" when -pedantic."
+msgid "Generate the integer modulo instructions."
 msgstr ""
 
-#: c-family/c.opt:981
+#: config/rs6000/rs6000.opt:546
 #, no-c-format
-msgid "Warn about suspicious declarations of \"main\"."
+msgid "Enable IEEE 128-bit floating point via the __float128 keyword."
 msgstr ""
 
-#: c-family/c.opt:993
+#: config/rs6000/rs6000.opt:550
 #, no-c-format
-msgid ""
-"Warn about suspicious calls to memset where the third argument contains the "
-"number of elements not multiplied by the element size."
+msgid "Enable using IEEE 128-bit floating point instructions."
 msgstr ""
 
-#: c-family/c.opt:997
+#: config/rs6000/rs6000.opt:554
 #, no-c-format
-msgid ""
-"Warn about suspicious calls to memset where the third argument is constant "
-"literal zero and the second is not."
+msgid "Enable default conversions between __float128 & long double."
 msgstr ""
 
-#: c-family/c.opt:1001
+#: config/rs6000/rs6000.opt:558 config/riscv/riscv.opt:200
+#: config/i386/i386.opt:1009 config/arm/arm.opt:347
+#: config/aarch64/aarch64.opt:337 config/s390/s390.opt:201
 #, no-c-format
-msgid ""
-"Warn when the indentation of the code does not reflect the block structure."
+msgid "Use given stack-protector guard."
 msgstr ""
 
-#: c-family/c.opt:1005
+#: config/rs6000/rs6000.opt:562 config/riscv/riscv.opt:204
+#: config/arm/arm.opt:351 config/aarch64/aarch64.opt:341
+#: config/s390/s390.opt:205
 #, no-c-format
-msgid ""
-"Warn for deallocation calls with arguments returned from mismatched "
-"allocation functions."
+msgid "Valid arguments to -mstack-protector-guard=:"
 msgstr ""
 
-#: c-family/c.opt:1010
+#: config/rs6000/rs6000.opt:572 config/riscv/riscv.opt:214
+#: config/i386/i386.opt:1023
 #, no-c-format
-msgid ""
-"Warn for mismatches between calls to operator new or delete and the "
-"corresponding call to the allocation or deallocation function."
+msgid "Use the given base register for addressing the stack-protector guard."
 msgstr ""
 
-#: c-family/c.opt:1015
+#: config/rs6000/rs6000.opt:579 config/riscv/riscv.opt:221
+#: config/i386/i386.opt:1030
 #, no-c-format
-msgid ""
-"Warn when a class is redeclared or referenced using a mismatched class-key."
+msgid "Use the given offset for addressing the stack-protector guard."
 msgstr ""
 
-#: c-family/c.opt:1019
+#: config/rs6000/rs6000.opt:600
 #, no-c-format
-msgid ""
-"Warn about declarations of entities that may be missing attributes that "
-"related entities have been declared with."
+msgid "Generate (do not generate) prefixed memory instructions."
 msgstr ""
 
-#: c-family/c.opt:1024
+#: config/rs6000/rs6000.opt:604
 #, no-c-format
-msgid "Warn about possibly missing braces around initializers."
+msgid "Generate (do not generate) pc-relative memory addressing."
 msgstr ""
 
-#: c-family/c.opt:1028
+#: config/rs6000/rs6000.opt:608
 #, no-c-format
-msgid "Warn about global functions without previous declarations."
+msgid ""
+"Generate (do not generate) pc-relative memory optimizations for externals."
 msgstr ""
 
-#: c-family/c.opt:1032
+#: config/rs6000/rs6000.opt:612
 #, no-c-format
-msgid "Warn about missing fields in struct initializers."
+msgid "Generate (do not generate) MMA instructions."
 msgstr ""
 
-#: c-family/c.opt:1040
+#: config/rs6000/rs6000.opt:619
 #, no-c-format
-msgid "Warn about user-specified include directories that do not exist."
+msgid ""
+"Enable instructions that guard against return-oriented programming attacks."
 msgstr ""
 
-#: c-family/c.opt:1044
+#: config/rs6000/rs6000.opt:623
 #, no-c-format
-msgid "Warn about function definitions omitting parameter names."
+msgid "Generate code that will run in privileged state."
 msgstr ""
 
-#: c-family/c.opt:1048
+#: config/rs6000/rs6000.opt:627
 #, no-c-format
-msgid ""
-"Warn about function parameters declared without a type specifier in K&R-"
-"style functions."
+msgid "Generate (do not generate) code that uses the XXSPLTIW instruction."
 msgstr ""
 
-#: c-family/c.opt:1052
+#: config/rs6000/rs6000.opt:631
 #, no-c-format
-msgid "Warn about global functions without prototypes."
+msgid "Generate (do not generate) code that uses the XXSPLTIDP instruction."
 msgstr ""
 
-#: c-family/c.opt:1056
+#: config/rs6000/rs6000.opt:635
 #, no-c-format
-msgid "Warn about likely missing requires keyword."
+msgid "Generate (do not generate) code that uses the LXVKQ instruction."
 msgstr ""
 
-#: c-family/c.opt:1060
+#: config/rs6000/rs6000.opt:641
 #, no-c-format
 msgid ""
-"Warn when the template keyword is missing after a member access token in a "
-"dependent member access expression if that member is a template."
+"Used to limit unroll factor which indicates how much the autovectorizer may "
+"unroll a loop.  The default value is 4."
 msgstr ""
 
-#: c-family/c.opt:1064
+#: config/rs6000/rs6000.opt:647
 #, no-c-format
-msgid "Warn about global variables without previous declarations."
+msgid ""
+"When costing for loop vectorization, we probably need to penalize the loop "
+"body cost if the existing cost model may not adequately reflect delays from "
+"unavailable vector resources.  We collect the cost for vectorized statements "
+"and non-vectorized statements separately, check the proportion of vec_cost "
+"to total cost of vec_cost and non vec_cost, and penalize only if the "
+"proportion exceeds the threshold specified by this parameter.  The default "
+"value is 85."
 msgstr ""
 
-#: c-family/c.opt:1071
+#: config/rs6000/rs6000.opt:656
 #, no-c-format
-msgid "Warn about use of multi-character character constants."
+msgid ""
+"Like parameter rs6000-density-pct-threshold, we also check the total sum of "
+"vec_cost and non vec_cost, and penalize only if the sum exceeds the "
+"threshold specified by this parameter.  The default value is 70."
 msgstr ""
 
-#: c-family/c.opt:1075
+#: config/rs6000/rs6000.opt:662
 #, no-c-format
-msgid "Warn on direct multiple inheritance."
+msgid ""
+"When both heuristics with rs6000-density-pct-threshold and rs6000-density-"
+"size-threshold are satisfied, we decide to penalize the loop body cost by "
+"the value which is specified by this parameter.  The default value is 10."
 msgstr ""
 
-#: c-family/c.opt:1079
+#: config/rs6000/rs6000.opt:669
 #, no-c-format
 msgid ""
-"Warn about unsafe macros expanding to multiple statements used as a body of "
-"a clause such as if, else, while, switch, or for."
+"When costing for loop vectorization, we probably need to penalize the loop "
+"body cost by accounting for excess strided or elementwise loads.  We collect "
+"the numbers for general statements and load statements according to the "
+"information for statements to be vectorized, check the proportion of load "
+"statements, and penalize only if the proportion exceeds the threshold "
+"specified by this parameter.  The default value is 45."
 msgstr ""
 
-#: c-family/c.opt:1083
+#: config/rs6000/rs6000.opt:678
 #, no-c-format
-msgid "Warn on namespace definition."
+msgid ""
+"Like parameter rs6000-density-load-pct-threshold, we also check if the total "
+"number of load statements exceeds the threshold specified by this parameter, "
+"and penalize only if it's satisfied.  The default value is 20."
 msgstr ""
 
-#: c-family/c.opt:1087
+#: config/rs6000/rs6000.opt:684 config/loongarch/loongarch.opt:334
 #, no-c-format
 msgid ""
-"Warn about narrowing conversions within { } that are ill-formed in C++11."
+"Indicate how many non memory access vector instructions can be issued per "
+"cycle, it's used in unroll factor determination for autovectorizer.  The "
+"default value is 4."
 msgstr ""
 
-#: c-family/c.opt:1091
+#: config/rs6000/rs6000.opt:690
 #, no-c-format
-msgid "Warn about \"extern\" declarations not at file scope."
+msgid ""
+"When reduction factor computed for a loop exceeds the threshold specified by "
+"this parameter, prefer to unroll this loop.  The default value is 1."
 msgstr ""
 
-#: c-family/c.opt:1095
+#: config/rs6000/476.opt:24
 #, no-c-format
 msgid ""
-"Warn when a noexcept expression evaluates to false even though the "
-"expression can't actually throw."
+"Preserve the PowerPC 476's link stack by matching up a blr with the bcl/bl "
+"insns used for GOT accesses."
 msgstr ""
 
-#: c-family/c.opt:1099
+#: config/rs6000/aix64.opt:24
 #, no-c-format
-msgid ""
-"Warn if C++17 noexcept function type will change the mangled name of a "
-"symbol."
+msgid "Compile for 64-bit pointers."
 msgstr ""
 
-#: c-family/c.opt:1103
+#: config/rs6000/aix64.opt:28
 #, no-c-format
-msgid ""
-"Warn when non-templatized friend functions are declared within a template."
+msgid "Compile for 32-bit pointers."
 msgstr ""
 
-#: c-family/c.opt:1107
+#: config/rs6000/aix64.opt:32 config/rs6000/linux64.opt:28
 #, no-c-format
-msgid "Warn about non-virtual destructors."
+msgid "Select code model."
 msgstr ""
 
-#: c-family/c.opt:1111
+#: config/rs6000/aix64.opt:36 config/rs6000/linux64.opt:32
+#: config/riscv/riscv.opt:141 config/i386/i386.opt:296
 #, no-c-format
-msgid ""
-"Warn about NULL being passed to argument slots marked as requiring non-NULL."
+msgid "Known code models (for use with the -mcmodel= option):"
 msgstr ""
 
-#: c-family/c.opt:1127
+#: config/rs6000/aix64.opt:49
 #, no-c-format
-msgid ""
-"-Wnormalized=[none|id|nfc|nfkc]\tWarn about non-normalized Unicode strings."
+msgid "Support message passing with the Parallel Environment."
 msgstr ""
 
-#: c-family/c.opt:1150
+#: config/rs6000/darwin.opt:38 config/rs6000/sysv4.opt:146
 #, no-c-format
-msgid ""
-"Warn if a class interface has no superclass.  Root classes may use an "
-"attribute to suppress this warning."
+msgid "Generate 64-bit code."
 msgstr ""
 
-#: c-family/c.opt:1155
+#: config/rs6000/darwin.opt:42 config/rs6000/sysv4.opt:150
 #, no-c-format
-msgid "Warn if a C-style cast is used in a program."
+msgid "Generate 32-bit code."
 msgstr ""
 
-#: c-family/c.opt:1159
+#: config/rs6000/linux64.opt:24
 #, no-c-format
-msgid "Warn for obsolescent usage in a declaration."
+msgid "Call mcount for profiling before a function prologue."
 msgstr ""
 
-#: c-family/c.opt:1163
+#: config/rs6000/sysv4.opt:24
 #, no-c-format
-msgid "Warn if an old-style parameter definition is used."
+msgid "-mcall-ABI\tSelect ABI calling convention."
 msgstr ""
 
-#: c-family/c.opt:1167
+#: config/rs6000/sysv4.opt:28
 #, no-c-format
-msgid ""
-"Warn about potentially suboptimal choices related to OpenACC parallelism."
+msgid "-msdata=[none,data,sysv,eabi]\tSelect method for sdata handling."
 msgstr ""
 
-#: c-family/c.opt:1171
+#: config/rs6000/sysv4.opt:32
 #, no-c-format
-msgid "Warn about suspicious OpenMP code."
+msgid "Allow readonly data in sdata."
+msgstr ""
+
+#: config/rs6000/sysv4.opt:36
+#, no-c-format
+msgid "-mtls-size=[16,32]\tSpecify bit size of immediate TLS offsets."
 msgstr ""
 
-#: c-family/c.opt:1175
+#: config/rs6000/sysv4.opt:52
 #, no-c-format
-msgid "Warn if a simd directive is overridden by the vectorizer cost model."
+msgid "Align to the base type of the bit-field."
 msgstr ""
 
-#: c-family/c.opt:1179
+#: config/rs6000/sysv4.opt:56
 #, no-c-format
 msgid ""
-"Warn if a string is longer than the maximum portable length specified by the "
-"standard."
+"Align to the base type of the bit-field. Don't assume that unaligned "
+"accesses are handled by the system."
 msgstr ""
 
-#: c-family/c.opt:1183 c-family/c.opt:1187
+#: config/rs6000/sysv4.opt:61 config/rs6000/sysv4.opt:65
 #, no-c-format
-msgid "Warn about overloaded virtual function names."
+msgid "Produce code relocatable at runtime."
 msgstr ""
 
-#: c-family/c.opt:1191
+#: config/rs6000/sysv4.opt:69 config/rs6000/sysv4.opt:73
 #, no-c-format
-msgid "Warn about overriding initializers without side effects."
+msgid "Produce little endian code."
 msgstr ""
 
-#: c-family/c.opt:1195
+#: config/rs6000/sysv4.opt:77 config/rs6000/sysv4.opt:81
 #, no-c-format
-msgid "Warn about overriding initializers with side effects."
+msgid "Produce big endian code."
 msgstr ""
 
-#: c-family/c.opt:1199
+#: config/rs6000/sysv4.opt:86 config/rs6000/sysv4.opt:90
+#: config/rs6000/sysv4.opt:99 config/rs6000/sysv4.opt:142
+#: config/rs6000/sysv4.opt:155
 #, no-c-format
-msgid ""
-"Warn if the named return value optimization is not performed although it is "
-"allowed."
+msgid "No description yet."
 msgstr ""
 
-#: c-family/c.opt:1203
+#: config/rs6000/sysv4.opt:94
 #, no-c-format
-msgid "Warn about packed bit-fields whose offset changed in GCC 4.4."
+msgid "Assume all variable arg functions are prototyped."
 msgstr ""
 
-#: c-family/c.opt:1207
+#: config/rs6000/sysv4.opt:103
 #, no-c-format
-msgid "Warn when fields in a struct with the packed attribute are misaligned."
+msgid "Use EABI."
 msgstr ""
 
-#: c-family/c.opt:1211
+#: config/rs6000/sysv4.opt:107
 #, no-c-format
-msgid "Warn about possibly missing parentheses."
+msgid "Allow bit-fields to cross word boundaries."
 msgstr ""
 
-#: c-family/c.opt:1219
+#: config/rs6000/sysv4.opt:111
 #, no-c-format
-msgid ""
-"Warn about calling std::move on a local object in a return statement "
-"preventing copy elision."
+msgid "Use alternate register names."
 msgstr ""
 
-#: c-family/c.opt:1223 c-family/c.opt:1227
+#: config/rs6000/sysv4.opt:117
 #, no-c-format
-msgid "Warn for placement new expressions with undefined behavior."
+msgid "Use default method for sdata handling."
 msgstr ""
 
-#: c-family/c.opt:1231
+#: config/rs6000/sysv4.opt:121
 #, no-c-format
-msgid "Warn when converting the type of pointers to member functions."
+msgid "Link with libsim.a, libc.a and sim-crt0.o."
 msgstr ""
 
-#: c-family/c.opt:1235
+#: config/rs6000/sysv4.opt:125
 #, no-c-format
-msgid "Warn about function pointer arithmetic."
+msgid "Link with libads.a, libc.a and crt0.o."
 msgstr ""
 
-#: c-family/c.opt:1239
+#: config/rs6000/sysv4.opt:129
 #, no-c-format
-msgid "Warn when a pointer differs in signedness in an assignment."
+msgid "Link with libyk.a, libc.a and crt0.o."
 msgstr ""
 
-#: c-family/c.opt:1243
+#: config/rs6000/sysv4.opt:133
 #, no-c-format
-msgid "Warn when a pointer is compared with a zero character constant."
+msgid "Link with libmvme.a, libc.a and crt0.o."
 msgstr ""
 
-#: c-family/c.opt:1247
+#: config/rs6000/sysv4.opt:137
 #, no-c-format
-msgid "Warn when a pointer is cast to an integer of a different size."
+msgid "Set the PPC_EMB bit in the ELF flags header."
 msgstr ""
 
-#: c-family/c.opt:1251
+#: config/rs6000/sysv4.opt:159
 #, no-c-format
-msgid "Warn about misuses of pragmas."
+msgid "Generate code to use a non-exec PLT and GOT."
 msgstr ""
 
-#: c-family/c.opt:1255
+#: config/rs6000/sysv4.opt:163
 #, no-c-format
-msgid "Warn about #pragma once outside of a header."
+msgid "Generate code for old exec BSS PLT."
 msgstr ""
 
-#: c-family/c.opt:1259
+#: config/rs6000/sysv4.opt:167
 #, no-c-format
-msgid ""
-"Warn if constructor or destructors with priorities from 0 to 100 are used."
+msgid "Use inline plt sequences to implement long calls and -fno-plt."
 msgstr ""
 
-#: c-family/c.opt:1263
+#: config/rs6000/sysv4.opt:171
 #, no-c-format
-msgid ""
-"Warn if a property for an Objective-C object has no assign semantics "
-"specified."
+msgid "Emit .gnu_attribute tags."
 msgstr ""
 
-#: c-family/c.opt:1267
+#: config/linux.opt:24
 #, no-c-format
-msgid "Warn if inherited methods are unimplemented."
+msgid "Use Bionic C library."
 msgstr ""
 
-#: c-family/c.opt:1271
+#: config/linux.opt:28
 #, no-c-format
-msgid "Warn when a range-based for-loop is creating unnecessary copies."
+msgid "Use GNU C library."
 msgstr ""
 
-#: c-family/c.opt:1275
+#: config/linux.opt:32
 #, no-c-format
-msgid "Warn about multiple declarations of the same object."
+msgid "Use uClibc C library."
 msgstr ""
 
-#: c-family/c.opt:1279
+#: config/linux.opt:36
 #, no-c-format
-msgid "Warn about redundant calls to std::move."
+msgid "Use musl C library."
 msgstr ""
 
-#: c-family/c.opt:1283
+#: config/bpf/bpf.opt:28
 #, no-c-format
-msgid ""
-"Warn when a class or enumerated type is referenced using a redundant class-"
-"key."
+msgid "Generate xBPF."
 msgstr ""
 
-#: c-family/c.opt:1287
+#: config/bpf/bpf.opt:34
 #, no-c-format
-msgid "Warn about uses of register storage specifier."
+msgid "Generate big-endian eBPF."
 msgstr ""
 
-#: c-family/c.opt:1291
+#: config/bpf/bpf.opt:38
 #, no-c-format
-msgid "Warn when the compiler reorders code."
+msgid "Generate little-endian eBPF."
 msgstr ""
 
-#: c-family/c.opt:1295
+#: config/bpf/bpf.opt:42
 #, no-c-format
-msgid ""
-"Warn when an argument passed to a restrict-qualified parameter aliases with "
-"another argument."
+msgid "Set a hard limit for the size of each stack frame, in bytes."
 msgstr ""
 
-#: c-family/c.opt:1300
+#: config/bpf/bpf.opt:46
 #, no-c-format
 msgid ""
-"Warn whenever void-returning functions return a non-void expressions, or a "
-"return expression is missing in a function not returning void."
+"Generate all necessary information for BPF Compile Once - Run Everywhere."
 msgstr ""
 
-#: c-family/c.opt:1304
+#: config/bpf/bpf.opt:52
 #, no-c-format
-msgid ""
-"Warn whenever a function's return type defaults to \"int\" (C), or about "
-"inconsistent return types (C++)."
+msgid "Enable extra conditional-branch instructions j(s)lt and j(s)le."
 msgstr ""
 
-#: c-family/c.opt:1308
+#: config/bpf/bpf.opt:56
 #, no-c-format
-msgid "Warn on suspicious constructs involving reverse scalar storage order."
+msgid "Enable 32-bit ALU instructions."
 msgstr ""
 
-#: c-family/c.opt:1312
+#: config/bpf/bpf.opt:60
 #, no-c-format
-msgid "Warn if a selector has multiple methods."
+msgid "Enable 32-bit jump instructions."
 msgstr ""
 
-#: c-family/c.opt:1316
+#: config/bpf/bpf.opt:64
 #, no-c-format
-msgid "Warn when a value is moved to itself with std::move."
+msgid "Enable general atomic operations introduced in v3 ISA."
 msgstr ""
 
-#: c-family/c.opt:1320
+#: config/bpf/bpf.opt:68
 #, no-c-format
-msgid "Warn about possible violations of sequence point rules."
+msgid "Enable byte swap instructions."
 msgstr ""
 
-#: c-family/c.opt:1324
+#: config/bpf/bpf.opt:72
 #, no-c-format
-msgid "Warn if a local declaration hides an instance variable."
+msgid "Enable signed division and modulus instructions."
 msgstr ""
 
-#: c-family/c.opt:1328 c-family/c.opt:1332
+#: config/bpf/bpf.opt:76
 #, no-c-format
-msgid "Warn if left shift of a signed value overflows."
+msgid "Enable signed move and memory load instructions."
 msgstr ""
 
-#: c-family/c.opt:1336
+#: config/bpf/bpf.opt:80
 #, no-c-format
-msgid "Warn if shift count is negative."
+msgid "Select the eBPF ISA version to target in code generation."
 msgstr ""
 
-#: c-family/c.opt:1340
+#: config/bpf/bpf.opt:84
 #, no-c-format
-msgid "Warn if shift count >= width of type."
+msgid "Valid ISA versions (for use with the -mcpu= option)"
 msgstr ""
 
-#: c-family/c.opt:1344
+#: config/bpf/bpf.opt:100 config/i386/i386.opt:270
 #, no-c-format
-msgid "Warn if left shifting a negative value."
+msgid "Use given assembler dialect."
 msgstr ""
 
-#: c-family/c.opt:1348
+#: config/bpf/bpf.opt:104
 #, no-c-format
-msgid "Warn about signed-unsigned comparisons."
+msgid "Known assembler dialects (for use with the -masm= option)"
 msgstr ""
 
-#: c-family/c.opt:1356
+#: config/bpf/bpf.opt:114
 #, no-c-format
 msgid ""
-"Warn for implicit type conversions between signed and unsigned integers."
+"-minline-memops-threshold=<number> Maximum size of memset/memmove/memcpy to "
+"inline, larger sizes will use a library call."
 msgstr ""
 
-#: c-family/c.opt:1360
+#: config/lm32/lm32.opt:24
 #, no-c-format
-msgid "Warn when overload promotes from unsigned to signed."
+msgid "Enable multiply instructions."
 msgstr ""
 
-#: c-family/c.opt:1364
+#: config/lm32/lm32.opt:28
 #, no-c-format
-msgid "Warn about missing sized deallocation functions."
+msgid "Enable divide and modulus instructions."
 msgstr ""
 
-#: c-family/c.opt:1368
+#: config/lm32/lm32.opt:32
 #, no-c-format
-msgid ""
-"Warn about divisions of two sizeof operators when the first one is applied "
-"to an array and the divisor does not equal the size of the array element."
+msgid "Enable barrel shift instructions."
 msgstr ""
 
-#: c-family/c.opt:1373
+#: config/lm32/lm32.opt:36
 #, no-c-format
-msgid "Warn when sizeof is applied on a parameter declared as an array."
+msgid "Enable sign extend instructions."
 msgstr ""
 
-#: c-family/c.opt:1377
+#: config/lm32/lm32.opt:40
 #, no-c-format
-msgid ""
-"Warn about suspicious divisions of two sizeof expressions that don't work "
-"correctly with pointers."
+msgid "Enable user-defined instructions."
 msgstr ""
 
-#: c-family/c.opt:1381
+#: config/vax/vax.opt:23 config/vax/vax.opt:27
 #, no-c-format
-msgid ""
-"Warn about suspicious length parameters to certain string functions if the "
-"argument uses sizeof."
+msgid "Generate DFLOAT double-precision code."
 msgstr ""
 
-#: c-family/c.opt:1389
+#: config/vax/vax.opt:31 config/vax/vax.opt:35
 #, no-c-format
-msgid ""
-"Warn about improper usages of flexible array members according to the level "
-"of -fstrict-flex-arrays."
+msgid "Generate GFLOAT double-precision code."
 msgstr ""
 
-#: c-family/c.opt:1394
+#: config/vax/vax.opt:39
 #, no-c-format
-msgid "Warn about uncasted NULL used as sentinel."
+msgid "Generate code for GNU assembler (gas)."
 msgstr ""
 
-#: c-family/c.opt:1402
+#: config/vax/vax.opt:43
 #, no-c-format
-msgid "Warn about unprototyped function declarations."
+msgid "Generate code for UNIX assembler."
 msgstr ""
 
-#: c-family/c.opt:1406
+#: config/vax/vax.opt:47
 #, no-c-format
-msgid "Warn if type signatures of candidate methods do not match exactly."
+msgid "Enable Local Register Allocation."
 msgstr ""
 
-#: c-family/c.opt:1410
+#: config/vax/vax.opt:51
 #, no-c-format
-msgid ""
-"Warn about calls to strcmp and strncmp used in equality expressions that are "
-"necessarily true or false due to the length of one and size of the other "
-"argument."
+msgid "Use VAXC structure conventions."
 msgstr ""
 
-#: c-family/c.opt:1416
+#: config/vax/vax.opt:55
 #, no-c-format
-msgid ""
-"Warn about buffer overflow in string manipulation functions like memcpy and "
-"strcpy."
+msgid "Use new adddi3/subdi3 patterns."
 msgstr ""
 
-#: c-family/c.opt:1421
+#: config/riscv/riscv.opt:26 config/arm/arm.opt:103
+#: config/microblaze/microblaze.opt:60 config/aarch64/aarch64.opt:83
 #, no-c-format
-msgid ""
-"Under the control of Object Size type, warn about buffer overflow in string "
-"manipulation functions like memcpy and strcpy."
+msgid "Assume target CPU is configured as big endian."
 msgstr ""
 
-#: c-family/c.opt:1426
+#: config/riscv/riscv.opt:30 config/arm/arm.opt:168
+#: config/microblaze/microblaze.opt:64 config/aarch64/aarch64.opt:108
 #, no-c-format
-msgid ""
-"Warn about reading past the end of a source array in string manipulation "
-"functions like memchr and memcpy."
+msgid "Assume target CPU is configured as little endian."
 msgstr ""
 
-#: c-family/c.opt:1430
+#: config/riscv/riscv.opt:34
 #, no-c-format
-msgid ""
-"Warn about truncation in string manipulation functions like strncat and "
-"strncpy."
+msgid "-mbranch-cost=N\tSet the cost of branches to roughly N instructions."
 msgstr ""
 
-#: c-family/c.opt:1434
+#: config/riscv/riscv.opt:38
 #, no-c-format
-msgid ""
-"Warn if a class type has a base or a field whose type uses the anonymous "
-"namespace or depends on a type with no linkage."
+msgid "This option is deprecated; use -fplt or -fno-plt instead."
 msgstr ""
 
-#: c-family/c.opt:1438
+#: config/riscv/riscv.opt:42
 #, no-c-format
-msgid "Warn about functions which might be candidates for format attributes."
+msgid "Specify integer and floating-point calling convention."
 msgstr ""
 
-#: c-family/c.opt:1442
+#: config/riscv/riscv.opt:46 config/i386/i386.opt:437
 #, no-c-format
-msgid ""
-"Suggest that the override keyword be used when the declaration of a virtual "
-"function overrides another."
+msgid "Attempt to keep stack aligned to this power of 2."
 msgstr ""
 
-#: c-family/c.opt:1447
+#: config/riscv/riscv.opt:50
 #, no-c-format
-msgid "Warn about enumerated switches, with no default, missing a case."
+msgid "Supported ABIs (for use with the -mabi= option):"
 msgstr ""
 
-#: c-family/c.opt:1451
+#: config/riscv/riscv.opt:78
 #, no-c-format
-msgid "Warn about enumerated switches missing a \"default:\" statement."
+msgid "Use hardware floating-point divide and square root instructions."
 msgstr ""
 
-#: c-family/c.opt:1455
+#: config/riscv/riscv.opt:82
 #, no-c-format
-msgid "Warn about all enumerated switches missing a specific case."
+msgid "Use hardware instructions for integer division."
 msgstr ""
 
-#: c-family/c.opt:1459
+#: config/riscv/riscv.opt:86
 #, no-c-format
-msgid "Warn about switches with boolean controlling expression."
+msgid ""
+"-march=\tGenerate code for given RISC-V ISA (e.g. RV64IM).  ISA strings must "
+"be lower-case."
 msgstr ""
 
-#: c-family/c.opt:1463
+#: config/riscv/riscv.opt:91
 #, no-c-format
-msgid "Warn about switch values that are outside of the switch's type range."
+msgid "-march=help\tPrint supported -march extensions."
 msgstr ""
 
-#: c-family/c.opt:1467
+#: config/riscv/riscv.opt:103 config/mips/mips.opt:426
 #, no-c-format
-msgid ""
-"Warn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions "
-"are used."
+msgid "-mtune=PROCESSOR\tOptimize the output for PROCESSOR."
 msgstr ""
 
-#: c-family/c.opt:1471
+#: config/riscv/riscv.opt:107
 #, no-c-format
-msgid "Deprecated.  This switch has no effect."
+msgid ""
+"-mcpu=PROCESSOR\tUse architecture of and optimize the output for PROCESSOR."
 msgstr ""
 
-#: c-family/c.opt:1479
+#: config/riscv/riscv.opt:111
 #, no-c-format
-msgid "Warn on primary template declaration."
+msgid ""
+"-msmall-data-limit=N\tPut global and static data smaller than <number> bytes "
+"into a special section (on some targets)."
 msgstr ""
 
-#: c-family/c.opt:1483
+#: config/riscv/riscv.opt:115
 #, no-c-format
-msgid "Diagnose errors when parsing a template."
+msgid "Use smaller but slower prologue and epilogue code."
 msgstr ""
 
-#: c-family/c.opt:1487
+#: config/riscv/riscv.opt:119
 #, no-c-format
-msgid "Warn about simple-template-id in a constructor or destructor."
+msgid ""
+"Convert BASE + LARGE_OFFSET addresses to NEW_BASE + SMALL_OFFSET to allow "
+"more memory accesses to be generated as compressed instructions.  Currently "
+"targets 32-bit integer load/stores."
 msgstr ""
 
-#: c-family/c.opt:1491
+#: config/riscv/riscv.opt:125 config/aarch64/aarch64.opt:112
+#: config/loongarch/loongarch.opt:298
 #, no-c-format
-msgid "Warn about templates naming TU-local entities in a module."
+msgid "Specify the code model."
 msgstr ""
 
-#: c-family/c.opt:1495
+#: config/riscv/riscv.opt:129 config/loongarch/loongarch.opt:234
 #, no-c-format
-msgid "Warn if a throw expression will always result in a call to terminate()."
+msgid "Do not generate unaligned memory accesses."
 msgstr ""
 
-#: c-family/c.opt:1499
+#: config/riscv/riscv.opt:133
 #, no-c-format
-msgid "Warn about features not present in traditional C."
+msgid "Do not generate unaligned scalar memory accesses."
 msgstr ""
 
-#: c-family/c.opt:1503
+#: config/riscv/riscv.opt:137
 #, no-c-format
-msgid ""
-"Warn of prototypes causing type conversions different from what would happen "
-"in the absence of prototype."
+msgid "Do not create element-misaligned vector memory accesses."
 msgstr ""
 
-#: c-family/c.opt:1519
+#: config/riscv/riscv.opt:154
 #, no-c-format
-msgid ""
-"Warn about trailing whitespace on lines except when in raw string literals."
+msgid "Use %reloc() operators, rather than assembly macros, to load addresses."
 msgstr ""
 
-#: c-family/c.opt:1523
+#: config/riscv/riscv.opt:158 config/loongarch/loongarch.opt:306
 #, no-c-format
 msgid ""
-"Warn about trailing whitespace on lines except when in raw string "
-"literals.   Equivalent to Wtrailing-whitespace=blanks when enabled or "
-"Wtrailing-whitespace=none when disabled."
+"Take advantage of linker relaxations to reduce the number of instructions "
+"required to materialize symbol addresses."
 msgstr ""
 
-#: c-family/c.opt:1527
+#: config/riscv/riscv.opt:163
 #, no-c-format
 msgid ""
-"Warn if trigraphs are encountered that might affect the meaning of the "
-"program."
+"Enable the CSR checking for the ISA-dependent CSR and the read-only CSR. The "
+"ISA-dependent CSR are only valid when the specific ISA is set.  The read-"
+"only CSR can not be written by the CSR instructions."
 msgstr ""
 
-#: c-family/c.opt:1531
+#: config/riscv/riscv.opt:169 config/i386/i386.opt:413
+#: config/aarch64/aarch64.opt:155
 #, no-c-format
-msgid "Warn about @selector()s without previously declared methods."
+msgid "Omit the frame pointer in leaf functions."
 msgstr ""
 
-#: c-family/c.opt:1535
+#: config/riscv/riscv.opt:182
 #, no-c-format
-msgid "Warn if an undefined macro is used in an #if directive."
+msgid "Emit RISC-V ELF attribute."
 msgstr ""
 
-#: c-family/c.opt:1539
+#: config/riscv/riscv.opt:186 config/i386/i386.opt:249
 #, no-c-format
-msgid "Warn about invalid forms of delimited or named escape sequences."
+msgid "Use the given data alignment."
 msgstr ""
 
-#: c-family/c.opt:1547
+#: config/riscv/riscv.opt:190 config/i386/i386.opt:253
 #, no-c-format
-msgid "Warn about unrecognized pragmas."
+msgid "Known data alignment choices (for use with the -malign-data= option):"
 msgstr ""
 
-#: c-family/c.opt:1551
+#: config/riscv/riscv.opt:246
 #, no-c-format
-msgid "Warn about unsuffixed float constants."
+msgid "Supported ISA specs (for use with the -misa-spec= option):"
 msgstr ""
 
-#: c-family/c.opt:1555
+#: config/riscv/riscv.opt:259
 #, no-c-format
-msgid ""
-"Warn about character arrays initialized as unterminated character sequences "
-"with a string literal."
+msgid "Set the version of RISC-V ISA spec."
 msgstr ""
 
-#: c-family/c.opt:1571
+#: config/riscv/riscv.opt:263
 #, no-c-format
-msgid "Warn when typedefs locally defined in a function are not used."
+msgid "Enable conditional moves unconditionally."
 msgstr ""
 
-#: c-family/c.opt:1575
+#: config/riscv/riscv.opt:267
 #, no-c-format
-msgid "Warn about macros defined in the main file that are not used."
+msgid "Always inline subword atomic operations."
 msgstr ""
 
-#: c-family/c.opt:1595
+#: config/riscv/riscv.opt:271
 #, no-c-format
-msgid "Warn about useless casts."
+msgid "Inline strcmp calls if possible."
 msgstr ""
 
-#: c-family/c.opt:1599
+#: config/riscv/riscv.opt:275
 #, no-c-format
-msgid "Warn about using variadic macros."
+msgid "Inline strncmp calls if possible."
 msgstr ""
 
-#: c-family/c.opt:1603
+#: config/riscv/riscv.opt:279
 #, no-c-format
-msgid ""
-"Warn about questionable usage of the macros used to retrieve variable "
-"arguments."
+msgid "Inline strlen calls if possible."
 msgstr ""
 
-#: c-family/c.opt:1607
+#: config/riscv/riscv.opt:283
 #, no-c-format
-msgid "Warn about the most vexing parse syntactic ambiguity."
+msgid ""
+"Max number of bytes to compare as part of inlined strcmp/strncmp routines "
+"(default: 64)."
 msgstr ""
 
-#: c-family/c.opt:1611
+#: config/riscv/riscv.opt:287
 #, no-c-format
-msgid "Warn if a virtual base has a non-trivial move assignment operator."
+msgid "Set the cost value of the rvv instruction when operate from GPR to VR."
 msgstr ""
 
-#: c-family/c.opt:1615
+#: config/riscv/riscv.opt:291
 #, no-c-format
-msgid "Warn if a variable length array is used."
+msgid "Set the cost value of the rvv instruction when operate from VR to GPR ."
 msgstr ""
 
-#: c-family/c.opt:1619
+#: config/riscv/riscv.opt:295
 #, no-c-format
-msgid ""
-"-Wvla-larger-than=<number>\tWarn on unbounded uses of variable-length "
-"arrays, and on bounded uses of variable-length arrays whose bound can be "
-"larger than <number> bytes."
+msgid "Set the cost value of the rvv instruction when operate from FPR to VR."
 msgstr ""
 
-#: c-family/c.opt:1625
+#: config/riscv/riscv.opt:299
 #, no-c-format
-msgid ""
-"Disable Wvla-larger-than= warning.  Equivalent to Wvla-larger-"
-"than=<SIZE_MAX> or larger."
+msgid "Set the cost value of the rvv instruction when operate from VR to FPR."
 msgstr ""
 
-#: c-family/c.opt:1629
+#: config/riscv/riscv.opt:303
 #, no-c-format
-msgid "Warn about mismatched declarations of VLA parameters."
+msgid "Set the only autovec mode to try."
 msgstr ""
 
-#: c-family/c.opt:1633
+#: config/riscv/riscv.opt:307
 #, no-c-format
-msgid "Warn about deprecated uses of volatile qualifier."
+msgid "The RVV possible LMUL (-mrvv-max-lmul=):"
 msgstr ""
 
-#: c-family/c.opt:1637
+#: config/riscv/riscv.opt:329
 #, no-c-format
-msgid "Warn when a register variable is declared volatile."
+msgid "-mrvv-max-lmul=<string>\tSet the RVV LMUL of auto-vectorization."
 msgstr ""
 
-#: c-family/c.opt:1641
+#: config/riscv/riscv.opt:336
 #, no-c-format
-msgid "Warn on direct virtual inheritance."
+msgid "Valid arguments to -param=vsetvl-strategy=:"
 msgstr ""
 
-#: c-family/c.opt:1645
+#: config/riscv/riscv.opt:349
 #, no-c-format
 msgid ""
-"In C++, nonzero means warn about deprecated conversion from string literals "
-"to 'char *'.  In C, similar warning, except that the conversion is of course "
-"not deprecated by the ISO C standard."
+"-param=vsetvl-strategy=<string>\tSet the optimization level of VSETVL insert "
+"pass."
 msgstr ""
 
-#: c-family/c.opt:1649
+#: config/riscv/riscv.opt:353
 #, no-c-format
 msgid ""
-"Warn about xor operators where it appears the user meant exponentiation."
+"-param=riscv-two-source-permutes Enable permutes with two source vectors."
 msgstr ""
 
-#: c-family/c.opt:1653
+#: config/riscv/riscv.opt:357 config/aarch64/aarch64.opt:315
 #, no-c-format
-msgid "Warn when a literal '0' is used as null pointer."
+msgid ""
+"Override the scalar cost model such that vectorization is always profitable."
 msgstr ""
 
-#: c-family/c.opt:1657
+#: config/riscv/riscv.opt:361 config/i386/i386.opt:489
 #, no-c-format
-msgid "Warn about accesses to interior zero-length array members."
+msgid "Valid arguments to -mstringop-strategy=:"
 msgstr ""
 
-#: c-family/c.opt:1661
+#: config/riscv/riscv.opt:377
 #, no-c-format
-msgid "A synonym for -std=c89 (for C) or -std=c++98 (for C++)."
+msgid "Specify stringop expansion strategy."
 msgstr ""
 
-#: c-family/c.opt:1669
+#: config/riscv/riscv.opt:381
 #, no-c-format
 msgid ""
-"The version of the C++ ABI used for -Wabi warnings and link compatibility "
-"aliases."
+"Constant memcpy size in bytes above which to start using libcalls over "
+"inlining."
 msgstr ""
 
-#: c-family/c.opt:1673
+#: config/riscv/riscv.opt:385
 #, no-c-format
-msgid "Enforce class member access control semantics."
+msgid ""
+"Constant memmove size in bytes above which to start using libcalls over "
+"inlining."
 msgstr ""
 
-#: c-family/c.opt:1677
+#: config/riscv/riscv.opt:389
 #, no-c-format
-msgid "-fada-spec-parent=unit\tDump Ada specs as child units of given parent."
+msgid ""
+"Constant memset size in bytes above which to start using libcalls over "
+"inlining."
 msgstr ""
 
-#: c-family/c.opt:1681
+#: config/riscv/riscv.opt:393
 #, no-c-format
-msgid "Support C++17 allocation of over-aligned types."
+msgid "The possible RVV vector register lengths:"
 msgstr ""
 
-#: c-family/c.opt:1685
+#: config/riscv/riscv.opt:403
 #, no-c-format
 msgid ""
-"-faligned-new=<N>\tUse C++17 over-aligned type allocation for alignments "
-"greater than N."
+"-mrvv-vector-bits=<string>\tSet the kind of bits for an RVV vector register."
 msgstr ""
 
-#: c-family/c.opt:1696 c-family/c.opt:2017 c-family/c.opt:2430
-#: c-family/c.opt:2434 c-family/c.opt:2450
+#: config/riscv/riscv.opt:407 config/aarch64/aarch64.opt:58
+#: config/loongarch/loongarch.opt:315
 #, no-c-format
-msgid "No longer supported."
+msgid "The possible TLS dialects:"
 msgstr ""
 
-#: c-family/c.opt:1700
+#: config/riscv/riscv.opt:417 config/aarch64/aarch64.opt:159
+#: config/loongarch/loongarch.opt:325
 #, no-c-format
-msgid "Recognize the \"asm\" keyword."
+msgid "Specify TLS dialect."
 msgstr ""
 
-#: c-family/c.opt:1704
+#: config/riscv/riscv.opt:421
 #, no-c-format
-msgid ""
-"Assume C++ replaceable global operators new, new[], delete, delete[] don't "
-"read or write visible global state."
+msgid "Specifies whether the fence.tso instruction should be used."
 msgstr ""
 
-#: c-family/c.opt:1712
+#: config/riscv/riscv.opt:425
 #, no-c-format
-msgid "Recognize built-in functions."
+msgid ""
+"Enable (default) or disable generation of vector segment load/store "
+"instructions."
 msgstr ""
 
-#: c-family/c.opt:1719
+#: config/csky/csky.opt:34
 #, no-c-format
-msgid "Where shorter, use canonicalized paths to systems headers."
+msgid "Specify the target architecture."
 msgstr ""
 
-#: c-family/c.opt:1723
+#: config/csky/csky.opt:38
 #, no-c-format
-msgid ""
-"Enable the char8_t fundamental type and use it as the type for UTF-8 string "
-"and character literals."
+msgid "Specify the target processor."
 msgstr ""
 
-#: c-family/c.opt:1811
+#: config/csky/csky.opt:73 config/arm/arm.opt:119
 #, no-c-format
-msgid "Removed in GCC 8.  This switch has no effect."
+msgid "Specify if floating point hardware should be used."
 msgstr ""
 
-#: c-family/c.opt:1815
+#: config/csky/csky.opt:77 config/arm/arm.opt:127
 #, no-c-format
-msgid "Enable support for C++ concepts."
+msgid "Known floating-point ABIs (for use with the -mfloat-abi= option):"
 msgstr ""
 
-#: c-family/c.opt:1819
+#: config/csky/csky.opt:90
 #, no-c-format
-msgid "Removed in GCC 15.  This switch has no effect."
+msgid "Specify the target floating-point hardware/format."
 msgstr ""
 
-#: c-family/c.opt:1823
+#: config/csky/csky.opt:94
 #, no-c-format
-msgid ""
-"Specify maximum error replay depth during recursive diagnosis of a "
-"constraint satisfaction failure."
+msgid "Generate C-SKY FPU double float instructions (default for hard float)."
 msgstr ""
 
-#: c-family/c.opt:1827
+#: config/csky/csky.opt:98
 #, no-c-format
-msgid "Allow the arguments of the '?' operator to have different types."
+msgid "Generate frecipd/fsqrtd/fdivd instructions (default for hard float)."
 msgstr ""
 
-#: c-family/c.opt:1835
+#: config/csky/csky.opt:106
 #, no-c-format
-msgid "-fconst-string-class=<name>\tUse class <name> for constant strings."
+msgid "Enable the extended LRW instruction (default for CK801)."
 msgstr ""
 
-#: c-family/c.opt:1839
+#: config/csky/csky.opt:110
 #, no-c-format
-msgid "-fconstexpr-depth=<number>\tSpecify maximum constexpr recursion depth."
+msgid "Enable interrupt stack instructions."
 msgstr ""
 
-#: c-family/c.opt:1843
+#: config/csky/csky.opt:114
 #, no-c-format
-msgid ""
-"-fconstexpr-cache-depth=<number>\tSpecify maximum constexpr recursion cache "
-"depth."
+msgid "Enable multiprocessor instructions."
 msgstr ""
 
-#: c-family/c.opt:1847
+#: config/csky/csky.opt:118
 #, no-c-format
-msgid "Allow IEC559 floating point exceptions in constant expressions."
+msgid "Enable coprocessor instructions."
 msgstr ""
 
-#: c-family/c.opt:1851
+#: config/csky/csky.opt:122
 #, no-c-format
-msgid ""
-"-fconstexpr-loop-limit=<number>\tSpecify maximum constexpr loop iteration "
-"count."
+msgid "Enable cache prefetch instructions."
 msgstr ""
 
-#: c-family/c.opt:1855
+#: config/csky/csky.opt:126
 #, no-c-format
-msgid ""
-"-fconstexpr-ops-limit=<number>\tSpecify maximum number of constexpr "
-"operations during a single constexpr evaluation."
+msgid "Enable C-SKY SECURE instructions."
 msgstr ""
 
-#: c-family/c.opt:1859
+#: config/csky/csky.opt:133
 #, no-c-format
-msgid "Enable certain features present in drafts of C++ Contracts."
+msgid "Enable C-SKY TRUST instructions."
 msgstr ""
 
-#: c-family/c.opt:1872
+#: config/csky/csky.opt:137
 #, no-c-format
-msgid ""
-"-fcontract-assumption-mode=[on|off]\tEnable or disable treating axiom level "
-"contracts as assumptions (default on)."
+msgid "Enable C-SKY DSP instructions."
 msgstr ""
 
-#: c-family/c.opt:1876
+#: config/csky/csky.opt:141
 #, no-c-format
-msgid ""
-"-fcontract-build-level=[off|default|audit]\tSpecify max contract level to "
-"generate runtime checks for."
+msgid "Enable C-SKY Enhanced DSP instructions."
 msgstr ""
 
-#: c-family/c.opt:1880
+#: config/csky/csky.opt:145
 #, no-c-format
-msgid ""
-"-fcontract-strict-declarations=[on|off]\tEnable or disable warnings on "
-"generalized redeclaration of functions with contracts (default off)."
+msgid "Enable C-SKY Vector DSP instructions."
 msgstr ""
 
-#: c-family/c.opt:1884
+#: config/csky/csky.opt:151
 #, no-c-format
-msgid ""
-"-fcontract-mode=[on|off]\tEnable or disable all contract facilities (default "
-"on)."
+msgid "Generate divide instructions."
 msgstr ""
 
-#: c-family/c.opt:1888
+#: config/csky/csky.opt:155
 #, no-c-format
-msgid ""
-"-fcontract-continuation-mode=[on|off]\tEnable or disable contract "
-"continuation mode (default off)."
+msgid "Generate code for Smart Mode."
 msgstr ""
 
-#: c-family/c.opt:1892
+#: config/csky/csky.opt:159
 #, no-c-format
-msgid ""
-"-fcontract-role=<name>:<semantics>\tSpecify the semantics for all levels in "
-"a role (default, review), or a custom contract role with given semantics "
-"(ex: opt:assume,assume,assume)."
+msgid "Enable use of R16-R31 (default)."
 msgstr ""
 
-#: c-family/c.opt:1896
+#: config/csky/csky.opt:163
 #, no-c-format
-msgid ""
-"-fcontract-semantic=<level>:<semantic>\tSpecify the concrete semantics for "
-"level."
+msgid "Generate code using global anchor symbol addresses."
 msgstr ""
 
-#: c-family/c.opt:1900
+#: config/csky/csky.opt:167
 #, no-c-format
-msgid "Enable C++ coroutines (experimental)."
+msgid "Generate push/pop instructions (default)."
 msgstr ""
 
-#: c-family/c.opt:1904
+#: config/csky/csky.opt:171
 #, no-c-format
-msgid "Emit debug annotations during preprocessing."
+msgid "Generate stm/ldm instructions (default)."
 msgstr ""
 
-#: c-family/c.opt:1912
+#: config/csky/csky.opt:178
 #, no-c-format
-msgid "Factor complex constructors and destructors to favor space over speed."
+msgid "Generate constant pools in the compiler instead of assembler."
 msgstr ""
 
-#: c-family/c.opt:1920
+#: config/csky/csky.opt:182
 #, no-c-format
-msgid "Print hierarchical comparisons when template types are mismatched."
+msgid "Emit .stack_size directives."
 msgstr ""
 
-#: c-family/c.opt:1924
+#: config/csky/csky.opt:186
 #, no-c-format
-msgid "Note all candidates during overload resolution failure."
+msgid "Generate code for C-SKY compiler runtime instead of libgcc."
 msgstr ""
 
-#: c-family/c.opt:1928
+#: config/csky/csky.opt:190
 #, no-c-format
-msgid "Preprocess directives only."
+msgid "Set the branch costs to roughly the specified number of instructions."
 msgstr ""
 
-#: c-family/c.opt:1932
+#: config/csky/csky.opt:194
 #, no-c-format
-msgid "Permit '$' as an identifier character."
+msgid "Permit scheduling of function prologue and epilogue sequences."
 msgstr ""
 
-#: c-family/c.opt:1936
+#: config/csky/csky_tables.opt:24
 #, no-c-format
-msgid ""
-"-fmacro-prefix-map=<old>=<new>\tMap one directory name to another in "
-"__FILE__, __BASE_FILE__, and __builtin_FILE()."
+msgid "Known CSKY CPUs (for use with the -mcpu= options):"
 msgstr ""
 
-#: c-family/c.opt:1940
+#: config/csky/csky_tables.opt:205
 #, no-c-format
-msgid "Write all declarations as Ada code transitively."
+msgid "Known CSKY architectures (for use with the -march= option):"
 msgstr ""
 
-#: c-family/c.opt:1944
+#: config/csky/csky_tables.opt:227
 #, no-c-format
-msgid "Write all declarations as Ada code for the given file only."
+msgid "Known CSKY FPUs (for use with the -mfpu= option):"
 msgstr ""
 
-#: c-family/c.opt:1951
+#: config/visium/visium.opt:25
 #, no-c-format
-msgid "Do not elide common elements in template comparisons."
+msgid "Link with libc.a and libdebug.a."
 msgstr ""
 
-#: c-family/c.opt:1955
+#: config/visium/visium.opt:29
 #, no-c-format
-msgid "Generate code to check exception specifications."
+msgid "Link with libc.a and libsim.a."
 msgstr ""
 
-#: c-family/c.opt:1962
+#: config/visium/visium.opt:33
 #, no-c-format
-msgid ""
-"-fexec-charset=<cset>\tConvert all strings and character constants to "
-"character set <cset>."
+msgid "Use hardware FP (default)."
 msgstr ""
 
-#: c-family/c.opt:1966
+#: config/visium/visium.opt:37 config/sparc/sparc.opt:30
+#: config/sparc/sparc.opt:34
 #, no-c-format
-msgid "Permit universal character names (\\u and \\U) in identifiers."
+msgid "Use hardware FP."
 msgstr ""
 
-#: c-family/c.opt:1970
+#: config/visium/visium.opt:41 config/sparc/sparc.opt:38
 #, no-c-format
-msgid ""
-"-finput-charset=<cset>\tSpecify the default character set for source files."
+msgid "Do not use hardware FP."
 msgstr ""
 
-#: c-family/c.opt:1974
+#: config/visium/visium.opt:45
 #, no-c-format
-msgid ""
-"Support dynamic initialization of thread-local variables in a different "
-"translation unit."
+msgid "Use features of and schedule code for given CPU."
 msgstr ""
 
-#: c-family/c.opt:1981
+#: config/visium/visium.opt:49 config/sparc/sparc.opt:146
+#: config/i386/i386.opt:535 config/s390/s390.opt:227 config/ia64/ia64.opt:122
 #, no-c-format
-msgid "Fold calls to simple inline functions."
+msgid "Schedule code for given CPU."
 msgstr ""
 
-#: c-family/c.opt:1988
+#: config/visium/visium.opt:65
 #, no-c-format
-msgid "Do not assume that standard C libraries and \"main\" exist."
+msgid "Generate code for the supervisor mode (default)."
 msgstr ""
 
-#: c-family/c.opt:1992
+#: config/visium/visium.opt:69
 #, no-c-format
-msgid "Recognize GNU-defined keywords."
+msgid "Generate code for the user mode."
 msgstr ""
 
-#: c-family/c.opt:1996
+#: config/visium/visium.opt:73
 #, no-c-format
-msgid "Generate code for GNU runtime environment."
+msgid "Only retained for backward compatibility."
 msgstr ""
 
-#: c-family/c.opt:2000
+#: config/alpha/alpha.opt:23 config/i386/i386.opt:461
 #, no-c-format
-msgid "Use traditional GNU semantics for inline functions."
+msgid "Do not use hardware fp."
 msgstr ""
 
-#: c-family/c.opt:2013
+#: config/alpha/alpha.opt:27
 #, no-c-format
-msgid "Assume normal C execution environment."
+msgid "Use fp registers."
 msgstr ""
 
-#: c-family/c.opt:2021
+#: config/alpha/alpha.opt:31 fortran/lang.opt:214 fortran/lang.opt:551
+#: analyzer/analyzer.opt:295 analyzer/analyzer.opt:359 common.opt:697
+#: common.opt:855 common.opt:1131 common.opt:1135 common.opt:1139
+#: common.opt:1143 common.opt:1935 common.opt:2040 common.opt:2222
+#: common.opt:2226 common.opt:2545 common.opt:2771 common.opt:3552
+#: c-family/c.opt:1517 c-family/c.opt:1738
 #, no-c-format
-msgid "Implement P2564 for consteval propagation."
+msgid "Does nothing. Preserved for backward compatibility."
 msgstr ""
 
-#: c-family/c.opt:2025
+#: config/alpha/alpha.opt:35
 #, no-c-format
-msgid "Export functions even if they can be inlined."
+msgid "Request IEEE-conformant math library routines (OSF/1)."
 msgstr ""
 
-#: c-family/c.opt:2029
+#: config/alpha/alpha.opt:39
 #, no-c-format
-msgid "Make inline functions constexpr by default."
+msgid "Emit IEEE-conformant code, without inexact exceptions."
 msgstr ""
 
-#: c-family/c.opt:2033
+#: config/alpha/alpha.opt:46
 #, no-c-format
-msgid "Emit implicit instantiations of inline templates."
+msgid "Do not emit complex integer constants to read-only memory."
 msgstr ""
 
-#: c-family/c.opt:2037
+#: config/alpha/alpha.opt:50
 #, no-c-format
-msgid "Emit implicit instantiations of templates."
+msgid "Use VAX fp."
 msgstr ""
 
-#: c-family/c.opt:2041
+#: config/alpha/alpha.opt:54
 #, no-c-format
-msgid "Implement C++17 inheriting constructor semantics."
+msgid "Do not use VAX fp."
 msgstr ""
 
-#: c-family/c.opt:2048
+#: config/alpha/alpha.opt:58
 #, no-c-format
-msgid "Don't emit dllexported inline functions unless needed."
+msgid "Emit code for the byte/word ISA extension."
 msgstr ""
 
-#: c-family/c.opt:2055
+#: config/alpha/alpha.opt:62
 #, no-c-format
-msgid ""
-"Allow implicit conversions between vectors with differing numbers of "
-"subparts and/or differing element types."
+msgid "Emit code for the motion video ISA extension."
 msgstr ""
 
-#: c-family/c.opt:2059
+#: config/alpha/alpha.opt:66
 #, no-c-format
-msgid "Enable C++20 Modules (experimental)."
+msgid "Emit code for the fp move and sqrt ISA extension."
 msgstr ""
 
-#: c-family/c.opt:2067
+#: config/alpha/alpha.opt:70
 #, no-c-format
-msgid "Enable C++ header module (experimental)."
+msgid "Emit code for the counting ISA extension."
 msgstr ""
 
-#: c-family/c.opt:2074
+#: config/alpha/alpha.opt:74
 #, no-c-format
 msgid ""
-"Member functions defined within their class are inline in module purview."
+"Emit multi-thread and async-signal safe code for byte and word memory "
+"accesses."
 msgstr ""
 
-#: c-family/c.opt:2078
+#: config/alpha/alpha.opt:78
 #, no-c-format
-msgid "Only emit Compiled Module Interface."
+msgid ""
+"Emit multi-thread and async-signal safe code for partial memory accesses."
 msgstr ""
 
-#: c-family/c.opt:2082
+#: config/alpha/alpha.opt:82
 #, no-c-format
-msgid "Mapper for module to CMI files."
+msgid "Emit code using explicit relocation directives."
 msgstr ""
 
-#: c-family/c.opt:2086
+#: config/alpha/alpha.opt:86
 #, no-c-format
-msgid "Enable lazy module importing."
+msgid "Emit 16-bit relocations to the small data areas."
 msgstr ""
 
-#: c-family/c.opt:2094
+#: config/alpha/alpha.opt:90
 #, no-c-format
-msgid "Warn about macros that have conflicting header units definitions."
+msgid "Emit 32-bit relocations to the small data areas."
 msgstr ""
 
-#: c-family/c.opt:2098
+#: config/alpha/alpha.opt:94
 #, no-c-format
-msgid "Warn if pointers of distinct types are compared without a cast."
+msgid "Emit direct branches to local functions."
 msgstr ""
 
-#: c-family/c.opt:2102
+#: config/alpha/alpha.opt:98
 #, no-c-format
-msgid "Note #include directives translated to import declarations."
+msgid "Emit indirect branches to local functions."
 msgstr ""
 
-#: c-family/c.opt:2106
+#: config/alpha/alpha.opt:102
 #, no-c-format
-msgid ""
-"Note #include directives not translated to import declarations, and not "
-"known to be textual."
+msgid "Emit rdval instead of rduniq for thread pointer."
 msgstr ""
 
-#: c-family/c.opt:2110
+#: config/alpha/alpha.opt:106 config/sparc/long-double-switch.opt:23
+#: config/i386/i386.opt:218 config/s390/s390.opt:165
 #, no-c-format
-msgid "Note a #include translation of a specific header."
+msgid "Use 128-bit long double."
 msgstr ""
 
-#: c-family/c.opt:2114
+#: config/alpha/alpha.opt:110 config/sparc/long-double-switch.opt:27
+#: config/i386/i386.opt:214 config/s390/s390.opt:169
 #, no-c-format
-msgid "Note Compiled Module Interface pathnames."
+msgid "Use 64-bit long double."
 msgstr ""
 
-#: c-family/c.opt:2118
+#: config/alpha/alpha.opt:114
 #, no-c-format
-msgid ""
-"Note Compiled Module Interface pathname of a specific module or header-unit."
+msgid "Use features of and schedule given CPU."
 msgstr ""
 
-#: c-family/c.opt:2122
+#: config/alpha/alpha.opt:118
 #, no-c-format
-msgid ""
-"fmax-include-depth=<number> Set the maximum depth of the nested #include."
+msgid "Schedule given CPU."
 msgstr ""
 
-#: c-family/c.opt:2126
+#: config/alpha/alpha.opt:122
 #, no-c-format
-msgid "Don't warn about uses of Microsoft extensions."
+msgid "Control the generated fp rounding mode."
 msgstr ""
 
-#: c-family/c.opt:2145
+#: config/alpha/alpha.opt:126
 #, no-c-format
-msgid ""
-"Implement resolution of DR 150 for matching of template template arguments."
+msgid "Control the IEEE trap mode."
 msgstr ""
 
-#: c-family/c.opt:2149
+#: config/alpha/alpha.opt:130
 #, no-c-format
-msgid "Generate code for NeXT (Apple macOS) runtime environment."
+msgid "Control the precision given to fp exceptions."
 msgstr ""
 
-#: c-family/c.opt:2153
+#: config/alpha/alpha.opt:134
 #, no-c-format
-msgid "Assume that receivers of Objective-C messages may be nil."
+msgid "Tune expected memory latency."
 msgstr ""
 
-#: c-family/c.opt:2157
+#: config/alpha/alpha.opt:138 config/ia64/ia64.opt:118
 #, no-c-format
-msgid ""
-"Allow access to instance variables as if they were local declarations within "
-"instance method implementations."
+msgid "Specify bit size of immediate TLS offsets."
 msgstr ""
 
-#: c-family/c.opt:2161
+#: config/avr/avr.opt:23
 #, no-c-format
-msgid ""
-"-fvisibility=[private|protected|public|package]\tSet the default symbol "
-"visibility."
+msgid "Optimization. Use subroutines for function prologues and epilogues."
 msgstr ""
 
-#: c-family/c.opt:2186
+#: config/avr/avr.opt:27
 #, no-c-format
-msgid ""
-"Treat a throw() exception specification as noexcept to improve code size."
+msgid "Use a startup code with a compact vector table."
 msgstr ""
 
-#: c-family/c.opt:2190
+#: config/avr/avr.opt:31
 #, no-c-format
-msgid ""
-"Specify which ABI to use for Objective-C family code and meta-data "
-"generation."
+msgid "-mmcu=<MCU>\tSelect the target MCU."
 msgstr ""
 
-#: c-family/c.opt:2196
+#: config/avr/avr.opt:35
 #, no-c-format
 msgid ""
-"Generate special Objective-C methods to initialize/destroy non-POD C++ "
-"ivars, if needed."
+"Optimization. Allow usage of __gcc_isr pseudo instructions in ISR prologues "
+"and epilogues."
 msgstr ""
 
-#: c-family/c.opt:2200
+#: config/avr/avr.opt:39
 #, no-c-format
-msgid "Allow fast jumps to the message dispatcher."
+msgid ""
+"This option is used internally. Set the number of 64 KiB flash segments."
 msgstr ""
 
-#: c-family/c.opt:2206
+#: config/avr/avr.opt:43
 #, no-c-format
-msgid "Enable Objective-C exception and synchronization syntax."
+msgid "Call main and exit (default)."
 msgstr ""
 
-#: c-family/c.opt:2210
+#: config/avr/avr.opt:47
 #, no-c-format
-msgid "Enable garbage collection (GC) in Objective-C/Objective-C++ programs."
+msgid ""
+"This option is used internally. Indicate presence of a processor erratum.  "
+"Do not skip 32-bit instructions."
 msgstr ""
 
-#: c-family/c.opt:2214
+#: config/avr/avr.opt:51
 #, no-c-format
 msgid ""
-"Enable inline checks for nil receivers with the NeXT runtime and ABI version "
-"2."
+"This option is used internally. Enable Read-Modify-Write (RMW) instructions "
+"support/use."
 msgstr ""
 
-#: c-family/c.opt:2219
+#: config/avr/avr.opt:62
 #, no-c-format
-msgid "Enable Objective-C setjmp exception handling runtime."
+msgid "This option is on per default in order to work around PR118012."
 msgstr ""
 
-#: c-family/c.opt:2223
+#: config/avr/avr.opt:66
 #, no-c-format
-msgid "Conform to the Objective-C 1.0 language as implemented in GCC 4.0."
+msgid "Optimization. Allow to use nonzero_bits() in some insn conditions."
 msgstr ""
 
-#: c-family/c.opt:2227
+#: config/avr/avr.opt:70
 #, no-c-format
-msgid "Enable OpenACC."
+msgid ""
+"This option is used internally for multilib generation and selection.  "
+"Assume RJMP / RCALL can target all program memory."
 msgstr ""
 
-#: c-family/c.opt:2231
+#: config/avr/avr.opt:74
 #, no-c-format
-msgid "Specify default OpenACC compute dimensions."
+msgid "Use an 8-bit 'int' type."
 msgstr ""
 
-#: c-family/c.opt:2235
+#: config/avr/avr.opt:78
 #, no-c-format
-msgid "Enable OpenMP (implies -frecursive in Fortran)."
+msgid "Change the stack pointer without disabling interrupts."
 msgstr ""
 
-#: c-family/c.opt:2239
+#: config/avr/avr.opt:82
 #, no-c-format
-msgid "Enable OpenMP's SIMD directives."
+msgid ""
+"-mbranch-cost=<cost>\tOptimization. Set the branch costs for conditional "
+"branch instructions.  Reasonable values are small, non-negative integers.  "
+"The default branch cost is 0."
 msgstr ""
 
-#: c-family/c.opt:2243
+#: config/avr/avr.opt:86
 #, no-c-format
-msgid "Recognize C++ keywords like \"compl\" and \"xor\"."
+msgid "Optimization. Treat main as if it had attribute OS_task."
 msgstr ""
 
-#: c-family/c.opt:2254
+#: config/avr/avr.opt:96
 #, no-c-format
-msgid "Look for and use PCH files even when preprocessing."
+msgid "Change only the low 8 bits of the stack pointer."
 msgstr ""
 
-#: c-family/c.opt:2258
+#: config/avr/avr.opt:100
 #, no-c-format
-msgid "Downgrade conformance errors to warnings."
+msgid "Optimization. Relax branches."
 msgstr ""
 
-#: c-family/c.opt:2262
-#, no-c-format
-msgid "Enable Plan 9 language extensions."
-msgstr ""
-
-#: c-family/c.opt:2266
+#: config/avr/avr.opt:104
 #, no-c-format
-msgid "Treat the input file as already preprocessed."
+msgid ""
+"Make the linker relaxation machine assume that a program counter wrap-around "
+"occurs."
 msgstr ""
 
-#: c-family/c.opt:2274
+#: config/avr/avr.opt:108
 #, no-c-format
 msgid ""
-"-ftrack-macro-expansion=<0|1|2>\tTrack locations of tokens coming from macro "
-"expansion and display them in error messages."
+"Optimization. Accumulate outgoing function arguments and acquire/release the "
+"needed stack space for outgoing function arguments in function prologue/"
+"epilogue.  Without this option, outgoing arguments are pushed before calling "
+"a function and popped afterwards.  This option can lead to reduced code size "
+"for functions that call many functions that get their arguments on the stack "
+"like, for example printf."
 msgstr ""
 
-#: c-family/c.opt:2278
+#: config/avr/avr.opt:112
 #, no-c-format
 msgid ""
-"Do not pretty-print template specializations as the template signature "
-"followed by the arguments."
+"Optimization. Split shifts of 4-byte values into a byte shift and a residual "
+"bit shift."
 msgstr ""
 
-#: c-family/c.opt:2282
+#: config/avr/avr.opt:116
 #, no-c-format
-msgid "Treat known sprintf return values as constants."
+msgid ""
+"Optimization. Split most of the load and store instructions into byte load "
+"and stores."
 msgstr ""
 
-#: c-family/c.opt:2286
+#: config/avr/avr.opt:120
 #, no-c-format
-msgid "Enable lifetime extension of range based for temporaries."
+msgid ""
+"Optimization. When accessing RAM, use X as imposed by the hardware, i.e. "
+"just use pre-decrement, post-increment and indirect addressing with the X "
+"register.  Without this option, the compiler may assume that there is an "
+"addressing mode X+const similar to Y+const and Z+const and emit instructions "
+"to emulate such an addressing mode for X."
 msgstr ""
 
-#: c-family/c.opt:2290
+#: config/avr/avr.opt:124
 #, no-c-format
 msgid ""
-"Used in Fix-and-Continue mode to indicate that object files may be swapped "
-"in at runtime."
+"This option is used internally. The device has the bitfield "
+"NVMCTRL_CTRLB.FLMAP."
 msgstr ""
 
-#: c-family/c.opt:2294
+#: config/avr/avr.opt:128
 #, no-c-format
-msgid "Removed in GCC 10.  This switch has no effect."
+msgid "The device has the .rodata section located in the RAM area."
 msgstr ""
 
-#: c-family/c.opt:2298
+#: config/avr/avr.opt:133
 #, no-c-format
-msgid "Generate run time type descriptor information."
+msgid ""
+"This option is used internally for multilib generation and selection. The "
+"device has no SPH special function register."
 msgstr ""
 
-#: c-family/c.opt:2302
+#: config/avr/avr.opt:137
 #, no-c-format
-msgid "Look for the main source file on the include path."
+msgid ""
+"Optimization. Split register additions from load/store instructions. Most "
+"useful on Reduced Tiny."
 msgstr ""
 
-#: c-family/c.opt:2309 ada/gcc-interface/lang.opt:81
+#: config/avr/avr.opt:141
 #, no-c-format
-msgid "Use the narrowest integer type possible for enumeration types."
+msgid ""
+"-mfuse-add=<0,2>\tOptimization. Split register additions from load/store "
+"instructions. Most useful on Reduced Tiny."
 msgstr ""
 
-#: c-family/c.opt:2313
+#: config/avr/avr.opt:145
 #, no-c-format
-msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"."
+msgid "Warn if the address space of an address is changed."
 msgstr ""
 
-#: c-family/c.opt:2317
+#: config/avr/avr.opt:149
 #, no-c-format
-msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed."
+msgid ""
+"Warn if the ISR is misspelled, i.e. without __vector prefix. Enabled by "
+"default."
 msgstr ""
 
-#: c-family/c.opt:2321 ada/gcc-interface/lang.opt:85
+#: config/avr/avr.opt:153
 #, no-c-format
-msgid "Make \"char\" signed by default."
+msgid ""
+"Allow to use truncation instead of rounding towards zero for fractional "
+"fixed-point types."
 msgstr ""
 
-#: c-family/c.opt:2325
+#: config/avr/avr.opt:157
 #, no-c-format
-msgid "Enable C++14 sized deallocation support."
+msgid "Optimization. Run a post-reload pass that tweaks move instructions."
 msgstr ""
 
-#: c-family/c.opt:2332
+#: config/avr/avr.opt:161
 #, no-c-format
 msgid ""
-"-fstrict-flex-arrays=<level>    Control when to treat the trailing array of "
-"a structure as a flexible array member for the purposes of accessing the "
-"elements of such an array. The default is treating all trailing arrays of "
-"structures as flexible array members."
+"-mfuse-move=<0,23>\tOptimization. Run a post-reload pass that tweaks move "
+"instructions."
 msgstr ""
 
-#: c-family/c.opt:2339
+#: config/avr/avr.opt:165
 #, no-c-format
-msgid ""
-"-fsso-struct=[big-endian|little-endian|native]\tSet the default scalar "
-"storage order."
+msgid "Optimization. Fuse some move insns after insn combine."
 msgstr ""
 
-#: c-family/c.opt:2355
+#: config/avr/avr.opt:169
 #, no-c-format
-msgid "Display statistics accumulated during compilation."
+msgid ""
+"Assume that all data in static storage can be accessed by LDS / STS "
+"instructions.  This option is only useful for reduced Tiny devices like "
+"ATtiny40."
 msgstr ""
 
-#: c-family/c.opt:2359
+#: config/avr/avr.opt:173
 #, no-c-format
-msgid ""
-"Assume that values of enumeration type are always within the minimum range "
-"of that type."
+msgid "-mdouble=<BITS>\tUse <BITS> bits wide double type."
 msgstr ""
 
-#: c-family/c.opt:2366 c-family/c.opt:2371
+#: config/avr/avr.opt:177
 #, no-c-format
-msgid ""
-"Follow the C++17 evaluation order requirements for assignment expressions, "
-"shift, member function calls, etc."
+msgid "-mlong-double=<BITS>\tUse <BITS> bits wide long double type."
 msgstr ""
 
-#: c-family/c.opt:2388
+#: config/avr/avr.opt:181
 #, no-c-format
-msgid ""
-"Set the maximum number of template instantiation notes for a single warning "
-"or error."
+msgid "Do not link against the device-specific library lib<MCU>.a."
 msgstr ""
 
-#: c-family/c.opt:2395
+#: config/avr/avr.opt:185
 #, no-c-format
-msgid ""
-"-ftemplate-depth=<number>\tSpecify maximum template instantiation depth."
+msgid "Do not use the device-specific specs file device-specs/specs-<MCU>."
 msgstr ""
 
-#: c-family/c.opt:2402
+#: config/avr/avr.opt:189
 #, no-c-format
-msgid ""
-"-fno-threadsafe-statics\tDo not generate thread-safe code for initializing "
-"local statics."
+msgid "Available BITS selections:"
 msgstr ""
 
-#: c-family/c.opt:2406
+#: config/cris/cris.opt:45
 #, no-c-format
-msgid ""
-"When \"signed\" or \"unsigned\" is not given make the bitfield unsigned."
+msgid "Work around bug in multiplication instruction."
 msgstr ""
 
-#: c-family/c.opt:2410 ada/gcc-interface/lang.opt:89
+#: config/cris/cris.opt:51
 #, no-c-format
-msgid "Make \"char\" unsigned by default."
+msgid "Compile for ETRAX 4 (CRIS v3)."
 msgstr ""
 
-#: c-family/c.opt:2414
+#: config/cris/cris.opt:56
 #, no-c-format
-msgid "Use __cxa_atexit to register destructors."
+msgid "Compile for ETRAX 100 (CRIS v8)."
 msgstr ""
 
-#: c-family/c.opt:2418
+#: config/cris/cris.opt:64
 #, no-c-format
-msgid "Use __cxa_get_exception_ptr in exception handling."
+msgid "Emit verbose debug information in assembly code."
 msgstr ""
 
-#: c-family/c.opt:2422
+#: config/cris/cris.opt:71
 #, no-c-format
-msgid "Marks all inlined functions and methods as having hidden visibility."
+msgid "Do not use condition codes from normal instructions."
 msgstr ""
 
-#: c-family/c.opt:2426
+#: config/cris/cris.opt:80
 #, no-c-format
-msgid "Changes visibility to match Microsoft Visual Studio by default."
+msgid "Do not emit addressing modes with side-effect assignment."
 msgstr ""
 
-#: c-family/c.opt:2438
+#: config/cris/cris.opt:89
 #, no-c-format
-msgid "Emit common-like symbols as weak symbols."
+msgid "Do not tune stack alignment."
 msgstr ""
 
-#: c-family/c.opt:2442
+#: config/cris/cris.opt:98
 #, no-c-format
-msgid ""
-"-fwide-exec-charset=<cset>\tConvert all wide strings and character constants "
-"to character set <cset>."
+msgid "Do not tune writable data alignment."
 msgstr ""
 
-#: c-family/c.opt:2446
+#: config/cris/cris.opt:107
 #, no-c-format
-msgid "Generate a #line directive pointing at the current working directory."
+msgid "Do not tune code and read-only data alignment."
 msgstr ""
 
-#: c-family/c.opt:2454
+#: config/cris/cris.opt:112 config/cris/cris.opt:117
 #, no-c-format
-msgid ""
-"Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode."
+msgid "Align code and data to 32 bits."
 msgstr ""
 
-#: c-family/c.opt:2458
+#: config/cris/cris.opt:122 config/cris/cris.opt:127
 #, no-c-format
-msgid "Dump declarations to a .decl file."
+msgid "Align code and data to 16 bits."
 msgstr ""
 
-#: c-family/c.opt:2462
+#: config/cris/cris.opt:132 config/cris/cris.opt:137
 #, no-c-format
-msgid ""
-"-femit-struct-debug-baseonly\tAggressive reduced debug info for structs."
+msgid "Don't align items in code or data."
 msgstr ""
 
-#: c-family/c.opt:2466
+#: config/cris/cris.opt:146
 #, no-c-format
-msgid ""
-"-femit-struct-debug-reduced\tConservative reduced debug info for structs."
+msgid "Do not emit function prologue or epilogue."
 msgstr ""
 
-#: c-family/c.opt:2470
+#: config/cris/cris.opt:153
 #, no-c-format
-msgid ""
-"-femit-struct-debug-detailed=<spec-list>\tDetailed reduced debug info for "
-"structs."
+msgid "Use the most feature-enabling options allowed by other options."
 msgstr ""
 
-#: c-family/c.opt:2474
+#: config/cris/cris.opt:162
 #, no-c-format
-msgid ""
-"Interpret imaginary, fixed-point, or other gnu number suffix as the "
-"corresponding number literal rather than a user-defined number literal."
+msgid "Override -mbest-lib-options."
 msgstr ""
 
-#: c-family/c.opt:2479
+#: config/cris/cris.opt:169
 #, no-c-format
-msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path."
+msgid "-march=ARCH\tGenerate code for the specified chip or CPU version."
 msgstr ""
 
-#: c-family/c.opt:2483
+#: config/cris/cris.opt:173
 #, no-c-format
-msgid "-imacros <file>\tAccept definition of macros in <file>."
+msgid "-mtune=ARCH\tTune alignment for the specified chip or CPU version."
 msgstr ""
 
-#: c-family/c.opt:2487
+#: config/cris/cris.opt:177
 #, no-c-format
-msgid "-imultilib <dir>\tSet <dir> to be the multilib include subdirectory."
+msgid ""
+"-mmax-stackframe=SIZE\tWarn when a stackframe is larger than the specified "
+"size."
 msgstr ""
 
-#: c-family/c.opt:2491
+#: config/cris/cris.opt:184
 #, no-c-format
-msgid "-include <file>\tInclude the contents of <file> before other files."
+msgid ""
+"Emit traps as \"break 8\", default for CRIS v3 and up.  If disabled, calls "
+"to abort() are used."
 msgstr ""
 
-#: c-family/c.opt:2495
+#: config/cris/cris.opt:188
 #, no-c-format
-msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options."
+msgid ""
+"Emit checks causing \"break 8\" instructions to execute when applying atomic "
+"builtins on misaligned memory."
 msgstr ""
 
-#: c-family/c.opt:2499
+#: config/cris/cris.opt:192
 #, no-c-format
-msgid "-isysroot <dir>\tSet <dir> to be the system root directory."
+msgid ""
+"Handle atomic builtins that may be applied to unaligned data by calling "
+"library functions. Overrides -mtrap-unaligned-atomic."
 msgstr ""
 
-#: c-family/c.opt:2503
+#: config/msp430/msp430.opt:7
 #, no-c-format
-msgid "-isystem <dir>\tAdd <dir> to the start of the system include path."
+msgid ""
+"Use a lightweight configuration of printf and puts to reduce code size. For "
+"single-threaded applications, not requiring reentrant I/O only. Requires "
+"Newlib Nano IO."
 msgstr ""
 
-#: c-family/c.opt:2507
+#: config/msp430/msp430.opt:11
 #, no-c-format
-msgid "-iquote <dir>\tAdd <dir> to the end of the quote include path."
+msgid "Force assembly output to always use hex constants."
 msgstr ""
 
-#: c-family/c.opt:2511
+#: config/msp430/msp430.opt:15
 #, no-c-format
-msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path."
+msgid "Specify the MCU to build for."
 msgstr ""
 
-#: c-family/c.opt:2515
+#: config/msp430/msp430.opt:19
 #, no-c-format
 msgid ""
-"-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path."
+"Warn if an MCU name is unrecognized or conflicts with other options "
+"(default: on)."
 msgstr ""
 
-#: c-family/c.opt:2525
+#: config/msp430/msp430.opt:23
 #, no-c-format
 msgid ""
-"Do not search standard system include directories (those specified with -"
-"isystem will still be used)."
+"Warn if devices.csv is not found or there are problem parsing it (default: "
+"on)."
 msgstr ""
 
-#: c-family/c.opt:2529
+#: config/msp430/msp430.opt:27
 #, no-c-format
-msgid "Do not search standard system include directories for C++."
+msgid "Specify the ISA to build for: msp430, msp430x, msp430xv2."
 msgstr ""
 
-#: c-family/c.opt:2541
+#: config/msp430/msp430.opt:52
 #, no-c-format
-msgid "Generate C header of platform-specific features."
+msgid "Select large model - 20-bit addresses/pointers."
 msgstr ""
 
-#: c-family/c.opt:2545
+#: config/msp430/msp430.opt:56
 #, no-c-format
-msgid "Remap file names when including files."
+msgid "Select small model - 16-bit addresses/pointers (default)."
 msgstr ""
 
-#: c-family/c.opt:2549 c-family/c.opt:2553
+#: config/msp430/msp430.opt:60
 #, no-c-format
-msgid ""
-"Conform to the ISO 1998 C++ standard revised by the 2003 technical "
-"corrigendum."
+msgid "Optimize opcode sizes at link time."
 msgstr ""
 
-#: c-family/c.opt:2557
+#: config/msp430/msp430.opt:67 config/pru/pru.opt:26
 #, no-c-format
-msgid "Conform to the ISO 2011 C++ standard."
+msgid ""
+"Use a minimum runtime (no static initializers or ctors) for memory-"
+"constrained devices."
 msgstr ""
 
-#: c-family/c.opt:2561
+#: config/msp430/msp430.opt:74
 #, no-c-format
-msgid "Deprecated in favor of -std=c++11."
+msgid "Specify the type of hardware multiply to support."
 msgstr ""
 
-#: c-family/c.opt:2565
+#: config/msp430/msp430.opt:96
 #, no-c-format
-msgid "Deprecated in favor of -std=c++14."
+msgid ""
+"Specify whether functions should be placed into the lower or upper memory "
+"regions, or if they should be shuffled between the regions (either) for best "
+"fit (default: lower)."
 msgstr ""
 
-#: c-family/c.opt:2569
+#: config/msp430/msp430.opt:100
 #, no-c-format
-msgid "Conform to the ISO 2014 C++ standard."
+msgid ""
+"Specify whether variables should be placed into the lower or upper memory "
+"regions, or if they should be shuffled between the regions (either) for best "
+"fit (default: lower)."
 msgstr ""
 
-#: c-family/c.opt:2573
+#: config/msp430/msp430.opt:104
 #, no-c-format
-msgid "Deprecated in favor of -std=c++17."
+msgid ""
+"Add the .lower prefix to section names when compiling with -m{code,data}-"
+"region=lower (disabled by default)."
 msgstr ""
 
-#: c-family/c.opt:2577
+#: config/msp430/msp430.opt:123
 #, no-c-format
-msgid "Conform to the ISO 2017 C++ standard."
+msgid ""
+"Passes on a request to the assembler to enable fixes for various silicon "
+"errata."
 msgstr ""
 
-#: c-family/c.opt:2581 c-family/c.opt:2585
+#: config/msp430/msp430.opt:127
 #, no-c-format
 msgid ""
-"Conform to the ISO 2020 C++ standard (experimental and incomplete support)."
+"Passes on a request to the assembler to warn about various silicon errata."
 msgstr ""
 
-#: c-family/c.opt:2589 c-family/c.opt:2593
+#: config/msp430/msp430.opt:131
 #, no-c-format
 msgid ""
-"Conform to the ISO 2023 C++ standard (published in 2024; experimental and "
-"incomplete support)."
+"The path to devices.csv.  The GCC driver can normally locate devices.csv "
+"itself and pass this option to the compiler, so the user shouldn't need to "
+"pass this."
 msgstr ""
 
-#: c-family/c.opt:2597 c-family/c.opt:2601
+#: config/msp430/msp430.opt:136
 #, no-c-format
 msgid ""
-"Conform to the ISO 2026 C++ draft standard (experimental and incomplete "
-"support)."
+"For shift operations by a constant amount, which require an individual "
+"instruction to shift by one position, set the maximum number of inline shift "
+"instructions (maximum value 64) to emit instead of using the corresponding "
+"__mspabi helper function. The default value is 4."
 msgstr ""
 
-#: c-family/c.opt:2605 c-family/c.opt:2767
+#: config/frv/frv.opt:30
 #, no-c-format
-msgid "Conform to the ISO 2011 C standard."
+msgid "Use 4 media accumulators."
 msgstr ""
 
-#: c-family/c.opt:2609
+#: config/frv/frv.opt:34
 #, no-c-format
-msgid "Deprecated in favor of -std=c11."
+msgid "Use 8 media accumulators."
 msgstr ""
 
-#: c-family/c.opt:2613 c-family/c.opt:2617 c-family/c.opt:2771
-#: c-family/c.opt:2775
+#: config/frv/frv.opt:38
 #, no-c-format
-msgid "Conform to the ISO 2017 C standard (published in 2018)."
+msgid "Enable label alignment optimizations."
 msgstr ""
 
-#: c-family/c.opt:2621 c-family/c.opt:2779
+#: config/frv/frv.opt:42
 #, no-c-format
-msgid "Conform to the ISO 2023 C standard (published in 2024)."
+msgid "Dynamically allocate cc registers."
 msgstr ""
 
-#: c-family/c.opt:2625
+#: config/frv/frv.opt:49
 #, no-c-format
-msgid "Deprecated in favor of -std=c23."
+msgid "Set the cost of branches."
 msgstr ""
 
-#: c-family/c.opt:2629
+#: config/frv/frv.opt:53
 #, no-c-format
-msgid ""
-"Conform to the ISO 202Y C standard draft (experimental and incomplete "
-"support)."
+msgid "Enable conditional execution other than moves/scc."
 msgstr ""
 
-#: c-family/c.opt:2633 c-family/c.opt:2637 c-family/c.opt:2751
+#: config/frv/frv.opt:57
 #, no-c-format
-msgid "Conform to the ISO 1990 C standard."
+msgid "Change the maximum length of conditionally-executed sequences."
 msgstr ""
 
-#: c-family/c.opt:2641 c-family/c.opt:2759
+#: config/frv/frv.opt:61
 #, no-c-format
-msgid "Conform to the ISO 1999 C standard."
+msgid ""
+"Change the number of temporary registers that are available to conditionally-"
+"executed sequences."
 msgstr ""
 
-#: c-family/c.opt:2645
+#: config/frv/frv.opt:65
 #, no-c-format
-msgid "Deprecated in favor of -std=c99."
+msgid "Enable conditional moves."
 msgstr ""
 
-#: c-family/c.opt:2649 c-family/c.opt:2654
+#: config/frv/frv.opt:69
 #, no-c-format
-msgid ""
-"Conform to the ISO 1998 C++ standard revised by the 2003 technical "
-"corrigendum with GNU extensions."
+msgid "Set the target CPU type."
 msgstr ""
 
-#: c-family/c.opt:2659
+#: config/frv/frv.opt:73
 #, no-c-format
-msgid "Conform to the ISO 2011 C++ standard with GNU extensions."
+msgid "Known FR-V CPUs (for use with the -mcpu= option):"
 msgstr ""
 
-#: c-family/c.opt:2663
+#: config/frv/frv.opt:122
 #, no-c-format
-msgid "Deprecated in favor of -std=gnu++11."
+msgid "Use fp double instructions."
 msgstr ""
 
-#: c-family/c.opt:2667
+#: config/frv/frv.opt:126
 #, no-c-format
-msgid "Deprecated in favor of -std=gnu++14."
+msgid "Change the ABI to allow double word insns."
 msgstr ""
 
-#: c-family/c.opt:2671
+#: config/frv/frv.opt:134
 #, no-c-format
-msgid "Conform to the ISO 2014 C++ standard with GNU extensions."
+msgid "Just use icc0/fcc0."
 msgstr ""
 
-#: c-family/c.opt:2675
+#: config/frv/frv.opt:138
 #, no-c-format
-msgid "Deprecated in favor of -std=gnu++17."
+msgid "Only use 32 FPRs."
 msgstr ""
 
-#: c-family/c.opt:2679
+#: config/frv/frv.opt:142
 #, no-c-format
-msgid "Conform to the ISO 2017 C++ standard with GNU extensions."
+msgid "Use 64 FPRs."
 msgstr ""
 
-#: c-family/c.opt:2683 c-family/c.opt:2687
+#: config/frv/frv.opt:146
 #, no-c-format
-msgid ""
-"Conform to the ISO 2020 C++ standard with GNU extensions (experimental and "
-"incomplete support)."
+msgid "Only use 32 GPRs."
 msgstr ""
 
-#: c-family/c.opt:2691 c-family/c.opt:2695
+#: config/frv/frv.opt:150
 #, no-c-format
-msgid ""
-"Conform to the ISO 2023 C++ standard with GNU extensions (published in 2024; "
-"experimental and incomplete support)."
+msgid "Use 64 GPRs."
 msgstr ""
 
-#: c-family/c.opt:2699 c-family/c.opt:2703
+#: config/frv/frv.opt:154
 #, no-c-format
-msgid ""
-"Conform to the ISO 2026 C++ draft standard with GNU extensions (experimental "
-"and incomplete support)."
+msgid "Enable use of GPREL for read-only data in FDPIC."
 msgstr ""
 
-#: c-family/c.opt:2707
+#: config/frv/frv.opt:166
 #, no-c-format
-msgid "Conform to the ISO 2011 C standard with GNU extensions."
+msgid "Enable PIC support for building libraries."
 msgstr ""
 
-#: c-family/c.opt:2711
+#: config/frv/frv.opt:170
 #, no-c-format
-msgid "Deprecated in favor of -std=gnu11."
+msgid "Follow the EABI linkage requirements."
 msgstr ""
 
-#: c-family/c.opt:2715 c-family/c.opt:2719
+#: config/frv/frv.opt:174
 #, no-c-format
-msgid ""
-"Conform to the ISO 2017 C standard (published in 2018) with GNU extensions."
+msgid "Disallow direct calls to global functions."
 msgstr ""
 
-#: c-family/c.opt:2723
+#: config/frv/frv.opt:178
 #, no-c-format
-msgid ""
-"Conform to the ISO 2023 C standard (published in 2024) with GNU extensions."
+msgid "Use media instructions."
 msgstr ""
 
-#: c-family/c.opt:2727
+#: config/frv/frv.opt:182
 #, no-c-format
-msgid "Deprecated in favor of -std=gnu23."
+msgid "Use multiply add/subtract instructions."
 msgstr ""
 
-#: c-family/c.opt:2731
+#: config/frv/frv.opt:186
 #, no-c-format
-msgid ""
-"Conform to the ISO 202Y C standard draft with GNU extensions (experimental "
-"and incomplete support)."
+msgid "Enable optimizing &&/|| in conditional execution."
 msgstr ""
 
-#: c-family/c.opt:2735 c-family/c.opt:2739
+#: config/frv/frv.opt:190
 #, no-c-format
-msgid "Conform to the ISO 1990 C standard with GNU extensions."
+msgid "Enable nested conditional execution optimizations."
 msgstr ""
 
-#: c-family/c.opt:2743
+#: config/frv/frv.opt:195
 #, no-c-format
-msgid "Conform to the ISO 1999 C standard with GNU extensions."
+msgid "Do not mark ABI switches in e_flags."
 msgstr ""
 
-#: c-family/c.opt:2747
+#: config/frv/frv.opt:199
 #, no-c-format
-msgid "Deprecated in favor of -std=gnu99."
+msgid "Remove redundant membars."
 msgstr ""
 
-#: c-family/c.opt:2755
+#: config/frv/frv.opt:203
 #, no-c-format
-msgid "Conform to the ISO 1990 C standard as amended in 1994."
+msgid "Pack VLIW instructions."
 msgstr ""
 
-#: c-family/c.opt:2763
+#: config/frv/frv.opt:207
 #, no-c-format
-msgid "Deprecated in favor of -std=iso9899:1999."
+msgid "Enable setting GPRs to the result of comparisons."
 msgstr ""
 
-#: c-family/c.opt:2783
+#: config/frv/frv.opt:212
 #, no-c-format
-msgid ""
-"-stdlib=[libstdc++|libc++]\tThe standard library to be used for C++ headers "
-"and runtime."
+msgid "Change the amount of scheduler lookahead."
 msgstr ""
 
-#: c-family/c.opt:2800
+#: config/frv/frv.opt:220
 #, no-c-format
-msgid "Enable traditional preprocessing."
+msgid "Assume a large TLS segment."
 msgstr ""
 
-#: c-family/c.opt:2804
+#: config/frv/frv.opt:224
 #, no-c-format
-msgid "-trigraphs\tSupport ISO C trigraphs."
+msgid "Do not assume a large TLS segment."
 msgstr ""
 
-#: c-family/c.opt:2808
+#: config/frv/frv.opt:229
 #, no-c-format
-msgid "Do not predefine system-specific and GCC-specific macros."
+msgid "Cause gas to print tomcat statistics."
 msgstr ""
 
-#: cobol/lang.opt:43
+#: config/frv/frv.opt:234
 #, no-c-format
-msgid "Accept COBOL constructs used by non-ISO compilers"
+msgid "Link with the library-pic libraries."
 msgstr ""
 
-#: cobol/lang.opt:62
+#: config/frv/frv.opt:238
 #, no-c-format
-msgid "-fcobol-exceptions=<n>\tEnable some exceptions by default"
+msgid "Allow branches to be packed with other instructions."
 msgstr ""
 
-#: cobol/lang.opt:66
+#: config/mmix/mmix.opt:24
 #, no-c-format
-msgid "Define alternative implicit copybook filename extension"
+msgid "For intrinsics library: pass all parameters in registers."
 msgstr ""
 
-#: cobol/lang.opt:70
+#: config/mmix/mmix.opt:28
 #, no-c-format
-msgid "Set Working-Storage data items to the supplied value"
+msgid "Use register stack for parameters and return value."
 msgstr ""
 
-#: cobol/lang.opt:74
+#: config/mmix/mmix.opt:32
 #, no-c-format
-msgid "Enable Cobol lex debugging"
+msgid "Use call-clobbered registers for parameters and return value."
 msgstr ""
 
-#: cobol/lang.opt:86
+#: config/mmix/mmix.opt:37
 #, no-c-format
-msgid "-findicator-column=<n>\tColumn after which Region A begins"
+msgid "Use epsilon-respecting floating point compare instructions."
 msgstr ""
 
-#: cobol/lang.opt:90
+#: config/mmix/mmix.opt:41
 #, no-c-format
-msgid "-finternal-ebcdic\tInternal processing is in EBCDIC Code Page 1140"
+msgid "Use zero-extending memory loads, not sign-extending ones."
 msgstr ""
 
-#: cobol/lang.opt:94
+#: config/mmix/mmix.opt:45
 #, no-c-format
-msgid "Enable/disable static linkage for CALL literals"
+msgid ""
+"Generate divide results with reminder having the same sign as the divisor "
+"(not the dividend)."
 msgstr ""
 
-#: cobol/lang.opt:98
+#: config/mmix/mmix.opt:49
 #, no-c-format
-msgid "Enable Cobol parser debugging"
+msgid "Prepend global symbols with \":\" (for use with PREFIX)."
 msgstr ""
 
-#: cobol/lang.opt:102
+#: config/mmix/mmix.opt:53
 #, no-c-format
-msgid "Enable Cobol yacc debugging"
+msgid "Do not provide a default start-address 0x100 of the program."
 msgstr ""
 
-#: cobol/lang.opt:106
+#: config/mmix/mmix.opt:57
 #, no-c-format
-msgid "preprocess <source_filter> before compiling"
+msgid "Link to emit program in ELF format (rather than mmo)."
 msgstr ""
 
-#: cobol/lang.opt:126
+#: config/mmix/mmix.opt:61
 #, no-c-format
-msgid ""
-"-main\tThe first program-id in the next source file is called by a generated "
-"main() entry point"
+msgid "Use P-mnemonics for branches statically predicted as taken."
 msgstr ""
 
-#: cobol/lang.opt:130
+#: config/mmix/mmix.opt:65
 #, no-c-format
-msgid ""
-"-main=<source_file> source_file/PROGRAM-ID is called by the generated main()"
+msgid "Don't use P-mnemonics for branches."
 msgstr ""
 
-#: cobol/lang.opt:134
+#: config/mmix/mmix.opt:79
 #, no-c-format
-msgid "-nomain\tNo main() function is created from COBOL source files"
+msgid "Use addresses that allocate global registers."
 msgstr ""
 
-#: ada/gcc-interface/lang.opt:61
+#: config/mmix/mmix.opt:83
 #, no-c-format
-msgid "Dump Source Coverage Obligations."
+msgid "Do not use addresses that allocate global registers."
 msgstr ""
 
-#: ada/gcc-interface/lang.opt:65
+#: config/mmix/mmix.opt:87
 #, no-c-format
-msgid "Synonym of -gnatk8."
+msgid "Generate a single exit point for each function."
 msgstr ""
 
-#: ada/gcc-interface/lang.opt:73
+#: config/mmix/mmix.opt:91
 #, no-c-format
-msgid "Do not look for object files in standard path."
+msgid "Do not generate a single exit point for each function."
 msgstr ""
 
-#: ada/gcc-interface/lang.opt:77
+#: config/mmix/mmix.opt:95
 #, no-c-format
-msgid "Select the runtime."
+msgid "Set start-address of the program."
 msgstr ""
 
-#: ada/gcc-interface/lang.opt:93
+#: config/mmix/mmix.opt:99
 #, no-c-format
-msgid "Catch typos."
+msgid "Set start-address of data."
 msgstr ""
 
-#: ada/gcc-interface/lang.opt:97
+#: config/sparc/sparc.opt:42
 #, no-c-format
-msgid "Set name of output ALI file (internal switch)."
+msgid "Use flat register window model."
 msgstr ""
 
-#: ada/gcc-interface/lang.opt:101
+#: config/sparc/sparc.opt:46
 #, no-c-format
-msgid "-gnat<options>\tSpecify options to GNAT."
+msgid "Assume possible double misalignment."
 msgstr ""
 
-#: ada/gcc-interface/lang.opt:105
+#: config/sparc/sparc.opt:50
 #, no-c-format
-msgid "Ignored."
+msgid "Use ABI reserved registers."
 msgstr ""
 
-#: d/lang.opt:51
+#: config/sparc/sparc.opt:54
 #, no-c-format
-msgid "-Hd <dir>\tWrite D interface files to directory <dir>."
+msgid "Use hardware quad FP instructions."
 msgstr ""
 
-#: d/lang.opt:55
+#: config/sparc/sparc.opt:58
 #, no-c-format
-msgid "-Hf <file>\tWrite D interface to <file>."
+msgid "Do not use hardware quad fp instructions."
 msgstr ""
 
-#: d/lang.opt:127
+#: config/sparc/sparc.opt:62
 #, no-c-format
-msgid "Warn about casts that will produce a null result."
+msgid "Compile for V8+ ABI."
 msgstr ""
 
-#: d/lang.opt:143
+#: config/sparc/sparc.opt:66
 #, no-c-format
-msgid "Warn when a special enum is declared with the wrong base type."
+msgid "Use UltraSPARC Visual Instruction Set version 1.0 extensions."
 msgstr ""
 
-#: d/lang.opt:151
+#: config/sparc/sparc.opt:70
 #, no-c-format
-msgid "Warn from speculative compiles such as __traits(compiles)."
+msgid "Use UltraSPARC Visual Instruction Set version 2.0 extensions."
 msgstr ""
 
-#: d/lang.opt:163
+#: config/sparc/sparc.opt:74
 #, no-c-format
-msgid "Generate JSON file."
+msgid "Use UltraSPARC Visual Instruction Set version 3.0 extensions."
 msgstr ""
 
-#: d/lang.opt:167
+#: config/sparc/sparc.opt:78
 #, no-c-format
-msgid "-Xf <file>\tWrite JSON output to the given <file>."
+msgid "Use additional VIS 3 instructions introduced in OSA2011."
 msgstr ""
 
-#: d/lang.opt:171
+#: config/sparc/sparc.opt:82
 #, no-c-format
-msgid "Debug library to use instead of phobos."
+msgid "Use UltraSPARC Visual Instruction Set version 4.0 extensions."
 msgstr ""
 
-#: d/lang.opt:175
+#: config/sparc/sparc.opt:86
 #, no-c-format
-msgid "Default library to use instead of phobos."
+msgid "Use additional VIS 4 instructions introduced in OSA2017."
 msgstr ""
 
-#: d/lang.opt:179
+#: config/sparc/sparc.opt:90
 #, no-c-format
-msgid "Do link the standard D startup files in the compilation."
+msgid "Use UltraSPARC Compare-and-Branch extensions."
 msgstr ""
 
-#: d/lang.opt:186
+#: config/sparc/sparc.opt:94
 #, no-c-format
-msgid "Generate code for all template instantiations."
+msgid "Use UltraSPARC Fused Multiply-Add extensions."
 msgstr ""
 
-#: d/lang.opt:190
+#: config/sparc/sparc.opt:98
 #, no-c-format
-msgid "Generate code for assert contracts."
+msgid "Use Floating-point Multiply Single to Double (FsMULd) instruction."
 msgstr ""
 
-#: d/lang.opt:198
+#: config/sparc/sparc.opt:102
 #, no-c-format
-msgid ""
-"-fbounds-check=[on|safeonly|off]\tTurn array bounds checks on, in @safe code "
-"only, or off."
+msgid "Use UltraSPARC Population-Count instruction."
 msgstr ""
 
-#: d/lang.opt:240
+#: config/sparc/sparc.opt:106
 #, no-c-format
-msgid "-fcheckaction=[throw,halt,context]\tBehavior on contract failure."
+msgid "Use UltraSPARC Subtract-Extended-with-Carry instruction."
 msgstr ""
 
-#: d/lang.opt:256
+#: config/sparc/sparc.opt:110
 #, no-c-format
-msgid "Compile in debug code."
+msgid "Pointers are 64-bit."
 msgstr ""
 
-#: d/lang.opt:260
+#: config/sparc/sparc.opt:114
 #, no-c-format
-msgid "-fdebug=<ident>\tCompile in debug code identified by <ident>."
+msgid "Pointers are 32-bit."
 msgstr ""
 
-#: d/lang.opt:264
+#: config/sparc/sparc.opt:118
 #, no-c-format
-msgid "Generate documentation."
+msgid "Use 64-bit ABI."
 msgstr ""
 
-#: d/lang.opt:268
+#: config/sparc/sparc.opt:122
 #, no-c-format
-msgid "-fdoc-dir=<dir>\tWrite documentation file to directory <dir>."
+msgid "Use 32-bit ABI."
 msgstr ""
 
-#: d/lang.opt:272
+#: config/sparc/sparc.opt:126
 #, no-c-format
-msgid "-fdoc-file=<file>\tWrite documentation to <file>."
+msgid "Use stack bias."
 msgstr ""
 
-#: d/lang.opt:276
+#: config/sparc/sparc.opt:130
 #, no-c-format
-msgid "-fdoc-inc=<file>\tInclude a Ddoc macro <file>."
+msgid "Use structs on stronger alignment for double-word copies."
 msgstr ""
 
-#: d/lang.opt:280
+#: config/sparc/sparc.opt:134
 #, no-c-format
-msgid "Assume that standard D runtime libraries and \"D main\" exist."
+msgid "Optimize tail call instructions in assembler and linker."
 msgstr ""
 
-#: d/lang.opt:284
+#: config/sparc/sparc.opt:138
 #, no-c-format
-msgid "Add comments for ignored declarations in the generated C++ header."
+msgid "Do not generate code that can only run in supervisor mode (default)."
 msgstr ""
 
-#: d/lang.opt:288
+#: config/sparc/sparc.opt:142
 #, no-c-format
-msgid ""
-"-fdump-cxx-spec=<filename>\tWrite all declarations as C++ code to <filename>."
+msgid "Use instructions of and schedule code for given CPU."
 msgstr ""
 
-#: d/lang.opt:292
+#: config/sparc/sparc.opt:228
 #, no-c-format
-msgid "Display the frontend AST after parsing and semantic passes."
+msgid "Use given SPARC-V9 code model."
 msgstr ""
 
-#: d/lang.opt:300
+#: config/sparc/sparc.opt:250
 #, no-c-format
-msgid ""
-"-fextern-std=<standard>\tSet C++ name mangling compatibility with <standard>."
+msgid "Enable debug output."
 msgstr ""
 
-#: d/lang.opt:328
+#: config/sparc/sparc.opt:254
 #, no-c-format
-msgid "Ignore unsupported pragmas."
+msgid "Enable strict 32-bit psABI struct return checking."
 msgstr ""
 
-#: d/lang.opt:332
+#: config/sparc/sparc.opt:258
 #, no-c-format
-msgid "Include imported modules in the compilation."
+msgid ""
+"Enable workaround for single erratum of AT697F processor (corresponding to "
+"erratum #13 of AT697E processor)."
 msgstr ""
 
-#: d/lang.opt:336
+#: config/sparc/sparc.opt:263
 #, no-c-format
-msgid "Generate code for class invariant contracts."
+msgid "Enable workarounds for the errata of the UT699 processor."
 msgstr ""
 
-#: d/lang.opt:340
+#: config/sparc/sparc.opt:267
 #, no-c-format
-msgid "Generate a default D main() function when compiling."
+msgid "Enable workarounds for the errata of the UT699E/UT700 processor."
 msgstr ""
 
-#: d/lang.opt:344
+#: config/sparc/sparc.opt:271
 #, no-c-format
-msgid ""
-"-fmodule-file=<package.module>=<filespec>\tuse <filespec> as source file for "
-"<package.module>."
+msgid "Enable workarounds for the errata of the GR712RC processor."
 msgstr ""
 
-#: d/lang.opt:348
+#: config/sparc/sparc.opt:308
 #, no-c-format
-msgid "Generate ModuleInfo struct for output module."
+msgid "Specify the memory model in effect for the program."
 msgstr ""
 
-#: d/lang.opt:352
+#: config/h8300/h8300.opt:23
 #, no-c-format
-msgid ""
-"Process all modules specified on the command line, but only generate code "
-"for the module specified by the argument."
+msgid "Generate H8S code."
 msgstr ""
 
-#: d/lang.opt:356
+#: config/h8300/h8300.opt:27
 #, no-c-format
-msgid "Generate code for postcondition contracts."
+msgid "Generate H8SX code."
 msgstr ""
 
-#: d/lang.opt:360
+#: config/h8300/h8300.opt:31
 #, no-c-format
-msgid "Generate code for precondition contracts."
+msgid "Generate H8S/2600 code."
 msgstr ""
 
-#: d/lang.opt:364
+#: config/h8300/h8300.opt:35
 #, no-c-format
-msgid "Turn on all upcoming D language features."
+msgid "Make integers 32 bits wide."
 msgstr ""
 
-#: d/lang.opt:368
+#: config/h8300/h8300.opt:42
 #, no-c-format
-msgid "Implement D bit-fields."
+msgid "Use registers for argument passing."
 msgstr ""
 
-#: d/lang.opt:372
+#: config/h8300/h8300.opt:46
 #, no-c-format
-msgid "Implement DIP1000: Scoped pointers."
+msgid "Consider access to byte sized memory slow."
 msgstr ""
 
-#: d/lang.opt:376
+#: config/h8300/h8300.opt:50
 #, no-c-format
-msgid "Implement DIP1008: Allow exceptions in @nogc code."
+msgid "Enable linker relaxing."
 msgstr ""
 
-#: d/lang.opt:380
+#: config/h8300/h8300.opt:54
 #, no-c-format
-msgid "Implement DIP1021: Mutable function arguments."
+msgid "Generate H8/300H code."
 msgstr ""
 
-#: d/lang.opt:384
+#: config/h8300/h8300.opt:58
 #, no-c-format
-msgid "Destruct fields of partially constructed objects."
+msgid "Enable the normal mode."
 msgstr ""
 
-#: d/lang.opt:388
+#: config/h8300/h8300.opt:62
 #, no-c-format
-msgid "Use field-wise comparisons for struct equality."
+msgid "Use H8/300 alignment rules."
 msgstr ""
 
-#: d/lang.opt:392
+#: config/h8300/h8300.opt:68
 #, no-c-format
-msgid ""
-"When a symbol is resolved, check `alias this' scope before going to upper "
-"scopes."
+msgid "Push extended registers on stack in monitor functions."
 msgstr ""
 
-#: d/lang.opt:396
+#: config/h8300/h8300.opt:72
 #, no-c-format
-msgid ""
-"Disallow unsound immutable conversions that were formerly incorrectly "
-"permitted."
+msgid "Do not push extended registers on stack in monitor functions."
 msgstr ""
 
-#: d/lang.opt:400
+#: config/ft32/ft32.opt:23
 #, no-c-format
-msgid "Implement 'in' parameters to mean scope const."
+msgid "Target the software simulator."
 msgstr ""
 
-#: d/lang.opt:404
+#: config/ft32/ft32.opt:27
 #, no-c-format
-msgid ""
-"Implement 'in' contracts of overridden methods to be a superset of parent "
-"contract."
+msgid "Ignored, but preserved for backward compatibility."
 msgstr ""
 
-#: d/lang.opt:408
+#: config/ft32/ft32.opt:31
 #, no-c-format
-msgid "Disable access to shared memory objects."
+msgid "Avoid use of the DIV and MOD instructions."
 msgstr ""
 
-#: d/lang.opt:412
+#: config/ft32/ft32.opt:35
 #, no-c-format
-msgid "Enable safety checks on all functions by default."
+msgid "Target the FT32B architecture."
 msgstr ""
 
-#: d/lang.opt:416
+#: config/ft32/ft32.opt:39
 #, no-c-format
-msgid "Enable rvalue arguments to ref parameters."
+msgid "Enable FT32B code compression."
 msgstr ""
 
-#: d/lang.opt:420
+#: config/ft32/ft32.opt:43
 #, no-c-format
-msgid "Disable access to variables marked `@system' from @safe code."
+msgid "Avoid placing any readable data in program memory."
 msgstr ""
 
-#: d/lang.opt:424
+#: config/i386/i386.opt:198
 #, no-c-format
-msgid "Compile release version."
+msgid "sizeof(long double) is 16."
 msgstr ""
 
-#: d/lang.opt:428
+#: config/i386/i386.opt:202 config/i386/i386.opt:378
 #, no-c-format
-msgid "Turn off all revertable D language features."
+msgid "Use hardware fp."
 msgstr ""
 
-#: d/lang.opt:432
+#: config/i386/i386.opt:206
 #, no-c-format
-msgid "Revert DIP1000: Scoped pointers."
+msgid "sizeof(long double) is 12."
 msgstr ""
 
-#: d/lang.opt:436
+#: config/i386/i386.opt:210
 #, no-c-format
-msgid "Don't destruct fields of partially constructed objects."
+msgid "Use 80-bit long double."
 msgstr ""
 
-#: d/lang.opt:440
+#: config/i386/i386.opt:222 config/sh/sh.opt:179
 #, no-c-format
-msgid "Don't use C-style integral promotion for unary '+', '-' and '~'."
+msgid "Reserve space for outgoing arguments in the function prologue."
 msgstr ""
 
-#: d/lang.opt:448
+#: config/i386/i386.opt:226
 #, no-c-format
-msgid ""
-"-fsave-mixins=<filename>\tExpand and save mixins to file specified by "
-"<filename>."
+msgid "Align some doubles on dword boundary."
 msgstr ""
 
-#: d/lang.opt:452
+#: config/i386/i386.opt:231
 #, no-c-format
-msgid "Generate code for switches without a default case."
+msgid "Function starts are aligned to this power of 2."
 msgstr ""
 
-#: d/lang.opt:456
+#: config/i386/i386.opt:236
 #, no-c-format
-msgid "List information on all D language transitions."
+msgid "Jump targets are aligned to this power of 2."
 msgstr ""
 
-#: d/lang.opt:460
+#: config/i386/i386.opt:241
 #, no-c-format
-msgid "List all non-mutable fields which occupy an object instance."
+msgid "Loop code aligned to this power of 2."
 msgstr ""
 
-#: d/lang.opt:464
+#: config/i386/i386.opt:245
 #, no-c-format
-msgid "List all usages of 'in' on parameter."
+msgid "Align destination of the string operations."
 msgstr ""
 
-#: d/lang.opt:468
+#: config/i386/i386.opt:266 config/s390/s390.opt:56
 #, no-c-format
-msgid "List all hidden GC allocations."
+msgid "Generate code for given CPU."
 msgstr ""
 
-#: d/lang.opt:472
+#: config/i386/i386.opt:274
 #, no-c-format
-msgid "List statistics on template instantiations."
+msgid "Known assembler dialects (for use with the -masm= option):"
 msgstr ""
 
-#: d/lang.opt:476
+#: config/i386/i386.opt:284
 #, no-c-format
-msgid "List all variables going into thread local storage."
+msgid "Branches are this expensive (arbitrary units)."
 msgstr ""
 
-#: d/lang.opt:480
+#: config/i386/i386.opt:288
 #, no-c-format
-msgid "Compile in unittest code."
+msgid ""
+"-mlarge-data-threshold=<number>\tData greater than given threshold will go "
+"into a large data section in x86-64 medium and large code models."
 msgstr ""
 
-#: d/lang.opt:484
+#: config/i386/i386.opt:292
 #, no-c-format
-msgid "-fversion=<ident>\tCompile in version code identified by <ident>."
+msgid "Use given x86-64 code model."
 msgstr ""
 
-#: d/lang.opt:488
+#: config/i386/i386.opt:315
 #, no-c-format
-msgid "Emit template instantiations as weak symbols."
+msgid "Use given address mode."
 msgstr ""
 
-#: d/lang.opt:508
+#: config/i386/i386.opt:319
 #, no-c-format
-msgid "Do not link the standard D library in the compilation."
+msgid "Known address mode (for use with the -maddress-mode= option):"
 msgstr ""
 
-#: d/lang.opt:516
+#: config/i386/i386.opt:332
 #, no-c-format
-msgid "Link the standard D library statically in the compilation."
+msgid "Generate sin, cos, sqrt for FPU."
 msgstr ""
 
-#: d/lang.opt:520
+#: config/i386/i386.opt:341
 #, no-c-format
-msgid "Link the standard D library dynamically in the compilation."
+msgid "Always use Dynamic Realigned Argument Pointer (DRAP) to realign stack."
 msgstr ""
 
-#: m2/lang.opt:35
+#: config/i386/i386.opt:345
 #, no-c-format
-msgid ""
-"turns on case statement label compile time checking when using an expression "
-"of an enum type."
+msgid "Return values of functions in FPU registers."
 msgstr ""
 
-#: m2/lang.opt:39
+#: config/i386/i386.opt:349
 #, no-c-format
-msgid ""
-"compiler checks to force definition module procedure parameter names with "
-"their implementation module counterpart"
+msgid "Generate floating point mathematics using given instruction set."
 msgstr ""
 
-#: m2/lang.opt:43
+#: config/i386/i386.opt:353
 #, no-c-format
-msgid "compiler warns if a cast is being used on types of differing sizes"
+msgid "Valid arguments to -mfpmath=:"
 msgstr ""
 
-#: m2/lang.opt:47
+#: config/i386/i386.opt:382 config/m68k/ieee.opt:24
 #, no-c-format
-msgid "inform user which parameters will be passed by reference"
+msgid "Use IEEE math for fp comparisons."
 msgstr ""
 
-#: m2/lang.opt:51
+#: config/i386/i386.opt:386
 #, no-c-format
-msgid ""
-"extra compile time semantic checking, typically tries to catch poor "
-"programming style"
+msgid "Inline all known string operations."
 msgstr ""
 
-#: m2/lang.opt:55
+#: config/i386/i386.opt:390
 #, no-c-format
 msgid ""
-"turns on compile time analysis in the first basic block of a procedure "
-"detecting access to uninitialized data."
+"Inline memset/memcpy string operations, but perform inline version only for "
+"small blocks."
 msgstr ""
 
-#: m2/lang.opt:59
+#: config/i386/i386.opt:397
 #, no-c-format
-msgid ""
-"turns on compile time analysis to detect access to uninitialized variables, "
-"the checking can be specified by: known,cond,all."
+msgid "Use native (MS) bitfield layout."
 msgstr ""
 
-#: m2/lang.opt:63
+#: config/i386/i386.opt:417
 #, no-c-format
-msgid "automatically initializes all pointers to NIL"
+msgid ""
+"Relax cmpxchg loop for atomic_fetch_{or,xor,and,nand} by adding load and cmp "
+"before cmpxchg, execute pause and loop back to load and compare if load "
+"value is not expected."
 msgstr ""
 
-#: m2/lang.opt:67
+#: config/i386/i386.opt:421
 #, no-c-format
-msgid ""
-"turns on runtime subrange, array index and indirection via NIL pointer "
-"checking"
+msgid "Set 80387 floating-point precision to 32-bit."
 msgstr ""
 
-#: m2/lang.opt:71
+#: config/i386/i386.opt:425
 #, no-c-format
-msgid ""
-"turns on runtime checking to check whether a CASE statement requires an ELSE "
-"clause when one was not specified"
+msgid "Set 80387 floating-point precision to 64-bit."
 msgstr ""
 
-#: m2/lang.opt:75
+#: config/i386/i386.opt:429
 #, no-c-format
-msgid "use cpp to preprocess the module"
+msgid "Set 80387 floating-point precision to 80-bit."
 msgstr ""
 
-#: m2/lang.opt:79 m2/lang.opt:83
+#: config/i386/i386.opt:433
 #, no-c-format
-msgid "passed to the preprocessor if -fcpp is used (internal switch)"
+msgid "Set the FTZ and DAZ Flags."
 msgstr ""
 
-#: m2/lang.opt:87
+#: config/i386/i386.opt:441
 #, no-c-format
-msgid "call a real function, rather than the builtin equivalent"
+msgid "Assume incoming stack aligned to this power of 2."
 msgstr ""
 
-#: m2/lang.opt:91
+#: config/i386/i386.opt:445
 #, no-c-format
-msgid "turn on internal debugging of the compiler (internal switch)"
+msgid "Use push instructions to save outgoing arguments."
 msgstr ""
 
-#: m2/lang.opt:95
+#: config/i386/i386.opt:449
 #, no-c-format
-msgid "turn on tracing of procedure line numbers (internal switch)"
+msgid "Use red-zone in the x86-64 code."
 msgstr ""
 
-#: m2/lang.opt:99
+#: config/i386/i386.opt:453
 #, no-c-format
-msgid "recognize the specified suffix as a definition module filename"
+msgid "Number of registers used to pass integer arguments."
 msgstr ""
 
-#: m2/lang.opt:103
+#: config/i386/i386.opt:457
 #, no-c-format
-msgid "display all inbuilt system items"
+msgid "Alternate calling convention."
 msgstr ""
 
-#: m2/lang.opt:107
+#: config/i386/i386.opt:465
 #, no-c-format
-msgid ""
-"allows opaque types to be implemented as any type (a GNU Modula-2 extension)"
+msgid "Use SSE register passing conventions for SF and DF mode."
 msgstr ""
 
-#: m2/lang.opt:111
+#: config/i386/i386.opt:469
 #, no-c-format
-msgid ""
-"turns on runtime checking to check whether a floating point number will "
-"exceed range"
+msgid "Realign stack in prologue."
 msgstr ""
 
-#: m2/lang.opt:115
+#: config/i386/i386.opt:473
 #, no-c-format
-msgid ""
-"create a topologically sorted module list from all dependent modules used in "
-"the application"
+msgid "Enable stack probing."
 msgstr ""
 
-#: m2/lang.opt:119 m2/lang.opt:235
+#: config/i386/i386.opt:477
 #, no-c-format
-msgid "turns on all range checking for numerical values"
+msgid "Specify memcpy expansion strategy when expected size is known."
 msgstr ""
 
-#: m2/lang.opt:123
+#: config/i386/i386.opt:481
 #, no-c-format
-msgid "use ISO dialect of Modula-2"
+msgid "Specify memset expansion strategy when expected size is known."
 msgstr ""
 
-#: m2/lang.opt:127
+#: config/i386/i386.opt:485
 #, no-c-format
-msgid ""
-"specify the library order, the libraries may be specified by a comma "
-"separated abbreviation: log,min,pim,iso or by directory names: m2log,m2min,"
-"m2pim,m2iso."
+msgid "Chose strategy to generate stringop using."
 msgstr ""
 
-#: m2/lang.opt:131
+#: config/i386/i386.opt:517
 #, no-c-format
-msgid "set all location values to a specific value (internal switch)"
+msgid "Use given thread-local storage dialect."
 msgstr ""
 
-#: m2/lang.opt:135
+#: config/i386/i386.opt:521
 #, no-c-format
-msgid ""
-"turn on internal debug tracing for quad,token,line,all (internal switch)"
+msgid "Known TLS dialects (for use with the -mtls-dialect= option):"
 msgstr ""
 
-#: m2/lang.opt:139
+#: config/i386/i386.opt:531
 #, no-c-format
-msgid ""
-"dump Modula-2 internal intemediate representation specified by: all,quad,"
-"decl,gimple"
+msgid "Use direct references against %gs when accessing tls data."
 msgstr ""
 
-#: m2/lang.opt:143
+#: config/i386/i386.opt:539
 #, no-c-format
-msgid "dump Modula-2 decls to the filename stem specified"
+msgid "Fine grain control of tune features."
 msgstr ""
 
-#: m2/lang.opt:147
+#: config/i386/i386.opt:543
 #, no-c-format
-msgid "dump Modula-2 gimple to the filename stem specified"
+msgid "Clear all tune features."
 msgstr ""
 
-#: m2/lang.opt:151
+#: config/i386/i386.opt:550
 #, no-c-format
-msgid "dump Modula-2 quads to the filename stem specified"
+msgid "Generate code that conforms to Intel MCU psABI."
 msgstr ""
 
-#: m2/lang.opt:155
+#: config/i386/i386.opt:554
 #, no-c-format
-msgid ""
-"filter the language dump using a comma separated list of procedures and "
-"modules"
+msgid "Generate code that conforms to the given ABI."
 msgstr ""
 
-#: m2/lang.opt:159
+#: config/i386/i386.opt:568
 #, no-c-format
 msgid ""
-"override the default 64 bit definition of SYSTEM.COFF_T with the argument "
-"specified"
+"Use libgcc stubs to save and restore registers clobbered by 64-bit Microsoft "
+"to System V ABI calls."
 msgstr ""
 
-#: m2/lang.opt:163
+#: config/i386/i386.opt:576
 #, no-c-format
 msgid ""
-"generate extra nops to improve debugging, producing an instruction for every "
-"code related keyword"
+"Known vectorization library ABIs (for use with the -mveclibabi= option):"
 msgstr ""
 
-#: m2/lang.opt:167
+#: config/i386/i386.opt:589
 #, no-c-format
-msgid "generate error messages which render keywords in lower case"
+msgid "Return 8-byte vectors in memory."
 msgstr ""
 
-#: m2/lang.opt:171
+#: config/i386/i386.opt:593
 #, no-c-format
-msgid ""
-"specify the module mangled prefix name for all modules in the following "
-"include paths"
+msgid "Generate reciprocals instead of divss and sqrtss."
 msgstr ""
 
-#: m2/lang.opt:179
+#: config/i386/i386.opt:597 config/loongarch/loongarch.opt:267
 #, no-c-format
-msgid "insert plugin to identify runtime errors at compiletime"
+msgid "Control generation of reciprocal estimates."
 msgstr ""
 
-#: m2/lang.opt:183
+#: config/i386/i386.opt:601
 #, no-c-format
-msgid "specify the module mangled prefix name"
+msgid "Generate cld instruction in the function prologue."
 msgstr ""
 
-#: m2/lang.opt:187
+#: config/i386/i386.opt:605
 #, no-c-format
 msgid ""
-"display statistics about the amount of source lines compiled and symbols used"
+"Generate vzeroupper instruction before a transfer of control flow out of the "
+"function."
 msgstr ""
 
-#: m2/lang.opt:191
+#: config/i386/i386.opt:610
 #, no-c-format
-msgid "experimental flag to turn on the new strict type checker"
+msgid ""
+"Enable Scalar to Vector optimization pass transforming 64-bit integer "
+"computations into vector ones."
 msgstr ""
 
-#: m2/lang.opt:195
+#: config/i386/i386.opt:615
 #, no-c-format
-msgid "compile all implementation modules and program module at once"
+msgid ""
+"The maximum number of use and def visits when discovering a STV chain before "
+"the discovery is aborted."
 msgstr ""
 
-#: m2/lang.opt:199
+#: config/i386/i386.opt:619
 #, no-c-format
-msgid "recognize the specified suffix as implementation and module filenames"
+msgid ""
+"Do dispatch scheduling if processor is bdver1, bdver2, bdver3, bdver4 or "
+"znver1 and Haifa scheduling is selected."
 msgstr ""
 
-#: m2/lang.opt:203
+#: config/i386/i386.opt:624
 #, no-c-format
 msgid ""
-"turns on runtime checking to detect accessing data through a NIL value "
-"pointer"
+"Use 128-bit AVX instructions instead of 256-bit AVX instructions in the auto-"
+"vectorizer."
 msgstr ""
 
-#: m2/lang.opt:207
+#: config/i386/i386.opt:628
 #, no-c-format
-msgid "use PIM [234] dialect of Modula-2"
+msgid ""
+"Use given register vector width instructions instead of maximum register "
+"width in the auto-vectorizer."
 msgstr ""
 
-#: m2/lang.opt:211
+#: config/i386/i386.opt:632
 #, no-c-format
-msgid "use PIM 2 dialect of Modula-2"
+msgid ""
+"Known preferred register vector length (to use with the -mprefer-vector-"
+"width= option):"
 msgstr ""
 
-#: m2/lang.opt:215
+#: config/i386/i386.opt:648
 #, no-c-format
-msgid "use PIM 3 dialect of Modula-2"
+msgid ""
+"Enable floating-point status flags setting SSE vector operations on partial "
+"vectors."
 msgstr ""
 
-#: m2/lang.opt:219
+#: config/i386/i386.opt:652
 #, no-c-format
-msgid "use PIM 4 dialect of Modula-2"
+msgid ""
+"Maximum number of bits that can be moved from memory to memory efficiently."
 msgstr ""
 
-#: m2/lang.opt:223
+#: config/i386/i386.opt:659
 #, no-c-format
-msgid "force positive result from MOD and DIV result floor"
+msgid ""
+"Optimize noreturn functions by not saving callee-saved registers used in the "
+"function."
 msgstr ""
 
-#: m2/lang.opt:227
+#: config/i386/i386.opt:665
 #, no-c-format
-msgid "link against the pthread library (default on)"
+msgid "Generate 32bit i386 code."
 msgstr ""
 
-#: m2/lang.opt:231
+#: config/i386/i386.opt:669
 #, no-c-format
-msgid "internal compiler debugging information, dump the list of quadruples"
+msgid "Generate 64bit x86-64 code."
 msgstr ""
 
-#: m2/lang.opt:239
+#: config/i386/i386.opt:673
 #, no-c-format
-msgid ""
-"turns on runtime checking for functions which finish without executing a "
-"RETURN statement"
+msgid "Generate 32bit x86-64 code."
 msgstr ""
 
-#: m2/lang.opt:243
+#: config/i386/i386.opt:677
 #, no-c-format
-msgid "specify the list of runtime modules and their initialization order"
+msgid "Generate 16bit i386 code."
 msgstr ""
 
-#: m2/lang.opt:247
+#: config/i386/i386.opt:681
 #, no-c-format
-msgid ""
-"the modules initialization order is dynamically determined by M2RTS and "
-"application dependencies"
+msgid "Support MMX built-in functions."
 msgstr ""
 
-#: m2/lang.opt:251
+#: config/i386/i386.opt:685
 #, no-c-format
-msgid "generate a C source scaffold for the current module being compiled"
+msgid "Support 3DNow! built-in functions."
 msgstr ""
 
-#: m2/lang.opt:255
+#: config/i386/i386.opt:689
 #, no-c-format
-msgid "generate a C++ source scaffold for the current module being compiled"
+msgid "Support Athlon 3Dnow! built-in functions."
 msgstr ""
 
-#: m2/lang.opt:259
+#: config/i386/i386.opt:693
 #, no-c-format
-msgid "generate the main function"
+msgid "Support MMX and SSE built-in functions and code generation."
 msgstr ""
 
-#: m2/lang.opt:263
+#: config/i386/i386.opt:697
 #, no-c-format
-msgid ""
-"generate static scaffold initialization and finalization for every module "
-"inside main"
+msgid "Support MMX, SSE and SSE2 built-in functions and code generation."
 msgstr ""
 
-#: m2/lang.opt:267
+#: config/i386/i386.opt:701
 #, no-c-format
-msgid "generate a shared library from the module"
+msgid "Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation."
 msgstr ""
 
-#: m2/lang.opt:271
+#: config/i386/i386.opt:705
 #, no-c-format
 msgid ""
-"turns on all software runtime checking (an abbreviation for -fnil -frange -"
-"findex -fwholediv -fcase -freturn -fwholevalue -ffloatvalue)"
+"Support MMX, SSE, SSE2, SSE3 and SSSE3 built-in functions and code "
+"generation."
 msgstr ""
 
-#: m2/lang.opt:275
+#: config/i386/i386.opt:709
 #, no-c-format
-msgid "display the location of module source files as they are compiled"
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3 and SSE4.1 built-in functions and code "
+"generation."
 msgstr ""
 
-#: m2/lang.opt:279
+#: config/i386/i386.opt:713 config/i386/i386.opt:717
 #, no-c-format
-msgid "create a swig interface file for the module"
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions "
+"and code generation."
 msgstr ""
 
-#: m2/lang.opt:283
+#: config/i386/i386.opt:725
 #, no-c-format
 msgid ""
-"optimize non var unbounded parameters by passing it by reference, providing "
-"it is not written to within the callee procedure."
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2 and AVX built-in "
+"functions and code generation."
 msgstr ""
 
-#: m2/lang.opt:287
+#: config/i386/i386.opt:729
 #, no-c-format
 msgid ""
-"orders the initialization/finalizations for scaffold-static or force linking "
-"of modules if scaffold-dynamic"
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and AVX2 built-in "
+"functions and code generation."
 msgstr ""
 
-#: m2/lang.opt:295
+#: config/i386/i386.opt:733
 #, no-c-format
-msgid "turns on all division and modulus by zero checking for ordinal values"
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F "
+"built-in functions and code generation."
 msgstr ""
 
-#: m2/lang.opt:299
+#: config/i386/i386.opt:737
 #, no-c-format
 msgid ""
-"turns on runtime checking to check whether a whole number will exceed range"
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
+"AVX512CD built-in functions and code generation."
 msgstr ""
 
-#: m2/lang.opt:303
+#: config/i386/i386.opt:741
 #, no-c-format
-msgid "Link the standard Modula-2 libraries statically in the compilation."
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
+"AVX512DQ built-in functions and code generation."
 msgstr ""
 
-#: m2/lang.opt:448 m2/lang.opt:452
+#: config/i386/i386.opt:745
 #, no-c-format
-msgid "save temporary preprocessed files"
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
+"AVX512BW built-in functions and code generation."
 msgstr ""
 
-#: go/lang.opt:42
+#: config/i386/i386.opt:749
 #, no-c-format
-msgid "-fgo-c-header=<file>\tWrite Go struct definitions to file as C code."
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
+"AVX512VL built-in functions and code generation."
 msgstr ""
 
-#: go/lang.opt:46
+#: config/i386/i386.opt:753
 #, no-c-format
-msgid "Add explicit checks for division by zero."
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
+"AVX512IFMA built-in functions and code generation."
 msgstr ""
 
-#: go/lang.opt:50
+#: config/i386/i386.opt:757
 #, no-c-format
-msgid "Add explicit checks for division overflow in INT_MIN / -1."
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
+"AVX512VBMI built-in functions and code generation."
 msgstr ""
 
-#: go/lang.opt:54
+#: config/i386/i386.opt:761
 #, no-c-format
-msgid "Apply special rules for compiling runtime package."
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
+"AVX512VPOPCNTDQ built-in functions and code generation."
 msgstr ""
 
-#: go/lang.opt:58
+#: config/i386/i386.opt:765
 #, no-c-format
-msgid "-fgo-dump-<type>\tDump Go frontend internal information."
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
+"AVX512VBMI2 built-in functions and code generation."
 msgstr ""
 
-#: go/lang.opt:62
+#: config/i386/i386.opt:769
 #, no-c-format
-msgid "-fgo-embedcfg=<file>\tList embedded files via go:embed."
+msgid "Support AVX512VNNI built-in functions and code generation."
 msgstr ""
 
-#: go/lang.opt:66
+#: config/i386/i386.opt:773
 #, no-c-format
-msgid "-fgo-importcfg=<file>\tProvide file that tells where to find imports."
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
+"AVX512BITALG built-in functions and code generation."
 msgstr ""
 
-#: go/lang.opt:70
+#: config/i386/i386.opt:777
 #, no-c-format
-msgid "-fgo-optimize-<type>\tTurn on optimization passes in the frontend."
+msgid "Support AVX512VP2INTERSECT built-in functions and code generation."
 msgstr ""
 
-#: go/lang.opt:74
+#: config/i386/i386.opt:781
 #, no-c-format
-msgid "-fgo-pkgpath=<string>\tSet Go package path."
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and FMA built-in "
+"functions and code generation."
 msgstr ""
 
-#: go/lang.opt:78
+#: config/i386/i386.opt:785
 #, no-c-format
 msgid ""
-"-fgo-prefix=<string>\tSet package-specific prefix for exported Go names."
+"Support MMX, SSE, SSE2, SSE3 and SSE4A built-in functions and code "
+"generation."
 msgstr ""
 
-#: go/lang.opt:82
+#: config/i386/i386.opt:789
 #, no-c-format
-msgid ""
-"-fgo-relative-import-path=<path>\tTreat a relative import as relative to "
-"path."
+msgid "Support FMA4 built-in functions and code generation."
 msgstr ""
 
-#: go/lang.opt:86
+#: config/i386/i386.opt:793
 #, no-c-format
-msgid "Functions which return values must end with return statements."
+msgid "Support XOP built-in functions and code generation."
 msgstr ""
 
-#: go/lang.opt:90
+#: config/i386/i386.opt:797
 #, no-c-format
-msgid ""
-"Emit debugging information related to the escape analysis pass when run with "
-"-fgo-optimize-allocs."
+msgid "Support LWP built-in functions and code generation."
 msgstr ""
 
-#: go/lang.opt:94
+#: config/i386/i386.opt:801
 #, no-c-format
-msgid "-fgo-debug-escape-hash=<string>\tHash value to debug escape analysis."
+msgid ""
+"Support code generation of Advanced Bit Manipulation (ABM) instructions."
 msgstr ""
 
-#: go/lang.opt:98
+#: config/i386/i386.opt:805
 #, no-c-format
-msgid "Emit optimization diagnostics."
+msgid "Support code generation of popcnt instruction."
 msgstr ""
 
-#: analyzer/analyzer.opt:27
+#: config/i386/i386.opt:809
 #, no-c-format
-msgid ""
-"The maximum number of 'after supernode' exploded nodes within the analyzer "
-"per supernode, before terminating analysis."
+msgid "Support PCONFIG built-in functions and code generation."
 msgstr ""
 
-#: analyzer/analyzer.opt:31
+#: config/i386/i386.opt:813
 #, no-c-format
-msgid ""
-"The maximum number of exploded nodes per program point within the analyzer, "
-"before terminating analysis of that point."
+msgid "Support WBNOINVD built-in functions and code generation."
 msgstr ""
 
-#: analyzer/analyzer.opt:35
+#: config/i386/i386.opt:817
 #, no-c-format
-msgid "The maximum number of constraints per state."
+msgid "Support PTWRITE built-in functions and code generation."
 msgstr ""
 
-#: analyzer/analyzer.opt:39
+#: config/i386/i386.opt:821
 #, no-c-format
-msgid ""
-"The maximum number of infeasible edges to reject before declaring a "
-"diagnostic as infeasible."
+msgid "Support UINTR built-in functions and code generation."
 msgstr ""
 
-#: analyzer/analyzer.opt:43
+#: config/i386/i386.opt:825
 #, no-c-format
-msgid ""
-"The maximum number of times a callsite can appear in a call stack within the "
-"analyzer, before terminating analysis of a call that would recurse deeper."
+msgid "Support SGX built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:829
+#, no-c-format
+msgid "Support RDPID built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:833
+#, no-c-format
+msgid "Support GFNI built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:837
+#, no-c-format
+msgid "Support VAES built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:841
+#, no-c-format
+msgid "Support VPCLMULQDQ built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:845
+#, no-c-format
+msgid "Support BMI built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:849
+#, no-c-format
+msgid "Support BMI2 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:853
+#, no-c-format
+msgid "Support LZCNT built-in function and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:857
+#, no-c-format
+msgid "Support Hardware Lock Elision prefixes."
+msgstr ""
+
+#: config/i386/i386.opt:861
+#, no-c-format
+msgid "Support RDSEED instruction."
+msgstr ""
+
+#: config/i386/i386.opt:865
+#, no-c-format
+msgid "Support PREFETCHW instruction."
+msgstr ""
+
+#: config/i386/i386.opt:869
+#, no-c-format
+msgid "Support flag-preserving add-carry instructions."
+msgstr ""
+
+#: config/i386/i386.opt:873
+#, no-c-format
+msgid "Support CLFLUSHOPT instructions."
+msgstr ""
+
+#: config/i386/i386.opt:877
+#, no-c-format
+msgid "Support CLWB instruction."
+msgstr ""
+
+#: config/i386/i386.opt:884
+#, no-c-format
+msgid "Support FXSAVE and FXRSTOR instructions."
+msgstr ""
+
+#: config/i386/i386.opt:888
+#, no-c-format
+msgid "Support XSAVE and XRSTOR instructions."
+msgstr ""
+
+#: config/i386/i386.opt:892
+#, no-c-format
+msgid "Support XSAVEOPT instruction."
+msgstr ""
+
+#: config/i386/i386.opt:896
+#, no-c-format
+msgid "Support XSAVEC instructions."
+msgstr ""
+
+#: config/i386/i386.opt:900
+#, no-c-format
+msgid "Support XSAVES and XRSTORS instructions."
+msgstr ""
+
+#: config/i386/i386.opt:904
+#, no-c-format
+msgid "Support TBM built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:908
+#, no-c-format
+msgid "Support code generation of cmpxchg16b instruction."
+msgstr ""
+
+#: config/i386/i386.opt:912
+#, no-c-format
+msgid "Support code generation of sahf instruction in 64bit x86-64 code."
+msgstr ""
+
+#: config/i386/i386.opt:916
+#, no-c-format
+msgid "Support code generation of movbe instruction."
+msgstr ""
+
+#: config/i386/i386.opt:920
+#, no-c-format
+msgid "Support code generation of crc32 instruction."
+msgstr ""
+
+#: config/i386/i386.opt:924
+#, no-c-format
+msgid "Support AES built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:928
+#, no-c-format
+msgid "Support SHA1 and SHA256 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:932
+#, no-c-format
+msgid "Support PCLMUL built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:936
+#, no-c-format
+msgid "Encode SSE instructions with VEX prefix."
+msgstr ""
+
+#: config/i386/i386.opt:940
+#, no-c-format
+msgid "Support FSGSBASE built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:944
+#, no-c-format
+msgid "Support RDRND built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:948
+#, no-c-format
+msgid "Support F16C built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:952
+#, no-c-format
+msgid "Emit profiling counter call at function entry before prologue."
+msgstr ""
+
+#: config/i386/i386.opt:956
+#, no-c-format
+msgid "Generate __mcount_loc section with all mcount or __fentry__ calls."
+msgstr ""
+
+#: config/i386/i386.opt:960 config/s390/s390.opt:332
+#, no-c-format
+msgid ""
+"Generate mcount/__fentry__ calls as nops. To activate they need to be "
+"patched in."
+msgstr ""
+
+#: config/i386/i386.opt:965
+#, no-c-format
+msgid "Set name of __fentry__ symbol called at function entry."
+msgstr ""
+
+#: config/i386/i386.opt:969
+#, no-c-format
+msgid "Set name of section to record mrecord-mcount calls."
+msgstr ""
+
+#: config/i386/i386.opt:973
+#, no-c-format
+msgid "Skip setting up RAX register when passing variable arguments."
+msgstr ""
+
+#: config/i386/i386.opt:977
+#, no-c-format
+msgid ""
+"Expand 32bit/64bit integer divide into 8bit unsigned integer divide with run-"
+"time check."
+msgstr ""
+
+#: config/i386/i386.opt:981
+#, no-c-format
+msgid "Split 32-byte AVX unaligned load."
+msgstr ""
+
+#: config/i386/i386.opt:985
+#, no-c-format
+msgid "Split 32-byte AVX unaligned store."
+msgstr ""
+
+#: config/i386/i386.opt:989
+#, no-c-format
+msgid "Support RTM built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:993 c-family/c.opt:568 c-family/c.opt:1774
+#: c-family/c.opt:1778 c-family/c.opt:1782 c-family/c.opt:1786
+#: c-family/c.opt:1790 c-family/c.opt:1794 c-family/c.opt:1798
+#: c-family/c.opt:1805 c-family/c.opt:1809 c-family/c.opt:1813
+#: c-family/c.opt:1817 c-family/c.opt:1821 c-family/c.opt:1825
+#: c-family/c.opt:1829 c-family/c.opt:1833 c-family/c.opt:1837
+#: c-family/c.opt:1841 c-family/c.opt:1845 c-family/c.opt:1849
+#: c-family/c.opt:1853
+#, no-c-format
+msgid "Removed in GCC 9.  This switch has no effect."
+msgstr ""
+
+#: config/i386/i386.opt:997
+#, no-c-format
+msgid "Support MWAITX and MONITORX built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1001
+#, no-c-format
+msgid "Support CLZERO built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1005
+#, no-c-format
+msgid "Support PKU built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1013
+#, no-c-format
+msgid ""
+"Known stack protector guard (for use with the -mstack-protector-guard= "
+"option):"
+msgstr ""
+
+#: config/i386/i386.opt:1037
+#, no-c-format
+msgid "Use the given symbol for addressing the stack-protector guard."
+msgstr ""
+
+#: config/i386/i386.opt:1044 config/aarch64/aarch64.opt:92
+#, no-c-format
+msgid "Generate code which uses only the general registers."
+msgstr ""
+
+#: config/i386/i386.opt:1048
+#, no-c-format
+msgid ""
+"Enable shadow stack built-in functions from Control-flow Enforcement "
+"Technology (CET)."
+msgstr ""
+
+#: config/i386/i386.opt:1053
+#, no-c-format
+msgid ""
+"Turn on CET instrumentation for switch statements that use a jump table and "
+"an indirect jump."
+msgstr ""
+
+#: config/i386/i386.opt:1058
+#, no-c-format
+msgid ""
+"Insert ENDBR instruction at function entry only via cf_check attribute for "
+"CET instrumentation."
+msgstr ""
+
+#: config/i386/i386.opt:1063
+#, no-c-format
+msgid "Make all function calls indirect."
+msgstr ""
+
+#: config/i386/i386.opt:1067
+#, no-c-format
+msgid "Convert indirect call and jump to call and return thunks."
+msgstr ""
+
+#: config/i386/i386.opt:1071
+#, no-c-format
+msgid "Convert function return to call and return thunk."
+msgstr ""
+
+#: config/i386/i386.opt:1075 config/s390/s390.opt:298
+#, no-c-format
+msgid ""
+"Known indirect branch choices (for use with the -mindirect-branch=/-"
+"mfunction-return= options):"
+msgstr ""
+
+#: config/i386/i386.opt:1091
+#, no-c-format
+msgid ""
+"Add CS prefix to call and jmp to indirect thunk with branch target in r8-r15 "
+"registers."
+msgstr ""
+
+#: config/i386/i386.opt:1095
+#, no-c-format
+msgid "Force indirect call and jump via register."
+msgstr ""
+
+#: config/i386/i386.opt:1099
+#, no-c-format
+msgid "Support MOVDIRI built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1103
+#, no-c-format
+msgid "Support MOVDIR64B built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1107
+#, no-c-format
+msgid "Support WAITPKG built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1111
+#, no-c-format
+msgid "Support CLDEMOTE built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1115
+#, no-c-format
+msgid "Instrument function exit in instrumented functions with __fentry__."
+msgstr ""
+
+#: config/i386/i386.opt:1119
+#, no-c-format
+msgid "Known choices for return instrumentation with -minstrument-return=:"
+msgstr ""
+
+#: config/i386/i386.opt:1132
+#, no-c-format
+msgid ""
+"Generate a __return_loc section pointing to all return instrumentation code."
+msgstr ""
+
+#: config/i386/i386.opt:1136 config/aarch64/aarch64.opt:96
+#, no-c-format
+msgid "Generate code to mitigate against straight line speculation."
+msgstr ""
+
+#: config/i386/i386.opt:1140
+#, no-c-format
+msgid ""
+"Known choices for mitigation against straight line speculation with -mharden-"
+"sls=:"
+msgstr ""
+
+#: config/i386/i386.opt:1156
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
+"AVX512BF16 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1161
+#, no-c-format
+msgid "Support ENQCMD built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1165
+#, no-c-format
+msgid "Support SERIALIZE built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1169
+#, no-c-format
+msgid "Support TSXLDTRK built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1173
+#, no-c-format
+msgid "Support AMX-TILE built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1177
+#, no-c-format
+msgid "Support AMX-INT8 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1181
+#, no-c-format
+msgid "Support AMX-BF16 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1185
+#, no-c-format
+msgid "Support HRESET built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1189
+#, no-c-format
+msgid "Support KL built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1193
+#, no-c-format
+msgid "Support WIDEKL built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1197
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and AVXVNNI "
+"built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1202
+#, no-c-format
+msgid "Emit GNU_PROPERTY_X86_ISA_1_NEEDED GNU property."
+msgstr ""
+
+#: config/i386/i386.opt:1206
+#, no-c-format
+msgid "Support MWAIT and MONITOR built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1210
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
+"AVX512-FP16 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1214
+#, no-c-format
+msgid "Do not use GOT to access external symbols."
+msgstr ""
+
+#: config/i386/i386.opt:1218
+#, no-c-format
+msgid "Instructions number above which STFL stall penalty can be compensated."
+msgstr ""
+
+#: config/i386/i386.opt:1222
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and AVXIFMA "
+"built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1227
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and "
+"AVXVNNIINT8 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1232
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and "
+"AVXNECONVERT build-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1237
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and "
+"CMPCCXADD build-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1242
+#, no-c-format
+msgid "Support AMX-FP16 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1246
+#, no-c-format
+msgid "Support PREFETCHI built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1250
+#, no-c-format
+msgid "Support RAOINT built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1254
+#, no-c-format
+msgid "Enable conservative small loop unrolling."
+msgstr ""
+
+#: config/i386/i386.opt:1258 config/aarch64/aarch64.opt:421
+#, no-c-format
+msgid "Limit how much the autovectorizer may unroll a loop."
+msgstr ""
+
+#: config/i386/i386.opt:1262
+#, no-c-format
+msgid ""
+"Whether x86 vectorizer cost modeling compares costs of different vector "
+"sizes."
+msgstr ""
+
+#: config/i386/i386.opt:1266
+#, no-c-format
+msgid ""
+"-mlam=[none|u48|u57] Instrument meta data position in user data pointers."
+msgstr ""
+
+#: config/i386/i386.opt:1282
+#, no-c-format
+msgid "Support AMX-COMPLEX built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1286
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and "
+"AVXVNNIINT16 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1291
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and SM3 built-in "
+"functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1296
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and SHA512 built-in "
+"functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1301
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and SM4 built-in "
+"functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1306
+#, no-c-format
+msgid "Enable vectorization for gather instruction."
+msgstr ""
+
+#: config/i386/i386.opt:1310
+#, no-c-format
+msgid "Enable vectorization for scatter instruction."
+msgstr ""
+
+#: config/i386/i386.opt:1314
+#, no-c-format
+msgid ""
+"Support code generation for APX features, including EGPR, PUSH2POP2, NDD, "
+"PPX, NF, CCMP and ZU."
+msgstr ""
+
+#: config/i386/i386.opt:1352
+#, no-c-format
+msgid "Enable GPR32 in inline asm when APX_F enabled."
+msgstr ""
+
+#: config/i386/i386.opt:1356
+#, no-c-format
+msgid "Support USER_MSR built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1360
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and AVX10.1 "
+"built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1365
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX10.1 and "
+"AVX10.2 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1370
+#, no-c-format
+msgid ""
+"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX10.1, "
+"AVX10.2 and AMX-AVX512 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1375
+#, no-c-format
+msgid "Support AMX-TF32 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1379
+#, no-c-format
+msgid "Support AMX-FP8 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1383
+#, no-c-format
+msgid "Support MOVRS built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1387
+#, no-c-format
+msgid "Support AMX-MOVRS built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1391
+#, no-c-format
+msgid "Support AVX512BMM built-in functions and code generation."
+msgstr ""
+
+#: config/i386/mingw-w64.opt:23
+#, no-c-format
+msgid "Use unicode startup and define UNICODE macro."
+msgstr ""
+
+#: config/arm/arm-tables.opt:25
+#, no-c-format
+msgid "Known ARM CPUs (for use with the -mcpu= and -mtune= options):"
+msgstr ""
+
+#: config/arm/arm-tables.opt:299
+#, no-c-format
+msgid "Known ARM architectures (for use with the -march= option):"
+msgstr ""
+
+#: config/arm/arm-tables.opt:405
+#, no-c-format
+msgid "Known ARM FPUs (for use with the -mfpu= option):"
+msgstr ""
+
+#: config/arm/arm.opt:35
+#, no-c-format
+msgid "TLS dialect to use:"
+msgstr ""
+
+#: config/arm/arm.opt:45
+#, no-c-format
+msgid "Specify an ABI."
+msgstr ""
+
+#: config/arm/arm.opt:49
+#, no-c-format
+msgid "Known ARM ABIs (for use with the -mabi= option):"
+msgstr ""
+
+#: config/arm/arm.opt:65
+#, no-c-format
+msgid "Generate a call to abort if a noreturn function returns."
+msgstr ""
+
+#: config/arm/arm.opt:72
+#, no-c-format
+msgid "Generate APCS conformant stack frames."
+msgstr ""
+
+#: config/arm/arm.opt:76
+#, no-c-format
+msgid "Unimplemented option to generate re-entrant, PIC code."
+msgstr ""
+
+#: config/arm/arm.opt:80
+#, no-c-format
+msgid "Unimplemented option to generate stack checking code on function entry."
+msgstr ""
+
+#: config/arm/arm.opt:99
+#, no-c-format
+msgid "Generate code in 32 bit ARM state."
+msgstr ""
+
+#: config/arm/arm.opt:107
+#, no-c-format
+msgid "Thumb: Assume non-static functions may be called from ARM code."
+msgstr ""
+
+#: config/arm/arm.opt:111
+#, no-c-format
+msgid "Thumb: Assume function pointers may go to non-Thumb aware code."
+msgstr ""
+
+#: config/arm/arm.opt:123
+#, no-c-format
+msgid ""
+"Specify that the compiler should target secure code as per ARMv8-M Security "
+"Extensions."
+msgstr ""
+
+#: config/arm/arm.opt:140
+#, no-c-format
+msgid "Switch ARM/Thumb modes on alternating functions for compiler testing."
+msgstr ""
+
+#: config/arm/arm.opt:144
+#, no-c-format
+msgid "Specify the __fp16 floating-point format."
+msgstr ""
+
+#: config/arm/arm.opt:148
+#, no-c-format
+msgid "Known __fp16 formats (for use with the -mfp16-format= option):"
+msgstr ""
+
+#: config/arm/arm.opt:161
+#, no-c-format
+msgid "Specify the name of the target floating point hardware/format."
+msgstr ""
+
+#: config/arm/arm.opt:172
+#, no-c-format
+msgid "Generate call insns as indirect calls, if necessary."
+msgstr ""
+
+#: config/arm/arm.opt:176 config/s390/s390.opt:259
+#, no-c-format
+msgid "Assume data segments are relative to text segment."
+msgstr ""
+
+#: config/arm/arm.opt:180
+#, no-c-format
+msgid "Specify the register to be used for PIC addressing."
+msgstr ""
+
+#: config/arm/arm.opt:184
+#, no-c-format
+msgid "Store function names in object code."
 msgstr ""
 
-#: analyzer/analyzer.opt:47
+#: config/arm/arm.opt:188
 #, no-c-format
-msgid ""
-"The maximum depth of a symbolic value, before approximating the value as "
-"unknown."
+msgid "Permit scheduling of a function's prologue sequence."
 msgstr ""
 
-#: analyzer/analyzer.opt:51
+#: config/arm/arm.opt:199
 #, no-c-format
-msgid ""
-"The minimum number of supernodes within a function for the analyzer to "
-"consider summarizing its effects at call sites."
+msgid "Specify the minimum bit alignment of structures. (Deprecated)."
 msgstr ""
 
-#: analyzer/analyzer.opt:55
+#: config/arm/arm.opt:203
 #, no-c-format
-msgid ""
-"The maximum depth of exploded nodes that should appear in a dot dump before "
-"switching to a less verbose format."
+msgid "Generate code for Thumb state."
 msgstr ""
 
-#: analyzer/analyzer.opt:59
+#: config/arm/arm.opt:207
 #, no-c-format
-msgid ""
-"The number of bytes at which to ellipsize string literals in analyzer text "
-"art diagrams."
+msgid "Support calls between Thumb and ARM instruction sets."
 msgstr ""
 
-#: analyzer/analyzer.opt:63
+#: config/arm/arm.opt:211
 #, no-c-format
-msgid ""
-"The number of literal bytes to show at the head of a string literal in text "
-"art when ellipsizing it."
+msgid "Specify thread local storage scheme."
 msgstr ""
 
-#: analyzer/analyzer.opt:67
+#: config/arm/arm.opt:215
 #, no-c-format
-msgid ""
-"The number of literal bytes to show at the tail of a string literal in text "
-"art when ellipsizing it."
+msgid "Specify how to access the thread pointer."
 msgstr ""
 
-#: analyzer/analyzer.opt:71
+#: config/arm/arm.opt:219
+#, no-c-format
+msgid "Valid arguments to -mtp=:"
+msgstr ""
+
+#: config/arm/arm.opt:241
+#, no-c-format
+msgid "Thumb: Generate (non-leaf) stack frames even if not needed."
+msgstr ""
+
+#: config/arm/arm.opt:245
+#, no-c-format
+msgid "Thumb: Generate (leaf) stack frames even if not needed."
+msgstr ""
+
+#: config/arm/arm.opt:249 config/mn10300/mn10300.opt:42
+#, no-c-format
+msgid "Tune code for the given processor."
+msgstr ""
+
+#: config/arm/arm.opt:253
 #, no-c-format
 msgid ""
-"The ideal width in characters of text art diagrams generated by the analyzer."
+"Print CPU tuning information as comment in assembler file.  This is an "
+"option used only for regression testing of the compiler and not intended for "
+"ordinary use in compiling code."
 msgstr ""
 
-#: analyzer/analyzer.opt:75
+#: config/arm/arm.opt:264
 #, no-c-format
 msgid ""
-"Warn about code paths in which a pointer to a buffer is assigned to an "
-"incompatible type."
+"Use Neon quad-word (rather than double-word) registers for vectorization."
 msgstr ""
 
-#: analyzer/analyzer.opt:79
+#: config/arm/arm.opt:268
 #, no-c-format
 msgid ""
-"Warn about code paths in which a pointer is checked for NULL after it has "
-"already been dereferenced."
+"Use Neon double-word (rather than quad-word) registers for vectorization."
 msgstr ""
 
-#: analyzer/analyzer.opt:83
+#: config/arm/arm.opt:272
 #, no-c-format
 msgid ""
-"Warn about code paths in which a stdio FILE can be closed more than once."
+"Enable more verbose RTX cost dumps during debug.  For GCC developers use "
+"only."
 msgstr ""
 
-#: analyzer/analyzer.opt:87
+#: config/arm/arm.opt:276
 #, no-c-format
-msgid "Warn about code paths in which a pointer can be freed more than once."
+msgid "Only generate absolute relocations on word sized values."
 msgstr ""
 
-#: analyzer/analyzer.opt:91
+#: config/arm/arm.opt:280
 #, no-c-format
-msgid "Warn about code paths in which sensitive data is written to a file."
+msgid "Generate IT blocks appropriate for ARMv8."
 msgstr ""
 
-#: analyzer/analyzer.opt:95
+#: config/arm/arm.opt:284
 #, no-c-format
 msgid ""
-"Warn about code paths in which sensitive data is copied across a security "
-"boundary."
+"Avoid overlapping destination and address registers on LDRD instructions "
+"that may trigger Cortex-M3 errata."
 msgstr ""
 
-#: analyzer/analyzer.opt:99
+#: config/arm/arm.opt:289
+#, no-c-format
+msgid "Mitigate issues with VLLDM on some M-profile devices (CVE-2021-35465)."
+msgstr ""
+
+#: config/arm/arm.opt:293
 #, no-c-format
 msgid ""
-"Warn about code paths in which read on a write-only file descriptor is "
-"attempted, or vice versa."
+"Mitigate issues with AES instructions on Cortex-A57 and Cortex-A72 (Arm "
+"erratum #1742098)."
 msgstr ""
 
-#: analyzer/analyzer.opt:103
+#: config/arm/arm.opt:298
 #, no-c-format
 msgid ""
-"Warn about code paths in which a file descriptor can be closed more than "
-"once."
+"Mitigate issues with AES instructions on Cortex-A57 and Cortex-A72 (Arm "
+"erratum #1655431)."
 msgstr ""
 
-#: analyzer/analyzer.opt:107
+#: config/arm/arm.opt:307
 #, no-c-format
-msgid "Warn about code paths in which a file descriptor is not closed."
+msgid "This option is deprecated and has no effect."
 msgstr ""
 
-#: analyzer/analyzer.opt:111
+#: config/arm/arm.opt:311
 #, no-c-format
-msgid ""
-"Warn about code paths in which an operation is attempted in the wrong phase "
-"of a file descriptor's lifetime."
+msgid "Assume loading data from flash is slower than fetching instructions."
 msgstr ""
 
-#: analyzer/analyzer.opt:115
+#: config/arm/arm.opt:315
 #, no-c-format
-msgid ""
-"Warn about code paths in which an operation is attempted on the wrong type "
-"of file descriptor."
+msgid "Assume unified syntax for inline assembly code."
 msgstr ""
 
-#: analyzer/analyzer.opt:119
+#: config/arm/arm.opt:319
 #, no-c-format
-msgid ""
-"Warn about code paths in which a read or write is performed on a closed file "
-"descriptor."
+msgid "Do not allow constant data to be placed in code sections."
 msgstr ""
 
-#: analyzer/analyzer.opt:123
+#: config/arm/arm.opt:323
+#, no-c-format
+msgid "When linking for big-endian targets, generate a BE8 format image."
+msgstr ""
+
+#: config/arm/arm.opt:327
 #, no-c-format
 msgid ""
-"Warn about code paths in which a file descriptor is used without being "
-"checked for validity."
+"When linking for big-endian targets, generate a legacy BE32 format image."
 msgstr ""
 
-#: analyzer/analyzer.opt:127
+#: config/arm/arm.opt:331 config/sh/sh.opt:195
 #, no-c-format
-msgid "Warn about code paths in which a stdio FILE is not closed."
+msgid "Cost to assume for a branch insn."
 msgstr ""
 
-#: analyzer/analyzer.opt:131
+#: config/arm/arm.opt:335 config/aarch64/aarch64.opt:224
 #, no-c-format
-msgid "Warn about code paths in which a non-heap pointer is freed."
+msgid "Use branch-protection features."
 msgstr ""
 
-#: analyzer/analyzer.opt:135
+#: config/arm/arm.opt:339
+#, no-c-format
+msgid "Generate code which uses the core registers only (r0-r14)."
+msgstr ""
+
+#: config/arm/arm.opt:361
 #, no-c-format
 msgid ""
-"Warn about code paths in which floating-point arithmetic is used in "
-"locations where precise computation is needed."
+"Use an immediate to offset from the TLS register. This option is for use "
+"with fstack-protector-guard=tls and not for use in user-land code."
 msgstr ""
 
-#: analyzer/analyzer.opt:139
+#: config/mcore/mcore.opt:23
 #, no-c-format
-msgid "Warn about code paths which appear to lead to an infinite loop."
+msgid "Generate code for the M*Core M210."
 msgstr ""
 
-#: analyzer/analyzer.opt:143
+#: config/mcore/mcore.opt:27
 #, no-c-format
-msgid "Warn about code paths which appear to lead to infinite recursion."
+msgid "Generate code for the M*Core M340."
 msgstr ""
 
-#: analyzer/analyzer.opt:147
+#: config/mcore/mcore.opt:31
 #, no-c-format
-msgid "Warn about code paths in which a NULL function pointer is called."
+msgid "Force functions to be aligned to a 4 byte boundary."
 msgstr ""
 
-#: analyzer/analyzer.opt:151
+#: config/mcore/mcore.opt:39
 #, no-c-format
-msgid "Warn about code paths in which a heap-allocated pointer leaks."
+msgid "Emit call graph information."
 msgstr ""
 
-#: analyzer/analyzer.opt:155
+#: config/mcore/mcore.opt:43
 #, no-c-format
-msgid ""
-"Warn about code paths in which the wrong deallocation function is called."
+msgid "Use the divide instruction."
 msgstr ""
 
-#: analyzer/analyzer.opt:159
+#: config/mcore/mcore.opt:47
 #, no-c-format
-msgid ""
-"Warn about code paths in which a write or read to a buffer is out-of-bounds."
+msgid "Inline constants if it can be done in 2 insns or less."
 msgstr ""
 
-#: analyzer/analyzer.opt:163
+#: config/mcore/mcore.opt:56 config/fr30/fr30.opt:27
 #, no-c-format
 msgid ""
-"Warn about code paths in which undefined behavior would occur due to "
-"overlapping buffers."
+"Assume that run-time support has been provided, so omit -lsim from the "
+"linker command line."
 msgstr ""
 
-#: analyzer/analyzer.opt:167
+#: config/mcore/mcore.opt:60
 #, no-c-format
-msgid ""
-"Warn about code paths in which a possibly-NULL value is passed to a must-not-"
-"be-NULL function argument."
+msgid "Use arbitrary sized immediates in bit operations."
 msgstr ""
 
-#: analyzer/analyzer.opt:171
+#: config/mcore/mcore.opt:64
 #, no-c-format
-msgid "Warn about code paths in which a possibly-NULL pointer is dereferenced."
+msgid "Prefer word accesses over byte accesses."
 msgstr ""
 
-#: analyzer/analyzer.opt:175
+#: config/mcore/mcore.opt:71
+#, no-c-format
+msgid "Set the maximum amount for a single stack increment operation."
+msgstr ""
+
+#: config/mcore/mcore.opt:75
+#, no-c-format
+msgid "Always treat bitfields as int-sized."
+msgstr ""
+
+#: config/pru/pru.opt:31
 #, no-c-format
 msgid ""
-"Warn about code paths in which an async-signal-unsafe function is called "
-"from a signal handler."
+"-mmcu=MCU\tSelect the target System-On-Chip variant that embeds this PRU."
 msgstr ""
 
-#: analyzer/analyzer.opt:179
+#: config/pru/pru.opt:35
 #, no-c-format
 msgid ""
-"Warn about code paths in which NULL is passed to a must-not-be-NULL function "
-"argument."
+"Make GCC pass the --no-relax command-line option to the linker instead of "
+"the --relax option."
 msgstr ""
 
-#: analyzer/analyzer.opt:183
+#: config/pru/pru.opt:40
 #, no-c-format
-msgid "Warn about code paths in which a NULL pointer is dereferenced."
+msgid "Allow (or do not allow) gcc to use the LOOP instruction."
 msgstr ""
 
-#: analyzer/analyzer.opt:187
+#: config/pru/pru.opt:44
 #, no-c-format
-msgid "Warn about code paths in which an on-stack buffer is passed to putenv."
+msgid "Allow (or do not allow) gcc to use the PRU multiplier unit."
 msgstr ""
 
-#: analyzer/analyzer.opt:191
+#: config/pru/pru.opt:48
 #, no-c-format
-msgid ""
-"Warn about code paths in which a shift with negative count is attempted."
+msgid "Allow (or do not allow) gcc to use the FILL and ZERO instructions."
 msgstr ""
 
-#: analyzer/analyzer.opt:195
+#: config/pru/pru.opt:52
 #, no-c-format
-msgid ""
-"Warn about code paths in which a shift with count >= width of type is "
-"attempted."
+msgid "Select target ABI variant."
 msgstr ""
 
-#: analyzer/analyzer.opt:199
+#: config/pru/pru.opt:56
 #, no-c-format
-msgid ""
-"Warn about code paths in which a longjmp rewinds to a jmp_buf saved in a "
-"stack frame that has returned."
+msgid "ABI variant code generation (for use with -mabi= option):"
 msgstr ""
 
-#: analyzer/analyzer.opt:203
+#: config/microblaze/microblaze.opt:40
 #, no-c-format
-msgid ""
-"Warn about code paths in which an unsanitized value is used as an allocation "
-"size."
+msgid "Use software emulation for floating point (default)."
 msgstr ""
 
-#: analyzer/analyzer.opt:207
+#: config/microblaze/microblaze.opt:44
 #, no-c-format
-msgid ""
-"Warn about code paths in which an unsanitized value is used as an array "
-"index."
+msgid "Use hardware floating point instructions."
 msgstr ""
 
-#: analyzer/analyzer.opt:211
+#: config/microblaze/microblaze.opt:48
 #, no-c-format
-msgid ""
-"Warn about code paths in which an 'assert()' is made involving an "
-"unsanitized value."
+msgid "Use table lookup optimization for small signed integer divisions."
 msgstr ""
 
-#: analyzer/analyzer.opt:215
+#: config/microblaze/microblaze.opt:52
 #, no-c-format
-msgid ""
-"Warn about code paths in which an unsanitized value is used as a divisor."
+msgid "-mcpu=PROCESSOR\t\tUse features of and schedule code for given CPU."
 msgstr ""
 
-#: analyzer/analyzer.opt:219
+#: config/microblaze/microblaze.opt:56
 #, no-c-format
-msgid ""
-"Warn about code paths in which an unsanitized value is used as a pointer "
-"offset."
+msgid "Don't optimize block moves, use memcpy."
 msgstr ""
 
-#: analyzer/analyzer.opt:223
+#: config/microblaze/microblaze.opt:68
 #, no-c-format
-msgid "Warn about code paths in which an unsanitized value is used as a size."
+msgid "Use the soft multiply emulation (default)."
 msgstr ""
 
-#: analyzer/analyzer.opt:227
+#: config/microblaze/microblaze.opt:72
 #, no-c-format
-msgid ""
-"Warn about code paths in which pointer subtraction involves undefined "
-"behavior."
+msgid "Use reorder instructions (swap and byte reversed load/store) (default)."
 msgstr ""
 
-#: analyzer/analyzer.opt:231
+#: config/microblaze/microblaze.opt:76
 #, no-c-format
-msgid ""
-"Warn about code paths in which a call is made to strtok with undefined "
-"behavior."
+msgid "Use the software emulation for divides (default)."
 msgstr ""
 
-#: analyzer/analyzer.opt:235
+#: config/microblaze/microblaze.opt:80
 #, no-c-format
-msgid "Warn about code paths in which a freed value is used."
+msgid "Use the hardware barrel shifter instead of emulation."
 msgstr ""
 
-#: analyzer/analyzer.opt:239
+#: config/microblaze/microblaze.opt:84
 #, no-c-format
-msgid ""
-"Warn about code paths in which a pointer to a stale stack frame is used."
+msgid "Use pattern compare instructions."
 msgstr ""
 
-#: analyzer/analyzer.opt:243
+#: config/microblaze/microblaze.opt:88
 #, no-c-format
-msgid "Warn about code paths in which va_arg uses the wrong type."
+msgid "Check for stack overflow at runtime."
 msgstr ""
 
-#: analyzer/analyzer.opt:247
+#: config/microblaze/microblaze.opt:96
 #, no-c-format
-msgid ""
-"Warn about code paths in which va_arg is used too many times on a va_list."
+msgid "Clear the BSS to zero and place zero initialized in BSS."
 msgstr ""
 
-#: analyzer/analyzer.opt:251
+#: config/microblaze/microblaze.opt:100
 #, no-c-format
-msgid ""
-"Warn about code paths in which va_start or va_copy is used without a "
-"corresponding va_end."
+msgid "Use multiply high instructions for high part of 32x32 multiply."
 msgstr ""
 
-#: analyzer/analyzer.opt:255
+#: config/microblaze/microblaze.opt:104
 #, no-c-format
-msgid "Warn about code paths in which a va_list is used after va_end."
+msgid "Use hardware floating point conversion instructions."
 msgstr ""
 
-#: analyzer/analyzer.opt:259
+#: config/microblaze/microblaze.opt:108
 #, no-c-format
-msgid "Warn about code paths which attempt to write to a const object."
+msgid "Use hardware floating point square root instruction."
 msgstr ""
 
-#: analyzer/analyzer.opt:263
+#: config/microblaze/microblaze.opt:112
 #, no-c-format
-msgid "Warn about code paths which attempt to write to a string literal."
+msgid "Build application as normal executable."
 msgstr ""
 
-#: analyzer/analyzer.opt:267
+#: config/microblaze/microblaze.opt:116
 #, no-c-format
-msgid "Warn about code paths in which an uninitialized value is used."
+msgid "Build application for use with xmdstub debug agent."
 msgstr ""
 
-#: analyzer/analyzer.opt:271
+#: config/microblaze/microblaze.opt:120
 #, no-c-format
-msgid ""
-"Warn if expressions are too complicated for the analyzer to fully track."
+msgid "Build application to be loaded using a bootloader."
 msgstr ""
 
-#: analyzer/analyzer.opt:275
+#: config/microblaze/microblaze.opt:124
 #, no-c-format
-msgid "Warn if the code is too complicated for the analyzer to fully explore."
+msgid "Build application without any of the MicroBlaze vectors."
 msgstr ""
 
-#: analyzer/analyzer.opt:279
+#: config/microblaze/microblaze.opt:128
 #, no-c-format
-msgid "Restrict the analyzer to run just the named checker."
+msgid "Use hardware prefetch instruction."
 msgstr ""
 
-#: analyzer/analyzer.opt:283
+#: config/microblaze/microblaze.opt:132
 #, no-c-format
-msgid "Add extra annotations to diagrams."
+msgid ""
+"Data referenced by offset from start of text instead of GOT (with -fPIC/-"
+"fPIE)."
 msgstr ""
 
-#: analyzer/analyzer.opt:287
+#: config/m32r/m32r.opt:34
 #, no-c-format
-msgid "Avoid combining multiple statements into one exploded edge."
+msgid "Compile for the m32rx."
 msgstr ""
 
-#: analyzer/analyzer.opt:291
+#: config/m32r/m32r.opt:38
 #, no-c-format
-msgid "Verify that paths are feasible when emitting diagnostics."
+msgid "Compile for the m32r2."
 msgstr ""
 
-#: analyzer/analyzer.opt:295
+#: config/m32r/m32r.opt:42
 #, no-c-format
-msgid "Issue a note when diagnostics are deduplicated."
+msgid "Compile for the m32r."
 msgstr ""
 
-#: analyzer/analyzer.opt:299
+#: config/m32r/m32r.opt:46
 #, no-c-format
-msgid "Purge unneeded state during analysis."
+msgid "Align all loops to 32 byte boundary."
 msgstr ""
 
-#: analyzer/analyzer.opt:303
+#: config/m32r/m32r.opt:50
 #, no-c-format
-msgid "Merge similar-enough states during analysis."
+msgid "Prefer branches over conditional execution."
 msgstr ""
 
-#: analyzer/analyzer.opt:307
+#: config/m32r/m32r.opt:54
 #, no-c-format
-msgid "Stop exploring an execution path after certain diagnostics."
+msgid "Give branches their default cost."
 msgstr ""
 
-#: analyzer/analyzer.opt:311
+#: config/m32r/m32r.opt:58
 #, no-c-format
-msgid "Enable transitivity of constraints during analysis."
+msgid "Display compile time statistics."
 msgstr ""
 
-#: analyzer/analyzer.opt:315
+#: config/m32r/m32r.opt:62
 #, no-c-format
-msgid "Show events within system headers in analyzer execution paths."
+msgid "Specify cache flush function."
 msgstr ""
 
-#: analyzer/analyzer.opt:319
+#: config/m32r/m32r.opt:66
 #, no-c-format
-msgid "Approximate the effect of function calls to simplify analysis."
+msgid "Specify cache flush trap number."
 msgstr ""
 
-#: analyzer/analyzer.opt:323
+#: config/m32r/m32r.opt:70
 #, no-c-format
-msgid "Try to reconstruct function calls and returns after inlining."
+msgid "Only issue one instruction per cycle."
 msgstr ""
 
-#: analyzer/analyzer.opt:327
+#: config/m32r/m32r.opt:74
 #, no-c-format
-msgid "Emit more verbose descriptions of control flow in diagnostics."
+msgid "Allow two instructions to be issued per cycle."
 msgstr ""
 
-#: analyzer/analyzer.opt:331
+#: config/m32r/m32r.opt:78
 #, no-c-format
-msgid "Emit more verbose descriptions of state changes in diagnostics."
+msgid "Code size: small, medium or large."
 msgstr ""
 
-#: analyzer/analyzer.opt:335
+#: config/m32r/m32r.opt:94
 #, no-c-format
-msgid "Control which events are displayed in diagnostic paths."
+msgid "Don't call any cache flush functions."
 msgstr ""
 
-#: analyzer/analyzer.opt:339
+#: config/m32r/m32r.opt:98
 #, no-c-format
-msgid "Dump various analyzer internals to SRCFILE.analyzer.txt."
+msgid "Don't call any cache flush trap."
 msgstr ""
 
-#: analyzer/analyzer.opt:343
+#: config/m32r/m32r.opt:105
 #, no-c-format
-msgid "Dump various analyzer internals to stderr."
+msgid "Small data area: none, sdata, use."
 msgstr ""
 
-#: analyzer/analyzer.opt:347
+#: config/aarch64/aarch64.opt:70 config/loongarch/loongarch.opt:276
+#, no-c-format
+msgid "The code model option names for -mcmodel:"
+msgstr ""
+
+#: config/aarch64/aarch64.opt:87
 #, no-c-format
 msgid ""
-"Dump analyzer-specific call graph information to a SRCFILE.callgraph.dot "
-"file."
+"Generates an error message if an attempt is made to access a system register "
+"which is not available on the target architecture."
 msgstr ""
 
-#: analyzer/analyzer.opt:351
+#: config/aarch64/aarch64.opt:100
 #, no-c-format
-msgid "Dump the analyzer exploded graph to a SRCFILE.eg.dot file."
+msgid "Workaround for ARM Cortex-A53 Erratum number 835769."
 msgstr ""
 
-#: analyzer/analyzer.opt:355
+#: config/aarch64/aarch64.opt:104
 #, no-c-format
-msgid "Emit diagnostics showing the location of nodes in the exploded graph."
+msgid "Workaround for ARM Cortex-A53 Erratum number 843419."
 msgstr ""
 
-#: analyzer/analyzer.opt:359
+#: config/aarch64/aarch64.opt:116
 #, no-c-format
-msgid "Dump a textual representation of the exploded graph to SRCFILE.eg.txt."
+msgid "The register used to access the thread pointer:"
 msgstr ""
 
-#: analyzer/analyzer.opt:363
+#: config/aarch64/aarch64.opt:147
 #, no-c-format
-msgid ""
-"Dump a textual representation of the exploded graph to SRCFILE.eg-ID.txt."
+msgid "Specify the thread pointer register."
 msgstr ""
 
-#: analyzer/analyzer.opt:367
+#: config/aarch64/aarch64.opt:151
 #, no-c-format
-msgid ""
-"Dump a textual representation of each diagnostic's exploded path to SRCFILE."
-"IDX.KIND.epath.txt."
+msgid "Don't assume that unaligned accesses are handled by the system."
 msgstr ""
 
-#: analyzer/analyzer.opt:371
+#: config/aarch64/aarch64.opt:163
 #, no-c-format
 msgid ""
-"Dump various analyzer internals to SRCFILE.*.fg.dot and SRCFILE.*.tg.dot."
+"Specifies bit size of immediate TLS offsets.  Valid values are 12, 24, 32, "
+"48."
 msgstr ""
 
-#: analyzer/analyzer.opt:375
+#: config/aarch64/aarch64.opt:182
 #, no-c-format
-msgid "Dump various analyzer internals to SRCFILE.*.infinite-loop.dot."
+msgid "Use features of architecture ARCH."
 msgstr ""
 
-#: analyzer/analyzer.opt:379
+#: config/aarch64/aarch64.opt:186
 #, no-c-format
-msgid "Dump analyzer-specific data to a SRCFILE.analyzer.json.gz file."
+msgid "Use features of and optimize for CPU."
 msgstr ""
 
-#: analyzer/analyzer.opt:383
+#: config/aarch64/aarch64.opt:190
 #, no-c-format
-msgid "Dump state-purging information to a SRCFILE.state-purge.dot file."
+msgid "Optimize for CPU."
 msgstr ""
 
-#: analyzer/analyzer.opt:387
+#: config/aarch64/aarch64.opt:194
 #, no-c-format
-msgid "Dump the analyzer supergraph to a SRCFILE.supergraph.dot file."
+msgid "Generate code that conforms to the specified ABI."
 msgstr ""
 
-#: analyzer/analyzer.opt:391
+#: config/aarch64/aarch64.opt:198
 #, no-c-format
 msgid ""
-"Emit custom warnings with internal details intended for analyzer developers."
+"-fdump-tuning-model=<filename> Dump current tuning model to a JSON file."
 msgstr ""
 
-#: config/vms/vms.opt:27
+#: config/aarch64/aarch64.opt:202
 #, no-c-format
-msgid "Malloc data into P2 space."
+msgid "-muser-provided-CPU=<json-tuning-file> User specific CPU tunings."
 msgstr ""
 
-#: config/vms/vms.opt:31
+#: config/aarch64/aarch64.opt:206
 #, no-c-format
-msgid "Set name of main routine for the debugger."
+msgid ""
+"-moverride=<string>\tPower users only! Override CPU optimization parameters."
 msgstr ""
 
-#: config/vms/vms.opt:35
+#: config/aarch64/aarch64.opt:210
 #, no-c-format
-msgid "Use VMS exit codes instead of posix ones."
+msgid "Known AArch64 ABIs (for use with the -mabi= option):"
 msgstr ""
 
-#: config/vms/vms.opt:39
+#: config/aarch64/aarch64.opt:220
 #, no-c-format
-msgid "-mpointer-size=[no,32,short,64,long]\tSet the default pointer size."
+msgid "PC relative literal loads."
 msgstr ""
 
-#: config/mcore/mcore.opt:23
+#: config/aarch64/aarch64.opt:228
 #, no-c-format
-msgid "Generate code for the M*Core M210."
+msgid "Select return address signing scope."
 msgstr ""
 
-#: config/mcore/mcore.opt:27
+#: config/aarch64/aarch64.opt:232
 #, no-c-format
-msgid "Generate code for the M*Core M340."
+msgid ""
+"Supported AArch64 return address signing scope (for use with -msign-return-"
+"address= option):"
 msgstr ""
 
-#: config/mcore/mcore.opt:31
+#: config/aarch64/aarch64.opt:245
 #, no-c-format
-msgid "Force functions to be aligned to a 4 byte boundary."
+msgid ""
+"Enable the reciprocal square root approximation.  Enabling this reduces "
+"precision of reciprocal square root results to about 16 bits for single "
+"precision and to 32 bits for double precision."
 msgstr ""
 
-#: config/mcore/mcore.opt:35 config/moxie/moxie.opt:23 config/csky/csky.opt:44
+#: config/aarch64/aarch64.opt:251
 #, no-c-format
-msgid "Generate big-endian code."
+msgid ""
+"Enable the square root approximation.  Enabling this reduces precision of "
+"square root results to about 16 bits for single precision and to 32 bits for "
+"double precision. If enabled, it implies -mlow-precision-recip-sqrt."
 msgstr ""
 
-#: config/mcore/mcore.opt:39
+#: config/aarch64/aarch64.opt:258
 #, no-c-format
-msgid "Emit call graph information."
+msgid ""
+"Enable the division approximation.  Enabling this reduces precision of "
+"division results to about 16 bits for single precision and to 32 bits for "
+"double precision."
 msgstr ""
 
-#: config/mcore/mcore.opt:43
+#: config/aarch64/aarch64.opt:276
 #, no-c-format
-msgid "Use the divide instruction."
+msgid ""
+"Specify when to enable an early register allocation pass.  The possibilities "
+"are: all functions, functions that have access to strided multi-register "
+"instructions, and no functions."
 msgstr ""
 
-#: config/mcore/mcore.opt:47
+#: config/aarch64/aarch64.opt:282
 #, no-c-format
-msgid "Inline constants if it can be done in 2 insns or less."
+msgid "The possible SVE vector lengths:"
 msgstr ""
 
-#: config/mcore/mcore.opt:51 config/moxie/moxie.opt:27 config/csky/csky.opt:51
+#: config/aarch64/aarch64.opt:304
 #, no-c-format
-msgid "Generate little-endian code."
+msgid ""
+"-msve-vector-bits=<number>\tSet the number of bits in an SVE vector register."
 msgstr ""
 
-#: config/mcore/mcore.opt:56 config/fr30/fr30.opt:27
+#: config/aarch64/aarch64.opt:308
 #, no-c-format
 msgid ""
-"Assume that run-time support has been provided, so omit -lsim from the "
-"linker command line."
+"-mautovec-preference=[default|asimd-only|sve-only|prefer-asimd|prefer-sve] "
+"Force an ISA selection strategy for auto-vectorization.  For best "
+"performance it is highly recommended to use -mcpu or -mtune instead.  This "
+"parameter should only be used for code exploration."
 msgstr ""
 
-#: config/mcore/mcore.opt:60
+#: config/aarch64/aarch64.opt:319
 #, no-c-format
-msgid "Use arbitrary sized immediates in bit operations."
+msgid "Enables verbose cost model dumping in the debug dump files."
 msgstr ""
 
-#: config/mcore/mcore.opt:64
+#: config/aarch64/aarch64.opt:323
 #, no-c-format
-msgid "Prefer word accesses over byte accesses."
+msgid "Generate code to track when the CPU might be speculating incorrectly."
 msgstr ""
 
-#: config/mcore/mcore.opt:71
+#: config/aarch64/aarch64.opt:327
 #, no-c-format
-msgid "Set the maximum amount for a single stack increment operation."
+msgid ""
+"Enable the copy of the AArch64 load/store pair fusion pass that runs before "
+"register allocation."
 msgstr ""
 
-#: config/mcore/mcore.opt:75
+#: config/aarch64/aarch64.opt:332
 #, no-c-format
-msgid "Always treat bitfields as int-sized."
+msgid ""
+"Enable the copy of the AArch64 load/store pair fusion pass that runs after "
+"register allocation."
 msgstr ""
 
-#: config/linux-android.opt:23
+#: config/aarch64/aarch64.opt:351
 #, no-c-format
-msgid "Generate code for the Android platform."
+msgid ""
+"Use the system register specified on the command line as the stack protector "
+"guard register. This option is for use with fstack-protector-strong and not "
+"for use in user-land code."
 msgstr ""
 
-#: config/mmix/mmix.opt:24
+#: config/aarch64/aarch64.opt:357
 #, no-c-format
-msgid "For intrinsics library: pass all parameters in registers."
+msgid ""
+"Use an immediate to offset from the stack protector guard register, sp_el0. "
+"This option is for use with fstack-protector-strong and not for use in user-"
+"land code."
 msgstr ""
 
-#: config/mmix/mmix.opt:28
+#: config/aarch64/aarch64.opt:366
 #, no-c-format
-msgid "Use register stack for parameters and return value."
+msgid "Generate local calls to out-of-line atomic operations."
 msgstr ""
 
-#: config/mmix/mmix.opt:32
+#: config/aarch64/aarch64.opt:370
 #, no-c-format
-msgid "Use call-clobbered registers for parameters and return value."
+msgid ""
+"When vectorizing, consider using multiple different approaches and use the "
+"cost model to choose the cheapest one."
 msgstr ""
 
-#: config/mmix/mmix.opt:37
+#: config/aarch64/aarch64.opt:375
 #, no-c-format
-msgid "Use epsilon-respecting floating point compare instructions."
+msgid ""
+"The number of Newton iterations for calculating the reciprocal for float "
+"type.  The precision of division is proportional to this param when division "
+"approximation is enabled.  The default value is 1."
 msgstr ""
 
-#: config/mmix/mmix.opt:41
+#: config/aarch64/aarch64.opt:379
 #, no-c-format
-msgid "Use zero-extending memory loads, not sign-extending ones."
+msgid ""
+"The number of Newton iterations for calculating the reciprocal for double "
+"type.  The precision of division is proportional to this param when division "
+"approximation is enabled.  The default value is 2."
 msgstr ""
 
-#: config/mmix/mmix.opt:45
+#: config/aarch64/aarch64.opt:383
 #, no-c-format
 msgid ""
-"Generate divide results with reminder having the same sign as the divisor "
-"(not the dividend)."
+"An old alias for -mautovec-preference.  If both -mautovec-preference and --"
+"param=aarch64-autovec-preference are passed, the --param value will be used."
 msgstr ""
 
-#: config/mmix/mmix.opt:49
+#: config/aarch64/aarch64.opt:409
 #, no-c-format
-msgid "Prepend global symbols with \":\" (for use with PREFIX)."
+msgid "Constant memcpy size in bytes above which to start using MOPS sequence."
 msgstr ""
 
-#: config/mmix/mmix.opt:53
+#: config/aarch64/aarch64.opt:413
 #, no-c-format
-msgid "Do not provide a default start-address 0x100 of the program."
+msgid ""
+"Constant memmove size in bytes above which to start using MOPS sequence."
 msgstr ""
 
-#: config/mmix/mmix.opt:57
+#: config/aarch64/aarch64.opt:417
 #, no-c-format
-msgid "Link to emit program in ELF format (rather than mmo)."
+msgid "Constant memset size in bytes from which to start using MOPS sequence."
 msgstr ""
 
-#: config/mmix/mmix.opt:61
+#: config/aarch64/aarch64.opt:425
 #, no-c-format
-msgid "Use P-mnemonics for branches statically predicted as taken."
+msgid ""
+"--param=aarch64-ldp-policy=[default|always|never|aligned] Fine-grained "
+"policy for load pairs."
 msgstr ""
 
-#: config/mmix/mmix.opt:65
+#: config/aarch64/aarch64.opt:429
 #, no-c-format
-msgid "Don't use P-mnemonics for branches."
+msgid ""
+"--param=aarch64-stp-policy=[default|always|never|aligned] Fine-grained "
+"policy for store pairs."
 msgstr ""
 
-#: config/mmix/mmix.opt:79
+#: config/aarch64/aarch64.opt:448
 #, no-c-format
-msgid "Use addresses that allocate global registers."
+msgid ""
+"Limit on number of alias checks performed when attempting to form an ldp/stp."
 msgstr ""
 
-#: config/mmix/mmix.opt:83
+#: config/aarch64/aarch64.opt:452
 #, no-c-format
-msgid "Do not use addresses that allocate global registers."
+msgid ""
+"Param to control which writeback opportunities we try to handle in the load/"
+"store pair fusion pass.  A value of zero disables writeback handling.  One "
+"means we try to form pairs involving one or more existing individual "
+"writeback accesses where possible.  A value of two means we also try to "
+"opportunistically form writeback opportunities by folding in trailing "
+"destructive updates of the base register used by a pair."
 msgstr ""
 
-#: config/mmix/mmix.opt:87
+#: config/aarch64/aarch64.opt:461
 #, no-c-format
-msgid "Generate a single exit point for each function."
+msgid ""
+"Param to control the treshold in number of granules beyond which an explicit "
+"loop for tagging a memory block is emitted."
 msgstr ""
 
-#: config/mmix/mmix.opt:91
+#: config/aarch64/aarch64.opt:466
 #, no-c-format
-msgid "Do not generate a single exit point for each function."
+msgid "This option is deprecated."
 msgstr ""
 
-#: config/mmix/mmix.opt:95
+#: config/vms/vms.opt:27
 #, no-c-format
-msgid "Set start-address of the program."
+msgid "Malloc data into P2 space."
 msgstr ""
 
-#: config/mmix/mmix.opt:99
+#: config/vms/vms.opt:31
 #, no-c-format
-msgid "Set start-address of data."
+msgid "Set name of main routine for the debugger."
 msgstr ""
 
-#: config/darwin.opt:34
+#: config/vms/vms.opt:35
 #, no-c-format
-msgid "Generate code for darwin loadable kernel extensions."
+msgid "Use VMS exit codes instead of posix ones."
 msgstr ""
 
-#: config/darwin.opt:38 config/darwin.opt:46
+#: config/vms/vms.opt:39
 #, no-c-format
-msgid "Generate compile-time CFString objects."
+msgid "-mpointer-size=[no,32,short,64,long]\tSet the default pointer size."
 msgstr ""
 
-#: config/darwin.opt:42
+#: config/xtensa/xtensa.opt:26
 #, no-c-format
-msgid ""
-"-iframework <dir>\tAdd <dir> to the end of the system framework include path."
+msgid "Use CONST16 instruction to load constants."
 msgstr ""
 
-#: config/darwin.opt:50
+#: config/xtensa/xtensa.opt:30
 #, no-c-format
-msgid "Warn if constant CFString objects contain non-portable characters."
+msgid "Disable position-independent code (PIC) for use in OS kernel code."
 msgstr ""
 
-#: config/darwin.opt:55
+#: config/xtensa/xtensa.opt:34
 #, no-c-format
-msgid "Generate AT&T-style stubs for Mach-O."
+msgid "Use indirect CALLXn instructions for large programs."
 msgstr ""
 
-#: config/darwin.opt:59
+#: config/xtensa/xtensa.opt:38
 #, no-c-format
-msgid "Generate code suitable for executables (NOT shared libs)."
+msgid ""
+"Set extra memory access cost for L32R instruction, in clock-cycle units."
 msgstr ""
 
-#: config/darwin.opt:63
+#: config/xtensa/xtensa.opt:46
 #, no-c-format
-msgid "Generate code suitable for fast turn around debugging."
+msgid "Automatically align branch targets to reduce branch penalties."
 msgstr ""
 
-#: config/darwin.opt:67
+#: config/xtensa/xtensa.opt:50
 #, no-c-format
-msgid "Generate code for the kernel or loadable kernel extensions."
+msgid "Intersperse literal pools with code in the text section."
 msgstr ""
 
-#: config/darwin.opt:75
+#: config/xtensa/xtensa.opt:54
 #, no-c-format
-msgid "The earliest macOS version on which this program will run."
+msgid ""
+"Relax literals in assembler and place them automatically in the text section."
 msgstr ""
 
-#: config/darwin.opt:80
+#: config/xtensa/xtensa.opt:58
 #, no-c-format
-msgid "Set sizeof(bool) to 1."
+msgid ""
+"-mno-serialize-volatile\tDo not serialize volatile memory references with "
+"MEMW instructions."
 msgstr ""
 
-#: config/darwin.opt:84
+#: config/xtensa/xtensa.opt:65
 #, no-c-format
-msgid "Force generation of external symbol indirection stubs."
+msgid "Use call0 ABI."
 msgstr ""
 
-#: config/darwin.opt:92
+#: config/xtensa/xtensa.opt:69
 #, no-c-format
-msgid ""
-"-mtarget-linker <version>\tSpecify that ld64 <version> is the toolchain "
-"linker for the current invocation."
+msgid "Use windowed registers ABI."
 msgstr ""
 
-#: config/darwin.opt:98
+#: config/xtensa/xtensa.opt:73 config/m68k/m68k.opt:192
 #, no-c-format
-msgid ""
-"Load all members of archive libraries, rather than only those that satisfy "
-"undefined symbols."
+msgid "Do not use unaligned memory references."
 msgstr ""
 
-#: config/darwin.opt:102
+#: config/g.opt:27
 #, no-c-format
 msgid ""
-"-allowable_client <name>\tThe output dylib is private to the client <name>."
+"-G<number>\tPut global and static data smaller than <number> bytes into a "
+"special section (on some targets)."
 msgstr ""
 
-#: config/darwin.opt:106
+#: config/vxworks.opt:36
 #, no-c-format
-msgid "-arch <name>\tGenerate output for architecture <name>."
+msgid "Assume the VxWorks RTP environment."
 msgstr ""
 
-#: config/darwin.opt:110
+#: config/vxworks.opt:43
 #, no-c-format
-msgid ""
-"Mismatches between file architecture and one specified by \"-arch\" are "
-"errors instead of warnings."
+msgid "Assume the VxWorks vThreads environment."
 msgstr ""
 
-#: config/darwin.opt:114
+#: config/mn10300/mn10300.opt:30
 #, no-c-format
-msgid ""
-"The earliest macOS version on which this program will run (formatted for the "
-"assembler)."
+msgid "Target the AM33 processor."
 msgstr ""
 
-#: config/darwin.opt:118
+#: config/mn10300/mn10300.opt:34
 #, no-c-format
-msgid ""
-"Generate an output executable that binds symbols on load, rather than lazily."
+msgid "Target the AM33/2.0 processor."
 msgstr ""
 
-#: config/darwin.opt:122
+#: config/mn10300/mn10300.opt:38
 #, no-c-format
-msgid "Generate a Mach-O bundle (file type MH_BUNDLE)."
+msgid "Target the AM34 processor."
 msgstr ""
 
-#: config/darwin.opt:126
+#: config/mn10300/mn10300.opt:46
 #, no-c-format
-msgid ""
-"-bundle_loader <executable>\tTreat <executable> (that will be loading this "
-"bundle) as if it was one of the dynamic libraries the bundle is linked "
-"against for symbol resolution."
+msgid "Work around hardware multiply bug."
 msgstr ""
 
-#: config/darwin.opt:130
+#: config/mn10300/mn10300.opt:55
 #, no-c-format
-msgid ""
-"-client_name <name>\tEnable the executable being built to link against a "
-"private dylib (using allowable_client)."
+msgid "Enable linker relaxations."
 msgstr ""
 
-#: config/darwin.opt:134
+#: config/mn10300/mn10300.opt:59
 #, no-c-format
-msgid ""
-"-compatibility_version <number>\tSet the version for the client interface.  "
-"Client programs must record a value less than or equal to <number>, or the "
-"binding will fail at runtime."
+msgid "Return pointers in both a0 and d0."
 msgstr ""
 
-#: config/darwin.opt:138
+#: config/mn10300/mn10300.opt:63
 #, no-c-format
-msgid ""
-"-current_version <number>\tSet the current version for the library to "
-"<number>."
+msgid "Allow gcc to generate LIW instructions."
 msgstr ""
 
-#: config/darwin.opt:142
+#: config/mn10300/mn10300.opt:67
 #, no-c-format
-msgid ""
-"Remove code and data that is unreachable from any exported symbol (including "
-"the entry point)."
+msgid "Allow gcc to generate the SETLB and Lcc instructions."
 msgstr ""
 
-#: config/darwin.opt:146
+#: config/v850/v850.opt:29
 #, no-c-format
-msgid ""
-"-dylib_file install_name:file_name\tThis allows linking of a dylib with "
-"\"install_name\" but to be found in a different install position "
-"\"file_name\""
+msgid "Use registers r2 and r5."
 msgstr ""
 
-#: config/darwin.opt:150
+#: config/v850/v850.opt:33
 #, no-c-format
-msgid ""
-"Produce a Mach-O dylinker (file type MH_DYLINKER), only used for building "
-"dyld."
+msgid "Use 4 byte entries in switch tables."
 msgstr ""
 
-#: config/darwin.opt:154
+#: config/v850/v850.opt:37
 #, no-c-format
-msgid "-dylinker_install_name <path>\tOnly used for building dyld."
+msgid "Enable backend debugging."
 msgstr ""
 
-#: config/darwin.opt:158
+#: config/v850/v850.opt:41
 #, no-c-format
-msgid ""
-"The default (and opposite of -static), implied by user mode executables, "
-"shared libraries and bundles."
+msgid "Do not use the callt instruction (default)."
 msgstr ""
 
-#: config/darwin.opt:162
+#: config/v850/v850.opt:45
 #, no-c-format
-msgid ""
-"Produce a Mach-O shared library (file type MH_DYLIB), synonym for \"-"
-"shared\"."
+msgid "Reuse r30 on a per-function basis."
 msgstr ""
 
-#: config/darwin.opt:166
+#: config/v850/v850.opt:49
 #, no-c-format
-msgid ""
-"-exported_symbols_list <filename>\tExport global symbols in <filename> in "
-"linked output file; any symbols not mentioned will be treated as \"hidden\"."
+msgid "Alias for -mrh850-abi."
 msgstr ""
 
-#: config/darwin.opt:170
+#: config/v850/v850.opt:53
 #, no-c-format
-msgid ""
-"Supply a list of objects to be linked from a file, rather than the command "
-"line."
+msgid "Prohibit PC-relative function calls."
 msgstr ""
 
-#: config/darwin.opt:174 config/darwin.opt:194
+#: config/v850/v850.opt:57
 #, no-c-format
-msgid "Used for generating code for some older kernel revisions."
+msgid "Use stubs for function prologues."
 msgstr ""
 
-#: config/darwin.opt:178
+#: config/v850/v850.opt:61
 #, no-c-format
-msgid ""
-"Ignore the normal two-level namespace; resolve symbols in command line order "
-"and do not record which library provided the resolved symbol."
+msgid "Set the max size of data eligible for the SDA area."
 msgstr ""
 
-#: config/darwin.opt:182
+#: config/v850/v850.opt:68
 #, no-c-format
-msgid ""
-"For the assembler (and linker) permit any architecture sub-variant to be "
-"used without error."
+msgid "Enable the use of the short load instructions."
 msgstr ""
 
-#: config/darwin.opt:186
+#: config/v850/v850.opt:72
 #, no-c-format
-msgid ""
-"Set the output object such that, on loading, dyld will ignore any two-level "
-"namespace information and resolve symbols in the discovery order for loaded "
-"libs."
+msgid "Same as: -mep -mprolog-function."
 msgstr ""
 
-#: config/darwin.opt:190
+#: config/v850/v850.opt:76
 #, no-c-format
-msgid ""
-"-framework <name>\tThe linker should search for the framework <name> in the "
-"framework search path."
+msgid "Set the max size of data eligible for the TDA area."
 msgstr ""
 
-#: config/darwin.opt:198
+#: config/v850/v850.opt:83
 #, no-c-format
-msgid "Abbreviation for \"-g -fno-eliminate-unused-debug-symbols\"."
+msgid "Do not enforce strict alignment."
 msgstr ""
 
-#: config/darwin.opt:202
+#: config/v850/v850.opt:87
 #, no-c-format
-msgid "Abbreviation for \"-g -feliminate-unused-debug-symbols\"."
+msgid ""
+"Put jump tables for switch statements into the .data section rather than "
+"the .code section."
 msgstr ""
 
-#: config/darwin.opt:206
+#: config/v850/v850.opt:95
 #, no-c-format
-msgid ""
-"Automatically adds space for longer path names in load commands (up to "
-"MAXPATHLEN)."
+msgid "Compile for the v850 processor."
 msgstr ""
 
-#: config/darwin.opt:210
+#: config/v850/v850.opt:99
 #, no-c-format
-msgid ""
-"-image_base <address>\tSpecify <address> as the base address for a dylib or "
-"bundle."
+msgid "Compile for the v850e processor."
 msgstr ""
 
-#: config/darwin.opt:214
+#: config/v850/v850.opt:103
 #, no-c-format
-msgid ""
-"-init <symbol_name>\tThe symbol <symbol_name> will be used as the first "
-"initializer for a dylib."
+msgid "Compile for the v850e1 processor."
 msgstr ""
 
-#: config/darwin.opt:218
+#: config/v850/v850.opt:107
 #, no-c-format
-msgid "-install_name <name>\tSet the install name for a dylib."
+msgid "Compile for the v850es variant of the v850e1."
 msgstr ""
 
-#: config/darwin.opt:222
+#: config/v850/v850.opt:111
 #, no-c-format
-msgid ""
-"Usually \"private extern\" (hidden) symbols are made local when linking, "
-"this command suppresses that such that they remain exported."
+msgid "Compile for the v850e2 processor."
 msgstr ""
 
-#: config/darwin.opt:226
+#: config/v850/v850.opt:115
 #, no-c-format
-msgid ""
-"(Obsolete after 10.4) Multi modules are ignored at runtime since macOS 10.4."
+msgid "Compile for the v850e2v3 processor."
 msgstr ""
 
-#: config/darwin.opt:230
+#: config/v850/v850.opt:119
 #, no-c-format
-msgid ""
-"(Obsolete after 10.4) -multiply_defined <treatment>\tProvided a mechanism "
-"for warning about symbols defined in multiple dylibs."
+msgid "Compile for the v850e3v5 processor."
 msgstr ""
 
-#: config/darwin.opt:234
+#: config/v850/v850.opt:126
 #, no-c-format
-msgid ""
-"(Obsolete after 10.4) -multiply_defined_unused <treatment>\tProvided a "
-"mechanism for warning about symbols defined in the current executable also "
-"being defined in linked dylibs."
+msgid "Enable v850e3v5 loop instructions."
 msgstr ""
 
-#: config/darwin.opt:238
+#: config/v850/v850.opt:130
 #, no-c-format
-msgid ""
-"(Obsolete) Current linkers never dead-strip these items, so the option is "
-"not needed."
+msgid "Set the max size of data eligible for the ZDA area."
 msgstr ""
 
-#: config/darwin.opt:242
+#: config/v850/v850.opt:137
 #, no-c-format
-msgid "Do not add a default symbol exports to modules or dynamic libraries."
+msgid "Enable relaxing in the assembler."
 msgstr ""
 
-#: config/darwin.opt:246
+#: config/v850/v850.opt:141
 #, no-c-format
-msgid ""
-"Do not add default run paths (for the compiler library directories) to "
-"executables, modules or dynamic libraries."
+msgid "Prohibit PC relative jumps."
 msgstr ""
 
-#: config/darwin.opt:250
+#: config/v850/v850.opt:145
 #, no-c-format
-msgid "(Obsolete after 10.3.9) Set MH_NOPREFIXBINDING, in an executable."
+msgid "Inhibit the use of hardware floating point instructions."
 msgstr ""
 
-#: config/darwin.opt:254
+#: config/v850/v850.opt:149
 #, no-c-format
-msgid "(Obsolete after 10.4)\tSet MH_NOMULTIDEFS in an umbrella framework."
+msgid ""
+"Allow the use of hardware floating point instructions for V850E2V3 and up."
 msgstr ""
 
-#: config/darwin.opt:258 config/darwin.opt:279 config/darwin.opt:283
+#: config/v850/v850.opt:153
 #, no-c-format
-msgid "(Obsolete) LD_PREBIND is no longer supported."
+msgid "Enable support for the RH850 ABI.  This is the default."
 msgstr ""
 
-#: config/darwin.opt:262
+#: config/v850/v850.opt:157
 #, no-c-format
-msgid "(Obsolete) This is the default."
+msgid "Enable support for the old GCC ABI."
 msgstr ""
 
-#: config/darwin.opt:275
+#: config/v850/v850.opt:161
 #, no-c-format
-msgid ""
-"-pagezero_size <size>\tAllows setting the page 0 size to 4kb when required."
+msgid "Support alignments of up to 64-bits."
 msgstr ""
 
-#: config/darwin.opt:287
+#: config/m68k/m68k-tables.opt:25
 #, no-c-format
-msgid "Produces a Mach-O file suitable for embedded/ROM use."
+msgid "Known M68K CPUs (for use with the -mcpu= option):"
 msgstr ""
 
-#: config/darwin.opt:291
+#: config/m68k/m68k-tables.opt:365
 #, no-c-format
-msgid ""
-"(Obsolete) Allowed linking to proceed with \"-flat_namespace\" when a linked "
-"bundle contained a symbol also exported from the main executable."
+msgid "Known M68K microarchitectures (for use with the -mtune= option):"
 msgstr ""
 
-#: config/darwin.opt:298
+#: config/m68k/m68k-tables.opt:411
 #, no-c-format
-msgid "Synonym for \"-export-dynamic\" for linker versions that support it."
+msgid "Known M68K ISAs (for use with the -march= option):"
 msgstr ""
 
-#: config/darwin.opt:302
+#: config/m68k/m68k.opt:30
 #, no-c-format
-msgid ""
-"-read_only_relocs <treatment>\tAllow relocations in read-only pages (not "
-"recommended)."
+msgid "Generate code for a 520X."
 msgstr ""
 
-#: config/darwin.opt:306
+#: config/m68k/m68k.opt:34
 #, no-c-format
-msgid ""
-"-sectalign <segname> <sectname> <value>\tSet section <sectname> in segment "
-"<segname> to have alignment <value> which must be an integral power of two "
-"expressed in hexadecimal form."
+msgid "Generate code for a 5206e."
 msgstr ""
 
-#: config/darwin.opt:310
+#: config/m68k/m68k.opt:38
 #, no-c-format
-msgid ""
-"-sectcreate <segname> <sectname> <file>\tCreate section <sectname> in "
-"segment <segname> from the contents of <file>."
+msgid "Generate code for a 528x."
 msgstr ""
 
-#: config/darwin.opt:314
+#: config/m68k/m68k.opt:42
 #, no-c-format
-msgid ""
-"(Obsolete) -sectobjectsymbols <segname> <sectname>\tSetting a local symbol "
-"at the start of a section is no longer supported."
+msgid "Generate code for a 5307."
 msgstr ""
 
-#: config/darwin.opt:318
+#: config/m68k/m68k.opt:46
 #, no-c-format
-msgid ""
-"(Obsolete) -sectorder <segname> <sectname> <orderfile>\tReplaced by a more "
-"general option \"-order_file\"."
+msgid "Generate code for a 5407."
 msgstr ""
 
-#: config/darwin.opt:322
+#: config/m68k/m68k.opt:50 config/m68k/m68k.opt:111
 #, no-c-format
-msgid ""
-"-seg_addr_table <file>\tSpecify the base addresses for dynamic libraries; "
-"<file> contains a line for each library."
+msgid "Generate code for a 68000."
 msgstr ""
 
-#: config/darwin.opt:327
+#: config/m68k/m68k.opt:54
 #, no-c-format
-msgid "(Obsolete, ld_classic only) -seg_addr_table_filename <path>."
+msgid "Generate code for a 68010."
 msgstr ""
 
-#: config/darwin.opt:331
+#: config/m68k/m68k.opt:58 config/m68k/m68k.opt:115
 #, no-c-format
-msgid "Synonym for \"image_base\"."
+msgid "Generate code for a 68020."
 msgstr ""
 
-#: config/darwin.opt:335
+#: config/m68k/m68k.opt:62
 #, no-c-format
-msgid ""
-"-segaddr <name> <address>\tSet the base address of segment <name> to "
-"<address> which must be aligned to a page boundary (currently 4kb)."
+msgid "Generate code for a 68040, without any new instructions."
 msgstr ""
 
-#: config/darwin.opt:340
+#: config/m68k/m68k.opt:66
 #, no-c-format
-msgid ""
-"(Obsolete, ld_classic only) -sectcreate <segname> <sectname> <file>\tAllowed "
-"creation of a section from a file."
+msgid "Generate code for a 68060, without any new instructions."
 msgstr ""
 
-#: config/darwin.opt:344
+#: config/m68k/m68k.opt:70
 #, no-c-format
-msgid "(Obsolete) Object files with LINKEDIT sections are no longer supported."
+msgid "Generate code for a 68030."
 msgstr ""
 
-#: config/darwin.opt:348
+#: config/m68k/m68k.opt:74
 #, no-c-format
-msgid ""
-"-segprot <segname> <max_prot> <init_prot>\tThe virtual memory protections "
-"for segment <segname> have maximum and initial values <max_prot> and "
-"<init_prot> respectively.  The specified values may contain \"r\", \"w\", "
-"\"x\" or \"-\" the latter meaning \"no access\"."
+msgid "Generate code for a 68040."
 msgstr ""
 
-#: config/darwin.opt:352
+#: config/m68k/m68k.opt:78
 #, no-c-format
-msgid ""
-"-segs_read_only_addr <address>\tSpecify that <address> is the base address "
-"of the read-only segments of a dylib."
+msgid "Generate code for a 68060."
 msgstr ""
 
-#: config/darwin.opt:356
+#: config/m68k/m68k.opt:82
 #, no-c-format
-msgid ""
-"-segs_read_write_addr <address>\tSpecify that <address> is the base address "
-"address of the read-write segments of a dylib."
+msgid "Generate code for a 68302."
 msgstr ""
 
-#: config/darwin.opt:360
+#: config/m68k/m68k.opt:86
 #, no-c-format
-msgid "(Obsolete)\tThis is the default."
+msgid "Generate code for a 68332."
 msgstr ""
 
-#: config/darwin.opt:364
+#: config/m68k/m68k.opt:91
 #, no-c-format
-msgid ""
-"-sub_library <name>\tLibrary named <name> will be re-exported (only useful "
-"for dylibs)."
+msgid "Generate code for a 68851."
 msgstr ""
 
-#: config/darwin.opt:368
+#: config/m68k/m68k.opt:95
 #, no-c-format
-msgid ""
-"-sub_umbrella <name>\tFramework named <name> will be re-exported (only "
-"useful for dylibs)."
+msgid "Generate code that uses 68881 floating-point instructions."
 msgstr ""
 
-#: config/darwin.opt:372
+#: config/m68k/m68k.opt:99
 #, no-c-format
-msgid "This is the default."
+msgid "Align variables on a 32-bit boundary."
 msgstr ""
 
-#: config/darwin.opt:376
+#: config/m68k/m68k.opt:107
 #, no-c-format
-msgid ""
-"Add extra information to the executable that can speed up dynamic loading "
-"(provided that dependent libraries are unchanged)."
+msgid "Use the bit-field instructions."
 msgstr ""
 
-#: config/darwin.opt:380
+#: config/m68k/m68k.opt:119
 #, no-c-format
-msgid "-umbrella <framework>\tThe specified framework will be re-exported."
+msgid "Generate code for a ColdFire v4e."
 msgstr ""
 
-#: config/darwin.opt:384
+#: config/m68k/m68k.opt:123
 #, no-c-format
-msgid ""
-"-undefined <treatment>\tSpecify the handling for undefined symbols (default "
-"is error)."
+msgid "Specify the target CPU."
 msgstr ""
 
-#: config/darwin.opt:388
+#: config/m68k/m68k.opt:127
 #, no-c-format
-msgid ""
-"-unexported_symbols_list <filename>\tDo not export the global symbols listed "
-"in <filename>."
+msgid "Generate code for a cpu32."
 msgstr ""
 
-#: config/darwin.opt:392
+#: config/m68k/m68k.opt:131
 #, no-c-format
-msgid ""
-"-weak_framework <framework>\tMake a weak link to the specified framework."
+msgid "Use hardware division instructions on ColdFire."
 msgstr ""
 
-#: config/darwin.opt:396
+#: config/m68k/m68k.opt:135
 #, no-c-format
-msgid ""
-"-weak_reference_mismatches <treatment>\tSpecifies what to do if a symbol "
-"import conflicts between file (weak in one and not in another) the default "
-"is to treat the symbol as non-weak."
+msgid "Generate code for a Fido A."
 msgstr ""
 
-#: config/darwin.opt:400
+#: config/m68k/m68k.opt:139
 #, no-c-format
-msgid "Logs which object files the linker loads."
+msgid "Generate code which uses hardware floating point instructions."
 msgstr ""
 
-#: config/darwin.opt:404
+#: config/m68k/m68k.opt:143
 #, no-c-format
-msgid "Logs which symbol(s) caused an object to be loaded."
+msgid "Enable ID based shared library."
 msgstr ""
 
-#: config/darwin.opt:412
+#: config/m68k/m68k.opt:147
 #, no-c-format
-msgid "(Obsolete, ignored)\tOld support similar to \"-whyload\"."
+msgid "Use 32-bit offsets in jump tables rather than 16-bit offsets."
 msgstr ""
 
-#: config/darwin.opt:416
+#: config/m68k/m68k.opt:151
 #, no-c-format
 msgid ""
-"(Obsolete and unhandled by ld64, ignored)\tld should produce an executable "
-"(only handled by ld_classic)."
+"Use LRA for reload instead of the old reload framework.  This option is "
+"experimental, and it may be removed in future versions of the compiler."
 msgstr ""
 
-#: config/bfin/bfin.opt:40 config/msp430/msp430.opt:3 config/c6x/c6x.opt:38
+#: config/m68k/m68k.opt:156
 #, no-c-format
-msgid "Use simulator runtime."
+msgid "Do not use the bit-field instructions."
 msgstr ""
 
-#: config/bfin/bfin.opt:44 config/arm/arm.opt:117
+#: config/m68k/m68k.opt:160
 #, no-c-format
-msgid "Specify the name of the target CPU."
+msgid "Use normal calling convention."
 msgstr ""
 
-#: config/bfin/bfin.opt:48
+#: config/m68k/m68k.opt:164
 #, no-c-format
-msgid "Omit frame pointer for leaf functions."
+msgid "Consider type 'int' to be 32 bits wide."
 msgstr ""
 
-#: config/bfin/bfin.opt:52
+#: config/m68k/m68k.opt:168
 #, no-c-format
-msgid "Program is entirely located in low 64k of memory."
+msgid "Generate pc-relative code."
 msgstr ""
 
-#: config/bfin/bfin.opt:56
+#: config/m68k/m68k.opt:172
 #, no-c-format
-msgid ""
-"Work around a hardware anomaly by adding a number of NOPs before a CSYNC or "
-"SSYNC instruction."
+msgid "Use different calling convention using 'rtd'."
 msgstr ""
 
-#: config/bfin/bfin.opt:61
+#: config/m68k/m68k.opt:184
 #, no-c-format
-msgid "Avoid speculative loads to work around a hardware anomaly."
+msgid "Consider type 'int' to be 16 bits wide."
 msgstr ""
 
-#: config/bfin/bfin.opt:65
+#: config/m68k/m68k.opt:188
 #, no-c-format
-msgid "Enabled ID based shared library."
+msgid "Generate code with library calls for floating point."
 msgstr ""
 
-#: config/bfin/bfin.opt:69
+#: config/m68k/m68k.opt:196
 #, no-c-format
-msgid ""
-"Generate code that won't be linked against any other ID shared libraries, "
-"but may be used as a shared library."
+msgid "Tune for the specified target CPU or architecture."
 msgstr ""
 
-#: config/bfin/bfin.opt:74 config/m68k/m68k.opt:180
+#: config/m68k/m68k.opt:200
 #, no-c-format
-msgid "ID of shared library to build."
+msgid "Support more than 8192 GOT entries on ColdFire."
 msgstr ""
 
-#: config/bfin/bfin.opt:78 config/m68k/m68k.opt:176
+#: config/m68k/m68k.opt:204
 #, no-c-format
-msgid "Enable separate data segment."
+msgid "Support TLS segment larger than 64K."
 msgstr ""
 
-#: config/bfin/bfin.opt:82 config/c6x/c6x.opt:63
+#: config/mingw/mingw.opt:23
 #, no-c-format
-msgid "Avoid generating pc-relative calls; use indirection."
+msgid "Preprocess, compile or link with specified C RunTime DLL library."
 msgstr ""
 
-#: config/bfin/bfin.opt:86
+#: config/mingw/mingw.opt:33
 #, no-c-format
-msgid "Link with the fast floating-point library."
+msgid "Warn about none ISO msvcrt scanf/printf width extensions."
 msgstr ""
 
-#: config/bfin/bfin.opt:90 config/arm/arm.opt:345 config/frv/frv.opt:130
+#: config/mingw/cygming.opt:23
 #, no-c-format
-msgid "Enable Function Descriptor PIC mode."
+msgid "Create console application."
 msgstr ""
 
-#: config/bfin/bfin.opt:94 config/frv/frv.opt:162
+#: config/mingw/cygming.opt:27
 #, no-c-format
-msgid "Enable inlining of PLT in function calls."
+msgid "Generate code for a DLL."
 msgstr ""
 
-#: config/bfin/bfin.opt:98
+#: config/mingw/cygming.opt:31
 #, no-c-format
-msgid "Do stack checking using bounds in L1 scratch memory."
+msgid "Ignore dllimport for functions."
 msgstr ""
 
-#: config/bfin/bfin.opt:102
+#: config/mingw/cygming.opt:35
 #, no-c-format
-msgid "Enable multicore support."
+msgid "Use Mingw-specific thread support."
 msgstr ""
 
-#: config/bfin/bfin.opt:106
+#: config/mingw/cygming.opt:39
 #, no-c-format
-msgid "Build for Core A."
+msgid "Set Windows defines."
 msgstr ""
 
-#: config/bfin/bfin.opt:110
+#: config/mingw/cygming.opt:43
 #, no-c-format
-msgid "Build for Core B."
+msgid "Create GUI application."
 msgstr ""
 
-#: config/bfin/bfin.opt:114
+#: config/mingw/cygming.opt:47
 #, no-c-format
-msgid "Build for SDRAM."
+msgid "Use the GNU extension to the PE format for aligned common data."
 msgstr ""
 
-#: config/bfin/bfin.opt:118
+#: config/mingw/cygming.opt:51
 #, no-c-format
-msgid "Assume ICPLBs are enabled at runtime."
+msgid ""
+"Compile code that relies on Cygwin DLL wrappers to support C++ operator new/"
+"delete replacement."
 msgstr ""
 
-#: config/m68k/m68k-tables.opt:25
+#: config/mingw/cygming.opt:55
 #, no-c-format
-msgid "Known M68K CPUs (for use with the -mcpu= option):"
+msgid "For nested functions on stack executable permission is set."
 msgstr ""
 
-#: config/m68k/m68k-tables.opt:365
+#: config/mingw/cygming.opt:62
 #, no-c-format
-msgid "Known M68K microarchitectures (for use with the -mtune= option):"
+msgid "Put relocated read-only data into .data section."
 msgstr ""
 
-#: config/m68k/m68k-tables.opt:411
+#: config/loongarch/loongarch.opt:41
 #, no-c-format
-msgid "Known M68K ISAs (for use with the -march= option):"
+msgid "Basic ISAs of LoongArch:"
 msgstr ""
 
-#: config/m68k/ieee.opt:24 config/i386/i386.opt:389
+#: config/loongarch/loongarch.opt:55
 #, no-c-format
-msgid "Use IEEE math for fp comparisons."
+msgid "FPU types of LoongArch:"
 msgstr ""
 
-#: config/m68k/m68k.opt:30
+#: config/loongarch/loongarch.opt:68
 #, no-c-format
-msgid "Generate code for a 520X."
+msgid "-mfpu=FPU\tGenerate code for the given FPU."
 msgstr ""
 
-#: config/m68k/m68k.opt:34
+#: config/loongarch/loongarch.opt:75 config/mips/mips.opt:398
 #, no-c-format
-msgid "Generate code for a 5206e."
+msgid "Prevent the use of all hardware floating-point instructions."
 msgstr ""
 
-#: config/m68k/m68k.opt:38
+#: config/loongarch/loongarch.opt:79 config/mips/mips.opt:390
 #, no-c-format
-msgid "Generate code for a 528x."
+msgid ""
+"Restrict the use of hardware floating-point instructions to 32-bit "
+"operations."
 msgstr ""
 
-#: config/m68k/m68k.opt:42
+#: config/loongarch/loongarch.opt:83 config/mips/mips.opt:116
 #, no-c-format
-msgid "Generate code for a 5307."
+msgid ""
+"Allow hardware floating-point instructions to cover both 32-bit and 64-bit "
+"operations."
 msgstr ""
 
-#: config/m68k/m68k.opt:46
+#: config/loongarch/loongarch.opt:87
 #, no-c-format
-msgid "Generate code for a 5407."
+msgid "SIMD extension levels of LoongArch:"
 msgstr ""
 
-#: config/m68k/m68k.opt:50 config/m68k/m68k.opt:111
+#: config/loongarch/loongarch.opt:100
 #, no-c-format
-msgid "Generate code for a 68000."
+msgid "-msimd=SIMD\tGenerate code for the given SIMD extension."
 msgstr ""
 
-#: config/m68k/m68k.opt:54
+#: config/loongarch/loongarch.opt:104
 #, no-c-format
-msgid "Generate code for a 68010."
+msgid "Enable LoongArch SIMD Extension (LSX, 128-bit)."
 msgstr ""
 
-#: config/m68k/m68k.opt:58 config/m68k/m68k.opt:115
+#: config/loongarch/loongarch.opt:108
 #, no-c-format
-msgid "Generate code for a 68020."
+msgid "Enable LoongArch Advanced SIMD Extension (LASX, 256-bit)."
 msgstr ""
 
-#: config/m68k/m68k.opt:62
+#: config/loongarch/loongarch.opt:113
 #, no-c-format
-msgid "Generate code for a 68040, without any new instructions."
+msgid "LoongArch ARCH presets:"
 msgstr ""
 
-#: config/m68k/m68k.opt:66
+#: config/loongarch/loongarch.opt:144
 #, no-c-format
-msgid "Generate code for a 68060, without any new instructions."
+msgid "-march=PROCESSOR\tGenerate code for the given PROCESSOR ISA."
 msgstr ""
 
-#: config/m68k/m68k.opt:70
+#: config/loongarch/loongarch.opt:148
 #, no-c-format
-msgid "Generate code for a 68030."
+msgid "LoongArch TUNE presets:"
 msgstr ""
 
-#: config/m68k/m68k.opt:74
+#: config/loongarch/loongarch.opt:170
 #, no-c-format
-msgid "Generate code for a 68040."
+msgid "-mtune=PROCESSOR\tGenerate optimized code for PROCESSOR."
 msgstr ""
 
-#: config/m68k/m68k.opt:78
+#: config/loongarch/loongarch.opt:179
 #, no-c-format
-msgid "Generate code for a 68060."
+msgid "Base ABI types for LoongArch:"
 msgstr ""
 
-#: config/m68k/m68k.opt:82
+#: config/loongarch/loongarch.opt:201
 #, no-c-format
-msgid "Generate code for a 68302."
+msgid "-mabi=BASEABI\tGenerate code that conforms to the given BASEABI."
 msgstr ""
 
-#: config/m68k/m68k.opt:86
+#: config/loongarch/loongarch.opt:210 config/mips/mips.opt:71
 #, no-c-format
-msgid "Generate code for a 68332."
+msgid ""
+"-mbranch-cost=COST\tSet the cost of branches to roughly COST instructions."
 msgstr ""
 
-#: config/m68k/m68k.opt:91
+#: config/loongarch/loongarch.opt:214
 #, no-c-format
-msgid "Generate code for a 68851."
+msgid ""
+"-maddr-reg-reg-cost=COST  Set the cost of ADDRESS_REG_REG to the value "
+"calculated by COST."
 msgstr ""
 
-#: config/m68k/m68k.opt:95
+#: config/loongarch/loongarch.opt:218 config/mips/mips.opt:83
 #, no-c-format
-msgid "Generate code that uses 68881 floating-point instructions."
+msgid "Trap on integer divide by zero."
 msgstr ""
 
-#: config/m68k/m68k.opt:99
+#: config/loongarch/loongarch.opt:222
 #, no-c-format
-msgid "Align variables on a 32-bit boundary."
+msgid "Conditional moves for integral are enabled."
 msgstr ""
 
-#: config/m68k/m68k.opt:103 config/arm/arm.opt:86 config/nds32/nds32.opt:171
-#: config/c6x/c6x.opt:67
+#: config/loongarch/loongarch.opt:226
 #, no-c-format
-msgid "Specify the name of the target architecture."
+msgid "Conditional moves for float are enabled."
 msgstr ""
 
-#: config/m68k/m68k.opt:107
+#: config/loongarch/loongarch.opt:230
 #, no-c-format
-msgid "Use the bit-field instructions."
+msgid ""
+"Prevent optimizing block moves, which is also the default behavior of -Os."
 msgstr ""
 
-#: config/m68k/m68k.opt:119
+#: config/loongarch/loongarch.opt:238
 #, no-c-format
-msgid "Generate code for a ColdFire v4e."
+msgid ""
+"-mmax-inline-memcpy-size=SIZE\tSet the max size of memcpy to inline, default "
+"is 1024."
 msgstr ""
 
-#: config/m68k/m68k.opt:123
+#: config/loongarch/loongarch.opt:242
 #, no-c-format
-msgid "Specify the target CPU."
+msgid ""
+"-mbreak-code=CODE\tUse 'break CODE' for traps supposed to be unrecoverable, "
+"or an 'amswap.w' instruction leading to INE if CODE is out of range."
 msgstr ""
 
-#: config/m68k/m68k.opt:127
+#: config/loongarch/loongarch.opt:246 config/mips/mips.opt:150
 #, no-c-format
-msgid "Generate code for a cpu32."
+msgid "The code model option names for -mexplicit-relocs:"
 msgstr ""
 
-#: config/m68k/m68k.opt:131
+#: config/loongarch/loongarch.opt:259 config/mips/mips.opt:163
 #, no-c-format
-msgid "Use hardware division instructions on ColdFire."
+msgid "Use %reloc() assembly operators."
 msgstr ""
 
-#: config/m68k/m68k.opt:135
+#: config/loongarch/loongarch.opt:263 config/mips/mips.opt:167
 #, no-c-format
-msgid "Generate code for a Fido A."
+msgid "Use %reloc() assembly operators (for backward compatibility)."
 msgstr ""
 
-#: config/m68k/m68k.opt:139
+#: config/loongarch/loongarch.opt:271
 #, no-c-format
-msgid "Generate code which uses hardware floating point instructions."
+msgid ""
+"Generate approximate reciprocal divide and square root for better throughput."
 msgstr ""
 
-#: config/m68k/m68k.opt:143
+#: config/loongarch/loongarch.opt:302
 #, no-c-format
-msgid "Enable ID based shared library."
+msgid "Avoid using the GOT to access external symbols."
 msgstr ""
 
-#: config/m68k/m68k.opt:147
+#: config/loongarch/loongarch.opt:311
 #, no-c-format
-msgid "Use 32-bit offsets in jump tables rather than 16-bit offsets."
+msgid "Pass -mrelax or -mno-relax option to the assembler."
 msgstr ""
 
-#: config/m68k/m68k.opt:151 config/avr/avr.opt:23
+#: config/loongarch/loongarch.opt:329
 #, no-c-format
 msgid ""
-"Usa LRA for reload instead of the old reload framework.  This option is "
-"experimental, and it may be removed in future versions of the compiler."
+"Used to limit unroll factor which indicates how much the autovectorizer may "
+"unroll a loop.  The default value is 6."
 msgstr ""
 
-#: config/m68k/m68k.opt:156
+#: config/loongarch/loongarch.opt:347
 #, no-c-format
-msgid "Do not use the bit-field instructions."
+msgid ""
+"Annotate table jump instruction (jr {reg}) to correlate it with the jump "
+"table."
 msgstr ""
 
-#: config/m68k/m68k.opt:160
+#: config/loongarch/loongarch.opt:351
 #, no-c-format
-msgid "Use normal calling convention."
+msgid "Support frecipe.{s/d} and frsqrte.{s/d} instructions."
 msgstr ""
 
-#: config/m68k/m68k.opt:164
+#: config/loongarch/loongarch.opt:355
 #, no-c-format
-msgid "Consider type 'int' to be 32 bits wide."
+msgid ""
+"Support div.w[u] and mod.w[u] instructions with inputs not sign-extended."
 msgstr ""
 
-#: config/m68k/m68k.opt:168
+#: config/loongarch/loongarch.opt:359
 #, no-c-format
-msgid "Generate pc-relative code."
+msgid "Support am{swap/add}[_db].{b/h} instructions."
 msgstr ""
 
-#: config/m68k/m68k.opt:172
+#: config/loongarch/loongarch.opt:363
 #, no-c-format
-msgid "Use different calling convention using 'rtd'."
+msgid "Support amcas[_db].{b/h/w/d} instructions."
 msgstr ""
 
-#: config/m68k/m68k.opt:184
+#: config/loongarch/loongarch.opt:367
 #, no-c-format
-msgid "Consider type 'int' to be 16 bits wide."
+msgid "Support sc.q instruction."
 msgstr ""
 
-#: config/m68k/m68k.opt:188
+#: config/loongarch/loongarch.opt:371
 #, no-c-format
-msgid "Generate code with library calls for floating point."
+msgid "Do not need load-load barriers (dbar 0x700)."
 msgstr ""
 
-#: config/m68k/m68k.opt:192 config/xtensa/xtensa.opt:73
+#: config/epiphany/epiphany.opt:24
 #, no-c-format
-msgid "Do not use unaligned memory references."
+msgid "Don't use any of r32..r63."
 msgstr ""
 
-#: config/m68k/m68k.opt:196
+#: config/epiphany/epiphany.opt:28
 #, no-c-format
-msgid "Tune for the specified target CPU or architecture."
+msgid ""
+"Preferentially allocate registers that allow short instruction generation."
 msgstr ""
 
-#: config/m68k/m68k.opt:200
+#: config/epiphany/epiphany.opt:32
 #, no-c-format
-msgid "Support more than 8192 GOT entries on ColdFire."
+msgid "Set branch cost."
 msgstr ""
 
-#: config/m68k/m68k.opt:204
+#: config/epiphany/epiphany.opt:36
 #, no-c-format
-msgid "Support TLS segment larger than 64K."
+msgid "Enable conditional move instruction usage."
 msgstr ""
 
-#: config/riscv/riscv.opt:26 config/aarch64/aarch64.opt:83
-#: config/arm/arm.opt:105 config/microblaze/microblaze.opt:60
+#: config/epiphany/epiphany.opt:40
 #, no-c-format
-msgid "Assume target CPU is configured as big endian."
+msgid "Set number of nops to emit before each insn pattern."
 msgstr ""
 
-#: config/riscv/riscv.opt:30 config/aarch64/aarch64.opt:103
-#: config/arm/arm.opt:170 config/microblaze/microblaze.opt:64
+#: config/epiphany/epiphany.opt:52
 #, no-c-format
-msgid "Assume target CPU is configured as little endian."
+msgid "Use software floating point comparisons."
 msgstr ""
 
-#: config/riscv/riscv.opt:34
+#: config/epiphany/epiphany.opt:56
 #, no-c-format
-msgid "-mbranch-cost=N\tSet the cost of branches to roughly N instructions."
+msgid "Enable split of 32 bit immediate loads into low / high part."
 msgstr ""
 
-#: config/riscv/riscv.opt:38
+#: config/epiphany/epiphany.opt:60
 #, no-c-format
-msgid "This option is deprecated; use -fplt or -fno-plt instead."
+msgid "Enable use of POST_INC / POST_DEC."
 msgstr ""
 
-#: config/riscv/riscv.opt:42
+#: config/epiphany/epiphany.opt:64
 #, no-c-format
-msgid "Specify integer and floating-point calling convention."
+msgid "Enable use of POST_MODIFY."
 msgstr ""
 
-#: config/riscv/riscv.opt:46 config/i386/i386.opt:444
+#: config/epiphany/epiphany.opt:68
 #, no-c-format
-msgid "Attempt to keep stack aligned to this power of 2."
+msgid "Set number of bytes on the stack preallocated for use by the callee."
 msgstr ""
 
-#: config/riscv/riscv.opt:50
+#: config/epiphany/epiphany.opt:72
 #, no-c-format
-msgid "Supported ABIs (for use with the -mabi= option):"
+msgid "Assume round to nearest is selected for purposes of scheduling."
 msgstr ""
 
-#: config/riscv/riscv.opt:78
+#: config/epiphany/epiphany.opt:76
 #, no-c-format
-msgid "Use hardware floating-point divide and square root instructions."
+msgid "Generate call insns as indirect calls."
 msgstr ""
 
-#: config/riscv/riscv.opt:82
+#: config/epiphany/epiphany.opt:80
 #, no-c-format
-msgid "Use hardware instructions for integer division."
+msgid "Generate call insns as direct calls."
 msgstr ""
 
-#: config/riscv/riscv.opt:86
+#: config/epiphany/epiphany.opt:84
 #, no-c-format
 msgid ""
-"-march=\tGenerate code for given RISC-V ISA (e.g. RV64IM).  ISA strings must "
-"be lower-case."
+"Assume labels and symbols can be addressed using 16 bit absolute addresses."
 msgstr ""
 
-#: config/riscv/riscv.opt:91
+#: config/epiphany/epiphany.opt:113
 #, no-c-format
-msgid "-march=help\tPrint supported -march extensions."
+msgid ""
+"A floating point to integer truncation may be replaced with rounding to save "
+"mode switching."
 msgstr ""
 
-#: config/riscv/riscv.opt:103 config/mips/mips.opt:426
+#: config/epiphany/epiphany.opt:117
 #, no-c-format
-msgid "-mtune=PROCESSOR\tOptimize the output for PROCESSOR."
+msgid "Vectorize for double-word operations."
 msgstr ""
 
-#: config/riscv/riscv.opt:107
+#: config/epiphany/epiphany.opt:133
 #, no-c-format
 msgid ""
-"-mcpu=PROCESSOR\tUse architecture of and optimize the output for PROCESSOR."
+"Split unaligned 8 byte vector moves before post-modify address generation."
 msgstr ""
 
-#: config/riscv/riscv.opt:111
+#: config/epiphany/epiphany.opt:137
 #, no-c-format
-msgid ""
-"-msmall-data-limit=N\tPut global and static data smaller than <number> bytes "
-"into a special section (on some targets)."
+msgid "Use the floating-point unit for integer add/subtract."
 msgstr ""
 
-#: config/riscv/riscv.opt:115
+#: config/epiphany/epiphany.opt:141
 #, no-c-format
-msgid "Use smaller but slower prologue and epilogue code."
+msgid "Set register to hold -1."
 msgstr ""
 
-#: config/riscv/riscv.opt:119
+#: config/darwin.opt:34
 #, no-c-format
-msgid ""
-"Convert BASE + LARGE_OFFSET addresses to NEW_BASE + SMALL_OFFSET to allow "
-"more memory accesses to be generated as compressed instructions.  Currently "
-"targets 32-bit integer load/stores."
+msgid "Generate code for darwin loadable kernel extensions."
 msgstr ""
 
-#: config/riscv/riscv.opt:125 config/aarch64/aarch64.opt:107
-#: config/loongarch/loongarch.opt:270
+#: config/darwin.opt:38 config/darwin.opt:46
 #, no-c-format
-msgid "Specify the code model."
+msgid "Generate compile-time CFString objects."
 msgstr ""
 
-#: config/riscv/riscv.opt:129 config/loongarch/loongarch.opt:210
+#: config/darwin.opt:42
 #, no-c-format
-msgid "Do not generate unaligned memory accesses."
+msgid ""
+"-iframework <dir>\tAdd <dir> to the end of the system framework include path."
 msgstr ""
 
-#: config/riscv/riscv.opt:133
+#: config/darwin.opt:50
 #, no-c-format
-msgid "Do not generate unaligned scalar memory accesses."
+msgid "Warn if constant CFString objects contain non-portable characters."
 msgstr ""
 
-#: config/riscv/riscv.opt:137
+#: config/darwin.opt:55
 #, no-c-format
-msgid "Do not create element-misaligned vector memory accesses."
+msgid "Generate AT&T-style stubs for Mach-O."
 msgstr ""
 
-#: config/riscv/riscv.opt:141 config/i386/i386.opt:308
-#: config/rs6000/aix64.opt:36 config/rs6000/linux64.opt:32
+#: config/darwin.opt:59
 #, no-c-format
-msgid "Known code models (for use with the -mcmodel= option):"
+msgid "Generate code suitable for executables (NOT shared libs)."
 msgstr ""
 
-#: config/riscv/riscv.opt:154
+#: config/darwin.opt:63
 #, no-c-format
-msgid "Use %reloc() operators, rather than assembly macros, to load addresses."
+msgid "Generate code suitable for fast turn around debugging."
 msgstr ""
 
-#: config/riscv/riscv.opt:158 config/loongarch/loongarch.opt:278
+#: config/darwin.opt:67
 #, no-c-format
-msgid ""
-"Take advantage of linker relaxations to reduce the number of instructions "
-"required to materialize symbol addresses."
+msgid "Generate code for the kernel or loadable kernel extensions."
 msgstr ""
 
-#: config/riscv/riscv.opt:163
+#: config/darwin.opt:75
 #, no-c-format
-msgid ""
-"Enable the CSR checking for the ISA-dependent CSR and the read-only CSR. The "
-"ISA-dependent CSR are only valid when the specific ISA is set.  The read-"
-"only CSR can not be written by the CSR instructions."
+msgid "The earliest macOS version on which this program will run."
 msgstr ""
 
-#: config/riscv/riscv.opt:169 config/aarch64/aarch64.opt:150
-#: config/i386/i386.opt:420
+#: config/darwin.opt:80
 #, no-c-format
-msgid "Omit the frame pointer in leaf functions."
+msgid "Set sizeof(bool) to 1."
 msgstr ""
 
-#: config/riscv/riscv.opt:191
+#: config/darwin.opt:84
 #, no-c-format
-msgid "Emit RISC-V ELF attribute."
+msgid "Force generation of external symbol indirection stubs."
 msgstr ""
 
-#: config/riscv/riscv.opt:195 config/i386/i386.opt:261
+#: config/darwin.opt:92
 #, no-c-format
-msgid "Use the given data alignment."
+msgid ""
+"-mtarget-linker <version>\tSpecify that ld64 <version> is the toolchain "
+"linker for the current invocation."
 msgstr ""
 
-#: config/riscv/riscv.opt:199 config/i386/i386.opt:265
+#: config/darwin.opt:98
 #, no-c-format
-msgid "Known data alignment choices (for use with the -malign-data= option):"
+msgid ""
+"Load all members of archive libraries, rather than only those that satisfy "
+"undefined symbols."
 msgstr ""
 
-#: config/riscv/riscv.opt:209 config/aarch64/aarch64.opt:313
-#: config/i386/i386.opt:1021 config/arm/arm.opt:349
-#: config/rs6000/rs6000.opt:558
+#: config/darwin.opt:102
 #, no-c-format
-msgid "Use given stack-protector guard."
+msgid ""
+"-allowable_client <name>\tThe output dylib is private to the client <name>."
 msgstr ""
 
-#: config/riscv/riscv.opt:213 config/aarch64/aarch64.opt:317
-#: config/arm/arm.opt:353 config/rs6000/rs6000.opt:562
+#: config/darwin.opt:106
 #, no-c-format
-msgid "Valid arguments to -mstack-protector-guard=:"
+msgid "-arch <name>\tGenerate output for architecture <name>."
 msgstr ""
 
-#: config/riscv/riscv.opt:223 config/i386/i386.opt:1035
-#: config/rs6000/rs6000.opt:572
+#: config/darwin.opt:110
 #, no-c-format
-msgid "Use the given base register for addressing the stack-protector guard."
+msgid ""
+"Mismatches between file architecture and one specified by \"-arch\" are "
+"errors instead of warnings."
 msgstr ""
 
-#: config/riscv/riscv.opt:230 config/i386/i386.opt:1042
-#: config/rs6000/rs6000.opt:579
+#: config/darwin.opt:114
 #, no-c-format
-msgid "Use the given offset for addressing the stack-protector guard."
+msgid ""
+"The earliest macOS version on which this program will run (formatted for the "
+"assembler)."
 msgstr ""
 
-#: config/riscv/riscv.opt:543
+#: config/darwin.opt:118
 #, no-c-format
-msgid "Supported ISA specs (for use with the -misa-spec= option):"
+msgid ""
+"Generate an output executable that binds symbols on load, rather than lazily."
 msgstr ""
 
-#: config/riscv/riscv.opt:556
+#: config/darwin.opt:122
 #, no-c-format
-msgid "Set the version of RISC-V ISA spec."
+msgid "Generate a Mach-O bundle (file type MH_BUNDLE)."
 msgstr ""
 
-#: config/riscv/riscv.opt:560
+#: config/darwin.opt:126
 #, no-c-format
-msgid "Enable conditional moves unconditionally."
+msgid ""
+"-bundle_loader <executable>\tTreat <executable> (that will be loading this "
+"bundle) as if it was one of the dynamic libraries the bundle is linked "
+"against for symbol resolution."
 msgstr ""
 
-#: config/riscv/riscv.opt:564
+#: config/darwin.opt:130
 #, no-c-format
-msgid "Always inline subword atomic operations."
+msgid ""
+"-client_name <name>\tEnable the executable being built to link against a "
+"private dylib (using allowable_client)."
 msgstr ""
 
-#: config/riscv/riscv.opt:568
+#: config/darwin.opt:134
 #, no-c-format
-msgid "Inline strcmp calls if possible."
+msgid ""
+"-compatibility_version <number>\tSet the version for the client interface.  "
+"Client programs must record a value less than or equal to <number>, or the "
+"binding will fail at runtime."
 msgstr ""
 
-#: config/riscv/riscv.opt:572
+#: config/darwin.opt:138
 #, no-c-format
-msgid "Inline strncmp calls if possible."
+msgid ""
+"-current_version <number>\tSet the current version for the library to "
+"<number>."
 msgstr ""
 
-#: config/riscv/riscv.opt:576
+#: config/darwin.opt:142
 #, no-c-format
-msgid "Inline strlen calls if possible."
+msgid ""
+"Remove code and data that is unreachable from any exported symbol (including "
+"the entry point)."
 msgstr ""
 
-#: config/riscv/riscv.opt:580
+#: config/darwin.opt:146
 #, no-c-format
 msgid ""
-"Max number of bytes to compare as part of inlined strcmp/strncmp routines "
-"(default: 64)."
+"-dylib_file install_name:file_name\tThis allows linking of a dylib with "
+"\"install_name\" but to be found in a different install position "
+"\"file_name\""
 msgstr ""
 
-#: config/riscv/riscv.opt:584
+#: config/darwin.opt:150
 #, no-c-format
-msgid "The RVV possible LMUL (-mrvv-max-lmul=):"
+msgid ""
+"Produce a Mach-O dylinker (file type MH_DYLINKER), only used for building "
+"dyld."
 msgstr ""
 
-#: config/riscv/riscv.opt:603
+#: config/darwin.opt:154
 #, no-c-format
-msgid "-mrvv-max-lmul=<string>\tSet the RVV LMUL of auto-vectorization."
+msgid "-dylinker_install_name <path>\tOnly used for building dyld."
 msgstr ""
 
-#: config/riscv/riscv.opt:610
+#: config/darwin.opt:158
 #, no-c-format
-msgid "Valid arguments to -param=vsetvl-strategy=:"
+msgid ""
+"The default (and opposite of -static), implied by user mode executables, "
+"shared libraries and bundles."
 msgstr ""
 
-#: config/riscv/riscv.opt:623
+#: config/darwin.opt:162
 #, no-c-format
 msgid ""
-"-param=vsetvl-strategy=<string>\tSet the optimization level of VSETVL insert "
-"pass."
+"Produce a Mach-O shared library (file type MH_DYLIB), synonym for \"-"
+"shared\"."
 msgstr ""
 
-#: config/riscv/riscv.opt:627
+#: config/darwin.opt:166
 #, no-c-format
 msgid ""
-"-param=riscv-two-source-permutes Enable permutes with two source vectors."
+"-exported_symbols_list <filename>\tExport global symbols in <filename> in "
+"linked output file; any symbols not mentioned will be treated as \"hidden\"."
 msgstr ""
 
-#: config/riscv/riscv.opt:631 config/i386/i386.opt:496
+#: config/darwin.opt:170
 #, no-c-format
-msgid "Valid arguments to -mstringop-strategy=:"
+msgid ""
+"Supply a list of objects to be linked from a file, rather than the command "
+"line."
 msgstr ""
 
-#: config/riscv/riscv.opt:647
+#: config/darwin.opt:175 config/darwin.opt:196
 #, no-c-format
-msgid "Specify stringop expansion strategy."
+msgid "Used for generating code for some older kernel revisions."
 msgstr ""
 
-#: config/riscv/riscv.opt:651
+#: config/darwin.opt:179
 #, no-c-format
-msgid "The possible RVV vector register lengths:"
+msgid ""
+"Ignore the normal two-level namespace; resolve symbols in command line order "
+"and do not record which library provided the resolved symbol."
 msgstr ""
 
-#: config/riscv/riscv.opt:661
+#: config/darwin.opt:183
 #, no-c-format
 msgid ""
-"-mrvv-vector-bits=<string>\tSet the kind of bits for an RVV vector register."
+"For the assembler (and linker) permit any architecture sub-variant to be "
+"used without error."
 msgstr ""
 
-#: config/riscv/riscv.opt:665 config/aarch64/aarch64.opt:58
-#: config/loongarch/loongarch.opt:287
+#: config/darwin.opt:187
 #, no-c-format
-msgid "The possible TLS dialects:"
+msgid ""
+"Set the output object such that, on loading, dyld will ignore any two-level "
+"namespace information and resolve symbols in the discovery order for loaded "
+"libs."
 msgstr ""
 
-#: config/riscv/riscv.opt:675 config/aarch64/aarch64.opt:154
-#: config/loongarch/loongarch.opt:297
+#: config/darwin.opt:191
 #, no-c-format
-msgid "Specify TLS dialect."
+msgid ""
+"-framework <name>\tThe linker should search for the framework <name> in the "
+"framework search path."
 msgstr ""
 
-#: config/riscv/riscv.opt:679
+#: config/darwin.opt:200
 #, no-c-format
-msgid "Specifies whether the fence.tso instruction should be used."
+msgid "Abbreviation for \"-g -fno-eliminate-unused-debug-symbols\"."
 msgstr ""
 
-#: config/riscv/riscv.opt:683
+#: config/darwin.opt:204
 #, no-c-format
-msgid ""
-"Enable (default) or disable generation of vector segment load/store "
-"instructions."
+msgid "Abbreviation for \"-g -feliminate-unused-debug-symbols\"."
 msgstr ""
 
-#: config/m32c/m32c.opt:23
+#: config/darwin.opt:208
 #, no-c-format
-msgid "-msim\tUse simulator runtime."
+msgid ""
+"Automatically adds space for longer path names in load commands (up to "
+"MAXPATHLEN)."
 msgstr ""
 
-#: config/m32c/m32c.opt:27
+#: config/darwin.opt:212
 #, no-c-format
-msgid "-mcpu=r8c\tCompile code for R8C variants."
+msgid ""
+"-image_base <address>\tSpecify <address> as the base address for a dylib or "
+"bundle."
 msgstr ""
 
-#: config/m32c/m32c.opt:31
+#: config/darwin.opt:216
 #, no-c-format
-msgid "-mcpu=m16c\tCompile code for M16C variants."
+msgid ""
+"-init <symbol_name>\tThe symbol <symbol_name> will be used as the first "
+"initializer for a dylib."
 msgstr ""
 
-#: config/m32c/m32c.opt:35
+#: config/darwin.opt:220
 #, no-c-format
-msgid "-mcpu=m32cm\tCompile code for M32CM variants."
+msgid "-install_name <name>\tSet the install name for a dylib."
 msgstr ""
 
-#: config/m32c/m32c.opt:39
+#: config/darwin.opt:224
 #, no-c-format
-msgid "-mcpu=m32c\tCompile code for M32C variants."
+msgid ""
+"Usually \"private extern\" (hidden) symbols are made local when linking, "
+"this command suppresses that such that they remain exported."
 msgstr ""
 
-#: config/m32c/m32c.opt:43
+#: config/darwin.opt:228
 #, no-c-format
-msgid "-memregs=\tNumber of memreg bytes (default: 16, range: 0..16)."
+msgid ""
+"(Obsolete after 10.4) Multi modules are ignored at runtime since macOS 10.4."
 msgstr ""
 
-#: config/msp430/msp430.opt:7
+#: config/darwin.opt:232
 #, no-c-format
 msgid ""
-"Use a lightweight configuration of printf and puts to reduce code size. For "
-"single-threaded applications, not requiring reentrant I/O only. Requires "
-"Newlib Nano IO."
+"(Obsolete after 10.4) -multiply_defined <treatment>\tProvided a mechanism "
+"for warning about symbols defined in multiple dylibs."
 msgstr ""
 
-#: config/msp430/msp430.opt:11
+#: config/darwin.opt:236
 #, no-c-format
-msgid "Force assembly output to always use hex constants."
+msgid ""
+"(Obsolete after 10.4) -multiply_defined_unused <treatment>\tProvided a "
+"mechanism for warning about symbols defined in the current executable also "
+"being defined in linked dylibs."
 msgstr ""
 
-#: config/msp430/msp430.opt:15
+#: config/darwin.opt:240
 #, no-c-format
-msgid "Specify the MCU to build for."
+msgid ""
+"(Obsolete) Current linkers never dead-strip these items, so the option is "
+"not needed."
 msgstr ""
 
-#: config/msp430/msp430.opt:19
+#: config/darwin.opt:244
 #, no-c-format
-msgid ""
-"Warn if an MCU name is unrecognized or conflicts with other options "
-"(default: on)."
+msgid "Do not add a default symbol exports to modules or dynamic libraries."
 msgstr ""
 
-#: config/msp430/msp430.opt:23
+#: config/darwin.opt:248
 #, no-c-format
 msgid ""
-"Warn if devices.csv is not found or there are problem parsing it (default: "
-"on)."
+"Do not add default run paths (for the compiler library directories) to "
+"executables, modules or dynamic libraries."
 msgstr ""
 
-#: config/msp430/msp430.opt:27
+#: config/darwin.opt:252
 #, no-c-format
-msgid "Specify the ISA to build for: msp430, msp430x, msp430xv2."
+msgid "(Obsolete after 10.3.9) Set MH_NOPREFIXBINDING, in an executable."
 msgstr ""
 
-#: config/msp430/msp430.opt:52
+#: config/darwin.opt:256
 #, no-c-format
-msgid "Select large model - 20-bit addresses/pointers."
+msgid "(Obsolete after 10.4)\tSet MH_NOMULTIDEFS in an umbrella framework."
 msgstr ""
 
-#: config/msp430/msp430.opt:56
+#: config/darwin.opt:260 config/darwin.opt:286 config/darwin.opt:290
 #, no-c-format
-msgid "Select small model - 16-bit addresses/pointers (default)."
+msgid "(Obsolete) LD_PREBIND is no longer supported."
 msgstr ""
 
-#: config/msp430/msp430.opt:60
+#: config/darwin.opt:264
 #, no-c-format
-msgid "Optimize opcode sizes at link time."
+msgid "(Obsolete) This is the default."
 msgstr ""
 
-#: config/msp430/msp430.opt:67 config/pru/pru.opt:26
+#: config/darwin.opt:268
 #, no-c-format
-msgid ""
-"Use a minimum runtime (no static initializers or ctors) for memory-"
-"constrained devices."
+msgid "Equivalent to -xobjective-c."
 msgstr ""
 
-#: config/msp430/msp430.opt:74
+#: config/darwin.opt:272
 #, no-c-format
-msgid "Specify the type of hardware multiply to support."
+msgid "Equivalent to -xobjective-c++."
 msgstr ""
 
-#: config/msp430/msp430.opt:96
+#: config/darwin.opt:282
 #, no-c-format
 msgid ""
-"Specify whether functions should be placed into the lower or upper memory "
-"regions, or if they should be shuffled between the regions (either) for best "
-"fit (default: lower)."
+"-pagezero_size <size>\tAllows setting the page 0 size to 4kb when required."
 msgstr ""
 
-#: config/msp430/msp430.opt:100
+#: config/darwin.opt:294
 #, no-c-format
-msgid ""
-"Specify whether variables should be placed into the lower or upper memory "
-"regions, or if they should be shuffled between the regions (either) for best "
-"fit (default: lower)."
+msgid "Produces a Mach-O file suitable for embedded/ROM use."
 msgstr ""
 
-#: config/msp430/msp430.opt:104
+#: config/darwin.opt:298
 #, no-c-format
 msgid ""
-"Add the .lower prefix to section names when compiling with -m{code,data}-"
-"region=lower (disabled by default)."
+"(Obsolete) Allowed linking to proceed with \"-flat_namespace\" when a linked "
+"bundle contained a symbol also exported from the main executable."
 msgstr ""
 
-#: config/msp430/msp430.opt:123
+#: config/darwin.opt:305
 #, no-c-format
-msgid ""
-"Passes on a request to the assembler to enable fixes for various silicon "
-"errata."
+msgid "Synonym for \"-export-dynamic\" for linker versions that support it."
 msgstr ""
 
-#: config/msp430/msp430.opt:127
+#: config/darwin.opt:309
 #, no-c-format
 msgid ""
-"Passes on a request to the assembler to warn about various silicon errata."
+"-read_only_relocs <treatment>\tAllow relocations in read-only pages (not "
+"recommended)."
 msgstr ""
 
-#: config/msp430/msp430.opt:131
+#: config/darwin.opt:313
 #, no-c-format
 msgid ""
-"The path to devices.csv.  The GCC driver can normally locate devices.csv "
-"itself and pass this option to the compiler, so the user shouldn't need to "
-"pass this."
+"-sectalign <segname> <sectname> <value>\tSet section <sectname> in segment "
+"<segname> to have alignment <value> which must be an integral power of two "
+"expressed in hexadecimal form."
 msgstr ""
 
-#: config/msp430/msp430.opt:136
+#: config/darwin.opt:317
 #, no-c-format
 msgid ""
-"For shift operations by a constant amount, which require an individual "
-"instruction to shift by one position, set the maximum number of inline shift "
-"instructions (maximum value 64) to emit instead of using the corresponding "
-"__mspabi helper function. The default value is 4."
+"-sectcreate <segname> <sectname> <file>\tCreate section <sectname> in "
+"segment <segname> from the contents of <file>."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:70 config/loongarch/loongarch.opt:248
+#: config/darwin.opt:321
 #, no-c-format
-msgid "The code model option names for -mcmodel:"
+msgid ""
+"(Obsolete) -sectobjectsymbols <segname> <sectname>\tSetting a local symbol "
+"at the start of a section is no longer supported."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:87 config/i386/i386.opt:1056
+#: config/darwin.opt:325
 #, no-c-format
-msgid "Generate code which uses only the general registers."
+msgid ""
+"(Obsolete) -sectorder <segname> <sectname> <orderfile>\tReplaced by a more "
+"general option \"-order_file\"."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:91 config/i386/i386.opt:1148
+#: config/darwin.opt:329
 #, no-c-format
-msgid "Generate code to mitigate against straight line speculation."
+msgid ""
+"-seg_addr_table <file>\tSpecify the base addresses for dynamic libraries; "
+"<file> contains a line for each library."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:95
+#: config/darwin.opt:334
 #, no-c-format
-msgid "Workaround for ARM Cortex-A53 Erratum number 835769."
+msgid "(Obsolete, ld_classic only) -seg_addr_table_filename <path>."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:99
+#: config/darwin.opt:338
 #, no-c-format
-msgid "Workaround for ARM Cortex-A53 Erratum number 843419."
+msgid "Synonym for \"image_base\"."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:111
+#: config/darwin.opt:342
 #, no-c-format
-msgid "The register used to access the thread pointer:"
+msgid ""
+"-segaddr <name> <address>\tSet the base address of segment <name> to "
+"<address> which must be aligned to a page boundary (currently 4kb)."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:142
+#: config/darwin.opt:347
 #, no-c-format
-msgid "Specify the thread pointer register."
+msgid ""
+"(Obsolete, ld_classic only) -sectcreate <segname> <sectname> <file>\tAllowed "
+"creation of a section from a file."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:146
+#: config/darwin.opt:351
 #, no-c-format
-msgid "Don't assume that unaligned accesses are handled by the system."
+msgid "(Obsolete) Object files with LINKEDIT sections are no longer supported."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:158
+#: config/darwin.opt:355
 #, no-c-format
 msgid ""
-"Specifies bit size of immediate TLS offsets.  Valid values are 12, 24, 32, "
-"48."
+"-segprot <segname> <max_prot> <init_prot>\tThe virtual memory protections "
+"for segment <segname> have maximum and initial values <max_prot> and "
+"<init_prot> respectively.  The specified values may contain \"r\", \"w\", "
+"\"x\" or \"-\" the latter meaning \"no access\"."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:177
+#: config/darwin.opt:359
 #, no-c-format
-msgid "Use features of architecture ARCH."
+msgid ""
+"-segs_read_only_addr <address>\tSpecify that <address> is the base address "
+"of the read-only segments of a dylib."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:181
+#: config/darwin.opt:363
 #, no-c-format
-msgid "Use features of and optimize for CPU."
+msgid ""
+"-segs_read_write_addr <address>\tSpecify that <address> is the base address "
+"address of the read-write segments of a dylib."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:185
+#: config/darwin.opt:367
 #, no-c-format
-msgid "Optimize for CPU."
+msgid "(Obsolete)\tThis is the default."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:189
+#: config/darwin.opt:371
 #, no-c-format
-msgid "Generate code that conforms to the specified ABI."
+msgid ""
+"-sub_library <name>\tLibrary named <name> will be re-exported (only useful "
+"for dylibs)."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:193
+#: config/darwin.opt:375
 #, no-c-format
 msgid ""
-"-moverride=<string>\tPower users only! Override CPU optimization parameters."
+"-sub_umbrella <name>\tFramework named <name> will be re-exported (only "
+"useful for dylibs)."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:197
+#: config/darwin.opt:379
 #, no-c-format
-msgid "Known AArch64 ABIs (for use with the -mabi= option):"
+msgid "This is the default."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:207
+#: config/darwin.opt:383
 #, no-c-format
-msgid "PC relative literal loads."
+msgid ""
+"Add extra information to the executable that can speed up dynamic loading "
+"(provided that dependent libraries are unchanged)."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:211 config/arm/arm.opt:337
+#: config/darwin.opt:387
 #, no-c-format
-msgid "Use branch-protection features."
+msgid "-umbrella <framework>\tThe specified framework will be re-exported."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:215
+#: config/darwin.opt:391
 #, no-c-format
-msgid "Select return address signing scope."
+msgid ""
+"-undefined <treatment>\tSpecify the handling for undefined symbols (default "
+"is error)."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:219
+#: config/darwin.opt:395
 #, no-c-format
 msgid ""
-"Supported AArch64 return address signing scope (for use with -msign-return-"
-"address= option):"
+"-unexported_symbols_list <filename>\tDo not export the global symbols listed "
+"in <filename>."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:232
+#: config/darwin.opt:399
 #, no-c-format
 msgid ""
-"Enable the reciprocal square root approximation.  Enabling this reduces "
-"precision of reciprocal square root results to about 16 bits for single "
-"precision and to 32 bits for double precision."
+"-weak_framework <framework>\tMake a weak link to the specified framework."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:238
+#: config/darwin.opt:403
 #, no-c-format
 msgid ""
-"Enable the square root approximation.  Enabling this reduces precision of "
-"square root results to about 16 bits for single precision and to 32 bits for "
-"double precision. If enabled, it implies -mlow-precision-recip-sqrt."
+"-weak_reference_mismatches <treatment>\tSpecifies what to do if a symbol "
+"import conflicts between file (weak in one and not in another) the default "
+"is to treat the symbol as non-weak."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:245
+#: config/darwin.opt:407
 #, no-c-format
-msgid ""
-"Enable the division approximation.  Enabling this reduces precision of "
-"division results to about 16 bits for single precision and to 32 bits for "
-"double precision."
+msgid "Logs which object files the linker loads."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:263
+#: config/darwin.opt:411
 #, no-c-format
-msgid ""
-"Specify when to enable an early register allocation pass.  The possibilities "
-"are: all functions, functions that have access to strided multi-register "
-"instructions, and no functions."
+msgid "Logs which symbol(s) caused an object to be loaded."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:269
+#: config/darwin.opt:419
 #, no-c-format
-msgid "The possible SVE vector lengths:"
+msgid "(Obsolete, ignored)\tOld support similar to \"-whyload\"."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:291
+#: config/darwin.opt:423
 #, no-c-format
 msgid ""
-"-msve-vector-bits=<number>\tSet the number of bits in an SVE vector register."
+"(Obsolete and unhandled by ld64, ignored)\tld should produce an executable "
+"(only handled by ld_classic)."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:295
+#: config/c6x/c6x-tables.opt:24
 #, no-c-format
-msgid "Enables verbose cost model dumping in the debug dump files."
+msgid "Known C6X ISAs (for use with the -march= option):"
 msgstr ""
 
-#: config/aarch64/aarch64.opt:299
+#: config/c6x/c6x.opt:30 config/mips/mips.opt:134
 #, no-c-format
-msgid "Generate code to track when the CPU might be speculating incorrectly."
+msgid "Use big-endian byte order."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:303
+#: config/c6x/c6x.opt:34 config/mips/mips.opt:138
 #, no-c-format
-msgid ""
-"Enable the copy of the AArch64 load/store pair fusion pass that runs before "
-"register allocation."
+msgid "Use little-endian byte order."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:308
+#: config/c6x/c6x.opt:42
 #, no-c-format
-msgid ""
-"Enable the copy of the AArch64 load/store pair fusion pass that runs after "
-"register allocation."
+msgid "Select method for sdata handling."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:327
+#: config/c6x/c6x.opt:46
 #, no-c-format
-msgid ""
-"Use the system register specified on the command line as the stack protector "
-"guard register. This option is for use with fstack-protector-strong and not "
-"for use in user-land code."
+msgid "Valid arguments for the -msdata= option:"
 msgstr ""
 
-#: config/aarch64/aarch64.opt:333
+#: config/c6x/c6x.opt:59
 #, no-c-format
-msgid ""
-"Use an immediate to offset from the stack protector guard register, sp_el0. "
-"This option is for use with fstack-protector-strong and not for use in user-"
-"land code."
+msgid "Compile for the DSBT shared library ABI."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:342
+#: config/mips/mips.opt:32
 #, no-c-format
-msgid "Generate local calls to out-of-line atomic operations."
+msgid "-mabi=ABI\tGenerate code that conforms to the given ABI."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:346
+#: config/mips/mips.opt:36
 #, no-c-format
-msgid ""
-"When vectorizing, consider using multiple different approaches and use the "
-"cost model to choose the cheapest one."
+msgid "Known MIPS ABIs (for use with the -mabi= option):"
 msgstr ""
 
-#: config/aarch64/aarch64.opt:351
+#: config/mips/mips.opt:55
 #, no-c-format
-msgid ""
-"The number of Newton iterations for calculating the reciprocal for float "
-"type.  The precision of division is proportional to this param when division "
-"approximation is enabled.  The default value is 1."
+msgid "Generate code that can be used in SVR4-style dynamic objects."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:355
+#: config/mips/mips.opt:59
 #, no-c-format
-msgid ""
-"The number of Newton iterations for calculating the reciprocal for double "
-"type.  The precision of division is proportional to this param when division "
-"approximation is enabled.  The default value is 2."
+msgid "Use PMC-style 'mad' instructions."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:359
+#: config/mips/mips.opt:63
 #, no-c-format
-msgid ""
-"--param=aarch64-autovec-preference=[default|asimd-only|sve-only|prefer-asimd|"
-"prefer-sve] Force an ISA selection strategy for auto-vectorization."
+msgid "Use integer madd/msub instructions."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:385
+#: config/mips/mips.opt:67
 #, no-c-format
-msgid "Constant memcpy size in bytes above which to start using MOPS sequence."
+msgid "-march=ISA\tGenerate code for the given ISA."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:389
+#: config/mips/mips.opt:75
 #, no-c-format
-msgid ""
-"Constant memmove size in bytes above which to start using MOPS sequence."
+msgid "Use Branch Likely instructions, overriding the architecture default."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:393
+#: config/mips/mips.opt:79
 #, no-c-format
-msgid "Constant memset size in bytes from which to start using MOPS sequence."
+msgid "Switch on/off MIPS16 ASE on alternating functions for compiler testing."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:397
+#: config/mips/mips.opt:87
 #, no-c-format
-msgid "Limit how much the autovectorizer may unroll a loop."
+msgid ""
+"-mcode-readable=SETTING\tSpecify when instructions are allowed to access "
+"code."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:401
+#: config/mips/mips.opt:91
 #, no-c-format
-msgid ""
-"--param=aarch64-ldp-policy=[default|always|never|aligned] Fine-grained "
-"policy for load pairs."
+msgid "Valid arguments to -mcode-readable=:"
 msgstr ""
 
-#: config/aarch64/aarch64.opt:405
+#: config/mips/mips.opt:104
 #, no-c-format
-msgid ""
-"--param=aarch64-stp-policy=[default|always|never|aligned] Fine-grained "
-"policy for store pairs."
+msgid "Use branch-and-break sequences to check for integer divide by zero."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:424
+#: config/mips/mips.opt:108
 #, no-c-format
-msgid ""
-"Limit on number of alias checks performed when attempting to form an ldp/stp."
+msgid "Use trap instructions to check for integer divide by zero."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:428
+#: config/mips/mips.opt:112
 #, no-c-format
-msgid ""
-"Param to control which writeback opportunities we try to handle in the load/"
-"store pair fusion pass.  A value of zero disables writeback handling.  One "
-"means we try to form pairs involving one or more existing individual "
-"writeback accesses where possible.  A value of two means we also try to "
-"opportunistically form writeback opportunities by folding in trailing "
-"destructive updates of the base register used by a pair."
+msgid "Allow the use of MDMX instructions."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:437
+#: config/mips/mips.opt:120
 #, no-c-format
-msgid "Warn about usage of experimental Function Multi Versioning."
+msgid "Use MIPS-DSP instructions."
 msgstr ""
 
-#: config/linux.opt:24
+#: config/mips/mips.opt:124
 #, no-c-format
-msgid "Use Bionic C library."
+msgid "Use MIPS-DSP REV 2 instructions."
 msgstr ""
 
-#: config/linux.opt:28
+#: config/mips/mips.opt:146
 #, no-c-format
-msgid "Use GNU C library."
+msgid "Use Enhanced Virtual Addressing instructions."
 msgstr ""
 
-#: config/linux.opt:32
+#: config/mips/mips.opt:171
 #, no-c-format
-msgid "Use uClibc C library."
+msgid "Don't use %reloc() assembly operators (for backward compatibility)."
 msgstr ""
 
-#: config/linux.opt:36
+#: config/mips/mips.opt:175
 #, no-c-format
-msgid "Use musl C library."
+msgid "Use -G for data that is not defined by the current object."
 msgstr ""
 
-#: config/mingw/cygming.opt:23
+#: config/mips/mips.opt:179
 #, no-c-format
-msgid "Create console application."
+msgid "Work around certain 24K errata."
 msgstr ""
 
-#: config/mingw/cygming.opt:27
+#: config/mips/mips.opt:183
 #, no-c-format
-msgid "Generate code for a DLL."
+msgid "Work around certain R4000 errata."
 msgstr ""
 
-#: config/mingw/cygming.opt:31
+#: config/mips/mips.opt:187
 #, no-c-format
-msgid "Ignore dllimport for functions."
+msgid "Work around certain R4400 errata."
 msgstr ""
 
-#: config/mingw/cygming.opt:35
+#: config/mips/mips.opt:191
 #, no-c-format
-msgid "Use Mingw-specific thread support."
+msgid "Work around the R5900 short loop erratum."
 msgstr ""
 
-#: config/mingw/cygming.opt:39
+#: config/mips/mips.opt:195
 #, no-c-format
-msgid "Set Windows defines."
+msgid "Work around certain RM7000 errata."
 msgstr ""
 
-#: config/mingw/cygming.opt:43
+#: config/mips/mips.opt:199
 #, no-c-format
-msgid "Create GUI application."
+msgid "Work around certain R10000 errata."
 msgstr ""
 
-#: config/mingw/cygming.opt:47
+#: config/mips/mips.opt:203
 #, no-c-format
-msgid "Use the GNU extension to the PE format for aligned common data."
+msgid "Work around errata for early SB-1 revision 2 cores."
 msgstr ""
 
-#: config/mingw/cygming.opt:51
+#: config/mips/mips.opt:207
 #, no-c-format
-msgid ""
-"Compile code that relies on Cygwin DLL wrappers to support C++ operator new/"
-"delete replacement."
+msgid "Work around certain VR4120 errata."
 msgstr ""
 
-#: config/mingw/cygming.opt:55
+#: config/mips/mips.opt:211
 #, no-c-format
-msgid "For nested functions on stack executable permission is set."
+msgid "Work around VR4130 mflo/mfhi errata."
 msgstr ""
 
-#: config/mingw/cygming.opt:62
+#: config/mips/mips.opt:215
 #, no-c-format
-msgid "Put relocated read-only data into .data section."
+msgid "Work around an early 4300 hardware bug."
 msgstr ""
 
-#: config/mingw/mingw.opt:23
+#: config/mips/mips.opt:219
 #, no-c-format
-msgid "Preprocess, compile or link with specified C RunTime DLL library."
+msgid "FP exceptions are enabled."
 msgstr ""
 
-#: config/mingw/mingw.opt:33
+#: config/mips/mips.opt:223
 #, no-c-format
-msgid "Warn about none ISO msvcrt scanf/printf width extensions."
+msgid "Use 32-bit floating-point registers."
 msgstr ""
 
-#: config/ia64/ilp32.opt:3
+#: config/mips/mips.opt:227
 #, no-c-format
-msgid "Generate ILP32 code."
+msgid "Conform to the o32 FPXX ABI."
 msgstr ""
 
-#: config/ia64/ilp32.opt:7
+#: config/mips/mips.opt:231
 #, no-c-format
-msgid "Generate LP64 code."
+msgid "Use 64-bit floating-point registers."
 msgstr ""
 
-#: config/ia64/ia64.opt:28
+#: config/mips/mips.opt:235
 #, no-c-format
-msgid "Generate big endian code."
+msgid ""
+"-mflush-func=FUNC\tUse FUNC to flush the cache before calling stack "
+"trampolines."
 msgstr ""
 
-#: config/ia64/ia64.opt:32
+#: config/mips/mips.opt:239
 #, no-c-format
-msgid "Generate little endian code."
+msgid "-mabs=MODE\tSelect the IEEE 754 ABS/NEG instruction execution mode."
 msgstr ""
 
-#: config/ia64/ia64.opt:36
+#: config/mips/mips.opt:243
 #, no-c-format
-msgid "Generate code for GNU as."
+msgid "-mnan=ENCODING\tSelect the IEEE 754 NaN data encoding."
 msgstr ""
 
-#: config/ia64/ia64.opt:40
+#: config/mips/mips.opt:247
 #, no-c-format
-msgid "Generate code for GNU ld."
+msgid ""
+"Known MIPS IEEE 754 settings (for use with the -mabs= and -mnan= options):"
 msgstr ""
 
-#: config/ia64/ia64.opt:44
+#: config/mips/mips.opt:257
 #, no-c-format
-msgid "Emit stop bits before and after volatile extended asms."
+msgid "Use 32-bit general registers."
 msgstr ""
 
-#: config/ia64/ia64.opt:48
+#: config/mips/mips.opt:261
 #, no-c-format
-msgid "Use in/loc/out register names."
+msgid "Use 64-bit general registers."
 msgstr ""
 
-#: config/ia64/ia64.opt:55
+#: config/mips/mips.opt:265
 #, no-c-format
-msgid "Enable use of sdata/scommon/sbss."
+msgid "Use GP-relative addressing to access small data."
 msgstr ""
 
-#: config/ia64/ia64.opt:59
+#: config/mips/mips.opt:269
 #, no-c-format
-msgid "Generate code without GP reg."
+msgid ""
+"When generating -mabicalls code, allow executables to use PLTs and copy "
+"relocations."
 msgstr ""
 
-#: config/ia64/ia64.opt:63
+#: config/mips/mips.opt:273
 #, no-c-format
-msgid "gp is constant (but save/restore gp on indirect calls)."
+msgid "Allow the use of hardware floating-point ABI and instructions."
 msgstr ""
 
-#: config/ia64/ia64.opt:67
+#: config/mips/mips.opt:277
 #, no-c-format
-msgid "Generate self-relocatable code."
+msgid "Generate code that is link-compatible with MIPS16 and microMIPS code."
 msgstr ""
 
-#: config/ia64/ia64.opt:71
+#: config/mips/mips.opt:281
 #, no-c-format
-msgid "Generate inline floating point division, optimize for latency."
+msgid "An alias for minterlink-compressed provided for backward-compatibility."
 msgstr ""
 
-#: config/ia64/ia64.opt:75
+#: config/mips/mips.opt:285
 #, no-c-format
-msgid "Generate inline floating point division, optimize for throughput."
+msgid "-mipsN\tGenerate code for ISA level N."
 msgstr ""
 
-#: config/ia64/ia64.opt:82
+#: config/mips/mips.opt:289
 #, no-c-format
-msgid "Generate inline integer division, optimize for latency."
+msgid "Generate MIPS16 code."
 msgstr ""
 
-#: config/ia64/ia64.opt:86
+#: config/mips/mips.opt:293
 #, no-c-format
-msgid "Generate inline integer division, optimize for throughput."
+msgid "Use MIPS-3D instructions."
 msgstr ""
 
-#: config/ia64/ia64.opt:90
+#: config/mips/mips.opt:297
 #, no-c-format
-msgid "Do not inline integer division."
+msgid "Use ll, sc and sync instructions."
 msgstr ""
 
-#: config/ia64/ia64.opt:94
+#: config/mips/mips.opt:301
 #, no-c-format
-msgid "Generate inline square root, optimize for latency."
+msgid "Use -G for object-local data."
 msgstr ""
 
-#: config/ia64/ia64.opt:98
+#: config/mips/mips.opt:305
 #, no-c-format
-msgid "Generate inline square root, optimize for throughput."
+msgid "Use indirect calls."
 msgstr ""
 
-#: config/ia64/ia64.opt:102
+#: config/mips/mips.opt:309
 #, no-c-format
-msgid "Do not inline square root."
+msgid "Use a 32-bit long type."
 msgstr ""
 
-#: config/ia64/ia64.opt:106
+#: config/mips/mips.opt:313
 #, no-c-format
-msgid "Enable DWARF line debug info via GNU as."
+msgid "Use a 64-bit long type."
 msgstr ""
 
-#: config/ia64/ia64.opt:110
+#: config/mips/mips.opt:317
 #, no-c-format
-msgid "Enable earlier placing stop bits for better scheduling."
+msgid "Pass the address of the ra save location to _mcount in $12."
 msgstr ""
 
-#: config/ia64/ia64.opt:114 config/pa/pa.opt:70 config/sh/sh.opt:227
+#: config/mips/mips.opt:321
 #, no-c-format
-msgid "Specify range of registers to make fixed."
+msgid "Don't optimize block moves."
 msgstr ""
 
-#: config/ia64/ia64.opt:118 config/alpha/alpha.opt:138
+#: config/mips/mips.opt:325
 #, no-c-format
-msgid "Specify bit size of immediate TLS offsets."
+msgid "Use microMIPS instructions."
 msgstr ""
 
-#: config/ia64/ia64.opt:122 config/i386/i386.opt:542 config/s390/s390.opt:209
-#: config/sparc/sparc.opt:146 config/visium/visium.opt:49
+#: config/mips/mips.opt:329
 #, no-c-format
-msgid "Schedule code for given CPU."
+msgid "Use MIPS MSA Extension instructions."
 msgstr ""
 
-#: config/ia64/ia64.opt:126
+#: config/mips/mips.opt:333
 #, no-c-format
-msgid "Known Itanium CPUs (for use with the -mtune= option):"
+msgid "Allow the use of MT instructions."
 msgstr ""
 
-#: config/ia64/ia64.opt:136
+#: config/mips/mips.opt:337
 #, no-c-format
-msgid "Use data speculation before reload."
+msgid "Prevent the use of all floating-point operations."
 msgstr ""
 
-#: config/ia64/ia64.opt:140
+#: config/mips/mips.opt:341
 #, no-c-format
-msgid "Use data speculation after reload."
+msgid "Use MCU instructions."
 msgstr ""
 
-#: config/ia64/ia64.opt:144
+#: config/mips/mips.opt:345
 #, no-c-format
-msgid "Use control speculation."
+msgid "Do not use a cache-flushing function before calling stack trampolines."
 msgstr ""
 
-#: config/ia64/ia64.opt:148
+#: config/mips/mips.opt:349
 #, no-c-format
-msgid "Use in block data speculation before reload."
+msgid "Do not use MDMX instructions."
 msgstr ""
 
-#: config/ia64/ia64.opt:152
+#: config/mips/mips.opt:353
 #, no-c-format
-msgid "Use in block data speculation after reload."
+msgid "Generate normal-mode code."
 msgstr ""
 
-#: config/ia64/ia64.opt:156
+#: config/mips/mips.opt:357
 #, no-c-format
-msgid "Use in block control speculation."
+msgid "Do not use MIPS-3D instructions."
 msgstr ""
 
-#: config/ia64/ia64.opt:160
+#: config/mips/mips.opt:361
 #, no-c-format
-msgid "Use simple data speculation check."
+msgid "Use paired-single floating-point instructions."
 msgstr ""
 
-#: config/ia64/ia64.opt:164
+#: config/mips/mips.opt:365
 #, no-c-format
-msgid "Use simple data speculation check for control speculation."
+msgid ""
+"-mr10k-cache-barrier=SETTING\tSpecify when r10k cache barriers should be "
+"inserted."
 msgstr ""
 
-#: config/ia64/ia64.opt:174
+#: config/mips/mips.opt:369
 #, no-c-format
-msgid ""
-"Count speculative dependencies while calculating priority of instructions."
+msgid "Valid arguments to -mr10k-cache-barrier=:"
 msgstr ""
 
-#: config/ia64/ia64.opt:178
+#: config/mips/mips.opt:382
 #, no-c-format
-msgid "Place a stop bit after every cycle when scheduling."
+msgid "Try to allow the linker to turn PIC calls into direct calls."
 msgstr ""
 
-#: config/ia64/ia64.opt:182
+#: config/mips/mips.opt:386
 #, no-c-format
 msgid ""
-"Assume that floating-point stores and loads are not likely to cause conflict "
-"when placed into one instruction group."
+"When generating -mabicalls code, make the code suitable for use in shared "
+"libraries."
 msgstr ""
 
-#: config/ia64/ia64.opt:186
+#: config/mips/mips.opt:394
 #, no-c-format
-msgid ""
-"Soft limit on number of memory insns per instruction group, giving lower "
-"priority to subsequent memory insns attempting to schedule in the same insn "
-"group. Frequently useful to prevent cache bank conflicts.  Default value is "
-"1."
+msgid "Use SmartMIPS instructions."
 msgstr ""
 
-#: config/ia64/ia64.opt:190
+#: config/mips/mips.opt:402
 #, no-c-format
-msgid ""
-"Disallow more than 'msched-max-memory-insns' in instruction group. "
-"Otherwise, limit is 'soft' (prefer non-memory operations when limit is "
-"reached)."
+msgid "Optimize lui/addiu address loads."
 msgstr ""
 
-#: config/ia64/ia64.opt:194
+#: config/mips/mips.opt:406
 #, no-c-format
-msgid "Don't generate checks for control speculation in selective scheduling."
+msgid "Enable the MIPS16e V2 instructions."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:24
+#: config/mips/mips.opt:410
 #, no-c-format
-msgid "Don't use any of r32..r63."
+msgid "Assume all symbols have 32-bit values."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:28
+#: config/mips/mips.opt:414
 #, no-c-format
-msgid ""
-"Preferentially allocate registers that allow short instruction generation."
+msgid "Use synci instruction to invalidate i-cache."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:32
+#: config/mips/mips.opt:418
 #, no-c-format
-msgid "Set branch cost."
+msgid "Use lwxc1/swxc1/ldxc1/sdxc1 instructions where applicable."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:36
+#: config/mips/mips.opt:422
 #, no-c-format
-msgid "Enable conditional move instruction usage."
+msgid "Use 4-operand madd.s/madd.d and related instructions where applicable."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:40
+#: config/mips/mips.opt:430
 #, no-c-format
-msgid "Set number of nops to emit before each insn pattern."
+msgid "Don't generate code with unaligned load store, only valid for MIPS R6."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:52
+#: config/mips/mips.opt:434
 #, no-c-format
-msgid "Use software floating point comparisons."
+msgid ""
+"Generate code with unaligned load store for R6 (alias of -mno-strict-align)."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:56
+#: config/mips/mips.opt:438
 #, no-c-format
-msgid "Enable split of 32 bit immediate loads into low / high part."
+msgid ""
+"Don't generate code with unaligned load store for R6 (alias of -mstrict-"
+"align)."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:60
+#: config/mips/mips.opt:446
 #, no-c-format
-msgid "Enable use of POST_INC / POST_DEC."
+msgid "Use Virtualization (VZ) instructions."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:64
+#: config/mips/mips.opt:450
 #, no-c-format
-msgid "Enable use of POST_MODIFY."
+msgid "Use eXtended Physical Address (XPA) instructions."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:68
+#: config/mips/mips.opt:454
 #, no-c-format
-msgid "Set number of bytes on the stack preallocated for use by the callee."
+msgid "Use Cyclic Redundancy Check (CRC) instructions."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:72
+#: config/mips/mips.opt:458
 #, no-c-format
-msgid "Assume round to nearest is selected for purposes of scheduling."
+msgid "Use Global INValidate (GINV) instructions."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:76
+#: config/mips/mips.opt:462
 #, no-c-format
-msgid "Generate call insns as indirect calls."
+msgid "Perform VR4130-specific alignment optimizations."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:80
+#: config/mips/mips.opt:466
 #, no-c-format
-msgid "Generate call insns as direct calls."
+msgid "Lift restrictions on GOT size."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:84
+#: config/mips/mips.opt:470
 #, no-c-format
-msgid ""
-"Assume labels and symbols can be addressed using 16 bit absolute addresses."
+msgid "Enable use of odd-numbered single-precision registers."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:108
+#: config/mips/mips.opt:474
 #, no-c-format
-msgid ""
-"A floating point to integer truncation may be replaced with rounding to save "
-"mode switching."
+msgid "Optimize frame header."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:112
+#: config/mips/mips.opt:478
 #, no-c-format
-msgid "Vectorize for double-word operations."
+msgid "Change the behaviour to grow the frame downwards."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:128
+#: config/mips/mips.opt:485
 #, no-c-format
-msgid ""
-"Split unaligned 8 byte vector moves before post-modify address generation."
+msgid "Enable load/store bonding."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:132
+#: config/mips/mips.opt:489
 #, no-c-format
-msgid "Use the floating point unit for integer add/subtract."
+msgid "Specify the compact branch usage policy."
 msgstr ""
 
-#: config/epiphany/epiphany.opt:136
+#: config/mips/mips.opt:493
 #, no-c-format
-msgid "Set register to hold -1."
+msgid "Policies available for use with -mcompact-branches=:"
 msgstr ""
 
-#: config/ft32/ft32.opt:23
+#: config/mips/mips.opt:506
 #, no-c-format
-msgid "Target the software simulator."
+msgid "Use Loongson MultiMedia extensions Instructions (MMI) instructions."
 msgstr ""
 
-#: config/ft32/ft32.opt:27
+#: config/mips/mips.opt:510
 #, no-c-format
-msgid "Ignored, but preserved for backward compatibility."
+msgid "Use Loongson EXTension (EXT) instructions."
 msgstr ""
 
-#: config/ft32/ft32.opt:31
+#: config/mips/mips.opt:514
 #, no-c-format
-msgid "Avoid use of the DIV and MOD instructions."
+msgid "Use Loongson EXTension R2 (EXT2) instructions."
 msgstr ""
 
-#: config/ft32/ft32.opt:35
+#: config/mips/mips-tables.opt:24
 #, no-c-format
-msgid "Target the FT32B architecture."
+msgid "Known MIPS CPUs (for use with the -march= and -mtune= options):"
 msgstr ""
 
-#: config/ft32/ft32.opt:39
+#: config/mips/mips-tables.opt:28
 #, no-c-format
-msgid "Enable FT32B code compression."
+msgid "Known MIPS ISA levels (for use with the -mips option):"
 msgstr ""
 
-#: config/ft32/ft32.opt:43
+#: config/s390/tpf.opt:23
 #, no-c-format
-msgid "Avoid placing any readable data in program memory."
+msgid "Enable TPF-OS tracing code."
 msgstr ""
 
-#: config/h8300/h8300.opt:23
+#: config/s390/tpf.opt:29
 #, no-c-format
-msgid "Generate H8S code."
+msgid "Set the trace check address for prologue tpf hook"
 msgstr ""
 
-#: config/h8300/h8300.opt:27
+#: config/s390/tpf.opt:33
 #, no-c-format
-msgid "Generate H8SX code."
+msgid "Set the trace jump address for prologue tpf hook"
 msgstr ""
 
-#: config/h8300/h8300.opt:31
+#: config/s390/tpf.opt:37
 #, no-c-format
-msgid "Generate H8S/2600 code."
+msgid "Set the trace check address for epilogue tpf hook"
 msgstr ""
 
-#: config/h8300/h8300.opt:35
+#: config/s390/tpf.opt:41
 #, no-c-format
-msgid "Make integers 32 bits wide."
+msgid "Set the trace jump address for epilogue tpf hook"
 msgstr ""
 
-#: config/h8300/h8300.opt:42
+#: config/s390/tpf.opt:45
 #, no-c-format
-msgid "Use registers for argument passing."
+msgid ""
+"Set the prologue and epilogue hook addresses to "
+"TPF_TRACE_PROLOGUE_SKIP_TARGET and TPF_TRACE_EPILOGUE_SKIP_TARGET. "
+"Equivalent to using -mtpf-trace-hook-prologue-"
+"target=TPF_TRACE_PROLOGUE_SKIP_TARGET and -mtpf-trace-hook-epilogue-"
+"target=TPF_TRACE_EPILOGUE_SKIP_TARGET"
 msgstr ""
 
-#: config/h8300/h8300.opt:46
+#: config/s390/tpf.opt:49
 #, no-c-format
-msgid "Consider access to byte sized memory slow."
+msgid "Specify main object for TPF-OS."
 msgstr ""
 
-#: config/h8300/h8300.opt:50
+#: config/s390/s390.opt:48
 #, no-c-format
-msgid "Enable linker relaxing."
+msgid "31 bit ABI."
 msgstr ""
 
-#: config/h8300/h8300.opt:54
+#: config/s390/s390.opt:52
 #, no-c-format
-msgid "Generate H8/300H code."
+msgid "64 bit ABI."
 msgstr ""
 
-#: config/h8300/h8300.opt:58
+#: config/s390/s390.opt:135
 #, no-c-format
-msgid "Enable the normal mode."
+msgid "Maintain backchain pointer."
 msgstr ""
 
-#: config/h8300/h8300.opt:62
+#: config/s390/s390.opt:139
 #, no-c-format
-msgid "Use H8/300 alignment rules."
+msgid "Additional debug prints."
 msgstr ""
 
-#: config/h8300/h8300.opt:66
+#: config/s390/s390.opt:143
 #, no-c-format
-msgid "Push extended registers on stack in monitor functions."
+msgid "ESA/390 architecture."
 msgstr ""
 
-#: config/h8300/h8300.opt:70
+#: config/s390/s390.opt:147
 #, no-c-format
-msgid "Do not push extended registers on stack in monitor functions."
+msgid "Enable decimal floating point hardware support."
 msgstr ""
 
-#: config/pru/pru.opt:31
+#: config/s390/s390.opt:151
 #, no-c-format
-msgid ""
-"-mmcu=MCU\tSelect the target System-On-Chip variant that embeds this PRU."
+msgid "Enable hardware floating point."
 msgstr ""
 
-#: config/pru/pru.opt:35
+#: config/s390/s390.opt:155
 #, no-c-format
 msgid ""
-"Make GCC pass the --no-relax command-line option to the linker instead of "
-"the --relax option."
+"Takes two non-negative integer numbers separated by a comma. Prepend the "
+"function label with the number of two-byte Nop instructions indicated by the "
+"first.  Append Nop instructions covering the number of halfwords indicated "
+"by the second after the label.  Nop instructions of the largest possible "
+"size are used (six, four or two bytes), beginning with the largest possible "
+"size.  Using 0 for both values disables hotpatching."
 msgstr ""
 
-#: config/pru/pru.opt:40
+#: config/s390/s390.opt:173
 #, no-c-format
-msgid "Allow (or do not allow) gcc to use the LOOP instruction."
+msgid "Use hardware transactional execution instructions."
 msgstr ""
 
-#: config/pru/pru.opt:44
+#: config/s390/s390.opt:177
 #, no-c-format
-msgid "Select target ABI variant."
+msgid "Use hardware vector facility instructions and enable the vector ABI."
 msgstr ""
 
-#: config/pru/pru.opt:48
+#: config/s390/s390.opt:181
 #, no-c-format
-msgid "ABI variant code generation (for use with -mabi= option):"
+msgid "Use packed stack layout."
 msgstr ""
 
-#: config/pdp11/pdp11.opt:23
+#: config/s390/s390.opt:185
 #, no-c-format
-msgid "Generate code for an 11/10."
+msgid "Use bras for executable < 64k."
 msgstr ""
 
-#: config/pdp11/pdp11.opt:27
+#: config/s390/s390.opt:189
 #, no-c-format
-msgid "Generate code for an 11/40."
+msgid "Disable hardware floating point."
 msgstr ""
 
-#: config/pdp11/pdp11.opt:31
+#: config/s390/s390.opt:193
 #, no-c-format
-msgid "Generate code for an 11/45."
+msgid ""
+"Set the max. number of bytes which has to be left to stack size before a "
+"trap instruction is triggered."
 msgstr ""
 
-#: config/pdp11/pdp11.opt:35
+#: config/s390/s390.opt:197
 #, no-c-format
-msgid "Return floating-point results in ac0 (fr0 in Unix assembler syntax)."
+msgid "Switches off the -mstack-guard= option."
 msgstr ""
 
-#: config/pdp11/pdp11.opt:39
+#: config/s390/s390.opt:215
 #, no-c-format
-msgid "Use the DEC assembler syntax."
+msgid ""
+"Generate section __stack_protector_loc containing pointers to all "
+"instructions which load the address of the global guard."
 msgstr ""
 
-#: config/pdp11/pdp11.opt:43
+#: config/s390/s390.opt:219
 #, no-c-format
-msgid "Use the GNU assembler syntax."
+msgid ""
+"Emit extra code in the function prologue in order to trap if the stack size "
+"exceeds the given limit."
 msgstr ""
 
-#: config/pdp11/pdp11.opt:47 config/rs6000/rs6000.opt:183
-#: config/frv/frv.opt:158
+#: config/s390/s390.opt:223
 #, no-c-format
-msgid "Use hardware floating point."
+msgid "Switches off the -mstack-size= option."
 msgstr ""
 
-#: config/pdp11/pdp11.opt:51
+#: config/s390/s390.opt:231
 #, no-c-format
-msgid "Use 16 bit int."
+msgid "Use the mvcle instruction for block moves."
 msgstr ""
 
-#: config/pdp11/pdp11.opt:55
+#: config/s390/s390.opt:235
 #, no-c-format
-msgid "Use 32 bit int."
+msgid ""
+"Enable the z vector language extension providing the context-sensitive "
+"vector macro and enable the Altivec-style builtins in vecintrin.h."
 msgstr ""
 
-#: config/pdp11/pdp11.opt:59 config/rs6000/rs6000.opt:179
+#: config/s390/s390.opt:240
 #, no-c-format
-msgid "Do not use hardware floating point."
+msgid "Warn if a function uses alloca or creates an array with dynamic size."
 msgstr ""
 
-#: config/pdp11/pdp11.opt:63
+#: config/s390/s390.opt:244
 #, no-c-format
-msgid "Target has split I&D."
+msgid "Warn if a single function's framesize exceeds the given framesize."
 msgstr ""
 
-#: config/pdp11/pdp11.opt:67
+#: config/s390/s390.opt:248
 #, no-c-format
-msgid "Use UNIX assembler syntax."
+msgid "z/Architecture."
 msgstr ""
 
-#: config/pdp11/pdp11.opt:71
+#: config/s390/s390.opt:253
 #, no-c-format
-msgid "Use LRA register allocator."
+msgid ""
+"Set the branch costs for conditional branch instructions.  Reasonable values "
+"are small, non-negative integers.  The default branch cost is 1."
 msgstr ""
 
-#: config/xtensa/xtensa.opt:26
+#: config/s390/s390.opt:264
 #, no-c-format
-msgid "Use CONST16 instruction to load constants."
+msgid ""
+"Wrap all indirect branches into execute in order to disable branch "
+"prediction."
 msgstr ""
 
-#: config/xtensa/xtensa.opt:30
+#: config/s390/s390.opt:269
 #, no-c-format
-msgid "Disable position-independent code (PIC) for use in OS kernel code."
+msgid ""
+"Wrap indirect table jumps and computed gotos into execute in order to "
+"disable branch prediction.  Using thunk or thunk-extern with this option "
+"requires the thunks to be considered signal handlers to order to generate "
+"correct CFI.  For environments where unwinding (e.g. for exceptions) is "
+"required please use thunk-inline instead."
 msgstr ""
 
-#: config/xtensa/xtensa.opt:34
+#: config/s390/s390.opt:277
 #, no-c-format
-msgid "Use indirect CALLXn instructions for large programs."
+msgid ""
+"Wrap all indirect calls into execute in order to disable branch prediction."
 msgstr ""
 
-#: config/xtensa/xtensa.opt:38
+#: config/s390/s390.opt:281
 #, no-c-format
 msgid ""
-"Set extra memory access cost for L32R instruction, in clock-cycle units."
+"Wrap all indirect return branches into execute in order to disable branch "
+"prediction."
 msgstr ""
 
-#: config/xtensa/xtensa.opt:46
+#: config/s390/s390.opt:286
 #, no-c-format
-msgid "Automatically align branch targets to reduce branch penalties."
+msgid ""
+"Wrap indirect return branches into execute in order to disable branch "
+"prediction. This affects only branches where the return address is going to "
+"be restored from memory."
 msgstr ""
 
-#: config/xtensa/xtensa.opt:50
+#: config/s390/s390.opt:292
 #, no-c-format
-msgid "Intersperse literal pools with code in the text section."
+msgid ""
+"Wrap indirect return branches into execute in order to disable branch "
+"prediction. This affects only branches where the return address doesn't need "
+"to be restored from memory."
 msgstr ""
 
-#: config/xtensa/xtensa.opt:54
+#: config/s390/s390.opt:314
 #, no-c-format
 msgid ""
-"Relax literals in assembler and place them automatically in the text section."
+"Generate "
+"sections .s390_indirect_jump, .s390_indirect_call, .s390_return_reg, "
+"and .s390_return_mem to contain the indirect branch locations which have "
+"been patched as part of using one of the -mindirect-branch* or -mfunction-"
+"return* options.  The sections consist of an array of 32 bit elements. Each "
+"entry holds the offset from the entry to the patched location."
 msgstr ""
 
-#: config/xtensa/xtensa.opt:58
+#: config/s390/s390.opt:323
 #, no-c-format
 msgid ""
-"-mno-serialize-volatile\tDo not serialize volatile memory references with "
-"MEMW instructions."
+"Emit profiling counter call at function entry before prologue. The compiled "
+"code will require a 64-bit CPU and glibc 2.29 or newer to run."
 msgstr ""
 
-#: config/xtensa/xtensa.opt:65
+#: config/s390/s390.opt:328
 #, no-c-format
-msgid "Use call0 ABI."
+msgid "Generate __mcount_loc section with all _mcount and __fentry__ calls."
 msgstr ""
 
-#: config/xtensa/xtensa.opt:69
+#: config/s390/s390.opt:337
 #, no-c-format
-msgid "Use windowed registers ABI."
+msgid ""
+"Emit fused multiply-add instructions for long doubles in vector registers "
+"(wfmaxb, wfmsxb, wfnmaxb, wfnmsxb).  Reassociation pass does not handle "
+"fused multiply-adds, therefore code generated by the middle-end is prone to "
+"having long fused multiply-add chains.  This is not pipeline-friendly, and "
+"the default behavior is to emit separate multiplication and addition "
+"instructions for long doubles in vector registers, because measurements show "
+"that this improves performance.  This option allows overriding it for "
+"testing purposes."
 msgstr ""
 
-#: config/i386/mingw-w64.opt:23
+#: config/s390/s390.opt:352
 #, no-c-format
-msgid "Use unicode startup and define UNICODE macro."
+msgid "Store all argument registers on the stack."
 msgstr ""
 
-#: config/i386/i386.opt:213
+#: config/s390/s390.opt:356
 #, no-c-format
-msgid "sizeof(long double) is 16."
+msgid ""
+"Assume external symbols, whose natural alignment would be 1, to be "
+"potentially unaligned.  By default all symbols without explicit alignment "
+"are assumed to reside on a 2 byte boundary as mandated by the IBM Z ABI."
 msgstr ""
 
-#: config/i386/i386.opt:217 config/i386/i386.opt:385
+#: config/lynx.opt:23
 #, no-c-format
-msgid "Use hardware fp."
+msgid "Support legacy multi-threading."
 msgstr ""
 
-#: config/i386/i386.opt:221
+#: config/lynx.opt:27
 #, no-c-format
-msgid "sizeof(long double) is 12."
+msgid "Use shared libraries."
 msgstr ""
 
-#: config/i386/i386.opt:225
+#: config/lynx.opt:31
 #, no-c-format
-msgid "Use 80-bit long double."
+msgid "Support multi-threading."
 msgstr ""
 
-#: config/i386/i386.opt:229 config/s390/s390.opt:169
-#: config/sparc/long-double-switch.opt:27 config/alpha/alpha.opt:110
+#: config/fr30/fr30.opt:23
 #, no-c-format
-msgid "Use 64-bit long double."
+msgid "Assume small address space."
 msgstr ""
 
-#: config/i386/i386.opt:233 config/s390/s390.opt:165
-#: config/sparc/long-double-switch.opt:23 config/alpha/alpha.opt:106
+#: config/pdp11/pdp11.opt:23
 #, no-c-format
-msgid "Use 128-bit long double."
+msgid "Generate code for an 11/10."
 msgstr ""
 
-#: config/i386/i386.opt:237 config/sh/sh.opt:179
+#: config/pdp11/pdp11.opt:27
 #, no-c-format
-msgid "Reserve space for outgoing arguments in the function prologue."
+msgid "Generate code for an 11/40."
 msgstr ""
 
-#: config/i386/i386.opt:241
+#: config/pdp11/pdp11.opt:31
 #, no-c-format
-msgid "Align some doubles on dword boundary."
+msgid "Generate code for an 11/45."
 msgstr ""
 
-#: config/i386/i386.opt:245
+#: config/pdp11/pdp11.opt:35
 #, no-c-format
-msgid "Function starts are aligned to this power of 2."
+msgid "Return floating-point results in ac0 (fr0 in Unix assembler syntax)."
 msgstr ""
 
-#: config/i386/i386.opt:249
+#: config/pdp11/pdp11.opt:39
 #, no-c-format
-msgid "Jump targets are aligned to this power of 2."
+msgid "Use the DEC assembler syntax."
 msgstr ""
 
-#: config/i386/i386.opt:253
+#: config/pdp11/pdp11.opt:43
 #, no-c-format
-msgid "Loop code aligned to this power of 2."
+msgid "Use the GNU assembler syntax."
 msgstr ""
 
-#: config/i386/i386.opt:257
+#: config/pdp11/pdp11.opt:51
 #, no-c-format
-msgid "Align destination of the string operations."
+msgid "Use 16 bit int."
 msgstr ""
 
-#: config/i386/i386.opt:278 config/s390/s390.opt:56
+#: config/pdp11/pdp11.opt:55
 #, no-c-format
-msgid "Generate code for given CPU."
+msgid "Use 32 bit int."
 msgstr ""
 
-#: config/i386/i386.opt:282 config/bpf/bpf.opt:100
+#: config/pdp11/pdp11.opt:63
 #, no-c-format
-msgid "Use given assembler dialect."
+msgid "Target has split I&D."
 msgstr ""
 
-#: config/i386/i386.opt:286
+#: config/pdp11/pdp11.opt:67
 #, no-c-format
-msgid "Known assembler dialects (for use with the -masm= option):"
+msgid "Use UNIX assembler syntax."
 msgstr ""
 
-#: config/i386/i386.opt:296
+#: config/pdp11/pdp11.opt:71
 #, no-c-format
-msgid "Branches are this expensive (arbitrary units)."
+msgid "Use LRA register allocator."
 msgstr ""
 
-#: config/i386/i386.opt:300
+#: config/or1k/or1k.opt:29
 #, no-c-format
 msgid ""
-"-mlarge-data-threshold=<number>\tData greater than given threshold will go "
-"into a large data section in x86-64 medium and large code models."
+"Enable generation of hardware divide (l.div, l.divu) instructions.  This is "
+"the default; use -msoft-div to override."
 msgstr ""
 
-#: config/i386/i386.opt:304
+#: config/or1k/or1k.opt:34
 #, no-c-format
-msgid "Use given x86-64 code model."
+msgid ""
+"Enable generation of binaries which use functions from libgcc to perform "
+"divide operations.  The default is -mhard-div."
 msgstr ""
 
-#: config/i386/i386.opt:327
+#: config/or1k/or1k.opt:39
 #, no-c-format
-msgid "Use given address mode."
+msgid ""
+"Enable generation of hardware multiply instructions (l.mul, l.muli) "
+"instructions. This is the default; use -msoft-mul to override."
 msgstr ""
 
-#: config/i386/i386.opt:331
+#: config/or1k/or1k.opt:44
 #, no-c-format
-msgid "Known address mode (for use with the -maddress-mode= option):"
+msgid ""
+"Enable generation of binaries which use functions from libgcc to perform "
+"multiply operations. The default is -mhard-mul."
 msgstr ""
 
-#: config/i386/i386.opt:344
+#: config/or1k/or1k.opt:49
 #, no-c-format
-msgid "Generate sin, cos, sqrt for FPU."
+msgid ""
+"Enable generation of binaries which use functions from libgcc to perform "
+"floating point operations.  This is the default; use -mhard-float to "
+"override."
 msgstr ""
 
-#: config/i386/i386.opt:348
+#: config/or1k/or1k.opt:54
 #, no-c-format
-msgid "Always use Dynamic Realigned Argument Pointer (DRAP) to realign stack."
+msgid ""
+"Enable generation of hardware floating point instructions. The default is "
+"-msoft-float."
 msgstr ""
 
-#: config/i386/i386.opt:352
+#: config/or1k/or1k.opt:59
 #, no-c-format
-msgid "Return values of functions in FPU registers."
+msgid ""
+"When -mhard-float is selected, enables generation of double-precision "
+"floating point instructions.  By default functions from libgcc are used to "
+"perform double-precision floating point operations."
 msgstr ""
 
-#: config/i386/i386.opt:356
+#: config/or1k/or1k.opt:65
 #, no-c-format
-msgid "Generate floating point mathematics using given instruction set."
+msgid ""
+"When -mhard-float is selected, enables generation of unordered floating "
+"point compare and set flag (lf.sfun*) instructions.  By default functions "
+"from libgcc are used to perform unordered floating point compare and set "
+"flag operations."
 msgstr ""
 
-#: config/i386/i386.opt:360
+#: config/or1k/or1k.opt:71
 #, no-c-format
-msgid "Valid arguments to -mfpmath=:"
+msgid ""
+"Specify the code model used for accessing memory addresses.  Specifying "
+"large enables generating binaries with large global offset tables and "
+"calling functions anywhere in an executable.  By default the value is small."
 msgstr ""
 
-#: config/i386/i386.opt:393
+#: config/or1k/or1k.opt:77
 #, no-c-format
-msgid "Inline all known string operations."
+msgid "Known code model types (for use with the -mcmodel= option):"
 msgstr ""
 
-#: config/i386/i386.opt:397
+#: config/or1k/or1k.opt:87
 #, no-c-format
 msgid ""
-"Inline memset/memcpy string operations, but perform inline version only for "
-"small blocks."
+"Enable generation of conditional move (l.cmov) instructions.  By default the "
+"equivalents are generated using set and branch."
 msgstr ""
 
-#: config/i386/i386.opt:404
+#: config/or1k/or1k.opt:92
 #, no-c-format
-msgid "Use native (MS) bitfield layout."
+msgid ""
+"Enable generation of rotate right (l.ror) instructions.  By default "
+"functions from libgcc are used to perform rotate right operations."
 msgstr ""
 
-#: config/i386/i386.opt:424
+#: config/or1k/or1k.opt:97
 #, no-c-format
 msgid ""
-"Relax cmpxchg loop for atomic_fetch_{or,xor,and,nand} by adding load and cmp "
-"before cmpxchg, execute pause and loop back to load and compare if load "
-"value is not expected."
+"Enable generation of rotate right with immediate (l.rori) instructions.  By "
+"default functions from libgcc are used to perform rotate right with "
+"immediate operations."
 msgstr ""
 
-#: config/i386/i386.opt:428
+#: config/or1k/or1k.opt:103
 #, no-c-format
-msgid "Set 80387 floating-point precision to 32-bit."
+msgid ""
+"Enable generation of sign extension (l.ext*) instructions.  By default "
+"memory loads are used to perform sign extension."
 msgstr ""
 
-#: config/i386/i386.opt:432
+#: config/or1k/or1k.opt:108
 #, no-c-format
-msgid "Set 80387 floating-point precision to 64-bit."
+msgid ""
+"Enable generation of compare and set flag with immediate (l.sf*i) "
+"instructions. By default extra instructions are generated to store the "
+"immediate to a register first."
 msgstr ""
 
-#: config/i386/i386.opt:436
+#: config/or1k/or1k.opt:114
 #, no-c-format
-msgid "Set 80387 floating-point precision to 80-bit."
+msgid ""
+"Enable generation of shift with immediate (l.srai, l.srli, l.slli) "
+"instructions. By default extra instructions are generated to store the "
+"immediate to a register first."
 msgstr ""
 
-#: config/i386/i386.opt:440
+#: config/or1k/elf.opt:28
 #, no-c-format
-msgid "Set the FTZ and DAZ Flags."
+msgid "Configure the newlib board specific runtime.  The default is or1ksim."
 msgstr ""
 
-#: config/i386/i386.opt:448
+#: config/or1k/elf.opt:32
 #, no-c-format
-msgid "Assume incoming stack aligned to this power of 2."
+msgid ""
+"This option is ignored; it is provided for compatibility purposes only.  "
+"This used to select linker and preprocessor options for use with newlib."
 msgstr ""
 
-#: config/i386/i386.opt:452
+#: config/ia64/ia64.opt:28
 #, no-c-format
-msgid "Use push instructions to save outgoing arguments."
+msgid "Generate big endian code."
 msgstr ""
 
-#: config/i386/i386.opt:456
+#: config/ia64/ia64.opt:32
 #, no-c-format
-msgid "Use red-zone in the x86-64 code."
+msgid "Generate little endian code."
 msgstr ""
 
-#: config/i386/i386.opt:460
+#: config/ia64/ia64.opt:36
 #, no-c-format
-msgid "Number of registers used to pass integer arguments."
+msgid "Generate code for GNU as."
 msgstr ""
 
-#: config/i386/i386.opt:464
+#: config/ia64/ia64.opt:40
 #, no-c-format
-msgid "Alternate calling convention."
+msgid "Generate code for GNU ld."
 msgstr ""
 
-#: config/i386/i386.opt:468 config/alpha/alpha.opt:23
+#: config/ia64/ia64.opt:44
 #, no-c-format
-msgid "Do not use hardware fp."
+msgid "Emit stop bits before and after volatile extended asms."
 msgstr ""
 
-#: config/i386/i386.opt:472
+#: config/ia64/ia64.opt:48
 #, no-c-format
-msgid "Use SSE register passing conventions for SF and DF mode."
+msgid "Use in/loc/out register names."
 msgstr ""
 
-#: config/i386/i386.opt:476
+#: config/ia64/ia64.opt:55
 #, no-c-format
-msgid "Realign stack in prologue."
+msgid "Enable use of sdata/scommon/sbss."
 msgstr ""
 
-#: config/i386/i386.opt:480
+#: config/ia64/ia64.opt:59
 #, no-c-format
-msgid "Enable stack probing."
+msgid "Generate code without GP reg."
 msgstr ""
 
-#: config/i386/i386.opt:484
+#: config/ia64/ia64.opt:63
 #, no-c-format
-msgid "Specify memcpy expansion strategy when expected size is known."
+msgid "gp is constant (but save/restore gp on indirect calls)."
 msgstr ""
 
-#: config/i386/i386.opt:488
+#: config/ia64/ia64.opt:67
 #, no-c-format
-msgid "Specify memset expansion strategy when expected size is known."
+msgid "Generate self-relocatable code."
 msgstr ""
 
-#: config/i386/i386.opt:492
+#: config/ia64/ia64.opt:71
 #, no-c-format
-msgid "Chose strategy to generate stringop using."
+msgid "Generate inline floating point division, optimize for latency."
 msgstr ""
 
-#: config/i386/i386.opt:524
+#: config/ia64/ia64.opt:75
 #, no-c-format
-msgid "Use given thread-local storage dialect."
+msgid "Generate inline floating point division, optimize for throughput."
 msgstr ""
 
-#: config/i386/i386.opt:528
+#: config/ia64/ia64.opt:82
 #, no-c-format
-msgid "Known TLS dialects (for use with the -mtls-dialect= option):"
+msgid "Generate inline integer division, optimize for latency."
 msgstr ""
 
-#: config/i386/i386.opt:538
+#: config/ia64/ia64.opt:86
 #, no-c-format
-msgid "Use direct references against %gs when accessing tls data."
+msgid "Generate inline integer division, optimize for throughput."
 msgstr ""
 
-#: config/i386/i386.opt:546
+#: config/ia64/ia64.opt:90
 #, no-c-format
-msgid "Fine grain control of tune features."
+msgid "Do not inline integer division."
 msgstr ""
 
-#: config/i386/i386.opt:550
+#: config/ia64/ia64.opt:94
 #, no-c-format
-msgid "Clear all tune features."
+msgid "Generate inline square root, optimize for latency."
 msgstr ""
 
-#: config/i386/i386.opt:557
+#: config/ia64/ia64.opt:98
 #, no-c-format
-msgid "Generate code that conforms to Intel MCU psABI."
+msgid "Generate inline square root, optimize for throughput."
 msgstr ""
 
-#: config/i386/i386.opt:561
+#: config/ia64/ia64.opt:102
 #, no-c-format
-msgid "Generate code that conforms to the given ABI."
+msgid "Do not inline square root."
 msgstr ""
 
-#: config/i386/i386.opt:565 config/nds32/nds32.opt:51
+#: config/ia64/ia64.opt:106
 #, no-c-format
-msgid "Known ABIs (for use with the -mabi= option):"
+msgid "Enable DWARF line debug info via GNU as."
 msgstr ""
 
-#: config/i386/i386.opt:575
+#: config/ia64/ia64.opt:110
 #, no-c-format
-msgid ""
-"Use libgcc stubs to save and restore registers clobbered by 64-bit Microsoft "
-"to System V ABI calls."
+msgid "Enable earlier placing stop bits for better scheduling."
 msgstr ""
 
-#: config/i386/i386.opt:579 config/rs6000/rs6000.opt:195
+#: config/ia64/ia64.opt:126
 #, no-c-format
-msgid "Vector library ABI to use."
+msgid "Known Itanium CPUs (for use with the -mtune= option):"
 msgstr ""
 
-#: config/i386/i386.opt:583
+#: config/ia64/ia64.opt:136
 #, no-c-format
-msgid ""
-"Known vectorization library ABIs (for use with the -mveclibabi= option):"
+msgid "Use data speculation before reload."
 msgstr ""
 
-#: config/i386/i386.opt:596
+#: config/ia64/ia64.opt:140
 #, no-c-format
-msgid "Return 8-byte vectors in memory."
+msgid "Use data speculation after reload."
 msgstr ""
 
-#: config/i386/i386.opt:600
+#: config/ia64/ia64.opt:144
 #, no-c-format
-msgid "Generate reciprocals instead of divss and sqrtss."
+msgid "Use control speculation."
 msgstr ""
 
-#: config/i386/i386.opt:604 config/loongarch/loongarch.opt:239
+#: config/ia64/ia64.opt:148
 #, no-c-format
-msgid "Control generation of reciprocal estimates."
+msgid "Use in block data speculation before reload."
 msgstr ""
 
-#: config/i386/i386.opt:608
+#: config/ia64/ia64.opt:152
 #, no-c-format
-msgid "Generate cld instruction in the function prologue."
+msgid "Use in block data speculation after reload."
 msgstr ""
 
-#: config/i386/i386.opt:612
+#: config/ia64/ia64.opt:156
 #, no-c-format
-msgid ""
-"Generate vzeroupper instruction before a transfer of control flow out of the "
-"function."
+msgid "Use in block control speculation."
 msgstr ""
 
-#: config/i386/i386.opt:617
+#: config/ia64/ia64.opt:160
 #, no-c-format
-msgid ""
-"Disable Scalar to Vector optimization pass transforming 64-bit integer "
-"computations into a vector ones."
+msgid "Use simple data speculation check."
 msgstr ""
 
-#: config/i386/i386.opt:622
+#: config/ia64/ia64.opt:164
 #, no-c-format
-msgid ""
-"The maximum number of use and def visits when discovering a STV chain before "
-"the discovery is aborted."
+msgid "Use simple data speculation check for control speculation."
 msgstr ""
 
-#: config/i386/i386.opt:626
+#: config/ia64/ia64.opt:174
 #, no-c-format
 msgid ""
-"Do dispatch scheduling if processor is bdver1, bdver2, bdver3, bdver4 or "
-"znver1 and Haifa scheduling is selected."
+"Count speculative dependencies while calculating priority of instructions."
 msgstr ""
 
-#: config/i386/i386.opt:631
+#: config/ia64/ia64.opt:178
 #, no-c-format
-msgid ""
-"Use 128-bit AVX instructions instead of 256-bit AVX instructions in the auto-"
-"vectorizer."
+msgid "Place a stop bit after every cycle when scheduling."
 msgstr ""
 
-#: config/i386/i386.opt:635
+#: config/ia64/ia64.opt:182
 #, no-c-format
 msgid ""
-"Use given register vector width instructions instead of maximum register "
-"width in the auto-vectorizer."
+"Assume that floating-point stores and loads are not likely to cause conflict "
+"when placed into one instruction group."
 msgstr ""
 
-#: config/i386/i386.opt:639
+#: config/ia64/ia64.opt:186
 #, no-c-format
 msgid ""
-"Known preferred register vector length (to use with the -mprefer-vector-"
-"width= option):"
+"Soft limit on number of memory insns per instruction group, giving lower "
+"priority to subsequent memory insns attempting to schedule in the same insn "
+"group. Frequently useful to prevent cache bank conflicts.  Default value is "
+"1."
 msgstr ""
 
-#: config/i386/i386.opt:655
+#: config/ia64/ia64.opt:190
 #, no-c-format
 msgid ""
-"Enable floating-point status flags setting SSE vector operations on partial "
-"vectors."
+"Disallow more than 'msched-max-memory-insns' in instruction group. "
+"Otherwise, limit is 'soft' (prefer non-memory operations when limit is "
+"reached)."
 msgstr ""
 
-#: config/i386/i386.opt:659
+#: config/ia64/ia64.opt:194
 #, no-c-format
-msgid ""
-"Maximum number of bits that can be moved from memory to memory efficiently."
+msgid "Don't generate checks for control speculation in selective scheduling."
 msgstr ""
 
-#: config/i386/i386.opt:663
+#: config/ia64/ilp32.opt:3
 #, no-c-format
-msgid "Maximum number of bits that can be stored to memory efficiently."
+msgid "Generate ILP32 code."
 msgstr ""
 
-#: config/i386/i386.opt:667
+#: config/ia64/ilp32.opt:7
 #, no-c-format
-msgid ""
-"Optimize noreturn functions by not saving callee-saved registers used in the "
-"function."
+msgid "Generate LP64 code."
 msgstr ""
 
-#: config/i386/i386.opt:673
+#: config/vxworks-smp.opt:25
 #, no-c-format
-msgid "Generate 32bit i386 code."
+msgid "Select VxWorks SMP C runtimes for linking."
 msgstr ""
 
-#: config/i386/i386.opt:677
+#: config/sh/sh.opt:42
 #, no-c-format
-msgid "Generate 64bit x86-64 code."
+msgid "Generate SH1 code."
 msgstr ""
 
-#: config/i386/i386.opt:681
+#: config/sh/sh.opt:46
 #, no-c-format
-msgid "Generate 32bit x86-64 code."
+msgid "Generate SH2 code."
 msgstr ""
 
-#: config/i386/i386.opt:685
+#: config/sh/sh.opt:50
 #, no-c-format
-msgid "Generate 16bit i386 code."
+msgid "Generate default double-precision SH2a-FPU code."
 msgstr ""
 
-#: config/i386/i386.opt:689
+#: config/sh/sh.opt:54
 #, no-c-format
-msgid "Support MMX built-in functions."
+msgid "Generate SH2a FPU-less code."
 msgstr ""
 
-#: config/i386/i386.opt:693
+#: config/sh/sh.opt:58
 #, no-c-format
-msgid "Support 3DNow! built-in functions."
+msgid "Generate default single-precision SH2a-FPU code."
 msgstr ""
 
-#: config/i386/i386.opt:697
+#: config/sh/sh.opt:62
 #, no-c-format
-msgid "Support Athlon 3Dnow! built-in functions."
+msgid "Generate only single-precision SH2a-FPU code."
 msgstr ""
 
-#: config/i386/i386.opt:701
+#: config/sh/sh.opt:66
 #, no-c-format
-msgid "Support MMX and SSE built-in functions and code generation."
+msgid "Generate SH2e code."
 msgstr ""
 
-#: config/i386/i386.opt:705
+#: config/sh/sh.opt:70
 #, no-c-format
-msgid "Support MMX, SSE and SSE2 built-in functions and code generation."
+msgid "Generate SH3 code."
 msgstr ""
 
-#: config/i386/i386.opt:709
+#: config/sh/sh.opt:74
 #, no-c-format
-msgid "Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation."
+msgid "Generate SH3e code."
 msgstr ""
 
-#: config/i386/i386.opt:713
+#: config/sh/sh.opt:78
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3 and SSSE3 built-in functions and code "
-"generation."
+msgid "Generate SH4 code."
 msgstr ""
 
-#: config/i386/i386.opt:717
+#: config/sh/sh.opt:82
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3 and SSE4.1 built-in functions and code "
-"generation."
+msgid "Generate SH4-100 code."
 msgstr ""
 
-#: config/i386/i386.opt:721 config/i386/i386.opt:725
+#: config/sh/sh.opt:86
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions "
-"and code generation."
+msgid "Generate SH4-200 code."
 msgstr ""
 
-#: config/i386/i386.opt:729
+#: config/sh/sh.opt:92
 #, no-c-format
-msgid ""
-"Do not support SSE4.1 and SSE4.2 built-in functions and code generation."
+msgid "Generate SH4-300 code."
 msgstr ""
 
-#: config/i386/i386.opt:737
+#: config/sh/sh.opt:96
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2 and AVX built-in "
-"functions and code generation."
+msgid "Generate SH4 FPU-less code."
 msgstr ""
 
-#: config/i386/i386.opt:741
+#: config/sh/sh.opt:100
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and AVX2 built-in "
-"functions and code generation."
+msgid "Generate SH4-100 FPU-less code."
+msgstr ""
+
+#: config/sh/sh.opt:104
+#, no-c-format
+msgid "Generate SH4-200 FPU-less code."
 msgstr ""
 
-#: config/i386/i386.opt:745
+#: config/sh/sh.opt:108
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F "
-"built-in functions and code generation."
+msgid "Generate SH4-300 FPU-less code."
 msgstr ""
 
-#: config/i386/i386.opt:749
+#: config/sh/sh.opt:112
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F "
-"and AVX512CD built-in functions and code generation."
+msgid "Generate code for SH4 340 series (MMU/FPU-less)."
 msgstr ""
 
-#: config/i386/i386.opt:753
+#: config/sh/sh.opt:117
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F "
-"and AVX512DQ built-in functions and code generation."
+msgid "Generate code for SH4 400 series (MMU/FPU-less)."
 msgstr ""
 
-#: config/i386/i386.opt:757
+#: config/sh/sh.opt:122
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F "
-"and AVX512BW built-in functions and code generation."
+msgid "Generate code for SH4 500 series (FPU-less)."
 msgstr ""
 
-#: config/i386/i386.opt:761
+#: config/sh/sh.opt:127
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F "
-"and AVX512VL built-in functions and code generation."
+msgid "Generate default single-precision SH4 code."
 msgstr ""
 
-#: config/i386/i386.opt:765
+#: config/sh/sh.opt:131
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F "
-"and AVX512IFMA built-in functions and code generation."
+msgid "Generate default single-precision SH4-100 code."
 msgstr ""
 
-#: config/i386/i386.opt:769
+#: config/sh/sh.opt:135
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F "
-"and AVX512VBMI built-in functions and code generation."
+msgid "Generate default single-precision SH4-200 code."
 msgstr ""
 
-#: config/i386/i386.opt:773
+#: config/sh/sh.opt:139
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
-"AVX512VPOPCNTDQ built-in functions and code generation."
+msgid "Generate default single-precision SH4-300 code."
 msgstr ""
 
-#: config/i386/i386.opt:777
+#: config/sh/sh.opt:143
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
-"AVX512VBMI2 built-in functions and code generation."
+msgid "Generate only single-precision SH4 code."
 msgstr ""
 
-#: config/i386/i386.opt:781
+#: config/sh/sh.opt:147
 #, no-c-format
-msgid "Support AVX512VNNI built-in functions and code generation."
+msgid "Generate only single-precision SH4-100 code."
 msgstr ""
 
-#: config/i386/i386.opt:785
+#: config/sh/sh.opt:151
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
-"AVX512BITALG built-in functions and code generation."
+msgid "Generate only single-precision SH4-200 code."
 msgstr ""
 
-#: config/i386/i386.opt:789
+#: config/sh/sh.opt:155
 #, no-c-format
-msgid "Support AVX512VP2INTERSECT built-in functions and code generation."
+msgid "Generate only single-precision SH4-300 code."
 msgstr ""
 
-#: config/i386/i386.opt:793
+#: config/sh/sh.opt:159
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and FMA built-in "
-"functions and code generation."
+msgid "Generate SH4a code."
 msgstr ""
 
-#: config/i386/i386.opt:797
+#: config/sh/sh.opt:163
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3 and SSE4A built-in functions and code "
-"generation."
+msgid "Generate SH4a FPU-less code."
 msgstr ""
 
-#: config/i386/i386.opt:801
+#: config/sh/sh.opt:167
 #, no-c-format
-msgid "Support FMA4 built-in functions and code generation."
+msgid "Generate default single-precision SH4a code."
 msgstr ""
 
-#: config/i386/i386.opt:805
+#: config/sh/sh.opt:171
 #, no-c-format
-msgid "Support XOP built-in functions and code generation."
+msgid "Generate only single-precision SH4a code."
 msgstr ""
 
-#: config/i386/i386.opt:809
+#: config/sh/sh.opt:175
 #, no-c-format
-msgid "Support LWP built-in functions and code generation."
+msgid "Generate SH4al-dsp code."
 msgstr ""
 
-#: config/i386/i386.opt:813
+#: config/sh/sh.opt:183
 #, no-c-format
-msgid ""
-"Support code generation of Advanced Bit Manipulation (ABM) instructions."
+msgid "Generate code in big endian mode."
 msgstr ""
 
-#: config/i386/i386.opt:817
+#: config/sh/sh.opt:187
 #, no-c-format
-msgid "Support code generation of popcnt instruction."
+msgid "Generate 32-bit offsets in switch tables."
 msgstr ""
 
-#: config/i386/i386.opt:821
+#: config/sh/sh.opt:191
 #, no-c-format
-msgid "Support PCONFIG built-in functions and code generation."
+msgid "Generate bit instructions."
 msgstr ""
 
-#: config/i386/i386.opt:825
+#: config/sh/sh.opt:199
 #, no-c-format
-msgid "Support WBNOINVD built-in functions and code generation."
+msgid "Assume that zero displacement conditional branches are fast."
 msgstr ""
 
-#: config/i386/i386.opt:829
+#: config/sh/sh.opt:203
 #, no-c-format
-msgid "Support PTWRITE built-in functions and code generation."
+msgid "Force the usage of delay slots for conditional branches."
 msgstr ""
 
-#: config/i386/i386.opt:833
+#: config/sh/sh.opt:207
 #, no-c-format
-msgid "Support UINTR built-in functions and code generation."
+msgid "Align doubles at 64-bit boundaries."
 msgstr ""
 
-#: config/i386/i386.opt:837
+#: config/sh/sh.opt:211
 #, no-c-format
-msgid "Support SGX built-in functions and code generation."
+msgid "Division strategy, one of: call-div1, call-fp, call-table."
 msgstr ""
 
-#: config/i386/i386.opt:841
+#: config/sh/sh.opt:215
 #, no-c-format
-msgid "Support RDPID built-in functions and code generation."
+msgid "Specify name for 32 bit signed division function."
 msgstr ""
 
-#: config/i386/i386.opt:845
+#: config/sh/sh.opt:219
 #, no-c-format
-msgid "Support GFNI built-in functions and code generation."
+msgid "Generate ELF FDPIC code."
 msgstr ""
 
-#: config/i386/i386.opt:849
+#: config/sh/sh.opt:223
 #, no-c-format
-msgid "Support VAES built-in functions and code generation."
+msgid ""
+"Enable the use of 64-bit floating point registers in fmov instructions.  See "
+"-mdalign if 64-bit alignment is required."
 msgstr ""
 
-#: config/i386/i386.opt:853
+#: config/sh/sh.opt:231 config/sh/sh.opt:269
 #, no-c-format
-msgid "Support VPCLMULQDQ built-in functions and code generation."
+msgid "Follow Renesas (formerly Hitachi) / SuperH calling conventions."
 msgstr ""
 
-#: config/i386/i386.opt:857
+#: config/sh/sh.opt:235
 #, no-c-format
-msgid "Support BMI built-in functions and code generation."
+msgid "Increase the IEEE compliance for floating-point comparisons."
 msgstr ""
 
-#: config/i386/i386.opt:861
+#: config/sh/sh.opt:239
 #, no-c-format
-msgid "Support BMI2 built-in functions and code generation."
+msgid ""
+"Inline code to invalidate instruction cache entries after setting up nested "
+"function trampolines."
 msgstr ""
 
-#: config/i386/i386.opt:865
+#: config/sh/sh.opt:247
 #, no-c-format
-msgid "Support LZCNT built-in function and code generation."
+msgid "Generate code in little endian mode."
 msgstr ""
 
-#: config/i386/i386.opt:869
+#: config/sh/sh.opt:251
 #, no-c-format
-msgid "Support Hardware Lock Elision prefixes."
+msgid "Mark MAC register as call-clobbered."
 msgstr ""
 
-#: config/i386/i386.opt:873
+#: config/sh/sh.opt:257
 #, no-c-format
-msgid "Support RDSEED instruction."
+msgid "Make structs a multiple of 4 bytes (warning: ABI altered)."
 msgstr ""
 
-#: config/i386/i386.opt:877
+#: config/sh/sh.opt:261
 #, no-c-format
-msgid "Support PREFETCHW instruction."
+msgid "Emit function-calls using global offset table when generating PIC."
 msgstr ""
 
-#: config/i386/i386.opt:881
+#: config/sh/sh.opt:265
 #, no-c-format
-msgid "Support flag-preserving add-carry instructions."
+msgid "Shorten address references during linking."
 msgstr ""
 
-#: config/i386/i386.opt:885
+#: config/sh/sh.opt:273
 #, no-c-format
-msgid "Support CLFLUSHOPT instructions."
+msgid "Specify the model for atomic operations."
 msgstr ""
 
-#: config/i386/i386.opt:889
+#: config/sh/sh.opt:277
 #, no-c-format
-msgid "Support CLWB instruction."
+msgid "Use tas.b instruction for __atomic_test_and_set."
 msgstr ""
 
-#: config/i386/i386.opt:896
+#: config/sh/sh.opt:281
 #, no-c-format
-msgid "Support FXSAVE and FXRSTOR instructions."
+msgid "Cost to assume for a multiply insn."
 msgstr ""
 
-#: config/i386/i386.opt:900
+#: config/sh/sh.opt:285
 #, no-c-format
-msgid "Support XSAVE and XRSTOR instructions."
+msgid ""
+"Don't generate privileged-mode only code; implies -mno-inline-ic_invalidate "
+"if the inline code would not work in user mode."
 msgstr ""
 
-#: config/i386/i386.opt:904
+#: config/sh/sh.opt:291
 #, no-c-format
-msgid "Support XSAVEOPT instruction."
+msgid "Pretend a branch-around-a-move is a conditional move."
 msgstr ""
 
-#: config/i386/i386.opt:908
+#: config/sh/sh.opt:295
 #, no-c-format
-msgid "Support XSAVEC instructions."
+msgid "Enable the use of the fsca instruction."
 msgstr ""
 
-#: config/i386/i386.opt:912
+#: config/sh/sh.opt:299
 #, no-c-format
-msgid "Support XSAVES and XRSTORS instructions."
+msgid "Enable the use of the fsrra instruction."
 msgstr ""
 
-#: config/i386/i386.opt:916
+#: config/sh/superh.opt:6
 #, no-c-format
-msgid "Support TBM built-in functions and code generation."
+msgid "Board name [and memory region]."
 msgstr ""
 
-#: config/i386/i386.opt:920
+#: config/sh/superh.opt:10
 #, no-c-format
-msgid "Support code generation of cmpxchg16b instruction."
+msgid "Runtime name."
 msgstr ""
 
-#: config/i386/i386.opt:924
+#: config/m32c/m32c.opt:23
 #, no-c-format
-msgid "Support code generation of sahf instruction in 64bit x86-64 code."
+msgid "-msim\tUse simulator runtime."
 msgstr ""
 
-#: config/i386/i386.opt:928
+#: config/m32c/m32c.opt:27
 #, no-c-format
-msgid "Support code generation of movbe instruction."
+msgid "-mcpu=r8c\tCompile code for R8C variants."
 msgstr ""
 
-#: config/i386/i386.opt:932
+#: config/m32c/m32c.opt:31
 #, no-c-format
-msgid "Support code generation of crc32 instruction."
+msgid "-mcpu=m16c\tCompile code for M16C variants."
 msgstr ""
 
-#: config/i386/i386.opt:936
+#: config/m32c/m32c.opt:35
 #, no-c-format
-msgid "Support AES built-in functions and code generation."
+msgid "-mcpu=m32cm\tCompile code for M32CM variants."
 msgstr ""
 
-#: config/i386/i386.opt:940
+#: config/m32c/m32c.opt:39
 #, no-c-format
-msgid "Support SHA1 and SHA256 built-in functions and code generation."
+msgid "-mcpu=m32c\tCompile code for M32C variants."
 msgstr ""
 
-#: config/i386/i386.opt:944
+#: config/m32c/m32c.opt:43
 #, no-c-format
-msgid "Support PCLMUL built-in functions and code generation."
+msgid "-memregs=\tNumber of memreg bytes (default: 16, range: 0..16)."
 msgstr ""
 
-#: config/i386/i386.opt:948
+#: config/stormy16/stormy16.opt:24
 #, no-c-format
-msgid "Encode SSE instructions with VEX prefix."
+msgid "Provide libraries for the simulator."
 msgstr ""
 
-#: config/i386/i386.opt:952
+#: config/rx/elf.opt:32
 #, no-c-format
-msgid "Support FSGSBASE built-in functions and code generation."
+msgid ""
+"Generate assembler output that is compatible with the Renesas AS100 "
+"assembler.  This may restrict some of the compiler's capabilities.  The "
+"default is to generate GAS compatible syntax."
 msgstr ""
 
-#: config/i386/i386.opt:956
+#: config/rx/elf.opt:38 config/rx/rx.opt:99
 #, no-c-format
-msgid "Support RDRND built-in functions and code generation."
+msgid "Specifies the number of registers to reserve for interrupt handlers."
 msgstr ""
 
-#: config/i386/i386.opt:960
+#: config/rx/elf.opt:44 config/rx/rx.opt:105
 #, no-c-format
-msgid "Support F16C built-in functions and code generation."
+msgid ""
+"Specifies whether interrupt functions should save and restore the "
+"accumulator register."
 msgstr ""
 
-#: config/i386/i386.opt:964
+#: config/rx/rx.opt:29
 #, no-c-format
-msgid "Emit profiling counter call at function entry before prologue."
+msgid "Store doubles in 64 bits."
 msgstr ""
 
-#: config/i386/i386.opt:968
+#: config/rx/rx.opt:33
 #, no-c-format
-msgid "Generate __mcount_loc section with all mcount or __fentry__ calls."
+msgid "Stores doubles in 32 bits.  This is the default."
 msgstr ""
 
-#: config/i386/i386.opt:972 config/s390/s390.opt:313
+#: config/rx/rx.opt:37
 #, no-c-format
-msgid ""
-"Generate mcount/__fentry__ calls as nops. To activate they need to be "
-"patched in."
+msgid "Disable the use of RX FPU instructions."
 msgstr ""
 
-#: config/i386/i386.opt:977
+#: config/rx/rx.opt:44
 #, no-c-format
-msgid "Set name of __fentry__ symbol called at function entry."
+msgid "Enable the use of RX FPU instructions.  This is the default."
 msgstr ""
 
-#: config/i386/i386.opt:981
+#: config/rx/rx.opt:50
 #, no-c-format
-msgid "Set name of section to record mrecord-mcount calls."
+msgid "Specify the target RX cpu type."
 msgstr ""
 
-#: config/i386/i386.opt:985
+#: config/rx/rx.opt:71
 #, no-c-format
-msgid "Skip setting up RAX register when passing variable arguments."
+msgid "Data is stored in big-endian format."
 msgstr ""
 
-#: config/i386/i386.opt:989
+#: config/rx/rx.opt:75
 #, no-c-format
-msgid ""
-"Expand 32bit/64bit integer divide into 8bit unsigned integer divide with run-"
-"time check."
+msgid "Data is stored in little-endian format.  (Default)."
 msgstr ""
 
-#: config/i386/i386.opt:993
+#: config/rx/rx.opt:81
 #, no-c-format
-msgid "Split 32-byte AVX unaligned load."
+msgid ""
+"Maximum size of global and static variables which can be placed into the "
+"small data area."
 msgstr ""
 
-#: config/i386/i386.opt:997
+#: config/rx/rx.opt:87
 #, no-c-format
-msgid "Split 32-byte AVX unaligned store."
+msgid "Enable linker relaxation."
 msgstr ""
 
-#: config/i386/i386.opt:1001
+#: config/rx/rx.opt:93
 #, no-c-format
-msgid "Support RTM built-in functions and code generation."
+msgid "Maximum size in bytes of constant values allowed as operands."
 msgstr ""
 
-#: config/i386/i386.opt:1009
+#: config/rx/rx.opt:111
 #, no-c-format
-msgid "Support MWAITX and MONITORX built-in functions and code generation."
+msgid "Enables Position-Independent-Data (PID) mode."
 msgstr ""
 
-#: config/i386/i386.opt:1013
+#: config/rx/rx.opt:117
 #, no-c-format
-msgid "Support CLZERO built-in functions and code generation."
+msgid ""
+"Warn when multiple, different, fast interrupt handlers are in the "
+"compilation unit."
 msgstr ""
 
-#: config/i386/i386.opt:1017
+#: config/rx/rx.opt:123
 #, no-c-format
-msgid "Support PKU built-in functions and code generation."
+msgid ""
+"Enable the use of the old, broken, ABI where all stacked function arguments "
+"are aligned to 32-bits."
 msgstr ""
 
-#: config/i386/i386.opt:1025
+#: config/rx/rx.opt:127
 #, no-c-format
 msgid ""
-"Known stack protector guard (for use with the -mstack-protector-guard= "
-"option):"
+"Enable the use the standard RX ABI where all stacked function arguments are "
+"naturally aligned.  This is the default."
 msgstr ""
 
-#: config/i386/i386.opt:1049
+#: config/rx/rx.opt:133
 #, no-c-format
-msgid "Use the given symbol for addressing the stack-protector guard."
+msgid "Enable the use of the LRA register allocator."
 msgstr ""
 
-#: config/i386/i386.opt:1060
+#: config/rx/rx.opt:139
 #, no-c-format
 msgid ""
-"Enable shadow stack built-in functions from Control-flow Enforcement "
-"Technology (CET)."
+"Enables or disables the use of the SMOVF, SMOVB, SMOVU, SUNTIL, SWHILE and "
+"RMPA instructions.  Enabled by default."
 msgstr ""
 
-#: config/i386/i386.opt:1065
+#: config/rx/rx.opt:145
 #, no-c-format
-msgid ""
-"Turn on CET instrumentation for switch statements that use a jump table and "
-"an indirect jump."
+msgid "Always use JSR, never BSR, for calls."
 msgstr ""
 
-#: config/i386/i386.opt:1070
+#: m2/lang.opt:35
 #, no-c-format
 msgid ""
-"Insert ENDBR instruction at function entry only via cf_check attribute for "
-"CET instrumentation."
+"Case statement label compile time checking when using an expression of an "
+"enum type."
 msgstr ""
 
-#: config/i386/i386.opt:1075
+#: m2/lang.opt:39
 #, no-c-format
-msgid "Make all function calls indirect."
+msgid ""
+"Check definition module procedure parameter names match their implementation "
+"module counterpart."
 msgstr ""
 
-#: config/i386/i386.opt:1079
+#: m2/lang.opt:43
 #, no-c-format
-msgid "Convert indirect call and jump to call and return thunks."
+msgid "Warn if a cast is being used on types of differing sizes."
 msgstr ""
 
-#: config/i386/i386.opt:1083
+#: m2/lang.opt:47
 #, no-c-format
-msgid "Convert function return to call and return thunk."
+msgid "Inform user which parameters will be passed by reference."
 msgstr ""
 
-#: config/i386/i386.opt:1087 config/s390/s390.opt:279
+#: m2/lang.opt:51
 #, no-c-format
-msgid ""
-"Known indirect branch choices (for use with the -mindirect-branch=/-"
-"mfunction-return= options):"
+msgid "Semantic checking to catch poor programming style."
 msgstr ""
 
-#: config/i386/i386.opt:1103
+#: m2/lang.opt:55
 #, no-c-format
 msgid ""
-"Add CS prefix to call and jmp to indirect thunk with branch target in r8-r15 "
-"registers."
+"Compile time analysis in the first basic block of a procedure detecting "
+"access to uninitialized data."
 msgstr ""
 
-#: config/i386/i386.opt:1107
+#: m2/lang.opt:59
 #, no-c-format
-msgid "Force indirect call and jump via register."
+msgid ""
+"Compile time analysis to detect access to uninitialized variables, the "
+"checking can be specified by: known,cond,all."
 msgstr ""
 
-#: config/i386/i386.opt:1111
+#: m2/lang.opt:63
 #, no-c-format
-msgid "Support MOVDIRI built-in functions and code generation."
+msgid "Automatically initializes all pointers to NIL."
 msgstr ""
 
-#: config/i386/i386.opt:1115
+#: m2/lang.opt:67
 #, no-c-format
-msgid "Support MOVDIR64B built-in functions and code generation."
+msgid "Runtime subrange, array index and indirection via NIL pointer checking."
 msgstr ""
 
-#: config/i386/i386.opt:1119
+#: m2/lang.opt:71
 #, no-c-format
-msgid "Support WAITPKG built-in functions and code generation."
+msgid ""
+"Runtime checking to check whether a CASE statement requires an ELSE clause "
+"when one was not specified."
 msgstr ""
 
-#: config/i386/i386.opt:1123
+#: m2/lang.opt:75
 #, no-c-format
-msgid "Support CLDEMOTE built-in functions and code generation."
+msgid "Preprocess the module using cpp."
 msgstr ""
 
-#: config/i386/i386.opt:1127
+#: m2/lang.opt:79 m2/lang.opt:83
 #, no-c-format
-msgid "Instrument function exit in instrumented functions with __fentry__."
+msgid "Passed to the preprocessor if -fcpp is used (internal switch)."
 msgstr ""
 
-#: config/i386/i386.opt:1131
+#: m2/lang.opt:87
 #, no-c-format
-msgid "Known choices for return instrumentation with -minstrument-return=:"
+msgid "Call a real function, rather than the builtin equivalent."
 msgstr ""
 
-#: config/i386/i386.opt:1144
+#: m2/lang.opt:91
 #, no-c-format
-msgid ""
-"Generate a __return_loc section pointing to all return instrumentation code."
+msgid "Internal debugging of the compiler (internal switch)."
 msgstr ""
 
-#: config/i386/i386.opt:1152
+#: m2/lang.opt:95
 #, no-c-format
-msgid ""
-"Known choices for mitigation against straight line speculation with -mharden-"
-"sls=:"
+msgid "Trace procedure line numbers (internal switch)."
 msgstr ""
 
-#: config/i386/i386.opt:1168
+#: m2/lang.opt:99
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
-"AVX512BF16 built-in functions and code generation."
+msgid "Recognize the specified suffix as a definition module filename."
 msgstr ""
 
-#: config/i386/i386.opt:1173
+#: m2/lang.opt:103
 #, no-c-format
-msgid "Support ENQCMD built-in functions and code generation."
+msgid "Display all inbuilt system items."
 msgstr ""
 
-#: config/i386/i386.opt:1177
+#: m2/lang.opt:107
 #, no-c-format
-msgid "Support SERIALIZE built-in functions and code generation."
+msgid ""
+"Allows opaque types to be implemented as any type (a GNU Modula-2 extension)."
 msgstr ""
 
-#: config/i386/i386.opt:1181
+#: m2/lang.opt:111
 #, no-c-format
-msgid "Support TSXLDTRK built-in functions and code generation."
+msgid ""
+"Runtime checking to check whether a floating point number will exceed range."
 msgstr ""
 
-#: config/i386/i386.opt:1185
+#: m2/lang.opt:115
 #, no-c-format
-msgid "Support AMX-TILE built-in functions and code generation."
+msgid ""
+"Create a topologically sorted module list from all dependent modules used in "
+"the application."
 msgstr ""
 
-#: config/i386/i386.opt:1189
+#: m2/lang.opt:119
 #, no-c-format
-msgid "Support AMX-INT8 built-in functions and code generation."
+msgid "Range checking for numerical values."
 msgstr ""
 
-#: config/i386/i386.opt:1193
+#: m2/lang.opt:123
 #, no-c-format
-msgid "Support AMX-BF16 built-in functions and code generation."
+msgid "ISO dialect of Modula-2."
 msgstr ""
 
-#: config/i386/i386.opt:1197
+#: m2/lang.opt:127
 #, no-c-format
-msgid "Support HRESET built-in functions and code generation."
+msgid ""
+"Specify the library order, the libraries may be specified by a comma "
+"separated abbreviation: log,min,pim,iso or by directory names: "
+"m2log,m2min,m2pim,m2iso."
 msgstr ""
 
-#: config/i386/i386.opt:1201
+#: m2/lang.opt:131
 #, no-c-format
-msgid "Support KL built-in functions and code generation."
+msgid "Set all location values to a specific value (internal switch)."
 msgstr ""
 
-#: config/i386/i386.opt:1205
+#: m2/lang.opt:135
 #, no-c-format
-msgid "Support WIDEKL built-in functions and code generation."
+msgid "Internal debug tracing for quad,token,line,all (internal switch)."
 msgstr ""
 
-#: config/i386/i386.opt:1209
+#: m2/lang.opt:139
 #, no-c-format
 msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and AVXVNNI "
-"built-in functions and code generation."
+"Dump Modula-2 internal intemediate representation specified by: "
+"all,quad,decl,gimple."
 msgstr ""
 
-#: config/i386/i386.opt:1214
+#: m2/lang.opt:143
 #, no-c-format
-msgid "Emit GNU_PROPERTY_X86_ISA_1_NEEDED GNU property."
+msgid "Dump Modula-2 decls to the filename stem specified."
 msgstr ""
 
-#: config/i386/i386.opt:1218
+#: m2/lang.opt:147
 #, no-c-format
-msgid "Support MWAIT and MONITOR built-in functions and code generation."
+msgid "Dump Modula-2 gimple to the filename stem specified."
 msgstr ""
 
-#: config/i386/i386.opt:1222
+#: m2/lang.opt:151
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
-"AVX512-FP16 built-in functions and code generation."
+msgid "Dump Modula-2 quads to the filename stem specified."
 msgstr ""
 
-#: config/i386/i386.opt:1226
+#: m2/lang.opt:155
 #, no-c-format
-msgid "Do not use GOT to access external symbols."
+msgid ""
+"Filter the language dump using a comma separated list of procedures and "
+"modules."
 msgstr ""
 
-#: config/i386/i386.opt:1230
+#: m2/lang.opt:159
 #, no-c-format
-msgid "Instructions number above which STFL stall penalty can be compensated."
+msgid ""
+"Override the default 64 bit definition of SYSTEM.COFF_T with the argument "
+"specified."
 msgstr ""
 
-#: config/i386/i386.opt:1234
+#: m2/lang.opt:163
 #, no-c-format
 msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and AVXIFMA "
-"built-in functions and code generation."
+"Generate extra nops to improve debugging, producing an instruction for every "
+"code related keyword."
 msgstr ""
 
-#: config/i386/i386.opt:1239
+#: m2/lang.opt:167
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and "
-"AVXVNNIINT8 built-in functions and code generation."
+msgid "Generate error messages which render keywords in lower case."
 msgstr ""
 
-#: config/i386/i386.opt:1244
+#: m2/lang.opt:171
 #, no-c-format
 msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and "
-"AVXNECONVERT build-in functions and code generation."
+"Specify the module mangled prefix name for all modules in the following "
+"include paths."
 msgstr ""
 
-#: config/i386/i386.opt:1249
+#: m2/lang.opt:179
 #, no-c-format
 msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and "
-"CMPCCXADD build-in functions and code generation."
+"Add include paths for all the library names in -flibs= to this directory "
+"root."
 msgstr ""
 
-#: config/i386/i386.opt:1254
+#: m2/lang.opt:187
 #, no-c-format
-msgid "Support AMX-FP16 built-in functions and code generation."
+msgid "Insert plugin to identify runtime errors at compiletime."
 msgstr ""
 
-#: config/i386/i386.opt:1258
+#: m2/lang.opt:191
 #, no-c-format
-msgid "Support PREFETCHI built-in functions and code generation."
+msgid "Specify the module mangled prefix name."
 msgstr ""
 
-#: config/i386/i386.opt:1262
+#: m2/lang.opt:195
 #, no-c-format
-msgid "Support RAOINT built-in functions and code generation."
+msgid ""
+"Display statistics about the amount of source lines compiled and symbols "
+"used."
 msgstr ""
 
-#: config/i386/i386.opt:1266
+#: m2/lang.opt:199
 #, no-c-format
-msgid "Enable conservative small loop unrolling."
+msgid "Experimental flag to turn on the new strict type checker."
 msgstr ""
 
-#: config/i386/i386.opt:1270
+#: m2/lang.opt:203
 #, no-c-format
-msgid ""
-"-mlam=[none|u48|u57] Instrument meta data position in user data pointers."
+msgid "Provides more detail why the types are incompatible."
 msgstr ""
 
-#: config/i386/i386.opt:1286
+#: m2/lang.opt:207
 #, no-c-format
-msgid "Support AMX-COMPLEX built-in functions and code generation."
+msgid "Compile all implementation modules and program module at once."
 msgstr ""
 
-#: config/i386/i386.opt:1290
+#: m2/lang.opt:215
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and "
-"AVXVNNIINT16 built-in functions and code generation."
+msgid "Recognize the specified suffix as implementation and module filenames."
 msgstr ""
 
-#: config/i386/i386.opt:1295
+#: m2/lang.opt:219
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and SM3 built-in "
-"functions and code generation."
+msgid "Runtime checking to detect accessing data through a NIL value pointer."
 msgstr ""
 
-#: config/i386/i386.opt:1300
+#: m2/lang.opt:223
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and SHA512 built-in "
-"functions and code generation."
+msgid "PIM [234] dialect of Modula-2."
 msgstr ""
 
-#: config/i386/i386.opt:1305
+#: m2/lang.opt:227
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and SM4 built-in "
-"functions and code generation."
+msgid "PIM 2 dialect of Modula-2."
 msgstr ""
 
-#: config/i386/i386.opt:1310
+#: m2/lang.opt:231
 #, no-c-format
-msgid "Enable vectorization for gather instruction."
+msgid "PIM 3 dialect of Modula-2."
 msgstr ""
 
-#: config/i386/i386.opt:1314
+#: m2/lang.opt:235
 #, no-c-format
-msgid "Enable vectorization for scatter instruction."
+msgid "PIM 4 dialect of Modula-2."
 msgstr ""
 
-#: config/i386/i386.opt:1318
+#: m2/lang.opt:239
 #, no-c-format
-msgid ""
-"Support code generation for APX features, including EGPR, PUSH2POP2, NDD, "
-"PPX, NF, CCMP and ZU."
+msgid "Force positive result from MOD and DIV result floor."
 msgstr ""
 
-#: config/i386/i386.opt:1356
+#: m2/lang.opt:243
 #, no-c-format
-msgid "Enable GPR32 in inline asm when APX_F enabled."
+msgid "Link against the pthread library (default on)."
 msgstr ""
 
-#: config/i386/i386.opt:1360
+#: m2/lang.opt:247
 #, no-c-format
-msgid "Support 512 bit vector built-in functions and code generation."
+msgid "Internal compiler debugging information, dump the list of quadruples."
 msgstr ""
 
-#: config/i386/i386.opt:1364
+#: m2/lang.opt:251
 #, no-c-format
-msgid "Support USER_MSR built-in functions and code generation."
+msgid "Runtime range checking for numerical values."
 msgstr ""
 
-#: config/i386/i386.opt:1368
+#: m2/lang.opt:255
 #, no-c-format
 msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and "
-"AVX10.1-256 built-in functions and code generation."
+"Runtime checking for functions which finish without executing a RETURN "
+"statement."
 msgstr ""
 
-#: config/i386/i386.opt:1373 config/i386/i386.opt:1378
+#: m2/lang.opt:259
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and "
-"AVX10.1-512 built-in functions and code generation."
+msgid "Specify the list of runtime modules and their initialization order."
 msgstr ""
 
-#: config/i386/i386.opt:1383
+#: m2/lang.opt:263
 #, no-c-format
 msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX10.1-512 "
-"and AVX10.2 built-in functions and code generation."
+"Modules are initialized dynamically, determined by M2RTS and application "
+"dependencies."
 msgstr ""
 
-#: config/i386/i386.opt:1388
+#: m2/lang.opt:267
 #, no-c-format
-msgid ""
-"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX10.1-512, "
-"AVX10.2 and AMX-AVX512 built-in functions and code generation."
+msgid "Generate a C source scaffold for the current module being compiled."
 msgstr ""
 
-#: config/i386/i386.opt:1393
+#: m2/lang.opt:271
 #, no-c-format
-msgid "Support AMX-TF32 built-in functions and code generation."
+msgid "Generate a C++ source scaffold for the current module being compiled."
 msgstr ""
 
-#: config/i386/i386.opt:1397
+#: m2/lang.opt:275
 #, no-c-format
-msgid "Support AMX-TRANSPOSE built-in functions and code generation."
+msgid "Generate the main function."
 msgstr ""
 
-#: config/i386/i386.opt:1401
+#: m2/lang.opt:279
 #, no-c-format
-msgid "Support AMX-FP8 built-in functions and code generation."
+msgid ""
+"Generate static scaffold initialization and finalization for every module "
+"inside main."
 msgstr ""
 
-#: config/i386/i386.opt:1405
+#: m2/lang.opt:283
 #, no-c-format
-msgid "Support MOVRS built-in functions and code generation."
+msgid "Generate a shared library from the module."
 msgstr ""
 
-#: config/i386/i386.opt:1409
+#: m2/lang.opt:287
 #, no-c-format
-msgid "Support AMX-MOVRS built-in functions and code generation."
+msgid ""
+"All software runtime checking (an abbreviation for -fnil -frange -findex "
+"-fwholediv -fcase -freturn -fwholevalue -ffloatvalue)."
 msgstr ""
 
-#: config/pa/pa64-hpux.opt:23
+#: m2/lang.opt:291
 #, no-c-format
-msgid "Assume code will be linked by GNU ld."
+msgid "Display the location of module source files as they are compiled."
 msgstr ""
 
-#: config/pa/pa64-hpux.opt:27
+#: m2/lang.opt:295
 #, no-c-format
-msgid "Assume code will be linked by HP ld."
+msgid "Create a swig interface file for the module."
+msgstr ""
+
+#: m2/lang.opt:303
+#, no-c-format
+msgid ""
+"Optimize non var unbounded parameters by passing it by reference, providing "
+"it is not written to within the callee procedure."
 msgstr ""
 
-#: config/pa/pa-hpux1010.opt:23 config/pa/pa-hpux.opt:31
-#: config/pa/pa-hpux1131.opt:23 config/pa/pa-hpux1111.opt:23
+#: m2/lang.opt:307
 #, no-c-format
-msgid "Specify UNIX standard for predefines and linking."
+msgid ""
+"Order the initialization/finalizations for scaffold-static or force linking "
+"of modules if scaffold-dynamic."
 msgstr ""
 
-#: config/pa/pa-hpux.opt:27
+#: m2/lang.opt:315
 #, no-c-format
-msgid "Generate cpp defines for server IO."
+msgid ""
+"Link against the module M2WIDESET to perform the wideset operator, the "
+"negative version of this option will generate a warning if this module is "
+"required."
 msgstr ""
 
-#: config/pa/pa-hpux.opt:35
+#: m2/lang.opt:319
 #, no-c-format
-msgid "Generate cpp defines for workstation IO."
+msgid ""
+"Runtime checking of all division and modulus by zero checking for ordinal "
+"values."
 msgstr ""
 
-#: config/pa/pa.opt:30 config/pa/pa.opt:99 config/pa/pa.opt:111
+#: m2/lang.opt:323
 #, no-c-format
-msgid "Generate PA1.0 code."
+msgid "Runtime checking for whole numbers."
 msgstr ""
 
-#: config/pa/pa.opt:34 config/pa/pa.opt:115 config/pa/pa.opt:160
+#: m2/lang.opt:327
 #, no-c-format
-msgid "Generate PA1.1 code."
+msgid "Link the standard Modula-2 libraries statically in the compilation."
 msgstr ""
 
-#: config/pa/pa.opt:38 config/pa/pa.opt:119
+#: m2/lang.opt:472 m2/lang.opt:476
 #, no-c-format
-msgid "Generate PA2.0 code (requires binutils 2.10 or later)."
+msgid "save temporary preprocessed files."
 msgstr ""
 
-#: config/pa/pa.opt:42
+#: fortran/lang.opt:146
 #, no-c-format
-msgid ""
-"Generate libcalls for atomic loads and stores when sync libcalls are "
-"disabled."
+msgid "-J<directory>\tPut MODULE files in 'directory'."
 msgstr ""
 
-#: config/pa/pa.opt:50
+#: fortran/lang.opt:198
 #, no-c-format
-msgid "Caller copies function arguments passed by hidden reference."
+msgid "Warn about possible aliasing of dummy arguments."
 msgstr ""
 
-#: config/pa/pa.opt:54
+#: fortran/lang.opt:202
 #, no-c-format
-msgid "Use ldcw/ldcd coherent cache-control hint."
+msgid "Warn about alignment of COMMON blocks."
 msgstr ""
 
-#: config/pa/pa.opt:58
+#: fortran/lang.opt:206
 #, no-c-format
-msgid "Disable FP regs.  Equivalent to -msoft-float."
+msgid "Warn about missing ampersand in continued character constants."
 msgstr ""
 
-#: config/pa/pa.opt:62
+#: fortran/lang.opt:210
 #, no-c-format
-msgid "Disable indexed addressing."
+msgid "Warn about creation of array temporaries."
 msgstr ""
 
-#: config/pa/pa.opt:66
+#: fortran/lang.opt:218
 #, no-c-format
-msgid "Generate fast indirect calls."
+msgid "Warn if the type of a variable might be not interoperable with C."
 msgstr ""
 
-#: config/pa/pa.opt:74
+#: fortran/lang.opt:226
 #, no-c-format
-msgid "Assume code will be assembled by GAS."
+msgid "Warn about truncated character expressions."
 msgstr ""
 
-#: config/pa/pa.opt:83
+#: fortran/lang.opt:230
 #, no-c-format
-msgid "Enable linker optimizations."
+msgid "Warn about equality comparisons involving REAL or COMPLEX expressions."
 msgstr ""
 
-#: config/pa/pa.opt:87
+#: fortran/lang.opt:238
 #, no-c-format
-msgid "Always generate long calls."
+msgid "Warn about most implicit conversions."
 msgstr ""
 
-#: config/pa/pa.opt:91 config/sh/sh.opt:303
+#: fortran/lang.opt:246
 #, no-c-format
-msgid "Use LRA instead of reload (transitional)."
+msgid "Warn about possibly incorrect subscripts in do loops."
 msgstr ""
 
-#: config/pa/pa.opt:95
+#: fortran/lang.opt:250
 #, no-c-format
-msgid "Emit long load/store sequences."
+msgid "Warn when arguments of external procedures do not match."
 msgstr ""
 
-#: config/pa/pa.opt:103
+#: fortran/lang.opt:258
 #, no-c-format
-msgid "Disable space regs."
+msgid "Warn if loops have been interchanged."
 msgstr ""
 
-#: config/pa/pa.opt:107
+#: fortran/lang.opt:262
 #, no-c-format
-msgid "Assume memory references are ordered and barriers are not needed."
+msgid "Warn about function call elimination."
 msgstr ""
 
-#: config/pa/pa.opt:123
+#: fortran/lang.opt:266
 #, no-c-format
-msgid "Use portable calling conventions."
+msgid "Warn about calls with implicit interface."
 msgstr ""
 
-#: config/pa/pa.opt:127
+#: fortran/lang.opt:270
 #, no-c-format
-msgid ""
-"Specify CPU for scheduling purposes.  Valid arguments are 700, 7100, 7100LC, "
-"7200, 7300, and 8000."
+msgid "Warn about called procedures not explicitly declared."
 msgstr ""
 
-#: config/pa/pa.opt:152 config/frv/frv.opt:215
+#: fortran/lang.opt:274
 #, no-c-format
-msgid "Use software floating point."
+msgid "Warn about constant integer divisions with truncated results."
 msgstr ""
 
-#: config/pa/pa.opt:156
+#: fortran/lang.opt:278
 #, no-c-format
-msgid "Use software integer multiplication."
+msgid "Warn about truncated source lines."
 msgstr ""
 
-#: config/pa/pa.opt:164
+#: fortran/lang.opt:282
 #, no-c-format
-msgid "Do not disable space regs."
+msgid "Warn on intrinsics not part of the selected standard."
 msgstr ""
 
-#: config/v850/v850.opt:29
+#: fortran/lang.opt:294
 #, no-c-format
-msgid "Use registers r2 and r5."
+msgid "Warn about USE statements that have no ONLY qualifier."
 msgstr ""
 
-#: config/v850/v850.opt:33
+#: fortran/lang.opt:310
 #, no-c-format
-msgid "Use 4 byte entries in switch tables."
+msgid "Warn that -fno-automatic may break recursion."
 msgstr ""
 
-#: config/v850/v850.opt:37
+#: fortran/lang.opt:318
 #, no-c-format
-msgid "Enable backend debugging."
+msgid "Warn about real-literal-constants with 'q' exponent-letter."
 msgstr ""
 
-#: config/v850/v850.opt:41
+#: fortran/lang.opt:322
 #, no-c-format
-msgid "Do not use the callt instruction (default)."
+msgid "Warn when a left-hand-side array variable is reallocated."
 msgstr ""
 
-#: config/v850/v850.opt:45
+#: fortran/lang.opt:326
 #, no-c-format
-msgid "Reuse r30 on a per function basis."
+msgid "Warn when a left-hand-side variable is reallocated."
 msgstr ""
 
-#: config/v850/v850.opt:52
+#: fortran/lang.opt:330
 #, no-c-format
-msgid "Prohibit PC relative function calls."
+msgid "Warn if the pointer in a pointer assignment might outlive its target."
 msgstr ""
 
-#: config/v850/v850.opt:56
+#: fortran/lang.opt:338
 #, no-c-format
-msgid "Use stubs for function prologues."
+msgid "Warn about \"suspicious\" constructs."
 msgstr ""
 
-#: config/v850/v850.opt:60
+#: fortran/lang.opt:342
 #, no-c-format
-msgid "Set the max size of data eligible for the SDA area."
+msgid "Permit nonconforming uses of the tab character."
 msgstr ""
 
-#: config/v850/v850.opt:67
+#: fortran/lang.opt:346
 #, no-c-format
-msgid "Enable the use of the short load instructions."
+msgid "Warn about an invalid DO loop."
 msgstr ""
 
-#: config/v850/v850.opt:71
+#: fortran/lang.opt:350
 #, no-c-format
-msgid "Same as: -mep -mprolog-function."
+msgid "Warn about underflow of numerical constant expressions."
 msgstr ""
 
-#: config/v850/v850.opt:75
+#: fortran/lang.opt:358
 #, no-c-format
-msgid "Set the max size of data eligible for the TDA area."
+msgid "Warn if a user-procedure has the same name as an intrinsic."
 msgstr ""
 
-#: config/v850/v850.opt:82
+#: fortran/lang.opt:366
 #, no-c-format
-msgid "Do not enforce strict alignment."
+msgid "Warn about unused dummy arguments."
 msgstr ""
 
-#: config/v850/v850.opt:86
+#: fortran/lang.opt:370
 #, no-c-format
-msgid ""
-"Put jump tables for switch statements into the .data section rather than "
-"the .code section."
+msgid "Warn about zero-trip DO loops."
 msgstr ""
 
-#: config/v850/v850.opt:93
+#: fortran/lang.opt:374
 #, no-c-format
-msgid "Compile for the v850 processor."
+msgid "Enable preprocessing."
 msgstr ""
 
-#: config/v850/v850.opt:97
+#: fortran/lang.opt:382
 #, no-c-format
-msgid "Compile for the v850e processor."
+msgid "Disable preprocessing."
 msgstr ""
 
-#: config/v850/v850.opt:101
+#: fortran/lang.opt:390
 #, no-c-format
-msgid "Compile for the v850e1 processor."
+msgid "Accept argument mismatches in procedure calls."
 msgstr ""
 
-#: config/v850/v850.opt:105
+#: fortran/lang.opt:394
 #, no-c-format
-msgid "Compile for the v850es variant of the v850e1."
+msgid "Eliminate multiple function invocations also for impure functions."
 msgstr ""
 
-#: config/v850/v850.opt:109
+#: fortran/lang.opt:398
 #, no-c-format
-msgid "Compile for the v850e2 processor."
+msgid "Enable alignment of COMMON blocks."
 msgstr ""
 
-#: config/v850/v850.opt:113
+#: fortran/lang.opt:402
 #, no-c-format
-msgid "Compile for the v850e2v3 processor."
+msgid ""
+"All intrinsics procedures are available regardless of selected standard."
 msgstr ""
 
-#: config/v850/v850.opt:117
+#: fortran/lang.opt:406
 #, no-c-format
-msgid "Compile for the v850e3v5 processor."
+msgid ""
+"Allow a BOZ literal constant to appear in an invalid context and with X "
+"instead of Z."
 msgstr ""
 
-#: config/v850/v850.opt:124
+#: fortran/lang.opt:414
 #, no-c-format
-msgid "Enable v850e3v5 loop instructions."
+msgid ""
+"Do not treat local variables and COMMON blocks as if they were named in SAVE "
+"statements."
 msgstr ""
 
-#: config/v850/v850.opt:128
+#: fortran/lang.opt:418
 #, no-c-format
-msgid "Set the max size of data eligible for the ZDA area."
+msgid "Specify that backslash in string introduces an escape character."
 msgstr ""
 
-#: config/v850/v850.opt:135
+#: fortran/lang.opt:422
 #, no-c-format
-msgid "Enable relaxing in the assembler."
+msgid "Produce a backtrace when a runtime error is encountered."
 msgstr ""
 
-#: config/v850/v850.opt:139
+#: fortran/lang.opt:426
 #, no-c-format
-msgid "Prohibit PC relative jumps."
+msgid ""
+"-fblas-matmul-limit=<n>\tSize of the smallest matrix for which matmul will "
+"use BLAS."
 msgstr ""
 
-#: config/v850/v850.opt:143
+#: fortran/lang.opt:437
 #, no-c-format
-msgid "Inhibit the use of hardware floating point instructions."
+msgid ""
+"Produce a warning at runtime if a array temporary has been created for a "
+"procedure argument."
 msgstr ""
 
-#: config/v850/v850.opt:147
+#: fortran/lang.opt:441
 #, no-c-format
 msgid ""
-"Allow the use of hardware floating point instructions for V850E2V3 and up."
+"-fconvert=<big-endian|little-endian|native|swap|r16_ieee|r16_ibm>\tThe "
+"endianness used for unformatted files."
 msgstr ""
 
-#: config/v850/v850.opt:151
+#: fortran/lang.opt:466
 #, no-c-format
-msgid "Enable support for the RH850 ABI.  This is the default."
+msgid "Use the Cray Pointer extension."
 msgstr ""
 
-#: config/v850/v850.opt:155
+#: fortran/lang.opt:470
 #, no-c-format
-msgid "Enable support for the old GCC ABI."
+msgid "Generate C prototypes from BIND(C) declarations."
 msgstr ""
 
-#: config/v850/v850.opt:159
+#: fortran/lang.opt:474
 #, no-c-format
-msgid "Support alignments of up to 64-bits."
+msgid "Generate C prototypes from non-BIND(C) external procedure definitions."
 msgstr ""
 
-#: config/g.opt:27
+#: fortran/lang.opt:478
 #, no-c-format
-msgid ""
-"-G<number>\tPut global and static data smaller than <number> bytes into a "
-"special section (on some targets)."
+msgid "Ignore 'D' in column one in fixed form."
 msgstr ""
 
-#: config/lynx.opt:23
+#: fortran/lang.opt:482
 #, no-c-format
-msgid "Support legacy multi-threading."
+msgid "Treat lines with 'D' in column one as comments."
 msgstr ""
 
-#: config/lynx.opt:27
+#: fortran/lang.opt:486
 #, no-c-format
-msgid "Use shared libraries."
+msgid "Issue debug information for compiler-generated auxiliary variables."
 msgstr ""
 
-#: config/lynx.opt:31
+#: fortran/lang.opt:490
 #, no-c-format
-msgid "Support multi-threading."
+msgid "Enable all DEC language extensions."
 msgstr ""
 
-#: config/nvptx/nvptx-gen.opt:24
+#: fortran/lang.opt:494
 #, no-c-format
-msgid "Known PTX ISA target architectures (for use with the -misa= option):"
+msgid "Enable the use of blank format items in format strings."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:31
+#: fortran/lang.opt:498
 #, no-c-format
 msgid ""
-"Ignored, but preserved for backward compatibility.  Only 64-bit ABI is "
-"supported."
+"Enable the use of character literals in assignments and data statements for "
+"non-character variables."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:36
+#: fortran/lang.opt:503
 #, no-c-format
-msgid "Link in code for a __main kernel."
+msgid "Enable legacy parsing of INCLUDE as statement."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:40
+#: fortran/lang.opt:507
 #, no-c-format
-msgid "Optimize partition neutering."
+msgid "Enable default widths for i, f and g format specifiers."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:44
+#: fortran/lang.opt:511
 #, no-c-format
-msgid "Use custom stacks instead of local memory for automatic storage."
+msgid "Enable kind-specific variants of integer intrinsic functions."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:48
+#: fortran/lang.opt:515
 #, no-c-format
-msgid ""
-"Specify size of .local memory used for stack when the exact amount is not "
-"known."
+msgid "Enable legacy math intrinsics for compatibility."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:52
+#: fortran/lang.opt:519
 #, no-c-format
-msgid "Generate code that can keep local state uniform across all lanes."
+msgid "Enable support for DEC STRUCTURE/RECORD."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:56
+#: fortran/lang.opt:523
 #, no-c-format
-msgid ""
-"Generate code for OpenMP offloading: enables -msoft-stack and -muniform-simt."
+msgid "Enable DEC-style STATIC and AUTOMATIC attributes."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:60
+#: fortran/lang.opt:527
 #, no-c-format
-msgid "Specify the PTX ISA target architecture to use."
+msgid "Set the default double precision kind to an 8 byte wide type."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:64
+#: fortran/lang.opt:531
 #, no-c-format
-msgid "Alias:"
+msgid "Set the default integer kind to an 8 byte wide type."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:125
+#: fortran/lang.opt:535
 #, no-c-format
-msgid "Known PTX ISA versions (for use with the -mptx= option):"
+msgid "Set the default real kind to an 8 byte wide type."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:156
+#: fortran/lang.opt:539
 #, no-c-format
-msgid "Specify the PTX ISA version to use."
+msgid "Set the default real kind to an 10 byte wide type."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:160
+#: fortran/lang.opt:543
 #, no-c-format
-msgid "Initialize ptx registers."
+msgid "Set the default real kind to an 16 byte wide type."
 msgstr ""
 
-#: config/vxworks.opt:36
+#: fortran/lang.opt:547
 #, no-c-format
-msgid "Assume the VxWorks RTP environment."
+msgid "Allow dollar signs in entity names."
 msgstr ""
 
-#: config/vxworks.opt:43
+#: fortran/lang.opt:555
 #, no-c-format
-msgid "Assume the VxWorks vThreads environment."
+msgid "Display the code tree after parsing."
 msgstr ""
 
-#: config/avr/avr.opt:27
+#: fortran/lang.opt:559
 #, no-c-format
-msgid "Optimization. Use subroutines for function prologues and epilogues."
+msgid "Display the code tree after front end optimization."
 msgstr ""
 
-#: config/avr/avr.opt:31
+#: fortran/lang.opt:563
 #, no-c-format
-msgid "Use a startup code with a compact vector table."
+msgid "Display the global symbol table after parsing."
 msgstr ""
 
-#: config/avr/avr.opt:35
+#: fortran/lang.opt:567
 #, no-c-format
-msgid "-mmcu=<MCU>\tSelect the target MCU."
+msgid "Display the code tree after parsing; deprecated option."
 msgstr ""
 
-#: config/avr/avr.opt:39
+#: fortran/lang.opt:571
 #, no-c-format
 msgid ""
-"Optimization. Allow usage of __gcc_isr pseudo instructions in ISR prologues "
-"and epilogues."
+"Specify that an external BLAS library should be used for matmul calls on "
+"large-size arrays."
 msgstr ""
 
-#: config/avr/avr.opt:43
+#: fortran/lang.opt:575
 #, no-c-format
 msgid ""
-"This option is used internally. Set the number of 64 KiB flash segments."
+"Use an external BLAS library with 64-bit indexing for matmul on large-size "
+"arrays."
 msgstr ""
 
-#: config/avr/avr.opt:47
+#: fortran/lang.opt:579
 #, no-c-format
-msgid "Call main and exit (default)."
+msgid "Use f2c calling convention."
 msgstr ""
 
-#: config/avr/avr.opt:51
+#: fortran/lang.opt:583 cobol/lang.opt:352
 #, no-c-format
-msgid ""
-"This option is used internally. Indicate presence of a processor erratum.  "
-"Do not skip 32-bit instructions."
+msgid "Assume that the source file is fixed form."
 msgstr ""
 
-#: config/avr/avr.opt:55
+#: fortran/lang.opt:587
 #, no-c-format
-msgid ""
-"This option is used internally. Enable Read-Modify-Write (RMW) instructions "
-"support/use."
+msgid "Force creation of temporary to test infrequently-executed forall code."
 msgstr ""
 
-#: config/avr/avr.opt:66
+#: fortran/lang.opt:591
 #, no-c-format
-msgid "This option is on per default in order to work around PR118012."
+msgid "Interpret any INTEGER(4) as an INTEGER(8)."
 msgstr ""
 
-#: config/avr/avr.opt:70
+#: fortran/lang.opt:595 fortran/lang.opt:599
 #, no-c-format
-msgid "Optimization. Allow to use nonzero_bits() in some insn conditions."
+msgid "Specify where to find the compiled intrinsic modules."
 msgstr ""
 
-#: config/avr/avr.opt:74
+#: fortran/lang.opt:603
 #, no-c-format
-msgid ""
-"This option is used internally for multilib generation and selection.  "
-"Assume RJMP / RCALL can target all program memory."
+msgid "Allow arbitrary character line width in fixed mode."
 msgstr ""
 
-#: config/avr/avr.opt:78
+#: fortran/lang.opt:607
 #, no-c-format
-msgid "Use an 8-bit 'int' type."
+msgid "-ffixed-line-length-<n>\tUse n as character line width in fixed mode."
 msgstr ""
 
-#: config/avr/avr.opt:82
+#: fortran/lang.opt:611
 #, no-c-format
-msgid "Change the stack pointer without disabling interrupts."
+msgid "Pad shorter fixed form lines to line width with spaces."
 msgstr ""
 
-#: config/avr/avr.opt:86
+#: fortran/lang.opt:615
 #, no-c-format
-msgid ""
-"-mbranch-cost=<cost>\tOptimization. Set the branch costs for conditional "
-"branch instructions.  Reasonable values are small, non-negative integers.  "
-"The default branch cost is 0."
+msgid "-ffpe-trap=[...]\tStop on following floating point exceptions."
 msgstr ""
 
-#: config/avr/avr.opt:90
+#: fortran/lang.opt:619
 #, no-c-format
-msgid "Optimization. Treat main as if it had attribute OS_task."
+msgid "-ffpe-summary=[...]\tPrint summary of floating point exceptions."
 msgstr ""
 
-#: config/avr/avr.opt:100
+#: fortran/lang.opt:623 cobol/lang.opt:356
 #, no-c-format
-msgid "Change only the low 8 bits of the stack pointer."
+msgid "Assume that the source file is free form."
 msgstr ""
 
-#: config/avr/avr.opt:104
+#: fortran/lang.opt:627
 #, no-c-format
-msgid "Optimization. Relax branches."
+msgid "Allow arbitrary character line width in free mode."
 msgstr ""
 
-#: config/avr/avr.opt:108
+#: fortran/lang.opt:631
 #, no-c-format
-msgid ""
-"Make the linker relaxation machine assume that a program counter wrap-around "
-"occurs."
+msgid "-ffree-line-length-<n>\tUse n as character line width in free mode."
 msgstr ""
 
-#: config/avr/avr.opt:112
+#: fortran/lang.opt:635
 #, no-c-format
-msgid ""
-"Optimization. Accumulate outgoing function arguments and acquire/release the "
-"needed stack space for outgoing function arguments in function prologue/"
-"epilogue.  Without this option, outgoing arguments are pushed before calling "
-"a function and popped afterwards.  This option can lead to reduced code size "
-"for functions that call many functions that get their arguments on the stack "
-"like, for example printf."
+msgid "Try to interchange loops if profitable."
 msgstr ""
 
-#: config/avr/avr.opt:116
+#: fortran/lang.opt:639
 #, no-c-format
-msgid ""
-"Optimization. Split shifts of 4-byte values into a byte shift and a residual "
-"bit shift."
+msgid "Enable front end optimization."
 msgstr ""
 
-#: config/avr/avr.opt:120
+#: fortran/lang.opt:643
 #, no-c-format
 msgid ""
-"Optimization. Split most of the load and store instructions into byte load "
-"and stores."
+"Specify that no implicit typing is allowed, unless overridden by explicit "
+"IMPLICIT statements."
 msgstr ""
 
-#: config/avr/avr.opt:124
+#: fortran/lang.opt:647
 #, no-c-format
 msgid ""
-"Optimization. When accessing RAM, use X as imposed by the hardware, i.e. "
-"just use pre-decrement, post-increment and indirect addressing with the X "
-"register.  Without this option, the compiler may assume that there is an "
-"addressing mode X+const similar to Y+const and Z+const and emit instructions "
-"to emulate such an addressing mode for X."
+"-finit-character=<n>\tInitialize local character variables to ASCII value n."
 msgstr ""
 
-#: config/avr/avr.opt:128
+#: fortran/lang.opt:651
 #, no-c-format
 msgid ""
-"This option is used internally. The device has the bitfield NVMCTRL_CTRLB."
-"FLMAP."
+"Initialize components of derived type variables according to other init "
+"flags."
 msgstr ""
 
-#: config/avr/avr.opt:132
+#: fortran/lang.opt:655
 #, no-c-format
-msgid "The device has the .rodata section located in the RAM area."
+msgid "-finit-integer=<n>\tInitialize local integer variables to n."
 msgstr ""
 
-#: config/avr/avr.opt:137
+#: fortran/lang.opt:659
 #, no-c-format
-msgid ""
-"This option is used internally for multilib generation and selection. The "
-"device has no SPH special function register."
+msgid "Initialize local variables to zero (from g77)."
 msgstr ""
 
-#: config/avr/avr.opt:141
+#: fortran/lang.opt:663
 #, no-c-format
-msgid ""
-"Optimization. Split register additions from load/store instructions. Most "
-"useful on Reduced Tiny."
+msgid "-finit-logical=<true|false>\tInitialize local logical variables."
 msgstr ""
 
-#: config/avr/avr.opt:145
+#: fortran/lang.opt:667
 #, no-c-format
-msgid ""
-"-mfuse-add=<0,2>\tOptimization. Split register additions from load/store "
-"instructions. Most useful on Reduced Tiny."
+msgid "-finit-real=<zero|snan|nan|inf|-inf>\tInitialize local real variables."
 msgstr ""
 
-#: config/avr/avr.opt:149
+#: fortran/lang.opt:689
 #, no-c-format
-msgid "Warn if the address space of an address is changed."
+msgid "-finline-arg-packing\tPerform argument packing inline."
 msgstr ""
 
-#: config/avr/avr.opt:153
+#: fortran/lang.opt:699
 #, no-c-format
 msgid ""
-"Warn if the ISR is misspelled, i.e. without __vector prefix. Enabled by "
-"default."
+"Enable generation of inline code instead of calls to functions from the "
+"library to implement intrinsics."
 msgstr ""
 
-#: config/avr/avr.opt:157
+#: fortran/lang.opt:720
 #, no-c-format
 msgid ""
-"Allow to use truncation instead of rounding towards zero for fractional "
-"fixed-point types."
+"-finline-matmul-limit=<n>\tSpecify the size of the largest matrix for which "
+"matmul will be inlined."
 msgstr ""
 
-#: config/avr/avr.opt:161
+#: fortran/lang.opt:724
 #, no-c-format
-msgid "Optimization. Run a post-reload pass that tweaks move instructions."
+msgid ""
+"-fmax-array-constructor=<n>\tMaximum number of objects in an array "
+"constructor."
 msgstr ""
 
-#: config/avr/avr.opt:165
+#: fortran/lang.opt:728
 #, no-c-format
-msgid ""
-"-mfuse-move=<0,23>\tOptimization. Run a post-reload pass that tweaks move "
-"instructions."
+msgid "-fmax-identifier-length=<n>\tMaximum identifier length."
 msgstr ""
 
-#: config/avr/avr.opt:169
+#: fortran/lang.opt:732
+#, no-c-format
+msgid "-fmax-subrecord-length=<n>\tMaximum length for subrecords."
+msgstr ""
+
+#: fortran/lang.opt:736
 #, no-c-format
 msgid ""
-"Assume that all data in static storage can be accessed by LDS / STS "
-"instructions.  This option is only useful for reduced Tiny devices like "
-"ATtiny40."
+"-fmax-stack-var-size=<n>\tSize in bytes of the largest array that will be "
+"put on the stack."
 msgstr ""
 
-#: config/avr/avr.opt:173
+#: fortran/lang.opt:740
 #, no-c-format
-msgid "-mdouble=<BITS>\tUse <BITS> bits wide double type."
+msgid "Put all local arrays on stack."
 msgstr ""
 
-#: config/avr/avr.opt:177
+#: fortran/lang.opt:744
 #, no-c-format
-msgid "-mlong-double=<BITS>\tUse <BITS> bits wide long double type."
+msgid "Set default accessibility of module entities to PRIVATE."
 msgstr ""
 
-#: config/avr/avr.opt:181
+#: fortran/lang.opt:764
 #, no-c-format
-msgid "Do not link against the device-specific library lib<MCU>.a."
+msgid "Handle OpenMP allocators for allocatables and pointers."
 msgstr ""
 
-#: config/avr/avr.opt:185
+#: fortran/lang.opt:768
 #, no-c-format
-msgid "Do not use the device-specific specs file device-specs/specs-<MCU>."
+msgid "Try to lay out derived types as compactly as possible."
 msgstr ""
 
-#: config/avr/avr.opt:189
+#: fortran/lang.opt:776
 #, no-c-format
-msgid "Available BITS selections:"
+msgid "Protect parentheses in expressions."
 msgstr ""
 
-#: config/m32r/m32r.opt:34
+#: fortran/lang.opt:780
 #, no-c-format
-msgid "Compile for the m32rx."
+msgid ""
+"Path to header file that should be pre-included before each compilation unit."
 msgstr ""
 
-#: config/m32r/m32r.opt:38
+#: fortran/lang.opt:784
 #, no-c-format
-msgid "Compile for the m32r2."
+msgid "Enable range checking during compilation."
 msgstr ""
 
-#: config/m32r/m32r.opt:42
+#: fortran/lang.opt:788
 #, no-c-format
-msgid "Compile for the m32r."
+msgid "Interpret any REAL(4) as a REAL(8)."
 msgstr ""
 
-#: config/m32r/m32r.opt:46
+#: fortran/lang.opt:792
 #, no-c-format
-msgid "Align all loops to 32 byte boundary."
+msgid "Interpret any REAL(4) as a REAL(10)."
 msgstr ""
 
-#: config/m32r/m32r.opt:50
+#: fortran/lang.opt:796
 #, no-c-format
-msgid "Prefer branches over conditional execution."
+msgid "Interpret any REAL(4) as a REAL(16)."
 msgstr ""
 
-#: config/m32r/m32r.opt:54
+#: fortran/lang.opt:800
 #, no-c-format
-msgid "Give branches their default cost."
+msgid "Interpret any REAL(8) as a REAL(4)."
 msgstr ""
 
-#: config/m32r/m32r.opt:58
+#: fortran/lang.opt:804
 #, no-c-format
-msgid "Display compile time statistics."
+msgid "Interpret any REAL(8) as a REAL(10)."
 msgstr ""
 
-#: config/m32r/m32r.opt:62
+#: fortran/lang.opt:808
 #, no-c-format
-msgid "Specify cache flush function."
+msgid "Interpret any REAL(8) as a REAL(16)."
 msgstr ""
 
-#: config/m32r/m32r.opt:66
+#: fortran/lang.opt:812
 #, no-c-format
-msgid "Specify cache flush trap number."
+msgid "Reallocate the LHS in assignments."
 msgstr ""
 
-#: config/m32r/m32r.opt:70
+#: fortran/lang.opt:816
 #, no-c-format
-msgid "Only issue one instruction per cycle."
+msgid "Use a 4-byte record marker for unformatted files."
 msgstr ""
 
-#: config/m32r/m32r.opt:74
+#: fortran/lang.opt:820
 #, no-c-format
-msgid "Allow two instructions to be issued per cycle."
+msgid "Use an 8-byte record marker for unformatted files."
 msgstr ""
 
-#: config/m32r/m32r.opt:78
+#: fortran/lang.opt:824
 #, no-c-format
-msgid "Code size: small, medium or large."
+msgid "Allocate local variables on the stack to allow indirect recursion."
 msgstr ""
 
-#: config/m32r/m32r.opt:94
+#: fortran/lang.opt:828
 #, no-c-format
-msgid "Don't call any cache flush functions."
+msgid "Copy array sections into a contiguous block on procedure entry."
 msgstr ""
 
-#: config/m32r/m32r.opt:98
+#: fortran/lang.opt:832
 #, no-c-format
-msgid "Don't call any cache flush trap."
+msgid "Experimental unsigned numbers."
 msgstr ""
 
-#: config/m32r/m32r.opt:105
+#: fortran/lang.opt:836
 #, no-c-format
-msgid "Small data area: none, sdata, use."
+msgid ""
+"-fcoarray=<none|single|lib>\tSpecify which coarray parallelization should be "
+"used."
 msgstr ""
 
-#: config/s390/tpf.opt:23
+#: fortran/lang.opt:852 algol68/lang.opt:81
 #, no-c-format
-msgid "Enable TPF-OS tracing code."
+msgid "-fcheck=[...]\tSpecify which runtime checks are to be performed."
 msgstr ""
 
-#: config/s390/tpf.opt:27
+#: fortran/lang.opt:856
 #, no-c-format
-msgid "Set the trace check address for prologue tpf hook"
+msgid "Append a second underscore if the name already contains an underscore."
 msgstr ""
 
-#: config/s390/tpf.opt:31
+#: fortran/lang.opt:864
 #, no-c-format
-msgid "Set the trace jump address for prologue tpf hook"
+msgid "Apply negative sign to zero values."
 msgstr ""
 
-#: config/s390/tpf.opt:35
+#: fortran/lang.opt:871
 #, no-c-format
-msgid "Set the trace check address for epilogue tpf hook"
+msgid ""
+"Disallow tail call optimization when a calling routine may have omitted "
+"character lengths."
 msgstr ""
 
-#: config/s390/tpf.opt:39
+#: fortran/lang.opt:875
 #, no-c-format
-msgid "Set the trace jump address for epilogue tpf hook"
+msgid "Append underscores to externally visible names."
 msgstr ""
 
-#: config/s390/tpf.opt:43
+#: fortran/lang.opt:919
 #, no-c-format
-msgid ""
-"Set the prologue and epilogue hook addresses to "
-"TPF_TRACE_PROLOGUE_SKIP_TARGET and TPF_TRACE_EPILOGUE_SKIP_TARGET. "
-"Equivalent to using -mtpf-trace-hook-prologue-"
-"target=TPF_TRACE_PROLOGUE_SKIP_TARGET and -mtpf-trace-hook-epilogue-"
-"target=TPF_TRACE_EPILOGUE_SKIP_TARGET"
+msgid "Statically link the GNU Fortran helper library (libgfortran)."
 msgstr ""
 
-#: config/s390/tpf.opt:47
+#: fortran/lang.opt:923
 #, no-c-format
-msgid "Specify main object for TPF-OS."
+msgid "Statically link the GCC Quad-Precision Math Library (libquadmath)."
 msgstr ""
 
-#: config/s390/s390.opt:48
+#: fortran/lang.opt:927
 #, no-c-format
-msgid "31 bit ABI."
+msgid "Conform to the ISO Fortran 2003 standard."
 msgstr ""
 
-#: config/s390/s390.opt:52
+#: fortran/lang.opt:931
 #, no-c-format
-msgid "64 bit ABI."
+msgid "Conform to the ISO Fortran 2008 standard."
 msgstr ""
 
-#: config/s390/s390.opt:135
+#: fortran/lang.opt:935
 #, no-c-format
-msgid "Maintain backchain pointer."
+msgid "Conform to the ISO Fortran 2008 standard including TS 29113."
 msgstr ""
 
-#: config/s390/s390.opt:139
+#: fortran/lang.opt:939
 #, no-c-format
-msgid "Additional debug prints."
+msgid "Conform to the ISO Fortran 2018 standard."
 msgstr ""
 
-#: config/s390/s390.opt:143
+#: fortran/lang.opt:943
 #, no-c-format
-msgid "ESA/390 architecture."
+msgid "Conform to the ISO Fortran 2023 standard."
 msgstr ""
 
-#: config/s390/s390.opt:147
+#: fortran/lang.opt:947
 #, no-c-format
-msgid "Enable decimal floating point hardware support."
+msgid "Enable experimental Fortran 202y features."
 msgstr ""
 
-#: config/s390/s390.opt:151
+#: fortran/lang.opt:951
 #, no-c-format
-msgid "Enable hardware floating point."
+msgid "Conform to the ISO Fortran 95 standard."
 msgstr ""
 
-#: config/s390/s390.opt:155
+#: fortran/lang.opt:955
 #, no-c-format
-msgid ""
-"Takes two non-negative integer numbers separated by a comma. Prepend the "
-"function label with the number of two-byte Nop instructions indicated by the "
-"first.  Append Nop instructions covering the number of halfwords indicated "
-"by the second after the label.  Nop instructions of the largest possible "
-"size are used (six, four or two bytes), beginning with the largest possible "
-"size.  Using 0 for both values disables hotpatching."
+msgid "Conform to nothing in particular."
 msgstr ""
 
-#: config/s390/s390.opt:173
+#: fortran/lang.opt:959
 #, no-c-format
-msgid "Use hardware transactional execution instructions."
+msgid "Accept extensions to support legacy code."
 msgstr ""
 
-#: config/s390/s390.opt:177
+#: go/lang.opt:42
 #, no-c-format
-msgid "Use hardware vector facility instructions and enable the vector ABI."
+msgid "-fgo-c-header=<file>\tWrite Go struct definitions to file as C code."
 msgstr ""
 
-#: config/s390/s390.opt:181
+#: go/lang.opt:46
 #, no-c-format
-msgid "Use packed stack layout."
+msgid "Add explicit checks for division by zero."
 msgstr ""
 
-#: config/s390/s390.opt:185
+#: go/lang.opt:50
 #, no-c-format
-msgid "Use bras for executable < 64k."
+msgid "Add explicit checks for division overflow in INT_MIN / -1."
 msgstr ""
 
-#: config/s390/s390.opt:189
+#: go/lang.opt:54
 #, no-c-format
-msgid "Disable hardware floating point."
+msgid "Apply special rules for compiling runtime package."
 msgstr ""
 
-#: config/s390/s390.opt:193
+#: go/lang.opt:58
 #, no-c-format
-msgid ""
-"Set the max. number of bytes which has to be left to stack size before a "
-"trap instruction is triggered."
+msgid "-fgo-dump-<type>\tDump Go frontend internal information."
 msgstr ""
 
-#: config/s390/s390.opt:197
+#: go/lang.opt:62
 #, no-c-format
-msgid "Switches off the -mstack-guard= option."
+msgid "-fgo-embedcfg=<file>\tList embedded files via go:embed."
 msgstr ""
 
-#: config/s390/s390.opt:201
+#: go/lang.opt:66
 #, no-c-format
-msgid ""
-"Emit extra code in the function prologue in order to trap if the stack size "
-"exceeds the given limit."
+msgid "-fgo-importcfg=<file>\tProvide file that tells where to find imports."
 msgstr ""
 
-#: config/s390/s390.opt:205
+#: go/lang.opt:70
 #, no-c-format
-msgid "Switches off the -mstack-size= option."
+msgid "-fgo-optimize-<type>\tTurn on optimization passes in the frontend."
 msgstr ""
 
-#: config/s390/s390.opt:213
+#: go/lang.opt:74
 #, no-c-format
-msgid "Use the mvcle instruction for block moves."
+msgid "-fgo-pkgpath=<string>\tSet Go package path."
 msgstr ""
 
-#: config/s390/s390.opt:217
+#: go/lang.opt:78
 #, no-c-format
 msgid ""
-"Enable the z vector language extension providing the context-sensitive "
-"vector macro and enable the Altivec-style builtins in vecintrin.h."
+"-fgo-prefix=<string>\tSet package-specific prefix for exported Go names."
 msgstr ""
 
-#: config/s390/s390.opt:222
+#: go/lang.opt:82
 #, no-c-format
-msgid "Warn if a function uses alloca or creates an array with dynamic size."
+msgid ""
+"-fgo-relative-import-path=<path>\tTreat a relative import as relative to "
+"path."
 msgstr ""
 
-#: config/s390/s390.opt:226
+#: go/lang.opt:86
 #, no-c-format
-msgid "Warn if a single function's framesize exceeds the given framesize."
+msgid "Functions which return values must end with return statements."
 msgstr ""
 
-#: config/s390/s390.opt:230
+#: go/lang.opt:90
 #, no-c-format
-msgid "z/Architecture."
+msgid ""
+"Emit debugging information related to the escape analysis pass when run with "
+"-fgo-optimize-allocs."
 msgstr ""
 
-#: config/s390/s390.opt:234
+#: go/lang.opt:94
 #, no-c-format
-msgid ""
-"Set the branch costs for conditional branch instructions.  Reasonable values "
-"are small, non-negative integers.  The default branch cost is 1."
+msgid "-fgo-debug-escape-hash=<string>\tHash value to debug escape analysis."
 msgstr ""
 
-#: config/s390/s390.opt:240 config/arm/arm.opt:178
+#: go/lang.opt:98
 #, no-c-format
-msgid "Assume data segments are relative to text segment."
+msgid "Emit optimization diagnostics."
 msgstr ""
 
-#: config/s390/s390.opt:245
+#: params.opt:27
 #, no-c-format
 msgid ""
-"Wrap all indirect branches into execute in order to disable branch "
-"prediction."
+"Loops iterating at least selected number of iterations get loop alignment."
 msgstr ""
 
-#: config/s390/s390.opt:250
+#: params.opt:31
 #, no-c-format
 msgid ""
-"Wrap indirect table jumps and computed gotos into execute in order to "
-"disable branch prediction.  Using thunk or thunk-extern with this option "
-"requires the thunks to be considered signal handlers to order to generate "
-"correct CFI.  For environments where unwinding (e.g. for exceptions) is "
-"required please use thunk-inline instead."
+"Select fraction of the maximal frequency of executions of basic block in "
+"function given basic block get alignment."
 msgstr ""
 
-#: config/s390/s390.opt:258
+#: params.opt:35
 #, no-c-format
-msgid ""
-"Wrap all indirect calls into execute in order to disable branch prediction."
+msgid "Enable asan globals protection."
 msgstr ""
 
-#: config/s390/s390.opt:262
+#: params.opt:39
 #, no-c-format
-msgid ""
-"Wrap all indirect return branches into execute in order to disable branch "
-"prediction."
+msgid "Enable asan allocas/VLAs protection."
 msgstr ""
 
-#: config/s390/s390.opt:267
+#: params.opt:43
 #, no-c-format
-msgid ""
-"Wrap indirect return branches into execute in order to disable branch "
-"prediction. This affects only branches where the return address is going to "
-"be restored from memory."
+msgid "Enable asan load operations protection."
 msgstr ""
 
-#: config/s390/s390.opt:273
+#: params.opt:47
 #, no-c-format
-msgid ""
-"Wrap indirect return branches into execute in order to disable branch "
-"prediction. This affects only branches where the return address doesn't need "
-"to be restored from memory."
+msgid "Enable asan store operations protection."
 msgstr ""
 
-#: config/s390/s390.opt:295
+#: params.opt:51
 #, no-c-format
 msgid ""
-"Generate sections .s390_indirect_jump, .s390_indirect_call, ."
-"s390_return_reg, and .s390_return_mem to contain the indirect branch "
-"locations which have been patched as part of using one of the -mindirect-"
-"branch* or -mfunction-return* options.  The sections consist of an array of "
-"32 bit elements. Each entry holds the offset from the entry to the patched "
-"location."
+"Use callbacks instead of inline code if number of accesses in function "
+"becomes greater or equal to this number."
 msgstr ""
 
-#: config/s390/s390.opt:304
+#: params.opt:55
 #, no-c-format
 msgid ""
-"Emit profiling counter call at function entry before prologue. The compiled "
-"code will require a 64-bit CPU and glibc 2.29 or newer to run."
+"Prefix calls to memcpy, memset and memmove with __asan_ or __hwasan_ for "
+"-fsanitize=kernel-address or -fsanitize=kernel-hwaddress."
 msgstr ""
 
-#: config/s390/s390.opt:309
+#: params.opt:59
 #, no-c-format
-msgid "Generate __mcount_loc section with all _mcount and __fentry__ calls."
+msgid "Enable asan builtin functions protection."
 msgstr ""
 
-#: config/s390/s390.opt:318
+#: params.opt:63
 #, no-c-format
-msgid ""
-"Emit fused multiply-add instructions for long doubles in vector registers "
-"(wfmaxb, wfmsxb, wfnmaxb, wfnmsxb).  Reassociation pass does not handle "
-"fused multiply-adds, therefore code generated by the middle-end is prone to "
-"having long fused multiply-add chains.  This is not pipeline-friendly, and "
-"the default behavior is to emit separate multiplication and addition "
-"instructions for long doubles in vector registers, because measurements show "
-"that this improves performance.  This option allows overriding it for "
-"testing purposes."
+msgid "Enable asan stack protection."
 msgstr ""
 
-#: config/s390/s390.opt:333
+#: params.opt:67
 #, no-c-format
-msgid "Store all argument registers on the stack."
+msgid "Enable asan detection of use-after-return bugs."
 msgstr ""
 
-#: config/s390/s390.opt:337
+#: params.opt:71
 #, no-c-format
-msgid ""
-"Assume external symbols, whose natural alignment would be 1, to be "
-"potentially unaligned.  By default all symbols without explicit alignment "
-"are assumed to reside on a 2 byte boundary as mandated by the IBM Z ABI."
+msgid "Build basic block profile using auto profile."
 msgstr ""
 
-#: config/rl78/rl78.opt:27 config/rx/elf.opt:26 config/csky/csky.opt:198
+#: params.opt:75
 #, no-c-format
-msgid "Use the simulator runtime."
+msgid "Enable only function reordering with auto-profile."
 msgstr ""
 
-#: config/rl78/rl78.opt:31
+#: params.opt:79
 #, no-c-format
 msgid ""
-"Selects the type of hardware multiplication and division to use (none/g13/"
-"g14)."
+"Whether the scheduling description is mostly a cycle-accurate model of the "
+"target processor and is likely to be spill aggressively to fill any pipeline "
+"bubbles."
 msgstr ""
 
-#: config/rl78/rl78.opt:50
+#: params.opt:83
 #, no-c-format
-msgid "Use all registers, reserving none for interrupt handlers."
+msgid ""
+"Enable hwasan instrumentation of statically-sized stack-allocated variables."
 msgstr ""
 
-#: config/rl78/rl78.opt:54
+#: params.opt:87
 #, no-c-format
-msgid "Enable assembler and linker relaxation.  Enabled by default at -Os."
+msgid "Use random base tag for each frame, as opposed to base always zero."
 msgstr ""
 
-#: config/rl78/rl78.opt:58
+#: params.opt:91
 #, no-c-format
-msgid ""
-"Selects the type of RL78 core being targeted (g10/g13/g14).  The default is "
-"the G14.  If set, also selects the hardware multiply support to be used."
+msgid "Enable hwasan instrumentation of allocas/VLAs."
 msgstr ""
 
-#: config/rl78/rl78.opt:77
+#: params.opt:95
 #, no-c-format
-msgid "Alias for -mcpu=g10."
+msgid "Enable hwasan instrumentation of load operations."
 msgstr ""
 
-#: config/rl78/rl78.opt:81
+#: params.opt:99
 #, no-c-format
-msgid "Alias for -mcpu=g13."
+msgid "Enable hwasan instrumentation of store operations."
 msgstr ""
 
-#: config/rl78/rl78.opt:85 config/rl78/rl78.opt:89
+#: params.opt:103
 #, no-c-format
-msgid "Alias for -mcpu=g14."
+msgid "Enable hwasan instrumentation of builtin functions."
 msgstr ""
 
-#: config/rl78/rl78.opt:93
+#: params.opt:107
 #, no-c-format
 msgid ""
-"Assume ES is zero throughout program execution, use ES: for read-only data."
+"When sanitizing using MTE instructions, add checks for all stack allocas."
 msgstr ""
 
-#: config/rl78/rl78.opt:97
+#: params.opt:111
 #, no-c-format
-msgid "Stores the MDUC registers in interrupt handlers for G13 target."
+msgid "When sanitizing using MTE instructions, include builtin functions."
 msgstr ""
 
-#: config/stormy16/stormy16.opt:24
+#: params.opt:115
 #, no-c-format
-msgid "Provide libraries for the simulator."
+msgid "Average number of iterations of a loop."
 msgstr ""
 
-#: config/arm/arm-tables.opt:25
+#: params.opt:119
 #, no-c-format
-msgid "Known ARM CPUs (for use with the -mcpu= and -mtune= options):"
+msgid "Maximum number of bits for which we avoid creating FMAs."
 msgstr ""
 
-#: config/arm/arm-tables.opt:305
+#: params.opt:123
 #, no-c-format
-msgid "Known ARM architectures (for use with the -march= option):"
+msgid ""
+"Set the estimated probability in percentage for builtin expect. The default "
+"value is 90% probability."
 msgstr ""
 
-#: config/arm/arm-tables.opt:411
+#: params.opt:127
 #, no-c-format
-msgid "Known ARM FPUs (for use with the -mfpu= option):"
+msgid ""
+"The maximum length of a constant string for a builtin string comparison call "
+"eligible for inlining. The default value is 3."
 msgstr ""
 
-#: config/arm/arm.opt:35
+#: params.opt:131
 #, no-c-format
-msgid "TLS dialect to use:"
+msgid ""
+"The smallest number of different values for which it is best to use a jump-"
+"table instead of a tree of conditional branches.  If 0, use the default for "
+"the machine."
 msgstr ""
 
-#: config/arm/arm.opt:45
+#: params.opt:135
 #, no-c-format
-msgid "Specify an ABI."
+msgid ""
+"Probability that COMDAT function is shared with a different compilation unit."
 msgstr ""
 
-#: config/arm/arm.opt:49
+#: params.opt:139
 #, no-c-format
-msgid "Known ARM ABIs (for use with the -mabi= option):"
+msgid ""
+"Maximum number of namespaces to search for alternatives when name lookup "
+"fails."
 msgstr ""
 
-#: config/arm/arm.opt:68
+#: params.opt:143
 #, no-c-format
-msgid "Generate a call to abort if a noreturn function returns."
+msgid "Maximum number of queries into the alias oracle per store."
 msgstr ""
 
-#: config/arm/arm.opt:75
+#: params.opt:147
 #, no-c-format
-msgid "Generate APCS conformant stack frames."
+msgid ""
+"Maximum size (in bytes) of objects tracked bytewise by dead store "
+"elimination."
 msgstr ""
 
-#: config/arm/arm.opt:79
+#: params.opt:151
 #, no-c-format
-msgid "Generate re-entrant, PIC code."
+msgid ""
+"Maximal estimated growth of function body caused by early inlining of single "
+"call."
 msgstr ""
 
-#: config/arm/arm.opt:101
+#: params.opt:155
 #, no-c-format
-msgid "Generate code in 32 bit ARM state."
+msgid "Maximum number of files in the file cache."
 msgstr ""
 
-#: config/arm/arm.opt:109
+#: params.opt:159
 #, no-c-format
-msgid "Thumb: Assume non-static functions may be called from ARM code."
+msgid ""
+"Maximum number of lines to index into file cache. When 0 this is "
+"automatically sized."
 msgstr ""
 
-#: config/arm/arm.opt:113
+#: params.opt:163
 #, no-c-format
-msgid "Thumb: Assume function pointers may go to non-Thumb aware code."
+msgid ""
+"Scale factor to apply to the number of statements in a threading path "
+"crossing a loop back edge when comparing to max-jump-thread-duplication-"
+"stmts."
 msgstr ""
 
-#: config/arm/arm.opt:121 config/csky/csky.opt:73
+#: params.opt:167
 #, no-c-format
-msgid "Specify if floating point hardware should be used."
+msgid ""
+"Whether the target fully pipelines FMA instructions.  If non-zero, "
+"reassociation considers the benefit of parallelizing FMA's multiplication "
+"part and addition part, assuming FMUL and FMA use the same units that can "
+"also do FADD."
 msgstr ""
 
-#: config/arm/arm.opt:125
+#: params.opt:174
 #, no-c-format
 msgid ""
-"Specify that the compiler should target secure code as per ARMv8-M Security "
-"Extensions."
+"The threshold ratio of critical edges execution count that permit performing "
+"redundancy elimination after reload."
 msgstr ""
 
-#: config/arm/arm.opt:129 config/csky/csky.opt:77
+#: params.opt:178
 #, no-c-format
-msgid "Known floating-point ABIs (for use with the -mfloat-abi= option):"
+msgid ""
+"The threshold ratio for performing partial redundancy elimination after "
+"reload."
 msgstr ""
 
-#: config/arm/arm.opt:142
+#: params.opt:182
 #, no-c-format
-msgid "Switch ARM/Thumb modes on alternating functions for compiler testing."
+msgid ""
+"Scaling factor in calculation of maximum distance an expression can be moved "
+"by GCSE optimizations."
 msgstr ""
 
-#: config/arm/arm.opt:146
+#: params.opt:186
 #, no-c-format
-msgid "Specify the __fp16 floating-point format."
+msgid ""
+"Cost at which GCSE optimizations does not constrain the distance an "
+"expression can travel."
 msgstr ""
 
-#: config/arm/arm.opt:150
+#: params.opt:190
 #, no-c-format
-msgid "Known __fp16 formats (for use with the -mfp16-format= option):"
+msgid ""
+"Minimum heap expansion to trigger garbage collection, as a percentage of the "
+"total size of the heap."
 msgstr ""
 
-#: config/arm/arm.opt:163
+#: params.opt:194
 #, no-c-format
-msgid "Specify the name of the target floating point hardware/format."
+msgid "Minimum heap size before we start collecting garbage, in kilobytes."
 msgstr ""
 
-#: config/arm/arm.opt:174
+#: params.opt:198
 #, no-c-format
-msgid "Generate call insns as indirect calls, if necessary."
+msgid ""
+"The number of executions of a basic block which is considered hot. The "
+"parameter is used only in GIMPLE FE."
 msgstr ""
 
-#: config/arm/arm.opt:182
+#: params.opt:202
 #, no-c-format
-msgid "Specify the register to be used for PIC addressing."
+msgid "Whether codegen errors should be ICEs when -fchecking."
 msgstr ""
 
-#: config/arm/arm.opt:186
+#: params.opt:206
 #, no-c-format
-msgid "Store function names in object code."
+msgid "Maximum number of arrays per SCoP."
 msgstr ""
 
-#: config/arm/arm.opt:190
+#: params.opt:210
 #, no-c-format
-msgid "Permit scheduling of a function's prologue sequence."
+msgid "Maximum number of parameters in a SCoP."
 msgstr ""
 
-#: config/arm/arm.opt:194 config/rs6000/rs6000.opt:235
+#: params.opt:214
 #, no-c-format
-msgid "Do not load the PIC register in function prologues."
+msgid "Maximum number of blocks for -fharden-control-flow-redundancy."
 msgstr ""
 
-#: config/arm/arm.opt:201
+#: params.opt:218
 #, no-c-format
-msgid "Specify the minimum bit alignment of structures. (Deprecated)."
+msgid "Maximum number of blocks for in-line -fharden-control-flow-redundancy."
 msgstr ""
 
-#: config/arm/arm.opt:205
+#: params.opt:222
 #, no-c-format
-msgid "Generate code for Thumb state."
+msgid ""
+"The number of elements for which hash table verification is done for each "
+"searched element."
 msgstr ""
 
-#: config/arm/arm.opt:209
+#: params.opt:226
 #, no-c-format
-msgid "Support calls between Thumb and ARM instruction sets."
+msgid ""
+"The denominator n of fraction 1/n of the maximal execution count of a basic "
+"block in the entire program that a basic block needs to at least have in "
+"order to be considered hot (used in non-LTO mode)."
 msgstr ""
 
-#: config/arm/arm.opt:213
+#: params.opt:230
 #, no-c-format
-msgid "Specify thread local storage scheme."
+msgid ""
+"The number of most executed permilles of the profiled execution of the "
+"entire program to which the execution count of a basic block must be part of "
+"in order to be considered hot (used in LTO mode)."
 msgstr ""
 
-#: config/arm/arm.opt:217
+#: params.opt:234
 #, no-c-format
-msgid "Specify how to access the thread pointer."
+msgid ""
+"The denominator n of fraction 1/n of the execution frequency of the entry "
+"block of a function that a basic block of this function needs to at least "
+"have in order to be considered hot."
 msgstr ""
 
-#: config/arm/arm.opt:221
+#: params.opt:238
 #, no-c-format
-msgid "Valid arguments to -mtp=:"
+msgid ""
+"The scale (as a percentage) applied to inline-insns-single and auto limits "
+"when heuristics hints that inlining is very profitable."
 msgstr ""
 
-#: config/arm/arm.opt:243
+#: params.opt:242
 #, no-c-format
-msgid "Thumb: Generate (non-leaf) stack frames even if not needed."
+msgid ""
+"The minimal estimated speedup allowing inliner to ignore inline-insns-single "
+"and inline-insns-auto."
 msgstr ""
 
-#: config/arm/arm.opt:247
+#: params.opt:246
 #, no-c-format
-msgid "Thumb: Generate (leaf) stack frames even if not needed."
+msgid ""
+"How much can given compilation unit grow because of the inlining (as a "
+"percentage)."
 msgstr ""
 
-#: config/arm/arm.opt:251 config/mn10300/mn10300.opt:42
+#: params.opt:250
 #, no-c-format
-msgid "Tune code for the given processor."
+msgid "The upper bound for sharing integer constants."
 msgstr ""
 
-#: config/arm/arm.opt:255
+#: params.opt:254
 #, no-c-format
 msgid ""
-"Print CPU tuning information as comment in assembler file.  This is an "
-"option used only for regression testing of the compiler and not intended for "
-"ordinary use in compiling code."
+"Threshold ipa-cp opportunity evaluation that is still considered beneficial "
+"to clone."
 msgstr ""
 
-#: config/arm/arm.opt:266
+#: params.opt:258
 #, no-c-format
 msgid ""
-"Use Neon quad-word (rather than double-word) registers for vectorization."
+"Compile-time bonus IPA-CP assigns to candidates which make loop bounds or "
+"strides known."
 msgstr ""
 
-#: config/arm/arm.opt:270
+#: params.opt:262
 #, no-c-format
-msgid ""
-"Use Neon double-word (rather than quad-word) registers for vectorization."
+msgid "Maximum depth of recursive cloning for self-recursive function."
 msgstr ""
 
-#: config/arm/arm.opt:274
+#: params.opt:266
 #, no-c-format
 msgid ""
-"Enable more verbose RTX cost dumps during debug.  For GCC developers use "
-"only."
+"Recursive cloning only when the probability of call being executed exceeds "
+"the parameter."
 msgstr ""
 
-#: config/arm/arm.opt:278
+#: params.opt:270
 #, no-c-format
-msgid "Only generate absolute relocations on word sized values."
+msgid ""
+"When propagating IPA-CP effect estimates, multiply frequencies of recursive "
+"edges that bring back an unchanged value by this factor."
 msgstr ""
 
-#: config/arm/arm.opt:282
+#: params.opt:274
 #, no-c-format
-msgid "Generate IT blocks appropriate for ARMv8."
+msgid ""
+"Percentage penalty recursive functions receive when they are evaluated for "
+"cloning."
 msgstr ""
 
-#: config/arm/arm.opt:286
+#: params.opt:278
 #, no-c-format
 msgid ""
-"Avoid overlapping destination and address registers on LDRD instructions "
-"that may trigger Cortex-M3 errata."
+"Percentage penalty functions containing a single call to another function "
+"receive when they are evaluated for cloning."
 msgstr ""
 
-#: config/arm/arm.opt:291
+#: params.opt:282
 #, no-c-format
-msgid "Mitigate issues with VLLDM on some M-profile devices (CVE-2021-35465)."
+msgid ""
+"The number of times the interprocedural constant propagation traverses all "
+"functions to make cloning decisions."
 msgstr ""
 
-#: config/arm/arm.opt:295
+#: params.opt:286
 #, no-c-format
 msgid ""
-"Mitigate issues with AES instructions on Cortex-A57 and Cortex-A72 (Arm "
-"erratum #1742098)."
+"How much can given compilation unit grow because of the interprocedural "
+"constant propagation (as a percentage)."
+msgstr ""
+
+#: params.opt:290
+#, no-c-format
+msgid "The size of translation unit that IPA-CP pass considers large."
 msgstr ""
 
-#: config/arm/arm.opt:300
+#: params.opt:294
 #, no-c-format
 msgid ""
-"Mitigate issues with AES instructions on Cortex-A57 and Cortex-A72 (Arm "
-"erratum #1655431)."
+"Maximum size of a list of values associated with each parameter for "
+"interprocedural constant propagation."
 msgstr ""
 
-#: config/arm/arm.opt:305 config/nds32/nds32.opt:461 config/arc/arc.opt:495
+#: params.opt:298
 #, no-c-format
-msgid "Enable unaligned word and halfword accesses to packed data."
+msgid ""
+"Maximum number of statements visited during jump function offset discovery."
 msgstr ""
 
-#: config/arm/arm.opt:309
+#: params.opt:302
 #, no-c-format
-msgid "This option is deprecated and has no effect."
+msgid ""
+"Maximum number of statements that are visited by IPA formal parameter "
+"analysis based on alias analysis in any given function."
 msgstr ""
 
-#: config/arm/arm.opt:313
+#: params.opt:306
 #, no-c-format
-msgid "Assume loading data from flash is slower than fetching instructions."
+msgid ""
+"Maximum number of aggregate content items for a parameter in jump functions "
+"and lattices."
 msgstr ""
 
-#: config/arm/arm.opt:317
+#: params.opt:310
 #, no-c-format
-msgid "Assume unified syntax for inline assembly code."
+msgid ""
+"Maximum number of operations in a parameter expression that can be handled "
+"by IPA analysis."
 msgstr ""
 
-#: config/arm/arm.opt:321
+#: params.opt:314
 #, no-c-format
-msgid "Do not allow constant data to be placed in code sections."
+msgid ""
+"Maximum number of different predicates used to track properties of loops in "
+"IPA analysis."
 msgstr ""
 
-#: config/arm/arm.opt:325
+#: params.opt:318
 #, no-c-format
-msgid "When linking for big-endian targets, generate a BE8 format image."
+msgid ""
+"Maximal number of boundary endpoints of case ranges of switch statement used "
+"during IPA function summary generation."
 msgstr ""
 
-#: config/arm/arm.opt:329
+#: params.opt:322
 #, no-c-format
 msgid ""
-"When linking for big-endian targets, generate a legacy BE32 format image."
+"Minimum probability (as a percentage) of dereferencing of a function pointer "
+"parameter for it to be considered for replacement with simple values."
 msgstr ""
 
-#: config/arm/arm.opt:333 config/sh/sh.opt:195
+#: params.opt:326
 #, no-c-format
-msgid "Cost to assume for a branch insn."
+msgid ""
+"Maximum pieces that IPA-SRA tracks per formal parameter, as a consequence, "
+"also the maximum number of replacements of a formal parameter."
 msgstr ""
 
-#: config/arm/arm.opt:341
+#: params.opt:330
 #, no-c-format
-msgid "Generate code which uses the core registers only (r0-r14)."
+msgid ""
+"Maximum allowed growth of total size of new parameters that ipa-sra replaces "
+"a pointer to an aggregate with."
 msgstr ""
 
-#: config/arm/arm.opt:363
+#: params.opt:334
 #, no-c-format
 msgid ""
-"Use an immediate to offset from the TLS register. This option is for use "
-"with fstack-protector-guard=tls and not for use in user-land code."
+"Additional maximum allowed growth of total size of new parameters that ipa-"
+"sra replaces a pointer to an aggregate with, if it points to a local "
+"variable that the caller only writes to and passes it as an argument to "
+"functions."
 msgstr ""
 
-#: config/sparc/sparc.opt:30 config/sparc/sparc.opt:34
-#: config/visium/visium.opt:37
+#: params.opt:338
 #, no-c-format
-msgid "Use hardware FP."
+msgid ""
+"The number of registers in each class kept unused by loop invariant motion."
 msgstr ""
 
-#: config/sparc/sparc.opt:38 config/visium/visium.opt:41
+#: params.opt:342
 #, no-c-format
-msgid "Do not use hardware FP."
+msgid "Maximum size of conflict table in MB."
 msgstr ""
 
-#: config/sparc/sparc.opt:42
+#: params.opt:346
 #, no-c-format
-msgid "Use flat register window model."
+msgid ""
+"Approximate function insn number in 1K units triggering simple local RA."
 msgstr ""
 
-#: config/sparc/sparc.opt:46
+#: params.opt:350
 #, no-c-format
-msgid "Assume possible double misalignment."
+msgid "Maximum number of loops for regional RA."
 msgstr ""
 
-#: config/sparc/sparc.opt:50
+#: params.opt:354
 #, no-c-format
-msgid "Use ABI reserved registers."
+msgid ""
+"Control IRA to consider matching constraint (duplicated operand number) "
+"heavily in all available alternatives for preferred register class.  If it "
+"is set as zero, it means IRA only respects the matching constraint when it's "
+"in the only available alternative with an appropriate register class.  "
+"Otherwise, it means IRA checks all available alternatives for preferred "
+"register class even if it has found some choice with an appropriate register "
+"class and respect the found qualified matching constraint."
 msgstr ""
 
-#: config/sparc/sparc.opt:54
+#: params.opt:358
 #, no-c-format
-msgid "Use hardware quad FP instructions."
+msgid ""
+"If number of candidates in the set is smaller, we always try to remove "
+"unused induction variables during its optimization."
 msgstr ""
 
-#: config/sparc/sparc.opt:58
+#: params.opt:362
 #, no-c-format
-msgid "Do not use hardware quad fp instructions."
+msgid ""
+"Bound on number of candidates below that all candidates are considered in "
+"induction variable optimizations."
 msgstr ""
 
-#: config/sparc/sparc.opt:62
+#: params.opt:366
 #, no-c-format
-msgid "Compile for V8+ ABI."
+msgid ""
+"Bound on number of induction variable uses in loop optimized in IV "
+"optimizations."
 msgstr ""
 
-#: config/sparc/sparc.opt:66
+#: params.opt:370
 #, no-c-format
-msgid "Use UltraSPARC Visual Instruction Set version 1.0 extensions."
+msgid ""
+"The maximum code size growth ratio when expanding into a jump table (as a "
+"percentage).  The parameter is used when optimizing for size."
 msgstr ""
 
-#: config/sparc/sparc.opt:70
+#: params.opt:374
 #, no-c-format
-msgid "Use UltraSPARC Visual Instruction Set version 2.0 extensions."
+msgid ""
+"The maximum code size growth ratio when expanding into a jump table (as a "
+"percentage).  The parameter is used when optimizing for speed."
 msgstr ""
 
-#: config/sparc/sparc.opt:74
+#: params.opt:378
 #, no-c-format
-msgid "Use UltraSPARC Visual Instruction Set version 3.0 extensions."
+msgid "The size of L1 cache line."
 msgstr ""
 
-#: config/sparc/sparc.opt:78
+#: params.opt:382
 #, no-c-format
-msgid "Use additional VIS 3 instructions introduced in OSA2011."
+msgid ""
+"The minimum recommended offset between two concurrently-accessed objects to "
+"avoid additional performance degradation due to contention introduced by the "
+"implementation.  Typically the L1 cache line size, but can be larger to "
+"accommodate a variety of target processors with different cache line sizes. "
+"C++17 code might use this value in structure layout, but is strongly "
+"discouraged from doing so in public ABIs."
 msgstr ""
 
-#: config/sparc/sparc.opt:82
+#: params.opt:391
 #, no-c-format
-msgid "Use UltraSPARC Visual Instruction Set version 4.0 extensions."
+msgid ""
+"The maximum recommended size of contiguous memory occupied by two objects "
+"accessed with temporal locality by concurrent threads.  Typically the L1 "
+"cache line size, but can be smaller to accommodate a variety of target "
+"processors with different cache line sizes."
 msgstr ""
 
-#: config/sparc/sparc.opt:86
+#: params.opt:398
 #, no-c-format
-msgid "Use additional VIS 4 instructions introduced in OSA2017."
+msgid "The size of L1 cache."
 msgstr ""
 
-#: config/sparc/sparc.opt:90
+#: params.opt:402
 #, no-c-format
-msgid "Use UltraSPARC Compare-and-Branch extensions."
+msgid "The size of L2 cache."
 msgstr ""
 
-#: config/sparc/sparc.opt:94
+#: params.opt:406
 #, no-c-format
-msgid "Use UltraSPARC Fused Multiply-Add extensions."
+msgid "Maximal growth due to inlining of large function (as a percentage)."
 msgstr ""
 
-#: config/sparc/sparc.opt:98
+#: params.opt:410
 #, no-c-format
-msgid "Use Floating-point Multiply Single to Double (FsMULd) instruction."
+msgid "The size of function body to be considered large."
 msgstr ""
 
-#: config/sparc/sparc.opt:102
+#: params.opt:414
 #, no-c-format
-msgid "Use UltraSPARC Population-Count instruction."
+msgid "The size of stack frame to be considered large."
 msgstr ""
 
-#: config/sparc/sparc.opt:106
+#: params.opt:418
 #, no-c-format
-msgid "Use UltraSPARC Subtract-Extended-with-Carry instruction."
+msgid "Maximal stack frame growth due to inlining (as a percentage)."
 msgstr ""
 
-#: config/sparc/sparc.opt:110
+#: params.opt:422
 #, no-c-format
-msgid "Pointers are 64-bit."
+msgid "The size of translation unit to be considered large."
 msgstr ""
 
-#: config/sparc/sparc.opt:114
+#: params.opt:426
 #, no-c-format
-msgid "Pointers are 32-bit."
+msgid "Maximum number of concurrently open C++ module files when lazy loading."
 msgstr ""
 
-#: config/sparc/sparc.opt:118
+#: params.opt:430
 #, no-c-format
-msgid "Use 64-bit ABI."
+msgid ""
+"The minimum cost of an expensive expression in the loop invariant motion."
 msgstr ""
 
-#: config/sparc/sparc.opt:122
+#: params.opt:434
 #, no-c-format
-msgid "Use 32-bit ABI."
+msgid "True if a non-short-circuit operation is optimal."
 msgstr ""
 
-#: config/sparc/sparc.opt:126
+#: params.opt:438
 #, no-c-format
-msgid "Use stack bias."
+msgid "Size of tiles for loop blocking."
 msgstr ""
 
-#: config/sparc/sparc.opt:130
+#: params.opt:442
 #, no-c-format
-msgid "Use structs on stronger alignment for double-word copies."
+msgid "The maximum number of stmts in loop nest for loop interchange."
 msgstr ""
 
-#: config/sparc/sparc.opt:134
+#: params.opt:446
 #, no-c-format
-msgid "Optimize tail call instructions in assembler and linker."
+msgid "The minimum stride ratio for loop interchange to be profitable."
 msgstr ""
 
-#: config/sparc/sparc.opt:138
+#: params.opt:450
 #, no-c-format
-msgid "Do not generate code that can only run in supervisor mode (default)."
+msgid "Max basic blocks number in loop for loop invariant motion."
 msgstr ""
 
-#: config/sparc/sparc.opt:142
+#: params.opt:454
 #, no-c-format
-msgid "Use instructions of and schedule code for given CPU."
+msgid "Maximum number of datarefs in loop for building loop data dependencies."
 msgstr ""
 
-#: config/sparc/sparc.opt:228
+#: params.opt:458
 #, no-c-format
-msgid "Use given SPARC-V9 code model."
+msgid ""
+"The maximum number of instructions in an inner loop that is being considered "
+"for versioning."
 msgstr ""
 
-#: config/sparc/sparc.opt:250
+#: params.opt:462
 #, no-c-format
-msgid "Enable debug output."
+msgid ""
+"The maximum number of instructions in an outer loop that is being considered "
+"for versioning, on top of the instructions in inner loops."
 msgstr ""
 
-#: config/sparc/sparc.opt:254
+#: params.opt:466
 #, no-c-format
-msgid "Enable strict 32-bit psABI struct return checking."
+msgid ""
+"Minimal fall-through edge probability as a percentage, used to add BB to "
+"inheritance EBB in LRA."
 msgstr ""
 
-#: config/sparc/sparc.opt:258
+#: params.opt:470
 #, no-c-format
 msgid ""
-"Enable workaround for single erratum of AT697F processor (corresponding to "
-"erratum #13 of AT697E processor)."
+"The max number of reload pseudos which are considered during spilling a non-"
+"reload pseudo."
 msgstr ""
 
-#: config/sparc/sparc.opt:263
+#: params.opt:474
 #, no-c-format
-msgid "Enable workarounds for the errata of the UT699 processor."
+msgid ""
+"The maximum log2(number of reload pseudos * number of program points) "
+"threshold when preferences for other reload pseudos are still considered. "
+"Taking these preferences into account helps to improve register allocation. "
+"However, for very large functions, a large value can result in significant "
+"compilation time and memory consumption. The default value is 30."
 msgstr ""
 
-#: config/sparc/sparc.opt:267
+#: params.opt:482
 #, no-c-format
-msgid "Enable workarounds for the errata of the UT699E/UT700 processor."
+msgid "Maximal size of a partition for LTO (in estimated instructions)."
 msgstr ""
 
-#: config/sparc/sparc.opt:271
+#: params.opt:486
 #, no-c-format
-msgid "Enable workarounds for the errata of the GR712RC processor."
+msgid "Maximal number of LTO partitions streamed in parallel."
 msgstr ""
 
-#: config/sparc/sparc.opt:308
+#: params.opt:490
 #, no-c-format
-msgid "Specify the memory model in effect for the program."
+msgid "Minimal size of a partition for LTO (in estimated instructions)."
 msgstr ""
 
-#: config/rs6000/darwin.opt:38 config/rs6000/sysv4.opt:145
+#: params.opt:494
 #, no-c-format
-msgid "Generate 64-bit code."
+msgid "Number of partitions the program should be split to."
 msgstr ""
 
-#: config/rs6000/darwin.opt:42 config/rs6000/sysv4.opt:149
+#: params.opt:513
 #, no-c-format
-msgid "Generate 32-bit code."
+msgid ""
+"The denominator n of fraction 1/n of the execution frequency of callee to be "
+"cloned for a particular caller. Special value of 0 dictates to always clone "
+"without a cut-off."
 msgstr ""
 
-#: config/rs6000/rs6000-tables.opt:24
+#: params.opt:517
 #, no-c-format
-msgid "Known CPUs (for use with the -mcpu= and -mtune= options):"
+msgid ""
+"Size cut-off for callee including inlined calls to be cloned for a "
+"particular caller."
 msgstr ""
 
-#: config/rs6000/476.opt:24
+#: params.opt:521
 #, no-c-format
 msgid ""
-"Preserve the PowerPC 476's link stack by matching up a blr with the bcl/bl "
-"insns used for GOT accesses."
+"Maximal size of a locality partition for LTO (in estimated instructions). "
+"Value of 0 results in default value being used."
 msgstr ""
 
-#: config/rs6000/aix64.opt:24
+#: params.opt:531
 #, no-c-format
-msgid "Compile for 64-bit pointers."
+msgid ""
+"Choose static heuristics for locality layout. Option cpp_template groups by "
+"C++ template instantiation type."
 msgstr ""
 
-#: config/rs6000/aix64.opt:28
+#: params.opt:535
 #, no-c-format
-msgid "Compile for 32-bit pointers."
+msgid ""
+"The maximum number of instructions to consider to unroll in a loop on "
+"average."
 msgstr ""
 
-#: config/rs6000/aix64.opt:32 config/rs6000/linux64.opt:28
+#: params.opt:539
 #, no-c-format
-msgid "Select code model."
+msgid "The maximum number of insns combine tries to combine."
 msgstr ""
 
-#: config/rs6000/aix64.opt:49
+#: params.opt:543
 #, no-c-format
-msgid "Support message passing with the Parallel Environment."
+msgid ""
+"The maximum number of instructions that combine searches in order to find "
+"the next use of a particular register."
 msgstr ""
 
-#: config/rs6000/linux64.opt:24
+#: params.opt:547
 #, no-c-format
-msgid "Call mcount for profiling before a function prologue."
+msgid "The maximum depth of a loop nest we completely peel."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:117
+#: params.opt:551
 #, no-c-format
-msgid "Use PowerPC-64 instruction set."
+msgid ""
+"The maximum number of peelings of a single loop that is peeled completely."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:121
+#: params.opt:555
 #, no-c-format
-msgid "Use PowerPC General Purpose group optional instructions."
+msgid "The maximum number of insns of a completely peeled loop."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:125
+#: params.opt:559
 #, no-c-format
-msgid "Use PowerPC Graphics group optional instructions."
+msgid "The maximum number of incoming edges to consider for crossjumping."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:129
+#: params.opt:563
 #, no-c-format
-msgid "Use PowerPC V2.01 single field mfcr instruction."
+msgid "The maximum instructions CSE process before flushing."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:133
+#: params.opt:567
 #, no-c-format
-msgid "Use PowerPC V2.02 popcntb instruction."
+msgid "The maximum length of path considered in cse."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:137
+#: params.opt:571
 #, no-c-format
-msgid "Use PowerPC V2.02 floating point rounding instructions."
+msgid "The maximum memory locations recorded by cselib."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:141
+#: params.opt:575
 #, no-c-format
-msgid "Use PowerPC V2.05 compare bytes instruction."
+msgid "Maximum count of debug markers to expand or inline."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:152
+#: params.opt:579
 #, no-c-format
-msgid "Use AltiVec instructions."
+msgid "The maximum number of instructions to consider to fill a delay slot."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:156
+#: params.opt:583
 #, no-c-format
-msgid "Use decimal floating point instructions."
+msgid ""
+"The maximum number of instructions to consider to find accurate live "
+"register information."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:160
+#: params.opt:587
 #, no-c-format
-msgid "Use 4xx half-word multiply instructions."
+msgid "Maximum number of active local stores in RTL dead store elimination."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:164
+#: params.opt:591
 #, no-c-format
-msgid "Use 4xx string-search dlmzb instruction."
+msgid "Maximum number of targets to devirutalize."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:168
+#: params.opt:595
 #, no-c-format
-msgid "Generate load/store multiple instructions."
+msgid ""
+"The maximum number of nested indirect inlining performed by early inliner."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:187
+#: params.opt:599
 #, no-c-format
-msgid "Use PowerPC V2.06 popcntd instruction."
+msgid ""
+"Maximum number of fields in a structure before pointer analysis treats the "
+"structure as a single variable."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:191
+#: params.opt:603
 #, no-c-format
 msgid ""
-"Under -ffast-math, generate a FRIZ instruction for (double)(long long) "
-"conversions."
+"Maximum number of instructions to copy when duplicating blocks on a finite "
+"state automaton jump thread path."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:199
+#: params.opt:607
 #, no-c-format
-msgid "Use vector/scalar (VSX) instructions."
+msgid "The maximum ratio of insertions to deletions of expressions in GCSE."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:227
+#: params.opt:611
 #, no-c-format
-msgid "Do not generate load/store with update instructions."
+msgid "The maximum amount of memory to be allocated by GCSE, in kilobytes."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:231
+#: params.opt:615
 #, no-c-format
-msgid "Generate load/store with update instructions."
+msgid ""
+"The maximum number of insns to duplicate when unfactoring computed gotos."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:239
+#: params.opt:619
 #, no-c-format
-msgid "Avoid generation of indexed load/store instructions when possible."
+msgid "The maximum expansion factor when copying basic blocks."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:246
+#: params.opt:623
 #, no-c-format
-msgid "Schedule the start and end of the procedure."
+msgid "Maximum depth of search in the dominator tree for expressions to hoist."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:250
+#: params.opt:627
 #, no-c-format
-msgid "Return all structures in memory (AIX default)."
+msgid ""
+"Maximum loop depth of a call which is considered for inlining functions "
+"called once."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:254
+#: params.opt:631
 #, no-c-format
-msgid "Return small structures in registers (SVR4 default)."
+msgid ""
+"Maximum combined size of caller and callee which is inlined if callee is "
+"called once."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:258
+#: params.opt:635
 #, no-c-format
-msgid "Conform more closely to IBM XLC semantics."
+msgid "The maximum number of instructions when automatically inlining."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:262 config/rs6000/rs6000.opt:266
+#: params.opt:639
 #, no-c-format
 msgid ""
-"Generate software reciprocal divide and square root for better throughput."
-msgstr ""
-
-#: config/rs6000/rs6000.opt:270
-#, no-c-format
-msgid "Assume that the reciprocal estimate instructions provide more accuracy."
+"The maximum number of instructions inline function can grow to via recursive "
+"inlining."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:274
+#: params.opt:643
 #, no-c-format
-msgid "Do not place floating point constants in TOC."
+msgid ""
+"The maximum number of instructions non-inline function can grow to via "
+"recursive inlining."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:278
+#: params.opt:647
 #, no-c-format
-msgid "Place floating point constants in TOC."
+msgid ""
+"The maximum number of instructions in a single function eligible for "
+"inlining."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:282
+#: params.opt:651
 #, no-c-format
-msgid "Do not place symbol+offset constants in TOC."
+msgid "The maximum number of instructions when inlining for size."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:286
+#: params.opt:655
 #, no-c-format
-msgid "Place symbol+offset constants in TOC."
+msgid ""
+"The maximum number of instructions when automatically inlining small "
+"functions."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:297
+#: params.opt:659
 #, no-c-format
-msgid "Use only one TOC entry per procedure."
+msgid "The maximum depth of recursive inlining for inline functions."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:301
+#: params.opt:663
 #, no-c-format
-msgid "Put everything in the regular TOC."
+msgid "The maximum depth of recursive inlining for non-inline functions."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:305
+#: params.opt:667
 #, no-c-format
-msgid ""
-"Emit NOPs before global and after local entry point for -fpatchable-function-"
-"entry."
+msgid "Maximum number of isl operations, 0 means unlimited."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:309
+#: params.opt:671
 #, no-c-format
-msgid "Generate VRSAVE instructions when generating AltiVec code."
+msgid "Bound on the cost of an expression to compute the number of iterations."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:313
+#: params.opt:675
 #, no-c-format
-msgid "Deprecated option.  Use -mno-vrsave instead."
+msgid ""
+"Bound on the number of iterations the brute force # of iterations analysis "
+"algorithm evaluates."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:317
+#: params.opt:679
 #, no-c-format
-msgid "Deprecated option.  Use -mvrsave instead."
+msgid ""
+"Maximum number of statements allowed in a block that needs to be duplicated "
+"when threading jumps."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:321
+#: params.opt:683
 #, no-c-format
-msgid "Max number of bytes to move inline."
+msgid "Search space limit for the backwards jump threader."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:325
+#: params.opt:687
 #, no-c-format
 msgid ""
-"Generate unaligned VSX load/store for inline expansion of memcpy/memmove."
+"The maximum number of RTL nodes that can be recorded as combiner's last "
+"value."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:329
+#: params.opt:691
 #, no-c-format
 msgid ""
-"Generate unaligned VSX vector pair load/store for inline expansion of memcpy/"
-"memmove."
+"The maximum number of insns in loop header duplicated by the copy loop "
+"headers pass."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:333
+#: params.opt:695
 #, no-c-format
-msgid "Max number of bytes to compare without loops."
+msgid ""
+"The maximum number of backtrack attempts the scheduler should make when "
+"modulo scheduling a loop."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:337
+#: params.opt:699
 #, no-c-format
-msgid "Max number of bytes to compare with loops."
+msgid "Minimum page size for warning purposes."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:341
+#: params.opt:703
 #, no-c-format
-msgid "Max number of bytes to compare."
+msgid ""
+"Maximum length of partial antic set when performing tree pre optimization."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:345
+#: params.opt:707
 #, no-c-format
-msgid "Generate isel instructions."
+msgid "The maximum number of branches on the path through the peeled sequence."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:349
+#: params.opt:711
 #, no-c-format
-msgid "-mdebug=\tEnable debug output."
+msgid "The maximum number of peelings of a single loop."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:354
+#: params.opt:715
 #, no-c-format
-msgid "Use the AltiVec ABI extensions."
+msgid "The maximum number of insns of a peeled loop."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:358
+#: params.opt:719
 #, no-c-format
-msgid "Do not use the AltiVec ABI extensions."
+msgid "The maximum length of scheduling's pending operations list."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:363
+#: params.opt:723 params.opt:767
 #, no-c-format
-msgid "Use the AIX Vector Extended ABI."
+msgid ""
+"The maximum number of blocks in a region to be considered for interblock "
+"scheduling."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:367
+#: params.opt:727 params.opt:771
 #, no-c-format
-msgid "Do not use the AIX Vector Extended ABI."
+msgid ""
+"The maximum number of insns in a region to be considered for interblock "
+"scheduling."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:372
+#: params.opt:731
 #, no-c-format
-msgid "Use the ELFv1 ABI."
+msgid ""
+"Maximum depth of sqrt chains to use when synthesizing exponentiation by a "
+"real constant."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:376
+#: params.opt:735
 #, no-c-format
-msgid "Use the ELFv2 ABI."
+msgid "The maximum number of loop iterations we predict statically."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:396
+#: params.opt:739
 #, no-c-format
-msgid "-mcpu=\tUse features of and schedule code for given CPU."
+msgid ""
+"The maximum number of instructions to search backward when looking for "
+"equivalent reload."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:400
+#: params.opt:743
 #, no-c-format
-msgid "-mtune=\tSchedule code for given CPU."
+msgid ""
+"Maximum number of insns in a basic block to consider for RTL if-conversion."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:404
+#: params.opt:747
 #, no-c-format
-msgid "-mtraceback=[full,part,no]\tSelect type of traceback table."
+msgid ""
+"Maximum permissible cost for the sequence that would be generated by the RTL "
+"if-conversion pass for a branch that is considered predictable."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:420
+#: params.opt:751
 #, no-c-format
-msgid "Avoid all range limits on call instructions."
+msgid ""
+"Maximum permissible cost for the sequence that would be generated by the RTL "
+"if-conversion pass for a branch that is considered unpredictable."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:428
+#: params.opt:755
 #, no-c-format
-msgid "Warn about deprecated 'vector long ...' AltiVec type usage."
+msgid "The maximum number of iterations through CFG to extend regions."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:432
+#: params.opt:759
 #, no-c-format
 msgid ""
-"Use -mlong-double-64 for 64-bit IEEE floating point format.  Use -mlong-"
-"double-128 for 128-bit floating point format (either IEEE or IBM)."
-msgstr ""
-
-#: config/rs6000/rs6000.opt:441
-#, no-c-format
-msgid "Determine which dependences between insns are considered costly."
+"The maximum conflict delay for an insn to be considered for speculative "
+"motion."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:445
+#: params.opt:763
 #, no-c-format
-msgid "Specify which post scheduling nop insertion scheme to apply."
+msgid ""
+"The maximum number of instructions ready to be issued to be considered by "
+"the scheduler during the first scheduling pass."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:449
+#: params.opt:775
 #, no-c-format
-msgid "Specify alignment of structure fields default/natural."
+msgid "Maximum length of candidate scans for straight-line strength reduction."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:453
+#: params.opt:779
 #, no-c-format
-msgid "Valid arguments to -malign-:"
+msgid "Maximum number of may-defs visited when devirtualizing speculatively."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:463
+#: params.opt:783
 #, no-c-format
-msgid "Specify scheduling priority for dispatch slot restricted insns."
+msgid ""
+"Maximum recursion depth allowed when querying a property of an SSA name."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:467
+#: params.opt:787
 #, no-c-format
-msgid "Use r11 to hold the static link in calls to functions via pointers."
+msgid "Maximum number of constant stores to merge in the store merging pass."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:471
+#: params.opt:791
 #, no-c-format
-msgid "Save the TOC in the prologue for indirect calls rather than inline."
+msgid "Maximum number of conditional store pairs that can be sunk."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:483
+#: params.opt:795 params.opt:799
 #, no-c-format
 msgid ""
-"Fuse certain integer operations together for better performance on power8."
+"Maximum number of store chains to track at the same time in the store "
+"merging pass."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:487
+#: params.opt:803
 #, no-c-format
-msgid "Allow sign extension in fusion operations."
+msgid "Maximum amount of similar bbs to compare a bb with."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:491
+#: params.opt:807
 #, no-c-format
-msgid "Use vector and scalar instructions added in ISA 2.07."
+msgid "Maximum amount of iterations of the pass over a function."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:495
+#: params.opt:811
 #, no-c-format
 msgid ""
-"Fuse certain integer operations together for better performance on power10."
+"Maximum number of strings for which strlen optimization pass tracks string "
+"lengths."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:499
+#: params.opt:815
 #, no-c-format
-msgid "Use ISA 2.07 Category:Vector.AES and Category:Vector.SHA2 instructions."
+msgid ""
+"Maximum number of arguments in a PHI supported by TREE if-conversion unless "
+"the loop is marked with simd pragma."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:506
+#: params.opt:819
 #, no-c-format
-msgid "Use ISA 2.07 transactional memory (HTM) instructions."
+msgid "The maximum number of unrollings of a single loop."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:510
+#: params.opt:823
 #, no-c-format
-msgid "Generate the quad word memory instructions (lq/stq)."
+msgid "The maximum number of instructions to consider to unroll in a loop."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:514
+#: params.opt:827
 #, no-c-format
-msgid "Generate the quad word memory atomic instructions (lqarx/stqcx)."
+msgid "The maximum number of insns of an unswitched loop."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:518
+#: params.opt:831
 #, no-c-format
-msgid ""
-"Generate aggregate parameter passing code with at most 64-bit alignment."
+msgid "The maximum depth of a loop nest to be unswitched."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:522
+#: params.opt:835
 #, no-c-format
-msgid "Analyze and remove doubleword swaps from VSX computations."
+msgid ""
+"If -fvariable-expansion-in-unroller is used, the maximum number of times "
+"that an individual variable is expanded during loop unrolling."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:530
+#: params.opt:839
 #, no-c-format
-msgid "Use certain scalar instructions added in ISA 3.0."
+msgid "Maximum recursion depth for expanding var tracking expressions."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:534
+#: params.opt:843
 #, no-c-format
-msgid "Use vector instructions added in ISA 3.0."
+msgid "Maximum size of loc list for which reverse ops should be added."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:538
+#: params.opt:847
 #, no-c-format
-msgid "Use the new min/max instructions defined in ISA 3.0."
+msgid "Maximum size of var tracking hash tables."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:542
+#: params.opt:851
 #, no-c-format
-msgid "Generate the integer modulo instructions."
+msgid "Maximum number of VALUEs handled during a single find_base_term call."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:546
+#: params.opt:855
 #, no-c-format
-msgid "Enable IEEE 128-bit floating point via the __float128 keyword."
+msgid ""
+"The minimum number of matching instructions to consider for crossjumping."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:550
+#: params.opt:859
 #, no-c-format
-msgid "Enable using IEEE 128-bit floating point instructions."
+msgid ""
+"Inline recursively only when the probability of call being executed exceeds "
+"the parameter."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:554
+#: params.opt:863
 #, no-c-format
-msgid "Enable default conversions between __float128 & long double."
+msgid ""
+"Minimum ratio of insns to prefetches to enable prefetching for a loop with "
+"an unknown trip count."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:600
+#: params.opt:867
 #, no-c-format
-msgid "Generate (do not generate) prefixed memory instructions."
+msgid ""
+"The minimum threshold for probability of semi-invariant condition statement "
+"to trigger loop split."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:604
+#: params.opt:871
 #, no-c-format
-msgid "Generate (do not generate) pc-relative memory addressing."
+msgid "The minimum UID to be used for a nondebug insn."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:608
+#: params.opt:875
 #, no-c-format
 msgid ""
-"Generate (do not generate) pc-relative memory optimizations for externals."
+"The minimum size of variables taking part in stack slot sharing when not "
+"optimizing."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:612
+#: params.opt:879
 #, no-c-format
-msgid "Generate (do not generate) MMA instructions."
+msgid ""
+"The minimum probability of reaching a source block for interblock "
+"speculative scheduling."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:619
+#: params.opt:883
 #, no-c-format
 msgid ""
-"Enable instructions that guard against return-oriented programming attacks."
+"If -ftree-vectorize is used, the minimal loop bound of a loop to be "
+"considered for vectorization."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:623
+#: params.opt:887
 #, no-c-format
-msgid "Generate code that will run in privileged state."
+msgid ""
+"--param=openacc-kernels=[decompose|parloops]\tSpecify mode of OpenACC "
+"'kernels' constructs handling."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:627
+#: params.opt:900
 #, no-c-format
-msgid "Generate (do not generate) code that uses the XXSPLTIW instruction."
+msgid ""
+"--param=openacc-privatization=[quiet|noisy]\tSpecify mode of OpenACC "
+"privatization diagnostics."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:631
+#: params.opt:913
 #, no-c-format
-msgid "Generate (do not generate) code that uses the XXSPLTIDP instruction."
+msgid "Chunk size of omp schedule for loops parallelized by parloops."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:635
+#: params.opt:917
 #, no-c-format
-msgid "Generate (do not generate) code that uses the LXVKQ instruction."
+msgid ""
+"Minimum number of iterations per thread of an innermost parallelized loop."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:641
+#: params.opt:921
 #, no-c-format
 msgid ""
-"Used to limit unroll factor which indicates how much the autovectorizer may "
-"unroll a loop.  The default value is 4."
+"--param=parloops-schedule=[static|dynamic|guided|auto|runtime]\tSchedule "
+"type of omp schedule for loops parallelized by parloops."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:647
+#: params.opt:943
 #, no-c-format
 msgid ""
-"When costing for loop vectorization, we probably need to penalize the loop "
-"body cost if the existing cost model may not adequately reflect delays from "
-"unavailable vector resources.  We collect the cost for vectorized statements "
-"and non-vectorized statements separately, check the proportion of vec_cost "
-"to total cost of vec_cost and non vec_cost, and penalize only if the "
-"proportion exceeds the threshold specified by this parameter.  The default "
-"value is 85."
+"Maximum probability of the entry BB of split region (as a percentage "
+"relative to entry BB of the function) to make partial inlining happen."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:656
+#: params.opt:947
 #, no-c-format
 msgid ""
-"Like parameter rs6000-density-pct-threshold, we also check the total sum of "
-"vec_cost and non vec_cost, and penalize only if the sum exceeds the "
-"threshold specified by this parameter.  The default value is 70."
+"Maximum number of statements allowed inbetween the statement and the end to "
+"considered not extending the liferange."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:662
+#: params.opt:951
 #, no-c-format
-msgid ""
-"When both heuristics with rs6000-density-pct-threshold and rs6000-density-"
-"size-threshold are satisfied, we decide to penalize the loop body cost by "
-"the value which is specified by this parameter.  The default value is 10."
+msgid "Maximal estimated outcome of branch considered predictable."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:669
+#: params.opt:955
 #, no-c-format
 msgid ""
-"When costing for loop vectorization, we probably need to penalize the loop "
-"body cost by accounting for excess strided or elementwise loads.  We collect "
-"the numbers for general statements and load statements according to the "
-"information for statements to be vectorized, check the proportion of load "
-"statements, and penalize only if the proportion exceeds the threshold "
-"specified by this parameter.  The default value is 45."
+"Whether software prefetch hints should be issued for non-constant strides."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:678
+#: params.opt:959
 #, no-c-format
-msgid ""
-"Like parameter rs6000-density-load-pct-threshold, we also check if the total "
-"number of load statements exceeds the threshold specified by this parameter, "
-"and penalize only if it's satisfied.  The default value is 20."
+msgid "The number of insns executed before prefetch is completed."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:684 config/loongarch/loongarch.opt:306
+#: params.opt:963
 #, no-c-format
-msgid ""
-"Indicate how many non memory access vector instructions can be issued per "
-"cycle, it's used in unroll factor determination for autovectorizer.  The "
-"default value is 4."
+msgid "Minimum ratio of insns to mem ops to enable prefetching in a loop."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:690
+#: params.opt:967
 #, no-c-format
 msgid ""
-"When reduction factor computed for a loop exceeds the threshold specified by "
-"this parameter, prefer to unroll this loop.  The default value is 1."
+"The minimum constant stride beyond which we should use prefetch hints for."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:24
+#: params.opt:971
 #, no-c-format
-msgid "-mcall-ABI\tSelect ABI calling convention."
+msgid "Use internal function id in profile lookup."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:28
+#: params.opt:975
 #, no-c-format
-msgid "-msdata=[none,data,sysv,eabi]\tSelect method for sdata handling."
+msgid ""
+"--param=ranger-debug=[none|trace|gori|cache|tracegori|all] Specifies the "
+"output mode for debugging ranger."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:32
+#: params.opt:1000
 #, no-c-format
-msgid "Allow readonly data in sdata."
+msgid ""
+"Maximum depth of logical expression evaluation ranger looks through when "
+"evaluating outgoing edge ranges."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:36
+#: params.opt:1005
 #, no-c-format
-msgid "-mtls-size=[16,32]\tSpecify bit size of immediate TLS offsets."
+msgid ""
+"Maximum depth of instruction chains to consider for recomputation in the "
+"outgoing range calculator."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:52
+#: params.opt:1010
 #, no-c-format
-msgid "Align to the base type of the bit-field."
+msgid "Maximum number of relations the oracle registers in a basic block."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:56
+#: params.opt:1014
 #, no-c-format
 msgid ""
-"Align to the base type of the bit-field. Don't assume that unaligned "
-"accesses are handled by the system."
-msgstr ""
-
-#: config/rs6000/sysv4.opt:61 config/rs6000/sysv4.opt:65
-#, no-c-format
-msgid "Produce code relocatable at runtime."
+"Work bound when discovering transitive relations from existing relations."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:69 config/rs6000/sysv4.opt:73
+#: params.opt:1018
 #, no-c-format
-msgid "Produce little endian code."
+msgid "Maximum depth of a loop nest to fully value-number optimistically."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:77 config/rs6000/sysv4.opt:81
+#: params.opt:1022
 #, no-c-format
-msgid "Produce big endian code."
+msgid "Maximum number of disambiguations to perform per memory access."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:86 config/rs6000/sysv4.opt:90
-#: config/rs6000/sysv4.opt:99 config/rs6000/sysv4.opt:141
-#: config/rs6000/sysv4.opt:153
+#: params.opt:1026
 #, no-c-format
-msgid "No description yet."
+msgid ""
+"Bound on the complexity of the expressions in the scalar evolutions analyzer."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:94
+#: params.opt:1030
 #, no-c-format
-msgid "Assume all variable arg functions are prototyped."
+msgid "Bound on size of expressions used in the scalar evolutions analyzer."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:103
+#: params.opt:1034
 #, no-c-format
-msgid "Use EABI."
+msgid ""
+"Hardware autoprefetcher scheduler model control flag.  Number of lookahead "
+"cycles the model looks into, at '0' only enable instruction sorting "
+"heuristic.  Disabled by default."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:107
+#: params.opt:1038
 #, no-c-format
-msgid "Allow bit-fields to cross word boundaries."
+msgid "Minimal distance between possibly conflicting store and load."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:111
+#: params.opt:1042
 #, no-c-format
-msgid "Use alternate register names."
+msgid "Which -fsched-pressure algorithm to apply."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:117
+#: params.opt:1046
 #, no-c-format
-msgid "Use default method for sdata handling."
+msgid ""
+"The minimal probability of speculation success (as a percentage), so that "
+"speculative insns are scheduled."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:121
+#: params.opt:1050
 #, no-c-format
-msgid "Link with libsim.a, libc.a and sim-crt0.o."
+msgid ""
+"The minimum probability an edge must have for the scheduler to save its "
+"state across it."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:125
+#: params.opt:1054
 #, no-c-format
-msgid "Link with libads.a, libc.a and crt0.o."
+msgid ""
+"Maximum number of instructions in the ready list that are considered "
+"eligible for renaming."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:129
+#: params.opt:1058
 #, no-c-format
-msgid "Link with libyk.a, libc.a and crt0.o."
+msgid "The maximum size of the lookahead window of selective scheduling."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:133
+#: params.opt:1062
 #, no-c-format
-msgid "Link with libmvme.a, libc.a and crt0.o."
+msgid "Maximum number of times that an insn could be scheduled."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:137
+#: params.opt:1066
 #, no-c-format
-msgid "Set the PPC_EMB bit in the ELF flags header."
+msgid "The number of prefetches that can run at the same time."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:157
+#: params.opt:1070
 #, no-c-format
-msgid "Generate code to use a non-exec PLT and GOT."
+msgid ""
+"Target block's relative execution frequency (as a percentage) required to "
+"sink a statement."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:161
+#: params.opt:1074
 #, no-c-format
-msgid "Generate code for old exec BSS PLT."
+msgid ""
+"The number of cycles the swing modulo scheduler considers when checking "
+"conflicts using DFA."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:165
+#: params.opt:1078
 #, no-c-format
-msgid "Use inline plt sequences to implement long calls and -fno-plt."
+msgid ""
+"A threshold on the average loop count considered by the swing modulo "
+"scheduler."
 msgstr ""
 
-#: config/rs6000/sysv4.opt:169
+#: params.opt:1082
 #, no-c-format
-msgid "Emit .gnu_attribute tags."
+msgid ""
+"A factor for tuning the upper bound that swing modulo scheduler uses for "
+"scheduling a loop."
 msgstr ""
 
-#: config/alpha/alpha.opt:27
+#: params.opt:1086
 #, no-c-format
-msgid "Use fp registers."
+msgid "The minimum value of stage count that swing modulo scheduler generates."
 msgstr ""
 
-#: config/alpha/alpha.opt:35
+#: params.opt:1090
 #, no-c-format
-msgid "Request IEEE-conformant math library routines (OSF/1)."
+msgid ""
+"Maximum size, in storage units, of an aggregate which should be considered "
+"for scalarization when compiling for size."
 msgstr ""
 
-#: config/alpha/alpha.opt:39
+#: params.opt:1094
 #, no-c-format
-msgid "Emit IEEE-conformant code, without inexact exceptions."
+msgid ""
+"Maximum size, in storage units, of an aggregate which should be considered "
+"for scalarization when compiling for speed."
 msgstr ""
 
-#: config/alpha/alpha.opt:46
+#: params.opt:1098
 #, no-c-format
-msgid "Do not emit complex integer constants to read-only memory."
+msgid ""
+"Maximum number of artificial accesses to enable forward propagation that "
+"Scalar Replacement of Aggregates keeps for one local variable."
 msgstr ""
 
-#: config/alpha/alpha.opt:50
+#: params.opt:1102
 #, no-c-format
-msgid "Use VAX fp."
+msgid ""
+"The maximum number of SSA_NAME assignments to follow in determining a value."
 msgstr ""
 
-#: config/alpha/alpha.opt:54
+#: params.opt:1106
 #, no-c-format
-msgid "Do not use VAX fp."
+msgid ""
+"The lower bound for a buffer to be considered for stack smashing protection."
 msgstr ""
 
-#: config/alpha/alpha.opt:58
+#: params.opt:1110
 #, no-c-format
-msgid "Emit code for the byte/word ISA extension."
+msgid "Size of the stack guard expressed as a power of two in bytes."
 msgstr ""
 
-#: config/alpha/alpha.opt:62
+#: params.opt:1114
 #, no-c-format
-msgid "Emit code for the motion video ISA extension."
+msgid ""
+"Interval in which to probe the stack expressed as a power of two in bytes."
 msgstr ""
 
-#: config/alpha/alpha.opt:66
+#: params.opt:1118
 #, no-c-format
-msgid "Emit code for the fp move and sqrt ISA extension."
+msgid ""
+"Allow the store merging pass to introduce unaligned stores if it is legal to "
+"do so."
 msgstr ""
 
-#: config/alpha/alpha.opt:70
+#: params.opt:1122
 #, no-c-format
-msgid "Emit code for the counting ISA extension."
+msgid "Maximum size of a single store merging region in bytes."
 msgstr ""
 
-#: config/alpha/alpha.opt:74
+#: params.opt:1126
 #, no-c-format
 msgid ""
-"Emit multi-thread and async-signal safe code for byte and word memory "
-"accesses."
+"Maximum number of instruction distance that a small store forwarded to a "
+"larger load may stall. Value '0' disables the cost checks for the avoid-"
+"store-forwarding pass."
 msgstr ""
 
-#: config/alpha/alpha.opt:78
+#: params.opt:1130
 #, no-c-format
 msgid ""
-"Emit multi-thread and async-signal safe code for partial memory accesses."
+"The maximum ratio between array size and switch branches for a switch "
+"conversion to take place."
 msgstr ""
 
-#: config/alpha/alpha.opt:82
+#: params.opt:1134
 #, no-c-format
-msgid "Emit code using explicit relocation directives."
+msgid "Maximum number of bases stored in each modref tree."
 msgstr ""
 
-#: config/alpha/alpha.opt:86
+#: params.opt:1138
 #, no-c-format
-msgid "Emit 16-bit relocations to the small data areas."
+msgid "Maximum number of references stored in each modref base."
 msgstr ""
 
-#: config/alpha/alpha.opt:90
+#: params.opt:1142
 #, no-c-format
-msgid "Emit 32-bit relocations to the small data areas."
+msgid "Maximum number of accesses stored in each modref reference."
 msgstr ""
 
-#: config/alpha/alpha.opt:94
+#: params.opt:1146
 #, no-c-format
-msgid "Emit direct branches to local functions."
+msgid "Maximum number of tests performed by modref query."
 msgstr ""
 
-#: config/alpha/alpha.opt:98
+#: params.opt:1150
 #, no-c-format
-msgid "Emit indirect branches to local functions."
+msgid "Maximum depth of DFS walk used by modref escape analysis."
 msgstr ""
 
-#: config/alpha/alpha.opt:102
+#: params.opt:1154
 #, no-c-format
-msgid "Emit rdval instead of rduniq for thread pointer."
+msgid "Maximum number of escape points tracked by modref per SSA-name."
 msgstr ""
 
-#: config/alpha/alpha.opt:114
+#: params.opt:1158
 #, no-c-format
-msgid "Use features of and schedule given CPU."
+msgid "Maximum number of times a given range is adjusted during the dataflow."
 msgstr ""
 
-#: config/alpha/alpha.opt:118
+#: params.opt:1162
 #, no-c-format
-msgid "Schedule given CPU."
+msgid ""
+"--param=threader-debug=[none|all] Enables verbose dumping of the threader "
+"solver."
 msgstr ""
 
-#: config/alpha/alpha.opt:122
+#: params.opt:1175
 #, no-c-format
-msgid "Control the generated fp rounding mode."
+msgid ""
+"Size in bytes after which thread-local aggregates should be instrumented "
+"with the logging functions instead of save/restore pairs."
 msgstr ""
 
-#: config/alpha/alpha.opt:126
+#: params.opt:1179
 #, no-c-format
-msgid "Control the IEEE trap mode."
+msgid ""
+"The percentage of function, weighted by execution frequency, that must be "
+"covered by trace formation. Used when profile feedback is not available."
 msgstr ""
 
-#: config/alpha/alpha.opt:130
+#: params.opt:1183
 #, no-c-format
-msgid "Control the precision given to fp exceptions."
+msgid ""
+"The percentage of function, weighted by execution frequency, that must be "
+"covered by trace formation. Used when profile feedback is available."
 msgstr ""
 
-#: config/alpha/alpha.opt:134
+#: params.opt:1187
 #, no-c-format
-msgid "Tune expected memory latency."
+msgid "Maximal code growth caused by tail duplication (as a percentage)."
 msgstr ""
 
-#: config/lm32/lm32.opt:24
+#: params.opt:1191
 #, no-c-format
-msgid "Enable multiply instructions."
+msgid ""
+"Stop forward growth if the probability of best edge is less than this "
+"threshold (as a percentage). Used when profile feedback is not available."
 msgstr ""
 
-#: config/lm32/lm32.opt:28
+#: params.opt:1195
 #, no-c-format
-msgid "Enable divide and modulus instructions."
+msgid ""
+"Stop forward growth if the probability of best edge is less than this "
+"threshold (as a percentage). Used when profile feedback is available."
 msgstr ""
 
-#: config/lm32/lm32.opt:32
+#: params.opt:1199
 #, no-c-format
-msgid "Enable barrel shift instructions."
+msgid ""
+"Stop reverse growth if the reverse probability of best edge is less than "
+"this threshold (as a percentage)."
 msgstr ""
 
-#: config/lm32/lm32.opt:36
+#: params.opt:1203
 #, no-c-format
-msgid "Enable sign extend instructions."
+msgid ""
+"Set the maximum number of instructions executed in parallel in reassociated "
+"tree.  If 0, use the target-dependent heuristic."
 msgstr ""
 
-#: config/lm32/lm32.opt:40
+#: params.opt:1207
 #, no-c-format
-msgid "Enable user-defined instructions."
+msgid "Emit special instrumentation for accesses to volatiles."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:41
+#: params.opt:1211
 #, no-c-format
-msgid "Basic ISAs of LoongArch:"
+msgid ""
+"Emit instrumentation calls to __tsan_func_entry() and __tsan_func_exit()."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:49
+#: params.opt:1215
 #, no-c-format
-msgid "FPU types of LoongArch:"
+msgid ""
+"Maximum number of nested calls to search for control dependencies during "
+"uninitialized variable analysis."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:62
+#: params.opt:1219
 #, no-c-format
-msgid "-mfpu=FPU\tGenerate code for the given FPU."
+msgid ""
+"Maximum number of predicates anded for each predicate ored in the normalized "
+"predicate chain."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:69 config/mips/mips.opt:398
+#: params.opt:1224
 #, no-c-format
-msgid "Prevent the use of all hardware floating-point instructions."
+msgid "Maximum number of predicates ored in the normalized predicate chain."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:73 config/mips/mips.opt:390
+#: params.opt:1228
 #, no-c-format
 msgid ""
-"Restrict the use of hardware floating-point instructions to 32-bit "
-"operations."
+"Maximum amount of work done to prune paths where the variable is always "
+"initialized."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:77 config/mips/mips.opt:116
+#: params.opt:1232
 #, no-c-format
 msgid ""
-"Allow hardware floating-point instructions to cover both 32-bit and 64-bit "
-"operations."
+"Instruction accounted for function prologue, epilogue and other overhead."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:81
+#: params.opt:1236
 #, no-c-format
-msgid "SIMD extension levels of LoongArch:"
+msgid "Time accounted for function prologue, epilogue and other overhead."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:94
+#: params.opt:1240
 #, no-c-format
-msgid "-msimd=SIMD\tGenerate code for the given SIMD extension."
+msgid "Instruction accounted for function thunk overhead."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:98
+#: params.opt:1244
 #, no-c-format
-msgid "Enable LoongArch SIMD Extension (LSX, 128-bit)."
+msgid "Time accounted for function thunk overhead."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:102
+#: params.opt:1248
 #, no-c-format
-msgid "Enable LoongArch Advanced SIMD Extension (LASX, 256-bit)."
+msgid ""
+"The denominator n of fraction 1/n of the number of profiled runs of the "
+"entire program below which the execution count of a basic block must be in "
+"order for the basic block to be considered unlikely."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:107
+#: params.opt:1252
 #, no-c-format
-msgid "LoongArch ARCH presets:"
+msgid "Maximum unroll factor for the unroll-and-jam transformation."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:132
+#: params.opt:1256
 #, no-c-format
-msgid "-march=PROCESSOR\tGenerate code for the given PROCESSOR ISA."
+msgid ""
+"Minimum percentage of memrefs that must go away for unroll-and-jam to be "
+"considered profitable."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:136
+#: params.opt:1260
 #, no-c-format
-msgid "LoongArch TUNE presets:"
+msgid ""
+"Use direct poisoning/unpoisoning instructions for variables smaller or equal "
+"to this number."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:155
+#: params.opt:1264
 #, no-c-format
-msgid "-mtune=PROCESSOR\tGenerate optimized code for PROCESSOR."
+msgid "Whether to use canonical types."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:164
+#: params.opt:1268
 #, no-c-format
-msgid "Base ABI types for LoongArch:"
+msgid "Enable loop epilogue vectorization using smaller vector size."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:177
+#: params.opt:1272
 #, no-c-format
-msgid "-mabi=BASEABI\tGenerate code that conforms to the given BASEABI."
+msgid ""
+"Maximum number of possible vector layouts (such as permutations) to consider "
+"when optimizing to-be-vectorized code."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:186 config/mips/mips.opt:71
+#: params.opt:1276
 #, no-c-format
 msgid ""
-"-mbranch-cost=COST\tSet the cost of branches to roughly COST instructions."
+"Maximum number of loop peels to enhance alignment of data references in a "
+"loop."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:190
+#: params.opt:1280
 #, no-c-format
 msgid ""
-"-maddr-reg-reg-cost=COST  Set the cost of ADDRESS_REG_REG to the value "
-"calculated by COST."
+"Bound on number of runtime checks inserted by the vectorizer's loop "
+"versioning for alias check."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:194 config/mips/mips.opt:83
+#: params.opt:1284
 #, no-c-format
-msgid "Trap on integer divide by zero."
+msgid ""
+"Bound on number of runtime checks inserted by the vectorizer's loop "
+"versioning for alignment check."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:198
+#: params.opt:1288
 #, no-c-format
-msgid "Conditional moves for integral are enabled."
+msgid ""
+"Controls how loop vectorizer uses partial vectors.  0 means never, 1 means "
+"only for loops whose need to iterate can be removed, 2 means for all loops.  "
+"The default value is 2."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:202
+#: params.opt:1292
 #, no-c-format
-msgid "Conditional moves for float are enabled."
+msgid ""
+"The maximum factor which the loop vectorizer applies to the cost of "
+"statements in an inner loop relative to the loop being vectorized."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:206
+#: params.opt:1296
 #, no-c-format
-msgid ""
-"Prevent optimizing block moves, which is also the default behavior of -Os."
+msgid "Enable loop vectorization of floating point inductions."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:214
+#: params.opt:1300
 #, no-c-format
 msgid ""
-"-mmax-inline-memcpy-size=SIZE\tSet the max size of memcpy to inline, default "
-"is 1024."
+"The scaling multiplier as a percentage to apply to all scalar loop costing "
+"when performing vectorization profitability analysis.  The default value is "
+"100."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:218 config/mips/mips.opt:150
+#: params.opt:1304
 #, no-c-format
-msgid "The code model option names for -mexplicit-relocs:"
+msgid ""
+"Maximum number of basic blocks before VRP switches to a fast model with less "
+"memory requirements."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:231 config/mips/mips.opt:163
+#: params.opt:1308
 #, no-c-format
-msgid "Use %reloc() assembly operators."
+msgid ""
+"Maximum number of steps when inferring a value range from a load from a "
+"constant aggregate."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:235 config/mips/mips.opt:167
+#: params.opt:1312
 #, no-c-format
-msgid "Use %reloc() assembly operators (for backward compatibility)."
+msgid "Maximum number of basic blocks before VRP uses a sparse bitmap cache."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:243
+#: params.opt:1316
 #, no-c-format
 msgid ""
-"Generate approximate reciprocal divide and square root for better throughput."
+"Maximum number of outgoing edges in a switch before VRP does not process it."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:274
+#: params.opt:1320
 #, no-c-format
-msgid "Avoid using the GOT to access external symbols."
+msgid "Maximum number of basic blocks for VRP to use a basic cache vector."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:283
+#: analyzer/analyzer.opt:27
 #, no-c-format
-msgid "Pass -mrelax or -mno-relax option to the assembler."
+msgid ""
+"The maximum number of 'after supernode' exploded nodes within the analyzer "
+"per supernode, before terminating analysis."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:301
+#: analyzer/analyzer.opt:31
 #, no-c-format
 msgid ""
-"Used to limit unroll factor which indicates how much the autovectorizer may "
-"unroll a loop.  The default value is 6."
+"The maximum number of exploded nodes per program point within the analyzer, "
+"before terminating analysis of that point."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:319
+#: analyzer/analyzer.opt:35
 #, no-c-format
-msgid ""
-"Annotate table jump instruction (jr {reg}) to correlate it with the jump "
-"table."
+msgid "The maximum number of constraints per state."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:323
+#: analyzer/analyzer.opt:39
 #, no-c-format
-msgid "Support frecipe.{s/d} and frsqrte.{s/d} instructions."
+msgid ""
+"The maximum number of infeasible edges to reject before declaring a "
+"diagnostic as infeasible."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:327
+#: analyzer/analyzer.opt:43
 #, no-c-format
 msgid ""
-"Support div.w[u] and mod.w[u] instructions with inputs not sign-extended."
+"The maximum number of times a callsite can appear in a call stack within the "
+"analyzer, before terminating analysis of a call that would recurse deeper."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:331
+#: analyzer/analyzer.opt:47
 #, no-c-format
-msgid "Support am{swap/add}[_db].{b/h} instructions."
+msgid ""
+"The maximum depth of a symbolic value, before approximating the value as "
+"unknown."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:335
+#: analyzer/analyzer.opt:51
 #, no-c-format
-msgid "Support amcas[_db].{b/h/w/d} instructions."
+msgid ""
+"The minimum number of supernodes within a function for the analyzer to "
+"consider summarizing its effects at call sites."
 msgstr ""
 
-#: config/loongarch/loongarch.opt:339
+#: analyzer/analyzer.opt:55
 #, no-c-format
-msgid "Do not need load-load barriers (dbar 0x700)."
+msgid ""
+"The maximum depth of exploded nodes that should appear in a dot dump before "
+"switching to a less verbose format."
 msgstr ""
 
-#: config/or1k/elf.opt:28
+#: analyzer/analyzer.opt:59
 #, no-c-format
-msgid "Configure the newlib board specific runtime.  The default is or1ksim."
+msgid ""
+"The number of bytes at which to ellipsize string literals in analyzer text "
+"art diagrams."
 msgstr ""
 
-#: config/or1k/elf.opt:32
+#: analyzer/analyzer.opt:63
 #, no-c-format
 msgid ""
-"This option is ignored; it is provided for compatibility purposes only.  "
-"This used to select linker and preprocessor options for use with newlib."
+"The number of literal bytes to show at the head of a string literal in text "
+"art when ellipsizing it."
 msgstr ""
 
-#: config/or1k/or1k.opt:29
+#: analyzer/analyzer.opt:67
 #, no-c-format
 msgid ""
-"Enable generation of hardware divide (l.div, l.divu) instructions.  This is "
-"the default; use -msoft-div to override."
+"The number of literal bytes to show at the tail of a string literal in text "
+"art when ellipsizing it."
 msgstr ""
 
-#: config/or1k/or1k.opt:34
+#: analyzer/analyzer.opt:71
 #, no-c-format
 msgid ""
-"Enable generation of binaries which use functions from libgcc to perform "
-"divide operations.  The default is -mhard-div."
+"The ideal width in characters of text art diagrams generated by the analyzer."
 msgstr ""
 
-#: config/or1k/or1k.opt:39
+#: analyzer/analyzer.opt:75
 #, no-c-format
 msgid ""
-"Enable generation of hardware multiply instructions (l.mul, l.muli) "
-"instructions. This is the default; use -msoft-mul to override."
+"Warn about code paths in which a pointer to a buffer is assigned to an "
+"incompatible type."
 msgstr ""
 
-#: config/or1k/or1k.opt:44
+#: analyzer/analyzer.opt:79
 #, no-c-format
 msgid ""
-"Enable generation of binaries which use functions from libgcc to perform "
-"multiply operations. The default is -mhard-mul."
+"Warn about code paths in which a pointer is checked for NULL after it has "
+"already been dereferenced."
 msgstr ""
 
-#: config/or1k/or1k.opt:49
+#: analyzer/analyzer.opt:83
 #, no-c-format
 msgid ""
-"Enable generation of binaries which use functions from libgcc to perform "
-"floating point operations.  This is the default; use -mhard-float to "
-"override."
+"Warn about code paths in which a stdio FILE can be closed more than once."
 msgstr ""
 
-#: config/or1k/or1k.opt:54
+#: analyzer/analyzer.opt:87
 #, no-c-format
-msgid ""
-"Enable generation of hardware floating point instructions. The default is -"
-"msoft-float."
+msgid "Warn about code paths in which a pointer can be freed more than once."
 msgstr ""
 
-#: config/or1k/or1k.opt:59
+#: analyzer/analyzer.opt:91
+#, no-c-format
+msgid "Warn about code paths in which sensitive data is written to a file."
+msgstr ""
+
+#: analyzer/analyzer.opt:95
 #, no-c-format
 msgid ""
-"When -mhard-float is selected, enables generation of double-precision "
-"floating point instructions.  By default functions from libgcc are used to "
-"perform double-precision floating point operations."
+"Warn about code paths in which sensitive data is copied across a security "
+"boundary."
 msgstr ""
 
-#: config/or1k/or1k.opt:65
+#: analyzer/analyzer.opt:99
 #, no-c-format
 msgid ""
-"When -mhard-float is selected, enables generation of unordered floating "
-"point compare and set flag (lf.sfun*) instructions.  By default functions "
-"from libgcc are used to perform unordered floating point compare and set "
-"flag operations."
+"Warn about code paths in which read on a write-only file descriptor is "
+"attempted, or vice versa."
 msgstr ""
 
-#: config/or1k/or1k.opt:71
+#: analyzer/analyzer.opt:103
 #, no-c-format
 msgid ""
-"Specify the code model used for accessing memory addresses.  Specifying "
-"large enables generating binaries with large global offset tables.  By "
-"default the value is small."
+"Warn about code paths in which a file descriptor can be closed more than "
+"once."
 msgstr ""
 
-#: config/or1k/or1k.opt:77
+#: analyzer/analyzer.opt:107
 #, no-c-format
-msgid "Known code model types (for use with the -mcmodel= option):"
+msgid "Warn about code paths in which a file descriptor is not closed."
 msgstr ""
 
-#: config/or1k/or1k.opt:87
+#: analyzer/analyzer.opt:111
 #, no-c-format
 msgid ""
-"Enable generation of conditional move (l.cmov) instructions.  By default the "
-"equivalent will be generated using set and branch."
+"Warn about code paths in which an operation is attempted in the wrong phase "
+"of a file descriptor's lifetime."
 msgstr ""
 
-#: config/or1k/or1k.opt:92
+#: analyzer/analyzer.opt:115
 #, no-c-format
 msgid ""
-"Enable generation of rotate right (l.ror) instructions.  By default "
-"functions from libgcc are used to perform rotate right operations."
+"Warn about code paths in which an operation is attempted on the wrong type "
+"of file descriptor."
 msgstr ""
 
-#: config/or1k/or1k.opt:97
+#: analyzer/analyzer.opt:119
 #, no-c-format
 msgid ""
-"Enable generation of rotate right with immediate (l.rori) instructions.  By "
-"default functions from libgcc are used to perform rotate right with "
-"immediate operations."
+"Warn about code paths in which a read or write is performed on a closed file "
+"descriptor."
 msgstr ""
 
-#: config/or1k/or1k.opt:103
+#: analyzer/analyzer.opt:123
 #, no-c-format
 msgid ""
-"Enable generation of sign extension (l.ext*) instructions.  By default "
-"memory loads are used to perform sign extension."
+"Warn about code paths in which a file descriptor is used without being "
+"checked for validity."
 msgstr ""
 
-#: config/or1k/or1k.opt:108
+#: analyzer/analyzer.opt:127
 #, no-c-format
-msgid ""
-"Enable generation of compare and set flag with immediate (l.sf*i) "
-"instructions. By default extra instructions will be generated to store the "
-"immediate to a register first."
+msgid "Warn about code paths in which a stdio FILE is not closed."
 msgstr ""
 
-#: config/or1k/or1k.opt:114
+#: analyzer/analyzer.opt:131
 #, no-c-format
-msgid ""
-"Enable generation of shift with immediate (l.srai, l.srli, l.slli) "
-"instructions. By default extra instructions will be generated to store the "
-"immediate to a register first."
+msgid "Warn about code paths in which a non-heap pointer is freed."
 msgstr ""
 
-#: config/rx/elf.opt:32
+#: analyzer/analyzer.opt:135
 #, no-c-format
 msgid ""
-"Generate assembler output that is compatible with the Renesas AS100 "
-"assembler.  This may restrict some of the compiler's capabilities.  The "
-"default is to generate GAS compatible syntax."
+"Warn about code paths in which floating-point arithmetic is used in "
+"locations where precise computation is needed."
 msgstr ""
 
-#: config/rx/elf.opt:38 config/rx/rx.opt:99
+#: analyzer/analyzer.opt:139
 #, no-c-format
-msgid "Specifies the number of registers to reserve for interrupt handlers."
+msgid "Warn about code paths which appear to lead to an infinite loop."
 msgstr ""
 
-#: config/rx/elf.opt:44 config/rx/rx.opt:105
+#: analyzer/analyzer.opt:143
+#, no-c-format
+msgid "Warn about code paths which appear to lead to infinite recursion."
+msgstr ""
+
+#: analyzer/analyzer.opt:147
+#, no-c-format
+msgid "Warn about code paths in which a NULL function pointer is called."
+msgstr ""
+
+#: analyzer/analyzer.opt:151
+#, no-c-format
+msgid "Warn about code paths in which a heap-allocated pointer leaks."
+msgstr ""
+
+#: analyzer/analyzer.opt:155
 #, no-c-format
 msgid ""
-"Specifies whether interrupt functions should save and restore the "
-"accumulator register."
+"Warn about code paths in which the wrong deallocation function is called."
 msgstr ""
 
-#: config/rx/rx.opt:29
+#: analyzer/analyzer.opt:159
 #, no-c-format
-msgid "Store doubles in 64 bits."
+msgid ""
+"Warn about code paths in which a write or read to a buffer is out-of-bounds."
 msgstr ""
 
-#: config/rx/rx.opt:33
+#: analyzer/analyzer.opt:163
 #, no-c-format
-msgid "Stores doubles in 32 bits.  This is the default."
+msgid ""
+"Warn about code paths in which undefined behavior would occur due to "
+"overlapping buffers."
 msgstr ""
 
-#: config/rx/rx.opt:37
+#: analyzer/analyzer.opt:167
 #, no-c-format
-msgid "Disable the use of RX FPU instructions."
+msgid ""
+"Warn about code paths in which a possibly-NULL value is passed to a must-not-"
+"be-NULL function argument."
 msgstr ""
 
-#: config/rx/rx.opt:44
+#: analyzer/analyzer.opt:171
 #, no-c-format
-msgid "Enable the use of RX FPU instructions.  This is the default."
+msgid "Warn about code paths in which a possibly-NULL pointer is dereferenced."
 msgstr ""
 
-#: config/rx/rx.opt:50
+#: analyzer/analyzer.opt:175
 #, no-c-format
-msgid "Specify the target RX cpu type."
+msgid ""
+"Warn about code paths in which an async-signal-unsafe function is called "
+"from a signal handler."
+msgstr ""
+
+#: analyzer/analyzer.opt:179
+#, no-c-format
+msgid ""
+"Warn about code paths in which NULL is passed to a must-not-be-NULL function "
+"argument."
 msgstr ""
 
-#: config/rx/rx.opt:71
+#: analyzer/analyzer.opt:183
 #, no-c-format
-msgid "Data is stored in big-endian format."
+msgid "Warn about code paths in which a NULL pointer is dereferenced."
 msgstr ""
 
-#: config/rx/rx.opt:75
+#: analyzer/analyzer.opt:187
 #, no-c-format
-msgid "Data is stored in little-endian format.  (Default)."
+msgid "Warn about code paths in which an on-stack buffer is passed to putenv."
 msgstr ""
 
-#: config/rx/rx.opt:81
+#: analyzer/analyzer.opt:191
 #, no-c-format
 msgid ""
-"Maximum size of global and static variables which can be placed into the "
-"small data area."
-msgstr ""
-
-#: config/rx/rx.opt:87
-#, no-c-format
-msgid "Enable linker relaxation."
+"Warn about code paths in which a shift with negative count is attempted."
 msgstr ""
 
-#: config/rx/rx.opt:93
+#: analyzer/analyzer.opt:195
 #, no-c-format
-msgid "Maximum size in bytes of constant values allowed as operands."
+msgid ""
+"Warn about code paths in which a shift with count >= width of type is "
+"attempted."
 msgstr ""
 
-#: config/rx/rx.opt:111
+#: analyzer/analyzer.opt:199
 #, no-c-format
-msgid "Enables Position-Independent-Data (PID) mode."
+msgid ""
+"Warn about code paths in which a longjmp rewinds to a jmp_buf saved in a "
+"stack frame that has returned."
 msgstr ""
 
-#: config/rx/rx.opt:117
+#: analyzer/analyzer.opt:203
 #, no-c-format
 msgid ""
-"Warn when multiple, different, fast interrupt handlers are in the "
-"compilation unit."
+"Warn about code paths in which an unsanitized value is used as an allocation "
+"size."
 msgstr ""
 
-#: config/rx/rx.opt:123
+#: analyzer/analyzer.opt:207
 #, no-c-format
 msgid ""
-"Enable the use of the old, broken, ABI where all stacked function arguments "
-"are aligned to 32-bits."
+"Warn about code paths in which an unsanitized value is used as an array "
+"index."
 msgstr ""
 
-#: config/rx/rx.opt:127
+#: analyzer/analyzer.opt:211
 #, no-c-format
 msgid ""
-"Enable the use the standard RX ABI where all stacked function arguments are "
-"naturally aligned.  This is the default."
+"Warn about code paths in which an 'assert()' is made involving an "
+"unsanitized value."
 msgstr ""
 
-#: config/rx/rx.opt:133
+#: analyzer/analyzer.opt:215
 #, no-c-format
-msgid "Enable the use of the LRA register allocator."
+msgid ""
+"Warn about code paths in which an unsanitized value is used as a divisor."
 msgstr ""
 
-#: config/rx/rx.opt:139
+#: analyzer/analyzer.opt:219
 #, no-c-format
 msgid ""
-"Enables or disables the use of the SMOVF, SMOVB, SMOVU, SUNTIL, SWHILE and "
-"RMPA instructions.  Enabled by default."
+"Warn about code paths in which an unsanitized value is used as a pointer "
+"offset."
 msgstr ""
 
-#: config/rx/rx.opt:145
+#: analyzer/analyzer.opt:223
 #, no-c-format
-msgid "Always use JSR, never BSR, for calls."
+msgid "Warn about code paths in which an unsanitized value is used as a size."
 msgstr ""
 
-#: config/visium/visium.opt:25
+#: analyzer/analyzer.opt:227
 #, no-c-format
-msgid "Link with libc.a and libdebug.a."
+msgid ""
+"Warn about code paths in which an exception of unexpected type is thrown."
 msgstr ""
 
-#: config/visium/visium.opt:29
+#: analyzer/analyzer.opt:231
 #, no-c-format
-msgid "Link with libc.a and libsim.a."
+msgid ""
+"Warn about code paths in which pointer subtraction involves undefined "
+"behavior."
 msgstr ""
 
-#: config/visium/visium.opt:33
+#: analyzer/analyzer.opt:235
 #, no-c-format
-msgid "Use hardware FP (default)."
+msgid ""
+"Warn about code paths in which a call is made to strtok with undefined "
+"behavior."
 msgstr ""
 
-#: config/visium/visium.opt:45
+#: analyzer/analyzer.opt:239
 #, no-c-format
-msgid "Use features of and schedule code for given CPU."
+msgid "Warn about code paths in which a freed value is used."
 msgstr ""
 
-#: config/visium/visium.opt:65
+#: analyzer/analyzer.opt:243
 #, no-c-format
-msgid "Generate code for the supervisor mode (default)."
+msgid ""
+"Warn about code paths in which a pointer to a stale stack frame is used."
 msgstr ""
 
-#: config/visium/visium.opt:69
+#: analyzer/analyzer.opt:247
 #, no-c-format
-msgid "Generate code for the user mode."
+msgid "Warn about code paths in which va_arg uses the wrong type."
 msgstr ""
 
-#: config/visium/visium.opt:73
+#: analyzer/analyzer.opt:251
 #, no-c-format
-msgid "Only retained for backward compatibility."
+msgid ""
+"Warn about code paths in which va_arg is used too many times on a va_list."
 msgstr ""
 
-#: config/sol2.opt:32
+#: analyzer/analyzer.opt:255
 #, no-c-format
-msgid "Clear hardware capabilities when linking."
+msgid ""
+"Warn about code paths in which va_start or va_copy is used without a "
+"corresponding va_end."
 msgstr ""
 
-#: config/sol2.opt:36
+#: analyzer/analyzer.opt:259
 #, no-c-format
-msgid "Pass -z text to linker."
+msgid "Warn about code paths in which a va_list is used after va_end."
 msgstr ""
 
-#: config/moxie/moxie.opt:31
+#: analyzer/analyzer.opt:263
 #, no-c-format
-msgid "Enable MUL.X and UMUL.X instructions."
+msgid "Warn about code paths which attempt to write to a const object."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:40
+#: analyzer/analyzer.opt:267
 #, no-c-format
-msgid "Use software emulation for floating point (default)."
+msgid "Warn about code paths which attempt to write to a string literal."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:44
+#: analyzer/analyzer.opt:271
 #, no-c-format
-msgid "Use hardware floating point instructions."
+msgid "Warn about code paths in which an uninitialized value is used."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:48
+#: analyzer/analyzer.opt:275
 #, no-c-format
-msgid "Use table lookup optimization for small signed integer divisions."
+msgid ""
+"Warn if expressions are too complicated for the analyzer to fully track."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:52
+#: analyzer/analyzer.opt:279
 #, no-c-format
-msgid "-mcpu=PROCESSOR\t\tUse features of and schedule code for given CPU."
+msgid "Warn if the code is too complicated for the analyzer to fully explore."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:56
+#: analyzer/analyzer.opt:283
 #, no-c-format
-msgid "Don't optimize block moves, use memcpy."
+msgid "Assume that no function calls can throw exceptions."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:68
+#: analyzer/analyzer.opt:287
 #, no-c-format
-msgid "Use the soft multiply emulation (default)."
+msgid "Restrict the analyzer to run just the named checker."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:72
+#: analyzer/analyzer.opt:291
 #, no-c-format
-msgid "Use reorder instructions (swap and byte reversed load/store) (default)."
+msgid "Add extra annotations to diagrams."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:76
+#: analyzer/analyzer.opt:299
 #, no-c-format
-msgid "Use the software emulation for divides (default)."
+msgid "Verify that paths are feasible when emitting diagnostics."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:80
+#: analyzer/analyzer.opt:303
 #, no-c-format
-msgid "Use the hardware barrel shifter instead of emulation."
+msgid "Issue a note when diagnostics are deduplicated."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:84
+#: analyzer/analyzer.opt:307
 #, no-c-format
-msgid "Use pattern compare instructions."
+msgid "Simplify the supergraph before analyzing it."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:88
+#: analyzer/analyzer.opt:311
 #, no-c-format
-msgid "Check for stack overflow at runtime."
+msgid "Purge unneeded state during analysis."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:92 config/iq2000/iq2000.opt:65
+#: analyzer/analyzer.opt:315
 #, no-c-format
-msgid "Use GP relative sdata/sbss sections."
+msgid "Merge similar-enough states during analysis."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:96
+#: analyzer/analyzer.opt:319
 #, no-c-format
-msgid "Clear the BSS to zero and place zero initialized in BSS."
+msgid "Stop exploring an execution path after certain diagnostics."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:100
+#: analyzer/analyzer.opt:323
 #, no-c-format
-msgid "Use multiply high instructions for high part of 32x32 multiply."
+msgid "Enable transitivity of constraints during analysis."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:104
+#: analyzer/analyzer.opt:327
 #, no-c-format
-msgid "Use hardware floating point conversion instructions."
+msgid "Show events within system headers in analyzer execution paths."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:108
+#: analyzer/analyzer.opt:331
 #, no-c-format
-msgid "Use hardware floating point square root instruction."
+msgid "Approximate the effect of function calls to simplify analysis."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:112
+#: analyzer/analyzer.opt:335
 #, no-c-format
-msgid "Description for mxl-mode-executable."
+msgid "Try to reconstruct function calls and returns after inlining."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:116
+#: analyzer/analyzer.opt:339
 #, no-c-format
-msgid "Description for mxl-mode-xmdstub."
+msgid "Emit more verbose descriptions of control flow in diagnostics."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:120
+#: analyzer/analyzer.opt:343
 #, no-c-format
-msgid "Description for mxl-mode-bootstrap."
+msgid "Emit more verbose descriptions of state changes in diagnostics."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:124
+#: analyzer/analyzer.opt:347
 #, no-c-format
-msgid "Description for mxl-mode-novectors."
+msgid "Control which events are displayed in diagnostic paths."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:128
+#: analyzer/analyzer.opt:351
 #, no-c-format
-msgid "Use hardware prefetch instruction."
+msgid "Dump various analyzer internals to SRCFILE.analyzer.txt."
 msgstr ""
 
-#: config/microblaze/microblaze.opt:132
+#: analyzer/analyzer.opt:355
 #, no-c-format
-msgid ""
-"Data referenced by offset from start of text instead of GOT (with -fPIC/-"
-"fPIE)."
+msgid "Dump various analyzer internals to stderr."
 msgstr ""
 
-#: config/vax/vax.opt:23 config/vax/vax.opt:27
+#: analyzer/analyzer.opt:363
 #, no-c-format
-msgid "Generate DFLOAT double-precision code."
+msgid "Dump the analyzer exploded graph to a SRCFILE.eg.dot file."
 msgstr ""
 
-#: config/vax/vax.opt:31 config/vax/vax.opt:35
+#: analyzer/analyzer.opt:367
 #, no-c-format
-msgid "Generate GFLOAT double-precision code."
+msgid "Emit diagnostics showing the location of nodes in the exploded graph."
 msgstr ""
 
-#: config/vax/vax.opt:39
+#: analyzer/analyzer.opt:371
 #, no-c-format
-msgid "Generate code for GNU assembler (gas)."
+msgid "Dump a textual representation of the exploded graph to SRCFILE.eg.txt."
 msgstr ""
 
-#: config/vax/vax.opt:43
+#: analyzer/analyzer.opt:375
 #, no-c-format
-msgid "Generate code for UNIX assembler."
+msgid ""
+"Dump a textual representation of the exploded graph to SRCFILE.eg-ID.txt."
 msgstr ""
 
-#: config/vax/vax.opt:47
+#: analyzer/analyzer.opt:379
 #, no-c-format
-msgid "Enable Local Register Allocation."
+msgid ""
+"Dump a textual representation of each diagnostic's exploded path to "
+"SRCFILE.IDX.KIND.epath.txt."
 msgstr ""
 
-#: config/vax/vax.opt:51
+#: analyzer/analyzer.opt:383
 #, no-c-format
-msgid "Use VAXC structure conventions."
+msgid ""
+"Dump various analyzer internals to SRCFILE.*.fg.dot and SRCFILE.*.tg.dot."
 msgstr ""
 
-#: config/vax/vax.opt:55
+#: analyzer/analyzer.opt:387
 #, no-c-format
-msgid "Use new adddi3/subdi3 patterns."
+msgid "Dump various analyzer internals to SRCFILE.*.infinite-loop.dot."
 msgstr ""
 
-#: config/frv/frv.opt:30
+#: analyzer/analyzer.opt:391
 #, no-c-format
-msgid "Use 4 media accumulators."
+msgid "Dump analyzer-specific data to a SRCFILE.analyzer.json.gz file."
 msgstr ""
 
-#: config/frv/frv.opt:34
+#: analyzer/analyzer.opt:395
 #, no-c-format
-msgid "Use 8 media accumulators."
+msgid "Dump state-purging information to a SRCFILE.state-purge.dot file."
 msgstr ""
 
-#: config/frv/frv.opt:38
+#: analyzer/analyzer.opt:399
 #, no-c-format
-msgid "Enable label alignment optimizations."
+msgid "Dump the analyzer supergraph to a SRCFILE.supergraph.dot file."
 msgstr ""
 
-#: config/frv/frv.opt:42
+#: analyzer/analyzer.opt:403
 #, no-c-format
-msgid "Dynamically allocate cc registers."
+msgid ""
+"Emit custom warnings with internal details intended for analyzer developers."
 msgstr ""
 
-#: config/frv/frv.opt:49
+#: common.opt:234
 #, no-c-format
-msgid "Set the cost of branches."
+msgid "Provide bash completion for options starting with provided string."
 msgstr ""
 
-#: config/frv/frv.opt:53
+#: common.opt:286
 #, no-c-format
-msgid "Enable conditional execution other than moves/scc."
+msgid "Display this information."
 msgstr ""
 
-#: config/frv/frv.opt:57
+#: common.opt:290
 #, no-c-format
-msgid "Change the maximum length of conditionally-executed sequences."
+msgid ""
+"--help=<class>\tDisplay descriptions of a specific class of options.  "
+"<class> is one or more of optimizers, target, warnings, undocumented, params."
 msgstr ""
 
-#: config/frv/frv.opt:61
+#: common.opt:411
 #, no-c-format
 msgid ""
-"Change the number of temporary registers that are available to conditionally-"
-"executed sequences."
+"Display target specific command line options (including assembler and linker "
+"options)."
 msgstr ""
 
-#: config/frv/frv.opt:65
+#: common.opt:460 common.opt:502 common.opt:506 common.opt:510 common.opt:514
+#: common.opt:518 common.opt:522 common.opt:526 common.opt:943 common.opt:3861
+#: common.opt:3956 common.opt:4070
 #, no-c-format
-msgid "Enable conditional moves."
+msgid "Passed to the linker."
 msgstr ""
 
-#: config/frv/frv.opt:69
+#: common.opt:464
 #, no-c-format
-msgid "Set the target CPU type."
+msgid "-O<number>\tSet optimization level to <number>."
 msgstr ""
 
-#: config/frv/frv.opt:73
+#: common.opt:468
 #, no-c-format
-msgid "Known FR-V CPUs (for use with the -mcpu= option):"
+msgid "Optimize for space rather than speed."
 msgstr ""
 
-#: config/frv/frv.opt:122
+#: common.opt:472
 #, no-c-format
-msgid "Use fp double instructions."
+msgid "Optimize for speed disregarding exact standards compliance."
 msgstr ""
 
-#: config/frv/frv.opt:126
+#: common.opt:476
 #, no-c-format
-msgid "Change the ABI to allow double word insns."
+msgid "Optimize for debugging experience rather than speed or size."
 msgstr ""
 
-#: config/frv/frv.opt:134
+#: common.opt:480
 #, no-c-format
-msgid "Just use icc0/fcc0."
+msgid "Optimize for space aggressively rather than speed."
 msgstr ""
 
-#: config/frv/frv.opt:138
+#: common.opt:485
 #, no-c-format
-msgid "Only use 32 FPRs."
+msgid ""
+"-Q --help prints what options are enabled.  Just -Q enables verbose messages."
 msgstr ""
 
-#: config/frv/frv.opt:142
+#: common.opt:498
 #, no-c-format
-msgid "Use 64 FPRs."
+msgid "Stop processing after generating assembly code; do not assemble."
 msgstr ""
 
-#: config/frv/frv.opt:146
+#: common.opt:530
 #, no-c-format
-msgid "Only use 32 GPRs."
+msgid "This switch is deprecated; use -Wextra instead."
 msgstr ""
 
-#: config/frv/frv.opt:150
+#: common.opt:543
 #, no-c-format
-msgid "Use 64 GPRs."
+msgid "Warn about returning structures, unions or arrays."
 msgstr ""
 
-#: config/frv/frv.opt:154
+#: common.opt:547
 #, no-c-format
-msgid "Enable use of GPREL for read-only data in FDPIC."
+msgid ""
+"Warn if a loop with constant number of iterations triggers undefined "
+"behavior."
 msgstr ""
 
-#: config/frv/frv.opt:166
+#: common.opt:554
 #, no-c-format
-msgid "Enable PIC support for building libraries."
+msgid "Warn if an array is accessed out of bounds."
 msgstr ""
 
-#: config/frv/frv.opt:170
+#: common.opt:558
 #, no-c-format
-msgid "Follow the EABI linkage requirements."
+msgid "Warn about problems with auto-profile data."
 msgstr ""
 
-#: config/frv/frv.opt:174
+#: common.opt:562 common.opt:566
 #, no-c-format
-msgid "Disallow direct calls to global functions."
+msgid "Warn for uses of pointers to deallocated storage."
 msgstr ""
 
-#: config/frv/frv.opt:178
+#: common.opt:570
 #, no-c-format
-msgid "Use media instructions."
+msgid "Warn about inappropriate attribute usage."
 msgstr ""
 
-#: config/frv/frv.opt:182
+#: common.opt:574
 #, no-c-format
-msgid "Use multiply add/subtract instructions."
+msgid "Do not warn about specified attributes."
 msgstr ""
 
-#: config/frv/frv.opt:186
+#: common.opt:578 common.opt:582
 #, no-c-format
-msgid "Enable optimizing &&/|| in conditional execution."
+msgid ""
+"Warn about type safety and similar errors and mismatches in declarations "
+"with alias attributes."
 msgstr ""
 
-#: config/frv/frv.opt:190
+#: common.opt:586
 #, no-c-format
-msgid "Enable nested conditional execution optimizations."
+msgid ""
+"Warn when profiling instrumentation was requested, but could not be applied "
+"to a certain function."
 msgstr ""
 
-#: config/frv/frv.opt:195
+#: common.opt:591 common.opt:595
 #, no-c-format
-msgid "Do not mark ABI switches in e_flags."
+msgid "Warn about pointer casts which increase alignment."
 msgstr ""
 
-#: config/frv/frv.opt:199
+#: common.opt:599
 #, no-c-format
-msgid "Remove redundant membars."
+msgid ""
+"Complain when a command-line option is valid, but not applicable to the "
+"current front end."
 msgstr ""
 
-#: config/frv/frv.opt:203
+#: common.opt:603
 #, no-c-format
-msgid "Pack VLIW instructions."
+msgid "Warn when a #warning directive is encountered."
 msgstr ""
 
-#: config/frv/frv.opt:207
+#: common.opt:607
 #, no-c-format
-msgid "Enable setting GPRs to the result of comparisons."
+msgid "Warn about uses of __attribute__((warning)) declarations."
 msgstr ""
 
-#: config/frv/frv.opt:211
+#: common.opt:611
 #, no-c-format
-msgid "Change the amount of scheduler lookahead."
+msgid "Warn if a deprecated compiler feature, class, method, or field is used."
 msgstr ""
 
-#: config/frv/frv.opt:219
+#: common.opt:615
 #, no-c-format
-msgid "Assume a large TLS segment."
+msgid "Warn about uses of __attribute__((deprecated)) declarations."
 msgstr ""
 
-#: config/frv/frv.opt:223
+#: common.opt:619
 #, no-c-format
-msgid "Do not assume a large TLS segment."
+msgid "Warn when an optimization pass is disabled."
 msgstr ""
 
-#: config/frv/frv.opt:228
+#: common.opt:623
 #, no-c-format
-msgid "Cause gas to print tomcat statistics."
+msgid "Turn all warnings into errors."
 msgstr ""
 
-#: config/frv/frv.opt:233
+#: common.opt:627
 #, no-c-format
-msgid "Link with the library-pic libraries."
+msgid "Turn the specified warning into an error."
 msgstr ""
 
-#: config/frv/frv.opt:237
+#: common.opt:631
 #, no-c-format
-msgid "Allow branches to be packed with other instructions."
+msgid "Print extra (possibly unwanted) warnings."
 msgstr ""
 
-#: config/mn10300/mn10300.opt:30
+#: common.opt:635
 #, no-c-format
-msgid "Target the AM33 processor."
+msgid "Exit on the first error occurred."
 msgstr ""
 
-#: config/mn10300/mn10300.opt:34
+#: common.opt:639
 #, no-c-format
-msgid "Target the AM33/2.0 processor."
+msgid ""
+"-Wframe-larger-than=<byte-size>\tWarn if a function's stack frame requires "
+"in excess of <byte-size>."
 msgstr ""
 
-#: config/mn10300/mn10300.opt:38
+#: common.opt:643
 #, no-c-format
-msgid "Target the AM34 processor."
+msgid ""
+"Disable -Wframe-larger-than= warning.  Equivalent to -Wframe-larger-"
+"than=<SIZE_MAX> or larger."
 msgstr ""
 
-#: config/mn10300/mn10300.opt:46
+#: common.opt:647
 #, no-c-format
-msgid "Work around hardware multiply bug."
+msgid "Warn when attempting to free a non-heap object."
 msgstr ""
 
-#: config/mn10300/mn10300.opt:55
+#: common.opt:651
 #, no-c-format
-msgid "Enable linker relaxations."
+msgid "Warn when -fhardened did not enable an option from its set."
 msgstr ""
 
-#: config/mn10300/mn10300.opt:59
+#: common.opt:662
 #, no-c-format
-msgid "Return pointers in both a0 and d0."
+msgid "Warn when a switch case falls through."
 msgstr ""
 
-#: config/mn10300/mn10300.opt:63
+#: common.opt:666 rust/lang.opt:59 c-family/c.opt:919
 #, no-c-format
-msgid "Allow gcc to generate LIW instructions."
+msgid "Warn for infinitely recursive calls."
 msgstr ""
 
-#: config/mn10300/mn10300.opt:67
+#: common.opt:670
 #, no-c-format
-msgid "Allow gcc to generate the SETLB and Lcc instructions."
+msgid "Warn when an inlined function cannot be inlined."
 msgstr ""
 
-#: config/nds32/nds32-elf.opt:3 config/nds32/nds32-linux.opt:3
+#: common.opt:674
 #, no-c-format
-msgid "Specify the address generation strategy for code model."
+msgid ""
+"Warn when an atomic memory model parameter is known to be outside the valid "
+"range."
 msgstr ""
 
-#: config/nds32/nds32-elf.opt:7 config/nds32/nds32-linux.opt:7
+#: common.opt:681
 #, no-c-format
-msgid "Known cmodel types (for use with the -mcmodel= option):"
+msgid ""
+"-Wlarger-than=<byte-size>\tWarn if an object's size exceeds <byte-size>."
 msgstr ""
 
-#: config/nds32/nds32.opt:29 config/nds32/nds32.opt:89
+#: common.opt:685
 #, no-c-format
-msgid "Generate code in big-endian mode."
+msgid ""
+"Disable -Wlarger-than= warning.  Equivalent to -Wlarger-than=<SIZE_MAX> or "
+"larger."
 msgstr ""
 
-#: config/nds32/nds32.opt:33 config/nds32/nds32.opt:93
+#: common.opt:689
 #, no-c-format
-msgid "Generate code in little-endian mode."
+msgid "Warn if comparing pointer parameter with nonnull attribute with NULL."
 msgstr ""
 
-#: config/nds32/nds32.opt:37
+#: common.opt:693
 #, no-c-format
-msgid "Force performing fp-as-gp optimization."
+msgid ""
+"Warn if dereferencing a NULL pointer may lead to erroneous or undefined "
+"behavior."
 msgstr ""
 
-#: config/nds32/nds32.opt:41
+#: common.opt:704
 #, no-c-format
-msgid "Forbid performing fp-as-gp optimization."
+msgid ""
+"Warn about passing a pointer/reference to a local or temporary variable to a "
+"musttail call argument."
 msgstr ""
 
-#: config/nds32/nds32.opt:47
+#: common.opt:708
 #, no-c-format
-msgid "Specify which ABI type to generate code for: 2, 2fp+."
+msgid ""
+"Warn about pointer/reference to a local or temporary variable possibly "
+"escaping to a musttail call."
 msgstr ""
 
-#: config/nds32/nds32.opt:61
+#: common.opt:712
 #, no-c-format
-msgid "Specify use soft floating point ABI which mean alias to -mabi=2."
+msgid ""
+"Warn about some C++ One Definition Rule violations during link time "
+"optimization."
 msgstr ""
 
-#: config/nds32/nds32.opt:65
+#: common.opt:716
 #, no-c-format
-msgid "Specify use soft floating point ABI which mean alias to -mabi=2fp+."
+msgid "Warn about overflow in arithmetic expressions."
 msgstr ""
 
-#: config/nds32/nds32.opt:71
+#: common.opt:720
 #, no-c-format
-msgid "Use reduced-set registers for register allocation."
+msgid ""
+"During link time optimization warn about mismatched types of global "
+"declarations."
 msgstr ""
 
-#: config/nds32/nds32.opt:75
+#: common.opt:724
 #, no-c-format
-msgid "Use full-set registers for register allocation."
+msgid "Warn when the packed attribute has no effect on struct layout."
 msgstr ""
 
-#: config/nds32/nds32.opt:81
+#: common.opt:728
 #, no-c-format
-msgid "Always align function entry, jump target and return address."
+msgid "Warn when padding is required to align structure members."
 msgstr ""
 
-#: config/nds32/nds32.opt:85
+#: common.opt:732
 #, no-c-format
-msgid "Align function entry to 4 byte."
+msgid "Issue warnings needed for strict compliance to the standard."
 msgstr ""
 
-#: config/nds32/nds32.opt:97
+#: common.opt:736
 #, no-c-format
 msgid ""
-"Prevent $fp being allocated during register allocation so that compiler is "
-"able to force performing fp-as-gp optimization."
+"Warn about returning a pointer/reference to a local or temporary variable."
 msgstr ""
 
-#: config/nds32/nds32.opt:101
+#: common.opt:740
 #, no-c-format
-msgid ""
-"Forbid using $fp to access static and global variables.  This option "
-"strictly forbids fp-as-gp optimization regardless of '-mforce-fp-as-gp'."
+msgid "Warn when one variable shadows another.  Same as -Wshadow=global."
 msgstr ""
 
-#: config/nds32/nds32.opt:105
+#: common.opt:744
 #, no-c-format
-msgid "Specify the address generation strategy for ICT call's code model."
+msgid "Warn when one variable shadows another (globally)."
 msgstr ""
 
-#: config/nds32/nds32.opt:109
+#: common.opt:748
 #, no-c-format
-msgid "Known cmodel types (for use with the -mict-model= option):"
+msgid ""
+"Warn when one local variable shadows another local variable or parameter."
 msgstr ""
 
-#: config/nds32/nds32.opt:119
+#: common.opt:755
 #, no-c-format
-msgid "Generate conditional move instructions."
+msgid ""
+"Warn when one local variable shadows another local variable or parameter of "
+"compatible type."
 msgstr ""
 
-#: config/nds32/nds32.opt:123
+#: common.opt:762
 #, no-c-format
-msgid "Generate hardware abs instructions."
+msgid "Warn when not issuing stack smashing protection for some reason."
 msgstr ""
 
-#: config/nds32/nds32.opt:127
+#: common.opt:766
 #, no-c-format
-msgid "Generate performance extension instructions."
+msgid ""
+"-Wstack-usage=<byte-size>\tWarn if stack usage might exceed <byte-size>."
 msgstr ""
 
-#: config/nds32/nds32.opt:131
+#: common.opt:770
 #, no-c-format
-msgid "Generate performance extension version 2 instructions."
+msgid ""
+"Disable Wstack-usage= warning.  Equivalent to Wstack-usage=<SIZE_MAX> or "
+"larger."
 msgstr ""
 
-#: config/nds32/nds32.opt:135
+#: common.opt:774 common.opt:778
 #, no-c-format
-msgid "Generate string extension instructions."
+msgid "Warn about code which might break strict aliasing rules."
 msgstr ""
 
-#: config/nds32/nds32.opt:139
+#: common.opt:782 common.opt:786
 #, no-c-format
-msgid "Generate DSP extension instructions."
+msgid "Warn about optimizations that assume that signed overflow is undefined."
 msgstr ""
 
-#: config/nds32/nds32.opt:143
+#: common.opt:790
 #, no-c-format
-msgid "Generate v3 push25/pop25 instructions."
+msgid ""
+"Warn about functions which might be candidates for __attribute__((cold))."
 msgstr ""
 
-#: config/nds32/nds32.opt:147
+#: common.opt:794
 #, no-c-format
-msgid "Generate 16-bit instructions."
+msgid ""
+"Warn about functions which might be candidates for __attribute__((const))."
 msgstr ""
 
-#: config/nds32/nds32.opt:151
+#: common.opt:798
 #, no-c-format
-msgid "Insert relax hint for linker to do relaxation."
+msgid ""
+"Warn about functions which might be candidates for __attribute__((pure))."
 msgstr ""
 
-#: config/nds32/nds32.opt:155
+#: common.opt:802
 #, no-c-format
-msgid "Enable Virtual Hosting support."
+msgid ""
+"Warn about functions which might be candidates for __attribute__((noreturn))."
 msgstr ""
 
-#: config/nds32/nds32.opt:159
+#: common.opt:806
 #, no-c-format
-msgid "Specify the size of each interrupt vector, which must be 4 or 16."
+msgid ""
+"Warn about functions which might be candidates for __attribute__((malloc))."
 msgstr ""
 
-#: config/nds32/nds32.opt:163
+#: common.opt:810
 #, no-c-format
-msgid "Specify the security level of c-isr for the whole file."
+msgid ""
+"Warn about functions which might be candidates for "
+"__attribute__((returns_nonnull))."
 msgstr ""
 
-#: config/nds32/nds32.opt:167
+#: common.opt:814
 #, no-c-format
 msgid ""
-"Specify the size of each cache block, which must be a power of 2 between 4 "
-"and 512."
+"Warn about C++ polymorphic types where adding final keyword would improve "
+"code quality."
 msgstr ""
 
-#: config/nds32/nds32.opt:175
+#: common.opt:818
 #, no-c-format
-msgid "Known arch types (for use with the -march= option):"
+msgid ""
+"Warn about C++ virtual methods where adding final keyword would improve code "
+"quality."
 msgstr ""
 
-#: config/nds32/nds32.opt:197
+#: common.opt:822
 #, no-c-format
-msgid "Specify the cpu for pipeline model."
+msgid ""
+"Warn about statements between switch's controlling expression and the first "
+"case."
 msgstr ""
 
-#: config/nds32/nds32.opt:201
+#: common.opt:827
 #, no-c-format
-msgid "Known cpu types (for use with the -mcpu= option):"
+msgid "Do not suppress warnings from system headers."
 msgstr ""
 
-#: config/nds32/nds32.opt:361
+#: common.opt:831
 #, no-c-format
-msgid ""
-"Specify a fpu configuration value from 0 to 7; 0-3 is as FPU spec says, and "
-"4-7 is corresponding to 0-3."
+msgid "Warn if a comparison always evaluates to true or false."
 msgstr ""
 
-#: config/nds32/nds32.opt:365
+#: common.opt:835
+#, no-c-format
+msgid "Warn whenever a trampoline is generated."
+msgstr ""
+
+#: common.opt:839
 #, no-c-format
 msgid ""
-"Known floating-point number of registers (for use with the -mconfig-fpu= "
-"option):"
+"Warn about cases where -ftrivial-auto-var-init cannot initialize an auto "
+"variable."
 msgstr ""
 
-#: config/nds32/nds32.opt:393
+#: common.opt:843
 #, no-c-format
 msgid ""
-"Specify configuration of instruction mul: fast1, fast2 or slow. The default "
-"is fast1."
+"Warn if a comparison is always true or always false due to the limited range "
+"of the data type."
 msgstr ""
 
-#: config/nds32/nds32.opt:412
+#: common.opt:847
 #, no-c-format
-msgid ""
-"Specify how many read/write ports for n9/n10 cores.  The value should be "
-"3r2w or 2r1w."
+msgid "Warn about uninitialized automatic variables."
 msgstr ""
 
-#: config/nds32/nds32.opt:425
+#: common.opt:851
 #, no-c-format
-msgid "Enable constructor/destructor feature."
+msgid "Warn about maybe uninitialized automatic variables."
 msgstr ""
 
-#: config/nds32/nds32.opt:429
+#: common.opt:859
 #, no-c-format
-msgid "Guide linker to relax instructions."
+msgid "Enable all -Wunused- warnings."
 msgstr ""
 
-#: config/nds32/nds32.opt:433
+#: common.opt:866
 #, no-c-format
-msgid "Generate floating-point multiply-accumulation instructions."
+msgid "Warn when a function parameter is only set, otherwise unused."
 msgstr ""
 
-#: config/nds32/nds32.opt:437
+#: common.opt:873
 #, no-c-format
-msgid "Generate single-precision floating-point instructions."
+msgid "Warn when a variable is only set, otherwise unused."
 msgstr ""
 
-#: config/nds32/nds32.opt:441
+#: common.opt:877
 #, no-c-format
-msgid "Generate double-precision floating-point instructions."
+msgid "Warn when a function is unused."
 msgstr ""
 
-#: config/nds32/nds32.opt:445
+#: common.opt:881
 #, no-c-format
-msgid "Force disable hardware loop, even use -mext-dsp."
+msgid "Warn when a label is unused."
 msgstr ""
 
-#: config/nds32/nds32.opt:449
+#: common.opt:885
 #, no-c-format
-msgid "Permit scheduling of a function's prologue and epilogue sequence."
+msgid "Warn when a function parameter is unused."
 msgstr ""
 
-#: config/nds32/nds32.opt:453
+#: common.opt:889
 #, no-c-format
-msgid "Generate return instruction in naked function."
+msgid "Warn when an expression value is unused."
 msgstr ""
 
-#: config/nds32/nds32.opt:457
+#: common.opt:893
 #, no-c-format
-msgid "Always save $lp in the stack."
+msgid "Warn when a variable is unused."
 msgstr ""
 
-#: config/nds32/nds32.opt:465
+#: common.opt:897
 #, no-c-format
-msgid "Allow use r15 for inline ASM."
+msgid "Warn in case profiles in -fprofile-use do not match."
 msgstr ""
 
-#: config/iq2000/iq2000.opt:31
+#: common.opt:901
 #, no-c-format
-msgid "Specify CPU for code generation purposes."
+msgid ""
+"Warn in case a function ends earlier than it begins due to an invalid "
+"linenum macros."
 msgstr ""
 
-#: config/iq2000/iq2000.opt:47
+#: common.opt:905
 #, no-c-format
-msgid "Specify CPU for scheduling purposes."
+msgid ""
+"Warn when a conditional has too many terms and condition coverage profiling "
+"gives up instrumenting the expression."
 msgstr ""
 
-#: config/iq2000/iq2000.opt:51
+#: common.opt:910
 #, no-c-format
-msgid "Known IQ2000 CPUs (for use with the -mcpu= option):"
+msgid ""
+"-fpath-coverage-limit=<number> Don't instrument functions path count "
+"exceeding <number>."
 msgstr ""
 
-#: config/iq2000/iq2000.opt:61 config/mips/mips.opt:142
+#: common.opt:915
 #, no-c-format
-msgid "Use ROM instead of RAM."
+msgid ""
+"Warn if a function exceeds the number of paths (controlled by -fpath-"
+"coverage-limit) and path coverage give up instrumenting the function. The "
+"limit is approximate and conservative and coverage might give up even if the "
+"actual number is slightly below the limit."
 msgstr ""
 
-#: config/iq2000/iq2000.opt:70
+#: common.opt:922
 #, no-c-format
-msgid "No default crt0.o."
+msgid "Warn in case profiles in -fprofile-use do not exist."
 msgstr ""
 
-#: config/iq2000/iq2000.opt:74 config/mips/mips.opt:442
+#: common.opt:926
 #, no-c-format
-msgid "Put uninitialized constants in ROM (needs -membedded-data)."
+msgid "Warn when a vector operation is compiled outside the SIMD."
 msgstr ""
 
-#: config/csky/csky.opt:34
+#: common.opt:930
 #, no-c-format
-msgid "Specify the target architecture."
+msgid "Warn about unsupported features in ThreadSanitizer."
 msgstr ""
 
-#: config/csky/csky.opt:38
+#: common.opt:947
 #, no-c-format
-msgid "Specify the target processor."
+msgid "-aux-info <file>\tEmit declaration information into <file>."
 msgstr ""
 
-#: config/csky/csky.opt:90
+#: common.opt:960
 #, no-c-format
-msgid "Specify the target floating-point hardware/format."
+msgid "-d<letters>\tEnable dumps from specific passes of the compiler."
 msgstr ""
 
-#: config/csky/csky.opt:94
+#: common.opt:964
 #, no-c-format
-msgid "Generate C-SKY FPU double float instructions (default for hard float)."
+msgid "-dumpbase <file>\tSet the file basename to be used for dumps."
 msgstr ""
 
-#: config/csky/csky.opt:98
+#: common.opt:968
 #, no-c-format
-msgid "Generate frecipd/fsqrtd/fdivd instructions (default for hard float)."
+msgid ""
+"-dumpbase-ext .<ext>    Drop a trailing .<ext> from the dump basename to "
+"name auxiliary output files."
 msgstr ""
 
-#: config/csky/csky.opt:106
+#: common.opt:972
 #, no-c-format
-msgid "Enable the extended LRW instruction (default for CK801)."
+msgid "-dumpdir <dir>\tSet the directory name to be used for dumps."
 msgstr ""
 
-#: config/csky/csky.opt:110
+#: common.opt:1087
 #, no-c-format
-msgid "Enable interrupt stack instructions."
+msgid "The version of the C++ ABI in use."
 msgstr ""
 
-#: config/csky/csky.opt:114
+#: common.opt:1091
 #, no-c-format
-msgid "Enable multiprocessor instructions."
+msgid "Aggressively optimize loops using language constraints."
 msgstr ""
 
-#: config/csky/csky.opt:118
+#: common.opt:1095
 #, no-c-format
-msgid "Enable coprocessor instructions."
+msgid "Align the start of functions."
 msgstr ""
 
-#: config/csky/csky.opt:122
+#: common.opt:1102
 #, no-c-format
-msgid "Enable cache prefetch instructions."
+msgid "Align labels which are only reached by jumping."
 msgstr ""
 
-#: config/csky/csky.opt:126
+#: common.opt:1109
 #, no-c-format
-msgid "Enable C-SKY SECURE instructions."
+msgid "Align all labels."
 msgstr ""
 
-#: config/csky/csky.opt:133
+#: common.opt:1116
 #, no-c-format
-msgid "Enable C-SKY TRUST instructions."
+msgid "Align the start of loops."
 msgstr ""
 
-#: config/csky/csky.opt:137
+#: common.opt:1123
 #, no-c-format
-msgid "Enable C-SKY DSP instructions."
+msgid "Allow the compiler to introduce new data races on stores."
 msgstr ""
 
-#: config/csky/csky.opt:141
+#: common.opt:1127
 #, no-c-format
-msgid "Enable C-SKY Enhanced DSP instructions."
+msgid "Enable static analysis pass."
 msgstr ""
 
-#: config/csky/csky.opt:145
+#: common.opt:1147
 #, no-c-format
-msgid "Enable C-SKY Vector DSP instructions."
+msgid "Select what to sanitize."
 msgstr ""
 
-#: config/csky/csky.opt:151
+#: common.opt:1151
 #, no-c-format
-msgid "Generate divide instructions."
+msgid "Select type of coverage sanitization."
 msgstr ""
 
-#: config/csky/csky.opt:155
+#: common.opt:1164
 #, no-c-format
-msgid "Generate code for Smart Mode."
+msgid "-fasan-shadow-offset=<number>\tUse custom shadow memory offset."
 msgstr ""
 
-#: config/csky/csky.opt:159
+#: common.opt:1168
 #, no-c-format
-msgid "Enable use of R16-R31 (default)."
+msgid ""
+"-fsanitize-sections=<sec1,sec2,...>\tSanitize global variables in user-"
+"defined sections."
 msgstr ""
 
-#: config/csky/csky.opt:163
+#: common.opt:1173
 #, no-c-format
-msgid "Generate code using global anchor symbol addresses."
+msgid "After diagnosing undefined behavior attempt to continue execution."
 msgstr ""
 
-#: config/csky/csky.opt:167
+#: common.opt:1177
 #, no-c-format
-msgid "Generate push/pop instructions (default)."
+msgid "This switch is deprecated; use -fsanitize-recover= instead."
 msgstr ""
 
-#: config/csky/csky.opt:171
+#: common.opt:1181
 #, no-c-format
-msgid "Generate stm/ldm instructions (default)."
+msgid "Use traps instead of diagnostics of undefined behavior sanitizers."
 msgstr ""
 
-#: config/csky/csky.opt:178
+#: common.opt:1191
 #, no-c-format
-msgid "Generate constant pools in the compiler instead of assembler."
+msgid "This switch is deprecated; use -fsanitize-trap= instead."
 msgstr ""
 
-#: config/csky/csky.opt:182
+#: common.opt:1195
 #, no-c-format
-msgid "Emit .stack_size directives."
+msgid "Generate unwind tables that are exact at each instruction boundary."
 msgstr ""
 
-#: config/csky/csky.opt:186
+#: common.opt:1199
 #, no-c-format
-msgid "Generate code for C-SKY compiler runtime instead of libgcc."
+msgid "Generate auto-inc/dec instructions."
 msgstr ""
 
-#: config/csky/csky.opt:190
+#: common.opt:1203
 #, no-c-format
-msgid "Set the branch costs to roughly the specified number of instructions."
+msgid ""
+"Use sample profile information for call graph node weights. The default "
+"profile file is fbdata.afdo in 'pwd'."
 msgstr ""
 
-#: config/csky/csky.opt:194
+#: common.opt:1208
 #, no-c-format
-msgid "Permit scheduling of function prologue and epilogue sequences."
+msgid ""
+"Use sample profile information for call graph node weights. The profile file "
+"is specified in the argument."
 msgstr ""
 
-#: config/csky/csky_tables.opt:24
+#: common.opt:1213
 #, no-c-format
-msgid "Known CSKY CPUs (for use with the -mcpu= options):"
+msgid "Perform inlining using auto-profile."
 msgstr ""
 
-#: config/csky/csky_tables.opt:205
+#: common.opt:1221
 #, no-c-format
-msgid "Known CSKY architectures (for use with the -march= option):"
+msgid "Generate code to check bounds before indexing arrays."
 msgstr ""
 
-#: config/csky/csky_tables.opt:227
+#: common.opt:1225
 #, no-c-format
-msgid "Known CSKY FPUs (for use with the -mfpu= option):"
+msgid "Replace add, compare, branch with branch on count register."
 msgstr ""
 
-#: config/c6x/c6x-tables.opt:24
+#: common.opt:1229
 #, no-c-format
-msgid "Known C6X ISAs (for use with the -march= option):"
+msgid "Use profiling information for branch probabilities."
 msgstr ""
 
-#: config/c6x/c6x.opt:30 config/mips/mips.opt:134
+#: common.opt:1245
 #, no-c-format
-msgid "Use big-endian byte order."
+msgid "Output callgraph information on a per-file basis."
 msgstr ""
 
-#: config/c6x/c6x.opt:34 config/mips/mips.opt:138
+#: common.opt:1249
 #, no-c-format
-msgid "Use little-endian byte order."
+msgid "Output callgraph information on a per-file basis with decorations."
 msgstr ""
 
-#: config/c6x/c6x.opt:42
+#: common.opt:1253
 #, no-c-format
-msgid "Select method for sdata handling."
+msgid ""
+"-fcall-saved-<register>\tMark <register> as being preserved across functions."
 msgstr ""
 
-#: config/c6x/c6x.opt:46
+#: common.opt:1257
 #, no-c-format
-msgid "Valid arguments for the -msdata= option:"
+msgid ""
+"-fcall-used-<register>\tMark <register> as being corrupted by function calls."
 msgstr ""
 
-#: config/c6x/c6x.opt:59
+#: common.opt:1264
 #, no-c-format
-msgid "Compile for the DSBT shared library ABI."
+msgid "Save registers around function calls."
 msgstr ""
 
-#: config/cris/cris.opt:45
+#: common.opt:1268
 #, no-c-format
-msgid "Work around bug in multiplication instruction."
+msgid "This switch is deprecated; do not use."
 msgstr ""
 
-#: config/cris/cris.opt:51
+#: common.opt:1272
 #, no-c-format
-msgid "Compile for ETRAX 4 (CRIS v3)."
+msgid "Check the return value of new in C++."
 msgstr ""
 
-#: config/cris/cris.opt:56
+#: common.opt:1276 common.opt:1280
 #, no-c-format
-msgid "Compile for ETRAX 100 (CRIS v8)."
+msgid "Perform internal consistency checkings."
 msgstr ""
 
-#: config/cris/cris.opt:64
+#: common.opt:1284
 #, no-c-format
-msgid "Emit verbose debug information in assembly code."
+msgid ""
+"For -f*-prefix-map= options compare canonicalized pathnames rather than just "
+"strings."
 msgstr ""
 
-#: config/cris/cris.opt:71
+#: common.opt:1288
 #, no-c-format
-msgid "Do not use condition codes from normal instructions."
+msgid "Enable code hoisting."
 msgstr ""
 
-#: config/cris/cris.opt:80
+#: common.opt:1292
 #, no-c-format
-msgid "Do not emit addressing modes with side-effect assignment."
+msgid ""
+"Looks for opportunities to reduce stack adjustments and stack references."
 msgstr ""
 
-#: config/cris/cris.opt:89
+#: common.opt:1296
 #, no-c-format
-msgid "Do not tune stack alignment."
+msgid "Put uninitialized globals in the common section."
 msgstr ""
 
-#: config/cris/cris.opt:98
+#: common.opt:1304
 #, no-c-format
-msgid "Do not tune writable data alignment."
+msgid ""
+"-fcompare-debug[=<opts>]\tCompile with and without e.g. -gtoggle, and "
+"compare the final-insns dump."
 msgstr ""
 
-#: config/cris/cris.opt:107
+#: common.opt:1308
 #, no-c-format
-msgid "Do not tune code and read-only data alignment."
+msgid "Run only the second compilation of -fcompare-debug."
 msgstr ""
 
-#: config/cris/cris.opt:116
+#: common.opt:1312
 #, no-c-format
-msgid "Align code and data to 32 bits."
+msgid "Perform comparison elimination after register allocation has finished."
 msgstr ""
 
-#: config/cris/cris.opt:133
+#: common.opt:1316
 #, no-c-format
-msgid "Don't align items in code or data."
+msgid "Do not perform optimizations increasing noticeably stack usage."
 msgstr ""
 
-#: config/cris/cris.opt:142
+#: common.opt:1320
 #, no-c-format
-msgid "Do not emit function prologue or epilogue."
+msgid "Perform a register copy-propagation optimization pass."
 msgstr ""
 
-#: config/cris/cris.opt:149
+#: common.opt:1324
 #, no-c-format
-msgid "Use the most feature-enabling options allowed by other options."
+msgid ""
+"Fold instructions calculating memory offsets to the memory access "
+"instruction if possible."
 msgstr ""
 
-#: config/cris/cris.opt:158
+#: common.opt:1328
 #, no-c-format
-msgid "Override -mbest-lib-options."
+msgid "Perform cross-jumping optimization."
 msgstr ""
 
-#: config/cris/cris.opt:165
+#: common.opt:1332
 #, no-c-format
-msgid "-march=ARCH\tGenerate code for the specified chip or CPU version."
+msgid "When running CSE, follow jumps to their targets."
 msgstr ""
 
-#: config/cris/cris.opt:169
+#: common.opt:1358
 #, no-c-format
-msgid "-mtune=ARCH\tTune alignment for the specified chip or CPU version."
+msgid "Omit range reduction step when performing complex division."
 msgstr ""
 
-#: config/cris/cris.opt:173
+#: common.opt:1362
 #, no-c-format
-msgid ""
-"-mmax-stackframe=SIZE\tWarn when a stackframe is larger than the specified "
-"size."
+msgid "Complex multiplication and division follow Fortran rules."
 msgstr ""
 
-#: config/cris/cris.opt:180
+#: common.opt:1366
 #, no-c-format
-msgid ""
-"Emit traps as \"break 8\", default for CRIS v3 and up.  If disabled, calls "
-"to abort() are used."
+msgid "Place data items into their own section."
 msgstr ""
 
-#: config/cris/cris.opt:184
+#: common.opt:1370
 #, no-c-format
-msgid ""
-"Emit checks causing \"break 8\" instructions to execute when applying atomic "
-"builtins on misaligned memory."
+msgid "List all available debugging counters with their limits and counts."
 msgstr ""
 
-#: config/cris/cris.opt:188
+#: common.opt:1374
 #, no-c-format
 msgid ""
-"Handle atomic builtins that may be applied to unaligned data by calling "
-"library functions. Overrides -mtrap-unaligned-atomic."
+"-fdbg-cnt=<counter>[:<lower_limit1>-]<upper_limit1>[:<lower_limit2>-"
+"<upper_limit2>:...][,<counter>:...]\tSet the debug counter limit."
 msgstr ""
 
-#: config/sh/superh.opt:6
+#: common.opt:1378
 #, no-c-format
-msgid "Board name [and memory region]."
+msgid ""
+"-fdebug-prefix-map=<old>=<new>\tMap one directory name to another in debug "
+"information."
 msgstr ""
 
-#: config/sh/superh.opt:10
+#: common.opt:1382
 #, no-c-format
-msgid "Runtime name."
+msgid ""
+"-ffile-prefix-map=<old>=<new>\tMap one directory name to another in "
+"compilation result."
 msgstr ""
 
-#: config/sh/sh.opt:42
+#: common.opt:1386
 #, no-c-format
-msgid "Generate SH1 code."
+msgid "Output .debug_types section when using DWARF v4 debuginfo."
 msgstr ""
 
-#: config/sh/sh.opt:46
+#: common.opt:1392
 #, no-c-format
-msgid "Generate SH2 code."
+msgid "Defer popping functions args from stack until later."
 msgstr ""
 
-#: config/sh/sh.opt:50
+#: common.opt:1396
 #, no-c-format
-msgid "Generate default double-precision SH2a-FPU code."
+msgid "Attempt to fill delay slots of branch instructions."
 msgstr ""
 
-#: config/sh/sh.opt:54
+#: common.opt:1400
 #, no-c-format
-msgid "Generate SH2a FPU-less code."
+msgid "Delete dead instructions that may throw exceptions."
 msgstr ""
 
-#: config/sh/sh.opt:58
+#: common.opt:1404
 #, no-c-format
-msgid "Generate default single-precision SH2a-FPU code."
+msgid "Delete useless null pointer checks."
 msgstr ""
 
-#: config/sh/sh.opt:62
+#: common.opt:1408
 #, no-c-format
-msgid "Generate only single-precision SH2a-FPU code."
+msgid ""
+"Issue defining instructions back to back with their single uses, provided "
+"they are macro-fusible in the target microarchitecture."
 msgstr ""
 
-#: config/sh/sh.opt:66
+#: common.opt:1412
 #, no-c-format
-msgid "Generate SH2e code."
+msgid ""
+"Stream extra data to support more aggressive devirtualization in LTO local "
+"transformation mode."
 msgstr ""
 
-#: config/sh/sh.opt:70
+#: common.opt:1416
 #, no-c-format
-msgid "Generate SH3 code."
+msgid "Perform speculative devirtualization."
 msgstr ""
 
-#: config/sh/sh.opt:74
+#: common.opt:1420
 #, no-c-format
-msgid "Generate SH3e code."
+msgid "Try to convert virtual calls to direct ones."
 msgstr ""
 
-#: config/sh/sh.opt:78
+#: common.opt:1424
 #, no-c-format
-msgid "Generate SH4 code."
+msgid ""
+"-fdiagnostics-show-location=[once|every-line]\tHow often to emit source "
+"location at the beginning of line-wrapped diagnostics."
 msgstr ""
 
-#: config/sh/sh.opt:82
+#: common.opt:1441
 #, no-c-format
-msgid "Generate SH4-100 code."
+msgid "Show the source line with a caret indicating the column."
 msgstr ""
 
-#: config/sh/sh.opt:86
+#: common.opt:1445
 #, no-c-format
-msgid "Generate SH4-200 code."
+msgid "Show lines linking related events in diagnostic paths."
 msgstr ""
 
-#: config/sh/sh.opt:92
+#: common.opt:1449
 #, no-c-format
-msgid "Generate SH4-300 code."
+msgid "Show labels annotating ranges of source code when showing source."
 msgstr ""
 
-#: config/sh/sh.opt:96
+#: common.opt:1453
 #, no-c-format
-msgid "Generate SH4 FPU-less code."
+msgid "Show line numbers in the left margin when showing source."
 msgstr ""
 
-#: config/sh/sh.opt:100
+#: common.opt:1461
 #, no-c-format
-msgid "Generate SH4-100 FPU-less code."
+msgid "-fdiagnostics-color=[never|always|auto]\tColorize diagnostics."
 msgstr ""
 
-#: config/sh/sh.opt:104
+#: common.opt:1481
 #, no-c-format
-msgid "Generate SH4-200 FPU-less code."
+msgid "Enable formatting of JSON output."
 msgstr ""
 
-#: config/sh/sh.opt:108
+#: common.opt:1485
 #, no-c-format
-msgid "Generate SH4-300 FPU-less code."
+msgid "-fdiagnostics-urls=[never|always|auto]\tEmbed URLs in diagnostics."
 msgstr ""
 
-#: config/sh/sh.opt:112
+#: common.opt:1505
 #, no-c-format
-msgid "Generate code for SH4 340 series (MMU/FPU-less)."
+msgid ""
+"-fdiagnostics-column-unit=[display|byte]\tSelect whether column numbers are "
+"output as display columns (default) or raw bytes."
 msgstr ""
 
-#: config/sh/sh.opt:117
+#: common.opt:1509
 #, no-c-format
-msgid "Generate code for SH4 400 series (MMU/FPU-less)."
+msgid ""
+"-fdiagnostics-column-origin=<number>\tSet the number of the first column.  "
+"The default is 1-based as per GNU style, but some utilities may expect 0-"
+"based, for example."
 msgstr ""
 
-#: config/sh/sh.opt:122
+#: common.opt:1513
 #, no-c-format
-msgid "Generate code for SH4 500 series (FPU-less)."
+msgid ""
+"-fdiagnostics-format=[text|sarif-stderr|sarif-file]\tSelect output format."
 msgstr ""
 
-#: config/sh/sh.opt:127
+#: common.opt:1517
 #, no-c-format
-msgid "Generate default single-precision SH4 code."
+msgid "Add output format."
 msgstr ""
 
-#: config/sh/sh.opt:131
+#: common.opt:1521
 #, no-c-format
-msgid "Generate default single-precision SH4-100 code."
+msgid "Set output format."
 msgstr ""
 
-#: config/sh/sh.opt:135
+#: common.opt:1525
 #, no-c-format
-msgid "Generate default single-precision SH4-200 code."
+msgid ""
+"-fdiagnostics-escape-format=[unicode|bytes]\tSelect how to escape non-"
+"printable-ASCII bytes in the source for diagnostics that suggest it."
 msgstr ""
 
-#: config/sh/sh.opt:139
+#: common.opt:1563
 #, no-c-format
-msgid "Generate default single-precision SH4-300 code."
+msgid "Print fix-it hints in machine-readable form."
 msgstr ""
 
-#: config/sh/sh.opt:143
+#: common.opt:1567
 #, no-c-format
-msgid "Generate only single-precision SH4 code."
+msgid "Print fix-it hints to stderr in unified diff format."
 msgstr ""
 
-#: config/sh/sh.opt:147
+#: common.opt:1571
 #, no-c-format
-msgid "Generate only single-precision SH4-100 code."
+msgid ""
+"Amend appropriate diagnostic messages with the command line option that "
+"controls them."
 msgstr ""
 
-#: config/sh/sh.opt:151
+#: common.opt:1575
 #, no-c-format
-msgid "Generate only single-precision SH4-200 code."
+msgid "Print CWE identifiers for diagnostic messages, where available."
 msgstr ""
 
-#: config/sh/sh.opt:155
+#: common.opt:1579
 #, no-c-format
-msgid "Generate only single-precision SH4-300 code."
+msgid "Print any rules associated with diagnostic messages."
 msgstr ""
 
-#: config/sh/sh.opt:159
+#: common.opt:1583
 #, no-c-format
-msgid "Generate SH4a code."
+msgid ""
+"Use color within diagnostic messages to highlight pertinent information."
 msgstr ""
 
-#: config/sh/sh.opt:163
+#: common.opt:1587
 #, no-c-format
-msgid "Generate SH4a FPU-less code."
+msgid ""
+"Specify how to print any control-flow path associated with a diagnostic."
 msgstr ""
 
-#: config/sh/sh.opt:167
+#: common.opt:1591
 #, no-c-format
-msgid "Generate default single-precision SH4a code."
+msgid ""
+"Turn off any diagnostics features that complicate the output, such as line "
+"numbers, color, and warning URLs."
 msgstr ""
 
-#: config/sh/sh.opt:171
+#: common.opt:1595
 #, no-c-format
-msgid "Generate only single-precision SH4a code."
+msgid ""
+"-ftabstop=<number>      Distance between tab stops for column reporting."
 msgstr ""
 
-#: config/sh/sh.opt:175
+#: common.opt:1611
 #, no-c-format
-msgid "Generate SH4al-dsp code."
+msgid "Show stack depths of events in paths."
 msgstr ""
 
-#: config/sh/sh.opt:183
+#: common.opt:1615
 #, no-c-format
-msgid "Generate code in big endian mode."
+msgid ""
+"-fdiagnostics-text-art-charset=[none|ascii|unicode|emoji]\tDetermine which "
+"characters to use in text arg diagrams."
 msgstr ""
 
-#: config/sh/sh.opt:187
+#: common.opt:1634
 #, no-c-format
-msgid "Generate 32-bit offsets in switch tables."
+msgid "Set minimum width of left margin of source code when showing source."
 msgstr ""
 
-#: config/sh/sh.opt:191
+#: common.opt:1638
 #, no-c-format
-msgid "Generate bit instructions."
+msgid "Use indentation to show nesting of diagnostics in text output."
 msgstr ""
 
-#: config/sh/sh.opt:199
+#: common.opt:1642
 #, no-c-format
-msgid "Assume that zero displacement conditional branches are fast."
+msgid "Show location information when showing nested diagnostics."
 msgstr ""
 
-#: config/sh/sh.opt:203
+#: common.opt:1646
 #, no-c-format
-msgid "Force the usage of delay slots for conditional branches."
+msgid "Show nesting levels as numbers when showing nested diagnostics."
 msgstr ""
 
-#: config/sh/sh.opt:207
+#: common.opt:1653
 #, no-c-format
-msgid "Align doubles at 64-bit boundaries."
+msgid "Collect and print more context information for diagnostics."
 msgstr ""
 
-#: config/sh/sh.opt:211
+#: common.opt:1657
 #, no-c-format
-msgid "Division strategy, one of: call-div1, call-fp, call-table."
+msgid ""
+"-fdisable-[tree|rtl|ipa]-<pass>=range1+range2\tDisable an optimization pass."
 msgstr ""
 
-#: config/sh/sh.opt:215
+#: common.opt:1661
 #, no-c-format
-msgid "Specify name for 32 bit signed division function."
+msgid ""
+"-fenable-[tree|rtl|ipa]-<pass>=range1+range2\tEnable an optimization pass."
 msgstr ""
 
-#: config/sh/sh.opt:219
+#: common.opt:1665
 #, no-c-format
-msgid "Generate ELF FDPIC code."
+msgid "-fdump-<type>\tDump various compiler internals to a file."
 msgstr ""
 
-#: config/sh/sh.opt:223
+#: common.opt:1672
 #, no-c-format
 msgid ""
-"Enable the use of 64-bit floating point registers in fmov instructions.  See "
-"-mdalign if 64-bit alignment is required."
+"-fdump-final-insns=filename\tDump to filename the insns at the end of "
+"translation."
 msgstr ""
 
-#: config/sh/sh.opt:231 config/sh/sh.opt:269
+#: common.opt:1676
 #, no-c-format
-msgid "Follow Renesas (formerly Hitachi) / SuperH calling conventions."
+msgid "-fdump-go-spec=filename\tWrite all declarations to file as Go code."
 msgstr ""
 
-#: config/sh/sh.opt:235
+#: common.opt:1680
 #, no-c-format
-msgid "Increase the IEEE compliance for floating-point comparisons."
+msgid "Suppress output of addresses in debugging dumps."
 msgstr ""
 
-#: config/sh/sh.opt:239
+#: common.opt:1684
 #, no-c-format
 msgid ""
-"Inline code to invalidate instruction cache entries after setting up nested "
-"function trampolines."
+"Collect and dump debug information into temporary file if ICE in C/C++ "
+"compiler occurred."
 msgstr ""
 
-#: config/sh/sh.opt:243 config/arc/arc.opt:242
+#: common.opt:1689
 #, no-c-format
-msgid "Annotate assembler instructions with estimated addresses."
+msgid ""
+"Dump detailed information on GCC's internal representation of source code "
+"locations."
 msgstr ""
 
-#: config/sh/sh.opt:247
+#: common.opt:1693
 #, no-c-format
-msgid "Generate code in little endian mode."
+msgid "Dump optimization passes."
 msgstr ""
 
-#: config/sh/sh.opt:251
+#: common.opt:1697
 #, no-c-format
-msgid "Mark MAC register as call-clobbered."
+msgid ""
+"Suppress output of instruction numbers, line number notes and addresses in "
+"debugging dumps."
 msgstr ""
 
-#: config/sh/sh.opt:257
+#: common.opt:1701
 #, no-c-format
-msgid "Make structs a multiple of 4 bytes (warning: ABI altered)."
+msgid "Suppress output of previous and next insn numbers in debugging dumps."
 msgstr ""
 
-#: config/sh/sh.opt:261
+#: common.opt:1705
 #, no-c-format
-msgid "Emit function-calls using global offset table when generating PIC."
+msgid "Enable CFI tables via GAS assembler directives."
 msgstr ""
 
-#: config/sh/sh.opt:265
+#: common.opt:1709
 #, no-c-format
-msgid "Shorten address references during linking."
+msgid "Perform early inlining."
 msgstr ""
 
-#: config/sh/sh.opt:273
+#: common.opt:1717
 #, no-c-format
-msgid "Specify the model for atomic operations."
+msgid "Perform interprocedural reduction of aggregates."
 msgstr ""
 
-#: config/sh/sh.opt:277
+#: common.opt:1721
 #, no-c-format
-msgid "Use tas.b instruction for __atomic_test_and_set."
+msgid "Perform unused symbol elimination in debug info."
 msgstr ""
 
-#: config/sh/sh.opt:281
+#: common.opt:1725
 #, no-c-format
-msgid "Cost to assume for a multiply insn."
+msgid "Perform unused type elimination in debug info."
 msgstr ""
 
-#: config/sh/sh.opt:285
+#: common.opt:1729
 #, no-c-format
-msgid ""
-"Don't generate privileged-mode only code; implies -mno-inline-ic_invalidate "
-"if the inline code would not work in user mode."
+msgid "Do not suppress C++ class debug information."
 msgstr ""
 
-#: config/sh/sh.opt:291
+#: common.opt:1733
 #, no-c-format
-msgid "Pretend a branch-around-a-move is a conditional move."
+msgid "Enable exception handling."
 msgstr ""
 
-#: config/sh/sh.opt:295
+#: common.opt:1737
 #, no-c-format
-msgid "Enable the use of the fsca instruction."
+msgid "Perform a number of minor, expensive optimizations."
 msgstr ""
 
-#: config/sh/sh.opt:299
+#: common.opt:1741
 #, no-c-format
-msgid "Enable the use of the fsrra instruction."
+msgid ""
+"-fexcess-precision=[fast|standard|16]\tSpecify handling of excess floating-"
+"point precision."
 msgstr ""
 
-#: config/gcn/gcn-tables.opt:25
+#: common.opt:1759
 #, no-c-format
-msgid "GCN GPU type to use:"
+msgid ""
+"-fpermitted-flt-eval-methods=[c11|ts-18661]\tSpecify which values of "
+"FLT_EVAL_METHOD are permitted."
 msgstr ""
 
-#: config/gcn/gcn.opt:26 config/gcn/gcn.opt:30
+#: common.opt:1775
 #, no-c-format
-msgid "Specify the name of the target GPU."
+msgid ""
+"Output lto objects containing both the intermediate language and binary "
+"output."
 msgstr ""
 
-#: config/gcn/gcn.opt:34
+#: common.opt:1779
 #, no-c-format
-msgid "Generate code for a 32-bit ABI."
+msgid "Assume no NaNs or infinities are generated."
 msgstr ""
 
-#: config/gcn/gcn.opt:38
+#: common.opt:1783
 #, no-c-format
-msgid "Generate code for a 64-bit ABI."
+msgid ""
+"Assume that loops with an exit will terminate and not loop indefinitely."
 msgstr ""
 
-#: config/gcn/gcn.opt:42
+#: common.opt:1787
 #, no-c-format
-msgid "Enable OpenMP GPU offloading."
+msgid ""
+"-ffixed-<register>\tMark <register> as being unavailable to the compiler."
 msgstr ""
 
-#: config/gcn/gcn.opt:53
+#: common.opt:1791
 #, no-c-format
-msgid "Obsolete; use GCN_STACK_SIZE at runtime."
+msgid "Don't allocate floats and doubles in extended-precision registers."
 msgstr ""
 
-#: config/gcn/gcn.opt:59
+#: common.opt:1799
 #, no-c-format
-msgid ""
-"Amount of local data-share (LDS) memory to reserve for gang-private "
-"variables."
+msgid "Perform a forward propagation pass on RTL."
 msgstr ""
 
-#: config/gcn/gcn.opt:63
+#: common.opt:1803
 #, no-c-format
-msgid "Warn about invalid OpenACC dimensions."
+msgid ""
+"-ffp-contract=[off|on|fast]\tPerform floating-point expression contraction."
 msgstr ""
 
-#: config/gcn/gcn.opt:67
+#: common.opt:1819
 #, no-c-format
-msgid "SRAM-ECC and XNACK modes:"
+msgid ""
+"Allow built-in functions ceil, floor, round, trunc to raise \"inexact\" "
+"exceptions."
 msgstr ""
 
-#: config/gcn/gcn.opt:83
+#: common.opt:1826
 #, no-c-format
-msgid ""
-"Compile for devices requiring XNACK enabled. Default \"any\" if USM is "
-"supported."
+msgid "Allow function addresses to be held in registers."
 msgstr ""
 
-#: config/gcn/gcn.opt:87
+#: common.opt:1830
 #, no-c-format
-msgid ""
-"Compile for devices with the SRAM ECC feature enabled, or not. Default "
-"\"any\"."
+msgid "Place each function into its own section."
 msgstr ""
 
-#: config/gcn/gcn.opt:91
+#: common.opt:1834
 #, no-c-format
-msgid ""
-"--param=gcn-preferred-vectorization-factor=[default,32,64]\tPreferred "
-"vectorization factor."
+msgid "Allow limited optimization of operations with volatile memory access."
 msgstr ""
 
-#: config/fr30/fr30.opt:23
+#: common.opt:1838
 #, no-c-format
-msgid "Assume small address space."
+msgid "Perform global common subexpression elimination."
 msgstr ""
 
-#: config/bpf/bpf.opt:28
+#: common.opt:1842
 #, no-c-format
-msgid "Generate xBPF."
+msgid ""
+"Perform enhanced load motion during global common subexpression elimination."
 msgstr ""
 
-#: config/bpf/bpf.opt:34
+#: common.opt:1846
 #, no-c-format
-msgid "Generate big-endian eBPF."
+msgid "Perform store motion after global common subexpression elimination."
 msgstr ""
 
-#: config/bpf/bpf.opt:38
+#: common.opt:1850
 #, no-c-format
-msgid "Generate little-endian eBPF."
+msgid "Try to avoid store forwarding."
 msgstr ""
 
-#: config/bpf/bpf.opt:42
+#: common.opt:1854
 #, no-c-format
-msgid "Set a hard limit for the size of each stack frame, in bytes."
+msgid ""
+"Perform redundant load after store elimination in global common "
+"subexpression elimination."
 msgstr ""
 
-#: config/bpf/bpf.opt:46
+#: common.opt:1859
 #, no-c-format
 msgid ""
-"Generate all necessary information for BPF Compile Once - Run Everywhere."
+"Perform global common subexpression elimination after register allocation "
+"has finished."
 msgstr ""
 
-#: config/bpf/bpf.opt:52
+#: common.opt:1876
 #, no-c-format
-msgid "Enable extra conditional-branch instructions j(s)lt and j(s)le."
+msgid ""
+"-fgnat-encodings=[all|gdb|minimal]\tSelect the balance between GNAT "
+"encodings and standard DWARF emitted in the debug information."
 msgstr ""
 
-#: config/bpf/bpf.opt:56
+#: common.opt:1881
 #, no-c-format
-msgid "Enable 32-bit ALU instructions."
+msgid "Enable in and out of Graphite representation."
 msgstr ""
 
-#: config/bpf/bpf.opt:60
+#: common.opt:1885
 #, no-c-format
-msgid "Enable 32-bit jump instructions."
+msgid "Enable Graphite Identity transformation."
 msgstr ""
 
-#: config/bpf/bpf.opt:64
+#: common.opt:1889
 #, no-c-format
-msgid "Enable general atomic operations introduced in v3 ISA."
+msgid ""
+"Enable hoisting adjacent loads to encourage generating conditional move "
+"instructions."
 msgstr ""
 
-#: config/bpf/bpf.opt:68
+#: common.opt:1902
 #, no-c-format
-msgid "Enable byte swap instructions."
+msgid ""
+"Run two instruction combination passes late in the pass pipeline; one before "
+"register allocation and one after."
 msgstr ""
 
-#: config/bpf/bpf.opt:72
+#: common.opt:1907
 #, no-c-format
-msgid "Enable signed division and modulus instructions."
+msgid "Mark all loops as parallel."
 msgstr ""
 
-#: config/bpf/bpf.opt:76
+#: common.opt:1911 common.opt:1919 common.opt:3317
 #, no-c-format
-msgid "Enable signed move and memory load instructions."
+msgid "Enable loop nest transforms.  Same as -floop-nest-optimize."
 msgstr ""
 
-#: config/bpf/bpf.opt:80
+#: common.opt:1915
 #, no-c-format
-msgid "Select the eBPF ISA version to target in code generation."
+msgid "Enable loop interchange on trees."
 msgstr ""
 
-#: config/bpf/bpf.opt:84
+#: common.opt:1923
 #, no-c-format
-msgid "Valid ISA versions (for use with the -mcpu= option)"
+msgid "Perform unroll-and-jam on loops."
 msgstr ""
 
-#: config/bpf/bpf.opt:104
+#: common.opt:1927
 #, no-c-format
-msgid "Known assembler dialects (for use with the -masm= option)"
+msgid "Enable support for GNU transactional memory."
 msgstr ""
 
-#: config/bpf/bpf.opt:114
+#: common.opt:1931
 #, no-c-format
-msgid ""
-"-minline-memops-threshold=<number> Maximum size of memset/memmove/memcpy to "
-"inline, larger sizes will use a library call."
+msgid "Use STB_GNU_UNIQUE if supported by the assembler."
 msgstr ""
 
-#: config/mips/mips.opt:32
+#: common.opt:1939
 #, no-c-format
-msgid "-mabi=ABI\tGenerate code that conforms to the given ABI."
+msgid "Enable the loop nest optimizer."
 msgstr ""
 
-#: config/mips/mips.opt:36
+#: common.opt:1943
 #, no-c-format
-msgid "Known MIPS ABIs (for use with the -mabi= option):"
+msgid ""
+"Turn indirect calls of pointers loaded from structures to speculative calls "
+"if there is one known candidate."
 msgstr ""
 
-#: config/mips/mips.opt:55
+#: common.opt:1947
 #, no-c-format
-msgid "Generate code that can be used in SVR4-style dynamic objects."
+msgid "Force bitfield accesses to match their type width."
 msgstr ""
 
-#: config/mips/mips.opt:59
+#: common.opt:1951
 #, no-c-format
-msgid "Use PMC-style 'mad' instructions."
+msgid "Merge adjacent stores."
 msgstr ""
 
-#: config/mips/mips.opt:63
+#: common.opt:1955
 #, no-c-format
-msgid "Use integer madd/msub instructions."
+msgid "Enable guessing of branch probabilities."
 msgstr ""
 
-#: config/mips/mips.opt:67
+#: common.opt:1959
 #, no-c-format
-msgid "-march=ISA\tGenerate code for the given ISA."
+msgid "Enable various security-relevant flags."
 msgstr ""
 
-#: config/mips/mips.opt:75
+#: common.opt:1963
 #, no-c-format
-msgid "Use Branch Likely instructions, overriding the architecture default."
+msgid "Harden conditionals not used in branches, checking reversed conditions."
 msgstr ""
 
-#: config/mips/mips.opt:79
+#: common.opt:1967
 #, no-c-format
-msgid "Switch on/off MIPS16 ASE on alternating functions for compiler testing."
+msgid "Harden conditional branches by checking reversed conditions."
 msgstr ""
 
-#: config/mips/mips.opt:87
+#: common.opt:1971
 #, no-c-format
-msgid ""
-"-mcode-readable=SETTING\tSpecify when instructions are allowed to access "
-"code."
+msgid "Harden control flow by recording and checking execution paths."
 msgstr ""
 
-#: config/mips/mips.opt:91
+#: common.opt:1975
 #, no-c-format
-msgid "Valid arguments to -mcode-readable=:"
+msgid "Disable CFR in leaf functions."
 msgstr ""
 
-#: config/mips/mips.opt:104
+#: common.opt:1979
 #, no-c-format
-msgid "Use branch-and-break sequences to check for integer divide by zero."
+msgid ""
+"Check CFR execution paths also before calls followed by returns of their "
+"results."
 msgstr ""
 
-#: config/mips/mips.opt:108
+#: common.opt:1983
 #, no-c-format
-msgid "Use trap instructions to check for integer divide by zero."
+msgid ""
+"Check CFR execution paths also when exiting a function through an exception."
 msgstr ""
 
-#: config/mips/mips.opt:112
+#: common.opt:1987
 #, no-c-format
-msgid "Allow the use of MDMX instructions."
+msgid ""
+"-fhardcfr-check-noreturn-calls=[always|no-xthrow|nothrow|never]\tCheck CFR "
+"execution paths also before calling noreturn functions."
 msgstr ""
 
-#: config/mips/mips.opt:120
+#: common.opt:2008
 #, no-c-format
-msgid "Use MIPS-DSP instructions."
+msgid "Emit .ident assembler directives."
 msgstr ""
 
-#: config/mips/mips.opt:124
+#: common.opt:2012
 #, no-c-format
-msgid "Use MIPS-DSP REV 2 instructions."
+msgid "Perform conversion of conditional jumps to branchless equivalents."
 msgstr ""
 
-#: config/mips/mips.opt:146
+#: common.opt:2016
 #, no-c-format
-msgid "Use Enhanced Virtual Addressing instructions."
+msgid "Perform conversion of conditional jumps to conditional execution."
 msgstr ""
 
-#: config/mips/mips.opt:171
+#: common.opt:2020
 #, no-c-format
-msgid "Don't use %reloc() assembly operators (for backward compatibility)."
+msgid ""
+"-fstack-reuse=[all|named_vars|none]\tSet stack reuse level for local "
+"variables."
 msgstr ""
 
-#: config/mips/mips.opt:175
+#: common.opt:2036
 #, no-c-format
-msgid "Use -G for data that is not defined by the current object."
+msgid "Convert conditional jumps in innermost loops to branchless equivalents."
 msgstr ""
 
-#: config/mips/mips.opt:179
+#: common.opt:2048
 #, no-c-format
-msgid "Work around certain 24K errata."
+msgid "Do not generate .size directives."
 msgstr ""
 
-#: config/mips/mips.opt:183
+#: common.opt:2052
 #, no-c-format
-msgid "Work around certain R4000 errata."
+msgid "Perform indirect inlining."
 msgstr ""
 
-#: config/mips/mips.opt:187
+#: common.opt:2058
 #, no-c-format
-msgid "Work around certain R4400 errata."
+msgid ""
+"Enable inlining of function declared \"inline\", disabling disables all "
+"inlining."
 msgstr ""
 
-#: config/mips/mips.opt:191
+#: common.opt:2062
 #, no-c-format
-msgid "Work around the R5900 short loop erratum."
+msgid ""
+"Integrate functions into their callers when code size is known not to grow."
 msgstr ""
 
-#: config/mips/mips.opt:195
+#: common.opt:2066
 #, no-c-format
-msgid "Work around certain RM7000 errata."
+msgid ""
+"Integrate functions not declared \"inline\" into their callers when "
+"profitable."
 msgstr ""
 
-#: config/mips/mips.opt:199
+#: common.opt:2070
 #, no-c-format
-msgid "Work around certain R10000 errata."
+msgid "Integrate functions only required by their single caller."
 msgstr ""
 
-#: config/mips/mips.opt:203
+#: common.opt:2077
 #, no-c-format
-msgid "Work around errata for early SB-1 revision 2 cores."
+msgid ""
+"-finline-limit=<number>\tLimit the size of inlined functions to <number>."
 msgstr ""
 
-#: config/mips/mips.opt:207
+#: common.opt:2081
 #, no-c-format
-msgid "Work around certain VR4120 errata."
+msgid ""
+"Inline __atomic operations when a lock free instruction sequence is "
+"available."
 msgstr ""
 
-#: config/mips/mips.opt:211
+#: common.opt:2091
 #, no-c-format
-msgid "Work around VR4130 mflo/mfhi errata."
+msgid ""
+"-finline-stringops[=memcmp|memcpy|memmove|memset] Expand supported mem/str "
+"operations inline, even if against optimization."
 msgstr ""
 
-#: config/mips/mips.opt:215
+#: common.opt:2119
 #, no-c-format
-msgid "Work around an early 4300 hardware bug."
+msgid "Equivalent to -fcf-protection=full."
 msgstr ""
 
-#: config/mips/mips.opt:219
+#: common.opt:2123
 #, no-c-format
-msgid "FP exceptions are enabled."
+msgid ""
+"-fcf-protection=[full|branch|return|none|check]\tInstrument functions with "
+"checks to verify jump/call/return control-flow transfer instructions have "
+"valid targets."
 msgstr ""
 
-#: config/mips/mips.opt:223
+#: common.opt:2146
 #, no-c-format
-msgid "Use 32-bit floating-point registers."
+msgid "Instrument function entry and exit with profiling calls."
 msgstr ""
 
-#: config/mips/mips.opt:227
+#: common.opt:2150
 #, no-c-format
-msgid "Conform to the o32 FPXX ABI."
+msgid "Instrument function entry and exit with profiling calls invoked once."
 msgstr ""
 
-#: config/mips/mips.opt:231
+#: common.opt:2154
 #, no-c-format
-msgid "Use 64-bit floating-point registers."
+msgid ""
+"-finstrument-functions-exclude-function-list=name,...\tDo not instrument "
+"listed functions."
 msgstr ""
 
-#: config/mips/mips.opt:235
+#: common.opt:2158
 #, no-c-format
 msgid ""
-"-mflush-func=FUNC\tUse FUNC to flush the cache before calling stack "
-"trampolines."
+"-finstrument-functions-exclude-file-list=filename,...\tDo not instrument "
+"functions listed in files."
 msgstr ""
 
-#: config/mips/mips.opt:239
+#: common.opt:2162
 #, no-c-format
-msgid "-mabs=MODE\tSelect the IEEE 754 ABS/NEG instruction execution mode."
+msgid "Perform interprocedural constant propagation."
 msgstr ""
 
-#: config/mips/mips.opt:243
+#: common.opt:2166
 #, no-c-format
-msgid "-mnan=ENCODING\tSelect the IEEE 754 NaN data encoding."
+msgid "Perform cloning to make Interprocedural constant propagation stronger."
 msgstr ""
 
-#: config/mips/mips.opt:247
+#: common.opt:2174
 #, no-c-format
-msgid ""
-"Known MIPS IEEE 754 settings (for use with the -mabs= and -mnan= options):"
+msgid "Perform interprocedural bitwise constant propagation."
 msgstr ""
 
-#: config/mips/mips.opt:257
+#: common.opt:2178
 #, no-c-format
-msgid "Use 32-bit general registers."
+msgid "Perform interprocedural modref analysis."
 msgstr ""
 
-#: config/mips/mips.opt:261
+#: common.opt:2182
 #, no-c-format
-msgid "Use 64-bit general registers."
+msgid "Perform reordering and cloning of functions to maximize locality."
 msgstr ""
 
-#: config/mips/mips.opt:265
+#: common.opt:2186
 #, no-c-format
-msgid "Use GP-relative addressing to access small data."
+msgid "Perform interprocedural profile propagation."
 msgstr ""
 
-#: config/mips/mips.opt:269
+#: common.opt:2190
 #, no-c-format
-msgid ""
-"When generating -mabicalls code, allow executables to use PLTs and copy "
-"relocations."
+msgid "Perform interprocedural points-to analysis."
 msgstr ""
 
-#: config/mips/mips.opt:273
+#: common.opt:2194
 #, no-c-format
-msgid "Allow the use of hardware floating-point ABI and instructions."
+msgid "Discover pure and const functions."
 msgstr ""
 
-#: config/mips/mips.opt:277
+#: common.opt:2198
 #, no-c-format
-msgid "Generate code that is link-compatible with MIPS16 and microMIPS code."
+msgid "Perform Identical Code Folding for functions and read-only variables."
 msgstr ""
 
-#: config/mips/mips.opt:281
+#: common.opt:2202
 #, no-c-format
-msgid "An alias for minterlink-compressed provided for backward-compatibility."
+msgid "Perform Identical Code Folding for functions."
 msgstr ""
 
-#: config/mips/mips.opt:285
+#: common.opt:2206
 #, no-c-format
-msgid "-mipsN\tGenerate code for ISA level N."
+msgid "Perform Identical Code Folding for variables."
 msgstr ""
 
-#: config/mips/mips.opt:289
+#: common.opt:2210
 #, no-c-format
-msgid "Generate MIPS16 code."
+msgid "Discover read-only and non addressable static variables."
 msgstr ""
 
-#: config/mips/mips.opt:293
+#: common.opt:2214
 #, no-c-format
-msgid "Use MIPS-3D instructions."
+msgid "Discover read-only, write-only and non-addressable static variables."
 msgstr ""
 
-#: config/mips/mips.opt:297
+#: common.opt:2218
 #, no-c-format
-msgid "Use ll, sc and sync instructions."
+msgid "Reduce stack alignment on call sites if possible."
 msgstr ""
 
-#: config/mips/mips.opt:301
+#: common.opt:2230
 #, no-c-format
-msgid "Use -G for object-local data."
+msgid "Perform IPA Value Range Propagation."
 msgstr ""
 
-#: config/mips/mips.opt:305
+#: common.opt:2234
 #, no-c-format
-msgid "Use indirect calls."
+msgid "-fira-algorithm=[CB|priority]\tSet the used IRA algorithm."
 msgstr ""
 
-#: config/mips/mips.opt:309
+#: common.opt:2238
 #, no-c-format
-msgid "Use a 32-bit long type."
+msgid ""
+"Assume strict aliasing rules apply across (uninlined) function boundaries."
 msgstr ""
 
-#: config/mips/mips.opt:313
+#: common.opt:2251
 #, no-c-format
-msgid "Use a 64-bit long type."
+msgid "-fira-region=[one|all|mixed]\tSet regions for IRA."
 msgstr ""
 
-#: config/mips/mips.opt:317
+#: common.opt:2267
 #, no-c-format
-msgid "Pass the address of the ra save location to _mcount in $12."
+msgid "Use IRA based register pressure calculation in RTL hoist optimizations."
 msgstr ""
 
-#: config/mips/mips.opt:321
+#: common.opt:2272
 #, no-c-format
-msgid "Don't optimize block moves."
+msgid "Use IRA based register pressure calculation in RTL loop optimizations."
 msgstr ""
 
-#: config/mips/mips.opt:325
+#: common.opt:2277
 #, no-c-format
-msgid "Use microMIPS instructions."
+msgid "Share slots for saving different hard registers."
 msgstr ""
 
-#: config/mips/mips.opt:329
+#: common.opt:2281
 #, no-c-format
-msgid "Use MIPS MSA Extension instructions."
+msgid "Share stack slots for spilled pseudo-registers."
 msgstr ""
 
-#: config/mips/mips.opt:333
+#: common.opt:2285
 #, no-c-format
-msgid "Allow the use of MT instructions."
+msgid "-fira-verbose=<number>\tControl IRA's level of diagnostic messages."
 msgstr ""
 
-#: config/mips/mips.opt:337
+#: common.opt:2289
 #, no-c-format
-msgid "Prevent the use of all floating-point operations."
+msgid "Optimize induction variables on trees."
 msgstr ""
 
-#: config/mips/mips.opt:341
+#: common.opt:2293
 #, no-c-format
-msgid "Use MCU instructions."
+msgid "Use jump tables for sufficiently large switch statements."
 msgstr ""
 
-#: config/mips/mips.opt:345
+#: common.opt:2297
 #, no-c-format
-msgid "Do not use a cache-flushing function before calling stack trampolines."
+msgid "Use bit tests for sufficiently large switch statements."
 msgstr ""
 
-#: config/mips/mips.opt:349
+#: common.opt:2301
 #, no-c-format
-msgid "Do not use MDMX instructions."
+msgid "Generate code for functions even if they are fully inlined."
 msgstr ""
 
-#: config/mips/mips.opt:353
+#: common.opt:2305
 #, no-c-format
-msgid "Generate normal-mode code."
+msgid "Generate code for static functions even if they are never called."
 msgstr ""
 
-#: config/mips/mips.opt:357
+#: common.opt:2309
 #, no-c-format
-msgid "Do not use MIPS-3D instructions."
+msgid "Emit static const variables even if they are not used."
 msgstr ""
 
-#: config/mips/mips.opt:361
+#: common.opt:2313
 #, no-c-format
-msgid "Use paired-single floating-point instructions."
+msgid "Give external symbols a leading underscore."
 msgstr ""
 
-#: config/mips/mips.opt:365
+#: common.opt:2321
 #, no-c-format
-msgid ""
-"-mr10k-cache-barrier=SETTING\tSpecify when r10k cache barriers should be "
-"inserted."
+msgid "Do CFG-sensitive rematerialization in LRA."
 msgstr ""
 
-#: config/mips/mips.opt:369
+#: common.opt:2325
 #, no-c-format
-msgid "Valid arguments to -mr10k-cache-barrier=:"
+msgid "Enable link-time optimization."
 msgstr ""
 
-#: config/mips/mips.opt:382
+#: common.opt:2329
 #, no-c-format
-msgid "Try to allow the linker to turn PIC calls into direct calls."
+msgid "Link-time optimization with number of parallel jobs or jobserver."
 msgstr ""
 
-#: config/mips/mips.opt:386
+#: common.opt:2333
 #, no-c-format
-msgid ""
-"When generating -mabicalls code, make the code suitable for use in shared "
-"libraries."
+msgid "Enable incremental LTO, with its cache in given directory."
 msgstr ""
 
-#: config/mips/mips.opt:394
+#: common.opt:2337
 #, no-c-format
-msgid "Use SmartMIPS instructions."
+msgid ""
+"Number of cache entries in incremental LTO after which to prune old entries."
 msgstr ""
 
-#: config/mips/mips.opt:402
+#: common.opt:2362
 #, no-c-format
-msgid "Optimize lui/addiu address loads."
+msgid "Specify the algorithm to partition symbols and vars at linktime."
 msgstr ""
 
-#: config/mips/mips.opt:406
+#: common.opt:2366
 #, no-c-format
-msgid "Enable the MIPS16e V2 instructions."
+msgid ""
+"Enable heuristics to recognize symbol identifiers in toplevel (not extended) "
+"assembly and prevent their mangling/deletion."
 msgstr ""
 
-#: config/mips/mips.opt:410
+#: common.opt:2371
 #, no-c-format
-msgid "Assume all symbols have 32-bit values."
+msgid "Use zlib/zstd compression level <number> for IL."
 msgstr ""
 
-#: config/mips/mips.opt:414
+#: common.opt:2379
 #, no-c-format
-msgid "Use synci instruction to invalidate i-cache."
+msgid "Report various link-time optimization statistics."
 msgstr ""
 
-#: config/mips/mips.opt:418
+#: common.opt:2383
 #, no-c-format
-msgid "Use lwxc1/swxc1/ldxc1/sdxc1 instructions where applicable."
+msgid "Report various link-time optimization statistics for WPA only."
 msgstr ""
 
-#: config/mips/mips.opt:422
+#: common.opt:2387
 #, no-c-format
-msgid "Use 4-operand madd.s/madd.d and related instructions where applicable."
+msgid "Set errno after built-in math functions."
 msgstr ""
 
-#: config/mips/mips.opt:430
+#: common.opt:2391
 #, no-c-format
-msgid "Don't generate code with unaligned load store, only valid for MIPS R6."
+msgid "-fmax-errors=<number>\tMaximum number of errors to report."
 msgstr ""
 
-#: config/mips/mips.opt:434
+#: common.opt:2395
 #, no-c-format
-msgid ""
-"Generate code with unaligned load store for R6 (alias of -mno-strict-align)."
+msgid "Allow removal of malloc and free pairs when allocated block is unused."
 msgstr ""
 
-#: config/mips/mips.opt:438
+#: common.opt:2402
 #, no-c-format
-msgid ""
-"Don't generate code with unaligned load store for R6 (alias of -mstrict-"
-"align)."
+msgid "Report on permanent memory allocation."
 msgstr ""
 
-#: config/mips/mips.opt:446
+#: common.opt:2406
 #, no-c-format
-msgid "Use Virtualization (VZ) instructions."
+msgid "Report on permanent memory allocation in WPA only."
 msgstr ""
 
-#: config/mips/mips.opt:450
+#: common.opt:2413
 #, no-c-format
-msgid "Use eXtended Physical Address (XPA) instructions."
+msgid "Attempt to merge identical constants and constant variables."
 msgstr ""
 
-#: config/mips/mips.opt:454
+#: common.opt:2417
 #, no-c-format
-msgid "Use Cyclic Redundancy Check (CRC) instructions."
+msgid "Attempt to merge identical constants across compilation units."
 msgstr ""
 
-#: config/mips/mips.opt:458
+#: common.opt:2421
 #, no-c-format
-msgid "Use Global INValidate (GINV) instructions."
+msgid "Attempt to merge identical debug strings across compilation units."
 msgstr ""
 
-#: config/mips/mips.opt:462
+#: common.opt:2425
 #, no-c-format
-msgid "Perform VR4130-specific alignment optimizations."
+msgid ""
+"-fmessage-length=<number>\tLimit diagnostics to <number> characters per "
+"line.  0 suppresses line-wrapping."
 msgstr ""
 
-#: config/mips/mips.opt:466
+#: common.opt:2429
 #, no-c-format
-msgid "Lift restrictions on GOT size."
+msgid "Align the start of every function."
 msgstr ""
 
-#: config/mips/mips.opt:470
+#: common.opt:2433
 #, no-c-format
-msgid "Enable use of odd-numbered single-precision registers."
+msgid "Perform SMS based modulo scheduling before the first scheduling pass."
 msgstr ""
 
-#: config/mips/mips.opt:474
+#: common.opt:2437
 #, no-c-format
-msgid "Optimize frame header."
+msgid "Perform SMS based modulo scheduling with register moves allowed."
 msgstr ""
 
-#: config/mips/mips.opt:481
+#: common.opt:2441
 #, no-c-format
-msgid "Enable load/store bonding."
+msgid "Move loop invariant computations out of loops."
 msgstr ""
 
-#: config/mips/mips.opt:485
+#: common.opt:2445
 #, no-c-format
-msgid "Specify the compact branch usage policy."
+msgid "Move stores out of loops."
 msgstr ""
 
-#: config/mips/mips.opt:489
+#: common.opt:2449
 #, no-c-format
-msgid "Policies available for use with -mcompact-branches=:"
+msgid "Building block for specs-based multilib-aware TFLAGS."
 msgstr ""
 
-#: config/mips/mips.opt:502
+#: common.opt:2453
 #, no-c-format
-msgid "Use Loongson MultiMedia extensions Instructions (MMI) instructions."
+msgid "Use the RTL dead code elimination pass."
 msgstr ""
 
-#: config/mips/mips.opt:506
+#: common.opt:2457
 #, no-c-format
-msgid "Use Loongson EXTension (EXT) instructions."
+msgid "Use the RTL dead store elimination pass."
 msgstr ""
 
-#: config/mips/mips.opt:510
+#: common.opt:2461
 #, no-c-format
-msgid "Use Loongson EXTension R2 (EXT2) instructions."
+msgid ""
+"Enable/Disable the traditional scheduling in loops that already passed "
+"modulo scheduling."
 msgstr ""
 
-#: config/mips/mips-tables.opt:24
+#: common.opt:2465
 #, no-c-format
-msgid "Known MIPS CPUs (for use with the -march= and -mtune= options):"
+msgid "Support synchronous non-call exceptions."
 msgstr ""
 
-#: config/mips/mips-tables.opt:28
+#: common.opt:2472
 #, no-c-format
-msgid "Known MIPS ISA levels (for use with the -mips option):"
+msgid ""
+"-foffload-options=<targets>=<options>\tSpecify options for the offloading "
+"targets."
 msgstr ""
 
-#: config/arc/arc-tables.opt:25
+#: common.opt:2478
 #, no-c-format
-msgid "Known ARC CPUs (for use with the -mcpu= option):"
+msgid "-foffload-abi=[lp64|ilp32]\tSet the ABI to use in an offload compiler."
 msgstr ""
 
-#: config/arc/arc.opt:26
+#: common.opt:2493
 #, no-c-format
-msgid "Compile code for big endian mode."
+msgid "-foffload-abi-host-opts=<options>\tSpecify host ABI options."
 msgstr ""
 
-#: config/arc/arc.opt:30
+#: common.opt:2497
 #, no-c-format
-msgid "Compile code for little endian mode.  This is the default."
+msgid "When possible do not generate stack frames."
 msgstr ""
 
-#: config/arc/arc.opt:34
+#: common.opt:2504
 #, no-c-format
 msgid ""
-"Disable ARCompact specific pass to generate conditional execution "
-"instructions."
+"Generate SIMD clones for functions with the OpenMP declare target directive."
 msgstr ""
 
-#: config/arc/arc.opt:38
+#: common.opt:2523
 #, no-c-format
-msgid "Generate ARCompact 32-bit code for ARC600 processor."
+msgid "Enable all optimization info dumps on stderr."
 msgstr ""
 
-#: config/arc/arc.opt:42
+#: common.opt:2527
 #, no-c-format
-msgid "Same as -mA6."
+msgid "-fopt-info[-<type>=filename]\tDump compiler optimization details."
 msgstr ""
 
-#: config/arc/arc.opt:46
+#: common.opt:2531
 #, no-c-format
-msgid "Generate ARCompact 32-bit code for ARC601 processor."
+msgid ""
+"Write a SRCFILE.opt-record.json file detailing what optimizations were "
+"performed."
 msgstr ""
 
-#: config/arc/arc.opt:50
+#: common.opt:2535
 #, no-c-format
-msgid "Generate ARCompact 32-bit code for ARC700 processor."
+msgid ""
+"Detect loops calculating CRC and replace with faster implementation. If the "
+"target supports CRC instruction and the CRC loop uses the same polynomial as "
+"the one used in the CRC instruction, directly replace with the corresponding "
+"CRC instruction. Otherwise, if the target supports carry-less-multiplication "
+"instruction, generate CRC using it. If neither case applies, generate table-"
+"based CRC."
 msgstr ""
 
-#: config/arc/arc.opt:54
+#: common.opt:2549
 #, no-c-format
-msgid "Same as -mA7."
+msgid "Optimize sibling and tail recursive calls."
 msgstr ""
 
-#: config/arc/arc.opt:58
+#: common.opt:2553
 #, no-c-format
-msgid "Force all calls to be made via a jli instruction."
+msgid "Insert path profiling code."
 msgstr ""
 
-#: config/arc/arc.opt:62
+#: common.opt:2557
 #, no-c-format
-msgid "-mmpy-option=MPY\tCompile ARCv2 code with a multiplier design option."
+msgid "Perform partial inlining."
 msgstr ""
 
-#: config/arc/arc.opt:132
+#: common.opt:2561 common.opt:2565
 #, no-c-format
-msgid "Enable DIV-REM instructions for ARCv2."
+msgid "Report on memory allocation before interprocedural optimization."
 msgstr ""
 
-#: config/arc/arc.opt:136
+#: common.opt:2569
 #, no-c-format
-msgid "Enable code density instructions for ARCv2."
+msgid "Pack structure members together without holes."
 msgstr ""
 
-#: config/arc/arc.opt:146
+#: common.opt:2573
 #, no-c-format
-msgid "Use ordinarily cached memory accesses for volatile references."
+msgid "-fpack-struct=<number>\tSet initial maximum structure member alignment."
 msgstr ""
 
-#: config/arc/arc.opt:150
+#: common.opt:2577
 #, no-c-format
-msgid "Enable cache bypass for volatile references."
+msgid "Return small aggregates in memory, not registers."
 msgstr ""
 
-#: config/arc/arc.opt:154
+#: common.opt:2581
 #, no-c-format
-msgid "Generate instructions supported by barrel shifter."
+msgid "Perform loop peeling."
 msgstr ""
 
-#: config/arc/arc.opt:158
+#: common.opt:2585
 #, no-c-format
-msgid "Generate norm instruction."
+msgid "Enable machine specific peephole optimizations."
 msgstr ""
 
-#: config/arc/arc.opt:162
+#: common.opt:2589
 #, no-c-format
-msgid "Generate swap instruction."
+msgid "Enable an RTL peephole pass before sched2."
 msgstr ""
 
-#: config/arc/arc.opt:166
+#: common.opt:2593
 #, no-c-format
-msgid "Generate mul64 and mulu64 instructions."
+msgid "Generate position-independent code if possible (large mode)."
 msgstr ""
 
-#: config/arc/arc.opt:170
+#: common.opt:2597
 #, no-c-format
-msgid "Do not generate mpy instructions for ARC700."
+msgid ""
+"Generate position-independent code for executables if possible (large mode)."
 msgstr ""
 
-#: config/arc/arc.opt:174
+#: common.opt:2601
 #, no-c-format
-msgid "Generate extended arithmetic instructions, only valid for ARC700."
+msgid "Generate position-independent code if possible (small mode)."
 msgstr ""
 
-#: config/arc/arc.opt:178
+#: common.opt:2605
 #, no-c-format
 msgid ""
-"Dummy flag. This is the default unless FPX switches are provided explicitly."
+"Generate position-independent code for executables if possible (small mode)."
 msgstr ""
 
-#: config/arc/arc.opt:182
+#: common.opt:2609
 #, no-c-format
-msgid "Generate call insns as register indirect calls."
+msgid ""
+"Use PLT for PIC calls (-fno-plt: load the address from GOT at call site)."
 msgstr ""
 
-#: config/arc/arc.opt:186
+#: common.opt:2613
 #, no-c-format
-msgid "Do no generate BRcc instructions in arc_reorg."
+msgid "Specify a plugin to load."
 msgstr ""
 
-#: config/arc/arc.opt:190
+#: common.opt:2617
 #, no-c-format
 msgid ""
-"Generate sdata references.  This is the default, unless you compile for PIC."
-msgstr ""
-
-#: config/arc/arc.opt:194
-#, no-c-format
-msgid "Generate millicode thunks."
+"-fplugin-arg-<name>-<key>[=<value>]\tSpecify argument <key>=<value> for "
+"plugin <name>."
 msgstr ""
 
-#: config/arc/arc.opt:198 config/arc/arc.opt:202
+#: common.opt:2621
 #, no-c-format
-msgid "FPX: Generate Single Precision FPX (compact) instructions."
+msgid "Run predictive commoning optimization."
 msgstr ""
 
-#: config/arc/arc.opt:206
+#: common.opt:2625
 #, no-c-format
-msgid "FPX: Generate Single Precision FPX (fast) instructions."
+msgid "Generate prefetch instructions, if available, for arrays in loops."
 msgstr ""
 
-#: config/arc/arc.opt:210
+#: common.opt:2629
 #, no-c-format
-msgid ""
-"FPX: Enable Argonaut ARC CPU Double Precision Floating Point extensions."
+msgid "Enable basic program profiling code."
 msgstr ""
 
-#: config/arc/arc.opt:214 config/arc/arc.opt:218
+#: common.opt:2633
 #, no-c-format
-msgid "FPX: Generate Double Precision FPX (compact) instructions."
+msgid "Generate absolute source path names for gcov."
 msgstr ""
 
-#: config/arc/arc.opt:222
+#: common.opt:2637
 #, no-c-format
-msgid "FPX: Generate Double Precision FPX (fast) instructions."
+msgid "Insert arc-based program profiling code."
 msgstr ""
 
-#: config/arc/arc.opt:226
+#: common.opt:2641
 #, no-c-format
-msgid "Disable LR and SR instructions from using FPX extension aux registers."
+msgid "Insert condition coverage profiling code."
 msgstr ""
 
-#: config/arc/arc.opt:230
+#: common.opt:2645
 #, no-c-format
 msgid ""
-"Enable generation of ARC SIMD instructions via target-specific builtins."
+"Set the top-level directory for storing the profile data. The default is "
+"'pwd'."
 msgstr ""
 
-#: config/arc/arc.opt:234
+#: common.opt:2650
 #, no-c-format
-msgid "-mcpu=CPU\tCompile code for ARC variant CPU."
+msgid "Select the name for storing the profile note file."
 msgstr ""
 
-#: config/arc/arc.opt:238
+#: common.opt:2654
 #, no-c-format
-msgid ""
-"Size optimization level: 0:none 1:opportunistic 2: regalloc 3:drop align, -"
-"Os."
+msgid "Enable correction of flow inconsistent profile data input."
 msgstr ""
 
-#: config/arc/arc.opt:246
+#: common.opt:2658
 #, no-c-format
 msgid ""
-"Cost to assume for a multiply instruction, with 4 being equal to a normal "
-"insn."
+"-fprofile-update=[single|atomic|prefer-atomic]\tSet the profile update "
+"method."
 msgstr ""
 
-#: config/arc/arc.opt:250
+#: common.opt:2662
 #, no-c-format
-msgid "-mtune=TUNE\tTune code for given ARC variant."
+msgid ""
+"Instrument only functions from files whose name matches any of the regular "
+"expressions (separated by semi-colons)."
 msgstr ""
 
-#: config/arc/arc.opt:284
+#: common.opt:2666
 #, no-c-format
-msgid "Enable the use of indexed loads."
+msgid ""
+"Instrument only functions from files whose name does not match any of the "
+"regular expressions (separated by semi-colons)."
 msgstr ""
 
-#: config/arc/arc.opt:288
+#: common.opt:2682
 #, no-c-format
-msgid "Enable the use of pre/post modify with register displacement."
+msgid ""
+"-fprofile-reproducible=[serial|parallel-runs|multithreaded]\tControl level "
+"of reproducibility of profile gathered by -fprofile-generate."
 msgstr ""
 
-#: config/arc/arc.opt:292
+#: common.opt:2698
 #, no-c-format
-msgid "Generate 32x16 multiply and mac instructions."
+msgid ""
+"Remove prefix from absolute path before mangling name for -fprofile-"
+"generate= and -fprofile-use=."
 msgstr ""
 
-#: config/arc/arc.opt:300
+#: common.opt:2702
 #, no-c-format
-msgid "Don't use less than 25 bit addressing range for calls."
+msgid ""
+"-fprofile-prefix-map=<old>=<new>\tMap one directory name to another in GCOV "
+"coverage result."
 msgstr ""
 
-#: config/arc/arc.opt:322
+#: common.opt:2706
 #, no-c-format
-msgid "Enable pre-reload use of cbranchsi pattern."
+msgid ""
+"Enable common options for generating profile info for profile feedback "
+"directed optimizations."
 msgstr ""
 
-#: config/arc/arc.opt:330
+#: common.opt:2710
 #, no-c-format
 msgid ""
-"Use pc-relative switch case tables - this enables case table shortening."
+"Enable common options for generating profile info for profile feedback "
+"directed optimizations, and set -fprofile-dir=."
 msgstr ""
 
-#: config/arc/arc.opt:334
+#: common.opt:2714
 #, no-c-format
-msgid "Enable compact casesi pattern."
+msgid ""
+"Register the profile information in the .gcov_info section instead of using "
+"a constructor/destructor."
 msgstr ""
 
-#: config/arc/arc.opt:338
+#: common.opt:2718
 #, no-c-format
-msgid "Enable 'q' instruction alternatives."
+msgid ""
+"Register the profile information in the specified section instead of using a "
+"constructor/destructor."
 msgstr ""
 
-#: config/arc/arc.opt:342
+#: common.opt:2722
 #, no-c-format
-msgid "Expand adddi3 and subdi3 at rtl generation time into add.f / adc etc."
+msgid ""
+"Do not assume that functions never executed during the train run are cold."
 msgstr ""
 
-#: config/arc/arc.opt:349
+#: common.opt:2726
 #, no-c-format
-msgid "Enable variable polynomial CRC extension."
+msgid ""
+"Enable common options for performing profile feedback directed optimizations."
 msgstr ""
 
-#: config/arc/arc.opt:353
+#: common.opt:2730
 #, no-c-format
-msgid "Enable DSP 3.1 Pack A extensions."
+msgid ""
+"Enable common options for performing profile feedback directed "
+"optimizations, and set -fprofile-dir=."
 msgstr ""
 
-#: config/arc/arc.opt:357
+#: common.opt:2734
 #, no-c-format
-msgid "Enable dual viterbi butterfly extension."
+msgid "Insert code to profile values of expressions."
 msgstr ""
 
-#: config/arc/arc.opt:367
+#: common.opt:2738
 #, no-c-format
-msgid "Enable Dual and Single Operand Instructions for Telephony."
+msgid "Report on consistency of profile."
 msgstr ""
 
-#: config/arc/arc.opt:371
+#: common.opt:2742
 #, no-c-format
-msgid "Enable XY Memory extension (DSP version 3)."
+msgid "Enable function reordering that improves code placement."
 msgstr ""
 
-#: config/arc/arc.opt:376
+#: common.opt:2746
 #, no-c-format
-msgid "Enable Locked Load/Store Conditional extension."
+msgid "Insert NOP instructions at each function entry."
 msgstr ""
 
-#: config/arc/arc.opt:380
+#: common.opt:2753
 #, no-c-format
-msgid "Enable swap byte ordering extension instruction."
+msgid "-frandom-seed=<string>\tMake compile reproducible using <string>."
 msgstr ""
 
-#: config/arc/arc.opt:384
+#: common.opt:2763
 #, no-c-format
-msgid "Enable 64-bit Time-Stamp Counter extension instruction."
+msgid "Record gcc command line switches in the object file."
 msgstr ""
 
-#: config/arc/arc.opt:388
+#: common.opt:2767
 #, no-c-format
-msgid "Pass -EB option through to linker."
+msgid "Return small aggregates in registers."
 msgstr ""
 
-#: config/arc/arc.opt:392
+#: common.opt:2775
 #, no-c-format
-msgid "Pass -EL option through to linker."
+msgid ""
+"Tell DSE that the storage for a C++ object is dead when the constructor "
+"starts and when the destructor finishes."
 msgstr ""
 
-#: config/arc/arc.opt:396
+#: common.opt:2789
 #, no-c-format
-msgid "Pass -marclinux option through to linker."
+msgid ""
+"-flive-patching=[inline-only-static|inline-clone]\tControl IPA optimizations "
+"to provide a safe compilation for live-patching.  At the same time, provides "
+"multiple-level control on the enabled IPA optimizations."
 msgstr ""
 
-#: config/arc/arc.opt:400
+#: common.opt:2804
 #, no-c-format
-msgid "Pass -marclinux_prof option through to linker."
+msgid "Tell DCE to remove unused C++ allocations."
 msgstr ""
 
-#: config/arc/arc.opt:409
+#: common.opt:2808
 #, no-c-format
-msgid "Don't indicate any priority with TARGET_REGISTER_PRIORITY."
+msgid "Relief of register pressure through live range shrinkage."
 msgstr ""
 
-#: config/arc/arc.opt:413
+#: common.opt:2812
 #, no-c-format
-msgid "Indicate priority for r0..r3 / r12..r15 with TARGET_REGISTER_PRIORITY."
+msgid "Perform a register renaming optimization pass."
 msgstr ""
 
-#: config/arc/arc.opt:417
+#: common.opt:2816
 #, no-c-format
-msgid "Reduce priority for r0..r3 / r12..r15 with TARGET_REGISTER_PRIORITY."
+msgid "Perform a target dependent instruction fusion optimization pass."
 msgstr ""
 
-#: config/arc/arc.opt:429
+#: common.opt:2820
 #, no-c-format
-msgid "Enable atomic instructions."
+msgid "Reorder basic blocks to improve code placement."
 msgstr ""
 
-#: config/arc/arc.opt:433
+#: common.opt:2824
 #, no-c-format
-msgid "Enable double load/store instructions for ARC HS."
+msgid ""
+"-freorder-blocks-algorithm=[simple|stc]\tSet the used basic block reordering "
+"algorithm."
 msgstr ""
 
-#: config/arc/arc.opt:437
+#: common.opt:2837
 #, no-c-format
-msgid "Specify the name of the target floating point configuration."
+msgid "Reorder basic blocks and partition into hot and cold sections."
 msgstr ""
 
-#: config/arc/arc.opt:480
+#: common.opt:2841
 #, no-c-format
-msgid "Specify thread pointer register number."
+msgid "Reorder functions to improve code placement."
 msgstr ""
 
-#: config/arc/arc.opt:487
+#: common.opt:2845
 #, no-c-format
-msgid "Enable use of NPS400 bit operations."
+msgid "Add a common subexpression elimination pass after loop optimizations."
 msgstr ""
 
-#: config/arc/arc.opt:491
+#: common.opt:2853
 #, no-c-format
-msgid "Enable use of NPS400 xld/xst extension."
+msgid "Disable optimizations that assume default FP rounding behavior."
 msgstr ""
 
-#: config/arc/arc.opt:499
+#: common.opt:2857
 #, no-c-format
-msgid ""
-"Specifies the registers that the processor saves on an interrupt entry and "
-"exit."
+msgid "Enable scheduling across basic blocks."
 msgstr ""
 
-#: config/arc/arc.opt:503
+#: common.opt:2861
 #, no-c-format
-msgid ""
-"Specifies the number of registers replicated in second register bank on "
-"entry to fast interrupt."
+msgid "Enable register pressure sensitive insn scheduling."
 msgstr ""
 
-#: config/arc/arc.opt:507
+#: common.opt:2865
 #, no-c-format
-msgid ""
-"Sets LP_COUNT register width.  Possible values are 8, 16, 20, 24, 28, and 32."
+msgid "Allow speculative motion of non-loads."
 msgstr ""
 
-#: config/arc/arc.opt:532
+#: common.opt:2869
 #, no-c-format
-msgid "Enable 16-entry register file."
+msgid "Allow speculative motion of some loads."
 msgstr ""
 
-#: config/arc/arc.opt:536
+#: common.opt:2873
 #, no-c-format
-msgid "Enable use of BI/BIH instructions when available."
+msgid "Allow speculative motion of more loads."
 msgstr ""
 
-#: config/arc/arc.opt:540
+#: common.opt:2877
 #, no-c-format
-msgid "Enable ENTER_S and LEAVE_S opcodes for ARCv2."
+msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler."
 msgstr ""
 
-#: config/vxworks-smp.opt:25
+#: common.opt:2881
 #, no-c-format
-msgid "Select VxWorks SMP C runtimes for linking."
+msgid "If scheduling post reload, do superblock scheduling."
 msgstr ""
 
-#: lto/lang.opt:50
+#: common.opt:2889
 #, no-c-format
-msgid "Set linker output type (used internally during LTO optimization)."
+msgid "Reschedule instructions before register allocation."
 msgstr ""
 
-#: lto/lang.opt:54
+#: common.opt:2893
 #, no-c-format
-msgid "Run the link-time optimizer in local transformation (LTRANS) mode."
+msgid "Reschedule instructions after register allocation."
 msgstr ""
 
-#: lto/lang.opt:58
+#: common.opt:2900
 #, no-c-format
-msgid "Specify a file to which a list of files output by LTRANS is written."
+msgid "Schedule instructions using selective scheduling algorithm."
 msgstr ""
 
-#: lto/lang.opt:62
+#: common.opt:2904
 #, no-c-format
-msgid "The resolution file."
+msgid "Run selective scheduling after reload."
 msgstr ""
 
-#: lto/lang.opt:66
+#: common.opt:2908
 #, no-c-format
-msgid "Run the link-time optimizer in whole program analysis (WPA) mode."
+msgid "Run self-tests, using the given path to locate test files."
 msgstr ""
 
-#: lto/lang.opt:70
+#: common.opt:2912
 #, no-c-format
-msgid ""
-"Whole program analysis (WPA) mode with number of parallel jobs specified."
+msgid "Perform software pipelining of inner loops during selective scheduling."
 msgstr ""
 
-#: lto/lang.opt:78
+#: common.opt:2916
 #, no-c-format
-msgid "Call the dump function for variables and function in IL."
+msgid "Perform software pipelining of outer loops during selective scheduling."
 msgstr ""
 
-#: lto/lang.opt:82
+#: common.opt:2921
 #, no-c-format
-msgid "Dump the demangled output."
+msgid "Reschedule pipelined regions without pipelining."
 msgstr ""
 
-#: lto/lang.opt:86
+#: common.opt:2925
 #, no-c-format
-msgid "Dump only the defined symbols."
+msgid ""
+"Allow interposing function (or variables) by ones with different semantics "
+"(or initializer) respectively by dynamic linker."
 msgstr ""
 
-#: lto/lang.opt:90
+#: common.opt:2931
 #, no-c-format
-msgid "Print the initial values of the variables."
+msgid "Allow premature scheduling of queued insns."
 msgstr ""
 
-#: lto/lang.opt:94
+#: common.opt:2935
 #, no-c-format
-msgid "Sort the symbols alphabetically."
+msgid ""
+"-fsched-stalled-insns=<number>\tSet number of queued insns that can be "
+"prematurely scheduled."
 msgstr ""
 
-#: lto/lang.opt:98
+#: common.opt:2943
 #, no-c-format
-msgid "Sort the symbols according to size."
+msgid ""
+"Set dependence distance checking in premature scheduling of queued insns."
 msgstr ""
 
-#: lto/lang.opt:102
+#: common.opt:2947
 #, no-c-format
-msgid "Display the symbols in reverse order."
+msgid ""
+"-fsched-stalled-insns-dep=<number>\tSet dependence distance checking in "
+"premature scheduling of queued insns."
 msgstr ""
 
-#: lto/lang.opt:109
+#: common.opt:2951
 #, no-c-format
-msgid "Dump the details of LTO objects."
+msgid "Enable the group heuristic in the scheduler."
 msgstr ""
 
-#: lto/lang.opt:113
+#: common.opt:2955
 #, no-c-format
-msgid "Dump the statistics of tree types."
+msgid "Enable the critical path heuristic in the scheduler."
 msgstr ""
 
-#: lto/lang.opt:117
+#: common.opt:2959
 #, no-c-format
-msgid "Dump the statistics of trees."
+msgid "Enable the speculative instruction heuristic in the scheduler."
 msgstr ""
 
-#: lto/lang.opt:121
+#: common.opt:2963
 #, no-c-format
-msgid "Dump the statistics of gimple statements."
+msgid "Enable the rank heuristic in the scheduler."
 msgstr ""
 
-#: lto/lang.opt:131
+#: common.opt:2967
 #, no-c-format
-msgid "Dump the dump tool command line options."
+msgid "Enable the last instruction heuristic in the scheduler."
 msgstr ""
 
-#: lto/lang.opt:135
+#: common.opt:2971
 #, no-c-format
-msgid "Dump the symtab callgraph."
+msgid "Enable the dependent count heuristic in the scheduler."
 msgstr ""
 
-#: common.opt:243
+#: common.opt:2975
 #, no-c-format
-msgid "Provide bash completion for options starting with provided string."
+msgid "Access data in the same section from shared anchor points."
 msgstr ""
 
-#: common.opt:295
+#: common.opt:2987
 #, no-c-format
-msgid "Display this information."
+msgid "Turn on Redundant Extensions Elimination pass."
 msgstr ""
 
-#: common.opt:299
+#: common.opt:2991
 #, no-c-format
-msgid ""
-"--help=<class>\tDisplay descriptions of a specific class of options.  "
-"<class> is one or more of optimizers, target, warnings, undocumented, params."
+msgid "Show column numbers in diagnostics, when available.  Default on."
 msgstr ""
 
-#: common.opt:420
+#: common.opt:2995
 #, no-c-format
 msgid ""
-"Display target specific command line options (including assembler and linker "
-"options)."
+"Emit function prologues only before parts of the function that need it, "
+"rather than at the top of the function."
 msgstr ""
 
-#: common.opt:472
+#: common.opt:3000
 #, no-c-format
-msgid "-O<number>\tSet optimization level to <number>."
+msgid "Shrink-wrap parts of the prologue and epilogue separately."
 msgstr ""
 
-#: common.opt:476
+#: common.opt:3004
 #, no-c-format
-msgid "Optimize for space rather than speed."
+msgid "Disable optimizations observable by IEEE signaling NaNs."
 msgstr ""
 
-#: common.opt:480
+#: common.opt:3008
 #, no-c-format
-msgid "Optimize for speed disregarding exact standards compliance."
+msgid ""
+"Disable floating point optimizations that ignore the IEEE signedness of zero."
 msgstr ""
 
-#: common.opt:484
+#: common.opt:3012
 #, no-c-format
-msgid "Optimize for debugging experience rather than speed or size."
+msgid "Convert floating point constants to single precision constants."
 msgstr ""
 
-#: common.opt:488
+#: common.opt:3016
 #, no-c-format
-msgid "Optimize for space aggressively rather than speed."
+msgid "Split lifetimes of induction variables when loops are unrolled."
 msgstr ""
 
-#: common.opt:528
+#: common.opt:3020
 #, no-c-format
-msgid "This switch is deprecated; use -Wextra instead."
+msgid "Generate discontiguous stack frames."
 msgstr ""
 
-#: common.opt:541
+#: common.opt:3024
 #, no-c-format
-msgid "Warn about returning structures, unions or arrays."
+msgid "Split wide types into independent registers."
 msgstr ""
 
-#: common.opt:545
+#: common.opt:3028
 #, no-c-format
-msgid ""
-"Warn if a loop with constant number of iterations triggers undefined "
-"behavior."
+msgid "Split wide types into independent registers earlier."
 msgstr ""
 
-#: common.opt:552
+#: common.opt:3032
 #, no-c-format
-msgid "Warn if an array is accessed out of bounds."
+msgid "Enable backward propagation of use properties at the SSA level."
 msgstr ""
 
-#: common.opt:556 common.opt:560
+#: common.opt:3036
 #, no-c-format
-msgid "Warn for uses of pointers to deallocated storage."
+msgid "Optimize conditional patterns using SSA PHI nodes."
 msgstr ""
 
-#: common.opt:564
+#: common.opt:3040
 #, no-c-format
-msgid "Warn about inappropriate attribute usage."
+msgid ""
+"Optimize amount of stdarg registers saved to stack at start of function."
 msgstr ""
 
-#: common.opt:568
+#: common.opt:3044
 #, no-c-format
-msgid "Do not warn about specified attributes."
+msgid "Apply variable expansion when loops are unrolled."
 msgstr ""
 
-#: common.opt:572 common.opt:576
+#: common.opt:3048
 #, no-c-format
 msgid ""
-"Warn about type safety and similar errors and mismatches in declarations "
-"with alias attributes."
+"-fstack-check=[no|generic|specific]\tInsert stack checking code into the "
+"program."
 msgstr ""
 
-#: common.opt:580
+#: common.opt:3052
 #, no-c-format
 msgid ""
-"Warn when profiling instrumentation was requested, but could not be applied "
-"to a certain function."
+"Insert stack checking code into the program.  Same as -fstack-check=specific."
 msgstr ""
 
-#: common.opt:585 common.opt:589
+#: common.opt:3056
 #, no-c-format
-msgid "Warn about pointer casts which increase alignment."
+msgid ""
+"Insert code to probe each page of stack space as it is allocated to protect "
+"from stack-clash style attacks."
 msgstr ""
 
-#: common.opt:593
+#: common.opt:3065
 #, no-c-format
 msgid ""
-"Complain when a command-line option is valid, but not applicable to the "
-"current front end."
+"-fstack-limit-register=<register>\tTrap if the stack goes past <register>."
 msgstr ""
 
-#: common.opt:597
+#: common.opt:3069
 #, no-c-format
-msgid "Warn when a #warning directive is encountered."
+msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>."
 msgstr ""
 
-#: common.opt:601
+#: common.opt:3073
 #, no-c-format
-msgid "Warn about uses of __attribute__((warning)) declarations."
+msgid "Use propolice as a stack protection method."
 msgstr ""
 
-#: common.opt:605
+#: common.opt:3077
 #, no-c-format
-msgid "Warn if a deprecated compiler feature, class, method, or field is used."
+msgid "Use a stack protection method for every function."
 msgstr ""
 
-#: common.opt:609
+#: common.opt:3081
 #, no-c-format
-msgid "Warn about uses of __attribute__((deprecated)) declarations."
+msgid "Use a smart stack protection method for certain functions."
 msgstr ""
 
-#: common.opt:613
+#: common.opt:3085
 #, no-c-format
-msgid "Warn when an optimization pass is disabled."
+msgid ""
+"Use stack protection method only for functions with the stack_protect "
+"attribute."
 msgstr ""
 
-#: common.opt:617
+#: common.opt:3089
 #, no-c-format
-msgid "Turn all warnings into errors."
+msgid "Output stack usage information on a per-function basis."
 msgstr ""
 
-#: common.opt:621
+#: common.opt:3101
 #, no-c-format
-msgid "Turn the specified warning into an error."
+msgid "Assume strict aliasing rules apply."
 msgstr ""
 
-#: common.opt:625
+#: common.opt:3105
 #, no-c-format
-msgid "Print extra (possibly unwanted) warnings."
+msgid ""
+"Treat signed overflow as undefined.  Negated as -fwrapv -fwrapv-pointer."
 msgstr ""
 
-#: common.opt:629
+#: common.opt:3109
 #, no-c-format
-msgid "Exit on the first error occurred."
+msgid "Disable stack scrub entirely, disregarding strub attributes."
 msgstr ""
 
-#: common.opt:633
+#: common.opt:3113
 #, no-c-format
-msgid ""
-"-Wframe-larger-than=<byte-size>\tWarn if a function's stack frame requires "
-"in excess of <byte-size>."
+msgid "Enable stack scrub as per attributes, with strict call checking."
 msgstr ""
 
-#: common.opt:637
+#: common.opt:3122
 #, no-c-format
-msgid ""
-"Disable -Wframe-larger-than= warning.  Equivalent to -Wframe-larger-"
-"than=<SIZE_MAX> or larger."
+msgid "Restore default strub mode: as per attributes, with relaxed checking."
 msgstr ""
 
-#: common.opt:641
+#: common.opt:3126
 #, no-c-format
-msgid "Warn when attempting to free a non-heap object."
+msgid "Enable stack scrubbing for all viable functions."
 msgstr ""
 
-#: common.opt:645
+#: common.opt:3130
 #, no-c-format
-msgid "Warn when -fhardened did not enable an option from its set."
+msgid "Enable at-calls stack scrubbing for all viable functions."
 msgstr ""
 
-#: common.opt:656
+#: common.opt:3134
 #, no-c-format
-msgid "Warn when a switch case falls through."
+msgid "Enable internal stack scrubbing for all viable functions."
 msgstr ""
 
-#: common.opt:664
+#: common.opt:3138
 #, no-c-format
-msgid "Warn when an inlined function cannot be inlined."
+msgid "Implement __atomic operations via libcalls to legacy __sync functions."
 msgstr ""
 
-#: common.opt:668
+#: common.opt:3142
 #, no-c-format
-msgid ""
-"Warn when an atomic memory model parameter is known to be outside the valid "
-"range."
+msgid "Check for syntax errors, then stop."
 msgstr ""
 
-#: common.opt:675
+#: common.opt:3146
 #, no-c-format
-msgid ""
-"-Wlarger-than=<byte-size>\tWarn if an object's size exceeds <byte-size>."
+msgid "Create data files needed by \"gcov\"."
 msgstr ""
 
-#: common.opt:679
+#: common.opt:3150
 #, no-c-format
-msgid ""
-"Disable -Wlarger-than= warning.  Equivalent to -Wlarger-than=<SIZE_MAX> or "
-"larger."
+msgid "Perform jump threading optimizations."
 msgstr ""
 
-#: common.opt:683
+#: common.opt:3154
 #, no-c-format
-msgid "Warn if comparing pointer parameter with nonnull attribute with NULL."
+msgid "Report the time taken by each compiler pass."
 msgstr ""
 
-#: common.opt:687
+#: common.opt:3158
 #, no-c-format
-msgid ""
-"Warn if dereferencing a NULL pointer may lead to erroneous or undefined "
-"behavior."
+msgid "Record times taken by sub-phases separately."
 msgstr ""
 
-#: common.opt:698
+#: common.opt:3162
 #, no-c-format
 msgid ""
-"Warn about passing a pointer/reference to a local or temporary variable to a "
-"musttail call argument."
+"-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the "
+"default thread-local storage code generation model."
 msgstr ""
 
-#: common.opt:702
+#: common.opt:3181
 #, no-c-format
-msgid ""
-"Warn about pointer/reference to a local or temporary variable possibly "
-"escaping to a musttail call."
+msgid "Reorder top level functions, variables, and asms."
 msgstr ""
 
-#: common.opt:706
+#: common.opt:3185
 #, no-c-format
-msgid ""
-"Warn about some C++ One Definition Rule violations during link time "
-"optimization."
+msgid "Perform superblock formation via tail duplication."
 msgstr ""
 
-#: common.opt:710
+#: common.opt:3189
 #, no-c-format
-msgid "Warn about overflow in arithmetic expressions."
+msgid ""
+"For targets that normally need trampolines for nested functions, always "
+"generate them instead of using descriptors."
 msgstr ""
 
-#: common.opt:714
+#: common.opt:3194
 #, no-c-format
 msgid ""
-"During link time optimization warn about mismatched types of global "
-"declarations."
+"Whether trampolines are generated in executable memory rather than "
+"executable stack."
 msgstr ""
 
-#: common.opt:718
+#: common.opt:3212
 #, no-c-format
-msgid "Warn when the packed attribute has no effect on struct layout."
+msgid "Assume floating-point operations can trap."
 msgstr ""
 
-#: common.opt:722
+#: common.opt:3216
 #, no-c-format
-msgid "Warn when padding is required to align structure members."
+msgid "Trap for signed overflow in addition, subtraction and multiplication."
 msgstr ""
 
-#: common.opt:726
+#: common.opt:3220
 #, no-c-format
-msgid "Issue warnings needed for strict compliance to the standard."
+msgid "Enable SSA-CCP optimization on trees."
 msgstr ""
 
-#: common.opt:730
+#: common.opt:3224
 #, no-c-format
-msgid ""
-"Warn about returning a pointer/reference to a local or temporary variable."
+msgid "Enable SSA-BIT-CCP optimization on trees."
 msgstr ""
 
-#: common.opt:734
+#: common.opt:3232
 #, no-c-format
-msgid "Warn when one variable shadows another.  Same as -Wshadow=global."
+msgid "Enable loop header copying on trees."
 msgstr ""
 
-#: common.opt:738
+#: common.opt:3240
 #, no-c-format
-msgid "Warn when one variable shadows another (globally)."
+msgid "Enable SSA coalescing of user variables."
 msgstr ""
 
-#: common.opt:742
+#: common.opt:3248
 #, no-c-format
-msgid ""
-"Warn when one local variable shadows another local variable or parameter."
+msgid "Enable copy propagation on trees."
 msgstr ""
 
-#: common.opt:749
+#: common.opt:3256
 #, no-c-format
-msgid ""
-"Warn when one local variable shadows another local variable or parameter of "
-"compatible type."
+msgid "Transform condition stores into unconditional ones."
 msgstr ""
 
-#: common.opt:756
+#: common.opt:3260
 #, no-c-format
-msgid "Warn when not issuing stack smashing protection for some reason."
+msgid "Perform conversions of switch initializations."
 msgstr ""
 
-#: common.opt:760
+#: common.opt:3264
 #, no-c-format
-msgid ""
-"-Wstack-usage=<byte-size>\tWarn if stack usage might exceed <byte-size>."
+msgid "Enable SSA dead code elimination optimization on trees."
 msgstr ""
 
-#: common.opt:764
+#: common.opt:3268
 #, no-c-format
-msgid ""
-"Disable Wstack-usage= warning.  Equivalent to Wstack-usage=<SIZE_MAX> or "
-"larger."
+msgid "Enable dominator optimizations."
 msgstr ""
 
-#: common.opt:768 common.opt:772
+#: common.opt:3272
 #, no-c-format
-msgid "Warn about code which might break strict aliasing rules."
+msgid "Enable tail merging on trees."
 msgstr ""
 
-#: common.opt:776 common.opt:780
+#: common.opt:3276
 #, no-c-format
-msgid "Warn about optimizations that assume that signed overflow is undefined."
+msgid "Enable dead store elimination."
 msgstr ""
 
-#: common.opt:784
+#: common.opt:3280
 #, no-c-format
-msgid ""
-"Warn about functions which might be candidates for __attribute__((cold))."
+msgid "Enable forward propagation on trees."
 msgstr ""
 
-#: common.opt:788
+#: common.opt:3284
 #, no-c-format
-msgid ""
-"Warn about functions which might be candidates for __attribute__((const))."
+msgid "Enable Full Redundancy Elimination (FRE) on trees."
 msgstr ""
 
-#: common.opt:792
+#: common.opt:3288
 #, no-c-format
-msgid ""
-"Warn about functions which might be candidates for __attribute__((pure))."
+msgid "Enable string length optimizations on trees."
 msgstr ""
 
-#: common.opt:796
+#: common.opt:3292
 #, no-c-format
 msgid ""
-"Warn about functions which might be candidates for __attribute__((noreturn))."
+"Detect paths that trigger erroneous or undefined behavior due to "
+"dereferencing a null pointer.  Isolate those paths from the main control "
+"flow and turn the statement with erroneous or undefined behavior into a trap."
 msgstr ""
 
-#: common.opt:800
+#: common.opt:3298
 #, no-c-format
 msgid ""
-"Warn about functions which might be candidates for __attribute__((malloc))."
+"Detect paths that trigger erroneous or undefined behavior due to a null "
+"value being used in a way forbidden by a returns_nonnull or nonnull "
+"attribute.  Isolate those paths from the main control flow and turn the "
+"statement with erroneous or undefined behavior into a trap."
 msgstr ""
 
-#: common.opt:804
+#: common.opt:3305
 #, no-c-format
-msgid ""
-"Warn about functions which might be candidates for "
-"__attribute__((returns_nonnull))."
+msgid "Enable loop distribution on trees."
 msgstr ""
 
-#: common.opt:808
+#: common.opt:3309
 #, no-c-format
-msgid ""
-"Warn about C++ polymorphic types where adding final keyword would improve "
-"code quality."
+msgid "Enable loop distribution for patterns transformed into a library call."
 msgstr ""
 
-#: common.opt:812
+#: common.opt:3313
 #, no-c-format
-msgid ""
-"Warn about C++ virtual methods where adding final keyword would improve code "
-"quality."
+msgid "Enable loop invariant motion on trees."
 msgstr ""
 
-#: common.opt:816
+#: common.opt:3321
 #, no-c-format
-msgid ""
-"Warn about statements between switch's controlling expression and the first "
-"case."
+msgid "Create canonical induction variables in loops."
 msgstr ""
 
-#: common.opt:821
+#: common.opt:3325
 #, no-c-format
-msgid "Do not suppress warnings from system headers."
+msgid "Enable loop optimizations on tree level."
 msgstr ""
 
-#: common.opt:825
+#: common.opt:3329
 #, no-c-format
-msgid "Warn if a comparison always evaluates to true or false."
+msgid ""
+"-ftree-parallelize-loops=<number>\tEnable automatic parallelization of loops."
 msgstr ""
 
-#: common.opt:829
+#: common.opt:3333
 #, no-c-format
-msgid "Warn whenever a trampoline is generated."
+msgid "Enable automatic parallelization of loops."
 msgstr ""
 
-#: common.opt:833
+#: common.opt:3337
 #, no-c-format
-msgid ""
-"Warn about cases where -ftrivial-auto-var-init cannot initialize an auto "
-"variable."
+msgid "Enable hoisting loads from conditional pointers."
 msgstr ""
 
-#: common.opt:837
+#: common.opt:3341
 #, no-c-format
-msgid ""
-"Warn if a comparison is always true or always false due to the limited range "
-"of the data type."
+msgid "Enable SSA-PRE optimization on trees."
 msgstr ""
 
-#: common.opt:841
+#: common.opt:3345
 #, no-c-format
-msgid "Warn about uninitialized automatic variables."
+msgid ""
+"In SSA-PRE optimization on trees, enable partial-partial redundancy "
+"elimination."
 msgstr ""
 
-#: common.opt:845
+#: common.opt:3349
 #, no-c-format
-msgid "Warn about maybe uninitialized automatic variables."
+msgid "Perform function-local points-to analysis on trees."
 msgstr ""
 
-#: common.opt:853
+#: common.opt:3353
 #, no-c-format
-msgid "Enable all -Wunused- warnings."
+msgid "Enable reassociation on tree level."
 msgstr ""
 
-#: common.opt:857
+#: common.opt:3361
 #, no-c-format
-msgid "Warn when a function parameter is only set, otherwise unused."
+msgid "Enable SSA code sinking on trees."
 msgstr ""
 
-#: common.opt:861
+#: common.opt:3365
 #, no-c-format
-msgid "Warn when a variable is only set, otherwise unused."
+msgid "Perform straight-line strength reduction."
 msgstr ""
 
-#: common.opt:865
+#: common.opt:3369
 #, no-c-format
-msgid "Warn when a function is unused."
+msgid "Perform scalar replacement of aggregates."
 msgstr ""
 
-#: common.opt:869
+#: common.opt:3373
 #, no-c-format
-msgid "Warn when a label is unused."
+msgid "Replace temporary expressions in the SSA->normal pass."
 msgstr ""
 
-#: common.opt:873
+#: common.opt:3381
 #, no-c-format
-msgid "Warn when a function parameter is unused."
+msgid "Perform Value Range Propagation on trees."
 msgstr ""
 
-#: common.opt:877
+#: common.opt:3385
 #, no-c-format
-msgid "Warn when an expression value is unused."
+msgid "Split paths leading to loop backedges."
 msgstr ""
 
-#: common.opt:881
+#: common.opt:3389
 #, no-c-format
-msgid "Warn when a variable is unused."
+msgid ""
+"Assume common declarations may be overridden with ones with a larger "
+"trailing array."
 msgstr ""
 
-#: common.opt:885
+#: common.opt:3394
 #, no-c-format
-msgid "Warn in case profiles in -fprofile-use do not match."
+msgid "Compile whole compilation unit at a time."
 msgstr ""
 
-#: common.opt:889
+#: common.opt:3398
 #, no-c-format
-msgid ""
-"Warn in case a function ends earlier than it begins due to an invalid "
-"linenum macros."
+msgid "Trap on __builtin_unreachable instead of using it for optimization."
 msgstr ""
 
-#: common.opt:893
+#: common.opt:3402
 #, no-c-format
-msgid ""
-"Warn when a conditional has too many terms and condition coverage profiling "
-"gives up instrumenting the expression."
+msgid "Perform loop unrolling when iteration count is known."
 msgstr ""
 
-#: common.opt:898
+#: common.opt:3406
 #, no-c-format
-msgid ""
-"-fpath-coverage-limit=<number> Don't instrument functions path count "
-"exceeding <number>."
+msgid "Perform loop unrolling for all loops."
 msgstr ""
 
-#: common.opt:903
+#: common.opt:3421
 #, no-c-format
 msgid ""
-"Warn if a function exceeds the number of paths (controlled by -fpath-"
-"coverage-limit) and path coverage give up instrumenting the function. The "
-"limit is approximate and conservative and coverage might give up even if the "
-"actual number is slightly below the limit."
+"Allow optimization for floating-point arithmetic which may change the result "
+"of the operation due to rounding."
 msgstr ""
 
-#: common.opt:910
+#: common.opt:3426
 #, no-c-format
-msgid "Warn in case profiles in -fprofile-use do not exist."
+msgid "Same as -fassociative-math for expressions which include division."
 msgstr ""
 
-#: common.opt:914
+#: common.opt:3434
 #, no-c-format
-msgid "Warn when a vector operation is compiled outside the SIMD."
+msgid "Allow math optimizations that may violate IEEE or ISO standards."
 msgstr ""
 
-#: common.opt:918
+#: common.opt:3438
 #, no-c-format
-msgid "Warn about unsupported features in ThreadSanitizer."
+msgid "Perform loop unswitching."
 msgstr ""
 
-#: common.opt:934
+#: common.opt:3442
 #, no-c-format
-msgid "-aux-info <file>\tEmit declaration information into <file>."
+msgid "Perform loop splitting."
 msgstr ""
 
-#: common.opt:947
+#: common.opt:3446
 #, no-c-format
-msgid "-d<letters>\tEnable dumps from specific passes of the compiler."
+msgid "Version loops based on whether indices have a stride of one."
 msgstr ""
 
-#: common.opt:951
+#: common.opt:3450
 #, no-c-format
-msgid "-dumpbase <file>\tSet the file basename to be used for dumps."
+msgid "Just generate unwind tables for exception handling."
 msgstr ""
 
-#: common.opt:955
+#: common.opt:3454
 #, no-c-format
-msgid ""
-"-dumpbase-ext .<ext>    Drop a trailing .<ext> from the dump basename to "
-"name auxiliary output files."
+msgid "Use the bfd linker instead of the default linker."
 msgstr ""
 
-#: common.opt:959
+#: common.opt:3458
 #, no-c-format
-msgid "-dumpdir <dir>\tSet the directory name to be used for dumps."
+msgid "Use the gold linker instead of the default linker."
 msgstr ""
 
-#: common.opt:1068
+#: common.opt:3462
 #, no-c-format
-msgid "The version of the C++ ABI in use."
+msgid "Use the lld LLVM linker instead of the default linker."
 msgstr ""
 
-#: common.opt:1072
+#: common.opt:3466
 #, no-c-format
-msgid "Aggressively optimize loops using language constraints."
+msgid "Use the Modern linker (MOLD) linker instead of the default linker."
 msgstr ""
 
-#: common.opt:1076
+#: common.opt:3470
 #, no-c-format
-msgid "Align the start of functions."
+msgid "Use the Wild linker instead of the default linker."
 msgstr ""
 
-#: common.opt:1083
+#: common.opt:3477
 #, no-c-format
-msgid "Align labels which are only reached by jumping."
+msgid "Enable linking of libatomic."
 msgstr ""
 
-#: common.opt:1090
+#: common.opt:3484
 #, no-c-format
-msgid "Align all labels."
+msgid "Perform variable tracking."
 msgstr ""
 
-#: common.opt:1097
+#: common.opt:3491
 #, no-c-format
-msgid "Align the start of loops."
+msgid "Perform variable tracking by annotating assignments."
 msgstr ""
 
-#: common.opt:1104
+#: common.opt:3497
 #, no-c-format
-msgid "Allow the compiler to introduce new data races on stores."
+msgid "Toggle -fvar-tracking-assignments."
 msgstr ""
 
-#: common.opt:1108
+#: common.opt:3504
 #, no-c-format
-msgid "Enable static analysis pass."
+msgid ""
+"Perform variable tracking and also tag variables that are uninitialized."
 msgstr ""
 
-#: common.opt:1128
+#: common.opt:3509
 #, no-c-format
-msgid "Select what to sanitize."
+msgid "Enable vectorization on trees."
 msgstr ""
 
-#: common.opt:1132
+#: common.opt:3517
 #, no-c-format
-msgid "Select type of coverage sanitization."
+msgid "Enable loop vectorization on trees."
 msgstr ""
 
-#: common.opt:1145
+#: common.opt:3521
 #, no-c-format
-msgid "-fasan-shadow-offset=<number>\tUse custom shadow memory offset."
+msgid "Enable basic block vectorization (SLP) on trees."
 msgstr ""
 
-#: common.opt:1149
+#: common.opt:3525
 #, no-c-format
 msgid ""
-"-fsanitize-sections=<sec1,sec2,...>\tSanitize global variables in user-"
-"defined sections."
+"-fvect-cost-model=[unlimited|dynamic|cheap|very-cheap]\tSpecifies the cost "
+"model for vectorization."
 msgstr ""
 
-#: common.opt:1154
+#: common.opt:3529
 #, no-c-format
-msgid "After diagnosing undefined behavior attempt to continue execution."
+msgid ""
+"-fsimd-cost-model=[unlimited|dynamic|cheap|very-cheap]\tSpecifies the "
+"vectorization cost model for code marked with a simd directive."
 msgstr ""
 
-#: common.opt:1158
+#: common.opt:3548
 #, no-c-format
-msgid "This switch is deprecated; use -fsanitize-recover= instead."
+msgid ""
+"Enables the dynamic vectorizer cost model.  Preserved for backward "
+"compatibility."
 msgstr ""
 
-#: common.opt:1162
+#: common.opt:3556
 #, no-c-format
-msgid "Use traps instead of diagnostics of undefined behavior sanitizers."
+msgid "Enable copy propagation of scalar-evolution information."
 msgstr ""
 
-#: common.opt:1172
+#: common.opt:3560
 #, no-c-format
-msgid "This switch is deprecated; use -fsanitize-trap= instead."
+msgid ""
+"-ftrivial-auto-var-init=[uninitialized|pattern|zero]\tAdd initializations to "
+"automatic variables."
 msgstr ""
 
-#: common.opt:1176
+#: common.opt:3582
 #, no-c-format
-msgid "Generate unwind tables that are exact at each instruction boundary."
+msgid "Add extra commentary to assembler output."
 msgstr ""
 
-#: common.opt:1180
+#: common.opt:3586
 #, no-c-format
-msgid "Generate auto-inc/dec instructions."
+msgid ""
+"-fvisibility=[default|internal|hidden|protected]\tSet the default symbol "
+"visibility."
 msgstr ""
 
-#: common.opt:1184
+#: common.opt:3605
 #, no-c-format
-msgid ""
-"Use sample profile information for call graph node weights. The default "
-"profile file is fbdata.afdo in 'pwd'."
+msgid "Validate vtable pointers before using them."
 msgstr ""
 
-#: common.opt:1189
+#: common.opt:3621
 #, no-c-format
-msgid ""
-"Use sample profile information for call graph node weights. The profile file "
-"is specified in the argument."
+msgid "Output vtable verification counters."
 msgstr ""
 
-#: common.opt:1198
+#: common.opt:3625
 #, no-c-format
-msgid "Generate code to check bounds before indexing arrays."
+msgid "Output vtable verification pointer sets information."
 msgstr ""
 
-#: common.opt:1202
+#: common.opt:3629
 #, no-c-format
-msgid "Replace add, compare, branch with branch on count register."
+msgid "Use expression value profiles in optimizations."
 msgstr ""
 
-#: common.opt:1206
+#: common.opt:3633
 #, no-c-format
-msgid "Use profiling information for branch probabilities."
+msgid "Construct webs and split unrelated uses of single variable."
 msgstr ""
 
-#: common.opt:1222
+#: common.opt:3637
 #, no-c-format
-msgid "Output callgraph information on a per-file basis."
+msgid "Enable conditional dead code elimination for builtin calls."
 msgstr ""
 
-#: common.opt:1226
+#: common.opt:3641
 #, no-c-format
-msgid "Output callgraph information on a per-file basis with decorations."
+msgid "Perform whole program optimizations."
 msgstr ""
 
-#: common.opt:1230
+#: common.opt:3645
 #, no-c-format
-msgid ""
-"-fcall-saved-<register>\tMark <register> as being preserved across functions."
+msgid "Assume pointer overflow wraps around."
 msgstr ""
 
-#: common.opt:1234
+#: common.opt:3649
 #, no-c-format
-msgid ""
-"-fcall-used-<register>\tMark <register> as being corrupted by function calls."
+msgid "Assume signed arithmetic overflow wraps around."
 msgstr ""
 
-#: common.opt:1241
+#: common.opt:3653
 #, no-c-format
-msgid "Save registers around function calls."
+msgid "Put zero initialized data in the bss section."
 msgstr ""
 
-#: common.opt:1245
+#: common.opt:3657
 #, no-c-format
-msgid "This switch is deprecated; do not use."
+msgid "Clear call-used registers upon function return."
 msgstr ""
 
-#: common.opt:1249
+#: common.opt:3661
 #, no-c-format
-msgid "Check the return value of new in C++."
+msgid ""
+"-fzero-init-padding-bits=[standard|unions|all]\tZero padding bits in "
+"initializers."
 msgstr ""
 
-#: common.opt:1253 common.opt:1257
+#: common.opt:3677
 #, no-c-format
-msgid "Perform internal consistency checkings."
+msgid "Generate debug information in default format."
 msgstr ""
 
-#: common.opt:1261
+#: common.opt:3681
 #, no-c-format
-msgid ""
-"For -f*-prefix-map= options compare canonicalized pathnames rather than just "
-"strings."
+msgid "Assume assembler support for (DWARF2+) .loc directives."
 msgstr ""
 
-#: common.opt:1265
+#: common.opt:3685
 #, no-c-format
-msgid "Enable code hoisting."
+msgid "Assume assembler support for view in (DWARF2+) .loc directives."
 msgstr ""
 
-#: common.opt:1269
+#: common.opt:3689
 #, no-c-format
-msgid ""
-"Looks for opportunities to reduce stack adjustments and stack references."
+msgid "Generate debug information in CodeView format."
 msgstr ""
 
-#: common.opt:1273
+#: common.opt:3709
 #, no-c-format
-msgid "Put uninitialized globals in the common section."
+msgid "Record DW_AT_decl_column and DW_AT_call_column in DWARF."
 msgstr ""
 
-#: common.opt:1281
+#: common.opt:3715
 #, no-c-format
-msgid ""
-"-fcompare-debug[=<opts>]\tCompile with and without e.g. -gtoggle, and "
-"compare the final-insns dump."
+msgid "Generate CTF debug information at default level."
 msgstr ""
 
-#: common.opt:1285
+#: common.opt:3719
 #, no-c-format
-msgid "Run only the second compilation of -fcompare-debug."
+msgid "Generate BTF debug information at default level."
 msgstr ""
 
-#: common.opt:1289
+#: common.opt:3723
 #, no-c-format
-msgid "Perform comparison elimination after register allocation has finished."
+msgid "Generate pruned BTF when emitting BTF info."
 msgstr ""
 
-#: common.opt:1293
+#: common.opt:3727
 #, no-c-format
-msgid "Do not perform optimizations increasing noticeably stack usage."
+msgid "Generate debug information in default version of DWARF format."
 msgstr ""
 
-#: common.opt:1297
+#: common.opt:3731
 #, no-c-format
-msgid "Perform a register copy-propagation optimization pass."
+msgid "Generate debug information in DWARF v2 (or later) format."
 msgstr ""
 
-#: common.opt:1301
+#: common.opt:3735
 #, no-c-format
-msgid ""
-"Fold instructions calculating memory offsets to the memory access "
-"instruction if possible."
+msgid "Use 32-bit DWARF format when emitting DWARF debug information."
 msgstr ""
 
-#: common.opt:1305
+#: common.opt:3739
 #, no-c-format
-msgid "Perform cross-jumping optimization."
+msgid "Use 64-bit DWARF format when emitting DWARF debug information."
 msgstr ""
 
-#: common.opt:1309
+#: common.opt:3743
 #, no-c-format
-msgid "When running CSE, follow jumps to their targets."
+msgid "Generate debug information in default extended format."
 msgstr ""
 
-#: common.opt:1317
+#: common.opt:3747
 #, no-c-format
-msgid "Omit range reduction step when performing complex division."
+msgid "Generate extended entry point information for inlined functions."
 msgstr ""
 
-#: common.opt:1321
+#: common.opt:3751
 #, no-c-format
-msgid "Complex multiplication and division follow Fortran rules."
+msgid "Compute locview reset points based on insn length estimates."
 msgstr ""
 
-#: common.opt:1325
+#: common.opt:3759
 #, no-c-format
-msgid "Place data items into their own section."
+msgid "Don't generate DWARF pubnames and pubtypes sections."
 msgstr ""
 
-#: common.opt:1329
+#: common.opt:3763
 #, no-c-format
-msgid "List all available debugging counters with their limits and counts."
+msgid "Generate DWARF pubnames and pubtypes sections."
 msgstr ""
 
-#: common.opt:1333
+#: common.opt:3767
 #, no-c-format
-msgid ""
-"-fdbg-cnt=<counter>[:<lower_limit1>-]<upper_limit1>[:<lower_limit2>-"
-"<upper_limit2>:...][,<counter>:...]\tSet the debug counter limit."
+msgid "Generate DWARF pubnames and pubtypes sections with GNU extensions."
 msgstr ""
 
-#: common.opt:1337
+#: common.opt:3771
 #, no-c-format
-msgid ""
-"-fdebug-prefix-map=<old>=<new>\tMap one directory name to another in debug "
-"information."
+msgid "Record gcc command line switches in DWARF DW_AT_producer."
 msgstr ""
 
-#: common.opt:1341
+#: common.opt:3775
 #, no-c-format
-msgid ""
-"-ffile-prefix-map=<old>=<new>\tMap one directory name to another in "
-"compilation result."
+msgid "Generate debug information in separate .dwo files."
 msgstr ""
 
-#: common.opt:1345
+#: common.opt:3787
 #, no-c-format
-msgid "Output .debug_types section when using DWARF v4 debuginfo."
+msgid "Emit progressive recommended breakpoint locations."
 msgstr ""
 
-#: common.opt:1351
+#: common.opt:3791
 #, no-c-format
-msgid "Defer popping functions args from stack until later."
+msgid "Don't emit DWARF additions beyond selected version."
 msgstr ""
 
-#: common.opt:1355
+#: common.opt:3795
 #, no-c-format
-msgid "Attempt to fill delay slots of branch instructions."
+msgid ""
+"Add description attributes to some DWARF DIEs that have no name attribute."
 msgstr ""
 
-#: common.opt:1359
+#: common.opt:3799
 #, no-c-format
-msgid "Delete dead instructions that may throw exceptions."
+msgid "Toggle debug information generation."
 msgstr ""
 
-#: common.opt:1363
+#: common.opt:3803
 #, no-c-format
-msgid "Delete useless null pointer checks."
+msgid "Augment variable location lists with progressive views."
 msgstr ""
 
-#: common.opt:1367
+#: common.opt:3810
 #, no-c-format
-msgid ""
-"Stream extra data to support more aggressive devirtualization in LTO local "
-"transformation mode."
+msgid "Generate debug information in VMS format."
 msgstr ""
 
-#: common.opt:1371
+#: common.opt:3839
 #, no-c-format
-msgid "Perform speculative devirtualization."
+msgid "Generate compressed debug sections."
 msgstr ""
 
-#: common.opt:1375
+#: common.opt:3843
 #, no-c-format
-msgid "Try to convert virtual calls to direct ones."
+msgid "-gz=<format>\tGenerate compressed debug sections in format <format>."
 msgstr ""
 
-#: common.opt:1379
+#: common.opt:3850
 #, no-c-format
-msgid ""
-"-fdiagnostics-show-location=[once|every-line]\tHow often to emit source "
-"location at the beginning of line-wrapped diagnostics."
+msgid "-iplugindir=<dir>\tSet <dir> to be the default plugin directory."
 msgstr ""
 
-#: common.opt:1396
+#: common.opt:3854
 #, no-c-format
-msgid "Show the source line with a caret indicating the column."
+msgid "-imultiarch <dir>\tSet <dir> to be the multiarch include subdirectory."
 msgstr ""
 
-#: common.opt:1400
+#: common.opt:3883
 #, no-c-format
-msgid "Show lines linking related events in diagnostic paths."
+msgid "-o <file>\tPlace output into <file>."
 msgstr ""
 
-#: common.opt:1404
+#: common.opt:3887
 #, no-c-format
-msgid "Show labels annotating ranges of source code when showing source."
+msgid "Enable function profiling."
 msgstr ""
 
-#: common.opt:1408
+#: common.opt:3897
 #, no-c-format
-msgid "Show line numbers in the left margin when showing source."
+msgid "Like -pedantic but issue errors instead of warnings."
 msgstr ""
 
-#: common.opt:1416
+#: common.opt:3938
 #, no-c-format
-msgid "-fdiagnostics-color=[never|always|auto]\tColorize diagnostics."
+msgid "Do not display functions compiled or elapsed time."
 msgstr ""
 
-#: common.opt:1436
+#: common.opt:3942
 #, no-c-format
-msgid "Enable formatting of JSON output."
+msgid "Produce a relocatable object as output."
 msgstr ""
 
-#: common.opt:1440
+#: common.opt:3946
 #, no-c-format
-msgid "-fdiagnostics-urls=[never|always|auto]\tEmbed URLs in diagnostics."
+msgid "Remove all symbol table and relocation information from the executable."
 msgstr ""
 
-#: common.opt:1460
+#: common.opt:3973
 #, no-c-format
-msgid ""
-"-fdiagnostics-column-unit=[display|byte]\tSelect whether column numbers are "
-"output as display columns (default) or raw bytes."
+msgid "Enable verbose output."
 msgstr ""
 
-#: common.opt:1464
+#: common.opt:3977
 #, no-c-format
-msgid ""
-"-fdiagnostics-column-origin=<number>\tSet the number of the first column.  "
-"The default is 1-based as per GNU style, but some utilities may expect 0-"
-"based, for example."
+msgid "Display the compiler's version."
 msgstr ""
 
-#: common.opt:1468
+#: common.opt:3981
 #, no-c-format
-msgid ""
-"-fdiagnostics-format=[text|sarif-stderr|sarif-file|json|json-stderr|json-"
-"file]\tSelect output format."
+msgid "Suppress warnings."
 msgstr ""
 
-#: common.opt:1472
+#: common.opt:3991
 #, no-c-format
-msgid "Add output format."
+msgid "Create a shared library."
 msgstr ""
 
-#: common.opt:1476
+#: common.opt:4058
 #, no-c-format
-msgid "Set output format."
+msgid "Don't create a dynamically linked position independent executable."
 msgstr ""
 
-#: common.opt:1480
+#: common.opt:4062
 #, no-c-format
-msgid ""
-"-fdiagnostics-escape-format=[unicode|bytes]\tSelect how to escape non-"
-"printable-ASCII bytes in the source for diagnostics that suggest it."
+msgid "Create a dynamically linked position independent executable."
 msgstr ""
 
-#: common.opt:1527
+#: common.opt:4066
 #, no-c-format
-msgid "Print fix-it hints in machine-readable form."
+msgid "Create a static position independent executable."
 msgstr ""
 
-#: common.opt:1531
+#: common.opt:4074
 #, no-c-format
-msgid "Print fix-it hints to stderr in unified diff format."
+msgid "Use caller save register across calls if possible."
 msgstr ""
 
-#: common.opt:1535
+#: common.opt:4078
 #, no-c-format
 msgid ""
-"Amend appropriate diagnostic messages with the command line option that "
-"controls them."
+"Perform dead code elimination on zero and sign extensions with special "
+"dataflow analysis."
 msgstr ""
 
-#: common.opt:1539
+#: algol68/lang.opt:37
 #, no-c-format
-msgid "Print CWE identifiers for diagnostic messages, where available."
+msgid "Warn for usage of non-portable extensions of Algol 68."
 msgstr ""
 
-#: common.opt:1543
+#: algol68/lang.opt:41
 #, no-c-format
-msgid "Print any rules associated with diagnostic messages."
+msgid "Warn when voiding occurs."
 msgstr ""
 
-#: common.opt:1547
+#: algol68/lang.opt:49
 #, no-c-format
-msgid ""
-"Use color within diagnostic messages to highlight pertinent information."
+msgid "Warn for potential name scope violations."
 msgstr ""
 
-#: common.opt:1551
+#: algol68/lang.opt:65
 #, no-c-format
-msgid ""
-"Specify how to print any control-flow path associated with a diagnostic."
+msgid "Warn about hidden declarations in inner scopes."
 msgstr ""
 
-#: common.opt:1555
+#: algol68/lang.opt:69
 #, no-c-format
 msgid ""
-"Turn off any diagnostics features that complicate the output, such as line "
-"numbers, color, and warning URLs."
+"-Whidden-declarations=[none|prelude|all] Warn about declarations hidden in "
+"inner scopes."
 msgstr ""
 
-#: common.opt:1559
+#: algol68/lang.opt:73
 #, no-c-format
-msgid ""
-"-ftabstop=<number>      Distance between tab stops for column reporting."
+msgid "-fbrackets  \tConsider [ .. ] and { .. } as being equivalent to ( .. )."
 msgstr ""
 
-#: common.opt:1575
+#: algol68/lang.opt:77 d/lang.opt:190
 #, no-c-format
-msgid "Show stack depths of events in paths."
+msgid "Generate code for assert contracts."
 msgstr ""
 
-#: common.opt:1579
+#: algol68/lang.opt:85
 #, no-c-format
-msgid ""
-"-fdiagnostics-text-art-charset=[none|ascii|unicode|emoji]\tDetermine which "
-"characters to use in text arg diagrams."
+msgid "Dump Algol 68 modes after parsing."
 msgstr ""
 
-#: common.opt:1598
+#: algol68/lang.opt:89
 #, no-c-format
-msgid "Set minimum width of left margin of source code when showing source."
+msgid "Dump Algol 68 parse tree after parsing."
 msgstr ""
 
-#: common.opt:1602
+#: algol68/lang.opt:93
 #, no-c-format
-msgid ""
-"-fdisable-[tree|rtl|ipa]-<pass>=range1+range2\tDisable an optimization pass."
+msgid "Dump the interfaces of module definitions in the compiled packet."
 msgstr ""
 
-#: common.opt:1606
+#: algol68/lang.opt:97
 #, no-c-format
-msgid ""
-"-fenable-[tree|rtl|ipa]-<pass>=range1+range2\tEnable an optimization pass."
+msgid "Link the GNU Algol run-time library statically in the compilation."
 msgstr ""
 
-#: common.opt:1610
+#: algol68/lang.opt:101
 #, no-c-format
-msgid "-fdump-<type>\tDump various compiler internals to a file."
+msgid "Link the GNU Algol 68 run-time library dynamically in the compilation."
 msgstr ""
 
-#: common.opt:1617
+#: algol68/lang.opt:105
 #, no-c-format
-msgid ""
-"-fdump-final-insns=filename\tDump to filename the insns at the end of "
-"translation."
+msgid "Compile strict Algol 68 as defined by the Revised Report."
 msgstr ""
 
-#: common.opt:1621
+#: algol68/lang.opt:109
 #, no-c-format
-msgid "-fdump-go-spec=filename\tWrite all declarations to file as Go code."
+msgid "Accept GNU extensions to Algol 68."
 msgstr ""
 
-#: common.opt:1625
+#: algol68/lang.opt:115
 #, no-c-format
-msgid "Suppress output of addresses in debugging dumps."
+msgid ""
+"-fstropping=[upper|supper]              Stropping regime to expect in Algol "
+"68 programs."
 msgstr ""
 
-#: common.opt:1629
+#: algol68/lang.opt:130 algol68/lang.opt:134
 #, no-c-format
 msgid ""
-"Collect and dump debug information into temporary file if ICE in C/C++ "
-"compiler occurred."
+"-fmodules-map=<mapstring>                 Association between module "
+"indicants and files."
 msgstr ""
 
-#: common.opt:1634
+#: algol68/lang.opt:138 algol68/lang.opt:142
 #, no-c-format
-msgid ""
-"Dump detailed information on GCC's internal representation of source code "
-"locations."
+msgid "-fmodules-map-file=<filename>              File containing modules map."
 msgstr ""
 
-#: common.opt:1638
+#: rust/lang.opt:47 rust/lang.opt:51 c-family/c.opt:1609 c-family/c.opt:1613
 #, no-c-format
-msgid "Dump optimization passes."
+msgid "Warn when a const variable is unused."
 msgstr ""
 
-#: common.opt:1642
+#: rust/lang.opt:55 c-family/c.opt:1625
 #, no-c-format
 msgid ""
-"Suppress output of instruction numbers, line number notes and addresses in "
-"debugging dumps."
+"Warn if a caller of a function, marked with attribute warn_unused_result, "
+"does not use its return value."
 msgstr ""
 
-#: common.opt:1646
+#: rust/lang.opt:63
 #, no-c-format
-msgid "Suppress output of previous and next insn numbers in debugging dumps."
+msgid "-frust-crate=<name>             Set the crate name for the compilation."
 msgstr ""
 
-#: common.opt:1650
+#: rust/lang.opt:67
 #, no-c-format
-msgid "Enable CFI tables via GAS assembler directives."
+msgid ""
+"-frust-extern=              Specify where an external library is located."
 msgstr ""
 
-#: common.opt:1654
+#: rust/lang.opt:71
 #, no-c-format
-msgid "Perform early inlining."
+msgid "Dump various Rust front end internals."
 msgstr ""
 
-#: common.opt:1662
+#: rust/lang.opt:75
 #, no-c-format
-msgid "Perform interprocedural reduction of aggregates."
+msgid ""
+"-frust-dump-<type>              Dump Rust frontend internal information."
 msgstr ""
 
-#: common.opt:1666
+#: rust/lang.opt:79
 #, no-c-format
-msgid "Perform unused symbol elimination in debug info."
+msgid "Enable experimental compilation of Rust files at your own risk."
 msgstr ""
 
-#: common.opt:1670
+#: rust/lang.opt:83
 #, no-c-format
-msgid "Perform unused type elimination in debug info."
+msgid "-frust-max-recursion-depth=<integer>."
 msgstr ""
 
-#: common.opt:1674
+#: rust/lang.opt:87
 #, no-c-format
-msgid "Do not suppress C++ class debug information."
+msgid ""
+"-frust-crate-type=[bin|lib|rlib|dylib|cdylib|staticlib|proc-macro]     Crate "
+"type to emit."
 msgstr ""
 
-#: common.opt:1678
+#: rust/lang.opt:115
 #, no-c-format
-msgid "Enable exception handling."
+msgid "-frust-mangling=[legacy|v0]     Version to use for name mangling."
 msgstr ""
 
-#: common.opt:1682
+#: rust/lang.opt:128
 #, no-c-format
-msgid "Perform a number of minor, expensive optimizations."
+msgid "-frust-cfg=<name>             Set a config expansion option."
 msgstr ""
 
-#: common.opt:1686
+#: rust/lang.opt:132
 #, no-c-format
 msgid ""
-"-fexcess-precision=[fast|standard|16]\tSpecify handling of excess floating-"
-"point precision."
+"-frust-edition=[2015|2018|2021]             Edition to use when compiling "
+"rust code."
 msgstr ""
 
-#: common.opt:1704
+#: rust/lang.opt:148
 #, no-c-format
-msgid ""
-"-fpermitted-flt-eval-methods=[c11|ts-18661]\tSpecify which values of "
-"FLT_EVAL_METHOD are permitted."
+msgid "Enable embedding metadata directly into object files."
 msgstr ""
 
-#: common.opt:1720
+#: rust/lang.opt:152
 #, no-c-format
-msgid ""
-"Output lto objects containing both the intermediate language and binary "
-"output."
+msgid "-frust-metadata-output=<path.rox>  Path to output crate metadata."
 msgstr ""
 
-#: common.opt:1724
+#: rust/lang.opt:160
 #, no-c-format
-msgid "Assume no NaNs or infinities are generated."
+msgid ""
+"-frust-compile-until=[ast|attributecheck|expansion|astvalidation|"
+"featuregating|nameresolution|lowering|typecheck|privacy|unsafety|const|"
+"borrowcheck|compilation|end]             The pipeline will run up until this "
+"stage when compiling Rust code."
 msgstr ""
 
-#: common.opt:1728
+#: rust/lang.opt:209
 #, no-c-format
 msgid ""
-"Assume that loops with an exit will terminate and not loop indefinitely."
+"Use the temporary and experimental name resolution pipeline instead of the "
+"stable one."
 msgstr ""
 
-#: common.opt:1732
+#: rust/lang.opt:213
 #, no-c-format
-msgid ""
-"-ffixed-<register>\tMark <register> as being unavailable to the compiler."
+msgid "Use the WIP borrow checker."
 msgstr ""
 
-#: common.opt:1736
+#: rust/lang.opt:217
 #, no-c-format
-msgid "Don't allocate floats and doubles in extended-precision registers."
+msgid ""
+"-frust-edition=[unwind|abort]             Panic strategy to compile crate "
+"with."
 msgstr ""
 
-#: common.opt:1744
+#: rust/lang.opt:230
 #, no-c-format
-msgid "Perform a forward propagation pass on RTL."
+msgid "Enable the overflow checks in code generation."
 msgstr ""
 
-#: common.opt:1748
+#: rust/lang.opt:234
 #, no-c-format
 msgid ""
-"-ffp-contract=[off|on|fast]\tPerform floating-point expression contraction."
+"Define a built-in offset_of macro in the compiler and assume it is present."
 msgstr ""
 
-#: common.opt:1764
+#: rust/lang.opt:238
 #, no-c-format
-msgid ""
-"Allow built-in functions ceil, floor, round, trunc to raise \"inexact\" "
-"exceptions."
+msgid "Use the new unused variable check implementation."
 msgstr ""
 
-#: common.opt:1771
+#: ada/gcc-interface/lang.opt:57 c-family/c.opt:349
 #, no-c-format
-msgid "Allow function addresses to be held in registers."
+msgid "Enable most warning messages."
 msgstr ""
 
-#: common.opt:1775
+#: ada/gcc-interface/lang.opt:61
 #, no-c-format
-msgid "Place each function into its own section."
+msgid "Dump Source Coverage Obligations."
 msgstr ""
 
-#: common.opt:1779
+#: ada/gcc-interface/lang.opt:65
 #, no-c-format
-msgid "Perform global common subexpression elimination."
+msgid "Synonym of -gnatk8."
 msgstr ""
 
-#: common.opt:1783
+#: ada/gcc-interface/lang.opt:73
 #, no-c-format
-msgid ""
-"Perform enhanced load motion during global common subexpression elimination."
+msgid "Do not look for object files in standard path."
 msgstr ""
 
-#: common.opt:1787
+#: ada/gcc-interface/lang.opt:77
 #, no-c-format
-msgid "Perform store motion after global common subexpression elimination."
+msgid "Select the runtime."
 msgstr ""
 
-#: common.opt:1791
+#: ada/gcc-interface/lang.opt:81 c-family/c.opt:2385
 #, no-c-format
-msgid "Try to avoid store forwarding."
+msgid "Use the narrowest integer type possible for enumeration types."
 msgstr ""
 
-#: common.opt:1795
+#: ada/gcc-interface/lang.opt:85 c-family/c.opt:2397
 #, no-c-format
-msgid ""
-"Perform redundant load after store elimination in global common "
-"subexpression elimination."
+msgid "Make \"char\" signed by default."
 msgstr ""
 
-#: common.opt:1800
+#: ada/gcc-interface/lang.opt:89 c-family/c.opt:2486
 #, no-c-format
-msgid ""
-"Perform global common subexpression elimination after register allocation "
-"has finished."
+msgid "Make \"char\" unsigned by default."
 msgstr ""
 
-#: common.opt:1817
+#: ada/gcc-interface/lang.opt:93
 #, no-c-format
-msgid ""
-"-fgnat-encodings=[all|gdb|minimal]\tSelect the balance between GNAT "
-"encodings and standard DWARF emitted in the debug information."
+msgid "Catch typos."
 msgstr ""
 
-#: common.opt:1822
+#: ada/gcc-interface/lang.opt:97
 #, no-c-format
-msgid "Enable in and out of Graphite representation."
+msgid "Set name of output ALI file (internal switch)."
 msgstr ""
 
-#: common.opt:1826
+#: ada/gcc-interface/lang.opt:101
 #, no-c-format
-msgid "Enable Graphite Identity transformation."
+msgid "-gnat<options>\tSpecify options to GNAT."
 msgstr ""
 
-#: common.opt:1830
+#: ada/gcc-interface/lang.opt:105
 #, no-c-format
-msgid ""
-"Enable hoisting adjacent loads to encourage generating conditional move "
-"instructions."
+msgid "Ignored."
 msgstr ""
 
-#: common.opt:1843
+#: c-family/c.opt:50
 #, no-c-format
 msgid ""
-"Run two instruction combination passes late in the pass pipeline; one before "
-"register allocation and one after."
+"--compile-std-module\tCompile module units for <bits/stdc++.h>, std, and "
+"std.compat."
 msgstr ""
 
-#: common.opt:1848
+#: c-family/c.opt:75
 #, no-c-format
-msgid "Mark all loops as parallel."
+msgid "--embed-dir=<dir>\tAdd <dir> to the #embed path."
 msgstr ""
 
-#: common.opt:1852 common.opt:1860 common.opt:3249
+#: c-family/c.opt:198
 #, no-c-format
-msgid "Enable loop nest transforms.  Same as -floop-nest-optimize."
+msgid ""
+"-A<question>=<answer>\tAssert the <answer> to <question>.  Putting '-' "
+"before <question> disables the <answer> to <question>."
 msgstr ""
 
-#: common.opt:1856
+#: c-family/c.opt:202
 #, no-c-format
-msgid "Enable loop interchange on trees."
+msgid "Do not discard comments."
 msgstr ""
 
-#: common.opt:1864
+#: c-family/c.opt:206
 #, no-c-format
-msgid "Perform unroll-and-jam on loops."
+msgid "Do not discard comments in macro expansions."
 msgstr ""
 
-#: common.opt:1868
+#: c-family/c.opt:210
 #, no-c-format
-msgid "Enable support for GNU transactional memory."
+msgid ""
+"-D<macro>[=<val>]\tDefine a <macro> with <val> as its value.  If just "
+"<macro> is given, <val> is taken to be 1."
 msgstr ""
 
-#: common.opt:1872
+#: c-family/c.opt:217
 #, no-c-format
-msgid "Use STB_GNU_UNIQUE if supported by the assembler."
+msgid "-F <dir>\tAdd <dir> to the end of the main framework include path."
 msgstr ""
 
-#: common.opt:1880
+#: c-family/c.opt:221
 #, no-c-format
-msgid "Enable the loop nest optimizer."
+msgid "Enable parsing GIMPLE."
 msgstr ""
 
-#: common.opt:1884
+#: c-family/c.opt:225
 #, no-c-format
-msgid "Force bitfield accesses to match their type width."
+msgid "Print the name of header files as they are used."
 msgstr ""
 
-#: common.opt:1888
+#: c-family/c.opt:229
 #, no-c-format
-msgid "Merge adjacent stores."
+msgid "-I <dir>\tAdd <dir> to the end of the main include path."
 msgstr ""
 
-#: common.opt:1892
+#: c-family/c.opt:233
 #, no-c-format
-msgid "Enable guessing of branch probabilities."
+msgid "Generate make dependencies."
 msgstr ""
 
-#: common.opt:1896
+#: c-family/c.opt:237
 #, no-c-format
-msgid "Enable various security-relevant flags."
+msgid "Generate make dependencies and compile."
 msgstr ""
 
-#: common.opt:1900
+#: c-family/c.opt:241
 #, no-c-format
-msgid "Harden conditionals not used in branches, checking reversed conditions."
+msgid "-MF <file>\tWrite dependency output to the given file."
 msgstr ""
 
-#: common.opt:1904
+#: c-family/c.opt:245
 #, no-c-format
-msgid "Harden conditional branches by checking reversed conditions."
+msgid "Treat missing header files as generated files."
 msgstr ""
 
-#: common.opt:1908
+#: c-family/c.opt:249
 #, no-c-format
-msgid "Harden control flow by recording and checking execution paths."
+msgid "Like -M but ignore system header files."
 msgstr ""
 
-#: common.opt:1912
+#: c-family/c.opt:253
 #, no-c-format
-msgid "Disable CFR in leaf functions."
+msgid "Like -MD but ignore system header files."
 msgstr ""
 
-#: common.opt:1916
+#: c-family/c.opt:257
 #, no-c-format
-msgid ""
-"Check CFR execution paths also before calls followed by returns of their "
-"results."
+msgid "Generate C++ Module dependency information."
 msgstr ""
 
-#: common.opt:1920
+#: c-family/c.opt:265
 #, no-c-format
-msgid ""
-"Check CFR execution paths also when exiting a function through an exception."
+msgid "Generate phony targets for all headers."
 msgstr ""
 
-#: common.opt:1924
+#: c-family/c.opt:269
 #, no-c-format
-msgid ""
-"-fhardcfr-check-noreturn-calls=[always|no-xthrow|nothrow|never]\tCheck CFR "
-"execution paths also before calling noreturn functions."
+msgid "-MQ <target>\tAdd a target that may require quoting."
 msgstr ""
 
-#: common.opt:1947
+#: c-family/c.opt:273
 #, no-c-format
-msgid "Process #ident directives."
+msgid "-MT <target>\tAdd a target that does not require quoting."
 msgstr ""
 
-#: common.opt:1951
+#: c-family/c.opt:277
 #, no-c-format
-msgid "Perform conversion of conditional jumps to branchless equivalents."
+msgid ""
+"Structured format for output dependency information.  Supported "
+"(\"p1689r5\")."
 msgstr ""
 
-#: common.opt:1955
+#: c-family/c.opt:281
 #, no-c-format
-msgid "Perform conversion of conditional jumps to conditional execution."
+msgid "File for output dependency information."
 msgstr ""
 
-#: common.opt:1959
+#: c-family/c.opt:285
 #, no-c-format
-msgid ""
-"-fstack-reuse=[all|named_vars|none]\tSet stack reuse level for local "
-"variables."
+msgid "-fdeps-target=obj.o Output file for the compile step."
 msgstr ""
 
-#: common.opt:1975
+#: c-family/c.opt:289
 #, no-c-format
-msgid "Convert conditional jumps in innermost loops to branchless equivalents."
+msgid "Do not generate #line directives."
 msgstr ""
 
-#: common.opt:1987
+#: c-family/c.opt:293
 #, no-c-format
-msgid "Do not generate .size directives."
+msgid "-U<macro>\tUndefine <macro>."
 msgstr ""
 
-#: common.opt:1991
+#: c-family/c.opt:297
 #, no-c-format
-msgid "Perform indirect inlining."
+msgid "Warn if the NSObject attribute is applied to a non-typedef."
 msgstr ""
 
-#: common.opt:1997
+#: c-family/c.opt:301
 #, no-c-format
 msgid ""
-"Enable inlining of function declared \"inline\", disabling disables all "
-"inlining."
+"Warn about things that will change when compiling with an ABI-compliant "
+"compiler."
 msgstr ""
 
-#: common.opt:2001
+#: c-family/c.opt:305
 #, no-c-format
 msgid ""
-"Integrate functions into their callers when code size is known not to grow."
+"Warn about things that change between the current -fabi-version and the "
+"specified version."
 msgstr ""
 
-#: common.opt:2005
+#: c-family/c.opt:309
 #, no-c-format
 msgid ""
-"Integrate functions not declared \"inline\" into their callers when "
-"profitable."
+"Warn if a subobject has an abi_tag attribute that the complete object type "
+"does not have."
 msgstr ""
 
-#: common.opt:2009
+#: c-family/c.opt:313
 #, no-c-format
-msgid "Integrate functions only required by their single caller."
+msgid "Warn about code affected by incompatible psABI changes."
 msgstr ""
 
-#: common.opt:2016
+#: c-family/c.opt:317
 #, no-c-format
 msgid ""
-"-finline-limit=<number>\tLimit the size of inlined functions to <number>."
+"Warn on suspicious calls of standard functions computing absolute values."
 msgstr ""
 
-#: common.opt:2020
+#: c-family/c.opt:321
 #, no-c-format
-msgid ""
-"Inline __atomic operations when a lock free instruction sequence is "
-"available."
+msgid "Warn about suspicious uses of memory addresses."
 msgstr ""
 
-#: common.opt:2030
+#: c-family/c.opt:325
 #, no-c-format
-msgid ""
-"-finline-stringops[=memcmp|memcpy|memmove|memset] Expand supported mem/str "
-"operations inline, even if against optimization."
+msgid "Warn when the address of packed member of struct or union is taken."
 msgstr ""
 
-#: common.opt:2058
+#: c-family/c.opt:341
 #, no-c-format
-msgid "Equivalent to -fcf-protection=full."
+msgid "Warn about 'new' of type with extended alignment without -faligned-new."
 msgstr ""
 
-#: common.opt:2062
+#: c-family/c.opt:345
 #, no-c-format
 msgid ""
-"-fcf-protection=[full|branch|return|none|check]\tInstrument functions with "
-"checks to verify jump/call/return control-flow transfer instructions have "
-"valid targets."
+"-Waligned-new=[none|global|all]\tWarn even if 'new' uses a class member "
+"allocation function."
 msgstr ""
 
-#: common.opt:2085
+#: c-family/c.opt:353
 #, no-c-format
-msgid "Instrument function entry and exit with profiling calls."
+msgid "Warn on any use of alloca."
 msgstr ""
 
-#: common.opt:2089
+#: c-family/c.opt:357
 #, no-c-format
-msgid "Instrument function entry and exit with profiling calls invoked once."
+msgid ""
+"Warn when allocating insufficient storage for the target type of the "
+"assigned pointer."
 msgstr ""
 
-#: common.opt:2093
+#: c-family/c.opt:361
 #, no-c-format
 msgid ""
-"-finstrument-functions-exclude-function-list=name,...\tDo not instrument "
-"listed functions."
+"-Walloc-size-larger-than=<bytes>\tWarn for calls to allocation functions "
+"that attempt to allocate objects larger than the specified number of bytes."
 msgstr ""
 
-#: common.opt:2097
+#: c-family/c.opt:366
 #, no-c-format
 msgid ""
-"-finstrument-functions-exclude-file-list=filename,...\tDo not instrument "
-"functions listed in files."
+"Disable Walloc-size-larger-than= warning.  Equivalent to Walloc-size-larger-"
+"than=<SIZE_MAX> or larger."
 msgstr ""
 
-#: common.opt:2101
+#: c-family/c.opt:370
 #, no-c-format
-msgid "Perform interprocedural constant propagation."
+msgid "Warn for calls to allocation functions that specify zero bytes."
 msgstr ""
 
-#: common.opt:2105
+#: c-family/c.opt:374
 #, no-c-format
-msgid "Perform cloning to make Interprocedural constant propagation stronger."
+msgid ""
+"-Walloca-larger-than=<number>\tWarn on unbounded uses of alloca, and on "
+"bounded uses of alloca whose bound can be larger than <number> bytes."
 msgstr ""
 
-#: common.opt:2113
+#: c-family/c.opt:380
 #, no-c-format
-msgid "Perform interprocedural bitwise constant propagation."
+msgid ""
+"Disable Walloca-larger-than= warning.  Equivalent to Walloca-larger-"
+"than=<SIZE_MAX> or larger."
 msgstr ""
 
-#: common.opt:2117
+#: c-family/c.opt:384
 #, no-c-format
-msgid "Perform interprocedural modref analysis."
+msgid ""
+"Warn if conversion of the result of arithmetic might change the value even "
+"though converting the operands cannot."
 msgstr ""
 
-#: common.opt:2121
+#: c-family/c.opt:392
 #, no-c-format
-msgid "Perform reordering and cloning of functions to maximize locality."
+msgid "Warn about comparisons between two operands of array type."
 msgstr ""
 
-#: common.opt:2125
+#: c-family/c.opt:396 c-family/c.opt:400
 #, no-c-format
-msgid "Perform interprocedural profile propagation."
+msgid ""
+"Warn about mismatched declarations of array parameters and unsafe accesses "
+"to them."
 msgstr ""
 
-#: common.opt:2129
+#: c-family/c.opt:404
 #, no-c-format
-msgid "Perform interprocedural points-to analysis."
+msgid ""
+"Warn whenever an Objective-C assignment is being intercepted by the garbage "
+"collector."
 msgstr ""
 
-#: common.opt:2133
+#: c-family/c.opt:408
 #, no-c-format
-msgid "Discover pure and const functions."
+msgid ""
+"Diagnose a placeholder type in a template argument in a function parameter "
+"type."
 msgstr ""
 
-#: common.opt:2137
+#: c-family/c.opt:412
 #, no-c-format
-msgid "Perform Identical Code Folding for functions and read-only variables."
+msgid "Warn about casting functions to incompatible types."
 msgstr ""
 
-#: common.opt:2141
+#: c-family/c.opt:420
 #, no-c-format
-msgid "Perform Identical Code Folding for functions."
+msgid ""
+"-Wbidi-chars=[none|unpaired|any|ucn] Warn about UTF-8 bidirectional control "
+"characters."
 msgstr ""
 
-#: common.opt:2145
+#: c-family/c.opt:443
 #, no-c-format
-msgid "Perform Identical Code Folding for variables."
+msgid ""
+"Warn about boolean expression compared with an integer value different from "
+"true/false."
 msgstr ""
 
-#: common.opt:2149
+#: c-family/c.opt:447
 #, no-c-format
-msgid "Discover read-only and non addressable static variables."
+msgid "Warn about certain operations on boolean expressions."
 msgstr ""
 
-#: common.opt:2153
+#: c-family/c.opt:451
 #, no-c-format
-msgid "Discover read-only, write-only and non-addressable static variables."
+msgid "Warn when a built-in function is declared with the wrong signature."
 msgstr ""
 
-#: common.opt:2157
+#: c-family/c.opt:455
 #, no-c-format
-msgid "Reduce stack alignment on call sites if possible."
+msgid "Warn when a built-in preprocessor macro is undefined or redefined."
 msgstr ""
 
-#: common.opt:2169
+#: c-family/c.opt:459
 #, no-c-format
-msgid "Perform IPA Value Range Propagation."
+msgid "Warn about features not present in ISO C11, but present in ISO C23."
 msgstr ""
 
-#: common.opt:2173
+#: c-family/c.opt:463
 #, no-c-format
-msgid "-fira-algorithm=[CB|priority]\tSet the used IRA algorithm."
+msgid "Deprecated in favor of -Wc11-c23-compat."
 msgstr ""
 
-#: common.opt:2177
+#: c-family/c.opt:467
 #, no-c-format
-msgid ""
-"Assume strict aliasing rules apply across (uninlined) function boundaries."
+msgid "Warn about features not present in ISO C23, but present in ISO C2Y."
 msgstr ""
 
-#: common.opt:2190
+#: c-family/c.opt:471
 #, no-c-format
-msgid "-fira-region=[one|all|mixed]\tSet regions for IRA."
+msgid "Warn about features not present in ISO C90, but present in ISO C99."
 msgstr ""
 
-#: common.opt:2206
+#: c-family/c.opt:475
 #, no-c-format
-msgid "Use IRA based register pressure calculation in RTL hoist optimizations."
+msgid "Warn about features not present in ISO C99, but present in ISO C11."
 msgstr ""
 
-#: common.opt:2211
+#: c-family/c.opt:479
 #, no-c-format
-msgid "Use IRA based register pressure calculation in RTL loop optimizations."
+msgid "Warn about C constructs that are not in the common subset of C and C++."
 msgstr ""
 
-#: common.opt:2216
+#: c-family/c.opt:486
 #, no-c-format
-msgid "Share slots for saving different hard registers."
+msgid ""
+"Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO "
+"C++ 2011."
 msgstr ""
 
-#: common.opt:2220
+#: c-family/c.opt:490
 #, no-c-format
-msgid "Share stack slots for spilled pseudo-registers."
+msgid ""
+"Warn about C++ constructs whose meaning differs between ISO C++ 2011 and ISO "
+"C++ 2014."
 msgstr ""
 
-#: common.opt:2224
+#: c-family/c.opt:497
 #, no-c-format
-msgid "-fira-verbose=<number>\tControl IRA's level of diagnostic messages."
+msgid ""
+"Warn about C++ constructs whose meaning differs between ISO C++ 2014 and ISO "
+"C++ 2017."
 msgstr ""
 
-#: common.opt:2228
+#: c-family/c.opt:504
 #, no-c-format
-msgid "Optimize induction variables on trees."
+msgid ""
+"Warn about C++ constructs whose meaning differs between ISO C++ 2017 and ISO "
+"C++ 2020."
 msgstr ""
 
-#: common.opt:2232
+#: c-family/c.opt:508
 #, no-c-format
-msgid "Use jump tables for sufficiently large switch statements."
+msgid ""
+"Warn about C++ constructs whose meaning differs between ISO C++ 2023 and ISO "
+"C++ 2026."
 msgstr ""
 
-#: common.opt:2236
+#: c-family/c.opt:512
 #, no-c-format
-msgid "Use bit tests for sufficiently large switch statements."
+msgid "Warn about C++11 constructs in code compiled with an older standard."
 msgstr ""
 
-#: common.opt:2240
+#: c-family/c.opt:516
 #, no-c-format
-msgid "Generate code for functions even if they are fully inlined."
+msgid "Warn about C++14 constructs in code compiled with an older standard."
 msgstr ""
 
-#: common.opt:2244
+#: c-family/c.opt:520
 #, no-c-format
-msgid "Generate code for static functions even if they are never called."
+msgid "Warn about C++17 constructs in code compiled with an older standard."
 msgstr ""
 
-#: common.opt:2248
+#: c-family/c.opt:524
 #, no-c-format
-msgid "Emit static const variables even if they are not used."
+msgid "Warn about C++20 constructs in code compiled with an older standard."
 msgstr ""
 
-#: common.opt:2252
+#: c-family/c.opt:528
 #, no-c-format
-msgid "Give external symbols a leading underscore."
+msgid "Warn about C++23 constructs in code compiled with an older standard."
 msgstr ""
 
-#: common.opt:2260
+#: c-family/c.opt:532
 #, no-c-format
-msgid "Do CFG-sensitive rematerialization in LRA."
+msgid "Warn about C++26 constructs in code compiled with an older standard."
 msgstr ""
 
-#: common.opt:2264
+#: c-family/c.opt:536
 #, no-c-format
-msgid "Enable link-time optimization."
+msgid ""
+"Warn about suspicious calls to calloc-like functions where sizeof expression "
+"is the earlier size argument and not the latter."
 msgstr ""
 
-#: common.opt:2268
+#: c-family/c.opt:540
 #, no-c-format
-msgid "Link-time optimization with number of parallel jobs or jobserver."
+msgid "Warn about casts between incompatible function types."
 msgstr ""
 
-#: common.opt:2272
+#: c-family/c.opt:544
 #, no-c-format
-msgid "Enable incremental LTO, with its cache in given directory."
+msgid "Warn about casts which discard qualifiers."
 msgstr ""
 
-#: common.opt:2276
+#: c-family/c.opt:548
 #, no-c-format
 msgid ""
-"Number of cache entries in incremental LTO after which to prune old entries."
+"Warn about a cast to reference type that does not use a related user-defined "
+"conversion function."
 msgstr ""
 
-#: common.opt:2304
+#: c-family/c.opt:552 c-family/c.opt:556
 #, no-c-format
-msgid "Specify the algorithm to partition symbols and vars at linktime."
+msgid "Warn about catch handlers of non-reference type."
 msgstr ""
 
-#: common.opt:2309
+#: c-family/c.opt:560
 #, no-c-format
-msgid "Use zlib/zstd compression level <number> for IL."
+msgid ""
+"Complain about a name being declared as a class member after a previous use "
+"of the same name."
 msgstr ""
 
-#: common.opt:2317
+#: c-family/c.opt:564
 #, no-c-format
-msgid "Report various link-time optimization statistics."
+msgid "Warn about subscripts whose type is \"char\"."
 msgstr ""
 
-#: common.opt:2321
+#: c-family/c.opt:572
 #, no-c-format
-msgid "Report various link-time optimization statistics for WPA only."
+msgid ""
+"Warn when a conversion function will never be called due to the type it "
+"converts to."
 msgstr ""
 
-#: common.opt:2325
+#: c-family/c.opt:576
 #, no-c-format
-msgid "Set errno after built-in math functions."
+msgid "Warn for unsafe raw memory writes to objects of class types."
 msgstr ""
 
-#: common.opt:2329
+#: c-family/c.opt:580
 #, no-c-format
-msgid "-fmax-errors=<number>\tMaximum number of errors to report."
+msgid "Warn about variables that might be changed by \"longjmp\" or \"vfork\"."
 msgstr ""
 
-#: common.opt:2333
+#: c-family/c.opt:584
 #, no-c-format
-msgid "Allow removal of malloc and free pairs when allocated block is unused."
+msgid "Warn about uses of a comma operator within a subscripting expression."
 msgstr ""
 
-#: common.opt:2340
+#: c-family/c.opt:588
 #, no-c-format
-msgid "Report on permanent memory allocation."
+msgid ""
+"Warn about possibly nested block comments, and C++ comments spanning more "
+"than one physical line."
 msgstr ""
 
-#: common.opt:2344
+#: c-family/c.opt:592
 #, no-c-format
-msgid "Report on permanent memory allocation in WPA only."
+msgid "Synonym for -Wcomment."
 msgstr ""
 
-#: common.opt:2351
+#: c-family/c.opt:596
 #, no-c-format
-msgid "Attempt to merge identical constants and constant variables."
+msgid "Warn for conditionally-supported constructs."
 msgstr ""
 
-#: common.opt:2355
+#: c-family/c.opt:600
 #, no-c-format
-msgid "Attempt to merge identical constants across compilation units."
+msgid "Warn for implicit type conversions that may change a value."
 msgstr ""
 
-#: common.opt:2359
+#: c-family/c.opt:604
 #, no-c-format
-msgid "Attempt to merge identical debug strings across compilation units."
+msgid "Warn for converting NULL from/to a non-pointer type."
 msgstr ""
 
-#: common.opt:2363
+#: c-family/c.opt:612
 #, no-c-format
 msgid ""
-"-fmessage-length=<number>\tLimit diagnostics to <number> characters per "
-"line.  0 suppresses line-wrapping."
+"Warn when performing class template argument deduction on a type with no "
+"deduction guides."
 msgstr ""
 
-#: common.opt:2367
+#: c-family/c.opt:617
 #, no-c-format
-msgid "Align the start of every function."
+msgid "Warn when all constructors and destructors are private."
 msgstr ""
 
-#: common.opt:2371
+#: c-family/c.opt:621
 #, no-c-format
-msgid "Perform SMS based modulo scheduling before the first scheduling pass."
+msgid "Warn about dangling else."
 msgstr ""
 
-#: common.opt:2375
+#: c-family/c.opt:625 c-family/c.opt:629
 #, no-c-format
-msgid "Perform SMS based modulo scheduling with register moves allowed."
+msgid "Warn for uses of pointers to auto variables whose lifetime has ended."
 msgstr ""
 
-#: common.opt:2379
+#: c-family/c.opt:633
 #, no-c-format
-msgid "Move loop invariant computations out of loops."
+msgid "Warn when a reference is bound to a temporary whose lifetime has ended."
 msgstr ""
 
-#: common.opt:2383
+#: c-family/c.opt:637
 #, no-c-format
-msgid "Move stores out of loops."
+msgid "Warn about __TIME__, __DATE__ and __TIMESTAMP__ usage."
 msgstr ""
 
-#: common.opt:2387
+#: c-family/c.opt:641
 #, no-c-format
-msgid "Building block for specs-based multilib-aware TFLAGS."
+msgid "Warn when a declaration is found after a statement."
 msgstr ""
 
-#: common.opt:2391
+#: c-family/c.opt:645
 #, no-c-format
-msgid "Use the RTL dead code elimination pass."
+msgid "Warn for missing parameter types in function declarations."
 msgstr ""
 
-#: common.opt:2395
+#: c-family/c.opt:649
 #, no-c-format
-msgid "Use the RTL dead store elimination pass."
+msgid "Warn when an explicitly defaulted function is deleted."
 msgstr ""
 
-#: common.opt:2399
+#: c-family/c.opt:653
 #, no-c-format
-msgid ""
-"Enable/Disable the traditional scheduling in loops that already passed "
-"modulo scheduling."
+msgid "Warn when deleting a pointer to incomplete type."
 msgstr ""
 
-#: common.opt:2403
+#: c-family/c.opt:657
 #, no-c-format
-msgid "Support synchronous non-call exceptions."
+msgid "Warn about deleting polymorphic objects with non-virtual destructors."
 msgstr ""
 
-#: common.opt:2410
+#: c-family/c.opt:665
 #, no-c-format
 msgid ""
-"-foffload-options=<targets>=<options>\tSpecify options for the offloading "
-"targets."
+"Mark implicitly-declared copy operations as deprecated if the class has a "
+"user-provided copy operation."
 msgstr ""
 
-#: common.opt:2414
+#: c-family/c.opt:670
 #, no-c-format
-msgid "-foffload-abi=[lp64|ilp32]\tSet the ABI to use in an offload compiler."
+msgid ""
+"Mark implicitly-declared copy operations as deprecated if the class has a "
+"user-provided copy operation or destructor."
 msgstr ""
 
-#: common.opt:2427
+#: c-family/c.opt:675
 #, no-c-format
-msgid "-foffload-abi-host-opts=<options>\tSpecify host ABI options."
+msgid ""
+"Warn about deprecated arithmetic conversions on operands of enumeration "
+"types."
 msgstr ""
 
-#: common.opt:2431
+#: c-family/c.opt:679
 #, no-c-format
-msgid "When possible do not generate stack frames."
+msgid ""
+"Warn about deprecated arithmetic conversions on operands where one is of "
+"enumeration type and the other is of a floating-point type."
 msgstr ""
 
-#: common.opt:2438
+#: c-family/c.opt:684
 #, no-c-format
 msgid ""
-"Generate SIMD clones for functions with the OpenMP declare target directive."
+"Warn about deprecated space between \"\" and suffix in a user-defined "
+"literal operator."
 msgstr ""
 
-#: common.opt:2457
+#: c-family/c.opt:688
 #, no-c-format
-msgid "Enable all optimization info dumps on stderr."
+msgid ""
+"Warn about calls with arguments to functions declared without parameters."
 msgstr ""
 
-#: common.opt:2461
+#: c-family/c.opt:692
 #, no-c-format
-msgid "-fopt-info[-<type>=filename]\tDump compiler optimization details."
+msgid "Warn about deprecated OpenMP code."
 msgstr ""
 
-#: common.opt:2465
+#: c-family/c.opt:696
 #, no-c-format
 msgid ""
-"Write a SRCFILE.opt-record.json file detailing what optimizations were "
-"performed."
+"Warn about deprecated omission of comma before ... in varargs function "
+"declaration."
 msgstr ""
 
-#: common.opt:2469
+#: c-family/c.opt:700
 #, no-c-format
 msgid ""
-"Detect loops calculating CRC and replace with faster implementation. If the "
-"target supports CRC instruction and the CRC loop uses the same polynomial as "
-"the one used in the CRC instruction, directly replace with the corresponding "
-"CRC instruction. Otherwise, if the target supports carry-less-multiplication "
-"instruction, generate CRC using it. If neither case applies, generate table-"
-"based CRC."
+"Warn about positional initialization of structs requiring designated "
+"initializers."
 msgstr ""
 
-#: common.opt:2483
+#: c-family/c.opt:704
 #, no-c-format
-msgid "Optimize sibling and tail recursive calls."
+msgid "Warn if qualifiers on arrays which are pointer targets are discarded."
 msgstr ""
 
-#: common.opt:2487
+#: c-family/c.opt:708
 #, no-c-format
-msgid "Insert path profiling code."
+msgid "Warn if type qualifiers on pointers are discarded."
 msgstr ""
 
-#: common.opt:2491
+#: c-family/c.opt:712
 #, no-c-format
-msgid "Perform partial inlining."
+msgid "Warn about compile-time integer division by zero."
 msgstr ""
 
-#: common.opt:2495 common.opt:2499
+#: c-family/c.opt:716
 #, no-c-format
-msgid "Report on memory allocation before interprocedural optimization."
+msgid "Warn about implicit conversions from \"float\" to \"double\"."
 msgstr ""
 
-#: common.opt:2503
+#: c-family/c.opt:720
 #, no-c-format
-msgid "Pack structure members together without holes."
+msgid ""
+"Warn when a declaration has duplicate const, volatile, restrict or _Atomic "
+"specifier."
 msgstr ""
 
-#: common.opt:2507
+#: c-family/c.opt:724
 #, no-c-format
-msgid "-fpack-struct=<number>\tSet initial maximum structure member alignment."
+msgid "Warn about duplicated branches in if-else statements."
 msgstr ""
 
-#: common.opt:2511
+#: c-family/c.opt:728
 #, no-c-format
-msgid "Return small aggregates in memory, not registers."
+msgid "Warn about duplicated conditions in an if-else-if chain."
 msgstr ""
 
-#: common.opt:2515
+#: c-family/c.opt:732
 #, no-c-format
-msgid "Perform loop peeling."
+msgid "Warn about violations of Effective C++ style rules."
 msgstr ""
 
-#: common.opt:2519
+#: c-family/c.opt:736
 #, no-c-format
-msgid "Enable machine specific peephole optimizations."
+msgid ""
+"Warn if an additional enum-base is used in an elaborated-type-specifier."
 msgstr ""
 
-#: common.opt:2523
+#: c-family/c.opt:740
 #, no-c-format
-msgid "Enable an RTL peephole pass before sched2."
+msgid "Warn about an empty body in an if or else statement."
 msgstr ""
 
-#: common.opt:2527
+#: c-family/c.opt:744
 #, no-c-format
-msgid "Generate position-independent code if possible (large mode)."
+msgid "Warn about stray tokens after #else and #endif."
 msgstr ""
 
-#: common.opt:2531
+#: c-family/c.opt:748
 #, no-c-format
-msgid ""
-"Generate position-independent code for executables if possible (large mode)."
+msgid "Warn about comparison of different enum types."
 msgstr ""
 
-#: common.opt:2535
+#: c-family/c.opt:752
 #, no-c-format
-msgid "Generate position-independent code if possible (small mode)."
+msgid "Warn about implicit conversion of enum types."
 msgstr ""
 
-#: common.opt:2539
+#: c-family/c.opt:756
 #, no-c-format
-msgid ""
-"Generate position-independent code for executables if possible (small mode)."
+msgid "Warn about enum/integer type mismatches."
 msgstr ""
 
-#: common.opt:2543
+#: c-family/c.opt:764
 #, no-c-format
 msgid ""
-"Use PLT for PIC calls (-fno-plt: load the address from GOT at call site)."
+"This switch is deprecated; use -Werror=implicit-function-declaration instead."
 msgstr ""
 
-#: common.opt:2547
+#: c-family/c.opt:768
 #, no-c-format
-msgid "Specify a plugin to load."
+msgid "Warn when an exception handler is shadowed by another handler."
 msgstr ""
 
-#: common.opt:2551
+#: c-family/c.opt:772
 #, no-c-format
-msgid ""
-"-fplugin-arg-<name>-<key>[=<value>]\tSpecify argument <key>=<value> for "
-"plugin <name>."
+msgid "Warn if \"defined\" is used outside #if."
 msgstr ""
 
-#: common.opt:2555
+#: c-family/c.opt:776
 #, no-c-format
-msgid "Run predictive commoning optimization."
+msgid ""
+"Warn about naming a TU-local entity declared in another translation unit."
 msgstr ""
 
-#: common.opt:2559
+#: c-family/c.opt:780
 #, no-c-format
-msgid "Generate prefetch instructions, if available, for arrays in loops."
+msgid ""
+"Warn when a module exposes a TU-local entity from the global module fragment."
 msgstr ""
 
-#: common.opt:2563
+#: c-family/c.opt:788
 #, no-c-format
-msgid "Enable basic program profiling code."
+msgid "Warn about semicolon after in-class function definition."
 msgstr ""
 
-#: common.opt:2567
+#: c-family/c.opt:792
 #, no-c-format
-msgid "Generate absolute source path names for gcov."
+msgid ""
+"Warn when a structure containing a C99 flexible array member as the last "
+"field is not at the end of another structure."
 msgstr ""
 
-#: common.opt:2571
+#: c-family/c.opt:797
 #, no-c-format
-msgid "Insert arc-based program profiling code."
+msgid ""
+"Warn for implicit type conversions that cause loss of floating point "
+"precision."
 msgstr ""
 
-#: common.opt:2575
+#: c-family/c.opt:801
 #, no-c-format
-msgid "Insert condition coverage profiling code."
+msgid "Warn if testing floating point numbers for equality."
 msgstr ""
 
-#: common.opt:2579
+#: c-family/c.opt:805 c-family/c.opt:860
 #, no-c-format
-msgid ""
-"Set the top-level directory for storing the profile data. The default is "
-"'pwd'."
+msgid "Warn about printf/scanf/strftime/strfmon format string anomalies."
 msgstr ""
 
-#: common.opt:2584
+#: c-family/c.opt:809
 #, no-c-format
-msgid "Select the name for storing the profile note file."
+msgid "Warn about format strings that contain NUL bytes."
 msgstr ""
 
-#: common.opt:2588
+#: c-family/c.opt:813
 #, no-c-format
-msgid "Enable correction of flow inconsistent profile data input."
+msgid "Warn about GCC format strings with strings unsuitable for diagnostics."
 msgstr ""
 
-#: common.opt:2592
+#: c-family/c.opt:817
 #, no-c-format
-msgid ""
-"-fprofile-update=[single|atomic|prefer-atomic]\tSet the profile update "
-"method."
+msgid "Warn if passing too many arguments to a function for its format string."
 msgstr ""
 
-#: common.opt:2596
+#: c-family/c.opt:821
 #, no-c-format
-msgid ""
-"Instrument only functions from files whose name matches any of the regular "
-"expressions (separated by semi-colons)."
+msgid "Warn about format strings that are not literals."
 msgstr ""
 
-#: common.opt:2600
+#: c-family/c.opt:825
 #, no-c-format
 msgid ""
-"Instrument only functions from files whose name does not match any of the "
-"regular expressions (separated by semi-colons)."
+"Warn about function calls with format strings that write past the end of the "
+"destination region.  Same as -Wformat-overflow=1."
 msgstr ""
 
-#: common.opt:2616
+#: c-family/c.opt:830
 #, no-c-format
 msgid ""
-"-fprofile-reproducible=[serial|parallel-runs|multithreaded]\tControl level "
-"of reproducibility of profile gathered by -fprofile-generate."
+"Warn about function calls with format strings that write past the end of the "
+"destination region."
 msgstr ""
 
-#: common.opt:2632
+#: c-family/c.opt:835
 #, no-c-format
-msgid ""
-"Remove prefix from absolute path before mangling name for -fprofile-"
-"generate= and -fprofile-use=."
+msgid "Warn about possible security problems with format functions."
 msgstr ""
 
-#: common.opt:2636
+#: c-family/c.opt:839
 #, no-c-format
-msgid ""
-"-fprofile-prefix-map=<old>=<new>\tMap one directory name to another in GCOV "
-"coverage result."
+msgid "Warn about sign differences with format functions."
 msgstr ""
 
-#: common.opt:2640
+#: c-family/c.opt:843
 #, no-c-format
 msgid ""
-"Enable common options for generating profile info for profile feedback "
-"directed optimizations."
+"Warn about calls to snprintf and similar functions that truncate output. "
+"Same as -Wformat-truncation=1."
 msgstr ""
 
-#: common.opt:2644
+#: c-family/c.opt:848
 #, no-c-format
 msgid ""
-"Enable common options for generating profile info for profile feedback "
-"directed optimizations, and set -fprofile-dir=."
+"Warn about calls to snprintf and similar functions that truncate output."
 msgstr ""
 
-#: common.opt:2648
+#: c-family/c.opt:852
 #, no-c-format
-msgid ""
-"Register the profile information in the .gcov_info section instead of using "
-"a constructor/destructor."
+msgid "Warn about strftime formats yielding 2-digit years."
 msgstr ""
 
-#: common.opt:2652
+#: c-family/c.opt:856
 #, no-c-format
-msgid ""
-"Register the profile information in the specified section instead of using a "
-"constructor/destructor."
+msgid "Warn about zero-length formats."
 msgstr ""
 
-#: common.opt:2656
+#: c-family/c.opt:864
 #, no-c-format
 msgid ""
-"Do not assume that functions never executed during the train run are cold."
+"Warn when __builtin_frame_address or __builtin_return_address is used "
+"unsafely."
 msgstr ""
 
-#: common.opt:2660
+#: c-family/c.opt:868
 #, no-c-format
 msgid ""
-"Enable common options for performing profile feedback directed optimizations."
+"Warn about labels on declarations and at the end of compound statements."
 msgstr ""
 
-#: common.opt:2664
+#: c-family/c.opt:872
 #, no-c-format
 msgid ""
-"Enable common options for performing profile feedback directed "
-"optimizations, and set -fprofile-dir=."
+"Warn about the global module fragment not containing only preprocessing "
+"directives."
 msgstr ""
 
-#: common.opt:2668
+#: c-family/c.opt:876
 #, no-c-format
-msgid "Insert code to profile values of expressions."
+msgid ""
+"Warn when #ifndef of a header guard is followed by #define of a different "
+"macro with the header guard macro not defined at the end of header."
 msgstr ""
 
-#: common.opt:2672
+#: c-family/c.opt:880
 #, no-c-format
-msgid "Report on consistency of profile."
+msgid "Warn when the field in a struct is not aligned."
 msgstr ""
 
-#: common.opt:2676
+#: c-family/c.opt:884
 #, no-c-format
-msgid "Enable function reordering that improves code placement."
+msgid "Warn whenever type qualifiers are ignored."
 msgstr ""
 
-#: common.opt:2680
+#: c-family/c.opt:888
 #, no-c-format
-msgid "Insert NOP instructions at each function entry."
+msgid "Warn whenever attributes are ignored."
 msgstr ""
 
-#: common.opt:2687
+#: c-family/c.opt:892
 #, no-c-format
-msgid "-frandom-seed=<string>\tMake compile reproducible using <string>."
+msgid "Warn about implicit declarations."
 msgstr ""
 
-#: common.opt:2697
+#: c-family/c.opt:900
 #, no-c-format
-msgid "Record gcc command line switches in the object file."
+msgid "Warn about implicit function declarations."
 msgstr ""
 
-#: common.opt:2701
+#: c-family/c.opt:904
 #, no-c-format
-msgid "Return small aggregates in registers."
+msgid "Warn when a declaration does not specify a type."
 msgstr ""
 
-#: common.opt:2709
+#: c-family/c.opt:911
 #, no-c-format
-msgid ""
-"Tell DSE that the storage for a C++ object is dead when the constructor "
-"starts and when the destructor finishes."
+msgid "Warn when a base is inaccessible in derived due to ambiguity."
 msgstr ""
 
-#: common.opt:2723
+#: c-family/c.opt:915
 #, no-c-format
 msgid ""
-"-flive-patching=[inline-only-static|inline-clone]\tControl IPA optimizations "
-"to provide a safe compilation for live-patching.  At the same time, provides "
-"multiple-level control on the enabled IPA optimizations."
+"Warn when there is a conversion between pointers that have incompatible "
+"types."
 msgstr ""
 
-#: common.opt:2738
+#: c-family/c.opt:923
 #, no-c-format
-msgid "Tell DCE to remove unused C++ allocations."
+msgid "Warn about variables which are initialized to themselves."
 msgstr ""
 
-#: common.opt:2742
+#: c-family/c.opt:927
 #, no-c-format
-msgid "Relief of register pressure through live range shrinkage."
+msgid ""
+"Warn about uses of std::initializer_list that can result in dangling "
+"pointers."
 msgstr ""
 
-#: common.opt:2746
+#: c-family/c.opt:931
 #, no-c-format
-msgid "Perform a register renaming optimization pass."
+msgid ""
+"Warn about nonsensical values of --param destructive-interference-size or "
+"constructive-interference-size."
 msgstr ""
 
-#: common.opt:2750
+#: c-family/c.opt:936
 #, no-c-format
-msgid "Perform a target dependent instruction fusion optimization pass."
+msgid ""
+"Warn about C++11 inheriting constructors when the base has a variadic "
+"constructor."
 msgstr ""
 
-#: common.opt:2754
+#: c-family/c.opt:940
 #, no-c-format
-msgid "Reorder basic blocks to improve code placement."
+msgid ""
+"Warn about incompatible integer to pointer and pointer to integer "
+"conversions."
 msgstr ""
 
-#: common.opt:2758
+#: c-family/c.opt:944
 #, no-c-format
-msgid ""
-"-freorder-blocks-algorithm=[simple|stc]\tSet the used basic block reordering "
-"algorithm."
+msgid "Warn for suspicious integer expressions in boolean context."
 msgstr ""
 
-#: common.opt:2771
+#: c-family/c.opt:948
 #, no-c-format
-msgid "Reorder basic blocks and partition into hot and cold sections."
+msgid ""
+"Warn when there is a cast to a pointer from an integer of a different size."
 msgstr ""
 
-#: common.opt:2775
+#: c-family/c.opt:952
 #, no-c-format
-msgid "Reorder functions to improve code placement."
+msgid "Warn when a function never produces a constant expression."
 msgstr ""
 
-#: common.opt:2779
+#: c-family/c.opt:956
 #, no-c-format
-msgid "Add a common subexpression elimination pass after loop optimizations."
+msgid "Warn about invalid uses of the \"offsetof\" macro."
 msgstr ""
 
-#: common.opt:2787
+#: c-family/c.opt:960
 #, no-c-format
-msgid "Disable optimizations that assume default FP rounding behavior."
+msgid "Warn about PCH files that are found but not used."
 msgstr ""
 
-#: common.opt:2791
+#: c-family/c.opt:964
 #, no-c-format
-msgid "Enable scheduling across basic blocks."
+msgid "Warn about invalid UTF-8 characters."
 msgstr ""
 
-#: common.opt:2795
+#: c-family/c.opt:968
 #, no-c-format
-msgid "Enable register pressure sensitive insn scheduling."
+msgid "Warn when a jump misses a variable initialization."
 msgstr ""
 
-#: common.opt:2799
+#: c-family/c.opt:987
 #, no-c-format
-msgid "Allow speculative motion of non-loads."
+msgid ""
+"Warn about defining or undefining macros with identifiers equal to keywords "
+"(or for C++ conditional keywords or standard attribute names)."
 msgstr ""
 
-#: common.opt:2803
+#: c-family/c.opt:991
 #, no-c-format
-msgid "Allow speculative motion of some loads."
+msgid ""
+"Warn about leading whitespace style issues on lines except when in raw "
+"string literals."
 msgstr ""
 
-#: common.opt:2807
+#: c-family/c.opt:995
 #, no-c-format
-msgid "Allow speculative motion of more loads."
+msgid ""
+"Warn when a string or character literal is followed by a ud-suffix which "
+"does not begin with an underscore."
 msgstr ""
 
-#: common.opt:2811
+#: c-family/c.opt:999
 #, no-c-format
-msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler."
+msgid ""
+"Warn when logical not is used on the left hand side operand of a comparison."
 msgstr ""
 
-#: common.opt:2815
+#: c-family/c.opt:1003
 #, no-c-format
-msgid "If scheduling post reload, do superblock scheduling."
+msgid ""
+"Warn when a logical operator is suspiciously always evaluating to true or "
+"false."
 msgstr ""
 
-#: common.opt:2823
+#: c-family/c.opt:1007
 #, no-c-format
-msgid "Reschedule instructions before register allocation."
+msgid "Do not warn about using \"long long\" when -pedantic."
 msgstr ""
 
-#: common.opt:2827
+#: c-family/c.opt:1011
 #, no-c-format
-msgid "Reschedule instructions after register allocation."
+msgid "Warn about suspicious declarations of \"main\"."
 msgstr ""
 
-#: common.opt:2834
+#: c-family/c.opt:1023
 #, no-c-format
-msgid "Schedule instructions using selective scheduling algorithm."
+msgid ""
+"Warn about suspicious calls to memset where the third argument contains the "
+"number of elements not multiplied by the element size."
 msgstr ""
 
-#: common.opt:2838
+#: c-family/c.opt:1027
 #, no-c-format
-msgid "Run selective scheduling after reload."
+msgid ""
+"Warn about suspicious calls to memset where the third argument is constant "
+"literal zero and the second is not."
 msgstr ""
 
-#: common.opt:2842
+#: c-family/c.opt:1031
 #, no-c-format
-msgid "Run self-tests, using the given path to locate test files."
+msgid ""
+"Warn when the indentation of the code does not reflect the block structure."
 msgstr ""
 
-#: common.opt:2846
+#: c-family/c.opt:1035
 #, no-c-format
-msgid "Perform software pipelining of inner loops during selective scheduling."
+msgid ""
+"Warn for deallocation calls with arguments returned from mismatched "
+"allocation functions."
 msgstr ""
 
-#: common.opt:2850
+#: c-family/c.opt:1040
 #, no-c-format
-msgid "Perform software pipelining of outer loops during selective scheduling."
+msgid ""
+"Warn for mismatches between calls to operator new or delete and the "
+"corresponding call to the allocation or deallocation function."
 msgstr ""
 
-#: common.opt:2854
+#: c-family/c.opt:1045
 #, no-c-format
-msgid "Reschedule pipelined regions without pipelining."
+msgid ""
+"Warn when a class is redeclared or referenced using a mismatched class-key."
 msgstr ""
 
-#: common.opt:2858
+#: c-family/c.opt:1049
 #, no-c-format
 msgid ""
-"Allow interposing function (or variables) by ones with different semantics "
-"(or initializer) respectively by dynamic linker."
+"Warn about declarations of entities that may be missing attributes that "
+"related entities have been declared with."
 msgstr ""
 
-#: common.opt:2864
+#: c-family/c.opt:1054
 #, no-c-format
-msgid "Allow premature scheduling of queued insns."
+msgid "Warn about possibly missing braces around initializers."
 msgstr ""
 
-#: common.opt:2868
+#: c-family/c.opt:1058
 #, no-c-format
-msgid ""
-"-fsched-stalled-insns=<number>\tSet number of queued insns that can be "
-"prematurely scheduled."
+msgid "Warn about global functions without previous declarations."
 msgstr ""
 
-#: common.opt:2876
+#: c-family/c.opt:1062
 #, no-c-format
-msgid ""
-"Set dependence distance checking in premature scheduling of queued insns."
+msgid "Warn about missing fields in struct initializers."
 msgstr ""
 
-#: common.opt:2880
+#: c-family/c.opt:1070
 #, no-c-format
-msgid ""
-"-fsched-stalled-insns-dep=<number>\tSet dependence distance checking in "
-"premature scheduling of queued insns."
+msgid "Warn about user-specified include directories that do not exist."
 msgstr ""
 
-#: common.opt:2884
+#: c-family/c.opt:1074
 #, no-c-format
-msgid "Enable the group heuristic in the scheduler."
+msgid "Warn about function definitions omitting parameter names."
 msgstr ""
 
-#: common.opt:2888
+#: c-family/c.opt:1078
 #, no-c-format
-msgid "Enable the critical path heuristic in the scheduler."
+msgid ""
+"Warn about function parameters declared without a type specifier in K&R-"
+"style functions."
 msgstr ""
 
-#: common.opt:2892
+#: c-family/c.opt:1082
 #, no-c-format
-msgid "Enable the speculative instruction heuristic in the scheduler."
+msgid "Warn about global functions without prototypes."
 msgstr ""
 
-#: common.opt:2896
+#: c-family/c.opt:1086
 #, no-c-format
-msgid "Enable the rank heuristic in the scheduler."
+msgid "Warn about likely missing requires keyword."
 msgstr ""
 
-#: common.opt:2900
+#: c-family/c.opt:1090
 #, no-c-format
-msgid "Enable the last instruction heuristic in the scheduler."
+msgid ""
+"Warn when the template keyword is missing after a member access token in a "
+"dependent member access expression if that member is a template."
 msgstr ""
 
-#: common.opt:2904
+#: c-family/c.opt:1094
 #, no-c-format
-msgid "Enable the dependent count heuristic in the scheduler."
+msgid "Warn about global variables without previous declarations."
 msgstr ""
 
-#: common.opt:2908
+#: c-family/c.opt:1101
 #, no-c-format
-msgid "Access data in the same section from shared anchor points."
+msgid "Warn about use of multi-character character constants."
 msgstr ""
 
-#: common.opt:2920
+#: c-family/c.opt:1105
 #, no-c-format
-msgid "Turn on Redundant Extensions Elimination pass."
+msgid "Warn on direct multiple inheritance."
 msgstr ""
 
-#: common.opt:2924
+#: c-family/c.opt:1109
 #, no-c-format
-msgid "Show column numbers in diagnostics, when available.  Default on."
+msgid "Warn for multiple lists of forward declarations of function parameters."
 msgstr ""
 
-#: common.opt:2928
+#: c-family/c.opt:1113
 #, no-c-format
 msgid ""
-"Emit function prologues only before parts of the function that need it, "
-"rather than at the top of the function."
+"Warn about unsafe macros expanding to multiple statements used as a body of "
+"a clause such as if, else, while, switch, or for."
 msgstr ""
 
-#: common.opt:2933
+#: c-family/c.opt:1117
 #, no-c-format
-msgid "Shrink-wrap parts of the prologue and epilogue separately."
+msgid "Warn on namespace definition."
 msgstr ""
 
-#: common.opt:2937
+#: c-family/c.opt:1121
 #, no-c-format
-msgid "Disable optimizations observable by IEEE signaling NaNs."
+msgid ""
+"Warn about narrowing conversions within { } that are ill-formed in C++11."
 msgstr ""
 
-#: common.opt:2941
+#: c-family/c.opt:1125
 #, no-c-format
-msgid ""
-"Disable floating point optimizations that ignore the IEEE signedness of zero."
+msgid "Warn about \"extern\" declarations not at file scope."
 msgstr ""
 
-#: common.opt:2945
+#: c-family/c.opt:1129
 #, no-c-format
-msgid "Convert floating point constants to single precision constants."
+msgid ""
+"Warn when a noexcept expression evaluates to false even though the "
+"expression can't actually throw."
 msgstr ""
 
-#: common.opt:2949
+#: c-family/c.opt:1133
 #, no-c-format
-msgid "Split lifetimes of induction variables when loops are unrolled."
+msgid ""
+"Warn if C++17 noexcept function type will change the mangled name of a "
+"symbol."
 msgstr ""
 
-#: common.opt:2953
+#: c-family/c.opt:1137
 #, no-c-format
-msgid "Generate discontiguous stack frames."
+msgid ""
+"Warn for non-C compatible unnamed classes with a typedef name for linkage "
+"purposes."
 msgstr ""
 
-#: common.opt:2957
+#: c-family/c.opt:1141
 #, no-c-format
-msgid "Split wide types into independent registers."
+msgid ""
+"Warn when non-templatized friend functions are declared within a template."
 msgstr ""
 
-#: common.opt:2961
+#: c-family/c.opt:1145
 #, no-c-format
-msgid "Split wide types into independent registers earlier."
+msgid "Warn about non-virtual destructors."
 msgstr ""
 
-#: common.opt:2965
+#: c-family/c.opt:1149
 #, no-c-format
-msgid "Enable backward propagation of use properties at the SSA level."
+msgid ""
+"Warn about NULL being passed to argument slots marked as requiring non-NULL."
 msgstr ""
 
-#: common.opt:2969
+#: c-family/c.opt:1165
 #, no-c-format
-msgid "Optimize conditional patterns using SSA PHI nodes."
+msgid ""
+"-Wnormalized=[none|id|nfc|nfkc]\tWarn about non-normalized Unicode strings."
 msgstr ""
 
-#: common.opt:2973
+#: c-family/c.opt:1188
 #, no-c-format
 msgid ""
-"Optimize amount of stdarg registers saved to stack at start of function."
+"Warn if a class interface has no superclass.  Root classes may use an "
+"attribute to suppress this warning."
 msgstr ""
 
-#: common.opt:2977
+#: c-family/c.opt:1193
 #, no-c-format
-msgid "Apply variable expansion when loops are unrolled."
+msgid "Warn if a C-style cast is used in a program."
 msgstr ""
 
-#: common.opt:2981
+#: c-family/c.opt:1197
 #, no-c-format
-msgid ""
-"-fstack-check=[no|generic|specific]\tInsert stack checking code into the "
-"program."
+msgid "Warn for obsolescent usage in a declaration."
 msgstr ""
 
-#: common.opt:2985
+#: c-family/c.opt:1201
 #, no-c-format
-msgid ""
-"Insert stack checking code into the program.  Same as -fstack-check=specific."
+msgid "Warn if an old-style parameter definition is used."
 msgstr ""
 
-#: common.opt:2989
+#: c-family/c.opt:1205
 #, no-c-format
 msgid ""
-"Insert code to probe each page of stack space as it is allocated to protect "
-"from stack-clash style attacks."
+"Warn about potentially suboptimal choices related to OpenACC parallelism."
 msgstr ""
 
-#: common.opt:2997
+#: c-family/c.opt:1209
 #, no-c-format
-msgid ""
-"-fstack-limit-register=<register>\tTrap if the stack goes past <register>."
+msgid "Warn about suspicious OpenMP code."
 msgstr ""
 
-#: common.opt:3001
+#: c-family/c.opt:1213
 #, no-c-format
-msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>."
+msgid "Warn if a simd directive is overridden by the vectorizer cost model."
 msgstr ""
 
-#: common.opt:3005
+#: c-family/c.opt:1217
 #, no-c-format
-msgid "Use propolice as a stack protection method."
+msgid ""
+"Warn if a string is longer than the maximum portable length specified by the "
+"standard."
 msgstr ""
 
-#: common.opt:3009
+#: c-family/c.opt:1221 c-family/c.opt:1225
 #, no-c-format
-msgid "Use a stack protection method for every function."
+msgid "Warn about overloaded virtual function names."
 msgstr ""
 
-#: common.opt:3013
+#: c-family/c.opt:1229
 #, no-c-format
-msgid "Use a smart stack protection method for certain functions."
+msgid "Warn about overriding initializers without side effects."
 msgstr ""
 
-#: common.opt:3017
+#: c-family/c.opt:1233
 #, no-c-format
-msgid ""
-"Use stack protection method only for functions with the stack_protect "
-"attribute."
+msgid "Warn about overriding initializers with side effects."
 msgstr ""
 
-#: common.opt:3021
+#: c-family/c.opt:1237
 #, no-c-format
-msgid "Output stack usage information on a per-function basis."
+msgid ""
+"Warn if the named return value optimization is not performed although it is "
+"allowed."
 msgstr ""
 
-#: common.opt:3033
+#: c-family/c.opt:1241
 #, no-c-format
-msgid "Assume strict aliasing rules apply."
+msgid "Warn about packed bit-fields whose offset changed in GCC 4.4."
 msgstr ""
 
-#: common.opt:3037
+#: c-family/c.opt:1245
 #, no-c-format
-msgid ""
-"Treat signed overflow as undefined.  Negated as -fwrapv -fwrapv-pointer."
+msgid "Warn when fields in a struct with the packed attribute are misaligned."
 msgstr ""
 
-#: common.opt:3041
+#: c-family/c.opt:1249
 #, no-c-format
-msgid "Disable stack scrub entirely, disregarding strub attributes."
+msgid "Warn about possibly missing parentheses."
 msgstr ""
 
-#: common.opt:3045
+#: c-family/c.opt:1257
 #, no-c-format
-msgid "Enable stack scrub as per attributes, with strict call checking."
+msgid ""
+"Warn about calling std::move on a local object in a return statement "
+"preventing copy elision."
 msgstr ""
 
-#: common.opt:3054
+#: c-family/c.opt:1261 c-family/c.opt:1265
 #, no-c-format
-msgid "Restore default strub mode: as per attributes, with relaxed checking."
+msgid "Warn for placement new expressions with undefined behavior."
 msgstr ""
 
-#: common.opt:3058
+#: c-family/c.opt:1269
 #, no-c-format
-msgid "Enable stack scrubbing for all viable functions."
+msgid "Warn when converting the type of pointers to member functions."
 msgstr ""
 
-#: common.opt:3062
+#: c-family/c.opt:1273
 #, no-c-format
-msgid "Enable at-calls stack scrubbing for all viable functions."
+msgid "Warn about function pointer arithmetic."
 msgstr ""
 
-#: common.opt:3066
+#: c-family/c.opt:1277
 #, no-c-format
-msgid "Enable internal stack scrubbing for all viable functions."
+msgid "Warn when a pointer differs in signedness in an assignment."
 msgstr ""
 
-#: common.opt:3070
+#: c-family/c.opt:1281
 #, no-c-format
-msgid "Implement __atomic operations via libcalls to legacy __sync functions."
+msgid "Warn when a pointer is compared with a zero character constant."
 msgstr ""
 
-#: common.opt:3074
+#: c-family/c.opt:1285
 #, no-c-format
-msgid "Check for syntax errors, then stop."
+msgid "Warn when a pointer is cast to an integer of a different size."
 msgstr ""
 
-#: common.opt:3078
+#: c-family/c.opt:1289
 #, no-c-format
-msgid "Create data files needed by \"gcov\"."
+msgid "Warn about misuses of pragmas."
 msgstr ""
 
-#: common.opt:3082
+#: c-family/c.opt:1293
 #, no-c-format
-msgid "Perform jump threading optimizations."
+msgid "Warn about #pragma once outside of a header."
 msgstr ""
 
-#: common.opt:3086
+#: c-family/c.opt:1297
 #, no-c-format
-msgid "Report the time taken by each compiler pass."
+msgid ""
+"Warn if constructor or destructors with priorities from 0 to 100 are used."
 msgstr ""
 
-#: common.opt:3090
+#: c-family/c.opt:1301
 #, no-c-format
-msgid "Record times taken by sub-phases separately."
+msgid ""
+"Warn if a property for an Objective-C object has no assign semantics "
+"specified."
 msgstr ""
 
-#: common.opt:3094
+#: c-family/c.opt:1305
 #, no-c-format
-msgid ""
-"-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the "
-"default thread-local storage code generation model."
+msgid "Warn if inherited methods are unimplemented."
 msgstr ""
 
-#: common.opt:3113
+#: c-family/c.opt:1309
 #, no-c-format
-msgid "Reorder top level functions, variables, and asms."
+msgid "Warn when a range-based for-loop is creating unnecessary copies."
 msgstr ""
 
-#: common.opt:3117
+#: c-family/c.opt:1313
 #, no-c-format
-msgid "Perform superblock formation via tail duplication."
+msgid "Warn about multiple declarations of the same object."
 msgstr ""
 
-#: common.opt:3121
+#: c-family/c.opt:1317
 #, no-c-format
-msgid ""
-"For targets that normally need trampolines for nested functions, always "
-"generate them instead of using descriptors."
+msgid "Warn about redundant calls to std::move."
 msgstr ""
 
-#: common.opt:3126
+#: c-family/c.opt:1321
 #, no-c-format
 msgid ""
-"Whether trampolines are generated in executable memory rather than "
-"executable stack."
+"Warn when a class or enumerated type is referenced using a redundant class-"
+"key."
 msgstr ""
 
-#: common.opt:3144
+#: c-family/c.opt:1325
 #, no-c-format
-msgid "Assume floating-point operations can trap."
+msgid "Warn about uses of register storage specifier."
 msgstr ""
 
-#: common.opt:3148
+#: c-family/c.opt:1329
 #, no-c-format
-msgid "Trap for signed overflow in addition, subtraction and multiplication."
+msgid "Warn when the compiler reorders code."
 msgstr ""
 
-#: common.opt:3152
+#: c-family/c.opt:1333
 #, no-c-format
-msgid "Enable SSA-CCP optimization on trees."
+msgid ""
+"Warn when an argument passed to a restrict-qualified parameter aliases with "
+"another argument."
 msgstr ""
 
-#: common.opt:3156
+#: c-family/c.opt:1338
 #, no-c-format
-msgid "Enable SSA-BIT-CCP optimization on trees."
+msgid ""
+"Warn whenever void-returning functions return a non-void expressions, or a "
+"return expression is missing in a function not returning void."
 msgstr ""
 
-#: common.opt:3164
+#: c-family/c.opt:1342
 #, no-c-format
-msgid "Enable loop header copying on trees."
+msgid ""
+"Warn whenever a function's return type defaults to \"int\" (C), or about "
+"inconsistent return types (C++)."
 msgstr ""
 
-#: common.opt:3172
+#: c-family/c.opt:1346
 #, no-c-format
-msgid "Enable SSA coalescing of user variables."
+msgid "Warn on suspicious constructs involving reverse scalar storage order."
 msgstr ""
 
-#: common.opt:3180
+#: c-family/c.opt:1350
 #, no-c-format
-msgid "Enable copy propagation on trees."
+msgid "Warn if a selector has multiple methods."
 msgstr ""
 
-#: common.opt:3188
+#: c-family/c.opt:1354
 #, no-c-format
-msgid "Transform condition stores into unconditional ones."
+msgid "Warn when a value is moved to itself with std::move."
 msgstr ""
 
-#: common.opt:3192
+#: c-family/c.opt:1358
 #, no-c-format
-msgid "Perform conversions of switch initializations."
+msgid "Warn about possible violations of sequence point rules."
 msgstr ""
 
-#: common.opt:3196
+#: c-family/c.opt:1362 c-family/c.opt:1366
 #, no-c-format
-msgid "Enable SSA dead code elimination optimization on trees."
+msgid ""
+"Warn about an incomplete type affecting semantics in a non-error context."
 msgstr ""
 
-#: common.opt:3200
+#: c-family/c.opt:1370
 #, no-c-format
-msgid "Enable dominator optimizations."
+msgid "Warn if a local declaration hides an instance variable."
 msgstr ""
 
-#: common.opt:3204
+#: c-family/c.opt:1374 c-family/c.opt:1378
 #, no-c-format
-msgid "Enable tail merging on trees."
+msgid "Warn if left shift of a signed value overflows."
 msgstr ""
 
-#: common.opt:3208
+#: c-family/c.opt:1382
 #, no-c-format
-msgid "Enable dead store elimination."
+msgid "Warn if shift count is negative."
 msgstr ""
 
-#: common.opt:3212
+#: c-family/c.opt:1386
 #, no-c-format
-msgid "Enable forward propagation on trees."
+msgid "Warn if shift count >= width of type."
 msgstr ""
 
-#: common.opt:3216
+#: c-family/c.opt:1390
 #, no-c-format
-msgid "Enable Full Redundancy Elimination (FRE) on trees."
+msgid "Warn if left shifting a negative value."
 msgstr ""
 
-#: common.opt:3220
+#: c-family/c.opt:1394
 #, no-c-format
-msgid "Enable string length optimizations on trees."
+msgid "Warn about signed-unsigned comparisons."
 msgstr ""
 
-#: common.opt:3224
+#: c-family/c.opt:1402
 #, no-c-format
 msgid ""
-"Detect paths that trigger erroneous or undefined behavior due to "
-"dereferencing a null pointer.  Isolate those paths from the main control "
-"flow and turn the statement with erroneous or undefined behavior into a trap."
+"Warn for implicit type conversions between signed and unsigned integers."
 msgstr ""
 
-#: common.opt:3230
+#: c-family/c.opt:1406
 #, no-c-format
-msgid ""
-"Detect paths that trigger erroneous or undefined behavior due to a null "
-"value being used in a way forbidden by a returns_nonnull or nonnull "
-"attribute.  Isolate those paths from the main control flow and turn the "
-"statement with erroneous or undefined behavior into a trap."
+msgid "Warn when overload promotes from unsigned to signed."
 msgstr ""
 
-#: common.opt:3237
+#: c-family/c.opt:1410
 #, no-c-format
-msgid "Enable loop distribution on trees."
+msgid "Warn about missing sized deallocation functions."
 msgstr ""
 
-#: common.opt:3241
+#: c-family/c.opt:1414
 #, no-c-format
-msgid "Enable loop distribution for patterns transformed into a library call."
+msgid ""
+"Warn about divisions of two sizeof operators when the first one is applied "
+"to an array and the divisor does not equal the size of the array element."
 msgstr ""
 
-#: common.opt:3245
+#: c-family/c.opt:1419
 #, no-c-format
-msgid "Enable loop invariant motion on trees."
+msgid "Warn when sizeof is applied on a parameter declared as an array."
 msgstr ""
 
-#: common.opt:3253
+#: c-family/c.opt:1423
 #, no-c-format
-msgid "Create canonical induction variables in loops."
+msgid ""
+"Warn about suspicious divisions of two sizeof expressions that don't work "
+"correctly with pointers."
 msgstr ""
 
-#: common.opt:3257
+#: c-family/c.opt:1427
 #, no-c-format
-msgid "Enable loop optimizations on tree level."
+msgid ""
+"Warn about suspicious length parameters to certain string functions if the "
+"argument uses sizeof."
 msgstr ""
 
-#: common.opt:3261
+#: c-family/c.opt:1435
 #, no-c-format
 msgid ""
-"-ftree-parallelize-loops=<number>\tEnable automatic parallelization of loops."
+"Warn about improper usages of flexible array members according to the level "
+"of -fstrict-flex-arrays."
 msgstr ""
 
-#: common.opt:3265
+#: c-family/c.opt:1440
 #, no-c-format
-msgid "Enable hoisting loads from conditional pointers."
+msgid "Warn about uncasted NULL used as sentinel."
 msgstr ""
 
-#: common.opt:3269
+#: c-family/c.opt:1448
 #, no-c-format
-msgid "Enable SSA-PRE optimization on trees."
+msgid "Warn about unprototyped function declarations."
 msgstr ""
 
-#: common.opt:3273
+#: c-family/c.opt:1452
 #, no-c-format
-msgid ""
-"In SSA-PRE optimization on trees, enable partial-partial redundancy "
-"elimination."
+msgid "Warn if type signatures of candidate methods do not match exactly."
 msgstr ""
 
-#: common.opt:3277
+#: c-family/c.opt:1456
 #, no-c-format
-msgid "Perform function-local points-to analysis on trees."
+msgid ""
+"Warn about calls to strcmp and strncmp used in equality expressions that are "
+"necessarily true or false due to the length of one and size of the other "
+"argument."
 msgstr ""
 
-#: common.opt:3281
+#: c-family/c.opt:1462
 #, no-c-format
-msgid "Enable reassociation on tree level."
+msgid ""
+"Warn about buffer overflow in string manipulation functions like memcpy and "
+"strcpy."
 msgstr ""
 
-#: common.opt:3289
+#: c-family/c.opt:1467
 #, no-c-format
-msgid "Enable SSA code sinking on trees."
+msgid ""
+"Under the control of Object Size type, warn about buffer overflow in string "
+"manipulation functions like memcpy and strcpy."
 msgstr ""
 
-#: common.opt:3293
+#: c-family/c.opt:1472
 #, no-c-format
-msgid "Perform straight-line strength reduction."
+msgid ""
+"Warn about reading past the end of a source array in string manipulation "
+"functions like memchr and memcpy."
 msgstr ""
 
-#: common.opt:3297
+#: c-family/c.opt:1476
 #, no-c-format
-msgid "Perform scalar replacement of aggregates."
+msgid ""
+"Warn about truncation in string manipulation functions like strncat and "
+"strncpy."
 msgstr ""
 
-#: common.opt:3301
+#: c-family/c.opt:1480
 #, no-c-format
-msgid "Replace temporary expressions in the SSA->normal pass."
+msgid ""
+"Warn if a class type has a base or a field whose type uses the anonymous "
+"namespace or depends on a type with no linkage."
 msgstr ""
 
-#: common.opt:3305
+#: c-family/c.opt:1484
 #, no-c-format
-msgid "Perform live range splitting during the SSA->normal pass."
+msgid "Warn about functions which might be candidates for format attributes."
 msgstr ""
 
-#: common.opt:3309
+#: c-family/c.opt:1488
 #, no-c-format
-msgid "Perform Value Range Propagation on trees."
+msgid ""
+"Suggest that the override keyword be used when the declaration of a virtual "
+"function overrides another."
 msgstr ""
 
-#: common.opt:3313
+#: c-family/c.opt:1493
 #, no-c-format
-msgid "Split paths leading to loop backedges."
+msgid "Warn about enumerated switches, with no default, missing a case."
 msgstr ""
 
-#: common.opt:3317
+#: c-family/c.opt:1497
 #, no-c-format
-msgid ""
-"Assume common declarations may be overridden with ones with a larger "
-"trailing array."
+msgid "Warn about enumerated switches missing a \"default:\" statement."
 msgstr ""
 
-#: common.opt:3322
+#: c-family/c.opt:1501
 #, no-c-format
-msgid "Compile whole compilation unit at a time."
+msgid "Warn about all enumerated switches missing a specific case."
 msgstr ""
 
-#: common.opt:3326
+#: c-family/c.opt:1505
 #, no-c-format
-msgid "Trap on __builtin_unreachable instead of using it for optimization."
+msgid "Warn about switches with boolean controlling expression."
 msgstr ""
 
-#: common.opt:3330
+#: c-family/c.opt:1509
 #, no-c-format
-msgid "Perform loop unrolling when iteration count is known."
+msgid "Warn about switch values that are outside of the switch's type range."
 msgstr ""
 
-#: common.opt:3334
+#: c-family/c.opt:1513
 #, no-c-format
-msgid "Perform loop unrolling for all loops."
+msgid ""
+"Warn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions "
+"are used."
 msgstr ""
 
-#: common.opt:3349
+#: c-family/c.opt:1525
 #, no-c-format
-msgid ""
-"Allow optimization for floating-point arithmetic which may change the result "
-"of the operation due to rounding."
+msgid "Warn on primary template declaration."
 msgstr ""
 
-#: common.opt:3354
+#: c-family/c.opt:1529
 #, no-c-format
-msgid "Same as -fassociative-math for expressions which include division."
+msgid "Diagnose errors when parsing a template."
 msgstr ""
 
-#: common.opt:3362
+#: c-family/c.opt:1533
 #, no-c-format
-msgid "Allow math optimizations that may violate IEEE or ISO standards."
+msgid "Warn about simple-template-id in a constructor or destructor."
 msgstr ""
 
-#: common.opt:3366
+#: c-family/c.opt:1537
 #, no-c-format
-msgid "Perform loop unswitching."
+msgid "Warn about templates naming TU-local entities in a module."
 msgstr ""
 
-#: common.opt:3370
+#: c-family/c.opt:1541
 #, no-c-format
-msgid "Perform loop splitting."
+msgid "Warn if a throw expression will always result in a call to terminate()."
 msgstr ""
 
-#: common.opt:3374
+#: c-family/c.opt:1545
 #, no-c-format
-msgid "Version loops based on whether indices have a stride of one."
+msgid "Warn about features not present in traditional C."
 msgstr ""
 
-#: common.opt:3378
+#: c-family/c.opt:1549
 #, no-c-format
-msgid "Just generate unwind tables for exception handling."
+msgid ""
+"Warn of prototypes causing type conversions different from what would happen "
+"in the absence of prototype."
 msgstr ""
 
-#: common.opt:3382
+#: c-family/c.opt:1565
 #, no-c-format
-msgid "Use the bfd linker instead of the default linker."
+msgid ""
+"Warn about trailing whitespace on lines except when in raw string literals."
 msgstr ""
 
-#: common.opt:3386
+#: c-family/c.opt:1569
 #, no-c-format
-msgid "Use the gold linker instead of the default linker."
+msgid ""
+"Warn about trailing whitespace on lines except when in raw string "
+"literals.   Equivalent to Wtrailing-whitespace=blanks when enabled or "
+"Wtrailing-whitespace=none when disabled."
 msgstr ""
 
-#: common.opt:3390
+#: c-family/c.opt:1573
 #, no-c-format
-msgid "Use the lld LLVM linker instead of the default linker."
+msgid ""
+"Warn if trigraphs are encountered that might affect the meaning of the "
+"program."
 msgstr ""
 
-#: common.opt:3394
+#: c-family/c.opt:1577
 #, no-c-format
-msgid "Use the Modern linker (MOLD) linker instead of the default linker."
+msgid "Warn about @selector()s without previously declared methods."
 msgstr ""
 
-#: common.opt:3404
+#: c-family/c.opt:1581
 #, no-c-format
-msgid "Perform variable tracking."
+msgid "Warn if an undefined macro is used in an #if directive."
 msgstr ""
 
-#: common.opt:3411
+#: c-family/c.opt:1585
 #, no-c-format
-msgid "Perform variable tracking by annotating assignments."
+msgid "Warn about invalid forms of delimited or named escape sequences."
 msgstr ""
 
-#: common.opt:3417
+#: c-family/c.opt:1593
 #, no-c-format
-msgid "Toggle -fvar-tracking-assignments."
+msgid "Warn about unrecognized pragmas."
 msgstr ""
 
-#: common.opt:3424
+#: c-family/c.opt:1597
 #, no-c-format
-msgid ""
-"Perform variable tracking and also tag variables that are uninitialized."
+msgid "Warn about unsuffixed float constants."
 msgstr ""
 
-#: common.opt:3429
+#: c-family/c.opt:1601
 #, no-c-format
-msgid "Enable vectorization on trees."
+msgid ""
+"Warn about character arrays initialized as unterminated character sequences "
+"with a string literal."
 msgstr ""
 
-#: common.opt:3437
+#: c-family/c.opt:1617
 #, no-c-format
-msgid "Enable loop vectorization on trees."
+msgid "Warn when typedefs locally defined in a function are not used."
 msgstr ""
 
-#: common.opt:3441
+#: c-family/c.opt:1621
 #, no-c-format
-msgid "Enable basic block vectorization (SLP) on trees."
+msgid "Warn about macros defined in the main file that are not used."
 msgstr ""
 
-#: common.opt:3445
+#: c-family/c.opt:1641
 #, no-c-format
-msgid ""
-"-fvect-cost-model=[unlimited|dynamic|cheap|very-cheap]\tSpecifies the cost "
-"model for vectorization."
+msgid "Warn about useless casts."
 msgstr ""
 
-#: common.opt:3449
+#: c-family/c.opt:1645
 #, no-c-format
-msgid ""
-"-fsimd-cost-model=[unlimited|dynamic|cheap|very-cheap]\tSpecifies the "
-"vectorization cost model for code marked with a simd directive."
+msgid "Warn about using variadic macros."
 msgstr ""
 
-#: common.opt:3468
+#: c-family/c.opt:1649
 #, no-c-format
 msgid ""
-"Enables the dynamic vectorizer cost model.  Preserved for backward "
-"compatibility."
+"Warn about questionable usage of the macros used to retrieve variable "
+"arguments."
 msgstr ""
 
-#: common.opt:3476
+#: c-family/c.opt:1653
 #, no-c-format
-msgid "Enable copy propagation of scalar-evolution information."
+msgid "Warn about the most vexing parse syntactic ambiguity."
 msgstr ""
 
-#: common.opt:3480
+#: c-family/c.opt:1657
 #, no-c-format
-msgid ""
-"-ftrivial-auto-var-init=[uninitialized|pattern|zero]\tAdd initializations to "
-"automatic variables."
+msgid "Warn if a virtual base has a non-trivial move assignment operator."
 msgstr ""
 
-#: common.opt:3502
+#: c-family/c.opt:1661
 #, no-c-format
-msgid "Add extra commentary to assembler output."
+msgid "Warn if a variable length array is used."
 msgstr ""
 
-#: common.opt:3506
+#: c-family/c.opt:1665
 #, no-c-format
 msgid ""
-"-fvisibility=[default|internal|hidden|protected]\tSet the default symbol "
-"visibility."
+"-Wvla-larger-than=<number>\tWarn on unbounded uses of variable-length "
+"arrays, and on bounded uses of variable-length arrays whose bound can be "
+"larger than <number> bytes."
 msgstr ""
 
-#: common.opt:3525
+#: c-family/c.opt:1671
 #, no-c-format
-msgid "Validate vtable pointers before using them."
+msgid ""
+"Disable Wvla-larger-than= warning.  Equivalent to Wvla-larger-"
+"than=<SIZE_MAX> or larger."
 msgstr ""
 
-#: common.opt:3541
+#: c-family/c.opt:1675
 #, no-c-format
-msgid "Output vtable verification counters."
+msgid "Warn about mismatched declarations of VLA parameters."
 msgstr ""
 
-#: common.opt:3545
+#: c-family/c.opt:1679
 #, no-c-format
-msgid "Output vtable verification pointer sets information."
+msgid "Warn about deprecated uses of volatile qualifier."
 msgstr ""
 
-#: common.opt:3549
+#: c-family/c.opt:1683
 #, no-c-format
-msgid "Use expression value profiles in optimizations."
+msgid "Warn when a register variable is declared volatile."
 msgstr ""
 
-#: common.opt:3553
+#: c-family/c.opt:1687
 #, no-c-format
-msgid "Construct webs and split unrelated uses of single variable."
+msgid "Warn on direct virtual inheritance."
 msgstr ""
 
-#: common.opt:3557
+#: c-family/c.opt:1691
 #, no-c-format
-msgid "Enable conditional dead code elimination for builtin calls."
+msgid ""
+"In C++, nonzero means warn about deprecated conversion from string literals "
+"to 'char *'.  In C, similar warning, except that the conversion is of course "
+"not deprecated by the ISO C standard."
 msgstr ""
 
-#: common.opt:3561
+#: c-family/c.opt:1695
 #, no-c-format
-msgid "Perform whole program optimizations."
+msgid ""
+"Warn about xor operators where it appears the user meant exponentiation."
 msgstr ""
 
-#: common.opt:3565
+#: c-family/c.opt:1699
 #, no-c-format
-msgid "Assume pointer overflow wraps around."
+msgid "Warn when a literal '0' is used as null pointer."
 msgstr ""
 
-#: common.opt:3569
+#: c-family/c.opt:1703
 #, no-c-format
-msgid "Assume signed arithmetic overflow wraps around."
+msgid "Warn about accesses to interior zero-length array members."
 msgstr ""
 
-#: common.opt:3573
+#: c-family/c.opt:1707
 #, no-c-format
-msgid "Put zero initialized data in the bss section."
+msgid "A synonym for -std=c89 (for C) or -std=c++98 (for C++)."
 msgstr ""
 
-#: common.opt:3577
+#: c-family/c.opt:1715
 #, no-c-format
-msgid "Clear call-used registers upon function return."
+msgid ""
+"The version of the C++ ABI used for -Wabi warnings and link compatibility "
+"aliases."
 msgstr ""
 
-#: common.opt:3581
+#: c-family/c.opt:1719
 #, no-c-format
-msgid ""
-"-fzero-init-padding-bits=[standard|unions|all]\tZero padding bits in "
-"initializers."
+msgid "Enforce class member access control semantics."
 msgstr ""
 
-#: common.opt:3597
+#: c-family/c.opt:1723
 #, no-c-format
-msgid "Generate debug information in default format."
+msgid "-fada-spec-parent=unit\tDump Ada specs as child units of given parent."
 msgstr ""
 
-#: common.opt:3601
+#: c-family/c.opt:1727
 #, no-c-format
-msgid "Assume assembler support for (DWARF2+) .loc directives."
+msgid "Support C++17 allocation of over-aligned types."
 msgstr ""
 
-#: common.opt:3605
+#: c-family/c.opt:1731
 #, no-c-format
-msgid "Assume assembler support for view in (DWARF2+) .loc directives."
+msgid ""
+"-faligned-new=<N>\tUse C++17 over-aligned type allocation for alignments "
+"greater than N."
 msgstr ""
 
-#: common.opt:3609
+#: c-family/c.opt:1742 c-family/c.opt:2089 c-family/c.opt:2506
+#: c-family/c.opt:2510 c-family/c.opt:2526
 #, no-c-format
-msgid "Generate debug information in CodeView format."
+msgid "No longer supported."
 msgstr ""
 
-#: common.opt:3629
+#: c-family/c.opt:1746
 #, no-c-format
-msgid "Record DW_AT_decl_column and DW_AT_call_column in DWARF."
+msgid "Recognize the \"asm\" keyword."
 msgstr ""
 
-#: common.opt:3635
+#: c-family/c.opt:1750
 #, no-c-format
-msgid "Generate CTF debug information at default level."
+msgid ""
+"Assume C++ replaceable global operators new, new[], delete, delete[] don't "
+"read or write visible global state."
 msgstr ""
 
-#: common.opt:3639
+#: c-family/c.opt:1758
 #, no-c-format
-msgid "Generate BTF debug information at default level."
+msgid "Recognize built-in functions."
 msgstr ""
 
-#: common.opt:3643
+#: c-family/c.opt:1765
 #, no-c-format
-msgid "Generate pruned BTF when emitting BTF info."
+msgid "Where shorter, use canonicalized paths to systems headers."
 msgstr ""
 
-#: common.opt:3647
+#: c-family/c.opt:1769
 #, no-c-format
-msgid "Generate debug information in default version of DWARF format."
+msgid ""
+"Enable the char8_t fundamental type and use it as the type for UTF-8 string "
+"and character literals."
 msgstr ""
 
-#: common.opt:3651
+#: c-family/c.opt:1857
 #, no-c-format
-msgid "Generate debug information in DWARF v2 (or later) format."
+msgid "Removed in GCC 8.  This switch has no effect."
 msgstr ""
 
-#: common.opt:3655
+#: c-family/c.opt:1861
 #, no-c-format
-msgid "Use 32-bit DWARF format when emitting DWARF debug information."
+msgid "Enable support for C++ concepts."
 msgstr ""
 
-#: common.opt:3659
+#: c-family/c.opt:1865
 #, no-c-format
-msgid "Use 64-bit DWARF format when emitting DWARF debug information."
+msgid "Removed in GCC 15.  This switch has no effect."
 msgstr ""
 
-#: common.opt:3663
+#: c-family/c.opt:1869
 #, no-c-format
-msgid "Generate debug information in default extended format."
+msgid ""
+"Specify maximum error replay depth during recursive diagnosis of a "
+"constraint satisfaction failure."
 msgstr ""
 
-#: common.opt:3667
+#: c-family/c.opt:1873
 #, no-c-format
-msgid "Generate extended entry point information for inlined functions."
+msgid "Allow the arguments of the '?' operator to have different types."
 msgstr ""
 
-#: common.opt:3671
+#: c-family/c.opt:1881
 #, no-c-format
-msgid "Compute locview reset points based on insn length estimates."
+msgid "-fconst-string-class=<name>\tUse class <name> for constant strings."
 msgstr ""
 
-#: common.opt:3679
+#: c-family/c.opt:1885
 #, no-c-format
-msgid "Don't generate DWARF pubnames and pubtypes sections."
+msgid "-fconstexpr-depth=<number>\tSpecify maximum constexpr recursion depth."
 msgstr ""
 
-#: common.opt:3683
+#: c-family/c.opt:1889
 #, no-c-format
-msgid "Generate DWARF pubnames and pubtypes sections."
+msgid ""
+"-fconstexpr-cache-depth=<number>\tSpecify maximum constexpr recursion cache "
+"depth."
 msgstr ""
 
-#: common.opt:3687
+#: c-family/c.opt:1893
 #, no-c-format
-msgid "Generate DWARF pubnames and pubtypes sections with GNU extensions."
+msgid "Allow IEC559 floating point exceptions in constant expressions."
 msgstr ""
 
-#: common.opt:3691
+#: c-family/c.opt:1897
 #, no-c-format
-msgid "Record gcc command line switches in DWARF DW_AT_producer."
+msgid ""
+"-fconstexpr-loop-limit=<number>\tSpecify maximum constexpr loop iteration "
+"count."
 msgstr ""
 
-#: common.opt:3695
+#: c-family/c.opt:1901
 #, no-c-format
-msgid "Generate debug information in separate .dwo files."
+msgid ""
+"-fconstexpr-ops-limit=<number>\tSpecify maximum number of constexpr "
+"operations during a single constexpr evaluation."
 msgstr ""
 
-#: common.opt:3707
+#: c-family/c.opt:1905
 #, no-c-format
-msgid "Emit progressive recommended breakpoint locations."
+msgid "Enable features proposed for C++26 Contracts."
 msgstr ""
 
-#: common.opt:3711
+#: c-family/c.opt:1926
 #, no-c-format
-msgid "Don't emit DWARF additions beyond selected version."
+msgid ""
+"-fcontract-evaluation-semantic=[ignore|observe|enforce|quick_enforce]"
+"\tSelect the contract evaluation semantic (defaults to enforce)."
 msgstr ""
 
-#: common.opt:3715
+#: c-family/c.opt:1930
 #, no-c-format
 msgid ""
-"Add description attributes to some DWARF DIEs that have no name attribute."
+"-fcontracts-conservative-ipa\tDo not allow certain optimisations between "
+"functions in contract assertions."
 msgstr ""
 
-#: common.opt:3719
+#: c-family/c.opt:1935
 #, no-c-format
-msgid "Toggle debug information generation."
+msgid ""
+"-fcontract-checks-outlined\tBuild contract checks using outlined functions."
 msgstr ""
 
-#: common.opt:3723
+#: c-family/c.opt:1939
 #, no-c-format
-msgid "Augment variable location lists with progressive views."
+msgid ""
+"-fcontract-disable-optimized-checks\tDisable optimisation of contract checks."
 msgstr ""
 
-#: common.opt:3730
+#: c-family/c.opt:1955
 #, no-c-format
-msgid "Generate debug information in VMS format."
+msgid ""
+"-fcontracts-client-check=[none|pre|all] Select which contracts will be "
+"checked on the client side for non virtual functions."
 msgstr ""
 
-#: common.opt:3759
+#: c-family/c.opt:1968
 #, no-c-format
-msgid "Generate compressed debug sections."
+msgid ""
+"-fcontracts-definition-check=[on|off]\tEnable or disable contract checks on "
+"the definition side for all functions (default on)."
 msgstr ""
 
-#: common.opt:3763
+#: c-family/c.opt:1972
 #, no-c-format
-msgid "-gz=<format>\tGenerate compressed debug sections in format <format>."
+msgid "Enable C++ coroutines (experimental)."
 msgstr ""
 
-#: common.opt:3770
+#: c-family/c.opt:1976
 #, no-c-format
-msgid "-iplugindir=<dir>\tSet <dir> to be the default plugin directory."
+msgid "Emit debug annotations during preprocessing."
 msgstr ""
 
-#: common.opt:3774
+#: c-family/c.opt:1984
 #, no-c-format
-msgid "-imultiarch <dir>\tSet <dir> to be the multiarch include subdirectory."
+msgid "Factor complex constructors and destructors to favor space over speed."
 msgstr ""
 
-#: common.opt:3802
+#: c-family/c.opt:1992
 #, no-c-format
-msgid "-o <file>\tPlace output into <file>."
+msgid "Print hierarchical comparisons when template types are mismatched."
 msgstr ""
 
-#: common.opt:3806
+#: c-family/c.opt:1996
 #, no-c-format
-msgid "Enable function profiling."
+msgid "Note all candidates during overload resolution failure."
 msgstr ""
 
-#: common.opt:3816
+#: c-family/c.opt:2000
 #, no-c-format
-msgid "Like -pedantic but issue errors instead of warnings."
+msgid "Preprocess directives only."
 msgstr ""
 
-#: common.opt:3856
+#: c-family/c.opt:2004
 #, no-c-format
-msgid "Do not display functions compiled or elapsed time."
+msgid "Permit '$' as an identifier character."
 msgstr ""
 
-#: common.opt:3888
+#: c-family/c.opt:2008
 #, no-c-format
-msgid "Enable verbose output."
+msgid ""
+"-fmacro-prefix-map=<old>=<new>\tMap one directory name to another in "
+"__FILE__, __BASE_FILE__, and __builtin_FILE()."
 msgstr ""
 
-#: common.opt:3892
+#: c-family/c.opt:2012
 #, no-c-format
-msgid "Display the compiler's version."
+msgid "Write all declarations as Ada code transitively."
 msgstr ""
 
-#: common.opt:3896
+#: c-family/c.opt:2016
 #, no-c-format
-msgid "Suppress warnings."
+msgid "Write all declarations as Ada code for the given file only."
 msgstr ""
 
-#: common.opt:3906
+#: c-family/c.opt:2023
 #, no-c-format
-msgid "Create a shared library."
+msgid "Do not elide common elements in template comparisons."
 msgstr ""
 
-#: common.opt:3970
+#: c-family/c.opt:2027
 #, no-c-format
-msgid "Don't create a dynamically linked position independent executable."
+msgid "Generate code to check exception specifications."
 msgstr ""
 
-#: common.opt:3974
+#: c-family/c.opt:2034
 #, no-c-format
-msgid "Create a dynamically linked position independent executable."
+msgid ""
+"-fexec-charset=<cset>\tConvert all strings and character constants to "
+"character set <cset>."
 msgstr ""
 
-#: common.opt:3978
+#: c-family/c.opt:2038
 #, no-c-format
-msgid "Create a static position independent executable."
+msgid "Permit universal character names (\\u and \\U) in identifiers."
 msgstr ""
 
-#: common.opt:3985
+#: c-family/c.opt:2042
 #, no-c-format
-msgid "Use caller save register across calls if possible."
+msgid ""
+"-finput-charset=<cset>\tSpecify the default character set for source files."
 msgstr ""
 
-#: common.opt:3989
+#: c-family/c.opt:2046
 #, no-c-format
 msgid ""
-"Perform dead code elimination on zero and sign extensions with special "
-"dataflow analysis."
+"Support dynamic initialization of thread-local variables in a different "
+"translation unit."
 msgstr ""
 
-#: params.opt:27
+#: c-family/c.opt:2053
 #, no-c-format
-msgid ""
-"Loops iterating at least selected number of iterations will get loop "
-"alignment."
+msgid "Fold calls to simple inline functions."
 msgstr ""
 
-#: params.opt:31
+#: c-family/c.opt:2060
 #, no-c-format
-msgid ""
-"Select fraction of the maximal frequency of executions of basic block in "
-"function given basic block get alignment."
+msgid "Do not assume that standard C libraries and \"main\" exist."
 msgstr ""
 
-#: params.opt:35
+#: c-family/c.opt:2064
 #, no-c-format
-msgid "Enable asan globals protection."
+msgid "Recognize GNU-defined keywords."
 msgstr ""
 
-#: params.opt:39
+#: c-family/c.opt:2068
 #, no-c-format
-msgid "Enable asan allocas/VLAs protection."
+msgid "Generate code for GNU runtime environment."
 msgstr ""
 
-#: params.opt:43
+#: c-family/c.opt:2072
 #, no-c-format
-msgid "Enable asan load operations protection."
+msgid "Use traditional GNU semantics for inline functions."
 msgstr ""
 
-#: params.opt:47
+#: c-family/c.opt:2085
 #, no-c-format
-msgid "Enable asan store operations protection."
+msgid "Assume normal C execution environment."
 msgstr ""
 
-#: params.opt:51
+#: c-family/c.opt:2093
 #, no-c-format
-msgid ""
-"Use callbacks instead of inline code if number of accesses in function "
-"becomes greater or equal to this number."
+msgid "Implement P2564 for consteval propagation."
 msgstr ""
 
-#: params.opt:55
+#: c-family/c.opt:2097
 #, no-c-format
-msgid ""
-"Prefix calls to memcpy, memset and memmove with __asan_ or __hwasan_ for -"
-"fsanitize=kernel-address or -fsanitize=kernel-hwaddress."
+msgid "Export functions even if they can be inlined."
 msgstr ""
 
-#: params.opt:59
+#: c-family/c.opt:2101
 #, no-c-format
-msgid "Enable asan builtin functions protection."
+msgid "Make inline functions constexpr by default."
 msgstr ""
 
-#: params.opt:63
+#: c-family/c.opt:2105
 #, no-c-format
-msgid "Enable asan stack protection."
+msgid "Emit implicit instantiations of inline templates."
 msgstr ""
 
-#: params.opt:67
+#: c-family/c.opt:2109
 #, no-c-format
-msgid "Enable asan detection of use-after-return bugs."
+msgid "Emit implicit instantiations of templates."
 msgstr ""
 
-#: params.opt:71
+#: c-family/c.opt:2113
 #, no-c-format
-msgid ""
-"Whether the scheduling description is mostly a cycle-accurate model of the "
-"target processor and is likely to be spill aggressively to fill any pipeline "
-"bubbles."
+msgid "Implement C++17 inheriting constructor semantics."
 msgstr ""
 
-#: params.opt:75
+#: c-family/c.opt:2120
 #, no-c-format
-msgid ""
-"Enable hwasan instrumentation of statically sized stack-allocated variables."
+msgid "Don't emit dllexported inline functions unless needed."
 msgstr ""
 
-#: params.opt:79
+#: c-family/c.opt:2127
 #, no-c-format
-msgid "Use random base tag for each frame, as opposed to base always zero."
+msgid ""
+"Allow implicit conversions between vectors with differing numbers of "
+"subparts and/or differing element types."
 msgstr ""
 
-#: params.opt:83
+#: c-family/c.opt:2131
 #, no-c-format
-msgid "Enable hwasan instrumentation of allocas/VLAs."
+msgid "Enable C++20 Modules (experimental)."
 msgstr ""
 
-#: params.opt:87
+#: c-family/c.opt:2139
 #, no-c-format
-msgid "Enable hwasan instrumentation of load operations."
+msgid "Enable C++ header module (experimental)."
 msgstr ""
 
-#: params.opt:91
+#: c-family/c.opt:2146
 #, no-c-format
-msgid "Enable hwasan instrumentation of store operations."
+msgid ""
+"Member functions defined within their class are inline in module purview."
 msgstr ""
 
-#: params.opt:95
+#: c-family/c.opt:2150
 #, no-c-format
-msgid "Enable hwasan instrumentation of builtin functions."
+msgid "Only emit Compiled Module Interface."
 msgstr ""
 
-#: params.opt:99
+#: c-family/c.opt:2154
 #, no-c-format
-msgid "Average number of iterations of a loop."
+msgid "Mapper for module to CMI files."
 msgstr ""
 
-#: params.opt:103
+#: c-family/c.opt:2158
 #, no-c-format
-msgid "Maximum number of bits for which we avoid creating FMAs."
+msgid "Enable lazy module importing."
 msgstr ""
 
-#: params.opt:107
+#: c-family/c.opt:2166
 #, no-c-format
-msgid ""
-"Set the estimated probability in percentage for builtin expect. The default "
-"value is 90% probability."
+msgid "Warn about macros that have conflicting header units definitions."
 msgstr ""
 
-#: params.opt:111
+#: c-family/c.opt:2170
 #, no-c-format
-msgid ""
-"The maximum length of a constant string for a builtin string cmp call "
-"eligible for inlining. The default value is 3."
+msgid "Warn if pointers of distinct types are compared without a cast."
 msgstr ""
 
-#: params.opt:115
+#: c-family/c.opt:2174
 #, no-c-format
-msgid ""
-"The smallest number of different values for which it is best to use a jump-"
-"table instead of a tree of conditional branches, if 0, use the default for "
-"the machine."
+msgid "Note #include directives translated to import declarations."
 msgstr ""
 
-#: params.opt:119
+#: c-family/c.opt:2178
 #, no-c-format
 msgid ""
-"Probability that COMDAT function will be shared with different compilation "
-"unit."
+"Note #include directives not translated to import declarations, and not "
+"known to be textual."
 msgstr ""
 
-#: params.opt:123
+#: c-family/c.opt:2182
 #, no-c-format
-msgid ""
-"Maximum number of namespaces to search for alternatives when name lookup "
-"fails."
+msgid "Note a #include translation of a specific header."
 msgstr ""
 
-#: params.opt:127
+#: c-family/c.opt:2186
 #, no-c-format
-msgid "Maximum number of queries into the alias oracle per store."
+msgid "Note Compiled Module Interface pathnames."
 msgstr ""
 
-#: params.opt:131
+#: c-family/c.opt:2190
 #, no-c-format
 msgid ""
-"Maximum size (in bytes) of objects tracked bytewise by dead store "
-"elimination."
+"Note Compiled Module Interface pathname of a specific module or header-unit."
 msgstr ""
 
-#: params.opt:135
+#: c-family/c.opt:2194
 #, no-c-format
 msgid ""
-"Maximal estimated growth of function body caused by early inlining of single "
-"call."
+"fmax-include-depth=<number> Set the maximum depth of the nested #include."
 msgstr ""
 
-#: params.opt:139
+#: c-family/c.opt:2198
 #, no-c-format
-msgid "Max number of files in the file cache."
+msgid "Don't warn about uses of Microsoft extensions."
 msgstr ""
 
-#: params.opt:143
+#: c-family/c.opt:2217
 #, no-c-format
 msgid ""
-"Max number of lines to index into file cache. When 0 this is automatically "
-"sized."
+"Implement resolution of DR 150 for matching of template template arguments."
 msgstr ""
 
-#: params.opt:147
+#: c-family/c.opt:2221
 #, no-c-format
-msgid ""
-"Scale factor to apply to the number of statements in a threading path "
-"crossing a loop backedge when comparing to max-jump-thread-duplication-stmts."
+msgid "Generate code for NeXT (Apple macOS) runtime environment."
 msgstr ""
 
-#: params.opt:151
+#: c-family/c.opt:2225
 #, no-c-format
-msgid ""
-"Whether the target fully pipelines FMA instructions.  If non-zero, "
-"reassociation considers the benefit of parallelizing FMA's multiplication "
-"part and addition part, assuming FMUL and FMA use the same units that can "
-"also do FADD."
+msgid "Assume that receivers of Objective-C messages may be nil."
 msgstr ""
 
-#: params.opt:158
+#: c-family/c.opt:2229
 #, no-c-format
 msgid ""
-"The threshold ratio of critical edges execution count that permit performing "
-"redundancy elimination after reload."
+"Allow access to instance variables as if they were local declarations within "
+"instance method implementations."
 msgstr ""
 
-#: params.opt:162
+#: c-family/c.opt:2233
 #, no-c-format
 msgid ""
-"The threshold ratio for performing partial redundancy elimination after "
-"reload."
+"-fvisibility=[private|protected|public|package]\tSet the default symbol "
+"visibility."
 msgstr ""
 
-#: params.opt:166
+#: c-family/c.opt:2258
 #, no-c-format
 msgid ""
-"Scaling factor in calculation of maximum distance an expression can be moved "
-"by GCSE optimizations."
+"Treat a throw() exception specification as noexcept to improve code size."
 msgstr ""
 
-#: params.opt:170
+#: c-family/c.opt:2262
 #, no-c-format
 msgid ""
-"Cost at which GCSE optimizations will not constraint the distance an "
-"expression can travel."
+"Specify which ABI to use for Objective-C family code and meta-data "
+"generation."
 msgstr ""
 
-#: params.opt:174
+#: c-family/c.opt:2268
 #, no-c-format
 msgid ""
-"Minimum heap expansion to trigger garbage collection, as a percentage of the "
-"total size of the heap."
+"Generate special Objective-C methods to initialize/destroy non-POD C++ "
+"ivars, if needed."
 msgstr ""
 
-#: params.opt:178
+#: c-family/c.opt:2272
 #, no-c-format
-msgid "Minimum heap size before we start collecting garbage, in kilobytes."
+msgid "Allow fast jumps to the message dispatcher."
 msgstr ""
 
-#: params.opt:182
+#: c-family/c.opt:2278
 #, no-c-format
-msgid ""
-"The number of executions of a basic block which is considered hot. The "
-"parameter is used only in GIMPLE FE."
+msgid "Enable Objective-C exception and synchronization syntax."
 msgstr ""
 
-#: params.opt:186
+#: c-family/c.opt:2282
 #, no-c-format
-msgid "Whether codegen errors should be ICEs when -fchecking."
+msgid "Enable garbage collection (GC) in Objective-C/Objective-C++ programs."
 msgstr ""
 
-#: params.opt:190
+#: c-family/c.opt:2286
 #, no-c-format
-msgid "Maximum number of arrays per SCoP."
+msgid ""
+"Enable inline checks for nil receivers with the NeXT runtime and ABI version "
+"2."
 msgstr ""
 
-#: params.opt:194
+#: c-family/c.opt:2291
 #, no-c-format
-msgid "Maximum number of parameters in a SCoP."
+msgid "Enable Objective-C setjmp exception handling runtime."
 msgstr ""
 
-#: params.opt:198
+#: c-family/c.opt:2295
 #, no-c-format
-msgid "Maximum number of blocks for -fharden-control-flow-redundancy."
+msgid "Conform to the Objective-C 1.0 language as implemented in GCC 4.0."
 msgstr ""
 
-#: params.opt:202
+#: c-family/c.opt:2299
 #, no-c-format
-msgid "Maximum number of blocks for in-line -fharden-control-flow-redundancy."
+msgid "Enable OpenACC."
 msgstr ""
 
-#: params.opt:206
+#: c-family/c.opt:2303
 #, no-c-format
-msgid ""
-"The number of elements for which hash table verification is done for each "
-"searched element."
+msgid "Specify default OpenACC compute dimensions."
 msgstr ""
 
-#: params.opt:210
+#: c-family/c.opt:2307
 #, no-c-format
-msgid ""
-"The denominator n of fraction 1/n of the maximal execution count of a basic "
-"block in the entire program that a basic block needs to at least have in "
-"order to be considered hot (used in non-LTO mode)."
+msgid "Enable OpenMP (implies -frecursive in Fortran)."
 msgstr ""
 
-#: params.opt:214
+#: c-family/c.opt:2311
 #, no-c-format
-msgid ""
-"The number of most executed permilles of the profiled execution of the "
-"entire program to which the execution count of a basic block must be part of "
-"in order to be considered hot (used in LTO mode)."
+msgid "Enable OpenMP's SIMD directives."
 msgstr ""
 
-#: params.opt:218
+#: c-family/c.opt:2315
 #, no-c-format
-msgid ""
-"The denominator n of fraction 1/n of the execution frequency of the entry "
-"block of a function that a basic block of this function needs to at least "
-"have in order to be considered hot."
+msgid "Recognize C++ keywords like \"compl\" and \"xor\"."
 msgstr ""
 
-#: params.opt:222
+#: c-family/c.opt:2326
 #, no-c-format
-msgid ""
-"The scale (in percents) applied to inline-insns-single and auto limits when "
-"heuristics hints that inlining is very profitable."
+msgid "Look for and use PCH files even when preprocessing."
 msgstr ""
 
-#: params.opt:226
+#: c-family/c.opt:2330
 #, no-c-format
-msgid ""
-"The minimal estimated speedup allowing inliner to ignore inline-insns-single "
-"and inline-insns-auto."
+msgid "Downgrade conformance errors to warnings."
 msgstr ""
 
-#: params.opt:230
+#: c-family/c.opt:2334
 #, no-c-format
-msgid ""
-"How much can given compilation unit grow because of the inlining (in "
-"percent)."
+msgid "Enable Plan 9 language extensions."
 msgstr ""
 
-#: params.opt:234
+#: c-family/c.opt:2338
 #, no-c-format
-msgid "The upper bound for sharing integer constants."
+msgid "Treat the input file as already preprocessed."
 msgstr ""
 
-#: params.opt:238
+#: c-family/c.opt:2346
 #, no-c-format
 msgid ""
-"Threshold ipa-cp opportunity evaluation that is still considered beneficial "
-"to clone."
+"-ftrack-macro-expansion=<0|1|2>\tTrack locations of tokens coming from macro "
+"expansion and display them in error messages."
 msgstr ""
 
-#: params.opt:242
+#: c-family/c.opt:2350
 #, no-c-format
 msgid ""
-"Compile-time bonus IPA-CP assigns to candidates which make loop bounds or "
-"strides known."
+"Do not pretty-print template specializations as the template signature "
+"followed by the arguments."
 msgstr ""
 
-#: params.opt:246
+#: c-family/c.opt:2354
 #, no-c-format
-msgid "Maximum depth of recursive cloning for self-recursive function."
+msgid "Treat known sprintf return values as constants."
 msgstr ""
 
-#: params.opt:250
+#: c-family/c.opt:2358
 #, no-c-format
-msgid ""
-"Recursive cloning only when the probability of call being executed exceeds "
-"the parameter."
+msgid "Enable lifetime extension of range based for temporaries."
 msgstr ""
 
-#: params.opt:254
+#: c-family/c.opt:2362
 #, no-c-format
-msgid ""
-"When propagating IPA-CP effect estimates, multiply frequencies of recursive "
-"edges that bring back an unchanged value by this factor."
+msgid "Enable experimental C++26 Reflection."
 msgstr ""
 
-#: params.opt:258
+#: c-family/c.opt:2366
 #, no-c-format
 msgid ""
-"Percentage penalty the recursive functions will receive when they are "
-"evaluated for cloning."
+"Used in Fix-and-Continue mode to indicate that object files may be swapped "
+"in at runtime."
 msgstr ""
 
-#: params.opt:262
+#: c-family/c.opt:2370
 #, no-c-format
-msgid ""
-"Percentage penalty functions containing a single call to another function "
-"will receive when they are evaluated for cloning."
+msgid "Removed in GCC 10.  This switch has no effect."
 msgstr ""
 
-#: params.opt:266
+#: c-family/c.opt:2374
 #, no-c-format
-msgid ""
-"How much can given compilation unit grow because of the interprocedural "
-"constant propagation (in percent)."
+msgid "Generate run time type descriptor information."
 msgstr ""
 
-#: params.opt:270
+#: c-family/c.opt:2378
 #, no-c-format
-msgid "The size of translation unit that IPA-CP pass considers large."
+msgid "Look for the main source file on the include path."
 msgstr ""
 
-#: params.opt:274
+#: c-family/c.opt:2389
 #, no-c-format
-msgid ""
-"Maximum size of a list of values associated with each parameter for "
-"interprocedural constant propagation."
+msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"."
 msgstr ""
 
-#: params.opt:278
+#: c-family/c.opt:2393
 #, no-c-format
-msgid ""
-"Maximum number of statements visited during jump function offset discovery."
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed."
 msgstr ""
 
-#: params.opt:282
+#: c-family/c.opt:2401
 #, no-c-format
-msgid ""
-"Maximum number of statements that will be visited by IPA formal parameter "
-"analysis based on alias analysis in any given function."
+msgid "Enable C++14 sized deallocation support."
 msgstr ""
 
-#: params.opt:286
+#: c-family/c.opt:2408
 #, no-c-format
 msgid ""
-"Maximum number of aggregate content items for a parameter in jump functions "
-"and lattices."
+"-fstrict-flex-arrays=<level>    Control when to treat the trailing array of "
+"a structure as a flexible array member for the purposes of accessing the "
+"elements of such an array. The default is treating all trailing arrays of "
+"structures as flexible array members."
 msgstr ""
 
-#: params.opt:290
+#: c-family/c.opt:2415
 #, no-c-format
 msgid ""
-"Maximum number of operations in a parameter expression that can be handled "
-"by IPA analysis."
+"-fsso-struct=[big-endian|little-endian|native]\tSet the default scalar "
+"storage order."
 msgstr ""
 
-#: params.opt:294
+#: c-family/c.opt:2431
 #, no-c-format
-msgid ""
-"Maximum number of different predicates used to track properties of loops in "
-"IPA analysis."
+msgid "Display statistics accumulated during compilation."
 msgstr ""
 
-#: params.opt:298
+#: c-family/c.opt:2435
 #, no-c-format
 msgid ""
-"Maximal number of boundary endpoints of case ranges of switch statement used "
-"during IPA function summary generation."
+"Assume that values of enumeration type are always within the minimum range "
+"of that type."
 msgstr ""
 
-#: params.opt:302
+#: c-family/c.opt:2442 c-family/c.opt:2447
 #, no-c-format
 msgid ""
-"Minimum probability (in percent) of dereferencing of a function pointer "
-"parameter for it to be considered for replacement with simple values."
+"Follow the C++17 evaluation order requirements for assignment expressions, "
+"shift, member function calls, etc."
 msgstr ""
 
-#: params.opt:306
+#: c-family/c.opt:2464
 #, no-c-format
 msgid ""
-"Maximum pieces that IPA-SRA tracks per formal parameter, as a consequence, "
-"also the maximum number of replacements of a formal parameter."
+"Set the maximum number of template instantiation notes for a single warning "
+"or error."
 msgstr ""
 
-#: params.opt:310
+#: c-family/c.opt:2471
 #, no-c-format
 msgid ""
-"Maximum allowed growth of total size of new parameters that ipa-sra replaces "
-"a pointer to an aggregate with."
+"-ftemplate-depth=<number>\tSpecify maximum template instantiation depth."
 msgstr ""
 
-#: params.opt:314
+#: c-family/c.opt:2478
 #, no-c-format
 msgid ""
-"Additional maximum allowed growth of total size of new parameters that ipa-"
-"sra replaces a pointer to an aggregate with, if it points to a local "
-"variable that the caller only writes to and passes it as an argument to "
-"functions."
+"-fno-threadsafe-statics\tDo not generate thread-safe code for initializing "
+"local statics."
 msgstr ""
 
-#: params.opt:318
+#: c-family/c.opt:2482
 #, no-c-format
 msgid ""
-"The number of registers in each class kept unused by loop invariant motion."
+"When \"signed\" or \"unsigned\" is not given make the bitfield unsigned."
 msgstr ""
 
-#: params.opt:322
+#: c-family/c.opt:2490
 #, no-c-format
-msgid "Max size of conflict table in MB."
+msgid "Use __cxa_atexit to register destructors."
 msgstr ""
 
-#: params.opt:326
+#: c-family/c.opt:2494
 #, no-c-format
-msgid ""
-"Approximate function insn number in 1K units triggering simple local RA."
+msgid "Use __cxa_get_exception_ptr in exception handling."
 msgstr ""
 
-#: params.opt:330
+#: c-family/c.opt:2498
 #, no-c-format
-msgid "Max loops number for regional RA."
+msgid "Marks all inlined functions and methods as having hidden visibility."
 msgstr ""
 
-#: params.opt:334
+#: c-family/c.opt:2502
 #, no-c-format
-msgid ""
-"Control ira to consider matching constraint (duplicated operand number) "
-"heavily in all available alternatives for preferred register class.  If it "
-"is set as zero, it means ira only respects the matching constraint when it's "
-"in the only available alternative with an appropriate register class.  "
-"Otherwise, it means ira will check all available alternatives for preferred "
-"register class even if it has found some choice with an appropriate register "
-"class and respect the found qualified matching constraint."
+msgid "Changes visibility to match Microsoft Visual Studio by default."
 msgstr ""
 
-#: params.opt:338
+#: c-family/c.opt:2514
 #, no-c-format
-msgid ""
-"If number of candidates in the set is smaller, we always try to remove "
-"unused ivs during its optimization."
+msgid "Emit common-like symbols as weak symbols."
 msgstr ""
 
-#: params.opt:342
+#: c-family/c.opt:2518
 #, no-c-format
 msgid ""
-"Bound on number of candidates below that all candidates are considered in iv "
-"optimizations."
-msgstr ""
-
-#: params.opt:346
-#, no-c-format
-msgid "Bound on number of iv uses in loop optimized in iv optimizations."
+"-fwide-exec-charset=<cset>\tConvert all wide strings and character constants "
+"to character set <cset>."
 msgstr ""
 
-#: params.opt:350
+#: c-family/c.opt:2522
 #, no-c-format
-msgid ""
-"The maximum code size growth ratio when expanding into a jump table (in "
-"percent).  The parameter is used when optimizing for size."
+msgid "Generate a #line directive pointing at the current working directory."
 msgstr ""
 
-#: params.opt:354
+#: c-family/c.opt:2530
 #, no-c-format
 msgid ""
-"The maximum code size growth ratio when expanding into a jump table (in "
-"percent).  The parameter is used when optimizing for speed."
+"Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode."
 msgstr ""
 
-#: params.opt:358
+#: c-family/c.opt:2534
 #, no-c-format
-msgid "The size of L1 cache line."
+msgid "Dump declarations to a .decl file."
 msgstr ""
 
-#: params.opt:362
+#: c-family/c.opt:2538
 #, no-c-format
 msgid ""
-"The minimum recommended offset between two concurrently-accessed objects to "
-"avoid additional performance degradation due to contention introduced by the "
-"implementation.  Typically the L1 cache line size, but can be larger to "
-"accommodate a variety of target processors with different cache line sizes. "
-"C++17 code might use this value in structure layout, but is strongly "
-"discouraged from doing so in public ABIs."
+"-femit-struct-debug-baseonly\tAggressive reduced debug info for structs."
 msgstr ""
 
-#: params.opt:371
+#: c-family/c.opt:2542
 #, no-c-format
 msgid ""
-"The maximum recommended size of contiguous memory occupied by two objects "
-"accessed with temporal locality by concurrent threads.  Typically the L1 "
-"cache line size, but can be smaller to accommodate a variety of target "
-"processors with different cache line sizes."
+"-femit-struct-debug-reduced\tConservative reduced debug info for structs."
 msgstr ""
 
-#: params.opt:378
+#: c-family/c.opt:2546
 #, no-c-format
-msgid "The size of L1 cache."
+msgid ""
+"-femit-struct-debug-detailed=<spec-list>\tDetailed reduced debug info for "
+"structs."
 msgstr ""
 
-#: params.opt:382
+#: c-family/c.opt:2550
 #, no-c-format
-msgid "The size of L2 cache."
+msgid ""
+"Interpret imaginary, fixed-point, or other gnu number suffix as the "
+"corresponding number literal rather than a user-defined number literal."
 msgstr ""
 
-#: params.opt:386
+#: c-family/c.opt:2555
 #, no-c-format
-msgid "Maximal growth due to inlining of large function (in percent)."
+msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path."
 msgstr ""
 
-#: params.opt:390
+#: c-family/c.opt:2559
 #, no-c-format
-msgid "The size of function body to be considered large."
+msgid "-imacros <file>\tAccept definition of macros in <file>."
 msgstr ""
 
-#: params.opt:394
+#: c-family/c.opt:2563
 #, no-c-format
-msgid "The size of stack frame to be considered large."
+msgid "-imultilib <dir>\tSet <dir> to be the multilib include subdirectory."
 msgstr ""
 
-#: params.opt:398
+#: c-family/c.opt:2567
 #, no-c-format
-msgid "Maximal stack frame growth due to inlining (in percent)."
+msgid "-include <file>\tInclude the contents of <file> before other files."
 msgstr ""
 
-#: params.opt:402
+#: c-family/c.opt:2571
 #, no-c-format
-msgid "The size of translation unit to be considered large."
+msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options."
 msgstr ""
 
-#: params.opt:406
+#: c-family/c.opt:2575
 #, no-c-format
-msgid "Maximum number of concurrently open C++ module files when lazy loading."
+msgid "-isysroot <dir>\tSet <dir> to be the system root directory."
 msgstr ""
 
-#: params.opt:410
+#: c-family/c.opt:2579
 #, no-c-format
-msgid ""
-"The minimum cost of an expensive expression in the loop invariant motion."
+msgid "-isystem <dir>\tAdd <dir> to the start of the system include path."
 msgstr ""
 
-#: params.opt:414
+#: c-family/c.opt:2583
 #, no-c-format
-msgid "True if a non-short-circuit operation is optimal."
+msgid "-iquote <dir>\tAdd <dir> to the end of the quote include path."
 msgstr ""
 
-#: params.opt:418
+#: c-family/c.opt:2587
 #, no-c-format
-msgid "Size of tiles for loop blocking."
+msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path."
 msgstr ""
 
-#: params.opt:422
+#: c-family/c.opt:2591
 #, no-c-format
-msgid "The maximum number of stmts in loop nest for loop interchange."
+msgid ""
+"-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path."
 msgstr ""
 
-#: params.opt:426
+#: c-family/c.opt:2601
 #, no-c-format
-msgid "The minimum stride ratio for loop interchange to be profitable."
+msgid ""
+"Do not search standard system include directories (those specified with "
+"-isystem will still be used)."
 msgstr ""
 
-#: params.opt:430
+#: c-family/c.opt:2605
 #, no-c-format
-msgid "Max basic blocks number in loop for loop invariant motion."
+msgid "Do not search standard system include directories for C++."
 msgstr ""
 
-#: params.opt:434
+#: c-family/c.opt:2617
 #, no-c-format
-msgid "Maximum number of datarefs in loop for building loop data dependencies."
+msgid "Generate C header of platform-specific features."
 msgstr ""
 
-#: params.opt:438
+#: c-family/c.opt:2621
 #, no-c-format
-msgid ""
-"The maximum number of instructions in an inner loop that is being considered "
-"for versioning."
+msgid "Remap file names when including files."
 msgstr ""
 
-#: params.opt:442
+#: c-family/c.opt:2625 c-family/c.opt:2629
 #, no-c-format
 msgid ""
-"The maximum number of instructions in an outer loop that is being considered "
-"for versioning, on top of the instructions in inner loops."
+"Conform to the ISO 1998 C++ standard revised by the 2003 technical "
+"corrigendum."
 msgstr ""
 
-#: params.opt:446
+#: c-family/c.opt:2633
 #, no-c-format
-msgid ""
-"Minimal fall-through edge probability in percentage used to add BB to "
-"inheritance EBB in LRA."
+msgid "Conform to the ISO 2011 C++ standard."
 msgstr ""
 
-#: params.opt:450
+#: c-family/c.opt:2637
 #, no-c-format
-msgid ""
-"The max number of reload pseudos which are considered during spilling a non-"
-"reload pseudo."
+msgid "Deprecated in favor of -std=c++11."
 msgstr ""
 
-#: params.opt:454
+#: c-family/c.opt:2641
 #, no-c-format
-msgid "Maximal size of a partition for LTO (in estimated instructions)."
+msgid "Deprecated in favor of -std=c++14."
 msgstr ""
 
-#: params.opt:458
+#: c-family/c.opt:2645
 #, no-c-format
-msgid "maximal number of LTO partitions streamed in parallel."
+msgid "Conform to the ISO 2014 C++ standard."
 msgstr ""
 
-#: params.opt:462
+#: c-family/c.opt:2649
 #, no-c-format
-msgid "Minimal size of a partition for LTO (in estimated instructions)."
+msgid "Deprecated in favor of -std=c++17."
 msgstr ""
 
-#: params.opt:466
+#: c-family/c.opt:2653
 #, no-c-format
-msgid "Number of partitions the program should be split to."
+msgid "Conform to the ISO 2017 C++ standard."
 msgstr ""
 
-#: params.opt:485
+#: c-family/c.opt:2657
 #, no-c-format
-msgid ""
-"The denominator n of fraction 1/n of the execution frequency of callee to be "
-"cloned for a particular caller. Special value of 0 dictates to always clone "
-"without a cut-off."
+msgid "Deprecated in favor of -std=c++20."
 msgstr ""
 
-#: params.opt:489
+#: c-family/c.opt:2661
 #, no-c-format
-msgid ""
-"Size cut-off for callee including inlined calls to be cloned for a "
-"particular caller."
+msgid "Conform to the ISO 2020 C++ standard."
 msgstr ""
 
-#: params.opt:493
+#: c-family/c.opt:2665
 #, no-c-format
-msgid ""
-"Maximal size of a locality partition for LTO (in estimated instructions). "
-"Value of 0 results in default value being used."
+msgid "Deprecated in favor of -std=c++23."
 msgstr ""
 
-#: params.opt:497
+#: c-family/c.opt:2669
 #, no-c-format
 msgid ""
-"The maximum number of instructions to consider to unroll in a loop on "
-"average."
-msgstr ""
-
-#: params.opt:501
-#, no-c-format
-msgid "The maximum number of insns combine tries to combine."
+"Conform to the ISO 2023 C++ standard (published in 2024; experimental and "
+"incomplete support)."
 msgstr ""
 
-#: params.opt:505
+#: c-family/c.opt:2673 c-family/c.opt:2677
 #, no-c-format
 msgid ""
-"The maximum number of instructions that combine searches in order to find "
-"the next use of a particular register."
+"Conform to the ISO 2026 C++ draft standard (experimental and incomplete "
+"support)."
 msgstr ""
 
-#: params.opt:509
+#: c-family/c.opt:2681 c-family/c.opt:2843
 #, no-c-format
-msgid "The maximum depth of a loop nest we completely peel."
+msgid "Conform to the ISO 2011 C standard."
 msgstr ""
 
-#: params.opt:513
+#: c-family/c.opt:2685
 #, no-c-format
-msgid ""
-"The maximum number of peelings of a single loop that is peeled completely."
+msgid "Deprecated in favor of -std=c11."
 msgstr ""
 
-#: params.opt:517
+#: c-family/c.opt:2689 c-family/c.opt:2693 c-family/c.opt:2847
+#: c-family/c.opt:2851
 #, no-c-format
-msgid "The maximum number of insns of a completely peeled loop."
+msgid "Conform to the ISO 2017 C standard (published in 2018)."
 msgstr ""
 
-#: params.opt:521
+#: c-family/c.opt:2697 c-family/c.opt:2855
 #, no-c-format
-msgid "The maximum number of incoming edges to consider for crossjumping."
+msgid "Conform to the ISO 2023 C standard (published in 2024)."
 msgstr ""
 
-#: params.opt:525
+#: c-family/c.opt:2701
 #, no-c-format
-msgid "The maximum instructions CSE process before flushing."
+msgid "Deprecated in favor of -std=c23."
 msgstr ""
 
-#: params.opt:529
+#: c-family/c.opt:2705
 #, no-c-format
-msgid "The maximum length of path considered in cse."
+msgid ""
+"Conform to the ISO 202Y C standard draft (experimental and incomplete "
+"support)."
 msgstr ""
 
-#: params.opt:533
+#: c-family/c.opt:2709 c-family/c.opt:2713 c-family/c.opt:2827
 #, no-c-format
-msgid "The maximum memory locations recorded by cselib."
+msgid "Conform to the ISO 1990 C standard."
 msgstr ""
 
-#: params.opt:537
+#: c-family/c.opt:2717 c-family/c.opt:2835
 #, no-c-format
-msgid "Max. count of debug markers to expand or inline."
+msgid "Conform to the ISO 1999 C standard."
 msgstr ""
 
-#: params.opt:541
+#: c-family/c.opt:2721
 #, no-c-format
-msgid "The maximum number of instructions to consider to fill a delay slot."
+msgid "Deprecated in favor of -std=c99."
 msgstr ""
 
-#: params.opt:545
+#: c-family/c.opt:2725 c-family/c.opt:2730
 #, no-c-format
 msgid ""
-"The maximum number of instructions to consider to find accurate live "
-"register information."
+"Conform to the ISO 1998 C++ standard revised by the 2003 technical "
+"corrigendum with GNU extensions."
 msgstr ""
 
-#: params.opt:549
+#: c-family/c.opt:2735
 #, no-c-format
-msgid "Maximum number of active local stores in RTL dead store elimination."
+msgid "Conform to the ISO 2011 C++ standard with GNU extensions."
 msgstr ""
 
-#: params.opt:553
+#: c-family/c.opt:2739
 #, no-c-format
-msgid ""
-"The maximum number of nested indirect inlining performed by early inliner."
+msgid "Deprecated in favor of -std=gnu++11."
 msgstr ""
 
-#: params.opt:557
+#: c-family/c.opt:2743
 #, no-c-format
-msgid ""
-"Maximum number of fields in a structure before pointer analysis treats the "
-"structure as a single variable."
+msgid "Deprecated in favor of -std=gnu++14."
 msgstr ""
 
-#: params.opt:561
+#: c-family/c.opt:2747
 #, no-c-format
-msgid ""
-"Maximum number of instructions to copy when duplicating blocks on a finite "
-"state automaton jump thread path."
+msgid "Conform to the ISO 2014 C++ standard with GNU extensions."
 msgstr ""
 
-#: params.opt:565
+#: c-family/c.opt:2751
 #, no-c-format
-msgid "The maximum ratio of insertions to deletions of expressions in GCSE."
+msgid "Deprecated in favor of -std=gnu++17."
 msgstr ""
 
-#: params.opt:569
+#: c-family/c.opt:2755
 #, no-c-format
-msgid "The maximum amount of memory to be allocated by GCSE, in kilobytes."
+msgid "Conform to the ISO 2017 C++ standard with GNU extensions."
 msgstr ""
 
-#: params.opt:573
+#: c-family/c.opt:2759
 #, no-c-format
-msgid ""
-"The maximum number of insns to duplicate when unfactoring computed gotos."
+msgid "Deprecated in favor of -std=gnu++20."
 msgstr ""
 
-#: params.opt:577
+#: c-family/c.opt:2763
 #, no-c-format
-msgid "The maximum expansion factor when copying basic blocks."
+msgid "Conform to the ISO 2020 C++ standard with GNU extensions."
 msgstr ""
 
-#: params.opt:581
+#: c-family/c.opt:2767
 #, no-c-format
-msgid "Maximum depth of search in the dominator tree for expressions to hoist."
+msgid "Deprecated in favor of -std=gnu++23."
 msgstr ""
 
-#: params.opt:585
+#: c-family/c.opt:2771
 #, no-c-format
 msgid ""
-"Maximum loop depth of a call which is considered for inlining functions "
-"called once."
+"Conform to the ISO 2023 C++ standard with GNU extensions (published in 2024; "
+"experimental and incomplete support)."
 msgstr ""
 
-#: params.opt:589
+#: c-family/c.opt:2775 c-family/c.opt:2779
 #, no-c-format
 msgid ""
-"Maximum combined size of caller and callee which is inlined if callee is "
-"called once."
+"Conform to the ISO 2026 C++ draft standard with GNU extensions (experimental "
+"and incomplete support)."
 msgstr ""
 
-#: params.opt:593
+#: c-family/c.opt:2783
 #, no-c-format
-msgid "The maximum number of instructions when automatically inlining."
+msgid "Conform to the ISO 2011 C standard with GNU extensions."
 msgstr ""
 
-#: params.opt:597
+#: c-family/c.opt:2787
 #, no-c-format
-msgid ""
-"The maximum number of instructions inline function can grow to via recursive "
-"inlining."
+msgid "Deprecated in favor of -std=gnu11."
 msgstr ""
 
-#: params.opt:601
+#: c-family/c.opt:2791 c-family/c.opt:2795
 #, no-c-format
 msgid ""
-"The maximum number of instructions non-inline function can grow to via "
-"recursive inlining."
+"Conform to the ISO 2017 C standard (published in 2018) with GNU extensions."
 msgstr ""
 
-#: params.opt:605
+#: c-family/c.opt:2799
 #, no-c-format
 msgid ""
-"The maximum number of instructions in a single function eligible for "
-"inlining."
+"Conform to the ISO 2023 C standard (published in 2024) with GNU extensions."
 msgstr ""
 
-#: params.opt:609
+#: c-family/c.opt:2803
 #, no-c-format
-msgid "The maximum number of instructions when inlining for size."
+msgid "Deprecated in favor of -std=gnu23."
 msgstr ""
 
-#: params.opt:613
+#: c-family/c.opt:2807
 #, no-c-format
 msgid ""
-"The maximum number of instructions when automatically inlining small "
-"functions."
-msgstr ""
-
-#: params.opt:617
-#, no-c-format
-msgid "The maximum depth of recursive inlining for inline functions."
-msgstr ""
-
-#: params.opt:621
-#, no-c-format
-msgid "The maximum depth of recursive inlining for non-inline functions."
-msgstr ""
-
-#: params.opt:625
-#, no-c-format
-msgid "Maximum number of isl operations, 0 means unlimited."
+"Conform to the ISO 202Y C standard draft with GNU extensions (experimental "
+"and incomplete support)."
 msgstr ""
 
-#: params.opt:629
+#: c-family/c.opt:2811 c-family/c.opt:2815
 #, no-c-format
-msgid "Bound on the cost of an expression to compute the number of iterations."
+msgid "Conform to the ISO 1990 C standard with GNU extensions."
 msgstr ""
 
-#: params.opt:633
+#: c-family/c.opt:2819
 #, no-c-format
-msgid ""
-"Bound on the number of iterations the brute force # of iterations analysis "
-"algorithm evaluates."
+msgid "Conform to the ISO 1999 C standard with GNU extensions."
 msgstr ""
 
-#: params.opt:637
+#: c-family/c.opt:2823
 #, no-c-format
-msgid ""
-"Maximum number of statements allowed in a block that needs to be duplicated "
-"when threading jumps."
+msgid "Deprecated in favor of -std=gnu99."
 msgstr ""
 
-#: params.opt:641
+#: c-family/c.opt:2831
 #, no-c-format
-msgid "Search space limit for the backwards jump threader."
+msgid "Conform to the ISO 1990 C standard as amended in 1994."
 msgstr ""
 
-#: params.opt:645
+#: c-family/c.opt:2839
 #, no-c-format
-msgid ""
-"The maximum number of RTL nodes that can be recorded as combiner's last "
-"value."
+msgid "Deprecated in favor of -std=iso9899:1999."
 msgstr ""
 
-#: params.opt:649
+#: c-family/c.opt:2859
 #, no-c-format
 msgid ""
-"The maximum number of insns in loop header duplicated by the copy loop "
-"headers pass."
+"-stdlib=[libstdc++|libc++]\tThe standard library to be used for C++ headers "
+"and runtime."
 msgstr ""
 
-#: params.opt:653
+#: c-family/c.opt:2876
 #, no-c-format
-msgid ""
-"The maximum number of backtrack attempts the scheduler should make when "
-"modulo scheduling a loop."
+msgid "Enable traditional preprocessing."
 msgstr ""
 
-#: params.opt:657
+#: c-family/c.opt:2880
 #, no-c-format
-msgid "Minimum page size for warning purposes."
+msgid "-trigraphs\tSupport ISO C trigraphs."
 msgstr ""
 
-#: params.opt:661
+#: c-family/c.opt:2884
 #, no-c-format
-msgid ""
-"Maximum length of partial antic set when performing tree pre optimization."
+msgid "Do not predefine system-specific and GCC-specific macros."
 msgstr ""
 
-#: params.opt:665
+#: cobol/lang.opt:48
 #, no-c-format
-msgid "The maximum number of branches on the path through the peeled sequence."
+msgid "Accept COBOL constructs used by non-ISO compilers."
 msgstr ""
 
-#: params.opt:669
+#: cobol/lang.opt:70
 #, no-c-format
-msgid "The maximum number of peelings of a single loop."
+msgid "-fcobol-exceptions=<n>\tEnable some exceptions by default."
 msgstr ""
 
-#: params.opt:673
+#: cobol/lang.opt:74
 #, no-c-format
-msgid "The maximum number of insns of a peeled loop."
+msgid "Define alternative implicit copybook filename extension."
 msgstr ""
 
-#: params.opt:677
+#: cobol/lang.opt:82
 #, no-c-format
-msgid "The maximum length of scheduling's pending operations list."
+msgid "Set the default execution character set for NATIONAL data items."
 msgstr ""
 
-#: params.opt:681 params.opt:725
+#: cobol/lang.opt:89
 #, no-c-format
-msgid ""
-"The maximum number of blocks in a region to be considered for interblock "
-"scheduling."
+msgid "Warn if CDF defines Level 78 constant."
 msgstr ""
 
-#: params.opt:685 params.opt:729
+#: cobol/lang.opt:94
 #, no-c-format
-msgid ""
-"The maximum number of insns in a region to be considered for interblock "
-"scheduling."
+msgid "Warn if BINARY-LONG-LONG is used."
 msgstr ""
 
-#: params.opt:689
+#: cobol/lang.opt:99
 #, no-c-format
-msgid ""
-"Maximum depth of sqrt chains to use when synthesizing exponentiation by a "
-"real constant."
+msgid "Warn if CALL ... GIVING is used."
 msgstr ""
 
-#: params.opt:693
+#: cobol/lang.opt:104
 #, no-c-format
-msgid "The maximum number of loop iterations we predict statically."
+msgid "Warn if CALL is used is used with a literal parameter by reference."
 msgstr ""
 
-#: params.opt:697
+#: cobol/lang.opt:109
 #, no-c-format
-msgid ""
-"The maximum number of instructions to search backward when looking for "
-"equivalent reload."
+msgid "Warn if CDF %<$IF%> is used."
 msgstr ""
 
-#: params.opt:701
+#: cobol/lang.opt:114
 #, no-c-format
-msgid ""
-"Maximum number of insns in a basic block to consider for RTL if-conversion."
+msgid "Warn if COMPUTATIONAL-6 is used."
 msgstr ""
 
-#: params.opt:705
+#: cobol/lang.opt:119
 #, no-c-format
-msgid ""
-"Maximum permissible cost for the sequence that would be generated by the RTL "
-"if-conversion pass for a branch that is considered predictable."
+msgid "Warn if COMPUTATIONAL is used with PICTURE X."
 msgstr ""
 
-#: params.opt:709
+#: cobol/lang.opt:124
 #, no-c-format
-msgid ""
-"Maximum permissible cost for the sequence that would be generated by the RTL "
-"if-conversion pass for a branch that is considered unpredictable."
+msgid "Warn if INSPECT ... TRAILING is used."
 msgstr ""
 
-#: params.opt:713
+#: cobol/lang.opt:129
 #, no-c-format
-msgid "The maximum number of iterations through CFG to extend regions."
+msgid "Warn if Level 01 is used with OCCURS."
 msgstr ""
 
-#: params.opt:717
+#: cobol/lang.opt:134
 #, no-c-format
-msgid ""
-"The maximum conflict delay for an insn to be considered for speculative "
-"motion."
+msgid "Warn if Level 78 is used."
 msgstr ""
 
-#: params.opt:721
+#: cobol/lang.opt:139
 #, no-c-format
-msgid ""
-"The maximum number of instructions ready to be issued to be considered by "
-"the scheduler during the first scheduling pass."
+msgid "Warn if ANY LENGTH is used in outermost program."
 msgstr ""
 
-#: params.opt:733
+#: cobol/lang.opt:144
 #, no-c-format
-msgid "Maximum length of candidate scans for straight-line strength reduction."
+msgid "Warn if MOVE INDEX is used."
 msgstr ""
 
-#: params.opt:737
+#: cobol/lang.opt:149
 #, no-c-format
-msgid "Maximum number of may-defs visited when devirtualizing speculatively."
+msgid "Warn if MOVE POINTER is used."
 msgstr ""
 
-#: params.opt:741
+#: cobol/lang.opt:154
 #, no-c-format
-msgid ""
-"Maximum recursion depth allowed when querying a property of an SSA name."
+msgid "Warn if RETURNING <number> is used."
 msgstr ""
 
-#: params.opt:745
+#: cobol/lang.opt:159
 #, no-c-format
-msgid "Maximum number of constant stores to merge in the store merging pass."
+msgid "Warn if USAGE IS TYPENAME is used."
 msgstr ""
 
-#: params.opt:749
+#: cobol/lang.opt:164
 #, no-c-format
-msgid "Maximum number of conditional store pairs that can be sunk."
+msgid "Warn if numeric string is invalid."
 msgstr ""
 
-#: params.opt:753 params.opt:757
+#: cobol/lang.opt:169
 #, no-c-format
-msgid ""
-"Maximum number of store chains to track at the same time in the store "
-"merging pass."
+msgid "Warn if referenced CDF PARAMETER is not defined."
 msgstr ""
 
-#: params.opt:761
+#: cobol/lang.opt:174
 #, no-c-format
-msgid "Maximum amount of similar bbs to compare a bb with."
+msgid "Warn if referenced CDF name is not defined."
 msgstr ""
 
-#: params.opt:765
+#: cobol/lang.opt:179
 #, no-c-format
-msgid "Maximum amount of iterations of the pass over a function."
+msgid "Print message when copybook is processed."
 msgstr ""
 
-#: params.opt:769
+#: cobol/lang.opt:184
 #, no-c-format
-msgid ""
-"Maximum number of strings for which strlen optimization pass will track "
-"string lengths."
+msgid "Warn if unimplemented/unknown exception condition is referenced."
 msgstr ""
 
-#: params.opt:773
+#: cobol/lang.opt:189
 #, no-c-format
-msgid ""
-"Maximum number of arguments in a PHI supported by TREE if-conversion unless "
-"the loop is marked with simd pragma."
+msgid "Print message when ENTRY CONVENTION is specified."
 msgstr ""
 
-#: params.opt:777
+#: cobol/lang.opt:194
 #, no-c-format
-msgid "The maximum number of unrollings of a single loop."
+msgid "Print message when include file is processed."
 msgstr ""
 
-#: params.opt:781
+#: cobol/lang.opt:199
 #, no-c-format
-msgid "The maximum number of instructions to consider to unroll in a loop."
+msgid "Warn if concatenated literals use different encodings."
 msgstr ""
 
-#: params.opt:785
+#: cobol/lang.opt:204
 #, no-c-format
-msgid "The maximum number of insns of an unswitched loop."
+msgid "Warn if locale(3) fails."
 msgstr ""
 
-#: params.opt:789
+#: cobol/lang.opt:209
 #, no-c-format
-msgid "The maximum depth of a loop nest to be unswitched."
+msgid "Warn if COBOL MOVE has no corresponding fields."
 msgstr ""
 
-#: params.opt:793
+#: cobol/lang.opt:214
 #, no-c-format
-msgid ""
-"If -fvariable-expansion-in-unroller is used, the maximum number of times "
-"that an individual variable will be expanded during loop unrolling."
+msgid "Warn if nlanglanginfo(3) fails."
 msgstr ""
 
-#: params.opt:797
+#: cobol/lang.opt:219
 #, no-c-format
-msgid "Max. recursion depth for expanding var tracking expressions."
+msgid "Warn if LENGTH OF is used."
 msgstr ""
 
-#: params.opt:801
+#: cobol/lang.opt:224
 #, no-c-format
-msgid "Max. size of loc list for which reverse ops should be added."
+msgid "Warn if PROCEDURE POINTER is used."
 msgstr ""
 
-#: params.opt:805
+#: cobol/lang.opt:229
 #, no-c-format
-msgid "Max. size of var tracking hash tables."
+msgid "Warn if SECTION segments are used."
 msgstr ""
 
-#: params.opt:809
+#: cobol/lang.opt:234
 #, no-c-format
-msgid "Maximum number of VALUEs handled during a single find_base_term call."
+msgid "Warn if resume is used (instead of error for IBM)."
 msgstr ""
 
-#: params.opt:813
+#: cobol/lang.opt:241
 #, no-c-format
-msgid ""
-"The minimum number of matching instructions to consider for crossjumping."
+msgid "Warn if APPLY COMMIT is used."
 msgstr ""
 
-#: params.opt:817
+#: cobol/lang.opt:246
 #, no-c-format
-msgid ""
-"Inline recursively only when the probability of call being executed exceeds "
-"the parameter."
+msgid "Warn if HIGH-ORDER-LEFT HIGH-ORDER-RIGHT is used."
 msgstr ""
 
-#: params.opt:821
+#: cobol/lang.opt:251
 #, no-c-format
-msgid ""
-"Min. ratio of insns to prefetches to enable prefetching for a loop with an "
-"unknown trip count."
+msgid "Warn if FILE CODE SET is used."
 msgstr ""
 
-#: params.opt:825
+#: cobol/lang.opt:256
 #, no-c-format
-msgid ""
-"The minimum threshold for probability of semi-invariant condition statement "
-"to trigger loop split."
+msgid "Warn if RECORDING MODE is used."
 msgstr ""
 
-#: params.opt:829
+#: cobol/lang.opt:261
 #, no-c-format
-msgid "The minimum UID to be used for a nondebug insn."
+msgid "Warn if SET LOCALE ... TO is used."
 msgstr ""
 
-#: params.opt:833
+#: cobol/lang.opt:266
 #, no-c-format
-msgid ""
-"The minimum size of variables taking part in stack slot sharing when not "
-"optimizing."
+msgid "Warn if SET ... TO LOCALE is used."
 msgstr ""
 
-#: params.opt:837
+#: cobol/lang.opt:273
 #, no-c-format
-msgid ""
-"The minimum probability of reaching a source block for interblock "
-"speculative scheduling."
+msgid "Warn if a line directive is malformed (instead of error)."
 msgstr ""
 
-#: params.opt:841
+#: cobol/lang.opt:278
 #, no-c-format
-msgid ""
-"If -ftree-vectorize is used, the minimal loop bound of a loop to be "
-"considered for vectorization."
+msgid "Warn if EQUAL used as assignment operator (instead of error)."
 msgstr ""
 
-#: params.opt:845
+#: cobol/lang.opt:283
 #, no-c-format
-msgid ""
-"--param=openacc-kernels=[decompose|parloops]\tSpecify mode of OpenACC "
-"'kernels' constructs handling."
+msgid "Warn if iconv(3) cannot convert between encodings (instead of error)."
 msgstr ""
 
-#: params.opt:858
+#: cobol/lang.opt:288
 #, no-c-format
-msgid ""
-"--param=openacc-privatization=[quiet|noisy]\tSpecify mode of OpenACC "
-"privatization diagnostics."
+msgid "Warn if include file is not found (instead of error)."
 msgstr ""
 
-#: params.opt:871
+#: cobol/lang.opt:293
 #, no-c-format
-msgid "Chunk size of omp schedule for loops parallelized by parloops."
+msgid "Warn if a preprocessor fails (instead of error)."
 msgstr ""
 
-#: params.opt:875
+#: cobol/lang.opt:298
 #, no-c-format
-msgid ""
-"Minimum number of iterations per thread of an innermost parallelized loop."
+msgid "Warn if a referenced procedure is not found (instead of error)."
 msgstr ""
 
-#: params.opt:879
+#: cobol/lang.opt:303
 #, no-c-format
-msgid ""
-"--param=parloops-schedule=[static|dynamic|guided|auto|runtime]\tSchedule "
-"type of omp schedule for loops parallelized by parloops."
+msgid "Warn if REPLACE cannot be processed (instead of error)."
 msgstr ""
 
-#: params.opt:901
+#: cobol/lang.opt:308
 #, no-c-format
-msgid ""
-"Maximum probability of the entry BB of split region (in percent relative to "
-"entry BB of the function) to make partial inlining happen."
+msgid "Warn if a SEGMENT section is invalid (instead of error)."
 msgstr ""
 
-#: params.opt:905
+#: cobol/lang.opt:313
 #, no-c-format
-msgid ""
-"Maximum number of statements allowed inbetween the statement and the end to "
-"considered not extending the liferange."
+msgid "Warn if a SEGMENT range is negative (instead of error)."
 msgstr ""
 
-#: params.opt:909
+#: cobol/lang.opt:318
 #, no-c-format
-msgid "Maximal estimated outcome of branch considered predictable."
+msgid "Warn if indicator column has no recognized meaning (instead of error)."
 msgstr ""
 
-#: params.opt:913
+#: cobol/lang.opt:323
 #, no-c-format
-msgid ""
-"Whether software prefetch hints should be issued for non-constant strides."
+msgid "Warn if relational operator not followed by space (instead of error)."
 msgstr ""
 
-#: params.opt:917
+#: cobol/lang.opt:328
 #, no-c-format
-msgid "The number of insns executed before prefetch is completed."
+msgid "Warn if IBM-style EJECT is used (instead of error)."
 msgstr ""
 
-#: params.opt:921
+#: cobol/lang.opt:333
 #, no-c-format
-msgid "Min. ratio of insns to mem ops to enable prefetching in a loop."
+msgid "Warn if IBM-style STOP <number> is used (instead of error)."
 msgstr ""
 
-#: params.opt:925
+#: cobol/lang.opt:338
 #, no-c-format
-msgid ""
-"The minimum constant stride beyond which we should use prefetch hints for."
+msgid "Warn if VOLATILE is used (instead of error if -dialect ibm)."
 msgstr ""
 
-#: params.opt:929
+#: cobol/lang.opt:344
 #, no-c-format
-msgid "Use internal function id in profile lookup."
+msgid "Set Working-Storage data items to the supplied value."
 msgstr ""
 
-#: params.opt:933
+#: cobol/lang.opt:348
 #, no-c-format
-msgid ""
-"--param=ranger-debug=[none|trace|gori|cache|tracegori|all] Specifies the "
-"output mode for debugging ranger."
+msgid "Enable Cobol lex debugging."
 msgstr ""
 
-#: params.opt:958
+#: cobol/lang.opt:360
 #, no-c-format
-msgid ""
-"Maximum depth of logical expression evaluation ranger will look through when "
-"evaluating outgoing edge ranges."
+msgid "-findicator-column=<n>\tColumn after which Region A begins."
 msgstr ""
 
-#: params.opt:963
+#: cobol/lang.opt:364
 #, no-c-format
-msgid ""
-"Maximum depth of instruction chains to consider for recomputation in the "
-"outgoing range calculator."
+msgid "Enable/disable static linkage for CALL literals."
 msgstr ""
 
-#: params.opt:968
+#: cobol/lang.opt:368
 #, no-c-format
-msgid "Maximum number of relations the oracle will register in a basic block."
+msgid "Enable Cobol parser debugging."
 msgstr ""
 
-#: params.opt:972
+#: cobol/lang.opt:372
 #, no-c-format
-msgid ""
-"Work bound when discovering transitive relations from existing relations."
+msgid "Enable Cobol yacc debugging."
 msgstr ""
 
-#: params.opt:976
+#: cobol/lang.opt:376
 #, no-c-format
-msgid "Maximum depth of a loop nest to fully value-number optimistically."
+msgid "Preprocess <source_filter> before compiling."
 msgstr ""
 
-#: params.opt:980
+#: cobol/lang.opt:396
 #, no-c-format
-msgid "Maximum number of disambiguations to perform per memory access."
+msgid ""
+"-main\tThe first program-id in the next source file is called by a generated "
+"main() entry point."
 msgstr ""
 
-#: params.opt:984
+#: cobol/lang.opt:400
 #, no-c-format
 msgid ""
-"Bound on the complexity of the expressions in the scalar evolutions analyzer."
+"-main=<source_file> source_file/PROGRAM-ID is called by the generated main()."
 msgstr ""
 
-#: params.opt:988
+#: cobol/lang.opt:404
 #, no-c-format
-msgid "Bound on size of expressions used in the scalar evolutions analyzer."
+msgid "-nomain\tNo main() function is created from COBOL source files."
 msgstr ""
 
-#: params.opt:992
+#: d/lang.opt:51
 #, no-c-format
-msgid ""
-"Hardware autoprefetcher scheduler model control flag.  Number of lookahead "
-"cycles the model looks into, at '0' only enable instruction sorting "
-"heuristic.  Disabled by default."
+msgid "-Hd <dir>\tWrite D interface files to directory <dir>."
 msgstr ""
 
-#: params.opt:996
+#: d/lang.opt:55
 #, no-c-format
-msgid "Minimal distance between possibly conflicting store and load."
+msgid "-Hf <file>\tWrite D interface to <file>."
 msgstr ""
 
-#: params.opt:1000
+#: d/lang.opt:127
 #, no-c-format
-msgid "Which -fsched-pressure algorithm to apply."
+msgid "Warn about casts that will produce a null result."
 msgstr ""
 
-#: params.opt:1004
+#: d/lang.opt:143
 #, no-c-format
-msgid ""
-"The minimal probability of speculation success (in percents), so that "
-"speculative insn will be scheduled."
+msgid "Warn when a special enum is declared with the wrong base type."
 msgstr ""
 
-#: params.opt:1008
+#: d/lang.opt:151
 #, no-c-format
-msgid ""
-"The minimum probability an edge must have for the scheduler to save its "
-"state across it."
+msgid "Warn from speculative compiles such as __traits(compiles)."
 msgstr ""
 
-#: params.opt:1012
+#: d/lang.opt:163
 #, no-c-format
-msgid ""
-"Maximum number of instructions in the ready list that are considered "
-"eligible for renaming."
+msgid "Generate JSON file."
 msgstr ""
 
-#: params.opt:1016
+#: d/lang.opt:167
 #, no-c-format
-msgid "The maximum size of the lookahead window of selective scheduling."
+msgid "-Xf <file>\tWrite JSON output to the given <file>."
 msgstr ""
 
-#: params.opt:1020
+#: d/lang.opt:171
 #, no-c-format
-msgid "Maximum number of times that an insn could be scheduled."
+msgid "Debug library to use instead of phobos."
 msgstr ""
 
-#: params.opt:1024
+#: d/lang.opt:175
 #, no-c-format
-msgid "The number of prefetches that can run at the same time."
+msgid "Default library to use instead of phobos."
 msgstr ""
 
-#: params.opt:1028
+#: d/lang.opt:179
 #, no-c-format
-msgid ""
-"Target block's relative execution frequency (as a percentage) required to "
-"sink a statement."
+msgid "Do link the standard D startup files in the compilation."
 msgstr ""
 
-#: params.opt:1032
+#: d/lang.opt:186
 #, no-c-format
-msgid ""
-"The number of cycles the swing modulo scheduler considers when checking "
-"conflicts using DFA."
+msgid "Generate code for all template instantiations."
 msgstr ""
 
-#: params.opt:1036
+#: d/lang.opt:198
 #, no-c-format
 msgid ""
-"A threshold on the average loop count considered by the swing modulo "
-"scheduler."
+"-fbounds-check=[on|safeonly|off]\tTurn array bounds checks on, in @safe code "
+"only, or off."
 msgstr ""
 
-#: params.opt:1040
+#: d/lang.opt:240
 #, no-c-format
-msgid ""
-"A factor for tuning the upper bound that swing modulo scheduler uses for "
-"scheduling a loop."
+msgid "-fcheckaction=[throw,halt,context]\tBehavior on contract failure."
 msgstr ""
 
-#: params.opt:1044
+#: d/lang.opt:256
 #, no-c-format
-msgid ""
-"The minimum value of stage count that swing modulo scheduler will generate."
+msgid "Compile in debug code."
 msgstr ""
 
-#: params.opt:1048
+#: d/lang.opt:260
 #, no-c-format
-msgid ""
-"Maximum size, in storage units, of an aggregate which should be considered "
-"for scalarization when compiling for size."
+msgid "-fdebug=<ident>\tCompile in debug code identified by <ident>."
 msgstr ""
 
-#: params.opt:1052
+#: d/lang.opt:264
 #, no-c-format
-msgid ""
-"Maximum size, in storage units, of an aggregate which should be considered "
-"for scalarization when compiling for speed."
+msgid "Generate documentation."
 msgstr ""
 
-#: params.opt:1056
+#: d/lang.opt:268
 #, no-c-format
-msgid ""
-"Maximum number of artificial accesses to enable forward propagation that "
-"Scalar Replacement of Aggregates will keep for one local variable."
+msgid "-fdoc-dir=<dir>\tWrite documentation file to directory <dir>."
 msgstr ""
 
-#: params.opt:1060
+#: d/lang.opt:272
 #, no-c-format
-msgid ""
-"The maximum number of SSA_NAME assignments to follow in determining a value."
+msgid "-fdoc-file=<file>\tWrite documentation to <file>."
 msgstr ""
 
-#: params.opt:1064
+#: d/lang.opt:276
 #, no-c-format
-msgid ""
-"The lower bound for a buffer to be considered for stack smashing protection."
+msgid "-fdoc-inc=<file>\tInclude a Ddoc macro <file>."
 msgstr ""
 
-#: params.opt:1068
+#: d/lang.opt:280
 #, no-c-format
-msgid "Size of the stack guard expressed as a power of two in bytes."
+msgid "Assume that standard D runtime libraries and \"D main\" exist."
 msgstr ""
 
-#: params.opt:1072
+#: d/lang.opt:284
 #, no-c-format
-msgid ""
-"Interval in which to probe the stack expressed as a power of two in bytes."
+msgid "Add comments for ignored declarations in the generated C++ header."
 msgstr ""
 
-#: params.opt:1076
+#: d/lang.opt:288
 #, no-c-format
 msgid ""
-"Allow the store merging pass to introduce unaligned stores if it is legal to "
-"do so."
+"-fdump-cxx-spec=<filename>\tWrite all declarations as C++ code to <filename>."
 msgstr ""
 
-#: params.opt:1080
+#: d/lang.opt:292
 #, no-c-format
-msgid "Maximum size of a single store merging region in bytes."
+msgid "Display the frontend AST after parsing and semantic passes."
 msgstr ""
 
-#: params.opt:1084
+#: d/lang.opt:300
 #, no-c-format
 msgid ""
-"Maximum number of instruction distance that a small store forwarded to a "
-"larger load may stall. Value '0' disables the cost checks for the avoid-"
-"store-forwarding pass."
+"-fextern-std=<standard>\tSet C++ name mangling compatibility with <standard>."
 msgstr ""
 
-#: params.opt:1088
+#: d/lang.opt:328
 #, no-c-format
-msgid ""
-"The maximum ratio between array size and switch branches for a switch "
-"conversion to take place."
+msgid "Ignore unsupported pragmas."
 msgstr ""
 
-#: params.opt:1092
+#: d/lang.opt:332
 #, no-c-format
-msgid "Maximum number of cases for slow switch lowering algorithms to be used."
+msgid "Include imported modules in the compilation."
 msgstr ""
 
-#: params.opt:1096
+#: d/lang.opt:336
 #, no-c-format
-msgid "Maximum number of bases stored in each modref tree."
+msgid "Generate code for class invariant contracts."
 msgstr ""
 
-#: params.opt:1100
+#: d/lang.opt:340
 #, no-c-format
-msgid "Maximum number of references stored in each modref base."
+msgid "Generate a default D main() function when compiling."
 msgstr ""
 
-#: params.opt:1104
+#: d/lang.opt:344
 #, no-c-format
-msgid "Maximum number of accesses stored in each modref reference."
+msgid ""
+"-fmodule-file=<package.module>=<filespec>\tuse <filespec> as source file for "
+"<package.module>."
 msgstr ""
 
-#: params.opt:1108
+#: d/lang.opt:348
 #, no-c-format
-msgid "Maximum number of tests performed by modref query."
+msgid "Generate ModuleInfo struct for output module."
 msgstr ""
 
-#: params.opt:1112
+#: d/lang.opt:352
 #, no-c-format
-msgid "Maximum depth of DFS walk used by modref escape analysis."
+msgid ""
+"Process all modules specified on the command line, but only generate code "
+"for the module specified by the argument."
 msgstr ""
 
-#: params.opt:1116
+#: d/lang.opt:356
 #, no-c-format
-msgid "Maximum number of escape points tracked by modref per SSA-name."
+msgid "Generate code for postcondition contracts."
 msgstr ""
 
-#: params.opt:1120
+#: d/lang.opt:360
 #, no-c-format
-msgid "Maximum number of times a given range is adjusted during the dataflow."
+msgid "Generate code for precondition contracts."
 msgstr ""
 
-#: params.opt:1124
+#: d/lang.opt:364
 #, no-c-format
-msgid ""
-"--param=threader-debug=[none|all] Enables verbose dumping of the threader "
-"solver."
+msgid "Turn on all upcoming D language features."
 msgstr ""
 
-#: params.opt:1137
+#: d/lang.opt:368
 #, no-c-format
-msgid ""
-"Size in bytes after which thread-local aggregates should be instrumented "
-"with the logging functions instead of save/restore pairs."
+msgid "Implement D bit-fields."
 msgstr ""
 
-#: params.opt:1141
+#: d/lang.opt:372
 #, no-c-format
-msgid ""
-"The percentage of function, weighted by execution frequency, that must be "
-"covered by trace formation. Used when profile feedback is not available."
+msgid "Implement DIP1000: Scoped pointers."
 msgstr ""
 
-#: params.opt:1145
+#: d/lang.opt:376
 #, no-c-format
-msgid ""
-"The percentage of function, weighted by execution frequency, that must be "
-"covered by trace formation. Used when profile feedback is available."
+msgid "Implement DIP1008: Allow exceptions in @nogc code."
 msgstr ""
 
-#: params.opt:1149
+#: d/lang.opt:380
 #, no-c-format
-msgid "Maximal code growth caused by tail duplication (in percent)."
+msgid "Implement DIP1021: Mutable function arguments."
 msgstr ""
 
-#: params.opt:1153
+#: d/lang.opt:384
 #, no-c-format
-msgid ""
-"Stop forward growth if the probability of best edge is less than this "
-"threshold (in percent). Used when profile feedback is not available."
+msgid "Destruct fields of partially constructed objects."
 msgstr ""
 
-#: params.opt:1157
+#: d/lang.opt:388
 #, no-c-format
-msgid ""
-"Stop forward growth if the probability of best edge is less than this "
-"threshold (in percent). Used when profile feedback is available."
+msgid "Use field-wise comparisons for struct equality."
 msgstr ""
 
-#: params.opt:1161
+#: d/lang.opt:392
 #, no-c-format
 msgid ""
-"Stop reverse growth if the reverse probability of best edge is less than "
-"this threshold (in percent)."
+"When a symbol is resolved, check `alias this' scope before going to upper "
+"scopes."
 msgstr ""
 
-#: params.opt:1165
+#: d/lang.opt:396
 #, no-c-format
 msgid ""
-"Set the maximum number of instructions executed in parallel in reassociated "
-"tree.  If 0, use the target dependent heuristic."
+"Disallow unsound immutable conversions that were formerly incorrectly "
+"permitted."
 msgstr ""
 
-#: params.opt:1169
+#: d/lang.opt:400
 #, no-c-format
-msgid "Emit special instrumentation for accesses to volatiles."
+msgid "Implement 'in' parameters to mean scope const."
 msgstr ""
 
-#: params.opt:1173
+#: d/lang.opt:404
 #, no-c-format
 msgid ""
-"Emit instrumentation calls to __tsan_func_entry() and __tsan_func_exit()."
+"Implement 'in' contracts of overridden methods to be a superset of parent "
+"contract."
 msgstr ""
 
-#: params.opt:1177
+#: d/lang.opt:408
 #, no-c-format
-msgid ""
-"Maximum number of nested calls to search for control dependencies during "
-"uninitialized variable analysis."
+msgid "Disable access to shared memory objects."
 msgstr ""
 
-#: params.opt:1181
+#: d/lang.opt:412
 #, no-c-format
-msgid ""
-"Maximum number of predicates anded for each predicate ored in the normalized "
-"predicate chain."
+msgid "Enable safety checks on all functions by default."
 msgstr ""
 
-#: params.opt:1186
+#: d/lang.opt:416
 #, no-c-format
-msgid "Maximum number of predicates ored in the normalized predicate chain."
+msgid "Enable rvalue arguments to ref parameters."
 msgstr ""
 
-#: params.opt:1190
+#: d/lang.opt:420
 #, no-c-format
-msgid ""
-"Instruction accounted for function prologue, epilogue and other overhead."
+msgid "Disable access to variables marked `@system' from @safe code."
 msgstr ""
 
-#: params.opt:1194
+#: d/lang.opt:424
 #, no-c-format
-msgid "Time accounted for function prologue, epilogue and other overhead."
+msgid "Compile release version."
 msgstr ""
 
-#: params.opt:1198
+#: d/lang.opt:428
 #, no-c-format
-msgid "Instruction accounted for function thunk overhead."
+msgid "Turn off all revertable D language features."
 msgstr ""
 
-#: params.opt:1202
+#: d/lang.opt:432
 #, no-c-format
-msgid "Time accounted for function thunk overhead."
+msgid "Revert DIP1000: Scoped pointers."
 msgstr ""
 
-#: params.opt:1206
+#: d/lang.opt:436
 #, no-c-format
-msgid ""
-"The denominator n of fraction 1/n of the number of profiled runs of the "
-"entire program below which the execution count of a basic block must be in "
-"order for the basic block to be considered unlikely."
+msgid "Don't destruct fields of partially constructed objects."
 msgstr ""
 
-#: params.opt:1210
+#: d/lang.opt:440
 #, no-c-format
-msgid "Maximum unroll factor for the unroll-and-jam transformation."
+msgid "Don't use C-style integral promotion for unary '+', '-' and '~'."
 msgstr ""
 
-#: params.opt:1214
+#: d/lang.opt:448
 #, no-c-format
 msgid ""
-"Minimum percentage of memrefs that must go away for unroll-and-jam to be "
-"considered profitable."
+"-fsave-mixins=<filename>\tExpand and save mixins to file specified by "
+"<filename>."
 msgstr ""
 
-#: params.opt:1218
+#: d/lang.opt:452
 #, no-c-format
-msgid ""
-"Use direct poisoning/unpoisoning instructions for variables smaller or equal "
-"to this number."
+msgid "Generate code for switches without a default case."
 msgstr ""
 
-#: params.opt:1222
+#: d/lang.opt:456
 #, no-c-format
-msgid "Whether to use canonical types."
+msgid "List information on all D language transitions."
 msgstr ""
 
-#: params.opt:1226
+#: d/lang.opt:460
 #, no-c-format
-msgid "Enable loop epilogue vectorization using smaller vector size."
+msgid "List all non-mutable fields which occupy an object instance."
 msgstr ""
 
-#: params.opt:1230
+#: d/lang.opt:464
 #, no-c-format
-msgid ""
-"Maximum number of possible vector layouts (such as permutations) to consider "
-"when optimizing to-be-vectorized code."
+msgid "List all usages of 'in' on parameter."
 msgstr ""
 
-#: params.opt:1234
+#: d/lang.opt:468
 #, no-c-format
-msgid ""
-"Maximum number of loop peels to enhance alignment of data references in a "
-"loop."
+msgid "List all hidden GC allocations."
 msgstr ""
 
-#: params.opt:1238
+#: d/lang.opt:472
 #, no-c-format
-msgid ""
-"Bound on number of runtime checks inserted by the vectorizer's loop "
-"versioning for alias check."
+msgid "List statistics on template instantiations."
 msgstr ""
 
-#: params.opt:1242
+#: d/lang.opt:476
 #, no-c-format
-msgid ""
-"Bound on number of runtime checks inserted by the vectorizer's loop "
-"versioning for alignment check."
+msgid "List all variables going into thread local storage."
 msgstr ""
 
-#: params.opt:1246
+#: d/lang.opt:480
 #, no-c-format
-msgid ""
-"Controls how loop vectorizer uses partial vectors.  0 means never, 1 means "
-"only for loops whose need to iterate can be removed, 2 means for all loops.  "
-"The default value is 2."
+msgid "Compile in unittest code."
 msgstr ""
 
-#: params.opt:1250
+#: d/lang.opt:484
 #, no-c-format
-msgid ""
-"The maximum factor which the loop vectorizer applies to the cost of "
-"statements in an inner loop relative to the loop being vectorized."
+msgid "-fversion=<ident>\tCompile in version code identified by <ident>."
 msgstr ""
 
-#: params.opt:1254
+#: d/lang.opt:488
 #, no-c-format
-msgid "Enable loop vectorization of floating point inductions."
+msgid "Emit template instantiations as weak symbols."
 msgstr ""
 
-#: params.opt:1258
+#: d/lang.opt:508
 #, no-c-format
-msgid "Force the use of SLP when vectorizing, fail if not possible."
+msgid "Do not link the standard D library in the compilation."
 msgstr ""
 
-#: params.opt:1262
+#: d/lang.opt:516
 #, no-c-format
-msgid ""
-"Maximum number of basic blocks before VRP switches to a fast model with less "
-"memory requirements."
+msgid "Link the standard D library statically in the compilation."
 msgstr ""
 
-#: params.opt:1266
+#: d/lang.opt:520
 #, no-c-format
-msgid "Maximum number of basic blocks before VRP uses a sparse bitmap cache."
+msgid "Link the standard D library dynamically in the compilation."
 msgstr ""
 
-#: params.opt:1270
+#: d/lang.opt:524
 #, no-c-format
-msgid ""
-"Maximum number of outgoing edges in a switch before VRP will not process it."
+msgid "Conform to the 2024 D language edition."
 msgstr ""
 
-#: params.opt:1274
+#: d/lang.opt:528
 #, no-c-format
-msgid "Maximum number of basic blocks for VRP to use a basic cache vector."
+msgid "Conform to the latest 202Y D language edition (experimental)."
 msgstr ""
 
-#: calls.cc:1458
+#: calls.cc:1467
 msgid "a callee-copied argument is stored in the current function's frame"
 msgstr ""
 
-#: calls.cc:1528
+#: calls.cc:1537
 msgid "argument must be passed by copying"
 msgstr ""
 
-#: calls.cc:2545
+#: calls.cc:2554
 msgid ""
 "machine description does not have a sibcall_epilogue instruction pattern"
 msgstr ""
 
-#: calls.cc:2557
+#: calls.cc:2566
 msgid "callee returns a structure"
 msgstr ""
 
-#: calls.cc:2565
+#: calls.cc:2574
 msgid "target is not able to optimize the call into a sibling call"
 msgstr ""
 
-#: calls.cc:2574
+#: calls.cc:2583
 msgid "callee returns twice"
 msgstr ""
 
-#: calls.cc:2579
+#: calls.cc:2588
 msgid "callee does not return"
 msgstr ""
 
-#: calls.cc:2585
+#: calls.cc:2595
 msgid "volatile function type"
 msgstr ""
 
-#: calls.cc:2604
+#: calls.cc:2614
 msgid "nested function"
 msgstr ""
 
-#: calls.cc:2615
+#: calls.cc:2625
 msgid "callee required more stack slots than the caller"
 msgstr ""
 
-#: calls.cc:2629
+#: calls.cc:2639
 msgid "inconsistent number of popped arguments"
 msgstr ""
 
-#: calls.cc:2636
+#: calls.cc:2646
 msgid "frontend does not support sibling call"
 msgstr ""
 
-#: calls.cc:2692
+#: calls.cc:2702
 msgid "other reasons"
 msgstr ""
 
-#: calls.cc:3066
+#: calls.cc:3076
 msgid "inside another call"
 msgstr ""
 
-#: calls.cc:3075
+#: calls.cc:3085
 msgid "variable size arguments"
 msgstr ""
 
-#: calls.cc:3099
+#: calls.cc:3109
 msgid "hidden string length argument passed on stack"
 msgstr ""
 
-#: calls.cc:3148
+#: calls.cc:3158
 msgid "caller and callee disagree in promotion of function return value"
 msgstr ""
 
 #. Ideally we'd emit a message for all of the ways that it could
 #. have failed.
-#: calls.cc:4060
+#: calls.cc:4085
 msgid "tail call production failed"
 msgstr ""
 
-#: cfgrtl.cc:2836
+#: cfgrtl.cc:2830
 msgid "flow control insn inside a basic block"
 msgstr ""
 
-#: cfgrtl.cc:3128
+#: cfgrtl.cc:3122
 msgid "insn outside basic block"
 msgstr ""
 
-#: cfgrtl.cc:3136
+#: cfgrtl.cc:3130
 msgid "return not followed by barrier"
 msgstr ""
 
@@ -19415,201 +20101,93 @@ msgstr ""
 msgid "[cannot find %s]"
 msgstr ""
 
-#: collect2.cc:1563
+#: collect2.cc:1566
 #, c-format
 msgid "collect2 version %s\n"
 msgstr ""
 
-#: collect2.cc:1668
+#: collect2.cc:1671
 #, c-format
 msgid "%d constructor found\n"
 msgid_plural "%d constructors found\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: collect2.cc:1672
+#: collect2.cc:1675
 #, c-format
 msgid "%d destructor found\n"
 msgid_plural "%d destructors found\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: collect2.cc:1676
+#: collect2.cc:1679
 #, c-format
 msgid "%d frame table found\n"
 msgid_plural "%d frame tables found\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: collect2.cc:1831
+#: collect2.cc:1834
 #, c-format
 msgid "[Leaving %s]\n"
 msgstr ""
 
-#: collect2.cc:2061
+#: collect2.cc:2064
 #, c-format
 msgid ""
 "\n"
 "write_c_file - output name is %s, prefix is %s\n"
 msgstr ""
 
-#: collect2.cc:2585
+#: collect2.cc:2588
 #, c-format
 msgid ""
 "\n"
 "ldd output with constructors/destructors.\n"
 msgstr ""
 
-#: cprop.cc:1759
+#: cprop.cc:1771
 msgid "const/copy propagation disabled"
 msgstr ""
 
-#: diagnostic-format-json.cc:487
-#, c-format
-msgid "error: unable to open '%s' for writing: %s\n"
-msgstr ""
-
-#. Print a header for the remaining output to stderr, and
-#. return, attempting to print the usual ICE messages to
-#. stderr.  Hopefully this will be helpful to the user in
-#. indicating what's gone wrong (also for DejaGnu, for pruning
-#. those messages).
-#: diagnostic-format-sarif.cc:1752
-#, c-format
-msgid "Internal compiler error:\n"
-msgstr ""
-
-#: diagnostic-format-text.cc:141
-#, c-format
-msgid "%s: all warnings being treated as errors"
-msgstr ""
-
-#: diagnostic-format-text.cc:146
-#, c-format
-msgid "%s: some warnings being treated as errors"
-msgstr ""
-
-#: diagnostic-format-text.cc:682
-msgid "                 from"
-msgstr ""
-
-#: diagnostic-format-text.cc:683
-msgid "In file included from"
-msgstr ""
-
-#. 2
-#: diagnostic-format-text.cc:684
-msgid "        included from"
-msgstr ""
-
-#: diagnostic-format-text.cc:685
-msgid "In module"
-msgstr ""
-
-#. 4
-#: diagnostic-format-text.cc:686
-msgid "of module"
-msgstr ""
-
-#: diagnostic-format-text.cc:687
-msgid "In module imported at"
-msgstr ""
-
-#. 6
-#: diagnostic-format-text.cc:688
-msgid "imported at"
-msgstr ""
-
-#: diagnostic.cc:911
-#, c-format
-msgid "compilation terminated due to -fmax-errors=%u.\n"
-msgstr ""
-
-#: diagnostic.cc:938
-#, c-format
-msgid "compilation terminated due to -Wfatal-errors.\n"
-msgstr ""
-
-#: diagnostic.cc:969
-#, c-format
-msgid "Please submit a full bug report, with preprocessed source.\n"
-msgstr ""
-
-#: diagnostic.cc:972
-#, c-format
-msgid ""
-"Please submit a full bug report, with preprocessed source (by using -freport-"
-"bug).\n"
-msgstr ""
-
-#: diagnostic.cc:976
-#, c-format
-msgid "Please include the complete backtrace with any bug report.\n"
-msgstr ""
-
-#: diagnostic.cc:978
-#, c-format
-msgid "See %s for instructions.\n"
-msgstr ""
-
-#: diagnostic.cc:986
-#, c-format
-msgid "compilation terminated.\n"
-msgstr ""
-
-#: diagnostic.cc:1454
-#, c-format
-msgid "%s:%d: confused by earlier errors, bailing out\n"
-msgstr ""
-
-#: diagnostic.cc:1699
-#, c-format
-msgid "internal compiler error: error reporting routines re-entered.\n"
-msgstr ""
-
-#: diagnostic.cc:1730 diagnostic.cc:1749
-#, gcc-internal-format, gfc-internal-format
-msgid "in %s, at %s:%d"
-msgstr ""
-
-#: final.cc:1101
+#: final.cc:1102
 msgid "negative insn length"
 msgstr ""
 
-#: final.cc:2813
+#: final.cc:2823
 msgid "could not split insn"
 msgstr ""
 
-#: final.cc:3189
+#: final.cc:3199
 msgid "invalid 'asm': "
 msgstr ""
 
-#: final.cc:3322
+#: final.cc:3336
 #, c-format
 msgid "nested assembly dialect alternatives"
 msgstr ""
 
-#: final.cc:3350 final.cc:3362
+#: final.cc:3364 final.cc:3376
 #, c-format
 msgid "unterminated assembly dialect alternative"
 msgstr ""
 
-#: final.cc:3507
+#: final.cc:3521
 #, c-format
 msgid "operand number missing after %%-letter"
 msgstr ""
 
-#: final.cc:3510 final.cc:3551
+#: final.cc:3527 final.cc:3572
 #, c-format
 msgid "operand number out of range"
 msgstr ""
 
-#: final.cc:3568
+#: final.cc:3590
 #, c-format
 msgid "invalid %%-code"
 msgstr ""
 
-#: final.cc:3602
+#: final.cc:3624
 #, c-format
 msgid "'%%l' operand isn't a label"
 msgstr ""
@@ -19618,298 +20196,298 @@ msgstr ""
 #. PRINT_OPERAND must handle them.
 #. We can't handle floating point constants;
 #. TARGET_PRINT_OPERAND must handle them.
-#: final.cc:3738 config/arc/arc.cc:6311 config/i386/i386.cc:12800
+#: final.cc:3760 config/arc/arc.cc:6323 config/i386/i386.cc:13237
 #, c-format
 msgid "floating constant misused"
 msgstr ""
 
-#: final.cc:3796 config/arc/arc.cc:6408 config/i386/i386.cc:12891
+#: final.cc:3818 config/arc/arc.cc:6420 config/i386/i386.cc:13331
 #: config/pdp11/pdp11.cc:1872
 #, c-format
 msgid "invalid expression as operand"
 msgstr ""
 
-#: gcc.cc:132
+#: gcc.cc:133
 #, c-format
 msgid "%s\n"
 msgstr ""
 
-#: gcc.cc:1867
+#: gcc.cc:1908
 #, c-format
 msgid "Using built-in specs.\n"
 msgstr ""
 
-#: gcc.cc:2112
+#: gcc.cc:2153
 #, c-format
 msgid ""
 "Setting spec %s to '%s'\n"
 "\n"
 msgstr ""
 
-#: gcc.cc:2321
+#: gcc.cc:2362
 #, c-format
 msgid "Reading specs from %s\n"
 msgstr ""
 
-#: gcc.cc:2451
+#: gcc.cc:2492
 #, c-format
 msgid "could not find specs file %s\n"
 msgstr ""
 
-#: gcc.cc:2522
+#: gcc.cc:2563
 #, c-format
 msgid "rename spec %s to %s\n"
 msgstr ""
 
-#: gcc.cc:2524
+#: gcc.cc:2565
 #, c-format
 msgid ""
 "spec is '%s'\n"
 "\n"
 msgstr ""
 
-#: gcc.cc:3385
+#: gcc.cc:3401
 #, c-format
 msgid ""
 "\n"
 "Go ahead? (y or n) "
 msgstr ""
 
-#: gcc.cc:3557
+#: gcc.cc:3573
 #, c-format
 msgid "# %s %.2f %.2f\n"
 msgstr ""
 
-#: gcc.cc:3737
+#: gcc.cc:3754
 #, c-format
 msgid "Usage: %s [options] file...\n"
 msgstr ""
 
-#: gcc.cc:3738
+#: gcc.cc:3755
 msgid "Options:\n"
 msgstr ""
 
-#: gcc.cc:3740
+#: gcc.cc:3757
 msgid "  -pass-exit-codes         Exit with highest error code from a phase.\n"
 msgstr ""
 
-#: gcc.cc:3741
+#: gcc.cc:3758
 msgid "  --help                   Display this information.\n"
 msgstr ""
 
-#: gcc.cc:3742
+#: gcc.cc:3759
 msgid ""
 "  --target-help            Display target specific command line options "
 "(including assembler and linker options).\n"
 msgstr ""
 
-#: gcc.cc:3744
+#: gcc.cc:3761
 msgid ""
 "  --help={common|optimizers|params|target|warnings|[^]{joined|separate|"
 "undocumented}}[,...].\n"
 msgstr ""
 
-#: gcc.cc:3745
+#: gcc.cc:3762
 msgid ""
 "                           Display specific types of command line options.\n"
 msgstr ""
 
-#: gcc.cc:3747
+#: gcc.cc:3764
 msgid "  (Use '-v --help' to display command line options of sub-processes).\n"
 msgstr ""
 
-#: gcc.cc:3748
+#: gcc.cc:3765
 msgid "  --version                Display compiler version information.\n"
 msgstr ""
 
-#: gcc.cc:3749
+#: gcc.cc:3766
 msgid "  -dumpspecs               Display all of the built in spec strings.\n"
 msgstr ""
 
-#: gcc.cc:3750
+#: gcc.cc:3767
 msgid "  -dumpversion             Display the version of the compiler.\n"
 msgstr ""
 
-#: gcc.cc:3751
+#: gcc.cc:3768
 msgid "  -dumpmachine             Display the compiler's target processor.\n"
 msgstr ""
 
-#: gcc.cc:3752
+#: gcc.cc:3769
 msgid "  -foffload=<targets>      Specify offloading targets.\n"
 msgstr ""
 
-#: gcc.cc:3753
+#: gcc.cc:3770
 msgid ""
 "  -print-search-dirs       Display the directories in the compiler's search "
 "path.\n"
 msgstr ""
 
-#: gcc.cc:3754
+#: gcc.cc:3771
 msgid ""
 "  -print-libgcc-file-name  Display the name of the compiler's companion "
 "library.\n"
 msgstr ""
 
-#: gcc.cc:3755
+#: gcc.cc:3772
 msgid "  -print-file-name=<lib>   Display the full path to library <lib>.\n"
 msgstr ""
 
-#: gcc.cc:3756
+#: gcc.cc:3773
 msgid ""
 "  -print-prog-name=<prog>  Display the full path to compiler component "
 "<prog>.\n"
 msgstr ""
 
-#: gcc.cc:3757
+#: gcc.cc:3774
 msgid ""
 "  -print-multiarch         Display the target's normalized GNU triplet, used "
 "as\n"
 "                           a component in the library path.\n"
 msgstr ""
 
-#: gcc.cc:3760
+#: gcc.cc:3777
 msgid ""
 "  -print-multi-directory   Display the root directory for versions of "
 "libgcc.\n"
 msgstr ""
 
-#: gcc.cc:3761
+#: gcc.cc:3778
 msgid ""
 "  -print-multi-lib         Display the mapping between command line options "
 "and\n"
 "                           multiple library search directories.\n"
 msgstr ""
 
-#: gcc.cc:3764
+#: gcc.cc:3781
 msgid ""
 "  -print-multi-os-directory Display the relative path to OS libraries.\n"
 msgstr ""
 
-#: gcc.cc:3765
+#: gcc.cc:3782
 msgid "  -print-sysroot           Display the target libraries directory.\n"
 msgstr ""
 
-#: gcc.cc:3766
+#: gcc.cc:3783
 msgid ""
 "  -print-sysroot-headers-suffix Display the sysroot suffix used to find "
 "headers.\n"
 msgstr ""
 
-#: gcc.cc:3767
+#: gcc.cc:3784
 msgid ""
 "  -Wa,<options>            Pass comma-separated <options> on to the "
 "assembler.\n"
 msgstr ""
 
-#: gcc.cc:3768
+#: gcc.cc:3785
 msgid ""
 "  -Wp,<options>            Pass comma-separated <options> on to the "
 "preprocessor.\n"
 msgstr ""
 
-#: gcc.cc:3769
+#: gcc.cc:3786
 msgid ""
 "  -Wl,<options>            Pass comma-separated <options> on to the linker.\n"
 msgstr ""
 
-#: gcc.cc:3770
+#: gcc.cc:3787
 msgid "  -Xassembler <arg>        Pass <arg> on to the assembler.\n"
 msgstr ""
 
-#: gcc.cc:3771
+#: gcc.cc:3788
 msgid "  -Xpreprocessor <arg>     Pass <arg> on to the preprocessor.\n"
 msgstr ""
 
-#: gcc.cc:3772
+#: gcc.cc:3789
 msgid "  -Xlinker <arg>           Pass <arg> on to the linker.\n"
 msgstr ""
 
-#: gcc.cc:3773
+#: gcc.cc:3790
 msgid "  -save-temps              Do not delete intermediate files.\n"
 msgstr ""
 
-#: gcc.cc:3774
+#: gcc.cc:3791
 msgid "  -save-temps=<arg>        Do not delete intermediate files.\n"
 msgstr ""
 
-#: gcc.cc:3775
+#: gcc.cc:3792
 msgid ""
 "  -no-canonical-prefixes   Do not canonicalize paths when building relative\n"
 "                           prefixes to other gcc components.\n"
 msgstr ""
 
-#: gcc.cc:3778
+#: gcc.cc:3795
 msgid "  -pipe                    Use pipes rather than intermediate files.\n"
 msgstr ""
 
-#: gcc.cc:3779
+#: gcc.cc:3796
 msgid "  -time                    Time the execution of each subprocess.\n"
 msgstr ""
 
-#: gcc.cc:3780
+#: gcc.cc:3797
 msgid ""
 "  -specs=<file>            Override built-in specs with the contents of "
 "<file>.\n"
 msgstr ""
 
-#: gcc.cc:3781
+#: gcc.cc:3798
 msgid ""
 "  -std=<standard>          Assume that the input sources are for "
 "<standard>.\n"
 msgstr ""
 
-#: gcc.cc:3782
+#: gcc.cc:3799
 msgid ""
 "  --sysroot=<directory>    Use <directory> as the root directory for "
 "headers\n"
 "                           and libraries.\n"
 msgstr ""
 
-#: gcc.cc:3785
+#: gcc.cc:3802
 msgid ""
 "  -B <directory>           Add <directory> to the compiler's search paths.\n"
 msgstr ""
 
-#: gcc.cc:3786
+#: gcc.cc:3803
 msgid ""
 "  -v                       Display the programs invoked by the compiler.\n"
 msgstr ""
 
-#: gcc.cc:3787
+#: gcc.cc:3804
 msgid ""
 "  -###                     Like -v but options quoted and commands not "
 "executed.\n"
 msgstr ""
 
-#: gcc.cc:3788
+#: gcc.cc:3805
 msgid ""
 "  -E                       Preprocess only; do not compile, assemble or "
 "link.\n"
 msgstr ""
 
-#: gcc.cc:3789
+#: gcc.cc:3806
 msgid "  -S                       Compile only; do not assemble or link.\n"
 msgstr ""
 
-#: gcc.cc:3790
+#: gcc.cc:3807
 msgid "  -c                       Compile and assemble, but do not link.\n"
 msgstr ""
 
-#: gcc.cc:3791
+#: gcc.cc:3808
 msgid "  -o <file>                Place the output into <file>.\n"
 msgstr ""
 
-#: gcc.cc:3792
+#: gcc.cc:3809
 msgid ""
 "  -pie                     Create a dynamically linked position independent\n"
 "                           executable.\n"
 msgstr ""
 
-#: gcc.cc:3794
+#: gcc.cc:3811
 msgid "  -shared                  Create a shared library.\n"
 msgstr ""
 
-#: gcc.cc:3795
+#: gcc.cc:3812
 msgid ""
 "  -x <language>            Specify the language of the following input "
 "files.\n"
@@ -19920,7 +20498,7 @@ msgid ""
 "extension.\n"
 msgstr ""
 
-#: gcc.cc:3802
+#: gcc.cc:3819
 #, c-format
 msgid ""
 "\n"
@@ -19929,97 +20507,97 @@ msgid ""
 " other options on to these processes the -W<letter> options must be used.\n"
 msgstr ""
 
-#: gcc.cc:6948
+#: gcc.cc:6972
 #, c-format
 msgid "Processing spec (%s), which is '%s'\n"
 msgstr ""
 
-#: gcc.cc:7709
+#: gcc.cc:7733
 #, c-format
 msgid "Target: %s\n"
 msgstr ""
 
-#: gcc.cc:7710
+#: gcc.cc:7734
 #, c-format
 msgid "Configured with: %s\n"
 msgstr ""
 
-#: gcc.cc:7724
+#: gcc.cc:7748
 #, c-format
 msgid "Thread model: %s\n"
 msgstr ""
 
-#: gcc.cc:7725
+#: gcc.cc:7749
 #, c-format
 msgid "Supported LTO compression algorithms: zlib"
 msgstr ""
 
-#: gcc.cc:7727
+#: gcc.cc:7751
 #, c-format
 msgid " zstd"
 msgstr ""
 
-#: gcc.cc:7729 gcov.cc:1902 gcov.cc:1962 gcov.cc:1974 gcov.cc:3564
+#: gcc.cc:7753 gcov.cc:1902 gcov.cc:1962 gcov.cc:1974 gcov.cc:3564
 #, c-format
 msgid "\n"
 msgstr ""
 
-#: gcc.cc:7740
+#: gcc.cc:7764
 #, c-format
 msgid "gcc version %s %s\n"
 msgstr ""
 
-#: gcc.cc:7743
+#: gcc.cc:7767
 #, c-format
 msgid "gcc driver version %s %sexecuting gcc version %s\n"
 msgstr ""
 
-#: gcc.cc:7819 gcc.cc:8033
+#: gcc.cc:7843 gcc.cc:8057
 #, c-format
 msgid ""
 "The bug is not reproducible, so it is likely a hardware or OS problem.\n"
 msgstr ""
 
-#: gcc.cc:7953
+#: gcc.cc:7977
 #, c-format
 msgid ""
 "Preprocessed source stored into %s file, please attach this to your "
 "bugreport.\n"
 msgstr ""
 
-#: gcc.cc:8797
+#: gcc.cc:8823
 #, c-format
 msgid "install: %s%s\n"
 msgstr ""
 
-#: gcc.cc:8800
+#: gcc.cc:8826
 #, c-format
 msgid "programs: %s\n"
 msgstr ""
 
-#: gcc.cc:8802
+#: gcc.cc:8828
 #, c-format
 msgid "libraries: %s\n"
 msgstr ""
 
-#: gcc.cc:8919
+#: gcc.cc:8945
 #, c-format
 msgid ""
 "\n"
 "For bug reporting instructions, please see:\n"
 msgstr ""
 
-#: gcc.cc:8935 gcov-tool.cc:594 sarif-replay.cc:56
+#: gcc.cc:8961 gcov-tool.cc:594 sarif-replay.cc:59
 #, c-format
 msgid "%s %s%s\n"
 msgstr ""
 
-#: gcc.cc:8938 gcov-tool.cc:596 gcov.cc:1155 sarif-replay.cc:59
+#: gcc.cc:8964 gcov-tool.cc:596 gcov.cc:1155 sarif-replay.cc:62
 #: fortran/gfortranspec.cc:282
 msgid "(C)"
 msgstr ""
 
-#: gcc.cc:8939 gcov-tool.cc:598 gcov.cc:1157 sarif-replay.cc:60
+#: gcc.cc:8965 gcov-tool.cc:598 gcov.cc:1157 sarif-replay.cc:63
 #: fortran/gfortranspec.cc:283
 #, c-format
 msgid ""
@@ -20028,7 +20606,7 @@ msgid ""
 "\n"
 msgstr ""
 
-#: gcc.cc:9282
+#: gcc.cc:9312
 #, c-format
 msgid ""
 "\n"
@@ -20037,14 +20615,14 @@ msgid ""
 "\n"
 msgstr ""
 
-#: gcc.cc:9283
+#: gcc.cc:9313
 #, c-format
 msgid ""
 "Use \"-Wl,OPTION\" to pass \"OPTION\" to the linker.\n"
 "\n"
 msgstr ""
 
-#: gcc.cc:10689
+#: gcc.cc:10827
 #, c-format
 msgid ""
 "Assembler options\n"
@@ -20052,7 +20630,7 @@ msgid ""
 "\n"
 msgstr ""
 
-#: gcc.cc:10690
+#: gcc.cc:10828
 #, c-format
 msgid ""
 "Use \"-Wa,OPTION\" to pass \"OPTION\" to the assembler.\n"
@@ -20212,7 +20790,7 @@ msgstr ""
 
 #: gcov-tool.cc:595
 #, c-format
-msgid "Copyright %s 2025 Free Software Foundation, Inc.\n"
+msgid "Copyright %s 2026 Free Software Foundation, Inc.\n"
 msgstr ""
 
 #: gcov.cc:1096
@@ -20698,7 +21276,7 @@ msgstr ""
 
 #: gcov.cc:3731
 #, c-format
-msgid "paths covered %u of %zu\n"
+msgid "paths covered %u of "
 msgstr ""
 
 #: gcov.cc:3806
@@ -20706,11 +21284,11 @@ msgstr ""
 msgid "Cannot open source file %s\n"
 msgstr ""
 
-#: gcse.cc:2791
+#: gcse.cc:2790
 msgid "PRE disabled"
 msgstr ""
 
-#: gcse.cc:3719
+#: gcse.cc:3718
 msgid "GCSE disabled"
 msgstr ""
 
@@ -20754,7 +21332,7 @@ msgstr ""
 msgid "End of #embed search list.\n"
 msgstr ""
 
-#: input.cc:35
+#: input.cc:36
 msgid "<built-in>"
 msgstr ""
 
@@ -20768,203 +21346,280 @@ msgstr ""
 msgid "'"
 msgstr ""
 
-#: langhooks.cc:388
+#: langhooks.cc:389
 msgid "At top level:"
 msgstr ""
 
-#: langhooks.cc:404
-#, c-format
+#: langhooks.cc:405
 msgid "In member function %qs"
 msgstr ""
 
-#: langhooks.cc:408 libgdiagnostics.cc:1057
-#, c-format
+#. Kinds within executable code.
+#: langhooks.cc:409 libgdiagnostics.cc:1528
 msgid "In function %qs"
 msgstr ""
 
-#: langhooks.cc:453
+#: langhooks.cc:454
 msgid "    inlined from %qs at %r%s:%d:%d%R"
 msgstr ""
 
-#: langhooks.cc:458
+#: langhooks.cc:459
 msgid "    inlined from %qs at %r%s:%d%R"
 msgstr ""
 
-#: langhooks.cc:464
-#, c-format
+#: langhooks.cc:465
 msgid "    inlined from %qs"
 msgstr ""
 
-#: libsarifreplay.cc:599
+#: libgdiagnostics.cc:1529
+msgid "In member %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1530
+msgid "In module %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1531
+msgid "In namespace %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1532
+msgid "In type %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1534
+msgid "In return type %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1535
+msgid "In parameter %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1536
+msgid "In variable %qs"
+msgstr ""
+
+#. Kinds within XML or HTML documents.
+#: libgdiagnostics.cc:1539
+msgid "In element %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1540
+msgid "In attribute %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1541
+msgid "In text %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1542
+msgid "In comment %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1544
+msgid "In processing instruction %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1545
+msgid "In DTD %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1547
+msgid "In declaration %qs"
+msgstr ""
+
+#. Kinds within JSON documents.
+#: libgdiagnostics.cc:1550
+msgid "In JSON object %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1551
+msgid "In JSON array %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1553
+msgid "In JSON property %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1554
+msgid "In JSON value %qs"
+msgstr ""
+
+#: libgdiagnostics.cc:1701
+#, c-format
+msgid "%e"
+msgstr ""
+
+#: libsarifreplay.cc:760
 msgid "JSON object"
 msgstr ""
 
-#: libsarifreplay.cc:602
+#: libsarifreplay.cc:763
 msgid "JSON array"
 msgstr ""
 
-#: libsarifreplay.cc:606
+#: libsarifreplay.cc:767
 msgid "JSON number"
 msgstr ""
 
-#: libsarifreplay.cc:609
+#: libsarifreplay.cc:770
 msgid "JSON string"
 msgstr ""
 
-#: libsarifreplay.cc:614
+#: libsarifreplay.cc:775
 msgid "JSON literal"
 msgstr ""
 
-#: lra-assigns.cc:1863 reload1.cc:2081
+#: lra-assigns.cc:1885 reload1.cc:2081
 msgid "this is the insn:"
 msgstr ""
 
-#: lra-constraints.cc:3348
-msgid "unable to generate reloads for impossible constraints:"
+#: lra-constraints.cc:4182
+msgid "unable to reload address in "
 msgstr ""
 
-#: lra-constraints.cc:4355 reload.cc:3852
+#: lra-constraints.cc:4478 reload.cc:3852
 msgid "unable to generate reloads for:"
 msgstr ""
 
 #. What to print when a switch has no documentation.
-#: opts.cc:339
+#: opts.cc:341
 msgid "This option lacks documentation."
 msgstr ""
 
-#: opts.cc:340
+#: opts.cc:342
 msgid "Uses of this option are diagnosed."
 msgstr ""
 
-#: opts.cc:1723
+#: opts.cc:1765
 #, c-format
 msgid "Same as %s%s (or, in negated form, %s%s)."
 msgstr ""
 
-#: opts.cc:1728
+#: opts.cc:1770
 #, c-format
 msgid "Same as %s%s."
 msgstr ""
 
-#: opts.cc:1733
+#: opts.cc:1775
 #, c-format
 msgid "Same as %s."
 msgstr ""
 
-#: opts.cc:1741
+#: opts.cc:1783
 #, c-format
 msgid "%s  Same as %s."
 msgstr ""
 
-#: opts.cc:1804
+#: opts.cc:1846
 msgid "[available in "
 msgstr ""
 
-#: opts.cc:1836
+#: opts.cc:1878
 msgid "[default]"
 msgstr ""
 
-#: opts.cc:1845
+#: opts.cc:1887
 #, c-format
 msgid "%llu bytes"
 msgstr ""
 
-#: opts.cc:1882
+#: opts.cc:1924
 msgid "[enabled]"
 msgstr ""
 
-#: opts.cc:1884
+#: opts.cc:1926
 msgid "[disabled]"
 msgstr ""
 
-#: opts.cc:1920
+#: opts.cc:1962
 #, c-format
 msgid " No options with the desired characteristics were found\n"
 msgstr ""
 
-#: opts.cc:1929
+#: opts.cc:1971
 #, c-format
 msgid ""
 " None found.  Use --help=%s to show *all* the options supported by the %s "
 "front-end.\n"
 msgstr ""
 
-#: opts.cc:1935
+#: opts.cc:1977
 #, c-format
 msgid ""
 " All options with the desired characteristics have already been displayed\n"
 msgstr ""
 
-#: opts.cc:1980
+#: opts.cc:2022
 #, c-format
 msgid ""
 "  Known valid arguments for %s option:\n"
 "   "
 msgstr ""
 
-#: opts.cc:2030
+#: opts.cc:2072
 msgid "The following options are target specific"
 msgstr ""
 
-#: opts.cc:2033
+#: opts.cc:2075
 msgid "The following options control compiler warning messages"
 msgstr ""
 
-#: opts.cc:2036
+#: opts.cc:2078
 msgid "The following options control optimizations"
 msgstr ""
 
-#: opts.cc:2039 opts.cc:2079
+#: opts.cc:2081 opts.cc:2121
 msgid "The following options are language-independent"
 msgstr ""
 
-#: opts.cc:2042
+#: opts.cc:2084
 msgid "The following options control parameters"
 msgstr ""
 
-#: opts.cc:2048
+#: opts.cc:2090
 msgid "The following options are specific to just the language "
 msgstr ""
 
-#: opts.cc:2050
+#: opts.cc:2092
 msgid "The following options are supported by the language "
 msgstr ""
 
-#: opts.cc:2061
+#: opts.cc:2103
 msgid "The following options are not documented"
 msgstr ""
 
-#: opts.cc:2063
+#: opts.cc:2105
 msgid "The following options take separate arguments"
 msgstr ""
 
-#: opts.cc:2065
+#: opts.cc:2107
 msgid "The following options take joined arguments"
 msgstr ""
 
-#: opts.cc:2077
+#: opts.cc:2119
 msgid "The following options are language-related"
 msgstr ""
 
-#: passes.cc:1845
+#: passes.cc:1844
 #, c-format
 msgid "during %s pass: %s\n"
 msgstr ""
 
-#: passes.cc:1850
+#: passes.cc:1849
 #, c-format
 msgid "dump file: %s\n"
 msgstr ""
 
-#: plugin.cc:966
+#: plugin.cc:964
 msgid "Event"
 msgstr ""
 
-#: plugin.cc:966
+#: plugin.cc:964
 msgid "Plugins"
 msgstr ""
 
-#: plugin.cc:998
+#: plugin.cc:996
 #, c-format
 msgid ""
 "*** WARNING *** there are active plugins, do not report this as a bug unless "
@@ -20981,11 +21636,11 @@ msgid "could not find a spill register"
 msgstr ""
 
 #. It's the compiler's fault.
-#: reload1.cc:7884
+#: reload1.cc:7883
 msgid "VOIDmode on an output"
 msgstr ""
 
-#: reload1.cc:8640
+#: reload1.cc:8639
 msgid "failure trying to reload:"
 msgstr ""
 
@@ -20997,54 +21652,54 @@ msgstr ""
 msgid "insn does not satisfy its constraints:"
 msgstr ""
 
-#: targhooks.cc:2470
+#: targhooks.cc:2480
 #, c-format
 msgid "created and used with differing settings of '%s'"
 msgstr ""
 
-#: targhooks.cc:2485
+#: targhooks.cc:2495
 msgid "created and used with different settings of %<-fpic%>"
 msgstr ""
 
-#: targhooks.cc:2487
+#: targhooks.cc:2497
 msgid "created and used with different settings of %<-fpie%>"
 msgstr ""
 
-#: toplev.cc:318
+#: toplev.cc:321
 #, c-format
 msgid "unrecoverable error"
 msgstr ""
 
-#: toplev.cc:611
+#: toplev.cc:614
 #, c-format
 msgid ""
 "%s%s%s %sversion %s (%s)\n"
 "%s\tcompiled by GNU C version %s, "
 msgstr ""
 
-#: toplev.cc:613
+#: toplev.cc:616
 #, c-format
 msgid "%s%s%s %sversion %s (%s) compiled by CC, "
 msgstr ""
 
-#: toplev.cc:617
+#: toplev.cc:620
 #, c-format
 msgid "GMP version %s, MPFR version %s, MPC version %s, isl version %s\n"
 msgstr ""
 
-#: toplev.cc:619
+#: toplev.cc:622
 #, c-format
 msgid "%s%swarning: %s header version %s differs from library version %s.\n"
 msgstr ""
 
-#: toplev.cc:621
+#: toplev.cc:624
 #, c-format
 msgid ""
 "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
 msgstr ""
 
-#: tree-diagnostic.cc:100 tree-logical-location.cc:92 c/c-decl.cc:6607
-#: c/c-typeck.cc:9013 cp/error.cc:1301 c-family/c-pretty-print.cc:447
+#: tree-diagnostic.cc:103 tree-logical-location.cc:129 c/c-decl.cc:6614
+#: c/c-typeck.cc:9509 cp/error.cc:1379 c-family/c-pretty-print.cc:441
 #, gcc-internal-format
 msgid "<anonymous>"
 msgstr ""
@@ -21061,7 +21716,7 @@ msgstr ""
 msgid "caller uses sjlj exceptions"
 msgstr ""
 
-#: tree-tailcall.cc:197 tree-tailcall.cc:723
+#: tree-tailcall.cc:197 tree-tailcall.cc:905
 msgid "caller uses setjmp"
 msgstr ""
 
@@ -21069,674 +21724,728 @@ msgstr ""
 msgid "caller uses __builtin_eh_return"
 msgstr ""
 
-#: tree-tailcall.cc:633
+#: tree-tailcall.cc:798
 msgid "memory reference or volatile after call"
 msgstr ""
 
-#: tree-tailcall.cc:690
+#: tree-tailcall.cc:872
 msgid "address of caller arguments taken"
 msgstr ""
 
-#: tree-tailcall.cc:717
+#: tree-tailcall.cc:899
 msgid "return value in memory"
 msgstr ""
 
-#: tree-tailcall.cc:734
+#: tree-tailcall.cc:916
 msgid "code between call and return"
 msgstr ""
 
-#: tree-tailcall.cc:747
+#: tree-tailcall.cc:929
 msgid "call may throw exception that does not propagate"
 msgstr ""
 
-#: tree-tailcall.cc:760 tree-tailcall.cc:1166
+#: tree-tailcall.cc:942 tree-tailcall.cc:1516
 msgid "call may throw exception caught locally or perform cleanups"
 msgstr ""
 
-#: tree-tailcall.cc:795
+#: tree-tailcall.cc:977
 msgid "return value used after call"
 msgstr ""
 
-#: tree-tailcall.cc:893 tree-tailcall.cc:921
+#: tree-tailcall.cc:1074 tree-tailcall.cc:1102
 msgid "call invocation refers to locals"
 msgstr ""
 
-#: tree-tailcall.cc:1001
+#: tree-tailcall.cc:1334
 msgid "unhandled code after call"
 msgstr ""
 
-#: tree-tailcall.cc:1011
+#: tree-tailcall.cc:1344
 msgid "return value changed after call"
 msgstr ""
 
-#: tree-tailcall.cc:1060
+#: tree-tailcall.cc:1393
 msgid "internal call"
 msgstr ""
 
-#: tree-tailcall.cc:1068 tree-tailcall.cc:1139
+#: tree-tailcall.cc:1401 tree-tailcall.cc:1489
 msgid "call and return value are different"
 msgstr ""
 
-#: tree-tailcall.cc:1149
+#: tree-tailcall.cc:1499
 msgid "operations after non tail recursive call"
 msgstr ""
 
-#: tree-tailcall.cc:1157
+#: tree-tailcall.cc:1507
 msgid "tail recursion with pointers can only use additions"
 msgstr ""
 
-#: tree-tailcall.cc:1170
+#: tree-tailcall.cc:1520
 msgid "exception cleanups omit __tsan_func_exit call"
 msgstr ""
 
-#: tree-tailcall.cc:1672
+#: tree-tailcall.cc:2023
 msgid "tail recursion with accumulation mixed with musttail non-recursive call"
 msgstr ""
 
-#: c-family/c-format.cc:434
+#: c-family/c-format.cc:436
 msgid "format"
 msgstr ""
 
-#: c-family/c-format.cc:435
+#: c-family/c-format.cc:437
 msgid "field width specifier"
 msgstr ""
 
-#: c-family/c-format.cc:436
+#: c-family/c-format.cc:438
 msgid "field precision specifier"
 msgstr ""
 
-#: c-family/c-format.cc:573 c-family/c-format.cc:597
+#: c-family/c-format.cc:575 c-family/c-format.cc:599
 #: config/mingw/msformat-c.cc:45
 msgid "' ' flag"
 msgstr ""
 
-#: c-family/c-format.cc:573 c-family/c-format.cc:597
+#: c-family/c-format.cc:575 c-family/c-format.cc:599
 #: config/mingw/msformat-c.cc:45
 msgid "the ' ' printf flag"
 msgstr ""
 
-#: c-family/c-format.cc:574 c-family/c-format.cc:598 c-family/c-format.cc:629
-#: c-family/c-format.cc:695 config/mingw/msformat-c.cc:46
+#: c-family/c-format.cc:576 c-family/c-format.cc:600 c-family/c-format.cc:631
+#: c-family/c-format.cc:697 config/mingw/msformat-c.cc:46
 msgid "'+' flag"
 msgstr ""
 
-#: c-family/c-format.cc:574 c-family/c-format.cc:598 c-family/c-format.cc:629
+#: c-family/c-format.cc:576 c-family/c-format.cc:600 c-family/c-format.cc:631
 #: config/mingw/msformat-c.cc:46
 msgid "the '+' printf flag"
 msgstr ""
 
-#: c-family/c-format.cc:575 c-family/c-format.cc:599 c-family/c-format.cc:630
-#: c-family/c-format.cc:670 config/mingw/msformat-c.cc:47
+#: c-family/c-format.cc:577 c-family/c-format.cc:601 c-family/c-format.cc:632
+#: c-family/c-format.cc:672 config/mingw/msformat-c.cc:47
 #: config/mingw/msformat-c.cc:82
 msgid "'#' flag"
 msgstr ""
 
-#: c-family/c-format.cc:575 c-family/c-format.cc:599 c-family/c-format.cc:630
+#: c-family/c-format.cc:577 c-family/c-format.cc:601 c-family/c-format.cc:632
 #: config/mingw/msformat-c.cc:47
 msgid "the '#' printf flag"
 msgstr ""
 
-#: c-family/c-format.cc:576 c-family/c-format.cc:600 c-family/c-format.cc:668
+#: c-family/c-format.cc:578 c-family/c-format.cc:602 c-family/c-format.cc:670
 #: config/mingw/msformat-c.cc:48
 msgid "'0' flag"
 msgstr ""
 
-#: c-family/c-format.cc:576 c-family/c-format.cc:600
+#: c-family/c-format.cc:578 c-family/c-format.cc:602
 #: config/mingw/msformat-c.cc:48
 msgid "the '0' printf flag"
 msgstr ""
 
-#: c-family/c-format.cc:577 c-family/c-format.cc:601 c-family/c-format.cc:667
-#: c-family/c-format.cc:698 config/mingw/msformat-c.cc:49
+#: c-family/c-format.cc:579 c-family/c-format.cc:603 c-family/c-format.cc:669
+#: c-family/c-format.cc:700 config/mingw/msformat-c.cc:49
 msgid "'-' flag"
 msgstr ""
 
-#: c-family/c-format.cc:577 c-family/c-format.cc:601
+#: c-family/c-format.cc:579 c-family/c-format.cc:603
 #: config/mingw/msformat-c.cc:49
 msgid "the '-' printf flag"
 msgstr ""
 
-#: c-family/c-format.cc:578 c-family/c-format.cc:650
+#: c-family/c-format.cc:580 c-family/c-format.cc:652
 #: config/mingw/msformat-c.cc:50 config/mingw/msformat-c.cc:70
 msgid "''' flag"
 msgstr ""
 
-#: c-family/c-format.cc:578 config/mingw/msformat-c.cc:50
+#: c-family/c-format.cc:580 config/mingw/msformat-c.cc:50
 msgid "the ''' printf flag"
 msgstr ""
 
-#: c-family/c-format.cc:579 c-family/c-format.cc:651
+#: c-family/c-format.cc:581 c-family/c-format.cc:653
 msgid "'I' flag"
 msgstr ""
 
-#: c-family/c-format.cc:579
+#: c-family/c-format.cc:581
 msgid "the 'I' printf flag"
 msgstr ""
 
-#: c-family/c-format.cc:580 c-family/c-format.cc:602 c-family/c-format.cc:648
-#: c-family/c-format.cc:671 c-family/c-format.cc:699 config/sol2-c.cc:43
+#: c-family/c-format.cc:582 c-family/c-format.cc:604 c-family/c-format.cc:650
+#: c-family/c-format.cc:673 c-family/c-format.cc:701 config/sol2-c.cc:43
 #: config/mingw/msformat-c.cc:51 config/mingw/msformat-c.cc:68
 msgid "field width"
 msgstr ""
 
-#: c-family/c-format.cc:580 c-family/c-format.cc:602 config/sol2-c.cc:43
+#: c-family/c-format.cc:582 c-family/c-format.cc:604 config/sol2-c.cc:43
 #: config/mingw/msformat-c.cc:51
 msgid "field width in printf format"
 msgstr ""
 
-#: c-family/c-format.cc:581 c-family/c-format.cc:603 c-family/c-format.cc:632
+#: c-family/c-format.cc:583 c-family/c-format.cc:605 c-family/c-format.cc:634
 #: config/mingw/msformat-c.cc:52
 msgid "precision"
 msgstr ""
 
-#: c-family/c-format.cc:581 c-family/c-format.cc:603 c-family/c-format.cc:632
+#: c-family/c-format.cc:583 c-family/c-format.cc:605 c-family/c-format.cc:634
 #: config/mingw/msformat-c.cc:52
 msgid "precision in printf format"
 msgstr ""
 
-#: c-family/c-format.cc:582 c-family/c-format.cc:604 c-family/c-format.cc:633
-#: c-family/c-format.cc:649 c-family/c-format.cc:702 config/sol2-c.cc:44
+#: c-family/c-format.cc:584 c-family/c-format.cc:606 c-family/c-format.cc:635
+#: c-family/c-format.cc:651 c-family/c-format.cc:704 config/sol2-c.cc:44
 #: config/mingw/msformat-c.cc:53 config/mingw/msformat-c.cc:69
 msgid "length modifier"
 msgstr ""
 
-#: c-family/c-format.cc:582 c-family/c-format.cc:604 c-family/c-format.cc:633
+#: c-family/c-format.cc:584 c-family/c-format.cc:606 c-family/c-format.cc:635
 #: config/sol2-c.cc:44 config/mingw/msformat-c.cc:53
 msgid "length modifier in printf format"
 msgstr ""
 
-#: c-family/c-format.cc:631
+#: c-family/c-format.cc:633
 msgid "'q' flag"
 msgstr ""
 
-#: c-family/c-format.cc:631
+#: c-family/c-format.cc:633
 msgid "the 'q' diagnostic flag"
 msgstr ""
 
-#: c-family/c-format.cc:645 config/mingw/msformat-c.cc:66
+#: c-family/c-format.cc:647 config/mingw/msformat-c.cc:66
 msgid "assignment suppression"
 msgstr ""
 
-#: c-family/c-format.cc:645 config/mingw/msformat-c.cc:66
+#: c-family/c-format.cc:647 config/mingw/msformat-c.cc:66
 msgid "the assignment suppression scanf feature"
 msgstr ""
 
-#: c-family/c-format.cc:646 config/mingw/msformat-c.cc:67
+#: c-family/c-format.cc:648 config/mingw/msformat-c.cc:67
 msgid "'a' flag"
 msgstr ""
 
-#: c-family/c-format.cc:646 config/mingw/msformat-c.cc:67
+#: c-family/c-format.cc:648 config/mingw/msformat-c.cc:67
 msgid "the 'a' scanf flag"
 msgstr ""
 
-#: c-family/c-format.cc:647
+#: c-family/c-format.cc:649
 msgid "'m' flag"
 msgstr ""
 
-#: c-family/c-format.cc:647
+#: c-family/c-format.cc:649
 msgid "the 'm' scanf flag"
 msgstr ""
 
-#: c-family/c-format.cc:648 config/mingw/msformat-c.cc:68
+#: c-family/c-format.cc:650 config/mingw/msformat-c.cc:68
 msgid "field width in scanf format"
 msgstr ""
 
-#: c-family/c-format.cc:649 config/mingw/msformat-c.cc:69
+#: c-family/c-format.cc:651 config/mingw/msformat-c.cc:69
 msgid "length modifier in scanf format"
 msgstr ""
 
-#: c-family/c-format.cc:650 config/mingw/msformat-c.cc:70
+#: c-family/c-format.cc:652 config/mingw/msformat-c.cc:70
 msgid "the ''' scanf flag"
 msgstr ""
 
-#: c-family/c-format.cc:651
+#: c-family/c-format.cc:653
 msgid "the 'I' scanf flag"
 msgstr ""
 
-#: c-family/c-format.cc:666
+#: c-family/c-format.cc:668
 msgid "'_' flag"
 msgstr ""
 
-#: c-family/c-format.cc:666
+#: c-family/c-format.cc:668
 msgid "the '_' strftime flag"
 msgstr ""
 
-#: c-family/c-format.cc:667
+#: c-family/c-format.cc:669
 msgid "the '-' strftime flag"
 msgstr ""
 
-#: c-family/c-format.cc:668
+#: c-family/c-format.cc:670
 msgid "the '0' strftime flag"
 msgstr ""
 
-#: c-family/c-format.cc:669 c-family/c-format.cc:694
+#: c-family/c-format.cc:671 c-family/c-format.cc:696
 msgid "'^' flag"
 msgstr ""
 
-#: c-family/c-format.cc:669
+#: c-family/c-format.cc:671
 msgid "the '^' strftime flag"
 msgstr ""
 
-#: c-family/c-format.cc:670 config/mingw/msformat-c.cc:82
+#: c-family/c-format.cc:672 config/mingw/msformat-c.cc:82
 msgid "the '#' strftime flag"
 msgstr ""
 
-#: c-family/c-format.cc:671
+#: c-family/c-format.cc:673
 msgid "field width in strftime format"
 msgstr ""
 
-#: c-family/c-format.cc:672
+#: c-family/c-format.cc:674
 msgid "'E' modifier"
 msgstr ""
 
-#: c-family/c-format.cc:672
+#: c-family/c-format.cc:674
 msgid "the 'E' strftime modifier"
 msgstr ""
 
-#: c-family/c-format.cc:673
+#: c-family/c-format.cc:675
 msgid "'O' modifier"
 msgstr ""
 
-#: c-family/c-format.cc:673
+#: c-family/c-format.cc:675
 msgid "the 'O' strftime modifier"
 msgstr ""
 
-#: c-family/c-format.cc:674 c-family/c-format.cc:675
+#: c-family/c-format.cc:676 c-family/c-format.cc:677
 msgid "the 'O' modifier"
 msgstr ""
 
-#: c-family/c-format.cc:693
+#: c-family/c-format.cc:695
 msgid "fill character"
 msgstr ""
 
-#: c-family/c-format.cc:693
+#: c-family/c-format.cc:695
 msgid "fill character in strfmon format"
 msgstr ""
 
-#: c-family/c-format.cc:694
+#: c-family/c-format.cc:696
 msgid "the '^' strfmon flag"
 msgstr ""
 
-#: c-family/c-format.cc:695
+#: c-family/c-format.cc:697
 msgid "the '+' strfmon flag"
 msgstr ""
 
-#: c-family/c-format.cc:696
+#: c-family/c-format.cc:698
 msgid "'(' flag"
 msgstr ""
 
-#: c-family/c-format.cc:696
+#: c-family/c-format.cc:698
 msgid "the '(' strfmon flag"
 msgstr ""
 
-#: c-family/c-format.cc:697
+#: c-family/c-format.cc:699
 msgid "'!' flag"
 msgstr ""
 
-#: c-family/c-format.cc:697
+#: c-family/c-format.cc:699
 msgid "the '!' strfmon flag"
 msgstr ""
 
-#: c-family/c-format.cc:698
+#: c-family/c-format.cc:700
 msgid "the '-' strfmon flag"
 msgstr ""
 
-#: c-family/c-format.cc:699
+#: c-family/c-format.cc:701
 msgid "field width in strfmon format"
 msgstr ""
 
-#: c-family/c-format.cc:700
+#: c-family/c-format.cc:702
 msgid "left precision"
 msgstr ""
 
-#: c-family/c-format.cc:700
+#: c-family/c-format.cc:702
 msgid "left precision in strfmon format"
 msgstr ""
 
-#: c-family/c-format.cc:701
+#: c-family/c-format.cc:703
 msgid "right precision"
 msgstr ""
 
-#: c-family/c-format.cc:701
+#: c-family/c-format.cc:703
 msgid "right precision in strfmon format"
 msgstr ""
 
-#: c-family/c-format.cc:702
+#: c-family/c-format.cc:704
 msgid "length modifier in strfmon format"
 msgstr ""
 
 #. Handle deferred options from command-line.
-#: c-family/c-opts.cc:1656 fortran/cpp.cc:630
+#: c-family/c-opts.cc:1699 fortran/cpp.cc:630
 msgid "<command-line>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12298 config/loongarch/loongarch.cc:6280
+#: config/aarch64/aarch64.cc:13004 config/loongarch/loongarch.cc:6728
 #, c-format
 msgid "unsupported operand for code '%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12307 config/aarch64/aarch64.cc:12320
-#: config/aarch64/aarch64.cc:12332 config/aarch64/aarch64.cc:12343
-#: config/aarch64/aarch64.cc:12359 config/aarch64/aarch64.cc:12373
-#: config/aarch64/aarch64.cc:12393 config/aarch64/aarch64.cc:12475
-#: config/aarch64/aarch64.cc:12486 config/aarch64/aarch64.cc:12500
-#: config/aarch64/aarch64.cc:12726 config/aarch64/aarch64.cc:12739
-#: config/aarch64/aarch64.cc:12756 config/pru/pru.cc:1824
-#: config/pru/pru.cc:1835 config/pru/pru.cc:1917 config/riscv/riscv.cc:7037
-#: config/riscv/riscv.cc:7053 config/riscv/riscv.cc:7069
-#: config/riscv/riscv.cc:7085 config/riscv/riscv.cc:7118
-#: config/riscv/riscv.cc:7127 config/riscv/riscv.cc:7136
-#: config/riscv/riscv.cc:7146
+#: config/aarch64/aarch64.cc:13013 config/aarch64/aarch64.cc:13026
+#: config/aarch64/aarch64.cc:13038 config/aarch64/aarch64.cc:13049
+#: config/aarch64/aarch64.cc:13065 config/aarch64/aarch64.cc:13079
+#: config/aarch64/aarch64.cc:13099 config/aarch64/aarch64.cc:13181
+#: config/aarch64/aarch64.cc:13192 config/aarch64/aarch64.cc:13206
+#: config/aarch64/aarch64.cc:13432 config/aarch64/aarch64.cc:13445
+#: config/aarch64/aarch64.cc:13462 config/pru/pru.cc:1872
+#: config/pru/pru.cc:1883 config/pru/pru.cc:1965 config/riscv/riscv.cc:8092
+#: config/riscv/riscv.cc:8108 config/riscv/riscv.cc:8124
+#: config/riscv/riscv.cc:8140 config/riscv/riscv.cc:8173
+#: config/riscv/riscv.cc:8182 config/riscv/riscv.cc:8191
+#: config/riscv/riscv.cc:8201
 #, c-format
 msgid "invalid operand for '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12411 config/aarch64/aarch64.cc:12422
-#: config/aarch64/aarch64.cc:12586 config/aarch64/aarch64.cc:12597
-#: config/riscv/riscv.cc:6933 config/riscv/riscv.cc:6941
-#: config/riscv/riscv.cc:6948 config/riscv/riscv.cc:6952
-#: config/riscv/riscv.cc:6994 config/riscv/riscv.cc:7012
+#: config/aarch64/aarch64.cc:13117 config/aarch64/aarch64.cc:13128
+#: config/aarch64/aarch64.cc:13292 config/aarch64/aarch64.cc:13303
+#: config/riscv/riscv.cc:7988 config/riscv/riscv.cc:7996
+#: config/riscv/riscv.cc:8003 config/riscv/riscv.cc:8007
+#: config/riscv/riscv.cc:8049 config/riscv/riscv.cc:8067
 #, c-format
 msgid "invalid vector constant"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12436
+#: config/aarch64/aarch64.cc:13142
 #, c-format
 msgid "incompatible floating point / vector register operand for '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12448
+#: config/aarch64/aarch64.cc:13154
 #, c-format
 msgid "incompatible operand for '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12468
+#: config/aarch64/aarch64.cc:13174
 #, c-format
 msgid "incompatible register operand for '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12533 config/arm/arm.cc:24916
+#: config/aarch64/aarch64.cc:13239 config/arm/arm.cc:24779
 #, c-format
 msgid "missing operand"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12623
+#: config/aarch64/aarch64.cc:13329
 #, c-format
 msgid "invalid constant"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12626
+#: config/aarch64/aarch64.cc:13332
 #, c-format
 msgid "invalid operand"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12764 config/aarch64/aarch64.cc:12769
+#: config/aarch64/aarch64.cc:13470 config/aarch64/aarch64.cc:13475
 #, c-format
 msgid "invalid operand prefix '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12789
+#: config/aarch64/aarch64.cc:13495
 #, c-format
 msgid "invalid address mode"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:22760
+#: config/aarch64/aarch64.cc:23792
 msgid "invalid conversion from type %<mfloat8_t%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:22762
+#: config/aarch64/aarch64.cc:23794
 msgid "invalid conversion to type %<mfloat8_t%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:29725 config/aarch64/aarch64.cc:29748
+#: config/aarch64/aarch64.cc:31104
+msgid "preincrement operation not permitted on svbool_t"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:31106
+msgid "predecrement operation not permitted on svbool_t"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:31108
+msgid "postincrement operation not permitted on svbool_t"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:31110
+msgid "postdecrement operation not permitted on svbool_t"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:31112
+msgid "negation operation not permitted on svbool_t"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:31114
+msgid "plus operation not permitted on svbool_t"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:31116
+msgid "minus operation not permitted on svbool_t"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:31118
+msgid "multiply operation not permitted on svbool_t"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:31120
+msgid "divide operation not permitted on svbool_t"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:31123
+msgid "shift operation not permitted on svbool_t"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:31128
+msgid "only == and != operations permitted on svbool_t"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:31130
+msgid "subscript operation not supported on svbool_t"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:31151 config/aarch64/aarch64.cc:31184
 msgid "operation not permitted on type %<mfloat8_t%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:29743
+#: config/aarch64/aarch64.cc:31172
 msgid "cannot combine GNU and SVE vectors in a binary operation"
 msgstr ""
 
-#: config/alpha/alpha.cc:5780 config/i386/i386.cc:14076
-#: config/rs6000/rs6000.cc:14674 config/sparc/sparc.cc:9400
+#: config/alpha/alpha.cc:5776 config/i386/i386.cc:14543
+#: config/rs6000/rs6000.cc:14685 config/sparc/sparc.cc:9386
 #, c-format
 msgid "'%%&' used without any local dynamic TLS references"
 msgstr ""
 
-#: config/alpha/alpha.cc:5838 config/bfin/bfin.cc:1428
+#: config/alpha/alpha.cc:5834 config/bfin/bfin.cc:1428
 #, c-format
 msgid "invalid %%J value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5868 config/ia64/ia64.cc:5592 config/or1k/or1k.cc:1252
+#: config/alpha/alpha.cc:5864 config/ia64/ia64.cc:5637 config/or1k/or1k.cc:1251
 #, c-format
 msgid "invalid %%r value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5878 config/ia64/ia64.cc:5546
-#: config/rs6000/rs6000.cc:14369 config/xtensa/xtensa.cc:3144
+#: config/alpha/alpha.cc:5874 config/ia64/ia64.cc:5591
+#: config/rs6000/rs6000.cc:14380 config/xtensa/xtensa.cc:2995
 #, c-format
 msgid "invalid %%R value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5884 config/rs6000/rs6000.cc:14289
-#: config/xtensa/xtensa.cc:3117
+#: config/alpha/alpha.cc:5880 config/rs6000/rs6000.cc:14300
+#: config/xtensa/xtensa.cc:2968
 #, c-format
 msgid "invalid %%N value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5892 config/rs6000/rs6000.cc:14317
+#: config/alpha/alpha.cc:5888 config/rs6000/rs6000.cc:14328
 #, c-format
 msgid "invalid %%P value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5900
+#: config/alpha/alpha.cc:5896
 #, c-format
 msgid "invalid %%h value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5908 config/xtensa/xtensa.cc:3137
+#: config/alpha/alpha.cc:5904 config/xtensa/xtensa.cc:2988
 #, c-format
 msgid "invalid %%L value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5927
+#: config/alpha/alpha.cc:5923
 #, c-format
 msgid "invalid %%m value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5933
+#: config/alpha/alpha.cc:5929
 #, c-format
 msgid "invalid %%M value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5970
+#: config/alpha/alpha.cc:5966 config/xtensa/xtensa.cc:3002
 #, c-format
 msgid "invalid %%U value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5978 config/rs6000/rs6000.cc:14377
+#: config/alpha/alpha.cc:5974 config/rs6000/rs6000.cc:14388
 #, c-format
 msgid "invalid %%s value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5989
+#: config/alpha/alpha.cc:5985
 #, c-format
 msgid "invalid %%C value"
 msgstr ""
 
-#: config/alpha/alpha.cc:6026 config/rs6000/rs6000.cc:14153
+#: config/alpha/alpha.cc:6022 config/rs6000/rs6000.cc:14164
 #, c-format
 msgid "invalid %%E value"
 msgstr ""
 
-#: config/alpha/alpha.cc:6051 config/alpha/alpha.cc:6101
+#: config/alpha/alpha.cc:6047 config/alpha/alpha.cc:6097
 #, c-format
 msgid "unknown relocation unspec"
 msgstr ""
 
-#: config/alpha/alpha.cc:6060 config/gcn/gcn.cc:7341 config/gcn/gcn.cc:7350
-#: config/gcn/gcn.cc:7408 config/gcn/gcn.cc:7416 config/gcn/gcn.cc:7432
-#: config/gcn/gcn.cc:7450 config/gcn/gcn.cc:7501 config/gcn/gcn.cc:7620
-#: config/gcn/gcn.cc:7733 config/rs6000/rs6000.cc:14679
+#: config/alpha/alpha.cc:6056 config/gcn/gcn.cc:7560 config/gcn/gcn.cc:7569
+#: config/gcn/gcn.cc:7627 config/gcn/gcn.cc:7635 config/gcn/gcn.cc:7651
+#: config/gcn/gcn.cc:7669 config/gcn/gcn.cc:7720 config/gcn/gcn.cc:7839
+#: config/gcn/gcn.cc:7955 config/rs6000/rs6000.cc:14690
 #, c-format
 msgid "invalid %%xn code"
 msgstr ""
 
-#: config/alpha/alpha.cc:6166
+#: config/alpha/alpha.cc:6162
 #, c-format
 msgid "invalid operand address"
 msgstr ""
 
-#: config/arc/arc.cc:4901
+#: config/arc/arc.cc:4913
 #, c-format
 msgid "invalid operand to %%Z code"
 msgstr ""
 
-#: config/arc/arc.cc:4909
+#: config/arc/arc.cc:4921
 #, c-format
 msgid "invalid operand to %%z code"
 msgstr ""
 
-#: config/arc/arc.cc:4917
+#: config/arc/arc.cc:4929
 #, c-format
 msgid "invalid operands to %%c code"
 msgstr ""
 
-#: config/arc/arc.cc:4925
+#: config/arc/arc.cc:4937
 #, c-format
 msgid "invalid operand to %%M code"
 msgstr ""
 
-#: config/arc/arc.cc:4933 config/m32r/m32r.cc:2091
+#: config/arc/arc.cc:4945 config/m32r/m32r.cc:2090
 #, c-format
 msgid "invalid operand to %%p code"
 msgstr ""
 
-#: config/arc/arc.cc:4941
+#: config/arc/arc.cc:4953
 #, c-format
 msgid "invalid operand for %%s code"
 msgstr ""
 
-#: config/arc/arc.cc:4959
+#: config/arc/arc.cc:4971
 #, c-format
 msgid "invalid operand for %%N code"
 msgstr ""
 
-#: config/arc/arc.cc:4972
+#: config/arc/arc.cc:4984
 #, c-format
 msgid "invalid operand for %%N or %%S code"
 msgstr ""
 
-#: config/arc/arc.cc:4994 config/m32r/m32r.cc:2084
+#: config/arc/arc.cc:5006 config/m32r/m32r.cc:2083
 #, c-format
 msgid "invalid operand to %%s code"
 msgstr ""
 
-#: config/arc/arc.cc:5114 config/m32r/m32r.cc:2117
+#: config/arc/arc.cc:5126 config/m32r/m32r.cc:2116
 #, c-format
 msgid "invalid operand to %%R code"
 msgstr ""
 
-#: config/arc/arc.cc:5190 config/m32r/m32r.cc:2140
+#: config/arc/arc.cc:5202 config/m32r/m32r.cc:2139
 #, c-format
 msgid "invalid operand to %%H/%%L code"
 msgstr ""
 
-#: config/arc/arc.cc:5258 config/m32r/m32r.cc:2211
+#: config/arc/arc.cc:5270 config/m32r/m32r.cc:2210
 #, c-format
 msgid "invalid operand to %%U code"
 msgstr ""
 
-#: config/arc/arc.cc:5270
+#: config/arc/arc.cc:5282
 #, c-format
 msgid "invalid operand to %%V code"
 msgstr ""
 
-#: config/arc/arc.cc:5320
+#: config/arc/arc.cc:5332
 #, c-format
 msgid "invalid operand to %%O code"
 msgstr ""
 
 #. Unknown flag.
 #. Undocumented flag.
-#: config/arc/arc.cc:5343 config/epiphany/epiphany.cc:1309
-#: config/m32r/m32r.cc:2238 config/nds32/nds32.cc:3519
-#: config/sparc/sparc.cc:9679
+#: config/arc/arc.cc:5355 config/epiphany/epiphany.cc:1309
+#: config/m32r/m32r.cc:2237 config/nds32/nds32.cc:3519
+#: config/sparc/sparc.cc:9665
 #, c-format
 msgid "invalid operand output code"
 msgstr ""
 
-#: config/arc/arc.cc:6396
+#: config/arc/arc.cc:6408
 #, c-format
 msgid "invalid UNSPEC as operand: %d"
 msgstr ""
 
-#: config/arc/arc.cc:6612
+#: config/arc/arc.cc:6624
 msgid "unrecognized supposed constant"
 msgstr ""
 
-#: config/arm/arm.cc:21145 config/arm/arm.cc:21170 config/arm/arm.cc:21180
-#: config/arm/arm.cc:21189 config/arm/arm.cc:21198
+#: config/arm/arm.cc:21090 config/arm/arm.cc:21115 config/arm/arm.cc:21125
+#: config/arm/arm.cc:21134 config/arm/arm.cc:21143
 #, c-format
 msgid "invalid shift operand"
 msgstr ""
 
-#: config/arm/arm.cc:24170 config/arm/arm.cc:24188
+#: config/arm/arm.cc:24061 config/arm/arm.cc:24079
 #, c-format
 msgid "predicated Thumb instruction"
 msgstr ""
 
-#: config/arm/arm.cc:24176
+#: config/arm/arm.cc:24067
 #, c-format
 msgid "predicated instruction in conditional sequence"
 msgstr ""
 
-#: config/arm/arm.cc:24287 config/arm/arm.cc:24300 config/arm/arm.cc:24325
+#: config/arm/arm.cc:24183 config/arm/arm.cc:24196 config/arm/arm.cc:24221
 #, c-format
 msgid "Unsupported operand for code '%c'"
 msgstr ""
 
-#: config/arm/arm.cc:24402 config/arm/arm.cc:24424 config/arm/arm.cc:24434
-#: config/arm/arm.cc:24444 config/arm/arm.cc:24454 config/arm/arm.cc:24493
-#: config/arm/arm.cc:24511 config/arm/arm.cc:24529 config/arm/arm.cc:24562
-#: config/arm/arm.cc:24577 config/arm/arm.cc:24604 config/arm/arm.cc:24611
-#: config/arm/arm.cc:24629 config/arm/arm.cc:24636 config/arm/arm.cc:24644
-#: config/arm/arm.cc:24665 config/arm/arm.cc:24672 config/arm/arm.cc:24863
-#: config/arm/arm.cc:24870 config/arm/arm.cc:24897 config/arm/arm.cc:24904
-#: config/bfin/bfin.cc:1441 config/bfin/bfin.cc:1448 config/bfin/bfin.cc:1455
-#: config/bfin/bfin.cc:1462 config/bfin/bfin.cc:1471 config/bfin/bfin.cc:1478
-#: config/bfin/bfin.cc:1485 config/bfin/bfin.cc:1492 config/nds32/nds32.cc:3545
+#: config/arm/arm.cc:24298 config/arm/arm.cc:24320 config/arm/arm.cc:24330
+#: config/arm/arm.cc:24340 config/arm/arm.cc:24350 config/arm/arm.cc:24389
+#: config/arm/arm.cc:24407 config/arm/arm.cc:24425 config/arm/arm.cc:24467
+#: config/arm/arm.cc:24474 config/arm/arm.cc:24492 config/arm/arm.cc:24499
+#: config/arm/arm.cc:24507 config/arm/arm.cc:24528 config/arm/arm.cc:24535
+#: config/arm/arm.cc:24726 config/arm/arm.cc:24733 config/arm/arm.cc:24760
+#: config/arm/arm.cc:24767 config/bfin/bfin.cc:1441 config/bfin/bfin.cc:1448
+#: config/bfin/bfin.cc:1455 config/bfin/bfin.cc:1462 config/bfin/bfin.cc:1471
+#: config/bfin/bfin.cc:1478 config/bfin/bfin.cc:1485 config/bfin/bfin.cc:1492
+#: config/nds32/nds32.cc:3545
 #, c-format
 msgid "invalid operand for code '%c'"
 msgstr ""
 
-#: config/arm/arm.cc:24506
+#: config/arm/arm.cc:24402
 #, c-format
 msgid "instruction never executed"
 msgstr ""
 
 #. Former FPA support, effectively unused after GCC-4.7, but not
 #. removed until gcc-15.
-#: config/arm/arm.cc:24544
+#: config/arm/arm.cc:24440
 #, c-format
 msgid "obsolete FPA format code '%c'"
 msgstr ""
 
 #. Former Maverick support, removed after GCC-4.7.
-#: config/arm/arm.cc:24553
+#: config/arm/arm.cc:24449
 #, c-format
 msgid "obsolete Maverick format code '%c'"
 msgstr ""
 
-#: config/arm/arm.cc:34591
+#. Former iWMMXT support, removed after GCC-15.
+#: config/arm/arm.cc:24455
+#, c-format
+msgid "obsolete iWMMXT format code '%c'"
+msgstr ""
+
+#: config/arm/arm.cc:34277
 msgid "invalid conversion from type %<bfloat16_t%>"
 msgstr ""
 
-#: config/arm/arm.cc:34593
+#: config/arm/arm.cc:34279
 msgid "invalid conversion to type %<bfloat16_t%>"
 msgstr ""
 
-#: config/arm/arm.cc:34608 config/arm/arm.cc:34624
+#: config/arm/arm.cc:34294 config/arm/arm.cc:34310
 msgid "operation not permitted on type %<bfloat16_t%>"
 msgstr ""
 
@@ -21749,97 +22458,97 @@ msgstr ""
 msgid "incomplete application of insn"
 msgstr ""
 
-#: config/avr/avr.cc:2525
+#: config/avr/avr.cc:2504
 #, c-format
 msgid "address operand requires constraint for X, Y, or Z register"
 msgstr ""
 
-#: config/avr/avr.cc:2708
+#: config/avr/avr.cc:2687
 msgid "operands to %T/%t must be reg + const_int:"
 msgstr ""
 
-#: config/avr/avr.cc:2763
+#: config/avr/avr.cc:2742
 #, c-format
 msgid ""
 "bad I/O address 0x%s outside of valid range [0x%x, 0x%x] for %%i operand"
 msgstr ""
 
-#: config/avr/avr.cc:2789
+#: config/avr/avr.cc:2768
 #, c-format
 msgid "%s operand cannot be used as %%i I/O address operand"
 msgstr ""
 
-#: config/avr/avr.cc:2812
+#: config/avr/avr.cc:2791
 msgid "bad address, not a constant:"
 msgstr ""
 
-#: config/avr/avr.cc:2831 config/avr/avr.cc:2838
+#: config/avr/avr.cc:2810 config/avr/avr.cc:2817
 msgid "bad address, not (reg+disp):"
 msgstr ""
 
-#: config/avr/avr.cc:2845
+#: config/avr/avr.cc:2824
 msgid "bad address, not post_inc or pre_dec:"
 msgstr ""
 
-#: config/avr/avr.cc:2857
+#: config/avr/avr.cc:2836
 msgid "internal compiler error.  Bad address:"
 msgstr ""
 
-#: config/avr/avr.cc:2886
+#: config/avr/avr.cc:2865
 #, c-format
 msgid "Unsupported code '%c' for fixed-point:"
 msgstr ""
 
-#: config/avr/avr.cc:2905
+#: config/avr/avr.cc:2884
 msgid "internal compiler error.  Unknown mode:"
 msgstr ""
 
-#: config/avr/avr.cc:4278 config/avr/avr.cc:5264 config/avr/avr.cc:5711
+#: config/avr/avr.cc:4298 config/avr/avr.cc:5284 config/avr/avr.cc:5731
 msgid "invalid insn:"
 msgstr ""
 
-#: config/avr/avr.cc:4361 config/avr/avr.cc:4486 config/avr/avr.cc:4544
-#: config/avr/avr.cc:4596 config/avr/avr.cc:4615 config/avr/avr.cc:4807
-#: config/avr/avr.cc:5115 config/avr/avr.cc:5400 config/avr/avr.cc:5604
-#: config/avr/avr.cc:5768 config/avr/avr.cc:5861 config/avr/avr.cc:6059
+#: config/avr/avr.cc:4381 config/avr/avr.cc:4506 config/avr/avr.cc:4564
+#: config/avr/avr.cc:4616 config/avr/avr.cc:4635 config/avr/avr.cc:4827
+#: config/avr/avr.cc:5135 config/avr/avr.cc:5420 config/avr/avr.cc:5624
+#: config/avr/avr.cc:5788 config/avr/avr.cc:5881 config/avr/avr.cc:6079
 msgid "incorrect insn:"
 msgstr ""
 
-#: config/avr/avr.cc:4631 config/avr/avr.cc:4906 config/avr/avr.cc:5186
-#: config/avr/avr.cc:5472 config/avr/avr.cc:5650 config/avr/avr.cc:5917
-#: config/avr/avr.cc:6117
+#: config/avr/avr.cc:4651 config/avr/avr.cc:4926 config/avr/avr.cc:5206
+#: config/avr/avr.cc:5492 config/avr/avr.cc:5670 config/avr/avr.cc:5937
+#: config/avr/avr.cc:6137
 msgid "unknown move insn:"
 msgstr ""
 
-#: config/avr/avr.cc:7001
+#: config/avr/avr.cc:7082
 msgid "bad shift insn:"
 msgstr ""
 
-#: config/avr/avr.cc:7092 config/avr/avr.cc:7629 config/avr/avr.cc:8103
+#: config/avr/avr.cc:7182 config/avr/avr.cc:7708 config/avr/avr.cc:8171
 msgid "internal compiler error.  Incorrect shift:"
 msgstr ""
 
-#: config/avr/avr.cc:10395
+#: config/avr/avr.cc:10463
 msgid "unsupported fixed-point conversion"
 msgstr ""
 
-#: config/avr/avr.cc:11667
+#: config/avr/avr.cc:11747
 msgid "variable"
 msgstr ""
 
-#: config/avr/avr.cc:11672
+#: config/avr/avr.cc:11752
 msgid "function parameter"
 msgstr ""
 
-#: config/avr/avr.cc:11677
+#: config/avr/avr.cc:11757
 msgid "structure field"
 msgstr ""
 
-#: config/avr/avr.cc:11683
+#: config/avr/avr.cc:11763
 msgid "return type of function"
 msgstr ""
 
-#: config/avr/avr.cc:11688
+#: config/avr/avr.cc:11768
 msgid "pointer"
 msgstr ""
 
@@ -21855,7 +22564,7 @@ msgstr ""
 msgid "invalid %%j value"
 msgstr ""
 
-#: config/bfin/bfin.cc:1583 config/c6x/c6x.cc:2279
+#: config/bfin/bfin.cc:1583 config/c6x/c6x.cc:2278
 #, c-format
 msgid "invalid const_double operand"
 msgstr ""
@@ -21871,20 +22580,20 @@ msgstr ""
 
 #. Format punctuators via %s to avoid -Wformat-diag.
 #: config/cris/cris.cc:783 config/ft32/ft32.cc:110 config/moxie/moxie.cc:108
-#: cobol/dts.h:71 final.cc:3194 final.cc:3196 fold-const.cc:347 gcc.cc:6299
-#: gcc.cc:6313 rtl-error.cc:101 toplev.cc:322 cobol/gcobolspec.cc:366
-#: cobol/gcobolspec.cc:440 cobol/gcobolspec.cc:450 cobol/gcobolspec.cc:525
-#: cp/logic.cc:311 cp/logic.cc:313 cp/typeck.cc:7836 d/d-convert.cc:237
-#: go/go-gcc-diagnostics.cc:28 go/go-gcc-diagnostics.cc:37
+#: cobol/dts.h:71 final.cc:3204 final.cc:3206 fold-const.cc:347 gcc.cc:6325
+#: gcc.cc:6339 rtl-error.cc:101 toplev.cc:325 cobol/gcobolspec.cc:361
+#: cobol/gcobolspec.cc:435 cobol/gcobolspec.cc:445 cobol/gcobolspec.cc:529
+#: cobol/genutil.cc:1098 cp/logic.cc:311 cp/logic.cc:313 cp/typeck.cc:8107
+#: d/d-convert.cc:237 go/go-gcc-diagnostics.cc:28 go/go-gcc-diagnostics.cc:37
 #: go/go-gcc-diagnostics.cc:45 go/go-gcc-diagnostics.cc:53
-#: lto/lto-object.cc:180 lto/lto-object.cc:277 lto/lto-object.cc:334
-#: lto/lto-object.cc:358 m2/gm2-gcc/m2linemap.cc:183
-#: m2/gm2-gcc/m2linemap.cc:254 m2/gm2-gcc/m2linemap.cc:363
-#: rust/rust-diagnostics.cc:164 rust/rust-diagnostics.cc:182
-#: rust/rust-diagnostics.cc:243 rust/rust-diagnostics.cc:266
-#: rust/rust-diagnostics.cc:287 rust/rust-diagnostics.cc:306
-#: rust/rust-diagnostics.cc:322 rust/rust-diagnostics.cc:338
-#: rust/rust-diagnostics.cc:357 rust/rust-diagnostics.cc:373
+#: lto/lto-object.cc:178 lto/lto-object.cc:275 lto/lto-object.cc:332
+#: lto/lto-object.cc:356 m2/gm2-gcc/m2linemap.cc:183
+#: m2/gm2-gcc/m2linemap.cc:257 m2/gm2-gcc/m2linemap.cc:366
+#: rust/rust-diagnostics.cc:171 rust/rust-diagnostics.cc:189
+#: rust/rust-diagnostics.cc:250 rust/rust-diagnostics.cc:273
+#: rust/rust-diagnostics.cc:294 rust/rust-diagnostics.cc:313
+#: rust/rust-diagnostics.cc:329 rust/rust-diagnostics.cc:345
+#: rust/rust-diagnostics.cc:364 rust/rust-diagnostics.cc:380
 #, gcc-internal-format, gfc-internal-format
 msgid "%s"
 msgstr ""
@@ -22089,25 +22798,25 @@ msgstr ""
 msgid "bad output_condmove_single operand"
 msgstr ""
 
-#: config/gcn/gcn.cc:7024 config/gcn/gcn.cc:7044 config/gcn/gcn.cc:7048
-#: config/gcn/gcn.cc:7381 config/gcn/gcn.cc:7392 config/gcn/gcn.cc:7395
+#: config/gcn/gcn.cc:7235 config/gcn/gcn.cc:7255 config/gcn/gcn.cc:7259
+#: config/gcn/gcn.cc:7600 config/gcn/gcn.cc:7611 config/gcn/gcn.cc:7614
 #, c-format
 msgid "bad ADDR_SPACE_GLOBAL address"
 msgstr ""
 
-#: config/gcn/gcn.cc:7163 config/gcn/gcn.cc:7186 config/gcn/gcn.cc:7218
-#: config/gcn/gcn.cc:7234 config/gcn/gcn.cc:7249 config/gcn/gcn.cc:7268
-#: config/gcn/gcn.cc:7332 config/gcn/gcn.cc:7526 config/gcn/gcn.cc:7641
+#: config/gcn/gcn.cc:7382 config/gcn/gcn.cc:7405 config/gcn/gcn.cc:7437
+#: config/gcn/gcn.cc:7453 config/gcn/gcn.cc:7468 config/gcn/gcn.cc:7487
+#: config/gcn/gcn.cc:7551 config/gcn/gcn.cc:7745 config/gcn/gcn.cc:7860
 #, c-format
 msgid "invalid operand %%xn code"
 msgstr ""
 
-#: config/gcn/gcn.cc:7629
+#: config/gcn/gcn.cc:7848
 #, c-format
 msgid "operand %%xn code invalid for QImode"
 msgstr ""
 
-#: config/gcn/gcn.cc:7717
+#: config/gcn/gcn.cc:7936
 #, c-format
 msgid "invalid fp constant"
 msgstr ""
@@ -22119,144 +22828,149 @@ msgstr ""
 msgid "Expected register or constant integer."
 msgstr ""
 
-#: config/i386/i386.cc:12885
+#: config/i386/i386.cc:13325
 #, c-format
 msgid "invalid UNSPEC as operand"
 msgstr ""
 
-#: config/i386/i386.cc:13424
+#: config/i386/i386.cc:13868
 #, c-format
 msgid "invalid use of register '%s'"
 msgstr ""
 
-#: config/i386/i386.cc:13429
+#: config/i386/i386.cc:13873
 #, c-format
 msgid "invalid use of asm flag output"
 msgstr ""
 
-#: config/i386/i386.cc:13663
+#: config/i386/i386.cc:14108
 #, c-format
 msgid "invalid operand size for operand code 'O'"
 msgstr ""
 
-#: config/i386/i386.cc:13698
+#: config/i386/i386.cc:14143
 #, c-format
 msgid "invalid operand size for operand code 'z'"
 msgstr ""
 
-#: config/i386/i386.cc:13773
+#: config/i386/i386.cc:14218
 #, c-format
 msgid "invalid operand type used with operand code '%c'"
 msgstr ""
 
-#: config/i386/i386.cc:13778
+#: config/i386/i386.cc:14223
 #, c-format
 msgid "invalid operand size for operand code '%c'"
 msgstr ""
 
-#: config/i386/i386.cc:13856
+#: config/i386/i386.cc:14301
 #, c-format
 msgid "operand is not a condition code, invalid operand code 'Y'"
 msgstr ""
 
-#: config/i386/i386.cc:13935
+#: config/i386/i386.cc:14380
 #, c-format
 msgid "operand is not a condition code, invalid operand code 'D'"
 msgstr ""
 
-#: config/i386/i386.cc:13953
+#: config/i386/i386.cc:14398
 #, c-format
 msgid "operand is not a condition code, invalid operand code '%c'"
 msgstr ""
 
-#: config/i386/i386.cc:13974
+#: config/i386/i386.cc:14419
 #, c-format
 msgid ""
 "operand is not an offsettable memory reference, invalid operand code 'H'"
 msgstr ""
 
-#: config/i386/i386.cc:13989
+#: config/i386/i386.cc:14434
 #, c-format
 msgid "operand is not an integer, invalid operand code 'K'"
 msgstr ""
 
-#: config/i386/i386.cc:14017
+#: config/i386/i386.cc:14462
 #, c-format
 msgid "operand is not a specific integer, invalid operand code 'r'"
 msgstr ""
 
-#: config/i386/i386.cc:14035
+#: config/i386/i386.cc:14480
 #, c-format
 msgid "operand is not an integer, invalid operand code 'R'"
 msgstr ""
 
-#: config/i386/i386.cc:14058
+#: config/i386/i386.cc:14503
 #, c-format
 msgid "operand is not a specific integer, invalid operand code 'R'"
 msgstr ""
 
-#: config/i386/i386.cc:14151
+#: config/i386/i386.cc:14530
+#, c-format
+msgid "operand is not a memory reference, invalid operand code 'v'"
+msgstr ""
+
+#: config/i386/i386.cc:14618
 #, c-format
 msgid "invalid operand code '%c'"
 msgstr ""
 
-#: config/i386/i386.cc:14213 config/i386/i386.cc:14602
+#: config/i386/i386.cc:14680 config/i386/i386.cc:15069
 #, c-format
 msgid "invalid constraints for operand"
 msgstr ""
 
-#: config/i386/i386.cc:14314
+#: config/i386/i386.cc:14781
 #, c-format
 msgid "invalid vector immediate"
 msgstr ""
 
-#: config/i386/i386.cc:17484
+#: config/i386/i386.cc:17959
 msgid "unknown insn mode"
 msgstr ""
 
-#: config/i386/i386.cc:24042
+#: config/i386/i386.cc:24693
 msgid "invalid conversion from type %<__bf16%> without option %<-msse2%>"
 msgstr ""
 
-#: config/i386/i386.cc:24045
+#: config/i386/i386.cc:24696
 msgid "invalid conversion from type %<_Float16%> without option %<-msse2%>"
 msgstr ""
 
-#: config/i386/i386.cc:24048
+#: config/i386/i386.cc:24699
 msgid "invalid conversion to type %<__bf16%> without option %<-msse2%>"
 msgstr ""
 
-#: config/i386/i386.cc:24051
+#: config/i386/i386.cc:24702
 msgid "invalid conversion to type %<_Float16%> without option %<-msse2%>"
 msgstr ""
 
-#: config/i386/i386.cc:24089 config/i386/i386.cc:24114
+#: config/i386/i386.cc:24740 config/i386/i386.cc:24765
 msgid "operation not permitted on type %<__bf16%> without option %<-msse2%>"
 msgstr ""
 
-#: config/i386/i386.cc:24092 config/i386/i386.cc:24118
+#: config/i386/i386.cc:24743 config/i386/i386.cc:24769
 msgid "operation not permitted on type %<_Float16%> without option %<-msse2%>"
 msgstr ""
 
-#: config/ia64/ia64.cc:5474
+#: config/ia64/ia64.cc:5519
 #, c-format
 msgid "invalid %%G mode"
 msgstr ""
 
-#: config/ia64/ia64.cc:5645
+#: config/ia64/ia64.cc:5690
 #, c-format
 msgid "ia64_print_operand: unknown code"
 msgstr ""
 
-#: config/ia64/ia64.cc:11270
+#: config/ia64/ia64.cc:11315
 msgid "invalid conversion from %<__fpreg%>"
 msgstr ""
 
-#: config/ia64/ia64.cc:11273
+#: config/ia64/ia64.cc:11318
 msgid "invalid conversion to %<__fpreg%>"
 msgstr ""
 
-#: config/ia64/ia64.cc:11286 config/ia64/ia64.cc:11297
+#: config/ia64/ia64.cc:11331 config/ia64/ia64.cc:11342
 msgid "invalid operation on %<__fpreg%>"
 msgstr ""
 
@@ -22265,7 +22979,7 @@ msgstr ""
 msgid "invalid %%P operand"
 msgstr ""
 
-#: config/iq2000/iq2000.cc:3131 config/rs6000/rs6000.cc:14307
+#: config/iq2000/iq2000.cc:3131 config/rs6000/rs6000.cc:14318
 #, c-format
 msgid "invalid %%p value"
 msgstr ""
@@ -22292,99 +23006,99 @@ msgstr ""
 msgid "invalid addressing mode"
 msgstr ""
 
-#: config/loongarch/loongarch.cc:6018 config/loongarch/loongarch.cc:6040
-#: config/loongarch/loongarch.cc:6449 config/mips/mips.cc:9378
-#: config/mips/mips.cc:9405 config/mips/mips.cc:9588
+#: config/loongarch/loongarch.cc:6467 config/loongarch/loongarch.cc:6489
+#: config/loongarch/loongarch.cc:6900 config/mips/mips.cc:9404
+#: config/mips/mips.cc:9431 config/mips/mips.cc:9614
 #, c-format
 msgid "'%%%c' is not a valid operand prefix"
 msgstr ""
 
-#: config/loongarch/loongarch.cc:6272 config/loongarch/loongarch.cc:6292
-#: config/loongarch/loongarch.cc:6342 config/loongarch/loongarch.cc:6349
-#: config/loongarch/loongarch.cc:6359 config/loongarch/loongarch.cc:6406
-#: config/loongarch/loongarch.cc:6409 config/loongarch/loongarch.cc:6421
-#: config/loongarch/loongarch.cc:6428 config/loongarch/loongarch.cc:6438
-#: config/loongarch/loongarch.cc:6441 config/loongarch/loongarch.cc:6462
-#: config/loongarch/loongarch.cc:6469 config/loongarch/loongarch.cc:6496
-#: config/loongarch/loongarch.cc:6507 config/loongarch/loongarch.cc:6522
-#: config/loongarch/loongarch.cc:6531 config/mips/mips.cc:9477
-#: config/mips/mips.cc:9484 config/mips/mips.cc:9491 config/mips/mips.cc:9498
-#: config/mips/mips.cc:9511 config/mips/mips.cc:9518 config/mips/mips.cc:9528
-#: config/mips/mips.cc:9531 config/mips/mips.cc:9543 config/mips/mips.cc:9546
-#: config/mips/mips.cc:9606 config/mips/mips.cc:9613 config/mips/mips.cc:9634
-#: config/mips/mips.cc:9649 config/mips/mips.cc:9668 config/mips/mips.cc:9677
-#: config/riscv/riscv.cc:6735 config/riscv/riscv.cc:7182
-#: config/riscv/riscv.cc:7188 config/riscv/riscv.cc:7204
-#: config/riscv/riscv.cc:7215
+#: config/loongarch/loongarch.cc:6720 config/loongarch/loongarch.cc:6740
+#: config/loongarch/loongarch.cc:6797 config/loongarch/loongarch.cc:6804
+#: config/loongarch/loongarch.cc:6814 config/loongarch/loongarch.cc:6860
+#: config/loongarch/loongarch.cc:6872 config/loongarch/loongarch.cc:6879
+#: config/loongarch/loongarch.cc:6889 config/loongarch/loongarch.cc:6892
+#: config/loongarch/loongarch.cc:6913 config/loongarch/loongarch.cc:6920
+#: config/loongarch/loongarch.cc:6947 config/loongarch/loongarch.cc:6954
+#: config/loongarch/loongarch.cc:6967 config/loongarch/loongarch.cc:6982
+#: config/loongarch/loongarch.cc:6991 config/mips/mips.cc:9503
+#: config/mips/mips.cc:9510 config/mips/mips.cc:9517 config/mips/mips.cc:9524
+#: config/mips/mips.cc:9537 config/mips/mips.cc:9544 config/mips/mips.cc:9554
+#: config/mips/mips.cc:9557 config/mips/mips.cc:9569 config/mips/mips.cc:9572
+#: config/mips/mips.cc:9632 config/mips/mips.cc:9639 config/mips/mips.cc:9660
+#: config/mips/mips.cc:9675 config/mips/mips.cc:9694 config/mips/mips.cc:9703
+#: config/riscv/riscv.cc:7789 config/riscv/riscv.cc:8258
+#: config/riscv/riscv.cc:8264 config/riscv/riscv.cc:8280
+#: config/riscv/riscv.cc:8291
 #, c-format
 msgid "invalid use of '%%%c'"
 msgstr ""
 
-#: config/m32r/m32r.cc:2149
+#: config/m32r/m32r.cc:2148
 msgid "bad insn for 'A'"
 msgstr ""
 
-#: config/m32r/m32r.cc:2196
+#: config/m32r/m32r.cc:2195
 #, c-format
 msgid "invalid operand to %%T/%%B code"
 msgstr ""
 
-#: config/m32r/m32r.cc:2219
+#: config/m32r/m32r.cc:2218
 #, c-format
 msgid "invalid operand to %%N code"
 msgstr ""
 
-#: config/m32r/m32r.cc:2252
+#: config/m32r/m32r.cc:2251
 msgid "pre-increment address is not a register"
 msgstr ""
 
-#: config/m32r/m32r.cc:2259
+#: config/m32r/m32r.cc:2258
 msgid "pre-decrement address is not a register"
 msgstr ""
 
-#: config/m32r/m32r.cc:2266
+#: config/m32r/m32r.cc:2265
 msgid "post-increment address is not a register"
 msgstr ""
 
-#: config/m32r/m32r.cc:2341 config/m32r/m32r.cc:2356
-#: config/rs6000/rs6000.cc:20981
+#: config/m32r/m32r.cc:2340 config/m32r/m32r.cc:2355
+#: config/rs6000/rs6000.cc:20992
 msgid "bad address"
 msgstr ""
 
-#: config/m32r/m32r.cc:2361
+#: config/m32r/m32r.cc:2360
 msgid "lo_sum not of register"
 msgstr ""
 
-#: config/microblaze/microblaze.cc:2299
+#: config/microblaze/microblaze.cc:2330
 #, c-format
 msgid "unknown punctuation '%c'"
 msgstr ""
 
-#: config/microblaze/microblaze.cc:2308
+#: config/microblaze/microblaze.cc:2339
 #, c-format
 msgid "null pointer"
 msgstr ""
 
-#: config/microblaze/microblaze.cc:2343
+#: config/microblaze/microblaze.cc:2374
 #, c-format
 msgid "PRINT_OPERAND, invalid insn for %%C"
 msgstr ""
 
-#: config/microblaze/microblaze.cc:2372
+#: config/microblaze/microblaze.cc:2403
 #, c-format
 msgid "PRINT_OPERAND, invalid insn for %%N"
 msgstr ""
 
-#: config/microblaze/microblaze.cc:2392 config/microblaze/microblaze.cc:2568
+#: config/microblaze/microblaze.cc:2423 config/microblaze/microblaze.cc:2599
 msgid "insn contains an invalid address !"
 msgstr ""
 
-#: config/microblaze/microblaze.cc:2408 config/microblaze/microblaze.cc:2638
-#: config/xtensa/xtensa.cc:3240
+#: config/microblaze/microblaze.cc:2439 config/microblaze/microblaze.cc:2669
+#: config/xtensa/xtensa.cc:3105
 msgid "invalid address"
 msgstr ""
 
-#: config/microblaze/microblaze.cc:2511
+#: config/microblaze/microblaze.cc:2542
 #, c-format
 msgid "letter %c was found & insn was not CONST_INT"
 msgstr ""
@@ -22447,81 +23161,96 @@ msgstr ""
 msgid "invalid zero extract"
 msgstr ""
 
-#: config/or1k/or1k.cc:1157 config/or1k/or1k.cc:1165
+#: config/or1k/or1k.cc:1156 config/or1k/or1k.cc:1164
 #, c-format
 msgid "invalid relocation"
 msgstr ""
 
-#: config/or1k/or1k.cc:1259
+#: config/or1k/or1k.cc:1258
 #, c-format
 msgid "invalid %%H value"
 msgstr ""
 
-#: config/or1k/or1k.cc:1272 config/xtensa/xtensa.cc:3158
+#: config/or1k/or1k.cc:1271 config/xtensa/xtensa.cc:3023
 #, c-format
 msgid "invalid %%d value"
 msgstr ""
 
-#: config/or1k/or1k.cc:1320
+#: config/or1k/or1k.cc:1319
 #, c-format
 msgid "unknown operand letter: '%c'"
 msgstr ""
 
-#: config/pru/pru.cc:1775 config/pru/pru.cc:1786
+#: config/pru/pru.cc:1823 config/pru/pru.cc:1834
 #, c-format
 msgid "I/O register operand for '%%%c'"
 msgstr ""
 
-#: config/pru/pru.cc:1792
+#: config/pru/pru.cc:1840
 #, c-format
 msgid "non 32 bit register operand for '%%%c'"
 msgstr ""
 
-#: config/pru/pru.cc:1887
+#: config/pru/pru.cc:1935
 #, c-format
 msgid "unsupported code '%c' for fixed-point:"
 msgstr ""
 
-#: config/pru/pru.cc:1901
+#: config/pru/pru.cc:1949
 #, c-format
 msgid "double constants not supported"
 msgstr ""
 
-#: config/pru/pru.cc:1984
+#: config/pru/pru.cc:2032
 #, c-format
 msgid "unsupported operand %s for code '%c'"
 msgstr ""
 
-#: config/pru/pru.cc:1994
+#: config/pru/pru.cc:2042
 #, c-format
 msgid "unexpected text address:"
 msgstr ""
 
-#: config/pru/pru.cc:2013
+#: config/pru/pru.cc:2061
 #, c-format
 msgid "unsupported constant address:"
 msgstr ""
 
-#: config/pru/pru.cc:2074
+#: config/pru/pru.cc:2122
 #, c-format
 msgid "unsupported memory expression:"
 msgstr ""
 
-#: config/riscv/riscv.cc:6914
+#: config/riscv/riscv.cc:7969
 #, c-format
 msgid "invalid vector operand"
 msgstr ""
 
-#: config/riscv/riscv.cc:7159
+#: config/riscv/riscv.cc:8214
 #, c-format
 msgid "modifier 'N' require register operand"
 msgstr ""
 
-#: config/riscv/riscv.cc:7172
+#: config/riscv/riscv.cc:8227
 #, c-format
 msgid "invalid register number for 'N' modifier"
 msgstr ""
 
+#: config/riscv/riscv.cc:8236
+#, c-format
+msgid "modifier 'H' require register operand"
+msgstr ""
+
+#: config/riscv/riscv.cc:8241
+#, c-format
+msgid "modifier 'H' is for integer registers only"
+msgstr ""
+
+#: config/riscv/riscv.cc:8246
+#, c-format
+msgid "modifier 'H' cannot be applied to R31"
+msgstr ""
+
 #: config/rl78/rl78.cc:1999 config/rl78/rl78.cc:2085
 #, c-format
 msgid "q/Q modifiers invalid for symbol references"
@@ -22537,272 +23266,267 @@ msgstr ""
 msgid "Try running '%s' in the shell to raise its limit.\n"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3840
+#: config/rs6000/rs6000.cc:3837
 msgid "%<-mvsx%> requires hardware floating-point"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3851
+#: config/rs6000/rs6000.cc:3848
 msgid "%<-mvsx%> needs indexed addressing"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3861
+#: config/rs6000/rs6000.cc:3858
 msgid "%<-mno-altivec%> disables vsx"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3981
+#: config/rs6000/rs6000.cc:3978
 msgid "%<-mquad-memory%> requires 64-bit mode"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3984
+#: config/rs6000/rs6000.cc:3981
 msgid "%<-mquad-memory-atomic%> requires 64-bit mode"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3996
+#: config/rs6000/rs6000.cc:3993
 msgid "%<-mquad-memory%> is not available in little endian mode"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:11379
+#: config/rs6000/rs6000.cc:11390
 msgid "bad move"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:13937
+#: config/rs6000/rs6000.cc:13948
 msgid "Bad 128-bit move"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14117
+#: config/rs6000/rs6000.cc:14128
 #, c-format
 msgid "invalid %%A value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14126 config/xtensa/xtensa.cc:3083
+#: config/rs6000/rs6000.cc:14137 config/xtensa/xtensa.cc:2934
 #, c-format
 msgid "invalid %%D value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14141
+#: config/rs6000/rs6000.cc:14152
 #, c-format
 msgid "invalid %%e value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14162
+#: config/rs6000/rs6000.cc:14173
 #, c-format
 msgid "invalid %%f value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14171
+#: config/rs6000/rs6000.cc:14182
 #, c-format
 msgid "invalid %%F value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14180
+#: config/rs6000/rs6000.cc:14191
 #, c-format
 msgid "invalid %%G value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14215
+#: config/rs6000/rs6000.cc:14226
 #, c-format
 msgid "invalid %%j code"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14225
+#: config/rs6000/rs6000.cc:14236
 #, c-format
 msgid "invalid %%J code"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14235
+#: config/rs6000/rs6000.cc:14246
 #, c-format
 msgid "invalid %%k value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14250 config/xtensa/xtensa.cc:3130
+#: config/rs6000/rs6000.cc:14261 config/xtensa/xtensa.cc:2981
 #, c-format
 msgid "invalid %%K value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14297
+#: config/rs6000/rs6000.cc:14308
 #, c-format
 msgid "invalid %%O value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14344
+#: config/rs6000/rs6000.cc:14355
 #, c-format
 msgid "invalid %%q value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14386
+#: config/rs6000/rs6000.cc:14397
 #, c-format
 msgid "invalid %%t value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14403
+#: config/rs6000/rs6000.cc:14414
 #, c-format
 msgid "invalid %%T value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14415
+#: config/rs6000/rs6000.cc:14426
 #, c-format
 msgid "invalid %%u value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14429 config/xtensa/xtensa.cc:3105
+#: config/rs6000/rs6000.cc:14440 config/xtensa/xtensa.cc:2956
 #, c-format
 msgid "invalid %%v value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14479
+#: config/rs6000/rs6000.cc:14490 config/xtensa/xtensa.cc:3009
 #, c-format
 msgid "invalid %%V value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14495 config/xtensa/xtensa.cc:3151
+#: config/rs6000/rs6000.cc:14506 config/xtensa/xtensa.cc:3016
 #, c-format
 msgid "invalid %%x value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14552
+#: config/rs6000/rs6000.cc:14563
 #, c-format
 msgid "invalid %%z value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14621
+#: config/rs6000/rs6000.cc:14632
 #, c-format
 msgid "invalid %%y value, try using the 'Z' constraint"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14729
+#: config/rs6000/rs6000.cc:14740
 #, c-format
 msgid "%%a requires an address of memory"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:15582
+#: config/rs6000/rs6000.cc:15593
 msgid "Invalid mixing of IEEE 128-bit and IBM 128-bit floating point types"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:24400
+#: config/rs6000/rs6000.cc:24411
 msgid "AltiVec argument passed to unprototyped function"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28023
+#: config/rs6000/rs6000.cc:28012
 msgid "Could not generate addis value for fusion"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28092
+#: config/rs6000/rs6000.cc:28081
 msgid "Unable to generate load/store offset for fusion"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28168
+#: config/rs6000/rs6000.cc:28157
 msgid "Bad GPR fusion"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28770
+#: config/rs6000/rs6000.cc:28805
 msgid "invalid conversion from type %<__vector_quad%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28772
+#: config/rs6000/rs6000.cc:28807
 msgid "invalid conversion to type %<__vector_quad%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28774
+#: config/rs6000/rs6000.cc:28809
 msgid "invalid conversion from type %<__vector_pair%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28776
+#: config/rs6000/rs6000.cc:28811
 msgid "invalid conversion to type %<__vector_pair%>"
 msgstr ""
 
-#: config/s390/s390.cc:8592
+#: config/s390/s390.cc:8894
 #, c-format
 msgid "symbolic memory references are only supported on z10 or later"
 msgstr ""
 
-#: config/s390/s390.cc:8603
+#: config/s390/s390.cc:8905
 #, c-format
 msgid "cannot decompose address"
 msgstr ""
 
-#: config/s390/s390.cc:8686
+#: config/s390/s390.cc:8987
 #, c-format
 msgid "invalid comparison operator for 'E' output modifier"
 msgstr ""
 
-#: config/s390/s390.cc:8709
+#: config/s390/s390.cc:9010
 #, c-format
 msgid "invalid reference for 'J' output modifier"
 msgstr ""
 
-#: config/s390/s390.cc:8727
+#: config/s390/s390.cc:9028
 #, c-format
 msgid "invalid address for 'O' output modifier"
 msgstr ""
 
-#: config/s390/s390.cc:8744 config/s390/s390.cc:8774 config/s390/s390.cc:8803
-#: config/s390/s390.cc:8981 config/s390/s390.cc:9002
+#: config/s390/s390.cc:9045 config/s390/s390.cc:9075 config/s390/s390.cc:9104
+#: config/s390/s390.cc:9280 config/s390/s390.cc:9299
 #, c-format
 msgid "invalid constant for output modifier '%c'"
 msgstr ""
 
-#: config/s390/s390.cc:8822
+#: config/s390/s390.cc:9123
 #, c-format
 msgid "invalid address for 'R' output modifier"
 msgstr ""
 
-#: config/s390/s390.cc:8840
+#: config/s390/s390.cc:9141
 #, c-format
 msgid "memory reference expected for 'S' output modifier"
 msgstr ""
 
-#: config/s390/s390.cc:8850
+#: config/s390/s390.cc:9151
 #, c-format
 msgid "invalid address for 'S' output modifier"
 msgstr ""
 
-#: config/s390/s390.cc:8871
+#: config/s390/s390.cc:9172
 #, c-format
 msgid "register or memory expression expected for 'N' output modifier"
 msgstr ""
 
-#: config/s390/s390.cc:8882
+#: config/s390/s390.cc:9183
 #, c-format
 msgid "register or memory expression expected for 'M' output modifier"
 msgstr ""
 
-#: config/s390/s390.cc:8999
-#, c-format
-msgid "invalid constant - try using an output modifier"
-msgstr ""
-
-#: config/s390/s390.cc:9016
+#: config/s390/s390.cc:9312
 #, c-format
 msgid "invalid constant vector for output modifier '%c'"
 msgstr ""
 
-#: config/s390/s390.cc:9023
+#: config/s390/s390.cc:9319
 #, c-format
 msgid "invalid expression - try using an output modifier"
 msgstr ""
 
-#: config/s390/s390.cc:9026
+#: config/s390/s390.cc:9322
 #, c-format
 msgid "invalid expression for output modifier '%c'"
 msgstr ""
 
-#: config/s390/s390.cc:12879
+#: config/s390/s390.cc:13175
 msgid "vector argument passed to unprototyped function"
 msgstr ""
 
-#: config/s390/s390.cc:17350
+#: config/s390/s390.cc:17671
 msgid "types differ in signedness"
 msgstr ""
 
-#: config/s390/s390.cc:17360
+#: config/s390/s390.cc:17681
 msgid "binary operator does not support two vector bool operands"
 msgstr ""
 
-#: config/s390/s390.cc:17363
+#: config/s390/s390.cc:17684
 msgid "binary operator does not support vector bool operand"
 msgstr ""
 
-#: config/s390/s390.cc:17371
+#: config/s390/s390.cc:17692
 msgid ""
 "binary operator does not support mixing vector bool with floating point "
 "vector operands"
@@ -22830,67 +23554,67 @@ msgstr ""
 msgid "created and used with different endianness"
 msgstr ""
 
-#: config/sparc/sparc.cc:9409 config/sparc/sparc.cc:9415
+#: config/sparc/sparc.cc:9395 config/sparc/sparc.cc:9401
 #, c-format
 msgid "invalid %%Y operand"
 msgstr ""
 
-#: config/sparc/sparc.cc:9502
+#: config/sparc/sparc.cc:9488
 #, c-format
 msgid "invalid %%A operand"
 msgstr ""
 
-#: config/sparc/sparc.cc:9522
+#: config/sparc/sparc.cc:9508
 #, c-format
 msgid "invalid %%B operand"
 msgstr ""
 
-#: config/sparc/sparc.cc:9602
+#: config/sparc/sparc.cc:9588
 #, c-format
 msgid "invalid %%C operand"
 msgstr ""
 
-#: config/sparc/sparc.cc:9634
+#: config/sparc/sparc.cc:9620
 #, c-format
 msgid "invalid %%D operand"
 msgstr ""
 
-#: config/sparc/sparc.cc:9653
+#: config/sparc/sparc.cc:9639
 #, c-format
 msgid "invalid %%f operand"
 msgstr ""
 
-#: config/sparc/sparc.cc:9665
+#: config/sparc/sparc.cc:9651
 #, c-format
 msgid "invalid %%s operand"
 msgstr ""
 
-#: config/sparc/sparc.cc:9710
+#: config/sparc/sparc.cc:9696
 #, c-format
 msgid "floating-point constant not a valid immediate operand"
 msgstr ""
 
-#: config/stormy16/stormy16.cc:1895 config/stormy16/stormy16.cc:1966
+#: config/stormy16/stormy16.cc:1894 config/stormy16/stormy16.cc:1965
 #, c-format
 msgid "'B' operand is not constant"
 msgstr ""
 
-#: config/stormy16/stormy16.cc:1922
+#: config/stormy16/stormy16.cc:1921
 #, c-format
 msgid "'B' operand has multiple bits set"
 msgstr ""
 
-#: config/stormy16/stormy16.cc:1948
+#: config/stormy16/stormy16.cc:1947
 #, c-format
 msgid "'o' operand is not constant"
 msgstr ""
 
-#: config/stormy16/stormy16.cc:1980
+#: config/stormy16/stormy16.cc:1979
 #, c-format
 msgid "'h' operand is not SImode register"
 msgstr ""
 
-#: config/stormy16/stormy16.cc:1988
+#: config/stormy16/stormy16.cc:1987
 #, c-format
 msgid "xstormy16_print_operand: unknown code"
 msgstr ""
@@ -22946,36 +23670,56 @@ msgstr ""
 msgid "Unable to load DLL."
 msgstr ""
 
-#: config/xtensa/xtensa.cc:839 config/xtensa/xtensa.cc:873
+#: config/xtensa/xtensa.cc:848 config/xtensa/xtensa.cc:882
 msgid "bad test"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:3125
+#: config/xtensa/xtensa.cc:2976
 msgid "invalid mask"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:3177 config/xtensa/xtensa.cc:3187
+#: config/xtensa/xtensa.cc:3042 config/xtensa/xtensa.cc:3052
 #, c-format
 msgid "invalid %%t/%%b value"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:3265
+#: config/xtensa/xtensa.cc:3130
 msgid "no register in address"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:3273
+#: config/xtensa/xtensa.cc:3138
 msgid "address offset not a constant"
 msgstr ""
 
-#: c/c-objc-common.cc:232
+#: algol68/a68-imports.cc:203 go/go-backend.cc:166
+#: rust/rust-object-export.cc:147
+msgid "lseek failed while reading export data"
+msgstr ""
+
+#: algol68/a68-imports.cc:210 go/go-backend.cc:173
+#: rust/rust-object-export.cc:154
+msgid "memory allocation failed while reading export data"
+msgstr ""
+
+#: algol68/a68-imports.cc:218 go/go-backend.cc:181
+#: rust/rust-object-export.cc:162
+msgid "read failed while reading export data"
+msgstr ""
+
+#: algol68/a68-imports.cc:224 go/go-backend.cc:187
+#: rust/rust-object-export.cc:168
+msgid "short read while reading export data"
+msgstr ""
+
+#: c/c-objc-common.cc:237
 msgid "{erroneous}"
 msgstr ""
 
-#: c/c-objc-common.cc:277
+#: c/c-objc-common.cc:282
 msgid "aka"
 msgstr ""
 
-#: c/c-objc-common.cc:385 c/c-typeck.cc:7714
+#: c/c-objc-common.cc:395 c/c-typeck.cc:8217
 msgid "({anonymous})"
 msgstr ""
 
@@ -22988,442 +23732,694 @@ msgstr ""
 #. ;
 #. <~~~~~~~~~ declaration ~~~~~~~~~~>
 #. Use c_parser_require to get an error with a fix-it hint.
-#: c/c-parser.cc:3089 c/c-parser.cc:3279 c/c-parser.cc:3293 c/c-parser.cc:7502
-#: c/c-parser.cc:8356 c/c-parser.cc:8934 c/c-parser.cc:9126 c/c-parser.cc:9159
-#: c/c-parser.cc:9457 c/c-parser.cc:14304 c/c-parser.cc:14339
-#: c/c-parser.cc:14370 c/c-parser.cc:14417 c/c-parser.cc:14598
-#: c/c-parser.cc:15431 c/c-parser.cc:15506 c/c-parser.cc:15549
-#: c/c-parser.cc:23037 c/c-parser.cc:23117 c/c-parser.cc:23446
-#: c/c-parser.cc:23472 c/c-parser.cc:23495 c/c-parser.cc:24181
-#: c/c-parser.cc:24224 c/c-parser.cc:25491 c/gimple-parser.cc:454
-#: c/gimple-parser.cc:495 c/gimple-parser.cc:504 c/gimple-parser.cc:723
-#: c/gimple-parser.cc:2437 c/gimple-parser.cc:2474 c/gimple-parser.cc:2553
-#: c/gimple-parser.cc:2580 c/c-parser.cc:4141 c/c-parser.cc:4332
-#: c/c-parser.cc:4367 c/c-parser.cc:14591 c/gimple-parser.cc:2244
-#: c/gimple-parser.cc:2256 cp/parser.cc:16475 cp/parser.cc:34635
-#: cp/parser.cc:35274
+#: c/c-parser.cc:3254 c/c-parser.cc:3463 c/c-parser.cc:3477 c/c-parser.cc:7694
+#: c/c-parser.cc:8548 c/c-parser.cc:9126 c/c-parser.cc:9318 c/c-parser.cc:9351
+#: c/c-parser.cc:9649 c/c-parser.cc:14677 c/c-parser.cc:14712
+#: c/c-parser.cc:14743 c/c-parser.cc:14790 c/c-parser.cc:14971
+#: c/c-parser.cc:15804 c/c-parser.cc:15879 c/c-parser.cc:15922
+#: c/c-parser.cc:24064 c/c-parser.cc:24144 c/c-parser.cc:24473
+#: c/c-parser.cc:24499 c/c-parser.cc:24522 c/c-parser.cc:25208
+#: c/c-parser.cc:25251 c/c-parser.cc:26525 c/gimple-parser.cc:459
+#: c/gimple-parser.cc:500 c/gimple-parser.cc:509 c/gimple-parser.cc:729
+#: c/gimple-parser.cc:2427 c/gimple-parser.cc:2464 c/gimple-parser.cc:2543
+#: c/gimple-parser.cc:2570 c/c-parser.cc:4325 c/c-parser.cc:4516
+#: c/c-parser.cc:4551 c/c-parser.cc:14964 c/gimple-parser.cc:2234
+#: c/gimple-parser.cc:2246 cp/parser.cc:18012 cp/parser.cc:37079
+#: cp/parser.cc:37718
 #, gcc-internal-format
 msgid "expected %<;%>"
 msgstr ""
 
-#: c/c-parser.cc:3251 c/c-parser.cc:9417
+#: c/c-parser.cc:3435 c/c-parser.cc:9609
 #, gcc-internal-format
 msgid "expected %<:%> or %<)%>"
 msgstr ""
 
-#: c/c-parser.cc:3790 c/c-parser.cc:4943 c/c-parser.cc:5135 c/c-parser.cc:5193
-#: c/c-parser.cc:5251 c/c-parser.cc:5635 c/c-parser.cc:5658 c/c-parser.cc:5667
-#: c/c-parser.cc:5718 c/c-parser.cc:5727 c/c-parser.cc:10892
-#: c/c-parser.cc:10978 c/c-parser.cc:11552 c/c-parser.cc:11578
-#: c/c-parser.cc:11612 c/c-parser.cc:11825 c/c-parser.cc:12697
-#: c/c-parser.cc:14705 c/c-parser.cc:17345 c/c-parser.cc:18080
-#: c/c-parser.cc:18139 c/c-parser.cc:18194 c/c-parser.cc:20053
-#: c/c-parser.cc:20173 c/c-parser.cc:22130 c/c-parser.cc:23537
-#: c/c-parser.cc:24189 c/c-parser.cc:28016 c/c-parser.cc:28098
-#: c/gimple-parser.cc:238 c/gimple-parser.cc:241 c/gimple-parser.cc:589
-#: c/gimple-parser.cc:623 c/gimple-parser.cc:628 c/gimple-parser.cc:807
-#: c/gimple-parser.cc:904 c/gimple-parser.cc:1175 c/gimple-parser.cc:1201
-#: c/gimple-parser.cc:1204 c/gimple-parser.cc:1335 c/gimple-parser.cc:1462
-#: c/gimple-parser.cc:1592 c/gimple-parser.cc:1608 c/gimple-parser.cc:1664
-#: c/gimple-parser.cc:1691 c/gimple-parser.cc:1721 c/gimple-parser.cc:1747
-#: c/gimple-parser.cc:1954 c/gimple-parser.cc:2166 c/gimple-parser.cc:2186
-#: c/gimple-parser.cc:2347 c/gimple-parser.cc:2510 c/c-parser.cc:3242
-#: c/c-parser.cc:9409 c/c-parser.cc:20746 cp/parser.cc:35322 cp/parser.cc:43032
+#: c/c-parser.cc:3974 c/c-parser.cc:5127 c/c-parser.cc:5319 c/c-parser.cc:5377
+#: c/c-parser.cc:5435 c/c-parser.cc:5824 c/c-parser.cc:5847 c/c-parser.cc:5856
+#: c/c-parser.cc:5907 c/c-parser.cc:5916 c/c-parser.cc:11205
+#: c/c-parser.cc:11291 c/c-parser.cc:11907 c/c-parser.cc:11933
+#: c/c-parser.cc:11967 c/c-parser.cc:12168 c/c-parser.cc:13049
+#: c/c-parser.cc:15078 c/c-parser.cc:17730 c/c-parser.cc:18465
+#: c/c-parser.cc:18524 c/c-parser.cc:18579 c/c-parser.cc:20651
+#: c/c-parser.cc:20943 c/c-parser.cc:21095 c/c-parser.cc:23156
+#: c/c-parser.cc:24564 c/c-parser.cc:25216 c/c-parser.cc:29186
+#: c/c-parser.cc:29454 c/c-parser.cc:29536 c/gimple-parser.cc:238
+#: c/gimple-parser.cc:241 c/gimple-parser.cc:594 c/gimple-parser.cc:628
+#: c/gimple-parser.cc:633 c/gimple-parser.cc:814 c/gimple-parser.cc:911
+#: c/gimple-parser.cc:1135 c/gimple-parser.cc:1161 c/gimple-parser.cc:1164
+#: c/gimple-parser.cc:1295 c/gimple-parser.cc:1422 c/gimple-parser.cc:1555
+#: c/gimple-parser.cc:1571 c/gimple-parser.cc:1648 c/gimple-parser.cc:1681
+#: c/gimple-parser.cc:1711 c/gimple-parser.cc:1737 c/gimple-parser.cc:1944
+#: c/gimple-parser.cc:2156 c/gimple-parser.cc:2176 c/gimple-parser.cc:2337
+#: c/gimple-parser.cc:2500 c/c-parser.cc:3426 c/c-parser.cc:9601
+#: c/c-parser.cc:21759 cp/parser.cc:37766 cp/parser.cc:46129
 #, gcc-internal-format
 msgid "expected %<)%>"
 msgstr ""
 
-#: c/c-parser.cc:5029 c/c-parser.cc:5778 c/c-parser.cc:6138 c/c-parser.cc:6156
-#: c/c-parser.cc:6157 c/c-parser.cc:6660 c/c-parser.cc:6704 c/c-parser.cc:9508
-#: c/c-parser.cc:11816 c/c-parser.cc:13270 c/c-parser.cc:13642
-#: c/c-parser.cc:16667 c/gimple-parser.cc:1930 cp/parser.cc:35286
+#: c/c-parser.cc:5213 c/c-parser.cc:5967 c/c-parser.cc:6324 c/c-parser.cc:6342
+#: c/c-parser.cc:6343 c/c-parser.cc:6852 c/c-parser.cc:6896 c/c-parser.cc:9700
+#: c/c-parser.cc:12159 c/c-parser.cc:13622 c/c-parser.cc:13995
+#: c/c-parser.cc:17052 c/gimple-parser.cc:1920 cp/parser.cc:37730
 #, gcc-internal-format
 msgid "expected %<]%>"
 msgstr ""
 
-#: c/c-parser.cc:5231
+#: c/c-parser.cc:5415
 msgid "expected %<;%>, %<,%> or %<)%>"
 msgstr ""
 
 #. Look for the two `(' tokens.
-#: c/c-parser.cc:5687 c/c-parser.cc:5692 c/c-parser.cc:17328
-#: c/c-parser.cc:18169 c/c-parser.cc:20554 c/c-parser.cc:20653
-#: c/c-parser.cc:26832 c/c-parser.cc:27136 c/c-parser.cc:27824
-#: c/c-parser.cc:28041 c/gimple-parser.cc:223 c/gimple-parser.cc:536
-#: c/gimple-parser.cc:575 c/gimple-parser.cc:607 c/gimple-parser.cc:874
-#: c/gimple-parser.cc:1169 c/gimple-parser.cc:1195 c/gimple-parser.cc:1322
-#: c/gimple-parser.cc:1457 c/gimple-parser.cc:1582 c/gimple-parser.cc:1687
-#: c/gimple-parser.cc:1705 c/gimple-parser.cc:1740 c/gimple-parser.cc:2135
-#: c/gimple-parser.cc:2146 c/gimple-parser.cc:2152 c/gimple-parser.cc:2335
-#: c/gimple-parser.cc:2507 c/c-parser.cc:17109 cp/parser.cc:35277
+#: c/c-parser.cc:5876 c/c-parser.cc:5881 c/c-parser.cc:17713
+#: c/c-parser.cc:18554 c/c-parser.cc:20633 c/c-parser.cc:21567
+#: c/c-parser.cc:21666 c/c-parser.cc:27884 c/c-parser.cc:28205
+#: c/c-parser.cc:29108 c/c-parser.cc:29262 c/c-parser.cc:29479
+#: c/gimple-parser.cc:223 c/gimple-parser.cc:541 c/gimple-parser.cc:580
+#: c/gimple-parser.cc:612 c/gimple-parser.cc:881 c/gimple-parser.cc:1129
+#: c/gimple-parser.cc:1155 c/gimple-parser.cc:1282 c/gimple-parser.cc:1417
+#: c/gimple-parser.cc:1545 c/gimple-parser.cc:1677 c/gimple-parser.cc:1695
+#: c/gimple-parser.cc:1730 c/gimple-parser.cc:2125 c/gimple-parser.cc:2136
+#: c/gimple-parser.cc:2142 c/gimple-parser.cc:2325 c/gimple-parser.cc:2497
+#: c/c-parser.cc:11064 c/c-parser.cc:17494 cp/parser.cc:37721
 #, gcc-internal-format
 msgid "expected %<(%>"
 msgstr ""
 
-#: c/c-parser.cc:6134 c/c-parser.cc:6136 c/c-parser.cc:16572 cp/parser.cc:35289
-#: cp/parser.cc:39179 go/gofrontend/embed.cc:440
+#: c/c-parser.cc:6320 c/c-parser.cc:6322 c/c-parser.cc:16957 cp/parser.cc:37733
+#: cp/parser.cc:41636 go/gofrontend/embed.cc:440
 #, gcc-internal-format
 msgid "expected %<[%>"
 msgstr ""
 
-#: c/c-parser.cc:6964 c/c-parser.cc:14934 c/c-parser.cc:20630
-#: c/c-parser.cc:23012 c/c-parser.cc:23098 c/c-parser.cc:23859
-#: c/c-parser.cc:24999 c/c-parser.cc:29820 c/gimple-parser.cc:447
-#: c/gimple-parser.cc:2513 c/c-parser.cc:4128 c/c-parser.cc:4356
-#: c/c-parser.cc:14486 cp/parser.cc:22203 cp/parser.cc:35283
+#: c/c-parser.cc:7156 c/c-parser.cc:15307 c/c-parser.cc:21643
+#: c/c-parser.cc:24039 c/c-parser.cc:24125 c/c-parser.cc:24886
+#: c/c-parser.cc:26032 c/c-parser.cc:31328 c/gimple-parser.cc:452
+#: c/gimple-parser.cc:2503 c/c-parser.cc:4312 c/c-parser.cc:4540
+#: c/c-parser.cc:14859 cp/parser.cc:23909 cp/parser.cc:37727
 #: go/gofrontend/embed.cc:371
 #, gcc-internal-format
 msgid "expected %<{%>"
 msgstr ""
 
-#: c/c-parser.cc:7914 c/c-parser.cc:7923 c/c-parser.cc:9957 c/c-parser.cc:11136
-#: c/c-parser.cc:14698 c/c-parser.cc:15095 c/c-parser.cc:15159
-#: c/c-parser.cc:16649 c/c-parser.cc:17760 c/c-parser.cc:17997
-#: c/c-parser.cc:18550 c/c-parser.cc:18653 c/c-parser.cc:19194
-#: c/c-parser.cc:19630 c/c-parser.cc:19706 c/c-parser.cc:19823
-#: c/c-parser.cc:19895 c/c-parser.cc:20868 c/c-parser.cc:26702
-#: c/c-parser.cc:27881 c/c-parser.cc:27940 c/c-parser.cc:29142
-#: c/gimple-parser.cc:630 c/gimple-parser.cc:943 c/gimple-parser.cc:2561
-#: c/gimple-parser.cc:2588 c/c-parser.cc:9416 c/c-parser.cc:17253
-#: c/c-parser.cc:18658 cp/parser.cc:35316 cp/parser.cc:37023 cp/parser.cc:40119
-#: cp/parser.cc:41012 go/gofrontend/embed.cc:404
+#: c/c-parser.cc:8106 c/c-parser.cc:8115 c/c-parser.cc:10149
+#: c/c-parser.cc:11459 c/c-parser.cc:15071 c/c-parser.cc:15468
+#: c/c-parser.cc:15532 c/c-parser.cc:17034 c/c-parser.cc:18145
+#: c/c-parser.cc:18382 c/c-parser.cc:18944 c/c-parser.cc:19047
+#: c/c-parser.cc:19588 c/c-parser.cc:19756 c/c-parser.cc:20294
+#: c/c-parser.cc:20370 c/c-parser.cc:20501 c/c-parser.cc:20573
+#: c/c-parser.cc:20653 c/c-parser.cc:21326 c/c-parser.cc:21881
+#: c/c-parser.cc:27743 c/c-parser.cc:29135 c/c-parser.cc:29319
+#: c/c-parser.cc:29378 c/c-parser.cc:30614 c/gimple-parser.cc:635
+#: c/gimple-parser.cc:950 c/gimple-parser.cc:1632 c/gimple-parser.cc:2551
+#: c/gimple-parser.cc:2578 c/c-parser.cc:9608 c/c-parser.cc:17638
+#: c/c-parser.cc:19052 cp/parser.cc:37760 cp/parser.cc:39476 cp/parser.cc:42576
+#: cp/parser.cc:43480 go/gofrontend/embed.cc:404
 #, gcc-internal-format
 msgid "expected %<:%>"
 msgstr ""
 
-#: c/c-parser.cc:8910 cp/parser.cc:35203
+#: c/c-parser.cc:9102 cp/parser.cc:37647
 #, gcc-internal-format
 msgid "expected %<while%>"
 msgstr ""
 
-#: c/c-parser.cc:10855 c/c-parser.cc:11085 c/c-parser.cc:11602
-#: c/c-parser.cc:11647 c/c-parser.cc:11740 c/c-parser.cc:11887
-#: c/c-parser.cc:12687 c/c-parser.cc:18174 c/c-parser.cc:19775
-#: c/gimple-parser.cc:1172 c/gimple-parser.cc:1198 c/gimple-parser.cc:1326
-#: c/gimple-parser.cc:1329 c/gimple-parser.cc:1709 c/gimple-parser.cc:1715
-#: cp/parser.cc:34633 cp/parser.cc:35292
+#: c/c-parser.cc:11168 c/c-parser.cc:11407 c/c-parser.cc:11957
+#: c/c-parser.cc:11996 c/c-parser.cc:12089 c/c-parser.cc:12230
+#: c/c-parser.cc:13039 c/c-parser.cc:18559 c/c-parser.cc:20439
+#: c/gimple-parser.cc:1132 c/gimple-parser.cc:1158 c/gimple-parser.cc:1286
+#: c/gimple-parser.cc:1289 c/gimple-parser.cc:1699 c/gimple-parser.cc:1705
+#: cp/parser.cc:37077 cp/parser.cc:37736
 #, gcc-internal-format
 msgid "expected %<,%>"
 msgstr ""
 
-#: c/c-parser.cc:11496
+#: c/c-parser.cc:11851
 msgid "expected %<.%>"
 msgstr ""
 
-#: c/c-parser.cc:14157 c/c-parser.cc:14189 c/c-parser.cc:14429
-#: cp/parser.cc:37597 cp/parser.cc:37618
+#: c/c-parser.cc:14530 c/c-parser.cc:14562 c/c-parser.cc:14802
+#: cp/parser.cc:40050 cp/parser.cc:40071
 #, gcc-internal-format
 msgid "expected %<@end%>"
 msgstr ""
 
-#: c/c-parser.cc:14847 c/gimple-parser.cc:1497 cp/parser.cc:35301
+#: c/c-parser.cc:15220 c/gimple-parser.cc:1457 cp/parser.cc:37745
 #, gcc-internal-format
 msgid "expected %<>%>"
 msgstr ""
 
-#: c/c-parser.cc:18748 c/c-parser.cc:20191 c/c-parser.cc:20617
-#: cp/parser.cc:35325 cp/parser.cc:42883
+#: c/c-parser.cc:19142 c/c-parser.cc:21113 c/c-parser.cc:21630
+#: cp/parser.cc:37769 cp/parser.cc:45980
 #, gcc-internal-format
 msgid "expected %<,%> or %<)%>"
 msgstr ""
 
 #. All following cases are statements with LHS.
-#: c/c-parser.cc:19622 c/c-parser.cc:22907 c/c-parser.cc:22952
-#: c/c-parser.cc:23109 c/c-parser.cc:23456 c/c-parser.cc:24168
-#: c/c-parser.cc:25374 c/c-parser.cc:26880 c/c-parser.cc:28082
-#: c/gimple-parser.cc:798 c/c-parser.cc:6727 c/c-parser.cc:23029
-#: c/c-parser.cc:23252 cp/parser.cc:35304 cp/parser.cc:44578 cp/parser.cc:44751
+#: c/c-parser.cc:20286 c/c-parser.cc:23934 c/c-parser.cc:23979
+#: c/c-parser.cc:24136 c/c-parser.cc:24483 c/c-parser.cc:25195
+#: c/c-parser.cc:26408 c/c-parser.cc:27932 c/c-parser.cc:29520
+#: c/gimple-parser.cc:805 c/c-parser.cc:6919 c/c-parser.cc:24056
+#: c/c-parser.cc:24279 cp/parser.cc:37748 cp/parser.cc:47690 cp/parser.cc:47863
 #, gcc-internal-format
 msgid "expected %<=%>"
 msgstr ""
 
-#: c/c-parser.cc:20767 c/c-parser.cc:27145 c/c-parser.cc:27166
-#: c/c-parser.cc:16707 c/c-parser.cc:16719 c/c-parser.cc:20747
-#: cp/parser.cc:43033 cp/parser.cc:43060 cp/parser.cc:50600 cp/parser.cc:50611
+#: c/c-parser.cc:21780 c/c-parser.cc:28214 c/c-parser.cc:28235
+#: c/c-parser.cc:17092 c/c-parser.cc:17104 c/c-parser.cc:21760
+#: cp/parser.cc:46130 cp/parser.cc:46157 cp/parser.cc:53808 cp/parser.cc:53819
 #, gcc-internal-format
 msgid "expected %<)%> or %<,%>"
 msgstr ""
 
-#: c/c-parser.cc:23040 c/c-parser.cc:23120 c/c-parser.cc:23473
-#: c/c-parser.cc:23928 c/gimple-parser.cc:1763 c/gimple-parser.cc:1795
-#: c/gimple-parser.cc:1805 c/gimple-parser.cc:2598 cp/parser.cc:35280
-#: cp/parser.cc:37807
+#: c/c-parser.cc:24067 c/c-parser.cc:24147 c/c-parser.cc:24500
+#: c/c-parser.cc:24955 c/gimple-parser.cc:1753 c/gimple-parser.cc:1785
+#: c/gimple-parser.cc:1795 c/gimple-parser.cc:2588 cp/parser.cc:37724
+#: cp/parser.cc:40260
 #, gcc-internal-format
 msgid "expected %<}%>"
 msgstr ""
 
-#: c/c-parser.cc:23133 cp/parser.cc:44676
+#: c/c-parser.cc:24160 cp/parser.cc:47788
 #, gcc-internal-format
 msgid "expected %<else%>"
 msgstr ""
 
-#: c/c-parser.cc:25046 c/c-parser.cc:25035 cp/parser.cc:47606
+#: c/c-parser.cc:26079 c/c-parser.cc:26068 cp/parser.cc:50749
 #, gcc-internal-format
 msgid "expected %<#pragma omp section%> or %<}%>"
 msgstr ""
 
-#: c/c-parser.cc:28760 cp/parser.cc:52554
+#: c/c-parser.cc:30212 cp/parser.cc:56060
 msgid "<message unknown at compile time>"
 msgstr ""
 
-#: c/c-typeck.cc:9863
+#: c/c-typeck.cc:10380
 msgid "(anonymous)"
 msgstr ""
 
-#: c/gimple-parser.cc:1486 cp/parser.cc:19538 cp/parser.cc:35298
+#: c/gimple-parser.cc:1446 cp/parser.cc:21172 cp/parser.cc:37742
 #, gcc-internal-format
 msgid "expected %<<%>"
 msgstr ""
 
-#: c/gimple-parser.cc:2557 c/gimple-parser.cc:2584 c/gimple-parser.cc:2423
-#: c/gimple-parser.cc:2460
+#: c/gimple-parser.cc:2547 c/gimple-parser.cc:2574 c/gimple-parser.cc:2413
+#: c/gimple-parser.cc:2450
 #, gcc-internal-format
 msgid "expected label"
 msgstr ""
 
-#: cobol/gcobolspec.cc:544
+#: cobol/gcobolspec.cc:549
 #, c-format
-msgid "Driving: (%ld)\n"
+msgid "Driving: ("
 msgstr ""
 
-#: cp/call.cc:4225
+#: cp/call.cc:4281
 #, c-format
 msgid "candidate %i:"
 msgstr ""
 
-#: cp/call.cc:8520
+#: cp/call.cc:8590
 msgid "  after user-defined conversion:"
 msgstr ""
 
-#: cp/call.cc:8724 cp/pt.cc:2064 cp/pt.cc:26956
+#: cp/call.cc:8800 cp/pt.cc:27659
 msgid "candidate is:"
 msgid_plural "candidates are:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/call.cc:13350 cp/call.cc:13802
+#: cp/call.cc:13469 cp/call.cc:13921
 msgid "candidate 1:"
 msgstr ""
 
-#: cp/call.cc:13352 cp/call.cc:13803
+#: cp/call.cc:13471 cp/call.cc:13922
 msgid "candidate 2:"
 msgstr ""
 
-#: cp/error.cc:567
+#: cp/error.cc:595
 msgid "<missing>"
 msgstr ""
 
-#: cp/error.cc:669
+#: cp/error.cc:697
 msgid "<brace-enclosed initializer list>"
 msgstr ""
 
-#: cp/error.cc:671
+#: cp/error.cc:699
 msgid "<unresolved overloaded function type>"
 msgstr ""
 
-#: cp/error.cc:845
+#: cp/error.cc:894
 msgid "<type error>"
 msgstr ""
 
 #. A lambda's "type" is essentially its signature.
-#: cp/error.cc:952
+#: cp/error.cc:1001
 msgid "<lambda"
 msgstr ""
 
-#: cp/error.cc:966 objc/objc-act.cc:6365 cp/cxx-pretty-print.cc:155
-#: cp/cxx-pretty-print.cc:2864
+#: cp/error.cc:1015 objc/objc-act.cc:6365 cp/cxx-pretty-print.cc:154
+#: cp/cxx-pretty-print.cc:2906
 #, gcc-internal-format
 msgid "<unnamed>"
 msgstr ""
 
-#: cp/error.cc:968
+#: cp/error.cc:1017
 #, c-format
 msgid "<unnamed %s>"
 msgstr ""
 
-#: cp/error.cc:1107
+#: cp/error.cc:1158
 msgid "<typeprefixerror>"
 msgstr ""
 
-#: cp/error.cc:1249
+#: cp/error.cc:1302
 #, c-format
 msgid "(static initializers for %s)"
 msgstr ""
 
-#: cp/error.cc:1251
+#: cp/error.cc:1304
 #, c-format
 msgid "(static destructors for %s)"
 msgstr ""
 
-#: cp/error.cc:1297
+#: cp/error.cc:1375
 msgid "<structured bindings>"
 msgstr ""
 
-#: cp/error.cc:1423
+#: cp/error.cc:1501
 msgid "vtable for "
 msgstr ""
 
-#: cp/error.cc:1447
+#: cp/error.cc:1525
 msgid "<return value> "
 msgstr ""
 
-#: cp/error.cc:1462
+#: cp/error.cc:1540
 msgid "{anonymous}"
 msgstr ""
 
-#: cp/error.cc:1464
+#: cp/error.cc:1542
 msgid "(anonymous namespace)"
 msgstr ""
 
-#: cp/error.cc:1558
+#: cp/error.cc:1641
 msgid "<template arguments error>"
 msgstr ""
 
-#: cp/error.cc:1583
+#: cp/error.cc:1666
 msgid "<enumerator>"
 msgstr ""
 
-#: cp/error.cc:1643
+#: cp/error.cc:1726
 msgid "<declaration error>"
 msgstr ""
 
-#: cp/error.cc:2214 cp/error.cc:2234
+#: cp/error.cc:2305 cp/error.cc:2325
 msgid "<template parameter error>"
 msgstr ""
 
-#: cp/error.cc:2352
+#: cp/error.cc:2443
 msgid "<statement>"
 msgstr ""
 
-#: cp/error.cc:2381 cp/error.cc:3503 c-family/c-pretty-print.cc:2694
+#: cp/error.cc:2472 cp/error.cc:3636 c-family/c-pretty-print.cc:2688
 #, gcc-internal-format
 msgid "<unknown>"
 msgstr ""
 
 #. While waiting for caret diagnostics, avoid printing
 #. __cxa_allocate_exception, __cxa_throw, and the like.
-#: cp/error.cc:2399
+#: cp/error.cc:2490
 msgid "<throw-expression>"
 msgstr ""
 
-#: cp/error.cc:2483
+#: cp/error.cc:2574
 msgid "<ubsan routine call>"
 msgstr ""
 
-#: cp/error.cc:3000
+#: cp/error.cc:3091
 msgid "<unparsed>"
 msgstr ""
 
-#: cp/error.cc:3160
+#: cp/error.cc:3251
 msgid "<lambda>"
 msgstr ""
 
-#: cp/error.cc:3198
+#: cp/error.cc:3289
 msgid "*this"
 msgstr ""
 
-#: cp/error.cc:3227
+#: cp/error.cc:3360
 msgid "<expression error>"
 msgstr ""
 
-#: cp/error.cc:3242
+#: cp/error.cc:3375
 msgid "<unknown operator>"
 msgstr ""
 
-#: cp/error.cc:3732
+#: cp/error.cc:3865
 msgid "At global scope:"
 msgstr ""
 
-#: cp/pt.cc:2062 cp/semantics.cc:6719
-msgid "candidates are:"
+#: cp/reflect.cc:559
+msgid "array element not a constant integer"
+msgstr ""
+
+#: cp/reflect.cc:567 cp/reflect.cc:3862
+msgid "reflect_constant failed"
+msgstr ""
+
+#: cp/reflect.cc:1000
+msgid "reflection does not represent a type"
+msgstr ""
+
+#: cp/reflect.cc:1012
+msgid "reflection does not have template arguments"
+msgstr ""
+
+#: cp/reflect.cc:1023
+msgid "reflection does not represent a function or function type"
+msgstr ""
+
+#: cp/reflect.cc:2324
+msgid ""
+"reflection does not represent an operator function or operator function "
+"template"
+msgstr ""
+
+#: cp/reflect.cc:2374
+msgid "operators argument is not a valid operator"
+msgstr ""
+
+#: cp/reflect.cc:2505
+msgid "reflection does not have a type"
+msgstr ""
+
+#: cp/reflect.cc:2621
+msgid ""
+"reflection does not represent an object with static storage duration, or a "
+"reference to such an object"
+msgstr ""
+
+#: cp/reflect.cc:2702
+msgid ""
+"reflection does not represent an annotation or a valid argument to a splice-"
+"expression"
+msgstr ""
+
+#: cp/reflect.cc:2922
+msgid "reflection does not represent an entity with parent"
+msgstr ""
+
+#: cp/reflect.cc:3045
+msgid "reflection does not represent parameter of current function"
+msgstr ""
+
+#: cp/reflect.cc:3066
+msgid ""
+"reflection does not represent a function or function type with a return type"
+msgstr ""
+
+#: cp/reflect.cc:3097
+msgid ""
+"reflection of virtual direct base relationship with abstract derived class"
+msgstr ""
+
+#: cp/reflect.cc:3103
+msgid "reflection unsuitable for offset_of"
 msgstr ""
 
-#: cp/rtti.cc:588
+#: cp/reflect.cc:3108
+msgid "non-constant offset for offset_of"
+msgstr ""
+
+#: cp/reflect.cc:3172
+msgid "reflection not suitable for size_of"
+msgstr ""
+
+#: cp/reflect.cc:3191
+msgid "reflection with incomplete type in size_of"
+msgstr ""
+
+#: cp/reflect.cc:3227
+msgid "reflection not suitable for alignment_of"
+msgstr ""
+
+#: cp/reflect.cc:3263
+msgid "alignment_of on function type"
+msgstr ""
+
+#: cp/reflect.cc:3272
+msgid "reflection with incomplete type in alignment_of"
+msgstr ""
+
+#: cp/reflect.cc:3307
+msgid "reflection not suitable for bit_size_of"
+msgstr ""
+
+#: cp/reflect.cc:3331
+msgid "reflection with incomplete type in bit_size_of"
+msgstr ""
+
+#: cp/reflect.cc:3507
+msgid "reflection with has_identifier false"
+msgstr ""
+
+#: cp/reflect.cc:3547 cp/reflect.cc:3630
+msgid "identifier_of not representable in ordinary literal encoding"
+msgstr ""
+
+#: cp/reflect.cc:3551 cp/reflect.cc:3634
+msgid "u8identifier_of not representable in UTF-8"
+msgstr ""
+
+#: cp/reflect.cc:3767
+msgid ""
+"reflection does not represent a type, type alias, variable, function, "
+"namespace, enumerator, direct base class relationship, or non-static data "
+"member"
+msgstr ""
+
+#: cp/reflect.cc:3779
+msgid "reflection does not represent a complete type or type alias"
+msgstr ""
+
+#: cp/reflect.cc:3886
+msgid "reflect_object failed"
+msgstr ""
+
+#: cp/reflect.cc:3913
+msgid "reflect_function failed"
+msgstr ""
+
+#: cp/reflect.cc:4792
+msgid "value member missing"
+msgstr ""
+
+#: cp/reflect.cc:4803 cp/reflect.cc:4812
+msgid "unexpected value of value member"
+msgstr ""
+
+#: cp/reflect.cc:4919
+msgid "type member missing"
+msgstr ""
+
+#: cp/reflect.cc:4943
+msgid "reflection does not represent a complete enumeration type"
+msgstr ""
+
+#: cp/reflect.cc:5000
+msgid "reflection does not represent an enumerable enumeration type"
+msgstr ""
+
+#: cp/reflect.cc:5156
+msgid "reflection represents non-integral or bool type"
+msgstr ""
+
+#: cp/reflect.cc:5295
+msgid "reflection does not represent a template"
+msgstr ""
+
+#: cp/reflect.cc:5318
+msgid "invalid argument to can_substitute"
+msgstr ""
+
+#: cp/reflect.cc:5380
+msgid "can_substitute returned false"
+msgstr ""
+
+#: cp/reflect.cc:5509
+msgid "type is not object or reference type"
+msgstr ""
+
+#: cp/reflect.cc:5754
+msgid "conversion from ordinary literal encoding to source charset failed"
+msgstr ""
+
+#: cp/reflect.cc:5760
+msgid "conversion from UTF-8 encoding to source charset failed"
+msgstr ""
+
+#: cp/reflect.cc:5768
+msgid "name is not a valid identifier"
+msgstr ""
+
+#: cp/reflect.cc:5774
+msgid "name is a keyword"
+msgstr ""
+
+#: cp/reflect.cc:5777
+msgid "name is a built-in trait"
+msgstr ""
+
+#: cp/reflect.cc:5786
+msgid "neither name nor bit_width specified"
+msgstr ""
+
+#: cp/reflect.cc:5792
+msgid "bit_width specified with non-integral and non-enumeration type"
+msgstr ""
+
+#: cp/reflect.cc:5797
+msgid "both alignment and bit_width specified"
+msgstr ""
+
+#: cp/reflect.cc:5801
+msgid "bit_width specified with no_unique_address true"
+msgstr ""
+
+#: cp/reflect.cc:5806
+msgid "bit_width 0 with specified name"
+msgstr ""
+
+#: cp/reflect.cc:5809
+msgid "bit_width is negative"
+msgstr ""
+
+#: cp/reflect.cc:5816
+msgid "alignment is not power of two"
+msgstr ""
+
+#: cp/reflect.cc:5819
+msgid "alignment is negative"
+msgstr ""
+
+#: cp/reflect.cc:5826
+msgid "alignment is smaller than alignment_of"
+msgstr ""
+
+#: cp/reflect.cc:6363
+msgid "incomplete parent class"
+msgstr ""
+
+#: cp/reflect.cc:6799
+msgid "neither complete class type nor namespace"
+msgstr ""
+
+#: cp/reflect.cc:6829 cp/reflect.cc:6857 cp/reflect.cc:6886 cp/reflect.cc:6924
+#: cp/reflect.cc:6962 cp/reflect.cc:6993
+msgid "not a complete class type"
+msgstr ""
+
+#: cp/reflect.cc:6952
+msgid "closure type"
+msgstr ""
+
+#: cp/reflect.cc:7128 cp/reflect.cc:7187 cp/reflect.cc:7261
+msgid "value cannot be extracted"
+msgstr ""
+
+#: cp/rtti.cc:592
 msgid "target is not pointer or reference to class"
 msgstr ""
 
-#: cp/rtti.cc:593
+#: cp/rtti.cc:597
 msgid "target is not pointer or reference to complete type"
 msgstr ""
 
-#: cp/rtti.cc:599
+#: cp/rtti.cc:603
 msgid "target is not pointer or reference"
 msgstr ""
 
-#: cp/rtti.cc:615
+#: cp/rtti.cc:619
 msgid "source is not a pointer"
 msgstr ""
 
-#: cp/rtti.cc:620
+#: cp/rtti.cc:624
 msgid "source is not a pointer to class"
 msgstr ""
 
-#: cp/rtti.cc:625
+#: cp/rtti.cc:629
 msgid "source is a pointer to incomplete type"
 msgstr ""
 
-#: cp/rtti.cc:638
+#: cp/rtti.cc:642
 msgid "source is not of class type"
 msgstr ""
 
-#: cp/rtti.cc:643
+#: cp/rtti.cc:647
 msgid "source is of incomplete class type"
 msgstr ""
 
-#: cp/rtti.cc:654
+#: cp/rtti.cc:658
 msgid "conversion casts away constness"
 msgstr ""
 
-#: cp/rtti.cc:816
+#: cp/rtti.cc:820
 msgid "source type is not polymorphic"
 msgstr ""
 
-#: cp/typeck.cc:7524 c/c-typeck.cc:5303
+#: cp/semantics.cc:6825
+msgid "candidates are:"
+msgstr ""
+
+#: cp/typeck.cc:7784 c/c-typeck.cc:5744
 #, gcc-internal-format
 msgid "wrong type argument to unary minus"
 msgstr ""
 
-#: cp/typeck.cc:7525 c/c-typeck.cc:5289
+#: cp/typeck.cc:7785 c/c-typeck.cc:5730
 #, gcc-internal-format
 msgid "wrong type argument to unary plus"
 msgstr ""
 
-#: cp/typeck.cc:7552 c/c-typeck.cc:5348
+#: cp/typeck.cc:7812 c/c-typeck.cc:5789
 #, gcc-internal-format
 msgid "wrong type argument to bit-complement"
 msgstr ""
 
-#: cp/typeck.cc:7572 c/c-typeck.cc:5356
+#: cp/typeck.cc:7832 c/c-typeck.cc:5797
 #, gcc-internal-format
 msgid "wrong type argument to abs"
 msgstr ""
 
-#: cp/typeck.cc:7584 c/c-typeck.cc:5378
+#: cp/typeck.cc:7844 c/c-typeck.cc:5819
 #, gcc-internal-format
 msgid "wrong type argument to conjugation"
 msgstr ""
 
-#: cp/typeck.cc:7608
+#: cp/typeck.cc:7868
 msgid "in argument to unary !"
 msgstr ""
 
-#: cp/typeck.cc:7657
+#: cp/typeck.cc:7928
 msgid "no pre-increment operator for type"
 msgstr ""
 
-#: cp/typeck.cc:7659
+#: cp/typeck.cc:7930
 msgid "no post-increment operator for type"
 msgstr ""
 
-#: cp/typeck.cc:7661
+#: cp/typeck.cc:7932
 msgid "no pre-decrement operator for type"
 msgstr ""
 
-#: cp/typeck.cc:7663
+#: cp/typeck.cc:7934
 msgid "no post-decrement operator for type"
 msgstr ""
 
-#: fortran/arith.cc:1664
+#: fortran/arith.cc:1672
 msgid "elemental binary operation"
 msgstr ""
 
@@ -23435,63 +24431,63 @@ msgstr ""
 msgid "BOZ constant truncated at %L"
 msgstr ""
 
-#: fortran/check.cc:4126
+#: fortran/check.cc:4179
 #, c-format
 msgid "arguments 'a%d' and 'a%d' for intrinsic '%s'"
 msgstr ""
 
-#: fortran/check.cc:4364 fortran/check.cc:4449 fortran/check.cc:4514
-#: fortran/check.cc:5217
+#: fortran/check.cc:4417 fortran/check.cc:4502 fortran/check.cc:4567
+#: fortran/check.cc:5270
 #, c-format
 msgid "arguments '%s' and '%s' for intrinsic %s"
 msgstr ""
 
-#: fortran/check.cc:4968 fortran/intrinsic.cc:4987
+#: fortran/check.cc:5021 fortran/intrinsic.cc:5062
 #, c-format
 msgid "arguments '%s' and '%s' for intrinsic '%s'"
 msgstr ""
 
-#: fortran/check.cc:5823
+#: fortran/check.cc:5897
 msgid "NULL() is not interoperable"
 msgstr ""
 
-#: fortran/check.cc:5829
+#: fortran/check.cc:5903
 msgid "BOZ literal constant"
 msgstr ""
 
-#: fortran/check.cc:5835
+#: fortran/check.cc:5909
 msgid "Expression is polymorphic"
 msgstr ""
 
-#: fortran/check.cc:5842
+#: fortran/check.cc:5916
 msgid "Expression is a noninteroperable derived type"
 msgstr ""
 
-#: fortran/check.cc:5848
+#: fortran/check.cc:5922
 msgid "Procedure unexpected as argument"
 msgstr ""
 
-#: fortran/check.cc:5858
+#: fortran/check.cc:5932
 msgid "Extension to use a non-C_Bool-kind LOGICAL"
 msgstr ""
 
-#: fortran/check.cc:5865
+#: fortran/check.cc:5939
 msgid "Extension to use a non-C_CHAR-kind CHARACTER"
 msgstr ""
 
-#: fortran/check.cc:5886
+#: fortran/check.cc:5960
 msgid "Type shall have a character length of 1"
 msgstr ""
 
-#: fortran/check.cc:5897
+#: fortran/check.cc:5971
 msgid "Coarrays are not interoperable"
 msgstr ""
 
-#: fortran/check.cc:5908
+#: fortran/check.cc:5982
 msgid "Assumed-size arrays are not interoperable"
 msgstr ""
 
-#: fortran/dump-parse-tree.cc:4162
+#: fortran/dump-parse-tree.cc:4216
 #, c-format
 msgid ""
 "/* Prototypes for external procedures generated from %s\n"
@@ -23502,7 +24498,7 @@ msgid ""
 "\n"
 msgstr ""
 
-#: fortran/dump-parse-tree.cc:4174
+#: fortran/dump-parse-tree.cc:4228
 #, c-format
 msgid ""
 "\n"
@@ -23513,143 +24509,143 @@ msgid ""
 "   Use another -std option to compile.  */\n"
 msgstr ""
 
-#: fortran/error.cc:324
+#: fortran/error.cc:325
 msgid "Prohibited in Fortran 2023:"
 msgstr ""
 
-#: fortran/error.cc:326
+#: fortran/error.cc:327
 msgid "Fortran 2023:"
 msgstr ""
 
-#: fortran/error.cc:328
+#: fortran/error.cc:329
 msgid "Fortran 2018 deleted feature:"
 msgstr ""
 
-#: fortran/error.cc:330
+#: fortran/error.cc:331
 msgid "Fortran 2018 obsolescent feature:"
 msgstr ""
 
-#: fortran/error.cc:332
+#: fortran/error.cc:333
 msgid "Fortran 2018:"
 msgstr ""
 
-#: fortran/error.cc:334
+#: fortran/error.cc:335
 msgid "Fortran 2008 obsolescent feature:"
 msgstr ""
 
-#: fortran/error.cc:340
+#: fortran/error.cc:341
 msgid "GNU Extension:"
 msgstr ""
 
-#: fortran/error.cc:342
+#: fortran/error.cc:343
 msgid "Legacy Extension:"
 msgstr ""
 
-#: fortran/error.cc:344
+#: fortran/error.cc:345
 msgid "Obsolescent feature:"
 msgstr ""
 
-#: fortran/error.cc:346
+#: fortran/error.cc:347
 msgid "Deleted feature:"
 msgstr ""
 
-#: fortran/error.cc:348
+#: fortran/error.cc:349
 msgid "Unsigned:"
 msgstr ""
 
-#: fortran/expr.cc:3862
+#: fortran/expr.cc:4136
 msgid "array assignment"
 msgstr ""
 
-#: fortran/frontend-passes.cc:2348
+#: fortran/frontend-passes.cc:2349
 msgid ""
 "Index variable %qs redefined at %L in procedure %qs called from within DO "
 "loop at %L"
 msgstr ""
 
 #. Macros for unified error messages.
-#: fortran/frontend-passes.cc:4043
+#: fortran/frontend-passes.cc:4044
 #, c-format
 msgid ""
 "Incorrect extent in argument B in MATMUL intrinsic in dimension 1: is %ld, "
 "should be %ld"
 msgstr ""
 
-#: fortran/frontend-passes.cc:4046
+#: fortran/frontend-passes.cc:4047
 #, c-format
 msgid "Array bound mismatch for dimension 1 of array (%ld/%ld)"
 msgstr ""
 
-#: fortran/frontend-passes.cc:4049
+#: fortran/frontend-passes.cc:4050
 #, c-format
 msgid "Array bound mismatch for dimension 2 of array (%ld/%ld)"
 msgstr ""
 
-#: fortran/gfortranspec.cc:427 m2/gm2spec.cc:922
+#: fortran/gfortranspec.cc:427 m2/gm2spec.cc:945
 #, c-format
 msgid "Driving:"
 msgstr ""
 
-#: fortran/interface.cc:3905 fortran/intrinsic.cc:4662
+#: fortran/interface.cc:4029 fortran/intrinsic.cc:4737
 msgid "actual argument to INTENT = OUT/INOUT"
 msgstr ""
 
-#: fortran/intrinsic.cc:5024
+#: fortran/intrinsic.cc:5099
 msgid "available since Fortran 77"
 msgstr ""
 
-#: fortran/intrinsic.cc:5028
+#: fortran/intrinsic.cc:5103
 msgid "obsolescent in Fortran 95"
 msgstr ""
 
-#: fortran/intrinsic.cc:5032
+#: fortran/intrinsic.cc:5107
 msgid "deleted in Fortran 95"
 msgstr ""
 
-#: fortran/intrinsic.cc:5036
+#: fortran/intrinsic.cc:5111
 msgid "new in Fortran 95"
 msgstr ""
 
-#: fortran/intrinsic.cc:5040
+#: fortran/intrinsic.cc:5115
 msgid "new in Fortran 2003"
 msgstr ""
 
-#: fortran/intrinsic.cc:5044
+#: fortran/intrinsic.cc:5119
 msgid "new in Fortran 2008"
 msgstr ""
 
-#: fortran/intrinsic.cc:5048
+#: fortran/intrinsic.cc:5123
 msgid "new in Fortran 2018"
 msgstr ""
 
-#: fortran/intrinsic.cc:5052
+#: fortran/intrinsic.cc:5127
 msgid "new in Fortran 2023"
 msgstr ""
 
-#: fortran/intrinsic.cc:5056
+#: fortran/intrinsic.cc:5131
 msgid "a GNU Fortran extension"
 msgstr ""
 
-#: fortran/intrinsic.cc:5060
+#: fortran/intrinsic.cc:5135
 msgid "for backward compatibility"
 msgstr ""
 
-#: fortran/intrinsic.cc:5064
+#: fortran/intrinsic.cc:5139
 msgid "unsigned"
 msgstr ""
 
-#: fortran/io.cc:1873
+#: fortran/io.cc:1878
 #, c-format
 msgid "%s tag"
 msgstr ""
 
-#: fortran/io.cc:3364
+#: fortran/io.cc:3365
 msgid "internal unit in WRITE"
 msgstr ""
 
 #. For INQUIRE, all tags except FILE, ID and UNIT are variable definition
 #. contexts.  Thus, use an extended RESOLVE_TAG macro for that.
-#: fortran/io.cc:4725
+#: fortran/io.cc:4740
 #, c-format
 msgid "%s tag with INQUIRE"
 msgstr ""
@@ -23688,7 +24684,7 @@ msgstr ""
 msgid "Expected integer"
 msgstr ""
 
-#: fortran/module.cc:1647 fortran/module.cc:2881
+#: fortran/module.cc:1647 fortran/module.cc:2900
 msgid "Expected string"
 msgstr ""
 
@@ -23696,236 +24692,236 @@ msgstr ""
 msgid "find_enum(): Enum not found"
 msgstr ""
 
-#: fortran/module.cc:2246
+#: fortran/module.cc:2250
 msgid "Unsupported: multiple OpenACC 'routine' levels of parallelism"
 msgstr ""
 
-#: fortran/module.cc:2494
+#: fortran/module.cc:2504
 msgid "Expected attribute bit name"
 msgstr ""
 
-#: fortran/module.cc:3510
+#: fortran/module.cc:3529
 msgid "Expected integer string"
 msgstr ""
 
-#: fortran/module.cc:3514
+#: fortran/module.cc:3533
 msgid "Error converting integer"
 msgstr ""
 
-#: fortran/module.cc:3536
+#: fortran/module.cc:3555
 msgid "Expected real string"
 msgstr ""
 
-#: fortran/module.cc:3761
+#: fortran/module.cc:3782
 msgid "Expected expression type"
 msgstr ""
 
-#: fortran/module.cc:3841
+#: fortran/module.cc:3862
 msgid "Bad operator"
 msgstr ""
 
-#: fortran/module.cc:3959
+#: fortran/module.cc:3984
 msgid "Bad type in constant expression"
 msgstr ""
 
-#: fortran/module.cc:7743
+#: fortran/module.cc:7789
 msgid "Unexpected end of module"
 msgstr ""
 
-#: fortran/parse.cc:2230
+#: fortran/parse.cc:2239
 msgid "arithmetic IF"
 msgstr ""
 
-#: fortran/parse.cc:2239
+#: fortran/parse.cc:2248
 msgid "attribute declaration"
 msgstr ""
 
-#: fortran/parse.cc:2275
+#: fortran/parse.cc:2284
 msgid "data declaration"
 msgstr ""
 
-#: fortran/parse.cc:2293
+#: fortran/parse.cc:2302
 msgid "derived type declaration"
 msgstr ""
 
-#: fortran/parse.cc:2420
+#: fortran/parse.cc:2429
 msgid "block IF"
 msgstr ""
 
-#: fortran/parse.cc:2429
+#: fortran/parse.cc:2438
 msgid "implied END DO"
 msgstr ""
 
-#: fortran/parse.cc:2523 fortran/resolve.cc:13675
+#: fortran/parse.cc:2532 fortran/resolve.cc:14286
 msgid "assignment"
 msgstr ""
 
-#: fortran/parse.cc:2526 fortran/resolve.cc:13741 fortran/resolve.cc:13744
+#: fortran/parse.cc:2535 fortran/resolve.cc:14352 fortran/resolve.cc:14355
 msgid "pointer assignment"
 msgstr ""
 
-#: fortran/parse.cc:2550
+#: fortran/parse.cc:2559
 msgid "simple IF"
 msgstr ""
 
-#: fortran/resolve.cc:2464 fortran/resolve.cc:2659
+#: fortran/resolve.cc:2489 fortran/resolve.cc:2684
 msgid "elemental procedure"
 msgstr ""
 
-#: fortran/resolve.cc:2562
+#: fortran/resolve.cc:2587
 msgid "allocatable argument"
 msgstr ""
 
-#: fortran/resolve.cc:2567
+#: fortran/resolve.cc:2592
 msgid "asynchronous argument"
 msgstr ""
 
-#: fortran/resolve.cc:2572
+#: fortran/resolve.cc:2597
 msgid "optional argument"
 msgstr ""
 
-#: fortran/resolve.cc:2577
+#: fortran/resolve.cc:2602
 msgid "pointer argument"
 msgstr ""
 
-#: fortran/resolve.cc:2582
+#: fortran/resolve.cc:2607
 msgid "target argument"
 msgstr ""
 
-#: fortran/resolve.cc:2587
+#: fortran/resolve.cc:2612
 msgid "value argument"
 msgstr ""
 
-#: fortran/resolve.cc:2592
+#: fortran/resolve.cc:2617
 msgid "volatile argument"
 msgstr ""
 
-#: fortran/resolve.cc:2597
+#: fortran/resolve.cc:2622
 msgid "assumed-shape argument"
 msgstr ""
 
-#: fortran/resolve.cc:2602
+#: fortran/resolve.cc:2627
 msgid "assumed-rank argument"
 msgstr ""
 
-#: fortran/resolve.cc:2607
+#: fortran/resolve.cc:2632
 msgid "coarray argument"
 msgstr ""
 
-#: fortran/resolve.cc:2612
+#: fortran/resolve.cc:2637
 msgid "parametrized derived type argument"
 msgstr ""
 
-#: fortran/resolve.cc:2617
+#: fortran/resolve.cc:2642
 msgid "polymorphic argument"
 msgstr ""
 
-#: fortran/resolve.cc:2622
+#: fortran/resolve.cc:2647
 msgid "NO_ARG_CHECK attribute"
 msgstr ""
 
 #. As assumed-type is unlimited polymorphic (cf. above).
 #. See also TS 29113, Note 6.1.
-#: fortran/resolve.cc:2629
+#: fortran/resolve.cc:2654
 msgid "assumed-type argument"
 msgstr ""
 
-#: fortran/resolve.cc:2640
+#: fortran/resolve.cc:2665
 msgid "array result"
 msgstr ""
 
-#: fortran/resolve.cc:2645
+#: fortran/resolve.cc:2670
 msgid "pointer or allocatable result"
 msgstr ""
 
-#: fortran/resolve.cc:2652
+#: fortran/resolve.cc:2677
 msgid "result with non-constant character length"
 msgstr ""
 
-#: fortran/resolve.cc:2664
+#: fortran/resolve.cc:2689
 msgid "bind(c) procedure"
 msgstr ""
 
-#: fortran/resolve.cc:8002
+#: fortran/resolve.cc:8326
 msgid "Loop variable"
 msgstr ""
 
-#: fortran/resolve.cc:8006
+#: fortran/resolve.cc:8330
 msgid "iterator variable"
 msgstr ""
 
-#: fortran/resolve.cc:8010
+#: fortran/resolve.cc:8334
 msgid "Start expression in DO loop"
 msgstr ""
 
-#: fortran/resolve.cc:8014
+#: fortran/resolve.cc:8338
 msgid "End expression in DO loop"
 msgstr ""
 
-#: fortran/resolve.cc:8018
+#: fortran/resolve.cc:8342
 msgid "Step expression in DO loop"
 msgstr ""
 
-#: fortran/resolve.cc:8636 fortran/resolve.cc:8639
+#: fortran/resolve.cc:8975 fortran/resolve.cc:8978
 msgid "DEALLOCATE object"
 msgstr ""
 
-#: fortran/resolve.cc:9063 fortran/resolve.cc:9066
+#: fortran/resolve.cc:9419 fortran/resolve.cc:9422
 msgid "ALLOCATE object"
 msgstr ""
 
-#: fortran/resolve.cc:9303 fortran/resolve.cc:11450 fortran/resolve.cc:11676
+#: fortran/resolve.cc:9659 fortran/resolve.cc:11829 fortran/resolve.cc:12055
 msgid "STAT variable"
 msgstr ""
 
-#: fortran/resolve.cc:9354 fortran/resolve.cc:11462 fortran/resolve.cc:11688
+#: fortran/resolve.cc:9710 fortran/resolve.cc:11841 fortran/resolve.cc:12067
 msgid "ERRMSG variable"
 msgstr ""
 
-#: fortran/resolve.cc:11258
+#: fortran/resolve.cc:11637
 msgid "item in READ"
 msgstr ""
 
-#: fortran/resolve.cc:11474
+#: fortran/resolve.cc:11853
 msgid "ACQUIRED_LOCK variable"
 msgstr ""
 
-#: fortran/trans-array.cc:2058
+#: fortran/trans-array.cc:2041
 #, c-format
 msgid "Different CHARACTER lengths (%ld/%ld) in array constructor"
 msgstr ""
 
-#: fortran/trans-array.cc:6629
+#: fortran/trans-array.cc:6876
 msgid "Integer overflow when calculating the amount of memory to allocate"
 msgstr ""
 
-#: fortran/trans-array.cc:10933
+#: fortran/trans-array.cc:11414
 #, c-format
 msgid ""
 "The value of the PDT LEN parameter '%s' does not agree with that in the "
 "dummy declaration"
 msgstr ""
 
-#: fortran/trans-decl.cc:6540
+#: fortran/trans-decl.cc:6682
 #, c-format
 msgid ""
-"Actual string length does not match the declared one for dummy argument "
-"'%s' (%ld/%ld)"
+"Actual string length does not match the declared one for dummy argument '%s' "
+"(%ld/%ld)"
 msgstr ""
 
-#: fortran/trans-decl.cc:6548
+#: fortran/trans-decl.cc:6690
 #, c-format
 msgid ""
 "Actual string length is shorter than the declared one for dummy argument "
 "'%s' (%ld/%ld)"
 msgstr ""
 
-#: fortran/trans-expr.cc:11376
+#: fortran/trans-expr.cc:11543
 #, c-format
 msgid "Target of rank remapping is too small (%ld < %ld)"
 msgstr ""
 
-#: fortran/trans-expr.cc:13071
+#: fortran/trans-expr.cc:13301
 msgid "Assignment of scalar to unallocated array"
 msgstr ""
 
@@ -23934,81 +24930,81 @@ msgstr ""
 msgid "Unequal character lengths (%ld/%ld) in %s"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6386
+#: fortran/trans-intrinsic.cc:6595
 #, c-format
 msgid "POS argument (%ld) out of range 0:%ld in intrinsic BTEST"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6673
+#: fortran/trans-intrinsic.cc:6882
 #, c-format
 msgid "POS argument (%ld) out of range 0:%ld in intrinsic %s"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6721
+#: fortran/trans-intrinsic.cc:6930
 #, c-format
 msgid "POS argument (%ld) out of range 0:%ld in intrinsic IBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6731
+#: fortran/trans-intrinsic.cc:6940
 #, c-format
 msgid "LEN argument (%ld) out of range 0:%ld in intrinsic IBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6738
+#: fortran/trans-intrinsic.cc:6947
 #, c-format
 msgid "POS(%ld)+LEN(%ld)>BIT_SIZE(%ld) in intrinsic IBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6830
+#: fortran/trans-intrinsic.cc:7039
 #, c-format
 msgid "SHIFT argument (%ld) out of range 0:%ld in intrinsic %s"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6898
+#: fortran/trans-intrinsic.cc:7107
 #, c-format
 msgid "SHIFT argument (%ld) out of range -%ld:%ld in intrinsic ISHFT"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6978
+#: fortran/trans-intrinsic.cc:7187
 #, c-format
 msgid "SIZE argument (%ld) out of range 1:%ld in intrinsic ISHFTC"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6986 fortran/trans-intrinsic.cc:7031
+#: fortran/trans-intrinsic.cc:7195 fortran/trans-intrinsic.cc:7240
 #, c-format
 msgid "SHIFT argument (%ld) out of range -%ld:%ld in intrinsic ISHFTC"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:9382
+#: fortran/trans-intrinsic.cc:9609
 #, c-format
 msgid "Argument NCOPIES of REPEAT intrinsic is negative (its value is %ld)"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:9414
+#: fortran/trans-intrinsic.cc:9641
 msgid "Argument NCOPIES of REPEAT intrinsic is too large"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12882
+#: fortran/trans-intrinsic.cc:13161
 #, c-format
 msgid "FROMPOS argument (%ld) out of range 0:%d in intrinsic MVBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12894
+#: fortran/trans-intrinsic.cc:13173
 #, c-format
 msgid "LEN argument (%ld) out of range 0:%d in intrinsic MVBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12906
+#: fortran/trans-intrinsic.cc:13185
 #, c-format
 msgid "TOPOS argument (%ld) out of range 0:%d in intrinsic MVBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12918
+#: fortran/trans-intrinsic.cc:13197
 #, c-format
 msgid "FROMPOS(%ld)+LEN(%ld)>BIT_SIZE(%d) in intrinsic MVBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12926
+#: fortran/trans-intrinsic.cc:13205
 #, c-format
 msgid "TOPOS(%ld)+LEN(%ld)>BIT_SIZE(%d) in intrinsic MVBITS"
 msgstr ""
@@ -24025,20 +25021,20 @@ msgstr ""
 msgid "Assigned label is not a target label"
 msgstr ""
 
-#: fortran/trans-stmt.cc:1350
+#: fortran/trans-stmt.cc:1420
 #, c-format
 msgid "Invalid image number %d in SYNC IMAGES"
 msgstr ""
 
-#: fortran/trans-stmt.cc:2706
+#: fortran/trans-stmt.cc:2755
 msgid "Loop iterates infinitely"
 msgstr ""
 
-#: fortran/trans-stmt.cc:2726 fortran/trans-stmt.cc:2982
+#: fortran/trans-stmt.cc:2775 fortran/trans-stmt.cc:3031
 msgid "Loop variable has been modified"
 msgstr ""
 
-#: fortran/trans-stmt.cc:2835
+#: fortran/trans-stmt.cc:2884
 msgid "DO step value is zero"
 msgstr ""
 
@@ -24053,48 +25049,32 @@ msgstr ""
 msgid "Array reference out of bounds"
 msgstr ""
 
-#: fortran/trans.cc:775 fortran/trans.cc:859
+#: fortran/trans.cc:777 fortran/trans.cc:864
 #, c-format
 msgid "Error allocating %lu bytes"
 msgstr ""
 
-#: fortran/trans.cc:1072
+#: fortran/trans.cc:1077
 #, c-format
 msgid "Attempting to allocate already allocated variable '%s'"
 msgstr ""
 
-#: fortran/trans.cc:1078
+#: fortran/trans.cc:1083
 msgid "Attempting to allocate already allocated variable"
 msgstr ""
 
-#: fortran/trans.cc:1878 fortran/trans.cc:2057
+#: fortran/trans.cc:1892 fortran/trans.cc:2071
 #, c-format
 msgid "Attempt to DEALLOCATE unallocated '%s'"
 msgstr ""
 
-#: fortran/trans.cc:2232
+#: fortran/trans.cc:2246
 #, c-format
 msgid "Error reallocating to %lu bytes"
 msgstr ""
 
-#: go/go-backend.cc:166 rust/rust-object-export.cc:147
-msgid "lseek failed while reading export data"
-msgstr ""
-
-#: go/go-backend.cc:173 rust/rust-object-export.cc:154
-msgid "memory allocation failed while reading export data"
-msgstr ""
-
-#: go/go-backend.cc:181 rust/rust-object-export.cc:162
-msgid "read failed while reading export data"
-msgstr ""
-
-#: go/go-backend.cc:187 rust/rust-object-export.cc:168
-msgid "short read while reading export data"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:183 c-family/c-warn.cc:685 cp/cvt.cc:1444
-#: d/toir.cc:225 rust/backend/rust-tree.cc:512
+#: go/gofrontend/expressions.cc:183 c-family/c-warn.cc:685 cp/cvt.cc:1462
+#: d/toir.cc:225 rust/backend/rust-tree.cc:515
 #, gcc-internal-format
 msgid "value computed is not used"
 msgstr ""
@@ -24120,8 +25100,8 @@ msgstr ""
 msgid "expected boolean type"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:5610 c/c-parser.cc:19534 c/c-parser.cc:19541
-#: cp/parser.cc:41864 cp/parser.cc:41871
+#: go/gofrontend/expressions.cc:5610 c/c-parser.cc:20198 c/c-parser.cc:20205
+#: cp/parser.cc:44601 cp/parser.cc:44608
 #, gcc-internal-format
 msgid "expected integer"
 msgstr ""
@@ -24131,8 +25111,6 @@ msgid "invalid comparison of nil with nil"
 msgstr ""
 
 #: go/gofrontend/expressions.cc:7609 go/gofrontend/expressions.cc:7627
-#: go/gofrontend/expressions.cc:7457 go/gofrontend/expressions.cc:8423
-#, gcc-internal-format
 msgid "incompatible types in binary expression"
 msgstr ""
 
@@ -24186,7 +25164,7 @@ msgstr ""
 #: go/gofrontend/expressions.cc:11749 go/gofrontend/expressions.cc:11844
 #: go/gofrontend/expressions.cc:14020 go/gofrontend/expressions.cc:14149
 #: go/gofrontend/expressions.cc:14163 go/gofrontend/expressions.cc:14184
-#: cp/pt.cc:9466
+#: cp/pt.cc:9574
 #, gcc-internal-format
 msgid "too many arguments"
 msgstr ""
@@ -24567,7 +25545,7 @@ msgstr ""
 #. coalesced sections.  Weak aliases (or any other kind of aliases) are
 #. not supported.  Weak symbols that aren't visible outside the .s file
 #. are not supported.
-#: config/darwin.h:724
+#: config/darwin.h:739
 #, gcc-internal-format
 msgid "alias definitions not supported in Mach-O; ignored"
 msgstr ""
@@ -24583,13 +25561,13 @@ msgstr ""
 msgid "target OS does not support unaligned accesses"
 msgstr ""
 
-#: config/c6x/c6x.h:346 config/nvptx/nvptx.h:193
+#: config/c6x/c6x.h:346 config/nvptx/nvptx.h:194
 #, gcc-internal-format
 msgid "profiling is not yet implemented for this architecture"
 msgstr ""
 
 #. Definitions for GCC.  Part of the machine description for CRIS.
-#. Copyright (C) 1998-2025 Free Software Foundation, Inc.
+#. Copyright (C) 1998-2026 Free Software Foundation, Inc.
 #. Contributed by Axis Communications.  Written by Hans-Peter Nilsson.
 #.
 #. This file is part of GCC.
@@ -24666,7 +25644,7 @@ msgstr ""
 #. SPDX-License-Identifier: GPL-3.0-or-later
 #. Definitions of target machine for GNU compiler,
 #. for IBM RS/6000 POWER running AIX V7.1.
-#. Copyright (C) 2002-2025 Free Software Foundation, Inc.
+#. Copyright (C) 2002-2026 Free Software Foundation, Inc.
 #. Contributed by David Edelsohn (edelsohn@gnu.org).
 #.
 #. This file is part of GCC.
@@ -24689,7 +25667,7 @@ msgstr ""
 #. SPDX-License-Identifier: GPL-3.0-or-later
 #. Definitions of target machine for GNU compiler,
 #. for IBM RS/6000 POWER running AIX V7.2.
-#. Copyright (C) 2002-2025 Free Software Foundation, Inc.
+#. Copyright (C) 2002-2026 Free Software Foundation, Inc.
 #. Contributed by David Edelsohn (edelsohn@gnu.org).
 #.
 #. This file is part of GCC.
@@ -24712,7 +25690,7 @@ msgstr ""
 #. SPDX-License-Identifier: GPL-3.0-or-later
 #. Definitions of target machine for GNU compiler,
 #. for IBM RS/6000 POWER running AIX V7.3.
-#. Copyright (C) 2002-2025 Free Software Foundation, Inc.
+#. Copyright (C) 2002-2026 Free Software Foundation, Inc.
 #. Contributed by David Edelsohn (edelsohn@gnu.org).
 #.
 #. This file is part of GCC.
@@ -24750,7 +25728,7 @@ msgid ""
 msgstr ""
 
 #: config/rs6000/aix71.h:48 config/rs6000/aix72.h:48 config/rs6000/aix73.h:48
-#: config/rs6000/rtems.h:128 config/rs6000/rs6000.cc:3492
+#: config/rs6000/rtems.h:128 config/rs6000/rs6000.cc:3489
 #, gcc-internal-format
 msgid "%<-mcmodel%> incompatible with other toc options"
 msgstr ""
@@ -24760,7 +25738,7 @@ msgstr ""
 msgid "%<soft-float%> and long-double-128 are incompatible"
 msgstr ""
 
-#: config/rs6000/rtems.h:121 config/rs6000/rs6000.cc:3484
+#: config/rs6000/rtems.h:121 config/rs6000/rs6000.cc:3481
 #, gcc-internal-format
 msgid "%<-m64%> requires a PowerPC64 cpu"
 msgstr ""
@@ -24818,27 +25796,33 @@ msgstr ""
 msgid "%<-mrelax%> is only supported for RTP PIC"
 msgstr ""
 
-#: cobol/parse_ante.h:1728
+#: cobol/exceptg.h:80
+#, gcc-internal-format
+msgid "exception %qs"
+msgstr ""
+
+#: cobol/parse_ante.h:1659
 #, gcc-internal-format, gfc-internal-format
 msgid "Global declarative %s for %s"
 msgstr ""
 
-#: cobol/parse_ante.h:2456 cobol/genapi.cc:5784
-#, gcc-internal-format, gfc-internal-format
-msgid "%s:%d: invalid symbol_type_t %d"
+#: cobol/parse_ante.h:2511 cobol/symbols.h:164 cobol/genapi.cc:6333
+#: cobol/util.cc:324 cobol/util.cc:371 cobol/util.cc:418 cobol/util.cc:720
+#, gcc-internal-format
+msgid "%s:%d: invalid %<symbol_type_t%> %d"
 msgstr ""
 
-#: cobol/parse_ante.h:2798
-#, gcc-internal-format, gfc-internal-format
-msgid "%s:%d: no symbol '%s' found"
+#: cobol/parse_ante.h:3268
+#, gcc-internal-format
+msgid "SET identifier-11 TO LOCALE"
 msgstr ""
 
-#: cobol/parse_util.h:351
-#, gcc-internal-format, gfc-internal-format
-msgid "%s: intrinsic function  %s not found"
+#: cobol/parse_util.h:360
+#, gcc-internal-format
+msgid "%s: intrinsic function %qs not found"
 msgstr ""
 
-#: cobol/parse_util.h:383
+#: cobol/parse_util.h:392
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: invalid function descr type '%c'"
 msgstr ""
@@ -24848,8 +25832,40 @@ msgstr ""
 msgid "scan.o: %s"
 msgstr ""
 
+#: cobol/scan_ante.h:673
+#, gcc-internal-format, gfc-internal-format
+msgid "%s:%d: invalid level '%s'"
+msgstr ""
+
+#: cobol/scan_ante.h:1218
+#, gcc-internal-format
+msgid "%s:%d: invalid symbol type %s for symbol %qs"
+msgstr ""
+
+#: cobol/scan_ante.h:1250
+#, gcc-internal-format, gfc-internal-format
+msgid "%s:%d: invalid integer '%s'"
+msgstr ""
+
+#: cobol/scan_post.h:123
+#, gcc-internal-format, gfc-internal-format
+msgid "%s:%d: %s: %s"
+msgstr ""
+
+#. Use CHECK_FIELD when a should be non-null, and a->var_decl_node also should
+#. by non-null.  (The useless calls to abort() are because cppcheck doesn't
+#. understand that gcc_unreachable doesn't return);
+#. Use this after doing any SHOW_PARSE stuff, to avoid cppcheck complaints
+#. about nullPointerRedundantCheck
+#. This version is a bit more lax, for special cases
+#: cobol/show_parse.h:452 cobol/show_parse.h:456 cobol/show_parse.h:469
+#: cobol/show_parse.h:473 cobol/show_parse.h:486
+#, gcc-internal-format
+msgid "%s: parameter %<"
+msgstr ""
+
 #. A general purpose syntax error.
-#: fortran/gfortran.h:3568 fortran/io.cc:3727 fortran/io.cc:4413
+#: fortran/gfortran.h:3644 fortran/io.cc:3728 fortran/io.cc:4428
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in %s statement at %C"
 msgstr ""
@@ -24879,500 +25895,575 @@ msgstr ""
 msgid "%s:%d:the value %s is not a BOOLEAN as the value is %d"
 msgstr ""
 
-#: fortran/lang.opt:440
+#: lto/lang.opt:28
 #, gcc-internal-format
-msgid "Unrecognized option to endianness value: %qs"
+msgid "unknown linker output %qs"
 msgstr ""
 
-#: fortran/lang.opt:662
+#: config/arc/arc.opt:171 config/arc/arc.opt:336 config/arc/arc.opt:340
+#: config/arc/arc.opt:344 config/arc/arc.opt:351 config/arc/arc.opt:355
+#: config/arc/arc.opt:359 config/arc/arc.opt:363 config/arc/arc.opt:366
+#: config/arc/arc.opt:369 config/arc/arc.opt:386
 #, gcc-internal-format
-msgid "Unrecognized option to floating-point init value: %qs"
+msgid "%qs is deprecated"
 msgstr ""
 
-#: fortran/lang.opt:694
+#: config/rs6000/rs6000.opt:312
 #, gcc-internal-format
-msgid "%qs is not an inline-controlable intrinsic"
+msgid "%<-mvrsave=no%> is deprecated; use %<-mno-vrsave%> instead"
 msgstr ""
 
-#: fortran/lang.opt:831
+#: config/rs6000/rs6000.opt:316
 #, gcc-internal-format
-msgid "Unrecognized option: %qs"
+msgid "%<-mvrsave=yes%> is deprecated; use %<-mvrsave%> instead"
 msgstr ""
 
-#: rust/lang.opt:90
+#: config/rs6000/rs6000.opt:383
 #, gcc-internal-format
-msgid "unknown crate type: '%qs'"
+msgid "using darwin64 ABI"
 msgstr ""
 
-#: rust/lang.opt:118
+#: config/rs6000/rs6000.opt:386
 #, gcc-internal-format
-msgid "unknown rust mangling option %qs"
+msgid "using old darwin ABI"
 msgstr ""
 
-#: rust/lang.opt:135
+#: config/rs6000/rs6000.opt:479
 #, gcc-internal-format
-msgid "unknown rust edition %qs"
+msgid "Do not use %<-mpower8-internal%>; use %<-mcpu=power8%> instead"
 msgstr ""
 
-#: rust/lang.opt:163
+#: config/avr/avr.opt:30
 #, gcc-internal-format
-msgid "unknown rust compile-until %qs"
+msgid "missing device or architecture after %qs"
 msgstr ""
 
-#: rust/lang.opt:220
+#: config/i386/i386.opt:328
 #, gcc-internal-format
-msgid "unknown panic strategy %qs"
+msgid "%<-mcpu=%> is deprecated; use %<-mtune=%> or %<-march=%> instead"
 msgstr ""
 
-#: c-family/c.opt:43 c-family/c.opt:46 c-family/c.opt:191
+#: config/i386/i386.opt:393
 #, gcc-internal-format
-msgid "assertion missing after %qs"
+msgid ""
+"%<-mintel-syntax%> and %<-mno-intel-syntax%> are deprecated; use %<-"
+"masm=intel%> and %<-masm=att%> instead"
 msgstr ""
 
-#: c-family/c.opt:55 c-family/c.opt:58 c-family/c.opt:173 c-family/c.opt:176
-#: c-family/c.opt:203 c-family/c.opt:286
+#: config/i386/i386.opt:655
 #, gcc-internal-format
-msgid "macro name missing after %qs"
+msgid "%<-mstore-max=%> is deprecated; use %<-mmove-max=%> instead"
 msgstr ""
 
-#: c-family/c.opt:70 c-family/c.opt:80 c-family/c.opt:83 c-family/c.opt:86
-#: c-family/c.opt:89 c-family/c.opt:185 c-family/c.opt:188 c-family/c.opt:230
-#: c-family/c.opt:234 c-family/c.opt:246 c-family/c.opt:2482
-#: c-family/c.opt:2490 config/darwin.opt:30 common.opt:329 common.opt:332
-#: common.opt:429 common.opt:3801
+#: config/i386/i386.opt:720
 #, gcc-internal-format
-msgid "missing filename after %qs"
+msgid "%<-msse5%> was removed"
 msgstr ""
 
-#: c-family/c.opt:74 c-family/c.opt:77 c-family/c.opt:95 c-family/c.opt:98
-#: c-family/c.opt:101 c-family/c.opt:104 c-family/c.opt:210 c-family/c.opt:222
-#: c-family/c.opt:278 c-family/c.opt:2478 c-family/c.opt:2498
-#: c-family/c.opt:2502 c-family/c.opt:2506
+#: config/i386/i386.opt:1269
 #, gcc-internal-format
-msgid "missing path after %qs"
+msgid "unknown lam type %qs"
 msgstr ""
 
-#: c-family/c.opt:262 c-family/c.opt:266
+#: config/microblaze/microblaze.opt:87
 #, gcc-internal-format
-msgid "missing makefile target after %qs"
+msgid "%qs is deprecated; use -fstack-check"
 msgstr ""
 
-#: c-family/c.opt:270
+#: config/microblaze/microblaze.opt:95
 #, gcc-internal-format
-msgid "missing format after %qs"
+msgid "%qs is deprecated; use -fno-zero-initialized-in-bss"
 msgstr ""
 
-#: c-family/c.opt:274
+#: config/aarch64/aarch64.opt:387
 #, gcc-internal-format
-msgid "missing output path after %qs"
+msgid "unknown autovec preference %qs"
 msgstr ""
 
-#: c-family/c.opt:322
+#: config/aarch64/aarch64.opt:432
 #, gcc-internal-format
-msgid "argument %qs to %<-Waligned-new%> not recognized"
+msgid "unknown LDP/STP policy %qs"
 msgstr ""
 
-#: c-family/c.opt:417
+#: config/vms/vms.opt:42
 #, gcc-internal-format
-msgid "argument %qs to %<-Wbidi-chars%> not recognized"
+msgid "unknown pointer size model %qs"
 msgstr ""
 
-#: c-family/c.opt:945
+#: config/darwin.opt:30 common.opt:320 common.opt:323 common.opt:420
+#: common.opt:3882 c-family/c.opt:74 c-family/c.opt:84 c-family/c.opt:87
+#: c-family/c.opt:90 c-family/c.opt:93 c-family/c.opt:191 c-family/c.opt:194
+#: c-family/c.opt:236 c-family/c.opt:240 c-family/c.opt:252 c-family/c.opt:2558
+#: c-family/c.opt:2566
 #, gcc-internal-format
-msgid "argument %qs to %<-Wleading-whitespace=%> not recognized"
+msgid "missing filename after %qs"
 msgstr ""
 
-#: c-family/c.opt:1134
+#: config/fused-madd.opt:22
 #, gcc-internal-format
-msgid "argument %qs to %<-Wnormalized%> not recognized"
+msgid "%<-mfused-madd%> is deprecated; use %<-ffp-contract=%> instead"
 msgstr ""
 
-#: c-family/c.opt:1506
+#: fortran/lang.opt:444
 #, gcc-internal-format
-msgid "argument %qs to %<-Wtrailing-whitespace=%> not recognized"
+msgid "Unrecognized option to endianness value: %qs"
 msgstr ""
 
-#: c-family/c.opt:1834
+#: fortran/lang.opt:670
 #, gcc-internal-format
-msgid "no class name specified with %qs"
+msgid "Unrecognized option to floating-point init value: %qs"
 msgstr ""
 
-#: c-family/c.opt:1862
+#: fortran/lang.opt:702
 #, gcc-internal-format
-msgid "argument %qs must be either %<on%> or %<off%>"
+msgid "%qs is not an inline-controlable intrinsic"
+msgstr ""
+
+#: fortran/lang.opt:839
+#, gcc-internal-format
+msgid "Unrecognized option: %qs"
+msgstr ""
+
+#: params.opt:497 common.opt:2340
+#, gcc-internal-format
+msgid "unknown LTO partitioning model %qs"
 msgstr ""
 
-#: c-family/c.opt:2006
+#: params.opt:524
+#, gcc-internal-format
+msgid "unknown LTO locality partitioning heuristics %qs"
+msgstr ""
+
+#: params.opt:978
+#, gcc-internal-format
+msgid "unknown ranger debug mode %qs"
+msgstr ""
+
+#: params.opt:1165
+#, gcc-internal-format
+msgid "unknown threader debug mode %qs"
+msgstr ""
+
+#: common.opt:1744
+#, gcc-internal-format
+msgid "unknown excess precision style %qs"
+msgstr ""
+
+#: common.opt:1762
 #, gcc-internal-format
 msgid ""
-"%<-fhandle-exceptions%> has been renamed %<-fexceptions%> (and is now on by "
-"default)"
+"unknown specification for the set of FLT_EVAL_METHOD values to permit %qs"
 msgstr ""
 
-#: c-family/c.opt:2081
+#: common.opt:1806
 #, gcc-internal-format
-msgid "missing mapper"
+msgid "unknown floating point contraction style %qs"
 msgstr ""
 
-#: c-family/c.opt:2109
+#: common.opt:1990
 #, gcc-internal-format
-msgid "missing header name"
+msgid "unknown hardcfr noreturn checking level %qs"
 msgstr ""
 
-#: c-family/c.opt:2117
+#: common.opt:2023
 #, gcc-internal-format
-msgid "missing module name"
+msgid "unknown Stack Reuse Level %qs"
 msgstr ""
 
-#: c-family/c.opt:2164
+#: common.opt:2095
 #, gcc-internal-format
-msgid "unrecognized ivar visibility value %qs"
+msgid "unavailable stringop for inlining %qs"
 msgstr ""
 
-#: c-family/c.opt:2342
+#: common.opt:2127
 #, gcc-internal-format
-msgid "unrecognized scalar storage order value %qs"
+msgid "unknown Control-Flow Protection Level %qs"
 msgstr ""
 
-#: cobol/lang.opt:46
+#: common.opt:2241
 #, gcc-internal-format
-msgid "Unrecognized COBOL dialect name: %qs"
+msgid "unknown IRA algorithm %qs"
 msgstr ""
 
-#: d/lang.opt:201
+#: common.opt:2254
 #, gcc-internal-format
-msgid "unknown array bounds setting %qs"
+msgid "unknown IRA region %qs"
 msgstr ""
 
-#: d/lang.opt:243
+#: common.opt:2468
 #, gcc-internal-format
-msgid "unknown checkaction setting %qs"
+msgid "targets missing after %qs"
 msgstr ""
 
-#: d/lang.opt:303
+#: common.opt:2471
 #, gcc-internal-format
-msgid "unknown C++ standard %qs"
+msgid "options or targets=options missing after %qs"
 msgstr ""
 
-#: config/vms/vms.opt:42
+#: common.opt:2481
 #, gcc-internal-format
-msgid "unknown pointer size model %qs"
+msgid "unknown offload ABI %qs"
 msgstr ""
 
-#: config/aarch64/aarch64.opt:363
+#: common.opt:2492
 #, gcc-internal-format
-msgid "unknown autovec preference %qs"
+msgid "option missing after %qs"
 msgstr ""
 
-#: config/aarch64/aarch64.opt:408
+#: common.opt:2669
 #, gcc-internal-format
-msgid "unknown LDP/STP policy %qs"
+msgid "unknown profile reproducibility method %qs"
 msgstr ""
 
-#: config/i386/i386.opt:340
+#: common.opt:2685
 #, gcc-internal-format
-msgid "%<-mcpu=%> is deprecated; use %<-mtune=%> or %<-march=%> instead"
+msgid "unknown profile update method %qs"
 msgstr ""
 
-#: config/i386/i386.opt:400
+#: common.opt:2794
 #, gcc-internal-format
-msgid ""
-"%<-mintel-syntax%> and %<-mno-intel-syntax%> are deprecated; use %<-"
-"masm=intel%> and %<-masm=att%> instead"
+msgid "unknown Live-Patching Level %qs"
 msgstr ""
 
-#: config/i386/i386.opt:732
+#: common.opt:2827
 #, gcc-internal-format
-msgid "%<-msse5%> was removed"
+msgid "unknown basic block reordering algorithm %qs"
 msgstr ""
 
-#: config/i386/i386.opt:1273
+#: common.opt:3165
 #, gcc-internal-format
-msgid "unknown lam type %qs"
+msgid "unknown TLS model %qs"
 msgstr ""
 
-#: config/i386/i386.opt:1359
+#: common.opt:3198
 #, gcc-internal-format
-msgid ""
-"%<-mevex512%> will be deprecated in GCC 16 due to all machines 512 bit "
-"vector size supported"
+msgid "unknown trampoline implementation %qs"
 msgstr ""
 
-#: config/i386/i386.opt:1367 config/i386/i386.opt:1372
+#: common.opt:3532
 #, gcc-internal-format
-msgid ""
-"%<-mavx10.1%> is aliased to 512 bit since GCC14.3 and GCC15.1 while %<-"
-"mavx10.1-256%> and %<-mavx10.1-512%> will be deprecated in GCC 16 due to all "
-"machines 512 bit vector size supported"
+msgid "unknown vectorizer cost model %qs"
 msgstr ""
 
-#: config/avr/avr.opt:34
+#: common.opt:3563
 #, gcc-internal-format
-msgid "missing device or architecture after %qs"
+msgid "unrecognized automatic variable initialization type %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.opt:312
+#: common.opt:3589
 #, gcc-internal-format
-msgid "%<-mvrsave=no%> is deprecated; use %<-mno-vrsave%> instead"
+msgid "unrecognized visibility value %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.opt:316
+#: common.opt:3608
 #, gcc-internal-format
-msgid "%<-mvrsave=yes%> is deprecated; use %<-mvrsave%> instead"
+msgid "unknown vtable verify initialization priority %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.opt:383
+#: common.opt:3664
 #, gcc-internal-format
-msgid "using darwin64 ABI"
+msgid "unrecognized zero init padding bits kind %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.opt:386
+#: algol68/lang.opt:52
 #, gcc-internal-format
-msgid "using old darwin ABI"
+msgid "argument %qs to %<-Whidden-declaration%> not recognized"
 msgstr ""
 
-#: config/rs6000/rs6000.opt:479
+#: algol68/lang.opt:118
 #, gcc-internal-format
-msgid "Do not use %<-mpower8-internal%>; use %<-mcpu=power8%> instead"
+msgid "unknown stropping_regime setting %qs"
 msgstr ""
 
-#: config/fused-madd.opt:22
+#: rust/lang.opt:90
 #, gcc-internal-format
-msgid "%<-mfused-madd%> is deprecated; use %<-ffp-contract=%> instead"
+msgid "unknown crate type: '%qs'"
 msgstr ""
 
-#: config/microblaze/microblaze.opt:87
+#: rust/lang.opt:118
 #, gcc-internal-format
-msgid "%qs is deprecated; use -fstack-check"
+msgid "unknown rust mangling option %qs"
 msgstr ""
 
-#: config/microblaze/microblaze.opt:95
+#: rust/lang.opt:135
 #, gcc-internal-format
-msgid "%qs is deprecated; use -fno-zero-initialized-in-bss"
+msgid "unknown rust edition %qs"
 msgstr ""
 
-#: config/arc/arc.opt:169 config/arc/arc.opt:333 config/arc/arc.opt:337
-#: config/arc/arc.opt:341 config/arc/arc.opt:348 config/arc/arc.opt:352
-#: config/arc/arc.opt:356 config/arc/arc.opt:360 config/arc/arc.opt:363
-#: config/arc/arc.opt:366 config/arc/arc.opt:383
+#: rust/lang.opt:163
 #, gcc-internal-format
-msgid "%qs is deprecated"
+msgid "unknown rust compile-until %qs"
 msgstr ""
 
-#: lto/lang.opt:28
+#: rust/lang.opt:220
 #, gcc-internal-format
-msgid "unknown linker output %qs"
+msgid "unknown panic strategy %qs"
 msgstr ""
 
-#: common.opt:1689
+#: c-family/c.opt:43 c-family/c.opt:46 c-family/c.opt:197
 #, gcc-internal-format
-msgid "unknown excess precision style %qs"
+msgid "assertion missing after %qs"
 msgstr ""
 
-#: common.opt:1707
+#: c-family/c.opt:59 c-family/c.opt:62 c-family/c.opt:179 c-family/c.opt:182
+#: c-family/c.opt:209 c-family/c.opt:292
 #, gcc-internal-format
-msgid ""
-"unknown specification for the set of FLT_EVAL_METHOD values to permit %qs"
+msgid "macro name missing after %qs"
 msgstr ""
 
-#: common.opt:1751
+#: c-family/c.opt:78 c-family/c.opt:81 c-family/c.opt:99 c-family/c.opt:102
+#: c-family/c.opt:105 c-family/c.opt:108 c-family/c.opt:216 c-family/c.opt:228
+#: c-family/c.opt:284 c-family/c.opt:2554 c-family/c.opt:2574
+#: c-family/c.opt:2578 c-family/c.opt:2582
 #, gcc-internal-format
-msgid "unknown floating point contraction style %qs"
+msgid "missing path after %qs"
 msgstr ""
 
-#: common.opt:1927
+#: c-family/c.opt:268 c-family/c.opt:272
 #, gcc-internal-format
-msgid "unknown hardcfr noreturn checking level %qs"
+msgid "missing makefile target after %qs"
 msgstr ""
 
-#: common.opt:1962
+#: c-family/c.opt:276
 #, gcc-internal-format
-msgid "unknown Stack Reuse Level %qs"
+msgid "missing format after %qs"
 msgstr ""
 
-#: common.opt:2034
+#: c-family/c.opt:280
 #, gcc-internal-format
-msgid "unavailable stringop for inlining %qs"
+msgid "missing output path after %qs"
 msgstr ""
 
-#: common.opt:2066
+#: c-family/c.opt:328
 #, gcc-internal-format
-msgid "unknown Control-Flow Protection Level %qs"
+msgid "argument %qs to %<-Waligned-new%> not recognized"
 msgstr ""
 
-#: common.opt:2180
+#: c-family/c.opt:427
 #, gcc-internal-format
-msgid "unknown IRA algorithm %qs"
+msgid "argument %qs to %<-Wbidi-chars%> not recognized"
 msgstr ""
 
-#: common.opt:2193
+#: c-family/c.opt:971
 #, gcc-internal-format
-msgid "unknown IRA region %qs"
+msgid "argument %qs to %<-Wleading-whitespace=%> not recognized"
 msgstr ""
 
-#: common.opt:2279 params.opt:469
+#: c-family/c.opt:1172
 #, gcc-internal-format
-msgid "unknown LTO partitioning model %qs"
+msgid "argument %qs to %<-Wnormalized%> not recognized"
 msgstr ""
 
-#: common.opt:2406
+#: c-family/c.opt:1552
 #, gcc-internal-format
-msgid "targets missing after %qs"
+msgid "argument %qs to %<-Wtrailing-whitespace=%> not recognized"
 msgstr ""
 
-#: common.opt:2409
+#: c-family/c.opt:1880
 #, gcc-internal-format
-msgid "options or targets=options missing after %qs"
+msgid "no class name specified with %qs"
 msgstr ""
 
-#: common.opt:2417
+#: c-family/c.opt:1910
 #, gcc-internal-format
-msgid "unknown offload ABI %qs"
+msgid "unrecognized contract evaluation semantic %qs"
 msgstr ""
 
-#: common.opt:2426
+#: c-family/c.opt:1942
 #, gcc-internal-format
-msgid "option missing after %qs"
+msgid "unrecognized client contract check option %qs"
 msgstr ""
 
-#: common.opt:2603
+#: c-family/c.opt:1958
 #, gcc-internal-format
-msgid "unknown profile reproducibility method %qs"
+msgid "argument %qs must be either %<on%> or %<off%>"
 msgstr ""
 
-#: common.opt:2619
+#: c-family/c.opt:2078
 #, gcc-internal-format
-msgid "unknown profile update method %qs"
+msgid ""
+"%<-fhandle-exceptions%> has been renamed %<-fexceptions%> (and is now on by "
+"default)"
 msgstr ""
 
-#: common.opt:2728
+#: c-family/c.opt:2153
 #, gcc-internal-format
-msgid "unknown Live-Patching Level %qs"
+msgid "missing mapper"
 msgstr ""
 
-#: common.opt:2761
+#: c-family/c.opt:2181
 #, gcc-internal-format
-msgid "unknown basic block reordering algorithm %qs"
+msgid "missing header name"
 msgstr ""
 
-#: common.opt:3097
+#: c-family/c.opt:2189
 #, gcc-internal-format
-msgid "unknown TLS model %qs"
+msgid "missing module name"
 msgstr ""
 
-#: common.opt:3130
+#: c-family/c.opt:2236
 #, gcc-internal-format
-msgid "unknown trampoline implementation %qs"
+msgid "unrecognized ivar visibility value %qs"
 msgstr ""
 
-#: common.opt:3452
+#: c-family/c.opt:2418
 #, gcc-internal-format
-msgid "unknown vectorizer cost model %qs"
+msgid "unrecognized scalar storage order value %qs"
 msgstr ""
 
-#: common.opt:3483
+#: cobol/lang.opt:51
 #, gcc-internal-format
-msgid "unrecognized automatic variable initialization type %qs"
+msgid "Unrecognized COBOL dialect name: %qs"
 msgstr ""
 
-#: common.opt:3509
+#: d/lang.opt:201
 #, gcc-internal-format
-msgid "unrecognized visibility value %qs"
+msgid "unknown array bounds setting %qs"
 msgstr ""
 
-#: common.opt:3528
+#: d/lang.opt:243
 #, gcc-internal-format
-msgid "unknown vtable verify initialization priority %qs"
+msgid "unknown checkaction setting %qs"
 msgstr ""
 
-#: common.opt:3584
+#: d/lang.opt:303
 #, gcc-internal-format
-msgid "unrecognized zero init padding bits kind %qs"
+msgid "unknown C++ standard %qs"
 msgstr ""
 
-#: params.opt:936
+#: attr-callback.cc:199
 #, gcc-internal-format
-msgid "unknown ranger debug mode %qs"
+msgid "%qE attribute can only be used on functions"
 msgstr ""
 
-#: params.opt:1127
+#: attr-callback.cc:207
 #, gcc-internal-format
-msgid "unknown threader debug mode %qs"
+msgid ""
+"argument specifying callback function position is not an integer constant"
+msgstr ""
+
+#: attr-callback.cc:227
+#, gcc-internal-format
+msgid "callback function position cannot be marked as unknown"
+msgstr ""
+
+#: attr-callback.cc:235
+#, gcc-internal-format
+msgid "callback function position out of range"
+msgstr ""
+
+#: attr-callback.cc:246
+#, gcc-internal-format
+msgid "could not retrieve callback function from arguments"
+msgstr ""
+
+#: attr-callback.cc:255
+#, gcc-internal-format, gfc-internal-format
+msgid "argument no. %d is not an address of a function"
+msgstr ""
+
+#: attr-callback.cc:275
+#, gcc-internal-format, gfc-internal-format
+msgid "argument number mismatch, %d expected, got %d"
+msgstr ""
+
+#: attr-callback.cc:293
+#, gcc-internal-format, gfc-internal-format
+msgid "argument no. %d is not an integer constant"
+msgstr ""
+
+#: attr-callback.cc:311
+#, gcc-internal-format, gfc-internal-format
+msgid "callback argument index %d is out of range"
+msgstr ""
+
+#: attr-callback.cc:324
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"argument type at index %d is not compatible with callback argument type at "
+"index %d"
+msgstr ""
+
+#: attr-callback.cc:339
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"function declaration has multiple callback attributes describing argument "
+"no. %d"
 msgstr ""
 
-#: attribs.cc:244 attribs.cc:267 attribs.cc:280
+#: attribs.cc:245 attribs.cc:268 attribs.cc:281
 #, gcc-internal-format
 msgid "wrong argument to ignored attributes"
 msgstr ""
 
-#: attribs.cc:245
+#: attribs.cc:246
 #, gcc-internal-format
 msgid "valid format is %<ns::attr%> or %<ns::%>"
 msgstr ""
 
-#: attribs.cc:526
+#: attribs.cc:527
 #, gcc-internal-format
 msgid ""
 "ignoring attribute %qE in declaration of a built-in function %qD because it "
 "conflicts with attribute %qs"
 msgstr ""
 
-#: attribs.cc:532 c-family/c-attribs.cc:1343 c-family/c-attribs.cc:1387
+#: attribs.cc:533 c-family/c-attribs.cc:1387 c-family/c-attribs.cc:1431
 #, gcc-internal-format
 msgid "ignoring attribute %qE because it conflicts with attribute %qs"
 msgstr ""
 
-#: attribs.cc:538 c-family/c-attribs.cc:1053 c-family/c-attribs.cc:2762
-#: c-family/c-attribs.cc:3318 c-family/c-attribs.cc:5282
-#: c-family/c-attribs.cc:5375 cp/decl.cc:17063 cp/decl.cc:17114
-#: cp/friend.cc:319 cp/tree.cc:5394
+#: attribs.cc:539 c-family/c-attribs.cc:1086 c-family/c-attribs.cc:2807
+#: c-family/c-attribs.cc:3397 c-family/c-attribs.cc:5472
+#: c-family/c-attribs.cc:5565 cp/contracts.cc:595 cp/decl.cc:18233
+#: cp/decl.cc:18284 cp/friend.cc:319 cp/tree.cc:5723
 #, gcc-internal-format
 msgid "previous declaration here"
 msgstr ""
 
 #. Warn about and ignore all others for now, but store them.
-#: attribs.cc:738 c-family/c-attribs.cc:4391 objc/objc-act.cc:5134
+#: attribs.cc:739 c-family/c-attribs.cc:4471 objc/objc-act.cc:5134
 #: objc/objc-act.cc:7125 objc/objc-act.cc:8323 objc/objc-act.cc:8379
 #, gcc-internal-format
 msgid "%qE attribute directive ignored"
 msgstr ""
 
-#: attribs.cc:748
+#: attribs.cc:749
 #, gcc-internal-format
 msgid "%<%E::%E%> scoped attribute directive ignored"
 msgstr ""
 
-#: attribs.cc:761 c/c-parser.cc:2144 cp/cp-gimplify.cc:3704
+#: attribs.cc:762 c/c-parser.cc:2289 cp/cp-gimplify.cc:4115
 #, gcc-internal-format
 msgid "wrong number of arguments specified for %qE attribute"
 msgstr ""
 
-#: attribs.cc:764
+#: attribs.cc:765
 #, gcc-internal-format, gfc-internal-format
 msgid "expected %i or more, found %i"
 msgstr ""
 
-#: attribs.cc:767 c/c-parser.cc:2147 cp/cp-gimplify.cc:3706
+#: attribs.cc:768 c/c-parser.cc:2292 cp/cp-gimplify.cc:4117
 #, gcc-internal-format, gfc-internal-format
 msgid "expected %i, found %i"
 msgstr ""
 
-#: attribs.cc:770
+#: attribs.cc:771
 #, gcc-internal-format, gfc-internal-format
 msgid "expected between %i and %i, found %i"
 msgstr ""
 
-#: attribs.cc:790 c-family/c-attribs.cc:5144
+#: attribs.cc:791 c-family/c-attribs.cc:5334
 #, gcc-internal-format
 msgid "%qE attribute does not apply to types"
 msgstr ""
 
-#: attribs.cc:838
+#: attribs.cc:839
 #, gcc-internal-format
 msgid "%qE attribute only applies to function types"
 msgstr ""
 
-#: attribs.cc:848
+#: attribs.cc:849
 #, gcc-internal-format
 msgid "type attributes ignored after type is already defined"
 msgstr ""
@@ -25386,355 +26477,506 @@ msgstr ""
 #. is a constraint violation if it is not one of the known
 #. standard attributes.  Diagnose it here with a pedwarn and
 #. then discard it to prevent a duplicate warning later.
-#: attribs.cc:942 attribs.cc:1933 attribs.cc:1943 attribs.cc:1953
-#: c-family/c-attribs.cc:1081 c-family/c-attribs.cc:1234
-#: c-family/c-attribs.cc:1253 c-family/c-attribs.cc:1271
-#: c-family/c-attribs.cc:1286 c-family/c-attribs.cc:1314
-#: c-family/c-attribs.cc:1358 c-family/c-attribs.cc:1402
-#: c-family/c-attribs.cc:1443 c-family/c-attribs.cc:1474
-#: c-family/c-attribs.cc:1490 c-family/c-attribs.cc:1507
-#: c-family/c-attribs.cc:1523 c-family/c-attribs.cc:1540
-#: c-family/c-attribs.cc:1565 c-family/c-attribs.cc:1581
-#: c-family/c-attribs.cc:1596 c-family/c-attribs.cc:1693
-#: c-family/c-attribs.cc:1710 c-family/c-attribs.cc:1728
-#: c-family/c-attribs.cc:1753 c-family/c-attribs.cc:1778
-#: c-family/c-attribs.cc:1801 c-family/c-attribs.cc:1818
-#: c-family/c-attribs.cc:1847 c-family/c-attribs.cc:1868
-#: c-family/c-attribs.cc:1889 c-family/c-attribs.cc:1916
-#: c-family/c-attribs.cc:1947 c-family/c-attribs.cc:1976
-#: c-family/c-attribs.cc:2030 c-family/c-attribs.cc:2083
-#: c-family/c-attribs.cc:2149 c-family/c-attribs.cc:2207
-#: c-family/c-attribs.cc:2296 c-family/c-attribs.cc:2326
-#: c-family/c-attribs.cc:2377 c-family/c-attribs.cc:2974
-#: c-family/c-attribs.cc:3173 c-family/c-attribs.cc:3234
-#: c-family/c-attribs.cc:3471 c-family/c-attribs.cc:3551
-#: c-family/c-attribs.cc:3703 c-family/c-attribs.cc:4158
-#: c-family/c-attribs.cc:4224 c-family/c-attribs.cc:4260
-#: c-family/c-attribs.cc:4315 c-family/c-attribs.cc:4544
-#: c-family/c-attribs.cc:4565 c-family/c-attribs.cc:4654
-#: c-family/c-attribs.cc:4686 c-family/c-attribs.cc:4751
-#: c-family/c-attribs.cc:4957 c-family/c-attribs.cc:5146
-#: c-family/c-attribs.cc:5910 c-family/c-attribs.cc:5929
-#: c-family/c-attribs.cc:5952 c-family/c-attribs.cc:5991
-#: c-family/c-attribs.cc:6073 c-family/c-attribs.cc:6105
-#: c-family/c-attribs.cc:6147 c-family/c-attribs.cc:6163
-#: c-family/c-attribs.cc:6335 c-family/c-attribs.cc:6347
-#: c-family/c-common.cc:6235 c-family/c-common.cc:6238 config/darwin.cc:2208
-#: config/arm/arm.cc:7515 config/arm/arm.cc:7542 config/arm/arm.cc:7559
-#: config/avr/avr.cc:11304 config/csky/csky.cc:6498 config/csky/csky.cc:6519
-#: config/h8300/h8300.cc:4972 config/h8300/h8300.cc:4996
-#: config/i386/i386-options.cc:3774 config/i386/i386-options.cc:3932
-#: config/i386/i386-options.cc:4164 config/i386/i386-options.cc:4194
-#: config/ia64/ia64.cc:799 config/loongarch/loongarch.cc:8197
-#: config/rs6000/rs6000.cc:20745 ada/gcc-interface/utils.cc:6900
-#: ada/gcc-interface/utils.cc:6916 ada/gcc-interface/utils.cc:7013
-#: ada/gcc-interface/utils.cc:7030 ada/gcc-interface/utils.cc:7047
-#: ada/gcc-interface/utils.cc:7062 ada/gcc-interface/utils.cc:7078
-#: ada/gcc-interface/utils.cc:7104 ada/gcc-interface/utils.cc:7173
-#: ada/gcc-interface/utils.cc:7200 ada/gcc-interface/utils.cc:7245
-#: ada/gcc-interface/utils.cc:7266 ada/gcc-interface/utils.cc:7314
-#: ada/gcc-interface/utils.cc:7330 ada/gcc-interface/utils.cc:7364
-#: c/c-decl.cc:4952 c/c-decl.cc:4955 c/c-decl.cc:4982 c/c-parser.cc:6097
-#: cp/tree.cc:5062 cp/tree.cc:5561 d/d-attribs.cc:483 d/d-attribs.cc:702
+#: attribs.cc:943 attribs.cc:1956 attribs.cc:1966 attribs.cc:1976
+#: c-family/c-attribs.cc:1114 c-family/c-attribs.cc:1278
+#: c-family/c-attribs.cc:1297 c-family/c-attribs.cc:1315
+#: c-family/c-attribs.cc:1330 c-family/c-attribs.cc:1358
+#: c-family/c-attribs.cc:1402 c-family/c-attribs.cc:1446
+#: c-family/c-attribs.cc:1488 c-family/c-attribs.cc:1519
+#: c-family/c-attribs.cc:1535 c-family/c-attribs.cc:1552
+#: c-family/c-attribs.cc:1568 c-family/c-attribs.cc:1585
+#: c-family/c-attribs.cc:1610 c-family/c-attribs.cc:1626
+#: c-family/c-attribs.cc:1641 c-family/c-attribs.cc:1738
+#: c-family/c-attribs.cc:1755 c-family/c-attribs.cc:1773
+#: c-family/c-attribs.cc:1798 c-family/c-attribs.cc:1823
+#: c-family/c-attribs.cc:1846 c-family/c-attribs.cc:1863
+#: c-family/c-attribs.cc:1892 c-family/c-attribs.cc:1913
+#: c-family/c-attribs.cc:1934 c-family/c-attribs.cc:1961
+#: c-family/c-attribs.cc:1992 c-family/c-attribs.cc:2021
+#: c-family/c-attribs.cc:2075 c-family/c-attribs.cc:2128
+#: c-family/c-attribs.cc:2194 c-family/c-attribs.cc:2252
+#: c-family/c-attribs.cc:2341 c-family/c-attribs.cc:2371
+#: c-family/c-attribs.cc:2422 c-family/c-attribs.cc:3053
+#: c-family/c-attribs.cc:3252 c-family/c-attribs.cc:3313
+#: c-family/c-attribs.cc:3550 c-family/c-attribs.cc:3630
+#: c-family/c-attribs.cc:3782 c-family/c-attribs.cc:4238
+#: c-family/c-attribs.cc:4304 c-family/c-attribs.cc:4340
+#: c-family/c-attribs.cc:4395 c-family/c-attribs.cc:4624
+#: c-family/c-attribs.cc:4645 c-family/c-attribs.cc:4734
+#: c-family/c-attribs.cc:4766 c-family/c-attribs.cc:4831
+#: c-family/c-attribs.cc:5037 c-family/c-attribs.cc:5336
+#: c-family/c-attribs.cc:6196 c-family/c-attribs.cc:6215
+#: c-family/c-attribs.cc:6238 c-family/c-attribs.cc:6277
+#: c-family/c-attribs.cc:6359 c-family/c-attribs.cc:6391
+#: c-family/c-attribs.cc:6448 c-family/c-attribs.cc:6464
+#: c-family/c-attribs.cc:6636 c-family/c-attribs.cc:6648
+#: c-family/c-common.cc:6382 c-family/c-common.cc:6385 config/darwin.cc:2258
+#: config/arm/arm.cc:7480 config/arm/arm.cc:7507 config/arm/arm.cc:7524
+#: config/avr/avr.cc:11372 config/csky/csky.cc:6497 config/csky/csky.cc:6518
+#: config/h8300/h8300.cc:5025 config/h8300/h8300.cc:5049
+#: config/i386/i386-options.cc:3617 config/i386/i386-options.cc:3811
+#: config/i386/i386-options.cc:4084 config/i386/i386-options.cc:4114
+#: config/ia64/ia64.cc:800 config/loongarch/loongarch.cc:8671
+#: config/rs6000/rs6000.cc:20756 ada/gcc-interface/utils.cc:7153
+#: ada/gcc-interface/utils.cc:7169 ada/gcc-interface/utils.cc:7266
+#: ada/gcc-interface/utils.cc:7283 ada/gcc-interface/utils.cc:7300
+#: ada/gcc-interface/utils.cc:7315 ada/gcc-interface/utils.cc:7331
+#: ada/gcc-interface/utils.cc:7357 ada/gcc-interface/utils.cc:7426
+#: ada/gcc-interface/utils.cc:7453 ada/gcc-interface/utils.cc:7498
+#: ada/gcc-interface/utils.cc:7519 ada/gcc-interface/utils.cc:7567
+#: ada/gcc-interface/utils.cc:7583 ada/gcc-interface/utils.cc:7617
+#: c/c-decl.cc:5116 c/c-decl.cc:5119 c/c-decl.cc:5146 c/c-parser.cc:6283
+#: cp/tree.cc:5374 cp/tree.cc:5879 d/d-attribs.cc:483 d/d-attribs.cc:702
 #: d/d-attribs.cc:723 d/d-attribs.cc:739 d/d-attribs.cc:756 d/d-attribs.cc:788
 #: d/d-attribs.cc:917 d/d-attribs.cc:976 d/d-attribs.cc:992 d/d-attribs.cc:1008
 #: d/d-attribs.cc:1157 d/d-attribs.cc:1170 d/d-attribs.cc:1387
-#: d/d-attribs.cc:1405 d/d-attribs.cc:1452 d/d-attribs.cc:1490
-#: d/d-attribs.cc:1506 d/d-attribs.cc:1563 d/d-attribs.cc:1591
-#: jit/dummy-frontend.cc:285 jit/dummy-frontend.cc:319
-#: jit/dummy-frontend.cc:614 jit/dummy-frontend.cc:699
-#: jit/dummy-frontend.cc:720 jit/dummy-frontend.cc:739
-#: jit/dummy-frontend.cc:770 jit/dummy-frontend.cc:784
-#: jit/dummy-frontend.cc:827 jit/dummy-frontend.cc:847
-#: jit/dummy-frontend.cc:908 lto/lto-lang.cc:306 rust/rust-attribs.cc:171
+#: d/d-attribs.cc:1405 d/d-attribs.cc:1453 d/d-attribs.cc:1491
+#: d/d-attribs.cc:1507 d/d-attribs.cc:1564 d/d-attribs.cc:1592
+#: jit/dummy-frontend.cc:284 jit/dummy-frontend.cc:318
+#: jit/dummy-frontend.cc:613 jit/dummy-frontend.cc:698
+#: jit/dummy-frontend.cc:719 jit/dummy-frontend.cc:738
+#: jit/dummy-frontend.cc:769 jit/dummy-frontend.cc:783
+#: jit/dummy-frontend.cc:826 jit/dummy-frontend.cc:846
+#: jit/dummy-frontend.cc:907 lto/lto-lang.cc:306 rust/rust-attribs.cc:190
+#: rust/rust-attribs.cc:243 rust/rust-attribs.cc:259 rust/rust-attribs.cc:337
+#: rust/rust-attribs.cc:381 rust/rust-attribs.cc:410 rust/rust-attribs.cc:429
+#: rust/rust-attribs.cc:441
 #, gcc-internal-format
 msgid "%qE attribute ignored"
 msgstr ""
 
-#: attribs.cc:1221
-#, gcc-internal-format
-msgid "missing %<target%> attribute for multi-versioned %qD"
-msgstr ""
-
-#: attribs.cc:1224 cp/decl.cc:1359 cp/decl.cc:2371 cp/decl.cc:2419
-#: cp/decl.cc:2435 cp/decl.cc:3134 cp/decl.cc:3586
-#, gcc-internal-format
-msgid "previous declaration of %qD"
-msgstr ""
-
-#: attribs.cc:1332
+#: attribs.cc:1323
 #, gcc-internal-format
 msgid "ignoring attributes applied to %qT after definition"
 msgstr ""
 
-#: attribs.cc:1864
+#: attribs.cc:1887
 #, gcc-internal-format
 msgid "%q+D already declared with dllexport attribute: dllimport ignored"
 msgstr ""
 
-#: attribs.cc:1876
+#: attribs.cc:1899
 #, gcc-internal-format
 msgid ""
 "%q+D redeclared without dllimport attribute after being referenced with dll "
 "linkage"
 msgstr ""
 
-#: attribs.cc:1890
+#: attribs.cc:1913
 #, gcc-internal-format
 msgid "%q+D redeclared without dllimport attribute: previous dllimport ignored"
 msgstr ""
 
-#: attribs.cc:1971
+#: attribs.cc:1994
 #, gcc-internal-format
 msgid "inline function %q+D declared as dllimport: attribute ignored"
 msgstr ""
 
-#: attribs.cc:1979
+#: attribs.cc:2002
 #, gcc-internal-format
 msgid "function %q+D definition is marked dllimport"
 msgstr ""
 
-#: attribs.cc:1987
+#: attribs.cc:2010
 #, gcc-internal-format
 msgid "variable %q+D definition is marked dllimport"
 msgstr ""
 
-#: attribs.cc:2018
+#: attribs.cc:2016
+#, gcc-internal-format
+msgid "thread-local variable %q+D declared as dllimport"
+msgstr ""
+
+#: attribs.cc:2046
+#, gcc-internal-format
+msgid "thread-local variable %q+D declared as dllexport"
+msgstr ""
+
+#: attribs.cc:2054
 #, gcc-internal-format
 msgid "external linkage required for symbol %q+D because of %qE attribute"
 msgstr ""
 
-#: attribs.cc:2032
+#: attribs.cc:2068
 #, gcc-internal-format
 msgid ""
 "%qE implies default visibility, but %qD has already been declared with a "
 "different visibility"
 msgstr ""
 
-#: attribs.cc:2330
+#: attribs.cc:2366
 msgid "%qD specifies more restrictive attribute than its target %qD: %e"
 msgid_plural ""
 "%qD specifies more restrictive attributes than its target %qD: %e"
 msgstr[0] ""
 msgstr[1] ""
 
-#: attribs.cc:2336 attribs.cc:2358
+#: attribs.cc:2372 attribs.cc:2394
 #, gcc-internal-format
 msgid "%qD target declared here"
 msgstr ""
 
-#: attribs.cc:2352
+#: attribs.cc:2388
 msgid "%qD specifies less restrictive attribute than its target %qD: %e"
 msgid_plural ""
 "%qD specifies less restrictive attributes than its target %qD: %e"
 msgstr[0] ""
 msgstr[1] ""
 
-#: auto-profile.cc:367
+#: auto-profile.cc:823
+#, gcc-internal-format, gfc-internal-format
+msgid "auto-profile cannot encode offset %i that exceeds 16 bytes"
+msgstr ""
+
+#: auto-profile.cc:827
+#, gcc-internal-format
+msgid "location offset is related to"
+msgstr ""
+
+#: auto-profile.cc:830
+#, gcc-internal-format
+msgid "auto-profile cannot encode discriminators that exceeds 16 bytes"
+msgstr ""
+
+#: auto-profile.cc:866
+#, gcc-internal-format
+msgid "auto-profile is not supported for targets with user label prefix"
+msgstr ""
+
+#: auto-profile.cc:1086
+#, gcc-internal-format, gfc-internal-format
+msgid "auto-profile contains invalid symbol name index %d"
+msgstr ""
+
+#: auto-profile.cc:1102
+#, gcc-internal-format, gfc-internal-format
+msgid "auto-profile contains invalid filename index %d"
+msgstr ""
+
+#: auto-profile.cc:1604
+#, gcc-internal-format
+msgid ""
+"auto-profile of %q+F contains inlined function with symbol name %s instead "
+"of symbol name %s"
+msgstr ""
+
+#: auto-profile.cc:1607 auto-profile.cc:1833 auto-profile.cc:1842
+#: auto-profile.cc:1884
+#, gcc-internal-format
+msgid "corresponding call"
+msgstr ""
+
+#: auto-profile.cc:1652
+#, gcc-internal-format
+msgid ""
+"duplicated count information in auto-profile of %q+F with relative location "
+"%i discriminator %i"
+msgstr ""
+
+#: auto-profile.cc:1657
+#, gcc-internal-format
+msgid "corresponding source location"
+msgstr ""
+
+#: auto-profile.cc:1828
+#, gcc-internal-format
+msgid ""
+"duplicated callsite in auto-profile of %q+F with relative location %i, "
+"discriminator %i"
+msgstr ""
+
+#: auto-profile.cc:1836
 #, gcc-internal-format
-msgid "offset exceeds 16 bytes"
+msgid ""
+"both call targets and inline callsite information is present in auto-profile "
+"of function %q+F with relative location %i, discriminator %i"
+msgstr ""
+
+#: auto-profile.cc:1876
+#, gcc-internal-format
+msgid ""
+"auto-profile of %q+F seem to contain lost discriminator %i for call of %s at "
+"relative location %i"
+msgstr ""
+
+#: auto-profile.cc:1920
+#, gcc-internal-format
+msgid ""
+"auto-profile of %q+F contains multiple targets for a direct call with "
+"relative location %i, discriminator %i"
+msgstr ""
+
+#: auto-profile.cc:1936
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"function contains two calls of the same relative location +%i, discriminator "
+"%i, that leads to lost auto-profile"
+msgstr ""
+
+#: auto-profile.cc:1944
+#, gcc-internal-format
+msgid "location of the first call"
+msgstr ""
+
+#: auto-profile.cc:1946
+#, gcc-internal-format
+msgid "location of the second call"
+msgstr ""
+
+#: auto-profile.cc:2000
+#, gcc-internal-format
+msgid ""
+"auto-profile of %q+F contains indirect call targets not associated with an "
+"indirect call statement"
+msgstr ""
+
+#: auto-profile.cc:2005 auto-profile.cc:2052
+#, gcc-internal-format
+msgid "count %<PRIu64> with relative location +%i, discriminator %i"
+msgstr ""
+
+#: auto-profile.cc:2048
+#, gcc-internal-format
+msgid "auto-profile of %q+F contains extra statements"
+msgstr ""
+
+#: auto-profile.cc:2058 auto-profile.cc:2099
+#, gcc-internal-format
+msgid "location is after end of function"
 msgstr ""
 
-#: auto-profile.cc:864
+#: auto-profile.cc:2087
+#, gcc-internal-format
+msgid "auto-profile of %q+F contains extra callsites"
+msgstr ""
+
+#: auto-profile.cc:2092
+#, gcc-internal-format
+msgid ""
+"call of %s with total count %<PRId64>, relative location +%i, discriminator "
+"%i"
+msgstr ""
+
+#: auto-profile.cc:3026
 #, gcc-internal-format
 msgid "Not expected TAG."
 msgstr ""
 
-#: auto-profile.cc:929
+#: auto-profile.cc:3049
+#, gcc-internal-format, gfc-internal-format
+msgid "auto-profile contains duplicated function instance %s"
+msgstr ""
+
+#: auto-profile.cc:3211
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot open profile file %s"
 msgstr ""
 
-#: auto-profile.cc:935
+#: auto-profile.cc:3217
 #, gcc-internal-format
 msgid "AutoFDO profile magic number does not match"
 msgstr ""
 
-#: auto-profile.cc:943
+#: auto-profile.cc:3225
 #, gcc-internal-format, gfc-internal-format
 msgid "AutoFDO profile version %u does not match %u"
 msgstr ""
 
-#: auto-profile.cc:955
+#: auto-profile.cc:3237
+#, gcc-internal-format, gfc-internal-format
+msgid "cannot read summary information from %s"
+msgstr ""
+
+#: auto-profile.cc:3245
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot read string table from %s"
 msgstr ""
 
-#: auto-profile.cc:963
+#: auto-profile.cc:3254
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot read function profile from %s"
 msgstr ""
 
-#: builtins.cc:703
+#: auto-profile.cc:3264
+#, gcc-internal-format, gfc-internal-format
+msgid "cannot read module profile from %s"
+msgstr ""
+
+#: builtins.cc:702
 #, gcc-internal-format
 msgid "offset %qwi outside bounds of constant string"
 msgstr ""
 
-#: builtins.cc:707 cp/name-lookup.cc:6939
+#: builtins.cc:706 c/c-parser.cc:28574 cp/name-lookup.cc:7082
 #, gcc-internal-format
 msgid "%qE declared here"
 msgstr ""
 
-#: builtins.cc:1312
+#: builtins.cc:1317
 #, gcc-internal-format
 msgid "second argument to %<__builtin_prefetch%> must be a constant"
 msgstr ""
 
-#: builtins.cc:1320
+#: builtins.cc:1325
 #, gcc-internal-format
 msgid "invalid second argument to %<__builtin_prefetch%>; using zero"
 msgstr ""
 
-#: builtins.cc:1330
+#: builtins.cc:1335
 #, gcc-internal-format
 msgid "third argument to %<__builtin_prefetch%> must be a constant"
 msgstr ""
 
-#: builtins.cc:1338
+#: builtins.cc:1343
 #, gcc-internal-format
 msgid "invalid third argument to %<__builtin_prefetch%>; using zero"
 msgstr ""
 
-#: builtins.cc:4081 gimple-fold.cc:2712 gimple-ssa-warn-access.cc:2587
+#: builtins.cc:4090 gimple-fold.cc:2540 gimple-ssa-warn-access.cc:2618
 #: tree-ssa-strlen.cc:3177
 #, gcc-internal-format
 msgid "%qD specified bound %E equals destination size"
 msgstr ""
 
-#: builtins.cc:5330 gimplify.cc:4668
+#: builtins.cc:5338 gimplify.cc:4768
 #, gcc-internal-format
 msgid "too few arguments to function %<va_start%>"
 msgstr ""
 
-#: builtins.cc:5430
+#: builtins.cc:5438
 #, gcc-internal-format
 msgid "invalid argument to %qD"
 msgstr ""
 
-#: builtins.cc:5443
+#: builtins.cc:5451
 #, gcc-internal-format
 msgid "unsupported argument to %qD"
 msgstr ""
 
 #. Warn since no effort is made to ensure that any frame
 #. beyond the current one exists or can be safely reached.
-#: builtins.cc:5451
+#: builtins.cc:5459
 #, gcc-internal-format
 msgid "calling %qD with a nonzero argument is unsafe"
 msgstr ""
 
-#: builtins.cc:6081
+#: builtins.cc:6089
 #, gcc-internal-format
 msgid "both arguments to %<__builtin___clear_cache%> must be pointers"
 msgstr ""
 
-#: builtins.cc:6171
+#: builtins.cc:6179
 #, gcc-internal-format
 msgid "trampoline generated for nested function %qD"
 msgstr ""
 
-#: builtins.cc:6545 builtins.cc:6558
+#: builtins.cc:6553 builtins.cc:6566
 #, gcc-internal-format
 msgid "%qD changed semantics in GCC 4.4"
 msgstr ""
 
-#: builtins.cc:7328
+#: builtins.cc:7340
 #, gcc-internal-format
 msgid "non-constant argument 1 to %qs"
 msgstr ""
 
-#: builtins.cc:7370
+#: builtins.cc:7382
 #, gcc-internal-format
 msgid "non-integer argument 1 to %qs"
 msgstr ""
 
-#: builtins.cc:7434
+#: builtins.cc:7446
 #, gcc-internal-format
 msgid "%<__builtin_thread_pointer%> is not supported on this target"
 msgstr ""
 
-#: builtins.cc:7454
+#: builtins.cc:7466
 #, gcc-internal-format
 msgid "%<__builtin_set_thread_pointer%> is not supported on this target"
 msgstr ""
 
-#: builtins.cc:7513
+#: builtins.cc:7525
 #, gcc-internal-format
 msgid "%qs only supported in OpenACC code"
 msgstr ""
 
-#: builtins.cc:7520
+#: builtins.cc:7532
 #, gcc-internal-format
 msgid "non-constant argument 0 to %qs"
 msgstr ""
 
-#: builtins.cc:7532
+#: builtins.cc:7544
 #, gcc-internal-format
 msgid "illegal argument 0 to %qs"
 msgstr ""
 
+#: builtins.cc:7817 internal-fn.cc:4098
+#, gcc-internal-format
+msgid "third argument to %<crc%> builtins must be a constant"
+msgstr ""
+
 #. All valid uses of __builtin_va_arg_pack () are removed during
 #. inlining.
-#: builtins.cc:8084 expr.cc:12464
+#: builtins.cc:8102 expr.cc:12640
 #, gcc-internal-format
 msgid "invalid use of %<__builtin_va_arg_pack ()%>"
 msgstr ""
 
 #. All valid uses of __builtin_va_arg_pack_len () are removed during
 #. inlining.
-#: builtins.cc:8090
+#: builtins.cc:8108
 #, gcc-internal-format
 msgid "invalid use of %<__builtin_va_arg_pack_len ()%>"
 msgstr ""
 
-#: builtins.cc:8379
+#: builtins.cc:8397
 #, gcc-internal-format
 msgid "%<__builtin_longjmp%> second argument must be 1"
 msgstr ""
 
-#: builtins.cc:9343
+#: builtins.cc:9365
 #, gcc-internal-format
 msgid "target format does not support infinity"
 msgstr ""
 
-#: builtins.cc:11402
+#: builtins.cc:11431
 #, gcc-internal-format
 msgid "%<va_start%> used in function with fixed arguments"
 msgstr ""
 
-#: builtins.cc:11410
+#: builtins.cc:11439
 #, gcc-internal-format
 msgid "wrong number of arguments to function %<va_start%>"
 msgstr ""
 
-#: builtins.cc:11425
+#: builtins.cc:11454
 #, gcc-internal-format
 msgid "%<__builtin_next_arg%> called without an argument"
 msgstr ""
 
-#: builtins.cc:11430
+#: builtins.cc:11459
 #, gcc-internal-format
 msgid "wrong number of arguments to function %<__builtin_next_arg%>"
 msgstr ""
 
-#: builtins.cc:11463
+#: builtins.cc:11492
 #, gcc-internal-format
 msgid "second parameter of %<va_start%> not last named argument"
 msgstr ""
 
-#: builtins.cc:11476 c/c-parser.cc:11669
+#: builtins.cc:11505 c/c-parser.cc:12018
 #, gcc-internal-format
 msgid ""
 "undefined behavior when second parameter of %<va_start%> is declared with "
 "%<register%> storage"
 msgstr ""
 
-#: builtins.cc:11505
+#: builtins.cc:11534
 #, gcc-internal-format
 msgid "first argument of %qD must be a pointer, second integer constant"
 msgstr ""
 
-#: builtins.cc:11518
+#: builtins.cc:11547
 #, gcc-internal-format
 msgid "last argument of %qD is not integer constant between 0 and 3"
 msgstr ""
@@ -25744,12 +26986,12 @@ msgstr ""
 msgid "cannot tail-call: %s"
 msgstr ""
 
-#: calls.cc:2818
+#: calls.cc:2828
 #, gcc-internal-format
 msgid "function call has aggregate value"
 msgstr ""
 
-#: calls.cc:3561
+#: calls.cc:3566
 #, gcc-internal-format
 msgid "passing too large argument on stack"
 msgstr ""
@@ -25759,307 +27001,302 @@ msgstr ""
 msgid "%<verify_marked_backedges%> failed"
 msgstr ""
 
-#: cfgexpand.cc:2128
+#: cfgexpand.cc:2137
 #, gcc-internal-format
 msgid "total size of local objects is too large"
 msgstr ""
 
-#: cfgexpand.cc:2131 function.cc:1016 varasm.cc:2539
+#: cfgexpand.cc:2140 function.cc:1016 varasm.cc:2585
 #, gcc-internal-format
 msgid "size of variable %q+D is too large"
 msgstr ""
 
-#: cfgexpand.cc:2143
+#: cfgexpand.cc:2152
 #, gcc-internal-format
 msgid "cannot allocate stack for variable %q+D, naked function"
 msgstr ""
 
-#: cfgexpand.cc:3241
-#, gcc-internal-format
-msgid "too many alternatives in %<asm%>"
-msgstr ""
-
-#: cfgexpand.cc:3248
-#, gcc-internal-format
-msgid "operand constraints for %<asm%> differ in number of alternatives"
-msgstr ""
-
-#: cfgexpand.cc:3270
+#: cfgexpand.cc:3293
 #, gcc-internal-format
 msgid "%<asm%> specifier for variable %qE conflicts with %<asm%> clobber list"
 msgstr ""
 
 #. ??? Diagnose during gimplification?
-#: cfgexpand.cc:3301
+#: cfgexpand.cc:3324
 #, gcc-internal-format
 msgid "PIC register clobbered by %qs in %<asm%>"
 msgstr ""
 
 #. ??? Diagnose during gimplification?
-#: cfgexpand.cc:3308
+#: cfgexpand.cc:3331
 #, gcc-internal-format
 msgid "the register %qs cannot be clobbered in %<asm%> for the current target"
 msgstr ""
 
-#: cfgexpand.cc:3321
+#: cfgexpand.cc:3344
 #, gcc-internal-format
 msgid "listing the stack pointer register %qs in a clobber list is deprecated"
 msgstr ""
 
-#: cfgexpand.cc:3323
+#: cfgexpand.cc:3346
 #, gcc-internal-format
 msgid ""
 "the value of the stack pointer after an %<asm%> statement must be the same "
 "as it was before the statement"
 msgstr ""
 
-#: cfgexpand.cc:3393 varasm.cc:1718
+#: cfgexpand.cc:3416 varasm.cc:1750
 #, gcc-internal-format
 msgid "more than %d operands in %<asm%>"
 msgstr ""
 
 #. ??? Diagnose during gimplification?
-#: cfgexpand.cc:3446
+#: cfgexpand.cc:3465
 #, gcc-internal-format
 msgid "unknown register name %qs in %<asm%>"
 msgstr ""
 
-#: cfgexpand.cc:3518
+#: cfgexpand.cc:3538
 #, gcc-internal-format
 msgid "invalid hard register usage between output operands"
 msgstr ""
 
-#: cfgexpand.cc:3545
+#: cfgexpand.cc:3565
 #, gcc-internal-format
 msgid ""
 "invalid hard register usage between output operand and matching constraint "
 "operand"
 msgstr ""
 
-#: cfgexpand.cc:3553
+#: cfgexpand.cc:3573 stmt.cc:687 stmt.cc:766
 #, gcc-internal-format
 msgid ""
 "invalid hard register usage between earlyclobber operand and input operand"
 msgstr ""
 
-#: cfgexpand.cc:3638 varasm.cc:1757
+#: cfgexpand.cc:3658 varasm.cc:1790
 #, gcc-internal-format, gfc-internal-format
 msgid "output number %d not directly addressable"
 msgstr ""
 
-#: cfgexpand.cc:3734 varasm.cc:1810
+#: cfgexpand.cc:3754 varasm.cc:1843
 #, gcc-internal-format
 msgid "%<asm%> operand %d probably does not match constraints"
 msgstr ""
 
-#: cfgexpand.cc:3927
+#: cfgexpand.cc:3956
 #, gcc-internal-format
 msgid "%<asm%> clobber conflict with output operand"
 msgstr ""
 
-#: cfgexpand.cc:3932
+#: cfgexpand.cc:3961
 #, gcc-internal-format
 msgid "%<asm%> clobber conflict with input operand"
 msgstr ""
 
-#: cfgexpand.cc:7029
+#: cfgexpand.cc:7105
 #, gcc-internal-format
 msgid "stack protector not protecting local variables: variable length buffer"
 msgstr ""
 
-#: cfgexpand.cc:7033
+#: cfgexpand.cc:7109
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "stack protector not protecting function: all local arrays are less than %d "
 "bytes long"
 msgstr ""
 
-#: cfgexpand.cc:7322
+#: cfgexpand.cc:7423
 #, gcc-internal-format
 msgid "patchable function entry %wu exceeds size %wu"
 msgstr ""
 
-#: cfghooks.cc:120
+#: cfghooks.cc:123
 #, gcc-internal-format, gfc-internal-format
 msgid "bb %d on wrong place"
 msgstr ""
 
-#: cfghooks.cc:126
+#: cfghooks.cc:129
 #, gcc-internal-format, gfc-internal-format
 msgid "prev_bb of %d should be %d, not %d"
 msgstr ""
 
-#: cfghooks.cc:143
+#: cfghooks.cc:146
 #, gcc-internal-format, gfc-internal-format
 msgid "verify_flow_info: Block %i has loop_father, but there are no loops"
 msgstr ""
 
-#: cfghooks.cc:149
+#: cfghooks.cc:152
 #, gcc-internal-format, gfc-internal-format
 msgid "verify_flow_info: Block %i lacks loop_father"
 msgstr ""
 
-#: cfghooks.cc:155
+#: cfghooks.cc:158
 #, gcc-internal-format, gfc-internal-format
 msgid "verify_flow_info: Wrong count of block %i"
 msgstr ""
 
-#: cfghooks.cc:163
+#: cfghooks.cc:166
 #, gcc-internal-format, gfc-internal-format
 msgid "verify_flow_info: Missing count of block %i"
 msgstr ""
 
-#: cfghooks.cc:169
+#: cfghooks.cc:172
 #, gcc-internal-format, gfc-internal-format
 msgid "verify_flow_info: unallocated flag set on BB %d"
 msgstr ""
 
-#: cfghooks.cc:177
+#: cfghooks.cc:180
 #, gcc-internal-format, gfc-internal-format
 msgid "verify_flow_info: Duplicate edge %i->%i"
 msgstr ""
 
-#: cfghooks.cc:186
+#: cfghooks.cc:189
 #, gcc-internal-format, gfc-internal-format
 msgid "Uninitialized probability of edge %i->%i"
 msgstr ""
 
-#: cfghooks.cc:192
+#: cfghooks.cc:195
 #, gcc-internal-format, gfc-internal-format
 msgid "verify_flow_info: Wrong probability of edge %i->%i"
 msgstr ""
 
-#: cfghooks.cc:204
+#: cfghooks.cc:207
 #, gcc-internal-format, gfc-internal-format
 msgid "verify_flow_info: Basic block %d succ edge is corrupted"
 msgstr ""
 
-#: cfghooks.cc:216
+#: cfghooks.cc:219
 #, gcc-internal-format, gfc-internal-format
 msgid "verify_flow_info: unallocated edge flag set on %d -> %d"
 msgstr ""
 
-#: cfghooks.cc:225
+#: cfghooks.cc:228
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong amount of branch edges after unconditional jump %i"
 msgstr ""
 
-#: cfghooks.cc:233 cfghooks.cc:244
+#: cfghooks.cc:236 cfghooks.cc:247
 #, gcc-internal-format, gfc-internal-format
 msgid "basic block %d pred edge is corrupted"
 msgstr ""
 
-#: cfghooks.cc:245
+#: cfghooks.cc:248
 #, gcc-internal-format, gfc-internal-format
 msgid "its dest_idx should be %d, not %d"
 msgstr ""
 
-#: cfghooks.cc:274
+#: cfghooks.cc:277
 #, gcc-internal-format, gfc-internal-format
 msgid "basic block %i edge lists are corrupted"
 msgstr ""
 
-#: cfghooks.cc:287
+#: cfghooks.cc:290
 #, gcc-internal-format
 msgid "verify_flow_info failed"
 msgstr ""
 
-#: cfghooks.cc:345
+#: cfghooks.cc:348
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support dump_bb_for_graph"
 msgstr ""
 
-#: cfghooks.cc:388
+#: cfghooks.cc:364
+#, gcc-internal-format, gfc-internal-format
+msgid "%s does not support dump_bb_as_sarif_properties"
+msgstr ""
+
+#: cfghooks.cc:418
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support redirect_edge_and_branch"
 msgstr ""
 
-#: cfghooks.cc:408
+#: cfghooks.cc:438
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support can_remove_branch_p"
 msgstr ""
 
-#: cfghooks.cc:502
+#: cfghooks.cc:532
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support redirect_edge_and_branch_force"
 msgstr ""
 
-#: cfghooks.cc:540
+#: cfghooks.cc:570
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support split_block"
 msgstr ""
 
-#: cfghooks.cc:605
+#: cfghooks.cc:635
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support move_block_after"
 msgstr ""
 
-#: cfghooks.cc:618
+#: cfghooks.cc:648
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support delete_basic_block"
 msgstr ""
 
-#: cfghooks.cc:665
+#: cfghooks.cc:695
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support split_edge"
 msgstr ""
 
-#: cfghooks.cc:743
+#: cfghooks.cc:773
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support create_basic_block"
 msgstr ""
 
-#: cfghooks.cc:784
+#: cfghooks.cc:814
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support can_merge_blocks_p"
 msgstr ""
 
-#: cfghooks.cc:795
+#: cfghooks.cc:825
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support predict_edge"
 msgstr ""
 
-#: cfghooks.cc:804
+#: cfghooks.cc:834
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support predicted_by_p"
 msgstr ""
 
-#: cfghooks.cc:818
+#: cfghooks.cc:848
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support merge_blocks"
 msgstr ""
 
-#: cfghooks.cc:899
+#: cfghooks.cc:938
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support make_forwarder_block"
 msgstr ""
 
-#: cfghooks.cc:1048
+#: cfghooks.cc:1087
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support force_nonfallthru"
 msgstr ""
 
-#: cfghooks.cc:1082
+#: cfghooks.cc:1121
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support can_duplicate_block_p"
 msgstr ""
 
-#: cfghooks.cc:1111
+#: cfghooks.cc:1150
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support duplicate_block"
 msgstr ""
 
-#: cfghooks.cc:1186
+#: cfghooks.cc:1225
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support block_ends_with_call_p"
 msgstr ""
 
-#: cfghooks.cc:1197
+#: cfghooks.cc:1236
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support block_ends_with_condjump_p"
 msgstr ""
 
-#: cfghooks.cc:1215
+#: cfghooks.cc:1254
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support flow_call_edges_add"
 msgstr ""
@@ -26215,670 +27452,707 @@ msgstr ""
 msgid "%d exits recorded for loop %d (having %d exits)"
 msgstr ""
 
-#: cfgrtl.cc:2440
+#: cfgrtl.cc:2434
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "non-cold basic block %d reachable only by paths crossing the cold partition"
 msgstr ""
 
-#: cfgrtl.cc:2560
+#: cfgrtl.cc:2554
 #, gcc-internal-format, gfc-internal-format
 msgid "multiple hot/cold transitions found (bb %i)"
 msgstr ""
 
-#: cfgrtl.cc:2568
+#: cfgrtl.cc:2562
 #, gcc-internal-format
 msgid "partition found but function partition flag not set"
 msgstr ""
 
-#: cfgrtl.cc:2607
+#: cfgrtl.cc:2601
 #, gcc-internal-format
 msgid "verify_flow_info: REG_BR_PROB is set but cfg probability is not"
 msgstr ""
 
-#: cfgrtl.cc:2616
+#: cfgrtl.cc:2610
 #, gcc-internal-format, gfc-internal-format
 msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
 msgstr ""
 
-#: cfgrtl.cc:2638
+#: cfgrtl.cc:2632
 #, gcc-internal-format
 msgid "EDGE_CROSSING incorrectly set across same section"
 msgstr ""
 
-#: cfgrtl.cc:2643
+#: cfgrtl.cc:2637
 #, gcc-internal-format, gfc-internal-format
 msgid "fallthru edge crosses section boundary in bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2649
+#: cfgrtl.cc:2643
 #, gcc-internal-format, gfc-internal-format
 msgid "EH edge crosses section boundary in bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2655
+#: cfgrtl.cc:2649
 #, gcc-internal-format, gfc-internal-format
 msgid "No region crossing jump at section boundary in bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2662
+#: cfgrtl.cc:2656
 #, gcc-internal-format
 msgid "EDGE_CROSSING missing across section boundary"
 msgstr ""
 
-#: cfgrtl.cc:2692
+#: cfgrtl.cc:2686
 #, gcc-internal-format, gfc-internal-format
 msgid "Region crossing jump across same section in bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2699
+#: cfgrtl.cc:2693
 #, gcc-internal-format, gfc-internal-format
 msgid "missing REG_EH_REGION note at the end of bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2704
+#: cfgrtl.cc:2698
 #, gcc-internal-format, gfc-internal-format
 msgid "too many exception handling edges in bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2712
+#: cfgrtl.cc:2706
 #, gcc-internal-format, gfc-internal-format
 msgid "too many outgoing branch edges from bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2717
+#: cfgrtl.cc:2711
 #, gcc-internal-format, gfc-internal-format
 msgid "fallthru edge after unconditional jump in bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2722
+#: cfgrtl.cc:2716
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong number of branch edges after unconditional jump in bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2729
+#: cfgrtl.cc:2723
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong amount of branch edges after conditional jump in bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2735
+#: cfgrtl.cc:2729
 #, gcc-internal-format, gfc-internal-format
 msgid "abnormal call edges for non-call insn in bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2740
+#: cfgrtl.cc:2734
 #, gcc-internal-format, gfc-internal-format
 msgid "sibcall edges for non-call insn in bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2750
+#: cfgrtl.cc:2744
 #, gcc-internal-format, gfc-internal-format
 msgid "abnormal edges for no purpose in bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2761
+#: cfgrtl.cc:2755
 #, gcc-internal-format, gfc-internal-format
 msgid "EH incoming edge mixed with non-EH incoming edges in bb %i"
 msgstr ""
 
-#: cfgrtl.cc:2802 cfgrtl.cc:2812
+#: cfgrtl.cc:2796 cfgrtl.cc:2806
 #, gcc-internal-format, gfc-internal-format
 msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
 msgstr ""
 
-#: cfgrtl.cc:2825
+#: cfgrtl.cc:2819
 #, gcc-internal-format, gfc-internal-format
 msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
 msgstr ""
 
-#: cfgrtl.cc:2835
+#: cfgrtl.cc:2829
 #, gcc-internal-format, gfc-internal-format
 msgid "in basic block %d:"
 msgstr ""
 
-#: cfgrtl.cc:2861
+#: cfgrtl.cc:2855
 #, gcc-internal-format, gfc-internal-format
 msgid "BB_RTL flag not set for block %d"
 msgstr ""
 
-#: cfgrtl.cc:2868
+#: cfgrtl.cc:2862
 #, gcc-internal-format, gfc-internal-format
 msgid "insn %d basic block pointer is %d, should be %d"
 msgstr ""
 
-#: cfgrtl.cc:2879
+#: cfgrtl.cc:2873
 #, gcc-internal-format, gfc-internal-format
 msgid "insn %d in header of bb %d has non-NULL basic block"
 msgstr ""
 
-#: cfgrtl.cc:2887
+#: cfgrtl.cc:2881
 #, gcc-internal-format, gfc-internal-format
 msgid "insn %d in footer of bb %d has non-NULL basic block"
 msgstr ""
 
-#: cfgrtl.cc:2963 cfgrtl.cc:3011
+#: cfgrtl.cc:2957 cfgrtl.cc:3005
 #, gcc-internal-format, gfc-internal-format
 msgid "insn %d outside of basic blocks has non-NULL bb field"
 msgstr ""
 
-#: cfgrtl.cc:2971
+#: cfgrtl.cc:2965
 #, gcc-internal-format, gfc-internal-format
 msgid "end insn %d for block %d not found in the insn stream"
 msgstr ""
 
-#: cfgrtl.cc:2984
+#: cfgrtl.cc:2978
 #, gcc-internal-format, gfc-internal-format
 msgid "insn %d is in multiple basic blocks (%d and %d)"
 msgstr ""
 
-#: cfgrtl.cc:2996
+#: cfgrtl.cc:2990
 #, gcc-internal-format, gfc-internal-format
 msgid "head insn %d for block %d not found in the insn stream"
 msgstr ""
 
-#: cfgrtl.cc:3044
+#: cfgrtl.cc:3038
 #, gcc-internal-format, gfc-internal-format
 msgid "missing barrier after block %i"
 msgstr ""
 
-#: cfgrtl.cc:3060
+#: cfgrtl.cc:3054
 #, gcc-internal-format, gfc-internal-format
 msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
 msgstr ""
 
-#: cfgrtl.cc:3069
+#: cfgrtl.cc:3063
 #, gcc-internal-format, gfc-internal-format
 msgid "verify_flow_info: Incorrect fallthru %i->%i"
 msgstr ""
 
-#: cfgrtl.cc:3071
+#: cfgrtl.cc:3065
 #, gcc-internal-format
 msgid "wrong insn in the fallthru edge"
 msgstr ""
 
-#: cfgrtl.cc:3105
+#: cfgrtl.cc:3099
 #, gcc-internal-format
 msgid "basic blocks not laid down consecutively"
 msgstr ""
 
-#: cfgrtl.cc:3144
+#: cfgrtl.cc:3138
 #, gcc-internal-format, gfc-internal-format
 msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
 msgstr ""
 
-#: cgraph.cc:3266
+#: cgraph.cc:3725
 #, gcc-internal-format
 msgid "caller edge count invalid"
 msgstr ""
 
-#: cgraph.cc:3363
+#: cgraph.cc:3822
 #, gcc-internal-format
 msgid "missing indirect call in speculative call sequence"
 msgstr ""
 
-#: cgraph.cc:3368
+#: cgraph.cc:3827
 #, gcc-internal-format
 msgid "indirect call in speculative call sequence has no speculative flag"
 msgstr ""
 
-#: cgraph.cc:3398
+#: cgraph.cc:3857
 #, gcc-internal-format
 msgid "speculative edges are not adjacent"
 msgstr ""
 
-#: cgraph.cc:3404
+#: cgraph.cc:3863
 #, gcc-internal-format, gfc-internal-format
 msgid "direct call to %s in speculative call sequence has no speculative flag"
 msgstr ""
 
-#: cgraph.cc:3410 cgraph.cc:3440
+#: cgraph.cc:3869 cgraph.cc:3899
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "direct call to %s in speculative call sequence has speculative_id %i out of "
 "range"
 msgstr ""
 
-#: cgraph.cc:3417
+#: cgraph.cc:3876
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "duplicate direct call to %s in speculative call sequence with speculative_id "
 "%i"
 msgstr ""
 
-#: cgraph.cc:3428
+#: cgraph.cc:3887
 #, gcc-internal-format
 msgid ""
 "call stmt hash does not point to first direct edge of speculative call "
 "sequence"
 msgstr ""
 
-#: cgraph.cc:3447
+#: cgraph.cc:3906
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "duplicate reference %s in speculative call sequence with speculative_id %i"
 msgstr ""
 
-#: cgraph.cc:3460
+#: cgraph.cc:3919
 #, gcc-internal-format, gfc-internal-format
 msgid "missing direct call for speculation %i"
 msgstr ""
 
-#: cgraph.cc:3465
+#: cgraph.cc:3924
 #, gcc-internal-format, gfc-internal-format
 msgid "missing ref for speculation %i"
 msgstr ""
 
-#: cgraph.cc:3474
+#: cgraph.cc:3933
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "number of speculative targets %i mismatched with "
 "num_speculative_call_targets %i"
 msgstr ""
 
-#: cgraph.cc:3503
+#: cgraph.cc:3962
 #, gcc-internal-format, gfc-internal-format
 msgid "aux field set for edge %s->%s"
 msgstr ""
 
-#: cgraph.cc:3510
+#: cgraph.cc:3969
 #, gcc-internal-format
 msgid "cgraph count invalid"
 msgstr ""
 
-#: cgraph.cc:3515
+#: cgraph.cc:3974
 #, gcc-internal-format
 msgid "inline clone in same comdat group list"
 msgstr ""
 
-#: cgraph.cc:3520
+#: cgraph.cc:3979
 #, gcc-internal-format
 msgid "inline clone count is not compatible"
 msgstr ""
 
-#: cgraph.cc:3527
+#: cgraph.cc:3986
 #, gcc-internal-format
 msgid "tp_first_run must be non-negative"
 msgstr ""
 
-#: cgraph.cc:3532
+#: cgraph.cc:3991
 #, gcc-internal-format
 msgid "local symbols must be defined"
 msgstr ""
 
-#: cgraph.cc:3537
+#: cgraph.cc:3996
 #, gcc-internal-format
 msgid "externally visible inline clone"
 msgstr ""
 
-#: cgraph.cc:3542
+#: cgraph.cc:4001
 #, gcc-internal-format
 msgid "inline clone with address taken"
 msgstr ""
 
-#: cgraph.cc:3547
+#: cgraph.cc:4006
 #, gcc-internal-format
 msgid "inline clone is forced to output"
 msgstr ""
 
-#: cgraph.cc:3554
+#: cgraph.cc:4011
+#, gcc-internal-format
+msgid "inline clone is referenced by assembly"
+msgstr ""
+
+#: cgraph.cc:4018
 #, gcc-internal-format
 msgid "calls_comdat_local is set outside of a comdat group"
 msgstr ""
 
-#: cgraph.cc:3559
+#: cgraph.cc:4023
 #, gcc-internal-format
 msgid "invalid calls_comdat_local flag"
 msgstr ""
 
-#: cgraph.cc:3566
+#: cgraph.cc:4030
 #, gcc-internal-format
 msgid "malloc attribute should be used for a function that returns a pointer"
 msgstr ""
 
-#: cgraph.cc:3578
+#: cgraph.cc:4042
 #, gcc-internal-format
 msgid "semantic interposition mismatch"
 msgstr ""
 
-#: cgraph.cc:3585
+#: cgraph.cc:4049
 #, gcc-internal-format, gfc-internal-format
 msgid "aux field set for indirect edge from %s"
 msgstr ""
 
-#: cgraph.cc:3591 cgraph.cc:3651
+#: cgraph.cc:4055 cgraph.cc:4122
 #, gcc-internal-format
 msgid "edge count is not compatible with function count"
 msgstr ""
 
-#: cgraph.cc:3599
+#: cgraph.cc:4062
+#, gcc-internal-format
+msgid "edge count is not compatible with inlined to function count"
+msgstr ""
+
+#: cgraph.cc:4070
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "An indirect edge from %s is not marked as indirect or has associated "
 "indirect_info, the corresponding statement is: "
 msgstr ""
 
-#: cgraph.cc:3607 cgraph.cc:3679
+#: cgraph.cc:4078 cgraph.cc:4152
 #, gcc-internal-format
 msgid "edge has both call_stmt and lto_stmt_uid set"
 msgstr ""
 
-#: cgraph.cc:3619
+#: cgraph.cc:4090
 #, gcc-internal-format, gfc-internal-format
 msgid "comdat-local function called by %s outside its comdat"
 msgstr ""
 
-#: cgraph.cc:3629
+#: cgraph.cc:4100
 #, gcc-internal-format
 msgid "inlined_to pointer is wrong"
 msgstr ""
 
-#: cgraph.cc:3634
+#: cgraph.cc:4105
 #, gcc-internal-format
 msgid "multiple inline callers"
 msgstr ""
 
-#: cgraph.cc:3641
+#: cgraph.cc:4112
 #, gcc-internal-format
 msgid "inlined_to pointer set for noninline callers"
 msgstr ""
 
-#: cgraph.cc:3669
+#: cgraph.cc:4142
 #, gcc-internal-format
 msgid "caller edge count does not match BB count"
 msgstr ""
 
-#: cgraph.cc:3700
+#: cgraph.cc:4173
 #, gcc-internal-format
 msgid "indirect call count does not match BB count"
 msgstr ""
 
-#: cgraph.cc:3717
+#: cgraph.cc:4190
 #, gcc-internal-format
 msgid "reference has both stmt and lto_stmt_uid set"
 msgstr ""
 
-#: cgraph.cc:3728
+#: cgraph.cc:4201
 #, gcc-internal-format
 msgid "inlined_to pointer is set but no predecessors found"
 msgstr ""
 
-#: cgraph.cc:3733
+#: cgraph.cc:4206
 #, gcc-internal-format
 msgid "inlined_to pointer refers to itself"
 msgstr ""
 
-#: cgraph.cc:3744
+#: cgraph.cc:4217
 #, gcc-internal-format
 msgid "cgraph_node has wrong clone_of"
 msgstr ""
 
-#: cgraph.cc:3757
+#: cgraph.cc:4230
 #, gcc-internal-format
 msgid "cgraph_node has wrong clone list"
 msgstr ""
 
-#: cgraph.cc:3763
+#: cgraph.cc:4236
 #, gcc-internal-format
 msgid "cgraph_node is in clone list but it is not clone"
 msgstr ""
 
-#: cgraph.cc:3768
+#: cgraph.cc:4241
 #, gcc-internal-format
 msgid "cgraph_node has wrong prev_clone pointer"
 msgstr ""
 
-#: cgraph.cc:3773
+#: cgraph.cc:4246
 #, gcc-internal-format
 msgid "double linked list of clones corrupted"
 msgstr ""
 
-#: cgraph.cc:3785
+#: cgraph.cc:4258
 #, gcc-internal-format
 msgid "Alias has call edges"
 msgstr ""
 
-#: cgraph.cc:3791
+#: cgraph.cc:4264
 #, gcc-internal-format
 msgid "Alias has non-alias reference"
 msgstr ""
 
-#: cgraph.cc:3796
+#: cgraph.cc:4269
 #, gcc-internal-format
 msgid "Alias has more than one alias reference"
 msgstr ""
 
-#: cgraph.cc:3803
+#: cgraph.cc:4276
 #, gcc-internal-format
 msgid "Analyzed alias has no reference"
 msgstr ""
 
-#: cgraph.cc:3812
+#: cgraph.cc:4285
 #, gcc-internal-format
 msgid "No edge out of thunk node"
 msgstr ""
 
-#: cgraph.cc:3817
+#: cgraph.cc:4290
 #, gcc-internal-format
 msgid "More than one edge out of thunk node"
 msgstr ""
 
-#: cgraph.cc:3822
+#: cgraph.cc:4295
 #, gcc-internal-format
 msgid "Thunk is not supposed to have body"
 msgstr ""
 
-#: cgraph.cc:3858
+#: cgraph.cc:4331
 #, gcc-internal-format
 msgid "shared call_stmt:"
 msgstr ""
 
-#: cgraph.cc:3866
+#: cgraph.cc:4344
 #, gcc-internal-format
 msgid "edge points to wrong declaration:"
 msgstr ""
 
-#: cgraph.cc:3875
+#: cgraph.cc:4353
 #, gcc-internal-format
 msgid ""
 "an indirect edge with unknown callee corresponding to a call_stmt with a "
 "known declaration:"
 msgstr ""
 
-#: cgraph.cc:3885
+#: cgraph.cc:4363
 #, gcc-internal-format
 msgid "missing callgraph edge for call stmt:"
 msgstr ""
 
-#: cgraph.cc:3895
+#: cgraph.cc:4373
 #, gcc-internal-format
 msgid "reference to dead statement"
 msgstr ""
 
-#: cgraph.cc:3908
+#: cgraph.cc:4386
+#, gcc-internal-format
+msgid "non-callback edge has callback_id set"
+msgstr ""
+
+#: cgraph.cc:4392
+#, gcc-internal-format
+msgid "edge has both callback and has_callback set"
+msgstr ""
+
+#: cgraph.cc:4400
+#, gcc-internal-format, gfc-internal-format
+msgid "callback edge %s->%s has no callback-carrying"
+msgstr ""
+
+#: cgraph.cc:4428
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"callback edge %s->%s callback edge count mismatch, expected at most %d, "
+"found %d"
+msgstr ""
+
+#: cgraph.cc:4441
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"callback-carrying edge is pointing towards __builtin_unreachable, but its "
+"callback edge %s -> %s is not"
+msgstr ""
+
+#: cgraph.cc:4448
 #, gcc-internal-format, gfc-internal-format
 msgid "edge %s->%s has no corresponding call_stmt"
 msgstr ""
 
-#: cgraph.cc:3920
+#: cgraph.cc:4460
 #, gcc-internal-format, gfc-internal-format
 msgid "an indirect edge from %s has no corresponding call_stmt"
 msgstr ""
 
-#: cgraph.cc:3939 cgraph.cc:3952
+#: cgraph.cc:4479 cgraph.cc:4492
 #, gcc-internal-format
 msgid "missing origin for a node in a nested list"
 msgstr ""
 
-#: cgraph.cc:3944
+#: cgraph.cc:4484
 #, gcc-internal-format
 msgid "origin points to a different parent"
 msgstr ""
 
-#: cgraph.cc:3960
+#: cgraph.cc:4500
 #, gcc-internal-format
 msgid "verify_cgraph_node failed"
 msgstr ""
 
-#: cgraph.cc:4082 varpool.cc:304
+#: cgraph.cc:4622 varpool.cc:300
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: section %s.%d is missing"
 msgstr ""
 
-#: cgraphunit.cc:757
+#: cgraphunit.cc:759
 #, gcc-internal-format
 msgid "duplicate definition of a symbol version"
 msgstr ""
 
-#: cgraphunit.cc:759
+#: cgraphunit.cc:761
 #, gcc-internal-format
 msgid "same version was previously defined here"
 msgstr ""
 
-#: cgraphunit.cc:765
+#: cgraphunit.cc:767
 #, gcc-internal-format
 msgid "symbol needs to be defined to have a version"
 msgstr ""
 
-#: cgraphunit.cc:771
+#: cgraphunit.cc:773
 #, gcc-internal-format
 msgid "common symbol cannot be versioned"
 msgstr ""
 
-#: cgraphunit.cc:777
+#: cgraphunit.cc:779
 #, gcc-internal-format
 msgid "comdat symbol cannot be versioned"
 msgstr ""
 
-#: cgraphunit.cc:783
+#: cgraphunit.cc:785
 #, gcc-internal-format
 msgid "%<weakref%> cannot be versioned"
 msgstr ""
 
-#: cgraphunit.cc:789
+#: cgraphunit.cc:791
 #, gcc-internal-format
 msgid "versioned symbol must be public"
 msgstr ""
 
-#: cgraphunit.cc:795
+#: cgraphunit.cc:797
 #, gcc-internal-format
 msgid "versioned symbol must have default visibility"
 msgstr ""
 
-#: cgraphunit.cc:828
+#: cgraphunit.cc:830
 #, gcc-internal-format
 msgid "%<weakref%> attribute should be accompanied with an %<alias%> attribute"
 msgstr ""
 
-#: cgraphunit.cc:883
+#: cgraphunit.cc:885
 #, gcc-internal-format
 msgid "%<flatten%> attribute is ignored on aliases"
 msgstr ""
 
-#: cgraphunit.cc:891 cgraphunit.cc:943
+#: cgraphunit.cc:893 cgraphunit.cc:945
 #, gcc-internal-format
 msgid "%<externally_visible%> attribute have effect only on public objects"
 msgstr ""
 
-#: cgraphunit.cc:902
+#: cgraphunit.cc:904
 #, gcc-internal-format
 msgid "%<weakref%> attribute ignored because function is defined"
 msgstr ""
 
-#: cgraphunit.cc:917
+#: cgraphunit.cc:919
 #, gcc-internal-format
 msgid "%<alias%> attribute ignored because function is defined"
 msgstr ""
 
-#: cgraphunit.cc:925
+#: cgraphunit.cc:927
 #, gcc-internal-format
 msgid ""
 "%<always_inline%> function might not be inlinable unless also declared "
 "%<inline%>"
 msgstr ""
 
-#: cgraphunit.cc:951
+#: cgraphunit.cc:953
 #, gcc-internal-format
 msgid "%<weakref%> attribute ignored because variable is initialized"
 msgstr ""
 
-#. include_self=
-#. TODO: Add OPT_Wundefined-inline.
-#: cgraphunit.cc:1112 c/c-decl.cc:13593
+#: cgraphunit.cc:1115 c/c-decl.cc:13688
 #, gcc-internal-format
 msgid "%q+F used but never defined"
 msgstr ""
 
-#: cgraphunit.cc:1114 c/c-decl.cc:13603
+#: cgraphunit.cc:1119 c/c-decl.cc:13696
 #, gcc-internal-format
 msgid "%q+F declared %<static%> but never defined"
 msgstr ""
 
-#: cgraphunit.cc:1158
+#: cgraphunit.cc:1163
 #, gcc-internal-format
 msgid "%qD defined but not used"
 msgstr ""
 
-#: cgraphunit.cc:1493
+#: cgraphunit.cc:1508
 #, gcc-internal-format
 msgid "%<ifunc%> resolver for %qD must return %qT"
 msgstr ""
 
-#: cgraphunit.cc:1496 cgraphunit.cc:1519
+#: cgraphunit.cc:1511 cgraphunit.cc:1534
 #, gcc-internal-format
 msgid "resolver indirect function declared here"
 msgstr ""
 
-#: cgraphunit.cc:1516
+#: cgraphunit.cc:1531
 #, gcc-internal-format
 msgid "%<ifunc%> resolver for %qD should return %qT"
 msgstr ""
 
-#: cgraphunit.cc:1526
+#: cgraphunit.cc:1541
 #, gcc-internal-format
 msgid "%qD alias between functions of incompatible types %qT and %qT"
 msgstr ""
 
-#: cgraphunit.cc:1529 cgraphunit.cc:1611
+#: cgraphunit.cc:1544 cgraphunit.cc:1626
 #, gcc-internal-format
 msgid "aliased declaration here"
 msgstr ""
 
-#: cgraphunit.cc:1567 c-family/c-pragma.cc:347
+#: cgraphunit.cc:1582 c-family/c-pragma.cc:347
 #, gcc-internal-format
 msgid "%q+D aliased to undefined symbol %qE"
 msgstr ""
 
-#: cgraphunit.cc:1583
+#: cgraphunit.cc:1598
 #, gcc-internal-format
 msgid "%q+D aliased to external symbol %qE"
 msgstr ""
 
-#: cgraphunit.cc:1608
+#: cgraphunit.cc:1623
 #, gcc-internal-format
 msgid "%q+D alias between function and variable is not supported"
 msgstr ""
 
-#: cgraphunit.cc:1682
+#: cgraphunit.cc:1697
 #, gcc-internal-format
 msgid "failed to reclaim unneeded function"
 msgstr ""
 
-#: cgraphunit.cc:1710
+#: cgraphunit.cc:1725
 #, gcc-internal-format
 msgid "failed to reclaim unneeded function in same comdat group"
 msgstr ""
 
-#: cgraphunit.cc:1886
+#: cgraphunit.cc:1901
 #, gcc-internal-format
 msgid "size of return value of %q+D is %u bytes"
 msgstr ""
 
-#: cgraphunit.cc:1890
+#: cgraphunit.cc:1905
 #, gcc-internal-format
 msgid "size of return value of %q+D is larger than %wu bytes"
 msgstr ""
 
-#: cgraphunit.cc:2454
+#: cgraphunit.cc:2471
 #, gcc-internal-format
 msgid "nodes with unreleased memory found"
 msgstr ""
@@ -26918,13 +28192,13 @@ msgstr ""
 msgid "cannot find %qs"
 msgstr ""
 
-#: collect-utils.cc:225 collect2.cc:2391 collect2.cc:2561 gcc.cc:3430
-#: gcc.cc:7866
+#: collect-utils.cc:225 collect2.cc:2394 collect2.cc:2564 gcc.cc:3446
+#: gcc.cc:7890
 #, gcc-internal-format
 msgid "%<pex_init%> failed: %m"
 msgstr ""
 
-#: collect-utils.cc:234 collect2.cc:2400 collect2.cc:2569 gcc.cc:2714
+#: collect-utils.cc:234 collect2.cc:2403 collect2.cc:2572 gcc.cc:2755
 #, gcc-internal-format
 msgid "%s: %m"
 msgstr ""
@@ -26939,100 +28213,100 @@ msgstr ""
 msgid "ld returned %d exit status"
 msgstr ""
 
-#: collect2.cc:916 gcc.cc:8378 config/nvptx/mkoffload.cc:640
+#: collect2.cc:918 gcc.cc:8402 config/nvptx/mkoffload.cc:646
 #, gcc-internal-format
 msgid "atexit failed"
 msgstr ""
 
-#: collect2.cc:1047
+#: collect2.cc:1051
 #, gcc-internal-format
 msgid "no arguments"
 msgstr ""
 
-#: collect2.cc:1289 opts.cc:1223
+#: collect2.cc:1294 opts.cc:1258
 #, gcc-internal-format
 msgid "LTO support has not been enabled in this configuration"
 msgstr ""
 
-#: collect2.cc:1330 graph.cc:55 lto-wrapper.cc:1765 lto-wrapper.cc:1821
-#: toplev.cc:1576 objc/objc-act.cc:462
+#: collect2.cc:1335 graph.cc:55 lto-wrapper.cc:1769 lto-wrapper.cc:1823
+#: toplev.cc:1587 objc/objc-act.cc:462
 #, gcc-internal-format
 msgid "cannot open %s: %m"
 msgstr ""
 
-#: collect2.cc:1450
+#: collect2.cc:1454
 #, gcc-internal-format
 msgid "unknown demangling style %qs"
 msgstr ""
 
-#: collect2.cc:1552 collect2.cc:1730 collect2.cc:1770
+#: collect2.cc:1555 collect2.cc:1733 collect2.cc:1773
 #, gcc-internal-format
 msgid "fopen %s: %m"
 msgstr ""
 
-#: collect2.cc:1555 collect2.cc:1735 collect2.cc:1773
+#: collect2.cc:1558 collect2.cc:1738 collect2.cc:1776
 #, gcc-internal-format
 msgid "fclose %s: %m"
 msgstr ""
 
-#: collect2.cc:2325 lto-wrapper.cc:1236 lto-wrapper.cc:1251
-#: lto/lto-object.cc:148 lto/lto-object.cc:182 lto/lto-object.cc:279
-#: lto/lto-object.cc:336 lto/lto-object.cc:360
+#: collect2.cc:2328 lto-wrapper.cc:1242 lto-wrapper.cc:1257
+#: algol68/a68-lang.cc:561 lto/lto-object.cc:146 lto/lto-object.cc:180
+#: lto/lto-object.cc:277 lto/lto-object.cc:334 lto/lto-object.cc:358
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: %s"
 msgstr ""
 
-#: collect2.cc:2365
+#: collect2.cc:2368
 #, gcc-internal-format
 msgid "cannot find %<nm%>"
 msgstr ""
 
-#: collect2.cc:2413
+#: collect2.cc:2416
 #, gcc-internal-format
 msgid "cannot open nm output: %m"
 msgstr ""
 
-#: collect2.cc:2468
+#: collect2.cc:2471
 #, gcc-internal-format, gfc-internal-format
 msgid "init function found in object %s"
 msgstr ""
 
-#: collect2.cc:2479
+#: collect2.cc:2482
 #, gcc-internal-format, gfc-internal-format
 msgid "fini function found in object %s"
 msgstr ""
 
-#: collect2.cc:2536
+#: collect2.cc:2539
 #, gcc-internal-format
 msgid "cannot find %<ldd%>"
 msgstr ""
 
-#: collect2.cc:2582
+#: collect2.cc:2585
 #, gcc-internal-format
 msgid "cannot open ldd output: %m"
 msgstr ""
 
-#: collect2.cc:2600
+#: collect2.cc:2603
 #, gcc-internal-format, gfc-internal-format
 msgid "dynamic dependency %s not found"
 msgstr ""
 
-#: collect2.cc:2612
+#: collect2.cc:2615
 #, gcc-internal-format
 msgid "unable to open dynamic dependency %qs"
 msgstr ""
 
-#: collect2.cc:2764
+#: collect2.cc:2767
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: not a COFF file"
 msgstr ""
 
-#: collect2.cc:2923
+#: collect2.cc:2926
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: cannot open as COFF file"
 msgstr ""
 
-#: collect2.cc:2982
+#: collect2.cc:2985
 #, gcc-internal-format, gfc-internal-format
 msgid "library lib%s not found"
 msgstr ""
@@ -27115,83 +28389,83 @@ msgstr ""
 msgid "%qs is version %q.*s, expected version %q.*s"
 msgstr ""
 
-#: coverage.cc:268
+#: coverage.cc:269
 #, gcc-internal-format, gfc-internal-format
 msgid "profile data for function %u is corrupted"
 msgstr ""
 
-#: coverage.cc:269
+#: coverage.cc:270
 #, gcc-internal-format
 msgid "checksum is (%x,%x) instead of (%x,%x)"
 msgstr ""
 
-#: coverage.cc:284
+#: coverage.cc:285
 #, gcc-internal-format
 msgid "%qs has overflowed"
 msgstr ""
 
-#: coverage.cc:285
+#: coverage.cc:286
 #, gcc-internal-format
 msgid "%qs is corrupted"
 msgstr ""
 
-#: coverage.cc:312
+#: coverage.cc:313
 #, gcc-internal-format
 msgid "%qs profile count data file not found"
 msgstr ""
 
-#: coverage.cc:341
+#: coverage.cc:342
 #, gcc-internal-format
 msgid "profile for function %qD not found in profile data"
 msgstr ""
 
-#: coverage.cc:361
+#: coverage.cc:362
 #, gcc-internal-format
 msgid ""
 "number of counters in profile data for function %qD does not match its "
 "profile data (counter %qs, expected %i and have %i)"
 msgstr ""
 
-#: coverage.cc:370
+#: coverage.cc:371
 #, gcc-internal-format
 msgid ""
 "the control flow of function %qD does not match its profile data (counter "
 "%qs)"
 msgstr ""
 
-#: coverage.cc:389
+#: coverage.cc:390
 #, gcc-internal-format
 msgid "execution counts estimated\n"
 msgstr ""
 
-#: coverage.cc:390
+#: coverage.cc:391
 #, gcc-internal-format
 msgid "execution counts assumed to be zero\n"
 msgstr ""
 
-#: coverage.cc:403
+#: coverage.cc:404
 #, gcc-internal-format
 msgid ""
 "source locations for function %qD have changed, the profile data may be out "
 "of date"
 msgstr ""
 
-#: coverage.cc:667
+#: coverage.cc:668
 #, gcc-internal-format
 msgid "function starts on a higher line number than it ends"
 msgstr ""
 
-#: coverage.cc:689
+#: coverage.cc:690
 #, gcc-internal-format
 msgid "error writing %qs"
 msgstr ""
 
-#: coverage.cc:1289
+#: coverage.cc:1293
 #, gcc-internal-format
 msgid "filename %qs does not start with profile prefix %qs"
 msgstr ""
 
-#: coverage.cc:1334
+#: coverage.cc:1336
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot open %s"
 msgstr ""
@@ -27236,43 +28510,6 @@ msgstr ""
 msgid "closed intervals"
 msgstr ""
 
-#: diagnostic-format-sarif.cc:3773
-#, gcc-internal-format
-msgid "unable to determine filename for SARIF output"
-msgstr ""
-
-#: diagnostic-format-sarif.cc:3786
-#, gcc-internal-format
-msgid "unable to open %qs for SARIF output: %m"
-msgstr ""
-
-#: diagnostic-macro-unwinding.cc:182
-#, gcc-internal-format
-msgid "in definition of macro %qs"
-msgstr ""
-
-#: diagnostic-macro-unwinding.cc:199
-#, gcc-internal-format
-msgid "in expansion of macro %qs"
-msgstr ""
-
-#: diagnostic-path.cc:226
-#, gcc-internal-format
-msgid "debug path"
-msgstr ""
-
-#: diagnostic-path.cc:1174
-msgid "%@ %e (fndecl %qs, depth %i)"
-msgstr ""
-
-#: diagnostic-path.cc:1180
-msgid "%@ %e (depth %i)"
-msgstr ""
-
-#: diagnostic-path.cc:1186
-msgid "%@ %e"
-msgstr ""
-
 #: dominance.cc:1180
 #, gcc-internal-format, gfc-internal-format
 msgid "dominator of %d status unknown"
@@ -27283,33 +28520,33 @@ msgstr ""
 msgid "dominator of %d should be %d, not %d"
 msgstr ""
 
-#: dumpfile.cc:383
+#: dumpfile.cc:382
 #, gcc-internal-format
 msgid "could not open dump file %qs: %m"
 msgstr ""
 
-#: dumpfile.cc:1869
+#: dumpfile.cc:1871
 #, gcc-internal-format
 msgid "ignoring unknown option %q.*s"
 msgstr ""
 
-#: dumpfile.cc:1951
+#: dumpfile.cc:1953
 #, gcc-internal-format
 msgid ""
 "unrecognized command-line option %<-fdump-%s%>; did you mean %<-fdump-%s%>?"
 msgstr ""
 
-#: dumpfile.cc:1954
+#: dumpfile.cc:1956
 #, gcc-internal-format
 msgid "unrecognized command-line option %<-fdump-%s%>"
 msgstr ""
 
-#: dumpfile.cc:2027
+#: dumpfile.cc:2029
 #, gcc-internal-format
 msgid "unknown option %q.*s in %<-fopt-info-%s%>"
 msgstr ""
 
-#: dumpfile.cc:2059
+#: dumpfile.cc:2061
 #, gcc-internal-format
 msgid "ignoring possibly conflicting option %<-fopt-info-%s%>"
 msgstr ""
@@ -27327,101 +28564,101 @@ msgstr ""
 #: dwarf2out.cc:1144
 #, gcc-internal-format
 msgid ""
-"multiple EH personalities are supported only with assemblers supporting %<."
-"cfi_personality%> directive"
+"multiple EH personalities are supported only with assemblers supporting "
+"%<.cfi_personality%> directive"
 msgstr ""
 
-#: dwarf2out.cc:11191
+#: dwarf2out.cc:11219
 #, gcc-internal-format
 msgid "%<-gdwarf-6%> is output as version 5 with incompatibilities"
 msgstr ""
 
-#: dwarf2out.cc:15078
+#: dwarf2out.cc:15353
 #, gcc-internal-format, gfc-internal-format
 msgid "non-delegitimized UNSPEC %s (%d) found in variable location"
 msgstr ""
 
-#: emit-rtl.cc:3042
+#: emit-rtl.cc:3058
 #, gcc-internal-format
 msgid "invalid rtl sharing found in the insn"
 msgstr ""
 
-#: emit-rtl.cc:3044
+#: emit-rtl.cc:3060
 #, gcc-internal-format
 msgid "shared rtx"
 msgstr ""
 
-#: emit-rtl.cc:3046
+#: emit-rtl.cc:3062
 #, gcc-internal-format
 msgid "internal consistency failure"
 msgstr ""
 
-#: emit-rtl.cc:4146
+#: emit-rtl.cc:4166
 #, gcc-internal-format
 msgid "ICE: %<emit_insn%> used where %<emit_jump_insn%> needed:"
 msgstr ""
 
-#: errors.cc:133
+#: errors.cc:134
 #, gcc-internal-format, gfc-internal-format
 msgid "abort in %s, at %s:%d"
 msgstr ""
 
-#: except.cc:2186
+#: except.cc:2179
 #, gcc-internal-format
 msgid "argument of %<__builtin_eh_return_regno%> must be constant"
 msgstr ""
 
-#: except.cc:2332
+#: except.cc:2325
 #, gcc-internal-format
 msgid "%<__builtin_eh_return%> not supported on this target"
 msgstr ""
 
-#: except.cc:3475 except.cc:3500
+#: except.cc:3468 except.cc:3493
 #, gcc-internal-format
 msgid "%<region_array%> is corrupted for region %i"
 msgstr ""
 
-#: except.cc:3488 except.cc:3519
+#: except.cc:3481 except.cc:3512
 #, gcc-internal-format
 msgid "%<lp_array%> is corrupted for lp %i"
 msgstr ""
 
-#: except.cc:3505
+#: except.cc:3498
 #, gcc-internal-format, gfc-internal-format
 msgid "outer block of region %i is wrong"
 msgstr ""
 
-#: except.cc:3510
+#: except.cc:3503
 #, gcc-internal-format, gfc-internal-format
 msgid "negative nesting depth of region %i"
 msgstr ""
 
-#: except.cc:3524
+#: except.cc:3517
 #, gcc-internal-format, gfc-internal-format
 msgid "region of lp %i is wrong"
 msgstr ""
 
-#: except.cc:3551
+#: except.cc:3544
 #, gcc-internal-format, gfc-internal-format
 msgid "tree list ends on depth %i"
 msgstr ""
 
-#: except.cc:3556
+#: except.cc:3549
 #, gcc-internal-format
 msgid "%<region_array%> does not match %<region_tree%>"
 msgstr ""
 
-#: except.cc:3561
+#: except.cc:3554
 #, gcc-internal-format
 msgid "%<lp_array%> does not match %<region_tree%>"
 msgstr ""
 
-#: except.cc:3568 tree.cc:14621 value-prof.cc:529
+#: except.cc:3561 tree.cc:14779 value-prof.cc:529
 #, gcc-internal-format
 msgid "%qs failed"
 msgstr ""
 
-#: explow.cc:1610
+#: explow.cc:1634
 #, gcc-internal-format
 msgid "stack limits not supported on this target"
 msgstr ""
@@ -27448,24 +28685,24 @@ msgid ""
 "truncated into %wu-bit"
 msgstr ""
 
-#: expr.cc:12476
+#: expr.cc:12652
 #, gcc-internal-format
 msgid "call to %qs declared with attribute error: %s"
 msgstr ""
 
-#: expr.cc:12490
+#: expr.cc:12666
 #, gcc-internal-format
 msgid "call to %qs declared with attribute warning: %s"
 msgstr ""
 
-#: expr.cc:13544
+#: expr.cc:13719
 #, gcc-internal-format
 msgid ""
 "assuming signed overflow does not occur when simplifying %<X - Y %s 0%> to "
 "%<X %s Y%>"
 msgstr ""
 
-#: ext-dce.cc:1115
+#: ext-dce.cc:1334
 #, gcc-internal-format
 msgid ""
 "ext-dce disabled: %d basic blocks and %d registers; increase %<--param max-"
@@ -27477,17 +28714,17 @@ msgstr ""
 msgid "invalid argument %qs to %qs"
 msgstr ""
 
-#: final.cc:1775
+#: final.cc:1776
 #, gcc-internal-format
 msgid "the frame size of %wu bytes is larger than %wu bytes"
 msgstr ""
 
-#: final.cc:4402 toplev.cc:1446 tree-cfgcleanup.cc:1540
+#: final.cc:4424 toplev.cc:1457 tree-cfgcleanup.cc:1462
 #, gcc-internal-format
 msgid "could not open final insn dump file %qs: %m"
 msgstr ""
 
-#: final.cc:4471 tree-cfgcleanup.cc:1557
+#: final.cc:4493 tree-cfgcleanup.cc:1479
 #, gcc-internal-format
 msgid "could not close final insn dump file %qs: %m"
 msgstr ""
@@ -27497,30 +28734,30 @@ msgstr ""
 msgid "large fixed-point constant implicitly truncated to fixed-point type"
 msgstr ""
 
-#: fold-const.cc:4991 fold-const.cc:5001
+#: fold-const.cc:5006 fold-const.cc:5016
 #, gcc-internal-format, gfc-internal-format
 msgid "comparison is always %d due to width of bit-field"
 msgstr ""
 
-#: fold-const.cc:6259 tree-ssa-reassoc.cc:2886 tree-ssa-reassoc.cc:3971
+#: fold-const.cc:6279 tree-ssa-reassoc.cc:2887 tree-ssa-reassoc.cc:3964
 #, gcc-internal-format
 msgid "assuming signed overflow does not occur when simplifying range test"
 msgstr ""
 
-#: fold-const.cc:9836
+#: fold-const.cc:9856
 #, gcc-internal-format
 msgid ""
 "assuming signed overflow does not occur when reducing constant in comparison"
 msgstr ""
 
-#: fold-const.cc:10243
+#: fold-const.cc:10270
 #, gcc-internal-format
 msgid ""
 "assuming signed overflow does not occur when combining constants around a "
 "comparison"
 msgstr ""
 
-#: fold-const.cc:13677
+#: fold-const.cc:13683
 #, gcc-internal-format
 msgid "fold check: original tree changed by fold"
 msgstr ""
@@ -27540,217 +28777,217 @@ msgstr ""
 msgid "total size of local objects exceeds maximum %wu"
 msgstr ""
 
-#: function.cc:1789 gimplify.cc:7888 gimplify.cc:8059 varasm.cc:1833
+#: function.cc:1779 gimplify.cc:8058 gimplify.cc:8277 varasm.cc:1866
 #, gcc-internal-format
 msgid "impossible constraint in %<asm%>"
 msgstr ""
 
-#: function.cc:4293
+#: function.cc:4283
 #, gcc-internal-format
 msgid "variable %q+D might be clobbered by %<longjmp%> or %<vfork%>"
 msgstr ""
 
-#: function.cc:4314
+#: function.cc:4304
 #, gcc-internal-format
 msgid "argument %q+D might be clobbered by %<longjmp%> or %<vfork%>"
 msgstr ""
 
-#: function.cc:5035
+#: function.cc:5029
 #, gcc-internal-format
 msgid "function returns an aggregate"
 msgstr ""
 
-#: gcc.cc:2224
+#: gcc.cc:2265
 #, gcc-internal-format
 msgid "cannot open nested response file"
 msgstr ""
 
-#: gcc.cc:2261
+#: gcc.cc:2302
 #, gcc-internal-format
 msgid "cannot close nonexistent response file"
 msgstr ""
 
-#: gcc.cc:2284
+#: gcc.cc:2325
 #, gcc-internal-format, gfc-internal-format
 msgid "could not open temporary response file %s"
 msgstr ""
 
-#: gcc.cc:2291
+#: gcc.cc:2332
 #, gcc-internal-format, gfc-internal-format
 msgid "could not write to temporary response file %s"
 msgstr ""
 
-#: gcc.cc:2297
+#: gcc.cc:2338
 #, gcc-internal-format, gfc-internal-format
 msgid "could not close temporary response file %s"
 msgstr ""
 
 #. This leaves DESC open, but the OS will save us.
-#: gcc.cc:2329
+#: gcc.cc:2370
 #, gcc-internal-format
 msgid "cannot read spec file %qs: %m"
 msgstr ""
 
-#: gcc.cc:2423 gcc.cc:2443
+#: gcc.cc:2464 gcc.cc:2484
 msgid "specs %%include syntax malformed after %td characters"
 msgstr ""
 
-#: gcc.cc:2469 gcc.cc:2478 gcc.cc:2488 gcc.cc:2498
+#: gcc.cc:2510 gcc.cc:2519 gcc.cc:2529 gcc.cc:2539
 msgid "specs %%rename syntax malformed after %td characters"
 msgstr ""
 
-#: gcc.cc:2508
+#: gcc.cc:2549
 #, gcc-internal-format, gfc-internal-format
 msgid "specs %s spec was not found to be renamed"
 msgstr ""
 
-#: gcc.cc:2516
+#: gcc.cc:2557
 #, gcc-internal-format
 msgid "%s: attempt to rename spec %qs to already defined spec %qs"
 msgstr ""
 
-#: gcc.cc:2538
+#: gcc.cc:2579
 msgid "specs unknown %% command after %td characters"
 msgstr ""
 
-#: gcc.cc:2550 gcc.cc:2564
+#: gcc.cc:2591 gcc.cc:2605
 msgid "specs file malformed after %td characters"
 msgstr ""
 
-#: gcc.cc:2619
+#: gcc.cc:2660
 #, gcc-internal-format
 msgid "spec file has no spec for linking"
 msgstr ""
 
-#: gcc.cc:3183 gcc.cc:3220
+#: gcc.cc:3199 gcc.cc:3236
 #, gcc-internal-format
 msgid "system path %qs is not absolute"
 msgstr ""
 
-#: gcc.cc:3309
+#: gcc.cc:3325
 #, gcc-internal-format
 msgid "%<-pipe%> not supported"
 msgstr ""
 
-#: gcc.cc:3447 gcc.cc:7875
+#: gcc.cc:3463 gcc.cc:7899
 #, gcc-internal-format
 msgid "cannot execute %qs: %s: %m"
 msgstr ""
 
-#: gcc.cc:3448 gcc.cc:7876
+#: gcc.cc:3464 gcc.cc:7900
 #, gcc-internal-format
 msgid "cannot execute %qs: %s"
 msgstr ""
 
-#: gcc.cc:3467
+#: gcc.cc:3483
 #, gcc-internal-format
 msgid "failed to get exit status: %m"
 msgstr ""
 
-#: gcc.cc:3473
+#: gcc.cc:3489
 #, gcc-internal-format
 msgid "failed to get process times: %m"
 msgstr ""
 
 #. The inferior failed to catch the signal.
-#: gcc.cc:3499 gcc.cc:3523
+#: gcc.cc:3515 gcc.cc:3539
 #, gcc-internal-format, gfc-internal-format
 msgid "%s signal terminated program %s"
 msgstr ""
 
-#: gcc.cc:3967 opts-common.cc:1618 opts-common.cc:1650
+#: gcc.cc:3985 opts-common.cc:1620 opts-common.cc:1653
 #, gcc-internal-format
 msgid "unrecognized command-line option %qs"
 msgstr ""
 
-#: gcc.cc:4009
+#: gcc.cc:4027
 #, gcc-internal-format
 msgid "GCC is not configured to support %qs as %<-foffload=%> argument"
 msgstr ""
 
-#: gcc.cc:4016
+#: gcc.cc:4034
 #, gcc-internal-format
 msgid "valid %<-foffload=%> arguments are: %s; did you mean %qs?"
 msgstr ""
 
-#: gcc.cc:4019
+#: gcc.cc:4037
 #, gcc-internal-format
 msgid "valid %<-foffload=%> arguments are: %s"
 msgstr ""
 
-#: gcc.cc:4039
+#: gcc.cc:4057
 #, gcc-internal-format
 msgid "%<=%>options missing after %<-foffload-options=%>target"
 msgstr ""
 
-#: gcc.cc:4510
+#: gcc.cc:4532
 #, gcc-internal-format
 msgid "%qs is an unknown %<-save-temps%> option"
 msgstr ""
 
-#: gcc.cc:5062
+#: gcc.cc:5087
 #, gcc-internal-format
 msgid ""
 "linker hardening options not enabled by %<-fhardened%> because other link "
 "options were specified on the command line"
 msgstr ""
 
-#: gcc.cc:5086 toplev.cc:717
+#: gcc.cc:5111 toplev.cc:720
 #, gcc-internal-format
 msgid "input file %qs is the same as output file"
 msgstr ""
 
-#: gcc.cc:5091
+#: gcc.cc:5116
 #, gcc-internal-format
 msgid "output filename may not be empty"
 msgstr ""
 
-#: gcc.cc:5476
+#: gcc.cc:5501
 #, gcc-internal-format
 msgid "%<-pipe%> ignored because %<-save-temps%> specified"
 msgstr ""
 
-#: gcc.cc:5564
+#: gcc.cc:5589
 #, gcc-internal-format
 msgid "%<-x %s%> after last input file has no effect"
 msgstr ""
 
-#: gcc.cc:5767
+#: gcc.cc:5792
 #, gcc-internal-format
 msgid "unable to locate default linker script %qs in the library search paths"
 msgstr ""
 
-#: gcc.cc:5974
+#: gcc.cc:5999
 #, gcc-internal-format
 msgid "switch %qs does not start with %<-%>"
 msgstr ""
 
-#: gcc.cc:5978
+#: gcc.cc:6003
 #, gcc-internal-format
 msgid "spec-generated switch is just %<-%>"
 msgstr ""
 
-#: gcc.cc:6210
+#: gcc.cc:6236
 #, gcc-internal-format
 msgid "spec %qs invalid"
 msgstr ""
 
-#: gcc.cc:6387
+#: gcc.cc:6413
 #, gcc-internal-format
 msgid "spec %qs has invalid %<%%0%c%>"
 msgstr ""
 
-#: gcc.cc:6679
+#: gcc.cc:6703
 #, gcc-internal-format
 msgid "spec %qs has invalid %<%%W%c%>"
 msgstr ""
 
-#: gcc.cc:6695
+#: gcc.cc:6719
 #, gcc-internal-format
 msgid "spec %qs has invalid %<%%@%c%>"
 msgstr ""
 
-#: gcc.cc:6714
+#: gcc.cc:6738
 #, gcc-internal-format
 msgid "spec %qs has invalid %<%%x%c%>"
 msgstr ""
@@ -27758,138 +28995,138 @@ msgstr ""
 #. Catch the case where a spec string contains something like
 #. '%{foo:%*}'.  i.e. there is no * in the pattern on the left
 #. hand side of the :.
-#: gcc.cc:6925
+#: gcc.cc:6949
 #, gcc-internal-format
 msgid "spec failure: %<%%*%> has not been initialized by pattern match"
 msgstr ""
 
-#: gcc.cc:6976
+#: gcc.cc:7000
 #, gcc-internal-format
 msgid "spec failure: unrecognized spec option %qc"
 msgstr ""
 
-#: gcc.cc:7042
+#: gcc.cc:7066
 #, gcc-internal-format
 msgid "unknown spec function %qs"
 msgstr ""
 
-#: gcc.cc:7072
+#: gcc.cc:7096
 #, gcc-internal-format
 msgid "error in arguments to spec function %qs"
 msgstr ""
 
-#: gcc.cc:7131
+#: gcc.cc:7155
 #, gcc-internal-format
 msgid "malformed spec function name"
 msgstr ""
 
 #. )
-#: gcc.cc:7134
+#: gcc.cc:7158
 #, gcc-internal-format
 msgid "no arguments for spec function"
 msgstr ""
 
-#: gcc.cc:7153
+#: gcc.cc:7177
 #, gcc-internal-format
 msgid "malformed spec function arguments"
 msgstr ""
 
-#: gcc.cc:7332
+#: gcc.cc:7356
 #, gcc-internal-format
 msgid "braced spec %qs ends in escape"
 msgstr ""
 
-#: gcc.cc:7467
+#: gcc.cc:7491
 #, gcc-internal-format
 msgid "braced spec %qs is invalid at %qc"
 msgstr ""
 
-#: gcc.cc:7562
+#: gcc.cc:7586
 #, gcc-internal-format
 msgid "braced spec body %qs is invalid"
 msgstr ""
 
-#: gcc.cc:8166
+#: gcc.cc:8190
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: could not determine length of compare-debug file %s"
 msgstr ""
 
-#: gcc.cc:8177
+#: gcc.cc:8201
 #, gcc-internal-format
 msgid "%s: %<-fcompare-debug%> failure (length)"
 msgstr ""
 
-#: gcc.cc:8187 gcc.cc:8228
+#: gcc.cc:8211 gcc.cc:8252
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: could not open compare-debug file %s"
 msgstr ""
 
-#: gcc.cc:8207 gcc.cc:8244
+#: gcc.cc:8231 gcc.cc:8268
 #, gcc-internal-format
 msgid "%s: %<-fcompare-debug%> failure"
 msgstr ""
 
-#: gcc.cc:8548
+#: gcc.cc:8574
 #, gcc-internal-format
 msgid "spec failure: more than one argument to %<SYSROOT_SUFFIX_SPEC%>"
 msgstr ""
 
-#: gcc.cc:8573
+#: gcc.cc:8599
 #, gcc-internal-format
 msgid "spec failure: more than one argument to %<SYSROOT_HEADERS_SUFFIX_SPEC%>"
 msgstr ""
 
-#: gcc.cc:8780
+#: gcc.cc:8806
 #, gcc-internal-format
 msgid "unrecognized command-line option %<-%s%>; did you mean %<-%s%>?"
 msgstr ""
 
-#: gcc.cc:8784
+#: gcc.cc:8810
 #, gcc-internal-format
 msgid "unrecognized command-line option %<-%s%>"
 msgstr ""
 
-#: gcc.cc:8910
+#: gcc.cc:8936
 #, gcc-internal-format
 msgid "not configured with sysroot headers suffix"
 msgstr ""
 
-#: gcc.cc:8971 cobol/gcobolspec.cc:375
+#: gcc.cc:8997 cobol/gcobolspec.cc:370
 #, gcc-internal-format
 msgid "no input files"
 msgstr ""
 
-#: gcc.cc:9022
+#: gcc.cc:9052
 #, gcc-internal-format
 msgid "cannot specify %<-o%> with %<-c%>, %<-S%> or %<-E%> with multiple files"
 msgstr ""
 
-#: gcc.cc:9064
+#: gcc.cc:9094
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: %s compiler not installed on this system"
 msgstr ""
 
-#: gcc.cc:9089
+#: gcc.cc:9119
 #, gcc-internal-format
 msgid "recompiling with %<-fcompare-debug%>"
 msgstr ""
 
-#: gcc.cc:9105
+#: gcc.cc:9135
 #, gcc-internal-format
 msgid "during %<-fcompare-debug%> recompilation"
 msgstr ""
 
-#: gcc.cc:9114
+#: gcc.cc:9144
 #, gcc-internal-format
 msgid "comparing final insns dumps"
 msgstr ""
 
-#: gcc.cc:9267
+#: gcc.cc:9297
 #, gcc-internal-format
 msgid "%<-fuse-linker-plugin%>, but %s not found"
 msgstr ""
 
-#: gcc.cc:9301
+#: gcc.cc:9331
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: linker input file unused because linking not done"
 msgstr ""
@@ -27897,92 +29134,92 @@ msgstr ""
 #. This is can be an indication the user specifed an errorneous
 #. separated option value, (or used the wrong prefix for an
 #. option).
-#: gcc.cc:9307
+#: gcc.cc:9337
 #, gcc-internal-format
 msgid "%s: linker input file not found: %m"
 msgstr ""
 
-#: gcc.cc:9379 c-family/c-opts.cc:852
+#: gcc.cc:9409 c-family/c-opts.cc:852
 #, gcc-internal-format
 msgid "cannot use %<-%> as input filename for a precompiled header"
 msgstr ""
 
-#: gcc.cc:9385
+#: gcc.cc:9415
 #, gcc-internal-format, gfc-internal-format
 msgid "language %s not recognized"
 msgstr ""
 
-#: gcc.cc:9628
+#: gcc.cc:9658
 #, gcc-internal-format
 msgid "multilib spec %qs is invalid"
 msgstr ""
 
-#: gcc.cc:9830
+#: gcc.cc:9808 gcc.cc:10021 common/config/riscv/riscv-common.cc:2101
 #, gcc-internal-format
-msgid "multilib exclusions %qs is invalid"
+msgid "multilib select %qs %qs is invalid"
 msgstr ""
 
-#: gcc.cc:9894 common/config/riscv/riscv-common.cc:2366
+#: gcc.cc:9957
 #, gcc-internal-format
-msgid "multilib select %qs %qs is invalid"
+msgid "multilib exclusions %qs is invalid"
 msgstr ""
 
-#: gcc.cc:10068
+#: gcc.cc:10204
 #, gcc-internal-format
 msgid "multilib select %qs is invalid"
 msgstr ""
 
-#: gcc.cc:10108
+#: gcc.cc:10244
 #, gcc-internal-format
 msgid "multilib exclusion %qs is invalid"
 msgstr ""
 
-#: gcc.cc:10359
+#: gcc.cc:10495
 #, gcc-internal-format
 msgid "environment variable %qs not defined"
 msgstr ""
 
-#: gcc.cc:10527 gcc.cc:10532
+#: gcc.cc:10665 gcc.cc:10670
 #, gcc-internal-format
 msgid "invalid version number %qs"
 msgstr ""
 
-#: gcc.cc:10575
+#: gcc.cc:10713
 #, gcc-internal-format, gfc-internal-format
 msgid "too few arguments to %%:version-compare"
 msgstr ""
 
-#: gcc.cc:10581
+#: gcc.cc:10719
 #, gcc-internal-format, gfc-internal-format
 msgid "too many arguments to %%:version-compare"
 msgstr ""
 
-#: gcc.cc:10623
+#: gcc.cc:10761
 #, gcc-internal-format
 msgid "unknown operator %qs in %%:version-compare"
 msgstr ""
 
-#: gcc.cc:10747
+#: gcc.cc:10885
 #, gcc-internal-format, gfc-internal-format
 msgid "too many arguments to %%:compare-debug-dump-opt"
 msgstr ""
 
-#: gcc.cc:10815
+#: gcc.cc:10953
 #, gcc-internal-format, gfc-internal-format
 msgid "too many arguments to %%:compare-debug-self-opt"
 msgstr ""
 
-#: gcc.cc:10902
+#: gcc.cc:11040
 #, gcc-internal-format, gfc-internal-format
 msgid "too many arguments for %%:dumps"
 msgstr ""
 
-#: gcc.cc:11006
+#: gcc.cc:11144
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong number of arguments to %%:debug-level-gt"
 msgstr ""
 
-#: gcc.cc:11027
+#: gcc.cc:11165
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong number of arguments to %%:dwarf-version-gt"
 msgstr ""
@@ -28022,12 +29259,12 @@ msgstr ""
 msgid "scale needs to be non-negative"
 msgstr ""
 
-#: gcse.cc:4194
+#: gcse.cc:4193
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: %d basic blocks and %d edges/basic block"
 msgstr ""
 
-#: gcse.cc:4206
+#: gcse.cc:4205
 #, gcc-internal-format
 msgid ""
 "%s: %d basic blocks and %d registers; increase %<--param max-gcse-memory%> "
@@ -28080,8 +29317,8 @@ msgid "duplicate definition of '%s'"
 msgstr ""
 
 #: ggc-common.cc:461 ggc-common.cc:469 ggc-common.cc:597 ggc-common.cc:615
-#: ggc-common.cc:735 ggc-common.cc:746 ggc-common.cc:761 ggc-page.cc:2530
-#: ggc-page.cc:2561 ggc-page.cc:2568
+#: ggc-common.cc:735 ggc-common.cc:746 ggc-common.cc:761 ggc-page.cc:2607
+#: ggc-page.cc:2638 ggc-page.cc:2645
 #, gcc-internal-format
 msgid "cannot write PCH file: %m"
 msgstr ""
@@ -28103,7 +29340,7 @@ msgstr ""
 
 #: ggc-common.cc:800 ggc-common.cc:816 ggc-common.cc:819 ggc-common.cc:842
 #: ggc-common.cc:845 ggc-common.cc:849 ggc-common.cc:884 ggc-common.cc:913
-#: ggc-common.cc:921 ggc-common.cc:931 ggc-common.cc:942 ggc-page.cc:2632
+#: ggc-common.cc:921 ggc-common.cc:931 ggc-common.cc:942 ggc-page.cc:2709
 #, gcc-internal-format
 msgid "cannot read PCH file: %m"
 msgstr ""
@@ -28113,142 +29350,142 @@ msgstr ""
 msgid "PCH allocation failure"
 msgstr ""
 
-#: ggc-page.cc:1775
+#: ggc-page.cc:1848
 #, gcc-internal-format
 msgid "open /dev/zero: %m"
 msgstr ""
 
-#: ggc-page.cc:2546 ggc-page.cc:2552
+#: ggc-page.cc:2623 ggc-page.cc:2629
 #, gcc-internal-format
 msgid "cannot write PCH file"
 msgstr ""
 
-#: gimple-array-bounds.cc:284
+#: gimple-array-bounds.cc:287
 #, gcc-internal-format
 msgid "array subscript %E is outside array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:303
+#: gimple-array-bounds.cc:306
 #, gcc-internal-format
 msgid "array subscript [%E, %E] is outside array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:317
+#: gimple-array-bounds.cc:320
 #, gcc-internal-format
 msgid "array subscript %E is above array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:326
+#: gimple-array-bounds.cc:329
 #, gcc-internal-format
 msgid "array subscript %E is below array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:401
+#: gimple-array-bounds.cc:405
 #, gcc-internal-format
 msgid ""
 "array subscript %E is outside the bounds of an interior zero-length array %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:403
+#: gimple-array-bounds.cc:407
 #, gcc-internal-format
 msgid ""
 "array subscript %qE is outside the bounds of an interior zero-length array "
 "%qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:424
+#: gimple-array-bounds.cc:428
 #, gcc-internal-format
 msgid "trailing array %qT should not be used as a flexible array member"
 msgstr ""
 
-#: gimple-array-bounds.cc:461 gimple-array-bounds.cc:728
+#: gimple-array-bounds.cc:465 gimple-array-bounds.cc:734
 #, gcc-internal-format
 msgid "while referencing %qD"
 msgstr ""
 
-#: gimple-array-bounds.cc:463
+#: gimple-array-bounds.cc:467
 #, gcc-internal-format
 msgid "defined here %qD"
 msgstr ""
 
-#: gimple-array-bounds.cc:584
+#: gimple-array-bounds.cc:590
 #, gcc-internal-format
 msgid "array subscript %wi is outside array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:589
+#: gimple-array-bounds.cc:595
 #, gcc-internal-format
 msgid "array subscript [%wi, %wi] is outside array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:604
+#: gimple-array-bounds.cc:609
 #, gcc-internal-format
 msgid "array subscript %<%T[%wi]%> is partly outside array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:627
+#: gimple-array-bounds.cc:632
 #, gcc-internal-format
 msgid "intermediate array offset %wi is outside array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:706
+#: gimple-array-bounds.cc:712
 #, gcc-internal-format
 msgid "array subscript %wi is below array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:720
+#: gimple-array-bounds.cc:726
 #, gcc-internal-format
 msgid "array subscript %wu is above array bounds of %qT"
 msgstr ""
 
-#: gimple-fold.cc:2260 gimple-fold.cc:3319 gimple-ssa-warn-restrict.cc:2080
+#: gimple-fold.cc:2088 gimple-fold.cc:3147 gimple-ssa-warn-restrict.cc:2097
 #, gcc-internal-format
 msgid "%qD source argument is the same as destination"
 msgstr ""
 
-#: gimple-fold.cc:2326
+#: gimple-fold.cc:2154
 #, gcc-internal-format
 msgid ""
 "%qD destination unchanged after copying no bytes from a string of length %E"
 msgstr ""
 
-#: gimple-fold.cc:2331
+#: gimple-fold.cc:2159
 #, gcc-internal-format
 msgid "%qD destination unchanged after copying no bytes"
 msgstr ""
 
-#: gimple-fold.cc:2714 gimple-ssa-warn-access.cc:866
+#: gimple-fold.cc:2542 gimple-ssa-warn-access.cc:880
 #, gcc-internal-format
 msgid "%qD specified bound %E exceeds destination size %E"
 msgstr ""
 
-#: gimple-fold.cc:2733
+#: gimple-fold.cc:2561
 #, gcc-internal-format
 msgid "%qD specified bound %E equals source length"
 msgstr ""
 
-#: gimple-fold.cc:4768 gimple-fold.cc:5055
+#: gimple-fold.cc:4630 gimple-fold.cc:4917
 #, gcc-internal-format
 msgid ""
 "flexible array member %qD does not have well defined padding bits for %qs"
 msgstr ""
 
-#: gimple-fold.cc:5004 cp/constexpr.cc:5109
+#: gimple-fold.cc:4866 cp/constexpr.cc:6365
 #, gcc-internal-format
 msgid "PDP11 bit-field handling unsupported in %qs"
 msgstr ""
 
-#: gimple-fold.cc:5286
+#: gimple-fold.cc:5148
 #, gcc-internal-format, gfc-internal-format
 msgid "%s not supported for variable length aggregates"
 msgstr ""
 
-#: gimple-fold.cc:5292
+#: gimple-fold.cc:5154
 #, gcc-internal-format, gfc-internal-format
 msgid "%s not supported on this target"
 msgstr ""
 
-#: gimple-fold.cc:8612 gimple-fold.cc:8641
+#: gimple-fold.cc:8782 gimple-fold.cc:8811
 #, gcc-internal-format, gfc-internal-format
 msgid "comparison is always %d"
 msgstr ""
@@ -28281,7 +29518,7 @@ msgid ""
 "from outside of the attribute"
 msgstr ""
 
-#: gimple-low.cc:112 cp/name-lookup.cc:9309
+#: gimple-low.cc:112 cp/name-lookup.cc:9528
 #, gcc-internal-format
 msgid "%qD defined here"
 msgstr ""
@@ -28301,25 +29538,26 @@ msgstr ""
 msgid "function may return address of local variable"
 msgstr ""
 
-#: gimple-ssa-isolate-paths.cc:422 c/c-typeck.cc:12879
+#: gimple-ssa-isolate-paths.cc:422 c/c-typeck.cc:13423
 #, gcc-internal-format
 msgid "function returns address of local variable"
 msgstr ""
 
-#: gimple-ssa-isolate-paths.cc:425 gimple-ssa-warn-access.cc:2075
-#: gimple-ssa-warn-access.cc:3729 tree.cc:12615 tree.cc:12652 tree.cc:12693
-#: tree.cc:12726 c/c-decl.cc:10781 c/c-parser.cc:22345 c/c-parser.cc:22486
-#: c/c-typeck.cc:3673 c/c-typeck.cc:3769 c/c-typeck.cc:3781 c/c-typeck.cc:6512
-#: c/c-typeck.cc:12780 c/c-typeck.cc:12797 c/gimple-parser.cc:2660
-#: c/gimple-parser.cc:2668 cp/call.cc:8391 cp/call.cc:8474 cp/call.cc:8493
-#: cp/call.cc:10729 cp/class.cc:9468 cp/constexpr.cc:896 cp/constexpr.cc:1355
-#: cp/constexpr.cc:4517 cp/constexpr.cc:6211 cp/constexpr.cc:6590
-#: cp/cvt.cc:1110 cp/cvt.cc:1150 cp/decl.cc:9607 cp/decl2.cc:6351
-#: cp/decl2.cc:6400 cp/lambda.cc:639 cp/method.cc:1240 cp/parser.cc:23073
-#: cp/pt.cc:9266 cp/pt.cc:9936 cp/semantics.cc:2756 cp/semantics.cc:5304
-#: cp/typeck.cc:2164 cp/typeck.cc:2385 cp/typeck.cc:4570 cp/typeck.cc:10793
-#: rust/backend/rust-constexpr.cc:4407 rust/backend/rust-tree.cc:621
-#: rust/backend/rust-tree.cc:3800
+#: gimple-ssa-isolate-paths.cc:425 gimple-ssa-warn-access.cc:2094
+#: gimple-ssa-warn-access.cc:3761 tree.cc:12758 tree.cc:12795 tree.cc:12836
+#: tree.cc:12869 c/c-decl.cc:10900 c/c-parser.cc:23372 c/c-parser.cc:23513
+#: c/c-typeck.cc:3956 c/c-typeck.cc:4210 c/c-typeck.cc:4222 c/c-typeck.cc:7010
+#: c/c-typeck.cc:13318 c/c-typeck.cc:13335 c/gimple-parser.cc:2650
+#: c/gimple-parser.cc:2658 cp/call.cc:8461 cp/call.cc:8544 cp/call.cc:8563
+#: cp/call.cc:10845 cp/class.cc:9627 cp/constexpr.cc:901 cp/constexpr.cc:1466
+#: cp/constexpr.cc:5734 cp/constexpr.cc:7564 cp/constexpr.cc:7966
+#: cp/cvt.cc:1123 cp/cvt.cc:1163 cp/decl.cc:10324 cp/decl2.cc:6720
+#: cp/decl2.cc:6769 cp/lambda.cc:666 cp/method.cc:1241 cp/module.cc:14458
+#: cp/module.cc:14494 cp/parser.cc:24784 cp/parser.cc:25658 cp/pt.cc:9374
+#: cp/semantics.cc:2781 cp/semantics.cc:5410 cp/typeck.cc:2279
+#: cp/typeck.cc:2500 cp/typeck.cc:4821 cp/typeck.cc:11081
+#: rust/backend/rust-constexpr.cc:4627 rust/backend/rust-tree.cc:625
+#: rust/backend/rust-tree.cc:3826
 #, gcc-internal-format
 msgid "declared here"
 msgstr ""
@@ -28633,7 +29871,7 @@ msgstr ""
 msgid "%<%.*s%> directive argument is not a nul-terminated string"
 msgstr ""
 
-#: gimple-ssa-sprintf.cc:3350 gimple-ssa-warn-access.cc:236
+#: gimple-ssa-sprintf.cc:3350 gimple-ssa-warn-access.cc:239
 #, gcc-internal-format
 msgid "referenced argument declared here"
 msgstr ""
@@ -28768,814 +30006,814 @@ msgstr ""
 msgid "null format string"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:176
+#: gimple-ssa-warn-access.cc:179
 #, gcc-internal-format
 msgid "%qD specified bound %s exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:184
+#: gimple-ssa-warn-access.cc:187
 #, gcc-internal-format
 msgid "%qD specified bound %s exceeds the size %E of unterminated array"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:187
+#: gimple-ssa-warn-access.cc:190
 #, gcc-internal-format
 msgid ""
 "%qD specified bound %s may exceed the size of at most %E of unterminated "
 "array"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:190
+#: gimple-ssa-warn-access.cc:193
 #, gcc-internal-format
 msgid ""
 "%qD specified bound %s exceeds the size of at most %E of unterminated array"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:198
+#: gimple-ssa-warn-access.cc:201
 #, gcc-internal-format
 msgid "%qD argument missing terminating nul"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:207
+#: gimple-ssa-warn-access.cc:210
 #, gcc-internal-format
 msgid "%qs specified bound %s exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:215
+#: gimple-ssa-warn-access.cc:218
 #, gcc-internal-format
 msgid "%qs specified bound %s exceeds the size %E of unterminated array"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:218
+#: gimple-ssa-warn-access.cc:221
 #, gcc-internal-format
 msgid ""
 "%qs specified bound %s may exceed the size of at most %E of unterminated "
 "array"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:221
+#: gimple-ssa-warn-access.cc:224
 #, gcc-internal-format
 msgid ""
 "%qs specified bound %s exceeds the size of at most %E of unterminated array"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:229
+#: gimple-ssa-warn-access.cc:232
 #, gcc-internal-format
 msgid "%qs argument missing terminating nul"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:492 gimple-ssa-warn-access.cc:739
+#: gimple-ssa-warn-access.cc:497 gimple-ssa-warn-access.cc:746
 #, gcc-internal-format
 msgid "%qD specified bound %E exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:497 gimple-ssa-warn-access.cc:755
+#: gimple-ssa-warn-access.cc:502 gimple-ssa-warn-access.cc:762
 #, gcc-internal-format
 msgid "%qD specified bound [%E, %E] exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:650
+#: gimple-ssa-warn-access.cc:656
 #, gcc-internal-format
 msgid ""
 "%qD argument %i declared attribute %<nonstring%> is smaller than the "
 "specified bound %wu"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:656
+#: gimple-ssa-warn-access.cc:662
 #, gcc-internal-format
 msgid ""
 "%qD argument %i declared attribute %<nonstring%> is smaller than the "
 "specified bound [%E, %E]"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:662
+#: gimple-ssa-warn-access.cc:668
 #, gcc-internal-format
 msgid ""
 "%qD argument %i declared attribute %<nonstring%> may be smaller than the "
 "specified bound [%E, %E]"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:672
+#: gimple-ssa-warn-access.cc:678
 #, gcc-internal-format
 msgid "%qD argument %i declared attribute %<nonstring%>"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:678
+#: gimple-ssa-warn-access.cc:684
 #, gcc-internal-format
 msgid "argument %qD declared here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:737
+#: gimple-ssa-warn-access.cc:744
 #, gcc-internal-format
 msgid "%qD specified bound %E may exceed maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:744
+#: gimple-ssa-warn-access.cc:751
 #, gcc-internal-format
 msgid "specified bound %E may exceed maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:746
+#: gimple-ssa-warn-access.cc:753
 #, gcc-internal-format
 msgid "specified bound %E exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:753
+#: gimple-ssa-warn-access.cc:760
 #, gcc-internal-format
 msgid "%qD specified bound [%E, %E] may exceed maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:761
+#: gimple-ssa-warn-access.cc:768
 #, gcc-internal-format
 msgid "specified bound [%E, %E] may exceed maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:763
+#: gimple-ssa-warn-access.cc:770
 #, gcc-internal-format
 msgid "specified bound [%E, %E] exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:773
+#: gimple-ssa-warn-access.cc:782
 #, gcc-internal-format
 msgid "%qD specified bound %E may exceed source size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:775
+#: gimple-ssa-warn-access.cc:784
 #, gcc-internal-format
 msgid "%qD specified bound %E exceeds source size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:780
+#: gimple-ssa-warn-access.cc:789
 #, gcc-internal-format
 msgid "specified bound %E may exceed source size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:782
+#: gimple-ssa-warn-access.cc:791
 #, gcc-internal-format
 msgid "specified bound %E exceeds source size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:789
+#: gimple-ssa-warn-access.cc:801
 #, gcc-internal-format
 msgid "%qD specified bound [%E, %E] may exceed source size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:791
+#: gimple-ssa-warn-access.cc:803
 #, gcc-internal-format
 msgid "%qD specified bound [%E, %E] exceeds source size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:796
+#: gimple-ssa-warn-access.cc:808
 #, gcc-internal-format
 msgid "specified bound [%E, %E] may exceed source size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:798
+#: gimple-ssa-warn-access.cc:810
 #, gcc-internal-format
 msgid "specified bound [%E, %E] exceeds source size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:806
+#: gimple-ssa-warn-access.cc:819
 #, gcc-internal-format
 msgid "source object allocated here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:829
+#: gimple-ssa-warn-access.cc:843
 #, gcc-internal-format
 msgid "%qD specified size %E may exceed maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:831
+#: gimple-ssa-warn-access.cc:845
 #, gcc-internal-format
 msgid "%qD specified size %E exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:836
+#: gimple-ssa-warn-access.cc:850
 #, gcc-internal-format
 msgid "specified size %E may exceed maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:838
+#: gimple-ssa-warn-access.cc:852
 #, gcc-internal-format
 msgid "specified size %E exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:845
+#: gimple-ssa-warn-access.cc:859
 #, gcc-internal-format
 msgid "%qD specified size between %E and %E may exceed maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:847
+#: gimple-ssa-warn-access.cc:861
 #, gcc-internal-format
 msgid "%qD specified size between %E and %E exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:852
+#: gimple-ssa-warn-access.cc:866
 #, gcc-internal-format
 msgid "specified size between %E and %E may exceed maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:854
+#: gimple-ssa-warn-access.cc:868
 #, gcc-internal-format
 msgid "specified size between %E and %E exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:864
+#: gimple-ssa-warn-access.cc:878
 #, gcc-internal-format
 msgid "%qD specified bound %E may exceed destination size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:871
+#: gimple-ssa-warn-access.cc:885
 #, gcc-internal-format
 msgid "specified bound %E may exceed destination size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:873
+#: gimple-ssa-warn-access.cc:887
 #, gcc-internal-format
 msgid "specified bound %E exceeds destination size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:880
+#: gimple-ssa-warn-access.cc:894
 #, gcc-internal-format
 msgid "%qD specified bound [%E, %E] may exceed destination size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:882
+#: gimple-ssa-warn-access.cc:896
 #, gcc-internal-format
 msgid "%qD specified bound [%E, %E] exceeds destination size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:887 gimple-ssa-warn-access.cc:889
+#: gimple-ssa-warn-access.cc:901 gimple-ssa-warn-access.cc:903
 #, gcc-internal-format
 msgid "specified bound [%E, %E] exceeds destination size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:898
+#: gimple-ssa-warn-access.cc:912
 #, gcc-internal-format
 msgid "destination object allocated here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:942
+#: gimple-ssa-warn-access.cc:958
 #, gcc-internal-format
 msgid "%qD may access %E byte in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:944
+#: gimple-ssa-warn-access.cc:960
 #, gcc-internal-format
 msgid "%qD accessing %E byte in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:947
+#: gimple-ssa-warn-access.cc:963
 #, gcc-internal-format
 msgid "%qD may access %E bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:949
+#: gimple-ssa-warn-access.cc:965
 #, gcc-internal-format
 msgid "%qD accessing %E bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:954
+#: gimple-ssa-warn-access.cc:970
 #, gcc-internal-format
 msgid "may access %E byte in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:956
+#: gimple-ssa-warn-access.cc:972
 #, gcc-internal-format
 msgid "accessing %E byte in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:959
+#: gimple-ssa-warn-access.cc:975
 #, gcc-internal-format
 msgid "may access %E bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:961
+#: gimple-ssa-warn-access.cc:977
 #, gcc-internal-format
 msgid "accessing %E bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:970
+#: gimple-ssa-warn-access.cc:986
 #, gcc-internal-format
 msgid "%qD may access %E or more bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:972
+#: gimple-ssa-warn-access.cc:988
 #, gcc-internal-format
 msgid "%qD accessing %E or more bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:977
+#: gimple-ssa-warn-access.cc:993
 #, gcc-internal-format
 msgid "may access %E or more bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:979
+#: gimple-ssa-warn-access.cc:995
 #, gcc-internal-format
 msgid "accessing %E or more bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:987
+#: gimple-ssa-warn-access.cc:1003
 #, gcc-internal-format
 msgid "%qD may access between %E and %E bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:989
+#: gimple-ssa-warn-access.cc:1005
 #, gcc-internal-format
 msgid "%qD accessing between %E and %E bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:994
+#: gimple-ssa-warn-access.cc:1010
 #, gcc-internal-format
 msgid "may access between %E and %E bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:996
+#: gimple-ssa-warn-access.cc:1012
 #, gcc-internal-format
 msgid "accessing between %E and %E bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1008
+#: gimple-ssa-warn-access.cc:1024
 #, gcc-internal-format
 msgid "%qD may write %E byte into a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1010
+#: gimple-ssa-warn-access.cc:1026
 #, gcc-internal-format
 msgid "%qD writing %E byte into a region of size %E overflows the destination"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1013
+#: gimple-ssa-warn-access.cc:1029
 #, gcc-internal-format
 msgid "%qD may write %E bytes into a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1015
+#: gimple-ssa-warn-access.cc:1031
 #, gcc-internal-format
 msgid "%qD writing %E bytes into a region of size %E overflows the destination"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1020
+#: gimple-ssa-warn-access.cc:1036
 #, gcc-internal-format
 msgid "may write %E byte into a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1022
+#: gimple-ssa-warn-access.cc:1038
 #, gcc-internal-format
 msgid "writing %E byte into a region of size %E overflows the destination"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1025
+#: gimple-ssa-warn-access.cc:1041
 #, gcc-internal-format
 msgid "may write %E bytes into a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1027
+#: gimple-ssa-warn-access.cc:1043
 #, gcc-internal-format
 msgid "writing %E bytes into a region of size %E overflows the destination"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1036
+#: gimple-ssa-warn-access.cc:1052
 #, gcc-internal-format
 msgid "%qD may write %E or more bytes into a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1038 gimple-ssa-warn-access.cc:1415
+#: gimple-ssa-warn-access.cc:1054 gimple-ssa-warn-access.cc:1433
 #, gcc-internal-format
 msgid ""
 "%qD writing %E or more bytes into a region of size %E overflows the "
 "destination"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1044
+#: gimple-ssa-warn-access.cc:1060
 #, gcc-internal-format
 msgid "may write %E or more bytes into a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1046 gimple-ssa-warn-access.cc:1420
+#: gimple-ssa-warn-access.cc:1062 gimple-ssa-warn-access.cc:1438
 #, gcc-internal-format
 msgid ""
 "writing %E or more bytes into a region of size %E overflows the destination"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1055
+#: gimple-ssa-warn-access.cc:1071
 #, gcc-internal-format
 msgid "%qD may write between %E and %E bytes into a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1057
+#: gimple-ssa-warn-access.cc:1073
 #, gcc-internal-format
 msgid ""
 "%qD writing between %E and %E bytes into a region of size %E overflows the "
 "destination"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1063
+#: gimple-ssa-warn-access.cc:1079
 #, gcc-internal-format
 msgid "may write between %E and %E bytes into a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1065
+#: gimple-ssa-warn-access.cc:1081
 #, gcc-internal-format
 msgid ""
 "writing between %E and %E bytes into a region of size %E overflows the "
 "destination"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1079
+#: gimple-ssa-warn-access.cc:1095
 #, gcc-internal-format
 msgid "%qD may read %E byte from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1081
+#: gimple-ssa-warn-access.cc:1097
 #, gcc-internal-format
 msgid "%qD reading %E byte from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1084
+#: gimple-ssa-warn-access.cc:1100
 #, gcc-internal-format
 msgid "%qD may read %E bytes from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1086
+#: gimple-ssa-warn-access.cc:1102
 #, gcc-internal-format
 msgid "%qD reading %E bytes from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1092
+#: gimple-ssa-warn-access.cc:1108
 #, gcc-internal-format
 msgid "may read %E byte from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1094
+#: gimple-ssa-warn-access.cc:1110
 #, gcc-internal-format
 msgid "reading %E byte from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1097
+#: gimple-ssa-warn-access.cc:1113
 #, gcc-internal-format
 msgid "may read %E bytes from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1099
+#: gimple-ssa-warn-access.cc:1115
 #, gcc-internal-format
 msgid "reading %E bytes from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1108
+#: gimple-ssa-warn-access.cc:1124
 #, gcc-internal-format
 msgid "%qD may read %E or more bytes from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1110
+#: gimple-ssa-warn-access.cc:1126
 #, gcc-internal-format
 msgid "%qD reading %E or more bytes from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1115
+#: gimple-ssa-warn-access.cc:1131
 #, gcc-internal-format
 msgid "may read %E or more bytes from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1117
+#: gimple-ssa-warn-access.cc:1133
 #, gcc-internal-format
 msgid "reading %E or more bytes from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1125
+#: gimple-ssa-warn-access.cc:1141
 #, gcc-internal-format
 msgid "%qD may read between %E and %E bytes from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1127
+#: gimple-ssa-warn-access.cc:1143
 #, gcc-internal-format
 msgid "%qD reading between %E and %E bytes from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1132
+#: gimple-ssa-warn-access.cc:1148
 #, gcc-internal-format
 msgid "may read between %E and %E bytes from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1134
+#: gimple-ssa-warn-access.cc:1150
 #, gcc-internal-format
 msgid "reading between %E and %E bytes from a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1149
+#: gimple-ssa-warn-access.cc:1165
 #, gcc-internal-format
 msgid "%qD expecting %E byte in a region of size %E"
 msgid_plural "%qD expecting %E bytes in a region of size %E"
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-access.cc:1154
+#: gimple-ssa-warn-access.cc:1170
 #, gcc-internal-format
 msgid "expecting %E byte in a region of size %E"
 msgid_plural "expecting %E bytes in a region of size %E"
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-access.cc:1162
+#: gimple-ssa-warn-access.cc:1178
 #, gcc-internal-format
 msgid "%qD expecting %E or more bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1166
+#: gimple-ssa-warn-access.cc:1182
 #, gcc-internal-format
 msgid "expecting %E or more bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1173
+#: gimple-ssa-warn-access.cc:1189
 #, gcc-internal-format
 msgid "%qD expecting between %E and %E bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1177
+#: gimple-ssa-warn-access.cc:1193
 #, gcc-internal-format
 msgid "expecting between %E and %E bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2070
+#: gimple-ssa-warn-access.cc:2089
 #, gcc-internal-format
 msgid "%qD called on pointer %qE with nonzero offset%s"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2085 gimple-ssa-warn-access.cc:3806
+#: gimple-ssa-warn-access.cc:2104 gimple-ssa-warn-access.cc:3839
 #, gcc-internal-format
 msgid "returned from %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2088
+#: gimple-ssa-warn-access.cc:2107
 #, gcc-internal-format
 msgid "returned from %qT"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2090
+#: gimple-ssa-warn-access.cc:2109
 #, gcc-internal-format
 msgid "obtained here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2297
+#: gimple-ssa-warn-access.cc:2326
 #, gcc-internal-format
 msgid "argument %i value %qE is negative"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2314
+#: gimple-ssa-warn-access.cc:2343
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %i value is zero"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2332
+#: gimple-ssa-warn-access.cc:2361
 #, gcc-internal-format
 msgid "argument %i value %qE exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2346
+#: gimple-ssa-warn-access.cc:2375
 #, gcc-internal-format
 msgid "argument %i range [%E, %E] is negative"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2353
+#: gimple-ssa-warn-access.cc:2382
 #, gcc-internal-format
 msgid "argument %i range [%E, %E] exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2383
+#: gimple-ssa-warn-access.cc:2412
 #, gcc-internal-format
 msgid "product %<%E * %E%> of arguments %i and %i exceeds %<SIZE_MAX%>"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2389
+#: gimple-ssa-warn-access.cc:2418
 #, gcc-internal-format
 msgid ""
 "product %<%E * %E%> of arguments %i and %i exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2400 gimple-ssa-warn-access.cc:2403
+#: gimple-ssa-warn-access.cc:2429 gimple-ssa-warn-access.cc:2432
 #, gcc-internal-format
 msgid "argument %i in the range [%E, %E]"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2414
+#: gimple-ssa-warn-access.cc:2443
 #, gcc-internal-format
 msgid "in a call to built-in allocation function %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2417
+#: gimple-ssa-warn-access.cc:2446
 #, gcc-internal-format
 msgid "in a call to allocation function %qD declared here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2862
+#: gimple-ssa-warn-access.cc:2893
 #, gcc-internal-format
 msgid "unknown architecture specifier in memory model %wi for %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2954
+#: gimple-ssa-warn-access.cc:2985
 #, gcc-internal-format
 msgid "invalid memory model %qs for %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2958
+#: gimple-ssa-warn-access.cc:2989
 #, gcc-internal-format
 msgid "invalid memory model %wi for %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2972 gimple-ssa-warn-access.cc:3023
+#: gimple-ssa-warn-access.cc:3003 gimple-ssa-warn-access.cc:3054
 msgid "valid models are %e"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2986
+#: gimple-ssa-warn-access.cc:3017
 #, gcc-internal-format
 msgid "invalid failure memory model %qs for %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2991
+#: gimple-ssa-warn-access.cc:3022
 #, gcc-internal-format
 msgid "valid failure models are %qs, %qs, %qs, %qs"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3007
+#: gimple-ssa-warn-access.cc:3038
 #, gcc-internal-format
 msgid ""
 "failure memory model %qs cannot be stronger than success memory model %qs "
 "for %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3030
+#: gimple-ssa-warn-access.cc:3061
 #, gcc-internal-format
 msgid ""
 "failure memory model %wi cannot be stronger than success memory model %wi "
 "for %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3474
+#: gimple-ssa-warn-access.cc:3506
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "bound argument %i value %s is negative for a variable length array argument "
 "%i of type %s"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3482
+#: gimple-ssa-warn-access.cc:3514
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %i value %s is negative"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3528
+#: gimple-ssa-warn-access.cc:3560
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %i is null but the corresponding size argument %i value is %s"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3592
+#: gimple-ssa-warn-access.cc:3624
 #, gcc-internal-format
 msgid "referencing argument %u of type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3606
+#: gimple-ssa-warn-access.cc:3638
 #, gcc-internal-format
 msgid "in a call to function %qD declared with attribute %qs"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3610
+#: gimple-ssa-warn-access.cc:3642
 #, gcc-internal-format
 msgid "in a call with type %qT and attribute %qs"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3617
+#: gimple-ssa-warn-access.cc:3649
 #, gcc-internal-format
 msgid "in a call to function %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3620
+#: gimple-ssa-warn-access.cc:3652
 #, gcc-internal-format
 msgid "in a call with type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3726
+#: gimple-ssa-warn-access.cc:3758
 #, gcc-internal-format
 msgid "%qD called on unallocated object %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3745
+#: gimple-ssa-warn-access.cc:3777
 #, gcc-internal-format
 msgid "%qD called on a pointer to an unallocated object %qE"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3754
+#: gimple-ssa-warn-access.cc:3786
 #, gcc-internal-format
 msgid "assigned here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3787
+#: gimple-ssa-warn-access.cc:3820
 #, gcc-internal-format
 msgid "%qD called on pointer returned from a mismatched allocation function"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3796
+#: gimple-ssa-warn-access.cc:3829
 #, gcc-internal-format
 msgid "%qD called on pointer to an unallocated object"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3944
+#: gimple-ssa-warn-access.cc:3977
 #, gcc-internal-format
 msgid "pointer %qE may be used after %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3945
+#: gimple-ssa-warn-access.cc:3978
 #, gcc-internal-format
 msgid "pointer %qE used after %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3949
+#: gimple-ssa-warn-access.cc:3982
 #, gcc-internal-format
 msgid "pointer may be used after %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3950
+#: gimple-ssa-warn-access.cc:3983
 #, gcc-internal-format
 msgid "pointer used after %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3954
+#: gimple-ssa-warn-access.cc:3987
 #, gcc-internal-format
 msgid "call to %qD here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3971
+#: gimple-ssa-warn-access.cc:4004
 #, gcc-internal-format
 msgid "dangling pointer %qE to %qD may be used"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3972
+#: gimple-ssa-warn-access.cc:4005
 #, gcc-internal-format
 msgid "using dangling pointer %qE to %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3977
+#: gimple-ssa-warn-access.cc:4010
 #, gcc-internal-format
 msgid "dangling pointer to %qD may be used"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3978
+#: gimple-ssa-warn-access.cc:4011
 #, gcc-internal-format
 msgid "using a dangling pointer to %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3981 gimple-ssa-warn-access.cc:4629
-#: gimple-ssa-warn-access.cc:4632 gimple-ssa-warn-restrict.cc:1830
-#: tree-ssa-uninit.cc:924 tree-ssa-uninit.cc:1123 c/c-decl.cc:4101
-#: c/c-decl.cc:4391 c/c-typeck.cc:10377 c/c-typeck.cc:13597 cp/call.cc:8808
-#: cp/call.cc:8819 cp/class.cc:1722 cp/class.cc:3543 cp/constexpr.cc:1078
-#: cp/decl.cc:4687 cp/decl.cc:13470 cp/decl.cc:14073 cp/decl.cc:14083
-#: cp/decl.cc:15083 cp/friend.cc:407 cp/friend.cc:417 cp/init.cc:2948
-#: cp/parser.cc:3860 cp/parser.cc:4006 cp/parser.cc:4058 cp/parser.cc:7428
-#: cp/parser.cc:25737 cp/typeck.cc:5069
+#: gimple-ssa-warn-access.cc:4014 gimple-ssa-warn-access.cc:4671
+#: gimple-ssa-warn-access.cc:4674 gimple-ssa-warn-restrict.cc:1847
+#: tree-ssa-uninit.cc:943 tree-ssa-uninit.cc:1142 c/c-decl.cc:4225
+#: c/c-decl.cc:4515 c/c-typeck.cc:10907 c/c-typeck.cc:14141 cp/call.cc:8892
+#: cp/call.cc:8903 cp/class.cc:1755 cp/class.cc:3580 cp/constexpr.cc:1083
+#: cp/decl.cc:5231 cp/decl.cc:14654 cp/decl.cc:15250 cp/decl.cc:15260
+#: cp/decl.cc:16253 cp/friend.cc:407 cp/friend.cc:417 cp/init.cc:2955
+#: cp/parser.cc:3937 cp/parser.cc:4083 cp/parser.cc:4135 cp/parser.cc:8071
+#: cp/parser.cc:27842 cp/reflect.cc:175 cp/typeck.cc:1971 cp/typeck.cc:5316
 #, gcc-internal-format
 msgid "%qD declared here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3989
+#: gimple-ssa-warn-access.cc:4022
 #, gcc-internal-format
 msgid "dangling pointer %qE to an unnamed temporary may be used"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3991
+#: gimple-ssa-warn-access.cc:4024
 #, gcc-internal-format
 msgid "using dangling pointer %qE to an unnamed temporary"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3997
+#: gimple-ssa-warn-access.cc:4030
 #, gcc-internal-format
 msgid "dangling pointer to an unnamed temporary may be used"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3999
+#: gimple-ssa-warn-access.cc:4032
 #, gcc-internal-format
 msgid "using a dangling pointer to an unnamed temporary"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:4003
+#: gimple-ssa-warn-access.cc:4036
 #, gcc-internal-format
 msgid "unnamed temporary defined here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:4093
+#: gimple-ssa-warn-access.cc:4126
 #, gcc-internal-format
 msgid "%qD called on pointer %qE passed to mismatched allocation function %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:4098
+#: gimple-ssa-warn-access.cc:4131
 #, gcc-internal-format
 msgid "%qD called on a pointer passed to mismatched reallocation function %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:4104
+#: gimple-ssa-warn-access.cc:4137
 #, gcc-internal-format
 msgid "call to %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:4623
+#: gimple-ssa-warn-access.cc:4665
 #, gcc-internal-format
 msgid "storing the address of local variable %qD in %qE"
 msgstr ""
@@ -29640,31 +30878,31 @@ msgstr ""
 msgid "argument to %<alloca%> is zero"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1498
+#: gimple-ssa-warn-restrict.cc:1513
 #, gcc-internal-format
 msgid ""
 "%qD accessing %wu byte at offsets %s and %s overlaps %wu byte at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1500
+#: gimple-ssa-warn-restrict.cc:1515
 #, gcc-internal-format
 msgid ""
 "%qD accessing %wu byte at offsets %s and %s overlaps %wu bytes at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1504
+#: gimple-ssa-warn-restrict.cc:1519
 #, gcc-internal-format
 msgid ""
 "%qD accessing %wu bytes at offsets %s and %s overlaps %wu byte at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1506
+#: gimple-ssa-warn-restrict.cc:1521
 #, gcc-internal-format
 msgid ""
 "%qD accessing %wu bytes at offsets %s and %s overlaps %wu bytes at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1513
+#: gimple-ssa-warn-restrict.cc:1528
 #, gcc-internal-format
 msgid ""
 "%qD accessing %wu byte at offsets %s and %s overlaps between %wu and %wu "
@@ -29675,7 +30913,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.cc:1523
+#: gimple-ssa-warn-restrict.cc:1538
 #, gcc-internal-format
 msgid ""
 "%qD accessing %wu byte at offsets %s and %s overlaps %wu or more bytes at "
@@ -29686,7 +30924,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.cc:1536
+#: gimple-ssa-warn-restrict.cc:1551
 #, gcc-internal-format
 msgid ""
 "%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps %wu "
@@ -29697,21 +30935,21 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.cc:1546
+#: gimple-ssa-warn-restrict.cc:1561
 #, gcc-internal-format
 msgid ""
 "%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps "
 "between %wu and %wu bytes at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1554
+#: gimple-ssa-warn-restrict.cc:1569
 #, gcc-internal-format
 msgid ""
 "%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps %wu or "
 "more bytes at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1567
+#: gimple-ssa-warn-restrict.cc:1582
 #, gcc-internal-format
 msgid ""
 "%qD accessing %wu or more bytes at offsets %s and %s overlaps %wu byte at "
@@ -29722,28 +30960,28 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.cc:1575
+#: gimple-ssa-warn-restrict.cc:1590
 #, gcc-internal-format
 msgid ""
 "%qD accessing %wu or more bytes at offsets %s and %s overlaps between %wu "
 "and %wu bytes at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1582
+#: gimple-ssa-warn-restrict.cc:1597
 #, gcc-internal-format
 msgid ""
 "%qD accessing %wu or more bytes at offsets %s and %s overlaps %wu or more "
 "bytes at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1610
+#: gimple-ssa-warn-restrict.cc:1625
 #, gcc-internal-format
 msgid "%qD accessing %wu byte may overlap %wu byte"
 msgid_plural "%qD accessing %wu bytes may overlap %wu byte"
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.cc:1617
+#: gimple-ssa-warn-restrict.cc:1632
 #, gcc-internal-format
 msgid ""
 "%qD accessing %wu byte at offsets %s and %s may overlap %wu byte at offset %s"
@@ -29753,14 +30991,14 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.cc:1628
+#: gimple-ssa-warn-restrict.cc:1643
 #, gcc-internal-format
 msgid "%qD accessing %wu byte may overlap up to %wu bytes"
 msgid_plural "%qD accessing %wu bytes may overlap up to %wu bytes"
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.cc:1635
+#: gimple-ssa-warn-restrict.cc:1650
 #, gcc-internal-format
 msgid ""
 "%qD accessing %wu byte at offsets %s and %s may overlap up to %wu bytes at "
@@ -29771,7 +31009,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.cc:1648
+#: gimple-ssa-warn-restrict.cc:1663
 #, gcc-internal-format
 msgid "%qD accessing between %wu and %wu bytes may overlap %wu byte"
 msgid_plural ""
@@ -29779,7 +31017,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.cc:1655
+#: gimple-ssa-warn-restrict.cc:1670
 #, gcc-internal-format
 msgid ""
 "%qD accessing between %wu and %wu bytes at offsets %s and %s may overlap %wu "
@@ -29790,7 +31028,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.cc:1667
+#: gimple-ssa-warn-restrict.cc:1682
 #, gcc-internal-format
 msgid ""
 "%qD accessing %wu or more bytes at offsets %s and %s may overlap %wu byte at "
@@ -29801,86 +31039,86 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.cc:1713
+#: gimple-ssa-warn-restrict.cc:1730
 #, gcc-internal-format
 msgid "%qD specified bound %wu exceeds maximum object size %wu"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1719
+#: gimple-ssa-warn-restrict.cc:1736
 #, gcc-internal-format
 msgid "%qD specified bound between %wu and %wu exceeds maximum object size %wu"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1780
+#: gimple-ssa-warn-restrict.cc:1797
 #, gcc-internal-format
 msgid ""
 "%qD pointer overflow between offset %s and size %s accessing array %qD with "
 "type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1785 c-family/c-warn.cc:3816
+#: gimple-ssa-warn-restrict.cc:1802 c-family/c-warn.cc:3830
 #, gcc-internal-format
 msgid "array %qD declared here"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1790 gimple-ssa-warn-restrict.cc:1796
+#: gimple-ssa-warn-restrict.cc:1807 gimple-ssa-warn-restrict.cc:1813
 #, gcc-internal-format
 msgid "%qD pointer overflow between offset %s and size %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1813
+#: gimple-ssa-warn-restrict.cc:1830
 #, gcc-internal-format
 msgid ""
 "%qD forming offset %s is out of the bounds [0, %wu] of object %qD with type "
 "%qT"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1816
+#: gimple-ssa-warn-restrict.cc:1833
 #, gcc-internal-format
 msgid "%qD offset %s is out of the bounds [0, %wu] of object %qD with type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1822
+#: gimple-ssa-warn-restrict.cc:1839
 #, gcc-internal-format
 msgid "%qD forming offset %s is out of the bounds of object %qD with type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1824
+#: gimple-ssa-warn-restrict.cc:1841
 #, gcc-internal-format
 msgid "%qD offset %s is out of the bounds of object %qD with type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1837
+#: gimple-ssa-warn-restrict.cc:1854
 #, gcc-internal-format
 msgid "%qD forming offset %s is out of the bounds [0, %wu]"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1839
+#: gimple-ssa-warn-restrict.cc:1856
 #, gcc-internal-format
 msgid "%qD offset %s is out of the bounds [0, %wu]"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1845
+#: gimple-ssa-warn-restrict.cc:1862
 #, gcc-internal-format
 msgid "%qD forming offset %s is out of bounds"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1846
+#: gimple-ssa-warn-restrict.cc:1863
 #, gcc-internal-format
 msgid "%qD offset %s is out of bounds"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1858
+#: gimple-ssa-warn-restrict.cc:1875
 #, gcc-internal-format
 msgid "%qD offset %s from the object at %qE is out of the bounds of %qT"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1866 gimple-ssa-warn-restrict.cc:1887
+#: gimple-ssa-warn-restrict.cc:1883 gimple-ssa-warn-restrict.cc:1904
 #, gcc-internal-format
 msgid "subobject %qD declared here"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1876
+#: gimple-ssa-warn-restrict.cc:1893
 #, gcc-internal-format
 msgid ""
 "%qD offset %s from the object at %qE is out of the bounds of referenced "
@@ -29892,506 +31130,547 @@ msgstr ""
 msgid "bytecode stream: unknown GIMPLE statement tag %s"
 msgstr ""
 
-#: gimple-warn-recursion.cc:195
+#: gimple-warn-recursion.cc:196
 #, gcc-internal-format
 msgid "infinite recursion detected"
 msgstr ""
 
-#: gimple-warn-recursion.cc:202
+#: gimple-warn-recursion.cc:203
 #, gcc-internal-format
 msgid "recursive call"
 msgstr ""
 
-#: gimple.cc:1392
+#: gimple.cc:1396
 #, gcc-internal-format, gfc-internal-format
 msgid "gimple check: expected %s(%s), have %s(%s) in %s, at %s:%d"
 msgstr ""
 
-#: gimplify.cc:1459
+#: gimplify.cc:1468
 #, gcc-internal-format
 msgid ""
 "%<allocate%> directive for %qD inside a target region must specify an "
 "%<allocator%> clause"
 msgstr ""
 
-#: gimplify.cc:2334
+#: gimplify.cc:2322
 #, gcc-internal-format
 msgid "statement will never be executed"
 msgstr ""
 
-#: gimplify.cc:2398
+#: gimplify.cc:2411
 #, gcc-internal-format
 msgid "%qs cannot be initialized with %<-ftrivial-auto-var_init%>"
 msgstr ""
 
-#: gimplify.cc:2790 gimplify.cc:2798
+#: gimplify.cc:2838 gimplify.cc:2846
 #, gcc-internal-format
 msgid "this statement may fall through"
 msgstr ""
 
-#: gimplify.cc:2800
+#: gimplify.cc:2848
 #, gcc-internal-format
 msgid "here"
 msgstr ""
 
 #. We've found [[fallthrough]]; at the end of a switch, which the C++
 #. standard says is ill-formed; see [dcl.attr.fallthrough].
-#: gimplify.cc:2871 gimplify.cc:2928 gimplify.cc:2956
+#: gimplify.cc:2919 gimplify.cc:3008 gimplify.cc:3036
 #, gcc-internal-format
 msgid "attribute %<fallthrough%> not preceding a case label or default label"
 msgstr ""
 
-#: gimplify.cc:3944
+#: gimplify.cc:4024
 #, gcc-internal-format
 msgid ""
 "the %<device%> clause must be present if the %<interop%> clause has more "
 "than one list item"
 msgstr ""
 
-#: gimplify.cc:3950
+#: gimplify.cc:4030
 #, gcc-internal-format
 msgid ""
 "number of list items in %<interop%> clause (%d) exceeds the number of "
 "%<append_args%> items (%d) for %<declare variant%> candidate %qD"
 msgstr ""
 
-#: gimplify.cc:3956
+#: gimplify.cc:4036 c/c-parser.cc:28377 c/c-parser.cc:28395
 #, gcc-internal-format
 msgid "%<declare variant%> candidate %qD declared here"
 msgstr ""
 
-#: gimplify.cc:4227
+#: gimplify.cc:4307
 #, gcc-internal-format
 msgid ""
 "%<is_device_ptr%> for %qD does not imply %<has_device_addr%> required for "
 "%<need_device_addr%>"
 msgstr ""
 
-#: gimplify.cc:4239
+#: gimplify.cc:4319
 #, gcc-internal-format
 msgid ""
 "%<has_device_addr%> for %qD does not imply %<is_device_ptr%> required for "
 "%<need_device_ptr%>"
 msgstr ""
 
-#: gimplify.cc:4856
+#: gimplify.cc:4956
 #, gcc-internal-format
 msgid "using result of function returning %<void%>"
 msgstr ""
 
-#: gimplify.cc:7889
+#: gimplify.cc:7996
+#, gcc-internal-format
+msgid "operand constraints for %<asm%> differ in number of alternatives"
+msgstr ""
+
+#: gimplify.cc:8059
 #, gcc-internal-format, gfc-internal-format
 msgid "non-memory output %d must stay in memory"
 msgstr ""
 
-#: gimplify.cc:7904
+#: gimplify.cc:8074
 #, gcc-internal-format
 msgid "invalid lvalue in %<asm%> output %d"
 msgstr ""
 
-#: gimplify.cc:8060
+#: gimplify.cc:8243
+#, gcc-internal-format
+msgid "multiple outputs to lvalue %qE"
+msgstr ""
+
+#: gimplify.cc:8278
 #, gcc-internal-format, gfc-internal-format
 msgid "non-memory input %d must stay in memory"
 msgstr ""
 
-#: gimplify.cc:8101 gimplify.cc:8111
+#: gimplify.cc:8319 gimplify.cc:8329
 #, gcc-internal-format, gfc-internal-format
 msgid "memory input %d is not directly addressable"
 msgstr ""
 
-#: gimplify.cc:8734
+#: gimplify.cc:8955
 #, gcc-internal-format
 msgid ""
 "threadprivate variable %qE used in a region with %<order(concurrent)%> clause"
 msgstr ""
 
-#: gimplify.cc:8736
+#: gimplify.cc:8957
 #, gcc-internal-format
 msgid "enclosing region"
 msgstr ""
 
-#: gimplify.cc:8740
+#: gimplify.cc:8961
 #, gcc-internal-format
 msgid "threadprivate variable %qE used in target region"
 msgstr ""
 
-#: gimplify.cc:8742
+#: gimplify.cc:8963
 #, gcc-internal-format
 msgid "enclosing target region"
 msgstr ""
 
-#: gimplify.cc:8755
+#: gimplify.cc:8976
 #, gcc-internal-format
 msgid "threadprivate variable %qE used in untied task"
 msgstr ""
 
-#: gimplify.cc:8757
+#: gimplify.cc:8978
 #, gcc-internal-format
 msgid "enclosing task"
 msgstr ""
 
-#: gimplify.cc:8854
+#: gimplify.cc:9075
 #, gcc-internal-format
 msgid "%qE not specified in enclosing %qs"
 msgstr ""
 
-#: gimplify.cc:8856
+#: gimplify.cc:9077
 #, gcc-internal-format
 msgid "enclosing %qs"
 msgstr ""
 
-#: gimplify.cc:9030
+#: gimplify.cc:9251
 #, gcc-internal-format
 msgid "%qE not specified in enclosing OpenACC %qs construct"
 msgstr ""
 
-#: gimplify.cc:9034
+#: gimplify.cc:9255
 #, gcc-internal-format
 msgid "enclosing OpenACC %qs construct and"
 msgstr ""
 
-#: gimplify.cc:9037
+#: gimplify.cc:9258
 #, gcc-internal-format
 msgid "enclosing OpenACC %qs construct with %qs clause"
 msgstr ""
 
-#: gimplify.cc:9107
+#: gimplify.cc:9328
 #, gcc-internal-format
 msgid "%qE with %<link%> clause used in %<routine%> function"
 msgstr ""
 
-#: gimplify.cc:9115
+#: gimplify.cc:9336
 #, gcc-internal-format
 msgid "%qE requires a %<declare%> directive for use in a %<routine%> function"
 msgstr ""
 
-#: gimplify.cc:9177
+#: gimplify.cc:9398
 #, gcc-internal-format
 msgid "%qE not specified in enclosing %<target%>"
 msgstr ""
 
-#: gimplify.cc:9179
+#: gimplify.cc:9400
 #, gcc-internal-format
 msgid "enclosing %<target%>"
 msgstr ""
 
-#: gimplify.cc:9214 gimplify.cc:13346
+#: gimplify.cc:9435 gimplify.cc:14140
 #, gcc-internal-format
 msgid "variable %qE declared in enclosing %<host_data%> region"
 msgstr ""
 
-#: gimplify.cc:9242
+#: gimplify.cc:9463
 #, gcc-internal-format
 msgid "%qD referenced in target region does not have a mappable type"
 msgstr ""
 
-#: gimplify.cc:9385
+#: gimplify.cc:9606
 #, gcc-internal-format
 msgid "iteration variable %qE is predetermined linear"
 msgstr ""
 
-#: gimplify.cc:9388
+#: gimplify.cc:9609
 #, gcc-internal-format
 msgid "iteration variable %qE should be private"
 msgstr ""
 
-#: gimplify.cc:9402
+#: gimplify.cc:9623
 #, gcc-internal-format
 msgid "iteration variable %qE should not be firstprivate"
 msgstr ""
 
-#: gimplify.cc:9405
+#: gimplify.cc:9626
 #, gcc-internal-format
 msgid "iteration variable %qE should not be reduction"
 msgstr ""
 
-#: gimplify.cc:9408
+#: gimplify.cc:9629
 #, gcc-internal-format
 msgid "iteration variable %qE should not be linear"
 msgstr ""
 
-#: gimplify.cc:10412 gimplify.cc:10423 gimplify.cc:10435 gimplify.cc:10451
-#: gimplify.cc:10656 gimplify.cc:10679 gimplify.cc:10690 gimplify.cc:10708
+#: gimplify.cc:10082
+#, gcc-internal-format
+msgid "iterator variable %qE not used in clause expression"
+msgstr ""
+
+#: gimplify.cc:10201
+#, gcc-internal-format
+msgid "iteration count is zero"
+msgstr ""
+
+#. Handle dynamic sizes.
+#: gimplify.cc:10245
+#, gcc-internal-format
+msgid "dynamic iterator sizes not implemented yet"
+msgstr ""
+
+#: gimplify.cc:10993 gimplify.cc:11004 gimplify.cc:11016 gimplify.cc:11032
+#: gimplify.cc:11237 gimplify.cc:11260 gimplify.cc:11271 gimplify.cc:11289
 #, gcc-internal-format
 msgid "unexpected mapping node"
 msgstr ""
 
-#: gimplify.cc:10745
+#: gimplify.cc:11326
 #, gcc-internal-format
 msgid "unexpected pointer mapping node"
 msgstr ""
 
-#: gimplify.cc:10958
+#: gimplify.cc:11539
 #, gcc-internal-format
 msgid "base pointer cycle detected"
 msgstr ""
 
-#: gimplify.cc:11465
+#: gimplify.cc:12046
 #, gcc-internal-format
 msgid ""
 "data movement for component %qE is not compatible with movement for struct "
 "%qE"
 msgstr ""
 
-#: gimplify.cc:11781
+#: gimplify.cc:12362
 #, gcc-internal-format
 msgid "%qE appears more than once in map clauses"
 msgstr ""
 
-#: gimplify.cc:12737
+#: gimplify.cc:13318
 #, gcc-internal-format
 msgid "mapping field %qE of variable length structure"
 msgstr ""
 
-#: gimplify.cc:13039 gimplify.cc:13045
+#: gimplify.cc:13614 c-family/c-omp.cc:4459 c-family/c-omp.cc:4559
+#, gcc-internal-format
+msgid "user-defined mapper with non-unit length array section"
+msgstr ""
+
+#: gimplify.cc:13833 gimplify.cc:13839
 #, gcc-internal-format
 msgid "conditional %<lastprivate%> clause on %qs construct"
 msgstr ""
 
-#: gimplify.cc:13062
+#: gimplify.cc:13856
 #, gcc-internal-format
 msgid "non-scalar variable %qD in conditional %<lastprivate%> clause"
 msgstr ""
 
-#: gimplify.cc:13084
+#: gimplify.cc:13878
 #, gcc-internal-format
 msgid "%<task%> reduction modifier on a construct with a %<nowait%> clause"
 msgstr ""
 
-#: gimplify.cc:13092
+#: gimplify.cc:13886
 #, gcc-internal-format
 msgid ""
 "invalid %<task%> reduction modifier on construct other than %<parallel%>, "
 "%qs, %<sections%> or %<scope%>"
 msgstr ""
 
-#: gimplify.cc:13103 gimplify.cc:13109 gimplify.cc:13115 gimplify.cc:13121
-#: gimplify.cc:13127 gimplify.cc:17513
+#: gimplify.cc:13897 gimplify.cc:13903 gimplify.cc:13909 gimplify.cc:13915
+#: gimplify.cc:13921 gimplify.cc:18361
 #, gcc-internal-format
 msgid "%<inscan%> %<reduction%> clause on %qs construct"
 msgstr ""
 
-#: gimplify.cc:13221
+#: gimplify.cc:14015
 #, gcc-internal-format
 msgid ""
 "%<linear%> clause for variable other than loop iterator specified on "
 "construct combined with %<distribute%>"
 msgstr ""
 
-#: gimplify.cc:13846
+#: gimplify.cc:14652
 #, gcc-internal-format
 msgid ""
 "copyprivate variable %qE is not threadprivate or private in outer context"
 msgstr ""
 
-#: gimplify.cc:13903
+#: gimplify.cc:14709
 #, gcc-internal-format
 msgid "%s variable %qE is private in outer context"
 msgstr ""
 
-#: gimplify.cc:13935
+#: gimplify.cc:14741
 #, gcc-internal-format
 msgid "expected %qs %<if%> clause modifier rather than %qs"
 msgstr ""
 
-#: gimplify.cc:13974
+#: gimplify.cc:14780
 #, gcc-internal-format
 msgid ""
 "%<device%> clause with %<ancestor%> is only allowed on %<target%> construct"
 msgstr ""
 
-#: gimplify.cc:13990
+#: gimplify.cc:14796
 #, gcc-internal-format
 msgid ""
 "with %<ancestor%>, only the %<device%>, %<firstprivate%>, %<private%>, "
 "%<defaultmap%>, and %<map%> clauses may appear on the construct"
 msgstr ""
 
-#: gimplify.cc:14195
+#: gimplify.cc:14863
+#, gcc-internal-format
+msgid "%<uses_allocators%> clause"
+msgstr ""
+
+#: gimplify.cc:14893
+#, gcc-internal-format
+msgid "%<dyn_groupprivate%> clause"
+msgstr ""
+
+#: gimplify.cc:15012
 #, gcc-internal-format
 msgid ""
 "allocator with access trait set to %<thread%> results in undefined behavior "
 "for %qs directive"
 msgstr ""
 
-#: gimplify.cc:14236
+#: gimplify.cc:15053
 #, gcc-internal-format
 msgid ""
 "%qD specified in %qs clause but not in %<inscan%> %<reduction%> clause on "
 "the containing construct"
 msgstr ""
 
-#: gimplify.cc:14456
+#: gimplify.cc:15273
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in implicit %<map%> clause"
 msgstr ""
 
-#: gimplify.cc:14510
+#: gimplify.cc:15327
 #, gcc-internal-format
 msgid ""
 "%<_Atomic%> %qD in implicit %<firstprivate%> clause on %<target%> construct"
 msgstr ""
 
-#: gimplify.cc:14848
+#: gimplify.cc:15690
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<firstprivate%> clause on %<target%> construct"
 msgstr ""
 
-#: gimplify.cc:14921
+#: gimplify.cc:15763
 #, gcc-internal-format
 msgid ""
 "same variable used in %<firstprivate%> and %<lastprivate%> clauses on "
 "%<distribute%> construct"
 msgstr ""
 
-#: gimplify.cc:15098
+#: gimplify.cc:15942
 #, gcc-internal-format
 msgid ""
 "incompatible data clause with reduction on %qE; promoting to "
 "%<present_or_copy%>"
 msgstr ""
 
-#: gimplify.cc:15396
+#: gimplify.cc:16242
 #, gcc-internal-format
 msgid ""
 "%qD specified in %<inscan%> %<reduction%> clause but not in %<scan%> "
 "directive clause"
 msgstr ""
 
-#: gimplify.cc:15415
+#: gimplify.cc:16261
 #, gcc-internal-format
 msgid "invalid private reduction on %qE"
 msgstr ""
 
-#: gimplify.cc:15582
+#: gimplify.cc:16430
 #, gcc-internal-format
 msgid ""
 "%<inscan%> %<reduction%> clause used together with %<linear%> clause for a "
 "variable other than loop iterator"
 msgstr ""
 
-#: gimplify.cc:15898
+#: gimplify.cc:16746
 #, gcc-internal-format
 msgid "%<mutexinoutset%> kind in %<depend%> clause on a %<taskwait%> construct"
 msgstr ""
 
-#: gimplify.cc:15908
+#: gimplify.cc:16756
 #, gcc-internal-format
 msgid "%<taskwait%> construct with %<nowait%> clause but no %<depend%> clauses"
 msgstr ""
 
-#: gimplify.cc:16346 gimplify.cc:16350 gimplify.cc:16359 gimplify.cc:16371
-#: gimplify.cc:16376
+#: gimplify.cc:17194 gimplify.cc:17198 gimplify.cc:17207 gimplify.cc:17219
+#: gimplify.cc:17224
 #, gcc-internal-format
 msgid "%qs clause may not appear on non-rectangular %qs"
 msgstr ""
 
-#: gimplify.cc:16541
+#: gimplify.cc:17389
 #, gcc-internal-format
 msgid ""
 "%<linear%> clause may not be specified together with %<ordered%> clause if "
 "stand-alone %<ordered%> construct is nested in it"
 msgstr ""
 
-#: gimplify.cc:16606
+#: gimplify.cc:17454
 #, gcc-internal-format
 msgid "threadprivate iteration variable %qD"
 msgstr ""
 
-#: gimplify.cc:16637 gimplify.cc:16745
+#: gimplify.cc:17485 gimplify.cc:17593
 #, gcc-internal-format
 msgid "conditional %<lastprivate%> on loop iterator %qD ignored"
 msgstr ""
 
-#: gimplify.cc:17451
+#: gimplify.cc:18299
 #, gcc-internal-format
 msgid ""
 "%<bind%> clause not specified on a %<loop%> construct not nested inside "
 "another OpenMP construct"
 msgstr ""
 
-#: gimplify.cc:17475
+#: gimplify.cc:18323
 #, gcc-internal-format
 msgid ""
 "%<bind(parallel)%> on a %<loop%> construct nested inside %<simd%> construct"
 msgstr ""
 
-#: gimplify.cc:17495
+#: gimplify.cc:18343
 #, gcc-internal-format
 msgid ""
 "%<bind(teams)%> on a %<loop%> region not strictly nested inside of a "
 "%<teams%> region"
 msgstr ""
 
-#: gimplify.cc:17520
+#: gimplify.cc:18368
 #, gcc-internal-format
 msgid ""
 "invalid %<task%> reduction modifier on construct other than %<parallel%>, "
 "%qs or %<sections%>"
 msgstr ""
 
-#: gimplify.cc:17548
+#: gimplify.cc:18396
 #, gcc-internal-format
 msgid ""
 "%<lastprivate%> clause on a %<loop%> construct refers to a variable %qD "
 "which is not the loop iterator"
 msgstr ""
 
-#: gimplify.cc:18630
+#: gimplify.cc:19492
 #, gcc-internal-format
 msgid ""
 "%<ordered%> construct with %qs clause must be closely nested inside a loop "
 "with %<ordered%> clause"
 msgstr ""
 
-#: gimplify.cc:18651
+#: gimplify.cc:19513
 #, gcc-internal-format
 msgid "variable %qE is not an iteration of outermost loop %d, expected %qE"
 msgstr ""
 
-#: gimplify.cc:18664
+#: gimplify.cc:19526
 #, gcc-internal-format
 msgid ""
 "number of variables in %qs clause with %<sink%> modifier does not match "
 "number of iteration variables"
 msgstr ""
 
-#: gimplify.cc:18678
+#: gimplify.cc:19540
 #, gcc-internal-format
 msgid ""
 "more than one %qs clause with %<source%> modifier on an %<ordered%> construct"
 msgstr ""
 
-#: gimplify.cc:18691
+#: gimplify.cc:19553
 #, gcc-internal-format
 msgid ""
 "%qs clause with %<source%> modifier specified together with %qs clauses with "
 "%<sink%> modifier on the same construct"
 msgstr ""
 
-#: gimplify.cc:18858
+#: gimplify.cc:19720
 #, gcc-internal-format
 msgid ""
 "%qD is a virtual function but only a direct call is allowed in a dispatch "
 "construct"
 msgstr ""
 
-#: gimplify.cc:20600
+#: gimplify.cc:21475
 #, gcc-internal-format
 msgid "gimplification failed"
 msgstr ""
 
-#: gimplify.cc:21215
+#: gimplify.cc:22090
 #, gcc-internal-format
 msgid "%qT is promoted to %qT when passed through %<...%>"
 msgstr ""
 
-#: gimplify.cc:21220
+#: gimplify.cc:22095
 #, gcc-internal-format
 msgid "(so you should pass %qT not %qT to %<va_arg%>)"
 msgstr ""
 
-#: gimplify.cc:21227
+#: gimplify.cc:22102
 #, gcc-internal-format
 msgid "if this code is reached, the program will abort"
 msgstr ""
@@ -30411,27 +31690,27 @@ msgstr ""
 msgid "Graphite loop optimizations cannot be used (isl is not available)."
 msgstr ""
 
-#: input.cc:1580
+#: input.cc:665
 #, gcc-internal-format
 msgid "expansion point is location %llu"
 msgstr ""
 
-#: input.cc:1610
+#: input.cc:695
 #, gcc-internal-format
 msgid "token %u has %<x-location == y-location == %llu%>"
 msgstr ""
 
-#: input.cc:1621
+#: input.cc:706
 #, gcc-internal-format
 msgid "token %u has %<x-location == %llu%>"
 msgstr ""
 
-#: input.cc:1622
+#: input.cc:707
 #, gcc-internal-format
 msgid "token %u has %<y-location == %llu%>"
 msgstr ""
 
-#: internal-fn.cc:895
+#: internal-fn.cc:958
 #, gcc-internal-format
 msgid "invalid use of attribute %<fallthrough%>"
 msgstr ""
@@ -30717,7 +31996,7 @@ msgstr ""
 msgid "the extra base is defined here"
 msgstr ""
 
-#: ipa-devirt.cc:3882
+#: ipa-devirt.cc:3990
 #, gcc-internal-format
 msgid "Declaring type %qD final would enable devirtualization of %i call"
 msgid_plural ""
@@ -30725,7 +32004,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: ipa-devirt.cc:3891
+#: ipa-devirt.cc:3999
 #, gcc-internal-format
 msgid ""
 "Declaring type %qD final would enable devirtualization of %i call executed "
@@ -30736,7 +32015,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: ipa-devirt.cc:3921
+#: ipa-devirt.cc:4029
 #, gcc-internal-format
 msgid ""
 "Declaring virtual destructor of %qD final would enable devirtualization of "
@@ -30747,7 +32026,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: ipa-devirt.cc:3929
+#: ipa-devirt.cc:4037
 #, gcc-internal-format
 msgid "Declaring method %qD final would enable devirtualization of %i call"
 msgid_plural ""
@@ -30755,7 +32034,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: ipa-devirt.cc:3937
+#: ipa-devirt.cc:4045
 #, gcc-internal-format
 msgid ""
 "Declaring virtual destructor of %qD final would enable devirtualization of "
@@ -30766,7 +32045,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: ipa-devirt.cc:3948
+#: ipa-devirt.cc:4056
 #, gcc-internal-format
 msgid ""
 "Declaring method %qD final would enable devirtualization of %i call executed "
@@ -30777,63 +32056,63 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: ipa-devirt.cc:4261
+#: ipa-devirt.cc:4372
 #, gcc-internal-format
 msgid "type %qs violates the C++ One Definition Rule"
 msgstr ""
 
-#: ipa-devirt.cc:4270
+#: ipa-devirt.cc:4381
 #, gcc-internal-format
 msgid ""
 "an enum with different number of values is defined in another translation "
 "unit"
 msgstr ""
 
-#: ipa-devirt.cc:4274
+#: ipa-devirt.cc:4385
 #, gcc-internal-format
 msgid ""
 "an enum with different value name is defined in another translation unit"
 msgstr ""
 
-#: ipa-devirt.cc:4278
+#: ipa-devirt.cc:4389
 #, gcc-internal-format
 msgid "an enum with different values is defined in another translation unit"
 msgstr ""
 
-#: ipa-devirt.cc:4299
+#: ipa-devirt.cc:4410
 #, gcc-internal-format
 msgid "name %qs differs from name %qs defined in another translation unit"
 msgstr ""
 
-#: ipa-devirt.cc:4305
+#: ipa-devirt.cc:4416
 #, gcc-internal-format
 msgid ""
 "name %qs is defined as %u-bit while another translation unit defines it as "
 "%u-bit"
 msgstr ""
 
-#: ipa-devirt.cc:4314
+#: ipa-devirt.cc:4425
 #, gcc-internal-format
 msgid ""
 "name %qs is defined to %wd while another translation unit defines it as %wd"
 msgstr ""
 
-#: ipa-devirt.cc:4320
+#: ipa-devirt.cc:4431
 #, gcc-internal-format
 msgid "name %qs is defined to different value in another translation unit"
 msgstr ""
 
-#: ipa-devirt.cc:4325
+#: ipa-devirt.cc:4436
 #, gcc-internal-format
 msgid "mismatching definition"
 msgstr ""
 
-#: ipa-fnsummary.cc:4845
+#: ipa-fnsummary.cc:4903
 #, gcc-internal-format
 msgid "invalid fnsummary in LTO stream"
 msgstr ""
 
-#: ipa-fnsummary.cc:4946
+#: ipa-fnsummary.cc:5004
 #, gcc-internal-format
 msgid "ipa inline summary is missing in input file"
 msgstr ""
@@ -30843,7 +32122,7 @@ msgstr ""
 msgid "IPA modref summary is missing in input file"
 msgstr ""
 
-#: ipa-prop.cc:4991 ipa-prop.cc:5035 ipa-prop.cc:5115 ipa-prop.cc:5167
+#: ipa-prop.cc:5357 ipa-prop.cc:5401 ipa-prop.cc:5481 ipa-prop.cc:5533
 #, gcc-internal-format
 msgid "invalid jump function in LTO stream"
 msgstr ""
@@ -30890,12 +32169,12 @@ msgstr ""
 msgid "IPA-SRA access verification failed"
 msgstr ""
 
-#: ipa-sra.cc:2751
+#: ipa-sra.cc:2757
 #, gcc-internal-format
 msgid "function %qs, parameter %u, has IPA-SRA accesses which overlap"
 msgstr ""
 
-#: ipa-sra.cc:2754
+#: ipa-sra.cc:2760
 #, gcc-internal-format
 msgid ""
 "function %qs, parameter %u, is used but does not have any certain IPA-SRA "
@@ -31002,201 +32281,191 @@ msgstr ""
 msgid "calling %qD using non-%<strub%> type %qT in %<strub%> context %qD"
 msgstr ""
 
-#: ipa-strub.cc:2842
+#: ipa-strub.cc:2841
 #, gcc-internal-format
 msgid "failed to split %qD for %<strub%>"
 msgstr ""
 
-#: ira.cc:2426 ira.cc:2448
+#: ira.cc:2514 ira.cc:2536
 #, gcc-internal-format
 msgid "%s cannot be used in %<asm%> here"
 msgstr ""
 
-#: ira.cc:6073
+#: ira.cc:6162
 #, gcc-internal-format
 msgid "frame pointer required, but reserved"
 msgstr ""
 
-#: ira.cc:6074
+#: ira.cc:6163
 #, gcc-internal-format
 msgid "for %qD"
 msgstr ""
 
-#: ira.cc:6090
+#: ira.cc:6179
 #, gcc-internal-format
 msgid "frame size too large for reliable stack checking"
 msgstr ""
 
-#: json-parsing.cc:1085
+#: json-parsing.cc:1084
 #, gcc-internal-format, gfc-internal-format
 msgid "maximum nesting depth exceeded: %i"
 msgstr ""
 
-#: json-parsing.cc:1145
+#: json-parsing.cc:1144
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid JSON token: %s"
 msgstr ""
 
-#: json-parsing.cc:1148
+#: json-parsing.cc:1147
 #, gcc-internal-format, gfc-internal-format
 msgid "expected a JSON value but got %s"
 msgstr ""
 
-#: json-parsing.cc:1176
+#: json-parsing.cc:1175
 #, gcc-internal-format, gfc-internal-format
 msgid "expected string for object key after '{'; got %s"
 msgstr ""
 
-#: json-parsing.cc:1183
+#: json-parsing.cc:1182
 #, gcc-internal-format, gfc-internal-format
 msgid "expected string for object key after ','; got %s"
 msgstr ""
 
-#: json-parsing.cc:1297
+#: json-parsing.cc:1296
 #, gcc-internal-format, gfc-internal-format
 msgid "expected %s; got bad token: %s"
 msgstr ""
 
-#: json-parsing.cc:1301
+#: json-parsing.cc:1300
 #, gcc-internal-format, gfc-internal-format
 msgid "expected %s; got %s"
 msgstr ""
 
-#: json-parsing.cc:1320
+#: json-parsing.cc:1319
 #, gcc-internal-format, gfc-internal-format
 msgid "expected %s or %s; got bad token: %s"
 msgstr ""
 
-#: json-parsing.cc:1324
+#: json-parsing.cc:1323
 #, gcc-internal-format, gfc-internal-format
 msgid "expected %s or %s; got %s"
 msgstr ""
 
-#: lazy-diagnostic-path.cc:179
-#, gcc-internal-format
-msgid "this warning should be skipped"
-msgstr ""
-
-#: lazy-diagnostic-path.cc:194
-#, gcc-internal-format
-msgid "this is a test"
-msgstr ""
-
-#: lra-assigns.cc:1694
+#: lra-assigns.cc:1713
 #, gcc-internal-format, gfc-internal-format
 msgid "maximum number of LRA assignment passes is achieved (%d)"
 msgstr ""
 
-#: lra-assigns.cc:1862
+#: lra-assigns.cc:1884
 #, gcc-internal-format
 msgid "unable to find a register to spill"
 msgstr ""
 
-#: lra-constraints.cc:4357 reload.cc:3853 reload.cc:4108
+#: lra-constraints.cc:4480 reload.cc:3853 reload.cc:4108
 #, gcc-internal-format
 msgid "inconsistent operand constraints in an %<asm%>"
 msgstr ""
 
-#: lra-constraints.cc:5480
+#: lra-constraints.cc:5647
 #, gcc-internal-format, gfc-internal-format
 msgid "maximum number of generated reload insns per insn achieved (%d)"
 msgstr ""
 
-#: lra.cc:546
+#: lra.cc:555
 #, gcc-internal-format
 msgid ""
 "%<asm%> operand has impossible constraints or there are not enough registers"
 msgstr ""
 
-#: lto-cgraph.cc:1177
+#: lto-cgraph.cc:1217
 #, gcc-internal-format
 msgid ""
 "function %qs has been referenced in offloaded code but hasn%'t been marked "
 "to be included in the offloaded code"
 msgstr ""
 
-#: lto-cgraph.cc:1183
+#: lto-cgraph.cc:1223
 #, gcc-internal-format
 msgid ""
 "variable %qs has been referenced in offloaded code but hasn%'t been marked "
 "to be included in the offloaded code"
 msgstr ""
 
-#: lto-cgraph.cc:1351
+#: lto-cgraph.cc:1394
 #, gcc-internal-format, gfc-internal-format
 msgid "bytecode stream: found multiple instances of cgraph node with uid %d"
 msgstr ""
 
-#: lto-cgraph.cc:1516
+#: lto-cgraph.cc:1561
 #, gcc-internal-format
 msgid "bytecode stream: no caller found while reading edge"
 msgstr ""
 
-#: lto-cgraph.cc:1522
+#: lto-cgraph.cc:1567
 #, gcc-internal-format
 msgid "bytecode stream: no callee found while reading edge"
 msgstr ""
 
-#: lto-cgraph.cc:1599
+#: lto-cgraph.cc:1662
 #, gcc-internal-format
 msgid "bytecode stream: found empty cgraph node"
 msgstr ""
 
-#: lto-cgraph.cc:1715
+#: lto-cgraph.cc:1778
 #, gcc-internal-format, gfc-internal-format
 msgid "At most %i profile runs is supported. Perhaps corrupted profile?"
 msgstr ""
 
-#: lto-cgraph.cc:1740
+#: lto-cgraph.cc:1813
 #, gcc-internal-format, gfc-internal-format
 msgid "Profile information in %s corrupted"
 msgstr ""
 
-#: lto-cgraph.cc:1778
+#: lto-cgraph.cc:1851
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot find LTO cgraph in %s"
 msgstr ""
 
-#: lto-cgraph.cc:1788
+#: lto-cgraph.cc:1861
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot find LTO section refs in %s"
 msgstr ""
 
-#: lto-cgraph.cc:1949
+#: lto-cgraph.cc:2035
 #, gcc-internal-format
 msgid ""
 "OpenMP %<requires%> directive with non-identical clauses in multiple "
 "compilation units: %qs vs. %qs"
 msgstr ""
 
-#: lto-cgraph.cc:1952 lto-cgraph.cc:1953 lto-cgraph.cc:1959
+#: lto-cgraph.cc:2038 lto-cgraph.cc:2039 lto-cgraph.cc:2045
 #, gcc-internal-format
 msgid "%qs has %qs"
 msgstr ""
 
-#: lto-cgraph.cc:1957
+#: lto-cgraph.cc:2043
 #, gcc-internal-format
 msgid ""
 "OpenMP %<requires%> directive with %qs specified only in some compilation "
 "units"
 msgstr ""
 
-#: lto-cgraph.cc:1962
+#: lto-cgraph.cc:2048
 #, gcc-internal-format
 msgid "but %qs has not"
 msgstr ""
 
-#: lto-cgraph.cc:1970
+#: lto-cgraph.cc:2056
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid offload table in %s"
 msgstr ""
 
-#: lto-cgraph.cc:1981
+#: lto-cgraph.cc:2067
 #, gcc-internal-format
 msgid "GCC_OFFLOAD_OMP_REQUIRES_FILE unset"
 msgstr ""
 
-#: lto-cgraph.cc:1984
+#: lto-cgraph.cc:2070
 #, gcc-internal-format
 msgid "Cannot open omp_requires file %qs"
 msgstr ""
@@ -31228,13 +32497,13 @@ msgstr ""
 msgid "compiler does not support ZSTD LTO compression"
 msgstr ""
 
-#: lto-section-in.cc:460
+#: lto-section-in.cc:459
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "bytecode stream: trying to read %d bytes after the end of the input buffer"
 msgstr ""
 
-#: lto-section-in.cc:471
+#: lto-section-in.cc:470
 #, gcc-internal-format, gfc-internal-format
 msgid "%s out of range: Range is %i to %i, value is %i"
 msgstr ""
@@ -31264,48 +32533,43 @@ msgstr ""
 msgid "Reference statement index not found"
 msgstr ""
 
-#: lto-streamer-in.cc:2026
+#: lto-streamer-in.cc:2028
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot read LTO mode table from %s"
 msgstr ""
 
-#: lto-streamer-in.cc:2133
+#: lto-streamer-in.cc:2135
 #, gcc-internal-format
 msgid "%s - %u-bit-precision floating-point numbers unsupported (mode %qs)"
 msgstr ""
 
-#: lto-streamer-in.cc:2138
+#: lto-streamer-in.cc:2140
 #, gcc-internal-format
 msgid ""
 "%s - %u-bit-precision decimal floating-point numbers unsupported (mode %qs)"
 msgstr ""
 
-#: lto-streamer-in.cc:2143
+#: lto-streamer-in.cc:2145
 #, gcc-internal-format
 msgid ""
 "%s - %u-bit-precision complex floating-point numbers unsupported (mode %qs)"
 msgstr ""
 
-#: lto-streamer-in.cc:2148
+#: lto-streamer-in.cc:2150
 #, gcc-internal-format
 msgid "%s - %u-bit integer numbers unsupported (mode %qs)"
 msgstr ""
 
-#: lto-streamer-in.cc:2151
+#: lto-streamer-in.cc:2153
 #, gcc-internal-format
 msgid "%s - unsupported mode %qs"
 msgstr ""
 
-#: lto-streamer-out.cc:559 lto-streamer-out.cc:911
+#: lto-streamer-out.cc:560 lto-streamer-out.cc:912
 #, gcc-internal-format
 msgid "tree code %qs is not supported in LTO streams"
 msgstr ""
 
-#: lto-streamer-out.cc:2554
-#, gcc-internal-format
-msgid "LTO streaming of toplevel extended %<asm%> unimplemented"
-msgstr ""
-
 #: lto-streamer.cc:129
 #, gcc-internal-format, gfc-internal-format
 msgid "bytecode stream: unexpected LTO section %s"
@@ -31318,178 +32582,178 @@ msgid ""
 "expected %d.%d"
 msgstr ""
 
-#: lto-wrapper.cc:164
+#: lto-wrapper.cc:163
 #, gcc-internal-format
 msgid "deleting LTRANS file %s: %m"
 msgstr ""
 
-#: lto-wrapper.cc:365
+#: lto-wrapper.cc:367
 #, gcc-internal-format, gfc-internal-format
 msgid "option %s with different values"
 msgstr ""
 
-#: lto-wrapper.cc:381
+#: lto-wrapper.cc:383
 #, gcc-internal-format
 msgid "option %qs with mismatching values (%s, %s)"
 msgstr ""
 
-#: lto-wrapper.cc:497
+#: lto-wrapper.cc:499
 #, gcc-internal-format, gfc-internal-format
 msgid "option %s not used consistently in all LTO input files"
 msgstr ""
 
-#: lto-wrapper.cc:642 lto-wrapper.cc:650
+#: lto-wrapper.cc:644 lto-wrapper.cc:652
 #, gcc-internal-format
 msgid ""
 "Extra option to %<-Xassembler%>: %s, dropping all %<-Xassembler%> and %<-"
 "Wa%> options."
 msgstr ""
 
-#: lto-wrapper.cc:658
+#: lto-wrapper.cc:660
 #, gcc-internal-format
 msgid ""
 "Options to %<-Xassembler%> do not match: %s, %s, dropping all %<-"
 "Xassembler%> and %<-Wa%> options."
 msgstr ""
 
-#: lto-wrapper.cc:973
+#: lto-wrapper.cc:981
 #, gcc-internal-format
 msgid "could not find %s in %s (consider using %<-B%>)"
 msgstr ""
 
-#: lto-wrapper.cc:1054
+#: lto-wrapper.cc:1062
 #, gcc-internal-format, gfc-internal-format
 msgid "problem with building target image for %s"
 msgstr ""
 
-#: lto-wrapper.cc:1083
+#: lto-wrapper.cc:1091
 #, gcc-internal-format
 msgid "reading input file"
 msgstr ""
 
-#: lto-wrapper.cc:1088
+#: lto-wrapper.cc:1096
 #, gcc-internal-format
 msgid "writing output file"
 msgstr ""
 
-#: lto-wrapper.cc:1127
+#: lto-wrapper.cc:1135
 #, gcc-internal-format
 msgid "installation error, cannot find %<crtoffloadtable%s.o%>"
 msgstr ""
 
-#: lto-wrapper.cc:1380
+#: lto-wrapper.cc:1386
 msgid "see the %{%<-flto%> option documentation%} for more information"
 msgstr ""
 
-#: lto-wrapper.cc:1448
+#: lto-wrapper.cc:1454
 #, gcc-internal-format
 msgid "environment variable %<COLLECT_GCC%> must be set"
 msgstr ""
 
-#: lto-wrapper.cc:1452 config/gcn/mkoffload.cc:764
+#: lto-wrapper.cc:1458 config/gcn/mkoffload.cc:812
 #, gcc-internal-format
 msgid "environment variable %<COLLECT_GCC_OPTIONS%> must be set"
 msgstr ""
 
-#: lto-wrapper.cc:1575
+#: lto-wrapper.cc:1579
 #, gcc-internal-format, gfc-internal-format
 msgid "missing directory: %s"
 msgstr ""
 
-#: lto-wrapper.cc:1768 lto-wrapper.cc:1828 c-family/c-pch.cc:215
+#: lto-wrapper.cc:1772 lto-wrapper.cc:1830 c-family/c-pch.cc:215
 #: c-family/c-pch.cc:250 c-family/c-pch.cc:288 c-family/c-pch.cc:366
 #, gcc-internal-format
 msgid "cannot read %s: %m"
 msgstr ""
 
-#: lto-wrapper.cc:1795
+#: lto-wrapper.cc:1799
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid format of %s"
 msgstr ""
 
-#: lto-wrapper.cc:1971
+#: lto-wrapper.cc:1973
 #, gcc-internal-format
 msgid "%<fopen%>: %s: %m"
 msgstr ""
 
-#: lto-wrapper.cc:1988
+#: lto-wrapper.cc:1990
 #, gcc-internal-format, gfc-internal-format
 msgid "corrupted ltrans output file %s"
 msgstr ""
 
-#: lto-wrapper.cc:2032
+#: lto-wrapper.cc:2034
 #, gcc-internal-format, gfc-internal-format
 msgid "using serial compilation of %d LTRANS jobs"
 msgstr ""
 
-#: lto-wrapper.cc:2054
+#: lto-wrapper.cc:2056
 #, gcc-internal-format
 msgid "using ltrans cache without file locking support, do not use in parallel"
 msgstr ""
 
-#: lto-wrapper.cc:2315 config/gcn/mkoffload.cc:954
+#: lto-wrapper.cc:2318 config/gcn/mkoffload.cc:1002
 #, gcc-internal-format
 msgid "%<atexit%> failed"
 msgstr ""
 
-#: multiple_target.cc:72
+#: multiple_target.cc:79
 #, gcc-internal-format
 msgid "the call requires %<ifunc%>, which is not supported by this target"
 msgstr ""
 
-#: multiple_target.cc:79
+#: multiple_target.cc:86
 #, gcc-internal-format
 msgid "target does not support function version dispatcher"
 msgstr ""
 
-#: multiple_target.cc:87
+#: multiple_target.cc:94
 #, gcc-internal-format
 msgid "default %<target_clones%> attribute was not set"
 msgstr ""
 
-#: multiple_target.cc:331 c-family/c-attribs.cc:6138
+#: multiple_target.cc:283 c-family/c-attribs.cc:6439
 #, gcc-internal-format
 msgid "single %<target_clones%> attribute is ignored"
 msgstr ""
 
-#: multiple_target.cc:340
+#: multiple_target.cc:299
 #, gcc-internal-format
 msgid "clones for %<target_clones%> attribute cannot be created"
 msgstr ""
 
-#: multiple_target.cc:343
+#: multiple_target.cc:302
 #, gcc-internal-format
 msgid "function %q+F can never be copied because it has %<noclone%> attribute"
 msgstr ""
 
-#: multiple_target.cc:364
+#: multiple_target.cc:318
 #, gcc-internal-format
-msgid "%<default%> target was not set"
+msgid "multiple %<default%> targets were set"
 msgstr ""
 
-#: multiple_target.cc:368
+#: multiple_target.cc:327
 #, gcc-internal-format
-msgid "an empty string cannot be in %<target_clones%> attribute"
+msgid "%<default%> target was not set"
 msgstr ""
 
-#: multiple_target.cc:372
+#: multiple_target.cc:336
 #, gcc-internal-format
-msgid "multiple %<default%> targets were set"
+msgid "an empty string cannot be in %<target_clones%> attribute"
 msgstr ""
 
-#: omp-expand.cc:3454
+#: omp-expand.cc:3470
 #, gcc-internal-format
 msgid "%qs clause with %<sink%> modifier waiting for lexically later iteration"
 msgstr ""
 
-#: omp-expand.cc:3594
+#: omp-expand.cc:3610
 #, gcc-internal-format
 msgid ""
 "%qs clause with %<sink%> modifier refers to iteration never in the iteration "
 "space"
 msgstr ""
 
-#: omp-expand.cc:8222
+#: omp-expand.cc:8239
 #, gcc-internal-format
 msgid ""
 "invalid OpenMP non-rectangular loop step; %<(%E - %E) * %E%> is not a "
@@ -31554,227 +32818,239 @@ msgid ""
 "%<kind(\"any\")%>"
 msgstr ""
 
-#: omp-general.cc:1537
+#: omp-general.cc:1563
+#, gcc-internal-format
+msgid ""
+"multiple definitions of variants with the same context selector violate the "
+"one-definition rule"
+msgstr ""
+
+#: omp-general.cc:1566
+#, gcc-internal-format
+msgid "previous variant declaration here"
+msgstr ""
+
+#: omp-general.cc:1606
 #, gcc-internal-format
 msgid "%qD used as a variant with incompatible %<construct%> selector sets"
 msgstr ""
 
-#: omp-general.cc:1751
+#: omp-general.cc:1829
 #, gcc-internal-format
 msgid "%<target_device%> selector set inside of %<target%> directive"
 msgstr ""
 
-#: omp-general.cc:3626
+#: omp-general.cc:3721
 #, gcc-internal-format
 msgid "%qs specifies a conflicting level of parallelism"
 msgstr ""
 
-#: omp-general.cc:3629
+#: omp-general.cc:3724
 #, gcc-internal-format
 msgid "... to the previous %qs clause here"
 msgstr ""
 
-#: omp-general.cc:3664
+#: omp-general.cc:3759
 #, gcc-internal-format
 msgid ""
 "cannot apply %qs to %qD, which has also been marked with an OpenMP 'declare "
 "target' directive"
 msgstr ""
 
-#: omp-general.cc:3718
+#: omp-general.cc:3813
 #, gcc-internal-format
 msgid ""
 "incompatible %qs clause when applying %qs to %qD, which has already been "
 "marked with an OpenACC 'routine' directive"
 msgstr ""
 
-#: omp-general.cc:3725
+#: omp-general.cc:3820
 #, gcc-internal-format
 msgid ""
 "missing %qs clause when applying %qs to %qD, which has already been marked "
 "with an OpenACC 'routine' directive"
 msgstr ""
 
-#: omp-general.cc:3734
+#: omp-general.cc:3829
 #, gcc-internal-format
 msgid "... with %qs clause here"
 msgstr ""
 
-#: omp-general.cc:3742
+#: omp-general.cc:3837
 #, gcc-internal-format
 msgid "... without %qs clause near to here"
 msgstr ""
 
-#: omp-general.cc:4579
+#: omp-general.cc:4674
 #, gcc-internal-format
 msgid "non-rectangular %<tile%>"
 msgstr ""
 
-#: omp-general.cc:4798
+#: omp-general.cc:4893
 #, gcc-internal-format
 msgid "%<ordered%> clause used with generated loops"
 msgstr ""
 
-#: omp-general.cc:4916
+#: omp-general.cc:5011
 #, gcc-internal-format
 msgid "non-constant iteration count of %<unroll full%> loop"
 msgstr ""
 
-#: omp-low.cc:1174
+#: omp-low.cc:1178
 #, gcc-internal-format
 msgid "%<allocate%> clause must specify an allocator here"
 msgstr ""
 
-#: omp-low.cc:2774 omp-offload.cc:1518
+#: omp-low.cc:2780 omp-offload.cc:1519
 #, gcc-internal-format
 msgid "%<seq%> overrides other OpenACC loop specifiers"
 msgstr ""
 
-#: omp-low.cc:2777 omp-offload.cc:1519
+#: omp-low.cc:2783 omp-offload.cc:1520
 #, gcc-internal-format
 msgid "%<auto%> conflicts with other OpenACC loop specifiers"
 msgstr ""
 
-#: omp-low.cc:2781 omp-offload.cc:1553
+#: omp-low.cc:2787 omp-offload.cc:1554
 #, gcc-internal-format
 msgid "inner loop uses same OpenACC parallelism as containing loop"
 msgstr ""
 
-#: omp-low.cc:2832
+#: omp-low.cc:2838
 #, gcc-internal-format
 msgid "argument not permitted on %qs clause"
 msgstr ""
 
-#: omp-low.cc:2836
+#: omp-low.cc:2842
 #, gcc-internal-format
 msgid "enclosing parent compute construct"
 msgstr ""
 
-#: omp-low.cc:2839
+#: omp-low.cc:2845
 #, gcc-internal-format
 msgid "enclosing routine"
 msgstr ""
 
-#: omp-low.cc:2880
+#: omp-low.cc:2886
 #, gcc-internal-format
 msgid "conflicting reduction operations for %qE"
 msgstr ""
 
-#: omp-low.cc:2884
+#: omp-low.cc:2890
 #, gcc-internal-format
 msgid "location of the previous reduction for %qE"
 msgstr ""
 
-#: omp-low.cc:2917
+#: omp-low.cc:2923
 #, gcc-internal-format
 msgid "nested loop in reduction needs reduction clause for %qE"
 msgstr ""
 
-#: omp-low.cc:3174
+#: omp-low.cc:3180
 #, gcc-internal-format
 msgid ""
 "%<target%> construct with nested %<teams%> construct contains directives "
 "outside of the %<teams%> construct"
 msgstr ""
 
-#: omp-low.cc:3232
+#: omp-low.cc:3238
 #, gcc-internal-format
 msgid "non-OpenACC construct inside of OpenACC routine"
 msgstr ""
 
-#: omp-low.cc:3241
+#: omp-low.cc:3247
 #, gcc-internal-format
 msgid "non-OpenACC construct inside of OpenACC region"
 msgstr ""
 
-#: omp-low.cc:3256
+#: omp-low.cc:3262
 #, gcc-internal-format
 msgid "OpenMP constructs are not allowed in target region with %<ancestor%>"
 msgstr ""
 
-#: omp-low.cc:3281 omp-low.cc:3348
+#: omp-low.cc:3287 omp-low.cc:3356
 #, gcc-internal-format
 msgid ""
 "OpenMP constructs other than %<parallel%>, %<loop%> or %<simd%> may not be "
 "nested inside a region with the %<order(concurrent)%> clause"
 msgstr ""
 
-#: omp-low.cc:3300
+#: omp-low.cc:3306
 #, gcc-internal-format
 msgid ""
 "%<ordered simd threads%> must be closely nested inside of %<%s simd%> region"
 msgstr ""
 
-#: omp-low.cc:3316
+#: omp-low.cc:3323
 #, gcc-internal-format
 msgid ""
 "OpenMP constructs other than %<ordered simd%>, %<simd%>, %<loop%> or "
 "%<atomic%> may not be nested inside %<simd%> region"
 msgstr ""
 
-#: omp-low.cc:3330
+#: omp-low.cc:3337
 #, gcc-internal-format
 msgid ""
 "only %<distribute%>, %<parallel%> or %<loop%> regions are allowed to be "
 "strictly nested inside %<teams%> region"
 msgstr ""
 
-#: omp-low.cc:3344
+#: omp-low.cc:3352
 #, gcc-internal-format
 msgid ""
 "OpenMP constructs other than %<parallel%>, %<loop%> or %<simd%> may not be "
 "nested inside a %<loop%> region"
 msgstr ""
 
-#: omp-low.cc:3364
+#: omp-low.cc:3372
 #, gcc-internal-format
 msgid ""
 "%<distribute%> region must be strictly nested inside %<teams%> construct"
 msgstr ""
 
-#: omp-low.cc:3413
+#: omp-low.cc:3421
 #, gcc-internal-format
 msgid ""
 "OpenACC loop directive must be associated with an OpenACC compute region"
 msgstr ""
 
-#: omp-low.cc:3435
+#: omp-low.cc:3443
 #, gcc-internal-format
 msgid "orphaned %qs construct"
 msgstr ""
 
-#: omp-low.cc:3464
+#: omp-low.cc:3472
 #, gcc-internal-format
 msgid "%<cancel for%> inside %<nowait%> for construct"
 msgstr ""
 
-#: omp-low.cc:3469
+#: omp-low.cc:3477
 #, gcc-internal-format
 msgid "%<cancel for%> inside %<ordered%> for construct"
 msgstr ""
 
-#: omp-low.cc:3489 omp-low.cc:3502
+#: omp-low.cc:3497 omp-low.cc:3510
 #, gcc-internal-format
 msgid "%<cancel sections%> inside %<nowait%> sections construct"
 msgstr ""
 
-#: omp-low.cc:3531
+#: omp-low.cc:3539
 #, gcc-internal-format
 msgid ""
 "%<%s taskgroup%> construct not closely nested inside of %<taskgroup%> region"
 msgstr ""
 
-#: omp-low.cc:3556
+#: omp-low.cc:3564
 #, gcc-internal-format
 msgid "invalid arguments"
 msgstr ""
 
-#: omp-low.cc:3562
+#: omp-low.cc:3570
 #, gcc-internal-format
 msgid "%<%s %s%> construct not closely nested inside of %qs"
 msgstr ""
 
-#: omp-low.cc:3591
+#: omp-low.cc:3599
 #, gcc-internal-format
 msgid ""
 "barrier region may not be closely nested inside of work-sharing, %<loop%>, "
@@ -31782,7 +33058,7 @@ msgid ""
 "%<taskloop%> region"
 msgstr ""
 
-#: omp-low.cc:3598
+#: omp-low.cc:3606
 #, gcc-internal-format
 msgid ""
 "work-sharing region may not be closely nested inside of work-sharing, "
@@ -31790,14 +33066,14 @@ msgid ""
 "%<task%> or %<taskloop%> region"
 msgstr ""
 
-#: omp-low.cc:3629
+#: omp-low.cc:3637
 #, gcc-internal-format
 msgid ""
 "%qs region may not be closely nested inside of work-sharing, %<loop%>, "
 "explicit %<task%> or %<taskloop%> region"
 msgstr ""
 
-#: omp-low.cc:3664
+#: omp-low.cc:3672
 #, gcc-internal-format
 msgid ""
 "%<scope%> region may not be closely nested inside of work-sharing, %<loop%>, "
@@ -31805,50 +33081,50 @@ msgid ""
 "%<masked%> region"
 msgstr ""
 
-#: omp-low.cc:3687
+#: omp-low.cc:3695
 #, gcc-internal-format
 msgid "%<%s(%s)%> is only allowed in %<omp ordered%>"
 msgstr ""
 
-#: omp-low.cc:3702
+#: omp-low.cc:3710
 #, gcc-internal-format
 msgid "invalid depend kind in omp %<ordered%> %<depend%>"
 msgstr ""
 
-#: omp-low.cc:3719
+#: omp-low.cc:3727
 #, gcc-internal-format
 msgid ""
 "%<ordered%> construct with %<depend%> clause must be closely nested inside "
 "an %<ordered%> loop"
 msgstr ""
 
-#: omp-low.cc:3735
+#: omp-low.cc:3743
 #, gcc-internal-format
 msgid "%<ordered%> %<simd%> must be closely nested inside %<simd%> region"
 msgstr ""
 
-#: omp-low.cc:3748
+#: omp-low.cc:3756
 #, gcc-internal-format
 msgid ""
 "%<ordered%> region may not be closely nested inside of %<critical%>, "
 "%<ordered%>, explicit %<task%> or %<taskloop%> region"
 msgstr ""
 
-#: omp-low.cc:3761 omp-low.cc:3806
+#: omp-low.cc:3769 omp-low.cc:3814
 #, gcc-internal-format
 msgid ""
 "%<ordered%> region must be closely nested inside a loop region with an "
 "%<ordered%> clause"
 msgstr ""
 
-#: omp-low.cc:3770
+#: omp-low.cc:3778
 #, gcc-internal-format
 msgid ""
 "%<ordered%> construct without %<doacross%> or %<depend%> clauses must not "
 "have the same binding region as %<ordered%> construct with those clauses"
 msgstr ""
 
-#: omp-low.cc:3789
+#: omp-low.cc:3797
 #, gcc-internal-format
 msgid ""
 "%<ordered%> construct without %<doacross%> or %<depend%> clauses binds to "
@@ -31856,92 +33132,102 @@ msgid ""
 "%wd"
 msgstr ""
 
-#: omp-low.cc:3823
+#: omp-low.cc:3831
 #, gcc-internal-format
 msgid ""
 "%<critical%> region may not be nested inside a %<critical%> region with the "
 "same name"
 msgstr ""
 
-#: omp-low.cc:3841
+#: omp-low.cc:3849
 #, gcc-internal-format
 msgid ""
 "%<teams%> construct must be closely nested inside of %<target%> construct or "
 "not nested in any OpenMP construct"
 msgstr ""
 
-#: omp-low.cc:3853 c-family/c-omp.cc:741
+#: omp-low.cc:3861 c-family/c-omp.cc:746
 #, gcc-internal-format
 msgid "%<depend(%s)%> is only allowed in %<omp ordered%>"
 msgstr ""
 
-#: omp-low.cc:3861
+#: omp-low.cc:3869
 #, gcc-internal-format
 msgid ""
 "OpenACC region inside of OpenACC routine, nested parallelism not supported "
 "yet"
 msgstr ""
 
-#: omp-low.cc:3874
+#: omp-low.cc:3882
 #, gcc-internal-format
 msgid "OpenACC construct inside of non-OpenACC region"
 msgstr ""
 
-#: omp-low.cc:3935
+#: omp-low.cc:3943
 #, gcc-internal-format
 msgid "%s %qs construct inside of %s %qs region"
 msgstr ""
 
-#: omp-low.cc:3948 omp-low.cc:3965
+#: omp-low.cc:3956 omp-low.cc:3973
 #, gcc-internal-format
 msgid "%qs construct inside of %qs region"
 msgstr ""
 
-#: omp-low.cc:4105
+#: omp-low.cc:4113
 #, gcc-internal-format
 msgid "setjmp/longjmp inside %<simd%> construct"
 msgstr ""
 
-#: omp-low.cc:4131
+#: omp-low.cc:4139
 #, gcc-internal-format
 msgid ""
 "OpenMP runtime API call %qD in a region with %<order(concurrent)%> clause"
 msgstr ""
 
-#: omp-low.cc:4147
+#: omp-low.cc:4155
 #, gcc-internal-format
 msgid "OpenMP runtime API call %qD strictly nested in a %<teams%> region"
 msgstr ""
 
-#: omp-low.cc:4159
+#: omp-low.cc:4167
 #, gcc-internal-format
 msgid ""
 "OpenMP runtime API call %qD in a region with %<device(ancestor)%> clause"
 msgstr ""
 
-#: omp-low.cc:9855
+#: omp-low.cc:9863
 #, gcc-internal-format
 msgid ""
 "ignoring %<sink%> clause with offset that is not a multiple of the loop step"
 msgstr ""
 
-#: omp-low.cc:9878
+#: omp-low.cc:9886
 #, gcc-internal-format
 msgid "first offset must be in opposite direction of loop iterations"
 msgstr ""
 
-#: omp-low.cc:15209
+#: omp-low.cc:12897
+#, gcc-internal-format
+msgid "iterators used together with deep mapping are not supported yet"
+msgstr ""
+
+#: omp-low.cc:13174
+#, gcc-internal-format
+msgid "only the %<device_type(any)%> is supported"
+msgstr ""
+
+#: omp-low.cc:15475
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid exit from %s structured block"
 msgstr ""
 
-#: omp-low.cc:15211 omp-low.cc:15216
+#: omp-low.cc:15477 omp-low.cc:15482
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid entry to %s structured block"
 msgstr ""
 
 #. Otherwise, be vague and lazy, but efficient.
-#: omp-low.cc:15220
+#: omp-low.cc:15486
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid branch to/from %s structured block"
 msgstr ""
@@ -31999,74 +33285,74 @@ msgstr ""
 msgid "shared-memory region overflow"
 msgstr ""
 
-#: omp-offload.cc:316
+#: omp-offload.cc:317
 #, gcc-internal-format
 msgid ""
 "%qD specified both in declare target %<link%> and implicitly in %<to%> "
 "clauses"
 msgstr ""
 
-#: omp-offload.cc:929
+#: omp-offload.cc:930
 #, gcc-internal-format
 msgid "%<-fopenacc-dim%> operand is malformed at %qs"
 msgstr ""
 
-#: omp-offload.cc:981
+#: omp-offload.cc:982
 #, gcc-internal-format, gfc-internal-format
 msgid "region contains %s partitioned code but is not %s partitioned"
 msgstr ""
 
-#: omp-offload.cc:987
+#: omp-offload.cc:988
 #, gcc-internal-format, gfc-internal-format
 msgid "region is %s partitioned but does not contain %s partitioned code"
 msgstr ""
 
-#: omp-offload.cc:1477
+#: omp-offload.cc:1478
 #, gcc-internal-format
 msgid "gang reduction on an orphan loop"
 msgstr ""
 
-#: omp-offload.cc:1551
+#: omp-offload.cc:1552
 #, gcc-internal-format
 msgid "routine call uses same OpenACC parallelism as containing loop"
 msgstr ""
 
-#: omp-offload.cc:1555 omp-offload.cc:1587
+#: omp-offload.cc:1556 omp-offload.cc:1588
 #, gcc-internal-format
 msgid "containing loop here"
 msgstr ""
 
-#: omp-offload.cc:1560
+#: omp-offload.cc:1561
 #, gcc-internal-format
 msgid "routine call uses OpenACC parallelism disallowed by containing routine"
 msgstr ""
 
-#: omp-offload.cc:1562
+#: omp-offload.cc:1563
 #, gcc-internal-format
 msgid "loop uses OpenACC parallelism disallowed by containing routine"
 msgstr ""
 
-#: omp-offload.cc:1567
+#: omp-offload.cc:1568
 #, gcc-internal-format
 msgid "routine %qD declared here"
 msgstr ""
 
-#: omp-offload.cc:1580
+#: omp-offload.cc:1581
 #, gcc-internal-format
 msgid "incorrectly nested OpenACC loop parallelism"
 msgstr ""
 
-#: omp-offload.cc:1721
+#: omp-offload.cc:1722
 #, gcc-internal-format
 msgid "insufficient partitioning available to parallelize element loop"
 msgstr ""
 
-#: omp-offload.cc:1729
+#: omp-offload.cc:1730
 #, gcc-internal-format
 msgid "insufficient partitioning available to parallelize tile loop"
 msgstr ""
 
-#: omp-offload.cc:1731
+#: omp-offload.cc:1732
 #, gcc-internal-format
 msgid "insufficient partitioning available to parallelize loop"
 msgstr ""
@@ -32095,7 +33381,7 @@ msgid ""
 "non-%<uniform%> argument"
 msgstr ""
 
-#: optabs.cc:4979
+#: optabs.cc:5175
 #, gcc-internal-format
 msgid "indirect jumps are not available on this target"
 msgstr ""
@@ -32115,112 +33401,78 @@ msgstr ""
 msgid "error closing optimization records %qs"
 msgstr ""
 
-#: opts-common.cc:1453
+#: opts-common.cc:1455
 #, gcc-internal-format
 msgid "command-line option %qs is not supported by this configuration"
 msgstr ""
 
-#: opts-common.cc:1463 opts.cc:2612
+#: opts-common.cc:1465 opts.cc:2670
 #, gcc-internal-format
 msgid "missing argument to %qs"
 msgstr ""
 
-#: opts-common.cc:1470
+#: opts-common.cc:1472
 #, gcc-internal-format
 msgid ""
 "argument to %qs should be a non-negative integer optionally followed by a "
 "size unit"
 msgstr ""
 
-#: opts-common.cc:1474
+#: opts-common.cc:1476
 #, gcc-internal-format
 msgid "argument to %qs should be a non-negative integer"
 msgstr ""
 
-#: opts-common.cc:1481
+#: opts-common.cc:1483
 #, gcc-internal-format
 msgid "argument to %qs is not between %d and %d"
 msgstr ""
 
-#: opts-common.cc:1545
+#: opts-common.cc:1547
 #, gcc-internal-format
 msgid "invalid argument in option %qs"
 msgstr ""
 
-#: opts-common.cc:1547
+#: opts-common.cc:1549
 #, gcc-internal-format
 msgid "%qs specified multiple times in the same option"
 msgstr ""
 
-#: opts-common.cc:1550
+#: opts-common.cc:1552
 #, gcc-internal-format
 msgid "%qs is mutually exclusive with %qs and cannot be specified together"
 msgstr ""
 
-#: opts-common.cc:1572
+#: opts-common.cc:1574
 #, gcc-internal-format
 msgid "unrecognized argument in option %qs"
 msgstr ""
 
-#: opts-common.cc:1583 config/i386/i386-options.cc:1715
+#: opts-common.cc:1585 config/i386/i386-options.cc:1686
 #, gcc-internal-format
 msgid "valid arguments to %qs are: %s; did you mean %qs?"
 msgstr ""
 
-#: opts-common.cc:1586 config/i386/i386-options.cc:1718
+#: opts-common.cc:1588 config/i386/i386-options.cc:1689
 #, gcc-internal-format
 msgid "valid arguments to %qs are: %s"
 msgstr ""
 
-#: opts-common.cc:1629 c-family/c-opts.cc:476
+#: opts-common.cc:1631 c-family/c-opts.cc:476
 #, gcc-internal-format
 msgid "switch %qs is no longer supported"
 msgstr ""
 
-#: opts-common.cc:1689
+#: opts-common.cc:1694
 #, gcc-internal-format
 msgid "argument to %qs is bigger than %d"
 msgstr ""
 
-#: opts-common.cc:2043
+#: opts-common.cc:2050
 #, gcc-internal-format
 msgid "malformed %<COLLECT_GCC_OPTIONS%>"
 msgstr ""
 
-#: opts-diagnostic.cc:142
-#, gcc-internal-format
-msgid "%<%s%s%>: unexpected value %qs for key %qs; expected %qs or %qs"
-msgstr ""
-
-#: opts-diagnostic.cc:173
-msgid "%<%s%s%>: unexpected value %qs for key %qs; known values: %e"
-msgstr ""
-
-#: opts-diagnostic.cc:243
-msgid "%<%s%s%>: unknown key %qs for format %qs; known keys: %e"
-msgstr ""
-
-#: opts-diagnostic.cc:256
-#, gcc-internal-format
-msgid "%<%s%s%>: missing required key %qs for format %qs; try %<%s%s:%s=%s%>"
-msgstr ""
-
-#: opts-diagnostic.cc:282
-#, gcc-internal-format
-msgid ""
-"%<%s%s%>: expected KEY=VALUE-style parameter for format %qs after %qs; got "
-"%qs"
-msgstr ""
-
-#: opts-diagnostic.cc:345
-msgid "%<%s%s%>: unrecognized format %qs; known formats: %e"
-msgstr ""
-
-#: opts-diagnostic.cc:424
-#, gcc-internal-format
-msgid "unable to open %qs: %m"
-msgstr ""
-
 #: opts-global.cc:107
 #, gcc-internal-format
 msgid "command-line option %qs is valid for the driver but not for %s"
@@ -32250,7 +33502,7 @@ msgstr ""
 msgid "unrecognized command-line option %<-fopt-info-%s%>"
 msgstr ""
 
-#: opts-global.cc:436 opts-global.cc:445 m2/gm2spec.cc:544
+#: opts-global.cc:436 opts-global.cc:445 m2/gm2spec.cc:564
 #, gcc-internal-format
 msgid "plugin support is disabled; configure with %<--enable-plugin%>"
 msgstr ""
@@ -32272,432 +33524,439 @@ msgstr ""
 msgid "unrecognized shadow offset %qs"
 msgstr ""
 
-#: opts.cc:244
+#: opts.cc:246
 #, gcc-internal-format
 msgid "argument %qs to %<-femit-struct-debug-detailed%> not recognized"
 msgstr ""
 
-#: opts.cc:280
+#: opts.cc:282
 #, gcc-internal-format
 msgid "argument %qs to %<-femit-struct-debug-detailed%> unknown"
 msgstr ""
 
-#: opts.cc:287
+#: opts.cc:289
 #, gcc-internal-format
 msgid ""
 "%<-femit-struct-debug-detailed=dir:...%> must allow at least as much as %<-"
 "femit-struct-debug-detailed=ind:...%>"
 msgstr ""
 
-#: opts.cc:755
+#: opts.cc:767
 #, gcc-internal-format
 msgid ""
 "argument to %<-O%> should be a non-negative integer, %<g%>, %<s%>, %<z%> or "
 "%<fast%>"
 msgstr ""
 
-#: opts.cc:861 opts.cc:867 opts.cc:873 opts.cc:879 opts.cc:890 opts.cc:900
-#: opts.cc:906 opts.cc:912 opts.cc:918 opts.cc:924 opts.cc:930 opts.cc:936
-#: opts.cc:942 opts.cc:948 opts.cc:965 opts.cc:973 config/mips/mips.cc:20572
-#: config/mips/mips.cc:20574 config/mips/mips.cc:20587
+#: opts.cc:873 opts.cc:879 opts.cc:885 opts.cc:891 opts.cc:902 opts.cc:912
+#: opts.cc:918 opts.cc:924 opts.cc:930 opts.cc:936 opts.cc:942 opts.cc:948
+#: opts.cc:954 opts.cc:960 opts.cc:977 opts.cc:985 config/mips/mips.cc:20593
+#: config/mips/mips.cc:20595 config/mips/mips.cc:20608
 #, gcc-internal-format
 msgid "%qs is incompatible with %qs"
 msgstr ""
 
-#: opts.cc:955
+#: opts.cc:967
 #, gcc-internal-format
 msgid "%<-fipa-modref%> is incompatible with %qs"
 msgstr ""
 
-#: opts.cc:1035
+#: opts.cc:1049
 #, gcc-internal-format
 msgid "%<-fsanitize=%s%> is incompatible with %<-fsanitize=%s%>"
 msgstr ""
 
-#: opts.cc:1053
+#: opts.cc:1067
 #, gcc-internal-format
 msgid ""
 "%<-fipa-reorder-for-locality%> is incompatible with an explicit %qs option"
 msgstr ""
 
-#: opts.cc:1092
+#: opts.cc:1127
 #, gcc-internal-format
 msgid "section anchors must be disabled when unit-at-a-time is disabled"
 msgstr ""
 
-#: opts.cc:1096
+#: opts.cc:1131
 #, gcc-internal-format
 msgid "toplevel reorder must be disabled when unit-at-a-time is disabled"
 msgstr ""
 
-#: opts.cc:1110
+#: opts.cc:1145
 #, gcc-internal-format
 msgid "transactional memory is not supported with non-call exceptions"
 msgstr ""
 
-#: opts.cc:1125
+#: opts.cc:1160
 #, gcc-internal-format
 msgid "section anchors must be disabled when toplevel reorder is disabled"
 msgstr ""
 
-#: opts.cc:1136
+#: opts.cc:1171
 #, gcc-internal-format
 msgid ""
 "%<-ftrivial-auto-var-init=zero%> is not enabled by %<-fhardened%> because it "
 "was specified on the command line"
 msgstr ""
 
-#: opts.cc:1186
+#: opts.cc:1221
 #, gcc-internal-format
 msgid ""
 "%<-fstack-protector-strong%> is not enabled by %<-fhardened%> because it was "
 "specified on the command line"
 msgstr ""
 
-#: opts.cc:1231
+#: opts.cc:1266
 #, gcc-internal-format
 msgid "%<-fno-fat-lto-objects%> are supported only with linker plugin"
 msgstr ""
 
-#: opts.cc:1239
+#: opts.cc:1274
 #, gcc-internal-format
 msgid "%<-gsplit-dwarf%> is not supported with LTO, disabling"
 msgstr ""
 
-#: opts.cc:1253
+#: opts.cc:1288
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> is not supported by this compiler configuration"
 msgstr ""
 
-#: opts.cc:1284
+#: opts.cc:1317
 #, gcc-internal-format
 msgid ""
 "%<-fsanitize=pointer-compare%> must be combined with %<-fsanitize=address%> "
 "or %<-fsanitize=kernel-address%>"
 msgstr ""
 
-#: opts.cc:1288
+#: opts.cc:1321
 #, gcc-internal-format
 msgid ""
 "%<-fsanitize=pointer-subtract%> must be combined with %<-fsanitize=address%> "
 "or %<-fsanitize=kernel-address%>"
 msgstr ""
 
-#: opts.cc:1315
+#: opts.cc:1357
+#, gcc-internal-format
+msgid ""
+"%<--param hwasan-random-frame-tag=0%> is ignored when %<-fsanitize=memtag-"
+"stack%> is present"
+msgstr ""
+
+#: opts.cc:1366
 #, gcc-internal-format
 msgid "%<-fsanitize-recover=%s%> is not supported"
 msgstr ""
 
-#: opts.cc:1327 opts.cc:2324
+#: opts.cc:1378 opts.cc:2382
 #, gcc-internal-format
 msgid "%<-fsanitize-trap=%s%> is not supported"
 msgstr ""
 
-#: opts.cc:1354
+#: opts.cc:1405
 #, gcc-internal-format
 msgid ""
 "%<-fsanitize-address-use-after-scope%> requires %<-fstack-reuse=none%> option"
 msgstr ""
 
-#: opts.cc:1361
+#: opts.cc:1412
 #, gcc-internal-format
 msgid "transactional memory is not supported with %<-fsanitize=address%>"
 msgstr ""
 
-#: opts.cc:1364
+#: opts.cc:1415
 #, gcc-internal-format
 msgid ""
 "transactional memory is not supported with %<-fsanitize=kernel-address%>"
 msgstr ""
 
-#: opts.cc:1369
+#: opts.cc:1420
 #, gcc-internal-format
 msgid "live patching (with %qs) is not supported with LTO"
 msgstr ""
 
-#: opts.cc:1374
+#: opts.cc:1425
 #, gcc-internal-format
 msgid "vtable verification is not supported with LTO"
 msgstr ""
 
-#: opts.cc:1449
+#: opts.cc:1491
 #, gcc-internal-format
 msgid "variable tracking requested, but useless unless producing debug info"
 msgstr ""
 
-#: opts.cc:1453
+#: opts.cc:1495
 #, gcc-internal-format
 msgid "variable tracking requested, but not supported by this debug format"
 msgstr ""
 
-#: opts.cc:1482
+#: opts.cc:1524
 #, gcc-internal-format
 msgid "var-tracking-assignments changes selective scheduling"
 msgstr ""
 
-#: opts.cc:1495
+#: opts.cc:1537
 #, gcc-internal-format
 msgid ""
 "%<-Wstrict-flex-arrays%> is ignored when %<-fstrict-flex-arrays%> is not "
 "present"
 msgstr ""
 
-#: opts.cc:1525 config/darwin.cc:3484
+#: opts.cc:1567 config/darwin.cc:3539
 #, gcc-internal-format
 msgid ""
 "%<-freorder-blocks-and-partition%> does not work with exceptions on this "
 "architecture"
 msgstr ""
 
-#: opts.cc:1541
+#: opts.cc:1583
 #, gcc-internal-format
 msgid ""
 "%<-freorder-blocks-and-partition%> does not support unwind info on this "
 "architecture"
 msgstr ""
 
-#: opts.cc:1559 config/pa/pa.cc:580
+#: opts.cc:1601 config/pa/pa.cc:580
 #, gcc-internal-format
 msgid "%<-freorder-blocks-and-partition%> does not work on this architecture"
 msgstr ""
 
-#: opts.cc:2068
+#: opts.cc:2110
 #, gcc-internal-format
 msgid "unrecognized %<include_flags 0x%x%> passed to %<print_specific_help%>"
 msgstr ""
 
-#: opts.cc:2303
+#: opts.cc:2360
 #, gcc-internal-format
 msgid "%<-fsanitize=all%> option is not valid"
 msgstr ""
 
-#: opts.cc:2358
+#: opts.cc:2416
 #, gcc-internal-format
 msgid ""
 "unrecognized argument to %<-f%ssanitize%s=%> option: %q.*s; did you mean %qs?"
 msgstr ""
 
-#: opts.cc:2364
+#: opts.cc:2422
 #, gcc-internal-format
 msgid "unrecognized argument to %<-f%ssanitize%s=%> option: %q.*s"
 msgstr ""
 
-#: opts.cc:2399
+#: opts.cc:2457
 #, gcc-internal-format
 msgid "%qs attribute directive ignored"
 msgstr ""
 
-#: opts.cc:2423
+#: opts.cc:2481
 #, gcc-internal-format
 msgid "unrecognized argument to %<-fzero-call-used-regs=%>: %qs"
 msgstr ""
 
-#: opts.cc:2447
+#: opts.cc:2505
 #, gcc-internal-format
 msgid "invalid arguments for %<-falign-%s%> option: %qs"
 msgstr ""
 
-#: opts.cc:2462
+#: opts.cc:2520
 #, gcc-internal-format
 msgid "invalid number of arguments for %<-falign-%s%> option: %qs"
 msgstr ""
 
-#: opts.cc:2471
+#: opts.cc:2529
 #, gcc-internal-format
 msgid "%<-falign-%s%> is not between 0 and %d"
 msgstr ""
 
-#: opts.cc:2530
+#: opts.cc:2588
 #, gcc-internal-format
 msgid "invalid arguments for %<-fpatchable-function-entry%>"
 msgstr ""
 
-#: opts.cc:2667
+#: opts.cc:2725
 #, gcc-internal-format
 msgid "%<--help%> argument %q.*s is ambiguous, please be more specific"
 msgstr ""
 
-#: opts.cc:2678
+#: opts.cc:2736
 #, gcc-internal-format
 msgid "unrecognized argument to %<--help=%> option: %q.*s"
 msgstr ""
 
-#: opts.cc:2858
+#: opts.cc:2916
 #, gcc-internal-format
 msgid ""
 "arguments ignored for %<-Wattributes=%>; use %<-Wno-attributes=%> instead"
 msgstr ""
 
-#: opts.cc:2864
+#: opts.cc:2922
 #, gcc-internal-format
 msgid "trailing %<,%> in arguments for %<-Wno-attributes=%>"
 msgstr ""
 
-#: opts.cc:3110
+#: opts.cc:3180
 #, gcc-internal-format
 msgid "%qs option can be specified only for offload compiler"
 msgstr ""
 
-#: opts.cc:3119
+#: opts.cc:3189
 #, gcc-internal-format
 msgid "structure alignment must be a small power of two, not %wu"
 msgstr ""
 
-#: opts.cc:3240
+#: opts.cc:3314
 #, gcc-internal-format
 msgid "unknown stack check parameter %qs"
 msgstr ""
 
-#: opts.cc:3292
+#: opts.cc:3366
 #, gcc-internal-format
 msgid ""
 "%<-gdwarf%s%> is ambiguous; use %<-gdwarf-%s%> for DWARF version or %<-"
 "gdwarf%> %<-g%s%> for debug level"
 msgstr ""
 
-#: opts.cc:3303
+#: opts.cc:3377
 #, gcc-internal-format
 msgid "dwarf version %wu is not supported"
 msgstr ""
 
-#: opts.cc:3340
+#: opts.cc:3416
 #, gcc-internal-format
 msgid "unrecognized argument to %<-flto=%> option: %qs"
 msgstr ""
 
-#: opts.cc:3540
+#: opts.cc:3617
 #, gcc-internal-format
 msgid "target system does not support debug output"
 msgstr ""
 
-#: opts.cc:3579
+#: opts.cc:3656
 #, gcc-internal-format
 msgid "debug format %qs conflicts with prior selection"
 msgstr ""
 
-#: opts.cc:3603
+#: opts.cc:3680
 #, gcc-internal-format
 msgid "unrecognized debug output level %qs"
 msgstr ""
 
-#: opts.cc:3605
+#: opts.cc:3682
 #, gcc-internal-format
 msgid "debug output level %qs is too high"
 msgstr ""
 
-#: opts.cc:3617
+#: opts.cc:3694
 #, gcc-internal-format
 msgid "unrecognized btf debug output level %qs"
 msgstr ""
 
-#: opts.cc:3634
+#: opts.cc:3711
 #, gcc-internal-format
 msgid "getting core file size maximum limit: %m"
 msgstr ""
 
-#: opts.cc:3638
+#: opts.cc:3715
 #, gcc-internal-format
 msgid "setting core file size limit to maximum: %m"
 msgstr ""
 
-#: opts.cc:3683
+#: opts.cc:3760
 #, gcc-internal-format, gfc-internal-format
 msgid "unrecognized gcc debugging option: %c"
 msgstr ""
 
-#: opts.cc:3712
+#: opts.cc:3789
 #, gcc-internal-format
 msgid "%<-W%serror=%s%>: no option %<-%s%>; did you mean %<-%s%>?"
 msgstr ""
 
-#: opts.cc:3716
+#: opts.cc:3793
 #, gcc-internal-format
 msgid "%<-W%serror=%s%>: no option %<-%s%>"
 msgstr ""
 
-#: opts.cc:3720
+#: opts.cc:3797
 #, gcc-internal-format
 msgid "%<-Werror=%s%>: %<-%s%> is not an option that controls warnings"
 msgstr ""
 
-#: passes.cc:84
+#: passes.cc:90
 #, gcc-internal-format, gfc-internal-format
 msgid "pass %s does not support cloning"
 msgstr ""
 
-#: passes.cc:90
+#: passes.cc:96
 #, gcc-internal-format
 msgid ""
 "pass %s needs a %<set_pass_param%> implementation to handle the extra "
 "argument in %<NEXT_PASS%>"
 msgstr ""
 
-#: passes.cc:1085
+#: passes.cc:1084
 #, gcc-internal-format
 msgid "unrecognized option %<-fenable%>"
 msgstr ""
 
-#: passes.cc:1087
+#: passes.cc:1086
 #, gcc-internal-format
 msgid "unrecognized option %<-fdisable%>"
 msgstr ""
 
-#: passes.cc:1095
+#: passes.cc:1094
 #, gcc-internal-format
 msgid "unknown pass %s specified in %<-fenable%>"
 msgstr ""
 
-#: passes.cc:1097
+#: passes.cc:1096
 #, gcc-internal-format
 msgid "unknown pass %s specified in %<-fdisable%>"
 msgstr ""
 
-#: passes.cc:1122 passes.cc:1211
+#: passes.cc:1121 passes.cc:1210
 #, gcc-internal-format, gfc-internal-format
 msgid "enable pass %s for functions in the range of [%u, %u]"
 msgstr ""
 
-#: passes.cc:1125 passes.cc:1222
+#: passes.cc:1124 passes.cc:1221
 #, gcc-internal-format, gfc-internal-format
 msgid "disable pass %s for functions in the range of [%u, %u]"
 msgstr ""
 
-#: passes.cc:1161 passes.cc:1189
+#: passes.cc:1160 passes.cc:1188
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid range %s in option %s"
 msgstr ""
 
-#: passes.cc:1207
+#: passes.cc:1206
 #, gcc-internal-format, gfc-internal-format
 msgid "enable pass %s for function %s"
 msgstr ""
 
-#: passes.cc:1218
+#: passes.cc:1217
 #, gcc-internal-format, gfc-internal-format
 msgid "disable pass %s for function %s"
 msgstr ""
 
-#: passes.cc:1447
+#: passes.cc:1446
 #, gcc-internal-format
 msgid "invalid pass positioning operation"
 msgstr ""
 
-#: passes.cc:1508
+#: passes.cc:1507
 #, gcc-internal-format
 msgid "plugin cannot register a missing pass"
 msgstr ""
 
-#: passes.cc:1511
+#: passes.cc:1510
 #, gcc-internal-format
 msgid "plugin cannot register an unnamed pass"
 msgstr ""
 
-#: passes.cc:1516
+#: passes.cc:1515
 #, gcc-internal-format
 msgid "plugin cannot register pass %qs without reference pass name"
 msgstr ""
 
-#: passes.cc:1535
+#: passes.cc:1534
 #, gcc-internal-format
 msgid "pass %qs not found but is referenced by new pass %qs"
 msgstr ""
@@ -32738,166 +33997,166 @@ msgstr ""
 msgid "unknown callback event registered by plugin %s"
 msgstr ""
 
-#: plugin.cc:507
+#: plugin.cc:506
 #, gcc-internal-format, gfc-internal-format
 msgid "plugin %s registered a null callback function for event %s"
 msgstr ""
 
-#: plugin.cc:641
+#: plugin.cc:639
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "cannot load plugin %s\n"
 "%s"
 msgstr ""
 
-#: plugin.cc:652
+#: plugin.cc:650
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "plugin %s is not licensed under a GPL-compatible license\n"
 "%s"
 msgstr ""
 
-#: plugin.cc:665
+#: plugin.cc:663
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "cannot find %s in plugin %s\n"
 "%s"
 msgstr ""
 
-#: plugin.cc:675
+#: plugin.cc:673
 #, gcc-internal-format, gfc-internal-format
 msgid "fail to initialize plugin %s"
 msgstr ""
 
-#: plugin.cc:708
+#: plugin.cc:706
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot load plugin %s: %s"
 msgstr ""
 
-#: plugin.cc:718
+#: plugin.cc:716
 #, gcc-internal-format, gfc-internal-format
 msgid "plugin %s is not licensed under a GPL-compatible license: %s"
 msgstr ""
 
-#: plugin.cc:728
+#: plugin.cc:726
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot find %s in plugin %s: %s"
 msgstr ""
 
-#: plugin.cc:737
+#: plugin.cc:735
 #, gcc-internal-format, gfc-internal-format
 msgid "failed to initialize plugin %s"
 msgstr ""
 
-#: plugin.cc:1049
+#: plugin.cc:1047
 #, gcc-internal-format
 msgid "%<-iplugindir%> option not passed from the gcc driver"
 msgstr ""
 
-#: pointer-query.cc:1201
+#: pointer-query.cc:1206
 #, gcc-internal-format
 msgid "destination object is likely at address zero"
 msgstr ""
 
-#: pointer-query.cc:1203
+#: pointer-query.cc:1208
 #, gcc-internal-format
 msgid "source object is likely at address zero"
 msgstr ""
 
-#: pointer-query.cc:1213
+#: pointer-query.cc:1218
 #, gcc-internal-format
 msgid "at offset %s into destination object %qE of size %s"
 msgstr ""
 
-#: pointer-query.cc:1216
+#: pointer-query.cc:1221
 #, gcc-internal-format
 msgid "destination object %qE of size %s"
 msgstr ""
 
-#: pointer-query.cc:1222
+#: pointer-query.cc:1227
 #, gcc-internal-format
 msgid "at offset %s into destination object of size %s allocated by %qE"
 msgstr ""
 
-#: pointer-query.cc:1225
+#: pointer-query.cc:1230
 #, gcc-internal-format
 msgid "destination object of size %s allocated by %qE"
 msgstr ""
 
-#: pointer-query.cc:1235
+#: pointer-query.cc:1240
 #, gcc-internal-format
 msgid "at offset %s into source object %qE of size %s"
 msgstr ""
 
-#: pointer-query.cc:1238
+#: pointer-query.cc:1243
 #, gcc-internal-format
 msgid "source object %qE of size %s"
 msgstr ""
 
-#: pointer-query.cc:1245
+#: pointer-query.cc:1250
 #, gcc-internal-format
 msgid "at offset %s into source object of size %s allocated by %qE"
 msgstr ""
 
-#: pointer-query.cc:1248
+#: pointer-query.cc:1253
 #, gcc-internal-format
 msgid "source object of size %s allocated by %qE"
 msgstr ""
 
-#: pointer-query.cc:1256
+#: pointer-query.cc:1261
 #, gcc-internal-format
 msgid "at offset %s into object %qE of size %s"
 msgstr ""
 
-#: pointer-query.cc:1259
+#: pointer-query.cc:1264
 #, gcc-internal-format
 msgid "object %qE of size %s"
 msgstr ""
 
-#: pointer-query.cc:1266
+#: pointer-query.cc:1271
 #, gcc-internal-format
 msgid "at offset %s into object of size %s allocated by %qE"
 msgstr ""
 
-#: pointer-query.cc:1269
+#: pointer-query.cc:1274
 #, gcc-internal-format
 msgid "object of size %s allocated by %qE"
 msgstr ""
 
-#: predict.cc:2616
+#: predict.cc:2639
 #, gcc-internal-format
 msgid "probability %qE must be constant floating-point expression"
 msgstr ""
 
-#: predict.cc:2629
+#: predict.cc:2652
 #, gcc-internal-format
 msgid "probability %qE is outside the range [0.0, 1.0]"
 msgstr ""
 
-#: predict.cc:3704
+#: predict.cc:3728
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing counts for called function %s"
 msgstr ""
 
-#: profile.cc:628
+#: profile.cc:666
 #, gcc-internal-format
 msgid "corrupted profile info: profile data is not flow-consistent"
 msgstr ""
 
-#: profile.cc:645
+#: profile.cc:683
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "corrupted profile info: number of iterations for basic block %d thought to "
 "be %i"
 msgstr ""
 
-#: profile.cc:668
+#: profile.cc:706
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "corrupted profile info: number of executions for edge %d-%d thought to be %i"
 msgstr ""
 
-#: profile.cc:977
+#: profile.cc:1027
 #, gcc-internal-format
 msgid "corrupted profile info: invalid time profile"
 msgstr ""
@@ -32932,22 +34191,22 @@ msgstr ""
 msgid "unrecognized enum value: %qs"
 msgstr ""
 
-#: read-rtl-function.cc:1145 read-rtl-function.cc:1204
+#: read-rtl-function.cc:1148 read-rtl-function.cc:1207
 #, gcc-internal-format, gfc-internal-format
 msgid "was expecting `%s'"
 msgstr ""
 
-#: read-rtl-function.cc:1598
+#: read-rtl-function.cc:1601
 #, gcc-internal-format, gfc-internal-format
 msgid "duplicate insn UID: %i"
 msgstr ""
 
-#: read-rtl-function.cc:1659
+#: read-rtl-function.cc:1662
 #, gcc-internal-format
 msgid "start/end of RTL fragment are in different files"
 msgstr ""
 
-#: read-rtl-function.cc:1665
+#: read-rtl-function.cc:1668
 #, gcc-internal-format
 msgid "start of RTL fragment must be on an earlier line than end"
 msgstr ""
@@ -32988,22 +34247,22 @@ msgstr ""
 msgid "output operand %d must use %<&%> constraint"
 msgstr ""
 
-#: regcprop.cc:1254
+#: regcprop.cc:1295
 #, gcc-internal-format
 msgid "%qs: [%u] bad %<next_regno%> for empty chain (%u)"
 msgstr ""
 
-#: regcprop.cc:1266
+#: regcprop.cc:1307
 #, gcc-internal-format
 msgid "%qs: loop in %<next_regno%> chain (%u)"
 msgstr ""
 
-#: regcprop.cc:1269
+#: regcprop.cc:1310
 #, gcc-internal-format
 msgid "%qs: [%u] bad %<oldest_regno%> (%u)"
 msgstr ""
 
-#: regcprop.cc:1281
+#: regcprop.cc:1322
 #, gcc-internal-format
 msgid "%qs: [%u] non-empty register in chain (%s %u %i)"
 msgstr ""
@@ -33023,8 +34282,8 @@ msgstr ""
 msgid "cannot use %qs as a fixed register"
 msgstr ""
 
-#: reginfo.cc:732 config/arc/arc.cc:1086 config/arc/arc.cc:1128
-#: config/ia64/ia64.cc:6051 config/ia64/ia64.cc:6058 config/pa/pa.cc:477
+#: reginfo.cc:732 config/arc/arc.cc:1084 config/arc/arc.cc:1126
+#: config/ia64/ia64.cc:6096 config/ia64/ia64.cc:6103 config/pa/pa.cc:477
 #: config/pa/pa.cc:484 config/sh/sh.cc:8291 config/sh/sh.cc:8298
 #, gcc-internal-format, gfc-internal-format
 msgid "unknown register name: %s"
@@ -33100,7 +34359,7 @@ msgstr ""
 msgid "%<asm%> operand constraint incompatible with operand size"
 msgstr ""
 
-#: reload1.cc:7885
+#: reload1.cc:7884
 #, gcc-internal-format
 msgid "output operand is constant in %<asm%>"
 msgstr ""
@@ -33161,72 +34420,163 @@ msgstr ""
 msgid "RTL flag check: %s used with unexpected rtx code '%s' in %s, at %s:%d"
 msgstr ""
 
-#: stmt.cc:215
+#: stmt.cc:227
 #, gcc-internal-format
-msgid "output operand constraint lacks %<=%>"
+msgid "data type isn%'t suitable for register %s of operand %i"
 msgstr ""
 
 #: stmt.cc:230
+#, gcc-internal-format, gfc-internal-format
+msgid "register %s for operand %i cannot be accessed by the current target"
+msgstr ""
+
+#: stmt.cc:233
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"register %s for operand %i is not general enough to be used as a register "
+"variable"
+msgstr ""
+
+#: stmt.cc:236
+#, gcc-internal-format
+msgid "register %s for operand %i isn%'t suitable for data type"
+msgstr ""
+
+#: stmt.cc:245
+#, gcc-internal-format, gfc-internal-format
+msgid "register for operand %i is an internal GCC implementation detail"
+msgstr ""
+
+#: stmt.cc:291
+#, gcc-internal-format
+msgid "output operand constraint lacks %<=%>"
+msgstr ""
+
+#: stmt.cc:306
 #, gcc-internal-format
 msgid "output constraint %qc for operand %d is not at the beginning"
 msgstr ""
 
-#: stmt.cc:254
+#: stmt.cc:338
 #, gcc-internal-format
 msgid "operand constraint contains incorrectly positioned %<+%> or %<=%>"
 msgstr ""
 
-#: stmt.cc:261 stmt.cc:355
+#: stmt.cc:345 stmt.cc:562
 #, gcc-internal-format
 msgid "%<%%%> constraint used with last operand"
 msgstr ""
 
-#: stmt.cc:277
+#: stmt.cc:372
 #, gcc-internal-format
 msgid "matching constraint not valid in output operand"
 msgstr ""
 
-#: stmt.cc:281
+#: stmt.cc:376
 #, gcc-internal-format
 msgid "%<:%> constraint used for output operand"
 msgstr ""
 
-#: stmt.cc:346
+#: stmt.cc:395 stmt.cc:642
+#, gcc-internal-format
+msgid "hard register constraints are only supported while using LRA"
+msgstr ""
+
+#: stmt.cc:403 stmt.cc:470 stmt.cc:650 stmt.cc:725
+#, gcc-internal-format
+msgid ""
+"hard register constraints and regular register constraints in one "
+"alternative are not supported"
+msgstr ""
+
+#: stmt.cc:410 stmt.cc:657
+#, gcc-internal-format
+msgid "multiple hard register constraints in one alternative are not supported"
+msgstr ""
+
+#: stmt.cc:418
+#, gcc-internal-format, gfc-internal-format
+msgid "invalid output constraint: %s"
+msgstr ""
+
+#: stmt.cc:426 stmt.cc:498
+#, gcc-internal-format, gfc-internal-format
+msgid "multiple outputs to hard register: %s"
+msgstr ""
+
+#: stmt.cc:435
+#, gcc-internal-format
+msgid ""
+"hard register constraint for output %i conflicts with %<asm%> clobber list"
+msgstr ""
+
+#: stmt.cc:447
+#, gcc-internal-format
+msgid "constraint and register %<asm%> for output operand %i are unsatisfiable"
+msgstr ""
+
+#: stmt.cc:491 stmt.cc:748 varasm.cc:1558
+#, gcc-internal-format
+msgid "invalid register name for %q+D"
+msgstr ""
+
+#: stmt.cc:553
 #, gcc-internal-format
 msgid "input operand constraint contains %qc"
 msgstr ""
 
-#: stmt.cc:377
+#: stmt.cc:584
 #, gcc-internal-format
 msgid "%<:%> constraint mixed with other constraints"
 msgstr ""
 
-#: stmt.cc:400
+#: stmt.cc:612
 #, gcc-internal-format
 msgid "matching constraint references invalid operand number"
 msgstr ""
 
-#: stmt.cc:434
+#: stmt.cc:665
+#, gcc-internal-format, gfc-internal-format
+msgid "invalid input constraint: %s"
+msgstr ""
+
+#: stmt.cc:673 stmt.cc:755
+#, gcc-internal-format, gfc-internal-format
+msgid "multiple inputs to hard register: %s"
+msgstr ""
+
+#: stmt.cc:680
+#, gcc-internal-format
+msgid ""
+"hard register constraint for input %i conflicts with %<asm%> clobber list"
+msgstr ""
+
+#: stmt.cc:699
+#, gcc-internal-format
+msgid "constraint and register %<asm%> for input operand %i are unsatisfiable"
+msgstr ""
+
+#: stmt.cc:715
 #, gcc-internal-format
 msgid "invalid punctuation %qc in constraint"
 msgstr ""
 
-#: stmt.cc:451
+#: stmt.cc:775
 #, gcc-internal-format
 msgid "matching constraint does not allow a register"
 msgstr ""
 
-#: stmt.cc:545
+#: stmt.cc:869
 #, gcc-internal-format
 msgid "duplicate %<asm%> operand name %qs"
 msgstr ""
 
-#: stmt.cc:642
+#: stmt.cc:969
 #, gcc-internal-format
 msgid "missing close brace for named operand"
 msgstr ""
 
-#: stmt.cc:671
+#: stmt.cc:998
 #, gcc-internal-format
 msgid "undefined named operand %qs"
 msgstr ""
@@ -33296,12 +34646,12 @@ msgstr ""
 msgid "packed attribute is unnecessary"
 msgstr ""
 
-#: stor-layout.cc:2753
+#: stor-layout.cc:2758
 #, gcc-internal-format
 msgid "alignment of array elements is greater than element size"
 msgstr ""
 
-#: stor-layout.cc:2759
+#: stor-layout.cc:2764
 #, gcc-internal-format
 msgid "size of array element is not a multiple of its alignment"
 msgstr ""
@@ -33321,189 +34671,189 @@ msgstr ""
 msgid "%qD renamed after being referenced in assembly"
 msgstr ""
 
-#: symtab.cc:1109
+#: symtab.cc:1124
 #, gcc-internal-format
 msgid "function symbol is not function"
 msgstr ""
 
-#: symtab.cc:1116
+#: symtab.cc:1131
 #, gcc-internal-format
 msgid "inconsistent %<ifunc%> attribute"
 msgstr ""
 
-#: symtab.cc:1124
+#: symtab.cc:1139
 #, gcc-internal-format
 msgid "variable symbol is not variable"
 msgstr ""
 
-#: symtab.cc:1130
+#: symtab.cc:1145
 #, gcc-internal-format
 msgid "node has unknown type"
 msgstr ""
 
-#: symtab.cc:1135
+#: symtab.cc:1150
 #, gcc-internal-format, gfc-internal-format
 msgid "node has invalid order %i"
 msgstr ""
 
-#: symtab.cc:1144
+#: symtab.cc:1159
 #, gcc-internal-format
 msgid "node not found node->decl->decl_with_vis.symtab_node"
 msgstr ""
 
-#: symtab.cc:1152
+#: symtab.cc:1167
 #, gcc-internal-format
 msgid "node differs from node->decl->decl_with_vis.symtab_node"
 msgstr ""
 
-#: symtab.cc:1163 symtab.cc:1170
+#: symtab.cc:1178 symtab.cc:1185
 #, gcc-internal-format
 msgid "assembler name hash list corrupted"
 msgstr ""
 
-#: symtab.cc:1179
+#: symtab.cc:1194
 #, gcc-internal-format
 msgid "node not found in symtab assembler name hash"
 msgstr ""
 
-#: symtab.cc:1188
+#: symtab.cc:1203
 #, gcc-internal-format
 msgid "double linked list of assembler names corrupted"
 msgstr ""
 
-#: symtab.cc:1193
+#: symtab.cc:1208
 #, gcc-internal-format
 msgid "node has body_removed but is definition"
 msgstr ""
 
-#: symtab.cc:1198
+#: symtab.cc:1213
 #, gcc-internal-format
 msgid "node is analyzed but it is not a definition"
 msgstr ""
 
-#: symtab.cc:1203
+#: symtab.cc:1218
 #, gcc-internal-format
 msgid "node is alias but not implicit alias"
 msgstr ""
 
-#: symtab.cc:1208
+#: symtab.cc:1223
 #, gcc-internal-format
 msgid "node is alias but not definition"
 msgstr ""
 
-#: symtab.cc:1213
+#: symtab.cc:1228
 #, gcc-internal-format
 msgid "node is weakref but not an transparent_alias"
 msgstr ""
 
-#: symtab.cc:1218
+#: symtab.cc:1233
 #, gcc-internal-format
 msgid "node is transparent_alias but not an alias"
 msgstr ""
 
-#: symtab.cc:1223
+#: symtab.cc:1238
 #, gcc-internal-format
 msgid "node is symver but not alias"
 msgstr ""
 
-#: symtab.cc:1232
+#: symtab.cc:1247
 #, gcc-internal-format
 msgid "symver target is not exported with default visibility"
 msgstr ""
 
-#: symtab.cc:1239
+#: symtab.cc:1254
 #, gcc-internal-format
 msgid "symver is not exported with default visibility"
 msgstr ""
 
-#: symtab.cc:1248
+#: symtab.cc:1263
 #, gcc-internal-format
 msgid "node is in same_comdat_group list but has no comdat_group"
 msgstr ""
 
-#: symtab.cc:1253
+#: symtab.cc:1268
 #, gcc-internal-format
 msgid "same_comdat_group list across different groups"
 msgstr ""
 
-#: symtab.cc:1258
+#: symtab.cc:1273
 #, gcc-internal-format
 msgid "mixing different types of symbol in same comdat groups is not supported"
 msgstr ""
 
-#: symtab.cc:1263
+#: symtab.cc:1278
 #, gcc-internal-format
 msgid "node is alone in a comdat group"
 msgstr ""
 
-#: symtab.cc:1270
+#: symtab.cc:1285
 #, gcc-internal-format
 msgid "same_comdat_group is not a circular list"
 msgstr ""
 
-#: symtab.cc:1285
+#: symtab.cc:1300
 #, gcc-internal-format, gfc-internal-format
 msgid "comdat-local symbol referred to by %s outside its comdat"
 msgstr ""
 
-#: symtab.cc:1295
+#: symtab.cc:1310
 #, gcc-internal-format
 msgid "implicit_section flag is set but section isn%'t"
 msgstr ""
 
-#: symtab.cc:1302
+#: symtab.cc:1317
 #, gcc-internal-format
 msgid "Both section and comdat group is set"
 msgstr ""
 
-#: symtab.cc:1314
+#: symtab.cc:1329
 #, gcc-internal-format
 msgid "Alias and target%'s section differs"
 msgstr ""
 
-#: symtab.cc:1321
+#: symtab.cc:1336
 #, gcc-internal-format
 msgid "Alias and target%'s comdat groups differs"
 msgstr ""
 
-#: symtab.cc:1336
+#: symtab.cc:1351
 #, gcc-internal-format
 msgid "Transparent alias and target%'s assembler names differs"
 msgstr ""
 
-#: symtab.cc:1344
+#: symtab.cc:1359
 #, gcc-internal-format
 msgid "Chained transparent aliases"
 msgstr ""
 
-#: symtab.cc:1367 symtab.cc:1477 symtab.cc:1504
+#: symtab.cc:1382 symtab.cc:1494 symtab.cc:1521
 #, gcc-internal-format
 msgid "symtab_node::verify failed"
 msgstr ""
 
-#: symtab.cc:1476
+#: symtab.cc:1493
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid order in asm node %i"
 msgstr ""
 
-#: symtab.cc:1500
+#: symtab.cc:1517
 #, gcc-internal-format
 msgid ""
 "Two symbols with same comdat_group are not linked by the same_comdat_group "
 "list."
 msgstr ""
 
-#: symtab.cc:1938
+#: symtab.cc:1955
 #, gcc-internal-format
 msgid "function %q+D part of alias cycle"
 msgstr ""
 
-#: symtab.cc:1940
+#: symtab.cc:1957
 #, gcc-internal-format
 msgid "variable %q+D part of alias cycle"
 msgstr ""
 
-#: symtab.cc:1968
+#: symtab.cc:1985
 #, gcc-internal-format
 msgid "section of alias %q+D must match section of its target"
 msgstr ""
@@ -33538,62 +34888,62 @@ msgstr ""
 msgid "global destructors not supported on this target"
 msgstr ""
 
-#: targhooks.cc:1839
+#: targhooks.cc:1849
 #, gcc-internal-format
 msgid "%<target%> attribute is not supported on this machine"
 msgstr ""
 
-#: targhooks.cc:1851
+#: targhooks.cc:1861
 #, gcc-internal-format
 msgid "%<target_version%> attribute is not supported on this machine"
 msgstr ""
 
-#: targhooks.cc:1865
+#: targhooks.cc:1875
 #, gcc-internal-format
 msgid "%<#pragma GCC target%> is not supported for this machine"
 msgstr ""
 
-#: toplev.cc:721
+#: toplev.cc:724
 #, gcc-internal-format
 msgid "cannot open %qs for writing: %m"
 msgstr ""
 
-#: toplev.cc:740
+#: toplev.cc:743
 #, gcc-internal-format
 msgid "%<-frecord-gcc-switches%> is not supported by the current target"
 msgstr ""
 
-#: toplev.cc:792
+#: toplev.cc:795
 #, gcc-internal-format
 msgid "stack usage computation not supported for this target"
 msgstr ""
 
-#: toplev.cc:851
+#: toplev.cc:854
 #, gcc-internal-format
 msgid "stack usage might be unbounded"
 msgstr ""
 
-#: toplev.cc:856
+#: toplev.cc:859
 #, gcc-internal-format
 msgid "stack usage might be %wu bytes"
 msgstr ""
 
-#: toplev.cc:859
+#: toplev.cc:862
 #, gcc-internal-format
 msgid "stack usage is %wu bytes"
 msgstr ""
 
-#: toplev.cc:1013
+#: toplev.cc:1016
 #, gcc-internal-format
 msgid "cannot open %s for writing: %m"
 msgstr ""
 
-#: toplev.cc:1298
+#: toplev.cc:1308
 #, gcc-internal-format
 msgid "this target does not support %qs"
 msgstr ""
 
-#: toplev.cc:1332
+#: toplev.cc:1342
 #, gcc-internal-format
 msgid ""
 "Graphite loop optimizations cannot be used (isl is not available) (%<-"
@@ -33601,200 +34951,200 @@ msgid ""
 "parallelize-all%>)"
 msgstr ""
 
-#: toplev.cc:1343
+#: toplev.cc:1353
 #, gcc-internal-format
 msgid "%<-fcf-protection=full%> is not supported for this target"
 msgstr ""
 
-#: toplev.cc:1350
+#: toplev.cc:1360
 #, gcc-internal-format
 msgid "%<-fcf-protection=branch%> is not supported for this target"
 msgstr ""
 
-#: toplev.cc:1357
+#: toplev.cc:1367
 #, gcc-internal-format
 msgid "%<-fcf-protection=return%> is not supported for this target"
 msgstr ""
 
-#: toplev.cc:1372
+#: toplev.cc:1382
 #, gcc-internal-format
 msgid "%<-fabi-version=1%> is no longer supported"
 msgstr ""
 
-#: toplev.cc:1388
+#: toplev.cc:1398
 #, gcc-internal-format
 msgid "instruction scheduling not supported on this target machine"
 msgstr ""
 
-#: toplev.cc:1392
+#: toplev.cc:1402
 #, gcc-internal-format
 msgid "this target machine does not have delayed branches"
 msgstr ""
 
-#: toplev.cc:1406
+#: toplev.cc:1416
 #, gcc-internal-format
 msgid "%<-f%sleading-underscore%> not supported on this target machine"
 msgstr ""
 
-#: toplev.cc:1435
+#: toplev.cc:1446
 #, gcc-internal-format
 msgid "CTF debug info requested, but not supported for %qs frontend"
 msgstr ""
 
-#: toplev.cc:1453
+#: toplev.cc:1464
 #, gcc-internal-format
 msgid "could not close zeroed insn dump file %qs: %m"
 msgstr ""
 
-#: toplev.cc:1495
+#: toplev.cc:1506
 #, gcc-internal-format
 msgid "target system does not support the %qs debug format"
 msgstr ""
 
-#: toplev.cc:1513
+#: toplev.cc:1524
 #, gcc-internal-format
 msgid ""
 "%<-gas-locview-support%> is forced disabled without %<-gas-loc-support%>"
 msgstr ""
 
-#: toplev.cc:1529
+#: toplev.cc:1540
 #, gcc-internal-format
 msgid ""
 "without %<-gdwarf-5%>, %<-gvariable-location-views=incompat5%> is equivalent "
 "to %<-gvariable-location-views%>"
 msgstr ""
 
-#: toplev.cc:1545
+#: toplev.cc:1556
 #, gcc-internal-format
 msgid ""
 "%<-ginternal-reset-location-views%> is forced disabled without %<-gvariable-"
 "location-views%>"
 msgstr ""
 
-#: toplev.cc:1555
+#: toplev.cc:1566
 #, gcc-internal-format
 msgid ""
 "%<-ginline-points%> is forced disabled without %<-gstatement-frontiers%>"
 msgstr ""
 
-#: toplev.cc:1584
+#: toplev.cc:1595
 #, gcc-internal-format
 msgid "%<-ffunction-sections%> not supported for this target"
 msgstr ""
 
-#: toplev.cc:1590
+#: toplev.cc:1601
 #, gcc-internal-format
 msgid "%<-fdata-sections%> not supported for this target"
 msgstr ""
 
-#: toplev.cc:1598
+#: toplev.cc:1609
 #, gcc-internal-format
 msgid "%<-fprefetch-loop-arrays%> not supported for this target"
 msgstr ""
 
-#: toplev.cc:1604
+#: toplev.cc:1615
 #, gcc-internal-format
 msgid ""
 "%<-fprefetch-loop-arrays%> not supported for this target (try %<-march%> "
 "switches)"
 msgstr ""
 
-#: toplev.cc:1614
+#: toplev.cc:1625
 #, gcc-internal-format
 msgid "%<-fprefetch-loop-arrays%> is not supported with %<-Os%>"
 msgstr ""
 
-#: toplev.cc:1626
+#: toplev.cc:1637
 #, gcc-internal-format
 msgid "%<-fassociative-math%> disabled; other options take precedence"
 msgstr ""
 
-#: toplev.cc:1634
+#: toplev.cc:1645
 #, gcc-internal-format
 msgid "%<-fhardened%> not supported for this target"
 msgstr ""
 
-#: toplev.cc:1643
+#: toplev.cc:1654
 #, gcc-internal-format
 msgid ""
 "%<-fstack-clash-protection%> is not supported on targets where the stack "
 "grows from lower to higher addresses"
 msgstr ""
 
-#: toplev.cc:1656
+#: toplev.cc:1667
 #, gcc-internal-format
 msgid ""
 "%<-fstack-clash-protection%> is not enabled by %<-fhardened%> because %<-"
 "fstack-check%> was specified on the command line"
 msgstr ""
 
-#: toplev.cc:1666
+#: toplev.cc:1677
 #, gcc-internal-format
 msgid ""
 "%<-fstack-check=%> and %<-fstack-clash-protection%> are mutually exclusive; "
 "disabling %<-fstack-check=%>"
 msgstr ""
 
-#: toplev.cc:1677
+#: toplev.cc:1688
 #, gcc-internal-format
 msgid "%<-fstack-protector%> not supported for this target"
 msgstr ""
 
-#: toplev.cc:1689
+#: toplev.cc:1700
 #, gcc-internal-format
 msgid ""
 "%<-fsanitize=address%> and %<-fsanitize=kernel-address%> are not supported "
 "for this target"
 msgstr ""
 
-#: toplev.cc:1700
+#: toplev.cc:1711
 #, gcc-internal-format
 msgid "%<-fsanitize=address%> not supported for this target"
 msgstr ""
 
-#: toplev.cc:1709
+#: toplev.cc:1720
 #, gcc-internal-format
 msgid ""
 "%<-fsanitize=kernel-address%> with stack protection is not supported without "
 "%<-fasan-shadow-offset=%> for this target"
 msgstr ""
 
-#: toplev.cc:1719
+#: toplev.cc:1730
 #, gcc-internal-format
 msgid "%qs is not supported for this target"
 msgstr ""
 
-#: toplev.cc:1727
+#: toplev.cc:1738
 #, gcc-internal-format
 msgid "%<-fsanitize=shadow-call-stack%> not supported in current platform"
 msgstr ""
 
-#: toplev.cc:1730
+#: toplev.cc:1741
 #, gcc-internal-format
 msgid "%<-fsanitize=shadow-call-stack%> requires %<-fno-exceptions%>"
 msgstr ""
 
-#: toplev.cc:2066
+#: toplev.cc:2083
 #, gcc-internal-format
 msgid "error writing to %s: %m"
 msgstr ""
 
-#: toplev.cc:2068
+#: toplev.cc:2085
 #, gcc-internal-format
 msgid "error closing %s: %m"
 msgstr ""
 
-#: toplev.cc:2186
+#: toplev.cc:2203
 #, gcc-internal-format
 msgid "mpfr not configured to handle all floating modes"
 msgstr ""
 
-#: toplev.cc:2272
+#: toplev.cc:2289
 #, gcc-internal-format
 msgid "self-tests are not enabled in this build"
 msgstr ""
 
-#: toplev.cc:2376
+#: toplev.cc:2394
 #, gcc-internal-format
 msgid "self-tests incompatible with %<-E%>"
 msgstr ""
@@ -33881,172 +35231,172 @@ msgstr ""
 msgid "outer transaction in %<transaction_safe%> function"
 msgstr ""
 
-#: tree-cfg.cc:360
+#: tree-cfg.cc:319
 #, gcc-internal-format
 msgid "ignoring loop annotation"
 msgstr ""
 
-#: tree-cfg.cc:3091
+#: tree-cfg.cc:2981
 #, gcc-internal-format
 msgid "constant not recomputed when %<ADDR_EXPR%> changed"
 msgstr ""
 
-#: tree-cfg.cc:3096
+#: tree-cfg.cc:2986
 #, gcc-internal-format
 msgid "side effects not recomputed when %<ADDR_EXPR%> changed"
 msgstr ""
 
-#: tree-cfg.cc:3111
+#: tree-cfg.cc:3001
 #, gcc-internal-format
 msgid "address taken but %<TREE_ADDRESSABLE%> bit not set"
 msgstr ""
 
-#: tree-cfg.cc:3137
+#: tree-cfg.cc:3027
 #, gcc-internal-format
 msgid "non-scalar %qs"
 msgstr ""
 
-#: tree-cfg.cc:3151
+#: tree-cfg.cc:3041
 #, gcc-internal-format
 msgid "invalid position or size operand to %qs"
 msgstr ""
 
-#: tree-cfg.cc:3157
+#: tree-cfg.cc:3047
 #, gcc-internal-format
 msgid "integral result type precision does not match field size of %qs"
 msgstr ""
 
-#: tree-cfg.cc:3166
+#: tree-cfg.cc:3056
 #, gcc-internal-format
 msgid "mode size of non-integral result does not match field size of %qs"
 msgstr ""
 
-#: tree-cfg.cc:3174
+#: tree-cfg.cc:3064
 #, gcc-internal-format
 msgid "%qs of non-mode-precision operand"
 msgstr ""
 
-#: tree-cfg.cc:3181
+#: tree-cfg.cc:3071
 #, gcc-internal-format
 msgid "position plus size exceeds size of referenced object in %qs"
 msgstr ""
 
-#: tree-cfg.cc:3192
+#: tree-cfg.cc:3082
 #, gcc-internal-format
 msgid "type mismatch in %qs reference"
 msgstr ""
 
-#: tree-cfg.cc:3208
+#: tree-cfg.cc:3098
 #, gcc-internal-format
 msgid "conversion of %qs on the left hand side of %qs"
 msgstr ""
 
-#: tree-cfg.cc:3216
+#: tree-cfg.cc:3106
 #, gcc-internal-format
 msgid "conversion of register to a different size in %qs"
 msgstr ""
 
-#: tree-cfg.cc:3236
+#: tree-cfg.cc:3126
 #, gcc-internal-format
 msgid "non-top-level %qs"
 msgstr ""
 
-#: tree-cfg.cc:3251
+#: tree-cfg.cc:3141
 #, gcc-internal-format
 msgid "invalid operands to %qs"
 msgstr ""
 
-#: tree-cfg.cc:3262 tree-cfg.cc:3271 tree-cfg.cc:3288 tree-cfg.cc:3967
-#: tree-cfg.cc:3996 tree-cfg.cc:4013 tree-cfg.cc:4034 tree-cfg.cc:4080
-#: tree-cfg.cc:4101 tree-cfg.cc:4155 tree-cfg.cc:4175 tree-cfg.cc:4211
-#: tree-cfg.cc:4232 tree-cfg.cc:4293 tree-cfg.cc:4368 tree-cfg.cc:4394
-#: tree-cfg.cc:4430 tree-cfg.cc:4479 tree-cfg.cc:4504 tree-cfg.cc:4579
-#: tree-cfg.cc:4665
+#: tree-cfg.cc:3152 tree-cfg.cc:3161 tree-cfg.cc:3178 tree-cfg.cc:3862
+#: tree-cfg.cc:3891 tree-cfg.cc:3908 tree-cfg.cc:3929 tree-cfg.cc:3975
+#: tree-cfg.cc:3996 tree-cfg.cc:4050 tree-cfg.cc:4070 tree-cfg.cc:4106
+#: tree-cfg.cc:4127 tree-cfg.cc:4188 tree-cfg.cc:4263 tree-cfg.cc:4289
+#: tree-cfg.cc:4325 tree-cfg.cc:4374 tree-cfg.cc:4399 tree-cfg.cc:4474
+#: tree-cfg.cc:4568
 #, gcc-internal-format
 msgid "type mismatch in %qs"
 msgstr ""
 
-#: tree-cfg.cc:3282
+#: tree-cfg.cc:3172
 #, gcc-internal-format
 msgid "invalid %qs offset operator"
 msgstr ""
 
-#: tree-cfg.cc:3306 tree-cfg.cc:3332
+#: tree-cfg.cc:3196 tree-cfg.cc:3222
 #, gcc-internal-format
 msgid "invalid address operand in %qs"
 msgstr ""
 
-#: tree-cfg.cc:3313 tree-cfg.cc:3339
+#: tree-cfg.cc:3203 tree-cfg.cc:3229
 #, gcc-internal-format
 msgid "invalid offset operand in %qs"
 msgstr ""
 
-#: tree-cfg.cc:3320 tree-cfg.cc:3346
+#: tree-cfg.cc:3210 tree-cfg.cc:3236
 #, gcc-internal-format
 msgid "invalid clique in %qs"
 msgstr ""
 
-#: tree-cfg.cc:3353 tree-cfg.cc:4677
+#: tree-cfg.cc:3243 tree-cfg.cc:4580
 #, gcc-internal-format
 msgid "%qs in gimple IL"
 msgstr ""
 
-#: tree-cfg.cc:3364
+#: tree-cfg.cc:3254
 #, gcc-internal-format
 msgid "%qs as base where non-register is required"
 msgstr ""
 
-#: tree-cfg.cc:3379
+#: tree-cfg.cc:3269
 #, gcc-internal-format
 msgid "invalid expression for min lvalue"
 msgstr ""
 
-#: tree-cfg.cc:3430
+#: tree-cfg.cc:3320
 #, gcc-internal-format
 msgid "gimple call has two targets"
 msgstr ""
 
-#: tree-cfg.cc:3439
+#: tree-cfg.cc:3329
 #, gcc-internal-format
 msgid "gimple call has no target"
 msgstr ""
 
-#: tree-cfg.cc:3446
+#: tree-cfg.cc:3336
 #, gcc-internal-format
 msgid "invalid function in gimple call"
 msgstr ""
 
-#: tree-cfg.cc:3456
+#: tree-cfg.cc:3346
 #, gcc-internal-format
 msgid "non-function in gimple call"
 msgstr ""
 
-#: tree-cfg.cc:3467
+#: tree-cfg.cc:3357
 #, gcc-internal-format
 msgid "invalid pure const state for function"
 msgstr ""
 
-#: tree-cfg.cc:3479
+#: tree-cfg.cc:3369
 #, gcc-internal-format
 msgid "invalid LHS in gimple call"
 msgstr ""
 
-#: tree-cfg.cc:3487
+#: tree-cfg.cc:3377
 #, gcc-internal-format
 msgid "LHS in %<noreturn%> call"
 msgstr ""
 
-#: tree-cfg.cc:3501
+#: tree-cfg.cc:3391
 #, gcc-internal-format
 msgid "invalid conversion in gimple call"
 msgstr ""
 
-#: tree-cfg.cc:3510
+#: tree-cfg.cc:3400
 #, gcc-internal-format
 msgid "invalid static chain in gimple call"
 msgstr ""
 
-#: tree-cfg.cc:3521
+#: tree-cfg.cc:3411
 #, gcc-internal-format
 msgid "static chain with function that doesn%'t use one"
 msgstr ""
@@ -34057,717 +35407,747 @@ msgstr ""
 #. __builtin_unreachable internally, for example when IPA figures
 #. out a call cannot happen in a legal program.  In such cases,
 #. we must make sure arguments are stripped off.
-#: tree-cfg.cc:3540
+#: tree-cfg.cc:3430
 #, gcc-internal-format
 msgid "%<__builtin_unreachable%> or %<__builtin_trap%> call with arguments"
 msgstr ""
 
-#: tree-cfg.cc:3571
+#: tree-cfg.cc:3461
 #, gcc-internal-format
 msgid ""
 "%<DEFERRED_INIT%> calls should have same constant size for the first "
 "argument and LHS"
 msgstr ""
 
-#: tree-cfg.cc:3589
+#: tree-cfg.cc:3479
 #, gcc-internal-format
 msgid "invalid argument to gimple call"
 msgstr ""
 
-#: tree-cfg.cc:3616
+#: tree-cfg.cc:3506
 #, gcc-internal-format
 msgid "invalid operands in gimple comparison"
 msgstr ""
 
-#: tree-cfg.cc:3627
+#: tree-cfg.cc:3517
 #, gcc-internal-format
 msgid "mismatching comparison operand types"
 msgstr ""
 
-#: tree-cfg.cc:3644
+#: tree-cfg.cc:3534
 #, gcc-internal-format
 msgid "unsupported operation or type for vector comparison returning a boolean"
 msgstr ""
 
-#: tree-cfg.cc:3659
+#: tree-cfg.cc:3549
 #, gcc-internal-format
 msgid "non-vector operands in vector comparison"
 msgstr ""
 
-#: tree-cfg.cc:3668
+#: tree-cfg.cc:3558
 #, gcc-internal-format
 msgid "invalid vector comparison resulting type"
 msgstr ""
 
-#: tree-cfg.cc:3675
+#: tree-cfg.cc:3565
 #, gcc-internal-format
 msgid "bogus comparison result type"
 msgstr ""
 
-#: tree-cfg.cc:3697
+#: tree-cfg.cc:3587
 #, gcc-internal-format
 msgid "non-register as LHS of unary operation"
 msgstr ""
 
-#: tree-cfg.cc:3703
+#: tree-cfg.cc:3593
 #, gcc-internal-format
 msgid "invalid operand in unary operation"
 msgstr ""
 
-#: tree-cfg.cc:3726
+#: tree-cfg.cc:3616
 #, gcc-internal-format
 msgid "invalid vector types in nop conversion"
 msgstr ""
 
-#: tree-cfg.cc:3763
+#: tree-cfg.cc:3653
 #, gcc-internal-format
 msgid "invalid types in nop conversion"
 msgstr ""
 
-#: tree-cfg.cc:3778
+#: tree-cfg.cc:3668
 #, gcc-internal-format
 msgid "invalid types in address space conversion"
 msgstr ""
 
-#: tree-cfg.cc:3792
+#: tree-cfg.cc:3682
 #, gcc-internal-format
 msgid "invalid types in fixed-point conversion"
 msgstr ""
 
-#: tree-cfg.cc:3807
+#: tree-cfg.cc:3697
 #, gcc-internal-format
 msgid "invalid types in conversion to floating-point"
 msgstr ""
 
-#: tree-cfg.cc:3822
+#: tree-cfg.cc:3712
 #, gcc-internal-format
 msgid "invalid types in conversion to integer"
 msgstr ""
 
-#: tree-cfg.cc:3862
+#: tree-cfg.cc:3752
 #, gcc-internal-format
 msgid "type mismatch in %qs expression"
 msgstr ""
 
-#: tree-cfg.cc:3879 tree-cfg.cc:3893 tree-cfg.cc:4259 tree-cfg.cc:4281
+#: tree-cfg.cc:3767 tree-cfg.cc:4154 tree-cfg.cc:4176
 #, gcc-internal-format
 msgid "invalid types for %qs"
 msgstr ""
 
-#: tree-cfg.cc:3904
+#: tree-cfg.cc:3778
 #, gcc-internal-format
 msgid "%qs should be from a scalar to a like vector"
 msgstr ""
 
-#: tree-cfg.cc:3918
+#: tree-cfg.cc:3789
+#, gcc-internal-format
+msgid "invalid type for %qs"
+msgstr ""
+
+#: tree-cfg.cc:3813
 #, gcc-internal-format
 msgid "non-trivial conversion in unary operation"
 msgstr ""
 
-#: tree-cfg.cc:3943
+#: tree-cfg.cc:3838
 #, gcc-internal-format
 msgid "non-register as LHS of binary operation"
 msgstr ""
 
-#: tree-cfg.cc:3950
+#: tree-cfg.cc:3845
 #, gcc-internal-format
 msgid "invalid operands in binary operation"
 msgstr ""
 
-#: tree-cfg.cc:4055
+#: tree-cfg.cc:3950
 #, gcc-internal-format
 msgid "invalid non-vector operands to %qs"
 msgstr ""
 
-#: tree-cfg.cc:4066
+#: tree-cfg.cc:3961
 #, gcc-internal-format
 msgid "invalid (pointer) operands %qs"
 msgstr ""
 
-#: tree-cfg.cc:4301
+#: tree-cfg.cc:4196
 #, gcc-internal-format
 msgid "vector type expected in %qs"
 msgstr ""
 
-#: tree-cfg.cc:4314
+#: tree-cfg.cc:4209
 #, gcc-internal-format
 msgid "type mismatch in binary expression"
 msgstr ""
 
-#: tree-cfg.cc:4342
+#: tree-cfg.cc:4237
 #, gcc-internal-format
 msgid "non-register as LHS of ternary operation"
 msgstr ""
 
-#: tree-cfg.cc:4350
+#: tree-cfg.cc:4245
 #, gcc-internal-format
 msgid "invalid operands in ternary operation"
 msgstr ""
 
-#: tree-cfg.cc:4382
+#: tree-cfg.cc:4277
 #, gcc-internal-format
 msgid ""
 "the first argument of a %qs must be of a boolean vector type of the same "
 "number of elements as the result"
 msgstr ""
 
-#: tree-cfg.cc:4414 tree-cfg.cc:4491
+#: tree-cfg.cc:4309 tree-cfg.cc:4386
 #, gcc-internal-format
 msgid "vector types expected in %qs"
 msgstr ""
 
-#: tree-cfg.cc:4447
+#: tree-cfg.cc:4342
 #, gcc-internal-format
 msgid "vectors with different element number found in %qs"
 msgstr ""
 
-#: tree-cfg.cc:4463
+#: tree-cfg.cc:4358
 #, gcc-internal-format
 msgid "invalid mask type in %qs"
 msgstr ""
 
-#: tree-cfg.cc:4524
+#: tree-cfg.cc:4419
 #, gcc-internal-format
 msgid "not allowed type combination in %qs"
 msgstr ""
 
-#: tree-cfg.cc:4533
+#: tree-cfg.cc:4428
 #, gcc-internal-format
 msgid "invalid position or size in %qs"
 msgstr ""
 
-#: tree-cfg.cc:4539
+#: tree-cfg.cc:4434
 #, gcc-internal-format
 msgid "%qs into non-mode-precision operand"
 msgstr ""
 
-#: tree-cfg.cc:4549
+#: tree-cfg.cc:4444
 #, gcc-internal-format
 msgid "insertion out of range in %qs"
 msgstr ""
 
-#: tree-cfg.cc:4559
+#: tree-cfg.cc:4454
 #, gcc-internal-format
 msgid "%qs not at element boundary"
 msgstr ""
 
-#: tree-cfg.cc:4615
+#: tree-cfg.cc:4510
 #, gcc-internal-format
 msgid "non-trivial conversion in %qs"
 msgstr ""
 
-#: tree-cfg.cc:4624
+#: tree-cfg.cc:4519
+#, gcc-internal-format
+msgid "invalid LHS (%qs) for assignment: %qs"
+msgstr ""
+
+#: tree-cfg.cc:4527
 #, gcc-internal-format
 msgid "%qs LHS in clobber statement"
 msgstr ""
 
-#: tree-cfg.cc:4632
+#: tree-cfg.cc:4535
 #, gcc-internal-format
 msgid "%qs LHS in assignment statement"
 msgstr ""
 
-#: tree-cfg.cc:4651
+#: tree-cfg.cc:4554
 #, gcc-internal-format
 msgid "invalid operand in %qs"
 msgstr ""
 
-#: tree-cfg.cc:4683
+#: tree-cfg.cc:4586
 #, gcc-internal-format
 msgid "invalid %qs size argument in load"
 msgstr ""
 
-#: tree-cfg.cc:4702 tree-cfg.cc:4728
+#: tree-cfg.cc:4605 tree-cfg.cc:4631
 #, gcc-internal-format
 msgid "invalid RHS for gimple memory store: %qs"
 msgstr ""
 
-#: tree-cfg.cc:4762 tree-cfg.cc:4780
+#: tree-cfg.cc:4648
+#, gcc-internal-format
+msgid "non-register as LHS with vector constructor"
+msgstr ""
+
+#: tree-cfg.cc:4670 tree-cfg.cc:4688
 #, gcc-internal-format
 msgid "incorrect type of vector %qs elements"
 msgstr ""
 
-#: tree-cfg.cc:4771 tree-cfg.cc:4788
+#: tree-cfg.cc:4679 tree-cfg.cc:4696
 #, gcc-internal-format
 msgid "incorrect number of vector %qs elements"
 msgstr ""
 
-#: tree-cfg.cc:4796
+#: tree-cfg.cc:4704
 #, gcc-internal-format
 msgid "incorrect type of vector CONSTRUCTOR elements"
 msgstr ""
 
-#: tree-cfg.cc:4805
+#: tree-cfg.cc:4713
 #, gcc-internal-format
 msgid "vector %qs with non-NULL element index"
 msgstr ""
 
-#: tree-cfg.cc:4812
+#: tree-cfg.cc:4720
 #, gcc-internal-format
 msgid "vector %qs element is not a GIMPLE value"
 msgstr ""
 
-#: tree-cfg.cc:4821
+#: tree-cfg.cc:4729
 #, gcc-internal-format
 msgid "non-vector %qs with elements"
 msgstr ""
 
-#: tree-cfg.cc:4848
+#: tree-cfg.cc:4756
 #, gcc-internal-format
 msgid "nontemporal store lhs cannot be a gimple register"
 msgstr ""
 
-#: tree-cfg.cc:4890
+#: tree-cfg.cc:4799
 #, gcc-internal-format
 msgid "invalid operand in return statement"
 msgstr ""
 
-#: tree-cfg.cc:4905 c/gimple-parser.cc:2666
+#: tree-cfg.cc:4809 c/gimple-parser.cc:2656
 #, gcc-internal-format
 msgid "invalid conversion in return statement"
 msgstr ""
 
-#: tree-cfg.cc:4929
+#: tree-cfg.cc:4833
 #, gcc-internal-format
 msgid "goto destination is neither a label nor a pointer"
 msgstr ""
 
-#: tree-cfg.cc:4948
+#: tree-cfg.cc:4852
 #, gcc-internal-format
 msgid "invalid operand to switch statement"
 msgstr ""
 
-#: tree-cfg.cc:4956
+#: tree-cfg.cc:4860
 #, gcc-internal-format
 msgid "non-integral type switch statement"
 msgstr ""
 
-#: tree-cfg.cc:4966
+#: tree-cfg.cc:4870
 #, gcc-internal-format
 msgid "invalid default case label in switch statement"
 msgstr ""
 
-#: tree-cfg.cc:4978
+#: tree-cfg.cc:4882
 #, gcc-internal-format
 msgid "invalid %<CASE_CHAIN%>"
 msgstr ""
 
-#: tree-cfg.cc:4984
+#: tree-cfg.cc:4888
 #, gcc-internal-format
 msgid "invalid case label in switch statement"
 msgstr ""
 
-#: tree-cfg.cc:4991
+#: tree-cfg.cc:4895
 #, gcc-internal-format
 msgid "invalid case range in switch statement"
 msgstr ""
 
-#: tree-cfg.cc:5001
+#: tree-cfg.cc:4905
 #, gcc-internal-format
 msgid "type precision mismatch in switch statement"
 msgstr ""
 
-#: tree-cfg.cc:5008
+#: tree-cfg.cc:4912
 #, gcc-internal-format
 msgid "type mismatch for case label in switch statement"
 msgstr ""
 
-#: tree-cfg.cc:5017
+#: tree-cfg.cc:4921
 #, gcc-internal-format
 msgid "case labels not sorted in switch statement"
 msgstr ""
 
-#: tree-cfg.cc:5060
+#: tree-cfg.cc:4964
 #, gcc-internal-format
 msgid "label context is not the current function declaration"
 msgstr ""
 
-#: tree-cfg.cc:5069
+#: tree-cfg.cc:4973
 #, gcc-internal-format
 msgid "incorrect entry in %<label_to_block_map%>"
 msgstr ""
 
-#: tree-cfg.cc:5079
+#: tree-cfg.cc:4983
 #, gcc-internal-format
 msgid "incorrect setting of landing pad number"
 msgstr ""
 
-#: tree-cfg.cc:5095
+#: tree-cfg.cc:4999
 #, gcc-internal-format
 msgid "invalid comparison code in gimple cond"
 msgstr ""
 
-#: tree-cfg.cc:5103
+#: tree-cfg.cc:5007
 #, gcc-internal-format
 msgid "invalid labels in gimple cond"
 msgstr ""
 
-#: tree-cfg.cc:5189 tree-cfg.cc:5198
+#: tree-cfg.cc:5020
+#, gcc-internal-format
+msgid "gimple cond condition cannot throw"
+msgstr ""
+
+#: tree-cfg.cc:5106 tree-cfg.cc:5115
 #, gcc-internal-format
 msgid "invalid %<PHI%> result"
 msgstr ""
 
-#: tree-cfg.cc:5208
+#: tree-cfg.cc:5125
 #, gcc-internal-format
 msgid "missing %<PHI%> def"
 msgstr ""
 
-#: tree-cfg.cc:5222
+#: tree-cfg.cc:5139
 #, gcc-internal-format
 msgid "invalid %<PHI%> argument"
 msgstr ""
 
-#: tree-cfg.cc:5229
+#: tree-cfg.cc:5146
 #, gcc-internal-format
 msgid "incompatible types in %<PHI%> argument %u"
 msgstr ""
 
-#: tree-cfg.cc:5332
+#: tree-cfg.cc:5249
 #, gcc-internal-format
 msgid "%<verify_gimple%> failed"
 msgstr ""
 
-#: tree-cfg.cc:5391
+#: tree-cfg.cc:5308
 #, gcc-internal-format
 msgid "dead statement in EH table"
 msgstr ""
 
-#: tree-cfg.cc:5407
+#: tree-cfg.cc:5324
 #, gcc-internal-format
 msgid "location references block not in block tree"
 msgstr ""
 
-#: tree-cfg.cc:5456
+#: tree-cfg.cc:5373
 #, gcc-internal-format
 msgid "local declaration from a different function"
 msgstr ""
 
-#: tree-cfg.cc:5559
+#: tree-cfg.cc:5476
 #, gcc-internal-format
 msgid "gimple_bb (phi) is set to a wrong basic block"
 msgstr ""
 
-#: tree-cfg.cc:5568
+#: tree-cfg.cc:5485
 #, gcc-internal-format
 msgid "PHI node with location"
 msgstr ""
 
-#: tree-cfg.cc:5579 tree-cfg.cc:5626
+#: tree-cfg.cc:5496 tree-cfg.cc:5543
 #, gcc-internal-format
 msgid "incorrect sharing of tree nodes"
 msgstr ""
 
-#: tree-cfg.cc:5587
+#: tree-cfg.cc:5504
 #, gcc-internal-format
 msgid "virtual PHI with argument locations"
 msgstr ""
 
-#: tree-cfg.cc:5614
+#: tree-cfg.cc:5531
 #, gcc-internal-format
 msgid "gimple_bb (stmt) is set to a wrong basic block"
 msgstr ""
 
-#: tree-cfg.cc:5654
+#: tree-cfg.cc:5571
 #, gcc-internal-format
 msgid "statement marked for throw, but doesn%'t"
 msgstr ""
 
-#: tree-cfg.cc:5660
+#: tree-cfg.cc:5577
 #, gcc-internal-format
 msgid "statement marked for throw in middle of block"
 msgstr ""
 
-#: tree-cfg.cc:5682
+#: tree-cfg.cc:5599
 #, gcc-internal-format
 msgid "verify_gimple failed"
 msgstr ""
 
-#: tree-cfg.cc:5706
+#: tree-cfg.cc:5623
 #, gcc-internal-format
 msgid "ENTRY_BLOCK has IL associated with it"
 msgstr ""
 
-#: tree-cfg.cc:5713
+#: tree-cfg.cc:5630
 #, gcc-internal-format
 msgid "EXIT_BLOCK has IL associated with it"
 msgstr ""
 
-#: tree-cfg.cc:5720
+#: tree-cfg.cc:5637
 #, gcc-internal-format, gfc-internal-format
 msgid "fallthru to exit from bb %d"
 msgstr ""
 
-#: tree-cfg.cc:5726
+#: tree-cfg.cc:5643
 #, gcc-internal-format
 msgid "entry block count not initialized"
 msgstr ""
 
-#: tree-cfg.cc:5732
+#: tree-cfg.cc:5649
 #, gcc-internal-format
 msgid "exit block count not initialized"
 msgstr ""
 
-#: tree-cfg.cc:5739
+#: tree-cfg.cc:5656
 #, gcc-internal-format
 msgid "probability of edge from entry block not initialized"
 msgstr ""
 
-#: tree-cfg.cc:5754
+#: tree-cfg.cc:5662
+#, gcc-internal-format
+msgid "exit block count is not compatible with entry block count"
+msgstr ""
+
+#: tree-cfg.cc:5677
 #, gcc-internal-format, gfc-internal-format
 msgid "count of bb %d not initialized"
 msgstr ""
 
-#: tree-cfg.cc:5760
+#: tree-cfg.cc:5683
 #, gcc-internal-format, gfc-internal-format
 msgid "probability of edge %d->%d not initialized"
 msgstr ""
 
-#: tree-cfg.cc:5780
+#: tree-cfg.cc:5690
+#, gcc-internal-format, gfc-internal-format
+msgid "count of bb %d is not compatible with entry block count"
+msgstr ""
+
+#: tree-cfg.cc:5709
 #, gcc-internal-format
 msgid "nonlocal label %qD is not first in a sequence of labels in bb %d"
 msgstr ""
 
-#: tree-cfg.cc:5787
+#: tree-cfg.cc:5716
 #, gcc-internal-format
 msgid "EH landing pad label %qD is not first in a sequence of labels in bb %d"
 msgstr ""
 
-#: tree-cfg.cc:5794
+#: tree-cfg.cc:5723
 #, gcc-internal-format
 msgid "label %qD to block does not match in bb %d"
 msgstr ""
 
-#: tree-cfg.cc:5801
+#: tree-cfg.cc:5730
 #, gcc-internal-format
 msgid "label %qD has incorrect context in bb %d"
 msgstr ""
 
-#: tree-cfg.cc:5816
+#: tree-cfg.cc:5745
 #, gcc-internal-format, gfc-internal-format
 msgid "control flow in the middle of basic block %d"
 msgstr ""
 
-#: tree-cfg.cc:5826
+#: tree-cfg.cc:5755
 #, gcc-internal-format
 msgid "label %qD in the middle of basic block %d"
 msgstr ""
 
-#: tree-cfg.cc:5845
+#: tree-cfg.cc:5774
 #, gcc-internal-format, gfc-internal-format
 msgid "returns_twice call is not last in basic block %d"
 msgstr ""
 
-#: tree-cfg.cc:5854
+#: tree-cfg.cc:5783
 #, gcc-internal-format, gfc-internal-format
 msgid "returns_twice call is not first in basic block %d"
 msgstr ""
 
-#: tree-cfg.cc:5886
+#: tree-cfg.cc:5815
 #, gcc-internal-format, gfc-internal-format
 msgid "fallthru edge after a control statement in bb %d"
 msgstr ""
 
-#: tree-cfg.cc:5899
+#: tree-cfg.cc:5828
 #, gcc-internal-format, gfc-internal-format
 msgid "true/false edge after a non-GIMPLE_COND in bb %d"
 msgstr ""
 
-#: tree-cfg.cc:5922 tree-cfg.cc:5944 tree-cfg.cc:5961 tree-cfg.cc:6030
+#: tree-cfg.cc:5851 tree-cfg.cc:5873 tree-cfg.cc:5890 tree-cfg.cc:5959
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong outgoing edge flags at end of bb %d"
 msgstr ""
 
-#: tree-cfg.cc:5932
+#: tree-cfg.cc:5861
 #, gcc-internal-format, gfc-internal-format
 msgid "explicit goto at end of bb %d"
 msgstr ""
 
-#: tree-cfg.cc:5966
+#: tree-cfg.cc:5895
 #, gcc-internal-format, gfc-internal-format
 msgid "return edge does not point to exit in bb %d"
 msgstr ""
 
-#: tree-cfg.cc:5996
+#: tree-cfg.cc:5925
 #, gcc-internal-format
 msgid "found default case not at the start of case vector"
 msgstr ""
 
-#: tree-cfg.cc:6004
+#: tree-cfg.cc:5933
 #, gcc-internal-format
 msgid "case labels not sorted: "
 msgstr ""
 
-#: tree-cfg.cc:6021
+#: tree-cfg.cc:5950
 #, gcc-internal-format, gfc-internal-format
 msgid "extra outgoing edge %d->%d"
 msgstr ""
 
-#: tree-cfg.cc:6044
+#: tree-cfg.cc:5973
 #, gcc-internal-format, gfc-internal-format
 msgid "missing edge %i->%i"
 msgstr ""
 
-#: tree-cfg.cc:9826
+#: tree-cfg.cc:9785
 #, gcc-internal-format
 msgid "%<noreturn%> function does return"
 msgstr ""
 
-#: tree-cfg.cc:9846 tree-cfg.cc:9881
+#: tree-cfg.cc:9805 tree-cfg.cc:9840
 #, gcc-internal-format
 msgid "control reaches end of non-void function"
 msgstr ""
 
-#: tree-cfg.cc:9949
+#: tree-cfg.cc:9910
 #, gcc-internal-format
 msgid ""
 "ignoring return value of %qD declared with attribute %<warn_unused_result%>"
 msgstr ""
 
-#: tree-cfg.cc:9954 cp/cvt.cc:1154
+#: tree-cfg.cc:9915 cp/cvt.cc:1167
 #, gcc-internal-format
 msgid ""
 "ignoring return value of function declared with attribute "
 "%<warn_unused_result%>"
 msgstr ""
 
-#: tree-complex.cc:1676
+#: tree-complex.cc:1712
 #, gcc-internal-format
 msgid "%<asm goto%> with complex typed outputs"
 msgstr ""
 
-#: tree-eh.cc:4983
+#: tree-eh.cc:5078
 #, gcc-internal-format, gfc-internal-format
 msgid "BB %i has multiple EH edges"
 msgstr ""
 
-#: tree-eh.cc:4995
+#: tree-eh.cc:5090
 #, gcc-internal-format, gfc-internal-format
 msgid "BB %i cannot throw but has an EH edge"
 msgstr ""
 
-#: tree-eh.cc:5003
+#: tree-eh.cc:5098
 #, gcc-internal-format, gfc-internal-format
 msgid "BB %i last statement has incorrectly set lp"
 msgstr ""
 
-#: tree-eh.cc:5009
+#: tree-eh.cc:5104
 #, gcc-internal-format, gfc-internal-format
 msgid "BB %i is missing an EH edge"
 msgstr ""
 
-#: tree-eh.cc:5015
+#: tree-eh.cc:5110
 #, gcc-internal-format, gfc-internal-format
 msgid "Incorrect EH edge %i->%i"
 msgstr ""
 
-#: tree-eh.cc:5049 tree-eh.cc:5068
+#: tree-eh.cc:5144 tree-eh.cc:5163
 #, gcc-internal-format, gfc-internal-format
 msgid "BB %i is missing an edge"
 msgstr ""
 
-#: tree-eh.cc:5085
+#: tree-eh.cc:5180
 #, gcc-internal-format, gfc-internal-format
 msgid "BB %i too many fallthru edges"
 msgstr ""
 
-#: tree-eh.cc:5094
+#: tree-eh.cc:5189
 #, gcc-internal-format, gfc-internal-format
 msgid "BB %i has incorrect edge"
 msgstr ""
 
-#: tree-eh.cc:5100
+#: tree-eh.cc:5195
 #, gcc-internal-format, gfc-internal-format
 msgid "BB %i has incorrect fallthru edge"
 msgstr ""
 
-#: tree-inline.cc:3964
+#: tree-inline.cc:3992
 #, gcc-internal-format
 msgid "function %q+F can never be copied because it receives a non-local goto"
 msgstr ""
 
-#: tree-inline.cc:3971
+#: tree-inline.cc:3999
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be copied because it saves address of local label in "
 "a static variable"
 msgstr ""
 
-#: tree-inline.cc:4011
+#: tree-inline.cc:4039
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses alloca (override using "
 "the always_inline attribute)"
 msgstr ""
 
-#: tree-inline.cc:4025
+#: tree-inline.cc:4053
 #, gcc-internal-format
 msgid "function %q+F can never be inlined because it uses setjmp"
 msgstr ""
 
-#: tree-inline.cc:4039
+#: tree-inline.cc:4067
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses variable argument lists"
 msgstr ""
 
-#: tree-inline.cc:4051
+#: tree-inline.cc:4079
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses setjmp-longjmp exception "
 "handling"
 msgstr ""
 
-#: tree-inline.cc:4059
+#: tree-inline.cc:4087
 #, gcc-internal-format
 msgid "function %q+F can never be inlined because it uses non-local goto"
 msgstr ""
 
-#: tree-inline.cc:4071
+#: tree-inline.cc:4099
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses %<__builtin_return%> or "
 "%<__builtin_apply_args%>"
 msgstr ""
 
-#: tree-inline.cc:4091
+#: tree-inline.cc:4119
 #, gcc-internal-format
 msgid "function %q+F can never be inlined because it contains a computed goto"
 msgstr ""
 
-#: tree-inline.cc:4137
+#: tree-inline.cc:4165
 #, gcc-internal-format
 msgid "function %q+F can never be inlined because it has a VLA argument"
 msgstr ""
 
-#: tree-inline.cc:4204
+#: tree-inline.cc:4232
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it is suppressed using %<-fno-"
 "inline%>"
 msgstr ""
 
-#: tree-inline.cc:4212
+#: tree-inline.cc:4240
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses attributes conflicting "
 "with inlining"
 msgstr ""
 
-#: tree-inline.cc:4895
+#: tree-inline.cc:4925
 #, gcc-internal-format
 msgid "inlining failed in call to %<always_inline%> %q+F: %s"
 msgstr ""
 
-#: tree-inline.cc:4898 tree-inline.cc:4919
+#: tree-inline.cc:4928 tree-inline.cc:4949
 #, gcc-internal-format
 msgid "called from here"
 msgstr ""
 
-#: tree-inline.cc:4901 tree-inline.cc:4922
+#: tree-inline.cc:4931 tree-inline.cc:4952
 #, gcc-internal-format
 msgid "called from this function"
 msgstr ""
 
-#: tree-inline.cc:4915
+#: tree-inline.cc:4945
 #, gcc-internal-format
 msgid "inlining failed in call to %q+F: %s"
 msgstr ""
@@ -34782,7 +36162,7 @@ msgstr ""
 msgid "cannot update SSA form"
 msgstr ""
 
-#: tree-into-ssa.cc:3517 tree-outof-ssa.cc:907 tree-ssa-coalesce.cc:1014
+#: tree-into-ssa.cc:3517 tree-outof-ssa.cc:903 tree-ssa-coalesce.cc:1014
 #, gcc-internal-format
 msgid "SSA corruption"
 msgstr ""
@@ -34792,7 +36172,7 @@ msgstr ""
 msgid "%s from %s referenced in %s"
 msgstr ""
 
-#: tree-nested.cc:3002
+#: tree-nested.cc:3011
 #, gcc-internal-format, gfc-internal-format
 msgid "%s from %s called in %s"
 msgstr ""
@@ -34807,57 +36187,71 @@ msgstr ""
 msgid "invalid regular expression %qs in %qs"
 msgstr ""
 
-#: tree-profile.cc:1856
+#: tree-profile.cc:1855
+#, gcc-internal-format
+msgid ""
+"target does not fully support atomic profile update, single mode is selected "
+"with partial atomic updates"
+msgstr ""
+
+#: tree-profile.cc:1861
 #, gcc-internal-format
 msgid "target does not support atomic profile update, single mode is selected"
 msgstr ""
 
-#: tree-ssa-alias.cc:4125
+#: tree-ssa-alias.cc:4131
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid fn spec attribute \"%s\""
 msgstr ""
 
-#: tree-ssa-alias.cc:4164
+#: tree-ssa-alias.cc:4170
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid fn spec attribute \"%s\" arg %i"
 msgstr ""
 
-#: tree-ssa-ccp.cc:4595 c-family/c-common.cc:5992
+#: tree-ssa-ccp.cc:3168 c-family/c-common.cc:6128
 #, gcc-internal-format
 msgid "%qs pointer is null"
 msgstr ""
 
-#: tree-ssa-ccp.cc:4598 c-family/c-common.cc:5995
+#: tree-ssa-ccp.cc:3171 c-family/c-common.cc:6131
 #, gcc-internal-format
 msgid "in a call to non-static member function %qD"
 msgstr ""
 
-#: tree-ssa-ccp.cc:4604 c-family/c-common.cc:6010
+#: tree-ssa-ccp.cc:3177 c-family/c-common.cc:6157
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u null where non-null expected"
 msgstr ""
 
-#: tree-ssa-ccp.cc:4610 tree-ssa-ccp.cc:4667
+#: tree-ssa-ccp.cc:3183 tree-ssa-ccp.cc:3270
 #, gcc-internal-format
 msgid "in a call to built-in function %qD"
 msgstr ""
 
-#: tree-ssa-ccp.cc:4614 tree-ssa-ccp.cc:4671 c-family/c-common.cc:6014
+#: tree-ssa-ccp.cc:3187 tree-ssa-ccp.cc:3274 c-family/c-common.cc:6161
 #, gcc-internal-format
 msgid "in a call to function %qD declared %qs"
 msgstr ""
 
-#: tree-ssa-ccp.cc:4660 c-family/c-common.cc:6002
+#: tree-ssa-ccp.cc:3257 c-family/c-common.cc:6138
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"argument %u null where non-null expected because arguments %u and %u are "
+"nonzero"
+msgstr ""
+
+#: tree-ssa-ccp.cc:3263 c-family/c-common.cc:6149
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u null where non-null expected because argument %u is nonzero"
 msgstr ""
 
-#: tree-ssa-loop-niter.cc:3947
+#: tree-ssa-loop-niter.cc:4050
 #, gcc-internal-format, gfc-internal-format
 msgid "iteration %s invokes undefined behavior"
 msgstr ""
 
-#: tree-ssa-loop-niter.cc:3948
+#: tree-ssa-loop-niter.cc:4051
 #, gcc-internal-format
 msgid "within this loop"
 msgstr ""
@@ -35024,33 +36418,33 @@ msgstr ""
 msgid "length computed here"
 msgstr ""
 
-#: tree-ssa-strlen.cc:4280
+#: tree-ssa-strlen.cc:4287
 #, gcc-internal-format
 msgid ""
 "%qD of a string of length %wu or more and an array of size %wu evaluates to "
 "nonzero"
 msgstr ""
 
-#: tree-ssa-strlen.cc:4282
+#: tree-ssa-strlen.cc:4289
 #, gcc-internal-format
 msgid ""
 "%qD of a string of length %wu and an array of size %wu evaluates to nonzero"
 msgstr ""
 
-#: tree-ssa-strlen.cc:4289
+#: tree-ssa-strlen.cc:4296
 #, gcc-internal-format
 msgid ""
 "%qD of strings of length %wu and %wu and bound of %wu evaluates to nonzero"
 msgstr ""
 
-#: tree-ssa-strlen.cc:4294
+#: tree-ssa-strlen.cc:4301
 #, gcc-internal-format
 msgid ""
 "%qD of a string of length %wu, an array of size %wu and bound of %wu "
 "evaluates to nonzero"
 msgstr ""
 
-#: tree-ssa-strlen.cc:4305
+#: tree-ssa-strlen.cc:4312
 #, gcc-internal-format
 msgid "in this expression"
 msgstr ""
@@ -35075,7 +36469,7 @@ msgstr ""
 msgid "%qs may be used uninitialized"
 msgstr ""
 
-#: tree-ssa-uninit.cc:338 varasm.cc:367 varasm.cc:8211
+#: tree-ssa-uninit.cc:338 varasm.cc:367 varasm.cc:8263
 #, gcc-internal-format
 msgid "%qD was declared here"
 msgstr ""
@@ -35085,7 +36479,7 @@ msgstr ""
 msgid "%qs was declared here"
 msgstr ""
 
-#: tree-ssa-uninit.cc:451 tree-ssa-uninit.cc:762
+#: tree-ssa-uninit.cc:451 tree-ssa-uninit.cc:781
 #, gcc-internal-format
 msgid "%qE may be used uninitialized"
 msgstr ""
@@ -35095,27 +36489,27 @@ msgstr ""
 msgid "accessing argument %u of a function declared with attribute %qs"
 msgstr ""
 
-#: tree-ssa-uninit.cc:749
+#: tree-ssa-uninit.cc:768
 #, gcc-internal-format
 msgid "%qE is used uninitialized"
 msgstr ""
 
-#: tree-ssa-uninit.cc:885
+#: tree-ssa-uninit.cc:904
 #, gcc-internal-format
 msgid "in a call to %qD declared with attribute %qs here"
 msgstr ""
 
-#: tree-ssa-uninit.cc:892
+#: tree-ssa-uninit.cc:911
 #, gcc-internal-format
 msgid "in a call to %qT declared with attribute %qs"
 msgstr ""
 
-#: tree-ssa-uninit.cc:908
+#: tree-ssa-uninit.cc:927
 #, gcc-internal-format
 msgid "by argument %u of type %s to %qD declared here"
 msgstr ""
 
-#: tree-ssa-uninit.cc:916
+#: tree-ssa-uninit.cc:935
 #, gcc-internal-format
 msgid "by argument %u of type %s to %qT"
 msgstr ""
@@ -35270,28 +36664,21 @@ msgstr ""
 msgid "verify_ssa failed"
 msgstr ""
 
-#: tree-streamer-in.cc:347
+#: tree-streamer-in.cc:348
 #, gcc-internal-format
 msgid "machine independent builtin code out of range"
 msgstr ""
 
-#: tree-streamer-in.cc:353
+#: tree-streamer-in.cc:354
 #, gcc-internal-format
 msgid "target specific builtin not available"
 msgstr ""
 
-#: tree-streamer-in.cc:726
+#: tree-streamer-in.cc:736
 #, gcc-internal-format
 msgid "degree of %<poly_int%> exceeds %<NUM_POLY_INT_COEFFS%>"
 msgstr ""
 
-#: tree-switch-conversion.cc:2354
-#, gcc-internal-format
-msgid ""
-"Using faster switch lowering algorithms. Number of switch cases (%d) exceeds "
-"%<--param=switch-lower-slow-alg-max-cases=%d%> limit."
-msgstr ""
-
 #: tree-tailcall.cc:225
 #, gcc-internal-format
 msgid "address of label passed to %<musttail%> call argument"
@@ -35312,22 +36699,22 @@ msgstr ""
 msgid "address of local variable passed to %<musttail%> call argument"
 msgstr ""
 
-#: tree-tailcall.cc:885 tree-tailcall.cc:914
+#: tree-tailcall.cc:1066 tree-tailcall.cc:1095
 #, gcc-internal-format
 msgid "address of local variable can escape to %<musttail%> call"
 msgstr ""
 
-#: tree-tailcall.cc:909
+#: tree-tailcall.cc:1090
 #, gcc-internal-format
 msgid "address of automatic variable %qD can escape to %<musttail%> call"
 msgstr ""
 
-#: tree-tailcall.cc:939
+#: tree-tailcall.cc:1120
 #, gcc-internal-format
 msgid "address of parameter %qD can escape to %<musttail%> call"
 msgstr ""
 
-#: tree-vect-generic.cc:308 tree-vect-generic.cc:437 tree-vect-generic.cc:1939
+#: tree-vect-generic.cc:308 tree-vect-generic.cc:437 tree-vect-generic.cc:2135
 #, gcc-internal-format
 msgid "vector operation will be expanded piecewise"
 msgstr ""
@@ -35342,160 +36729,160 @@ msgstr ""
 msgid "vector operation will be expanded with a single scalar operation"
 msgstr ""
 
-#: tree-vect-generic.cc:1012
+#: tree-vect-generic.cc:1209
 #, gcc-internal-format
 msgid "vector condition will be expanded piecewise"
 msgstr ""
 
-#: tree-vect-generic.cc:1505
+#: tree-vect-generic.cc:1719
 #, gcc-internal-format
 msgid "vector shuffling operation will be expanded piecewise"
 msgstr ""
 
-#: tree-vect-loop.cc:5115
+#: tree-vect-loop.cc:4498
 #, gcc-internal-format
 msgid "vectorization did not happen for a simd loop"
 msgstr ""
 
-#: tree-vrp.cc:1341
+#: tree-vrp.cc:1344
 #, gcc-internal-format
 msgid ""
 "using fast VRP algorithm; %d basic blocks exceeds %<--param=vrp-block-"
 "limit=%d%> limit"
 msgstr ""
 
-#: tree.cc:2329
+#: tree.cc:2389
 #, gcc-internal-format
 msgid "non-constant element in constant CONSTRUCTOR"
 msgstr ""
 
-#: tree.cc:2331
+#: tree.cc:2391
 #, gcc-internal-format
 msgid "side-effects element in no-side-effects CONSTRUCTOR"
 msgstr ""
 
-#: tree.cc:7464 m2/gm2-gcc/m2type.cc:216
+#: tree.cc:7582 m2/gm2-gcc/m2type.cc:215
 #, gcc-internal-format
 msgid "arrays of functions are not meaningful"
 msgstr ""
 
-#: tree.cc:7630
+#: tree.cc:7748
 #, gcc-internal-format
 msgid "function return type cannot be function"
 msgstr ""
 
-#: tree.cc:9114 tree.cc:9199 tree.cc:9262
+#: tree.cc:9219 tree.cc:9304 tree.cc:9367
 #, gcc-internal-format, gfc-internal-format
 msgid "tree check: %s, have %s in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:9151
+#: tree.cc:9256
 #, gcc-internal-format, gfc-internal-format
 msgid "tree check: expected none of %s, have %s in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:9164
+#: tree.cc:9269
 #, gcc-internal-format
 msgid "tree check: expected class %qs, have %qs (%s) in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:9213
+#: tree.cc:9318
 #, gcc-internal-format
 msgid "tree check: did not expect class %qs, have %qs (%s) in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:9226
+#: tree.cc:9331
 #, gcc-internal-format
 msgid "tree check: expected %<omp_clause %s%>, have %qs in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:9288
+#: tree.cc:9393
 #, gcc-internal-format
 msgid ""
 "tree check: expected tree that contains %qs structure, have %qs in %s, at %s:"
 "%d"
 msgstr ""
 
-#: tree.cc:9302
+#: tree.cc:9407
 #, gcc-internal-format
 msgid ""
 "tree check: accessed elt %d of %<tree_int_cst%> with %d elts in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:9315
+#: tree.cc:9420
 #, gcc-internal-format
 msgid ""
 "tree check: accessed elt %d of %<tree_vec%> with %d elts in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:9328
+#: tree.cc:9433
 #, gcc-internal-format, gfc-internal-format
 msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:9341
+#: tree.cc:9446
 #, gcc-internal-format
 msgid ""
 "tree check: accessed operand %d of %<omp_clause %s%> with %d operands in %s, "
 "at %s:%d"
 msgstr ""
 
-#: tree.cc:12610
+#: tree.cc:12753
 #, gcc-internal-format
 msgid "%qD is deprecated: %s"
 msgstr ""
 
-#: tree.cc:12613
+#: tree.cc:12756
 #, gcc-internal-format
 msgid "%qD is deprecated"
 msgstr ""
 
-#: tree.cc:12636
+#: tree.cc:12779
 #, gcc-internal-format
 msgid "%qE is deprecated: %s"
 msgstr ""
 
-#: tree.cc:12639
+#: tree.cc:12782
 #, gcc-internal-format
 msgid "%qE is deprecated"
 msgstr ""
 
-#: tree.cc:12645
+#: tree.cc:12788
 #, gcc-internal-format, gfc-internal-format
 msgid "type is deprecated: %s"
 msgstr ""
 
-#: tree.cc:12648
+#: tree.cc:12791
 #, gcc-internal-format
 msgid "type is deprecated"
 msgstr ""
 
-#: tree.cc:12690
+#: tree.cc:12833
 #, gcc-internal-format
 msgid "%qD is unavailable: %s"
 msgstr ""
 
-#: tree.cc:12692
+#: tree.cc:12835
 #, gcc-internal-format
 msgid "%qD is unavailable"
 msgstr ""
 
-#: tree.cc:12713
+#: tree.cc:12856
 #, gcc-internal-format
 msgid "%qE is unavailable: %s"
 msgstr ""
 
-#: tree.cc:12715
+#: tree.cc:12858
 #, gcc-internal-format
 msgid "%qE is unavailable"
 msgstr ""
 
-#: tree.cc:12720
+#: tree.cc:12863
 #, gcc-internal-format, gfc-internal-format
 msgid "type is unavailable: %s"
 msgstr ""
 
-#: tree.cc:12722
+#: tree.cc:12865
 #, gcc-internal-format
 msgid "type is unavailable"
 msgstr ""
@@ -35520,266 +36907,293 @@ msgstr ""
 #. - vector types may differ by TYPE_VECTOR_OPAQUE
 #.
 #. Convenience macro for matching individual fields.
-#: tree.cc:13672
+#: tree.cc:13815
 #, gcc-internal-format, gfc-internal-format
 msgid "type variant differs by %s"
 msgstr ""
 
-#: tree.cc:13717
+#: tree.cc:13860
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_SIZE_UNIT%>"
 msgstr ""
 
-#: tree.cc:13719
+#: tree.cc:13862
 #, gcc-internal-format
 msgid "type variant%'s %<TYPE_SIZE_UNIT%>"
 msgstr ""
 
-#: tree.cc:13721
+#: tree.cc:13864
 #, gcc-internal-format
 msgid "type%'s %<TYPE_SIZE_UNIT%>"
 msgstr ""
 
-#: tree.cc:13746
+#: tree.cc:13889
 #, gcc-internal-format
 msgid "type variant with %<TYPE_ALIAS_SET_KNOWN_P%>"
 msgstr ""
 
-#: tree.cc:13759
+#: tree.cc:13902
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_VFIELD%>"
 msgstr ""
 
-#: tree.cc:13796
+#: tree.cc:13939
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_BINFO%>"
 msgstr ""
 
-#: tree.cc:13798
+#: tree.cc:13941
 #, gcc-internal-format
 msgid "type variant%'s %<TYPE_BINFO%>"
 msgstr ""
 
-#: tree.cc:13800
+#: tree.cc:13943
 #, gcc-internal-format
 msgid "type%'s %<TYPE_BINFO%>"
 msgstr ""
 
-#: tree.cc:13839
+#: tree.cc:13982
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_FIELDS%>"
 msgstr ""
 
-#: tree.cc:13841
+#: tree.cc:13984
 #, gcc-internal-format
 msgid "first mismatch is field"
 msgstr ""
 
-#: tree.cc:13843
+#: tree.cc:13986
 #, gcc-internal-format
 msgid "and field"
 msgstr ""
 
-#: tree.cc:13860
+#: tree.cc:14003
 #, gcc-internal-format
 msgid "type variant has different %<TREE_TYPE%>"
 msgstr ""
 
-#: tree.cc:13862 tree.cc:13873
+#: tree.cc:14005 tree.cc:14016
 #, gcc-internal-format
 msgid "type variant%'s %<TREE_TYPE%>"
 msgstr ""
 
-#: tree.cc:13864 tree.cc:13875
+#: tree.cc:14007 tree.cc:14018
 #, gcc-internal-format
 msgid "type%'s %<TREE_TYPE%>"
 msgstr ""
 
-#: tree.cc:13871
+#: tree.cc:14014
 #, gcc-internal-format
 msgid "type is not compatible with its variant"
 msgstr ""
 
-#: tree.cc:14223
+#: tree.cc:14366
 #, gcc-internal-format, gfc-internal-format
 msgid "type %s is not an opaque type"
 msgstr ""
 
-#: tree.cc:14229
+#: tree.cc:14372
 #, gcc-internal-format, gfc-internal-format
 msgid "type %s is not with opaque mode"
 msgstr ""
 
-#: tree.cc:14235
+#: tree.cc:14378
 #, gcc-internal-format
 msgid "type %s differs by %<TYPE_MODE%>"
 msgstr ""
 
-#: tree.cc:14243
+#: tree.cc:14386
 #, gcc-internal-format
 msgid "type %s differs by %<TYPE_SIZE%>"
 msgstr ""
 
-#: tree.cc:14249
+#: tree.cc:14392
 #, gcc-internal-format
 msgid "type %s differs by %<TYPE_ALIGN%>"
 msgstr ""
 
-#: tree.cc:14255
+#: tree.cc:14398
 #, gcc-internal-format
 msgid "type %s differs by %<TYPE_USER_ALIGN%>"
 msgstr ""
 
-#: tree.cc:14285
+#: tree.cc:14428
 #, gcc-internal-format
 msgid "main variant is not defined"
 msgstr ""
 
-#: tree.cc:14290
+#: tree.cc:14433
 #, gcc-internal-format
 msgid "%<TYPE_MAIN_VARIANT%> has different %<TYPE_MAIN_VARIANT%>"
 msgstr ""
 
-#: tree.cc:14301
+#: tree.cc:14444
 #, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> has different %<TYPE_CANONICAL%>"
 msgstr ""
 
-#: tree.cc:14320
+#: tree.cc:14463
 #, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> is not compatible"
 msgstr ""
 
-#: tree.cc:14332
+#: tree.cc:14475
 #, gcc-internal-format
 msgid "%<TYPE_MODE%> of %<TYPE_CANONICAL%> is not compatible"
 msgstr ""
 
-#: tree.cc:14338
+#: tree.cc:14494
 #, gcc-internal-format
-msgid "%<TYPE_CANONICAL%> of main variant is not main variant"
+msgid ""
+"main variant of %<TYPE_CANONICAL%> of main variant is not its own "
+"%<TYPE_CANONICAL%>"
 msgstr ""
 
-#: tree.cc:14354
+#: tree.cc:14512
 #, gcc-internal-format
 msgid "%<TYPE_VFIELD%> is not %<FIELD_DECL%> nor %<TREE_LIST%>"
 msgstr ""
 
-#: tree.cc:14364
+#: tree.cc:14522
 #, gcc-internal-format
 msgid "%<TYPE_NEXT_PTR_TO%> is not %<POINTER_TYPE%>"
 msgstr ""
 
-#: tree.cc:14374
+#: tree.cc:14532
 #, gcc-internal-format
 msgid "%<TYPE_NEXT_REF_TO%> is not %<REFERENCE_TYPE%>"
 msgstr ""
 
-#: tree.cc:14395
+#: tree.cc:14553
 #, gcc-internal-format
 msgid "%<TYPE_BINFO%> is not %<TREE_BINFO%>"
 msgstr ""
 
-#: tree.cc:14401
+#: tree.cc:14559
 #, gcc-internal-format
 msgid "%<TYPE_BINFO%> type is not %<TYPE_MAIN_VARIANT%>"
 msgstr ""
 
-#: tree.cc:14412
+#: tree.cc:14570
 #, gcc-internal-format
 msgid "%<TYPE_METHOD_BASETYPE%> is not record nor union"
 msgstr ""
 
-#: tree.cc:14423
+#: tree.cc:14581
 #, gcc-internal-format
 msgid "%<TYPE_OFFSET_BASETYPE%> is not record nor union"
 msgstr ""
 
-#: tree.cc:14441
+#: tree.cc:14599
 #, gcc-internal-format
 msgid "%<TYPE_ARRAY_MAX_SIZE%> not %<INTEGER_CST%>"
 msgstr ""
 
-#: tree.cc:14448
+#: tree.cc:14606
 #, gcc-internal-format
 msgid "%<TYPE_MAX_VALUE_RAW%> non-NULL"
 msgstr ""
 
-#: tree.cc:14455
+#: tree.cc:14613
 #, gcc-internal-format
 msgid "%<TYPE_LANG_SLOT_1 (binfo)%> field is non-NULL"
 msgstr ""
 
-#: tree.cc:14471
+#: tree.cc:14629
 #, gcc-internal-format
 msgid "enum value is not %<CONST_DECL%> or %<INTEGER_CST%>"
 msgstr ""
 
-#: tree.cc:14480
+#: tree.cc:14638
 #, gcc-internal-format
 msgid "enum value type is not %<INTEGER_TYPE%> nor convertible to the enum"
 msgstr ""
 
-#: tree.cc:14488
+#: tree.cc:14646
 #, gcc-internal-format
 msgid "enum value name is not %<IDENTIFIER_NODE%>"
 msgstr ""
 
-#: tree.cc:14498
+#: tree.cc:14656
 #, gcc-internal-format
 msgid "array %<TYPE_DOMAIN%> is not integer type"
 msgstr ""
 
-#: tree.cc:14507
+#: tree.cc:14665
 #, gcc-internal-format
 msgid "%<TYPE_FIELDS%> defined in incomplete type"
 msgstr ""
 
-#: tree.cc:14529
+#: tree.cc:14687
 #, gcc-internal-format
 msgid "wrong tree in %<TYPE_FIELDS%> list"
 msgstr ""
 
-#: tree.cc:14545
+#: tree.cc:14703
 #, gcc-internal-format
 msgid "%<TYPE_CACHED_VALUES_P%> is %i while %<TYPE_CACHED_VALUES%> is %p"
 msgstr ""
 
-#: tree.cc:14552
+#: tree.cc:14710
 #, gcc-internal-format
 msgid "%<TYPE_CACHED_VALUES%> is not %<TREE_VEC%>"
 msgstr ""
 
-#: tree.cc:14565
+#: tree.cc:14723
 #, gcc-internal-format
 msgid "wrong %<TYPE_CACHED_VALUES%> entry"
 msgstr ""
 
-#: tree.cc:14578
+#: tree.cc:14736
 #, gcc-internal-format
 msgid "%<TREE_PURPOSE%> is non-NULL in %<TYPE_ARG_TYPES%> list"
 msgstr ""
 
-#: tree.cc:14584
+#: tree.cc:14742
 #, gcc-internal-format
 msgid "wrong entry in %<TYPE_ARG_TYPES%> list"
 msgstr ""
 
-#: tree.cc:14591
+#: tree.cc:14749
 #, gcc-internal-format
 msgid "%<TYPE_VALUES_RAW%> field is non-NULL"
 msgstr ""
 
-#: tree.cc:14604
+#: tree.cc:14762
 #, gcc-internal-format
 msgid "%<TYPE_CACHED_VALUES_P%> is set while it should not be"
 msgstr ""
 
-#: tree.cc:14614
+#: tree.cc:14772
 #, gcc-internal-format
 msgid "%<TYPE_METHOD_BASETYPE%> is not main variant"
 msgstr ""
 
+#: tree.cc:15619
+#, gcc-internal-format
+msgid "missing %<target%> attribute for multi-versioned %qD"
+msgstr ""
+
+#: tree.cc:15622 tree.cc:15788 tree.cc:15806 tree.cc:15819 cp/decl.cc:1487
+#: cp/decl.cc:2620 cp/decl.cc:2668 cp/decl.cc:2684 cp/decl.cc:3331
+#: cp/decl.cc:3787
+#, gcc-internal-format
+msgid "previous declaration of %qD"
+msgstr ""
+
+#: tree.cc:15784
+#, gcc-internal-format
+msgid "%qD conflicts with overlapping %<target_clone%> declaration"
+msgstr ""
+
+#: tree.cc:15803
+msgid "%qD conflicts for version %qB"
+msgstr ""
+
+#: tree.cc:15816
+msgid "%qD conflicts with a previous declaration for version %qB"
+msgstr ""
+
 #: tsan.cc:509
 #, gcc-internal-format
 msgid "%qs is not supported with %qs"
@@ -35804,14 +37218,14 @@ msgid ""
 "basic-block count (%d)"
 msgstr ""
 
-#: var-tracking.cc:7202
+#: var-tracking.cc:7203
 #, gcc-internal-format
 msgid ""
 "variable tracking size limit exceeded with %<-fvar-tracking-assignments%>, "
 "retrying without"
 msgstr ""
 
-#: var-tracking.cc:7206
+#: var-tracking.cc:7207
 #, gcc-internal-format
 msgid "variable tracking size limit exceeded"
 msgstr ""
@@ -35841,703 +37255,715 @@ msgstr ""
 msgid "section type conflict for section %qs"
 msgstr ""
 
-#: varasm.cc:1112
+#: varasm.cc:1144
 #, gcc-internal-format
 msgid "alignment of %q+D is greater than maximum object file alignment %d"
 msgstr ""
 
-#: varasm.cc:1281
+#: varasm.cc:1313
 #, gcc-internal-format
 msgid "only zero initializers are allowed in section %qs"
 msgstr ""
 
-#: varasm.cc:1285
+#: varasm.cc:1317
 #, gcc-internal-format
 msgid "no initializers are allowed in section %qs"
 msgstr ""
 
-#: varasm.cc:1515 varasm.cc:1524 d/d-attribs.cc:1463
+#: varasm.cc:1547 varasm.cc:1556 d/d-attribs.cc:1464
 #, gcc-internal-format
 msgid "register name not specified for %q+D"
 msgstr ""
 
-#: varasm.cc:1526
-#, gcc-internal-format
-msgid "invalid register name for %q+D"
-msgstr ""
-
-#: varasm.cc:1528
+#: varasm.cc:1560
 #, gcc-internal-format
 msgid "data type of %q+D isn%'t suitable for a register"
 msgstr ""
 
-#: varasm.cc:1531
+#: varasm.cc:1563
 #, gcc-internal-format
 msgid ""
 "the register specified for %q+D cannot be accessed by the current target"
 msgstr ""
 
-#: varasm.cc:1534
+#: varasm.cc:1566
 #, gcc-internal-format
 msgid ""
 "the register specified for %q+D is not general enough to be used as a "
 "register variable"
 msgstr ""
 
-#: varasm.cc:1537
+#: varasm.cc:1569
 #, gcc-internal-format
 msgid "register specified for %q+D isn%'t suitable for data type"
 msgstr ""
 
-#: varasm.cc:1546
+#: varasm.cc:1578
 #, gcc-internal-format
 msgid "register specified for %q+D is an internal GCC implementation detail"
 msgstr ""
 
-#: varasm.cc:1556
+#: varasm.cc:1588
 #, gcc-internal-format
 msgid "global register variable has initial value"
 msgstr ""
 
-#: varasm.cc:1560
+#: varasm.cc:1592
 #, gcc-internal-format
 msgid "optimization may eliminate reads and/or writes to register variables"
 msgstr ""
 
-#: varasm.cc:1606
+#: varasm.cc:1638
 #, gcc-internal-format
 msgid "register name given for non-register variable %q+D"
 msgstr ""
 
-#: varasm.cc:1741 varasm.cc:1746 varasm.cc:1751
+#: varasm.cc:1774 varasm.cc:1779 varasm.cc:1784
 #, gcc-internal-format
 msgid "%qc in output operand outside of a function"
 msgstr ""
 
-#: varasm.cc:1783
+#: varasm.cc:1816
 #, gcc-internal-format
 msgid "%qc in input operand outside of a function"
 msgstr ""
 
-#: varasm.cc:1792
+#: varasm.cc:1825
 #, gcc-internal-format
 msgid "matching constraint outside of a function"
 msgstr ""
 
-#: varasm.cc:2377
+#: varasm.cc:2410
 #, gcc-internal-format
 msgid "thread-local COMMON data not implemented"
 msgstr ""
 
-#: varasm.cc:2410
+#: varasm.cc:2443
 #, gcc-internal-format
 msgid ""
 "requested alignment for %q+D is greater than implemented alignment of %wu"
 msgstr ""
 
-#: varasm.cc:2513 c/c-decl.cc:5971 c/c-parser.cc:1969 m2/gm2-gcc/m2type.cc:1248
+#: varasm.cc:2559 c/c-decl.cc:6149 c/c-parser.cc:2099 m2/gm2-gcc/m2type.cc:1260
 #, gcc-internal-format
 msgid "storage size of %q+D isn%'t known"
 msgstr ""
 
-#: varasm.cc:5493 varasm.cc:5532
+#: varasm.cc:5545 varasm.cc:5584
 #, gcc-internal-format
 msgid "initializer for integer/fixed-point value is too complicated"
 msgstr ""
 
-#: varasm.cc:5499
+#: varasm.cc:5551
 #, gcc-internal-format
 msgid "initializer for floating value is not a floating constant"
 msgstr ""
 
-#: varasm.cc:5516
+#: varasm.cc:5568
 #, gcc-internal-format
 msgid "initializer for %<_BitInt(%d)%> value is not an integer constant"
 msgstr ""
 
-#: varasm.cc:5912
+#: varasm.cc:5964
 #, gcc-internal-format
 msgid "invalid initial value for member %qE"
 msgstr ""
 
-#: varasm.cc:6168
+#: varasm.cc:6220
 #, gcc-internal-format
 msgid "%qD declared weak after being used"
 msgstr ""
 
-#: varasm.cc:6220
+#: varasm.cc:6272
 #, gcc-internal-format
 msgid ""
 "weak declaration of %q+D being applied to a already existing, static "
 "definition"
 msgstr ""
 
-#: varasm.cc:6261
+#: varasm.cc:6313
 #, gcc-internal-format
 msgid "weak declaration of %q+D must be public"
 msgstr ""
 
-#: varasm.cc:6265
+#: varasm.cc:6317
 #, gcc-internal-format
 msgid "weak declaration of %q+D not supported"
 msgstr ""
 
-#: varasm.cc:6294 varasm.cc:6622
+#: varasm.cc:6346 varasm.cc:6674
 #, gcc-internal-format
 msgid "only weak aliases are supported in this configuration"
 msgstr ""
 
-#: varasm.cc:6489 varasm.cc:6619
+#: varasm.cc:6541 varasm.cc:6671
 #, gcc-internal-format
 msgid "%qs is not supported in this configuration"
 msgstr ""
 
-#: varasm.cc:6517
+#: varasm.cc:6569
 #, gcc-internal-format
 msgid "%qs is not supported on this target"
 msgstr ""
 
-#: varasm.cc:6582
+#: varasm.cc:6634
 #, gcc-internal-format
 msgid "symver is only supported on ELF platforms"
 msgstr ""
 
-#: varasm.cc:6601
+#: varasm.cc:6653
 #, gcc-internal-format
 msgid "%qs symbol %q+D ultimately targets itself"
 msgstr ""
 
-#: varasm.cc:6603
+#: varasm.cc:6655
 #, gcc-internal-format
 msgid "%qs symbol %q+D must have static linkage"
 msgstr ""
 
-#: varasm.cc:6609 config/nvptx/nvptx.cc:7758
+#: varasm.cc:6661 config/nvptx/nvptx.cc:7751
 #, gcc-internal-format
 msgid "alias definitions not supported in this configuration"
 msgstr ""
 
-#: varasm.cc:6837 config/sol2.cc:160 config/mingw/winnt.cc:269
+#: varasm.cc:6889 config/sol2.cc:160 config/mingw/winnt.cc:269
 #, gcc-internal-format
 msgid "visibility attribute not supported in this configuration; ignored"
 msgstr ""
 
-#: varasm.cc:8207
+#: varasm.cc:8259
 #, gcc-internal-format
 msgid ""
 "%+qD without %<retain%> attribute and %qD with %<retain%> attribute are "
 "placed in a section with the same name"
 msgstr ""
 
-#: vec.cc:190
+#: vec.cc:258
 #, gcc-internal-format, gfc-internal-format
 msgid "qsort comparator not anti-symmetric: %d, %d"
 msgstr ""
 
-#: vec.cc:195
+#: vec.cc:263
 #, gcc-internal-format, gfc-internal-format
 msgid "qsort comparator non-negative on sorted output: %d"
 msgstr ""
 
-#: vec.cc:202
+#: vec.cc:270
 #, gcc-internal-format, gfc-internal-format
 msgid "qsort comparator not transitive: %d, %d, %d"
 msgstr ""
 
-#: vec.cc:204
+#: vec.cc:272
 #, gcc-internal-format
 msgid "qsort checking failed"
 msgstr ""
 
-#: c-family/c-ada-spec.cc:3010
+#: c-family/c-ada-spec.cc:3030
 #, gcc-internal-format
 msgid "packed layout"
 msgstr ""
 
-#: c-family/c-attribs.cc:716 c-family/c-attribs.cc:721
+#: c-family/c-attribs.cc:749 c-family/c-attribs.cc:754
 #, gcc-internal-format
 msgid "cannot tail-call: return value must be a call"
 msgstr ""
 
-#: c-family/c-attribs.cc:754 d/d-attribs.cc:1195
+#: c-family/c-attribs.cc:787 d/d-attribs.cc:1195
 #, gcc-internal-format
 msgid "%qE attribute argument is invalid"
 msgstr ""
 
-#: c-family/c-attribs.cc:757 d/d-attribs.cc:1198
+#: c-family/c-attribs.cc:790 d/d-attribs.cc:1198
 #, gcc-internal-format
 msgid "%qE attribute argument %i is invalid"
 msgstr ""
 
-#: c-family/c-attribs.cc:769 d/d-attribs.cc:1210
+#: c-family/c-attribs.cc:802 d/d-attribs.cc:1210
 #, gcc-internal-format
 msgid "%qE attribute argument has type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:773 d/d-attribs.cc:1214
+#: c-family/c-attribs.cc:806 d/d-attribs.cc:1214
 #, gcc-internal-format
 msgid "%qE attribute argument %i has type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:784 c-family/c-attribs.cc:4834
-#: c-family/c-attribs.cc:4838 d/d-attribs.cc:1225
+#: c-family/c-attribs.cc:817 c-family/c-attribs.cc:4914
+#: c-family/c-attribs.cc:4918 d/d-attribs.cc:1225
 #, gcc-internal-format
 msgid "%qE attribute argument value %qE is not an integer constant"
 msgstr ""
 
-#: c-family/c-attribs.cc:789 d/d-attribs.cc:1230
+#: c-family/c-attribs.cc:822 d/d-attribs.cc:1230
 #, gcc-internal-format
 msgid "%qE attribute argument %i value %qE is not an integer constant"
 msgstr ""
 
-#: c-family/c-attribs.cc:805 d/d-attribs.cc:1244
+#: c-family/c-attribs.cc:838 d/d-attribs.cc:1244
 #, gcc-internal-format
 msgid "%qE attribute argument value %qE does not refer to a function parameter"
 msgstr ""
 
-#: c-family/c-attribs.cc:810 d/d-attribs.cc:1249
+#: c-family/c-attribs.cc:843 d/d-attribs.cc:1249
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument %i value %qE does not refer to a function parameter"
 msgstr ""
 
-#: c-family/c-attribs.cc:838 d/d-attribs.cc:1272
+#: c-family/c-attribs.cc:871 d/d-attribs.cc:1272
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument value %qE exceeds the number of function parameters %u"
 msgstr ""
 
-#: c-family/c-attribs.cc:843 d/d-attribs.cc:1277
+#: c-family/c-attribs.cc:876 d/d-attribs.cc:1277
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument %i value %qE exceeds the number of function "
 "parameters %u"
 msgstr ""
 
-#: c-family/c-attribs.cc:865
+#: c-family/c-attribs.cc:898
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument value %qE does not refer to a variable argument list"
 msgstr ""
 
-#: c-family/c-attribs.cc:869
+#: c-family/c-attribs.cc:902
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument %i value %qE does not refer to a variable argument "
 "list"
 msgstr ""
 
-#: c-family/c-attribs.cc:896 c-family/c-attribs.cc:909 d/d-attribs.cc:1298
+#: c-family/c-attribs.cc:929 c-family/c-attribs.cc:942 d/d-attribs.cc:1298
 #, gcc-internal-format
 msgid "%qE attribute argument value %qE refers to parameter type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:900 c-family/c-attribs.cc:914 d/d-attribs.cc:1303
+#: c-family/c-attribs.cc:933 c-family/c-attribs.cc:947 d/d-attribs.cc:1303
 #, gcc-internal-format
 msgid "%qE attribute argument %i value %qE refers to parameter type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:924
+#: c-family/c-attribs.cc:957
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument value %qE refers to a variadic function parameter of "
 "unknown type"
 msgstr ""
 
-#: c-family/c-attribs.cc:929
+#: c-family/c-attribs.cc:962
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument %i value %qE refers to a variadic function parameter "
 "of unknown type"
 msgstr ""
 
-#: c-family/c-attribs.cc:1049
+#: c-family/c-attribs.cc:1082
 #, gcc-internal-format
 msgid "ignoring attribute %qs because it conflicts with previous %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:1087
+#: c-family/c-attribs.cc:1120
 #, gcc-internal-format
 msgid "%qE attribute only supported on boolean types"
 msgstr ""
 
-#: c-family/c-attribs.cc:1097
+#: c-family/c-attribs.cc:1130
 #, gcc-internal-format
 msgid "%qE attribute with unsupported boolean precision"
 msgstr ""
 
-#: c-family/c-attribs.cc:1117
+#: c-family/c-attribs.cc:1150
 #, gcc-internal-format
 msgid "%qE attribute only supported in C"
 msgstr ""
 
-#: c-family/c-attribs.cc:1124
+#: c-family/c-attribs.cc:1157
 #, gcc-internal-format
 msgid "%qE attribute only supported on integral types"
 msgstr ""
 
-#: c-family/c-attribs.cc:1146 c-family/c-attribs.cc:1162
+#: c-family/c-attribs.cc:1184 c-family/c-attribs.cc:1200
 #, gcc-internal-format
 msgid "overflows in conversion from %qT to %qT changes value from %qE to %qE"
 msgstr ""
 
-#: c-family/c-attribs.cc:1171
+#: c-family/c-attribs.cc:1209
 #, gcc-internal-format
 msgid ""
 "%qE attribute requires different values for %<false%> and %<true%> for type "
 "%qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:1211
+#: c-family/c-attribs.cc:1255
 #, gcc-internal-format
 msgid "%qE attribute ignored for type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:1223
+#: c-family/c-attribs.cc:1267
 #, gcc-internal-format
 msgid "%qE attribute ignored for field of type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:1452 c-family/c-attribs.cc:3650
-#: c-family/c-attribs.cc:6271 ada/gcc-interface/utils.cc:7461
+#: c-family/c-attribs.cc:1497 c-family/c-attribs.cc:3729
+#: c-family/c-attribs.cc:6572 ada/gcc-interface/utils.cc:7714
 #, gcc-internal-format
 msgid "%qE argument not a string"
 msgstr ""
 
-#: c-family/c-attribs.cc:1627 ada/gcc-interface/utils.cc:6947
+#: c-family/c-attribs.cc:1672 ada/gcc-interface/utils.cc:7200
 #, gcc-internal-format
 msgid "%qE attribute ignored because of argument %qE"
 msgstr ""
 
-#: c-family/c-attribs.cc:1648 ada/gcc-interface/utils.cc:6968
+#: c-family/c-attribs.cc:1693 ada/gcc-interface/utils.cc:7221
 #, gcc-internal-format
 msgid "ignoring attribute %qE because of excess arguments starting at %qE"
 msgstr ""
 
-#: c-family/c-attribs.cc:1662 ada/gcc-interface/utils.cc:6982
+#: c-family/c-attribs.cc:1707 ada/gcc-interface/utils.cc:7235
 #, gcc-internal-format
 msgid "attribute %qE does not apply to elements of non-scalar type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:1667 ada/gcc-interface/utils.cc:6987
+#: c-family/c-attribs.cc:1712 ada/gcc-interface/utils.cc:7240
 #, gcc-internal-format
 msgid "attribute %qE does not apply to fields of aggregate type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:1733
+#: c-family/c-attribs.cc:1778
 #, gcc-internal-format
 msgid "%qE attribute ignored. Use %<-fcf-protection%> option to enable it"
 msgstr ""
 
-#: c-family/c-attribs.cc:1823 jit/dummy-frontend.cc:290 lto/lto-lang.cc:311
+#: c-family/c-attribs.cc:1868 jit/dummy-frontend.cc:289 lto/lto-lang.cc:311
 #, gcc-internal-format
 msgid "%qE attribute has no effect on unit local functions"
 msgstr ""
 
-#: c-family/c-attribs.cc:1993 c-family/c-attribs.cc:3633
-#: ada/gcc-interface/utils.cc:7217
+#: c-family/c-attribs.cc:2038 c-family/c-attribs.cc:3712
+#: ada/gcc-interface/utils.cc:7470
 #, gcc-internal-format
 msgid "%qE attribute ignored because %qD is not a variable"
 msgstr ""
 
-#: c-family/c-attribs.cc:1999 ada/gcc-interface/utils.cc:7223
+#: c-family/c-attribs.cc:2044 ada/gcc-interface/utils.cc:7476
 #, gcc-internal-format
 msgid "%qE attribute ignored because %qD is not a local variable"
 msgstr ""
 
-#: c-family/c-attribs.cc:2024 config/i386/i386-options.cc:4188
+#: c-family/c-attribs.cc:2069 config/i386/i386-options.cc:4108
 #, gcc-internal-format
 msgid "%qE attribute have effect only on public objects"
 msgstr ""
 
-#: c-family/c-attribs.cc:2053
+#: c-family/c-attribs.cc:2098
 #, gcc-internal-format
 msgid "%qE attribute only affects top level objects"
 msgstr ""
 
-#: c-family/c-attribs.cc:2092 c-family/c-attribs.cc:4307
+#: c-family/c-attribs.cc:2137 c-family/c-attribs.cc:4387
 #, gcc-internal-format
 msgid "%qE attribute on function returning %<void%>"
 msgstr ""
 
-#: c-family/c-attribs.cc:2115
+#: c-family/c-attribs.cc:2160
 #, gcc-internal-format
 msgid "%qE attribute is not supported because endianness is not uniform"
 msgstr ""
 
-#: c-family/c-attribs.cc:2132
+#: c-family/c-attribs.cc:2177
 #, gcc-internal-format
 msgid "attribute %qE argument must be one of %qs or %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:2228
+#: c-family/c-attribs.cc:2273
 #, gcc-internal-format
 msgid "destructor priorities are not supported"
 msgstr ""
 
-#: c-family/c-attribs.cc:2230
+#: c-family/c-attribs.cc:2275
 #, gcc-internal-format
 msgid "constructor priorities are not supported"
 msgstr ""
 
-#: c-family/c-attribs.cc:2252
+#: c-family/c-attribs.cc:2297
 #, gcc-internal-format, gfc-internal-format
 msgid "destructor priorities from 0 to %d are reserved for the implementation"
 msgstr ""
 
-#: c-family/c-attribs.cc:2257
+#: c-family/c-attribs.cc:2302
 #, gcc-internal-format, gfc-internal-format
 msgid "constructor priorities from 0 to %d are reserved for the implementation"
 msgstr ""
 
-#: c-family/c-attribs.cc:2265
+#: c-family/c-attribs.cc:2310
 #, gcc-internal-format, gfc-internal-format
 msgid "destructor priorities must be integers from 0 to %d inclusive"
 msgstr ""
 
-#: c-family/c-attribs.cc:2268
+#: c-family/c-attribs.cc:2313
 #, gcc-internal-format, gfc-internal-format
 msgid "constructor priorities must be integers from 0 to %d inclusive"
 msgstr ""
 
-#: c-family/c-attribs.cc:2421
+#: c-family/c-attribs.cc:2466
 #, gcc-internal-format
 msgid "unknown machine mode %qE"
 msgstr ""
 
-#: c-family/c-attribs.cc:2455
+#: c-family/c-attribs.cc:2500
 #, gcc-internal-format
 msgid "specifying vector types with %<__attribute__ ((mode))%> is deprecated"
 msgstr ""
 
-#: c-family/c-attribs.cc:2458
+#: c-family/c-attribs.cc:2503
 #, gcc-internal-format
 msgid "use %<__attribute__ ((vector_size))%> instead"
 msgstr ""
 
-#: c-family/c-attribs.cc:2467
+#: c-family/c-attribs.cc:2512
 #, gcc-internal-format
 msgid "unable to emulate %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:2480
+#: c-family/c-attribs.cc:2525
 #, gcc-internal-format
 msgid "invalid pointer mode %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:2497
+#: c-family/c-attribs.cc:2542
 #, gcc-internal-format
 msgid "signedness of type and machine mode %qs don%'t match"
 msgstr ""
 
-#: c-family/c-attribs.cc:2508
+#: c-family/c-attribs.cc:2553
 #, gcc-internal-format
 msgid "no data type for mode %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:2518
+#: c-family/c-attribs.cc:2563
 #, gcc-internal-format
 msgid "cannot use mode %qs for enumerated types"
 msgstr ""
 
-#: c-family/c-attribs.cc:2546
+#: c-family/c-attribs.cc:2591
 #, gcc-internal-format
 msgid "mode %qs applied to inappropriate type"
 msgstr ""
 
-#: c-family/c-attribs.cc:2575 c-family/c-attribs.cc:3001 d/d-attribs.cc:1024
+#: c-family/c-attribs.cc:2620 c-family/c-attribs.cc:3080 d/d-attribs.cc:1024
 #, gcc-internal-format
 msgid "section attributes are not supported for this target"
 msgstr ""
 
-#: c-family/c-attribs.cc:2581 d/d-attribs.cc:1031
+#: c-family/c-attribs.cc:2626 d/d-attribs.cc:1031
 #, gcc-internal-format
 msgid "section attribute not allowed for %q+D"
 msgstr ""
 
-#: c-family/c-attribs.cc:2587
+#: c-family/c-attribs.cc:2632
 #, gcc-internal-format
 msgid "section attribute argument not a string constant"
 msgstr ""
 
-#: c-family/c-attribs.cc:2596 d/d-attribs.cc:1047
+#: c-family/c-attribs.cc:2641 d/d-attribs.cc:1047
 #, gcc-internal-format
 msgid "section attribute cannot be specified for local variables"
 msgstr ""
 
-#: c-family/c-attribs.cc:2607 config/bfin/bfin.cc:4797 config/bfin/bfin.cc:4848
-#: config/bfin/bfin.cc:4874 config/bfin/bfin.cc:4887 d/d-attribs.cc:1058
+#: c-family/c-attribs.cc:2652 config/bfin/bfin.cc:4796 config/bfin/bfin.cc:4847
+#: config/bfin/bfin.cc:4873 config/bfin/bfin.cc:4886 d/d-attribs.cc:1058
 #, gcc-internal-format
 msgid "section of %q+D conflicts with previous declaration"
 msgstr ""
 
-#: c-family/c-attribs.cc:2616 c-family/c-attribs.cc:3027 d/d-attribs.cc:1067
+#: c-family/c-attribs.cc:2661 c-family/c-attribs.cc:3106 d/d-attribs.cc:1067
 #, gcc-internal-format
 msgid "section of %q+D cannot be overridden"
 msgstr ""
 
-#: c-family/c-attribs.cc:2732
+#: c-family/c-attribs.cc:2777
 #, gcc-internal-format
 msgid "alignment may not be specified for %q+D"
 msgstr ""
 
-#: c-family/c-attribs.cc:2757
+#: c-family/c-attribs.cc:2802
 #, gcc-internal-format
 msgid ""
-"ignoring attribute %<%E (%u)%> because it conflicts with attribute %<%E "
-"(%u)%>"
+"ignoring attribute %<%E (%u)%> because it conflicts with attribute %<%E (%u)"
+"%>"
 msgstr ""
 
-#: c-family/c-attribs.cc:2802
+#: c-family/c-attribs.cc:2847
 #, gcc-internal-format
 msgid "%<warn_if_not_aligned%> may not be specified for %q+D"
 msgstr ""
 
-#: c-family/c-attribs.cc:2853
+#: c-family/c-attribs.cc:2898
 #, gcc-internal-format
 msgid "%qE attribute may not be specified for %q+D"
 msgstr ""
 
-#: c-family/c-attribs.cc:2860
+#: c-family/c-attribs.cc:2905
 #, gcc-internal-format
 msgid "%qE attribute may not be specified for a non-array field"
 msgstr ""
 
-#: c-family/c-attribs.cc:2867
+#: c-family/c-attribs.cc:2912
 #, gcc-internal-format
 msgid "%qE attribute argument not an integer"
 msgstr ""
 
-#: c-family/c-attribs.cc:2873 c-family/c-attribs.cc:6467
+#: c-family/c-attribs.cc:2918 c-family/c-attribs.cc:6768
 #, gcc-internal-format
 msgid "%qE attribute argument %qE is not an integer constant between 0 and 3"
 msgstr ""
 
-#: c-family/c-attribs.cc:2897
+#: c-family/c-attribs.cc:2942
 #, gcc-internal-format
 msgid "%qE attribute is not supported for C++ for now, ignored"
 msgstr ""
 
-#: c-family/c-attribs.cc:2905
+#: c-family/c-attribs.cc:2950
 #, gcc-internal-format
 msgid "%qE attribute is not allowed for a non-field declaration %q+D"
 msgstr ""
 
-#: c-family/c-attribs.cc:2913
+#: c-family/c-attribs.cc:2959
 #, gcc-internal-format
-msgid "%qE attribute is not allowed for a non-array field"
+msgid "%qE attribute is not allowed for a non-array or non-pointer field"
 msgstr ""
 
-#: c-family/c-attribs.cc:2921
+#: c-family/c-attribs.cc:2968
 #, gcc-internal-format
 msgid "%qE attribute is not allowed for a non-flexible array member field"
 msgstr ""
 
-#: c-family/c-attribs.cc:2929
+#: c-family/c-attribs.cc:2980
+#, gcc-internal-format
+msgid "%qE attribute is used for a pointer to void"
+msgstr ""
+
+#: c-family/c-attribs.cc:2988
+#, gcc-internal-format
+msgid "%qE attribute is not allowed for a pointer to function"
+msgstr ""
+
+#: c-family/c-attribs.cc:2999
+#, gcc-internal-format
+msgid ""
+"%qE attribute is not allowed for a pointer to structure or union with "
+"flexible array member"
+msgstr ""
+
+#: c-family/c-attribs.cc:3007
 #, gcc-internal-format
 msgid "%<counted_by%> argument is not an identifier"
 msgstr ""
 
-#: c-family/c-attribs.cc:2941
+#: c-family/c-attribs.cc:3020
 #, gcc-internal-format
 msgid "%<counted_by%> argument %qE conflicts with previous declaration %qE"
 msgstr ""
 
-#: c-family/c-attribs.cc:2962 d/d-attribs.cc:1146 jit/dummy-frontend.cc:758
+#: c-family/c-attribs.cc:3041 d/d-attribs.cc:1146 jit/dummy-frontend.cc:757
 #, gcc-internal-format
 msgid "inline function %q+D declared weak"
 msgstr ""
 
-#: c-family/c-attribs.cc:2967 jit/dummy-frontend.cc:763
+#: c-family/c-attribs.cc:3046 jit/dummy-frontend.cc:762
 #, gcc-internal-format
 msgid "indirect function %q+D cannot be declared weak"
 msgstr ""
 
-#: c-family/c-attribs.cc:3008
+#: c-family/c-attribs.cc:3087
 #, gcc-internal-format
 msgid "ignoring %qE attribute not set on a variable"
 msgstr ""
 
-#: c-family/c-attribs.cc:3018 config/bfin/bfin.cc:4825
-#: config/loongarch/loongarch.cc:8154
+#: c-family/c-attribs.cc:3097 config/bfin/bfin.cc:4824
+#: config/loongarch/loongarch.cc:8628
 #, gcc-internal-format
 msgid "%qE attribute cannot be specified for local variables"
 msgstr ""
 
-#: c-family/c-attribs.cc:3033
+#: c-family/c-attribs.cc:3112
 #, gcc-internal-format
 msgid "%qE attribute is specific to ELF targets"
 msgstr ""
 
-#: c-family/c-attribs.cc:3040
+#: c-family/c-attribs.cc:3119
 #, gcc-internal-format
 msgid "ignoring %qE attribute set on const variable"
 msgstr ""
 
-#: c-family/c-attribs.cc:3051
+#: c-family/c-attribs.cc:3130
 #, gcc-internal-format
 msgid "ignoring %qE attribute set on initialized variable"
 msgstr ""
 
-#: c-family/c-attribs.cc:3064
+#: c-family/c-attribs.cc:3143
 #, gcc-internal-format
 msgid "ignoring %qE attribute set on uninitialized variable"
 msgstr ""
 
-#: c-family/c-attribs.cc:3097
+#: c-family/c-attribs.cc:3176
 #, gcc-internal-format
 msgid "%qE attribute is only applicable on functions"
 msgstr ""
 
-#: c-family/c-attribs.cc:3116 d/d-attribs.cc:1094
+#: c-family/c-attribs.cc:3195 d/d-attribs.cc:1094
 #, gcc-internal-format
 msgid "%<symver%> attribute only applies to functions and variables"
 msgstr ""
 
-#: c-family/c-attribs.cc:3124 d/d-attribs.cc:1102
+#: c-family/c-attribs.cc:3203 d/d-attribs.cc:1102
 #, gcc-internal-format
 msgid "%<symver%> attribute is only applicable to symbols"
 msgstr ""
 
-#: c-family/c-attribs.cc:3134
+#: c-family/c-attribs.cc:3213
 #, gcc-internal-format
 msgid "%<symver%> attribute argument not a string constant"
 msgstr ""
 
-#: c-family/c-attribs.cc:3148 d/d-attribs.cc:1126
+#: c-family/c-attribs.cc:3227 d/d-attribs.cc:1126
 #, gcc-internal-format
 msgid "symver attribute argument must have format %<name@nodename%>"
 msgstr ""
 
-#: c-family/c-attribs.cc:3149 d/d-attribs.cc:1127
+#: c-family/c-attribs.cc:3228 d/d-attribs.cc:1127
 #, gcc-internal-format
 msgid "%<symver%> attribute argument %qs must contain one or two %<@%>"
 msgstr ""
 
-#: c-family/c-attribs.cc:3184 jit/dummy-frontend.cc:858
+#: c-family/c-attribs.cc:3263 jit/dummy-frontend.cc:857
 #, gcc-internal-format
 msgid "%q+D defined both normally and as %qE attribute"
 msgstr ""
 
-#: c-family/c-attribs.cc:3192 jit/dummy-frontend.cc:866
+#: c-family/c-attribs.cc:3271 jit/dummy-frontend.cc:865
 #, gcc-internal-format
 msgid "weak %q+D cannot be defined %qE"
 msgstr ""
 
-#: c-family/c-attribs.cc:3209 c-family/c-attribs.cc:4198
-#: ada/gcc-interface/utils.cc:7288 jit/dummy-frontend.cc:883
+#: c-family/c-attribs.cc:3288 c-family/c-attribs.cc:4278
+#: ada/gcc-interface/utils.cc:7541 jit/dummy-frontend.cc:882
 #, gcc-internal-format
 msgid "attribute %qE argument not a string"
 msgstr ""
 
-#: c-family/c-attribs.cc:3242 jit/dummy-frontend.cc:916
+#: c-family/c-attribs.cc:3321 jit/dummy-frontend.cc:915
 #, gcc-internal-format
 msgid "%+qD declared %qs after being used"
 msgstr ""
 
 #. Explicitly handle this case since using a string literal
 #. as an argument is a likely mistake.
-#: c-family/c-attribs.cc:3294
+#: c-family/c-attribs.cc:3373
 #, gcc-internal-format
 msgid "%qE attribute argument cannot be a string"
 msgstr ""
@@ -36545,122 +37971,122 @@ msgstr ""
 #. Similar to the string case, since some function attributes
 #. accept literal numbers as arguments (e.g., alloc_size or
 #. nonnull) using one here is a likely mistake.
-#: c-family/c-attribs.cc:3305
+#: c-family/c-attribs.cc:3384
 #, gcc-internal-format
 msgid "%qE attribute argument cannot be a constant arithmetic expression"
 msgstr ""
 
-#: c-family/c-attribs.cc:3315
+#: c-family/c-attribs.cc:3394
 #, gcc-internal-format
 msgid "%qE attribute ignored on a redeclaration of the referenced symbol"
 msgstr ""
 
-#: c-family/c-attribs.cc:3370
+#: c-family/c-attribs.cc:3449
 #, gcc-internal-format
 msgid ""
 "%qE attribute ignored on a declaration of a different kind than referenced "
 "symbol"
 msgstr ""
 
-#: c-family/c-attribs.cc:3374
+#: c-family/c-attribs.cc:3453
 #, gcc-internal-format
 msgid "symbol %qD referenced by %qD declared here"
 msgstr ""
 
-#: c-family/c-attribs.cc:3421
+#: c-family/c-attribs.cc:3500
 #, gcc-internal-format
 msgid "%qE attribute must apply to a declaration"
 msgstr ""
 
-#: c-family/c-attribs.cc:3478
+#: c-family/c-attribs.cc:3557
 #, gcc-internal-format
 msgid "indirect function %q+D cannot be declared %qE"
 msgstr ""
 
-#: c-family/c-attribs.cc:3501
+#: c-family/c-attribs.cc:3580
 #, gcc-internal-format
 msgid "%qE attribute must appear before %qs attribute"
 msgstr ""
 
-#: c-family/c-attribs.cc:3514
+#: c-family/c-attribs.cc:3593
 #, gcc-internal-format
 msgid "%+qD declared %qE after being used"
 msgstr ""
 
-#: c-family/c-attribs.cc:3538 jit/dummy-frontend.cc:601
+#: c-family/c-attribs.cc:3617 jit/dummy-frontend.cc:600
 #, gcc-internal-format
 msgid "%qE attribute ignored on non-class types"
 msgstr ""
 
-#: c-family/c-attribs.cc:3544 jit/dummy-frontend.cc:607
+#: c-family/c-attribs.cc:3623 jit/dummy-frontend.cc:606
 #, gcc-internal-format
 msgid "%qE attribute ignored because %qT is already defined"
 msgstr ""
 
-#: c-family/c-attribs.cc:3557 jit/dummy-frontend.cc:620
+#: c-family/c-attribs.cc:3636 jit/dummy-frontend.cc:619
 #, gcc-internal-format
 msgid "visibility argument not a string"
 msgstr ""
 
-#: c-family/c-attribs.cc:3569 d/d-attribs.cc:1584 jit/dummy-frontend.cc:632
+#: c-family/c-attribs.cc:3648 d/d-attribs.cc:1585 jit/dummy-frontend.cc:631
 #, gcc-internal-format
 msgid "%qE attribute ignored on types"
 msgstr ""
 
-#: c-family/c-attribs.cc:3585 d/d-attribs.cc:1613 jit/dummy-frontend.cc:648
+#: c-family/c-attribs.cc:3664 d/d-attribs.cc:1614 jit/dummy-frontend.cc:647
 #, gcc-internal-format
 msgid "attribute %qE argument must be one of %qs, %qs, %qs, or %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:3597 d/d-attribs.cc:1624 jit/dummy-frontend.cc:660
+#: c-family/c-attribs.cc:3676 d/d-attribs.cc:1625 jit/dummy-frontend.cc:659
 #, gcc-internal-format
 msgid "%qD redeclared with different visibility"
 msgstr ""
 
-#: c-family/c-attribs.cc:3600 c-family/c-attribs.cc:3604 d/d-attribs.cc:1627
-#: d/d-attribs.cc:1631 jit/dummy-frontend.cc:663 jit/dummy-frontend.cc:667
+#: c-family/c-attribs.cc:3679 c-family/c-attribs.cc:3683 d/d-attribs.cc:1628
+#: d/d-attribs.cc:1632 jit/dummy-frontend.cc:662 jit/dummy-frontend.cc:666
 #, gcc-internal-format
 msgid "%qD was declared %qs which implies default visibility"
 msgstr ""
 
-#: c-family/c-attribs.cc:3641
+#: c-family/c-attribs.cc:3720
 #, gcc-internal-format
 msgid "%qE attribute ignored because %qD does not have thread storage duration"
 msgstr ""
 
-#: c-family/c-attribs.cc:3663
+#: c-family/c-attribs.cc:3742
 #, gcc-internal-format
 msgid "%qE argument must be one of %qs, %qs, %qs, or %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:3685 c-family/c-attribs.cc:4281
-#: c-family/c-attribs.cc:6236 c-family/c-attribs.cc:6263
-#: config/m32c/m32c.cc:2942 ada/gcc-interface/utils.cc:7447
+#: c-family/c-attribs.cc:3764 c-family/c-attribs.cc:4361
+#: c-family/c-attribs.cc:6537 c-family/c-attribs.cc:6564
+#: config/m32c/m32c.cc:2942 ada/gcc-interface/utils.cc:7700
 #, gcc-internal-format
 msgid "%qE attribute applies only to functions"
 msgstr ""
 
-#: c-family/c-attribs.cc:3731
+#: c-family/c-attribs.cc:3810
 #, gcc-internal-format
 msgid "%<%E (%E)%> attribute ignored on functions declared %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:3741
+#: c-family/c-attribs.cc:3820
 #, gcc-internal-format
 msgid "%<%E (%E)%> attribute ignored with deallocation functions declared %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:3745
+#: c-family/c-attribs.cc:3824
 #, gcc-internal-format
 msgid "deallocation function declared here"
 msgstr ""
 
-#: c-family/c-attribs.cc:3772
+#: c-family/c-attribs.cc:3851
 #, gcc-internal-format
 msgid "%qE attribute ignored; valid only for functions"
 msgstr ""
 
-#: c-family/c-attribs.cc:3782
+#: c-family/c-attribs.cc:3861
 #, gcc-internal-format
 msgid ""
 "%qE attribute ignored on functions returning %qT; valid only for pointer "
@@ -36669,258 +38095,269 @@ msgstr ""
 
 #. Handle specially the common case of specifying one of a number
 #. of overloads, such as operator delete.
-#: c-family/c-attribs.cc:3828
+#: c-family/c-attribs.cc:3907
 #, gcc-internal-format
 msgid "%qE attribute argument 1 is ambiguous"
 msgstr ""
 
-#: c-family/c-attribs.cc:3830
+#: c-family/c-attribs.cc:3909
 #, gcc-internal-format
 msgid "use a cast to the expected type to disambiguate"
 msgstr ""
 
-#: c-family/c-attribs.cc:3835
+#: c-family/c-attribs.cc:3914
 #, gcc-internal-format
 msgid "%qE attribute argument 1 does not name a function"
 msgstr ""
 
-#: c-family/c-attribs.cc:3838
+#: c-family/c-attribs.cc:3917
 #, gcc-internal-format
 msgid "argument references a symbol declared here"
 msgstr ""
 
 #. Reject functions without a prototype.
-#: c-family/c-attribs.cc:3854
+#: c-family/c-attribs.cc:3933
 #, gcc-internal-format
 msgid "%qE attribute argument 1 must take a pointer type as its first argument"
 msgstr ""
 
-#: c-family/c-attribs.cc:3857 c-family/c-attribs.cc:3870
+#: c-family/c-attribs.cc:3936 c-family/c-attribs.cc:3949
 #, gcc-internal-format
 msgid "referenced symbol declared here"
 msgstr ""
 
 #. Reject functions that don't take a pointer as their first
 #. argument.
-#: c-family/c-attribs.cc:3867
+#: c-family/c-attribs.cc:3946
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument 1 must take a pointer type as its first argument; "
 "have %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:3981 c-family/c-attribs.cc:4029
-#: c-family/c-attribs.cc:4056 d/d-attribs.cc:1329
+#: c-family/c-attribs.cc:4060 c-family/c-attribs.cc:4108
+#: c-family/c-attribs.cc:4135 d/d-attribs.cc:1329
 #, gcc-internal-format
 msgid "%qE attribute ignored on a function returning %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:4075
+#: c-family/c-attribs.cc:4154
 #, gcc-internal-format
 msgid "%qE attribute argument %E is not an integer constant"
 msgstr ""
 
-#: c-family/c-attribs.cc:4083
+#: c-family/c-attribs.cc:4162
 #, gcc-internal-format
 msgid "%qE attribute argument %E is not positive"
 msgstr ""
 
-#: c-family/c-attribs.cc:4094
+#: c-family/c-attribs.cc:4173
 #, gcc-internal-format
 msgid "%qE attribute argument %E is not a power of 2"
 msgstr ""
 
-#: c-family/c-attribs.cc:4107
+#: c-family/c-attribs.cc:4186
 #, gcc-internal-format
 msgid "%qE attribute argument %E is not in the range [0, %wu]"
 msgstr ""
 
-#: c-family/c-attribs.cc:4211 ada/gcc-interface/utils.cc:7301
+#: c-family/c-attribs.cc:4291 ada/gcc-interface/utils.cc:7554
 #, gcc-internal-format
 msgid ""
 "only %<inbranch%> and %<notinbranch%> flags are allowed for %<__simd__%> "
 "attribute"
 msgstr ""
 
-#: c-family/c-attribs.cc:4287 c-family/c-attribs.cc:6242
+#: c-family/c-attribs.cc:4367 c-family/c-attribs.cc:6543
 #, gcc-internal-format
 msgid "cannot set %qE attribute after definition"
 msgstr ""
 
-#: c-family/c-attribs.cc:4338
+#: c-family/c-attribs.cc:4418
 #, gcc-internal-format
 msgid ""
 "%qE attribute on function type without pointer arguments returning %<void%>"
 msgstr ""
 
-#: c-family/c-attribs.cc:4401
+#: c-family/c-attribs.cc:4481
 #, gcc-internal-format
 msgid "%qE attribute duplicated"
 msgstr ""
 
-#: c-family/c-attribs.cc:4403
+#: c-family/c-attribs.cc:4483
 #, gcc-internal-format
 msgid "%qE attribute follows %qE"
 msgstr ""
 
-#: c-family/c-attribs.cc:4502
+#: c-family/c-attribs.cc:4582
 #, gcc-internal-format
 msgid "type was previously declared %qE"
 msgstr ""
 
-#: c-family/c-attribs.cc:4515 cp/class.cc:5083
+#: c-family/c-attribs.cc:4595 cp/class.cc:5120
 #, gcc-internal-format
 msgid ""
 "%<transaction_safe_dynamic%> may only be specified for a virtual function"
 msgstr ""
 
-#: c-family/c-attribs.cc:4573
+#: c-family/c-attribs.cc:4653
 #, gcc-internal-format
 msgid "%qE argument not an identifier"
 msgstr ""
 
-#: c-family/c-attribs.cc:4584
+#: c-family/c-attribs.cc:4664
 #, gcc-internal-format
 msgid "%qD is not compatible with %qD"
 msgstr ""
 
-#: c-family/c-attribs.cc:4587
+#: c-family/c-attribs.cc:4667
 #, gcc-internal-format
 msgid "%qE argument is not a function"
 msgstr ""
 
-#: c-family/c-attribs.cc:4635 cp/name-lookup.cc:6574
+#: c-family/c-attribs.cc:4715 cp/name-lookup.cc:6707
 #, gcc-internal-format
 msgid "deprecated message is not a string"
 msgstr ""
 
-#: c-family/c-attribs.cc:4684 c-family/c-attribs.cc:4749
+#: c-family/c-attribs.cc:4764 c-family/c-attribs.cc:4829
 #, gcc-internal-format
 msgid "%qE attribute ignored for %qE"
 msgstr ""
 
-#: c-family/c-attribs.cc:4708
+#: c-family/c-attribs.cc:4788
 #, gcc-internal-format
 msgid "the message attached to %<unavailable%> is not a string"
 msgstr ""
 
-#: c-family/c-attribs.cc:4810 c-family/c-attribs.cc:4812
+#: c-family/c-attribs.cc:4890 c-family/c-attribs.cc:4892
 #, gcc-internal-format
 msgid "invalid vector type for attribute %qE"
 msgstr ""
 
-#: c-family/c-attribs.cc:4847 c-family/c-attribs.cc:4851
+#: c-family/c-attribs.cc:4927 c-family/c-attribs.cc:4931
 #, gcc-internal-format
 msgid "%qE attribute argument value %qE is negative"
 msgstr ""
 
-#: c-family/c-attribs.cc:4864 c-family/c-attribs.cc:4868
+#: c-family/c-attribs.cc:4944 c-family/c-attribs.cc:4948
 #, gcc-internal-format
 msgid "%qE attribute argument value %qE exceeds %wu"
 msgstr ""
 
-#: c-family/c-attribs.cc:4876 ada/gcc-interface/utils.cc:4436
+#: c-family/c-attribs.cc:4956 ada/gcc-interface/utils.cc:4513
 #, gcc-internal-format
 msgid "vector size not an integral multiple of component size"
 msgstr ""
 
-#: c-family/c-attribs.cc:4882 ada/gcc-interface/utils.cc:4443
+#: c-family/c-attribs.cc:4962 ada/gcc-interface/utils.cc:4520
 #, gcc-internal-format
 msgid "zero vector size"
 msgstr ""
 
-#: c-family/c-attribs.cc:4891 c-family/c-attribs.cc:4894
+#: c-family/c-attribs.cc:4971 c-family/c-attribs.cc:4974
 #, gcc-internal-format
 msgid "number of vector components %wu not a power of two"
 msgstr ""
 
-#: c-family/c-attribs.cc:4901 c-family/c-attribs.cc:4905
+#: c-family/c-attribs.cc:4981 c-family/c-attribs.cc:4985
 #, gcc-internal-format
 msgid "number of vector components %wu exceeds %d"
 msgstr ""
 
-#: c-family/c-attribs.cc:4965
+#: c-family/c-attribs.cc:5045
 #, gcc-internal-format
 msgid "%qE attribute only supported on non-mask vector types"
 msgstr ""
 
-#: c-family/c-attribs.cc:4998 c-family/c-attribs.cc:5061
+#: c-family/c-attribs.cc:5078 c-family/c-attribs.cc:5150
 #, gcc-internal-format
 msgid "%qE attribute without arguments on a non-prototype"
 msgstr ""
 
-#: c-family/c-attribs.cc:5083
+#: c-family/c-attribs.cc:5172
 #, gcc-internal-format
 msgid "%qE attribute ignored on non-enum"
 msgstr ""
 
-#: c-family/c-attribs.cc:5133
+#: c-family/c-attribs.cc:5204 config/mips/mips.cc:1346 config/mips/mips.cc:1607
+#: config/mips/mips.cc:1661 config/riscv/riscv.cc:7590
 #, gcc-internal-format
-msgid "%qE attribute ignored on objects of type %qT"
+msgid "%qE attribute requires a string argument"
+msgstr ""
+
+#: c-family/c-attribs.cc:5215
+#, gcc-internal-format
+msgid "unsupported wide string type argument in %qE attribute"
 msgstr ""
 
-#: c-family/c-attribs.cc:5141
+#: c-family/c-attribs.cc:5249 c-family/c-attribs.cc:5331
 #, gcc-internal-format
 msgid "%qE attribute does not apply to functions"
 msgstr ""
 
-#: c-family/c-attribs.cc:5279
+#: c-family/c-attribs.cc:5323
+#, gcc-internal-format
+msgid "%qE attribute ignored on objects of type %qT"
+msgstr ""
+
+#: c-family/c-attribs.cc:5469
 #, gcc-internal-format
 msgid "attribute %qs mismatch with mode %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:5328
+#: c-family/c-attribs.cc:5518
 #, gcc-internal-format
 msgid ""
 "attribute %qs missing positional argument 2 provided in previous designation "
 "by argument %u"
 msgstr ""
 
-#: c-family/c-attribs.cc:5334
+#: c-family/c-attribs.cc:5524
 #, gcc-internal-format
 msgid "attribute %qs positional argument 2 missing in previous designation"
 msgstr ""
 
-#: c-family/c-attribs.cc:5340
+#: c-family/c-attribs.cc:5530
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 2 conflicts with previous designation by "
 "argument %u"
 msgstr ""
 
-#: c-family/c-attribs.cc:5348
+#: c-family/c-attribs.cc:5538
 #, gcc-internal-format
 msgid "attribute %qs mismatched positional argument values %i and %i"
 msgstr ""
 
-#: c-family/c-attribs.cc:5370
+#: c-family/c-attribs.cc:5560
 #, gcc-internal-format, gfc-internal-format
 msgid "designating the bound of variable length array argument %u"
 msgstr ""
 
-#: c-family/c-attribs.cc:5453
+#: c-family/c-attribs.cc:5643
 #, gcc-internal-format
 msgid "attribute %qE without arguments on a non-prototype"
 msgstr ""
 
-#: c-family/c-attribs.cc:5503
+#: c-family/c-attribs.cc:5693
 #, gcc-internal-format
 msgid "attribute %qE invalid mode"
 msgstr ""
 
-#: c-family/c-attribs.cc:5512
+#: c-family/c-attribs.cc:5702
 #, gcc-internal-format
 msgid ""
 "attribute %qE mode %qE is not an identifier; expected one of %qs, %qs, %qs, "
 "or %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:5539
+#: c-family/c-attribs.cc:5729
 #, gcc-internal-format
 msgid "attribute %qE invalid mode %qs; expected one of %qs, %qs, %qs, or %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:5550
+#: c-family/c-attribs.cc:5740
 #, gcc-internal-format
 msgid ""
 "attribute %qE unexpected %<(%> after mode %qs; expected a positional "
@@ -36931,1429 +38368,1460 @@ msgstr ""
 #. dropping the requirement at some point and having read_only
 #. apply to all const-qualified pointers and read_write or
 #. write_only to the rest.
-#: c-family/c-attribs.cc:5563
+#: c-family/c-attribs.cc:5753
 #, gcc-internal-format
 msgid "attribute %<%E(%s)%> missing an argument"
 msgstr ""
 
-#: c-family/c-attribs.cc:5604
+#: c-family/c-attribs.cc:5794
 #, gcc-internal-format
 msgid "attribute %<%E(%s, %E, %E)%> invalid positional argument %i"
 msgstr ""
 
-#: c-family/c-attribs.cc:5607
+#: c-family/c-attribs.cc:5797
 #, gcc-internal-format
 msgid "attribute %<%E(%s, %E)%> invalid positional argument %i"
 msgstr ""
 
-#: c-family/c-attribs.cc:5632
+#: c-family/c-attribs.cc:5822
 #, gcc-internal-format
 msgid "attribute %qs positional argument %i invalid value %wi"
 msgstr ""
 
-#: c-family/c-attribs.cc:5636
+#: c-family/c-attribs.cc:5826
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument %i value %wi exceeds number of function "
 "arguments %u"
 msgstr ""
 
-#: c-family/c-attribs.cc:5643
+#: c-family/c-attribs.cc:5833
 #, gcc-internal-format
 msgid "attribute %qs invalid positional argument"
 msgstr ""
 
 #. The first argument must have a pointer or reference type.
-#: c-family/c-attribs.cc:5651
+#: c-family/c-attribs.cc:5841
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 1 references non-pointer argument type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:5662
+#: c-family/c-attribs.cc:5852
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 1 references argument of function type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:5675
+#: c-family/c-attribs.cc:5865
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 1 references %qs-qualified argument type "
 "%qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:5693
+#: c-family/c-attribs.cc:5883
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 2 references non-integer argument type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:5963
+#: c-family/c-attribs.cc:6249
 #, gcc-internal-format
 msgid "cleanup argument not an identifier"
 msgstr ""
 
-#: c-family/c-attribs.cc:5970
+#: c-family/c-attribs.cc:6256
 #, gcc-internal-format
 msgid "cleanup argument not a function"
 msgstr ""
 
-#: c-family/c-attribs.cc:6007
+#: c-family/c-attribs.cc:6293
 #, gcc-internal-format
 msgid "%qE attribute requires prototypes with named arguments"
 msgstr ""
 
-#: c-family/c-attribs.cc:6015
+#: c-family/c-attribs.cc:6301
 #, gcc-internal-format
 msgid "%qE attribute only applies to variadic functions"
 msgstr ""
 
-#: c-family/c-attribs.cc:6031 ada/gcc-interface/utils.cc:6848
+#: c-family/c-attribs.cc:6317 ada/gcc-interface/utils.cc:7101
 #, gcc-internal-format
 msgid "requested position is not an integer constant"
 msgstr ""
 
-#: c-family/c-attribs.cc:6039 ada/gcc-interface/utils.cc:6855
+#: c-family/c-attribs.cc:6325 ada/gcc-interface/utils.cc:7108
 #, gcc-internal-format
 msgid "requested position is less than zero"
 msgstr ""
 
-#: c-family/c-attribs.cc:6088 ada/gcc-interface/utils.cc:7344
-#: d/d-attribs.cc:771 jit/dummy-frontend.cc:799
+#: c-family/c-attribs.cc:6374 ada/gcc-interface/utils.cc:7597
+#: d/d-attribs.cc:771 jit/dummy-frontend.cc:798
 #, gcc-internal-format
 msgid "empty string in attribute %<target%>"
 msgstr ""
 
 #. The argument must be a constant string.
-#: c-family/c-attribs.cc:6129 config/sh/sh.cc:8562 d/d-attribs.cc:1038
-#: d/d-attribs.cc:1112 d/d-attribs.cc:1415 d/d-attribs.cc:1457
-#: d/d-attribs.cc:1519 d/d-attribs.cc:1598
+#: c-family/c-attribs.cc:6415 config/sh/sh.cc:8562 d/d-attribs.cc:1038
+#: d/d-attribs.cc:1112 d/d-attribs.cc:1415 d/d-attribs.cc:1458
+#: d/d-attribs.cc:1520 d/d-attribs.cc:1599
 #, gcc-internal-format
 msgid "%qE attribute argument not a string constant"
 msgstr ""
 
-#: c-family/c-attribs.cc:6288 ada/gcc-interface/utils.cc:7478
+#: c-family/c-attribs.cc:6589 ada/gcc-interface/utils.cc:7731
 #, gcc-internal-format
 msgid "unrecognized %qE attribute argument %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:6306
+#: c-family/c-attribs.cc:6607
 #, gcc-internal-format
 msgid "%qE attribute on a function not returning a pointer"
 msgstr ""
 
-#: c-family/c-attribs.cc:6321
+#: c-family/c-attribs.cc:6622
 #, gcc-internal-format
 msgid "%qE attribute is only valid on %<struct%> type"
 msgstr ""
 
-#: c-family/c-attribs.cc:6369
+#: c-family/c-attribs.cc:6670
 #, gcc-internal-format
 msgid "%qE attribute argument %qE is not an integer constant"
 msgstr ""
 
-#: c-family/c-attribs.cc:6378
+#: c-family/c-attribs.cc:6679
 #, gcc-internal-format
 msgid "%qE attribute argument %qE exceeds %u"
 msgstr ""
 
-#: c-family/c-attribs.cc:6400
+#: c-family/c-attribs.cc:6701
 #, gcc-internal-format
 msgid "%qE attribute may be put on a typedef only; attribute is ignored"
 msgstr ""
 
-#: c-family/c-attribs.cc:6412
+#: c-family/c-attribs.cc:6713
 #, gcc-internal-format
 msgid "%qE attribute is for pointer types only"
 msgstr ""
 
-#: c-family/c-attribs.cc:6431
+#: c-family/c-attribs.cc:6732
 #, gcc-internal-format
 msgid ""
 "%qE is only applicable to Objective-C class interfaces, attribute ignored"
 msgstr ""
 
-#: c-family/c-attribs.cc:6454
+#: c-family/c-attribs.cc:6755
 #, gcc-internal-format
 msgid "%qE cannot be applied to non-pointer type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:6479
+#: c-family/c-attribs.cc:6780
 #, gcc-internal-format
 msgid "%qE attribute argument %qE is not recognized"
 msgstr ""
 
-#: c-family/c-attribs.cc:6494
+#: c-family/c-attribs.cc:6795
 #, gcc-internal-format
 msgid ""
 "%qE attribute ignored; valid only for functions and function pointer fields"
 msgstr ""
 
-#: c-family/c-attribs.cc:6505
+#: c-family/c-attribs.cc:6806
 #, gcc-internal-format
 msgid "%qE attribute ignored; field must be a function pointer"
 msgstr ""
 
-#: c-family/c-attribs.cc:6529
+#: c-family/c-attribs.cc:6830
 #, gcc-internal-format
 msgid "unknown attribute %qE"
 msgstr ""
 
-#: c-family/c-attribs.cc:6556
+#: c-family/c-attribs.cc:6857
 #, gcc-internal-format
 msgid "invalid operand type %qT for %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:6660
+#: c-family/c-attribs.cc:6961
 #, gcc-internal-format
 msgid "%qs attribute not supported for %qT in %<__builtin_has_attribute%>"
 msgstr ""
 
-#: c-family/c-attribs.cc:6662
+#: c-family/c-attribs.cc:6963
 #, gcc-internal-format
 msgid "%qs attribute not supported for %qE in %<__builtin_has_attribute%>"
 msgstr ""
 
-#: c-family/c-attribs.cc:6839
+#: c-family/c-attribs.cc:7140
 #, gcc-internal-format
 msgid "%qs attribute not supported in %<__builtin_has_attribute%>"
 msgstr ""
 
-#: c-family/c-common.cc:802
+#. only_skip_consteval_block_p=
+#: c-family/c-common.cc:809 cp/semantics.cc:4032
 #, gcc-internal-format
 msgid "%qD is not defined outside of function scope"
 msgstr ""
 
-#: c-family/c-common.cc:847
+#: c-family/c-common.cc:854
 #, gcc-internal-format
 msgid "size of string literal is too large"
 msgstr ""
 
-#: c-family/c-common.cc:870
+#: c-family/c-common.cc:877
 #, gcc-internal-format
 msgid ""
 "string length %qd is greater than the length %qd ISO C%d compilers are "
 "required to support"
 msgstr ""
 
-#: c-family/c-common.cc:1045
+#: c-family/c-common.cc:1052
 #, gcc-internal-format
 msgid ""
 "use %<-flax-vector-conversions%> to permit conversions between vectors with "
 "differing element types or numbers of subparts"
 msgstr ""
 
-#: c-family/c-common.cc:1086
+#: c-family/c-common.cc:1093
 #, gcc-internal-format
 msgid "%<__builtin_shuffle%> last argument must be an integer vector"
 msgstr ""
 
-#: c-family/c-common.cc:1095
+#: c-family/c-common.cc:1102
 #, gcc-internal-format
 msgid "%<__builtin_shuffle%> arguments must be vectors"
 msgstr ""
 
-#: c-family/c-common.cc:1102
+#: c-family/c-common.cc:1109
 #, gcc-internal-format
 msgid "%<__builtin_shuffle%> argument vectors must be of the same type"
 msgstr ""
 
-#: c-family/c-common.cc:1113
+#: c-family/c-common.cc:1120
 #, gcc-internal-format
 msgid ""
 "%<__builtin_shuffle%> number of elements of the argument vector(s) and the "
 "mask vector should be the same"
 msgstr ""
 
-#: c-family/c-common.cc:1123
+#: c-family/c-common.cc:1130
 #, gcc-internal-format
 msgid ""
 "%<__builtin_shuffle%> argument vector(s) inner type must have the same size "
 "as inner type of the mask"
 msgstr ""
 
-#: c-family/c-common.cc:1174
+#: c-family/c-common.cc:1181
 #, gcc-internal-format
 msgid "%<__builtin_shufflevector%> arguments must be vectors"
 msgstr ""
 
-#: c-family/c-common.cc:1185
+#: c-family/c-common.cc:1192
 #, gcc-internal-format
 msgid "%<__builtin_shufflevector%> arguments must be constant size vectors"
 msgstr ""
 
-#: c-family/c-common.cc:1194
+#: c-family/c-common.cc:1201
 #, gcc-internal-format
 msgid ""
 "%<__builtin_shufflevector%> argument vectors must have the same element type"
 msgstr ""
 
-#: c-family/c-common.cc:1202
+#: c-family/c-common.cc:1209
 #, gcc-internal-format
 msgid ""
 "%<__builtin_shufflevector%> must specify a result with a power of two number "
 "of elements"
 msgstr ""
 
-#: c-family/c-common.cc:1227 c-family/c-common.cc:1237
+#: c-family/c-common.cc:1234 c-family/c-common.cc:1244
 #, gcc-internal-format
 msgid "invalid element index %qE to %<__builtin_shufflevector%>"
 msgstr ""
 
-#: c-family/c-common.cc:1315
+#: c-family/c-common.cc:1321
 #, gcc-internal-format
 msgid ""
 "%<__builtin_convertvector%> first argument must be an integer or floating "
 "vector"
 msgstr ""
 
-#: c-family/c-common.cc:1324
+#: c-family/c-common.cc:1331
 #, gcc-internal-format
 msgid ""
 "%<__builtin_convertvector%> second argument must be an integer or floating "
 "vector type"
 msgstr ""
 
-#: c-family/c-common.cc:1333
+#: c-family/c-common.cc:1340
 #, gcc-internal-format
 msgid ""
 "%<__builtin_convertvector%> number of elements of the first argument vector "
 "and the second argument vector type should be the same"
 msgstr ""
 
-#: c-family/c-common.cc:1973
+#: c-family/c-common.cc:1980
 #, gcc-internal-format
 msgid "operation on %qE may be undefined"
 msgstr ""
 
-#: c-family/c-common.cc:2330
+#: c-family/c-common.cc:2337
 #, gcc-internal-format
 msgid "case label does not reduce to an integer constant"
 msgstr ""
 
-#: c-family/c-common.cc:2426
+#: c-family/c-common.cc:2433
 #, gcc-internal-format
 msgid ""
 "GCC cannot support operators with integer types and fixed-point types that "
 "have too many integral and fractional bits together"
 msgstr ""
 
-#: c-family/c-common.cc:2978
+#: c-family/c-common.cc:2985
 msgid "invalid operands to binary %s (have %e and %e)"
 msgstr ""
 
-#: c-family/c-common.cc:3227
+#: c-family/c-common.cc:3234
 #, gcc-internal-format
 msgid "comparison is always false due to limited range of data type"
 msgstr ""
 
-#: c-family/c-common.cc:3230
+#: c-family/c-common.cc:3237
 #, gcc-internal-format
 msgid "comparison is always true due to limited range of data type"
 msgstr ""
 
-#: c-family/c-common.cc:3332
+#: c-family/c-common.cc:3339
 #, gcc-internal-format
 msgid "comparison of unsigned expression in %<>= 0%> is always true"
 msgstr ""
 
-#: c-family/c-common.cc:3340
+#: c-family/c-common.cc:3347
 #, gcc-internal-format
 msgid "comparison of unsigned expression in %<< 0%> is always false"
 msgstr ""
 
-#: c-family/c-common.cc:3384
+#: c-family/c-common.cc:3391
 #, gcc-internal-format
 msgid "pointer of type %<void *%> used in arithmetic"
 msgstr ""
 
-#: c-family/c-common.cc:3393
+#: c-family/c-common.cc:3400
 #, gcc-internal-format
 msgid "pointer to a function used in arithmetic"
 msgstr ""
 
-#: c-family/c-common.cc:3610
+#: c-family/c-common.cc:3638
 #, gcc-internal-format
 msgid "enum constant in boolean context"
 msgstr ""
 
-#: c-family/c-common.cc:3640 d/d-convert.cc:149
+#: c-family/c-common.cc:3668 d/d-convert.cc:149
 #, gcc-internal-format
 msgid "the address of %qD will always evaluate as %<true%>"
 msgstr ""
 
-#: c-family/c-common.cc:3685
+#: c-family/c-common.cc:3713
 #, gcc-internal-format
 msgid "%<*%> in boolean context, suggest %<&&%> instead"
 msgstr ""
 
-#: c-family/c-common.cc:3698
+#: c-family/c-common.cc:3726
 #, gcc-internal-format
 msgid "%<<<%> in boolean context, did you mean %<<%>?"
 msgstr ""
 
-#: c-family/c-common.cc:3714
+#: c-family/c-common.cc:3742
 #, gcc-internal-format
 msgid ""
 "%<?:%> using integer constants in boolean context, the expression will "
 "always evaluate to %<true%>"
 msgstr ""
 
-#: c-family/c-common.cc:3723
+#: c-family/c-common.cc:3751
 #, gcc-internal-format
 msgid "%<?:%> using integer constants in boolean context"
 msgstr ""
 
-#: c-family/c-common.cc:3759
+#: c-family/c-common.cc:3787
 #, gcc-internal-format
 msgid ""
 "the compiler can assume that the address of %qD will always evaluate to "
 "%<true%>"
 msgstr ""
 
-#: c-family/c-common.cc:3795 cp/semantics.cc:1030
+#: c-family/c-common.cc:3823 cp/semantics.cc:1036
 #, gcc-internal-format
 msgid "suggest parentheses around assignment used as truth value"
 msgstr ""
 
-#: c-family/c-common.cc:3882 c/c-decl.cc:5028 c/c-decl.cc:7694
-#: c/c-parser.cc:4001 c/c-typeck.cc:17908
+#: c-family/c-common.cc:3910 c/c-decl.cc:5192 c/c-decl.cc:7734
+#: c/c-parser.cc:4185 c/c-typeck.cc:18623
 #, gcc-internal-format
 msgid "invalid use of %<restrict%>"
 msgstr ""
 
-#: c-family/c-common.cc:3958
+#: c-family/c-common.cc:4012
 #, gcc-internal-format
 msgid "invalid application of %<sizeof%> to a function type"
 msgstr ""
 
-#: c-family/c-common.cc:3968
+#: c-family/c-common.cc:4022
 #, gcc-internal-format
 msgid "ISO C++ does not permit %<alignof%> applied to a function type"
 msgstr ""
 
-#: c-family/c-common.cc:3971
+#: c-family/c-common.cc:4025
 #, gcc-internal-format
 msgid "ISO C does not permit %<_Alignof%> applied to a function type"
 msgstr ""
 
-#: c-family/c-common.cc:3982 cp/typeck.cc:2085
+#: c-family/c-common.cc:4036 cp/typeck.cc:2193
 #, gcc-internal-format
 msgid "invalid application of %qs to a void type"
 msgstr ""
 
-#: c-family/c-common.cc:3993
+#: c-family/c-common.cc:4047
 #, gcc-internal-format
 msgid "invalid application of %qs to incomplete type %qT"
 msgstr ""
 
-#: c-family/c-common.cc:4001
+#: c-family/c-common.cc:4055
 #, gcc-internal-format
 msgid "invalid application of %qs to array type %qT of incomplete element type"
 msgstr ""
 
-#: c-family/c-common.cc:4053
+#: c-family/c-common.cc:4107
 #, gcc-internal-format
 msgid "%<__alignof%> applied to a bit-field"
 msgstr ""
 
-#: c-family/c-common.cc:4878
+#: c-family/c-common.cc:4150
+#, gcc-internal-format
+msgid "invalid application of %<_Countof%> to type %qT"
+msgstr ""
+
+#: c-family/c-common.cc:4156
+#, gcc-internal-format
+msgid "invalid application of %<_Countof%> to incomplete type %qT"
+msgstr ""
+
+#: c-family/c-common.cc:4177
+#, gcc-internal-format
+msgid "invalid application of %<_Maxof%> to type %qT"
+msgstr ""
+
+#: c-family/c-common.cc:4182
+#, gcc-internal-format
+msgid "invalid application of %<_Maxof%> to incomplete type %qT"
+msgstr ""
+
+#: c-family/c-common.cc:4198
+#, gcc-internal-format
+msgid "invalid application of %<_Minof%> to type %qT"
+msgstr ""
+
+#: c-family/c-common.cc:4203
+#, gcc-internal-format
+msgid "invalid application of %<_Minof%> to incomplete type %qT"
+msgstr ""
+
+#: c-family/c-common.cc:5005
 #, gcc-internal-format
 msgid "first argument to %<va_arg%> not of type %<va_list%>"
 msgstr ""
 
-#: c-family/c-common.cc:4998
+#: c-family/c-common.cc:5125
 #, gcc-internal-format
 msgid "cannot disable built-in function %qs"
 msgstr ""
 
-#: c-family/c-common.cc:5190
+#: c-family/c-common.cc:5317
 #, gcc-internal-format
 msgid "pointers are not permitted as case values"
 msgstr ""
 
-#: c-family/c-common.cc:5199
+#: c-family/c-common.cc:5326
 #, gcc-internal-format
 msgid "range expressions in switch statements are non-standard"
 msgstr ""
 
-#: c-family/c-common.cc:5204 c-family/c-common.cc:5208
-#: c-family/c-common.cc:5213
+#: c-family/c-common.cc:5331 c-family/c-common.cc:5335
+#: c-family/c-common.cc:5340
 #, gcc-internal-format
 msgid ""
 "ISO C does not support range expressions in switch statements before C2Y"
 msgstr ""
 
-#: c-family/c-common.cc:5227 c-family/c-common.cc:5244
+#: c-family/c-common.cc:5354 c-family/c-common.cc:5371
 #, gcc-internal-format
 msgid "conversion of %qE to %qT in range expression changes value to %qE"
 msgstr ""
 
-#: c-family/c-common.cc:5263
+#: c-family/c-common.cc:5390
 #, gcc-internal-format
 msgid "empty range specified"
 msgstr ""
 
-#: c-family/c-common.cc:5317
+#: c-family/c-common.cc:5444
 #, gcc-internal-format
 msgid "duplicate (or overlapping) case value"
 msgstr ""
 
-#: c-family/c-common.cc:5319
+#: c-family/c-common.cc:5446
 #, gcc-internal-format
 msgid "this is the first entry overlapping that value"
 msgstr ""
 
-#: c-family/c-common.cc:5323
+#: c-family/c-common.cc:5450
 #, gcc-internal-format
 msgid "duplicate case value"
 msgstr ""
 
-#: c-family/c-common.cc:5324 c-family/c-warn.cc:2662
+#: c-family/c-common.cc:5451 c-family/c-warn.cc:2662
 #, gcc-internal-format
 msgid "previously used here"
 msgstr ""
 
-#: c-family/c-common.cc:5328
+#: c-family/c-common.cc:5455
 #, gcc-internal-format
 msgid "multiple default labels in one switch"
 msgstr ""
 
-#: c-family/c-common.cc:5330
+#: c-family/c-common.cc:5457
 #, gcc-internal-format
 msgid "this is the first default label"
 msgstr ""
 
-#: c-family/c-common.cc:5442
+#: c-family/c-common.cc:5569
 #, gcc-internal-format
 msgid "taking the address of a label is non-standard"
 msgstr ""
 
-#: c-family/c-common.cc:5627
+#: c-family/c-common.cc:5754
 #, gcc-internal-format
 msgid "requested alignment is not an integer constant"
 msgstr ""
 
-#: c-family/c-common.cc:5635 c-family/c-common.cc:5645
+#: c-family/c-common.cc:5762 c-family/c-common.cc:5772
 #, gcc-internal-format
 msgid "requested alignment %qE is not a positive power of 2"
 msgstr ""
 
-#: c-family/c-common.cc:5655
+#: c-family/c-common.cc:5782
 #, gcc-internal-format
 msgid "requested alignment %qE exceeds object file maximum %u"
 msgstr ""
 
-#: c-family/c-common.cc:5663
+#: c-family/c-common.cc:5790
 #, gcc-internal-format
 msgid "requested alignment %qE exceeds maximum %u"
 msgstr ""
 
-#: c-family/c-common.cc:5858
+#: c-family/c-common.cc:5994
 #, gcc-internal-format
 msgid "not enough variable arguments to fit a sentinel"
 msgstr ""
 
-#: c-family/c-common.cc:5873
+#: c-family/c-common.cc:6009
 #, gcc-internal-format
 msgid "missing sentinel in function call"
 msgstr ""
 
-#: c-family/c-common.cc:6112 c-family/c-common.cc:6165 d/d-attribs.cc:837
+#: c-family/c-common.cc:6259 c-family/c-common.cc:6312 d/d-attribs.cc:837
 #: d/d-attribs.cc:887
 #, gcc-internal-format
 msgid "bad option %qs to attribute %<optimize%>"
 msgstr ""
 
-#: c-family/c-common.cc:6116 c-family/c-common.cc:6170
+#: c-family/c-common.cc:6263 c-family/c-common.cc:6317
 #, gcc-internal-format
 msgid "bad option %qs to pragma %<optimize%>"
 msgstr ""
 
-#: c-family/c-common.cc:6219
+#: c-family/c-common.cc:6366
 #, gcc-internal-format
 msgid "attribute %<fallthrough%> specified multiple times"
 msgstr ""
 
-#: c-family/c-common.cc:6223
+#: c-family/c-common.cc:6370
 #, gcc-internal-format
 msgid "%<fallthrough%> attribute specified with a parameter"
 msgstr ""
 
-#: c-family/c-common.cc:6412 c-family/c-common.cc:7430
-#: c-family/c-common.cc:7478 c-family/c-common.cc:7560
-#: c-family/c-common.cc:7646 c-family/c-common.cc:8315
-#: config/aarch64/aarch64-sve-builtins.cc:3001
-#: config/arm/arm-mve-builtins.cc:1714
+#: c-family/c-common.cc:6559 c-family/c-common.cc:7587
+#: c-family/c-common.cc:7635 c-family/c-common.cc:7717
+#: c-family/c-common.cc:7803 c-family/c-common.cc:8472
+#: config/aarch64/aarch64-sve-builtins.cc:3030
+#: config/arm/arm-mve-builtins.cc:1711
 #, gcc-internal-format
 msgid "too few arguments to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:6418 c-family/c-common.cc:7485
-#: c-family/c-common.cc:7673 c-family/c-common.cc:8317
-#: config/aarch64/aarch64-sve-builtins.cc:3003
-#: config/arm/arm-mve-builtins.cc:1716
+#: c-family/c-common.cc:6565 c-family/c-common.cc:7642
+#: c-family/c-common.cc:7830 c-family/c-common.cc:8474
+#: config/aarch64/aarch64-sve-builtins.cc:3032
+#: config/arm/arm-mve-builtins.cc:1713
 #, gcc-internal-format
 msgid "too many arguments to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:6462
+#: c-family/c-common.cc:6609
 #, gcc-internal-format
 msgid "third argument to function %qE must be a constant integer"
 msgstr ""
 
-#: c-family/c-common.cc:6488
+#: c-family/c-common.cc:6635
 #, gcc-internal-format
 msgid ""
 "second argument to function %qE must be a constant integer power of 2 "
 "between %qi and %qu bits"
 msgstr ""
 
-#: c-family/c-common.cc:6512 c-family/c-common.cc:6568
+#: c-family/c-common.cc:6659 c-family/c-common.cc:6715
 #, gcc-internal-format
 msgid "non-floating-point argument in call to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:6541
+#: c-family/c-common.cc:6688
 #, gcc-internal-format
 msgid "non-floating-point arguments in call to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:6558
+#: c-family/c-common.cc:6705
 #, gcc-internal-format
 msgid "non-const integer argument %u in call to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:6587
+#: c-family/c-common.cc:6734
 #, gcc-internal-format
 msgid "non-integer argument 3 in call to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:6607 c-family/c-common.cc:6673
-#: c-family/c-common.cc:6757 c-family/c-common.cc:6784
+#: c-family/c-common.cc:6754 c-family/c-common.cc:6820
+#: c-family/c-common.cc:6904 c-family/c-common.cc:6931
 #, gcc-internal-format
 msgid "argument %u in call to function %qE does not have integral type"
 msgstr ""
 
-#: c-family/c-common.cc:6617
+#: c-family/c-common.cc:6764
 #, gcc-internal-format
 msgid ""
 "argument 3 in call to function %qE does not have pointer to integral type"
 msgstr ""
 
-#: c-family/c-common.cc:6626
+#: c-family/c-common.cc:6773
 #, gcc-internal-format
 msgid "argument 3 in call to function %qE has pointer to enumerated type"
 msgstr ""
 
-#: c-family/c-common.cc:6635
+#: c-family/c-common.cc:6782
 #, gcc-internal-format
 msgid "argument 3 in call to function %qE has pointer to boolean type"
 msgstr ""
 
-#: c-family/c-common.cc:6644 c-family/c-common.cc:6653
-#: c-family/c-common.cc:6725 c-family/c-common.cc:6734
+#: c-family/c-common.cc:6791 c-family/c-common.cc:6800
+#: c-family/c-common.cc:6872 c-family/c-common.cc:6881
 #, gcc-internal-format
 msgid "argument %u in call to function %qE has pointer to %qs type (%qT)"
 msgstr ""
 
-#: c-family/c-common.cc:6682 c-family/c-common.cc:6793
+#: c-family/c-common.cc:6829 c-family/c-common.cc:6940
 #, gcc-internal-format
 msgid "argument %u in call to function %qE has enumerated type"
 msgstr ""
 
-#: c-family/c-common.cc:6691 c-family/c-common.cc:6802
+#: c-family/c-common.cc:6838 c-family/c-common.cc:6949
 #, gcc-internal-format
 msgid "argument %u in call to function %qE has boolean type"
 msgstr ""
 
-#: c-family/c-common.cc:6707
+#: c-family/c-common.cc:6854
 #, gcc-internal-format
 msgid "argument %u in call to function %qE does not have pointer type"
 msgstr ""
 
-#: c-family/c-common.cc:6716
+#: c-family/c-common.cc:6863
 #, gcc-internal-format
 msgid "argument %u in call to function %qE points to incomplete type"
 msgstr ""
 
-#: c-family/c-common.cc:6770
+#: c-family/c-common.cc:6917
 #, gcc-internal-format
 msgid "argument %u in call to function %qE does not have %<int%> type"
 msgstr ""
 
-#: c-family/c-common.cc:6814
+#: c-family/c-common.cc:6961
 #, gcc-internal-format
 msgid "argument 1 in call to function %qE has unsigned type"
 msgstr ""
 
-#: c-family/c-common.cc:6824
+#: c-family/c-common.cc:6971
 #, gcc-internal-format
 msgid "argument 1 in call to function %qE has signed type"
 msgstr ""
 
-#: c-family/c-common.cc:7089 rust/backend/rust-tree.cc:3588
+#: c-family/c-common.cc:7246 rust/backend/rust-tree.cc:3614
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to static data member %qD"
 msgstr ""
 
-#: c-family/c-common.cc:7094 rust/backend/rust-tree.cc:3593
+#: c-family/c-common.cc:7251 rust/backend/rust-tree.cc:3619
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> when %<operator[]%> is overloaded"
 msgstr ""
 
-#: c-family/c-common.cc:7101 rust/backend/rust-tree.cc:3600
+#: c-family/c-common.cc:7258 rust/backend/rust-tree.cc:3626
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to a non constant address"
 msgstr ""
 
-#: c-family/c-common.cc:7114 rust/backend/rust-tree.cc:3613
+#: c-family/c-common.cc:7271 rust/backend/rust-tree.cc:3639
 #, gcc-internal-format
 msgid "attempt to take address of bit-field structure member %qD"
 msgstr ""
 
-#: c-family/c-common.cc:7167 rust/backend/rust-tree.cc:3665
+#: c-family/c-common.cc:7324 rust/backend/rust-tree.cc:3691
 #, gcc-internal-format
 msgid "index %E denotes an offset greater than size of %qT"
 msgstr ""
 
-#: c-family/c-common.cc:7344
+#: c-family/c-common.cc:7501
 #, gcc-internal-format
 msgid "size of array is too large"
 msgstr ""
 
-#: c-family/c-common.cc:7460 c-family/c-common.cc:7604
+#: c-family/c-common.cc:7617 c-family/c-common.cc:7761
 #, gcc-internal-format
 msgid "operand type %qT is incompatible with argument %d of %qE"
 msgstr ""
 
-#: c-family/c-common.cc:7496
+#: c-family/c-common.cc:7653
 #, gcc-internal-format
 msgid "expecting argument of type pointer or of type integer for argument 1"
 msgstr ""
 
-#: c-family/c-common.cc:7513
+#: c-family/c-common.cc:7670
 #, gcc-internal-format
 msgid "both arguments must be compatible"
 msgstr ""
 
-#: c-family/c-common.cc:7749
+#: c-family/c-common.cc:7906
 #, gcc-internal-format
 msgid "incorrect number of arguments to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:7765
+#: c-family/c-common.cc:7922
 #, gcc-internal-format
 msgid "argument 1 of %qE must be a non-void pointer type"
 msgstr ""
 
-#: c-family/c-common.cc:7773
+#: c-family/c-common.cc:7930
 #, gcc-internal-format
 msgid "argument 1 of %qE must be a pointer to a complete type"
 msgstr ""
 
-#: c-family/c-common.cc:7783
+#: c-family/c-common.cc:7940
 #, gcc-internal-format
 msgid "argument 1 of %qE must be a pointer to a constant size type"
 msgstr ""
 
-#: c-family/c-common.cc:7795
+#: c-family/c-common.cc:7952
 #, gcc-internal-format
 msgid "argument 1 of %qE must be a pointer to a nonzero size object"
 msgstr ""
 
-#: c-family/c-common.cc:7817
+#: c-family/c-common.cc:7974
 #, gcc-internal-format
 msgid "argument %d of %qE must be a pointer type"
 msgstr ""
 
-#: c-family/c-common.cc:7827
+#: c-family/c-common.cc:7984
 #, gcc-internal-format
 msgid "argument %d of %qE must be a pointer to a constant size type"
 msgstr ""
 
-#: c-family/c-common.cc:7836
+#: c-family/c-common.cc:7993
 #, gcc-internal-format
 msgid "argument %d of %qE must not be a pointer to a function"
 msgstr ""
 
-#: c-family/c-common.cc:7846
+#: c-family/c-common.cc:8003
 #, gcc-internal-format
 msgid "size mismatch in argument %d of %qE"
 msgstr ""
 
-#: c-family/c-common.cc:7861
+#: c-family/c-common.cc:8018
 #, gcc-internal-format
 msgid "argument %d of %qE must not be a pointer to a %<const%> type"
 msgstr ""
 
-#: c-family/c-common.cc:7867
+#: c-family/c-common.cc:8024
 #, gcc-internal-format
 msgid "argument %d of %qE discards %<const%> qualifier"
 msgstr ""
 
-#: c-family/c-common.cc:7878
+#: c-family/c-common.cc:8035
 #, gcc-internal-format
 msgid "argument %d of %qE must not be a pointer to a %<volatile%> type"
 msgstr ""
 
-#: c-family/c-common.cc:7884
+#: c-family/c-common.cc:8041
 #, gcc-internal-format
 msgid "argument %d of %qE discards %<volatile%> qualifier"
 msgstr ""
 
-#: c-family/c-common.cc:7898
+#: c-family/c-common.cc:8055
 #, gcc-internal-format
 msgid "non-integer memory model argument %d of %qE"
 msgstr ""
 
-#: c-family/c-common.cc:7913
+#: c-family/c-common.cc:8070
 #, gcc-internal-format
 msgid "invalid memory model argument %d of %qE"
 msgstr ""
 
-#: c-family/c-common.cc:8554
+#: c-family/c-common.cc:8711
 #, gcc-internal-format
 msgid ""
 "this target does not define a speculation barrier; your program will still "
 "execute correctly, but incorrect speculation may not be restricted"
 msgstr ""
 
-#: c-family/c-common.cc:9252
+#: c-family/c-common.cc:9409
 #, gcc-internal-format
 msgid "index value is out of bound"
 msgstr ""
 
-#: c-family/c-common.cc:9298 c-family/c-common.cc:9347
-#: c-family/c-common.cc:9363
+#: c-family/c-common.cc:9455 c-family/c-common.cc:9504
+#: c-family/c-common.cc:9520
 #, gcc-internal-format
 msgid "conversion of scalar %qT to vector %qT involves truncation"
 msgstr ""
 
 #. Reject arguments that are built-in functions with
 #. no library fallback.
-#: c-family/c-common.cc:9451 d/intrinsics.cc:1459
-#: rust/backend/rust-tree.cc:3484
+#: c-family/c-common.cc:9608 d/intrinsics.cc:1459
+#: rust/backend/rust-tree.cc:3509
 #, gcc-internal-format
 msgid "built-in function %qE must be directly called"
 msgstr ""
 
-#: c-family/c-common.cc:9471
+#: c-family/c-common.cc:9628
 #, gcc-internal-format
 msgid "size of array %qE is not a constant expression"
 msgstr ""
 
-#: c-family/c-common.cc:9474
+#: c-family/c-common.cc:9631
 #, gcc-internal-format
 msgid "size of array is not a constant expression"
 msgstr ""
 
-#: c-family/c-common.cc:9478
+#: c-family/c-common.cc:9635
 #, gcc-internal-format
 msgid "size %qE of array %qE is negative"
 msgstr ""
 
-#: c-family/c-common.cc:9481
+#: c-family/c-common.cc:9638
 #, gcc-internal-format
 msgid "size %qE of array is negative"
 msgstr ""
 
-#: c-family/c-common.cc:9486
+#: c-family/c-common.cc:9643
 #, gcc-internal-format
 msgid "size %qE of array %qE exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.cc:9489
+#: c-family/c-common.cc:9646
 #, gcc-internal-format
 msgid "size %qE of array exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.cc:9494
+#: c-family/c-common.cc:9651
 #, gcc-internal-format
 msgid "size of array %qE exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.cc:9497
+#: c-family/c-common.cc:9654
 #, gcc-internal-format
 msgid "size of array exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.cc:9568
+#: c-family/c-common.cc:9725
 #, gcc-internal-format
 msgid ""
 "environment variable %qs must expand to a non-negative integer less than or "
 "equal to %wd"
 msgstr ""
 
-#: c-family/c-common.cc:9855
+#: c-family/c-common.cc:10012
 #, gcc-internal-format
 msgid "possible fix: take the address with %qs"
 msgstr ""
 
-#: c-family/c-common.cc:9865
+#: c-family/c-common.cc:10022
 #, gcc-internal-format
 msgid "possible fix: dereference with %qs"
 msgstr ""
 
-#: c-family/c-format.cc:199
+#: c-family/c-format.cc:201
 #, gcc-internal-format
 msgid "function does not return string type"
 msgstr ""
 
-#: c-family/c-format.cc:233
+#: c-family/c-format.cc:235
 #, gcc-internal-format
 msgid "format string argument is not a string type"
 msgstr ""
 
-#: c-family/c-format.cc:259
+#: c-family/c-format.cc:261
 #, gcc-internal-format
 msgid "found a %qs reference but the format argument should be a string"
 msgstr ""
 
-#: c-family/c-format.cc:262
+#: c-family/c-format.cc:264
 #, gcc-internal-format
 msgid "found a %qT but the format argument should be a string"
 msgstr ""
 
-#: c-family/c-format.cc:272
+#: c-family/c-format.cc:274
 #, gcc-internal-format
 msgid "format argument should be a %qs reference but a string was found"
 msgstr ""
 
-#: c-family/c-format.cc:294
+#: c-family/c-format.cc:296
 #, gcc-internal-format
 msgid "format argument should be a %qs reference"
 msgstr ""
 
-#: c-family/c-format.cc:348
+#: c-family/c-format.cc:350
 #, gcc-internal-format
 msgid "unrecognized format specifier"
 msgstr ""
 
-#: c-family/c-format.cc:361
+#: c-family/c-format.cc:363
 #, gcc-internal-format
 msgid "%qE is only allowed in Objective-C dialects"
 msgstr ""
 
-#: c-family/c-format.cc:370
+#: c-family/c-format.cc:372
 #, gcc-internal-format
 msgid "%qE is an unrecognized format function type"
 msgstr ""
 
-#: c-family/c-format.cc:388
+#: c-family/c-format.cc:390
 #, gcc-internal-format
 msgid "format string argument follows the arguments to be formatted"
 msgstr ""
 
-#: c-family/c-format.cc:1313
+#: c-family/c-format.cc:1316
 #, gcc-internal-format
 msgid "function %qD might be a candidate for %qs format attribute"
 msgstr ""
 
-#: c-family/c-format.cc:1404 c-family/c-format.cc:1425
-#: c-family/c-format.cc:2853
+#: c-family/c-format.cc:1407 c-family/c-format.cc:1428
+#: c-family/c-format.cc:2856
 #, gcc-internal-format
 msgid "missing $ operand number in format"
 msgstr ""
 
-#: c-family/c-format.cc:1434
+#: c-family/c-format.cc:1437
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support %%n$ operand number formats"
 msgstr ""
 
-#: c-family/c-format.cc:1441
+#: c-family/c-format.cc:1444
 #, gcc-internal-format
 msgid "operand number out of range in format"
 msgstr ""
 
-#: c-family/c-format.cc:1464
+#: c-family/c-format.cc:1467
 #, gcc-internal-format, gfc-internal-format
 msgid "format argument %d used more than once in %s format"
 msgstr ""
 
-#: c-family/c-format.cc:1497
+#: c-family/c-format.cc:1500
 #, gcc-internal-format
 msgid "%<$%>operand number used after format without operand number"
 msgstr ""
 
-#: c-family/c-format.cc:1528
+#: c-family/c-format.cc:1531
 #, gcc-internal-format
 msgid "format argument %d unused before used argument %d in %<$%>-style format"
 msgstr ""
 
-#: c-family/c-format.cc:1618
+#: c-family/c-format.cc:1621
 #, gcc-internal-format
 msgid "format not a string literal, format string not checked"
 msgstr ""
 
-#: c-family/c-format.cc:1633 c-family/c-format.cc:1636
+#: c-family/c-format.cc:1636 c-family/c-format.cc:1639
 #, gcc-internal-format
 msgid "format not a string literal and no format arguments"
 msgstr ""
 
-#: c-family/c-format.cc:1639
+#: c-family/c-format.cc:1642
 #, gcc-internal-format
 msgid "format not a string literal, argument types not checked"
 msgstr ""
 
-#: c-family/c-format.cc:1656
+#: c-family/c-format.cc:1659
 #, gcc-internal-format
 msgid "too many arguments for format"
 msgstr ""
 
-#: c-family/c-format.cc:1661
+#: c-family/c-format.cc:1664
 #, gcc-internal-format
 msgid "unused arguments in %<$%>-style format"
 msgstr ""
 
-#: c-family/c-format.cc:1664
+#: c-family/c-format.cc:1667
 #, gcc-internal-format, gfc-internal-format
 msgid "zero-length %s format string"
 msgstr ""
 
-#: c-family/c-format.cc:1668
+#: c-family/c-format.cc:1671
 #, gcc-internal-format
 msgid "format is a wide character string"
 msgstr ""
 
-#: c-family/c-format.cc:1672
+#: c-family/c-format.cc:1675
 #, gcc-internal-format
 msgid "format string is not an array of type %qs"
 msgstr ""
 
-#: c-family/c-format.cc:1675
+#: c-family/c-format.cc:1678
 #, gcc-internal-format
 msgid "unterminated format string"
 msgstr ""
 
-#: c-family/c-format.cc:2094
+#: c-family/c-format.cc:2097
 #, gcc-internal-format
 msgid "%s used with %<%%%c%> %s format"
 msgstr ""
 
-#: c-family/c-format.cc:2104
+#: c-family/c-format.cc:2107
 #, gcc-internal-format, gfc-internal-format
 msgid "%s does not support %s"
 msgstr ""
 
-#: c-family/c-format.cc:2114
+#: c-family/c-format.cc:2117
 #, gcc-internal-format
 msgid "%s does not support %s with the %<%%%c%> %s format"
 msgstr ""
 
-#: c-family/c-format.cc:2128
+#: c-family/c-format.cc:2131
 #, gcc-internal-format, gfc-internal-format
 msgid "%s used within a quoted sequence"
 msgstr ""
 
-#: c-family/c-format.cc:2141
+#: c-family/c-format.cc:2144
 #, gcc-internal-format
 msgid "%qc conversion used unquoted"
 msgstr ""
 
-#: c-family/c-format.cc:2261 c-family/c-format.cc:2592
+#: c-family/c-format.cc:2264 c-family/c-format.cc:2595
 #, gcc-internal-format, gfc-internal-format
 msgid "repeated %s in format"
 msgstr ""
 
-#: c-family/c-format.cc:2272
+#: c-family/c-format.cc:2275
 #, gcc-internal-format
 msgid "missing fill character at end of strfmon format"
 msgstr ""
 
-#: c-family/c-format.cc:2374
+#: c-family/c-format.cc:2377
 #, gcc-internal-format, gfc-internal-format
 msgid "zero width in %s format"
 msgstr ""
 
-#: c-family/c-format.cc:2397
+#: c-family/c-format.cc:2400
 #, gcc-internal-format, gfc-internal-format
 msgid "empty left precision in %s format"
 msgstr ""
 
-#: c-family/c-format.cc:2488
+#: c-family/c-format.cc:2491
 #, gcc-internal-format, gfc-internal-format
 msgid "empty precision in %s format"
 msgstr ""
 
-#: c-family/c-format.cc:2566
+#: c-family/c-format.cc:2569
 #, gcc-internal-format
 msgid "%s does not support the %qs %s length modifier"
 msgstr ""
 
-#: c-family/c-format.cc:2622
+#: c-family/c-format.cc:2625
 #, gcc-internal-format
 msgid "unknown conversion type character %qc in format"
 msgstr ""
 
-#: c-family/c-format.cc:2634
+#: c-family/c-format.cc:2637
 #, gcc-internal-format
 msgid "%s does not support the %<%%%c%> %s format"
 msgstr ""
 
-#: c-family/c-format.cc:2666
+#: c-family/c-format.cc:2669
 #, gcc-internal-format
 msgid "%s ignored with %s and %<%%%c%> %s format"
 msgstr ""
 
-#: c-family/c-format.cc:2671
+#: c-family/c-format.cc:2674
 #, gcc-internal-format, gfc-internal-format
 msgid "%s ignored with %s in %s format"
 msgstr ""
 
-#: c-family/c-format.cc:2678
+#: c-family/c-format.cc:2681
 #, gcc-internal-format
 msgid "use of %s and %s together with %<%%%c%> %s format"
 msgstr ""
 
-#: c-family/c-format.cc:2683
+#: c-family/c-format.cc:2686
 #, gcc-internal-format, gfc-internal-format
 msgid "use of %s and %s together in %s format"
 msgstr ""
 
-#: c-family/c-format.cc:2710
+#: c-family/c-format.cc:2713
 #, gcc-internal-format
 msgid "%<%%%c%> yields only last 2 digits of year in some locales"
 msgstr ""
 
-#: c-family/c-format.cc:2714
+#: c-family/c-format.cc:2717
 #, gcc-internal-format
 msgid "%<%%%c%> yields only last 2 digits of year"
 msgstr ""
 
-#: c-family/c-format.cc:2741
+#: c-family/c-format.cc:2744
 #, gcc-internal-format
 msgid "no closing %<]%> for %<%%[%> format"
 msgstr ""
 
-#: c-family/c-format.cc:2770
+#: c-family/c-format.cc:2773
 #, gcc-internal-format
 msgid ""
 "use of %qs length modifier with %qc type character has either no effect or "
 "undefined behavior"
 msgstr ""
 
-#: c-family/c-format.cc:2792
+#: c-family/c-format.cc:2795
 #, gcc-internal-format
 msgid "%s does not support the %<%%%s%c%> %s format"
 msgstr ""
 
-#: c-family/c-format.cc:2830
+#: c-family/c-format.cc:2833
 #, gcc-internal-format
 msgid "operand number specified with suppressed assignment"
 msgstr ""
 
-#: c-family/c-format.cc:2834
+#: c-family/c-format.cc:2837
 #, gcc-internal-format
 msgid "operand number specified for format taking no argument"
 msgstr ""
 
-#: c-family/c-format.cc:3184
+#: c-family/c-format.cc:3187
 #, gcc-internal-format
 msgid "unquoted type name %<%.*s%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3186
+#: c-family/c-format.cc:3189
 #, gcc-internal-format
 msgid "unquoted operator %<%.*s%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3187
+#: c-family/c-format.cc:3190
 #, gcc-internal-format
 msgid "unquoted keyword %<%.*s%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3190
+#: c-family/c-format.cc:3193
 #, gcc-internal-format
 msgid "use %qs instead"
 msgstr ""
 
-#: c-family/c-format.cc:3242
+#: c-family/c-format.cc:3245
 #, gcc-internal-format
 msgid "unquoted attribute in format"
 msgstr ""
 
-#: c-family/c-format.cc:3255
+#: c-family/c-format.cc:3258
 #, gcc-internal-format
 msgid "unquoted name of built-in function %<%.*s%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3269
+#: c-family/c-format.cc:3272
 #, gcc-internal-format
 msgid "unquoted identifier or keyword %<%.*s%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3303
+#: c-family/c-format.cc:3306
 #, gcc-internal-format
 msgid "misspelled term %<%.*s%> in format; use %<%s%s%> instead"
 msgstr ""
 
-#: c-family/c-format.cc:3347
+#: c-family/c-format.cc:3350
 #, gcc-internal-format
 msgid "quoted %qs directive in format; use %qs instead"
 msgstr ""
 
-#: c-family/c-format.cc:3354 c-family/c-format.cc:3625
+#: c-family/c-format.cc:3357 c-family/c-format.cc:3628
 #, gcc-internal-format
 msgid "contraction %<%.*s%> in format; use %qs instead"
 msgstr ""
 
-#: c-family/c-format.cc:3394
+#: c-family/c-format.cc:3397
 #, gcc-internal-format
 msgid "unquoted whitespace character %qc in format"
 msgstr ""
 
-#: c-family/c-format.cc:3407
+#: c-family/c-format.cc:3410
 #, gcc-internal-format
 msgid "spurious trailing space in format"
 msgstr ""
 
-#: c-family/c-format.cc:3428
+#: c-family/c-format.cc:3431
 #, gcc-internal-format
 msgid "inconsistent capitalization in format"
 msgstr ""
 
-#: c-family/c-format.cc:3435
+#: c-family/c-format.cc:3438
 #, gcc-internal-format, gfc-internal-format
 msgid "unquoted sequence of %i consecutive space characters in format"
 msgstr ""
 
-#: c-family/c-format.cc:3455
+#: c-family/c-format.cc:3458
 #, gcc-internal-format
 msgid "unquoted control characters in format"
 msgstr ""
 
-#: c-family/c-format.cc:3462
+#: c-family/c-format.cc:3465
 #, gcc-internal-format
 msgid "unquoted control character %qc in format"
 msgstr ""
 
-#: c-family/c-format.cc:3520
+#: c-family/c-format.cc:3523
 #, gcc-internal-format
 msgid "unquoted option name %<%.*s%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3580
+#: c-family/c-format.cc:3583
 #, gcc-internal-format
 msgid "unbalanced punctuation character %qc in format"
 msgstr ""
 
-#: c-family/c-format.cc:3599
+#: c-family/c-format.cc:3602
 #, gcc-internal-format
 msgid "unquoted preprocessing directive %<%.*s%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3635
+#: c-family/c-format.cc:3638
 #, gcc-internal-format
 msgid "bare apostrophe %<'%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3637
+#: c-family/c-format.cc:3640
 #, gcc-internal-format
 msgid ""
 "if avoiding the apostrophe is not feasible, enclose it in a pair of %qs and "
 "%qs directives instead"
 msgstr ""
 
-#: c-family/c-format.cc:3649
+#: c-family/c-format.cc:3652
 #, gcc-internal-format
 msgid "grave accent %<`%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3651
+#: c-family/c-format.cc:3654
 #, gcc-internal-format
 msgid "use the apostrophe directive %qs instead"
 msgstr ""
 
-#: c-family/c-format.cc:3663
+#: c-family/c-format.cc:3666
 #, gcc-internal-format
 msgid "space followed by punctuation character %<%c%>"
 msgstr ""
 
-#: c-family/c-format.cc:3674
+#: c-family/c-format.cc:3677
 #, gcc-internal-format
 msgid "quoted %qs directive in format"
 msgstr ""
 
-#: c-family/c-format.cc:3676
+#: c-family/c-format.cc:3679
 #, gcc-internal-format
 msgid "if using %qs is not feasible, use %qs instead"
 msgstr ""
 
-#: c-family/c-format.cc:3705
+#: c-family/c-format.cc:3708
 #, gcc-internal-format
 msgid "spurious leading punctuation sequence %<%.*s%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3745
+#: c-family/c-format.cc:3748
 #, gcc-internal-format
 msgid "spurious trailing punctuation sequence %<%.*s%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3762
+#: c-family/c-format.cc:3765
 #, gcc-internal-format
 msgid ""
 "unquoted sequence of %i consecutive punctuation characters %q.*s in format"
 msgstr ""
 
-#: c-family/c-format.cc:3782
+#: c-family/c-format.cc:3785
 #, gcc-internal-format
 msgid "unquoted non-graph characters in format"
 msgstr ""
 
-#: c-family/c-format.cc:3789
+#: c-family/c-format.cc:3792
 #, gcc-internal-format
 msgid "unquoted non-graph character %qc in format"
 msgstr ""
 
-#: c-family/c-format.cc:3821
+#: c-family/c-format.cc:3824
 #, gcc-internal-format
 msgid "unbalanced punctuation character %<%c%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3828
+#: c-family/c-format.cc:3831
 #, gcc-internal-format
 msgid "unterminated quoting directive"
 msgstr ""
 
-#: c-family/c-format.cc:3837
+#: c-family/c-format.cc:3840
 #, gcc-internal-format
 msgid "unterminated quote character %<%c%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3908
+#: c-family/c-format.cc:3911
 #, gcc-internal-format
 msgid "spurious trailing %<%%%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:3969
+#: c-family/c-format.cc:3972
 #, gcc-internal-format
 msgid "conversion lacks type at end of format"
 msgstr ""
 
-#: c-family/c-format.cc:3998
+#: c-family/c-format.cc:4001
 #, gcc-internal-format
 msgid "nested quoting directive"
 msgstr ""
 
-#: c-family/c-format.cc:4009
+#: c-family/c-format.cc:4012
 #, gcc-internal-format
 msgid "unmatched quoting directive"
 msgstr ""
 
-#: c-family/c-format.cc:4024
+#: c-family/c-format.cc:4027
 #, gcc-internal-format
 msgid "%qc directive redundant after prior occurence of the same"
 msgstr ""
 
-#: c-family/c-format.cc:4030
+#: c-family/c-format.cc:4033
 #, gcc-internal-format
 msgid "unmatched color reset directive"
 msgstr ""
 
-#: c-family/c-format.cc:4042
+#: c-family/c-format.cc:4045
 #, gcc-internal-format
 msgid "%qc conversion used within a quoted sequence"
 msgstr ""
 
-#: c-family/c-format.cc:4082
+#: c-family/c-format.cc:4085
 #, gcc-internal-format
 msgid "embedded %<\\0%> in format"
 msgstr ""
 
-#: c-family/c-format.cc:4098
+#: c-family/c-format.cc:4101
 #, gcc-internal-format
 msgid "unterminated color directive"
 msgstr ""
 
-#: c-family/c-format.cc:4246
+#: c-family/c-format.cc:4249
 #, gcc-internal-format, gfc-internal-format
 msgid "writing through null pointer (argument %d)"
 msgstr ""
 
-#: c-family/c-format.cc:4257
+#: c-family/c-format.cc:4260
 #, gcc-internal-format, gfc-internal-format
 msgid "reading through null pointer (argument %d)"
 msgstr ""
 
-#: c-family/c-format.cc:4277
+#: c-family/c-format.cc:4280
 #, gcc-internal-format, gfc-internal-format
 msgid "writing into constant object (argument %d)"
 msgstr ""
 
-#: c-family/c-format.cc:4289
+#: c-family/c-format.cc:4292
 #, gcc-internal-format, gfc-internal-format
 msgid "extra type qualifiers in format argument (argument %d)"
 msgstr ""
 
-#: c-family/c-format.cc:4910
+#: c-family/c-format.cc:4914
 msgid "%s %e expects argument of type %e, but argument %d has type %e"
 msgstr ""
 
-#: c-family/c-format.cc:4917
+#: c-family/c-format.cc:4921
 msgid "%s %e expects a matching %e argument"
 msgstr ""
 
-#: c-family/c-format.cc:4977 c-family/c-format.cc:4983
-#: c-family/c-format.cc:5037
+#: c-family/c-format.cc:4981 c-family/c-format.cc:4987
+#: c-family/c-format.cc:5041
 #, gcc-internal-format
 msgid "%<__gcc_host_wide_int__%> is not defined as a type"
 msgstr ""
 
-#: c-family/c-format.cc:4990 c-family/c-format.cc:5047
+#: c-family/c-format.cc:4994 c-family/c-format.cc:5051
 #, gcc-internal-format
 msgid "%<__gcc_host_wide_int__%> is not defined as %<long%> or %<long long%>"
 msgstr ""
 
-#: c-family/c-format.cc:5099
+#: c-family/c-format.cc:5103
 #, gcc-internal-format
 msgid "%<locus%> is not defined as a type"
 msgstr ""
 
-#: c-family/c-format.cc:5143
+#: c-family/c-format.cc:5147
 #, gcc-internal-format
 msgid "%qs is not defined as a type"
 msgstr ""
 
-#: c-family/c-format.cc:5169
+#: c-family/c-format.cc:5173
 #, gcc-internal-format
 msgid "%<location_t%> is not defined as a type"
 msgstr ""
 
-#: c-family/c-format.cc:5186
+#: c-family/c-format.cc:5190
 #, gcc-internal-format
 msgid "%<tree%> is not defined as a type"
 msgstr ""
 
-#: c-family/c-format.cc:5192
+#: c-family/c-format.cc:5196
 #, gcc-internal-format
 msgid "%<tree%> is not defined as a pointer type"
 msgstr ""
 
-#: c-family/c-format.cc:5383
+#: c-family/c-format.cc:5392
 #, gcc-internal-format
 msgid "argument to be formatted is not %<...%>"
 msgstr ""
 
-#: c-family/c-format.cc:5395
+#: c-family/c-format.cc:5404
 #, gcc-internal-format
 msgid "strftime formats cannot format arguments"
 msgstr ""
 
-#: c-family/c-indentation.cc:321
+#: c-family/c-indentation.cc:322
 #, gcc-internal-format
 msgid ""
 "%<-Wmisleading-indentation%> is disabled from this point onwards, since "
 "column-tracking was disabled due to the size of the code/headers"
 msgstr ""
 
-#: c-family/c-indentation.cc:656
+#: c-family/c-indentation.cc:660
 #, gcc-internal-format
 msgid "this %qs clause does not guard..."
 msgstr ""
 
-#: c-family/c-indentation.cc:659
+#: c-family/c-indentation.cc:663
 #, gcc-internal-format
 msgid ""
 "...this statement, but the latter is misleadingly indented as if it were "
@@ -38365,366 +39833,371 @@ msgstr ""
 msgid "badly nested C headers from preprocessor"
 msgstr ""
 
-#: c-family/c-lex.cc:267
+#: c-family/c-lex.cc:272
 #, gcc-internal-format
 msgid "ignoring %<#pragma %s %s%>"
 msgstr ""
 
 #. ... or not.
-#: c-family/c-lex.cc:685 c-family/c-lex.cc:1679
+#: c-family/c-lex.cc:690 c-family/c-lex.cc:1684
 #, gcc-internal-format
 msgid "stray %<@%> in program"
 msgstr ""
 
-#: c-family/c-lex.cc:700
+#: c-family/c-lex.cc:705
 #, gcc-internal-format
 msgid "stray %qs in program"
 msgstr ""
 
-#: c-family/c-lex.cc:710
+#: c-family/c-lex.cc:715
 #, gcc-internal-format, gfc-internal-format
 msgid "missing terminating %c character"
 msgstr ""
 
-#: c-family/c-lex.cc:712
+#: c-family/c-lex.cc:717
 #, gcc-internal-format
 msgid "stray %qc in program"
 msgstr ""
 
-#: c-family/c-lex.cc:717
+#: c-family/c-lex.cc:722
 #, gcc-internal-format
 msgid "stray %<\\%o%> in program"
 msgstr ""
 
-#: c-family/c-lex.cc:1082
+#: c-family/c-lex.cc:1087
 #, gcc-internal-format
 msgid "integer constant is too large for %<unsigned _BitInt(%d)%> type"
 msgstr ""
 
-#: c-family/c-lex.cc:1085
+#: c-family/c-lex.cc:1090
 #, gcc-internal-format
 msgid "integer constant is too large for %<_BitInt(%d)%> type"
 msgstr ""
 
-#: c-family/c-lex.cc:1093 c/c-decl.cc:12949
+#: c-family/c-lex.cc:1098 c/c-decl.cc:13043
 #, gcc-internal-format
 msgid "%<_BitInt(%d)%> is not supported on this target"
 msgstr ""
 
-#: c-family/c-lex.cc:1145
+#: c-family/c-lex.cc:1150
 #, gcc-internal-format
 msgid "this decimal constant is unsigned only in ISO C90"
 msgstr ""
 
-#: c-family/c-lex.cc:1149
+#: c-family/c-lex.cc:1154
 #, gcc-internal-format
 msgid "this decimal constant would be unsigned in ISO C90"
 msgstr ""
 
-#: c-family/c-lex.cc:1177
+#: c-family/c-lex.cc:1182
 #, gcc-internal-format
 msgid "integer constant is too large for %<unsigned long%> type"
 msgstr ""
 
-#: c-family/c-lex.cc:1217
+#: c-family/c-lex.cc:1222
 #, gcc-internal-format
 msgid "unsuffixed floating constant"
 msgstr ""
 
-#: c-family/c-lex.cc:1231
+#: c-family/c-lex.cc:1236 c/c-decl.cc:12963
 #, gcc-internal-format
 msgid "decimal floating-point not supported for this target"
 msgstr ""
 
-#: c-family/c-lex.cc:1256 c-family/c-lex.cc:1284 c-family/c-lex.cc:1322
+#: c-family/c-lex.cc:1261 c-family/c-lex.cc:1289 c-family/c-lex.cc:1327
 #, gcc-internal-format
 msgid "unsupported non-standard suffix on floating constant"
 msgstr ""
 
-#: c-family/c-lex.cc:1261 c-family/c-lex.cc:1315 c-family/c-lex.cc:1327
+#: c-family/c-lex.cc:1266 c-family/c-lex.cc:1320 c-family/c-lex.cc:1332
 #, gcc-internal-format
 msgid "non-standard suffix on floating constant"
 msgstr ""
 
-#: c-family/c-lex.cc:1293 c-family/c-lex.cc:1297 c-family/c-lex.cc:1302
+#: c-family/c-lex.cc:1298 c-family/c-lex.cc:1302 c-family/c-lex.cc:1307
 #, gcc-internal-format
 msgid "non-standard suffix on floating constant before C23"
 msgstr ""
 
-#: c-family/c-lex.cc:1309
+#: c-family/c-lex.cc:1314
 #, gcc-internal-format
 msgid ""
 "%<f%d%> or %<F%d%> suffix on floating constant only available with %<-std=c+"
 "+23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: c-family/c-lex.cc:1330
+#: c-family/c-lex.cc:1335
 #, gcc-internal-format
 msgid ""
 "%<bf16%> or %<BF16%> suffix on floating constant only available with %<-"
 "std=c++23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: c-family/c-lex.cc:1417 c-family/c-lex.cc:1420
+#: c-family/c-lex.cc:1422 c-family/c-lex.cc:1425
 #, gcc-internal-format
 msgid "floating constant exceeds range of %qT"
 msgstr ""
 
-#: c-family/c-lex.cc:1435
+#: c-family/c-lex.cc:1440
 #, gcc-internal-format
 msgid "floating constant truncated to zero"
 msgstr ""
 
-#: c-family/c-lex.cc:1636
+#: c-family/c-lex.cc:1641
 #, gcc-internal-format
 msgid "repeated %<@%> before Objective-C string"
 msgstr ""
 
-#: c-family/c-lex.cc:1655 c/c-parser.cc:9675
+#: c-family/c-lex.cc:1660 c/c-parser.cc:9867
 #, gcc-internal-format
 msgid "unsupported non-standard concatenation of string literals"
 msgstr ""
 
-#: c-family/c-lex.cc:1691 c/c-parser.cc:9696
+#: c-family/c-lex.cc:1696 c/c-parser.cc:9888
 #, gcc-internal-format
 msgid "traditional C rejects string constant concatenation"
 msgstr ""
 
-#: c-family/c-omp.cc:131 cp/pt.cc:19623
+#: c-family/c-omp.cc:136 cp/pt.cc:20217
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp critical%> with %<hint%> clause requires a name, except when "
 "%<omp_sync_hint_none%> is used"
 msgstr ""
 
-#: c-family/c-omp.cc:241
+#: c-family/c-omp.cc:246
 #, gcc-internal-format
 msgid "invalid expression type for %<#pragma omp atomic%>"
 msgstr ""
 
-#: c-family/c-omp.cc:246
+#: c-family/c-omp.cc:251
 #, gcc-internal-format
 msgid "%<_Atomic%> expression in %<#pragma omp atomic%>"
 msgstr ""
 
-#: c-family/c-omp.cc:251
+#: c-family/c-omp.cc:256
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp atomic compare capture%> with non-integral comparison result"
 msgstr ""
 
-#: c-family/c-omp.cc:540
+#: c-family/c-omp.cc:545
 #, gcc-internal-format
 msgid "%<#pragma omp atomic update%> uses two different variables for memory"
 msgstr ""
 
-#: c-family/c-omp.cc:543 c-family/c-omp.cc:581
+#: c-family/c-omp.cc:548 c-family/c-omp.cc:586
 #, gcc-internal-format
 msgid "%<#pragma omp atomic capture%> uses two different variables for memory"
 msgstr ""
 
-#: c-family/c-omp.cc:719
+#: c-family/c-omp.cc:724
 #, gcc-internal-format
 msgid "type of %<depobj%> expression is not %<omp_depend_t%>"
 msgstr ""
 
-#: c-family/c-omp.cc:725
+#: c-family/c-omp.cc:730
 #, gcc-internal-format
 msgid "%<const%> qualified %<depobj%> expression"
 msgstr ""
 
-#: c-family/c-omp.cc:750
+#: c-family/c-omp.cc:755
 #, gcc-internal-format
 msgid "more than one locator in %<depend%> clause on %<depobj%> construct"
 msgstr ""
 
-#: c-family/c-omp.cc:756
+#: c-family/c-omp.cc:761
 #, gcc-internal-format
 msgid ""
 "%<depobj%> dependence type specified in %<depend%> clause on %<depobj%> "
 "construct"
 msgstr ""
 
-#: c-family/c-omp.cc:772
+#: c-family/c-omp.cc:775
 #, gcc-internal-format
 msgid "%<iterator%> modifier may not be specified on %<depobj%> construct"
 msgstr ""
 
-#: c-family/c-omp.cc:1002 cp/semantics.cc:11611
+#: c-family/c-omp.cc:1005 cp/semantics.cc:12087
 #, gcc-internal-format
 msgid "invalid type for iteration variable %qE"
 msgstr ""
 
-#: c-family/c-omp.cc:1007
+#: c-family/c-omp.cc:1010
 #, gcc-internal-format
 msgid "%<_Atomic%> iteration variable %qE"
 msgstr ""
 
-#: c-family/c-omp.cc:1023
+#: c-family/c-omp.cc:1026
 #, gcc-internal-format
 msgid "%qE is not initialized"
 msgstr ""
 
-#: c-family/c-omp.cc:1044 cp/semantics.cc:11495
+#: c-family/c-omp.cc:1047 cp/semantics.cc:11971
 #, gcc-internal-format
 msgid "missing controlling predicate"
 msgstr ""
 
-#: c-family/c-omp.cc:1150 cp/semantics.cc:11086
+#: c-family/c-omp.cc:1153 cp/semantics.cc:11562
 #, gcc-internal-format
 msgid "invalid controlling predicate"
 msgstr ""
 
-#: c-family/c-omp.cc:1157 cp/semantics.cc:11501
+#: c-family/c-omp.cc:1160 cp/semantics.cc:11977
 #, gcc-internal-format
 msgid "missing increment expression"
 msgstr ""
 
-#: c-family/c-omp.cc:1258 c-family/c-omp.cc:1276
+#: c-family/c-omp.cc:1261 c-family/c-omp.cc:1279
 #, gcc-internal-format
 msgid "increment is not constant 1 or -1 for %<!=%> condition"
 msgstr ""
 
-#: c-family/c-omp.cc:1289 cp/semantics.cc:11203
+#: c-family/c-omp.cc:1292 cp/semantics.cc:11679
 #, gcc-internal-format
 msgid "invalid increment expression"
 msgstr ""
 
-#: c-family/c-omp.cc:1389
+#: c-family/c-omp.cc:1392
 #, gcc-internal-format
 msgid "initializer expression refers to iteration variable %qD"
 msgstr ""
 
-#: c-family/c-omp.cc:1393
+#: c-family/c-omp.cc:1396
 #, gcc-internal-format
 msgid "condition expression refers to iteration variable %qD"
 msgstr ""
 
-#: c-family/c-omp.cc:1397
+#: c-family/c-omp.cc:1400
 #, gcc-internal-format
 msgid "increment expression refers to iteration variable %qD"
 msgstr ""
 
-#: c-family/c-omp.cc:1575
+#: c-family/c-omp.cc:1578
 #, gcc-internal-format
 msgid ""
 "outer iteration variable %qD used in initializer expression has type other "
 "than %qT"
 msgstr ""
 
-#: c-family/c-omp.cc:1579
+#: c-family/c-omp.cc:1582
 #, gcc-internal-format
 msgid ""
 "outer iteration variable %qD used in condition expression has type other "
 "than %qT"
 msgstr ""
 
-#: c-family/c-omp.cc:1586
+#: c-family/c-omp.cc:1589
 #, gcc-internal-format
 msgid "outer iteration variable %qD multiplier expression %qE is not integral"
 msgstr ""
 
-#: c-family/c-omp.cc:1592
+#: c-family/c-omp.cc:1595
 #, gcc-internal-format
 msgid "outer iteration variable %qD addend expression %qE is not integral"
 msgstr ""
 
-#: c-family/c-omp.cc:1731 c-family/c-omp.cc:1825
+#: c-family/c-omp.cc:1734 c-family/c-omp.cc:1828
 #, gcc-internal-format
 msgid "the same loop iteration variables %qD used in multiple associated loops"
 msgstr ""
 
-#: c-family/c-omp.cc:1766
+#: c-family/c-omp.cc:1769
 #, gcc-internal-format
 msgid ""
 "two different outer iteration variables %qD and %qD used in a single loop"
 msgstr ""
 
-#: c-family/c-omp.cc:1775
+#: c-family/c-omp.cc:1778
 #, gcc-internal-format
 msgid "non-rectangular loops from generated loops unsupported"
 msgstr ""
 
-#: c-family/c-omp.cc:1939
+#: c-family/c-omp.cc:1942
 #, gcc-internal-format
 msgid "variable %qD used as loop variable is bound in intervening code"
 msgstr ""
 
-#: c-family/c-omp.cc:1943
+#: c-family/c-omp.cc:1946
 #, gcc-internal-format
 msgid "variable %qD used in initializer is bound in intervening code"
 msgstr ""
 
-#: c-family/c-omp.cc:1947
+#: c-family/c-omp.cc:1950
 #, gcc-internal-format
 msgid "variable %qD used in end test is bound in intervening code"
 msgstr ""
 
-#: c-family/c-omp.cc:1951
+#: c-family/c-omp.cc:1954
 #, gcc-internal-format
 msgid "variable %qD used in increment expression is bound in intervening code"
 msgstr ""
 
-#: c-family/c-omp.cc:1977
+#: c-family/c-omp.cc:1980
 #, gcc-internal-format
 msgid "imperfectly nested loop using generated loops"
 msgstr ""
 
-#: c-family/c-omp.cc:2561
+#: c-family/c-omp.cc:2567
 #, gcc-internal-format
 msgid ""
 "invalid %<task%> reduction modifier on construct combined with %<simd%> or "
 "%<loop%>"
 msgstr ""
 
-#: c-family/c-omp.cc:2572
+#: c-family/c-omp.cc:2578
 #, gcc-internal-format
 msgid ""
 "invalid %<task%> reduction modifier on construct not combined with "
 "%<parallel%>, %<for%> or %<sections%>"
 msgstr ""
 
-#: c-family/c-omp.cc:2585
+#: c-family/c-omp.cc:2591
 #, gcc-internal-format
 msgid ""
 "%<inscan%> %<reduction%> clause on construct other than %<for%>, %<simd%>, "
 "%<for simd%>, %<parallel for%>, %<parallel for simd%>"
 msgstr ""
 
-#: c-family/c-omp.cc:3072 c/c-typeck.cc:17691 cp/semantics.cc:10176
+#: c-family/c-omp.cc:3078 c/c-typeck.cc:18397 cp/semantics.cc:10590
 #, gcc-internal-format
 msgid ""
 "%qD specified in %<allocate%> clause but not in an explicit privatization "
 "clause"
 msgstr ""
 
-#: c-family/c-omp.cc:3164 c-family/c-omp.cc:3179 c/c-parser.cc:27067
-#: cp/parser.cc:50503
+#: c-family/c-omp.cc:3170 c-family/c-omp.cc:3185 c/c-parser.cc:28136
+#: cp/parser.cc:53711
 #, gcc-internal-format
 msgid "%qD is not a function argument"
 msgstr ""
 
-#: c-family/c-omp.cc:3460 c/c-typeck.cc:16778 cp/semantics.cc:8766
+#: c-family/c-omp.cc:3466 c/c-typeck.cc:17468 cp/semantics.cc:9162
 #, gcc-internal-format
 msgid "bit-field %qE in %qs clause"
 msgstr ""
 
-#: c-family/c-omp.cc:3468
+#: c-family/c-omp.cc:3474
 #, gcc-internal-format
 msgid "%qE does not have a mappable type in %qs clause"
 msgstr ""
 
-#: c-family/c-omp.cc:3476 c/c-typeck.cc:15178 c/c-typeck.cc:16867
-#: c/c-typeck.cc:17055
+#: c-family/c-omp.cc:3482 c/c-typeck.cc:15730 c/c-typeck.cc:17567
+#: c/c-typeck.cc:17755
 #, gcc-internal-format
 msgid "%<_Atomic%> %qE in %qs clause"
 msgstr ""
 
-#: c-family/c-omp.cc:3501
+#: c-family/c-omp.cc:3507
 #, gcc-internal-format
 msgid "%qE is a member of a union"
 msgstr ""
 
+#: c-family/c-omp.cc:4357 c-family/c-omp.cc:4478 c-family/c-omp.cc:4572
+#, gcc-internal-format
+msgid "mapper %qE not found for type %qT"
+msgstr ""
+
 #: c-family/c-opts.cc:348
 #, gcc-internal-format
 msgid "%<-I-%> specified twice"
@@ -38755,145 +40228,133 @@ msgstr ""
 msgid "invalid argument %qs to %<-fsearch-include-path%>"
 msgstr ""
 
-#: c-family/c-opts.cc:927
+#: c-family/c-opts.cc:941
 #, gcc-internal-format
 msgid "%<-fno-gnu89-inline%> is only supported in GNU99 or C99 mode"
 msgstr ""
 
-#: c-family/c-opts.cc:973
+#: c-family/c-opts.cc:996
 #, gcc-internal-format
 msgid "%<-Wformat-y2k%> ignored without %<-Wformat%>"
 msgstr ""
 
-#: c-family/c-opts.cc:975
+#: c-family/c-opts.cc:998
 #, gcc-internal-format
 msgid "%<-Wformat-extra-args%> ignored without %<-Wformat%>"
 msgstr ""
 
-#: c-family/c-opts.cc:977
+#: c-family/c-opts.cc:1000
 #, gcc-internal-format
 msgid "%<-Wformat-zero-length%> ignored without %<-Wformat%>"
 msgstr ""
 
-#: c-family/c-opts.cc:979
+#: c-family/c-opts.cc:1002
 #, gcc-internal-format
 msgid "%<-Wformat-nonliteral%> ignored without %<-Wformat%>"
 msgstr ""
 
-#: c-family/c-opts.cc:981
+#: c-family/c-opts.cc:1004
 #, gcc-internal-format
 msgid "%<-Wformat-contains-nul%> ignored without %<-Wformat%>"
 msgstr ""
 
-#: c-family/c-opts.cc:983
+#: c-family/c-opts.cc:1006
 #, gcc-internal-format
 msgid "%<-Wformat-security%> ignored without %<-Wformat%>"
 msgstr ""
 
-#: c-family/c-opts.cc:1081
+#: c-family/c-opts.cc:1104
 #, gcc-internal-format
 msgid "%<-fabi-compat-version=1%> is not supported, using =2"
 msgstr ""
 
-#: c-family/c-opts.cc:1108
+#: c-family/c-opts.cc:1117
 #, gcc-internal-format
-msgid "%<-Wabi%> won%'t warn about anything"
+msgid "%<-fabi-version=%d%> is not supported, using =%d"
 msgstr ""
 
-#: c-family/c-opts.cc:1110
-#, gcc-internal-format
-msgid ""
-"%<-Wabi%> warns about differences from the most up-to-date ABI, which is "
-"also used by default"
-msgstr ""
-
-#: c-family/c-opts.cc:1113
-#, gcc-internal-format
-msgid "use e.g. %<-Wabi=11%> to warn about changes from GCC 7"
-msgstr ""
-
-#: c-family/c-opts.cc:1198
+#: c-family/c-opts.cc:1226
 #, gcc-internal-format
 msgid "external TLS initialization functions not supported on this target"
 msgstr ""
 
-#: c-family/c-opts.cc:1226
+#: c-family/c-opts.cc:1269
 #, gcc-internal-format
 msgid "too many filenames given; type %<%s %s%> for usage"
 msgstr ""
 
-#: c-family/c-opts.cc:1240
+#: c-family/c-opts.cc:1283
 #, gcc-internal-format
 msgid "opening output file %s: %m"
 msgstr ""
 
-#: c-family/c-opts.cc:1258
+#: c-family/c-opts.cc:1301
 #, gcc-internal-format
 msgid "the %qs debug info cannot be used with pre-compiled headers"
 msgstr ""
 
-#: c-family/c-opts.cc:1424 c-family/c-opts.cc:1445
+#: c-family/c-opts.cc:1467 c-family/c-opts.cc:1488
 #, gcc-internal-format
 msgid "opening dependency file %s: %m"
 msgstr ""
 
-#: c-family/c-opts.cc:1449
+#: c-family/c-opts.cc:1492
 #, gcc-internal-format
 msgid "%<-MF%> and %<-fdeps-file=%> cannot share an output file %s: %m"
 msgstr ""
 
-#: c-family/c-opts.cc:1459
+#: c-family/c-opts.cc:1502
 #, gcc-internal-format
 msgid "closing dependency file %s: %m"
 msgstr ""
 
-#: c-family/c-opts.cc:1462
+#: c-family/c-opts.cc:1505
 #, gcc-internal-format
 msgid "when writing output to %s: %m"
 msgstr ""
 
-#: c-family/c-opts.cc:1540
+#: c-family/c-opts.cc:1583
 #, gcc-internal-format
 msgid "to generate dependencies you must specify either %<-M%> or %<-MM%>"
 msgstr ""
 
-#: c-family/c-opts.cc:1564
+#: c-family/c-opts.cc:1607
 #, gcc-internal-format
 msgid "%<-MG%> may only be used with %<-M%> or %<-MM%>"
 msgstr ""
 
-#: c-family/c-opts.cc:1597
+#: c-family/c-opts.cc:1640
 #, gcc-internal-format
 msgid "%<-fdirectives-only%> is incompatible with %<-Wunused-macros%>"
 msgstr ""
 
-#: c-family/c-opts.cc:1600
+#: c-family/c-opts.cc:1643
 #, gcc-internal-format
 msgid "%<-fdirectives-only%> is incompatible with %<-traditional%>"
 msgstr ""
 
-#: c-family/c-opts.cc:1702
+#: c-family/c-opts.cc:1746
 #, gcc-internal-format
 msgid ""
 "%<_FORTIFY_SOURCE%> is not enabled by %<-fhardened%> because optimizations "
 "are turned off"
 msgstr ""
 
-#: c-family/c-opts.cc:1706
+#: c-family/c-opts.cc:1750
 #, gcc-internal-format
 msgid ""
 "%<_FORTIFY_SOURCE%> is not enabled by %<-fhardened%> because it was "
 "specified in %<-D%> or %<-U%>"
 msgstr ""
 
-#: c-family/c-opts.cc:1712
+#: c-family/c-opts.cc:1756
 #, gcc-internal-format
 msgid ""
 "%<_GLIBCXX_ASSERTIONS%> is not enabled by %<-fhardened%> because it was "
 "specified in %<-D%> or %<-U%>"
 msgstr ""
 
-#: c-family/c-opts.cc:1836
+#: c-family/c-opts.cc:1880
 #, gcc-internal-format
 msgid "too late for # directive to set debug directory"
 msgstr ""
@@ -39164,168 +40625,168 @@ msgstr ""
 msgid "option %qs is valid for %s but not for %s"
 msgstr ""
 
-#: c-family/c-pragma.cc:1054
+#: c-family/c-pragma.cc:1055
 #, gcc-internal-format
 msgid "%<#pragma GCC option%> is not allowed inside functions"
 msgstr ""
 
-#: c-family/c-pragma.cc:1066
+#: c-family/c-pragma.cc:1067
 #, gcc-internal-format
 msgid "%<#pragma GCC option%> is not a string"
 msgstr ""
 
-#: c-family/c-pragma.cc:1091
+#: c-family/c-pragma.cc:1092
 #, gcc-internal-format
 msgid ""
 "%<#pragma GCC target (string [,string]...)%> does not have a final %<)%>"
 msgstr ""
 
-#: c-family/c-pragma.cc:1097
+#: c-family/c-pragma.cc:1098
 #, gcc-internal-format
 msgid "%<#pragma GCC target%> string is badly formed"
 msgstr ""
 
-#: c-family/c-pragma.cc:1126
+#: c-family/c-pragma.cc:1127
 #, gcc-internal-format
 msgid "%<#pragma GCC optimize%> is not allowed inside functions"
 msgstr ""
 
-#: c-family/c-pragma.cc:1138
+#: c-family/c-pragma.cc:1139
 #, gcc-internal-format
 msgid "%<#pragma GCC optimize%> is not a string or number"
 msgstr ""
 
-#: c-family/c-pragma.cc:1162
+#: c-family/c-pragma.cc:1163
 #, gcc-internal-format
 msgid ""
 "%<#pragma GCC optimize (string [,string]...)%> does not have a final %<)%>"
 msgstr ""
 
-#: c-family/c-pragma.cc:1168
+#: c-family/c-pragma.cc:1169
 #, gcc-internal-format
 msgid "%<#pragma GCC optimize%> string is badly formed"
 msgstr ""
 
-#: c-family/c-pragma.cc:1211
+#: c-family/c-pragma.cc:1212
 #, gcc-internal-format
 msgid "junk at end of %<#pragma GCC push_options%>"
 msgstr ""
 
-#: c-family/c-pragma.cc:1248
+#: c-family/c-pragma.cc:1249
 #, gcc-internal-format
 msgid "junk at end of %<#pragma GCC pop_options%>"
 msgstr ""
 
-#: c-family/c-pragma.cc:1255
+#: c-family/c-pragma.cc:1256
 #, gcc-internal-format
 msgid ""
 "%<#pragma GCC pop_options%> without a corresponding %<#pragma GCC "
 "push_options%>"
 msgstr ""
 
-#: c-family/c-pragma.cc:1329
+#: c-family/c-pragma.cc:1330
 #, gcc-internal-format
 msgid "junk at end of %<#pragma reset_options%>"
 msgstr ""
 
-#: c-family/c-pragma.cc:1350 c-family/c-pragma.cc:1360
+#: c-family/c-pragma.cc:1351 c-family/c-pragma.cc:1361
 #, gcc-internal-format
 msgid "expected a string after %<#pragma message%>"
 msgstr ""
 
-#: c-family/c-pragma.cc:1352
+#: c-family/c-pragma.cc:1353
 #, gcc-internal-format
 msgid "malformed %<#pragma message%>, ignored"
 msgstr ""
 
-#: c-family/c-pragma.cc:1357 cp/parser.cc:4770 cp/parser.cc:4866
+#: c-family/c-pragma.cc:1358 cp/parser.cc:4897 cp/parser.cc:4993
 #, gcc-internal-format
 msgid "string literal with user-defined suffix is invalid in this context"
 msgstr ""
 
-#: c-family/c-pragma.cc:1365
+#: c-family/c-pragma.cc:1366
 #, gcc-internal-format
 msgid "junk at end of %<#pragma message%>"
 msgstr ""
 
-#: c-family/c-pragma.cc:1368
+#: c-family/c-pragma.cc:1369
 #, gcc-internal-format
 msgid "%<#pragma message: %s%>"
 msgstr ""
 
-#: c-family/c-pragma.cc:1412
+#: c-family/c-pragma.cc:1413
 #, gcc-internal-format
 msgid "invalid location for %<pragma %s%>, ignored"
 msgstr ""
 
-#: c-family/c-pragma.cc:1419 c-family/c-pragma.cc:1433
+#: c-family/c-pragma.cc:1420 c-family/c-pragma.cc:1434
 #, gcc-internal-format
 msgid "malformed %<#pragma %s%>, ignored"
 msgstr ""
 
-#: c-family/c-pragma.cc:1439 cp/lex.cc:636
+#: c-family/c-pragma.cc:1440 cp/lex.cc:694
 #, gcc-internal-format
 msgid "junk at end of %<#pragma %s%>"
 msgstr ""
 
-#: c-family/c-pragma.cc:1457
+#: c-family/c-pragma.cc:1458
 #, gcc-internal-format
 msgid "%<#pragma STDC FLOAT_CONST_DECIMAL64%> is not supported for C++"
 msgstr ""
 
-#: c-family/c-pragma.cc:1466
+#: c-family/c-pragma.cc:1467
 #, gcc-internal-format
 msgid "%<#pragma STDC FLOAT_CONST_DECIMAL64%> is not supported on this target"
 msgstr ""
 
-#: c-family/c-pragma.cc:1472
+#: c-family/c-pragma.cc:1473
 #, gcc-internal-format
 msgid "ISO C does not support %<#pragma STDC FLOAT_CONST_DECIMAL64%>"
 msgstr ""
 
-#: c-family/c-pretty-print.cc:345
+#: c-family/c-pretty-print.cc:339
 #, gcc-internal-format
 msgid "<type-error>"
 msgstr ""
 
-#: c-family/c-pretty-print.cc:388
+#: c-family/c-pretty-print.cc:382
 #, gcc-internal-format
 msgid "<unnamed-unsigned:"
 msgstr ""
 
-#: c-family/c-pretty-print.cc:392
+#: c-family/c-pretty-print.cc:386
 #, gcc-internal-format
 msgid "<unnamed-float:"
 msgstr ""
 
-#: c-family/c-pretty-print.cc:395
+#: c-family/c-pretty-print.cc:389
 #, gcc-internal-format
 msgid "<unnamed-fixed:"
 msgstr ""
 
-#: c-family/c-pretty-print.cc:427
+#: c-family/c-pretty-print.cc:421
 #, gcc-internal-format
 msgid "<typedef-error>"
 msgstr ""
 
-#: c-family/c-pretty-print.cc:442
+#: c-family/c-pretty-print.cc:436
 #, gcc-internal-format
 msgid "<tag-error>"
 msgstr ""
 
-#: c-family/c-pretty-print.cc:1368
+#: c-family/c-pretty-print.cc:1362
 #, gcc-internal-format
 msgid "<erroneous-expression>"
 msgstr ""
 
-#: c-family/c-pretty-print.cc:1372 cp/cxx-pretty-print.cc:134
+#: c-family/c-pretty-print.cc:1366 cp/cxx-pretty-print.cc:133
 #, gcc-internal-format
 msgid "<return-value>"
 msgstr ""
 
-#: c-family/c-pretty-print.cc:2862 c-family/c-pretty-print.cc:2882
-#: c-family/c-pretty-print.cc:2897 c-family/c-pretty-print.cc:2914
-#: c-family/c-pretty-print.cc:2945 c-family/c-pretty-print.cc:2959
+#: c-family/c-pretty-print.cc:2856 c-family/c-pretty-print.cc:2876
+#: c-family/c-pretty-print.cc:2891 c-family/c-pretty-print.cc:2908
+#: c-family/c-pretty-print.cc:2939 c-family/c-pretty-print.cc:2953
 #, gcc-internal-format
 msgid "dump flags not handled here"
 msgstr ""
@@ -39335,9 +40796,9 @@ msgstr ""
 msgid "wrong type argument to %s"
 msgstr ""
 
-#: c-family/c-warn.cc:60 c-family/c-warn.cc:73 cp/constexpr.cc:3721
-#: cp/constexpr.cc:7715 m2/gm2-gcc/m2expr.cc:965
-#: rust/backend/rust-constexpr.cc:1908 rust/backend/rust-constexpr.cc:4331
+#: c-family/c-warn.cc:60 c-family/c-warn.cc:73 cp/constexpr.cc:4881
+#: cp/constexpr.cc:9156 m2/gm2-gcc/m2expr.cc:869
+#: rust/backend/rust-constexpr.cc:1960 rust/backend/rust-constexpr.cc:4551
 #, gcc-internal-format
 msgid "overflow in constant expression"
 msgstr ""
@@ -39741,170 +41202,167 @@ msgid ""
 "explicit middle operand"
 msgstr ""
 
-#: c-family/c-warn.cc:1866 rust/checks/errors/rust-readonly-check.cc:47
+#: c-family/c-warn.cc:1866
 #, gcc-internal-format
 msgid "assignment of member %qD in read-only object"
 msgstr ""
 
-#: c-family/c-warn.cc:1868 rust/checks/errors/rust-readonly-check.cc:49
+#: c-family/c-warn.cc:1868
 #, gcc-internal-format
 msgid "increment of member %qD in read-only object"
 msgstr ""
 
-#: c-family/c-warn.cc:1870 rust/checks/errors/rust-readonly-check.cc:51
+#: c-family/c-warn.cc:1870
 #, gcc-internal-format
 msgid "decrement of member %qD in read-only object"
 msgstr ""
 
-#: c-family/c-warn.cc:1872 rust/checks/errors/rust-readonly-check.cc:53
+#: c-family/c-warn.cc:1872
 #, gcc-internal-format
 msgid "member %qD in read-only object used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.cc:1876 rust/checks/errors/rust-readonly-check.cc:59
+#: c-family/c-warn.cc:1876
 #, gcc-internal-format
 msgid "assignment of read-only member %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1877 rust/checks/errors/rust-readonly-check.cc:60
+#: c-family/c-warn.cc:1877
 #, gcc-internal-format
 msgid "increment of read-only member %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1878 rust/checks/errors/rust-readonly-check.cc:61
+#: c-family/c-warn.cc:1878
 #, gcc-internal-format
 msgid "decrement of read-only member %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1879 rust/checks/errors/rust-readonly-check.cc:62
+#: c-family/c-warn.cc:1879
 #, gcc-internal-format
 msgid "read-only member %qD used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.cc:1883 rust/checks/errors/rust-readonly-check.cc:67
+#: c-family/c-warn.cc:1883
 #, gcc-internal-format
 msgid "assignment of read-only variable %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1884 rust/checks/errors/rust-readonly-check.cc:68
+#: c-family/c-warn.cc:1884
 #, gcc-internal-format
 msgid "increment of read-only variable %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1885 rust/checks/errors/rust-readonly-check.cc:69
+#: c-family/c-warn.cc:1885
 #, gcc-internal-format
 msgid "decrement of read-only variable %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1886 rust/checks/errors/rust-readonly-check.cc:71
+#: c-family/c-warn.cc:1886
 #, gcc-internal-format
 msgid "read-only variable %qD used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.cc:1889 rust/checks/errors/rust-readonly-check.cc:75
+#: c-family/c-warn.cc:1889
 #, gcc-internal-format
 msgid "assignment of read-only parameter %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1890 rust/checks/errors/rust-readonly-check.cc:76
+#: c-family/c-warn.cc:1890
 #, gcc-internal-format
 msgid "increment of read-only parameter %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1891 rust/checks/errors/rust-readonly-check.cc:77
+#: c-family/c-warn.cc:1891
 #, gcc-internal-format
 msgid "decrement of read-only parameter %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1892 rust/checks/errors/rust-readonly-check.cc:79
+#: c-family/c-warn.cc:1892
 #, gcc-internal-format
 msgid "read-only parameter %qD use as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.cc:1897 rust/checks/errors/rust-readonly-check.cc:84
+#: c-family/c-warn.cc:1897
 #, gcc-internal-format
 msgid "assignment of read-only named return value %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1899 rust/checks/errors/rust-readonly-check.cc:86
+#: c-family/c-warn.cc:1899
 #, gcc-internal-format
 msgid "increment of read-only named return value %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1901 rust/checks/errors/rust-readonly-check.cc:88
+#: c-family/c-warn.cc:1901
 #, gcc-internal-format
 msgid "decrement of read-only named return value %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1903 rust/checks/errors/rust-readonly-check.cc:90
+#: c-family/c-warn.cc:1903
 #, gcc-internal-format
 msgid "read-only named return value %qD used as %<asm%>output"
 msgstr ""
 
-#: c-family/c-warn.cc:1908 rust/checks/errors/rust-readonly-check.cc:96
+#: c-family/c-warn.cc:1908
 #, gcc-internal-format
 msgid "assignment of function %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1909 rust/checks/errors/rust-readonly-check.cc:97
+#: c-family/c-warn.cc:1909
 #, gcc-internal-format
 msgid "increment of function %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1910 rust/checks/errors/rust-readonly-check.cc:98
+#: c-family/c-warn.cc:1910
 #, gcc-internal-format
 msgid "decrement of function %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1911 rust/checks/errors/rust-readonly-check.cc:99
+#: c-family/c-warn.cc:1911
 #, gcc-internal-format
 msgid "function %qD used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.cc:1914 c/c-typeck.cc:5841
-#: rust/checks/errors/rust-readonly-check.cc:103
+#: c-family/c-warn.cc:1914 c/c-typeck.cc:6323
 #, gcc-internal-format
 msgid "assignment of read-only location %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1915 c/c-typeck.cc:5844
-#: rust/checks/errors/rust-readonly-check.cc:104
+#: c-family/c-warn.cc:1915 c/c-typeck.cc:6326
 #, gcc-internal-format
 msgid "increment of read-only location %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1916 c/c-typeck.cc:5847
-#: rust/checks/errors/rust-readonly-check.cc:105
+#: c-family/c-warn.cc:1916 c/c-typeck.cc:6329
 #, gcc-internal-format
 msgid "decrement of read-only location %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1917 rust/checks/errors/rust-readonly-check.cc:107
+#: c-family/c-warn.cc:1917
 #, gcc-internal-format
 msgid "read-only location %qE used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.cc:1931 rust/backend/rust-tree.cc:5970
+#: c-family/c-warn.cc:1931 rust/backend/rust-tree.cc:6008
 #, gcc-internal-format
 msgid "lvalue required as left operand of assignment"
 msgstr ""
 
-#: c-family/c-warn.cc:1934 rust/backend/rust-tree.cc:5973
+#: c-family/c-warn.cc:1934 rust/backend/rust-tree.cc:6011
 #, gcc-internal-format
 msgid "lvalue required as increment operand"
 msgstr ""
 
-#: c-family/c-warn.cc:1937 rust/backend/rust-tree.cc:5976
+#: c-family/c-warn.cc:1937 rust/backend/rust-tree.cc:6014
 #, gcc-internal-format
 msgid "lvalue required as decrement operand"
 msgstr ""
 
-#: c-family/c-warn.cc:1940 rust/backend/rust-tree.cc:5979
+#: c-family/c-warn.cc:1940 rust/backend/rust-tree.cc:6017
 #, gcc-internal-format
 msgid "lvalue required as unary %<&%> operand"
 msgstr ""
 
-#: c-family/c-warn.cc:1943 rust/backend/rust-tree.cc:5982
+#: c-family/c-warn.cc:1943 rust/backend/rust-tree.cc:6020
 #, gcc-internal-format
 msgid "lvalue required in %<asm%> statement"
 msgstr ""
@@ -40159,7 +41617,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: c-family/c-warn.cc:2934 c/c-typeck.cc:6465 cp/call.cc:6527
+#: c-family/c-warn.cc:2934 c/c-typeck.cc:6963 cp/call.cc:6602
 #, gcc-internal-format
 msgid "this condition has identical branches"
 msgstr ""
@@ -40187,61 +41645,61 @@ msgid_plural "mismatch in bounds %Z of argument %u declared as %s"
 msgstr[0] ""
 msgstr[1] ""
 
-#: c-family/c-warn.cc:3411 c-family/c-warn.cc:3770
+#: c-family/c-warn.cc:3411 c-family/c-warn.cc:3725
 #, gcc-internal-format, gfc-internal-format
 msgid "previously declared as %s"
 msgstr ""
 
-#: c-family/c-warn.cc:3545
+#: c-family/c-warn.cc:3503
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u of type %s declared as a variable length array"
 msgstr ""
 
-#: c-family/c-warn.cc:3550
+#: c-family/c-warn.cc:3508
 #, gcc-internal-format, gfc-internal-format
 msgid "previously declared as a pointer %s"
 msgstr ""
 
-#: c-family/c-warn.cc:3551
+#: c-family/c-warn.cc:3509
 #, gcc-internal-format, gfc-internal-format
 msgid "previously declared as an ordinary array %s"
 msgstr ""
 
-#: c-family/c-warn.cc:3564 c-family/c-warn.cc:3578
+#: c-family/c-warn.cc:3522 c-family/c-warn.cc:3535
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u of type %s declared as a pointer"
 msgstr ""
 
-#: c-family/c-warn.cc:3568 c-family/c-warn.cc:3594
+#: c-family/c-warn.cc:3525 c-family/c-warn.cc:3548
 #, gcc-internal-format, gfc-internal-format
 msgid "previously declared as a variable length array %s"
 msgstr ""
 
-#: c-family/c-warn.cc:3581
+#: c-family/c-warn.cc:3537
 #, gcc-internal-format, gfc-internal-format
 msgid "previously declared as an array %s"
 msgstr ""
 
-#: c-family/c-warn.cc:3590
+#: c-family/c-warn.cc:3546
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u of type %s declared as an ordinary array"
 msgstr ""
 
-#: c-family/c-warn.cc:3618
+#: c-family/c-warn.cc:3572
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u of type %s declared with %u variable bound"
 msgid_plural "argument %u of type %s declared with %u variable bounds"
 msgstr[0] ""
 msgstr[1] ""
 
-#: c-family/c-warn.cc:3625
+#: c-family/c-warn.cc:3579
 #, gcc-internal-format, gfc-internal-format
 msgid "previously declared as %s with %u variable bound"
 msgid_plural "previously declared as %s with %u variable bounds"
 msgstr[0] ""
 msgstr[1] ""
 
-#: c-family/c-warn.cc:3639
+#: c-family/c-warn.cc:3593
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u of type %s declared with %u unspecified variable bound"
 msgid_plural ""
@@ -40249,110 +41707,110 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: c-family/c-warn.cc:3647
+#: c-family/c-warn.cc:3601
 #, gcc-internal-format, gfc-internal-format
 msgid "previously declared as %s with %u unspecified variable bound"
 msgid_plural "previously declared as %s with %u unspecified variable bounds"
 msgstr[0] ""
 msgstr[1] ""
 
-#: c-family/c-warn.cc:3654
+#: c-family/c-warn.cc:3608
 #, gcc-internal-format, gfc-internal-format
 msgid "subsequently declared as %s with %u unspecified variable bound"
 msgid_plural "subsequently declared as %s with %u unspecified variable bounds"
 msgstr[0] ""
 msgstr[1] ""
 
-#: c-family/c-warn.cc:3705
+#: c-family/c-warn.cc:3659
 #, gcc-internal-format
 msgid "argument %u of type %s declared with mismatched bound argument %E"
 msgstr ""
 
-#: c-family/c-warn.cc:3712 c-family/c-warn.cc:3746
+#: c-family/c-warn.cc:3666 c-family/c-warn.cc:3701
 #, gcc-internal-format
 msgid "argument %u of type %s declared with mismatched bound %qs"
 msgstr ""
 
-#: c-family/c-warn.cc:3724
+#: c-family/c-warn.cc:3679
 #, gcc-internal-format
 msgid "previously declared as %s with bound argument %E"
 msgstr ""
 
-#: c-family/c-warn.cc:3729 c-family/c-warn.cc:3749
+#: c-family/c-warn.cc:3684 c-family/c-warn.cc:3704
 #, gcc-internal-format
 msgid "previously declared as %s with bound %qs"
 msgstr ""
 
-#: c-family/c-warn.cc:3768
+#: c-family/c-warn.cc:3723
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u of type %s with mismatched bound"
 msgstr ""
 
-#: c-family/c-warn.cc:3799
+#: c-family/c-warn.cc:3813
 #, gcc-internal-format
 msgid ""
 "expression does not compute the number of elements in this array; element "
 "type is %qT, not %qT"
 msgstr ""
 
-#: c-family/c-warn.cc:3809
+#: c-family/c-warn.cc:3823
 #, gcc-internal-format
 msgid "add parentheses around %qE to silence this warning"
 msgstr ""
 
-#: c-family/c-warn.cc:3813
+#: c-family/c-warn.cc:3827
 #, gcc-internal-format
 msgid "add parentheses around the second %<sizeof%> to silence this warning"
 msgstr ""
 
-#: c-family/c-warn.cc:3845
+#: c-family/c-warn.cc:3859
 #, gcc-internal-format
 msgid "comparison between two arrays is not allowed in C++26"
 msgstr ""
 
-#: c-family/c-warn.cc:3849
+#: c-family/c-warn.cc:3863
 #, gcc-internal-format
 msgid "comparison between two arrays is deprecated in C++20"
 msgstr ""
 
-#: c-family/c-warn.cc:3852
+#: c-family/c-warn.cc:3866
 #, gcc-internal-format
 msgid "comparison between two arrays"
 msgstr ""
 
-#: c-family/c-warn.cc:3857
+#: c-family/c-warn.cc:3871
 #, gcc-internal-format
 msgid ""
 "use unary %<+%> which decays operands to pointers or %<&%s%E%s[0] %s "
 "&%s%E%s[0]%> to compare the addresses"
 msgstr ""
 
-#: c-family/c-warn.cc:3864
+#: c-family/c-warn.cc:3878
 #, gcc-internal-format
 msgid "use %<&%s%E%s[0] %s &%s%E%s[0]%> to compare the addresses"
 msgstr ""
 
-#: c-family/c-warn.cc:3926
+#: c-family/c-warn.cc:3940
 #, gcc-internal-format
 msgid "result of %<%wu^%wu%> is %wu; did you mean %<1 << %wu%> (%wu)?"
 msgstr ""
 
-#: c-family/c-warn.cc:3936
+#: c-family/c-warn.cc:3950
 #, gcc-internal-format
 msgid "result of %<%wu^%wu%> is %wu; did you mean %<1LL << %wu%>?"
 msgstr ""
 
-#: c-family/c-warn.cc:3943
+#: c-family/c-warn.cc:3957
 #, gcc-internal-format
 msgid "result of %<%wu^%wu%> is %wu; did you mean exponentiation?"
 msgstr ""
 
-#: c-family/c-warn.cc:3954
+#: c-family/c-warn.cc:3968
 #, gcc-internal-format
 msgid "result of %<%wu^%wu%> is %wu; did you mean %<1e%wu%>?"
 msgstr ""
 
-#: c-family/c-warn.cc:3971
+#: c-family/c-warn.cc:3985
 #, gcc-internal-format
 msgid ""
 "you can silence this warning by using a hexadecimal constant (%wx rather "
@@ -40376,73 +41834,78 @@ msgid ""
 "%s%>"
 msgstr ""
 
-#: c-family/known-headers.cc:350
+#: c-family/known-headers.cc:351
 #, gcc-internal-format
 msgid ""
 "%qs is defined when using option %qs; this is probably fixable by adding %qs "
 "to the command-line options"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.cc:235
+#: c-family/known-headers.cc:372
+#, gcc-internal-format
+msgid "%qs is a function-like macro and might be used incorrectly"
+msgstr ""
+
+#: common/config/aarch64/aarch64-common.cc:244
 #: common/config/arm/arm-common.cc:378 common/config/arm/arm-common.cc:442
 #: common/config/arm/arm-common.cc:489
 #, gcc-internal-format
 msgid "valid arguments are: %s; did you mean %qs?"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.cc:238
+#: common/config/aarch64/aarch64-common.cc:247
 #: common/config/arm/arm-common.cc:381 common/config/arm/arm-common.cc:445
 #: common/config/arm/arm-common.cc:492
 #, gcc-internal-format, gfc-internal-format
 msgid "valid arguments are: %s"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.cc:514
+#: common/config/aarch64/aarch64-common.cc:523
 #, gcc-internal-format
 msgid "missing arch name in %<-march=%s%>"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.cc:518
+#: common/config/aarch64/aarch64-common.cc:527
 #, gcc-internal-format
 msgid "unknown value %qs for %<-march%>"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.cc:527
+#: common/config/aarch64/aarch64-common.cc:536
 #, gcc-internal-format
 msgid "did you mean %<-mcpu=%s%>?"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.cc:531
+#: common/config/aarch64/aarch64-common.cc:540
 #, gcc-internal-format
 msgid "invalid feature modifier %qs in %<-march=%s%>"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.cc:561
+#: common/config/aarch64/aarch64-common.cc:570
 #, gcc-internal-format
 msgid "missing cpu name in %<-mcpu=%s%>"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.cc:565
+#: common/config/aarch64/aarch64-common.cc:574
 #, gcc-internal-format
 msgid "unknown value %qs for %<-mcpu%>"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.cc:575
+#: common/config/aarch64/aarch64-common.cc:584
 #, gcc-internal-format
 msgid "did you mean %<-march=%s%>?"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.cc:579
+#: common/config/aarch64/aarch64-common.cc:588
 #, gcc-internal-format
 msgid "invalid feature modifier %qs in %<-mcpu=%s%>"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.cc:607
+#: common/config/aarch64/aarch64-common.cc:616
 #, gcc-internal-format
 msgid "missing cpu name in %<-mtune=%s%>"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.cc:610
+#: common/config/aarch64/aarch64-common.cc:619
 #, gcc-internal-format
 msgid "unknown value %qs for %<-mtune%>"
 msgstr ""
@@ -40517,21 +41980,21 @@ msgstr ""
 msgid "unrecognized operand to %%:%<asm_auto_mfpu%>"
 msgstr ""
 
-#: common/config/avr/avr-common.cc:94
+#: common/config/avr/avr-common.cc:101
 #, gcc-internal-format
 msgid ""
 "option %<-mdouble=64%> is only available if configured %<--with-double={64|"
 "64,32|32,64}%>"
 msgstr ""
 
-#: common/config/avr/avr-common.cc:102
+#: common/config/avr/avr-common.cc:109
 #, gcc-internal-format
 msgid ""
 "option %<-mdouble=32%> is only available if configured %<--with-double={32|"
 "32,64|64,32}%>"
 msgstr ""
 
-#: common/config/avr/avr-common.cc:118
+#: common/config/avr/avr-common.cc:125
 #, gcc-internal-format
 msgid ""
 "option %<-mlong-double=64%> is only available if configured %<--with-long-"
@@ -40539,7 +42002,7 @@ msgid ""
 "%<--with-double={64|64,32|32,64}%>"
 msgstr ""
 
-#: common/config/avr/avr-common.cc:127
+#: common/config/avr/avr-common.cc:134
 #, gcc-internal-format
 msgid ""
 "option %<-mlong-double=32%> is only available if configured %<--with-long-"
@@ -40562,47 +42025,47 @@ msgstr ""
 msgid "%<-mcpu=%s%> has invalid silicon revision"
 msgstr ""
 
-#: common/config/i386/i386-common.cc:1994
+#: common/config/i386/i386-common.cc:1990
 #, gcc-internal-format
 msgid "%<-malign-loops%> is obsolete, use %<-falign-loops%>"
 msgstr ""
 
-#: common/config/i386/i386-common.cc:1997
+#: common/config/i386/i386-common.cc:1993
 #, gcc-internal-format
 msgid "%<-malign-loops=%d%> is not between 0 and %d"
 msgstr ""
 
-#: common/config/i386/i386-common.cc:2004
+#: common/config/i386/i386-common.cc:2000
 #, gcc-internal-format
 msgid "%<-malign-jumps%> is obsolete, use %<-falign-jumps%>"
 msgstr ""
 
-#: common/config/i386/i386-common.cc:2007
+#: common/config/i386/i386-common.cc:2003
 #, gcc-internal-format
 msgid "%<-malign-jumps=%d%> is not between 0 and %d"
 msgstr ""
 
-#: common/config/i386/i386-common.cc:2015
+#: common/config/i386/i386-common.cc:2011
 #, gcc-internal-format
 msgid "%<-malign-functions%> is obsolete, use %<-falign-functions%>"
 msgstr ""
 
-#: common/config/i386/i386-common.cc:2018
+#: common/config/i386/i386-common.cc:2014
 #, gcc-internal-format
 msgid "%<-malign-functions=%d%> is not between 0 and %d"
 msgstr ""
 
-#: common/config/i386/i386-common.cc:2027
+#: common/config/i386/i386-common.cc:2023
 #, gcc-internal-format
 msgid "%<-mbranch-cost=%d%> is not between 0 and 5"
 msgstr ""
 
-#: common/config/i386/i386-common.cc:2091 common/config/s390/s390-common.cc:141
+#: common/config/i386/i386-common.cc:2087 common/config/s390/s390-common.cc:141
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> currently only supported on GNU/Linux"
 msgstr ""
 
-#: common/config/i386/i386-common.cc:2101
+#: common/config/i386/i386-common.cc:2097
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> requires assembler support for CFI directives"
 msgstr ""
@@ -40629,130 +42092,172 @@ msgid ""
 "64, 128, 256, or 512"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:734
+#: common/config/riscv/riscv-common.cc:545
 #, gcc-internal-format
 msgid "%<-march=%s%>: extension %qs appear more than one time"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:743
+#: common/config/riscv/riscv-common.cc:554
 #, gcc-internal-format
 msgid ""
 "%<-march=%s%>: extension %qs is unsupported standard single letter extension"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:751
+#: common/config/riscv/riscv-common.cc:563
 #, gcc-internal-format
 msgid ""
 "%<-march=%s%>: extension %qs starts with 'z' but is unsupported standard "
 "extension"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:759
+#: common/config/riscv/riscv-common.cc:572
 #, gcc-internal-format
 msgid ""
 "%<-march=%s%>: extension %qs starts with 's' but is unsupported standard "
 "supervisor extension"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:767
+#: common/config/riscv/riscv-common.cc:581
 #, gcc-internal-format
 msgid ""
 "%<-march=%s%>: extension %qs starts with 'x' but is unsupported non-standard "
 "extension"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1036
+#: common/config/riscv/riscv-common.cc:846
 #, gcc-internal-format
 msgid "%<-march=%s%>: expect number after %<%dp%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1042
+#: common/config/riscv/riscv-common.cc:853
 #, gcc-internal-format
 msgid ""
 "%<-march=%s%>: for %<%s%dp%dp?%>, version number with more than 2 level is "
 "not supported"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1100
+#: common/config/riscv/riscv-common.cc:919
+#, gcc-internal-format, gfc-internal-format
+msgid "Should use \"%c\" to contact Profiles with other extensions"
+msgstr ""
+
+#: common/config/riscv/riscv-common.cc:959
 #, gcc-internal-format
-msgid "%<-march=%s%>: ISA string must begin with rv32 or rv64"
+msgid ""
+"%<-march=%s%>: ISA string must begin with rv32, rv64, a supported RVA "
+"profile or refer to a supported CPU"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1124
+#: common/config/riscv/riscv-common.cc:985
 #, gcc-internal-format
 msgid "%<-march=%s%>: rv%de is not a valid base ISA"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1136
+#: common/config/riscv/riscv-common.cc:998
 #, gcc-internal-format
 msgid ""
 "version of %<g%> will be omitted, please specify version for individual "
 "extension"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1155
+#: common/config/riscv/riscv-common.cc:1018
 #, gcc-internal-format
 msgid "%<-march=%s%>: first ISA subset must be %<e%>, %<i%> or %<g%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1178
+#: common/config/riscv/riscv-common.cc:1041
 #, gcc-internal-format
 msgid "%<-march=%s%>: Not single-letter extension. %<%c%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1309
+#: common/config/riscv/riscv-common.cc:1152
 #, gcc-internal-format
 msgid "%<-march=%s%>: zcf extension supports in rv32 only"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1314
+#: common/config/riscv/riscv-common.cc:1156
+#, gcc-internal-format
+msgid "%<-march=%s%>: zilsd extension supports in rv32 only"
+msgstr ""
+
+#: common/config/riscv/riscv-common.cc:1160
+#, gcc-internal-format
+msgid "%<-march=%s%>: zclsd extension supports in rv32 only"
+msgstr ""
+
+#: common/config/riscv/riscv-common.cc:1164
+#, gcc-internal-format
+msgid "%<-march=%s%>: ssnpm extension supports in rv64 only"
+msgstr ""
+
+#: common/config/riscv/riscv-common.cc:1168
+#, gcc-internal-format
+msgid "%<-march=%s%>: smnpm extension supports in rv64 only"
+msgstr ""
+
+#: common/config/riscv/riscv-common.cc:1172
+#, gcc-internal-format
+msgid "%<-march=%s%>: smmpm extension supports in rv64 only"
+msgstr ""
+
+#: common/config/riscv/riscv-common.cc:1176
+#, gcc-internal-format
+msgid "%<-march=%s%>: sspm extension supports in rv64 only"
+msgstr ""
+
+#: common/config/riscv/riscv-common.cc:1180
+#, gcc-internal-format
+msgid "%<-march=%s%>: supm extension supports in rv64 only"
+msgstr ""
+
+#: common/config/riscv/riscv-common.cc:1185
 #, gcc-internal-format
 msgid "%<-march=%s%>: z*inx conflicts with floating-point extensions"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1320
+#: common/config/riscv/riscv-common.cc:1191
 #, gcc-internal-format
 msgid "%<-march=%s%>: h extension requires i extension"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1325
+#: common/config/riscv/riscv-common.cc:1197
 #, gcc-internal-format
 msgid "%<-march=%s%>: zcd conflicts with zcmt"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1327
+#: common/config/riscv/riscv-common.cc:1199
 #, gcc-internal-format
 msgid "%<-march=%s%>: zcd conflicts with zcmp"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1336
+#: common/config/riscv/riscv-common.cc:1208
 #, gcc-internal-format
 msgid ""
 "%<-march=%s%>: xtheadvector conflicts with vector extension or its sub-"
 "extensions"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1433
+#: common/config/riscv/riscv-common.cc:1306
 #, gcc-internal-format
 msgid "%<-march=%s%>: name of %s must be more than 1 letter"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1445
+#: common/config/riscv/riscv-common.cc:1319
 #, gcc-internal-format
 msgid "%<-march=%s%>: %s must separate with %<_%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1507
+#: common/config/riscv/riscv-common.cc:1386
 #, gcc-internal-format
 msgid "%<-march=%s%>: i, e or g must be the first extension"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1995
+#: common/config/riscv/riscv-common.cc:1721
 #, gcc-internal-format
 msgid "%<-mcpu=%s%>: unknown CPU"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:2074
+#: common/config/riscv/riscv-common.cc:1808
 #, gcc-internal-format
 msgid "Cannot find suitable multilib set for %<-march=%s%>/%<-mabi=%s%>"
 msgstr ""
@@ -40860,159 +42365,159 @@ msgstr ""
 msgid "subframework include %s conflicts with framework include"
 msgstr ""
 
-#: config/darwin-c.cc:709
+#: config/darwin-c.cc:710
 #, gcc-internal-format
 msgid "unknown value %qs of %<-mmacosx-version-min%>"
 msgstr ""
 
-#: config/darwin-driver.cc:147
+#: config/darwin-driver.cc:148
 #, gcc-internal-format
 msgid "%<sysctl%> for %<kern.osversion%> failed: %m"
 msgstr ""
 
-#: config/darwin-driver.cc:186
+#: config/darwin-driver.cc:188
 #, gcc-internal-format
 msgid "could not understand %<kern.osversion%> %q.*s"
 msgstr ""
 
-#: config/darwin-driver.cc:226
+#: config/darwin-driver.cc:228
 #, gcc-internal-format
 msgid "could not understand version %qs"
 msgstr ""
 
-#: config/darwin-driver.cc:300
+#: config/darwin-driver.cc:302
 #, gcc-internal-format
 msgid "this compiler does not support %qs"
 msgstr ""
 
-#: config/darwin-driver.cc:326
+#: config/darwin-driver.cc:328
 #, gcc-internal-format
 msgid "%qs is not valid for %<-mmacosx-version-min%>"
 msgstr ""
 
-#: config/darwin-driver.cc:377
+#: config/darwin-driver.cc:379
 #, gcc-internal-format
 msgid "this compiler does not support PowerPC (%<-arch%> option ignored)"
 msgstr ""
 
-#: config/darwin-driver.cc:384
+#: config/darwin-driver.cc:386
 #, gcc-internal-format
 msgid "%qs conflicts with %<-arch i386%> (%qs ignored)"
 msgstr ""
 
-#: config/darwin-driver.cc:393
+#: config/darwin-driver.cc:395
 #, gcc-internal-format
 msgid "%<-m32%> conflicts with %<-arch x86_64%> (%<-m32%> ignored)"
 msgstr ""
 
-#: config/darwin-driver.cc:400
+#: config/darwin-driver.cc:402
 #, gcc-internal-format
 msgid "this compiler does not support x86 (%<-arch%> option ignored)"
 msgstr ""
 
-#: config/darwin-driver.cc:407
+#: config/darwin-driver.cc:409
 #, gcc-internal-format
 msgid "%qs conflicts with %<-arch ppc%> (%qs ignored)"
 msgstr ""
 
-#: config/darwin-driver.cc:416
+#: config/darwin-driver.cc:418
 #, gcc-internal-format
 msgid "%<-m32%> conflicts with %<-arch ppc64%> (%<-m32%> ignored)"
 msgstr ""
 
-#: config/darwin.cc:2089
+#: config/darwin.cc:2139
 #, gcc-internal-format, gfc-internal-format
 msgid "failed to open temporary file %s for LTO output"
 msgstr ""
 
-#: config/darwin.cc:2181
+#: config/darwin.cc:2231
 #, gcc-internal-format
 msgid ""
 "%qE 2.95 vtable-compatibility attribute applies only when compiling a kext"
 msgstr ""
 
-#: config/darwin.cc:2188
+#: config/darwin.cc:2238
 #, gcc-internal-format
 msgid "%qE 2.95 vtable-compatibility attribute applies only to C++ classes"
 msgstr ""
 
-#: config/darwin.cc:2781 config/darwin.cc:2845
+#: config/darwin.cc:2831 config/darwin.cc:2895
 #, gcc-internal-format
 msgid "common variables must have an alignment of 32678 or less"
 msgstr ""
 
-#: config/darwin.cc:2935
+#: config/darwin.cc:2985
 #, gcc-internal-format
 msgid ""
 "protected visibility attribute not supported in this configuration; ignored"
 msgstr ""
 
-#: config/darwin.cc:3178
+#: config/darwin.cc:3228
 #, gcc-internal-format, gfc-internal-format
 msgid "failed to open temporary file %s with LTO output"
 msgstr ""
 
-#: config/darwin.cc:3408
+#: config/darwin.cc:3463
 #, gcc-internal-format
 msgid ""
 "%<-fobjc-abi-version%> 2 must be used for 64 bit targets with %<-fnext-"
 "runtime%>"
 msgstr ""
 
-#: config/darwin.cc:3413
+#: config/darwin.cc:3468
 #, gcc-internal-format
 msgid ""
 "%<-fobjc-abi-version%> %d is not supported for 32 bit targets with %<-fnext-"
 "runtime%>"
 msgstr ""
 
-#: config/darwin.cc:3435
+#: config/darwin.cc:3490
 #, gcc-internal-format
 msgid "%<-gsplit-dwarf%> is not supported on this platform, ignored"
 msgstr ""
 
-#: config/darwin.cc:3449
+#: config/darwin.cc:3504
 #, gcc-internal-format
 msgid "%<-g3%> is not supported by the debug linker in use (set to 2)"
 msgstr ""
 
-#: config/darwin.cc:3541
+#: config/darwin.cc:3596
 #, gcc-internal-format
 msgid ""
 "%<-mdynamic-no-pic%> overrides %<-fpic%>, %<-fPIC%>, %<-fpie%> or %<-fPIE%>"
 msgstr ""
 
-#: config/darwin.cc:3584
+#: config/darwin.cc:3639
 #, gcc-internal-format
 msgid "%<-mpic-symbol-stubs%> is not required for 64-bit code (ignored)"
 msgstr ""
 
-#: config/darwin.cc:3787
+#: config/darwin.cc:3842
 #, gcc-internal-format
 msgid "built-in function %qD requires the %<-mconstant-cfstrings%> flag"
 msgstr ""
 
-#: config/darwin.cc:3794
+#: config/darwin.cc:3849
 #, gcc-internal-format
 msgid "built-in function %qD takes one argument only"
 msgstr ""
 
-#: config/darwin.cc:3838
+#: config/darwin.cc:3893
 #, gcc-internal-format
 msgid "CFString literal is missing"
 msgstr ""
 
-#: config/darwin.cc:3849
+#: config/darwin.cc:3904
 #, gcc-internal-format
 msgid "CFString literal expression is not a string constant"
 msgstr ""
 
-#: config/darwin.cc:3873
+#: config/darwin.cc:3928
 #, gcc-internal-format
 msgid "non-ASCII character in CFString literal"
 msgstr ""
 
-#: config/darwin.cc:3874
+#: config/darwin.cc:3929
 #, gcc-internal-format
 msgid "embedded NUL in CFString literal"
 msgstr ""
@@ -41087,122 +42592,297 @@ msgstr ""
 msgid "PIC is only supported for RTPs"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2538 config/arm/arm-mve-builtins.cc:621
+#: config/aarch64/aarch64-builtins.cc:2672 config/arm/arm-mve-builtins.cc:601
 #, gcc-internal-format
 msgid "ACLE function %qD requires ISA extension %qs"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2540 config/aarch64/aarch64.cc:11462
-#: config/aarch64/aarch64.cc:18764 config/aarch64/aarch64.cc:19379
+#: config/aarch64/aarch64-builtins.cc:2674 config/aarch64/aarch64.cc:12168
+#: config/aarch64/aarch64.cc:19671 config/aarch64/aarch64.cc:20307
 #, gcc-internal-format
 msgid ""
 "you can enable %qs using the command-line option %<-march%>, or by using the "
 "%<target%> attribute or pragma"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2556
+#: config/aarch64/aarch64-builtins.cc:2690
 #, gcc-internal-format
 msgid "ACLE function %qD is incompatible with the use of %qs"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2574
+#: config/aarch64/aarch64-builtins.cc:2708
 #, gcc-internal-format
 msgid "ACLE function %qD can only be called when SME streaming mode is enabled"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2584
+#: config/aarch64/aarch64-builtins.cc:2718
 #, gcc-internal-format
 msgid "ACLE function %qD cannot be called when SME streaming mode is enabled"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2605
+#: config/aarch64/aarch64-builtins.cc:2739
 #, gcc-internal-format
 msgid "ACLE function %qD can only be called from a function that has %qs state"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2844
+#: config/aarch64/aarch64-builtins.cc:2978
 #, gcc-internal-format
 msgid "first argument to %qD must be a string literal"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2977
-#: config/aarch64/aarch64-builtins.cc:3211 config/arm/arm-builtins.cc:2949
+#: config/aarch64/aarch64-builtins.cc:3111
+#: config/aarch64/aarch64-builtins.cc:3345 config/arm/arm-builtins.cc:2250
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %d must be a constant immediate"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:3049 config/arm/arm-builtins.cc:3297
+#: config/aarch64/aarch64-builtins.cc:3183 config/arm/arm-builtins.cc:2586
 #, gcc-internal-format
 msgid "lane index must be a constant immediate"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:3053
+#: config/aarch64/aarch64-builtins.cc:3187
 #, gcc-internal-format
 msgid "total size and element size must be a nonzero constant immediate"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:3299
+#: config/aarch64/aarch64-builtins.cc:3433
 #, gcc-internal-format
 msgid "argument must be a 16-bit constant immediate"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:3422
+#: config/aarch64/aarch64-builtins.cc:3556
 #, gcc-internal-format
 msgid "128-bit system register support requires the %<d128%> extension"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:3437
+#: config/aarch64/aarch64-builtins.cc:3571
 #, gcc-internal-format
 msgid "invalid system register name provided"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:3451
+#: config/aarch64/aarch64-builtins.cc:3585
 #, gcc-internal-format
 msgid "invalid system register name %qs"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:3532
+#: config/aarch64/aarch64-builtins.cc:3666
 #, gcc-internal-format
 msgid "Constant-type argument expected"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:3538
+#: config/aarch64/aarch64-builtins.cc:3672
 #, gcc-internal-format
 msgid "argument %d must be a constant immediate in range [%wd,%wd]"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:3617
+#: config/aarch64/aarch64-builtins.cc:3751
 #, gcc-internal-format
 msgid "Memory Tagging Extension does not support %<-mabi=ilp32%>"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:3652
+#: config/aarch64/aarch64-builtins.cc:3786
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %d must be a constant immediate in range [0,15]"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:5355
-#: config/aarch64/aarch64-builtins.cc:5375
+#: config/aarch64/aarch64-builtins.cc:5728
+#: config/aarch64/aarch64-builtins.cc:5748
 #, gcc-internal-format, gfc-internal-format
 msgid "expected 64-bit address but argument 1 is %d-bit"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:5359
+#: config/aarch64/aarch64-builtins.cc:5732
 #, gcc-internal-format, gfc-internal-format
 msgid "expected 64-bit address but argument 2 is %d-bit"
 msgstr ""
 
-#: config/aarch64/aarch64-c.cc:375
+#: config/aarch64/aarch64-c.cc:400
 #, gcc-internal-format
 msgid "%<#pragma GCC aarch64%> requires a string parameter"
 msgstr ""
 
-#: config/aarch64/aarch64-c.cc:391
+#: config/aarch64/aarch64-c.cc:416
 #, gcc-internal-format
 msgid "unknown %<#pragma GCC aarch64%> option %qs"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:1728
+#: config/aarch64/aarch64-json-tunings-parser.cc:122
+#, gcc-internal-format
+msgid ""
+"static storage conflict - multiple pointer members of the same type cannot "
+"be parsed"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:139
+#, gcc-internal-format
+msgid "expected a string but got something else or NULL"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:153
+#, gcc-internal-format
+msgid "expected an integer value but got something else or NULL"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:168
+#, gcc-internal-format
+msgid "expected an unsigned integer value but got something else or NULL"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:182
+#, gcc-internal-format
+msgid "expected a boolean value but got something else or NULL"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:206
+#, gcc-internal-format, gfc-internal-format
+msgid "expected string for enum field %s"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:221
+#, gcc-internal-format
+msgid "%s not recognized, defaulting to %qs"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:246
+#, gcc-internal-format
+msgid "key %qs is not a tuning parameter, skipping"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:261
+#, gcc-internal-format
+msgid "key %qs expected to be an object"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:269
+#, gcc-internal-format
+msgid "key %qs expected to be an array"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:282
+#, gcc-internal-format
+msgid "key %qs expected to be an integer"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:293
+#, gcc-internal-format
+msgid "key %qs value %ld is out of range for %<int%> type [%d, %d]"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:304
+#, gcc-internal-format
+msgid "key %qs expected to be an unsigned integer"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:315
+#, gcc-internal-format
+msgid "key %qs value %ld is out of range for %<uint%> type [0, %u]"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:326
+#, gcc-internal-format
+msgid "key %qs expected to be a string"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:335
+#, gcc-internal-format
+msgid "key %qs expected to be a boolean (true/false)"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:344
+#, gcc-internal-format
+msgid "key %qs expected to be an enum (string)"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:351
+#, gcc-internal-format
+msgid "key %qs has unsupported type"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:357
+#, gcc-internal-format
+msgid "key %qs has unexpected format in schema"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:371
+#, gcc-internal-format, gfc-internal-format
+msgid "could not open file %s"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:383
+#, gcc-internal-format, gfc-internal-format
+msgid "error reading file %s"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:415
+#, gcc-internal-format
+msgid ""
+"JSON tuning file does not contain version information; compatibility cannot "
+"be verified"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:422
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"JSON tuning file was created with GCC version %d but current GCC version is "
+"%d"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:425
+#, gcc-internal-format
+msgid ""
+"JSON tuning files must be regenerated when switching between major GCC "
+"versions"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:446
+#, gcc-internal-format, gfc-internal-format
+msgid "error parsing JSON data: %s"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:453
+#, gcc-internal-format
+msgid "JSON parsing returned null data"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:459
+#, gcc-internal-format
+msgid "no JSON object found in the provided data"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:481
+#, gcc-internal-format
+msgid "key %<tune_params%> not found in JSON data"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:488
+#, gcc-internal-format
+msgid "key %<tune_params%> is not a JSON object"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:494
+#, gcc-internal-format
+msgid "validation failed for the provided JSON data"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:507
+#, gcc-internal-format
+msgid ""
+"JSON tuning enables dispatch scheduling but %<dispatch_constraints%> is not "
+"available; disabling dispatch scheduling"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-parser.cc:524
+#, gcc-internal-format, gfc-internal-format
+msgid "cannot read JSON data in %s"
+msgstr ""
+
+#: config/aarch64/aarch64-json-tunings-printer.cc:139
+#, gcc-internal-format, gfc-internal-format
+msgid "Error opening file %s"
+msgstr ""
+
+#: config/aarch64/aarch64-sve-builtins.cc:1754
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects a single SVE vector rather "
@@ -41210,9 +42890,9 @@ msgid ""
 msgstr ""
 
 #. num_vectors is always != 1, so the singular isn't needed.
-#: config/aarch64/aarch64-sve-builtins.cc:1734
-#: config/aarch64/aarch64-sve-builtins.cc:1740
-#: config/arm/arm-mve-builtins.cc:1314 config/arm/arm-mve-builtins.cc:1320
+#: config/aarch64/aarch64-sve-builtins.cc:1760
+#: config/aarch64/aarch64-sve-builtins.cc:1766
+#: config/arm/arm-mve-builtins.cc:1311 config/arm/arm-mve-builtins.cc:1317
 #, gcc-internal-format
 msgid "%qT%d%qE%d"
 msgid_plural ""
@@ -41221,189 +42901,189 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:1772
+#: config/aarch64/aarch64-sve-builtins.cc:1798
 #, gcc-internal-format
 msgid ""
 "passing tuple %qT to argument %d of %qE after passing single vector %qT to "
 "argument %d"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:1777
+#: config/aarch64/aarch64-sve-builtins.cc:1803
 #, gcc-internal-format
 msgid ""
 "passing single vector %qT to argument %d of %qE after passing tuple %qT to "
 "argument %d"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:1782
+#: config/aarch64/aarch64-sve-builtins.cc:1808
 #, gcc-internal-format
 msgid ""
 "passing mismatched tuple types %qT and %qT to arguments %d and %d of %qE"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:1793
-#: config/arm/arm-mve-builtins.cc:1213
+#: config/aarch64/aarch64-sve-builtins.cc:1819
+#: config/arm/arm-mve-builtins.cc:1198
 #, gcc-internal-format
 msgid "%qE has no form that takes %qT arguments"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:1854
+#: config/aarch64/aarch64-sve-builtins.cc:1883
 #, gcc-internal-format
 msgid "%qE has no form that takes %qT and %qT arguments"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:1916
+#: config/aarch64/aarch64-sve-builtins.cc:1945
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, which expects an %qs or %qs"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:1947
+#: config/aarch64/aarch64-sve-builtins.cc:1976
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects a 32-bit or 64-bit integer "
 "type"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:1966
+#: config/aarch64/aarch64-sve-builtins.cc:1995
 #, gcc-internal-format
 msgid ""
 "passing %qT and %qT to arguments %d and %d of %qE, which expects a pair of "
 "64-bit integers"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:1990
+#: config/aarch64/aarch64-sve-builtins.cc:2019
 #, gcc-internal-format
 msgid ""
 "passing mismatched integer types %qT and %qT to arguments %d and %d of %qE"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2013
-#: config/arm/arm-mve-builtins.cc:1266 config/arm/arm-mve-builtins.cc:1691
+#: config/aarch64/aarch64-sve-builtins.cc:2042
+#: config/arm/arm-mve-builtins.cc:1263 config/arm/arm-mve-builtins.cc:1688
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, which expects a pointer type"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2016
+#: config/aarch64/aarch64-sve-builtins.cc:2045
 #, gcc-internal-format
 msgid "an explicit type suffix is needed when using a vector of base addresses"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2025
+#: config/aarch64/aarch64-sve-builtins.cc:2054
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, but %qT is not a valid SVE element type"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2033
+#: config/aarch64/aarch64-sve-builtins.cc:2062
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects a pointer to 32-bit or 64-"
 "bit elements"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2040
+#: config/aarch64/aarch64-sve-builtins.cc:2069
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects the data to be 16 bits or "
 "wider"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2043
+#: config/aarch64/aarch64-sve-builtins.cc:2072
 #, gcc-internal-format
 msgid "use the %<offset%> rather than %<index%> form for 8-bit data"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2084
+#: config/aarch64/aarch64-sve-builtins.cc:2113
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects an SVE type rather than a "
 "scalar type"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2088
+#: config/aarch64/aarch64-sve-builtins.cc:2117
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, which expects an SVE type"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2133
+#: config/aarch64/aarch64-sve-builtins.cc:2162
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, which expects a vector of integers"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2163
+#: config/aarch64/aarch64-sve-builtins.cc:2192
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects a 128 bit NEON vector type"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2180
-#: config/aarch64/aarch64-sve-builtins.cc:2478
-#: config/arm/arm-mve-builtins.cc:1522
+#: config/aarch64/aarch64-sve-builtins.cc:2209
+#: config/aarch64/aarch64-sve-builtins.cc:2507
+#: config/arm/arm-mve-builtins.cc:1519
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects a vector of unsigned "
 "integers"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2201
+#: config/aarch64/aarch64-sve-builtins.cc:2230
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects a vector of 32-bit or 64-"
 "bit elements"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2243
+#: config/aarch64/aarch64-sve-builtins.cc:2272
 #, gcc-internal-format
 msgid ""
 "operations on multiple vectors must be predicated by %qs rather than %qs"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2246
+#: config/aarch64/aarch64-sve-builtins.cc:2275
 #, gcc-internal-format
 msgid "operations on single vectors must be predicated by %qs rather than %qs"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2262
-#: config/arm/arm-mve-builtins.cc:1367
+#: config/aarch64/aarch64-sve-builtins.cc:2291
+#: config/arm/arm-mve-builtins.cc:1364
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects a vector or scalar type"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2284
-#: config/aarch64/aarch64-sve-builtins.cc:2933
-#: config/arm/arm-mve-builtins.cc:1389
+#: config/aarch64/aarch64-sve-builtins.cc:2313
+#: config/aarch64/aarch64-sve-builtins.cc:2962
+#: config/arm/arm-mve-builtins.cc:1386
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, which expects %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2311
-#: config/aarch64/aarch64-sve-builtins.cc:2427
-#: config/aarch64/aarch64-sve-builtins.cc:2556
+#: config/aarch64/aarch64-sve-builtins.cc:2340
+#: config/aarch64/aarch64-sve-builtins.cc:2456
+#: config/aarch64/aarch64-sve-builtins.cc:2585
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, but argument %d had type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2422
+#: config/aarch64/aarch64-sve-builtins.cc:2451
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, but argument %d was a tuple of %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2446
-#: config/arm/arm-mve-builtins.cc:1503
+#: config/aarch64/aarch64-sve-builtins.cc:2475
+#: config/arm/arm-mve-builtins.cc:1500
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects a vector of %d-bit elements"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2451
+#: config/aarch64/aarch64-sve-builtins.cc:2480
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects vectors of %d-bit elements"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2464
-#: config/arm/arm-mve-builtins.cc:1515
+#: config/aarch64/aarch64-sve-builtins.cc:2493
+#: config/arm/arm-mve-builtins.cc:1512
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects a vector of signed integers"
@@ -41411,7 +43091,7 @@ msgstr ""
 
 #. Translation note: could also be written "expects a tuple of
 #. signed integer vectors".
-#: config/aarch64/aarch64-sve-builtins.cc:2470
+#: config/aarch64/aarch64-sve-builtins.cc:2499
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects vectors of signed integers"
@@ -41419,56 +43099,56 @@ msgstr ""
 
 #. Translation note: could also be written "expects a tuple of
 #. unsigned integer vectors".
-#: config/aarch64/aarch64-sve-builtins.cc:2484
+#: config/aarch64/aarch64-sve-builtins.cc:2513
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects vectors of unsigned integers"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2504
-#: config/arm/arm-mve-builtins.cc:1542
+#: config/aarch64/aarch64-sve-builtins.cc:2533
+#: config/arm/arm-mve-builtins.cc:1539
 #, gcc-internal-format
 msgid ""
 "arguments %d and %d of %qE must have the same element size, but the values "
 "passed here have type %qT and %qT respectively"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2524
-#: config/arm/arm-mve-builtins.cc:1563
+#: config/aarch64/aarch64-sve-builtins.cc:2553
+#: config/arm/arm-mve-builtins.cc:1560
 #, gcc-internal-format
 msgid ""
 "arguments %d and %d of %qE must have the same signedness, but the values "
 "passed here have type %qT and %qT respectively"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2535
-#: config/arm/arm-mve-builtins.cc:1574
+#: config/aarch64/aarch64-sve-builtins.cc:2564
+#: config/arm/arm-mve-builtins.cc:1571
 #, gcc-internal-format
 msgid ""
 "passing %qT instead of the expected %qT to argument %d of %qE, after passing "
 "%qT to argument %d"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2575
-#: config/arm/arm-mve-builtins.cc:1659
+#: config/aarch64/aarch64-sve-builtins.cc:2604
+#: config/arm/arm-mve-builtins.cc:1656
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, which expects %qs"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2593
+#: config/aarch64/aarch64-sve-builtins.cc:2622
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which does not accept scalars for this "
 "combination of arguments"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2609
-#: config/arm/arm-mve-builtins.cc:1675
+#: config/aarch64/aarch64-sve-builtins.cc:2638
+#: config/arm/arm-mve-builtins.cc:1672
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, which expects a scalar pointer"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2632
+#: config/aarch64/aarch64-sve-builtins.cc:2661
 #, gcc-internal-format
 msgid ""
 "call to %qE is ambiguous; argument %d has type %qs but argument %d has type "
@@ -41477,65 +43157,65 @@ msgstr ""
 
 #. It doesn't really matter whether the element is expected to be
 #. the same size as type suffix 0.
-#: config/aarch64/aarch64-sve-builtins.cc:2677
-#: config/arm/arm-mve-builtins.cc:1620
+#: config/aarch64/aarch64-sve-builtins.cc:2706
+#: config/arm/arm-mve-builtins.cc:1617
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, which expects a scalar element"
 msgstr ""
 
 #. It doesn't seem useful to distinguish between signed and unsigned
 #. scalars here.
-#: config/aarch64/aarch64-sve-builtins.cc:2683
-#: config/arm/arm-mve-builtins.cc:1626
+#: config/aarch64/aarch64-sve-builtins.cc:2712
+#: config/arm/arm-mve-builtins.cc:1623
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, which expects a scalar integer"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2719
+#: config/aarch64/aarch64-sve-builtins.cc:2748
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, which expects %qs or %qs"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2739
+#: config/aarch64/aarch64-sve-builtins.cc:2768
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects a vector of 32-bit or 64-"
 "bit integers"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2790
+#: config/aarch64/aarch64-sve-builtins.cc:2819
 #, gcc-internal-format
 msgid "when storing %qT, %qE requires a vector base and a scalar index"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2795
+#: config/aarch64/aarch64-sve-builtins.cc:2824
 #, gcc-internal-format
 msgid "%qE requires a vector base and a scalar index"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2799
+#: config/aarch64/aarch64-sve-builtins.cc:2828
 #, gcc-internal-format
 msgid "%qE does not support 32-bit vector type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2827
+#: config/aarch64/aarch64-sve-builtins.cc:2856
 #, gcc-internal-format
 msgid "%qE does not support 32-bit sign-extended offsets"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2830
+#: config/aarch64/aarch64-sve-builtins.cc:2859
 #, gcc-internal-format
 msgid "%qE does not support sign-extended offsets"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2844
+#: config/aarch64/aarch64-sve-builtins.cc:2873
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which when loading %qT expects a vector "
 "of %d-bit integers"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2849
+#: config/aarch64/aarch64-sve-builtins.cc:2878
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which when storing %qT expects a vector "
@@ -41543,219 +43223,219 @@ msgid ""
 msgstr ""
 
 #. TYPE is part of the function name.
-#: config/aarch64/aarch64-sve-builtins.cc:2856
+#: config/aarch64/aarch64-sve-builtins.cc:2885
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects a vector of %d-bit integers"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2904
+#: config/aarch64/aarch64-sve-builtins.cc:2933
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects a vector or pointer base "
 "address"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2984
+#: config/aarch64/aarch64-sve-builtins.cc:3013
 #, gcc-internal-format
 msgid "cannot combine a base of type %qT with an offset of type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:2988
+#: config/aarch64/aarch64-sve-builtins.cc:3017
 #, gcc-internal-format
 msgid "cannot combine a base of type %qT with an index of type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:3078
-#: config/arm/arm-mve-builtins.cc:1811
+#: config/aarch64/aarch64-sve-builtins.cc:3107
+#: config/arm/arm-mve-builtins.cc:1808
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, but its %qT form does not accept scalars"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:3142
+#: config/aarch64/aarch64-sve-builtins.cc:3171
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, but its %qT form does not accept single "
 "vectors"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:4830
-#: config/arm/arm-mve-builtins.cc:522 config/arm/arm-mve-builtins.cc:547
-#: config/riscv/riscv-vector-builtins.cc:4868
+#: config/aarch64/aarch64-sve-builtins.cc:4883
+#: config/arm/arm-mve-builtins.cc:502 config/arm/arm-mve-builtins.cc:527
+#: config/riscv/riscv-vector-builtins.cc:5584
 #, gcc-internal-format
 msgid "duplicate definition of %qs"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:4890
+#: config/aarch64/aarch64-sve-builtins.cc:4943
 #, gcc-internal-format
 msgid "%qs defined without first defining %qs"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5042
+#: config/aarch64/aarch64-sve-builtins.cc:5095
 #, gcc-internal-format
 msgid "%qs applied to non-SVE type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5048
+#: config/aarch64/aarch64-sve-builtins.cc:5101
 #, gcc-internal-format
 msgid "%qs applied to non-vector type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5055
+#: config/aarch64/aarch64-sve-builtins.cc:5108
 #, gcc-internal-format
 msgid "%qs applied to type %qT, which already has a size"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5063
+#: config/aarch64/aarch64-sve-builtins.cc:5116
 #, gcc-internal-format
 msgid "%qs requires an integer constant expression"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5071
+#: config/aarch64/aarch64-sve-builtins.cc:5124
 #, gcc-internal-format
 msgid "unsupported SVE vector size"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5189
+#: config/aarch64/aarch64-sve-builtins.cc:5242
 #, gcc-internal-format
 msgid "SVE type %qT does not have a fixed size"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5194
+#: config/aarch64/aarch64-sve-builtins.cc:5247
 #, gcc-internal-format
 msgid "SVE type %qT does not have a defined alignment"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5199
-#: config/riscv/riscv-vector-builtins.cc:4752
+#: config/aarch64/aarch64-sve-builtins.cc:5252
+#: config/riscv/riscv-vector-builtins.cc:5468
 #, gcc-internal-format
 msgid "variables of type %qT cannot have thread-local storage duration"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5205
+#: config/aarch64/aarch64-sve-builtins.cc:5258
 #, gcc-internal-format
 msgid "arithmetic on pointer to SVE type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5212
+#: config/aarch64/aarch64-sve-builtins.cc:5265
 #, gcc-internal-format
 msgid "member variables cannot have SVE type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5214
+#: config/aarch64/aarch64-sve-builtins.cc:5267
 #, gcc-internal-format
 msgid "fields cannot have SVE type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5219
+#: config/aarch64/aarch64-sve-builtins.cc:5272
 #, gcc-internal-format
 msgid "array elements cannot have SVE type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5224
+#: config/aarch64/aarch64-sve-builtins.cc:5277
 #, gcc-internal-format
 msgid "cannot allocate objects with SVE type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5229
+#: config/aarch64/aarch64-sve-builtins.cc:5282
 #, gcc-internal-format
 msgid "cannot delete objects with SVE type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5234
+#: config/aarch64/aarch64-sve-builtins.cc:5287
 #, gcc-internal-format
 msgid "cannot throw or catch SVE type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5239
+#: config/aarch64/aarch64-sve-builtins.cc:5292
 #, gcc-internal-format
 msgid "capture by copy of SVE type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5244
+#: config/aarch64/aarch64-sve-builtins.cc:5297
 #, gcc-internal-format
 msgid "SVE type %qT not allowed in %<map%> clause"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5249
-#: config/riscv/riscv-vector-builtins.cc:4811
+#: config/aarch64/aarch64-sve-builtins.cc:5302
+#: config/riscv/riscv-vector-builtins.cc:5527
 #, gcc-internal-format
 msgid "cannot reference %qT object types in %<target%> region"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5254
+#: config/aarch64/aarch64-sve-builtins.cc:5307
 #, gcc-internal-format
 msgid "SVE type %qT not allowed in %<target%> %<private%> clause"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5260
+#: config/aarch64/aarch64-sve-builtins.cc:5313
 #, gcc-internal-format
 msgid "SVE type %qT not allowed in %<target%> %<firstprivate%> clause"
 msgstr ""
 
-#: config/aarch64/aarch64-sve-builtins.cc:5266
+#: config/aarch64/aarch64-sve-builtins.cc:5319
 #, gcc-internal-format
 msgid "SVE type %qT not allowed in %<target%> device clauses"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:649
+#: config/aarch64/aarch64.cc:665
 #, gcc-internal-format
 msgid "the arguments to %qE must be constant strings"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:657
+#: config/aarch64/aarch64.cc:673
 #, gcc-internal-format
 msgid "unrecognized state string %qs"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:741
+#: config/aarch64/aarch64.cc:784
 #, gcc-internal-format
 msgid "the %qE attribute cannot be applied to an SVE function type"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:768
+#: config/aarch64/aarch64.cc:814
 #, gcc-internal-format
 msgid "cannot create a new %qs scope since %qs is shared with callers"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:784
+#: config/aarch64/aarch64.cc:830
 #, gcc-internal-format
 msgid "%qE attribute applies only to function definitions"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:830
+#: config/aarch64/aarch64.cc:876
 #, gcc-internal-format
 msgid "inconsistent attributes for state %qs"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:1327
+#: config/aarch64/aarch64.cc:1441
 #, gcc-internal-format
 msgid "%qs is incompatible with the use of floating-point types"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:1330
+#: config/aarch64/aarch64.cc:1444
 #, gcc-internal-format
 msgid "%qs is incompatible with the use of vector types"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:1334
+#: config/aarch64/aarch64.cc:1448
 #, gcc-internal-format
 msgid ""
 "%qs feature modifier is incompatible with the use of floating-point types"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:1337
+#: config/aarch64/aarch64.cc:1451
 #, gcc-internal-format
 msgid "%qs feature modifier is incompatible with the use of vector types"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:1353
+#: config/aarch64/aarch64.cc:1467
 #, gcc-internal-format
 msgid "this operation requires the SVE ISA extension"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:1354
+#: config/aarch64/aarch64.cc:1468
 #, gcc-internal-format
 msgid ""
 "you can enable SVE using the command-line option %<-march%>, or by using the "
@@ -41764,472 +43444,510 @@ msgstr ""
 
 #. We can't gracefully recover at this point, so make this a
 #. fatal error.
-#: config/aarch64/aarch64.cc:6685
+#: config/aarch64/aarch64.cc:7218
 #, gcc-internal-format
 msgid "arguments of type %qT require the SVE ISA extension"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:7162
+#: config/aarch64/aarch64.cc:7819
 #, gcc-internal-format
 msgid "SVE type %qT cannot be passed to an unprototyped function"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:7303 config/aarch64/aarch64.cc:7382
-#: config/aarch64/aarch64.cc:21640
+#: config/aarch64/aarch64.cc:7951 config/aarch64/aarch64.cc:8032
+#: config/aarch64/aarch64.cc:22625
 #, gcc-internal-format
 msgid "parameter passing for argument of type %qT changed in GCC 13.1"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:7310 config/aarch64/aarch64.cc:7389
-#: config/aarch64/aarch64.cc:21647
+#: config/aarch64/aarch64.cc:7958 config/aarch64/aarch64.cc:8039
+#: config/aarch64/aarch64.cc:22632
 #, gcc-internal-format
 msgid "parameter passing for argument of type %qT changed in GCC 14.1"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:7321 config/aarch64/aarch64.cc:7399
-#: config/aarch64/aarch64.cc:21655 config/arm/arm.cc:7338
-#: config/arm/arm.cc:7368 config/arm/arm.cc:29593
+#: config/aarch64/aarch64.cc:7969 config/aarch64/aarch64.cc:8049
+#: config/aarch64/aarch64.cc:22640 config/arm/arm.cc:7311
+#: config/arm/arm.cc:7341 config/arm/arm.cc:29403
 #, gcc-internal-format
 msgid "parameter passing for argument of type %qT changed in GCC 9.1"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:7526
+#: config/aarch64/aarch64.cc:8177
 #, gcc-internal-format
 msgid "%qE requires the SVE ISA extension"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:7529
+#: config/aarch64/aarch64.cc:8180
 #, gcc-internal-format
 msgid "calls to functions of type %qT require the SVE ISA extension"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:7717
+#: config/aarch64/aarch64.cc:8395
 #, gcc-internal-format
 msgid "stack probes for SVE frames"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:11460
+#: config/aarch64/aarch64.cc:12166
 #, gcc-internal-format
 msgid "calling a streaming function requires the ISA extension %qs"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:11469 config/aarch64/aarch64.cc:11473
+#: config/aarch64/aarch64.cc:12175 config/aarch64/aarch64.cc:12179
 #, gcc-internal-format
 msgid ""
 "call to a function that shares %qs state from a function that has no %qs "
 "state"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:11476
+#: config/aarch64/aarch64.cc:12182
 #, gcc-internal-format
 msgid ""
 "call to a function that shares SME state from a function that has no SME "
 "state"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:11534
+#: config/aarch64/aarch64.cc:12240
 #, gcc-internal-format
 msgid ""
 "call to a function that shares state other than %qs from a function that has "
 "%qs state"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:11536
+#: config/aarch64/aarch64.cc:12242
 #, gcc-internal-format
 msgid "use %<__arm_preserves(\"za\")%> if the callee preserves ZA"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18382
+#: config/aarch64/aarch64.cc:19255
 #, gcc-internal-format
 msgid "unknown flag passed in %<-moverride=%s%> (%s)"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18426
+#: config/aarch64/aarch64.cc:19299
 #, gcc-internal-format
 msgid "%qs string ill-formed"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18482
+#: config/aarch64/aarch64.cc:19355
 #, gcc-internal-format
 msgid "invalid format for %<sve_width%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18494
+#: config/aarch64/aarch64.cc:19367
 #, gcc-internal-format
 msgid "invalid %<sve_width%> value: %d"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18514
+#: config/aarch64/aarch64.cc:19387
 #, gcc-internal-format, gfc-internal-format
 msgid "tuning string missing in option (%s)"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18532
+#: config/aarch64/aarch64.cc:19405
 #, gcc-internal-format, gfc-internal-format
 msgid "unknown tuning option (%s)"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18719 config/arm/arm.cc:3223
-#: config/riscv/riscv.cc:10776
+#: config/aarch64/aarch64.cc:19615 config/arm/arm.cc:3211
+#: config/riscv/riscv.cc:12481
 #, gcc-internal-format
 msgid ""
 "incompatible options %<-mstack-protector-guard=global%> and %<-mstack-"
 "protector-guard-offset=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18728 config/riscv/riscv.cc:10785
+#: config/aarch64/aarch64.cc:19624 config/riscv/riscv.cc:12490
 #, gcc-internal-format
 msgid ""
 "both %<-mstack-protector-guard-offset%> and %<-mstack-protector-guard-reg%> "
 "must be used with %<-mstack-protector-guard=sysreg%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18736
+#: config/aarch64/aarch64.cc:19632
 #, gcc-internal-format
 msgid "specify a system register with a small string length"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18746 config/arm/arm.cc:3235
-#: config/riscv/riscv.cc:10814 config/rs6000/rs6000.cc:4518
+#: config/aarch64/aarch64.cc:19642 config/arm/arm.cc:3223
+#: config/riscv/riscv.cc:12519 config/rs6000/rs6000.cc:4515
 #, gcc-internal-format
 msgid "%qs is not a valid offset in %qs"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18753
+#: config/aarch64/aarch64.cc:19650
 #, gcc-internal-format
 msgid "%<-fsanitize=shadow-call-stack%> requires %<-ffixed-x18%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18760
+#: config/aarch64/aarch64.cc:19653
+#, gcc-internal-format
+msgid ""
+"%<-fsanitize=shadow-call-stack%> conflicts with the use of register x18 by "
+"the target operating system"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:19659
+#, gcc-internal-format
+msgid "%<-fsanitize=memtag-stack%> requires the ISA extension %qs"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:19667
 #, gcc-internal-format
 msgid "streaming functions require the ISA extension %qs"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18762
+#: config/aarch64/aarch64.cc:19669
 #, gcc-internal-format
 msgid "functions with SME state require the ISA extension %qs"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18858
+#: config/aarch64/aarch64.cc:19765
 #, gcc-internal-format
 msgid ""
 "only values 12 (4 KB) and 16 (64 KB) are supported for guard size.  Given "
 "value %d (%llu KB) is out of range"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18874 config/riscv/riscv.cc:10834
+#: config/aarch64/aarch64.cc:19781 config/riscv/riscv.cc:12539
 #, gcc-internal-format
 msgid "stack clash guard size %<%d%> must be equal to probing interval %<%d%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18902
+#: config/aarch64/aarch64.cc:19815
 #, gcc-internal-format
 msgid "no support for %qs without %qs"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18955
+#: config/aarch64/aarch64.cc:19882
 #, gcc-internal-format
 msgid "invalid argument given to %<-mharden-sls=%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18966
+#: config/aarch64/aarch64.cc:19893
 #, gcc-internal-format
 msgid "%qs must be by itself for %<-mharden-sls=%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18971
+#: config/aarch64/aarch64.cc:19898
 #, gcc-internal-format
 msgid "invalid argument %qs for %<-mharden-sls=%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19127
+#: config/aarch64/aarch64.cc:20054
 #, gcc-internal-format
 msgid ""
 "switch %<-mcpu=%s%> conflicts with %<-march=%s%> switch and resulted in "
 "options %qs being added"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19194
+#: config/aarch64/aarch64.cc:20121
 #, gcc-internal-format
 msgid "assembler does not support %<-mabi=ilp32%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19197
+#: config/aarch64/aarch64.cc:20124
 #, gcc-internal-format
 msgid "%<-mabi=ilp32%> is deprecated"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19203
+#: config/aarch64/aarch64.cc:20130
 #, gcc-internal-format
 msgid "return address signing is only supported for %<-mabi=lp64%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19276
+#: config/aarch64/aarch64.cc:20204
 #, gcc-internal-format
 msgid "code model %qs with %<-f%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19279
+#: config/aarch64/aarch64.cc:20207
 #, gcc-internal-format
 msgid "code model %qs not supported in ilp32 mode"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19377
+#: config/aarch64/aarch64.cc:20305
 #, gcc-internal-format
 msgid "functions with %qs state require the ISA extension %qs"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19482
+#: config/aarch64/aarch64.cc:20415
 #, gcc-internal-format
 msgid "missing name in %<target(\"arch=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19485
+#: config/aarch64/aarch64.cc:20418
 #, gcc-internal-format
 msgid "invalid name %qs in %<target(\"arch=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19489
+#: config/aarch64/aarch64.cc:20422
 #, gcc-internal-format
 msgid ""
 "invalid feature modifier %s of value %qs in %<target()%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19524
+#: config/aarch64/aarch64.cc:20457
 #, gcc-internal-format
 msgid "missing name in %<target(\"cpu=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19527
+#: config/aarch64/aarch64.cc:20460
 #, gcc-internal-format
 msgid "invalid name %qs in %<target(\"cpu=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19531 config/aarch64/aarch64.cc:19615
+#: config/aarch64/aarch64.cc:20464 config/aarch64/aarch64.cc:20548
 #, gcc-internal-format
 msgid ""
 "invalid feature modifier %qs of value %qs in %<target()%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19570
+#: config/aarch64/aarch64.cc:20503
 #, gcc-internal-format
 msgid "invalid name %qs in %<target(\"tune=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19611
+#: config/aarch64/aarch64.cc:20544
 #, gcc-internal-format
 msgid "missing value in %<target()%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19669 config/aarch64/aarch64.cc:19846
-#: config/loongarch/loongarch-target-attr.cc:144
-#: config/loongarch/loongarch-target-attr.cc:309
+#: config/aarch64/aarch64.cc:20604 config/aarch64/aarch64.cc:20782
+#: config/loongarch/loongarch-target-attr.cc:197
+#: config/loongarch/loongarch-target-attr.cc:395
 #, gcc-internal-format
 msgid "malformed %<target()%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19715
+#: config/aarch64/aarch64.cc:20650
 #, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s\")%> does not accept an argument"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19723 config/i386/i386-options.cc:1315
-#: config/loongarch/loongarch-target-attr.cc:181
+#: config/aarch64/aarch64.cc:20658 config/i386/i386-options.cc:1302
+#: config/loongarch/loongarch-target-attr.cc:233
 #, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s\")%> does not allow a negated form"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19777
-#: config/loongarch/loongarch-target-attr.cc:221
+#: config/aarch64/aarch64.cc:20713
+#: config/loongarch/loongarch-target-attr.cc:281
 #, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s=%s\")%> is not valid"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19834 config/arm/arm.cc:33836
-#: config/loongarch/loongarch-target-attr.cc:297
-#: config/riscv/riscv-target-attr.cc:427 config/rs6000/rs6000.cc:24714
-#: config/s390/s390.cc:16661
+#: config/aarch64/aarch64.cc:20770 config/arm/arm.cc:33522
+#: config/loongarch/loongarch-target-attr.cc:383
+#: config/riscv/riscv-target-attr.cc:473 config/rs6000/rs6000.cc:24725
+#: config/s390/s390.cc:16979
 #, gcc-internal-format
 msgid "attribute %<target%> argument not a string"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19871
+#: config/aarch64/aarch64.cc:20807
 #, gcc-internal-format
 msgid "arch extension %qs should be prefixed by %<+%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19874
+#: config/aarch64/aarch64.cc:20810
 #, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s\")%> is not valid"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19883
-#: config/loongarch/loongarch-target-attr.cc:332
+#: config/aarch64/aarch64.cc:20819
+#: config/loongarch/loongarch-target-attr.cc:418
 #, gcc-internal-format
 msgid "malformed %<target(\"%s\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:20101
-#, gcc-internal-format
-msgid ""
-"Function Multi Versioning support is experimental, and the behavior is "
-"likely to change"
-msgstr ""
-
-#: config/aarch64/aarch64.cc:20110 config/riscv/riscv-target-attr.cc:493
+#: config/aarch64/aarch64.cc:21090 config/loongarch/loongarch.cc:11500
+#: config/riscv/riscv-target-attr.cc:552
 #, gcc-internal-format
 msgid "attribute %<target_version%> has multiple values"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:20118 config/riscv/riscv-target-attr.cc:501
+#: config/aarch64/aarch64.cc:21098 config/loongarch/loongarch.cc:11510
+#: config/riscv/riscv-target-attr.cc:562
 #, gcc-internal-format
 msgid "attribute %<target_version%> argument not a string"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:20140
+#: config/aarch64/aarch64.cc:21120
 #, gcc-internal-format
 msgid "missing value in %<target_version%> attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:20144
+#: config/aarch64/aarch64.cc:21124
 #, gcc-internal-format
 msgid ""
 "invalid feature modifier %qs of value %qs in %<target_version%> attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:20150
+#: config/aarch64/aarch64.cc:21130
 #, gcc-internal-format
 msgid ""
 "duplicate feature modifier %qs of value %qs in %<target_version%> attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:20736 config/i386/i386-features.cc:3911
-#: config/i386/i386-features.cc:4180 config/riscv/riscv.cc:13691
+#: config/aarch64/aarch64.cc:21712 config/i386/i386-features.cc:5462
+#: config/i386/i386-features.cc:5712 config/loongarch/loongarch.cc:12057
+#: config/riscv/riscv.cc:15534 config/rs6000/rs6000.cc:28526
 #, gcc-internal-format
 msgid "virtual function multiversioning not supported"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:20857 config/i386/i386-features.cc:4044
-#: config/riscv/riscv.cc:13816 config/rs6000/rs6000.cc:25404
+#: config/aarch64/aarch64.cc:21769 config/i386/i386-features.cc:5565
+#: config/loongarch/loongarch.cc:11654 config/riscv/riscv.cc:15588
+#: config/rs6000/rs6000.cc:25381
 #, gcc-internal-format
 msgid "multiversioning needs %<ifunc%> which is not supported on this target"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:22409 config/arm/arm.cc:6686
-#: config/rs6000/rs6000-call.cc:366 config/s390/s390.cc:12993
+#: config/aarch64/aarch64.cc:21808
+#, gcc-internal-format
+msgid "%q+D has an inconsistent function multi-version priority value"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:21811
+#, gcc-internal-format
+msgid "%q+D was previously declared here with priority value of %d"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:23420 config/arm/arm.cc:6689
+#: config/rs6000/rs6000-call.cc:366 config/s390/s390.cc:13289
 msgid ""
 "parameter passing for argument of type %qT with %<[[no_unique_address]]%> "
 "members changed %{in GCC 10.1%}"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:22414 config/arm/arm.cc:6691
-#: config/rs6000/rs6000-call.cc:361 config/s390/s390.cc:12988
+#: config/aarch64/aarch64.cc:23425 config/arm/arm.cc:6694
+#: config/rs6000/rs6000-call.cc:361 config/s390/s390.cc:13284
 msgid ""
 "parameter passing for argument of type %qT when C++17 is enabled changed to "
 "match C++14 %{in GCC 10.1%}"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:22419 config/arm/arm.cc:6696
+#: config/aarch64/aarch64.cc:23430 config/arm/arm.cc:6699
 msgid "parameter passing for argument of type %qT changed %{in GCC 12.1%}"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:23825 config/aarch64/aarch64.cc:23828
+#: config/aarch64/aarch64.cc:24992 config/aarch64/aarch64.cc:24995
 #, gcc-internal-format
 msgid "lane %wd out of range %wd - %wd"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:29341 config/i386/i386.cc:25767
-#: config/i386/i386.cc:25898
+#: config/aarch64/aarch64.cc:30704 config/i386/i386.cc:26805
+#: config/i386/i386.cc:26936
 #, gcc-internal-format
 msgid "unsupported simdlen %wd"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:29355
+#: config/aarch64/aarch64.cc:30718
 #, gcc-internal-format
 msgid "GCC does not currently support return type %qT for simd"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:29359 config/i386/i386.cc:25789
+#: config/aarch64/aarch64.cc:30722 config/i386/i386.cc:26827
 #, gcc-internal-format
 msgid "unsupported return type %qT for simd"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:29393
+#: config/aarch64/aarch64.cc:30756
 #, gcc-internal-format
 msgid "GCC does not currently support argument type %qT for simd"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:29397 config/i386/i386.cc:25820
+#: config/aarch64/aarch64.cc:30760 config/i386/i386.cc:26858
 #, gcc-internal-format
 msgid "unsupported argument type %qT for simd"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:29468
+#: config/aarch64/aarch64.cc:30831
 #, gcc-internal-format
 msgid "GCC does not currently support simdlen %wd for type %qT"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:29488
+#: config/aarch64/aarch64.cc:30851
 #, gcc-internal-format
 msgid ""
 "GCC does not currently support a simdclone with simdlens %wd and %wd for "
 "these types."
 msgstr ""
 
-#: config/aarch64/aarch64.cc:29676
+#: config/aarch64/aarch64.cc:31041
 #, gcc-internal-format
 msgid "cannot apply attribute %qs to %q+D after the function has been defined"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:29678
+#: config/aarch64/aarch64.cc:31043
 #, gcc-internal-format
 msgid "%q+D defined here"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:30158
+#: config/aarch64/aarch64.cc:31862
 #, gcc-internal-format
 msgid "non-local gotos in functions with SME state"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:30467
+#: config/aarch64/aarch64.cc:32170
 #, gcc-internal-format
 msgid "catching non-call exceptions in functions with SME state"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:31107 config/arm/arm-mve-builtins.cc:634
-#: config/riscv/riscv-vector-builtins.cc:4493
+#: config/aarch64/aarch64.cc:32810 config/arm/arm-mve-builtins.cc:614
+#: config/riscv/riscv-vector-builtins.cc:5216
 #, gcc-internal-format
 msgid "argument %d of %qE must be an integer constant expression"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:31120
+#: config/aarch64/aarch64.cc:32823
 #, gcc-internal-format
 msgid "passing %wd to argument %d of %qE, which expects the value %wd"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:31123 config/arm/arm-mve-builtins.cc:646
-#: config/riscv/riscv-vector-builtins.cc:4507
+#: config/aarch64/aarch64.cc:32826 config/arm/arm-mve-builtins.cc:626
+#: config/riscv/riscv-vector-builtins.cc:5230
 #, gcc-internal-format
 msgid ""
 "passing %wd to argument %d of %qE, which expects a value in the range [%wd, "
 "%wd]"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:31136
+#: config/aarch64/aarch64.cc:32839
 #, gcc-internal-format
 msgid "passing %wd to argument %d of %qE, which expects either %wd or %wd"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:31150 config/arm/arm-mve-builtins.cc:685
+#: config/aarch64/aarch64.cc:32853 config/arm/arm-mve-builtins.cc:665
 #, gcc-internal-format
 msgid "passing %wd to argument %d of %qE, which expects %wd, %wd, %wd or %wd"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:31162 config/arm/arm-mve-builtins.cc:672
+#: config/aarch64/aarch64.cc:32865 config/arm/arm-mve-builtins.cc:652
 #, gcc-internal-format
 msgid "passing %wd to argument %d of %qE, which expects a valid %qT value"
 msgstr ""
 
+#: config/aarch64/aarch64.cc:33099
+#, gcc-internal-format
+msgid "empty string not valid for a %<target_clones%> version"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:33103
+msgid ""
+"invalid feature modifier %qs in version %qB for %<target_clones%> attribute"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:33109
+msgid ""
+"duplicate feature modifier %qs in version %qB for %<target_clones%> attribute"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:33115
+msgid "invalid feature %qs in version %qB for %<target_clones%> attribute"
+msgstr ""
+
 #: config/alpha/alpha.cc:420
 #, gcc-internal-format
 msgid "bad value %qs for %<-mtrap-precision%> switch"
@@ -42285,76 +44003,76 @@ msgstr ""
 msgid "bad value %qs for %<-mmemory-latency%>"
 msgstr ""
 
-#: config/alpha/alpha.cc:7357 config/alpha/alpha.cc:7360 config/arc/arc.cc:6981
-#: config/arc/arc.cc:7255 config/s390/s390.cc:942
+#: config/alpha/alpha.cc:7353 config/alpha/alpha.cc:7356 config/arc/arc.cc:6996
+#: config/arc/arc.cc:7270 config/s390/s390.cc:943
 #, gcc-internal-format
 msgid "bad builtin fcode"
 msgstr ""
 
-#: config/arc/arc.cc:1003
+#: config/arc/arc.cc:1001
 #, gcc-internal-format
 msgid "%<-mno-mpy%> supported only for ARC700 or ARCv2"
 msgstr ""
 
-#: config/arc/arc.cc:1006
+#: config/arc/arc.cc:1004
 #, gcc-internal-format
 msgid "%<-mno-dpfp-lrsr%> supported only with %<-mdpfp%>"
 msgstr ""
 
-#: config/arc/arc.cc:1011
+#: config/arc/arc.cc:1009
 #, gcc-internal-format
 msgid "FPX fast and compact options cannot be specified together"
 msgstr ""
 
-#: config/arc/arc.cc:1015
+#: config/arc/arc.cc:1013
 #, gcc-internal-format
 msgid "%<-mspfp_fast%> not available on ARC600 or ARC601"
 msgstr ""
 
-#: config/arc/arc.cc:1020
+#: config/arc/arc.cc:1018
 #, gcc-internal-format
 msgid "no FPX/FPU mixing allowed"
 msgstr ""
 
-#: config/arc/arc.cc:1025
+#: config/arc/arc.cc:1023
 #, gcc-internal-format
 msgid "PIC is not supported for %qs"
 msgstr ""
 
-#: config/arc/arc.cc:1061
+#: config/arc/arc.cc:1059
 #, gcc-internal-format
 msgid "missing dash"
 msgstr ""
 
-#: config/arc/arc.cc:1073
+#: config/arc/arc.cc:1071
 #, gcc-internal-format
 msgid "first register must be R0"
 msgstr ""
 
-#: config/arc/arc.cc:1093
+#: config/arc/arc.cc:1091
 #, gcc-internal-format, gfc-internal-format
 msgid "last register name %s must be an odd register"
 msgstr ""
 
-#: config/arc/arc.cc:1102 config/ia64/ia64.cc:6066 config/pa/pa.cc:492
+#: config/arc/arc.cc:1100 config/ia64/ia64.cc:6111 config/pa/pa.cc:492
 #: config/sh/sh.cc:8306
 #, gcc-internal-format, gfc-internal-format
 msgid "%s-%s is an empty range"
 msgstr ""
 
-#: config/arc/arc.cc:1152
+#: config/arc/arc.cc:1150
 #, gcc-internal-format
 msgid ""
 "invalid number in %<-mrgf-banked-regs=%s%> valid values are 0, 4, 8, 16, or "
 "32"
 msgstr ""
 
-#: config/arc/arc.cc:1214
+#: config/arc/arc.cc:1212
 #, gcc-internal-format
 msgid "option %<-mirq-ctrl-saved%> valid only for ARC v2 processors"
 msgstr ""
 
-#: config/arc/arc.cc:1223
+#: config/arc/arc.cc:1221
 #, gcc-internal-format
 msgid "option %<-mrgf-banked-regs%> valid only for ARC v2 processors"
 msgstr ""
@@ -42366,346 +44084,287 @@ msgstr ""
 #. TRANSLATORS: the DOC/DOC0/DOC1 are strings which shouldn't be
 #. translated.  They are like keywords which one can relate with the
 #. architectural choices taken for an ARC CPU implementation.
-#: config/arc/arc.cc:1267
+#: config/arc/arc.cc:1265
 #, gcc-internal-format
 msgid "option %<%s=%s%> is not available for %qs CPU"
 msgstr ""
 
-#: config/arc/arc.cc:1272
+#: config/arc/arc.cc:1270
 #, gcc-internal-format
 msgid "option %qs is ignored, the default value %qs is considered for %qs CPU"
 msgstr ""
 
-#: config/arc/arc.cc:1280
+#: config/arc/arc.cc:1278
 #, gcc-internal-format
 msgid "option %qs is not available for %qs CPU"
 msgstr ""
 
-#: config/arc/arc.cc:1285
+#: config/arc/arc.cc:1283
 #, gcc-internal-format
 msgid "unset option %qs is ignored, it is always enabled for %qs CPU"
 msgstr ""
 
-#: config/arc/arc.cc:1857
+#: config/arc/arc.cc:1869
 #, gcc-internal-format, gfc-internal-format
 msgid "multiply option implies r%d is fixed"
 msgstr ""
 
-#: config/arc/arc.cc:2005 config/epiphany/epiphany.cc:505
+#: config/arc/arc.cc:2017 config/epiphany/epiphany.cc:505
 #: config/epiphany/epiphany.cc:547
 #, gcc-internal-format
 msgid "argument of %qE attribute is not a string constant"
 msgstr ""
 
-#: config/arc/arc.cc:2014
+#: config/arc/arc.cc:2026
 #, gcc-internal-format
 msgid "argument of %qE attribute is not \"ilink1\" or \"ilink2\""
 msgstr ""
 
-#: config/arc/arc.cc:2023
+#: config/arc/arc.cc:2035
 #, gcc-internal-format
 msgid "argument of %qE attribute is not \"ilink\" or \"firq\""
 msgstr ""
 
-#: config/arc/arc.cc:2037 config/arm/arm.cc:7479 config/arm/arm.cc:7497
-#: config/arm/arm.cc:7676 config/avr/avr.cc:11323 config/avr/avr.cc:11337
-#: config/bfin/bfin.cc:4695 config/bfin/bfin.cc:4756 config/bfin/bfin.cc:4786
-#: config/bpf/bpf.cc:93 config/csky/csky.cc:6459 config/csky/csky.cc:6487
-#: config/epiphany/epiphany.cc:488 config/gcn/gcn.cc:356
-#: config/h8300/h8300.cc:4948 config/i386/i386-options.cc:3729
-#: config/i386/i386-options.cc:3906 config/i386/i386-options.cc:3962
-#: config/i386/i386-options.cc:4013 config/i386/i386-options.cc:4050
-#: config/m68k/m68k.cc:804 config/mcore/mcore.cc:3070
-#: config/nvptx/nvptx.cc:5895 config/riscv/riscv.cc:6533
+#: config/arc/arc.cc:2049 config/arm/arm.cc:7444 config/arm/arm.cc:7462
+#: config/arm/arm.cc:7641 config/avr/avr.cc:11391 config/avr/avr.cc:11405
+#: config/bfin/bfin.cc:4694 config/bfin/bfin.cc:4755 config/bfin/bfin.cc:4785
+#: config/bpf/bpf.cc:93 config/csky/csky.cc:6458 config/csky/csky.cc:6486
+#: config/epiphany/epiphany.cc:488 config/gcn/gcn.cc:362
+#: config/h8300/h8300.cc:5001 config/i386/i386-options.cc:3605
+#: config/i386/i386-options.cc:3785 config/i386/i386-options.cc:3841
+#: config/i386/i386-options.cc:3892 config/i386/i386-options.cc:3929
+#: config/m68k/m68k.cc:804 config/mcore/mcore.cc:3068 config/mingw/winnt.cc:354
+#: config/nvptx/nvptx.cc:5888 config/riscv/riscv.cc:7562
 #: config/rl78/rl78.cc:821 config/rl78/rl78.cc:890
-#: config/rs6000/rs6000.cc:20642 config/rx/rx.cc:2727 config/rx/rx.cc:2753
-#: config/s390/s390.cc:1157 config/s390/s390.cc:1247 config/sh/sh.cc:8442
+#: config/rs6000/rs6000.cc:20653 config/rx/rx.cc:2712 config/rx/rx.cc:2738
+#: config/s390/s390.cc:1158 config/s390/s390.cc:1248 config/sh/sh.cc:8442
 #: config/sh/sh.cc:8460 config/sh/sh.cc:8484 config/sh/sh.cc:8555
-#: config/sh/sh.cc:8578 config/stormy16/stormy16.cc:2403
+#: config/sh/sh.cc:8578 config/stormy16/stormy16.cc:2402
 #: config/v850/v850.cc:2010 config/visium/visium.cc:727
 #, gcc-internal-format
 msgid "%qE attribute only applies to functions"
 msgstr ""
 
-#: config/arc/arc.cc:6880
+#: config/arc/arc.cc:6895
 #, gcc-internal-format
 msgid "%<__builtin_arc_aligned%> with non-constant alignment"
 msgstr ""
 
-#: config/arc/arc.cc:6888
+#: config/arc/arc.cc:6903
 #, gcc-internal-format
 msgid "invalid alignment value for %<__builtin_arc_aligned%>"
 msgstr ""
 
-#: config/arc/arc.cc:7051
+#: config/arc/arc.cc:7066
 #, gcc-internal-format
 msgid "operand 1 should be an unsigned 3-bit immediate"
 msgstr ""
 
-#: config/arc/arc.cc:7092 config/arc/arc.cc:7189
+#: config/arc/arc.cc:7107 config/arc/arc.cc:7204
 #, gcc-internal-format
 msgid "operand 2 should be an unsigned 3-bit value (I0-I7)"
 msgstr ""
 
-#: config/arc/arc.cc:7125 config/arc/arc.cc:7157
+#: config/arc/arc.cc:7140 config/arc/arc.cc:7172
 #, gcc-internal-format
 msgid "operand 1 should be an unsigned 3-bit value (I0-I7)"
 msgstr ""
 
-#: config/arc/arc.cc:7129 config/arc/arc.cc:7161
+#: config/arc/arc.cc:7144 config/arc/arc.cc:7176
 #, gcc-internal-format
 msgid "operand 2 should be an unsigned 8-bit value"
 msgstr ""
 
-#: config/arc/arc.cc:7193
+#: config/arc/arc.cc:7208
 #, gcc-internal-format
 msgid "operand 3 should be an unsigned 8-bit value"
 msgstr ""
 
-#: config/arc/arc.cc:7226
+#: config/arc/arc.cc:7241
 #, gcc-internal-format
 msgid "operand 4 should be an unsigned 8-bit value (0-255)"
 msgstr ""
 
-#: config/arc/arc.cc:7230
+#: config/arc/arc.cc:7245
 #, gcc-internal-format
 msgid "operand 3 should be an unsigned 3-bit value (I0-I7)"
 msgstr ""
 
-#: config/arc/arc.cc:7237
+#: config/arc/arc.cc:7252
 #, gcc-internal-format
 msgid "operand 2 should be an unsigned 3-bit value (subreg 0-7)"
 msgstr ""
 
-#: config/arc/arc.cc:7240
+#: config/arc/arc.cc:7255
 #, gcc-internal-format
 msgid "operand 2 should be an even 3-bit value (subreg 0,2,4,6)"
 msgstr ""
 
-#: config/arc/arc.cc:7287
+#: config/arc/arc.cc:7302
 #, gcc-internal-format, gfc-internal-format
 msgid "builtin requires an immediate for operand %d"
 msgstr ""
 
-#: config/arc/arc.cc:7292
+#: config/arc/arc.cc:7307
 #, gcc-internal-format, gfc-internal-format
 msgid "operand %d should be a 6 bit unsigned immediate"
 msgstr ""
 
-#: config/arc/arc.cc:7296
+#: config/arc/arc.cc:7311
 #, gcc-internal-format, gfc-internal-format
 msgid "operand %d should be a 8 bit unsigned immediate"
 msgstr ""
 
-#: config/arc/arc.cc:7300
+#: config/arc/arc.cc:7315
 #, gcc-internal-format, gfc-internal-format
 msgid "operand %d should be a 3 bit unsigned immediate"
 msgstr ""
 
-#: config/arc/arc.cc:7303
+#: config/arc/arc.cc:7318
 #, gcc-internal-format, gfc-internal-format
 msgid "unknown builtin immediate operand type for operand %d"
 msgstr ""
 
-#: config/arc/arc.cc:7394
+#: config/arc/arc.cc:7409
 #, gcc-internal-format
 msgid ""
 "register number must be a compile-time constant.  Try giving higher "
 "optimization levels"
 msgstr ""
 
-#: config/arc/arc.cc:8467
+#: config/arc/arc.cc:8481
 #, gcc-internal-format
 msgid "insn addresses not set after shorten branches"
 msgstr ""
 
-#: config/arc/arc.cc:8682
+#: config/arc/arc.cc:8696
 #, gcc-internal-format
 msgid "insn addresses not freed"
 msgstr ""
 
-#: config/arc/arc.cc:10830
+#: config/arc/arc.cc:10844
 #, gcc-internal-format
 msgid "%qE attribute only valid for ARCv2 architecture"
 msgstr ""
 
-#: config/arc/arc.cc:10838 config/arc/arc.cc:10877
+#: config/arc/arc.cc:10852 config/arc/arc.cc:10891
 #, gcc-internal-format
 msgid "argument of %qE attribute is missing"
 msgstr ""
 
-#: config/arc/arc.cc:10849 config/arc/arc.cc:10888 config/arc/arc.cc:11014
-#: config/avr/avr.cc:11397
+#: config/arc/arc.cc:10863 config/arc/arc.cc:10902 config/arc/arc.cc:11028
+#: config/avr/avr.cc:11465
 #, gcc-internal-format
 msgid "%qE attribute allows only an integer constant argument"
 msgstr ""
 
-#: config/arc/arc.cc:10869
+#: config/arc/arc.cc:10883
 #, gcc-internal-format
 msgid "%qE attribute only valid for ARC EM architecture"
 msgstr ""
 
-#: config/arc/arc.cc:10924
+#: config/arc/arc.cc:10938
 #, gcc-internal-format
 msgid "%qE attribute only applies to types"
 msgstr ""
 
-#: config/arc/arc.cc:10930
+#: config/arc/arc.cc:10944
 #, gcc-internal-format
 msgid "argument of %qE attribute ignored"
 msgstr ""
 
-#: config/arc/arc.cc:11004 config/avr/avr.cc:11384 config/bfin/bfin.cc:4818
-#: config/mingw/winnt.cc:63 config/nvptx/nvptx.cc:5918
+#: config/arc/arc.cc:11018 config/avr/avr.cc:11452 config/bfin/bfin.cc:4817
+#: config/mingw/winnt.cc:63 config/nvptx/nvptx.cc:5911
 #, gcc-internal-format
 msgid "%qE attribute only applies to variables"
 msgstr ""
 
-#: config/arm/aarch-common.cc:553 config/i386/i386.cc:24309
+#: config/arm/aarch-common.cc:553 config/i386/i386.cc:24966
 #, gcc-internal-format
 msgid "alternatives not allowed in %<asm%> flag output"
 msgstr ""
 
-#: config/arm/aarch-common.cc:614 config/i386/i386.cc:24373
+#: config/arm/aarch-common.cc:614 config/i386/i386.cc:25030
 #, gcc-internal-format
 msgid "unknown %<asm%> flag output %qs"
 msgstr ""
 
-#: config/arm/aarch-common.cc:624 config/i386/i386.cc:24402
+#: config/arm/aarch-common.cc:624 config/i386/i386.cc:25059
 #, gcc-internal-format
 msgid "invalid type for %<asm%> flag output"
 msgstr ""
 
-#: config/arm/aarch-common.cc:714
+#: config/arm/aarch-common.cc:713
 #, gcc-internal-format
 msgid "missing feature or flag for %qs"
 msgstr ""
 
-#: config/arm/aarch-common.cc:716
+#: config/arm/aarch-common.cc:715
 #, gcc-internal-format
 msgid "invalid argument %qs for %qs"
 msgstr ""
 
-#: config/arm/aarch-common.cc:727
+#: config/arm/aarch-common.cc:726
 #, gcc-internal-format
 msgid "argument %qs can only appear alone in %qs"
 msgstr ""
 
-#: config/arm/arm-builtins.cc:2928
+#: config/arm/arm-builtins.cc:2229
 #, gcc-internal-format, gfc-internal-format
 msgid "coprocessor %d is not enabled with +cdecp%d"
 msgstr ""
 
-#: config/arm/arm-builtins.cc:2932
+#: config/arm/arm-builtins.cc:2233
 #, gcc-internal-format
 msgid ""
 "coproc must be a constant immediate in range [0-%d] enabled with "
 "%<+cdecp<N>%>"
 msgstr ""
 
-#: config/arm/arm-builtins.cc:2941
+#: config/arm/arm-builtins.cc:2242
 #, gcc-internal-format
 msgid "argument %d to %qE must be a constant immediate in range [0-%d]"
 msgstr ""
 
-#: config/arm/arm-builtins.cc:3060
+#: config/arm/arm-builtins.cc:2360
 #, gcc-internal-format
 msgid "this builtin is not supported for this target"
 msgstr ""
 
-#: config/arm/arm-builtins.cc:3175
+#: config/arm/arm-builtins.cc:2475
 #, gcc-internal-format
 msgid "saturation bit range must be in the range [%wd, %wd]"
 msgstr ""
 
-#: config/arm/arm-builtins.cc:3180
+#: config/arm/arm-builtins.cc:2480
 #, gcc-internal-format
 msgid "saturation bit range must be a constant immediate"
 msgstr ""
 
-#: config/arm/arm-builtins.cc:3204
+#: config/arm/arm-builtins.cc:2504
 #, gcc-internal-format
 msgid "You must enable MVE instructions to use these intrinsics"
 msgstr ""
 
-#: config/arm/arm-builtins.cc:3226
+#: config/arm/arm-builtins.cc:2526
 #, gcc-internal-format
 msgid ""
 "You must enable NEON instructions (e.g. %<-mfloat-abi=softfp%> %<-"
 "mfpu=neon%>) to use these intrinsics."
 msgstr ""
 
-#: config/arm/arm-builtins.cc:3248
+#: config/arm/arm-builtins.cc:2548
 #, gcc-internal-format
 msgid "You must enable VFP instructions to use these intrinsics."
 msgstr ""
 
-#: config/arm/arm-builtins.cc:3319
+#: config/arm/arm-builtins.cc:2608
 #, gcc-internal-format
 msgid ""
 "You must enable crypto instructions (e.g. include %<-mfloat-abi=softfp%> %<-"
 "mfpu=crypto-neon%>) to use these intrinsics."
 msgstr ""
 
-#. @@@ better error message
-#: config/arm/arm-builtins.cc:3397 config/arm/arm-builtins.cc:3501
-#, gcc-internal-format
-msgid "selector must be an immediate"
-msgstr ""
-
-#: config/arm/arm-builtins.cc:3405 config/arm/arm-builtins.cc:3450
-#: config/arm/arm-builtins.cc:3508 config/arm/arm-builtins.cc:3517
-#, gcc-internal-format
-msgid "the range of selector should be in 0 to 7"
-msgstr ""
-
-#: config/arm/arm-builtins.cc:3410 config/arm/arm-builtins.cc:3519
-#, gcc-internal-format
-msgid "the range of selector should be in 0 to 3"
-msgstr ""
-
-#: config/arm/arm-builtins.cc:3415 config/arm/arm-builtins.cc:3521
-#, gcc-internal-format
-msgid "the range of selector should be in 0 to 1"
-msgstr ""
-
-#: config/arm/arm-builtins.cc:3587
-#, gcc-internal-format
-msgid "mask must be an immediate"
-msgstr ""
-
-#: config/arm/arm-builtins.cc:3592
-#, gcc-internal-format
-msgid "the range of mask should be in 0 to 255"
-msgstr ""
-
-#: config/arm/arm-builtins.cc:3780
-#, gcc-internal-format
-msgid ""
-"the range of count should be in 0 to 32; please check the intrinsic %qs in "
-"code"
-msgstr ""
-
-#: config/arm/arm-builtins.cc:3788
-#, gcc-internal-format
-msgid ""
-"the range of count should be in 0 to 16; please check the intrinsic %qs in "
-"code"
-msgstr ""
-
-#: config/arm/arm-builtins.cc:3796
-#, gcc-internal-format
-msgid ""
-"the range of count should be in 0 to 64; please check the intrinsic %qs in "
-"code"
-msgstr ""
-
-#: config/arm/arm-builtins.cc:3859
-#, gcc-internal-format
-msgid ""
-"the count should be no less than 0; please check the intrinsic %qs in code"
-msgstr ""
-
 #: config/arm/arm-c.cc:108
 #, gcc-internal-format
 msgid ""
@@ -42728,377 +44387,357 @@ msgstr ""
 msgid "unknown %<#pragma GCC arm%> option %qs"
 msgstr ""
 
-#: config/arm/arm-mve-builtins.cc:528
+#: config/arm/arm-mve-builtins.cc:508
 #, gcc-internal-format
 msgid "this definition requires the MVE ISA extension"
 msgstr ""
 
-#: config/arm/arm-mve-builtins.cc:553
+#: config/arm/arm-mve-builtins.cc:533
 #, gcc-internal-format
 msgid "this definition requires MVE types, please include %qs"
 msgstr ""
 
-#: config/arm/arm-mve-builtins.cc:623
+#: config/arm/arm-mve-builtins.cc:603
 #, gcc-internal-format
 msgid ""
 "you can enable mve.fp by using the command-line option %<-march%>, or by "
 "using the %<target%> attribute or pragma"
 msgstr ""
 
-#: config/arm/arm-mve-builtins.cc:660
+#: config/arm/arm-mve-builtins.cc:640
 #, gcc-internal-format
 msgid ""
 "passing %wd to argument %d of %qE, which expects a value multiple of %wd in "
 "the range [%wd, %wd]"
 msgstr ""
 
-#: config/arm/arm-mve-builtins.cc:1275
+#: config/arm/arm-mve-builtins.cc:1272
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, but %qT is not a valid MVE element type"
 msgstr ""
 
-#: config/arm/arm-mve-builtins.cc:1309
+#: config/arm/arm-mve-builtins.cc:1306
 #, gcc-internal-format
 msgid ""
 "passing %qT to argument %d of %qE, which expects a single MVE vector rather "
 "than a tuple"
 msgstr ""
 
-#: config/arm/arm-mve-builtins.cc:1329
+#: config/arm/arm-mve-builtins.cc:1326
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, which expects an MVE vector type"
 msgstr ""
 
-#: config/arm/arm-mve-builtins.cc:1332
+#: config/arm/arm-mve-builtins.cc:1329
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, which expects an MVE tuple type"
 msgstr ""
 
-#: config/arm/arm-mve-builtins.cc:1409
+#: config/arm/arm-mve-builtins.cc:1406
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, but previous arguments had type %qT"
 msgstr ""
 
-#: config/arm/arm-mve-builtins.cc:1699
+#: config/arm/arm-mve-builtins.cc:1696
 #, gcc-internal-format
 msgid "passing %qT to argument %d of %qE, which expects a pointer to %qT"
 msgstr ""
 
-#: config/arm/arm-mve-builtins.cc:2341
+#: config/arm/arm-mve-builtins.cc:2338
 #, gcc-internal-format
 msgid ""
 "constant predicate argument %d (%wx) does not map to %d lane numbers, "
 "converted to %wx"
 msgstr ""
 
-#: config/arm/arm.cc:2976
-#, gcc-internal-format
-msgid "iWMMXt and NEON are incompatible"
-msgstr ""
-
-#: config/arm/arm.cc:2982
+#: config/arm/arm.cc:2974
 #, gcc-internal-format
 msgid "target CPU does not support ARM mode"
 msgstr ""
 
-#: config/arm/arm.cc:2986
+#: config/arm/arm.cc:2978
 #, gcc-internal-format
 msgid ""
 "enabling backtrace support is only meaningful when compiling for the Thumb"
 msgstr ""
 
-#: config/arm/arm.cc:2989
+#: config/arm/arm.cc:2981
 #, gcc-internal-format
 msgid ""
 "enabling callee interworking support is only meaningful when compiling for "
 "the Thumb"
 msgstr ""
 
-#: config/arm/arm.cc:2997
+#: config/arm/arm.cc:2989
 #, gcc-internal-format
 msgid "%<-g%> with %<-mno-apcs-frame%> may not give sensible debugging"
 msgstr ""
 
-#: config/arm/arm.cc:3002
-#, gcc-internal-format
-msgid "iWMMXt unsupported under Thumb mode"
-msgstr ""
-
-#: config/arm/arm.cc:3005
+#: config/arm/arm.cc:2993
 #, gcc-internal-format
 msgid "cannot use %<-mtp=cp15%> with 16-bit Thumb"
 msgstr ""
 
-#: config/arm/arm.cc:3009
+#: config/arm/arm.cc:2997
 #, gcc-internal-format
 msgid "RTP PIC is incompatible with Thumb"
 msgstr ""
 
-#: config/arm/arm.cc:3022
+#: config/arm/arm.cc:3010
 #, gcc-internal-format
 msgid ""
 "%qs only supports non-pic code on M-profile targets with the MOVT instruction"
 msgstr ""
 
-#: config/arm/arm.cc:3027
+#: config/arm/arm.cc:3015
 #, gcc-internal-format
 msgid "%qs only supports non-pic code on M-profile targets"
 msgstr ""
 
-#: config/arm/arm.cc:3032
+#: config/arm/arm.cc:3020
 #, gcc-internal-format
 msgid "%qs is incompatible with %<-mword-relocations%>"
 msgstr ""
 
-#: config/arm/arm.cc:3134
+#: config/arm/arm.cc:3122
 #, gcc-internal-format
 msgid "target CPU does not support THUMB instructions"
 msgstr ""
 
-#: config/arm/arm.cc:3184
+#: config/arm/arm.cc:3172
 #, gcc-internal-format
 msgid "target CPU does not support unaligned accesses"
 msgstr ""
 
-#: config/arm/arm.cc:3243 config/arm/arm.cc:33500
+#: config/arm/arm.cc:3231 config/arm/arm.cc:33186
 #, gcc-internal-format
 msgid "This architecture does not support branch protection instructions"
 msgstr ""
 
-#: config/arm/arm.cc:3246
+#: config/arm/arm.cc:3234
 #, gcc-internal-format
 msgid "Return address signing is not supported with %<-mtpcs-frame%>."
 msgstr ""
 
-#: config/arm/arm.cc:3384
+#: config/arm/arm.cc:3372
 #, gcc-internal-format
 msgid "switch %<-mcpu=%s%> conflicts with switch %<-march=%s%>"
 msgstr ""
 
-#: config/arm/arm.cc:3639
+#: config/arm/arm.cc:3627
 #, gcc-internal-format
 msgid "%<-mapcs-stack-check%> incompatible with %<-mno-apcs-frame%>"
 msgstr ""
 
-#: config/arm/arm.cc:3648
+#: config/arm/arm.cc:3636
 #, gcc-internal-format
 msgid "%<-fpic%> and %<-mapcs-reent%> are incompatible"
 msgstr ""
 
-#: config/arm/arm.cc:3651
+#: config/arm/arm.cc:3639
 #, gcc-internal-format
 msgid "APCS reentrant code not supported.  Ignored"
 msgstr ""
 
-#: config/arm/arm.cc:3674
+#: config/arm/arm.cc:3662
 #, gcc-internal-format
 msgid "option %<-mstructure-size-boundary%> is deprecated"
 msgstr ""
 
-#: config/arm/arm.cc:3682
+#: config/arm/arm.cc:3670
 #, gcc-internal-format
 msgid "structure size boundary can only be set to 8, 32 or 64"
 msgstr ""
 
-#: config/arm/arm.cc:3684
+#: config/arm/arm.cc:3672
 #, gcc-internal-format
 msgid "structure size boundary can only be set to 8 or 32"
 msgstr ""
 
-#: config/arm/arm.cc:3709
+#: config/arm/arm.cc:3697
 #, gcc-internal-format
 msgid "RTP PIC is incompatible with %<-msingle-pic-base%>"
 msgstr ""
 
-#: config/arm/arm.cc:3721 config/arm/arm.cc:33850
+#: config/arm/arm.cc:3709 config/arm/arm.cc:33536
 #, gcc-internal-format
 msgid "FDPIC mode is not supported in Thumb-1 mode"
 msgstr ""
 
-#: config/arm/arm.cc:3729
+#: config/arm/arm.cc:3717
 #, gcc-internal-format
 msgid "%<-mpic-register=%> is useless without %<-fpic%>"
 msgstr ""
 
-#: config/arm/arm.cc:3738
+#: config/arm/arm.cc:3726
 #, gcc-internal-format
 msgid "unable to use %qs for PIC register"
 msgstr ""
 
-#: config/arm/arm.cc:3778 config/pru/pru.cc:627
+#: config/arm/arm.cc:3766 config/pru/pru.cc:627
 #, gcc-internal-format
 msgid "%<-freorder-blocks-and-partition%> not supported on this architecture"
 msgstr ""
 
-#: config/arm/arm.cc:3946
+#: config/arm/arm.cc:3935
 #, gcc-internal-format
 msgid "selected fp16 options are incompatible"
 msgstr ""
 
-#: config/arm/arm.cc:3981
+#: config/arm/arm.cc:3973
 #, gcc-internal-format
 msgid "%<-mstack-protector-guard=tls%> needs a hardware TLS register"
 msgstr ""
 
-#: config/arm/arm.cc:4001
-#, gcc-internal-format
-msgid "iwmmxt requires an AAPCS compatible ABI for proper operation"
-msgstr ""
-
-#: config/arm/arm.cc:4004
-#, gcc-internal-format
-msgid "iwmmxt abi requires an iwmmxt capable cpu"
-msgstr ""
-
-#: config/arm/arm.cc:4012
+#: config/arm/arm.cc:3998
 #, gcc-internal-format
 msgid "target CPU does not support interworking"
 msgstr ""
 
-#: config/arm/arm.cc:4025
+#: config/arm/arm.cc:4011
 #, gcc-internal-format
 msgid "AAPCS does not support %<-mcaller-super-interworking%>"
 msgstr ""
 
-#: config/arm/arm.cc:4028
+#: config/arm/arm.cc:4014
 #, gcc-internal-format
 msgid "AAPCS does not support %<-mcallee-super-interworking%>"
 msgstr ""
 
-#: config/arm/arm.cc:4033
+#: config/arm/arm.cc:4019
 #, gcc-internal-format
 msgid "%<__fp16%> and no ldrh"
 msgstr ""
 
-#: config/arm/arm.cc:4036
+#: config/arm/arm.cc:4022
 #, gcc-internal-format
 msgid "target CPU does not support ARMv8-M Security Extensions"
 msgstr ""
 
-#: config/arm/arm.cc:4041
+#: config/arm/arm.cc:4027
 #, gcc-internal-format
 msgid "ARMv8-M Security Extensions incompatible with selected FPU"
 msgstr ""
 
-#: config/arm/arm.cc:4053
+#: config/arm/arm.cc:4037
 #, gcc-internal-format
 msgid "%<-mfloat-abi=hard%>: selected architecture lacks an FPU"
 msgstr ""
 
-#: config/arm/arm.cc:4061
+#: config/arm/arm.cc:4045
 #, gcc-internal-format
 msgid "%<-mfloat-abi=hard%> and VFP"
 msgstr ""
 
-#: config/arm/arm.cc:6326
+#: config/arm/arm.cc:6329
 #, gcc-internal-format
 msgid "non-AAPCS derived PCS variant"
 msgstr ""
 
-#: config/arm/arm.cc:6328
+#: config/arm/arm.cc:6331
 #, gcc-internal-format
 msgid "variadic functions must use the base AAPCS variant"
 msgstr ""
 
-#: config/arm/arm.cc:6357
+#: config/arm/arm.cc:6360
 #, gcc-internal-format
 msgid "PCS variant"
 msgstr ""
 
-#: config/arm/arm.cc:6632
+#: config/arm/arm.cc:6635
 #, gcc-internal-format
 msgid "Thumb-1 %<hard-float%> VFP ABI"
 msgstr ""
 
-#: config/arm/arm.cc:6727
+#: config/arm/arm.cc:6730
 #, gcc-internal-format
 msgid "argument of type %qT not permitted with %<-mgeneral-regs-only%>"
 msgstr ""
 
-#: config/arm/arm.cc:7111 config/arm/arm.cc:7332 config/arm/arm.cc:7365
-#: config/arm/arm.cc:29586
+#: config/arm/arm.cc:7114 config/arm/arm.cc:7305 config/arm/arm.cc:7338
+#: config/arm/arm.cc:29396
 #, gcc-internal-format
 msgid "parameter passing for argument of type %qT changed in GCC 7.1"
 msgstr ""
 
-#: config/arm/arm.cc:7503
+#: config/arm/arm.cc:7468
 #, gcc-internal-format
 msgid ""
 "FP registers might be clobbered despite %qE attribute: compile with %<-"
 "mgeneral-regs-only%>"
 msgstr ""
 
-#: config/arm/arm.cc:7625
+#: config/arm/arm.cc:7590
 #, gcc-internal-format
 msgid ""
 "%qE attribute not available to functions with arguments passed on the stack"
 msgstr ""
 
-#: config/arm/arm.cc:7637
+#: config/arm/arm.cc:7602
 #, gcc-internal-format
 msgid ""
 "%qE attribute not available to functions with variable number of arguments"
 msgstr ""
 
-#: config/arm/arm.cc:7646
+#: config/arm/arm.cc:7611
 #, gcc-internal-format
 msgid "%qE attribute not available to functions that return value on the stack"
 msgstr ""
 
-#: config/arm/arm.cc:7668 config/arm/arm.cc:7720
+#: config/arm/arm.cc:7633 config/arm/arm.cc:7685
 #, gcc-internal-format
 msgid "%qE attribute ignored without %<-mcmse%> option"
 msgstr ""
 
-#: config/arm/arm.cc:7687
+#: config/arm/arm.cc:7652
 #, gcc-internal-format
 msgid "%qE attribute has no effect on functions with static linkage"
 msgstr ""
 
-#: config/arm/arm.cc:7740
+#: config/arm/arm.cc:7705
 #, gcc-internal-format
 msgid "%qE attribute only applies to base type of a function pointer"
 msgstr ""
 
-#: config/arm/arm.cc:9752
+#: config/arm/arm.cc:9700
 #, gcc-internal-format
 msgid ""
 "accessing thread-local storage is not currently supported with %<-mpure-"
 "code%> or %<-mslow-flash-data%>"
 msgstr ""
 
-#: config/arm/arm.cc:13584 config/arm/arm.cc:13586
+#: config/arm/arm.cc:13527 config/arm/arm.cc:13529
 #, gcc-internal-format
 msgid "%s %wd out of range %wd - %wd"
 msgstr ""
 
-#: config/arm/arm.cc:26127
+#: config/arm/arm.cc:25975
 #, gcc-internal-format
 msgid "unable to compute real location of stacked parameter"
 msgstr ""
 
-#: config/arm/arm.cc:26790
+#: config/arm/arm.cc:26638
 #, gcc-internal-format
 msgid "Unexpected thumb1 far jump"
 msgstr ""
 
-#: config/arm/arm.cc:27045
+#: config/arm/arm.cc:26893
 #, gcc-internal-format
 msgid "no low registers available for popping high registers"
 msgstr ""
 
-#: config/arm/arm.cc:27298
+#: config/arm/arm.cc:27146
 #, gcc-internal-format
 msgid "Interrupt Service Routines cannot be coded in Thumb-1 mode"
 msgstr ""
 
-#: config/arm/arm.cc:27596
+#: config/arm/arm.cc:27444
 #, gcc-internal-format
 msgid "%<-fstack-check=specific%> for Thumb-1"
 msgstr ""
 
-#: config/arm/arm.cc:33865
+#: config/arm/arm.cc:33551
 #, gcc-internal-format
 msgid "invalid fpu for target attribute or pragma %qs"
 msgstr ""
@@ -43106,22 +44745,22 @@ msgstr ""
 #. This doesn't really make sense until we support
 #. general dynamic selection of the architecture and all
 #. sub-features.
-#: config/arm/arm.cc:33873
+#: config/arm/arm.cc:33559
 #, gcc-internal-format
 msgid "auto fpu selection not currently permitted here"
 msgstr ""
 
-#: config/arm/arm.cc:33886
+#: config/arm/arm.cc:33572
 #, gcc-internal-format
 msgid "invalid architecture for target attribute or pragma %qs"
 msgstr ""
 
-#: config/arm/arm.cc:33900
+#: config/arm/arm.cc:33586
 #, gcc-internal-format
 msgid "unknown target attribute or pragma %qs"
 msgstr ""
 
-#: config/arm/arm.cc:36137
+#: config/arm/arm.cc:35822
 #, gcc-internal-format
 msgid "%<asm%> flags not supported in thumb1 mode"
 msgstr ""
@@ -43178,7 +44817,7 @@ msgstr ""
 msgid "supported core architectures:%s"
 msgstr ""
 
-#: config/avr/avr-passes.cc:4907
+#: config/avr/avr-passes.cc:5032
 #, gcc-internal-format
 msgid "failed to split insn"
 msgstr ""
@@ -43187,69 +44826,69 @@ msgstr ""
 #. happen as options are provided by device-specs.  It could be a
 #. typo in a device-specs or calling the compiler proper directly
 #. with -mmcu=<device>.
-#: config/avr/avr.cc:462
+#: config/avr/avr.cc:527
 #, gcc-internal-format
 msgid "unknown core architecture %qs specified with %qs"
 msgstr ""
 
-#: config/avr/avr.cc:522 config/pru/pru.cc:616 config/visium/visium.cc:425
+#: config/avr/avr.cc:587 config/pru/pru.cc:616 config/visium/visium.cc:425
 #, gcc-internal-format
 msgid "%<-fpic%> is not supported"
 msgstr ""
 
-#: config/avr/avr.cc:524 config/pru/pru.cc:618 config/visium/visium.cc:427
+#: config/avr/avr.cc:589 config/pru/pru.cc:618 config/visium/visium.cc:427
 #, gcc-internal-format
 msgid "%<-fPIC%> is not supported"
 msgstr ""
 
-#: config/avr/avr.cc:526 config/pru/pru.cc:620
+#: config/avr/avr.cc:591 config/pru/pru.cc:620
 #, gcc-internal-format
 msgid "%<-fpie%> is not supported"
 msgstr ""
 
-#: config/avr/avr.cc:528 config/pru/pru.cc:622
+#: config/avr/avr.cc:593 config/pru/pru.cc:622
 #, gcc-internal-format
 msgid "%<-fPIE%> is not supported"
 msgstr ""
 
-#: config/avr/avr.cc:954 config/avr/avr.cc:959 config/riscv/riscv.cc:11234
+#: config/avr/avr.cc:1019 config/avr/avr.cc:1024 config/riscv/riscv.cc:12976
 #, gcc-internal-format
 msgid "function attributes %qs and %qs are mutually exclusive"
 msgstr ""
 
-#: config/avr/avr.cc:981 config/riscv/riscv.cc:11246
+#: config/avr/avr.cc:1046 config/riscv/riscv.cc:12988
 #, gcc-internal-format
 msgid "%qs function cannot have arguments"
 msgstr ""
 
-#: config/avr/avr.cc:983
+#: config/avr/avr.cc:1048
 #, gcc-internal-format
 msgid "method %qs has an implicit %<this%> argument"
 msgstr ""
 
-#: config/avr/avr.cc:987 config/riscv/riscv.cc:11243
+#: config/avr/avr.cc:1052 config/riscv/riscv.cc:12985
 #, gcc-internal-format
 msgid "%qs function cannot return a value"
 msgstr ""
 
-#: config/avr/avr.cc:999
+#: config/avr/avr.cc:1064
 #, gcc-internal-format
 msgid "%qs appears to be a misspelled %qs handler, missing %<__vector%> prefix"
 msgstr ""
 
-#: config/avr/avr.cc:1005
+#: config/avr/avr.cc:1070
 #, gcc-internal-format
 msgid "%qs attribute ignored on non-ISR function"
 msgstr ""
 
-#: config/avr/avr.cc:1015
+#: config/avr/avr.cc:1080
 #, gcc-internal-format
 msgid ""
 "%qs is a reserved identifier in AVR-LibC.  Consider %<#include <avr/"
 "interrupt.h>%> before using the %qs macro"
 msgstr ""
 
-#: config/avr/avr.cc:1022
+#: config/avr/avr.cc:1087
 #, gcc-internal-format
 msgid ""
 "%qs is a deprecated identifier in AVR-LibC.  Consider %<#include <avr/"
@@ -43257,127 +44896,127 @@ msgid ""
 "macro"
 msgstr ""
 
-#: config/avr/avr.cc:1244
+#: config/avr/avr.cc:1309
 #, gcc-internal-format
 msgid "%<builtin_return_address%> contains only 2 bytes of address"
 msgstr ""
 
-#: config/avr/avr.cc:2629
+#: config/avr/avr.cc:2608
 #, gcc-internal-format
 msgid "pointer offset from symbol may be incorrect"
 msgstr ""
 
-#: config/avr/avr.cc:2819
+#: config/avr/avr.cc:2798
 #, gcc-internal-format
 msgid "accessing data memory with program memory address"
 msgstr ""
 
-#: config/avr/avr.cc:2872
+#: config/avr/avr.cc:2851
 #, gcc-internal-format
 msgid "accessing program memory with data memory address"
 msgstr ""
 
-#: config/avr/avr.cc:3218
+#: config/avr/avr.cc:3197
 #, gcc-internal-format, gfc-internal-format
 msgid "fixed register %s used to pass parameter to function"
 msgstr ""
 
-#: config/avr/avr.cc:3700
+#: config/avr/avr.cc:3720
 #, gcc-internal-format
 msgid "writing to address space %qs not supported"
 msgstr ""
 
-#: config/avr/avr.cc:11356
+#: config/avr/avr.cc:11424
 #, gcc-internal-format
 msgid "%qE attribute only applies to variables in static storage"
 msgstr ""
 
-#: config/avr/avr.cc:11363
+#: config/avr/avr.cc:11431
 #, gcc-internal-format
 msgid "%qE attribute only supported for reduced Tiny cores"
 msgstr ""
 
-#: config/avr/avr.cc:11405
+#: config/avr/avr.cc:11473
 #, gcc-internal-format
 msgid "%qE attribute address out of range 0x%x%s0x%x"
 msgstr ""
 
-#: config/avr/avr.cc:11419
+#: config/avr/avr.cc:11487
 #, gcc-internal-format
 msgid "both %s and %qE attribute provide address"
 msgstr ""
 
-#: config/avr/avr.cc:11429
+#: config/avr/avr.cc:11497
 #, gcc-internal-format
 msgid "%qE attribute on non-volatile variable"
 msgstr ""
 
-#: config/avr/avr.cc:11507
+#: config/avr/avr.cc:11575
 #, gcc-internal-format
 msgid "address spaces are not supported for reduced Tiny devices"
 msgstr ""
 
-#: config/avr/avr.cc:11514
+#: config/avr/avr.cc:11582
 #, gcc-internal-format
 msgid ""
 "address space %qs not supported for devices with flash size up to %d KiB"
 msgstr ""
 
-#: config/avr/avr.cc:11695
+#: config/avr/avr.cc:11775
 #, gcc-internal-format
 msgid "pointer targeting address space %qs must be const in %qT"
 msgstr ""
 
-#: config/avr/avr.cc:11698
+#: config/avr/avr.cc:11778
 #, gcc-internal-format
 msgid "pointer targeting address space %qs must be const in %s %q+D"
 msgstr ""
 
-#: config/avr/avr.cc:11723
+#: config/avr/avr.cc:11803
 #, gcc-internal-format
 msgid "attribute %qs expects a constant positive integer argument"
 msgstr ""
 
-#: config/avr/avr.cc:11727
+#: config/avr/avr.cc:11807
 #, gcc-internal-format
 msgid "vector number %d of %q+D is out of range 1%s3 for compact vector table"
 msgstr ""
 
-#: config/avr/avr.cc:11769
+#: config/avr/avr.cc:11849
 #, gcc-internal-format
 msgid "variable %q+D with attribute %qs must be located in static storage"
 msgstr ""
 
-#: config/avr/avr.cc:11812
+#: config/avr/avr.cc:11892
 #, gcc-internal-format
 msgid ""
 "%<section(\"%s\")%> attribute on main function inhibits %<-mno-call-main%>"
 msgstr ""
 
-#: config/avr/avr.cc:11868
+#: config/avr/avr.cc:11948
 #, gcc-internal-format
 msgid ""
 "variable %q+D must be const in order to be put into read-only section by "
 "means of %qs"
 msgstr ""
 
-#: config/avr/avr.cc:12029
+#: config/avr/avr.cc:12066
 #, gcc-internal-format
 msgid "static attribute %qs declaration for %q+D needs an address"
 msgstr ""
 
-#: config/avr/avr.cc:12118
+#: config/avr/avr.cc:12155
 #, gcc-internal-format
 msgid "only uninitialized variables can be placed in the %<.noinit%> section"
 msgstr ""
 
 #. This might happen with C++ if stuff needs constructing.
-#: config/avr/avr.cc:12195
+#: config/avr/avr.cc:12232
 #, gcc-internal-format
 msgid "variable %q+D with dynamic initialization put into program memory area"
 msgstr ""
 
-#: config/avr/avr.cc:12206
+#: config/avr/avr.cc:12243
 #, gcc-internal-format
 msgid "uninitialized variable %q+D put into program memory area"
 msgstr ""
@@ -43386,51 +45025,51 @@ msgstr ""
 #. hence deny initializers now.  The values of symbols with an
 #. address attribute are determined by the attribute, not by
 #. some initializer.
-#: config/avr/avr.cc:12271
+#: config/avr/avr.cc:12308
 #, gcc-internal-format
 msgid "variable %q+D with attribute %qs must not have an initializer"
 msgstr ""
 
-#: config/avr/avr.cc:12324
+#: config/avr/avr.cc:12361
 #, gcc-internal-format
 msgid "%q+D has incompatible attributes %qs and %qs"
 msgstr ""
 
-#: config/avr/avr.cc:12388
+#: config/avr/avr.cc:12425
 #, gcc-internal-format
 msgid "architecture %qs supported for assembler only"
 msgstr ""
 
-#: config/avr/avr.cc:15093
+#: config/avr/avr.cc:15165
 #, gcc-internal-format
 msgid "conversion from address space %qs to address space %qs"
 msgstr ""
 
-#: config/avr/avr.cc:16261 config/avr/avr.cc:16274
+#: config/avr/avr.cc:16334 config/avr/avr.cc:16347
 #, gcc-internal-format, gfc-internal-format
 msgid "%s expects a compile time integer constant"
 msgstr ""
 
-#: config/avr/avr.cc:16289
+#: config/avr/avr.cc:16362
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "%s expects a compile time integer constant of 0x01, 0x7f, 0x80 or 0xfe as "
 "first argument"
 msgstr ""
 
-#: config/avr/avr.cc:16304
+#: config/avr/avr.cc:16377
 #, gcc-internal-format, gfc-internal-format
 msgid "%s expects a compile time long integer constant as first argument"
 msgstr ""
 
-#: config/avr/avr.cc:16332
+#: config/avr/avr.cc:16405
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "rounding to %d bits has no effect for fixed-point value with %d fractional "
 "bits"
 msgstr ""
 
-#: config/avr/avr.cc:16341
+#: config/avr/avr.cc:16414
 #, gcc-internal-format
 msgid "rounding result will always be 0"
 msgstr ""
@@ -43502,12 +45141,12 @@ msgstr ""
 msgid "%<-mcorea%> and %<-mcoreb%> cannot be used together"
 msgstr ""
 
-#: config/bfin/bfin.cc:4700
+#: config/bfin/bfin.cc:4699
 #, gcc-internal-format
 msgid "multiple function type attributes specified"
 msgstr ""
 
-#: config/bfin/bfin.cc:4767
+#: config/bfin/bfin.cc:4766
 #, gcc-internal-format
 msgid ""
 "cannot apply both %<longcall%> and %<shortcall%> attributes to the same "
@@ -43569,9 +45208,9 @@ msgstr ""
 msgid "indirect call in function, which are not supported by eBPF"
 msgstr ""
 
-#: config/bpf/bpf.cc:1065 config/loongarch/loongarch-builtins.cc:2987
-#: config/mips/mips.cc:17557 config/riscv/riscv-builtins.cc:360
-#: config/riscv/riscv-vector-builtins.cc:4473
+#: config/bpf/bpf.cc:1065 config/loongarch/loongarch-builtins.cc:3042
+#: config/mips/mips.cc:17579 config/riscv/riscv-builtins.cc:369
+#: config/riscv/riscv-vector-builtins.cc:5196
 #, gcc-internal-format
 msgid "invalid argument to built-in function"
 msgstr ""
@@ -43581,24 +45220,24 @@ msgstr ""
 msgid "invalid built-in function at expansion"
 msgstr ""
 
-#: config/bpf/bpf.cc:1302 config/bpf/bpf.cc:1305
+#: config/bpf/bpf.cc:1300 config/bpf/bpf.cc:1303
 #, gcc-internal-format
 msgid "could not inline call to %<__builtin_%s%>: size must be constant"
 msgstr ""
 
-#: config/bpf/bpf.cc:1333 config/bpf/bpf.cc:1336
+#: config/bpf/bpf.cc:1331 config/bpf/bpf.cc:1334
 #, gcc-internal-format
 msgid ""
 "could not inline call to %<__builtin_%s%>: too many bytes, use %<-minline-"
 "memops-threshold%>"
 msgstr ""
 
-#: config/bpf/bpf.cc:1386 config/bpf/bpf.cc:1389
+#: config/bpf/bpf.cc:1384 config/bpf/bpf.cc:1387
 #, gcc-internal-format
 msgid "could not inline call to %<__builtin_memset%>: size must be constant"
 msgstr ""
 
-#: config/bpf/bpf.cc:1417 config/bpf/bpf.cc:1420
+#: config/bpf/bpf.cc:1415 config/bpf/bpf.cc:1418
 #, gcc-internal-format
 msgid ""
 "could not inline call to %<__builtin_memset%>: too many bytes, use %<-"
@@ -43619,7 +45258,7 @@ msgstr ""
 msgid "MULT case in %<cris_op_str%>"
 msgstr ""
 
-#: config/cris/cris.cc:1253 config/moxie/moxie.cc:186 config/or1k/or1k.cc:1294
+#: config/cris/cris.cc:1253 config/moxie/moxie.cc:186 config/or1k/or1k.cc:1293
 #, gcc-internal-format, gfc-internal-format
 msgid "internal error: bad register: %d"
 msgstr ""
@@ -43663,7 +45302,7 @@ msgstr ""
 msgid "unknown dest"
 msgstr ""
 
-#: config/cris/cris.cc:3095
+#: config/cris/cris.cc:3103
 #, gcc-internal-format, gfc-internal-format
 msgid "stackframe too big: %d bytes"
 msgstr ""
@@ -43711,12 +45350,12 @@ msgstr ""
 #. by the caller.  In theory we could test for that and handle
 #. limited cases with parameters that all fit in r0-r3 with no
 #. stack overflow, but punt for now.
-#: config/csky/csky.cc:6281
+#: config/csky/csky.cc:6280
 #, gcc-internal-format
 msgid "Nested function trampolines not supported on CK801."
 msgstr ""
 
-#: config/csky/csky.cc:6477
+#: config/csky/csky.cc:6476
 #, gcc-internal-format
 msgid "%qE attribute ignored without %<-mistack%>"
 msgstr ""
@@ -43743,62 +45382,62 @@ msgstr ""
 msgid "%<stack_offset%> must be a multiple of 4"
 msgstr ""
 
-#: config/frv/frv.cc:8479
+#: config/frv/frv.cc:8475
 #, gcc-internal-format
 msgid "accumulator is not a constant integer"
 msgstr ""
 
-#: config/frv/frv.cc:8484
+#: config/frv/frv.cc:8480
 #, gcc-internal-format
 msgid "accumulator number is out of bounds"
 msgstr ""
 
-#: config/frv/frv.cc:8495
+#: config/frv/frv.cc:8491
 #, gcc-internal-format
 msgid "inappropriate accumulator for %qs"
 msgstr ""
 
-#: config/frv/frv.cc:8571
+#: config/frv/frv.cc:8567
 #, gcc-internal-format
 msgid "invalid IACC argument"
 msgstr ""
 
-#: config/frv/frv.cc:8594 config/sparc/sparc.cc:11037
+#: config/frv/frv.cc:8590 config/sparc/sparc.cc:11023
 #, gcc-internal-format
 msgid "%qs expects a constant argument"
 msgstr ""
 
-#: config/frv/frv.cc:8599 config/sparc/sparc.cc:11043
+#: config/frv/frv.cc:8595 config/sparc/sparc.cc:11029
 #, gcc-internal-format
 msgid "constant argument out of range for %qs"
 msgstr ""
 
-#: config/frv/frv.cc:9080
+#: config/frv/frv.cc:9076
 #, gcc-internal-format
 msgid "media functions are not available unless %<-mmedia%> is used"
 msgstr ""
 
-#: config/frv/frv.cc:9092
+#: config/frv/frv.cc:9088
 #, gcc-internal-format
 msgid "this media function is only available on the fr500"
 msgstr ""
 
-#: config/frv/frv.cc:9120
+#: config/frv/frv.cc:9116
 #, gcc-internal-format
 msgid "this media function is only available on the fr400 and fr550"
 msgstr ""
 
-#: config/frv/frv.cc:9139
+#: config/frv/frv.cc:9135
 #, gcc-internal-format
 msgid "this built-in function is only available on the fr405 and fr450"
 msgstr ""
 
-#: config/frv/frv.cc:9148
+#: config/frv/frv.cc:9144
 #, gcc-internal-format
 msgid "this built-in function is only available on the fr500 and fr550"
 msgstr ""
 
-#: config/frv/frv.cc:9160
+#: config/frv/frv.cc:9156
 #, gcc-internal-format
 msgid "this built-in function is only available on the fr450"
 msgstr ""
@@ -43818,164 +45457,181 @@ msgstr ""
 msgid "stack frame must be smaller than 64K"
 msgstr ""
 
-#: config/gcn/gcn.cc:171
+#: config/gcn/gcn.cc:172
 #, gcc-internal-format
 msgid "%<-mxnack=on%> is incompatible with %<-march=%s%>"
 msgstr ""
 
-#: config/gcn/gcn.cc:269
+#: config/gcn/gcn.cc:275
 #, gcc-internal-format
 msgid "%<amdgpu_hsa_kernel%> attribute requires string constant arguments"
 msgstr ""
 
-#: config/gcn/gcn.cc:282
+#: config/gcn/gcn.cc:288
 #, gcc-internal-format
 msgid "unknown specifier %qs in %<amdgpu_hsa_kernel%> attribute"
 msgstr ""
 
-#: config/gcn/gcn.cc:289
+#: config/gcn/gcn.cc:295
 #, gcc-internal-format
 msgid "duplicated parameter specifier %qs in %<amdgpu_hsa_kernel%> attribute"
 msgstr ""
 
-#: config/gcn/gcn.cc:341
+#: config/gcn/gcn.cc:347
 #, gcc-internal-format
 msgid "too many arguments passed in sgpr registers"
 msgstr ""
 
-#: config/gcn/gcn.cc:2492
+#: config/gcn/gcn.cc:2521
 #, gcc-internal-format
 msgid ""
 "A non-default set of initial values has been requested, which violates the "
 "ABI"
 msgstr ""
 
-#: config/gcn/gcn.cc:2760
+#: config/gcn/gcn.cc:2789
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong type of argument %s"
 msgstr ""
 
-#: config/gcn/gcn.cc:3889
+#: config/gcn/gcn.cc:2951
+#, gcc-internal-format
+msgid "Unified Shared Memory is required, but XNACK is disabled"
+msgstr ""
+
+#: config/gcn/gcn.cc:2952
+#, gcc-internal-format
+msgid "Try -foffload-options=-mxnack=any"
+msgstr ""
+
+#: config/gcn/gcn.cc:3928
 #, gcc-internal-format
 msgid "TLS is not implemented for GCN."
 msgstr ""
 
-#: config/gcn/gcn.cc:4981
+#: config/gcn/gcn.cc:5044
 #, gcc-internal-format
 msgid "Builtin not implemented"
 msgstr ""
 
-#: config/gcn/gcn.cc:5627
+#: config/gcn/gcn.cc:5685
 #, gcc-internal-format
 msgid "unsupported simdlen %wd (amdgcn)"
 msgstr ""
 
-#: config/gcn/gcn.cc:6338
+#: config/gcn/gcn.cc:6553
 #, gcc-internal-format
 msgid "using %<vector_length (64)%>, ignoring %d"
 msgstr ""
 
-#: config/gcn/gcn.cc:6339
+#: config/gcn/gcn.cc:6554
 #, gcc-internal-format
 msgid "using %<vector_length (64)%>, ignoring runtime setting"
 msgstr ""
 
-#: config/gcn/gcn.cc:6351 config/nvptx/nvptx.cc:6748
+#: config/gcn/gcn.cc:6566 config/nvptx/nvptx.cc:6741
 #, gcc-internal-format
 msgid "using %<num_workers (%d)%>, ignoring %d"
 msgstr ""
 
-#: config/gcn/gcn.cc:6378 config/gcn/gcn.cc:6407
+#: config/gcn/gcn.cc:6593 config/gcn/gcn.cc:6622
 #, gcc-internal-format, gfc-internal-format
 msgid "offload dimension out of range (%d)"
 msgstr ""
 
-#: config/gcn/gcn.cc:6894
+#: config/gcn/gcn.cc:7105
 #, gcc-internal-format
 msgid ""
 "%d bytes of gang-private data-share memory exhausted (increase with %<-mgang-"
 "private-size=%d%>, for example)"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:168
+#: config/gcn/mkoffload.cc:171
 #, gcc-internal-format
 msgid "deleting file %qs: %m"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:785
+#: config/gcn/mkoffload.cc:632
+#, gcc-internal-format
+msgid ""
+"conflicting settings; XNACK is forced off but Unified Shared Memory is "
+"required"
+msgstr ""
+
+#: config/gcn/mkoffload.cc:833
 #, gcc-internal-format
 msgid "%<-foffload-abi-host-opts%> not specified"
 msgstr ""
 
 #. else
-#: config/gcn/mkoffload.cc:810
+#: config/gcn/mkoffload.cc:858
 #, gcc-internal-format
 msgid "unrecognized argument in option %<-march=%s%>"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:834
+#: config/gcn/mkoffload.cc:882
 #, gcc-internal-format
 msgid "valid arguments to %<-march=%> are: %s"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:837
+#: config/gcn/mkoffload.cc:885
 #, gcc-internal-format
 msgid "valid argument to %<-march=%> is %qs"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:923
+#: config/gcn/mkoffload.cc:971
 #, gcc-internal-format
 msgid ""
 "GCC was built without library support for %<-march=%s%>; consider compiling "
 "for the associated generic architecture %<-march=%s%> instead"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:958
+#: config/gcn/mkoffload.cc:1006
 #, gcc-internal-format
 msgid "%<COLLECT_GCC%> must be set"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:1004
+#: config/gcn/mkoffload.cc:1052
 #, gcc-internal-format
 msgid "offload compiler %qs not found"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:1026
+#: config/gcn/mkoffload.cc:1074
 #, gcc-internal-format
 msgid "unrecognizable argument of option %<"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:1033 config/nvptx/mkoffload.cc:722
+#: config/gcn/mkoffload.cc:1081 config/nvptx/mkoffload.cc:728
 #, gcc-internal-format
 msgid "%<-foffload-abi-host-opts%> specified multiple times"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:1090 config/nvptx/mkoffload.cc:757
+#: config/gcn/mkoffload.cc:1138 config/nvptx/mkoffload.cc:763
 #, gcc-internal-format
 msgid "either %<-fopenacc%> or %<-fopenmp%> must be set"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:1119 config/gcn/mkoffload.cc:1136
+#: config/gcn/mkoffload.cc:1168 config/gcn/mkoffload.cc:1185
 #, gcc-internal-format
 msgid "unhandled architecture"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:1189 config/gcn/mkoffload.cc:1341
+#: config/gcn/mkoffload.cc:1238 config/gcn/mkoffload.cc:1392
 #, gcc-internal-format
 msgid "cannot open %qs"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:1327 config/nvptx/mkoffload.cc:850
+#: config/gcn/mkoffload.cc:1378 config/nvptx/mkoffload.cc:856
 #, gcc-internal-format
 msgid "cannot open omp_requires file %qs"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:1331 config/nvptx/mkoffload.cc:854
+#: config/gcn/mkoffload.cc:1382 config/nvptx/mkoffload.cc:860
 #, gcc-internal-format
 msgid "cannot read omp_requires file %qs"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:1337
+#: config/gcn/mkoffload.cc:1388
 #, gcc-internal-format
 msgid "cannot open intermediate gcn asm file"
 msgstr ""
@@ -44005,7 +45661,7 @@ msgstr ""
 msgid "%<-mn%> is not supported for linux targets"
 msgstr ""
 
-#: config/i386/driver-i386.cc:659
+#: config/i386/driver-i386.cc:638
 #, gcc-internal-format
 msgid ""
 "Xeon Phi ISA support has been removed since GCC 15, use GCC 14 for the Xeon "
@@ -44048,262 +45704,262 @@ msgstr ""
 msgid "parameter to builtin not valid: %s"
 msgstr ""
 
-#: config/i386/i386-expand.cc:10116
+#: config/i386/i386-expand.cc:11087
 #, gcc-internal-format
 msgid "interrupt service routine cannot be called directly"
 msgstr ""
 
-#: config/i386/i386-expand.cc:10589 config/i386/i386-expand.cc:12255
+#: config/i386/i386-expand.cc:11562 config/i386/i386-expand.cc:13276
 #, gcc-internal-format
 msgid "the last argument must be a 2-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11089
+#: config/i386/i386-expand.cc:12062
 #, gcc-internal-format
 msgid "the fifth argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11184
+#: config/i386/i386-expand.cc:12157
 #, gcc-internal-format
 msgid "the third argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12184
+#: config/i386/i386-expand.cc:13205
 #, gcc-internal-format
 msgid "the last argument must be an 1-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12199
+#: config/i386/i386-expand.cc:13220
 #, gcc-internal-format
 msgid "the last argument must be a 3-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12234
+#: config/i386/i386-expand.cc:13255
 #, gcc-internal-format
 msgid "the last argument must be a 4-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12274
+#: config/i386/i386-expand.cc:13295
 #, gcc-internal-format
 msgid "the last argument must be a 1-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12283
+#: config/i386/i386-expand.cc:13304
 #, gcc-internal-format, gfc-internal-format
 msgid "'%s' needs isa option %s"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12296
+#: config/i386/i386-expand.cc:13317
 #, gcc-internal-format
 msgid "the last argument must be a 5-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12306
+#: config/i386/i386-expand.cc:13327
 #, gcc-internal-format
 msgid "the next to last argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12311
+#: config/i386/i386-expand.cc:13332
 #, gcc-internal-format
 msgid "the last argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12450
+#: config/i386/i386-expand.cc:13471
 #, gcc-internal-format
 msgid "the third argument must be comparison constant"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12455
+#: config/i386/i386-expand.cc:13476
 #, gcc-internal-format
 msgid "incorrect comparison mode"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12461 config/i386/i386-expand.cc:12884
+#: config/i386/i386-expand.cc:13482 config/i386/i386-expand.cc:13905
 #, gcc-internal-format
 msgid "incorrect rounding operand"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12864
+#: config/i386/i386-expand.cc:13885
 #, gcc-internal-format
 msgid "the immediate argument must be a 4-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12872
+#: config/i386/i386-expand.cc:13893
 #, gcc-internal-format
 msgid "the immediate argument must be a 5-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12875
+#: config/i386/i386-expand.cc:13896
 #, gcc-internal-format
 msgid "the immediate argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:13355
+#: config/i386/i386-expand.cc:14376
 #, gcc-internal-format
 msgid "the fourth argument must be one of enum %qs"
 msgstr ""
 
-#: config/i386/i386-expand.cc:13425
+#: config/i386/i386-expand.cc:14446
 #, gcc-internal-format
 msgid "selector must be an integer constant in the range [0, %wi]"
 msgstr ""
 
-#: config/i386/i386-expand.cc:13682
+#: config/i386/i386-expand.cc:14702
 #, gcc-internal-format
 msgid "%qE needs unknown isa option"
 msgstr ""
 
-#: config/i386/i386-expand.cc:13686
+#: config/i386/i386-expand.cc:14706
 #, gcc-internal-format
 msgid "%qE needs isa option %s"
 msgstr ""
 
-#: config/i386/i386-expand.cc:14186
+#: config/i386/i386-expand.cc:15206
 #, gcc-internal-format
 msgid "second, third and fourth argument must be a const"
 msgstr ""
 
-#: config/i386/i386-expand.cc:14192
+#: config/i386/i386-expand.cc:15212
 #, gcc-internal-format
 msgid "invalid second argument to %<__builtin_ia32_prefetch%>; using zero"
 msgstr ""
 
-#: config/i386/i386-expand.cc:14201
+#: config/i386/i386-expand.cc:15221
 #, gcc-internal-format
 msgid "invalid third argument"
 msgstr ""
 
 #. Ignore the hint.
-#: config/i386/i386-expand.cc:14210 config/i386/i386-expand.cc:14271
+#: config/i386/i386-expand.cc:15230 config/i386/i386-expand.cc:15291
 #, gcc-internal-format
 msgid ""
 "instruction prefetch applies when in 64-bit mode with RIP-relative "
 "addressing and option %<-mprefetchi%>; they stay NOPs otherwise"
 msgstr ""
 
-#: config/i386/i386-expand.cc:14220
+#: config/i386/i386-expand.cc:15240
 #, gcc-internal-format
 msgid "invalid forth argument to %<__builtin_ia32_prefetch%>; using zero"
 msgstr ""
 
-#: config/i386/i386-expand.cc:14231
+#: config/i386/i386-expand.cc:15251
 #, gcc-internal-format
 msgid "invalid third argument to %<__builtin_ia32_prefetch%>; using zero"
 msgstr ""
 
-#: config/i386/i386-expand.cc:14259
+#: config/i386/i386-expand.cc:15279
 #, gcc-internal-format
 msgid "second argument must be a const"
 msgstr ""
 
-#: config/i386/i386-expand.cc:14805
+#: config/i386/i386-expand.cc:15825
 #, gcc-internal-format
 msgid "the last argument must be a 32-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:14838
+#: config/i386/i386-expand.cc:15858
 #, gcc-internal-format
 msgid "last argument must be an immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:15576 config/i386/i386-expand.cc:15788
+#: config/i386/i386-expand.cc:16596 config/i386/i386-expand.cc:16808
 #, gcc-internal-format
 msgid "the last argument must be scale 1, 2, 4, 8"
 msgstr ""
 
-#: config/i386/i386-expand.cc:15806
+#: config/i386/i386-expand.cc:16826
 #, gcc-internal-format
 msgid "the argument to %<xabort%> intrinsic must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-features.cc:3906
+#: config/i386/i386-features.cc:5457 config/rs6000/rs6000.cc:28522
 #, gcc-internal-format
 msgid ""
 "function versions cannot be marked as %<gnu_inline%>, bodies have to be "
 "generated"
 msgstr ""
 
-#: config/i386/i386-options.cc:928 config/i386/i386-options.cc:2276
-#: config/i386/i386-options.cc:2285
+#: config/i386/i386-options.cc:920 config/i386/i386-options.cc:2253
+#: config/i386/i386-options.cc:2262
 #, gcc-internal-format, gfc-internal-format
 msgid "code model %s does not support PIC mode"
 msgstr ""
 
-#: config/i386/i386-options.cc:1213
+#: config/i386/i386-options.cc:1205
 #, gcc-internal-format
 msgid "attribute %qs argument is not a string"
 msgstr ""
 
-#: config/i386/i386-options.cc:1284
+#: config/i386/i386-options.cc:1269
 #, gcc-internal-format
 msgid "attribute %qs argument %qs is unknown"
 msgstr ""
 
-#: config/i386/i386-options.cc:1347
+#: config/i386/i386-options.cc:1334
 #, gcc-internal-format
 msgid "attribute value %qs was already specified in %qs attribute"
 msgstr ""
 
-#: config/i386/i386-options.cc:1385
+#: config/i386/i386-options.cc:1374
 #, gcc-internal-format
 msgid "attribute value %qs is unknown in %qs attribute"
 msgstr ""
 
-#: config/i386/i386-options.cc:1686
+#: config/i386/i386-options.cc:1657
 #, gcc-internal-format
 msgid "wrong argument %qs to option %qs"
 msgstr ""
 
-#: config/i386/i386-options.cc:1692
+#: config/i386/i386-options.cc:1663
 #, gcc-internal-format
 msgid "size ranges of option %qs should be increasing"
 msgstr ""
 
-#: config/i386/i386-options.cc:1702
+#: config/i386/i386-options.cc:1673
 #, gcc-internal-format
 msgid "wrong strategy name %qs specified for option %qs"
 msgstr ""
 
 #. rep; movq isn't available in 32-bit code.
-#: config/i386/i386-options.cc:1728
+#: config/i386/i386-options.cc:1699
 #, gcc-internal-format
 msgid ""
 "strategy name %qs specified for option %qs not supported for 32-bit code"
 msgstr ""
 
-#: config/i386/i386-options.cc:1741
+#: config/i386/i386-options.cc:1712
 #, gcc-internal-format
 msgid "unknown alignment %qs specified for option %qs"
 msgstr ""
 
-#: config/i386/i386-options.cc:1751
+#: config/i386/i386-options.cc:1722
 #, gcc-internal-format
 msgid "the max value for the last size range should be -1 for option %qs"
 msgstr ""
 
-#: config/i386/i386-options.cc:1758
+#: config/i386/i386-options.cc:1729
 #, gcc-internal-format
 msgid "too many size ranges specified in option %qs"
 msgstr ""
 
-#: config/i386/i386-options.cc:1836
+#: config/i386/i386-options.cc:1807
 #, gcc-internal-format
 msgid "unknown parameter to option %<-mtune-ctrl%>: %s"
 msgstr ""
 
-#: config/i386/i386-options.cc:2081
+#: config/i386/i386-options.cc:2058
 #, gcc-internal-format
 msgid "Intel MCU psABI isn%'t supported in %s mode"
 msgstr ""
 
-#: config/i386/i386-options.cc:2135
+#: config/i386/i386-options.cc:2112
 #, gcc-internal-format
 msgid ""
 "%<-mtune=x86-64%> is deprecated; use %<-mtune=k8%> or %<-mtune=generic%> "
 "instead as appropriate"
 msgstr ""
 
-#: config/i386/i386-options.cc:2137
+#: config/i386/i386-options.cc:2114
 #, gcc-internal-format
 msgid ""
 "%<target(\"tune=x86-64\")%> is deprecated; use %<target(\"tune=k8\")%> or "
@@ -44311,660 +45967,623 @@ msgid ""
 msgstr ""
 
 #. rep; movq isn't available in 32-bit code.
-#: config/i386/i386-options.cc:2165
+#: config/i386/i386-options.cc:2142
 #, gcc-internal-format
 msgid "%<-mstringop-strategy=rep_8byte%> not supported for 32-bit code"
 msgstr ""
 
-#: config/i386/i386-options.cc:2171
+#: config/i386/i386-options.cc:2148
 #, gcc-internal-format
 msgid "%<-mapxf%> is not supported for 32-bit code"
 msgstr ""
 
-#: config/i386/i386-options.cc:2174
+#: config/i386/i386-options.cc:2151
 #, gcc-internal-format
 msgid "%<-mapx-features=%> option is not supported for 32-bit code"
 msgstr ""
 
-#: config/i386/i386-options.cc:2178
+#: config/i386/i386-options.cc:2155
 #, gcc-internal-format
 msgid "%<-muintr%> not supported for 32-bit code"
 msgstr ""
 
-#: config/i386/i386-options.cc:2181
+#: config/i386/i386-options.cc:2158
 #, gcc-internal-format
 msgid "%<-mlam=%> option: [u48|u57] not supported for 32-bit code"
 msgstr ""
 
-#: config/i386/i386-options.cc:2196
+#: config/i386/i386-options.cc:2173
 #, gcc-internal-format
 msgid "address mode %qs not supported in the %s bit mode"
 msgstr ""
 
-#: config/i386/i386-options.cc:2207
+#: config/i386/i386-options.cc:2184
 #, gcc-internal-format
 msgid "%<-mabi=ms%> not supported with X32 ABI"
 msgstr ""
 
-#: config/i386/i386-options.cc:2213
+#: config/i386/i386-options.cc:2190
 #, gcc-internal-format
 msgid "%<-mabi=%s%> not supported with %<-fsanitize=address%>"
 msgstr ""
 
-#: config/i386/i386-options.cc:2216
+#: config/i386/i386-options.cc:2193
 #, gcc-internal-format
 msgid "%<-mabi=%s%> not supported with %<-fsanitize=kernel-address%>"
 msgstr ""
 
-#: config/i386/i386-options.cc:2220
+#: config/i386/i386-options.cc:2197
 #, gcc-internal-format
 msgid "%<-mabi=%s%> not supported with %<-fsanitize=thread%>"
 msgstr ""
 
-#: config/i386/i386-options.cc:2226
+#: config/i386/i386-options.cc:2203
 #, gcc-internal-format
 msgid ""
 "%<-mlam=u48%> is not compatible with Hardware-assisted AddressSanitizer, "
 "override to %<-mlam=u57%>"
 msgstr ""
 
-#: config/i386/i386-options.cc:2246 config/i386/i386-options.cc:2255
-#: config/i386/i386-options.cc:2267 config/i386/i386-options.cc:2278
-#: config/i386/i386-options.cc:2289
+#: config/i386/i386-options.cc:2223 config/i386/i386-options.cc:2232
+#: config/i386/i386-options.cc:2244 config/i386/i386-options.cc:2255
+#: config/i386/i386-options.cc:2266
 #, gcc-internal-format
 msgid "code model %qs not supported in the %s bit mode"
 msgstr ""
 
-#: config/i386/i386-options.cc:2258 config/i386/i386-options.cc:2270
+#: config/i386/i386-options.cc:2235 config/i386/i386-options.cc:2247
 #, gcc-internal-format
 msgid "code model %qs not supported in x32 mode"
 msgstr ""
 
-#: config/i386/i386-options.cc:2313
+#: config/i386/i386-options.cc:2290
 #, gcc-internal-format
 msgid "%<-masm=intel%> not supported in this configuration"
 msgstr ""
 
-#: config/i386/i386-options.cc:2318
+#: config/i386/i386-options.cc:2295
 #, gcc-internal-format, gfc-internal-format
 msgid "%i-bit mode not compiled in"
 msgstr ""
 
-#: config/i386/i386-options.cc:2330
+#: config/i386/i386-options.cc:2307
 #, gcc-internal-format
 msgid "%<generic%> CPU can be used only for %<-mtune=%> switch"
 msgstr ""
 
-#: config/i386/i386-options.cc:2332
+#: config/i386/i386-options.cc:2309
 #, gcc-internal-format
 msgid "%<generic%> CPU can be used only for %<target(\"tune=\")%> attribute"
 msgstr ""
 
-#: config/i386/i386-options.cc:2339
+#: config/i386/i386-options.cc:2316
 #, gcc-internal-format
 msgid "%<intel%> CPU can be used only for %<-mtune=%> switch"
 msgstr ""
 
-#: config/i386/i386-options.cc:2341
+#: config/i386/i386-options.cc:2318
 #, gcc-internal-format
 msgid "%<intel%> CPU can be used only for %<target(\"tune=\")%> attribute"
 msgstr ""
 
-#: config/i386/i386-options.cc:2349 config/i386/i386-options.cc:2490
+#: config/i386/i386-options.cc:2326 config/i386/i386-options.cc:2467
 #, gcc-internal-format
 msgid "CPU you selected does not support x86-64 instruction set"
 msgstr ""
 
-#: config/i386/i386-options.cc:2429
+#: config/i386/i386-options.cc:2406
 #, gcc-internal-format
 msgid "bad value %qs for %<-march=%> switch"
 msgstr ""
 
-#: config/i386/i386-options.cc:2430
+#: config/i386/i386-options.cc:2407
 #, gcc-internal-format
 msgid "bad value %qs for %<target(\"arch=\")%> attribute"
 msgstr ""
 
-#: config/i386/i386-options.cc:2452
+#: config/i386/i386-options.cc:2429
 #, gcc-internal-format
 msgid "valid arguments to %<-march=%> switch are: %s; did you mean %qs?"
 msgstr ""
 
-#: config/i386/i386-options.cc:2454
+#: config/i386/i386-options.cc:2431
 #, gcc-internal-format
 msgid ""
 "valid arguments to %<target(\"arch=\")%> attribute are: %s; did you mean %qs?"
 msgstr ""
 
-#: config/i386/i386-options.cc:2459
+#: config/i386/i386-options.cc:2436
 #, gcc-internal-format
 msgid "valid arguments to %<-march=%> switch are: %s"
 msgstr ""
 
-#: config/i386/i386-options.cc:2460
+#: config/i386/i386-options.cc:2437
 #, gcc-internal-format
 msgid "valid arguments to %<target(\"arch=\")%> attribute are: %s"
 msgstr ""
 
-#: config/i386/i386-options.cc:2509
+#: config/i386/i386-options.cc:2486
 #, gcc-internal-format
 msgid "bad value %qs for %<-mtune=%> switch"
 msgstr ""
 
-#: config/i386/i386-options.cc:2510
+#: config/i386/i386-options.cc:2487
 #, gcc-internal-format
 msgid "bad value %qs for %<target(\"tune=\")%> attribute"
 msgstr ""
 
-#: config/i386/i386-options.cc:2531
+#: config/i386/i386-options.cc:2508
 #, gcc-internal-format
 msgid "valid arguments to %<-mtune=%> switch are: %s; did you mean %qs?"
 msgstr ""
 
-#: config/i386/i386-options.cc:2533
+#: config/i386/i386-options.cc:2510
 #, gcc-internal-format
 msgid ""
 "valid arguments to %<target(\"tune=\")%> attribute are: %s; did you mean %qs?"
 msgstr ""
 
-#: config/i386/i386-options.cc:2538
+#: config/i386/i386-options.cc:2515
 #, gcc-internal-format
 msgid "valid arguments to %<-mtune=%> switch are: %s"
 msgstr ""
 
-#: config/i386/i386-options.cc:2539
+#: config/i386/i386-options.cc:2516
 #, gcc-internal-format
 msgid "valid arguments to %<target(\"tune=\")%> attribute are: %s"
 msgstr ""
 
-#: config/i386/i386-options.cc:2570
+#: config/i386/i386-options.cc:2547
 #, gcc-internal-format
 msgid "%<-mregparm%> is ignored in 64-bit mode"
 msgstr ""
 
-#: config/i386/i386-options.cc:2572
+#: config/i386/i386-options.cc:2549
 #, gcc-internal-format
 msgid "%<-mregparm%> is ignored for Intel MCU psABI"
 msgstr ""
 
-#: config/i386/i386-options.cc:2575
+#: config/i386/i386-options.cc:2552
 #, gcc-internal-format
 msgid "%<-mregparm=%d%> is not between 0 and %d"
 msgstr ""
 
-#: config/i386/i386-options.cc:2601
+#: config/i386/i386-options.cc:2578
 #, gcc-internal-format
 msgid "%<-m96bit-long-double%> is not compatible with this target"
 msgstr ""
 
-#: config/i386/i386-options.cc:2606
+#: config/i386/i386-options.cc:2583
 #, gcc-internal-format
 msgid "%<-mrtd%> is ignored in 64bit mode"
 msgstr ""
 
-#: config/i386/i386-options.cc:2607
+#: config/i386/i386-options.cc:2584
 #, gcc-internal-format
 msgid "%<target(\"rtd\")%> is ignored in 64bit mode"
 msgstr ""
 
-#: config/i386/i386-options.cc:2693
-#, gcc-internal-format
-msgid ""
-"%<-mno-evex512%> or %<-mno-avx512XXX%> cannot disable AVX10 instructions "
-"when AVX10.1-512 is available in GCC 15, behavior will change to it will "
-"disable that part of AVX512 instructions since GCC 16"
-msgstr ""
-
-#. We should not emit 512 bit instructions under AVX10.1-256
-#. when EVEX512 is enabled w/o any AVX512 features enabled.
-#. Disable EVEX512 bit for this.
-#: config/i386/i386-options.cc:2709
-#, gcc-internal-format
-msgid ""
-"Using %<-mevex512%> without any AVX512 features enabled together with "
-"AVX10.1 only will not enable any AVX512 or AVX10.1-512 features, using 256 "
-"as max vector size"
-msgstr ""
-
-#: config/i386/i386-options.cc:2716 config/i386/i386-options.cc:2723
-#, gcc-internal-format
-msgid ""
-"Vector size conflicts between AVX10.1 and AVX512, using 512 as max vector "
-"size"
-msgstr ""
-
-#: config/i386/i386-options.cc:2731
-#, gcc-internal-format
-msgid ""
-"%<-mno-avx512XXX%> cannot disable AVX10 instructions when AVX10 is available "
-"in GCC 15, behavior will change to it will disable that part of AVX512 "
-"instructions since GCC 16"
-msgstr ""
-
-#: config/i386/i386-options.cc:2743
-#, gcc-internal-format
-msgid ""
-"%<-mno-avx10.1-256, -mno-avx10.1-512%> cannot disable AVX512 instructions "
-"when %<-mavx512XXX%> in GCC 15, behavior will change to it will disable all "
-"the instructions in GCC 16"
-msgstr ""
-
-#: config/i386/i386-options.cc:2790
+#: config/i386/i386-options.cc:2666
 #, gcc-internal-format
 msgid "%<-mpreferred-stack-boundary%> is not supported for this target"
 msgstr ""
 
-#: config/i386/i386-options.cc:2793
+#: config/i386/i386-options.cc:2669
 #, gcc-internal-format
 msgid "%<-mpreferred-stack-boundary=%d%> is not between %d and %d"
 msgstr ""
 
-#: config/i386/i386-options.cc:2816
+#: config/i386/i386-options.cc:2692
 #, gcc-internal-format
 msgid "%<-mincoming-stack-boundary=%d%> is not between %d and 12"
 msgstr ""
 
-#: config/i386/i386-options.cc:2829
+#: config/i386/i386-options.cc:2705
 #, gcc-internal-format
 msgid "%<-mnop-mcount%> is not compatible with this target"
 msgstr ""
 
-#: config/i386/i386-options.cc:2832
+#: config/i386/i386-options.cc:2708
 #, gcc-internal-format
 msgid "%<-mnop-mcount%> is not implemented for %<-fno-plt%>"
 msgstr ""
 
-#: config/i386/i386-options.cc:2838
+#: config/i386/i386-options.cc:2714
 #, gcc-internal-format
 msgid "%<-msseregparm%> used without SSE enabled"
 msgstr ""
 
-#: config/i386/i386-options.cc:2839
+#: config/i386/i386-options.cc:2715
 #, gcc-internal-format
 msgid "%<target(\"sseregparm\")%> used without SSE enabled"
 msgstr ""
 
-#: config/i386/i386-options.cc:2849
+#: config/i386/i386-options.cc:2725
 #, gcc-internal-format
 msgid "SSE instruction set disabled, using 387 arithmetics"
 msgstr ""
 
-#: config/i386/i386-options.cc:2856
+#: config/i386/i386-options.cc:2732
 #, gcc-internal-format
 msgid "387 instruction set disabled, using SSE arithmetics"
 msgstr ""
 
-#: config/i386/i386-options.cc:2910
+#: config/i386/i386-options.cc:2786
 #, gcc-internal-format
 msgid "stack probing requires %<-maccumulate-outgoing-args%> for correctness"
 msgstr ""
 
-#: config/i386/i386-options.cc:2912
+#: config/i386/i386-options.cc:2788
 #, gcc-internal-format
 msgid ""
 "stack probing requires %<target(\"accumulate-outgoing-args\")%> for "
 "correctness"
 msgstr ""
 
-#: config/i386/i386-options.cc:2926
+#: config/i386/i386-options.cc:2802
 #, gcc-internal-format
 msgid "fixed ebp register requires %<-maccumulate-outgoing-args%>"
 msgstr ""
 
-#: config/i386/i386-options.cc:2928
+#: config/i386/i386-options.cc:2804
 #, gcc-internal-format
 msgid "fixed ebp register requires %<target(\"accumulate-outgoing-args\")%>"
 msgstr ""
 
-#: config/i386/i386-options.cc:2988
+#: config/i386/i386-options.cc:2866
 #, gcc-internal-format
 msgid "%<-mfentry%> isn%'t supported for 32-bit in combination with %<-fpic%>"
 msgstr ""
 
-#: config/i386/i386-options.cc:2991
+#: config/i386/i386-options.cc:2869
 #, gcc-internal-format
 msgid "%<-mno-fentry%> isn%'t compatible with SEH"
 msgstr ""
 
-#: config/i386/i386-options.cc:2995
+#: config/i386/i386-options.cc:2879
+#, gcc-internal-format
+msgid "%<-pg%> without %<-mfentry%> may be unreliable with shrink wrapping"
+msgstr ""
+
+#: config/i386/i386-options.cc:2884
 #, gcc-internal-format
 msgid "%<-mcall-ms2sysv-xlogues%> isn%'t currently supported with SEH"
 msgstr ""
 
-#: config/i386/i386-options.cc:3122 config/loongarch/loongarch-opts.cc:898
+#: config/i386/i386-options.cc:2983 config/loongarch/loongarch-opts.cc:939
 #, gcc-internal-format
 msgid "unknown option for %<-mrecip=%s%>"
 msgstr ""
 
-#: config/i386/i386-options.cc:3181
+#: config/i386/i386-options.cc:3042
 #, gcc-internal-format
 msgid "%qs is not a valid number in %<-mstack-protector-guard-offset=%>"
 msgstr ""
 
-#: config/i386/i386-options.cc:3186
+#: config/i386/i386-options.cc:3047
 #, gcc-internal-format
 msgid "%qs is not a valid offset in %<-mstack-protector-guard-offset=%>"
 msgstr ""
 
-#: config/i386/i386-options.cc:3214
+#: config/i386/i386-options.cc:3075
 #, gcc-internal-format
 msgid "%qs is not a valid base register in %<-mstack-protector-guard-reg=%>"
 msgstr ""
 
-#: config/i386/i386-options.cc:3268
+#: config/i386/i386-options.cc:3129
 #, gcc-internal-format
 msgid ""
 "%<-fcf-protection=full%> is not enabled by %<-fhardened%> because it was "
 "specified on the command line"
 msgstr ""
 
-#: config/i386/i386-options.cc:3277 config/riscv/riscv.cc:10651
-#: config/riscv/riscv.cc:10655
+#: config/i386/i386-options.cc:3138 config/riscv/riscv.cc:12356
+#: config/riscv/riscv.cc:12360
 #, gcc-internal-format
 msgid "%<-fcf-protection%> is not compatible with this target"
 msgstr ""
 
-#: config/i386/i386-options.cc:3444
+#: config/i386/i386-options.cc:3307
 #, gcc-internal-format
 msgid "interrupt and naked attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3448 config/i386/i386-options.cc:3480
-#: config/i386/i386-options.cc:4024 config/i386/i386-options.cc:4034
+#: config/i386/i386-options.cc:3317 config/i386/i386-options.cc:3903
+#: config/i386/i386-options.cc:3913 config/i386/i386-options.cc:4024
 #, gcc-internal-format
 msgid "%qs and %qs attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3465
+#: config/i386/i386-options.cc:3335
 #, gcc-internal-format
 msgid "only DWARF debug format is supported for interrupt service routine"
 msgstr ""
 
-#: config/i386/i386-options.cc:3526
+#: config/i386/i386-options.cc:3388
 #, gcc-internal-format
 msgid "%<-mindirect-branch=%s%> and %<-mcmodel=large%> are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3536
+#: config/i386/i386-options.cc:3398
 #, gcc-internal-format
 msgid "%<-mindirect-branch%> and %<-fcf-protection%> are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3571
+#: config/i386/i386-options.cc:3433
 #, gcc-internal-format
 msgid "%<-mfunction-return=%s%> and %<-mcmodel=large%> are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3581
+#: config/i386/i386-options.cc:3443
 #, gcc-internal-format
 msgid "%<-mfunction-return%> and %<-fcf-protection%> are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3689
+#: config/i386/i386-options.cc:3565
 #, gcc-internal-format
 msgid "%s instructions aren%'t allowed in an exception service routine"
 msgstr ""
 
-#: config/i386/i386-options.cc:3691
+#: config/i386/i386-options.cc:3567
 #, gcc-internal-format
 msgid "%s instructions aren%'t allowed in an interrupt service routine"
 msgstr ""
 
-#: config/i386/i386-options.cc:3695
+#: config/i386/i386-options.cc:3571
 #, gcc-internal-format
 msgid ""
 "%s instructions aren%'t allowed in a function with the "
 "%<no_caller_saved_registers%> attribute"
 msgstr ""
 
-#: config/i386/i386-options.cc:3742 config/i386/i386-options.cc:3793
+#: config/i386/i386-options.cc:3630 config/i386/i386-options.cc:3669
 #, gcc-internal-format
 msgid "fastcall and regparm attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3747
+#: config/i386/i386-options.cc:3635 config/i386/i386-options.cc:3729
 #, gcc-internal-format
-msgid "regparam and thiscall attributes are not compatible"
+msgid "regparm and thiscall attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3754 config/i386/i386-options.cc:3982
+#: config/i386/i386-options.cc:3642 config/i386/i386-options.cc:3861
 #, gcc-internal-format
 msgid "%qE attribute requires an integer constant argument"
 msgstr ""
 
-#: config/i386/i386-options.cc:3760
+#: config/i386/i386-options.cc:3648
 #, gcc-internal-format
 msgid "argument to %qE attribute larger than %d"
 msgstr ""
 
-#: config/i386/i386-options.cc:3785 config/i386/i386-options.cc:3828
+#: config/i386/i386-options.cc:3661 config/i386/i386-options.cc:3703
 #, gcc-internal-format
 msgid "fastcall and cdecl attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3789
+#: config/i386/i386-options.cc:3665
 #, gcc-internal-format
 msgid "fastcall and stdcall attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3797 config/i386/i386-options.cc:3846
+#: config/i386/i386-options.cc:3673 config/i386/i386-options.cc:3721
 #, gcc-internal-format
 msgid "fastcall and thiscall attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3807 config/i386/i386-options.cc:3824
+#: config/i386/i386-options.cc:3682 config/i386/i386-options.cc:3699
 #, gcc-internal-format
 msgid "stdcall and cdecl attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3811
+#: config/i386/i386-options.cc:3686
 #, gcc-internal-format
 msgid "stdcall and fastcall attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3815 config/i386/i386-options.cc:3842
+#: config/i386/i386-options.cc:3690 config/i386/i386-options.cc:3717
 #, gcc-internal-format
 msgid "stdcall and thiscall attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3832 config/i386/i386-options.cc:3850
+#: config/i386/i386-options.cc:3707 config/i386/i386-options.cc:3725
 #, gcc-internal-format
 msgid "cdecl and thiscall attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.cc:3838
+#: config/i386/i386-options.cc:3713
 #, gcc-internal-format
 msgid "%qE attribute is used for non-class method"
 msgstr ""
 
-#: config/i386/i386-options.cc:3942 config/rs6000/rs6000.cc:20754
+#: config/i386/i386-options.cc:3821 config/rs6000/rs6000.cc:20765
 #, gcc-internal-format
 msgid "%qE incompatible attribute ignored"
 msgstr ""
 
-#: config/i386/i386-options.cc:3969
+#: config/i386/i386-options.cc:3848
 #, gcc-internal-format
 msgid "%qE attribute only available for 32-bit"
 msgstr ""
 
-#: config/i386/i386-options.cc:3990
+#: config/i386/i386-options.cc:3869
 #, gcc-internal-format
 msgid "argument to %qE attribute is neither zero, nor one"
 msgstr ""
 
-#: config/i386/i386-options.cc:4061 config/i386/i386-options.cc:4083
-#: config/ia64/ia64.cc:826 config/s390/s390.cc:1257
+#: config/i386/i386-options.cc:3940 config/i386/i386-options.cc:3962
+#: config/ia64/ia64.cc:827 config/s390/s390.cc:1258
 #, gcc-internal-format
 msgid "%qE attribute requires a string constant argument"
 msgstr ""
 
-#: config/i386/i386-options.cc:4071 config/i386/i386-options.cc:4093
-#: config/s390/s390.cc:1286
+#: config/i386/i386-options.cc:3950 config/i386/i386-options.cc:3972
+#: config/s390/s390.cc:1287
 #, gcc-internal-format
 msgid "argument to %qE attribute is not (keep|thunk|thunk-inline|thunk-extern)"
 msgstr ""
 
-#: config/i386/i386-options.cc:4125
+#: config/i386/i386-options.cc:4045
 #, gcc-internal-format
 msgid "interrupt service routine should have a pointer as the first argument"
 msgstr ""
 
-#: config/i386/i386-options.cc:4132
+#: config/i386/i386-options.cc:4052
 #, gcc-internal-format
 msgid "interrupt service routine should have %qs as the second argument"
 msgstr ""
 
-#: config/i386/i386-options.cc:4143
+#: config/i386/i386-options.cc:4063
 #, gcc-internal-format
 msgid ""
 "interrupt service routine can only have a pointer argument and an optional "
 "integer argument"
 msgstr ""
 
-#: config/i386/i386-options.cc:4146
+#: config/i386/i386-options.cc:4066
 #, gcc-internal-format
 msgid "interrupt service routine must return %<void%>"
 msgstr ""
 
-#: config/i386/i386.cc:1316
+#: config/i386/i386.cc:1356
 #, gcc-internal-format
 msgid "calling %qD with attribute sseregparm without SSE/SSE2 enabled"
 msgstr ""
 
-#: config/i386/i386.cc:1319
+#: config/i386/i386.cc:1359
 #, gcc-internal-format
 msgid "calling %qT with attribute sseregparm without SSE/SSE2 enabled"
 msgstr ""
 
-#: config/i386/i386.cc:1623
+#: config/i386/i386.cc:1666
 #, gcc-internal-format
 msgid "X32 does not support %<ms_abi%> attribute"
 msgstr ""
 
-#: config/i386/i386.cc:1657
+#: config/i386/i386.cc:1700
 #, gcc-internal-format
 msgid "%<ms_hook_prologue%> attribute is not compatible with nested function"
 msgstr ""
 
-#: config/i386/i386.cc:2009
+#: config/i386/i386.cc:2076
 #, gcc-internal-format
 msgid "AVX512F vector argument without AVX512F enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.cc:2015
+#: config/i386/i386.cc:2082
 #, gcc-internal-format
 msgid "AVX512F vector return without AVX512F enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.cc:2029
+#: config/i386/i386.cc:2096
 #, gcc-internal-format
 msgid "AVX vector argument without AVX enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.cc:2035
+#: config/i386/i386.cc:2102
 #, gcc-internal-format
 msgid "AVX vector return without AVX enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.cc:2051
+#: config/i386/i386.cc:2118
 #, gcc-internal-format
 msgid "SSE vector argument without SSE enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.cc:2057
+#: config/i386/i386.cc:2124
 #, gcc-internal-format
 msgid "SSE vector return without SSE enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.cc:2073
+#: config/i386/i386.cc:2140
 #, gcc-internal-format
 msgid "MMX vector argument without MMX enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.cc:2079
+#: config/i386/i386.cc:2146
 #, gcc-internal-format
 msgid "MMX vector return without MMX enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.cc:2278
+#: config/i386/i386.cc:2345
 #, gcc-internal-format
 msgid ""
 "the ABI of passing struct with a flexible array member has changed in GCC 4.4"
 msgstr ""
 
-#: config/i386/i386.cc:2407
+#: config/i386/i386.cc:2474
 #, gcc-internal-format
 msgid "the ABI of passing union with %<long double%> has changed in GCC 4.4"
 msgstr ""
 
-#: config/i386/i386.cc:2542
+#: config/i386/i386.cc:2609
 #, gcc-internal-format
 msgid ""
 "the ABI of passing structure with %<complex float%> member has changed in "
 "GCC 4.4"
 msgstr ""
 
-#: config/i386/i386.cc:2663
+#: config/i386/i386.cc:2730
 msgid ""
 "the ABI of passing C structures with zero-width bit-fields has changed in "
 "GCC %{12.1%}"
 msgstr ""
 
-#: config/i386/i386.cc:2760 config/i386/i386.cc:4129 config/i386/i386.cc:4139
+#: config/i386/i386.cc:2827 config/i386/i386.cc:4204 config/i386/i386.cc:4214
 #, gcc-internal-format
 msgid "SSE register return with SSE2 disabled"
 msgstr ""
 
-#: config/i386/i386.cc:2762
+#: config/i386/i386.cc:2829
 #, gcc-internal-format
 msgid "SSE register return with SSE disabled"
 msgstr ""
 
-#: config/i386/i386.cc:2769
+#: config/i386/i386.cc:2836
 #, gcc-internal-format
 msgid "SSE register argument with SSE2 disabled"
 msgstr ""
 
-#: config/i386/i386.cc:2771
+#: config/i386/i386.cc:2838
 #, gcc-internal-format
 msgid "SSE register argument with SSE disabled"
 msgstr ""
 
-#: config/i386/i386.cc:2791
+#: config/i386/i386.cc:2858
 #, gcc-internal-format
 msgid "x87 register return with x87 disabled"
 msgstr ""
 
-#: config/i386/i386.cc:3119 config/i386/i386.cc:3364 config/i386/i386.cc:4157
+#: config/i386/i386.cc:3186 config/i386/i386.cc:3431 config/i386/i386.cc:4232
 #, gcc-internal-format
 msgid "calling %qD with SSE calling convention without SSE/SSE2 enabled"
 msgstr ""
 
-#: config/i386/i386.cc:3121 config/i386/i386.cc:3366 config/i386/i386.cc:4159
+#: config/i386/i386.cc:3188 config/i386/i386.cc:3433 config/i386/i386.cc:4234
 #, gcc-internal-format
 msgid ""
 "this is a GCC bug that can be worked around by adding attribute used to "
 "function called"
 msgstr ""
 
-#: config/i386/i386.cc:3769
+#: config/i386/i386.cc:3844
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "the ABI for passing parameters with %d-byte alignment has changed in GCC 4.6"
 msgstr ""
 
-#: config/i386/i386.cc:6841
+#: config/i386/i386.cc:6927
 #, gcc-internal-format
 msgid "%<-mcall-ms2sysv-xlogues%> is not compatible with %s"
 msgstr ""
 
-#: config/i386/i386.cc:8861
+#: config/i386/i386.cc:9180
 #, gcc-internal-format
 msgid ""
 "%<ms_hook_prologue%> attribute is not compatible with %<-mfentry%> for 32-bit"
 msgstr ""
 
-#: config/i386/i386.cc:8951
+#: config/i386/i386.cc:9270
 #, gcc-internal-format
 msgid ""
 "Dynamic Realign Argument Pointer (DRAP) not supported in interrupt service "
@@ -44972,22 +46591,22 @@ msgid ""
 "return."
 msgstr ""
 
-#: config/i386/i386.cc:10008
+#: config/i386/i386.cc:10350
 #, gcc-internal-format
 msgid "Stack realignment not supported with %<__builtin_eh_return%>"
 msgstr ""
 
-#: config/i386/i386.cc:10013
+#: config/i386/i386.cc:10355
 #, gcc-internal-format
 msgid "regparm nested function not supported with %<__builtin_eh_return%>"
 msgstr ""
 
-#: config/i386/i386.cc:10404
+#: config/i386/i386.cc:10746
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> does not support fastcall with nested function"
 msgstr ""
 
-#: config/i386/i386.cc:10424
+#: config/i386/i386.cc:10766
 #, gcc-internal-format
 msgid ""
 "%<-fsplit-stack%> does not support 2 register parameters for a nested "
@@ -44996,57 +46615,74 @@ msgstr ""
 
 #. FIXME: We could make this work by pushing a register
 #. around the addition and comparison.
-#: config/i386/i386.cc:10435
+#: config/i386/i386.cc:10777
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> does not support 3 register parameters"
 msgstr ""
 
-#: config/i386/i386.cc:13438
+#: config/i386/i386.cc:12532
+#, gcc-internal-format
+msgid ""
+"%<-mtls-dialect=gnu2%> must be used with a function with the "
+"%<no_caller_saved_registers%> attribute"
+msgstr ""
+
+#: config/i386/i386.cc:12536
+#, gcc-internal-format
+msgid "%<-mtls-dialect=gnu2%> must be used with an exception service routine"
+msgstr ""
+
+#: config/i386/i386.cc:12538
+#, gcc-internal-format
+msgid "%<-mtls-dialect=gnu2%> must be used with an interrupt service routine"
+msgstr ""
+
+#: config/i386/i386.cc:13882
 #, gcc-internal-format
 msgid "%<V%> modifier on non-integer register"
 msgstr ""
 
-#: config/i386/i386.cc:13449 config/i386/i386.cc:13463
+#: config/i386/i386.cc:13893 config/i386/i386.cc:13907
 #, gcc-internal-format
 msgid "unsupported size for integer register"
 msgstr ""
 
-#: config/i386/i386.cc:13495
+#: config/i386/i386.cc:13939
 #, gcc-internal-format
 msgid "extended registers have no high halves"
 msgstr ""
 
-#: config/i386/i386.cc:13510
+#: config/i386/i386.cc:13954
 #, gcc-internal-format
 msgid "unsupported operand size for extended register"
 msgstr ""
 
-#: config/i386/i386.cc:13708 config/i386/i386.cc:13710
+#: config/i386/i386.cc:14153 config/i386/i386.cc:14155
 #, gcc-internal-format
 msgid "non-integer operand used with operand code %<z%>"
 msgstr ""
 
-#: config/i386/i386.cc:17918
+#: config/i386/i386.cc:18398
 #, gcc-internal-format
 msgid ""
 "empty class %qT parameter passing ABI changes in %<-fabi-version=12%> (GCC 8)"
 msgstr ""
 
-#: config/i386/i386.cc:23169
+#: config/i386/i386.cc:23804
 msgid "the alignment of %<_Atomic %T%> fields changed in %{GCC 11.1%}"
 msgstr ""
 
-#: config/i386/i386.cc:23256
+#: config/i386/i386.cc:23899
 #, gcc-internal-format
 msgid "no register available for profiling %<-mcmodel=large%s%>"
 msgstr ""
 
-#: config/i386/i386.cc:23352
+#: config/i386/i386.cc:24003
 #, gcc-internal-format
 msgid "profiling %<-mcmodel=large%> with PIC is not supported"
 msgstr ""
 
-#: config/i386/i386.cc:24067
+#: config/i386/i386.cc:24718
 #, gcc-internal-format
 msgid ""
 "%<__bfloat16%> is redefined from typedef %<short%> to real %<__bf16%> since "
@@ -45054,22 +46690,22 @@ msgid ""
 "%<short%>; an explicit bitcast may be needed here"
 msgstr ""
 
-#: config/i386/i386.cc:25726
+#: config/i386/i386.cc:26764
 #, gcc-internal-format
 msgid "unknown architecture specific memory model"
 msgstr ""
 
-#: config/i386/i386.cc:25733
+#: config/i386/i386.cc:26771
 #, gcc-internal-format
 msgid "%<HLE_ACQUIRE%> not used with %<ACQUIRE%> or stronger memory model"
 msgstr ""
 
-#: config/i386/i386.cc:25740
+#: config/i386/i386.cc:26778
 #, gcc-internal-format
 msgid "%<HLE_RELEASE%> not used with %<RELEASE%> or stronger memory model"
 msgstr ""
 
-#: config/i386/i386.cc:26427
+#: config/i386/i386.cc:27464
 #, gcc-internal-format
 msgid "%<-fexcess-precision=16%> is not compatible with %<-mfpmath=387%>"
 msgstr ""
@@ -45079,33 +46715,33 @@ msgstr ""
 msgid "malformed %<#pragma builtin%>"
 msgstr ""
 
-#: config/ia64/ia64.cc:765 config/loongarch/loongarch.cc:8172
-#: config/loongarch/loongarch.cc:8182
+#: config/ia64/ia64.cc:766 config/loongarch/loongarch.cc:8646
+#: config/loongarch/loongarch.cc:8656
 #, gcc-internal-format
 msgid "invalid argument of %qE attribute"
 msgstr ""
 
-#: config/ia64/ia64.cc:778
+#: config/ia64/ia64.cc:779
 #, gcc-internal-format
 msgid "an address area attribute cannot be specified for local variables"
 msgstr ""
 
-#: config/ia64/ia64.cc:785
+#: config/ia64/ia64.cc:786
 #, gcc-internal-format
 msgid "address area of %q+D conflicts with previous declaration"
 msgstr ""
 
-#: config/ia64/ia64.cc:793
+#: config/ia64/ia64.cc:794
 #, gcc-internal-format
 msgid "address area attribute cannot be specified for functions"
 msgstr ""
 
-#: config/ia64/ia64.cc:6039 config/pa/pa.cc:465 config/sh/sh.cc:8280
+#: config/ia64/ia64.cc:6084 config/pa/pa.cc:465 config/sh/sh.cc:8280
 #, gcc-internal-format
 msgid "value of %<-mfixed-range%> must have form REG1-REG2"
 msgstr ""
 
-#: config/ia64/ia64.cc:11317
+#: config/ia64/ia64.cc:11362
 #, gcc-internal-format
 msgid "version attribute is not a string"
 msgstr ""
@@ -45120,7 +46756,7 @@ msgstr ""
 msgid "argument %qd is not a constant"
 msgstr ""
 
-#: config/iq2000/iq2000.cc:2890 config/xtensa/xtensa.cc:3235
+#: config/iq2000/iq2000.cc:2890 config/xtensa/xtensa.cc:3100
 #, gcc-internal-format
 msgid "%<PRINT_OPERAND_ADDRESS%>, null pointer"
 msgstr ""
@@ -45130,22 +46766,22 @@ msgstr ""
 msgid "%<PRINT_OPERAND%>: Unknown punctuation %<%c%>"
 msgstr ""
 
-#: config/iq2000/iq2000.cc:3054 config/xtensa/xtensa.cc:3075
+#: config/iq2000/iq2000.cc:3054 config/xtensa/xtensa.cc:2926
 #, gcc-internal-format
 msgid "%<PRINT_OPERAND%> null pointer"
 msgstr ""
 
-#: config/loongarch/loongarch-builtins.cc:2981 config/mips/mips.cc:17551
+#: config/loongarch/loongarch-builtins.cc:3036 config/mips/mips.cc:17573
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %d to the built-in must be a constant in range %d to %d"
 msgstr ""
 
-#: config/loongarch/loongarch-builtins.cc:3060 config/mips/mips.cc:17671
+#: config/loongarch/loongarch-builtins.cc:3164 config/mips/mips.cc:17693
 #, gcc-internal-format
 msgid "failed to expand built-in function"
 msgstr ""
 
-#: config/loongarch/loongarch-builtins.cc:3101
+#: config/loongarch/loongarch-builtins.cc:3205
 #, gcc-internal-format
 msgid "built-in function %qD is not enabled"
 msgstr ""
@@ -45186,119 +46822,179 @@ msgid ""
 "will be enabled"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:235
+#: config/loongarch/loongarch-opts.cc:238
 #, gcc-internal-format
 msgid "%<-m%s%> overrides %<-m%s=%s%>, adjusting ABI to %qs"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:252
+#: config/loongarch/loongarch-opts.cc:255
 #, gcc-internal-format
 msgid "ABI changed (%qs to %qs) while multilib is disabled"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:281
-#: config/loongarch/loongarch-opts.cc:286
+#: config/loongarch/loongarch-opts.cc:284
+#: config/loongarch/loongarch-opts.cc:289
 #, gcc-internal-format
 msgid "%qs does not work on a cross compiler"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:375
+#: config/loongarch/loongarch-opts.cc:365
+#, gcc-internal-format
+msgid "SIMD is not supported on LA32"
+msgstr ""
+
+#: config/loongarch/loongarch-opts.cc:384
 #, gcc-internal-format
 msgid "enabling %qs promotes %<%s%s%> to %<%s%s%>"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:387
+#: config/loongarch/loongarch-opts.cc:396
 #, gcc-internal-format
 msgid "%qs is disabled by %<-m%s%>, because it requires %<%s%s%>"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:399
+#: config/loongarch/loongarch-opts.cc:408
 #, gcc-internal-format
 msgid "%<-m%s=%s%> conflicts with %qs, which requires %<%s%s%>"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:443
+#: config/loongarch/loongarch-opts.cc:452
 #, gcc-internal-format
 msgid ""
 "your native CPU architecture (%qs) does not support %qs ABI, falling back to "
 "%<-m%s=%s%>"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:448
+#: config/loongarch/loongarch-opts.cc:457
 #, gcc-internal-format
 msgid ""
 "default CPU architecture (%qs) does not support %qs ABI, falling back to %<-"
 "m%s=%s%>"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:479
+#: config/loongarch/loongarch-opts.cc:488
 #, gcc-internal-format
 msgid "unable to implement ABI %qs with instruction set %qs"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:501
+#: config/loongarch/loongarch-opts.cc:510
 #, gcc-internal-format
 msgid ""
 "ABI %qs cannot be implemented due to limited instruction set %qs, falling "
 "back to %qs"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:512
+#: config/loongarch/loongarch-opts.cc:521
 #, gcc-internal-format
 msgid ""
 "instruction set %qs cannot implement default ABI %qs, falling back to %qs"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:517
+#: config/loongarch/loongarch-opts.cc:526
 #, gcc-internal-format
 msgid ""
 "no multilib-enabled ABI (%qs) can be implemented with instruction set %qs, "
 "falling back to %qs"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:533
+#: config/loongarch/loongarch-opts.cc:542
 #, gcc-internal-format
 msgid ""
 "ABI %qs is not enabled at configure-time, the linker might report an error"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:536
+#: config/loongarch/loongarch-opts.cc:545
 #, gcc-internal-format, gfc-internal-format
 msgid "ABI with startfiles: %s"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:550
+#: config/loongarch/loongarch-opts.cc:559
+#: config/loongarch/loongarch-opts.cc:571
 #, gcc-internal-format
 msgid "%qs is not supported, now cmodel is set to %qs"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:1029
+#: config/loongarch/loongarch-opts.cc:1070
 #, gcc-internal-format
 msgid "code model %qs is not compatible with %s"
 msgstr ""
 
-#: config/loongarch/loongarch-opts.cc:1095
+#: config/loongarch/loongarch-opts.cc:1136
 #, gcc-internal-format
 msgid "%qs cannot be used for compiling a shared library"
 msgstr ""
 
-#: config/loongarch/loongarch-target-attr.cc:246 config/s390/s390.cc:16727
-#: config/s390/s390.cc:16777 config/s390/s390.cc:16794
+#: config/loongarch/loongarch-target-attr.cc:261
+#, gcc-internal-format
+msgid "the value of pragma or attribute %<target(\"%s\")%> not be empty"
+msgstr ""
+
+#: config/loongarch/loongarch-target-attr.cc:332 config/s390/s390.cc:17045
+#: config/s390/s390.cc:17096 config/s390/s390.cc:17114
 #, gcc-internal-format
 msgid "attribute %<target%> argument %qs is unknown"
 msgstr ""
 
-#: config/loongarch/loongarch.cc:8144
+#: config/loongarch/loongarch-target-attr.cc:544
+#, gcc-internal-format
+msgid "\"default\" cannot be set together with other features in %qs"
+msgstr ""
+
+#: config/loongarch/loongarch-target-attr.cc:556
+#, gcc-internal-format
+msgid "characher before %<;%> in attribute %qs cannot be empty"
+msgstr ""
+
+#: config/loongarch/loongarch-target-attr.cc:567
+#, gcc-internal-format
+msgid "in attribute %qs priority cannot be empty"
+msgstr ""
+
+#: config/loongarch/loongarch-target-attr.cc:576
+#, gcc-internal-format
+msgid "in attribute %qs the number of reatures cannot exceed two"
+msgstr ""
+
+#: config/loongarch/loongarch-target-attr.cc:600
+#, gcc-internal-format
+msgid "Setting the priority value to %qs is illegal in attribute %qs"
+msgstr ""
+
+#: config/loongarch/loongarch-target-attr.cc:611
+#, gcc-internal-format
+msgid ""
+"in attribute %qs, the second feature should be \"priority=%<num%>\" instead "
+"of %qs"
+msgstr ""
+
+#: config/loongarch/loongarch-target-attr.cc:630
+#: config/loongarch/loongarch-target-attr.cc:662
+#, gcc-internal-format
+msgid "in attribute %qs you need to set a legal value for \"arch\""
+msgstr ""
+
+#: config/loongarch/loongarch-target-attr.cc:684
+#, gcc-internal-format
+msgid ""
+"attribute %qs is not supported in %<target_version%> or %<target_clones%>"
+msgstr ""
+
+#: config/loongarch/loongarch-target-attr.cc:701
+#, gcc-internal-format
+msgid "%qs is not supported in target attribute"
+msgstr ""
+
+#: config/loongarch/loongarch.cc:8618
 #, gcc-internal-format
 msgid "%qE attribute cannot be specified for thread-local variables"
 msgstr ""
 
-#: config/loongarch/loongarch.cc:8162
+#: config/loongarch/loongarch.cc:8636
 #, gcc-internal-format
 msgid "%qE attribute cannot be specified for register variables"
 msgstr ""
 
-#: config/loongarch/loongarch.cc:8190
+#: config/loongarch/loongarch.cc:8664
 #, gcc-internal-format
 msgid "multiple %qE attribute"
 msgstr ""
@@ -45404,7 +47100,7 @@ msgstr ""
 msgid "stack limit expression is not supported"
 msgstr ""
 
-#: config/m68k/m68k.cc:7175 config/s390/s390.cc:17417
+#: config/m68k/m68k.cc:7172
 #, gcc-internal-format
 msgid "%<-fexcess-precision=16%> is not supported on this target"
 msgstr ""
@@ -45414,34 +47110,34 @@ msgstr ""
 msgid "initialized variable %q+D is marked dllimport"
 msgstr ""
 
-#: config/microblaze/microblaze.cc:1760
+#: config/microblaze/microblaze.cc:1791
 #, gcc-internal-format
 msgid "%<-fPIC%>/%<-fpic%> not supported for this target"
 msgstr ""
 
-#: config/microblaze/microblaze.cc:1772
+#: config/microblaze/microblaze.cc:1803
 #, gcc-internal-format
 msgid "%qs is an invalid argument to %<-mcpu=%>"
 msgstr ""
 
-#: config/microblaze/microblaze.cc:1821
+#: config/microblaze/microblaze.cc:1852
 #, gcc-internal-format
 msgid ""
 "%<-mxl-multiply-high%> can be used only with %<-mcpu=v6.00.a%> or greater"
 msgstr ""
 
-#: config/microblaze/microblaze.cc:1838
+#: config/microblaze/microblaze.cc:1869
 #, gcc-internal-format
 msgid "%<-mxl-reorder%> can be used only with %<-mcpu=v8.30.a%> or greater"
 msgstr ""
 
-#: config/microblaze/microblaze.cc:1845
+#: config/microblaze/microblaze.cc:1876
 #, gcc-internal-format
 msgid ""
 "%<-mxl-reorder%> requires %<-mxl-pattern-compare%> for %<-mcpu=v8.30.a%>"
 msgstr ""
 
-#: config/microblaze/microblaze.cc:1851
+#: config/microblaze/microblaze.cc:1882
 #, gcc-internal-format
 msgid "%<-mxl-multiply-high%> requires %<-mno-xl-soft-mul%>"
 msgstr ""
@@ -45457,183 +47153,176 @@ msgstr ""
 msgid "definition of static data member %q+D of dllimport%'d class"
 msgstr ""
 
-#: config/mips/mips.cc:1332 config/mips/mips.cc:1593 config/mips/mips.cc:1647
-#: config/riscv/riscv.cc:6561
-#, gcc-internal-format
-msgid "%qE attribute requires a string argument"
-msgstr ""
-
-#: config/mips/mips.cc:1340
+#: config/mips/mips.cc:1354
 #, gcc-internal-format
 msgid "argument to %qE attribute is neither no, pcrel nor yes"
 msgstr ""
 
-#: config/mips/mips.cc:1506 config/mips/mips.cc:1510
+#: config/mips/mips.cc:1520 config/mips/mips.cc:1524
 #, gcc-internal-format
 msgid "%qs attribute only applies to functions"
 msgstr ""
 
-#: config/mips/mips.cc:1520 config/mips/mips.cc:1526
+#: config/mips/mips.cc:1534 config/mips/mips.cc:1540
 #, gcc-internal-format
 msgid "%qE cannot have both %qs and %qs attributes"
 msgstr ""
 
-#: config/mips/mips.cc:1555 config/mips/mips.cc:1561
+#: config/mips/mips.cc:1569 config/mips/mips.cc:1575
 #, gcc-internal-format
 msgid "%qE redeclared with conflicting %qs attributes"
 msgstr ""
 
-#: config/mips/mips.cc:1601
+#: config/mips/mips.cc:1615
 #, gcc-internal-format
 msgid "argument to %qE attribute is neither eic, nor %<vector=<line>%>"
 msgstr ""
 
-#: config/mips/mips.cc:1617
+#: config/mips/mips.cc:1631
 #, gcc-internal-format
 msgid ""
 "interrupt vector to %qE attribute is not %<vector=(sw0|sw1|hw0|hw1|hw2|hw3|"
 "hw4|hw5)%>"
 msgstr ""
 
-#: config/mips/mips.cc:1654
+#: config/mips/mips.cc:1668
 #, gcc-internal-format
 msgid "argument to %qE attribute is not intstack"
 msgstr ""
 
-#: config/mips/mips.cc:6362
+#: config/mips/mips.cc:6374
 msgid ""
 "the ABI for passing a value containing zero-width fields before an adjacent "
 "64-bit floating-point field was changed in GCC %{12.1%}"
 msgstr ""
 
-#: config/mips/mips.cc:6807
+#: config/mips/mips.cc:6819
 msgid ""
 "the ABI for returning a value containing zero-width bit-fields but otherwise "
 "an aggregate with only one or two floating-point fields was changed in GCC "
 "%{12.1%}"
 msgstr ""
 
-#: config/mips/mips.cc:6831
+#: config/mips/mips.cc:6843
 msgid ""
 "the ABI for returning a value with C++17 empty bases but otherwise an "
 "aggregate with only one or two floating-point fields was changed in GCC "
 "%{12.1%}"
 msgstr ""
 
-#: config/mips/mips.cc:8178
+#: config/mips/mips.cc:8204
 #, gcc-internal-format
 msgid "cannot handle inconsistent calls to %qs"
 msgstr ""
 
-#: config/mips/mips.cc:11434
+#: config/mips/mips.cc:11460
 #, gcc-internal-format
 msgid "the %<interrupt%> attribute requires a MIPS32r2 processor or greater"
 msgstr ""
 
-#: config/mips/mips.cc:11436
+#: config/mips/mips.cc:11462
 #, gcc-internal-format
 msgid "interrupt handlers cannot be MIPS16 functions"
 msgstr ""
 
-#: config/mips/mips.cc:12440
+#: config/mips/mips.cc:12466
 #, gcc-internal-format
 msgid "%<-fstack-check=specific%> not implemented for MIPS16"
 msgstr ""
 
-#: config/mips/mips.cc:17803
+#: config/mips/mips.cc:17825
 #, gcc-internal-format
 msgid "built-in function %qE not supported for MIPS16"
 msgstr ""
 
-#: config/mips/mips.cc:18411
+#: config/mips/mips.cc:18433
 #, gcc-internal-format
 msgid "%qs does not support MIPS16 code"
 msgstr ""
 
-#: config/mips/mips.cc:20224
+#: config/mips/mips.cc:20245
 #, gcc-internal-format
 msgid "MIPS16 PIC for ABIs other than o32 and o64"
 msgstr ""
 
-#: config/mips/mips.cc:20227
+#: config/mips/mips.cc:20248
 #, gcc-internal-format
 msgid "MIPS16 %<-mxgot%> code"
 msgstr ""
 
-#: config/mips/mips.cc:20230
+#: config/mips/mips.cc:20251
 #, gcc-internal-format
 msgid "%<hard-float%> MIPS16 code for ABIs other than o32 and o64"
 msgstr ""
 
-#: config/mips/mips.cc:20233
+#: config/mips/mips.cc:20254
 #, gcc-internal-format
 msgid "MSA MIPS16 code"
 msgstr ""
 
-#: config/mips/mips.cc:20236
+#: config/mips/mips.cc:20257
 #, gcc-internal-format
 msgid "MIPS16 requires %<-mexplicit-relocs%>"
 msgstr ""
 
-#: config/mips/mips.cc:20427 config/mips/mips.cc:20432
-#: config/mips/mips.cc:20522 config/mips/mips.cc:20524
-#: config/mips/mips.cc:20554 config/mips/mips.cc:20562
-#: config/mips/mips.cc:20668 config/mips/mips.cc:20682
-#: config/mips/mips.cc:20695
+#: config/mips/mips.cc:20448 config/mips/mips.cc:20453
+#: config/mips/mips.cc:20543 config/mips/mips.cc:20545
+#: config/mips/mips.cc:20575 config/mips/mips.cc:20583
+#: config/mips/mips.cc:20689 config/mips/mips.cc:20713
 #, gcc-internal-format, gfc-internal-format
 msgid "unsupported combination: %s"
 msgstr ""
 
-#: config/mips/mips.cc:20467
+#: config/mips/mips.cc:20488
 #, gcc-internal-format
 msgid ""
 "%<-%s%> conflicts with the other architecture options, which specify a %s "
 "processor"
 msgstr ""
 
-#: config/mips/mips.cc:20477
+#: config/mips/mips.cc:20498
 #, gcc-internal-format
 msgid "%<-march=%s%> is not compatible with the selected ABI"
 msgstr ""
 
-#: config/mips/mips.cc:20492
+#: config/mips/mips.cc:20513
 #, gcc-internal-format
 msgid "%<-mgp64%> used with a 32-bit processor"
 msgstr ""
 
-#: config/mips/mips.cc:20494
+#: config/mips/mips.cc:20515
 #, gcc-internal-format
 msgid "%<-mgp32%> used with a 64-bit ABI"
 msgstr ""
 
-#: config/mips/mips.cc:20496
+#: config/mips/mips.cc:20517
 #, gcc-internal-format
 msgid "%<-mgp64%> used with a 32-bit ABI"
 msgstr ""
 
-#: config/mips/mips.cc:20519
+#: config/mips/mips.cc:20540
 #, gcc-internal-format
 msgid "the %qs architecture does not support %<-mfp32%>"
 msgstr ""
 
-#: config/mips/mips.cc:20528
+#: config/mips/mips.cc:20549
 #, gcc-internal-format
 msgid ""
 "%<-mgp32%> and %<-mfp64%> can only be combined if the target supports the "
 "mfhc1 and mthc1 instructions"
 msgstr ""
 
-#: config/mips/mips.cc:20531
+#: config/mips/mips.cc:20552
 #, gcc-internal-format
 msgid "%<-mgp32%> and %<-mfp64%> can only be combined when using the o32 ABI"
 msgstr ""
 
-#: config/mips/mips.cc:20552
+#: config/mips/mips.cc:20573
 #, gcc-internal-format
 msgid "%<-mfpxx%> can only be used with the o32 ABI"
 msgstr ""
 
-#: config/mips/mips.cc:20556
+#: config/mips/mips.cc:20577
 #, gcc-internal-format
 msgid "%<-march=%s%> requires %<-mfp32%>"
 msgstr ""
@@ -45643,117 +47332,117 @@ msgstr ""
 #. effort to support the combination of 32-bit GOT entries
 #. and 64-bit pointers, so we treat the abicalls case as
 #. an error.
-#: config/mips/mips.cc:20581
+#: config/mips/mips.cc:20602
 #, gcc-internal-format
 msgid "the combination of %qs and %qs is incompatible with %qs"
 msgstr ""
 
-#: config/mips/mips.cc:20634
+#: config/mips/mips.cc:20655
 #, gcc-internal-format
 msgid "the %qs architecture does not support branch-likely instructions"
 msgstr ""
 
-#: config/mips/mips.cc:20649
+#: config/mips/mips.cc:20670
 #, gcc-internal-format
 msgid "the %qs architecture does not support madd or msub instructions"
 msgstr ""
 
-#: config/mips/mips.cc:20663
+#: config/mips/mips.cc:20684
 #, gcc-internal-format
 msgid "the %qs architecture does not support odd single-precision registers"
 msgstr ""
 
-#: config/mips/mips.cc:20676
+#: config/mips/mips.cc:20697
 #, gcc-internal-format
 msgid "unsupported combination: %qs%s %s"
 msgstr ""
 
-#: config/mips/mips.cc:20688
+#: config/mips/mips.cc:20706
 #, gcc-internal-format
 msgid "unsupported combination: %qs %s"
 msgstr ""
 
-#: config/mips/mips.cc:20703
+#: config/mips/mips.cc:20721
 #, gcc-internal-format
 msgid "cannot generate position-independent code for %qs"
 msgstr ""
 
-#: config/mips/mips.cc:20706
+#: config/mips/mips.cc:20724
 #, gcc-internal-format
 msgid "position-independent code requires %qs"
 msgstr ""
 
-#: config/mips/mips.cc:20739
+#: config/mips/mips.cc:20757
 #, gcc-internal-format
 msgid "%<-mno-gpopt%> needs %<-mexplicit-relocs%>"
 msgstr ""
 
-#: config/mips/mips.cc:20747 config/mips/mips.cc:20750
+#: config/mips/mips.cc:20765 config/mips/mips.cc:20768
 #, gcc-internal-format
 msgid "cannot use small-data accesses for %qs"
 msgstr ""
 
-#: config/mips/mips.cc:20767
+#: config/mips/mips.cc:20785
 #, gcc-internal-format
 msgid "the %qs architecture does not support %<-m%s=legacy%>"
 msgstr ""
 
-#: config/mips/mips.cc:20774
+#: config/mips/mips.cc:20792
 #, gcc-internal-format
 msgid "the %qs architecture does not support %<-m%s=2008%>"
 msgstr ""
 
-#: config/mips/mips.cc:20792
+#: config/mips/mips.cc:20810
 #, gcc-internal-format
 msgid "%<-mips3d%> requires %<-mpaired-single%>"
 msgstr ""
 
-#: config/mips/mips.cc:20802
+#: config/mips/mips.cc:20820
 #, gcc-internal-format
 msgid "%qs must be used with %qs"
 msgstr ""
 
-#: config/mips/mips.cc:20812
+#: config/mips/mips.cc:20830
 #, gcc-internal-format
 msgid "%<-mmsa%> must be used with %<-mfp64%> and %<-mhard-float%>"
 msgstr ""
 
-#: config/mips/mips.cc:20819
+#: config/mips/mips.cc:20837
 #, gcc-internal-format
 msgid "the %qs architecture does not support paired-single instructions"
 msgstr ""
 
-#: config/mips/mips.cc:20828
+#: config/mips/mips.cc:20846
 #, gcc-internal-format
 msgid "%qs requires a target that provides the %qs instruction"
 msgstr ""
 
-#: config/mips/mips.cc:20839
+#: config/mips/mips.cc:20857
 #, gcc-internal-format
 msgid "the %qs architecture does not support DSP instructions"
 msgstr ""
 
-#: config/mips/mips.cc:20849
+#: config/mips/mips.cc:20867
 #, gcc-internal-format
 msgid "%<-mloongson-mmi%> must be used with %<-mhard-float%>"
 msgstr ""
 
-#: config/mips/mips.cc:20859
+#: config/mips/mips.cc:20877
 #, gcc-internal-format
 msgid "%<-mloongson-ext2%> must be used with %<-mloongson-ext%>"
 msgstr ""
 
-#: config/mips/mips.cc:20954
+#: config/mips/mips.cc:20972
 #, gcc-internal-format
 msgid "%qs requires branch-likely instructions"
 msgstr ""
 
-#: config/mips/mips.cc:20958
+#: config/mips/mips.cc:20976
 #, gcc-internal-format
 msgid "the %qs architecture does not support the synci instruction"
 msgstr ""
 
-#: config/mips/mips.cc:21794
+#: config/mips/mips.cc:21812
 #, gcc-internal-format
 msgid "mips16 function profiling"
 msgstr ""
@@ -45864,8 +47553,8 @@ msgstr ""
 #: config/msp430/msp430-devices.cc:303
 #, gcc-internal-format
 msgid ""
-"%<CPU_TYPE%> and %<MPY_TYPE%> column headings are missing from %<devices."
-"csv%>"
+"%<CPU_TYPE%> and %<MPY_TYPE%> column headings are missing from "
+"%<devices.csv%>"
 msgstr ""
 
 #: config/msp430/msp430-devices.cc:315
@@ -46058,17 +47747,17 @@ msgstr ""
 msgid "argument to interrupt attribute is unsupported for weak functions"
 msgstr ""
 
-#: config/msp430/msp430.cc:2747 config/pru/pru.cc:3028
+#: config/msp430/msp430.cc:2747 config/pru/pru.cc:3075
 #, gcc-internal-format
 msgid "%<__delay_cycles%> only takes constant arguments"
 msgstr ""
 
-#: config/msp430/msp430.cc:2757 config/pru/pru.cc:3037
+#: config/msp430/msp430.cc:2757 config/pru/pru.cc:3084
 #, gcc-internal-format
 msgid "%<__delay_cycles%> only takes non-negative cycle counts"
 msgstr ""
 
-#: config/msp430/msp430.cc:2778 config/pru/pru.cc:3050
+#: config/msp430/msp430.cc:2778 config/pru/pru.cc:3097
 #, gcc-internal-format
 msgid "%<__delay_cycles%> is limited to 32-bit loop counts"
 msgstr ""
@@ -46078,8 +47767,8 @@ msgstr ""
 msgid "MSP430 built-in functions only work inside interrupt handlers"
 msgstr ""
 
-#: config/msp430/msp430.cc:2861 config/pru/pru.cc:3118 config/rx/rx.cc:2666
-#: config/xtensa/xtensa.cc:4274 config/xtensa/xtensa.cc:4300
+#: config/msp430/msp430.cc:2861 config/pru/pru.cc:3165 config/rx/rx.cc:2651
+#: config/xtensa/xtensa.cc:4139 config/xtensa/xtensa.cc:4165
 #, gcc-internal-format
 msgid "bad builtin code"
 msgstr ""
@@ -46254,7 +47943,7 @@ msgstr ""
 msgid "malformed ptx file"
 msgstr ""
 
-#: config/nvptx/mkoffload.cc:336
+#: config/nvptx/mkoffload.cc:339
 #, gcc-internal-format
 msgid ""
 "%<omp requires reverse_offload%> requires at least %<sm_35%> for %<-foffload-"
@@ -46262,42 +47951,42 @@ msgid ""
 "device type"
 msgstr ""
 
-#: config/nvptx/mkoffload.cc:420 config/nvptx/mkoffload.cc:492
+#: config/nvptx/mkoffload.cc:426 config/nvptx/mkoffload.cc:498
 #, gcc-internal-format
 msgid "Cannot find function declaration for %qs"
 msgstr ""
 
-#: config/nvptx/mkoffload.cc:592
+#: config/nvptx/mkoffload.cc:598
 #, gcc-internal-format
 msgid "environment variable COLLECT_GCC_OPTIONS must be set"
 msgstr ""
 
-#: config/nvptx/mkoffload.cc:613
+#: config/nvptx/mkoffload.cc:619
 #, gcc-internal-format
 msgid "%<-foffload-abi-host-opts%> not specified."
 msgstr ""
 
-#: config/nvptx/mkoffload.cc:644
+#: config/nvptx/mkoffload.cc:650
 #, gcc-internal-format
 msgid "COLLECT_GCC must be set."
 msgstr ""
 
-#: config/nvptx/mkoffload.cc:692
+#: config/nvptx/mkoffload.cc:698
 #, gcc-internal-format
 msgid "offload compiler %s not found (consider using %<-B%>)"
 msgstr ""
 
-#: config/nvptx/mkoffload.cc:715
+#: config/nvptx/mkoffload.cc:721
 #, gcc-internal-format
 msgid "unrecognizable argument of option "
 msgstr ""
 
-#: config/nvptx/mkoffload.cc:804
+#: config/nvptx/mkoffload.cc:810
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot open '%s'"
 msgstr ""
 
-#: config/nvptx/mkoffload.cc:860
+#: config/nvptx/mkoffload.cc:866
 #, gcc-internal-format
 msgid "cannot open intermediate ptx file"
 msgstr ""
@@ -46307,92 +47996,92 @@ msgstr ""
 msgid "option %s is not supported together with %<-fopenacc%>"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:342
+#: config/nvptx/nvptx.cc:348
 #, gcc-internal-format
 msgid ""
 "PTX version (%<-mptx%>) needs to be at least %s to support selected %<-"
 "misa%> (sm_%s)"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:359
+#: config/nvptx/nvptx.cc:365
 #, gcc-internal-format
 msgid "%<-march=%> must be specified"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:382
+#: config/nvptx/nvptx.cc:388
 #, gcc-internal-format
 msgid "not generating patch area, nops not supported"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:479
+#: config/nvptx/nvptx.cc:485
 #, gcc-internal-format
 msgid ""
 "static initialization of variable %q+D in %<.shared%> memory is not supported"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:2409
+#: config/nvptx/nvptx.cc:2407
 #, gcc-internal-format
 msgid "cannot emit unaligned pointers in ptx assembly"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:2659
+#: config/nvptx/nvptx.cc:2657
 #, gcc-internal-format
 msgid "PTX does not support weak declarations (only weak definitions)"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:5900
+#: config/nvptx/nvptx.cc:5893
 #, gcc-internal-format
 msgid "%qE attribute requires a void return type"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:5923
+#: config/nvptx/nvptx.cc:5916
 #, gcc-internal-format
 msgid "%qE attribute not allowed with auto storage class"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:6368
+#: config/nvptx/nvptx.cc:6361
 #, gcc-internal-format
 msgid "barrier value must be within [0,15]"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:6381
+#: config/nvptx/nvptx.cc:6374
 #, gcc-internal-format
 msgid "complement argument must be constant"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:6721
+#: config/nvptx/nvptx.cc:6714
 #, gcc-internal-format
 msgid ""
 "using %<vector_length (%d)%> due to call to vector-partitionable routine, "
 "ignoring %d"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:6729
+#: config/nvptx/nvptx.cc:6722
 #, gcc-internal-format
 msgid "using %<vector_length (%d)%>, ignoring runtime setting"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:6743
+#: config/nvptx/nvptx.cc:6736
 #, gcc-internal-format
 msgid "using %<vector_length (%d)%>, ignoring %d"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:7629
+#: config/nvptx/nvptx.cc:7622
 #, gcc-internal-format
 msgid "variable %qD adjusted for OpenACC privatization level: %qs"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:7768
+#: config/nvptx/nvptx.cc:7761
 #, gcc-internal-format
 msgid "weak alias definitions not supported in this configuration"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:7781
+#: config/nvptx/nvptx.cc:7774
 #, gcc-internal-format
 msgid "non-function alias definitions not supported in this configuration"
 msgstr ""
 
-#: config/or1k/or1k.cc:1314
+#: config/or1k/or1k.cc:1313
 #, gcc-internal-format, gfc-internal-format
 msgid "unexpected operand: %d"
 msgstr ""
@@ -46417,494 +48106,539 @@ msgstr ""
 msgid "%<-g%> option disabled"
 msgstr ""
 
+#: config/pru/pru-passes.cc:99
+#, gcc-internal-format
+msgid "function pointers not supported with %<-mabi=ti%> option"
+msgstr ""
+
 #: config/pru/pru-passes.cc:111
 #, gcc-internal-format
-msgid "large return values not supported with %<-mabi=ti%> option"
+msgid "bit-fields not supported with %<-mabi=ti%> option"
 msgstr ""
 
-#: config/pru/pru-passes.cc:119 config/pru/pru-passes.cc:163
-#: config/pru/pru-passes.cc:176
+#: config/pru/pru-passes.cc:136
 #, gcc-internal-format
-msgid "function pointers not supported with %<-mabi=ti%> option"
+msgid "large return values not supported with %<-mabi=ti%> option"
 msgstr ""
 
-#: config/pru/pru-passes.cc:266
+#: config/pru/pru-passes.cc:317
 #, gcc-internal-format
 msgid ""
 "function %<main%> must have no arguments when using the %<-minrt%> option"
 msgstr ""
 
-#: config/pru/pru-passes.cc:273
+#: config/pru/pru-passes.cc:324
 #, gcc-internal-format
 msgid "function %<main%> must never return when using the %<-minrt%> option"
 msgstr ""
 
-#: config/pru/pru-pragma.cc:59
+#: config/pru/pru-pragma.cc:60
 #, gcc-internal-format
 msgid "junk at end of %<#pragma CTABLE_ENTRY%>"
 msgstr ""
 
-#: config/pru/pru-pragma.cc:61
+#: config/pru/pru-pragma.cc:62
 #, gcc-internal-format
 msgid "%<CTABLE_ENTRY%> index %wd is not valid"
 msgstr ""
 
-#: config/pru/pru-pragma.cc:63
+#: config/pru/pru-pragma.cc:64
 #, gcc-internal-format
 msgid "redefinition of %<CTABLE_ENTRY %wd%>"
 msgstr ""
 
-#: config/pru/pru-pragma.cc:67
+#: config/pru/pru-pragma.cc:66
+#, gcc-internal-format
+msgid "%<CTABLE_ENTRY%> base address does not fit in 32-bits"
+msgstr ""
+
+#: config/pru/pru-pragma.cc:70
 #, gcc-internal-format
 msgid "%<CTABLE_ENTRY%> base address is not a multiple of 256"
 msgstr ""
 
-#: config/pru/pru-pragma.cc:75
+#: config/pru/pru-pragma.cc:78
 #, gcc-internal-format
 msgid "malformed %<#pragma CTABLE_ENTRY%> variable address"
 msgstr ""
 
-#: config/pru/pru.cc:2208
+#: config/pru/pru.cc:2256
 #, gcc-internal-format
 msgid "aggregate types are prohibited in %<__regio_symbol%> address space"
 msgstr ""
 
-#: config/pru/pru.cc:2215
+#: config/pru/pru.cc:2263
 #, gcc-internal-format
 msgid "variables in %<__regio_symbol%> address space cannot have initial value"
 msgstr ""
 
-#: config/pru/pru.cc:2218
+#: config/pru/pru.cc:2266
 #, gcc-internal-format
 msgid ""
 "variables in %<__regio_symbol%> address space cannot be declared %<register%>"
 msgstr ""
 
-#: config/pru/pru.cc:2221
+#: config/pru/pru.cc:2269
 #, gcc-internal-format
 msgid ""
 "variables in %<__regio_symbol%> address space must be declared %<volatile%>"
 msgstr ""
 
-#: config/pru/pru.cc:2224
+#: config/pru/pru.cc:2272
 #, gcc-internal-format
 msgid ""
 "variables in %<__regio_symbol%> address space must be declared %<extern%>"
 msgstr ""
 
-#: config/pru/pru.cc:2227
+#: config/pru/pru.cc:2275
 #, gcc-internal-format
 msgid "only 32-bit access is supported for %<__regio_symbol%> address space"
 msgstr ""
 
-#: config/pru/pru.cc:2230
+#: config/pru/pru.cc:2278
 #, gcc-internal-format
 msgid "register name %qs not recognized in %<__regio_symbol%> address space"
 msgstr ""
 
-#: config/pru/pru.cc:2255
+#: config/pru/pru.cc:2303
 #, gcc-internal-format
 msgid "pointers to %<__regio_symbol%> address space are prohibited"
 msgstr ""
 
-#: config/riscv/riscv-c.cc:275
+#: config/riscv/riscv-c.cc:200
 #, gcc-internal-format
 msgid "%<#pragma riscv intrinsic%> requires a string parameter"
 msgstr ""
 
-#: config/riscv/riscv-c.cc:300
+#: config/riscv/riscv-c.cc:213
 #, gcc-internal-format
 msgid "unknown %<#pragma riscv intrinsic%> option %qs"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:105
+#: config/riscv/riscv-target-attr.cc:112
 #, gcc-internal-format
 msgid ""
 "unexpected arch for %<target()%> attribute: must start with rv64 but found "
 "%qs"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:112
+#: config/riscv/riscv-target-attr.cc:120
 #, gcc-internal-format
 msgid ""
 "unexpected arch for %<target()%> attribute: must start with rv32 but found "
 "%qs"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:145
+#: config/riscv/riscv-target-attr.cc:152
 #, gcc-internal-format
 msgid "unexpected arch for %<target()%> attribute: must start with + or rv"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:156
+#: config/riscv/riscv-target-attr.cc:162
 #, gcc-internal-format
 msgid "unexpected arch for %<target()%> attribute: bad string found %qs"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:183
+#: config/riscv/riscv-target-attr.cc:189
 #, gcc-internal-format
 msgid "%<target()%> attribute: arch appears more than once"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:194
+#: config/riscv/riscv-target-attr.cc:200
 #, gcc-internal-format
 msgid "%<target()%> attribute: cpu appears more than once"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:201
+#: config/riscv/riscv-target-attr.cc:208
 #, gcc-internal-format
 msgid "%<target()%> attribute: unknown CPU %qs"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:222
+#: config/riscv/riscv-target-attr.cc:229
 #, gcc-internal-format
 msgid "%<target()%> attribute: tune appears more than once"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:228
+#: config/riscv/riscv-target-attr.cc:236
 #, gcc-internal-format
 msgid "%<target()%> attribute: unknown TUNE %qs"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:241
+#: config/riscv/riscv-target-attr.cc:249
 #, gcc-internal-format
 msgid "%<target()%> attribute: priority appears more than once"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:246
+#: config/riscv/riscv-target-attr.cc:256
 #, gcc-internal-format
 msgid "%<target()%> attribute: invalid priority %qs"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:293
+#: config/riscv/riscv-target-attr.cc:318
 #, gcc-internal-format
 msgid "malformed %<target()%> attribute"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:307
+#: config/riscv/riscv-target-attr.cc:336
 #, gcc-internal-format
-msgid "attribute %<target(\"%s\")%> does not accept an argument"
+msgid "attribute %<target(\"%s\")%> has empty argument"
+msgstr ""
+
+#: config/riscv/riscv-target-attr.cc:352
+#, gcc-internal-format
+msgid "attribute %<target(\"%s\")%> expects an argument"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:327
+#: config/riscv/riscv-target-attr.cc:360
 #, gcc-internal-format
-msgid "Got unknown attribute %<target(\"%s\")%>"
+msgid "attribute %<target(\"%s\")%> does not accept an argument"
 msgstr ""
 
-#: config/riscv/riscv-target-attr.cc:390
+#: config/riscv/riscv-target-attr.cc:369
 #, gcc-internal-format
-msgid "malformed %<target(\"%s\")%> attribute"
+msgid "unknown attribute %<target(\"%s\")%>"
+msgstr ""
+
+#: config/riscv/riscv-target-attr.cc:435
+msgid "malformed %<target(\"%B\")%> attribute"
 msgstr ""
 
-#: config/riscv/riscv-v.cc:300
+#: config/riscv/riscv-v.cc:317
 #, gcc-internal-format, gfc-internal-format
 msgid "expected mode %s for operand %d of insn %s but got mode %s.\n"
 msgstr ""
 
-#: config/riscv/riscv-v.cc:359
+#: config/riscv/riscv-v.cc:379
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid number of operands for insn %s, expected %d but got %d.\n"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4523
+#: config/riscv/riscv-vector-builtins.cc:5246
 #, gcc-internal-format
 msgid ""
 "passing %wd to argument %d of %qE, which expects a value in the range [%wd, "
 "%wd] or %wd"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4739
+#: config/riscv/riscv-vector-builtins.cc:5455
 #, gcc-internal-format
 msgid "RVV type %qT does not have a fixed size"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4745
+#: config/riscv/riscv-vector-builtins.cc:5461
 #, gcc-internal-format
 msgid "RVV type %qT does not have a defined alignment"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4760
+#: config/riscv/riscv-vector-builtins.cc:5476
 #, gcc-internal-format
 msgid "arithmetic on pointer to RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4768
+#: config/riscv/riscv-vector-builtins.cc:5484
 #, gcc-internal-format
 msgid "member variables cannot have RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4770
+#: config/riscv/riscv-vector-builtins.cc:5486
 #, gcc-internal-format
 msgid "fields cannot have RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4776
+#: config/riscv/riscv-vector-builtins.cc:5492
 #, gcc-internal-format
 msgid "array elements cannot have RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4782
+#: config/riscv/riscv-vector-builtins.cc:5498
 #, gcc-internal-format
 msgid "cannot allocate objects with RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4788
+#: config/riscv/riscv-vector-builtins.cc:5504
 #, gcc-internal-format
 msgid "cannot delete objects with RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4794
+#: config/riscv/riscv-vector-builtins.cc:5510
 #, gcc-internal-format
 msgid "cannot throw or catch RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4800
+#: config/riscv/riscv-vector-builtins.cc:5516
 #, gcc-internal-format
 msgid "capture by copy of RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4806
+#: config/riscv/riscv-vector-builtins.cc:5522
 #, gcc-internal-format
 msgid "RVV type %qT not allowed in %<map%> clause"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4816
+#: config/riscv/riscv-vector-builtins.cc:5532
 #, gcc-internal-format
 msgid "RVV type %qT not allowed in %<target%> %<private%> clause"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4822
+#: config/riscv/riscv-vector-builtins.cc:5538
 #, gcc-internal-format
 msgid "RVV type %qT not allowed in %<target%> %<firstprivate%> clause"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4828
+#: config/riscv/riscv-vector-builtins.cc:5544
 #, gcc-internal-format
 msgid "RVV type %qT not allowed in %<target%> device clauses"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4922
+#: config/riscv/riscv-vector-builtins.cc:5656
 #, gcc-internal-format
 msgid "built-in function %qE requires the zvfbfmin or zvfbfwma ISA extension"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4932
+#: config/riscv/riscv-vector-builtins.cc:5666
 #, gcc-internal-format
 msgid "built-in function %qE requires the zvfhmin or zvfh ISA extension"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4942
+#: config/riscv/riscv-vector-builtins.cc:5676
 #, gcc-internal-format
 msgid ""
 "built-in function %qE requires the zve32f, zve64f, zve64d or v ISA extension"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4952
+#: config/riscv/riscv-vector-builtins.cc:5686
 #, gcc-internal-format
 msgid "built-in function %qE requires the zve64d or v ISA extension"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4961
+#: config/riscv/riscv-vector-builtins.cc:5695
 #, gcc-internal-format
 msgid ""
 "built-in function %qE requires the zve64x, zve64f, zve64d or v ISA extension"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:4981
+#: config/riscv/riscv-vector-builtins.cc:5713
+#, gcc-internal-format
+msgid "unrecognized RVV builtin"
+msgstr ""
+
+#: config/riscv/riscv-vector-builtins.cc:5720
 #, gcc-internal-format
 msgid "built-in function %qE requires the %qs ISA extension"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:5034
+#: config/riscv/riscv-vector-builtins.cc:5772
 #, gcc-internal-format
 msgid "no matching function call to %qE with empty arguments"
 msgstr ""
 
-#: config/riscv/riscv.cc:826
+#: config/riscv/riscv.cc:1033
 #, gcc-internal-format
 msgid "unknown cpu %qs for %<-mtune%>"
 msgstr ""
 
-#: config/riscv/riscv.cc:3245
+#: config/riscv/riscv.cc:3464
 #, gcc-internal-format
 msgid "this operation requires the RVV ISA extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:3246
+#: config/riscv/riscv.cc:3465
 #, gcc-internal-format
 msgid ""
 "you can enable RVV using the command-line option %<-march%>, or by using the "
 "%<target%> attribute or pragma"
 msgstr ""
 
-#: config/riscv/riscv.cc:5720 config/riscv/riscv.cc:5762
+#: config/riscv/riscv.cc:6308 config/riscv/riscv.cc:6396
 #, gcc-internal-format
 msgid "ABI for flattened struct with zero-length bit-fields changed in GCC 10"
 msgstr ""
 
-#: config/riscv/riscv.cc:6109
+#: config/riscv/riscv.cc:6337 config/riscv/riscv.cc:6414
+#, gcc-internal-format
+msgid "ABI for flattened empty union and zero length array changed in GCC 16"
+msgstr ""
+
+#: config/riscv/riscv.cc:7029
 #, gcc-internal-format
 msgid "RVV type %qT cannot be passed to an unprototyped function"
 msgstr ""
 
-#: config/riscv/riscv.cc:6365
+#: config/riscv/riscv.cc:7318 config/riscv/riscv.cc:7380
 #, gcc-internal-format
 msgid "%s %qT requires the V ISA extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:6377
+#: config/riscv/riscv.cc:7330
 #, gcc-internal-format
 msgid "%s %qT requires the zve64x, zve64f, zve64d or v ISA extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:6391
+#: config/riscv/riscv.cc:7344
 #, gcc-internal-format
 msgid "%s %qT requires the zvfhmin or zvfh ISA extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:6400
+#: config/riscv/riscv.cc:7353
 #, gcc-internal-format
 msgid "%s %qT requires the zve32f, zve64f, zve64d or v ISA extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:6409
+#: config/riscv/riscv.cc:7362
 #, gcc-internal-format
 msgid "%s %qT requires the zve64d or v ISA extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:6419
+#: config/riscv/riscv.cc:7372
 #, gcc-internal-format
 msgid "%s %qT requires the minimal vector length %qd but %qd is given"
 msgstr ""
 
-#: config/riscv/riscv.cc:6474
+#: config/riscv/riscv.cc:7438
 #, gcc-internal-format
 msgid "function attribute %qs requires the V ISA extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:6572
+#: config/riscv/riscv.cc:7464
+#, gcc-internal-format
+msgid ""
+"unsupported %<ABI_VLEN%> value %d for %qs attribute;%<ABI_VLEN must%> be in "
+"the range [32, 16384] and must be a power of 2"
+msgstr ""
+
+#: config/riscv/riscv.cc:7489
+#, gcc-internal-format
+msgid "function attribute %qs requires the vector ISA extension"
+msgstr ""
+
+#: config/riscv/riscv.cc:7599
+#, gcc-internal-format
+msgid "attribute 'rnmi' requires the Smrnmi ISA extension"
+msgstr ""
+
+#: config/riscv/riscv.cc:7607
 #, gcc-internal-format
 msgid ""
-"argument to %qE attribute is not %<\"user\"%>, %<\"supervisor\"%>, or "
-"%<\"machine\"%>"
+"argument to %qE attribute is not %<\"supervisor\"%>, %<\"machine\"%>, or "
+"%<\"rnmi\"%>"
 msgstr ""
 
-#: config/riscv/riscv.cc:6595
+#: config/riscv/riscv.cc:7649
 #, gcc-internal-format
 msgid "%qs is only supported when %<-mrvv-vector-bits=zvl%> is specified"
 msgstr ""
 
-#: config/riscv/riscv.cc:6604
+#: config/riscv/riscv.cc:7658
 #, gcc-internal-format
 msgid "%qs applied to non-RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv.cc:6612
+#: config/riscv/riscv.cc:7666
 #, gcc-internal-format
 msgid "%qs requires an integer constant"
 msgstr ""
 
-#: config/riscv/riscv.cc:6622
+#: config/riscv/riscv.cc:7676
 #, gcc-internal-format
 msgid ""
 "invalid RVV vector size %qd, expected size is %qd based on LMUL of type and "
 "%qs"
 msgstr ""
 
-#: config/riscv/riscv.cc:10571
+#: config/riscv/riscv.cc:12270
 #, gcc-internal-format
 msgid "%<-mdiv%> requires %<-march%> to subsume the %<M%> extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:10576
+#: config/riscv/riscv.cc:12275
 #, gcc-internal-format
 msgid "Currently the %<V%> implementation requires the %<M%> extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:10636
+#: config/riscv/riscv.cc:12335
 #, gcc-internal-format
 msgid ""
 "Current RISC-V GCC does not support VLEN greater than 4096bit for 'V' "
 "Extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:10642
+#: config/riscv/riscv.cc:12341
 #, gcc-internal-format
 msgid "Current RISC-V GCC does not support RVV in big-endian mode"
 msgstr ""
 
-#: config/riscv/riscv.cc:10682 config/riscv/riscv.cc:10685
+#: config/riscv/riscv.cc:12387 config/riscv/riscv.cc:12390
 #, gcc-internal-format
 msgid "code model %qs with %qs"
 msgstr ""
 
-#: config/riscv/riscv.cc:10714
+#: config/riscv/riscv.cc:12419
 #, gcc-internal-format
 msgid "requested ABI requires %<-march%> to subsume the %qc extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:10721
+#: config/riscv/riscv.cc:12426
 #, gcc-internal-format
 msgid "rv32e requires ilp32e ABI"
 msgstr ""
 
-#: config/riscv/riscv.cc:10723
+#: config/riscv/riscv.cc:12428
 #, gcc-internal-format
 msgid "rv64e requires lp64e ABI"
 msgstr ""
 
-#: config/riscv/riscv.cc:10728
+#: config/riscv/riscv.cc:12433
 #, gcc-internal-format
 msgid "ILP32E ABI does not support the %qc extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:10733
+#: config/riscv/riscv.cc:12438
 #, gcc-internal-format
 msgid "LP64E ABI is marked for deprecation in GCC"
 msgstr ""
 
-#: config/riscv/riscv.cc:10734
+#: config/riscv/riscv.cc:12439
 msgid "if you need LP64E please notify the GCC project via %{PR116152%}"
 msgstr ""
 
-#: config/riscv/riscv.cc:10742
+#: config/riscv/riscv.cc:12447
 #, gcc-internal-format
 msgid "z*inx requires ABI ilp32, ilp32e, lp64 or lp64e"
 msgstr ""
 
-#: config/riscv/riscv.cc:10746
+#: config/riscv/riscv.cc:12451
 #, gcc-internal-format
 msgid "ABI requires %<-march=rv%d%>"
 msgstr ""
 
-#: config/riscv/riscv.cc:10756
+#: config/riscv/riscv.cc:12461
 #, gcc-internal-format
 msgid "%<-mpreferred-stack-boundary=%d%> must be between %d and %d"
 msgstr ""
 
-#: config/riscv/riscv.cc:10769
+#: config/riscv/riscv.cc:12474
 #, gcc-internal-format
 msgid ""
 "%<-mriscv-attribute%> RISC-V ELF attribute requires GNU as 2.32 [%<-mriscv-"
 "attribute%>]"
 msgstr ""
 
-#: config/riscv/riscv.cc:10796 config/rs6000/rs6000.cc:4530
+#: config/riscv/riscv.cc:12501 config/rs6000/rs6000.cc:4527
 #, gcc-internal-format
 msgid "%qs is not a valid base register in %qs"
 msgstr ""
 
-#: config/riscv/riscv.cc:10810 config/rs6000/rs6000.cc:4513
+#: config/riscv/riscv.cc:12515 config/rs6000/rs6000.cc:4510
 #, gcc-internal-format
 msgid "%qs is not a valid number in %qs"
 msgstr ""
 
-#: config/riscv/riscv.cc:11305
+#: config/riscv/riscv.cc:13047
 #, gcc-internal-format
 msgid "%qs function cannot have different interrupt type"
 msgstr ""
 
-#: config/riscv/riscv.cc:11880
+#: config/riscv/riscv.cc:13644
 #, gcc-internal-format
 msgid "cannot allocate vl register for %qs on this target"
 msgstr ""
@@ -47257,60 +48991,60 @@ msgstr ""
 msgid "Stack frame larger than 2G is not supported for %<-fsplit-stack%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3237 config/rs6000/rs6000.cc:3240
-#: config/rs6000/rs6000.cc:3243
+#: config/rs6000/rs6000.cc:3234 config/rs6000/rs6000.cc:3237
+#: config/rs6000/rs6000.cc:3240
 #, gcc-internal-format
 msgid "%qs requires %qs or %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3344
+#: config/rs6000/rs6000.cc:3341
 #, gcc-internal-format
 msgid "%qs requires PowerPC64 architecture, enabling"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3464
+#: config/rs6000/rs6000.cc:3461
 #, gcc-internal-format
 msgid "%<-mcall-aixdesc%> incompatible with %<-mabi=elfv2%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3513
+#: config/rs6000/rs6000.cc:3510
 #, gcc-internal-format
 msgid "%qs unsupported for this ABI"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3641
+#: config/rs6000/rs6000.cc:3638
 #, gcc-internal-format
 msgid ""
 "%qs is not supported for 64-bit Darwin; it is incompatible with the "
 "installed C and C++ libraries"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3802
+#: config/rs6000/rs6000.cc:3799
 #, gcc-internal-format
 msgid "AltiVec not supported in this target"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3819
+#: config/rs6000/rs6000.cc:3816
 #, gcc-internal-format
 msgid "%qs is not supported on little endian systems"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3838
+#: config/rs6000/rs6000.cc:3835
 #, gcc-internal-format
 msgid "%<-mvsx%> and %<-msoft-float%> are incompatible"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3848
+#: config/rs6000/rs6000.cc:3845
 #, gcc-internal-format
 msgid "%<-mvsx%> and %<-mavoid-indexed-addresses%> are incompatible"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3859
+#: config/rs6000/rs6000.cc:3856
 #, gcc-internal-format
 msgid "%<-mvsx%> and %<-mno-altivec%> are incompatible"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3904
+#: config/rs6000/rs6000.cc:3901
 #, gcc-internal-format
 msgid ""
 "power9 target option is incompatible with %<%s=<xxx>%> for <xxx> less than "
@@ -47319,199 +49053,199 @@ msgstr ""
 
 #. Enforce that none of the ISA_3_0_MASKS_SERVER flags
 #. were explicitly cleared.
-#: config/rs6000/rs6000.cc:3912
+#: config/rs6000/rs6000.cc:3909
 #, gcc-internal-format
 msgid "%qs incompatible with explicitly disabled options"
 msgstr ""
 
 #. TARGET_VSX = 1 implies Power 7 and newer
-#: config/rs6000/rs6000.cc:3950 config/rs6000/rs6000.cc:3958
-#: config/rs6000/rs6000.cc:3972 config/rs6000/rs6000.cc:4034
-#: config/rs6000/rs6000.cc:4067 config/rs6000/rs6000.cc:4082
-#: config/rs6000/rs6000.cc:4090 config/rs6000/rs6000.cc:4209
-#: config/rs6000/rs6000.cc:4222 config/rs6000/rs6000.cc:4231
-#: config/rs6000/rs6000.cc:4369 config/rs6000/rs6000.cc:4382
-#: config/rs6000/rs6000.cc:4404
+#: config/rs6000/rs6000.cc:3947 config/rs6000/rs6000.cc:3955
+#: config/rs6000/rs6000.cc:3969 config/rs6000/rs6000.cc:4031
+#: config/rs6000/rs6000.cc:4064 config/rs6000/rs6000.cc:4079
+#: config/rs6000/rs6000.cc:4087 config/rs6000/rs6000.cc:4206
+#: config/rs6000/rs6000.cc:4219 config/rs6000/rs6000.cc:4228
+#: config/rs6000/rs6000.cc:4366 config/rs6000/rs6000.cc:4379
+#: config/rs6000/rs6000.cc:4401
 #, gcc-internal-format
 msgid "%qs requires %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4118
+#: config/rs6000/rs6000.cc:4115
 #, gcc-internal-format
 msgid "target attribute or pragma changes %<long double%> size"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4135
+#: config/rs6000/rs6000.cc:4132
 #, gcc-internal-format
 msgid "%qs requires full ISA 2.06 support"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4148
+#: config/rs6000/rs6000.cc:4145
 #, gcc-internal-format
 msgid "Using IEEE extended precision %<long double%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4151
+#: config/rs6000/rs6000.cc:4148
 #, gcc-internal-format
 msgid "Using IBM extended precision %<long double%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4170
+#: config/rs6000/rs6000.cc:4167
 #, gcc-internal-format
 msgid "%qs requires VSX support"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4179
+#: config/rs6000/rs6000.cc:4176
 #, gcc-internal-format
 msgid "The %<-mfloat128%> option may not be fully supported"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4201
+#: config/rs6000/rs6000.cc:4198
 #, gcc-internal-format
 msgid "%qs requires full ISA 3.0 support"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4288
+#: config/rs6000/rs6000.cc:4285
 #, gcc-internal-format
 msgid "unknown vectorization library ABI type in %<-mveclibabi=%s%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4301 config/rs6000/rs6000.cc:4316
+#: config/rs6000/rs6000.cc:4298 config/rs6000/rs6000.cc:4313
 #, gcc-internal-format
 msgid "target attribute or pragma changes AltiVec ABI"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4329
+#: config/rs6000/rs6000.cc:4326
 #, gcc-internal-format
 msgid "target attribute or pragma changes darwin64 ABI"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4538
+#: config/rs6000/rs6000.cc:4535
 #, gcc-internal-format
 msgid "%qs needs a valid base register"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4836
+#: config/rs6000/rs6000.cc:4833
 #, gcc-internal-format
 msgid "unknown option for %<%s=%s%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4855
+#: config/rs6000/rs6000.cc:4852
 #, gcc-internal-format
 msgid "%<-mrop-protect%> requires %<-mcpu=power8%> or later"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4859
+#: config/rs6000/rs6000.cc:4856
 #, gcc-internal-format
 msgid "%<-mrop-protect%> requires the ELFv2 ABI"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4877
+#: config/rs6000/rs6000.cc:4874
 #, gcc-internal-format
 msgid "%qs is deprecated and not recommended in any circumstances"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:11209
+#: config/rs6000/rs6000.cc:11220
 #, gcc-internal-format
 msgid "%qs is an opaque type, and you cannot set it to other values"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:18014
+#: config/rs6000/rs6000.cc:18025
 #, gcc-internal-format
 msgid "no profiling of 64-bit code for this ABI"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20417
+#: config/rs6000/rs6000.cc:20428
 #, gcc-internal-format
 msgid ""
 "you cannot take the address of a nested function if you use the %qs option"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20499
+#: config/rs6000/rs6000.cc:20510
 #, gcc-internal-format
 msgid "use of %<long double%> in AltiVec types is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20501
+#: config/rs6000/rs6000.cc:20512
 #, gcc-internal-format
 msgid "use of boolean types in AltiVec types is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20503
+#: config/rs6000/rs6000.cc:20514
 #, gcc-internal-format
 msgid "use of %<complex%> in AltiVec types is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20505
+#: config/rs6000/rs6000.cc:20516
 #, gcc-internal-format
 msgid "use of decimal floating-point types in AltiVec types is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20511
+#: config/rs6000/rs6000.cc:20522
 #, gcc-internal-format
 msgid "use of %<long%> in AltiVec types is invalid for 64-bit code without %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20514
+#: config/rs6000/rs6000.cc:20525
 #, gcc-internal-format
 msgid "use of %<long%> in AltiVec types is deprecated; use %<int%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20519
+#: config/rs6000/rs6000.cc:20530
 #, gcc-internal-format
 msgid "use of %<long long%> in AltiVec types is invalid without %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20522
+#: config/rs6000/rs6000.cc:20533
 #, gcc-internal-format
 msgid "use of %<double%> in AltiVec types is invalid without %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:24686
+#: config/rs6000/rs6000.cc:24697
 #, gcc-internal-format
 msgid "invalid cpu %qs for %s%qs%s"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:24689
+#: config/rs6000/rs6000.cc:24700
 #, gcc-internal-format
 msgid "%s%qs%s is not allowed"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:24691
+#: config/rs6000/rs6000.cc:24702
 #, gcc-internal-format
 msgid "%s%qs%s is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:25212
+#: config/rs6000/rs6000.cc:25223
 #, gcc-internal-format
 msgid "%<-mno-%s%> turns off %<-m%s%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:25371
+#: config/rs6000/rs6000.cc:25359
 #, gcc-internal-format
 msgid ""
 "%<target_clones%> attribute needs GLIBC (2.23 and newer) that exports "
 "hardware capability bits"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:25660
+#: config/rs6000/rs6000.cc:25649
 #, gcc-internal-format
 msgid "Virtual function multiversioning not supported"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28801
+#: config/rs6000/rs6000.cc:28836
 #, gcc-internal-format
 msgid ""
 "the result for the xxspltidp instruction is undefined for subnormal input "
 "values"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:29279
+#: config/rs6000/rs6000.cc:29314
 #, gcc-internal-format
 msgid "type %<__vector_quad%> requires the %qs option"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:29284
+#: config/rs6000/rs6000.cc:29319
 #, gcc-internal-format
 msgid "type %<__vector_pair%> requires the %qs option"
 msgstr ""
@@ -47526,28 +49260,28 @@ msgstr ""
 msgid "multiple fast interrupt routines seen: %qE and %qE"
 msgstr ""
 
-#: config/rx/rx.cc:2480
+#: config/rx/rx.cc:2465
 #, gcc-internal-format
 msgid "invalid control register %d for mvtc; using %<psw%>"
 msgstr ""
 
-#: config/rx/rx.cc:2602
+#: config/rx/rx.cc:2587
 #, gcc-internal-format
 msgid "%<__builtin_rx_%s%> takes %<C%>, %<Z%>, %<S%>, %<O%>, %<I%>, or %<U%>"
 msgstr ""
 
-#: config/rx/rx.cc:2605
+#: config/rx/rx.cc:2590
 #, gcc-internal-format
 msgid "use %<__builtin_rx_mvtc (0, ... )%> to write arbitrary values to PSW"
 msgstr ""
 
-#: config/rx/rx.cc:2652
+#: config/rx/rx.cc:2637
 #, gcc-internal-format
 msgid ""
 "%<-mno-allow-string-insns%> forbids the generation of the RMPA instruction"
 msgstr ""
 
-#: config/rx/rx.cc:2799
+#: config/rx/rx.cc:2784
 #, gcc-internal-format
 msgid "RX FPU instructions do not support NaNs and infinities"
 msgstr ""
@@ -47557,170 +49291,170 @@ msgstr ""
 msgid "builtin %qs can only be used on vector types"
 msgstr ""
 
-#: config/s390/s390-c.cc:741 config/s390/s390.cc:982
+#: config/s390/s390-c.cc:744 config/s390/s390.cc:983
 #, gcc-internal-format
 msgid "constant value required for builtin %qF argument %d"
 msgstr ""
 
-#: config/s390/s390-c.cc:756
+#: config/s390/s390-c.cc:759
 #, gcc-internal-format
 msgid ""
 "valid values for builtin %qF argument %d are 64, 128, 256, 512, 1024, 2048, "
 "and 4096"
 msgstr ""
 
-#: config/s390/s390-c.cc:935
+#: config/s390/s390-c.cc:941
 #, gcc-internal-format
 msgid "builtin %qF is for GCC internal use only"
 msgstr ""
 
-#: config/s390/s390-c.cc:943
+#: config/s390/s390-c.cc:949 config/s390/s390.cc:922
 #, gcc-internal-format
 msgid "builtin %qF is deprecated"
 msgstr ""
 
-#: config/s390/s390-c.cc:947
+#: config/s390/s390-c.cc:953
 #, gcc-internal-format
 msgid "%qF requires %<-mvx%>"
 msgstr ""
 
-#: config/s390/s390-c.cc:953
+#: config/s390/s390-c.cc:959
 #, gcc-internal-format
 msgid "%qF requires z14 or higher"
 msgstr ""
 
-#: config/s390/s390-c.cc:959
+#: config/s390/s390-c.cc:965
 #, gcc-internal-format
 msgid "%qF requires z15 or higher"
 msgstr ""
 
-#: config/s390/s390-c.cc:965
+#: config/s390/s390-c.cc:971
 #, gcc-internal-format
 msgid "%qF requires z17 or higher"
 msgstr ""
 
-#: config/s390/s390-c.cc:979
+#: config/s390/s390-c.cc:985
 #, gcc-internal-format
 msgid "mismatch in number of arguments for builtin %qF. Expected: %d got %d"
 msgstr ""
 
-#: config/s390/s390-c.cc:1028
+#: config/s390/s390-c.cc:1047
 #, gcc-internal-format
 msgid "invalid parameter combination for intrinsic %qs"
 msgstr ""
 
-#: config/s390/s390-c.cc:1034
+#: config/s390/s390-c.cc:1053
 #, gcc-internal-format
 msgid "ambiguous overload for intrinsic %qs"
 msgstr ""
 
-#: config/s390/s390-c.cc:1042
+#: config/s390/s390-c.cc:1061
 #, gcc-internal-format
 msgid "%qs matching variant requires z14 or higher"
 msgstr ""
 
-#: config/s390/s390-c.cc:1051
+#: config/s390/s390-c.cc:1070
 #, gcc-internal-format
 msgid "%qs matching variant requires z15 or higher"
 msgstr ""
 
-#: config/s390/s390-c.cc:1059
+#: config/s390/s390-c.cc:1078
 #, gcc-internal-format
 msgid "%qs matching variant requires z17 or higher"
 msgstr ""
 
-#: config/s390/s390-c.cc:1065
+#: config/s390/s390-c.cc:1084
 #, gcc-internal-format
 msgid "%qs matching variant is deprecated"
 msgstr ""
 
-#: config/s390/s390-c.cc:1105
+#: config/s390/s390-c.cc:1124
 #, gcc-internal-format
 msgid "constant argument %d for builtin %qF is out of range for target type"
 msgstr ""
 
-#: config/s390/s390.cc:825
+#: config/s390/s390.cc:823
 #, gcc-internal-format
 msgid "constant argument %d for builtin %qF is invalid (%s)"
 msgstr ""
 
-#: config/s390/s390.cc:829
+#: config/s390/s390.cc:827
 #, gcc-internal-format
 msgid "constant argument %d for builtin %qF is out of range (0-%wu)"
 msgstr ""
 
-#: config/s390/s390.cc:845
+#: config/s390/s390.cc:843
 #, gcc-internal-format
 msgid "constant argument %d for builtin %qF is out of range (%wd-%wd)"
 msgstr ""
 
-#: config/s390/s390.cc:894
+#: config/s390/s390.cc:892
 #, gcc-internal-format
 msgid ""
 "builtin %qF is not supported without %<-mhtm%> (default with %<-"
 "march=zEC12%> and higher)"
 msgstr ""
 
-#: config/s390/s390.cc:900
+#: config/s390/s390.cc:898
 #, gcc-internal-format
 msgid "builtin %qF requires %<-mvx%> (default with %<-march=z13%> and higher)"
 msgstr ""
 
-#: config/s390/s390.cc:907
+#: config/s390/s390.cc:905
 #, gcc-internal-format
 msgid "Builtin %qF requires z14 or higher"
 msgstr ""
 
-#: config/s390/s390.cc:913
+#: config/s390/s390.cc:911
 #, gcc-internal-format
 msgid "Builtin %qF requires z15 or higher"
 msgstr ""
 
-#: config/s390/s390.cc:919
+#: config/s390/s390.cc:917
 #, gcc-internal-format
 msgid "Builtin %qF requires z17 or higher"
 msgstr ""
 
-#: config/s390/s390.cc:938
+#: config/s390/s390.cc:939
 #, gcc-internal-format
 msgid "unresolved overloaded builtin"
 msgstr ""
 
-#: config/s390/s390.cc:945
+#: config/s390/s390.cc:946
 #, gcc-internal-format
 msgid "bad builtin icode"
 msgstr ""
 
-#: config/s390/s390.cc:1079
+#: config/s390/s390.cc:1080
 #, gcc-internal-format
 msgid "invalid argument %d for builtin %qF"
 msgstr ""
 
-#: config/s390/s390.cc:1180
+#: config/s390/s390.cc:1181
 #, gcc-internal-format
 msgid ""
 "requested %qE attribute is not a comma separated pair of non-negative "
 "integer constants or too large (max. %d)"
 msgstr ""
 
-#: config/s390/s390.cc:1273
+#: config/s390/s390.cc:1274
 #, gcc-internal-format
 msgid "argument to %qE attribute is not (keep|thunk|thunk-extern)"
 msgstr ""
 
-#: config/s390/s390.cc:10815
+#: config/s390/s390.cc:11111
 #, gcc-internal-format
 msgid "total size of local variables exceeds architecture limit"
 msgstr ""
 
-#: config/s390/s390.cc:12215
+#: config/s390/s390.cc:12511
 #, gcc-internal-format
 msgid ""
 "frame size of function %qs is %wd bytes exceeding user provided stack limit "
 "of %d bytes; an unconditional trap is added"
 msgstr ""
 
-#: config/s390/s390.cc:12231
+#: config/s390/s390.cc:12527
 #, gcc-internal-format
 msgid ""
 "frame size of function %qs is %wd bytes which is more than half the stack "
@@ -47728,150 +49462,150 @@ msgid ""
 "function"
 msgstr ""
 
-#: config/s390/s390.cc:12259
+#: config/s390/s390.cc:12555
 #, gcc-internal-format
 msgid "frame size of %qs is %wd bytes"
 msgstr ""
 
-#: config/s390/s390.cc:12263
+#: config/s390/s390.cc:12559
 #, gcc-internal-format
 msgid "%qs uses dynamic stack allocation"
 msgstr ""
 
-#: config/s390/s390.cc:13010
+#: config/s390/s390.cc:13306
 #, gcc-internal-format
 msgid ""
 "parameter passing for argument of type %qT with zero-width bit fields "
 "members changed in GCC 12"
 msgstr ""
 
-#: config/s390/s390.cc:13969
+#: config/s390/s390.cc:14265
 #, gcc-internal-format
 msgid "nested functions cannot be profiled with %<-mfentry%> on s390"
 msgstr ""
 
-#: config/s390/s390.cc:16296
+#: config/s390/s390.cc:16617
 #, gcc-internal-format
 msgid "64-bit ABI not supported in ESA/390 mode"
 msgstr ""
 
-#: config/s390/s390.cc:16303
+#: config/s390/s390.cc:16624
 #, gcc-internal-format
 msgid "thunk-inline is only supported with %<-mindirect-branch-jump%>"
 msgstr ""
 
-#: config/s390/s390.cc:16338
+#: config/s390/s390.cc:16659
 #, gcc-internal-format, gfc-internal-format
 msgid "hardware vector support not available on %s"
 msgstr ""
 
-#: config/s390/s390.cc:16341
+#: config/s390/s390.cc:16662
 #, gcc-internal-format
 msgid "hardware vector support not available with %<-msoft-float%>"
 msgstr ""
 
-#: config/s390/s390.cc:16370
+#: config/s390/s390.cc:16691
 #, gcc-internal-format, gfc-internal-format
 msgid "hardware decimal floating-point instructions not available on %s"
 msgstr ""
 
-#: config/s390/s390.cc:16374
+#: config/s390/s390.cc:16695
 #, gcc-internal-format
 msgid ""
 "hardware decimal floating-point instructions not available in ESA/390 mode"
 msgstr ""
 
-#: config/s390/s390.cc:16386
+#: config/s390/s390.cc:16707
 #, gcc-internal-format
 msgid "%<-mhard-dfp%> cannot be used in conjunction with %<-msoft-float%>"
 msgstr ""
 
-#: config/s390/s390.cc:16395
+#: config/s390/s390.cc:16716
 #, gcc-internal-format
 msgid ""
 "%<-mbackchain%> %<-mpacked-stack%> %<-mhard-float%> are not supported in "
 "combination"
 msgstr ""
 
-#: config/s390/s390.cc:16401
+#: config/s390/s390.cc:16722
 #, gcc-internal-format
 msgid "stack size must be greater than the stack guard value"
 msgstr ""
 
-#: config/s390/s390.cc:16403
+#: config/s390/s390.cc:16724
 #, gcc-internal-format
 msgid "stack size must not be greater than 64k"
 msgstr ""
 
-#: config/s390/s390.cc:16406
+#: config/s390/s390.cc:16727
 #, gcc-internal-format
 msgid "%<-mstack-guard%> implies use of %<-mstack-size%>"
 msgstr ""
 
-#: config/s390/s390.cc:16419
+#: config/s390/s390.cc:16740
 #, gcc-internal-format
 msgid "%<-mtpf-trace-hook-prologue-check%> requires integer in range 0-4095"
 msgstr ""
 
-#: config/s390/s390.cc:16422
+#: config/s390/s390.cc:16743
 #, gcc-internal-format
 msgid "%<-mtpf-trace-hook-prologue-target%> requires integer in range 0-4095"
 msgstr ""
 
-#: config/s390/s390.cc:16425
+#: config/s390/s390.cc:16746
 #, gcc-internal-format
 msgid "%<-mtpf-trace-hook-epilogue-check%> requires integer in range 0-4095"
 msgstr ""
 
-#: config/s390/s390.cc:16428
+#: config/s390/s390.cc:16749
 #, gcc-internal-format
 msgid "%<-mtpf-trace-hook-epilogue-target%> requires integer in range 0-4095"
 msgstr ""
 
-#: config/s390/s390.cc:16492
+#: config/s390/s390.cc:16810
 #, gcc-internal-format
 msgid "%<-mfentry%> is supported only for 64-bit CPUs"
 msgstr ""
 
 #. argument is not a plain number
-#: config/s390/s390.cc:16528
+#: config/s390/s390.cc:16846
 #, gcc-internal-format
 msgid "arguments to %qs should be non-negative integers"
 msgstr ""
 
-#: config/s390/s390.cc:16535
+#: config/s390/s390.cc:16853
 #, gcc-internal-format
 msgid "argument to %qs is too large (max. %d)"
 msgstr ""
 
-#: config/s390/s390.cc:16566
+#: config/s390/s390.cc:16884
 #, gcc-internal-format
 msgid ""
 "%<-mno-pic-data-is-text-relative%> cannot be used without %<-fpic%>/%<-fPIC%>"
 msgstr ""
 
 #. Value is not allowed for the target attribute.
-#: config/s390/s390.cc:16733
+#: config/s390/s390.cc:17051
 #, gcc-internal-format
 msgid "value %qs is not supported by attribute %<target%>"
 msgstr ""
 
-#: config/s390/s390.cc:17792
+#: config/s390/s390.cc:18130
 #, gcc-internal-format
 msgid "invalid cc output constraint: %qs"
 msgstr ""
 
-#: config/s390/s390.cc:17797
+#: config/s390/s390.cc:18135
 #, gcc-internal-format
 msgid "multiple cc output constraints not supported"
 msgstr ""
 
-#: config/s390/s390.cc:17802
+#: config/s390/s390.cc:18140
 #, gcc-internal-format
 msgid "%<asm%> specifier for cc output conflicts with %<asm%> clobber list"
 msgstr ""
 
-#: config/s390/s390.cc:17808
+#: config/s390/s390.cc:18146
 #, gcc-internal-format
 msgid "invalid type for cc output constraint"
 msgstr ""
@@ -47933,37 +49667,37 @@ msgstr ""
 msgid "%<-fcall-saved-REG%> is not supported for out registers"
 msgstr ""
 
-#: config/sparc/sparc.cc:1989
+#: config/sparc/sparc.cc:1977
 #, gcc-internal-format
 msgid "%<-mcmodel=%> is not supported in 32-bit mode"
 msgstr ""
 
-#: config/stormy16/stormy16.cc:1202
+#: config/stormy16/stormy16.cc:1201
 #, gcc-internal-format
 msgid "local variable memory requirements exceed capacity"
 msgstr ""
 
-#: config/stormy16/stormy16.cc:1359
+#: config/stormy16/stormy16.cc:1358
 #, gcc-internal-format
 msgid "%<function_profiler%> support"
 msgstr ""
 
-#: config/stormy16/stormy16.cc:1453
+#: config/stormy16/stormy16.cc:1452
 #, gcc-internal-format
 msgid "cannot use %<va_start%> in interrupt function"
 msgstr ""
 
-#: config/stormy16/stormy16.cc:2032
+#: config/stormy16/stormy16.cc:2031
 #, gcc-internal-format, gfc-internal-format
 msgid "switch statement of size %lu entries too large"
 msgstr ""
 
-#: config/stormy16/stormy16.cc:2426
+#: config/stormy16/stormy16.cc:2425
 #, gcc-internal-format
 msgid "%<__BELOW100__%> attribute only applies to variables"
 msgstr ""
 
-#: config/stormy16/stormy16.cc:2433
+#: config/stormy16/stormy16.cc:2432
 #, gcc-internal-format
 msgid "%<__BELOW100__%> attribute not allowed with auto storage class"
 msgstr ""
@@ -48183,26 +49917,38 @@ msgstr ""
 msgid "%qs is defined but plugin support is disabled"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:2913
+#: config/xtensa/xtensa.cc:2762
 #, gcc-internal-format
 msgid "boolean registers required for the floating-point option"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:2948
+#: config/xtensa/xtensa.cc:2797
 #, gcc-internal-format
 msgid "%<-f%s%> is not supported with CONST16 instructions"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:2955
+#: config/xtensa/xtensa.cc:2804
 #, gcc-internal-format
 msgid "PIC is required but not supported with CONST16 instructions"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:4409
+#: config/xtensa/xtensa.cc:4274
 #, gcc-internal-format
 msgid "only uninitialized variables can be placed in a %<.bss%> section"
 msgstr ""
 
+#: config/xtensa/xtensa.cc:6141
+#, gcc-internal-format
+msgid "constantsynth: method %qs invalid insn sequence, expected %wd (%wx)"
+msgstr ""
+
+#: config/xtensa/xtensa.cc:6146
+#, gcc-internal-format
+msgid ""
+"constantsynth: method %qs value mismatch, expected %wd (%wx) synthesized %wd "
+"(%wx)"
+msgstr ""
+
 #: ada/gcc-interface/misc.cc:157
 #, gcc-internal-format
 msgid "%<-gnat%> misspelled as %<-gant%>"
@@ -48223,81 +49969,151 @@ msgstr ""
 msgid "%s contains too many lines"
 msgstr ""
 
-#: ada/gcc-interface/trans.cc:1666
+#: ada/gcc-interface/trans.cc:1688
 #, gcc-internal-format
 msgid "subprogram %q+F not marked %<Inline_Always%>"
 msgstr ""
 
-#: ada/gcc-interface/trans.cc:1668 ada/gcc-interface/trans.cc:1674
+#: ada/gcc-interface/trans.cc:1690 ada/gcc-interface/trans.cc:1696
 #, gcc-internal-format
 msgid "parent subprogram cannot be inlined"
 msgstr ""
 
-#: ada/gcc-interface/trans.cc:1672
+#: ada/gcc-interface/trans.cc:1694
 #, gcc-internal-format
 msgid "subprogram %q+F not marked %<Inline%>"
 msgstr ""
 
-#: ada/gcc-interface/utils.cc:4427
+#: ada/gcc-interface/utils.cc:4504
 #, gcc-internal-format
 msgid "invalid element type for attribute %qs"
 msgstr ""
 
-#: ada/gcc-interface/utils.cc:4451
+#: ada/gcc-interface/utils.cc:4528
 #, gcc-internal-format
 msgid "number of components of vector not a power of two"
 msgstr ""
 
-#: ada/gcc-interface/utils.cc:6705 ada/gcc-interface/utils.cc:6883
-#: ada/gcc-interface/utils.cc:7123
+#: ada/gcc-interface/utils.cc:6958 ada/gcc-interface/utils.cc:7136
+#: ada/gcc-interface/utils.cc:7376
 #, gcc-internal-format
 msgid "%qs attribute ignored"
 msgstr ""
 
-#: ada/gcc-interface/utils.cc:6760
+#: ada/gcc-interface/utils.cc:7013
 #, gcc-internal-format
 msgid "%qs attribute without arguments on a non-prototype"
 msgstr ""
 
-#: ada/gcc-interface/utils.cc:6775
+#: ada/gcc-interface/utils.cc:7028
 #, gcc-internal-format
 msgid "%qs argument has invalid operand number (argument %lu)"
 msgstr ""
 
-#: ada/gcc-interface/utils.cc:6797
+#: ada/gcc-interface/utils.cc:7050
 #, gcc-internal-format
 msgid ""
 "%qs argument with out-of-range operand number (argument %lu, operand %lu)"
 msgstr ""
 
-#: ada/gcc-interface/utils.cc:6806
+#: ada/gcc-interface/utils.cc:7059
 #, gcc-internal-format
 msgid "%qs argument references non-pointer operand (argument %lu, operand %lu)"
 msgstr ""
 
-#: ada/gcc-interface/utils.cc:6827
+#: ada/gcc-interface/utils.cc:7080
 #, gcc-internal-format
 msgid "%qs attribute requires prototypes with named arguments"
 msgstr ""
 
-#: ada/gcc-interface/utils.cc:6836
+#: ada/gcc-interface/utils.cc:7089
 #, gcc-internal-format
 msgid "%qs attribute only applies to variadic functions"
 msgstr ""
 
-#: ada/gcc-interface/utils.cc:7083 d/d-attribs.cc:362 d/d-attribs.cc:488
-#: rust/rust-attribs.cc:176
+#: ada/gcc-interface/utils.cc:7336 d/d-attribs.cc:362 d/d-attribs.cc:488
+#: rust/rust-attribs.cc:195
 #, gcc-internal-format
 msgid "%qE attribute has no effect"
 msgstr ""
 
-#: ada/gcc-interface/utils.cc:7418
+#: ada/gcc-interface/utils.cc:7671
 #, gcc-internal-format
 msgid "attribute %qs applies to array types only"
 msgstr ""
 
-#: c/c-convert.cc:104 c/c-typeck.cc:2730 c/c-typeck.cc:14860 cp/typeck.cc:2520
-#: cp/typeck.cc:9603 cp/typeck.cc:10396 d/d-convert.cc:262
+#: algol68/a68-lang.cc:507 fortran/options.cc:691
+#, gcc-internal-format
+msgid "Argument to %<-fcheck%> is not valid: %s"
+msgstr ""
+
+#: algol68/a68-lang.cc:535
+#, gcc-internal-format
+msgid "invalid argument for %<-fmodules-map%>: %s"
+msgstr ""
+
+#: algol68/a68-lang.cc:544
+#, gcc-internal-format
+msgid "cannot open modules map file %<%s%>"
+msgstr ""
+
+#: algol68/a68-lang.cc:549
+#, gcc-internal-format
+msgid "cannot determine size of modules map file %<%s%>"
+msgstr ""
+
+#: algol68/a68-lang.cc:556
+#, gcc-internal-format
+msgid "cannot read contents of modules map file %<%s%>"
+msgstr ""
+
+#: algol68/a68-lang.cc:666
+#, gcc-internal-format
+msgid "exactly one source file must be specified on the command line"
+msgstr ""
+
+#: algol68/a68-low-coercions.cc:403
+#, gcc-internal-format, gfc-internal-format
+msgid "cannot do widening from %s to %s"
+msgstr ""
+
+#: algol68/a68-low-moids.cc:648
+#, gcc-internal-format, gfc-internal-format
+msgid "Cannot lower mode %s"
+msgstr ""
+
+#: algol68/a68-low-prelude.cc:52
+#, gcc-internal-format
+msgid "no lowering routine installed for construct.  jemarch has been lazy"
+msgstr ""
+
+#: algol68/a68-low.cc:318
+#, gcc-internal-format, gfc-internal-format
+msgid "get skip tree: cannot compute SKIP for mode %s"
+msgstr ""
+
+#: algol68/a68-low.cc:1720
+#, gcc-internal-format, gfc-internal-format
+msgid "cannot lower node %s"
+msgstr ""
+
+#: algol68/a68-parser-scanner.cc:337
+#, gcc-internal-format, gfc-internal-format
+msgid "could not open source file %s"
+msgstr ""
+
+#: algol68/a68-parser-scanner.cc:344
+#, gcc-internal-format, gfc-internal-format
+msgid "specified file %s is a directory"
+msgstr ""
+
+#: algol68/a68-parser-scanner.cc:349
+#, gcc-internal-format
+msgid "could not get size of source file"
+msgstr ""
+
+#: c/c-convert.cc:104 c/c-typeck.cc:2805 c/c-typeck.cc:15412 cp/typeck.cc:2635
+#: cp/typeck.cc:9874 cp/typeck.cc:10682 d/d-convert.cc:262
 #, gcc-internal-format
 msgid "void value not ignored as it ought to be"
 msgstr ""
@@ -48317,476 +50133,501 @@ msgstr ""
 msgid "conversion to non-scalar type requested"
 msgstr ""
 
-#: c/c-decl.cc:914
+#: c/c-decl.cc:917 c/c-decl.cc:6069 c/c-decl.cc:6072
+#, gcc-internal-format
+msgid "array size missing in %q+D"
+msgstr ""
+
+#: c/c-decl.cc:920
 #, gcc-internal-format
 msgid "array %q+D assumed to have one element"
 msgstr ""
 
-#: c/c-decl.cc:955
+#: c/c-decl.cc:961
 #, gcc-internal-format
 msgid "%qD is static but used in inline function %qD which is not static"
 msgstr ""
 
-#: c/c-decl.cc:960
+#: c/c-decl.cc:966
 #, gcc-internal-format
 msgid "%q+D is static but declared in inline function %qD which is not static"
 msgstr ""
 
-#: c/c-decl.cc:1156
+#: c/c-decl.cc:1162
 #, gcc-internal-format, gfc-internal-format
 msgid "GCC supports only %u nested scopes"
 msgstr ""
 
-#: c/c-decl.cc:1298 cp/decl.cc:382
+#: c/c-decl.cc:1304 cp/decl.cc:416
 #, gcc-internal-format
 msgid "label %q+D used but not defined"
 msgstr ""
 
-#: c/c-decl.cc:1343
+#: c/c-decl.cc:1349
 #, gcc-internal-format
 msgid "nested function %q+D declared but never defined"
 msgstr ""
 
-#: c/c-decl.cc:1357
+#: c/c-decl.cc:1363
 #, gcc-internal-format
 msgid "inline function %q+D declared but never defined"
 msgstr ""
 
-#: c/c-decl.cc:1375
+#: c/c-decl.cc:1381
 #, gcc-internal-format
 msgid "unused variable %q+D"
 msgstr ""
 
-#: c/c-decl.cc:1381 cp/decl.cc:755
+#: c/c-decl.cc:1387 cp/decl.cc:873
 #, gcc-internal-format
 msgid "variable %qD set but not used"
 msgstr ""
 
-#: c/c-decl.cc:1386
+#: c/c-decl.cc:1392
 #, gcc-internal-format
 msgid "type of array %q+D completed incompatibly with implicit initialization"
 msgstr ""
 
-#: c/c-decl.cc:1561
+#: c/c-decl.cc:1567
 #, gcc-internal-format
 msgid ""
 "underspecified declaration of %qE, which is already declared in this scope"
 msgstr ""
 
-#: c/c-decl.cc:1732 c/c-decl.cc:7925 c/c-decl.cc:8924 c/c-decl.cc:9859
-#: c/c-decl.cc:9865 c/c-decl.cc:10092
+#: c/c-decl.cc:1735 c/c-decl.cc:7962
+#, gcc-internal-format
+msgid "using %qD as both a typedef and a tag is invalid in C++"
+msgstr ""
+
+#: c/c-decl.cc:1738 c/c-decl.cc:7965 c/c-decl.cc:8971 c/c-decl.cc:9967
+#: c/c-decl.cc:9973 c/c-decl.cc:10204
 #, gcc-internal-format
 msgid "originally defined here"
 msgstr ""
 
-#: c/c-decl.cc:1955
+#: c/c-decl.cc:1961
 #, gcc-internal-format
 msgid ""
 "a parameter list with an ellipsis cannot match an empty parameter name list "
 "declaration"
 msgstr ""
 
-#: c/c-decl.cc:1963
+#: c/c-decl.cc:1969
 #, gcc-internal-format
 msgid ""
 "an argument type that has a default promotion cannot match an empty "
 "parameter name list declaration"
 msgstr ""
 
-#: c/c-decl.cc:2011
+#: c/c-decl.cc:2017
 #, gcc-internal-format
 msgid ""
 "prototype for %q+D declares more arguments than previous old-style definition"
 msgstr ""
 
-#: c/c-decl.cc:2017
+#: c/c-decl.cc:2023
 #, gcc-internal-format
 msgid ""
 "prototype for %q+D declares fewer arguments than previous old-style "
 "definition"
 msgstr ""
 
-#: c/c-decl.cc:2026
+#: c/c-decl.cc:2032
 #, gcc-internal-format
 msgid "prototype for %q+D declares argument %d with incompatible type"
 msgstr ""
 
 #. If we get here, no errors were found, but do issue a warning
 #. for this poor-style construct.
-#: c/c-decl.cc:2039
+#: c/c-decl.cc:2045
 #, gcc-internal-format
 msgid "prototype for %q+D follows non-prototype definition"
 msgstr ""
 
-#: c/c-decl.cc:2057
+#: c/c-decl.cc:2063
 #, gcc-internal-format
 msgid "previous definition of %q+D with type %qT"
 msgstr ""
 
-#: c/c-decl.cc:2061
+#: c/c-decl.cc:2067
 #, gcc-internal-format
 msgid "previous implicit declaration of %q+D with type %qT"
 msgstr ""
 
-#: c/c-decl.cc:2065
+#: c/c-decl.cc:2071
 #, gcc-internal-format
 msgid "previous declaration of %q+D with type %qT"
 msgstr ""
 
-#: c/c-decl.cc:2127
+#: c/c-decl.cc:2109
+#, gcc-internal-format
+msgid "cannot use function multiversioning on a renamed function"
+msgstr ""
+
+#: c/c-decl.cc:2162
 #, gcc-internal-format
 msgid "%q+D redeclared as different kind of symbol"
 msgstr ""
 
-#: c/c-decl.cc:2132
+#: c/c-decl.cc:2167
 #, gcc-internal-format
 msgid "built-in function %q+D declared as non-function"
 msgstr ""
 
-#: c/c-decl.cc:2135 c/c-decl.cc:3275
+#: c/c-decl.cc:2170 c/c-decl.cc:3349
 #, gcc-internal-format
 msgid "declaration of %q+D shadows a built-in function"
 msgstr ""
 
-#: c/c-decl.cc:2152
+#: c/c-decl.cc:2187
 #, gcc-internal-format
 msgid "conflicting redeclaration of enumerator %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2159
+#: c/c-decl.cc:2194
 #, gcc-internal-format
 msgid "redeclaration of enumerator %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2199
+#: c/c-decl.cc:2234
 #, gcc-internal-format
 msgid "conflicting types for built-in function %q+D; expected %qT"
 msgstr ""
 
-#: c/c-decl.cc:2209 c/c-decl.cc:2234
+#: c/c-decl.cc:2244 c/c-decl.cc:2269
 #, gcc-internal-format
 msgid "%qD is declared in header %qs"
 msgstr ""
 
-#: c/c-decl.cc:2220
+#: c/c-decl.cc:2255
 #, gcc-internal-format
 msgid "mismatch in argument %u type of built-in function %qD; expected %qT"
 msgstr ""
 
-#: c/c-decl.cc:2225
+#: c/c-decl.cc:2260
 #, gcc-internal-format
 msgid "mismatch in return type of built-in function %qD; expected %qT"
 msgstr ""
 
-#: c/c-decl.cc:2258
+#: c/c-decl.cc:2293
 #, gcc-internal-format
 msgid "conflicting types for %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2271 c/c-decl.cc:2308
+#: c/c-decl.cc:2306 c/c-decl.cc:2367
 #, gcc-internal-format
 msgid "conflicting types for %q+D; have %qT"
 msgstr ""
 
-#: c/c-decl.cc:2288
+#: c/c-decl.cc:2323
 #, gcc-internal-format
 msgid "conflicting named address spaces (generic vs %s) for %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2292
+#: c/c-decl.cc:2327
 #, gcc-internal-format
 msgid "conflicting named address spaces (%s vs generic) for %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2296
+#: c/c-decl.cc:2331
 #, gcc-internal-format
 msgid "conflicting named address spaces (%s vs %s) for %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2305
+#: c/c-decl.cc:2340
 #, gcc-internal-format
 msgid "conflicting type qualifiers for %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2326
+#: c/c-decl.cc:2391
 #, gcc-internal-format
 msgid "conflicting types for %q+D due to enum/integer mismatch; have %qT"
 msgstr ""
 
-#: c/c-decl.cc:2343
+#: c/c-decl.cc:2408
 #, gcc-internal-format
 msgid "redefinition of typedef %q+D with different type"
 msgstr ""
 
-#: c/c-decl.cc:2356
+#: c/c-decl.cc:2421
 #, gcc-internal-format
 msgid "redefinition of typedef %q+D with variably modified type"
 msgstr ""
 
-#: c/c-decl.cc:2361
+#: c/c-decl.cc:2426
 #, gcc-internal-format
 msgid "redefinition of typedef %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2389
+#: c/c-decl.cc:2454
 #, gcc-internal-format
 msgid "declaration of %qD shadows a built-in function"
 msgstr ""
 
-#: c/c-decl.cc:2405
+#: c/c-decl.cc:2470
 #, gcc-internal-format
 msgid "declaration of built-in function %qD without a prototype; expected %qT"
 msgstr ""
 
-#: c/c-decl.cc:2429 c/c-decl.cc:2552
+#: c/c-decl.cc:2494 c/c-decl.cc:2621
 #, gcc-internal-format
 msgid "redefinition of %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2468 c/c-decl.cc:2592
+#: c/c-decl.cc:2533 c/c-decl.cc:2661
 #, gcc-internal-format
 msgid "static declaration of %q+D follows non-static declaration"
 msgstr ""
 
-#: c/c-decl.cc:2479 c/c-decl.cc:2487 c/c-decl.cc:2581 c/c-decl.cc:2589
+#: c/c-decl.cc:2544 c/c-decl.cc:2552 c/c-decl.cc:2650 c/c-decl.cc:2658
 #, gcc-internal-format
 msgid "non-static declaration of %q+D follows static declaration"
 msgstr ""
 
-#: c/c-decl.cc:2504
+#: c/c-decl.cc:2569
 #, gcc-internal-format
 msgid "%<gnu_inline%> attribute present on %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2507
+#: c/c-decl.cc:2572
 #, gcc-internal-format
 msgid "but not here"
 msgstr ""
 
-#: c/c-decl.cc:2526
+#: c/c-decl.cc:2595
 #, gcc-internal-format
 msgid "thread-local declaration of %q+D follows non-thread-local declaration"
 msgstr ""
 
-#: c/c-decl.cc:2529
+#: c/c-decl.cc:2598
 #, gcc-internal-format
 msgid "non-thread-local declaration of %q+D follows thread-local declaration"
 msgstr ""
 
-#: c/c-decl.cc:2573
+#: c/c-decl.cc:2642
 #, gcc-internal-format
 msgid "extern declaration of %q+D follows declaration with no linkage"
 msgstr ""
 
-#: c/c-decl.cc:2611
+#: c/c-decl.cc:2680
 #, gcc-internal-format
 msgid "declaration of %q+D with no linkage follows extern declaration"
 msgstr ""
 
-#: c/c-decl.cc:2618
+#: c/c-decl.cc:2687
 #, gcc-internal-format
 msgid "redeclaration of %q+D with no linkage"
 msgstr ""
 
-#: c/c-decl.cc:2644
+#: c/c-decl.cc:2702
+#, gcc-internal-format
+msgid "duplicate declaration of %qD is invalid in C++"
+msgstr ""
+
+#: c/c-decl.cc:2712
 #, gcc-internal-format
 msgid ""
 "redeclaration of %q+D with different visibility (old visibility preserved)"
 msgstr ""
 
-#: c/c-decl.cc:2665
+#: c/c-decl.cc:2733
 #, gcc-internal-format
 msgid "redefinition of parameter %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2692
+#: c/c-decl.cc:2760
 #, gcc-internal-format
 msgid "redundant redeclaration of %q+D"
 msgstr ""
 
-#: c/c-decl.cc:3233
+#: c/c-decl.cc:3307
 #, gcc-internal-format
 msgid "declaration of %q+D shadows previous non-variable"
 msgstr ""
 
-#: c/c-decl.cc:3255
+#: c/c-decl.cc:3329
 #, gcc-internal-format
 msgid "declaration of %qD shadows a parameter"
 msgstr ""
 
-#: c/c-decl.cc:3268 cp/name-lookup.cc:3569
+#: c/c-decl.cc:3342 cp/name-lookup.cc:3659
 #, gcc-internal-format
 msgid "declaration of %qD shadows a global declaration"
 msgstr ""
 
-#: c/c-decl.cc:3294
+#: c/c-decl.cc:3368
 #, gcc-internal-format
 msgid "declaration of %qD shadows a previous local"
 msgstr ""
 
-#: c/c-decl.cc:3300 cp/name-lookup.cc:3286
+#: c/c-decl.cc:3374 cp/name-lookup.cc:3370
 #, gcc-internal-format
 msgid "shadowed declaration is here"
 msgstr ""
 
-#: c/c-decl.cc:3433
+#: c/c-decl.cc:3557
 #, gcc-internal-format
 msgid "nested extern declaration of %qD"
 msgstr ""
 
-#: c/c-decl.cc:3589 c/c-decl.cc:3603
+#: c/c-decl.cc:3713 c/c-decl.cc:3727
 #, gcc-internal-format
 msgid "implicit declaration of function %qE; did you mean %qs?"
 msgstr ""
 
-#: c/c-decl.cc:3595 c/c-decl.cc:3608
+#: c/c-decl.cc:3719 c/c-decl.cc:3732
 #, gcc-internal-format
 msgid "implicit declaration of function %qE"
 msgstr ""
 
-#: c/c-decl.cc:3627
+#: c/c-decl.cc:3751
 #, gcc-internal-format
 msgid "include %qs or provide a declaration of %qE"
 msgstr ""
 
-#: c/c-decl.cc:3898
+#: c/c-decl.cc:4022
 #, gcc-internal-format
 msgid "incompatible implicit declaration of built-in function %qD"
 msgstr ""
 
-#: c/c-decl.cc:3908
+#: c/c-decl.cc:4032
 #, gcc-internal-format
 msgid "include %qs or provide a declaration of %qD"
 msgstr ""
 
-#: c/c-decl.cc:3919
+#: c/c-decl.cc:4043
 #, gcc-internal-format
 msgid "incompatible implicit declaration of function %qD"
 msgstr ""
 
-#: c/c-decl.cc:3980
+#: c/c-decl.cc:4104
 #, gcc-internal-format
 msgid "%qE undeclared here (not in a function); did you mean %qs?"
 msgstr ""
 
-#: c/c-decl.cc:3985
+#: c/c-decl.cc:4109
 #, gcc-internal-format
 msgid "%qE undeclared here (not in a function)"
 msgstr ""
 
-#: c/c-decl.cc:3998
+#: c/c-decl.cc:4122
 #, gcc-internal-format
 msgid "%qE undeclared (first use in this function); did you mean %qs?"
 msgstr ""
 
-#: c/c-decl.cc:4003
+#: c/c-decl.cc:4127
 #, gcc-internal-format
 msgid "%qE undeclared (first use in this function)"
 msgstr ""
 
-#: c/c-decl.cc:4007
+#: c/c-decl.cc:4131
 #, gcc-internal-format
 msgid ""
 "each undeclared identifier is reported only once for each function it "
 "appears in"
 msgstr ""
 
-#: c/c-decl.cc:4055 cp/decl.cc:3632
+#: c/c-decl.cc:4179 cp/decl.cc:3833
 #, gcc-internal-format
 msgid "label %qE referenced outside of any function"
 msgstr ""
 
-#: c/c-decl.cc:4092
+#: c/c-decl.cc:4216
 #, gcc-internal-format
 msgid "jump into scope of identifier with variably modified type"
 msgstr ""
 
-#: c/c-decl.cc:4095
+#: c/c-decl.cc:4219
 #, gcc-internal-format
 msgid "jump skips OpenMP %<allocate%> allocation"
 msgstr ""
 
-#: c/c-decl.cc:4098
+#: c/c-decl.cc:4222
 #, gcc-internal-format
 msgid "jump skips variable initialization"
 msgstr ""
 
-#: c/c-decl.cc:4100 c/c-decl.cc:4156 c/c-decl.cc:4247
+#: c/c-decl.cc:4224 c/c-decl.cc:4280 c/c-decl.cc:4371
 #, gcc-internal-format
 msgid "label %qD defined here"
 msgstr ""
 
-#: c/c-decl.cc:4155 c/c-decl.cc:4246
+#: c/c-decl.cc:4279 c/c-decl.cc:4370
 #, gcc-internal-format
 msgid "jump into statement expression"
 msgstr ""
 
-#: c/c-decl.cc:4178
+#: c/c-decl.cc:4302
 #, gcc-internal-format
 msgid "duplicate label declaration %qE"
 msgstr ""
 
-#: c/c-decl.cc:4278 cp/decl.cc:4135
+#: c/c-decl.cc:4402 cp/decl.cc:4667
 #, gcc-internal-format
 msgid "duplicate label %qD"
 msgstr ""
 
-#: c/c-decl.cc:4309
+#: c/c-decl.cc:4433
 #, gcc-internal-format
 msgid ""
 "traditional C lacks a separate namespace for labels, identifier %qE conflicts"
 msgstr ""
 
-#: c/c-decl.cc:4381
+#: c/c-decl.cc:4495
+#, gcc-internal-format
+msgid "switch jumps into scope of identifier with variably modified type"
+msgstr ""
+
+#: c/c-decl.cc:4505
 #, gcc-internal-format
 msgid "switch jumps over OpenMP %<allocate%> allocation"
 msgstr ""
 
-#: c/c-decl.cc:4387
+#: c/c-decl.cc:4511
 #, gcc-internal-format
 msgid "switch jumps over variable initialization"
 msgstr ""
 
-#: c/c-decl.cc:4390 c/c-decl.cc:4403
+#: c/c-decl.cc:4514 c/c-decl.cc:4527
 #, gcc-internal-format
 msgid "switch starts here"
 msgstr ""
 
-#: c/c-decl.cc:4402
+#: c/c-decl.cc:4526
 #, gcc-internal-format
 msgid "switch jumps into statement expression"
 msgstr ""
 
-#: c/c-decl.cc:4485
+#: c/c-decl.cc:4609
 #, gcc-internal-format
 msgid "%qE defined as wrong kind of tag"
 msgstr ""
 
-#: c/c-decl.cc:4682 cp/tree.cc:5085
+#: c/c-decl.cc:4824 cp/tree.cc:5397
 #, gcc-internal-format
 msgid "%qE attribute applied to %qD with void return type"
 msgstr ""
 
-#: c/c-decl.cc:4691
+#: c/c-decl.cc:4833
 #, gcc-internal-format
 msgid ""
 "%qE attribute can only be applied to functions or to structure, union or "
 "enumeration types"
 msgstr ""
 
-#: c/c-decl.cc:4711
+#: c/c-decl.cc:4853
 #, gcc-internal-format
 msgid "standard %qE attribute can only be applied to functions"
 msgstr ""
 
-#: c/c-decl.cc:4731
+#: c/c-decl.cc:4873
 #, gcc-internal-format
 msgid ""
 "standard %qE attribute can only be applied to function declarators or type "
 "specifiers with function type"
 msgstr ""
 
-#: c/c-decl.cc:4733
+#: c/c-decl.cc:4875
 #, gcc-internal-format
 msgid "did you mean to specify it after %<)%> following function parameters?"
 msgstr ""
@@ -48795,444 +50636,446 @@ msgstr ""
 #. expressions, but is still appropriate as an error to
 #. avoid types declared in such a context escaping to
 #. the type of an auto variable.
-#: c/c-decl.cc:5038 c/c-decl.cc:8863
+#: c/c-decl.cc:5202 c/c-decl.cc:8910
 #, gcc-internal-format
 msgid "%qT declared in underspecified object initializer"
 msgstr ""
 
-#: c/c-decl.cc:5049
+#: c/c-decl.cc:5213
 #, gcc-internal-format
 msgid "unnamed struct/union that defines no instances"
 msgstr ""
 
-#: c/c-decl.cc:5060
+#: c/c-decl.cc:5224
 #, gcc-internal-format
 msgid "empty declaration with storage class specifier does not redeclare tag"
 msgstr ""
 
-#: c/c-decl.cc:5076
+#: c/c-decl.cc:5240
 #, gcc-internal-format
 msgid "empty declaration with type qualifier does not redeclare tag"
 msgstr ""
 
-#: c/c-decl.cc:5088
+#: c/c-decl.cc:5252
 #, gcc-internal-format
 msgid "empty declaration with %<_Alignas%> does not redeclare tag"
 msgstr ""
 
-#: c/c-decl.cc:5102
+#: c/c-decl.cc:5266
 #, gcc-internal-format
 msgid "empty declaration of %<enum%> type does not redeclare tag"
 msgstr ""
 
-#: c/c-decl.cc:5127 c/c-decl.cc:5135
+#: c/c-decl.cc:5291 c/c-decl.cc:5299
 #, gcc-internal-format
 msgid "useless type name in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5143
+#: c/c-decl.cc:5307
 #, gcc-internal-format
 msgid "%<inline%> in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5149
+#: c/c-decl.cc:5313
 #, gcc-internal-format
 msgid "%<_Noreturn%> in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5155
+#: c/c-decl.cc:5319
 #, gcc-internal-format
 msgid "%<constexpr%> in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5161
+#: c/c-decl.cc:5325
 #, gcc-internal-format
 msgid "%<auto%> in file-scope empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5167
+#: c/c-decl.cc:5331
 #, gcc-internal-format
 msgid "%<register%> in file-scope empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5175
+#: c/c-decl.cc:5339
 #, gcc-internal-format
 msgid ""
 "storage class specifier in empty declaration with %<enum%> underlying type"
 msgstr ""
 
-#: c/c-decl.cc:5181
+#: c/c-decl.cc:5345
 #, gcc-internal-format
 msgid "%qs in empty declaration with %<enum%> underlying type"
 msgstr ""
 
-#: c/c-decl.cc:5191
+#: c/c-decl.cc:5355
 #, gcc-internal-format
 msgid "type qualifier in empty declaration with %<enum%> underlying type"
 msgstr ""
 
-#: c/c-decl.cc:5197
+#: c/c-decl.cc:5361
 #, gcc-internal-format
 msgid "%<alignas%> in empty declaration with %<enum%> underlying type"
 msgstr ""
 
-#: c/c-decl.cc:5206
+#: c/c-decl.cc:5370
 #, gcc-internal-format
 msgid "useless storage class specifier in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5212
+#: c/c-decl.cc:5376
 #, gcc-internal-format
 msgid "useless %qs in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5225
+#: c/c-decl.cc:5389
 #, gcc-internal-format
 msgid "useless type qualifier in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5232
+#: c/c-decl.cc:5396
 #, gcc-internal-format
 msgid "useless %<_Alignas%> in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5250
+#: c/c-decl.cc:5414
 #, gcc-internal-format
 msgid "invalid use of attributes in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5264 c/c-parser.cc:2513
+#: c/c-decl.cc:5428 c/c-parser.cc:2663
 #, gcc-internal-format
 msgid "empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5336
+#: c/c-decl.cc:5500
 #, gcc-internal-format
 msgid ""
 "ISO C90 does not support %<static%> or type qualifiers in parameter array "
 "declarators"
 msgstr ""
 
-#: c/c-decl.cc:5340
+#: c/c-decl.cc:5505
 #, gcc-internal-format
 msgid "ISO C90 does not support %<[*]%> array declarators"
 msgstr ""
 
-#. C99 6.7.5.2p4
-#. A function definition isn't function prototype scope C99 6.2.1p4.
-#. C99 6.7.5.2p4
-#: c/c-decl.cc:5346 c/c-decl.cc:8448 c/c-decl.cc:10986
-#, gcc-internal-format
-msgid "%<[*]%> not allowed in other than function prototype scope"
-msgstr ""
-
-#: c/c-decl.cc:5539 cp/decl2.cc:1960 cp/name-lookup.cc:8994
+#: c/c-decl.cc:5718 cp/decl2.cc:2181 cp/name-lookup.cc:9201
 #, gcc-internal-format
 msgid "%<omp::%s%> not allowed to be specified in this context"
 msgstr ""
 
-#: c/c-decl.cc:5622
+#: c/c-decl.cc:5810
 #, gcc-internal-format
 msgid "%q+D is usually a function"
 msgstr ""
 
-#: c/c-decl.cc:5627 c/c-decl.cc:10816 cp/decl.cc:18582
+#: c/c-decl.cc:5815 c/c-decl.cc:10935 cp/decl.cc:19821
 #, gcc-internal-format
 msgid "no previous declaration for %qD"
 msgstr ""
 
-#: c/c-decl.cc:5636
+#: c/c-decl.cc:5824
 #, gcc-internal-format
 msgid "typedef %qD is initialized (use %<__typeof__%> instead)"
 msgstr ""
 
-#: c/c-decl.cc:5641
+#: c/c-decl.cc:5829
 #, gcc-internal-format
 msgid "function %qD is initialized like a variable"
 msgstr ""
 
 #. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
-#: c/c-decl.cc:5647
+#: c/c-decl.cc:5835
 #, gcc-internal-format
 msgid "parameter %qD is initialized"
 msgstr ""
 
-#: c/c-decl.cc:5667
+#: c/c-decl.cc:5855
 #, gcc-internal-format
 msgid "variable %qD has initializer but incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:5749
+#: c/c-decl.cc:5917
 #, gcc-internal-format
 msgid "inline function %q+D given attribute %qs"
 msgstr ""
 
-#: c/c-decl.cc:5806
+#: c/c-decl.cc:5945
 #, gcc-internal-format
-msgid "uninitialized const member in %qT is invalid in C++"
+msgid "versioned declarations are only allowed at file scope"
 msgstr ""
 
-#: c/c-decl.cc:5808
+#: c/c-decl.cc:5985
 #, gcc-internal-format
-msgid "%qD should be initialized"
+msgid "uninitialized const member in %qT is invalid in C++"
 msgstr ""
 
-#: c/c-decl.cc:5889
+#: c/c-decl.cc:5987
 #, gcc-internal-format
-msgid "initializer fails to determine size of %q+D"
+msgid "%qD should be initialized"
 msgstr ""
 
-#: c/c-decl.cc:5894
+#: c/c-decl.cc:6064
 #, gcc-internal-format
-msgid "array size missing in %q+D"
+msgid "initializer fails to determine size of %q+D"
 msgstr ""
 
-#: c/c-decl.cc:5898
+#: c/c-decl.cc:6076
 #, gcc-internal-format
 msgid "zero or negative size array %q+D"
 msgstr ""
 
-#: c/c-decl.cc:5989 m2/gm2-gcc/m2type.cc:1258
+#: c/c-decl.cc:6167 m2/gm2-gcc/m2type.cc:1270
 #, gcc-internal-format
 msgid "storage size of %q+D isn%'t constant"
 msgstr ""
 
-#: c/c-decl.cc:6039
+#: c/c-decl.cc:6217
 #, gcc-internal-format
 msgid "ignoring %<asm%> specifier for non-static local variable %q+D"
 msgstr ""
 
-#: c/c-decl.cc:6077
+#: c/c-decl.cc:6255
 #, gcc-internal-format
 msgid "cannot put object with volatile field into register"
 msgstr ""
 
-#: c/c-decl.cc:6163
+#: c/c-decl.cc:6341
 #, gcc-internal-format
 msgid "uninitialized %<const %D%> is invalid in C++"
 msgstr ""
 
-#: c/c-decl.cc:6178 cp/decl.cc:9537
+#: c/c-decl.cc:6356 cp/decl.cc:10248
 #, gcc-internal-format
 msgid "%q+D in declare target directive does not have mappable type"
 msgstr ""
 
-#: c/c-decl.cc:6441
+#: c/c-decl.cc:6440
+#, gcc-internal-format
+msgid "more than one list of forward declarations of parameters"
+msgstr ""
+
+#: c/c-decl.cc:6443
 #, gcc-internal-format
 msgid "ISO C forbids forward parameter declarations"
 msgstr ""
 
-#: c/c-decl.cc:6481
+#: c/c-decl.cc:6483
 #, gcc-internal-format
 msgid "file-scope compound literal specifies %<register%>"
 msgstr ""
 
-#: c/c-decl.cc:6487
+#: c/c-decl.cc:6489
 #, gcc-internal-format
 msgid "compound literal implicitly auto and declared %qs"
 msgstr ""
 
-#: c/c-decl.cc:6538
+#: c/c-decl.cc:6540
 #, gcc-internal-format
 msgid "array of unknown size with empty initializer"
 msgstr ""
 
-#: c/c-decl.cc:6592
+#: c/c-decl.cc:6555
+#, gcc-internal-format
+msgid "storage size isn%'t constant"
+msgstr ""
+
+#: c/c-decl.cc:6599
 #, gcc-internal-format
 msgid "defining a type in a compound literal is invalid in C++"
 msgstr ""
 
-#: c/c-decl.cc:6613 c/c-decl.cc:6628
+#: c/c-decl.cc:6620 c/c-decl.cc:6635
 #, gcc-internal-format
 msgid "bit-field %qs width not an integer constant"
 msgstr ""
 
-#: c/c-decl.cc:6623
+#: c/c-decl.cc:6630
 #, gcc-internal-format
 msgid "bit-field %qs width not an integer constant expression"
 msgstr ""
 
-#: c/c-decl.cc:6634
+#: c/c-decl.cc:6641
 #, gcc-internal-format
 msgid "negative width in bit-field %qs"
 msgstr ""
 
-#: c/c-decl.cc:6639
+#: c/c-decl.cc:6646
 #, gcc-internal-format
 msgid "zero width for bit-field %qs"
 msgstr ""
 
-#: c/c-decl.cc:6650
+#: c/c-decl.cc:6657
 #, gcc-internal-format
 msgid "bit-field %qs has invalid type"
 msgstr ""
 
-#: c/c-decl.cc:6656
+#: c/c-decl.cc:6663
 #, gcc-internal-format
 msgid "cannot declare bit-field %qs with %<warn_if_not_aligned%> type"
 msgstr ""
 
-#: c/c-decl.cc:6667
+#: c/c-decl.cc:6674
 #, gcc-internal-format
 msgid "type of bit-field %qs is a GCC extension"
 msgstr ""
 
-#: c/c-decl.cc:6673
+#: c/c-decl.cc:6680
 #, gcc-internal-format
 msgid "width of %qs exceeds its type"
 msgstr ""
 
-#: c/c-decl.cc:6692
+#: c/c-decl.cc:6699
 #, gcc-internal-format
 msgid "%qs is narrower than values of its type"
 msgstr ""
 
-#: c/c-decl.cc:6707
+#: c/c-decl.cc:6714
 #, gcc-internal-format
 msgid "ISO C90 forbids array %qE whose size cannot be evaluated"
 msgstr ""
 
-#: c/c-decl.cc:6710
+#: c/c-decl.cc:6717
 #, gcc-internal-format
 msgid "ISO C90 forbids array whose size cannot be evaluated"
 msgstr ""
 
-#: c/c-decl.cc:6717
+#: c/c-decl.cc:6724
 #, gcc-internal-format
 msgid "ISO C90 forbids variable length array %qE"
 msgstr ""
 
-#: c/c-decl.cc:6719
+#: c/c-decl.cc:6726
 #, gcc-internal-format
 msgid "ISO C90 forbids variable length array"
 msgstr ""
 
-#: c/c-decl.cc:6962
+#: c/c-decl.cc:6991
 #, gcc-internal-format
 msgid "%<enum%> underlying type may not be specified here"
 msgstr ""
 
-#: c/c-decl.cc:6990 c/c-decl.cc:7397 c/c-decl.cc:7407
+#: c/c-decl.cc:7019 c/c-decl.cc:7429 c/c-decl.cc:7439
 #, gcc-internal-format
 msgid "variably modified %qE at file scope"
 msgstr ""
 
-#: c/c-decl.cc:6992
+#: c/c-decl.cc:7021
 #, gcc-internal-format
 msgid "variably modified field at file scope"
 msgstr ""
 
-#: c/c-decl.cc:7012
+#: c/c-decl.cc:7041
 #, gcc-internal-format
 msgid "type defaults to %<int%> in declaration of %qE"
 msgstr ""
 
-#: c/c-decl.cc:7016
+#: c/c-decl.cc:7045
 #, gcc-internal-format
 msgid "type defaults to %<int%> in type name"
 msgstr ""
 
-#: c/c-decl.cc:7048
+#: c/c-decl.cc:7077
 #, gcc-internal-format
 msgid "duplicate %<const%>"
 msgstr ""
 
-#: c/c-decl.cc:7050
+#: c/c-decl.cc:7079
 #, gcc-internal-format
 msgid "duplicate %<restrict%>"
 msgstr ""
 
-#: c/c-decl.cc:7052
+#: c/c-decl.cc:7081
 #, gcc-internal-format
 msgid "duplicate %<volatile%>"
 msgstr ""
 
-#: c/c-decl.cc:7054
+#: c/c-decl.cc:7083
 #, gcc-internal-format
 msgid "duplicate %<_Atomic%>"
 msgstr ""
 
-#: c/c-decl.cc:7057
+#: c/c-decl.cc:7086
 #, gcc-internal-format, gfc-internal-format
 msgid "conflicting named address spaces (%s vs %s)"
 msgstr ""
 
-#: c/c-decl.cc:7080 c/c-parser.cc:3794
+#: c/c-decl.cc:7109 c/c-parser.cc:3978
 #, gcc-internal-format
 msgid "%<_Atomic%>-qualified array type"
 msgstr ""
 
-#: c/c-decl.cc:7095
+#: c/c-decl.cc:7124
 #, gcc-internal-format
 msgid "function definition declared %<auto%>"
 msgstr ""
 
-#: c/c-decl.cc:7097
+#: c/c-decl.cc:7126
 #, gcc-internal-format
 msgid "function definition declared %<register%>"
 msgstr ""
 
-#: c/c-decl.cc:7099
+#: c/c-decl.cc:7128
 #, gcc-internal-format
 msgid "function definition declared %<typedef%>"
 msgstr ""
 
-#: c/c-decl.cc:7101
+#: c/c-decl.cc:7130
 #, gcc-internal-format
 msgid "function definition declared %qs"
 msgstr ""
 
-#: c/c-decl.cc:7128
+#: c/c-decl.cc:7157
 #, gcc-internal-format
 msgid "storage class specified for structure field %qE"
 msgstr ""
 
-#: c/c-decl.cc:7131
+#: c/c-decl.cc:7160
 #, gcc-internal-format
 msgid "storage class specified for structure field"
 msgstr ""
 
-#: c/c-decl.cc:7135
+#: c/c-decl.cc:7164
 #, gcc-internal-format
 msgid "storage class specified for parameter %qE"
 msgstr ""
 
-#: c/c-decl.cc:7138
+#: c/c-decl.cc:7167
 #, gcc-internal-format
 msgid "storage class specified for unnamed parameter"
 msgstr ""
 
-#: c/c-decl.cc:7141 cp/decl.cc:13711
+#: c/c-decl.cc:7170 cp/decl.cc:14898
 #, gcc-internal-format
 msgid "storage class specified for typename"
 msgstr ""
 
-#: c/c-decl.cc:7159
+#: c/c-decl.cc:7188
 #, gcc-internal-format
 msgid "%qE initialized and declared %<extern%>"
 msgstr ""
 
-#: c/c-decl.cc:7163
+#: c/c-decl.cc:7192
 #, gcc-internal-format
 msgid "%qE has both %<extern%> and initializer"
 msgstr ""
 
-#: c/c-decl.cc:7168
+#: c/c-decl.cc:7197
 #, gcc-internal-format
 msgid "file-scope declaration of %qE specifies %<auto%>"
 msgstr ""
 
-#: c/c-decl.cc:7172
+#: c/c-decl.cc:7201
 #, gcc-internal-format
 msgid "file-scope declaration of %qE specifies %<register%>"
 msgstr ""
 
-#: c/c-decl.cc:7177
+#: c/c-decl.cc:7206
 #, gcc-internal-format
 msgid "nested function %qE declared %<extern%>"
 msgstr ""
 
-#: c/c-decl.cc:7180
+#: c/c-decl.cc:7209
 #, gcc-internal-format
 msgid "function-scope %qE implicitly auto and declared %qs"
 msgstr ""
@@ -49240,1356 +51083,1446 @@ msgstr ""
 #. Only the innermost declarator (making a parameter be of
 #. array type which is converted to pointer type)
 #. may have static or type qualifiers.
-#: c/c-decl.cc:7227 c/c-decl.cc:7587
+#: c/c-decl.cc:7256 c/c-decl.cc:7627
 #, gcc-internal-format
 msgid "static or type qualifiers in non-parameter array declarator"
 msgstr ""
 
-#: c/c-decl.cc:7288
+#: c/c-decl.cc:7317
 #, gcc-internal-format
 msgid "declaration of %qE as array of voids"
 msgstr ""
 
-#: c/c-decl.cc:7290
+#: c/c-decl.cc:7319
 #, gcc-internal-format
 msgid "declaration of type name as array of voids"
 msgstr ""
 
-#: c/c-decl.cc:7297
+#: c/c-decl.cc:7326
 #, gcc-internal-format
 msgid "declaration of %qE as array of functions"
 msgstr ""
 
-#: c/c-decl.cc:7300
+#: c/c-decl.cc:7329
 #, gcc-internal-format
 msgid "declaration of type name as array of functions"
 msgstr ""
 
-#: c/c-decl.cc:7308 c/c-decl.cc:9662
+#: c/c-decl.cc:7337 c/c-decl.cc:9755
 #, gcc-internal-format
 msgid "invalid use of structure with flexible array member"
 msgstr ""
 
-#: c/c-decl.cc:7340
+#: c/c-decl.cc:7369
 #, gcc-internal-format
 msgid "size of array %qE has non-integer type"
 msgstr ""
 
-#: c/c-decl.cc:7344
+#: c/c-decl.cc:7373
 #, gcc-internal-format
 msgid "size of unnamed array has non-integer type"
 msgstr ""
 
-#: c/c-decl.cc:7352
+#: c/c-decl.cc:7382
 #, gcc-internal-format
 msgid "size of array %qE has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:7355
+#: c/c-decl.cc:7385
 #, gcc-internal-format
 msgid "size of unnamed array has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:7367
+#: c/c-decl.cc:7398
 #, gcc-internal-format
 msgid "ISO C forbids zero-size array %qE"
 msgstr ""
 
-#: c/c-decl.cc:7370
+#: c/c-decl.cc:7401
 #, gcc-internal-format
 msgid "ISO C forbids zero-size array"
 msgstr ""
 
-#: c/c-decl.cc:7379
+#: c/c-decl.cc:7410
 #, gcc-internal-format
 msgid "size of array %qE is negative"
 msgstr ""
 
-#: c/c-decl.cc:7381
+#: c/c-decl.cc:7412
 #, gcc-internal-format
 msgid "size of unnamed array is negative"
 msgstr ""
 
-#: c/c-decl.cc:7467
+#: c/c-decl.cc:7499
 #, gcc-internal-format
 msgid "size of array %qE is too large"
 msgstr ""
 
-#: c/c-decl.cc:7470
+#: c/c-decl.cc:7502
 #, gcc-internal-format
 msgid "size of unnamed array is too large"
 msgstr ""
 
-#: c/c-decl.cc:7509 c/c-decl.cc:8105
+#: c/c-decl.cc:7541 c/c-decl.cc:8149
 #, gcc-internal-format
 msgid "ISO C90 does not support flexible array members"
 msgstr ""
 
-#: c/c-decl.cc:7522
-#, gcc-internal-format
-msgid "%<[*]%> not in a declaration"
-msgstr ""
-
-#: c/c-decl.cc:7530
+#: c/c-decl.cc:7554
 #, gcc-internal-format
 msgid "array type has incomplete element type %qT"
 msgstr ""
 
-#: c/c-decl.cc:7536
+#: c/c-decl.cc:7560
 #, gcc-internal-format
 msgid ""
 "declaration of %qE as multidimensional array must have bounds for all "
 "dimensions except the first"
 msgstr ""
 
-#: c/c-decl.cc:7540
+#: c/c-decl.cc:7564
 #, gcc-internal-format
 msgid ""
 "declaration of multidimensional array must have bounds for all dimensions "
 "except the first"
 msgstr ""
 
-#: c/c-decl.cc:7623
+#: c/c-decl.cc:7592
+#, gcc-internal-format
+msgid "%<[*]%> not in a declaration"
+msgstr ""
+
+#: c/c-decl.cc:7597
+#, gcc-internal-format
+msgid ""
+"%<[*]%> not allowed in other than function prototype scope or generic "
+"association"
+msgstr ""
+
+#: c/c-decl.cc:7663
 #, gcc-internal-format
 msgid "%qE declared as function returning a function"
 msgstr ""
 
-#: c/c-decl.cc:7626
+#: c/c-decl.cc:7666
 #, gcc-internal-format
 msgid "type name declared as function returning a function"
 msgstr ""
 
-#: c/c-decl.cc:7633
+#: c/c-decl.cc:7673
 #, gcc-internal-format
 msgid "%qE declared as function returning an array"
 msgstr ""
 
-#: c/c-decl.cc:7636
+#: c/c-decl.cc:7676
 #, gcc-internal-format
 msgid "type name declared as function returning an array"
 msgstr ""
 
-#: c/c-decl.cc:7680
+#: c/c-decl.cc:7720
 #, gcc-internal-format
 msgid "function definition has qualified void return type"
 msgstr ""
 
-#: c/c-decl.cc:7684 cp/decl.cc:14136
+#: c/c-decl.cc:7724 cp/decl.cc:15313
 #, gcc-internal-format
 msgid "type qualifiers ignored on function return type"
 msgstr ""
 
-#: c/c-decl.cc:7723 c/c-decl.cc:7891 c/c-decl.cc:7945 c/c-decl.cc:8039
-#: c/c-decl.cc:8161 c/c-parser.cc:3796
+#: c/c-decl.cc:7763 c/c-decl.cc:7931 c/c-decl.cc:7985 c/c-decl.cc:8083
+#: c/c-decl.cc:8205 c/c-parser.cc:3980
 #, gcc-internal-format
 msgid "%<_Atomic%>-qualified function type"
 msgstr ""
 
-#: c/c-decl.cc:7729 c/c-decl.cc:7897 c/c-decl.cc:8044 c/c-decl.cc:8166
+#: c/c-decl.cc:7769 c/c-decl.cc:7937 c/c-decl.cc:8088 c/c-decl.cc:8210
 #, gcc-internal-format
 msgid "ISO C forbids qualified function types"
 msgstr ""
 
-#: c/c-decl.cc:7782
+#: c/c-decl.cc:7822
 #, gcc-internal-format
 msgid "%qs combined with %<auto%> qualifier for %qE"
 msgstr ""
 
-#: c/c-decl.cc:7786
+#: c/c-decl.cc:7826
 #, gcc-internal-format
 msgid "%qs combined with %<register%> qualifier for %qE"
 msgstr ""
 
-#: c/c-decl.cc:7792
+#: c/c-decl.cc:7832
 #, gcc-internal-format
 msgid "%qs specified for auto variable %qE"
 msgstr ""
 
-#: c/c-decl.cc:7808
+#: c/c-decl.cc:7848
 #, gcc-internal-format
 msgid "%qs specified for parameter %qE"
 msgstr ""
 
-#: c/c-decl.cc:7811
+#: c/c-decl.cc:7851
 #, gcc-internal-format
 msgid "%qs specified for unnamed parameter"
 msgstr ""
 
-#: c/c-decl.cc:7817
+#: c/c-decl.cc:7857
 #, gcc-internal-format
 msgid "%qs specified for structure field %qE"
 msgstr ""
 
-#: c/c-decl.cc:7820
+#: c/c-decl.cc:7860
 #, gcc-internal-format
 msgid "%qs specified for structure field"
 msgstr ""
 
-#: c/c-decl.cc:7835
+#: c/c-decl.cc:7875
 #, gcc-internal-format
 msgid "bit-field %qE has atomic type"
 msgstr ""
 
-#: c/c-decl.cc:7837
+#: c/c-decl.cc:7877
 #, gcc-internal-format
 msgid "bit-field has atomic type"
 msgstr ""
 
-#: c/c-decl.cc:7846
+#: c/c-decl.cc:7886
 #, gcc-internal-format
 msgid "alignment specified for typedef %qE"
 msgstr ""
 
-#: c/c-decl.cc:7848
+#: c/c-decl.cc:7888
 #, gcc-internal-format
 msgid "alignment specified for %<register%> object %qE"
 msgstr ""
 
-#: c/c-decl.cc:7853
+#: c/c-decl.cc:7893
 #, gcc-internal-format
 msgid "alignment specified for parameter %qE"
 msgstr ""
 
-#: c/c-decl.cc:7855
+#: c/c-decl.cc:7895
 #, gcc-internal-format
 msgid "alignment specified for unnamed parameter"
 msgstr ""
 
-#: c/c-decl.cc:7860
+#: c/c-decl.cc:7900
 #, gcc-internal-format
 msgid "alignment specified for bit-field %qE"
 msgstr ""
 
-#: c/c-decl.cc:7862
+#: c/c-decl.cc:7902
 #, gcc-internal-format
 msgid "alignment specified for unnamed bit-field"
 msgstr ""
 
-#: c/c-decl.cc:7865
+#: c/c-decl.cc:7905
 #, gcc-internal-format
 msgid "alignment specified for function %qE"
 msgstr ""
 
-#: c/c-decl.cc:7872
+#: c/c-decl.cc:7912
 #, gcc-internal-format
 msgid "%<_Alignas%> specifiers cannot reduce alignment of %qE"
 msgstr ""
 
-#: c/c-decl.cc:7875
+#: c/c-decl.cc:7915
 #, gcc-internal-format
 msgid "%<_Alignas%> specifiers cannot reduce alignment of unnamed field"
 msgstr ""
 
-#: c/c-decl.cc:7906
+#: c/c-decl.cc:7946
 #, gcc-internal-format
 msgid "typedef %q+D declared %<inline%>"
 msgstr ""
 
-#: c/c-decl.cc:7908
+#: c/c-decl.cc:7948
 #, gcc-internal-format
 msgid "typedef %q+D declared %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.cc:7951
+#: c/c-decl.cc:7991
 #, gcc-internal-format
 msgid "ISO C forbids const or volatile function types"
 msgstr ""
 
 #. C99 6.7.2.1p8
-#: c/c-decl.cc:7962
+#: c/c-decl.cc:8002
 #, gcc-internal-format
 msgid "a member of a structure or union cannot have a variably modified type"
 msgstr ""
 
-#: c/c-decl.cc:7979 cp/decl.cc:12578
+#: c/c-decl.cc:8019 cp/decl.cc:13674
 #, gcc-internal-format
 msgid "variable or field %qE declared void"
 msgstr ""
 
-#: c/c-decl.cc:8029
+#: c/c-decl.cc:8073
 #, gcc-internal-format
 msgid "attributes in parameter array declarator ignored"
 msgstr ""
 
-#: c/c-decl.cc:8071
+#: c/c-decl.cc:8115
 #, gcc-internal-format
 msgid "parameter %q+D declared %<inline%>"
 msgstr ""
 
-#: c/c-decl.cc:8073
+#: c/c-decl.cc:8117
 #, gcc-internal-format
 msgid "parameter %q+D declared %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.cc:8086
+#: c/c-decl.cc:8130
 #, gcc-internal-format
 msgid "field %qE declared as a function"
 msgstr ""
 
-#: c/c-decl.cc:8093
+#: c/c-decl.cc:8137
 #, gcc-internal-format
 msgid "field %qE has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:8095
+#: c/c-decl.cc:8139
 #, gcc-internal-format
 msgid "unnamed field has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:8132 c/c-decl.cc:8143 c/c-decl.cc:8146
+#: c/c-decl.cc:8176 c/c-decl.cc:8187 c/c-decl.cc:8190
 #, gcc-internal-format
 msgid "invalid storage class for function %qE"
 msgstr ""
 
-#: c/c-decl.cc:8203
+#: c/c-decl.cc:8247
 #, gcc-internal-format
 msgid "cannot inline function %<main%>"
 msgstr ""
 
-#: c/c-decl.cc:8205
+#: c/c-decl.cc:8249
 #, gcc-internal-format
 msgid "%<main%> declared %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.cc:8216
+#: c/c-decl.cc:8260
 #, gcc-internal-format
 msgid "ISO C99 does not support %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.cc:8219
+#: c/c-decl.cc:8263
 #, gcc-internal-format
 msgid "ISO C90 does not support %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.cc:8241
+#: c/c-decl.cc:8285
 #, gcc-internal-format
 msgid "function previously declared %<static%> redeclared %<extern%>"
 msgstr ""
 
-#: c/c-decl.cc:8259
+#: c/c-decl.cc:8303
 #, gcc-internal-format
 msgid "%<constexpr%> object has variably modified type"
 msgstr ""
 
-#: c/c-decl.cc:8263 c/c-parser.cc:13368
+#: c/c-decl.cc:8307 c/c-parser.cc:13721
 #, gcc-internal-format
 msgid "invalid qualifiers for %<constexpr%> object"
 msgstr ""
 
-#: c/c-decl.cc:8269 c/c-parser.cc:13371
+#: c/c-decl.cc:8313 c/c-parser.cc:13724
 #, gcc-internal-format
 msgid "invalid qualifiers for field of %<constexpr%> object"
 msgstr ""
 
-#: c/c-decl.cc:8295
+#: c/c-decl.cc:8339
 #, gcc-internal-format
 msgid "variable previously declared %<static%> redeclared %<extern%>"
 msgstr ""
 
-#: c/c-decl.cc:8307
+#: c/c-decl.cc:8351
 #, gcc-internal-format
 msgid "variable %q+D declared %<inline%>"
 msgstr ""
 
-#: c/c-decl.cc:8309
+#: c/c-decl.cc:8353
 #, gcc-internal-format
 msgid "variable %q+D declared %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.cc:8344
+#: c/c-decl.cc:8391
 #, gcc-internal-format
 msgid "non-nested function with variably modified type"
 msgstr ""
 
-#: c/c-decl.cc:8346
+#: c/c-decl.cc:8393
 #, gcc-internal-format
 msgid "object with variably modified type must have no linkage"
 msgstr ""
 
-#: c/c-decl.cc:8454 c/c-decl.cc:10790
+#: c/c-decl.cc:8465
+#, gcc-internal-format
+msgid "non-local variable %qD with anonymous type is questionable in C++"
+msgstr ""
+
+#. A function definition isn't function prototype scope C99 6.2.1p4.
+#. C99 6.7.5.2p4
+#: c/c-decl.cc:8495 c/c-decl.cc:11116
+#, gcc-internal-format
+msgid "%<[*]%> not allowed in other than function prototype scope"
+msgstr ""
+
+#: c/c-decl.cc:8501 c/c-decl.cc:10909
 #, gcc-internal-format
 msgid "function declaration isn%'t a prototype"
 msgstr ""
 
-#: c/c-decl.cc:8466
+#: c/c-decl.cc:8513
 #, gcc-internal-format
 msgid "parameter names (without types) in function declaration"
 msgstr ""
 
-#: c/c-decl.cc:8514
+#: c/c-decl.cc:8561
 #, gcc-internal-format
 msgid "parameter %u (%q+D) has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:8518
+#: c/c-decl.cc:8565
 #, gcc-internal-format, gfc-internal-format
 msgid "parameter %u has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:8598
+#: c/c-decl.cc:8645
 #, gcc-internal-format
 msgid "%<void%> as only parameter may not be qualified"
 msgstr ""
 
-#: c/c-decl.cc:8602
+#: c/c-decl.cc:8649
 #, gcc-internal-format
 msgid "%<void%> must be the only parameter"
 msgstr ""
 
-#: c/c-decl.cc:8632
+#: c/c-decl.cc:8679
 #, gcc-internal-format
 msgid "parameter %q+D has just a forward declaration"
 msgstr ""
 
-#: c/c-decl.cc:8640
+#: c/c-decl.cc:8687
 #, gcc-internal-format
 msgid "%<void%> must be the only parameter and unnamed"
 msgstr ""
 
-#: c/c-decl.cc:8682
+#: c/c-decl.cc:8729
 #, gcc-internal-format
 msgid ""
 "%<%s %E%> declared inside parameter list will not be visible outside of this "
 "definition or declaration"
 msgstr ""
 
-#: c/c-decl.cc:8689
+#: c/c-decl.cc:8736
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "anonymous %s declared inside parameter list will not be visible outside of "
 "this definition or declaration"
 msgstr ""
 
-#: c/c-decl.cc:8815
+#: c/c-decl.cc:8862
 #, gcc-internal-format
 msgid "enum type defined here"
 msgstr ""
 
-#: c/c-decl.cc:8821
+#: c/c-decl.cc:8868
 #, gcc-internal-format
 msgid "struct defined here"
 msgstr ""
 
-#: c/c-decl.cc:8827
+#: c/c-decl.cc:8874
 #, gcc-internal-format
 msgid "union defined here"
 msgstr ""
 
-#: c/c-decl.cc:8920
+#: c/c-decl.cc:8967
 #, gcc-internal-format
 msgid "redefinition of %<union %E%>"
 msgstr ""
 
-#: c/c-decl.cc:8922
+#: c/c-decl.cc:8969
 #, gcc-internal-format
 msgid "redefinition of %<struct %E%>"
 msgstr ""
 
-#: c/c-decl.cc:8931
+#: c/c-decl.cc:8978
 #, gcc-internal-format
 msgid "nested redefinition of %<union %E%>"
 msgstr ""
 
-#: c/c-decl.cc:8933
+#: c/c-decl.cc:8980
 #, gcc-internal-format
 msgid "nested redefinition of %<struct %E%>"
 msgstr ""
 
-#: c/c-decl.cc:8966 c/c-decl.cc:10120
+#: c/c-decl.cc:9014 c/c-decl.cc:10233
 #, gcc-internal-format
 msgid "defining type in %qs expression is invalid in C++"
 msgstr ""
 
-#: c/c-decl.cc:8972 c/c-decl.cc:10126
+#: c/c-decl.cc:9021 c/c-decl.cc:10240
 #, gcc-internal-format
 msgid "%qT defined in underspecified object initializer"
 msgstr ""
 
-#: c/c-decl.cc:9036 cp/decl.cc:5721 cp/parser.cc:28813
+#: c/c-decl.cc:9085 cp/decl.cc:6314 cp/parser.cc:31004
 #, gcc-internal-format
 msgid "declaration does not declare anything"
 msgstr ""
 
-#: c/c-decl.cc:9041
+#: c/c-decl.cc:9090
 #, gcc-internal-format
 msgid "ISO C99 doesn%'t support unnamed structs/unions"
 msgstr ""
 
-#: c/c-decl.cc:9044
+#: c/c-decl.cc:9093
 #, gcc-internal-format
 msgid "ISO C90 doesn%'t support unnamed structs/unions"
 msgstr ""
 
-#: c/c-decl.cc:9137 c/c-decl.cc:9155 c/c-decl.cc:9216
+#: c/c-decl.cc:9192 c/c-decl.cc:9210 c/c-decl.cc:9271
 #, gcc-internal-format
 msgid "duplicate member %q+D"
 msgstr ""
 
-#: c/c-decl.cc:9242
+#: c/c-decl.cc:9297
 #, gcc-internal-format
 msgid "empty struct has size 0 in C, size 1 in C++"
 msgstr ""
 
-#: c/c-decl.cc:9245
+#: c/c-decl.cc:9300
 #, gcc-internal-format
 msgid "empty union has size 0 in C, size 1 in C++"
 msgstr ""
 
-#: c/c-decl.cc:9479
+#: c/c-decl.cc:9333
+#, gcc-internal-format
+msgid "using %qD as both field and typedef name is invalid in C++"
+msgstr ""
+
+#: c/c-decl.cc:9543
 #, gcc-internal-format
 msgid ""
 "argument %qE to the %<counted_by%> attribute is not a field declaration in "
 "the same structure as %qD"
 msgstr ""
 
-#: c/c-decl.cc:9495
+#: c/c-decl.cc:9559
 #, gcc-internal-format
 msgid ""
 "argument %qE to the %<counted_by%> attribute is not a field declaration with "
 "an integer type"
 msgstr ""
 
-#: c/c-decl.cc:9553
+#: c/c-decl.cc:9638
 #, gcc-internal-format
 msgid "union has no named members"
 msgstr ""
 
-#: c/c-decl.cc:9555
+#: c/c-decl.cc:9640
 #, gcc-internal-format
 msgid "union has no members"
 msgstr ""
 
-#: c/c-decl.cc:9560
+#: c/c-decl.cc:9645
 #, gcc-internal-format
 msgid "struct has no named members"
 msgstr ""
 
-#: c/c-decl.cc:9562
+#: c/c-decl.cc:9647
 #, gcc-internal-format
 msgid "struct has no members"
 msgstr ""
 
-#: c/c-decl.cc:9640 cp/decl.cc:15168
+#: c/c-decl.cc:9724 cp/decl.cc:16338
 #, gcc-internal-format
 msgid "flexible array member in union is a GCC extension"
 msgstr ""
 
-#: c/c-decl.cc:9644
+#: c/c-decl.cc:9728
 #, gcc-internal-format
 msgid "flexible array member not at end of struct"
 msgstr ""
 
-#: c/c-decl.cc:9649
+#: c/c-decl.cc:9733
 #, gcc-internal-format
 msgid ""
 "flexible array member in a struct with no named members is a GCC extension"
 msgstr ""
 
-#: c/c-decl.cc:9684
+#: c/c-decl.cc:9780
 #, gcc-internal-format
 msgid ""
 "structure containing a flexible array member is not at the end of another "
 "structure"
 msgstr ""
 
-#: c/c-decl.cc:9711
+#: c/c-decl.cc:9807
 #, gcc-internal-format
 msgid "type %qT is too large"
 msgstr ""
 
-#: c/c-decl.cc:9775
+#: c/c-decl.cc:9823
+#, gcc-internal-format
+msgid "bit-field %qD has invalid type"
+msgstr ""
+
+#: c/c-decl.cc:9878
 #, gcc-internal-format
 msgid "type punning toggles scalar storage order"
 msgstr ""
 
-#: c/c-decl.cc:9842
+#: c/c-decl.cc:9950
 #, gcc-internal-format
 msgid "union cannot be made transparent"
 msgstr ""
 
-#: c/c-decl.cc:9856
+#: c/c-decl.cc:9964
 #, gcc-internal-format
 msgid "redefinition of struct or union %qT with variably modified type"
 msgstr ""
 
-#: c/c-decl.cc:9863
+#: c/c-decl.cc:9971
 #, gcc-internal-format
 msgid "redefinition of struct or union %qT"
 msgstr ""
 
-#: c/c-decl.cc:10042
+#: c/c-decl.cc:10154
 #, gcc-internal-format
 msgid "nested redefinition of %<enum %E%>"
 msgstr ""
 
-#: c/c-decl.cc:10090
+#: c/c-decl.cc:10202
 #, gcc-internal-format
 msgid "redeclaration of %<enum %E%>"
 msgstr ""
 
-#: c/c-decl.cc:10102
+#: c/c-decl.cc:10214
 #, gcc-internal-format
 msgid "%<enum%> declared with but defined without fixed underlying type"
 msgstr ""
 
-#: c/c-decl.cc:10189 cp/decl.cc:17840 m2/gm2-gcc/m2type.cc:2088
+#: c/c-decl.cc:10303 cp/decl.cc:19075 m2/gm2-gcc/m2type.cc:2100
 #, gcc-internal-format
 msgid "specified mode too small for enumerated values"
 msgstr ""
 
-#: c/c-decl.cc:10208
+#: c/c-decl.cc:10322
 #, gcc-internal-format
 msgid "enumeration values exceed range of largest integer"
 msgstr ""
 
-#: c/c-decl.cc:10217
+#: c/c-decl.cc:10331
 #, gcc-internal-format
 msgid "enumeration values exceed range of %qs"
 msgstr ""
 
-#: c/c-decl.cc:10330
+#: c/c-decl.cc:10448
 #, gcc-internal-format
 msgid "conflicting redefinition of enum %qT"
 msgstr ""
 
-#: c/c-decl.cc:10363 c/c-decl.cc:10379
+#: c/c-decl.cc:10481 c/c-decl.cc:10497
 #, gcc-internal-format
 msgid "enumerator value for %qE is not an integer constant"
 msgstr ""
 
-#: c/c-decl.cc:10374
+#: c/c-decl.cc:10492
 #, gcc-internal-format
 msgid "enumerator value for %qE is not an integer constant expression"
 msgstr ""
 
-#: c/c-decl.cc:10398
+#: c/c-decl.cc:10516
 #, gcc-internal-format
 msgid "overflow in enumeration values"
 msgstr ""
 
-#: c/c-decl.cc:10405
+#: c/c-decl.cc:10523
 #, gcc-internal-format
 msgid "enumerator value outside the range of underlying type"
 msgstr ""
 
-#: c/c-decl.cc:10422
+#: c/c-decl.cc:10540
 #, gcc-internal-format
 msgid "value of redeclared enumerator outside the range of %qT"
 msgstr ""
 
-#: c/c-decl.cc:10450
+#: c/c-decl.cc:10568
 #, gcc-internal-format
 msgid "enumerator value outside the range of %qs"
 msgstr ""
 
-#: c/c-decl.cc:10456
+#: c/c-decl.cc:10574
 #, gcc-internal-format
 msgid "ISO C restricts enumerator values to range of %<int%> before C23"
 msgstr ""
 
-#: c/c-decl.cc:10664 cp/decl.cc:6055 cp/decl.cc:18440
+#: c/c-decl.cc:10782 cp/decl.cc:6656 cp/decl.cc:19679
 #, gcc-internal-format
 msgid "inline function %qD given attribute %qs"
 msgstr ""
 
-#: c/c-decl.cc:10683
+#: c/c-decl.cc:10801
 #, gcc-internal-format
 msgid "return type is an incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:10695
+#: c/c-decl.cc:10813
 #, gcc-internal-format
 msgid "return type defaults to %<int%>"
 msgstr ""
 
-#: c/c-decl.cc:10723
+#: c/c-decl.cc:10842
 #, gcc-internal-format
 msgid "%q+D defined as variadic function without prototype"
 msgstr ""
 
-#: c/c-decl.cc:10776
+#: c/c-decl.cc:10895
 #, gcc-internal-format
 msgid ""
 "ISO C23 does not allow defining parameters for function %qE declared without "
 "parameters"
 msgstr ""
 
-#: c/c-decl.cc:10799
+#: c/c-decl.cc:10918
 #, gcc-internal-format
 msgid "no previous prototype for %qD"
 msgstr ""
 
-#: c/c-decl.cc:10808
+#: c/c-decl.cc:10927
 #, gcc-internal-format
 msgid "%qD was used with no prototype before its definition"
 msgstr ""
 
-#: c/c-decl.cc:10826
+#: c/c-decl.cc:10945
 #, gcc-internal-format
 msgid "%qD was used with no declaration before its definition"
 msgstr ""
 
-#: c/c-decl.cc:10845
+#: c/c-decl.cc:10964
 #, gcc-internal-format
 msgid "return type of %qD is not %<int%>"
 msgstr ""
 
-#: c/c-decl.cc:10847
+#: c/c-decl.cc:10966
 #, gcc-internal-format
 msgid "%<_Atomic%>-qualified return type of %qD"
 msgstr ""
 
-#: c/c-decl.cc:10854
+#: c/c-decl.cc:10973
 #, gcc-internal-format
 msgid "%qD is normally a non-static function"
 msgstr ""
 
-#: c/c-decl.cc:10905
+#: c/c-decl.cc:10991
+#, gcc-internal-format
+msgid "versioned definitions are only allowed at file scope"
+msgstr ""
+
+#: c/c-decl.cc:11035
 #, gcc-internal-format
 msgid "old-style parameter declarations in prototyped function definition"
 msgstr ""
 
-#: c/c-decl.cc:10921
+#: c/c-decl.cc:11051
 #, gcc-internal-format
 msgid "traditional C rejects ISO C style function definitions"
 msgstr ""
 
-#: c/c-decl.cc:10938
+#: c/c-decl.cc:11068
 #, gcc-internal-format
 msgid ""
 "ISO C does not support omitting parameter names in function definitions "
 "before C23"
 msgstr ""
 
-#: c/c-decl.cc:10978 c/c-decl.cc:10982
+#: c/c-decl.cc:11108 c/c-decl.cc:11112
 #, gcc-internal-format
 msgid "old-style function definition"
 msgstr ""
 
-#: c/c-decl.cc:10995
+#: c/c-decl.cc:11125
 #, gcc-internal-format
 msgid "parameter name missing from parameter list"
 msgstr ""
 
-#: c/c-decl.cc:11011
+#: c/c-decl.cc:11141
 #, gcc-internal-format
 msgid "%qD declared as a non-parameter"
 msgstr ""
 
-#: c/c-decl.cc:11019
+#: c/c-decl.cc:11149
 #, gcc-internal-format
 msgid "multiple parameters named %qD"
 msgstr ""
 
-#: c/c-decl.cc:11028
+#: c/c-decl.cc:11158
 #, gcc-internal-format
 msgid "parameter %qD declared with void type"
 msgstr ""
 
-#: c/c-decl.cc:11057 c/c-decl.cc:11062
+#: c/c-decl.cc:11187 c/c-decl.cc:11192
 #, gcc-internal-format
 msgid "type of %qD defaults to %<int%>"
 msgstr ""
 
-#: c/c-decl.cc:11082
+#: c/c-decl.cc:11212
 #, gcc-internal-format
 msgid "parameter %qD has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:11089
+#: c/c-decl.cc:11219
 #, gcc-internal-format
 msgid "declaration for parameter %qD but no such parameter"
 msgstr ""
 
-#: c/c-decl.cc:11142
+#: c/c-decl.cc:11272
 #, gcc-internal-format
 msgid "number of arguments doesn%'t match built-in prototype"
 msgstr ""
 
-#: c/c-decl.cc:11153
+#: c/c-decl.cc:11283
 #, gcc-internal-format
 msgid "number of arguments doesn%'t match prototype"
 msgstr ""
 
-#: c/c-decl.cc:11156 c/c-decl.cc:11203 c/c-decl.cc:11217
+#: c/c-decl.cc:11286 c/c-decl.cc:11326 c/c-decl.cc:11340
 #, gcc-internal-format
 msgid "prototype declaration"
 msgstr ""
 
-#: c/c-decl.cc:11195
+#: c/c-decl.cc:11318
 #, gcc-internal-format
 msgid "promoted argument %qD doesn%'t match built-in prototype"
 msgstr ""
 
-#: c/c-decl.cc:11200
+#: c/c-decl.cc:11323
 #, gcc-internal-format
 msgid "promoted argument %qD doesn%'t match prototype"
 msgstr ""
 
-#: c/c-decl.cc:11210
+#: c/c-decl.cc:11333
 #, gcc-internal-format
 msgid "argument %qD doesn%'t match built-in prototype"
 msgstr ""
 
-#: c/c-decl.cc:11215
+#: c/c-decl.cc:11338
 #, gcc-internal-format
 msgid "argument %qD doesn%'t match prototype"
 msgstr ""
 
-#: c/c-decl.cc:11473 cp/decl.cc:19363
+#: c/c-decl.cc:11583 cp/decl.cc:20614
 #, gcc-internal-format
 msgid "no return statement in function returning non-void"
 msgstr ""
 
-#: c/c-decl.cc:11492 cp/decl.cc:19434
+#: c/c-decl.cc:11602 cp/decl.cc:20690
 #, gcc-internal-format
 msgid "parameter %qD set but not used"
 msgstr ""
 
-#: c/c-decl.cc:11589
+#: c/c-decl.cc:11699
 #, gcc-internal-format
 msgid "%<for%> loop initial declarations are only allowed in C99 or C11 mode"
 msgstr ""
 
-#: c/c-decl.cc:11594
+#: c/c-decl.cc:11704
 #, gcc-internal-format
 msgid ""
 "use option %<-std=c99%>, %<-std=gnu99%>, %<-std=c11%> or %<-std=gnu11%> to "
 "compile your code"
 msgstr ""
 
-#: c/c-decl.cc:11601
+#: c/c-decl.cc:11711
 #, gcc-internal-format
 msgid "ISO C90 does not support %<for%> loop initial declarations"
 msgstr ""
 
-#: c/c-decl.cc:11635
+#: c/c-decl.cc:11745
 #, gcc-internal-format
 msgid "declaration of static variable %qD in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.cc:11639
+#: c/c-decl.cc:11749
 #, gcc-internal-format
 msgid ""
 "declaration of %<extern%> variable %qD in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.cc:11646
+#: c/c-decl.cc:11756
 #, gcc-internal-format
 msgid "%<struct %E%> declared in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.cc:11651
+#: c/c-decl.cc:11761
 #, gcc-internal-format
 msgid "%<union %E%> declared in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.cc:11657
+#: c/c-decl.cc:11767
 #, gcc-internal-format
 msgid "%<enum %E%> declared in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.cc:11661
+#: c/c-decl.cc:11771
 #, gcc-internal-format
 msgid "declaration of non-variable %qD in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.cc:11961
+#: c/c-decl.cc:12071
 #, gcc-internal-format
 msgid "incompatible address space qualifiers %qs and %qs"
 msgstr ""
 
-#: c/c-decl.cc:12020 c/c-decl.cc:12027
+#: c/c-decl.cc:12130 c/c-decl.cc:12137
 #, gcc-internal-format
 msgid "duplicate %qE declaration specifier"
 msgstr ""
 
-#: c/c-decl.cc:12055 c/c-decl.cc:13176
+#: c/c-decl.cc:12165 c/c-decl.cc:13271
 #, gcc-internal-format
 msgid "multiple storage classes in declaration specifiers"
 msgstr ""
 
-#: c/c-decl.cc:12057
+#: c/c-decl.cc:12167
 #, gcc-internal-format
 msgid "%qs used with %<auto%>"
 msgstr ""
 
 #. auto may only be used with another storage class specifier,
 #. such as constexpr, if the type is inferred.
-#: c/c-decl.cc:12062
+#: c/c-decl.cc:12172
 #, gcc-internal-format
 msgid "%<auto%> used with %<constexpr%>"
 msgstr ""
 
-#: c/c-decl.cc:12075 c/c-decl.cc:12513 c/c-decl.cc:12971
+#: c/c-decl.cc:12185 c/c-decl.cc:12618 c/c-decl.cc:13065
 #, gcc-internal-format
 msgid "two or more data types in declaration specifiers"
 msgstr ""
 
-#: c/c-decl.cc:12087 cp/parser.cc:35091
+#: c/c-decl.cc:12197 cp/parser.cc:37535
 #, gcc-internal-format
 msgid "%<long long long%> is too long for GCC"
 msgstr ""
 
-#: c/c-decl.cc:12100
+#: c/c-decl.cc:12205 c/c-decl.cc:12217 c/c-decl.cc:12221 c/c-decl.cc:12225
+#: c/c-decl.cc:12233 c/c-decl.cc:12237 c/c-decl.cc:12241 c/c-decl.cc:12245
+#: c/c-decl.cc:12257 c/c-decl.cc:12261 c/c-decl.cc:12265 c/c-decl.cc:12269
+#: c/c-decl.cc:12281 c/c-decl.cc:12285 c/c-decl.cc:12289 c/c-decl.cc:12297
+#: c/c-decl.cc:12301 c/c-decl.cc:12305 c/c-decl.cc:12309 c/c-decl.cc:12313
+#: c/c-decl.cc:12325 c/c-decl.cc:12329 c/c-decl.cc:12333 c/c-decl.cc:12337
+#: c/c-decl.cc:12349 c/c-decl.cc:12353 c/c-decl.cc:12357 c/c-decl.cc:12361
+#: c/c-decl.cc:12365 c/c-decl.cc:12369 c/c-decl.cc:12381 c/c-decl.cc:12385
+#: c/c-decl.cc:12389 c/c-decl.cc:12393 c/c-decl.cc:12405 c/c-decl.cc:12409
+#: c/c-decl.cc:12413 c/c-decl.cc:12417 c/c-decl.cc:12421 c/c-decl.cc:12425
+#: c/c-decl.cc:12437 c/c-decl.cc:12441 c/c-decl.cc:12445 c/c-decl.cc:12449
+#: c/c-decl.cc:12464 c/c-decl.cc:12468 c/c-decl.cc:12472 c/c-decl.cc:12476
+#: c/c-decl.cc:12480 c/c-decl.cc:12484 c/c-decl.cc:12488 c/c-decl.cc:12492
+#: c/c-decl.cc:12496 c/c-decl.cc:12500 c/c-decl.cc:12504 c/c-decl.cc:12522
+#: c/c-decl.cc:12526 c/c-decl.cc:12530 c/c-decl.cc:12534 c/c-decl.cc:12538
+#: c/c-decl.cc:12542 c/c-decl.cc:12546 c/c-decl.cc:12550 c/c-decl.cc:12562
+#: c/c-decl.cc:12566 c/c-decl.cc:12570 c/c-decl.cc:12574 c/c-decl.cc:12578
+#: c/c-decl.cc:12626 c/c-decl.cc:12630 c/c-decl.cc:12634 c/c-decl.cc:12638
+#: c/c-decl.cc:12642 c/c-decl.cc:12646 c/c-decl.cc:12696 c/c-decl.cc:12700
+#: c/c-decl.cc:12704 c/c-decl.cc:12708 c/c-decl.cc:12712 c/c-decl.cc:12716
+#: c/c-decl.cc:12730 c/c-decl.cc:12734 c/c-decl.cc:12738 c/c-decl.cc:12742
+#: c/c-decl.cc:12746 c/c-decl.cc:12750 c/c-decl.cc:12761 c/c-decl.cc:12765
+#: c/c-decl.cc:12769 c/c-decl.cc:12780 c/c-decl.cc:12791 c/c-decl.cc:12795
+#: c/c-decl.cc:12799 c/c-decl.cc:12803 c/c-decl.cc:12807 c/c-decl.cc:12818
+#: c/c-decl.cc:12822 c/c-decl.cc:12826 c/c-decl.cc:12830 c/c-decl.cc:12834
+#: c/c-decl.cc:12925 c/c-decl.cc:12929 c/c-decl.cc:12933 c/c-decl.cc:12937
+#: c/c-decl.cc:12941 c/c-decl.cc:12945 c/c-decl.cc:12949 c/c-decl.cc:12979
+#: c/c-decl.cc:12996 c/c-decl.cc:13000 c/c-decl.cc:13004 c/c-decl.cc:13008
+#, gcc-internal-format
+msgid "both %qs and %qs in declaration specifiers"
+msgstr ""
+
+#: c/c-decl.cc:12210
 #, gcc-internal-format
 msgid "ISO C90 does not support %<long long%>"
 msgstr ""
 
-#: c/c-decl.cc:12353 c/c-parser.cc:12542
+#: c/c-decl.cc:12229 c/c-decl.cc:12293 c/c-decl.cc:12518 c/c-decl.cc:12674
+#, gcc-internal-format
+msgid "both %qs and %<__int%d%> in declaration specifiers"
+msgstr ""
+
+#: c/c-decl.cc:12249 c/c-decl.cc:12317 c/c-decl.cc:12373 c/c-decl.cc:12429
+#: c/c-decl.cc:12554 c/c-decl.cc:12855 c/c-decl.cc:12863 c/c-decl.cc:12871
+#: c/c-decl.cc:12879 c/c-decl.cc:12887
+#, gcc-internal-format
+msgid "both %qs and %<_Float%d%s%> in declaration specifiers"
+msgstr ""
+
+#: c/c-decl.cc:12461 c/c-parser.cc:12885
 #, gcc-internal-format
 msgid "ISO C90 does not support complex types"
 msgstr ""
 
-#: c/c-decl.cc:12407
+#: c/c-decl.cc:12515
 #, gcc-internal-format
 msgid "ISO C does not support saturating types"
 msgstr ""
 
-#: c/c-decl.cc:12486 c/c-decl.cc:13111 c/c-decl.cc:13170
+#: c/c-decl.cc:12591 c/c-decl.cc:13206 c/c-decl.cc:13265
 #, gcc-internal-format
 msgid "duplicate %qE"
 msgstr ""
 
-#: c/c-decl.cc:12503
+#: c/c-decl.cc:12608
 #, gcc-internal-format
 msgid "%qs cannot be defined via %<typedef%>"
 msgstr ""
 
-#: c/c-decl.cc:12507
+#: c/c-decl.cc:12612
 #, gcc-internal-format
 msgid "%qs cannot be used here"
 msgstr ""
 
-#: c/c-decl.cc:12560
+#: c/c-decl.cc:12665
 #, gcc-internal-format
 msgid "ISO C does not support %<__int%d%> types"
 msgstr ""
 
-#: c/c-decl.cc:12582
+#: c/c-decl.cc:12670 c/c-decl.cc:12678
+#, gcc-internal-format
+msgid "both %<__int%d%> and %qs in declaration specifiers"
+msgstr ""
+
+#: c/c-decl.cc:12684
 #, gcc-internal-format
 msgid "%<__int%d%> is not supported on this target"
 msgstr ""
 
-#: c/c-decl.cc:12625
+#: c/c-decl.cc:12727
 #, gcc-internal-format
 msgid "ISO C90 does not support boolean types"
 msgstr ""
 
-#: c/c-decl.cc:12744
+#: c/c-decl.cc:12846
 #, gcc-internal-format
 msgid "ISO C does not support the %<_Float%d%s%> type before C23"
 msgstr ""
 
-#: c/c-decl.cc:12795 cp/parser.cc:20889
+#: c/c-decl.cc:12897 cp/parser.cc:22578
 #, gcc-internal-format
 msgid "%<_Float%d%s%> is not supported on this target"
 msgstr ""
 
-#: c/c-decl.cc:12871
+#: c/c-decl.cc:12966
 #, gcc-internal-format
 msgid "ISO C does not support decimal floating-point before C23"
 msgstr ""
 
-#: c/c-decl.cc:12895 c/c-decl.cc:13272 c/c-parser.cc:11443
+#: c/c-decl.cc:12989 c/c-decl.cc:13367 c/c-parser.cc:11798
 #, gcc-internal-format
 msgid "fixed-point types not supported for this target"
 msgstr ""
 
-#: c/c-decl.cc:12897
+#: c/c-decl.cc:12991
 #, gcc-internal-format
 msgid "ISO C does not support fixed-point types"
 msgstr ""
 
-#: c/c-decl.cc:12926
+#: c/c-decl.cc:13020
 #, gcc-internal-format
 msgid "%<_BitInt%> argument is not an integer constant expression"
 msgstr ""
 
-#: c/c-decl.cc:12932
+#: c/c-decl.cc:13026
 #, gcc-internal-format
 msgid "%<_BitInt%> argument %qE is not a positive integer constant expression"
 msgstr ""
 
-#: c/c-decl.cc:12939
+#: c/c-decl.cc:13033
 #, gcc-internal-format
 msgid "%<_BitInt%> argument %qE is larger than %<BITINT_MAXWIDTH%> %qd"
 msgstr ""
 
-#: c/c-decl.cc:12987
+#: c/c-decl.cc:13082
 #, gcc-internal-format
 msgid "C++ lookup of %qD would return a field, not a type"
 msgstr ""
 
-#: c/c-decl.cc:13000
+#: c/c-decl.cc:13095
 #, gcc-internal-format
 msgid "%qE fails to be a typedef or built in type"
 msgstr ""
 
-#: c/c-decl.cc:13055
+#: c/c-decl.cc:13150
 #, gcc-internal-format
 msgid "%qE is not at beginning of declaration"
 msgstr ""
 
 #. auto may only be used with another storage class specifier,
 #. such as constexpr, if the type is inferred.
-#: c/c-decl.cc:13076 c/c-decl.cc:13153
+#: c/c-decl.cc:13171 c/c-decl.cc:13248
 #, gcc-internal-format
 msgid "%qE used with %<auto%>"
 msgstr ""
 
-#: c/c-decl.cc:13078
+#: c/c-decl.cc:13173
 #, gcc-internal-format
 msgid "%qE used with %<register%>"
 msgstr ""
 
-#: c/c-decl.cc:13080 c/c-decl.cc:13149
+#: c/c-decl.cc:13175 c/c-decl.cc:13244
 #, gcc-internal-format
 msgid "%qE used with %<typedef%>"
 msgstr ""
 
-#: c/c-decl.cc:13082 c/c-decl.cc:13119
+#: c/c-decl.cc:13177 c/c-decl.cc:13214
 #, gcc-internal-format
 msgid "%qE used with %<constexpr%>"
 msgstr ""
 
-#: c/c-decl.cc:13096 c/c-parser.cc:3320 c/c-parser.cc:4691 c/c-parser.cc:10707
+#: c/c-decl.cc:13191 c/c-parser.cc:3504 c/c-parser.cc:4875 c/c-parser.cc:10959
 #, gcc-internal-format
 msgid "ISO C99 does not support %qE"
 msgstr ""
 
-#: c/c-decl.cc:13099 c/c-parser.cc:3323 c/c-parser.cc:4694 c/c-parser.cc:10710
+#: c/c-decl.cc:13194 c/c-parser.cc:3507 c/c-parser.cc:4878 c/c-parser.cc:10962
 #, gcc-internal-format
 msgid "ISO C90 does not support %qE"
 msgstr ""
 
-#: c/c-decl.cc:13125
+#: c/c-decl.cc:13220
 #, gcc-internal-format
 msgid "%<__thread%> before %<extern%>"
 msgstr ""
 
-#: c/c-decl.cc:13134
+#: c/c-decl.cc:13229
 #, gcc-internal-format
 msgid "%<__thread%> before %<static%>"
 msgstr ""
 
-#: c/c-decl.cc:13140
+#: c/c-decl.cc:13235
 #, gcc-internal-format
 msgid "%<typedef%> used with %<auto%>"
 msgstr ""
 
-#: c/c-decl.cc:13147
+#: c/c-decl.cc:13242
 #, gcc-internal-format
 msgid "%qE used with %<extern%>"
 msgstr ""
 
-#: c/c-decl.cc:13155
+#: c/c-decl.cc:13250
 #, gcc-internal-format
 msgid "%qE used with %qs"
 msgstr ""
 
-#: c/c-decl.cc:13168
+#: c/c-decl.cc:13263
 #, gcc-internal-format
 msgid "duplicate %<_Thread_local%> or %<__thread%>"
 msgstr ""
 
-#: c/c-decl.cc:13184
+#: c/c-decl.cc:13279
 #, gcc-internal-format
 msgid "%qs used with %qE"
 msgstr ""
 
-#: c/c-decl.cc:13192
+#: c/c-decl.cc:13287
 #, gcc-internal-format
 msgid "%<constexpr%> used with %qE"
 msgstr ""
 
-#: c/c-decl.cc:13269
+#: c/c-decl.cc:13364
 #, gcc-internal-format
 msgid "%<_Sat%> is used without %<_Fract%> or %<_Accum%>"
 msgstr ""
 
-#: c/c-decl.cc:13284
+#: c/c-decl.cc:13379
 #, gcc-internal-format
 msgid "ISO C does not support plain %<complex%> meaning %<double complex%>"
 msgstr ""
 
-#: c/c-decl.cc:13295
+#: c/c-decl.cc:13390
 #, gcc-internal-format
 msgid "ISO C does not support %<auto%> type deduction before C23"
 msgstr ""
 
-#: c/c-decl.cc:13324
+#: c/c-decl.cc:13419
 #, gcc-internal-format
 msgid "%<__auto_type%> followed by %<[[]]%> attributes"
 msgstr ""
 
-#: c/c-decl.cc:13350 c/c-decl.cc:13366 c/c-decl.cc:13392
+#: c/c-decl.cc:13445 c/c-decl.cc:13461 c/c-decl.cc:13487
 #, gcc-internal-format
 msgid "ISO C does not support complex integer types"
 msgstr ""
 
-#: c/c-decl.cc:13538
+#: c/c-decl.cc:13633
 #, gcc-internal-format
 msgid "%<signed _BitInt%> argument must be at least 2"
 msgstr ""
 
-#: c/c-decl.cc:13547
+#: c/c-decl.cc:13642
 #, gcc-internal-format
 msgid "ISO C does not support %<%s_BitInt(%d)%> before C23"
 msgstr ""
 
-#: c/c-decl.cc:13847 cp/semantics.cc:6798
+#: c/c-decl.cc:13943 cp/semantics.cc:6995
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare reduction%> combiner refers to variable %qD which is "
 "not %<omp_out%> nor %<omp_in%>"
 msgstr ""
 
-#: c/c-decl.cc:13851 cp/semantics.cc:6802
+#: c/c-decl.cc:13947 cp/semantics.cc:6999
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare reduction%> initializer refers to variable %qD which "
 "is not %<omp_priv%> nor %<omp_orig%>"
 msgstr ""
 
-#: c/c-decl.cc:13975
+#: c/c-decl.cc:14240
 #, gcc-internal-format
 msgid ""
 "ISO C does not support %qs statement with an identifier operand before C2Y"
 msgstr ""
 
-#: c/c-decl.cc:14027
+#: c/c-decl.cc:14292
 #, gcc-internal-format
 msgid ""
 "%<break%> statement operand %qE does not refer to a named loop or "
 "%<switch%>; did you mean %qs?"
 msgstr ""
 
-#: c/c-decl.cc:14031
+#: c/c-decl.cc:14296
 #, gcc-internal-format
 msgid ""
 "%<continue%> statement operand %qE does not refer to a named loop; did you "
 "mean %qs?"
 msgstr ""
 
-#: c/c-decl.cc:14036
+#: c/c-decl.cc:14301
 #, gcc-internal-format
 msgid ""
 "%<break%> statement operand %qE does not refer to a named loop or %<switch%>"
 msgstr ""
 
-#: c/c-decl.cc:14039
+#: c/c-decl.cc:14304
 #, gcc-internal-format
 msgid "%<continue%> statement operand %qE does not refer to a named loop"
 msgstr ""
 
-#: c/c-decl.cc:14045
+#: c/c-decl.cc:14310
 #, gcc-internal-format
 msgid "%<continue%> statement operand %qE refers to a named %<switch%>"
 msgstr ""
 
-#: c/c-decl.cc:14047 c/c-decl.cc:14064
+#: c/c-decl.cc:14312 c/c-decl.cc:14329
 #, gcc-internal-format
 msgid "%<switch%> name defined here"
 msgstr ""
 
-#: c/c-decl.cc:14055
+#: c/c-decl.cc:14320
 #, gcc-internal-format
 msgid "%qs statement operand %qE refers to a loop outside of its body"
 msgstr ""
 
-#: c/c-decl.cc:14057
+#: c/c-decl.cc:14322
 #, gcc-internal-format
 msgid "loop name defined here"
 msgstr ""
 
-#: c/c-decl.cc:14061
+#: c/c-decl.cc:14326
 #, gcc-internal-format
 msgid ""
 "%<break%> statement operand %qE refers to a %<switch%> outside of its body"
 msgstr ""
 
-#: c/c-errors.cc:251
+#: c/c-errors.cc:260
 #, gcc-internal-format
 msgid "%qs is a keyword with %qs onwards"
 msgstr ""
 
-#: c/c-fold.cc:392 c/c-typeck.cc:14134 cp/typeck.cc:5803
+#: c/c-fold.cc:410 c/c-typeck.cc:14680 cp/typeck.cc:6053
 #, gcc-internal-format
 msgid "left shift of negative value"
 msgstr ""
 
-#: c/c-fold.cc:405 c/c-typeck.cc:14143 cp/typeck.cc:5811
+#: c/c-fold.cc:423 c/c-typeck.cc:14689 cp/typeck.cc:6061
 #, gcc-internal-format
 msgid "left shift count is negative"
 msgstr ""
 
-#: c/c-fold.cc:406 c/c-typeck.cc:14070 cp/typeck.cc:5750
+#: c/c-fold.cc:424 c/c-typeck.cc:14616 cp/typeck.cc:6000
 #, gcc-internal-format
 msgid "right shift count is negative"
 msgstr ""
 
-#: c/c-fold.cc:416 c/c-typeck.cc:14162 cp/typeck.cc:5819
+#: c/c-fold.cc:434 c/c-typeck.cc:14708 cp/typeck.cc:6069
 #, gcc-internal-format
 msgid "left shift count >= width of type"
 msgstr ""
 
-#: c/c-fold.cc:417 c/c-typeck.cc:14094 cp/typeck.cc:5761
+#: c/c-fold.cc:435 c/c-typeck.cc:14640 cp/typeck.cc:6011
 #, gcc-internal-format
 msgid "right shift count >= width of type"
 msgstr ""
 
-#: c/c-fold.cc:424 c/c-typeck.cc:14154
+#: c/c-fold.cc:442 c/c-typeck.cc:14700
 #, gcc-internal-format
 msgid "left shift count >= width of vector element"
 msgstr ""
 
-#: c/c-fold.cc:425 c/c-typeck.cc:14081
+#: c/c-fold.cc:443 c/c-typeck.cc:14627
 #, gcc-internal-format
 msgid "right shift count >= width of vector element"
 msgstr ""
 
-#: c/c-parser.cc:371
+#: c/c-parser.cc:384
 #, gcc-internal-format
 msgid "identifier %qE conflicts with C++ keyword"
 msgstr ""
 
-#: c/c-parser.cc:1056 cp/parser.cc:3374
+#: c/c-parser.cc:1087 cp/parser.cc:3449
 #, gcc-internal-format
 msgid "version control conflict marker in file"
 msgstr ""
 
-#: c/c-parser.cc:1277 cp/parser.cc:3456
+#: c/c-parser.cc:1310 cp/parser.cc:3533
 #, gcc-internal-format
 msgid "to match this %qs"
 msgstr ""
 
-#: c/c-parser.cc:1431 cp/parser.cc:35328
+#: c/c-parser.cc:1509 cp/parser.cc:37772
 #, gcc-internal-format
 msgid "expected end of line"
 msgstr ""
 
-#: c/c-parser.cc:1950
+#: c/c-parser.cc:2080
 #, gcc-internal-format
 msgid "ISO C forbids an empty translation unit"
 msgstr ""
 
-#: c/c-parser.cc:1976 c/c-parser.cc:1985 c/c-parser.cc:27770 cp/parser.cc:51250
-#: cp/semantics.cc:4011 cp/semantics.cc:4020
+#: c/c-parser.cc:2106 c/c-parser.cc:2115 c/c-parser.cc:29063 cp/parser.cc:54562
+#: cp/semantics.cc:4059 cp/semantics.cc:4075
 #, gcc-internal-format
 msgid "%qs without corresponding %qs"
 msgstr ""
 
-#: c/c-parser.cc:2081 c/c-parser.cc:14533
+#: c/c-parser.cc:2122 cp/semantics.cc:4068
+#, gcc-internal-format
+msgid ""
+"%<omp begin declare variant%> without corresponding %<omp end declare "
+"variant%>"
+msgstr ""
+
+#: c/c-parser.cc:2226 c/c-parser.cc:14906
 #, gcc-internal-format
 msgid "ISO C does not allow extra %<;%> outside of a function"
 msgstr ""
 
-#: c/c-parser.cc:2165
+#: c/c-parser.cc:2310
 #, gcc-internal-format
 msgid "%<assume%> attribute at top level"
 msgstr ""
 
-#: c/c-parser.cc:2364
+#: c/c-parser.cc:2509
 #, gcc-internal-format
 msgid "unknown type name %qE; use %<struct%> keyword to refer to the type"
 msgstr ""
 
-#: c/c-parser.cc:2372
+#: c/c-parser.cc:2517
 #, gcc-internal-format
 msgid "unknown type name %qE; use %<union%> keyword to refer to the type"
 msgstr ""
 
-#: c/c-parser.cc:2380
+#: c/c-parser.cc:2525
 #, gcc-internal-format
 msgid "unknown type name %qE; use %<enum%> keyword to refer to the type"
 msgstr ""
 
-#: c/c-parser.cc:2393 c/c-parser.cc:3588 c/c-parser.cc:5295
+#: c/c-parser.cc:2538 c/c-parser.cc:3772 c/c-parser.cc:5479
 #, gcc-internal-format
 msgid "unknown type name %qE; did you mean %qs?"
 msgstr ""
 
-#: c/c-parser.cc:2397 c/c-parser.cc:3592 c/c-parser.cc:5299
+#: c/c-parser.cc:2542 c/c-parser.cc:3776 c/c-parser.cc:5483
 #, gcc-internal-format
 msgid "unknown type name %qE"
 msgstr ""
 
-#: c/c-parser.cc:2424 c/c-parser.cc:15911 c/c-parser.cc:24927
-#: c/c-parser.cc:25670 c/c-parser.cc:26256 cp/parser.cc:48093
-#: cp/parser.cc:53871
+#: c/c-parser.cc:2569 c/c-parser.cc:16292 c/c-parser.cc:25960
+#: c/c-parser.cc:26704 c/c-parser.cc:27293 cp/parser.cc:51256
+#: cp/parser.cc:57388
 #, gcc-internal-format
 msgid "expected declaration specifiers"
 msgstr ""
 
-#: c/c-parser.cc:2448
+#: c/c-parser.cc:2598
 #, gcc-internal-format
 msgid "%qT declared in underspecified object declaration"
 msgstr ""
 
-#: c/c-parser.cc:2453
+#: c/c-parser.cc:2603
 #, gcc-internal-format
 msgid "%qT defined in underspecified object declaration"
 msgstr ""
 
-#: c/c-parser.cc:2489
+#: c/c-parser.cc:2639
 #, gcc-internal-format
 msgid "%qs in empty declaration"
 msgstr ""
 
-#: c/c-parser.cc:2503
+#: c/c-parser.cc:2653
 #, gcc-internal-format
 msgid "%<fallthrough%> attribute at top level"
 msgstr ""
 
-#: c/c-parser.cc:2541 c/c-parser.cc:8296
+#: c/c-parser.cc:2691 c/c-parser.cc:8488
 #, gcc-internal-format
 msgid ""
 "attribute %<musttail%> mixed with other attributes on %<return%> statement"
 msgstr ""
 
-#: c/c-parser.cc:2557 c/c-parser.cc:4483
+#: c/c-parser.cc:2707 c/c-parser.cc:4667
 #, gcc-internal-format
 msgid "expected %<;%>, identifier or %<(%>"
 msgstr ""
 
-#: c/c-parser.cc:2575 cp/parser.cc:37586 cp/parser.cc:37658
+#: c/c-parser.cc:2725 cp/parser.cc:40039 cp/parser.cc:40111
 #, gcc-internal-format
 msgid "prefix attributes are ignored for methods"
 msgstr ""
 
-#: c/c-parser.cc:2610
+#: c/c-parser.cc:2760
 #, gcc-internal-format
 msgid "prefix attributes are ignored for implementations"
 msgstr ""
 
-#: c/c-parser.cc:2631
+#: c/c-parser.cc:2781
 #, gcc-internal-format
 msgid "unexpected attribute"
 msgstr ""
 
-#: c/c-parser.cc:2641 c/c-parser.cc:8316 cp/parser.cc:13359 cp/parser.cc:13620
+#: c/c-parser.cc:2791 c/c-parser.cc:8508 cp/parser.cc:14523 cp/parser.cc:14780
 #, gcc-internal-format
 msgid "%<fallthrough%> attribute not followed by %<;%>"
 msgstr ""
 
-#: c/c-parser.cc:2644 c/c-parser.cc:8283 cp/cp-gimplify.cc:3684
+#: c/c-parser.cc:2794 c/c-parser.cc:8475 cp/cp-gimplify.cc:4095
 #, gcc-internal-format
 msgid "%<assume%> attribute not followed by %<;%>"
 msgstr ""
 
-#: c/c-parser.cc:2694
+#: c/c-parser.cc:2844
 #, gcc-internal-format
 msgid "%<__auto_type%> requires a plain identifier as declarator"
 msgstr ""
 
-#: c/c-parser.cc:2707
+#: c/c-parser.cc:2857
 #, gcc-internal-format
 msgid ""
 "%<auto%> requires a plain identifier, possibly with attributes, as declarator"
 msgstr ""
 
-#: c/c-parser.cc:2733
+#: c/c-parser.cc:2883
 #, gcc-internal-format
 msgid "data definition has no type or storage class"
 msgstr ""
@@ -50597,33 +52530,33 @@ msgstr ""
 #. This means there is an attribute specifier after
 #. the declarator in a function definition.  Provide
 #. some more information for the user.
-#: c/c-parser.cc:2748
+#: c/c-parser.cc:2898
 #, gcc-internal-format
 msgid ""
 "attributes should be specified before the declarator in a function definition"
 msgstr ""
 
-#: c/c-parser.cc:2787
+#: c/c-parser.cc:2937
 #, gcc-internal-format
 msgid "%<__auto_type%> used with a bit-field initializer"
 msgstr ""
 
-#: c/c-parser.cc:2899 c/c-parser.cc:3044
+#: c/c-parser.cc:3049 c/c-parser.cc:3194
 #, gcc-internal-format
 msgid "%qs requires an initialized data declaration"
 msgstr ""
 
-#: c/c-parser.cc:2999
+#: c/c-parser.cc:3149
 #, gcc-internal-format
 msgid "%qs may only be used with a single declarator"
 msgstr ""
 
-#: c/c-parser.cc:3031 cp/parser.cc:16635
+#: c/c-parser.cc:3181 cp/parser.cc:18172
 #, gcc-internal-format
 msgid "expected %<,%> or %<;%>"
 msgstr ""
 
-#: c/c-parser.cc:3036
+#: c/c-parser.cc:3186
 #, gcc-internal-format
 msgid "declaration in condition can only declare a single object"
 msgstr ""
@@ -50631,382 +52564,392 @@ msgstr ""
 #. This can appear in many cases looking nothing like a
 #. function definition, so we don't give a more specific
 #. error suggesting there was one.
-#: c/c-parser.cc:3055 c/c-parser.cc:3097
+#: c/c-parser.cc:3205 c/c-parser.cc:3262
 #, gcc-internal-format
 msgid "expected %<=%>, %<,%>, %<;%>, %<asm%> or %<__attribute__%>"
 msgstr ""
 
-#: c/c-parser.cc:3064
+#: c/c-parser.cc:3214
 #, gcc-internal-format
 msgid "ISO C forbids nested functions"
 msgstr ""
 
-#: c/c-parser.cc:3346 c/c-parser.cc:9636 c/c-parser.cc:15984
-#: c/c-parser.cc:20710 cp/parser.cc:42983
+#: c/c-parser.cc:3366
+#, gcc-internal-format
+msgid "%<__RTL%> function cannot be a nested function"
+msgstr ""
+
+#: c/c-parser.cc:3368
+#, gcc-internal-format
+msgid "%<__GIMPLE%> function cannot be a nested function"
+msgstr ""
+
+#: c/c-parser.cc:3530 c/c-parser.cc:9828 c/c-parser.cc:16365
+#: c/c-parser.cc:21723 cp/parser.cc:46080
 #, gcc-internal-format
 msgid "expected string literal"
 msgstr ""
 
-#: c/c-parser.cc:3355
+#: c/c-parser.cc:3539
 #, gcc-internal-format
 msgid "ISO C11 does not support omitting the string in %qE"
 msgstr ""
 
-#: c/c-parser.cc:3361
+#: c/c-parser.cc:3545
 #, gcc-internal-format
 msgid "expression in static assertion is not an integer"
 msgstr ""
 
-#: c/c-parser.cc:3370
+#: c/c-parser.cc:3554
 #, gcc-internal-format
 msgid "expression in static assertion is not an integer constant expression"
 msgstr ""
 
-#: c/c-parser.cc:3375
+#: c/c-parser.cc:3559
 #, gcc-internal-format
 msgid "expression in static assertion is not constant"
 msgstr ""
 
-#: c/c-parser.cc:3382
+#: c/c-parser.cc:3566
 #, gcc-internal-format
 msgid "static assertion failed: %E"
 msgstr ""
 
-#: c/c-parser.cc:3384 cp/semantics.cc:12483
+#: c/c-parser.cc:3568 cp/semantics.cc:13127
 #, gcc-internal-format
 msgid "static assertion failed"
 msgstr ""
 
-#: c/c-parser.cc:3764
+#: c/c-parser.cc:3948
 #, gcc-internal-format
 msgid "%<_Atomic%> in Objective-C"
 msgstr ""
 
-#: c/c-parser.cc:3767
+#: c/c-parser.cc:3951
 #, gcc-internal-format
 msgid "ISO C99 does not support the %<_Atomic%> qualifier"
 msgstr ""
 
-#: c/c-parser.cc:3770
+#: c/c-parser.cc:3954
 #, gcc-internal-format
 msgid "ISO C90 does not support the %<_Atomic%> qualifier"
 msgstr ""
 
-#: c/c-parser.cc:3798
+#: c/c-parser.cc:3982
 #, gcc-internal-format
 msgid "%<_Atomic%> applied to a qualified type"
 msgstr ""
 
-#: c/c-parser.cc:3828
+#: c/c-parser.cc:4012
 #, gcc-internal-format
 msgid "%<__GIMPLE%> only valid with %<-fgimple%>"
 msgstr ""
 
-#: c/c-parser.cc:3865
+#: c/c-parser.cc:4049
 #, gcc-internal-format
 msgid "empty enum is invalid"
 msgstr ""
 
-#: c/c-parser.cc:3876
+#: c/c-parser.cc:4060
 #, gcc-internal-format
 msgid "cannot use keyword %qs as enumeration constant"
 msgstr ""
 
 #. Otherwise, a more generic error message.
-#: c/c-parser.cc:3888 c/c-parser.cc:5120 c/c-parser.cc:5978 c/c-parser.cc:5995
-#: c/c-parser.cc:6580 c/c-parser.cc:7489 c/c-parser.cc:9503 c/c-parser.cc:9586
-#: c/c-parser.cc:10566 c/c-parser.cc:10881 c/c-parser.cc:10890
-#: c/c-parser.cc:11503 c/c-parser.cc:11791 c/c-parser.cc:11822
-#: c/c-parser.cc:13189 c/c-parser.cc:13763 c/c-parser.cc:13801
-#: c/c-parser.cc:14115 c/c-parser.cc:14166 c/c-parser.cc:14326
-#: c/c-parser.cc:14356 c/c-parser.cc:14364 c/c-parser.cc:14393
-#: c/c-parser.cc:14406 c/c-parser.cc:14712 c/c-parser.cc:14836
-#: c/c-parser.cc:15421 c/c-parser.cc:15474 c/c-parser.cc:15490
-#: c/c-parser.cc:15536 c/c-parser.cc:16557 c/c-parser.cc:16602
-#: c/c-parser.cc:19478 c/c-parser.cc:19615 c/c-parser.cc:20481
-#: c/c-parser.cc:23540 c/c-parser.cc:26738 c/c-parser.cc:26924
-#: c/gimple-parser.cc:1981 c/gimple-parser.cc:2028 cp/parser.cc:9871
-#: cp/parser.cc:35331 cp/parser.cc:38563 cp/parser.cc:41808 cp/parser.cc:42000
-#: cp/parser.cc:49790 cp/parser.cc:53098
+#: c/c-parser.cc:4072 c/c-parser.cc:5304 c/c-parser.cc:6164 c/c-parser.cc:6181
+#: c/c-parser.cc:6772 c/c-parser.cc:7681 c/c-parser.cc:9695 c/c-parser.cc:9778
+#: c/c-parser.cc:10781 c/c-parser.cc:11194 c/c-parser.cc:11203
+#: c/c-parser.cc:11858 c/c-parser.cc:12137 c/c-parser.cc:12165
+#: c/c-parser.cc:13541 c/c-parser.cc:14116 c/c-parser.cc:14154
+#: c/c-parser.cc:14488 c/c-parser.cc:14539 c/c-parser.cc:14699
+#: c/c-parser.cc:14729 c/c-parser.cc:14737 c/c-parser.cc:14766
+#: c/c-parser.cc:14779 c/c-parser.cc:15085 c/c-parser.cc:15209
+#: c/c-parser.cc:15794 c/c-parser.cc:15847 c/c-parser.cc:15863
+#: c/c-parser.cc:15909 c/c-parser.cc:16942 c/c-parser.cc:16987
+#: c/c-parser.cc:20142 c/c-parser.cc:20279 c/c-parser.cc:21494
+#: c/c-parser.cc:24567 c/c-parser.cc:27779 c/c-parser.cc:27979
+#: c/c-parser.cc:29182 c/gimple-parser.cc:1971 c/gimple-parser.cc:2018
+#: cp/parser.cc:10762 cp/parser.cc:37775 cp/parser.cc:41016 cp/parser.cc:44545
+#: cp/parser.cc:44737 cp/parser.cc:52959 cp/parser.cc:56607
 #, gcc-internal-format
 msgid "expected identifier"
 msgstr ""
 
-#: c/c-parser.cc:3961
+#: c/c-parser.cc:4145
 #, gcc-internal-format
 msgid "ISO C does not support specifying %<enum%> underlying types before C23"
 msgstr ""
 
-#: c/c-parser.cc:3970
+#: c/c-parser.cc:4154
 #, gcc-internal-format
 msgid "%<enum%> declared both with and without fixed underlying type"
 msgstr ""
 
-#: c/c-parser.cc:3993
+#: c/c-parser.cc:4177
 #, gcc-internal-format
 msgid "no %<enum%> underlying type specified"
 msgstr ""
 
-#: c/c-parser.cc:3997
+#: c/c-parser.cc:4181
 #, gcc-internal-format
 msgid "invalid %<enum%> underlying type"
 msgstr ""
 
-#: c/c-parser.cc:4027
+#: c/c-parser.cc:4211
 #, gcc-internal-format
 msgid "%<enum%> underlying type incompatible with previous declaration"
 msgstr ""
 
-#: c/c-parser.cc:4103 cp/parser.cc:22433
+#: c/c-parser.cc:4287 cp/parser.cc:24140
 #, gcc-internal-format
 msgid "comma at end of enumerator list"
 msgstr ""
 
-#: c/c-parser.cc:4109 c/c-parser.cc:20758 cp/parser.cc:43046
+#: c/c-parser.cc:4293 c/c-parser.cc:21771 cp/parser.cc:46143
 #: go/gofrontend/embed.cc:424
 #, gcc-internal-format
 msgid "expected %<,%> or %<}%>"
 msgstr ""
 
-#: c/c-parser.cc:4152
+#: c/c-parser.cc:4336
 #, gcc-internal-format
 msgid "ISO C forbids forward references to %<enum%> types"
 msgstr ""
 
-#: c/c-parser.cc:4277
+#: c/c-parser.cc:4461
 #, gcc-internal-format
 msgid "expected class name"
 msgstr ""
 
-#: c/c-parser.cc:4299
+#: c/c-parser.cc:4483
 #, gcc-internal-format
 msgid "extra semicolon in struct or union specified"
 msgstr ""
 
-#: c/c-parser.cc:4328
+#: c/c-parser.cc:4512
 #, gcc-internal-format
 msgid "no semicolon at end of struct or union"
 msgstr ""
 
-#: c/c-parser.cc:4445 c/c-parser.cc:6320
+#: c/c-parser.cc:4629 c/c-parser.cc:6506
 #, gcc-internal-format
 msgid "expected specifier-qualifier-list"
 msgstr ""
 
-#: c/c-parser.cc:4456
+#: c/c-parser.cc:4640
 #, gcc-internal-format
 msgid "ISO C forbids member declarations with no members"
 msgstr ""
 
-#: c/c-parser.cc:4550
+#: c/c-parser.cc:4734
 #, gcc-internal-format
 msgid "expected %<,%>, %<;%> or %<}%>"
 msgstr ""
 
-#: c/c-parser.cc:4557
+#: c/c-parser.cc:4741
 #, gcc-internal-format
 msgid "expected %<:%>, %<,%>, %<;%>, %<}%> or %<__attribute__%>"
 msgstr ""
 
-#: c/c-parser.cc:4629
+#: c/c-parser.cc:4813
 #, gcc-internal-format
 msgid "%<typeof%> applied to a bit-field"
 msgstr ""
 
-#: c/c-parser.cc:4951
+#: c/c-parser.cc:5135
 #, gcc-internal-format
 msgid "expected identifier or %<(%>"
 msgstr ""
 
-#: c/c-parser.cc:5013
+#: c/c-parser.cc:5197
 #, gcc-internal-format
 msgid ""
 "%<static%> may not be used with an unspecified variable length array size"
 msgstr ""
 
-#: c/c-parser.cc:5021
+#: c/c-parser.cc:5205
 #, gcc-internal-format
 msgid "%<static%> may not be used without an array size"
 msgstr ""
 
-#: c/c-parser.cc:5181
+#: c/c-parser.cc:5365
 #, gcc-internal-format
 msgid "ISO C requires a named argument before %<...%> before C23"
 msgstr ""
 
-#: c/c-parser.cc:5306
+#: c/c-parser.cc:5490
 #, gcc-internal-format
 msgid "expected declaration specifiers or %<...%>"
 msgstr ""
 
-#: c/c-parser.cc:5536
+#: c/c-parser.cc:5725
 #, gcc-internal-format
 msgid "parentheses must be omitted if attribute argument list is empty"
 msgstr ""
 
-#: c/c-parser.cc:5824 cp/parser.cc:30738
+#: c/c-parser.cc:6010 cp/parser.cc:33012
 #, gcc-internal-format
 msgid "expected OpenMP directive name"
 msgstr ""
 
-#: c/c-parser.cc:5871 cp/parser.cc:30794
+#: c/c-parser.cc:6057 cp/parser.cc:33068
 #, gcc-internal-format
 msgid "expected %<directive%> or %<sequence%>"
 msgstr ""
 
-#: c/c-parser.cc:6016 cp/parser.cc:30962
+#: c/c-parser.cc:6202 cp/parser.cc:33236
 #, gcc-internal-format
 msgid "%<omp::%E%> attribute requires argument"
 msgstr ""
 
-#: c/c-parser.cc:6032 cp/parser.cc:30978
+#: c/c-parser.cc:6218 cp/parser.cc:33252
 #, gcc-internal-format
 msgid "%qE attribute does not take any arguments"
 msgstr ""
 
-#: c/c-parser.cc:6153
+#: c/c-parser.cc:6339
 #, gcc-internal-format
 msgid "ISO C does not support %<[[]]%> attributes before C23"
 msgstr ""
 
-#: c/c-parser.cc:6397 c/c-parser.cc:6463 c/c-typeck.cc:9642
+#: c/c-parser.cc:6589 c/c-parser.cc:6655 c/c-typeck.cc:10154
 #, gcc-internal-format
 msgid ""
 "variable-sized object may not be initialized except with an empty initializer"
 msgstr ""
 
-#: c/c-parser.cc:6455
+#: c/c-parser.cc:6647
 #, gcc-internal-format
 msgid "ISO C forbids empty initializer braces before C23"
 msgstr ""
 
-#: c/c-parser.cc:6544
+#: c/c-parser.cc:6736
 #, gcc-internal-format
 msgid "obsolete use of designated initializer with %<:%>"
 msgstr ""
 
-#: c/c-parser.cc:6700
+#: c/c-parser.cc:6892
 #, gcc-internal-format
 msgid "ISO C forbids specifying range of elements to initialize"
 msgstr ""
 
-#: c/c-parser.cc:6712
+#: c/c-parser.cc:6904
 #, gcc-internal-format
 msgid "ISO C90 forbids specifying subobject to initialize"
 msgstr ""
 
-#: c/c-parser.cc:6720
+#: c/c-parser.cc:6912
 #, gcc-internal-format
 msgid "obsolete use of designated initializer without %<=%>"
 msgstr ""
 
-#: c/c-parser.cc:7007 cp/parser.cc:13742
+#: c/c-parser.cc:7199 cp/parser.cc:14902
 #, gcc-internal-format
 msgid "inner loops must be perfectly nested in %<#pragma acc loop%>"
 msgstr ""
 
-#: c/c-parser.cc:7014 cp/parser.cc:13749
+#: c/c-parser.cc:7206 cp/parser.cc:14909
 #, gcc-internal-format
 msgid "inner loops must be perfectly nested with %<ordered%> clause"
 msgstr ""
 
-#: c/c-parser.cc:7021 cp/parser.cc:13756
+#: c/c-parser.cc:7213 cp/parser.cc:14916
 #, gcc-internal-format
 msgid ""
 "inner loops must be perfectly nested with %<reduction%> %<inscan%> clause"
 msgstr ""
 
-#: c/c-parser.cc:7028
+#: c/c-parser.cc:7220
 #, gcc-internal-format
 msgid "inner loops must be perfectly nested in %<pragma omp tile%>"
 msgstr ""
 
-#: c/c-parser.cc:7084 c/c-parser.cc:7239 cp/parser.cc:12633 cp/parser.cc:12783
-#: cp/parser.cc:50777
+#: c/c-parser.cc:7276 c/c-parser.cc:7431 cp/parser.cc:13806 cp/parser.cc:13956
+#: cp/parser.cc:53985
 #, gcc-internal-format
 msgid ""
 "mixing OpenMP directives with attribute and pragma syntax on the same "
 "statement"
 msgstr ""
 
-#: c/c-parser.cc:7092 cp/parser.cc:12641
+#: c/c-parser.cc:7284 cp/parser.cc:13814
 #, gcc-internal-format
 msgid "OpenMP %<omp::decl%> attribute on a statement"
 msgstr ""
 
-#: c/c-parser.cc:7116 c/c-parser.cc:7337 c/c-parser.cc:27447 cp/parser.cc:12665
-#: cp/parser.cc:50757 cp/parser.cc:50896
+#: c/c-parser.cc:7308 c/c-parser.cc:7529 c/c-parser.cc:28635 cp/parser.cc:13838
+#: cp/parser.cc:53965 cp/parser.cc:54104
 #, gcc-internal-format
 msgid "unknown OpenMP directive name in %qs attribute argument"
 msgstr ""
 
-#: c/c-parser.cc:7208 cp/parser.cc:12752
+#: c/c-parser.cc:7400 cp/parser.cc:13925
 #, gcc-internal-format
 msgid ""
-"OpenMP construct among %<omp::directive%> attributes requires all %<omp::"
-"directive%> attributes on the same statement to be in the same %<omp::"
-"sequence%>"
+"OpenMP construct among %<omp::directive%> attributes requires all "
+"%<omp::directive%> attributes on the same statement to be in the same "
+"%<omp::sequence%>"
 msgstr ""
 
-#: c/c-parser.cc:7216 cp/parser.cc:12760
+#: c/c-parser.cc:7408 cp/parser.cc:13933
 #, gcc-internal-format
 msgid ""
 "multiple OpenMP standalone directives among %<omp::directive%> attributes "
 "must be all within the same %<omp::sequence%>"
 msgstr ""
 
-#: c/c-parser.cc:7228 cp/parser.cc:12772
+#: c/c-parser.cc:7420 cp/parser.cc:13945
 #, gcc-internal-format
 msgid ""
 "standalone OpenMP directives in %<omp::directive%> attribute can only appear "
 "on an empty statement"
 msgstr ""
 
-#: c/c-parser.cc:7349 cp/parser.cc:12902
+#: c/c-parser.cc:7541 cp/parser.cc:14065
 #, gcc-internal-format
 msgid ""
 "mixing OpenMP directives with attribute and pragma syntax on the same "
 "declaration"
 msgstr ""
 
-#: c/c-parser.cc:7407 cp/parser.cc:15356
+#: c/c-parser.cc:7599 cp/parser.cc:16832
 #, gcc-internal-format
 msgid "%qs attribute does not take any arguments"
 msgstr ""
 
-#: c/c-parser.cc:7504
+#: c/c-parser.cc:7696
 #, gcc-internal-format
 msgid "ISO C forbids label declarations"
 msgstr ""
 
-#: c/c-parser.cc:7510 c/c-parser.cc:7702 c/c-parser.cc:7728
-#: c/gimple-parser.cc:467
+#: c/c-parser.cc:7702 c/c-parser.cc:7894 c/c-parser.cc:7920
+#: c/gimple-parser.cc:472
 #, gcc-internal-format
 msgid "expected declaration or statement"
 msgstr ""
 
-#: c/c-parser.cc:7629
+#: c/c-parser.cc:7821
 #, gcc-internal-format
 msgid ""
 "a label can only be part of a statement and a declaration is not a statement"
 msgstr ""
 
-#: c/c-parser.cc:7649 c/c-parser.cc:7692
+#: c/c-parser.cc:7841 c/c-parser.cc:7884
 #, gcc-internal-format
 msgid "ISO C90 forbids mixed declarations and code"
 msgstr ""
 
-#: c/c-parser.cc:7736
+#: c/c-parser.cc:7928
 #, gcc-internal-format
 msgid "expected %<}%> before %<else%>"
 msgstr ""
 
-#: c/c-parser.cc:7741 cp/parser.cc:13809
+#: c/c-parser.cc:7933 cp/parser.cc:14969
 #, gcc-internal-format
 msgid "%<else%> without a previous %<if%>"
 msgstr ""
 
-#: c/c-parser.cc:7776
+#: c/c-parser.cc:7968
 #, gcc-internal-format
 msgid "label at end of compound statement"
 msgstr ""
@@ -51015,1429 +52958,1580 @@ msgstr ""
 #. c_parser_skip_until_found stops at a closing nesting
 #. delimiter without consuming it, but here we need to consume
 #. it to proceed further.
-#: c/c-parser.cc:7833 c/c-parser.cc:7837 c/c-parser.cc:8345
-#: c/gimple-parser.cc:716 c/gimple-parser.cc:2520 cp/parser.cc:13265
+#: c/c-parser.cc:8025 c/c-parser.cc:8029 c/c-parser.cc:8537
+#: c/gimple-parser.cc:722 c/gimple-parser.cc:2510 cp/parser.cc:14429
 #, gcc-internal-format
 msgid "expected statement"
 msgstr ""
 
-#: c/c-parser.cc:7918
+#: c/c-parser.cc:8110
 #, gcc-internal-format
 msgid "expected %<:%> or %<...%>"
 msgstr ""
 
-#: c/c-parser.cc:7948
+#: c/c-parser.cc:8140
 #, gcc-internal-format
 msgid ""
 "GNU-style attribute between label and declaration appertains to the label"
 msgstr ""
 
-#: c/c-parser.cc:8201
+#: c/c-parser.cc:8393
 #, gcc-internal-format
 msgid "expected identifier or %<*%>"
 msgstr ""
 
-#: c/c-parser.cc:8327
+#: c/c-parser.cc:8519
 #, gcc-internal-format
 msgid ""
 "only attribute %<fallthrough%> or %<assume%> can be applied to a null "
 "statement"
 msgstr ""
 
-#: c/c-parser.cc:8437
+#: c/c-parser.cc:8629
 #, gcc-internal-format
 msgid "ISO C does not support if declarations before C2Y"
 msgstr ""
 
-#: c/c-parser.cc:8459
+#: c/c-parser.cc:8651
 #, gcc-internal-format
 msgid "declaration in the controlling expression must have an initializer"
 msgstr ""
 
-#: c/c-parser.cc:8476 cp/parser.cc:5462 cp/parser.cc:16420
+#: c/c-parser.cc:8668 cp/parser.cc:5589 cp/parser.cc:17961
 #, gcc-internal-format
 msgid "expected declaration"
 msgstr ""
 
-#: c/c-parser.cc:8557 cp/parser.cc:15492
+#: c/c-parser.cc:8749 cp/parser.cc:16969
 #, gcc-internal-format
 msgid "suggest braces around empty body in an %<if%> statement"
 msgstr ""
 
-#: c/c-parser.cc:8600 cp/parser.cc:15495
+#: c/c-parser.cc:8792 cp/parser.cc:16972
 #, gcc-internal-format
 msgid "suggest braces around empty body in an %<else%> statement"
 msgstr ""
 
-#: c/c-parser.cc:8694 cp/parser.cc:14223
+#: c/c-parser.cc:8886 cp/parser.cc:15383
 #, gcc-internal-format
 msgid "suggest explicit braces to avoid ambiguous %<else%>"
 msgstr ""
 
-#: c/c-parser.cc:8812 c/c-parser.cc:8891 c/c-parser.cc:9026 cp/parser.cc:15085
+#: c/c-parser.cc:9004 c/c-parser.cc:9083 c/c-parser.cc:9218 cp/parser.cc:16382
 #, gcc-internal-format
 msgid "loop not permitted in intervening code in OpenMP loop body"
 msgstr ""
 
-#: c/c-parser.cc:8899
+#: c/c-parser.cc:9091
 #, gcc-internal-format
 msgid "suggest braces around empty body in %<do%> statement"
 msgstr ""
 
-#: c/c-parser.cc:9060 c/c-parser.cc:9092
+#: c/c-parser.cc:9252 c/c-parser.cc:9284
 #, gcc-internal-format
 msgid "multiple iterating variables in fast enumeration"
 msgstr ""
 
-#: c/c-parser.cc:9115
+#: c/c-parser.cc:9307
 #, gcc-internal-format
 msgid "invalid iterating variable in fast enumeration"
 msgstr ""
 
-#: c/c-parser.cc:9139 cp/parser.cc:14531
+#: c/c-parser.cc:9331 cp/parser.cc:15691
 #, gcc-internal-format
 msgid "missing loop condition in loop with %<GCC ivdep%> pragma"
 msgstr ""
 
-#: c/c-parser.cc:9145 cp/parser.cc:14537
+#: c/c-parser.cc:9337 cp/parser.cc:15697
 #, gcc-internal-format
 msgid "missing loop condition in loop with %<GCC unroll%> pragma"
 msgstr ""
 
-#: c/c-parser.cc:9186
+#: c/c-parser.cc:9378
 #, gcc-internal-format
 msgid "missing collection in fast enumeration"
 msgstr ""
 
-#: c/c-parser.cc:9335 c/c-parser.cc:9346 c/c-parser.cc:9357
+#: c/c-parser.cc:9527 c/c-parser.cc:9538 c/c-parser.cc:9549
 #, gcc-internal-format
 msgid "duplicate %<asm%> qualifier %qE"
 msgstr ""
 
-#: c/c-parser.cc:9336 c/c-parser.cc:9347 c/c-parser.cc:9358 cp/parser.cc:23377
-#: cp/parser.cc:23395 cp/parser.cc:23410
+#: c/c-parser.cc:9528 c/c-parser.cc:9539 c/c-parser.cc:9550 cp/parser.cc:25094
+#: cp/parser.cc:25112 cp/parser.cc:25127
 #, gcc-internal-format
 msgid "first seen here"
 msgstr ""
 
-#: c/c-parser.cc:9367
+#: c/c-parser.cc:9559
 #, gcc-internal-format
 msgid "%qE is not a valid %<asm%> qualifier"
 msgstr ""
 
-#: c/c-parser.cc:9716 cp/parser.cc:4893
+#: c/c-parser.cc:9908 cp/parser.cc:5020
 #, gcc-internal-format
 msgid "a wide string is invalid in this context"
 msgstr ""
 
-#: c/c-parser.cc:9924
+#: c/c-parser.cc:10116
 #, gcc-internal-format
 msgid "ISO C forbids omitting the middle term of a %<?:%> expression"
 msgstr ""
 
 #. Location of the binary operator.
 #. Quiet warning.
-#: c/c-parser.cc:10148 cp/typeck.cc:5582
+#: c/c-parser.cc:10340 cp/typeck.cc:5829
 #, gcc-internal-format
 msgid ""
 "division %<sizeof (%T) / sizeof (%T)%> does not compute the number of array "
 "elements"
 msgstr ""
 
-#: c/c-parser.cc:10154 cp/typeck.cc:5587
+#: c/c-parser.cc:10346 cp/typeck.cc:5834
 #, gcc-internal-format
 msgid "first %<sizeof%> operand was declared here"
 msgstr ""
 
-#: c/c-parser.cc:10425
+#: c/c-parser.cc:10617
 #, gcc-internal-format
 msgid "storage class specifier in cast"
 msgstr ""
 
-#: c/c-parser.cc:10428
+#: c/c-parser.cc:10620
 #, gcc-internal-format
 msgid "alignment specified for type name in cast"
 msgstr ""
 
-#: c/c-parser.cc:10529
+#: c/c-parser.cc:10744
 #, gcc-internal-format
 msgid "traditional C rejects the unary plus operator"
 msgstr ""
 
-#: c/c-parser.cc:10659
+#: c/c-parser.cc:10824
 #, gcc-internal-format
-msgid "storage class specifier in %<sizeof%>"
+msgid "ISO C does not support static assertions in expressions before C2Y"
 msgstr ""
 
-#: c/c-parser.cc:10662
+#: c/c-parser.cc:10857
 #, gcc-internal-format
-msgid "alignment specified for type name in %<sizeof%>"
+msgid "ISO C does not support %qs before C2Y"
 msgstr ""
 
-#: c/c-parser.cc:10678
+#: c/c-parser.cc:10897
 #, gcc-internal-format
-msgid "%<sizeof%> applied to a bit-field"
+msgid "storage class specifier in %qs"
 msgstr ""
 
-#: c/c-parser.cc:10751
+#: c/c-parser.cc:10900 c/c-parser.cc:11086
+#, gcc-internal-format
+msgid "alignment specified for type name in %qs"
+msgstr ""
+
+#: c/c-parser.cc:10927
+#, gcc-internal-format
+msgid "%qs applied to a bit-field"
+msgstr ""
+
+#: c/c-parser.cc:11003
 #, gcc-internal-format
 msgid "storage class specifier in %qE"
 msgstr ""
 
-#: c/c-parser.cc:10754
+#: c/c-parser.cc:11006
 #, gcc-internal-format
 msgid "alignment specified for type name in %qE"
 msgstr ""
 
-#: c/c-parser.cc:10778
+#: c/c-parser.cc:11030
 #, gcc-internal-format
 msgid "ISO C does not allow %<%E (expression)%>"
 msgstr ""
 
-#: c/c-parser.cc:10931
+#: c/c-parser.cc:11058
+#, gcc-internal-format
+msgid "ISO C does not support %qs"
+msgstr ""
+
+#: c/c-parser.cc:11071
+#, gcc-internal-format
+msgid "invalid application of %qs to something not a type"
+msgstr ""
+
+#: c/c-parser.cc:11244
 #, gcc-internal-format
 msgid "cannot take address of %qs"
 msgstr ""
 
-#: c/c-parser.cc:11038
+#: c/c-parser.cc:11351
 #, gcc-internal-format
 msgid "ISO C99 does not support %<_Generic%>"
 msgstr ""
 
-#: c/c-parser.cc:11041
+#: c/c-parser.cc:11354
 #, gcc-internal-format
 msgid "ISO C90 does not support %<_Generic%>"
 msgstr ""
 
-#: c/c-parser.cc:11052
+#: c/c-parser.cc:11365
 #, gcc-internal-format
 msgid ""
 "ISO C does not support use of type name as %<_Generic%> controlling operand "
 "before C2Y"
 msgstr ""
 
-#: c/c-parser.cc:11123
+#: c/c-parser.cc:11446
 #, gcc-internal-format
 msgid ""
 "ISO C does not support %<_Generic%> association with function type before C2Y"
 msgstr ""
 
-#: c/c-parser.cc:11127
+#: c/c-parser.cc:11450
 #, gcc-internal-format
 msgid ""
 "ISO C does not support %<_Generic%> association with incomplete type before "
 "C2Y"
 msgstr ""
 
-#: c/c-parser.cc:11132
+#: c/c-parser.cc:11455
 #, gcc-internal-format
-msgid "%<_Generic%> association has variable length type"
+msgid ""
+"ISO C does not support %<_Generic%> association with variably-modified type "
+"before C2Y"
 msgstr ""
 
-#: c/c-parser.cc:11166
+#: c/c-parser.cc:11497
 #, gcc-internal-format
 msgid "duplicate %<default%> case in %<_Generic%>"
 msgstr ""
 
-#: c/c-parser.cc:11167
+#: c/c-parser.cc:11498
 #, gcc-internal-format
 msgid "original %<default%> is here"
 msgstr ""
 
-#: c/c-parser.cc:11175
+#: c/c-parser.cc:11506
 #, gcc-internal-format
 msgid "%<_Generic%> specifies two compatible types"
 msgstr ""
 
-#: c/c-parser.cc:11176
+#: c/c-parser.cc:11507
 #, gcc-internal-format
 msgid "compatible type is here"
 msgstr ""
 
-#: c/c-parser.cc:11199
+#: c/c-parser.cc:11530
 #, gcc-internal-format
 msgid "%<_Generic%> selector matches multiple associations"
 msgstr ""
 
-#: c/c-parser.cc:11201
+#: c/c-parser.cc:11532
 #, gcc-internal-format
 msgid "other match is here"
 msgstr ""
 
-#: c/c-parser.cc:11226
+#: c/c-parser.cc:11571
 #, gcc-internal-format
 msgid ""
 "%<_Generic%> selector of type %qT is not compatible with any association"
 msgstr ""
 
-#: c/c-parser.cc:11247
+#: c/c-parser.cc:11592
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> is not a function pointer"
 msgstr ""
 
-#: c/c-parser.cc:11255
+#: c/c-parser.cc:11600
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> is unprototyped"
 msgstr ""
 
-#: c/c-parser.cc:11261
+#: c/c-parser.cc:11606
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> has variable arguments"
 msgstr ""
 
-#: c/c-parser.cc:11277
+#: c/c-parser.cc:11622
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> has no arguments"
 msgstr ""
 
-#: c/c-parser.cc:11300 c/c-parser.cc:11304
+#: c/c-parser.cc:11645 c/c-parser.cc:11649
 #, gcc-internal-format
 msgid "ISO C does not support %qs predefined identifier"
 msgstr ""
 
-#: c/c-parser.cc:11308
+#: c/c-parser.cc:11653
 #, gcc-internal-format
 msgid "ISO C90 does not support %<__func__%> predefined identifier"
 msgstr ""
 
-#: c/c-parser.cc:11517 c/c-parser.cc:13256 c/c-parser.cc:13278
-#: c/c-parser.cc:22957 c/gimple-parser.cc:1897 c/gimple-parser.cc:2537
-#: cp/parser.cc:44516
+#: c/c-parser.cc:11872 c/c-parser.cc:13608 c/c-parser.cc:13630
+#: c/c-parser.cc:23984 c/gimple-parser.cc:1887 c/gimple-parser.cc:2527
+#: cp/parser.cc:47628
 #, gcc-internal-format
 msgid "expected expression"
 msgstr ""
 
-#: c/c-parser.cc:11539
+#: c/c-parser.cc:11894
 #, gcc-internal-format
 msgid "braced-group within expression allowed only inside a function"
 msgstr ""
 
-#: c/c-parser.cc:11554
+#: c/c-parser.cc:11909
 #, gcc-internal-format
 msgid "ISO C forbids braced-groups within expressions"
 msgstr ""
 
-#: c/c-parser.cc:11665
+#: c/c-parser.cc:12014 cp/parser.cc:12391
 #, gcc-internal-format
 msgid "optional second parameter of %<va_start%> not last named argument"
 msgstr ""
 
-#: c/c-parser.cc:11704
+#: c/c-parser.cc:12053 cp/parser.cc:12446
 #, gcc-internal-format
 msgid ""
 "%<va_start%> macro used with additional arguments other than identifier of "
 "the last named argument"
 msgstr ""
 
-#: c/c-parser.cc:11849
+#: c/c-parser.cc:12192
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_choose_expr%>"
 msgstr ""
 
-#: c/c-parser.cc:11865
+#: c/c-parser.cc:12208
 #, gcc-internal-format
 msgid "first argument to %<__builtin_choose_expr%> not a constant"
 msgstr ""
 
-#: c/c-parser.cc:11935 c/c-parser.cc:11952 c/c-parser.cc:11959
+#: c/c-parser.cc:12278 c/c-parser.cc:12295 c/c-parser.cc:12302
 #, gcc-internal-format
 msgid "too few arguments to %<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.cc:11980
+#: c/c-parser.cc:12323
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> has wrong number of arguments"
 msgstr ""
 
-#: c/c-parser.cc:12024 c/c-parser.cc:12034
+#: c/c-parser.cc:12367 c/c-parser.cc:12377
 #, gcc-internal-format
 msgid ""
 "invalid type-generic return type for argument %u of %<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.cc:12056 c/c-parser.cc:12066
+#: c/c-parser.cc:12399 c/c-parser.cc:12409
 #, gcc-internal-format
 msgid ""
 "invalid type-generic type for argument %u of argument %u of "
 "%<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.cc:12099
+#: c/c-parser.cc:12442
 #, gcc-internal-format
 msgid "function arguments of %<__builtin_tgmath%> all have the same type"
 msgstr ""
 
-#: c/c-parser.cc:12118
+#: c/c-parser.cc:12461
 #, gcc-internal-format
 msgid "function arguments of %<__builtin_tgmath%> lack type-generic parameter"
 msgstr ""
 
-#: c/c-parser.cc:12166
+#: c/c-parser.cc:12509
 #, gcc-internal-format
 msgid ""
 "duplicate type-generic parameter type for function argument %u of "
 "%<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.cc:12189
+#: c/c-parser.cc:12532
 #, gcc-internal-format
 msgid "bad return type for function argument %u of %<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.cc:12206
+#: c/c-parser.cc:12549
 #, gcc-internal-format
 msgid ""
 "bad type for argument %u of function argument %u of %<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.cc:12246
+#: c/c-parser.cc:12589
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid type of argument %u of type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:12257
+#: c/c-parser.cc:12600
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "decimal floating-point argument %u to complex-only type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:12265
+#: c/c-parser.cc:12608
 #, gcc-internal-format, gfc-internal-format
 msgid "decimal floating-point argument %u to binary-only type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:12273 c/c-parser.cc:12303
+#: c/c-parser.cc:12616 c/c-parser.cc:12646
 #, gcc-internal-format
 msgid ""
 "both complex and decimal floating-point arguments to type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:12281 c/c-parser.cc:12323
+#: c/c-parser.cc:12624 c/c-parser.cc:12666
 #, gcc-internal-format
 msgid ""
 "both binary and decimal floating-point arguments to type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:12295
+#: c/c-parser.cc:12638
 #, gcc-internal-format, gfc-internal-format
 msgid "complex argument %u to decimal-only type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:12315
+#: c/c-parser.cc:12658
 #, gcc-internal-format, gfc-internal-format
 msgid "binary argument %u to decimal-only type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:12422
+#: c/c-parser.cc:12765
 #, gcc-internal-format
 msgid "no matching function for type-generic call"
 msgstr ""
 
-#: c/c-parser.cc:12463
+#: c/c-parser.cc:12806
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_call_with_static_chain%>"
 msgstr ""
 
-#: c/c-parser.cc:12476
+#: c/c-parser.cc:12819
 #, gcc-internal-format
 msgid ""
 "first argument to %<__builtin_call_with_static_chain%> must be a call "
 "expression"
 msgstr ""
 
-#: c/c-parser.cc:12480
+#: c/c-parser.cc:12823
 #, gcc-internal-format
 msgid ""
 "second argument to %<__builtin_call_with_static_chain%> must be a pointer "
 "type"
 msgstr ""
 
-#: c/c-parser.cc:12506
+#: c/c-parser.cc:12849
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_complex%>"
 msgstr ""
 
-#: c/c-parser.cc:12528
+#: c/c-parser.cc:12871
 #, gcc-internal-format
 msgid "%<__builtin_complex%> operand not of real binary floating-point type"
 msgstr ""
 
-#: c/c-parser.cc:12537
+#: c/c-parser.cc:12880
 #, gcc-internal-format
 msgid "%<__builtin_complex%> operands of different types"
 msgstr ""
 
-#: c/c-parser.cc:12568
+#: c/c-parser.cc:12911
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_counted_by_ref%>"
 msgstr ""
 
-#: c/c-parser.cc:12579
+#: c/c-parser.cc:12923
+#, gcc-internal-format
+msgid ""
+"the argument to %<__builtin_counted_by_ref%> must be an array or pointer"
+msgstr ""
+
+#: c/c-parser.cc:12931
 #, gcc-internal-format
-msgid "the argument to %<__builtin_counted_by_ref%> must be an array"
+msgid ""
+"the argument to %<__builtin_counted_by_ref%> must be a field of a structure"
 msgstr ""
 
-#: c/c-parser.cc:12630 c/c-parser.cc:12659 cp/parser.cc:8032
+#: c/c-parser.cc:12982 c/c-parser.cc:13011 cp/parser.cc:8701
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_shuffle%>"
 msgstr ""
 
-#: c/c-parser.cc:12830
+#: c/c-parser.cc:13182
 #, gcc-internal-format
 msgid "wrong number of arguments to %qs"
 msgstr ""
 
-#: c/c-parser.cc:12839 c/c-parser.cc:12919
+#: c/c-parser.cc:13191 c/c-parser.cc:13271
 #, gcc-internal-format
 msgid "%qs operand not an integral type"
 msgstr ""
 
-#: c/c-parser.cc:12845 c/c-parser.cc:12925
+#: c/c-parser.cc:13197 c/c-parser.cc:13277
 #, gcc-internal-format
 msgid "argument %u in call to function %qs has enumerated type"
 msgstr ""
 
-#: c/c-parser.cc:12852
+#: c/c-parser.cc:13204
 #, gcc-internal-format
 msgid "argument %u in call to function %qs has boolean type"
 msgstr ""
 
-#: c/c-parser.cc:12859
+#: c/c-parser.cc:13211
 #, gcc-internal-format
 msgid "argument 1 in call to function %qs has signed type"
 msgstr ""
 
-#: c/c-parser.cc:12867
+#: c/c-parser.cc:13219
 #, gcc-internal-format
 msgid "argument 1 in call to function %qs has %<char%> type"
 msgstr ""
 
-#: c/c-parser.cc:12941
+#: c/c-parser.cc:13293
 #, gcc-internal-format
 msgid "rotate count is negative"
 msgstr ""
 
-#: c/c-parser.cc:13233 cp/parser.cc:6380
+#: c/c-parser.cc:13585 cp/parser.cc:6975
 #, gcc-internal-format
 msgid "%<omp_all_memory%> may only be used in OpenMP %<depend%> clause"
 msgstr ""
 
-#: c/c-parser.cc:13243
+#: c/c-parser.cc:13595
 #, gcc-internal-format
 msgid "ISO C does not support %qs before C23"
 msgstr ""
 
-#: c/c-parser.cc:13331
+#: c/c-parser.cc:13683
 #, gcc-internal-format
 msgid "%qT declared in %<constexpr%> compound literal"
 msgstr ""
 
-#: c/c-parser.cc:13336
+#: c/c-parser.cc:13688
 #, gcc-internal-format
 msgid "%qT defined in %<constexpr%> compound literal"
 msgstr ""
 
-#: c/c-parser.cc:13351
+#: c/c-parser.cc:13704
 #, gcc-internal-format
 msgid "compound literal has variable size"
 msgstr ""
 
-#: c/c-parser.cc:13356
+#: c/c-parser.cc:13709
 #, gcc-internal-format
 msgid "compound literal has function type"
 msgstr ""
 
-#: c/c-parser.cc:13387
+#: c/c-parser.cc:13740
 #, gcc-internal-format
 msgid "compound literal qualified by address-space qualifier"
 msgstr ""
 
-#: c/c-parser.cc:13392
+#: c/c-parser.cc:13745
 #, gcc-internal-format
 msgid "ISO C90 forbids compound literals"
 msgstr ""
 
-#: c/c-parser.cc:13394
+#: c/c-parser.cc:13747
 #, gcc-internal-format
 msgid "ISO C forbids storage class specifiers in compound literals before C23"
 msgstr ""
 
-#: c/c-parser.cc:13408
+#: c/c-parser.cc:13761
 #, gcc-internal-format
 msgid "%<_Alignas%> specifiers cannot reduce alignment of compound literal"
 msgstr ""
 
-#: c/c-parser.cc:13483
+#: c/c-parser.cc:13836
 #, gcc-internal-format
 msgid ""
 "using integer absolute value function %qD when argument is of floating-point "
 "type %qT"
 msgstr ""
 
-#: c/c-parser.cc:13488
+#: c/c-parser.cc:13841
 #, gcc-internal-format
 msgid ""
 "using integer absolute value function %qD when argument is of complex type "
 "%qT"
 msgstr ""
 
-#: c/c-parser.cc:13496
+#: c/c-parser.cc:13849
 #, gcc-internal-format
 msgid "taking the absolute value of unsigned type %qT has no effect"
 msgstr ""
 
-#: c/c-parser.cc:13507
+#: c/c-parser.cc:13860
 #, gcc-internal-format
 msgid ""
 "using floating-point absolute value function %qD when argument is of integer "
 "type %qT"
 msgstr ""
 
-#: c/c-parser.cc:13511
+#: c/c-parser.cc:13864
 #, gcc-internal-format
 msgid ""
 "using floating-point absolute value function %qD when argument is of decimal "
 "floating-point type %qT"
 msgstr ""
 
-#: c/c-parser.cc:13516
+#: c/c-parser.cc:13869
 #, gcc-internal-format
 msgid ""
 "using floating-point absolute value function %qD when argument is of complex "
 "type %qT"
 msgstr ""
 
-#: c/c-parser.cc:13529
+#: c/c-parser.cc:13882
 #, gcc-internal-format
 msgid ""
 "using complex absolute value function %qD when argument is of integer type "
 "%qT"
 msgstr ""
 
-#: c/c-parser.cc:13533
+#: c/c-parser.cc:13886
 #, gcc-internal-format
 msgid ""
 "using complex absolute value function %qD when argument is of floating-point "
 "type %qT"
 msgstr ""
 
-#: c/c-parser.cc:13551
+#: c/c-parser.cc:13904
 #, gcc-internal-format
 msgid ""
 "using decimal floating-point absolute value function %qD when argument is of "
 "integer type %qT"
 msgstr ""
 
-#: c/c-parser.cc:13556
+#: c/c-parser.cc:13909
 #, gcc-internal-format
 msgid ""
 "using decimal floating-point absolute value function %qD when argument is of "
 "floating-point type %qT"
 msgstr ""
 
-#: c/c-parser.cc:13561
+#: c/c-parser.cc:13914
 #, gcc-internal-format
 msgid ""
 "using decimal floating-point absolute value function %qD when argument is of "
 "complex type %qT"
 msgstr ""
 
-#: c/c-parser.cc:13587
+#: c/c-parser.cc:13940
 #, gcc-internal-format
 msgid ""
 "absolute value function %qD given an argument of type %qT but has parameter "
 "of type %qT which may cause truncation of value"
 msgstr ""
 
-#: c/c-parser.cc:13717 cp/parser.cc:8468
+#: c/c-parser.cc:14070 cp/parser.cc:9138
 #, gcc-internal-format
 msgid "calls to the OpenMP runtime API are not permitted in intervening code"
 msgstr ""
 
-#: c/c-parser.cc:14137
+#: c/c-parser.cc:14510
 #, gcc-internal-format
 msgid "expected identifier or %<)%>"
 msgstr ""
 
-#: c/c-parser.cc:14233
+#: c/c-parser.cc:14606
 #, gcc-internal-format
 msgid "extra semicolon"
 msgstr ""
 
-#: c/c-parser.cc:14481
+#: c/c-parser.cc:14854
 #, gcc-internal-format
 msgid "extra semicolon in method definition specified"
 msgstr ""
 
-#: c/c-parser.cc:14613
+#: c/c-parser.cc:14986
 #, gcc-internal-format
 msgid "method attributes must be specified at the end only"
 msgstr ""
 
-#: c/c-parser.cc:14633
+#: c/c-parser.cc:15006
 #, gcc-internal-format
 msgid "expected %<;%> or %<{%> after method attribute definition"
 msgstr ""
 
-#: c/c-parser.cc:14755
+#: c/c-parser.cc:15128
 #, gcc-internal-format
 msgid "objective-c method declaration is expected"
 msgstr ""
 
-#: c/c-parser.cc:15207
+#: c/c-parser.cc:15580
 #, gcc-internal-format
 msgid "no type or storage class may be specified here,"
 msgstr ""
 
-#: c/c-parser.cc:15275 cp/parser.cc:38420
+#: c/c-parser.cc:15648 cp/parser.cc:40873
 #, gcc-internal-format
 msgid "empty property attribute list"
 msgstr ""
 
-#: c/c-parser.cc:15289 cp/parser.cc:38433
+#: c/c-parser.cc:15662 cp/parser.cc:40886
 #, gcc-internal-format
 msgid "missing property attribute"
 msgstr ""
 
-#: c/c-parser.cc:15328
+#: c/c-parser.cc:15701
 #, gcc-internal-format
 msgid "unknown property attribute %<%s%s%>"
 msgstr ""
 
-#: c/c-parser.cc:15331 cp/parser.cc:38470
+#: c/c-parser.cc:15704 cp/parser.cc:40923
 #, gcc-internal-format
 msgid "unknown property attribute"
 msgstr ""
 
-#: c/c-parser.cc:15340 cp/parser.cc:38479
+#: c/c-parser.cc:15713 cp/parser.cc:40932
 #, gcc-internal-format
 msgid "expected %<=%> after Objective-C %qE"
 msgstr ""
 
-#: c/c-parser.cc:15351 cp/parser.cc:38493
+#: c/c-parser.cc:15724 cp/parser.cc:40946
 #, gcc-internal-format
 msgid "expected %qE selector name"
 msgstr ""
 
-#: c/c-parser.cc:15367 cp/parser.cc:38512
+#: c/c-parser.cc:15740 cp/parser.cc:40965
 #, gcc-internal-format
 msgid "setter method names must terminate with %<:%>"
 msgstr ""
 
-#: c/c-parser.cc:15591 cp/semantics.cc:14085
+#: c/c-parser.cc:15964 cp/semantics.cc:14910
 #, gcc-internal-format
 msgid ""
 "%<#pragma GCC unroll%> requires an assignment-expression that evaluates to a "
 "non-negative integral constant less than %u"
 msgstr ""
 
-#: c/c-parser.cc:15629 cp/parser.cc:53453
+#: c/c-parser.cc:16006 cp/parser.cc:56966
 #, gcc-internal-format
-msgid "intervening code must not contain OpenMP directives"
+msgid "intervening code must not contain executable OpenMP directives"
 msgstr ""
 
-#: c/c-parser.cc:15649 c/c-parser.cc:25667 c/c-parser.cc:25976
-#: c/c-parser.cc:26039 c/c-parser.cc:26149 cp/parser.cc:48090
-#: cp/parser.cc:48438 cp/parser.cc:48553 cp/parser.cc:48652 cp/parser.cc:53485
-#: cp/parser.cc:53501 cp/parser.cc:53517 cp/parser.cc:53533 cp/parser.cc:53550
-#: cp/parser.cc:53567 cp/parser.cc:53584 cp/parser.cc:53611 cp/parser.cc:53625
-#: cp/parser.cc:53650 cp/parser.cc:53664
+#: c/c-parser.cc:16026 c/c-parser.cc:26701 c/c-parser.cc:27010
+#: c/c-parser.cc:27073 c/c-parser.cc:27183 cp/parser.cc:51253
+#: cp/parser.cc:51601 cp/parser.cc:51716 cp/parser.cc:51815 cp/parser.cc:56998
+#: cp/parser.cc:57014 cp/parser.cc:57030 cp/parser.cc:57046 cp/parser.cc:57063
+#: cp/parser.cc:57080 cp/parser.cc:57097 cp/parser.cc:57128 cp/parser.cc:57142
+#: cp/parser.cc:57167 cp/parser.cc:57181
 #, gcc-internal-format
 msgid "%<#pragma %s%> may only be used in compound statements"
 msgstr ""
 
-#: c/c-parser.cc:15672 cp/parser.cc:53639
+#: c/c-parser.cc:16049 cp/parser.cc:57156
 #, gcc-internal-format
 msgid "%<#pragma acc routine%> must be at file scope"
 msgstr ""
 
-#: c/c-parser.cc:15771 cp/parser.cc:53769
+#: c/c-parser.cc:16152 cp/parser.cc:57286
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp scan%> may only be used in a loop construct with %<inscan%> "
 "%<reduction%> clause"
 msgstr ""
 
-#: c/c-parser.cc:15778 cp/parser.cc:53775
+#: c/c-parser.cc:16159 cp/parser.cc:57292
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp section%> may only be used in %<#pragma omp sections%> "
 "construct"
 msgstr ""
 
-#: c/c-parser.cc:15790 c/c-parser.cc:15806
+#: c/c-parser.cc:16171 c/c-parser.cc:16187
 #, gcc-internal-format
 msgid "%<#pragma %s%> may only be used at file scope"
 msgstr ""
 
-#: c/c-parser.cc:15877 cp/parser.cc:53858
+#: c/c-parser.cc:16258 cp/parser.cc:57375
 #, gcc-internal-format
 msgid "for, while or do statement expected"
 msgstr ""
 
-#: c/c-parser.cc:15893 cp/parser.cc:53475
+#: c/c-parser.cc:16274 cp/parser.cc:56988
 #, gcc-internal-format
 msgid "%<#pragma GCC pch_preprocess%> must be first"
 msgstr ""
 
-#: c/c-parser.cc:16276 c/c-parser.cc:20196 c/c-parser.cc:22425
-#: c/c-parser.cc:22444 c/c-parser.cc:22697 c/c-parser.cc:22755
-#: c/c-parser.cc:22762 c/c-parser.cc:22769 c/c-parser.cc:27120
-#: c/c-parser.cc:28325 c/c-parser.cc:28333 c/c-parser.cc:28709
-#: c/c-parser.cc:28719 c/c-parser.cc:28813 c/c-parser.cc:28820
-#: c/c-parser.cc:28827 cp/parser.cc:38959 cp/parser.cc:42640 cp/parser.cc:44042
-#: cp/parser.cc:44079 cp/parser.cc:44268 cp/parser.cc:44331 cp/parser.cc:44338
-#: cp/parser.cc:44345 cp/parser.cc:50011 cp/parser.cc:50018 cp/parser.cc:50025
-#: cp/parser.cc:50558 cp/parser.cc:52339 cp/parser.cc:52347 cp/parser.cc:52499
-#: cp/parser.cc:52509
+#: c/c-parser.cc:16661 c/c-parser.cc:21118 c/c-parser.cc:23452
+#: c/c-parser.cc:23471 c/c-parser.cc:23724 c/c-parser.cc:23782
+#: c/c-parser.cc:23789 c/c-parser.cc:23796 c/c-parser.cc:28189
+#: c/c-parser.cc:29769 c/c-parser.cc:29777 c/c-parser.cc:30153
+#: c/c-parser.cc:30163 c/c-parser.cc:30272 c/c-parser.cc:30279
+#: c/c-parser.cc:30286 c/c-parser.cc:30293 cp/parser.cc:41416
+#: cp/parser.cc:45728 cp/parser.cc:47154 cp/parser.cc:47191 cp/parser.cc:47380
+#: cp/parser.cc:47443 cp/parser.cc:47450 cp/parser.cc:47457 cp/parser.cc:53197
+#: cp/parser.cc:53204 cp/parser.cc:53211 cp/parser.cc:53218 cp/parser.cc:53766
+#: cp/parser.cc:55837 cp/parser.cc:55845 cp/parser.cc:55997 cp/parser.cc:56007
 #, gcc-internal-format
 msgid "too many %qs clauses"
 msgstr ""
 
-#: c/c-parser.cc:16303
+#: c/c-parser.cc:16688
 #, gcc-internal-format
 msgid "expression must be integral"
 msgstr ""
 
-#: c/c-parser.cc:16910 c/c-parser.cc:29539
+#: c/c-parser.cc:17295 c/c-parser.cc:31043
 #, gcc-internal-format
 msgid "%qD is not a variable"
 msgstr ""
 
-#: c/c-parser.cc:16914 cp/semantics.cc:9126
+#: c/c-parser.cc:17299 cp/semantics.cc:9535
 #, gcc-internal-format
 msgid "%qD is not a pointer variable"
 msgstr ""
 
-#: c/c-parser.cc:16956 cp/parser.cc:39850
+#: c/c-parser.cc:17341 cp/parser.cc:42307
 #, gcc-internal-format
 msgid "collapse argument needs positive constant integer expression"
 msgstr ""
 
-#: c/c-parser.cc:17051 cp/parser.cc:39928
+#: c/c-parser.cc:17436 cp/parser.cc:42385
 #, gcc-internal-format
 msgid "expected %<none%> or %<present%>"
 msgstr ""
 
-#: c/c-parser.cc:17053 cp/parser.cc:39930
+#: c/c-parser.cc:17438 cp/parser.cc:42387
 #, gcc-internal-format
 msgid "expected %<none%>, %<shared%>, %<private%> or %<firstprivate%>"
 msgstr ""
 
-#: c/c-parser.cc:17138 cp/parser.cc:40000
+#: c/c-parser.cc:17523 cp/parser.cc:42457
 #, gcc-internal-format
 msgid "expected constant logical expression"
 msgstr ""
 
-#: c/c-parser.cc:17215 cp/parser.cc:40082
+#: c/c-parser.cc:17600 cp/parser.cc:42539
 #, gcc-internal-format
 msgid "expected %<data%>, %<update%>, %<enter%> or %<exit%>"
 msgstr ""
 
-#: c/c-parser.cc:17235 c/c-parser.cc:26032 c/c-parser.cc:26142
-#: cp/parser.cc:40100 cp/parser.cc:48430 cp/parser.cc:48545
+#: c/c-parser.cc:17620 c/c-parser.cc:27066 c/c-parser.cc:27176
+#: cp/parser.cc:42557 cp/parser.cc:51593 cp/parser.cc:51708
 #, gcc-internal-format
 msgid "expected %<data%>"
 msgstr ""
 
-#: c/c-parser.cc:17288 cp/parser.cc:40155
+#: c/c-parser.cc:17673 cp/parser.cc:42612
 #, gcc-internal-format
 msgid "too many %<if%> clauses with %qs modifier"
 msgstr ""
 
-#: c/c-parser.cc:17295 cp/parser.cc:40162
+#: c/c-parser.cc:17680 cp/parser.cc:42619
 #, gcc-internal-format
 msgid "too many %<if%> clauses"
 msgstr ""
 
-#: c/c-parser.cc:17297 cp/parser.cc:40164
+#: c/c-parser.cc:17682 cp/parser.cc:42621
 #, gcc-internal-format
 msgid "too many %<if%> clauses without modifier"
 msgstr ""
 
-#: c/c-parser.cc:17303 cp/parser.cc:40170
+#: c/c-parser.cc:17688 cp/parser.cc:42627
 #, gcc-internal-format
 msgid ""
 "if any %<if%> clause has modifier, then all %<if%> clauses have to use "
 "modifier"
 msgstr ""
 
-#: c/c-parser.cc:17408 c/c-parser.cc:17468 c/c-parser.cc:17530
-#: c/c-parser.cc:17578 c/c-parser.cc:17658 c/c-parser.cc:18055
-#: c/c-parser.cc:18137 c/c-parser.cc:18742 c/c-parser.cc:18887
-#: c/c-parser.cc:18955 c/c-parser.cc:20133
+#: c/c-parser.cc:17793 c/c-parser.cc:17853 c/c-parser.cc:17915
+#: c/c-parser.cc:17963 c/c-parser.cc:18043 c/c-parser.cc:18440
+#: c/c-parser.cc:18522 c/c-parser.cc:19136 c/c-parser.cc:19281
+#: c/c-parser.cc:19349 c/c-parser.cc:20664 c/c-parser.cc:21055
 #, gcc-internal-format
 msgid "expected integer expression"
 msgstr ""
 
-#: c/c-parser.cc:17419
+#: c/c-parser.cc:17804
 #, gcc-internal-format
 msgid "%<num_threads%> value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:17480
+#: c/c-parser.cc:17865
 #, gcc-internal-format
 msgid "%<num_tasks%> value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:17542 cp/semantics.cc:9341
+#: c/c-parser.cc:17927 cp/semantics.cc:9750
 #, gcc-internal-format
 msgid "%<grainsize%> value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:17591 cp/semantics.cc:9371
+#: c/c-parser.cc:17976 cp/semantics.cc:9780
 #, gcc-internal-format
 msgid "%<priority%> value must be non-negative"
 msgstr ""
 
-#: c/c-parser.cc:17625 cp/parser.cc:40396
+#: c/c-parser.cc:18010 cp/parser.cc:42853
 #, gcc-internal-format
 msgid "expected constant integer expression with valid sync-hint value"
 msgstr ""
 
-#: c/c-parser.cc:17697 cp/parser.cc:40466
+#: c/c-parser.cc:18082 cp/parser.cc:42923
 #, gcc-internal-format
 msgid ""
 "expected %<alloc%>, %<to%>, %<from%>, %<tofrom%>, %<firstprivate%>, %<none%> "
 "or %<default%>"
 msgstr ""
 
-#: c/c-parser.cc:17765
+#: c/c-parser.cc:18150
 #, gcc-internal-format
 msgid "expected %<scalar%>, %<aggregate%>, %<pointer%> or %<all%>"
 msgstr ""
 
-#: c/c-parser.cc:17842 cp/parser.cc:40618
+#: c/c-parser.cc:18227 cp/parser.cc:43075
 #, gcc-internal-format
 msgid "too many %<defaultmap%> clauses with %qs category"
 msgstr ""
 
-#: c/c-parser.cc:17845 cp/parser.cc:40621
+#: c/c-parser.cc:18230 cp/parser.cc:43078
 #, gcc-internal-format
 msgid "too many %<defaultmap%> clauses with unspecified category"
 msgstr ""
 
-#: c/c-parser.cc:17929 cp/semantics.cc:8195 cp/semantics.cc:8250
+#: c/c-parser.cc:18314 cp/semantics.cc:8427 cp/semantics.cc:8492
 #, gcc-internal-format
 msgid "%qs expression must be integral"
 msgstr ""
 
-#: c/c-parser.cc:17941 c/c-parser.cc:18064 cp/semantics.cc:8229
-#: cp/semantics.cc:8264
+#: c/c-parser.cc:18326 c/c-parser.cc:18449 cp/semantics.cc:8462
+#: cp/semantics.cc:8506
 #, gcc-internal-format
 msgid "%qs value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:18003 cp/parser.cc:39613
+#: c/c-parser.cc:18388 cp/parser.cc:42070
 #, gcc-internal-format
 msgid "too many %<static%> arguments"
 msgstr ""
 
-#: c/c-parser.cc:18037 cp/parser.cc:39646
+#: c/c-parser.cc:18422 cp/parser.cc:42103
 #, gcc-internal-format
 msgid "unexpected argument"
 msgstr ""
 
-#: c/c-parser.cc:18204 cp/semantics.cc:9557
+#: c/c-parser.cc:18589 cp/semantics.cc:9966
 #, gcc-internal-format
 msgid "%<tile%> argument needs positive integral constant"
 msgstr ""
 
-#: c/c-parser.cc:18272 cp/parser.cc:43259
+#: c/c-parser.cc:18657 cp/parser.cc:46356
 #, gcc-internal-format
 msgid "too many %<self%> clauses"
 msgstr ""
 
-#: c/c-parser.cc:18314 cp/parser.cc:40671
+#: c/c-parser.cc:18699 cp/parser.cc:43128
 #, gcc-internal-format
 msgid "expected %<reproducible%> or %<unconstrained%>"
 msgstr ""
 
-#: c/c-parser.cc:18323 c/c-parser.cc:18329 cp/parser.cc:40680
-#: cp/parser.cc:40690
+#: c/c-parser.cc:18708 c/c-parser.cc:18714 cp/parser.cc:43137
+#: cp/parser.cc:43147
 #, gcc-internal-format
 msgid "expected %<concurrent%>"
 msgstr ""
 
-#: c/c-parser.cc:18365 cp/parser.cc:40730
+#: c/c-parser.cc:18750 cp/parser.cc:43187
 #, gcc-internal-format
 msgid "expected %<teams%>, %<parallel%> or %<thread%>"
 msgstr ""
 
-#: c/c-parser.cc:18418 cp/parser.cc:40798
+#: c/c-parser.cc:18803 cp/parser.cc:43255
 #, gcc-internal-format
 msgid "ordered argument needs positive constant integer expression"
 msgstr ""
 
-#: c/c-parser.cc:18543 c/c-parser.cc:27870 cp/parser.cc:51949
+#: c/c-parser.cc:18898 cp/parser.cc:43337
+#, gcc-internal-format
+msgid "%<-%> operator for reductions deprecated in OpenMP 5.2"
+msgstr ""
+
+#: c/c-parser.cc:18937 c/c-parser.cc:29308 cp/parser.cc:55275
 #, gcc-internal-format
 msgid ""
 "expected %<+%>, %<*%>, %<-%>, %<&%>, %<^%>, %<|%>, %<&&%>, %<||%> or "
 "identifier"
 msgstr ""
 
-#: c/c-parser.cc:18665 cp/parser.cc:41056
+#: c/c-parser.cc:19059 cp/parser.cc:43524
 #, gcc-internal-format
 msgid "both %<monotonic%> and %<nonmonotonic%> modifiers specified"
 msgstr ""
 
-#: c/c-parser.cc:18719 cp/parser.cc:41072
+#: c/c-parser.cc:19113 cp/parser.cc:43540
 #, gcc-internal-format
 msgid "schedule %<runtime%> does not take a %<chunk_size%> parameter"
 msgstr ""
 
-#: c/c-parser.cc:18723 cp/parser.cc:41075
+#: c/c-parser.cc:19117 cp/parser.cc:43543
 #, gcc-internal-format
 msgid "schedule %<auto%> does not take a %<chunk_size%> parameter"
 msgstr ""
 
-#: c/c-parser.cc:18736 cp/semantics.cc:8311
+#: c/c-parser.cc:19130 cp/semantics.cc:8553
 #, gcc-internal-format
 msgid "chunk size value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:18759 cp/parser.cc:41095
+#: c/c-parser.cc:19153 cp/parser.cc:43563
 #, gcc-internal-format
 msgid "invalid schedule kind"
 msgstr ""
 
-#: c/c-parser.cc:18898 c/c-parser.cc:18909
+#: c/c-parser.cc:19292 c/c-parser.cc:19303
 #, gcc-internal-format
 msgid "%<num_teams%> value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:18917 cp/semantics.cc:8278
+#: c/c-parser.cc:19311 cp/semantics.cc:8520
 #, gcc-internal-format
 msgid "%<num_teams%> lower bound %qE bigger than upper bound %qE"
 msgstr ""
 
-#: c/c-parser.cc:18966 cp/semantics.cc:8407
+#: c/c-parser.cc:19360 cp/semantics.cc:8649
 #, gcc-internal-format
 msgid "%<thread_limit%> value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:19011 cp/semantics.cc:8535
+#: c/c-parser.cc:19405 cp/semantics.cc:8777
 #, gcc-internal-format
 msgid ""
 "%<aligned%> clause alignment expression must be positive constant integer "
 "expression"
 msgstr ""
 
-#: c/c-parser.cc:19123 c/c-parser.cc:22412 cp/parser.cc:44034
+#: c/c-parser.cc:19517 c/c-parser.cc:23439 cp/parser.cc:47146
 #, gcc-internal-format
 msgid "expected %<allocator%> or %<align%>"
 msgstr ""
 
-#: c/c-parser.cc:19130
+#: c/c-parser.cc:19524 c/c-parser.cc:19691 c/c-parser.cc:19733
+#: cp/parser.cc:44048
 #, gcc-internal-format
 msgid "duplicate %qs modifier"
 msgstr ""
 
-#: c/c-parser.cc:19178 cp/semantics.cc:8668
+#: c/c-parser.cc:19572 cp/semantics.cc:8910
 #, gcc-internal-format
 msgid ""
 "%<allocate%> clause allocator expression has type %qT rather than "
 "%<omp_allocator_handle_t%>"
 msgstr ""
 
-#: c/c-parser.cc:19189 cp/semantics.cc:8623 cp/semantics.cc:8639
+#: c/c-parser.cc:19583 cp/semantics.cc:8865 cp/semantics.cc:8881
 #, gcc-internal-format
 msgid ""
 "%<allocate%> clause %<align%> modifier argument needs to be positive "
 "constant power of two integer expression"
 msgstr ""
 
-#: c/c-parser.cc:19308 cp/parser.cc:41634
+#: c/c-parser.cc:19726
+#, gcc-internal-format
+msgid "expected %<traits%> or %<memspace%>"
+msgstr ""
+
+#: c/c-parser.cc:19791
+#, gcc-internal-format
+msgid ""
+"legacy %<%s(%s)%> traits syntax not allowed in %<uses_allocators%> clause "
+"when using modifiers"
+msgstr ""
+
+#: c/c-parser.cc:19809 cp/parser.cc:44110
+#, gcc-internal-format
+msgid ""
+"the specification of arguments to %<uses_allocators%> where each item is of "
+"the form %<allocator(traits)%> is deprecated since OpenMP 5.2"
+msgstr ""
+
+#: c/c-parser.cc:19817 cp/parser.cc:44118
+#, gcc-internal-format
+msgid ""
+"%<uses_allocators%> clause only accepts a single allocator when using "
+"modifiers"
+msgstr ""
+
+#: c/c-parser.cc:19951 cp/parser.cc:44328
 #, gcc-internal-format
 msgid "multiple linear modifiers"
 msgstr ""
 
-#: c/c-parser.cc:19320 cp/parser.cc:41647
+#: c/c-parser.cc:19963 cp/parser.cc:44341
 #, gcc-internal-format
 msgid "multiple %<step%> modifiers"
 msgstr ""
 
-#: c/c-parser.cc:19328 c/c-parser.cc:19356
+#: c/c-parser.cc:19971 c/c-parser.cc:19999
 #, gcc-internal-format
 msgid "%<linear%> clause step expression must be integral"
 msgstr ""
 
-#: c/c-parser.cc:19408
+#: c/c-parser.cc:20033 cp/parser.cc:44464
+#, gcc-internal-format
+msgid ""
+"specifying the list items as arguments to the modifiers is deprecated since "
+"OpenMP 5.2"
+msgstr ""
+
+#: c/c-parser.cc:20072
 #, gcc-internal-format
 msgid ""
 "%<safelen%> clause expression must be positive constant integer expression"
 msgstr ""
 
-#: c/c-parser.cc:19447
+#: c/c-parser.cc:20111
 #, gcc-internal-format
 msgid ""
 "%<simdlen%> clause expression must be positive constant integer expression"
 msgstr ""
 
-#: c/c-parser.cc:19807 cp/parser.cc:42194
+#: c/c-parser.cc:20459 cp/parser.cc:44919
+#, gcc-internal-format
+msgid ""
+"%<sink%> modifier with %<depend%> clause deprecated since OpenMP 5.2, use "
+"with %<doacross%>"
+msgstr ""
+
+#: c/c-parser.cc:20468 cp/parser.cc:44928
+#, gcc-internal-format
+msgid ""
+"%<source%> modifier with %<depend%> clause deprecated since OpenMP 5.2, use "
+"with %<doacross%>"
+msgstr ""
+
+#: c/c-parser.cc:20485 cp/parser.cc:44945
 #, gcc-internal-format
 msgid "%<iterator%> modifier incompatible with %qs"
 msgstr ""
 
-#: c/c-parser.cc:19855 cp/parser.cc:42249 cp/parser.cc:42701 cp/parser.cc:42768
+#: c/c-parser.cc:20533 cp/parser.cc:45000 cp/parser.cc:45798 cp/parser.cc:45865
 #, gcc-internal-format
 msgid "invalid depend kind"
 msgstr ""
 
-#: c/c-parser.cc:19916 cp/parser.cc:42279
+#: c/c-parser.cc:20594 cp/parser.cc:45030
 #, gcc-internal-format
 msgid "invalid doacross kind"
 msgstr ""
 
-#: c/c-parser.cc:19985 cp/parser.cc:42422
+#: c/c-parser.cc:20629 cp/parser.cc:45231
+#, gcc-internal-format
+msgid "expected %<fallback%> modifier"
+msgstr ""
+
+#: c/c-parser.cc:20646 cp/parser.cc:45255
+#, gcc-internal-format
+msgid "expected %<abort%>, %<default_mem%>, or %<null%> as fallback mode"
+msgstr ""
+
+#: c/c-parser.cc:20675 cp/semantics.cc:8473
+#, gcc-internal-format
+msgid "%<dyn_groupprivate%> value must be non-negative"
+msgstr ""
+
+#: c/c-parser.cc:20783 cp/parser.cc:45371
+#, gcc-internal-format
+msgid "illegal comma"
+msgstr ""
+
+#: c/c-parser.cc:20793 cp/parser.cc:45381
 #, gcc-internal-format
 msgid "too many %<always%> modifiers"
 msgstr ""
 
-#: c/c-parser.cc:19995 cp/parser.cc:42435
+#: c/c-parser.cc:20804 cp/parser.cc:45395
 #, gcc-internal-format
 msgid "too many %<close%> modifiers"
 msgstr ""
 
-#: c/c-parser.cc:20005 cp/parser.cc:42448
+#: c/c-parser.cc:20815 c/c-parser.cc:21307 cp/parser.cc:45155
+#: cp/parser.cc:45409
+#, gcc-internal-format
+msgid "too many %<iterator%> modifiers"
+msgstr ""
+
+#: c/c-parser.cc:20831 cp/parser.cc:45429
+#, gcc-internal-format
+msgid "too many %<mapper%> modifiers"
+msgstr ""
+
+#: c/c-parser.cc:20851 cp/parser.cc:45455
+#, gcc-internal-format
+msgid ""
+"in %<declare mapper%> directives, parameter to %<mapper%> modifier must be "
+"%<default%>"
+msgstr ""
+
+#: c/c-parser.cc:20867 c/c-parser.cc:29130 cp/parser.cc:45472
+#: cp/parser.cc:55511
+#, gcc-internal-format
+msgid "expected identifier or %<default%>"
+msgstr ""
+
+#: c/c-parser.cc:20885 c/c-parser.cc:21296 cp/parser.cc:45141
+#: cp/parser.cc:45494
 #, gcc-internal-format
 msgid "too many %<present%> modifiers"
 msgstr ""
 
-#: c/c-parser.cc:20013 cp/parser.cc:42459
+#: c/c-parser.cc:20894 cp/parser.cc:45506
+#, gcc-internal-format
+msgid ""
+"%<map%> clause with map-type modifier other than %<always%>, %<close%>, "
+"%<iterator%>, %<mapper%> or %<present%>"
+msgstr ""
+
+#: c/c-parser.cc:20906 cp/parser.cc:45521
 #, gcc-internal-format
 msgid ""
-"%<map%> clause with map-type modifier other than %<always%>, %<close%> or "
-"%<present%>"
+"%<map%> clause modifiers without comma separation is deprecated since OpenMP "
+"5.2"
 msgstr ""
 
-#: c/c-parser.cc:20051 cp/parser.cc:42499
+#: c/c-parser.cc:20941 cp/parser.cc:45555
 #, gcc-internal-format
 msgid "invalid map kind"
 msgstr ""
 
-#: c/c-parser.cc:20103 cp/parser.cc:42563
+#: c/c-parser.cc:21025 cp/parser.cc:45651
 #, gcc-internal-format
 msgid ""
 "%<ancestor%> device modifier not preceded by %<requires%> directive with "
 "%<reverse_offload%> clause"
 msgstr ""
 
-#: c/c-parser.cc:20115 cp/parser.cc:42574
+#: c/c-parser.cc:21037 cp/parser.cc:45662
 #, gcc-internal-format
 msgid "expected %<ancestor%> or %<device_num%>"
 msgstr ""
 
-#: c/c-parser.cc:20138 cp/semantics.cc:8432
+#: c/c-parser.cc:21060 cp/semantics.cc:8674
 #, gcc-internal-format
 msgid "the %<device%> clause expression must evaluate to %<1%>"
 msgstr ""
 
-#: c/c-parser.cc:20171 cp/parser.cc:42645
+#: c/c-parser.cc:21093 cp/parser.cc:45733
 #, gcc-internal-format
 msgid "invalid dist_schedule kind"
 msgstr ""
 
-#: c/c-parser.cc:20250
+#: c/c-parser.cc:21157 cp/parser.cc:45772
+#, gcc-internal-format
+msgid "%<master%> affinity deprecated since OpenMP 5.1, use %<primary%>"
+msgstr ""
+
+#: c/c-parser.cc:21180
 #, gcc-internal-format
 msgid "invalid proc_bind kind"
 msgstr ""
 
-#: c/c-parser.cc:20294
+#: c/c-parser.cc:21224
 #, gcc-internal-format
 msgid "expected %<host%>, %<nohost%> or %<any%>"
 msgstr ""
 
-#: c/c-parser.cc:20400 cp/semantics.cc:9679 cp/semantics.cc:9697
+#: c/c-parser.cc:21317 cp/parser.cc:45170
+#, gcc-internal-format
+msgid "%qs clause with modifier other than %<iterator%> or %<present%>"
+msgstr ""
+
+#: c/c-parser.cc:21413 cp/semantics.cc:10088 cp/semantics.cc:10106
 #, gcc-internal-format
 msgid "%<partial%> argument needs positive constant integer expression"
 msgstr ""
 
-#: c/c-parser.cc:20501 cp/semantics.cc:8851
+#: c/c-parser.cc:21514 cp/semantics.cc:9247
 #, gcc-internal-format
 msgid ""
 "%<detach%> clause event handle has type %qT rather than "
 "%<omp_event_handle_t%>"
 msgstr ""
 
-#: c/c-parser.cc:20572 c/c-parser.cc:20666 cp/parser.cc:42828
-#: cp/parser.cc:42940
+#: c/c-parser.cc:21585 c/c-parser.cc:21679 cp/parser.cc:45925
+#: cp/parser.cc:46037
 #, gcc-internal-format
 msgid "string literal must not contain %<\\0%>"
 msgstr ""
 
-#: c/c-parser.cc:20581 c/c-parser.cc:20702 cp/parser.cc:42835
-#: cp/parser.cc:42975
+#: c/c-parser.cc:21594 c/c-parser.cc:21715 cp/parser.cc:45932
+#: cp/parser.cc:46072
 #, gcc-internal-format
 msgid "unknown foreign runtime identifier %qs"
 msgstr ""
 
-#: c/c-parser.cc:20596 c/c-parser.cc:20725 cp/parser.cc:42850
-#: cp/parser.cc:42997
+#: c/c-parser.cc:21609 c/c-parser.cc:21738 cp/parser.cc:45947
+#: cp/parser.cc:46094
 #, gcc-internal-format
 msgid "expected string literal or constant integer expression"
 msgstr ""
 
-#: c/c-parser.cc:20604 c/c-parser.cc:20733 cp/parser.cc:42858
-#: cp/parser.cc:43005 cp/semantics.cc:7527
+#: c/c-parser.cc:21617 c/c-parser.cc:21746 cp/parser.cc:45955
+#: cp/parser.cc:46102 cp/semantics.cc:7751
 #, gcc-internal-format
 msgid "unknown foreign runtime identifier %qwd"
 msgstr ""
 
-#: c/c-parser.cc:20642 cp/parser.cc:42917
+#: c/c-parser.cc:21655 cp/parser.cc:46014
 #, gcc-internal-format
 msgid "expected %<fr%> or %<attr%> preference selector"
 msgstr ""
 
-#: c/c-parser.cc:20650 cp/parser.cc:42925
+#: c/c-parser.cc:21663 cp/parser.cc:46022
 #, gcc-internal-format
 msgid "duplicated %<fr%> preference selector"
 msgstr ""
 
-#: c/c-parser.cc:20676 cp/parser.cc:42949
+#: c/c-parser.cc:21689 cp/parser.cc:46046
 #, gcc-internal-format
 msgid "%<attr%> string literal must start with %<ompx_%>"
 msgstr ""
 
-#: c/c-parser.cc:20684 cp/parser.cc:42956
+#: c/c-parser.cc:21697 cp/parser.cc:46053
 #, gcc-internal-format
 msgid "%<attr%> string literal must not contain a comma"
 msgstr ""
 
-#: c/c-parser.cc:20696 cp/parser.cc:42968
+#: c/c-parser.cc:21709 cp/parser.cc:46065
 #, gcc-internal-format
 msgid "non-empty string literal expected"
 msgstr ""
 
-#: c/c-parser.cc:20806 cp/parser.cc:43108
+#: c/c-parser.cc:21819 cp/parser.cc:46205
 #, gcc-internal-format
 msgid "duplicate %<targetsync%> modifier"
 msgstr ""
 
-#: c/c-parser.cc:20813 cp/parser.cc:43115
+#: c/c-parser.cc:21826 cp/parser.cc:46212
 #, gcc-internal-format
 msgid "duplicate %<target%> modifier"
 msgstr ""
 
-#: c/c-parser.cc:20820 cp/parser.cc:43122
+#: c/c-parser.cc:21833 cp/parser.cc:46219
 #, gcc-internal-format
 msgid "duplicate %<prefer_type%> modifier"
 msgstr ""
 
-#: c/c-parser.cc:20841 cp/parser.cc:43143
+#: c/c-parser.cc:21854 cp/parser.cc:46240
 #, gcc-internal-format
 msgid "expected %<prefer_type%>, %<target%>, or %<targetsync%>"
 msgstr ""
 
-#: c/c-parser.cc:20877 c/c-parser.cc:27149 cp/parser.cc:43180
-#: cp/parser.cc:50583
+#: c/c-parser.cc:21890 c/c-parser.cc:28218 cp/parser.cc:46277
+#: cp/parser.cc:53791
 #, gcc-internal-format
 msgid "missing required %<target%> and/or %<targetsync%> modifier"
 msgstr ""
 
-#: c/c-parser.cc:21118 cp/parser.cc:43475
+#: c/c-parser.cc:22131 cp/parser.cc:46572
 #, gcc-internal-format
 msgid "expected an OpenACC clause"
 msgstr ""
 
-#: c/c-parser.cc:21129 c/c-parser.cc:21526 c/c-parser.cc:29112
-#: cp/parser.cc:43486 cp/parser.cc:43939 cp/parser.cc:51427
+#: c/c-parser.cc:22142 c/c-parser.cc:22552 c/c-parser.cc:30585
+#: cp/parser.cc:46583 cp/parser.cc:47051 cp/parser.cc:54745
 #, gcc-internal-format
 msgid "%qs is not valid for %qs"
 msgstr ""
 
-#: c/c-parser.cc:21174 cp/parser.cc:43534
+#: c/c-parser.cc:22187 cp/parser.cc:46631
 #, gcc-internal-format
 msgid "clauses in %<simd%> trait should be separated by %<,%>"
 msgstr ""
 
-#: c/c-parser.cc:21327 cp/parser.cc:43727
+#: c/c-parser.cc:22340 cp/parser.cc:46824
 #, gcc-internal-format
 msgid "%qs must be the first clause of %qs"
 msgstr ""
 
-#: c/c-parser.cc:21515 cp/parser.cc:43928
+#: c/c-parser.cc:22380 cp/parser.cc:46860
+#, gcc-internal-format
+msgid ""
+"%<to%> clause with %<declare target%> deprecated since OpenMP 5.2, use "
+"%<enter%>"
+msgstr ""
+
+#: c/c-parser.cc:22541 cp/parser.cc:47040
 #, gcc-internal-format
 msgid "expected an OpenMP clause"
 msgstr ""
 
-#: c/c-parser.cc:21676 cp/parser.cc:49115
+#: c/c-parser.cc:22702 cp/parser.cc:52283
 #, gcc-internal-format
 msgid "no valid clauses specified in %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.cc:21686 cp/parser.cc:49125
+#: c/c-parser.cc:22712 cp/parser.cc:52293
 #, gcc-internal-format
 msgid "array section in %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.cc:21706 cp/parser.cc:49145
+#: c/c-parser.cc:22732 cp/parser.cc:52313
 #, gcc-internal-format
 msgid "%qD must be a global variable in %<#pragma acc declare link%>"
 msgstr ""
 
-#: c/c-parser.cc:21717 cp/parser.cc:49156
+#: c/c-parser.cc:22743 cp/parser.cc:52324
 #, gcc-internal-format
 msgid "invalid OpenACC clause at file scope"
 msgstr ""
 
-#: c/c-parser.cc:21724 cp/parser.cc:49163
+#: c/c-parser.cc:22750 cp/parser.cc:52331
 #, gcc-internal-format
 msgid "invalid use of %<extern%> variable %qD in %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.cc:21732 cp/parser.cc:49171
+#: c/c-parser.cc:22758 cp/parser.cc:52339
 #, gcc-internal-format
 msgid "invalid use of %<global%> variable %qD in %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.cc:21743 cp/parser.cc:49193
+#: c/c-parser.cc:22769 cp/parser.cc:52361
 #, gcc-internal-format
 msgid ""
 "%qD must be a variable declared in the same scope as %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.cc:21753 cp/parser.cc:49216
+#: c/c-parser.cc:22779 cp/parser.cc:52384
 #, gcc-internal-format
 msgid "variable %qD used more than once with %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.cc:21846 cp/parser.cc:49300
+#: c/c-parser.cc:22872 cp/parser.cc:52468
 #, gcc-internal-format
 msgid "expected %<data%> after %<#pragma acc %s%>"
 msgstr ""
 
-#: c/c-parser.cc:21862 cp/parser.cc:49317
+#: c/c-parser.cc:22888 cp/parser.cc:52485
 #, gcc-internal-format
 msgid "%<#pragma acc %s data%> has no data movement clause"
 msgstr ""
 
-#: c/c-parser.cc:21894 cp/parser.cc:49075
+#: c/c-parser.cc:22920 cp/parser.cc:52243
 #, gcc-internal-format
 msgid "%<host_data%> construct requires %<use_device%> clause"
 msgstr ""
 
-#: c/c-parser.cc:22123 cp/parser.cc:3533
+#: c/c-parser.cc:23149 cp/parser.cc:3610
 #, gcc-internal-format
 msgid "%qE has not been declared"
 msgstr ""
 
-#: c/c-parser.cc:22127
+#: c/c-parser.cc:23153
 #, gcc-internal-format
 msgid "expected function name"
 msgstr ""
 
-#: c/c-parser.cc:22145 cp/parser.cc:52766
+#: c/c-parser.cc:23171 cp/parser.cc:56275
 #, gcc-internal-format
 msgid "%qD does not refer to a function"
 msgstr ""
 
-#: c/c-parser.cc:22168 c/c-parser.cc:22216 cp/parser.cc:1779
+#: c/c-parser.cc:23194 c/c-parser.cc:23242 cp/parser.cc:1839
 #, gcc-internal-format
 msgid ""
 "%<#pragma acc routine%> not immediately followed by function declaration or "
 "definition"
 msgstr ""
 
-#: c/c-parser.cc:22208 cp/parser.cc:52817 cp/parser.cc:52864
+#: c/c-parser.cc:23234 cp/parser.cc:56326 cp/parser.cc:56373
 #, gcc-internal-format
 msgid ""
 "%<#pragma acc routine%> not immediately followed by a single function "
 "declaration or definition"
 msgstr ""
 
-#: c/c-parser.cc:22239 cp/parser.cc:52892
+#: c/c-parser.cc:23265 cp/parser.cc:56401
 #, gcc-internal-format
 msgid "%<#pragma acc routine%> must be applied before use"
 msgstr ""
 
-#: c/c-parser.cc:22240 cp/parser.cc:52894
+#: c/c-parser.cc:23266 cp/parser.cc:56403
 #, gcc-internal-format
 msgid "%<#pragma acc routine%> must be applied before definition"
 msgstr ""
 
-#: c/c-parser.cc:22285 cp/parser.cc:49533
+#: c/c-parser.cc:23311 cp/parser.cc:52701
 #, gcc-internal-format
 msgid ""
 "%<#pragma acc update%> must contain at least one %<device%> or %<host%> or "
 "%<self%> clause"
 msgstr ""
 
-#: c/c-parser.cc:22343
+#: c/c-parser.cc:23370
 #, gcc-internal-format
 msgid ""
 "variable %qD used in the %<allocator%> clause must be declared before %qD"
 msgstr ""
 
-#: c/c-parser.cc:22347 c/c-parser.cc:22370
+#: c/c-parser.cc:23374 c/c-parser.cc:23397
 #, gcc-internal-format
 msgid "to be allocated variable declared here"
 msgstr ""
 
-#: c/c-parser.cc:22365
+#: c/c-parser.cc:23392
 #, gcc-internal-format
 msgid ""
 "variable %qD used in the %<allocator%> clause must not be modified between "
 "declaration of %qD and its %<allocate%> directive"
 msgstr ""
 
-#: c/c-parser.cc:22368
+#: c/c-parser.cc:23395
 #, gcc-internal-format
 msgid "modified here"
 msgstr ""
 
-#: c/c-parser.cc:22436 cp/parser.cc:44054 cp/parser.cc:44069
+#: c/c-parser.cc:23463 cp/parser.cc:47166 cp/parser.cc:47181
 #, gcc-internal-format
 msgid ""
 "%<align%> clause argument needs to be positive constant power of two integer "
 "expression"
 msgstr ""
 
-#: c/c-parser.cc:22460
+#: c/c-parser.cc:23487
 #, gcc-internal-format
 msgid ""
 "%<allocator%> clause allocator expression has type %qT rather than "
 "%<omp_allocator_handle_t%>"
 msgstr ""
 
-#: c/c-parser.cc:22477
+#: c/c-parser.cc:23504
 #, gcc-internal-format
 msgid ""
 "function parameter %qD may not appear as list item in an %<allocate%> "
 "directive"
 msgstr ""
 
-#: c/c-parser.cc:22484
+#: c/c-parser.cc:23511
 #, gcc-internal-format
 msgid "%<allocate%> directive must be in the same scope as %qD"
 msgstr ""
 
-#: c/c-parser.cc:22492
+#: c/c-parser.cc:23519
 #, gcc-internal-format
 msgid "%qD already appeared as list item in an %<allocate%> directive"
 msgstr ""
 
-#: c/c-parser.cc:22501
+#: c/c-parser.cc:23528
 #, gcc-internal-format
 msgid "%<allocator%> clause required for static variable %qD"
 msgstr ""
 
-#: c/c-parser.cc:22512
+#: c/c-parser.cc:23539
 #, gcc-internal-format
 msgid "%<allocator%> clause requires a predefined allocator as %qD is static"
 msgstr ""
 
-#: c/c-parser.cc:22663 cp/parser.cc:44234
+#: c/c-parser.cc:23690 cp/parser.cc:47346
 #, gcc-internal-format
 msgid "expected %<read%>, %<write%>, %<update%>, or %<capture%> clause"
 msgstr ""
 
-#: c/c-parser.cc:22702 cp/parser.cc:44273
+#: c/c-parser.cc:23729 cp/parser.cc:47385
 #, gcc-internal-format
 msgid "expected %<seq_cst%>, %<acquire%> or %<relaxed%>"
 msgstr ""
 
-#: c/c-parser.cc:22726 cp/parser.cc:44302
+#: c/c-parser.cc:23753 cp/parser.cc:47414
 #, gcc-internal-format
 msgid ""
 "expected %<read%>, %<write%>, %<update%>, %<capture%>, %<compare%>, "
@@ -52445,169 +54539,169 @@ msgid ""
 "%<hint%> clause"
 msgstr ""
 
-#: c/c-parser.cc:22741 cp/parser.cc:44317
+#: c/c-parser.cc:23768 cp/parser.cc:47429
 #, gcc-internal-format
 msgid "too many atomic clauses"
 msgstr ""
 
-#: c/c-parser.cc:22748 cp/parser.cc:44324
+#: c/c-parser.cc:23775 cp/parser.cc:47436
 #, gcc-internal-format
 msgid "too many memory order clauses"
 msgstr ""
 
-#: c/c-parser.cc:22786 c/c-parser.cc:22793 cp/parser.cc:44362
-#: cp/parser.cc:44369
+#: c/c-parser.cc:23813 c/c-parser.cc:23820 cp/parser.cc:47474
+#: cp/parser.cc:47481
 #, gcc-internal-format
 msgid "%qs clause is incompatible with %<read%> or %<write%> clauses"
 msgstr ""
 
-#: c/c-parser.cc:22799 c/c-parser.cc:22804 cp/parser.cc:44375
-#: cp/parser.cc:44380
+#: c/c-parser.cc:23826 c/c-parser.cc:23831 cp/parser.cc:47487
+#: cp/parser.cc:47492
 #, gcc-internal-format
 msgid "%qs clause requires %qs clause"
 msgstr ""
 
-#: c/c-parser.cc:22827 cp/parser.cc:44403
+#: c/c-parser.cc:23854 cp/parser.cc:47515
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp atomic write%> incompatible with %<acquire%> clause implicitly "
 "provided by a %<requires%> directive"
 msgstr ""
 
-#: c/c-parser.cc:22838 cp/parser.cc:44414
+#: c/c-parser.cc:23865 cp/parser.cc:47526
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp atomic read%> incompatible with %<release%> clause implicitly "
 "provided by a %<requires%> directive"
 msgstr ""
 
-#: c/c-parser.cc:22870 cp/parser.cc:44446
+#: c/c-parser.cc:23897 cp/parser.cc:47558
 #, gcc-internal-format
 msgid "%<#pragma omp atomic read%> incompatible with %<release%> clause"
 msgstr ""
 
-#: c/c-parser.cc:22880 cp/parser.cc:44456
+#: c/c-parser.cc:23907 cp/parser.cc:47568
 #, gcc-internal-format
 msgid "%<#pragma omp atomic write%> incompatible with %<acquire%> clause"
 msgstr ""
 
-#: c/c-parser.cc:23001 cp/parser.cc:44556
+#: c/c-parser.cc:24028 cp/parser.cc:47668
 #, gcc-internal-format
 msgid "expected %<==%> comparison in %<if%> condition"
 msgstr ""
 
-#: c/c-parser.cc:23008 cp/parser.cc:44563
+#: c/c-parser.cc:24035 cp/parser.cc:47675
 #, gcc-internal-format
 msgid "expected %<==%>, %<<%> or %<>%> comparison in %<if%> condition"
 msgstr ""
 
-#: c/c-parser.cc:23081 cp/parser.cc:44628 cp/parser.cc:44911 cp/parser.cc:45005
-#: cp/parser.cc:45023
+#: c/c-parser.cc:24108 cp/parser.cc:47740 cp/parser.cc:48023 cp/parser.cc:48117
+#: cp/parser.cc:48135
 #, gcc-internal-format
 msgid "invalid form of %<#pragma omp atomic compare%>"
 msgstr ""
 
-#: c/c-parser.cc:23092 cp/parser.cc:44639
+#: c/c-parser.cc:24119 cp/parser.cc:47751
 #, gcc-internal-format
 msgid "unexpected %<else%>"
 msgstr ""
 
-#: c/c-parser.cc:23152 cp/parser.cc:45078
+#: c/c-parser.cc:24179 cp/parser.cc:48190
 #, gcc-internal-format
 msgid "invalid form of %<pragma omp atomic compare%>"
 msgstr ""
 
-#: c/c-parser.cc:23423 cp/parser.cc:44932 cp/parser.cc:44958
+#: c/c-parser.cc:24450 cp/parser.cc:48044 cp/parser.cc:48070
 #, gcc-internal-format
 msgid "invalid form of %<#pragma omp atomic%>"
 msgstr ""
 
-#: c/c-parser.cc:23427 cp/parser.cc:44998 cp/parser.cc:45032
+#: c/c-parser.cc:24454 cp/parser.cc:48110 cp/parser.cc:48144
 #, gcc-internal-format
 msgid "invalid operator for %<#pragma omp atomic%>"
 msgstr ""
 
-#: c/c-parser.cc:23478 cp/parser.cc:45067
+#: c/c-parser.cc:24505 cp/parser.cc:48179
 #, gcc-internal-format
 msgid "%<weak%> clause requires atomic equality comparison"
 msgstr ""
 
-#: c/c-parser.cc:23484 cp/semantics.cc:11923 cp/semantics.cc:11933
+#: c/c-parser.cc:24511 cp/semantics.cc:12399 cp/semantics.cc:12409
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp atomic capture%> uses two different expressions for memory"
 msgstr ""
 
-#: c/c-parser.cc:23587 cp/semantics.cc:12010
+#: c/c-parser.cc:24614 cp/semantics.cc:12486
 #, gcc-internal-format
 msgid "%<depobj%> expression is not lvalue expression"
 msgstr ""
 
-#: c/c-parser.cc:23630
+#: c/c-parser.cc:24657
 #, gcc-internal-format
 msgid "%<destroy%> expression is not lvalue expression"
 msgstr ""
 
-#: c/c-parser.cc:23636 cp/parser.cc:45220
+#: c/c-parser.cc:24663 cp/parser.cc:48332
 #, gcc-internal-format
 msgid ""
 "the %<destroy%> expression %qE should be the same as the %<depobj%> argument "
 "%qE"
 msgstr ""
 
-#: c/c-parser.cc:23667 cp/parser.cc:45256
+#: c/c-parser.cc:24694 cp/parser.cc:48368
 #, gcc-internal-format
 msgid "expected %<in%>, %<out%>, %<inout%>, %<mutexinoutset%> or %<inoutset%>"
 msgstr ""
 
-#: c/c-parser.cc:23679 cp/parser.cc:45272
+#: c/c-parser.cc:24706 cp/parser.cc:48384
 #, gcc-internal-format
 msgid "expected %<depend%>, %<destroy%> or %<update%> clause"
 msgstr ""
 
-#: c/c-parser.cc:23720 cp/parser.cc:45310
+#: c/c-parser.cc:24747 cp/parser.cc:48422
 #, gcc-internal-format
 msgid "expected %<seq_cst%>, %<acq_rel%>, %<release%> or %<acquire%>"
 msgstr ""
 
-#: c/c-parser.cc:23728 cp/parser.cc:45318
+#: c/c-parser.cc:24755 cp/parser.cc:48430
 #, gcc-internal-format
 msgid "%<flush%> list specified together with memory order clause"
 msgstr ""
 
-#: c/c-parser.cc:23733
+#: c/c-parser.cc:24760
 #, gcc-internal-format
 msgid "expected %<(%> or end of line"
 msgstr ""
 
-#: c/c-parser.cc:23804 cp/parser.cc:46039
+#: c/c-parser.cc:24831 cp/parser.cc:49168
 #, gcc-internal-format
 msgid ""
 "%<[[omp::directive(%s)]]%> must be the only specified attribute on a "
 "statement"
 msgstr ""
 
-#: c/c-parser.cc:23871 cp/parser.cc:46108
+#: c/c-parser.cc:24898 cp/parser.cc:49237
 #, gcc-internal-format
 msgid "%<#pragma omp scan%> with zero preceding executable statements"
 msgstr ""
 
-#: c/c-parser.cc:23905 cp/parser.cc:46141
+#: c/c-parser.cc:24932 cp/parser.cc:49270
 #, gcc-internal-format
 msgid "expected %<inclusive%> or %<exclusive%> clause"
 msgstr ""
 
-#: c/c-parser.cc:23910 cp/parser.cc:46147
+#: c/c-parser.cc:24937 cp/parser.cc:49276
 #, gcc-internal-format
 msgid "expected %<#pragma omp scan%>"
 msgstr ""
 
-#: c/c-parser.cc:23919 cp/parser.cc:46156
+#: c/c-parser.cc:24946 cp/parser.cc:49285
 #, gcc-internal-format
 msgid "%<#pragma omp scan%> with zero succeeding executable statements"
 msgstr ""
 
-#: c/c-parser.cc:23944 cp/parser.cc:46179
+#: c/c-parser.cc:24971 cp/parser.cc:49308
 #, gcc-internal-format
 msgid "for statement expected"
 msgstr ""
@@ -52615,436 +54709,541 @@ msgstr ""
 #. Don't call cp_parser_error here since it overrides the
 #. provided message with a more confusing one if there was
 #. a bad pragma or attribute directive.
-#: c/c-parser.cc:23973 cp/parser.cc:46201 cp/parser.cc:46203 cp/parser.cc:46388
+#: c/c-parser.cc:25000 cp/parser.cc:49330 cp/parser.cc:49332 cp/parser.cc:49517
 #, gcc-internal-format
 msgid "loop nest expected"
 msgstr ""
 
-#: c/c-parser.cc:24025 cp/parser.cc:46276
+#: c/c-parser.cc:25052 cp/parser.cc:49405
 #, gcc-internal-format
 msgid ""
 "attributes other than OpenMP directives are not allowed on %<for%> in loop "
 "nest"
 msgstr ""
 
-#: c/c-parser.cc:24054 cp/parser.cc:46307
+#: c/c-parser.cc:25081 cp/parser.cc:49436
 #, gcc-internal-format
 msgid ""
 "%<unroll%> construct with %<partial%> clause generates just one loop with "
 "canonical form but %d loops are needed"
 msgstr ""
 
-#: c/c-parser.cc:24065 cp/parser.cc:46318
+#: c/c-parser.cc:25092 cp/parser.cc:49447
 #, gcc-internal-format
 msgid ""
 "generated loop of %<unroll%> construct without %<partial%> clause does not "
 "have canonical form"
 msgstr ""
 
-#: c/c-parser.cc:24088 cp/parser.cc:46344
+#: c/c-parser.cc:25115 cp/parser.cc:49473
 #, gcc-internal-format
 msgid ""
 "%<tile%> construct generates %d loops with canonical form but %d loops are "
 "needed"
 msgstr ""
 
-#: c/c-parser.cc:24099 cp/parser.cc:46355
+#: c/c-parser.cc:25126 cp/parser.cc:49484
 #, gcc-internal-format
 msgid "expected %<for%> loop or OpenMP loop transformation construct"
 msgstr ""
 
-#: c/c-parser.cc:24187 cp/semantics.cc:11485 cp/semantics.cc:11578
+#: c/c-parser.cc:25214 cp/semantics.cc:11961 cp/semantics.cc:12054
 #, gcc-internal-format
 msgid "expected iteration declaration or initialization"
 msgstr ""
 
-#: c/c-parser.cc:24276 c/c-parser.cc:24291 cp/parser.cc:46682
-#: cp/parser.cc:46697
+#: c/c-parser.cc:25303 c/c-parser.cc:25318 cp/parser.cc:49811
+#: cp/parser.cc:49826
 #, gcc-internal-format
 msgid "not enough nested loops"
 msgstr ""
 
-#: c/c-parser.cc:24394 cp/parser.cc:46982
+#: c/c-parser.cc:25421 cp/parser.cc:50119
 #, gcc-internal-format
 msgid "%<ordered%> clause parameter is less than %<collapse%>"
 msgstr ""
 
-#: c/c-parser.cc:24517 cp/parser.cc:46517 cp/parser.cc:46560 cp/pt.cc:18586
+#: c/c-parser.cc:25544 cp/parser.cc:49646 cp/parser.cc:49689 cp/pt.cc:19123
 #, gcc-internal-format
 msgid "iteration variable %qD should not be firstprivate"
 msgstr ""
 
-#: c/c-parser.cc:24951 cp/parser.cc:47528
+#: c/c-parser.cc:25792 cp/parser.cc:50512
+#, gcc-internal-format
+msgid "%<master%> construct deprecated since OpenMP 5.1, use %<masked%>"
+msgstr ""
+
+#: c/c-parser.cc:25984 cp/parser.cc:50671
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp ordered%> with %qs clause may only be used in compound "
 "statements"
 msgstr ""
 
-#: c/c-parser.cc:25167 cp/parser.cc:47734
+#: c/c-parser.cc:26200 cp/parser.cc:50877
 #, gcc-internal-format
 msgid "expected %<for%> after %qs"
 msgstr ""
 
-#: c/c-parser.cc:25380 c/c-parser.cc:25388
+#: c/c-parser.cc:26414 c/c-parser.cc:26422
 #, gcc-internal-format
 msgid "expected a function name"
 msgstr ""
 
-#: c/c-parser.cc:25401 cp/parser.cc:50217
+#: c/c-parser.cc:26435 cp/parser.cc:53411
 #, gcc-internal-format
 msgid "expected target-function call"
 msgstr ""
 
-#: c/c-parser.cc:25471
+#: c/c-parser.cc:26505
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp dispatch%> must be followed by a function call with optional "
 "assignment"
 msgstr ""
 
-#: c/c-parser.cc:25658 cp/parser.cc:48081
+#: c/c-parser.cc:26692 cp/parser.cc:51244
 #, gcc-internal-format
 msgid "expected %<point%>"
 msgstr ""
 
-#: c/c-parser.cc:25925 cp/parser.cc:48368
+#: c/c-parser.cc:26959 cp/parser.cc:51531
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target data%> with map-type other than %<to%>, %<from%>, "
 "%<tofrom%> or %<alloc%> on %<map%> clause"
 msgstr ""
 
-#: c/c-parser.cc:25941 cp/parser.cc:48384
+#: c/c-parser.cc:26975 cp/parser.cc:51547
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target data%> must contain at least one %<map%>, "
 "%<use_device_ptr%> or %<use_device_addr%> clause"
 msgstr ""
 
-#: c/c-parser.cc:25989 cp/parser.cc:48665
+#: c/c-parser.cc:27023 cp/parser.cc:51828
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target update%> must contain at least one %<from%> or %<to%> "
 "clauses"
 msgstr ""
 
-#: c/c-parser.cc:26091 cp/parser.cc:48491
+#: c/c-parser.cc:27125 cp/parser.cc:51654
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target enter data%> with map-type other than %<to%>, "
 "%<tofrom%> or %<alloc%> on %<map%> clause"
 msgstr ""
 
-#: c/c-parser.cc:26103 cp/parser.cc:48503
+#: c/c-parser.cc:27137 cp/parser.cc:51666
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target enter data%> must contain at least one %<map%> clause"
 msgstr ""
 
-#: c/c-parser.cc:26202 cp/parser.cc:48608
+#: c/c-parser.cc:27236 cp/parser.cc:51771
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target exit data%> with map-type other than %<from%>, "
 "%<tofrom%>, %<release%> or %<delete%> on %<map%> clause"
 msgstr ""
 
-#: c/c-parser.cc:26215 cp/parser.cc:48621
+#: c/c-parser.cc:27249 cp/parser.cc:51784
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target exit data%> must contain at least one %<map%> clause"
 msgstr ""
 
-#: c/c-parser.cc:26460 cp/semantics.cc:10988
+#: c/c-parser.cc:27501 cp/semantics.cc:11464
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target%> with map-type other than %<to%>, %<from%>, %<tofrom%> "
 "or %<alloc%> on %<map%> clause"
 msgstr ""
 
-#: c/c-parser.cc:26521
+#: c/c-parser.cc:27562
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare %s%> must be followed by function declaration or "
 "definition or another %<#pragma omp declare %s%>"
 msgstr ""
 
-#: c/c-parser.cc:26572 c/c-parser.cc:26610
+#: c/c-parser.cc:27613 c/c-parser.cc:27651
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare %s%> must be followed by function declaration or "
 "definition"
 msgstr ""
 
-#: c/c-parser.cc:26643 cp/parser.cc:49677
+#: c/c-parser.cc:27684 cp/parser.cc:52846
 #, gcc-internal-format
 msgid "expected trait selector name"
 msgstr ""
 
-#: c/c-parser.cc:26655 cp/parser.cc:49691
+#: c/c-parser.cc:27696 cp/parser.cc:52860
 #, gcc-internal-format
 msgid "unknown selector %qs for context selector set %qs"
 msgstr ""
 
-#: c/c-parser.cc:26683 cp/parser.cc:49720
+#: c/c-parser.cc:27724 cp/parser.cc:52889
 #, gcc-internal-format
 msgid "selector %qs does not accept any properties"
 msgstr ""
 
-#: c/c-parser.cc:26705 cp/parser.cc:49752
+#: c/c-parser.cc:27746 cp/parser.cc:52921
 #, gcc-internal-format
 msgid "%<score%> cannot be specified in traits in the %qs trait-selector-set"
 msgstr ""
 
-#: c/c-parser.cc:26714 cp/parser.cc:49762 cp/pt.cc:18254
+#: c/c-parser.cc:27755 cp/parser.cc:52931 cp/pt.cc:18771
 #, gcc-internal-format
 msgid "%<score%> argument must be constant integer expression"
 msgstr ""
 
-#: c/c-parser.cc:26717 cp/parser.cc:49765 cp/pt.cc:18261
+#: c/c-parser.cc:27758 cp/parser.cc:52934 cp/pt.cc:18778
 #, gcc-internal-format
 msgid "%<score%> argument must be non-negative"
 msgstr ""
 
-#: c/c-parser.cc:26758 cp/parser.cc:49811
+#: c/c-parser.cc:27799 cp/parser.cc:52980
 #, gcc-internal-format
 msgid "expected identifier or string literal"
 msgstr ""
 
-#: c/c-parser.cc:26781 cp/parser.cc:49841 cp/pt.cc:18278
+#: c/c-parser.cc:27835 cp/parser.cc:53019 cp/pt.cc:18804
 #, gcc-internal-format
 msgid "property must be integer expression"
 msgstr ""
 
-#: c/c-parser.cc:26794 cp/parser.cc:49852
+#: c/c-parser.cc:27846 cp/parser.cc:53034
 #, gcc-internal-format
 msgid ""
 "properties for %<simd%> selector may not be specified in %<metadirective%>"
 msgstr ""
 
-#: c/c-parser.cc:26815 cp/parser.cc:49868 fortran/openmp.cc:6534
+#: c/c-parser.cc:27867 cp/parser.cc:53050 fortran/openmp.cc:6674
 #, gcc-internal-format
 msgid "%<requires%> selector is not supported yet"
 msgstr ""
 
-#: c/c-parser.cc:26874 cp/parser.cc:49931
+#: c/c-parser.cc:27926 cp/parser.cc:53113
 #, gcc-internal-format
 msgid "expected context selector set name"
 msgstr ""
 
-#: c/c-parser.cc:26986 cp/parser.cc:50435
+#: c/c-parser.cc:27993
 #, gcc-internal-format
-msgid "expected %<match%>, %<adjust_args%> or %<append_args%> clause"
+msgid "variant %qD is not a function"
 msgstr ""
 
-#: c/c-parser.cc:27002 cp/parser.cc:50448
+#: c/c-parser.cc:28005 cp/decl.cc:9304
 #, gcc-internal-format
-msgid "too many %<match%> clauses"
+msgid "variant %qD is a built-in"
 msgstr ""
 
-#: c/c-parser.cc:27013
+#: c/c-parser.cc:28011 cp/decl.cc:9226
 #, gcc-internal-format
-msgid "variant %qD is not a function"
+msgid "variant %qD is the same as base function"
 msgstr ""
 
-#: c/c-parser.cc:27028 cp/decl.cc:8623
+#: c/c-parser.cc:28065 cp/parser.cc:53629
 #, gcc-internal-format
-msgid "variant %qD is a built-in"
+msgid "expected %<match%>, %<adjust_args%> or %<append_args%> clause"
+msgstr ""
+
+#: c/c-parser.cc:28081 cp/parser.cc:53642
+#, gcc-internal-format
+msgid "too many %<match%> clauses"
 msgstr ""
 
-#: c/c-parser.cc:27074 cp/parser.cc:50510
+#: c/c-parser.cc:28143 cp/parser.cc:53718
 #, gcc-internal-format
 msgid "%qD is specified more than once"
 msgstr ""
 
-#: c/c-parser.cc:27081
+#: c/c-parser.cc:28150
 #, gcc-internal-format
 msgid "%qD is not of pointer type"
 msgstr ""
 
-#: c/c-parser.cc:27101 cp/parser.cc:50543
+#: c/c-parser.cc:28170 cp/parser.cc:53751
 #, gcc-internal-format
 msgid "expected %<nothing%> or %<need_device_ptr%>"
 msgstr ""
 
-#: c/c-parser.cc:27104
+#: c/c-parser.cc:28173
 #, gcc-internal-format
 msgid "%<need_device_addr%> is not valid for C"
 msgstr ""
 
-#: c/c-parser.cc:27111 cp/parser.cc:50550
+#: c/c-parser.cc:28180 cp/parser.cc:53758
 #, gcc-internal-format
 msgid "expected %<nothing%> or %<need_device_ptr%> followed by %<:%>"
 msgstr ""
 
-#: c/c-parser.cc:27131 cp/parser.cc:50567
+#: c/c-parser.cc:28200 cp/parser.cc:53775
 #, gcc-internal-format
 msgid "expected %<interop%>"
 msgstr ""
 
-#: c/c-parser.cc:27229 cp/decl.cc:8605
+#: c/c-parser.cc:28245 cp/parser.cc:53838
 #, gcc-internal-format
-msgid "argument %d of %qD must be of %<omp_interop_t%>"
+msgid "expected %<match%> clause"
 msgstr ""
 
-#: c/c-parser.cc:27231 cp/decl.cc:8502 cp/decl.cc:8608
+#: c/c-parser.cc:28261
 #, gcc-internal-format
-msgid "%<append_args%> specified here"
+msgid ""
+"an %qs clause can only be specified if the %<dispatch%> selector of the "
+"%<construct%> selector set appears in the %<match%> clause"
 msgstr ""
 
-#: c/c-parser.cc:27277 cp/decl.cc:8614
+#: c/c-parser.cc:28288
 #, gcc-internal-format
-msgid "variant %qD and base %qD have incompatible types"
+msgid "%<append_args%> with unprototyped base function is not supported yet"
+msgstr ""
+
+#: c/c-parser.cc:28291
+#, gcc-internal-format
+msgid "base function %qD declared here"
 msgstr ""
 
-#: c/c-parser.cc:27302 cp/parser.cc:50635
+#: c/c-parser.cc:28326 cp/decl.cc:9286
 #, gcc-internal-format
-msgid "an %qs clause requires a %<match%> clause"
+msgid "argument %d of %qD must be of %<omp_interop_t%>"
 msgstr ""
 
-#: c/c-parser.cc:27315
+#: c/c-parser.cc:28330 cp/decl.cc:9151 cp/decl.cc:9289
+#, gcc-internal-format
+msgid "%<append_args%> specified here"
+msgstr ""
+
+#: c/c-parser.cc:28373
 #, gcc-internal-format
 msgid ""
-"an %qs clause can only be specified if the %<dispatch%> selector of the "
-"%<construct%> selector set appears in the %<match%> clause"
+"variant %qD and base %qD have incompatible types after %<append_args%> "
+"adjustment"
+msgstr ""
+
+#: c/c-parser.cc:28392 cp/decl.cc:9295
+#, gcc-internal-format
+msgid "variant %qD and base %qD have incompatible types"
 msgstr ""
 
-#: c/c-parser.cc:27358
+#: c/c-parser.cc:28455
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare %s%> not immediately followed by a function "
 "declaration or definition"
 msgstr ""
 
-#: c/c-parser.cc:27366 cp/parser.cc:50680
+#: c/c-parser.cc:28463 cp/parser.cc:53888
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare %s%> not immediately followed by a single function "
 "declaration or definition"
 msgstr ""
 
-#: c/c-parser.cc:27573 cp/parser.cc:50969
+#: c/c-parser.cc:28471
+#, gcc-internal-format
+msgid ""
+"%<#pragma omp declare %s%> cannot be used with function multi-versioning"
+msgstr ""
+
+#: c/c-parser.cc:28563
+#, gcc-internal-format
+msgid "no declaration of base function %qs"
+msgstr ""
+
+#: c/c-parser.cc:28571 cp/parser.cc:25655
+#, gcc-internal-format
+msgid "variant function definition does not match declaration of %qE"
+msgstr ""
+
+#: c/c-parser.cc:28729 cp/parser.cc:54284
+#, gcc-internal-format
+msgid ""
+"use of %<omp declare target%> as a synonym for %<omp begin declare target%> "
+"has been deprecated since OpenMP 5.2"
+msgstr ""
+
+#: c/c-parser.cc:28766 cp/parser.cc:54177
 #, gcc-internal-format
 msgid "%qD specified both in declare target %<link%> and %qs clauses"
 msgstr ""
 
-#: c/c-parser.cc:27577 cp/parser.cc:50973
+#: c/c-parser.cc:28770 cp/parser.cc:54181
 #, gcc-internal-format
 msgid ""
 "%qD specified both in declare target %<link%> and %<to%> or %<enter%> clauses"
 msgstr ""
 
-#: c/c-parser.cc:27637 cp/parser.cc:51106
+#: c/c-parser.cc:28830 cp/parser.cc:54319
 #, gcc-internal-format
 msgid "directive with only %<device_type%> or %<indirect%> clauses"
 msgstr ""
 
-#: c/c-parser.cc:27640 cp/parser.cc:51109
+#: c/c-parser.cc:28833 cp/parser.cc:54322
 #, gcc-internal-format
 msgid ""
 "%<device_type%> clause must specify 'any' when used with an %<indirect%> "
 "clause"
 msgstr ""
 
-#: c/c-parser.cc:27689 c/c-parser.cc:27731 cp/parser.cc:51164
-#: cp/parser.cc:51211
+#: c/c-parser.cc:28897 cp/parser.cc:54392
 #, gcc-internal-format
-msgid "expected %<target%>"
+msgid "expected %<match%>"
+msgstr ""
+
+#: c/c-parser.cc:28950 c/c-parser.cc:29052 cp/parser.cc:54445
+#, gcc-internal-format
+msgid "expected %<target%> or %<variant%>"
 msgstr ""
 
-#: c/c-parser.cc:27703 cp/parser.cc:51177
+#: c/c-parser.cc:28964 cp/parser.cc:54458
 #, gcc-internal-format
-msgid "expected %<declare target%> or %<assumes%>"
+msgid "expected %<declare target%>, %<declare variant%>, or %<assumes%>"
 msgstr ""
 
-#: c/c-parser.cc:27738 cp/parser.cc:51218
+#: c/c-parser.cc:28997 cp/parser.cc:54496
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp end declare target%> without corresponding %<#pragma omp "
 "declare target%> or %<#pragma omp begin declare target%>"
 msgstr ""
 
-#: c/c-parser.cc:27749 c/c-parser.cc:27780 cp/parser.cc:51229
-#: cp/parser.cc:51260
+#: c/c-parser.cc:29008 c/c-parser.cc:29073 cp/parser.cc:54507
+#: cp/parser.cc:54572
 #, gcc-internal-format
 msgid "%qs in attribute syntax terminated with %qs in pragma syntax"
 msgstr ""
 
-#: c/c-parser.cc:27756 c/c-parser.cc:27785 cp/parser.cc:51236
-#: cp/parser.cc:51265
+#: c/c-parser.cc:29015 c/c-parser.cc:29078 cp/parser.cc:54514
+#: cp/parser.cc:54577
 #, gcc-internal-format
 msgid "%qs in pragma syntax terminated with %qs in attribute syntax"
 msgstr ""
 
-#: c/c-parser.cc:27793 cp/parser.cc:51273
+#: c/c-parser.cc:29029 cp/parser.cc:54528
+#, gcc-internal-format
+msgid ""
+"%<#pragma omp end declare variant%> without corresponding %<#pragma omp "
+"begin declare variant%>"
+msgstr ""
+
+#: c/c-parser.cc:29039 cp/parser.cc:54538
+#, gcc-internal-format
+msgid ""
+"%<begin declare variant%> in attribute syntax terminated with %<end declare "
+"variant%> in pragma syntax"
+msgstr ""
+
+#: c/c-parser.cc:29044 cp/parser.cc:54543
+#, gcc-internal-format
+msgid ""
+"%<begin declare variant%> in pragma syntax terminated with %<end declare "
+"variant%> in attribute syntax"
+msgstr ""
+
+#: c/c-parser.cc:29086 cp/parser.cc:54585
 #, gcc-internal-format
 msgid "expected %<declare%> or %<assumes%>"
 msgstr ""
 
-#: c/c-parser.cc:27820
+#: c/c-parser.cc:29104
+#, gcc-internal-format
+msgid "%<#pragma omp declare mapper%> not at file or block scope"
+msgstr ""
+
+#: c/c-parser.cc:29150
+#, gcc-internal-format
+msgid "%qT is not a struct or union type in %<#pragma omp declare mapper%>"
+msgstr ""
+
+#: c/c-parser.cc:29158
+#, gcc-internal-format
+msgid "redeclaration of %qs %<#pragma omp declare mapper%> for type %qT"
+msgstr ""
+
+#: c/c-parser.cc:29166
+#, gcc-internal-format
+msgid "%<#pragma omp declare mapper%> previously declared here"
+msgstr ""
+
+#: c/c-parser.cc:29202 cp/parser.cc:55580
+#, gcc-internal-format
+msgid "unexpected clause"
+msgstr ""
+
+#: c/c-parser.cc:29210 cp/parser.cc:55591
+#, gcc-internal-format
+msgid "missing %<map%> clause"
+msgstr ""
+
+#: c/c-parser.cc:29258
 #, gcc-internal-format
 msgid "%<#pragma omp declare reduction%> not at file or block scope"
 msgstr ""
 
-#: c/c-parser.cc:27897
+#: c/c-parser.cc:29335
 #, gcc-internal-format
 msgid "predeclared arithmetic type in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.cc:27901
+#: c/c-parser.cc:29339
 #, gcc-internal-format
 msgid "function or array type in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.cc:27904
+#: c/c-parser.cc:29342
 #, gcc-internal-format
 msgid "%<_Atomic%> qualified type in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.cc:27907
+#: c/c-parser.cc:29345
 #, gcc-internal-format
 msgid ""
 "const, volatile or restrict qualified type in %<#pragma omp declare "
 "reduction%>"
 msgstr ""
 
-#: c/c-parser.cc:27915
+#: c/c-parser.cc:29353
 #, gcc-internal-format
 msgid "redeclaration of %qs %<#pragma omp declare reduction%> for type %qT"
 msgstr ""
 
-#: c/c-parser.cc:27924
+#: c/c-parser.cc:29362
 #, gcc-internal-format
-msgid "previous %<#pragma omp declare reduction%>"
+msgid "%<#pragma omp declare reduction%> previously declared here"
 msgstr ""
 
-#: c/c-parser.cc:28045
+#: c/c-parser.cc:29483
 #, gcc-internal-format
 msgid "expected %<omp_priv%> or function-name"
 msgstr ""
 
-#: c/c-parser.cc:28056
+#: c/c-parser.cc:29494
 #, gcc-internal-format
 msgid "expected function-name %<(%>"
 msgstr ""
 
-#: c/c-parser.cc:28075
+#: c/c-parser.cc:29513
 #, gcc-internal-format
 msgid "one of the initializer call arguments should be %<&omp_priv%>"
 msgstr ""
 
-#: c/c-parser.cc:28209 cp/parser.cc:52195
+#: c/c-parser.cc:29653
 #, gcc-internal-format
 msgid "expected %<simd%>, %<reduction%>, %<target%> or %<variant%>"
 msgstr ""
 
-#: c/c-parser.cc:28280 cp/parser.cc:52288
+#: c/c-parser.cc:29724 cp/parser.cc:55786
 #, gcc-internal-format
 msgid ""
 "expected %<acq_rel%>, %<acquire%>, %<relaxed%>, %<release%> or %<seq_cst%>"
 msgstr ""
 
-#: c/c-parser.cc:28309 cp/parser.cc:52323
+#: c/c-parser.cc:29753 cp/parser.cc:55821
 #, gcc-internal-format
 msgid ""
 "expected %<unified_address%>, %<unified_shared_memory%>, %<self_maps%>, "
@@ -53052,384 +55251,432 @@ msgid ""
 "clause"
 msgstr ""
 
-#: c/c-parser.cc:28328 cp/parser.cc:52342
+#: c/c-parser.cc:29772 cp/parser.cc:55840
 #, gcc-internal-format
 msgid ""
 "%qs clause used lexically after first target construct or offloading API"
 msgstr ""
 
-#: c/c-parser.cc:28340 cp/parser.cc:52354
+#: c/c-parser.cc:29784 cp/parser.cc:55852
 #, gcc-internal-format
 msgid ""
 "more than one %<atomic_default_mem_order%> clause in a single compilation "
 "unit"
 msgstr ""
 
-#: c/c-parser.cc:28349 cp/parser.cc:52363
+#: c/c-parser.cc:29793 cp/parser.cc:55861
 #, gcc-internal-format
 msgid ""
 "%<atomic_default_mem_order%> clause used lexically after first %<atomic%> "
 "construct without memory order clause"
 msgstr ""
 
-#: c/c-parser.cc:28363 cp/parser.cc:52377
+#: c/c-parser.cc:29807 cp/parser.cc:55875
 #, gcc-internal-format
 msgid "%<pragma omp requires%> requires at least one clause"
 msgstr ""
 
-#: c/c-parser.cc:28382
+#: c/c-parser.cc:29826
 #, gcc-internal-format
 msgid "zero sized type %qT in %<reduction%> clause"
 msgstr ""
 
-#: c/c-parser.cc:28388
+#: c/c-parser.cc:29832
 #, gcc-internal-format
 msgid "variable sized type %qT in %<reduction%> clause"
 msgstr ""
 
-#: c/c-parser.cc:28506 cp/parser.cc:48884
+#: c/c-parser.cc:29950 cp/parser.cc:52052
 #, gcc-internal-format
 msgid "expected %<sizes%>"
 msgstr ""
 
-#: c/c-parser.cc:28535 cp/semantics.cc:9581 cp/semantics.cc:9598
+#: c/c-parser.cc:29979 cp/semantics.cc:9990 cp/semantics.cc:10007
 #, gcc-internal-format
 msgid "%<sizes%> argument needs positive integral constant"
 msgstr ""
 
-#: c/c-parser.cc:28651 cp/parser.cc:52434
+#: c/c-parser.cc:30095 cp/parser.cc:55932
 #, gcc-internal-format
 msgid "expected %<at%>, %<severity%> or %<message%> clause"
 msgstr ""
 
-#: c/c-parser.cc:28684 cp/parser.cc:52469
+#: c/c-parser.cc:30128 cp/parser.cc:55967
 #, gcc-internal-format
 msgid "expected %qs or %qs"
 msgstr ""
 
-#: c/c-parser.cc:28741 cp/parser.cc:52531
+#: c/c-parser.cc:30185 cp/parser.cc:56029
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp error%> with %<at(execution)%> clause may only be used in "
 "compound statements"
 msgstr ""
 
-#: c/c-parser.cc:28764 cp/parser.cc:52558
+#: c/c-parser.cc:30192 cp/parser.cc:56036
+#, gcc-internal-format
+msgid ""
+"%<#pragma omp error%> with %<at(execution)%> clause may not be used in "
+"intervening code"
+msgstr ""
+
+#: c/c-parser.cc:30219 cp/parser.cc:56067
 #, gcc-internal-format
 msgid "%<pragma omp error%> encountered: %s"
 msgstr ""
 
-#: c/c-parser.cc:28767 cp/parser.cc:52561
+#: c/c-parser.cc:30222 cp/parser.cc:56070
 #, gcc-internal-format
 msgid "%<pragma omp error%> encountered"
 msgstr ""
 
-#: c/c-parser.cc:28794 cp/parser.cc:49992
+#: c/c-parser.cc:30253 cp/parser.cc:53178
 #, gcc-internal-format
 msgid "expected at least one assumption clause"
 msgstr ""
 
-#: c/c-parser.cc:28880 c/c-parser.cc:29181 cp/parser.cc:50078
-#: cp/parser.cc:51497 cp/parser.cc:51525
+#: c/c-parser.cc:30346 c/c-parser.cc:30653 cp/parser.cc:53271
+#: cp/parser.cc:54814 cp/parser.cc:54841
 #, gcc-internal-format
 msgid "expected directive name"
 msgstr ""
 
-#: c/c-parser.cc:28891 cp/parser.cc:50089
+#: c/c-parser.cc:30358 cp/parser.cc:53283
 #, gcc-internal-format
 msgid ""
 "invalid OpenMP directive name in %qs clause argument: declarative, "
 "informational, and meta directives not permitted"
 msgstr ""
 
-#: c/c-parser.cc:28899 cp/parser.cc:50097
+#: c/c-parser.cc:30366 cp/parser.cc:53291
 #, gcc-internal-format
 msgid "unknown OpenMP directive name in %qs clause argument"
 msgstr ""
 
-#: c/c-parser.cc:28906 cp/parser.cc:50104
+#: c/c-parser.cc:30373 cp/parser.cc:53298
 #, gcc-internal-format
 msgid ""
 "%<%s%s%s%s%s%> directive mentioned in both %<absent%> and %<contains%> "
 "clauses"
 msgstr ""
 
-#: c/c-parser.cc:28917 cp/parser.cc:50115
+#: c/c-parser.cc:30384 cp/parser.cc:53309
 #, gcc-internal-format
 msgid "%<%s%s%s%s%s%> directive mentioned multiple times in %qs clauses"
 msgstr ""
 
-#: c/c-parser.cc:28940 cp/parser.cc:50142
+#: c/c-parser.cc:30407 cp/parser.cc:53336
 #, gcc-internal-format
 msgid "unknown assumption clause %qs"
 msgstr ""
 
-#: c/c-parser.cc:28953 cp/parser.cc:50152
+#: c/c-parser.cc:30420 cp/parser.cc:53346
 #, gcc-internal-format
 msgid "expected assumption clause"
 msgstr ""
 
-#: c/c-parser.cc:29082 cp/parser.cc:51395
+#: c/c-parser.cc:30549 cp/parser.cc:54707
 #, gcc-internal-format
 msgid "expected %<when%>, %<otherwise%>, or %<default%> clause"
 msgstr ""
 
-#: c/c-parser.cc:29096 cp/parser.cc:51410
+#: c/c-parser.cc:30561 cp/parser.cc:54720
+#, gcc-internal-format
+msgid ""
+"%<default%> clause on metadirectives deprecated since OpenMP 5.2, use "
+"%<otherwise%>"
+msgstr ""
+
+#: c/c-parser.cc:30571 cp/parser.cc:54730
 #, gcc-internal-format
 msgid "too many %<otherwise%> or %<default%> clauses in %<metadirective%>"
 msgstr ""
 
-#: c/c-parser.cc:29105 cp/parser.cc:51420
+#: c/c-parser.cc:30579 cp/parser.cc:54739
 #, gcc-internal-format
 msgid ""
 "%<otherwise%> or %<default%> clause must appear last in %<metadirective%>"
 msgstr ""
 
-#: c/c-parser.cc:29195 cp/parser.cc:51511
+#: c/c-parser.cc:30666 cp/parser.cc:54827
 #, gcc-internal-format
 msgid "unknown directive name"
 msgstr ""
 
-#: c/c-parser.cc:29210 cp/parser.cc:51531
+#: c/c-parser.cc:30681 cp/parser.cc:54847
 #, gcc-internal-format
 msgid "metadirectives cannot be used as variants of a %<metadirective%>"
 msgstr ""
 
-#: c/c-parser.cc:29216 cp/parser.cc:51537
+#: c/c-parser.cc:30687 cp/parser.cc:54853
 #, gcc-internal-format
 msgid "declarative directive variants of a %<metadirective%> are not supported"
 msgstr ""
 
-#: c/c-parser.cc:29541 cp/semantics.cc:10354
+#: c/c-parser.cc:31019 cp/parser.cc:51180
+#, gcc-internal-format
+msgid "%<omp groupprivate%>"
+msgstr ""
+
+#: c/c-parser.cc:31045 cp/semantics.cc:10768
 #, gcc-internal-format
 msgid "%qE declared %<threadprivate%> after first use"
 msgstr ""
 
-#: c/c-parser.cc:29543 cp/semantics.cc:10356
+#: c/c-parser.cc:31047 cp/semantics.cc:10770
 #, gcc-internal-format
 msgid "automatic variable %qE cannot be %<threadprivate%>"
 msgstr ""
 
-#: c/c-parser.cc:29547 cp/semantics.cc:10358
+#: c/c-parser.cc:31051 cp/semantics.cc:10772
 #, gcc-internal-format
 msgid "%<threadprivate%> %qE has incomplete type"
 msgstr ""
 
-#: c/c-parser.cc:29727 cp/parser.cc:53320
+#: c/c-parser.cc:31132 c/c-parser.cc:31201 cp/parser.cc:56698
+#: cp/semantics.cc:12646
+#, gcc-internal-format
+msgid "%<__transaction_atomic%> without transactional memory support enabled"
+msgstr ""
+
+#: c/c-parser.cc:31134 c/c-parser.cc:31203 cp/parser.cc:56696
+#: cp/semantics.cc:12644
+#, gcc-internal-format
+msgid "%<__transaction_relaxed%> without transactional memory support enabled"
+msgstr ""
+
+#: c/c-parser.cc:31235 cp/parser.cc:56829
 #, gcc-internal-format
 msgid "%<__transaction_cancel%> without transactional memory support enabled"
 msgstr ""
 
-#: c/c-parser.cc:29733 cp/parser.cc:53326
+#: c/c-parser.cc:31241 cp/parser.cc:56835
 #, gcc-internal-format
 msgid "%<__transaction_cancel%> within a %<__transaction_relaxed%>"
 msgstr ""
 
-#: c/c-parser.cc:29742
+#: c/c-parser.cc:31250
 #, gcc-internal-format
 msgid ""
 "outer %<__transaction_cancel%> not within outer %<__transaction_atomic%> or "
 "a %<transaction_may_cancel_outer%> function"
 msgstr ""
 
-#: c/c-parser.cc:29750 cp/parser.cc:53344
+#: c/c-parser.cc:31258 cp/parser.cc:56853
 #, gcc-internal-format
 msgid "%<__transaction_cancel%> not within %<__transaction_atomic%>"
 msgstr ""
 
-#: c/c-parser.cc:29843
+#: c/c-parser.cc:31351
 #, gcc-internal-format
 msgid "no closing brace"
 msgstr ""
 
-#: c/c-typeck.cc:238
+#: c/c-typeck.cc:246
 #, gcc-internal-format
 msgid "%qD has an incomplete type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:252 c/c-typeck.cc:12542 c/c-typeck.cc:12617 cp/call.cc:5062
+#: c/c-typeck.cc:260 c/c-typeck.cc:13076 c/c-typeck.cc:13150 cp/call.cc:5129
 #, gcc-internal-format
 msgid "invalid use of void expression"
 msgstr ""
 
-#: c/c-typeck.cc:260
+#: c/c-typeck.cc:268
 #, gcc-internal-format
 msgid "invalid use of flexible array member"
 msgstr ""
 
-#: c/c-typeck.cc:266 cp/typeck2.cc:347 rust/backend/rust-tree.cc:3906
+#: c/c-typeck.cc:274 cp/typeck2.cc:435 rust/backend/rust-tree.cc:3934
 #, gcc-internal-format
 msgid "invalid use of array with unspecified bounds"
 msgstr ""
 
-#: c/c-typeck.cc:274
+#: c/c-typeck.cc:282
 #, gcc-internal-format
 msgid "invalid use of undefined type %qT"
 msgstr ""
 
 #. If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL.
-#: c/c-typeck.cc:277
+#: c/c-typeck.cc:285
 #, gcc-internal-format
 msgid "invalid use of incomplete typedef %qT"
 msgstr ""
 
-#: c/c-typeck.cc:350
+#: c/c-typeck.cc:358
 #, gcc-internal-format
 msgid "%qT and %qT are in disjoint named address spaces"
 msgstr ""
 
-#: c/c-typeck.cc:571
+#: c/c-typeck.cc:579
 #, gcc-internal-format
 msgid "%qs attribute can only be applied to variadic functions"
 msgstr ""
 
-#: c/c-typeck.cc:958 c/c-typeck.cc:981
+#: c/c-typeck.cc:652
 #, gcc-internal-format
 msgid "function types not truly compatible in ISO C"
 msgstr ""
 
-#: c/c-typeck.cc:1137
+#: c/c-typeck.cc:1140
 #, gcc-internal-format
 msgid "cannot mix operands of decimal floating and vector types"
 msgstr ""
 
-#: c/c-typeck.cc:1142
+#: c/c-typeck.cc:1145
 #, gcc-internal-format
 msgid "cannot mix operands of decimal floating and complex types"
 msgstr ""
 
-#: c/c-typeck.cc:1147
+#: c/c-typeck.cc:1150
 #, gcc-internal-format
 msgid "cannot mix operands of decimal floating and other floating types"
 msgstr ""
 
-#: c/c-typeck.cc:1177
+#: c/c-typeck.cc:1180
 #, gcc-internal-format
 msgid "%<_Complex _BitInt(%d)%> unsupported"
 msgstr ""
 
-#: c/c-typeck.cc:1805
+#: c/c-typeck.cc:1829
 #, gcc-internal-format
 msgid ""
 "invalid use of pointers to arrays with different qualifiers in ISO C before "
 "C23"
 msgstr ""
 
-#: c/c-typeck.cc:1809
+#: c/c-typeck.cc:1833
 #, gcc-internal-format
 msgid "types are not quite compatible"
 msgstr ""
 
-#: c/c-typeck.cc:1813
+#: c/c-typeck.cc:1837
 #, gcc-internal-format
 msgid "pointer target types incompatible in C++"
 msgstr ""
 
-#: c/c-typeck.cc:2034
+#: c/c-typeck.cc:2055
 #, gcc-internal-format
 msgid "function return types not compatible due to %<volatile%>"
 msgstr ""
 
-#: c/c-typeck.cc:2284
+#: c/c-typeck.cc:2270
 #, gcc-internal-format
 msgid ""
 "converting an array compound literal to a pointer leads to a dangling "
 "pointer in C++"
 msgstr ""
 
-#: c/c-typeck.cc:3109 c/c-typeck.cc:10693
+#: c/c-typeck.cc:3050
+#, gcc-internal-format
+msgid ""
+"%<counted_by%> attribute is not allowed for a pointer to structure or union "
+"with flexible array member"
+msgstr ""
+
+#: c/c-typeck.cc:3292 c/c-typeck.cc:11224
 #, gcc-internal-format
 msgid "%qT has no member named %qE; did you mean %qE?"
 msgstr ""
 
-#: c/c-typeck.cc:3113 c/c-typeck.cc:10697
+#: c/c-typeck.cc:3296 c/c-typeck.cc:11228
 #, gcc-internal-format
 msgid "%qT has no member named %qE"
 msgstr ""
 
-#: c/c-typeck.cc:3122
+#: c/c-typeck.cc:3305
 #, gcc-internal-format
 msgid "accessing a member %qE of an atomic structure %qE"
 msgstr ""
 
-#: c/c-typeck.cc:3125
+#: c/c-typeck.cc:3308
 #, gcc-internal-format
 msgid "accessing a member %qE of an atomic union %qE"
 msgstr ""
 
-#: c/c-typeck.cc:3195
+#: c/c-typeck.cc:3375
 #, gcc-internal-format
 msgid ""
 "%qE is a pointer to pointer; did you mean to dereference it before applying "
 "%<->%> to it?"
 msgstr ""
 
-#: c/c-typeck.cc:3204
+#: c/c-typeck.cc:3384
 #, gcc-internal-format
 msgid "%qE is a pointer; did you mean to use %<->%>?"
 msgstr ""
 
-#: c/c-typeck.cc:3211
+#: c/c-typeck.cc:3391
 #, gcc-internal-format
 msgid "request for member %qE in something not a structure or union"
 msgstr ""
 
-#: c/c-typeck.cc:3259
+#: c/c-typeck.cc:3439
 #, gcc-internal-format
 msgid "dereferencing %<void *%> pointer"
 msgstr ""
 
-#: c/c-typeck.cc:3314
+#: c/c-typeck.cc:3494
 #, gcc-internal-format
 msgid "subscripted value is neither array nor pointer nor vector"
 msgstr ""
 
-#: c/c-typeck.cc:3324 cp/typeck.cc:4035 cp/typeck.cc:4130
+#: c/c-typeck.cc:3504 cp/typeck.cc:4273 cp/typeck.cc:4367
 #, gcc-internal-format
 msgid "array subscript is not an integer"
 msgstr ""
 
-#: c/c-typeck.cc:3330
+#: c/c-typeck.cc:3510
 #, gcc-internal-format
 msgid "subscripted value is pointer to function"
 msgstr ""
 
-#: c/c-typeck.cc:3385
+#: c/c-typeck.cc:3565
+#, gcc-internal-format
+msgid "array subscript is negative"
+msgstr ""
+
+#: c/c-typeck.cc:3578
 #, gcc-internal-format
-msgid "ISO C forbids subscripting %<register%> array"
+msgid "ISO C forbids subscripting %<register%> array before C2Y"
 msgstr ""
 
-#: c/c-typeck.cc:3388
+#: c/c-typeck.cc:3582
 #, gcc-internal-format
 msgid "ISO C90 forbids subscripting non-lvalue array"
 msgstr ""
 
-#: c/c-typeck.cc:3507
+#: c/c-typeck.cc:3787
 #, gcc-internal-format
 msgid "underspecified %qD referenced in its initializer"
 msgstr ""
 
-#: c/c-typeck.cc:3562
+#: c/c-typeck.cc:3832
+#, gcc-internal-format
+msgid "enum constant defined in struct or union is not visible in C++"
+msgstr ""
+
+#: c/c-typeck.cc:3834
 #, gcc-internal-format
 msgid "enum constant defined here"
 msgstr ""
 
-#: c/c-typeck.cc:3670 cp/typeck.cc:2162
+#: c/c-typeck.cc:3953 cp/typeck.cc:2277
 #, gcc-internal-format
 msgid "%<sizeof%> on array function parameter %qE will return size of %qT"
 msgstr ""
 
-#: c/c-typeck.cc:3855
+#: c/c-typeck.cc:4296
 #, gcc-internal-format
 msgid "called object %qE is not a function or function pointer"
 msgstr ""
 
-#: c/c-typeck.cc:3861
+#: c/c-typeck.cc:4302
 #, gcc-internal-format
 msgid "called object %qD is not a function or function pointer"
 msgstr ""
 
-#: c/c-typeck.cc:3867
+#: c/c-typeck.cc:4308
 #, gcc-internal-format
 msgid "called object is not a function or function pointer"
 msgstr ""
@@ -53437,1882 +55684,1942 @@ msgstr ""
 #. This situation leads to run-time undefined behavior.  We can't,
 #. therefore, simply error unless we can prove that all possible
 #. executions of the program must execute the code.
-#: c/c-typeck.cc:3896
+#: c/c-typeck.cc:4337
 #, gcc-internal-format
 msgid "function called through a non-compatible type"
 msgstr ""
 
-#: c/c-typeck.cc:3901 c/c-typeck.cc:3957
+#: c/c-typeck.cc:4342 c/c-typeck.cc:4398
 #, gcc-internal-format
 msgid "function with qualified void return type called"
 msgstr ""
 
-#: c/c-typeck.cc:4012
+#: c/c-typeck.cc:4453
 #, gcc-internal-format, gfc-internal-format
 msgid "type of formal parameter %d is incomplete"
 msgstr ""
 
-#: c/c-typeck.cc:4024
+#: c/c-typeck.cc:4465
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as integer rather than floating due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:4030
+#: c/c-typeck.cc:4471
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as integer rather than complex due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:4036
+#: c/c-typeck.cc:4477
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as complex rather than floating due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:4042
+#: c/c-typeck.cc:4483
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as floating rather than integer due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:4048
+#: c/c-typeck.cc:4489
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as complex rather than integer due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:4054
+#: c/c-typeck.cc:4495
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as floating rather than complex due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:4070
+#: c/c-typeck.cc:4511
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as %<float%> rather than %<double%> due to "
 "prototype"
 msgstr ""
 
-#: c/c-typeck.cc:4096
+#: c/c-typeck.cc:4537
 #, gcc-internal-format
 msgid "passing argument %d of %qE as %qT rather than %qT due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:4122
+#: c/c-typeck.cc:4563
 #, gcc-internal-format
 msgid "passing argument %d of %qE with different width due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:4146
+#: c/c-typeck.cc:4587
 #, gcc-internal-format
 msgid "passing argument %d of %qE as unsigned due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:4151
+#: c/c-typeck.cc:4592
 #, gcc-internal-format
 msgid "passing argument %d of %qE as signed due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:4325
+#: c/c-typeck.cc:4760
 #, gcc-internal-format
 msgid "too many arguments to method %qE; expected %i, have %i"
 msgstr ""
 
-#: c/c-typeck.cc:4329
+#: c/c-typeck.cc:4764
 #, gcc-internal-format
 msgid "too many arguments to function %qE; expected %i, have %i"
 msgstr ""
 
-#: c/c-typeck.cc:4339
+#: c/c-typeck.cc:4774
 #, gcc-internal-format
 msgid "too many arguments to built-in function %qE expecting %d"
 msgstr ""
 
-#: c/c-typeck.cc:4351
+#: c/c-typeck.cc:4787
 #, gcc-internal-format
 msgid ""
 "ISO C23 does not allow arguments for method %qE declared without parameters"
 msgstr ""
 
-#: c/c-typeck.cc:4356
+#: c/c-typeck.cc:4792
 #, gcc-internal-format
 msgid ""
 "ISO C23 does not allow arguments for function %qE declared without parameters"
 msgstr ""
 
-#: c/c-typeck.cc:4432
+#: c/c-typeck.cc:4871
 #, gcc-internal-format
 msgid "implicit conversion from %qT to %qT when passing argument to function"
 msgstr ""
 
-#: c/c-typeck.cc:4513
+#: c/c-typeck.cc:4952
 #, gcc-internal-format
 msgid "too few arguments to function %qE; expected at least %i, have %i"
 msgstr ""
 
-#: c/c-typeck.cc:4514
+#: c/c-typeck.cc:4953
 #, gcc-internal-format
 msgid "too few arguments to function %qE; expected %i, have %i"
 msgstr ""
 
-#: c/c-typeck.cc:4528
+#: c/c-typeck.cc:4967
 #, gcc-internal-format
 msgid "too few arguments to built-in function %qE expecting %u"
 msgstr ""
 
-#: c/c-typeck.cc:4706 c/c-typeck.cc:4734 cp/typeck.cc:5849 cp/typeck.cc:6137
+#: c/c-typeck.cc:5145 c/c-typeck.cc:5173 cp/typeck.cc:6099 cp/typeck.cc:6391
 #, gcc-internal-format
 msgid "comparison with string literal results in unspecified behavior"
 msgstr ""
 
-#: c/c-typeck.cc:4714 c/c-typeck.cc:4725 cp/typeck.cc:5886 cp/typeck.cc:5910
+#: c/c-typeck.cc:5153 c/c-typeck.cc:5164 cp/typeck.cc:6136 cp/typeck.cc:6160
 #, gcc-internal-format
 msgid "comparison between pointer and zero character constant"
 msgstr ""
 
-#: c/c-typeck.cc:4717 c/c-typeck.cc:4728 cp/typeck.cc:5889 cp/typeck.cc:5913
+#: c/c-typeck.cc:5156 c/c-typeck.cc:5167 cp/typeck.cc:6139 cp/typeck.cc:6163
 #, gcc-internal-format
 msgid "did you mean to dereference the pointer?"
 msgstr ""
 
-#: c/c-typeck.cc:4746 c/c-typeck.cc:4753 c/c-typeck.cc:6130 c/c-typeck.cc:6135
-#: c/c-typeck.cc:8683 cp/tree.cc:6464
+#: c/c-typeck.cc:5185 c/c-typeck.cc:5192 c/c-typeck.cc:6623 c/c-typeck.cc:6628
+#: c/c-typeck.cc:9177 cp/tree.cc:6860
 #, gcc-internal-format
 msgid "zero as null pointer constant"
 msgstr ""
 
-#: c/c-typeck.cc:4774
+#: c/c-typeck.cc:5213
 #, gcc-internal-format
 msgid "comparison between %qT and %qT"
 msgstr ""
 
-#: c/c-typeck.cc:4833
+#: c/c-typeck.cc:5272
 #, gcc-internal-format
 msgid "pointer of type %<void *%> used in subtraction"
 msgstr ""
 
-#: c/c-typeck.cc:4836
+#: c/c-typeck.cc:5275
 #, gcc-internal-format
 msgid "pointer to a function used in subtraction"
 msgstr ""
 
-#: c/c-typeck.cc:4870
+#: c/c-typeck.cc:5309
 #, gcc-internal-format
 msgid "arithmetic on pointer to an incomplete type"
 msgstr ""
 
-#: c/c-typeck.cc:4879 cp/typeck.cc:6937
+#: c/c-typeck.cc:5318 cp/typeck.cc:7197
 #, gcc-internal-format
 msgid "arithmetic on pointer to an empty aggregate"
 msgstr ""
 
-#: c/c-typeck.cc:5328
+#: c/c-typeck.cc:5769
 #, gcc-internal-format
 msgid "%<~%> on a boolean expression"
 msgstr ""
 
-#: c/c-typeck.cc:5332
+#: c/c-typeck.cc:5773
 #, gcc-internal-format
 msgid "did you mean to use logical not?"
 msgstr ""
 
-#: c/c-typeck.cc:5342
+#: c/c-typeck.cc:5783
 #, gcc-internal-format
 msgid "ISO C does not support %<~%> for complex conjugation"
 msgstr ""
 
-#: c/c-typeck.cc:5366
+#: c/c-typeck.cc:5807
 #, gcc-internal-format
 msgid "wrong type argument to absu"
 msgstr ""
 
-#: c/c-typeck.cc:5392
+#: c/c-typeck.cc:5833
 #, gcc-internal-format
 msgid "wrong type argument to unary exclamation mark"
 msgstr ""
 
-#: c/c-typeck.cc:5450
+#: c/c-typeck.cc:5891
 #, gcc-internal-format
 msgid "increment of enumeration value is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:5453
+#: c/c-typeck.cc:5894
 #, gcc-internal-format
 msgid "decrement of enumeration value is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:5460
+#: c/c-typeck.cc:5901
 #, gcc-internal-format
 msgid "increment of a boolean expression"
 msgstr ""
 
-#: c/c-typeck.cc:5463
+#: c/c-typeck.cc:5904
 #, gcc-internal-format
 msgid "decrement of a boolean expression"
 msgstr ""
 
-#: c/c-typeck.cc:5479
+#: c/c-typeck.cc:5920
 #, gcc-internal-format
 msgid "ISO C does not support %<++%> and %<--%> on complex types before C2Y"
 msgstr ""
 
-#: c/c-typeck.cc:5506 c/c-typeck.cc:5540
+#: c/c-typeck.cc:5947 c/c-typeck.cc:5981
 #, gcc-internal-format
 msgid "wrong type argument to increment"
 msgstr ""
 
-#: c/c-typeck.cc:5508 c/c-typeck.cc:5543
+#: c/c-typeck.cc:5949 c/c-typeck.cc:5984
 #, gcc-internal-format
 msgid "wrong type argument to decrement"
 msgstr ""
 
-#: c/c-typeck.cc:5528
+#: c/c-typeck.cc:5969
 #, gcc-internal-format
 msgid "increment of pointer to an incomplete type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:5532
+#: c/c-typeck.cc:5973
 #, gcc-internal-format
 msgid "decrement of pointer to an incomplete type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:5640
+#: c/c-typeck.cc:6122
 #, gcc-internal-format
 msgid "taking address of expression of type %<void%>"
 msgstr ""
 
-#: c/c-typeck.cc:5703 c/c-typeck.cc:5899
+#: c/c-typeck.cc:6185 c/c-typeck.cc:6382 d/d-codegen.cc:759
 #, gcc-internal-format
 msgid "cannot take address of bit-field %qD"
 msgstr ""
 
-#: c/c-typeck.cc:5717
+#: c/c-typeck.cc:6199
 #, gcc-internal-format
 msgid "cannot take address of scalar with reverse storage order"
 msgstr ""
 
-#: c/c-typeck.cc:5725
+#: c/c-typeck.cc:6207
 #, gcc-internal-format
 msgid "address of array with reverse scalar storage order requested"
 msgstr ""
 
-#: c/c-typeck.cc:5914
+#: c/c-typeck.cc:6401
 #, gcc-internal-format
 msgid "address of register compound literal requested"
 msgstr ""
 
-#: c/c-typeck.cc:5935
+#: c/c-typeck.cc:6423
 #, gcc-internal-format
 msgid "global register variable %qD used in nested function"
 msgstr ""
 
-#: c/c-typeck.cc:5938
+#: c/c-typeck.cc:6426
 #, gcc-internal-format
 msgid "register variable %qD used in nested function"
 msgstr ""
 
-#: c/c-typeck.cc:5943
+#: c/c-typeck.cc:6431
 #, gcc-internal-format
 msgid "address of global register variable %qD requested"
 msgstr ""
 
-#: c/c-typeck.cc:5945 d/d-codegen.cc:761
+#: c/c-typeck.cc:6440 d/d-codegen.cc:775
 #, gcc-internal-format
 msgid "address of register variable %qD requested"
 msgstr ""
 
-#: c/c-typeck.cc:6084
+#: c/c-typeck.cc:6578
 #, gcc-internal-format
 msgid "non-lvalue array in conditional expression"
 msgstr ""
 
-#: c/c-typeck.cc:6180
+#: c/c-typeck.cc:6613
+#, gcc-internal-format
+msgid "different enum types in conditional is invalid in C++: %qT vs %qT"
+msgstr ""
+
+#: c/c-typeck.cc:6673
 #, gcc-internal-format
 msgid ""
 "implicit conversion from %qT to %qT to match other result of conditional"
 msgstr ""
 
-#: c/c-typeck.cc:6239 c/c-typeck.cc:6245
+#: c/c-typeck.cc:6732 c/c-typeck.cc:6738
 #, gcc-internal-format
 msgid ""
 "operand of %<?:%> changes signedness from %qT to %qT due to unsignedness of "
 "other operand"
 msgstr ""
 
-#: c/c-typeck.cc:6262
+#: c/c-typeck.cc:6755
 #, gcc-internal-format
 msgid "ISO C forbids conditional expr with only one void side"
 msgstr ""
 
-#: c/c-typeck.cc:6279
+#: c/c-typeck.cc:6775
 #, gcc-internal-format
 msgid "pointers to disjoint address spaces used in conditional expression"
 msgstr ""
 
-#: c/c-typeck.cc:6303
+#: c/c-typeck.cc:6799
 #, gcc-internal-format
 msgid "pointer to array loses qualifier in conditional expression"
 msgstr ""
 
-#: c/c-typeck.cc:6307
+#: c/c-typeck.cc:6803
 #, gcc-internal-format
 msgid ""
 "pointer to array loses qualifier in conditional expression in ISO C before "
 "C23"
 msgstr ""
 
-#: c/c-typeck.cc:6312
+#: c/c-typeck.cc:6808
 #, gcc-internal-format
 msgid "ISO C forbids conditional expr between %<void *%> and function pointer"
 msgstr ""
 
-#: c/c-typeck.cc:6334
+#: c/c-typeck.cc:6832
 #, gcc-internal-format
 msgid "pointer type mismatch in conditional expression"
 msgstr ""
 
-#: c/c-typeck.cc:6337
+#: c/c-typeck.cc:6835
 #, gcc-internal-format
 msgid "first expression has type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:6338
+#: c/c-typeck.cc:6836
 #, gcc-internal-format
 msgid "second expression has type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:6349 c/c-typeck.cc:6362
+#: c/c-typeck.cc:6847 c/c-typeck.cc:6860
 #, gcc-internal-format
 msgid "pointer/integer type mismatch in conditional expression"
 msgstr ""
 
-#: c/c-typeck.cc:6389
+#: c/c-typeck.cc:6887
 #, gcc-internal-format
 msgid "type mismatch in conditional expression"
 msgstr ""
 
-#: c/c-typeck.cc:6505
+#: c/c-typeck.cc:7003
 #, gcc-internal-format
 msgid "ignoring return value of %qD, declared with attribute %<nodiscard%>: %E"
 msgstr ""
 
-#: c/c-typeck.cc:6509
+#: c/c-typeck.cc:7007
 #, gcc-internal-format
 msgid "ignoring return value of %qD, declared with attribute %<nodiscard%>"
 msgstr ""
 
-#: c/c-typeck.cc:6528
+#: c/c-typeck.cc:7026
 #, gcc-internal-format
 msgid ""
 "ignoring return value of type %qT, declared with attribute %<nodiscard%>: %E"
 msgstr ""
 
-#: c/c-typeck.cc:6533
+#: c/c-typeck.cc:7031
 #, gcc-internal-format
 msgid ""
 "ignoring return value of type %qT, declared with attribute %<nodiscard%>"
 msgstr ""
 
-#: c/c-typeck.cc:6542 cp/cvt.cc:1132 rust/backend/rust-tree.cc:640
+#: c/c-typeck.cc:7040 cp/cvt.cc:1145 rust/backend/rust-tree.cc:644
 #, gcc-internal-format
 msgid "in call to %qD, declared here"
 msgstr ""
 
-#: c/c-typeck.cc:6591
+#: c/c-typeck.cc:7089
 #, gcc-internal-format
 msgid "left-hand operand of comma expression has no effect"
 msgstr ""
 
-#: c/c-typeck.cc:6609 c/c-typeck.cc:13209
+#: c/c-typeck.cc:7107 c/c-typeck.cc:13753
 #, gcc-internal-format
 msgid "right-hand operand of comma expression has no effect"
 msgstr ""
 
-#: c/c-typeck.cc:6680
+#: c/c-typeck.cc:7178
 msgid "cast adds %q#v qualifier to function type"
 msgstr ""
 
-#: c/c-typeck.cc:6686
+#: c/c-typeck.cc:7184
 msgid "cast discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.cc:6721
+#: c/c-typeck.cc:7219
 #, gcc-internal-format
 msgid ""
 "to be safe all intermediate pointers in cast from %qT to %qT must be "
 "%<const%> qualified"
 msgstr ""
 
-#: c/c-typeck.cc:6818
+#: c/c-typeck.cc:7311
 #, gcc-internal-format
 msgid "cast specifies array type"
 msgstr ""
 
-#: c/c-typeck.cc:6824
+#: c/c-typeck.cc:7317
 #, gcc-internal-format
 msgid "cast specifies function type"
 msgstr ""
 
-#: c/c-typeck.cc:6839
+#: c/c-typeck.cc:7332
 #, gcc-internal-format
 msgid "ISO C forbids casting nonscalar to the same type"
 msgstr ""
 
-#: c/c-typeck.cc:6843
+#: c/c-typeck.cc:7336
 #, gcc-internal-format
 msgid "useless cast to type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:6863
+#: c/c-typeck.cc:7356
 #, gcc-internal-format
 msgid "ISO C forbids casts to union type"
 msgstr ""
 
-#: c/c-typeck.cc:6873
+#: c/c-typeck.cc:7366
 #, gcc-internal-format
 msgid "cast to union type from type not present in union"
 msgstr ""
 
-#: c/c-typeck.cc:6908
+#: c/c-typeck.cc:7401
 #, gcc-internal-format
 msgid ""
 "cast to %qs address space pointer from disjoint generic address space pointer"
 msgstr ""
 
-#: c/c-typeck.cc:6913
+#: c/c-typeck.cc:7406
 #, gcc-internal-format
 msgid ""
 "cast to generic address space pointer from disjoint %qs address space pointer"
 msgstr ""
 
-#: c/c-typeck.cc:6918
+#: c/c-typeck.cc:7411
 #, gcc-internal-format
 msgid ""
 "cast to %qs address space pointer from disjoint %qs address space pointer"
 msgstr ""
 
-#: c/c-typeck.cc:6951
+#: c/c-typeck.cc:7444
 #, gcc-internal-format
 msgid "cast increases required alignment of target type"
 msgstr ""
 
-#: c/c-typeck.cc:6963
+#: c/c-typeck.cc:7456
 #, gcc-internal-format
 msgid "cast from pointer to integer of different size"
 msgstr ""
 
-#: c/c-typeck.cc:6968
+#: c/c-typeck.cc:7462
 #, gcc-internal-format
 msgid "cast from function call of type %qT to non-matching type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:6978 cp/typeck.cc:9383
+#: c/c-typeck.cc:7472 cp/typeck.cc:9654
 #, gcc-internal-format
 msgid "cast to pointer from integer of different size"
 msgstr ""
 
-#: c/c-typeck.cc:6992
+#: c/c-typeck.cc:7486
 #, gcc-internal-format
 msgid "ISO C forbids conversion of function pointer to object pointer type"
 msgstr ""
 
-#: c/c-typeck.cc:7001
+#: c/c-typeck.cc:7495
 #, gcc-internal-format
 msgid "ISO C forbids conversion of object pointer to function pointer type"
 msgstr ""
 
-#: c/c-typeck.cc:7011
+#: c/c-typeck.cc:7505
 #, gcc-internal-format
 msgid "cast between incompatible function types from %qT to %qT"
 msgstr ""
 
-#: c/c-typeck.cc:7126
+#: c/c-typeck.cc:7620
 #, gcc-internal-format
 msgid "defining a type in a cast is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:7168
+#: c/c-typeck.cc:7662
 #, gcc-internal-format
 msgid "assignment to expression with array type"
 msgstr ""
 
-#: c/c-typeck.cc:7294
+#: c/c-typeck.cc:7803
 #, gcc-internal-format
 msgid "enum conversion in assignment is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:7496 c/c-typeck.cc:7515 c/c-typeck.cc:7572
+#: c/c-typeck.cc:7997 c/c-typeck.cc:8016 c/c-typeck.cc:8075
 #, gcc-internal-format
 msgid "(near initialization for %qs)"
 msgstr ""
 
-#: c/c-typeck.cc:7588
+#: c/c-typeck.cc:8091
 #, gcc-internal-format
 msgid "array initialized from parenthesized string constant"
 msgstr ""
 
-#: c/c-typeck.cc:7638
+#: c/c-typeck.cc:8141
 msgid "expected %e but argument is of type %e"
 msgstr ""
 
-#: c/c-typeck.cc:7672
+#: c/c-typeck.cc:8175
 #, gcc-internal-format
 msgid ""
 "%qD argument %d type is %qT where %qT is expected in a call to built-in "
 "function declared without prototype"
 msgstr ""
 
-#: c/c-typeck.cc:7675
+#: c/c-typeck.cc:8178
 #, gcc-internal-format
 msgid ""
 "%qD argument %d promotes to %qT where %qT is expected in a call to built-in "
 "function declared without prototype"
 msgstr ""
 
-#: c/c-typeck.cc:7680
+#: c/c-typeck.cc:8183
 #, gcc-internal-format
 msgid "built-in %qD declared here"
 msgstr ""
 
-#: c/c-typeck.cc:7737 c/c-typeck.cc:8645
+#: c/c-typeck.cc:8240 c/c-typeck.cc:9139
 msgid "%e declared here"
 msgstr ""
 
-#: c/c-typeck.cc:7930
+#: c/c-typeck.cc:8433
 #, gcc-internal-format
 msgid "enum conversion when passing argument %d of %qE is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:7935
+#: c/c-typeck.cc:8438
 #, gcc-internal-format
 msgid "expected %qT but argument is of type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:7939
+#: c/c-typeck.cc:8442
 #, gcc-internal-format
 msgid "enum conversion from %qT to %qT in assignment is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:7944
+#: c/c-typeck.cc:8447
 #, gcc-internal-format
 msgid "enum conversion from %qT to %qT in initialization is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:7949
+#: c/c-typeck.cc:8452
 #, gcc-internal-format
 msgid "enum conversion from %qT to %qT in return is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:7967
+#: c/c-typeck.cc:8470
 #, gcc-internal-format
 msgid "implicit conversion from %qT to %qT"
 msgstr ""
 
-#: c/c-typeck.cc:8149 c/c-typeck.cc:8548
+#: c/c-typeck.cc:8652 c/c-typeck.cc:9042
 msgid ""
 "passing argument %d of %qE makes %q#v qualified function pointer from "
 "unqualified"
 msgstr ""
 
-#: c/c-typeck.cc:8152 c/c-typeck.cc:8551
+#: c/c-typeck.cc:8655 c/c-typeck.cc:9045
 msgid "assignment makes %q#v qualified function pointer from unqualified"
 msgstr ""
 
-#: c/c-typeck.cc:8155 c/c-typeck.cc:8553
+#: c/c-typeck.cc:8658 c/c-typeck.cc:9047
 msgid "initialization makes %q#v qualified function pointer from unqualified"
 msgstr ""
 
-#: c/c-typeck.cc:8158 c/c-typeck.cc:8555
+#: c/c-typeck.cc:8661 c/c-typeck.cc:9049
 msgid "return makes %q#v qualified function pointer from unqualified"
 msgstr ""
 
-#: c/c-typeck.cc:8166 c/c-typeck.cc:8438 c/c-typeck.cc:8481
+#: c/c-typeck.cc:8669 c/c-typeck.cc:8932 c/c-typeck.cc:8975
 msgid ""
 "passing argument %d of %qE discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.cc:8168 c/c-typeck.cc:8440 c/c-typeck.cc:8483
+#: c/c-typeck.cc:8671 c/c-typeck.cc:8934 c/c-typeck.cc:8977
 msgid "assignment discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.cc:8170 c/c-typeck.cc:8442 c/c-typeck.cc:8485
+#: c/c-typeck.cc:8673 c/c-typeck.cc:8936 c/c-typeck.cc:8979
 msgid "initialization discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.cc:8172 c/c-typeck.cc:8444 c/c-typeck.cc:8487
+#: c/c-typeck.cc:8675 c/c-typeck.cc:8938 c/c-typeck.cc:8981
 msgid "return discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.cc:8181
+#: c/c-typeck.cc:8684
 #, gcc-internal-format
 msgid "ISO C prohibits argument conversion to union type"
 msgstr ""
 
-#: c/c-typeck.cc:8249
+#: c/c-typeck.cc:8743
 #, gcc-internal-format
 msgid "request for implicit conversion from %qT to %qT not permitted in C++"
 msgstr ""
 
-#: c/c-typeck.cc:8276
+#: c/c-typeck.cc:8770
 #, gcc-internal-format
 msgid "passing argument %d of %qE from pointer to non-enclosed address space"
 msgstr ""
 
-#: c/c-typeck.cc:8287
+#: c/c-typeck.cc:8781
 #, gcc-internal-format
 msgid "assignment from pointer to non-enclosed address space"
 msgstr ""
 
-#: c/c-typeck.cc:8298
+#: c/c-typeck.cc:8792
 #, gcc-internal-format
 msgid "initialization from pointer to non-enclosed address space"
 msgstr ""
 
-#: c/c-typeck.cc:8308
+#: c/c-typeck.cc:8802
 #, gcc-internal-format
 msgid "return from pointer to non-enclosed address space"
 msgstr ""
 
-#: c/c-typeck.cc:8324
+#: c/c-typeck.cc:8818
 #, gcc-internal-format
 msgid "expected %qT but pointer is of type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:8339
+#: c/c-typeck.cc:8833
 #, gcc-internal-format
 msgid "argument %d of %qE might be a candidate for a format attribute"
 msgstr ""
 
-#: c/c-typeck.cc:8345
+#: c/c-typeck.cc:8839
 #, gcc-internal-format
 msgid "assignment left-hand side might be a candidate for a format attribute"
 msgstr ""
 
-#: c/c-typeck.cc:8351
+#: c/c-typeck.cc:8845
 #, gcc-internal-format
 msgid ""
 "initialization left-hand side might be a candidate for a format attribute"
 msgstr ""
 
-#: c/c-typeck.cc:8356 cp/typeck.cc:10559
+#: c/c-typeck.cc:8850 cp/typeck.cc:10845
 #, gcc-internal-format
 msgid "return type might be a candidate for a format attribute"
 msgstr ""
 
-#: c/c-typeck.cc:8380
+#: c/c-typeck.cc:8874
 #, gcc-internal-format
 msgid "passing argument %d of %qE from incompatible scalar storage order"
 msgstr ""
 
-#: c/c-typeck.cc:8390
+#: c/c-typeck.cc:8884
 #, gcc-internal-format
 msgid ""
 "assignment to %qT from pointer type %qT with incompatible scalar storage "
 "order"
 msgstr ""
 
-#: c/c-typeck.cc:8400
+#: c/c-typeck.cc:8894
 #, gcc-internal-format
 msgid ""
 "initialization of %qT from pointer type %qT with incompatible scalar storage "
 "order"
 msgstr ""
 
-#: c/c-typeck.cc:8405
+#: c/c-typeck.cc:8899
 #, gcc-internal-format
 msgid ""
 "returning %qT from pointer type with incompatible scalar storage order %qT"
 msgstr ""
 
-#: c/c-typeck.cc:8455
+#: c/c-typeck.cc:8949
 #, gcc-internal-format
 msgid ""
 "ISO C forbids passing argument %d of %qE between function pointer and %<void "
 "*%>"
 msgstr ""
 
-#: c/c-typeck.cc:8458
+#: c/c-typeck.cc:8952
 #, gcc-internal-format
 msgid "ISO C forbids assignment between function pointer and %<void *%>"
 msgstr ""
 
-#: c/c-typeck.cc:8460
+#: c/c-typeck.cc:8954
 #, gcc-internal-format
 msgid "ISO C forbids initialization between function pointer and %<void *%>"
 msgstr ""
 
-#: c/c-typeck.cc:8462
+#: c/c-typeck.cc:8956
 #, gcc-internal-format
 msgid "ISO C forbids return between function pointer and %<void *%>"
 msgstr ""
 
-#: c/c-typeck.cc:8492
+#: c/c-typeck.cc:8986
 #, gcc-internal-format
 msgid "array with qualifier on the element is not qualified before C23"
 msgstr ""
 
-#: c/c-typeck.cc:8510
+#: c/c-typeck.cc:9004
 #, gcc-internal-format
 msgid "pointer targets in passing argument %d of %qE differ in signedness"
 msgstr ""
 
-#: c/c-typeck.cc:8518
+#: c/c-typeck.cc:9012
 #, gcc-internal-format
 msgid "pointer targets in assignment from %qT to %qT differ in signedness"
 msgstr ""
 
-#: c/c-typeck.cc:8524
+#: c/c-typeck.cc:9018
 #, gcc-internal-format
 msgid "pointer targets in initialization of %qT from %qT differ in signedness"
 msgstr ""
 
-#: c/c-typeck.cc:8529
+#: c/c-typeck.cc:9023
 #, gcc-internal-format
 msgid ""
 "pointer targets in returning %qT from a function with return type %qT differ "
 "in signedness"
 msgstr ""
 
-#: c/c-typeck.cc:8576
+#: c/c-typeck.cc:9070
 #, gcc-internal-format
 msgid "passing argument %d of %qE from incompatible pointer type"
 msgstr ""
 
-#: c/c-typeck.cc:8587
+#: c/c-typeck.cc:9081
 msgid "assignment to %e from pointer to %qD with incompatible type %e"
 msgstr ""
 
-#: c/c-typeck.cc:8593
+#: c/c-typeck.cc:9087
 msgid "assignment to %e from incompatible pointer type %e"
 msgstr ""
 
-#: c/c-typeck.cc:8602
+#: c/c-typeck.cc:9096
 msgid "initialization of %e from pointer to %qD with incompatible type %e"
 msgstr ""
 
-#: c/c-typeck.cc:8608
+#: c/c-typeck.cc:9102
 msgid "initialization of %e from incompatible pointer type %e"
 msgstr ""
 
-#: c/c-typeck.cc:8616
+#: c/c-typeck.cc:9110
 msgid ""
 "returning pointer to %qD of type %e from a function with incompatible type %e"
 msgstr ""
 
-#: c/c-typeck.cc:8622
+#: c/c-typeck.cc:9116
 msgid "returning %e from a function with incompatible return type %e"
 msgstr ""
 
-#: c/c-typeck.cc:8698
+#: c/c-typeck.cc:9194
 #, gcc-internal-format
 msgid "passing argument %d of %qE makes pointer from integer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:8708
+#: c/c-typeck.cc:9204
 #, gcc-internal-format
 msgid "assignment to %qT from %qT makes pointer from integer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:8714
+#: c/c-typeck.cc:9210
 #, gcc-internal-format
 msgid ""
 "initialization of %qT from %qT makes pointer from integer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:8719
+#: c/c-typeck.cc:9215
 #, gcc-internal-format
 msgid ""
 "returning %qT from a function with return type %qT makes pointer from "
 "integer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:8741
+#: c/c-typeck.cc:9237
 #, gcc-internal-format
 msgid "passing argument %d of %qE makes integer from pointer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:8751
+#: c/c-typeck.cc:9247
 #, gcc-internal-format
 msgid "assignment to %qT from %qT makes integer from pointer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:8757
+#: c/c-typeck.cc:9253
 #, gcc-internal-format
 msgid ""
 "initialization of %qT from %qT makes integer from pointer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:8761
+#: c/c-typeck.cc:9257
 #, gcc-internal-format
 msgid ""
 "returning %qT from a function with return type %qT makes integer from "
 "pointer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:8794
+#: c/c-typeck.cc:9290
 #, gcc-internal-format
 msgid "incompatible type for argument %d of %qE"
 msgstr ""
 
-#: c/c-typeck.cc:8805
+#: c/c-typeck.cc:9301
 #, gcc-internal-format
 msgid "incompatible types when assigning to type %qT from type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:8816
+#: c/c-typeck.cc:9312
 #, gcc-internal-format
 msgid "incompatible types when initializing type %qT using type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:8826
+#: c/c-typeck.cc:9322
 #, gcc-internal-format
 msgid "incompatible types when returning type %qT but %qT was expected"
 msgstr ""
 
-#: c/c-typeck.cc:8906
+#: c/c-typeck.cc:9402
 #, gcc-internal-format
 msgid "traditional C rejects automatic aggregate initialization"
 msgstr ""
 
-#: c/c-typeck.cc:9148
+#: c/c-typeck.cc:9644
 #, gcc-internal-format
 msgid "%<constexpr%> pointer initializer is not null"
 msgstr ""
 
-#: c/c-typeck.cc:9156
+#: c/c-typeck.cc:9661 c/c-typeck.cc:9671 c/c-typeck.cc:9733 c/c-typeck.cc:9886
 #, gcc-internal-format
-msgid "%<constexpr%> integer initializer is not an integer constant expression"
+msgid "%<constexpr%> initializer not representable in type of object"
 msgstr ""
 
-#: c/c-typeck.cc:9159 c/c-typeck.cc:9221 c/c-typeck.cc:9374
+#: c/c-typeck.cc:9667
 #, gcc-internal-format
-msgid "%<constexpr%> initializer not representable in type of object"
+msgid "%<constexpr%> integer initializer is not an integer constant expression"
 msgstr ""
 
-#: c/c-typeck.cc:9169
+#: c/c-typeck.cc:9681
 #, gcc-internal-format
 msgid "%<constexpr%> initializer is not an arithmetic constant expression"
 msgstr ""
 
-#: c/c-typeck.cc:9186
+#: c/c-typeck.cc:9698
 #, gcc-internal-format
 msgid "%<constexpr%> initializer for a real type is of complex type"
 msgstr ""
 
-#: c/c-typeck.cc:9195
+#: c/c-typeck.cc:9707
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> initializer for a binary floating-point type is of decimal type"
 msgstr ""
 
-#: c/c-typeck.cc:9339 c/c-typeck.cc:10307 cp/typeck2.cc:1241
+#: c/c-typeck.cc:9851 c/c-typeck.cc:10837 cp/typeck2.cc:1329
 #, gcc-internal-format
 msgid "initialization of a flexible array member"
 msgstr ""
 
-#: c/c-typeck.cc:9355 cp/typeck2.cc:1258
+#: c/c-typeck.cc:9867 cp/typeck2.cc:1346
 #, gcc-internal-format
 msgid ""
 "cannot initialize array of %qT from a string literal with type array of %qT"
 msgstr ""
 
-#: c/c-typeck.cc:9401
+#: c/c-typeck.cc:9913
 #, gcc-internal-format
 msgid ""
 "initializer-string for array of %qT is too long (%wu chars into %wu "
 "available)"
 msgstr ""
 
-#: c/c-typeck.cc:9406
+#: c/c-typeck.cc:9918
 #, gcc-internal-format
 msgid ""
 "initializer-string for array of %qT is too long for C++ (%wu chars into %wu "
 "available)"
 msgstr ""
 
-#: c/c-typeck.cc:9413
+#: c/c-typeck.cc:9925
 #, gcc-internal-format
 msgid ""
 "initializer-string for array of %qT truncates NUL terminator but destination "
 "lacks %qs attribute (%wu chars into %wu available)"
 msgstr ""
 
-#: c/c-typeck.cc:9425
+#: c/c-typeck.cc:9937
 #, gcc-internal-format
 msgid "array of inappropriate type initialized from string constant"
 msgstr ""
 
-#: c/c-typeck.cc:9493 cp/typeck.cc:2556
+#: c/c-typeck.cc:10005 cp/typeck.cc:2671
 #, gcc-internal-format
 msgid "invalid use of non-lvalue array"
 msgstr ""
 
-#: c/c-typeck.cc:9507 c/c-typeck.cc:9647 c/c-typeck.cc:10401
+#: c/c-typeck.cc:10019 c/c-typeck.cc:10159 c/c-typeck.cc:10931
 #, gcc-internal-format
 msgid "invalid initializer"
 msgstr ""
 
-#: c/c-typeck.cc:9519 c/c-typeck.cc:9543 c/c-typeck.cc:9546 c/c-typeck.cc:9554
-#: c/c-typeck.cc:9616 c/c-typeck.cc:11384 c/c-typeck.cc:11468
+#: c/c-typeck.cc:10031 c/c-typeck.cc:10055 c/c-typeck.cc:10058
+#: c/c-typeck.cc:10066 c/c-typeck.cc:10128 c/c-typeck.cc:11915
+#: c/c-typeck.cc:11999
 #, gcc-internal-format
 msgid "initializer element is not constant"
 msgstr ""
 
-#: c/c-typeck.cc:9528
+#: c/c-typeck.cc:10040
 #, gcc-internal-format
 msgid "array initialized from non-constant array expression"
 msgstr ""
 
-#: c/c-typeck.cc:9559 c/c-typeck.cc:9629 c/c-typeck.cc:11478
+#: c/c-typeck.cc:10071 c/c-typeck.cc:10141 c/c-typeck.cc:12009
 #, gcc-internal-format
 msgid "initializer element is not a constant expression"
 msgstr ""
 
-#: c/c-typeck.cc:9581 cp/typeck2.cc:1340
+#: c/c-typeck.cc:10093 cp/typeck2.cc:1428
 #, gcc-internal-format
 msgid "conversion from %qT to %qT changes value from %qd to %qd"
 msgstr ""
 
-#: c/c-typeck.cc:9623 c/c-typeck.cc:11473
+#: c/c-typeck.cc:10135 c/c-typeck.cc:12004
 #, gcc-internal-format
 msgid "initializer element is not computable at load time"
 msgstr ""
 
-#: c/c-typeck.cc:9929 cp/decl.cc:7908
+#: c/c-typeck.cc:10446 cp/decl.cc:8525
 #, gcc-internal-format
 msgid "opaque vector types cannot be initialized"
 msgstr ""
 
-#: c/c-typeck.cc:10155
+#: c/c-typeck.cc:10677
 #, gcc-internal-format
 msgid "extra brace group at end of initializer"
 msgstr ""
 
-#: c/c-typeck.cc:10239
+#: c/c-typeck.cc:10764 c/c-typeck.cc:10767
 #, gcc-internal-format
 msgid "braces around scalar initializer"
 msgstr ""
 
-#: c/c-typeck.cc:10309 c/c-typeck.cc:10313 c/c-typeck.cc:12076
-#: c/c-typeck.cc:12201 cp/typeck2.cc:1268 cp/typeck2.cc:1621
+#: c/c-typeck.cc:10839 c/c-typeck.cc:10843 c/c-typeck.cc:12607
+#: c/c-typeck.cc:12732 cp/typeck2.cc:1356 cp/typeck2.cc:1714
 #, gcc-internal-format
 msgid "initialization of flexible array member in a nested context"
 msgstr ""
 
-#: c/c-typeck.cc:10350
+#: c/c-typeck.cc:10880
 #, gcc-internal-format
 msgid "missing braces around initializer"
 msgstr ""
 
-#: c/c-typeck.cc:10373
+#: c/c-typeck.cc:10903
 #, gcc-internal-format
 msgid "missing initializer for field %qD of %qT"
 msgstr ""
 
-#: c/c-typeck.cc:10413
+#: c/c-typeck.cc:10943
 #, gcc-internal-format
 msgid "extra elements in scalar initializer"
 msgstr ""
 
-#: c/c-typeck.cc:10535 c/c-typeck.cc:10617
+#: c/c-typeck.cc:11066 c/c-typeck.cc:11148
 #, gcc-internal-format
 msgid "array index in non-array initializer"
 msgstr ""
 
-#: c/c-typeck.cc:10540 c/c-typeck.cc:10679
+#: c/c-typeck.cc:11071 c/c-typeck.cc:11210
 #, gcc-internal-format
 msgid "field name not in record or union initializer"
 msgstr ""
 
-#: c/c-typeck.cc:10590
+#: c/c-typeck.cc:11121
 #, gcc-internal-format
 msgid "array index in initializer not of integer type"
 msgstr ""
 
-#: c/c-typeck.cc:10599 c/c-typeck.cc:10608
+#: c/c-typeck.cc:11130 c/c-typeck.cc:11139
 #, gcc-internal-format
 msgid "array index in initializer is not an integer constant expression"
 msgstr ""
 
-#: c/c-typeck.cc:10613 c/c-typeck.cc:10615
+#: c/c-typeck.cc:11144 c/c-typeck.cc:11146
 #, gcc-internal-format
 msgid "nonconstant array index in initializer"
 msgstr ""
 
-#: c/c-typeck.cc:10619 c/c-typeck.cc:10622
+#: c/c-typeck.cc:11150 c/c-typeck.cc:11153
 #, gcc-internal-format
 msgid "array index in initializer exceeds array bounds"
 msgstr ""
 
-#: c/c-typeck.cc:10641
+#: c/c-typeck.cc:11172
 #, gcc-internal-format
 msgid "empty index range in initializer"
 msgstr ""
 
-#: c/c-typeck.cc:10650
+#: c/c-typeck.cc:11181
 #, gcc-internal-format
 msgid "array index range in initializer exceeds array bounds"
 msgstr ""
 
-#: c/c-typeck.cc:10784 c/c-typeck.cc:10839 c/c-typeck.cc:10880
-#: c/c-typeck.cc:10940 c/c-typeck.cc:10987 c/c-typeck.cc:11575
+#: c/c-typeck.cc:11315 c/c-typeck.cc:11370 c/c-typeck.cc:11411
+#: c/c-typeck.cc:11471 c/c-typeck.cc:11518 c/c-typeck.cc:12106
 #, gcc-internal-format
 msgid "initialized field overwritten"
 msgstr ""
 
-#: c/c-typeck.cc:10875 c/c-typeck.cc:10936 c/c-typeck.cc:10983
-#: c/c-typeck.cc:11572
+#: c/c-typeck.cc:11406 c/c-typeck.cc:11467 c/c-typeck.cc:11514
+#: c/c-typeck.cc:12103
 #, gcc-internal-format
 msgid "initialized field with side-effects overwritten"
 msgstr ""
 
-#: c/c-typeck.cc:11500
+#: c/c-typeck.cc:12031
 #, gcc-internal-format
 msgid "enum conversion in initialization is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:11946
+#: c/c-typeck.cc:12477
 #, gcc-internal-format
 msgid "excess elements in %qT initializer"
 msgstr ""
 
-#: c/c-typeck.cc:11958 c/c-typeck.cc:12035
+#: c/c-typeck.cc:12489 c/c-typeck.cc:12566
 #, gcc-internal-format
 msgid "excess elements in struct initializer"
 msgstr ""
 
-#: c/c-typeck.cc:11979
+#: c/c-typeck.cc:12510
 #, gcc-internal-format
 msgid ""
 "positional initialization of field in %<struct%> declared with "
 "%<designated_init%> attribute"
 msgstr ""
 
-#: c/c-typeck.cc:12050 c/c-typeck.cc:12176 cp/typeck2.cc:1245
+#: c/c-typeck.cc:12581 c/c-typeck.cc:12707 cp/typeck2.cc:1333
 #, gcc-internal-format
 msgid "non-static initialization of a flexible array member"
 msgstr ""
 
-#: c/c-typeck.cc:12146
+#: c/c-typeck.cc:12677
 #, gcc-internal-format
 msgid "excess elements in union initializer"
 msgstr ""
 
-#: c/c-typeck.cc:12168
+#: c/c-typeck.cc:12699
 #, gcc-internal-format
 msgid "traditional C rejects initialization of unions"
 msgstr ""
 
-#: c/c-typeck.cc:12267
+#: c/c-typeck.cc:12800
 #, gcc-internal-format
 msgid "excess elements in array initializer"
 msgstr ""
 
-#: c/c-typeck.cc:12344 c/c-typeck.cc:12346
+#: c/c-typeck.cc:12877 c/c-typeck.cc:12879
 #, gcc-internal-format
 msgid "excess elements in vector initializer"
 msgstr ""
 
-#: c/c-typeck.cc:12380
+#: c/c-typeck.cc:12913
 #, gcc-internal-format
 msgid "excess elements in scalar initializer"
 msgstr ""
 
-#: c/c-typeck.cc:12547 c/c-typeck.cc:12623 cp/semantics.cc:2349
-#: cp/semantics.cc:2458
+#: c/c-typeck.cc:13081 c/c-typeck.cc:13156 cp/semantics.cc:2371
+#: cp/semantics.cc:2481
 #, gcc-internal-format
 msgid "constraint allows registers outside of a function"
 msgstr ""
 
-#: c/c-typeck.cc:12559 cp/semantics.cc:2361
+#: c/c-typeck.cc:13093 cp/semantics.cc:2383
 #, gcc-internal-format
 msgid "side-effects in output operand outside of a function"
 msgstr ""
 
-#: c/c-typeck.cc:12570 cp/semantics.cc:2377
+#: c/c-typeck.cc:13104 cp/semantics.cc:2399
 #, gcc-internal-format
 msgid "output operand outside of a function is not constant"
 msgstr ""
 
-#: c/c-typeck.cc:12578 c/c-typeck.cc:12668 cp/semantics.cc:2388
-#: cp/semantics.cc:2521
+#: c/c-typeck.cc:13112 c/c-typeck.cc:13203 cp/semantics.cc:2410
+#: cp/semantics.cc:2546
 #, gcc-internal-format
 msgid "%<-%> modifier used inside of a function"
 msgstr ""
 
-#: c/c-typeck.cc:12636 cp/semantics.cc:2471
+#: c/c-typeck.cc:13169 cp/semantics.cc:2494
 #, gcc-internal-format
 msgid ""
 "%<:%> constraint operand is not address of a function or non-automatic "
 "variable"
 msgstr ""
 
-#: c/c-typeck.cc:12649 cp/semantics.cc:2484
+#: c/c-typeck.cc:13184 cp/semantics.cc:2509
 #, gcc-internal-format
 msgid "side-effects in input operand outside of a function"
 msgstr ""
 
-#: c/c-typeck.cc:12660 cp/semantics.cc:2499 cp/semantics.cc:2513
+#: c/c-typeck.cc:13195 cp/semantics.cc:2524 cp/semantics.cc:2538
 #, gcc-internal-format
 msgid "input operand outside of a function is not constant"
 msgstr ""
 
-#: c/c-typeck.cc:12712
+#: c/c-typeck.cc:13248
 #, gcc-internal-format
 msgid "ISO C forbids %<goto *expr;%>"
 msgstr ""
 
-#: c/c-typeck.cc:12718
+#: c/c-typeck.cc:13254
 #, gcc-internal-format
 msgid "computed goto must be pointer type"
 msgstr ""
 
-#: c/c-typeck.cc:12748 c/gimple-parser.cc:2648 cp/typeck.cc:11159
+#: c/c-typeck.cc:13284 c/gimple-parser.cc:2638 cp/typeck.cc:11447
 #, gcc-internal-format
 msgid "function declared %<noreturn%> has a %<return%> statement"
 msgstr ""
 
-#: c/c-typeck.cc:12777
+#: c/c-typeck.cc:13315
 #, gcc-internal-format
 msgid "%<return%> with no value, in function returning non-void"
 msgstr ""
 
-#: c/c-typeck.cc:12790 c/gimple-parser.cc:2658
+#: c/c-typeck.cc:13328 c/gimple-parser.cc:2648
 #, gcc-internal-format
 msgid "%<return%> with a value, in function returning void"
 msgstr ""
 
-#: c/c-typeck.cc:12793
+#: c/c-typeck.cc:13331
 #, gcc-internal-format
 msgid "ISO C forbids %<return%> with expression, in function returning void"
 msgstr ""
 
-#: c/c-typeck.cc:12875
+#: c/c-typeck.cc:13412
 #, gcc-internal-format
 msgid "function returns address of label"
 msgstr ""
 
-#: c/c-typeck.cc:12966 cp/semantics.cc:1924
+#: c/c-typeck.cc:13417
+#, gcc-internal-format
+msgid "function returns address of nested function referencing local context"
+msgstr ""
+
+#: c/c-typeck.cc:13510 cp/semantics.cc:1945
 #, gcc-internal-format
 msgid "switch quantity not an integer"
 msgstr ""
 
-#: c/c-typeck.cc:12991
+#: c/c-typeck.cc:13535
 #, gcc-internal-format
 msgid "%<long%> switch expression not converted to %<int%> in ISO C"
 msgstr ""
 
-#: c/c-typeck.cc:13029 c/c-typeck.cc:13037
+#: c/c-typeck.cc:13573 c/c-typeck.cc:13581
 #, gcc-internal-format
 msgid "case label is not an integer constant expression"
 msgstr ""
 
-#: c/c-typeck.cc:13043 cp/parser.cc:13521
+#: c/c-typeck.cc:13587 cp/parser.cc:14674
 #, gcc-internal-format
 msgid "case label not within a switch statement"
 msgstr ""
 
-#: c/c-typeck.cc:13045
+#: c/c-typeck.cc:13589
 #, gcc-internal-format
 msgid "%<default%> label not within a switch statement"
 msgstr ""
 
-#: c/c-typeck.cc:13121 cp/parser.cc:15291
+#: c/c-typeck.cc:13665 cp/parser.cc:16765
 #, gcc-internal-format
 msgid "break statement not within loop or switch"
 msgstr ""
 
-#: c/c-typeck.cc:13124 c/c-typeck.cc:13144 cp/decl.cc:4107 cp/parser.cc:15301
-#: cp/parser.cc:15322
+#: c/c-typeck.cc:13668 c/c-typeck.cc:13688 cp/decl.cc:4639 cp/parser.cc:16776
+#: cp/parser.cc:16798
 #, gcc-internal-format
 msgid "invalid exit from OpenMP structured block"
 msgstr ""
 
-#: c/c-typeck.cc:13127 cp/parser.cc:15304
+#: c/c-typeck.cc:13671 cp/parser.cc:16779
 #, gcc-internal-format
 msgid "break statement used with OpenMP for loop"
 msgstr ""
 
-#: c/c-typeck.cc:13141 cp/parser.cc:15314
+#: c/c-typeck.cc:13685 cp/parser.cc:16789
 #, gcc-internal-format
 msgid "continue statement not within a loop"
 msgstr ""
 
-#: c/c-typeck.cc:13191 cp/cp-gimplify.cc:277
+#: c/c-typeck.cc:13735 cp/cp-gimplify.cc:314
 #, gcc-internal-format
 msgid "statement with no effect"
 msgstr ""
 
-#: c/c-typeck.cc:13235
+#: c/c-typeck.cc:13779
 #, gcc-internal-format
 msgid "expression statement has incomplete type"
 msgstr ""
 
-#: c/c-typeck.cc:13526
+#: c/c-typeck.cc:14070
 #, gcc-internal-format
 msgid ""
 "the comparison will always evaluate as %<false%> for the pointer operand in "
 "%qE must not be NULL"
 msgstr ""
 
-#: c/c-typeck.cc:13531
+#: c/c-typeck.cc:14075
 #, gcc-internal-format
 msgid ""
 "the comparison will always evaluate as %<true%> for the pointer operand in "
 "%qE must not be NULL"
 msgstr ""
 
-#: c/c-typeck.cc:13549 c/c-typeck.cc:13587
+#: c/c-typeck.cc:14093 c/c-typeck.cc:14131
 #, gcc-internal-format
 msgid ""
 "the comparison will always evaluate as %<false%> for the address of %qE will "
 "never be NULL"
 msgstr ""
 
-#: c/c-typeck.cc:13554 c/c-typeck.cc:13592
+#: c/c-typeck.cc:14098 c/c-typeck.cc:14136
 #, gcc-internal-format
 msgid ""
 "the comparison will always evaluate as %<true%> for the address of %qE will "
 "never be NULL"
 msgstr ""
 
-#: c/c-typeck.cc:14184 c/c-typeck.cc:14348 cp/typeck.cc:6163
+#: c/c-typeck.cc:14730 c/c-typeck.cc:14900 cp/typeck.cc:6417
 #, gcc-internal-format
 msgid "comparing vectors with different element types"
 msgstr ""
 
-#: c/c-typeck.cc:14192 c/c-typeck.cc:14356 cp/typeck.cc:6177
+#: c/c-typeck.cc:14738 c/c-typeck.cc:14908 cp/typeck.cc:6431
 #, gcc-internal-format
 msgid "comparing vectors with different number of elements"
 msgstr ""
 
-#: c/c-typeck.cc:14207 c/c-typeck.cc:14371 cp/typeck.cc:6195
+#: c/c-typeck.cc:14753 c/c-typeck.cc:14923 cp/typeck.cc:6449
 #, gcc-internal-format
 msgid "comparison between types %qT and %qT"
 msgstr ""
 
-#: c/c-typeck.cc:14217 c/c-typeck.cc:14381 cp/typeck.cc:6212
+#: c/c-typeck.cc:14769 c/c-typeck.cc:14933 cp/typeck.cc:6472
 #, gcc-internal-format
 msgid "could not find an integer type of the same size as %qT"
 msgstr ""
 
-#: c/c-typeck.cc:14231 cp/typeck.cc:5838
+#: c/c-typeck.cc:14783 cp/typeck.cc:6088
 #, gcc-internal-format
 msgid "comparing floating-point with %<==%> or %<!=%> is unsafe"
 msgstr ""
 
-#: c/c-typeck.cc:14270 c/c-typeck.cc:14422
+#: c/c-typeck.cc:14822 c/c-typeck.cc:14974
 #, gcc-internal-format
 msgid "comparison of pointers to disjoint address spaces"
 msgstr ""
 
-#: c/c-typeck.cc:14277 c/c-typeck.cc:14283
+#: c/c-typeck.cc:14829 c/c-typeck.cc:14835
 #, gcc-internal-format
 msgid "ISO C forbids comparison of %<void *%> with function pointer"
 msgstr ""
 
-#: c/c-typeck.cc:14290 c/c-typeck.cc:14432
+#: c/c-typeck.cc:14842 c/c-typeck.cc:14984
 #, gcc-internal-format
 msgid "comparison of distinct pointer types lacks a cast"
 msgstr ""
 
-#: c/c-typeck.cc:14303 c/c-typeck.cc:14309 c/c-typeck.cc:14459
-#: c/c-typeck.cc:14465
+#: c/c-typeck.cc:14855 c/c-typeck.cc:14861 c/c-typeck.cc:15011
+#: c/c-typeck.cc:15017
 #, gcc-internal-format
 msgid "comparison between pointer and integer"
 msgstr ""
 
-#: c/c-typeck.cc:14410
+#: c/c-typeck.cc:14962
 #, gcc-internal-format
 msgid "comparison of complete and incomplete pointers"
 msgstr ""
 
-#: c/c-typeck.cc:14412
+#: c/c-typeck.cc:14964
 #, gcc-internal-format
 msgid "ISO C forbids ordered comparisons of pointers to functions"
 msgstr ""
 
-#: c/c-typeck.cc:14417
+#: c/c-typeck.cc:14969
 #, gcc-internal-format
 msgid "ordered comparison of pointer with null pointer"
 msgstr ""
 
-#: c/c-typeck.cc:14440 c/c-typeck.cc:14443 c/c-typeck.cc:14450
-#: c/c-typeck.cc:14453
+#: c/c-typeck.cc:14992 c/c-typeck.cc:14995 c/c-typeck.cc:15002
+#: c/c-typeck.cc:15005
 #, gcc-internal-format
 msgid "ordered comparison of pointer with integer zero"
 msgstr ""
 
-#: c/c-typeck.cc:14530
+#: c/c-typeck.cc:15082
 #, gcc-internal-format
 msgid ""
 "implicit conversion from %qT to %qT to match other operand of binary "
 "expression"
 msgstr ""
 
-#: c/c-typeck.cc:14848
+#: c/c-typeck.cc:15400
 #, gcc-internal-format
 msgid "used array that cannot be converted to pointer where scalar is required"
 msgstr ""
 
-#: c/c-typeck.cc:14852
+#: c/c-typeck.cc:15404
 #, gcc-internal-format
 msgid "used struct type value where scalar is required"
 msgstr ""
 
-#: c/c-typeck.cc:14856
+#: c/c-typeck.cc:15408
 #, gcc-internal-format
 msgid "used union type value where scalar is required"
 msgstr ""
 
-#: c/c-typeck.cc:14872
+#: c/c-typeck.cc:15424
 #, gcc-internal-format
 msgid "used vector type where scalar is required"
 msgstr ""
 
-#: c/c-typeck.cc:15075 cp/semantics.cc:12083
+#: c/c-typeck.cc:15627 cp/semantics.cc:12559
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp cancel%> must specify one of %<parallel%>, %<for%>, "
 "%<sections%> or %<taskgroup%> clauses"
 msgstr ""
 
-#: c/c-typeck.cc:15086 c/c-typeck.cc:15096 cp/semantics.cc:12094
-#: cp/semantics.cc:12104
+#: c/c-typeck.cc:15638 c/c-typeck.cc:15648 cp/semantics.cc:12570
+#: cp/semantics.cc:12580
 #, gcc-internal-format
 msgid "expected %<cancel%> %<if%> clause modifier"
 msgstr ""
 
-#: c/c-typeck.cc:15131 cp/semantics.cc:12139
+#: c/c-typeck.cc:15683 cp/semantics.cc:12615
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp cancellation point%> must specify one of %<parallel%>, "
 "%<for%>, %<sections%> or %<taskgroup%> clauses"
 msgstr ""
 
-#: c/c-typeck.cc:15199 cp/semantics.cc:5962 cp/semantics.cc:9073
+#: c/c-typeck.cc:15751 cp/semantics.cc:6070 cp/semantics.cc:9482
 #, gcc-internal-format
 msgid "%qD is not a variable in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15203 c/c-typeck.cc:17020 cp/semantics.cc:5966
-#: cp/semantics.cc:9077
+#: c/c-typeck.cc:15755 c/c-typeck.cc:17720 cp/semantics.cc:6074
+#: cp/semantics.cc:9486
 #, gcc-internal-format
 msgid "%qE is not a variable in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15211
+#: c/c-typeck.cc:15763
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15221 c/c-typeck.cc:17027 c/c-typeck.cc:17181
-#: cp/semantics.cc:5975 cp/semantics.cc:9084 cp/semantics.cc:9273
+#: c/c-typeck.cc:15773 c/c-typeck.cc:17727 c/c-typeck.cc:17881
+#: cp/semantics.cc:6083 cp/semantics.cc:9493 cp/semantics.cc:9682
 #, gcc-internal-format
 msgid "%qD is threadprivate variable in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15258 cp/semantics.cc:6009
+#: c/c-typeck.cc:15806 cp/semantics.cc:6117
 #, gcc-internal-format
 msgid "low bound %qE of array section does not have integral type"
 msgstr ""
 
-#: c/c-typeck.cc:15265 cp/semantics.cc:6016
+#: c/c-typeck.cc:15813 cp/semantics.cc:6124
 #, gcc-internal-format
 msgid "length %qE of array section does not have integral type"
 msgstr ""
 
-#: c/c-typeck.cc:15288 cp/semantics.cc:6049
+#: c/c-typeck.cc:15836 cp/semantics.cc:6157
 #, gcc-internal-format
 msgid "expected single pointer in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15306 c/c-typeck.cc:15373 c/c-typeck.cc:15666
-#: cp/semantics.cc:6067 cp/semantics.cc:6134
+#: c/c-typeck.cc:15854 c/c-typeck.cc:15921 c/c-typeck.cc:16212
+#: cp/semantics.cc:6175 cp/semantics.cc:6242
 #, gcc-internal-format
 msgid "zero length array section in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15325 cp/semantics.cc:6086
+#: c/c-typeck.cc:15873 cp/semantics.cc:6194
 #, gcc-internal-format
 msgid "for unknown bound array type length expression must be specified"
 msgstr ""
 
-#: c/c-typeck.cc:15333 cp/semantics.cc:6094
+#: c/c-typeck.cc:15881 cp/semantics.cc:6202
 #, gcc-internal-format
 msgid "negative low bound in array section in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15342 c/c-typeck.cc:15466 cp/semantics.cc:6103
-#: cp/semantics.cc:6227
+#: c/c-typeck.cc:15890 c/c-typeck.cc:16014 cp/semantics.cc:6211
+#: cp/semantics.cc:6335
 #, gcc-internal-format
 msgid "negative length in array section in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15359 cp/semantics.cc:6120
+#: c/c-typeck.cc:15907 cp/semantics.cc:6228
 #, gcc-internal-format
 msgid "low bound %qE above array section size in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15402 cp/semantics.cc:6163
+#: c/c-typeck.cc:15950 cp/semantics.cc:6271
 #, gcc-internal-format
 msgid "length %qE above array section size in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15417 cp/semantics.cc:6178
+#: c/c-typeck.cc:15965 cp/semantics.cc:6286
 #, gcc-internal-format
 msgid "high bound %qE above array section size in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15454 cp/semantics.cc:6215
+#: c/c-typeck.cc:16002 cp/semantics.cc:6323
 #, gcc-internal-format
 msgid "for array function parameter length expression must be specified"
 msgstr ""
 
-#: c/c-typeck.cc:15458 cp/semantics.cc:6219
+#: c/c-typeck.cc:16006 cp/semantics.cc:6327
 #, gcc-internal-format
 msgid "for pointer type length expression must be specified"
 msgstr ""
 
-#: c/c-typeck.cc:15486 c/c-typeck.cc:15605 cp/semantics.cc:6246
-#: cp/semantics.cc:6382
+#: c/c-typeck.cc:16034 c/c-typeck.cc:16151 cp/semantics.cc:6354
+#: cp/semantics.cc:6488
 #, gcc-internal-format
 msgid "array section is not contiguous in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15496 cp/semantics.cc:6256
+#: c/c-typeck.cc:16044 cp/semantics.cc:6364
 #, gcc-internal-format
 msgid "%qE does not have pointer or array type"
 msgstr ""
 
-#: c/c-typeck.cc:15872 cp/semantics.cc:7319
+#: c/c-typeck.cc:16418 cp/semantics.cc:7543
 #, gcc-internal-format
 msgid "iterator %qD has neither integral nor pointer type"
 msgstr ""
 
-#: c/c-typeck.cc:15879
+#: c/c-typeck.cc:16425
 #, gcc-internal-format
 msgid "iterator %qD has %<_Atomic%> qualified type"
 msgstr ""
 
-#: c/c-typeck.cc:15885 cp/semantics.cc:7326
+#: c/c-typeck.cc:16431 cp/semantics.cc:7550
 #, gcc-internal-format
 msgid "iterator %qD has const qualified type"
 msgstr ""
 
-#: c/c-typeck.cc:15898 cp/semantics.cc:7342
+#: c/c-typeck.cc:16444 cp/semantics.cc:7566
 #, gcc-internal-format
 msgid "iterator step with non-integral type"
 msgstr ""
 
-#: c/c-typeck.cc:15918 cp/semantics.cc:7378
+#: c/c-typeck.cc:16464 cp/semantics.cc:7602
 #, gcc-internal-format
 msgid "iterator %qD has zero step"
 msgstr ""
 
-#: c/c-typeck.cc:15945
+#: c/c-typeck.cc:16491
 #, gcc-internal-format
 msgid "type of iterator %qD refers to outer iterator %qD"
 msgstr ""
 
-#: c/c-typeck.cc:15952 cp/semantics.cc:7412
+#: c/c-typeck.cc:16498 cp/semantics.cc:7636
 #, gcc-internal-format
 msgid "begin expression refers to outer iterator %qD"
 msgstr ""
 
-#: c/c-typeck.cc:15958 cp/semantics.cc:7418
+#: c/c-typeck.cc:16504 cp/semantics.cc:7642
 #, gcc-internal-format
 msgid "end expression refers to outer iterator %qD"
 msgstr ""
 
-#: c/c-typeck.cc:15964 cp/semantics.cc:7424
+#: c/c-typeck.cc:16510 cp/semantics.cc:7648
 #, gcc-internal-format
 msgid "step expression refers to outer iterator %qD"
 msgstr ""
 
-#: c/c-typeck.cc:16001 cp/semantics.cc:7472
+#: c/c-typeck.cc:16547 cp/semantics.cc:7696
 #, gcc-internal-format
 msgid "expected pointer in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:16104 cp/semantics.cc:7638
+#: c/c-typeck.cc:16657 cp/semantics.cc:7869
 #, gcc-internal-format
 msgid ""
 "%<inscan%> and non-%<inscan%> %<reduction%> clauses on the same construct"
 msgstr ""
 
-#: c/c-typeck.cc:16126 cp/semantics.cc:7658
+#: c/c-typeck.cc:16679 cp/semantics.cc:7889
 #, gcc-internal-format
 msgid "%<inscan%> %<reduction%> clause with array section"
 msgstr ""
 
-#: c/c-typeck.cc:16152 c/c-typeck.cc:16162
+#: c/c-typeck.cc:16705 c/c-typeck.cc:16715
 #, gcc-internal-format
 msgid "%qD in %<reduction%> clause is a zero size array"
 msgstr ""
 
-#: c/c-typeck.cc:16182
+#: c/c-typeck.cc:16735
 #, gcc-internal-format
 msgid "%<_Atomic%> %qE in %<reduction%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:16194
+#: c/c-typeck.cc:16747
 #, gcc-internal-format
 msgid "zero sized type %qT in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:16202
+#: c/c-typeck.cc:16755
 #, gcc-internal-format
 msgid "variable sized type %qT in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:16246
+#: c/c-typeck.cc:16799
 #, gcc-internal-format
 msgid "%qE has invalid type for %<reduction(%s)%>"
 msgstr ""
 
-#: c/c-typeck.cc:16255 cp/semantics.cc:7211
+#: c/c-typeck.cc:16808 cp/semantics.cc:7408
 #, gcc-internal-format
 msgid "user defined reduction not found for %qE"
 msgstr ""
 
-#: c/c-typeck.cc:16343
+#: c/c-typeck.cc:16896
 #, gcc-internal-format
 msgid "variable length element type in array %<reduction%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:16361 c/c-typeck.cc:17275 cp/semantics.cc:9957
+#: c/c-typeck.cc:16914 c/c-typeck.cc:17975 cp/semantics.cc:10371
 #, gcc-internal-format
 msgid "%<nowait%> clause must not be used together with %<copyprivate%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:16373 cp/semantics.cc:10025
+#: c/c-typeck.cc:16926 cp/semantics.cc:10439
 #, gcc-internal-format
 msgid "%qE must be %<threadprivate%> for %<copyin%>"
 msgstr ""
 
-#: c/c-typeck.cc:16388 cp/semantics.cc:7701
+#: c/c-typeck.cc:16941 cp/semantics.cc:7932
 #, gcc-internal-format
 msgid ""
 "modifier should not be specified in %<linear%> clause on %<simd%> or %<for%> "
 "constructs when not using OpenMP 5.2 modifiers"
 msgstr ""
 
-#: c/c-typeck.cc:16397
+#: c/c-typeck.cc:16950
 #, gcc-internal-format
 msgid ""
 "linear clause applied to non-integral non-pointer variable with type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:16405
+#: c/c-typeck.cc:16958
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<linear%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:16424 cp/semantics.cc:7785
+#: c/c-typeck.cc:16977 cp/semantics.cc:8016
 #, gcc-internal-format
 msgid "%<linear%> clause step %qE is neither constant nor a parameter"
 msgstr ""
 
-#: c/c-typeck.cc:16454 c/c-typeck.cc:17175 c/c-typeck.cc:17446
-#: cp/semantics.cc:7872 cp/semantics.cc:9267 cp/semantics.cc:9658
+#: c/c-typeck.cc:17007 c/c-typeck.cc:17875 c/c-typeck.cc:18147
+#: cp/semantics.cc:8103 cp/semantics.cc:9676 cp/semantics.cc:10067
 #, gcc-internal-format
 msgid "%qE is not a variable in clause %qs"
 msgstr ""
 
-#: c/c-typeck.cc:16471 cp/semantics.cc:7890
+#: c/c-typeck.cc:17024 cp/semantics.cc:8121
 #, gcc-internal-format
 msgid "%qD appears more than once in data-sharing clauses"
 msgstr ""
 
-#: c/c-typeck.cc:16482 cp/semantics.cc:7901
+#: c/c-typeck.cc:17035 cp/semantics.cc:8132
 #, gcc-internal-format
 msgid "%qD appears more than once in reduction clauses"
 msgstr ""
 
-#: c/c-typeck.cc:16496 c/c-typeck.cc:16566 c/c-typeck.cc:16601
+#: c/c-typeck.cc:17049 c/c-typeck.cc:17119 c/c-typeck.cc:17154
+#: c/c-typeck.cc:17285 cp/semantics.cc:8950
 #, gcc-internal-format
 msgid "%qE appears more than once in data clauses"
 msgstr ""
 
-#: c/c-typeck.cc:16506 c/c-typeck.cc:16574 c/c-typeck.cc:16923
-#: c/c-typeck.cc:17075 c/c-typeck.cc:17083 c/c-typeck.cc:17099
-#: c/c-typeck.cc:17108 c/c-typeck.cc:17116 cp/semantics.cc:7915
-#: cp/semantics.cc:7925 cp/semantics.cc:8018 cp/semantics.cc:8026
-#: cp/semantics.cc:8073 cp/semantics.cc:8955 cp/semantics.cc:9145
-#: cp/semantics.cc:9153 cp/semantics.cc:9173 cp/semantics.cc:9182
-#: cp/semantics.cc:9190
+#: c/c-typeck.cc:17059 c/c-typeck.cc:17127 c/c-typeck.cc:17623
+#: c/c-typeck.cc:17775 c/c-typeck.cc:17783 c/c-typeck.cc:17799
+#: c/c-typeck.cc:17808 c/c-typeck.cc:17816 cp/semantics.cc:8146
+#: cp/semantics.cc:8156 cp/semantics.cc:8249 cp/semantics.cc:8257
+#: cp/semantics.cc:8304 cp/semantics.cc:9364 cp/semantics.cc:9554
+#: cp/semantics.cc:9562 cp/semantics.cc:9582 cp/semantics.cc:9591
+#: cp/semantics.cc:9599
 #, gcc-internal-format
 msgid "%qD appears more than once in data clauses"
 msgstr ""
 
-#: c/c-typeck.cc:16509 c/c-typeck.cc:16580 c/c-typeck.cc:17119
-#: cp/semantics.cc:7928 cp/semantics.cc:8032 cp/semantics.cc:9193
+#: c/c-typeck.cc:17062 c/c-typeck.cc:17133 c/c-typeck.cc:17819
+#: cp/semantics.cc:8159 cp/semantics.cc:8263 cp/semantics.cc:9602
 #, gcc-internal-format
 msgid "%qD appears both in data and map clauses"
 msgstr ""
 
-#: c/c-typeck.cc:16554 cp/semantics.cc:8005
+#: c/c-typeck.cc:17107 cp/semantics.cc:8236
 #, gcc-internal-format
 msgid "%qE is not a variable in clause %<firstprivate%>"
 msgstr ""
 
-#: c/c-typeck.cc:16594 cp/semantics.cc:8065
+#: c/c-typeck.cc:17147 cp/semantics.cc:8296
 #, gcc-internal-format
 msgid "%qE is not a variable in clause %<lastprivate%>"
 msgstr ""
 
-#: c/c-typeck.cc:16613 cp/semantics.cc:8487
+#: c/c-typeck.cc:17166 cp/semantics.cc:8729
 #, gcc-internal-format
 msgid "%qE is not a variable in %<aligned%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:16620
+#: c/c-typeck.cc:17173
 #, gcc-internal-format
 msgid "%qE in %<aligned%> clause is neither a pointer nor an array"
 msgstr ""
 
-#: c/c-typeck.cc:16627
+#: c/c-typeck.cc:17180
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<aligned%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:16634
+#: c/c-typeck.cc:17187
 #, gcc-internal-format
 msgid "%qE appears more than once in %<aligned%> clauses"
 msgstr ""
 
-#: c/c-typeck.cc:16647 cp/semantics.cc:8556
+#: c/c-typeck.cc:17200 cp/semantics.cc:8798
 #, gcc-internal-format
 msgid "%qE is not a variable in %<nontemporal%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:16653
+#: c/c-typeck.cc:17206
 #, gcc-internal-format
 msgid "%qE appears more than once in %<nontemporal%> clauses"
 msgstr ""
 
-#: c/c-typeck.cc:16666 cp/semantics.cc:8595
+#: c/c-typeck.cc:17219 cp/semantics.cc:8837
 #, gcc-internal-format
 msgid "%qE is not a variable in %<allocate%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:16672
+#: c/c-typeck.cc:17225
 #, gcc-internal-format
 msgid "%qE appears more than once in %<allocate%> clauses"
 msgstr ""
 
-#: c/c-typeck.cc:16744 cp/semantics.cc:8723
+#: c/c-typeck.cc:17296 cp/semantics.cc:8969
+#, gcc-internal-format
+msgid "allocator %qE must be of %<omp_allocator_handle_t%> type"
+msgstr ""
+
+#: c/c-typeck.cc:17314 cp/semantics.cc:8990
+#, gcc-internal-format
+msgid "allocator %qE must be either a variable or a predefined allocator"
+msgstr ""
+
+#: c/c-typeck.cc:17328
+#, gcc-internal-format
+msgid "modifiers cannot be used with predefined allocator %qE"
+msgstr ""
+
+#: c/c-typeck.cc:17345 cp/semantics.cc:9022
+#, gcc-internal-format
+msgid ""
+"memspace modifier %qE must be constant enum of %<omp_memspace_handle_t%> type"
+msgstr ""
+
+#: c/c-typeck.cc:17361 cp/semantics.cc:9042
+#, gcc-internal-format
+msgid ""
+"traits array %qE must be defined in same scope as the construct on which the "
+"clause appears"
+msgstr ""
+
+#: c/c-typeck.cc:17386 cp/semantics.cc:9066
+#, gcc-internal-format
+msgid "traits array %qE must be of %<const omp_alloctrait_t []%> type"
+msgstr ""
+
+#: c/c-typeck.cc:17389
+#, gcc-internal-format
+msgid "traits array must be of %<const omp_alloctrait_t []%> type"
+msgstr ""
+
+#: c/c-typeck.cc:17398 cp/semantics.cc:9082
+#, gcc-internal-format
+msgid "traits array must be initialized with constants"
+msgstr ""
+
+#: c/c-typeck.cc:17434 cp/semantics.cc:9119
 #, gcc-internal-format
 msgid "%<depend%> clause with %<depobj%> dependence type on array section"
 msgstr ""
 
-#: c/c-typeck.cc:16759 cp/semantics.cc:8738
+#: c/c-typeck.cc:17449 cp/semantics.cc:9134
 #, gcc-internal-format
 msgid ""
 "%<omp_all_memory%> used with %<depend%> kind other than %<out%> or %<inout%>"
 msgstr ""
 
-#: c/c-typeck.cc:16767 cp/semantics.cc:8756
+#: c/c-typeck.cc:17457 cp/semantics.cc:9152
 #, gcc-internal-format
 msgid "%qE is not lvalue expression nor array section in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:16788 cp/semantics.cc:8778
+#: c/c-typeck.cc:17478 cp/semantics.cc:9174
 #, gcc-internal-format
 msgid ""
 "%qE does not have %<omp_depend_t%> type in %<depend%> clause with %<depobj%> "
 "dependence type"
 msgstr ""
 
-#: c/c-typeck.cc:16798 cp/semantics.cc:8790
+#: c/c-typeck.cc:17488 cp/semantics.cc:9186
 #, gcc-internal-format
 msgid ""
 "%qE should not have %<omp_depend_t%> type in %<depend%> clause with "
 "dependence type other than %<depobj%>"
 msgstr ""
 
-#: c/c-typeck.cc:16859 cp/semantics.cc:8890
+#: c/c-typeck.cc:17559 cp/semantics.cc:9299
 #, gcc-internal-format
 msgid "array section does not have mappable type in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:16879 c/c-typeck.cc:16955 c/c-typeck.cc:16991
-#: cp/semantics.cc:8910 cp/semantics.cc:8989 cp/semantics.cc:9025
+#: c/c-typeck.cc:17579 c/c-typeck.cc:17655 c/c-typeck.cc:17691
+#: cp/semantics.cc:9319 cp/semantics.cc:9398 cp/semantics.cc:9434
 #, gcc-internal-format
 msgid "unsupported map expression %qE"
 msgstr ""
 
-#: c/c-typeck.cc:16919 c/c-typeck.cc:17096 cp/semantics.cc:8951
-#: cp/semantics.cc:9170
+#: c/c-typeck.cc:17619 c/c-typeck.cc:17796 cp/semantics.cc:9360
+#: cp/semantics.cc:9579
 #, gcc-internal-format
 msgid "%qD appears more than once in motion clauses"
 msgstr ""
 
-#: c/c-typeck.cc:16927 c/c-typeck.cc:17102 cp/semantics.cc:8959
-#: cp/semantics.cc:9176
+#: c/c-typeck.cc:17627 c/c-typeck.cc:17802 cp/semantics.cc:9368
+#: cp/semantics.cc:9585
 #, gcc-internal-format
 msgid "%qD appears more than once in map clauses"
 msgstr ""
 
-#: c/c-typeck.cc:17046 c/c-typeck.cc:17188 cp/semantics.cc:9113
-#: cp/semantics.cc:9281
+#: c/c-typeck.cc:17746 c/c-typeck.cc:17888 cp/semantics.cc:9522
+#: cp/semantics.cc:9690
 #, gcc-internal-format
 msgid "%qD does not have a mappable type in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:17171 cp/semantics.cc:9262
+#: c/c-typeck.cc:17871 cp/semantics.cc:9671
 #, gcc-internal-format
 msgid "%qE is neither a variable nor a function name in clause %qs"
 msgstr ""
 
-#: c/c-typeck.cc:17197 cp/semantics.cc:9293
+#: c/c-typeck.cc:17897 cp/semantics.cc:9702
 #, gcc-internal-format
 msgid "%qE appears more than once on the same %<declare target%> directive"
 msgstr ""
 
-#: c/c-typeck.cc:17211 cp/semantics.cc:9309
+#: c/c-typeck.cc:17911 cp/semantics.cc:9718
 #, gcc-internal-format
 msgid "%qD is not an argument in %<uniform%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:17214 cp/semantics.cc:9312
+#: c/c-typeck.cc:17914 cp/semantics.cc:9721
 #, gcc-internal-format
 msgid "%qE is not an argument in %<uniform%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:17233
+#: c/c-typeck.cc:17933
 #, gcc-internal-format
 msgid "%qs variable is not a pointer"
 msgstr ""
 
-#: c/c-typeck.cc:17240
+#: c/c-typeck.cc:17940
 #, gcc-internal-format
 msgid "%qs variable is neither a pointer nor an array"
 msgstr ""
 
-#: c/c-typeck.cc:17288 c/c-typeck.cc:17393 cp/semantics.cc:9908
+#: c/c-typeck.cc:17988 c/c-typeck.cc:18094 cp/semantics.cc:10322
 #, gcc-internal-format
 msgid "%<order%> clause must not be used together with %<ordered%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:17308 cp/semantics.cc:8830
+#: c/c-typeck.cc:18008 cp/semantics.cc:9226
 #, gcc-internal-format
 msgid "too many %qs clauses on a task construct"
 msgstr ""
 
-#: c/c-typeck.cc:17429 cp/semantics.cc:9626
+#: c/c-typeck.cc:18130 cp/semantics.cc:10035
 #, gcc-internal-format
 msgid "%<inbranch%> clause is incompatible with %<notinbranch%>"
 msgstr ""
 
-#: c/c-typeck.cc:17464 cp/semantics.cc:9720
+#: c/c-typeck.cc:18165 cp/semantics.cc:10129
 #, gcc-internal-format
 msgid "%qD appears more than once in action clauses"
 msgstr ""
 
-#: c/c-typeck.cc:17475 cp/semantics.cc:9734
+#: c/c-typeck.cc:18176 cp/semantics.cc:10143
 #, gcc-internal-format
 msgid "%qD must be of %<omp_interop_t%>"
 msgstr ""
 
-#: c/c-typeck.cc:17484 cp/semantics.cc:9743
+#: c/c-typeck.cc:18185 cp/semantics.cc:10152
 #, gcc-internal-format
 msgid "%qD shall not be const"
 msgstr ""
 
-#: c/c-typeck.cc:17533 cp/semantics.cc:10096
+#: c/c-typeck.cc:18234 cp/semantics.cc:10510
 #, gcc-internal-format
 msgid "%qE is predetermined %qs for %qs"
 msgstr ""
 
-#: c/c-typeck.cc:17543
+#: c/c-typeck.cc:18244
 #, gcc-internal-format
 msgid ""
 "%<const%> qualified %qE may appear only in %<shared%> or %<firstprivate%> "
 "clauses"
 msgstr ""
 
-#: c/c-typeck.cc:17574 cp/semantics.cc:9849
+#: c/c-typeck.cc:18280 cp/semantics.cc:10263
 #, gcc-internal-format
 msgid "%<simdlen%> clause value is bigger than %<safelen%> clause value"
 msgstr ""
 
-#: c/c-typeck.cc:17586 cp/semantics.cc:9862
+#: c/c-typeck.cc:18292 cp/semantics.cc:10276
 #, gcc-internal-format
 msgid ""
 "%<nonmonotonic%> schedule modifier specified together with %<ordered%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:17597 c/c-typeck.cc:17605 cp/semantics.cc:9871
-#: cp/semantics.cc:9900
+#: c/c-typeck.cc:18303 c/c-typeck.cc:18311 cp/semantics.cc:10285
+#: cp/semantics.cc:10314
 #, gcc-internal-format
 msgid "%qs clause specified together with %<inscan%> %<reduction%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:17653 cp/semantics.cc:9829
+#: c/c-typeck.cc:18359 cp/semantics.cc:10243
 #, gcc-internal-format
 msgid ""
 "%<linear%> clause step is a parameter %qD not specified in %<uniform%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:17704 cp/semantics.cc:9879
+#: c/c-typeck.cc:18410 cp/semantics.cc:10293
 #, gcc-internal-format
 msgid "%<nogroup%> clause must not be used together with %<reduction%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:17712 cp/semantics.cc:9890
+#: c/c-typeck.cc:18418 cp/semantics.cc:10304
 #, gcc-internal-format
 msgid ""
 "%<grainsize%> clause must not be used together with %<num_tasks%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:17720 cp/semantics.cc:9946
+#: c/c-typeck.cc:18426 cp/semantics.cc:10360
 #, gcc-internal-format
 msgid "%<full%> clause must not be used together with %<partial%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:17730 cp/semantics.cc:9919
+#: c/c-typeck.cc:18436 cp/semantics.cc:10333
 #, gcc-internal-format
 msgid "%<detach%> clause must not be used together with %<mergeable%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:17748 cp/semantics.cc:10121
+#: c/c-typeck.cc:18454 cp/semantics.cc:10535
 #, gcc-internal-format
 msgid ""
 "the event handle of a %<detach%> clause should not be in a data-sharing "
 "clause"
 msgstr ""
 
-#: c/c-typeck.cc:17766 cp/semantics.cc:10192
+#: c/c-typeck.cc:18472 cp/semantics.cc:10606
 #, gcc-internal-format
 msgid ""
 "%<depend%> clause requires action clauses with %<targetsync%> interop-type"
 msgstr ""
 
-#: c/c-typeck.cc:17770 cp/semantics.cc:10196
+#: c/c-typeck.cc:18476 cp/semantics.cc:10610
 #, gcc-internal-format
 msgid "%<init%> clause lacks the %<targetsync%> modifier"
 msgstr ""
 
-#: c/c-typeck.cc:17942
+#: c/c-typeck.cc:18658
 #, gcc-internal-format
 msgid "cannot use %<va_arg%> with reverse storage order"
 msgstr ""
 
-#: c/c-typeck.cc:17947
+#: c/c-typeck.cc:18663
 #, gcc-internal-format
 msgid "second argument to %<va_arg%> is of incomplete type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:17953
+#: c/c-typeck.cc:18669
 #, gcc-internal-format
 msgid "second argument to %<va_arg%> is a function type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:17959
+#: c/c-typeck.cc:18676 c/c-typeck.cc:18686
+#, gcc-internal-format
+msgid "second argument to %<va_arg%> is an array type %qT"
+msgstr ""
+
+#: c/c-typeck.cc:18682
 #, gcc-internal-format
 msgid "C++ requires promoted type, not enum type, in %<va_arg%>"
 msgstr ""
@@ -55332,2144 +57639,2293 @@ msgstr ""
 msgid "expected frequency value"
 msgstr ""
 
-#: c/gimple-parser.cc:374
+#: c/gimple-parser.cc:376
 #, gcc-internal-format
 msgid "edge not found"
 msgstr ""
 
-#: c/gimple-parser.cc:390
+#: c/gimple-parser.cc:395
 #, gcc-internal-format
 msgid "SSA name %qE with version %d has no definition"
 msgstr ""
 
-#: c/gimple-parser.cc:540 c/gimple-parser.cc:546
+#: c/gimple-parser.cc:545 c/gimple-parser.cc:551
 #, gcc-internal-format
 msgid "expected block index"
 msgstr ""
 
-#: c/gimple-parser.cc:554
+#: c/gimple-parser.cc:559
 #, gcc-internal-format
 msgid "invalid block index"
 msgstr ""
 
-#: c/gimple-parser.cc:565
+#: c/gimple-parser.cc:570
 #, gcc-internal-format
 msgid "expected block specifier"
 msgstr ""
 
-#: c/gimple-parser.cc:583
+#: c/gimple-parser.cc:588
 #, gcc-internal-format
 msgid "expected loop number"
 msgstr ""
 
-#: c/gimple-parser.cc:601
+#: c/gimple-parser.cc:606
 #, gcc-internal-format
 msgid "unknown block specifier"
 msgstr ""
 
-#: c/gimple-parser.cc:614 c/gimple-parser.cc:2159
+#: c/gimple-parser.cc:619 c/gimple-parser.cc:2149
 #, gcc-internal-format
 msgid "expected count value"
 msgstr ""
 
-#: c/gimple-parser.cc:637 c/gimple-parser.cc:734
+#: c/gimple-parser.cc:642 c/gimple-parser.cc:740
 #, gcc-internal-format
 msgid "stmts without block"
 msgstr ""
 
-#: c/gimple-parser.cc:674
+#: c/gimple-parser.cc:680
 #, gcc-internal-format
 msgid "duplicate loop header"
 msgstr ""
 
-#: c/gimple-parser.cc:891
+#: c/gimple-parser.cc:898
 #, gcc-internal-format
 msgid "invalid source block specification"
 msgstr ""
 
-#: c/gimple-parser.cc:956
+#: c/gimple-parser.cc:963
 #, gcc-internal-format
 msgid "unexpected RHS for assignment"
 msgstr ""
 
-#: c/gimple-parser.cc:1056
+#: c/gimple-parser.cc:1086
 #, gcc-internal-format
 msgid "%<&&%> not valid in GIMPLE"
 msgstr ""
 
-#: c/gimple-parser.cc:1059
+#: c/gimple-parser.cc:1089
 #, gcc-internal-format
 msgid "%<||%> not valid in GIMPLE"
 msgstr ""
 
-#: c/gimple-parser.cc:1248
+#: c/gimple-parser.cc:1208
 #, gcc-internal-format
 msgid "expected pointer as argument of unary %<*%>"
 msgstr ""
 
-#: c/gimple-parser.cc:1274
+#: c/gimple-parser.cc:1234
 #, gcc-internal-format
 msgid "%<!%> not valid in GIMPLE"
 msgstr ""
 
-#: c/gimple-parser.cc:1333 c/gimple-parser.cc:1719
+#: c/gimple-parser.cc:1293 c/gimple-parser.cc:1709
 #, gcc-internal-format
 msgid "expected constant offset"
 msgstr ""
 
-#: c/gimple-parser.cc:1394
+#: c/gimple-parser.cc:1354
 #, gcc-internal-format
 msgid "SSA name undeclared"
 msgstr ""
 
-#: c/gimple-parser.cc:1416
+#: c/gimple-parser.cc:1376
 #, gcc-internal-format
 msgid "base variable or SSA name undeclared"
 msgstr ""
 
-#: c/gimple-parser.cc:1423
+#: c/gimple-parser.cc:1383
 #, gcc-internal-format
 msgid "invalid base %qE for SSA name"
 msgstr ""
 
-#: c/gimple-parser.cc:1451
+#: c/gimple-parser.cc:1411
 #, gcc-internal-format
 msgid "expecting internal function name"
 msgstr ""
 
-#: c/gimple-parser.cc:1464
+#: c/gimple-parser.cc:1424
 #, gcc-internal-format
 msgid "unknown internal function %qE"
 msgstr ""
 
-#: c/gimple-parser.cc:1606
+#: c/gimple-parser.cc:1569
 #, gcc-internal-format
 msgid "invalid type of %<__MEM%> operand"
 msgstr ""
 
-#: c/gimple-parser.cc:1649
+#: c/gimple-parser.cc:1612
 #, gcc-internal-format
 msgid "expected constant offset for %<__MEM%> operand"
 msgstr ""
 
-#: c/gimple-parser.cc:1660
+#: c/gimple-parser.cc:1623
 #, gcc-internal-format
 msgid "expected constant step for %<__MEM%> operand"
 msgstr ""
 
-#: c/gimple-parser.cc:1713
+#: c/gimple-parser.cc:1644
+#, gcc-internal-format
+msgid "invalid clique/base pair"
+msgstr ""
+
+#: c/gimple-parser.cc:1703
 #, gcc-internal-format
 msgid "expected constant size"
 msgstr ""
 
-#: c/gimple-parser.cc:1751 c/gimple-parser.cc:1781 c/gimple-parser.cc:1821
-#: c/gimple-parser.cc:1829 c/gimple-parser.cc:1838
+#: c/gimple-parser.cc:1741 c/gimple-parser.cc:1771 c/gimple-parser.cc:1811
+#: c/gimple-parser.cc:1819 c/gimple-parser.cc:1828
 #, gcc-internal-format
 msgid "invalid _Literal"
 msgstr ""
 
-#: c/gimple-parser.cc:1760
+#: c/gimple-parser.cc:1750
 #, gcc-internal-format
 msgid "invalid type for _Literal with constructor"
 msgstr ""
 
-#: c/gimple-parser.cc:1873
+#: c/gimple-parser.cc:1863
 #, gcc-internal-format
 msgid "anonymous SSA name cannot have default definition"
 msgstr ""
 
-#: c/gimple-parser.cc:1957
+#: c/gimple-parser.cc:1947
 #, gcc-internal-format
 msgid "invalid call to non-function"
 msgstr ""
 
-#: c/gimple-parser.cc:2013
+#: c/gimple-parser.cc:2003
 #, gcc-internal-format
 msgid "dereference of non-pointer"
 msgstr ""
 
-#: c/gimple-parser.cc:2140
+#: c/gimple-parser.cc:2130
 #, gcc-internal-format
 msgid "expected pass name"
 msgstr ""
 
-#: c/gimple-parser.cc:2179
+#: c/gimple-parser.cc:2169
 #, gcc-internal-format
 msgid "invalid operation"
 msgstr ""
 
-#: c/gimple-parser.cc:2344
+#: c/gimple-parser.cc:2334
 #, gcc-internal-format
 msgid "comparison required"
 msgstr ""
 
-#: c/gimple-parser.cc:2396
+#: c/gimple-parser.cc:2386
 #, gcc-internal-format
 msgid "%<catch%> is not supported"
 msgstr ""
 
-#: c/gimple-parser.cc:2398
+#: c/gimple-parser.cc:2388
 #, gcc-internal-format
 msgid "expected %<finally%> or %<catch%>"
 msgstr ""
 
-#: c/gimple-parser.cc:2442 c/gimple-parser.cc:2479
+#: c/gimple-parser.cc:2432 c/gimple-parser.cc:2469
 #, gcc-internal-format
 msgid "expected goto expression"
 msgstr ""
 
-#: c/gimple-parser.cc:2450
+#: c/gimple-parser.cc:2440
 #, gcc-internal-format
 msgid "expected else statement"
 msgstr ""
 
-#: c/gimple-parser.cc:2593
+#: c/gimple-parser.cc:2583
 #, gcc-internal-format
 msgid "expected case label"
 msgstr ""
 
-#: cobol/cdf-copy.cc:109
+#: cobol/cdf-copy.cc:108
 msgid "REPLACING %zu characters exceeds system capacity'%s'"
 msgstr ""
 
-#: cobol/cobol1.cc:275
+#: cobol/cobol1.cc:274
 #, gcc-internal-format
 msgid "COBOL requires a 64-bit configuration"
 msgstr ""
 
-#: cobol/cobol1.cc:326
+#: cobol/cobol1.cc:325
 #, gcc-internal-format, gfc-internal-format
 msgid "exception '%s'"
 msgstr ""
 
-#: cobol/cobol1.cc:408
+#: cobol/cobol1.cc:366
+#, gcc-internal-format
+msgid "no such charset %qs"
+msgstr ""
+
+#: cobol/cobol1.cc:372
+#, gcc-internal-format
+msgid "no such national charset %qs"
+msgstr ""
+
+#: cobol/cobol1.cc:435
 #, gcc-internal-format, gfc-internal-format
 msgid "could not execute preprocessor %s"
 msgstr ""
 
-#: cobol/cobol1.cc:413
+#: cobol/cobol1.cc:441
 #, gcc-internal-format, gfc-internal-format
 msgid "could not include %s"
 msgstr ""
 
 #. This isn't right.  All OPT_main should be replaced
-#: cobol/cobol1.cc:419
+#: cobol/cobol1.cc:447
 #, gcc-internal-format
 msgid "We should never see a non-equal dash-main in cobol1.c"
 msgstr ""
 
-#: cobol/except.cc:53
-msgid "no such exception: 0x%04x"
+#: cobol/except.cc:54
+#, gcc-internal-format
+msgid "no such exception: 0x%x"
 msgstr ""
 
-#: cobol/genapi.cc:332
+#: cobol/genapi.cc:353
 #, gcc-internal-format
 msgid "Probable cause: it was referenced without being defined."
 msgstr ""
 
-#: cobol/genapi.cc:571
+#: cobol/genapi.cc:597
 #, gcc-internal-format
-msgid "Nice try, but you can't fire me. I quit!"
+msgid "That string should not be that long."
 msgstr ""
 
-#: cobol/genapi.cc:1486
+#: cobol/genapi.cc:1213
 #, gcc-internal-format, gfc-internal-format
-msgid "%s(): Knows not the variable type %s for %s"
+msgid "%s should not be null"
 msgstr ""
 
-#: cobol/genapi.cc:2176
+#: cobol/genapi.cc:1776
 #, gcc-internal-format, gfc-internal-format
-msgid "I don't know how to MOVE an alphabetical string to %s(%s) \n"
+msgid "%s: Knows not the variable type %s for %s"
 msgstr ""
 
-#: cobol/genapi.cc:2244
+#: cobol/genapi.cc:2110
 #, gcc-internal-format, gfc-internal-format
-msgid "%s(): field->type %s must be literal or alphanumeric"
+msgid "%s: Invalid field type %s:"
 msgstr ""
 
-#: cobol/genapi.cc:5728
-#, gcc-internal-format, gfc-internal-format
-msgid "%s(): Invalid field type %s:"
+#: cobol/genapi.cc:4392
+#, gcc-internal-format
+msgid "Not valid for ACCEPT statement."
 msgstr ""
 
-#: cobol/genapi.cc:6929 cobol/genapi.cc:6935 cobol/genapi.cc:6941
-#, gcc-internal-format, gfc-internal-format
+#: cobol/genapi.cc:5445
+#, gcc-internal-format
+msgid "Attempting to send to an input device."
+msgstr ""
+
+#: cobol/genapi.cc:5468
+#, gcc-internal-format
+msgid "Not valid for DISPLAY statement."
+msgstr ""
+
+#: cobol/genapi.cc:7736 cobol/genapi.cc:7742 cobol/genapi.cc:7748
+#, gcc-internal-format
 msgid ""
-"parser_logop() was called with variable %s on line %d, which is not a "
-"FldConditional\n"
+"%<parser_logop()%> was called with variable %s on line %d, which is not a "
+"FldConditional"
 msgstr ""
 
-#: cobol/genapi.cc:7048 cobol/genapi.cc:7112
-#, gcc-internal-format, gfc-internal-format
+#: cobol/genapi.cc:7855
+#, gcc-internal-format
 msgid ""
-"parser_relop() was called with variable %s, which is not a FldConditional\n"
+"%<parser_relop%> was called with variable %qs, which is not a FldConditional"
 msgstr ""
 
-#: cobol/genapi.cc:7158
-#, gcc-internal-format, gfc-internal-format
+#: cobol/genapi.cc:7919
+#, gcc-internal-format
 msgid ""
-"parser_if() was called with variable %s, which is not a FldConditional\n"
+"%<parser_relop()%> was called with variable %s, which is not a FldConditional"
 msgstr ""
 
-#: cobol/genapi.cc:7411
-#, gcc-internal-format, gfc-internal-format
-msgid "###### candidate %s has unimplemented CVT_type %d(%s)\n"
+#: cobol/genapi.cc:7964
+#, gcc-internal-format
+msgid ""
+"%<parser_if()%> was called with variable %s, which is not a FldConditional"
 msgstr ""
 
-#: cobol/genapi.cc:7422
-#, gcc-internal-format, gfc-internal-format
-msgid "###### unknown setop_t code %d\n"
+#: cobol/genapi.cc:8215
+#, gcc-internal-format
+msgid "candidate %s has unimplemented %<CVT_type%> %d(%s)"
 msgstr ""
 
-#: cobol/genapi.cc:7618
-msgid "%s:%d: %zu exceeds MAXIMUM_UNTILS of %d, line %d"
+#: cobol/genapi.cc:8226
+#, gcc-internal-format
+msgid "unknown %<setop_t%> code %d"
 msgstr ""
 
-#: cobol/genapi.cc:8624
+#: cobol/genapi.cc:8415
+#, gcc-internal-format
+msgid "%s:%d: %u exceeds %<MAXIMUM_UNTILS%> of %d, line %d"
+msgstr ""
+
+#: cobol/genapi.cc:9406
 #, gcc-internal-format, gfc-internal-format
 msgid "%s:%d: ignoring subscripts"
 msgstr ""
 
-#: cobol/genapi.cc:8846 cobol/genapi.cc:9306
+#: cobol/genapi.cc:9629 cobol/genapi.cc:10121
 #, gcc-internal-format, gfc-internal-format
-msgid "%s(): called with NULL *file"
+msgid "%s: called with NULL *file"
 msgstr ""
 
-#: cobol/genapi.cc:8971
-#, gcc-internal-format, gfc-internal-format
-msgid "%s:%d file %s access mode is 'file_inaccessible_e' in %s"
+#: cobol/genapi.cc:9754
+#, gcc-internal-format
+msgid "%s:%d file %s access mode is %<file_inaccessible_e%> in %s"
 msgstr ""
 
-#: cobol/genapi.cc:9044
+#: cobol/genapi.cc:9861
 #, gcc-internal-format
-msgid "parser_file_open called with NULL *file"
+msgid "%<parser_file_open%> called with NULL *file"
 msgstr ""
 
-#: cobol/genapi.cc:9049
-#, gcc-internal-format, gfc-internal-format
-msgid "parser_file_open for %s called with NULL var_decl_node"
+#: cobol/genapi.cc:9866
+#, gcc-internal-format
+msgid "%<parser_file_open%> for %s called with NULL %<var_decl_node%>"
 msgstr ""
 
-#: cobol/genapi.cc:9054
+#: cobol/genapi.cc:9872
 #, gcc-internal-format, gfc-internal-format
 msgid "EXTEND can only be used where %s is ACCESS MODE SEQUENTIAL"
 msgstr ""
 
-#: cobol/genapi.cc:9122
+#: cobol/genapi.cc:9932
 #, gcc-internal-format
-msgid "parser_file_close called with NULL *file"
+msgid "%<parser_file_close%> called with NULL *file"
 msgstr ""
 
-#: cobol/genapi.cc:9127
-#, gcc-internal-format, gfc-internal-format
-msgid "parser_file_close for %s called with NULL file->var_decl_node"
+#: cobol/genapi.cc:9937
+#, gcc-internal-format
+msgid "%<parser_file_close%> for %s called with NULL %<file->var_decl_node%>"
 msgstr ""
 
-#: cobol/genapi.cc:9180
+#: cobol/genapi.cc:9992
 #, gcc-internal-format, gfc-internal-format
 msgid "%s:%d file %s 'where' is zero in %s"
 msgstr ""
 
-#: cobol/genapi.cc:9190
+#: cobol/genapi.cc:10002
 #, gcc-internal-format
-msgid "parser_file_read called with NULL *file"
+msgid "%<parser_file_read%> called with NULL *file"
 msgstr ""
 
-#: cobol/genapi.cc:9195
-#, gcc-internal-format, gfc-internal-format
-msgid "parser_file_read for %s called with NULL file->var_decl_node"
+#: cobol/genapi.cc:10007
+#, gcc-internal-format
+msgid "%<parser_file_read%> for %s called with NULL %<file->var_decl_node%>"
 msgstr ""
 
-#: cobol/genapi.cc:9200
+#: cobol/genapi.cc:10013
 #, gcc-internal-format
-msgid "parser_file_read called with NULL *field"
+msgid "%<parser_file_read%> called with NULL *field"
 msgstr ""
 
-#: cobol/genapi.cc:9205
-#, gcc-internal-format, gfc-internal-format
-msgid "parser_file_read for %s called with NULL field->var_decl_node"
+#: cobol/genapi.cc:10018
+#, gcc-internal-format
+msgid "%<parser_file_read%> for %s called with NULL %<field->var_decl_node%>"
 msgstr ""
 
-#: cobol/genapi.cc:9210
-#, gcc-internal-format, gfc-internal-format
-msgid "%s:%d file %s is RELATIVE/SEQUENTIAL, but 'where' >= 0"
+#: cobol/genapi.cc:10024
+#, gcc-internal-format
+msgid "%s:%d file %s is RELATIVE/SEQUENTIAL, but %<where >= 0%>"
 msgstr ""
 
-#: cobol/genapi.cc:9219
-#, gcc-internal-format, gfc-internal-format
-msgid "%s:%d file %s is RELATIVE/RANDOM, but 'where' < 0"
+#: cobol/genapi.cc:10033
+#, gcc-internal-format
+msgid "%s:%d file %s is RELATIVE/RANDOM, but %<where < 0%>"
 msgstr ""
 
-#: cobol/genapi.cc:9262
+#: cobol/genapi.cc:10077
 #, gcc-internal-format, gfc-internal-format
 msgid "%s:%d file %s 'sequentially' is %d in %s"
 msgstr ""
 
-#: cobol/genapi.cc:9311
-#, gcc-internal-format, gfc-internal-format
-msgid "%s(): for %s called with NULL file->var_decl_node"
+#: cobol/genapi.cc:10126
+#, gcc-internal-format
+msgid "%s: for %s called with NULL %<file->var_decl_node%>"
 msgstr ""
 
-#: cobol/genapi.cc:9317
+#: cobol/genapi.cc:10132
 #, gcc-internal-format, gfc-internal-format
-msgid "%s(): called with NULL *field"
+msgid "%s: called with NULL *field"
 msgstr ""
 
-#: cobol/genapi.cc:9322
-#, gcc-internal-format, gfc-internal-format
-msgid "%s(): for %s called with NULL field->var_decl_node"
+#: cobol/genapi.cc:10137
+#, gcc-internal-format
+msgid "%s: for %s called with NULL %<field->var_decl_node%>"
 msgstr ""
 
-#: cobol/genapi.cc:9457
+#: cobol/genapi.cc:10222
+#, gcc-internal-format
+msgid "The file pointer should not be null"
+msgstr ""
+
+#: cobol/genapi.cc:10405
 #, gcc-internal-format, gfc-internal-format
 msgid "%s:%d file %s is INDEXED/SEQUENTIAL, but 'sequentially' is false"
 msgstr ""
 
-#: cobol/genapi.cc:11122
+#: cobol/genapi.cc:12236
 #, gcc-internal-format, gfc-internal-format
-msgid "%s(): asked to sort %s, but it's not a table"
+msgid "%s: asked to sort %s, which is not a table"
 msgstr ""
 
 #. Having both or neither violates SORT syntax
-#: cobol/genapi.cc:11250
+#: cobol/genapi.cc:12368
 #, gcc-internal-format, gfc-internal-format
-msgid ""
-"%s(): syntax error -- both (or neither) USING and input-proc are specified"
+msgid "%s: syntax error: both (or neither) USING and input-proc are specified"
 msgstr ""
 
-#: cobol/genapi.cc:11379
+#: cobol/genapi.cc:12502
 #, gcc-internal-format, gfc-internal-format
 msgid ""
-"%s(): syntax error -- both (or neither) GIVING and output-proc are specified"
+"%s: syntax error: both (or neither) GIVING and output-proc are specified"
 msgstr ""
 
-#: cobol/genapi.cc:11786
+#: cobol/genapi.cc:12924
 #, gcc-internal-format, gfc-internal-format
-msgid ""
-"%s(): syntax error -- both (or neither) files and output-proc are specified"
+msgid "%s: syntax error: both (or neither) files and output-proc are specified"
 msgstr ""
 
-#: cobol/genapi.cc:12187
+#: cobol/genapi.cc:13328
 #, gcc-internal-format
 msgid "CALL USING BY CONTENT <temporary> would require REPOSITORY PROTOTYPES."
 msgstr ""
 
-#: cobol/genapi.cc:12439
+#: cobol/genapi.cc:13599
 #, gcc-internal-format, gfc-internal-format
-msgid "%s(): What in the name of Nero's fiddle are we doing here?"
+msgid "%s: What in the name of Nero are we doing here?"
 msgstr ""
 
-#: cobol/genapi.cc:13948
-#, gcc-internal-format, gfc-internal-format
+#: cobol/genapi.cc:14989
+#, gcc-internal-format
 msgid ""
-"In parser_move(%s to %s), the move of FldLiteralN to %s hasn't been "
-"implemented"
+"In %<parser_move(%s to %s)%>, the move of FldLiteralN to %s is unimplemented"
 msgstr ""
 
-#: cobol/genapi.cc:14184
-#, gcc-internal-format, gfc-internal-format
+#: cobol/genapi.cc:15226
+#, gcc-internal-format
 msgid ""
-"In mh_dest_is_float(%s to %s), the move of %s to %s hasn't been implemented"
+"In %<mh_dest_is_float%>(%s to %s), the move of %s to %s is unimplemented"
 msgstr ""
 
-#: cobol/genapi.cc:16279
+#: cobol/genapi.cc:16958
 #, gcc-internal-format, gfc-internal-format
 msgid "LEVEL 01 (%s) OCCURS has insufficient data.memsize"
 msgstr ""
 
-#: cobol/genapi.cc:16351
+#: cobol/genapi.cc:17018
 #, gcc-internal-format
-msgid "parser_symbol_add() was called with a NULL new_var\n"
+msgid "%<parser_symbol_add()%> was called with a NULL %<new_var%>"
 msgstr ""
 
-#: cobol/genapi.cc:16379
-msgid "%s(): %2.2d %s is a table, but it improperly has a capacity of zero"
+#: cobol/genapi.cc:17048
+#, gcc-internal-format, gfc-internal-format
+msgid "%s: %d %s is a table, but it improperly has a capacity of zero"
 msgstr ""
 
-#: cobol/genapi.cc:16419
+#: cobol/genapi.cc:17088
 #, gcc-internal-format, gfc-internal-format
-msgid "parser_symbol_add(): %s is its own ancestor"
+msgid "%s: %s is its own ancestor"
 msgstr ""
 
-#: cobol/genapi.cc:16425
-msgid "parser_symbol_add(): %2.2d %s has null ancestor"
+#: cobol/genapi.cc:17093
+#, gcc-internal-format
+msgid "%s: %d %qs has NULL ancestor"
 msgstr ""
 
-#: cobol/genapi.cc:16433
+#: cobol/genapi.cc:17100
+#, gcc-internal-format
+msgid "%s(%s) improperly has a non-null %<var_decl_node%>"
+msgstr ""
+
+#. N.B. If level is 0 then we're not participating in a hierarchy.
+#. During the early stages of implementing cbl_field_t::our_index, there
+#. were execution paths in parse.y and parser.cc that resulted in
+#. our_index not being set.  Those should be gone.
+#: cobol/genapi.cc:17235
+#, gcc-internal-format
+msgid "%<our_index%> is NULL under unanticipated circumstances"
+msgstr ""
+
+#: cobol/genapi.cc:17319
 #, gcc-internal-format, gfc-internal-format
-msgid "parser_symbol_add( %s ) improperly has a non-null var_decl_node\n"
+msgid "%s: %d %s<%s> improperly has a data.capacity of zero"
 msgstr ""
 
-#: cobol/genapi.cc:16638
-msgid "%s(): %2.2d %s<%s> improperly has a data.capacity of zero"
+#: cobol/genapi.cc:17387
+#, gcc-internal-format
+msgid "%<bytes_to_allocate%> is zero for %s (symbol number "
 msgstr ""
 
-#: cobol/gengen.cc:363
+#: cobol/gengen.cc:360
 #, gcc-internal-format
-msgid "The given type is not NULL, and that's just not fair"
+msgid "The given type is NULL, and that is just not fair"
 msgstr ""
 
-#: cobol/gengen.cc:372
+#: cobol/gengen.cc:369
 #, gcc-internal-format
-msgid "The given type is not a DECL or a TYPE"
+msgid "The given type is not a declaration or a TYPE"
 msgstr ""
 
-#: cobol/gengen.cc:416
+#: cobol/gengen.cc:413
 #, gcc-internal-format, gfc-internal-format
 msgid "Unknown type %d"
 msgstr ""
 
-#: cobol/gengen.cc:2941
+#: cobol/gengen.cc:482
 #, gcc-internal-format
-msgid "Residual context count!"
+msgid "Attempting an assignment of differing types."
 msgstr ""
 
-#: cobol/genmath.cc:1392
+#: cobol/gengen.cc:526
 #, gcc-internal-format, gfc-internal-format
-msgid "parser_op() doesn't know how to evaluate \"%s = %s %c %s\"\n"
+msgid "Somebody asked for the field %s.%s, which does not exist"
+msgstr ""
+
+#: cobol/gengen.cc:2159 cobol/gengen.cc:2212 cobol/gengen.cc:3039
+#: cobol/gengen.cc:3094
+#, gcc-internal-format
+msgid "You *must* be joking"
+msgstr ""
+
+#. Warning:  This test is not completely reliable, because a garbage
+#. byte could have a valid TREE_CODE.  But it does help.
+#: cobol/gengen.cc:2166
+#, gcc-internal-format
+msgid "You forgot to put a %<NULL_TREE%> at the end of a %<gg_printf()%> again"
+msgstr ""
+
+#. Warning:  This test is not completely reliable, because a garbage
+#. byte could have a valid TREE_CODE.  But it does help.
+#: cobol/gengen.cc:2590 cobol/gengen.cc:2749
+#, gcc-internal-format
+msgid ""
+"You forgot to put a %<NULL_TREE%> at the end of a %<gg_define_function()%> "
+"again"
+msgstr ""
+
+#: cobol/gengen.cc:2601 cobol/gengen.cc:2760
+#, gcc-internal-format, gfc-internal-format
+msgid "%d parameters? Really? Are you insane?"
+msgstr ""
+
+#: cobol/gengen.cc:2882
+#, gcc-internal-format
+msgid "Residual context count"
+msgstr ""
+
+#: cobol/genmath.cc:1605
+#, gcc-internal-format
+msgid "%<parser_op()%> doesn%'t know how to evaluate %<%s = %s %c %s%>"
 msgstr ""
 
-#: cobol/genutil.cc:322 cobol/genutil.cc:601
+#: cobol/genutil.cc:621
 #, gcc-internal-format
 msgid "Too many subscripts"
 msgstr ""
 
-#: cobol/lexio.cc:1490
+#: cobol/genutil.cc:787
+#, gcc-internal-format
+msgid "cannot get %<float%> value from %s"
+msgstr ""
+
+#: cobol/lexio.cc:1584
 #, gcc-internal-format, gfc-internal-format
-msgid "%s pid %d terminated by %s"
+msgid "%s pid %ld terminated by %s"
 msgstr ""
 
-#: cobol/lexio.cc:1495
+#: cobol/lexio.cc:1589
 #, gcc-internal-format, gfc-internal-format
 msgid "%s exited with status %d"
 msgstr ""
 
-#: cobol/symbols.cc:450
+#: cobol/symbols.cc:426
 msgid "%s:%d: LblNone '%s' has parent #%zu"
 msgstr ""
 
-#: cobol/symbols.cc:1907
+#: cobol/symbols.cc:1878
+#, gcc-internal-format, gfc-internal-format
+msgid "%s: data item %s #"
+msgstr ""
+
+#: cobol/symbols.cc:2042
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: key must be field"
 msgstr ""
 
-#: cobol/symbols.cc:3709 cobol/symbols.cc:3816 cobol/symbols.cc:3846
+#: cobol/symbols.cc:4179
+#, gcc-internal-format, gfc-internal-format
+msgid "%s: %s %s has invalid encoding"
+msgstr ""
+
+#: cobol/symbols.cc:4347 cobol/symbols.cc:4450 cobol/symbols.cc:4480
 #, gcc-internal-format, gfc-internal-format
 msgid "%s:%d: could not add '%s'"
 msgstr ""
 
-#: cobol/util.cc:1108
+#: cobol/util.cc:1767
+#, gcc-internal-format, gfc-internal-format
+msgid "%s: %s %lu %s %lu"
+msgstr ""
+
+#: cobol/util.cc:1782
+#, gcc-internal-format, gfc-internal-format
+msgid "%s: nbytes %lu %s %lu"
+msgstr ""
+
+#: cobol/util.cc:1860
+#, gcc-internal-format, gfc-internal-format
+msgid "%s:%d: type %s, who woulda thunk?"
+msgstr ""
+
+#: cobol/util.cc:2215
 #, gcc-internal-format, gfc-internal-format
 msgid "logic error: MOVE %s %s invalid type:"
 msgstr ""
 
-#: cobol/util.cc:1705
+#: cobol/util.cc:2810
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: regcomp: %s"
 msgstr ""
 
-#: cobol/util.cc:1815
+#: cobol/util.cc:2959
 #, gcc-internal-format, gfc-internal-format
 msgid "logic error: missing inode for %s"
 msgstr ""
 
-#: cobol/util.cc:2141
+#: cobol/util.cc:3379
 #, gcc-internal-format, gfc-internal-format
 msgid "failed compiling %s"
 msgstr ""
 
-#: cp/call.cc:2106
+#: cp/call.cc:2159
 #, gcc-internal-format
 msgid "casting %qT to %qT does not use %qD"
 msgstr ""
 
 #. A bad conversion for 'this' must be discarding cv-quals.
-#: cp/call.cc:3957 cp/call.cc:10472
+#: cp/call.cc:4010 cp/call.cc:10552
 #, gcc-internal-format
 msgid "passing %qT as %<this%> argument discards qualifiers"
 msgstr ""
 
-#: cp/call.cc:3961
+#: cp/call.cc:4014
 msgid "no known conversion for implicit %<this%> parameter from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:3968
+#: cp/call.cc:4021
 #, gcc-internal-format, gfc-internal-format
 msgid "conversion of argument %d would be ill-formed:"
 msgstr ""
 
 #. Conversion of conversion function return value failed.
-#: cp/call.cc:3976
+#: cp/call.cc:4029
 msgid "no known conversion from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:3982
+#: cp/call.cc:4035
 msgid "no known conversion for argument %d from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:3996
+#: cp/call.cc:4049
 #, gcc-internal-format, gfc-internal-format
 msgid "candidate expects at least %d argument, %d provided"
 msgid_plural "candidate expects at least %d arguments, %d provided"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/call.cc:4001
+#: cp/call.cc:4054
 #, gcc-internal-format, gfc-internal-format
 msgid "candidate expects %d argument, %d provided"
 msgid_plural "candidate expects %d arguments, %d provided"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/call.cc:4029
+#: cp/call.cc:4082
 #, gcc-internal-format
 msgid "%s%<%D(%T, %T, %T)%> (built-in)"
 msgstr ""
 
-#: cp/call.cc:4034
+#: cp/call.cc:4087
 #, gcc-internal-format
 msgid "%s%<%D(%T, %T)%> (built-in)"
 msgstr ""
 
-#: cp/call.cc:4038
+#: cp/call.cc:4091
 #, gcc-internal-format
 msgid "%s%<%D(%T)%> (built-in)"
 msgstr ""
 
-#: cp/call.cc:4042
+#: cp/call.cc:4095
 #, gcc-internal-format
 msgid "%s%qT (conversion)"
 msgstr ""
 
-#: cp/call.cc:4044
+#: cp/call.cc:4097
 #, gcc-internal-format
 msgid "%s%#qD (near match)"
 msgstr ""
 
-#: cp/call.cc:4046
+#: cp/call.cc:4099
 #, gcc-internal-format
 msgid "%s%#qD (ignored)"
 msgstr ""
 
-#: cp/call.cc:4048
+#: cp/call.cc:4101
 #, gcc-internal-format
 msgid "%s%#qD (deleted)"
 msgstr ""
 
-#: cp/call.cc:4050
+#: cp/call.cc:4103
 #, gcc-internal-format
 msgid "%s%#qD (reversed)"
 msgstr ""
 
-#: cp/call.cc:4052
+#: cp/call.cc:4105
 #, gcc-internal-format
 msgid "%s%#qD (rewritten)"
 msgstr ""
 
-#: cp/call.cc:4054
+#: cp/call.cc:4107
 #, gcc-internal-format
 msgid "%s%#qD"
 msgstr ""
 
-#: cp/call.cc:4058
+#: cp/call.cc:4114
 #, gcc-internal-format
 msgid "inherited here"
 msgstr ""
 
-#: cp/call.cc:4080
+#: cp/call.cc:4136
 #, gcc-internal-format
 msgid ""
 "return type %qT of explicit conversion function cannot be converted to %qT "
 "with a qualification conversion"
 msgstr ""
 
-#: cp/call.cc:4086
+#: cp/call.cc:4142
 #, gcc-internal-format
 msgid ""
 "conversion from return type %qT of template conversion function "
 "specialization to %qT is not an exact match"
 msgstr ""
 
-#: cp/call.cc:4097
+#: cp/call.cc:4153
 #, gcc-internal-format
 msgid ""
 "substitution of deduced template arguments resulted in errors seen above"
 msgstr ""
 
 #. Re-run template unification with diagnostics.
-#: cp/call.cc:4102
+#: cp/call.cc:4158
 #, gcc-internal-format
 msgid "template argument deduction/substitution failed:"
 msgstr ""
 
-#: cp/call.cc:4119
+#: cp/call.cc:4175
 #, gcc-internal-format
 msgid "a constructor taking a single argument of its own class type is invalid"
 msgstr ""
 
-#: cp/call.cc:4129
+#: cp/call.cc:4182
 #, gcc-internal-format
 msgid ""
 "an inherited constructor is not a candidate for initialization from an "
 "expression of the same or derived type"
 msgstr ""
 
-#: cp/call.cc:4209
-#, gcc-internal-format, gfc-internal-format
-msgid "there is %i candidate"
-msgid_plural "there are %i candidates"
-msgstr[0] ""
-msgstr[1] ""
-
-#: cp/call.cc:4220
+#: cp/call.cc:4276
 #, gcc-internal-format
 msgid ""
 "some candidates omitted; use %<-fdiagnostics-all-candidates%> to display them"
 msgstr ""
 
-#: cp/call.cc:4305 cp/call.cc:4877
+#: cp/call.cc:4361 cp/call.cc:4934
 #, gcc-internal-format
 msgid "designated initializers cannot be used with a non-aggregate type %qT"
 msgstr ""
 
-#: cp/call.cc:4771
+#: cp/call.cc:4827
 msgid "conversion from %qH to %qI is ambiguous"
 msgstr ""
 
-#: cp/call.cc:4884 cp/cvt.cc:878
+#. The expression is generated by a trait check, we don't have
+#. a useful location to highlight the label.
+#: cp/call.cc:4942
+msgid "could not convert %qH to %qI"
+msgstr ""
+
+#: cp/call.cc:4949 cp/cvt.cc:879
 msgid "could not convert %qE from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:4949
+#: cp/call.cc:5016
 msgid ""
 "initializing %qH with %qI in converted constant expression does not bind "
 "directly"
 msgstr ""
 
-#: cp/call.cc:4970
+#: cp/call.cc:5037
 msgid "conversion from %qH to %qI in a converted constant expression"
 msgstr ""
 
-#: cp/call.cc:5155
+#: cp/call.cc:5227
 #, gcc-internal-format
 msgid "no matching function for call to %<%D(%A)%>"
 msgstr ""
 
-#: cp/call.cc:5158
+#: cp/call.cc:5230
 #, gcc-internal-format
 msgid "call of overloaded %<%D(%A)%> is ambiguous"
 msgstr ""
 
 #. It's no good looking for an overloaded operator() on a
 #. pointer-to-member-function.
-#: cp/call.cc:5442
+#: cp/call.cc:5514
 #, gcc-internal-format
 msgid ""
 "pointer-to-member function %qE cannot be called without an object; consider "
 "using %<.*%> or %<->*%>"
 msgstr ""
 
-#: cp/call.cc:5521
+#: cp/call.cc:5593
 #, gcc-internal-format
 msgid "no match for call to %<(%T) (%A)%>"
 msgstr ""
 
-#: cp/call.cc:5535
+#: cp/call.cc:5607
 #, gcc-internal-format
 msgid "call of %<(%T) (%A)%> is ambiguous"
 msgstr ""
 
-#: cp/call.cc:5577
+#: cp/call.cc:5649
 #, gcc-internal-format
 msgid "ambiguous overload for "
 msgstr ""
 
-#: cp/call.cc:5578
+#: cp/call.cc:5650
 #, gcc-internal-format
 msgid "no match for "
 msgstr ""
 
-#: cp/call.cc:5591
+#: cp/call.cc:5663
 #, gcc-internal-format
 msgid " (operand types are %qT, %qT, and %qT)"
 msgstr ""
 
-#: cp/call.cc:5593
+#: cp/call.cc:5665
 #, gcc-internal-format
 msgid " (operand types are %qT and %qT)"
 msgstr ""
 
-#: cp/call.cc:5595
+#: cp/call.cc:5667
 #, gcc-internal-format
 msgid " (operand type is %qT)"
 msgstr ""
 
-#: cp/call.cc:5606
+#: cp/call.cc:5678
 msgid " (operand types are %e and %e)"
 msgstr ""
 
-#: cp/call.cc:5621
+#: cp/call.cc:5693
 #, gcc-internal-format
 msgid "ternary %<operator?:%>"
 msgstr ""
 
-#: cp/call.cc:5625
+#: cp/call.cc:5697
 #, gcc-internal-format
 msgid "ternary %<operator?:%> in %<%E ? %E : %E%>"
 msgstr ""
 
-#: cp/call.cc:5634 cp/call.cc:5682 cp/call.cc:5692
+#: cp/call.cc:5706 cp/call.cc:5754 cp/call.cc:5764
 #, gcc-internal-format
 msgid "%<operator%s%>"
 msgstr ""
 
-#: cp/call.cc:5637
+#: cp/call.cc:5709
 #, gcc-internal-format
 msgid "%<operator%s%> in %<%E%s%>"
 msgstr ""
 
-#: cp/call.cc:5644
+#: cp/call.cc:5716
 #, gcc-internal-format
 msgid "%<operator[]%>"
 msgstr ""
 
-#: cp/call.cc:5647
+#: cp/call.cc:5719
 #, gcc-internal-format
 msgid "%<operator[]%> in %<%E[%E]%>"
 msgstr ""
 
-#: cp/call.cc:5655
+#: cp/call.cc:5727
 #, gcc-internal-format
 msgid "%qs"
 msgstr ""
 
-#: cp/call.cc:5658
+#: cp/call.cc:5730
 #, gcc-internal-format
 msgid "%qs in %<%s %E%>"
 msgstr ""
 
-#: cp/call.cc:5664
+#: cp/call.cc:5736
 #, gcc-internal-format
 msgid "%<operator %s%>"
 msgstr ""
 
-#: cp/call.cc:5667
+#: cp/call.cc:5739
 #, gcc-internal-format
 msgid "%<operator %s%> in %<%s%E%>"
 msgstr ""
 
-#: cp/call.cc:5686
+#: cp/call.cc:5758
 #, gcc-internal-format
 msgid "%<operator%s%> in %<%E %s %E%>"
 msgstr ""
 
-#: cp/call.cc:5695
+#: cp/call.cc:5767
 #, gcc-internal-format
 msgid "%<operator%s%> in %<%s%E%>"
 msgstr ""
 
-#: cp/call.cc:5807
+#: cp/call.cc:5879
 #, gcc-internal-format
 msgid "ISO C++ forbids omitting the middle term of a %<?:%> expression"
 msgstr ""
 
-#: cp/call.cc:5884
+#: cp/call.cc:5957
 #, gcc-internal-format
 msgid ""
 "inferred scalar type %qT is not an integer or floating-point type of the "
 "same size as %qT"
 msgstr ""
 
-#: cp/call.cc:5901 cp/call.cc:5908
+#: cp/call.cc:5974 cp/call.cc:5981
 msgid "conversion of scalar %qH to vector %qI involves truncation"
 msgstr ""
 
-#: cp/call.cc:5964
+#: cp/call.cc:6037
 #, gcc-internal-format
 msgid "incompatible vector types in conditional expression: %qT, %qT and %qT"
 msgstr ""
 
-#: cp/call.cc:6016 cp/call.cc:6362 cp/call.cc:6382
+#: cp/call.cc:6089 cp/call.cc:6435 cp/call.cc:6455
 #, gcc-internal-format
 msgid "operands to %<?:%> of types %qT and %qT have unordered conversion rank"
 msgstr ""
 
-#: cp/call.cc:6088
+#: cp/call.cc:6161
 #, gcc-internal-format
 msgid ""
 "second operand to the conditional operator is of type %<void%>, but the "
 "third operand is neither a throw-expression nor of type %<void%>"
 msgstr ""
 
-#: cp/call.cc:6093
+#: cp/call.cc:6166
 #, gcc-internal-format
 msgid ""
 "third operand to the conditional operator is of type %<void%>, but the "
 "second operand is neither a throw-expression nor of type %<void%>"
 msgstr ""
 
-#: cp/call.cc:6139 cp/call.cc:6251 cp/call.cc:6502
+#: cp/call.cc:6212 cp/call.cc:6324 cp/call.cc:6577
 #, gcc-internal-format
 msgid "operands to %<?:%> have different types %qT and %qT"
 msgstr ""
 
-#: cp/call.cc:6143
+#: cp/call.cc:6216
 #, gcc-internal-format
 msgid "  and each type can be converted to the other"
 msgstr ""
 
-#: cp/call.cc:6390
+#: cp/call.cc:6463
 msgid ""
 "implicit conversion from %qH to %qI to match other result of conditional"
 msgstr ""
 
-#: cp/call.cc:6408
+#: cp/call.cc:6483
 #, gcc-internal-format
 msgid "enumerated mismatch in conditional expression: %qT vs %qT"
 msgstr ""
 
-#: cp/call.cc:6428
+#: cp/call.cc:6503
 #, gcc-internal-format
 msgid ""
 "conditional expression between enumeration type %qT and floating-point type "
 "%qT"
 msgstr ""
 
-#: cp/call.cc:6432
+#: cp/call.cc:6507
 #, gcc-internal-format
 msgid ""
 "conditional expression between floating-point type %qT and enumeration type "
 "%qT"
 msgstr ""
 
-#: cp/call.cc:6436
+#: cp/call.cc:6511
 #, gcc-internal-format
 msgid ""
 "conditional expression between enumeration type %qT and floating-point type "
 "%qT is deprecated"
 msgstr ""
 
-#: cp/call.cc:6441
+#: cp/call.cc:6516
 #, gcc-internal-format
 msgid ""
 "conditional expression between floating-point type %qT and enumeration type "
 "%qT is deprecated"
 msgstr ""
 
-#: cp/call.cc:6457
+#: cp/call.cc:6532
 #, gcc-internal-format
 msgid "enumerated and non-enumerated type in conditional expression"
 msgstr ""
 
-#: cp/call.cc:7371
+#: cp/call.cc:7456
 #, gcc-internal-format
 msgid "no %<%D(int)%> declared for postfix %qs, trying prefix operator instead"
 msgstr ""
 
-#: cp/call.cc:7373
+#: cp/call.cc:7458
 #, gcc-internal-format
 msgid "no %<%D(int)%> declared for postfix %qs"
 msgstr ""
 
-#: cp/call.cc:7453
+#: cp/call.cc:7547
 #, gcc-internal-format
 msgid ""
 "in C++20 this comparison calls the current function recursively with "
 "reversed arguments"
 msgstr ""
 
-#: cp/call.cc:7506
+#: cp/call.cc:7597
 #, gcc-internal-format
 msgid "return type of %qD is not %qs"
 msgstr ""
 
-#: cp/call.cc:7508
+#: cp/call.cc:7599
 #, gcc-internal-format
 msgid "used as rewritten candidate for comparison of %qT and %qT"
 msgstr ""
 
-#: cp/call.cc:7591
+#: cp/call.cc:7683
 #, gcc-internal-format
 msgid "comparison between %q#T and %q#T"
 msgstr ""
 
-#: cp/call.cc:7778
+#: cp/call.cc:7870
 #, gcc-internal-format
 msgid "no match for call to %<%T::operator[] (%A)%>"
 msgstr ""
 
-#: cp/call.cc:7792
+#: cp/call.cc:7884
 #, gcc-internal-format
 msgid "call of %<%T::operator[] (%A)%> is ambiguous"
 msgstr ""
 
-#: cp/call.cc:8073
+#: cp/call.cc:8143
 #, gcc-internal-format
 msgid ""
 "exception cleanup for this placement new selects non-placement %<operator "
 "delete%>"
 msgstr ""
 
-#: cp/call.cc:8076
+#: cp/call.cc:8146
 #, gcc-internal-format
 msgid ""
 "%qD is a usual (non-placement) deallocation function in C++14 (or with %<-"
 "fsized-deallocation%>)"
 msgstr ""
 
-#: cp/call.cc:8113
+#: cp/call.cc:8183
 #, gcc-internal-format
 msgid "%qD is a usual (non-placement) deallocation function"
 msgstr ""
 
-#: cp/call.cc:8307
+#: cp/call.cc:8377
 #, gcc-internal-format
 msgid "no corresponding deallocation function for %qD"
 msgstr ""
 
-#: cp/call.cc:8310
+#: cp/call.cc:8380
 #, gcc-internal-format
 msgid ""
 "destroying delete %qD cannot be used to release the allocated memory if the "
 "initialization throws because the object is not constructed yet"
 msgstr ""
 
-#: cp/call.cc:8319
+#: cp/call.cc:8389
 #, gcc-internal-format
 msgid "no suitable %<operator %s%> for %qT"
 msgstr ""
 
-#: cp/call.cc:8376
+#: cp/call.cc:8446
 #, gcc-internal-format
 msgid "%q#D is private within this context"
 msgstr ""
 
-#: cp/call.cc:8377 cp/decl.cc:9617
+#: cp/call.cc:8447 cp/decl.cc:10336
 #, gcc-internal-format
 msgid "declared private here"
 msgstr ""
 
-#: cp/call.cc:8382
+#: cp/call.cc:8452
 #, gcc-internal-format
 msgid "%q#D is protected within this context"
 msgstr ""
 
-#: cp/call.cc:8383 cp/decl.cc:9618
+#: cp/call.cc:8453 cp/decl.cc:10337
 #, gcc-internal-format
 msgid "declared protected here"
 msgstr ""
 
-#: cp/call.cc:8390
+#: cp/call.cc:8460
 #, gcc-internal-format
 msgid "%q#D is inaccessible within this context"
 msgstr ""
 
-#: cp/call.cc:8471
+#: cp/call.cc:8541
 #, gcc-internal-format
 msgid "passing NULL to non-pointer argument %P of %qD"
 msgstr ""
 
-#: cp/call.cc:8478
+#: cp/call.cc:8548
 #, gcc-internal-format
 msgid "converting to non-pointer type %qT from NULL"
 msgstr ""
 
-#: cp/call.cc:8490
+#: cp/call.cc:8560
 #, gcc-internal-format
 msgid "converting %<false%> to pointer type for argument %P of %qD"
 msgstr ""
 
-#: cp/call.cc:8497
+#: cp/call.cc:8567
 #, gcc-internal-format
 msgid "converting %<false%> to pointer type %qT"
 msgstr ""
 
-#: cp/call.cc:8568
+#: cp/call.cc:8641
 #, gcc-internal-format
 msgid "initializing argument %P of %qD"
 msgstr ""
 
-#: cp/call.cc:8590
+#: cp/call.cc:8663
 #, gcc-internal-format
 msgid ""
 "conversions to arrays of unknown bound are only available with %<-std=c+"
 "+20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/call.cc:8673
+#: cp/call.cc:8747
 #, gcc-internal-format
 msgid "too many braces around initializer for %qT"
 msgstr ""
 
-#: cp/call.cc:8684
+#: cp/call.cc:8758
 msgid "converting to %qH from %qI requires direct-initialization"
 msgstr ""
 
-#: cp/call.cc:8696
+#: cp/call.cc:8770
 msgid ""
 "ISO C++ does not allow converting to %qH from %qI with greater conversion "
 "rank"
 msgstr ""
 
-#: cp/call.cc:8704
+#: cp/call.cc:8778
 msgid ""
 "ISO C++ does not allow converting to %qH from %qI with unordered conversion "
 "rank"
 msgstr ""
 
-#: cp/call.cc:8720
+#: cp/call.cc:8794
 msgid "invalid user-defined conversion from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:8754 cp/cvt.cc:228
+#. An error diagnosed within a trait, don't give extra labels.
+#: cp/call.cc:8829 cp/call.cc:8838 cp/cvt.cc:228
 msgid "invalid conversion from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:8804 cp/call.cc:8817
+#: cp/call.cc:8888 cp/call.cc:8901
 #, gcc-internal-format
 msgid ""
 "converting to %qT from initializer list would use explicit constructor %qD"
 msgstr ""
 
-#: cp/call.cc:8810
+#: cp/call.cc:8894
 #, gcc-internal-format
 msgid "in C++11 and above a default constructor can be explicit"
 msgstr ""
 
-#: cp/call.cc:8974
+#: cp/call.cc:9058
 msgid "narrowing conversion of %qd from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:9125
+#: cp/call.cc:9209
 #, gcc-internal-format
 msgid "argument of function call might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/call.cc:9191
+#: cp/call.cc:9275
 msgid "cannot bind rvalue reference of type %qH to lvalue of type %qI"
 msgstr ""
 
-#: cp/call.cc:9200
+#: cp/call.cc:9284
 msgid ""
 "cannot bind non-const lvalue reference of type %qH to a value of type %qI"
 msgstr ""
 
-#: cp/call.cc:9205
+#: cp/call.cc:9289
 msgid ""
 "cannot bind non-const lvalue reference of type %qH to an rvalue of type %qI"
 msgstr ""
 
 #. extype is volatile
-#: cp/call.cc:9208
+#: cp/call.cc:9292
 msgid "cannot bind lvalue reference of type %qH to an rvalue of type %qI"
 msgstr ""
 
-#: cp/call.cc:9221
+#: cp/call.cc:9305
 msgid "cannot bind reference of type %qH to %qI due to different array bounds"
 msgstr ""
 
-#: cp/call.cc:9224
+#: cp/call.cc:9308
 msgid "binding reference of type %qH to %qI discards qualifiers"
 msgstr ""
 
-#: cp/call.cc:9263
+#: cp/call.cc:9347
 #, gcc-internal-format
 msgid "cannot bind bit-field %qE to %qT"
 msgstr ""
 
-#: cp/call.cc:9266 cp/call.cc:9284
+#: cp/call.cc:9350 cp/call.cc:9368
 #, gcc-internal-format
 msgid "cannot bind packed field %qE to %qT"
 msgstr ""
 
-#: cp/call.cc:9269
+#: cp/call.cc:9353
 #, gcc-internal-format
 msgid "cannot bind rvalue %qE to %qT"
 msgstr ""
 
-#: cp/call.cc:9470
+#: cp/call.cc:9554
 msgid "implicit conversion from %qH to %qI when passing argument to function"
 msgstr ""
 
-#: cp/call.cc:9499 cp/cvt.cc:2041
+#: cp/call.cc:9583 cp/cvt.cc:2059
 #, gcc-internal-format
 msgid ""
 "scoped enum %qT passed through %<...%> as %qT before %<-fabi-version=6%>, "
 "%qT after"
 msgstr ""
 
-#: cp/call.cc:9543
+#: cp/call.cc:9627
 #, gcc-internal-format
 msgid ""
 "passing objects of non-trivially-copyable type %q#T through %<...%> is "
 "conditionally supported"
 msgstr ""
 
-#: cp/call.cc:9579
+#: cp/call.cc:9663
 #, gcc-internal-format
 msgid "cannot receive reference type %qT through %<...%>"
 msgstr ""
 
-#: cp/call.cc:9589
+#: cp/call.cc:9673
 #, gcc-internal-format
 msgid ""
 "receiving objects of non-trivially-copyable type %q#T through %<...%> is "
 "conditionally-supported"
 msgstr ""
 
-#: cp/call.cc:9657
+#: cp/call.cc:9741
 #, gcc-internal-format
 msgid "recursive evaluation of default argument for %q#D"
 msgstr ""
 
-#: cp/call.cc:9666
+#: cp/call.cc:9750
 #, gcc-internal-format
 msgid ""
 "call to %qD uses the default argument for parameter %P, which is not yet "
 "defined"
 msgstr ""
 
-#: cp/call.cc:9839
+#: cp/call.cc:9913
 #, gcc-internal-format
 msgid "use of multiversioned function without a default"
 msgstr ""
 
-#: cp/call.cc:10349
+#: cp/call.cc:10424
 #, gcc-internal-format
 msgid "use %<-fdiagnostics-all-candidates%> to display considered candidates"
 msgstr ""
 
-#: cp/call.cc:10475 cp/call.cc:13322
+#: cp/call.cc:10555 cp/call.cc:13441
 #, gcc-internal-format
 msgid "  in call to %qD"
 msgstr ""
 
-#: cp/call.cc:10500
+#: cp/call.cc:10580
 #, gcc-internal-format
 msgid "%qT is not an accessible base of %qT"
 msgstr ""
 
-#: cp/call.cc:10727
+#: cp/call.cc:10843
 #, gcc-internal-format
 msgid "passing arguments to ellipsis of inherited constructor %qD"
 msgstr ""
 
-#: cp/call.cc:10862
+#: cp/call.cc:10978
 #, gcc-internal-format
 msgid ""
 "assignment from temporary %<initializer_list%> does not extend the lifetime "
 "of the underlying array"
 msgstr ""
 
-#: cp/call.cc:11240
+#: cp/call.cc:11356
 #, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with no trivial copy-assignment"
 msgstr ""
 
-#: cp/call.cc:11243
+#: cp/call.cc:11359
 #, gcc-internal-format
 msgid "%qD writing to an object of non-trivial type %#qT%s"
 msgstr ""
 
-#: cp/call.cc:11248
+#: cp/call.cc:11364
 #, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with %qs member %qD"
 msgstr ""
 
-#: cp/call.cc:11253
+#: cp/call.cc:11369
 #, gcc-internal-format
 msgid ""
 "%qD writing to an object of type %#qT containing a pointer to data member%s"
 msgstr ""
 
-#: cp/call.cc:11268
+#: cp/call.cc:11384
 #, gcc-internal-format
 msgid "; use assignment or value-initialization instead"
 msgstr ""
 
-#: cp/call.cc:11270
+#: cp/call.cc:11386
 #, gcc-internal-format
 msgid "; use assignment instead"
 msgstr ""
 
-#: cp/call.cc:11272
+#: cp/call.cc:11388
 #, gcc-internal-format
 msgid "; use value-initialization instead"
 msgstr ""
 
-#: cp/call.cc:11275
+#: cp/call.cc:11391
 #, gcc-internal-format
 msgid "%qD clearing an object of type %#qT with no trivial copy-assignment%s"
 msgstr ""
 
-#: cp/call.cc:11278
+#: cp/call.cc:11394
 #, gcc-internal-format
 msgid "%qD clearing an object of non-trivial type %#qT%s"
 msgstr ""
 
-#: cp/call.cc:11280
+#: cp/call.cc:11396
 #, gcc-internal-format
 msgid "%qD clearing an object of type %#qT containing a pointer-to-member%s"
 msgstr ""
 
-#: cp/call.cc:11301
+#: cp/call.cc:11417
 #, gcc-internal-format
 msgid "; use copy-assignment or copy-initialization instead"
 msgstr ""
 
-#: cp/call.cc:11303
+#: cp/call.cc:11419
 #, gcc-internal-format
 msgid "; use copy-assignment instead"
 msgstr ""
 
-#: cp/call.cc:11305
+#: cp/call.cc:11421
 #, gcc-internal-format
 msgid "; use copy-initialization instead"
 msgstr ""
 
-#: cp/call.cc:11308
+#: cp/call.cc:11424
 #, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with no trivial copy-assignment%s"
 msgstr ""
 
-#: cp/call.cc:11311
+#: cp/call.cc:11427
 #, gcc-internal-format
 msgid "%qD writing to an object of non-trivially copyable type %#qT%s"
 msgstr ""
 
-#: cp/call.cc:11314
+#: cp/call.cc:11430
 #, gcc-internal-format
 msgid "%qD writing to an object with a deleted copy constructor"
 msgstr ""
 
-#: cp/call.cc:11325
+#: cp/call.cc:11441
 #, gcc-internal-format
 msgid "%qD copying an object of non-trivial type %#qT from an array of %#qT"
 msgstr ""
 
-#: cp/call.cc:11337
+#: cp/call.cc:11453
 #, gcc-internal-format
 msgid ""
 "%qD copying an object of type %#qT with %qs member %qD from an array of "
 "%#qT; use assignment or copy-initialization instead"
 msgstr ""
 
-#: cp/call.cc:11356
+#: cp/call.cc:11472
 #, gcc-internal-format
 msgid ""
 "%qD writing to an object of a non-trivial type %#qT leaves %wu bytes "
 "unchanged"
 msgstr ""
 
-#: cp/call.cc:11359
+#: cp/call.cc:11475
 #, gcc-internal-format
 msgid ""
 "%qD writing to an object of a non-trivial type %#qT leaves %wu byte unchanged"
 msgstr ""
 
-#: cp/call.cc:11369
+#: cp/call.cc:11485
 #, gcc-internal-format
 msgid ""
 "%qD moving an object of non-trivially copyable type %#qT; use %<new%> and "
 "%<delete%> instead"
 msgstr ""
 
-#: cp/call.cc:11372
+#: cp/call.cc:11488
 #, gcc-internal-format
 msgid ""
 "%qD moving an object of type %#qT with deleted copy constructor; use %<new%> "
 "and %<delete%> instead"
 msgstr ""
 
-#: cp/call.cc:11375
+#: cp/call.cc:11491
 #, gcc-internal-format
 msgid "%qD moving an object of type %#qT with deleted destructor"
 msgstr ""
 
-#: cp/call.cc:11384
+#: cp/call.cc:11500
 #, gcc-internal-format
 msgid ""
 "%qD moving an object of non-trivial type %#qT and size %E into a region of "
 "size %E"
 msgstr ""
 
-#: cp/call.cc:11406
+#: cp/call.cc:11522
 #, gcc-internal-format
 msgid "%#qT declared here"
 msgstr ""
 
-#: cp/call.cc:11461
+#: cp/call.cc:11577
 #, gcc-internal-format
 msgid ""
 "argument %u in call to function %qE has pointer to a non-trivially-copyable "
 "type (%qT)"
 msgstr ""
 
-#: cp/call.cc:11530
+#: cp/call.cc:11649
 #, gcc-internal-format
 msgid "constructor delegates to itself"
 msgstr ""
 
-#: cp/call.cc:11805 cp/typeck.cc:10490
+#: cp/call.cc:11924 cp/typeck.cc:10776
 msgid "cannot convert %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:11829
+#: cp/call.cc:11948
 #, gcc-internal-format
 msgid "no matching function for call to %<%T::operator %T(%A)%#V%>"
 msgstr ""
 
-#: cp/call.cc:11861
+#: cp/call.cc:11980
 #, gcc-internal-format
 msgid "no matching function for call to %<%T::%s%E(%A)%#V%>"
 msgstr ""
 
-#: cp/call.cc:11909
+#: cp/call.cc:12028
 #, gcc-internal-format
 msgid "call to non-function %qD"
 msgstr ""
 
-#: cp/call.cc:11947 cp/pt.cc:17467 cp/typeck.cc:3508
+#: cp/call.cc:12066 cp/pt.cc:17955 cp/typeck.cc:3666
 #, gcc-internal-format
 msgid "cannot call constructor %<%T::%D%> directly"
 msgstr ""
 
-#: cp/call.cc:11949
+#: cp/call.cc:12068
 #, gcc-internal-format
 msgid "for a function-style cast, remove the redundant %<::%D%>"
 msgstr ""
 
-#: cp/call.cc:12131
+#: cp/call.cc:12250
 #, gcc-internal-format
 msgid "no matching function for call to %<%s(%A)%>"
 msgstr ""
 
-#: cp/call.cc:12134
+#: cp/call.cc:12253
 #, gcc-internal-format
 msgid "call of overloaded %<%s(%A)%> is ambiguous"
 msgstr ""
 
-#: cp/call.cc:12157
+#: cp/call.cc:12276
 #, gcc-internal-format
 msgid "pure virtual %q#D called from non-static data member initializer"
 msgstr ""
 
-#: cp/call.cc:12162
+#: cp/call.cc:12281
 #, gcc-internal-format
 msgid "pure virtual %q#D called from constructor"
 msgstr ""
 
-#: cp/call.cc:12163
+#: cp/call.cc:12282
 #, gcc-internal-format
 msgid "pure virtual %q#D called from destructor"
 msgstr ""
 
-#: cp/call.cc:12186
+#: cp/call.cc:12305
 #, gcc-internal-format
 msgid "cannot call member function %qD without object"
 msgstr ""
 
-#: cp/call.cc:13320
+#: cp/call.cc:13439
 #, gcc-internal-format
 msgid "passing %qT chooses %qT over %qT"
 msgstr ""
 
-#: cp/call.cc:13346
+#: cp/call.cc:13465
 #, gcc-internal-format
 msgid ""
 "C++20 says that these are ambiguous, even though the second is reversed:"
 msgstr ""
 
-#: cp/call.cc:13369
+#: cp/call.cc:13488
 #, gcc-internal-format
 msgid "try making the operator a %<const%> member function"
 msgstr ""
 
-#: cp/call.cc:13432
+#: cp/call.cc:13551
 #, gcc-internal-format
 msgid "choosing %qD over %qD"
 msgstr ""
 
-#: cp/call.cc:13433
+#: cp/call.cc:13552
 msgid "  for conversion from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:13436
+#: cp/call.cc:13555
 #, gcc-internal-format
 msgid "  because conversion sequence for the argument is better"
 msgstr ""
 
-#: cp/call.cc:13746
+#: cp/call.cc:13865
 #, gcc-internal-format
 msgid "default argument mismatch in overload resolution"
 msgstr ""
 
-#: cp/call.cc:13750
+#: cp/call.cc:13869
 #, gcc-internal-format
 msgid " candidate 1: %q#F"
 msgstr ""
 
-#: cp/call.cc:13752
+#: cp/call.cc:13871
 #, gcc-internal-format
 msgid " candidate 2: %q#F"
 msgstr ""
 
-#: cp/call.cc:13798
+#: cp/call.cc:13917
 #, gcc-internal-format
 msgid ""
 "ISO C++ says that these are ambiguous, even though the worst conversion for "
 "the first is better than the worst conversion for the second:"
 msgstr ""
 
-#: cp/call.cc:14216
+#: cp/call.cc:14335
 #, gcc-internal-format
 msgid "a temporary bound to %qD only persists until the constructor exits"
 msgstr ""
 
-#: cp/call.cc:14410
+#: cp/call.cc:14529
 msgid ""
 "invalid initialization of non-const reference of type %qH from an rvalue of "
 "type %qI"
 msgstr ""
 
-#: cp/call.cc:14414
+#: cp/call.cc:14533
 msgid ""
 "invalid initialization of reference of type %qH from expression of type %qI"
 msgstr ""
 
-#: cp/call.cc:14743
+#: cp/call.cc:14862
 #, gcc-internal-format
 msgid "possibly dangling reference to a temporary"
 msgstr ""
 
-#: cp/call.cc:14744
+#: cp/call.cc:14863
 #, gcc-internal-format
 msgid "%qT temporary created here"
 msgstr ""
 
-#: cp/call.cc:15123
+#: cp/call.cc:15245
 #, gcc-internal-format
 msgid "explicit conversion function was not considered"
 msgstr ""
 
-#: cp/class.cc:322
+#: cp/class.cc:323
 #, gcc-internal-format
 msgid ""
 "cannot convert from pointer to base class %qT to pointer to derived class "
 "%qT because the base is virtual"
 msgstr ""
 
-#: cp/class.cc:326
+#: cp/class.cc:327
 #, gcc-internal-format
 msgid ""
 "cannot convert from base class %qT to derived class %qT because the base is "
 "virtual"
 msgstr ""
 
-#: cp/class.cc:333
+#: cp/class.cc:334
 #, gcc-internal-format
 msgid ""
 "cannot convert from pointer to base class %qT to pointer to derived class "
 "%qT via virtual base %qT"
 msgstr ""
 
-#: cp/class.cc:338
+#: cp/class.cc:339
 #, gcc-internal-format
 msgid ""
 "cannot convert from base class %qT to derived class %qT via virtual base %qT"
 msgstr ""
 
-#: cp/class.cc:391
+#: cp/class.cc:400
 #, gcc-internal-format
 msgid "cannot convert from %qT to base class %qT because %qT is incomplete"
 msgstr ""
 
-#: cp/class.cc:1436
+#: cp/class.cc:1469
 #, gcc-internal-format
 msgid "%q#D conflicts with version inherited from %qT"
 msgstr ""
 
-#: cp/class.cc:1439
+#: cp/class.cc:1472
 #, gcc-internal-format
 msgid "version inherited from %qT declared here"
 msgstr ""
 
-#: cp/class.cc:1459
+#: cp/class.cc:1492
 #, gcc-internal-format
 msgid "%q#D cannot be overloaded with %q#D"
 msgstr ""
 
-#: cp/class.cc:1461 cp/decl.cc:1946 cp/decl.cc:1958 cp/decl.cc:1984
-#: cp/decl.cc:2006 cp/name-lookup.cc:2918 cp/name-lookup.cc:3235
+#: cp/class.cc:1494 cp/decl.cc:2189 cp/decl.cc:2201 cp/decl.cc:2227
+#: cp/decl.cc:2249 cp/name-lookup.cc:3002 cp/name-lookup.cc:3319
 #, gcc-internal-format
 msgid "previous declaration %q#D"
 msgstr ""
 
-#: cp/class.cc:1503
+#: cp/class.cc:1536
 #, gcc-internal-format
 msgid "conflicting access specifications for method %q+D, ignored"
 msgstr ""
 
-#: cp/class.cc:1506
+#: cp/class.cc:1539
 #, gcc-internal-format
 msgid "conflicting access specifications for field %qE, ignored"
 msgstr ""
 
-#: cp/class.cc:1610
+#: cp/class.cc:1643
 #, gcc-internal-format
 msgid "%qD invalid in %q#T because of local method %q#D with same name"
 msgstr ""
 
-#: cp/class.cc:1614
+#: cp/class.cc:1647
 #, gcc-internal-format
 msgid "local method %q#D declared here"
 msgstr ""
 
-#: cp/class.cc:1620
+#: cp/class.cc:1653
 #, gcc-internal-format
 msgid "%qD invalid in %q#T because of local member %q#D with same name"
 msgstr ""
 
-#: cp/class.cc:1624
+#: cp/class.cc:1657
 #, gcc-internal-format
 msgid "local member %q#D declared here"
 msgstr ""
 
-#: cp/class.cc:1695
+#: cp/class.cc:1728
 #, gcc-internal-format
 msgid "%qD inherits the %E ABI tag that %qT (used in its return type) has"
 msgstr ""
 
-#: cp/class.cc:1698 cp/class.cc:1705 cp/class.cc:1712 cp/class.cc:1724
-#: cp/cvt.cc:1134 rust/backend/rust-tree.cc:643
+#: cp/class.cc:1731 cp/class.cc:1738 cp/class.cc:1745 cp/class.cc:1757
+#: cp/cvt.cc:1147 cp/typeck.cc:2069 rust/backend/rust-tree.cc:647
 #, gcc-internal-format
 msgid "%qT declared here"
 msgstr ""
 
-#: cp/class.cc:1703
+#: cp/class.cc:1736
 #, gcc-internal-format
 msgid "%qD inherits the %E ABI tag that %qT (used in its type) has"
 msgstr ""
 
-#: cp/class.cc:1710
+#: cp/class.cc:1743
 #, gcc-internal-format
 msgid "%qT does not have the %E ABI tag that base %qT has"
 msgstr ""
 
-#: cp/class.cc:1718
+#: cp/class.cc:1751
 #, gcc-internal-format
 msgid "%qT does not have the %E ABI tag that %qT (used in the type of %qD) has"
 msgstr ""
 
-#: cp/class.cc:2029
+#: cp/class.cc:2062
 #, gcc-internal-format
 msgid "cannot derive from %<final%> base %qT in derived type %qT"
 msgstr ""
 
-#: cp/class.cc:2500
+#: cp/class.cc:2533
 #, gcc-internal-format
 msgid "all member functions in class %qT are private"
 msgstr ""
 
-#: cp/class.cc:2512
+#: cp/class.cc:2545
 #, gcc-internal-format
 msgid "%q#T only defines a private destructor and has no friends"
 msgstr ""
 
-#: cp/class.cc:2556
+#: cp/class.cc:2589
 #, gcc-internal-format
 msgid "%q#T only defines private constructors and has no friends"
 msgstr ""
 
-#: cp/class.cc:2560
+#: cp/class.cc:2593
 #, gcc-internal-format
 msgid "%q#D is public, but requires an existing %q#T object"
 msgstr ""
 
-#: cp/class.cc:2850
+#: cp/class.cc:2883
 #, gcc-internal-format
 msgid "no unique final overrider for %qD in %qT"
 msgstr ""
 
-#: cp/class.cc:3210
+#: cp/class.cc:3243
 #, gcc-internal-format
 msgid "%qD can be marked override"
 msgstr ""
 
-#: cp/class.cc:3213
+#: cp/class.cc:3246
 #, gcc-internal-format
 msgid "%q+#D marked %<override%>, but does not override"
 msgstr ""
 
-#: cp/class.cc:3228
+#: cp/class.cc:3262
+#, gcc-internal-format
+msgid "contracts cannot be added to virtual functions"
+msgstr ""
+
+#: cp/class.cc:3265
 #, gcc-internal-format
 msgid "%q+#D marked %<final%>, but is not virtual"
 msgstr ""
 
-#: cp/class.cc:3326
+#: cp/class.cc:3363
 #, gcc-internal-format
 msgid "%qD was hidden"
 msgstr ""
 
-#: cp/class.cc:3329
+#: cp/class.cc:3366
 #, gcc-internal-format
 msgid "  by %qD"
 msgstr ""
 
-#: cp/class.cc:3542
+#: cp/class.cc:3579
 #, gcc-internal-format
 msgid "the ellipsis in %qD is not inherited"
 msgstr ""
 
-#: cp/class.cc:3746
+#: cp/class.cc:3783
 #, gcc-internal-format
 msgid "bit-field %q#D with non-integral type %qT"
 msgstr ""
 
-#: cp/class.cc:3762
+#: cp/class.cc:3799
 #, gcc-internal-format
 msgid "bit-field %q+D width not an integer constant"
 msgstr ""
 
-#: cp/class.cc:3767
+#: cp/class.cc:3804
 #, gcc-internal-format
 msgid "negative width in bit-field %q+D"
 msgstr ""
 
-#: cp/class.cc:3772
+#: cp/class.cc:3809
 #, gcc-internal-format
 msgid "zero width for bit-field %q+D"
 msgstr ""
 
-#: cp/class.cc:3782
+#: cp/class.cc:3819
 #, gcc-internal-format
 msgid "width of %qD exceeds its type"
 msgstr ""
 
-#: cp/class.cc:3788
+#: cp/class.cc:3825
 #, gcc-internal-format
 msgid "%qD is too small to hold all values of %q#T"
 msgstr ""
 
-#: cp/class.cc:3850
+#: cp/class.cc:3887
 #, gcc-internal-format
 msgid "member %q+#D with constructor not allowed in union"
 msgstr ""
 
-#: cp/class.cc:3853
+#: cp/class.cc:3890
 #, gcc-internal-format
 msgid "member %q+#D with destructor not allowed in union"
 msgstr ""
 
-#: cp/class.cc:3855
+#: cp/class.cc:3892
 #, gcc-internal-format
 msgid "member %q+#D with copy assignment operator not allowed in union"
 msgstr ""
 
-#: cp/class.cc:3859
+#: cp/class.cc:3896
 #, gcc-internal-format
 msgid ""
 "unrestricted unions only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/class.cc:3975
+#: cp/class.cc:4012
 #, gcc-internal-format
 msgid "in C++98 %q+D may not be static because it is a member of a union"
 msgstr ""
 
-#: cp/class.cc:3988
+#: cp/class.cc:4025
 #, gcc-internal-format
 msgid "non-static data member %q+D in a union may not have reference type %qT"
 msgstr ""
 
-#: cp/class.cc:4001
+#: cp/class.cc:4038
 #, gcc-internal-format
 msgid "data member %q+D invalidly declared function type"
 msgstr ""
 
-#: cp/class.cc:4007
+#: cp/class.cc:4044
 #, gcc-internal-format
 msgid "data member %q+D invalidly declared method type"
 msgstr ""
 
-#: cp/class.cc:4078
+#: cp/class.cc:4115
 #, gcc-internal-format
 msgid "ignoring packed attribute because of unpacked non-POD field %q#D"
 msgstr ""
 
-#: cp/class.cc:4130
+#: cp/class.cc:4167
 #, gcc-internal-format
 msgid "member %q+D cannot be declared as a %<mutable%> reference"
 msgstr ""
 
-#: cp/class.cc:4133
+#: cp/class.cc:4170
 #, gcc-internal-format
 msgid "member %q+D cannot be declared both %<const%> and %<mutable%>"
 msgstr ""
 
-#: cp/class.cc:4165
+#: cp/class.cc:4202
 #, gcc-internal-format
 msgid "multiple fields in union %qT initialized"
 msgstr ""
 
-#: cp/class.cc:4167
+#: cp/class.cc:4204
 #, gcc-internal-format
 msgid "initialized member %q+D declared here"
 msgstr ""
 
-#: cp/class.cc:4215
+#: cp/class.cc:4252
 #, gcc-internal-format
 msgid "field %q#D with same name as class"
 msgstr ""
 
-#: cp/class.cc:4244
+#: cp/class.cc:4281
 #, gcc-internal-format
 msgid "%q#T has pointer data members"
 msgstr ""
 
-#: cp/class.cc:4249
+#: cp/class.cc:4286
 #, gcc-internal-format
 msgid "  but does not declare %<%T(const %T&)%>"
 msgstr ""
 
-#: cp/class.cc:4251
+#: cp/class.cc:4288
 #, gcc-internal-format
 msgid "  or %<operator=(const %T&)%>"
 msgstr ""
 
-#: cp/class.cc:4255
+#: cp/class.cc:4292
 #, gcc-internal-format
 msgid "  but does not declare %<operator=(const %T&)%>"
 msgstr ""
 
-#: cp/class.cc:4257
+#: cp/class.cc:4294
 #, gcc-internal-format
 msgid "pointer member %q+D declared here"
 msgstr ""
 
-#: cp/class.cc:4345
+#: cp/class.cc:4382
 #, gcc-internal-format
 msgid "layout of %qs member of type %qT changes in %qs"
 msgstr ""
 
-#: cp/class.cc:4738
+#: cp/class.cc:4775
 #, gcc-internal-format
 msgid "alignment of %qD increased in %<-fabi-version=9%> (GCC 5.2)"
 msgstr ""
 
-#: cp/class.cc:4741
+#: cp/class.cc:4778
 #, gcc-internal-format
 msgid "alignment of %qD will increase in %<-fabi-version=9%>"
 msgstr ""
 
-#: cp/class.cc:5069
+#: cp/class.cc:5106
 #, gcc-internal-format
 msgid "initializer specified for non-virtual method %q+D"
 msgstr ""
 
-#: cp/class.cc:5110
+#: cp/class.cc:5147
 #, gcc-internal-format
 msgid "no viable destructor for %qT"
 msgstr ""
 
-#: cp/class.cc:5112
+#: cp/class.cc:5149
 #, gcc-internal-format
 msgid "destructor for %qT is ambiguous"
 msgstr ""
 
-#: cp/class.cc:5581
+#: cp/class.cc:5618
 #, gcc-internal-format
 msgid "method overrides both %<transaction_pure%> and %qE methods"
 msgstr ""
 
-#: cp/class.cc:5602
+#: cp/class.cc:5639
 #, gcc-internal-format
 msgid "method declared %qE overriding %qE method"
 msgstr ""
 
-#: cp/class.cc:6235 cp/constexpr.cc:299
+#: cp/class.cc:6321 cp/constexpr.cc:303
 #, gcc-internal-format
 msgid ""
 "enclosing class of %<constexpr%> non-static member function %q+#D is not a "
 "literal type"
 msgstr ""
 
-#: cp/class.cc:6261 rust/backend/rust-tree.cc:6063
+#: cp/class.cc:6347 rust/backend/rust-tree.cc:6101
 #, gcc-internal-format
 msgid "%q+T is not literal because:"
 msgstr ""
 
-#: cp/class.cc:6264 rust/backend/rust-tree.cc:6066
+#: cp/class.cc:6350 rust/backend/rust-tree.cc:6104
 #, gcc-internal-format
 msgid "  %qT is a closure type, which is only literal in C++17 and later"
 msgstr ""
 
-#: cp/class.cc:6267 rust/backend/rust-tree.cc:6074
+#: cp/class.cc:6353 rust/backend/rust-tree.cc:6112
 #, gcc-internal-format
 msgid "  %q+T has a non-trivial destructor"
 msgstr ""
 
-#: cp/class.cc:6270 rust/backend/rust-tree.cc:6071
+#: cp/class.cc:6356 rust/backend/rust-tree.cc:6109
 #, gcc-internal-format
 msgid "  %q+T does not have %<constexpr%> destructor"
 msgstr ""
 
-#: cp/class.cc:6278 rust/backend/rust-tree.cc:6079
+#: cp/class.cc:6364 rust/backend/rust-tree.cc:6117
 #, gcc-internal-format
 msgid ""
 "  %q+T is not an aggregate, does not have a trivial default constructor, and "
 "has no %<constexpr%> constructor that is not a copy or move constructor"
 msgstr ""
 
-#: cp/class.cc:6311 rust/backend/rust-tree.cc:6111
+#: cp/class.cc:6397 rust/backend/rust-tree.cc:6149
 #, gcc-internal-format
 msgid "  base class %qT of %q+T is non-literal"
 msgstr ""
 
-#: cp/class.cc:6326 rust/backend/rust-tree.cc:6125
+#: cp/class.cc:6412 rust/backend/rust-tree.cc:6163
 #, gcc-internal-format
 msgid "  non-static data member %qD has non-literal type"
 msgstr ""
 
-#: cp/class.cc:6333 rust/backend/rust-tree.cc:6132
+#: cp/class.cc:6419 rust/backend/rust-tree.cc:6170
 #, gcc-internal-format
 msgid "  non-static data member %qD has volatile type"
 msgstr ""
 
-#: cp/class.cc:6466
+#: cp/class.cc:6564
 #, gcc-internal-format
 msgid "base class %q#T has accessible non-virtual destructor"
 msgstr ""
 
-#: cp/class.cc:6495
+#: cp/class.cc:6593
 #, gcc-internal-format
 msgid "non-static reference %q#D in class without a constructor"
 msgstr ""
 
-#: cp/class.cc:6501
+#: cp/class.cc:6599
 #, gcc-internal-format
 msgid "non-static const member %q#D in class without a constructor"
 msgstr ""
 
-#: cp/class.cc:6834
+#: cp/class.cc:6941
 #, gcc-internal-format
 msgid ""
 "offset of %qT base class for %<-std=c++14%> and up changes in %<-fabi-"
 "version=17%> (GCC 12)"
 msgstr ""
 
-#: cp/class.cc:6838
+#: cp/class.cc:6946
+#, gcc-internal-format
+msgid ""
+"offset of %qT base class for %<-std=c++20%> and up changes in %<-fabi-"
+"version=21%> (GCC 16)"
+msgstr ""
+
+#: cp/class.cc:6954
 #, gcc-internal-format
 msgid ""
 "offset of %qD for %<-std=c++14%> and up changes in %<-fabi-version=17%> (GCC "
 "12)"
 msgstr ""
 
-#: cp/class.cc:6878
+#: cp/class.cc:6959
+#, gcc-internal-format
+msgid ""
+"offset of %qD for %<-std=c++20%> and up changes in %<-fabi-version=21%> (GCC "
+"16)"
+msgstr ""
+
+#: cp/class.cc:7000
 #, gcc-internal-format
 msgid "direct base %qT inaccessible in %qT due to ambiguity"
 msgstr ""
 
-#: cp/class.cc:6890
+#: cp/class.cc:7012
 #, gcc-internal-format
 msgid "virtual base %qT inaccessible in %qT due to ambiguity"
 msgstr ""
 
-#: cp/class.cc:7132
+#: cp/class.cc:7254
 #, gcc-internal-format
 msgid ""
 "offset of %qD is not ABI-compliant and may change in a future version of GCC"
 msgstr ""
 
-#: cp/class.cc:7328
+#: cp/class.cc:7450
 #, gcc-internal-format
 msgid "size of type %qT is too large (%qE bytes)"
 msgstr ""
 
-#: cp/class.cc:7649
+#: cp/class.cc:7775
 #, gcc-internal-format
 msgid "invalid use of %q#T with a zero-size array in %q#D"
 msgstr ""
 
-#: cp/class.cc:7650
+#: cp/class.cc:7776
 #, gcc-internal-format
 msgid "invalid use of %q#T with a flexible array member in %q#T"
 msgstr ""
 
-#: cp/class.cc:7655
+#: cp/class.cc:7781
 #, gcc-internal-format
 msgid "array member %q#D declared here"
 msgstr ""
 
-#: cp/class.cc:7684
+#: cp/class.cc:7810
 #, gcc-internal-format
 msgid "zero-size array member %qD not at end of %q#T"
 msgstr ""
 
-#: cp/class.cc:7686
+#: cp/class.cc:7812
 #, gcc-internal-format
 msgid "zero-size array member %qD in an otherwise empty %q#T"
 msgstr ""
 
-#: cp/class.cc:7695 cp/class.cc:7730
+#: cp/class.cc:7821 cp/class.cc:7856
 #, gcc-internal-format
 msgid "in the definition of %q#T"
 msgstr ""
 
-#: cp/class.cc:7703
+#: cp/class.cc:7829
 #, gcc-internal-format
 msgid "flexible array member %qD not at end of %q#T"
 msgstr ""
 
-#: cp/class.cc:7705
+#: cp/class.cc:7831
 #, gcc-internal-format
 msgid "flexible array member %qD in an otherwise empty %q#T is a GCC extension"
 msgstr ""
 
-#: cp/class.cc:7728
+#: cp/class.cc:7854
 #, gcc-internal-format
 msgid "next member %q#D declared here"
 msgstr ""
 
-#: cp/class.cc:7840 cp/decl.cc:18275 cp/parser.cc:28411
+#: cp/class.cc:7966 cp/decl.cc:19511 cp/parser.cc:30592
 #, gcc-internal-format
 msgid "redefinition of %q#T"
 msgstr ""
 
-#: cp/class.cc:7987
+#: cp/class.cc:7975
+#, gcc-internal-format
+msgid ""
+"defining %qT, which previously failed to be complete in a SFINAE context"
+msgstr ""
+
+#: cp/class.cc:7978 cp/decl.cc:20556
+#, gcc-internal-format
+msgid "here.  Use %qs for a diagnostic at that point"
+msgstr ""
+
+#: cp/class.cc:8124
 #, gcc-internal-format
 msgid "%q#T has virtual functions and accessible non-virtual destructor"
 msgstr ""
 
-#: cp/class.cc:8015
+#: cp/class.cc:8152
 #, gcc-internal-format
 msgid "type transparent %q#T does not have any fields"
 msgstr ""
 
-#: cp/class.cc:8021
+#: cp/class.cc:8158
 #, gcc-internal-format
 msgid "type transparent class %qT has base classes"
 msgstr ""
 
-#: cp/class.cc:8025
+#: cp/class.cc:8162
 #, gcc-internal-format
 msgid "type transparent class %qT has virtual functions"
 msgstr ""
 
-#: cp/class.cc:8031
+#: cp/class.cc:8168
 #, gcc-internal-format
 msgid ""
 "type transparent %q#T cannot be made transparent because the type of the "
 "first field has a different ABI from the class overall"
 msgstr ""
 
-#: cp/class.cc:8202
+#: cp/class.cc:8339
 #, gcc-internal-format
 msgid "definition of %qD does not match %<#include <initializer_list>%>"
 msgstr ""
 
-#: cp/class.cc:8213
+#: cp/class.cc:8350
 #, gcc-internal-format
 msgid "trying to finish struct, but kicked out due to previous parse errors"
 msgstr ""
 
-#: cp/class.cc:8720
+#: cp/class.cc:8871
 #, gcc-internal-format
 msgid "language string %<\"%E\"%> not recognized"
 msgstr ""
 
-#: cp/class.cc:8810
+#: cp/class.cc:8961
 #, gcc-internal-format
 msgid "cannot resolve overloaded function %qD based on conversion to type %qT"
 msgstr ""
 
-#: cp/class.cc:8976
+#: cp/class.cc:9134
 #, gcc-internal-format
 msgid "no matches converting function %qD to type %q#T"
 msgstr ""
 
-#: cp/class.cc:9004
+#: cp/class.cc:9161
 #, gcc-internal-format
 msgid "converting overloaded function %qD to type %q#T is ambiguous"
 msgstr ""
 
-#: cp/class.cc:9046
+#: cp/class.cc:9203
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids taking the address of an unqualified or parenthesized non-"
 "static member function to form a pointer to explicit object member function."
 msgstr ""
 
-#: cp/class.cc:9051
+#: cp/class.cc:9208
 #, gcc-internal-format
 msgid ""
 "a pointer to explicit object member function can only be formed with %<&%E%>"
 msgstr ""
 
-#: cp/class.cc:9061
+#: cp/class.cc:9218
 #, gcc-internal-format
 msgid "assuming pointer to member %qD"
 msgstr ""
 
-#: cp/class.cc:9064
+#: cp/class.cc:9221
 #, gcc-internal-format
 msgid "(a pointer to member can only be formed with %<&%E%>)"
 msgstr ""
 
-#: cp/class.cc:9143
+#: cp/class.cc:9302
 #, gcc-internal-format
 msgid "not enough type information"
 msgstr ""
 
-#: cp/class.cc:9163
+#: cp/class.cc:9322
 #, gcc-internal-format
 msgid "cannot convert %qE from type %qT to type %qT"
 msgstr ""
 
-#: cp/class.cc:9464
+#: cp/class.cc:9623
 #, gcc-internal-format
 msgid "declaration of %q#D changes meaning of %qD"
 msgstr ""
 
-#: cp/class.cc:9467
+#: cp/class.cc:9626
 #, gcc-internal-format
 msgid "used here to mean %q#D"
 msgstr ""
 
-#: cp/constexpr.cc:112
+#: cp/constexpr.cc:113
 #, gcc-internal-format
 msgid "the type %qT of %<constexpr%> variable %qD is not literal"
 msgstr ""
 
-#: cp/constexpr.cc:123
+#: cp/constexpr.cc:124
 #, gcc-internal-format
 msgid ""
 "variable %qD of non-literal type %qT in %<constexpr%> function only "
 "available with %<-std=c++23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: cp/constexpr.cc:136
+#: cp/constexpr.cc:137
 #, gcc-internal-format
 msgid "%<constexpr%> variable %qD has variably-modified type %qT"
 msgstr ""
 
-#: cp/constexpr.cc:236
+#: cp/constexpr.cc:240
 #, gcc-internal-format
 msgid "inherited constructor %qD is not %<constexpr%>"
 msgstr ""
 
 #. constexpr_fundef_p
-#: cp/constexpr.cc:250
+#: cp/constexpr.cc:254
 #, gcc-internal-format
 msgid "invalid type for parameter %d of %<constexpr%> function %q+#D"
 msgstr ""
 
-#: cp/constexpr.cc:263
+#: cp/constexpr.cc:267
 #, gcc-internal-format
 msgid "lambdas are implicitly %<constexpr%> only in C++17 and later"
 msgstr ""
 
-#: cp/constexpr.cc:270 cp/decl.cc:15269
+#: cp/constexpr.cc:274 cp/decl.cc:16439
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> destructors only available with %<-std=c++20%> or %<-std=gnu+"
@@ -57477,144 +59933,250 @@ msgid ""
 msgstr ""
 
 #. constexpr_fundef_p
-#: cp/constexpr.cc:283
+#: cp/constexpr.cc:287
 #, gcc-internal-format
 msgid "invalid return type %qT of %<constexpr%> function %q+D"
 msgstr ""
 
-#: cp/constexpr.cc:312
+#: cp/constexpr.cc:316
 #, gcc-internal-format
-msgid "%<constexpr%> constructor in %q#T that has virtual base classes"
+msgid ""
+"%<constexpr%> constructor in %q#T that has virtual base classes only "
+"available with %<-std=c++2c%> or %<-std=gnu++2c%>"
 msgstr ""
 
-#: cp/constexpr.cc:315
+#: cp/constexpr.cc:320
 #, gcc-internal-format
-msgid "%<constexpr%> destructor in %q#T that has virtual base classes"
+msgid ""
+"%<constexpr%> destructor in %q#T that has virtual base classes only "
+"available with %<-std=c++2c%> or %<-std=gnu++2c%>"
 msgstr ""
 
-#: cp/constexpr.cc:575
+#: cp/constexpr.cc:580
 #, gcc-internal-format
 msgid "%<constexpr%> constructor does not have empty body"
 msgstr ""
 
-#: cp/constexpr.cc:833
+#: cp/constexpr.cc:838
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> constructor for union %qT must initialize exactly one non-"
 "static data member"
 msgstr ""
 
-#: cp/constexpr.cc:894
+#: cp/constexpr.cc:899
 #, gcc-internal-format
 msgid ""
 "member %qD must be initialized by mem-initializer in %<constexpr%> "
 "constructor"
 msgstr ""
 
-#: cp/constexpr.cc:957
+#: cp/constexpr.cc:962 cp/constexpr.cc:1128
 #, gcc-internal-format
 msgid "body of %<constexpr%> function %qD not a return-statement"
 msgstr ""
 
-#: cp/constexpr.cc:1082
+#: cp/constexpr.cc:1087
 #, gcc-internal-format
 msgid "%<-fimplicit-constexpr%> only affects %<inline%> functions"
 msgstr ""
 
-#: cp/constexpr.cc:1098
+#: cp/constexpr.cc:1103
 #, gcc-internal-format
 msgid "%qD is not usable as a %<constexpr%> function because:"
 msgstr ""
 
-#: cp/constexpr.cc:1354 cp/constexpr.cc:6586
+#: cp/constexpr.cc:1465 cp/constexpr.cc:7962
 #, gcc-internal-format
 msgid "destroying %qE outside its lifetime"
 msgstr ""
 
-#: cp/constexpr.cc:1644 cp/constexpr.cc:3402
-#: rust/backend/rust-constexpr.cc:3329
+#: cp/constexpr.cc:1739
+#, gcc-internal-format
+msgid "%qs called after throwing an exception of type %qT; %<what()%>: %qs"
+msgstr ""
+
+#: cp/constexpr.cc:1754
+#, gcc-internal-format
+msgid "%qs called after throwing an exception %qE"
+msgstr ""
+
+#: cp/constexpr.cc:1757
+#, gcc-internal-format
+msgid "%qs called after throwing an exception of type %qT"
+msgstr ""
+
+#: cp/constexpr.cc:1771
+#, gcc-internal-format
+msgid "uncaught exception of type %qT; %<what()%>: %qs"
+msgstr ""
+
+#: cp/constexpr.cc:1785
+#, gcc-internal-format
+msgid "uncaught exception %qE"
+msgstr ""
+
+#: cp/constexpr.cc:1787
+#, gcc-internal-format
+msgid "uncaught exception of type %qT"
+msgstr ""
+
+#: cp/constexpr.cc:1911
+#, gcc-internal-format
+msgid "call to %qD function with incorrect number of arguments"
+msgstr ""
+
+#: cp/constexpr.cc:1929
+#, gcc-internal-format
+msgid "%qD called with no caught exceptions pending"
+msgstr ""
+
+#: cp/constexpr.cc:2013
+#, gcc-internal-format
+msgid "cannot allocate exception: size not constant"
+msgstr ""
+
+#: cp/constexpr.cc:2033
+#, gcc-internal-format
+msgid ""
+"first argument to %qD function not result of %<__cxa_allocate_exception%>"
+msgstr ""
+
+#: cp/constexpr.cc:2064 cp/constexpr.cc:2116
+#, gcc-internal-format
+msgid "%qD called with no caught exceptions active"
+msgstr ""
+
+#: cp/constexpr.cc:2154
+#, gcc-internal-format
+msgid "%qD called without %<std::%D%> being defined"
+msgstr ""
+
+#: cp/constexpr.cc:2223
+#, gcc-internal-format
+msgid "%qD called without supportable %qs"
+msgstr ""
+
+#: cp/constexpr.cc:2279
+#, gcc-internal-format
+msgid "%qD called with unexpected %qs argument"
+msgstr ""
+
+#: cp/constexpr.cc:2307
+#, gcc-internal-format
+msgid "%qD called with second argument other than 1 or -1"
+msgstr ""
+
+#: cp/constexpr.cc:2345
+#, gcc-internal-format
+msgid "wrong number of arguments to %qs call"
+msgstr ""
+
+#: cp/constexpr.cc:2372
+#, gcc-internal-format
+msgid "first %qs call argument should be 0, 1, 2, 16, 17 or 18"
+msgstr ""
+
+#: cp/constexpr.cc:2419
+#, gcc-internal-format
+msgid ""
+"%qs tag string contains %qc character other than letters, digits or %<_%>"
+msgstr ""
+
+#: cp/constexpr.cc:2453
+msgid "constexpr message: %.*s [%r%.*s%R]"
+msgstr ""
+
+#: cp/constexpr.cc:2457
+#, gcc-internal-format
+msgid "constexpr message: %.*s"
+msgstr ""
+
+#: cp/constexpr.cc:2563 cp/constexpr.cc:4538
+#: rust/backend/rust-constexpr.cc:3510
 #, gcc-internal-format
 msgid "%<constexpr%> call flows off the end of the function"
 msgstr ""
 
-#: cp/constexpr.cc:1646 cp/constexpr.cc:1745 cp/constexpr.cc:1754
-#: cp/constexpr.cc:3711 rust/backend/rust-constexpr.cc:3334
-#: rust/backend/rust-constexpr.cc:3344 rust/backend/rust-constexpr.cc:4324
+#: cp/constexpr.cc:2565 cp/constexpr.cc:2686 cp/constexpr.cc:2695
+#: cp/constexpr.cc:4871 rust/backend/rust-constexpr.cc:3515
+#: rust/backend/rust-constexpr.cc:3525
 #, gcc-internal-format
 msgid "%q+E is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:1904 cp/constexpr.cc:2803 cp/constexpr.cc:3086
-#: cp/constexpr.cc:10141 rust/backend/rust-constexpr.cc:5789
+#: cp/constexpr.cc:2855 cp/constexpr.cc:3819 cp/constexpr.cc:4193
+#: cp/constexpr.cc:4258 cp/constexpr.cc:12023
+#: rust/backend/rust-constexpr.cc:6013
 #, gcc-internal-format
 msgid "call to non-%<constexpr%> function %qD"
 msgstr ""
 
-#: cp/constexpr.cc:1951 cp/constexpr.cc:6144 cp/constexpr.cc:8592
-#: rust/backend/rust-constexpr.cc:875 rust/backend/rust-constexpr.cc:2494
+#: cp/constexpr.cc:2929 cp/constexpr.cc:7479 cp/constexpr.cc:10197
+#: rust/backend/rust-constexpr.cc:916 rust/backend/rust-constexpr.cc:2576
 #, gcc-internal-format
 msgid "dereferencing a null pointer"
 msgstr ""
 
-#: cp/constexpr.cc:2139
+#: cp/constexpr.cc:3115
 #, gcc-internal-format
 msgid "the comparison reduces to %qE"
 msgstr ""
 
-#: cp/constexpr.cc:2142
+#: cp/constexpr.cc:3118
 #, gcc-internal-format
 msgid "%qE evaluates to false"
 msgstr ""
 
-#: cp/constexpr.cc:2221
+#: cp/constexpr.cc:3201
 #, gcc-internal-format
 msgid "failed %<assume%> attribute assumption"
 msgstr ""
 
-#: cp/constexpr.cc:2256 cp/constexpr.cc:10105
-#: rust/backend/rust-constexpr.cc:5758
+#: cp/constexpr.cc:3241 cp/constexpr.cc:11968
+#: rust/backend/rust-constexpr.cc:5982
 #, gcc-internal-format
 msgid "call to internal function %qE"
 msgstr ""
 
-#: cp/constexpr.cc:2310 rust/backend/rust-constexpr.cc:2615
+#: cp/constexpr.cc:3298 rust/backend/rust-constexpr.cc:2697
 #, gcc-internal-format
 msgid "modifying a const object %qE is not allowed in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:2338 rust/backend/rust-constexpr.cc:2618
+#: cp/constexpr.cc:3326 rust/backend/rust-constexpr.cc:2700
 #, gcc-internal-format
 msgid "originally declared %<const%> here"
 msgstr ""
 
-#: cp/constexpr.cc:2591 cp/constexpr.cc:2647 cp/constexpr.cc:2680
-#: cp/constexpr.cc:2702
+#: cp/constexpr.cc:3604 cp/constexpr.cc:3663 cp/constexpr.cc:3696
+#: cp/constexpr.cc:3718
 #, gcc-internal-format
 msgid "reference %<dynamic_cast%> failed"
 msgstr ""
 
-#: cp/constexpr.cc:2592
+#: cp/constexpr.cc:3605
 #, gcc-internal-format
 msgid "dynamic type %qT of its operand does not have a base class of type %qT"
 msgstr ""
 
-#: cp/constexpr.cc:2616
+#: cp/constexpr.cc:3632
 #, gcc-internal-format
 msgid "virtual table pointer is used uninitialized"
 msgstr ""
 
-#: cp/constexpr.cc:2648 cp/constexpr.cc:2681
+#: cp/constexpr.cc:3664 cp/constexpr.cc:3697
 #, gcc-internal-format
 msgid ""
 "static type %qT of its operand is a non-public base class of dynamic type %qT"
 msgstr ""
 
-#: cp/constexpr.cc:2704
+#: cp/constexpr.cc:3720
 #, gcc-internal-format
 msgid "%qT is an ambiguous base class of dynamic type %qT of its operand"
 msgstr ""
 
-#: cp/constexpr.cc:2707
+#: cp/constexpr.cc:3723
 #, gcc-internal-format
 msgid ""
 "dynamic type %qT of its operand does not have an unambiguous public base "
@@ -57623,424 +60185,442 @@ msgstr ""
 
 #. virtual_offset is only set for virtual bases, which make the
 #. class non-literal, so we don't need to handle it here.
-#: cp/constexpr.cc:2809
+#: cp/constexpr.cc:3825
 #, gcc-internal-format
 msgid "calling constexpr member function %qD through virtual base subobject"
 msgstr ""
 
-#: cp/constexpr.cc:2918 rust/backend/rust-constexpr.cc:3390
+#: cp/constexpr.cc:3905
+#, gcc-internal-format
+msgid "couldn%'t throw %qT"
+msgstr ""
+
+#: cp/constexpr.cc:3980 rust/backend/rust-constexpr.cc:3571
 #, gcc-internal-format
 msgid "expression %qE does not designate a %<constexpr%> function"
 msgstr ""
 
-#: cp/constexpr.cc:2965
+#: cp/constexpr.cc:4063
 #, gcc-internal-format
 msgid "cannot allocate array: size not constant"
 msgstr ""
 
-#: cp/constexpr.cc:3006
+#: cp/constexpr.cc:4096
 #, gcc-internal-format
 msgid "array deallocation of object allocated with non-array allocation"
 msgstr ""
 
-#: cp/constexpr.cc:3010 cp/constexpr.cc:3033
+#: cp/constexpr.cc:4100 cp/constexpr.cc:4123
 #, gcc-internal-format
 msgid "allocation performed here"
 msgstr ""
 
-#: cp/constexpr.cc:3029
+#: cp/constexpr.cc:4119
 #, gcc-internal-format
 msgid "non-array deallocation of object allocated with array allocation"
 msgstr ""
 
-#: cp/constexpr.cc:3046
+#: cp/constexpr.cc:4136
 #, gcc-internal-format
 msgid "deallocation of already deallocated storage"
 msgstr ""
 
-#: cp/constexpr.cc:3053
+#: cp/constexpr.cc:4143
 #, gcc-internal-format
 msgid "deallocation of storage that was not previously allocated"
 msgstr ""
 
-#: cp/constexpr.cc:3179 rust/backend/rust-constexpr.cc:3445
+#: cp/constexpr.cc:4301 rust/backend/rust-constexpr.cc:3626
 #, gcc-internal-format
 msgid "%qD called in a constant expression before its definition is complete"
 msgstr ""
 
-#: cp/constexpr.cc:3186
+#: cp/constexpr.cc:4308
 #, gcc-internal-format
 msgid "%qD called in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:3190 rust/backend/rust-constexpr.cc:3459
+#: cp/constexpr.cc:4312 rust/backend/rust-constexpr.cc:3640
 #, gcc-internal-format
 msgid "%qD used before its definition"
 msgstr ""
 
-#: cp/constexpr.cc:3272 rust/backend/rust-constexpr.cc:3501
+#: cp/constexpr.cc:4396 rust/backend/rust-constexpr.cc:3682
 #, gcc-internal-format
 msgid "call has circular dependency"
 msgstr ""
 
-#: cp/constexpr.cc:3283 rust/backend/rust-constexpr.cc:3512
+#: cp/constexpr.cc:4407 rust/backend/rust-constexpr.cc:3693
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> evaluation depth exceeds maximum of %d (use %<-fconstexpr-"
 "depth=%> to increase the maximum)"
 msgstr ""
 
-#: cp/constexpr.cc:3669
+#: cp/constexpr.cc:4829
 #, gcc-internal-format
 msgid "reference to %qD is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:3672
+#: cp/constexpr.cc:4832
 #, gcc-internal-format
 msgid "pointer to %qD is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:3678
+#: cp/constexpr.cc:4838
 #, gcc-internal-format
 msgid ""
 "address of non-static constexpr variable %qD may differ on each invocation "
 "of the enclosing function; add %<static%> to give it a constant address"
 msgstr ""
 
-#: cp/constexpr.cc:3754
+#: cp/constexpr.cc:4914 rust/backend/rust-constexpr.cc:6730
 #, gcc-internal-format
 msgid "right operand of shift expression %q+E is negative"
 msgstr ""
 
-#: cp/constexpr.cc:3761
+#: cp/constexpr.cc:4921 rust/backend/rust-constexpr.cc:6738
 #, gcc-internal-format
 msgid ""
 "right operand of shift expression %q+E is greater than or equal to the "
 "precision %wu of the left operand"
 msgstr ""
 
-#: cp/constexpr.cc:3784
+#: cp/constexpr.cc:4944 rust/backend/rust-constexpr.cc:6757
 #, gcc-internal-format
 msgid "left operand of shift expression %q+E is negative"
 msgstr ""
 
-#: cp/constexpr.cc:3803
+#: cp/constexpr.cc:4963 rust/backend/rust-constexpr.cc:6776
 #, gcc-internal-format
 msgid "shift expression %q+E overflows"
 msgstr ""
 
-#: cp/constexpr.cc:4002
+#: cp/constexpr.cc:5182 rust/backend/rust-constexpr.cc:3169
 #, gcc-internal-format
 msgid "arithmetic involving a null pointer in %qE"
 msgstr ""
 
-#: cp/constexpr.cc:4512 rust/backend/rust-constexpr.cc:4399
+#: cp/constexpr.cc:5729 rust/backend/rust-constexpr.cc:4619
 #, gcc-internal-format
 msgid ""
 "array subscript value %qE is outside the bounds of array %qD of type %qT"
 msgstr ""
 
-#: cp/constexpr.cc:4515 rust/backend/rust-constexpr.cc:4404
+#: cp/constexpr.cc:5732 rust/backend/rust-constexpr.cc:4624
 #, gcc-internal-format
 msgid ""
 "nonzero array subscript %qE is used with array %qD of type %qT with unknown "
 "bounds"
 msgstr ""
 
-#: cp/constexpr.cc:4520 rust/backend/rust-constexpr.cc:4411
+#: cp/constexpr.cc:5737 rust/backend/rust-constexpr.cc:4631
 #, gcc-internal-format
 msgid "array subscript value %qE is outside the bounds of array type %qT"
 msgstr ""
 
-#: cp/constexpr.cc:4523 rust/backend/rust-constexpr.cc:4416
+#: cp/constexpr.cc:5740 rust/backend/rust-constexpr.cc:4636
 #, gcc-internal-format
 msgid ""
 "nonzero array subscript %qE is used with array of type %qT with unknown "
 "bounds"
 msgstr ""
 
-#: cp/constexpr.cc:4722 rust/backend/rust-constexpr.cc:1667
+#: cp/constexpr.cc:5954 rust/backend/rust-constexpr.cc:1714
 #, gcc-internal-format
 msgid "accessing uninitialized array element"
 msgstr ""
 
-#: cp/constexpr.cc:4784 rust/backend/rust-constexpr.cc:1724
+#: cp/constexpr.cc:6020 rust/backend/rust-constexpr.cc:1773
 #, gcc-internal-format
 msgid "dereferencing a null pointer in %qE"
 msgstr ""
 
-#: cp/constexpr.cc:4803 cp/constexpr.cc:4919 cp/constexpr.cc:4931
-#: cp/constexpr.cc:7767 cp/constexpr.cc:7898 cp/constexpr.cc:10055
-#: rust/backend/rust-constexpr.cc:1738 rust/backend/rust-constexpr.cc:1983
-#: rust/backend/rust-constexpr.cc:2225 rust/backend/rust-constexpr.cc:4743
-#: rust/backend/rust-constexpr.cc:5712
+#: cp/constexpr.cc:6039 cp/constexpr.cc:6175 cp/constexpr.cc:6187
+#: cp/constexpr.cc:9208 cp/constexpr.cc:9344 cp/constexpr.cc:11918
+#: cp/constexpr.cc:12977 rust/backend/rust-constexpr.cc:1787
+#: rust/backend/rust-constexpr.cc:2046 rust/backend/rust-constexpr.cc:2296
+#: rust/backend/rust-constexpr.cc:4964 rust/backend/rust-constexpr.cc:5936
 #, gcc-internal-format
 msgid "%qE is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:4811 rust/backend/rust-constexpr.cc:1744
+#: cp/constexpr.cc:6047 rust/backend/rust-constexpr.cc:1793
 #, gcc-internal-format
 msgid "mutable %qD is not usable in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:4843 cp/constexpr.cc:4879 cp/constexpr.cc:6754
-#: rust/backend/rust-constexpr.cc:1774 rust/backend/rust-constexpr.cc:1797
+#: cp/constexpr.cc:6081 cp/constexpr.cc:6118 cp/constexpr.cc:8153
+#: rust/backend/rust-constexpr.cc:1823 rust/backend/rust-constexpr.cc:1846
 #, gcc-internal-format
 msgid "accessing uninitialized member %qD"
 msgstr ""
 
-#: cp/constexpr.cc:4845 cp/constexpr.cc:4858 cp/constexpr.cc:6749
-#: rust/backend/rust-constexpr.cc:1776
+#: cp/constexpr.cc:6083
+#, gcc-internal-format
+msgid ""
+"accessing %qD member instead of active %qD member in constant expression"
+msgstr ""
+
+#: cp/constexpr.cc:6096 cp/constexpr.cc:8148
+#: rust/backend/rust-constexpr.cc:1825
 #, gcc-internal-format
 msgid ""
 "accessing %qD member instead of initialized %qD member in constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:4997
+#: cp/constexpr.cc:6253
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT is a union type"
 msgstr ""
 
-#: cp/constexpr.cc:5000
+#: cp/constexpr.cc:6256
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT contains a union type"
 msgstr ""
 
-#: cp/constexpr.cc:5011
+#: cp/constexpr.cc:6267
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT is a pointer type"
 msgstr ""
 
-#: cp/constexpr.cc:5014
+#: cp/constexpr.cc:6270
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT contains a pointer type"
 msgstr ""
 
-#: cp/constexpr.cc:5025
+#: cp/constexpr.cc:6281
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT is a reference type"
 msgstr ""
 
-#: cp/constexpr.cc:5028
+#: cp/constexpr.cc:6284
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT contains a reference type"
 msgstr ""
 
-#: cp/constexpr.cc:5039
+#: cp/constexpr.cc:6295
 #, gcc-internal-format
 msgid ""
 "%qs is not a constant expression because %qT is a pointer to member type"
 msgstr ""
 
-#: cp/constexpr.cc:5043
+#: cp/constexpr.cc:6299
 #, gcc-internal-format
 msgid ""
 "%qs is not a constant expression because %qT contains a pointer to member "
 "type"
 msgstr ""
 
-#: cp/constexpr.cc:5054
+#: cp/constexpr.cc:6310
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT is volatile"
 msgstr ""
 
-#: cp/constexpr.cc:5057
+#: cp/constexpr.cc:6313
 #, gcc-internal-format
 msgid ""
 "%qs is not a constant expression because %qT contains a volatile subobject"
 msgstr ""
 
-#: cp/constexpr.cc:5212
+#: cp/constexpr.cc:6471
 #, gcc-internal-format
 msgid "%qs cannot be constant evaluated on the target"
 msgstr ""
 
-#: cp/constexpr.cc:5221 cp/constexpr.cc:5231
+#: cp/constexpr.cc:6480 cp/constexpr.cc:6490
 #, gcc-internal-format
 msgid "%qs cannot be constant evaluated because the type is too large"
 msgstr ""
 
-#: cp/constexpr.cc:5251
+#: cp/constexpr.cc:6510
 #, gcc-internal-format
 msgid "%qs cannot be constant evaluated because the argument cannot be encoded"
 msgstr ""
 
-#: cp/constexpr.cc:5297
+#: cp/constexpr.cc:6557
 #, gcc-internal-format
 msgid "%qs accessing uninitialized byte at offset %d"
 msgstr ""
 
-#: cp/constexpr.cc:5309
+#: cp/constexpr.cc:6569
 #, gcc-internal-format
 msgid ""
 "%qs cannot be constant evaluated because the argument cannot be interpreted"
 msgstr ""
 
-#: cp/constexpr.cc:6164 rust/backend/rust-constexpr.cc:895
+#: cp/constexpr.cc:7503
 #, gcc-internal-format
-msgid "accessing value of %qE through a %qT glvalue in a constant expression"
+msgid ""
+"accessing value of %qT object through a %qT glvalue in a constant expression"
+msgstr ""
+
+#: cp/constexpr.cc:7511
+#, gcc-internal-format
+msgid "%qT object created here"
+msgstr ""
+
+#: cp/constexpr.cc:7514 cp/parser.cc:13136 cp/parser.cc:13147
+#: cp/reflect.cc:8428 cp/semantics.cc:4701 cp/semantics.cc:4717
+#, gcc-internal-format
+msgid "%q#D declared here"
 msgstr ""
 
 #. Provide a more accurate message for deleted variables.
-#: cp/constexpr.cc:6204 cp/constexpr.cc:6237
+#: cp/constexpr.cc:7557 cp/constexpr.cc:7590
 #, gcc-internal-format
 msgid "use of allocated storage after deallocation in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:6206 cp/constexpr.cc:6232 cp/constexpr.cc:6239
-#: cp/constexpr.cc:6581 cp/constexpr.cc:9260 cp/constexpr.cc:9273
+#: cp/constexpr.cc:7559 cp/constexpr.cc:7585 cp/constexpr.cc:7592
+#: cp/constexpr.cc:7957 cp/constexpr.cc:11022 cp/constexpr.cc:11035
 #, gcc-internal-format
 msgid "allocated here"
 msgstr ""
 
-#: cp/constexpr.cc:6210
+#: cp/constexpr.cc:7563
 #, gcc-internal-format
 msgid "accessing %qE outside its lifetime"
 msgstr ""
 
-#: cp/constexpr.cc:6230
+#: cp/constexpr.cc:7583
 #, gcc-internal-format
 msgid ""
 "the content of uninitialized storage is not usable in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:6242 rust/backend/rust-constexpr.cc:4041
+#: cp/constexpr.cc:7595
 #, gcc-internal-format
 msgid "the value of %qD is not usable in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:6250
+#: cp/constexpr.cc:7603 rust/backend/rust-constexpr.cc:4242
 #, gcc-internal-format
 msgid "%qD used in its own initializer"
 msgstr ""
 
-#: cp/constexpr.cc:6255
+#: cp/constexpr.cc:7608
 #, gcc-internal-format
 msgid "%q#D is not const"
 msgstr ""
 
-#: cp/constexpr.cc:6258
+#: cp/constexpr.cc:7611
 #, gcc-internal-format
 msgid "%q#D is volatile"
 msgstr ""
 
-#: cp/constexpr.cc:6263 cp/constexpr.cc:6270
+#: cp/constexpr.cc:7616 cp/constexpr.cc:7623
+#: rust/backend/rust-constexpr.cc:4248 rust/backend/rust-constexpr.cc:4256
 #, gcc-internal-format
 msgid "%qD was not initialized with a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:6276
+#: cp/constexpr.cc:7629 rust/backend/rust-constexpr.cc:4262
 #, gcc-internal-format
 msgid "%qD was not declared %<constexpr%>"
 msgstr ""
 
-#: cp/constexpr.cc:6279
+#: cp/constexpr.cc:7632 rust/backend/rust-constexpr.cc:4266
 #, gcc-internal-format
 msgid "%qD does not have integral or enumeration type"
 msgstr ""
 
-#: cp/constexpr.cc:6579
+#: cp/constexpr.cc:7955
 #, gcc-internal-format
 msgid ""
 "modification of allocated storage after deallocation is not a constant "
 "expression"
 msgstr ""
 
-#: cp/constexpr.cc:6588
+#: cp/constexpr.cc:7964
 #, gcc-internal-format
 msgid "modification of %qE outside its lifetime is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:6595
+#: cp/constexpr.cc:7971
 #, gcc-internal-format
 msgid ""
 "destroying %qE from outside current evaluation is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:6598
+#: cp/constexpr.cc:7974
 #, gcc-internal-format
 msgid ""
 "modification of %qE from outside current evaluation is not a constant "
 "expression"
 msgstr ""
 
-#: cp/constexpr.cc:6729
+#: cp/constexpr.cc:8126
 #, gcc-internal-format
 msgid ""
 "change of the active member of a union from %qD to %qD is not a constant "
 "expression before C++20"
 msgstr ""
 
-#: cp/constexpr.cc:6758
+#: cp/constexpr.cc:8157
 #, gcc-internal-format
 msgid ""
 "%qD does not implicitly begin its lifetime because %qT does not have a non-"
 "deleted trivial default constructor, use %<std::construct_at%> instead"
 msgstr ""
 
-#: cp/constexpr.cc:6765
+#: cp/constexpr.cc:8164
 #, gcc-internal-format
 msgid ""
 "initializing %qD requires a member access expression as the left operand of "
 "the assignment"
 msgstr ""
 
-#: cp/constexpr.cc:6777 rust/backend/rust-constexpr.cc:2820
+#: cp/constexpr.cc:8176 rust/backend/rust-constexpr.cc:2906
 #, gcc-internal-format
 msgid ""
 "change of the active member of a union from %qD to %qD during initialization"
 msgstr ""
 
-#: cp/constexpr.cc:7229 cp/constexpr.cc:8934 cp/constexpr.cc:8946
-#: rust/backend/rust-constexpr.cc:4668
-#, gcc-internal-format
-msgid "statement is not a constant expression"
-msgstr ""
-
-#: cp/constexpr.cc:7436 rust/backend/rust-constexpr.cc:4933
+#: cp/constexpr.cc:8836 rust/backend/rust-constexpr.cc:5154
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> loop iteration count exceeds limit of %d (use %<-fconstexpr-"
 "loop-limit=%> to increase the limit)"
 msgstr ""
 
-#: cp/constexpr.cc:7545 rust/backend/rust-constexpr.cc:999
+#: cp/constexpr.cc:8949 rust/backend/rust-constexpr.cc:1041
 #, gcc-internal-format
 msgid "inline assembly is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:7547 rust/backend/rust-constexpr.cc:1000
+#: cp/constexpr.cc:8951 rust/backend/rust-constexpr.cc:1042
 #, gcc-internal-format
 msgid ""
 "only unevaluated inline assembly is allowed in a %<constexpr%> function in C+"
 "+20"
 msgstr ""
 
-#: cp/constexpr.cc:7566
+#: cp/constexpr.cc:8970
 #, gcc-internal-format
 msgid "use of %qD"
 msgstr ""
 
-#: cp/constexpr.cc:7570
+#: cp/constexpr.cc:8974
 #, gcc-internal-format
 msgid ""
 "its value can vary between compiler versions or with different %<-mtune%> or "
 "%<-mcpu%> flags"
 msgstr ""
 
-#: cp/constexpr.cc:7572
+#: cp/constexpr.cc:8976
 #, gcc-internal-format
 msgid ""
 "if this use is part of a public ABI, change it to instead use a constant "
 "variable you define"
 msgstr ""
 
-#: cp/constexpr.cc:7574
+#: cp/constexpr.cc:8978
 #, gcc-internal-format, gfc-internal-format
 msgid "the default value for the current CPU tuning is %d bytes"
 msgstr ""
 
-#: cp/constexpr.cc:7576
+#: cp/constexpr.cc:8980
 #, gcc-internal-format
 msgid ""
 "you can stabilize this value with %<--param "
@@ -58048,234 +60628,307 @@ msgid ""
 "Wno-interference-size%>"
 msgstr ""
 
-#: cp/constexpr.cc:7729
+#: cp/constexpr.cc:9092
+#, gcc-internal-format
+msgid "destructor exited with an exception"
+msgstr ""
+
+#: cp/constexpr.cc:9170
 #, gcc-internal-format
 msgid "value %qE of type %qT is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:7742
+#: cp/constexpr.cc:9183
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> evaluation operation count exceeds limit of %wd (use %<-"
 "fconstexpr-ops-limit=%> to increase the limit)"
 msgstr ""
 
-#: cp/constexpr.cc:7928
+#: cp/constexpr.cc:9374
 #, gcc-internal-format
 msgid "control passes through definition of %qD with thread storage duration"
 msgstr ""
 
-#: cp/constexpr.cc:7931
+#: cp/constexpr.cc:9377
 #, gcc-internal-format
 msgid "control passes through definition of %qD with static storage duration"
 msgstr ""
 
-#: cp/constexpr.cc:7996 cp/constexpr.cc:10751
-#: rust/backend/rust-constexpr.cc:2056 rust/backend/rust-constexpr.cc:6206
+#: cp/constexpr.cc:9445 cp/constexpr.cc:12670
+#: rust/backend/rust-constexpr.cc:2121 rust/backend/rust-constexpr.cc:6430
 #, gcc-internal-format
 msgid "temporary of non-literal type %qT in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:8454 cp/constexpr.cc:10256
+#: cp/constexpr.cc:9670
+#, gcc-internal-format
+msgid "uncaught exception exited from %<noexcept%> function %qD"
+msgstr ""
+
+#: cp/constexpr.cc:9674
+#, gcc-internal-format
+msgid ""
+"destructor exited with an exception after initializing the exception object"
+msgstr ""
+
+#: cp/constexpr.cc:9677
+#, gcc-internal-format
+msgid "constructor exited with another exception while entering handler"
+msgstr ""
+
+#: cp/constexpr.cc:10053 cp/constexpr.cc:12146
 #, gcc-internal-format
 msgid "%<reinterpret_cast%> is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:8485 rust/backend/rust-constexpr.cc:2461
+#: cp/constexpr.cc:10087 rust/backend/rust-constexpr.cc:2543
 #, gcc-internal-format
 msgid ""
 "conversion from pointer type %qT to arithmetic type %qT in a constant "
 "expression"
 msgstr ""
 
-#: cp/constexpr.cc:8537
+#: cp/constexpr.cc:10142
 #, gcc-internal-format
 msgid ""
 "cast from %qT is not allowed in a constant expression because pointed-to "
 "type %qT is not similar to %qT"
 msgstr ""
 
-#: cp/constexpr.cc:8547
+#: cp/constexpr.cc:10152
 #, gcc-internal-format
 msgid "pointed-to object declared here"
 msgstr ""
 
-#: cp/constexpr.cc:8555
+#: cp/constexpr.cc:10160
 #, gcc-internal-format
 msgid "cast from %qT is not allowed in a constant expression before C++26"
 msgstr ""
 
-#: cp/constexpr.cc:8569
+#: cp/constexpr.cc:10174
 #, gcc-internal-format
 msgid "%qE is not a constant expression when the class %qT is still incomplete"
 msgstr ""
 
-#: cp/constexpr.cc:8609 rust/backend/rust-constexpr.cc:2506
+#: cp/constexpr.cc:10214 rust/backend/rust-constexpr.cc:2588
 #, gcc-internal-format
 msgid "%<reinterpret_cast<%T>(%E)%> is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:8747 cp/constexpr.cc:10563 cp/constexpr.cc:10974
-#: rust/backend/rust-constexpr.cc:6100 rust/backend/rust-constexpr.cc:6415
+#: cp/constexpr.cc:10373 cp/constexpr.cc:12455 cp/constexpr.cc:12898
+#: rust/backend/rust-constexpr.cc:6324 rust/backend/rust-constexpr.cc:6644
 #, gcc-internal-format
 msgid "expression %qE is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:8791 cp/constexpr.cc:11015
+#: cp/constexpr.cc:10422 cp/constexpr.cc:12942
 #, gcc-internal-format
 msgid "%<goto%> is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:8849
+#: cp/constexpr.cc:10543
 #, gcc-internal-format
-msgid "contract predicate is false in constant expression"
+msgid "address of a call to %qs is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:8884
+#: cp/constexpr.cc:10593 cp/constexpr.cc:10605
+#: rust/backend/rust-constexpr.cc:4889
 #, gcc-internal-format
-msgid "address of a call to %qs is not a constant expression"
+msgid "statement is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:8949
+#: cp/constexpr.cc:10608
 #, gcc-internal-format
 msgid "unexpected expression %qE of kind %s"
 msgstr ""
 
-#: cp/constexpr.cc:9243 rust/backend/rust-constexpr.cc:5158
+#: cp/constexpr.cc:10626
+#, gcc-internal-format
+msgid "%qE accesses an object outside its lifetime"
+msgstr ""
+
+#: cp/constexpr.cc:10764
+#, gcc-internal-format
+msgid "contract condition is not constant"
+msgstr ""
+
+#: cp/constexpr.cc:10770
+#, gcc-internal-format
+msgid "contract predicate is false in constant expression"
+msgstr ""
+
+#: cp/constexpr.cc:10955
+#, gcc-internal-format
+msgid "%<break%> outside of a loop or %<switch%>"
+msgstr ""
+
+#: cp/constexpr.cc:10957
+#, gcc-internal-format
+msgid "%<continue%> outside of a loop"
+msgstr ""
+
+#: cp/constexpr.cc:10959
+#, gcc-internal-format
+msgid "%<return%> in a statement expression"
+msgstr ""
+
+#: cp/constexpr.cc:11000 rust/backend/rust-constexpr.cc:5382
 #, gcc-internal-format
 msgid ""
 "%qE is not a constant expression because it refers to mutable subobjects of "
 "%qT"
 msgstr ""
 
-#: cp/constexpr.cc:9258 rust/backend/rust-constexpr.cc:5183
+#: cp/constexpr.cc:11016
+#, gcc-internal-format
+msgid ""
+"%qE is not a constant expression because it refers to exception object "
+"allocated with %<__cxa_allocate_exception%>"
+msgstr ""
+
+#: cp/constexpr.cc:11020 rust/backend/rust-constexpr.cc:5407
 #, gcc-internal-format
 msgid ""
 "%qE is not a constant expression because it refers to a result of %<operator "
 "new%>"
 msgstr ""
 
-#: cp/constexpr.cc:9271 rust/backend/rust-constexpr.cc:5195
+#: cp/constexpr.cc:11033 rust/backend/rust-constexpr.cc:5419
 #, gcc-internal-format
 msgid ""
 "%qE is not a constant expression because allocated storage has not been "
 "deallocated"
 msgstr ""
 
-#: cp/constexpr.cc:9293 rust/backend/rust-constexpr.cc:5213
+#: cp/constexpr.cc:11054 rust/backend/rust-constexpr.cc:5437
 #, gcc-internal-format
 msgid "immediate evaluation returns address of immediate function %qD"
 msgstr ""
 
-#: cp/constexpr.cc:9297
+#: cp/constexpr.cc:11058
 #, gcc-internal-format
 msgid "constant evaluation returns address of immediate function %qD"
 msgstr ""
 
-#: cp/constexpr.cc:9313 rust/backend/rust-constexpr.cc:5167
+#: cp/constexpr.cc:11083
+#, gcc-internal-format
+msgid ""
+"reference into an object of consteval-only type is not a constant expression "
+"unless it also has consteval-only type"
+msgstr ""
+
+#: cp/constexpr.cc:11088
+#, gcc-internal-format
+msgid ""
+"pointer into an object of consteval-only type is not a constant expression "
+"unless it also has consteval-only type"
+msgstr ""
+
+#: cp/constexpr.cc:11104 rust/backend/rust-constexpr.cc:5391
 #, gcc-internal-format
 msgid ""
 "%qE is not a constant expression because it refers to an incompletely "
 "initialized variable"
 msgstr ""
 
-#: cp/constexpr.cc:9351
+#: cp/constexpr.cc:11145
 #, gcc-internal-format
 msgid ""
 "%qE is not a constant expression because it initializes a %qT rather than %qT"
 msgstr ""
 
-#: cp/constexpr.cc:9992 rust/backend/rust-constexpr.cc:5667
+#: cp/constexpr.cc:11854 rust/backend/rust-constexpr.cc:5891
 #, gcc-internal-format
 msgid "lvalue-to-rvalue conversion of a volatile lvalue %qE with type %qT"
 msgstr ""
 
-#: cp/constexpr.cc:10221
+#: cp/constexpr.cc:12108
 #, gcc-internal-format
 msgid "lambda capture of %qE is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:10224
+#: cp/constexpr.cc:12111
 #, gcc-internal-format
 msgid "because it is used as a glvalue"
 msgstr ""
 
-#: cp/constexpr.cc:10280 rust/backend/rust-constexpr.cc:5893
+#: cp/constexpr.cc:12167 rust/backend/rust-constexpr.cc:6117
 #, gcc-internal-format
 msgid "%<reinterpret_cast%> from integer to pointer"
 msgstr ""
 
-#: cp/constexpr.cc:10314 rust/backend/rust-constexpr.cc:5921
+#: cp/constexpr.cc:12201 rust/backend/rust-constexpr.cc:6144
 #, gcc-internal-format
 msgid ""
 "address-of an object %qE with thread local or automatic storage is not a "
 "constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:10498
+#: cp/constexpr.cc:12391
 #, gcc-internal-format
 msgid "lambda-expression is not a constant expression before C++17"
 msgstr ""
 
-#: cp/constexpr.cc:10510
+#: cp/constexpr.cc:12403
 #, gcc-internal-format
 msgid "new-expression is not a constant expression before C++20"
 msgstr ""
 
-#: cp/constexpr.cc:10577
+#: cp/constexpr.cc:12479
 #, gcc-internal-format
 msgid "virtual functions cannot be %<constexpr%> before C++20"
 msgstr ""
 
-#: cp/constexpr.cc:10593
+#: cp/constexpr.cc:12496
 #, gcc-internal-format
 msgid ""
 "%<typeid%> is not a constant expression because %qE is of polymorphic type"
 msgstr ""
 
-#: cp/constexpr.cc:10657
+#: cp/constexpr.cc:12560
 #, gcc-internal-format
 msgid "cast to non-integral type %qT in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:10715
+#: cp/constexpr.cc:12634
 #, gcc-internal-format
 msgid "%qD defined %<thread_local%> in %<constexpr%> context"
 msgstr ""
 
-#: cp/constexpr.cc:10723
+#: cp/constexpr.cc:12642
 #, gcc-internal-format
 msgid "%qD defined %<static%> in %<constexpr%> context"
 msgstr ""
 
-#: cp/constexpr.cc:10801 rust/backend/rust-constexpr.cc:6251
+#: cp/constexpr.cc:12722 rust/backend/rust-constexpr.cc:6478
 #, gcc-internal-format
 msgid "division by zero is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:10902 rust/backend/rust-constexpr.cc:6349
+#: cp/constexpr.cc:12823 rust/backend/rust-constexpr.cc:6578
 #, gcc-internal-format
 msgid "%<delete[]%> is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:10971
+#: cp/constexpr.cc:12895
 #, gcc-internal-format
 msgid "neither branch of %<if%> is a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:10984
+#: cp/constexpr.cc:12908
 #, gcc-internal-format
 msgid "non-constant array initialization"
 msgstr ""
 
-#: cp/constexpr.cc:11032
+#: cp/constexpr.cc:12959
 #, gcc-internal-format
 msgid ""
 "label definition in %<constexpr%> function only available with %<-std=c+"
 "+23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: cp/constexpr.cc:11068 rust/backend/rust-constexpr.cc:6438
+#: cp/constexpr.cc:13004 rust/backend/rust-constexpr.cc:6667
 #, gcc-internal-format, gfc-internal-format
 msgid "unexpected AST of kind %s"
 msgstr ""
@@ -58315,668 +60968,630 @@ msgstr ""
 msgid "original template declaration here"
 msgstr ""
 
-#: cp/constraint.cc:1357
+#: cp/constraint.cc:1386
 #, gcc-internal-format
 msgid "the required expression %qE is invalid, because"
 msgstr ""
 
-#: cp/constraint.cc:1365
+#: cp/constraint.cc:1394
 #, gcc-internal-format
 msgid "the required expression %qE is invalid"
 msgstr ""
 
 #. Replay the substitution error.
-#: cp/constraint.cc:1407
+#: cp/constraint.cc:1436
 #, gcc-internal-format
 msgid "the required type %qT is invalid, because"
 msgstr ""
 
-#: cp/constraint.cc:1411
+#: cp/constraint.cc:1440
 #, gcc-internal-format
 msgid "the required type %qT is invalid"
 msgstr ""
 
-#: cp/constraint.cc:1466 cp/constraint.cc:1540
+#: cp/constraint.cc:1495 cp/constraint.cc:1569
 #, gcc-internal-format
 msgid "cannot convert %qE to %qT"
 msgstr ""
 
-#: cp/constraint.cc:1495
+#: cp/constraint.cc:1524
 #, gcc-internal-format
 msgid "%qE is not %<noexcept%>"
 msgstr ""
 
-#: cp/constraint.cc:1517
+#: cp/constraint.cc:1546
 #, gcc-internal-format
 msgid "%qE does not satisfy return-type-requirement, because"
 msgstr ""
 
-#: cp/constraint.cc:1524
+#: cp/constraint.cc:1553
 #, gcc-internal-format
 msgid "%qE does not satisfy return-type-requirement"
 msgstr ""
 
-#: cp/constraint.cc:1535
+#: cp/constraint.cc:1564
 #, gcc-internal-format
 msgid "cannot convert %qE to %qT because"
 msgstr ""
 
 #. Replay the substitution error.
-#: cp/constraint.cc:1579
+#: cp/constraint.cc:1608
 #, gcc-internal-format
 msgid "nested requirement %qE is not satisfied, because"
 msgstr ""
 
-#: cp/constraint.cc:1583
+#: cp/constraint.cc:1612
 #, gcc-internal-format
 msgid "nested requirement %qE is not satisfied"
 msgstr ""
 
-#: cp/constraint.cc:2098
-#, gcc-internal-format
-msgid "satisfaction of atomic constraint %qE depends on itself"
-msgstr ""
-
-#: cp/constraint.cc:2144
-#, gcc-internal-format
-msgid "satisfaction value of atomic constraint %qE changed from %qE to %qE"
-msgstr ""
-
-#: cp/constraint.cc:2147
-#, gcc-internal-format
-msgid "satisfaction value first evaluated to %qE from here"
-msgstr ""
-
-#: cp/constraint.cc:2264
-#, gcc-internal-format
-msgid "no operand of the disjunction is satisfied"
-msgstr ""
-
-#: cp/constraint.cc:2278
-#, gcc-internal-format
-msgid "the operand %qE is unsatisfied because"
-msgstr ""
-
-#: cp/constraint.cc:3044
+#: cp/constraint.cc:1912
 #, gcc-internal-format
-msgid "  %qT is not nothrow copy assignable"
+msgid "failed to complete %qT in SFINAE context"
 msgstr ""
 
-#: cp/constraint.cc:3047 cp/constraint.cc:3141
+#: cp/constraint.cc:1915
 #, gcc-internal-format
-msgid "  %qT is not nothrow default constructible"
+msgid "failed to deduce %qD in SFINAE context"
 msgstr ""
 
-#: cp/constraint.cc:3050
+#: cp/constraint.cc:2175
 #, gcc-internal-format
-msgid "  %qT is not nothrow copy constructible"
-msgstr ""
-
-#: cp/constraint.cc:3053
-#, gcc-internal-format
-msgid "  %qT is not trivially copy assignable"
+msgid "satisfaction of atomic constraint %qE depends on itself"
 msgstr ""
 
-#: cp/constraint.cc:3056 cp/constraint.cc:3190
+#: cp/constraint.cc:2221
 #, gcc-internal-format
-msgid "  %qT is not trivially default constructible"
+msgid "satisfaction value of atomic constraint %qE changed from %qE to %qE"
 msgstr ""
 
-#: cp/constraint.cc:3059
+#: cp/constraint.cc:2224
 #, gcc-internal-format
-msgid "  %qT is not trivially copy constructible"
+msgid "satisfaction value first evaluated to %qE from here"
 msgstr ""
 
-#: cp/constraint.cc:3062
+#: cp/constraint.cc:2341
 #, gcc-internal-format
-msgid "  %qT is not trivially destructible"
+msgid "no operand of the disjunction is satisfied"
 msgstr ""
 
-#: cp/constraint.cc:3065
+#: cp/constraint.cc:2355
 #, gcc-internal-format
-msgid "  %qT does not have unique object representations"
+msgid "the operand %qE is unsatisfied because"
 msgstr ""
 
-#: cp/constraint.cc:3068
+#: cp/constraint.cc:3138
 #, gcc-internal-format
-msgid "  %qT does not have a virtual destructor"
+msgid "%qT is not nothrow copy assignable"
 msgstr ""
 
-#: cp/constraint.cc:3071
+#: cp/constraint.cc:3141
 #, gcc-internal-format
-msgid "  %qT is not an abstract class"
+msgid "%qT is not nothrow default constructible"
 msgstr ""
 
-#: cp/constraint.cc:3074
+#: cp/constraint.cc:3144
 #, gcc-internal-format
-msgid "  %qT is not an aggregate"
+msgid "%qT is not nothrow copy constructible"
 msgstr ""
 
-#: cp/constraint.cc:3077
+#: cp/constraint.cc:3147
 #, gcc-internal-format
-msgid "  %qT is not an array"
+msgid "%qT is not trivially copy assignable"
 msgstr ""
 
-#: cp/constraint.cc:3080
+#: cp/constraint.cc:3150
 #, gcc-internal-format
-msgid "  %qT is not assignable from %qT"
+msgid "%qT is not trivially default constructible"
 msgstr ""
 
-#: cp/constraint.cc:3083
+#: cp/constraint.cc:3153
 #, gcc-internal-format
-msgid "  %qT is not a base of %qT"
+msgid "%qT is not trivially copy constructible"
 msgstr ""
 
-#: cp/constraint.cc:3086
+#: cp/constraint.cc:3156
 #, gcc-internal-format
-msgid "  %qT is not a bounded array"
+msgid "%qT is not trivially destructible"
 msgstr ""
 
-#: cp/constraint.cc:3089
+#: cp/constraint.cc:3159
 #, gcc-internal-format
-msgid "  %qT is not a class"
+msgid "%qT does not have unique object representations, because"
 msgstr ""
 
-#: cp/constraint.cc:3092
+#: cp/constraint.cc:3169
 #, gcc-internal-format
-msgid "  %qT is not a const type"
+msgid "%qT does not have a virtual destructor"
 msgstr ""
 
-#: cp/constraint.cc:3096
+#: cp/constraint.cc:3173
 #, gcc-internal-format
-msgid "  %qT is not default constructible"
+msgid "%qT is not an abstract class"
 msgstr ""
 
-#: cp/constraint.cc:3098
+#: cp/constraint.cc:3176
 #, gcc-internal-format
-msgid "  %qT is not constructible from %qE"
+msgid "%qT is not an aggregate"
 msgstr ""
 
-#: cp/constraint.cc:3101
+#: cp/constraint.cc:3179
 #, gcc-internal-format
-msgid "  %qT is not convertible from %qE"
+msgid "%qT is not an array"
 msgstr ""
 
-#: cp/constraint.cc:3104
+#: cp/constraint.cc:3182
 #, gcc-internal-format
-msgid "  %qT is not an empty class"
+msgid "%qT is not assignable from %qT, because"
 msgstr ""
 
-#: cp/constraint.cc:3107
+#: cp/constraint.cc:3186 cp/semantics.cc:13525 cp/typeck.cc:3701
 #, gcc-internal-format
-msgid "  %qT is not an enum"
+msgid "%qT is not a base of %qT"
 msgstr ""
 
-#: cp/constraint.cc:3110
+#: cp/constraint.cc:3189
 #, gcc-internal-format
-msgid "  %qT is not a final class"
+msgid "%qT is not a bounded array"
 msgstr ""
 
-#: cp/constraint.cc:3113
+#: cp/constraint.cc:3192
 #, gcc-internal-format
-msgid "  %qT is not a function"
+msgid "%qT is not a class"
 msgstr ""
 
-#: cp/constraint.cc:3117
+#: cp/constraint.cc:3195
 #, gcc-internal-format
-msgid "  %qT is not invocable"
+msgid "%qT is not a const type"
 msgstr ""
 
-#: cp/constraint.cc:3119
+#: cp/constraint.cc:3199
 #, gcc-internal-format
-msgid "  %qT is not invocable by %qE"
+msgid "%qT is not default constructible, because"
 msgstr ""
 
-#: cp/constraint.cc:3122
+#: cp/constraint.cc:3201
 #, gcc-internal-format
-msgid "  %qT is not layout compatible with %qT"
+msgid "%qT is not constructible from %qT, because"
 msgstr ""
 
-#: cp/constraint.cc:3125
+#: cp/constraint.cc:3210
 #, gcc-internal-format
-msgid "  %qT is not a literal type"
+msgid "%qT is not destructible, because"
 msgstr ""
 
-#: cp/constraint.cc:3128
+#: cp/constraint.cc:3214
 #, gcc-internal-format
-msgid "  %qT is not a member function pointer"
+msgid "%qT is not an empty class"
 msgstr ""
 
-#: cp/constraint.cc:3131
+#: cp/constraint.cc:3217
 #, gcc-internal-format
-msgid "  %qT is not a member object pointer"
+msgid "%qT is not an enum"
 msgstr ""
 
-#: cp/constraint.cc:3134
+#: cp/constraint.cc:3220
 #, gcc-internal-format
-msgid "  %qT is not a member pointer"
+msgid "%qT is not a final class"
 msgstr ""
 
-#: cp/constraint.cc:3137
+#: cp/constraint.cc:3223
 #, gcc-internal-format
-msgid "  %qT is not nothrow assignable from %qT"
+msgid "%qT is not a function"
 msgstr ""
 
-#: cp/constraint.cc:3143
+#: cp/constraint.cc:3226
 #, gcc-internal-format
-msgid "  %qT is not nothrow constructible from %qE"
+msgid "%qT is not an implicit-lifetime type"
 msgstr ""
 
-#: cp/constraint.cc:3146
+#: cp/constraint.cc:3231
 #, gcc-internal-format
-msgid "  %qT is not nothrow convertible from %qE"
+msgid "%qT is not invocable, because"
 msgstr ""
 
-#: cp/constraint.cc:3150
+#: cp/constraint.cc:3233
 #, gcc-internal-format
-msgid "  %qT is not nothrow invocable"
+msgid "%qT is not invocable by %qT, because"
 msgstr ""
 
-#: cp/constraint.cc:3152
+#: cp/constraint.cc:3238
 #, gcc-internal-format
-msgid "  %qT is not nothrow invocable by %qE"
+msgid "%qT is not layout compatible with %qT, because"
 msgstr ""
 
-#: cp/constraint.cc:3155
+#: cp/constraint.cc:3242
 #, gcc-internal-format
-msgid "  %qT is not an object type"
+msgid "%qT is not a literal type"
 msgstr ""
 
-#: cp/constraint.cc:3158
+#: cp/constraint.cc:3245
 #, gcc-internal-format
-msgid "  %qT is not pointer-interconvertible base of %qT"
+msgid "%qT is not a member function pointer"
 msgstr ""
 
-#: cp/constraint.cc:3162
+#: cp/constraint.cc:3248
 #, gcc-internal-format
-msgid "  %qT is not a POD type"
+msgid "%qT is not a member object pointer"
 msgstr ""
 
-#: cp/constraint.cc:3165
+#: cp/constraint.cc:3251
 #, gcc-internal-format
-msgid "  %qT is not a pointer"
+msgid "%qT is not a member pointer"
 msgstr ""
 
-#: cp/constraint.cc:3168
+#: cp/constraint.cc:3254
 #, gcc-internal-format
-msgid "  %qT is not a polymorphic type"
+msgid "%qT is not nothrow assignable from %qT, because"
 msgstr ""
 
-#: cp/constraint.cc:3171
+#: cp/constraint.cc:3259
 #, gcc-internal-format
-msgid "  %qT is not a reference"
+msgid "%qT is not nothrow default constructible, because"
 msgstr ""
 
-#: cp/constraint.cc:3174
+#: cp/constraint.cc:3261
 #, gcc-internal-format
-msgid "  %qT is not the same as %qT"
+msgid "%qT is not nothrow constructible from %qT, because"
 msgstr ""
 
-#: cp/constraint.cc:3177
+#: cp/constraint.cc:3266
 #, gcc-internal-format
-msgid "  %qT is not a scoped enum"
+msgid "%qT is not nothrow convertible from %qT, because"
 msgstr ""
 
-#: cp/constraint.cc:3180
+#: cp/constraint.cc:3270
 #, gcc-internal-format
-msgid "  %qT is not an standard layout type"
+msgid "%qT is not nothrow destructible, because"
 msgstr ""
 
-#: cp/constraint.cc:3183
+#: cp/constraint.cc:3276
 #, gcc-internal-format
-msgid "  %qT is not a trivial type"
+msgid "%qT is not nothrow invocable, because"
 msgstr ""
 
-#: cp/constraint.cc:3186
+#: cp/constraint.cc:3278
 #, gcc-internal-format
-msgid "  %qT is not trivially assignable from %qT"
+msgid "%qT is not nothrow invocable by %qT, because"
 msgstr ""
 
-#: cp/constraint.cc:3192
+#: cp/constraint.cc:3285
 #, gcc-internal-format
-msgid "  %qT is not trivially constructible from %qE"
+msgid "%qT is not an object type"
 msgstr ""
 
-#: cp/constraint.cc:3195
+#: cp/constraint.cc:3289
 #, gcc-internal-format
-msgid "  %qT is not trivially copyable"
+msgid "%qT is not a pointer-interconvertible base of %qT, because"
 msgstr ""
 
-#: cp/constraint.cc:3198
+#: cp/constraint.cc:3294
 #, gcc-internal-format
-msgid "  %qT is not an unbounded array"
+msgid "%qT is not a POD type"
 msgstr ""
 
-#: cp/constraint.cc:3201
+#: cp/constraint.cc:3297
 #, gcc-internal-format
-msgid "  %qT is not a union"
+msgid "%qT is not a pointer"
 msgstr ""
 
-#: cp/constraint.cc:3204
+#: cp/constraint.cc:3300
 #, gcc-internal-format
-msgid "  %qT is not a virtual base of %qT"
+msgid "%qT is not a polymorphic type"
 msgstr ""
 
-#: cp/constraint.cc:3207
+#: cp/constraint.cc:3303
 #, gcc-internal-format
-msgid "  %qT is not a volatile type"
+msgid "%qT is not a reference"
 msgstr ""
 
-#: cp/constraint.cc:3210
+#: cp/constraint.cc:3306
 #, gcc-internal-format
-msgid "  %qT cannot yield a rank"
+msgid "%q#T is not the same as %q#T"
 msgstr ""
 
-#: cp/constraint.cc:3213
+#: cp/constraint.cc:3309
 #, gcc-internal-format
-msgid ""
-"  %qT is not a reference that binds to a temporary object of type %qT "
-"(direct-initialization)"
+msgid "%qT is not a scoped enum"
 msgstr ""
 
-#: cp/constraint.cc:3217
+#: cp/constraint.cc:3312
 #, gcc-internal-format
-msgid ""
-"  %qT is not a reference that binds to a temporary object of type %qT (copy-"
-"initialization)"
+msgid "%qT is not a standard layout type"
 msgstr ""
 
-#: cp/constraint.cc:3221
+#: cp/constraint.cc:3315
 #, gcc-internal-format
-msgid "  %qD is not deducible from %qT"
+msgid "%qT is not a trivial type"
 msgstr ""
 
-#: cp/constraint.cc:3248
+#: cp/constraint.cc:3318
 #, gcc-internal-format
-msgid "invalid constraints"
+msgid "%qT is not trivially assignable from %qT, because"
 msgstr ""
 
-#: cp/constraint.cc:3273
+#: cp/constraint.cc:3323
 #, gcc-internal-format
-msgid "constraint %qE has type %qT, not %<bool%>"
+msgid "%qT is not trivially default constructible, because"
 msgstr ""
 
-#: cp/constraint.cc:3276
+#: cp/constraint.cc:3325
 #, gcc-internal-format
-msgid "the expression %qE evaluated to %<false%>"
+msgid "%qT is not trivially constructible from %qT, because"
 msgstr ""
 
-#: cp/constraint.cc:3327
+#: cp/constraint.cc:3330 cp/tree.cc:5014
 #, gcc-internal-format
-msgid "constraints not satisfied"
+msgid "%qT is not trivially copyable"
 msgstr ""
 
-#: cp/constraint.cc:3344
+#: cp/constraint.cc:3333
 #, gcc-internal-format
-msgid "set %qs to at least %d for more detail"
+msgid "%qT is not trivially destructible, because"
 msgstr ""
 
-#: cp/contracts.cc:167
+#: cp/constraint.cc:3337
 #, gcc-internal-format
-msgid "axiom contract semantic must be %<assume%> or %<ignore%>"
+msgid "%qT is not an unbounded array"
 msgstr ""
 
-#: cp/contracts.cc:170
+#: cp/constraint.cc:3340
 #, gcc-internal-format
-msgid ""
-"the %<audit%> semantic should be at least as strong as the %<default%> "
-"semantic"
-msgstr ""
-
-#: cp/contracts.cc:188
-#, gcc-internal-format, gfc-internal-format
-msgid "'%s' is not a valid explicit concrete semantic"
+msgid "%qT is not a union"
 msgstr ""
 
-#: cp/contracts.cc:328
+#: cp/constraint.cc:3343
 #, gcc-internal-format
-msgid "%<-fcontract-build-level=%> cannot be mixed with p1332/p1429"
+msgid "%qT is not a virtual base of %qT"
 msgstr ""
 
-#: cp/contracts.cc:341
+#: cp/constraint.cc:3346
 #, gcc-internal-format
-msgid "%<-fcontract-build-level=%> must be off|default|audit"
+msgid "%qT is not a volatile type"
 msgstr ""
 
-#: cp/contracts.cc:351
+#: cp/constraint.cc:3349
 #, gcc-internal-format
-msgid "%<-fcontract-assumption-mode=%> cannot be mixed with p1332/p1429"
+msgid "%qT is not consteval-only"
 msgstr ""
 
-#: cp/contracts.cc:362
+#: cp/constraint.cc:3352
 #, gcc-internal-format
-msgid "%<-fcontract-assumption-mode=%> must be %<on%> or %<off%>"
+msgid "%qT cannot yield a rank"
 msgstr ""
 
-#: cp/contracts.cc:372
+#: cp/constraint.cc:3355
 #, gcc-internal-format
-msgid "%<-fcontract-continuation-mode=%> cannot be mixed with p1332/p1429"
+msgid "%qT and %qT cannot be ordered"
 msgstr ""
 
-#: cp/contracts.cc:383
+#: cp/constraint.cc:3358
 #, gcc-internal-format
-msgid "%<-fcontract-continuation-mode=%> must be %<on%> or %<off%>"
+msgid "%qT is not destructurable"
 msgstr ""
 
-#: cp/contracts.cc:395
+#: cp/constraint.cc:3361
 #, gcc-internal-format
-msgid "%<-fcontract-role=%> must be in the form role:semantics"
+msgid ""
+"%qT is not a reference that binds to a temporary object of type %qT (direct-"
+"initialization)"
 msgstr ""
 
-#: cp/contracts.cc:406 cp/contracts.cc:415
+#: cp/constraint.cc:3365
 #, gcc-internal-format
-msgid "%<-fcontract-role=%> semantics must include default,audit,axiom values"
+msgid ""
+"%qT is not a reference that binds to a temporary object of type %qT (copy-"
+"initialization)"
 msgstr ""
 
-#: cp/contracts.cc:434
+#: cp/constraint.cc:3369
 #, gcc-internal-format
-msgid "%<-fcontract-role=%> cannot be mixed with std/p1429 contract flags"
+msgid "%qD is not deducible from %qT"
 msgstr ""
 
-#. TODO: not enough space?
-#: cp/contracts.cc:448
+#: cp/constraint.cc:3436
 #, gcc-internal-format
-msgid "%<-fcontract-level=%> too many custom roles"
+msgid "invalid constraints"
 msgstr ""
 
-#: cp/contracts.cc:460
+#: cp/constraint.cc:3457
 #, gcc-internal-format
-msgid "%<-fcontract-semantic=%> must be in the form level:semantic"
+msgid "constraint %qE has type %qT, not %<bool%>"
 msgstr ""
 
-#: cp/contracts.cc:466
+#: cp/constraint.cc:3461
 #, gcc-internal-format
-msgid "%<-fcontract-semantic=%> cannot be mixed with std/p1332 contract flags"
+msgid "the expression %qE evaluated to %<false%>"
 msgstr ""
 
-#: cp/contracts.cc:474
+#: cp/constraint.cc:3516
 #, gcc-internal-format
-msgid "%<-fcontract-semantic=%> cannot find default role"
+msgid "constraints not satisfied"
 msgstr ""
 
-#: cp/contracts.cc:490
+#: cp/constraint.cc:3533
 #, gcc-internal-format
-msgid "%<-fcontract-semantic=%> level must be default, audit, or axiom"
+msgid "set %qs to at least %d for more detail"
 msgstr ""
 
-#: cp/contracts.cc:631
+#: cp/contracts.cc:183
 #, gcc-internal-format
-msgid "constructor does not return a value to test"
+msgid "mismatched contract specifier in declaration"
 msgstr ""
 
-#: cp/contracts.cc:633
+#: cp/contracts.cc:184 cp/contracts.cc:209
 #, gcc-internal-format
-msgid "destructor does not return a value to test"
+msgid "previous contract here"
 msgstr ""
 
-#: cp/contracts.cc:634
+#: cp/contracts.cc:207
 #, gcc-internal-format
-msgid "function does not return a value to test"
+msgid "mismatched contract condition in declaration"
 msgstr ""
 
-#: cp/contracts.cc:1143
+#: cp/contracts.cc:248
 #, gcc-internal-format
-msgid "mismatched contract attribute in declaration"
+msgid ""
+"declaration has a different number of contracts than previously declared"
 msgstr ""
 
-#: cp/contracts.cc:1145 cp/contracts.cc:1176
+#: cp/contracts.cc:252
 #, gcc-internal-format
-msgid "previous contract here"
+msgid "previous declaration with fewer contracts here"
 msgstr ""
 
-#: cp/contracts.cc:1173
+#: cp/contracts.cc:562
 #, gcc-internal-format
-msgid "mismatched contract condition in declaration"
+msgid "a value parameter used in a postcondition must be const"
 msgstr ""
 
-#: cp/contracts.cc:1216
+#: cp/contracts.cc:563 cp/contracts.cc:1039
 #, gcc-internal-format
-msgid ""
-"declaration has a different number of contracts than previously declared"
+msgid "parameter declared here"
 msgstr ""
 
-#: cp/contracts.cc:1222
+#: cp/contracts.cc:593
 #, gcc-internal-format
-msgid "original declaration with fewer contracts here"
+msgid "value parameter %qE used in a postcondition must be const"
 msgstr ""
 
-#: cp/contracts.cc:1968
+#: cp/contracts.cc:1036
 #, gcc-internal-format
-msgid "contracts must appertain to a function type"
+msgid "contract postcondition result name shadows a function parameter"
 msgstr ""
 
-#: cp/contracts.cc:2265
+#: cp/contracts.cc:1660
 #, gcc-internal-format
-msgid "cannot add contracts after definition"
+msgid "declaration adds contracts to %q#D"
 msgstr ""
 
-#: cp/contracts.cc:2266
+#: cp/contracts.cc:1661
 #, gcc-internal-format
-msgid "original definition here"
+msgid "first declared here"
 msgstr ""
 
-#: cp/contracts.cc:2274
+#: cp/contracts.cc:1922
 #, gcc-internal-format
-msgid "cannot add contracts to a virtual function"
+msgid "constructor does not return a value to test"
 msgstr ""
 
-#: cp/contracts.cc:2275
+#: cp/contracts.cc:1924
 #, gcc-internal-format
-msgid "original declaration here"
+msgid "destructor does not return a value to test"
 msgstr ""
 
-#: cp/contracts.cc:2285
+#: cp/contracts.cc:1925
 #, gcc-internal-format
-msgid "declaration adds contracts to %q#D"
+msgid "function does not return a value to test"
 msgstr ""
 
-#: cp/coroutines.cc:427
+#: cp/coroutines.cc:517
 #, gcc-internal-format
 msgid "coroutines require a traits template; cannot find %<%E::%E%>"
 msgstr ""
 
-#: cp/coroutines.cc:429
+#: cp/coroutines.cc:519
 #, gcc-internal-format
 msgid "perhaps %<#include <coroutine>%> is missing"
 msgstr ""
 
-#: cp/coroutines.cc:484
+#: cp/coroutines.cc:574
 #, gcc-internal-format
 msgid "cannot instantiate %<coroutine traits%>"
 msgstr ""
 
-#: cp/coroutines.cc:506
+#: cp/coroutines.cc:596
 #, gcc-internal-format
 msgid "coroutines require a handle class template; cannot find %<%E::%E%>"
 msgstr ""
 
-#: cp/coroutines.cc:534
+#: cp/coroutines.cc:624
 #, gcc-internal-format
 msgid "%qE must be a non-overloaded method"
 msgstr ""
 
-#: cp/coroutines.cc:547
+#: cp/coroutines.cc:637
 #, gcc-internal-format
 msgid "%qE must take no arguments"
 msgstr ""
 
-#: cp/coroutines.cc:554 cp/coroutines.cc:599
+#: cp/coroutines.cc:644 cp/coroutines.cc:689
 #, gcc-internal-format
 msgid "%qE must return %qT, not %qT"
 msgstr ""
 
-#: cp/coroutines.cc:581
+#: cp/coroutines.cc:671
 #, gcc-internal-format
 msgid "%qE must be a non-overloaded static function"
 msgstr ""
 
-#: cp/coroutines.cc:592
+#: cp/coroutines.cc:682
 #, gcc-internal-format
 msgid "%qE must take a single %qT"
 msgstr ""
 
-#: cp/coroutines.cc:621
+#: cp/coroutines.cc:711
 #, gcc-internal-format
 msgid "cannot instantiate a %<coroutine handle%> for promise type %qT"
 msgstr ""
 
-#: cp/coroutines.cc:736
+#: cp/coroutines.cc:822
 #, gcc-internal-format
 msgid "unable to find the promise type for this coroutine"
 msgstr ""
 
-#: cp/coroutines.cc:756
+#: cp/coroutines.cc:842
 #, gcc-internal-format
 msgid ""
 "the coroutine promise type %qT declares both %<return_value%> and "
 "%<return_void%>"
 msgstr ""
 
-#: cp/coroutines.cc:760
+#: cp/coroutines.cc:846
 #, gcc-internal-format
 msgid "%<return_void%> declared here"
 msgstr ""
 
-#: cp/coroutines.cc:919 cp/coroutines.cc:997 cp/coroutines.cc:4536
+#: cp/coroutines.cc:1039 cp/coroutines.cc:1117 cp/coroutines.cc:4732
 #, gcc-internal-format
 msgid "no member named %qE in %qT"
 msgstr ""
 
-#: cp/coroutines.cc:1012
+#: cp/coroutines.cc:1132
 #, gcc-internal-format
 msgid "%qs cannot be used outside a function"
 msgstr ""
 
 #. [basic.start.main] 3. The function main shall not be a coroutine.
-#: cp/coroutines.cc:1020
+#: cp/coroutines.cc:1140
 #, gcc-internal-format
 msgid "%qs cannot be used in the %<main%> function"
 msgstr ""
 
 #. [dcl.constexpr] 3.3 it shall not be a coroutine.
-#: cp/coroutines.cc:1031
+#: cp/coroutines.cc:1151
 #, gcc-internal-format
 msgid "%qs cannot be used in a %<constexpr%> function"
 msgstr ""
 
-#: cp/coroutines.cc:1042
+#: cp/coroutines.cc:1162
 #, gcc-internal-format
 msgid "%qs cannot be used in a function with a deduced return type"
 msgstr ""
 
-#: cp/coroutines.cc:1053
+#: cp/coroutines.cc:1173
 #, gcc-internal-format
 msgid "%qs cannot be used in a varargs function"
 msgstr ""
 
 #. [class.ctor] 7. a constructor shall not be a coroutine.
-#: cp/coroutines.cc:1060
+#: cp/coroutines.cc:1180
 #, gcc-internal-format
 msgid "%qs cannot be used in a constructor"
 msgstr ""
 
 #. [class.dtor] 21. a destructor shall not be a coroutine.
-#: cp/coroutines.cc:1067
+#: cp/coroutines.cc:1187
 #, gcc-internal-format
 msgid "%qs cannot be used in a destructor"
 msgstr ""
@@ -58984,81 +61599,96 @@ msgstr ""
 #. TODO: record or extract positions of returns (and the first coro
 #. keyword) so that we can add notes to the diagnostic about where
 #. the bad keyword is and what made the function into a coro.
-#: cp/coroutines.cc:1098
+#: cp/coroutines.cc:1218
 #, gcc-internal-format
 msgid ""
 "a %<return%> statement is not allowed in coroutine; did you mean "
 "%<co_return%>?"
 msgstr ""
 
-#: cp/coroutines.cc:1150
+#: cp/coroutines.cc:1270
 #, gcc-internal-format
 msgid "the expression %qE is required to be non-throwing"
 msgstr ""
 
-#: cp/coroutines.cc:1152
+#: cp/coroutines.cc:1272
 #, gcc-internal-format
 msgid "must be declared with %<noexcept(true)%>"
 msgstr ""
 
-#: cp/coroutines.cc:1280
+#: cp/coroutines.cc:1401 cp/coroutines.cc:1404
+#, gcc-internal-format
+msgid "%qs awaitable type %qT is not a structure"
+msgstr ""
+
+#: cp/coroutines.cc:1407
 #, gcc-internal-format
 msgid "awaitable type %qT is not a structure"
 msgstr ""
 
-#: cp/coroutines.cc:1374
+#: cp/coroutines.cc:1500
 #, gcc-internal-format
 msgid "%<await_suspend%> must return %<void%>, %<bool%> or a coroutine handle"
 msgstr ""
 
-#: cp/coroutines.cc:1723
+#: cp/coroutines.cc:1592 cp/coroutines.cc:1678
+#, gcc-internal-format
+msgid "%qs cannot be used in an unevaluated context"
+msgstr ""
+
+#: cp/coroutines.cc:1861
 #, gcc-internal-format
 msgid "function declared %<noreturn%> has a %<co_return%> statement"
 msgstr ""
 
-#: cp/coroutines.cc:1760
+#: cp/coroutines.cc:1898
 #, gcc-internal-format
 msgid "the align argument to %<__builtin_coro_promise%> must be a constant"
 msgstr ""
 
-#: cp/coroutines.cc:1770
+#: cp/coroutines.cc:1908
 #, gcc-internal-format
 msgid "the direction argument to %<__builtin_coro_promise%> must be a constant"
 msgstr ""
 
-#: cp/coroutines.cc:2252
+#: cp/coroutines.cc:2412
 #, gcc-internal-format
 msgid "no suspend point info for %qD"
 msgstr ""
 
-#: cp/coroutines.cc:2812
+#: cp/coroutines.cc:2984
 #, gcc-internal-format
 msgid "duplicate info for %qE"
 msgstr ""
 
-#: cp/coroutines.cc:3941
+#: cp/coroutines.cc:3642
+#, gcc-internal-format
+msgid "assumption ignored because it contains an await-expression"
+msgstr ""
+
+#: cp/coroutines.cc:4149
 #, gcc-internal-format
 msgid "await expressions are not permitted in handlers"
 msgstr ""
 
-#: cp/coroutines.cc:4166
+#: cp/coroutines.cc:4366
 #, gcc-internal-format
 msgid "variable length arrays are not yet supported in coroutines"
 msgstr ""
 
-#: cp/coroutines.cc:4684
+#: cp/coroutines.cc:4885
 #, gcc-internal-format
 msgid ""
 "%qE is provided by %qT but is not usable with the function signature %qD"
 msgstr ""
 
-#: cp/coroutines.cc:4691
+#: cp/coroutines.cc:4892
 #, gcc-internal-format
 msgid ""
 "%qE is provided by %qT but %qE is not marked %<throw()%> or %<noexcept%>"
 msgstr ""
 
-#: cp/coroutines.cc:4696
+#: cp/coroutines.cc:4897
 #, gcc-internal-format
 msgid ""
 "%qE is marked %<throw()%> or %<noexcept%> but no usable "
@@ -59066,104 +61696,109 @@ msgid ""
 msgstr ""
 
 #. Something is seriously wrong, punt.
-#: cp/coroutines.cc:4727
+#: cp/coroutines.cc:4928
 #, gcc-internal-format
 msgid "%qE is provided by %qT but %<std::nothrow%> cannot be found"
 msgstr ""
 
-#: cp/coroutines.cc:4823
+#: cp/coroutines.cc:5024
 #, gcc-internal-format
 msgid "%qE is provided by %qT but is not usable with the function %qD"
 msgstr ""
 
-#: cp/coroutines.cc:5129
+#: cp/coroutines.cc:5298
 #, gcc-internal-format
 msgid ""
 "no viable conversion from %<void%> provided by %<get_return_object%> to "
 "return type %qT"
 msgstr ""
 
-#: cp/cp-gimplify.cc:197
+#: cp/cp-gimplify.cc:207
 #, gcc-internal-format
 msgid "both branches of %<if%> statement marked as %qs"
 msgstr ""
 
-#: cp/cp-gimplify.cc:541
+#: cp/cp-gimplify.cc:577
 #, gcc-internal-format
 msgid ""
 "%qD was promoted to an immediate function because its body contains an "
 "immediate-escalating expression %qE"
 msgstr ""
 
-#: cp/cp-gimplify.cc:544
+#: cp/cp-gimplify.cc:580
 #, gcc-internal-format
 msgid "%qD was promoted to an immediate function"
 msgstr ""
 
-#: cp/cp-gimplify.cc:1181
+#: cp/cp-gimplify.cc:978
+#, gcc-internal-format
+msgid "%qs used outside of constant expressions"
+msgstr ""
+
+#: cp/cp-gimplify.cc:1291
 #, gcc-internal-format
 msgid "taking address of an immediate function %qD"
 msgstr ""
 
-#: cp/cp-gimplify.cc:1318
+#: cp/cp-gimplify.cc:1472
 #, gcc-internal-format
 msgid "call to consteval function %qE is not a constant expression"
 msgstr ""
 
-#: cp/cp-gimplify.cc:2050
+#: cp/cp-gimplify.cc:2311
 #, gcc-internal-format
 msgid "%<throw%> will always call %<terminate%>"
 msgstr ""
 
-#: cp/cp-gimplify.cc:2053
+#: cp/cp-gimplify.cc:2314
 #, gcc-internal-format
 msgid "in C++11 destructors default to %<noexcept%>"
 msgstr ""
 
-#: cp/cp-gimplify.cc:2065
+#: cp/cp-gimplify.cc:2326
 #, gcc-internal-format
 msgid ""
 "in C++11 this %<throw%> will call %<terminate%> because destructors default "
 "to %<noexcept%>"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3650
+#: cp/cp-gimplify.cc:4061
 #, gcc-internal-format
 msgid "ignoring attribute %qE after earlier %qE"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3693
+#: cp/cp-gimplify.cc:4104
 #, gcc-internal-format
 msgid "pack expansion of %qE attribute"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3696
+#: cp/cp-gimplify.cc:4107
 #, gcc-internal-format
 msgid "use fold expression in the attribute argument instead"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3735 cp/cp-gimplify.cc:3747 cp/decl.cc:4511
-#: cp/method.cc:990
+#: cp/cp-gimplify.cc:4146 cp/cp-gimplify.cc:4158 cp/decl.cc:5053
+#: cp/method.cc:991
 #, gcc-internal-format
 msgid "%qD is not a type"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3753
+#: cp/cp-gimplify.cc:4164
 #, gcc-internal-format
 msgid "%qD is not a class type"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3770
+#: cp/cp-gimplify.cc:4181
 #, gcc-internal-format
 msgid "%qD does not have %<const char *%> type"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3780
+#: cp/cp-gimplify.cc:4191
 #, gcc-internal-format
 msgid "%qD does not have integral type"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3792
+#: cp/cp-gimplify.cc:4203
 #, gcc-internal-format
 msgid ""
 "%<std::source_location::__impl%> does not contain only non-static data "
@@ -59206,7 +61841,7 @@ msgstr ""
 msgid "conversion from %qH to %qI discards qualifiers"
 msgstr ""
 
-#: cp/cvt.cc:499 cp/typeck.cc:8914
+#: cp/cvt.cc:499 cp/typeck.cc:9185
 #, gcc-internal-format
 msgid "casting %qT to %qT does not dereference pointer"
 msgstr ""
@@ -59215,692 +61850,704 @@ msgstr ""
 msgid "cannot convert type %qH to type %qI"
 msgstr ""
 
-#: cp/cvt.cc:832
+#: cp/cvt.cc:833
 #, gcc-internal-format
 msgid "conversion from %q#T to %q#T"
 msgstr ""
 
-#: cp/cvt.cc:850
+#: cp/cvt.cc:851
 #, gcc-internal-format
 msgid ""
 "the result of the conversion is unspecified because %qE is outside the range "
 "of type %qT"
 msgstr ""
 
-#: cp/cvt.cc:861 cp/cvt.cc:916
+#: cp/cvt.cc:862 cp/cvt.cc:924
 #, gcc-internal-format
 msgid "%q#T used where a %qT was expected"
 msgstr ""
 
-#: cp/cvt.cc:870
+#: cp/cvt.cc:871
 #, gcc-internal-format
 msgid "could not convert %qE from %<void%> to %<bool%>"
 msgstr ""
 
-#: cp/cvt.cc:932
+#: cp/cvt.cc:940
 #, gcc-internal-format
 msgid "%q#T used where a floating-point value was expected"
 msgstr ""
 
-#: cp/cvt.cc:990
+#: cp/cvt.cc:1000
 msgid "conversion from %qH to non-scalar type %qI requested"
 msgstr ""
 
-#: cp/cvt.cc:1102
+#: cp/cvt.cc:1115
 #, gcc-internal-format
 msgid ""
 "ignoring return value of %qD, declared with attribute %<nodiscard%>: %qs"
 msgstr ""
 
-#: cp/cvt.cc:1104
+#: cp/cvt.cc:1117
 #, gcc-internal-format
 msgid "ignoring return value of %qD, declared with attribute %<nodiscard%>%s"
 msgstr ""
 
-#: cp/cvt.cc:1121
+#: cp/cvt.cc:1134
 #, gcc-internal-format
 msgid ""
 "ignoring returned value of type %qT, declared with attribute %<nodiscard%>: "
 "%qs"
 msgstr ""
 
-#: cp/cvt.cc:1123
+#: cp/cvt.cc:1136
 #, gcc-internal-format
 msgid ""
 "ignoring returned value of type %qT, declared with attribute %<nodiscard%>%s"
 msgstr ""
 
-#: cp/cvt.cc:1147
+#: cp/cvt.cc:1160
 #, gcc-internal-format
 msgid ""
 "ignoring return value of %qD, declared with attribute %<warn_unused_result%>"
 msgstr ""
 
-#: cp/cvt.cc:1201
+#: cp/cvt.cc:1207
 #, gcc-internal-format
 msgid "pseudo-destructor is not called"
 msgstr ""
 
-#: cp/cvt.cc:1304 rust/backend/rust-tree.cc:396
+#: cp/cvt.cc:1322 rust/backend/rust-tree.cc:399
 #, gcc-internal-format
 msgid "conversion to void will not access object of type %qT"
 msgstr ""
 
-#: cp/cvt.cc:1308 rust/backend/rust-tree.cc:402
+#: cp/cvt.cc:1326 rust/backend/rust-tree.cc:405
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in second operand of "
 "conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1313 rust/backend/rust-tree.cc:409
+#: cp/cvt.cc:1331 rust/backend/rust-tree.cc:412
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in third operand of "
 "conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1318 rust/backend/rust-tree.cc:416
+#: cp/cvt.cc:1336 rust/backend/rust-tree.cc:419
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in right operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1323 rust/backend/rust-tree.cc:423
+#: cp/cvt.cc:1341 rust/backend/rust-tree.cc:426
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in left operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1328 rust/backend/rust-tree.cc:430
+#: cp/cvt.cc:1346 rust/backend/rust-tree.cc:433
 #, gcc-internal-format
 msgid "implicit dereference will not access object of type %qT in statement"
 msgstr ""
 
-#: cp/cvt.cc:1332 rust/backend/rust-tree.cc:436
+#: cp/cvt.cc:1350 rust/backend/rust-tree.cc:439
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in for increment "
 "expression"
 msgstr ""
 
-#: cp/cvt.cc:1351 rust/backend/rust-tree.cc:339
+#: cp/cvt.cc:1369 rust/backend/rust-tree.cc:342
 #, gcc-internal-format
 msgid "conversion to void will not access object of incomplete type %qT"
 msgstr ""
 
-#: cp/cvt.cc:1355 rust/backend/rust-tree.cc:345
+#: cp/cvt.cc:1373 rust/backend/rust-tree.cc:348
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in second operand "
 "of conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1360 rust/backend/rust-tree.cc:352
+#: cp/cvt.cc:1378 rust/backend/rust-tree.cc:355
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in third operand "
 "of conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1365 rust/backend/rust-tree.cc:359
+#: cp/cvt.cc:1383 rust/backend/rust-tree.cc:362
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in right operand "
 "of comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1370 rust/backend/rust-tree.cc:366
+#: cp/cvt.cc:1388 rust/backend/rust-tree.cc:369
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in left operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1375 rust/backend/rust-tree.cc:373
+#: cp/cvt.cc:1393 rust/backend/rust-tree.cc:376
 #, gcc-internal-format
 msgid "indirection will not access object of incomplete type %qT in statement"
 msgstr ""
 
-#: cp/cvt.cc:1379 rust/backend/rust-tree.cc:379
+#: cp/cvt.cc:1397 rust/backend/rust-tree.cc:382
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in for increment "
 "expression"
 msgstr ""
 
-#: cp/cvt.cc:1393 rust/backend/rust-tree.cc:450
+#: cp/cvt.cc:1411 rust/backend/rust-tree.cc:453
 #, gcc-internal-format
 msgid ""
 "conversion to void will not access object of non-trivially-copyable type %qT"
 msgstr ""
 
-#: cp/cvt.cc:1398 rust/backend/rust-tree.cc:456
+#: cp/cvt.cc:1416 rust/backend/rust-tree.cc:459
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in "
 "second operand of conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1403 rust/backend/rust-tree.cc:463
+#: cp/cvt.cc:1421 rust/backend/rust-tree.cc:466
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in "
 "third operand of conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1408 rust/backend/rust-tree.cc:470
+#: cp/cvt.cc:1426 rust/backend/rust-tree.cc:473
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in "
 "right operand of comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1413 rust/backend/rust-tree.cc:477
+#: cp/cvt.cc:1431 rust/backend/rust-tree.cc:480
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in "
 "left operand of comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1418 rust/backend/rust-tree.cc:484
+#: cp/cvt.cc:1436 rust/backend/rust-tree.cc:487
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in "
 "statement"
 msgstr ""
 
-#: cp/cvt.cc:1423 rust/backend/rust-tree.cc:490
+#: cp/cvt.cc:1441 rust/backend/rust-tree.cc:493
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in for "
 "increment expression"
 msgstr ""
 
-#: cp/cvt.cc:1462 rust/backend/rust-tree.cc:531
+#: cp/cvt.cc:1480 rust/backend/rust-tree.cc:535
 #, gcc-internal-format
 msgid "conversion to void will not access object %qE of incomplete type %qT"
 msgstr ""
 
-#: cp/cvt.cc:1466 rust/backend/rust-tree.cc:537
+#: cp/cvt.cc:1484 rust/backend/rust-tree.cc:541
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in second operand "
 "of conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1471 rust/backend/rust-tree.cc:544
+#: cp/cvt.cc:1489 rust/backend/rust-tree.cc:548
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in third operand of "
 "conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1476 rust/backend/rust-tree.cc:551
+#: cp/cvt.cc:1494 rust/backend/rust-tree.cc:555
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in right operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1481 rust/backend/rust-tree.cc:557
+#: cp/cvt.cc:1499 rust/backend/rust-tree.cc:561
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in left operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1486 rust/backend/rust-tree.cc:563
+#: cp/cvt.cc:1504 rust/backend/rust-tree.cc:567
 #, gcc-internal-format
 msgid "variable %qE of incomplete type %qT will not be accessed in statement"
 msgstr ""
 
-#: cp/cvt.cc:1490 rust/backend/rust-tree.cc:569
+#: cp/cvt.cc:1508 rust/backend/rust-tree.cc:573
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in for increment "
 "expression"
 msgstr ""
 
-#: cp/cvt.cc:1551
+#: cp/cvt.cc:1569
 #, gcc-internal-format
 msgid "conversion to void cannot resolve address of overloaded function"
 msgstr ""
 
-#: cp/cvt.cc:1555
+#: cp/cvt.cc:1573
 #, gcc-internal-format
 msgid ""
 "second operand of conditional expression cannot resolve address of "
 "overloaded function"
 msgstr ""
 
-#: cp/cvt.cc:1559
+#: cp/cvt.cc:1577
 #, gcc-internal-format
 msgid ""
 "third operand of conditional expression cannot resolve address of overloaded "
 "function"
 msgstr ""
 
-#: cp/cvt.cc:1563
+#: cp/cvt.cc:1581
 #, gcc-internal-format
 msgid ""
 "right operand of comma operator cannot resolve address of overloaded function"
 msgstr ""
 
-#: cp/cvt.cc:1567
+#: cp/cvt.cc:1585
 #, gcc-internal-format
 msgid ""
 "left operand of comma operator cannot resolve address of overloaded function"
 msgstr ""
 
-#: cp/cvt.cc:1571
+#: cp/cvt.cc:1589
 #, gcc-internal-format
 msgid "statement cannot resolve address of overloaded function"
 msgstr ""
 
-#: cp/cvt.cc:1575
+#: cp/cvt.cc:1593
 #, gcc-internal-format
 msgid "for increment expression cannot resolve address of overloaded function"
 msgstr ""
 
-#: cp/cvt.cc:1591
+#: cp/cvt.cc:1609
 #, gcc-internal-format
 msgid ""
 "second operand of conditional expression is a reference, not call, to "
 "function %qE"
 msgstr ""
 
-#: cp/cvt.cc:1596
+#: cp/cvt.cc:1614
 #, gcc-internal-format
 msgid ""
 "third operand of conditional expression is a reference, not call, to "
 "function %qE"
 msgstr ""
 
-#: cp/cvt.cc:1601
+#: cp/cvt.cc:1619
 #, gcc-internal-format
 msgid ""
 "right operand of comma operator is a reference, not call, to function %qE"
 msgstr ""
 
-#: cp/cvt.cc:1606
+#: cp/cvt.cc:1624
 #, gcc-internal-format
 msgid ""
 "left operand of comma operator is a reference, not call, to function %qE"
 msgstr ""
 
-#: cp/cvt.cc:1611
+#: cp/cvt.cc:1629
 #, gcc-internal-format
 msgid "statement is a reference, not call, to function %qE"
 msgstr ""
 
-#: cp/cvt.cc:1616
+#: cp/cvt.cc:1634
 #, gcc-internal-format
 msgid "for increment expression is a reference, not call, to function %qE"
 msgstr ""
 
-#: cp/cvt.cc:1645
+#: cp/cvt.cc:1663
 #, gcc-internal-format
 msgid "second operand of conditional expression has no effect"
 msgstr ""
 
-#: cp/cvt.cc:1650
+#: cp/cvt.cc:1668
 #, gcc-internal-format
 msgid "third operand of conditional expression has no effect"
 msgstr ""
 
-#: cp/cvt.cc:1655
+#: cp/cvt.cc:1673
 #, gcc-internal-format
 msgid "right operand of comma operator has no effect"
 msgstr ""
 
-#: cp/cvt.cc:1659
+#: cp/cvt.cc:1677
 #, gcc-internal-format
 msgid "left operand of comma operator has no effect"
 msgstr ""
 
-#: cp/cvt.cc:1663
+#: cp/cvt.cc:1681
 #, gcc-internal-format
 msgid "statement has no effect"
 msgstr ""
 
-#: cp/cvt.cc:1667
+#: cp/cvt.cc:1685
 #, gcc-internal-format
 msgid "for increment expression has no effect"
 msgstr ""
 
-#: cp/cvt.cc:1822
+#: cp/cvt.cc:1840
 #, gcc-internal-format
 msgid "converting NULL to non-pointer type"
 msgstr ""
 
-#: cp/cvt.cc:1940
+#: cp/cvt.cc:1958
 #, gcc-internal-format
 msgid "default type conversion cannot deduce template argument for %qD"
 msgstr ""
 
-#: cp/cvt.cc:1956
+#: cp/cvt.cc:1974
 #, gcc-internal-format
 msgid "ambiguous default type conversion from %qT"
 msgstr ""
 
-#: cp/cvt.cc:1959
+#: cp/cvt.cc:1977
 #, gcc-internal-format
 msgid "  candidate conversions include %qD and %qD"
 msgstr ""
 
-#: cp/cxx-pretty-print.cc:2339
+#: cp/cxx-pretty-print.cc:2381
 #, gcc-internal-format
 msgid "template-parameter-"
 msgstr ""
 
-#: cp/cxx-pretty-print.cc:2353
+#: cp/cxx-pretty-print.cc:2395
 #, gcc-internal-format
 msgid "requires"
 msgstr ""
 
-#: cp/cxx-pretty-print.cc:2851 cp/error.cc:502
+#: cp/cxx-pretty-print.cc:2893 cp/error.cc:529
 #, gcc-internal-format
 msgid "with"
 msgstr ""
 
-#: cp/decl.cc:733
+#: cp/decl.cc:851
 #, gcc-internal-format
 msgid "unused using-declaration %qD"
 msgstr ""
 
-#: cp/decl.cc:737
+#: cp/decl.cc:855
 #, gcc-internal-format
 msgid "unused structured binding declaration"
 msgstr ""
 
-#: cp/decl.cc:740
+#: cp/decl.cc:858
 #, gcc-internal-format
 msgid "unused variable %qD"
 msgstr ""
 
-#: cp/decl.cc:750
+#: cp/decl.cc:868
 #, gcc-internal-format
 msgid "structured binding declaration set but not used"
 msgstr ""
 
-#: cp/decl.cc:905
+#: cp/decl.cc:1020
 #, gcc-internal-format
 msgid "%qF declared %<static%> but never defined"
 msgstr ""
 
-#: cp/decl.cc:912
+#: cp/decl.cc:1029
 #, gcc-internal-format
 msgid "odr-used inline variable %qD is not defined"
 msgstr ""
 
-#: cp/decl.cc:1357
+#: cp/decl.cc:1485
 #, gcc-internal-format
 msgid "%qD was declared %<extern%> and later %<static%>"
 msgstr ""
 
-#: cp/decl.cc:1397
+#: cp/decl.cc:1525
 #, gcc-internal-format
 msgid "declaration of %qF has a different exception specifier"
 msgstr ""
 
-#: cp/decl.cc:1427
+#: cp/decl.cc:1555
 #, gcc-internal-format
 msgid "from previous declaration %qF"
 msgstr ""
 
-#: cp/decl.cc:1488
+#: cp/decl.cc:1616
 #, gcc-internal-format
 msgid "redeclaration %qD differs in %qs from previous declaration"
 msgstr ""
 
-#: cp/decl.cc:1492 cp/decl.cc:17251
+#: cp/decl.cc:1620 cp/decl.cc:18421
 #, gcc-internal-format
 msgid "previous declaration %qD"
 msgstr ""
 
-#: cp/decl.cc:1513
+#: cp/decl.cc:1641
 #, gcc-internal-format
 msgid "redeclaration of %q#D may not have default arguments"
 msgstr ""
 
-#: cp/decl.cc:1542
+#: cp/decl.cc:1670
 #, gcc-internal-format
 msgid ""
 "friend declaration of %q#D specifies default arguments and isn%'t the only "
 "declaration"
 msgstr ""
 
-#: cp/decl.cc:1545
+#: cp/decl.cc:1673
 #, gcc-internal-format
 msgid "previous declaration of %q#D"
 msgstr ""
 
-#: cp/decl.cc:1598
+#: cp/decl.cc:1726
 #, gcc-internal-format
 msgid "ambiguating new declaration %q+#D"
 msgstr ""
 
-#: cp/decl.cc:1600 cp/decl.cc:2027
+#: cp/decl.cc:1728 cp/decl.cc:2272
 #, gcc-internal-format
 msgid "old declaration %q#D"
 msgstr ""
 
-#: cp/decl.cc:1640
+#: cp/decl.cc:1768
 #, gcc-internal-format
 msgid "redefinition of default argument for %q+#D"
 msgstr ""
 
-#: cp/decl.cc:1642
+#: cp/decl.cc:1770
 #, gcc-internal-format
 msgid "original definition appeared here"
 msgstr ""
 
-#: cp/decl.cc:1708
+#: cp/decl.cc:1811
+#, gcc-internal-format
+msgid ""
+"%<indeterminate%> attribute not specified for parameter %qD on the first "
+"declaration of its function"
+msgstr ""
+
+#: cp/decl.cc:1813
+#, gcc-internal-format
+msgid "earlier declaration"
+msgstr ""
+
+#: cp/decl.cc:1951
 #, gcc-internal-format
 msgid "built-in function %qD declared as non-function"
 msgstr ""
 
-#: cp/decl.cc:1721 cp/decl.cc:1847
+#: cp/decl.cc:1964 cp/decl.cc:2090
 #, gcc-internal-format
 msgid "shadowing built-in function %q#D"
 msgstr ""
 
-#: cp/decl.cc:1722 cp/decl.cc:1848
+#: cp/decl.cc:1965 cp/decl.cc:2091
 #, gcc-internal-format
 msgid "shadowing library function %q#D"
 msgstr ""
 
-#: cp/decl.cc:1730
+#: cp/decl.cc:1973
 #, gcc-internal-format
 msgid "library function %q#D redeclared as non-function %q#D"
 msgstr ""
 
-#: cp/decl.cc:1734 cp/decl.cc:1795
+#: cp/decl.cc:1977 cp/decl.cc:2038
 #, gcc-internal-format
 msgid "declaration of %q#D conflicts with built-in declaration %q#D"
 msgstr ""
 
-#: cp/decl.cc:1822
+#: cp/decl.cc:2065
 #, gcc-internal-format
 msgid "definition of %q#D ambiguates built-in declaration %q#D"
 msgstr ""
 
-#: cp/decl.cc:1828 cp/decl.cc:1842
+#: cp/decl.cc:2071 cp/decl.cc:2085
 #, gcc-internal-format
 msgid "new declaration %q#D ambiguates built-in declaration %q#D"
 msgstr ""
 
-#: cp/decl.cc:1832
+#: cp/decl.cc:2075
 #, gcc-internal-format
 msgid "ignoring the %q#D declaration"
 msgstr ""
 
-#: cp/decl.cc:1937
+#: cp/decl.cc:2180
 #, gcc-internal-format
 msgid "literal operator %q#D conflicts with raw literal operator"
 msgstr ""
 
-#: cp/decl.cc:1941
+#: cp/decl.cc:2184
 #, gcc-internal-format
 msgid "raw literal operator %q#D conflicts with literal operator template"
 msgstr ""
 
-#: cp/decl.cc:1957
+#: cp/decl.cc:2200
 #, gcc-internal-format
 msgid "%q#D redeclared as different kind of entity"
 msgstr ""
 
-#: cp/decl.cc:1982
+#: cp/decl.cc:2225
 #, gcc-internal-format
 msgid "conflicting declaration of template %q#D"
 msgstr ""
 
-#: cp/decl.cc:2003
+#: cp/decl.cc:2246
 #, gcc-internal-format
 msgid "conflicting declaration of C function %q#D"
 msgstr ""
 
-#: cp/decl.cc:2025
+#: cp/decl.cc:2270
 #, gcc-internal-format
 msgid "ambiguating new declaration of %q#D"
 msgstr ""
 
-#: cp/decl.cc:2036
+#: cp/decl.cc:2281
 #, gcc-internal-format
 msgid "conflicting declaration %q#D"
 msgstr ""
 
-#: cp/decl.cc:2038
+#: cp/decl.cc:2283
 #, gcc-internal-format
 msgid "previous declaration as %q#D"
 msgstr ""
 
-#: cp/decl.cc:2049
+#: cp/decl.cc:2294
 #, gcc-internal-format
 msgid "redeclaration of %<pragma omp declare reduction%>"
 msgstr ""
 
-#: cp/decl.cc:2051
+#: cp/decl.cc:2296
 #, gcc-internal-format
 msgid "previous %<pragma omp declare reduction%> declaration"
 msgstr ""
 
-#: cp/decl.cc:2109
+#: cp/decl.cc:2358
 #, gcc-internal-format
 msgid "%q#D previously defined here"
 msgstr ""
 
-#: cp/decl.cc:2110 cp/name-lookup.cc:3388 cp/name-lookup.cc:3426
-#: cp/name-lookup.cc:3452
+#: cp/decl.cc:2359 cp/name-lookup.cc:3476 cp/name-lookup.cc:3516
+#: cp/name-lookup.cc:3542
 #, gcc-internal-format
 msgid "%q#D previously declared here"
 msgstr ""
 
-#: cp/decl.cc:2118
+#: cp/decl.cc:2367
 #, gcc-internal-format
 msgid "parameter declaration is not name-independent"
 msgstr ""
 
-#: cp/decl.cc:2123
+#: cp/decl.cc:2372
 #, gcc-internal-format
 msgid "structured binding at namespace scope is not name-independent"
 msgstr ""
 
-#: cp/decl.cc:2127
+#: cp/decl.cc:2376
 #, gcc-internal-format
 msgid "static structured binding is not name-independent"
 msgstr ""
 
-#: cp/decl.cc:2131
+#: cp/decl.cc:2380
 #, gcc-internal-format
 msgid "extern structured binding is not name-independent"
 msgstr ""
 
-#: cp/decl.cc:2138
+#: cp/decl.cc:2387
 #, gcc-internal-format
 msgid "static data member is not name-independent"
 msgstr ""
 
-#: cp/decl.cc:2141
+#: cp/decl.cc:2390
 #, gcc-internal-format
 msgid "variable at namespace scope is not name-independent"
 msgstr ""
 
-#: cp/decl.cc:2144
+#: cp/decl.cc:2393
 #, gcc-internal-format
 msgid "static variable is not name-independent"
 msgstr ""
 
-#: cp/decl.cc:2147
+#: cp/decl.cc:2396
 #, gcc-internal-format
 msgid "extern variable is not name-independent"
 msgstr ""
 
-#: cp/decl.cc:2159
+#: cp/decl.cc:2408
 #, gcc-internal-format
 msgid "prototype specified for %q#D"
 msgstr ""
 
-#: cp/decl.cc:2161
+#: cp/decl.cc:2410
 #, gcc-internal-format
 msgid "previous non-prototype definition here"
 msgstr ""
 
-#: cp/decl.cc:2201
+#: cp/decl.cc:2450
 #, gcc-internal-format
 msgid "conflicting declaration of %q#D with %qL linkage"
 msgstr ""
 
-#: cp/decl.cc:2204
+#: cp/decl.cc:2453
 #, gcc-internal-format
 msgid "previous declaration with %qL linkage"
 msgstr ""
 
-#: cp/decl.cc:2253 cp/decl.cc:2263
+#: cp/decl.cc:2502 cp/decl.cc:2512
 #, gcc-internal-format
 msgid "default argument given for parameter %d of %q#D"
 msgstr ""
 
-#: cp/decl.cc:2256 cp/decl.cc:2266
+#: cp/decl.cc:2505 cp/decl.cc:2515
 #, gcc-internal-format
 msgid "previous specification in %q#D here"
 msgstr ""
 
-#: cp/decl.cc:2321 cp/decl.cc:17269
+#: cp/decl.cc:2570 cp/decl.cc:18439
 #, gcc-internal-format
 msgid "conflicting exporting for declaration %qD"
 msgstr ""
 
-#: cp/decl.cc:2323 cp/decl.cc:17271
+#: cp/decl.cc:2572 cp/decl.cc:18441
 #, gcc-internal-format
 msgid "previously declared here without exporting"
 msgstr ""
 
-#: cp/decl.cc:2353
+#: cp/decl.cc:2602
 #, gcc-internal-format
 msgid "previous definition of %qD here"
 msgstr ""
 
-#: cp/decl.cc:2354
+#: cp/decl.cc:2603
 #, gcc-internal-format
 msgid "previous declaration of %qD here"
 msgstr ""
 
-#: cp/decl.cc:2369
+#: cp/decl.cc:2618
 #, gcc-internal-format
 msgid ""
 "function %qD declared %<[[noreturn]]%> but its first declaration was not"
 msgstr ""
 
-#: cp/decl.cc:2416
+#: cp/decl.cc:2665
 #, gcc-internal-format
 msgid "redundant redeclaration of %qD in same scope"
 msgstr ""
 
-#: cp/decl.cc:2432
+#: cp/decl.cc:2681
 #, gcc-internal-format
 msgid "deleted definition of %qD is not first declaration"
 msgstr ""
@@ -59913,12 +62560,12 @@ msgstr ""
 #. that specialization that would cause an implicit
 #. instantiation to take place, in every translation unit in
 #. which such a use occurs.
-#: cp/decl.cc:2949
+#: cp/decl.cc:3177
 #, gcc-internal-format
 msgid "explicit specialization of %qD after first use"
 msgstr ""
 
-#: cp/decl.cc:3131
+#: cp/decl.cc:3328
 #, gcc-internal-format
 msgid ""
 "%qD: visibility attribute ignored because it conflicts with previous "
@@ -59926,33 +62573,33 @@ msgid ""
 msgstr ""
 
 #. Reject two definitions.
-#: cp/decl.cc:3409 cp/decl.cc:3438 cp/decl.cc:3476 cp/decl.cc:3493
-#: cp/decl.cc:3592
+#: cp/decl.cc:3610 cp/decl.cc:3639 cp/decl.cc:3677 cp/decl.cc:3694
+#: cp/decl.cc:3793
 #, gcc-internal-format
 msgid "redefinition of %q#D"
 msgstr ""
 
-#: cp/decl.cc:3425
+#: cp/decl.cc:3626
 #, gcc-internal-format
 msgid "%qD conflicts with used function"
 msgstr ""
 
-#: cp/decl.cc:3435
+#: cp/decl.cc:3636
 #, gcc-internal-format
 msgid "%q#D not declared in class"
 msgstr ""
 
-#: cp/decl.cc:3449 cp/decl.cc:3503
+#: cp/decl.cc:3650 cp/decl.cc:3704
 #, gcc-internal-format
 msgid "%q+D redeclared inline with %<gnu_inline%> attribute"
 msgstr ""
 
-#: cp/decl.cc:3452 cp/decl.cc:3506
+#: cp/decl.cc:3653 cp/decl.cc:3707
 #, gcc-internal-format
 msgid "%q+D redeclared inline without %<gnu_inline%> attribute"
 msgstr ""
 
-#: cp/decl.cc:3462
+#: cp/decl.cc:3663
 #, gcc-internal-format
 msgid "comparison operator %q+D defaulted after its first declaration"
 msgstr ""
@@ -59960,2633 +62607,2704 @@ msgstr ""
 #. is_primary=
 #. is_partial=
 #. is_friend_decl=
-#: cp/decl.cc:3523
+#: cp/decl.cc:3724
 #, gcc-internal-format
 msgid "redeclaration of friend %q#D may not have default template arguments"
 msgstr ""
 
-#: cp/decl.cc:3538
+#: cp/decl.cc:3739
 #, gcc-internal-format
 msgid "thread-local declaration of %q#D follows non-thread-local declaration"
 msgstr ""
 
-#: cp/decl.cc:3541
+#: cp/decl.cc:3742
 #, gcc-internal-format
 msgid "non-thread-local declaration of %q#D follows thread-local declaration"
 msgstr ""
 
-#: cp/decl.cc:3556 cp/decl.cc:3600 cp/name-lookup.cc:2913
-#: cp/name-lookup.cc:3420 cp/name-lookup.cc:3423 cp/name-lookup.cc:3446
-#: cp/name-lookup.cc:3449
+#: cp/decl.cc:3757 cp/decl.cc:3801 cp/name-lookup.cc:2997
+#: cp/name-lookup.cc:3510 cp/name-lookup.cc:3513 cp/name-lookup.cc:3536
+#: cp/name-lookup.cc:3539
 #, gcc-internal-format
 msgid "redeclaration of %q#D"
 msgstr ""
 
-#: cp/decl.cc:3583
+#: cp/decl.cc:3784
 #, gcc-internal-format
 msgid "redundant redeclaration of %<constexpr%> static data member %qD"
 msgstr ""
 
-#: cp/decl.cc:3652
+#: cp/decl.cc:3853
 #, gcc-internal-format
 msgid "local label %qE conflicts with existing label"
 msgstr ""
 
-#: cp/decl.cc:3653
+#: cp/decl.cc:3854
 #, gcc-internal-format
 msgid "previous label"
 msgstr ""
 
-#: cp/decl.cc:3743
+#: cp/decl.cc:4198
 #, gcc-internal-format
 msgid "jump to label %qD"
 msgstr ""
 
-#: cp/decl.cc:3744
+#: cp/decl.cc:4199 cp/decl.cc:4867
 #, gcc-internal-format
 msgid "jump to case label"
 msgstr ""
 
-#: cp/decl.cc:3748
+#: cp/decl.cc:4203
 #, gcc-internal-format
 msgid "  as a possible target of computed goto"
 msgstr ""
 
-#: cp/decl.cc:3750
+#: cp/decl.cc:4205
 #, gcc-internal-format
 msgid "  from here"
 msgstr ""
 
-#: cp/decl.cc:3779 cp/decl.cc:4018
+#: cp/decl.cc:4243 cp/decl.cc:4543
 #, gcc-internal-format
 msgid "  exits OpenMP structured block"
 msgstr ""
 
-#: cp/decl.cc:3804
+#: cp/decl.cc:4277
 #, gcc-internal-format
 msgid "  crosses initialization of %q#D"
 msgstr ""
 
-#: cp/decl.cc:3816 cp/decl.cc:3984
+#: cp/decl.cc:4289 cp/decl.cc:4508
 #, gcc-internal-format
 msgid "  enters %<try%> block"
 msgstr ""
 
-#: cp/decl.cc:3822 cp/decl.cc:3973 cp/decl.cc:3986
+#: cp/decl.cc:4295 cp/decl.cc:4497 cp/decl.cc:4510
 #, gcc-internal-format
 msgid "  enters %<catch%> block"
 msgstr ""
 
-#: cp/decl.cc:3828 cp/decl.cc:4000
+#: cp/decl.cc:4301 cp/decl.cc:4524
 #, gcc-internal-format
 msgid "  enters OpenMP structured block"
 msgstr ""
 
-#: cp/decl.cc:3834 cp/decl.cc:3988
+#: cp/decl.cc:4307 cp/decl.cc:4512
 #, gcc-internal-format
 msgid "  enters synchronized or atomic statement"
 msgstr ""
 
-#: cp/decl.cc:3840 cp/decl.cc:3994
+#: cp/decl.cc:4313 cp/decl.cc:4518
 #, gcc-internal-format
 msgid "  enters statement expression"
 msgstr ""
 
-#: cp/decl.cc:3847 cp/decl.cc:3990
+#: cp/decl.cc:4320 cp/decl.cc:4514
 #, gcc-internal-format
 msgid "  enters %<constexpr if%> statement"
 msgstr ""
 
-#: cp/decl.cc:3853 cp/decl.cc:3992
+#: cp/decl.cc:4326 cp/decl.cc:4516
 #, gcc-internal-format
 msgid "  enters %<consteval if%> statement"
 msgstr ""
 
-#: cp/decl.cc:3884 cp/decl.cc:4058
+#: cp/decl.cc:4359 cp/decl.cc:4585
 #, gcc-internal-format
 msgid "  does not destroy %qD"
 msgstr ""
 
-#: cp/decl.cc:3886 cp/decl.cc:4042
+#: cp/decl.cc:4361 cp/decl.cc:4568
 #, gcc-internal-format
 msgid "  does not clean up handled exception"
 msgstr ""
 
-#: cp/decl.cc:3978
+#: cp/decl.cc:4502
 #, gcc-internal-format
 msgid "  skips initialization of %q#D"
 msgstr ""
 
-#: cp/decl.cc:4518 cp/parser.cc:7467
+#: cp/decl.cc:4869
+#, gcc-internal-format
+msgid "  enters %<template for%> statement"
+msgstr ""
+
+#: cp/decl.cc:5060 cp/parser.cc:8110
 #, gcc-internal-format
 msgid "%qD used without template arguments"
 msgstr ""
 
-#: cp/decl.cc:4524
+#: cp/decl.cc:5066
 #, gcc-internal-format
 msgid "%qD is a function, not a type"
 msgstr ""
 
-#: cp/decl.cc:4535
+#: cp/decl.cc:5077
 #, gcc-internal-format
 msgid "%q#T is not a class"
 msgstr ""
 
-#: cp/decl.cc:4574 cp/decl.cc:4675
+#: cp/decl.cc:5118 cp/decl.cc:5219
 #, gcc-internal-format
 msgid "no class template named %q#T in %q#T"
 msgstr ""
 
-#: cp/decl.cc:4575
+#: cp/decl.cc:5119
 #, gcc-internal-format
 msgid "no type named %q#T in %q#T"
 msgstr ""
 
-#: cp/decl.cc:4589
+#: cp/decl.cc:5133
 #, gcc-internal-format
 msgid "lookup of %qT in %qT is ambiguous"
 msgstr ""
 
-#: cp/decl.cc:4598
+#: cp/decl.cc:5142
 #, gcc-internal-format
 msgid "%<typename %T::%D%> names %q#T, which is not a class template"
 msgstr ""
 
-#: cp/decl.cc:4611
+#: cp/decl.cc:5155
 #, gcc-internal-format
 msgid "%<typename %T::%D%> names %q#D, which is not a type"
 msgstr ""
 
-#: cp/decl.cc:4685
+#: cp/decl.cc:5229
 #, gcc-internal-format
 msgid "template parameters do not match template %qD"
 msgstr ""
 
-#: cp/decl.cc:5163
+#: cp/decl.cc:5736
 #, gcc-internal-format
 msgid "%<-faligned-new=%d%> is not a power of two"
 msgstr ""
 
-#: cp/decl.cc:5218
+#: cp/decl.cc:5794
 #, gcc-internal-format
 msgid "%<--param destructive-interference-size=%d%> is less than %d"
 msgstr ""
 
-#: cp/decl.cc:5222
+#: cp/decl.cc:5798
 #, gcc-internal-format
 msgid ""
 "%<--param destructive-interference-size=%d%> is less than %<--param l1-cache-"
 "line-size=%d%>"
 msgstr ""
 
-#: cp/decl.cc:5235
+#: cp/decl.cc:5811
 #, gcc-internal-format
 msgid "%<--param constructive-interference-size=%d%> is less than %d"
 msgstr ""
 
-#: cp/decl.cc:5240
+#: cp/decl.cc:5816
 #, gcc-internal-format
 msgid ""
 "%<--param constructive-interference-size=%d%> is greater than %<--param l1-"
 "cache-line-size=%d%>"
 msgstr ""
 
-#: cp/decl.cc:5569
+#: cp/decl.cc:6162
 #, gcc-internal-format
 msgid ""
 "%q#D invalid; an anonymous union may only have public non-static data members"
 msgstr ""
 
-#: cp/decl.cc:5579 cp/parser.cc:24254
+#: cp/decl.cc:6172 cp/parser.cc:26319
 #, gcc-internal-format
 msgid "this flexibility is deprecated and will be removed"
 msgstr ""
 
-#: cp/decl.cc:5608
+#: cp/decl.cc:6201
 #, gcc-internal-format
 msgid "anonymous struct with base classes"
 msgstr ""
 
-#: cp/decl.cc:5620
+#: cp/decl.cc:6213
 #, gcc-internal-format
 msgid "member %q+#D with constructor not allowed in anonymous aggregate"
 msgstr ""
 
-#: cp/decl.cc:5623
+#: cp/decl.cc:6216
 #, gcc-internal-format
 msgid "member %q+#D with destructor not allowed in anonymous aggregate"
 msgstr ""
 
-#: cp/decl.cc:5626
+#: cp/decl.cc:6219
 #, gcc-internal-format
 msgid ""
 "member %q+#D with copy assignment operator not allowed in anonymous aggregate"
 msgstr ""
 
-#: cp/decl.cc:5645
+#: cp/decl.cc:6238
 #, gcc-internal-format
 msgid "attribute ignored in declaration of %q#T"
 msgstr ""
 
-#: cp/decl.cc:5648
+#: cp/decl.cc:6241
 #, gcc-internal-format
 msgid "attribute for %q#T must follow the %qs keyword"
 msgstr ""
 
-#: cp/decl.cc:5690
+#: cp/decl.cc:6283
 #, gcc-internal-format
 msgid "multiple types in one declaration"
 msgstr ""
 
-#: cp/decl.cc:5695
+#: cp/decl.cc:6288
 #, gcc-internal-format
 msgid "redeclaration of C++ built-in type %qT"
 msgstr ""
 
-#: cp/decl.cc:5712
+#: cp/decl.cc:6305
 #, gcc-internal-format
 msgid "%<auto%> can only be specified for variables or function declarations"
 msgstr ""
 
-#: cp/decl.cc:5745
+#: cp/decl.cc:6338
 #, gcc-internal-format
 msgid "missing type-name in typedef-declaration"
 msgstr ""
 
-#: cp/decl.cc:5753
+#: cp/decl.cc:6346
 #, gcc-internal-format
 msgid "ISO C++ prohibits anonymous structs"
 msgstr ""
 
-#: cp/decl.cc:5760
+#: cp/decl.cc:6353
 #, gcc-internal-format
 msgid "%<inline%> can only be specified for functions"
 msgstr ""
 
-#: cp/decl.cc:5763
+#: cp/decl.cc:6356
 #, gcc-internal-format
 msgid "%<virtual%> can only be specified for functions"
 msgstr ""
 
-#: cp/decl.cc:5768
+#: cp/decl.cc:6361
 #, gcc-internal-format
 msgid "%<friend%> can only be specified inside a class"
 msgstr ""
 
-#: cp/decl.cc:5771
+#: cp/decl.cc:6364
 #, gcc-internal-format
 msgid "%<explicit%> can only be specified for constructors"
 msgstr ""
 
-#: cp/decl.cc:5774
+#: cp/decl.cc:6367
 #, gcc-internal-format
 msgid "a storage class can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.cc:5778
+#: cp/decl.cc:6371
 #, gcc-internal-format
 msgid "%<const%> can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.cc:5782
+#: cp/decl.cc:6375
 #, gcc-internal-format
 msgid "%<volatile%> can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.cc:5786
+#: cp/decl.cc:6379
 #, gcc-internal-format
 msgid "%<__restrict%> can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.cc:5790
+#: cp/decl.cc:6383
 #, gcc-internal-format
 msgid "%<__thread%> can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.cc:5794
+#: cp/decl.cc:6387
 #, gcc-internal-format
 msgid "%<typedef%> was ignored in this declaration"
 msgstr ""
 
-#: cp/decl.cc:5797 cp/decl.cc:5800 cp/decl.cc:5803
+#: cp/decl.cc:6390 cp/decl.cc:6393 cp/decl.cc:6396
 #, gcc-internal-format
 msgid "%qs cannot be used for type declarations"
 msgstr ""
 
-#: cp/decl.cc:5826
+#: cp/decl.cc:6419
 #, gcc-internal-format
 msgid "attribute ignored in explicit instantiation %q#T"
 msgstr ""
 
-#: cp/decl.cc:5829
+#: cp/decl.cc:6422
 #, gcc-internal-format
 msgid "no attribute can be applied to an explicit instantiation"
 msgstr ""
 
-#: cp/decl.cc:5842 cp/decl.cc:13782 cp/decl.cc:15429 cp/parser.cc:16037
-#: cp/parser.cc:21975 cp/parser.cc:28867
+#: cp/decl.cc:6435 cp/decl.cc:14968 cp/decl.cc:16598 cp/parser.cc:17515
+#: cp/parser.cc:23681 cp/parser.cc:31058
 #, gcc-internal-format
 msgid "attribute ignored"
 msgstr ""
 
-#: cp/decl.cc:5844 cp/decl.cc:13783
+#: cp/decl.cc:6437 cp/decl.cc:14969
 #, gcc-internal-format
 msgid "an attribute that appertains to a type-specifier is ignored"
 msgstr ""
 
-#: cp/decl.cc:5919
+#: cp/decl.cc:6506
 #, gcc-internal-format
 msgid "ignoring attributes applied to class type %qT outside of definition"
 msgstr ""
 
 #. A template type parameter or other dependent type.
-#: cp/decl.cc:5923
+#: cp/decl.cc:6510
 #, gcc-internal-format
 msgid ""
 "ignoring attributes applied to dependent type %qT without an associated "
 "declaration"
 msgstr ""
 
-#: cp/decl.cc:5989 cp/decl2.cc:1069 cp/decl2.cc:1271
+#: cp/decl.cc:6576 cp/decl2.cc:1277 cp/decl2.cc:1479
 #, gcc-internal-format
 msgid "typedef %qD is initialized (use %qs instead)"
 msgstr ""
 
-#: cp/decl.cc:6002
+#: cp/decl.cc:6591
+#, gcc-internal-format
+msgid ""
+"postconditions with deduced result name types must only appear on function "
+"definitions"
+msgstr ""
+
+#: cp/decl.cc:6603
 #, gcc-internal-format
 msgid "declaration of %q#D has %<extern%> and is initialized"
 msgstr ""
 
-#: cp/decl.cc:6040
+#: cp/decl.cc:6641
 #, gcc-internal-format
 msgid "definition of %q#D is marked %<dllimport%>"
 msgstr ""
 
-#: cp/decl.cc:6067
+#: cp/decl.cc:6668
 #, gcc-internal-format
 msgid "%q+#D is not a static data member of %q#T"
 msgstr ""
 
-#: cp/decl.cc:6076
+#: cp/decl.cc:6677
 #, gcc-internal-format
 msgid "non-member-template declaration of %qD"
 msgstr ""
 
-#: cp/decl.cc:6077
+#: cp/decl.cc:6678
 #, gcc-internal-format
 msgid "does not match member template declaration here"
 msgstr ""
 
-#: cp/decl.cc:6089
+#: cp/decl.cc:6690
 #, gcc-internal-format
 msgid "ISO C++ does not permit %<%T::%D%> to be defined as %<%T::%D%>"
 msgstr ""
 
-#: cp/decl.cc:6101
+#: cp/decl.cc:6702
 #, gcc-internal-format
 msgid "duplicate initialization of %qD"
 msgstr ""
 
-#: cp/decl.cc:6151 cp/decl.cc:6155
+#: cp/decl.cc:6751
 #, gcc-internal-format
 msgid "declaration of %q#D outside of class is not definition"
 msgstr ""
 
-#: cp/decl.cc:6173
+#: cp/decl.cc:6769
 #, gcc-internal-format
 msgid ""
 "block-scope extern declaration %q#D must not be attached to a named module"
 msgstr ""
 
-#: cp/decl.cc:6209
+#: cp/decl.cc:6807
 #, gcc-internal-format
 msgid ""
 "%qD defined %<thread_local%> in %qs function only available with %<-std=c+"
 "+23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: cp/decl.cc:6215
+#: cp/decl.cc:6816
 #, gcc-internal-format
 msgid ""
 "%qD defined %<static%> in %qs function only available with %<-std=c++23%> or "
 "%<-std=gnu++23%>"
 msgstr ""
 
-#: cp/decl.cc:6281
+#: cp/decl.cc:6883
 #, gcc-internal-format
 msgid "variable %q#D has initializer but incomplete type"
 msgstr ""
 
-#: cp/decl.cc:6290 cp/decl.cc:7765
+#: cp/decl.cc:6892 cp/decl.cc:8376
 #, gcc-internal-format
 msgid "elements of array %q#D have incomplete type"
 msgstr ""
 
-#: cp/decl.cc:6301
+#: cp/decl.cc:6903
 #, gcc-internal-format
 msgid "aggregate %q#D has incomplete type and cannot be defined"
 msgstr ""
 
-#: cp/decl.cc:6371
+#: cp/decl.cc:6973
 #, gcc-internal-format
 msgid "%qD declared as reference but not initialized"
 msgstr ""
 
-#: cp/decl.cc:6454
+#: cp/decl.cc:7056
 #, gcc-internal-format
 msgid "name used in a GNU-style designated initializer for an array"
 msgstr ""
 
-#: cp/decl.cc:6460
+#: cp/decl.cc:7062
 #, gcc-internal-format
 msgid "name %qD used in a GNU-style designated initializer for an array"
 msgstr ""
 
-#: cp/decl.cc:6479
+#: cp/decl.cc:7082
 #, gcc-internal-format
 msgid "non-trivial designated initializers not supported"
 msgstr ""
 
-#: cp/decl.cc:6483
+#: cp/decl.cc:7086
 #, gcc-internal-format
 msgid "C99 designator %qE is not an integral constant-expression"
 msgstr ""
 
-#: cp/decl.cc:6548
+#: cp/decl.cc:7151
 #, gcc-internal-format
 msgid "initializer fails to determine size of %qD"
 msgstr ""
 
-#: cp/decl.cc:6555
+#: cp/decl.cc:7158
 #, gcc-internal-format
 msgid "array size missing in %qD"
 msgstr ""
 
-#: cp/decl.cc:6567
+#: cp/decl.cc:7170
 #, gcc-internal-format
 msgid "zero-size array %qD"
 msgstr ""
 
-#: cp/decl.cc:6607
+#: cp/decl.cc:7218
 #, gcc-internal-format
 msgid "storage size of %qD isn%'t known"
 msgstr ""
 
-#: cp/decl.cc:6632
+#: cp/decl.cc:7243
 #, gcc-internal-format
 msgid "storage size of %qD isn%'t constant"
 msgstr ""
 
-#: cp/decl.cc:6734
+#: cp/decl.cc:7345
 #, gcc-internal-format
 msgid ""
 "sorry: semantics of inline variable %q#D are wrong (you%'ll wind up with "
 "multiple copies)"
 msgstr ""
 
-#: cp/decl.cc:6738
+#: cp/decl.cc:7349
 #, gcc-internal-format
 msgid ""
 "sorry: semantics of inline function static data %q#D are wrong (you%'ll wind "
 "up with multiple copies)"
 msgstr ""
 
-#: cp/decl.cc:6745
+#: cp/decl.cc:7356
 #, gcc-internal-format
 msgid "you can work around this by removing the initializer"
 msgstr ""
 
-#: cp/decl.cc:6788 rust/backend/rust-tree.cc:3265
+#: cp/decl.cc:7399 rust/backend/rust-tree.cc:3278
 #, gcc-internal-format
 msgid "uninitialized %<const %D%>"
 msgstr ""
 
-#: cp/decl.cc:6795 rust/backend/rust-tree.cc:3272
+#: cp/decl.cc:7406 rust/backend/rust-tree.cc:3285
 #, gcc-internal-format
 msgid "uninitialized variable %qD in %<constexpr%> function"
 msgstr ""
 
-#: cp/decl.cc:6804 rust/backend/rust-tree.cc:3281
+#: cp/decl.cc:7415 rust/backend/rust-tree.cc:3294
 #, gcc-internal-format
 msgid "uninitialized variable %qD in %<constexpr%> context"
 msgstr ""
 
-#: cp/decl.cc:6812
+#: cp/decl.cc:7423
 #, gcc-internal-format
 msgid "%q#T has no user-provided default constructor"
 msgstr ""
 
-#: cp/decl.cc:6816
+#: cp/decl.cc:7427
 #, gcc-internal-format
 msgid ""
 "constructor is not user-provided because it is explicitly defaulted in the "
 "class body"
 msgstr ""
 
-#: cp/decl.cc:6819
+#: cp/decl.cc:7430
 #, gcc-internal-format
 msgid "and the implicitly-defined constructor does not initialize %q#D"
 msgstr ""
 
-#: cp/decl.cc:7119
+#: cp/decl.cc:7730
 #, gcc-internal-format
 msgid "invalid type %qT as initializer for a vector of type %qT"
 msgstr ""
 
-#: cp/decl.cc:7191
+#: cp/decl.cc:7802
 #, gcc-internal-format
 msgid "initializer for %qT must be brace-enclosed"
 msgstr ""
 
-#: cp/decl.cc:7236
+#: cp/decl.cc:7847
 #, gcc-internal-format
 msgid "%<[%E] =%> used in a GNU-style designated initializer for class %qT"
 msgstr ""
 
-#: cp/decl.cc:7253 cp/init.cc:3424 cp/search.cc:1244
+#: cp/decl.cc:7864 cp/init.cc:3439 cp/search.cc:1245
 #, gcc-internal-format
 msgid "request for member %qD is ambiguous"
 msgstr ""
 
-#: cp/decl.cc:7258
+#: cp/decl.cc:7869
 #, gcc-internal-format
 msgid "%qT has no non-static data member named %qD"
 msgstr ""
 
-#: cp/decl.cc:7283
+#: cp/decl.cc:7894
 #, gcc-internal-format
 msgid "%qD is not a direct member of %qT"
 msgstr ""
 
-#: cp/decl.cc:7339
+#: cp/decl.cc:7950
 #, gcc-internal-format
 msgid "invalid initializer for %q#D"
 msgstr ""
 
-#: cp/decl.cc:7393
+#: cp/decl.cc:8004
 #, gcc-internal-format
 msgid "C99 designator %qE outside aggregate initializer"
 msgstr ""
 
-#: cp/decl.cc:7432 cp/decl.cc:7723 cp/typeck2.cc:1634 cp/typeck2.cc:1969
-#: cp/typeck2.cc:2017 cp/typeck2.cc:2064
+#: cp/decl.cc:8043 cp/decl.cc:8334 cp/typeck2.cc:1727 cp/typeck2.cc:2062
+#: cp/typeck2.cc:2110 cp/typeck2.cc:2157
 #, gcc-internal-format
 msgid "too many initializers for %qT"
 msgstr ""
 
-#: cp/decl.cc:7475
+#: cp/decl.cc:8086
 #, gcc-internal-format
 msgid "braces around scalar initializer for type %qT"
 msgstr ""
 
-#: cp/decl.cc:7485
+#: cp/decl.cc:8096
 #, gcc-internal-format
 msgid "too many braces around scalar initializer for type %qT"
 msgstr ""
 
-#: cp/decl.cc:7619
+#: cp/decl.cc:8230
 #, gcc-internal-format
 msgid "missing braces around initializer for %qT"
 msgstr ""
 
-#: cp/decl.cc:7753
+#: cp/decl.cc:8364
 #, gcc-internal-format
 msgid "structured binding has incomplete type %qT"
 msgstr ""
 
-#: cp/decl.cc:7767
+#: cp/decl.cc:8378
 #, gcc-internal-format
 msgid "elements of array %q#T have incomplete type"
 msgstr ""
 
-#: cp/decl.cc:7780
+#: cp/decl.cc:8391
 #, gcc-internal-format
 msgid "variable-sized compound literal"
 msgstr ""
 
-#: cp/decl.cc:7836
+#: cp/decl.cc:8447
 #, gcc-internal-format
 msgid "%q#D has incomplete type"
 msgstr ""
 
-#: cp/decl.cc:7857
+#: cp/decl.cc:8468
 #, gcc-internal-format
 msgid "scalar object %qD requires one element in initializer"
 msgstr ""
 
-#: cp/decl.cc:7902
+#: cp/decl.cc:8519
 #, gcc-internal-format
 msgid "in C++98 %qD must be initialized by constructor, not by %<{...}%>"
 msgstr ""
 
-#: cp/decl.cc:8045
+#: cp/decl.cc:8662
 #, gcc-internal-format
 msgid "array %qD initialized by parenthesized string literal %qE"
 msgstr ""
 
-#: cp/decl.cc:8085
+#: cp/decl.cc:8712
 #, gcc-internal-format
 msgid "initializer invalid for static member with constructor"
 msgstr ""
 
-#: cp/decl.cc:8087
+#: cp/decl.cc:8714
 #, gcc-internal-format
 msgid "non-constant in-class initialization invalid for static member %qD"
 msgstr ""
 
-#: cp/decl.cc:8090
+#: cp/decl.cc:8717
 #, gcc-internal-format
 msgid ""
 "non-constant in-class initialization invalid for non-inline static member %qD"
 msgstr ""
 
-#: cp/decl.cc:8095
+#: cp/decl.cc:8722
 #, gcc-internal-format
 msgid "(an out of class initialization is required)"
 msgstr ""
 
-#: cp/decl.cc:8297
+#: cp/decl.cc:8749 cp/decl.cc:9773 cp/typeck.cc:8281 d/d-codegen.cc:773
+#: rust/backend/rust-tree.cc:4770
+#, gcc-internal-format
+msgid "address of explicit register variable %qD requested"
+msgstr ""
+
+#: cp/decl.cc:8946
 #, gcc-internal-format
 msgid "reference %qD is initialized with itself"
 msgstr ""
 
-#: cp/decl.cc:8499
+#: cp/decl.cc:9148
 #, gcc-internal-format
 msgid "argument %d of %qE must be of %<omp_interop_t%>"
 msgstr ""
 
-#: cp/decl.cc:8670
+#: cp/decl.cc:9351
 #, gcc-internal-format
 msgid "could not find variant declaration"
 msgstr ""
 
-#: cp/decl.cc:8694
+#: cp/decl.cc:9375
 #, gcc-internal-format
 msgid "%<declare variant%> on constructor %qD"
 msgstr ""
 
-#: cp/decl.cc:8699
+#: cp/decl.cc:9380
 #, gcc-internal-format
 msgid "%<declare variant%> on destructor %qD"
 msgstr ""
 
-#: cp/decl.cc:8704
+#: cp/decl.cc:9385
 #, gcc-internal-format
 msgid "%<declare variant%> on defaulted %qD"
 msgstr ""
 
-#: cp/decl.cc:8709
+#: cp/decl.cc:9390
 #, gcc-internal-format
 msgid "%<declare variant%> on deleted %qD"
 msgstr ""
 
-#: cp/decl.cc:8714
+#: cp/decl.cc:9395
 #, gcc-internal-format
 msgid "%<declare variant%> on virtual %qD"
 msgstr ""
 
-#: cp/decl.cc:8779
+#: cp/decl.cc:9460
 #, gcc-internal-format
 msgid "assignment (not initialization) in declaration"
 msgstr ""
 
-#: cp/decl.cc:8800 cp/decl.cc:15829
+#: cp/decl.cc:9481 cp/decl.cc:16997
 #, gcc-internal-format
 msgid "ISO C++17 does not allow %<register%> storage class specifier"
 msgstr ""
 
-#: cp/decl.cc:8804 cp/decl.cc:15833
+#: cp/decl.cc:9485 cp/decl.cc:17001
 #, gcc-internal-format
 msgid "%<register%> storage class specifier used"
 msgstr ""
 
-#: cp/decl.cc:8849 cp/decl.cc:15796
+#: cp/decl.cc:9530 cp/decl.cc:16964
 #, gcc-internal-format
 msgid "declaration of %q#D has no initializer"
 msgstr ""
 
-#: cp/decl.cc:8885
+#: cp/decl.cc:9566
 #, gcc-internal-format
 msgid ""
 "initializer for %<decltype(auto) %D%> has function type; did you forget the "
 "%<()%>?"
 msgstr ""
 
-#: cp/decl.cc:8897
+#: cp/decl.cc:9578
 #, gcc-internal-format
 msgid "deduced type %qT for %qD is incomplete"
 msgstr ""
 
 #. [basic.start.main]/3: A program that defines main as deleted
 #. is ill-formed.
-#: cp/decl.cc:8948
+#: cp/decl.cc:9634
 #, gcc-internal-format
 msgid "%<::main%> cannot be deleted"
 msgstr ""
 
-#: cp/decl.cc:9102
+#: cp/decl.cc:9795
 #, gcc-internal-format
 msgid "shadowing previous type declaration of %q#D"
 msgstr ""
 
-#: cp/decl.cc:9145
+#: cp/decl.cc:9838
 #, gcc-internal-format
 msgid ""
 "%<constinit%> can only be applied to a variable with static or thread "
 "storage duration"
 msgstr ""
 
-#: cp/decl.cc:9353
+#: cp/decl.cc:9847
+#, gcc-internal-format
+msgid ""
+"%<constinit%> can be applied to structured binding only with %<-std=c++2c%> "
+"or %<-std=gnu++2c%>"
+msgstr ""
+
+#: cp/decl.cc:10064
 #, gcc-internal-format
 msgid "function %q#D is initialized like a variable"
 msgstr ""
 
-#: cp/decl.cc:9585
+#: cp/decl.cc:10299
 #, gcc-internal-format
 msgid "cannot decompose lambda closure type %qT"
 msgstr ""
 
-#: cp/decl.cc:9586
+#: cp/decl.cc:10300
 #, gcc-internal-format
 msgid "lambda declared here"
 msgstr ""
 
-#: cp/decl.cc:9602
+#: cp/decl.cc:10319
 #, gcc-internal-format
 msgid ""
 "cannot decompose class type %qT because it has an anonymous struct member"
 msgstr ""
 
-#: cp/decl.cc:9605
+#: cp/decl.cc:10322
 #, gcc-internal-format
 msgid ""
 "cannot decompose class type %qT because it has an anonymous union member"
 msgstr ""
 
-#: cp/decl.cc:9613
+#: cp/decl.cc:10332
 #, gcc-internal-format
 msgid "cannot decompose inaccessible member %qD of %qT"
 msgstr ""
 
-#: cp/decl.cc:9636
+#: cp/decl.cc:10357
 #, gcc-internal-format
 msgid "in base class of %qT"
 msgstr ""
 
-#: cp/decl.cc:9643
+#: cp/decl.cc:10365
 #, gcc-internal-format
 msgid ""
 "cannot decompose class type %qT: both it and its base class %qT have non-"
 "static data members"
 msgstr ""
 
-#: cp/decl.cc:9652
+#: cp/decl.cc:10375
 #, gcc-internal-format
 msgid ""
 "cannot decompose class type %qT: its base classes %qT and %qT have non-"
 "static data members"
 msgstr ""
 
-#: cp/decl.cc:9890
+#: cp/decl.cc:10576 cp/decl.cc:10744
 #, gcc-internal-format
 msgid "structured binding refers to incomplete type %qT"
 msgstr ""
 
-#: cp/decl.cc:9906
+#: cp/decl.cc:10588
 #, gcc-internal-format
-msgid "array initializer for structured binding declaration in condition"
+msgid "cannot decompose array of unknown bound %qT"
 msgstr ""
 
-#: cp/decl.cc:9912
+#: cp/decl.cc:10598 cp/decl.cc:10774
 #, gcc-internal-format
 msgid "cannot decompose variable length array %qT"
 msgstr ""
 
-#: cp/decl.cc:9922 cp/decl.cc:10002
+#: cp/decl.cc:10611 cp/decl.cc:10881
+#, gcc-internal-format
+msgid "cannot decompose variable length vector %qT"
+msgstr ""
+
+#: cp/decl.cc:10623 cp/decl.cc:10933
+#, gcc-internal-format
+msgid "%<std::tuple_size<%T>::value%> is not an integral constant expression"
+msgstr ""
+
+#: cp/decl.cc:10632 cp/decl.cc:11079
+#, gcc-internal-format
+msgid "cannot decompose union type %qT"
+msgstr ""
+
+#: cp/decl.cc:10638 cp/decl.cc:11084
+#, gcc-internal-format
+msgid "cannot decompose non-array non-class type %qT"
+msgstr ""
+
+#: cp/decl.cc:10646 cp/decl.cc:11090
+#, gcc-internal-format
+msgid "structured binding refers to incomplete class type %qT"
+msgstr ""
+
+#: cp/decl.cc:10768
+#, gcc-internal-format
+msgid "array initializer for structured binding declaration in condition"
+msgstr ""
+
+#: cp/decl.cc:10784 cp/decl.cc:10941
 #, gcc-internal-format, gfc-internal-format
 msgid "%u name provided for structured binding"
 msgid_plural "%u names provided for structured binding"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/decl.cc:9926
+#: cp/decl.cc:10788
 #, gcc-internal-format, gfc-internal-format
 msgid "only %u name provided for structured binding"
 msgid_plural "only %u names provided for structured binding"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/decl.cc:9929
+#: cp/decl.cc:10791
 #, gcc-internal-format
 msgid "while %qT decomposes into %wu element"
 msgid_plural "while %qT decomposes into %wu elements"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/decl.cc:9970
-#, gcc-internal-format
-msgid "cannot decompose variable length vector %qT"
-msgstr ""
-
-#: cp/decl.cc:9994
-#, gcc-internal-format
-msgid "%<std::tuple_size<%T>::value%> is not an integral constant expression"
-msgstr ""
-
-#: cp/decl.cc:10004
+#: cp/decl.cc:10943
 #, gcc-internal-format
 msgid "while %qT decomposes into %E elements"
 msgstr ""
 
-#: cp/decl.cc:10051
+#: cp/decl.cc:10998 cp/decl.cc:11044
 #, gcc-internal-format
-msgid "%<std::tuple_element<%u, %T>::type%> is %<void%>"
+msgid "%<std::tuple_element<%wu, %T>::type%> is %<void%>"
 msgstr ""
 
-#: cp/decl.cc:10057
+#: cp/decl.cc:11004
 #, gcc-internal-format
-msgid "in initialization of structured binding variable %qD"
-msgstr ""
-
-#: cp/decl.cc:10086
-#, gcc-internal-format
-msgid "cannot decompose union type %qT"
-msgstr ""
-
-#: cp/decl.cc:10091
-#, gcc-internal-format
-msgid "cannot decompose non-array non-class type %qT"
+msgid "in initialization of structured binding pack %qD"
 msgstr ""
 
-#: cp/decl.cc:10097
+#: cp/decl.cc:11050
 #, gcc-internal-format
-msgid "structured binding refers to incomplete class type %qT"
+msgid "in initialization of structured binding variable %qD"
 msgstr ""
 
-#: cp/decl.cc:10106
+#: cp/decl.cc:11106
 #, gcc-internal-format
 msgid "cannot decompose class type %qT without non-static data members"
 msgstr ""
 
-#: cp/decl.cc:10602
+#: cp/decl.cc:11665
 #, gcc-internal-format
 msgid ""
 "non-local variable %qD declared %<__thread%> needs dynamic initialization"
 msgstr ""
 
-#: cp/decl.cc:10605
+#: cp/decl.cc:11668
 #, gcc-internal-format
 msgid ""
 "non-local variable %qD declared %<__thread%> has a non-trivial destructor"
 msgstr ""
 
-#: cp/decl.cc:10610
+#: cp/decl.cc:11673
 #, gcc-internal-format
 msgid "C++11 %<thread_local%> allows dynamic initialization and destruction"
 msgstr ""
 
-#: cp/decl.cc:10829
+#: cp/decl.cc:11892
 #, gcc-internal-format
 msgid "initializer fails to determine size of %qT"
 msgstr ""
 
-#: cp/decl.cc:10833
+#: cp/decl.cc:11896
 #, gcc-internal-format
 msgid "array size missing in %qT"
 msgstr ""
 
-#: cp/decl.cc:10836
+#: cp/decl.cc:11899
 #, gcc-internal-format
 msgid "zero-size array %qT"
 msgstr ""
 
-#: cp/decl.cc:10852
+#: cp/decl.cc:11915
 #, gcc-internal-format
 msgid "destructor for alien class %qT cannot be a member"
 msgstr ""
 
-#: cp/decl.cc:10854
+#: cp/decl.cc:11917
 #, gcc-internal-format
 msgid "constructor for alien class %qT cannot be a member"
 msgstr ""
 
-#: cp/decl.cc:10880
+#: cp/decl.cc:11943
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> variable"
 msgstr ""
 
-#: cp/decl.cc:10882
+#: cp/decl.cc:11945
 #, gcc-internal-format
 msgid ""
 "%<const%> and %<volatile%> function specifiers on %qD invalid in variable "
 "declaration"
 msgstr ""
 
-#: cp/decl.cc:10888
+#: cp/decl.cc:11951
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> parameter"
 msgstr ""
 
-#: cp/decl.cc:10891
+#: cp/decl.cc:11954
 #, gcc-internal-format
 msgid "%qD declared as an %<inline%> parameter"
 msgstr ""
 
-#: cp/decl.cc:10893
+#: cp/decl.cc:11956
 #, gcc-internal-format
 msgid ""
 "%<const%> and %<volatile%> function specifiers on %qD invalid in parameter "
 "declaration"
 msgstr ""
 
-#: cp/decl.cc:10899
+#: cp/decl.cc:11962
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> type"
 msgstr ""
 
-#: cp/decl.cc:10902
+#: cp/decl.cc:11965
 #, gcc-internal-format
 msgid "%qD declared as an %<inline%> type"
 msgstr ""
 
-#: cp/decl.cc:10904
+#: cp/decl.cc:11967
 #, gcc-internal-format
 msgid ""
 "%<const%> and %<volatile%> function specifiers on %qD invalid in type "
 "declaration"
 msgstr ""
 
-#: cp/decl.cc:10910
+#: cp/decl.cc:11973
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> field"
 msgstr ""
 
-#: cp/decl.cc:10913
+#: cp/decl.cc:11976
 #, gcc-internal-format
 msgid "%qD declared as an %<inline%> field"
 msgstr ""
 
-#: cp/decl.cc:10915
+#: cp/decl.cc:11978
 #, gcc-internal-format
 msgid ""
 "%<const%> and %<volatile%> function specifiers on %qD invalid in field "
 "declaration"
 msgstr ""
 
-#: cp/decl.cc:10922
+#: cp/decl.cc:11985
 #, gcc-internal-format
 msgid "%q+D declared as a friend"
 msgstr ""
 
-#: cp/decl.cc:10929
+#: cp/decl.cc:11992
 #, gcc-internal-format
 msgid "%q+D declared with an exception specification"
 msgstr ""
 
-#: cp/decl.cc:10961
+#: cp/decl.cc:12024
 #, gcc-internal-format
 msgid "definition of %qD is not in namespace enclosing %qT"
 msgstr ""
 
-#: cp/decl.cc:11001
+#: cp/decl.cc:12064
 #, gcc-internal-format
 msgid "static member function %q#D declared with type qualifiers"
 msgstr ""
 
-#: cp/decl.cc:11077
+#: cp/decl.cc:12141
 #, gcc-internal-format
 msgid "function concepts are no longer supported"
 msgstr ""
 
-#: cp/decl.cc:11115
+#: cp/decl.cc:12179
 #, gcc-internal-format
 msgid "constraints on a non-templated function"
 msgstr ""
 
-#: cp/decl.cc:11117
+#: cp/decl.cc:12181
 #, gcc-internal-format
 msgid "constrained non-template friend declaration must be a definition"
 msgstr ""
 
-#: cp/decl.cc:11124
+#: cp/decl.cc:12188
 #, gcc-internal-format
 msgid ""
 "friend function template with constraints that depend on outer template "
 "parameters must be a definition"
 msgstr ""
 
-#: cp/decl.cc:11176
+#: cp/decl.cc:12240
 #, gcc-internal-format
 msgid "defining explicit specialization %qD in friend declaration"
 msgstr ""
 
-#: cp/decl.cc:11187
+#: cp/decl.cc:12251
 #, gcc-internal-format
 msgid "invalid use of template-id %qD in declaration of primary template"
 msgstr ""
 
-#: cp/decl.cc:11205
+#: cp/decl.cc:12274
 #, gcc-internal-format
 msgid ""
 "default arguments are not allowed in declaration of friend template "
 "specialization %qD"
 msgstr ""
 
-#: cp/decl.cc:11214
+#: cp/decl.cc:12283
 #, gcc-internal-format
 msgid ""
 "%<inline%> is not allowed in declaration of friend template specialization "
 "%qD"
 msgstr ""
 
-#. diagnostic_option_id=
-#: cp/decl.cc:11245
+#. diagnostics::option_id=
+#: cp/decl.cc:12314
 #, gcc-internal-format
 msgid ""
 "friend declaration of %qD specifies default arguments and isn%'t a definition"
 msgstr ""
 
-#: cp/decl.cc:11287
+#: cp/decl.cc:12356
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be a template"
 msgstr ""
 
-#: cp/decl.cc:11290
+#: cp/decl.cc:12359
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be inline"
 msgstr ""
 
-#: cp/decl.cc:11293 cp/decl.cc:11296
+#: cp/decl.cc:12362 cp/decl.cc:12365
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be %qs"
 msgstr ""
 
-#: cp/decl.cc:11298
+#: cp/decl.cc:12367
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be static"
 msgstr ""
 
-#: cp/decl.cc:11300
+#: cp/decl.cc:12369
 #, gcc-internal-format
-msgid "cannot declare %<::main%> with a linkage specification"
+msgid ""
+"cannot declare %<::main%> with a linkage specification other than %<extern "
+"\"C++\"%>"
 msgstr ""
 
-#: cp/decl.cc:11303
+#: cp/decl.cc:12374
 #, gcc-internal-format
 msgid "cannot attach %<::main%> to a named module"
 msgstr ""
 
-#: cp/decl.cc:11362
+#: cp/decl.cc:12375
+#, gcc-internal-format
+msgid "use %<extern \"C++\"%> to attach it to the global module instead"
+msgstr ""
+
+#: cp/decl.cc:12436
 #, gcc-internal-format
 msgid "non-member function %qD cannot have cv-qualifier"
 msgstr ""
 
-#: cp/decl.cc:11364
+#: cp/decl.cc:12438
 #, gcc-internal-format
 msgid "static member function %qD cannot have cv-qualifier"
 msgstr ""
 
-#: cp/decl.cc:11365
+#: cp/decl.cc:12439
 #, gcc-internal-format
 msgid "explicit object member function %qD cannot have cv-qualifier"
 msgstr ""
 
-#: cp/decl.cc:11370
+#: cp/decl.cc:12444
 #, gcc-internal-format
 msgid "non-member function %qD cannot have ref-qualifier"
 msgstr ""
 
-#: cp/decl.cc:11372
+#: cp/decl.cc:12446
 #, gcc-internal-format
 msgid "static member function %qD cannot have ref-qualifier"
 msgstr ""
 
-#: cp/decl.cc:11373
+#: cp/decl.cc:12447
 #, gcc-internal-format
 msgid "explicit object member function %qD cannot have ref-qualifier"
 msgstr ""
 
-#: cp/decl.cc:11379 cp/decl.cc:14312 cp/decl.cc:14322 cp/parser.cc:12368
+#: cp/decl.cc:12453 cp/decl.cc:15489 cp/decl.cc:15499 cp/parser.cc:13448
 #, gcc-internal-format
 msgid "explicit object parameter declared here"
 msgstr ""
 
-#: cp/decl.cc:11392
+#: cp/decl.cc:12466
 #, gcc-internal-format
 msgid "deduction guide %qD must be declared in the same scope as %qT"
 msgstr ""
 
-#: cp/decl.cc:11394 cp/decl.cc:11403 cp/typeck.cc:4667
+#: cp/decl.cc:12468 cp/decl.cc:12477 cp/typeck.cc:4914
 #, gcc-internal-format
 msgid "  declared here"
 msgstr ""
 
-#: cp/decl.cc:11401
+#: cp/decl.cc:12475
 #, gcc-internal-format
 msgid "deduction guide %qD must have the same access as %qT"
 msgstr ""
 
-#: cp/decl.cc:11407
+#: cp/decl.cc:12481
 #, gcc-internal-format
 msgid "deduction guide %qD must not have a function body"
 msgstr ""
 
-#: cp/decl.cc:11421
+#: cp/decl.cc:12495
 #, gcc-internal-format
 msgid "literal operator with C linkage"
 msgstr ""
 
-#: cp/decl.cc:11431
+#: cp/decl.cc:12505
 #, gcc-internal-format
 msgid "%qD has invalid argument list"
 msgstr ""
 
-#: cp/decl.cc:11439
+#: cp/decl.cc:12513
 #, gcc-internal-format
 msgid "integer suffix %qs shadowed by implementation"
 msgstr ""
 
-#: cp/decl.cc:11445
+#: cp/decl.cc:12519
 #, gcc-internal-format
 msgid "floating-point suffix %qs shadowed by implementation"
 msgstr ""
 
-#: cp/decl.cc:11452
+#: cp/decl.cc:12526
 #, gcc-internal-format
 msgid ""
 "literal operator suffixes not preceded by %<_%> are reserved for future "
 "standardization"
 msgstr ""
 
-#: cp/decl.cc:11457
+#: cp/decl.cc:12531
 #, gcc-internal-format
 msgid "%qD must be a non-member function"
 msgstr ""
 
-#: cp/decl.cc:11542
+#: cp/decl.cc:12628
 #, gcc-internal-format
 msgid "%<::main%> must return %<int%>"
 msgstr ""
 
-#: cp/decl.cc:11582
+#: cp/decl.cc:12669
 #, gcc-internal-format
 msgid "definition of implicitly-declared %qD"
 msgstr ""
 
-#: cp/decl.cc:11588
+#: cp/decl.cc:12675
 #, gcc-internal-format
 msgid "definition of explicitly-defaulted %q+D"
 msgstr ""
 
-#: cp/decl.cc:11590
+#: cp/decl.cc:12677
 #, gcc-internal-format
 msgid "%q#D explicitly defaulted here"
 msgstr ""
 
-#: cp/decl.cc:11607
+#: cp/decl.cc:12694
 #, gcc-internal-format
 msgid "no %q#D member function declared in class %qT"
 msgstr ""
 
-#: cp/decl.cc:11804
+#: cp/decl.cc:12900
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be a global variable"
 msgstr ""
 
-#: cp/decl.cc:11807
+#: cp/decl.cc:12903
 #, gcc-internal-format
 msgid "an entity named %<main%> cannot be declared with C language linkage"
 msgstr ""
 
-#: cp/decl.cc:11816
+#: cp/decl.cc:12912
 #, gcc-internal-format
 msgid "a non-template variable cannot be %<concept%>"
 msgstr ""
 
-#: cp/decl.cc:11819
+#: cp/decl.cc:12915
 #, gcc-internal-format
 msgid "concept must be defined at namespace scope"
 msgstr ""
 
-#: cp/decl.cc:11822
+#: cp/decl.cc:12918
 #, gcc-internal-format
 msgid "variable concepts are no longer supported"
 msgstr ""
 
-#: cp/decl.cc:11943
+#: cp/decl.cc:13039
 #, gcc-internal-format
 msgid "in-class initialization of static data member %q#D of incomplete type"
 msgstr ""
 
-#: cp/decl.cc:11947
+#: cp/decl.cc:13043
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> needed for in-class initialization of static data member %q#D "
 "of non-integral type"
 msgstr ""
 
-#: cp/decl.cc:11951
+#: cp/decl.cc:13047
 #, gcc-internal-format
 msgid "in-class initialization of static data member %q#D of non-literal type"
 msgstr ""
 
-#: cp/decl.cc:11962
+#: cp/decl.cc:13058
 #, gcc-internal-format
 msgid ""
 "invalid in-class initialization of static data member of non-integral type "
 "%qT"
 msgstr ""
 
-#: cp/decl.cc:11967
+#: cp/decl.cc:13063
 #, gcc-internal-format
 msgid "ISO C++ forbids in-class initialization of non-const static member %qD"
 msgstr ""
 
-#: cp/decl.cc:11972
+#: cp/decl.cc:13068
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids initialization of member constant %qD of non-integral type "
 "%qT"
 msgstr ""
 
-#: cp/decl.cc:12084
+#: cp/decl.cc:13180
 #, gcc-internal-format
 msgid "size of array %qD has non-integral type %qT"
 msgstr ""
 
-#: cp/decl.cc:12087
+#: cp/decl.cc:13183
 #, gcc-internal-format
 msgid "size of array has non-integral type %qT"
 msgstr ""
 
-#: cp/decl.cc:12118 cp/decl.cc:12190
+#: cp/decl.cc:13214 cp/decl.cc:13286
 #, gcc-internal-format
 msgid "size of array %qD is not an integral constant-expression"
 msgstr ""
 
-#: cp/decl.cc:12122 cp/decl.cc:12193
+#: cp/decl.cc:13218 cp/decl.cc:13289
 #, gcc-internal-format
 msgid "size of array is not an integral constant-expression"
 msgstr ""
 
-#: cp/decl.cc:12173
+#: cp/decl.cc:13269
 #, gcc-internal-format
 msgid "ISO C++ forbids zero-size array %qD"
 msgstr ""
 
-#: cp/decl.cc:12176
+#: cp/decl.cc:13272
 #, gcc-internal-format
 msgid "ISO C++ forbids zero-size array"
 msgstr ""
 
-#: cp/decl.cc:12200
+#: cp/decl.cc:13296
 #, gcc-internal-format
 msgid "ISO C++ forbids variable length array %qD"
 msgstr ""
 
-#: cp/decl.cc:12203
+#: cp/decl.cc:13299
 #, gcc-internal-format
 msgid "ISO C++ forbids variable length array"
 msgstr ""
 
-#: cp/decl.cc:12209
+#: cp/decl.cc:13305
 #, gcc-internal-format
 msgid "variable length array %qD is used"
 msgstr ""
 
-#: cp/decl.cc:12212
+#: cp/decl.cc:13308
 #, gcc-internal-format
 msgid "variable length array is used"
 msgstr ""
 
-#: cp/decl.cc:12264
+#: cp/decl.cc:13360
 #, gcc-internal-format
 msgid "overflow in array dimension"
 msgstr ""
 
-#: cp/decl.cc:12324
+#: cp/decl.cc:13420
 #, gcc-internal-format
 msgid "%qD declared as array of template placeholder type %qT"
 msgstr ""
 
-#: cp/decl.cc:12327
+#: cp/decl.cc:13423
 #, gcc-internal-format
 msgid "creating array of template placeholder type %qT"
 msgstr ""
 
-#: cp/decl.cc:12337
+#: cp/decl.cc:13433
 #, gcc-internal-format
 msgid "declaration of %qD as array of void"
 msgstr ""
 
-#: cp/decl.cc:12339
+#: cp/decl.cc:13435
 #, gcc-internal-format
 msgid "creating array of void"
 msgstr ""
 
-#: cp/decl.cc:12344
+#: cp/decl.cc:13440
 #, gcc-internal-format
 msgid "declaration of %qD as array of functions"
 msgstr ""
 
-#: cp/decl.cc:12346
+#: cp/decl.cc:13442
 #, gcc-internal-format
 msgid "creating array of functions"
 msgstr ""
 
-#: cp/decl.cc:12351
+#: cp/decl.cc:13447
 #, gcc-internal-format
 msgid "declaration of %qD as array of references"
 msgstr ""
 
-#: cp/decl.cc:12353
+#: cp/decl.cc:13449
 #, gcc-internal-format
 msgid "creating array of references"
 msgstr ""
 
-#: cp/decl.cc:12358
+#: cp/decl.cc:13454
 #, gcc-internal-format
 msgid "declaration of %qD as array of function members"
 msgstr ""
 
-#: cp/decl.cc:12361
+#: cp/decl.cc:13457
 #, gcc-internal-format
 msgid "creating array of function members"
 msgstr ""
 
-#: cp/decl.cc:12379
+#: cp/decl.cc:13475
 #, gcc-internal-format
 msgid ""
 "declaration of %qD as multidimensional array must have bounds for all "
 "dimensions except the first"
 msgstr ""
 
-#: cp/decl.cc:12383
+#: cp/decl.cc:13479
 #, gcc-internal-format
 msgid ""
 "multidimensional array must have bounds for all dimensions except the first"
 msgstr ""
 
-#: cp/decl.cc:12397
+#: cp/decl.cc:13493
 #, gcc-internal-format
 msgid "variable-length array of %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:12495
+#: cp/decl.cc:13591
 #, gcc-internal-format
 msgid "return type specification for constructor invalid"
 msgstr ""
 
-#: cp/decl.cc:12498
+#: cp/decl.cc:13594
 #, gcc-internal-format
 msgid "qualifiers are not allowed on constructor declaration"
 msgstr ""
 
-#: cp/decl.cc:12509
+#: cp/decl.cc:13605
 #, gcc-internal-format
 msgid "return type specification for destructor invalid"
 msgstr ""
 
-#: cp/decl.cc:12512
+#: cp/decl.cc:13608
 #, gcc-internal-format
 msgid "qualifiers are not allowed on destructor declaration"
 msgstr ""
 
-#: cp/decl.cc:12525
+#: cp/decl.cc:13621
 #, gcc-internal-format
 msgid "return type specified for %<operator %T%>"
 msgstr ""
 
-#: cp/decl.cc:12528
+#: cp/decl.cc:13624
 #, gcc-internal-format
 msgid "qualifiers are not allowed on declaration of %<operator %T%>"
 msgstr ""
 
-#: cp/decl.cc:12537
+#: cp/decl.cc:13633
 #, gcc-internal-format
 msgid "return type specified for deduction guide"
 msgstr ""
 
-#: cp/decl.cc:12540
+#: cp/decl.cc:13636
 #, gcc-internal-format
 msgid "qualifiers are not allowed on declaration of deduction guide"
 msgstr ""
 
-#: cp/decl.cc:12544
+#: cp/decl.cc:13640
 #, gcc-internal-format
 msgid "template template parameter %qT in declaration of deduction guide"
 msgstr ""
 
-#: cp/decl.cc:12553
+#: cp/decl.cc:13649
 #, gcc-internal-format
 msgid "%<decl-specifier%> in declaration of deduction guide"
 msgstr ""
 
-#: cp/decl.cc:12574
+#: cp/decl.cc:13670
 #, gcc-internal-format
 msgid "unnamed variable or field declared void"
 msgstr ""
 
-#: cp/decl.cc:12582
+#: cp/decl.cc:13678
 #, gcc-internal-format
 msgid "variable or field declared void"
 msgstr ""
 
-#: cp/decl.cc:12597
+#: cp/decl.cc:13693
 #, gcc-internal-format
 msgid "%<inline%> specifier invalid for variable %qD declared at block scope"
 msgstr ""
 
-#: cp/decl.cc:12602
+#: cp/decl.cc:13698
 #, gcc-internal-format
 msgid ""
 "inline variables are only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/decl.cc:12658
+#: cp/decl.cc:13719
+#, gcc-internal-format
+msgid ""
+"anonymous non-C-compatible type given name for linkage purposes by "
+"%<typedef%> declaration"
+msgstr ""
+
+#: cp/decl.cc:13735
+#, gcc-internal-format
+msgid "type is not C-compatible because it has a base class"
+msgstr ""
+
+#: cp/decl.cc:13750
+#, gcc-internal-format
+msgid "type is not C-compatible because %qD has default member initializer"
+msgstr ""
+
+#: cp/decl.cc:13780
+#, gcc-internal-format
+msgid "type is not C-compatible because it contains %qD declaration"
+msgstr ""
+
+#: cp/decl.cc:13841
 #, gcc-internal-format
 msgid "%qT as type rather than plain %<decltype(auto)%>"
 msgstr ""
 
-#: cp/decl.cc:12664
+#: cp/decl.cc:13847
 #, gcc-internal-format
 msgid "%<decltype(auto)%> cannot be cv-qualified"
 msgstr ""
 
-#: cp/decl.cc:12685
+#: cp/decl.cc:13868
 msgid "%e and %e specified together"
 msgstr ""
 
-#: cp/decl.cc:12897
+#: cp/decl.cc:14081
 #, gcc-internal-format
 msgid "invalid use of qualified-name %<::%D%>"
 msgstr ""
 
-#: cp/decl.cc:12900 cp/decl.cc:12922
+#: cp/decl.cc:14084 cp/decl.cc:14106
 #, gcc-internal-format
 msgid "invalid use of qualified-name %<%T::%D%>"
 msgstr ""
 
-#: cp/decl.cc:12903
+#: cp/decl.cc:14087
 #, gcc-internal-format
 msgid "invalid use of qualified-name %<%D::%D%>"
 msgstr ""
 
-#: cp/decl.cc:12913
+#: cp/decl.cc:14097
 #, gcc-internal-format
 msgid "%q#T is not a class or namespace"
 msgstr ""
 
-#: cp/decl.cc:12937
+#: cp/decl.cc:14121
 #, gcc-internal-format
 msgid "declaration of %qE as non-function"
 msgstr ""
 
-#: cp/decl.cc:12944
+#: cp/decl.cc:14128
 #, gcc-internal-format
 msgid "declaration of %qE as non-member"
 msgstr ""
 
-#: cp/decl.cc:12972
+#: cp/decl.cc:14156
 #, gcc-internal-format
 msgid "declarator-id missing; using reserved word %qD"
 msgstr ""
 
-#: cp/decl.cc:13023
+#: cp/decl.cc:14207
 #, gcc-internal-format
 msgid "function definition does not declare parameters"
 msgstr ""
 
-#: cp/decl.cc:13031 cp/decl.cc:13040 cp/decl.cc:15036
+#: cp/decl.cc:14215 cp/decl.cc:14224 cp/decl.cc:16206
 #, gcc-internal-format
 msgid "declaration of %qD as non-function"
 msgstr ""
 
-#: cp/decl.cc:13048
+#: cp/decl.cc:14232
 #, gcc-internal-format
 msgid "declaration of %qD as %<typedef%>"
 msgstr ""
 
-#: cp/decl.cc:13053
+#: cp/decl.cc:14237
 #, gcc-internal-format
 msgid "declaration of %qD as parameter"
 msgstr ""
 
-#: cp/decl.cc:13088
+#: cp/decl.cc:14272
 #, gcc-internal-format
 msgid "both %qs and %qs specified"
 msgstr ""
 
-#: cp/decl.cc:13095 cp/decl.cc:13102 cp/decl.cc:13109 cp/decl.cc:13116
+#: cp/decl.cc:14279 cp/decl.cc:14286 cp/decl.cc:14293 cp/decl.cc:14300
 #, gcc-internal-format
 msgid "%qs cannot appear in a typedef declaration"
 msgstr ""
 
-#: cp/decl.cc:13127
+#: cp/decl.cc:14311
 #, gcc-internal-format
 msgid "can use at most one of the %<constinit%> and %<constexpr%> specifiers"
 msgstr ""
 
-#: cp/decl.cc:13137
+#: cp/decl.cc:14321
 #, gcc-internal-format
 msgid "two or more data types in declaration of %qs"
 msgstr ""
 
-#: cp/decl.cc:13191
+#: cp/decl.cc:14375
 #, gcc-internal-format
 msgid "ISO C++ does not support plain %<complex%> meaning %<double complex%>"
 msgstr ""
 
-#: cp/decl.cc:13241 cp/decl.cc:13245 cp/decl.cc:13248
+#: cp/decl.cc:14425 cp/decl.cc:14429 cp/decl.cc:14432
 #, gcc-internal-format
 msgid "ISO C++ forbids declaration of %qs with no type"
 msgstr ""
 
-#: cp/decl.cc:13265
+#: cp/decl.cc:14449
 #, gcc-internal-format
 msgid "%<__int%d%> is not supported by this target"
 msgstr ""
 
-#: cp/decl.cc:13273
+#: cp/decl.cc:14457
 #, gcc-internal-format
 msgid "ISO C++ does not support %<__int%d%> for %qs"
 msgstr ""
 
-#: cp/decl.cc:13336
+#: cp/decl.cc:14520
 #, gcc-internal-format
 msgid "%qs specified with %qT"
 msgstr ""
 
-#: cp/decl.cc:13343
+#: cp/decl.cc:14527
 #, gcc-internal-format
 msgid "%qs specified with typedef-name %qD"
 msgstr ""
 
-#: cp/decl.cc:13352
+#: cp/decl.cc:14536
 #, gcc-internal-format
 msgid "%qs specified with %<decltype%>"
 msgstr ""
 
-#: cp/decl.cc:13354
+#: cp/decl.cc:14538
 #, gcc-internal-format
 msgid "%qs specified with %<typeof%>"
 msgstr ""
 
-#: cp/decl.cc:13423
+#: cp/decl.cc:14607
 #, gcc-internal-format
 msgid "complex invalid for %qs"
 msgstr ""
 
-#: cp/decl.cc:13467
+#: cp/decl.cc:14651
 #, gcc-internal-format
 msgid ""
 "missing template argument list after %qE; for deduction, template "
 "placeholder must be followed by a simple declarator-id"
 msgstr ""
 
-#: cp/decl.cc:13493
+#: cp/decl.cc:14677
 #, gcc-internal-format
 msgid "member %qD cannot be declared both %<virtual%> and %<static%>"
 msgstr ""
 
-#: cp/decl.cc:13502
+#: cp/decl.cc:14686
 #, gcc-internal-format
 msgid ""
 "member %qD can be declared both %<virtual%> and %<constexpr%> only in %<-"
 "std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/decl.cc:13515
+#: cp/decl.cc:14699
 #, gcc-internal-format
 msgid "typedef declaration invalid in parameter declaration"
 msgstr ""
 
-#: cp/decl.cc:13522
+#: cp/decl.cc:14706
 #, gcc-internal-format
 msgid "storage class specified for template parameter %qs"
 msgstr ""
 
-#: cp/decl.cc:13532 cp/decl.cc:13709
+#: cp/decl.cc:14716 cp/decl.cc:14896
 #, gcc-internal-format
 msgid "storage class specified for parameter %qs"
 msgstr ""
 
-#: cp/decl.cc:13540 cp/decl.cc:13549 cp/decl.cc:13555 cp/decl.cc:13561
+#: cp/decl.cc:14724 cp/decl.cc:14733 cp/decl.cc:14739 cp/decl.cc:14745
 #, gcc-internal-format
 msgid "a parameter cannot be declared %qs"
 msgstr ""
 
-#: cp/decl.cc:13571
+#: cp/decl.cc:14755
 #, gcc-internal-format
 msgid "%<virtual%> outside class declaration"
 msgstr ""
 
-#: cp/decl.cc:13581 cp/decl.cc:13584 cp/decl.cc:13586 cp/decl.cc:13589
-#: cp/decl.cc:13599 cp/decl.cc:13609 cp/decl.cc:13619 cp/decl.cc:13623
+#: cp/decl.cc:14765 cp/decl.cc:14768 cp/decl.cc:14774 cp/decl.cc:14785
+#: cp/decl.cc:14797 cp/decl.cc:14807 cp/decl.cc:14811
 #, gcc-internal-format
 msgid "structured binding declaration cannot be %qs"
 msgstr ""
 
-#: cp/decl.cc:13593 cp/decl.cc:13615
+#: cp/decl.cc:14771
+#, gcc-internal-format
+msgid ""
+"structured binding declaration can be %qs only with %<-std=c++2c%> or %<-"
+"std=gnu++2c%>"
+msgstr ""
+
+#: cp/decl.cc:14778 cp/decl.cc:14803
 #, gcc-internal-format
 msgid ""
 "structured binding declaration can be %qs only in %<-std=c++20%> or %<-"
 "std=gnu++20%>"
 msgstr ""
 
-#: cp/decl.cc:13603
+#: cp/decl.cc:14791
 #, gcc-internal-format
 msgid "%<volatile%>-qualified structured binding is deprecated"
 msgstr ""
 
-#: cp/decl.cc:13627
+#: cp/decl.cc:14815
 #, gcc-internal-format
 msgid "structured binding declaration cannot be C++98 %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:13639
+#: cp/decl.cc:14827
 #, gcc-internal-format
 msgid "structured binding declaration cannot have type %qT"
 msgstr ""
 
-#: cp/decl.cc:13642
+#: cp/decl.cc:14830
 #, gcc-internal-format
 msgid ""
 "type must be cv-qualified %<auto%> or reference to cv-qualified %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:13650
+#: cp/decl.cc:14838
 #, gcc-internal-format
 msgid ""
 "structured binding declaration cannot have constrained %<auto%> type %qT"
 msgstr ""
 
-#: cp/decl.cc:13681
+#: cp/decl.cc:14868
 #, gcc-internal-format
 msgid "multiple storage classes in declaration of %qs"
 msgstr ""
 
-#: cp/decl.cc:13707
+#: cp/decl.cc:14894
 #, gcc-internal-format
 msgid "storage class specified for %qs"
 msgstr ""
 
-#: cp/decl.cc:13721
+#: cp/decl.cc:14908
 #, gcc-internal-format
 msgid "nested function %qs declared %<extern%>"
 msgstr ""
 
-#: cp/decl.cc:13726
+#: cp/decl.cc:14913
 #, gcc-internal-format
 msgid "top-level declaration of %qs specifies %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:13734
+#: cp/decl.cc:14921
 #, gcc-internal-format
 msgid "function-scope %qs implicitly auto and declared %<__thread%>"
 msgstr ""
 
-#: cp/decl.cc:13748
+#: cp/decl.cc:14935
 #, gcc-internal-format
 msgid "storage class specifiers invalid in friend function declarations"
 msgstr ""
 
-#: cp/decl.cc:13854
+#: cp/decl.cc:15031
 #, gcc-internal-format
 msgid "unnecessary parentheses in declaration of %qs"
 msgstr ""
 
-#: cp/decl.cc:13860
+#: cp/decl.cc:15037
 #, gcc-internal-format
 msgid "remove parentheses"
 msgstr ""
 
-#: cp/decl.cc:13927
+#: cp/decl.cc:15104
 #, gcc-internal-format
 msgid ""
 "explicit object member function only available with %<-std=c++23%> or %<-"
 "std=gnu++23%>"
 msgstr ""
 
-#: cp/decl.cc:13941
+#: cp/decl.cc:15118
 #, gcc-internal-format
 msgid "a function type cannot have an explicit object parameter"
 msgstr ""
 
-#: cp/decl.cc:13947
+#: cp/decl.cc:15124
 #, gcc-internal-format
 msgid "a pointer to function type cannot have an explicit object parameter"
 msgstr ""
 
-#: cp/decl.cc:13951
+#: cp/decl.cc:15128
 #, gcc-internal-format
 msgid ""
 "a pointer to member function type cannot have an explicit object parameter"
 msgstr ""
 
-#: cp/decl.cc:13959
+#: cp/decl.cc:15136
 #, gcc-internal-format
 msgid ""
 "the type of a pointer to explicit object member function is a regular "
 "pointer to function type"
 msgstr ""
 
-#: cp/decl.cc:13963
+#: cp/decl.cc:15140
 #, gcc-internal-format
 msgid ""
 "the type of an explicit object member function is a regular function type"
 msgstr ""
 
-#: cp/decl.cc:13984
+#: cp/decl.cc:15161
 #, gcc-internal-format
 msgid ""
 "only the first parameter of a member function can be declared as an explicit "
 "object parameter"
 msgstr ""
 
-#: cp/decl.cc:13989
+#: cp/decl.cc:15166
 #, gcc-internal-format
 msgid "valid explicit object parameter declared here"
 msgstr ""
 
-#: cp/decl.cc:13993
+#: cp/decl.cc:15170
 #, gcc-internal-format
 msgid "requires-clause on return type"
 msgstr ""
 
-#: cp/decl.cc:14014
+#: cp/decl.cc:15191
 #, gcc-internal-format
 msgid "%qs function uses %<auto%> type specifier without trailing return type"
 msgstr ""
 
-#: cp/decl.cc:14018
+#: cp/decl.cc:15195
 #, gcc-internal-format
 msgid ""
 "deduced return type only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/decl.cc:14023
+#: cp/decl.cc:15200
 #, gcc-internal-format
 msgid "virtual function cannot have deduced return type"
 msgstr ""
 
-#: cp/decl.cc:14030
+#: cp/decl.cc:15207
 #, gcc-internal-format
 msgid ""
 "%qs function with trailing return type has %qT as its type rather than plain "
 "%<auto%>"
 msgstr ""
 
-#: cp/decl.cc:14039
+#: cp/decl.cc:15216
 #, gcc-internal-format
 msgid ""
 "%qs function with trailing return type has %<decltype(auto)%> as its type "
 "rather than plain %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:14044
+#: cp/decl.cc:15221
 #, gcc-internal-format
 msgid "invalid use of %<decltype(auto)%>"
 msgstr ""
 
-#: cp/decl.cc:14051
+#: cp/decl.cc:15228
 #, gcc-internal-format
 msgid ""
 "%qs function with trailing return type has constrained %<auto%> type "
 "specifier rather than plain %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:14057
+#: cp/decl.cc:15234
 #, gcc-internal-format
 msgid "invalid use of constrained %<auto%> type"
 msgstr ""
 
-#: cp/decl.cc:14069
+#: cp/decl.cc:15246
 #, gcc-internal-format
 msgid "deduced class type %qD in function return type"
 msgstr ""
 
-#: cp/decl.cc:14079
+#: cp/decl.cc:15256
 #, gcc-internal-format
 msgid "deduction guide for %qT must have trailing return type"
 msgstr ""
 
-#: cp/decl.cc:14092
+#: cp/decl.cc:15269
 #, gcc-internal-format
 msgid ""
 "trailing return type %qT of deduction guide is not a specialization of %qT"
 msgstr ""
 
-#: cp/decl.cc:14106
+#: cp/decl.cc:15283
 #, gcc-internal-format
 msgid ""
 "trailing return type only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/decl.cc:14109
+#: cp/decl.cc:15286
 #, gcc-internal-format
 msgid ""
 "%qs function with trailing return type not declared with %<auto%> type "
 "specifier"
 msgstr ""
 
-#: cp/decl.cc:14116
+#: cp/decl.cc:15293
 #, gcc-internal-format
 msgid "a conversion function cannot have a trailing return type"
 msgstr ""
 
-#: cp/decl.cc:14142
+#: cp/decl.cc:15319
 #, gcc-internal-format
 msgid "%<volatile%>-qualified return type is deprecated"
 msgstr ""
 
-#: cp/decl.cc:14154
+#: cp/decl.cc:15331
 #, gcc-internal-format
 msgid "%qs declared as function returning a function"
 msgstr ""
 
-#: cp/decl.cc:14160
+#: cp/decl.cc:15337
 #, gcc-internal-format
 msgid "%qs declared as function returning an array"
 msgstr ""
 
-#: cp/decl.cc:14167
+#: cp/decl.cc:15344
 #, gcc-internal-format
 msgid "%<constinit%> on function return type is not allowed"
 msgstr ""
 
-#: cp/decl.cc:14200
+#: cp/decl.cc:15377
 #, gcc-internal-format
 msgid "destructor cannot be static member function"
 msgstr ""
 
-#: cp/decl.cc:14202
+#: cp/decl.cc:15379
 #, gcc-internal-format
 msgid "constructor cannot be static member function"
 msgstr ""
 
-#: cp/decl.cc:14207
+#: cp/decl.cc:15384
 #, gcc-internal-format
 msgid "destructors may not be cv-qualified"
 msgstr ""
 
-#: cp/decl.cc:14208
+#: cp/decl.cc:15385
 #, gcc-internal-format
 msgid "constructors may not be cv-qualified"
 msgstr ""
 
-#: cp/decl.cc:14216
+#: cp/decl.cc:15393
 #, gcc-internal-format
 msgid "destructors may not be ref-qualified"
 msgstr ""
 
-#: cp/decl.cc:14217
+#: cp/decl.cc:15394
 #, gcc-internal-format
 msgid "constructors may not be ref-qualified"
 msgstr ""
 
-#: cp/decl.cc:14235
+#: cp/decl.cc:15412
 #, gcc-internal-format
 msgid "constructors cannot be declared %<virtual%>"
 msgstr ""
 
-#: cp/decl.cc:14252
+#: cp/decl.cc:15429
 #, gcc-internal-format
 msgid "virtual functions cannot be friends"
 msgstr ""
 
-#: cp/decl.cc:14257
+#: cp/decl.cc:15434
 #, gcc-internal-format
 msgid "friend declaration not in class definition"
 msgstr ""
 
-#: cp/decl.cc:14261
+#: cp/decl.cc:15438
 #, gcc-internal-format
 msgid "cannot define friend function %qs in a local class definition"
 msgstr ""
 
-#: cp/decl.cc:14271
+#: cp/decl.cc:15448
 #, gcc-internal-format
 msgid "friend function definition %qs cannot have a name qualified with %<::%>"
 msgstr ""
 
-#: cp/decl.cc:14275
+#: cp/decl.cc:15452
 #, gcc-internal-format
 msgid ""
 "friend function definition %qs cannot have a name qualified with %<%D::%>"
 msgstr ""
 
-#: cp/decl.cc:14301
+#: cp/decl.cc:15478
 #, gcc-internal-format
 msgid "a non-member function cannot have an explicit object parameter"
 msgstr ""
 
-#: cp/decl.cc:14309
+#: cp/decl.cc:15486
 #, gcc-internal-format
 msgid "an explicit object member function cannot be %<virtual%>"
 msgstr ""
 
-#: cp/decl.cc:14319
+#: cp/decl.cc:15496
 #, gcc-internal-format
 msgid "an explicit object member function cannot be %<static%>"
 msgstr ""
 
-#: cp/decl.cc:14328
+#: cp/decl.cc:15505
 #, gcc-internal-format
 msgid "%qD cannot be an explicit object member function"
 msgstr ""
 
-#: cp/decl.cc:14351
+#: cp/decl.cc:15528
 #, gcc-internal-format
 msgid "destructors may not have parameters"
 msgstr ""
 
-#: cp/decl.cc:14409
+#: cp/decl.cc:15576
 #, gcc-internal-format
 msgid "cannot declare pointer to %q#T"
 msgstr ""
 
-#: cp/decl.cc:14422 cp/decl.cc:14429
+#: cp/decl.cc:15589 cp/decl.cc:15596
 #, gcc-internal-format
 msgid "cannot declare reference to %q#T"
 msgstr ""
 
-#: cp/decl.cc:14431
+#: cp/decl.cc:15598
 #, gcc-internal-format
 msgid "cannot declare pointer to %q#T member"
 msgstr ""
 
-#: cp/decl.cc:14460
+#: cp/decl.cc:15627
 #, gcc-internal-format
 msgid "cannot declare reference to qualified function type %qT"
 msgstr ""
 
-#: cp/decl.cc:14461
+#: cp/decl.cc:15628
 #, gcc-internal-format
 msgid "cannot declare pointer to qualified function type %qT"
 msgstr ""
 
-#: cp/decl.cc:14534
+#: cp/decl.cc:15701
 #, gcc-internal-format
 msgid ""
 "cannot declare reference to %q#T, which is not a typedef or a template type "
 "argument"
 msgstr ""
 
-#: cp/decl.cc:14613
+#: cp/decl.cc:15780
 #, gcc-internal-format
 msgid "template-id %qD used as a declarator"
 msgstr ""
 
-#: cp/decl.cc:14639
+#: cp/decl.cc:15806
 #, gcc-internal-format
 msgid "member functions are implicitly friends of their class"
 msgstr ""
 
-#: cp/decl.cc:14644
+#: cp/decl.cc:15811
 #, gcc-internal-format
 msgid "extra qualification %<%T::%> on member %qs"
 msgstr ""
 
-#: cp/decl.cc:14674
+#: cp/decl.cc:15841
 #, gcc-internal-format
 msgid "cannot define member function %<%T::%s%> within %qT"
 msgstr ""
 
-#: cp/decl.cc:14676
+#: cp/decl.cc:15843
 #, gcc-internal-format
 msgid "cannot declare member function %<%T::%s%> within %qT"
 msgstr ""
 
-#: cp/decl.cc:14684
+#: cp/decl.cc:15851
 #, gcc-internal-format
 msgid "cannot declare member %<%T::%s%> within %qT"
 msgstr ""
 
-#: cp/decl.cc:14724
+#: cp/decl.cc:15891
 #, gcc-internal-format
 msgid "non-parameter %qs cannot be a parameter pack"
 msgstr ""
 
-#: cp/decl.cc:14733
+#: cp/decl.cc:15900
 #, gcc-internal-format
 msgid "data member may not have variably modified type %qT"
 msgstr ""
 
-#: cp/decl.cc:14736
+#: cp/decl.cc:15903
 #, gcc-internal-format
 msgid "parameter may not have variably modified type %qT"
 msgstr ""
 
-#: cp/decl.cc:14747
+#: cp/decl.cc:15914
 #, gcc-internal-format
 msgid "%<explicit%> outside class declaration"
 msgstr ""
 
-#: cp/decl.cc:14750
+#: cp/decl.cc:15917
 #, gcc-internal-format
 msgid "%<explicit%> in friend declaration"
 msgstr ""
 
-#: cp/decl.cc:14753
+#: cp/decl.cc:15920
 #, gcc-internal-format
 msgid ""
 "only declarations of constructors and conversion operators can be "
 "%<explicit%>"
 msgstr ""
 
-#: cp/decl.cc:14763
+#: cp/decl.cc:15930
 #, gcc-internal-format
 msgid "non-member %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.cc:14770
+#: cp/decl.cc:15937
 #, gcc-internal-format
 msgid "non-object member %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.cc:14776
+#: cp/decl.cc:15943
 #, gcc-internal-format
 msgid "function %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.cc:14782
+#: cp/decl.cc:15949
 #, gcc-internal-format
 msgid "%<static%> %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.cc:14788
+#: cp/decl.cc:15955
 #, gcc-internal-format
 msgid "%<const%> %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.cc:14794
+#: cp/decl.cc:15961
 #, gcc-internal-format
 msgid "reference %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.cc:14810
+#: cp/decl.cc:15977
 #, gcc-internal-format
 msgid "typedef may not be a function definition"
 msgstr ""
 
-#: cp/decl.cc:14813
+#: cp/decl.cc:15980
 #, gcc-internal-format
 msgid "typedef may not be a member function definition"
 msgstr ""
 
-#: cp/decl.cc:14839
+#: cp/decl.cc:16006
 #, gcc-internal-format
 msgid "%<auto%> not allowed in alias declaration"
 msgstr ""
 
-#: cp/decl.cc:14842
+#: cp/decl.cc:16009
 #, gcc-internal-format
 msgid "typedef declared %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:14847
+#: cp/decl.cc:16014
 #, gcc-internal-format
 msgid "requires-clause on typedef"
 msgstr ""
 
-#: cp/decl.cc:14851
+#: cp/decl.cc:16018
 #, gcc-internal-format
 msgid "typedef name may not be a nested-name-specifier"
 msgstr ""
 
-#: cp/decl.cc:14877
+#: cp/decl.cc:16044
 #, gcc-internal-format
 msgid "ISO C++ forbids nested type %qD with same name as enclosing class"
 msgstr ""
 
-#: cp/decl.cc:14966
+#: cp/decl.cc:16136
 #, gcc-internal-format
 msgid "%<inline%> specified for friend class declaration"
 msgstr ""
 
-#: cp/decl.cc:14974
+#: cp/decl.cc:16144
 #, gcc-internal-format
 msgid "template parameters cannot be friends"
 msgstr ""
 
-#: cp/decl.cc:14976
+#: cp/decl.cc:16146
 #, gcc-internal-format
 msgid "friend declaration requires class-key, i.e. %<friend class %T::%D%>"
 msgstr ""
 
-#: cp/decl.cc:14980
+#: cp/decl.cc:16150
 #, gcc-internal-format
 msgid "friend declaration requires class-key, i.e. %<friend %#T%>"
 msgstr ""
 
-#: cp/decl.cc:14993
+#: cp/decl.cc:16163
 #, gcc-internal-format
 msgid "trying to make class %qT a friend of global scope"
 msgstr ""
 
-#: cp/decl.cc:15013
+#: cp/decl.cc:16183
 #, gcc-internal-format
 msgid "invalid qualifiers on non-member function type"
 msgstr ""
 
-#: cp/decl.cc:15017
+#: cp/decl.cc:16187
 #, gcc-internal-format
 msgid "requires-clause on type-id"
 msgstr ""
 
-#: cp/decl.cc:15027
+#: cp/decl.cc:16197
 #, gcc-internal-format
 msgid "abstract declarator %qT used as declaration"
 msgstr ""
 
-#: cp/decl.cc:15042
+#: cp/decl.cc:16212
 #, gcc-internal-format
 msgid "requires-clause on declaration of non-function type %qT"
 msgstr ""
 
-#: cp/decl.cc:15061
+#: cp/decl.cc:16231
 #, gcc-internal-format
 msgid "cannot use %<::%> in parameter declaration"
 msgstr ""
 
-#: cp/decl.cc:15071 cp/parser.cc:21410
+#: cp/decl.cc:16241 cp/parser.cc:23112
 #, gcc-internal-format
 msgid "cannot declare a parameter with %<decltype(auto)%>"
 msgstr ""
 
-#: cp/decl.cc:15078
+#: cp/decl.cc:16248
 #, gcc-internal-format
 msgid ""
 "missing template argument list after %qE; template placeholder not permitted "
 "in parameter"
 msgstr ""
 
-#: cp/decl.cc:15081
+#: cp/decl.cc:16251
 #, gcc-internal-format
 msgid "or use %<auto%> for an abbreviated function template"
 msgstr ""
 
-#: cp/decl.cc:15087 cp/parser.cc:26076
+#: cp/decl.cc:16257 cp/parser.cc:28188
 #, gcc-internal-format
 msgid "%<auto%> parameter not permitted in this context"
 msgstr ""
 
-#: cp/decl.cc:15097
+#: cp/decl.cc:16267
 #, gcc-internal-format
 msgid "parameter declared %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:15151 cp/parser.cc:3855
+#: cp/decl.cc:16321 cp/parser.cc:3932
 #, gcc-internal-format
 msgid "invalid use of template-name %qE without an argument list"
 msgstr ""
 
-#: cp/decl.cc:15155
+#: cp/decl.cc:16325
 #, gcc-internal-format
 msgid "non-static data member declared with placeholder %qT"
 msgstr ""
 
-#: cp/decl.cc:15175
+#: cp/decl.cc:16345
 #, gcc-internal-format
 msgid "ISO C++ forbids flexible array member %qs"
 msgstr ""
 
-#: cp/decl.cc:15178
+#: cp/decl.cc:16348
 #, gcc-internal-format
 msgid "ISO C++ forbids flexible array members"
 msgstr ""
 
 #. Something like struct S { int N::j; };
-#: cp/decl.cc:15194
+#: cp/decl.cc:16364
 #, gcc-internal-format
 msgid "invalid use of %<::%>"
 msgstr ""
 
-#: cp/decl.cc:15215
+#: cp/decl.cc:16385
 #, gcc-internal-format
 msgid "declaration of function %qD in invalid context"
 msgstr ""
 
-#: cp/decl.cc:15225
+#: cp/decl.cc:16395
 #, gcc-internal-format
 msgid "function %qD declared %<virtual%> inside a union"
 msgstr ""
 
-#: cp/decl.cc:15235
+#: cp/decl.cc:16405
 #, gcc-internal-format
 msgid "%qD cannot be declared %<virtual%>, since it is always static"
 msgstr ""
 
-#: cp/decl.cc:15249
+#: cp/decl.cc:16419
 #, gcc-internal-format
 msgid "expected qualified name in friend declaration for destructor %qD"
 msgstr ""
 
-#: cp/decl.cc:15256
+#: cp/decl.cc:16426
 #, gcc-internal-format
 msgid "declaration of %qD as member of %qT"
 msgstr ""
 
-#: cp/decl.cc:15263 cp/decl.cc:15276
+#: cp/decl.cc:16433 cp/decl.cc:16446
 #, gcc-internal-format
 msgid "a destructor cannot be %qs"
 msgstr ""
 
-#: cp/decl.cc:15282
+#: cp/decl.cc:16452
 #, gcc-internal-format
 msgid "expected qualified name in friend declaration for constructor %qD"
 msgstr ""
 
-#: cp/decl.cc:15291
+#: cp/decl.cc:16461
 #, gcc-internal-format
 msgid "a constructor cannot be %<concept%>"
 msgstr ""
 
-#: cp/decl.cc:15297
+#: cp/decl.cc:16467
 #, gcc-internal-format
 msgid "a concept cannot be a member function"
 msgstr ""
 
-#: cp/decl.cc:15305 cp/decl.cc:15664
+#: cp/decl.cc:16475 cp/decl.cc:16833
 #, gcc-internal-format
 msgid "%qD cannot be %qs"
 msgstr ""
 
-#: cp/decl.cc:15315
+#: cp/decl.cc:16485
 #, gcc-internal-format
 msgid "specialization of variable template %qD declared as function"
 msgstr ""
 
-#: cp/decl.cc:15318
+#: cp/decl.cc:16488
 #, gcc-internal-format
 msgid "variable template declared here"
 msgstr ""
 
-#: cp/decl.cc:15383
+#: cp/decl.cc:16553
 #, gcc-internal-format
 msgid "field %qD has incomplete type %qT"
 msgstr ""
 
-#: cp/decl.cc:15388
+#: cp/decl.cc:16558
 #, gcc-internal-format
 msgid "name %qT has incomplete type"
 msgstr ""
 
-#: cp/decl.cc:15408
+#: cp/decl.cc:16578
 #, gcc-internal-format
 msgid "%qE is neither function nor member function; cannot be declared friend"
 msgstr ""
 
-#: cp/decl.cc:15411
+#: cp/decl.cc:16581
 #, gcc-internal-format
 msgid ""
 "unnamed field is neither function nor member function; cannot be declared "
 "friend"
 msgstr ""
 
-#: cp/decl.cc:15430 cp/parser.cc:21976 cp/parser.cc:28868
+#: cp/decl.cc:16599 cp/parser.cc:23682 cp/parser.cc:31059
 #, gcc-internal-format
 msgid ""
 "an attribute that appertains to a friend declaration that is not a "
 "definition is ignored"
 msgstr ""
 
-#: cp/decl.cc:15480 cp/decl.cc:15491
+#: cp/decl.cc:16649 cp/decl.cc:16660
 #, gcc-internal-format
 msgid "static data member %qE declared %qs"
 msgstr ""
 
-#: cp/decl.cc:15485
+#: cp/decl.cc:16654
 #, gcc-internal-format
 msgid "%<constexpr%> static data member %qD must have an initializer"
 msgstr ""
 
-#: cp/decl.cc:15528 cp/decl.cc:15536 cp/decl.cc:15543 cp/decl.cc:15550
+#: cp/decl.cc:16697 cp/decl.cc:16705 cp/decl.cc:16712 cp/decl.cc:16719
 #, gcc-internal-format
 msgid "non-static data member %qE declared %qs"
 msgstr ""
 
-#: cp/decl.cc:15602
+#: cp/decl.cc:16771
 #, gcc-internal-format
 msgid "storage class %<auto%> invalid for function %qs"
 msgstr ""
 
-#: cp/decl.cc:15605
+#: cp/decl.cc:16774
 #, gcc-internal-format
 msgid "storage class %<register%> invalid for function %qs"
 msgstr ""
 
-#: cp/decl.cc:15611
+#: cp/decl.cc:16780
 #, gcc-internal-format
 msgid "storage class %<__thread%> invalid for function %qs"
 msgstr ""
 
-#: cp/decl.cc:15615
+#: cp/decl.cc:16784
 #, gcc-internal-format
 msgid "storage class %<thread_local%> invalid for function %qs"
 msgstr ""
 
-#: cp/decl.cc:15620
+#: cp/decl.cc:16789
 #, gcc-internal-format
 msgid "%<constinit%> specifier invalid for function %qs"
 msgstr ""
 
-#: cp/decl.cc:15623
+#: cp/decl.cc:16792
 #, gcc-internal-format
 msgid "virt-specifiers in %qs not allowed outside a class definition"
 msgstr ""
 
-#: cp/decl.cc:15635
+#: cp/decl.cc:16804
 #, gcc-internal-format
 msgid ""
 "%<static%> specifier invalid for function %qs declared out of global scope"
 msgstr ""
 
-#: cp/decl.cc:15639
+#: cp/decl.cc:16808
 #, gcc-internal-format
 msgid ""
 "%<inline%> specifier invalid for function %qs declared out of global scope"
 msgstr ""
 
-#: cp/decl.cc:15647
+#: cp/decl.cc:16816
 #, gcc-internal-format
 msgid "virtual non-class function %qs"
 msgstr ""
 
-#: cp/decl.cc:15654
+#: cp/decl.cc:16823
 #, gcc-internal-format
 msgid "%qs defined in a non-class scope"
 msgstr ""
 
-#: cp/decl.cc:15655
+#: cp/decl.cc:16824
 #, gcc-internal-format
 msgid "%qs declared in a non-class scope"
 msgstr ""
 
-#: cp/decl.cc:15698
+#: cp/decl.cc:16866
 #, gcc-internal-format
 msgid "cannot declare member function %qD to have static linkage"
 msgstr ""
 
-#: cp/decl.cc:15707
+#: cp/decl.cc:16875
 #, gcc-internal-format
 msgid "cannot declare static function inside another function"
 msgstr ""
 
-#: cp/decl.cc:15748
+#: cp/decl.cc:16916
 #, gcc-internal-format
 msgid ""
 "%<static%> may not be used when defining (as opposed to declaring) a static "
 "data member"
 msgstr ""
 
-#: cp/decl.cc:15755
+#: cp/decl.cc:16923
 #, gcc-internal-format
 msgid "static member %qD declared %<register%>"
 msgstr ""
 
-#: cp/decl.cc:15761
+#: cp/decl.cc:16929
 #, gcc-internal-format
 msgid "cannot explicitly declare member %q#D to have extern linkage"
 msgstr ""
 
-#: cp/decl.cc:15769
+#: cp/decl.cc:16937
 #, gcc-internal-format
 msgid "declaration of %<constexpr%> variable %qD is not a definition"
 msgstr ""
 
-#: cp/decl.cc:15776
+#: cp/decl.cc:16944
 #, gcc-internal-format
 msgid "a variable cannot be declared %<consteval%>"
 msgstr ""
 
-#: cp/decl.cc:15808
+#: cp/decl.cc:16976
 #, gcc-internal-format
 msgid "%qs initialized and declared %<extern%>"
 msgstr ""
 
-#: cp/decl.cc:15813
+#: cp/decl.cc:16981
 #, gcc-internal-format
 msgid "%qs has both %<extern%> and initializer"
 msgstr ""
 
-#: cp/decl.cc:16015
+#: cp/decl.cc:17183
 #, gcc-internal-format
 msgid "default argument %qE uses %qD"
 msgstr ""
 
-#: cp/decl.cc:16018
+#: cp/decl.cc:17186
 #, gcc-internal-format
 msgid "default argument %qE uses local variable %qD"
 msgstr ""
 
-#: cp/decl.cc:16145
+#: cp/decl.cc:17313
 #, gcc-internal-format
 msgid "invalid use of cv-qualified type %qT in parameter declaration"
 msgstr ""
 
-#: cp/decl.cc:16149
+#: cp/decl.cc:17317
 #, gcc-internal-format
 msgid "invalid use of type %<void%> in parameter declaration"
 msgstr ""
 
-#: cp/decl.cc:16178
+#: cp/decl.cc:17346
 #, gcc-internal-format
 msgid "%<volatile%>-qualified parameter is deprecated"
 msgstr ""
 
-#: cp/decl.cc:16186
+#: cp/decl.cc:17354
 #, gcc-internal-format
 msgid "parameter %qD invalidly declared method type"
 msgstr ""
 
-#: cp/decl.cc:16211
+#: cp/decl.cc:17379
 #, gcc-internal-format
 msgid "parameter %qD includes pointer to array of unknown bound %qT"
 msgstr ""
 
-#: cp/decl.cc:16213
+#: cp/decl.cc:17381
 #, gcc-internal-format
 msgid "parameter %qD includes reference to array of unknown bound %qT"
 msgstr ""
 
-#: cp/decl.cc:16496
+#: cp/decl.cc:17664
 #, gcc-internal-format
 msgid "invalid constructor; you probably meant %<%T (const %T&)%>"
 msgstr ""
 
-#: cp/decl.cc:16575
+#: cp/decl.cc:17743
 #, gcc-internal-format
 msgid "%qD may not be declared within a namespace"
 msgstr ""
 
-#: cp/decl.cc:16582
+#: cp/decl.cc:17750
 #, gcc-internal-format
 msgid "%qD may not be declared as static"
 msgstr ""
 
-#: cp/decl.cc:16640
+#: cp/decl.cc:17808
 #, gcc-internal-format
 msgid "%qD must be a non-static member function"
 msgstr ""
 
-#: cp/decl.cc:16648
+#: cp/decl.cc:17816
 #, gcc-internal-format
 msgid "%qD must be a member function"
 msgstr ""
 
-#: cp/decl.cc:16656
+#: cp/decl.cc:17824
 #, gcc-internal-format
 msgid ""
 "%qD may be a static member function only with %<-std=c++23%> or %<-std=gnu+"
 "+23%>"
 msgstr ""
 
-#: cp/decl.cc:16666
+#: cp/decl.cc:17834
 #, gcc-internal-format
 msgid ""
 "%qD must be either a non-static member function or a non-member function"
 msgstr ""
 
-#: cp/decl.cc:16676
+#: cp/decl.cc:17844
 #, gcc-internal-format
 msgid "%qD must have an argument of class or enumerated type"
 msgstr ""
 
 #. 13.4.0.3
-#: cp/decl.cc:16707
+#: cp/decl.cc:17875
 #, gcc-internal-format
 msgid "ISO C++ prohibits overloading %<operator ?:%>"
 msgstr ""
 
-#: cp/decl.cc:16717
+#: cp/decl.cc:17885
 #, gcc-internal-format
 msgid "%qD must not have variable number of arguments"
 msgstr ""
 
-#: cp/decl.cc:16743
+#: cp/decl.cc:17911
 #, gcc-internal-format
 msgid "%qD must have either zero or one argument"
 msgstr ""
 
-#: cp/decl.cc:16744
+#: cp/decl.cc:17912
 #, gcc-internal-format
 msgid "%qD must have either one or two arguments"
 msgstr ""
 
-#: cp/decl.cc:16756
+#: cp/decl.cc:17924
 #, gcc-internal-format
 msgid "postfix %qD must have %<int%> as its argument"
 msgstr ""
 
-#: cp/decl.cc:16757
+#: cp/decl.cc:17925
 #, gcc-internal-format
 msgid "postfix %qD must have %<int%> as its second argument"
 msgstr ""
 
-#: cp/decl.cc:16768
+#: cp/decl.cc:17936
 #, gcc-internal-format
 msgid "%qD must have no arguments"
 msgstr ""
 
-#: cp/decl.cc:16769 cp/decl.cc:16779
+#: cp/decl.cc:17937 cp/decl.cc:17947
 #, gcc-internal-format
 msgid "%qD must have exactly one argument"
 msgstr ""
 
-#: cp/decl.cc:16780
+#: cp/decl.cc:17948
 #, gcc-internal-format
 msgid "%qD must have exactly two arguments"
 msgstr ""
 
-#: cp/decl.cc:16795
+#: cp/decl.cc:17963
 #, gcc-internal-format
 msgid "%qD cannot have default arguments"
 msgstr ""
 
-#: cp/decl.cc:16819
+#: cp/decl.cc:17987
 #, gcc-internal-format
 msgid "converting %qT to %<void%> will never use a type conversion operator"
 msgstr ""
 
-#: cp/decl.cc:16826
+#: cp/decl.cc:17994
 #, gcc-internal-format
 msgid ""
 "converting %qT to a reference to the same type will never use a type "
 "conversion operator"
 msgstr ""
 
-#: cp/decl.cc:16828
+#: cp/decl.cc:17996
 #, gcc-internal-format
 msgid ""
 "converting %qT to the same type will never use a type conversion operator"
 msgstr ""
 
-#: cp/decl.cc:16837
+#: cp/decl.cc:18005
 #, gcc-internal-format
 msgid ""
 "converting %qT to a reference to a base class %qT will never use a type "
 "conversion operator"
 msgstr ""
 
-#: cp/decl.cc:16839
+#: cp/decl.cc:18007
 #, gcc-internal-format
 msgid ""
 "converting %qT to a base class %qT will never use a type conversion operator"
 msgstr ""
 
-#: cp/decl.cc:16855
+#: cp/decl.cc:18023
 #, gcc-internal-format
 msgid "user-defined %qD always evaluates both arguments"
 msgstr ""
 
-#: cp/decl.cc:16874
+#: cp/decl.cc:18042
 #, gcc-internal-format
 msgid "prefix %qD should return %qT"
 msgstr ""
 
-#: cp/decl.cc:16881
+#: cp/decl.cc:18049
 #, gcc-internal-format
 msgid "postfix %qD should return %qT"
 msgstr ""
 
-#: cp/decl.cc:16893
+#: cp/decl.cc:18061
 #, gcc-internal-format
 msgid "%qD should return by value"
 msgstr ""
 
-#: cp/decl.cc:16948
+#: cp/decl.cc:18118
 #, gcc-internal-format
 msgid "using template type parameter %qT after %qs"
 msgstr ""
 
-#: cp/decl.cc:16972
+#: cp/decl.cc:18142
 #, gcc-internal-format
 msgid "using alias template specialization %qT after %qs"
 msgstr ""
 
-#: cp/decl.cc:16975
+#: cp/decl.cc:18145
 #, gcc-internal-format
 msgid "using typedef-name %qD after %qs"
 msgstr ""
 
-#: cp/decl.cc:16977
+#: cp/decl.cc:18147
 #, gcc-internal-format
 msgid "%qD has a previous declaration here"
 msgstr ""
 
-#: cp/decl.cc:16986
+#: cp/decl.cc:18156
 #, gcc-internal-format
 msgid "%qT referred to as %qs"
 msgstr ""
 
-#: cp/decl.cc:16987 cp/decl.cc:16995
+#: cp/decl.cc:18157 cp/decl.cc:18165
 #, gcc-internal-format
 msgid "%qT has a previous declaration here"
 msgstr ""
 
-#: cp/decl.cc:16994
+#: cp/decl.cc:18164
 #, gcc-internal-format
 msgid "%qT referred to as enum"
 msgstr ""
@@ -62598,100 +65316,100 @@ msgstr ""
 #. void f(class C);            // No template header here
 #.
 #. then the required template argument is missing.
-#: cp/decl.cc:17009
+#: cp/decl.cc:18179
 #, gcc-internal-format
 msgid "template argument required for %<%s %T%>"
 msgstr ""
 
-#: cp/decl.cc:17052 cp/name-lookup.cc:6235 cp/name-lookup.cc:6368
-#: cp/parser.cc:7477 cp/parser.cc:33034
+#: cp/decl.cc:18222 cp/name-lookup.cc:6364 cp/name-lookup.cc:6498
+#: cp/parser.cc:8120 cp/parser.cc:35476
 #, gcc-internal-format
 msgid "reference to %qD is ambiguous"
 msgstr ""
 
-#: cp/decl.cc:17062
+#: cp/decl.cc:18232
 #, gcc-internal-format
 msgid "class template %qD redeclared as non-template"
 msgstr ""
 
-#: cp/decl.cc:17084 cp/name-lookup.cc:5924
+#: cp/decl.cc:18254 cp/name-lookup.cc:6053
 #, gcc-internal-format
 msgid "%qD has the same name as the class in which it is declared"
 msgstr ""
 
-#: cp/decl.cc:17113 cp/friend.cc:318 cp/parser.cc:3680 cp/parser.cc:7181
-#: cp/pt.cc:10128
+#: cp/decl.cc:18283 cp/friend.cc:318 cp/parser.cc:3757 cp/parser.cc:7811
+#: cp/parser.cc:21307 cp/pt.cc:10233
 #, gcc-internal-format
 msgid "%qT is not a template"
 msgstr ""
 
-#: cp/decl.cc:17118
+#: cp/decl.cc:18288
 #, gcc-internal-format
 msgid "perhaps you want to explicitly add %<%T::%>"
 msgstr ""
 
-#: cp/decl.cc:17223
+#: cp/decl.cc:18393
 #, gcc-internal-format
 msgid "use of enum %q#D without previous declaration"
 msgstr ""
 
-#: cp/decl.cc:17250
+#: cp/decl.cc:18420
 #, gcc-internal-format
 msgid "redeclaration of %qT as a non-template"
 msgstr ""
 
-#: cp/decl.cc:17387
+#: cp/decl.cc:18563
 #, gcc-internal-format
 msgid "derived union %qT invalid"
 msgstr ""
 
-#: cp/decl.cc:17394
+#: cp/decl.cc:18570
 #, gcc-internal-format
 msgid "%qT defined with multiple direct bases"
 msgstr ""
 
-#: cp/decl.cc:17405
+#: cp/decl.cc:18581
 #, gcc-internal-format
 msgid "%qT defined with direct virtual base"
 msgstr ""
 
-#: cp/decl.cc:17430
+#: cp/decl.cc:18630
 #, gcc-internal-format
 msgid "base type %qT fails to be a struct or class type"
 msgstr ""
 
-#: cp/decl.cc:17460
+#: cp/decl.cc:18660
 #, gcc-internal-format
 msgid "recursive type %qT undefined"
 msgstr ""
 
-#: cp/decl.cc:17462
+#: cp/decl.cc:18662
 #, gcc-internal-format
 msgid "duplicate base type %qT invalid"
 msgstr ""
 
-#: cp/decl.cc:17620
+#: cp/decl.cc:18835
 #, gcc-internal-format
 msgid "scoped/unscoped mismatch in enum %q#T"
 msgstr ""
 
-#: cp/decl.cc:17623 cp/decl.cc:17632 cp/decl.cc:17643 cp/decl.cc:18244
-#: cp/parser.cc:22331
+#: cp/decl.cc:18838 cp/decl.cc:18847 cp/decl.cc:18858 cp/decl.cc:19480
+#: cp/parser.cc:24038
 #, gcc-internal-format
 msgid "previous definition here"
 msgstr ""
 
-#: cp/decl.cc:17629
+#: cp/decl.cc:18844
 #, gcc-internal-format
 msgid "underlying type mismatch in enum %q#T"
 msgstr ""
 
-#: cp/decl.cc:17640
+#: cp/decl.cc:18855
 #, gcc-internal-format
 msgid "different underlying type in enum %q#T"
 msgstr ""
 
-#: cp/decl.cc:17715
+#: cp/decl.cc:18930
 #, gcc-internal-format
 msgid "underlying type %qT of %qT must be an integral type"
 msgstr ""
@@ -62700,292 +65418,305 @@ msgstr ""
 #.
 #. IF no integral type can represent all the enumerator values, the
 #. enumeration is ill-formed.
-#: cp/decl.cc:17864
+#: cp/decl.cc:19099
 #, gcc-internal-format
 msgid "no integral type can represent all of the enumerator values for %qT"
 msgstr ""
 
-#: cp/decl.cc:18051
+#: cp/decl.cc:19287
 #, gcc-internal-format
 msgid ""
 "enumerator value for %qD must have integral or unscoped enumeration type"
 msgstr ""
 
-#: cp/decl.cc:18061
+#: cp/decl.cc:19297
 #, gcc-internal-format
 msgid "enumerator value for %qD is not an integer constant"
 msgstr ""
 
-#: cp/decl.cc:18110
+#: cp/decl.cc:19346
 #, gcc-internal-format
 msgid "incremented enumerator value is too large for %<unsigned long%>"
 msgstr ""
 
-#: cp/decl.cc:18111
+#: cp/decl.cc:19347
 #, gcc-internal-format
 msgid "incremented enumerator value is too large for %<long%>"
 msgstr ""
 
-#: cp/decl.cc:18122
+#: cp/decl.cc:19358
 #, gcc-internal-format
 msgid "overflow in enumeration values at %qD"
 msgstr ""
 
-#: cp/decl.cc:18142
+#: cp/decl.cc:19378
 #, gcc-internal-format
 msgid "enumerator value %qE is outside the range of underlying type %qT"
 msgstr ""
 
-#: cp/decl.cc:18242 cp/parser.cc:22329
+#: cp/decl.cc:19478 cp/parser.cc:24036
 #, gcc-internal-format
 msgid "multiple definition of %q#T"
 msgstr ""
 
-#: cp/decl.cc:18316
+#: cp/decl.cc:19552
 #, gcc-internal-format
 msgid "return type %q#T is incomplete"
 msgstr ""
 
-#: cp/decl.cc:18483 cp/typeck.cc:11344
+#: cp/decl.cc:19722 cp/typeck.cc:11632
 #, gcc-internal-format
 msgid "%<operator=%> should return a reference to %<*this%>"
 msgstr ""
 
-#: cp/decl.cc:19302
+#: cp/decl.cc:20540
 #, gcc-internal-format
 msgid "no return statements in function returning %qT"
 msgstr ""
 
-#: cp/decl.cc:19304 cp/typeck.cc:11222
+#: cp/decl.cc:20542 cp/typeck.cc:11510
 #, gcc-internal-format
 msgid "only plain %<auto%> return type can be deduced to %<void%>"
 msgstr ""
 
-#: cp/decl.cc:19360
+#: cp/decl.cc:20553
+#, gcc-internal-format
+msgid "defining %qD, which previously failed to be deduced in a SFINAE context"
+msgstr ""
+
+#: cp/decl.cc:20611
 #, gcc-internal-format
 msgid "no return statement in %<constexpr%> function returning non-void"
 msgstr ""
 
-#: cp/decl.cc:19551
+#: cp/decl.cc:20807
 #, gcc-internal-format
 msgid "%qD is already defined in class %qT"
 msgstr ""
 
-#: cp/decl.cc:19949
+#: cp/decl.cc:21205
 #, gcc-internal-format
 msgid "using %qs"
 msgstr ""
 
-#: cp/decl.cc:19961
+#: cp/decl.cc:21217
 #, gcc-internal-format
 msgid "use of %qD before deduction of %<auto%>"
 msgstr ""
 
-#: cp/decl2.cc:386
+#: cp/decl2.cc:390
 #, gcc-internal-format
 msgid "name missing for member function"
 msgstr ""
 
-#: cp/decl2.cc:481 cp/decl2.cc:529
+#: cp/decl2.cc:485 cp/decl2.cc:533
 #, gcc-internal-format
 msgid "top-level comma expression in array subscript changed meaning in C++23"
 msgstr ""
 
-#: cp/decl2.cc:519
+#: cp/decl2.cc:523
 #, gcc-internal-format
 msgid "built-in subscript operator without expression list"
 msgstr ""
 
-#: cp/decl2.cc:533
+#: cp/decl2.cc:537
 #, gcc-internal-format
 msgid ""
 "built-in subscript operator with more than one expression in expression list"
 msgstr ""
 
-#: cp/decl2.cc:560 cp/decl2.cc:575
+#: cp/decl2.cc:564 cp/decl2.cc:579
 #, gcc-internal-format
 msgid "ambiguous conversion for array subscript"
 msgstr ""
 
-#: cp/decl2.cc:569
+#: cp/decl2.cc:573
 #, gcc-internal-format
 msgid "invalid types %<%T[%T]%> for array subscript"
 msgstr ""
 
-#: cp/decl2.cc:688
+#: cp/decl2.cc:692
 #, gcc-internal-format
 msgid "deleting array %q#E"
 msgstr ""
 
-#: cp/decl2.cc:696
+#: cp/decl2.cc:700
 #, gcc-internal-format
 msgid "type %q#T argument given to %<delete%>, expected pointer"
 msgstr ""
 
-#: cp/decl2.cc:710
+#: cp/decl2.cc:714
 #, gcc-internal-format
 msgid ""
 "cannot delete a function.  Only pointer-to-objects are valid arguments to "
 "%<delete%>"
 msgstr ""
 
-#: cp/decl2.cc:720
+#: cp/decl2.cc:724
 #, gcc-internal-format
 msgid "deleting %qT is undefined"
 msgstr ""
 
-#: cp/decl2.cc:768 cp/pt.cc:6009
+#: cp/decl2.cc:772 cp/pt.cc:6056
 #, gcc-internal-format
 msgid "template declaration of %q#D"
 msgstr ""
 
-#: cp/decl2.cc:808
+#: cp/decl2.cc:936
+msgid "parameter %P of candidate has type %e..."
+msgstr ""
+
+#: cp/decl2.cc:946
+msgid "...which does not match type %e"
+msgstr ""
+
+#: cp/decl2.cc:1013
 #, gcc-internal-format
 msgid ""
 "template parameter lists provided don%'t match the template parameters of %qD"
 msgstr ""
 
-#: cp/decl2.cc:823 cp/pt.cc:5977
+#: cp/decl2.cc:1028 cp/pt.cc:6024
 #, gcc-internal-format
 msgid "destructor %qD declared as member template"
 msgstr ""
 
-#: cp/decl2.cc:916
+#: cp/decl2.cc:1121
 #, gcc-internal-format
 msgid "no declaration matches %q#D"
 msgstr ""
 
-#: cp/decl2.cc:921
+#: cp/decl2.cc:1129
 #, gcc-internal-format
 msgid "no conversion operators declared"
 msgstr ""
 
-#: cp/decl2.cc:924
+#: cp/decl2.cc:1132
 #, gcc-internal-format
 msgid "no functions named %qD"
 msgstr ""
 
-#: cp/decl2.cc:926
+#: cp/decl2.cc:1134
 #, gcc-internal-format
 msgid "%#qT defined here"
 msgstr ""
 
-#: cp/decl2.cc:986
+#: cp/decl2.cc:1194
 #, gcc-internal-format
 msgid "local class %q#T shall not have static data member %q#D"
 msgstr ""
 
-#: cp/decl2.cc:995
+#: cp/decl2.cc:1203
 #, gcc-internal-format
 msgid "static data member %qD in unnamed class"
 msgstr ""
 
-#: cp/decl2.cc:997
+#: cp/decl2.cc:1205
 #, gcc-internal-format
 msgid "unnamed class defined here"
 msgstr ""
 
-#: cp/decl2.cc:1082
+#: cp/decl2.cc:1290
 #, gcc-internal-format
 msgid "explicit template argument list not allowed"
 msgstr ""
 
-#: cp/decl2.cc:1124
+#: cp/decl2.cc:1332
 #, gcc-internal-format
 msgid "%qD is already defined in %qT"
 msgstr ""
 
-#: cp/decl2.cc:1157 cp/decl2.cc:1165 cp/decl2.cc:1279
+#: cp/decl2.cc:1365 cp/decl2.cc:1373 cp/decl2.cc:1487
 #, gcc-internal-format
 msgid "invalid initializer for member function %qD"
 msgstr ""
 
-#: cp/decl2.cc:1174
+#: cp/decl2.cc:1382
 #, gcc-internal-format
 msgid "initializer specified for friend function %qD"
 msgstr ""
 
-#: cp/decl2.cc:1177 cp/decl2.cc:1283
+#: cp/decl2.cc:1385 cp/decl2.cc:1491
 #, gcc-internal-format
 msgid "initializer specified for static member function %qD"
 msgstr ""
 
-#: cp/decl2.cc:1225
+#: cp/decl2.cc:1433
 #, gcc-internal-format
 msgid "%<asm%> specifiers are not permitted on non-static data members"
 msgstr ""
 
-#: cp/decl2.cc:1386
+#: cp/decl2.cc:1594
 #, gcc-internal-format
 msgid "bit-field %qD with non-integral type %qT"
 msgstr ""
 
-#: cp/decl2.cc:1394
+#: cp/decl2.cc:1602
 #, gcc-internal-format
 msgid "cannot declare %qD to be a bit-field type"
 msgstr ""
 
-#: cp/decl2.cc:1405
+#: cp/decl2.cc:1613
 #, gcc-internal-format
 msgid "cannot declare bit-field %qD with function type"
 msgstr ""
 
-#: cp/decl2.cc:1411
+#: cp/decl2.cc:1619
 #, gcc-internal-format
 msgid "cannot declare bit-field %qD with %<warn_if_not_aligned%> type"
 msgstr ""
 
-#: cp/decl2.cc:1418
+#: cp/decl2.cc:1626
 #, gcc-internal-format
 msgid "%qD is already defined in the class %qT"
 msgstr ""
 
-#: cp/decl2.cc:1426
+#: cp/decl2.cc:1634
 #, gcc-internal-format
 msgid "static member %qD cannot be a bit-field"
 msgstr ""
 
-#: cp/decl2.cc:1440
+#: cp/decl2.cc:1648
 #, gcc-internal-format
 msgid "width of bit-field %qD has non-integral type %qT"
 msgstr ""
 
-#: cp/decl2.cc:1882
+#: cp/decl2.cc:2103
 #, gcc-internal-format
 msgid "%q+D static data member inside of declare target directive"
 msgstr ""
 
-#: cp/decl2.cc:2032
+#: cp/decl2.cc:2273
 #, gcc-internal-format
 msgid "anonymous struct not inside named type"
 msgstr ""
 
-#: cp/decl2.cc:2048
+#: cp/decl2.cc:2289
 #, gcc-internal-format
 msgid "%q#D invalid; an anonymous union can only have non-static data members"
 msgstr ""
 
-#: cp/decl2.cc:2055
+#: cp/decl2.cc:2296
 #, gcc-internal-format
 msgid "private member %q#D in anonymous union"
 msgstr ""
 
-#: cp/decl2.cc:2058
+#: cp/decl2.cc:2299
 #, gcc-internal-format
 msgid "protected member %q#D in anonymous union"
 msgstr ""
 
-#: cp/decl2.cc:2123
+#: cp/decl2.cc:2364
 #, gcc-internal-format
 msgid "namespace-scope anonymous aggregates must be static"
 msgstr ""
 
-#: cp/decl2.cc:2132
+#: cp/decl2.cc:2373
 #, gcc-internal-format
 msgid "anonymous union with no members"
 msgstr ""
 
-#: cp/decl2.cc:2169
+#: cp/decl2.cc:2410
 #, gcc-internal-format
 msgid "%<operator new%> must return type %qT"
 msgstr ""
@@ -62994,100 +65725,100 @@ msgstr ""
 #.
 #. The first parameter shall not have an associated default
 #. argument.
-#: cp/decl2.cc:2181
+#: cp/decl2.cc:2422
 #, gcc-internal-format
 msgid "the first parameter of %<operator new%> cannot have a default argument"
 msgstr ""
 
-#: cp/decl2.cc:2197
+#: cp/decl2.cc:2438
 #, gcc-internal-format
 msgid "%<operator new%> takes type %<size_t%> (%qT) as first parameter"
 msgstr ""
 
-#: cp/decl2.cc:2227
+#: cp/decl2.cc:2468
 #, gcc-internal-format
 msgid "%<operator delete%> must return type %qT"
 msgstr ""
 
-#: cp/decl2.cc:2242
+#: cp/decl2.cc:2483
 #, gcc-internal-format
 msgid "destroying %<operator delete%> must be a member function"
 msgstr ""
 
-#: cp/decl2.cc:2245
+#: cp/decl2.cc:2486
 #, gcc-internal-format
 msgid "%<operator delete[]%> cannot be a destroying delete"
 msgstr ""
 
-#: cp/decl2.cc:2247
+#: cp/decl2.cc:2488
 #, gcc-internal-format
 msgid "destroying %<operator delete%> must be a usual deallocation function"
 msgstr ""
 
-#: cp/decl2.cc:2257
+#: cp/decl2.cc:2498
 #, gcc-internal-format
 msgid "%<operator delete%> takes type %qT as first parameter"
 msgstr ""
 
-#: cp/decl2.cc:3298
+#: cp/decl2.cc:3596
 #, gcc-internal-format
 msgid "%qT has a field %q#D whose type has no linkage"
 msgstr ""
 
-#: cp/decl2.cc:3302
+#: cp/decl2.cc:3600
 #, gcc-internal-format
 msgid ""
 "%qT has a field %qD whose type depends on the type %qT which has no linkage"
 msgstr ""
 
-#: cp/decl2.cc:3308
+#: cp/decl2.cc:3606
 #, gcc-internal-format
 msgid "%qT has a field %q#D whose type has internal linkage"
 msgstr ""
 
 #. In C++98 this can only happen with unnamed namespaces.
-#: cp/decl2.cc:3312
+#: cp/decl2.cc:3610
 #, gcc-internal-format
 msgid "%qT has a field %q#D whose type uses the anonymous namespace"
 msgstr ""
 
-#: cp/decl2.cc:3320
+#: cp/decl2.cc:3618
 #, gcc-internal-format
 msgid "%qT declared with greater visibility than the type of its field %qD"
 msgstr ""
 
-#: cp/decl2.cc:3339
+#: cp/decl2.cc:3637
 #, gcc-internal-format
 msgid "%qT has a base %qT which has no linkage"
 msgstr ""
 
-#: cp/decl2.cc:3343
+#: cp/decl2.cc:3641
 #, gcc-internal-format
 msgid "%qT has a base %qT which depends on the type %qT which has no linkage"
 msgstr ""
 
-#: cp/decl2.cc:3349
+#: cp/decl2.cc:3647
 #, gcc-internal-format
 msgid "%qT has a base %qT which has internal linkage"
 msgstr ""
 
 #. In C++98 this can only happen with unnamed namespaces.
-#: cp/decl2.cc:3353
+#: cp/decl2.cc:3651
 #, gcc-internal-format
 msgid "%qT has a base %qT which uses the anonymous namespace"
 msgstr ""
 
-#: cp/decl2.cc:3360
+#: cp/decl2.cc:3658
 #, gcc-internal-format
 msgid "%qT declared with greater visibility than its base %qT"
 msgstr ""
 
-#: cp/decl2.cc:5117
+#: cp/decl2.cc:5434
 #, gcc-internal-format
 msgid "%q#D, declared using an unnamed type, is used but never defined"
 msgstr ""
 
-#: cp/decl2.cc:5121
+#: cp/decl2.cc:5438
 #, gcc-internal-format
 msgid "%q#D, declared using an unnamed type, is used but not defined"
 msgstr ""
@@ -63096,452 +65827,532 @@ msgstr ""
 #. no linkage can only be used to declare extern "C"
 #. entities.  Since it's not always an error in the
 #. ISO C++ 90 Standard, we only issue a warning.
-#: cp/decl2.cc:5131
+#: cp/decl2.cc:5448
 #, gcc-internal-format
 msgid "unnamed type with no linkage used to declare variable %q#D with linkage"
 msgstr ""
 
-#: cp/decl2.cc:5135
+#: cp/decl2.cc:5452
 #, gcc-internal-format
 msgid "unnamed type with no linkage used to declare function %q#D with linkage"
 msgstr ""
 
-#: cp/decl2.cc:5139
+#: cp/decl2.cc:5456
 #, gcc-internal-format
 msgid ""
 "%q#D does not refer to the unqualified type, so it is not used for linkage"
 msgstr ""
 
-#: cp/decl2.cc:5157
+#: cp/decl2.cc:5474
 #, gcc-internal-format
 msgid "%q#D, declared using local type %qT, is used but never defined"
 msgstr ""
 
-#: cp/decl2.cc:5161
+#: cp/decl2.cc:5478
 #, gcc-internal-format
 msgid "%q#D, declared using local type %qT, is used but not defined here"
 msgstr ""
 
-#: cp/decl2.cc:5169
+#: cp/decl2.cc:5486
 #, gcc-internal-format
 msgid "type %qT with no linkage used to declare variable %q#D with linkage"
 msgstr ""
 
-#: cp/decl2.cc:5172
+#: cp/decl2.cc:5489
 #, gcc-internal-format
 msgid "type %qT with no linkage used to declare function %q#D with linkage"
 msgstr ""
 
-#: cp/decl2.cc:5377
+#: cp/decl2.cc:5694
 #, gcc-internal-format
 msgid "mangling of %q#D as %qE conflicts with a previous mangle"
 msgstr ""
 
-#: cp/decl2.cc:5380
+#: cp/decl2.cc:5697
 #, gcc-internal-format
 msgid "previous mangling %q#D"
 msgstr ""
 
-#: cp/decl2.cc:5382
+#: cp/decl2.cc:5699
 #, gcc-internal-format
 msgid ""
 "a later %<-fabi-version=%> (or =0) avoids this error with a change in "
 "mangling"
 msgstr ""
 
-#: cp/decl2.cc:5454 cp/decl2.cc:5457
+#: cp/decl2.cc:5771 cp/decl2.cc:5774
 #, gcc-internal-format
 msgid "the program should also define %qD"
 msgstr ""
 
-#: cp/decl2.cc:5820
+#: cp/decl2.cc:6152
 #, gcc-internal-format
 msgid "inline function %qD used but never defined"
 msgstr ""
 
-#: cp/decl2.cc:6058
+#: cp/decl2.cc:6386
 #, gcc-internal-format
 msgid "default argument missing for parameter %P of %q#D"
 msgstr ""
 
-#: cp/decl2.cc:6063
+#: cp/decl2.cc:6391
 #, gcc-internal-format
 msgid "...following parameter %P which has a default argument"
 msgstr ""
 
-#: cp/decl2.cc:6186
+#: cp/decl2.cc:6514
 #, gcc-internal-format
 msgid "implicitly-declared %qD is deprecated"
 msgstr ""
 
-#: cp/decl2.cc:6190
+#: cp/decl2.cc:6518
 #, gcc-internal-format
 msgid "because %qT has user-provided %qD"
 msgstr ""
 
 #. We mark a lambda conversion op as deleted if we can't
 #. generate it properly; see maybe_add_lambda_conv_op.
-#: cp/decl2.cc:6336
+#: cp/decl2.cc:6705
 #, gcc-internal-format
 msgid "converting lambda that uses %<...%> to function pointer"
 msgstr ""
 
-#: cp/decl2.cc:6345
+#: cp/decl2.cc:6714
 #, gcc-internal-format
 msgid "use of deleted function %qD: %s"
 msgstr ""
 
-#: cp/decl2.cc:6349
+#: cp/decl2.cc:6718
 #, gcc-internal-format
 msgid "use of deleted function %qD"
 msgstr ""
 
-#: cp/decl2.cc:6397
+#: cp/decl2.cc:6766
 #, gcc-internal-format
 msgid "use of function %qD with unsatisfied constraints"
 msgstr ""
 
-#: cp/decl2.cc:6436
+#: cp/decl2.cc:6810
 #, gcc-internal-format
 msgid "use of built-in parameter pack %qD outside of a template"
 msgstr ""
 
-#: cp/error.cc:3791
+#: cp/error.cc:3924
 msgid "    inlined from %qD at %r%s:%d:%d%R"
 msgstr ""
 
-#: cp/error.cc:3796
+#: cp/error.cc:3929
 msgid "    inlined from %qD at %r%s:%d%R"
 msgstr ""
 
-#: cp/error.cc:3802
+#: cp/error.cc:3935
 #, gcc-internal-format
 msgid "    inlined from %qD"
 msgstr ""
 
-#: cp/error.cc:3828
+#: cp/error.cc:3961
 #, gcc-internal-format
 msgid "In static member function %qD"
 msgstr ""
 
-#: cp/error.cc:3830
+#: cp/error.cc:3963
 #, gcc-internal-format
 msgid "In copy constructor %qD"
 msgstr ""
 
-#: cp/error.cc:3832
+#: cp/error.cc:3965
 #, gcc-internal-format
 msgid "In constructor %qD"
 msgstr ""
 
-#: cp/error.cc:3834
+#: cp/error.cc:3967
 #, gcc-internal-format
 msgid "In destructor %qD"
 msgstr ""
 
-#: cp/error.cc:3836
+#: cp/error.cc:3969
 #, gcc-internal-format
 msgid "In lambda function"
 msgstr ""
 
-#: cp/error.cc:3838
+#: cp/error.cc:3971
 #, gcc-internal-format
 msgid "In explicit object member function %qD"
 msgstr ""
 
-#: cp/error.cc:3840
+#: cp/error.cc:3973
 #, gcc-internal-format
 msgid "In member function %qD"
 msgstr ""
 
-#: cp/error.cc:3843
+#: cp/error.cc:3976
 #, gcc-internal-format
 msgid "In function %qD"
 msgstr ""
 
-#: cp/error.cc:3870
+#: cp/error.cc:3992
+#, gcc-internal-format
+msgid "but %qE is a type"
+msgstr ""
+
+#: cp/error.cc:3994
+#, gcc-internal-format
+msgid "but %qE is an expression"
+msgstr ""
+
+#: cp/error.cc:3996
+#, gcc-internal-format
+msgid "but %qE is a structured binding"
+msgstr ""
+
+#: cp/error.cc:3998
+#, gcc-internal-format
+msgid "but %qE is a variable"
+msgstr ""
+
+#: cp/error.cc:4000
+#, gcc-internal-format
+msgid "but %qE is a parameter"
+msgstr ""
+
+#: cp/error.cc:4002
+#, gcc-internal-format
+msgid "but %qE is a function"
+msgstr ""
+
+#: cp/error.cc:4004
+#, gcc-internal-format
+msgid "but %qE is a data member"
+msgstr ""
+
+#: cp/error.cc:4006
+#, gcc-internal-format
+msgid "but %qE is a function template"
+msgstr ""
+
+#: cp/error.cc:4008
+#, gcc-internal-format
+msgid "but %qE is a class template"
+msgstr ""
+
+#: cp/error.cc:4010
+#, gcc-internal-format
+msgid "but %qE is a namespace"
+msgstr ""
+
+#: cp/error.cc:4012
+#, gcc-internal-format
+msgid "but %qE is an enumerator"
+msgstr ""
+
+#: cp/error.cc:4040
+#, gcc-internal-format
+msgid "%s%s%sIn instantiation of %<template for%> iteration %E:\n"
+msgstr ""
+
+#: cp/error.cc:4043
 msgid "%s%s%sIn substitution of %qS:\n"
 msgstr ""
 
-#: cp/error.cc:3871
+#: cp/error.cc:4044
 #, gcc-internal-format
 msgid "%s%s%sIn instantiation of %q#D:\n"
 msgstr ""
 
-#: cp/error.cc:3891
+#: cp/error.cc:4066
 msgid "%r%s:%d:%d:%R   "
 msgstr ""
 
-#: cp/error.cc:3894
+#: cp/error.cc:4069
 msgid "%r%s:%d:%R   "
 msgstr ""
 
-#: cp/error.cc:3987
+#: cp/error.cc:4173
+#, gcc-internal-format
+msgid "recursively required from %<template for%> iteration %E\n"
+msgstr ""
+
+#: cp/error.cc:4175
+#, gcc-internal-format
+msgid "required from %<template for%> iteration %E\n"
+msgstr ""
+
+#: cp/error.cc:4180
 msgid "recursively required by substitution of %qS\n"
 msgstr ""
 
-#: cp/error.cc:3988
+#: cp/error.cc:4181
 msgid "required by substitution of %qS\n"
 msgstr ""
 
-#: cp/error.cc:3993
+#: cp/error.cc:4186
 #, gcc-internal-format
 msgid "recursively required from %q#D\n"
 msgstr ""
 
-#: cp/error.cc:3994
+#: cp/error.cc:4187
 #, gcc-internal-format
 msgid "required from %q#D\n"
 msgstr ""
 
-#: cp/error.cc:4001
+#: cp/error.cc:4194
 #, gcc-internal-format
 msgid "recursively required from here\n"
 msgstr ""
 
-#: cp/error.cc:4002
+#: cp/error.cc:4195
 #, gcc-internal-format
 msgid "required from here\n"
 msgstr ""
 
-#: cp/error.cc:4052
+#: cp/error.cc:4245
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "[ skipping %d instantiation contexts, use -ftemplate-backtrace-limit=0 to "
 "disable ]\n"
 msgstr ""
 
-#: cp/error.cc:4104
+#: cp/error.cc:4297
 #, gcc-internal-format
 msgid "in %<constexpr%> expansion of %qs"
 msgstr ""
 
-#: cp/error.cc:4117
+#: cp/error.cc:4310
 #, gcc-internal-format
 msgid "required by the constraints of %q#D\n"
 msgstr ""
 
-#: cp/error.cc:4132
+#: cp/error.cc:4325
 #, gcc-internal-format
 msgid "required for the satisfaction of %qE"
 msgstr ""
 
-#: cp/error.cc:4154
+#: cp/error.cc:4347
 #, gcc-internal-format
 msgid "required for constraint satisfaction\n"
 msgstr ""
 
-#: cp/error.cc:4185
+#: cp/error.cc:4378
 #, gcc-internal-format
 msgid "in requirements with "
 msgstr ""
 
-#: cp/error.cc:4186
+#: cp/error.cc:4379
 #, gcc-internal-format
 msgid "in requirements "
 msgstr ""
 
-#: cp/error.cc:4304
+#: cp/error.cc:4497
 #, gcc-internal-format
 msgid "(no argument)"
 msgstr ""
 
-#: cp/error.cc:4398
+#: cp/error.cc:4591
 #, gcc-internal-format
 msgid "[...]"
 msgstr ""
 
-#: cp/error.cc:4750
+#: cp/error.cc:4943
 #, gcc-internal-format
 msgid ""
 "extended initializer lists only available with %<-std=c++11%> or %<-std=gnu+"
 "+11%>"
 msgstr ""
 
-#: cp/error.cc:4755
+#: cp/error.cc:4948
 #, gcc-internal-format
 msgid ""
 "explicit conversion operators only available with %<-std=c++11%> or %<-"
 "std=gnu++11%>"
 msgstr ""
 
-#: cp/error.cc:4760
+#: cp/error.cc:4953
 #, gcc-internal-format
 msgid ""
 "variadic templates only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.cc:4765
+#: cp/error.cc:4958
 #, gcc-internal-format
 msgid ""
 "lambda expressions only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.cc:4770
+#: cp/error.cc:4963
 #, gcc-internal-format
 msgid "C++11 auto only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.cc:4775
+#: cp/error.cc:4968
 #, gcc-internal-format
 msgid "scoped enums only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.cc:4780
+#: cp/error.cc:4973
 #, gcc-internal-format
 msgid ""
 "defaulted and deleted functions only available with %<-std=c++11%> or %<-"
 "std=gnu++11%>"
 msgstr ""
 
-#: cp/error.cc:4786
+#: cp/error.cc:4979
 #, gcc-internal-format
 msgid ""
 "inline namespaces only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.cc:4791
+#: cp/error.cc:4984
 #, gcc-internal-format
 msgid ""
 "override controls (override/final) only available with %<-std=c++11%> or %<-"
 "std=gnu++11%>"
 msgstr ""
 
-#: cp/error.cc:4796
+#: cp/error.cc:4989
 #, gcc-internal-format
 msgid ""
 "non-static data member initializers only available with %<-std=c++11%> or %<-"
 "std=gnu++11%>"
 msgstr ""
 
-#: cp/error.cc:4801
+#: cp/error.cc:4994
 #, gcc-internal-format
 msgid ""
 "user-defined literals only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.cc:4806
+#: cp/error.cc:4999
 #, gcc-internal-format
 msgid ""
 "delegating constructors only available with %<-std=c++11%> or %<-std=gnu+"
 "+11%>"
 msgstr ""
 
-#: cp/error.cc:4811
+#: cp/error.cc:5004
 #, gcc-internal-format
 msgid ""
 "inheriting constructors only available with %<-std=c++11%> or %<-std=gnu+"
 "+11%>"
 msgstr ""
 
-#: cp/error.cc:4817
+#: cp/error.cc:5010
 #, gcc-internal-format
 msgid "C++11 attributes only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.cc:4822
+#: cp/error.cc:5015
 #, gcc-internal-format
 msgid "ref-qualifiers only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.cc:4875
+#: cp/error.cc:5070
 #, gcc-internal-format
 msgid "incomplete type %qT used in nested name specifier"
 msgstr ""
 
-#: cp/error.cc:4880
+#: cp/error.cc:5075
 #, gcc-internal-format
 msgid "reference to %<%T::%D%> is ambiguous"
 msgstr ""
 
-#: cp/error.cc:4895
+#: cp/error.cc:5090
 #, gcc-internal-format
 msgid "%qD is not a member of %qT; did you mean %qs?"
 msgstr ""
 
-#: cp/error.cc:4899 cp/typeck.cc:2897
+#: cp/error.cc:5094 cp/typeck.cc:3012
 #, gcc-internal-format
 msgid "%qD is not a member of %qT"
 msgstr ""
 
-#: cp/error.cc:4921
+#: cp/error.cc:5116
 #, gcc-internal-format
 msgid "%qD is not a member of %qD; did you mean %qs?"
 msgstr ""
 
-#: cp/error.cc:4925 cp/typeck.cc:3492
+#: cp/error.cc:5120 cp/typeck.cc:3641
 #, gcc-internal-format
 msgid "%qD is not a member of %qD"
 msgstr ""
 
-#: cp/error.cc:4936
+#: cp/error.cc:5131
 #, gcc-internal-format
 msgid "%<::%D%> has not been declared; did you mean %qs?"
 msgstr ""
 
-#: cp/error.cc:4940
+#: cp/error.cc:5135
 #, gcc-internal-format
 msgid "%<::%D%> has not been declared"
 msgstr ""
 
-#: cp/except.cc:395
+#: cp/except.cc:397
 #, gcc-internal-format
 msgid "exception handling disabled, use %<-fexceptions%> to enable"
 msgstr ""
 
-#: cp/except.cc:643
+#: cp/except.cc:647
 #, gcc-internal-format
 msgid "throwing NULL, which has integral, not pointer type"
 msgstr ""
 
-#: cp/except.cc:747
+#: cp/except.cc:756
 #, gcc-internal-format
 msgid "  in thrown expression"
 msgstr ""
 
-#: cp/except.cc:894
+#: cp/except.cc:910
 #, gcc-internal-format
 msgid "cannot declare %<catch%> parameter to be of rvalue reference type %qT"
 msgstr ""
 
-#: cp/except.cc:904
+#: cp/except.cc:920
 #, gcc-internal-format
 msgid ""
 "cannot throw expression of type %qT because it involves types of variable "
 "size"
 msgstr ""
 
-#: cp/except.cc:907
+#: cp/except.cc:923
 #, gcc-internal-format
 msgid "cannot catch type %qT because it involves types of variable size"
 msgstr ""
 
-#: cp/except.cc:1008
+#: cp/except.cc:1024
 #, gcc-internal-format
 msgid "exception of type %qT will be caught by earlier handler"
 msgstr ""
 
-#: cp/except.cc:1010
+#: cp/except.cc:1026
 #, gcc-internal-format
 msgid "for type %qT"
 msgstr ""
 
-#: cp/except.cc:1039
+#: cp/except.cc:1055
 #, gcc-internal-format
 msgid "%<...%> handler must be the last handler for its try block"
 msgstr ""
 
-#: cp/except.cc:1133
+#: cp/except.cc:1149
 #, gcc-internal-format
 msgid "noexcept-expression evaluates to %<false%> because of a call to %qD"
 msgstr ""
 
-#: cp/except.cc:1136
+#: cp/except.cc:1152
 #, gcc-internal-format
 msgid "but %qD does not throw; perhaps it should be declared %<noexcept%>"
 msgstr ""
 
-#: cp/expr.cc:232
+#: cp/except.cc:1230
+#, gcc-internal-format
+msgid "%qD is not %<noexcept%>"
+msgstr ""
+
+#: cp/except.cc:1232
+#, gcc-internal-format
+msgid "%qT is not %<noexcept%>"
+msgstr ""
+
+#: cp/expr.cc:244
 #, gcc-internal-format
 msgid ""
 "using value of assignment with %<volatile%>-qualified left operand is "
@@ -63637,554 +66448,560 @@ msgid ""
 "already been declared and add %<<>%> after the function name here)"
 msgstr ""
 
-#: cp/init.cc:402
+#: cp/init.cc:406
 #, gcc-internal-format
 msgid "value-initialization of incomplete type %qT"
 msgstr ""
 
-#: cp/init.cc:487
+#: cp/init.cc:491
 #, gcc-internal-format
 msgid "cannot value-initialize array of unknown bound %qT"
 msgstr ""
 
-#: cp/init.cc:526
+#: cp/init.cc:530
 #, gcc-internal-format
 msgid "value-initialization of function type %qT"
 msgstr ""
 
-#: cp/init.cc:532
+#: cp/init.cc:536
 #, gcc-internal-format
 msgid "value-initialization of reference type %qT"
 msgstr ""
 
-#: cp/init.cc:601
+#: cp/init.cc:605
 #, gcc-internal-format
 msgid "recursive instantiation of default member initializer for %qD"
 msgstr ""
 
-#: cp/init.cc:669
+#: cp/init.cc:673
 #, gcc-internal-format
 msgid ""
 "default member initializer for %qD required before the end of its enclosing "
 "class"
 msgstr ""
 
-#: cp/init.cc:671
+#: cp/init.cc:675
 #, gcc-internal-format
 msgid "defined here"
 msgstr ""
 
-#: cp/init.cc:739
+#: cp/init.cc:743
 #, gcc-internal-format
 msgid "initializer for flexible array member %q#D"
 msgstr ""
 
-#: cp/init.cc:804
+#: cp/init.cc:808
 #, gcc-internal-format
 msgid ""
 "initializing %qD from %qE does not extend the lifetime of the underlying "
 "array"
 msgstr ""
 
-#: cp/init.cc:908 cp/init.cc:1023
+#: cp/init.cc:912 cp/init.cc:1030
 #, gcc-internal-format
 msgid "%qD is initialized with itself"
 msgstr ""
 
-#: cp/init.cc:914
+#: cp/init.cc:918
 #, gcc-internal-format
 msgid "reference %qD is not yet bound to a value when used here"
 msgstr ""
 
-#: cp/init.cc:919
+#: cp/init.cc:923
 #, gcc-internal-format
 msgid "member %qD is used uninitialized"
 msgstr ""
 
-#: cp/init.cc:972 cp/init.cc:2055 cp/init.cc:5016 cp/typeck2.cc:1431
+#: cp/init.cc:976 cp/init.cc:2062 cp/init.cc:5112 cp/typeck2.cc:1519
 #, gcc-internal-format
 msgid "array must be initialized with a brace-enclosed initializer"
 msgstr ""
 
-#: cp/init.cc:1000
+#: cp/init.cc:1007
 #, gcc-internal-format
 msgid "%qD should be initialized in the member initialization list"
 msgstr ""
 
-#: cp/init.cc:1143
+#: cp/init.cc:1150
 #, gcc-internal-format
 msgid "invalid initializer for array member %q#D"
 msgstr ""
 
-#: cp/init.cc:1158 cp/init.cc:1184 cp/init.cc:2781 cp/method.cc:2648
+#: cp/init.cc:1165 cp/init.cc:1191 cp/init.cc:2788 cp/method.cc:2778
 #, gcc-internal-format
 msgid "uninitialized const member in %q#T"
 msgstr ""
 
-#: cp/init.cc:1160 cp/init.cc:1178 cp/init.cc:1186 cp/init.cc:2765
-#: cp/init.cc:2794 cp/method.cc:2651 cp/method.cc:2662
+#: cp/init.cc:1167 cp/init.cc:1185 cp/init.cc:1193 cp/init.cc:2772
+#: cp/init.cc:2801 cp/method.cc:2781 cp/method.cc:2792
 #, gcc-internal-format
 msgid "%q#D should be initialized"
 msgstr ""
 
-#: cp/init.cc:1176 cp/init.cc:2752 cp/method.cc:2659
+#: cp/init.cc:1183 cp/init.cc:2759 cp/method.cc:2789
 #, gcc-internal-format
 msgid "uninitialized reference member in %q#T"
 msgstr ""
 
-#: cp/init.cc:1361
+#: cp/init.cc:1368
 #, gcc-internal-format
 msgid "%qD will be initialized after"
 msgstr ""
 
-#: cp/init.cc:1364
+#: cp/init.cc:1371
 #, gcc-internal-format
 msgid "base %qT will be initialized after"
 msgstr ""
 
-#: cp/init.cc:1368
+#: cp/init.cc:1375
 #, gcc-internal-format
 msgid "  %q#D"
 msgstr ""
 
-#: cp/init.cc:1370
+#: cp/init.cc:1377
 #, gcc-internal-format
 msgid "  base %qT"
 msgstr ""
 
-#: cp/init.cc:1372
+#: cp/init.cc:1379
 #, gcc-internal-format
 msgid "  when initialized here"
 msgstr ""
 
-#: cp/init.cc:1389
+#: cp/init.cc:1396
 #, gcc-internal-format
 msgid "multiple initializations given for %qD"
 msgstr ""
 
-#: cp/init.cc:1393
+#: cp/init.cc:1400
 #, gcc-internal-format
 msgid "multiple initializations given for base %qT"
 msgstr ""
 
-#: cp/init.cc:1480
+#: cp/init.cc:1487
 #, gcc-internal-format
 msgid "initializations for multiple members of %qT"
 msgstr ""
 
-#: cp/init.cc:1589
+#: cp/init.cc:1596
 #, gcc-internal-format
 msgid ""
 "base class %q#T should be explicitly initialized in the copy constructor"
 msgstr ""
 
-#: cp/init.cc:1825 cp/init.cc:1844
+#: cp/init.cc:1832 cp/init.cc:1851
 #, gcc-internal-format
 msgid "class %qT does not have any field named %qD"
 msgstr ""
 
-#: cp/init.cc:1831
+#: cp/init.cc:1838
 #, gcc-internal-format
 msgid ""
 "%q#D is a static data member; it can only be initialized at its definition"
 msgstr ""
 
-#: cp/init.cc:1838
+#: cp/init.cc:1845
 #, gcc-internal-format
 msgid "%q#D is not a non-static data member of %qT"
 msgstr ""
 
-#: cp/init.cc:1877
+#: cp/init.cc:1884
 #, gcc-internal-format
 msgid "unnamed initializer for %qT, which has no base classes"
 msgstr ""
 
-#: cp/init.cc:1885
+#: cp/init.cc:1892
 #, gcc-internal-format
 msgid "unnamed initializer for %qT, which uses multiple inheritance"
 msgstr ""
 
-#: cp/init.cc:1932
+#: cp/init.cc:1939
 #, gcc-internal-format
 msgid "%qD is both a direct base and an indirect virtual base"
 msgstr ""
 
-#: cp/init.cc:1940
+#: cp/init.cc:1947
 #, gcc-internal-format
 msgid "type %qT is not a direct or virtual base of %qT"
 msgstr ""
 
-#: cp/init.cc:1943
+#: cp/init.cc:1950
 #, gcc-internal-format
 msgid "type %qT is not a direct base of %qT"
 msgstr ""
 
-#: cp/init.cc:2376 cp/semantics.cc:4434 rust/backend/rust-tree.cc:4155
+#: cp/init.cc:2383 cp/reflect.cc:2522 cp/semantics.cc:4492
+#: rust/backend/rust-tree.cc:4192
 #, gcc-internal-format
 msgid "%qT is not a class type"
 msgstr ""
 
-#: cp/init.cc:2434
+#: cp/init.cc:2441
 #, gcc-internal-format
 msgid "incomplete type %qT does not have member %qD"
 msgstr ""
 
-#: cp/init.cc:2448
+#: cp/init.cc:2455
 #, gcc-internal-format
 msgid "invalid pointer to bit-field %qD"
 msgstr ""
 
-#: cp/init.cc:2534 cp/typeck.cc:2383 rust/backend/rust-tree.cc:3798
+#: cp/init.cc:2541 cp/typeck.cc:2498 rust/backend/rust-tree.cc:3824
 #, gcc-internal-format
 msgid "invalid use of non-static member function %qD"
 msgstr ""
 
-#: cp/init.cc:2541 cp/semantics.cc:2755
+#: cp/init.cc:2548 cp/semantics.cc:2780
 #, gcc-internal-format
 msgid "invalid use of non-static data member %qD"
 msgstr ""
 
-#: cp/init.cc:2749
+#: cp/init.cc:2756
 #, gcc-internal-format
 msgid ""
 "uninitialized reference member in %q#T using %<new%> without new-initializer"
 msgstr ""
 
-#: cp/init.cc:2757
+#: cp/init.cc:2764
 #, gcc-internal-format
 msgid ""
 "uninitialized reference member in base %q#T of %q#T using %<new%> without "
 "new-initializer"
 msgstr ""
 
-#: cp/init.cc:2761
+#: cp/init.cc:2768
 #, gcc-internal-format
 msgid "uninitialized reference member in base %q#T of %q#T"
 msgstr ""
 
-#: cp/init.cc:2778
+#: cp/init.cc:2785
 #, gcc-internal-format
 msgid ""
 "uninitialized const member in %q#T using %<new%> without new-initializer"
 msgstr ""
 
-#: cp/init.cc:2786
+#: cp/init.cc:2793
 #, gcc-internal-format
 msgid ""
 "uninitialized const member in base %q#T of %q#T using %<new%> without new-"
 "initializer"
 msgstr ""
 
-#: cp/init.cc:2790
+#: cp/init.cc:2797
 #, gcc-internal-format
 msgid "uninitialized const member in base %q#T of %q#T"
 msgstr ""
 
-#: cp/init.cc:2906
+#: cp/init.cc:2913
 #, gcc-internal-format
 msgid ""
 "placement new constructing an object of type %<%T [%wu]%> and size %qwu in a "
 "region of type %qT and size %qwi"
 msgstr ""
 
-#: cp/init.cc:2909
+#: cp/init.cc:2916
 #, gcc-internal-format
 msgid ""
 "placement new constructing an object of type %<%T [%wu]%> and size %qwu in a "
 "region of type %qT and size at most %qwu"
 msgstr ""
 
-#: cp/init.cc:2919
+#: cp/init.cc:2926
 #, gcc-internal-format
 msgid ""
 "placement new constructing an array of objects of type %qT and size %qwu in "
 "a region of type %qT and size %qwi"
 msgstr ""
 
-#: cp/init.cc:2922
+#: cp/init.cc:2929
 #, gcc-internal-format
 msgid ""
 "placement new constructing an array of objects of type %qT and size %qwu in "
 "a region of type %qT and size at most %qwu"
 msgstr ""
 
-#: cp/init.cc:2931
+#: cp/init.cc:2938
 #, gcc-internal-format
 msgid ""
 "placement new constructing an object of type %qT and size %qwu in a region "
 "of type %qT and size %qwi"
 msgstr ""
 
-#: cp/init.cc:2934
+#: cp/init.cc:2941
 #, gcc-internal-format
 msgid ""
 "placement new constructing an object of type %qT and size %qwu in a region "
 "of type %qT and size at most %qwu"
 msgstr ""
 
-#: cp/init.cc:2951
+#: cp/init.cc:2958
 #, gcc-internal-format
 msgid "at offset %wi from %qD declared here"
 msgstr ""
 
-#: cp/init.cc:2955
+#: cp/init.cc:2962
 #, gcc-internal-format
 msgid "at offset [%wi, %wi] from %qD declared here"
 msgstr ""
 
-#: cp/init.cc:3156
+#: cp/init.cc:3171
 #, gcc-internal-format
 msgid "integer overflow in array size"
 msgstr ""
 
-#: cp/init.cc:3166
+#: cp/init.cc:3181
 #, gcc-internal-format
 msgid "array size in new-expression must be constant"
 msgstr ""
 
-#: cp/init.cc:3184
+#: cp/init.cc:3199
 #, gcc-internal-format
 msgid "variably modified type not allowed in new-expression"
 msgstr ""
 
-#: cp/init.cc:3200
+#: cp/init.cc:3215
 #, gcc-internal-format
 msgid ""
 "non-constant array new length must be specified directly, not by %<typedef%>"
 msgstr ""
 
-#: cp/init.cc:3202
+#: cp/init.cc:3217
 #, gcc-internal-format
 msgid ""
 "non-constant array new length must be specified without parentheses around "
 "the type-id"
 msgstr ""
 
-#: cp/init.cc:3212
+#: cp/init.cc:3227
 #, gcc-internal-format
 msgid "invalid type %<void%> for %<new%>"
 msgstr ""
 
-#: cp/init.cc:3218
+#: cp/init.cc:3233
 #, gcc-internal-format
 msgid ""
 "%<new%> of %<initializer_list%> does not extend the lifetime of the "
 "underlying array"
 msgstr ""
 
-#: cp/init.cc:3260
+#: cp/init.cc:3275
 #, gcc-internal-format
 msgid "uninitialized const in %<new%> of %q#T"
 msgstr ""
 
-#: cp/init.cc:3416
+#: cp/init.cc:3431
 #, gcc-internal-format
 msgid "no suitable %qD found in class %qT"
 msgstr ""
 
-#: cp/init.cc:3506
+#: cp/init.cc:3521
 #, gcc-internal-format
 msgid "%<new%> of type %qT with extended alignment %d"
 msgstr ""
 
-#: cp/init.cc:3509
+#: cp/init.cc:3524
 #, gcc-internal-format
 msgid "uses %qD, which does not have an alignment parameter"
 msgstr ""
 
-#: cp/init.cc:3512
+#: cp/init.cc:3527
 #, gcc-internal-format
 msgid "use %<-faligned-new%> to enable C++17 over-aligned new support"
 msgstr ""
 
-#: cp/init.cc:3708
+#: cp/init.cc:3785
 #, gcc-internal-format
 msgid "parenthesized initializer in array new"
 msgstr ""
 
-#: cp/init.cc:3993
+#: cp/init.cc:4077
 #, gcc-internal-format
 msgid "size in array new must have integral type"
 msgstr ""
 
-#: cp/init.cc:4022
+#: cp/init.cc:4106
 #, gcc-internal-format
 msgid "new cannot be applied to a reference type"
 msgstr ""
 
-#: cp/init.cc:4031
+#: cp/init.cc:4115
 #, gcc-internal-format
 msgid "new cannot be applied to a function type"
 msgstr ""
 
-#: cp/init.cc:4158
+#: cp/init.cc:4242
 #, gcc-internal-format
 msgid "operator %<delete []%> used on incomplete type"
 msgstr ""
 
-#: cp/init.cc:4173
+#: cp/init.cc:4257
 #, gcc-internal-format
 msgid "possible problem detected in invocation of operator %<delete []%>"
 msgstr ""
 
-#: cp/init.cc:4177
+#: cp/init.cc:4262
 #, gcc-internal-format
 msgid ""
 "neither the destructor nor the class-specific operator %<delete []%> will be "
 "called, even if they are declared when the class is defined"
 msgstr ""
 
-#: cp/init.cc:4912
+#: cp/init.cc:5007
 #, gcc-internal-format
 msgid "initializer ends prematurely"
 msgstr ""
 
-#: cp/init.cc:5225
+#: cp/init.cc:5321
 #, gcc-internal-format
 msgid "unknown array size in delete"
 msgstr ""
 
-#: cp/init.cc:5262
+#: cp/init.cc:5358
 #, gcc-internal-format
 msgid "operator %<delete%> used on incomplete type"
 msgstr ""
 
-#: cp/init.cc:5277
+#: cp/init.cc:5373
 #, gcc-internal-format
 msgid "possible problem detected in invocation of %<operator delete%>"
 msgstr ""
 
-#: cp/init.cc:5282
+#: cp/init.cc:5379
 #, gcc-internal-format
 msgid ""
 "neither the destructor nor the class-specific %<operator delete%> will be "
 "called, even if they are declared when the class is defined"
 msgstr ""
 
-#: cp/init.cc:5297
+#: cp/init.cc:5394
 #, gcc-internal-format
 msgid ""
 "deleting object of abstract class type %qT which has non-virtual destructor "
 "will cause undefined behavior"
 msgstr ""
 
-#: cp/init.cc:5302
+#: cp/init.cc:5399
 #, gcc-internal-format
 msgid ""
 "deleting object of polymorphic class type %qT which has non-virtual "
 "destructor might cause undefined behavior"
 msgstr ""
 
-#: cp/init.cc:5616
+#: cp/init.cc:5713
 #, gcc-internal-format
 msgid "type to vector delete is neither pointer or array type"
 msgstr ""
 
-#: cp/lambda.cc:567
+#: cp/lambda.cc:594
 #, gcc-internal-format
 msgid "array of runtime bound cannot be captured by copy, only by reference"
 msgstr ""
 
-#: cp/lambda.cc:584
+#: cp/lambda.cc:611
 #, gcc-internal-format
 msgid ""
 "capture of variably-modified type %qT that is not an N3639 array of runtime "
 "bound"
 msgstr ""
 
-#: cp/lambda.cc:588
+#: cp/lambda.cc:615
 #, gcc-internal-format
 msgid "because the array element type %qT has variable size"
 msgstr ""
 
-#: cp/lambda.cc:612
+#: cp/lambda.cc:639
 #, gcc-internal-format
 msgid "cannot capture %qE by reference"
 msgstr ""
 
-#: cp/lambda.cc:623
+#: cp/lambda.cc:650
 #, gcc-internal-format
 msgid "capture by copy of incomplete type %qT"
 msgstr ""
 
-#: cp/lambda.cc:638
+#: cp/lambda.cc:665
 #, gcc-internal-format
 msgid "captured structured bindings are a C++20 extension"
 msgstr ""
 
-#: cp/lambda.cc:705
+#: cp/lambda.cc:732
 #, gcc-internal-format
 msgid "trying to capture %qD in instantiation of generic lambda"
 msgstr ""
 
-#: cp/lambda.cc:782
+#: cp/lambda.cc:809
 #, gcc-internal-format
 msgid "implicit capture of %qE via %<[=]%> is deprecated in C++20"
 msgstr ""
 
-#: cp/lambda.cc:784
+#: cp/lambda.cc:811
 #, gcc-internal-format
 msgid "add explicit %<this%> or %<*this%> capture"
 msgstr ""
 
-#: cp/lambda.cc:911
+#: cp/lambda.cc:946
 #, gcc-internal-format
 msgid "%<this%> was not captured for this lambda function"
 msgstr ""
 
-#: cp/lambda.cc:1581
+#: cp/lambda.cc:1630
 #, gcc-internal-format
 msgid "the mangled name of %qT changed in %<-fabi-version=20%> (GCC 15.1)"
 msgstr ""
 
-#: cp/lambda.cc:1585
+#: cp/lambda.cc:1634
 #, gcc-internal-format
 msgid "the mangled name of %qT changes in %<-fabi-version=20%> (GCC 15.1)"
 msgstr ""
 
-#: cp/lex.cc:643
+#: cp/lambda.cc:1942
+#, gcc-internal-format
+msgid "%qD is no longer captured in noexcept lambda in ABI v21 (GCC 16)"
+msgstr ""
+
+#: cp/lex.cc:701
 #, gcc-internal-format
 msgid "invalid %<#pragma %s%>"
 msgstr ""
 
-#: cp/lex.cc:651
+#: cp/lex.cc:709
 #, gcc-internal-format
 msgid "%<#pragma vtable%> no longer supported"
 msgstr ""
 
-#: cp/lex.cc:723
+#: cp/lex.cc:781
 #, gcc-internal-format
 msgid "%<#pragma implementation%> for %qs appears after file is included"
 msgstr ""
 
-#: cp/lex.cc:751
+#: cp/lex.cc:809
 #, gcc-internal-format
 msgid "%qD not defined"
 msgstr ""
 
-#: cp/lex.cc:753 cp/parser.cc:3922 cp/parser.cc:32272
+#: cp/lex.cc:811 cp/parser.cc:3999 cp/parser.cc:34700
 #, gcc-internal-format
 msgid "%<requires%> only available with %<-std=c++20%> or %<-fconcepts%>"
 msgstr ""
 
-#: cp/lex.cc:766
+#: cp/lex.cc:824
 #, gcc-internal-format
 msgid "%qD was not declared in this scope; did you mean %qs?"
 msgstr ""
 
-#: cp/lex.cc:770
+#: cp/lex.cc:828
 #, gcc-internal-format
 msgid "%qD was not declared in this scope"
 msgstr ""
 
-#: cp/lex.cc:813
+#: cp/lex.cc:871
 #, gcc-internal-format
 msgid ""
 "there are no arguments to %qD that depend on a template parameter, so a "
 "declaration of %qD must be available"
 msgstr ""
 
-#: cp/lex.cc:822
+#: cp/lex.cc:880
 #, gcc-internal-format
 msgid ""
 "(if you use %<-fpermissive%>, G++ will accept your code, but allowing the "
@@ -64196,12 +67013,12 @@ msgstr ""
 msgid "  # %E"
 msgstr ""
 
-#: cp/mangle.cc:2669
+#: cp/mangle.cc:2733
 #, gcc-internal-format
 msgid "mangling %<typeof%>, use %<decltype%> instead"
 msgstr ""
 
-#: cp/mangle.cc:2673
+#: cp/mangle.cc:2737
 #, gcc-internal-format
 msgid ""
 "use of built-in trait %qT in function signature; use library traits instead"
@@ -64209,154 +67026,154 @@ msgstr ""
 
 #. TODO Mangle pack indexing
 #. <https://github.com/itanium-cxx-abi/cxx-abi/issues/175>.
-#: cp/mangle.cc:2680
+#: cp/mangle.cc:2744
 #, gcc-internal-format
 msgid "mangling type pack index"
 msgstr ""
 
-#: cp/mangle.cc:3893
+#: cp/mangle.cc:4009
 #, gcc-internal-format
 msgid ""
 "use of built-in trait %qE in function signature; use library traits instead"
 msgstr ""
 
-#: cp/mangle.cc:3898
+#: cp/mangle.cc:4014
 #, gcc-internal-format, gfc-internal-format
 msgid "mangling %C"
 msgstr ""
 
-#: cp/mangle.cc:3972
+#: cp/mangle.cc:4088
 #, gcc-internal-format
 msgid "omitted middle operand to %<?:%> operand cannot be mangled"
 msgstr ""
 
-#: cp/mangle.cc:4545
+#: cp/mangle.cc:4784
 #, gcc-internal-format
 msgid ""
 "mangled name for %qD will change in C++17 because the exception "
 "specification is part of a function type"
 msgstr ""
 
-#: cp/mangle.cc:4591 cp/mangle.cc:4770
+#: cp/mangle.cc:4830 cp/mangle.cc:5009
 #, gcc-internal-format
 msgid ""
 "the mangled name of %qD changed between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)"
 msgstr ""
 
-#: cp/mangle.cc:4597 cp/mangle.cc:4776
+#: cp/mangle.cc:4836 cp/mangle.cc:5015
 #, gcc-internal-format
 msgid ""
 "the mangled name of %qD changes between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)"
 msgstr ""
 
-#: cp/mangle.cc:4923
+#: cp/mangle.cc:5162
 #, gcc-internal-format
 msgid ""
 "the mangled name of a thunk for %qD changes between %<-fabi-version=%d%> and "
 "%<-fabi-version=%d%>"
 msgstr ""
 
-#: cp/mangle.cc:4928
+#: cp/mangle.cc:5167
 #, gcc-internal-format
 msgid ""
 "the mangled name of %qD changes between %<-fabi-version=%d%> and %<-fabi-"
 "version=%d%>"
 msgstr ""
 
-#: cp/mangle.cc:4933
+#: cp/mangle.cc:5172
 #, gcc-internal-format
 msgid ""
 "the mangled name of the initialization guard variable for %qD changes "
 "between %<-fabi-version=%d%> and %<-fabi-version=%d%>"
 msgstr ""
 
-#: cp/mapper-client.cc:317
+#: cp/mapper-client.cc:299
 #, gcc-internal-format
 msgid "failed %s mapper %qs line %u"
 msgstr ""
 
-#: cp/mapper-client.cc:318
+#: cp/mapper-client.cc:300
 #, gcc-internal-format
 msgid "failed %s mapper %qs"
 msgstr ""
 
-#: cp/mapper-client.cc:330
+#: cp/mapper-client.cc:312
 #, gcc-internal-format, gfc-internal-format
 msgid "failed mapper handshake %s"
 msgstr ""
 
-#: cp/mapper-client.cc:364
+#: cp/mapper-client.cc:346
 #, gcc-internal-format, gfc-internal-format
 msgid "mapper died by signal %s"
 msgstr ""
 
-#: cp/mapper-client.cc:367
+#: cp/mapper-client.cc:349
 #, gcc-internal-format, gfc-internal-format
 msgid "mapper exit status %d"
 msgstr ""
 
-#: cp/method.cc:867 cp/method.cc:2601
+#: cp/method.cc:868 cp/method.cc:2731
 #, gcc-internal-format
 msgid "non-static const member %q#D, cannot use default assignment operator"
 msgstr ""
 
-#: cp/method.cc:873 cp/method.cc:2607
+#: cp/method.cc:874 cp/method.cc:2737
 #, gcc-internal-format
 msgid ""
 "non-static reference member %q#D, cannot use default assignment operator"
 msgstr ""
 
-#: cp/method.cc:963
+#: cp/method.cc:964
 #, gcc-internal-format
 msgid "%qD is not a static data member"
 msgstr ""
 
-#: cp/method.cc:964
+#: cp/method.cc:965
 #, gcc-internal-format
 msgid "determining value of %qs"
 msgstr ""
 
-#: cp/method.cc:991
+#: cp/method.cc:992
 #, gcc-internal-format
 msgid "forming type of %qs"
 msgstr ""
 
-#: cp/method.cc:1182
+#: cp/method.cc:1183
 #, gcc-internal-format
 msgid "defaulted %qD only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/method.cc:1197
+#: cp/method.cc:1198
 #, gcc-internal-format
 msgid "defaulted %qD must return %<bool%>"
 msgstr ""
 
-#: cp/method.cc:1205
+#: cp/method.cc:1206
 #, gcc-internal-format
 msgid "defaulted %qD must be %<const%>"
 msgstr ""
 
-#: cp/method.cc:1210
+#: cp/method.cc:1211
 #, gcc-internal-format
 msgid "defaulted %qD must not have %<&&%> ref-qualifier"
 msgstr ""
 
-#: cp/method.cc:1239
+#: cp/method.cc:1240
 #, gcc-internal-format
 msgid "defaulted %qD is not a friend of %qT"
 msgstr ""
 
-#: cp/method.cc:1251
+#: cp/method.cc:1252
 #, gcc-internal-format
 msgid "defaulted member %qD must have parameter type %<const %T&%>"
 msgstr ""
 
-#: cp/method.cc:1254
+#: cp/method.cc:1255
 #, gcc-internal-format
 msgid "defaulted %qD must have parameters of either type %<const %T&%> or %qT"
 msgstr ""
 
-#: cp/method.cc:1257
+#: cp/method.cc:1258
 #, gcc-internal-format
 msgid ""
 "defaulted %qD must have parameters of either type %<const %T&%> or %qT, not "
@@ -64364,162 +67181,219 @@ msgid ""
 msgstr ""
 
 #. Return type is auto, suggest changing it.
-#: cp/method.cc:1414
+#: cp/method.cc:1415
 #, gcc-internal-format
 msgid ""
 "changing the return type from %qs to a comparison category type will allow "
 "the comparison to use %qs and %qs"
 msgstr ""
 
-#: cp/method.cc:1434
+#: cp/method.cc:1435
 #, gcc-internal-format
 msgid ""
 "three-way comparison of %qD has type %qT, not a comparison category type"
 msgstr ""
 
-#: cp/method.cc:1443
+#: cp/method.cc:1444
 #, gcc-internal-format
 msgid "three-way comparison of %qD has type %qT, which does not convert to %qT"
 msgstr ""
 
-#: cp/method.cc:1488
+#: cp/method.cc:1489
 #, gcc-internal-format
 msgid "cannot default compare union %qT"
 msgstr ""
 
-#: cp/method.cc:1556
+#: cp/method.cc:1557
 #, gcc-internal-format
 msgid "cannot default compare reference member %qD"
 msgstr ""
 
-#: cp/method.cc:1565
+#: cp/method.cc:1566
 #, gcc-internal-format
 msgid "cannot default compare anonymous union member"
 msgstr ""
 
-#: cp/method.cc:1583
+#: cp/method.cc:1584
 #, gcc-internal-format
 msgid "cannot default compare flexible array member"
 msgstr ""
 
-#: cp/method.cc:1865
+#: cp/method.cc:1869
 #, gcc-internal-format
 msgid "synthesized method %qD first required here"
 msgstr ""
 
-#: cp/method.cc:1989
+#: cp/method.cc:1951
+#, gcc-internal-format
+msgid "object cannot have qualified function type %qT"
+msgstr ""
+
+#: cp/method.cc:1998
 #, gcc-internal-format
 msgid "pointer to data member type %qT can only be invoked with one argument"
 msgstr ""
 
-#: cp/method.cc:1996
+#: cp/method.cc:2005
 #, gcc-internal-format
 msgid ""
 "pointer to member function type %qT must be invoked with at least one "
 "argument"
 msgstr ""
 
-#: cp/method.cc:2016
+#: cp/method.cc:2025
 #, gcc-internal-format
 msgid ""
 "first argument type %qT of a pointer to member must be a class type or a "
 "pointer to a class type"
 msgstr ""
 
-#: cp/method.cc:2524
+#: cp/method.cc:2319 cp/method.cc:2364
+#, gcc-internal-format
+msgid "too many initializers for non-class type %qT"
+msgstr ""
+
+#. The message may have been suppressed due to -w + -fpermissive,
+#. emit a generic response instead.
+#: cp/method.cc:2374
+#, gcc-internal-format
+msgid "the conversion is invalid"
+msgstr ""
+
+#: cp/method.cc:2399 cp/method.cc:2435
+#, gcc-internal-format
+msgid "%qT is incomplete"
+msgstr ""
+
+#: cp/method.cc:2416
+#, gcc-internal-format
+msgid "%qT is not a class or scalar type"
+msgstr ""
+
+#: cp/method.cc:2443
+#, gcc-internal-format
+msgid "%qT is a qualified function type"
+msgstr ""
+
+#: cp/method.cc:2455
+#, gcc-internal-format
+msgid "cannot construct an array of unknown bound"
+msgstr ""
+
+#: cp/method.cc:2478
+#, gcc-internal-format
+msgid "%qE is non-trivial"
+msgstr ""
+
+#: cp/method.cc:2565
+#, gcc-internal-format
+msgid "%qT is a function type"
+msgstr ""
+
+#: cp/method.cc:2654
 #, gcc-internal-format
 msgid "union member %q+D with non-trivial %qD"
 msgstr ""
 
-#: cp/method.cc:2535
+#: cp/method.cc:2665
 #, gcc-internal-format
 msgid "defaulted destructor calls non-%<constexpr%> %qD"
 msgstr ""
 
-#: cp/method.cc:2536
+#: cp/method.cc:2666
 #, gcc-internal-format
 msgid "defaulted constructor calls non-%<constexpr%> %qD"
 msgstr ""
 
-#: cp/method.cc:2624
+#: cp/method.cc:2754
 #, gcc-internal-format
 msgid "initializer for %q#D is invalid"
 msgstr ""
 
-#: cp/method.cc:2681
+#: cp/method.cc:2811
 #, gcc-internal-format
 msgid "defaulted default constructor does not initialize %q#D"
 msgstr ""
 
-#: cp/method.cc:2692
+#: cp/method.cc:2822
 #, gcc-internal-format
 msgid "copying non-static data member %q#D of rvalue reference type"
 msgstr ""
 
 #. A trivial constructor doesn't have any NSDMI.
-#: cp/method.cc:2910
+#: cp/method.cc:3040
 #, gcc-internal-format
 msgid ""
 "defaulted default constructor does not initialize any non-static data member"
 msgstr ""
 
-#: cp/method.cc:2954
+#: cp/method.cc:3086
 #, gcc-internal-format
 msgid ""
 "defaulted move assignment for %qT calls a non-trivial move assignment "
 "operator for virtual base %qT"
 msgstr ""
 
-#: cp/method.cc:3086
+#: cp/method.cc:3218
 #, gcc-internal-format
 msgid "a lambda closure type has a deleted default constructor"
 msgstr ""
 
-#: cp/method.cc:3089
+#: cp/method.cc:3221
 #, gcc-internal-format
 msgid "a lambda closure type has a deleted copy assignment operator"
 msgstr ""
 
-#: cp/method.cc:3098
+#: cp/method.cc:3230
 #, gcc-internal-format
 msgid ""
 "%q#D is implicitly declared as deleted because %qT declares a move "
 "constructor or move assignment operator"
 msgstr ""
 
-#: cp/method.cc:3109
+#: cp/method.cc:3241
 #, gcc-internal-format
 msgid "%q#D inherits from multiple base subobjects"
 msgstr ""
 
-#: cp/method.cc:3117 cp/method.cc:3141
+#: cp/method.cc:3249 cp/method.cc:3273
 #, gcc-internal-format
 msgid ""
 "%q#D is implicitly deleted because the default definition would be ill-"
 "formed:"
 msgstr ""
 
-#: cp/method.cc:3150
+#: cp/method.cc:3282
 msgid ""
 "%q#F is implicitly deleted because its exception-specification does not "
 "match the implicit exception-specification %qX"
 msgstr ""
 
-#: cp/method.cc:3573
+#: cp/method.cc:3689
+#, gcc-internal-format
+msgid "defaulted declaration %q+D does not match the expected signature"
+msgstr ""
+
+#: cp/method.cc:3691 cp/method.cc:3736
+#, gcc-internal-format
+msgid "expected signature: %qD"
+msgstr ""
+
+#: cp/method.cc:3711
 #, gcc-internal-format
 msgid ""
 "explicitly defaulted copy constructor is implicitly deleted because its "
 "declared type does not match the type of an implicit copy constructor"
 msgstr ""
 
-#: cp/method.cc:3578
+#: cp/method.cc:3716
 #, gcc-internal-format
 msgid ""
 "explicitly defaulted move constructor is implicitly deleted because its "
 "declared type does not match the type of an implicit move constructor"
 msgstr ""
 
-#: cp/method.cc:3583
+#: cp/method.cc:3721
 #, gcc-internal-format
 msgid ""
 "explicitly defaulted copy assignment operator is implicitly deleted because "
@@ -64527,7 +67401,7 @@ msgid ""
 "operator"
 msgstr ""
 
-#: cp/method.cc:3588
+#: cp/method.cc:3726
 #, gcc-internal-format
 msgid ""
 "explicitly defaulted move assignment operator is implicitly deleted because "
@@ -64535,501 +67409,540 @@ msgid ""
 "operator"
 msgstr ""
 
-#: cp/method.cc:3597
-#, gcc-internal-format
-msgid "expected signature: %qD"
-msgstr ""
-
-#: cp/method.cc:3695
+#: cp/method.cc:3834
 #, gcc-internal-format
 msgid ""
 "explicitly defaulted function %q+D cannot be declared %qs because the "
 "implicit declaration is not %qs:"
 msgstr ""
 
-#: cp/method.cc:3715
+#: cp/method.cc:3854
 #, gcc-internal-format
 msgid "a template cannot be defaulted"
 msgstr ""
 
-#: cp/method.cc:3754
+#: cp/method.cc:3893
 #, gcc-internal-format
 msgid "%qD cannot be defaulted"
 msgstr ""
 
-#: cp/method.cc:3763
+#: cp/method.cc:3902
 #, gcc-internal-format
 msgid "defaulted function %q+D with default argument"
 msgstr ""
 
-#: cp/module.cc:1605
+#: cp/module.cc:1606
 #, gcc-internal-format
 msgid "section %qs is missing or corrupted"
 msgstr ""
 
-#: cp/module.cc:1607
+#: cp/module.cc:1608
 #, gcc-internal-format, gfc-internal-format
 msgid "section #%u is missing or corrupted"
 msgstr ""
 
-#: cp/module.cc:1829
+#: cp/module.cc:1830
 #, gcc-internal-format
 msgid "not Encapsulated Lazy Records of Named Declarations"
 msgstr ""
 
-#: cp/module.cc:1844
+#: cp/module.cc:1845
 #, gcc-internal-format
 msgid "unexpected encapsulation format or type"
 msgstr ""
 
-#: cp/module.cc:1853
+#: cp/module.cc:1854
 #, gcc-internal-format
 msgid "encapsulation is malformed"
 msgstr ""
 
-#: cp/module.cc:3382
+#: cp/module.cc:3466
 #, gcc-internal-format
 msgid "unable to represent further imported source locations"
 msgstr ""
 
-#: cp/module.cc:12044
+#: cp/module.cc:6693
+#, gcc-internal-format
+msgid "%<target%> attribute currently unsupported in modules"
+msgstr ""
+
+#: cp/module.cc:6696
+#, gcc-internal-format
+msgid "%<optimize%> attribute currently unsupported in modules"
+msgstr ""
+
+#: cp/module.cc:12489
 #, gcc-internal-format
 msgid "mismatching abi tags for %qD with tags %qE"
 msgstr ""
 
-#: cp/module.cc:12048
+#: cp/module.cc:12493
 #, gcc-internal-format
 msgid "mismatching abi tags for %qD with no tags"
 msgstr ""
 
-#: cp/module.cc:12051
+#: cp/module.cc:12496
 #, gcc-internal-format
 msgid "existing declaration here with tags %qE"
 msgstr ""
 
-#: cp/module.cc:12054
+#: cp/module.cc:12499
 #, gcc-internal-format
 msgid "existing declaration here with no tags"
 msgstr ""
 
-#: cp/module.cc:12105 cp/module.cc:12229
+#: cp/module.cc:12544
 #, gcc-internal-format
-msgid "conflicting type for imported declaration %#qD"
+msgid "conflicting language linkage for imported declaration %#qD"
 msgstr ""
 
-#: cp/module.cc:12114
+#: cp/module.cc:12558 cp/module.cc:12686
 #, gcc-internal-format
-msgid "conflicting language linkage for imported declaration %#qD"
+msgid "conflicting type for imported declaration %#qD"
 msgstr ""
 
-#: cp/module.cc:12126
+#: cp/module.cc:12572
 #, gcc-internal-format
 msgid "conflicting argument list for imported declaration %#qD"
 msgstr ""
 
-#: cp/module.cc:12133
+#: cp/module.cc:12579
 #, gcc-internal-format
 msgid "conflicting argument types for imported declaration %#qD"
 msgstr ""
 
-#: cp/module.cc:12171
+#: cp/module.cc:12617
 #, gcc-internal-format
 msgid "conflicting %<noexcept%> specifier for imported declaration %#qD"
 msgstr ""
 
-#: cp/module.cc:12189
+#: cp/module.cc:12636
 #, gcc-internal-format
 msgid "conflicting deduced return type for imported declaration %#qD"
 msgstr ""
 
-#: cp/module.cc:12204
+#: cp/module.cc:12661
 #, gcc-internal-format
 msgid "conflicting %<constexpr%> for imported declaration %#qD"
 msgstr ""
 
-#: cp/module.cc:12220
+#: cp/module.cc:12677
 #, gcc-internal-format
 msgid "conflicting imported declaration %q#D"
 msgstr ""
 
-#: cp/module.cc:12246
+#: cp/module.cc:12703
 #, gcc-internal-format
 msgid "existing declaration %#qD"
 msgstr ""
 
-#: cp/module.cc:12349
+#: cp/module.cc:12806
 #, gcc-internal-format
 msgid "conflicting default argument for %#qD"
 msgstr ""
 
-#: cp/module.cc:12351 cp/module.cc:12378
+#: cp/module.cc:12808 cp/module.cc:12835
 #, gcc-internal-format
 msgid "existing default declared here"
 msgstr ""
 
-#: cp/module.cc:12375
+#: cp/module.cc:12832
 #, gcc-internal-format
 msgid "conflicting default argument for parameter %P of %#qD"
 msgstr ""
 
-#: cp/module.cc:13434
+#: cp/module.cc:13957
 #, gcc-internal-format
 msgid "definition of %qD does not match"
 msgstr ""
 
-#: cp/module.cc:13436
+#: cp/module.cc:13959
 #, gcc-internal-format
 msgid "existing definition %qD"
 msgstr ""
 
-#: cp/module.cc:13448
+#: cp/module.cc:13971
 #, gcc-internal-format
 msgid "enumerator %qD does not match ..."
 msgstr ""
 
-#: cp/module.cc:13450
+#: cp/module.cc:13973
 #, gcc-internal-format
 msgid "... this enumerator %qD"
 msgstr ""
 
-#: cp/module.cc:13456
+#: cp/module.cc:13979
 #, gcc-internal-format
 msgid "additional enumerators beginning with %qD"
 msgstr ""
 
-#: cp/module.cc:13460
+#: cp/module.cc:13983
 #, gcc-internal-format
 msgid "enumeration range differs"
 msgstr ""
 
-#: cp/module.cc:13673
+#: cp/module.cc:14200
 #, gcc-internal-format
 msgid "%qD is an alias of TU-local type %qT"
 msgstr ""
 
-#: cp/module.cc:13691
+#: cp/module.cc:14218
 #, gcc-internal-format
 msgid "%qD is a specialization of TU-local template %qD"
 msgstr ""
 
-#: cp/module.cc:13715
+#: cp/module.cc:14242
 #, gcc-internal-format
 msgid "%qD declared with internal linkage"
 msgstr ""
 
-#: cp/module.cc:13733
+#: cp/module.cc:14260
 #, gcc-internal-format
 msgid "%qD has no linkage and is declared in an anonymous namespace"
 msgstr ""
 
-#: cp/module.cc:13745
+#: cp/module.cc:14272
 #, gcc-internal-format
 msgid "%qD has no linkage and is declared within TU-local entity %qT"
 msgstr ""
 
-#: cp/module.cc:13756
+#: cp/module.cc:14283
 #, gcc-internal-format
 msgid "%qD has no linkage and is declared within TU-local entity %qD"
 msgstr ""
 
-#: cp/module.cc:13788
+#: cp/module.cc:14315
 #, gcc-internal-format
 msgid ""
 "%qT has no name and cannot be differentiated from similar lambdas in other "
 "TUs"
 msgstr ""
 
-#: cp/module.cc:13797
+#: cp/module.cc:14324
 #, gcc-internal-format
 msgid ""
 "%qT has no name and is not defined within a class, function, or initializer"
 msgstr ""
 
-#: cp/module.cc:13833
+#: cp/module.cc:14360
 #, gcc-internal-format
 msgid "%qD has TU-local template argument %qD"
 msgstr ""
 
-#: cp/module.cc:13845
+#: cp/module.cc:14372
 #, gcc-internal-format
 msgid "%qD has TU-local template argument %qT"
 msgstr ""
 
-#: cp/module.cc:13897
+#: cp/module.cc:14424
 #, gcc-internal-format
 msgid "%qD refers to TU-local object %qD"
 msgstr ""
 
-#: cp/module.cc:13899
+#: cp/module.cc:14426
 #, gcc-internal-format
 msgid "%qD refers to TU-local function %qD"
 msgstr ""
 
-#: cp/module.cc:15021
+#: cp/module.cc:14456 cp/module.cc:14493
+#, gcc-internal-format
+msgid "instantiation exposes TU-local entity %qD"
+msgstr ""
+
+#: cp/module.cc:15827 cp/module.cc:15837
 #, gcc-internal-format
 msgid "%qD exposes TU-local entity %qD"
 msgstr ""
 
-#: cp/module.cc:15032
+#: cp/module.cc:15842
 #, gcc-internal-format
-msgid "%qD is declared %<constexpr%> and is initialized to a TU-local value"
+msgid "%qD is also TU-local but has been exposed elsewhere"
 msgstr ""
 
-#: cp/module.cc:15070
+#: cp/module.cc:15895
+#, gcc-internal-format
+msgid ""
+"%qD refers to TU-local entity %qD, which may cause issues when instantiating "
+"in other TUs"
+msgstr ""
+
+#: cp/module.cc:15905
 #, gcc-internal-format
 msgid ""
 "%qD refers to TU-local entity %qD and cannot be instantiated in other TUs"
 msgstr ""
 
-#: cp/module.cc:15667
+#: cp/module.cc:15963
+#, gcc-internal-format
+msgid "%qD is declared %<constexpr%> and is initialized to a TU-local value"
+msgstr ""
+
+#: cp/module.cc:15970
+#, gcc-internal-format
+msgid ""
+"%qD is a reference declared %<inline%> and is constant-initialized to a TU-"
+"local value"
+msgstr ""
+
+#: cp/module.cc:16601
 #, gcc-internal-format
 msgid "recursive lazy load"
 msgstr ""
 
-#: cp/module.cc:15687
+#: cp/module.cc:16619
 #, gcc-internal-format
-msgid "cannot import module in its own purview"
+msgid "module %qs depends on itself"
 msgstr ""
 
-#: cp/module.cc:15688 cp/module.cc:21270
+#: cp/module.cc:16621 cp/module.cc:22712
 #, gcc-internal-format
 msgid "module %qs declared here"
 msgstr ""
 
-#: cp/module.cc:16037
+#: cp/module.cc:16973
 #, gcc-internal-format
 msgid "indirect import %qs is not already loaded"
 msgstr ""
 
-#: cp/module.cc:16043
+#: cp/module.cc:16979
 #, gcc-internal-format
 msgid "import %qs has CRC mismatch"
 msgstr ""
 
-#: cp/module.cc:18810
+#: cp/module.cc:20041
 #, gcc-internal-format
 msgid "not exporting %<#define %E%> as it is a keyword"
 msgstr ""
 
-#: cp/module.cc:19050
+#: cp/module.cc:20281
 #, gcc-internal-format
 msgid "macro definitions of %qE corrupted"
 msgstr ""
 
-#: cp/module.cc:19075 cp/module.cc:19078
+#: cp/module.cc:20306 cp/module.cc:20309
 #, gcc-internal-format
 msgid "inconsistent imported macro definition %qE"
 msgstr ""
 
-#: cp/module.cc:19084
+#: cp/module.cc:20315
 #, gcc-internal-format
 msgid "%<#undef %E%>"
 msgstr ""
 
-#: cp/module.cc:19086
+#: cp/module.cc:20317
 #, gcc-internal-format
 msgid "%<#define %s%>"
 msgstr ""
 
-#: cp/module.cc:19418
+#: cp/module.cc:20651
 #, gcc-internal-format
 msgid "compiled module file is %qs"
 msgstr ""
 
-#: cp/module.cc:19456 cp/module.cc:19461
+#: cp/module.cc:20691 cp/module.cc:20696
 #, gcc-internal-format, gfc-internal-format
 msgid "compiled module is %sversion %s"
 msgstr ""
 
-#: cp/module.cc:19467
+#: cp/module.cc:20702
 #, gcc-internal-format, gfc-internal-format
 msgid "compiler is %sversion %s%s%s"
 msgstr ""
 
-#: cp/module.cc:19497
+#: cp/module.cc:20732
 #, gcc-internal-format
 msgid "module %qs found"
 msgstr ""
 
-#: cp/module.cc:19499
+#: cp/module.cc:20734
 #, gcc-internal-format
 msgid "header module expected, module %qs found"
 msgstr ""
 
-#: cp/module.cc:19500
+#: cp/module.cc:20735
 #, gcc-internal-format
 msgid "module %qs expected, header module found"
 msgstr ""
 
-#: cp/module.cc:19515
+#: cp/module.cc:20752
 #, gcc-internal-format
 msgid "module %qs CRC mismatch"
 msgstr ""
 
-#: cp/module.cc:19529
+#: cp/module.cc:20766
 #, gcc-internal-format
 msgid "target & host is %qs:%qs, expected %qs:%qs"
 msgstr ""
 
-#: cp/module.cc:19541
+#: cp/module.cc:20779
 #, gcc-internal-format
 msgid "language dialect differs %qs, expected %qs"
 msgstr ""
 
-#: cp/module.cc:19561
+#: cp/module.cc:20799
 #, gcc-internal-format
 msgid "module contains OpenMP, use %<-fopenmp%> to enable"
 msgstr ""
 
-#: cp/module.cc:19563
+#: cp/module.cc:20801
 #, gcc-internal-format
 msgid "module contains OpenMP, use %<-fopenmp%> or %<-fopenmp-simd%> to enable"
 msgstr ""
 
-#: cp/module.cc:19566
+#: cp/module.cc:20804
 #, gcc-internal-format
 msgid "module contains OpenACC, use %<-fopenacc%> to enable"
 msgstr ""
 
-#: cp/module.cc:19584
+#: cp/module.cc:20822
 #, gcc-internal-format
 msgid "fixed tree mismatch"
 msgstr ""
 
-#: cp/module.cc:19675
+#: cp/module.cc:20914
 #, gcc-internal-format
 msgid "interface partition is not exported"
 msgstr ""
 
-#: cp/module.cc:20232
+#: cp/module.cc:21487
 #, gcc-internal-format, gfc-internal-format
 msgid "failed to read compiled module cluster %u: %s"
 msgstr ""
 
-#: cp/module.cc:20271
+#: cp/module.cc:21526
 #, gcc-internal-format, gfc-internal-format
 msgid "failed to read compiled module: %s"
 msgstr ""
 
-#: cp/module.cc:20281
+#: cp/module.cc:21536
 #, gcc-internal-format
 msgid ""
 "consider using %<-fno-module-lazy%>, increasing %<-param-lazy-modules=%u%> "
 "value, or increasing the per-process file descriptor limit"
 msgstr ""
 
-#: cp/module.cc:20286
+#: cp/module.cc:21541
 #, gcc-internal-format
 msgid "imports must be built before being imported"
 msgstr ""
 
-#: cp/module.cc:20289
+#: cp/module.cc:21544
 #, gcc-internal-format
 msgid "returning to the gate for a mechanical issue"
 msgstr ""
 
-#: cp/module.cc:20610
+#: cp/module.cc:21896
 #, gcc-internal-format
 msgid "declaring %qD in module %qs conflicts with builtin in global module"
 msgstr ""
 
-#: cp/module.cc:20613
+#: cp/module.cc:21899
 #, gcc-internal-format
 msgid "declaration %qD conflicts with builtin"
 msgstr ""
 
-#: cp/module.cc:20619
+#: cp/module.cc:21905
 #, gcc-internal-format
 msgid "redeclaring %qD in module %qs conflicts with import"
 msgstr ""
 
-#: cp/module.cc:20622
+#: cp/module.cc:21908
 #, gcc-internal-format
 msgid "redeclaring %qD in global module conflicts with import"
 msgstr ""
 
-#: cp/module.cc:20627
+#: cp/module.cc:21913
 #, gcc-internal-format
 msgid "import declared attached to module %qs"
 msgstr ""
 
-#: cp/module.cc:20631
+#: cp/module.cc:21917
 #, gcc-internal-format
 msgid "import declared in global module"
 msgstr ""
 
-#: cp/module.cc:20637
+#: cp/module.cc:21923
 #, gcc-internal-format
 msgid "conflicting declaration of %qD in module %qs"
 msgstr ""
 
-#: cp/module.cc:20640
+#: cp/module.cc:21926
 #, gcc-internal-format
 msgid "conflicting declaration of %qD in global module"
 msgstr ""
 
-#: cp/module.cc:20645
+#: cp/module.cc:21931
 #, gcc-internal-format
 msgid "previously declared in module %qs"
 msgstr ""
 
-#: cp/module.cc:20649
+#: cp/module.cc:21935
 #, gcc-internal-format
 msgid "previously declared in global module"
 msgstr ""
 
-#: cp/module.cc:20788
+#: cp/module.cc:22074
 #, gcc-internal-format
 msgid ""
 "external linkage definition of %qD in header module must be declared "
 "%<inline%>"
 msgstr ""
 
-#: cp/module.cc:20803
+#: cp/module.cc:22089
 #, gcc-internal-format
 msgid "exporting declaration %qD declared in unnamed namespace"
 msgstr ""
 
-#: cp/module.cc:20810
+#: cp/module.cc:22096
 #, gcc-internal-format
 msgid "exporting declaration %qD with internal linkage"
 msgstr ""
 
-#: cp/module.cc:20963
+#: cp/module.cc:22359
 #, gcc-internal-format
 msgid "reading CMI %qs"
 msgstr ""
 
-#: cp/module.cc:21114
+#: cp/module.cc:22546
 #, gcc-internal-format
 msgid "failed to load binding %<%E%s%E%>"
 msgstr ""
 
-#: cp/module.cc:21115
+#: cp/module.cc:22547
 #, gcc-internal-format
 msgid "failed to load binding %<%E%s%E@%s%>"
 msgstr ""
 
-#: cp/module.cc:21122
+#: cp/module.cc:22554
 #, gcc-internal-format
 msgid "during load of binding %<%E%s%E%>"
 msgstr ""
 
-#: cp/module.cc:21123
+#: cp/module.cc:22555
 #, gcc-internal-format
 msgid "during load of binding %<%E%s%E@%s%>"
 msgstr ""
 
-#: cp/module.cc:21185
+#: cp/module.cc:22617
 #, gcc-internal-format
 msgid "failed to load pendings for %<%E%s%E%>"
 msgstr ""
 
-#: cp/module.cc:21189
+#: cp/module.cc:22621
 #, gcc-internal-format
 msgid "during load of pendings for %<%E%s%E%>"
 msgstr ""
 
+#: cp/module.cc:22659
+#, gcc-internal-format
+msgid "import of %qs within its own implementation unit"
+msgstr ""
+
+#: cp/module.cc:22661
+#, gcc-internal-format
+msgid "module declared here"
+msgstr ""
+
 #. Only header units should appear inside language
 #. specifications.  The std doesn't specify this, but I think
 #. that's an error in resolving US 033, because language linkage
@@ -65037,411 +67950,433 @@ msgstr ""
 #. module, so we don't want to confuse things by having to think
 #. about whether 'extern "C++" { import foo; }' puts foo's
 #. contents into the global module all of a sudden.
-#: cp/module.cc:21234
+#: cp/module.cc:22676
 #, gcc-internal-format
 msgid "import of named module %qs inside language-linkage block"
 msgstr ""
 
-#: cp/module.cc:21265
+#: cp/module.cc:22707 cp/module.cc:23245
 #, gcc-internal-format
 msgid "module already declared"
 msgstr ""
 
-#: cp/module.cc:21266
+#: cp/module.cc:22708 cp/module.cc:23246
 #, gcc-internal-format
 msgid "module already imported"
 msgstr ""
 
-#: cp/module.cc:21271
+#: cp/module.cc:22713
 #, gcc-internal-format
 msgid "module %qs imported here"
 msgstr ""
 
-#: cp/module.cc:21479
+#: cp/module.cc:22921
 #, gcc-internal-format
 msgid "mismatching compiled module interface: had %qs, got %qs"
 msgstr ""
 
-#: cp/module.cc:21485
+#: cp/module.cc:22927
 #, gcc-internal-format, gfc-internal-format
 msgid "unknown compiled module interface: %s"
 msgstr ""
 
-#: cp/module.cc:21529
+#: cp/module.cc:23031
 #, gcc-internal-format
 msgid "cannot determine %<#include%> translation of %s: %s"
 msgstr ""
 
-#: cp/module.cc:21547
+#: cp/module.cc:23071
 #, gcc-internal-format
 msgid "include %qs translated to import"
 msgstr ""
 
-#: cp/module.cc:21548
+#: cp/module.cc:23073
+#, gcc-internal-format
+msgid "import of %qs failed, falling back to include"
+msgstr ""
+
+#: cp/module.cc:23074
 #, gcc-internal-format
 msgid "include %qs processed textually"
 msgstr ""
 
-#: cp/module.cc:21908
+#: cp/module.cc:23447
 #, gcc-internal-format
 msgid "C++ modules are incompatible with precompiled headers"
 msgstr ""
 
-#: cp/module.cc:21912
+#: cp/module.cc:23451
 #, gcc-internal-format
 msgid "C++ modules are incompatible with traditional preprocessing"
 msgstr ""
 
-#: cp/module.cc:21944 cp/module.cc:21973
+#: cp/module.cc:23483 cp/module.cc:23512
 #, gcc-internal-format
 msgid "invalid header name %qs"
 msgstr ""
 
-#: cp/module.cc:21983
+#: cp/module.cc:23522
 #, gcc-internal-format
 msgid "invalid module name %qs"
 msgstr ""
 
-#: cp/module.cc:22183
+#: cp/module.cc:23722
 #, gcc-internal-format
 msgid "%<-fmodule-only%> used for non-interface"
 msgstr ""
 
-#: cp/module.cc:22223
+#: cp/module.cc:23762
 #, gcc-internal-format
 msgid "writing CMI %qs"
 msgstr ""
 
-#: cp/module.cc:22238
+#: cp/module.cc:23777
 #, gcc-internal-format
 msgid "not writing module %qs due to errors in template bodies"
 msgstr ""
 
-#: cp/module.cc:22241
+#: cp/module.cc:23780
 #, gcc-internal-format
 msgid "enable %<-Wtemplate-body%> for more details"
 msgstr ""
 
-#: cp/module.cc:22243
+#: cp/module.cc:23782
 #, gcc-internal-format
 msgid "first error in %qD appeared here"
 msgstr ""
 
-#: cp/module.cc:22307
+#: cp/module.cc:23846
 #, gcc-internal-format, gfc-internal-format
 msgid "failed to write compiled module: %s"
 msgstr ""
 
-#: cp/module.cc:22404
+#: cp/module.cc:23943
 #, gcc-internal-format
 msgid "unknown header kind %qs"
 msgstr ""
 
-#: cp/name-lookup.cc:2872 cp/name-lookup.cc:3976 cp/name-lookup.cc:4076
+#: cp/name-lookup.cc:1337
+#, gcc-internal-format
+msgid ""
+"overload set for argument-dependent lookup of %<%D::%D%> in module %qs "
+"contains TU-local entities"
+msgstr ""
+
+#: cp/name-lookup.cc:1349
+#, gcc-internal-format
+msgid "ignoring %qD declared here with internal linkage"
+msgstr ""
+
+#: cp/name-lookup.cc:2956 cp/name-lookup.cc:4076 cp/name-lookup.cc:4176
 #, gcc-internal-format
 msgid ""
 "name-independent declarations only available with %<-std=c++2c%> or %<-"
 "std=gnu++2c%>"
 msgstr ""
 
-#: cp/name-lookup.cc:2910
+#: cp/name-lookup.cc:2994
 #, gcc-internal-format
 msgid "redeclaration of %q#D with different template parameters"
 msgstr ""
 
-#: cp/name-lookup.cc:2916
+#: cp/name-lookup.cc:3000
 #, gcc-internal-format
 msgid "%q#D conflicts with a previous declaration"
 msgstr ""
 
-#: cp/name-lookup.cc:3086
+#: cp/name-lookup.cc:3170
 #, gcc-internal-format
 msgid "%q#D hides constructor for %q#D"
 msgstr ""
 
-#: cp/name-lookup.cc:3233
+#: cp/name-lookup.cc:3317
 #, gcc-internal-format
 msgid "conflicting C language linkage declaration %q#D"
 msgstr ""
 
-#: cp/name-lookup.cc:3238
+#: cp/name-lookup.cc:3322
 #, gcc-internal-format
 msgid "due to different exception specifications"
 msgstr ""
 
-#: cp/name-lookup.cc:3348
+#: cp/name-lookup.cc:3432
 #, gcc-internal-format
 msgid "lambda parameter %qD previously declared as a capture"
 msgstr ""
 
-#: cp/name-lookup.cc:3381 cp/name-lookup.cc:3385
+#: cp/name-lookup.cc:3469 cp/name-lookup.cc:3473
 #, gcc-internal-format
 msgid "declaration of %q#D shadows a parameter"
 msgstr ""
 
-#: cp/name-lookup.cc:3544
+#: cp/name-lookup.cc:3634
 #, gcc-internal-format
 msgid "declaration of %qD shadows a member of %qT"
 msgstr ""
 
-#: cp/name-lookup.cc:4061
+#: cp/name-lookup.cc:4161
 #, gcc-internal-format
 msgid "friend declaration %qD in local class without prior local declaration"
 msgstr ""
 
-#: cp/name-lookup.cc:4654
+#: cp/name-lookup.cc:4774
 #, gcc-internal-format
 msgid "%s %<%s(%E)%> %p %d"
 msgstr ""
 
-#: cp/name-lookup.cc:4657
+#: cp/name-lookup.cc:4777
 #, gcc-internal-format
 msgid "%s %s %p %d"
 msgstr ""
 
-#: cp/name-lookup.cc:5253
+#: cp/name-lookup.cc:5376
 #, gcc-internal-format
 msgid "exporting %q#D that does not have external linkage"
 msgstr ""
 
-#: cp/name-lookup.cc:5257
+#: cp/name-lookup.cc:5380
 #, gcc-internal-format
 msgid "%q#D declared here with no linkage"
 msgstr ""
 
-#: cp/name-lookup.cc:5260
+#: cp/name-lookup.cc:5383
 #, gcc-internal-format
 msgid "%q#D declared here with internal linkage"
 msgstr ""
 
-#: cp/name-lookup.cc:5263
+#: cp/name-lookup.cc:5386
 #, gcc-internal-format
 msgid "%q#D declared here with module linkage"
 msgstr ""
 
-#: cp/name-lookup.cc:6071
+#: cp/name-lookup.cc:6200
 #, gcc-internal-format
 msgid "%<%T%s%D%> names destructor"
 msgstr ""
 
-#: cp/name-lookup.cc:6087
+#: cp/name-lookup.cc:6216
 #, gcc-internal-format
 msgid "using-declaration for non-member at class scope"
 msgstr ""
 
-#: cp/name-lookup.cc:6095
+#: cp/name-lookup.cc:6224
 #, gcc-internal-format
 msgid ""
 "%<using%> with enumeration scope %q#T only available with %<-std=c++20%> or "
 "%<-std=gnu++20%>"
 msgstr ""
 
-#: cp/name-lookup.cc:6111 cp/pt.cc:18933
+#: cp/name-lookup.cc:6240 cp/pt.cc:19470
 #, gcc-internal-format
 msgid "%qT is not a class, namespace, or enumeration"
 msgstr ""
 
-#: cp/name-lookup.cc:6121
+#: cp/name-lookup.cc:6250
 #, gcc-internal-format
 msgid "non-member using-declaration names constructor of %qT"
 msgstr ""
 
-#: cp/name-lookup.cc:6132 cp/name-lookup.cc:6205
+#: cp/name-lookup.cc:6261 cp/name-lookup.cc:6334
 #, gcc-internal-format
 msgid "using-declaration for member at non-class scope"
 msgstr ""
 
-#: cp/name-lookup.cc:6155
+#: cp/name-lookup.cc:6284
 #, gcc-internal-format
 msgid "%qT is not a direct base of %qT"
 msgstr ""
 
-#: cp/name-lookup.cc:6215
+#: cp/name-lookup.cc:6344
 #, gcc-internal-format
 msgid "did you mean %<using enum %T::%D%>?"
 msgstr ""
 
-#: cp/name-lookup.cc:6227
+#: cp/name-lookup.cc:6356
 #, gcc-internal-format
 msgid "%qD has not been declared in %qD"
 msgstr ""
 
-#: cp/name-lookup.cc:6242
+#: cp/name-lookup.cc:6372
 #, gcc-internal-format
 msgid "using-declaration may not name namespace %qD"
 msgstr ""
 
-#: cp/name-lookup.cc:6253
+#: cp/name-lookup.cc:6383
 #, gcc-internal-format
 msgid "%<%T::%D%> names constructor in %qT"
 msgstr ""
 
-#: cp/name-lookup.cc:6346
+#: cp/name-lookup.cc:6476
 #, gcc-internal-format
 msgid "declaration of %qD not in a namespace surrounding %qD"
 msgstr ""
 
-#: cp/name-lookup.cc:6388
+#: cp/name-lookup.cc:6518
 #, gcc-internal-format
 msgid "explicit qualification in declaration of %qD"
 msgstr ""
 
-#: cp/name-lookup.cc:6398
+#: cp/name-lookup.cc:6528
 #, gcc-internal-format
 msgid "%qD should have been declared inside %qD"
 msgstr ""
 
-#: cp/name-lookup.cc:6468
+#: cp/name-lookup.cc:6598
 #, gcc-internal-format
 msgid "%qD has not been declared within %qD"
 msgstr ""
 
-#: cp/name-lookup.cc:6470
+#: cp/name-lookup.cc:6600
 #, gcc-internal-format
 msgid "only here as a %<friend%>"
 msgstr ""
 
-#: cp/name-lookup.cc:6524
+#: cp/name-lookup.cc:6655
 #, gcc-internal-format
 msgid "%qD attribute requires a single NTBS argument"
 msgstr ""
 
-#: cp/name-lookup.cc:6531
+#: cp/name-lookup.cc:6662
 #, gcc-internal-format
 msgid ""
 "%qD attribute is meaningless since members of the anonymous namespace get "
 "local symbols"
 msgstr ""
 
-#: cp/name-lookup.cc:6541 cp/name-lookup.cc:6568
+#: cp/name-lookup.cc:6673 cp/name-lookup.cc:6701
 #, gcc-internal-format
 msgid "ignoring %qD attribute on anonymous namespace"
 msgstr ""
 
-#: cp/name-lookup.cc:6547
+#: cp/name-lookup.cc:6679
 #, gcc-internal-format
 msgid "ignoring %qD attribute on non-inline namespace"
 msgstr ""
 
-#: cp/name-lookup.cc:6584 cp/name-lookup.cc:9005
+#: cp/name-lookup.cc:6726 cp/name-lookup.cc:9214
 #, gcc-internal-format
 msgid "%qD attribute directive ignored"
 msgstr ""
 
-#: cp/name-lookup.cc:6913
+#: cp/name-lookup.cc:7056
 #, gcc-internal-format
 msgid "maximum limit of %d namespaces searched for %qE"
 msgstr ""
 
-#: cp/name-lookup.cc:6965
+#: cp/name-lookup.cc:7108
 #, gcc-internal-format
 msgid "suggested alternative:"
 msgid_plural "suggested alternatives:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/name-lookup.cc:6971
+#: cp/name-lookup.cc:7114
 #, gcc-internal-format
 msgid "  %qE"
 msgstr ""
 
-#: cp/name-lookup.cc:7296
+#: cp/name-lookup.cc:7444
 #, gcc-internal-format
 msgid ""
 "%<std::%s%> is defined in header %qs; this is probably fixable by adding "
 "%<#include %s%>"
 msgstr ""
 
-#: cp/name-lookup.cc:7302
+#: cp/name-lookup.cc:7450
 #, gcc-internal-format
 msgid "%<std::%s%> is only available from %s onwards"
 msgstr ""
 
-#: cp/name-lookup.cc:7740
+#: cp/name-lookup.cc:7890
 #, gcc-internal-format
 msgid "the macro %qs had not yet been defined"
 msgstr ""
 
-#: cp/name-lookup.cc:7743
+#: cp/name-lookup.cc:7893
 #, gcc-internal-format
 msgid "it was later defined here"
 msgstr ""
 
-#: cp/name-lookup.cc:8539
+#: cp/name-lookup.cc:8707
 #, gcc-internal-format
 msgid ""
 "declaration of %<std::initializer_list%> does not match %<#include "
 "<initializer_list>%>, isn%'t a template"
 msgstr ""
 
-#: cp/name-lookup.cc:8977
+#: cp/name-lookup.cc:9184
 #, gcc-internal-format
 msgid "%<strong%> using directive no longer supported"
 msgstr ""
 
-#: cp/name-lookup.cc:8980
+#: cp/name-lookup.cc:9187
 #, gcc-internal-format
 msgid "you can use an inline namespace instead"
 msgstr ""
 
-#: cp/name-lookup.cc:8999
+#: cp/name-lookup.cc:9206
 #, gcc-internal-format
 msgid "%<omp::%E%> not allowed to be specified in this context"
 msgstr ""
 
+#: cp/name-lookup.cc:9212
+#, gcc-internal-format
+msgid "annotation on using directive"
+msgstr ""
+
 #. We only allow depth 255.
-#: cp/name-lookup.cc:9091
+#: cp/name-lookup.cc:9300
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot nest more than %d namespaces"
 msgstr ""
 
-#: cp/name-lookup.cc:9193
+#: cp/name-lookup.cc:9425
 #, gcc-internal-format
 msgid "%<namespace %E%> is ambiguous"
 msgstr ""
 
-#: cp/name-lookup.cc:9209
+#: cp/name-lookup.cc:9441
 #, gcc-internal-format
 msgid "namespace alias %qD not allowed here, assuming %qD"
 msgstr ""
 
-#: cp/name-lookup.cc:9292
+#: cp/name-lookup.cc:9511
 #, gcc-internal-format
 msgid "exporting namespace %qD with internal linkage"
 msgstr ""
 
-#: cp/name-lookup.cc:9294
+#: cp/name-lookup.cc:9513
 #, gcc-internal-format
 msgid ""
 "%qD has internal linkage because it was declared in an unnamed namespace"
 msgstr ""
 
-#: cp/name-lookup.cc:9298
+#: cp/name-lookup.cc:9517
 #, gcc-internal-format
 msgid "exporting unnamed namespace"
 msgstr ""
 
-#: cp/name-lookup.cc:9308
+#: cp/name-lookup.cc:9527
 #, gcc-internal-format
 msgid "inline namespace must be specified at initial definition"
 msgstr ""
 
-#: cp/name-lookup.cc:9358
+#: cp/name-lookup.cc:9577
 #, gcc-internal-format
 msgid "%s namespace %qD conflicts with reachable definition"
 msgstr ""
 
-#: cp/name-lookup.cc:9360
+#: cp/name-lookup.cc:9579
 #, gcc-internal-format, gfc-internal-format
 msgid "reachable %s definition here"
 msgstr ""
 
-#: cp/name-lookup.cc:9403
+#: cp/name-lookup.cc:9622
 #, gcc-internal-format
 msgid "XXX entering %<pop_everything ()%>"
 msgstr ""
 
-#: cp/name-lookup.cc:9412
+#: cp/name-lookup.cc:9631
 #, gcc-internal-format
 msgid "XXX leaving %<pop_everything ()%>"
 msgstr ""
@@ -65451,1145 +68386,1197 @@ msgstr ""
 msgid "making multiple clones of %qD"
 msgstr ""
 
-#: cp/parser.cc:1122
+#: cp/parser.cc:1168
 #, gcc-internal-format
 msgid "identifier %qE is a keyword in C++11"
 msgstr ""
 
-#: cp/parser.cc:1136
+#: cp/parser.cc:1182
 #, gcc-internal-format
 msgid "identifier %qE is a keyword in C++20"
 msgstr ""
 
-#: cp/parser.cc:1686 cp/parser.cc:1699
+#: cp/parser.cc:1196
+#, gcc-internal-format
+msgid "identifier %qE is a keyword in C++26"
+msgstr ""
+
+#: cp/parser.cc:1746 cp/parser.cc:1759
 #, gcc-internal-format
 msgid "%<LEXER_DEBUGGING_ENABLED_P%> is not set to true"
 msgstr ""
 
-#: cp/parser.cc:1724 cp/parser.cc:49645
+#: cp/parser.cc:1784 cp/parser.cc:52814
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare %s%> not immediately followed by function declaration "
 "or definition"
 msgstr ""
 
-#: cp/parser.cc:1764
+#: cp/parser.cc:1824
 #, gcc-internal-format
 msgid ""
 "%<declare %s%> directive not immediately followed by function declaration or "
 "definition"
 msgstr ""
 
-#: cp/parser.cc:3348
+#: cp/parser.cc:3423
 #, gcc-internal-format
 msgid "%<#pragma%> is not allowed here"
 msgstr ""
 
-#: cp/parser.cc:3356
+#: cp/parser.cc:3431
 #, gcc-internal-format
 msgid "unexpected module directive"
 msgstr ""
 
-#: cp/parser.cc:3358
+#: cp/parser.cc:3433
 #, gcc-internal-format
 msgid ""
 "perhaps insert a line break after %qs, or other disambiguation, to prevent "
 "this being considered a module control-line"
 msgstr ""
 
-#: cp/parser.cc:3501
+#: cp/parser.cc:3578
 #, gcc-internal-format
 msgid "%<%E::%E%> has not been declared; did you mean %<%E::%s%>?"
 msgstr ""
 
-#: cp/parser.cc:3507
+#: cp/parser.cc:3584
 #, gcc-internal-format
 msgid "%<%E::%E%> has not been declared"
 msgstr ""
 
-#: cp/parser.cc:3511
+#: cp/parser.cc:3588
 #, gcc-internal-format
 msgid "%<::%E%> has not been declared"
 msgstr ""
 
-#: cp/parser.cc:3514
+#: cp/parser.cc:3591
 #, gcc-internal-format
 msgid "request for member %qE in non-class type %qT"
 msgstr ""
 
-#: cp/parser.cc:3517 cp/parser.cc:22267
+#: cp/parser.cc:3594 cp/parser.cc:23973
 #, gcc-internal-format
 msgid "%<%T::%E%> has not been declared"
 msgstr ""
 
-#: cp/parser.cc:3529
+#: cp/parser.cc:3606
 #, gcc-internal-format
 msgid "%qE has not been declared; did you mean %qs?"
 msgstr ""
 
-#: cp/parser.cc:3541
+#: cp/parser.cc:3618
 #, gcc-internal-format
 msgid "%<%E::%E%> is not a type"
 msgstr ""
 
-#: cp/parser.cc:3545
+#: cp/parser.cc:3622
 #, gcc-internal-format
 msgid "%<%E::%E%> is not a class or namespace"
 msgstr ""
 
-#: cp/parser.cc:3550
+#: cp/parser.cc:3627
 #, gcc-internal-format
 msgid "%<%E::%E%> is not a class, namespace, or enumeration"
 msgstr ""
 
-#: cp/parser.cc:3563
+#: cp/parser.cc:3640
 #, gcc-internal-format
 msgid "%<::%E%> is not a type"
 msgstr ""
 
-#: cp/parser.cc:3566
+#: cp/parser.cc:3643
 #, gcc-internal-format
 msgid "%<::%E%> is not a class or namespace"
 msgstr ""
 
-#: cp/parser.cc:3570
+#: cp/parser.cc:3647
 #, gcc-internal-format
 msgid "%<::%E%> is not a class, namespace, or enumeration"
 msgstr ""
 
-#: cp/parser.cc:3582
+#: cp/parser.cc:3659
 #, gcc-internal-format
 msgid "%qE is not a type"
 msgstr ""
 
-#: cp/parser.cc:3585
+#: cp/parser.cc:3662
 #, gcc-internal-format
 msgid "%qE is not a class or namespace"
 msgstr ""
 
-#: cp/parser.cc:3589
+#: cp/parser.cc:3666
 #, gcc-internal-format
 msgid "%qE is not a class, namespace, or enumeration"
 msgstr ""
 
-#: cp/parser.cc:3654
+#: cp/parser.cc:3731
 #, gcc-internal-format
 msgid "new types may not be defined in a return type"
 msgstr ""
 
-#: cp/parser.cc:3656
+#: cp/parser.cc:3733
 #, gcc-internal-format
 msgid "(perhaps a semicolon is missing after the definition of %qT)"
 msgstr ""
 
-#: cp/parser.cc:3684
+#: cp/parser.cc:3761
 #, gcc-internal-format
 msgid "%qE is not a class template"
 msgstr ""
 
-#: cp/parser.cc:3686
+#: cp/parser.cc:3763 cp/parser.cc:21309
 #, gcc-internal-format
 msgid "%qE is not a template"
 msgstr ""
 
-#: cp/parser.cc:3689
+#: cp/parser.cc:3766
 #, gcc-internal-format
 msgid "invalid template-id"
 msgstr ""
 
-#: cp/parser.cc:3723
+#: cp/parser.cc:3800
 #, gcc-internal-format
 msgid "ISO C++ forbids using a floating-point literal in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3727
+#: cp/parser.cc:3804
 #, gcc-internal-format
 msgid ""
 "a cast to a type other than an integral or enumeration type cannot appear in "
 "a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3732
+#: cp/parser.cc:3809
 #, gcc-internal-format
 msgid "%<typeid%> operator cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3736
+#: cp/parser.cc:3813
 #, gcc-internal-format
 msgid "non-constant compound literals cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3740
+#: cp/parser.cc:3817
 #, gcc-internal-format
 msgid "a function call cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3744
+#: cp/parser.cc:3821
 #, gcc-internal-format
 msgid "an increment cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3748
+#: cp/parser.cc:3825
 #, gcc-internal-format
-msgid "an decrement cannot appear in a constant-expression"
+msgid "a decrement cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3752
+#: cp/parser.cc:3829
 #, gcc-internal-format
 msgid "an array reference cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3756
+#: cp/parser.cc:3833
 #, gcc-internal-format
 msgid "the address of a label cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3760
+#: cp/parser.cc:3837
 #, gcc-internal-format
 msgid "calls to overloaded operators cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3764
+#: cp/parser.cc:3841
 #, gcc-internal-format
 msgid "an assignment cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3767
+#: cp/parser.cc:3844
 #, gcc-internal-format
 msgid "a comma operator cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3771
+#: cp/parser.cc:3848
 #, gcc-internal-format
 msgid "a call to a constructor cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3775
+#: cp/parser.cc:3852
 #, gcc-internal-format
 msgid "a transaction expression cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3821
+#: cp/parser.cc:3898
 #, gcc-internal-format
 msgid "%qs cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.cc:3858
+#: cp/parser.cc:3935
 #, gcc-internal-format
 msgid ""
 "class template argument deduction is only available with %<-std=c++17%> or "
 "%<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:3863
+#: cp/parser.cc:3940
 #, gcc-internal-format
 msgid "invalid use of destructor %qD as a type"
 msgstr ""
 
 #. Something like 'unsigned A a;'
-#: cp/parser.cc:3866
+#: cp/parser.cc:3943
 #, gcc-internal-format
 msgid "invalid combination of multiple type-specifiers"
 msgstr ""
 
-#: cp/parser.cc:3879
+#: cp/parser.cc:3956
 #, gcc-internal-format
 msgid "%qE does not name a type; did you mean %qs?"
 msgstr ""
 
-#: cp/parser.cc:3883
+#: cp/parser.cc:3960
 #, gcc-internal-format
 msgid "%qE does not name a type"
 msgstr ""
 
-#: cp/parser.cc:3892
+#: cp/parser.cc:3969
 #, gcc-internal-format
 msgid ""
 "C++11 %<constexpr%> only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/parser.cc:3895
+#: cp/parser.cc:3972
 #, gcc-internal-format
 msgid ""
 "C++11 %<noexcept%> only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/parser.cc:3901
+#: cp/parser.cc:3978
 #, gcc-internal-format
 msgid "%qE is not recognized as a module control-line"
 msgstr ""
 
-#: cp/parser.cc:3904
+#: cp/parser.cc:3981
 #, gcc-internal-format
 msgid "C++20 %qE only available with %<-fmodules%>"
 msgstr ""
 
-#: cp/parser.cc:3907
+#: cp/parser.cc:3984
 #, gcc-internal-format
 msgid ""
 "C++20 %qE only available with %<-fmodules%>, which is not yet enabled with "
 "%<-std=c++20%>"
 msgstr ""
 
-#: cp/parser.cc:3913
+#: cp/parser.cc:3990
 #, gcc-internal-format
 msgid ""
 "C++11 %<thread_local%> only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/parser.cc:3916
+#: cp/parser.cc:3993
 #, gcc-internal-format
 msgid ""
 "C++20 %<constinit%> only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:3919
+#: cp/parser.cc:3996
 #, gcc-internal-format
 msgid "%<concept%> only available with %<-std=c++20%> or %<-fconcepts%>"
 msgstr ""
 
-#: cp/parser.cc:3944
+#: cp/parser.cc:4021
 #, gcc-internal-format
 msgid "(perhaps %<typename %T::%E%> was intended)"
 msgstr ""
 
-#: cp/parser.cc:3972 cp/parser.cc:3984
+#: cp/parser.cc:4049 cp/parser.cc:4061
 #, gcc-internal-format
 msgid "%qE in namespace %qE does not name a template type; did you mean %qs?"
 msgstr ""
 
-#: cp/parser.cc:3977 cp/parser.cc:3989
+#: cp/parser.cc:4054 cp/parser.cc:4066
 #, gcc-internal-format
 msgid "%qE in namespace %qE does not name a template type"
 msgstr ""
 
-#: cp/parser.cc:3997
+#: cp/parser.cc:4074
 #, gcc-internal-format
 msgid "%qE in namespace %qE does not name a type; did you mean %qs?"
 msgstr ""
 
-#: cp/parser.cc:4002
+#: cp/parser.cc:4079
 #, gcc-internal-format
 msgid "%qE in namespace %qE does not name a type"
 msgstr ""
 
-#: cp/parser.cc:4013
+#: cp/parser.cc:4090
 #, gcc-internal-format
 msgid "%<%T::%E%> names the constructor, not the type"
 msgstr ""
 
-#: cp/parser.cc:4016
+#: cp/parser.cc:4093
 #, gcc-internal-format
 msgid "and %qT has no template constructors"
 msgstr ""
 
-#: cp/parser.cc:4026
+#: cp/parser.cc:4103
 #, gcc-internal-format
 msgid ""
 "need %<typename%> before %<%T::%D::%E%> because %<%T::%D%> is a dependent "
 "scope"
 msgstr ""
 
-#: cp/parser.cc:4034
+#: cp/parser.cc:4111
 #, gcc-internal-format
 msgid "need %<typename%> before %<%T::%E%> because %qT is a dependent scope"
 msgstr ""
 
-#: cp/parser.cc:4047 cp/parser.cc:4051
+#: cp/parser.cc:4124 cp/parser.cc:4128
 #, gcc-internal-format
 msgid "%qE in %q#T does not name a template type"
 msgstr ""
 
-#: cp/parser.cc:4055
+#: cp/parser.cc:4132
 #, gcc-internal-format
 msgid "%qE in %q#T does not name a type"
 msgstr ""
 
-#: cp/parser.cc:4760
+#: cp/parser.cc:4887
 #, gcc-internal-format
 msgid "expected string-literal"
 msgstr ""
 
-#: cp/parser.cc:4832
+#: cp/parser.cc:4959
 #, gcc-internal-format
 msgid ""
 "inconsistent user-defined literal suffixes %qD and %qD in string literal"
 msgstr ""
 
-#: cp/parser.cc:4851
+#: cp/parser.cc:4978
 #, gcc-internal-format
 msgid "concatenation of string literals with conflicting encoding prefixes"
 msgstr ""
 
-#: cp/parser.cc:5072
+#: cp/parser.cc:5199
 #, gcc-internal-format
 msgid "unable to find character literal operator %qD with %qT argument"
 msgstr ""
 
-#: cp/parser.cc:5178
+#: cp/parser.cc:5305
 #, gcc-internal-format
 msgid "integer literal exceeds range of %qT type"
 msgstr ""
 
-#: cp/parser.cc:5185
+#: cp/parser.cc:5312
 #, gcc-internal-format
 msgid "floating literal exceeds range of %qT type"
 msgstr ""
 
-#: cp/parser.cc:5189
+#: cp/parser.cc:5316
 #, gcc-internal-format
 msgid "floating literal truncated to zero"
 msgstr ""
 
-#: cp/parser.cc:5218
+#: cp/parser.cc:5345
 #, gcc-internal-format
 msgid "failed to translate literal to execution character set %qT"
 msgstr ""
 
-#: cp/parser.cc:5254
+#: cp/parser.cc:5381
 #, gcc-internal-format
 msgid "unable to find numeric literal operator %qD"
 msgstr ""
 
-#: cp/parser.cc:5260
+#: cp/parser.cc:5387
 #, gcc-internal-format
 msgid ""
 "add %<using namespace std::complex_literals%> (from %<<complex>%>) to enable "
 "the C++14 user-defined literal suffixes"
 msgstr ""
 
-#: cp/parser.cc:5264
+#: cp/parser.cc:5391
 #, gcc-internal-format
 msgid "or use %<j%> instead of %<i%> for the GNU built-in suffix"
 msgstr ""
 
-#: cp/parser.cc:5268
+#: cp/parser.cc:5395
 #, gcc-internal-format
 msgid "use %<-fext-numeric-literals%> to enable more built-in suffixes"
 msgstr ""
 
-#: cp/parser.cc:5353
+#: cp/parser.cc:5480
 #, gcc-internal-format
 msgid "unable to find string literal operator %qD with %qT, %qT arguments"
 msgstr ""
 
-#: cp/parser.cc:5447
+#: cp/parser.cc:5574
 #, gcc-internal-format
 msgid "global module fragment contents must be from preprocessor inclusion"
 msgstr ""
 
-#: cp/parser.cc:5827 cp/parser.cc:5843
+#: cp/parser.cc:5978 cp/parser.cc:5994
 #, gcc-internal-format
 msgid "expected binary operator"
 msgstr ""
 
-#: cp/parser.cc:5849
+#: cp/parser.cc:6000
 #, gcc-internal-format
 msgid "expected ..."
 msgstr ""
 
-#: cp/parser.cc:5861
+#: cp/parser.cc:6012
 #, gcc-internal-format
 msgid "binary expression in operand of fold-expression"
 msgstr ""
 
-#: cp/parser.cc:5866
+#: cp/parser.cc:6017
 #, gcc-internal-format
 msgid "conditional expression in operand of fold-expression"
 msgstr ""
 
-#: cp/parser.cc:5877
+#: cp/parser.cc:6028
 #, gcc-internal-format
 msgid "mismatched operator in fold-expression"
 msgstr ""
 
-#: cp/parser.cc:5918
+#: cp/parser.cc:6069
 #, gcc-internal-format
 msgid "pack indexing only available with %<-std=c++2c%> or %<-std=gnu++2c%>"
 msgstr ""
 
-#: cp/parser.cc:5928
+#: cp/parser.cc:6079
 #, gcc-internal-format
 msgid "pack index missing"
 msgstr ""
 
-#: cp/parser.cc:6038
+#: cp/parser.cc:6151 cp/parser.cc:10117
+#, gcc-internal-format
+msgid "reflection is only available with %<-freflection%>"
+msgstr ""
+
+#: cp/parser.cc:6261
+#, gcc-internal-format
+msgid "expected a reflection of a type"
+msgstr ""
+
+#: cp/parser.cc:6339
+#, gcc-internal-format
+msgid "expected a reflection of a function template"
+msgstr ""
+
+#: cp/parser.cc:6437
+#, gcc-internal-format
+msgid "extra %<template%> in a scope splice"
+msgstr ""
+
+#: cp/parser.cc:6446
+#, gcc-internal-format
+msgid "missing %<template%> in a scope splice with template arguments"
+msgstr ""
+
+#: cp/parser.cc:6448
+#, gcc-internal-format
+msgid ""
+"%<template%> may only be omitted when the scope splice is preceded by "
+"%<typename%>"
+msgstr ""
+
+#: cp/parser.cc:6461
+#, gcc-internal-format
+msgid "expected a reflection of a class, namespace, or enumeration"
+msgstr ""
+
+#: cp/parser.cc:6622
 #, gcc-internal-format
 msgid "fixed-point types not supported in C++"
 msgstr ""
 
-#: cp/parser.cc:6128
+#: cp/parser.cc:6712
 #, gcc-internal-format
 msgid "ISO C++ forbids braced-groups within expressions"
 msgstr ""
 
-#: cp/parser.cc:6140
+#: cp/parser.cc:6724
 #, gcc-internal-format
 msgid ""
 "statement-expressions are not allowed outside functions nor in template-"
 "argument lists"
 msgstr ""
 
-#: cp/parser.cc:6180
+#: cp/parser.cc:6764
 #, gcc-internal-format
 msgid "fold-expressions only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:6241 cp/parser.cc:6396 cp/parser.cc:6585 cp/semantics.cc:4783
+#: cp/parser.cc:6830 cp/parser.cc:7001 cp/parser.cc:7200 cp/semantics.cc:4865
 #, gcc-internal-format
 msgid "expected primary-expression"
 msgstr ""
 
-#: cp/parser.cc:6271
+#: cp/parser.cc:6863
 #, gcc-internal-format
 msgid "%<this%> may not be used in this context"
 msgstr ""
 
-#: cp/parser.cc:6390
+#: cp/parser.cc:6985
 #, gcc-internal-format
 msgid "a template declaration cannot appear at block scope"
 msgstr ""
 
-#: cp/parser.cc:6540
+#: cp/parser.cc:7145
 #, gcc-internal-format
 msgid "parameter %qD may not appear in this context"
 msgstr ""
 
-#: cp/parser.cc:6541
+#: cp/parser.cc:7146
 #, gcc-internal-format
 msgid "local variable %qD may not appear in this context"
 msgstr ""
 
-#: cp/parser.cc:6613
+#: cp/parser.cc:7192
+#, gcc-internal-format
+msgid "reflection is only available in C++26 with %<-freflection%>"
+msgstr ""
+
+#: cp/parser.cc:7229
 #, gcc-internal-format
 msgid "expected %qs keyword before dependent template name"
 msgstr ""
 
-#: cp/parser.cc:6757
+#: cp/parser.cc:7373
 #, gcc-internal-format
 msgid "expected id-expression"
 msgstr ""
 
-#: cp/parser.cc:6922
+#: cp/parser.cc:7538
 #, gcc-internal-format
 msgid "scope %qT before %<~%> is not a class-name"
 msgstr ""
 
-#: cp/parser.cc:6932
+#: cp/parser.cc:7548
 #, gcc-internal-format
 msgid "%<template%> keyword not permitted in destructor name"
 msgstr ""
 
-#: cp/parser.cc:6969 cp/parser.cc:9244
+#: cp/parser.cc:7585 cp/parser.cc:9968
 #, gcc-internal-format
 msgid "%<~auto%> only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/parser.cc:6983 cp/parser.cc:6987
+#: cp/parser.cc:7599 cp/parser.cc:7603
 #, gcc-internal-format
 msgid "template-id not allowed for destructor in C++20"
 msgstr ""
 
-#: cp/parser.cc:6989 cp/parser.cc:33504
+#: cp/parser.cc:7605 cp/parser.cc:35948
 #, gcc-internal-format
 msgid "remove the %qs"
 msgstr ""
 
-#: cp/parser.cc:7097
+#: cp/parser.cc:7727
 #, gcc-internal-format
 msgid "declaration of %<~%T%> as member of %qT"
 msgstr ""
 
-#: cp/parser.cc:7112
+#: cp/parser.cc:7742
 #, gcc-internal-format
 msgid "typedef-name %qD used as destructor declarator"
 msgstr ""
 
-#: cp/parser.cc:7155 cp/parser.cc:24869
+#: cp/parser.cc:7785 cp/parser.cc:26953
 #, gcc-internal-format
 msgid "expected unqualified-id"
 msgstr ""
 
-#: cp/parser.cc:7182 cp/typeck.cc:3189 cp/typeck.cc:3192 cp/typeck.cc:3209
+#: cp/parser.cc:7812 cp/typeck.cc:3304 cp/typeck.cc:3307 cp/typeck.cc:3324
 #, gcc-internal-format
 msgid "%qD is not a template"
 msgstr ""
 
-#: cp/parser.cc:7297
+#: cp/parser.cc:7937
 #, gcc-internal-format
 msgid "found %<:%> in nested-name-specifier, expected %<::%>"
 msgstr ""
 
-#: cp/parser.cc:7382
+#: cp/parser.cc:8025
 #, gcc-internal-format
 msgid "%<decltype%> evaluates to %qT, which is not a class or enumeration type"
 msgstr ""
 
-#: cp/parser.cc:7409
+#: cp/parser.cc:8052
 #, gcc-internal-format
 msgid "function template-id %qD in nested-name-specifier"
 msgstr ""
 
-#: cp/parser.cc:7416
+#: cp/parser.cc:8059
 #, gcc-internal-format
 msgid "concept-id %qD in nested-name-specifier"
 msgstr ""
 
-#: cp/parser.cc:7422
+#: cp/parser.cc:8065
 #, gcc-internal-format
 msgid "variable template-id %qD in nested-name-specifier"
 msgstr ""
 
-#: cp/parser.cc:7596
+#: cp/parser.cc:8240
 #, gcc-internal-format
 msgid "expected nested-name-specifier"
 msgstr ""
 
-#: cp/parser.cc:7808 cp/parser.cc:10516
+#: cp/parser.cc:8471 cp/parser.cc:11407
 #, gcc-internal-format
 msgid "types may not be defined in casts"
 msgstr ""
 
-#: cp/parser.cc:7896
+#: cp/parser.cc:8559
 #, gcc-internal-format
 msgid "types may not be defined in a %<typeid%> expression"
 msgstr ""
 
-#: cp/parser.cc:7990
+#: cp/parser.cc:8659
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_addressof%>"
 msgstr ""
 
-#: cp/parser.cc:8002 cp/pt.cc:21522
+#: cp/parser.cc:8671 cp/pt.cc:22199
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_launder%>"
 msgstr ""
 
-#: cp/parser.cc:8015
+#: cp/parser.cc:8684
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_assoc_barrier%>"
 msgstr ""
 
-#: cp/parser.cc:8041
+#: cp/parser.cc:8710
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_shufflevector%>"
 msgstr ""
 
-#: cp/parser.cc:8069 cp/pt.cc:21637
+#: cp/parser.cc:8738 cp/pt.cc:22314
 #, gcc-internal-format
 msgid ""
 "call to %<__builtin_operator_new%> does not select replaceable global "
 "allocation function"
 msgstr ""
 
-#: cp/parser.cc:8073 cp/pt.cc:21641
+#: cp/parser.cc:8742 cp/pt.cc:22318
 #, gcc-internal-format
 msgid ""
 "call to %<__builtin_operator_delete%> does not select replaceable global "
 "deallocation function"
 msgstr ""
 
-#: cp/parser.cc:8078 cp/pt.cc:21646
+#: cp/parser.cc:8747 cp/pt.cc:22323
 #, gcc-internal-format
 msgid "selected function declared here"
 msgstr ""
 
-#: cp/parser.cc:8211
+#: cp/parser.cc:8881
 #, gcc-internal-format
 msgid "ISO C++ forbids compound-literals"
 msgstr ""
 
-#: cp/parser.cc:8270
+#: cp/parser.cc:8940
 #, gcc-internal-format
 msgid "two consecutive %<[%> shall only introduce an attribute"
 msgstr ""
 
-#: cp/parser.cc:8321
+#: cp/parser.cc:8991
 #, gcc-internal-format
 msgid "types may not be defined in %<__builtin_classify_type%> calls"
 msgstr ""
 
-#: cp/parser.cc:8717 cp/parser.cc:8746
+#: cp/parser.cc:9389 cp/parser.cc:9418
 #, gcc-internal-format
 msgid "cannot use multidimensional subscript in OpenMP array section"
 msgstr ""
 
-#: cp/parser.cc:9005 cp/typeck.cc:3077
+#: cp/parser.cc:9704 cp/typeck.cc:3192
 #, gcc-internal-format
 msgid "invalid use of %qD"
 msgstr ""
 
-#: cp/parser.cc:9014
+#: cp/parser.cc:9713
 #, gcc-internal-format
 msgid "%<%D::%D%> is not a class member"
 msgstr ""
 
-#: cp/parser.cc:9296
+#: cp/parser.cc:10020
 #, gcc-internal-format
 msgid "non-scalar type"
 msgstr ""
 
-#: cp/parser.cc:9406
+#: cp/parser.cc:10079 cp/parser.cc:23421
+#, gcc-internal-format
+msgid "%<template%> must follow a nested-name-specifier"
+msgstr ""
+
+#. Oy vey, nothing worked.
+#: cp/parser.cc:10205
+#, gcc-internal-format
+msgid "%<^^%> cannot be applied to this operand"
+msgstr ""
+
+#: cp/parser.cc:10293
 #, gcc-internal-format
 msgid "ISO C++ does not allow %<alignof%> with a non-type"
 msgstr ""
 
-#: cp/parser.cc:9507
+#: cp/parser.cc:10396
 #, gcc-internal-format
 msgid "types may not be defined in %<noexcept%> expressions"
 msgstr ""
 
-#: cp/parser.cc:9566
+#: cp/parser.cc:10455
 #, gcc-internal-format
 msgid "%<co_await%> cannot be used in default arguments"
 msgstr ""
 
-#: cp/parser.cc:9791 cp/parser.cc:34822
+#: cp/parser.cc:10682 cp/parser.cc:37266
 #, gcc-internal-format
 msgid "types may not be defined in %qs expressions"
 msgstr ""
 
-#: cp/parser.cc:9856
+#: cp/parser.cc:10747
 #, gcc-internal-format
 msgid "%<__builtin_has_attribute%> with dependent argument not supported yet"
 msgstr ""
 
-#: cp/parser.cc:9942
+#: cp/parser.cc:10833
 #, gcc-internal-format
 msgid "types may not be defined in a new-expression"
 msgstr ""
 
-#: cp/parser.cc:9960
+#: cp/parser.cc:10851
 #, gcc-internal-format
 msgid "array bound forbidden after parenthesized type-id"
 msgstr ""
 
-#: cp/parser.cc:9962
+#: cp/parser.cc:10853
 #, gcc-internal-format
 msgid "try removing the parentheses around the type-id"
 msgstr ""
 
-#: cp/parser.cc:9995
+#: cp/parser.cc:10886
 #, gcc-internal-format
 msgid ""
 "initialization of new-expression for type %<auto%> requires exactly one "
 "element"
 msgstr ""
 
-#: cp/parser.cc:10040
+#: cp/parser.cc:10931
 #, gcc-internal-format
 msgid "expected expression-list or type-id"
 msgstr ""
 
-#: cp/parser.cc:10069
+#: cp/parser.cc:10960
 #, gcc-internal-format
 msgid "types may not be defined in a new-type-id"
 msgstr ""
 
-#: cp/parser.cc:10117
+#: cp/parser.cc:11008
 #, gcc-internal-format
 msgid "attributes ignored on outermost array type in new expression"
 msgstr ""
 
-#: cp/parser.cc:10213
+#: cp/parser.cc:11104
 #, gcc-internal-format
 msgid "expression in new-declarator must have integral or enumeration type"
 msgstr ""
 
-#: cp/parser.cc:10619
+#: cp/parser.cc:11510
 #, gcc-internal-format
 msgid "use of old-style cast to %q#T"
 msgstr ""
 
-#: cp/parser.cc:10769
+#: cp/parser.cc:11660
 #, gcc-internal-format
 msgid "%<>>%> operator is treated as two right angle brackets in C++11"
 msgstr ""
 
-#: cp/parser.cc:10772
+#: cp/parser.cc:11663
 #, gcc-internal-format
 msgid "suggest parentheses around %<>>%> expression"
 msgstr ""
 
-#: cp/parser.cc:10998
+#: cp/parser.cc:11897
 #, gcc-internal-format
 msgid "ISO C++ does not allow %<?:%> with omitted middle operand"
 msgstr ""
 
-#: cp/parser.cc:11322
+#: cp/parser.cc:12235
 #, gcc-internal-format
 msgid "top-level comma expression in array subscript is deprecated"
 msgstr ""
 
-#: cp/parser.cc:11470
+#: cp/parser.cc:12510
 #, gcc-internal-format
 msgid "types may not be defined within %<__builtin_offsetof%>"
 msgstr ""
 
-#: cp/parser.cc:11604
+#: cp/parser.cc:12644
 #, gcc-internal-format
 msgid "trailing argument to %<__type_pack_element%> is not a type"
 msgstr ""
 
-#: cp/parser.cc:11704
-#, gcc-internal-format
-msgid "lambda-expression in template parameter type"
-msgstr ""
-
-#: cp/parser.cc:11714
+#: cp/parser.cc:12745
 #, gcc-internal-format
 msgid ""
 "lambda-expression in unevaluated context only available with %<-std=c++20%> "
 "or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:11724
+#: cp/parser.cc:12755
 #, gcc-internal-format
 msgid ""
 "lambda-expression in template-argument only available with %<-std=c++20%> or "
 "%<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:11898
+#: cp/parser.cc:12956
 #, gcc-internal-format
 msgid "non-local lambda expression cannot have a capture-default"
 msgstr ""
 
-#: cp/parser.cc:11921
+#: cp/parser.cc:12979
 #, gcc-internal-format
 msgid "expected end of capture-list"
 msgstr ""
 
-#: cp/parser.cc:11937
+#: cp/parser.cc:12995
 #, gcc-internal-format
 msgid ""
 "explicit by-copy capture of %<this%> with by-copy capture default only "
 "available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:11943 cp/parser.cc:11965 cp/parser.cc:12163
+#: cp/parser.cc:13001 cp/parser.cc:13023 cp/parser.cc:13221
 #, gcc-internal-format
 msgid "already captured %qD in lambda expression"
 msgstr ""
 
-#: cp/parser.cc:11959
+#: cp/parser.cc:13017
 #, gcc-internal-format
 msgid ""
 "%<*this%> capture only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:11979
+#: cp/parser.cc:13037
 #, gcc-internal-format
 msgid "%<this%> cannot be captured by reference"
 msgstr ""
 
-#: cp/parser.cc:11999
+#: cp/parser.cc:13057
 #, gcc-internal-format
 msgid ""
 "pack init-capture only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:12010
+#: cp/parser.cc:13068
 #, gcc-internal-format
 msgid "%<&%> should come before %<...%>"
 msgstr ""
 
-#: cp/parser.cc:12040
+#: cp/parser.cc:13098
 #, gcc-internal-format
 msgid ""
 "lambda capture initializers only available with %<-std=c++14%> or %<-std=gnu+"
 "+14%>"
 msgstr ""
 
-#: cp/parser.cc:12049
+#: cp/parser.cc:13107
 #, gcc-internal-format
 msgid "empty initializer for lambda init-capture"
 msgstr ""
 
-#: cp/parser.cc:12074
+#: cp/parser.cc:13132
 #, gcc-internal-format
 msgid "capture of non-variable %qE"
 msgstr ""
 
-#: cp/parser.cc:12078 cp/parser.cc:12089 cp/semantics.cc:4622
-#: cp/semantics.cc:4638
-#, gcc-internal-format
-msgid "%q#D declared here"
-msgstr ""
-
-#: cp/parser.cc:12085
+#: cp/parser.cc:13143
 #, gcc-internal-format
 msgid "capture of variable %qD with non-automatic storage duration"
 msgstr ""
 
-#: cp/parser.cc:12123
+#: cp/parser.cc:13181
 #, gcc-internal-format
 msgid "too many %<...%> in lambda capture"
 msgstr ""
 
-#: cp/parser.cc:12134
+#: cp/parser.cc:13192
 #, gcc-internal-format
 msgid "explicit by-copy capture of %qD redundant with by-copy capture default"
 msgstr ""
 
-#: cp/parser.cc:12139
+#: cp/parser.cc:13197
 #, gcc-internal-format
 msgid ""
 "explicit by-reference capture of %qD redundant with by-reference capture "
 "default"
 msgstr ""
 
-#: cp/parser.cc:12221
+#: cp/parser.cc:13289
 #, gcc-internal-format
 msgid ""
 "lambda templates are only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:12275
+#: cp/parser.cc:13343
 #, gcc-internal-format
 msgid "default argument specified for lambda parameter"
 msgstr ""
 
-#: cp/parser.cc:12298
+#: cp/parser.cc:13378
 #, gcc-internal-format
 msgid ""
 "parameter declaration before lambda declaration specifiers only optional "
 "with %<-std=c++23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: cp/parser.cc:12328 cp/pt.cc:14987
+#: cp/parser.cc:13408 cp/pt.cc:15283
 #, gcc-internal-format
 msgid ""
 "a lambda with captures may not have an explicit object parameter of an "
 "unrelated type"
 msgstr ""
 
-#: cp/parser.cc:12341
+#: cp/parser.cc:13421
 #, gcc-internal-format
 msgid "%<mutable%> lambda specifier with explicit object parameter"
 msgstr ""
 
-#: cp/parser.cc:12350
+#: cp/parser.cc:13430
 #, gcc-internal-format
 msgid ""
 "the passed in closure object will not be mutated because it is taken by value"
 msgstr ""
 
-#: cp/parser.cc:12354
+#: cp/parser.cc:13434
 #, gcc-internal-format
 msgid "declare the explicit object parameter as non-const reference instead"
 msgstr ""
 
-#: cp/parser.cc:12358
+#: cp/parser.cc:13438
 #, gcc-internal-format
 msgid "explicit object parameter is already a mutable reference"
 msgstr ""
 
-#: cp/parser.cc:12365
+#: cp/parser.cc:13445
 #, gcc-internal-format
 msgid "%<static%> lambda specifier with explicit object parameter"
 msgstr ""
 
-#: cp/parser.cc:12383
+#: cp/parser.cc:13463
 #, gcc-internal-format
 msgid "%<static%> lambda specifier with lambda capture"
 msgstr ""
 
-#: cp/parser.cc:12395
+#: cp/parser.cc:13479
 #, gcc-internal-format
 msgid ""
 "parameter declaration before lambda transaction qualifier only optional with "
 "%<-std=c++23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: cp/parser.cc:12408
+#: cp/parser.cc:13492
 #, gcc-internal-format
 msgid ""
 "parameter declaration before lambda exception specification only optional "
 "with %<-std=c++23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: cp/parser.cc:12426
+#: cp/parser.cc:13510
 #, gcc-internal-format
 msgid ""
 "parameter declaration before lambda trailing return type only optional with "
 "%<-std=c++23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: cp/parser.cc:12468
+#: cp/parser.cc:13563
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> lambda only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:13029
-#, gcc-internal-format
-msgid "preconditions cannot be statements"
-msgstr ""
-
-#: cp/parser.cc:13032
-#, gcc-internal-format
-msgid "postconditions cannot be statements"
-msgstr ""
-
-#: cp/parser.cc:13037
-#, gcc-internal-format
-msgid "assertions must be followed by %<;%>"
-msgstr ""
-
-#: cp/parser.cc:13202
+#: cp/parser.cc:14366
 #, gcc-internal-format
 msgid ""
 "label at end of compound statement only available with %<-std=c++23%> or %<-"
 "std=gnu++23%>"
 msgstr ""
 
-#: cp/parser.cc:13382 cp/parser.cc:13627
+#: cp/parser.cc:14535 cp/parser.cc:14787
 #, gcc-internal-format
 msgid "attributes at the beginning of statement are ignored"
 msgstr ""
 
-#: cp/parser.cc:13453
+#: cp/parser.cc:14606
 #, gcc-internal-format
 msgid "expected labeled-statement"
 msgstr ""
 
-#: cp/parser.cc:13502
+#: cp/parser.cc:14655
 #, gcc-internal-format
 msgid "case label %qE not within a switch statement"
 msgstr ""
 
-#: cp/parser.cc:13635
+#: cp/parser.cc:14683
+#, gcc-internal-format
+msgid "identifier label %qE in %<template for%> body"
+msgstr ""
+
+#: cp/parser.cc:14795
 #, gcc-internal-format
 msgid "need %<typename%> before %qE because %qT is a dependent scope"
 msgstr ""
 
 #. A::A a;
-#: cp/parser.cc:13641
+#: cp/parser.cc:14801
 #, gcc-internal-format
 msgid "%qE names the constructor, not the type"
 msgstr ""
 
-#: cp/parser.cc:13699
+#: cp/parser.cc:14859
 #, gcc-internal-format
 msgid "compound-statement in %<constexpr%> function"
 msgstr ""
 
-#: cp/parser.cc:13763
+#: cp/parser.cc:14923
 #, gcc-internal-format
 msgid "inner loops must be perfectly nested with %<tile%> directive"
 msgstr ""
 
-#: cp/parser.cc:13968
+#: cp/parser.cc:15128
 #, gcc-internal-format
 msgid "%<if constexpr%> only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:13990
+#: cp/parser.cc:15150
 #, gcc-internal-format
 msgid "%<if consteval%> only available with %<-std=c++23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: cp/parser.cc:14015 cp/parser.cc:14050
+#: cp/parser.cc:15175 cp/parser.cc:15210
 #, gcc-internal-format
 msgid "%<if consteval%> requires compound statement"
 msgstr ""
 
-#: cp/parser.cc:14092
+#: cp/parser.cc:15252
 #, gcc-internal-format
 msgid ""
 "init-statement in selection statements only available with %<-std=c++17%> or "
 "%<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:14260 cp/parser.cc:35334
+#: cp/parser.cc:15420 cp/parser.cc:37778
 #, gcc-internal-format
 msgid "expected selection-statement"
 msgstr ""
 
-#: cp/parser.cc:14301
+#: cp/parser.cc:15461
 #, gcc-internal-format
 msgid "condition declares an array"
 msgstr ""
 
-#: cp/parser.cc:14303
+#: cp/parser.cc:15463
 #, gcc-internal-format
 msgid "condition declares a function"
 msgstr ""
 
-#: cp/parser.cc:14344
+#: cp/parser.cc:15504
 #, gcc-internal-format
 msgid "types may not be defined in conditions"
 msgstr ""
 
 #. Anything else is an error.
-#: cp/parser.cc:14446 cp/parser.cc:24109 cp/parser.cc:26828
+#: cp/parser.cc:15606 cp/parser.cc:26174 cp/parser.cc:28940
 #, gcc-internal-format
 msgid "expected initializer"
 msgstr ""
 
-#: cp/parser.cc:14496
+#: cp/parser.cc:15656
 #, gcc-internal-format
 msgid ""
 "range-based %<for%> loops with initializer only available with %<-std=c+"
 "+20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:14758
+#: cp/parser.cc:15962
 #, gcc-internal-format
 msgid ""
 "loop variable %qD of type %qT binds to a temporary constructed from type %qT"
 msgstr ""
 
 #. rval
-#: cp/parser.cc:14765
+#: cp/parser.cc:15969
 #, gcc-internal-format
 msgid ""
 "use non-reference type %qT to make the copy explicit or %qT to prevent "
 "copying"
 msgstr ""
 
-#: cp/parser.cc:14791
+#: cp/parser.cc:15995
 #, gcc-internal-format
 msgid "loop variable %qD creates a copy from type %qT"
 msgstr ""
 
-#: cp/parser.cc:14796
+#: cp/parser.cc:16000
 #, gcc-internal-format
 msgid "use reference type to prevent copying"
 msgstr ""
 
-#: cp/parser.cc:14935
+#: cp/parser.cc:16197
 #, gcc-internal-format
 msgid "range-based %<for%> expression of type %qT has incomplete type"
 msgstr ""
 
-#: cp/parser.cc:15019
+#: cp/parser.cc:16316
 #, gcc-internal-format
 msgid ""
 "inconsistent begin/end types in range-based %<for%> statement: %qT and %qT"
 msgstr ""
 
-#: cp/parser.cc:15171 cp/parser.cc:35337
+#: cp/parser.cc:16468 cp/parser.cc:37781
 #, gcc-internal-format
 msgid "expected iteration-statement"
 msgstr ""
 
-#: cp/parser.cc:15216
+#: cp/parser.cc:16513
 #, gcc-internal-format
 msgid ""
 "alias-declaration in init-statement only available with %<-std=c++23%> or %<-"
 "std=gnu++23%>"
 msgstr ""
 
-#: cp/parser.cc:15233
+#: cp/parser.cc:16530
 #, gcc-internal-format
 msgid ""
 "range-based %<for%> loops only available with %<-std=c++11%> or %<-std=gnu+"
 "+11%>"
 msgstr ""
 
-#: cp/parser.cc:15395
+#: cp/parser.cc:16576
+#, gcc-internal-format
+msgid "%<template for%> only available with %<-std=c++2c%> or %<-std=gnu++2c%>"
+msgstr ""
+
+#: cp/parser.cc:16635
+#, gcc-internal-format
+msgid "designators in %<template for%> initializer"
+msgstr ""
+
+#: cp/parser.cc:16702
+#, gcc-internal-format
+msgid "for-range-declaration cannot be 'constinit'"
+msgstr ""
+
+#: cp/parser.cc:16872
 #, gcc-internal-format
 msgid ""
 "%<goto%> in %<constexpr%> function only available with %<-std=c++23%> or %<-"
@@ -66597,47 +69584,47 @@ msgid ""
 msgstr ""
 
 #. Issue a warning about this use of a GNU extension.
-#: cp/parser.cc:15404
+#: cp/parser.cc:16881
 #, gcc-internal-format
 msgid "ISO C++ forbids computed gotos"
 msgstr ""
 
-#: cp/parser.cc:15423 cp/parser.cc:35340
+#: cp/parser.cc:16900 cp/parser.cc:37784
 #, gcc-internal-format
 msgid "expected jump-statement"
 msgstr ""
 
-#: cp/parser.cc:15598
+#: cp/parser.cc:17075
 #, gcc-internal-format
 msgid "expected module-partition"
 msgstr ""
 
-#: cp/parser.cc:15600
+#: cp/parser.cc:17077
 #, gcc-internal-format
 msgid "expected module-name"
 msgstr ""
 
-#: cp/parser.cc:15642
+#: cp/parser.cc:17119
 #, gcc-internal-format
 msgid "module-declaration not permitted in header-unit"
 msgstr ""
 
-#: cp/parser.cc:15648
+#: cp/parser.cc:17125
 #, gcc-internal-format
 msgid "module-declaration must be at global scope"
 msgstr ""
 
-#: cp/parser.cc:15649
+#: cp/parser.cc:17126
 #, gcc-internal-format
 msgid "scope opened here"
 msgstr ""
 
-#: cp/parser.cc:15675
+#: cp/parser.cc:17152
 #, gcc-internal-format
 msgid "private module fragment"
 msgstr ""
 
-#: cp/parser.cc:15679
+#: cp/parser.cc:17156
 #, gcc-internal-format
 msgid ""
 "private module fragment only permitted in purview of module interface or "
@@ -66645,934 +69632,1022 @@ msgid ""
 msgstr ""
 
 #. Neither the first declaration, nor in a GMF.
-#: cp/parser.cc:15685
+#: cp/parser.cc:17162
 #, gcc-internal-format
 msgid ""
 "module-declaration only permitted as first declaration, or ending a global "
 "module fragment"
 msgstr ""
 
-#: cp/parser.cc:15726
+#: cp/parser.cc:17203
 #, gcc-internal-format
 msgid "post-module-declaration imports must be contiguous"
 msgstr ""
 
-#: cp/parser.cc:15728 cp/parser.cc:15737
+#: cp/parser.cc:17205 cp/parser.cc:17214
 #, gcc-internal-format
 msgid ""
 "perhaps insert a line break after %<import%>, or other disambiguation, to "
 "prevent this being considered a module control-line"
 msgstr ""
 
-#: cp/parser.cc:15736
+#: cp/parser.cc:17213
 #, gcc-internal-format
 msgid "import-declaration must be at global scope"
 msgstr ""
 
-#: cp/parser.cc:15760
+#: cp/parser.cc:17237
 #, gcc-internal-format
 msgid ""
 "import specifying a module-partition must appear after a named module-"
 "declaration"
 msgstr ""
 
-#: cp/parser.cc:15781
+#: cp/parser.cc:17258
 #, gcc-internal-format
 msgid "post-module-declaration imports must not be include-translated"
 msgstr ""
 
-#: cp/parser.cc:15784
+#: cp/parser.cc:17261
 #, gcc-internal-format
 msgid "post-module-declaration imports must not be from header inclusion"
 msgstr ""
 
-#: cp/parser.cc:15805
+#: cp/parser.cc:17282
 #, gcc-internal-format
 msgid "%qE may only occur after a module interface declaration"
 msgstr ""
 
-#: cp/parser.cc:15813
+#: cp/parser.cc:17290
 #, gcc-internal-format
 msgid "%qE may only occur once in an export declaration"
 msgstr ""
 
-#: cp/parser.cc:15834
+#: cp/parser.cc:17311
 #, gcc-internal-format
 msgid "%<export%> not part of following module-directive"
 msgstr ""
 
-#: cp/parser.cc:15873
+#: cp/parser.cc:17350
 #, gcc-internal-format
 msgid "extra %<;%> outside of a function only allowed in C++11"
 msgstr ""
 
-#: cp/parser.cc:15876
+#: cp/parser.cc:17353
 #, gcc-internal-format
 msgid "extra %<;%> outside of a function"
 msgstr ""
 
-#: cp/parser.cc:15885
+#: cp/parser.cc:17362
 #, gcc-internal-format
 msgid "extra %<;%> inside a struct only allowed in C++11"
 msgstr ""
 
-#: cp/parser.cc:15887
+#: cp/parser.cc:17364
 #, gcc-internal-format
 msgid "extra %<;%> inside a struct"
 msgstr ""
 
-#: cp/parser.cc:15895
+#: cp/parser.cc:17372
 #, gcc-internal-format
 msgid "extra %<;%> after in-class function definition"
 msgstr ""
 
-#: cp/parser.cc:16065
+#: cp/parser.cc:17543
 #, gcc-internal-format
 msgid "attributes are not permitted in this position"
 msgstr ""
 
-#: cp/parser.cc:16069
+#: cp/parser.cc:17547
 #, gcc-internal-format
 msgid "attributes may be inserted here"
 msgstr ""
 
-#: cp/parser.cc:16109
+#: cp/parser.cc:17587
 #, gcc-internal-format
 msgid "explicit specializations are not permitted here"
 msgstr ""
 
-#: cp/parser.cc:16111 cp/parser.cc:28251
+#: cp/parser.cc:17589 cp/parser.cc:30432
 #, gcc-internal-format
 msgid "a specialization is always exported alongside its primary template"
 msgstr ""
 
-#: cp/parser.cc:16124
+#: cp/parser.cc:17608
 #, gcc-internal-format
 msgid "explicit instantiations are not permitted here"
 msgstr ""
 
-#: cp/parser.cc:16140
+#: cp/parser.cc:17624
 #, gcc-internal-format
 msgid "export-declarations are not permitted here"
 msgstr ""
 
-#: cp/parser.cc:16311
+#: cp/parser.cc:17846
 #, gcc-internal-format
 msgid "%<__label__%> not at the beginning of a block"
 msgstr ""
 
-#: cp/parser.cc:16557
+#: cp/parser.cc:18094
 #, gcc-internal-format
 msgid ""
 "non-variable %qD in declaration with more than one declarator with "
 "placeholder type"
 msgstr ""
 
-#: cp/parser.cc:16576
+#: cp/parser.cc:18113
 #, gcc-internal-format
 msgid "inconsistent deduction for %qT: %qT and then %qT"
 msgstr ""
 
-#: cp/parser.cc:16597
+#: cp/parser.cc:18134
 #, gcc-internal-format
 msgid "mixing declarations and function-definitions is forbidden"
 msgstr ""
 
-#: cp/parser.cc:16622
+#: cp/parser.cc:18159
 #, gcc-internal-format
 msgid "types may not be defined in a for-range-declaration"
 msgstr ""
 
-#: cp/parser.cc:16679
+#: cp/parser.cc:18216
 #, gcc-internal-format
 msgid "initializer in range-based %<for%> loop"
 msgstr ""
 
-#: cp/parser.cc:16682
+#: cp/parser.cc:18219
 #, gcc-internal-format
 msgid "multiple declarations in range-based %<for%> loop"
 msgstr ""
 
-#: cp/parser.cc:16722
+#: cp/parser.cc:18257
+#, gcc-internal-format
+msgid "structured binding pack outside of template"
+msgstr ""
+
+#: cp/parser.cc:18260
+#, gcc-internal-format
+msgid "multiple packs in structured binding declaration"
+msgstr ""
+
+#: cp/parser.cc:18267
+#, gcc-internal-format
+msgid ""
+"structured binding packs only available with %<-std=c++2c%> or %<-std=gnu+"
+"+2c%>"
+msgstr ""
+
+#: cp/parser.cc:18286
 #, gcc-internal-format
 msgid ""
 "structured bindings with attributed identifiers only available with %<-std=c+"
 "+2c%> or %<-std=gnu++2c%>"
 msgstr ""
 
-#: cp/parser.cc:16759
+#: cp/parser.cc:18297
+#, gcc-internal-format
+msgid "annotation on structured binding"
+msgstr ""
+
+#: cp/parser.cc:18325
 #, gcc-internal-format
 msgid ""
 "structured bindings in conditions only available with %<-std=c++2c%> or %<-"
 "std=gnu++2c%>"
 msgstr ""
 
-#: cp/parser.cc:16763
+#: cp/parser.cc:18329
 #, gcc-internal-format
 msgid ""
 "structured bindings only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:16820
+#: cp/parser.cc:18409
 #, gcc-internal-format
 msgid "empty structured binding declaration"
 msgstr ""
 
-#: cp/parser.cc:16838
+#: cp/parser.cc:18427
 #, gcc-internal-format
 msgid "invalid initializer for structured binding declaration"
 msgstr ""
 
-#: cp/parser.cc:17033
+#: cp/parser.cc:18453 cp/parser.cc:18458 cp/parser.cc:26155 cp/parser.cc:26160
+#: cp/parser.cc:26164 cp/parser.cc:26168
+#, gcc-internal-format
+msgid "for-range-declaration cannot be %qs"
+msgstr ""
+
+#: cp/parser.cc:18626
 #, gcc-internal-format
 msgid "%<this%> must be the first specifier in a parameter declaration"
 msgstr ""
 
-#: cp/parser.cc:17056
+#: cp/parser.cc:18649
 #, gcc-internal-format
 msgid "%<friend%> used outside of class"
 msgstr ""
 
-#: cp/parser.cc:17094
+#: cp/parser.cc:18687
 #, gcc-internal-format
 msgid "the %<bool%> keyword is not allowed in a C++20 concept definition"
 msgstr ""
 
-#: cp/parser.cc:17097
+#: cp/parser.cc:18690
 #, gcc-internal-format
 msgid "C++20 concept definition syntax is %<concept <name> = <expr>%>"
 msgstr ""
 
-#: cp/parser.cc:17148
+#: cp/parser.cc:18741
 #, gcc-internal-format
 msgid "%<typedef%> specifier conflicts with %qs"
 msgstr ""
 
-#: cp/parser.cc:17174
+#: cp/parser.cc:18767
 #, gcc-internal-format
 msgid "%<auto%> changes meaning in C++11; please remove it"
 msgstr ""
 
-#: cp/parser.cc:17210
+#: cp/parser.cc:18803
 #, gcc-internal-format
 msgid "%qD invalid in condition"
 msgstr ""
 
-#: cp/parser.cc:17219
+#: cp/parser.cc:18812
 #, gcc-internal-format
 msgid "%qD invalid in lambda"
 msgstr ""
 
-#: cp/parser.cc:17223
+#: cp/parser.cc:18816
 #, gcc-internal-format
 msgid "%qD only valid in lambda with %<-std=c++23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: cp/parser.cc:17305
+#: cp/parser.cc:18898
 #, gcc-internal-format
 msgid "type-specifier invalid in lambda"
 msgstr ""
 
-#: cp/parser.cc:17318
+#: cp/parser.cc:18911
 #, gcc-internal-format
 msgid "standard attributes in middle of decl-specifiers"
 msgstr ""
 
-#: cp/parser.cc:17320
+#: cp/parser.cc:18913
 #, gcc-internal-format
 msgid ""
 "standard attributes must precede the decl-specifiers to apply to the "
 "declaration, or follow them to apply to the type"
 msgstr ""
 
-#: cp/parser.cc:17335
+#: cp/parser.cc:18928
 #, gcc-internal-format
 msgid "class definition may not be declared a friend"
 msgstr ""
 
-#: cp/parser.cc:17408 cp/parser.cc:29436
+#: cp/parser.cc:19001 cp/parser.cc:31664
 #, gcc-internal-format
 msgid "templates may not be %<virtual%>"
 msgstr ""
 
-#: cp/parser.cc:17427
+#: cp/parser.cc:19020
 #, gcc-internal-format
 msgid "types may not be defined in explicit-specifier"
 msgstr ""
 
-#: cp/parser.cc:17431
+#: cp/parser.cc:19024
 #, gcc-internal-format
 msgid ""
 "%<explicit(bool)%> only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:17499
+#: cp/parser.cc:19092
 #, gcc-internal-format
 msgid "invalid linkage-specification"
 msgstr ""
 
-#: cp/parser.cc:17606
+#: cp/parser.cc:19199
 #, gcc-internal-format
 msgid ""
 "%<static_assert%> without a message only available with %<-std=c++17%> or %<-"
 "std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:17636
+#: cp/parser.cc:19227
 #, gcc-internal-format
 msgid ""
 "%<static_assert%> with non-string message only available with %<-std=c++2c%> "
 "or %<-std=gnu++2c%>"
 msgstr ""
 
-#: cp/parser.cc:17840
+#: cp/parser.cc:19444
 #, gcc-internal-format
 msgid ""
 "%<decltype(auto)%> type specifier only available with %<-std=c++14%> or %<-"
 "std=gnu++14%>"
 msgstr ""
 
-#: cp/parser.cc:17853
+#: cp/parser.cc:19457
 #, gcc-internal-format
 msgid "types may not be defined in %<decltype%> expressions"
 msgstr ""
 
-#: cp/parser.cc:18029
+#: cp/parser.cc:19633
 #, gcc-internal-format
 msgid "types may not be defined in a conversion-type-id"
 msgstr ""
 
-#: cp/parser.cc:18058
+#: cp/parser.cc:19662 cp/parser.cc:19668
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in conversion operator"
 msgstr ""
 
-#: cp/parser.cc:18062
+#: cp/parser.cc:19670
 #, gcc-internal-format
 msgid ""
 "use of %<auto%> in member template conversion operator can never be deduced"
 msgstr ""
 
-#: cp/parser.cc:18146
+#: cp/parser.cc:19755
 #, gcc-internal-format
 msgid "only constructors take member initializers"
 msgstr ""
 
-#: cp/parser.cc:18173
+#: cp/parser.cc:19782
 #, gcc-internal-format
 msgid "cannot expand initializer for member %qD"
 msgstr ""
 
-#: cp/parser.cc:18185 cp/pt.cc:28283
+#: cp/parser.cc:19794 cp/pt.cc:28990
 #, gcc-internal-format
 msgid "mem-initializer for %qD follows constructor delegation"
 msgstr ""
 
-#: cp/parser.cc:18197 cp/pt.cc:28295
+#: cp/parser.cc:19806 cp/pt.cc:29002
 #, gcc-internal-format
 msgid "constructor delegation follows mem-initializer for %qD"
 msgstr ""
 
-#: cp/parser.cc:18249
+#: cp/parser.cc:19858
 #, gcc-internal-format
 msgid "anachronistic old-style base class initializer"
 msgstr ""
 
-#: cp/parser.cc:18337
+#: cp/parser.cc:19946
 #, gcc-internal-format
 msgid ""
 "keyword %<typename%> not allowed in this context (a qualified member "
 "initializer is implicitly a type)"
 msgstr ""
 
-#: cp/parser.cc:18749
+#: cp/parser.cc:20358
 #, gcc-internal-format
 msgid "space between quotes and suffix is deprecated in C++23"
 msgstr ""
 
-#: cp/parser.cc:18755
+#: cp/parser.cc:20364
 #, gcc-internal-format
 msgid "unexpected keyword; remove space between quotes and suffix identifier"
 msgstr ""
 
-#: cp/parser.cc:18761
+#: cp/parser.cc:20370
 #, gcc-internal-format
 msgid "expected suffix identifier"
 msgstr ""
 
-#: cp/parser.cc:18770
+#: cp/parser.cc:20379
 #, gcc-internal-format
 msgid "expected empty string after %<operator%> keyword"
 msgstr ""
 
-#: cp/parser.cc:18776
+#: cp/parser.cc:20385
 #, gcc-internal-format
 msgid "invalid encoding prefix in literal operator"
 msgstr ""
 
-#: cp/parser.cc:18810
+#: cp/parser.cc:20419
 #, gcc-internal-format
 msgid "expected operator"
 msgstr ""
 
-#: cp/parser.cc:18857
+#: cp/parser.cc:20466
 #, gcc-internal-format
 msgid "keyword %<export%> not implemented, and will be ignored"
 msgstr ""
 
-#: cp/parser.cc:18859
+#: cp/parser.cc:20468
 #, gcc-internal-format
 msgid "keyword %<export%> is deprecated, and is ignored"
 msgstr ""
 
-#: cp/parser.cc:18861
+#: cp/parser.cc:20470
 #, gcc-internal-format
 msgid "keyword %<export%> is enabled with %<-fmodules%>"
 msgstr ""
 
-#: cp/parser.cc:18966
+#: cp/parser.cc:20575
 #, gcc-internal-format
 msgid "invalid constrained type parameter"
 msgstr ""
 
-#: cp/parser.cc:18974
+#: cp/parser.cc:20583
 #, gcc-internal-format
 msgid "cv-qualified type parameter"
 msgstr ""
 
-#: cp/parser.cc:19090
+#: cp/parser.cc:20707
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in default template argument"
 msgstr ""
 
-#: cp/parser.cc:19326 cp/parser.cc:19412 cp/parser.cc:26576
+#: cp/parser.cc:20945 cp/parser.cc:21031 cp/parser.cc:28688
 #, gcc-internal-format
 msgid "template parameter pack %qD cannot have a default argument"
 msgstr ""
 
-#: cp/parser.cc:19330 cp/parser.cc:19416
+#: cp/parser.cc:20949 cp/parser.cc:21035
 #, gcc-internal-format
 msgid "template parameter packs cannot have default arguments"
 msgstr ""
 
-#: cp/parser.cc:19483
+#: cp/parser.cc:21107
 #, gcc-internal-format
 msgid "expected template-id"
 msgstr ""
 
-#: cp/parser.cc:19546
+#: cp/parser.cc:21180
 #, gcc-internal-format
 msgid "%<<::%> cannot begin a template-argument list"
 msgstr ""
 
-#: cp/parser.cc:19550
+#: cp/parser.cc:21184
 #, gcc-internal-format
 msgid ""
 "%<<:%> is an alternate spelling for %<[%>. Insert whitespace between %<<%> "
 "and %<::%>"
 msgstr ""
 
-#: cp/parser.cc:19554
+#: cp/parser.cc:21188
 #, gcc-internal-format
 msgid ""
 "(if you use %<-fpermissive%> or %<-std=c++11%>, or %<-std=gnu++11%> G++ will "
 "accept your code)"
 msgstr ""
 
-#: cp/parser.cc:19585
+#: cp/parser.cc:21219
 #, gcc-internal-format
 msgid "invalid template-argument-list"
 msgstr ""
 
-#: cp/parser.cc:19586
+#: cp/parser.cc:21220
 #, gcc-internal-format
 msgid ""
 "function name as the left hand operand of %<<%> is ill-formed in C++20; wrap "
 "the function name in %<()%>"
 msgstr ""
 
-#: cp/parser.cc:19593
+#: cp/parser.cc:21227
 #, gcc-internal-format
 msgid "expected %<(%> after template-argument-list"
 msgstr ""
 
-#: cp/parser.cc:19699
+#: cp/parser.cc:21354
 #, gcc-internal-format
 msgid "parse error in template argument list"
 msgstr ""
 
 #. The name does not name a template.
-#: cp/parser.cc:19784 cp/parser.cc:19976 cp/parser.cc:20185
+#: cp/parser.cc:21439 cp/parser.cc:21631 cp/parser.cc:21840
 #, gcc-internal-format
 msgid "expected template-name"
 msgstr ""
 
-#: cp/parser.cc:19832
+#: cp/parser.cc:21487
 #, gcc-internal-format
 msgid "non-template %qD used as template"
 msgstr ""
 
-#: cp/parser.cc:19834
+#: cp/parser.cc:21489
 #, gcc-internal-format
 msgid "use %<%T::template %D%> to indicate that it is a template"
 msgstr ""
 
-#: cp/parser.cc:20049
+#: cp/parser.cc:21704
 #, gcc-internal-format
 msgid "expected parameter pack before %<...%>"
 msgstr ""
 
-#: cp/parser.cc:20150 cp/parser.cc:20168 cp/parser.cc:20344
+#: cp/parser.cc:21805 cp/parser.cc:21823 cp/parser.cc:22017
 #, gcc-internal-format
 msgid "expected template-argument"
 msgstr ""
 
-#: cp/parser.cc:20315
+#: cp/parser.cc:21970
 #, gcc-internal-format
 msgid "invalid non-type template argument"
 msgstr ""
 
-#: cp/parser.cc:20453
+#: cp/parser.cc:22008
+#, gcc-internal-format
+msgid "unparenthesized splice expression cannot be used as a template argument"
+msgstr ""
+
+#: cp/parser.cc:22126
 #, gcc-internal-format
 msgid "explicit instantiation shall not use %<inline%> specifier"
 msgstr ""
 
-#: cp/parser.cc:20457
+#: cp/parser.cc:22130
 #, gcc-internal-format
 msgid "explicit instantiation shall not use %<constexpr%> specifier"
 msgstr ""
 
-#: cp/parser.cc:20461
+#: cp/parser.cc:22134
 #, gcc-internal-format
 msgid "explicit instantiation shall not use %<consteval%> specifier"
 msgstr ""
 
-#: cp/parser.cc:20522
+#: cp/parser.cc:22195
 #, gcc-internal-format
 msgid "template specialization with C linkage"
 msgstr ""
 
-#: cp/parser.cc:20751
+#: cp/parser.cc:22431
 #, gcc-internal-format
 msgid "expected type specifier"
 msgstr ""
 
-#: cp/parser.cc:20951
+#: cp/parser.cc:22640
 #, gcc-internal-format
 msgid ""
 "use of %<auto%> in lambda parameter declaration only available with %<-std=c+"
 "+14%> or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/parser.cc:20957
-#, gcc-internal-format
-msgid "use of %<auto%> in template argument"
-msgstr ""
-
-#: cp/parser.cc:20960
+#: cp/parser.cc:22646
 #, gcc-internal-format
 msgid ""
 "use of %<auto%> in parameter declaration only available with %<-std=c++20%> "
 "or %<-fconcepts%>"
 msgstr ""
 
-#: cp/parser.cc:20964
+#: cp/parser.cc:22650
 #, gcc-internal-format
 msgid ""
 "use of %<auto%> in parameter declaration only available with %<-std=c++14%> "
 "or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/parser.cc:21118
+#: cp/parser.cc:22657 cp/parser.cc:23118
+#, gcc-internal-format
+msgid "use of %<auto%> in template argument"
+msgstr ""
+
+#: cp/parser.cc:22811
 #, gcc-internal-format
 msgid "expected template-id for type"
 msgstr ""
 
-#: cp/parser.cc:21259
+#: cp/parser.cc:22961
 #, gcc-internal-format
 msgid "expected type-name"
 msgstr ""
 
-#: cp/parser.cc:21343
+#: cp/parser.cc:23045
 #, gcc-internal-format
 msgid "%qE does not constrain a type"
 msgstr ""
 
-#: cp/parser.cc:21344
+#: cp/parser.cc:23046
 #, gcc-internal-format
 msgid "concept defined here"
 msgstr ""
 
-#: cp/parser.cc:21375
+#: cp/parser.cc:23077
 #, gcc-internal-format
 msgid "invalid use of concept-name %qD"
 msgstr ""
 
-#: cp/parser.cc:21391
+#: cp/parser.cc:23093
 #, gcc-internal-format
 msgid "expected %<auto%> or %<decltype(auto)%> after %qE"
 msgstr ""
 
-#: cp/parser.cc:21398
+#: cp/parser.cc:23100
 #, gcc-internal-format
 msgid "unexpected placeholder in constrained result type"
 msgstr ""
 
-#: cp/parser.cc:21639
+#: cp/parser.cc:23345
 #, gcc-internal-format
 msgid ""
 "elaborated-type-specifier for a scoped enum must not use the %qD keyword"
 msgstr ""
 
-#: cp/parser.cc:21715
-#, gcc-internal-format
-msgid "%<template%> must follow a nested-name-specifier"
-msgstr ""
-
-#: cp/parser.cc:21877
+#: cp/parser.cc:23583
 #, gcc-internal-format
 msgid "declaration %qD does not declare anything"
 msgstr ""
 
-#: cp/parser.cc:21965
+#: cp/parser.cc:23671
 #, gcc-internal-format
 msgid "attributes ignored on uninstantiated type"
 msgstr ""
 
-#: cp/parser.cc:21971
+#: cp/parser.cc:23677
 #, gcc-internal-format
 msgid "attributes ignored on template instantiation"
 msgstr ""
 
-#: cp/parser.cc:21983
+#: cp/parser.cc:23689
 #, gcc-internal-format
 msgid ""
 "attributes ignored on elaborated-type-specifier that is not a forward "
 "declaration"
 msgstr ""
 
-#: cp/parser.cc:22124
+#: cp/parser.cc:23830
 #, gcc-internal-format
 msgid "%qD is an enumeration template"
 msgstr ""
 
-#: cp/parser.cc:22135
+#: cp/parser.cc:23841
 #, gcc-internal-format
 msgid "%qD does not name an enumeration in %qT"
 msgstr ""
 
-#: cp/parser.cc:22150
+#: cp/parser.cc:23856
 #, gcc-internal-format
 msgid "unnamed scoped enum is not allowed"
 msgstr ""
 
-#: cp/parser.cc:22168
+#: cp/parser.cc:23874
 #, gcc-internal-format
 msgid "types may not be defined in enum-base"
 msgstr ""
 
-#: cp/parser.cc:22214
+#: cp/parser.cc:23920
 #, gcc-internal-format
 msgid ""
 "declaration of enumeration with fixed underlying type and no enumerator list "
 "is only permitted as a standalone declaration"
 msgstr ""
 
-#: cp/parser.cc:22218
+#: cp/parser.cc:23924
 #, gcc-internal-format
 msgid "expected %<;%> or %<{%>"
 msgstr ""
 
-#: cp/parser.cc:22261
+#: cp/parser.cc:23967
 #, gcc-internal-format
 msgid "cannot add an enumerator list to a template instantiation"
 msgstr ""
 
-#: cp/parser.cc:22275
+#: cp/parser.cc:23981
 #, gcc-internal-format
 msgid ""
 "nested name specifier %qT for enum declaration does not name a class or "
 "namespace"
 msgstr ""
 
-#: cp/parser.cc:22287 cp/parser.cc:28220
+#: cp/parser.cc:23993 cp/parser.cc:30401
 #, gcc-internal-format
 msgid "declaration of %qD in namespace %qD which does not enclose %qD"
 msgstr ""
 
-#: cp/parser.cc:22292 cp/parser.cc:28225
+#: cp/parser.cc:23998 cp/parser.cc:30406
 #, gcc-internal-format
 msgid "declaration of %qD in %qD which does not enclose %qD"
 msgstr ""
 
-#: cp/parser.cc:22304 cp/parser.cc:28238
+#: cp/parser.cc:24010 cp/parser.cc:30419
 #, gcc-internal-format
 msgid "extra qualification not allowed"
 msgstr ""
 
-#: cp/parser.cc:22344
+#: cp/parser.cc:24051
 #, gcc-internal-format
 msgid "ISO C++ forbids empty unnamed enum"
 msgstr ""
 
-#: cp/parser.cc:22368
+#: cp/parser.cc:24075
 #, gcc-internal-format
 msgid "opaque-enum-specifier without name"
 msgstr ""
 
-#: cp/parser.cc:22371
+#: cp/parser.cc:24078
 #, gcc-internal-format
 msgid "opaque-enum-specifier must use a simple identifier"
 msgstr ""
 
-#: cp/parser.cc:22492
+#: cp/parser.cc:24199
 #, gcc-internal-format
 msgid "unexpanded parameter pack in enumerator in lambda"
 msgstr ""
 
-#: cp/parser.cc:22567
+#: cp/parser.cc:24274
 #, gcc-internal-format
 msgid "%qD is not a namespace-name; did you mean %qs?"
 msgstr ""
 
-#: cp/parser.cc:22571
+#: cp/parser.cc:24278
 #, gcc-internal-format
 msgid "%qD is not a namespace-name"
 msgstr ""
 
-#: cp/parser.cc:22575
+#: cp/parser.cc:24282
 #, gcc-internal-format
 msgid "expected namespace-name"
 msgstr ""
 
-#: cp/parser.cc:22636
+#: cp/parser.cc:24343
 #, gcc-internal-format
 msgid ""
 "nested inline namespace definitions only available with %<-std=c++20%> or %<-"
 "std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:22648
+#: cp/parser.cc:24355
 #, gcc-internal-format
 msgid "standard attributes on namespaces must precede the namespace name"
 msgstr ""
 
-#: cp/parser.cc:22667
+#: cp/parser.cc:24374
 #, gcc-internal-format
 msgid ""
 "nested namespace definitions only available with %<-std=c++17%> or %<-"
 "std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:22677
+#: cp/parser.cc:24384
 #, gcc-internal-format
 msgid "nested namespace name required"
 msgstr ""
 
-#: cp/parser.cc:22682
+#: cp/parser.cc:24389
 #, gcc-internal-format
 msgid "namespace name required"
 msgstr ""
 
-#: cp/parser.cc:22686
+#: cp/parser.cc:24393
 #, gcc-internal-format
 msgid "a nested namespace definition cannot have attributes"
 msgstr ""
 
-#: cp/parser.cc:22689
+#: cp/parser.cc:24396
 #, gcc-internal-format
 msgid "a nested namespace definition cannot be inline"
 msgstr ""
 
-#: cp/parser.cc:22696
+#: cp/parser.cc:24403
 #, gcc-internal-format
 msgid "namespace %qD entered"
 msgstr ""
 
-#: cp/parser.cc:22752
+#: cp/parser.cc:24460
 #, gcc-internal-format
 msgid "%<namespace%> definition is not allowed here"
 msgstr ""
 
-#: cp/parser.cc:22934
+#: cp/parser.cc:24645
 #, gcc-internal-format
 msgid ""
 "pack expansion in using-declaration only available with %<-std=c++17%> or %<-"
 "std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:22978
+#: cp/parser.cc:24689
 #, gcc-internal-format
 msgid "a template-id may not appear in a using-declaration"
 msgstr ""
 
-#: cp/parser.cc:22996
+#: cp/parser.cc:24707
 #, gcc-internal-format
 msgid ""
 "comma-separated list in using-declaration only available with %<-std=c++17%> "
 "or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:23006
+#: cp/parser.cc:24717
 #, gcc-internal-format
 msgid ""
 "access declarations are deprecated in favor of using-declarations; "
 "suggestion: add the %<using%> keyword"
 msgstr ""
 
-#: cp/parser.cc:23052
+#: cp/parser.cc:24763
 #, gcc-internal-format
 msgid "%<using enum%> only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:23055
+#: cp/parser.cc:24766
 #, gcc-internal-format
 msgid "%<using enum%> of dependent type %qT"
 msgstr ""
 
-#: cp/parser.cc:23057
+#: cp/parser.cc:24768
 #, gcc-internal-format
 msgid "%<using enum%> of non-enumeration type %q#T"
 msgstr ""
 
-#: cp/parser.cc:23059
+#: cp/parser.cc:24770
 #, gcc-internal-format
 msgid "%<using enum%> of incomplete type %qT"
 msgstr ""
 
-#: cp/parser.cc:23061
+#: cp/parser.cc:24772
 #, gcc-internal-format
 msgid "%<using enum%> of %qT before its enum-specifier"
 msgstr ""
 
-#: cp/parser.cc:23071
+#: cp/parser.cc:24782
 #, gcc-internal-format
 msgid "opaque-enum-declaration here"
 msgstr ""
 
-#: cp/parser.cc:23141
+#: cp/parser.cc:24852
 #, gcc-internal-format
 msgid "types may not be defined in alias template declarations"
 msgstr ""
 
-#: cp/parser.cc:23293
+#: cp/parser.cc:25010
 #, gcc-internal-format
 msgid "expected string-literal or constexpr in parentheses"
 msgstr ""
 
-#: cp/parser.cc:23354
+#: cp/parser.cc:25071
 #, gcc-internal-format
 msgid ""
 "%<asm%> in %<constexpr%> function only available with %<-std=c++20%> or %<-"
 "std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:23375 cp/parser.cc:23393 cp/parser.cc:23408
+#: cp/parser.cc:25092 cp/parser.cc:25110 cp/parser.cc:25125
 #, gcc-internal-format
 msgid "duplicate %<asm%> qualifier %qT"
 msgstr ""
 
-#: cp/parser.cc:23382
+#: cp/parser.cc:25099
 #, gcc-internal-format
 msgid "%<asm%> qualifier %qT ignored outside of function body"
 msgstr ""
 
-#: cp/parser.cc:23421
+#: cp/parser.cc:25138
 #, gcc-internal-format
 msgid "%qT is not an %<asm%> qualifier"
 msgstr ""
 
-#: cp/parser.cc:23437
+#: cp/parser.cc:25154
 #, gcc-internal-format
 msgid "%<asm%> qualifier outside of function body"
 msgstr ""
 
-#: cp/parser.cc:23587
+#: cp/parser.cc:25304
 #, gcc-internal-format
 msgid "attributes ignored on %<asm%> declaration"
 msgstr ""
 
-#: cp/parser.cc:23678
+#: cp/parser.cc:25395
 #, gcc-internal-format
 msgid "empty parentheses were disambiguated as a function declaration"
 msgstr ""
 
-#: cp/parser.cc:23689
+#: cp/parser.cc:25406
 #, gcc-internal-format
 msgid "remove parentheses to default-initialize a variable"
 msgstr ""
 
-#: cp/parser.cc:23694
+#: cp/parser.cc:25411
 #, gcc-internal-format
 msgid "or replace parentheses with braces to aggregate-initialize a variable"
 msgstr ""
 
-#: cp/parser.cc:23697
+#: cp/parser.cc:25414
 #, gcc-internal-format
 msgid "or replace parentheses with braces to value-initialize a variable"
 msgstr ""
 
-#: cp/parser.cc:23714 cp/parser.cc:23739
+#: cp/parser.cc:25431 cp/parser.cc:25456
 #, gcc-internal-format
 msgid "parentheses were disambiguated as a function declaration"
 msgstr ""
 
-#: cp/parser.cc:23726 cp/parser.cc:23747
+#: cp/parser.cc:25443 cp/parser.cc:25464
 #, gcc-internal-format
 msgid "replace parentheses with braces to declare a variable"
 msgstr ""
 
-#: cp/parser.cc:23733
+#: cp/parser.cc:25450
 #, gcc-internal-format
 msgid "add parentheses to declare a variable"
 msgstr ""
 
-#: cp/parser.cc:23980
+#: cp/parser.cc:25520
+#, gcc-internal-format
+msgid "cannot handle qualified name for variant function"
+msgstr ""
+
+#: cp/parser.cc:25529
+#, gcc-internal-format
+msgid "declare variant directives are not allowed on constructors"
+msgstr ""
+
+#: cp/parser.cc:25535
+#, gcc-internal-format
+msgid "declare variant directives are not allowed on destructors"
+msgstr ""
+
+#: cp/parser.cc:25541
+#, gcc-internal-format, gfc-internal-format
+msgid "cannot handle %s identifier name"
+msgstr ""
+
+#: cp/parser.cc:25594
+#, gcc-internal-format
+msgid "no declaration of base function %qs in this scope"
+msgstr ""
+
+#: cp/parser.cc:25636
+#, gcc-internal-format
+msgid "base function is ambiguous"
+msgstr ""
+
+#: cp/parser.cc:25644
+#, gcc-internal-format
+msgid "variant function must be in the same scope as the base function %qs"
+msgstr ""
+
+#: cp/parser.cc:25665
+#, gcc-internal-format
+msgid "variant function must be in the same scope as the base function %qE"
+msgstr ""
+
+#: cp/parser.cc:25672
+#, gcc-internal-format
+msgid "declare variant directives are not allowed on virtual functions"
+msgstr ""
+
+#: cp/parser.cc:25679 cp/parser.cc:26128
+#, gcc-internal-format
+msgid "declare variant directives are not allowed on defaulted functions"
+msgstr ""
+
+#: cp/parser.cc:25686 cp/parser.cc:26135
+#, gcc-internal-format
+msgid "declare variant directives are not allowed on deleted functions"
+msgstr ""
+
+#: cp/parser.cc:25694
+#, gcc-internal-format
+msgid "declare variant directives are not allowed on immediate functions"
+msgstr ""
+
+#: cp/parser.cc:25969
 #, gcc-internal-format
 msgid "a function-definition is not allowed here"
 msgstr ""
 
-#: cp/parser.cc:23991
+#: cp/parser.cc:25980
 #, gcc-internal-format
 msgid "an %<asm%> specification is not allowed on a function-definition"
 msgstr ""
 
-#: cp/parser.cc:23995
+#: cp/parser.cc:25984
 #, gcc-internal-format
 msgid "attributes are not allowed on a function-definition"
 msgstr ""
 
-#: cp/parser.cc:24046
+#: cp/parser.cc:26070
 #, gcc-internal-format
 msgid "expected constructor, destructor, or type conversion"
 msgstr ""
 
-#: cp/parser.cc:24204
+#: cp/parser.cc:26269
 #, gcc-internal-format
 msgid "initializer provided for function"
 msgstr ""
 
-#: cp/parser.cc:24249
+#: cp/parser.cc:26314
 #, gcc-internal-format
 msgid "attributes after parenthesized initializer ignored"
 msgstr ""
 
-#: cp/parser.cc:24261
+#: cp/parser.cc:26326
 #, gcc-internal-format
 msgid "non-function %qD declared as implicit template"
 msgstr ""
 
-#: cp/parser.cc:24790
+#: cp/parser.cc:26874
 #, gcc-internal-format
 msgid "array bound is not an integer constant"
 msgstr ""
 
-#: cp/parser.cc:24915
+#: cp/parser.cc:26999
 #, gcc-internal-format
 msgid "cannot define member of dependent typedef %qT"
 msgstr ""
 
-#: cp/parser.cc:24919
+#: cp/parser.cc:27003
 #, gcc-internal-format
 msgid "%<%T::%E%> is not a type"
 msgstr ""
@@ -67581,17 +70656,17 @@ msgstr ""
 #. here because we do not have enough
 #. information about its original syntactic
 #. form.
-#: cp/parser.cc:24948
+#: cp/parser.cc:27032
 #, gcc-internal-format
 msgid "invalid declarator"
 msgstr ""
 
-#: cp/parser.cc:24957
+#: cp/parser.cc:27041
 #, gcc-internal-format
 msgid "invalid use of constructor as a template"
 msgstr ""
 
-#: cp/parser.cc:24959
+#: cp/parser.cc:27043
 #, gcc-internal-format
 msgid ""
 "use %<%T::%D%> instead of %<%T::%D%> to name the constructor in a qualified "
@@ -67600,267 +70675,267 @@ msgstr ""
 
 #. But declarations with qualified-ids can't appear in a
 #. function.
-#: cp/parser.cc:25074
+#: cp/parser.cc:27158
 #, gcc-internal-format
 msgid "qualified-id in declaration"
 msgstr ""
 
-#: cp/parser.cc:25099
+#: cp/parser.cc:27183
 #, gcc-internal-format
 msgid "expected declarator"
 msgstr ""
 
-#: cp/parser.cc:25220
+#: cp/parser.cc:27304
 #, gcc-internal-format
 msgid "%qD is a namespace"
 msgstr ""
 
-#: cp/parser.cc:25222
+#: cp/parser.cc:27306
 #, gcc-internal-format
 msgid "cannot form pointer to member of non-class %q#T"
 msgstr ""
 
-#: cp/parser.cc:25243
+#: cp/parser.cc:27327
 #, gcc-internal-format
 msgid "expected ptr-operator"
 msgstr ""
 
-#: cp/parser.cc:25304
+#: cp/parser.cc:27388
 #, gcc-internal-format
 msgid "duplicate cv-qualifier"
 msgstr ""
 
-#: cp/parser.cc:25358
+#: cp/parser.cc:27442
 #, gcc-internal-format
 msgid "multiple ref-qualifiers"
 msgstr ""
 
-#: cp/parser.cc:25395
+#: cp/parser.cc:27479
 #, gcc-internal-format
 msgid "%qE requires %<-fgnu-tm%>"
 msgstr ""
 
-#: cp/parser.cc:25453
+#: cp/parser.cc:27537
 #, gcc-internal-format
 msgid "duplicate virt-specifier"
 msgstr ""
 
-#: cp/parser.cc:25735
+#: cp/parser.cc:27840
 #, gcc-internal-format
 msgid "missing template arguments after %qE"
 msgstr ""
 
-#: cp/parser.cc:25741
+#: cp/parser.cc:27846
 #, gcc-internal-format
 msgid "%qT not permitted in template argument"
 msgstr ""
 
-#: cp/parser.cc:25744 cp/typeck2.cc:337 cp/typeck2.cc:383 cp/typeck2.cc:2519
-#: rust/backend/rust-tree.cc:3896
+#: cp/parser.cc:27849 cp/typeck2.cc:425 cp/typeck2.cc:471 cp/typeck2.cc:2624
+#: rust/backend/rust-tree.cc:3924
 #, gcc-internal-format
 msgid "invalid use of %qT"
 msgstr ""
 
-#: cp/parser.cc:25770
+#: cp/parser.cc:27876
 #, gcc-internal-format
 msgid "types may not be defined in template arguments"
 msgstr ""
 
-#: cp/parser.cc:25779
+#: cp/parser.cc:27885
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in template argument"
 msgstr ""
 
-#: cp/parser.cc:25900
+#: cp/parser.cc:28012
 #, gcc-internal-format
 msgid "expected type-specifier"
 msgstr ""
 
-#: cp/parser.cc:26047
+#: cp/parser.cc:28159
 #, gcc-internal-format
 msgid "omission of %<,%> before varargs %<...%> is deprecated in C++26"
 msgstr ""
 
-#: cp/parser.cc:26254
+#: cp/parser.cc:28366
 #, gcc-internal-format
 msgid "expected %<,%> or %<...%>"
 msgstr ""
 
-#: cp/parser.cc:26332
+#: cp/parser.cc:28444
 #, gcc-internal-format
 msgid "types may not be defined in parameter types"
 msgstr ""
 
-#: cp/parser.cc:26456
+#: cp/parser.cc:28568
 #, gcc-internal-format
 msgid "%<this%> specifier in template parameter declaration"
 msgstr ""
 
-#: cp/parser.cc:26459
+#: cp/parser.cc:28571
 #, gcc-internal-format
 msgid "%<this%> specifier in a requires-expression parameter"
 msgstr ""
 
-#: cp/parser.cc:26519
+#: cp/parser.cc:28631
 #, gcc-internal-format
 msgid "an explicit object parameter cannot be a function parameter pack"
 msgstr ""
 
-#: cp/parser.cc:26560
+#: cp/parser.cc:28672
 #, gcc-internal-format
 msgid "default arguments are only permitted for function parameters"
 msgstr ""
 
-#: cp/parser.cc:26578
+#: cp/parser.cc:28690
 #, gcc-internal-format
 msgid "parameter pack %qD cannot have a default argument"
 msgstr ""
 
-#: cp/parser.cc:26584
+#: cp/parser.cc:28696
 #, gcc-internal-format
 msgid "template parameter pack cannot have a default argument"
 msgstr ""
 
-#: cp/parser.cc:26586
+#: cp/parser.cc:28698
 #, gcc-internal-format
 msgid "parameter pack cannot have a default argument"
 msgstr ""
 
-#: cp/parser.cc:26609
+#: cp/parser.cc:28721
 #, gcc-internal-format
 msgid "an explicit object parameter may not have a default argument"
 msgstr ""
 
-#: cp/parser.cc:26733
+#: cp/parser.cc:28845
 #, gcc-internal-format
 msgid ""
 "function-try-block body of %<constexpr%> constructor only available with %<-"
 "std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:26737
+#: cp/parser.cc:28849
 #, gcc-internal-format
 msgid ""
 "function-try-block body of %<constexpr%> function only available with %<-"
 "std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:26924
+#: cp/parser.cc:29040
 #, gcc-internal-format
 msgid "probably missing a comma or an operator before"
 msgstr ""
 
-#: cp/parser.cc:27086
+#: cp/parser.cc:29202
 #, gcc-internal-format
 msgid ""
 "C++ designated initializers only available with %<-std=c++20%> or %<-std=gnu+"
 "+20%>"
 msgstr ""
 
-#: cp/parser.cc:27108
+#: cp/parser.cc:29224
 #, gcc-internal-format
 msgid "ISO C++ does not allow GNU designated initializers"
 msgstr ""
 
-#: cp/parser.cc:27146
+#: cp/parser.cc:29262
 #, gcc-internal-format
 msgid "ISO C++ does not allow C99 designated initializers"
 msgstr ""
 
-#: cp/parser.cc:27160
+#: cp/parser.cc:29276
 #, gcc-internal-format
 msgid ""
 "either all initializer clauses should be designated or none of them should be"
 msgstr ""
 
-#: cp/parser.cc:27200
+#: cp/parser.cc:29316
 #, gcc-internal-format
 msgid "%<...%> not allowed in designated initializer list"
 msgstr ""
 
-#: cp/parser.cc:27251
+#: cp/parser.cc:29367
 #, gcc-internal-format
 msgid "%<.%s%> designator used multiple times in the same initializer list"
 msgstr ""
 
-#: cp/parser.cc:27307 cp/parser.cc:27442
+#: cp/parser.cc:29423 cp/parser.cc:29557
 #, gcc-internal-format
 msgid "expected class-name"
 msgstr ""
 
-#: cp/parser.cc:27699
+#: cp/parser.cc:29837
 #, gcc-internal-format
 msgid "expected %<;%> after class definition"
 msgstr ""
 
-#: cp/parser.cc:27702
+#: cp/parser.cc:29840
 #, gcc-internal-format
 msgid "expected %<;%> after struct definition"
 msgstr ""
 
-#: cp/parser.cc:27705
+#: cp/parser.cc:29843
 #, gcc-internal-format
 msgid "expected %<;%> after union definition"
 msgstr ""
 
-#: cp/parser.cc:28162
+#: cp/parser.cc:30139 cp/parser.cc:37400
 #, gcc-internal-format
-msgid "expected %<{%> or %<:%>"
+msgid "duplicate %qD specifier"
 msgstr ""
 
-#: cp/parser.cc:28173
+#: cp/parser.cc:30350
 #, gcc-internal-format
-msgid "cannot specify %<override%> for a class"
+msgid "expected %<{%> or %<:%>"
 msgstr ""
 
-#: cp/parser.cc:28181
+#: cp/parser.cc:30362
 #, gcc-internal-format
 msgid "global qualification of class name is invalid"
 msgstr ""
 
-#: cp/parser.cc:28188
+#: cp/parser.cc:30369
 #, gcc-internal-format
 msgid "qualified name does not name a class"
 msgstr ""
 
-#: cp/parser.cc:28200
+#: cp/parser.cc:30381
 #, gcc-internal-format
 msgid "keyword %<template%> not allowed in class-head-name"
 msgstr ""
 
-#: cp/parser.cc:28206
+#: cp/parser.cc:30387
 #, gcc-internal-format
 msgid "invalid class name in declaration of %qD"
 msgstr ""
 
-#: cp/parser.cc:28249
+#: cp/parser.cc:30430
 #, gcc-internal-format
 msgid "declaration of partial specialization in unbraced export-declaration"
 msgstr ""
 
-#: cp/parser.cc:28275
+#: cp/parser.cc:30456
 #, gcc-internal-format
 msgid ""
 "an explicit instantiation cannot have a definition; use %<template <>%> to "
 "declare a specialization"
 msgstr ""
 
-#: cp/parser.cc:28282
+#: cp/parser.cc:30463
 #, gcc-internal-format
 msgid "an explicit specialization must be preceded by %<template <>%>"
 msgstr ""
 
-#: cp/parser.cc:28315
+#: cp/parser.cc:30496
 #, gcc-internal-format
 msgid "function template %qD redeclared as a class template"
 msgstr ""
 
-#: cp/parser.cc:28348
+#: cp/parser.cc:30529
 #, gcc-internal-format
 msgid "could not resolve typename type"
 msgstr ""
 
-#: cp/parser.cc:28413
+#: cp/parser.cc:30594
 #, gcc-internal-format
 msgid "previous definition of %q#T"
 msgstr ""
@@ -67868,278 +70943,287 @@ msgstr ""
 #. In a lambda this should work, but doesn't currently.
 #. We're in a lambda, but it isn't the innermost class.
 #. This should work, but currently doesn't.
-#: cp/parser.cc:28427 cp/pt.cc:4367
+#: cp/parser.cc:30608 cp/pt.cc:4414
 #, gcc-internal-format
 msgid "unexpanded parameter pack in local class in lambda"
 msgstr ""
 
-#: cp/parser.cc:28533 cp/parser.cc:35343
+#: cp/parser.cc:30714 cp/parser.cc:37787
 #, gcc-internal-format
 msgid "expected class-key"
 msgstr ""
 
-#: cp/parser.cc:28558
+#: cp/parser.cc:30739
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids typename key in template template parameter; use %<-std=c+"
 "+17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:28562
+#: cp/parser.cc:30743
 #, gcc-internal-format
 msgid "expected %<class%> or %<typename%>"
 msgstr ""
 
-#: cp/parser.cc:28831
+#: cp/parser.cc:31022
 #, gcc-internal-format
 msgid "in C++03 a class-key must be used when declaring a friend"
 msgstr ""
 
-#: cp/parser.cc:28837
+#: cp/parser.cc:31028
 #, gcc-internal-format
 msgid ""
 "variadic friends or friend type declarations with multiple types only "
 "available with %<-std=c++2c%> or %<-std=gnu++2c%>"
 msgstr ""
 
-#: cp/parser.cc:28878
+#: cp/parser.cc:31069
 #, gcc-internal-format
 msgid "friend declaration does not name a class or function"
 msgstr ""
 
-#: cp/parser.cc:28918
+#: cp/parser.cc:31109
 #, gcc-internal-format
 msgid "a storage class on an anonymous aggregate in class scope is not allowed"
 msgstr ""
 
-#: cp/parser.cc:29021
+#: cp/parser.cc:31212
 #, gcc-internal-format
 msgid ""
 "default member initializers for bit-fields only available with %<-std=c+"
 "+20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:29028
+#: cp/parser.cc:31219
 #, gcc-internal-format
 msgid "default member initializer for unnamed bit-field"
 msgstr ""
 
-#: cp/parser.cc:29041
+#: cp/parser.cc:31232
 #, gcc-internal-format
 msgid "ISO C++ allows bit-field attributes only before the %<:%> token"
 msgstr ""
 
-#: cp/parser.cc:29222
+#: cp/parser.cc:31414
 #, gcc-internal-format
 msgid "bit-field %qD has non-integral type %qT"
 msgstr ""
 
-#: cp/parser.cc:29250
+#: cp/parser.cc:31442
 #, gcc-internal-format
 msgid "pure-specifier on function-definition"
 msgstr ""
 
-#: cp/parser.cc:29320
+#: cp/parser.cc:31548
 #, gcc-internal-format
 msgid "stray %<,%> at end of member declaration"
 msgstr ""
 
-#: cp/parser.cc:29334
+#: cp/parser.cc:31562
 #, gcc-internal-format
 msgid "expected %<;%> at end of member declaration"
 msgstr ""
 
-#: cp/parser.cc:29407
+#: cp/parser.cc:31635
 #, gcc-internal-format
 msgid ""
 "%<delete%> reason only available with %<-std=c++2c%> or %<-std=gnu++2c%>"
 msgstr ""
 
-#: cp/parser.cc:29430
+#: cp/parser.cc:31658
 #, gcc-internal-format
 msgid "invalid pure specifier (only %<= 0%> is allowed)"
 msgstr ""
 
-#: cp/parser.cc:29465
+#: cp/parser.cc:31693
 #, gcc-internal-format
 msgid "a brace-enclosed initializer is not allowed here"
 msgstr ""
 
-#: cp/parser.cc:29596
+#: cp/parser.cc:31840
 #, gcc-internal-format
 msgid "attributes on base specifiers are ignored"
 msgstr ""
 
-#: cp/parser.cc:29611
+#: cp/parser.cc:31860
 #, gcc-internal-format
 msgid "%<virtual%> specified more than once in base-specifier"
 msgstr ""
 
-#: cp/parser.cc:29631
+#: cp/parser.cc:31880
 #, gcc-internal-format
 msgid "more than one access specifier in base-specifier"
 msgstr ""
 
-#: cp/parser.cc:29655
+#: cp/parser.cc:31943
 #, gcc-internal-format
 msgid "keyword %<typename%> not allowed outside of templates"
 msgstr ""
 
-#: cp/parser.cc:29658
+#: cp/parser.cc:31946
 #, gcc-internal-format
 msgid ""
 "keyword %<typename%> not allowed in this context (the base class is "
 "implicitly a type)"
 msgstr ""
 
-#: cp/parser.cc:29860 cp/parser.cc:29954
+#: cp/parser.cc:32131 cp/parser.cc:32225
 #, gcc-internal-format
 msgid "types may not be defined in an exception-specification"
 msgstr ""
 
-#: cp/parser.cc:29962
+#: cp/parser.cc:32233
 #, gcc-internal-format
 msgid "ISO C++17 does not allow dynamic exception specifications"
 msgstr ""
 
-#: cp/parser.cc:29968
+#: cp/parser.cc:32239
 #, gcc-internal-format
 msgid "dynamic exception specifications are deprecated in C++11"
 msgstr ""
 
-#: cp/parser.cc:30012
+#: cp/parser.cc:32283
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in exception-specification"
 msgstr ""
 
-#: cp/parser.cc:30053
+#: cp/parser.cc:32324
 #, gcc-internal-format
 msgid ""
 "%<try%> in %<constexpr%> function only available with %<-std=c++20%> or %<-"
 "std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:30165
+#: cp/parser.cc:32436
 #, gcc-internal-format
 msgid "types may not be defined in exception-declarations"
 msgstr ""
 
-#: cp/parser.cc:30200
+#: cp/parser.cc:32471
 #, gcc-internal-format
 msgid "%<alignas%> on exception declaration"
 msgstr ""
 
-#: cp/parser.cc:30279
+#: cp/parser.cc:32550
 #, gcc-internal-format
 msgid "%<co_yield%> cannot be used in default arguments"
 msgstr ""
 
-#: cp/parser.cc:30747
+#: cp/parser.cc:33021
 #, gcc-internal-format
 msgid "expected attribute argument as balanced token sequence"
 msgstr ""
 
-#: cp/parser.cc:30893
+#: cp/parser.cc:33167
 #, gcc-internal-format
 msgid "attribute using prefix used together with scoped attribute token"
 msgstr ""
 
-#: cp/parser.cc:30907
+#: cp/parser.cc:33181
 #, gcc-internal-format
 msgid "expected an identifier for the attribute name"
 msgstr ""
 
 #. e.g. [[attr()]].
-#: cp/parser.cc:31049
+#: cp/parser.cc:33323
 #, gcc-internal-format
 msgid "parentheses must be omitted if %qE attribute argument list is empty"
 msgstr ""
 
-#: cp/parser.cc:31084
+#: cp/parser.cc:33358
 #, gcc-internal-format
 msgid "attribute %qs specified multiple times"
 msgstr ""
 
-#: cp/parser.cc:31126
+#: cp/parser.cc:33401 cp/parser.cc:33493
+#, gcc-internal-format
+msgid "mixing annotations and attributes in the same list"
+msgstr ""
+
+#: cp/parser.cc:33430
 #, gcc-internal-format
 msgid "expected attribute before %<...%>"
 msgstr ""
 
-#: cp/parser.cc:31129
+#: cp/parser.cc:33433
 #, gcc-internal-format
 msgid "attribute with no arguments contains no parameter packs"
 msgstr ""
 
-#: cp/parser.cc:31175
+#: cp/parser.cc:33591
+#, gcc-internal-format
+msgid "expected conditional-expression"
+msgstr ""
+
+#: cp/parser.cc:33638
 #, gcc-internal-format
-msgid "expected contract-role"
+msgid "%qs is only available with %qs"
 msgstr ""
 
-#. We got some other token other than a ':'.
-#: cp/parser.cc:31256
+#: cp/parser.cc:33654
 #, gcc-internal-format
-msgid "expected contract semantic or level"
+msgid "attributes are ignored on %qs"
 msgstr ""
 
-#: cp/parser.cc:31266
+#: cp/parser.cc:33770
 #, gcc-internal-format
-msgid "expected contract level: %<default%>, %<audit%>, or %<axiom%>"
+msgid "attributes are ignored on function contract specifiers"
 msgstr ""
 
-#: cp/parser.cc:31276
+#: cp/parser.cc:33874
 #, gcc-internal-format
-msgid "invalid use of contract role for explicit semantic"
+msgid "contracts are only available with %qs"
 msgstr ""
 
-#: cp/parser.cc:31413
+#: cp/parser.cc:33957
 #, gcc-internal-format
-msgid "contracts are only available with %<-fcontracts%>"
+msgid "annotations only available with %<-std=c++2c%> or %<-std=gnu++2c%>"
 msgstr ""
 
-#: cp/parser.cc:31572
+#: cp/parser.cc:33988
 #, gcc-internal-format
 msgid ""
 "attribute using prefix only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:31933 cp/parser.cc:31942
+#: cp/parser.cc:34361 cp/parser.cc:34370
 #, gcc-internal-format
 msgid "expression must be enclosed in parentheses"
 msgstr ""
 
-#: cp/parser.cc:32289
+#: cp/parser.cc:34717
 #, gcc-internal-format
 msgid "missing additional %<requires%> to start a requires-expression"
 msgstr ""
 
-#: cp/parser.cc:32530
+#: cp/parser.cc:34958
 #, gcc-internal-format
 msgid ""
 "testing if a concept-id is a valid expression; add %<requires%> to check "
 "satisfaction"
 msgstr ""
 
-#: cp/parser.cc:32668
+#: cp/parser.cc:35101
 #, gcc-internal-format
 msgid "result type is not a plain type-constraint"
 msgstr ""
 
-#: cp/parser.cc:32676
+#: cp/parser.cc:35110
 #, gcc-internal-format
 msgid "return-type-requirement is not a type-constraint"
 msgstr ""
 
-#: cp/parser.cc:33195
+#: cp/parser.cc:35637
 #, gcc-internal-format
 msgid "specializing member %<%T::%E%> requires %<template<>%> syntax"
 msgstr ""
 
-#: cp/parser.cc:33200
+#: cp/parser.cc:35642
 #, gcc-internal-format
 msgid "invalid declaration of %<%T::%E%>"
 msgstr ""
 
-#: cp/parser.cc:33204
+#: cp/parser.cc:35646
 #, gcc-internal-format
 msgid "too few template-parameter-lists"
 msgstr ""
@@ -68148,29 +71232,29 @@ msgstr ""
 #. something like:
 #.
 #. template <class T> template <class U> void S::f();
-#: cp/parser.cc:33211
+#: cp/parser.cc:35653
 #, gcc-internal-format
 msgid "too many template-parameter-lists"
 msgstr ""
 
-#: cp/parser.cc:33503
+#: cp/parser.cc:35947
 #, gcc-internal-format
 msgid "template-id not allowed for constructor in C++20"
 msgstr ""
 
-#: cp/parser.cc:33614
+#: cp/parser.cc:36058
 #, gcc-internal-format
 msgid "named return values are no longer supported"
 msgstr ""
 
-#: cp/parser.cc:33791
+#: cp/parser.cc:36235
 #, gcc-internal-format
 msgid ""
 "ISO C++ did not adopt string literal operator templates taking an argument "
 "pack of characters"
 msgstr ""
 
-#: cp/parser.cc:33800
+#: cp/parser.cc:36244
 #, gcc-internal-format
 msgid ""
 "literal operator template %qD has invalid parameter list; expected non-type "
@@ -68178,406 +71262,413 @@ msgid ""
 "type"
 msgstr ""
 
-#: cp/parser.cc:33806
+#: cp/parser.cc:36250
 #, gcc-internal-format
 msgid ""
 "literal operator template %qD has invalid parameter list; expected non-type "
 "template parameter pack %<<char...>%>"
 msgstr ""
 
-#: cp/parser.cc:33846
+#: cp/parser.cc:36290
 #, gcc-internal-format
 msgid "invalid declaration of member template in local class"
 msgstr ""
 
-#: cp/parser.cc:33856
+#: cp/parser.cc:36300
 #, gcc-internal-format
 msgid "template with C linkage"
 msgstr ""
 
-#: cp/parser.cc:33876
+#: cp/parser.cc:36320
 #, gcc-internal-format
 msgid "invalid explicit specialization"
 msgstr ""
 
-#: cp/parser.cc:33986
+#: cp/parser.cc:36430
 #, gcc-internal-format
 msgid "template declaration of %<typedef%>"
 msgstr ""
 
-#: cp/parser.cc:34037
+#: cp/parser.cc:36481
 #, gcc-internal-format
 msgid "a class template declaration must not declare anything else"
 msgstr ""
 
-#: cp/parser.cc:34089
+#: cp/parser.cc:36534
 #, gcc-internal-format
 msgid "explicit template specialization cannot have a storage class"
 msgstr ""
 
-#: cp/parser.cc:34408
+#: cp/parser.cc:36853
 #, gcc-internal-format
 msgid "%<>>%> should be %<> >%> within a nested template argument list"
 msgstr ""
 
-#: cp/parser.cc:34421
+#: cp/parser.cc:36866
 #, gcc-internal-format
 msgid "spurious %<>>%>, use %<>%> to terminate a template argument list"
 msgstr ""
 
-#: cp/parser.cc:34452
+#: cp/parser.cc:36897
 #, gcc-internal-format
 msgid "%qs should be %qs to terminate a template argument list"
 msgstr ""
 
-#: cp/parser.cc:34769
+#: cp/parser.cc:37213
 #, gcc-internal-format
 msgid "%<sizeof...%> argument must be surrounded by parentheses"
 msgstr ""
 
-#: cp/parser.cc:34944
+#: cp/parser.cc:37388
 #, gcc-internal-format
 msgid "invalid use of %qD in linkage specification"
 msgstr ""
 
-#: cp/parser.cc:34956
-#, gcc-internal-format
-msgid "duplicate %qD specifier"
-msgstr ""
-
-#: cp/parser.cc:34959
+#: cp/parser.cc:37403
 #, gcc-internal-format
 msgid "%qD specifier conflicts with %qs"
 msgstr ""
 
-#: cp/parser.cc:34971
+#: cp/parser.cc:37415
 #, gcc-internal-format
 msgid "%<__thread%> before %qD"
 msgstr ""
 
-#: cp/parser.cc:34988
+#: cp/parser.cc:37432
 #, gcc-internal-format
 msgid "%qD specifier conflicts with %<typedef%>"
 msgstr ""
 
-#: cp/parser.cc:35097
+#: cp/parser.cc:37541
 #, gcc-internal-format
 msgid "ISO C++ 1998 does not support %<long long%>"
 msgstr ""
 
-#: cp/parser.cc:35108
+#: cp/parser.cc:37552
 #, gcc-internal-format
 msgid "both %<__thread%> and %<thread_local%> specified"
 msgstr ""
 
-#: cp/parser.cc:35113
+#: cp/parser.cc:37557
 #, gcc-internal-format
 msgid "duplicate %qD"
 msgstr ""
 
-#: cp/parser.cc:35142
+#: cp/parser.cc:37586
 #, gcc-internal-format
 msgid "duplicate %qs"
 msgstr ""
 
-#: cp/parser.cc:35194
+#: cp/parser.cc:37638
 #, gcc-internal-format
 msgid "expected %<new%>"
 msgstr ""
 
-#: cp/parser.cc:35197
+#: cp/parser.cc:37641
 #, gcc-internal-format
 msgid "expected %<delete%>"
 msgstr ""
 
-#: cp/parser.cc:35200
+#: cp/parser.cc:37644
 #, gcc-internal-format
 msgid "expected %<return%>"
 msgstr ""
 
-#: cp/parser.cc:35206
+#: cp/parser.cc:37650
 #, gcc-internal-format
 msgid "expected %<extern%>"
 msgstr ""
 
-#: cp/parser.cc:35209
+#: cp/parser.cc:37653
 #, gcc-internal-format
 msgid "expected %<static_assert%>"
 msgstr ""
 
-#: cp/parser.cc:35212
+#: cp/parser.cc:37656
 #, gcc-internal-format
 msgid "expected %<decltype%>"
 msgstr ""
 
-#: cp/parser.cc:35215
+#: cp/parser.cc:37659
 #, gcc-internal-format
 msgid "expected %<operator%>"
 msgstr ""
 
-#: cp/parser.cc:35218
+#: cp/parser.cc:37662
 #, gcc-internal-format
 msgid "expected %<class%>"
 msgstr ""
 
-#: cp/parser.cc:35221
+#: cp/parser.cc:37665
 #, gcc-internal-format
 msgid "expected %<template%>"
 msgstr ""
 
-#: cp/parser.cc:35224
+#: cp/parser.cc:37668
 #, gcc-internal-format
 msgid "expected %<namespace%>"
 msgstr ""
 
-#: cp/parser.cc:35227
+#: cp/parser.cc:37671
 #, gcc-internal-format
 msgid "expected %<using%>"
 msgstr ""
 
-#: cp/parser.cc:35230
+#: cp/parser.cc:37674
 #, gcc-internal-format
 msgid "expected %<asm%>"
 msgstr ""
 
-#: cp/parser.cc:35233
+#: cp/parser.cc:37677
 #, gcc-internal-format
 msgid "expected %<try%>"
 msgstr ""
 
-#: cp/parser.cc:35236
+#: cp/parser.cc:37680
 #, gcc-internal-format
 msgid "expected %<catch%>"
 msgstr ""
 
-#: cp/parser.cc:35239
+#: cp/parser.cc:37683
 #, gcc-internal-format
 msgid "expected %<throw%>"
 msgstr ""
 
-#: cp/parser.cc:35242
+#: cp/parser.cc:37686
 #, gcc-internal-format
 msgid "expected %<auto%>"
 msgstr ""
 
-#: cp/parser.cc:35245
+#: cp/parser.cc:37689
 #, gcc-internal-format
 msgid "expected %<__label__%>"
 msgstr ""
 
-#: cp/parser.cc:35248
+#: cp/parser.cc:37692
 #, gcc-internal-format
 msgid "expected %<@try%>"
 msgstr ""
 
-#: cp/parser.cc:35251
+#: cp/parser.cc:37695
 #, gcc-internal-format
 msgid "expected %<@synchronized%>"
 msgstr ""
 
-#: cp/parser.cc:35254
+#: cp/parser.cc:37698
 #, gcc-internal-format
 msgid "expected %<@throw%>"
 msgstr ""
 
-#: cp/parser.cc:35257
+#: cp/parser.cc:37701
 #, gcc-internal-format
 msgid "expected %<__transaction_atomic%>"
 msgstr ""
 
-#: cp/parser.cc:35260
+#: cp/parser.cc:37704
 #, gcc-internal-format
 msgid "expected %<__transaction_relaxed%>"
 msgstr ""
 
-#: cp/parser.cc:35263
+#: cp/parser.cc:37707
 #, gcc-internal-format
 msgid "expected %<co_yield%>"
 msgstr ""
 
-#: cp/parser.cc:35295
+#: cp/parser.cc:37739
 #, gcc-internal-format
 msgid "expected %<::%>"
 msgstr ""
 
-#: cp/parser.cc:35307
+#: cp/parser.cc:37751
 #, gcc-internal-format
 msgid "expected %<...%>"
 msgstr ""
 
-#: cp/parser.cc:35310
+#: cp/parser.cc:37754
 #, gcc-internal-format
 msgid "expected %<*%>"
 msgstr ""
 
-#: cp/parser.cc:35313
+#: cp/parser.cc:37757
 #, gcc-internal-format
 msgid "expected %<~%>"
 msgstr ""
 
-#: cp/parser.cc:35319
+#: cp/parser.cc:37763
 #, gcc-internal-format
 msgid "expected %<:%> or %<::%>"
 msgstr ""
 
-#: cp/parser.cc:35346
+#: cp/parser.cc:37790
 #, gcc-internal-format
 msgid "expected %<class%>, %<typename%>, or %<template%>"
 msgstr ""
 
-#: cp/parser.cc:35681
+#: cp/parser.cc:37793
+#, gcc-internal-format
+msgid "expected %<:]%>"
+msgstr ""
+
+#: cp/parser.cc:38128
 #, gcc-internal-format
 msgid "redundant enum-key %<enum%s%> in reference to %q#T"
 msgstr ""
 
-#: cp/parser.cc:35833
+#: cp/parser.cc:38282
 #, gcc-internal-format
 msgid "%qs tag used in naming %q#T"
 msgstr ""
 
-#: cp/parser.cc:35838
+#: cp/parser.cc:38287
 #, gcc-internal-format
 msgid "%q#T was previously declared here"
 msgstr ""
 
-#: cp/parser.cc:35959
+#: cp/parser.cc:38408
 #, gcc-internal-format
 msgid "redundant class-key %qs in reference to %q#T"
 msgstr ""
 
-#: cp/parser.cc:36117 cp/parser.cc:36151
+#: cp/parser.cc:38566 cp/parser.cc:38600
 #, gcc-internal-format
 msgid "%qT declared with a mismatched class-key %qs"
 msgstr ""
 
-#: cp/parser.cc:36124 cp/parser.cc:36157
+#: cp/parser.cc:38573 cp/parser.cc:38606
 #, gcc-internal-format
 msgid "remove the class-key or replace it with %qs"
 msgstr ""
 
-#: cp/parser.cc:36125 cp/parser.cc:36158
+#: cp/parser.cc:38574 cp/parser.cc:38607
 #, gcc-internal-format
 msgid "replace the class-key with %qs"
 msgstr ""
 
-#: cp/parser.cc:36132
+#: cp/parser.cc:38581
 #, gcc-internal-format
 msgid "%qT defined as %qs here"
 msgstr ""
 
-#: cp/parser.cc:36133
+#: cp/parser.cc:38582
 #, gcc-internal-format
 msgid "%qT first declared as %qs here"
 msgstr ""
 
-#: cp/parser.cc:36216
+#: cp/parser.cc:38665
 #, gcc-internal-format
 msgid "%qD redeclared with different access"
 msgstr ""
 
-#: cp/parser.cc:36237
+#: cp/parser.cc:38686
 #, gcc-internal-format
 msgid ""
 "in C++98 %<template%> (as a disambiguator) is only allowed within templates"
 msgstr ""
 
-#: cp/parser.cc:36486
+#: cp/parser.cc:38939
 #, gcc-internal-format
 msgid "file ends in default argument"
 msgstr ""
 
-#: cp/parser.cc:36727 cp/parser.cc:38039 cp/parser.cc:38228
+#: cp/parser.cc:39180 cp/parser.cc:40492 cp/parser.cc:40681
 #, gcc-internal-format
 msgid "misplaced %<@%D%> Objective-C++ construct"
 msgstr ""
 
-#: cp/parser.cc:36798
+#: cp/parser.cc:39251
 #, gcc-internal-format
 msgid "objective-c++ message receiver expected"
 msgstr ""
 
-#: cp/parser.cc:36872
+#: cp/parser.cc:39325
 #, gcc-internal-format
 msgid "objective-c++ message argument(s) are expected"
 msgstr ""
 
-#: cp/parser.cc:36903
+#: cp/parser.cc:39356
 #, gcc-internal-format
 msgid "%<@encode%> must specify a type as an argument"
 msgstr ""
 
-#: cp/parser.cc:37307
+#: cp/parser.cc:39760
 #, gcc-internal-format
 msgid "invalid Objective-C++ selector name"
 msgstr ""
 
-#: cp/parser.cc:37382 cp/parser.cc:37400
+#: cp/parser.cc:39835 cp/parser.cc:39853
 #, gcc-internal-format
 msgid "objective-c++ method declaration is expected"
 msgstr ""
 
-#: cp/parser.cc:37394 cp/parser.cc:37460
+#: cp/parser.cc:39847 cp/parser.cc:39913
 #, gcc-internal-format
 msgid "method attributes must be specified at the end"
 msgstr ""
 
-#: cp/parser.cc:37503
+#: cp/parser.cc:39956
 #, gcc-internal-format
 msgid "stray %qs between Objective-C++ methods"
 msgstr ""
 
-#: cp/parser.cc:37700 cp/parser.cc:37707 cp/parser.cc:37714
+#: cp/parser.cc:40153 cp/parser.cc:40160 cp/parser.cc:40167
 #, gcc-internal-format
 msgid "invalid type for instance variable"
 msgstr ""
 
-#: cp/parser.cc:37831
+#: cp/parser.cc:40284
 #, gcc-internal-format
 msgid "identifier expected after %<@protocol%>"
 msgstr ""
 
-#: cp/parser.cc:38004
+#: cp/parser.cc:40457
 #, gcc-internal-format
 msgid ""
 "attributes may not be specified before the %<@%D%> Objective-C++ keyword"
 msgstr ""
 
-#: cp/parser.cc:38011
+#: cp/parser.cc:40464
 #, gcc-internal-format
 msgid "prefix attributes are ignored before %<@%D%>"
 msgstr ""
 
-#: cp/parser.cc:38291 cp/parser.cc:38298 cp/parser.cc:38305
+#: cp/parser.cc:40744 cp/parser.cc:40751 cp/parser.cc:40758
 #, gcc-internal-format
 msgid "invalid type for property"
 msgstr ""
 
-#: cp/parser.cc:38467
+#: cp/parser.cc:40920
 #, gcc-internal-format
 msgid "unknown property attribute %qE"
 msgstr ""
 
-#: cp/parser.cc:39765
+#: cp/parser.cc:42222
 #, gcc-internal-format
 msgid "expected integer expression list"
 msgstr ""
 
-#: cp/parser.cc:39782
+#: cp/parser.cc:42239
 #, gcc-internal-format
 msgid "%<wait%> expression must be integral"
 msgstr ""
 
-#: cp/parser.cc:40538
+#: cp/parser.cc:42995
 #, gcc-internal-format
 msgid "expected %<scalar%>, %<aggregate%>, %<all%>"
 msgstr ""
 
-#: cp/parser.cc:40929
+#: cp/parser.cc:43397
 #, gcc-internal-format
 msgid "invalid reduction-identifier"
 msgstr ""
 
-#: cp/parser.cc:41990
+#: cp/parser.cc:44091
+#, gcc-internal-format
+msgid ""
+"legacy %<%E(%E)%> traits syntax not allowed in %<uses_allocators%> clause "
+"when using modifiers"
+msgstr ""
+
+#: cp/parser.cc:44727
 #, gcc-internal-format
 msgid "types may not be defined in iterator type"
 msgstr ""
@@ -68586,316 +71677,333 @@ msgstr ""
 #. check above and add one in semantics.cc (to properly handle templates).
 #. Base this on the allocator/align modifiers check for the 'allocate' clause
 #. in semantics.cc's finish_omp_clauses.
-#: cp/parser.cc:44102
+#: cp/parser.cc:47214
 #, gcc-internal-format
 msgid "%<#pragma omp allocate%> not yet supported"
 msgstr ""
 
-#: cp/parser.cc:45553
+#: cp/parser.cc:48665
 #, gcc-internal-format
 msgid "parenthesized initialization is not allowed in OpenMP %<for%> loop"
 msgstr ""
 
-#: cp/parser.cc:46484
+#: cp/parser.cc:49613
 #, gcc-internal-format
 msgid "%<ordered%> clause with parameter on range-based %<for%> loop"
 msgstr ""
 
-#: cp/parser.cc:46566 cp/pt.cc:18593
+#: cp/parser.cc:49695 cp/pt.cc:19130
 #, gcc-internal-format
 msgid "iteration variable %qD should not be reduction"
 msgstr ""
 
-#: cp/parser.cc:49607
+#: cp/parser.cc:52776
 #, gcc-internal-format
 msgid "%<#pragma omp declare %s%> followed by %<#pragma omp declare %s%>"
 msgstr ""
 
-#: cp/parser.cc:50294
+#: cp/parser.cc:53488
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp dispatch%> must be followed by a direct function call with "
 "optional assignment"
 msgstr ""
 
-#: cp/parser.cc:50521
+#: cp/parser.cc:53729
 #, gcc-internal-format
 msgid "%qD is not a C pointer"
 msgstr ""
 
-#: cp/parser.cc:50647
+#: cp/parser.cc:53855
 #, gcc-internal-format
 msgid ""
 "an %qs clause can only be specified if the %<dispatch%> selector of the "
 "construct selector set appears in the %<match%> clause"
 msgstr ""
 
-#: cp/parser.cc:50768
+#: cp/parser.cc:53976
 #, gcc-internal-format
 msgid ""
 "OpenMP directive other than %<declare simd%> or %<declare variant%> "
 "appertains to a declaration"
 msgstr ""
 
-#: cp/parser.cc:51822
+#: cp/parser.cc:54551
+#, gcc-internal-format
+msgid "expected %<target%>"
+msgstr ""
+
+#: cp/parser.cc:55148
 #, gcc-internal-format
 msgid "invalid initializer clause"
 msgstr ""
 
-#: cp/parser.cc:51853
+#: cp/parser.cc:55179
 #, gcc-internal-format
 msgid "expected id-expression (arguments)"
 msgstr ""
 
-#: cp/parser.cc:51865
+#: cp/parser.cc:55191
 #, gcc-internal-format
 msgid ""
 "one of the initializer call arguments should be %<omp_priv%> or %<&omp_priv%>"
 msgstr ""
 
-#: cp/parser.cc:51968
+#: cp/parser.cc:55294
 #, gcc-internal-format
 msgid "types may not be defined in declare reduction type list"
 msgstr ""
 
-#: cp/parser.cc:51988 cp/semantics.cc:6855
+#: cp/parser.cc:55314 cp/semantics.cc:7052
 #, gcc-internal-format
 msgid "predeclared arithmetic type %qT in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.cc:51992 cp/semantics.cc:6863
+#: cp/parser.cc:55318 cp/semantics.cc:7060
 #, gcc-internal-format
 msgid "function or array type %qT in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.cc:51995 cp/pt.cc:14880 cp/semantics.cc:6869
+#: cp/parser.cc:55321 cp/pt.cc:15174 cp/semantics.cc:7066
 #, gcc-internal-format
 msgid "reference type %qT in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.cc:51998 cp/semantics.cc:6875
+#: cp/parser.cc:55324 cp/semantics.cc:7072
 #, gcc-internal-format
 msgid ""
 "%<const%>, %<volatile%> or %<__restrict%>-qualified type %qT in %<#pragma "
 "omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.cc:52749
+#: cp/parser.cc:55521
 #, gcc-internal-format
-msgid "%<#pragma acc routine%> names a set of overloads"
+msgid "types may not be defined within %<declare mapper%>"
 msgstr ""
 
-#: cp/parser.cc:52759
+#: cp/parser.cc:55693
 #, gcc-internal-format
-msgid "%qD does not refer to a namespace scope function"
+msgid "expected %<simd%>, %<reduction%>, %<target%>, %<mapper%> or %<variant%>"
 msgstr ""
 
-#: cp/parser.cc:52929 cp/parser.cc:53464
+#: cp/parser.cc:56258
 #, gcc-internal-format
-msgid "OpenMP directives may not appear in %<constexpr%> functions"
+msgid "%<#pragma acc routine%> names a set of overloads"
 msgstr ""
 
-#. cancel-and-throw is unimplemented.
-#: cp/parser.cc:53140
+#: cp/parser.cc:56268
 #, gcc-internal-format
-msgid "%<atomic_cancel%>"
+msgid "%qD does not refer to a namespace scope function"
 msgstr ""
 
-#: cp/parser.cc:53187 cp/semantics.cc:12168
+#: cp/parser.cc:56438 cp/parser.cc:56977
 #, gcc-internal-format
-msgid "%<__transaction_relaxed%> without transactional memory support enabled"
+msgid "OpenMP directives may not appear in %<constexpr%> functions"
 msgstr ""
 
-#: cp/parser.cc:53189 cp/semantics.cc:12170
+#. cancel-and-throw is unimplemented.
+#: cp/parser.cc:56649
 #, gcc-internal-format
-msgid "%<__transaction_atomic%> without transactional memory support enabled"
+msgid "%<atomic_cancel%>"
 msgstr ""
 
-#: cp/parser.cc:53335
+#: cp/parser.cc:56844
 #, gcc-internal-format
 msgid ""
 "outer %<__transaction_cancel%> not within outer %<__transaction_atomic%>"
 msgstr ""
 
-#: cp/parser.cc:53338
+#: cp/parser.cc:56847
 #, gcc-internal-format
 msgid "  or a %<transaction_may_cancel_outer%> function"
 msgstr ""
 
-#: cp/parser.cc:53385
+#: cp/parser.cc:56894
 #, gcc-internal-format
 msgid "malformed %<#pragma GCC pch_preprocess%>"
 msgstr ""
 
-#: cp/parser.cc:53714
+#: cp/parser.cc:57231
 #, gcc-internal-format
 msgid "%<#pragma omp requires%> may only be used at file or namespace scope"
 msgstr ""
 
-#: cp/parser.cc:53725
+#: cp/parser.cc:57242
 #, gcc-internal-format
 msgid "%<#pragma omp assumes%> may only be used at file or namespace scope"
 msgstr ""
 
-#: cp/parser.cc:53812
+#: cp/parser.cc:57329
 #, gcc-internal-format
 msgid "%<#pragma GCC %s%> must be inside a function"
 msgstr ""
 
-#: cp/parser.cc:53954
+#: cp/parser.cc:57471
 #, gcc-internal-format
 msgid "multi-source compilation not implemented for C++"
 msgstr ""
 
-#: cp/parser.cc:53991
+#: cp/parser.cc:57611
 #, gcc-internal-format
 msgid "placeholder type not allowed in this context"
 msgstr ""
 
-#: cp/parser.cc:54200
+#: cp/parser.cc:57713
 #, gcc-internal-format
 msgid "implicit templates may not be %<virtual%>"
 msgstr ""
 
-#: cp/parser.cc:54256
+#: cp/parser.cc:57769
 #, gcc-internal-format
 msgid "%<extern \"C\"%> linkage started here"
 msgstr ""
 
-#: cp/pt.cc:312
+#: cp/pt.cc:322
 #, gcc-internal-format
 msgid "data member %qD cannot be a member template"
 msgstr ""
 
-#: cp/pt.cc:325
+#: cp/pt.cc:335
 #, gcc-internal-format
 msgid "invalid member template declaration %qD"
 msgstr ""
 
-#: cp/pt.cc:779
+#: cp/pt.cc:789
 #, gcc-internal-format
 msgid "explicit specialization in non-namespace scope %qD"
 msgstr ""
 
-#: cp/pt.cc:793
+#: cp/pt.cc:803
 #, gcc-internal-format
 msgid "enclosing class templates are not explicitly specialized"
 msgstr ""
 
-#: cp/pt.cc:877
+#: cp/pt.cc:887
 #, gcc-internal-format
 msgid "specialization of %qD must appear at namespace scope"
 msgstr ""
 
-#: cp/pt.cc:888 cp/pt.cc:1130
+#: cp/pt.cc:898 cp/pt.cc:1145
 #, gcc-internal-format
 msgid "specialization of %qD in different namespace"
 msgstr ""
 
-#: cp/pt.cc:890
+#: cp/pt.cc:900
 #, gcc-internal-format
 msgid "  from definition of %q#D"
 msgstr ""
 
-#: cp/pt.cc:907
+#: cp/pt.cc:917
 #, gcc-internal-format
 msgid ""
 "explicit instantiation of %qD in namespace %qD (which does not enclose "
 "namespace %qD)"
 msgstr ""
 
-#: cp/pt.cc:1041
+#: cp/pt.cc:1056
 #, gcc-internal-format
 msgid "name of class shadows template template parameter %qD"
 msgstr ""
 
-#: cp/pt.cc:1053
+#: cp/pt.cc:1068
 #, gcc-internal-format
 msgid "specialization of alias template %qD"
 msgstr ""
 
-#: cp/pt.cc:1056 cp/pt.cc:1202
+#: cp/pt.cc:1071 cp/pt.cc:1217
 #, gcc-internal-format
 msgid "explicit specialization of non-template %qT"
 msgstr ""
 
-#: cp/pt.cc:1088
+#: cp/pt.cc:1103
 #, gcc-internal-format
 msgid "specialization of %qT after instantiation"
 msgstr ""
 
-#: cp/pt.cc:1133
+#: cp/pt.cc:1148
 #, gcc-internal-format
 msgid "from definition of %q#D"
 msgstr ""
 
 #. But if we've had an implicit instantiation, that's a
 #. problem ([temp.expl.spec]/6).
-#: cp/pt.cc:1175
+#: cp/pt.cc:1190
 #, gcc-internal-format
 msgid "specialization %qT after instantiation %qT"
 msgstr ""
 
-#: cp/pt.cc:1198
+#: cp/pt.cc:1213
 #, gcc-internal-format
 msgid "template specialization of %qD not allowed by ISO C++"
 msgstr ""
 
-#: cp/pt.cc:1571
+#: cp/pt.cc:1586
 #, gcc-internal-format
 msgid "specialization of %qD after instantiation"
 msgstr ""
 
-#: cp/pt.cc:2067 cp/semantics.cc:6725
+#: cp/pt.cc:2085
+#, gcc-internal-format, gfc-internal-format
+msgid "there is %i candidate"
+msgid_plural "there are %i candidates"
+msgstr[0] ""
+msgstr[1] ""
+
+#: cp/pt.cc:2112
+#, gcc-internal-format
+msgid "candidate is: %#qD"
+msgstr ""
+
+#: cp/pt.cc:2121
 #, gcc-internal-format
-msgid "%s %#qD"
+msgid "candidate %i: %#qD"
 msgstr ""
 
-#: cp/pt.cc:2207
+#: cp/pt.cc:2254
 #, gcc-internal-format
 msgid "%qD is not a function template"
 msgstr ""
 
-#: cp/pt.cc:2212
+#: cp/pt.cc:2259
 #, gcc-internal-format
 msgid "%qD is not a variable template"
 msgstr ""
 
-#: cp/pt.cc:2496
+#: cp/pt.cc:2543
 #, gcc-internal-format
 msgid "template-id %qD for %q+D does not match any template declaration"
 msgstr ""
 
-#: cp/pt.cc:2500
+#: cp/pt.cc:2547
 #, gcc-internal-format
 msgid ""
 "saw %d %<template<>%>, need %d for specializing a member function template"
 msgstr ""
 
-#: cp/pt.cc:2511
+#: cp/pt.cc:2558
 #, gcc-internal-format
 msgid "ambiguous template specialization %qD for %q+D"
 msgstr ""
 
-#: cp/pt.cc:2715
+#: cp/pt.cc:2761
 #, gcc-internal-format
 msgid ""
 "variable templates only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/pt.cc:2725
+#: cp/pt.cc:2771
 #, gcc-internal-format
 msgid "too many template headers for %qD (should be %d)"
 msgstr ""
 
-#: cp/pt.cc:2731
+#: cp/pt.cc:2777
 #, gcc-internal-format
 msgid ""
 "members of an explicitly specialized class are defined without a template "
 "header"
 msgstr ""
 
-#: cp/pt.cc:2755
+#: cp/pt.cc:2801
 #, gcc-internal-format
 msgid ""
 "explicit specialization of %qD outside its namespace must use a nested-name-"
@@ -68903,77 +72011,77 @@ msgid ""
 msgstr ""
 
 #. This was allowed in C++98, so only pedwarn.
-#: cp/pt.cc:2760
+#: cp/pt.cc:2806
 #, gcc-internal-format
 msgid ""
 "explicit instantiation of %qD outside its namespace must use a nested-name-"
 "specifier"
 msgstr ""
 
-#: cp/pt.cc:2796
+#: cp/pt.cc:2842
 #, gcc-internal-format
 msgid "explicit specialization %q#D may be missing attributes"
 msgstr ""
 
-#: cp/pt.cc:2802
+#: cp/pt.cc:2848
 msgid "missing primary template attributes %e"
 msgstr ""
 
-#: cp/pt.cc:2803
+#: cp/pt.cc:2849
 msgid "missing primary template attribute %e"
 msgstr ""
 
-#: cp/pt.cc:2896 cp/pt.cc:2956
+#: cp/pt.cc:2942 cp/pt.cc:3002
 #, gcc-internal-format
 msgid "template-id %qE in declaration of primary template"
 msgstr ""
 
-#: cp/pt.cc:2909
+#: cp/pt.cc:2955
 #, gcc-internal-format
 msgid "template parameter list used in explicit instantiation"
 msgstr ""
 
-#: cp/pt.cc:2915
+#: cp/pt.cc:2961
 #, gcc-internal-format
 msgid "definition provided for explicit instantiation"
 msgstr ""
 
-#: cp/pt.cc:2923
+#: cp/pt.cc:2969
 #, gcc-internal-format
 msgid "too many template parameter lists in declaration of %qD"
 msgstr ""
 
-#: cp/pt.cc:2926
+#: cp/pt.cc:2972
 #, gcc-internal-format
 msgid "too few template parameter lists in declaration of %qD"
 msgstr ""
 
-#: cp/pt.cc:2928
+#: cp/pt.cc:2974
 #, gcc-internal-format
 msgid "explicit specialization of %qD must be introduced by %<template <>%>"
 msgstr ""
 
-#: cp/pt.cc:2934
+#: cp/pt.cc:2980
 #, gcc-internal-format
 msgid "explicit specialization declared %<concept%>"
 msgstr ""
 
-#: cp/pt.cc:2967
+#: cp/pt.cc:3013
 #, gcc-internal-format
 msgid "non-type partial specialization %qE is not allowed"
 msgstr ""
 
-#: cp/pt.cc:2971
+#: cp/pt.cc:3017
 #, gcc-internal-format
 msgid "non-class, non-variable partial specialization %qE is not allowed"
 msgstr ""
 
-#: cp/pt.cc:3003
+#: cp/pt.cc:3049
 #, gcc-internal-format
 msgid "default argument specified in explicit specialization"
 msgstr ""
 
-#: cp/pt.cc:3046
+#: cp/pt.cc:3092
 #, gcc-internal-format
 msgid "%qD is not a template function"
 msgstr ""
@@ -68986,89 +72094,89 @@ msgstr ""
 #. program is ill-formed.
 #.
 #. Similar language is found in [temp.explicit].
-#: cp/pt.cc:3108
+#: cp/pt.cc:3154
 #, gcc-internal-format
 msgid "specialization of implicitly-declared special member function"
 msgstr ""
 
-#: cp/pt.cc:3124
+#: cp/pt.cc:3170
 #, gcc-internal-format
 msgid "no member function %qD declared in %qT"
 msgstr ""
 
-#: cp/pt.cc:3155
+#: cp/pt.cc:3201
 #, gcc-internal-format
 msgid "friend declaration %qD is not visible to explicit specialization"
 msgstr ""
 
-#: cp/pt.cc:3158
+#: cp/pt.cc:3204
 #, gcc-internal-format
 msgid "friend declaration here"
 msgstr ""
 
-#: cp/pt.cc:3835
+#: cp/pt.cc:3882
 #, gcc-internal-format
 msgid "argument to %<__integer_pack%> must be between 0 and %d"
 msgstr ""
 
-#: cp/pt.cc:4202
+#: cp/pt.cc:4249
 #, gcc-internal-format
 msgid "base initializer expansion %qT contains no parameter packs"
 msgstr ""
 
-#: cp/pt.cc:4269
+#: cp/pt.cc:4316
 #, gcc-internal-format
 msgid "expansion pattern %qT contains no parameter packs"
 msgstr ""
 
-#: cp/pt.cc:4271
+#: cp/pt.cc:4318
 #, gcc-internal-format
 msgid "expansion pattern %qE contains no parameter packs"
 msgstr ""
 
-#: cp/pt.cc:4386
+#: cp/pt.cc:4433
 #, gcc-internal-format
 msgid "parameter packs not expanded with %<...%>:"
 msgstr ""
 
-#: cp/pt.cc:4403 cp/pt.cc:5286
+#: cp/pt.cc:4450 cp/pt.cc:5333
 #, gcc-internal-format
 msgid "        %qD"
 msgstr ""
 
-#: cp/pt.cc:4405
+#: cp/pt.cc:4452
 #, gcc-internal-format, gfc-internal-format
 msgid "        %s"
 msgstr ""
 
-#: cp/pt.cc:4532
+#: cp/pt.cc:4579
 #, gcc-internal-format
 msgid "declaration of template parameter %q+D shadows template parameter"
 msgstr ""
 
-#: cp/pt.cc:4535
+#: cp/pt.cc:4582
 #, gcc-internal-format
 msgid "declaration of %q+#D shadows template parameter"
 msgstr ""
 
-#: cp/pt.cc:4537
+#: cp/pt.cc:4584
 #, gcc-internal-format
 msgid "template parameter %qD declared here"
 msgstr ""
 
-#: cp/pt.cc:5281
+#: cp/pt.cc:5328
 #, gcc-internal-format
 msgid "template parameters not deducible in partial specialization:"
 msgstr ""
 
-#: cp/pt.cc:5306
+#: cp/pt.cc:5353
 #, gcc-internal-format
 msgid ""
 "partial specialization %q+D does not specialize any template arguments; to "
 "define the primary template, remove the template argument list"
 msgstr ""
 
-#: cp/pt.cc:5310
+#: cp/pt.cc:5357
 #, gcc-internal-format
 msgid ""
 "partial specialization %q+D does not specialize any template arguments and "
@@ -69076,63 +72184,63 @@ msgid ""
 "template, remove the template argument list"
 msgstr ""
 
-#: cp/pt.cc:5314 cp/pt.cc:5326 cp/pt.cc:5335
+#: cp/pt.cc:5361 cp/pt.cc:5373 cp/pt.cc:5382
 #, gcc-internal-format
 msgid "primary template here"
 msgstr ""
 
-#: cp/pt.cc:5323
+#: cp/pt.cc:5370
 #, gcc-internal-format
 msgid ""
 "partial specialization is not more specialized than the primary template "
 "because it replaces multiple parameters with a pack expansion"
 msgstr ""
 
-#: cp/pt.cc:5334
+#: cp/pt.cc:5381
 #, gcc-internal-format
 msgid "too many arguments for partial specialization %qT"
 msgstr ""
 
-#: cp/pt.cc:5349
+#: cp/pt.cc:5396
 #, gcc-internal-format
 msgid "partial specialization %qD is not more specialized than"
 msgstr ""
 
-#: cp/pt.cc:5351
+#: cp/pt.cc:5398
 #, gcc-internal-format
 msgid "primary template %qD"
 msgstr ""
 
-#: cp/pt.cc:5393
+#: cp/pt.cc:5440
 #, gcc-internal-format
 msgid ""
 "parameter pack argument %qE must be at the end of the template argument list"
 msgstr ""
 
-#: cp/pt.cc:5396
+#: cp/pt.cc:5443
 #, gcc-internal-format
 msgid ""
 "parameter pack argument %qT must be at the end of the template argument list"
 msgstr ""
 
-#: cp/pt.cc:5458
+#: cp/pt.cc:5505
 #, gcc-internal-format
 msgid "type %qT of template argument %qE depends on a template parameter"
 msgid_plural "type %qT of template argument %qE depends on template parameters"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/pt.cc:5528
+#: cp/pt.cc:5575
 #, gcc-internal-format
 msgid "declaration of %qD ambiguates earlier template instantiation for %qD"
 msgstr ""
 
-#: cp/pt.cc:5532
+#: cp/pt.cc:5579
 #, gcc-internal-format
 msgid "partial specialization of %qD after instantiation of %qD"
 msgstr ""
 
-#: cp/pt.cc:5713
+#: cp/pt.cc:5760
 #, gcc-internal-format
 msgid "no default argument for %qD"
 msgstr ""
@@ -69141,52 +72249,52 @@ msgstr ""
 #. (DR 2032), or alias template can only have one
 #. parameter pack, at the end of the template
 #. parameter list.
-#: cp/pt.cc:5736
+#: cp/pt.cc:5783
 #, gcc-internal-format
 msgid "parameter pack %q+D must be at the end of the template parameter list"
 msgstr ""
 
-#: cp/pt.cc:5772
+#: cp/pt.cc:5819
 #, gcc-internal-format
 msgid ""
 "default template arguments may not be used in function template friend re-"
 "declaration"
 msgstr ""
 
-#: cp/pt.cc:5775
+#: cp/pt.cc:5822
 #, gcc-internal-format
 msgid ""
 "default template arguments may not be used in template friend declarations"
 msgstr ""
 
-#: cp/pt.cc:5778
+#: cp/pt.cc:5825
 #, gcc-internal-format
 msgid ""
 "default template arguments may not be used in function templates without %<-"
 "std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/pt.cc:5781
+#: cp/pt.cc:5828
 #, gcc-internal-format
 msgid "default template arguments may not be used in partial specializations"
 msgstr ""
 
-#: cp/pt.cc:5784 cp/pt.cc:5842
+#: cp/pt.cc:5831 cp/pt.cc:5889
 #, gcc-internal-format
 msgid "default argument for template parameter for class enclosing %qD"
 msgstr ""
 
-#: cp/pt.cc:5953
+#: cp/pt.cc:6000
 #, gcc-internal-format
 msgid "template %qD declared"
 msgstr ""
 
-#: cp/pt.cc:5961
+#: cp/pt.cc:6008
 #, gcc-internal-format
 msgid "template class without a name"
 msgstr ""
 
-#: cp/pt.cc:5969
+#: cp/pt.cc:6016
 #, gcc-internal-format
 msgid "member template %qD may not have virt-specifiers"
 msgstr ""
@@ -69196,577 +72304,572 @@ msgstr ""
 #. An allocation function can be a function
 #. template. ... Template allocation functions shall
 #. have two or more parameters.
-#: cp/pt.cc:5992
+#: cp/pt.cc:6039
 #, gcc-internal-format
 msgid "invalid template declaration of %qD"
 msgstr ""
 
-#: cp/pt.cc:6145
+#: cp/pt.cc:6192
 #, gcc-internal-format
 msgid "template definition of non-template %q#D"
 msgstr ""
 
-#: cp/pt.cc:6184
+#: cp/pt.cc:6231
 #, gcc-internal-format
 msgid "expected %d levels of template parms for %q#D, got %d"
 msgstr ""
 
-#: cp/pt.cc:6198
+#: cp/pt.cc:6245
 #, gcc-internal-format
 msgid "got %d template parameters for %q#D"
 msgstr ""
 
-#: cp/pt.cc:6201
+#: cp/pt.cc:6248
 #, gcc-internal-format
 msgid "got %d template parameters for %q#T"
 msgstr ""
 
-#: cp/pt.cc:6203
+#: cp/pt.cc:6250
 #, gcc-internal-format, gfc-internal-format
 msgid "  but %d required"
 msgstr ""
 
-#: cp/pt.cc:6225
+#: cp/pt.cc:6272
 #, gcc-internal-format
 msgid "template arguments to %qD do not match original template %qD"
 msgstr ""
 
-#: cp/pt.cc:6228
+#: cp/pt.cc:6275
 #, gcc-internal-format
 msgid "use %<template<>%> for an explicit specialization"
 msgstr ""
 
-#: cp/pt.cc:6250
+#: cp/pt.cc:6297
 #, gcc-internal-format
 msgid "redeclaration of %qD with different constraints"
 msgstr ""
 
-#: cp/pt.cc:6407
+#: cp/pt.cc:6454
 #, gcc-internal-format
 msgid "%qT is not a template type"
 msgstr ""
 
-#: cp/pt.cc:6420
+#: cp/pt.cc:6467
 #, gcc-internal-format
 msgid "template specifiers not specified in declaration of %qD"
 msgstr ""
 
-#: cp/pt.cc:6432
+#: cp/pt.cc:6479
 #, gcc-internal-format, gfc-internal-format
 msgid "redeclared with %d template parameter"
 msgid_plural "redeclared with %d template parameters"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/pt.cc:6436
+#: cp/pt.cc:6483
 #, gcc-internal-format
 msgid "previous declaration %qD used %d template parameter"
 msgid_plural "previous declaration %qD used %d template parameters"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/pt.cc:6470
+#: cp/pt.cc:6517
 #, gcc-internal-format
 msgid "template parameter %q+#D"
 msgstr ""
 
-#: cp/pt.cc:6472
+#: cp/pt.cc:6519
 #, gcc-internal-format
 msgid "redeclared here as %q#D"
 msgstr ""
 
-#: cp/pt.cc:6474
+#: cp/pt.cc:6521
 #, gcc-internal-format
 msgid "redeclared here"
 msgstr ""
 
-#: cp/pt.cc:6485
+#: cp/pt.cc:6532
 #, gcc-internal-format
 msgid "declaration of template parameter %q+#D with different constraints"
 msgstr ""
 
-#: cp/pt.cc:6488 cp/pt.cc:6516
+#: cp/pt.cc:6535 cp/pt.cc:6563
 #, gcc-internal-format
 msgid "original declaration appeared here"
 msgstr ""
 
-#: cp/pt.cc:6513
+#: cp/pt.cc:6560
 #, gcc-internal-format
 msgid "redeclaration of %q#D with different constraints"
 msgstr ""
 
-#: cp/pt.cc:6956 cp/pt.cc:7027
+#: cp/pt.cc:7010 cp/pt.cc:7082
 #, gcc-internal-format
 msgid "%qE is not a valid template argument for type %qT"
 msgstr ""
 
-#: cp/pt.cc:6959
+#: cp/pt.cc:7013
 #, gcc-internal-format
 msgid "it must be the address of a function with external linkage"
 msgstr ""
 
-#: cp/pt.cc:6962
+#: cp/pt.cc:7016
 #, gcc-internal-format
 msgid "it must be the name of a function with external linkage"
 msgstr ""
 
-#: cp/pt.cc:6976
+#: cp/pt.cc:7031
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because %qD has no linkage"
 msgstr ""
 
-#: cp/pt.cc:6980
+#: cp/pt.cc:7035
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because %qD does not have "
 "external linkage"
 msgstr ""
 
-#: cp/pt.cc:7030
+#: cp/pt.cc:7085
 #, gcc-internal-format
 msgid "it must be a pointer-to-member of the form %<&X::Y%>"
 msgstr ""
 
-#: cp/pt.cc:7032
+#: cp/pt.cc:7087
 #, gcc-internal-format
 msgid "because it is a member of %qT"
 msgstr ""
 
-#: cp/pt.cc:7101
+#: cp/pt.cc:7156
 #, gcc-internal-format
 msgid "  couldn%'t deduce template parameter %qD"
 msgstr ""
 
-#: cp/pt.cc:7110
+#: cp/pt.cc:7165
 #, gcc-internal-format
 msgid "  types %qT and %qT have incompatible cv-qualifiers"
 msgstr ""
 
-#: cp/pt.cc:7119
+#: cp/pt.cc:7174
 #, gcc-internal-format
 msgid "  mismatched types %qT and %qT"
 msgstr ""
 
-#: cp/pt.cc:7128
+#: cp/pt.cc:7183
 #, gcc-internal-format
 msgid "  template parameter %qD is not a parameter pack, but argument %qD is"
 msgstr ""
 
-#: cp/pt.cc:7139
+#: cp/pt.cc:7194
 #, gcc-internal-format
 msgid "  template argument %qE does not match pointer-to-member constant %qE"
 msgstr ""
 
-#: cp/pt.cc:7149
+#: cp/pt.cc:7204
 #, gcc-internal-format
 msgid "  %qE is not equivalent to %qE"
 msgstr ""
 
-#: cp/pt.cc:7158
+#: cp/pt.cc:7213
 #, gcc-internal-format
 msgid "  inconsistent parameter pack deduction with %qT and %qT"
 msgstr ""
 
-#: cp/pt.cc:7170
+#: cp/pt.cc:7225
 #, gcc-internal-format
 msgid "  deduced conflicting types for parameter %qT (%qT and %qT)"
 msgstr ""
 
-#: cp/pt.cc:7174
+#: cp/pt.cc:7229
 #, gcc-internal-format
 msgid "  deduced conflicting values for non-type parameter %qE (%qE and %qE)"
 msgstr ""
 
-#: cp/pt.cc:7185
+#: cp/pt.cc:7240
 #, gcc-internal-format
 msgid "  variable-sized array type %qT is not a valid template argument"
 msgstr ""
 
-#: cp/pt.cc:7196
+#: cp/pt.cc:7251
 #, gcc-internal-format
 msgid "  member function type %qT is not a valid template argument"
 msgstr ""
 
-#: cp/pt.cc:7208
+#: cp/pt.cc:7263
 #, gcc-internal-format, gfc-internal-format
 msgid "  candidate expects at least %d argument, %d provided"
 msgid_plural "  candidate expects at least %d arguments, %d provided"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/pt.cc:7213
+#: cp/pt.cc:7268
 #, gcc-internal-format, gfc-internal-format
 msgid "  candidate expects %d argument, %d provided"
 msgid_plural "  candidate expects %d arguments, %d provided"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/pt.cc:7239
+#: cp/pt.cc:7294
 #, gcc-internal-format
 msgid "  cannot convert %qE (type %qT) to type %qT"
 msgstr ""
 
-#: cp/pt.cc:7252
+#: cp/pt.cc:7307
 #, gcc-internal-format
 msgid "  %qT is an ambiguous base class of %qT"
 msgstr ""
 
-#: cp/pt.cc:7256
+#: cp/pt.cc:7311
 #, gcc-internal-format
 msgid "  %qT is not derived from %qT"
 msgstr ""
 
-#: cp/pt.cc:7267
+#: cp/pt.cc:7322
 #, gcc-internal-format
 msgid ""
 "  template parameters of a template template argument are inconsistent with "
 "other deduced template arguments"
 msgstr ""
 
-#: cp/pt.cc:7277
+#: cp/pt.cc:7332
 #, gcc-internal-format
 msgid "  cannot deduce a template for %qT from non-template type %qT"
 msgstr ""
 
-#: cp/pt.cc:7287
+#: cp/pt.cc:7342
 #, gcc-internal-format
 msgid "  template argument %qE does not match %qE"
 msgstr ""
 
-#: cp/pt.cc:7338
+#: cp/pt.cc:7393
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument of type %qT because %qE is not a "
 "variable or function"
 msgstr ""
 
-#: cp/pt.cc:7347
+#: cp/pt.cc:7402
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument of type %qT in C++98 because %qD does "
 "not have external linkage"
 msgstr ""
 
-#: cp/pt.cc:7357
+#: cp/pt.cc:7412
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument of type %qT because %qD has no linkage"
 msgstr ""
 
-#: cp/pt.cc:7374
+#: cp/pt.cc:7429
 #, gcc-internal-format
 msgid "the address of %qD is not a valid template argument"
 msgstr ""
 
-#: cp/pt.cc:7384
+#: cp/pt.cc:7439
 #, gcc-internal-format
 msgid ""
 "the address of the %qT subobject of %qD is not a valid template argument"
 msgstr ""
 
-#: cp/pt.cc:7391
+#: cp/pt.cc:7446
 #, gcc-internal-format
 msgid ""
 "the address of %qD is not a valid template argument because it does not have "
 "static storage duration"
 msgstr ""
 
-#: cp/pt.cc:7409
+#: cp/pt.cc:7469
 #, gcc-internal-format
 msgid ""
 "%qD is not a valid template argument because %qD is a variable, not the "
 "address of a variable"
 msgstr ""
 
-#: cp/pt.cc:7417
+#: cp/pt.cc:7473
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for %qT because it is not the address "
 "of a variable"
 msgstr ""
 
-#: cp/pt.cc:7549
+#: cp/pt.cc:7610
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because string literals "
 "can never be used in this context"
 msgstr ""
 
-#: cp/pt.cc:7714
+#: cp/pt.cc:7775
 #, gcc-internal-format
 msgid "in template argument for type %qT"
 msgstr ""
 
-#: cp/pt.cc:7728
+#: cp/pt.cc:7789
 #, gcc-internal-format
 msgid "template argument %qE for type %qT not a compile-time constant"
 msgstr ""
 
-#: cp/pt.cc:7814
+#: cp/pt.cc:7875
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because of conflicts in cv-"
 "qualification"
 msgstr ""
 
-#: cp/pt.cc:7822
+#: cp/pt.cc:7883
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because it is not an lvalue"
 msgstr ""
 
-#: cp/pt.cc:7840
+#: cp/pt.cc:7901
 #, gcc-internal-format
 msgid ""
 "%q#D is not a valid template argument for type %qT because a reference "
 "variable does not have a constant address"
 msgstr ""
 
-#: cp/pt.cc:7900
+#: cp/pt.cc:7961
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because it is a pointer"
 msgstr ""
 
-#: cp/pt.cc:7902
+#: cp/pt.cc:7963
 #, gcc-internal-format
 msgid "try using %qE instead"
 msgstr ""
 
-#: cp/pt.cc:7956
+#: cp/pt.cc:8017 cp/pt.cc:8049
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because it is of type %qT"
 msgstr ""
 
-#: cp/pt.cc:8547
+#: cp/pt.cc:8643
 #, gcc-internal-format
 msgid "ignoring attributes on template argument %qT"
 msgstr ""
 
-#: cp/pt.cc:8563
+#: cp/pt.cc:8659
 #, gcc-internal-format
 msgid "ignoring attributes in template argument %qE"
 msgstr ""
 
-#: cp/pt.cc:8693
+#: cp/pt.cc:8802
 #, gcc-internal-format
 msgid "injected-class-name %qD used as template template argument"
 msgstr ""
 
-#: cp/pt.cc:8722
+#: cp/pt.cc:8831
 #, gcc-internal-format
 msgid "invalid use of destructor %qE as a type"
 msgstr ""
 
-#: cp/pt.cc:8727
+#: cp/pt.cc:8836
 #, gcc-internal-format
 msgid "to refer to a type member of a template parameter, use %<typename %E%>"
 msgstr ""
 
-#: cp/pt.cc:8744 cp/pt.cc:8779 cp/pt.cc:8830
+#: cp/pt.cc:8853 cp/pt.cc:8888 cp/pt.cc:8939
 #, gcc-internal-format
 msgid "type/value mismatch at argument %d in template parameter list for %qD"
 msgstr ""
 
-#: cp/pt.cc:8752
+#: cp/pt.cc:8861
 #, gcc-internal-format
 msgid "  expected a constant of type %qT, got %qT"
 msgstr ""
 
-#: cp/pt.cc:8760
+#: cp/pt.cc:8869
 #, gcc-internal-format
 msgid ""
 "  ambiguous template argument for non-type template parameter is treated as "
 "function type"
 msgstr ""
 
-#: cp/pt.cc:8766
+#: cp/pt.cc:8875
 #, gcc-internal-format
 msgid "  expected a class template, got %qE"
 msgstr ""
 
-#: cp/pt.cc:8769
+#: cp/pt.cc:8878
 #, gcc-internal-format
 msgid "  expected a type, got %qE"
 msgstr ""
 
-#: cp/pt.cc:8784
+#: cp/pt.cc:8893
 #, gcc-internal-format
 msgid "  expected a type, got %qT"
 msgstr ""
 
-#: cp/pt.cc:8787
+#: cp/pt.cc:8896
 #, gcc-internal-format
 msgid "  expected a class template, got %qT"
 msgstr ""
 
-#: cp/pt.cc:8834
+#: cp/pt.cc:8943
 #, gcc-internal-format
 msgid "  expected a template of type %qD, got %qT"
 msgstr ""
 
-#: cp/pt.cc:8849
+#: cp/pt.cc:8958
 #, gcc-internal-format
 msgid "constraint mismatch at argument %d in template parameter list for %qD"
 msgstr ""
 
-#: cp/pt.cc:8852
+#: cp/pt.cc:8961
 #, gcc-internal-format
 msgid "  expected %qD but got %qD"
 msgstr ""
 
-#: cp/pt.cc:8940
+#: cp/pt.cc:9048
 #, gcc-internal-format
 msgid "could not convert template argument %qE from %qT to %qT"
 msgstr ""
 
-#: cp/pt.cc:9068 cp/pt.cc:9404
+#: cp/pt.cc:9176 cp/pt.cc:9512
 #, gcc-internal-format, gfc-internal-format
 msgid "template argument %d is invalid"
 msgstr ""
 
-#: cp/pt.cc:9083 cp/pt.cc:9229
+#: cp/pt.cc:9191 cp/pt.cc:9337
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong number of template arguments (%d, should be %d)"
 msgstr ""
 
-#: cp/pt.cc:9225
+#: cp/pt.cc:9333
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong number of template arguments (%d, should be at least %d)"
 msgstr ""
 
-#: cp/pt.cc:9234
+#: cp/pt.cc:9342
 #, gcc-internal-format
 msgid "provided for %qD"
 msgstr ""
 
-#: cp/pt.cc:9260
+#: cp/pt.cc:9368
 #, gcc-internal-format
 msgid ""
 "pack expansion argument for non-pack parameter %qD of alias template %qD"
 msgstr ""
 
-#: cp/pt.cc:9264
+#: cp/pt.cc:9372
 #, gcc-internal-format
 msgid "pack expansion argument for non-pack parameter %qD of concept %qD"
 msgstr ""
 
-#: cp/pt.cc:9365
+#: cp/pt.cc:9473
 #, gcc-internal-format
 msgid ""
 "so any instantiation with a non-empty parameter pack would be ill-formed"
 msgstr ""
 
-#: cp/pt.cc:9934
-#, gcc-internal-format
-msgid "instantiation exposes TU-local entity %qD"
-msgstr ""
-
-#: cp/pt.cc:9953
+#: cp/pt.cc:10050
 #, gcc-internal-format
 msgid "%q#D is not a function template"
 msgstr ""
 
-#: cp/pt.cc:10140
+#: cp/pt.cc:10245
 #, gcc-internal-format
 msgid "non-template type %qT used as a template"
 msgstr ""
 
-#: cp/pt.cc:10142
+#: cp/pt.cc:10247
 #, gcc-internal-format
 msgid "for template declaration %q+D"
 msgstr ""
 
-#: cp/pt.cc:10311 cp/pt.cc:22841
+#: cp/pt.cc:10416 cp/pt.cc:23566
 #, gcc-internal-format
 msgid "template constraint failure for %qD"
 msgstr ""
 
-#: cp/pt.cc:10661
+#: cp/pt.cc:10766
 #, gcc-internal-format
 msgid "use of invalid variable template %qE"
 msgstr ""
 
-#: cp/pt.cc:11392
+#: cp/pt.cc:11506
 #, gcc-internal-format
 msgid ""
 "template instantiation depth exceeds maximum of %d (use %<-ftemplate-"
 "depth=%> to increase the maximum)"
 msgstr ""
 
-#: cp/pt.cc:12216
+#: cp/pt.cc:12442
 #, gcc-internal-format
 msgid "score argument must be constant integer expression"
 msgstr ""
 
-#: cp/pt.cc:12225
+#: cp/pt.cc:12451
 #, gcc-internal-format
 msgid "score argument must be non-negative"
 msgstr ""
 
-#: cp/pt.cc:12252
+#: cp/pt.cc:12478
 #, gcc-internal-format
 msgid "property must be constant integer expression or string literal"
 msgstr ""
 
-#: cp/pt.cc:12256
+#: cp/pt.cc:12482
 #, gcc-internal-format
 msgid "property must be constant integer expression"
 msgstr ""
 
-#: cp/pt.cc:12484
+#: cp/pt.cc:12711
 #, gcc-internal-format
 msgid "instantiating erroneous template"
 msgstr ""
 
-#: cp/pt.cc:12485
+#: cp/pt.cc:12712
 #, gcc-internal-format
 msgid "first error appeared here"
 msgstr ""
 
-#: cp/pt.cc:12836
+#: cp/pt.cc:13080
 #, gcc-internal-format
 msgid "flexible array member %qD in union"
 msgstr ""
 
-#: cp/pt.cc:13355
+#: cp/pt.cc:13599
 #, gcc-internal-format
 msgid "fold of empty expansion over %O"
 msgstr ""
 
-#: cp/pt.cc:13826
+#: cp/pt.cc:14070
 #, gcc-internal-format
 msgid "%qE is not the entire pattern of the pack expansion"
 msgstr ""
 
-#: cp/pt.cc:13914
+#: cp/pt.cc:14180
 #, gcc-internal-format
 msgid "mismatched argument pack lengths while expanding %qT"
 msgstr ""
 
-#: cp/pt.cc:13917
+#: cp/pt.cc:14183
 #, gcc-internal-format
 msgid "mismatched argument pack lengths while expanding %qE"
 msgstr ""
 
-#: cp/pt.cc:14102
+#: cp/pt.cc:14388
 #, gcc-internal-format
 msgid "cannot index an empty pack"
 msgstr ""
 
-#: cp/pt.cc:14553
+#: cp/pt.cc:14844
 #, gcc-internal-format
 msgid "  when instantiating default argument for call to %qD"
 msgstr ""
 
-#: cp/pt.cc:14650
+#: cp/pt.cc:14941
 #, gcc-internal-format
 msgid "creating pointer to member function of non-class type %qT"
 msgstr ""
 
-#: cp/pt.cc:15640
+#: cp/pt.cc:15952
 #, gcc-internal-format, gfc-internal-format
 msgid "mismatched argument pack lengths (%d vs %d)"
 msgstr ""
@@ -69784,305 +72887,328 @@ msgstr ""
 #.
 #. is an attempt to declare a variable with function
 #. type.
-#: cp/pt.cc:15828
+#: cp/pt.cc:16154
 #, gcc-internal-format
 msgid "variable %qD has function type"
 msgstr ""
 
-#: cp/pt.cc:16034
+#: cp/pt.cc:16379
 #, gcc-internal-format
 msgid "invalid parameter type %qT"
 msgstr ""
 
-#: cp/pt.cc:16036
+#: cp/pt.cc:16381
 #, gcc-internal-format
 msgid "in declaration %q+D"
 msgstr ""
 
-#: cp/pt.cc:16163
+#: cp/pt.cc:16508
 #, gcc-internal-format
 msgid "function returning an array"
 msgstr ""
 
-#: cp/pt.cc:16165
+#: cp/pt.cc:16510
 #, gcc-internal-format
 msgid "function returning a function"
 msgstr ""
 
-#: cp/pt.cc:16896
+#: cp/pt.cc:16760
+#, gcc-internal-format
+msgid "%qE is not usable in a splice type"
+msgstr ""
+
+#: cp/pt.cc:16762
+#, gcc-internal-format
+msgid "%qE is not usable in a splice scope"
+msgstr ""
+
+#: cp/pt.cc:17323
 #, gcc-internal-format
 msgid "forming reference to void"
 msgstr ""
 
-#: cp/pt.cc:16898
+#: cp/pt.cc:17325
 #, gcc-internal-format
 msgid "forming pointer to reference type %qT"
 msgstr ""
 
-#: cp/pt.cc:16900
+#: cp/pt.cc:17327
 #, gcc-internal-format
 msgid "forming reference to reference type %qT"
 msgstr ""
 
-#: cp/pt.cc:16913
+#: cp/pt.cc:17340
 #, gcc-internal-format
 msgid "forming pointer to qualified function type %qT"
 msgstr ""
 
-#: cp/pt.cc:16916
+#: cp/pt.cc:17343
 #, gcc-internal-format
 msgid "forming reference to qualified function type %qT"
 msgstr ""
 
-#: cp/pt.cc:16969
+#: cp/pt.cc:17396
 #, gcc-internal-format
 msgid "creating pointer to member of non-class type %qT"
 msgstr ""
 
-#: cp/pt.cc:16975
+#: cp/pt.cc:17402
 #, gcc-internal-format
 msgid "creating pointer to member reference type %qT"
 msgstr ""
 
-#: cp/pt.cc:16981
+#: cp/pt.cc:17408
 #, gcc-internal-format
 msgid "creating pointer to member of type void"
 msgstr ""
 
-#: cp/pt.cc:17050
+#: cp/pt.cc:17477
 #, gcc-internal-format
 msgid "creating array of %qT"
 msgstr ""
 
-#: cp/pt.cc:17091
+#: cp/pt.cc:17518
 #, gcc-internal-format
 msgid "%qD expanded to more than one element"
 msgstr ""
 
-#: cp/pt.cc:17098
+#: cp/pt.cc:17525
 #, gcc-internal-format
 msgid "%qD is instantiated for an empty pack"
 msgstr ""
 
-#: cp/pt.cc:17119
+#: cp/pt.cc:17579
 #, gcc-internal-format
 msgid "%qT is not a class, struct, or union type"
 msgstr ""
 
-#: cp/pt.cc:17159
+#: cp/pt.cc:17613
 #, gcc-internal-format
 msgid "%qT resolves to %qT, which is not an enumeration type"
 msgstr ""
 
-#: cp/pt.cc:17167
+#: cp/pt.cc:17622
+#, gcc-internal-format
+msgid "%qT resolves to %qT, which is not a non-union class type"
+msgstr ""
+
+#: cp/pt.cc:17630
 #, gcc-internal-format
-msgid "%qT resolves to %qT, which is not a class type"
+msgid "%qT resolves to %qT, which is not a union type"
 msgstr ""
 
-#: cp/pt.cc:17290
+#: cp/pt.cc:17788
 #, gcc-internal-format
 msgid "use of %qs in template"
 msgstr ""
 
-#: cp/pt.cc:17609
+#. Lookup succeeded at parse time, but failed during
+#. instantiation; must be because we're trying to refer to it
+#. while forming its declaration (c++/120204).
+#: cp/pt.cc:17961
+#, gcc-internal-format
+msgid "declaration of %<%T::%D%> depends on itself"
+msgstr ""
+
+#: cp/pt.cc:18117
 #, gcc-internal-format
 msgid "qualifying type %qT does not match destructor name ~%qT"
 msgstr ""
 
-#: cp/pt.cc:17625
+#: cp/pt.cc:18133
 #, gcc-internal-format
 msgid ""
 "dependent-name %qE is parsed as a non-type, but instantiation yields a type"
 msgstr ""
 
-#: cp/pt.cc:17627
+#: cp/pt.cc:18135
 #, gcc-internal-format
 msgid "say %<typename %E%> if a type is meant"
 msgstr ""
 
-#: cp/pt.cc:17711
+#: cp/pt.cc:18219
 #, gcc-internal-format
 msgid "initializer for %q#D expands to an empty list of expressions"
 msgstr ""
 
-#: cp/pt.cc:19980 cp/pt.cc:22201
+#: cp/pt.cc:20597 cp/pt.cc:22894
 #, gcc-internal-format
 msgid "invalid use of pack expansion expression"
 msgstr ""
 
-#: cp/pt.cc:19984 cp/pt.cc:22205
+#: cp/pt.cc:20601 cp/pt.cc:22898
 #, gcc-internal-format
 msgid "use %<...%> to expand argument pack"
 msgstr ""
 
-#: cp/pt.cc:20131
+#: cp/pt.cc:20748
 #, gcc-internal-format
 msgid "empty initializer in lambda init-capture"
 msgstr ""
 
-#: cp/pt.cc:21437
+#: cp/pt.cc:22114
 #, gcc-internal-format
 msgid ""
 "%qD was not declared in this scope, and no declarations were found by "
 "argument-dependent lookup at the point of instantiation"
 msgstr ""
 
-#: cp/pt.cc:21472
+#: cp/pt.cc:22149
 #, gcc-internal-format
 msgid "declarations in dependent base %qT are not found by unqualified lookup"
 msgstr ""
 
-#: cp/pt.cc:21477
+#: cp/pt.cc:22154
 #, gcc-internal-format
 msgid "use %<this->%D%> instead"
 msgstr ""
 
-#: cp/pt.cc:21480
+#: cp/pt.cc:22157
 #, gcc-internal-format
 msgid "use %<%T::%D%> instead"
 msgstr ""
 
-#: cp/pt.cc:21485
+#: cp/pt.cc:22162
 #, gcc-internal-format
 msgid "%qD declared here, later in the translation unit"
 msgstr ""
 
-#: cp/pt.cc:21536
+#: cp/pt.cc:22213
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_convertvector%>"
 msgstr ""
 
-#: cp/pt.cc:21563
+#: cp/pt.cc:22240
 #, gcc-internal-format
 msgid "wrong number of arguments to %<assume%> attribute"
 msgstr ""
 
-#: cp/pt.cc:21802
+#: cp/pt.cc:22486
 #, gcc-internal-format
 msgid "%qT is not a class or namespace"
 msgstr ""
 
-#: cp/pt.cc:21805
+#: cp/pt.cc:22489
 #, gcc-internal-format
 msgid "%qD is not a class or namespace"
 msgstr ""
 
-#: cp/pt.cc:22121
+#: cp/pt.cc:22811
 #, gcc-internal-format
 msgid "using invalid field %qD"
 msgstr ""
 
-#: cp/pt.cc:22471
+#: cp/pt.cc:23196
 #, gcc-internal-format
 msgid "%qT is/uses unnamed type"
 msgstr ""
 
-#: cp/pt.cc:22473
+#: cp/pt.cc:23198
 #, gcc-internal-format
 msgid "template argument for %qD uses local type %qT"
 msgstr ""
 
-#: cp/pt.cc:22483
+#: cp/pt.cc:23208
 #, gcc-internal-format
 msgid "%qT is a variably modified type"
 msgstr ""
 
-#: cp/pt.cc:22498
+#: cp/pt.cc:23223
 #, gcc-internal-format
 msgid "integral expression %qE is not constant"
 msgstr ""
 
-#: cp/pt.cc:22516
+#: cp/pt.cc:23241
 #, gcc-internal-format
 msgid "  trying to instantiate %qD"
 msgstr ""
 
-#: cp/pt.cc:26953
+#: cp/pt.cc:27656
 #, gcc-internal-format
 msgid "ambiguous template instantiation for %q#T"
 msgstr ""
 
-#: cp/pt.cc:26955
+#: cp/pt.cc:27658
 #, gcc-internal-format
 msgid "ambiguous template instantiation for %q#D"
 msgstr ""
 
-#: cp/pt.cc:26961
+#: cp/pt.cc:27664
 msgid "%s %#qS"
 msgstr ""
 
-#: cp/pt.cc:26988 cp/pt.cc:27075
+#: cp/pt.cc:27691 cp/pt.cc:27778
 #, gcc-internal-format
 msgid "explicit instantiation of non-template %q#D"
 msgstr ""
 
-#: cp/pt.cc:27007
+#: cp/pt.cc:27710
 #, gcc-internal-format
 msgid "%qD is not a static data member of a class template"
 msgstr ""
 
-#: cp/pt.cc:27013 cp/pt.cc:27070
+#: cp/pt.cc:27716 cp/pt.cc:27773
 #, gcc-internal-format
 msgid "no matching template for %qD found"
 msgstr ""
 
-#: cp/pt.cc:27018
+#: cp/pt.cc:27721
 #, gcc-internal-format
 msgid ""
 "type %qT for explicit instantiation %qD does not match declared type %qT"
 msgstr ""
 
-#: cp/pt.cc:27026
+#: cp/pt.cc:27729
 #, gcc-internal-format
 msgid "explicit instantiation of %q#D"
 msgstr ""
 
-#: cp/pt.cc:27062
+#: cp/pt.cc:27765
 #, gcc-internal-format
 msgid "duplicate explicit instantiation of %q#D"
 msgstr ""
 
-#: cp/pt.cc:27085 cp/pt.cc:27152
+#: cp/pt.cc:27788 cp/pt.cc:27855
 #, gcc-internal-format
 msgid "ISO C++ 1998 forbids the use of %<extern%> on explicit instantiations"
 msgstr ""
 
-#: cp/pt.cc:27090 cp/pt.cc:27167
+#: cp/pt.cc:27793 cp/pt.cc:27870
 #, gcc-internal-format
 msgid "storage class %qD applied to template instantiation"
 msgstr ""
 
-#: cp/pt.cc:27124
+#: cp/pt.cc:27827
 #, gcc-internal-format
 msgid "explicit instantiation of non-class template %qD"
 msgstr ""
 
-#: cp/pt.cc:27127
+#: cp/pt.cc:27830
 #, gcc-internal-format
 msgid "explicit instantiation of non-template type %qT"
 msgstr ""
 
-#: cp/pt.cc:27136
+#: cp/pt.cc:27839
 #, gcc-internal-format
 msgid "explicit instantiation of %q#T before definition of template"
 msgstr ""
 
-#: cp/pt.cc:27157
+#: cp/pt.cc:27860
 #, gcc-internal-format
 msgid "ISO C++ forbids the use of %qE on explicit instantiations"
 msgstr ""
 
-#: cp/pt.cc:27197
+#: cp/pt.cc:27900
 #, gcc-internal-format
 msgid "duplicate explicit instantiation of %q#T"
 msgstr ""
 
-#: cp/pt.cc:27527
+#: cp/pt.cc:28232
 #, gcc-internal-format
 msgid "exception specification of %qD depends on itself"
 msgstr ""
 
-#: cp/pt.cc:27533
+#: cp/pt.cc:28238
 #, gcc-internal-format
 msgid ""
 "exception specification of %qD is not available until end of class definition"
@@ -70095,12 +73221,12 @@ msgstr ""
 #. member function or static data member of a class template
 #. shall be present in every translation unit in which it is
 #. explicitly instantiated.
-#: cp/pt.cc:28009
+#: cp/pt.cc:28718
 #, gcc-internal-format
 msgid "explicit instantiation of %qD but no definition available"
 msgstr ""
 
-#: cp/pt.cc:28055
+#: cp/pt.cc:28764
 #, gcc-internal-format
 msgid ""
 "template instantiation depth exceeds maximum of %d instantiating %q+D, "
@@ -70108,1039 +73234,1510 @@ msgid ""
 "increase the maximum)"
 msgstr ""
 
-#: cp/pt.cc:28430
+#: cp/pt.cc:29139
 #, gcc-internal-format
 msgid ""
 "non-type template parameters of deduced class type only available with %<-"
 "std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/pt.cc:28460
+#: cp/pt.cc:29169
 #, gcc-internal-format
 msgid ""
 "%qT is not a valid type for a template non-type parameter because it is not "
 "structural"
 msgstr ""
 
-#: cp/pt.cc:28469
+#: cp/pt.cc:29178
 #, gcc-internal-format
 msgid ""
 "non-type template parameters of class type only available with %<-std=c+"
 "+20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/pt.cc:28477
+#: cp/pt.cc:29186
 #, gcc-internal-format
 msgid "invalid template non-type parameter"
 msgstr ""
 
-#: cp/pt.cc:28479
+#: cp/pt.cc:29188
 #, gcc-internal-format
 msgid "%q#T is not a valid type for a template non-type parameter"
 msgstr ""
 
-#: cp/pt.cc:29942
+#: cp/pt.cc:30738
 #, gcc-internal-format
 msgid "keyword %<template%> not allowed in declarator-id"
 msgstr ""
 
-#: cp/pt.cc:30127
+#: cp/pt.cc:30934
 #, gcc-internal-format
 msgid "a concept cannot be constrained"
 msgstr ""
 
-#: cp/pt.cc:30136
+#: cp/pt.cc:30943
 #, gcc-internal-format
 msgid "concept %qE not in namespace scope"
 msgstr ""
 
-#: cp/pt.cc:30142
+#: cp/pt.cc:30949
 #, gcc-internal-format
 msgid "concept %qE has multiple template parameter lists"
 msgstr ""
 
-#: cp/pt.cc:30186
+#: cp/pt.cc:30993
 #, gcc-internal-format
 msgid ""
 "deducing from brace-enclosed initializer list requires %<#include "
 "<initializer_list>%>"
 msgstr ""
 
-#: cp/pt.cc:31457
+#: cp/pt.cc:32264
 #, gcc-internal-format
 msgid "non-deducible template %qT used without template arguments"
 msgstr ""
 
-#: cp/pt.cc:31470
+#: cp/pt.cc:32279
 #, gcc-internal-format
 msgid ""
 "alias template deduction only available with %<-std=c++20%> or %<-std=gnu+"
 "+20%>"
 msgstr ""
 
-#: cp/pt.cc:31476
+#: cp/pt.cc:32285
 #, gcc-internal-format
 msgid "use %qD directly instead"
 msgstr ""
 
-#: cp/pt.cc:31604
+#: cp/pt.cc:32413
 #, gcc-internal-format
 msgid ""
 "cannot deduce template arguments for copy-initialization of %qT, as it has "
 "no non-explicit deduction guides or user-declared constructors"
 msgstr ""
 
-#: cp/pt.cc:31611
+#: cp/pt.cc:32420
 #, gcc-internal-format
 msgid ""
 "cannot deduce template arguments of %qT, as it has no viable deduction guides"
 msgstr ""
 
-#: cp/pt.cc:31624
+#: cp/pt.cc:32433
 #, gcc-internal-format
 msgid "class template argument deduction failed:"
 msgstr ""
 
-#: cp/pt.cc:31627
+#: cp/pt.cc:32436
 #, gcc-internal-format
 msgid "explicit deduction guides not considered for copy-initialization"
 msgstr ""
 
-#: cp/pt.cc:31642
+#: cp/pt.cc:32451
 #, gcc-internal-format
 msgid ""
 "class template argument deduction for %qT failed: explicit deduction guide "
 "selected in copy-list-initialization"
 msgstr ""
 
-#: cp/pt.cc:31646
+#: cp/pt.cc:32455
 #, gcc-internal-format
 msgid "explicit deduction guide declared here"
 msgstr ""
 
-#: cp/pt.cc:31661
+#: cp/pt.cc:32470
 #, gcc-internal-format
 msgid "%qT may not intend to support class template argument deduction"
 msgstr ""
 
-#: cp/pt.cc:31663
+#: cp/pt.cc:32472
 #, gcc-internal-format
 msgid "add a deduction guide to suppress this warning"
 msgstr ""
 
-#: cp/pt.cc:31786
+#: cp/pt.cc:32603
 #, gcc-internal-format
 msgid "direct-list-initialization of %<auto%> requires exactly one element"
 msgstr ""
 
-#: cp/pt.cc:31789
+#: cp/pt.cc:32606
 #, gcc-internal-format
 msgid ""
-"for deduction to %<std::initializer_list%>, use copy-list-initialization (i."
-"e. add %<=%> before the %<{%>)"
+"for deduction to %<std::initializer_list%>, use copy-list-initialization "
+"(i.e. add %<=%> before the %<{%>)"
 msgstr ""
 
-#: cp/pt.cc:31849
+#: cp/pt.cc:32666
 #, gcc-internal-format
 msgid "unable to deduce lambda return type from %qE"
 msgstr ""
 
-#: cp/pt.cc:31852
+#: cp/pt.cc:32669
 #, gcc-internal-format
 msgid "unable to deduce %qT from %qE"
 msgstr ""
 
-#: cp/pt.cc:31927
+#: cp/pt.cc:32749
 #, gcc-internal-format
 msgid "placeholder constraints not satisfied"
 msgstr ""
 
-#: cp/pt.cc:31931
+#: cp/pt.cc:32753
 #, gcc-internal-format
 msgid "deduced initializer does not satisfy placeholder constraints"
 msgstr ""
 
-#: cp/pt.cc:31935
+#: cp/pt.cc:32757
 #, gcc-internal-format
 msgid "deduced return type does not satisfy placeholder constraints"
 msgstr ""
 
-#: cp/pt.cc:31939
+#: cp/pt.cc:32761
 #, gcc-internal-format
 msgid "deduced expression type does not satisfy placeholder constraints"
 msgstr ""
 
-#: cp/rtti.cc:306
+#: cp/reflect.cc:130
+#, gcc-internal-format
+msgid "%<^^%> cannot be applied to a placeholder type"
+msgstr ""
+
+#: cp/reflect.cc:137
+#, gcc-internal-format
+msgid "%<^^%> cannot be applied to a pack index"
+msgstr ""
+
+#: cp/reflect.cc:142
+#, gcc-internal-format
+msgid "%<^^%> cannot be applied to a non-type template parameter %qD"
+msgstr ""
+
+#: cp/reflect.cc:150
+#, gcc-internal-format
+msgid "%<^^%> cannot be applied to a capture %qD"
+msgstr ""
+
+#: cp/reflect.cc:157
+#, gcc-internal-format
+msgid ""
+"%<^^%> cannot be applied to a local parameter of a requires-expression %qD"
+msgstr ""
+
+#: cp/reflect.cc:173
+#, gcc-internal-format
+msgid ""
+"%<^^%> cannot be applied a local entity for which there is an intervening "
+"lambda expression"
+msgstr ""
+
+#: cp/reflect.cc:183
+#, gcc-internal-format
+msgid "%<^^%> cannot be applied to a using-declaration"
+msgstr ""
+
+#: cp/reflect.cc:189
+#, gcc-internal-format
+msgid "%<^^%> cannot be applied to a concept check"
+msgstr ""
+
+#: cp/reflect.cc:207
+#, gcc-internal-format
+msgid "cannot take the reflection of an overload set"
+msgstr ""
+
+#: cp/reflect.cc:410
+#, gcc-internal-format
+msgid "%<std::ranges%> is not a namespace"
+msgstr ""
+
+#: cp/reflect.cc:453
+#, gcc-internal-format
+msgid ""
+"%<reflect_constant_string%> called with %qT rather than %<char%>, "
+"%<wchar_t%>, %<char8_t%>, %<char16_t%> or %<char32_t%>"
+msgstr ""
+
+#: cp/reflect.cc:489
+#, gcc-internal-format
+msgid ""
+"%<reflect_constant_array%> argument with %qT which is not a structural type"
+msgstr ""
+
+#: cp/reflect.cc:503
+#, gcc-internal-format
+msgid ""
+"%<reflect_constant_array%> argument with %qT which is not copy constructible"
+msgstr ""
+
+#: cp/reflect.cc:525
+#, gcc-internal-format
+msgid ""
+"%<reflect_constant_array%> argument with %qT which is not constructible from "
+"%qT %<std::ranges::range_reference_t%>"
+msgstr ""
+
+#: cp/reflect.cc:654
+#, gcc-internal-format
+msgid ""
+"%<std::ranges::data%> or %<std::ranges::size%> are not customization point "
+"objects"
+msgstr ""
+
+#: cp/reflect.cc:821
+#, gcc-internal-format
+msgid "missing %<std::ranges::begin%> or %<std::ranges::end%>"
+msgstr ""
+
+#: cp/reflect.cc:839
+#, gcc-internal-format
+msgid "incorrect type %qT of %<std::ranges::begin(arg)%>"
+msgstr ""
+
+#: cp/reflect.cc:846
+#, gcc-internal-format
+msgid "incorrect type %qT of %<std::ranges::end(arg)%>"
+msgstr ""
+
+#: cp/reflect.cc:879
+#, gcc-internal-format
+msgid "unexpected type %qT of iterator dereference"
+msgstr ""
+
+#: cp/reflect.cc:947
+#, gcc-internal-format
+msgid "couldn%'t throw %qs"
+msgstr ""
+
+#: cp/reflect.cc:1046
+#, gcc-internal-format
+msgid "unexpected %<std::meta::operators%>"
+msgstr ""
+
+#: cp/reflect.cc:2671
+#, gcc-internal-format
+msgid "couldn%'t look up %<%D::%D%>"
+msgstr ""
+
+#: cp/reflect.cc:2959
+#, gcc-internal-format
+msgid "couldn%'t look up %qs"
+msgstr ""
+
+#: cp/reflect.cc:3113 cp/reflect.cc:3176 cp/reflect.cc:3231 cp/reflect.cc:3311
+#: cp/reflect.cc:6233
+#, gcc-internal-format
+msgid "unexpected return type of %qs"
+msgstr ""
+
+#: cp/reflect.cc:3856
+#, gcc-internal-format
+msgid ""
+"%qT must be a cv-unqualified structural type that is not a reference type"
+msgstr ""
+
+#: cp/reflect.cc:3880
+#, gcc-internal-format
+msgid "%qT must be an object type"
+msgstr ""
+
+#: cp/reflect.cc:3907
+#, gcc-internal-format
+msgid "%qT must be a function type"
+msgstr ""
+
+#: cp/reflect.cc:4784 cp/reflect.cc:4911
+#, gcc-internal-format
+msgid "couldn%'t instantiate %<std::%s<%T>%>"
+msgstr ""
+
+#: cp/reflect.cc:5515
+#, gcc-internal-format
+msgid "unexpected %<data_member_options%> argument"
+msgstr ""
+
+#: cp/reflect.cc:5884
+#, gcc-internal-format
+msgid "first %<define_aggregate%> argument is not a class type reflection"
+msgstr ""
+
+#: cp/reflect.cc:5892
+#, gcc-internal-format
+msgid "first %<define_aggregate%> argument is a reflection of a type alias"
+msgstr ""
+
+#: cp/reflect.cc:5900
+#, gcc-internal-format
+msgid ""
+"first %<define_aggregate%> argument is a cv-qualified class type reflection"
+msgstr ""
+
+#: cp/reflect.cc:5908
+#, gcc-internal-format
+msgid "first %<define_aggregate%> argument is a complete class type reflection"
+msgstr ""
+
+#: cp/reflect.cc:5916
+#, gcc-internal-format
+msgid ""
+"first %<define_aggregate%> argument is a reflection of a class type %qT "
+"being defined"
+msgstr ""
+
+#: cp/reflect.cc:5929
+#, gcc-internal-format
+msgid "%<define_aggregate%> argument not a data member description"
+msgstr ""
+
+#: cp/reflect.cc:5937
+#, gcc-internal-format
+msgid ""
+"%<define_aggregate%> argument data member description without complete type"
+msgstr ""
+
+#: cp/reflect.cc:5947
+#, gcc-internal-format
+msgid "name %qD used in multiple data member descriptions"
+msgstr ""
+
+#: cp/reflect.cc:5956
+#, gcc-internal-format
+msgid "cannot declare bit-field in %<warn_if_not_aligned%> type"
+msgstr ""
+
+#: cp/reflect.cc:5966
+#, gcc-internal-format
+msgid "%<define_aggregate%> not evaluated from %<consteval%> block"
+msgstr ""
+
+#: cp/reflect.cc:5987
+#, gcc-internal-format
+msgid ""
+"%<define_aggregate%> evaluated from %<consteval%> block which encloses %qT "
+"being defined"
+msgstr ""
+
+#: cp/reflect.cc:5991 cp/reflect.cc:6074
+#, gcc-internal-format
+msgid "%<consteval%> block defined here"
+msgstr ""
+
+#: cp/reflect.cc:6007 cp/reflect.cc:6066
+#, gcc-internal-format
+msgid ""
+"%qD intervenes between %qT scope and %<consteval%> block "
+"%<define_aggregate%> is evaluated from"
+msgstr ""
+
+#: cp/reflect.cc:6011 cp/reflect.cc:6070
+#, gcc-internal-format
+msgid ""
+"%qT intervenes between %qT scope and %<consteval%> block "
+"%<define_aggregate%> is evaluated from"
+msgstr ""
+
+#: cp/reflect.cc:6022 cp/reflect.cc:6058
+#, gcc-internal-format
+msgid ""
+"%qD intervenes between %<consteval%> block %<define_aggregate%> is evaluated "
+"from and %qT scope"
+msgstr ""
+
+#: cp/reflect.cc:6026 cp/reflect.cc:6062
+#, gcc-internal-format
+msgid ""
+"%qT intervenes between %<consteval%> block %<define_aggregate%> is evaluated "
+"from and %qT scope"
+msgstr ""
+
+#: cp/reflect.cc:6036
+#, gcc-internal-format
+msgid ""
+"%<define_aggregate%> evaluated from %<consteval%> block enclosed by %qD "
+"while %qT type being defined is enclosed by %qD"
+msgstr ""
+
+#: cp/reflect.cc:6041
+#, gcc-internal-format
+msgid ""
+"%<define_aggregate%> evaluated from %<consteval%> block enclosed by %qD "
+"while %qT type being defined is enclosed by %qT"
+msgstr ""
+
+#: cp/reflect.cc:6046
+#, gcc-internal-format
+msgid ""
+"%<define_aggregate%> evaluated from %<consteval%> block enclosed by %qT "
+"while %qT type being defined is enclosed by %qD"
+msgstr ""
+
+#: cp/reflect.cc:6051
+#, gcc-internal-format
+msgid ""
+"%<define_aggregate%> evaluated from %<consteval%> block enclosed by %qT "
+"while %qT type being defined is enclosed by %qT"
+msgstr ""
+
+#: cp/reflect.cc:6212
+#, gcc-internal-format
+msgid ""
+"%<access_context::current%> used outside of manifestly constant-evaluation"
+msgstr ""
+
+#: cp/reflect.cc:6263
+#, gcc-internal-format
+msgid "invalid %<access_context%> argument"
+msgstr ""
+
+#: cp/reflect.cc:6274
+#, gcc-internal-format
+msgid "unexpected %<access_context::scope()%>"
+msgstr ""
+
+#: cp/reflect.cc:6284
+#, gcc-internal-format
+msgid "unexpected %<access_context::designating_class()%>"
+msgstr ""
+
+#: cp/reflect.cc:7047
+#, gcc-internal-format
+msgid "unexpected argument to %qs"
+msgstr ""
+
+#: cp/reflect.cc:7336
+#, gcc-internal-format
+msgid "unknown metafunction %qD"
+msgstr ""
+
+#: cp/reflect.cc:8010
+#, gcc-internal-format
+msgid "splice argument must be an expression of type %qs"
+msgstr ""
+
+#: cp/reflect.cc:8206
+#, gcc-internal-format
+msgid ""
+"consteval-only variable %qD not declared %<constexpr%> used outside a "
+"constant-evaluated context"
+msgstr ""
+
+#: cp/reflect.cc:8208
+#, gcc-internal-format
+msgid "add %<constexpr%>"
+msgstr ""
+
+#: cp/reflect.cc:8212
+#, gcc-internal-format
+msgid ""
+"consteval-only expressions are only allowed in a constant-evaluated context"
+msgstr ""
+
+#: cp/reflect.cc:8319
+#, gcc-internal-format
+msgid "function of consteval-only type must be declared %qs"
+msgstr ""
+
+#: cp/reflect.cc:8343 cp/reflect.cc:8359
+#, gcc-internal-format
+msgid "expected a reflection of an expression"
+msgstr ""
+
+#: cp/reflect.cc:8349 cp/reflect.cc:8353
+#, gcc-internal-format
+msgid "add %<typename%> to denote a type outside a type-only context"
+msgstr ""
+
+#: cp/reflect.cc:8372
+#, gcc-internal-format
+msgid "cannot use constructor or destructor %qD in a splice expression"
+msgstr ""
+
+#: cp/reflect.cc:8380
+#, gcc-internal-format
+msgid "cannot use an unnamed bit-field %qD in a splice expression"
+msgstr ""
+
+#: cp/reflect.cc:8393
+#, gcc-internal-format
+msgid "cannot implicitly reference a class member %qD through a splice"
+msgstr ""
+
+#: cp/reflect.cc:8407
+#, gcc-internal-format
+msgid ""
+"unary %<&%> applied to an anonymous union member %qD that is not a direct "
+"member of a named class"
+msgstr ""
+
+#: cp/reflect.cc:8426
+#, gcc-internal-format
+msgid ""
+"use of local variable with automatic storage from containing function in a "
+"splice expression"
+msgstr ""
+
+#: cp/reflect.cc:8439
+#, gcc-internal-format
+msgid "cannot use an annotation %qE in a splice expression"
+msgstr ""
+
+#: cp/reflect.cc:8448
+#, gcc-internal-format
+msgid "cannot use a data member specification in a splice expression"
+msgstr ""
+
+#: cp/rtti.cc:308
 #, gcc-internal-format
 msgid "cannot use %<typeid%> with %<-fno-rtti%>"
 msgstr ""
 
-#: cp/rtti.cc:319
+#: cp/rtti.cc:321
 #, gcc-internal-format
 msgid "must %<#include <typeinfo>%> before using %<typeid%>"
 msgstr ""
 
-#: cp/rtti.cc:420
+#: cp/rtti.cc:423
 #, gcc-internal-format
 msgid ""
 "cannot create type information for type %qT because it involves types of "
 "variable size"
 msgstr ""
 
-#: cp/rtti.cc:520
+#: cp/rtti.cc:524
 #, gcc-internal-format
 msgid "%<typeid%> of qualified function type %qT"
 msgstr ""
 
-#: cp/rtti.cc:710 cp/rtti.cc:726
+#: cp/rtti.cc:714 cp/rtti.cc:730
 #, gcc-internal-format
 msgid "%<dynamic_cast<%#T>(%#D)%> can never succeed"
 msgstr ""
 
-#: cp/rtti.cc:738
+#: cp/rtti.cc:742
 #, gcc-internal-format
 msgid "%<dynamic_cast%> not permitted with %<-fno-rtti%>"
 msgstr ""
 
-#: cp/rtti.cc:820
+#: cp/rtti.cc:824
 #, gcc-internal-format
 msgid "cannot %<dynamic_cast%> %qE (of type %q#T) to type %q#T (%s)"
 msgstr ""
 
-#: cp/search.cc:311
+#: cp/search.cc:312
 #, gcc-internal-format
 msgid "%qT is an ambiguous base of %qT"
 msgstr ""
 
-#: cp/search.cc:327
+#: cp/search.cc:328
 #, gcc-internal-format
 msgid "%qT is an inaccessible base of %qT"
 msgstr ""
 
-#: cp/search.cc:2006
+#: cp/search.cc:2007
 #, gcc-internal-format
 msgid "looser exception specification on overriding virtual function %q+#F"
 msgstr ""
 
-#: cp/search.cc:2009
+#: cp/search.cc:2010
 #, gcc-internal-format
 msgid "overridden function is %q#F"
 msgstr ""
 
-#: cp/search.cc:2084
+#: cp/search.cc:2085
 #, gcc-internal-format
 msgid "invalid covariant return type for %q#D"
 msgstr ""
 
-#: cp/search.cc:2086 cp/search.cc:2103 cp/search.cc:2120
+#: cp/search.cc:2087 cp/search.cc:2104 cp/search.cc:2121
 #, gcc-internal-format
 msgid "overridden function is %q#D"
 msgstr ""
 
-#: cp/search.cc:2099
+#: cp/search.cc:2100
 #, gcc-internal-format
 msgid "invalid covariant return type for %q+#D"
 msgstr ""
 
-#: cp/search.cc:2101
+#: cp/search.cc:2102
 #, gcc-internal-format
 msgid "conflicting return type specified for %q+#D"
 msgstr ""
 
-#: cp/search.cc:2118
+#: cp/search.cc:2119
 #, gcc-internal-format
 msgid "conflicting type attributes specified for %q+#D"
 msgstr ""
 
-#: cp/search.cc:2133
+#: cp/search.cc:2138
 #, gcc-internal-format
 msgid "%<consteval%> function %q+D overriding non-%<consteval%> function"
 msgstr ""
 
-#: cp/search.cc:2136
+#: cp/search.cc:2141
 #, gcc-internal-format
 msgid "non-%<consteval%> function %q+D overriding %<consteval%> function"
 msgstr ""
 
-#: cp/search.cc:2139 cp/search.cc:2168 cp/search.cc:2177 cp/search.cc:2188
-#: cp/search.cc:2213
+#: cp/search.cc:2144 cp/search.cc:2173 cp/search.cc:2182 cp/search.cc:2192
 #, gcc-internal-format
 msgid "overridden function is %qD"
 msgstr ""
 
-#: cp/search.cc:2155
+#: cp/search.cc:2160
 #, gcc-internal-format
 msgid "%qD declared %<transaction_safe_dynamic%>"
 msgstr ""
 
-#: cp/search.cc:2157
+#: cp/search.cc:2162
 #, gcc-internal-format
 msgid "overriding %qD declared %<transaction_safe%>"
 msgstr ""
 
-#: cp/search.cc:2165
+#: cp/search.cc:2170
 #, gcc-internal-format
 msgid "deleted function %q+D overriding non-deleted function"
 msgstr ""
 
-#: cp/search.cc:2174
+#: cp/search.cc:2179
 #, gcc-internal-format
 msgid "non-deleted function %q+D overriding deleted function"
 msgstr ""
 
-#: cp/search.cc:2185
-#, gcc-internal-format
-msgid "function with contracts %q+D overriding contractless function"
-msgstr ""
-
-#: cp/search.cc:2211
+#: cp/search.cc:2190
 #, gcc-internal-format
 msgid "virtual function %q+D overriding final function"
 msgstr ""
 
-#: cp/search.cc:2299
+#: cp/search.cc:2278
 #, gcc-internal-format
 msgid "%q+#D cannot be declared"
 msgstr ""
 
-#: cp/search.cc:2300
+#: cp/search.cc:2279
 #, gcc-internal-format
 msgid "  since %q+#D declared in base class"
 msgstr ""
 
-#: cp/search.cc:2306
+#: cp/search.cc:2285
 #, gcc-internal-format
 msgid "explicit object member function overrides virtual function"
 msgstr ""
 
-#: cp/search.cc:2309
+#: cp/search.cc:2288
 #, gcc-internal-format
 msgid "virtual function declared here"
 msgstr ""
 
-#: cp/semantics.cc:1294
+#: cp/semantics.cc:1300
 #, gcc-internal-format
 msgid ""
 "%<std::is_constant_evaluated%> always evaluates to true in %<if constexpr%>"
 msgstr ""
 
-#: cp/semantics.cc:1300
+#: cp/semantics.cc:1306
 #, gcc-internal-format
 msgid ""
 "%<std::is_constant_evaluated%> evaluates to true when checking if trivially "
 "empty iteration statement is trivial infinite loop"
 msgstr ""
 
-#: cp/semantics.cc:1305
+#: cp/semantics.cc:1311
 #, gcc-internal-format
 msgid ""
 "and evaluates to false when actually evaluating the condition in non-"
 "%<constexpr%> function"
 msgstr ""
 
-#: cp/semantics.cc:1310
+#: cp/semantics.cc:1316
 #, gcc-internal-format
 msgid ""
 "%<std::is_constant_evaluated%> always evaluates to false in a non-"
 "%<constexpr%> function"
 msgstr ""
 
-#: cp/semantics.cc:1314
+#: cp/semantics.cc:1320
 #, gcc-internal-format
 msgid ""
 "%<std::is_constant_evaluated%> always evaluates to true in a %<consteval%> "
 "function"
 msgstr ""
 
-#: cp/semantics.cc:1540
+#: cp/semantics.cc:1546
 #, gcc-internal-format
 msgid "suggest explicit braces around empty body in %<do%> statement"
 msgstr ""
 
-#: cp/semantics.cc:2108
+#: cp/semantics.cc:2129
 #, gcc-internal-format
 msgid "catching polymorphic type %q#T by value"
 msgstr ""
 
-#: cp/semantics.cc:2113
+#: cp/semantics.cc:2134
 #, gcc-internal-format
 msgid "catching type %q#T by value"
 msgstr ""
 
-#: cp/semantics.cc:2118
+#: cp/semantics.cc:2139
 #, gcc-internal-format
 msgid "catching non-reference type %q#T"
 msgstr ""
 
-#: cp/semantics.cc:2415
+#: cp/semantics.cc:2438
 #, gcc-internal-format
 msgid "type of %<asm%> operand %qE could not be determined"
 msgstr ""
 
-#: cp/semantics.cc:2567
+#: cp/semantics.cc:2592
 #, gcc-internal-format
 msgid "%<__label__%> declarations are only allowed in function scopes"
 msgstr ""
 
-#: cp/semantics.cc:2745
+#: cp/semantics.cc:2770
 #, gcc-internal-format
 msgid "invalid use of member %qD in static member function"
 msgstr ""
 
-#: cp/semantics.cc:2749
+#: cp/semantics.cc:2774
 #, gcc-internal-format
 msgid "invalid use of member %qD in constructor %<pre%> contract"
 msgstr ""
 
-#: cp/semantics.cc:2753
+#: cp/semantics.cc:2778
 #, gcc-internal-format
 msgid "invalid use of member %qD in destructor %<post%> contract"
 msgstr ""
 
-#: cp/semantics.cc:3021
+#: cp/semantics.cc:3046
 #, gcc-internal-format
 msgid "%qE missing template arguments"
 msgstr ""
 
-#: cp/semantics.cc:3081
+#: cp/semantics.cc:3106
 #, gcc-internal-format
 msgid ""
 "a statement expression is an insufficient context for overload resolution"
 msgstr ""
 
-#: cp/semantics.cc:3434
+#: cp/semantics.cc:3340
 #, gcc-internal-format
 msgid "cannot call a concept as a function"
 msgstr ""
 
-#: cp/semantics.cc:3514
+#: cp/semantics.cc:3550
 #, gcc-internal-format
 msgid "arguments to destructor are not allowed"
 msgstr ""
 
-#: cp/semantics.cc:3619
+#: cp/semantics.cc:3652
 #, gcc-internal-format
 msgid "%<this%> is unavailable for explicit object member functions"
 msgstr ""
 
-#: cp/semantics.cc:3631
+#: cp/semantics.cc:3664
 #, gcc-internal-format
 msgid "use explicit object parameter %qs instead"
 msgstr ""
 
-#: cp/semantics.cc:3635
+#: cp/semantics.cc:3668
 #, gcc-internal-format
 msgid "name the explicit object parameter"
 msgstr ""
 
-#: cp/semantics.cc:3640
+#: cp/semantics.cc:3673
 #, gcc-internal-format
 msgid "%<this%> is unavailable for static member functions"
 msgstr ""
 
-#: cp/semantics.cc:3642
+#: cp/semantics.cc:3675
 #, gcc-internal-format
-msgid "invalid use of %<this%> before it is valid"
+msgid "invalid use of %<this%> in a constructor %<pre%> condition"
 msgstr ""
 
-#: cp/semantics.cc:3644
+#: cp/semantics.cc:3677
 #, gcc-internal-format
-msgid "invalid use of %<this%> after it is valid"
+msgid "invalid use of %<this%> in a destructor %<post%> condition"
 msgstr ""
 
-#: cp/semantics.cc:3646
+#: cp/semantics.cc:3679
 #, gcc-internal-format
 msgid "invalid use of %<this%> in non-member function"
 msgstr ""
 
-#: cp/semantics.cc:3648
+#: cp/semantics.cc:3681
 #, gcc-internal-format
 msgid "invalid use of %<this%> at top level"
 msgstr ""
 
-#: cp/semantics.cc:3671
+#: cp/semantics.cc:3704
 #, gcc-internal-format
 msgid "invalid qualifying scope in pseudo-destructor name"
 msgstr ""
 
-#: cp/semantics.cc:3680 cp/typeck.cc:3109
+#: cp/semantics.cc:3713 cp/typeck.cc:3224
 #, gcc-internal-format
 msgid "qualified type %qT does not match destructor name ~%qT"
 msgstr ""
 
-#: cp/semantics.cc:3703
+#: cp/semantics.cc:3736
 #, gcc-internal-format
 msgid "%qE is not of type %qT"
 msgstr ""
 
-#: cp/semantics.cc:3817
+#: cp/semantics.cc:3855
 #, gcc-internal-format
 msgid "compound literal of non-object type %qT"
 msgstr ""
 
-#: cp/semantics.cc:3837
+#: cp/semantics.cc:3875
 #, gcc-internal-format
 msgid "%<auto{x}%> cannot be constrained"
 msgstr ""
 
-#: cp/semantics.cc:3842
+#: cp/semantics.cc:3883
 #, gcc-internal-format
 msgid "%<auto{x}%> only available with %<-std=c++23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: cp/semantics.cc:4034
+#: cp/semantics.cc:4089
 #, gcc-internal-format
 msgid "template type parameters must use the keyword %<class%> or %<typename%>"
 msgstr ""
 
-#: cp/semantics.cc:4087
+#: cp/semantics.cc:4142
 #, gcc-internal-format
 msgid ""
 "invalid use of type %qT as a default value for a template template-parameter"
 msgstr ""
 
-#: cp/semantics.cc:4091
+#: cp/semantics.cc:4146
 #, gcc-internal-format
 msgid "invalid default argument for a template template parameter"
 msgstr ""
 
-#: cp/semantics.cc:4108
+#: cp/semantics.cc:4163
 #, gcc-internal-format
 msgid "definition of %q#T inside template parameter list"
 msgstr ""
 
-#: cp/semantics.cc:4139
+#: cp/semantics.cc:4194
 #, gcc-internal-format
 msgid "invalid definition of qualified type %qT"
 msgstr ""
 
-#: cp/semantics.cc:4429
+#: cp/semantics.cc:4487
 #, gcc-internal-format
 msgid "invalid base-class specification"
 msgstr ""
 
-#: cp/semantics.cc:4595
+#: cp/semantics.cc:4674
 #, gcc-internal-format
 msgid "cannot capture member %qD of anonymous union"
 msgstr ""
 
-#: cp/semantics.cc:4613
+#: cp/semantics.cc:4692
 #, gcc-internal-format
 msgid "%qD is not captured"
 msgstr ""
 
-#: cp/semantics.cc:4617
+#: cp/semantics.cc:4696
 #, gcc-internal-format
 msgid "the lambda has no capture-default"
 msgstr ""
 
-#: cp/semantics.cc:4619
+#: cp/semantics.cc:4698
 #, gcc-internal-format
 msgid ""
 "lambda in local class %q+T cannot capture variables from the enclosing "
 "context"
 msgstr ""
 
-#: cp/semantics.cc:4635
+#: cp/semantics.cc:4714
 #, gcc-internal-format
 msgid "use of local variable with automatic storage from containing function"
 msgstr ""
 
-#: cp/semantics.cc:4637
+#: cp/semantics.cc:4716
 #, gcc-internal-format
 msgid "use of parameter from containing function"
 msgstr ""
 
-#: cp/semantics.cc:4767
+#: cp/semantics.cc:4849
 #, gcc-internal-format
 msgid "use of parameter outside function body"
 msgstr ""
 
-#: cp/semantics.cc:4777
+#: cp/semantics.cc:4859
 #, gcc-internal-format
 msgid "missing template arguments"
 msgstr ""
 
-#: cp/semantics.cc:4813
+#: cp/semantics.cc:4895
 #, gcc-internal-format
 msgid ""
 "template parameter %qD of type %qT is not allowed in an integral constant "
 "expression because it is not of integral or enumeration type"
 msgstr ""
 
-#: cp/semantics.cc:4864
+#: cp/semantics.cc:4950
 #, gcc-internal-format
 msgid "use of class template %qT as expression"
 msgstr ""
 
-#: cp/semantics.cc:4872
+#: cp/semantics.cc:4958
 #, gcc-internal-format
 msgid "request for member %qD is ambiguous in multiple inheritance lattice"
 msgstr ""
 
-#: cp/semantics.cc:4900
+#: cp/semantics.cc:4986
 #, gcc-internal-format
 msgid "%qD cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/semantics.cc:5053
+#: cp/semantics.cc:5030 cp/semantics.cc:5061
+#, gcc-internal-format
+msgid ""
+"%qD 'this' required when accessing a member within a constructor "
+"precondition or destructor postcondition contract check"
+msgstr ""
+
+#: cp/semantics.cc:5159
 #, gcc-internal-format
 msgid "type of %qE is unknown"
 msgstr ""
 
-#: cp/semantics.cc:5071 rust/backend/rust-tree.cc:5498
+#: cp/semantics.cc:5177 rust/backend/rust-tree.cc:5536
 #, gcc-internal-format
 msgid "%qT is not an enumeration type"
 msgstr ""
 
-#: cp/semantics.cc:5098
+#: cp/semantics.cc:5204
 #, gcc-internal-format
 msgid "pack index has non-integral type %qT"
 msgstr ""
 
-#: cp/semantics.cc:5105
+#: cp/semantics.cc:5211
 #, gcc-internal-format
 msgid "pack index is not an integral constant"
 msgstr ""
 
-#: cp/semantics.cc:5113
+#: cp/semantics.cc:5219
 #, gcc-internal-format
 msgid "pack index %qE is negative"
 msgstr ""
 
-#: cp/semantics.cc:5119
+#: cp/semantics.cc:5225
 #, gcc-internal-format
 msgid "pack index %qE is out of range for pack of length %qd"
 msgstr ""
 
 #. Parameter packs can only be used in templates
-#: cp/semantics.cc:5257
+#: cp/semantics.cc:5363
 #, gcc-internal-format
 msgid "parameter pack %<__bases%> only valid in template declaration"
 msgstr ""
 
-#: cp/semantics.cc:5289
+#: cp/semantics.cc:5395
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to destructor %<~%T%>"
 msgstr ""
 
-#: cp/semantics.cc:5303
+#: cp/semantics.cc:5409
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to member function %qD"
 msgstr ""
 
-#: cp/semantics.cc:5307
+#: cp/semantics.cc:5413
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to member function"
 msgstr ""
 
-#: cp/semantics.cc:5312
+#: cp/semantics.cc:5418
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to an enumerator %qD"
 msgstr ""
 
-#: cp/semantics.cc:5323
+#: cp/semantics.cc:5429
 #, gcc-internal-format
 msgid ""
 "%<offsetof%> within non-standard-layout type %qT is conditionally-supported"
 msgstr ""
 
-#: cp/semantics.cc:6527
+#: cp/semantics.cc:6633
 #, gcc-internal-format
 msgid "pointer-to-member mapping %qE not supported"
 msgstr ""
 
-#: cp/semantics.cc:6722
+#: cp/semantics.cc:6828
 #, gcc-internal-format
 msgid "user defined reduction lookup is ambiguous"
 msgstr ""
 
-#: cp/semantics.cc:6995
+#: cp/semantics.cc:6831
+#, gcc-internal-format
+msgid "%s %#qD"
+msgstr ""
+
+#: cp/semantics.cc:7192
 #, gcc-internal-format
 msgid "%qE in %<reduction%> clause is a zero size array"
 msgstr ""
 
-#: cp/semantics.cc:7041
+#: cp/semantics.cc:7238
 #, gcc-internal-format
 msgid "%qE has const type for %<reduction%>"
 msgstr ""
 
-#: cp/semantics.cc:7160
+#: cp/semantics.cc:7357
 #, gcc-internal-format
 msgid "user defined reduction with constructor initializer for base class %qT"
 msgstr ""
 
-#: cp/semantics.cc:7519
+#: cp/semantics.cc:7431
+#, gcc-internal-format
+msgid ""
+"%qT is not a struct, union or class type in %<#pragma omp declare mapper%>"
+msgstr ""
+
+#: cp/semantics.cc:7437
+#, gcc-internal-format
+msgid "%qT must not be a virtual base class in %<#pragma omp declare mapper%>"
+msgstr ""
+
+#: cp/semantics.cc:7743
 #, gcc-internal-format
 msgid "expected string literal or constant integer expression instead of %qE"
 msgstr ""
 
-#: cp/semantics.cc:7709
+#: cp/semantics.cc:7940
 #, gcc-internal-format
 msgid ""
 "modifier other than %<val%> specified in %<linear%> clause on %<simd%> or "
 "%<for%> constructs when using OpenMP 5.2 modifiers"
 msgstr ""
 
-#: cp/semantics.cc:7724
+#: cp/semantics.cc:7955
 #, gcc-internal-format
 msgid ""
 "linear clause with %qs modifier applied to non-reference variable with %qT "
 "type"
 msgstr ""
 
-#: cp/semantics.cc:7739
+#: cp/semantics.cc:7970
 #, gcc-internal-format
 msgid ""
 "linear clause applied to non-integral non-pointer variable with %qT type"
 msgstr ""
 
-#: cp/semantics.cc:7763
+#: cp/semantics.cc:7994
 #, gcc-internal-format
 msgid "linear step expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:7856 cp/semantics.cc:7988 cp/semantics.cc:8048
-#: cp/semantics.cc:8473 cp/semantics.cc:9641
+#: cp/semantics.cc:8087 cp/semantics.cc:8219 cp/semantics.cc:8279
+#: cp/semantics.cc:8715 cp/semantics.cc:10050
 #, gcc-internal-format
 msgid "%<this%> allowed in OpenMP only in %<declare simd%> clauses"
 msgstr ""
 
-#: cp/semantics.cc:7868 cp/semantics.cc:9654
+#: cp/semantics.cc:8099 cp/semantics.cc:10063
 #, gcc-internal-format
 msgid "%qD is not a variable in clause %qs"
 msgstr ""
 
-#: cp/semantics.cc:8001
+#: cp/semantics.cc:8232
 #, gcc-internal-format
 msgid "%qD is not a variable in clause %<firstprivate%>"
 msgstr ""
 
-#: cp/semantics.cc:8061
+#: cp/semantics.cc:8292
 #, gcc-internal-format
 msgid "%qD is not a variable in clause %<lastprivate%>"
 msgstr ""
 
-#: cp/semantics.cc:8132
+#: cp/semantics.cc:8363
 #, gcc-internal-format
 msgid "%<gang%> static expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8146
+#: cp/semantics.cc:8377
 #, gcc-internal-format
 msgid "%<gang%> static value must be positive"
 msgstr ""
 
-#: cp/semantics.cc:8184
+#: cp/semantics.cc:8416
 #, gcc-internal-format
 msgid "%<gang%> num expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8187
+#: cp/semantics.cc:8419
 #, gcc-internal-format
 msgid "%<vector%> length expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8191
+#: cp/semantics.cc:8423
 #, gcc-internal-format
 msgid "%<worker%> num expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8213
+#: cp/semantics.cc:8446
 #, gcc-internal-format
 msgid "%<gang%> num value must be positive"
 msgstr ""
 
-#: cp/semantics.cc:8217
+#: cp/semantics.cc:8450
 #, gcc-internal-format
 msgid "%<vector%> length value must be positive"
 msgstr ""
 
-#: cp/semantics.cc:8222
+#: cp/semantics.cc:8455
 #, gcc-internal-format
 msgid "%<worker%> num value must be positive"
 msgstr ""
 
-#: cp/semantics.cc:8298
+#: cp/semantics.cc:8540
 #, gcc-internal-format
 msgid "schedule chunk size expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8331
+#: cp/semantics.cc:8573
 #, gcc-internal-format
 msgid "%qs length expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8345
+#: cp/semantics.cc:8587
 #, gcc-internal-format
 msgid "%qs length expression must be positive constant integer expression"
 msgstr ""
 
-#: cp/semantics.cc:8365
+#: cp/semantics.cc:8607
 #, gcc-internal-format
 msgid "%<async%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8394
+#: cp/semantics.cc:8636
 #, gcc-internal-format
 msgid "%<thread_limit%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8424
+#: cp/semantics.cc:8666
 #, gcc-internal-format
 msgid "%<device%> id must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8455
+#: cp/semantics.cc:8697
 #, gcc-internal-format
 msgid "%<dist_schedule%> chunk size expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8484
+#: cp/semantics.cc:8726
 #, gcc-internal-format
 msgid "%qD is not a variable in %<aligned%> clause"
 msgstr ""
 
-#: cp/semantics.cc:8499
+#: cp/semantics.cc:8741
 #, gcc-internal-format
 msgid ""
 "%qE in %<aligned%> clause is neither a pointer nor an array nor a reference "
 "to pointer or array"
 msgstr ""
 
-#: cp/semantics.cc:8506
+#: cp/semantics.cc:8748
 #, gcc-internal-format
 msgid "%qD appears more than once in %<aligned%> clauses"
 msgstr ""
 
-#: cp/semantics.cc:8521
+#: cp/semantics.cc:8763
 #, gcc-internal-format
 msgid "%<aligned%> clause alignment expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8552
+#: cp/semantics.cc:8794
 #, gcc-internal-format
 msgid "%qD is not a variable in %<nontemporal%> clause"
 msgstr ""
 
-#: cp/semantics.cc:8563
+#: cp/semantics.cc:8805
 #, gcc-internal-format
 msgid "%qD appears more than once in %<nontemporal%> clauses"
 msgstr ""
 
-#: cp/semantics.cc:8580
+#: cp/semantics.cc:8822
 #, gcc-internal-format
 msgid "%<this%> not allowed in %<allocate%> clause"
 msgstr ""
 
-#: cp/semantics.cc:8592
+#: cp/semantics.cc:8834
 #, gcc-internal-format
 msgid "%qD is not a variable in %<allocate%> clause"
 msgstr ""
 
-#: cp/semantics.cc:8601
+#: cp/semantics.cc:8843
 #, gcc-internal-format
 msgid "%qD appears more than once in %<allocate%> clauses"
 msgstr ""
 
-#: cp/semantics.cc:8751
+#: cp/semantics.cc:8959
+#, gcc-internal-format
+msgid "class member %qE not yet supported in %<uses_allocators%> clause"
+msgstr ""
+
+#: cp/semantics.cc:9004
+#, gcc-internal-format
+msgid "modifiers cannot be used with predefined allocators"
+msgstr ""
+
+#: cp/semantics.cc:9073
+#, gcc-internal-format
+msgid "variable length traits arrays are not supported"
+msgstr ""
+
+#: cp/semantics.cc:9147
 #, gcc-internal-format
 msgid "%qD is not lvalue expression nor array section in %qs clause"
 msgstr ""
 
-#: cp/semantics.cc:9255
+#: cp/semantics.cc:9664
 #, gcc-internal-format
 msgid "template %qE in clause %qs"
 msgstr ""
 
-#: cp/semantics.cc:9258
+#: cp/semantics.cc:9667
 #, gcc-internal-format
 msgid "overloaded function name %qE in clause %qs"
 msgstr ""
 
-#: cp/semantics.cc:9328
+#: cp/semantics.cc:9737
 #, gcc-internal-format
 msgid "%<grainsize%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:9358
+#: cp/semantics.cc:9767
 #, gcc-internal-format
 msgid "%<priority%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:9388
+#: cp/semantics.cc:9797
 #, gcc-internal-format
 msgid "%<hint%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:9400
+#: cp/semantics.cc:9809
 #, gcc-internal-format
 msgid "%<hint%> expression must be constant integer expression"
 msgstr ""
 
-#: cp/semantics.cc:9417
+#: cp/semantics.cc:9826
 #, gcc-internal-format
 msgid "%<filter%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:9448
+#: cp/semantics.cc:9857
 #, gcc-internal-format
 msgid "%qs variable is neither a pointer nor reference to pointer"
 msgstr ""
 
-#: cp/semantics.cc:9458
+#: cp/semantics.cc:9867
 #, gcc-internal-format
 msgid ""
 "%qs variable is neither a pointer, nor an array nor reference to pointer or "
 "array"
 msgstr ""
 
-#: cp/semantics.cc:9542
+#: cp/semantics.cc:9951
 #, gcc-internal-format
 msgid "%<tile%> argument needs integral type"
 msgstr ""
 
-#: cp/semantics.cc:10106
+#: cp/semantics.cc:10520
 #, gcc-internal-format
 msgid ""
 "%<const%> qualified %qE without %<mutable%> member may appear only in "
 "%<shared%> or %<firstprivate%> clauses"
 msgstr ""
 
-#: cp/semantics.cc:10347
+#: cp/semantics.cc:10761
 #, gcc-internal-format
 msgid "%<threadprivate%> %qD is not file, namespace or block scope variable"
 msgstr ""
 
-#: cp/semantics.cc:10361
+#: cp/semantics.cc:10775
 #, gcc-internal-format
 msgid "%<threadprivate%> %qE directive not in %qT definition"
 msgstr ""
 
-#: cp/semantics.cc:11098
+#: cp/semantics.cc:11574
 #, gcc-internal-format
 msgid "difference between %qE and %qD does not have integer type"
 msgstr ""
 
-#: cp/semantics.cc:11596
+#: cp/semantics.cc:12072
 #, gcc-internal-format
 msgid "%<#pragma omp simd%> used with class iteration variable %qE"
 msgstr ""
 
-#: cp/semantics.cc:11920 cp/semantics.cc:11930
+#: cp/semantics.cc:12396 cp/semantics.cc:12406
 #, gcc-internal-format
 msgid "%<#pragma omp atomic update%> uses two different expressions for memory"
 msgstr ""
 
-#: cp/semantics.cc:12262
+#: cp/semantics.cc:12738
 #, gcc-internal-format
 msgid ""
 "constexpr string must be a string literal or object with %<size%> and "
 "%<data%> members"
 msgstr ""
 
-#: cp/semantics.cc:12278
+#: cp/semantics.cc:12754
 #, gcc-internal-format
 msgid ""
 "constexpr string %<size()%> must be implicitly convertible to %<std::size_t%>"
 msgstr ""
 
-#: cp/semantics.cc:12287
+#: cp/semantics.cc:12772
 #, gcc-internal-format
 msgid ""
 "constexpr string %<data()%> must be implicitly convertible to %<const char*%>"
 msgstr ""
 
-#: cp/semantics.cc:12325
+#: cp/semantics.cc:12825
 #, gcc-internal-format
 msgid "constexpr string %<size()%> must be a constant expression"
 msgstr ""
 
-#: cp/semantics.cc:12333
+#: cp/semantics.cc:12834
 #, gcc-internal-format
 msgid "constexpr string message %<size()%> %qE too large"
 msgstr ""
 
-#: cp/semantics.cc:12360
+#: cp/semantics.cc:12852
+#, gcc-internal-format
+msgid "unhandled return from %<data()%>"
+msgstr ""
+
+#: cp/semantics.cc:12951
 #, gcc-internal-format
 msgid "constexpr string %<data()[%d]%> must be a constant expression"
 msgstr ""
 
-#: cp/semantics.cc:12386
+#: cp/semantics.cc:12977
 #, gcc-internal-format
 msgid "constexpr string %<data()%> must be a core constant expression"
 msgstr ""
 
-#: cp/semantics.cc:12485
+#: cp/semantics.cc:13015
+#, gcc-internal-format
+msgid ""
+"could not convert constexpr string from UTF-8 encoding to source character "
+"set"
+msgstr ""
+
+#: cp/semantics.cc:13019
+#, gcc-internal-format
+msgid ""
+"could not convert constexpr string from ordinary literal encoding to source "
+"character set"
+msgstr ""
+
+#: cp/semantics.cc:13129
 #, gcc-internal-format
 msgid "static assertion failed: %.*s"
 msgstr ""
 
-#: cp/semantics.cc:12491
+#: cp/semantics.cc:13145
 #, gcc-internal-format
 msgid "non-constant condition for static assertion"
 msgstr ""
 
-#: cp/semantics.cc:12520
+#: cp/semantics.cc:13174
 #, gcc-internal-format
 msgid "argument to %<decltype%> must be an expression"
 msgstr ""
 
-#: cp/semantics.cc:12566
+#: cp/semantics.cc:13220
 #, gcc-internal-format
 msgid "%<decltype%> cannot resolve address of overloaded function"
 msgstr ""
 
-#: cp/semantics.cc:12870 rust/backend/rust-tree.cc:5212
+#: cp/semantics.cc:13495 cp/semantics.cc:13502
+#, gcc-internal-format
+msgid "%qT is not a non-union class type"
+msgstr ""
+
+#: cp/semantics.cc:13513 cp/typeck.cc:1926 cp/typeck.cc:1933
+#, gcc-internal-format
+msgid "%qT is not a standard-layout type"
+msgstr ""
+
+#: cp/semantics.cc:13574 rust/backend/rust-tree.cc:5250
 #, gcc-internal-format
 msgid ""
 "%<__builtin_is_pointer_interconvertible_with_class%> needs a single argument"
 msgstr ""
 
-#: cp/semantics.cc:12879 rust/backend/rust-tree.cc:5221
+#: cp/semantics.cc:13583 rust/backend/rust-tree.cc:5259
 #, gcc-internal-format
 msgid ""
 "%<__builtin_is_pointer_interconvertible_with_class%> argument is not pointer "
 "to member"
 msgstr ""
 
-#: cp/semantics.cc:13050 rust/backend/rust-tree.cc:5825
+#: cp/semantics.cc:13754 rust/backend/rust-tree.cc:5863
 #, gcc-internal-format
 msgid ""
 "%<__builtin_is_corresponding_member%> not well defined for anonymous unions"
 msgstr ""
 
-#: cp/semantics.cc:13074 rust/backend/rust-tree.cc:5869
+#: cp/semantics.cc:13778 rust/backend/rust-tree.cc:5907
 #, gcc-internal-format
 msgid "%<__builtin_is_corresponding_member%> needs two arguments"
 msgstr ""
 
-#: cp/semantics.cc:13085 rust/backend/rust-tree.cc:5879
+#: cp/semantics.cc:13789 rust/backend/rust-tree.cc:5917
 #, gcc-internal-format
 msgid "%<__builtin_is_corresponding_member%> argument is not pointer to member"
 msgstr ""
 
-#: cp/semantics.cc:13642
+#: cp/semantics.cc:13876
+#, gcc-internal-format
+msgid "%<__builtin_is_string_literal%> needs a single argument"
+msgstr ""
+
+#: cp/semantics.cc:13888
+#, gcc-internal-format
+msgid ""
+"%<__builtin_is_string_literal%> argument is not %<const char*%>, %<const "
+"wchar_t*%>, %<const char8_t*%>, %<const char16_t*%> or %<const char32_t*%>"
+msgstr ""
+
+#: cp/semantics.cc:14003
+#, gcc-internal-format
+msgid "checking %qs for type %qT with a destructor that cannot be called"
+msgstr ""
+
+#: cp/semantics.cc:14300
+#, gcc-internal-format
+msgid "%qs argument %qT is a reference"
+msgstr ""
+
+#: cp/semantics.cc:14471
 #, gcc-internal-format
 msgid "%qD is not a class or alias template"
 msgstr ""
 
-#: cp/semantics.cc:13883
+#: cp/semantics.cc:14702
 #, gcc-internal-format
 msgid "operand of fold expression has no unexpanded parameter packs"
 msgstr ""
 
-#: cp/semantics.cc:13943
+#: cp/semantics.cc:14762
 #, gcc-internal-format
 msgid "both arguments in binary fold have unexpanded parameter packs"
 msgstr ""
 
-#: cp/semantics.cc:13945
+#: cp/semantics.cc:14764
 #, gcc-internal-format
 msgid "no unexpanded parameter packs in binary fold"
 msgstr ""
 
-#: cp/semantics.cc:13962
+#: cp/semantics.cc:14781
 #, gcc-internal-format
 msgid ""
 "type %qT of argument to %<__builtin_launder%> is not a pointer to object type"
@@ -71149,791 +74746,937 @@ msgstr ""
 #. std::bit_cast for destination ARRAY_TYPE is not possible,
 #. as functions may not return an array, so don't bother trying
 #. to support this (and then deal with VLAs etc.).
-#: cp/semantics.cc:14012
+#: cp/semantics.cc:14831
 #, gcc-internal-format
 msgid "%<__builtin_bit_cast%> destination type %qT is an array type"
 msgstr ""
 
-#: cp/semantics.cc:14018
+#: cp/semantics.cc:14837
 #, gcc-internal-format
 msgid "%<__builtin_bit_cast%> destination type %qT is not trivially copyable"
 msgstr ""
 
-#: cp/semantics.cc:14045
+#: cp/semantics.cc:14843
+#, gcc-internal-format
+msgid "%<__builtin_bit_cast%> cannot be used with consteval-only types"
+msgstr ""
+
+#: cp/semantics.cc:14870
 #, gcc-internal-format
 msgid "%<__builtin_bit_cast%> source type %qT is not trivially copyable"
 msgstr ""
 
-#: cp/semantics.cc:14053
+#: cp/semantics.cc:14878
 #, gcc-internal-format
 msgid ""
 "%<__builtin_bit_cast%> source size %qE not equal to destination type size %qE"
 msgstr ""
 
-#: cp/tree.cc:1524 rust/backend/rust-tree.cc:2596
+#: cp/tree.cc:1611 rust/backend/rust-tree.cc:2609
 #, gcc-internal-format
 msgid "%qV qualifiers cannot be applied to %qT"
 msgstr ""
 
-#: cp/tree.cc:4571
+#: cp/tree.cc:4751
 #, gcc-internal-format
 msgid ""
 "%<-fabi-version=13%> (GCC 8.2) fixes the calling convention for %qT, which "
 "was accidentally changed in 8.1"
 msgstr ""
 
-#: cp/tree.cc:4575
+#: cp/tree.cc:4755
 #, gcc-internal-format
 msgid ""
 "%<-fabi-version=12%> (GCC 8.1) accidentally changes the calling convention "
 "for %qT"
 msgstr ""
 
-#: cp/tree.cc:4579
+#: cp/tree.cc:4759
 #, gcc-internal-format
 msgid " declared here"
 msgstr ""
 
-#: cp/tree.cc:4584
+#: cp/tree.cc:4764
 #, gcc-internal-format
 msgid ""
 "the calling convention for %qT changes in %<-fabi-version=13%> (GCC 8.2)"
 msgstr ""
 
-#: cp/tree.cc:4586
+#: cp/tree.cc:4766
 #, gcc-internal-format
 msgid " because all of its copy and move constructors are deleted"
 msgstr ""
 
-#: cp/tree.cc:5015
+#: cp/tree.cc:5047
+#, gcc-internal-format
+msgid "%qT is a floating-point type"
+msgstr ""
+
+#: cp/tree.cc:5052
+#, gcc-internal-format
+msgid "%qT is a fixed-point type"
+msgstr ""
+
+#: cp/tree.cc:5083
+#, gcc-internal-format
+msgid "%qD does not fill all bits of %q#T"
+msgstr ""
+
+#: cp/tree.cc:5091
+#, gcc-internal-format
+msgid "%qD has type %qT that does not have unique object representations"
+msgstr ""
+
+#: cp/tree.cc:5101
+#, gcc-internal-format
+msgid "%q#T has no data fields"
+msgstr ""
+
+#: cp/tree.cc:5113
+#, gcc-internal-format
+msgid "%<std::nullptr_t%> has padding bits and no value bits"
+msgstr ""
+
+#: cp/tree.cc:5142
+#, gcc-internal-format
+msgid "base %qT does not have unique object representations"
+msgstr ""
+
+#: cp/tree.cc:5154 cp/tree.cc:5164
+#, gcc-internal-format
+msgid "%qD with type %qT does not have unique object representations"
+msgstr ""
+
+#: cp/tree.cc:5190
+#, gcc-internal-format
+msgid "padding occurs between %qD and %qD"
+msgstr ""
+
+#: cp/tree.cc:5194
+#, gcc-internal-format
+msgid "unnamed bit-field inserts padding before %qD"
+msgstr ""
+
+#: cp/tree.cc:5198
+#, gcc-internal-format
+msgid "padding occurs before %qD"
+msgstr ""
+
+#: cp/tree.cc:5215
+#, gcc-internal-format
+msgid "padding occurs after %qD"
+msgstr ""
+
+#: cp/tree.cc:5218
+#, gcc-internal-format
+msgid "%qT has padding and no data fields"
+msgstr ""
+
+#: cp/tree.cc:5327
 #, gcc-internal-format
 msgid "base class %qT is not public"
 msgstr ""
 
-#: cp/tree.cc:5018
+#: cp/tree.cc:5330
 #, gcc-internal-format
 msgid "%qD is not public"
 msgstr ""
 
-#: cp/tree.cc:5025
+#: cp/tree.cc:5337
 #, gcc-internal-format
 msgid "%qD is mutable"
 msgstr ""
 
-#: cp/tree.cc:5033
+#: cp/tree.cc:5345
 #, gcc-internal-format
 msgid "%qD has a non-structural type"
 msgstr ""
 
-#: cp/tree.cc:5056
+#: cp/tree.cc:5368
 #, gcc-internal-format
 msgid "%qE attribute can only be applied to functions or parameters"
 msgstr ""
 
-#: cp/tree.cc:5077
+#: cp/tree.cc:5389
 #, gcc-internal-format
 msgid "%qE attribute argument must be a string constant"
 msgstr ""
 
-#: cp/tree.cc:5092
+#: cp/tree.cc:5404
 #, gcc-internal-format
 msgid ""
 "%qE attribute can only be applied to functions or to class or enumeration "
 "types"
 msgstr ""
 
-#: cp/tree.cc:5112 cp/tree.cc:5117
+#: cp/tree.cc:5424 cp/tree.cc:5429
 #, gcc-internal-format
 msgid "%qE attribute can only be applied to non-static data members"
 msgstr ""
 
-#: cp/tree.cc:5123
+#: cp/tree.cc:5435
 #, gcc-internal-format
 msgid "%qE attribute cannot be applied to a bit-field"
 msgstr ""
 
-#: cp/tree.cc:5143
+#: cp/tree.cc:5455
 #, gcc-internal-format
 msgid "%qE attribute takes no arguments"
 msgstr ""
 
-#: cp/tree.cc:5147
+#: cp/tree.cc:5459
 #, gcc-internal-format
 msgid ""
-"ISO C++ %qE attribute does not apply to functions; treating as %<[[gnu::"
-"%E]]%>"
+"ISO C++ %qE attribute does not apply to functions; treating as %<[[gnu::%E]]"
+"%>"
 msgstr ""
 
-#: cp/tree.cc:5170
+#: cp/tree.cc:5482
 #, gcc-internal-format
 msgid "%<alignas%> on function declaration"
 msgstr ""
 
-#: cp/tree.cc:5173
+#: cp/tree.cc:5485
 #, gcc-internal-format
 msgid "%<alignas%> on enumerated type"
 msgstr ""
 
-#: cp/tree.cc:5176
+#: cp/tree.cc:5488
 #, gcc-internal-format
 msgid "%<alignas%> on a type other than class"
 msgstr ""
 
-#: cp/tree.cc:5178
+#: cp/tree.cc:5490
 #, gcc-internal-format
 msgid "%<alignas%> on bit-field"
 msgstr ""
 
-#: cp/tree.cc:5181
+#: cp/tree.cc:5493
 #, gcc-internal-format
 msgid "%<alignas%> on a type alias"
 msgstr ""
 
-#: cp/tree.cc:5198 cp/tree.cc:5216
+#: cp/tree.cc:5510 cp/tree.cc:5528
 #, gcc-internal-format
 msgid "%qE on a type other than class or enumeration definition"
 msgstr ""
 
-#: cp/tree.cc:5200 cp/tree.cc:5218
+#: cp/tree.cc:5512 cp/tree.cc:5530
 #, gcc-internal-format
 msgid "%qE on unnamed bit-field"
 msgstr ""
 
-#: cp/tree.cc:5222
+#: cp/tree.cc:5534
 #, gcc-internal-format
 msgid "%qE on %<case%> or %<default%> label"
 msgstr ""
 
-#: cp/tree.cc:5314
+#: cp/tree.cc:5548
+#, gcc-internal-format
+msgid "%qE on declaration other than parameter or automatic variable"
+msgstr ""
+
+#: cp/tree.cc:5643
 #, gcc-internal-format
 msgid "requested %<init_priority%> is not an integer constant"
 msgstr ""
 
-#: cp/tree.cc:5336
+#: cp/tree.cc:5665
 #, gcc-internal-format
 msgid ""
 "can only use %qE attribute on file-scope definitions of objects of class type"
 msgstr ""
 
-#: cp/tree.cc:5344
+#: cp/tree.cc:5673
 #, gcc-internal-format
 msgid "requested %<init_priority%> %i is out of range [0, %i]"
 msgstr ""
 
-#: cp/tree.cc:5357
+#: cp/tree.cc:5686
 #, gcc-internal-format
 msgid "requested %<init_priority%> %i is reserved for internal use"
 msgstr ""
 
-#: cp/tree.cc:5388
+#: cp/tree.cc:5717
 #, gcc-internal-format
 msgid "redeclaration of %qD adds abi tag %qE"
 msgstr ""
 
-#: cp/tree.cc:5408
+#: cp/tree.cc:5737
 #, gcc-internal-format
 msgid "the %qE attribute requires arguments"
 msgstr ""
 
-#: cp/tree.cc:5419
+#: cp/tree.cc:5748
 #, gcc-internal-format
 msgid "arguments to the %qE attribute must be narrow string literals"
 msgstr ""
 
-#: cp/tree.cc:5433 cp/tree.cc:5447
+#: cp/tree.cc:5762 cp/tree.cc:5776
 #, gcc-internal-format
 msgid "arguments to the %qE attribute must contain valid identifiers"
 msgstr ""
 
-#: cp/tree.cc:5435
+#: cp/tree.cc:5764
 #, gcc-internal-format
 msgid "%<%c%> is not a valid first character for an identifier"
 msgstr ""
 
-#: cp/tree.cc:5449
+#: cp/tree.cc:5778
 #, gcc-internal-format
 msgid "%<%c%> is not a valid character in an identifier"
 msgstr ""
 
-#: cp/tree.cc:5473
+#: cp/tree.cc:5802
 #, gcc-internal-format
 msgid "%qE attribute applied to non-class, non-enum type %qT"
 msgstr ""
 
-#: cp/tree.cc:5479
+#: cp/tree.cc:5808
 #, gcc-internal-format
 msgid "%qE attribute applied to %qT after its definition"
 msgstr ""
 
-#: cp/tree.cc:5486
+#: cp/tree.cc:5815
 #, gcc-internal-format
 msgid "ignoring %qE attribute applied to template instantiation %qT"
 msgstr ""
 
-#: cp/tree.cc:5493
+#: cp/tree.cc:5822
 #, gcc-internal-format
 msgid "ignoring %qE attribute applied to template specialization %qT"
 msgstr ""
 
-#: cp/tree.cc:5515
+#: cp/tree.cc:5844
 #, gcc-internal-format
 msgid "%qE attribute applied to non-function, non-variable %qD"
 msgstr ""
 
-#: cp/tree.cc:5521
+#: cp/tree.cc:5850
 #, gcc-internal-format
 msgid "%qE attribute applied to extern \"C\" declaration %qD"
 msgstr ""
 
-#: cp/tree.cc:5554
+#: cp/tree.cc:5872
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument must be an expression that evaluates to true or false"
 msgstr ""
 
-#: cp/tree.cc:6505 rust/backend/rust-tree.cc:3176
+#: cp/tree.cc:5898
+#, gcc-internal-format
+msgid "annotation on a type other than class or enumeration definition"
+msgstr ""
+
+#: cp/tree.cc:5905
+#, gcc-internal-format
+msgid "annotation applied to a label"
+msgstr ""
+
+#: cp/tree.cc:5911
+#, gcc-internal-format
+msgid "annotation on unnamed bit-field"
+msgstr ""
+
+#: cp/tree.cc:5920
+#, gcc-internal-format
+msgid "annotation does not have structural type"
+msgstr ""
+
+#: cp/tree.cc:5935
+#, gcc-internal-format
+msgid "annotation does not have copy constructible type"
+msgstr ""
+
+#: cp/tree.cc:6909 rust/backend/rust-tree.cc:3189
 #, gcc-internal-format
 msgid "%<lang_*%> check: failed in %s, at %s:%d"
 msgstr ""
 
-#: cp/typeck.cc:628
+#: cp/typeck.cc:651
 #, gcc-internal-format
 msgid "comparison between distinct pointer types %qT and %qT lacks a cast"
 msgstr ""
 
-#: cp/typeck.cc:634
+#: cp/typeck.cc:657
 #, gcc-internal-format
 msgid "conversion between distinct pointer types %qT and %qT lacks a cast"
 msgstr ""
 
-#: cp/typeck.cc:640
+#: cp/typeck.cc:663
 #, gcc-internal-format
 msgid ""
 "conditional expression between distinct pointer types %qT and %qT lacks a "
 "cast"
 msgstr ""
 
-#: cp/typeck.cc:788
+#: cp/typeck.cc:811
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids comparison between pointer of type %<void *%> and pointer-to-"
 "function"
 msgstr ""
 
-#: cp/typeck.cc:793
+#: cp/typeck.cc:816
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids conversion between pointer of type %<void *%> and pointer-to-"
 "function"
 msgstr ""
 
-#: cp/typeck.cc:798
+#: cp/typeck.cc:821
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids conditional expression between pointer of type %<void *%> "
 "and pointer-to-function"
 msgstr ""
 
-#: cp/typeck.cc:877
+#: cp/typeck.cc:901
 #, gcc-internal-format
 msgid ""
 "comparison between distinct pointer-to-member types %qT and %qT lacks a cast"
 msgstr ""
 
-#: cp/typeck.cc:882
+#: cp/typeck.cc:906
 #, gcc-internal-format
 msgid ""
 "conversion between distinct pointer-to-member types %qT and %qT lacks a cast"
 msgstr ""
 
-#: cp/typeck.cc:887
+#: cp/typeck.cc:911
 #, gcc-internal-format
 msgid ""
 "conditional expression between distinct pointer-to-member types %qT and %qT "
 "lacks a cast"
 msgstr ""
 
-#: cp/typeck.cc:1738
+#: cp/typeck.cc:1760
 #, gcc-internal-format
 msgid "canonical types differ for identical types %qT and %qT"
 msgstr ""
 
-#: cp/typeck.cc:1745
+#: cp/typeck.cc:1767
 #, gcc-internal-format
 msgid "same canonical type node for different types %qT and %qT"
 msgstr ""
 
-#: cp/typeck.cc:2075
+#: cp/typeck.cc:1915
+#, gcc-internal-format
+msgid ""
+"%q#T and %q#T are not both the same type, layout-compatible enumerations, or "
+"layout-compatible standard-layout class types"
+msgstr ""
+
+#: cp/typeck.cc:1946
+#, gcc-internal-format
+msgid "the underlying type of %qT is %qT, but"
+msgstr ""
+
+#: cp/typeck.cc:1949
+#, gcc-internal-format
+msgid "the underlying type of %qT is %qT"
+msgstr ""
+
+#: cp/typeck.cc:1968
+#, gcc-internal-format
+msgid "%qD and %qD do not correspond"
+msgstr ""
+
+#: cp/typeck.cc:1975 cp/typeck.cc:1979 cp/typeck.cc:2067
+#, gcc-internal-format
+msgid "%qT has no member corresponding to %qD"
+msgstr ""
+
+#: cp/typeck.cc:2019
+#, gcc-internal-format
+msgid "%qT has %u field, but"
+msgid_plural "%qT has %u fields, but"
+msgstr[0] ""
+msgstr[1] ""
+
+#: cp/typeck.cc:2023
+#, gcc-internal-format
+msgid "%qT has %u field"
+msgid_plural "%qT has %u fields"
+msgstr[0] ""
+msgstr[1] ""
+
+#: cp/typeck.cc:2183
 #, gcc-internal-format
 msgid "invalid application of %qs to a member function"
 msgstr ""
 
-#: cp/typeck.cc:2173
+#: cp/typeck.cc:2288
 #, gcc-internal-format
 msgid "invalid application of %<sizeof%> to a bit-field"
 msgstr ""
 
-#: cp/typeck.cc:2181
+#: cp/typeck.cc:2296
 #, gcc-internal-format
 msgid "ISO C++ forbids applying %<sizeof%> to an expression of function type"
 msgstr ""
 
-#: cp/typeck.cc:2246
+#: cp/typeck.cc:2361
 #, gcc-internal-format
 msgid "invalid application of %<__alignof%> to a bit-field"
 msgstr ""
 
-#: cp/typeck.cc:2257
+#: cp/typeck.cc:2372
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids applying %<__alignof%> to an expression of function type"
 msgstr ""
 
-#: cp/typeck.cc:2341
+#: cp/typeck.cc:2456
 #, gcc-internal-format
 msgid "%<alignas%> argument has non-integral type %qT"
 msgstr ""
 
-#: cp/typeck.cc:2388 rust/backend/rust-tree.cc:3804
+#: cp/typeck.cc:2503 rust/backend/rust-tree.cc:3830
 #, gcc-internal-format
 msgid "invalid use of non-static member function of type %qT"
 msgstr ""
 
-#: cp/typeck.cc:2738
+#: cp/typeck.cc:2853
 #, gcc-internal-format
 msgid "ISO C++ forbids converting a string constant to %qT"
 msgstr ""
 
-#: cp/typeck.cc:2742
+#: cp/typeck.cc:2857
 #, gcc-internal-format
 msgid "deprecated conversion from string constant to %qT"
 msgstr ""
 
-#: cp/typeck.cc:2857 cp/typeck.cc:3424
+#: cp/typeck.cc:2972 cp/typeck.cc:3548
 #, gcc-internal-format
 msgid ""
 "request for member %qD in %qE, which is of pointer type %qT (maybe you meant "
 "to use %<->%> ?)"
 msgstr ""
 
-#: cp/typeck.cc:2861 cp/typeck.cc:3428
+#: cp/typeck.cc:2976 cp/typeck.cc:3552
 #, gcc-internal-format
 msgid "request for member %qD in %qE, which is of non-class type %qT"
 msgstr ""
 
-#: cp/typeck.cc:2895
+#: cp/typeck.cc:3010
 #, gcc-internal-format
 msgid "invalid use of non-static data member %qE"
 msgstr ""
 
-#: cp/typeck.cc:2972
+#: cp/typeck.cc:3087
 #, gcc-internal-format
 msgid ""
 "invalid access to non-static data member %qD in virtual base of NULL object"
 msgstr ""
 
-#: cp/typeck.cc:3124
+#: cp/typeck.cc:3239
 #, gcc-internal-format
 msgid "object type %qT does not match destructor name ~%qT"
 msgstr ""
 
-#: cp/typeck.cc:3133
+#: cp/typeck.cc:3248
 #, gcc-internal-format
 msgid "the type being destroyed is %qT, but the destructor refers to %qT"
 msgstr ""
 
-#: cp/typeck.cc:3275
+#: cp/typeck.cc:3390
 #, gcc-internal-format
 msgid "field %q#D can be accessed via %q#D"
 msgstr ""
 
 #. No hint.
-#: cp/typeck.cc:3294
+#: cp/typeck.cc:3409
 #, gcc-internal-format
 msgid "%q#T has no member named %qE"
 msgstr ""
 
-#: cp/typeck.cc:3317
+#: cp/typeck.cc:3432
 #, gcc-internal-format
 msgid "%q#T has no member named %qE; did you mean %q#D? (accessible via %q#D)"
 msgstr ""
 
-#: cp/typeck.cc:3329
+#: cp/typeck.cc:3444
 #, gcc-internal-format
 msgid ""
 "%q#T has no member named %qE; did you mean %q#D? (not accessible from this "
 "context)"
 msgstr ""
 
-#: cp/typeck.cc:3344
+#: cp/typeck.cc:3459
 #, gcc-internal-format
 msgid "%q#T has no member named %qE; did you mean %qE?"
 msgstr ""
 
-#: cp/typeck.cc:3458 cp/typeck.cc:3484
+#: cp/typeck.cc:3592 cp/typeck.cc:3629
 #, gcc-internal-format
 msgid "%<%D::%D%> is not a member of %qT"
 msgstr ""
 
-#: cp/typeck.cc:3538
-#, gcc-internal-format
-msgid "%qT is not a base of %qT"
-msgstr ""
-
-#: cp/typeck.cc:3604
+#: cp/typeck.cc:3786
 #, gcc-internal-format
 msgid "%qD is not a member template function"
 msgstr ""
 
-#: cp/typeck.cc:3869
+#: cp/typeck.cc:4052
 #, gcc-internal-format
 msgid "%qT is not a pointer-to-object type"
 msgstr ""
 
-#: cp/typeck.cc:3903
+#: cp/typeck.cc:4086
 #, gcc-internal-format
 msgid "invalid use of array indexing on pointer to member"
 msgstr ""
 
-#: cp/typeck.cc:3906
+#: cp/typeck.cc:4089
 #, gcc-internal-format
 msgid "invalid use of unary %<*%> on pointer to member"
 msgstr ""
 
-#: cp/typeck.cc:3909
+#: cp/typeck.cc:4092
 #, gcc-internal-format
 msgid "invalid use of implicit conversion on pointer to member"
 msgstr ""
 
-#: cp/typeck.cc:3913
+#: cp/typeck.cc:4096
 #, gcc-internal-format
 msgid ""
 "left hand operand of %<->*%> must be a pointer to class, but is a pointer to "
 "member of type %qT"
 msgstr ""
 
-#: cp/typeck.cc:3979
+#: cp/typeck.cc:4161
 #, gcc-internal-format
 msgid "subscript missing in array reference"
 msgstr ""
 
-#: cp/typeck.cc:4084
+#: cp/typeck.cc:4322
 #, gcc-internal-format
 msgid "subscripting array declared %<register%>"
 msgstr ""
 
-#: cp/typeck.cc:4124
+#: cp/typeck.cc:4361
 #, gcc-internal-format
 msgid "subscripted value is neither array nor pointer"
 msgstr ""
 
-#: cp/typeck.cc:4196
+#: cp/typeck.cc:4433
 #, gcc-internal-format
 msgid "object missing in use of %qE"
 msgstr ""
 
-#: cp/typeck.cc:4447
+#: cp/typeck.cc:4685
+#, gcc-internal-format
+msgid "no default version in scope"
+msgstr ""
+
+#: cp/typeck.cc:4694
 #, gcc-internal-format
 msgid "ISO C++ forbids calling %<::main%> from within program"
 msgstr ""
 
-#: cp/typeck.cc:4468
+#: cp/typeck.cc:4715
 #, gcc-internal-format
 msgid ""
-"must use %<.*%> or %<->*%> to call pointer-to-member function in %<%E "
-"(...)%>, e.g. %<(... ->* %E) (...)%>"
+"must use %<.*%> or %<->*%> to call pointer-to-member function in %<%E (...)"
+"%>, e.g. %<(... ->* %E) (...)%>"
 msgstr ""
 
-#: cp/typeck.cc:4485
+#: cp/typeck.cc:4732
+#, gcc-internal-format
+msgid "%qT cannot be used as a function"
+msgstr ""
+
+#: cp/typeck.cc:4736
 #, gcc-internal-format
 msgid "%qE cannot be used as a function"
 msgstr ""
 
-#: cp/typeck.cc:4488
+#: cp/typeck.cc:4739
 #, gcc-internal-format
 msgid "%qD cannot be used as a function"
 msgstr ""
 
-#: cp/typeck.cc:4491
+#: cp/typeck.cc:4742
 #, gcc-internal-format
 msgid "expression cannot be used as a function"
 msgstr ""
 
-#: cp/typeck.cc:4553
+#: cp/typeck.cc:4804
 #, gcc-internal-format
 msgid "too many arguments to constructor %q#D"
 msgstr ""
 
-#: cp/typeck.cc:4554
+#: cp/typeck.cc:4805
 #, gcc-internal-format
 msgid "too few arguments to constructor %q#D"
 msgstr ""
 
-#: cp/typeck.cc:4559
+#: cp/typeck.cc:4810
 #, gcc-internal-format
 msgid "too many arguments to member function %q#D"
 msgstr ""
 
-#: cp/typeck.cc:4560
+#: cp/typeck.cc:4811
 #, gcc-internal-format
 msgid "too few arguments to member function %q#D"
 msgstr ""
 
-#: cp/typeck.cc:4566
+#: cp/typeck.cc:4817
 #, gcc-internal-format
 msgid "too many arguments to function %q#D"
 msgstr ""
 
-#: cp/typeck.cc:4567
+#: cp/typeck.cc:4818
 #, gcc-internal-format
 msgid "too few arguments to function %q#D"
 msgstr ""
 
-#: cp/typeck.cc:4577
+#: cp/typeck.cc:4828
 #, gcc-internal-format
 msgid "too many arguments to method %q#D"
 msgstr ""
 
-#: cp/typeck.cc:4578
+#: cp/typeck.cc:4829
 #, gcc-internal-format
 msgid "too few arguments to method %q#D"
 msgstr ""
 
-#: cp/typeck.cc:4581
+#: cp/typeck.cc:4832
 #, gcc-internal-format
 msgid "too many arguments to function"
 msgstr ""
 
-#: cp/typeck.cc:4582
+#: cp/typeck.cc:4833
 #, gcc-internal-format
 msgid "too few arguments to function"
 msgstr ""
 
-#: cp/typeck.cc:4664
+#: cp/typeck.cc:4911
 #, gcc-internal-format
 msgid "parameter %P of %qD has incomplete type %qT"
 msgstr ""
 
-#: cp/typeck.cc:4670
+#: cp/typeck.cc:4917
 #, gcc-internal-format
 msgid "parameter %P has incomplete type %qT"
 msgstr ""
 
-#: cp/typeck.cc:4984
+#: cp/typeck.cc:5231
 #, gcc-internal-format
 msgid "the address %qE will never be NULL"
 msgstr ""
 
-#: cp/typeck.cc:5031
+#: cp/typeck.cc:5278
 #, gcc-internal-format
 msgid "the address of %qD will never be NULL"
 msgstr ""
 
-#: cp/typeck.cc:5046
+#: cp/typeck.cc:5293
 #, gcc-internal-format
 msgid "the compiler can assume that the address of %qE will never be NULL"
 msgstr ""
 
-#: cp/typeck.cc:5049
+#: cp/typeck.cc:5296
 #, gcc-internal-format
 msgid "comparing the result of pointer addition %qE and NULL"
 msgstr ""
 
-#: cp/typeck.cc:5064
+#: cp/typeck.cc:5311
 #, gcc-internal-format
 msgid "the compiler can assume that the address of %qD will never be NULL"
 msgstr ""
 
-#: cp/typeck.cc:5123
+#: cp/typeck.cc:5370
 #, gcc-internal-format
 msgid "bitwise operation between different enumeration types %qT and %qT"
 msgstr ""
 
-#: cp/typeck.cc:5126
+#: cp/typeck.cc:5373
 #, gcc-internal-format
 msgid ""
 "bitwise operation between different enumeration types %qT and %qT is "
 "deprecated"
 msgstr ""
 
-#: cp/typeck.cc:5132
+#: cp/typeck.cc:5379
 #, gcc-internal-format
 msgid "arithmetic between different enumeration types %qT and %qT"
 msgstr ""
 
-#: cp/typeck.cc:5135
+#: cp/typeck.cc:5382
 #, gcc-internal-format
 msgid ""
 "arithmetic between different enumeration types %qT and %qT is deprecated"
 msgstr ""
 
-#: cp/typeck.cc:5172
+#: cp/typeck.cc:5419
 #, gcc-internal-format
 msgid "comparison of enumeration type %qT with floating-point type %qT"
 msgstr ""
 
-#: cp/typeck.cc:5175
+#: cp/typeck.cc:5422
 #, gcc-internal-format
 msgid "comparison of floating-point type %qT with enumeration type %qT"
 msgstr ""
 
-#: cp/typeck.cc:5178
+#: cp/typeck.cc:5425
 #, gcc-internal-format
 msgid ""
 "comparison of enumeration type %qT with floating-point type %qT is deprecated"
 msgstr ""
 
-#: cp/typeck.cc:5182
+#: cp/typeck.cc:5429
 #, gcc-internal-format
 msgid ""
 "comparison of floating-point type %qT with enumeration type %qT is deprecated"
 msgstr ""
 
-#: cp/typeck.cc:5191
+#: cp/typeck.cc:5438
 #, gcc-internal-format
 msgid "arithmetic between enumeration type %qT and floating-point type %qT"
 msgstr ""
 
-#: cp/typeck.cc:5194
+#: cp/typeck.cc:5441
 #, gcc-internal-format
 msgid "arithmetic between floating-point type %qT and enumeration type %qT"
 msgstr ""
 
-#: cp/typeck.cc:5197
+#: cp/typeck.cc:5444
 #, gcc-internal-format
 msgid ""
 "arithmetic between enumeration type %qT and floating-point type %qT is "
 "deprecated"
 msgstr ""
 
-#: cp/typeck.cc:5201
+#: cp/typeck.cc:5448
 #, gcc-internal-format
 msgid ""
 "arithmetic between floating-point type %qT and enumeration type %qT is "
 "deprecated"
 msgstr ""
 
-#: cp/typeck.cc:5336 cp/typeck.cc:5348
+#: cp/typeck.cc:5583 cp/typeck.cc:5595
 #, gcc-internal-format
 msgid "assuming cast to type %qT from overloaded function"
 msgstr ""
 
-#: cp/typeck.cc:5462
+#: cp/typeck.cc:5709
 #, gcc-internal-format
 msgid "NULL used in arithmetic"
 msgstr ""
 
-#: cp/typeck.cc:5929 cp/typeck.cc:5938 cp/typeck.cc:6244 cp/typeck.cc:6253
+#: cp/typeck.cc:6179 cp/typeck.cc:6188 cp/typeck.cc:6504 cp/typeck.cc:6513
 #, gcc-internal-format
 msgid "ISO C++ forbids comparison between pointer and integer"
 msgstr ""
 
-#: cp/typeck.cc:6165 cp/typeck.cc:6179
+#: cp/typeck.cc:6419 cp/typeck.cc:6433
 #, gcc-internal-format
 msgid "operand types are %qT and %qT"
 msgstr ""
 
-#: cp/typeck.cc:6202
+#: cp/typeck.cc:6456
 #, gcc-internal-format
 msgid "three-way comparison of vectors"
 msgstr ""
 
-#: cp/typeck.cc:6236
+#: cp/typeck.cc:6496
 #, gcc-internal-format
 msgid "ordered comparison of pointer with integer zero (%qT and %qT)"
 msgstr ""
 
-#: cp/typeck.cc:6283
+#: cp/typeck.cc:6543
 #, gcc-internal-format
 msgid "unordered comparison on non-floating-point argument"
 msgstr ""
 
-#: cp/typeck.cc:6349
+#: cp/typeck.cc:6609
 msgid ""
 "implicit conversion from %qH to %qI to match other operand of binary "
 "expression"
 msgstr ""
 
-#: cp/typeck.cc:6458
+#: cp/typeck.cc:6718
 #, gcc-internal-format
 msgid "invalid operands of types %qT and %qT to binary %qO"
 msgstr ""
 
-#: cp/typeck.cc:6859
+#: cp/typeck.cc:7119
 #, gcc-internal-format
 msgid "ISO C++ forbids using pointer of type %<void *%> in subtraction"
 msgstr ""
 
-#: cp/typeck.cc:6867
+#: cp/typeck.cc:7127
 #, gcc-internal-format
 msgid "ISO C++ forbids using pointer to a function in subtraction"
 msgstr ""
 
-#: cp/typeck.cc:6875
+#: cp/typeck.cc:7135
 #, gcc-internal-format
 msgid "ISO C++ forbids using pointer to a method in subtraction"
 msgstr ""
 
-#: cp/typeck.cc:6928
+#: cp/typeck.cc:7188
 #, gcc-internal-format
 msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
 msgstr ""
 
-#: cp/typeck.cc:7005
+#: cp/typeck.cc:7265
 #, gcc-internal-format
 msgid "taking address of constructor %qD"
 msgstr ""
 
-#: cp/typeck.cc:7006
+#: cp/typeck.cc:7266
 #, gcc-internal-format
 msgid "taking address of destructor %qD"
 msgstr ""
 
-#: cp/typeck.cc:7023
+#: cp/typeck.cc:7283
 #, gcc-internal-format
 msgid "invalid use of %qE to form a pointer-to-member-function"
 msgstr ""
 
-#: cp/typeck.cc:7026
+#: cp/typeck.cc:7286
 #, gcc-internal-format
 msgid "  a qualified-id is required"
 msgstr ""
 
-#: cp/typeck.cc:7033
+#: cp/typeck.cc:7293
 #, gcc-internal-format
 msgid ""
 "parentheses around %qE cannot be used to form a pointer-to-member-function"
 msgstr ""
 
-#: cp/typeck.cc:7228
+#: cp/typeck.cc:7488
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids taking the address of an unqualified or parenthesized non-"
 "static member function to form a pointer to member function.  Say %<&%T::%D%>"
 msgstr ""
 
-#: cp/typeck.cc:7234
+#: cp/typeck.cc:7494
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids taking the address of an unqualified or parenthesized non-"
 "static member function to form a pointer to explicit object member function"
 msgstr ""
 
-#: cp/typeck.cc:7240
+#: cp/typeck.cc:7500
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids taking the address of a bound member function to form a "
 "pointer to member function.  Say %<&%T::%D%>"
 msgstr ""
 
-#: cp/typeck.cc:7246
+#: cp/typeck.cc:7506
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids taking the address of a bound member function to form a "
 "pointer to explicit object member function"
 msgstr ""
 
-#: cp/typeck.cc:7251
+#: cp/typeck.cc:7511
 #, gcc-internal-format
 msgid ""
 "a pointer to explicit object member function can only be formed with %<&%T::"
@@ -71941,463 +75684,458 @@ msgid ""
 msgstr ""
 
 #. Make this a permerror because we used to accept it.
-#: cp/typeck.cc:7284
+#: cp/typeck.cc:7544
 #, gcc-internal-format
 msgid "taking address of rvalue"
 msgstr ""
 
-#: cp/typeck.cc:7301
+#: cp/typeck.cc:7561
 #, gcc-internal-format
 msgid "ISO C++ forbids taking address of function %<::main%>"
 msgstr ""
 
-#: cp/typeck.cc:7359
+#: cp/typeck.cc:7619
 #, gcc-internal-format
 msgid "cannot create pointer to reference member %qD"
 msgstr ""
 
-#: cp/typeck.cc:7394 cp/typeck.cc:7976 rust/backend/rust-tree.cc:4701
+#: cp/typeck.cc:7654 cp/typeck.cc:8247 rust/backend/rust-tree.cc:4739
 #, gcc-internal-format
 msgid "attempt to take address of bit-field"
 msgstr ""
 
-#: cp/typeck.cc:7561
+#: cp/typeck.cc:7821
 #, gcc-internal-format
 msgid "%<~%> on an expression of type %<bool%>"
 msgstr ""
 
-#: cp/typeck.cc:7562
+#: cp/typeck.cc:7822
 #, gcc-internal-format
 msgid "did you mean to use logical not (%<!%>)?"
 msgstr ""
 
-#: cp/typeck.cc:7695
+#: cp/typeck.cc:7966
 #, gcc-internal-format
 msgid "ISO C++ forbids incrementing an enum"
 msgstr ""
 
-#: cp/typeck.cc:7696
+#: cp/typeck.cc:7967
 #, gcc-internal-format
 msgid "ISO C++ forbids decrementing an enum"
 msgstr ""
 
-#: cp/typeck.cc:7712
+#: cp/typeck.cc:7983
 #, gcc-internal-format
 msgid "cannot increment a pointer to incomplete type %qT"
 msgstr ""
 
-#: cp/typeck.cc:7714
+#: cp/typeck.cc:7985
 #, gcc-internal-format
 msgid "cannot decrement a pointer to incomplete type %qT"
 msgstr ""
 
-#: cp/typeck.cc:7726
+#: cp/typeck.cc:7997
 #, gcc-internal-format
 msgid "ISO C++ forbids incrementing a pointer of type %qT"
 msgstr ""
 
-#: cp/typeck.cc:7728
+#: cp/typeck.cc:7999
 #, gcc-internal-format
 msgid "ISO C++ forbids decrementing a pointer of type %qT"
 msgstr ""
 
-#: cp/typeck.cc:7768
+#: cp/typeck.cc:8039
 #, gcc-internal-format
 msgid "%qs expression of %<volatile%>-qualified type is deprecated"
 msgstr ""
 
-#: cp/typeck.cc:7781
+#: cp/typeck.cc:8052
 #, gcc-internal-format
 msgid "use of an operand of type %qT in %<operator--%> is forbidden"
 msgstr ""
 
-#: cp/typeck.cc:7791
+#: cp/typeck.cc:8062
 #, gcc-internal-format
 msgid "use of an operand of type %qT in %<operator++%> is forbidden in C++17"
 msgstr ""
 
-#: cp/typeck.cc:7799
+#: cp/typeck.cc:8070
 #, gcc-internal-format
 msgid "use of an operand of type %qT in %<operator++%> is deprecated"
 msgstr ""
 
-#: cp/typeck.cc:7988 rust/backend/rust-tree.cc:4713
+#: cp/typeck.cc:8259 rust/backend/rust-tree.cc:4751
 #, gcc-internal-format
 msgid "cannot take the address of %<this%>, which is an rvalue expression"
 msgstr ""
 
-#: cp/typeck.cc:8010 d/d-codegen.cc:759 rust/backend/rust-tree.cc:4732
-#, gcc-internal-format
-msgid "address of explicit register variable %qD requested"
-msgstr ""
-
-#: cp/typeck.cc:8015 rust/backend/rust-tree.cc:4739
+#: cp/typeck.cc:8286 rust/backend/rust-tree.cc:4777
 #, gcc-internal-format
 msgid "address requested for %qD, which is declared %<register%>"
 msgstr ""
 
-#: cp/typeck.cc:8086
+#: cp/typeck.cc:8357
 #, gcc-internal-format
 msgid "list-initializer for non-class type must not be parenthesized"
 msgstr ""
 
-#: cp/typeck.cc:8098
+#: cp/typeck.cc:8369
 #, gcc-internal-format
 msgid "expression list treated as compound expression in initializer"
 msgstr ""
 
-#: cp/typeck.cc:8102
+#: cp/typeck.cc:8373
 #, gcc-internal-format
 msgid "expression list treated as compound expression in mem-initializer"
 msgstr ""
 
-#: cp/typeck.cc:8106
+#: cp/typeck.cc:8377
 #, gcc-internal-format
 msgid "expression list treated as compound expression in functional cast"
 msgstr ""
 
-#: cp/typeck.cc:8144
+#: cp/typeck.cc:8415
 #, gcc-internal-format, gfc-internal-format
 msgid "%s expression list treated as compound expression"
 msgstr ""
 
-#: cp/typeck.cc:8247
+#: cp/typeck.cc:8518
 #, gcc-internal-format
 msgid "no context to resolve type of %qE"
 msgstr ""
 
-#: cp/typeck.cc:8284
+#: cp/typeck.cc:8555
 #, gcc-internal-format
 msgid "cast from type %qT to type %qT casts away qualifiers"
 msgstr ""
 
-#: cp/typeck.cc:8290
+#: cp/typeck.cc:8561
 #, gcc-internal-format
 msgid "%<static_cast%> from type %qT to type %qT casts away qualifiers"
 msgstr ""
 
-#: cp/typeck.cc:8297
+#: cp/typeck.cc:8568
 #, gcc-internal-format
 msgid "%<reinterpret_cast%> from type %qT to type %qT casts away qualifiers"
 msgstr ""
 
-#: cp/typeck.cc:8323
+#: cp/typeck.cc:8594
 #, gcc-internal-format
 msgid "useless cast to type %q#T"
 msgstr ""
 
-#: cp/typeck.cc:8337
+#: cp/typeck.cc:8608
 #, gcc-internal-format
 msgid "type qualifiers ignored on cast result type"
 msgstr ""
 
-#: cp/typeck.cc:8786
+#: cp/typeck.cc:9057
 #, gcc-internal-format
 msgid "invalid %<static_cast%> from type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.cc:8792 cp/typeck.cc:8798 cp/typeck.cc:10522
+#: cp/typeck.cc:9063 cp/typeck.cc:9069 cp/typeck.cc:10808
 #, gcc-internal-format
 msgid "class type %qT is incomplete"
 msgstr ""
 
-#: cp/typeck.cc:8826
+#: cp/typeck.cc:9097
 msgid "converting from %qH to %qI"
 msgstr ""
 
-#: cp/typeck.cc:8901
+#: cp/typeck.cc:9172
 #, gcc-internal-format
 msgid "invalid cast of a prvalue expression of type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.cc:8971
+#: cp/typeck.cc:9242
 msgid "cast from %qH to %qI loses precision"
 msgstr ""
 
-#: cp/typeck.cc:8996
+#: cp/typeck.cc:9267
 msgid "cast between incompatible function types from %qH to %qI"
 msgstr ""
 
-#: cp/typeck.cc:9007
+#: cp/typeck.cc:9278
 msgid "cast between incompatible pointer to member types from %qH to %qI"
 msgstr ""
 
-#: cp/typeck.cc:9028 cp/typeck.cc:9218
+#: cp/typeck.cc:9299 cp/typeck.cc:9489
 msgid "cast from %qH to %qI increases required alignment of target type"
 msgstr ""
 
-#: cp/typeck.cc:9045
+#: cp/typeck.cc:9316
 #, gcc-internal-format
 msgid ""
 "casting between pointer-to-function and pointer-to-object is conditionally-"
 "supported"
 msgstr ""
 
-#: cp/typeck.cc:9059
+#: cp/typeck.cc:9330
 #, gcc-internal-format
 msgid "invalid cast from type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.cc:9132
+#: cp/typeck.cc:9403
 #, gcc-internal-format
 msgid ""
 "invalid use of %<const_cast%> with type %qT, which is not a pointer, "
 "reference, nor a pointer-to-data-member type"
 msgstr ""
 
-#: cp/typeck.cc:9141
+#: cp/typeck.cc:9412
 #, gcc-internal-format
 msgid ""
 "invalid use of %<const_cast%> with type %qT, which is a pointer or reference "
 "to a function type"
 msgstr ""
 
-#: cp/typeck.cc:9183
+#: cp/typeck.cc:9454
 #, gcc-internal-format
 msgid "invalid %<const_cast%> of an rvalue of type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.cc:9253
+#: cp/typeck.cc:9524
 #, gcc-internal-format
 msgid "invalid %<const_cast%> from type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.cc:9354 cp/typeck.cc:9363
+#: cp/typeck.cc:9625 cp/typeck.cc:9634
 #, gcc-internal-format
 msgid "ISO C++ forbids casting to an array type %qT"
 msgstr ""
 
-#: cp/typeck.cc:9372
+#: cp/typeck.cc:9643
 #, gcc-internal-format
 msgid "invalid cast to function type %qT"
 msgstr ""
 
-#: cp/typeck.cc:9488
+#: cp/typeck.cc:9759
 #, gcc-internal-format
 msgid "moving %qE of type %qT to itself"
 msgstr ""
 
-#: cp/typeck.cc:9753
+#: cp/typeck.cc:10039
 #, gcc-internal-format
 msgid "  in evaluation of %<%Q(%#T, %#T)%>"
 msgstr ""
 
-#: cp/typeck.cc:9814
+#: cp/typeck.cc:10100
 #, gcc-internal-format
 msgid "assigning to an array from an initializer list"
 msgstr ""
 
-#: cp/typeck.cc:9841
+#: cp/typeck.cc:10127
 #, gcc-internal-format
 msgid "incompatible types in assignment of %qT to %qT"
 msgstr ""
 
-#: cp/typeck.cc:9857
+#: cp/typeck.cc:10143
 #, gcc-internal-format
 msgid "array used as initializer"
 msgstr ""
 
-#: cp/typeck.cc:9859
+#: cp/typeck.cc:10145
 #, gcc-internal-format
 msgid "invalid array assignment"
 msgstr ""
 
-#: cp/typeck.cc:9995
+#: cp/typeck.cc:10281
 #, gcc-internal-format
 msgid "   in pointer to member function conversion"
 msgstr ""
 
-#: cp/typeck.cc:10009
+#: cp/typeck.cc:10295
 #, gcc-internal-format
 msgid "pointer to member conversion via virtual base %qT"
 msgstr ""
 
-#: cp/typeck.cc:10057 cp/typeck.cc:10076
+#: cp/typeck.cc:10343 cp/typeck.cc:10362
 #, gcc-internal-format
 msgid "   in pointer to member conversion"
 msgstr ""
 
-#: cp/typeck.cc:10157
+#: cp/typeck.cc:10443
 #, gcc-internal-format
 msgid "invalid conversion to type %qT from type %qT"
 msgstr ""
 
-#: cp/typeck.cc:10481
+#: cp/typeck.cc:10767
 msgid "cannot convert %qH to %qI in default argument"
 msgstr ""
 
-#: cp/typeck.cc:10486
+#: cp/typeck.cc:10772
 msgid "cannot convert %qH to %qI in argument passing"
 msgstr ""
 
-#: cp/typeck.cc:10495
+#: cp/typeck.cc:10781
 msgid "cannot convert %qH to %qI in initialization"
 msgstr ""
 
-#: cp/typeck.cc:10499
+#: cp/typeck.cc:10785
 msgid "cannot convert %qH to %qI in return"
 msgstr ""
 
-#: cp/typeck.cc:10504
+#: cp/typeck.cc:10790
 msgid "cannot convert %qH to %qI in assignment"
 msgstr ""
 
-#: cp/typeck.cc:10540
+#: cp/typeck.cc:10826
 #, gcc-internal-format
 msgid "parameter %qP of %qD might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.cc:10544
+#: cp/typeck.cc:10830
 #, gcc-internal-format
 msgid "parameter might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.cc:10549
+#: cp/typeck.cc:10835
 #, gcc-internal-format
 msgid "target of conversion might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.cc:10554
+#: cp/typeck.cc:10840
 #, gcc-internal-format
 msgid "target of initialization might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.cc:10564
+#: cp/typeck.cc:10850
 #, gcc-internal-format
 msgid ""
 "left-hand side of assignment might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.cc:10650
+#: cp/typeck.cc:10936
 #, gcc-internal-format
 msgid "in passing argument %P of %qD"
 msgstr ""
 
-#: cp/typeck.cc:10734
+#: cp/typeck.cc:11022
 #, gcc-internal-format
 msgid "returning reference to temporary"
 msgstr ""
 
-#: cp/typeck.cc:10737
+#: cp/typeck.cc:11025
 #, gcc-internal-format
 msgid "returning pointer to temporary"
 msgstr ""
 
-#: cp/typeck.cc:10740
+#: cp/typeck.cc:11028
 #, gcc-internal-format
 msgid ""
 "returning temporary %<initializer_list%> does not extend the lifetime of the "
 "underlying array"
 msgstr ""
 
-#: cp/typeck.cc:10775
+#: cp/typeck.cc:11063
 #, gcc-internal-format
 msgid "reference to local variable %qD returned"
 msgstr ""
 
-#: cp/typeck.cc:10779
+#: cp/typeck.cc:11067
 #, gcc-internal-format
 msgid ""
 "returning local %<initializer_list%> variable %qD does not extend the "
 "lifetime of the underlying array"
 msgstr ""
 
-#: cp/typeck.cc:10785
+#: cp/typeck.cc:11073
 #, gcc-internal-format
 msgid "address of label %qD returned"
 msgstr ""
 
-#: cp/typeck.cc:10789
+#: cp/typeck.cc:11077
 #, gcc-internal-format
 msgid "address of local variable %qD returned"
 msgstr ""
 
-#: cp/typeck.cc:11049
+#: cp/typeck.cc:11337
 #, gcc-internal-format
 msgid "moving a temporary object prevents copy elision"
 msgstr ""
 
-#: cp/typeck.cc:11050 cp/typeck.cc:11066 cp/typeck.cc:11091 cp/typeck.cc:11128
+#: cp/typeck.cc:11338 cp/typeck.cc:11354 cp/typeck.cc:11379 cp/typeck.cc:11416
 #, gcc-internal-format
 msgid "remove %<std::move%> call"
 msgstr ""
 
-#: cp/typeck.cc:11064
+#: cp/typeck.cc:11352
 #, gcc-internal-format
 msgid "moving a local object in a return statement prevents copy elision"
 msgstr ""
 
-#: cp/typeck.cc:11090 cp/typeck.cc:11125
+#: cp/typeck.cc:11378 cp/typeck.cc:11413
 #, gcc-internal-format
 msgid "redundant move in return statement"
 msgstr ""
 
-#: cp/typeck.cc:11127
+#: cp/typeck.cc:11415
 #, gcc-internal-format
 msgid "redundant move in initialization"
 msgstr ""
 
-#: cp/typeck.cc:11165
+#: cp/typeck.cc:11453
 #, gcc-internal-format
 msgid "returning a value from a destructor"
 msgstr ""
 
 #. If a return statement appears in a handler of the
 #. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.cc:11177
+#: cp/typeck.cc:11465
 #, gcc-internal-format
 msgid "cannot return from a handler of a function-try-block of a constructor"
 msgstr ""
 
 #. You can't return a value from a constructor.
-#: cp/typeck.cc:11180
+#: cp/typeck.cc:11468
 #, gcc-internal-format
 msgid "returning a value from a constructor"
 msgstr ""
 
-#: cp/typeck.cc:11220 cp/typeck.cc:11266
+#: cp/typeck.cc:11508 cp/typeck.cc:11554
 #, gcc-internal-format
 msgid "return-statement with no value, in function returning %qT"
 msgstr ""
 
-#: cp/typeck.cc:11228
+#: cp/typeck.cc:11516
 #, gcc-internal-format
 msgid "returning initializer list"
 msgstr ""
 
-#: cp/typeck.cc:11247
+#: cp/typeck.cc:11535
 #, gcc-internal-format
 msgid "inconsistent types %qT and %qT deduced for lambda return type"
 msgstr ""
 
-#: cp/typeck.cc:11250
+#: cp/typeck.cc:11538
 #, gcc-internal-format
 msgid "inconsistent deduction for auto return type: %qT and then %qT"
 msgstr ""
 
-#: cp/typeck.cc:11287
+#: cp/typeck.cc:11575
 #, gcc-internal-format
 msgid "return-statement with a value, in function returning %qT"
 msgstr ""
 
-#: cp/typeck.cc:11316
+#: cp/typeck.cc:11604
 #, gcc-internal-format
 msgid ""
 "%<operator new%> must not return NULL unless it is declared %<throw()%> (or "
 "%<-fcheck-new%> is in effect)"
 msgstr ""
 
-#: cp/typeck.cc:11405
+#: cp/typeck.cc:11693
 #, gcc-internal-format
 msgid "not eliding copy on return from %qD"
 msgstr ""
 
-#: cp/typeck.cc:11417
+#: cp/typeck.cc:11705
 #, gcc-internal-format
 msgid "not eliding copy on return in %qD"
 msgstr ""
 
-#: cp/typeck.cc:11997
+#: cp/typeck.cc:12297
 #, gcc-internal-format
 msgid "using rvalue as lvalue"
 msgstr ""
@@ -72447,328 +76185,347 @@ msgstr ""
 msgid "decrement of read-only reference %qD"
 msgstr ""
 
-#: cp/typeck2.cc:175
+#: cp/typeck2.cc:125
 #, gcc-internal-format
-msgid "cannot declare variable %q+D to be of abstract type %qT"
+msgid "assignment to read-only type %qT"
 msgstr ""
 
 #: cp/typeck2.cc:180
 #, gcc-internal-format
+msgid "cannot declare variable %q+D to be of abstract type %qT"
+msgstr ""
+
+#: cp/typeck2.cc:185
+#, gcc-internal-format
 msgid "cannot declare parameter %q+D to be of abstract type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:183
+#: cp/typeck2.cc:188
 #, gcc-internal-format
 msgid "cannot declare parameter to be of abstract type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:187
+#: cp/typeck2.cc:192
 #, gcc-internal-format
 msgid "cannot declare field %q+D to be of abstract type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:191
+#: cp/typeck2.cc:196
 #, gcc-internal-format
 msgid "invalid abstract return type for member function %q+#D"
 msgstr ""
 
-#: cp/typeck2.cc:193
+#: cp/typeck2.cc:198
 #, gcc-internal-format
 msgid "invalid abstract return type for function %q+#D"
 msgstr ""
 
 #. Here we do not have location information.
-#: cp/typeck2.cc:196
+#: cp/typeck2.cc:201
 #, gcc-internal-format
 msgid "invalid abstract type %qT for %qE"
 msgstr ""
 
-#: cp/typeck2.cc:198
+#: cp/typeck2.cc:203
 #, gcc-internal-format
 msgid "invalid abstract type for %q+D"
 msgstr ""
 
-#: cp/typeck2.cc:203
+#: cp/typeck2.cc:208
 #, gcc-internal-format
 msgid "creating array of %qT, which is an abstract class type"
 msgstr ""
 
-#: cp/typeck2.cc:206
+#: cp/typeck2.cc:211
 #, gcc-internal-format
 msgid "invalid cast to abstract class type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:209
+#: cp/typeck2.cc:214
 #, gcc-internal-format
 msgid "invalid new-expression of abstract class type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:212
+#: cp/typeck2.cc:217
 #, gcc-internal-format
 msgid "invalid abstract return type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:215
+#: cp/typeck2.cc:220
 #, gcc-internal-format
 msgid "invalid abstract parameter type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:218
+#: cp/typeck2.cc:223
 #, gcc-internal-format
 msgid ""
 "expression of abstract class type %qT cannot be used in throw-expression"
 msgstr ""
 
-#: cp/typeck2.cc:222
+#: cp/typeck2.cc:227
 #, gcc-internal-format
 msgid "cannot declare %<catch%> parameter to be of abstract class type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:226
+#: cp/typeck2.cc:231
 #, gcc-internal-format
-msgid "cannot allocate an object of abstract type %qT"
+msgid "cannot construct an object of abstract type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:236
+#: cp/typeck2.cc:241
 #, gcc-internal-format
-msgid "  because the following virtual functions are pure within %qT:"
+msgid "because the following virtual functions are pure within %qT:"
 msgstr ""
 
-#: cp/typeck2.cc:242
+#: cp/typeck2.cc:248
 #, gcc-internal-format
-msgid "    %#qD"
+msgid "%#qD"
 msgstr ""
 
-#: cp/typeck2.cc:282
+#: cp/typeck2.cc:309
 #, gcc-internal-format
 msgid "definition of %q#T is not complete until the closing brace"
 msgstr ""
 
-#: cp/typeck2.cc:285
+#: cp/typeck2.cc:314
 #, gcc-internal-format
 msgid "forward declaration of %q#T"
 msgstr ""
 
-#: cp/typeck2.cc:287
+#: cp/typeck2.cc:316
 #, gcc-internal-format
 msgid "declaration of %q#T"
 msgstr ""
 
-#: cp/typeck2.cc:315
+#: cp/typeck2.cc:369
+#, gcc-internal-format
+msgid ""
+"%q#T has a definition but does not correspond with %q#T because it is "
+"attached to a different module"
+msgstr ""
+
+#: cp/typeck2.cc:403
 #, gcc-internal-format
 msgid "%qD has incomplete type"
 msgstr ""
 
-#: cp/typeck2.cc:329
+#: cp/typeck2.cc:417
 #, gcc-internal-format
 msgid "invalid use of incomplete type %q#T"
 msgstr ""
 
-#: cp/typeck2.cc:365 rust/backend/rust-tree.cc:3923
+#: cp/typeck2.cc:453 rust/backend/rust-tree.cc:3952
 #, gcc-internal-format
 msgid "invalid use of member function %qD (did you forget the %<()%> ?)"
 msgstr ""
 
-#: cp/typeck2.cc:370 rust/backend/rust-tree.cc:3929
+#: cp/typeck2.cc:458 rust/backend/rust-tree.cc:3958
 #, gcc-internal-format
 msgid "invalid use of member %qD (did you forget the %<&%> ?)"
 msgstr ""
 
-#: cp/typeck2.cc:380
+#: cp/typeck2.cc:468
 #, gcc-internal-format
 msgid "invalid use of placeholder %qT"
 msgstr ""
 
-#: cp/typeck2.cc:387
+#: cp/typeck2.cc:475
 #, gcc-internal-format
 msgid "invalid use of template type parameter %qT"
 msgstr ""
 
-#: cp/typeck2.cc:392
+#: cp/typeck2.cc:480
 #, gcc-internal-format
 msgid "invalid use of template template parameter %qT"
 msgstr ""
 
-#: cp/typeck2.cc:398
+#: cp/typeck2.cc:486
 #, gcc-internal-format
 msgid "invalid use of pack expansion %qT"
 msgstr ""
 
-#: cp/typeck2.cc:404
+#: cp/typeck2.cc:492
 #, gcc-internal-format
 msgid "invalid use of dependent type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:411 rust/backend/rust-tree.cc:3939
+#: cp/typeck2.cc:499 rust/backend/rust-tree.cc:3968
 #, gcc-internal-format
 msgid "invalid use of brace-enclosed initializer list"
 msgstr ""
 
-#: cp/typeck2.cc:419 rust/backend/rust-tree.cc:3947
+#: cp/typeck2.cc:507 rust/backend/rust-tree.cc:3976
 #, gcc-internal-format
 msgid "address of overloaded function with no contextual type information"
 msgstr ""
 
-#: cp/typeck2.cc:423 rust/backend/rust-tree.cc:3952
+#: cp/typeck2.cc:511 rust/backend/rust-tree.cc:3981
 #, gcc-internal-format
 msgid "overloaded function with no contextual type information"
 msgstr ""
 
-#: cp/typeck2.cc:426 rust/backend/rust-tree.cc:3956
+#: cp/typeck2.cc:514 rust/backend/rust-tree.cc:3985
 #, gcc-internal-format
 msgid "insufficient contextual information to determine type"
 msgstr ""
 
-#: cp/typeck2.cc:843
+#: cp/typeck2.cc:931
 #, gcc-internal-format
 msgid "constructor syntax used, but no constructor declared for type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:894 cp/typeck2.cc:911
+#: cp/typeck2.cc:982 cp/typeck2.cc:999
 #, gcc-internal-format
 msgid "%<constinit%> variable %qD does not have a constant initializer"
 msgstr ""
 
-#: cp/typeck2.cc:1111
+#: cp/typeck2.cc:1199
 msgid "narrowing conversion of %qE from %qH to %qI is ill-formed in C++11"
 msgstr ""
 
-#: cp/typeck2.cc:1123 cp/typeck2.cc:1135
+#: cp/typeck2.cc:1211 cp/typeck2.cc:1223
 msgid "narrowing conversion of %qE from %qH to %qI"
 msgstr ""
 
-#: cp/typeck2.cc:1126
+#: cp/typeck2.cc:1214
 #, gcc-internal-format
 msgid ""
 " the expression has a constant value but is not a C++ constant-expression"
 msgstr ""
 
-#: cp/typeck2.cc:1298
+#: cp/typeck2.cc:1386
 #, gcc-internal-format
 msgid "initializer-string for %qT is too long"
 msgstr ""
 
-#: cp/typeck2.cc:1391
+#: cp/typeck2.cc:1479
 #, gcc-internal-format
 msgid "initializing a base class of type %qT results in object slicing"
 msgstr ""
 
-#: cp/typeck2.cc:1393
+#: cp/typeck2.cc:1481
 #, gcc-internal-format
 msgid "remove %<{ }%> around initializer"
 msgstr ""
 
-#: cp/typeck2.cc:1413
+#: cp/typeck2.cc:1501
 #, gcc-internal-format
 msgid "cannot initialize aggregate of type %qT with a compound literal"
 msgstr ""
 
-#: cp/typeck2.cc:1859 cp/typeck2.cc:1890
+#: cp/typeck2.cc:1952 cp/typeck2.cc:1983
 #, gcc-internal-format
 msgid "missing initializer for member %qD"
 msgstr ""
 
-#: cp/typeck2.cc:1866
+#: cp/typeck2.cc:1959
 #, gcc-internal-format
 msgid "member %qD is uninitialized reference"
 msgstr ""
 
-#: cp/typeck2.cc:1873
+#: cp/typeck2.cc:1966
 #, gcc-internal-format
 msgid "member %qD with uninitialized reference fields"
 msgstr ""
 
-#: cp/typeck2.cc:1966
+#: cp/typeck2.cc:2059
 #, gcc-internal-format
 msgid "designator order for field %qD does not match declaration order in %qT"
 msgstr ""
 
-#: cp/typeck2.cc:2039
+#: cp/typeck2.cc:2132
 #, gcc-internal-format
 msgid "no field %qD found in union being initialized"
 msgstr ""
 
-#: cp/typeck2.cc:2050
+#: cp/typeck2.cc:2143
 #, gcc-internal-format
 msgid "index value instead of field name in union initializer"
 msgstr ""
 
-#: cp/typeck2.cc:2265
+#: cp/typeck2.cc:2358
 #, gcc-internal-format
 msgid "circular pointer delegation detected"
 msgstr ""
 
-#: cp/typeck2.cc:2279
+#: cp/typeck2.cc:2372
 #, gcc-internal-format
 msgid "base operand of %<->%> has non-pointer type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:2309
+#: cp/typeck2.cc:2402
 #, gcc-internal-format
 msgid "result of %<operator->()%> yields non-pointer result"
 msgstr ""
 
-#: cp/typeck2.cc:2311
+#: cp/typeck2.cc:2404
 #, gcc-internal-format
 msgid "base operand of %<->%> is not a pointer"
 msgstr ""
 
-#: cp/typeck2.cc:2338
+#: cp/typeck2.cc:2431
 #, gcc-internal-format
 msgid "%qE cannot be used as a member pointer, since it is of type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:2347
+#: cp/typeck2.cc:2440
 #, gcc-internal-format
 msgid "cannot apply member pointer %qE to %qE, which is of non-class type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:2369
+#: cp/typeck2.cc:2464
 #, gcc-internal-format
-msgid "pointer to member type %qT incompatible with object type %qT"
+msgid ""
+"pointer to member type %qT incompatible with object type %qT because %qT is "
+"not derived from %qT"
 msgstr ""
 
-#: cp/typeck2.cc:2431
+#: cp/typeck2.cc:2469
+#, gcc-internal-format
+msgid "pointer to member type %qT incompatible with incomplete object type %qT"
+msgstr ""
+
+#: cp/typeck2.cc:2532
 #, gcc-internal-format
 msgid "pointer-to-member-function type %qT requires an rvalue"
 msgstr ""
 
-#: cp/typeck2.cc:2442
+#: cp/typeck2.cc:2543
 #, gcc-internal-format
 msgid "pointer-to-member-function type %qT requires an lvalue"
 msgstr ""
 
-#: cp/typeck2.cc:2450
+#: cp/typeck2.cc:2551
 #, gcc-internal-format
 msgid "pointer-to-member-function type %qT requires an lvalue before C++20"
 msgstr ""
 
-#: cp/typeck2.cc:2491
+#: cp/typeck2.cc:2592
 #, gcc-internal-format
 msgid "functional cast to array type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:2508
+#: cp/typeck2.cc:2609
 #, gcc-internal-format
 msgid "%<auto(x)%> cannot be constrained"
 msgstr ""
 
-#: cp/typeck2.cc:2513
+#: cp/typeck2.cc:2617
 #, gcc-internal-format
 msgid "%<auto(x)%> only available with %<-std=c++23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: cp/typeck2.cc:2538
+#: cp/typeck2.cc:2643
 #, gcc-internal-format
 msgid "invalid value-initialization of reference type"
 msgstr ""
 
-#: cp/typeck2.cc:2779
+#: cp/typeck2.cc:2884
 #, gcc-internal-format
 msgid "call to function %qD which throws incomplete type %q#T"
 msgstr ""
 
-#: cp/typeck2.cc:2782
+#: cp/typeck2.cc:2887
 #, gcc-internal-format
 msgid "call to function which throws incomplete type %q#T"
 msgstr ""
@@ -72798,70 +76555,70 @@ msgstr ""
 msgid "%q+D declared weak after being used"
 msgstr ""
 
-#: d/d-attribs.cc:1532
+#: d/d-attribs.cc:1533
 #, gcc-internal-format
 msgid ""
 "only %<inbranch%> and %<notinbranch%> flags are allowed for %<simd%> "
 "attribute"
 msgstr ""
 
-#: d/d-builtins.cc:825
+#: d/d-builtins.cc:827
 #, gcc-internal-format
 msgid "conflicting types for built-in function %qs; expected %qs"
 msgstr ""
 
-#: d/d-codegen.cc:340
+#: d/d-codegen.cc:344
 #, gcc-internal-format
 msgid "cannot determine the length of a %qs"
 msgstr ""
 
-#: d/d-codegen.cc:1285
+#: d/d-codegen.cc:1307
 #, gcc-internal-format
 msgid "overlapping initializer for field %qT.%qD"
 msgstr ""
 
-#: d/d-codegen.cc:1491
+#: d/d-codegen.cc:1513
 #, gcc-internal-format
 msgid "the address of %qD will never be %<null%>"
 msgstr ""
 
-#: d/d-codegen.cc:2276
+#: d/d-codegen.cc:2291
 #, gcc-internal-format
 msgid "need %<this%> to access member %qE"
 msgstr ""
 
-#: d/d-codegen.cc:2426
+#: d/d-codegen.cc:2446
 #, gcc-internal-format
 msgid "tried to perform floating-point modulo division on %qT"
 msgstr ""
 
-#: d/d-codegen.cc:2477
+#: d/d-codegen.cc:2497
 #, gcc-internal-format
 msgid "cannot get frame pointer to %qs"
 msgstr ""
 
 #. Should instead error on line that references `fd'.
-#: d/d-codegen.cc:2503
+#: d/d-codegen.cc:2523
 #, gcc-internal-format
 msgid "nested function missing body"
 msgstr ""
 
-#: d/d-codegen.cc:2545
+#: d/d-codegen.cc:2565
 #, gcc-internal-format
 msgid "%qs is a nested function and cannot be accessed from %qs"
 msgstr ""
 
-#: d/d-codegen.cc:2854
+#: d/d-codegen.cc:2874
 #, gcc-internal-format
 msgid "variable %qs has scoped destruction, cannot build closure"
 msgstr ""
 
-#: d/d-codegen.cc:2862
+#: d/d-codegen.cc:2882
 #, gcc-internal-format
 msgid "explicit register variable %qs cannot be used in nested function"
 msgstr ""
 
-#: d/d-codegen.cc:3087
+#: d/d-codegen.cc:3107
 #, gcc-internal-format
 msgid "forward reference to frame of %qs"
 msgstr ""
@@ -72884,90 +76641,90 @@ msgstr ""
 msgid "cast to %qs will produce null result"
 msgstr ""
 
-#: d/d-convert.cc:481
+#: d/d-convert.cc:474
 #, gcc-internal-format
 msgid "cannot cast %qs to %qs since sizes do not line up"
 msgstr ""
 
-#: d/d-convert.cc:516
+#: d/d-convert.cc:509
 #, gcc-internal-format
 msgid "cannot cast expression of type %qs to type %qs"
 msgstr ""
 
-#: d/d-convert.cc:563
+#: d/d-convert.cc:556
 #, gcc-internal-format
 msgid "cannot cast expression of type %qs to %qs"
 msgstr ""
 
-#: d/d-convert.cc:610
+#: d/d-convert.cc:603
 #, gcc-internal-format
 msgid "cast from %qs to %qs will produce zero result"
 msgstr ""
 
-#: d/d-convert.cc:749
+#: d/d-convert.cc:742
 #, gcc-internal-format
 msgid "cannot convert parameter %qs from type %qs to type %qs in assignment"
 msgstr ""
 
-#: d/d-convert.cc:755
+#: d/d-convert.cc:748
 #, gcc-internal-format
 msgid ""
 "cannot convert parameter %qs from type %qs to type %qs in argument passing"
 msgstr ""
 
-#: d/d-convert.cc:760
+#: d/d-convert.cc:753
 #, gcc-internal-format
 msgid ""
 "parameters of type %<va_list%> {aka %qs} are decayed to pointer types, and "
 "require %<va_copy%> to be converted back into a static array type"
 msgstr ""
 
-#: d/d-lang.cc:463
+#: d/d-lang.cc:464
 #, gcc-internal-format
 msgid "bad argument for %<-fdebug=%>: %qs"
 msgstr ""
 
-#: d/d-lang.cc:518
+#: d/d-lang.cc:519
 #, gcc-internal-format
 msgid "bad argument for %<-fextern-std%>: %qs"
 msgstr ""
 
-#: d/d-lang.cc:541
+#: d/d-lang.cc:542
 #, gcc-internal-format
 msgid "bad argument for %<-fmodule-file=%>: %qs"
 msgstr ""
 
-#: d/d-lang.cc:708
+#: d/d-lang.cc:709
 #, gcc-internal-format
 msgid "bad argument for %<-fversion=%>: %qs"
 msgstr ""
 
-#: d/d-lang.cc:984
+#: d/d-lang.cc:993
 #, gcc-internal-format
 msgid "unable to open %s for writing: %m"
 msgstr ""
 
-#: d/d-lang.cc:991
+#: d/d-lang.cc:1000
 #, gcc-internal-format
 msgid "writing output file %s: %m"
 msgstr ""
 
-#: d/d-lang.cc:1011
+#: d/d-lang.cc:1020
 #, gcc-internal-format
 msgid "unable to open %s for reading: %m"
 msgstr ""
 
-#: d/d-lang.cc:1036
+#: d/d-lang.cc:1045
 #, gcc-internal-format
 msgid "reading ddoc file %s: %m"
 msgstr ""
 
-#: d/d-lang.cc:1095
+#: d/d-lang.cc:1104
 #, gcc-internal-format
 msgid "%<-fonly=%> argument is different from first input file name"
 msgstr ""
 
-#: d/d-lang.cc:1278
+#: d/d-lang.cc:1289
 #, gcc-internal-format
 msgid "unable to resolve forward reference in definition"
 msgstr ""
@@ -72987,7 +76744,7 @@ msgstr ""
 msgid "pragma(%s) not implemented"
 msgstr ""
 
-#: d/decl.cc:481 d/decl.cc:597 d/decl.cc:671 d/decl.cc:714 d/decl.cc:753
+#: d/decl.cc:481 d/decl.cc:597 d/decl.cc:671 d/decl.cc:714 d/decl.cc:754
 #, gcc-internal-format
 msgid "had semantic errors when compiling"
 msgstr ""
@@ -73008,45 +76765,45 @@ msgstr ""
 msgid "use %<alias %s = %s.%s;%> to introduce base class overload set"
 msgstr ""
 
-#: d/decl.cc:815
+#: d/decl.cc:816
 #, gcc-internal-format
 msgid "size is too large"
 msgstr ""
 
-#: d/decl.cc:1428
+#: d/decl.cc:1443
 #, gcc-internal-format
 msgid "function requires a dual-context, which is not yet supported by GDC"
 msgstr ""
 
-#: d/decl.cc:1605
+#: d/decl.cc:1621
 #, gcc-internal-format
 msgid "explicit register variable %qs declared %<extern%>"
 msgstr ""
 
-#: d/decl.cc:1608
+#: d/decl.cc:1624
 #, gcc-internal-format
 msgid "explicit register variable %qs declared thread local"
 msgstr ""
 
-#: d/decl.cc:1821
+#: d/decl.cc:1837
 #, gcc-internal-format
 msgid ""
 "mismatch between declaration %qE size (%wd) and its initializer size (%wd)"
 msgstr ""
 
-#: d/expr.cc:570
+#: d/expr.cc:494
 #, gcc-internal-format
 msgid "cannot handle comparison of type %<%s == %s%>"
 msgstr ""
 
-#: d/expr.cc:718
+#: d/expr.cc:642
 #, gcc-internal-format
 msgid ""
 "array concatenation of expression %qs requires the GC and cannot be used "
 "with %<-fno-druntime%>"
 msgstr ""
 
-#: d/expr.cc:812
+#: d/expr.cc:736
 #, gcc-internal-format
 msgid ""
 "appending to array in %qs requires the GC and cannot be used with %<-fno-"
@@ -73054,52 +76811,52 @@ msgid ""
 msgstr ""
 
 #. Static arrays have already been handled by the front-end.
-#: d/expr.cc:1288
+#: d/expr.cc:1123
 #, gcc-internal-format
 msgid "unexpected type for array length: %qs"
 msgstr ""
 
-#: d/expr.cc:1423
+#: d/expr.cc:1262
 #, gcc-internal-format
 msgid "don%'t know how to delete %qs"
 msgstr ""
 
-#: d/expr.cc:1447
+#: d/expr.cc:1280
 #, gcc-internal-format
 msgid "%qs is not an associative array"
 msgstr ""
 
-#: d/expr.cc:1731 d/expr.cc:2111
+#: d/expr.cc:1568 d/expr.cc:1951
 #, gcc-internal-format
 msgid "need %<this%> to access member %qs"
 msgstr ""
 
-#: d/expr.cc:1813
+#: d/expr.cc:1650
 #, gcc-internal-format
 msgid "delegates are only for non-static functions"
 msgstr ""
 
-#: d/expr.cc:1885
+#: d/expr.cc:1722
 #, gcc-internal-format
 msgid "%qs is not a field, but a %qs"
 msgstr ""
 
-#: d/expr.cc:2137
+#: d/expr.cc:1977
 #, gcc-internal-format
 msgid "recursive reference %qs"
 msgstr ""
 
-#: d/expr.cc:2157 d/expr.cc:3057
+#: d/expr.cc:1997 d/expr.cc:2837
 #, gcc-internal-format
 msgid "non-constant expression %qs"
 msgstr ""
 
-#: d/expr.cc:3024
+#: d/expr.cc:2804
 #, gcc-internal-format
 msgid "%qs is not an expression"
 msgstr ""
 
-#: d/expr.cc:3031
+#: d/expr.cc:2811
 #, gcc-internal-format
 msgid "type %qs is not an expression"
 msgstr ""
@@ -73142,7 +76899,7 @@ msgstr ""
 msgid "intrinsic function %qE must be directly called"
 msgstr ""
 
-#: d/modules.cc:418
+#: d/modules.cc:424
 #, gcc-internal-format
 msgid "%<-fmoduleinfo%> is not supported on this target"
 msgstr ""
@@ -73174,39 +76931,39 @@ msgstr ""
 msgid "cannot handle switch condition of type %s"
 msgstr ""
 
-#: d/toir.cc:1213
+#: d/toir.cc:1231
 #, gcc-internal-format
 msgid "exception handling disabled; use %<-fexceptions%> to enable"
 msgstr ""
 
-#: d/toir.cc:1220
+#: d/toir.cc:1238
 #, gcc-internal-format
 msgid "cannot throw C++ classes"
 msgstr ""
 
-#: d/toir.cc:1222
+#: d/toir.cc:1240
 #, gcc-internal-format
 msgid "cannot throw COM objects"
 msgstr ""
 
-#: d/toir.cc:1355
+#: d/toir.cc:1372
 #, gcc-internal-format
 msgid "D inline assembler statements are not supported in GDC."
 msgstr ""
 
-#: d/typeinfo.cc:1439
+#: d/typeinfo.cc:1454
 #, gcc-internal-format
 msgid ""
 "expression %qs requires %<object.TypeInfo%> and cannot be used with %<-fno-"
 "rtti%>"
 msgstr ""
 
-#: d/typeinfo.cc:1443
+#: d/typeinfo.cc:1458
 #, gcc-internal-format
 msgid "%<object.TypeInfo%> cannot be used with %<-fno-rtti%>"
 msgstr ""
 
-#: d/typeinfo.cc:1458
+#: d/typeinfo.cc:1482
 #, gcc-internal-format
 msgid "%<object.TypeInfo%> could not be found, but is implicitly used"
 msgstr ""
@@ -73216,12 +76973,12 @@ msgstr ""
 msgid "missing or corrupt object.d"
 msgstr ""
 
-#: d/types.cc:896
+#: d/types.cc:905
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid expression for static array dimension: %s"
 msgstr ""
 
-#: d/types.cc:1104
+#: d/types.cc:1113
 #, gcc-internal-format
 msgid "size of %qs (%wd) differ from its declared size (%wd)"
 msgstr ""
@@ -73286,7 +77043,7 @@ msgstr ""
 msgid "Negation of unsigned constant at %L not permitted"
 msgstr ""
 
-#: fortran/arith.cc:141 fortran/arith.cc:2262
+#: fortran/arith.cc:141 fortran/arith.cc:2297
 #, gcc-internal-format
 msgid "gfc_arith_error(): Bad error code"
 msgstr ""
@@ -73371,90 +77128,90 @@ msgstr ""
 msgid "gfc_compare_expr(): Bad basic type"
 msgstr ""
 
-#: fortran/arith.cc:1846
+#: fortran/arith.cc:1858
 #, gcc-internal-format, gfc-internal-format
 msgid "Unsigned exponentiation not permitted with -pedantic at %L"
 msgstr ""
 
-#: fortran/arith.cc:1910
+#: fortran/arith.cc:1922
 #, gcc-internal-format
 msgid "eval_intrinsic(): Bad operator"
 msgstr ""
 
-#: fortran/arith.cc:1968
+#: fortran/arith.cc:2003
 #, gcc-internal-format
 msgid "eval_type_intrinsic0(): op NULL"
 msgstr ""
 
-#: fortran/arith.cc:2230
+#: fortran/arith.cc:2265
 #, gcc-internal-format, gfc-internal-format
 msgid "Arithmetic OK converting %s to %s at %L"
 msgstr ""
 
-#: fortran/arith.cc:2234
+#: fortran/arith.cc:2269
 #, gcc-internal-format
 msgid ""
 "Arithmetic overflow converting %s to %s at %L. This check can be disabled "
 "with the option %<-fno-range-check%>"
 msgstr ""
 
-#: fortran/arith.cc:2239
+#: fortran/arith.cc:2274
 #, gcc-internal-format
 msgid ""
 "Arithmetic underflow converting %s to %s at %L. This check can be disabled "
 "with the option %<-fno-range-check%>"
 msgstr ""
 
-#: fortran/arith.cc:2244
+#: fortran/arith.cc:2279
 #, gcc-internal-format
 msgid ""
 "Arithmetic NaN converting %s to %s at %L. This check can be disabled with "
 "the option %<-fno-range-check%>"
 msgstr ""
 
-#: fortran/arith.cc:2249
+#: fortran/arith.cc:2284
 #, gcc-internal-format, gfc-internal-format
 msgid "Division by zero converting %s to %s at %L"
 msgstr ""
 
-#: fortran/arith.cc:2253
+#: fortran/arith.cc:2288
 #, gcc-internal-format, gfc-internal-format
 msgid "Array operands are incommensurate converting %s to %s at %L"
 msgstr ""
 
-#: fortran/arith.cc:2257
+#: fortran/arith.cc:2292
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Integer outside symmetric range implied by Standard Fortran converting %s to "
 "%s at %L"
 msgstr ""
 
-#: fortran/arith.cc:2348 fortran/arith.cc:2570 fortran/arith.cc:2616
-#: fortran/arith.cc:2678 fortran/arith.cc:2733 fortran/arith.cc:2796
-#: fortran/arith.cc:2859 fortran/arith.cc:2931 fortran/arith.cc:3001
+#: fortran/arith.cc:2383 fortran/arith.cc:2605 fortran/arith.cc:2651
+#: fortran/arith.cc:2713 fortran/arith.cc:2768 fortran/arith.cc:2831
+#: fortran/arith.cc:2894 fortran/arith.cc:2966 fortran/arith.cc:3036
 #, gcc-internal-format
 msgid "Conversion from %qs to %qs at %L"
 msgstr ""
 
-#: fortran/arith.cc:2380 fortran/arith.cc:2416 fortran/arith.cc:2484
-#: fortran/arith.cc:2520 fortran/arith.cc:2561 fortran/arith.cc:2607
-#: fortran/arith.cc:2668 fortran/arith.cc:2723 fortran/arith.cc:2786
-#: fortran/arith.cc:2849 fortran/arith.cc:2921 fortran/arith.cc:2993
+#: fortran/arith.cc:2415 fortran/arith.cc:2451 fortran/arith.cc:2519
+#: fortran/arith.cc:2555 fortran/arith.cc:2596 fortran/arith.cc:2642
+#: fortran/arith.cc:2703 fortran/arith.cc:2758 fortran/arith.cc:2821
+#: fortran/arith.cc:2884 fortran/arith.cc:2956 fortran/arith.cc:3028
 #, gcc-internal-format
 msgid "Change of value in conversion from %qs to %qs at %L"
 msgstr ""
 
-#: fortran/arith.cc:2772 fortran/arith.cc:2834 fortran/arith.cc:2907
+#: fortran/arith.cc:2807 fortran/arith.cc:2869 fortran/arith.cc:2942
 #, gcc-internal-format
 msgid "Non-zero imaginary part discarded in conversion from %qs to %qs at %L"
 msgstr ""
 
-#: fortran/arith.cc:3118
+#: fortran/arith.cc:3153
 #, gcc-internal-format
 msgid "The Hollerith constant at %L is truncated in conversion to %qs"
 msgstr ""
 
-#: fortran/arith.cc:3147
+#: fortran/arith.cc:3182
 #, gcc-internal-format, gfc-internal-format
 msgid "The character constant at %L is truncated in conversion to %s"
 msgstr ""
@@ -73535,10 +77292,10 @@ msgstr ""
 msgid "Array reference at %C cannot have more than %d dimensions"
 msgstr ""
 
-#: fortran/array.cc:335 fortran/array.cc:805 fortran/match.cc:1917
-#: fortran/match.cc:3811 fortran/match.cc:4298 fortran/match.cc:4494
-#: fortran/simplify.cc:3099 fortran/simplify.cc:3129 fortran/simplify.cc:6738
-#: fortran/simplify.cc:9039
+#: fortran/array.cc:335 fortran/array.cc:816 fortran/match.cc:1917
+#: fortran/match.cc:3927 fortran/match.cc:4414 fortran/match.cc:4610
+#: fortran/simplify.cc:3386 fortran/simplify.cc:3416 fortran/simplify.cc:7040
+#: fortran/simplify.cc:9341
 #, gcc-internal-format
 msgid "Coarrays disabled at %C, use %<-fcoarray=%> to enable"
 msgstr ""
@@ -73584,217 +77341,217 @@ msgid "Expression at %L in this context must be constant"
 msgstr ""
 
 #. F2018:R821: "assumed-implied-spec  is  [ lower-bound : ] *".
-#: fortran/array.cc:586
+#: fortran/array.cc:587
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "A lower bound must precede colon in assumed-size array specification at %L"
 msgstr ""
 
-#: fortran/array.cc:598
+#: fortran/array.cc:599
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected expression in array specification at %C"
 msgstr ""
 
-#: fortran/array.cc:611 fortran/array.cc:643
+#: fortran/array.cc:612 fortran/array.cc:651
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting a scalar INTEGER expression at %C, found %s"
 msgstr ""
 
-#: fortran/array.cc:680
+#: fortran/array.cc:691
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank array at %C"
 msgstr ""
 
-#: fortran/array.cc:714
+#: fortran/array.cc:725
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad array specification for implied-shape array at %C"
 msgstr ""
 
-#: fortran/array.cc:730 fortran/array.cc:843
+#: fortran/array.cc:741 fortran/array.cc:854
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad array specification for an explicitly shaped array at %C"
 msgstr ""
 
-#: fortran/array.cc:740 fortran/array.cc:853
+#: fortran/array.cc:751 fortran/array.cc:864
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad array specification for assumed shape array at %C"
 msgstr ""
 
-#: fortran/array.cc:754 fortran/array.cc:867
+#: fortran/array.cc:765 fortran/array.cc:878
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad specification for deferred shape array at %C"
 msgstr ""
 
-#: fortran/array.cc:764 fortran/array.cc:871
+#: fortran/array.cc:775 fortran/array.cc:882
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad specification for assumed size array at %C"
 msgstr ""
 
-#: fortran/array.cc:776 fortran/array.cc:883
+#: fortran/array.cc:787 fortran/array.cc:894
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected another dimension in array declaration at %C"
 msgstr ""
 
-#: fortran/array.cc:782 fortran/array.cc:811 fortran/array.cc:889
+#: fortran/array.cc:793 fortran/array.cc:822 fortran/array.cc:900
 #, gcc-internal-format, gfc-internal-format
 msgid "Array specification at %C has more than %d dimensions"
 msgstr ""
 
-#: fortran/array.cc:788
+#: fortran/array.cc:799
 #, gcc-internal-format, gfc-internal-format
 msgid "Array specification at %C with more than 7 dimensions"
 msgstr ""
 
-#: fortran/array.cc:800
+#: fortran/array.cc:811
 #, gcc-internal-format, gfc-internal-format
 msgid "Coarray declaration at %C"
 msgstr ""
 
-#: fortran/array.cc:897
+#: fortran/array.cc:908
 #, gcc-internal-format
 msgid "Upper bound of last coarray dimension must be %<*%> at %C"
 msgstr ""
 
-#: fortran/array.cc:971
+#: fortran/array.cc:982
 #, gcc-internal-format
 msgid "The assumed-rank array %qs at %L shall not have a codimension"
 msgstr ""
 
-#: fortran/array.cc:1027
+#: fortran/array.cc:1038
 #, gcc-internal-format
 msgid "rank + corank of %qs exceeds %d at %C"
 msgstr ""
 
-#: fortran/array.cc:1153
+#: fortran/array.cc:1164
 #, gcc-internal-format
 msgid "DO-iterator %qs at %L is inside iterator of the same name"
 msgstr ""
 
-#: fortran/array.cc:1245 fortran/array.cc:1473
+#: fortran/array.cc:1256 fortran/array.cc:1487
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in array constructor at %C"
 msgstr ""
 
-#: fortran/array.cc:1275
+#: fortran/array.cc:1286
 #, gcc-internal-format, gfc-internal-format
 msgid "BOZ literal constant at %L cannot appear in an array constructor"
 msgstr ""
 
-#: fortran/array.cc:1284
+#: fortran/array.cc:1295
 #, gcc-internal-format, gfc-internal-format
 msgid "NULL() at %C cannot appear in an array constructor"
 msgstr ""
 
-#: fortran/array.cc:1346
+#: fortran/array.cc:1358
 #, gcc-internal-format, gfc-internal-format
 msgid "[...] style array constructors at %C"
 msgstr ""
 
-#: fortran/array.cc:1366
+#: fortran/array.cc:1380
 #, gcc-internal-format, gfc-internal-format
 msgid "Array constructor including type specification at %C"
 msgstr ""
 
-#: fortran/array.cc:1372 fortran/match.cc:4930
+#: fortran/array.cc:1386 fortran/match.cc:5046
 #, gcc-internal-format, gfc-internal-format
 msgid "Type-spec at %L cannot contain a deferred type parameter"
 msgstr ""
 
-#: fortran/array.cc:1380
+#: fortran/array.cc:1394
 #, gcc-internal-format, gfc-internal-format
 msgid "Type-spec at %L cannot contain an asterisk for a type parameter"
 msgstr ""
 
-#: fortran/array.cc:1398
+#: fortran/array.cc:1412
 #, gcc-internal-format, gfc-internal-format
 msgid "Empty array constructor at %C is not allowed"
 msgstr ""
 
-#: fortran/array.cc:1435 fortran/array.cc:1445
+#: fortran/array.cc:1449 fortran/array.cc:1459
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible typespec for array element at %L"
 msgstr ""
 
-#: fortran/array.cc:1520
+#: fortran/array.cc:1534
 #, gcc-internal-format, gfc-internal-format
 msgid "Element in %s array constructor at %L is %s"
 msgstr ""
 
-#: fortran/array.cc:1851
+#: fortran/array.cc:1898
 #, gcc-internal-format, gfc-internal-format
 msgid "Iterator step at %L cannot be zero"
 msgstr ""
 
-#: fortran/array.cc:2010
+#: fortran/array.cc:2057
 #, gcc-internal-format
 msgid ""
 "The number of elements in the array constructor at %L requires an increase "
 "of the allowed %d upper limit.   See %<-fmax-array-constructor%> option"
 msgstr ""
 
-#: fortran/array.cc:2189
+#: fortran/array.cc:2237
 #, gcc-internal-format, gfc-internal-format
 msgid "AC-IMPLIED-DO initial expression references control variable at %L"
 msgstr ""
 
-#: fortran/array.cc:2196
+#: fortran/array.cc:2244
 #, gcc-internal-format, gfc-internal-format
 msgid "AC-IMPLIED-DO final expression references control variable at %L"
 msgstr ""
 
-#: fortran/array.cc:2203
+#: fortran/array.cc:2251
 #, gcc-internal-format, gfc-internal-format
 msgid "AC-IMPLIED-DO step expression references control variable at %L"
 msgstr ""
 
-#: fortran/array.cc:2215
+#: fortran/array.cc:2263
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Array constructor value at %L shall not be unlimited polymorphic [F2008: "
 "C4106]"
 msgstr ""
 
-#: fortran/array.cc:2226
+#: fortran/array.cc:2274
 #, gcc-internal-format
 msgid "Array constructor value %qs at %L is of the ABSTRACT type %qs"
 msgstr ""
 
-#: fortran/array.cc:2320
+#: fortran/array.cc:2381
 #, gcc-internal-format
 msgid "Different CHARACTER lengths (%wd/%wd) in array constructor at %L"
 msgstr ""
 
-#: fortran/array.cc:2438
+#: fortran/array.cc:2527
 #, gcc-internal-format
 msgid "spec_dimen_size(): Bad dimension"
 msgstr ""
 
-#: fortran/array.cc:2504
+#: fortran/array.cc:2593
 #, gcc-internal-format
 msgid "gfc_ref_dimen_size(): Bad dimension"
 msgstr ""
 
-#: fortran/array.cc:2508
+#: fortran/array.cc:2597
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad array dimension at %L"
 msgstr ""
 
-#: fortran/array.cc:2646
+#: fortran/array.cc:2735
 #, gcc-internal-format
 msgid "gfc_ref_dimen_size(): Bad dimen_type"
 msgstr ""
 
-#: fortran/array.cc:2697
+#: fortran/array.cc:2786
 #, gcc-internal-format
 msgid "gfc_array_dimen_size(): Bad dimension"
 msgstr ""
 
-#: fortran/array.cc:2749
+#: fortran/array.cc:2838
 #, gcc-internal-format
 msgid "gfc_array_dimen_size(): Bad EXPR_ARRAY expr"
 msgstr ""
 
-#: fortran/array.cc:2897
+#: fortran/array.cc:2986
 #, gcc-internal-format
 msgid "gfc_find_array_ref(): No ref found"
 msgstr ""
@@ -73815,7 +77572,7 @@ msgstr ""
 msgid "Arguments of %qs at %L and %L cannot both be BOZ literal constants"
 msgstr ""
 
-#: fortran/check.cc:123 fortran/resolve.cc:12453
+#: fortran/check.cc:123 fortran/resolve.cc:13058
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid use of BOZ literal constant at %L"
 msgstr ""
@@ -73878,7 +77635,7 @@ msgstr ""
 msgid "%qs argument of %qs intrinsic at %L must be INTEGER or REAL or UNSIGNED"
 msgstr ""
 
-#: fortran/check.cc:681 fortran/check.cc:3793
+#: fortran/check.cc:681 fortran/check.cc:3846
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be of intrinsic type"
 msgstr ""
@@ -73893,7 +77650,7 @@ msgstr ""
 msgid "%qs argument of %qs intrinsic at %L must be INTEGER or PROCEDURE"
 msgstr ""
 
-#: fortran/check.cc:742 fortran/check.cc:8278
+#: fortran/check.cc:742 fortran/check.cc:8470
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be a constant"
 msgstr ""
@@ -73918,222 +77675,234 @@ msgstr ""
 msgid "%qs argument of %qs intrinsic at %L must be a logical array"
 msgstr ""
 
-#: fortran/check.cc:835
+#: fortran/check.cc:838
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be an array"
 msgstr ""
 
-#: fortran/check.cc:856
+#: fortran/check.cc:859
 #, gcc-internal-format
 msgid "%qs at %L must be nonnegative"
 msgstr ""
 
-#: fortran/check.cc:877
+#: fortran/check.cc:880
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be positive"
 msgstr ""
 
-#: fortran/check.cc:910
+#: fortran/check.cc:913
 #, gcc-internal-format
 msgid ""
 "The absolute value of SHIFT at %L must be less than or equal to BIT_SIZE(%qs)"
 msgstr ""
 
-#: fortran/check.cc:921
+#: fortran/check.cc:924
 #, gcc-internal-format
 msgid "%qs at %L must be less than or equal to BIT_SIZE(%qs)"
 msgstr ""
 
-#: fortran/check.cc:931
+#: fortran/check.cc:934
 #, gcc-internal-format
 msgid "%qs at %L must be less than BIT_SIZE(%qs)"
 msgstr ""
 
-#: fortran/check.cc:964
+#: fortran/check.cc:967
 #, gcc-internal-format
 msgid ""
 "%qs at %L must be less than or equal to the BIT_SIZE of INTEGER(KIND=%d)"
 msgstr ""
 
-#: fortran/check.cc:997
+#: fortran/check.cc:1000
 #, gcc-internal-format
 msgid "%<%s + %s%> at %L must be less than or equal to BIT_SIZE(%qs)"
 msgstr ""
 
-#: fortran/check.cc:1030
+#: fortran/check.cc:1033
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must be the same type and kind as %qs"
 msgstr ""
 
-#: fortran/check.cc:1047
+#: fortran/check.cc:1050
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be of rank %d"
 msgstr ""
 
-#: fortran/check.cc:1062
+#: fortran/check.cc:1065
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must not be OPTIONAL"
 msgstr ""
 
-#: fortran/check.cc:1084
+#: fortran/check.cc:1087
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be ALLOCATABLE"
 msgstr ""
 
-#: fortran/check.cc:1102
+#: fortran/check.cc:1105
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be of kind %d"
 msgstr ""
 
-#: fortran/check.cc:1121
+#: fortran/check.cc:1118
+#, gcc-internal-format
+msgid "Not supported: %qs argument of %qs intrinsic at %L with kind %d"
+msgstr ""
+
+#: fortran/check.cc:1135
+#, gcc-internal-format
+msgid ""
+"%qs argument of %qs intrinsic at %L must have a decimal exponent range of at "
+"least four"
+msgstr ""
+
+#: fortran/check.cc:1154
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L cannot be INTENT(IN)"
 msgstr ""
 
-#: fortran/check.cc:1148
+#: fortran/check.cc:1181
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be a variable"
 msgstr ""
 
-#: fortran/check.cc:1193
+#: fortran/check.cc:1226
 #, gcc-internal-format
 msgid ""
 "%<dim%> argument of %qs intrinsic at %L is not a valid codimension index"
 msgstr ""
 
-#: fortran/check.cc:1245
+#: fortran/check.cc:1278
 #, gcc-internal-format
 msgid "%<dim%> argument of %qs intrinsic at %L is not a valid dimension index"
 msgstr ""
 
-#: fortran/check.cc:1348
+#: fortran/check.cc:1381
 #, gcc-internal-format, gfc-internal-format
 msgid "Unequal character lengths (%ld/%ld) in %s at %L"
 msgstr ""
 
-#: fortran/check.cc:1369
+#: fortran/check.cc:1402
 #, gcc-internal-format
 msgid "Size of %qs argument of %qs intrinsic at %L too small (%wd/%ld)"
 msgstr ""
 
-#: fortran/check.cc:1432
+#: fortran/check.cc:1465
 #, gcc-internal-format, gfc-internal-format
 msgid "BOZ literal constant at %L cannot appear in ACHAR intrinsic subprogram"
 msgstr ""
 
-#: fortran/check.cc:1522 fortran/check.cc:1555
+#: fortran/check.cc:1555 fortran/check.cc:1588
 #, gcc-internal-format
 msgid "%qs and %qs arguments of %qs intrinsic at %L must have the same type"
 msgstr ""
 
-#: fortran/check.cc:1531 fortran/check.cc:1564 fortran/check.cc:4111
+#: fortran/check.cc:1564 fortran/check.cc:1597 fortran/check.cc:4164
 #, gcc-internal-format, gfc-internal-format
 msgid "Different type kinds at %L"
 msgstr ""
 
-#: fortran/check.cc:1587
+#: fortran/check.cc:1620
 #, gcc-internal-format
 msgid ""
 "NULL at %L is not permitted as actual argument to %qs intrinsic function"
 msgstr ""
 
-#: fortran/check.cc:1609
+#: fortran/check.cc:1642
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be a POINTER"
 msgstr ""
 
-#: fortran/check.cc:1618 fortran/check.cc:1653 fortran/check.cc:4906
+#: fortran/check.cc:1651 fortran/check.cc:1686 fortran/check.cc:4959
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L shall not be coindexed"
 msgstr ""
 
-#: fortran/check.cc:1635
+#: fortran/check.cc:1668
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must be a pointer or target VARIABLE or "
 "FUNCTION"
 msgstr ""
 
-#: fortran/check.cc:1644
+#: fortran/check.cc:1677
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be a POINTER or a TARGET"
 msgstr ""
 
-#: fortran/check.cc:1671
+#: fortran/check.cc:1704
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Array section with a vector subscript at %L shall not be the target of a "
 "pointer"
 msgstr ""
 
-#: fortran/check.cc:1718
+#: fortran/check.cc:1751
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "ATOM argument at %L to intrinsic function %s shall be an integer of "
 "ATOMIC_INT_KIND or a logical of ATOMIC_LOGICAL_KIND"
 msgstr ""
 
-#: fortran/check.cc:1726
+#: fortran/check.cc:1759
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "ATOM argument at %L of the %s intrinsic function shall be a coarray or "
 "coindexed"
 msgstr ""
 
-#: fortran/check.cc:1733
+#: fortran/check.cc:1766
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L shall have the same type as %qs at %L"
 msgstr ""
 
-#: fortran/check.cc:1751 fortran/check.cc:2025
+#: fortran/check.cc:1784 fortran/check.cc:2058
 #, gcc-internal-format, gfc-internal-format
 msgid "STAT= argument to %s at %L"
 msgstr ""
 
-#: fortran/check.cc:1770 fortran/check.cc:1965 fortran/check.cc:2062
+#: fortran/check.cc:1803 fortran/check.cc:1998 fortran/check.cc:2095
 #, gcc-internal-format, gfc-internal-format
 msgid "ATOM argument of the %s intrinsic function at %L shall be definable"
 msgstr ""
 
-#: fortran/check.cc:1784 fortran/check.cc:2045
+#: fortran/check.cc:1817 fortran/check.cc:2078
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "ATOM argument at %L to intrinsic function %s shall be an integer of "
 "ATOMIC_INT_KIND"
 msgstr ""
 
-#: fortran/check.cc:1804
+#: fortran/check.cc:1837
 #, gcc-internal-format, gfc-internal-format
 msgid "VALUE argument of the %s intrinsic function at %L shall be definable"
 msgstr ""
 
-#: fortran/check.cc:1819
+#: fortran/check.cc:1852
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L shall be of type %<team_type%> from the "
 "intrinsic module %<ISO_FORTRAN_ENV%>"
 msgstr ""
 
-#: fortran/check.cc:1858
+#: fortran/check.cc:1891
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L shall have a type of "
 "CHARACTER(KIND=C_CHAR)"
 msgstr ""
 
-#: fortran/check.cc:1883
+#: fortran/check.cc:1916
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L not yet supported"
 msgstr ""
 
-#: fortran/check.cc:1903
+#: fortran/check.cc:1936
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L shall specify a valid integer kind"
 msgstr ""
 
-#: fortran/check.cc:1930
+#: fortran/check.cc:1963
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L shall specify one of the INITIAL_TEAM, "
@@ -74141,97 +77910,97 @@ msgid ""
 "ISO_FORTRAN_ENV"
 msgstr ""
 
-#: fortran/check.cc:1972 fortran/check.cc:2069
+#: fortran/check.cc:2005 fortran/check.cc:2102
 #, gcc-internal-format, gfc-internal-format
 msgid "OLD argument of the %s intrinsic function at %L shall be definable"
 msgstr ""
 
-#: fortran/check.cc:1987
+#: fortran/check.cc:2020
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "EVENT argument at %L to the intrinsic EVENT_QUERY shall be of type EVENT_TYPE"
 msgstr ""
 
-#: fortran/check.cc:1997
+#: fortran/check.cc:2030
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "COUNT argument of the EVENT_QUERY intrinsic function at %L shall be definable"
 msgstr ""
 
-#: fortran/check.cc:2010
+#: fortran/check.cc:2043
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "COUNT argument of the EVENT_QUERY intrinsic function at %L shall have at "
 "least the range of the default integer"
 msgstr ""
 
-#: fortran/check.cc:2089
+#: fortran/check.cc:2122
 #, gcc-internal-format, gfc-internal-format
 msgid "Negative argument N at %L"
 msgstr ""
 
-#: fortran/check.cc:2220
+#: fortran/check.cc:2253
 #, gcc-internal-format, gfc-internal-format
 msgid "BOZ literal constant at %L cannot appear in CHAR intrinsic subprogram"
 msgstr ""
 
-#: fortran/check.cc:2344 fortran/check.cc:2864
+#: fortran/check.cc:2377 fortran/check.cc:2917
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must not be present if %<x%> is COMPLEX"
 msgstr ""
 
-#: fortran/check.cc:2353 fortran/check.cc:2873
+#: fortran/check.cc:2386 fortran/check.cc:2926
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must have a type of either REAL or "
 "INTEGER"
 msgstr ""
 
-#: fortran/check.cc:2363 fortran/check.cc:2369
+#: fortran/check.cc:2396 fortran/check.cc:2402
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Conversion from %s to default-kind COMPLEX(%d) at %L might lose precision, "
 "consider using the KIND argument"
 msgstr ""
 
-#: fortran/check.cc:2391
+#: fortran/check.cc:2424
 #, gcc-internal-format
 msgid ""
 "Argument %<A%> with INTENT(INOUT) at %L of the intrinsic subroutine %s shall "
 "not have a vector subscript"
 msgstr ""
 
-#: fortran/check.cc:2399
+#: fortran/check.cc:2432
 #, gcc-internal-format, gfc-internal-format
 msgid "The A argument at %L to the intrinsic %s shall not be coindexed"
 msgstr ""
 
-#: fortran/check.cc:2422
+#: fortran/check.cc:2455
 #, gcc-internal-format, gfc-internal-format
 msgid "The stat= argument at %L must be a kind=4 integer variable"
 msgstr ""
 
-#: fortran/check.cc:2438
+#: fortran/check.cc:2471
 #, gcc-internal-format, gfc-internal-format
 msgid "The errmsg= argument at %L must be a default-kind character variable"
 msgstr ""
 
-#: fortran/check.cc:2446 fortran/check.cc:3838 fortran/check.cc:6576
-#: fortran/check.cc:6627 fortran/check.cc:6657 fortran/check.cc:6675
-#: fortran/check.cc:6975
+#: fortran/check.cc:2479 fortran/check.cc:2779 fortran/check.cc:3891
+#: fortran/check.cc:6768 fortran/check.cc:6819 fortran/check.cc:6849
+#: fortran/check.cc:6867 fortran/check.cc:7167
 #, gcc-internal-format
 msgid "Coarrays disabled at %L, use %<-fcoarray=%> to enable"
 msgstr ""
 
-#: fortran/check.cc:2461
+#: fortran/check.cc:2494
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Support for the A argument at %L which is polymorphic A argument or has "
 "allocatable components is not yet implemented"
 msgstr ""
 
-#: fortran/check.cc:2494
+#: fortran/check.cc:2527
 #, gcc-internal-format, gfc-internal-format
 msgid "OPERATION argument at %L must be a PURE function"
 msgstr ""
@@ -74239,732 +78008,749 @@ msgstr ""
 #. None of the intrinsics fulfills the criteria of taking two arguments,
 #. returning the same type and kind as the arguments and being permitted
 #. as actual argument.
-#: fortran/check.cc:2504
+#: fortran/check.cc:2537
 #, gcc-internal-format, gfc-internal-format
 msgid "Intrinsic function %s at %L is not permitted for %s"
 msgstr ""
 
-#: fortran/check.cc:2522
+#: fortran/check.cc:2555
 #, gcc-internal-format, gfc-internal-format
 msgid "The function passed as OPERATION at %L shall have two arguments"
 msgstr ""
 
-#: fortran/check.cc:2532
+#: fortran/check.cc:2565
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The %s argument at %L has type %s but the function passed as OPERATION at %L "
 "returns %s"
 msgstr ""
 
-#: fortran/check.cc:2543
+#: fortran/check.cc:2576
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The function passed as OPERATION at %L has arguments of type %s and %s but "
 "shall have type %s"
 msgstr ""
 
-#: fortran/check.cc:2554
+#: fortran/check.cc:2587
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The function passed as OPERATION at %L shall have scalar nonallocatable "
 "nonpointer arguments and return a nonallocatable nonpointer scalar"
 msgstr ""
 
-#: fortran/check.cc:2562
+#: fortran/check.cc:2595
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The function passed as OPERATION at %L shall have the VALUE attribute either "
 "for none or both arguments"
 msgstr ""
 
-#: fortran/check.cc:2569
+#: fortran/check.cc:2602
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The function passed as OPERATION at %L shall have the TARGET attribute "
 "either for none or both arguments"
 msgstr ""
 
-#: fortran/check.cc:2576
+#: fortran/check.cc:2609
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The function passed as OPERATION at %L shall have the ASYNCHRONOUS attribute "
 "either for none or both arguments"
 msgstr ""
 
-#: fortran/check.cc:2584
+#: fortran/check.cc:2617
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The function passed as OPERATION at %L shall not have the OPTIONAL attribute "
 "for either of the arguments"
 msgstr ""
 
-#: fortran/check.cc:2602
+#: fortran/check.cc:2635
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The character length of the %s argument at %L and of the arguments of the "
 "OPERATION at %L shall be the same"
 msgstr ""
 
-#: fortran/check.cc:2610
+#: fortran/check.cc:2643
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The character length of the %s argument at %L and of the function result of "
 "the OPERATION at %L shall be the same"
 msgstr ""
 
-#: fortran/check.cc:2627
+#: fortran/check.cc:2660
 #, gcc-internal-format, gfc-internal-format
 msgid "The A argument at %L of CO_REDUCE shall not be polymorphic"
 msgstr ""
 
-#: fortran/check.cc:2634
+#: fortran/check.cc:2667
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Support for the A argument at %L with allocatable components is not yet "
 "implemented"
 msgstr ""
 
-#: fortran/check.cc:2656
+#: fortran/check.cc:2689
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L shall be of type integer, real or "
 "character"
 msgstr ""
 
-#: fortran/check.cc:2685 fortran/check.cc:2693
+#: fortran/check.cc:2718 fortran/check.cc:2726
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L shall not be UNSIGNED"
 msgstr ""
 
-#: fortran/check.cc:2701 fortran/check.cc:2715
+#: fortran/check.cc:2734 fortran/check.cc:2748
 #, gcc-internal-format, gfc-internal-format
 msgid "BOZ constant at %L cannot appear in the COMPLEX intrinsic subprogram"
 msgstr ""
 
-#: fortran/check.cc:2752 fortran/check.cc:3479 fortran/check.cc:3562
-#: fortran/check.cc:3824 fortran/check.cc:3873 fortran/check.cc:5551
-#: fortran/check.cc:5675 fortran/check.cc:5753 fortran/check.cc:6961
-#: fortran/check.cc:7093
+#: fortran/check.cc:2805 fortran/check.cc:3532 fortran/check.cc:3615
+#: fortran/check.cc:3877 fortran/check.cc:3926 fortran/check.cc:5604
+#: fortran/check.cc:5749 fortran/check.cc:5827 fortran/check.cc:7153
+#: fortran/check.cc:7285
 #, gcc-internal-format
 msgid "%qs intrinsic with KIND argument at %L"
 msgstr ""
 
-#: fortran/check.cc:2799 fortran/check.cc:3107 fortran/check.cc:3167
+#: fortran/check.cc:2852 fortran/check.cc:3160 fortran/check.cc:3220
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L has invalid shape in dimension %d (%ld/"
 "%ld)"
 msgstr ""
 
-#: fortran/check.cc:2814 fortran/check.cc:3122 fortran/check.cc:3182
+#: fortran/check.cc:2867 fortran/check.cc:3175 fortran/check.cc:3235
 #, gcc-internal-format
 msgid "%qs argument of intrinsic %qs at %L of must have rank %d or be a scalar"
 msgstr ""
 
-#: fortran/check.cc:2936 fortran/check.cc:4223 fortran/check.cc:4231
+#: fortran/check.cc:2989 fortran/check.cc:4276 fortran/check.cc:4284
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be numeric or LOGICAL"
 msgstr ""
 
-#: fortran/check.cc:2944 fortran/check.cc:4241
+#: fortran/check.cc:2997 fortran/check.cc:4294
 #, gcc-internal-format
 msgid "Argument types of %qs intrinsic at %L must match (%s/%s)"
 msgstr ""
 
-#: fortran/check.cc:2958
+#: fortran/check.cc:3011
 #, gcc-internal-format
 msgid ""
 "Different shape for arguments %qs and %qs at %L for intrinsic %<dot_product%>"
 msgstr ""
 
-#: fortran/check.cc:2978 fortran/check.cc:2986
+#: fortran/check.cc:3031 fortran/check.cc:3039
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be default real"
 msgstr ""
 
-#: fortran/check.cc:3143
+#: fortran/check.cc:3196
 #, gcc-internal-format
 msgid "%qs must be of same type and kind as %qs at %L in %qs"
 msgstr ""
 
-#: fortran/check.cc:3207
+#: fortran/check.cc:3260
 #, gcc-internal-format
 msgid "Missing %qs argument to %qs intrinsic at %L for %qs of type %qs"
 msgstr ""
 
-#: fortran/check.cc:3225
+#: fortran/check.cc:3278
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "BOZ literal constant at %L cannot appear in the FLOAT intrinsic subprogram"
 msgstr ""
 
-#: fortran/check.cc:3239
+#: fortran/check.cc:3292
 #, gcc-internal-format, gfc-internal-format
 msgid "non-default INTEGER kind argument to %s intrinsic at %L"
 msgstr ""
 
-#: fortran/check.cc:3300
+#: fortran/check.cc:3353
 #, gcc-internal-format
 msgid "COMPLEX argument %qs of %qs intrinsic at %L"
 msgstr ""
 
-#: fortran/check.cc:3426
+#: fortran/check.cc:3479
 #, gcc-internal-format
 msgid "Arguments of %qs have different kind type parameters at %L"
 msgstr ""
 
-#: fortran/check.cc:3530
+#: fortran/check.cc:3583
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of %s at %L must be of length one"
 msgstr ""
 
-#: fortran/check.cc:3569
+#: fortran/check.cc:3622
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be the same kind as %qs"
 msgstr ""
 
-#: fortran/check.cc:3602
+#: fortran/check.cc:3655
 #, gcc-internal-format
 msgid "UINT intrinsic only valid with %<-funsigned%> at %L"
 msgstr ""
 
-#: fortran/check.cc:3626
+#: fortran/check.cc:3679
 #, gcc-internal-format
 msgid ""
 "%qs intrinsic subprogram at %L has been removed.  Use INT intrinsic "
 "subprogram."
 msgstr ""
 
-#: fortran/check.cc:3695
+#: fortran/check.cc:3748
 #, gcc-internal-format, gfc-internal-format
 msgid "SIZE at %L must be positive"
 msgstr ""
 
-#: fortran/check.cc:3707
+#: fortran/check.cc:3760
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The absolute value of SHIFT at %L must be less than or equal to SIZE at %L"
 msgstr ""
 
-#: fortran/check.cc:3766
+#: fortran/check.cc:3819
 #, gcc-internal-format, gfc-internal-format
 msgid "STATUS at %L shall be an INTENT(OUT) variable"
 msgstr ""
 
-#: fortran/check.cc:3775
+#: fortran/check.cc:3828
 #, gcc-internal-format
 msgid "%qs at %L shall be an INTENT(OUT) variable"
 msgstr ""
 
-#: fortran/check.cc:3800
+#: fortran/check.cc:3853
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be a data entity"
 msgstr ""
 
-#: fortran/check.cc:4015
+#: fortran/check.cc:4068
 #, gcc-internal-format
 msgid "Intrinsic %qs at %L must have at least two arguments"
 msgstr ""
 
-#: fortran/check.cc:4063
+#: fortran/check.cc:4116
 #, gcc-internal-format
 msgid "Missing %qs argument to the %s intrinsic at %L"
 msgstr ""
 
-#: fortran/check.cc:4078
+#: fortran/check.cc:4131
 #, gcc-internal-format
 msgid "Duplicate argument %qs at %L to intrinsic %s"
 msgstr ""
 
-#: fortran/check.cc:4083
+#: fortran/check.cc:4136
 #, gcc-internal-format
 msgid "Unknown argument %qs at %L to intrinsic %s"
 msgstr ""
 
-#: fortran/check.cc:4108
+#: fortran/check.cc:4161
 #, gcc-internal-format, gfc-internal-format
 msgid "Different character kinds at %L"
 msgstr ""
 
-#: fortran/check.cc:4117
+#: fortran/check.cc:4170
 #, gcc-internal-format
 msgid "%<a%d%> argument of %qs intrinsic at %L must be %s(%d)"
 msgstr ""
 
-#: fortran/check.cc:4148
+#: fortran/check.cc:4201
 #, gcc-internal-format
 msgid "%qs intrinsic with CHARACTER argument at %L"
 msgstr ""
 
-#: fortran/check.cc:4160
+#: fortran/check.cc:4213
 #, gcc-internal-format
 msgid ""
 "%<a1%> argument of %qs intrinsic at %L must be INTEGER, REAL, CHARACTER or "
 "UNSIGNED"
 msgstr ""
 
-#: fortran/check.cc:4170
+#: fortran/check.cc:4223
 #, gcc-internal-format
 msgid ""
 "%<a1%> argument of %qs intrinsic at %L must be INTEGER, REAL or CHARACTER"
 msgstr ""
 
-#: fortran/check.cc:4255
+#: fortran/check.cc:4308
 #, gcc-internal-format
 msgid ""
 "Different shape on dimension 1 for arguments %qs and %qs at %L for intrinsic "
 "matmul"
 msgstr ""
 
-#: fortran/check.cc:4274
+#: fortran/check.cc:4327
 #, gcc-internal-format
 msgid ""
 "Different shape on dimension 2 for argument %qs and dimension 1 for argument "
 "%qs at %L for intrinsic matmul"
 msgstr ""
 
-#: fortran/check.cc:4283
+#: fortran/check.cc:4336
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be of rank 1 or 2"
 msgstr ""
 
-#: fortran/check.cc:4461
+#: fortran/check.cc:4514
 #, gcc-internal-format
 msgid ""
 "Argument %qs of %qs intrinsic at %L must be in type conformance to argument "
 "%qs at %L"
 msgstr ""
 
-#: fortran/check.cc:4595
+#: fortran/check.cc:4648
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be INTEGER or UNSIGNED"
 msgstr ""
 
-#: fortran/check.cc:4603 fortran/check.cc:8198 fortran/check.cc:8213
+#: fortran/check.cc:4656 fortran/check.cc:8390 fortran/check.cc:8405
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be INTEGER"
 msgstr ""
 
-#: fortran/check.cc:4718
+#: fortran/check.cc:4771
 #, gcc-internal-format, gfc-internal-format
 msgid "STAT= or ERRMSG= at %L not supported"
 msgstr ""
 
-#: fortran/check.cc:4730
+#: fortran/check.cc:4783
 #, gcc-internal-format, gfc-internal-format
 msgid "The FROM argument to MOVE_ALLOC at %L shall not be coindexed"
 msgstr ""
 
-#: fortran/check.cc:4741
+#: fortran/check.cc:4794
 #, gcc-internal-format, gfc-internal-format
 msgid "The TO argument to MOVE_ALLOC at %L shall not be coindexed"
 msgstr ""
 
-#: fortran/check.cc:4748
+#: fortran/check.cc:4801
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The TO arguments in MOVE_ALLOC at %L must be polymorphic if FROM is "
 "polymorphic"
 msgstr ""
 
-#: fortran/check.cc:4759
+#: fortran/check.cc:4812
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The FROM and TO arguments of the MOVE_ALLOC intrinsic at %L must have the "
 "same rank %d/%d"
 msgstr ""
 
-#: fortran/check.cc:4768
+#: fortran/check.cc:4821
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The FROM and TO arguments of the MOVE_ALLOC intrinsic at %L must have the "
 "same corank %d/%d"
 msgstr ""
 
-#: fortran/check.cc:4808
+#: fortran/check.cc:4861
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The FROM and TO arguments at %L violate aliasing restrictions (F2003 "
 "12.4.1.7)"
 msgstr ""
 
-#: fortran/check.cc:4835
+#: fortran/check.cc:4888
 #, gcc-internal-format
 msgid "Argument %<S%> of NEAREST at %L shall not be zero"
 msgstr ""
 
-#: fortran/check.cc:4891
+#: fortran/check.cc:4944
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must be a POINTER, ALLOCATABLE or "
 "procedure pointer"
 msgstr ""
 
-#: fortran/check.cc:4899
+#: fortran/check.cc:4952
 #, gcc-internal-format, gfc-internal-format
 msgid "NULL intrinsic with allocatable MOLD at %L"
 msgstr ""
 
-#: fortran/check.cc:4942
+#: fortran/check.cc:4995
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L shall appear only if %qs is of type REAL "
 "and %qs is of type INTEGER or UNSIGNED"
 msgstr ""
 
-#: fortran/check.cc:5020 fortran/check.cc:7040
+#: fortran/check.cc:5073 fortran/check.cc:7232
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must provide at least as many elements "
 "as there are .TRUE. values in %qs (%ld/%d)"
 msgstr ""
 
-#: fortran/check.cc:5081
+#: fortran/check.cc:5134
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be of a dummy variable"
 msgstr ""
 
-#: fortran/check.cc:5091
+#: fortran/check.cc:5144
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must be of an OPTIONAL dummy variable"
 msgstr ""
 
-#: fortran/check.cc:5110
+#: fortran/check.cc:5163
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must not be a subobject of %qs"
 msgstr ""
 
-#: fortran/check.cc:5161
+#: fortran/check.cc:5214
 #, gcc-internal-format, gfc-internal-format
 msgid "The argument of the RANK intrinsic at %L must be a data object"
 msgstr ""
 
-#: fortran/check.cc:5193
+#: fortran/check.cc:5246
 #, gcc-internal-format, gfc-internal-format
 msgid "The ARRAY argument at %L of REDUCE shall not be polymorphic"
 msgstr ""
 
-#: fortran/check.cc:5203
+#: fortran/check.cc:5256
 #, gcc-internal-format, gfc-internal-format
 msgid "The DIM argument at %L, if present, must be an integer scalar"
 msgstr ""
 
-#: fortran/check.cc:5210
+#: fortran/check.cc:5263
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The MASK argument at %L, if present, must be a logical array with the same "
 "rank as ARRAY"
 msgstr ""
 
-#: fortran/check.cc:5222
+#: fortran/check.cc:5275
 #, gcc-internal-format, gfc-internal-format
 msgid "MASK present at %L without IDENTITY"
 msgstr ""
 
-#: fortran/check.cc:5226
+#: fortran/check.cc:5279
 #, gcc-internal-format, gfc-internal-format
 msgid "The ORDERED argument at %L, if present, must be a logical scalar"
 msgstr ""
 
-#: fortran/check.cc:5234
+#: fortran/check.cc:5287
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The IDENTITY argument at %L, if present, must be a scalar with the same type "
 "as ARRAY"
 msgstr ""
 
-#: fortran/check.cc:5325
+#: fortran/check.cc:5378
 #, gcc-internal-format
 msgid ""
 "%<shape%> argument of %<reshape%> intrinsic at %L must be an array of "
 "constant size"
 msgstr ""
 
-#: fortran/check.cc:5335
+#: fortran/check.cc:5388
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L is empty"
 msgstr ""
 
-#: fortran/check.cc:5342
+#: fortran/check.cc:5395
 #, gcc-internal-format
 msgid ""
 "%<shape%> argument of %<reshape%> intrinsic at %L has more than %d elements"
 msgstr ""
 
-#: fortran/check.cc:5365
+#: fortran/check.cc:5418
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L has negative element (%d)"
 msgstr ""
 
-#: fortran/check.cc:5405
+#: fortran/check.cc:5458
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L has wrong number of elements (%d/%d)"
 msgstr ""
 
-#: fortran/check.cc:5423
+#: fortran/check.cc:5476
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L has out-of-range dimension (%d)"
 msgstr ""
 
-#: fortran/check.cc:5432
+#: fortran/check.cc:5485
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L has invalid permutation of dimensions "
 "(dimension %qd duplicated)"
 msgstr ""
 
-#: fortran/check.cc:5467 fortran/simplify.cc:7589
+#: fortran/check.cc:5520 fortran/simplify.cc:7891
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Without padding, there are not enough elements in the intrinsic RESHAPE "
 "source at %L to match the shape"
 msgstr ""
 
-#: fortran/check.cc:5484 fortran/check.cc:5503
+#: fortran/check.cc:5537 fortran/check.cc:5556
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L cannot be of type %s"
 msgstr ""
 
-#: fortran/check.cc:5494 fortran/check.cc:5513
+#: fortran/check.cc:5547 fortran/check.cc:5566
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be of an extensible type"
 msgstr ""
 
-#: fortran/check.cc:5611
+#: fortran/check.cc:5685
 #, gcc-internal-format
 msgid "SELECTED_REAL_KIND with neither %<P%> nor %<R%> argument at %L"
 msgstr ""
 
-#: fortran/check.cc:5642
+#: fortran/check.cc:5716
 #, gcc-internal-format
 msgid "%qs intrinsic with RADIX argument at %L"
 msgstr ""
 
-#: fortran/check.cc:5690
+#: fortran/check.cc:5764
 #, gcc-internal-format
 msgid ""
 "%<source%> argument of %<shape%> intrinsic at %L must not be an assumed size "
 "array"
 msgstr ""
 
-#: fortran/check.cc:5771 fortran/check.cc:8258
+#: fortran/check.cc:5845 fortran/check.cc:8450
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L shall not be a procedure"
 msgstr ""
 
-#: fortran/check.cc:5787 fortran/check.cc:5933 fortran/check.cc:8250
+#: fortran/check.cc:5861 fortran/check.cc:6007 fortran/check.cc:8442
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L shall not be TYPE(*)"
 msgstr ""
 
-#: fortran/check.cc:5798 fortran/check.cc:5945
+#: fortran/check.cc:5872 fortran/check.cc:6019
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L shall not be an assumed-size array"
 msgstr ""
 
-#: fortran/check.cc:5880
+#: fortran/check.cc:5954
 #, gcc-internal-format
 msgid "is_c_interoperable(): gfc_simplify_expr failed"
 msgstr ""
 
-#: fortran/check.cc:5924
+#: fortran/check.cc:5998
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must be an interoperable data entity: %s"
 msgstr ""
 
-#: fortran/check.cc:5963
+#: fortran/check.cc:6059
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Argument C_PTR_1 at %L to C_ASSOCIATED shall have the type TYPE(C_PTR) or "
 "TYPE(C_FUNPTR)"
 msgstr ""
 
-#: fortran/check.cc:5977
+#: fortran/check.cc:6113
 #, gcc-internal-format, gfc-internal-format
 msgid ""
-"Argument C_PTR_2 at %L to C_ASSOCIATED shall have the same type as C_PTR_1: "
-"%s instead of %s"
+"Argument C_PTR_2 at %L to C_ASSOCIATED shall have the same type as C_PTR_1, "
+"found %s instead of %s"
 msgstr ""
 
-#: fortran/check.cc:6001
+#: fortran/check.cc:6147
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument CPTR at %L to C_F_POINTER shall have the type TYPE(C_PTR)"
 msgstr ""
 
-#: fortran/check.cc:6013
+#: fortran/check.cc:6159
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument FPTR at %L to C_F_POINTER must be a pointer"
 msgstr ""
 
-#: fortran/check.cc:6020
+#: fortran/check.cc:6166
 #, gcc-internal-format, gfc-internal-format
 msgid "FPTR argument at %L to C_F_POINTER shall not be polymorphic"
 msgstr ""
 
-#: fortran/check.cc:6027
+#: fortran/check.cc:6173
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument FPTR at %L to C_F_POINTER shall not be coindexed"
 msgstr ""
 
-#: fortran/check.cc:6034
+#: fortran/check.cc:6180
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected SHAPE argument at %L to C_F_POINTER with scalar FPTR"
 msgstr ""
 
-#: fortran/check.cc:6040
+#: fortran/check.cc:6186
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected SHAPE argument to C_F_POINTER with array FPTR at %L"
 msgstr ""
 
-#: fortran/check.cc:6059
+#: fortran/check.cc:6205
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "SHAPE argument at %L to C_F_POINTER must have the same size as the RANK of "
 "FPTR"
 msgstr ""
 
-#: fortran/check.cc:6069
+#: fortran/check.cc:6214
+#, gcc-internal-format, gfc-internal-format
+msgid "LOWER argument at %L to C_F_POINTER"
+msgstr ""
+
+#: fortran/check.cc:6220
+#, gcc-internal-format, gfc-internal-format
+msgid "Unexpected LOWER argument at %L to C_F_POINTER with scalar FPTR"
+msgstr ""
+
+#: fortran/check.cc:6241
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"LOWER argument at %L to C_F_POINTER must have the same size as the RANK of "
+"FPTR"
+msgstr ""
+
+#: fortran/check.cc:6252
 #, gcc-internal-format, gfc-internal-format
 msgid "Polymorphic FPTR at %L to C_F_POINTER"
 msgstr ""
 
-#: fortran/check.cc:6075
+#: fortran/check.cc:6258
 #, gcc-internal-format, gfc-internal-format
 msgid "FPTR argument to C_F_POINTER at %L is a function returning a pointer"
 msgstr ""
 
-#: fortran/check.cc:6082
+#: fortran/check.cc:6265
 #, gcc-internal-format, gfc-internal-format
 msgid "Noninteroperable array FPTR argument to C_F_POINTER at %L: %s"
 msgstr ""
 
-#: fortran/check.cc:6098
+#: fortran/check.cc:6281
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Argument CPTR at %L to C_F_PROCPOINTER shall have the type TYPE(C_FUNPTR)"
 msgstr ""
 
-#: fortran/check.cc:6110
+#: fortran/check.cc:6293
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument FPTR at %L to C_F_PROCPOINTER shall be a procedure pointer"
 msgstr ""
 
-#: fortran/check.cc:6117
+#: fortran/check.cc:6300
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument FPTR at %L to C_F_PROCPOINTER shall not be coindexed"
 msgstr ""
 
-#: fortran/check.cc:6123
+#: fortran/check.cc:6306
 #, gcc-internal-format, gfc-internal-format
 msgid "Noninteroperable procedure pointer at %L to C_F_PROCPOINTER"
 msgstr ""
 
-#: fortran/check.cc:6137
+#: fortran/check.cc:6320
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument X at %L to C_FUNLOC shall not be coindexed"
 msgstr ""
 
-#: fortran/check.cc:6149
+#: fortran/check.cc:6332
 #, gcc-internal-format
 msgid "Function result %qs at %L is invalid as X argument to C_FUNLOC"
 msgstr ""
 
-#: fortran/check.cc:6156
+#: fortran/check.cc:6339
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Argument X at %L to C_FUNLOC shall be a procedure or a procedure pointer"
 msgstr ""
 
-#: fortran/check.cc:6162
+#: fortran/check.cc:6345
 #, gcc-internal-format, gfc-internal-format
 msgid "Noninteroperable procedure at %L to C_FUNLOC"
 msgstr ""
 
-#: fortran/check.cc:6176
+#: fortran/check.cc:6359
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument X at %L to C_LOC shall not be coindexed"
 msgstr ""
 
-#: fortran/check.cc:6182
+#: fortran/check.cc:6365
 #, gcc-internal-format, gfc-internal-format
 msgid "X argument at %L to C_LOC shall not be polymorphic"
 msgstr ""
 
-#: fortran/check.cc:6193
+#: fortran/check.cc:6376
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Argument X at %L to C_LOC shall have either the POINTER or the TARGET "
 "attribute"
 msgstr ""
 
-#: fortran/check.cc:6201
+#: fortran/check.cc:6384
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument X at %L to C_LOC shall be not be a zero-sized string"
 msgstr ""
 
-#: fortran/check.cc:6210
+#: fortran/check.cc:6393
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument at %L to C_LOC shall not be polymorphic"
 msgstr ""
 
-#: fortran/check.cc:6217
+#: fortran/check.cc:6400
 #, gcc-internal-format, gfc-internal-format
 msgid "Noninteroperable array at %L as argument to C_LOC: %s"
 msgstr ""
 
-#: fortran/check.cc:6228
+#: fortran/check.cc:6411
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Array of interoperable type at %L to C_LOC which is nonallocatable and "
 "neither assumed size nor explicit size"
 msgstr ""
 
-#: fortran/check.cc:6233
+#: fortran/check.cc:6416
 #, gcc-internal-format, gfc-internal-format
 msgid "Array section at %L to C_LOC"
 msgstr ""
 
-#: fortran/check.cc:6261
+#: fortran/check.cc:6444
 #, gcc-internal-format, gfc-internal-format
 msgid "non double precision REAL argument to %s intrinsic at %L"
 msgstr ""
 
-#: fortran/check.cc:6277
+#: fortran/check.cc:6460
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be less than rank %d"
 msgstr ""
 
-#: fortran/check.cc:6296
+#: fortran/check.cc:6479
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L is not a valid dimension index"
 msgstr ""
 
-#: fortran/check.cc:6320
+#: fortran/check.cc:6503
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must have length at least 1"
 msgstr ""
 
-#: fortran/check.cc:6586
+#: fortran/check.cc:6778
 #, gcc-internal-format, gfc-internal-format
 msgid "%s argument to IMAGE_INDEX must be a rank one array at %L"
 msgstr ""
 
-#: fortran/check.cc:6598
+#: fortran/check.cc:6790
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The number of array elements of the SUB argument to IMAGE_INDEX at %L shall "
 "be %d (corank) not %d"
 msgstr ""
 
-#: fortran/check.cc:6636
+#: fortran/check.cc:6828
 #, gcc-internal-format
 msgid "%<team%> or %<team_number%> argument to %qs at %L"
 msgstr ""
 
-#: fortran/check.cc:6696
+#: fortran/check.cc:6888
 #, gcc-internal-format
 msgid ""
 "First argument of %<this_image%> intrinsic at %L must be a coarray variable "
@@ -74972,7 +78758,7 @@ msgid ""
 "%<ISO_FORTRAN_ENV%>"
 msgstr ""
 
-#: fortran/check.cc:6725
+#: fortran/check.cc:6917
 #, gcc-internal-format
 msgid ""
 "Second argument of %<this_image%> intrinsic at %L must be an %<INTEGER%> "
@@ -74980,162 +78766,162 @@ msgid ""
 "%<ISO_FORTRAN_ENV%>"
 msgstr ""
 
-#: fortran/check.cc:6751
+#: fortran/check.cc:6943
 #, gcc-internal-format
 msgid ""
 "%<dim%> argument without %<coarray%> argument not allowed for %<this_image%> "
 "intrinsic at %L"
 msgstr ""
 
-#: fortran/check.cc:6762
+#: fortran/check.cc:6954
 #, gcc-internal-format
 msgid "%<team%> argument to %<this_image%> at %L"
 msgstr ""
 
-#: fortran/check.cc:6773
+#: fortran/check.cc:6965
 #, gcc-internal-format
 msgid ""
 "At most one argument of type %<team_type%> from the intrinsic module "
 "%<ISO_FORTRAN_ENV%> to %<this_image%> at %L allowed"
 msgstr ""
 
-#: fortran/check.cc:6815
+#: fortran/check.cc:7007
 #, gcc-internal-format
 msgid ""
 "%<MOLD%> argument of %<TRANSFER%> intrinsic at %L is an array and shall not "
 "have storage size 0 when %<SOURCE%> argument has size greater than 0"
 msgstr ""
 
-#: fortran/check.cc:6867
+#: fortran/check.cc:7059
 #, gcc-internal-format
 msgid "%<SOURCE%> argument of %<TRANSFER%> intrinsic at %L must not be a %s"
 msgstr ""
 
-#: fortran/check.cc:6886
+#: fortran/check.cc:7078
 #, gcc-internal-format
 msgid "%<MOLD%> argument of %<TRANSFER%> intrinsic at %L must not be a %s"
 msgstr ""
 
-#: fortran/check.cc:6894
+#: fortran/check.cc:7086
 #, gcc-internal-format
 msgid "%<MOLD%> argument of %<TRANSFER%> intrinsic at %L must not be %s"
 msgstr ""
 
-#: fortran/check.cc:6929
+#: fortran/check.cc:7121
 msgid ""
 "Intrinsic TRANSFER at %L has partly undefined result: source size %zd < "
 "result size %zd"
 msgstr ""
 
-#: fortran/check.cc:7054
+#: fortran/check.cc:7246
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must have the same rank as %qs or be a "
 "scalar"
 msgstr ""
 
-#: fortran/check.cc:7067
+#: fortran/check.cc:7259
 #, gcc-internal-format
 msgid "%qs and %qs arguments of %qs intrinsic at %L must have identical shape."
 msgstr ""
 
-#: fortran/check.cc:7203
+#: fortran/check.cc:7395
 #, gcc-internal-format, gfc-internal-format
 msgid "VALUES argument of DATE_AND_TIME at %L has non-default kind"
 msgstr ""
 
-#: fortran/check.cc:7215
+#: fortran/check.cc:7407
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "VALUES argument of DATE_AND_TIME at %L must have a decimal exponent range of "
 "at least four"
 msgstr ""
 
-#: fortran/check.cc:7370 fortran/check.cc:7406
+#: fortran/check.cc:7562 fortran/check.cc:7598
 #, gcc-internal-format
 msgid "Size of %qs argument of %qs intrinsic at %L too small (%i/%i)"
 msgstr ""
 
-#: fortran/check.cc:7417
+#: fortran/check.cc:7609
 #, gcc-internal-format, gfc-internal-format
 msgid "Too many arguments to %s at %L"
 msgstr ""
 
-#: fortran/check.cc:7435
+#: fortran/check.cc:7627
 #, gcc-internal-format
 msgid "fe_runtime_error string must be null terminated"
 msgstr ""
 
-#: fortran/check.cc:7447
+#: fortran/check.cc:7639
 #, gcc-internal-format, gfc-internal-format
 msgid "fe_runtime_error: Wrong number of arguments (%d instead of %d)"
 msgstr ""
 
-#: fortran/check.cc:7489
+#: fortran/check.cc:7681
 #, gcc-internal-format, gfc-internal-format
 msgid "COUNT argument to SYSTEM_CLOCK at %L has non-default kind"
 msgstr ""
 
-#: fortran/check.cc:7496
+#: fortran/check.cc:7688
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "COUNT argument to SYSTEM_CLOCK at %L with kind smaller than default integer"
 msgstr ""
 
-#: fortran/check.cc:7517
+#: fortran/check.cc:7709
 #, gcc-internal-format, gfc-internal-format
 msgid "Real COUNT_RATE argument to SYSTEM_CLOCK at %L"
 msgstr ""
 
-#: fortran/check.cc:7527
+#: fortran/check.cc:7719
 #, gcc-internal-format, gfc-internal-format
 msgid "COUNT_RATE argument to SYSTEM_CLOCK at %L has non-default kind"
 msgstr ""
 
-#: fortran/check.cc:7534
+#: fortran/check.cc:7726
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "COUNT_RATE argument to SYSTEM_CLOCK at %L with kind smaller than default "
 "integer"
 msgstr ""
 
-#: fortran/check.cc:7554
+#: fortran/check.cc:7746
 #, gcc-internal-format, gfc-internal-format
 msgid "COUNT_MAX argument to SYSTEM_CLOCK at %L has non-default kind"
 msgstr ""
 
-#: fortran/check.cc:7564
+#: fortran/check.cc:7756
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "COUNT_MAX argument to SYSTEM_CLOCK at %L with kind smaller than default "
 "integer"
 msgstr ""
 
-#: fortran/check.cc:7579 fortran/check.cc:7586
+#: fortran/check.cc:7771 fortran/check.cc:7778
 #, gcc-internal-format, gfc-internal-format
 msgid "integer arguments to SYSTEM_CLOCK at %L with different kind parameters"
 msgstr ""
 
-#: fortran/check.cc:7800
+#: fortran/check.cc:7992
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must be of a kind not wider than the "
 "default kind (%d)"
 msgstr ""
 
-#: fortran/check.cc:7982
+#: fortran/check.cc:8174
 #, gcc-internal-format
 msgid "Actual argument at %L of %qs intrinsic shall be an associated pointer"
 msgstr ""
 
-#: fortran/check.cc:8171 fortran/check.cc:8182
+#: fortran/check.cc:8363 fortran/check.cc:8374
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must be INTEGER, LOGICAL, or a BOZ "
 "literal constant"
 msgstr ""
 
-#: fortran/check.cc:8242
+#: fortran/check.cc:8434
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Intrinsic function NULL at %L cannot be an actual argument to STORAGE_SIZE, "
@@ -75144,12 +78930,22 @@ msgstr ""
 
 #. Since the extension field is 8 bit wide, we can only have
 #. up to 255 extension levels.
-#: fortran/class.cc:811 fortran/decl.cc:4106 fortran/decl.cc:10878
+#: fortran/class.cc:811 fortran/decl.cc:4315 fortran/decl.cc:11360
 #, gcc-internal-format
 msgid "Maximum extension level reached with type %qs at %L"
 msgstr ""
 
-#: fortran/class.cc:3123 fortran/class.cc:3197
+#: fortran/class.cc:1843
+#, gcc-internal-format
+msgid "Failed to create finalizer result symbol"
+msgstr ""
+
+#: fortran/class.cc:1849
+#, gcc-internal-format
+msgid "Failed to set finalizer result attributes"
+msgstr ""
+
+#: fortran/class.cc:3148 fortran/class.cc:3222
 #, gcc-internal-format
 msgid "%qs of %qs is PRIVATE at %L"
 msgstr ""
@@ -75159,11 +78955,16 @@ msgstr ""
 msgid "To enable preprocessing, use %<-cpp%>"
 msgstr ""
 
-#: fortran/cpp.cc:583 fortran/cpp.cc:594 fortran/cpp.cc:725
+#: fortran/cpp.cc:583 fortran/cpp.cc:594 fortran/cpp.cc:732
 #, gcc-internal-format
 msgid "opening output file %qs: %s"
 msgstr ""
 
+#: fortran/cpp.cc:685
+#, gcc-internal-format
+msgid "%<-E%> is not supported with %<-fpreprocessed%>"
+msgstr ""
+
 #: fortran/data.cc:67
 #, gcc-internal-format, gfc-internal-format
 msgid "non-constant array in DATA statement %L"
@@ -75194,12 +78995,12 @@ msgstr ""
 msgid "Initialization string at %L was truncated to fit the variable (%wd/%wd)"
 msgstr ""
 
-#: fortran/data.cc:220 fortran/resolve.cc:5604
+#: fortran/data.cc:220 fortran/resolve.cc:5843
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L is less than one"
 msgstr ""
 
-#: fortran/data.cc:226 fortran/resolve.cc:5634
+#: fortran/data.cc:226 fortran/resolve.cc:5873
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L exceeds the string length"
 msgstr ""
@@ -75219,7 +79020,7 @@ msgstr ""
 msgid "Data element above array upper bound at %L"
 msgstr ""
 
-#: fortran/data.cc:390 fortran/data.cc:620
+#: fortran/data.cc:390 fortran/data.cc:626
 #, gcc-internal-format
 msgid "re-initialization of %qs at %L"
 msgstr ""
@@ -75240,281 +79041,281 @@ msgstr ""
 msgid "LEN or KIND inquiry ref in DATA statement at %L"
 msgstr ""
 
-#: fortran/data.cc:643
+#: fortran/data.cc:649
 #, gcc-internal-format
 msgid ""
 "Nonpointer object %qs with default initialization shall not appear in a DATA "
 "statement at %L"
 msgstr ""
 
-#: fortran/data.cc:703 fortran/data.cc:722 fortran/data.cc:736
-#: fortran/data.cc:762 fortran/data.cc:909
+#: fortran/data.cc:709 fortran/data.cc:728 fortran/data.cc:742
+#: fortran/data.cc:768 fortran/data.cc:915
 #, gcc-internal-format
 msgid "Simplification error"
 msgstr ""
 
-#: fortran/decl.cc:293
+#: fortran/decl.cc:294
 #, gcc-internal-format, gfc-internal-format
 msgid "Inquiry parameter cannot appear in a data-stmt-object-list at %C"
 msgstr ""
 
-#: fortran/decl.cc:307
+#: fortran/decl.cc:308
 #, gcc-internal-format
 msgid "Host associated variable %qs may not be in the DATA statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:314
+#: fortran/decl.cc:315
 #, gcc-internal-format
 msgid "initialization of common block variable %qs in DATA statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:452
+#: fortran/decl.cc:453
 #, gcc-internal-format
 msgid "Symbol %qs must be a PARAMETER in DATA statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:478
+#: fortran/decl.cc:479
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid initializer %s in Data statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:583
+#: fortran/decl.cc:584
 #, gcc-internal-format, gfc-internal-format
 msgid "BOZ at %L cannot appear in an old-style initialization"
 msgstr ""
 
-#: fortran/decl.cc:591
+#: fortran/decl.cc:592
 #, gcc-internal-format
 msgid ""
 "BOZ literal constant near %L cannot be assigned to a %qs variable in an old-"
 "style initialization"
 msgstr ""
 
-#: fortran/decl.cc:601
+#: fortran/decl.cc:602
 #, gcc-internal-format, gfc-internal-format
 msgid "Initialization at %C is not allowed in a PURE procedure"
 msgstr ""
 
-#: fortran/decl.cc:648
+#: fortran/decl.cc:649
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %C cannot appear within an INTERFACE"
 msgstr ""
 
-#: fortran/decl.cc:672
+#: fortran/decl.cc:673
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid substring in data-implied-do at %L in DATA statement"
 msgstr ""
 
-#: fortran/decl.cc:695
+#: fortran/decl.cc:696
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocatable component or deferred-shaped array near %C in DATA statement"
 msgstr ""
 
-#: fortran/decl.cc:737
+#: fortran/decl.cc:738
 #, gcc-internal-format, gfc-internal-format
 msgid "BOZ literal constant at %L cannot appear in a structure constructor"
 msgstr ""
 
-#: fortran/decl.cc:753
+#: fortran/decl.cc:754
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %C is not allowed in a PURE procedure"
 msgstr ""
 
-#: fortran/decl.cc:762
+#: fortran/decl.cc:763
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "part-ref with pointer attribute near %L is not rightmost part-ref of data-"
 "stmt-object"
 msgstr ""
 
-#: fortran/decl.cc:801
+#: fortran/decl.cc:802
 #, gcc-internal-format, gfc-internal-format
 msgid "Empty old style initializer list at %C"
 msgstr ""
 
-#: fortran/decl.cc:810
+#: fortran/decl.cc:811
 #, gcc-internal-format, gfc-internal-format
 msgid "Array in initializer list at %L must have an explicit shape"
 msgstr ""
 
-#: fortran/decl.cc:833
+#: fortran/decl.cc:834
 #, gcc-internal-format, gfc-internal-format
 msgid "Repeat spec invalid in scalar initializer at %C"
 msgstr ""
 
-#: fortran/decl.cc:838
+#: fortran/decl.cc:839
 #, gcc-internal-format, gfc-internal-format
 msgid "Repeat spec must be an integer at %C"
 msgstr ""
 
-#: fortran/decl.cc:849
+#: fortran/decl.cc:850
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected data constant after repeat spec at %C"
 msgstr ""
 
-#: fortran/decl.cc:881
+#: fortran/decl.cc:882
 #, gcc-internal-format, gfc-internal-format
 msgid "End of scalar initializer expected at %C"
 msgstr ""
 
-#: fortran/decl.cc:909
+#: fortran/decl.cc:910
 #, gcc-internal-format, gfc-internal-format
 msgid "Not enough elements in array initializer at %C"
 msgstr ""
 
-#: fortran/decl.cc:911
+#: fortran/decl.cc:912
 #, gcc-internal-format, gfc-internal-format
 msgid "Too many elements in array initializer at %C"
 msgstr ""
 
-#: fortran/decl.cc:938
+#: fortran/decl.cc:939
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in old style initializer list at %C"
 msgstr ""
 
-#: fortran/decl.cc:962
+#: fortran/decl.cc:963
 #, gcc-internal-format, gfc-internal-format
 msgid "The assumed-rank array at %C shall not have a codimension"
 msgstr ""
 
-#: fortran/decl.cc:1027
+#: fortran/decl.cc:1028
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Sum of array rank %d and corank %d at %C exceeds maximum allowed dimensions "
 "of %d"
 msgstr ""
 
-#: fortran/decl.cc:1051
+#: fortran/decl.cc:1052
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad INTENT specification at %C"
 msgstr ""
 
-#: fortran/decl.cc:1073
+#: fortran/decl.cc:1074
 #, gcc-internal-format, gfc-internal-format
 msgid "deferred type parameter at %C"
 msgstr ""
 
-#: fortran/decl.cc:1166 fortran/resolve.cc:14246
+#: fortran/decl.cc:1167 fortran/resolve.cc:14857
 #, gcc-internal-format, gfc-internal-format
 msgid "Scalar INTEGER expression expected at %L"
 msgstr ""
 
-#: fortran/decl.cc:1192
+#: fortran/decl.cc:1193 fortran/decl.cc:1222
 #, gcc-internal-format, gfc-internal-format
 msgid "Old-style character length at %C"
 msgstr ""
 
-#: fortran/decl.cc:1223
+#: fortran/decl.cc:1228
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in character length specification at %C"
 msgstr ""
 
-#: fortran/decl.cc:1375 fortran/decl.cc:1382 fortran/decl.cc:1448
+#: fortran/decl.cc:1380 fortran/decl.cc:1387 fortran/decl.cc:1453
 #, gcc-internal-format
 msgid "Procedure %qs at %C is already defined at %L"
 msgstr ""
 
-#: fortran/decl.cc:1390
+#: fortran/decl.cc:1395
 #, gcc-internal-format
 msgid "Contained procedure %qs at %C clashes with procedure defined at %L"
 msgstr ""
 
-#: fortran/decl.cc:1402
+#: fortran/decl.cc:1407
 #, gcc-internal-format
 msgid "Name %qs at %C is already defined as a generic interface at %L"
 msgstr ""
 
-#: fortran/decl.cc:1420
+#: fortran/decl.cc:1425
 #, gcc-internal-format
 msgid ""
 "Procedure %qs at %C has an explicit interface from a previous declaration"
 msgstr ""
 
-#: fortran/decl.cc:1436
+#: fortran/decl.cc:1441
 #, gcc-internal-format
 msgid ""
 "Procedure %qs defined in interface body at %L clashes with internal "
 "procedure defined at %C"
 msgstr ""
 
-#: fortran/decl.cc:1519
+#: fortran/decl.cc:1524
 #, gcc-internal-format
 msgid ""
 "Procedure %qs at %L must have the BIND(C) attribute to be C interoperable"
 msgstr ""
 
-#: fortran/decl.cc:1546
+#: fortran/decl.cc:1589
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L is a dummy argument to the BIND(C) procedure %qs but is "
 "not C interoperable because derived type %qs is not C interoperable"
 msgstr ""
 
-#: fortran/decl.cc:1553
+#: fortran/decl.cc:1596
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L is a dummy argument to the BIND(C) procedure %qs but is "
 "not C interoperable because it is polymorphic"
 msgstr ""
 
-#: fortran/decl.cc:1560
+#: fortran/decl.cc:1603
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L is a dummy argument of the BIND(C) procedure %qs but may "
 "not be C interoperable"
 msgstr ""
 
-#: fortran/decl.cc:1569
+#: fortran/decl.cc:1612
 #, gcc-internal-format
 msgid ""
 "Dummy argument %qs at %L may not be a pointer with CONTIGUOUS attribute as "
 "procedure %qs is BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:1579
+#: fortran/decl.cc:1622
 #, gcc-internal-format
 msgid ""
 "Default-initialized dummy argument %qs with %s attribute at %L is not "
 "permitted in BIND(C) procedure %qs"
 msgstr ""
 
-#: fortran/decl.cc:1600
+#: fortran/decl.cc:1643
 #, gcc-internal-format
 msgid ""
 "Allocatable character dummy argument %qs at %L must have deferred length as "
 "procedure %qs is BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:1605
+#: fortran/decl.cc:1648
 #, gcc-internal-format
 msgid ""
 "Pointer character dummy argument %qs at %L must have deferred length as "
 "procedure %qs is BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:1612
+#: fortran/decl.cc:1655
 #, gcc-internal-format
 msgid ""
 "Deferred-length character dummy argument %qs at %L of procedure %qs with "
 "BIND(C) attribute"
 msgstr ""
 
-#: fortran/decl.cc:1624
+#: fortran/decl.cc:1667
 #, gcc-internal-format
 msgid ""
 "Character dummy argument %qs at %L must be of length 1 as it has the VALUE "
 "attribute"
 msgstr ""
 
-#: fortran/decl.cc:1635
+#: fortran/decl.cc:1678
 #, gcc-internal-format
 msgid ""
 "Assumed-length character dummy argument %qs at %L of procedure %qs with "
 "BIND(C) attribute"
 msgstr ""
 
-#: fortran/decl.cc:1649
+#: fortran/decl.cc:1692
 #, gcc-internal-format
 msgid ""
 "Character dummy argument %qs at %L must be of constant length of one or "
@@ -75522,1802 +79323,1923 @@ msgid ""
 "%qs has the BIND(C) attribute"
 msgstr ""
 
-#: fortran/decl.cc:1667
+#: fortran/decl.cc:1710
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L with ALLOCATABLE attribute in procedure %qs with BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:1675
+#: fortran/decl.cc:1718
 #, gcc-internal-format
 msgid "Variable %qs at %L with POINTER attribute in procedure %qs with BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:1684
+#: fortran/decl.cc:1727
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L cannot have both the OPTIONAL and the VALUE attribute "
 "because procedure %qs is BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:1691
+#: fortran/decl.cc:1734
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L with OPTIONAL attribute in procedure %qs which is BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:1702
+#: fortran/decl.cc:1745
 #, gcc-internal-format
 msgid ""
 "Assumed-shape array %qs at %L as dummy argument to the BIND(C) procedure %qs "
 "at %L"
 msgstr ""
 
-#: fortran/decl.cc:1769
+#: fortran/decl.cc:1801
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"F2018: C8102 %s at %L is already imported by an %s statement and must not be "
+"re-declared"
+msgstr ""
+
+#: fortran/decl.cc:1830
 #, gcc-internal-format
 msgid "Symbol %qs at %C also declared as a type at %L"
 msgstr ""
 
-#: fortran/decl.cc:1831
+#: fortran/decl.cc:1892
 #, gcc-internal-format
 msgid ""
 "Variable %qs in common block %qs at %C must be declared with a C "
 "interoperable kind since common block %qs is BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:1871
+#: fortran/decl.cc:1932
 #, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER length must be a constant at %L"
 msgstr ""
 
-#: fortran/decl.cc:1886
+#: fortran/decl.cc:1947
 #, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER expression at %L is being truncated (%ld/%ld)"
 msgstr ""
 
-#: fortran/decl.cc:1895 fortran/decl.cc:1901
+#: fortran/decl.cc:1956 fortran/decl.cc:1962
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The CHARACTER elements of the array constructor at %L must have the same "
 "length (%ld/%ld)"
 msgstr ""
 
-#: fortran/decl.cc:2040
+#: fortran/decl.cc:2101
 #, gcc-internal-format
 msgid "Initializer not allowed for PARAMETER %qs at %C"
 msgstr ""
 
-#: fortran/decl.cc:2053
+#: fortran/decl.cc:2114
 #, gcc-internal-format, gfc-internal-format
 msgid "PARAMETER at %L is missing an initializer"
 msgstr ""
 
-#: fortran/decl.cc:2063
+#: fortran/decl.cc:2124
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %C with an initializer already appears in a DATA statement"
 msgstr ""
 
-#: fortran/decl.cc:2106
+#: fortran/decl.cc:2167
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot initialize parameter array at %L with variable length elements"
 msgstr ""
 
-#: fortran/decl.cc:2140
+#: fortran/decl.cc:2201
 #, gcc-internal-format, gfc-internal-format
 msgid "Rank mismatch of array at %L and its initializer (%d/%d)"
 msgstr ""
 
-#: fortran/decl.cc:2153
+#: fortran/decl.cc:2214
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot initialize implied-shape array at %L with scalar"
 msgstr ""
 
-#: fortran/decl.cc:2163
+#: fortran/decl.cc:2224
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad shape of initializer at %L"
 msgstr ""
 
-#: fortran/decl.cc:2170
+#: fortran/decl.cc:2231
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot determine shape of initializer at %L"
 msgstr ""
 
-#: fortran/decl.cc:2205
+#: fortran/decl.cc:2266
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-constant lower bound in implied-shape declaration at %L"
 msgstr ""
 
-#: fortran/decl.cc:2255
+#: fortran/decl.cc:2316
 #, gcc-internal-format
 msgid "Entity %qs at %L is incompatible with a BOZ literal constant"
 msgstr ""
 
-#: fortran/decl.cc:2321 fortran/decl.cc:2328
+#: fortran/decl.cc:2382 fortran/decl.cc:2389
 #, gcc-internal-format, gfc-internal-format
 msgid "Component at %C must have the POINTER attribute"
 msgstr ""
 
-#: fortran/decl.cc:2337
+#: fortran/decl.cc:2398
 #, gcc-internal-format
 msgid "Component %qs with CLASS at %C must be allocatable or pointer"
 msgstr ""
 
-#: fortran/decl.cc:2346
+#: fortran/decl.cc:2407
 #, gcc-internal-format, gfc-internal-format
 msgid "Array component of structure at %C must have explicit or deferred shape"
 msgstr ""
 
-#: fortran/decl.cc:2370 fortran/symbol.cc:2276
+#: fortran/decl.cc:2431 fortran/symbol.cc:2343
 #, gcc-internal-format
 msgid "Component %qs at %C already declared at %L"
 msgstr ""
 
-#: fortran/decl.cc:2425
+#: fortran/decl.cc:2486
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer array component of structure at %C must have a deferred shape"
 msgstr ""
 
-#: fortran/decl.cc:2432
+#: fortran/decl.cc:2493
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocatable component of structure at %C must have a deferred shape"
 msgstr ""
 
-#: fortran/decl.cc:2456
+#: fortran/decl.cc:2517
 #, gcc-internal-format, gfc-internal-format
 msgid "Array component of structure at %C must have an explicit shape"
 msgstr ""
 
-#: fortran/decl.cc:2473
+#: fortran/decl.cc:2534
 #, gcc-internal-format
 msgid ""
 "Type parameter %qs at %C has no corresponding entry in the type parameter "
 "name list at %L"
 msgstr ""
 
-#: fortran/decl.cc:2530
+#: fortran/decl.cc:2591
 #, gcc-internal-format, gfc-internal-format
 msgid "NULL() initialization at %C is ambiguous"
 msgstr ""
 
-#: fortran/decl.cc:2547
+#: fortran/decl.cc:2608
 #, gcc-internal-format, gfc-internal-format
 msgid "NULL() initialization at %C may not have MOLD"
 msgstr ""
 
-#: fortran/decl.cc:2564
+#: fortran/decl.cc:2625
 #, gcc-internal-format, gfc-internal-format
 msgid "Initialization of pointer at %C is not allowed in a PURE procedure"
 msgstr ""
 
-#: fortran/decl.cc:2585
+#: fortran/decl.cc:2646
 #, gcc-internal-format, gfc-internal-format
 msgid "Error in pointer initialization at %C"
 msgstr ""
 
-#: fortran/decl.cc:2592
+#: fortran/decl.cc:2653
 #, gcc-internal-format, gfc-internal-format
 msgid "non-NULL pointer initialization at %C"
 msgstr ""
 
-#: fortran/decl.cc:2615
+#: fortran/decl.cc:2676
 #, gcc-internal-format
 msgid ""
 "RESULT variable %qs at %L prohibits FUNCTION name %qs at %C from appearing "
 "in a specification statement"
 msgstr ""
 
-#: fortran/decl.cc:2670
+#: fortran/decl.cc:2731
 #, gcc-internal-format
 msgid "%qs not allowed outside STRUCTURE at %C"
 msgstr ""
 
-#: fortran/decl.cc:2672
+#: fortran/decl.cc:2733
 #, gcc-internal-format
 msgid "%qs at %C is a DEC extension, enable with %<-fdec-structure%>"
 msgstr ""
 
-#: fortran/decl.cc:2680
+#: fortran/decl.cc:2741
 #, gcc-internal-format
 msgid "%qs entity cannot have attributes at %C"
 msgstr ""
 
-#: fortran/decl.cc:2690
+#: fortran/decl.cc:2751
 #, gcc-internal-format
 msgid "Invalid character %qc in variable name at %C"
 msgstr ""
 
-#: fortran/decl.cc:2732
+#: fortran/decl.cc:2793
 #, gcc-internal-format
 msgid "Non-PARAMETER symbol %qs at %L cannot be implied-shape"
 msgstr ""
 
-#: fortran/decl.cc:2742
+#: fortran/decl.cc:2803
 #, gcc-internal-format, gfc-internal-format
 msgid "Implied-shape array at %L"
 msgstr ""
 
-#: fortran/decl.cc:2799
+#: fortran/decl.cc:2860
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Explicit array shape at %C must be constant of INTEGER type and not %s type"
 msgstr ""
 
-#: fortran/decl.cc:2807
+#: fortran/decl.cc:2868
 #, gcc-internal-format, gfc-internal-format
 msgid "Explicit shaped array with nonconstant bounds at %C"
 msgstr ""
 
-#: fortran/decl.cc:2908
+#: fortran/decl.cc:2969
 #, gcc-internal-format
 msgid ""
 "%qs at %L is a redefinition of the declaration in the corresponding "
 "interface for MODULE PROCEDURE %qs"
 msgstr ""
 
-#: fortran/decl.cc:2919
+#: fortran/decl.cc:2980
 #, gcc-internal-format
 msgid "%qs entity cannot have an initializer at %L"
 msgstr ""
 
-#: fortran/decl.cc:2945
+#: fortran/decl.cc:3006
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate array spec for Cray pointee at %L"
 msgstr ""
 
-#: fortran/decl.cc:2953
+#: fortran/decl.cc:3014
 #, gcc-internal-format
 msgid "Cannot set pointee array spec."
 msgstr ""
 
-#: fortran/decl.cc:3016
+#: fortran/decl.cc:3077
 #, gcc-internal-format, gfc-internal-format
 msgid "Old-style initialization at %C"
 msgstr ""
 
-#: fortran/decl.cc:3024
+#: fortran/decl.cc:3085
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid old style initialization for derived type component at %C"
 msgstr ""
 
-#: fortran/decl.cc:3037
+#: fortran/decl.cc:3098
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in old style initialization of %s at %C"
 msgstr ""
 
-#: fortran/decl.cc:3057 fortran/decl.cc:7271
+#: fortran/decl.cc:3118 fortran/decl.cc:7749
 #, gcc-internal-format, gfc-internal-format
 msgid "Initialization at %C isn't for a pointer variable"
 msgstr ""
 
-#: fortran/decl.cc:3080
+#: fortran/decl.cc:3141
 #, gcc-internal-format
 msgid "Pointer initialization at %C requires %<=>%>, not %<=%>"
 msgstr ""
 
-#: fortran/decl.cc:3089 fortran/decl.cc:11052
+#: fortran/decl.cc:3159 fortran/decl.cc:11534
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected an initialization expression at %C"
 msgstr ""
 
-#: fortran/decl.cc:3096
+#: fortran/decl.cc:3166
 #, gcc-internal-format, gfc-internal-format
 msgid "Initialization of variable at %C is not allowed in a PURE procedure"
 msgstr ""
 
-#: fortran/decl.cc:3113
+#: fortran/decl.cc:3183
 #, gcc-internal-format, gfc-internal-format
 msgid "Initialization of allocatable component at %C is not allowed"
 msgstr ""
 
-#: fortran/decl.cc:3122
+#: fortran/decl.cc:3192
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Initialization of structure component with a HOLLERITH constant at %L is not "
 "allowed"
 msgstr ""
 
-#: fortran/decl.cc:3136
+#: fortran/decl.cc:3206
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The component with KIND or LEN attribute at %C does not not appear in the "
 "type parameter list at %L"
 msgstr ""
 
-#: fortran/decl.cc:3144
+#: fortran/decl.cc:3214
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The component at %C that appears in the type parameter list at %L has "
 "neither the KIND nor LEN attribute"
 msgstr ""
 
-#: fortran/decl.cc:3152
+#: fortran/decl.cc:3222
 #, gcc-internal-format, gfc-internal-format
 msgid "The component at %C which is a type parameter must be a scalar"
 msgstr ""
 
-#: fortran/decl.cc:3161
+#: fortran/decl.cc:3231
 #, gcc-internal-format, gfc-internal-format
 msgid "BOZ literal constant at %L cannot appear as an initializer"
 msgstr ""
 
-#: fortran/decl.cc:3178
+#: fortran/decl.cc:3248
 #, gcc-internal-format
 msgid ""
 "Incompatible initialization between a derived type entity and an entity with "
 "%qs type at %C"
 msgstr ""
 
-#: fortran/decl.cc:3241 fortran/decl.cc:3276
+#: fortran/decl.cc:3311 fortran/decl.cc:3346
 #, gcc-internal-format, gfc-internal-format
 msgid "Old-style type declaration %s*%d not supported at %C"
 msgstr ""
 
-#: fortran/decl.cc:3282
+#: fortran/decl.cc:3352
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonstandard type declaration %s*%d at %C"
 msgstr ""
 
-#: fortran/decl.cc:3341 fortran/decl.cc:3418
+#: fortran/decl.cc:3411 fortran/decl.cc:3488
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing right parenthesis at %C"
 msgstr ""
 
-#: fortran/decl.cc:3354 fortran/decl.cc:3489
+#: fortran/decl.cc:3424 fortran/decl.cc:3559
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected initialization expression at %C"
 msgstr ""
 
-#: fortran/decl.cc:3362 fortran/decl.cc:3495
+#: fortran/decl.cc:3432 fortran/decl.cc:3565
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected scalar initialization expression at %C"
 msgstr ""
 
-#: fortran/decl.cc:3392 fortran/decl.cc:4142
+#: fortran/decl.cc:3462 fortran/decl.cc:4351
 #, gcc-internal-format, gfc-internal-format
 msgid "Kind %d not supported for type %s at %C"
 msgstr ""
 
-#: fortran/decl.cc:3405
+#: fortran/decl.cc:3475
 #, gcc-internal-format, gfc-internal-format
 msgid "C kind type parameter is for type %s but type at %L is %s"
 msgstr ""
 
-#: fortran/decl.cc:3416
+#: fortran/decl.cc:3486
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing right parenthesis or comma at %C"
 msgstr ""
 
-#: fortran/decl.cc:3521
+#: fortran/decl.cc:3591
 #, gcc-internal-format, gfc-internal-format
 msgid "Kind %d is not supported for CHARACTER at %C"
 msgstr ""
 
-#: fortran/decl.cc:3653
+#: fortran/decl.cc:3723
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in CHARACTER declaration at %C"
 msgstr ""
 
-#: fortran/decl.cc:3754
+#: fortran/decl.cc:3824
 #, gcc-internal-format
 msgid "RECORD at %C is an extension, enable it with %<-fdec-structure%>"
 msgstr ""
 
-#: fortran/decl.cc:3767
+#: fortran/decl.cc:3837
 #, gcc-internal-format, gfc-internal-format
 msgid "Structure name expected after RECORD at %C"
 msgstr ""
 
-#: fortran/decl.cc:3880
+#: fortran/decl.cc:4011
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The type parameter spec list at %C cannot contain both ASSUMED and DEFERRED "
 "parameters"
 msgstr ""
 
-#: fortran/decl.cc:3904
+#: fortran/decl.cc:4040
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The type parameter spec list at %C does not contain enough parameter "
 "expressions"
 msgstr ""
 
-#: fortran/decl.cc:3928
+#: fortran/decl.cc:4064
 #, gcc-internal-format
 msgid "The derived parameter %qs at %C does not have a default value"
 msgstr ""
 
-#: fortran/decl.cc:3961
+#: fortran/decl.cc:4075
+#, gcc-internal-format, gfc-internal-format
+msgid "The type parameter expression at %L must be of INTEGER type and not %s"
+msgstr ""
+
+#: fortran/decl.cc:4113
 #, gcc-internal-format, gfc-internal-format
 msgid "The parameter expression at %C must be of INTEGER type and not %s type"
 msgstr ""
 
-#: fortran/decl.cc:3968
+#: fortran/decl.cc:4120
 #, gcc-internal-format, gfc-internal-format
 msgid "The parameter expression at %C does not simplify to an INTEGER constant"
 msgstr ""
 
-#: fortran/decl.cc:3995
+#: fortran/decl.cc:4147
 #, gcc-internal-format
 msgid "The KIND parameter %qs at %C cannot either be ASSUMED or DEFERRED"
 msgstr ""
 
-#: fortran/decl.cc:4002
+#: fortran/decl.cc:4154
 #, gcc-internal-format
 msgid ""
 "The value for the KIND parameter %qs at %C does not reduce to a constant "
 "expression"
 msgstr ""
 
-#: fortran/decl.cc:4017
+#: fortran/decl.cc:4178
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The type parameter spec list at %C contains too many parameter expressions"
 msgstr ""
 
-#: fortran/decl.cc:4026
+#: fortran/decl.cc:4187
 #, gcc-internal-format, gfc-internal-format
 msgid "Parameterized derived type at %C is ambiguous"
 msgstr ""
 
-#: fortran/decl.cc:4277
+#: fortran/decl.cc:4551
 #, gcc-internal-format, gfc-internal-format
 msgid "BYTE type at %C"
 msgstr ""
 
-#: fortran/decl.cc:4289
+#: fortran/decl.cc:4563
 #, gcc-internal-format, gfc-internal-format
 msgid "BYTE type used at %C is not available on the target machine"
 msgstr ""
 
-#: fortran/decl.cc:4351
+#: fortran/decl.cc:4625
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed type at %C is not allowed for components"
 msgstr ""
 
-#: fortran/decl.cc:4354
+#: fortran/decl.cc:4628
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed type at %C"
 msgstr ""
 
-#: fortran/decl.cc:4387 fortran/decl.cc:4421 fortran/decl.cc:4454
-#: fortran/decl.cc:4753
+#: fortran/decl.cc:4661 fortran/decl.cc:4695 fortran/decl.cc:4728
+#: fortran/decl.cc:5062
 #, gcc-internal-format, gfc-internal-format
 msgid "TYPE with intrinsic-type-spec at %C"
 msgstr ""
 
-#: fortran/decl.cc:4399 fortran/decl.cc:4427 fortran/decl.cc:4460
-#: fortran/decl.cc:4486 fortran/decl.cc:4778 fortran/decl.cc:4796
+#: fortran/decl.cc:4673 fortran/decl.cc:4701 fortran/decl.cc:4734
+#: fortran/decl.cc:4760 fortran/decl.cc:5087 fortran/decl.cc:5105
 #, gcc-internal-format, gfc-internal-format
 msgid "Malformed type-spec at %C"
 msgstr ""
 
-#: fortran/decl.cc:4450
+#: fortran/decl.cc:4724
 #, gcc-internal-format, gfc-internal-format
 msgid "DOUBLE COMPLEX at %C"
 msgstr ""
 
-#: fortran/decl.cc:4502 fortran/decl.cc:4644 fortran/decl.cc:4656
-#: fortran/decl.cc:4670 fortran/decl.cc:5155 fortran/decl.cc:5163
+#: fortran/decl.cc:4776 fortran/decl.cc:4943 fortran/decl.cc:4955
+#: fortran/decl.cc:4969 fortran/decl.cc:5582 fortran/decl.cc:5592
 #, gcc-internal-format
 msgid "Type name %qs at %C is ambiguous"
 msgstr ""
 
-#: fortran/decl.cc:4603
+#: fortran/decl.cc:4877
 #, gcc-internal-format, gfc-internal-format
 msgid "CLASS statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:4685
+#: fortran/decl.cc:4984
 #, gcc-internal-format
 msgid ""
 "Type name %qs at %C conflicts with previously declared entity at %L, which "
 "has the same name"
 msgstr ""
 
-#: fortran/decl.cc:4831
+#: fortran/decl.cc:4995
+#, gcc-internal-format
+msgid ""
+"Type %qs is not parameterized and so the type parameter spec list at %C may "
+"not appear"
+msgstr ""
+
+#: fortran/decl.cc:5140
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate IMPLICIT NONE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:4840
+#: fortran/decl.cc:5149
 #, gcc-internal-format, gfc-internal-format
 msgid "IMPLICIT NONE with spec list at %C"
 msgstr ""
 
-#: fortran/decl.cc:4899
+#: fortran/decl.cc:5208
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing character range in IMPLICIT at %C"
 msgstr ""
 
-#: fortran/decl.cc:4945
+#: fortran/decl.cc:5254
 #, gcc-internal-format, gfc-internal-format
 msgid "Letters must be in alphabetic order in IMPLICIT statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:4998
+#: fortran/decl.cc:5307
 #, gcc-internal-format, gfc-internal-format
 msgid "IMPLICIT statement at %C following an IMPLICIT NONE (type) statement"
 msgstr ""
 
-#: fortran/decl.cc:5008
+#: fortran/decl.cc:5317
 #, gcc-internal-format, gfc-internal-format
 msgid "Empty IMPLICIT statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:5114
+#: fortran/decl.cc:5474
 #, gcc-internal-format, gfc-internal-format
 msgid "IMPORT statement at %C only permitted in an INTERFACE body"
 msgstr ""
 
-#: fortran/decl.cc:5121
+#: fortran/decl.cc:5490
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "F2008: C1210 IMPORT statement at %C is not permitted in a module procedure "
 "interface body"
 msgstr ""
 
-#: fortran/decl.cc:5126
+#: fortran/decl.cc:5495
 #, gcc-internal-format, gfc-internal-format
 msgid "IMPORT statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:5140
-#, gcc-internal-format, gfc-internal-format
-msgid "Expecting list of named entities at %C"
+#: fortran/decl.cc:5574
+#, gcc-internal-format
+msgid "import-name %qs at %C is in the local scope"
 msgstr ""
 
-#: fortran/decl.cc:5169
+#: fortran/decl.cc:5601
 #, gcc-internal-format
 msgid "Cannot IMPORT %qs from host scoping unit at %C - does not exist."
 msgstr ""
 
-#: fortran/decl.cc:5176
+#: fortran/decl.cc:5622
 #, gcc-internal-format
 msgid "%qs is already IMPORTed from host scoping unit at %C"
 msgstr ""
 
-#: fortran/decl.cc:5217
+#: fortran/decl.cc:5665
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in IMPORT statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:5557
+#: fortran/decl.cc:5669
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"F2018: C897 IMPORT statement at %C cannot appear in a main program, an "
+"external subprogram, a module or block data"
+msgstr ""
+
+#: fortran/decl.cc:5674
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"F2018: C898 IMPORT statement at %C is not permitted because a scoping unit "
+"has an ONLY specifier, can only have IMPORT with an ONLY specifier"
+msgstr ""
+
+#: fortran/decl.cc:5680
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"F2018: C899 IMPORT, NONE shall not appear in the scoping unit of a submodule "
+"as at %C"
+msgstr ""
+
+#: fortran/decl.cc:5685
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"F2018: C8100 IMPORT statement at %C is not permitted because %s has already "
+"been declared, which must be unique in the scoping unit"
+msgstr ""
+
+#: fortran/decl.cc:5693
+#, gcc-internal-format, gfc-internal-format
+msgid "Expecting list of named entities at %C"
+msgstr ""
+
+#: fortran/decl.cc:6033
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing codimension specification at %C"
 msgstr ""
 
-#: fortran/decl.cc:5559
+#: fortran/decl.cc:6035
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing dimension specification at %C"
 msgstr ""
 
-#: fortran/decl.cc:5654
+#: fortran/decl.cc:6130
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate %s attribute at %L"
 msgstr ""
 
-#: fortran/decl.cc:5671
+#: fortran/decl.cc:6147
 #, gcc-internal-format
 msgid "%s at %L is a DEC extension, enable with %<-fdec-static%>"
 msgstr ""
 
-#: fortran/decl.cc:5690
+#: fortran/decl.cc:6166
 #, gcc-internal-format, gfc-internal-format
 msgid "ALLOCATABLE attribute at %C in a TYPE definition"
 msgstr ""
 
-#: fortran/decl.cc:5692
+#: fortran/decl.cc:6168
 #, gcc-internal-format, gfc-internal-format
 msgid "ALLOCATABLE attribute at %C in a STRUCTURE definition"
 msgstr ""
 
-#: fortran/decl.cc:5702
+#: fortran/decl.cc:6178
 #, gcc-internal-format, gfc-internal-format
 msgid "KIND attribute at %C in a TYPE definition"
 msgstr ""
 
-#: fortran/decl.cc:5704
+#: fortran/decl.cc:6180
 #, gcc-internal-format, gfc-internal-format
 msgid "KIND attribute at %C in a STRUCTURE definition"
 msgstr ""
 
-#: fortran/decl.cc:5712
+#: fortran/decl.cc:6188
 #, gcc-internal-format, gfc-internal-format
 msgid "Component with KIND attribute at %C must be INTEGER"
 msgstr ""
 
-#: fortran/decl.cc:5721
+#: fortran/decl.cc:6197
 #, gcc-internal-format, gfc-internal-format
 msgid "LEN attribute at %C in a TYPE definition"
 msgstr ""
 
-#: fortran/decl.cc:5723
+#: fortran/decl.cc:6199
 #, gcc-internal-format, gfc-internal-format
 msgid "LEN attribute at %C in a STRUCTURE definition"
 msgstr ""
 
-#: fortran/decl.cc:5731
+#: fortran/decl.cc:6207
 #, gcc-internal-format, gfc-internal-format
 msgid "Component with LEN attribute at %C must be INTEGER"
 msgstr ""
 
-#: fortran/decl.cc:5739
+#: fortran/decl.cc:6215
 #, gcc-internal-format, gfc-internal-format
 msgid "Attribute at %L is not allowed in a TYPE definition"
 msgstr ""
 
-#: fortran/decl.cc:5741
+#: fortran/decl.cc:6217
 #, gcc-internal-format, gfc-internal-format
 msgid "Attribute at %L is not allowed in a STRUCTURE definition"
 msgstr ""
 
-#: fortran/decl.cc:5759
+#: fortran/decl.cc:6235
 #, gcc-internal-format, gfc-internal-format
 msgid "Attribute %s at %L in a TYPE definition"
 msgstr ""
 
-#: fortran/decl.cc:5769
+#: fortran/decl.cc:6245
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "%s attribute at %L is not allowed outside of the specification part of a "
 "module"
 msgstr ""
 
-#: fortran/decl.cc:5779
+#: fortran/decl.cc:6255
 #, gcc-internal-format, gfc-internal-format
 msgid "Attribute at %L is not allowed outside a TYPE definition"
 msgstr ""
 
-#: fortran/decl.cc:5792
+#: fortran/decl.cc:6268
 #, gcc-internal-format, gfc-internal-format
 msgid "ASYNCHRONOUS attribute at %C"
 msgstr ""
 
-#: fortran/decl.cc:5803
+#: fortran/decl.cc:6279
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTIGUOUS attribute at %C"
 msgstr ""
 
-#: fortran/decl.cc:5858 fortran/decl.cc:9401
+#: fortran/decl.cc:6334 fortran/decl.cc:9883
 #, gcc-internal-format, gfc-internal-format
 msgid "PROTECTED at %C only allowed in specification part of a module"
 msgstr ""
 
-#: fortran/decl.cc:5864
+#: fortran/decl.cc:6340
 #, gcc-internal-format, gfc-internal-format
 msgid "PROTECTED attribute at %C"
 msgstr ""
 
-#: fortran/decl.cc:5898
+#: fortran/decl.cc:6374
 #, gcc-internal-format, gfc-internal-format
 msgid "VALUE attribute at %C"
 msgstr ""
 
-#: fortran/decl.cc:5905
+#: fortran/decl.cc:6381
 #, gcc-internal-format, gfc-internal-format
 msgid "VOLATILE attribute at %C"
 msgstr ""
 
-#: fortran/decl.cc:5912
+#: fortran/decl.cc:6388
 #, gcc-internal-format
 msgid "match_attr_spec(): Bad attribute"
 msgstr ""
 
-#: fortran/decl.cc:5953
+#: fortran/decl.cc:6429
 #, gcc-internal-format, gfc-internal-format
 msgid "Multiple identifiers provided with single NAME= specifier at %C"
 msgstr ""
 
-#: fortran/decl.cc:6051
+#: fortran/decl.cc:6527
 #, gcc-internal-format
 msgid ""
 "Implicitly declared BIND(C) function %qs at %L may not be C interoperable"
 msgstr ""
 
-#: fortran/decl.cc:6073
+#: fortran/decl.cc:6549
 #, gcc-internal-format
 msgid ""
 "Variable %qs in common block %qs at %L may not be a C interoperable kind "
 "though common block %qs is BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:6084
+#: fortran/decl.cc:6560
 #, gcc-internal-format
 msgid "Type declaration %qs at %L is not C interoperable but it is BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:6090
+#: fortran/decl.cc:6566
 #, gcc-internal-format
 msgid "Variable %qs at %L may not be a C interoperable kind but it is BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:6102
+#: fortran/decl.cc:6578
 #, gcc-internal-format
 msgid ""
 "Variable %qs in common block %qs at %L cannot be declared with BIND(C) since "
 "it is not a global"
 msgstr ""
 
-#: fortran/decl.cc:6116
+#: fortran/decl.cc:6592
 #, gcc-internal-format
 msgid "Variable %qs at %L cannot have both the POINTER and BIND(C) attributes"
 msgstr ""
 
-#: fortran/decl.cc:6124
+#: fortran/decl.cc:6600
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L cannot have both the ALLOCATABLE and BIND(C) attributes"
 msgstr ""
 
-#: fortran/decl.cc:6136
+#: fortran/decl.cc:6612
 #, gcc-internal-format
 msgid "Return type of BIND(C) function %qs at %L cannot be an array"
 msgstr ""
 
-#: fortran/decl.cc:6142
+#: fortran/decl.cc:6618
 #, gcc-internal-format
 msgid ""
 "Return type of BIND(C) function %qs of character type at %L must have length "
 "1"
 msgstr ""
 
-#. Use gfc_warning_now because we won't say that the symbol fails
-#. just because of this.
-#: fortran/decl.cc:6153
+#: fortran/decl.cc:6631
 #, gcc-internal-format
 msgid ""
-"Symbol %qs at %L is marked PRIVATE but has been given the binding label %qs"
+"Symbol %qs at %L is marked PRIVATE but is accessible via its default binding "
+"name %qs"
 msgstr ""
 
-#: fortran/decl.cc:6227
+#: fortran/decl.cc:6705
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Need either entity or common block name for attribute specification "
 "statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:6272
+#: fortran/decl.cc:6750
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Missing entity or common block name for attribute specification statement at "
 "%C"
 msgstr ""
 
-#: fortran/decl.cc:6279
+#: fortran/decl.cc:6757
 #, gcc-internal-format
 msgid "Missing symbol"
 msgstr ""
 
-#: fortran/decl.cc:6308
+#: fortran/decl.cc:6786
 #, gcc-internal-format, gfc-internal-format
 msgid "BIND(C) statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:6370
+#: fortran/decl.cc:6848
 #, gcc-internal-format, gfc-internal-format
 msgid "CLASS entity at %C cannot have the PARAMETER attribute"
 msgstr ""
 
-#: fortran/decl.cc:6402
+#: fortran/decl.cc:6880
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Derived type at %C has not been previously defined and so cannot appear in a "
 "derived type definition"
 msgstr ""
 
-#: fortran/decl.cc:6444
+#: fortran/decl.cc:6922
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in anonymous structure declaration at %C"
 msgstr ""
 
-#: fortran/decl.cc:6453
+#: fortran/decl.cc:6931
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in data declaration at %C"
 msgstr ""
 
-#: fortran/decl.cc:6525
+#: fortran/decl.cc:7003
 #, gcc-internal-format, gfc-internal-format
 msgid "MODULE prefix at %C"
 msgstr ""
 
-#: fortran/decl.cc:6530
+#: fortran/decl.cc:7008
 #, gcc-internal-format, gfc-internal-format
 msgid "MODULE prefix at %C found outside of a module, submodule, or interface"
 msgstr ""
 
-#: fortran/decl.cc:6581
+#: fortran/decl.cc:7059
 #, gcc-internal-format, gfc-internal-format
 msgid "IMPURE procedure at %C"
 msgstr ""
 
-#: fortran/decl.cc:6593
+#: fortran/decl.cc:7071
 #, gcc-internal-format, gfc-internal-format
 msgid "PURE and IMPURE must not appear both at %C"
 msgstr ""
 
-#: fortran/decl.cc:6639
+#: fortran/decl.cc:7117
 #, gcc-internal-format, gfc-internal-format
 msgid "ELEMENTAL prefix in MODULE PROCEDURE interface is missing at %L"
 msgstr ""
 
-#: fortran/decl.cc:6646
+#: fortran/decl.cc:7124
 #, gcc-internal-format, gfc-internal-format
 msgid "PURE prefix in MODULE PROCEDURE interface is missing at %L"
 msgstr ""
 
-#: fortran/decl.cc:6653
+#: fortran/decl.cc:7131
 #, gcc-internal-format, gfc-internal-format
 msgid "RECURSIVE prefix in MODULE PROCEDURE interface is missing at %L"
 msgstr ""
 
-#: fortran/decl.cc:6714
+#: fortran/decl.cc:7192
 #, gcc-internal-format, gfc-internal-format
 msgid "A type parameter list is required at %C"
 msgstr ""
 
-#: fortran/decl.cc:6729 fortran/primary.cc:1998
+#: fortran/decl.cc:7207 fortran/primary.cc:1998
 #, gcc-internal-format, gfc-internal-format
 msgid "Alternate-return argument at %C"
 msgstr ""
 
-#: fortran/decl.cc:6735 fortran/decl.cc:6744
+#: fortran/decl.cc:7213 fortran/decl.cc:7222
 #, gcc-internal-format, gfc-internal-format
 msgid "A parameter name is required at %C"
 msgstr ""
 
-#: fortran/decl.cc:6785
+#: fortran/decl.cc:7263
 #, gcc-internal-format
 msgid "Name %qs at %C is the name of the procedure"
 msgstr ""
 
-#: fortran/decl.cc:6798
+#: fortran/decl.cc:7276
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected parameter list in type declaration at %C"
 msgstr ""
 
-#: fortran/decl.cc:6801
+#: fortran/decl.cc:7279
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk in formal argument list at %C"
 msgstr ""
 
-#: fortran/decl.cc:6819
+#: fortran/decl.cc:7297
 #, gcc-internal-format
 msgid "Duplicate name %qs in parameter list at %C"
 msgstr ""
 
-#: fortran/decl.cc:6822
+#: fortran/decl.cc:7300
 #, gcc-internal-format
 msgid "Duplicate symbol %qs in formal argument list at %C"
 msgstr ""
 
-#: fortran/decl.cc:6864
+#: fortran/decl.cc:7342
 #, gcc-internal-format
 msgid ""
 "MODULE PROCEDURE formal argument %qs conflicts with alternate return at %C"
 msgstr ""
 
-#: fortran/decl.cc:6868
+#: fortran/decl.cc:7346
 #, gcc-internal-format
 msgid ""
 "MODULE PROCEDURE formal argument is alternate return and conflicts with %qs "
 "in the separate declaration at %C"
 msgstr ""
 
-#: fortran/decl.cc:6873
+#: fortran/decl.cc:7351
 #, gcc-internal-format, gfc-internal-format
 msgid "Mismatch in MODULE PROCEDURE formal argument names (%s/%s) at %C"
 msgstr ""
 
-#: fortran/decl.cc:6880
+#: fortran/decl.cc:7358
 #, gcc-internal-format, gfc-internal-format
 msgid "Mismatch in number of MODULE PROCEDURE formal arguments at %C"
 msgstr ""
 
-#: fortran/decl.cc:6919
+#: fortran/decl.cc:7397
 #, gcc-internal-format, gfc-internal-format
 msgid "RESULT variable at %C must be different than function name"
 msgstr ""
 
-#: fortran/decl.cc:6996
+#: fortran/decl.cc:7474
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after function declaration at %C"
 msgstr ""
 
-#: fortran/decl.cc:7006 fortran/decl.cc:8146
+#: fortran/decl.cc:7484 fortran/decl.cc:8627
 #, gcc-internal-format, gfc-internal-format
 msgid "BIND(C) attribute at %L may not be specified for an internal procedure"
 msgstr ""
 
-#: fortran/decl.cc:7210
+#: fortran/decl.cc:7688
 #, gcc-internal-format, gfc-internal-format
 msgid "BIND(C) attribute at %C requires an interface with BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:7217
+#: fortran/decl.cc:7695
 #, gcc-internal-format, gfc-internal-format
 msgid "BIND(C) procedure with NAME may not have POINTER attribute at %C"
 msgstr ""
 
-#: fortran/decl.cc:7223
+#: fortran/decl.cc:7701
 #, gcc-internal-format, gfc-internal-format
 msgid "Dummy procedure at %C may not have BIND(C) attribute with NAME"
 msgstr ""
 
-#: fortran/decl.cc:7246
+#: fortran/decl.cc:7724
 #, gcc-internal-format
 msgid "Procedure %qs at %L already has basic type of %s"
 msgstr ""
 
-#: fortran/decl.cc:7292 fortran/decl.cc:7480 fortran/decl.cc:11536
+#: fortran/decl.cc:7770 fortran/decl.cc:7961 fortran/decl.cc:12018
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in PROCEDURE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:7341 fortran/decl.cc:11436
+#: fortran/decl.cc:7819 fortran/decl.cc:11918
 #, gcc-internal-format
 msgid "Expected %<::%> after binding-attributes at %C"
 msgstr ""
 
-#: fortran/decl.cc:7348
+#: fortran/decl.cc:7826
 #, gcc-internal-format, gfc-internal-format
 msgid "NOPASS or explicit interface required at %C"
 msgstr ""
 
-#: fortran/decl.cc:7352
+#: fortran/decl.cc:7830
 #, gcc-internal-format, gfc-internal-format
 msgid "Procedure pointer component at %C"
 msgstr ""
 
-#: fortran/decl.cc:7424
+#: fortran/decl.cc:7905
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in procedure pointer component at %C"
 msgstr ""
 
-#: fortran/decl.cc:7442
+#: fortran/decl.cc:7923
 #, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE at %C must be in a generic interface"
 msgstr ""
 
-#: fortran/decl.cc:7451 fortran/decl.cc:10176
+#: fortran/decl.cc:7932 fortran/decl.cc:10658
 #, gcc-internal-format, gfc-internal-format
 msgid "double colon in MODULE PROCEDURE statement at %L"
 msgstr ""
 
-#: fortran/decl.cc:7521
+#: fortran/decl.cc:8002
 #, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:7593
+#: fortran/decl.cc:8074
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected formal argument list in function definition at %C"
 msgstr ""
 
-#: fortran/decl.cc:7623 fortran/decl.cc:7902 fortran/decl.cc:8113
-#: fortran/symbol.cc:1916
+#: fortran/decl.cc:8104 fortran/decl.cc:8383 fortran/decl.cc:8594
+#: fortran/symbol.cc:1973
 #, gcc-internal-format, gfc-internal-format
 msgid "BIND(C) attribute at %L can only be used for variables or common blocks"
 msgstr ""
 
-#: fortran/decl.cc:7653 fortran/decl.cc:8171
+#: fortran/decl.cc:8134 fortran/decl.cc:8652
 #, gcc-internal-format
 msgid "Mismatch in BIND(C) names (%qs/%qs) at %C"
 msgstr ""
 
-#: fortran/decl.cc:7796
+#: fortran/decl.cc:8277
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:7805
+#: fortran/decl.cc:8286
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a PROGRAM"
 msgstr ""
 
-#: fortran/decl.cc:7808
+#: fortran/decl.cc:8289
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a MODULE"
 msgstr ""
 
-#: fortran/decl.cc:7811
+#: fortran/decl.cc:8292
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a SUBMODULE"
 msgstr ""
 
-#: fortran/decl.cc:7814
+#: fortran/decl.cc:8295
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a BLOCK DATA"
 msgstr ""
 
-#: fortran/decl.cc:7818 fortran/decl.cc:7863
+#: fortran/decl.cc:8299 fortran/decl.cc:8344
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within an INTERFACE"
 msgstr ""
 
-#: fortran/decl.cc:7822
+#: fortran/decl.cc:8303
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a STRUCTURE block"
 msgstr ""
 
-#: fortran/decl.cc:7826
+#: fortran/decl.cc:8307
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a DERIVED TYPE block"
 msgstr ""
 
-#: fortran/decl.cc:7830
+#: fortran/decl.cc:8311
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within an IF-THEN block"
 msgstr ""
 
-#: fortran/decl.cc:7835
+#: fortran/decl.cc:8316
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a DO block"
 msgstr ""
 
-#: fortran/decl.cc:7839
+#: fortran/decl.cc:8320
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a SELECT block"
 msgstr ""
 
-#: fortran/decl.cc:7843
+#: fortran/decl.cc:8324
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a FORALL block"
 msgstr ""
 
-#: fortran/decl.cc:7847
+#: fortran/decl.cc:8328
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a WHERE block"
 msgstr ""
 
-#: fortran/decl.cc:7851
+#: fortran/decl.cc:8332
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a contained subprogram"
 msgstr ""
 
-#: fortran/decl.cc:7855
+#: fortran/decl.cc:8336
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected ENTRY statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:7876
+#: fortran/decl.cc:8357
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear in a contained procedure"
 msgstr ""
 
-#: fortran/decl.cc:7927 fortran/decl.cc:8153
+#: fortran/decl.cc:8408 fortran/decl.cc:8634
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing required parentheses before BIND(C) at %C"
 msgstr ""
 
-#: fortran/decl.cc:8021
+#: fortran/decl.cc:8502
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %L with BIND(C) prohibited in an elemental procedure"
 msgstr ""
 
-#: fortran/decl.cc:8180
+#: fortran/decl.cc:8661
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Alternate return dummy argument cannot appear in a SUBROUTINE with the "
 "BIND(C) attribute at %L"
 msgstr ""
 
-#: fortran/decl.cc:8243 fortran/decl.cc:8250
+#: fortran/decl.cc:8724 fortran/decl.cc:8731
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid C identifier in NAME= specifier at %C"
 msgstr ""
 
-#: fortran/decl.cc:8290
+#: fortran/decl.cc:8771
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in NAME= specifier for binding label at %C"
 msgstr ""
 
-#: fortran/decl.cc:8306
+#: fortran/decl.cc:8787
 #, gcc-internal-format, gfc-internal-format
 msgid "NAME= specifier at %C should be a constant expression"
 msgstr ""
 
-#: fortran/decl.cc:8314
+#: fortran/decl.cc:8795
 #, gcc-internal-format, gfc-internal-format
 msgid "NAME= specifier at %C should be a scalar of default character kind"
 msgstr ""
 
-#: fortran/decl.cc:8333
+#: fortran/decl.cc:8814
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing closing paren for binding label at %C"
 msgstr ""
 
-#: fortran/decl.cc:8339
+#: fortran/decl.cc:8820
 #, gcc-internal-format, gfc-internal-format
 msgid "No binding name is allowed in BIND(C) at %C"
 msgstr ""
 
-#: fortran/decl.cc:8345
+#: fortran/decl.cc:8826
 #, gcc-internal-format, gfc-internal-format
 msgid "For dummy procedure %s, no binding name is allowed in BIND(C) at %C"
 msgstr ""
 
-#: fortran/decl.cc:8374
+#: fortran/decl.cc:8855
 #, gcc-internal-format, gfc-internal-format
 msgid "NAME not allowed on BIND(C) for ABSTRACT INTERFACE at %C"
 msgstr ""
 
-#: fortran/decl.cc:8657
+#: fortran/decl.cc:9138
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected END statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:8666
+#: fortran/decl.cc:9147
 #, gcc-internal-format, gfc-internal-format
 msgid "END statement instead of %s statement at %L"
 msgstr ""
 
 #. We would have required END [something].
-#: fortran/decl.cc:8675
+#: fortran/decl.cc:9156
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement expected at %L"
 msgstr ""
 
-#: fortran/decl.cc:8686
+#: fortran/decl.cc:9167
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting %s statement at %L"
 msgstr ""
 
-#: fortran/decl.cc:8711
+#: fortran/decl.cc:9192
 #, gcc-internal-format
 msgid "Expected block name of %qs in %s statement at %L"
 msgstr ""
 
-#: fortran/decl.cc:8728
+#: fortran/decl.cc:9209
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected terminating name at %C"
 msgstr ""
 
-#: fortran/decl.cc:8742 fortran/decl.cc:8750
+#: fortran/decl.cc:9223 fortran/decl.cc:9231
 #, gcc-internal-format
 msgid "Expected label %qs for %s statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:8849
+#: fortran/decl.cc:9331
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing array specification at %L in DIMENSION statement"
 msgstr ""
 
-#: fortran/decl.cc:8857
+#: fortran/decl.cc:9339
 #, gcc-internal-format, gfc-internal-format
 msgid "Dimensions specified for %s at %L after its initialization"
 msgstr ""
 
-#: fortran/decl.cc:8865
+#: fortran/decl.cc:9347
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing array specification at %L in CODIMENSION statement"
 msgstr ""
 
-#: fortran/decl.cc:8874
+#: fortran/decl.cc:9356
 #, gcc-internal-format, gfc-internal-format
 msgid "Array specification must be deferred at %L"
 msgstr ""
 
-#: fortran/decl.cc:8979
+#: fortran/decl.cc:9461
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected character in variable list at %C"
 msgstr ""
 
-#: fortran/decl.cc:9016
+#: fortran/decl.cc:9498
 #, gcc-internal-format
 msgid "Expected %<(%> at %C"
 msgstr ""
 
-#: fortran/decl.cc:9030 fortran/decl.cc:9070
+#: fortran/decl.cc:9512 fortran/decl.cc:9552
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected variable name at %C"
 msgstr ""
 
-#: fortran/decl.cc:9046
+#: fortran/decl.cc:9528
 #, gcc-internal-format, gfc-internal-format
 msgid "Cray pointer at %C must be an integer"
 msgstr ""
 
-#: fortran/decl.cc:9050
+#: fortran/decl.cc:9532
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Cray pointer at %C has %d bytes of precision; memory addresses require %d "
 "bytes"
 msgstr ""
 
-#: fortran/decl.cc:9056
+#: fortran/decl.cc:9538
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected \",\" at %C"
 msgstr ""
 
-#: fortran/decl.cc:9095
+#: fortran/decl.cc:9577
 #, gcc-internal-format
 msgid "Cannot set Cray pointee array spec."
 msgstr ""
 
-#: fortran/decl.cc:9099
+#: fortran/decl.cc:9581
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate array spec for Cray pointee at %C"
 msgstr ""
 
-#: fortran/decl.cc:9119
+#: fortran/decl.cc:9601
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected \")\" at %C"
 msgstr ""
 
-#: fortran/decl.cc:9131
+#: fortran/decl.cc:9613
 #, gcc-internal-format
 msgid "Expected %<,%> or end of statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9157
+#: fortran/decl.cc:9639
 #, gcc-internal-format, gfc-internal-format
 msgid "INTENT is not allowed inside of BLOCK at %C"
 msgstr ""
 
-#: fortran/decl.cc:9189
+#: fortran/decl.cc:9671
 #, gcc-internal-format, gfc-internal-format
 msgid "OPTIONAL is not allowed inside of BLOCK at %C"
 msgstr ""
 
-#: fortran/decl.cc:9208
+#: fortran/decl.cc:9690
 #, gcc-internal-format
 msgid "Cray pointer declaration at %C requires %<-fcray-pointer%> flag"
 msgstr ""
 
-#: fortran/decl.cc:9247
+#: fortran/decl.cc:9729
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTIGUOUS statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9345
+#: fortran/decl.cc:9827
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Access specification of the %s operator at %C has already been specified"
 msgstr ""
 
-#: fortran/decl.cc:9361
+#: fortran/decl.cc:9843
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Access specification of the .%s. operator at %C has already been specified"
 msgstr ""
 
-#: fortran/decl.cc:9409
+#: fortran/decl.cc:9891
 #, gcc-internal-format, gfc-internal-format
 msgid "PROTECTED statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9443
+#: fortran/decl.cc:9925
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in PROTECTED statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9470 fortran/decl.cc:9495
+#: fortran/decl.cc:9952 fortran/decl.cc:9977
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "PRIVATE statement at %C is only allowed in the specification part of a module"
 msgstr ""
 
-#: fortran/decl.cc:9516 fortran/decl.cc:9536
+#: fortran/decl.cc:9998 fortran/decl.cc:10018
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "PUBLIC statement at %C is only allowed in the specification part of a module"
 msgstr ""
 
-#: fortran/decl.cc:9558
+#: fortran/decl.cc:10040
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected variable name at %C in PARAMETER statement"
 msgstr ""
 
-#: fortran/decl.cc:9565
+#: fortran/decl.cc:10047
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected = sign in PARAMETER statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9571
+#: fortran/decl.cc:10053
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected expression at %C in PARAMETER statement"
 msgstr ""
 
-#: fortran/decl.cc:9591
+#: fortran/decl.cc:10073
 #, gcc-internal-format, gfc-internal-format
 msgid "Initializing already initialized variable at %C"
 msgstr ""
 
 #. With legacy PARAMETER statements, don't expect a terminating ')'.
-#: fortran/decl.cc:9616
+#: fortran/decl.cc:10098
 #, gcc-internal-format, gfc-internal-format
 msgid "PARAMETER without '()' at %C"
 msgstr ""
 
-#: fortran/decl.cc:9632
+#: fortran/decl.cc:10114
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected characters in PARAMETER statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9651 fortran/decl.cc:9707
+#: fortran/decl.cc:10133 fortran/decl.cc:10189
 #, gcc-internal-format
 msgid "%s at %C is a DEC extension, enable with %<-fdec-static%>"
 msgstr ""
 
-#: fortran/decl.cc:9686
+#: fortran/decl.cc:10168
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected entity-list in AUTOMATIC statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9693
+#: fortran/decl.cc:10175
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in AUTOMATIC statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9742
+#: fortran/decl.cc:10224
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected entity-list in STATIC statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9749
+#: fortran/decl.cc:10231
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in STATIC statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9768
+#: fortran/decl.cc:10250
 #, gcc-internal-format, gfc-internal-format
 msgid "Blanket SAVE statement at %C follows previous SAVE statement"
 msgstr ""
 
-#: fortran/decl.cc:9779
+#: fortran/decl.cc:10261
 #, gcc-internal-format, gfc-internal-format
 msgid "SAVE statement at %C follows blanket SAVE statement"
 msgstr ""
 
-#: fortran/decl.cc:9814
+#: fortran/decl.cc:10296
 #, gcc-internal-format
 msgid "SAVE of COMMON block %qs at %C is not allowed in a BLOCK construct"
 msgstr ""
 
-#: fortran/decl.cc:9836
+#: fortran/decl.cc:10318
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in SAVE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9853
+#: fortran/decl.cc:10335
 #, gcc-internal-format, gfc-internal-format
 msgid "VALUE is not allowed inside of BLOCK at %C"
 msgstr ""
 
-#: fortran/decl.cc:9857
+#: fortran/decl.cc:10339
 #, gcc-internal-format, gfc-internal-format
 msgid "VALUE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9895
+#: fortran/decl.cc:10377
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in VALUE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9907
+#: fortran/decl.cc:10389
 #, gcc-internal-format, gfc-internal-format
 msgid "VOLATILE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9934
+#: fortran/decl.cc:10416
 #, gcc-internal-format
 msgid ""
 "Specifying VOLATILE for coarray variable %qs at %C, which is use-/host-"
 "associated"
 msgstr ""
 
-#: fortran/decl.cc:9959
+#: fortran/decl.cc:10441
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in VOLATILE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9971
+#: fortran/decl.cc:10453
 #, gcc-internal-format, gfc-internal-format
 msgid "ASYNCHRONOUS statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:10015
+#: fortran/decl.cc:10497
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in ASYNCHRONOUS statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:10040
+#: fortran/decl.cc:10522
 #, gcc-internal-format, gfc-internal-format
 msgid "MODULE PROCEDURE declaration at %C"
 msgstr ""
 
-#: fortran/decl.cc:10151
+#: fortran/decl.cc:10633
 #, gcc-internal-format, gfc-internal-format
 msgid "MODULE PROCEDURE at %C must be in a generic module interface"
 msgstr ""
 
-#: fortran/decl.cc:10209
+#: fortran/decl.cc:10691
 #, gcc-internal-format, gfc-internal-format
 msgid "Intrinsic procedure at %L cannot be a MODULE PROCEDURE"
 msgstr ""
 
-#: fortran/decl.cc:10258
+#: fortran/decl.cc:10740
 #, gcc-internal-format, gfc-internal-format
 msgid "Ambiguous symbol in TYPE definition at %C"
 msgstr ""
 
-#: fortran/decl.cc:10267
+#: fortran/decl.cc:10749
 #, gcc-internal-format
 msgid "Symbol %qs at %C has not been previously defined"
 msgstr ""
 
-#: fortran/decl.cc:10273
+#: fortran/decl.cc:10755
 #, gcc-internal-format
 msgid "%qs in EXTENDS expression at %C is not a derived type"
 msgstr ""
 
-#: fortran/decl.cc:10280
+#: fortran/decl.cc:10762
 #, gcc-internal-format
 msgid "%qs cannot be extended at %C because it is BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:10287
+#: fortran/decl.cc:10769
 #, gcc-internal-format
 msgid "%qs cannot be extended at %C because it is a SEQUENCE type"
 msgstr ""
 
-#: fortran/decl.cc:10310
+#: fortran/decl.cc:10792
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Derived type at %C can only be PRIVATE in the specification part of a module"
 msgstr ""
 
-#: fortran/decl.cc:10322
+#: fortran/decl.cc:10804
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Derived type at %C can only be PUBLIC in the specification part of a module"
 msgstr ""
 
-#: fortran/decl.cc:10343
+#: fortran/decl.cc:10825
 #, gcc-internal-format, gfc-internal-format
 msgid "ABSTRACT type at %C"
 msgstr ""
 
-#: fortran/decl.cc:10389
+#: fortran/decl.cc:10871
 #, gcc-internal-format, gfc-internal-format
 msgid "Failed to create structure type '%s' at %C"
 msgstr ""
 
-#: fortran/decl.cc:10395
+#: fortran/decl.cc:10877
 #, gcc-internal-format
 msgid "Type definition of %qs at %C was already defined at %L"
 msgstr ""
 
-#: fortran/decl.cc:10442
+#: fortran/decl.cc:10924
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after MAP statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:10475
+#: fortran/decl.cc:10957
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after UNION statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:10510
+#: fortran/decl.cc:10992
 #, gcc-internal-format
 msgid "%s at %C is a DEC extension, enable with %<-fdec-structure%>"
 msgstr ""
 
-#: fortran/decl.cc:10524
+#: fortran/decl.cc:11006
 #, gcc-internal-format, gfc-internal-format
 msgid "Structure name expected in non-nested structure declaration at %C"
 msgstr ""
 
-#: fortran/decl.cc:10542
+#: fortran/decl.cc:11024
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after non-nested STRUCTURE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:10549
+#: fortran/decl.cc:11031
 #, gcc-internal-format
 msgid "Structure name %qs at %C cannot be the same as an intrinsic type"
 msgstr ""
 
-#: fortran/decl.cc:10712
+#: fortran/decl.cc:11194
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected :: in TYPE definition at %C"
 msgstr ""
 
-#: fortran/decl.cc:10725
+#: fortran/decl.cc:11207
 #, gcc-internal-format, gfc-internal-format
 msgid "Mangled derived type definition at %C"
 msgstr ""
 
-#: fortran/decl.cc:10754
+#: fortran/decl.cc:11236
 #, gcc-internal-format
 msgid "Type name %qs at %C cannot be the same as an intrinsic type"
 msgstr ""
 
-#: fortran/decl.cc:10765
+#: fortran/decl.cc:11247
 #, gcc-internal-format
 msgid "Derived type name %qs at %C already has a basic type of %s"
 msgstr ""
 
-#: fortran/decl.cc:10768
+#: fortran/decl.cc:11250
 #, gcc-internal-format
 msgid "Derived type name %qs at %C already has a basic type"
 msgstr ""
 
-#: fortran/decl.cc:10783
+#: fortran/decl.cc:11265
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L cannot be a derived type at %C"
 msgstr ""
 
-#: fortran/decl.cc:10792
+#: fortran/decl.cc:11274
 #, gcc-internal-format
 msgid "Derived type definition of %qs at %C has already been defined"
 msgstr ""
 
-#: fortran/decl.cc:10855
+#: fortran/decl.cc:11337
 #, gcc-internal-format, gfc-internal-format
 msgid "Garbage after PARAMETERIZED TYPE declaration at %C"
 msgstr ""
 
-#: fortran/decl.cc:10938
+#: fortran/decl.cc:11420
 #, gcc-internal-format, gfc-internal-format
 msgid "Cray Pointee at %C cannot be assumed shape array"
 msgstr ""
 
-#: fortran/decl.cc:10958
+#: fortran/decl.cc:11440
 #, gcc-internal-format, gfc-internal-format
 msgid "ENUM and ENUMERATOR at %C"
 msgstr ""
 
-#: fortran/decl.cc:10990
+#: fortran/decl.cc:11472
 #, gcc-internal-format, gfc-internal-format
 msgid "Enumerator exceeds the C integer type at %C"
 msgstr ""
 
-#: fortran/decl.cc:11069
+#: fortran/decl.cc:11551
 #, gcc-internal-format, gfc-internal-format
 msgid "ENUMERATOR %L not initialized with integer expression"
 msgstr ""
 
-#: fortran/decl.cc:11117
+#: fortran/decl.cc:11599
 #, gcc-internal-format, gfc-internal-format
 msgid "ENUM definition statement expected before %C"
 msgstr ""
 
-#: fortran/decl.cc:11153
+#: fortran/decl.cc:11635
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in ENUMERATOR definition at %C"
 msgstr ""
 
-#: fortran/decl.cc:11200 fortran/decl.cc:11215
+#: fortran/decl.cc:11682 fortran/decl.cc:11697
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate access-specifier at %C"
 msgstr ""
 
-#: fortran/decl.cc:11235
+#: fortran/decl.cc:11717
 #, gcc-internal-format, gfc-internal-format
 msgid "Binding attributes already specify passing, illegal NOPASS at %C"
 msgstr ""
 
-#: fortran/decl.cc:11255
+#: fortran/decl.cc:11737
 #, gcc-internal-format, gfc-internal-format
 msgid "Binding attributes already specify passing, illegal PASS at %C"
 msgstr ""
 
-#: fortran/decl.cc:11282
+#: fortran/decl.cc:11764
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate POINTER attribute at %C"
 msgstr ""
 
-#: fortran/decl.cc:11300
+#: fortran/decl.cc:11782
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate NON_OVERRIDABLE at %C"
 msgstr ""
 
-#: fortran/decl.cc:11316
+#: fortran/decl.cc:11798
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate DEFERRED at %C"
 msgstr ""
 
-#: fortran/decl.cc:11329
+#: fortran/decl.cc:11811
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected access-specifier at %C"
 msgstr ""
 
-#: fortran/decl.cc:11331
+#: fortran/decl.cc:11813
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected binding attribute at %C"
 msgstr ""
 
-#: fortran/decl.cc:11339
+#: fortran/decl.cc:11821
 #, gcc-internal-format, gfc-internal-format
 msgid "NON_OVERRIDABLE and DEFERRED cannot both appear at %C"
 msgstr ""
 
-#: fortran/decl.cc:11352
+#: fortran/decl.cc:11834
 #, gcc-internal-format, gfc-internal-format
 msgid "POINTER attribute is required for procedure pointer component at %C"
 msgstr ""
 
-#: fortran/decl.cc:11394
+#: fortran/decl.cc:11876
 #, gcc-internal-format
 msgid "Interface-name expected after %<(%> at %C"
 msgstr ""
 
-#: fortran/decl.cc:11400
+#: fortran/decl.cc:11882
 #, gcc-internal-format
 msgid "%<)%> expected at %C"
 msgstr ""
 
-#: fortran/decl.cc:11420
+#: fortran/decl.cc:11902
 #, gcc-internal-format, gfc-internal-format
 msgid "Interface must be specified for DEFERRED binding at %C"
 msgstr ""
 
-#: fortran/decl.cc:11425
+#: fortran/decl.cc:11907
 #, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE(interface) at %C should be declared DEFERRED"
 msgstr ""
 
-#: fortran/decl.cc:11448
+#: fortran/decl.cc:11930
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected binding name at %C"
 msgstr ""
 
-#: fortran/decl.cc:11452
+#: fortran/decl.cc:11934
 #, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE list at %C"
 msgstr ""
 
-#: fortran/decl.cc:11464
+#: fortran/decl.cc:11946
 #, gcc-internal-format
 msgid "%<=> target%> is invalid for DEFERRED binding at %C"
 msgstr ""
 
-#: fortran/decl.cc:11470
+#: fortran/decl.cc:11952
 #, gcc-internal-format
 msgid "%<::%> needed in PROCEDURE binding with explicit target at %C"
 msgstr ""
 
-#: fortran/decl.cc:11480
+#: fortran/decl.cc:11962
 #, gcc-internal-format
 msgid "Expected binding target after %<=>%> at %C"
 msgstr ""
 
-#: fortran/decl.cc:11497
+#: fortran/decl.cc:11979
 #, gcc-internal-format
 msgid "Type %qs containing DEFERRED binding at %C is not ABSTRACT"
 msgstr ""
 
-#: fortran/decl.cc:11508
+#: fortran/decl.cc:11990
 #, gcc-internal-format
 msgid ""
 "There is already a procedure with binding name %qs for the derived type %qs "
 "at %C"
 msgstr ""
 
-#: fortran/decl.cc:11559
-#, gcc-internal-format, gfc-internal-format
-msgid "GENERIC at %C must be inside a derived-type CONTAINS"
-msgstr ""
-
-#: fortran/decl.cc:11579
+#: fortran/decl.cc:12077 fortran/decl.cc:12359
 #, gcc-internal-format
 msgid "Expected %<::%> at %C"
 msgstr ""
 
-#: fortran/decl.cc:11591
+#: fortran/decl.cc:12088 fortran/decl.cc:12371
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected generic name or operator descriptor at %C"
 msgstr ""
 
-#: fortran/decl.cc:11612
+#: fortran/decl.cc:12109 fortran/decl.cc:12392
 #, gcc-internal-format, gfc-internal-format
 msgid "Malformed GENERIC statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:11623
+#: fortran/decl.cc:12120 fortran/decl.cc:12403
 #, gcc-internal-format
 msgid "Expected %<=>%> at %C"
 msgstr ""
 
-#: fortran/decl.cc:11659
+#: fortran/decl.cc:12127
+#, gcc-internal-format, gfc-internal-format
+msgid "The access specification at %L not in a module"
+msgstr ""
+
+#: fortran/decl.cc:12148
+#, gcc-internal-format
+msgid ""
+"The generic-spec name %qs at %C clashes with the name of an entity declared "
+"at %L that is not a procedure"
+msgstr ""
+
+#: fortran/decl.cc:12157
+#, gcc-internal-format
+msgid "There's already a non-generic procedure with name %qs at %C"
+msgstr ""
+
+#: fortran/decl.cc:12166
+#, gcc-internal-format
+msgid "The access specification at %L conflicts with that already given to %qs"
+msgstr ""
+
+#: fortran/decl.cc:12173
+#, gcc-internal-format
+msgid "The access specification at %L repeats that already given to %qs"
+msgstr ""
+
+#: fortran/decl.cc:12182
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"The generic-spec in the generic statement at %C has a type from the "
+"declaration at %L"
+msgstr ""
+
+#: fortran/decl.cc:12223
+#, gcc-internal-format
+msgid ""
+"The user operator at %L must have the same access specification as already "
+"defined user operator %qs"
+msgstr ""
+
+#: fortran/decl.cc:12230
+#, gcc-internal-format
+msgid ""
+"The user operator at %L repeats the access specification of already defined "
+"user operator %qs"
+msgstr ""
+
+#: fortran/decl.cc:12266
+#, gcc-internal-format, gfc-internal-format
+msgid "Expected specific procedure name at %C"
+msgstr ""
+
+#: fortran/decl.cc:12273
+#, gcc-internal-format
+msgid ""
+"The name %qs of the specific procedure at %C conflicts with that of the "
+"generic-spec"
+msgstr ""
+
+#: fortran/decl.cc:12283
+#, gcc-internal-format
+msgid "%qs already defined as a specific procedure for the generic %qs at %C"
+msgstr ""
+
+#: fortran/decl.cc:12309
+#, gcc-internal-format, gfc-internal-format
+msgid "Junk after GENERIC statement at %C"
+msgstr ""
+
+#: fortran/decl.cc:12339
+#, gcc-internal-format, gfc-internal-format
+msgid "GENERIC at %C must be inside a derived-type CONTAINS"
+msgstr ""
+
+#: fortran/decl.cc:12439
 #, gcc-internal-format
 msgid ""
 "There's already a non-generic procedure with binding name %qs for the "
 "derived type %qs at %C"
 msgstr ""
 
-#: fortran/decl.cc:11667
+#: fortran/decl.cc:12447
 #, gcc-internal-format
 msgid "Binding at %C must have the same access as already defined binding %qs"
 msgstr ""
 
-#: fortran/decl.cc:11715
+#: fortran/decl.cc:12495
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected specific binding name at %C"
 msgstr ""
 
-#: fortran/decl.cc:11725
+#: fortran/decl.cc:12505
 #, gcc-internal-format
 msgid "%qs already defined as specific binding for the generic %qs at %C"
 msgstr ""
 
-#: fortran/decl.cc:11743
+#: fortran/decl.cc:12523
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after GENERIC binding at %C"
 msgstr ""
 
-#: fortran/decl.cc:11778
+#: fortran/decl.cc:12569
 #, gcc-internal-format, gfc-internal-format
 msgid "FINAL declaration at %C must be inside a derived type CONTAINS section"
 msgstr ""
 
-#: fortran/decl.cc:11790
+#: fortran/decl.cc:12581
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Derived type declaration with FINAL at %C must be in the specification part "
 "of a MODULE"
 msgstr ""
 
-#: fortran/decl.cc:11812
+#: fortran/decl.cc:12603
 #, gcc-internal-format, gfc-internal-format
 msgid "Empty FINAL at %C"
 msgstr ""
 
-#: fortran/decl.cc:11819
+#: fortran/decl.cc:12610
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected module procedure name at %C"
 msgstr ""
 
-#: fortran/decl.cc:11829
+#: fortran/decl.cc:12620
 #, gcc-internal-format
 msgid "Expected %<,%> at %C"
 msgstr ""
 
-#: fortran/decl.cc:11835
+#: fortran/decl.cc:12626
 #, gcc-internal-format
 msgid "Unknown procedure name %qs at %C"
 msgstr ""
 
-#: fortran/decl.cc:11848
+#: fortran/decl.cc:12639
 #, gcc-internal-format
 msgid "%qs at %C is already defined as FINAL procedure"
 msgstr ""
 
-#: fortran/decl.cc:11922
+#: fortran/decl.cc:12713
 #, gcc-internal-format, gfc-internal-format
 msgid "Unknown attribute in !GCC$ ATTRIBUTES statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:11968
+#: fortran/decl.cc:12759
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !GCC$ ATTRIBUTES statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:11989
+#: fortran/decl.cc:12780
 #, gcc-internal-format
 msgid ""
 "%<GCC unroll%> directive requires a non-negative integral constant less than "
 "or equal to %u at %C"
 msgstr ""
 
-#: fortran/decl.cc:12003
+#: fortran/decl.cc:12794
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !GCC$ UNROLL directive at %C"
 msgstr ""
 
-#: fortran/decl.cc:12067
+#: fortran/decl.cc:12866
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !GCC$ IVDEP directive at %C"
 msgstr ""
 
-#: fortran/decl.cc:12084
+#: fortran/decl.cc:12883
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !GCC$ VECTOR directive at %C"
 msgstr ""
 
-#: fortran/decl.cc:12101
+#: fortran/decl.cc:12900
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !GCC$ NOVECTOR directive at %C"
 msgstr ""
@@ -77358,501 +81280,506 @@ msgstr ""
 msgid "show_ref(): Bad component code"
 msgstr ""
 
-#: fortran/dump-parse-tree.cc:732
+#: fortran/dump-parse-tree.cc:740
 #, gcc-internal-format
 msgid "show_expr(): Bad intrinsic in expression"
 msgstr ""
 
-#: fortran/dump-parse-tree.cc:775
+#: fortran/dump-parse-tree.cc:793
 #, gcc-internal-format
 msgid "show_expr(): Don't know how to show expr"
 msgstr ""
 
-#: fortran/dump-parse-tree.cc:3928
+#: fortran/dump-parse-tree.cc:3982
 #, gcc-internal-format
 msgid "show_code_node(): Bad statement code"
 msgstr ""
 
-#: fortran/dump-parse-tree.cc:4391 fortran/dump-parse-tree.cc:4485
+#: fortran/dump-parse-tree.cc:4447 fortran/dump-parse-tree.cc:4542
 #, gcc-internal-format
 msgid "Cannot convert %qs to interoperable type at %L"
 msgstr ""
 
-#: fortran/expr.cc:149
+#: fortran/expr.cc:168
 #, gcc-internal-format
 msgid "gfc_get_constant_expr(): locus %<where%> cannot be NULL"
 msgstr ""
 
-#: fortran/expr.cc:372
+#: fortran/expr.cc:391
 #, gcc-internal-format
 msgid "gfc_copy_expr(): Bad expr node"
 msgstr ""
 
-#: fortran/expr.cc:530
+#: fortran/expr.cc:564
 #, gcc-internal-format
 msgid "free_expr0(): Bad expr type"
 msgstr ""
 
-#: fortran/expr.cc:687 fortran/expr.cc:689 fortran/expr.cc:739
-#: fortran/expr.cc:741
+#: fortran/expr.cc:721 fortran/expr.cc:723 fortran/expr.cc:773
+#: fortran/expr.cc:775
 #, gcc-internal-format, gfc-internal-format
 msgid "Constant expression required at %C"
 msgstr ""
 
-#: fortran/expr.cc:696 fortran/expr.cc:698 fortran/expr.cc:748
-#: fortran/expr.cc:750
+#: fortran/expr.cc:730 fortran/expr.cc:732 fortran/expr.cc:782
+#: fortran/expr.cc:784
 #, gcc-internal-format, gfc-internal-format
 msgid "Integer expression required at %C"
 msgstr ""
 
-#: fortran/expr.cc:706 fortran/expr.cc:708 fortran/expr.cc:761
-#: fortran/expr.cc:763
+#: fortran/expr.cc:740 fortran/expr.cc:742 fortran/expr.cc:795
+#: fortran/expr.cc:797
 #, gcc-internal-format, gfc-internal-format
 msgid "Integer value too large in expression at %C"
 msgstr ""
 
-#: fortran/expr.cc:1143
+#: fortran/expr.cc:1182
 #, gcc-internal-format
 msgid "gfc_is_constant_expr(): Unknown expression type"
 msgstr ""
 
-#: fortran/expr.cc:1338
+#: fortran/expr.cc:1378
 #, gcc-internal-format
 msgid "simplify_intrinsic_op(): Bad operator"
 msgstr ""
 
-#: fortran/expr.cc:1444
+#: fortran/expr.cc:1521
 #, gcc-internal-format, gfc-internal-format
 msgid "Index in dimension %d is out of bounds at %L"
 msgstr ""
 
-#: fortran/expr.cc:1643 fortran/expr.cc:1694
+#: fortran/expr.cc:1720 fortran/expr.cc:1771
 #, gcc-internal-format, gfc-internal-format
 msgid "index in dimension %d is out of bounds at %L"
 msgstr ""
 
-#: fortran/expr.cc:1769
+#: fortran/expr.cc:1846
 #, gcc-internal-format
 msgid ""
 "The number of elements in the array constructor at %L requires an increase "
 "of the allowed %d upper limit.  See %<-fmax-array-constructor%> option"
 msgstr ""
 
-#: fortran/expr.cc:1780
+#: fortran/expr.cc:1857
 #, gcc-internal-format, gfc-internal-format
 msgid "Error in array constructor referenced at %L"
 msgstr ""
 
-#: fortran/expr.cc:1890 fortran/primary.cc:2521 fortran/primary.cc:2698
+#: fortran/expr.cc:2021 fortran/primary.cc:2611 fortran/primary.cc:2804
 #, gcc-internal-format, gfc-internal-format
 msgid "LEN part_ref at %C"
 msgstr ""
 
-#: fortran/expr.cc:1915 fortran/primary.cc:2516 fortran/primary.cc:2713
+#: fortran/expr.cc:2068 fortran/primary.cc:2606 fortran/primary.cc:2819
 #, gcc-internal-format, gfc-internal-format
 msgid "KIND part_ref at %C"
 msgstr ""
 
-#: fortran/expr.cc:1926
+#: fortran/expr.cc:2079
 #, gcc-internal-format, gfc-internal-format
 msgid "RE part_ref at %C"
 msgstr ""
 
-#: fortran/expr.cc:1938
+#: fortran/expr.cc:2104
 #, gcc-internal-format, gfc-internal-format
 msgid "IM part_ref at %C"
 msgstr ""
 
-#: fortran/expr.cc:2592
+#: fortran/expr.cc:2777
 #, gcc-internal-format, gfc-internal-format
 msgid "elemental function arguments at %C are not compliant"
 msgstr ""
 
-#: fortran/expr.cc:2636
+#: fortran/expr.cc:2821
 #, gcc-internal-format, gfc-internal-format
 msgid "Numeric or CHARACTER operands are required in expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:2661
+#: fortran/expr.cc:2846
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Concatenation operator in expression at %L must have two CHARACTER operands"
 msgstr ""
 
-#: fortran/expr.cc:2668
+#: fortran/expr.cc:2853
 #, gcc-internal-format, gfc-internal-format
 msgid "Concat operator at %L must concatenate strings of the same kind"
 msgstr ""
 
-#: fortran/expr.cc:2678
+#: fortran/expr.cc:2863
 #, gcc-internal-format, gfc-internal-format
 msgid ".NOT. operator in expression at %L must have a LOGICAL operand"
 msgstr ""
 
-#: fortran/expr.cc:2694
+#: fortran/expr.cc:2879
 #, gcc-internal-format, gfc-internal-format
 msgid "LOGICAL operands are required in expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:2705
+#: fortran/expr.cc:2890
 #, gcc-internal-format, gfc-internal-format
 msgid "Only intrinsic operators can be used in expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:2713
+#: fortran/expr.cc:2898
 #, gcc-internal-format, gfc-internal-format
 msgid "Numeric operands are required in expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:2736
+#: fortran/expr.cc:2921
 #, gcc-internal-format
 msgid ""
 "Invalid initialization expression for ALLOCATABLE component %qs in structure "
 "constructor at %L"
 msgstr ""
 
-#: fortran/expr.cc:2873
+#: fortran/expr.cc:3058
 #, gcc-internal-format
 msgid ""
 "Assumed or deferred character length variable %qs in constant expression at "
 "%L"
 msgstr ""
 
-#: fortran/expr.cc:2957
+#: fortran/expr.cc:3142
 #, gcc-internal-format
 msgid ""
 "transformational intrinsic %qs at %L is not permitted in an initialization "
 "expression"
 msgstr ""
 
-#: fortran/expr.cc:2988
+#: fortran/expr.cc:3173
 #, gcc-internal-format, gfc-internal-format
 msgid "Evaluation of nonstandard initialization expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:3065 fortran/resolve.cc:2890
+#: fortran/expr.cc:3264 fortran/resolve.cc:2915
 #, gcc-internal-format
 msgid ""
 "Function %qs in initialization expression at %L must be an intrinsic function"
 msgstr ""
 
-#: fortran/expr.cc:3077
+#: fortran/expr.cc:3276
 #, gcc-internal-format
 msgid ""
 "Intrinsic function %qs at %L is not permitted in an initialization expression"
 msgstr ""
 
-#: fortran/expr.cc:3116
+#: fortran/expr.cc:3315
 #, gcc-internal-format
 msgid "PARAMETER %qs is used at %L before its definition is complete"
 msgstr ""
 
-#: fortran/expr.cc:3136
+#: fortran/expr.cc:3335
 #, gcc-internal-format
 msgid ""
 "Assumed size array %qs at %L is not permitted in an initialization expression"
 msgstr ""
 
-#: fortran/expr.cc:3142
+#: fortran/expr.cc:3341
 #, gcc-internal-format
 msgid ""
 "Assumed shape array %qs at %L is not permitted in an initialization "
 "expression"
 msgstr ""
 
-#: fortran/expr.cc:3151
+#: fortran/expr.cc:3350
 #, gcc-internal-format
 msgid ""
 "Assumed-shape array %qs at %L is not permitted in an initialization "
 "expression"
 msgstr ""
 
-#: fortran/expr.cc:3155
+#: fortran/expr.cc:3354
 #, gcc-internal-format
 msgid ""
 "Deferred array %qs at %L is not permitted in an initialization expression"
 msgstr ""
 
-#: fortran/expr.cc:3161
+#: fortran/expr.cc:3360
 #, gcc-internal-format
 msgid ""
 "Array %qs at %L is a variable, which does not reduce to a constant expression"
 msgstr ""
 
-#: fortran/expr.cc:3167
+#: fortran/expr.cc:3366
 #, gcc-internal-format
 msgid ""
 "Assumed-rank array %qs at %L is not permitted in an initialization expression"
 msgstr ""
 
-#: fortran/expr.cc:3177
+#: fortran/expr.cc:3376
 #, gcc-internal-format
 msgid ""
 "Parameter %qs at %L has not been declared or is a variable, which does not "
 "reduce to a constant expression"
 msgstr ""
 
-#: fortran/expr.cc:3231
+#: fortran/expr.cc:3430
 #, gcc-internal-format
 msgid "check_init_expr(): Unknown expression type"
 msgstr ""
 
-#: fortran/expr.cc:3371
+#: fortran/expr.cc:3570
 #, gcc-internal-format
 msgid "Specification function %qs at %L cannot be a statement function"
 msgstr ""
 
-#: fortran/expr.cc:3378
+#: fortran/expr.cc:3577
 #, gcc-internal-format
 msgid "Specification function %qs at %L cannot be an internal function"
 msgstr ""
 
-#: fortran/expr.cc:3385
+#: fortran/expr.cc:3584
 #, gcc-internal-format
 msgid "Specification function %qs at %L must be PURE"
 msgstr ""
 
-#: fortran/expr.cc:3393
+#: fortran/expr.cc:3592
 #, gcc-internal-format
 msgid "Specification function %qs at %L cannot be RECURSIVE"
 msgstr ""
 
-#: fortran/expr.cc:3540
+#: fortran/expr.cc:3753
 #, gcc-internal-format
 msgid "Dummy argument %qs not allowed in expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:3548
+#: fortran/expr.cc:3761
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L cannot be OPTIONAL"
 msgstr ""
 
-#: fortran/expr.cc:3555
+#: fortran/expr.cc:3768
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L cannot be INTENT(OUT)"
 msgstr ""
 
-#: fortran/expr.cc:3577
+#: fortran/expr.cc:3790
 #, gcc-internal-format
 msgid "Variable %qs cannot appear in the expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:3608
+#: fortran/expr.cc:3821
 #, gcc-internal-format
 msgid "check_restricted(): Unknown expression type"
 msgstr ""
 
-#: fortran/expr.cc:3628
+#: fortran/expr.cc:3841
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression at %L must be of INTEGER type, found %s"
 msgstr ""
 
-#: fortran/expr.cc:3640
+#: fortran/expr.cc:3853
 #, gcc-internal-format
 msgid "Function %qs at %L must be PURE"
 msgstr ""
 
-#: fortran/expr.cc:3649
+#: fortran/expr.cc:3862
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression at %L must be scalar"
 msgstr ""
 
 #. Reject truncation.
-#: fortran/expr.cc:3681
+#: fortran/expr.cc:3894
 #, gcc-internal-format, gfc-internal-format
 msgid "optype_msgid overflow: %d"
 msgstr ""
 
-#: fortran/expr.cc:3685
+#: fortran/expr.cc:3898
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible ranks in %s (%d and %d) at %L"
 msgstr ""
 
-#: fortran/expr.cc:3699
+#: fortran/expr.cc:3912
 #, gcc-internal-format, gfc-internal-format
 msgid "Different shape for %s at %L on dimension %d (%d and %d)"
 msgstr ""
 
-#: fortran/expr.cc:3747
+#: fortran/expr.cc:3980
+#, gcc-internal-format
+msgid "Mismatched type parameters %qs(%d/%d) %s at %L/%L"
+msgstr ""
+
+#: fortran/expr.cc:4021
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to a LEN or KIND part_ref at %L is not allowed"
 msgstr ""
 
-#: fortran/expr.cc:3803
+#: fortran/expr.cc:4077
 #, gcc-internal-format
 msgid "%qs at %L is not a VALUE"
 msgstr ""
 
-#: fortran/expr.cc:3814
+#: fortran/expr.cc:4088
 #, gcc-internal-format, gfc-internal-format
 msgid "Illegal assignment to external procedure at %L"
 msgstr ""
 
-#: fortran/expr.cc:3822
+#: fortran/expr.cc:4096
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible ranks %d and %d in assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:3829
+#: fortran/expr.cc:4103
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable type is UNKNOWN in assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:3847
+#: fortran/expr.cc:4121
 #, gcc-internal-format, gfc-internal-format
 msgid "NULL appears on right-hand side in assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:3857
+#: fortran/expr.cc:4131
 #, gcc-internal-format, gfc-internal-format
 msgid "POINTER-valued function appears on right-hand side of assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:3900
+#: fortran/expr.cc:4174
 #, gcc-internal-format
 msgid "BOZ literal constant near %L cannot be assigned to a %qs variable"
 msgstr ""
 
-#: fortran/expr.cc:3907
+#: fortran/expr.cc:4181
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The assignment to a KIND or LEN component of a parameterized type at %L is "
 "not allowed"
 msgstr ""
 
-#: fortran/expr.cc:3938
+#: fortran/expr.cc:4218
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Incompatible types in DATA statement at %L; attempted conversion of %s to %s"
 msgstr ""
 
-#: fortran/expr.cc:3982
+#: fortran/expr.cc:4262
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target is not a POINTER at %L"
 msgstr ""
 
-#: fortran/expr.cc:3990
+#: fortran/expr.cc:4270
 #, gcc-internal-format
 msgid ""
 "%qs in the pointer assignment at %L cannot be an l-value since it is a "
 "procedure"
 msgstr ""
 
-#: fortran/expr.cc:4014
+#: fortran/expr.cc:4294
 #, gcc-internal-format
 msgid "Expected bounds specification for %qs at %L"
 msgstr ""
 
-#: fortran/expr.cc:4019
+#: fortran/expr.cc:4299
 #, gcc-internal-format
 msgid "Bounds specification for %qs in pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4048
+#: fortran/expr.cc:4328
 #, gcc-internal-format, gfc-internal-format
 msgid "Stride must not be present at %L"
 msgstr ""
 
-#: fortran/expr.cc:4054 fortran/expr.cc:4074
+#: fortran/expr.cc:4334 fortran/expr.cc:4354
 #, gcc-internal-format
 msgid ""
 "Rank remapping requires a list of %<lower-bound : upper-bound%> "
 "specifications at %L"
 msgstr ""
 
-#: fortran/expr.cc:4062 fortran/expr.cc:4081
+#: fortran/expr.cc:4342 fortran/expr.cc:4361
 #, gcc-internal-format
 msgid ""
 "Expected list of %<lower-bound :%> or list of %<lower-bound : upper-bound%> "
 "specifications at %L"
 msgstr ""
 
-#: fortran/expr.cc:4108
+#: fortran/expr.cc:4388
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer object at %L shall not have a coindex"
 msgstr ""
 
-#: fortran/expr.cc:4129
+#: fortran/expr.cc:4409
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid procedure pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4154
+#: fortran/expr.cc:4434
 #, gcc-internal-format
 msgid ""
 "Function result %qs is invalid as proc-target in procedure pointer "
 "assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4163
+#: fortran/expr.cc:4443
 #, gcc-internal-format
 msgid "Abstract interface %qs is invalid in procedure pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4173
+#: fortran/expr.cc:4453
 #, gcc-internal-format
 msgid "Statement function %qs is invalid in procedure pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4179
+#: fortran/expr.cc:4459
 #, gcc-internal-format
 msgid "Internal procedure %qs is invalid in procedure pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4186
+#: fortran/expr.cc:4466
 #, gcc-internal-format
 msgid "Intrinsic %qs at %L is invalid in procedure pointer assignment"
 msgstr ""
 
-#: fortran/expr.cc:4194
+#: fortran/expr.cc:4474
 #, gcc-internal-format
 msgid ""
 "Nonintrinsic elemental procedure %qs is invalid in procedure pointer "
 "assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4217
+#: fortran/expr.cc:4497
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Mismatch in the procedure pointer assignment at %L: mismatch in the calling "
 "convention"
 msgstr ""
 
-#: fortran/expr.cc:4270
+#: fortran/expr.cc:4550
 #, gcc-internal-format
 msgid ""
 "Interface mismatch in procedure pointer assignment at %L: %qs is not a "
 "subroutine"
 msgstr ""
 
-#: fortran/expr.cc:4280 fortran/expr.cc:4295
+#: fortran/expr.cc:4560 fortran/expr.cc:4575
 #, gcc-internal-format
 msgid "Explicit interface required for component %qs at %L: %s"
 msgstr ""
 
-#: fortran/expr.cc:4286 fortran/expr.cc:4301 fortran/resolve.cc:2764
+#: fortran/expr.cc:4566 fortran/expr.cc:4581 fortran/resolve.cc:2789
 #, gcc-internal-format
 msgid "Explicit interface required for %qs at %L: %s"
 msgstr ""
 
-#: fortran/expr.cc:4313
+#: fortran/expr.cc:4593
 #, gcc-internal-format, gfc-internal-format
 msgid "Interface mismatch in procedure pointer assignment at %L: %s"
 msgstr ""
 
-#: fortran/expr.cc:4322
+#: fortran/expr.cc:4602
 #, gcc-internal-format
 msgid ""
 "Procedure pointer target %qs at %L must be either an intrinsic, host or use "
 "associated, referenced or have the EXTERNAL attribute"
 msgstr ""
 
-#: fortran/expr.cc:4335
+#: fortran/expr.cc:4615
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target cannot be a constant at %L"
 msgstr ""
 
-#: fortran/expr.cc:4349
+#: fortran/expr.cc:4629
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Data-pointer-object at %L must be unlimited polymorphic, or of a type with "
@@ -77860,46 +81787,46 @@ msgid ""
 "polymorphic target"
 msgstr ""
 
-#: fortran/expr.cc:4354
+#: fortran/expr.cc:4634
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Different types in pointer assignment at %L; attempted assignment of %s to %s"
 msgstr ""
 
-#: fortran/expr.cc:4362
+#: fortran/expr.cc:4642
 #, gcc-internal-format, gfc-internal-format
 msgid "Different kind type parameters in pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4369
+#: fortran/expr.cc:4650
 #, gcc-internal-format, gfc-internal-format
 msgid "Different ranks in pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4390
+#: fortran/expr.cc:4671
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Rank remapping target is smaller than size of the pointer (%ld < %ld) at %L"
 msgstr ""
 
-#: fortran/expr.cc:4406
+#: fortran/expr.cc:4687
 #, gcc-internal-format, gfc-internal-format
 msgid ""
-"The assumed rank target at %L is an experimental F202y feature. Use option -"
-"std=f202y to enable"
+"The assumed rank target at %L is an experimental F202y feature. Use option "
+"-std=f202y to enable"
 msgstr ""
 
-#: fortran/expr.cc:4418
+#: fortran/expr.cc:4699
 #, gcc-internal-format, gfc-internal-format
 msgid "Rank remapping target must be rank 1 or simply contiguous at %L"
 msgstr ""
 
-#: fortran/expr.cc:4422
+#: fortran/expr.cc:4703
 #, gcc-internal-format, gfc-internal-format
 msgid "Rank remapping target is not rank 1 at %L"
 msgstr ""
 
-#: fortran/expr.cc:4429
+#: fortran/expr.cc:4710
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The data-target at %L is an assumed rank object and so the data-pointer-"
@@ -77907,7 +81834,7 @@ msgid ""
 "dimension)"
 msgstr ""
 
-#: fortran/expr.cc:4438
+#: fortran/expr.cc:4719
 #, gcc-internal-format, gfc-internal-format
 msgid "The assumed rank data-target at %L must be contiguous"
 msgstr ""
@@ -77915,222 +81842,229 @@ msgstr ""
 #. The test above might need to be extend when F08, Note 5.4 has to be
 #. interpreted in the way that target and pointer with the same coindex
 #. are allowed.
-#: fortran/expr.cc:4462 fortran/expr.cc:4588
+#: fortran/expr.cc:4743 fortran/expr.cc:4869
 #, gcc-internal-format, gfc-internal-format
 msgid "Data target at %L shall not have a coindex"
 msgstr ""
 
-#: fortran/expr.cc:4465
+#: fortran/expr.cc:4746
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Target expression in pointer assignment at %L must deliver a pointer result"
 msgstr ""
 
-#: fortran/expr.cc:4479
+#: fortran/expr.cc:4760
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Zero-sized array detected at %L where an entity with the TARGET attribute is "
 "expected"
 msgstr ""
 
-#: fortran/expr.cc:4485 fortran/expr.cc:4500
+#: fortran/expr.cc:4766 fortran/expr.cc:4781
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Pointer assignment target in initialization expression does not have the "
 "TARGET attribute at %L"
 msgstr ""
 
-#: fortran/expr.cc:4516
+#: fortran/expr.cc:4797
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Every subscript of target specification at %L must be a constant expression"
 msgstr ""
 
-#: fortran/expr.cc:4527
+#: fortran/expr.cc:4808
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Substring starting and ending points of target specification at %L must be "
 "constant expressions"
 msgstr ""
 
-#: fortran/expr.cc:4543
+#: fortran/expr.cc:4824
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target is neither TARGET nor POINTER at %L"
 msgstr ""
 
-#: fortran/expr.cc:4558
+#: fortran/expr.cc:4839
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad target in pointer assignment in PURE procedure at %L"
 msgstr ""
 
-#: fortran/expr.cc:4567
+#: fortran/expr.cc:4848
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment with vector subscript on rhs at %L"
 msgstr ""
 
-#: fortran/expr.cc:4575
+#: fortran/expr.cc:4856
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target has PROTECTED attribute at %L"
 msgstr ""
 
-#: fortran/expr.cc:4603 fortran/expr.cc:4608
+#: fortran/expr.cc:4884 fortran/expr.cc:4889
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to contiguous pointer from non-contiguous target at %L"
 msgstr ""
 
-#: fortran/expr.cc:4648
+#: fortran/expr.cc:4929
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer at %L in pointer assignment might outlive the pointer target"
 msgstr ""
 
-#: fortran/expr.cc:4728 fortran/resolve.cc:1573
+#: fortran/expr.cc:4987
+#, gcc-internal-format
+msgid ""
+"The component %qs at %L of derived type %qs has paramterized type or array "
+"length parameters, which is not compatible with a default initializer"
+msgstr ""
+
+#: fortran/expr.cc:5055 fortran/resolve.cc:1574
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer initialization target at %L must not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/expr.cc:4734
+#: fortran/expr.cc:5061
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer initialization target at %L must have the TARGET attribute"
 msgstr ""
 
-#: fortran/expr.cc:4749 fortran/resolve.cc:1579
+#: fortran/expr.cc:5076 fortran/resolve.cc:1580
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer initialization target at %L must have the SAVE attribute"
 msgstr ""
 
-#: fortran/expr.cc:4761
+#: fortran/expr.cc:5088
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Procedure pointer initialization target at %L may not be a procedure pointer"
 msgstr ""
 
-#: fortran/expr.cc:4767
+#: fortran/expr.cc:5094
 #, gcc-internal-format
 msgid ""
 "Internal procedure %qs is invalid in procedure pointer initialization at %L"
 msgstr ""
 
-#: fortran/expr.cc:4774
+#: fortran/expr.cc:5101
 #, gcc-internal-format
 msgid ""
 "Dummy procedure %qs is invalid in procedure pointer initialization at %L"
 msgstr ""
 
-#: fortran/expr.cc:5258
+#: fortran/expr.cc:5585
 #, gcc-internal-format
 msgid ""
 "generate_isocbinding_initializer(): bad iso_c_binding type, expected "
 "%<c_ptr%> or %<c_funptr%>"
 msgstr ""
 
-#: fortran/expr.cc:6391
+#: fortran/expr.cc:6738
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Fortran 2008: Pointer functions in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6399
+#: fortran/expr.cc:6746
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-variable expression in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6407
+#: fortran/expr.cc:6754
 #, gcc-internal-format
 msgid "Named constant %qs in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6418
+#: fortran/expr.cc:6765
 #, gcc-internal-format
 msgid "%qs in variable definition context (%s) at %L is not a variable"
 msgstr ""
 
-#: fortran/expr.cc:6429
+#: fortran/expr.cc:6776
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-POINTER in pointer association context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6438
+#: fortran/expr.cc:6785
 #, gcc-internal-format, gfc-internal-format
 msgid "Type inaccessible in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6451
+#: fortran/expr.cc:6798
 #, gcc-internal-format, gfc-internal-format
 msgid "LOCK_TYPE in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6464
+#: fortran/expr.cc:6811
 #, gcc-internal-format, gfc-internal-format
 msgid "LOCK_EVENT in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6495
+#: fortran/expr.cc:6845
 #, gcc-internal-format
 msgid "%qs parameter inquiry for %qs in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6512
+#: fortran/expr.cc:6891
 #, gcc-internal-format
 msgid ""
 "Dummy argument %qs with INTENT(IN) in pointer association context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6522
+#: fortran/expr.cc:6899
 #, gcc-internal-format
 msgid ""
 "Dummy argument %qs with INTENT(IN) in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6538
+#: fortran/expr.cc:6916
 #, gcc-internal-format
 msgid ""
 "Variable %qs is PROTECTED and cannot appear in a pointer association context "
 "(%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6546
+#: fortran/expr.cc:6924
 #, gcc-internal-format
 msgid ""
 "Variable %qs is PROTECTED and cannot appear in a variable definition context "
 "(%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6561
+#: fortran/expr.cc:6939
 #, gcc-internal-format
 msgid ""
 "Variable %qs cannot appear in a variable definition context (%s) at %L in "
 "PURE procedure"
 msgstr ""
 
-#: fortran/expr.cc:6621 fortran/expr.cc:6642
+#: fortran/expr.cc:7000 fortran/expr.cc:7021
 #, gcc-internal-format
 msgid ""
 "%qs at %L associated to vector-indexed target cannot be used in a variable "
 "definition context (%s)"
 msgstr ""
 
-#: fortran/expr.cc:6626
+#: fortran/expr.cc:7005
 #, gcc-internal-format
 msgid ""
 "%qs at %L associated to expression cannot be used in a variable definition "
 "context (%s)"
 msgstr ""
 
-#: fortran/expr.cc:6635
+#: fortran/expr.cc:7014
 #, gcc-internal-format
 msgid ""
 "%qs at %L associated to pointer function target being used in a variable "
 "definition context (%s)"
 msgstr ""
 
-#: fortran/expr.cc:6654
+#: fortran/expr.cc:7035
 #, gcc-internal-format
 msgid ""
 "Associate-name %qs cannot appear in a variable definition context (%s) at %L "
 "because its target at %L cannot, either"
 msgstr ""
 
-#: fortran/expr.cc:6696
+#: fortran/expr.cc:7077
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Elements with the same value at %L and %L in vector subscript in a variable "
@@ -78152,9 +82086,9 @@ msgstr ""
 msgid "Illegal id in copy_walk_reduction_arg"
 msgstr ""
 
-#: fortran/frontend-passes.cc:874 fortran/trans-array.cc:1565
-#: fortran/trans-array.cc:7434 fortran/trans-array.cc:9248
-#: fortran/trans-intrinsic.cc:8576
+#: fortran/frontend-passes.cc:874 fortran/trans-array.cc:1545
+#: fortran/trans-array.cc:7679 fortran/trans-array.cc:9507
+#: fortran/trans-intrinsic.cc:8798
 #, gcc-internal-format, gfc-internal-format
 msgid "Creating array temporary at %L"
 msgstr ""
@@ -78179,98 +82113,98 @@ msgstr ""
 msgid "bad op"
 msgstr ""
 
-#: fortran/frontend-passes.cc:2180
+#: fortran/frontend-passes.cc:2181
 #, gcc-internal-format
 msgid "illegal OP in optimize_comparison"
 msgstr ""
 
-#: fortran/frontend-passes.cc:2313
+#: fortran/frontend-passes.cc:2314
 #, gcc-internal-format
 msgid ""
 "Index variable %qs set to undefined as INTENT(OUT) argument at %L in "
 "procedure %qs called from within DO loop at %L"
 msgstr ""
 
-#: fortran/frontend-passes.cc:2322
+#: fortran/frontend-passes.cc:2323
 #, gcc-internal-format
 msgid ""
 "Index variable %qs not definable as INTENT(INOUT) argument at %L in "
 "procedure %qs called from within DO loop at %L"
 msgstr ""
 
-#: fortran/frontend-passes.cc:2460
+#: fortran/frontend-passes.cc:2461
 #, gcc-internal-format
 msgid ""
 "Index variable %qs set to undefined as INTENT(OUT) argument at %L in "
 "subroutine %qs called from within DO loop at %L"
 msgstr ""
 
-#: fortran/frontend-passes.cc:2469
+#: fortran/frontend-passes.cc:2470
 #, gcc-internal-format
 msgid ""
 "Index variable %qs not definable as INTENT(INOUT) argument at %L in "
 "subroutine %qs called from within DO loop at %L"
 msgstr ""
 
-#: fortran/frontend-passes.cc:2622
+#: fortran/frontend-passes.cc:2623
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L set to undefined value inside loop beginning at %L as "
 "INTENT(OUT) argument to subroutine %qs"
 msgstr ""
 
-#: fortran/frontend-passes.cc:2629
+#: fortran/frontend-passes.cc:2630
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L not definable inside loop beginning at %L as "
 "INTENT(INOUT) argument to subroutine %qs"
 msgstr ""
 
-#: fortran/frontend-passes.cc:2892 fortran/frontend-passes.cc:2918
+#: fortran/frontend-passes.cc:2893 fortran/frontend-passes.cc:2919
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L out of bounds (%ld < %ld) in loop beginning at %L"
 msgstr ""
 
-#: fortran/frontend-passes.cc:2902 fortran/frontend-passes.cc:2928
+#: fortran/frontend-passes.cc:2903 fortran/frontend-passes.cc:2929
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L out of bounds (%ld > %ld) in loop beginning at %L"
 msgstr ""
 
-#: fortran/frontend-passes.cc:3020
+#: fortran/frontend-passes.cc:3021
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L set to undefined value inside loop beginning at %L as "
 "INTENT(OUT) argument to function %qs"
 msgstr ""
 
-#: fortran/frontend-passes.cc:3026
+#: fortran/frontend-passes.cc:3027
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L not definable inside loop beginning at %L as "
 "INTENT(INOUT) argument to function %qs"
 msgstr ""
 
-#: fortran/frontend-passes.cc:3442 fortran/trans-expr.cc:2037
+#: fortran/frontend-passes.cc:3443 fortran/trans-expr.cc:2057
 #, gcc-internal-format, gfc-internal-format
 msgid "Code for reallocating the allocatable array at %L will be added"
 msgstr ""
 
-#: fortran/frontend-passes.cc:3967
+#: fortran/frontend-passes.cc:3968
 #, gcc-internal-format
 msgid "Scalarization using DIMEN_RANGE unimplemented"
 msgstr ""
 
-#: fortran/frontend-passes.cc:5176
+#: fortran/frontend-passes.cc:5185
 #, gcc-internal-format, gfc-internal-format
 msgid "Interchanging loops at %L"
 msgstr ""
 
-#: fortran/frontend-passes.cc:5828
+#: fortran/frontend-passes.cc:5843
 #, gcc-internal-format, gfc-internal-format
 msgid "%s between %L and %L"
 msgstr ""
 
-#: fortran/gfortranspec.cc:146 m2/gm2spec.cc:250
+#: fortran/gfortranspec.cc:146 m2/gm2spec.cc:267
 #, gcc-internal-format
 msgid "overflowed output argument list for %qs"
 msgstr ""
@@ -78280,332 +82214,339 @@ msgstr ""
 msgid "no input files; unwilling to write output files"
 msgstr ""
 
-#: fortran/interface.cc:254
+#: fortran/interface.cc:262
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"Sorry: -fdefault-integer-8 option is not supported with user-defined input/"
+"output at %C"
+msgstr ""
+
+#: fortran/interface.cc:267
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in generic specification at %C"
 msgstr ""
 
-#: fortran/interface.cc:281
+#: fortran/interface.cc:294
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error: Trailing garbage in INTERFACE statement at %C"
 msgstr ""
 
-#: fortran/interface.cc:301
+#: fortran/interface.cc:314
 #, gcc-internal-format
 msgid "Dummy procedure %qs at %C cannot have a generic interface"
 msgstr ""
 
-#: fortran/interface.cc:334
+#: fortran/interface.cc:347
 #, gcc-internal-format, gfc-internal-format
 msgid "ABSTRACT INTERFACE at %C"
 msgstr ""
 
-#: fortran/interface.cc:341
+#: fortran/interface.cc:354
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in ABSTRACT INTERFACE statement at %C"
 msgstr ""
 
-#: fortran/interface.cc:372
+#: fortran/interface.cc:385
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error: Trailing garbage in END INTERFACE statement at %C"
 msgstr ""
 
-#: fortran/interface.cc:385
+#: fortran/interface.cc:398
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected a nameless interface at %C"
 msgstr ""
 
-#: fortran/interface.cc:398
+#: fortran/interface.cc:411
 #, gcc-internal-format
 msgid "Expected %<END INTERFACE ASSIGNMENT (=)%> at %C"
 msgstr ""
 
-#: fortran/interface.cc:429
+#: fortran/interface.cc:442
 #, gcc-internal-format
 msgid "Expecting %<END INTERFACE OPERATOR (%s)%> at %C"
 msgstr ""
 
-#: fortran/interface.cc:432
+#: fortran/interface.cc:445
 #, gcc-internal-format
 msgid "Expecting %<END INTERFACE OPERATOR (%s)%> at %C, but got %qs"
 msgstr ""
 
-#: fortran/interface.cc:446
+#: fortran/interface.cc:459
 #, gcc-internal-format
 msgid "Expecting %<END INTERFACE OPERATOR (.%s.)%> at %C"
 msgstr ""
 
-#: fortran/interface.cc:458
+#: fortran/interface.cc:481
 #, gcc-internal-format
 msgid "Expecting %<END INTERFACE %s%> at %C"
 msgstr ""
 
-#: fortran/interface.cc:655
+#: fortran/interface.cc:677
 #, gcc-internal-format
 msgid "gfc_compare_derived_types: invalid derived type"
 msgstr ""
 
-#: fortran/interface.cc:943
+#: fortran/interface.cc:965
 #, gcc-internal-format, gfc-internal-format
 msgid "Alternate return cannot appear in operator interface at %L"
 msgstr ""
 
-#: fortran/interface.cc:972
+#: fortran/interface.cc:994
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment operator interface at %L must have two arguments"
 msgstr ""
 
-#: fortran/interface.cc:975
+#: fortran/interface.cc:997
 #, gcc-internal-format, gfc-internal-format
 msgid "Operator interface at %L has the wrong number of arguments"
 msgstr ""
 
-#: fortran/interface.cc:988
+#: fortran/interface.cc:1010
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment operator interface at %L must be a SUBROUTINE"
 msgstr ""
 
-#: fortran/interface.cc:1006
+#: fortran/interface.cc:1028
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Assignment operator interface at %L must not redefine an INTRINSIC type "
 "assignment"
 msgstr ""
 
-#: fortran/interface.cc:1015
+#: fortran/interface.cc:1037
 #, gcc-internal-format, gfc-internal-format
 msgid "Intrinsic operator interface at %L must be a FUNCTION"
 msgstr ""
 
-#: fortran/interface.cc:1026
+#: fortran/interface.cc:1048
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "First argument of defined assignment at %L must be INTENT(OUT) or "
 "INTENT(INOUT)"
 msgstr ""
 
-#: fortran/interface.cc:1033
+#: fortran/interface.cc:1055
 #, gcc-internal-format, gfc-internal-format
 msgid "Second argument of defined assignment at %L must be INTENT(IN)"
 msgstr ""
 
-#: fortran/interface.cc:1042 fortran/resolve.cc:19225
+#: fortran/interface.cc:1064 fortran/resolve.cc:20051
 #, gcc-internal-format, gfc-internal-format
 msgid "First argument of operator interface at %L must be INTENT(IN)"
 msgstr ""
 
-#: fortran/interface.cc:1049 fortran/resolve.cc:19243
+#: fortran/interface.cc:1071 fortran/resolve.cc:20069
 #, gcc-internal-format, gfc-internal-format
 msgid "Second argument of operator interface at %L must be INTENT(IN)"
 msgstr ""
 
-#: fortran/interface.cc:1154
+#: fortran/interface.cc:1176
 #, gcc-internal-format, gfc-internal-format
 msgid "Operator interface at %L conflicts with intrinsic interface"
 msgstr ""
 
-#: fortran/interface.cc:1518 fortran/interface.cc:1590
+#: fortran/interface.cc:1545 fortran/interface.cc:1617
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "check_dummy_characteristics: Unexpected result %i of gfc_dep_compare_expr"
 msgstr ""
 
-#: fortran/interface.cc:1715
+#: fortran/interface.cc:1742
 #, gcc-internal-format, gfc-internal-format
 msgid "Possible character length mismatch in function result between %L and %L"
 msgstr ""
 
-#: fortran/interface.cc:1724
+#: fortran/interface.cc:1751
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "check_result_characteristics (1): Unexpected result %i of "
 "gfc_dep_compare_expr"
 msgstr ""
 
-#: fortran/interface.cc:1771
+#: fortran/interface.cc:1798
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "check_result_characteristics (2): Unexpected result %i of "
 "gfc_dep_compare_expr"
 msgstr ""
 
-#: fortran/interface.cc:1968
+#: fortran/interface.cc:1995
 #, gcc-internal-format
 msgid "Procedure %qs in %s at %L has no explicit interface; did you mean %qs?"
 msgstr ""
 
-#: fortran/interface.cc:1973
+#: fortran/interface.cc:2000
 #, gcc-internal-format
 msgid "Procedure %qs in %s at %L has no explicit interface"
 msgstr ""
 
-#: fortran/interface.cc:1977
+#: fortran/interface.cc:2004
 #, gcc-internal-format
 msgid ""
 "Procedure %qs in %s at %L is neither function nor subroutine; did you mean "
 "%qs?"
 msgstr ""
 
-#: fortran/interface.cc:1981
+#: fortran/interface.cc:2008
 #, gcc-internal-format
 msgid "Procedure %qs in %s at %L is neither function nor subroutine"
 msgstr ""
 
-#: fortran/interface.cc:1993
+#: fortran/interface.cc:2020
 #, gcc-internal-format, gfc-internal-format
 msgid "In %s at %L procedures must be either all SUBROUTINEs or all FUNCTIONs"
 msgstr ""
 
-#: fortran/interface.cc:1997
+#: fortran/interface.cc:2024
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "In %s at %L procedures must be all FUNCTIONs as the generic name is also the "
 "name of a derived type"
 msgstr ""
 
-#: fortran/interface.cc:2005
+#: fortran/interface.cc:2032
 #, gcc-internal-format
 msgid "Internal procedure %qs in %s at %L"
 msgstr ""
 
-#: fortran/interface.cc:2062 fortran/interface.cc:2067
+#: fortran/interface.cc:2089 fortran/interface.cc:2094
 #, gcc-internal-format
 msgid "Ambiguous interfaces in %s for %qs at %L and %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:2072
+#: fortran/interface.cc:2099
 #, gcc-internal-format
 msgid "Although not referenced, %qs has ambiguous interfaces at %L"
 msgstr ""
 
-#: fortran/interface.cc:2110
+#: fortran/interface.cc:2137
 #, gcc-internal-format
 msgid "%qs at %L is not a module procedure"
 msgstr ""
 
-#: fortran/interface.cc:2315
+#: fortran/interface.cc:2342
 #, gcc-internal-format
 msgid ""
 "The assumed-rank array at %L requires that the dummy argument %qs has "
 "assumed-rank"
 msgstr ""
 
-#: fortran/interface.cc:2318
+#: fortran/interface.cc:2345
 #, gcc-internal-format
 msgid "Rank mismatch in argument %qs at %L (scalar and rank-%d)"
 msgstr ""
 
-#: fortran/interface.cc:2321
+#: fortran/interface.cc:2348
 #, gcc-internal-format
 msgid "Rank mismatch in argument %qs at %L (rank-%d and scalar)"
 msgstr ""
 
-#: fortran/interface.cc:2324
+#: fortran/interface.cc:2351
 #, gcc-internal-format
 msgid "Rank mismatch in argument %qs at %L (rank-%d and rank-%d)"
 msgstr ""
 
-#: fortran/interface.cc:2336
+#: fortran/interface.cc:2363
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Rank mismatch between actual argument at %L and actual argument at %L "
 "(scalar and rank-%d)"
 msgstr ""
 
-#: fortran/interface.cc:2340
+#: fortran/interface.cc:2367
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Rank mismatch between actual argument at %L and actual argument at %L (rank-"
 "%d and scalar)"
 msgstr ""
 
-#: fortran/interface.cc:2344
+#: fortran/interface.cc:2371
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Rank mismatch between actual argument at %L and actual argument at %L (rank-"
 "%d and rank-%d)"
 msgstr ""
 
-#: fortran/interface.cc:2468
+#: fortran/interface.cc:2495
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid procedure argument at %L"
 msgstr ""
 
-#: fortran/interface.cc:2480 fortran/interface.cc:2496
+#: fortran/interface.cc:2507 fortran/interface.cc:2523
 #, gcc-internal-format, gfc-internal-format
 msgid "Interface mismatch in dummy procedure at %L conflicts with %L: %s"
 msgstr ""
 
-#: fortran/interface.cc:2484 fortran/interface.cc:2500
-#: fortran/interface.cc:2590
+#: fortran/interface.cc:2511 fortran/interface.cc:2527
+#: fortran/interface.cc:2624
 #, gcc-internal-format
 msgid "Interface mismatch in dummy procedure %qs at %L: %s"
 msgstr ""
 
-#: fortran/interface.cc:2519
+#: fortran/interface.cc:2546
 #, gcc-internal-format
 msgid "Passing global subroutine %qs declared at %L as function at %L"
 msgstr ""
 
-#: fortran/interface.cc:2526
+#: fortran/interface.cc:2553
 #, gcc-internal-format
 msgid "Passing global function %qs declared at %L as subroutine at %L"
 msgstr ""
 
-#: fortran/interface.cc:2539
+#: fortran/interface.cc:2566
 #, gcc-internal-format, gfc-internal-format
 msgid "Mismatch between subroutine and function at %L"
 msgstr ""
 
-#: fortran/interface.cc:2548
+#: fortran/interface.cc:2582
 #, gcc-internal-format
 msgid "Type mismatch at %L passing global function %qs declared at %L (%s/%s)"
 msgstr ""
 
-#: fortran/interface.cc:2601
+#: fortran/interface.cc:2635
 #, gcc-internal-format
 msgid ""
 "Actual argument to contiguous pointer dummy %qs at %L must be simply "
 "contiguous"
 msgstr ""
 
-#: fortran/interface.cc:2624
+#: fortran/interface.cc:2658
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Type mismatch between actual argument at %L and actual argument at %L (%s/"
 "%s)."
 msgstr ""
 
-#: fortran/interface.cc:2634
+#: fortran/interface.cc:2668
 #, gcc-internal-format
 msgid "Type mismatch in argument %qs at %L; passed %s to %s"
 msgstr ""
 
-#: fortran/interface.cc:2644
+#: fortran/interface.cc:2678
 #, gcc-internal-format
 msgid ""
 "Assumed-type actual argument at %L requires that dummy argument %qs is of "
 "assumed type"
 msgstr ""
 
-#: fortran/interface.cc:2658
+#: fortran/interface.cc:2692
 #, gcc-internal-format
 msgid ""
 "Assumed-type actual argument at %L corresponding to assumed-rank dummy "
 "argument %qs must be assumed-shape or assumed-rank"
 msgstr ""
 
-#: fortran/interface.cc:2675
+#: fortran/interface.cc:2709
 #, gcc-internal-format
 msgid "Actual argument to %qs at %L must be polymorphic"
 msgstr ""
 
-#: fortran/interface.cc:2685
+#: fortran/interface.cc:2719
 #, gcc-internal-format
 msgid "Actual argument to %qs at %L must have the same declared type"
 msgstr ""
 
-#: fortran/interface.cc:2700
+#: fortran/interface.cc:2734
 #, gcc-internal-format
 msgid ""
 "Actual argument to %qs at %L must be unlimited polymorphic since the formal "
@@ -78613,38 +82554,38 @@ msgid ""
 "12.5.2.5]"
 msgstr ""
 
-#: fortran/interface.cc:2716
+#: fortran/interface.cc:2750
 #, gcc-internal-format
 msgid "Actual argument to %qs at %L must be a coarray"
 msgstr ""
 
-#: fortran/interface.cc:2738
+#: fortran/interface.cc:2772
 #, gcc-internal-format
 msgid "Corank mismatch in argument %qs at %L (%d and %d)"
 msgstr ""
 
-#: fortran/interface.cc:2756
+#: fortran/interface.cc:2790
 #, gcc-internal-format
 msgid ""
 "Actual argument to %qs at %L must be simply contiguous or an element of such "
 "an array"
 msgstr ""
 
-#: fortran/interface.cc:2771
+#: fortran/interface.cc:2805
 #, gcc-internal-format
 msgid ""
 "Actual argument to non-INTENT(INOUT) dummy %qs at %L, which is LOCK_TYPE or "
 "has a LOCK_TYPE component"
 msgstr ""
 
-#: fortran/interface.cc:2786
+#: fortran/interface.cc:2820
 #, gcc-internal-format
 msgid ""
 "Actual argument to non-INTENT(INOUT) dummy %qs at %L, which is EVENT_TYPE or "
 "has a EVENT_TYPE component"
 msgstr ""
 
-#: fortran/interface.cc:2805
+#: fortran/interface.cc:2839
 #, gcc-internal-format
 msgid ""
 "Dummy argument %qs has to be a pointer, assumed-shape or assumed-rank array "
@@ -78652,250 +82593,257 @@ msgid ""
 "contiguous and both are ASYNCHRONOUS or VOLATILE"
 msgstr ""
 
-#: fortran/interface.cc:2818
+#: fortran/interface.cc:2852
 #, gcc-internal-format
 msgid ""
 "Passing coarray at %L to allocatable, noncoarray, INTENT(OUT) dummy argument "
 "%qs"
 msgstr ""
 
-#: fortran/interface.cc:2825
+#: fortran/interface.cc:2859
 #, gcc-internal-format
 msgid ""
 "Passing coarray at %L to allocatable, noncoarray dummy argument %qs, which "
 "is invalid if the allocation status is modified"
 msgstr ""
 
-#: fortran/interface.cc:2912
+#: fortran/interface.cc:2946
 #, gcc-internal-format
 msgid "Polymorphic scalar passed to array dummy argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:2923
+#: fortran/interface.cc:2957
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Element of assumed-shape or pointer array as actual argument at %L cannot "
 "correspond to actual argument at %L"
 msgstr ""
 
-#: fortran/interface.cc:2928
+#: fortran/interface.cc:2962
 #, gcc-internal-format
 msgid ""
 "Element of assumed-shape or pointer array passed to array dummy argument %qs "
 "at %L"
 msgstr ""
 
-#: fortran/interface.cc:2941
+#: fortran/interface.cc:2975
 #, gcc-internal-format
 msgid ""
 "Extension: Scalar non-default-kind, non-C_CHAR-kind CHARACTER actual "
 "argument with array dummy argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:2949
+#: fortran/interface.cc:2983
 #, gcc-internal-format
 msgid ""
 "Fortran 2003: Scalar CHARACTER actual argument with array dummy argument %qs "
 "at %L"
 msgstr ""
 
-#: fortran/interface.cc:3338
+#: fortran/interface.cc:3390
 #, gcc-internal-format
 msgid "Keyword argument %qs at %L is invalid in a statement function"
 msgstr ""
 
-#: fortran/interface.cc:3361
+#: fortran/interface.cc:3413
 #, gcc-internal-format
 msgid "Keyword argument %qs at %L is not in the procedure; did you mean %qs?"
 msgstr ""
 
-#: fortran/interface.cc:3365
+#: fortran/interface.cc:3417
 #, gcc-internal-format
 msgid "Keyword argument %qs at %L is not in the procedure"
 msgstr ""
 
-#: fortran/interface.cc:3374
+#: fortran/interface.cc:3426
 #, gcc-internal-format
 msgid ""
 "Keyword argument %qs at %L is already associated with another actual argument"
 msgstr ""
 
-#: fortran/interface.cc:3384
+#: fortran/interface.cc:3436
 #, gcc-internal-format, gfc-internal-format
 msgid "More actual than formal arguments in procedure call at %L"
 msgstr ""
 
-#: fortran/interface.cc:3397
+#: fortran/interface.cc:3449
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing alternate return specifier in subroutine call at %L"
 msgstr ""
 
-#: fortran/interface.cc:3415
+#: fortran/interface.cc:3467
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected alternate return specifier in subroutine call at %L"
 msgstr ""
 
-#: fortran/interface.cc:3438
+#: fortran/interface.cc:3490
 #, gcc-internal-format
 msgid ""
 "Intrinsic %<NULL()%> without %<MOLD%> argument at %L passed to assumed-rank "
 "dummy %qs"
 msgstr ""
 
-#: fortran/interface.cc:3451
+#: fortran/interface.cc:3503
 #, gcc-internal-format
 msgid ""
 "The assumed-size dummy %qs is being passed at %L to an assumed-rank dummy %qs"
 msgstr ""
 
-#: fortran/interface.cc:3462
+#: fortran/interface.cc:3514
 #, gcc-internal-format
 msgid ""
 "Intrinsic %<NULL()%> without %<MOLD%> argument at %L passed to assumed-"
 "length dummy %qs"
 msgstr ""
 
-#: fortran/interface.cc:3502
+#: fortran/interface.cc:3554
 #, gcc-internal-format
 msgid "Unexpected NULL() intrinsic at %L to dummy %qs"
 msgstr ""
 
-#: fortran/interface.cc:3505
+#: fortran/interface.cc:3557
 #, gcc-internal-format
 msgid "Fortran 2008: Null pointer at %L to non-pointer dummy %qs"
 msgstr ""
 
-#: fortran/interface.cc:3531
+#: fortran/interface.cc:3583
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Actual argument at %L to assumed-type dummy has type parameters or is of "
 "derived type with type-bound or FINAL procedures"
 msgstr ""
 
-#: fortran/interface.cc:3543
+#: fortran/interface.cc:3595
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Unlimited polymorphic actual argument at %L is not matched with either an "
 "unlimited polymorphic or assumed type dummy argument"
 msgstr ""
 
-#: fortran/interface.cc:3567
+#: fortran/interface.cc:3626 fortran/interface.cc:3631
 #, gcc-internal-format
 msgid ""
 "Character length mismatch (%ld/%ld) between actual argument and pointer or "
 "allocatable dummy argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:3574
+#: fortran/interface.cc:3640 fortran/interface.cc:3645
 #, gcc-internal-format
 msgid ""
 "Character length mismatch (%ld/%ld) between actual argument and assumed-"
 "shape dummy argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:3589
+#: fortran/interface.cc:3660
 #, gcc-internal-format
 msgid ""
 "Actual argument at %L to allocatable or pointer dummy argument %qs must have "
 "a deferred length type parameter if and only if the dummy has one"
 msgstr ""
 
-#: fortran/interface.cc:3612
+#: fortran/interface.cc:3708
+#, gcc-internal-format
+msgid ""
+"Character length of actual argument longer than of dummy argument %qs (%lu/"
+"%lu) at %L"
+msgstr ""
+
+#: fortran/interface.cc:3720 fortran/interface.cc:3728
 #, gcc-internal-format
 msgid ""
 "Character length of actual argument shorter than of dummy argument %qs (%lu/"
 "%lu) at %L"
 msgstr ""
 
-#: fortran/interface.cc:3622 fortran/interface.cc:3627
+#: fortran/interface.cc:3746 fortran/interface.cc:3751
 #, gcc-internal-format
 msgid ""
 "Actual argument contains too few elements for dummy argument %qs (%lu/%lu) "
 "at %L"
 msgstr ""
 
-#: fortran/interface.cc:3653
+#: fortran/interface.cc:3777
 #, gcc-internal-format
 msgid "Expected a procedure pointer for argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:3670
+#: fortran/interface.cc:3794
 #, gcc-internal-format
 msgid "Expected a procedure for argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:3737
+#: fortran/interface.cc:3861
 #, gcc-internal-format
 msgid "Actual argument for %qs cannot be an assumed-size array at %L"
 msgstr ""
 
-#: fortran/interface.cc:3766
+#: fortran/interface.cc:3890
 #, gcc-internal-format
 msgid ""
 "Actual argument to assumed-rank INTENT(OUT) dummy %qs at %L cannot be of "
 "unknown size"
 msgstr ""
 
-#: fortran/interface.cc:3781
+#: fortran/interface.cc:3905
 #, gcc-internal-format
 msgid "Actual argument for %qs at %L must be a pointer"
 msgstr ""
 
-#: fortran/interface.cc:3790
+#: fortran/interface.cc:3914
 #, gcc-internal-format
 msgid "Fortran 2008: Non-pointer actual argument at %L to pointer dummy %qs"
 msgstr ""
 
-#: fortran/interface.cc:3799
+#: fortran/interface.cc:3923
 #, gcc-internal-format
 msgid ""
 "Actual argument for %qs at %L must be a pointer or a valid target for the "
 "dummy pointer in a pointer assignment statement"
 msgstr ""
 
-#: fortran/interface.cc:3813
+#: fortran/interface.cc:3937
 #, gcc-internal-format
 msgid "Coindexed actual argument at %L to pointer dummy %qs"
 msgstr ""
 
-#: fortran/interface.cc:3827
+#: fortran/interface.cc:3951
 #, gcc-internal-format
 msgid ""
 "Coindexed actual argument at %L to allocatable dummy %qs requires INTENT(IN)"
 msgstr ""
 
-#: fortran/interface.cc:3842
+#: fortran/interface.cc:3966
 #, gcc-internal-format
 msgid ""
 "Coindexed ASYNCHRONOUS or VOLATILE actual argument at %L requires that dummy "
 "%qs has neither ASYNCHRONOUS nor VOLATILE"
 msgstr ""
 
-#: fortran/interface.cc:3857
+#: fortran/interface.cc:3981
 #, gcc-internal-format
 msgid ""
 "Coindexed actual argument at %L with allocatable ultimate component to dummy "
 "%qs requires either VALUE or INTENT(IN)"
 msgstr ""
 
-#: fortran/interface.cc:3870
+#: fortran/interface.cc:3994
 #, gcc-internal-format
 msgid "Actual CLASS array argument for %qs must be a full array at %L"
 msgstr ""
 
-#: fortran/interface.cc:3881
+#: fortran/interface.cc:4005
 #, gcc-internal-format
 msgid "Actual argument for %qs must be ALLOCATABLE at %L"
 msgstr ""
 
-#: fortran/interface.cc:3892
+#: fortran/interface.cc:4016
 #, gcc-internal-format
 msgid ""
 "Actual argument for %qs at %L is a function result and the dummy argument is "
 "ALLOCATABLE"
 msgstr ""
 
-#: fortran/interface.cc:3930
+#: fortran/interface.cc:4054
 #, gcc-internal-format
 msgid ""
 "Array-section actual argument with vector subscripts at %L is incompatible "
@@ -78903,341 +82851,341 @@ msgid ""
 "dummy argument %qs"
 msgstr ""
 
-#: fortran/interface.cc:3950
+#: fortran/interface.cc:4074
 #, gcc-internal-format
 msgid ""
 "Assumed-shape actual argument at %L is incompatible with the non-assumed-"
 "shape dummy argument %qs due to VOLATILE attribute"
 msgstr ""
 
-#: fortran/interface.cc:3968
+#: fortran/interface.cc:4092
 #, gcc-internal-format
 msgid ""
 "Array-section actual argument at %L is incompatible with the non-assumed-"
 "shape dummy argument %qs due to VOLATILE attribute"
 msgstr ""
 
-#: fortran/interface.cc:3989
+#: fortran/interface.cc:4113
 #, gcc-internal-format
 msgid ""
 "Pointer-array actual argument at %L requires an assumed-shape or pointer-"
 "array dummy argument %qs due to VOLATILE attribute"
 msgstr ""
 
-#: fortran/interface.cc:4017
+#: fortran/interface.cc:4141
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing alternate return spec in subroutine call at %L"
 msgstr ""
 
-#: fortran/interface.cc:4030
+#: fortran/interface.cc:4154
 #, gcc-internal-format
 msgid "Missing actual argument for argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:4158
+#: fortran/interface.cc:4282
 #, gcc-internal-format
 msgid "compare_actual_expr(): Bad component code"
 msgstr ""
 
-#: fortran/interface.cc:4187
+#: fortran/interface.cc:4311
 #, gcc-internal-format
 msgid "check_some_aliasing(): List mismatch"
 msgstr ""
 
-#: fortran/interface.cc:4213
+#: fortran/interface.cc:4337
 #, gcc-internal-format
 msgid "check_some_aliasing(): corrupted data"
 msgstr ""
 
-#: fortran/interface.cc:4223
+#: fortran/interface.cc:4347
 #, gcc-internal-format
 msgid ""
 "Same actual argument associated with INTENT(%s) argument %qs and INTENT(%s) "
 "argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:4253
+#: fortran/interface.cc:4377
 #, gcc-internal-format
 msgid "check_intents(): List mismatch"
 msgstr ""
 
-#: fortran/interface.cc:4273
+#: fortran/interface.cc:4397
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Procedure argument at %L is local to a PURE procedure and has the POINTER "
 "attribute"
 msgstr ""
 
-#: fortran/interface.cc:4285
+#: fortran/interface.cc:4409
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Coindexed actual argument at %L in PURE procedure is passed to an INTENT(%s) "
 "argument"
 msgstr ""
 
-#: fortran/interface.cc:4295
+#: fortran/interface.cc:4419
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Coindexed actual argument at %L in PURE procedure is passed to a POINTER "
 "dummy argument"
 msgstr ""
 
-#: fortran/interface.cc:4306
+#: fortran/interface.cc:4430
 #, gcc-internal-format
 msgid ""
 "Coindexed polymorphic actual argument at %L is passed polymorphic dummy "
 "argument %qs"
 msgstr ""
 
-#: fortran/interface.cc:4348
+#: fortran/interface.cc:4472
 #, gcc-internal-format
 msgid ""
 "Procedure %qs called at %L is not explicitly declared; did you mean %qs?"
 msgstr ""
 
-#: fortran/interface.cc:4352 fortran/interface.cc:4362
+#: fortran/interface.cc:4476 fortran/interface.cc:4486
 #, gcc-internal-format
 msgid "Procedure %qs called at %L is not explicitly declared"
 msgstr ""
 
-#: fortran/interface.cc:4358
+#: fortran/interface.cc:4482
 #, gcc-internal-format
 msgid "Procedure %qs called with an implicit interface at %L"
 msgstr ""
 
-#: fortran/interface.cc:4371
+#: fortran/interface.cc:4495
 #, gcc-internal-format
 msgid ""
 "The pointer object %qs at %L must have an explicit function interface or be "
 "declared as array"
 msgstr ""
 
-#: fortran/interface.cc:4379
+#: fortran/interface.cc:4503
 #, gcc-internal-format
 msgid ""
 "The allocatable object %qs at %L must have an explicit function interface or "
 "be declared as array"
 msgstr ""
 
-#: fortran/interface.cc:4387
+#: fortran/interface.cc:4511
 #, gcc-internal-format
 msgid "Allocatable function %qs at %L must have an explicit function interface"
 msgstr ""
 
-#: fortran/interface.cc:4404
+#: fortran/interface.cc:4528
 #, gcc-internal-format, gfc-internal-format
 msgid "Explicit interface required for polymorphic argument at %L"
 msgstr ""
 
-#: fortran/interface.cc:4413
+#: fortran/interface.cc:4537
 #, gcc-internal-format
 msgid "Keyword argument requires explicit interface for procedure %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:4422
+#: fortran/interface.cc:4546
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type argument %s at %L requires an explicit interface"
 msgstr ""
 
-#: fortran/interface.cc:4437
+#: fortran/interface.cc:4561
 #, gcc-internal-format
 msgid ""
 "Actual argument of LOCK_TYPE or with LOCK_TYPE component at %L requires an "
 "explicit interface for procedure %qs"
 msgstr ""
 
-#: fortran/interface.cc:4452
+#: fortran/interface.cc:4576
 #, gcc-internal-format
 msgid ""
 "Actual argument of EVENT_TYPE or with EVENT_TYPE component at %L requires an "
 "explicit interface for procedure %qs"
 msgstr ""
 
-#: fortran/interface.cc:4462
+#: fortran/interface.cc:4586
 #, gcc-internal-format, gfc-internal-format
 msgid "MOLD argument to NULL required at %L"
 msgstr ""
 
-#: fortran/interface.cc:4470
+#: fortran/interface.cc:4594
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Passing intrinsic NULL as actual argument at %L requires an explicit "
 "interface"
 msgstr ""
 
-#: fortran/interface.cc:4480
+#: fortran/interface.cc:4604
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank argument requires an explicit interface at %L"
 msgstr ""
 
-#: fortran/interface.cc:4522
+#: fortran/interface.cc:4646
 #, gcc-internal-format
 msgid "Procedure pointer component %qs called with an implicit interface at %L"
 msgstr ""
 
-#: fortran/interface.cc:4533
+#: fortran/interface.cc:4657
 #, gcc-internal-format
 msgid ""
 "Keyword argument requires explicit interface for procedure pointer component "
 "%qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:4618
+#: fortran/interface.cc:4742
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "MOLD= required in NULL() argument at %L: Ambiguity between specific "
 "functions %s and %s"
 msgstr ""
 
-#: fortran/interface.cc:4688
+#: fortran/interface.cc:4812
 #, gcc-internal-format
 msgid "Unable to find symbol %qs"
 msgstr ""
 
-#: fortran/interface.cc:5072
+#: fortran/interface.cc:5207
 #, gcc-internal-format
 msgid "Entity %qs at %L is already present in the interface"
 msgstr ""
 
-#: fortran/interface.cc:5189
+#: fortran/interface.cc:5324
 #, gcc-internal-format
 msgid "gfc_add_interface(): Bad interface type"
 msgstr ""
 
-#: fortran/interface.cc:5283
+#: fortran/interface.cc:5418
 #, gcc-internal-format
 msgid "Cannot overwrite GENERIC %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:5295
+#: fortran/interface.cc:5430
 #, gcc-internal-format
 msgid "%qs at %L overrides a procedure binding declared NON_OVERRIDABLE"
 msgstr ""
 
-#: fortran/interface.cc:5303
+#: fortran/interface.cc:5438
 #, gcc-internal-format
 msgid "%qs at %L must not be DEFERRED as it overrides a non-DEFERRED binding"
 msgstr ""
 
-#: fortran/interface.cc:5311
+#: fortran/interface.cc:5446
 #, gcc-internal-format
 msgid "%qs at %L overrides a PURE procedure and must also be PURE"
 msgstr ""
 
-#: fortran/interface.cc:5320
+#: fortran/interface.cc:5455
 #, gcc-internal-format
 msgid "%qs at %L overrides an ELEMENTAL procedure and must also be ELEMENTAL"
 msgstr ""
 
-#: fortran/interface.cc:5326
+#: fortran/interface.cc:5461
 #, gcc-internal-format
 msgid ""
 "%qs at %L overrides a non-ELEMENTAL procedure and must not be ELEMENTAL, "
 "either"
 msgstr ""
 
-#: fortran/interface.cc:5335
+#: fortran/interface.cc:5470
 #, gcc-internal-format
 msgid "%qs at %L overrides a SUBROUTINE and must also be a SUBROUTINE"
 msgstr ""
 
-#: fortran/interface.cc:5346
+#: fortran/interface.cc:5481
 #, gcc-internal-format
 msgid "%qs at %L overrides a FUNCTION and must also be a FUNCTION"
 msgstr ""
 
-#: fortran/interface.cc:5354
+#: fortran/interface.cc:5489
 #, gcc-internal-format
 msgid "Result mismatch for the overriding procedure %qs at %L: %s"
 msgstr ""
 
-#: fortran/interface.cc:5365
+#: fortran/interface.cc:5500
 #, gcc-internal-format
 msgid "%qs at %L overrides a PUBLIC procedure and must not be PRIVATE"
 msgstr ""
 
-#: fortran/interface.cc:5395
+#: fortran/interface.cc:5530
 #, gcc-internal-format
 msgid ""
 "Dummy argument %qs of %qs at %L should be named %qs as to match the "
 "corresponding argument of the overridden procedure"
 msgstr ""
 
-#: fortran/interface.cc:5406
+#: fortran/interface.cc:5541
 #, gcc-internal-format
 msgid "Argument mismatch for the overriding procedure %qs at %L: %s"
 msgstr ""
 
-#: fortran/interface.cc:5415
+#: fortran/interface.cc:5550
 #, gcc-internal-format
 msgid ""
 "%qs at %L must have the same number of formal arguments as the overridden "
 "procedure"
 msgstr ""
 
-#: fortran/interface.cc:5424
+#: fortran/interface.cc:5559
 #, gcc-internal-format
 msgid "%qs at %L overrides a NOPASS binding and must also be NOPASS"
 msgstr ""
 
-#: fortran/interface.cc:5435
+#: fortran/interface.cc:5570
 #, gcc-internal-format
 msgid "%qs at %L overrides a binding with PASS and must also be PASS"
 msgstr ""
 
-#: fortran/interface.cc:5442
+#: fortran/interface.cc:5577
 #, gcc-internal-format
 msgid ""
 "Passed-object dummy argument of %qs at %L must be at the same position as "
 "the passed-object dummy argument of the overridden procedure"
 msgstr ""
 
-#: fortran/interface.cc:5463
+#: fortran/interface.cc:5598
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must be of type %s"
 msgstr ""
 
-#: fortran/interface.cc:5470
+#: fortran/interface.cc:5605
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must be of KIND = %d"
 msgstr ""
 
-#: fortran/interface.cc:5477
+#: fortran/interface.cc:5612
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must be a scalar"
 msgstr ""
 
-#: fortran/interface.cc:5481
+#: fortran/interface.cc:5616
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must be an ASSUMED SHAPE ARRAY"
 msgstr ""
 
-#: fortran/interface.cc:5485
+#: fortran/interface.cc:5620
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO character argument at %L must have assumed length"
 msgstr ""
 
-#: fortran/interface.cc:5489
+#: fortran/interface.cc:5624
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must have INTENT %s"
 msgstr ""
 
-#: fortran/interface.cc:5547 fortran/interface.cc:5593
+#: fortran/interface.cc:5682 fortran/interface.cc:5728
 #, gcc-internal-format, gfc-internal-format
 msgid "Alternate return at %L is not permitted in a DTIO procedure"
 msgstr ""
 
-#: fortran/interface.cc:5559
+#: fortran/interface.cc:5694
 #, gcc-internal-format
 msgid "DTIO procedure %qs at %L must be a subroutine"
 msgstr ""
 
-#: fortran/interface.cc:5571
+#: fortran/interface.cc:5706
 #, gcc-internal-format
 msgid "Too few dummy arguments in DTIO procedure %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:5578
+#: fortran/interface.cc:5713
 #, gcc-internal-format
 msgid "Too many dummy arguments in DTIO procedure %qs at %L"
 msgstr ""
@@ -79306,141 +83254,141 @@ msgstr ""
 msgid "make_generic(): Cannot find generic symbol %qs"
 msgstr ""
 
-#: fortran/intrinsic.cc:4469
+#: fortran/intrinsic.cc:4544
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "ALLOCATED intrinsic at %L requires an array or scalar allocatable entity"
 msgstr ""
 
-#: fortran/intrinsic.cc:4482
+#: fortran/intrinsic.cc:4557
 #, gcc-internal-format, gfc-internal-format
 msgid "Scalar entity required at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4493
+#: fortran/intrinsic.cc:4568
 #, gcc-internal-format, gfc-internal-format
 msgid "Array entity required at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4500
+#: fortran/intrinsic.cc:4575
 #, gcc-internal-format
 msgid "Invalid keyword %qs in %qs intrinsic function at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4527
+#: fortran/intrinsic.cc:4602
 #, gcc-internal-format
 msgid "Too many arguments in call to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4543
+#: fortran/intrinsic.cc:4618
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The argument list functions %%VAL, %%LOC or %%REF are not allowed in this "
 "context at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4546
+#: fortran/intrinsic.cc:4621
 #, gcc-internal-format
 msgid "Cannot find keyword named %qs in call to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4553
+#: fortran/intrinsic.cc:4628
 #, gcc-internal-format
 msgid "Argument %qs appears twice in call to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4567
+#: fortran/intrinsic.cc:4642
 #, gcc-internal-format
 msgid "Missing actual argument %qs in call to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4583
+#: fortran/intrinsic.cc:4658
 #, gcc-internal-format, gfc-internal-format
 msgid "ALTERNATE RETURN not permitted at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4637
+#: fortran/intrinsic.cc:4712
 #, gcc-internal-format
 msgid "In call to %qs at %L, type mismatch in argument %qs; pass %qs to %qs"
 msgstr ""
 
-#: fortran/intrinsic.cc:4765
+#: fortran/intrinsic.cc:4840
 #, gcc-internal-format
 msgid "resolve_intrinsic(): Too many args for intrinsic"
 msgstr ""
 
-#: fortran/intrinsic.cc:4860
+#: fortran/intrinsic.cc:4935
 #, gcc-internal-format
 msgid "do_simplify(): Too many args for intrinsic"
 msgstr ""
 
-#: fortran/intrinsic.cc:4872
+#: fortran/intrinsic.cc:4947
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot simplify expression at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4905
+#: fortran/intrinsic.cc:4980
 #, gcc-internal-format
 msgid "init_arglist(): too many arguments"
 msgstr ""
 
-#: fortran/intrinsic.cc:5068
+#: fortran/intrinsic.cc:5143
 #, gcc-internal-format
 msgid "Invalid standard code on intrinsic %qs (%d)"
 msgstr ""
 
-#: fortran/intrinsic.cc:5077
+#: fortran/intrinsic.cc:5152
 #, gcc-internal-format
 msgid "Intrinsic %qs (%s) used at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:5149
+#: fortran/intrinsic.cc:5224
 #, gcc-internal-format
 msgid "Function %qs as initialization expression at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:5168
+#: fortran/intrinsic.cc:5243
 #, gcc-internal-format
 msgid ""
 "Transformational function %qs at %L is invalid in an initialization "
 "expression"
 msgstr ""
 
-#: fortran/intrinsic.cc:5244
+#: fortran/intrinsic.cc:5319
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Elemental function as initialization expression with non-integer/non-"
 "character arguments at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:5335
+#: fortran/intrinsic.cc:5410
 #, gcc-internal-format
 msgid ""
 "Subroutine call to intrinsic %qs in DO CONCURRENT block at %L is not PURE"
 msgstr ""
 
-#: fortran/intrinsic.cc:5342
+#: fortran/intrinsic.cc:5417
 #, gcc-internal-format
 msgid "Subroutine call to intrinsic %qs at %L is not PURE"
 msgstr ""
 
-#: fortran/intrinsic.cc:5445
+#: fortran/intrinsic.cc:5523
 #, gcc-internal-format, gfc-internal-format
 msgid "Extension: Conversion from %s to %s at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:5466
+#: fortran/intrinsic.cc:5544
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonstandard conversion from %s to %s at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:5484 fortran/intrinsic.cc:5501
+#: fortran/intrinsic.cc:5562 fortran/intrinsic.cc:5579
 #, gcc-internal-format, gfc-internal-format
 msgid "Possible change of value in conversion from %s to %s at %L"
 msgstr ""
 
 #. If HOLLERITH is involved, all bets are off.
-#: fortran/intrinsic.cc:5489 fortran/intrinsic.cc:5509
+#: fortran/intrinsic.cc:5567 fortran/intrinsic.cc:5587
 #, gcc-internal-format, gfc-internal-format
 msgid "Conversion from %s to %s at %L"
 msgstr ""
@@ -79448,24 +83396,24 @@ msgstr ""
 #. Use of -fdec-char-conversions allows assignment of character data
 #. to non-character variables.  This not permitted for nonconstant
 #. strings.
-#: fortran/intrinsic.cc:5576 fortran/resolve.cc:12421
+#: fortran/intrinsic.cc:5654 fortran/resolve.cc:13026
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot convert %s to %s at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:5581
+#: fortran/intrinsic.cc:5659
 #, gcc-internal-format
 msgid "Cannot convert %qs to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:5674
+#: fortran/intrinsic.cc:5752
 #, gcc-internal-format
 msgid ""
 "%qs declared at %L may shadow the intrinsic of the same name.  In order to "
 "call the intrinsic, explicit INTRINSIC declarations may be required."
 msgstr ""
 
-#: fortran/intrinsic.cc:5680
+#: fortran/intrinsic.cc:5758
 #, gcc-internal-format
 msgid ""
 "%qs declared at %L is also the name of an intrinsic.  It can only be called "
@@ -79628,551 +83576,551 @@ msgstr ""
 msgid "Period required in format specifier at %L"
 msgstr ""
 
-#: fortran/io.cc:1136
+#: fortran/io.cc:1134 fortran/io.cc:1140
 #, gcc-internal-format, gfc-internal-format
 msgid "The H format specifier at %L is a Fortran 95 deleted feature"
 msgstr ""
 
-#: fortran/io.cc:1231 fortran/io.cc:1293
+#: fortran/io.cc:1235 fortran/io.cc:1298
 #, gcc-internal-format, gfc-internal-format
-msgid "Missing comma at %L"
+msgid "Missing comma in FORMAT string at %L"
 msgstr ""
 
-#: fortran/io.cc:1349
+#: fortran/io.cc:1354
 #, gcc-internal-format, gfc-internal-format
 msgid "Extraneous characters in format at %L"
 msgstr ""
 
-#: fortran/io.cc:1371
+#: fortran/io.cc:1376
 #, gcc-internal-format, gfc-internal-format
 msgid "Format statement in module main block at %C"
 msgstr ""
 
-#: fortran/io.cc:1380
+#: fortran/io.cc:1385
 #, gcc-internal-format, gfc-internal-format
 msgid "FORMAT statement at %C cannot appear within an INTERFACE"
 msgstr ""
 
-#: fortran/io.cc:1386
+#: fortran/io.cc:1391
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing format label at %C"
 msgstr ""
 
-#: fortran/io.cc:1441 fortran/io.cc:1472 fortran/io.cc:1552
+#: fortran/io.cc:1446 fortran/io.cc:1477 fortran/io.cc:1557
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid value for %s specification at %C"
 msgstr ""
 
-#: fortran/io.cc:1447 fortran/io.cc:1478 fortran/io.cc:1634 fortran/io.cc:1647
+#: fortran/io.cc:1452 fortran/io.cc:1483 fortran/io.cc:1639 fortran/io.cc:1652
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate %s specification at %C"
 msgstr ""
 
-#: fortran/io.cc:1489
+#: fortran/io.cc:1494
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable %s cannot be INTENT(IN) at %C"
 msgstr ""
 
-#: fortran/io.cc:1497
+#: fortran/io.cc:1502
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable %s cannot be assigned in PURE procedure at %C"
 msgstr ""
 
-#: fortran/io.cc:1527
+#: fortran/io.cc:1532
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting a variable at %L"
 msgstr ""
 
-#: fortran/io.cc:1558
+#: fortran/io.cc:1563
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate %s label specification at %C"
 msgstr ""
 
-#: fortran/io.cc:1578 fortran/io.cc:1595 fortran/io.cc:1616
+#: fortran/io.cc:1583 fortran/io.cc:1600 fortran/io.cc:1621
 #, gcc-internal-format
 msgid "%s at %C is a DEC extension, enable with %<-fdec%>"
 msgstr ""
 
-#: fortran/io.cc:1669
+#: fortran/io.cc:1674
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Constant expression in FORMAT tag at %L must be of type default CHARACTER"
 msgstr ""
 
-#: fortran/io.cc:1694
+#: fortran/io.cc:1699
 #, gcc-internal-format, gfc-internal-format
 msgid "FORMAT tag at %L cannot be a zero-sized array"
 msgstr ""
 
-#: fortran/io.cc:1735
+#: fortran/io.cc:1740
 #, gcc-internal-format, gfc-internal-format
 msgid "FORMAT tag at %L must be of type default-kind CHARACTER or of INTEGER"
 msgstr ""
 
-#: fortran/io.cc:1741
+#: fortran/io.cc:1746
 #, gcc-internal-format, gfc-internal-format
 msgid "ASSIGNED variable in FORMAT tag at %L"
 msgstr ""
 
-#: fortran/io.cc:1746
+#: fortran/io.cc:1751
 #, gcc-internal-format
 msgid "Variable %qs at %L has not been assigned a format label"
 msgstr ""
 
-#: fortran/io.cc:1753
+#: fortran/io.cc:1758
 #, gcc-internal-format
 msgid "Scalar %qs in FORMAT tag at %L is not an ASSIGNED variable"
 msgstr ""
 
-#: fortran/io.cc:1768
+#: fortran/io.cc:1773
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-character non-Hollerith in FORMAT tag at %L"
 msgstr ""
 
-#: fortran/io.cc:1772
+#: fortran/io.cc:1777
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-character in FORMAT tag at %L"
 msgstr ""
 
-#: fortran/io.cc:1778
+#: fortran/io.cc:1783
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-character assumed shape array element in FORMAT tag at %L"
 msgstr ""
 
-#: fortran/io.cc:1785
+#: fortran/io.cc:1790
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-character assumed size array element in FORMAT tag at %L"
 msgstr ""
 
-#: fortran/io.cc:1792
+#: fortran/io.cc:1797
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-character pointer array element in FORMAT tag at %L"
 msgstr ""
 
-#: fortran/io.cc:1818
+#: fortran/io.cc:1823
 #, gcc-internal-format, gfc-internal-format
 msgid "%s tag at %L must be of type %s"
 msgstr ""
 
-#: fortran/io.cc:1825
+#: fortran/io.cc:1830
 #, gcc-internal-format, gfc-internal-format
 msgid "%s tag at %L must be a character string of default kind"
 msgstr ""
 
-#: fortran/io.cc:1832
+#: fortran/io.cc:1837
 #, gcc-internal-format, gfc-internal-format
 msgid "%s tag at %L must be scalar"
 msgstr ""
 
-#: fortran/io.cc:1838
+#: fortran/io.cc:1843
 #, gcc-internal-format, gfc-internal-format
 msgid "IOMSG tag at %L"
 msgstr ""
 
-#: fortran/io.cc:1846
+#: fortran/io.cc:1851
 #, gcc-internal-format, gfc-internal-format
 msgid "Fortran 95 requires default INTEGER in %s tag at %L"
 msgstr ""
 
-#: fortran/io.cc:1855
+#: fortran/io.cc:1860
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-default LOGICAL kind in %s tag at %L"
 msgstr ""
 
-#: fortran/io.cc:1862
+#: fortran/io.cc:1867
 #, gcc-internal-format, gfc-internal-format
 msgid "NEWUNIT specifier at %L"
 msgstr ""
 
-#: fortran/io.cc:1880
+#: fortran/io.cc:1885
 #, gcc-internal-format, gfc-internal-format
 msgid "CONVERT tag at %L"
 msgstr ""
 
-#: fortran/io.cc:2096
+#: fortran/io.cc:2101
 #, gcc-internal-format
 msgid "Fortran 2003: %s specifier in %s statement at %L has value %qs"
 msgstr ""
 
-#: fortran/io.cc:2104 fortran/io.cc:2131
+#: fortran/io.cc:2109 fortran/io.cc:2136
 #, gcc-internal-format
 msgid "%s specifier in %s statement at %L has value %qs"
 msgstr ""
 
-#: fortran/io.cc:2123
+#: fortran/io.cc:2128
 #, gcc-internal-format
 msgid "Extension: %s specifier in %s statement at %L has value %qs"
 msgstr ""
 
-#: fortran/io.cc:2145 fortran/io.cc:2153
+#: fortran/io.cc:2150 fortran/io.cc:2158
 #, gcc-internal-format
 msgid "%s specifier in %s statement at %L has invalid value %qs"
 msgstr ""
 
-#: fortran/io.cc:2210
+#: fortran/io.cc:2215
 #, gcc-internal-format, gfc-internal-format
 msgid "ACTION type conflicts with READONLY specifier at %L"
 msgstr ""
 
-#: fortran/io.cc:2226
+#: fortran/io.cc:2231
 #, gcc-internal-format, gfc-internal-format
 msgid "ASYNCHRONOUS= at %L not allowed in Fortran 95"
 msgstr ""
 
-#: fortran/io.cc:2245 fortran/io.cc:3919
-#, gcc-internal-format, gfc-internal-format
-msgid "BLANK= at %L not allowed in Fortran 95"
-msgstr ""
-
-#: fortran/io.cc:2273 fortran/io.cc:3897
+#: fortran/io.cc:2274 fortran/io.cc:3898
 #, gcc-internal-format, gfc-internal-format
 msgid "DECIMAL= at %L not allowed in Fortran 95"
 msgstr ""
 
-#: fortran/io.cc:2305
+#: fortran/io.cc:2306
 #, gcc-internal-format, gfc-internal-format
 msgid "ENCODING= at %L not allowed in Fortran 95"
 msgstr ""
 
-#: fortran/io.cc:2356 fortran/io.cc:3964
+#: fortran/io.cc:2357 fortran/io.cc:3965
 #, gcc-internal-format, gfc-internal-format
 msgid "ROUND= at %L not allowed in Fortran 95"
 msgstr ""
 
-#: fortran/io.cc:2386
+#: fortran/io.cc:2387
 #, gcc-internal-format, gfc-internal-format
 msgid "SIGN= at %L not allowed in Fortran 95"
 msgstr ""
 
-#: fortran/io.cc:2407
+#: fortran/io.cc:2408
 #, gcc-internal-format, gfc-internal-format
 msgid "RECL in OPEN statement at %L must be positive"
 msgstr ""
 
-#: fortran/io.cc:2432
+#: fortran/io.cc:2433
 #, gcc-internal-format
 msgid ""
 "The STATUS specified in OPEN statement at %L is %qs and no FILE specifier is "
 "present"
 msgstr ""
 
-#: fortran/io.cc:2443
+#: fortran/io.cc:2444
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The STATUS specified in OPEN statement at %L cannot have the value SCRATCH "
 "if a FILE specifier is present"
 msgstr ""
 
-#: fortran/io.cc:2454
+#: fortran/io.cc:2455
 #, gcc-internal-format, gfc-internal-format
 msgid "UNIT specifier not allowed with NEWUNIT at %L"
 msgstr ""
 
-#: fortran/io.cc:2465
+#: fortran/io.cc:2466
 #, gcc-internal-format, gfc-internal-format
 msgid "NEWUNIT specifier must have FILE= or STATUS='scratch' at %L"
 msgstr ""
 
-#: fortran/io.cc:2472
+#: fortran/io.cc:2473
 #, gcc-internal-format, gfc-internal-format
 msgid "OPEN statement at %L must have UNIT or NEWUNIT specified"
 msgstr ""
 
-#: fortran/io.cc:2507
+#: fortran/io.cc:2508
 #, gcc-internal-format, gfc-internal-format
 msgid "%sspecifier at %L not allowed in OPEN statement for unformatted I/O"
 msgstr ""
 
-#: fortran/io.cc:2515
+#: fortran/io.cc:2516
 #, gcc-internal-format, gfc-internal-format
 msgid "RECL specifier not allowed in OPEN statement at %L for stream I/O"
 msgstr ""
 
-#: fortran/io.cc:2528
+#: fortran/io.cc:2529
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "POSITION specifier in OPEN statement at %L only allowed for stream or "
 "sequential ACCESS"
 msgstr ""
 
-#: fortran/io.cc:2581
+#: fortran/io.cc:2582
 #, gcc-internal-format, gfc-internal-format
 msgid "OPEN statement not allowed in PURE procedure at %C"
 msgstr ""
 
-#: fortran/io.cc:2689
+#: fortran/io.cc:2690
 #, gcc-internal-format, gfc-internal-format
 msgid "CLOSE statement not allowed in PURE procedure at %C"
 msgstr ""
 
-#: fortran/io.cc:2715
+#: fortran/io.cc:2716
 #, gcc-internal-format, gfc-internal-format
 msgid "CLOSE statement at %L requires a UNIT number"
 msgstr ""
 
-#: fortran/io.cc:2723
+#: fortran/io.cc:2724
 #, gcc-internal-format, gfc-internal-format
 msgid "UNIT number in CLOSE statement at %L must be non-negative"
 msgstr ""
 
-#: fortran/io.cc:2846 fortran/match.cc:3626
+#: fortran/io.cc:2847 fortran/match.cc:3742
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement not allowed in PURE procedure at %C"
 msgstr ""
 
-#: fortran/io.cc:2876
+#: fortran/io.cc:2877
 #, gcc-internal-format, gfc-internal-format
 msgid "UNIT number missing in statement at %L"
 msgstr ""
 
-#: fortran/io.cc:2887 fortran/io.cc:3377
+#: fortran/io.cc:2888 fortran/io.cc:3378
 #, gcc-internal-format, gfc-internal-format
 msgid "UNIT number in statement at %L must be non-negative"
 msgstr ""
 
-#: fortran/io.cc:2920
+#: fortran/io.cc:2921
 #, gcc-internal-format, gfc-internal-format
 msgid "FLUSH statement at %C"
 msgstr ""
 
-#: fortran/io.cc:2961
+#: fortran/io.cc:2962
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing format with default unit at %C"
 msgstr ""
 
-#: fortran/io.cc:2981
+#: fortran/io.cc:2982
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate UNIT specification at %C"
 msgstr ""
 
-#: fortran/io.cc:3055
+#: fortran/io.cc:3056
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate format specification at %C"
 msgstr ""
 
-#: fortran/io.cc:3096
+#: fortran/io.cc:3097
 #, gcc-internal-format
 msgid "Symbol %qs in namelist %qs is INTENT(IN) at %C"
 msgstr ""
 
-#: fortran/io.cc:3132
+#: fortran/io.cc:3133
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate NML specification at %C"
 msgstr ""
 
-#: fortran/io.cc:3141
+#: fortran/io.cc:3142
 #, gcc-internal-format
 msgid "Symbol %qs at %C must be a NAMELIST group name"
 msgstr ""
 
-#: fortran/io.cc:3207
+#: fortran/io.cc:3208
 #, gcc-internal-format, gfc-internal-format
 msgid "END tag at %C not allowed in output statement"
 msgstr ""
 
-#: fortran/io.cc:3303
+#: fortran/io.cc:3304
 #, gcc-internal-format, gfc-internal-format
 msgid "UNIT not specified at %L"
 msgstr ""
 
-#: fortran/io.cc:3310
+#: fortran/io.cc:3311
 #, gcc-internal-format, gfc-internal-format
 msgid "UNIT specification at %L must not be a character PARAMETER"
 msgstr ""
 
-#: fortran/io.cc:3323
+#: fortran/io.cc:3324
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "UNIT specification at %L must be an INTEGER expression or a CHARACTER "
 "variable"
 msgstr ""
 
-#: fortran/io.cc:3345
+#: fortran/io.cc:3346
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid form of WRITE statement at %L, UNIT required"
 msgstr ""
 
-#: fortran/io.cc:3356
+#: fortran/io.cc:3357
 #, gcc-internal-format, gfc-internal-format
 msgid "Internal unit with vector subscript at %L"
 msgstr ""
 
-#: fortran/io.cc:3370
+#: fortran/io.cc:3371
 #, gcc-internal-format, gfc-internal-format
 msgid "External IO UNIT cannot be an array at %L"
 msgstr ""
 
-#: fortran/io.cc:3400
+#: fortran/io.cc:3401
 #, gcc-internal-format
 msgid ""
 "NAMELIST %qs in READ statement at %L contains the symbol %qs which may not "
 "appear in a variable definition context"
 msgstr ""
 
-#: fortran/io.cc:3412
+#: fortran/io.cc:3413
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs in namelist %qs at %L is polymorphic and requires a "
 "defined input/output procedure"
 msgstr ""
 
-#: fortran/io.cc:3422 fortran/resolve.cc:17030
+#: fortran/io.cc:3423 fortran/resolve.cc:17803
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs in namelist %qs at %L with ALLOCATABLE or POINTER "
 "components"
 msgstr ""
 
-#: fortran/io.cc:3430
+#: fortran/io.cc:3431
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs in namelist %qs at %L has ALLOCATABLE or POINTER "
 "components and thus requires a defined input/output procedure"
 msgstr ""
 
-#: fortran/io.cc:3441
+#: fortran/io.cc:3442
 #, gcc-internal-format, gfc-internal-format
 msgid "Comma before i/o item list at %L"
 msgstr ""
 
-#: fortran/io.cc:3451
+#: fortran/io.cc:3452
 #, gcc-internal-format, gfc-internal-format
 msgid "ERR tag label %d at %L not defined"
 msgstr ""
 
-#: fortran/io.cc:3463
+#: fortran/io.cc:3464
 #, gcc-internal-format, gfc-internal-format
 msgid "END tag label %d at %L not defined"
 msgstr ""
 
-#: fortran/io.cc:3475
+#: fortran/io.cc:3476
 #, gcc-internal-format, gfc-internal-format
 msgid "EOR tag label %d at %L not defined"
 msgstr ""
 
-#: fortran/io.cc:3485
+#: fortran/io.cc:3486
 #, gcc-internal-format, gfc-internal-format
 msgid "FORMAT label %d at %L not defined"
 msgstr ""
 
-#: fortran/io.cc:3516
+#: fortran/io.cc:3517
 #, gcc-internal-format
 msgid "io_kind_name(): bad I/O-kind"
 msgstr ""
 
-#: fortran/io.cc:3605
+#: fortran/io.cc:3606
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in I/O iterator at %C"
 msgstr ""
 
-#: fortran/io.cc:3637
+#: fortran/io.cc:3638
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting variable in READ statement at %C"
 msgstr ""
 
-#: fortran/io.cc:3643
+#: fortran/io.cc:3644
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting variable or io-implied-do in READ statement at %L"
 msgstr ""
 
-#: fortran/io.cc:3652
+#: fortran/io.cc:3653
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting variable or io-implied-do at %L"
 msgstr ""
 
-#: fortran/io.cc:3661
+#: fortran/io.cc:3662
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected expression in %s statement at %C"
 msgstr ""
 
-#: fortran/io.cc:3666
+#: fortran/io.cc:3667
 #, gcc-internal-format, gfc-internal-format
 msgid "BOZ literal constant at %L cannot appear in an output IO list"
 msgstr ""
 
-#: fortran/io.cc:3814
+#: fortran/io.cc:3815
 #, gcc-internal-format, gfc-internal-format
 msgid "Internal file at %L with namelist"
 msgstr ""
 
-#: fortran/io.cc:3829
+#: fortran/io.cc:3830
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "IO UNIT in %s statement at %L must be an internal file in a PURE procedure"
 msgstr ""
 
-#: fortran/io.cc:3942
+#: fortran/io.cc:3920
+#, gcc-internal-format, gfc-internal-format
+msgid "BLANK= at %L not allowed in Fortran 95"
+msgstr ""
+
+#: fortran/io.cc:3943
 #, gcc-internal-format, gfc-internal-format
 msgid "PAD= at %L not allowed in Fortran 95"
 msgstr ""
 
-#: fortran/io.cc:4011
+#: fortran/io.cc:4012
 #, gcc-internal-format, gfc-internal-format
 msgid "DELIM= at %L not allowed in Fortran 95"
 msgstr ""
 
-#: fortran/io.cc:4185
+#: fortran/io.cc:4186
 #, gcc-internal-format, gfc-internal-format
 msgid "PRINT namelist at %C is an extension"
 msgstr ""
 
-#: fortran/io.cc:4207
+#: fortran/io.cc:4208
 #, gcc-internal-format, gfc-internal-format
 msgid "Comma after * at %C not allowed without I/O list"
 msgstr ""
 
-#: fortran/io.cc:4380
+#: fortran/io.cc:4395
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected comma in I/O list at %C"
 msgstr ""
 
-#: fortran/io.cc:4447
+#: fortran/io.cc:4462
 #, gcc-internal-format, gfc-internal-format
 msgid "PRINT statement at %C not allowed within PURE procedure"
 msgstr ""
 
-#: fortran/io.cc:4609
+#: fortran/io.cc:4624
 #, gcc-internal-format, gfc-internal-format
 msgid "NULL() near %L cannot appear in INQUIRE statement"
 msgstr ""
 
-#: fortran/io.cc:4621 fortran/io.cc:4683
+#: fortran/io.cc:4636 fortran/io.cc:4698
 #, gcc-internal-format, gfc-internal-format
 msgid "INQUIRE statement not allowed in PURE procedure at %C"
 msgstr ""
 
-#: fortran/io.cc:4649
+#: fortran/io.cc:4664
 #, gcc-internal-format, gfc-internal-format
 msgid "IOLENGTH tag invalid in INQUIRE statement at %C"
 msgstr ""
 
-#: fortran/io.cc:4659 fortran/trans-io.cc:1364
+#: fortran/io.cc:4674 fortran/trans-io.cc:1364
 #, gcc-internal-format, gfc-internal-format
 msgid "INQUIRE statement at %L cannot contain both FILE and UNIT specifiers"
 msgstr ""
 
-#: fortran/io.cc:4666
+#: fortran/io.cc:4681
 #, gcc-internal-format, gfc-internal-format
 msgid "INQUIRE statement at %L requires either FILE or UNIT specifier"
 msgstr ""
 
-#: fortran/io.cc:4676
+#: fortran/io.cc:4691
 #, gcc-internal-format, gfc-internal-format
 msgid "UNIT number in INQUIRE statement at %L cannot be %d"
 msgstr ""
 
-#: fortran/io.cc:4691
+#: fortran/io.cc:4706
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "INQUIRE statement at %L requires a PENDING= specifier with the ID= specifier"
 msgstr ""
 
-#: fortran/io.cc:4867
+#: fortran/io.cc:4882
 #, gcc-internal-format, gfc-internal-format
 msgid "WAIT at %C not allowed in Fortran 95"
 msgstr ""
 
-#: fortran/io.cc:4873
+#: fortran/io.cc:4888
 #, gcc-internal-format, gfc-internal-format
 msgid "WAIT statement not allowed in PURE procedure at %C"
 msgstr ""
@@ -80188,14 +84136,14 @@ msgstr ""
 msgid "check_charlen_present(): length not set"
 msgstr ""
 
-#: fortran/iresolve.cc:3218
+#: fortran/iresolve.cc:3235
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "GET_TEAM at %L needs USE of the intrinsic module ISO_FORTRAN_ENV to define "
 "its result type TEAM_TYPE"
 msgstr ""
 
-#: fortran/iresolve.cc:3349
+#: fortran/iresolve.cc:3366
 #, gcc-internal-format, gfc-internal-format
 msgid "TODO: unlimited polymorphic MOLD in TRANSFER intrinsic at %L"
 msgstr ""
@@ -80227,7 +84175,7 @@ msgstr ""
 msgid "Integer too large at %C"
 msgstr ""
 
-#: fortran/match.cc:553 fortran/parse.cc:1549
+#: fortran/match.cc:553 fortran/parse.cc:1557
 #, gcc-internal-format, gfc-internal-format
 msgid "Too many digits in statement label at %C"
 msgstr ""
@@ -80472,593 +84420,609 @@ msgstr ""
 msgid "The assumed rank target at %C must be contiguous"
 msgstr ""
 
-#: fortran/match.cc:2159
+#: fortran/match.cc:2170
 #, gcc-internal-format
 msgid "Expected %<)%> or %<,%> at %C"
 msgstr ""
 
-#: fortran/match.cc:2188
+#: fortran/match.cc:2199
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected association list at %C"
 msgstr ""
 
-#: fortran/match.cc:2197
+#: fortran/match.cc:2208
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected association at %C"
 msgstr ""
 
-#: fortran/match.cc:2209
+#: fortran/match.cc:2220
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after ASSOCIATE statement at %C"
 msgstr ""
 
-#: fortran/match.cc:2331
+#: fortran/match.cc:2342
 #, gcc-internal-format
 msgid "Derived type %qs at %L may not be ABSTRACT"
 msgstr ""
 
-#: fortran/match.cc:2410 fortran/match.cc:2482 fortran/match.cc:2505
+#: fortran/match.cc:2421 fortran/match.cc:2493 fortran/match.cc:2516
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid type-spec at %C"
 msgstr ""
 
-#: fortran/match.cc:2600
+#: fortran/match.cc:2622
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in FORALL iterator at %C"
 msgstr ""
 
-#: fortran/match.cc:2876
+#: fortran/match.cc:2665
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"Failed to create shadow variable symtree for DO CONCURRENT type-spec at %L"
+msgstr ""
+
+#: fortran/match.cc:2722
+#, gcc-internal-format, gfc-internal-format
+msgid "FORALL or DO CONCURRENT construct includes type specification at %L"
+msgstr ""
+
+#: fortran/match.cc:2729
+#, gcc-internal-format, gfc-internal-format
+msgid "Type-spec at %L must be an INTEGER type"
+msgstr ""
+
+#: fortran/match.cc:2991
 #, gcc-internal-format, gfc-internal-format
 msgid "DO CONCURRENT construct at %C"
 msgstr ""
 
-#: fortran/match.cc:2980
+#: fortran/match.cc:3095
 #, gcc-internal-format, gfc-internal-format
 msgid "DEFAULT (NONE) specified more than once in DO CONCURRENT at %C"
 msgstr ""
 
-#: fortran/match.cc:3069
+#: fortran/match.cc:3184
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected reduction operator or function name at %C"
 msgstr ""
 
-#: fortran/match.cc:3089 fortran/openmp.cc:2439 fortran/openmp.cc:2475
-#: fortran/openmp.cc:2885 fortran/openmp.cc:2910
+#: fortran/match.cc:3204 fortran/openmp.cc:2491 fortran/openmp.cc:2527
+#: fortran/openmp.cc:2933 fortran/openmp.cc:2963
 #, gcc-internal-format
 msgid "Expected %<:%> at %C"
 msgstr ""
 
-#: fortran/match.cc:3099
+#: fortran/match.cc:3214
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected variable name in reduction list at %C"
 msgstr ""
 
-#: fortran/match.cc:3118
+#: fortran/match.cc:3233
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected ',' or ')' in reduction list at %C"
 msgstr ""
 
-#: fortran/match.cc:3124
+#: fortran/match.cc:3239
 #, gcc-internal-format, gfc-internal-format
 msgid "REDUCE locality spec at %L"
 msgstr ""
 
-#: fortran/match.cc:3131
+#: fortran/match.cc:3246
 #, gcc-internal-format, gfc-internal-format
 msgid "Locality spec at %L"
 msgstr ""
 
-#: fortran/match.cc:3266
+#: fortran/match.cc:3382
 #, gcc-internal-format
 msgid "Name %qs in %s statement at %C is unknown"
 msgstr ""
 
-#: fortran/match.cc:3274
+#: fortran/match.cc:3390
 #, gcc-internal-format
 msgid "Name %qs in %s statement at %C is not a construct name"
 msgstr ""
 
-#: fortran/match.cc:3286
+#: fortran/match.cc:3402
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C leaves CRITICAL construct"
 msgstr ""
 
 #. F2008, C821 & C845.
-#: fortran/match.cc:3294
+#: fortran/match.cc:3410
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C leaves DO CONCURRENT construct"
 msgstr ""
 
-#: fortran/match.cc:3306
+#: fortran/match.cc:3422
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C is not within a construct"
 msgstr ""
 
-#: fortran/match.cc:3309
+#: fortran/match.cc:3425
 #, gcc-internal-format
 msgid "%s statement at %C is not within construct %qs"
 msgstr ""
 
-#: fortran/match.cc:3336
+#: fortran/match.cc:3452
 #, gcc-internal-format
 msgid "CYCLE statement at %C is not applicable to non-loop construct %qs"
 msgstr ""
 
-#: fortran/match.cc:3341
+#: fortran/match.cc:3457
 #, gcc-internal-format, gfc-internal-format
 msgid "EXIT statement with no do-construct-name at %C"
 msgstr ""
 
-#: fortran/match.cc:3347
+#: fortran/match.cc:3463
 #, gcc-internal-format
 msgid "%s statement at %C is not applicable to construct %qs"
 msgstr ""
 
-#: fortran/match.cc:3355
+#: fortran/match.cc:3471
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C leaving OpenACC structured block"
 msgstr ""
 
-#: fortran/match.cc:3356
+#: fortran/match.cc:3472
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C leaving OpenMP structured block"
 msgstr ""
 
-#: fortran/match.cc:3396
+#: fortran/match.cc:3512
 #, gcc-internal-format, gfc-internal-format
 msgid "EXIT statement at %C terminating !$ACC LOOP loop"
 msgstr ""
 
-#: fortran/match.cc:3402
+#: fortran/match.cc:3518
 #, gcc-internal-format, gfc-internal-format
 msgid "CYCLE statement at %C to non-innermost tiled !$ACC LOOP loop"
 msgstr ""
 
-#: fortran/match.cc:3404
+#: fortran/match.cc:3520
 #, gcc-internal-format, gfc-internal-format
 msgid "CYCLE statement at %C to non-innermost collapsed !$ACC LOOP loop"
 msgstr ""
 
-#: fortran/match.cc:3451
+#: fortran/match.cc:3567
 #, gcc-internal-format, gfc-internal-format
 msgid "EXIT statement at %C terminating !$OMP DO loop"
 msgstr ""
 
-#: fortran/match.cc:3456
+#: fortran/match.cc:3572
 #, gcc-internal-format, gfc-internal-format
 msgid "CYCLE statement at %C to non-innermost collapsed !$OMP DO loop"
 msgstr ""
 
-#: fortran/match.cc:3561
+#: fortran/match.cc:3677
 #, gcc-internal-format, gfc-internal-format
 msgid "Blank required in %s statement near %C"
 msgstr ""
 
-#: fortran/match.cc:3584
+#: fortran/match.cc:3700
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %C cannot be negative"
 msgstr ""
 
-#: fortran/match.cc:3590
+#: fortran/match.cc:3706
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %C contains too many digits"
 msgstr ""
 
-#: fortran/match.cc:3606
+#: fortran/match.cc:3722
 #, gcc-internal-format, gfc-internal-format
 msgid "QUIET= specifier for %s at %L"
 msgstr ""
 
-#: fortran/match.cc:3620
+#: fortran/match.cc:3736
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C in PURE procedure"
 msgstr ""
 
-#: fortran/match.cc:3636
+#: fortran/match.cc:3752
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement STOP at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.cc:3641
+#: fortran/match.cc:3757
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement STOP at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.cc:3653
+#: fortran/match.cc:3769
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "STOP code at %L must be a scalar CHARACTER constant or "
 "digit[digit[digit[digit[digit]]]]"
 msgstr ""
 
-#: fortran/match.cc:3665
+#: fortran/match.cc:3781
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "STOP code at %L must be a scalar default CHARACTER or INTEGER constant "
 "expression"
 msgstr ""
 
-#: fortran/match.cc:3672
+#: fortran/match.cc:3788
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be either INTEGER or CHARACTER type"
 msgstr ""
 
-#: fortran/match.cc:3679
+#: fortran/match.cc:3795
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be scalar"
 msgstr ""
 
-#: fortran/match.cc:3686
+#: fortran/match.cc:3802
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be default character KIND=%d"
 msgstr ""
 
-#: fortran/match.cc:3693
+#: fortran/match.cc:3809
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be default integer KIND=%d"
 msgstr ""
 
-#: fortran/match.cc:3705 fortran/resolve.cc:13545
+#: fortran/match.cc:3821 fortran/resolve.cc:14156
 #, gcc-internal-format, gfc-internal-format
 msgid "QUIET specifier at %L must be a scalar LOGICAL"
 msgstr ""
 
-#: fortran/match.cc:3755
+#: fortran/match.cc:3871
 #, gcc-internal-format, gfc-internal-format
 msgid "PAUSE statement at %C"
 msgstr ""
 
-#: fortran/match.cc:3776
+#: fortran/match.cc:3892
 #, gcc-internal-format, gfc-internal-format
 msgid "ERROR STOP statement at %C"
 msgstr ""
 
-#: fortran/match.cc:3802
+#: fortran/match.cc:3918
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement EVENT %s at %C in PURE procedure"
 msgstr ""
 
-#: fortran/match.cc:3817
+#: fortran/match.cc:3933
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement EVENT %s at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.cc:3824
+#: fortran/match.cc:3940
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement EVENT %s at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.cc:3854 fortran/match.cc:4341 fortran/match.cc:4553
-#: fortran/match.cc:5105 fortran/match.cc:5477
+#: fortran/match.cc:3970 fortran/match.cc:4457 fortran/match.cc:4669
+#: fortran/match.cc:5221 fortran/match.cc:5593
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant STAT tag found at %L"
 msgstr ""
 
-#: fortran/match.cc:3875 fortran/match.cc:4362 fortran/match.cc:4573
-#: fortran/match.cc:5137 fortran/match.cc:5502
+#: fortran/match.cc:3991 fortran/match.cc:4478 fortran/match.cc:4689
+#: fortran/match.cc:5253 fortran/match.cc:5618
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant ERRMSG tag found at %L"
 msgstr ""
 
-#: fortran/match.cc:3896
+#: fortran/match.cc:4012
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant UNTIL_COUNT tag found at %L"
 msgstr ""
 
-#: fortran/match.cc:3962
+#: fortran/match.cc:4078
 #, gcc-internal-format, gfc-internal-format
 msgid "EVENT POST statement at %C"
 msgstr ""
 
-#: fortran/match.cc:3972
+#: fortran/match.cc:4088
 #, gcc-internal-format, gfc-internal-format
 msgid "EVENT WAIT statement at %C"
 msgstr ""
 
-#: fortran/match.cc:3984
+#: fortran/match.cc:4100
 #, gcc-internal-format, gfc-internal-format
 msgid "FAIL IMAGE statement at %C"
 msgstr ""
 
-#: fortran/match.cc:4010
+#: fortran/match.cc:4126
 #, gcc-internal-format, gfc-internal-format
 msgid "FORM TEAM statement at %C"
 msgstr ""
 
-#: fortran/match.cc:4098
+#: fortran/match.cc:4214
 #, gcc-internal-format, gfc-internal-format
 msgid "CHANGE TEAM statement at %C"
 msgstr ""
 
-#: fortran/match.cc:4215
+#: fortran/match.cc:4331
 #, gcc-internal-format, gfc-internal-format
 msgid "SYNC TEAM statement at %C"
 msgstr ""
 
-#: fortran/match.cc:4289
+#: fortran/match.cc:4405
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement %s at %C in PURE procedure"
 msgstr ""
 
-#: fortran/match.cc:4304
+#: fortran/match.cc:4420
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement %s at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.cc:4311
+#: fortran/match.cc:4427
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement %s at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.cc:4383
+#: fortran/match.cc:4499
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant ACQUIRED_LOCK tag found at %L"
 msgstr ""
 
-#: fortran/match.cc:4448
+#: fortran/match.cc:4564
 #, gcc-internal-format, gfc-internal-format
 msgid "LOCK statement at %C"
 msgstr ""
 
-#: fortran/match.cc:4458
+#: fortran/match.cc:4574
 #, gcc-internal-format, gfc-internal-format
 msgid "UNLOCK statement at %C"
 msgstr ""
 
-#: fortran/match.cc:4483
+#: fortran/match.cc:4599
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement SYNC at %C in PURE procedure"
 msgstr ""
 
-#: fortran/match.cc:4489
+#: fortran/match.cc:4605
 #, gcc-internal-format, gfc-internal-format
 msgid "SYNC statement at %C"
 msgstr ""
 
-#: fortran/match.cc:4501
+#: fortran/match.cc:4617
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement SYNC at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.cc:4507
+#: fortran/match.cc:4623
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement SYNC at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.cc:4687
+#: fortran/match.cc:4803
 #, gcc-internal-format, gfc-internal-format
 msgid "ASSIGN statement at %C"
 msgstr ""
 
-#: fortran/match.cc:4731
+#: fortran/match.cc:4847
 #, gcc-internal-format, gfc-internal-format
 msgid "Assigned GOTO statement at %C"
 msgstr ""
 
-#: fortran/match.cc:4775 fortran/match.cc:4826
+#: fortran/match.cc:4891 fortran/match.cc:4942
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement label list in GOTO at %C cannot be empty"
 msgstr ""
 
-#: fortran/match.cc:4836
+#: fortran/match.cc:4952
 #, gcc-internal-format, gfc-internal-format
 msgid "Computed GOTO at %C"
 msgstr ""
 
-#: fortran/match.cc:4911
+#: fortran/match.cc:5027
 #, gcc-internal-format, gfc-internal-format
 msgid "Error in type-spec at %L"
 msgstr ""
 
-#: fortran/match.cc:4924
+#: fortran/match.cc:5040
 #, gcc-internal-format, gfc-internal-format
 msgid "typespec in ALLOCATE at %L"
 msgstr ""
 
-#: fortran/match.cc:4947
+#: fortran/match.cc:5063
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The type parameter spec list in the type-spec at %L cannot contain DEFERRED "
 "parameters"
 msgstr ""
 
-#: fortran/match.cc:4977 fortran/match.cc:5415
+#: fortran/match.cc:5093 fortran/match.cc:5531
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected constant at %C"
 msgstr ""
 
-#: fortran/match.cc:4987
+#: fortran/match.cc:5103
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad allocate-object at %C for a PURE procedure"
 msgstr ""
 
-#: fortran/match.cc:5002
+#: fortran/match.cc:5118
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible allocate-object at %C for CHARACTER type-spec at %L"
 msgstr ""
 
-#: fortran/match.cc:5024
+#: fortran/match.cc:5140
 #, gcc-internal-format, gfc-internal-format
 msgid "ALLOCATE of coarray at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.cc:5029
+#: fortran/match.cc:5145
 #, gcc-internal-format, gfc-internal-format
 msgid "ALLOCATE of coarray at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.cc:5051
+#: fortran/match.cc:5167
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocate-object at %L is neither a data pointer nor an allocatable variable"
 msgstr ""
 
-#: fortran/match.cc:5063
+#: fortran/match.cc:5179
 #, gcc-internal-format, gfc-internal-format
 msgid "Type of entity at %L is type incompatible with typespec"
 msgstr ""
 
-#: fortran/match.cc:5071
+#: fortran/match.cc:5187
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Kind type parameter for entity at %L differs from the kind type parameter of "
 "the typespec"
 msgstr ""
 
-#: fortran/match.cc:5088
+#: fortran/match.cc:5204
 #, gcc-internal-format, gfc-internal-format
 msgid "Shape specification for allocatable scalar at %C"
 msgstr ""
 
-#: fortran/match.cc:5115
+#: fortran/match.cc:5231
 #, gcc-internal-format, gfc-internal-format
 msgid "STAT tag at %L cannot be a constant"
 msgstr ""
 
-#: fortran/match.cc:5131
+#: fortran/match.cc:5247
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG tag at %L"
 msgstr ""
 
-#: fortran/match.cc:5154
+#: fortran/match.cc:5270
 #, gcc-internal-format, gfc-internal-format
 msgid "SOURCE tag at %L"
 msgstr ""
 
-#: fortran/match.cc:5160
+#: fortran/match.cc:5276
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant SOURCE tag found at %L"
 msgstr ""
 
-#: fortran/match.cc:5167
+#: fortran/match.cc:5283
 #, gcc-internal-format, gfc-internal-format
 msgid "SOURCE tag at %L conflicts with the typespec at %L"
 msgstr ""
 
-#: fortran/match.cc:5173
+#: fortran/match.cc:5289
 #, gcc-internal-format, gfc-internal-format
 msgid "SOURCE tag at %L with more than a single allocate object"
 msgstr ""
 
-#: fortran/match.cc:5191
+#: fortran/match.cc:5307
 #, gcc-internal-format, gfc-internal-format
 msgid "MOLD tag at %L"
 msgstr ""
 
-#: fortran/match.cc:5197
+#: fortran/match.cc:5313
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant MOLD tag found at %L"
 msgstr ""
 
-#: fortran/match.cc:5204
+#: fortran/match.cc:5320
 #, gcc-internal-format, gfc-internal-format
 msgid "MOLD tag at %L conflicts with the typespec at %L"
 msgstr ""
 
-#: fortran/match.cc:5230
+#: fortran/match.cc:5346
 #, gcc-internal-format, gfc-internal-format
 msgid "MOLD tag at %L conflicts with SOURCE tag at %L"
 msgstr ""
 
-#: fortran/match.cc:5238
+#: fortran/match.cc:5354
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocate-object at %L with a deferred type parameter requires either a type-"
 "spec or SOURCE tag or a MOLD tag"
 msgstr ""
 
-#: fortran/match.cc:5250
+#: fortran/match.cc:5366
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Unlimited polymorphic allocate-object at %L requires either a type-spec or "
 "SOURCE tag or a MOLD tag"
 msgstr ""
 
-#: fortran/match.cc:5317
+#: fortran/match.cc:5433
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer object at %C shall not be coindexed"
 msgstr ""
 
-#: fortran/match.cc:5332
+#: fortran/match.cc:5448
 #, gcc-internal-format, gfc-internal-format
 msgid "NULLIFY does not allow bounds remapping for pointer object at %C"
 msgstr ""
 
-#: fortran/match.cc:5427
+#: fortran/match.cc:5543
 #, gcc-internal-format, gfc-internal-format
 msgid "Illegal allocate-object at %C for a PURE procedure"
 msgstr ""
 
-#: fortran/match.cc:5437
+#: fortran/match.cc:5553
 #, gcc-internal-format, gfc-internal-format
 msgid "DEALLOCATE of coarray at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.cc:5444
+#: fortran/match.cc:5560
 #, gcc-internal-format, gfc-internal-format
 msgid "DEALLOCATE of coarray at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.cc:5460
+#: fortran/match.cc:5576
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocate-object at %C is not a nonprocedure pointer nor an allocatable "
 "variable"
 msgstr ""
 
-#: fortran/match.cc:5497
+#: fortran/match.cc:5613
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG at %L"
 msgstr ""
 
-#: fortran/match.cc:5554
+#: fortran/match.cc:5670
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement RETURN at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.cc:5560
+#: fortran/match.cc:5676
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement RETURN at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.cc:5569
+#: fortran/match.cc:5685
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement RETURN at %C in CHANGE TEAM-END TEAM block"
 msgstr ""
 
-#: fortran/match.cc:5578
+#: fortran/match.cc:5694
 #, gcc-internal-format, gfc-internal-format
 msgid "Alternate RETURN statement at %C is only allowed within a SUBROUTINE"
 msgstr ""
 
-#: fortran/match.cc:5609
+#: fortran/match.cc:5725
 #, gcc-internal-format, gfc-internal-format
 msgid "RETURN statement in main program at %C"
 msgstr ""
 
-#: fortran/match.cc:5637
+#: fortran/match.cc:5753
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected component reference at %C"
 msgstr ""
 
-#: fortran/match.cc:5646
+#: fortran/match.cc:5762
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after CALL at %C"
 msgstr ""
 
-#: fortran/match.cc:5657
+#: fortran/match.cc:5773
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected type-bound procedure or procedure pointer component at %C"
 msgstr ""
 
-#: fortran/match.cc:5755
+#: fortran/match.cc:5871
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "A BOZ literal constant at %L cannot appear as an actual argument in a "
 "subroutine reference"
 msgstr ""
 
-#: fortran/match.cc:5896
+#: fortran/match.cc:6012
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in common block name at %C"
 msgstr ""
@@ -81066,69 +85030,69 @@ msgstr ""
 #. If we find an error, just print it and continue,
 #. cause it's just semantic, and we can see if there
 #. are more errors.
-#: fortran/match.cc:5971
+#: fortran/match.cc:6087
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L in common block %qs at %C must be declared with a C "
 "interoperable kind since common block %qs is bind(c)"
 msgstr ""
 
-#: fortran/match.cc:5980
+#: fortran/match.cc:6096
 #, gcc-internal-format
 msgid ""
 "Variable %qs in common block %qs at %C cannot be bind(c) since it is not "
 "global"
 msgstr ""
 
-#: fortran/match.cc:5987
+#: fortran/match.cc:6103
 #, gcc-internal-format
 msgid "Symbol %qs at %C is already in a COMMON block"
 msgstr ""
 
-#: fortran/match.cc:5995
+#: fortran/match.cc:6111
 #, gcc-internal-format
 msgid "Initialized symbol %qs at %C can only be COMMON in BLOCK DATA"
 msgstr ""
 
-#: fortran/match.cc:6006
+#: fortran/match.cc:6122
 #, gcc-internal-format
 msgid ""
 "Symbol %qs at %C is USE associated from module %qs and cannot occur in COMMON"
 msgstr ""
 
-#: fortran/match.cc:6021
+#: fortran/match.cc:6137
 #, gcc-internal-format
 msgid "Array specification for symbol %qs in COMMON at %C must be explicit"
 msgstr ""
 
-#: fortran/match.cc:6028
+#: fortran/match.cc:6144
 #, gcc-internal-format
 msgid "Symbol %qs in COMMON at %C cannot be a coarray"
 msgstr ""
 
-#: fortran/match.cc:6038
+#: fortran/match.cc:6154
 #, gcc-internal-format
 msgid "Symbol %qs in COMMON at %C cannot be a POINTER array"
 msgstr ""
 
-#: fortran/match.cc:6084
+#: fortran/match.cc:6200
 #, gcc-internal-format
 msgid ""
 "Symbol %qs, in COMMON block %qs at %C is being indirectly equivalenced to "
 "another COMMON block %qs"
 msgstr ""
 
-#: fortran/match.cc:6146
+#: fortran/match.cc:6262
 #, gcc-internal-format, gfc-internal-format
 msgid "BLOCK DATA construct at %L"
 msgstr ""
 
-#: fortran/match.cc:6259
+#: fortran/match.cc:6375
 #, gcc-internal-format
 msgid "Namelist group name %qs at %C already has a basic type of %s"
 msgstr ""
 
-#: fortran/match.cc:6269
+#: fortran/match.cc:6385
 #, gcc-internal-format
 msgid ""
 "Namelist group name %qs at %C already is USE associated and cannot be "
@@ -81138,197 +85102,197 @@ msgstr ""
 #. It is required that members of a namelist be declared
 #. before the namelist.  We check this by checking if the
 #. symbol has a defined type for IMPLICIT NONE.
-#: fortran/match.cc:6294
+#: fortran/match.cc:6410
 #, gcc-internal-format
 msgid ""
 "Symbol %qs in namelist %qs at %C must be declared before the namelist is "
 "declared."
 msgstr ""
 
-#: fortran/match.cc:6314
+#: fortran/match.cc:6430
 #, gcc-internal-format
 msgid "Derived type %qs at %L conflicts with namelist object %qs at %C"
 msgstr ""
 
-#: fortran/match.cc:6334
+#: fortran/match.cc:6450
 #, gcc-internal-format
 msgid "Assumed size array %qs in namelist %qs at %C is not allowed"
 msgstr ""
 
-#: fortran/match.cc:6477
+#: fortran/match.cc:6593
 #, gcc-internal-format, gfc-internal-format
 msgid "Derived type component %C is not a permitted EQUIVALENCE member"
 msgstr ""
 
-#: fortran/match.cc:6485
+#: fortran/match.cc:6601
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference in EQUIVALENCE at %C cannot be an array section"
 msgstr ""
 
-#: fortran/match.cc:6518
+#: fortran/match.cc:6634
 #, gcc-internal-format, gfc-internal-format
 msgid "EQUIVALENCE at %C requires two or more objects"
 msgstr ""
 
-#: fortran/match.cc:6532
+#: fortran/match.cc:6648
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Attempt to indirectly overlap COMMON blocks %s and %s by EQUIVALENCE at %C"
 msgstr ""
 
-#: fortran/match.cc:6545
+#: fortran/match.cc:6661
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting a comma in EQUIVALENCE at %C"
 msgstr ""
 
-#: fortran/match.cc:6550
+#: fortran/match.cc:6666
 #, gcc-internal-format, gfc-internal-format
 msgid "EQUIVALENCE statement at %C"
 msgstr ""
 
-#: fortran/match.cc:6643
+#: fortran/match.cc:6759
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid use of statement function argument at %L"
 msgstr ""
 
-#: fortran/match.cc:6710
+#: fortran/match.cc:6826
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement function at %L is recursive"
 msgstr ""
 
-#: fortran/match.cc:6716
+#: fortran/match.cc:6832
 #, gcc-internal-format
 msgid "Statement function %qs at %L conflicts with function name"
 msgstr ""
 
-#: fortran/match.cc:6730
+#: fortran/match.cc:6846
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement function at %L cannot appear within an INTERFACE"
 msgstr ""
 
-#: fortran/match.cc:6735
+#: fortran/match.cc:6851
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement function at %C"
 msgstr ""
 
-#: fortran/match.cc:6862 fortran/match.cc:6880 fortran/match.cc:6901
+#: fortran/match.cc:6978 fortran/match.cc:6996 fortran/match.cc:7017
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE selector at %L cannot be %s"
 msgstr ""
 
-#: fortran/match.cc:6911 fortran/match.cc:6917
+#: fortran/match.cc:7027 fortran/match.cc:7033
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE selector at %L must be scalar"
 msgstr ""
 
-#: fortran/match.cc:6926
+#: fortran/match.cc:7042
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected initialization expression in CASE at %C"
 msgstr ""
 
-#: fortran/match.cc:6958
+#: fortran/match.cc:7074
 #, gcc-internal-format
 msgid "Expected block name %qs of SELECT construct at %C"
 msgstr ""
 
-#: fortran/match.cc:7338
+#: fortran/match.cc:7460
 #, gcc-internal-format, gfc-internal-format
 msgid "SELECT TYPE at %C cannot appear in this scope"
 msgstr ""
 
-#: fortran/match.cc:7366
+#: fortran/match.cc:7488
 #, gcc-internal-format, gfc-internal-format
 msgid "parse error in SELECT TYPE statement at %C"
 msgstr ""
 
-#: fortran/match.cc:7391
+#: fortran/match.cc:7513
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Selector in SELECT TYPE at %C is not a named variable; use associate-name=>"
 msgstr ""
 
-#: fortran/match.cc:7579
+#: fortran/match.cc:7701
 #, gcc-internal-format, gfc-internal-format
 msgid "SELECT RANK statement at %C"
 msgstr ""
 
-#: fortran/match.cc:7620 fortran/match.cc:7674
+#: fortran/match.cc:7742 fortran/match.cc:7796
 #, gcc-internal-format, gfc-internal-format
 msgid "The SELECT RANK selector at %C must be an assumed rank variable"
 msgstr ""
 
-#: fortran/match.cc:7684
+#: fortran/match.cc:7806
 #, gcc-internal-format, gfc-internal-format
 msgid "parse error in SELECT RANK statement at %C"
 msgstr ""
 
-#: fortran/match.cc:7720
+#: fortran/match.cc:7842
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected CASE statement at %C"
 msgstr ""
 
-#: fortran/match.cc:7772
+#: fortran/match.cc:7894
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in CASE specification at %C"
 msgstr ""
 
-#: fortran/match.cc:7790
+#: fortran/match.cc:7912
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected TYPE IS statement at %C"
 msgstr ""
 
-#: fortran/match.cc:7822
+#: fortran/match.cc:7944
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The type-spec shall not specify a sequence derived type or a type with the "
 "BIND attribute in SELECT TYPE at %C [F2003:C815]"
 msgstr ""
 
-#: fortran/match.cc:7833
+#: fortran/match.cc:7953
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "All the LEN type parameters in the TYPE IS statement at %C must be ASSUMED"
 msgstr ""
 
-#: fortran/match.cc:7844
+#: fortran/match.cc:7966
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in TYPE IS specification at %C"
 msgstr ""
 
-#: fortran/match.cc:7920
+#: fortran/match.cc:8042
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in CLASS IS specification at %C"
 msgstr ""
 
-#: fortran/match.cc:7940
+#: fortran/match.cc:8062
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected RANK statement at %C"
 msgstr ""
 
-#: fortran/match.cc:7986
+#: fortran/match.cc:8108
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The SELECT RANK CASE expression at %C must be a scalar, integer constant"
 msgstr ""
 
-#: fortran/match.cc:7995
+#: fortran/match.cc:8117
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The value of the SELECT RANK CASE expression at %C must not be less than "
 "zero or greater than %d"
 msgstr ""
 
-#: fortran/match.cc:8022
+#: fortran/match.cc:8144
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in RANK specification at %C"
 msgstr ""
 
-#: fortran/match.cc:8144
+#: fortran/match.cc:8266
 #, gcc-internal-format, gfc-internal-format
 msgid "ELSEWHERE statement at %C not enclosed in WHERE block"
 msgstr ""
 
-#: fortran/match.cc:8182
+#: fortran/match.cc:8304
 #, gcc-internal-format
 msgid "Label %qs at %C doesn't match WHERE label %qs"
 msgstr ""
@@ -81343,25 +85307,35 @@ msgstr ""
 msgid "The name %qs cannot be used as a defined operator at %C"
 msgstr ""
 
-#: fortran/matchexp.cc:174
+#: fortran/matchexp.cc:165
+#, gcc-internal-format, gfc-internal-format
+msgid "Conditional expression at %L"
+msgstr ""
+
+#: fortran/matchexp.cc:183
+#, gcc-internal-format, gfc-internal-format
+msgid "Expected ':' in conditional expression at %C"
+msgstr ""
+
+#: fortran/matchexp.cc:231
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected a right parenthesis in expression at %C"
 msgstr ""
 
-#: fortran/matchexp.cc:282
+#: fortran/matchexp.cc:337
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected exponent in expression at %C"
 msgstr ""
 
-#: fortran/matchexp.cc:320 fortran/matchexp.cc:325 fortran/matchexp.cc:429
-#: fortran/matchexp.cc:434
+#: fortran/matchexp.cc:375 fortran/matchexp.cc:380 fortran/matchexp.cc:484
+#: fortran/matchexp.cc:489
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Extension: Unary operator following arithmetic operator (use parentheses) at "
 "%C"
 msgstr ""
 
-#: fortran/matchexp.cc:666
+#: fortran/matchexp.cc:721
 #, gcc-internal-format
 msgid "match_level_4(): Bad operator"
 msgstr ""
@@ -81371,12 +85345,12 @@ msgstr ""
 msgid "gfc_basic_typename(): Undefined type"
 msgstr ""
 
-#: fortran/misc.cc:218
+#: fortran/misc.cc:221
 #, gcc-internal-format
 msgid "gfc_typename(): Undefined type"
 msgstr ""
 
-#: fortran/misc.cc:322
+#: fortran/misc.cc:325
 #, gcc-internal-format
 msgid "gfc_code2string(): Bad code"
 msgstr ""
@@ -81488,1232 +85462,1335 @@ msgstr ""
 msgid "unquote_string(): got bad string"
 msgstr ""
 
-#: fortran/module.cc:2996
+#: fortran/module.cc:3015
 #, gcc-internal-format
 msgid "mio_array_ref(): Unknown array ref"
 msgstr ""
 
-#: fortran/module.cc:5419
+#: fortran/module.cc:5446
 #, gcc-internal-format, gfc-internal-format
 msgid "Ambiguous !$OMP DECLARE REDUCTION from module %s at %L"
 msgstr ""
 
-#: fortran/module.cc:5422
+#: fortran/module.cc:5449
 #, gcc-internal-format, gfc-internal-format
 msgid "Previous !$OMP DECLARE REDUCTION from module %s at %L"
 msgstr ""
 
-#: fortran/module.cc:5616
+#: fortran/module.cc:5643
 #, gcc-internal-format
 msgid ""
 "%qs of module %qs, imported at %C, is also the name of the current program "
 "unit"
 msgstr ""
 
-#: fortran/module.cc:5753
+#: fortran/module.cc:5780
 #, gcc-internal-format
 msgid ""
 "Mismatch in components of derived type %qs from %qs at %C: expecting %qs, "
 "but got %qs"
 msgstr ""
 
-#: fortran/module.cc:6032
+#: fortran/module.cc:6074
 #, gcc-internal-format
 msgid "Symbol %qs referenced at %L not found in module %qs"
 msgstr ""
 
-#: fortran/module.cc:6039
+#: fortran/module.cc:6081
 #, gcc-internal-format
 msgid "User operator %qs referenced at %L not found in module %qs"
 msgstr ""
 
-#: fortran/module.cc:6044
+#: fortran/module.cc:6086
 #, gcc-internal-format
 msgid "Intrinsic operator %qs referenced at %L not found in module %qs"
 msgstr ""
 
-#: fortran/module.cc:6280
+#: fortran/module.cc:6323
 #, gcc-internal-format
 msgid "write_symbol(): bad module symbol %qs"
 msgstr ""
 
-#: fortran/module.cc:6624
+#: fortran/module.cc:6667
 #, gcc-internal-format
 msgid "write_symtree(): Symbol not written"
 msgstr ""
 
-#: fortran/module.cc:6814
+#: fortran/module.cc:6857
 #, gcc-internal-format
 msgid "Cannot open module file %qs for writing at %C: %s"
 msgstr ""
 
-#: fortran/module.cc:6835
+#: fortran/module.cc:6878
 #, gcc-internal-format
 msgid "Error writing module file %qs for writing: %s"
 msgstr ""
 
-#: fortran/module.cc:6846
+#: fortran/module.cc:6889
 #, gcc-internal-format
 msgid "Cannot delete module file %qs: %s"
 msgstr ""
 
-#: fortran/module.cc:6849
+#: fortran/module.cc:6892
 #, gcc-internal-format
 msgid "Cannot rename module file %qs to %qs: %s"
 msgstr ""
 
-#: fortran/module.cc:6855
+#: fortran/module.cc:6898
 #, gcc-internal-format
 msgid "Cannot delete temporary module file %qs: %s"
 msgstr ""
 
-#: fortran/module.cc:6912
+#: fortran/module.cc:6955
 #, gcc-internal-format
 msgid "Symbol %qs at %C already declared"
 msgstr ""
 
-#: fortran/module.cc:6983
+#: fortran/module.cc:7026
 #, gcc-internal-format, gfc-internal-format
 msgid "import_iso_c_binding_module(): Unable to create symbol for %s"
 msgstr ""
 
-#: fortran/module.cc:7096 fortran/module.cc:7459
+#: fortran/module.cc:7139 fortran/module.cc:7505
 #, gcc-internal-format
 msgid "The symbol %qs, referenced at %L, is not in the selected standard"
 msgstr ""
 
-#: fortran/module.cc:7229
+#: fortran/module.cc:7272
 #, gcc-internal-format
 msgid "Symbol %qs referenced at %L not found in intrinsic module ISO_C_BINDING"
 msgstr ""
 
-#: fortran/module.cc:7250 fortran/module.cc:7283 fortran/module.cc:7325
+#: fortran/module.cc:7293 fortran/module.cc:7371
 #, gcc-internal-format
 msgid "Symbol %qs already declared"
 msgstr ""
 
-#: fortran/module.cc:7444
+#: fortran/module.cc:7327
+#, gcc-internal-format
+msgid "Symbol %qs already declared at %L conflicts with symbol in %qs at %C"
+msgstr ""
+
+#: fortran/module.cc:7490
 #, gcc-internal-format
 msgid ""
 "Use of intrinsic module %qs at %C conflicts with non-intrinsic module name "
 "used previously"
 msgstr ""
 
-#: fortran/module.cc:7466
+#: fortran/module.cc:7512
 #, gcc-internal-format
 msgid ""
 "Use of the NUMERIC_STORAGE_SIZE named constant from intrinsic module "
 "ISO_FORTRAN_ENV at %L is incompatible with option %qs"
 msgstr ""
 
-#: fortran/module.cc:7543
+#: fortran/module.cc:7589
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Use of the NUMERIC_STORAGE_SIZE named constant from intrinsic module "
 "ISO_FORTRAN_ENV at %C is incompatible with option %s"
 msgstr ""
 
-#: fortran/module.cc:7603
+#: fortran/module.cc:7649
 #, gcc-internal-format
 msgid ""
 "Symbol %qs referenced at %L not found in intrinsic module ISO_FORTRAN_ENV"
 msgstr ""
 
-#: fortran/module.cc:7629
+#: fortran/module.cc:7675
 #, gcc-internal-format, gfc-internal-format
 msgid "USE statement at %C has no ONLY qualifier"
 msgstr ""
 
-#: fortran/module.cc:7658
+#: fortran/module.cc:7704
 #, gcc-internal-format, gfc-internal-format
 msgid "ISO_FORTRAN_ENV intrinsic module at %C"
 msgstr ""
 
-#: fortran/module.cc:7670
+#: fortran/module.cc:7716
 #, gcc-internal-format, gfc-internal-format
 msgid "ISO_C_BINDING module at %C"
 msgstr ""
 
-#: fortran/module.cc:7683
+#: fortran/module.cc:7729
 #, gcc-internal-format
 msgid "Cannot find an intrinsic module named %qs at %C"
 msgstr ""
 
-#: fortran/module.cc:7689
+#: fortran/module.cc:7735
 #, gcc-internal-format, gfc-internal-format
 msgid "IEEE_FEATURES module at %C"
 msgstr ""
 
-#: fortran/module.cc:7695
+#: fortran/module.cc:7741
 #, gcc-internal-format, gfc-internal-format
 msgid "IEEE_EXCEPTIONS module at %C"
 msgstr ""
 
-#: fortran/module.cc:7701
+#: fortran/module.cc:7747
 #, gcc-internal-format, gfc-internal-format
 msgid "IEEE_ARITHMETIC module at %C"
 msgstr ""
 
-#: fortran/module.cc:7711
+#: fortran/module.cc:7757
 #, gcc-internal-format
 msgid "Cannot open module file %qs for reading at %C: %s"
 msgstr ""
 
-#: fortran/module.cc:7714
+#: fortran/module.cc:7760
 #, gcc-internal-format
 msgid ""
 "Module file %qs has not been generated, either because the module does not "
 "contain a MODULE PROCEDURE or there is an error in the module."
 msgstr ""
 
-#: fortran/module.cc:7725
+#: fortran/module.cc:7771
 #, gcc-internal-format
 msgid ""
 "Use of non-intrinsic module %qs at %C conflicts with intrinsic module name "
 "used previously"
 msgstr ""
 
-#: fortran/module.cc:7748
+#: fortran/module.cc:7794
 #, gcc-internal-format
 msgid "File %qs opened at %C is not a GNU Fortran module file"
 msgstr ""
 
-#: fortran/module.cc:7769
+#: fortran/module.cc:7815
 #, gcc-internal-format
 msgid ""
 "Cannot read module file %qs opened at %C, because it was created by a "
 "different version of GNU Fortran"
 msgstr ""
 
-#: fortran/module.cc:7786
+#: fortran/module.cc:7832
 #, gcc-internal-format
 msgid "Cannot USE a submodule that is currently built"
 msgstr ""
 
-#: fortran/module.cc:7788
+#: fortran/module.cc:7834
 #, gcc-internal-format
 msgid "Cannot USE a module that is currently built"
 msgstr ""
 
-#: fortran/openmp.cc:162 fortran/openmp.cc:8170
+#: fortran/openmp.cc:173 fortran/openmp.cc:8433
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk at %C"
 msgstr ""
 
-#: fortran/openmp.cc:464
+#: fortran/openmp.cc:476
 #, gcc-internal-format
 msgid "%<omp_all_memory%> at %L not permitted in this clause"
 msgstr ""
 
-#: fortran/openmp.cc:509
+#: fortran/openmp.cc:521
 #, gcc-internal-format, gfc-internal-format
 msgid "List item shall not be coindexed at %L"
 msgstr ""
 
-#: fortran/openmp.cc:535
+#: fortran/openmp.cc:547
 #, gcc-internal-format
 msgid ""
 "%qs at %L is part of the common block %</%s/%> and may only be specificed "
 "implicitly via the named common block"
 msgstr ""
 
-#: fortran/openmp.cc:562
+#: fortran/openmp.cc:574
 #, gcc-internal-format
 msgid "COMMON block %</%s/%> not found at %L"
 msgstr ""
 
-#: fortran/openmp.cc:606 fortran/openmp.cc:696
+#: fortran/openmp.cc:618 fortran/openmp.cc:708
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in OpenMP variable list at %C"
 msgstr ""
 
-#: fortran/openmp.cc:668 fortran/openmp.cc:1004 fortran/openmp.cc:7203
+#: fortran/openmp.cc:680 fortran/openmp.cc:1016
 #, gcc-internal-format, gfc-internal-format
 msgid "COMMON block /%s/ not found at %C"
 msgstr ""
 
-#: fortran/openmp.cc:723
+#: fortran/openmp.cc:735
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in OpenMP detach clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:755
+#: fortran/openmp.cc:767
 #, gcc-internal-format
 msgid ""
 "%<omp_all_memory%> used with dependence-type other than OUT or INOUT at %L"
 msgstr ""
 
-#: fortran/openmp.cc:808
+#: fortran/openmp.cc:820
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in OpenMP SINK dependence-type list at %C"
 msgstr ""
 
-#: fortran/openmp.cc:871
+#: fortran/openmp.cc:883
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in OpenMP expression list at %C"
 msgstr ""
 
-#: fortran/openmp.cc:873
+#: fortran/openmp.cc:885
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in OpenACC expression list at %C"
 msgstr ""
 
-#: fortran/openmp.cc:940
+#: fortran/openmp.cc:952
 #, gcc-internal-format
 msgid "Unexpected OpenACC parallelism."
 msgstr ""
 
-#: fortran/openmp.cc:972
+#: fortran/openmp.cc:984
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable at %C is an element of a COMMON block"
 msgstr ""
 
-#: fortran/openmp.cc:1032
+#: fortran/openmp.cc:1044
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$ACC DECLARE at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1042
+#: fortran/openmp.cc:1054
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$ACC DECLARE list at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1306
+#: fortran/openmp.cc:1320
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected INTEGER type at %L"
 msgstr ""
 
-#: fortran/openmp.cc:1320
+#: fortran/openmp.cc:1334
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected identifier at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1325
+#: fortran/openmp.cc:1339
 #, gcc-internal-format
 msgid "Same identifier %qs specified again at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1352
+#: fortran/openmp.cc:1366
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected range-specification at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1462
+#: fortran/openmp.cc:1476
 #, gcc-internal-format, gfc-internal-format
 msgid "Comma expected at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1574
+#: fortran/openmp.cc:1500
+#, gcc-internal-format
+msgid "%<-%> operator at %C for reductions deprecated in OpenMP 5.2"
+msgstr ""
+
+#: fortran/openmp.cc:1594
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP DECLARE REDUCTION %s not found at %L"
 msgstr ""
 
-#: fortran/openmp.cc:1634
+#: fortran/openmp.cc:1654
 #, gcc-internal-format, gfc-internal-format
 msgid "Unknown directive at %L"
 msgstr ""
 
-#: fortran/openmp.cc:1636
+#: fortran/openmp.cc:1656
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid combined or composite directive at %L"
 msgstr ""
 
-#: fortran/openmp.cc:1644
+#: fortran/openmp.cc:1664
 #, gcc-internal-format
 msgid ""
 "Invalid %qs directive at %L in %s clause: declarative, informational, and "
 "meta directives not permitted"
 msgstr ""
 
-#: fortran/openmp.cc:1676 fortran/openmp.cc:2031 fortran/openmp.cc:2056
-#: fortran/openmp.cc:2125 fortran/openmp.cc:2179 fortran/openmp.cc:2204
-#: fortran/openmp.cc:2226 fortran/openmp.cc:6968
+#: fortran/openmp.cc:1696 fortran/openmp.cc:2076 fortran/openmp.cc:2101
+#: fortran/openmp.cc:2170 fortran/openmp.cc:2224 fortran/openmp.cc:2249
+#: fortran/openmp.cc:2271 fortran/openmp.cc:7106
 #, gcc-internal-format
 msgid "Expected %<,%> or %<)%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1702 fortran/openmp.cc:1712
+#: fortran/openmp.cc:1722 fortran/openmp.cc:1732
 #, gcc-internal-format
 msgid ""
 "%qs directive mentioned multiple times in %s clause in %s directive at %L"
 msgstr ""
 
-#: fortran/openmp.cc:1720
+#: fortran/openmp.cc:1740
 #, gcc-internal-format
 msgid ""
 "%qs directive mentioned both times in ABSENT and CONTAINS clauses in %s "
 "directive at %L"
 msgstr ""
 
-#: fortran/openmp.cc:1810
+#: fortran/openmp.cc:1836
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate %s modifier at %L in USES_ALLOCATORS clause"
 msgstr ""
 
-#: fortran/openmp.cc:1844
+#: fortran/openmp.cc:1870
+#, gcc-internal-format
+msgid ""
+"The specification of arguments to %<uses_allocators%> at %L where each item "
+"is of the form %<allocator(traits)%> is deprecated since OpenMP 5.2; instead "
+"use %<uses_allocators(traits(%s): %s)%>"
+msgstr ""
+
+#: fortran/openmp.cc:1879
 #, gcc-internal-format
 msgid "Unexpected %<(%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1909
+#: fortran/openmp.cc:1893
+#, gcc-internal-format
+msgid "Expected %<,%>, %<)%> or %<;%> at %C"
+msgstr ""
+
+#: fortran/openmp.cc:1954
 #, gcc-internal-format
 msgid "Expected %<{%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1919
+#: fortran/openmp.cc:1964
 #, gcc-internal-format
 msgid "Duplicated %<fr%> preference-selector-name at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1944 fortran/openmp.cc:2082
+#: fortran/openmp.cc:1989 fortran/openmp.cc:2127
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Expected constant scalar integer expression or non-empty default-kind "
 "character literal at %L"
 msgstr ""
 
-#: fortran/openmp.cc:1958 fortran/openmp.cc:2095
+#: fortran/openmp.cc:2003 fortran/openmp.cc:2140
 #, gcc-internal-format
 msgid "Unknown foreign runtime identifier %qd at %L"
 msgstr ""
 
-#: fortran/openmp.cc:1972 fortran/openmp.cc:2107
+#: fortran/openmp.cc:2017 fortran/openmp.cc:2152
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected null character in character literal at %L"
 msgstr ""
 
-#: fortran/openmp.cc:1979 fortran/openmp.cc:2114
+#: fortran/openmp.cc:2024 fortran/openmp.cc:2159
 #, gcc-internal-format
 msgid "Unknown foreign runtime identifier %qs at %L"
 msgstr ""
 
-#: fortran/openmp.cc:1986 fortran/openmp.cc:7079
+#: fortran/openmp.cc:2031 fortran/openmp.cc:7217
 #, gcc-internal-format
 msgid "Expected %<)%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2002
+#: fortran/openmp.cc:2047
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected default-kind character literal at %L"
 msgstr ""
 
-#: fortran/openmp.cc:2013
+#: fortran/openmp.cc:2058
 #, gcc-internal-format
 msgid "Character literal at %L must start with %<ompx_%>"
 msgstr ""
 
-#: fortran/openmp.cc:2021
+#: fortran/openmp.cc:2066
 #, gcc-internal-format
 msgid "Unexpected null or %<,%> character in character literal at %L"
 msgstr ""
 
-#: fortran/openmp.cc:2038
+#: fortran/openmp.cc:2083
 #, gcc-internal-format
 msgid "Expected %<fr(%> or %<attr(%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2045
+#: fortran/openmp.cc:2090
 #, gcc-internal-format
 msgid "Expected %<,%> or %<}%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2161
+#: fortran/openmp.cc:2206
 #, gcc-internal-format
 msgid "Duplicate %<prefer_type%> modifier at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2173 fortran/openmp.cc:2209 fortran/openmp.cc:2231
+#: fortran/openmp.cc:2218 fortran/openmp.cc:2254 fortran/openmp.cc:2276
 #, gcc-internal-format
 msgid "Expected %<,%> or %<:%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2186
+#: fortran/openmp.cc:2231
 #, gcc-internal-format
 msgid "Expected %<(%> after %<prefer_type%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2194
+#: fortran/openmp.cc:2239
 #, gcc-internal-format
 msgid "Duplicate %<targetsync%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2216
+#: fortran/openmp.cc:2261
 #, gcc-internal-format
 msgid "Duplicate %<target%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2234
+#: fortran/openmp.cc:2279
 #, gcc-internal-format
 msgid "Expected %<prefer_type%>, %<target%>, or %<targetsync%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2242
+#: fortran/openmp.cc:2287
 #, gcc-internal-format
 msgid "Missing required %<target%> and/or %<targetsync%> modifier at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2295
+#: fortran/openmp.cc:2349
 #, gcc-internal-format
 msgid "Duplicated %qs clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:2302 fortran/openmp.cc:4211
+#: fortran/openmp.cc:2356 fortran/openmp.cc:4345
 #, gcc-internal-format
 msgid "Expected %<(%> after %qs at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2309
+#: fortran/openmp.cc:2363
 #, gcc-internal-format
 msgid "Invalid expression after %<%s(%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2369
+#: fortran/openmp.cc:2423
 #, gcc-internal-format, gfc-internal-format
 msgid "Clause expected at %C after trailing comma"
 msgstr ""
 
-#: fortran/openmp.cc:2499
+#: fortran/openmp.cc:2551
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected variable list at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2523
+#: fortran/openmp.cc:2575
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected COMPILATION or EXECUTION in AT clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2584
+#: fortran/openmp.cc:2634
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected TEAMS, PARALLEL or THREAD as binding in BIND at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2615
+#: fortran/openmp.cc:2664
 #, gcc-internal-format, gfc-internal-format
 msgid "COLLAPSE clause argument not constant positive integer at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2718
+#: fortran/openmp.cc:2766
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Expected ALLOC, TO, FROM, TOFROM, FIRSTPRIVATE, PRESENT, NONE or DEFAULT at "
 "%C"
 msgstr ""
 
-#: fortran/openmp.cc:2740
+#: fortran/openmp.cc:2788
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected SCALAR, AGGREGATE, ALLOCATABLE, POINTER or ALL at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2773
+#: fortran/openmp.cc:2821
 #, gcc-internal-format, gfc-internal-format
 msgid "DEFAULTMAP at %C but prior DEFAULTMAP with unspecified category"
 msgstr ""
 
-#: fortran/openmp.cc:2776
+#: fortran/openmp.cc:2824
 #, gcc-internal-format, gfc-internal-format
 msgid "DEFAULTMAP at %C but prior DEFAULTMAP for category %s"
 msgstr ""
 
-#: fortran/openmp.cc:2812
+#: fortran/openmp.cc:2860
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected NONE or PRESENT in DEFAULT clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2815
+#: fortran/openmp.cc:2863
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected NONE, FIRSTPRIVATE, PRIVATE or SHARED in DEFAULT clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2865
+#: fortran/openmp.cc:2913
 #, gcc-internal-format, gfc-internal-format
 msgid "ITERATOR may not be combined with SOURCE at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2871
+#: fortran/openmp.cc:2919
 #, gcc-internal-format, gfc-internal-format
 msgid "SOURCE at %C not permitted as dependence-type for this directive"
 msgstr ""
 
-#: fortran/openmp.cc:2877
+#: fortran/openmp.cc:2925
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicated clause with SOURCE dependence-type at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2892
+#: fortran/openmp.cc:2940
 #, gcc-internal-format
 msgid "Expected %<)%> or %<omp_cur_iteration)%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2904
+#: fortran/openmp.cc:2946
+#, gcc-internal-format
+msgid ""
+"%<source%> modifier with %<depend%> clause at %L deprecated since OpenMP "
+"5.2, use with %<doacross%>"
+msgstr ""
+
+#: fortran/openmp.cc:2957
 #, gcc-internal-format, gfc-internal-format
 msgid "SINK at %C not permitted as dependence-type for this directive"
 msgstr ""
 
-#: fortran/openmp.cc:2915
+#: fortran/openmp.cc:2968
 #, gcc-internal-format, gfc-internal-format
 msgid "ITERATOR may not be combined with SINK at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2929
+#: fortran/openmp.cc:2974
+#, gcc-internal-format
+msgid ""
+"%<sink%> modifier with %<depend%> clause at %L deprecated since OpenMP 5.2, "
+"use with %<doacross%>"
+msgstr ""
+
+#: fortran/openmp.cc:2987
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected dependence-type SINK or SOURCE at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2946
+#: fortran/openmp.cc:3004
 #, gcc-internal-format
 msgid "%<omp_all_memory%> used with DEPEND kind other than OUT or INOUT at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2989 fortran/openmp.cc:3024
+#: fortran/openmp.cc:3053
+#, gcc-internal-format, gfc-internal-format
+msgid "Expected HOST, NOHOST or ANY at %C"
+msgstr ""
+
+#: fortran/openmp.cc:3084 fortran/openmp.cc:3119
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected integer expression at %C"
 msgstr ""
 
-#: fortran/openmp.cc:3005
+#: fortran/openmp.cc:3100
 #, gcc-internal-format
 msgid ""
 "%<ancestor%> device modifier not preceded by %<requires%> directive with "
 "%<reverse_offload%> clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:3017
+#: fortran/openmp.cc:3112
 #, gcc-internal-format
 msgid "the %<device%> clause expression must evaluate to %<1%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:3030
+#: fortran/openmp.cc:3125
 #, gcc-internal-format
 msgid ""
 "Expected integer expression or a single device-modifier %<device_num%> or "
 "%<ancestor%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:3060
-#, gcc-internal-format, gfc-internal-format
-msgid "Expected HOST, NOHOST or ANY at %C"
-msgstr ""
-
-#: fortran/openmp.cc:3115
+#: fortran/openmp.cc:3190
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected SEQ_CST, ACQUIRE or RELAXED at %C"
 msgstr ""
 
-#: fortran/openmp.cc:3311
+#: fortran/openmp.cc:3381
 #, gcc-internal-format, gfc-internal-format
 msgid "INDIRECT clause at %C requires a constant logical expression"
 msgstr ""
 
-#: fortran/openmp.cc:3521
+#: fortran/openmp.cc:3546
+#, gcc-internal-format
+msgid ""
+"Specification of the list items as arguments to the modifiers at %L is "
+"deprecated; since OpenMP 5.2, use %<linear(%s : %s%s)%>"
+msgstr ""
+
+#: fortran/openmp.cc:3638
 #, gcc-internal-format
 msgid "Multiple %qs modifiers specified at %C"
 msgstr ""
 
-#: fortran/openmp.cc:3631
+#: fortran/openmp.cc:3716
+#, gcc-internal-format
+msgid ""
+"The specification of modifiers without comma separators for the %<map%> "
+"clause at %C has been deprecated since OpenMP 5.2"
+msgstr ""
+
+#: fortran/openmp.cc:3757
 #, gcc-internal-format
 msgid "too many %<always%> modifiers at %L"
 msgstr ""
 
-#: fortran/openmp.cc:3637
+#: fortran/openmp.cc:3763
 #, gcc-internal-format
 msgid "too many %<close%> modifiers at %L"
 msgstr ""
 
-#: fortran/openmp.cc:3643
+#: fortran/openmp.cc:3769
 #, gcc-internal-format
 msgid "too many %<present%> modifiers at %L"
 msgstr ""
 
-#: fortran/openmp.cc:3853
+#: fortran/openmp.cc:3994
+#, gcc-internal-format, gfc-internal-format
+msgid "ORDERED clause argument not constant positive integer at %C"
+msgstr ""
+
+#: fortran/openmp.cc:4019
 #, gcc-internal-format
 msgid ""
 "Expected ORDER(CONCURRENT) at %C with optional %<reproducible%> or "
 "%<unconstrained%> modifier"
 msgstr ""
 
-#: fortran/openmp.cc:3878
+#: fortran/openmp.cc:4049
 #, gcc-internal-format, gfc-internal-format
-msgid "ORDERED clause argument not constant positive integer at %C"
+msgid "PARTIAL clause argument not constant positive integer at %C"
 msgstr ""
 
-#: fortran/openmp.cc:3912
-#, gcc-internal-format, gfc-internal-format
-msgid "PARTIAL clause argument not constant positive integer at %C"
+#: fortran/openmp.cc:4127
+#, gcc-internal-format
+msgid ""
+"%<master%> affinity policy at %C deprecated since OpenMP 5.1, use %<primary%>"
 msgstr ""
 
-#: fortran/openmp.cc:4194
+#: fortran/openmp.cc:4328
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected FATAL or WARNING in SEVERITY clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:4404
+#: fortran/openmp.cc:4387
+#, gcc-internal-format
+msgid ""
+"%<to%> clause with %<declare target%> at %L deprecated since OpenMP 5.2, use "
+"%<enter%>"
+msgstr ""
+
+#: fortran/openmp.cc:4537
 #, gcc-internal-format, gfc-internal-format
 msgid "Failed to match clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:4587
+#: fortran/openmp.cc:4720
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid clause in module with !$ACC DECLARE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:4597
+#: fortran/openmp.cc:4730
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable is USE-associated with !$ACC DECLARE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:4606
+#: fortran/openmp.cc:4739
 #, gcc-internal-format
 msgid ""
 "Variable %qs shall be declared in the same scoping unit as !$ACC DECLARE at "
 "%L"
 msgstr ""
 
-#: fortran/openmp.cc:4614
+#: fortran/openmp.cc:4747
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-size dummy array with !$ACC DECLARE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:4663
+#: fortran/openmp.cc:4796
 #, gcc-internal-format
 msgid ""
 "%<acc update%> must contain at least one %<device%> or %<host%> or %<self%> "
 "clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:4711
+#: fortran/openmp.cc:4844
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid argument to !$ACC WAIT at %C"
 msgstr ""
 
-#: fortran/openmp.cc:4718
+#: fortran/openmp.cc:4851
 #, gcc-internal-format, gfc-internal-format
 msgid "WAIT clause at %L requires a scalar INTEGER expression"
 msgstr ""
 
-#: fortran/openmp.cc:4766
+#: fortran/openmp.cc:4899
 #, gcc-internal-format, gfc-internal-format
 msgid "ACC CACHE directive must be inside of loop %C"
 msgstr ""
 
-#: fortran/openmp.cc:4835
+#: fortran/openmp.cc:4968
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Only the !$ACC ROUTINE form without list is allowed in interface block at %C"
 msgstr ""
 
-#: fortran/openmp.cc:4869
+#: fortran/openmp.cc:5002
 #, gcc-internal-format
 msgid "Invalid NAME %qs in !$ACC ROUTINE ( NAME ) at %C"
 msgstr ""
 
-#: fortran/openmp.cc:4877
+#: fortran/openmp.cc:5010
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$ACC ROUTINE ( NAME ) at %C"
 msgstr ""
 
-#: fortran/openmp.cc:4884
+#: fortran/openmp.cc:5017
 #, gcc-internal-format
 msgid ""
 "Syntax error in !$ACC ROUTINE ( NAME ) at %C, expecting %<)%> after NAME"
 msgstr ""
 
-#: fortran/openmp.cc:4899
+#: fortran/openmp.cc:5032
 #, gcc-internal-format, gfc-internal-format
 msgid "Multiple loop axes specified for routine at %C"
 msgstr ""
 
-#: fortran/openmp.cc:4910
+#: fortran/openmp.cc:5043
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Intrinsic symbol specified in !$ACC ROUTINE ( NAME ) at %C marked with "
 "incompatible GANG, WORKER, or VECTOR clause"
 msgstr ""
 
-#: fortran/openmp.cc:4918
+#: fortran/openmp.cc:5051
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Intrinsic symbol specified in !$ACC ROUTINE ( NAME ) at %C marked with "
 "incompatible NOHOST clause"
 msgstr ""
 
-#: fortran/openmp.cc:4939 fortran/openmp.cc:4967
+#: fortran/openmp.cc:5072 fortran/openmp.cc:5100
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC ROUTINE already applied at %C"
 msgstr ""
 
-#: fortran/openmp.cc:4984
+#: fortran/openmp.cc:5117
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$ACC ROUTINE with GANG, WORKER, or VECTOR clause is not permitted in PURE "
 "procedure at %C"
 msgstr ""
 
-#: fortran/openmp.cc:5174
+#: fortran/openmp.cc:5308
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected ALIGN or ALLOCATOR clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:5182
+#: fortran/openmp.cc:5316
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Sorry, structure-element list item at %L in ALLOCATE directive is not yet "
 "supported"
 msgstr ""
 
-#: fortran/openmp.cc:5185
+#: fortran/openmp.cc:5319
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected expression as list item at %L in ALLOCATE directive"
 msgstr ""
 
-#: fortran/openmp.cc:5256
+#: fortran/openmp.cc:5390
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ASSUMES at %C must be in the specification part of a subprogram or "
 "module"
 msgstr ""
 
-#: fortran/openmp.cc:5323
+#: fortran/openmp.cc:5459
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP CRITICAL statement at %C"
 msgstr ""
 
-#: fortran/openmp.cc:5345
+#: fortran/openmp.cc:5481
 #, gcc-internal-format
 msgid "Expected %<( depobj )%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:5363
+#: fortran/openmp.cc:5499
 #, gcc-internal-format
 msgid ""
 "Expected IN, OUT, INOUT, INOUTSET or MUTEXINOUTSET followed by %<)%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:5377
+#: fortran/openmp.cc:5513
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The same depend object should be used as DEPOBJ argument at %L and as "
 "DESTROY argument at %L"
 msgstr ""
 
-#: fortran/openmp.cc:5391
+#: fortran/openmp.cc:5527
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected DEPEND, UPDATE, or DESTROY clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:5396
+#: fortran/openmp.cc:5532
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "DEPEND clause at %L of OMP DEPOBJ construct shall not have dependence-type "
 "DEPOBJ"
 msgstr ""
 
-#: fortran/openmp.cc:5404
+#: fortran/openmp.cc:5540
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "DEPEND clause at %L of OMP DEPOBJ construct shall have only a single locator"
 msgstr ""
 
-#: fortran/openmp.cc:5536 fortran/openmp.cc:10386
+#: fortran/openmp.cc:5672 fortran/openmp.cc:10702
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "MESSAGE clause at %L requires a scalar default-kind CHARACTER expression"
 msgstr ""
 
-#: fortran/openmp.cc:5543
+#: fortran/openmp.cc:5679
 #, gcc-internal-format, gfc-internal-format
 msgid "Constant character expression required in MESSAGE clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:5549
+#: fortran/openmp.cc:5685
 #, gcc-internal-format, gfc-internal-format
 msgid "$OMP ERROR encountered at %L: %s"
 msgstr ""
 
-#: fortran/openmp.cc:5568
+#: fortran/openmp.cc:5704
 #, gcc-internal-format, gfc-internal-format
 msgid "$OMP ERROR encountered at %L"
 msgstr ""
 
-#: fortran/openmp.cc:5596
+#: fortran/openmp.cc:5732
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected SEQ_CST, AQC_REL, RELEASE, or ACQUIRE at %C"
 msgstr ""
 
-#: fortran/openmp.cc:5605
+#: fortran/openmp.cc:5741
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "List specified together with memory order clause in FLUSH directive at %C"
 msgstr ""
 
-#: fortran/openmp.cc:5613
+#: fortran/openmp.cc:5749
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP FLUSH statement at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6013 fortran/openmp.cc:13204
+#: fortran/openmp.cc:6149 fortran/openmp.cc:13621
 #, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of predefined %s !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6017 fortran/openmp.cc:13208
+#: fortran/openmp.cc:6153 fortran/openmp.cc:13625
 #, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of predefined !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6022
+#: fortran/openmp.cc:6158
 #, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6024
+#: fortran/openmp.cc:6160
 #, gcc-internal-format, gfc-internal-format
 msgid "Previous !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6044
+#: fortran/openmp.cc:6180
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$OMP DECLARE REDUCTION at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6081
+#: fortran/openmp.cc:6217
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Only the !$OMP DECLARE TARGET form without clauses is allowed in interface "
 "block at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6096
+#: fortran/openmp.cc:6232
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$OMP DECLARE TARGET at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6121
+#: fortran/openmp.cc:6259
 #, gcc-internal-format, gfc-internal-format
 msgid "OMP DECLARE TARGET variable at %L is an element of a COMMON block"
 msgstr ""
 
-#: fortran/openmp.cc:6124
+#: fortran/openmp.cc:6262
+#, gcc-internal-format
+msgid ""
+"List item %qs at %L not appear in the %qs clause as it was previously "
+"specified in a GROUPPRIVATE directive"
+msgstr ""
+
+#: fortran/openmp.cc:6268
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable at %L mentioned multiple times in clauses of the same OMP DECLARE "
 "TARGET directive"
 msgstr ""
 
-#: fortran/openmp.cc:6130
+#: fortran/openmp.cc:6275
 #, gcc-internal-format, gfc-internal-format
 msgid ""
-"OMP DECLARE TARGET variable at %L previously mentioned in LINK clause and "
+"OMP DECLARE TARGET variable at %L previously mentioned in %s clause and "
 "later in %s clause"
 msgstr ""
 
-#: fortran/openmp.cc:6136
+#: fortran/openmp.cc:6283
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "OMP DECLARE TARGET variable at %L previously mentioned in TO or ENTER clause "
-"and later in LINK clause"
+"and later in %s clause"
+msgstr ""
+
+#: fortran/openmp.cc:6308
+#, gcc-internal-format
+msgid ""
+"List item %qs at %L set in previous OMP GROUPPRIVATE directive to the "
+"different DEVICE_TYPE %qs"
 msgstr ""
 
-#: fortran/openmp.cc:6150 fortran/openmp.cc:6205
+#: fortran/openmp.cc:6312 fortran/openmp.cc:7407 fortran/openmp.cc:7432
 #, gcc-internal-format
 msgid ""
-"List item %qs at %L set in previous OMP DECLARE TARGET directive to a "
-"different DEVICE_TYPE"
+"List item %qs at %L set in previous OMP DECLARE TARGET directive to the "
+"different DEVICE_TYPE %qs"
 msgstr ""
 
-#: fortran/openmp.cc:6159 fortran/openmp.cc:6213
+#: fortran/openmp.cc:6319 fortran/openmp.cc:6382
 #, gcc-internal-format, gfc-internal-format
 msgid "DEVICE_TYPE must be ANY when used with INDIRECT at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6169
-#, gcc-internal-format, gfc-internal-format
+#: fortran/openmp.cc:6325
+#, gcc-internal-format
+msgid ""
+"List item %qs at %L set with NOHOST specified may not appear in a LINK clause"
+msgstr ""
+
+#: fortran/openmp.cc:6333
+#, gcc-internal-format
+msgid ""
+"Common block %</%s/%> at %L not appear in the %qs clause as it was "
+"previously specified in a GROUPPRIVATE directive"
+msgstr ""
+
+#: fortran/openmp.cc:6340
+#, gcc-internal-format
+msgid ""
+"Common block %</%s/%> at %L mentioned multiple times in clauses of the same "
+"OMP DECLARE TARGET directive"
+msgstr ""
+
+#: fortran/openmp.cc:6347
+#, gcc-internal-format
 msgid ""
-"OMP DECLARE TARGET COMMON at %L previously mentioned in LINK clause and "
+"Common block %</%s/%> at %L previously mentioned in %s clause and later in "
+"%s clause"
+msgstr ""
+
+#: fortran/openmp.cc:6355
+#, gcc-internal-format
+msgid ""
+"Common block %</%s/%> at %L previously mentioned in TO or ENTER clause and "
 "later in %s clause"
 msgstr ""
 
-#: fortran/openmp.cc:6175
-#, gcc-internal-format, gfc-internal-format
+#: fortran/openmp.cc:6368
+#, gcc-internal-format
 msgid ""
-"OMP DECLARE TARGET COMMON at %L previously mentioned in TO or ENTER clause "
-"and later in LINK clause"
+"Common block %</%s/%> at %L set in previous OMP GROUPPRIVATE directive to "
+"the different DEVICE_TYPE %qs"
 msgstr ""
 
-#: fortran/openmp.cc:6179
-#, gcc-internal-format, gfc-internal-format
+#: fortran/openmp.cc:6373
+#, gcc-internal-format
 msgid ""
-"COMMON at %L mentioned multiple times in clauses of the same OMP DECLARE "
-"TARGET directive"
+"Common block %</%s/%> at %L set in previous OMP DECLARE TARGET directive to "
+"the different DEVICE_TYPE %qs"
 msgstr ""
 
-#: fortran/openmp.cc:6188
-#, gcc-internal-format, gfc-internal-format
+#: fortran/openmp.cc:6387
+#, gcc-internal-format
 msgid ""
-"COMMON at %L set in previous OMP DECLARE TARGET directive to a different "
-"DEVICE_TYPE"
+"Common block %</%s/%> at %L set with NOHOST specified may not appear in a "
+"LINK clause"
 msgstr ""
 
-#: fortran/openmp.cc:6223
+#: fortran/openmp.cc:6417
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "OMP DECLARE TARGET directive at %L with only DEVICE_TYPE or INDIRECT clauses "
 "is ignored"
 msgstr ""
 
-#: fortran/openmp.cc:6234
+#: fortran/openmp.cc:6428
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$OMP DECLARE TARGET list at %C"
 msgstr ""
 
 #. FIXME: constant integer expressions.
-#: fortran/openmp.cc:6273
+#: fortran/openmp.cc:6467
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected trait-property-extension at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6288 fortran/openmp.cc:6394 fortran/openmp.cc:6547
-#: fortran/openmp.cc:6698 fortran/openmp.cc:6759
+#: fortran/openmp.cc:6482 fortran/openmp.cc:6573 fortran/openmp.cc:6687
+#: fortran/openmp.cc:6837 fortran/openmp.cc:6897
 #, gcc-internal-format
 msgid "expected %<)%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6319
+#: fortran/openmp.cc:6512
 #, gcc-internal-format, gfc-internal-format
 msgid "expected trait selector name at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6338
+#: fortran/openmp.cc:6531
 #, gcc-internal-format
 msgid "unknown selector %qs for context selector set %qs at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6356
+#: fortran/openmp.cc:6549
 #, gcc-internal-format
 msgid "selector %qs does not accept any properties at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6365
+#: fortran/openmp.cc:6558
 #, gcc-internal-format
 msgid ""
 "%<score%> cannot be specified in traits in the %qs trait-selector-set at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6372 fortran/openmp.cc:6557 fortran/openmp.cc:6649
-#: fortran/openmp.cc:6740 fortran/openmp.cc:6936
+#: fortran/openmp.cc:6565 fortran/openmp.cc:6697 fortran/openmp.cc:6788
+#: fortran/openmp.cc:6879 fortran/openmp.cc:7074
 #, gcc-internal-format
 msgid "expected %<(%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6380
-#, gcc-internal-format
-msgid "%<score%> argument must be constant integer expression at %C"
-msgstr ""
-
-#: fortran/openmp.cc:6388
-#, gcc-internal-format
-msgid "%<score%> argument must be non-negative at %C"
-msgstr ""
-
-#: fortran/openmp.cc:6400
+#: fortran/openmp.cc:6579
 #, gcc-internal-format, gfc-internal-format
 msgid "expected : at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6422
+#: fortran/openmp.cc:6601
 #, gcc-internal-format, gfc-internal-format
 msgid "expected identifier at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6441
+#: fortran/openmp.cc:6622
 #, gcc-internal-format, gfc-internal-format
 msgid "expected identifier or string literal at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6462
+#: fortran/openmp.cc:6645
 #, gcc-internal-format, gfc-internal-format
 msgid "expected expression at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6477
-#, gcc-internal-format, gfc-internal-format
-msgid "property must be a logical expression at %L"
-msgstr ""
-
-#: fortran/openmp.cc:6481
-#, gcc-internal-format, gfc-internal-format
-msgid "property must be an integer expression at %L"
-msgstr ""
-
-#: fortran/openmp.cc:6488
-#, gcc-internal-format, gfc-internal-format
-msgid "property must be a constant logical expression at %L"
-msgstr ""
-
-#: fortran/openmp.cc:6492
-#, gcc-internal-format, gfc-internal-format
-msgid "property must be a constant integer expression at %L"
-msgstr ""
-
-#: fortran/openmp.cc:6506
-#, gcc-internal-format, gfc-internal-format
-msgid "property must be a conforming device number at %C"
-msgstr ""
-
-#: fortran/openmp.cc:6522
+#: fortran/openmp.cc:6662
 #, gcc-internal-format, gfc-internal-format
 msgid "expected simd clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6599
+#: fortran/openmp.cc:6738
 #, gcc-internal-format, gfc-internal-format
 msgid "expected context selector set name at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6606
+#: fortran/openmp.cc:6745
 #, gcc-internal-format
 msgid "expected %<=%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6613
+#: fortran/openmp.cc:6752
 #, gcc-internal-format
 msgid "expected %<{%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6628
+#: fortran/openmp.cc:6767
 #, gcc-internal-format
 msgid "expected %<}%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6656
+#: fortran/openmp.cc:6795
 #, gcc-internal-format, gfc-internal-format
 msgid "expected name at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6667
+#: fortran/openmp.cc:6806
 #, gcc-internal-format, gfc-internal-format
 msgid "expected variant name at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6748 fortran/openmp.cc:6920 fortran/openmp.cc:7554
+#: fortran/openmp.cc:6887 fortran/openmp.cc:7058 fortran/openmp.cc:7808
 #, gcc-internal-format
 msgid "%qs clause at %L specified more than once"
 msgstr ""
 
-#: fortran/openmp.cc:6776
+#: fortran/openmp.cc:6914
 #, gcc-internal-format
 msgid "expected %<nothing%>, %<need_device_ptr%> or %<need_device_addr%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6782 fortran/openmp.cc:6900 fortran/openmp.cc:7055
+#: fortran/openmp.cc:6920 fortran/openmp.cc:7038 fortran/openmp.cc:7193
 #, gcc-internal-format
 msgid "expected %<:%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6815
+#: fortran/openmp.cc:6953
 #, gcc-internal-format
 msgid "unexpected %<:%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6862
+#: fortran/openmp.cc:7000
 #, gcc-internal-format, gfc-internal-format
 msgid "expected constant integer expression at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6884
+#: fortran/openmp.cc:7022
 #, gcc-internal-format
 msgid ""
 "expected dummy parameter name, %<omp_num_args%> or constant positive integer "
 "at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6931
+#: fortran/openmp.cc:7069
 #, gcc-internal-format
 msgid "expected %<interop%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6981
+#: fortran/openmp.cc:7119
 #, gcc-internal-format
 msgid "expected %<match%>, %<adjust_args%> or %<append_args%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:6987
+#: fortran/openmp.cc:7125
 #, gcc-internal-format
-msgid ""
-"the %qs clause at %L can only be specified if the %<dispatch%> selector of "
-"the construct selector set appears in the %<match%> clause"
+msgid "expected %<match%> clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:7027
+#: fortran/openmp.cc:7159
+#, gcc-internal-format
+msgid "%<default%> clause with metadirective at %L deprecated since OpenMP 5.2"
+msgstr ""
+
+#: fortran/openmp.cc:7166
 #, gcc-internal-format
 msgid "expected %<when%>, %<otherwise%>, or %<default%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:7034
+#: fortran/openmp.cc:7172
 #, gcc-internal-format
 msgid ""
 "too many %<otherwise%> or %<default%> clauses in %<metadirective%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:7041
+#: fortran/openmp.cc:7179
 #, gcc-internal-format
 msgid ""
 "%<otherwise%> or %<default%> clause must appear last in %<metadirective%> at "
 "%C"
 msgstr ""
 
-#: fortran/openmp.cc:7069
+#: fortran/openmp.cc:7207
 #, gcc-internal-format
 msgid "declarative directive variants are not supported"
 msgstr ""
 
-#: fortran/openmp.cc:7090
+#: fortran/openmp.cc:7228
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "variant directive used in OMP BEGIN METADIRECTIVE at %C must have a "
 "corresponding end directive"
 msgstr ""
 
-#: fortran/openmp.cc:7124
+#: fortran/openmp.cc:7262
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after OMP METADIRECTIVE at %C"
 msgstr ""
 
-#: fortran/openmp.cc:7183
+#: fortran/openmp.cc:7325
+#, gcc-internal-format
+msgid "%qs variable at %L is an element of a COMMON block"
+msgstr ""
+
+#: fortran/openmp.cc:7353
 #, gcc-internal-format, gfc-internal-format
-msgid "Threadprivate variable at %C is an element of a COMMON block"
+msgid "COMMON block /%s/ not found at %L"
 msgstr ""
 
-#: fortran/openmp.cc:7220
+#: fortran/openmp.cc:7391
+#, gcc-internal-format
+msgid "Variable %qs at %L is an element of a COMMON block"
+msgstr ""
+
+#: fortran/openmp.cc:7395
+#, gcc-internal-format
+msgid ""
+"List item %qs at %L implies OMP DECLARE TARGET with the LOCAL clause, but it "
+"has been specified with a different clause before"
+msgstr ""
+
+#: fortran/openmp.cc:7420
+#, gcc-internal-format
+msgid ""
+"List item %</%s/%> at %L implies OMP DECLARE TARGET with the LOCAL clause, "
+"but it has been specified with a different clause before"
+msgstr ""
+
+#: fortran/openmp.cc:7449
 #, gcc-internal-format, gfc-internal-format
-msgid "Unexpected junk after OMP THREADPRIVATE at %C"
+msgid "Unexpected junk after OMP %s at %C"
 msgstr ""
 
-#: fortran/openmp.cc:7227
+#: fortran/openmp.cc:7457
 #, gcc-internal-format, gfc-internal-format
-msgid "Syntax error in !$OMP THREADPRIVATE list at %C"
+msgid "Syntax error in !$OMP %s list at %C"
 msgstr ""
 
-#: fortran/openmp.cc:7326
+#: fortran/openmp.cc:7534 fortran/openmp.cc:7543 fortran/openmp.cc:7554
+#: fortran/openmp.cc:8140 fortran/openmp.cc:8156 fortran/openmp.cc:8165
+#, gcc-internal-format
+msgid "%<master%> construct at %C deprecated since OpenMP 5.1, use %<masked%>"
+msgstr ""
+
+#: fortran/openmp.cc:7580
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Program unit at %L has OpenMP device constructs/routines but does not set !"
 "$OMP REQUIRES %s but other program units do"
 msgstr ""
 
-#: fortran/openmp.cc:7369
+#: fortran/openmp.cc:7623
 #, gcc-internal-format
 msgid ""
 "!$OMP REQUIRES clause %qs specified via module %qs use at %L comes after "
 "using a device construct/routine"
 msgstr ""
 
-#: fortran/openmp.cc:7373
+#: fortran/openmp.cc:7627
 #, gcc-internal-format
 msgid ""
 "!$OMP REQUIRES clause %qs specified at %L comes after using a device "
 "construct/routine"
 msgstr ""
 
-#: fortran/openmp.cc:7396
+#: fortran/openmp.cc:7650
 #, gcc-internal-format
 msgid ""
 "!$OMP REQUIRES clause %<atomic_default_mem_order(%s)%> specified via module "
@@ -82721,7 +86798,7 @@ msgid ""
 "might be through using a module)"
 msgstr ""
 
-#: fortran/openmp.cc:7401
+#: fortran/openmp.cc:7655
 #, gcc-internal-format
 msgid ""
 "!$OMP REQUIRES clause %<atomic_default_mem_order(%s)%> specified at %L "
@@ -82729,507 +86806,525 @@ msgid ""
 "through using a module)"
 msgstr ""
 
-#: fortran/openmp.cc:7412
+#: fortran/openmp.cc:7666
 #, gcc-internal-format
 msgid ""
 "!$OMP REQUIRES clause %<atomic_default_mem_order(%s)%> specified via module "
 "%qs use at %L but same clause is not specified for the program unit"
 msgstr ""
 
-#: fortran/openmp.cc:7417
+#: fortran/openmp.cc:7671
 #, gcc-internal-format
 msgid ""
 "!$OMP REQUIRES clause %qs specified via module %qs use at %L but same clause "
 "is not specified for the program unit"
 msgstr ""
 
-#: fortran/openmp.cc:7447
+#: fortran/openmp.cc:7701
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP REQUIRES at %C must appear in the specification part of a program unit"
 msgstr ""
 
-#: fortran/openmp.cc:7532
+#: fortran/openmp.cc:7786
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Expected ACQ_REL, ACQUIRE, RELAXED, RELEASE or SEQ_CST for "
 "ATOMIC_DEFAULT_MEM_ORDER clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:7548
+#: fortran/openmp.cc:7802
 #, gcc-internal-format, gfc-internal-format
 msgid "Clause expected at %C"
 msgstr ""
 
-#: fortran/openmp.cc:7557
+#: fortran/openmp.cc:7811
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Expected UNIFIED_ADDRESS, UNIFIED_SHARED_MEMORY, SELF_MAPS, "
 "DYNAMIC_ALLOCATORS, REVERSE_OFFLOAD, or ATOMIC_DEFAULT_MEM_ORDER clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:7583
+#: fortran/openmp.cc:7837
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected INCLUSIVE or EXCLUSIVE clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:7589
+#: fortran/openmp.cc:7843
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$OMP SCAN at %C"
 msgstr ""
 
-#: fortran/openmp.cc:7788
+#: fortran/openmp.cc:8042
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after TASKYIELD clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:7887
+#: fortran/openmp.cc:8144
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP MASTER statement at %C"
 msgstr ""
 
-#: fortran/openmp.cc:7919
+#: fortran/openmp.cc:8182
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP NOTHING statement at %C"
 msgstr ""
 
-#: fortran/openmp.cc:7954 fortran/openmp.cc:7957 fortran/openmp.cc:7960
+#: fortran/openmp.cc:8217 fortran/openmp.cc:8220 fortran/openmp.cc:8223
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC at %L with %s clause is incompatible with READ or WRITE"
 msgstr ""
 
-#: fortran/openmp.cc:7964
+#: fortran/openmp.cc:8227
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC at %L with %s clause requires %s clause"
 msgstr ""
 
-#: fortran/openmp.cc:7994
+#: fortran/openmp.cc:8257
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC WRITE at %L incompatible with ACQUIRES clause implicitly "
 "provided by a REQUIRES directive"
 msgstr ""
 
-#: fortran/openmp.cc:8005
+#: fortran/openmp.cc:8268
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC READ at %L incompatible with RELEASE clause implicitly provided "
 "by a REQUIRES directive"
 msgstr ""
 
-#: fortran/openmp.cc:8023
+#: fortran/openmp.cc:8286
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC READ at %L incompatible with RELEASE clause"
 msgstr ""
 
-#: fortran/openmp.cc:8033
+#: fortran/openmp.cc:8296
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC WRITE at %L incompatible with ACQUIRE clause"
 msgstr ""
 
-#: fortran/openmp.cc:8070
+#: fortran/openmp.cc:8333
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$ACC ATOMIC statement at %C"
 msgstr ""
 
-#: fortran/openmp.cc:8085
+#: fortran/openmp.cc:8348
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP BARRIER statement at %C"
 msgstr ""
 
-#: fortran/openmp.cc:8141
+#: fortran/openmp.cc:8404
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Expected construct-type PARALLEL, SECTIONS, DO or TASKGROUP in $OMP "
 "CANCELLATION POINT statement at %C"
 msgstr ""
 
-#: fortran/openmp.cc:8147
+#: fortran/openmp.cc:8410
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP CANCELLATION POINT statement at %C"
 msgstr ""
 
-#: fortran/openmp.cc:8168
+#: fortran/openmp.cc:8431
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after NOWAIT clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:8207
+#: fortran/openmp.cc:8470
 #, gcc-internal-format, gfc-internal-format
 msgid "%s clause at %L requires a scalar INTEGER expression"
 msgstr ""
 
-#: fortran/openmp.cc:8219 fortran/openmp.cc:10421
+#: fortran/openmp.cc:8482 fortran/openmp.cc:10737
 #, gcc-internal-format, gfc-internal-format
 msgid "INTEGER expression of %s clause at %L must be positive"
 msgstr ""
 
-#: fortran/openmp.cc:8231
+#: fortran/openmp.cc:8494
 #, gcc-internal-format, gfc-internal-format
 msgid "INTEGER expression of %s clause at %L must be non-negative"
 msgstr ""
 
-#: fortran/openmp.cc:8242
+#: fortran/openmp.cc:8505
 #, gcc-internal-format
 msgid "Cray pointer object %qs of derived type in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8245
+#: fortran/openmp.cc:8508
 #, gcc-internal-format
 msgid "Cray pointee object %qs of derived type in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8251 fortran/openmp.cc:10244
+#: fortran/openmp.cc:8514 fortran/openmp.cc:10560
 #, gcc-internal-format
 msgid "POINTER object %qs of polymorphic type in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8256
+#: fortran/openmp.cc:8519
 #, gcc-internal-format
 msgid "Cray pointer object %qs of polymorphic type in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8261
+#: fortran/openmp.cc:8524
 #, gcc-internal-format
 msgid "Cray pointee object %qs of polymorphic type in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8271 fortran/openmp.cc:9682 fortran/openmp.cc:9967
+#: fortran/openmp.cc:8534 fortran/openmp.cc:9991 fortran/openmp.cc:10283
 #, gcc-internal-format
 msgid "Assumed size array %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8274
+#: fortran/openmp.cc:8537
 #, gcc-internal-format
 msgid "Assumed rank array %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8290 fortran/openmp.cc:9954
+#: fortran/openmp.cc:8553 fortran/openmp.cc:10270
 #, gcc-internal-format
 msgid "POINTER object %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8295 fortran/openmp.cc:10248
+#: fortran/openmp.cc:8558 fortran/openmp.cc:10564
 #, gcc-internal-format
 msgid "Cray pointer object %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8300 fortran/openmp.cc:10251
+#: fortran/openmp.cc:8563 fortran/openmp.cc:10567
 #, gcc-internal-format
 msgid "Cray pointee object %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8305 fortran/openmp.cc:10239
+#: fortran/openmp.cc:8568 fortran/openmp.cc:10555
 #, gcc-internal-format
 msgid "ALLOCATABLE object %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8308
+#: fortran/openmp.cc:8571
 #, gcc-internal-format
 msgid "VALUE object %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8351
+#: fortran/openmp.cc:8614
 #, gcc-internal-format, gfc-internal-format
 msgid "Implicitly declared function %s used in !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8400
+#: fortran/openmp.cc:8663
 #, gcc-internal-format, gfc-internal-format
 msgid "Implicitly declared subroutine %s used in !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8442
+#: fortran/openmp.cc:8705
 #, gcc-internal-format
 msgid ""
 "Unexpected function-result variable %qs at %L in declarative !$OMP ALLOCATE"
 msgstr ""
 
-#: fortran/openmp.cc:8448
+#: fortran/openmp.cc:8711
 #, gcc-internal-format
 msgid "Procedure pointer %qs not supported with !$OMP ALLOCATE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8454
+#: fortran/openmp.cc:8717
 #, gcc-internal-format
 msgid ""
 "Argument %qs at %L to declarative !$OMP ALLOCATE directive must be a variable"
 msgstr ""
 
-#: fortran/openmp.cc:8461
+#: fortran/openmp.cc:8724
 #, gcc-internal-format
 msgid ""
 "Argument %qs at %L to declarative !$OMP ALLOCATE shall be in the same scope "
 "as the variable declaration"
 msgstr ""
 
-#: fortran/openmp.cc:8468
+#: fortran/openmp.cc:8731
 #, gcc-internal-format
 msgid ""
 "Unexpected dummy argument %qs as argument at %L to declarative !$OMP ALLOCATE"
 msgstr ""
 
-#: fortran/openmp.cc:8474
+#: fortran/openmp.cc:8737
 #, gcc-internal-format
 msgid ""
 "Unexpected coarray argument %qs as argument at %L to declarative !$OMP "
 "ALLOCATE"
 msgstr ""
 
-#: fortran/openmp.cc:8482
+#: fortran/openmp.cc:8745
 #, gcc-internal-format
 msgid "Duplicated common block %</%s/%> in !$OMP ALLOCATE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8489
+#: fortran/openmp.cc:8752
 #, gcc-internal-format
 msgid "Duplicated variable %qs in !$OMP ALLOCATE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8500
+#: fortran/openmp.cc:8763
 #, gcc-internal-format
 msgid "Sorry, EQUIVALENCE object %qs not supported with !$OMP ALLOCATE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8509
+#: fortran/openmp.cc:8772
 #, gcc-internal-format
 msgid ""
 "Sorry, Cray pointers and pointees such as %qs are not supported with !$OMP "
 "ALLOCATE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8518
+#: fortran/openmp.cc:8781
 #, gcc-internal-format
 msgid ""
 "Unexpected allocatable variable %qs at %L in declarative !$OMP ALLOCATE "
 "directive"
 msgstr ""
 
-#: fortran/openmp.cc:8523
+#: fortran/openmp.cc:8786
 #, gcc-internal-format
 msgid ""
 "Unexpected pointer variable %qs at %L in declarative !$OMP ALLOCATE directive"
 msgstr ""
 
-#: fortran/openmp.cc:8534 fortran/openmp.cc:9149
+#: fortran/openmp.cc:8797 fortran/openmp.cc:9446
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "ALIGN requires a scalar positive constant integer alignment expression at %L "
 "that is a power of two"
 msgstr ""
 
-#: fortran/openmp.cc:8549
+#: fortran/openmp.cc:8813
 #, gcc-internal-format
 msgid ""
 "An ALLOCATOR clause is required as the list item %<%s%s%s%> at %L has the "
 "SAVE attribute"
 msgstr ""
 
-#: fortran/openmp.cc:8554
+#: fortran/openmp.cc:8818
 #, gcc-internal-format
 msgid ""
 "Predefined allocator required in ALLOCATOR clause at %L as the list item "
 "%<%s%s%s%> at %L has the SAVE attribute"
 msgstr ""
 
-#: fortran/openmp.cc:8568 fortran/openmp.cc:9133
+#: fortran/openmp.cc:8838
+#, gcc-internal-format
+msgid ""
+"Predefined allocator %qs in ALLOCATOR clause at %L, used for list item "
+"%<%s%s%s%> at %L, may only be used for local static variables"
+msgstr ""
+
+#: fortran/openmp.cc:8856 fortran/openmp.cc:9430
 #, gcc-internal-format
 msgid ""
 "Expected integer expression of the %<omp_allocator_handle_kind%> kind at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8584
+#: fortran/openmp.cc:8872
 #, gcc-internal-format, gfc-internal-format
 msgid "HOLDS expression at %L must be a scalar logical expression"
 msgstr ""
 
-#: fortran/openmp.cc:8620
+#: fortran/openmp.cc:8908
 #, gcc-internal-format, gfc-internal-format
 msgid "ORDERED clause parameter is less than COLLAPSE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8623
+#: fortran/openmp.cc:8911
 #, gcc-internal-format, gfc-internal-format
 msgid "ORDER clause must not be used together with ORDERED at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8630 fortran/openmp.cc:8641 fortran/resolve.cc:12199
-#: fortran/resolve.cc:13788
+#: fortran/openmp.cc:8918 fortran/openmp.cc:8929 fortran/resolve.cc:12804
+#: fortran/resolve.cc:14399
 #, gcc-internal-format, gfc-internal-format
 msgid "IF clause at %L requires a scalar LOGICAL expression"
 msgstr ""
 
-#: fortran/openmp.cc:8645
+#: fortran/openmp.cc:8933
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "IF clause without modifier at %L used together with IF clauses with modifiers"
 msgstr ""
 
-#: fortran/openmp.cc:8770
+#: fortran/openmp.cc:9058
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "IF clause modifier %s at %L not appropriate for the current OpenMP construct"
 msgstr ""
 
-#: fortran/openmp.cc:8780
+#: fortran/openmp.cc:9068
 #, gcc-internal-format, gfc-internal-format
 msgid "SELF clause at %L requires a scalar LOGICAL expression"
 msgstr ""
 
-#: fortran/openmp.cc:8789
+#: fortran/openmp.cc:9077
 #, gcc-internal-format, gfc-internal-format
 msgid "FINAL clause at %L requires a scalar LOGICAL expression"
 msgstr ""
 
-#: fortran/openmp.cc:8798
+#: fortran/openmp.cc:9086
 #, gcc-internal-format, gfc-internal-format
 msgid "NOVARIANTS clause at %L requires a scalar LOGICAL expression"
 msgstr ""
 
-#: fortran/openmp.cc:8808
+#: fortran/openmp.cc:9096
 #, gcc-internal-format, gfc-internal-format
 msgid "NOCONTEXT clause at %L requires a scalar LOGICAL expression"
 msgstr ""
 
-#: fortran/openmp.cc:8819
+#: fortran/openmp.cc:9110
 #, gcc-internal-format, gfc-internal-format
 msgid "SCHEDULE clause's chunk_size at %L requires a scalar INTEGER expression"
 msgstr ""
 
-#: fortran/openmp.cc:8824
+#: fortran/openmp.cc:9115
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "INTEGER expression of SCHEDULE clause's chunk_size at %L must be positive"
 msgstr ""
 
-#: fortran/openmp.cc:8831
+#: fortran/openmp.cc:9122
 #, gcc-internal-format, gfc-internal-format
 msgid "Both MONOTONIC and NONMONOTONIC schedule modifiers specified at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8834
+#: fortran/openmp.cc:9125
 #, gcc-internal-format, gfc-internal-format
 msgid "NONMONOTONIC schedule modifier specified with ORDERED clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8843
+#: fortran/openmp.cc:9134
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "DEPOBJ in DEPOBJ construct at %L shall be a scalar integer of "
 "OMP_DEPEND_KIND kind"
 msgstr ""
 
-#: fortran/openmp.cc:8864
+#: fortran/openmp.cc:9155
 #, gcc-internal-format
 msgid "Variable %qs is not a dummy argument at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8899
+#: fortran/openmp.cc:9193
 #, gcc-internal-format
-msgid ""
-"Object %qs is not a variable at %L; parameters cannot be and need not be "
-"copied"
+msgid "Clause for object %qs at %L is ignored as parameters need not be copied"
 msgstr ""
 
-#: fortran/openmp.cc:8903
+#: fortran/openmp.cc:9197
 #, gcc-internal-format
 msgid ""
 "Object %qs is not a variable at %L; parameters cannot be and need not be "
 "mapped"
 msgstr ""
 
-#: fortran/openmp.cc:8908 fortran/openmp.cc:12759
+#: fortran/openmp.cc:9202
+#, gcc-internal-format
+msgid "Clause for object %qs at %L is ignored as it is a parameter"
+msgstr ""
+
+#: fortran/openmp.cc:9205 fortran/openmp.cc:13163
 #, gcc-internal-format
 msgid "Object %qs is not a variable at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8919
+#: fortran/openmp.cc:9216
 #, gcc-internal-format
 msgid ""
 "%<inscan%> REDUCTION clause on construct other than DO, SIMD, DO SIMD, "
 "PARALLEL DO, PARALLEL DO SIMD at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8923
+#: fortran/openmp.cc:9220
 #, gcc-internal-format
 msgid ""
 "ORDERED clause specified together with %<inscan%> REDUCTION clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8926
+#: fortran/openmp.cc:9223
 #, gcc-internal-format
 msgid ""
 "SCHEDULE clause specified together with %<inscan%> REDUCTION clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8958 fortran/openmp.cc:8970 fortran/openmp.cc:8991
-#: fortran/openmp.cc:9003 fortran/openmp.cc:9065 fortran/openmp.cc:9073
-#: fortran/openmp.cc:9094 fortran/openmp.cc:9105 fortran/openmp.cc:9117
-#: fortran/openmp.cc:9352 fortran/openmp.cc:12783
+#: fortran/openmp.cc:9255 fortran/openmp.cc:9267 fortran/openmp.cc:9288
+#: fortran/openmp.cc:9300 fortran/openmp.cc:9362 fortran/openmp.cc:9370
+#: fortran/openmp.cc:9391 fortran/openmp.cc:9402 fortran/openmp.cc:9414
+#: fortran/openmp.cc:9655 fortran/openmp.cc:13197
 #, gcc-internal-format
 msgid "Symbol %qs present on multiple clauses at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8999
+#: fortran/openmp.cc:9296
 #, gcc-internal-format
 msgid "Symbol %qs has mixed component and non-component accesses at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9022
+#: fortran/openmp.cc:9319
 #, gcc-internal-format
 msgid ""
 "DEPEND clause at %L requires action clause with %<targetsync%> interop-type"
 msgstr ""
 
-#: fortran/openmp.cc:9029
+#: fortran/openmp.cc:9326
 #, gcc-internal-format
 msgid ""
 "DEPEND clause at %L requires %<targetsync%> interop-type, lacking it for %qs "
 "at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9044
+#: fortran/openmp.cc:9341
 #, gcc-internal-format
 msgid ""
 "%qs at %L in %qs clause must be a scalar integer variable of "
 "%<omp_interop_kind%> kind"
 msgstr ""
 
-#: fortran/openmp.cc:9049
+#: fortran/openmp.cc:9346
 #, gcc-internal-format
 msgid "%qs at %L in %qs clause must be definable"
 msgstr ""
 
-#: fortran/openmp.cc:9088
+#: fortran/openmp.cc:9385
 #, gcc-internal-format
 msgid "Symbol %qs present on both data and map clauses at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9174
+#: fortran/openmp.cc:9471
 #, gcc-internal-format
 msgid "%qs appears more than once in %<allocate%> at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9216 fortran/trans-openmp.cc:8309
+#: fortran/openmp.cc:9513 fortran/trans-openmp.cc:8399
 #, gcc-internal-format
 msgid ""
 "%qs specified in %<allocate%> clause at %L but not in an explicit "
 "privatization clause"
 msgstr ""
 
-#: fortran/openmp.cc:9244
+#: fortran/openmp.cc:9525
+#, gcc-internal-format
+msgid ""
+"The use of one or more %<allocate%> directives with an associated "
+"%<allocate%> statement at %L is deprecated since OpenMP 5.2, use an "
+"%<allocators%> directive"
+msgstr ""
+
+#: fortran/openmp.cc:9547
 #, gcc-internal-format
 msgid "Unexpected coarray %qs in %<allocate%> at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9258
+#: fortran/openmp.cc:9561
 #, gcc-internal-format
 msgid ""
 "%qs specified in %<allocate%> at %L but not in the associated ALLOCATE "
 "statement"
 msgstr ""
 
-#: fortran/openmp.cc:9292
+#: fortran/openmp.cc:9595
 #, gcc-internal-format
 msgid ""
 "%qs listed in %<allocate%> statement at %L but it is neither explicitly in "
@@ -83237,843 +87332,900 @@ msgid ""
 "argument list"
 msgstr ""
 
-#: fortran/openmp.cc:9303
+#: fortran/openmp.cc:9606
 #, gcc-internal-format
 msgid ""
 "Unexpected coarray %qs in %<allocate%> at %L, implicitly listed in %<!$OMP "
 "ALLOCATE%> at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9328
+#: fortran/openmp.cc:9631
 #, gcc-internal-format
 msgid ""
 "ALLOCATORS directive at %L inside a target region must specify an ALLOCATOR "
 "modifier for %qs"
 msgstr ""
 
-#: fortran/openmp.cc:9332
+#: fortran/openmp.cc:9635
 #, gcc-internal-format
 msgid ""
 "ALLOCATE directive at %L inside a target region must specify an ALLOCATOR "
 "clause for %qs"
 msgstr ""
 
-#: fortran/openmp.cc:9336
+#: fortran/openmp.cc:9639
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "ALLOCATE directive at %L inside a target region must specify an ALLOCATOR "
 "clause"
 msgstr ""
 
-#: fortran/openmp.cc:9359
+#: fortran/openmp.cc:9662
 #, gcc-internal-format
 msgid "Array %qs is not permitted in reduction at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9372
+#: fortran/openmp.cc:9675
 #, gcc-internal-format
 msgid "Symbol %qs present on both FROM and TO clauses at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9390
+#: fortran/openmp.cc:9693
 #, gcc-internal-format
 msgid "Non-THREADPRIVATE object %qs in COPYIN clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9396
+#: fortran/openmp.cc:9699
 #, gcc-internal-format, gfc-internal-format
 msgid "NOWAIT clause must not be used with COPYPRIVATE clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9401
+#: fortran/openmp.cc:9704
 #, gcc-internal-format
 msgid "Assumed size array %qs in COPYPRIVATE clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9404
+#: fortran/openmp.cc:9707
 #, gcc-internal-format
 msgid "INTENT(IN) POINTER %qs in COPYPRIVATE clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9412
+#: fortran/openmp.cc:9715
 #, gcc-internal-format
 msgid "THREADPRIVATE object %qs in SHARED clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9415
+#: fortran/openmp.cc:9718
 #, gcc-internal-format
 msgid "Cray pointee %qs in SHARED clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9418
+#: fortran/openmp.cc:9721
 #, gcc-internal-format
 msgid "Associate name %qs in SHARED clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9424
+#: fortran/openmp.cc:9727
 #, gcc-internal-format
 msgid "DETACH event handle %qs in SHARED clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9439
+#: fortran/openmp.cc:9742
 #, gcc-internal-format
 msgid ""
 "%qs in ALIGNED clause must be POINTER, ALLOCATABLE, Cray pointer or C_PTR at "
 "%L"
 msgstr ""
 
-#: fortran/openmp.cc:9449
+#: fortran/openmp.cc:9752
 #, gcc-internal-format
 msgid ""
 "%qs in ALIGNED clause at %L requires a scalar positive constant integer "
 "alignment expression"
 msgstr ""
 
-#: fortran/openmp.cc:9475
+#: fortran/openmp.cc:9778
 #, gcc-internal-format, gfc-internal-format
 msgid "Scalar integer expression for range begin expected at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9481
+#: fortran/openmp.cc:9784
 #, gcc-internal-format, gfc-internal-format
 msgid "Scalar integer expression for range end expected at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9487
+#: fortran/openmp.cc:9790
 #, gcc-internal-format, gfc-internal-format
 msgid "Scalar integer expression for range step expected at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9492
+#: fortran/openmp.cc:9795
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonzero range step expected at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9505
+#: fortran/openmp.cc:9808
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Dependence-type SINK used together with SOURCE on the same construct at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9515
+#: fortran/openmp.cc:9818
 #, gcc-internal-format, gfc-internal-format
 msgid "SINK addend not a constant integer at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9521
+#: fortran/openmp.cc:9824
 #, gcc-internal-format
 msgid "omp_cur_iteration at %L requires %<-1%> as logical offset"
 msgstr ""
 
-#: fortran/openmp.cc:9531
+#: fortran/openmp.cc:9834
 #, gcc-internal-format
 msgid ""
 "Locator %qs at %L in DEPEND clause of depobj type shall be a scalar integer "
 "of OMP_DEPEND_KIND kind"
 msgstr ""
 
-#: fortran/openmp.cc:9542
+#: fortran/openmp.cc:9845
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Locator at %L in DEPEND clause of depobj type shall be a scalar integer of "
 "OMP_DEPEND_KIND kind"
 msgstr ""
 
-#: fortran/openmp.cc:9586
+#: fortran/openmp.cc:9889
 #, gcc-internal-format, gfc-internal-format
 msgid "Array is not contiguous at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9601
+#: fortran/openmp.cc:9896
+#, gcc-internal-format
+msgid ""
+"%qs argument to MAP clause at %L must not be a device-local variable, "
+"including GROUPPRIVATE"
+msgstr ""
+
+#: fortran/openmp.cc:9910
 #, gcc-internal-format
 msgid "%qs clause argument must be ALLOCATABLE or a POINTER at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9613
+#: fortran/openmp.cc:9922
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected substring reference in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9621
+#: fortran/openmp.cc:9930
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected complex-parts designator reference in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9630 fortran/openmp.cc:9648
+#: fortran/openmp.cc:9939 fortran/openmp.cc:9957
 #, gcc-internal-format
 msgid "%qs in %s clause at %L is not a proper array section"
 msgstr ""
 
-#: fortran/openmp.cc:9640
+#: fortran/openmp.cc:9949
 #, gcc-internal-format, gfc-internal-format
 msgid "Stride should not be specified for array section in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9662
+#: fortran/openmp.cc:9971
 #, gcc-internal-format
 msgid "%qs in %s clause at %L is a zero size array section"
 msgstr ""
 
-#: fortran/openmp.cc:9718
+#: fortran/openmp.cc:10027
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TARGET%s with map-type other than TO, FROM, TOFROM, or ALLOC on MAP clause "
 "at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9749
+#: fortran/openmp.cc:10058
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TARGET ENTER DATA with map-type other than TO, TOFROM or ALLOC on MAP clause "
 "at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9778
+#: fortran/openmp.cc:10087
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TARGET EXIT DATA with map-type other than FROM, TOFROM, RELEASE, or DELETE "
 "on MAP clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9794 fortran/openmp.cc:9938
+#: fortran/openmp.cc:10103 fortran/openmp.cc:10254
 #, gcc-internal-format
 msgid "THREADPRIVATE object %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9797 fortran/openmp.cc:9941
+#: fortran/openmp.cc:10106 fortran/openmp.cc:10257
 #, gcc-internal-format
 msgid "Cray pointee %qs in %s clause at %L"
 msgstr ""
 
 #. Non-TARGET (i.e. DISPATCH) requires a C_PTR.
-#: fortran/openmp.cc:9811
+#: fortran/openmp.cc:10120
 #, gcc-internal-format
 msgid "List item %qs in %s clause at %L must be of TYPE(C_PTR)"
 msgstr ""
 
-#: fortran/openmp.cc:9870
+#: fortran/openmp.cc:10130
+#, gcc-internal-format, gfc-internal-format
+msgid "Non-C_PTR type argument at %L is deprecated, use HAS_DEVICE_ADDR"
+msgstr ""
+
+#: fortran/openmp.cc:10159
+#, gcc-internal-format, gfc-internal-format
+msgid "Non-C_PTR type argument at %L is deprecated, use USE_DEVICE_ADDR"
+msgstr ""
+
+#: fortran/openmp.cc:10185
 #, gcc-internal-format
 msgid "Memspace %qs at %L in USES_ALLOCATORS must be a predefined memory space"
 msgstr ""
 
-#: fortran/openmp.cc:9878
+#: fortran/openmp.cc:10193
 #, gcc-internal-format
 msgid ""
 "Allocator %qs at %L in USES_ALLOCATORS must be a scalar integer of kind "
 "%<omp_allocator_handle_kind%>"
 msgstr ""
 
-#: fortran/openmp.cc:9886
+#: fortran/openmp.cc:10202
 #, gcc-internal-format
 msgid ""
 "Allocator %qs at %L in USES_ALLOCATORS must either a variable or a "
 "predefined allocator"
 msgstr ""
 
-#: fortran/openmp.cc:9891
+#: fortran/openmp.cc:10207
 #, gcc-internal-format
 msgid ""
 "A memory space or traits array may not be specified for predefined allocator "
 "%qs at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9902
+#: fortran/openmp.cc:10218
 #, gcc-internal-format
 msgid ""
 "Traits array %qs in USES_ALLOCATORS %L must be a one-dimensional named "
 "constant array of type %<omp_alloctrait%>"
 msgstr ""
 
-#: fortran/openmp.cc:9932
+#: fortran/openmp.cc:10248
 #, gcc-internal-format
 msgid ""
 "%<inscan%> and non-%<inscan%> %<reduction%> clauses on the same construct at "
 "%L"
 msgstr ""
 
-#: fortran/openmp.cc:9944
+#: fortran/openmp.cc:10260
 #, gcc-internal-format
 msgid "Associate name %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9951
+#: fortran/openmp.cc:10267
 #, gcc-internal-format
 msgid "Procedure pointer %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9957
+#: fortran/openmp.cc:10273
 #, gcc-internal-format
 msgid "Cray pointer %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9970
+#: fortran/openmp.cc:10286
 #, gcc-internal-format
 msgid "Variable %qs in %s clause is used in NAMELIST statement at %L"
 msgstr ""
 
 #. case OMP_LIST_REDUCTION:
-#: fortran/openmp.cc:9980
+#: fortran/openmp.cc:10296
 #, gcc-internal-format
 msgid "INTENT(IN) POINTER %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9991
+#: fortran/openmp.cc:10307
 #, gcc-internal-format
 msgid "DETACH event handle %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10016
+#: fortran/openmp.cc:10332
 #, gcc-internal-format
 msgid ""
 "Sorry, list item %qs at %L with allocatable components is not yet supported "
 "in %s clause"
 msgstr ""
 
-#: fortran/openmp.cc:10022
+#: fortran/openmp.cc:10338
 #, gcc-internal-format
 msgid ""
 "Polymorphic list item %qs at %L in %s clause has unspecified behavior and "
 "unsupported"
 msgstr ""
 
-#: fortran/openmp.cc:10054
+#: fortran/openmp.cc:10370
 #, gcc-internal-format, gfc-internal-format
 msgid "Only DEFAULT permitted as reduction-modifier in REDUCTION clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10147
+#: fortran/openmp.cc:10463
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP DECLARE REDUCTION %s not found for type %s at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10175
+#: fortran/openmp.cc:10491
 #, gcc-internal-format, gfc-internal-format
 msgid "LINEAR clause modifier used on DO or SIMD construct at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10181
+#: fortran/openmp.cc:10497
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "LINEAR clause modifier other than VAL used on DO or SIMD construct at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10189
+#: fortran/openmp.cc:10505
 #, gcc-internal-format
 msgid "LINEAR variable %qs must be INTEGER at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10194
+#: fortran/openmp.cc:10510
 #, gcc-internal-format
 msgid "LINEAR dummy argument %qs with VALUE attribute with %s modifier at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10205
+#: fortran/openmp.cc:10521
 #, gcc-internal-format
 msgid ""
 "%qs in LINEAR clause at %L requires a scalar integer linear-step expression"
 msgstr ""
 
-#: fortran/openmp.cc:10222
+#: fortran/openmp.cc:10538
 #, gcc-internal-format
 msgid ""
 "%qs in LINEAR clause at %L requires a constant integer linear-step "
 "expression or dummy argument specified in UNIFORM clause"
 msgstr ""
 
-#: fortran/openmp.cc:10256
+#: fortran/openmp.cc:10572
 #, gcc-internal-format
 msgid "%s clause variable %qs at %L is neither a POINTER nor an array"
 msgstr ""
 
-#: fortran/openmp.cc:10316
+#: fortran/openmp.cc:10632
 #, gcc-internal-format, gfc-internal-format
 msgid "NUM_TEAMS lower bound at %L larger than upper bound at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10329
+#: fortran/openmp.cc:10645
 #, gcc-internal-format, gfc-internal-format
 msgid "Value of HINT clause at %L shall be a valid constant hint expression"
 msgstr ""
 
-#: fortran/openmp.cc:10339
+#: fortran/openmp.cc:10655
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "DIST_SCHEDULE clause's chunk_size at %L requires a scalar INTEGER expression"
 msgstr ""
 
-#: fortran/openmp.cc:10349
+#: fortran/openmp.cc:10665
 #, gcc-internal-format
 msgid ""
 "%<GRAINSIZE%> clause at %L must not be used together with %<NUM_TASKS%> "
 "clause"
 msgstr ""
 
-#: fortran/openmp.cc:10352
+#: fortran/openmp.cc:10668
 #, gcc-internal-format
 msgid ""
 "%<REDUCTION%> clause at %L must not be used together with %<NOGROUP%> clause"
 msgstr ""
 
-#: fortran/openmp.cc:10356
+#: fortran/openmp.cc:10672
 #, gcc-internal-format
 msgid "%<FULL%> clause at %C must not be used together with %<PARTIAL%> clause"
 msgstr ""
 
-#: fortran/openmp.cc:10379
+#: fortran/openmp.cc:10695
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible use of TILE and COLLAPSE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10403
+#: fortran/openmp.cc:10719
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TARGET DATA must contain at least one MAP, USE_DEVICE_PTR, or "
 "USE_DEVICE_ADDR clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10406
+#: fortran/openmp.cc:10722
 #, gcc-internal-format, gfc-internal-format
 msgid "%s must contain at least one MAP clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10416
+#: fortran/openmp.cc:10732
 #, gcc-internal-format, gfc-internal-format
 msgid "SIZES requires constant expression at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10432
+#: fortran/openmp.cc:10748
 #, gcc-internal-format
 msgid ""
 "%qs at %L should be a scalar of type integer(kind=omp_event_handle_kind)"
 msgstr ""
 
-#: fortran/openmp.cc:10437
+#: fortran/openmp.cc:10753
 #, gcc-internal-format, gfc-internal-format
 msgid "The event handle at %L must not be an array element"
 msgstr ""
 
-#: fortran/openmp.cc:10441
+#: fortran/openmp.cc:10757
 #, gcc-internal-format, gfc-internal-format
 msgid "The event handle at %L must not be part of a derived type or class"
 msgstr ""
 
-#: fortran/openmp.cc:10445
+#: fortran/openmp.cc:10761
 #, gcc-internal-format
 msgid ""
 "%<DETACH%> clause at %L must not be used together with %<MERGEABLE%> clause"
 msgstr ""
 
-#: fortran/openmp.cc:10452
+#: fortran/openmp.cc:10768
 #, gcc-internal-format
 msgid "%<host_data%> construct at %L requires %<use_device%> clause"
 msgstr ""
 
-#: fortran/openmp.cc:10606
+#: fortran/openmp.cc:10922
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected IF at %L in atomic compare capture"
 msgstr ""
 
-#: fortran/openmp.cc:10614
+#: fortran/openmp.cc:10930
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected ELSE at %L in atomic compare capture"
 msgstr ""
 
-#: fortran/openmp.cc:10726
+#: fortran/openmp.cc:11042
 #, gcc-internal-format
 msgid ""
 "Expected %<==%>, %<.EQ.%> or %<.EQV.%> atomic comparison expression at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10732
+#: fortran/openmp.cc:11048
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected scalar intrinsic variable at %L in atomic comparison"
 msgstr ""
 
-#: fortran/openmp.cc:10740
+#: fortran/openmp.cc:11056
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected scalar intrinsic expression at %L in atomic comparison"
 msgstr ""
 
-#: fortran/openmp.cc:10748
+#: fortran/openmp.cc:11064
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC statement must set a scalar variable of intrinsic type at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10757
+#: fortran/openmp.cc:11073
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC statement must assign an expression of intrinsic type at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10764
+#: fortran/openmp.cc:11080
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC with ALLOCATABLE variable at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10781
+#: fortran/openmp.cc:11097
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC READ statement must read from a scalar variable of intrinsic "
 "type at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10786
+#: fortran/openmp.cc:11102
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "expr in !$OMP ATOMIC WRITE assignment var = expr must be scalar and cannot "
 "reference var at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10798
+#: fortran/openmp.cc:11114
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC capture-statement must set a scalar variable of intrinsic type "
 "at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10806
+#: fortran/openmp.cc:11122
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC capture-statement requires a scalar variable of intrinsic type "
 "at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10816
+#: fortran/openmp.cc:11132
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC CAPTURE capture statement reads from different variable than "
 "update statement writes into at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10832
+#: fortran/openmp.cc:11148
 #, gcc-internal-format
 msgid ""
 "For !$OMP ATOMIC COMPARE, the first operand in comparison at %L must be the "
 "variable %qs that the update statement writes into at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10840
+#: fortran/openmp.cc:11156
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "expr in !$OMP ATOMIC COMPARE assignment var = expr must be scalar and cannot "
 "reference var at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10858
+#: fortran/openmp.cc:11174
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC UPDATE at %L with FAIL clause requires either the COMPARE "
 "clause or using the intrinsic MIN/MAX procedure"
 msgstr ""
 
-#: fortran/openmp.cc:10885
+#: fortran/openmp.cc:11201
 #, gcc-internal-format, gfc-internal-format
 msgid ""
-"!$OMP ATOMIC assignment operator must be binary +, *, -, /, .AND., .OR., ."
-"EQV. or .NEQV. at %L"
+"!$OMP ATOMIC assignment operator must be binary +, *, "
+"-, /, .AND., .OR., .EQV. or .NEQV. at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10933
+#: fortran/openmp.cc:11249
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC assignment must be var = var op expr or var = expr op var at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10947
+#: fortran/openmp.cc:11263
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC var = var op expr not mathematically equivalent to var = var op "
 "(expr) at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10980
+#: fortran/openmp.cc:11296
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "expr in !$OMP ATOMIC assignment var = var op expr must be scalar and cannot "
 "reference var at %L"
 msgstr ""
 
-#: fortran/openmp.cc:11004
+#: fortran/openmp.cc:11320
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC assignment intrinsic IAND, IOR or IEOR must have two arguments "
 "at %L"
 msgstr ""
 
-#: fortran/openmp.cc:11011
+#: fortran/openmp.cc:11327
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC assignment intrinsic must be MIN, MAX, IAND, IOR or IEOR at %L"
 msgstr ""
 
-#: fortran/openmp.cc:11034
+#: fortran/openmp.cc:11350
 #, gcc-internal-format
 msgid ""
 "!$OMP ATOMIC intrinsic arguments except one must not reference %qs at %L"
 msgstr ""
 
-#: fortran/openmp.cc:11041
+#: fortran/openmp.cc:11357
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC intrinsic arguments must be scalar at %L"
 msgstr ""
 
-#: fortran/openmp.cc:11049
+#: fortran/openmp.cc:11365
 #, gcc-internal-format
 msgid "First or last !$OMP ATOMIC intrinsic argument must be %qs at %L"
 msgstr ""
 
-#: fortran/openmp.cc:11067
+#: fortran/openmp.cc:11383
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC assignment must have an operator or intrinsic on right hand "
 "side at %L"
 msgstr ""
 
-#: fortran/openmp.cc:11072
+#: fortran/openmp.cc:11388
 #, gcc-internal-format, gfc-internal-format
 msgid "unexpected !$OMP ATOMIC expression at %L"
 msgstr ""
 
-#: fortran/openmp.cc:11180
+#: fortran/openmp.cc:11496
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "With INSCAN at %L, expected loop body with !$OMP SCAN between two structured "
 "block sequences"
 msgstr ""
 
-#: fortran/openmp.cc:11187
+#: fortran/openmp.cc:11503
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP SCAN at %L with zero executable statements in preceding structured "
 "block sequence"
 msgstr ""
 
-#: fortran/openmp.cc:11194
+#: fortran/openmp.cc:11510
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP SCAN at %L with zero executable statements in succeeding structured "
 "block sequence"
 msgstr ""
 
-#: fortran/openmp.cc:11410
+#: fortran/openmp.cc:11726
 #, gcc-internal-format, gfc-internal-format
 msgid "%s cannot contain loop in intervening code at %L"
 msgstr ""
 
-#: fortran/openmp.cc:11491
+#: fortran/openmp.cc:11747 fortran/openmp.cc:11780
 #, gcc-internal-format, gfc-internal-format
-msgid "%s cannot contain OpenMP directive in intervening code at %L"
+msgid "%s cannot contain OpenMP API call in intervening code at %L"
 msgstr ""
 
-#: fortran/openmp.cc:11503 fortran/openmp.cc:11529
+#: fortran/openmp.cc:11757
 #, gcc-internal-format, gfc-internal-format
-msgid "%s cannot contain OpenMP API call in intervening code at %L"
+msgid "%s cannot contain OpenMP directive in intervening code at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12052
+#: fortran/openmp.cc:12303
 #, gcc-internal-format, gfc-internal-format
 msgid "SIZES clause is required on !$OMP TILE construct at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12079
+#: fortran/openmp.cc:12330
 #, gcc-internal-format, gfc-internal-format
 msgid "%s cannot be a DO WHILE or DO without loop control at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12085
+#: fortran/openmp.cc:12336
 #, gcc-internal-format, gfc-internal-format
 msgid "%s cannot be a DO CONCURRENT loop at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12095
+#: fortran/openmp.cc:12346
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Generated loop of UNROLL construct at %L without PARTIAL clause does not "
 "have canonical form"
 msgstr ""
 
-#: fortran/openmp.cc:12102
+#: fortran/openmp.cc:12353
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "UNROLL construct at %L with PARTIAL clause generates just one loop with "
 "canonical form but %d loops are needed"
 msgstr ""
 
-#: fortran/openmp.cc:12117
+#: fortran/openmp.cc:12368
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TILE construct at %L generates %d loops with canonical form but %d loops are "
 "needed"
 msgstr ""
 
-#: fortran/openmp.cc:12128
+#: fortran/openmp.cc:12379
 #, gcc-internal-format
 msgid "Imperfectly nested loop using generated loops"
 msgstr ""
 
-#: fortran/openmp.cc:12140
+#: fortran/openmp.cc:12391
 #, gcc-internal-format, gfc-internal-format
 msgid "%s iteration variable must be of type integer at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12147
+#: fortran/openmp.cc:12398
 #, gcc-internal-format, gfc-internal-format
 msgid "%s iteration variable must not be THREADPRIVATE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12162
+#: fortran/openmp.cc:12413
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "%s iteration variable present on clause other than PRIVATE, LASTPRIVATE or "
 "ALLOCATE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12166
+#: fortran/openmp.cc:12417
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "%s iteration variable present on clause other than PRIVATE, LASTPRIVATE, "
 "ALLOCATE or LINEAR at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12173
+#: fortran/openmp.cc:12424
 #, gcc-internal-format, gfc-internal-format
 msgid "%s iteration variable used in more than one loop at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12179
+#: fortran/openmp.cc:12430
 #, gcc-internal-format, gfc-internal-format
 msgid "%s iteration variable at %L is bound in intervening code"
 msgstr ""
 
-#: fortran/openmp.cc:12188
+#: fortran/openmp.cc:12439
 #, gcc-internal-format, gfc-internal-format
 msgid "%s loop start expression not in canonical form at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12195
+#: fortran/openmp.cc:12446
 #, gcc-internal-format, gfc-internal-format
 msgid "%s loop start expression at %L uses variable bound in intervening code"
 msgstr ""
 
-#: fortran/openmp.cc:12204
+#: fortran/openmp.cc:12455
 #, gcc-internal-format, gfc-internal-format
 msgid "%s loop end expression not in canonical form at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12211
+#: fortran/openmp.cc:12462
 #, gcc-internal-format, gfc-internal-format
 msgid "%s loop end expression at %L uses variable bound in intervening code"
 msgstr ""
 
-#: fortran/openmp.cc:12218
+#: fortran/openmp.cc:12469
 #, gcc-internal-format, gfc-internal-format
 msgid "%s loop bounds reference different iteration variables at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12224
+#: fortran/openmp.cc:12475
 #, gcc-internal-format, gfc-internal-format
 msgid "%s loop increment not in canonical form at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12231
+#: fortran/openmp.cc:12482
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "%s loop increment expression at %L uses variable bound in intervening code"
 msgstr ""
 
-#: fortran/openmp.cc:12242
+#: fortran/openmp.cc:12493
 #, gcc-internal-format
 msgid "Non-rectangular loops from generated loops unsupported"
 msgstr ""
 
 #. Parse error, can't recover from this.
-#: fortran/openmp.cc:12258
+#: fortran/openmp.cc:12509
 #, gcc-internal-format, gfc-internal-format
 msgid "not enough DO loops for collapsed %s (level %d) at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12270
+#: fortran/openmp.cc:12522
 #, gcc-internal-format, gfc-internal-format
 msgid "%s inner loops must be perfectly nested with ORDERED clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12277
+#: fortran/openmp.cc:12529
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "%s inner loops must be perfectly nested with REDUCTION INSCAN clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12284
+#: fortran/openmp.cc:12536
 #, gcc-internal-format, gfc-internal-format
 msgid "%s inner loops must be perfectly nested at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12538 fortran/openmp.cc:12551
+#: fortran/openmp.cc:12584
+#, gcc-internal-format
+msgid "%<score%> argument must be constant integer expression at %L"
+msgstr ""
+
+#: fortran/openmp.cc:12592
+#, gcc-internal-format
+msgid "%<score%> argument must be non-negative at %L"
+msgstr ""
+
+#: fortran/openmp.cc:12621
+#, gcc-internal-format, gfc-internal-format
+msgid "property must be a logical expression at %L"
+msgstr ""
+
+#: fortran/openmp.cc:12625
+#, gcc-internal-format, gfc-internal-format
+msgid "property must be an integer expression at %L"
+msgstr ""
+
+#: fortran/openmp.cc:12632
+#, gcc-internal-format, gfc-internal-format
+msgid "property must be a constant logical expression at %L"
+msgstr ""
+
+#: fortran/openmp.cc:12636
+#, gcc-internal-format, gfc-internal-format
+msgid "property must be a constant integer expression at %L"
+msgstr ""
+
+#: fortran/openmp.cc:12661
+#, gcc-internal-format, gfc-internal-format
+msgid "property must be a conforming device number at %L"
+msgstr ""
+
+#: fortran/openmp.cc:12940 fortran/openmp.cc:12953
 #, gcc-internal-format, gfc-internal-format
 msgid "The %s directive cannot be specified within a %s region at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12570
+#: fortran/openmp.cc:12972
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP cannot be a DO WHILE or DO without loop control at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12576
+#: fortran/openmp.cc:12978
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP cannot be a DO CONCURRENT loop at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12582
+#: fortran/openmp.cc:12984
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP iteration variable must be of type integer at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12598
+#: fortran/openmp.cc:13000
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP %s loops don't form rectangular iteration space at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12610
+#: fortran/openmp.cc:13012
 #, gcc-internal-format, gfc-internal-format
 msgid "%s !$ACC LOOP loops not perfectly nested at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12620 fortran/openmp.cc:12629
+#: fortran/openmp.cc:13022 fortran/openmp.cc:13031
 #, gcc-internal-format, gfc-internal-format
 msgid "not enough DO loops for %s !$ACC LOOP at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12645
+#: fortran/openmp.cc:13047
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Tiled loop cannot be parallelized across gangs, workers and vectors at the "
 "same time at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12666
+#: fortran/openmp.cc:13068
 #, gcc-internal-format, gfc-internal-format
 msgid "TILE requires constant expression at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12766
+#: fortran/openmp.cc:13173
+#, gcc-internal-format
+msgid "Object %qs at %L is ignored as parameters need not be copied"
+msgstr ""
+
+#: fortran/openmp.cc:13180
 #, gcc-internal-format
 msgid "Array sections: %qs not allowed in !$ACC DECLARE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12813
+#: fortran/openmp.cc:13227
 #, gcc-internal-format
 msgid ""
 "NAME %qs does not refer to a subroutine or function in !$ACC ROUTINE "
 "( NAME ) at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12819
+#: fortran/openmp.cc:13233
 #, gcc-internal-format
 msgid "NAME %qs invalid in !$ACC ROUTINE ( NAME ) at %L"
 msgstr ""
 
-#: fortran/openmp.cc:12906
+#: fortran/openmp.cc:13320
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP TARGET region at %L with a nested TEAMS at %L may not contain any "
@@ -84081,242 +88233,247 @@ msgid ""
 "construct"
 msgstr ""
 
-#: fortran/openmp.cc:12910
+#: fortran/openmp.cc:13324
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP TARGET region at %L with a nested TEAMS may not contain any other "
 "statement, declaration or directive outside of the single TEAMS construct"
 msgstr ""
 
-#: fortran/openmp.cc:12928
+#: fortran/openmp.cc:13342
 #, gcc-internal-format
 msgid ""
 "%<OMP DISPATCH%> directive at %L must be followed by a procedure call with "
 "optional assignment"
 msgstr ""
 
-#: fortran/openmp.cc:12935
+#: fortran/openmp.cc:13349
 #, gcc-internal-format
 msgid ""
 "%<OMP DISPATCH%> directive at %L cannot be followed by a procedure pointer"
 msgstr ""
 
-#: fortran/openmp.cc:13030
+#: fortran/openmp.cc:13444
 #, gcc-internal-format, gfc-internal-format
 msgid "OMP TARGET UPDATE at %L requires at least one TO or FROM clause"
 msgstr ""
 
-#: fortran/openmp.cc:13044
+#: fortran/openmp.cc:13458
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "OMP CRITICAL at %L with HINT clause requires a NAME, except when "
 "omp_sync_hint_none is used"
 msgstr ""
 
-#: fortran/openmp.cc:13050
+#: fortran/openmp.cc:13464
 #, gcc-internal-format
 msgid ""
 "Unexpected !$OMP SCAN at %L outside loop construct with %<inscan%> REDUCTION "
 "clause"
 msgstr ""
 
-#: fortran/openmp.cc:13079
+#: fortran/openmp.cc:13493
 #, gcc-internal-format
 msgid "!$OMP DECLARE SIMD should refer to containing procedure %qs at %L"
 msgstr ""
 
-#: fortran/openmp.cc:13115
+#: fortran/openmp.cc:13532
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected constant non-negative scalar integer offset expression at %L"
 msgstr ""
 
-#: fortran/openmp.cc:13118
+#: fortran/openmp.cc:13535
 #, gcc-internal-format
 msgid ""
 "For range-based %<adjust_args%>, a constant positive scalar integer "
 "expression is required at %L"
 msgstr ""
 
-#: fortran/openmp.cc:13132
+#: fortran/openmp.cc:13549
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected dummy parameter name or a positive integer at %L"
 msgstr ""
 
-#: fortran/openmp.cc:13158
+#: fortran/openmp.cc:13575
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable other than OMP_PRIV or OMP_ORIG used in INITIALIZER clause of !$OMP "
 "DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:13166
+#: fortran/openmp.cc:13583
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable other than OMP_OUT or OMP_IN used in combiner of !$OMP DECLARE "
 "REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:13195
+#: fortran/openmp.cc:13612
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid operator for !$OMP DECLARE REDUCTION %s at %L"
 msgstr ""
 
-#: fortran/openmp.cc:13217
+#: fortran/openmp.cc:13634
 #, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER length in !$OMP DECLARE REDUCTION %s not constant at %L"
 msgstr ""
 
-#: fortran/openmp.cc:13233
+#: fortran/openmp.cc:13650
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Subroutine call with alternate returns in combiner of !$OMP DECLARE "
 "REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:13248
+#: fortran/openmp.cc:13665
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Subroutine call with alternate returns in INITIALIZER clause of !$OMP "
 "DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:13258
+#: fortran/openmp.cc:13675
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "One of actual subroutine arguments in INITIALIZER clause of !$OMP DECLARE "
 "REDUCTION must be OMP_PRIV at %L"
 msgstr ""
 
-#: fortran/openmp.cc:13266
+#: fortran/openmp.cc:13683
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Missing INITIALIZER clause for !$OMP DECLARE REDUCTION of derived type "
 "without default initializer at %L"
 msgstr ""
 
-#: fortran/options.cc:290
+#: fortran/options.cc:291
 #, gcc-internal-format
 msgid "%<-fexcess-precision=standard%> for Fortran"
 msgstr ""
 
-#: fortran/options.cc:292
+#: fortran/options.cc:293
 #, gcc-internal-format
 msgid "%<-fexcess-precision=16%> for Fortran"
 msgstr ""
 
-#: fortran/options.cc:386
+#: fortran/options.cc:387
 #, gcc-internal-format
 msgid "Reading file %qs as free form"
 msgstr ""
 
-#: fortran/options.cc:396
+#: fortran/options.cc:397
 #, gcc-internal-format
 msgid "%<-fd-lines-as-comments%> has no effect in free form"
 msgstr ""
 
-#: fortran/options.cc:399
+#: fortran/options.cc:400
 #, gcc-internal-format
 msgid "%<-fd-lines-as-code%> has no effect in free form"
 msgstr ""
 
-#: fortran/options.cc:436
+#: fortran/options.cc:438
 #, gcc-internal-format
 msgid "Flag %<-fno-automatic%> overwrites %<-fmax-stack-var-size=%d%>"
 msgstr ""
 
-#: fortran/options.cc:439
+#: fortran/options.cc:441
 #, gcc-internal-format
 msgid "Flag %<-fno-automatic%> overwrites %<-frecursive%>"
 msgstr ""
 
-#: fortran/options.cc:442
+#: fortran/options.cc:444
 #, gcc-internal-format
 msgid "Flag %<-fno-automatic%> overwrites %<-frecursive%> implied by %qs"
 msgstr ""
 
-#: fortran/options.cc:445
+#: fortran/options.cc:447
 #, gcc-internal-format
 msgid "Flag %<-frecursive%> overwrites %<-fmax-stack-var-size=%d%>"
 msgstr ""
 
-#: fortran/options.cc:448
+#: fortran/options.cc:450
 #, gcc-internal-format
 msgid ""
 "Flag %<-fmax-stack-var-size=%d%> overwrites %<-frecursive%> implied by %qs"
 msgstr ""
 
-#: fortran/options.cc:526
+#: fortran/options.cc:511
+#, gcc-internal-format
+msgid "32- and 64-bit version of BLAS cannot both be specified"
+msgstr ""
+
+#: fortran/options.cc:520
+#, gcc-internal-format
+msgid "-ffrontend-optimize required for -fexternal-blas64"
+msgstr ""
+
+#: fortran/options.cc:536
 #, gcc-internal-format
 msgid "Fixed line length must be at least seven"
 msgstr ""
 
-#: fortran/options.cc:529
+#: fortran/options.cc:539
 #, gcc-internal-format
 msgid "Free line length must be at least three"
 msgstr ""
 
-#: fortran/options.cc:532
+#: fortran/options.cc:542
 #, gcc-internal-format, gfc-internal-format
 msgid "Maximum subrecord length cannot exceed %d"
 msgstr ""
 
-#: fortran/options.cc:555
+#: fortran/options.cc:565
 #, gcc-internal-format
 msgid "gfortran: Only one %<-J%> option allowed"
 msgstr ""
 
-#: fortran/options.cc:630
+#: fortran/options.cc:640
 #, gcc-internal-format
 msgid "Argument to %<-ffpe-trap%> is not valid: %s"
 msgstr ""
 
-#: fortran/options.cc:632
+#: fortran/options.cc:642
 #, gcc-internal-format
 msgid "Argument to %<-ffpe-summary%> is not valid: %s"
 msgstr ""
 
-#: fortran/options.cc:681
-#, gcc-internal-format
-msgid "Argument to %<-fcheck%> is not valid: %s"
-msgstr ""
-
-#: fortran/options.cc:746
+#: fortran/options.cc:756
 #, gcc-internal-format, gfc-internal-format
 msgid "Maximum supported identifier length is %d"
 msgstr ""
 
-#: fortran/options.cc:761
+#: fortran/options.cc:771
 #, gcc-internal-format
 msgid "Unrecognized option to %<-finit-logical%>: %s"
 msgstr ""
 
-#: fortran/options.cc:777
+#: fortran/options.cc:787
 #, gcc-internal-format
 msgid "The value of n in %<-finit-character=n%> must be between 0 and 127"
 msgstr ""
 
-#: fortran/options.cc:889
+#: fortran/options.cc:903
 #, gcc-internal-format
 msgid "command-line option %<-fno-builtin-%s%> is not valid for Fortran"
 msgstr ""
 
-#: fortran/parse.cc:664
+#: fortran/parse.cc:669
 #, gcc-internal-format, gfc-internal-format
 msgid "Unclassifiable statement at %C"
 msgstr ""
 
-#: fortran/parse.cc:728
+#: fortran/parse.cc:733
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "OpenACC directives other than ROUTINE may not appear in PURE procedures at %C"
 msgstr ""
 
-#: fortran/parse.cc:794
+#: fortran/parse.cc:799
 #, gcc-internal-format, gfc-internal-format
 msgid "Unclassifiable OpenACC directive at %C"
 msgstr ""
 
-#: fortran/parse.cc:826
+#: fortran/parse.cc:831
 #, gcc-internal-format
 msgid ""
 "%qs directive at %L must either have a variable argument or, if associated "
@@ -84324,7 +88481,7 @@ msgid ""
 "construct"
 msgstr ""
 
-#: fortran/parse.cc:838
+#: fortran/parse.cc:843
 #, gcc-internal-format
 msgid ""
 "Structure-component expression at %L in %qs directive not permitted in "
@@ -84332,7 +88489,7 @@ msgid ""
 "be preceded by an executable statement or OpenMP construct"
 msgstr ""
 
-#: fortran/parse.cc:864
+#: fortran/parse.cc:869
 #, gcc-internal-format
 msgid ""
 "%qs directive at %L associated with an ALLOCATE stmt must be preceded by an "
@@ -84340,151 +88497,151 @@ msgid ""
 "have the allocatable or pointer attribute"
 msgstr ""
 
-#: fortran/parse.cc:1054 fortran/parse.cc:1365
+#: fortran/parse.cc:1059 fortran/parse.cc:1373
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "OpenMP directive at %C is not pure and thus may not appear in a PURE "
 "procedure"
 msgstr ""
 
-#: fortran/parse.cc:1332
+#: fortran/parse.cc:1340
 #, gcc-internal-format, gfc-internal-format
 msgid "Unclassifiable OpenMP directive at %C"
 msgstr ""
 
-#: fortran/parse.cc:1352
+#: fortran/parse.cc:1360
 #, gcc-internal-format
 msgid ""
 "OpenMP ERROR directive at %L with %<at(execution)%> clause in a PURE "
 "procedure"
 msgstr ""
 
-#: fortran/parse.cc:1490
+#: fortran/parse.cc:1498
 #, gcc-internal-format, gfc-internal-format
 msgid "Unclassifiable GCC directive at %C"
 msgstr ""
 
-#: fortran/parse.cc:1492
+#: fortran/parse.cc:1500
 #, gcc-internal-format, gfc-internal-format
 msgid "Unclassifiable GCC directive at %C, ignored"
 msgstr ""
 
-#: fortran/parse.cc:1552 fortran/parse.cc:1779
+#: fortran/parse.cc:1560 fortran/parse.cc:1787
 #, gcc-internal-format, gfc-internal-format
 msgid "Zero is not a valid statement label at %C"
 msgstr ""
 
-#: fortran/parse.cc:1559 fortran/parse.cc:1771
+#: fortran/parse.cc:1567 fortran/parse.cc:1779
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-numeric character in statement label at %C"
 msgstr ""
 
-#: fortran/parse.cc:1571 fortran/parse.cc:1820
+#: fortran/parse.cc:1579 fortran/parse.cc:1828
 #, gcc-internal-format, gfc-internal-format
 msgid "Semicolon at %C needs to be preceded by statement"
 msgstr ""
 
-#: fortran/parse.cc:1578 fortran/parse.cc:1835
+#: fortran/parse.cc:1586 fortran/parse.cc:1843
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement label without statement at %L"
 msgstr ""
 
-#: fortran/parse.cc:1641 fortran/parse.cc:1822
+#: fortran/parse.cc:1649 fortran/parse.cc:1830
 #, gcc-internal-format, gfc-internal-format
 msgid "Fortran 2008: Semicolon at %C without preceding statement"
 msgstr ""
 
-#: fortran/parse.cc:1664 fortran/parse.cc:1798
+#: fortran/parse.cc:1672 fortran/parse.cc:1806
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad continuation line at %C"
 msgstr ""
 
-#: fortran/parse.cc:2150
+#: fortran/parse.cc:2159
 #, gcc-internal-format, gfc-internal-format
 msgid "FORMAT statement at %L does not have a statement label"
 msgstr ""
 
-#: fortran/parse.cc:3096
+#: fortran/parse.cc:3108
 #, gcc-internal-format
 msgid "gfc_ascii_statement(): Bad statement code"
 msgstr ""
 
-#: fortran/parse.cc:3249
+#: fortran/parse.cc:3261
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement at %C"
 msgstr ""
 
-#: fortran/parse.cc:3408
+#: fortran/parse.cc:3420
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C cannot follow %s statement at %L"
 msgstr ""
 
-#: fortran/parse.cc:3425
+#: fortran/parse.cc:3437
 #, gcc-internal-format
 msgid "Unexpected end of file in %qs"
 msgstr ""
 
-#: fortran/parse.cc:3460
+#: fortran/parse.cc:3472
 #, gcc-internal-format
 msgid "Derived-type %qs with SEQUENCE must not have a CONTAINS section at %C"
 msgstr ""
 
-#: fortran/parse.cc:3463
+#: fortran/parse.cc:3475
 #, gcc-internal-format
 msgid "Derived-type %qs with BIND(C) must not have a CONTAINS section at %C"
 msgstr ""
 
-#: fortran/parse.cc:3483
+#: fortran/parse.cc:3495
 #, gcc-internal-format, gfc-internal-format
 msgid "Components in TYPE at %C must precede CONTAINS"
 msgstr ""
 
-#: fortran/parse.cc:3487
+#: fortran/parse.cc:3499
 #, gcc-internal-format, gfc-internal-format
 msgid "Type-bound procedure at %C"
 msgstr ""
 
-#: fortran/parse.cc:3495
+#: fortran/parse.cc:3507
 #, gcc-internal-format, gfc-internal-format
 msgid "GENERIC binding at %C"
 msgstr ""
 
-#: fortran/parse.cc:3503
+#: fortran/parse.cc:3515
 #, gcc-internal-format, gfc-internal-format
 msgid "FINAL procedure declaration at %C"
 msgstr ""
 
-#: fortran/parse.cc:3515
+#: fortran/parse.cc:3527
 #, gcc-internal-format, gfc-internal-format
 msgid "Derived type definition at %C with empty CONTAINS section"
 msgstr ""
 
-#: fortran/parse.cc:3525 fortran/parse.cc:3980
+#: fortran/parse.cc:3537 fortran/parse.cc:4017
 #, gcc-internal-format, gfc-internal-format
 msgid "PRIVATE statement in TYPE at %C must be inside a MODULE"
 msgstr ""
 
-#: fortran/parse.cc:3532
+#: fortran/parse.cc:3544
 #, gcc-internal-format, gfc-internal-format
 msgid "PRIVATE statement at %C must precede procedure bindings"
 msgstr ""
 
-#: fortran/parse.cc:3539 fortran/parse.cc:3993
+#: fortran/parse.cc:3551 fortran/parse.cc:4030
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate PRIVATE statement at %C"
 msgstr ""
 
-#: fortran/parse.cc:3549
+#: fortran/parse.cc:3561
 #, gcc-internal-format, gfc-internal-format
 msgid "SEQUENCE statement at %C must precede CONTAINS"
 msgstr ""
 
-#: fortran/parse.cc:3553
+#: fortran/parse.cc:3565
 #, gcc-internal-format, gfc-internal-format
 msgid "Already inside a CONTAINS block at %C"
 msgstr ""
 
-#: fortran/parse.cc:3672
+#: fortran/parse.cc:3684
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Component %s at %L of type LOCK_TYPE must have a codimension or be a "
@@ -84492,27 +88649,21 @@ msgid ""
 "pointer attribute"
 msgstr ""
 
-#: fortran/parse.cc:3678
+#: fortran/parse.cc:3690
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Pointer component %s at %L has a noncoarray subcomponent of type LOCK_TYPE, "
 "which must have a codimension or be a subcomponent of a coarray"
 msgstr ""
 
-#: fortran/parse.cc:3683
-#, gcc-internal-format, gfc-internal-format
-msgid ""
-"Allocatable component %s at %L of type LOCK_TYPE must have a codimension"
-msgstr ""
-
-#: fortran/parse.cc:3687
+#: fortran/parse.cc:3696
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocatable component %s at %L must have a codimension as it has a "
 "noncoarray subcomponent of type LOCK_TYPE"
 msgstr ""
 
-#: fortran/parse.cc:3692
+#: fortran/parse.cc:3701
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Noncoarray component %s at %L of type LOCK_TYPE or with subcomponent of type "
@@ -84521,7 +88672,7 @@ msgid ""
 "subcomponent exists)"
 msgstr ""
 
-#: fortran/parse.cc:3699
+#: fortran/parse.cc:3708
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Noncoarray component %s at %L of type LOCK_TYPE or with subcomponent of type "
@@ -84530,7 +88681,7 @@ msgid ""
 "codimension or a coarray subcomponent)"
 msgstr ""
 
-#: fortran/parse.cc:3709
+#: fortran/parse.cc:3718
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Component %s at %L of type EVENT_TYPE must have a codimension or be a "
@@ -84538,27 +88689,27 @@ msgid ""
 "pointer attribute"
 msgstr ""
 
-#: fortran/parse.cc:3715
+#: fortran/parse.cc:3724
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Pointer component %s at %L has a noncoarray subcomponent of type EVENT_TYPE, "
 "which must have a codimension or be a subcomponent of a coarray"
 msgstr ""
 
-#: fortran/parse.cc:3720
+#: fortran/parse.cc:3729
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocatable component %s at %L of type EVENT_TYPE must have a codimension"
 msgstr ""
 
-#: fortran/parse.cc:3724
+#: fortran/parse.cc:3733
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocatable component %s at %L must have a codimension as it has a "
 "noncoarray subcomponent of type EVENT_TYPE"
 msgstr ""
 
-#: fortran/parse.cc:3729
+#: fortran/parse.cc:3738
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Noncoarray component %s at %L of type EVENT_TYPE or with subcomponent of "
@@ -84567,7 +88718,7 @@ msgid ""
 "subcomponent exists)"
 msgstr ""
 
-#: fortran/parse.cc:3736
+#: fortran/parse.cc:3745
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Noncoarray component %s at %L of type EVENT_TYPE or with subcomponent of "
@@ -84576,206 +88727,216 @@ msgid ""
 "codimension or a coarray subcomponent)"
 msgstr ""
 
-#: fortran/parse.cc:3788
+#: fortran/parse.cc:3797
 #, gcc-internal-format, gfc-internal-format
 msgid "failed to create map component '%s'"
 msgstr ""
 
-#: fortran/parse.cc:3821
+#: fortran/parse.cc:3830
 #, gcc-internal-format, gfc-internal-format
 msgid "failed to create union component '%s'"
 msgstr ""
 
-#: fortran/parse.cc:3876
+#: fortran/parse.cc:3885
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in nested structure declaration at %C"
 msgstr ""
 
-#: fortran/parse.cc:3963
+#: fortran/parse.cc:3982
+#, gcc-internal-format, gfc-internal-format
+msgid "Access specification of a type parameter at %C is not allowed"
+msgstr ""
+
+#: fortran/parse.cc:3989
+#, gcc-internal-format, gfc-internal-format
+msgid "The type parameter at %C must come before a PRIVATE statement"
+msgstr ""
+
+#: fortran/parse.cc:4000
 #, gcc-internal-format, gfc-internal-format
 msgid "FINAL declaration at %C must be inside CONTAINS"
 msgstr ""
 
-#: fortran/parse.cc:3971
+#: fortran/parse.cc:4008
 #, gcc-internal-format, gfc-internal-format
 msgid "Derived type definition at %C without components"
 msgstr ""
 
-#: fortran/parse.cc:3987
+#: fortran/parse.cc:4024
 #, gcc-internal-format, gfc-internal-format
 msgid "PRIVATE statement at %C must precede structure components"
 msgstr ""
 
-#: fortran/parse.cc:4004
+#: fortran/parse.cc:4044
 #, gcc-internal-format, gfc-internal-format
 msgid "SEQUENCE statement at %C must precede structure components"
 msgstr ""
 
-#: fortran/parse.cc:4010
+#: fortran/parse.cc:4050
 #, gcc-internal-format, gfc-internal-format
 msgid "SEQUENCE attribute at %C already specified in TYPE statement"
 msgstr ""
 
-#: fortran/parse.cc:4015
+#: fortran/parse.cc:4055
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate SEQUENCE statement at %C"
 msgstr ""
 
-#: fortran/parse.cc:4025
+#: fortran/parse.cc:4065
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTAINS block in derived type definition at %C"
 msgstr ""
 
-#: fortran/parse.cc:4083
+#: fortran/parse.cc:4123
 #, gcc-internal-format, gfc-internal-format
 msgid "ENUM declaration at %C has no ENUMERATORS"
 msgstr ""
 
-#: fortran/parse.cc:4170
+#: fortran/parse.cc:4210
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in INTERFACE block at %C"
 msgstr ""
 
-#: fortran/parse.cc:4195
+#: fortran/parse.cc:4235
 #, gcc-internal-format
 msgid ""
 "Name %qs of ABSTRACT INTERFACE at %C cannot be the same as an intrinsic type"
 msgstr ""
 
-#: fortran/parse.cc:4226
+#: fortran/parse.cc:4266
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement at %C in INTERFACE body"
 msgstr ""
 
-#: fortran/parse.cc:4244
+#: fortran/parse.cc:4284
 #, gcc-internal-format
 msgid ""
 "INTERFACE procedure %qs at %L has the same name as the enclosing procedure"
 msgstr ""
 
-#: fortran/parse.cc:4383
+#: fortran/parse.cc:4423
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement is not allowed inside of BLOCK at %C"
 msgstr ""
 
-#: fortran/parse.cc:4415
+#: fortran/parse.cc:4457
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement is not allowed inside of BLOCK DATA at %C"
 msgstr ""
 
-#: fortran/parse.cc:4499
+#: fortran/parse.cc:4541
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement must appear in a MODULE"
 msgstr ""
 
-#: fortran/parse.cc:4507
+#: fortran/parse.cc:4549
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C follows another accessibility specification"
 msgstr ""
 
-#: fortran/parse.cc:4559
+#: fortran/parse.cc:4606
 #, gcc-internal-format
 msgid "Bad kind expression for function %qs at %L"
 msgstr ""
 
-#: fortran/parse.cc:4563
+#: fortran/parse.cc:4610
 #, gcc-internal-format
 msgid "The type for function %qs at %L is not accessible"
 msgstr ""
 
-#: fortran/parse.cc:4623
+#: fortran/parse.cc:4670
 #, gcc-internal-format, gfc-internal-format
 msgid "ELSEWHERE statement at %C follows previous unmasked ELSEWHERE"
 msgstr ""
 
-#: fortran/parse.cc:4645
+#: fortran/parse.cc:4692
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in WHERE block at %C"
 msgstr ""
 
-#: fortran/parse.cc:4704
+#: fortran/parse.cc:4751
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in FORALL block at %C"
 msgstr ""
 
-#: fortran/parse.cc:4755
+#: fortran/parse.cc:4802
 #, gcc-internal-format, gfc-internal-format
 msgid "ELSE IF statement at %C cannot follow ELSE statement at %L"
 msgstr ""
 
-#: fortran/parse.cc:4773
+#: fortran/parse.cc:4820
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate ELSE statements at %L and %C"
 msgstr ""
 
-#: fortran/parse.cc:4834
+#: fortran/parse.cc:4881
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected a CASE or END SELECT statement following SELECT CASE at %C"
 msgstr ""
 
-#: fortran/parse.cc:4918
+#: fortran/parse.cc:4965
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Expected TYPE IS, CLASS IS or END SELECT statement following SELECT TYPE at "
 "%C"
 msgstr ""
 
-#: fortran/parse.cc:4994
+#: fortran/parse.cc:5041
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected RANK or RANK DEFAULT following SELECT RANK at %C"
 msgstr ""
 
-#: fortran/parse.cc:5058
+#: fortran/parse.cc:5105
 #, gcc-internal-format
 msgid "Variable %qs at %C cannot be redefined inside loop beginning at %L"
 msgstr ""
 
-#: fortran/parse.cc:5091
+#: fortran/parse.cc:5138
 #, gcc-internal-format, gfc-internal-format
 msgid "End of nonblock DO statement at %C is within another block"
 msgstr ""
 
-#: fortran/parse.cc:5101
+#: fortran/parse.cc:5148
 #, gcc-internal-format, gfc-internal-format
 msgid "End of nonblock DO statement at %C is interwoven with another DO loop"
 msgstr ""
 
-#: fortran/parse.cc:5127
+#: fortran/parse.cc:5174
 #, gcc-internal-format, gfc-internal-format
 msgid "CRITICAL block inside of OpenACC region at %C"
 msgstr ""
 
-#: fortran/parse.cc:5128
+#: fortran/parse.cc:5175
 #, gcc-internal-format, gfc-internal-format
 msgid "CRITICAL block inside of OpenMP region at %C"
 msgstr ""
 
-#: fortran/parse.cc:5154
+#: fortran/parse.cc:5201
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement label in END CRITICAL at %C does not match CRITICAL label"
 msgstr ""
 
-#: fortran/parse.cc:5223 fortran/parse.cc:6210
+#: fortran/parse.cc:5270 fortran/parse.cc:6257
 #, gcc-internal-format, gfc-internal-format
 msgid "BLOCK construct at %C"
 msgstr ""
 
-#: fortran/parse.cc:5445
+#: fortran/parse.cc:5492
 #, gcc-internal-format, gfc-internal-format
 msgid "ASSOCIATE construct at %C"
 msgstr ""
 
-#: fortran/parse.cc:5489
+#: fortran/parse.cc:5536
 #, gcc-internal-format, gfc-internal-format
 msgid "CHANGE TEAM construct at %C"
 msgstr ""
 
-#: fortran/parse.cc:5615
+#: fortran/parse.cc:5662
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement label in ENDDO at %C doesn't match DO label"
 msgstr ""
 
-#: fortran/parse.cc:5631
+#: fortran/parse.cc:5678
 #, gcc-internal-format, gfc-internal-format
 msgid "Named block DO at %L requires matching ENDDO name"
 msgstr ""
@@ -84788,168 +88949,173 @@ msgstr ""
 #. and the "end metadirective" which is required in a
 #. "begin metadirective" construct, or perhaps the
 #. "end metadirective" is missing entirely.
-#: fortran/parse.cc:5865 fortran/parse.cc:6362
+#: fortran/parse.cc:5912 fortran/parse.cc:6409
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected OMP END METADIRECTIVE at %C"
 msgstr ""
 
-#: fortran/parse.cc:5875 fortran/parse.cc:6378 fortran/parse.cc:6396
+#: fortran/parse.cc:5922 fortran/parse.cc:6425 fortran/parse.cc:6443
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicated NOWAIT clause on %s and %s at %C"
 msgstr ""
 
-#: fortran/parse.cc:5979 fortran/parse.cc:6041
+#: fortran/parse.cc:6026 fortran/parse.cc:6088
 #, gcc-internal-format, gfc-internal-format
 msgid "OpenACC directive inside of CRITICAL block at %C"
 msgstr ""
 
-#: fortran/parse.cc:6016
+#: fortran/parse.cc:6063
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting %s at %C"
 msgstr ""
 
-#: fortran/parse.cc:6060
+#: fortran/parse.cc:6107
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected DO loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:6080
+#: fortran/parse.cc:6127
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant !$ACC END LOOP at %C"
 msgstr ""
 
-#: fortran/parse.cc:6130
+#: fortran/parse.cc:6177
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statements at %L and %L have both no list item but only one may"
 msgstr ""
 
-#: fortran/parse.cc:6150
+#: fortran/parse.cc:6197
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s at %C; expected ALLOCATE or %s statement"
 msgstr ""
 
-#: fortran/parse.cc:6153
+#: fortran/parse.cc:6200
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s at %C; expected ALLOCATE statement after %s"
 msgstr ""
 
-#: fortran/parse.cc:6389
+#: fortran/parse.cc:6436
 #, gcc-internal-format, gfc-internal-format
 msgid "Name after !$omp critical and !$omp end critical does not match at %C"
 msgstr ""
 
-#: fortran/parse.cc:6453
+#: fortran/parse.cc:6500
 #, gcc-internal-format
 msgid ""
 "%<OMP DISPATCH%> directive must be followed by a procedure call with "
 "optional assignment at %C"
 msgstr ""
 
-#: fortran/parse.cc:6464
+#: fortran/parse.cc:6511
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicated NOWAIT clause on !$OMP DISPATCH and !$OMP END DISPATCH at %C"
 msgstr ""
 
-#: fortran/parse.cc:6536
+#: fortran/parse.cc:6586
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in OMP METADIRECTIVE block at %C"
 msgstr ""
 
-#: fortran/parse.cc:6577
+#: fortran/parse.cc:6649
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variants in a metadirective at %L have different associations; consider "
 "using a BLOCK construct or BEGIN/END METADIRECTIVE"
 msgstr ""
 
-#: fortran/parse.cc:6582
+#: fortran/parse.cc:6654
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variants in a metadirective at %L have different associations; consider "
 "using a BLOCK construct"
 msgstr ""
 
-#: fortran/parse.cc:6633
+#: fortran/parse.cc:6705
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C cannot terminate a non-block DO loop"
 msgstr ""
 
-#: fortran/parse.cc:6647
+#: fortran/parse.cc:6719
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %C after the first executable statement"
 msgstr ""
 
-#: fortran/parse.cc:6767
+#: fortran/parse.cc:6839
 #, gcc-internal-format
 msgid "%<GCC unroll%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:6770
+#: fortran/parse.cc:6842
 #, gcc-internal-format
 msgid "%<GCC ivdep%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:6773
+#: fortran/parse.cc:6845
 #, gcc-internal-format
 msgid "%<GCC vector%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:6776
+#: fortran/parse.cc:6848
 #, gcc-internal-format
 msgid "%<GCC novector%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:6892
+#: fortran/parse.cc:6967
 #, gcc-internal-format
 msgid "Contained procedure %qs at %C is already ambiguous"
 msgstr ""
 
-#: fortran/parse.cc:6949
+#: fortran/parse.cc:7024
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in CONTAINS section at %C"
 msgstr ""
 
-#: fortran/parse.cc:6974
+#: fortran/parse.cc:7049
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTAINS statement without FUNCTION or SUBROUTINE statement at %L"
 msgstr ""
 
-#: fortran/parse.cc:7088
+#: fortran/parse.cc:7144
+#, gcc-internal-format, gfc-internal-format
+msgid "%s statement at %C cannot appear after executable statements"
+msgstr ""
+
+#: fortran/parse.cc:7172
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTAINS statement at %C is already in a contained program unit"
 msgstr ""
 
-#: fortran/parse.cc:7140
+#: fortran/parse.cc:7224
 #, gcc-internal-format
 msgid "Global binding name %qs at %L is already being used as a %s at %L"
 msgstr ""
 
-#: fortran/parse.cc:7144
+#: fortran/parse.cc:7228
 #, gcc-internal-format
 msgid "Global name %qs at %L is already being used as a %s at %L"
 msgstr ""
 
-#: fortran/parse.cc:7150
+#: fortran/parse.cc:7234
 #, gcc-internal-format
 msgid "Global binding name %qs at %L is already being used at %L"
 msgstr ""
 
-#: fortran/parse.cc:7153
+#: fortran/parse.cc:7237
 #, gcc-internal-format
 msgid "Global name %qs at %L is already being used at %L"
 msgstr ""
 
-#: fortran/parse.cc:7175
+#: fortran/parse.cc:7259
 #, gcc-internal-format, gfc-internal-format
 msgid "Blank BLOCK DATA at %C conflicts with prior BLOCK DATA at %L"
 msgstr ""
 
-#: fortran/parse.cc:7201
+#: fortran/parse.cc:7285
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in BLOCK DATA at %C"
 msgstr ""
 
-#: fortran/parse.cc:7304
+#: fortran/parse.cc:7388
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in MODULE at %C"
 msgstr ""
@@ -84957,7 +89123,7 @@ msgstr ""
 #. If we see a duplicate main program, shut down.  If the second
 #. instance is an implied main program, i.e. data decls or executable
 #. statements, we're in for lots of errors.
-#: fortran/parse.cc:7821
+#: fortran/parse.cc:7915
 #, gcc-internal-format, gfc-internal-format
 msgid "Two main PROGRAMs at %L and %C"
 msgstr ""
@@ -85187,238 +89353,245 @@ msgstr ""
 msgid "Missing keyword name in actual argument list at %C"
 msgstr ""
 
-#: fortran/primary.cc:2087
+#: fortran/primary.cc:2104
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in argument list at %C"
 msgstr ""
 
-#: fortran/primary.cc:2108
-#, gcc-internal-format
-msgid "extend_ref(): Bad tail"
-msgstr ""
-
-#: fortran/primary.cc:2210
+#: fortran/primary.cc:2235
 #, gcc-internal-format
 msgid ""
 "Array section designator, e.g. %<(:)%>, is required besides the coarray "
 "designator %<[...]%> at %C"
 msgstr ""
 
-#: fortran/primary.cc:2218
+#: fortran/primary.cc:2243
 #, gcc-internal-format
 msgid "Coarray designator at %C but %qs is not a coarray"
 msgstr ""
 
-#: fortran/primary.cc:2461
+#: fortran/primary.cc:2540
 #, gcc-internal-format
 msgid "Symbol %qs at %C has no IMPLICIT type"
 msgstr ""
 
-#: fortran/primary.cc:2468
+#: fortran/primary.cc:2547
 #, gcc-internal-format
 msgid "Unexpected %<%c%> for nonderived-type variable %qs at %C"
 msgstr ""
 
-#: fortran/primary.cc:2489
+#: fortran/primary.cc:2569
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected structure component name at %C"
 msgstr ""
 
-#: fortran/primary.cc:2510 fortran/primary.cc:2685
+#: fortran/primary.cc:2600 fortran/primary.cc:2791
 #, gcc-internal-format, gfc-internal-format
 msgid "RE or IM part_ref at %C"
 msgstr ""
 
-#: fortran/primary.cc:2562 fortran/primary.cc:2690
+#: fortran/primary.cc:2652 fortran/primary.cc:2796
 #, gcc-internal-format, gfc-internal-format
 msgid "The RE or IM part_ref at %C must be applied to a COMPLEX expression"
 msgstr ""
 
-#: fortran/primary.cc:2569 fortran/primary.cc:2703
+#: fortran/primary.cc:2659 fortran/primary.cc:2809
 #, gcc-internal-format, gfc-internal-format
 msgid "The LEN part_ref at %C must be applied to a CHARACTER expression"
 msgstr ""
 
-#: fortran/primary.cc:2628
+#: fortran/primary.cc:2718
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected argument list at %C"
 msgstr ""
 
-#: fortran/primary.cc:2646
+#: fortran/primary.cc:2736
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"R901: A type parameter ref is not a designtor and cannot be followed by the "
+"type inquiry ref at %C"
+msgstr ""
+
+#: fortran/primary.cc:2744
 #, gcc-internal-format
 msgid ""
 "%qs at %C is not an inquiry reference to an intrinsic type component %qs"
 msgstr ""
 
-#: fortran/primary.cc:2649
+#: fortran/primary.cc:2747
 #, gcc-internal-format
 msgid "%qs at %C is not an inquiry reference to an intrinsic type component"
 msgstr ""
 
-#: fortran/primary.cc:2719
+#: fortran/primary.cc:2825
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The KIND part_ref at %C must be applied to an expression of intrinsic type"
 msgstr ""
 
-#: fortran/primary.cc:2747
+#: fortran/primary.cc:2853
 #, gcc-internal-format
 msgid "Procedure pointer component %qs requires an argument list at %C"
 msgstr ""
 
-#: fortran/primary.cc:2833
+#: fortran/primary.cc:2940
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected array/substring ref at %C"
 msgstr ""
 
-#: fortran/primary.cc:2855
+#: fortran/primary.cc:2962
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonpolymorphic reference to abstract type at %C"
 msgstr ""
 
-#: fortran/primary.cc:2862
+#: fortran/primary.cc:2969
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindexed procedure-pointer component at %C"
 msgstr ""
 
-#: fortran/primary.cc:2900
+#: fortran/primary.cc:3008
 #, gcc-internal-format
 msgid "gfc_variable_attr(): Expression isn't a variable"
 msgstr ""
 
-#: fortran/primary.cc:3118
+#: fortran/primary.cc:3232
 #, gcc-internal-format
 msgid "gfc_caf_attr(): Expression isn't a variable"
 msgstr ""
 
-#: fortran/primary.cc:3175
+#: fortran/primary.cc:3289
 #, gcc-internal-format
 msgid "gfc_caf_attr(): Bad array reference"
 msgstr ""
 
-#: fortran/primary.cc:3354
+#: fortran/primary.cc:3468
 #, gcc-internal-format
 msgid ""
 "No initializer for allocatable component %qs given in the structure "
 "constructor at %C"
 msgstr ""
 
-#: fortran/primary.cc:3365
+#: fortran/primary.cc:3479
 #, gcc-internal-format, gfc-internal-format
 msgid "Structure constructor with missing optional arguments at %C"
 msgstr ""
 
-#: fortran/primary.cc:3374
+#: fortran/primary.cc:3488
 #, gcc-internal-format
 msgid ""
 "No initializer for component %qs given in the structure constructor at %C"
 msgstr ""
 
-#: fortran/primary.cc:3422
+#: fortran/primary.cc:3536
 #, gcc-internal-format
 msgid "Cannot construct ABSTRACT type %qs at %L"
 msgstr ""
 
-#: fortran/primary.cc:3442
+#: fortran/primary.cc:3556
 #, gcc-internal-format, gfc-internal-format
 msgid "Structure constructor with named arguments at %C"
 msgstr ""
 
-#: fortran/primary.cc:3457
+#: fortran/primary.cc:3571
 #, gcc-internal-format, gfc-internal-format
 msgid "Component initializer without name after component named %s at %L"
 msgstr ""
 
-#: fortran/primary.cc:3462
+#: fortran/primary.cc:3576
 #, gcc-internal-format, gfc-internal-format
 msgid "Too many components in structure constructor at %L"
 msgstr ""
 
-#: fortran/primary.cc:3521
+#: fortran/primary.cc:3635
 msgid "CHARACTER expression will be truncated in constructor (%td/%td) at %L"
 msgstr ""
 
-#: fortran/primary.cc:3539
+#: fortran/primary.cc:3653
 #, gcc-internal-format
 msgid "Component %qs is initialized twice in the structure constructor at %L"
 msgstr ""
 
-#: fortran/primary.cc:3551
+#: fortran/primary.cc:3665
 #, gcc-internal-format
 msgid ""
 "Coindexed expression to pointer component %qs in structure constructor at %L"
 msgstr ""
 
-#: fortran/primary.cc:3605
+#: fortran/primary.cc:3719
 #, gcc-internal-format
 msgid ""
 "component %qs at %L has already been set by a parent derived type constructor"
 msgstr ""
 
-#: fortran/primary.cc:3768
+#: fortran/primary.cc:3883
 #, gcc-internal-format, gfc-internal-format
 msgid "%%LOC() as an rvalue at %C"
 msgstr ""
 
-#: fortran/primary.cc:3827
+#: fortran/primary.cc:3942
 #, gcc-internal-format
 msgid ""
 "%qs at %C is the name of a recursive function and so refers to the result "
 "variable. Use an explicit RESULT variable for direct recursion (12.5.2.1)"
 msgstr ""
 
-#: fortran/primary.cc:3858 fortran/primary.cc:4265
+#: fortran/primary.cc:3973 fortran/primary.cc:4488
 #, gcc-internal-format, gfc-internal-format
 msgid "Symbol at %C is not appropriate for an expression"
 msgstr ""
 
-#: fortran/primary.cc:3963
+#: fortran/primary.cc:4078
 #, gcc-internal-format
 msgid "Unexpected use of subroutine name %qs at %C"
 msgstr ""
 
-#: fortran/primary.cc:3995
+#: fortran/primary.cc:4110
 #, gcc-internal-format
 msgid "Statement function %qs requires argument list at %C"
 msgstr ""
 
-#: fortran/primary.cc:3998
+#: fortran/primary.cc:4113
 #, gcc-internal-format
 msgid "Function %qs requires an argument list at %C"
 msgstr ""
 
-#: fortran/primary.cc:4053
+#: fortran/primary.cc:4160
+#, gcc-internal-format, gfc-internal-format
+msgid "F2023 R755: The empty type specification at %C is not allowed"
+msgstr ""
+
+#: fortran/primary.cc:4276
 #, gcc-internal-format
 msgid "Missing argument to %qs at %C"
 msgstr ""
 
-#: fortran/primary.cc:4066
+#: fortran/primary.cc:4289
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The leftmost part-ref in a data-ref cannot be a function reference at %C"
 msgstr ""
 
-#: fortran/primary.cc:4221
+#: fortran/primary.cc:4444
 #, gcc-internal-format
 msgid "Missing argument list in function %qs at %C"
 msgstr ""
 
-#: fortran/primary.cc:4337
+#: fortran/primary.cc:4570
 #, gcc-internal-format
 msgid "Derived type %qs cannot be used as a variable at %C"
 msgstr ""
 
-#: fortran/primary.cc:4378
+#: fortran/primary.cc:4611
 #, gcc-internal-format, gfc-internal-format
 msgid "Named constant at %C in an EQUIVALENCE"
 msgstr ""
 
-#: fortran/primary.cc:4383
+#: fortran/primary.cc:4616
 #, gcc-internal-format
 msgid "PARAMETER %qs shall not appear in a DATA statement at %C"
 msgstr ""
 
-#: fortran/primary.cc:4419
+#: fortran/primary.cc:4652
 #, gcc-internal-format
 msgid "%qs at %C is not a variable"
 msgstr ""
@@ -85565,304 +89738,304 @@ msgid ""
 "length"
 msgstr ""
 
-#: fortran/resolve.cc:578
+#: fortran/resolve.cc:579
 #, gcc-internal-format
 msgid ""
 "Contained procedure %qs at %L has the same name as its encompassing procedure"
 msgstr ""
 
-#: fortran/resolve.cc:598
+#: fortran/resolve.cc:599
 #, gcc-internal-format
 msgid "Contained function %qs at %L has no IMPLICIT type"
 msgstr ""
 
-#: fortran/resolve.cc:601
+#: fortran/resolve.cc:602
 #, gcc-internal-format
 msgid "Result %qs of contained function %qs at %L has no IMPLICIT type"
 msgstr ""
 
-#: fortran/resolve.cc:627
+#: fortran/resolve.cc:628
 #, gcc-internal-format
 msgid "Character-valued module procedure %qs at %L must not be assumed length"
 msgstr ""
 
-#: fortran/resolve.cc:629
+#: fortran/resolve.cc:630
 #, gcc-internal-format
 msgid "Character-valued internal function %qs at %L must not be assumed length"
 msgstr ""
 
-#: fortran/resolve.cc:802
+#: fortran/resolve.cc:803
 #, gcc-internal-format, gfc-internal-format
 msgid "Function %s at %L has entries with mismatched array specifications"
 msgstr ""
 
-#: fortran/resolve.cc:813
+#: fortran/resolve.cc:814
 #, gcc-internal-format, gfc-internal-format
 msgid "Function %s at %L has entry %s with mismatched characteristics"
 msgstr ""
 
-#: fortran/resolve.cc:828
+#: fortran/resolve.cc:829
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Function %s at %L with entries returning variables of different string "
 "lengths"
 msgstr ""
 
-#: fortran/resolve.cc:860
+#: fortran/resolve.cc:861
 #, gcc-internal-format, gfc-internal-format
 msgid "FUNCTION result %s cannot be an array in FUNCTION %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:864
+#: fortran/resolve.cc:865
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY result %s cannot be an array in FUNCTION %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:871
+#: fortran/resolve.cc:872
 #, gcc-internal-format, gfc-internal-format
 msgid "FUNCTION result %s cannot be a POINTER in FUNCTION %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:875
+#: fortran/resolve.cc:876
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY result %s cannot be a POINTER in FUNCTION %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:882
+#: fortran/resolve.cc:883
 #, gcc-internal-format, gfc-internal-format
 msgid "FUNCTION result %s cannot be ALLOCATABLE in FUNCTION %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:886
+#: fortran/resolve.cc:887
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY result %s cannot be ALLOCATABLE in FUNCTION %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:924
+#: fortran/resolve.cc:925
 #, gcc-internal-format, gfc-internal-format
 msgid "FUNCTION result %s cannot be of type %s in FUNCTION %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:929
+#: fortran/resolve.cc:930
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY result %s cannot be of type %s in FUNCTION %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:980
+#: fortran/resolve.cc:981
 #, gcc-internal-format
 msgid "Global entity %qs at %L cannot appear in a COMMON block at %L"
 msgstr ""
 
-#: fortran/resolve.cc:984
+#: fortran/resolve.cc:985
 #, gcc-internal-format
 msgid "Global entity %qs at %L cannot appear in a COMMON block"
 msgstr ""
 
-#: fortran/resolve.cc:994
+#: fortran/resolve.cc:995
 #, gcc-internal-format, gfc-internal-format
 msgid "COMMON block at %L"
 msgstr ""
 
-#: fortran/resolve.cc:1001
+#: fortran/resolve.cc:1002
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L is in COMMON but only in BLOCK DATA initialization is "
 "allowed"
 msgstr ""
 
-#: fortran/resolve.cc:1005
+#: fortran/resolve.cc:1006
 #, gcc-internal-format
 msgid ""
 "Initialized variable %qs at %L is in a blank COMMON but initialization is "
 "only allowed in named common blocks"
 msgstr ""
 
-#: fortran/resolve.cc:1012
+#: fortran/resolve.cc:1013
 #, gcc-internal-format
 msgid "%qs at %L cannot appear in COMMON [F2008:C5100]"
 msgstr ""
 
-#: fortran/resolve.cc:1017
+#: fortran/resolve.cc:1018
 #, gcc-internal-format
 msgid "Automatic object %qs at %L cannot appear in COMMON at %L"
 msgstr ""
 
-#: fortran/resolve.cc:1029
+#: fortran/resolve.cc:1030
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs in COMMON at %L has neither the SEQUENCE nor the "
 "BIND(C) attribute"
 msgstr ""
 
-#: fortran/resolve.cc:1033
+#: fortran/resolve.cc:1034
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs in COMMON at %L has an ultimate component that is "
 "allocatable"
 msgstr ""
 
-#: fortran/resolve.cc:1037
+#: fortran/resolve.cc:1038
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs in COMMON at %L may not have default initializer"
 msgstr ""
 
-#: fortran/resolve.cc:1081
+#: fortran/resolve.cc:1082
 #, gcc-internal-format
 msgid ""
 "In Fortran 2003 COMMON %qs block at %L is a global identifier and must thus "
 "have the same binding name as the same-named COMMON block at %L: %s vs %s"
 msgstr ""
 
-#: fortran/resolve.cc:1095
+#: fortran/resolve.cc:1096
 #, gcc-internal-format
 msgid "COMMON block %qs at %L uses the same global identifier as entity at %L"
 msgstr ""
 
-#: fortran/resolve.cc:1103
+#: fortran/resolve.cc:1104
 #, gcc-internal-format
 msgid ""
 "Fortran 2008: COMMON block %qs with binding label at %L sharing the "
 "identifier with global non-COMMON-block entity at %L"
 msgstr ""
 
-#: fortran/resolve.cc:1125
+#: fortran/resolve.cc:1126
 #, gcc-internal-format
 msgid ""
 "COMMON block at %L with binding label %qs uses the same global identifier as "
 "entity at %L"
 msgstr ""
 
-#: fortran/resolve.cc:1146
+#: fortran/resolve.cc:1147
 #, gcc-internal-format
 msgid "COMMON block %qs at %L is used as PARAMETER at %L"
 msgstr ""
 
-#: fortran/resolve.cc:1150
+#: fortran/resolve.cc:1151
 #, gcc-internal-format
 msgid "COMMON block %qs at %L cannot have the EXTERNAL attribute"
 msgstr ""
 
-#: fortran/resolve.cc:1154
+#: fortran/resolve.cc:1155
 #, gcc-internal-format
 msgid "COMMON block %qs at %L is also an intrinsic procedure"
 msgstr ""
 
-#: fortran/resolve.cc:1158
+#: fortran/resolve.cc:1159
 #, gcc-internal-format
 msgid "COMMON block %qs at %L that is also a function result"
 msgstr ""
 
-#: fortran/resolve.cc:1163
+#: fortran/resolve.cc:1164
 #, gcc-internal-format
 msgid "COMMON block %qs at %L that is also a global procedure"
 msgstr ""
 
-#: fortran/resolve.cc:1230
+#: fortran/resolve.cc:1231
 #, gcc-internal-format
 msgid "The KIND parameter %qs in the PDT constructor at %C has no value"
 msgstr ""
 
-#: fortran/resolve.cc:1373
+#: fortran/resolve.cc:1374
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The rank of the element in the structure constructor at %L does not match "
 "that of the component (%d/%d)"
 msgstr ""
 
-#: fortran/resolve.cc:1394
+#: fortran/resolve.cc:1395
 #, gcc-internal-format
 msgid ""
 "The element in the structure constructor at %L, for pointer component %qs, "
 "is %s but should be %s"
 msgstr ""
 
-#: fortran/resolve.cc:1429
+#: fortran/resolve.cc:1430
 #, gcc-internal-format
 msgid ""
 "Unequal character lengths (%wd/%wd) for pointer component %qs in constructor "
 "at %L"
 msgstr ""
 
-#: fortran/resolve.cc:1475
+#: fortran/resolve.cc:1476
 #, gcc-internal-format
 msgid ""
 "The NULL in the structure constructor at %L is being applied to component "
 "%qs, which is neither a POINTER nor ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.cc:1509
+#: fortran/resolve.cc:1510
 #, gcc-internal-format
 msgid ""
 "Interface mismatch for procedure-pointer component %qs in structure "
 "constructor at %L: %s"
 msgstr ""
 
-#: fortran/resolve.cc:1528
+#: fortran/resolve.cc:1529
 #, gcc-internal-format
 msgid ""
 "Bad array spec of component %qs referenced in structure constructor at %L"
 msgstr ""
 
-#: fortran/resolve.cc:1541
+#: fortran/resolve.cc:1542
 #, gcc-internal-format
 msgid ""
 "The shape of component %qs in the structure constructor at %L differs from "
 "the shape of the declared component for dimension %d (%ld/%ld)"
 msgstr ""
 
-#: fortran/resolve.cc:1562
+#: fortran/resolve.cc:1563
 #, gcc-internal-format
 msgid ""
 "The element in the structure constructor at %L, for pointer component %qs "
 "should be a POINTER or a TARGET"
 msgstr ""
 
-#: fortran/resolve.cc:1589
+#: fortran/resolve.cc:1590
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target at %L has a vector subscript"
 msgstr ""
 
-#: fortran/resolve.cc:1601
+#: fortran/resolve.cc:1602
 #, gcc-internal-format
 msgid ""
 "Invalid expression in the structure constructor for pointer component %qs at "
 "%L in PURE procedure"
 msgstr ""
 
-#: fortran/resolve.cc:1727
+#: fortran/resolve.cc:1728
 #, gcc-internal-format
 msgid ""
 "The upper bound in the last dimension must appear in the reference to the "
 "assumed size array %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:1789
+#: fortran/resolve.cc:1790
 #, gcc-internal-format
 msgid "%qs at %L is ambiguous"
 msgstr ""
 
-#: fortran/resolve.cc:1793
+#: fortran/resolve.cc:1794
 #, gcc-internal-format
 msgid "GENERIC procedure %qs is not allowed as an actual argument at %L"
 msgstr ""
 
-#: fortran/resolve.cc:1914
+#: fortran/resolve.cc:1915
 #, gcc-internal-format
 msgid "Type specified for intrinsic function %qs at %L is ignored"
 msgstr ""
 
-#: fortran/resolve.cc:1927
+#: fortran/resolve.cc:1928
 #, gcc-internal-format
 msgid "Intrinsic subroutine %qs at %L shall not have a type specifier"
 msgstr ""
 
-#: fortran/resolve.cc:1938
+#: fortran/resolve.cc:1939
 #, gcc-internal-format
 msgid "%qs declared INTRINSIC at %L does not exist"
 msgstr ""
 
-#: fortran/resolve.cc:1951
+#: fortran/resolve.cc:1952
 #, gcc-internal-format
 msgid ""
 "The intrinsic %qs declared INTRINSIC at %L is not available in the current "
@@ -85870,96 +90043,103 @@ msgid ""
 "fall-intrinsics%> in order to use it."
 msgstr ""
 
-#: fortran/resolve.cc:1989
+#: fortran/resolve.cc:1990
 #, gcc-internal-format
 msgid ""
 "Non-RECURSIVE procedure %qs from module %qs is possibly calling itself "
 "recursively in procedure %qs.  Declare it RECURSIVE or use %<-frecursive%>"
 msgstr ""
 
-#: fortran/resolve.cc:1994 fortran/resolve.cc:7179
+#: fortran/resolve.cc:1995 fortran/resolve.cc:7476
 #, gcc-internal-format
 msgid ""
 "Non-RECURSIVE procedure %qs at %L is possibly calling itself recursively.  "
 "Declare it RECURSIVE or use %<-frecursive%>"
 msgstr ""
 
-#: fortran/resolve.cc:2053 fortran/resolve.cc:11708 fortran/resolve.cc:13715
+#: fortran/resolve.cc:2054 fortran/resolve.cc:12087 fortran/resolve.cc:14326
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d referenced at %L is never defined"
 msgstr ""
 
-#: fortran/resolve.cc:2085
+#: fortran/resolve.cc:2086
 #, gcc-internal-format
 msgid "Derived type %qs is used as an actual argument at %L"
 msgstr ""
 
-#: fortran/resolve.cc:2103
+#: fortran/resolve.cc:2104
 #, gcc-internal-format
 msgid "Statement function %qs at %L is not allowed as an actual argument"
 msgstr ""
 
-#: fortran/resolve.cc:2111
+#: fortran/resolve.cc:2112
 #, gcc-internal-format
 msgid "Intrinsic %qs at %L is not allowed as an actual argument"
 msgstr ""
 
-#: fortran/resolve.cc:2118
+#: fortran/resolve.cc:2119
 #, gcc-internal-format
 msgid "Internal procedure %qs is used as actual argument at %L"
 msgstr ""
 
-#: fortran/resolve.cc:2126
+#: fortran/resolve.cc:2127
 #, gcc-internal-format
 msgid ""
 "ELEMENTAL non-INTRINSIC procedure %qs is not allowed as an actual argument "
 "at %L"
 msgstr ""
 
-#: fortran/resolve.cc:2153
+#: fortran/resolve.cc:2154
 #, gcc-internal-format
 msgid ""
 "Unable to find a specific INTRINSIC procedure for the reference %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:2175
+#: fortran/resolve.cc:2176
 #, gcc-internal-format
 msgid "Symbol %qs at %L is ambiguous"
 msgstr ""
 
-#: fortran/resolve.cc:2239
+#: fortran/resolve.cc:2240
 #, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L is not of numeric type"
 msgstr ""
 
-#: fortran/resolve.cc:2246
+#: fortran/resolve.cc:2247
 #, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L cannot be an array or an array section"
 msgstr ""
 
-#: fortran/resolve.cc:2260
+#: fortran/resolve.cc:2261
 #, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L is not allowed in this context"
 msgstr ""
 
-#: fortran/resolve.cc:2272
+#: fortran/resolve.cc:2273
 #, gcc-internal-format, gfc-internal-format
 msgid "Passing internal procedure at %L by location not allowed"
 msgstr ""
 
-#: fortran/resolve.cc:2283
+#: fortran/resolve.cc:2284
 #, gcc-internal-format
 msgid ""
 "ELEMENTAL procedure pointer component %qs is not allowed as an actual "
 "argument at %L"
 msgstr ""
 
-#: fortran/resolve.cc:2292
+#: fortran/resolve.cc:2293
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindexed actual argument at %L with ultimate pointer component"
 msgstr ""
 
-#: fortran/resolve.cc:2442
+#: fortran/resolve.cc:2310 fortran/resolve.cc:2315
+#, gcc-internal-format
+msgid ""
+"Procedure %qs at %L used as actual argument but does neither have an "
+"explicit interface nor the EXTERNAL attribute"
+msgstr ""
+
+#: fortran/resolve.cc:2467
 #, gcc-internal-format
 msgid ""
 "%qs at %L is an array and OPTIONAL; If it is not present, then it cannot be "
@@ -85967,97 +90147,97 @@ msgid ""
 "argument with the same rank (Fortran 2018, 15.5.2.12)"
 msgstr ""
 
-#: fortran/resolve.cc:2481
+#: fortran/resolve.cc:2506
 #, gcc-internal-format
 msgid ""
 "Actual argument at %L for INTENT(%s) dummy %qs of ELEMENTAL subroutine %qs "
 "is a scalar, but another actual argument is an array"
 msgstr ""
 
-#: fortran/resolve.cc:2755
+#: fortran/resolve.cc:2780
 #, gcc-internal-format
 msgid "Return type mismatch of function %qs at %L (%s/%s)"
 msgstr ""
 
-#: fortran/resolve.cc:2782
+#: fortran/resolve.cc:2807
 #, gcc-internal-format
 msgid "Interface mismatch in global procedure %qs at %L: %s"
 msgstr ""
 
-#: fortran/resolve.cc:2894
+#: fortran/resolve.cc:2919
 #, gcc-internal-format
 msgid "There is no specific function for the generic %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:2914
+#: fortran/resolve.cc:2939
 #, gcc-internal-format
 msgid ""
 "Generic function %qs at %L is not consistent with a specific intrinsic "
 "interface"
 msgstr ""
 
-#: fortran/resolve.cc:2952
+#: fortran/resolve.cc:2977
 #, gcc-internal-format
 msgid "Function %qs at %L is INTRINSIC but is not compatible with an intrinsic"
 msgstr ""
 
-#: fortran/resolve.cc:3013
+#: fortran/resolve.cc:3038
 #, gcc-internal-format
 msgid "Unable to resolve the specific function %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3090
+#: fortran/resolve.cc:3115
 #, gcc-internal-format
 msgid ""
 "Missing explicit declaration with EXTERNAL attribute for symbol %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3125
+#: fortran/resolve.cc:3150
 #, gcc-internal-format
 msgid "Function %qs at %L has no IMPLICIT type; did you mean %qs?"
 msgstr ""
 
-#: fortran/resolve.cc:3129 fortran/resolve.cc:19155
+#: fortran/resolve.cc:3154 fortran/resolve.cc:19981
 #, gcc-internal-format
 msgid "Function %qs at %L has no IMPLICIT type"
 msgstr ""
 
-#: fortran/resolve.cc:3283
+#: fortran/resolve.cc:3308
 #, gcc-internal-format, gfc-internal-format
 msgid "Reference to impure function at %L inside a DO CONCURRENT"
 msgstr ""
 
-#: fortran/resolve.cc:3294
+#: fortran/resolve.cc:3319
 #, gcc-internal-format
 msgid "Reference to impure function %qs at %L inside a FORALL %s"
 msgstr ""
 
-#: fortran/resolve.cc:3301
+#: fortran/resolve.cc:3326
 #, gcc-internal-format
 msgid "Reference to impure function %qs at %L inside a DO CONCURRENT %s"
 msgstr ""
 
-#: fortran/resolve.cc:3308
+#: fortran/resolve.cc:3333
 #, gcc-internal-format
 msgid "Reference to impure function %qs at %L within a PURE procedure"
 msgstr ""
 
-#: fortran/resolve.cc:3375
+#: fortran/resolve.cc:3400
 #, gcc-internal-format
 msgid "Unexpected junk after %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3386
+#: fortran/resolve.cc:3411
 #, gcc-internal-format
 msgid "%qs at %L is not a function"
 msgstr ""
 
-#: fortran/resolve.cc:3394 fortran/resolve.cc:3966
+#: fortran/resolve.cc:3419 fortran/resolve.cc:4148
 #, gcc-internal-format
 msgid "ABSTRACT INTERFACE %qs must not be referenced at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3406
+#: fortran/resolve.cc:3431
 #, gcc-internal-format
 msgid ""
 "ABSTRACT INTERFACE %qs at %L must not have an assumed character length "
@@ -86065,498 +90245,548 @@ msgid ""
 msgstr ""
 
 #. Internal procedures are taken care of in resolve_contained_fntype.
-#: fortran/resolve.cc:3449
+#: fortran/resolve.cc:3474
 #, gcc-internal-format
 msgid ""
 "Function %qs is declared CHARACTER(*) and cannot be used at %L since it is "
 "not a dummy argument"
 msgstr ""
 
-#: fortran/resolve.cc:3470
+#: fortran/resolve.cc:3495
 #, gcc-internal-format, gfc-internal-format
 msgid "Different argument lists in external dummy function %s at %L and %L"
 msgstr ""
 
-#: fortran/resolve.cc:3509
+#: fortran/resolve.cc:3534
 #, gcc-internal-format
 msgid "resolve_function(): bad function type"
 msgstr ""
 
-#: fortran/resolve.cc:3523
+#: fortran/resolve.cc:3548
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "A BOZ literal constant at %L cannot appear as an actual argument in a "
 "function reference"
 msgstr ""
 
-#: fortran/resolve.cc:3539
+#: fortran/resolve.cc:3564
 #, gcc-internal-format
 msgid ""
 "User defined non-ELEMENTAL function %qs at %L not allowed in WORKSHARE "
 "construct"
 msgstr ""
 
-#: fortran/resolve.cc:3601
+#: fortran/resolve.cc:3626
 #, gcc-internal-format
 msgid ""
 "ENTRY %qs at %L cannot be called recursively, as function %qs is not "
 "RECURSIVE"
 msgstr ""
 
-#: fortran/resolve.cc:3605
+#: fortran/resolve.cc:3630
 #, gcc-internal-format
 msgid "Function %qs at %L cannot be called recursively, as it is not RECURSIVE"
 msgstr ""
 
-#: fortran/resolve.cc:3663
+#: fortran/resolve.cc:3688
 #, gcc-internal-format
 msgid "Using function %qs at %L is deprecated"
 msgstr ""
 
-#: fortran/resolve.cc:3701
+#: fortran/resolve.cc:3699 fortran/resolve.cc:4189
+#, gcc-internal-format
+msgid "Dummy procedure %qs at %L requires an EXTERNAL attribute"
+msgstr ""
+
+#: fortran/resolve.cc:3740
 #, gcc-internal-format, gfc-internal-format
 msgid "Subroutine call at %L in a DO CONCURRENT block is not PURE"
 msgstr ""
 
-#: fortran/resolve.cc:3710
+#: fortran/resolve.cc:3749
 #, gcc-internal-format
 msgid "Subroutine call to %qs in FORALL block at %L is not PURE"
 msgstr ""
 
-#: fortran/resolve.cc:3716
+#: fortran/resolve.cc:3755
 #, gcc-internal-format
 msgid "Subroutine call to %qs in DO CONCURRENT block at %L is not PURE"
 msgstr ""
 
-#: fortran/resolve.cc:3722
+#: fortran/resolve.cc:3761
 #, gcc-internal-format
 msgid "Subroutine call to %qs at %L is not PURE"
 msgstr ""
 
-#: fortran/resolve.cc:3790
+#: fortran/resolve.cc:3829
 #, gcc-internal-format
 msgid "There is no specific subroutine for the generic %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3799
+#: fortran/resolve.cc:3838
 #, gcc-internal-format
 msgid ""
 "Generic subroutine %qs at %L is not consistent with an intrinsic subroutine "
 "interface"
 msgstr ""
 
-#: fortran/resolve.cc:3834
+#: fortran/resolve.cc:3873
 #, gcc-internal-format
 msgid ""
 "Subroutine %qs at %L is INTRINSIC but is not compatible with an intrinsic"
 msgstr ""
 
-#: fortran/resolve.cc:3879
+#: fortran/resolve.cc:3918
 #, gcc-internal-format
 msgid "Unable to resolve the specific subroutine %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3937
+#: fortran/resolve.cc:3983
+#, gcc-internal-format
+msgid ""
+"F2018: C8102 %qs at %L is host associated but does not appear in an IMPORT "
+"or IMPORT, ONLY list"
+msgstr ""
+
+#: fortran/resolve.cc:3990
+#, gcc-internal-format
+msgid ""
+"F2018: C8102 %qs at %L is host associated in a scope that has IMPORT, NONE"
+msgstr ""
+
+#: fortran/resolve.cc:4119
 #, gcc-internal-format
 msgid "%qs at %L has a type, which is not consistent with the CALL at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3976
+#: fortran/resolve.cc:4158
 #, gcc-internal-format
 msgid ""
 "ENTRY %qs at %L cannot be called recursively, as subroutine %qs is not "
 "RECURSIVE"
 msgstr ""
 
-#: fortran/resolve.cc:3980
+#: fortran/resolve.cc:4162
 #, gcc-internal-format
 msgid ""
 "SUBROUTINE %qs at %L cannot be called recursively, as it is not RECURSIVE"
 msgstr ""
 
-#: fortran/resolve.cc:4031
+#: fortran/resolve.cc:4223
 #, gcc-internal-format, gfc-internal-format
 msgid "Different argument lists in external dummy subroutine %s at %L and %L"
 msgstr ""
 
-#: fortran/resolve.cc:4062
+#: fortran/resolve.cc:4254
 #, gcc-internal-format
 msgid "resolve_subroutine(): bad function type"
 msgstr ""
 
-#: fortran/resolve.cc:4079
+#: fortran/resolve.cc:4271
 #, gcc-internal-format
 msgid "Using subroutine %qs at %L is deprecated"
 msgstr ""
 
-#: fortran/resolve.cc:4106
+#: fortran/resolve.cc:4303
 #, gcc-internal-format, gfc-internal-format
 msgid "Shapes for operands at %L and %L are not conformable"
 msgstr ""
 
-#: fortran/resolve.cc:4158
+#: fortran/resolve.cc:4355
 #, gcc-internal-format
 msgid "logical_to_bitwise(): Bad intrinsic"
 msgstr ""
 
-#: fortran/resolve.cc:4261
+#: fortran/resolve.cc:4458
 #, gcc-internal-format
 msgid "Impure function %qs at %L might not be evaluated"
 msgstr ""
 
-#: fortran/resolve.cc:4265
+#: fortran/resolve.cc:4462
 #, gcc-internal-format, gfc-internal-format
 msgid "Impure function at %L might not be evaluated"
 msgstr ""
 
-#: fortran/resolve.cc:4360
+#: fortran/resolve.cc:4557
 #, gcc-internal-format
 msgid "BOZ literal constant at %L cannot be an operand of unary operator %qs"
 msgstr ""
 
-#: fortran/resolve.cc:4368
+#: fortran/resolve.cc:4565
 #, gcc-internal-format, gfc-internal-format
 msgid "Negation of unsigned expression at %L not permitted "
 msgstr ""
 
-#: fortran/resolve.cc:4389
+#: fortran/resolve.cc:4586
 #, gcc-internal-format
 msgid "Operands at %L and %L cannot appear as operands of binary operator %qs"
 msgstr ""
 
-#: fortran/resolve.cc:4399
+#: fortran/resolve.cc:4596
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid context for NULL() pointer at %L"
 msgstr ""
 
-#: fortran/resolve.cc:4417
+#: fortran/resolve.cc:4614
 #, gcc-internal-format
 msgid "Operand of unary numeric operator %qs at %L is %s"
 msgstr ""
 
-#: fortran/resolve.cc:4432 fortran/resolve.cc:4466
+#: fortran/resolve.cc:4629 fortran/resolve.cc:4663
 #, gcc-internal-format
 msgid "Operands of binary numeric operator %qs at %L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.cc:4446 fortran/resolve.cc:4635 fortran/resolve.cc:4804
+#: fortran/resolve.cc:4643 fortran/resolve.cc:4832 fortran/resolve.cc:5001
 #, gcc-internal-format, gfc-internal-format
 msgid "Inconsistent ranks for operator at %L and %L"
 msgstr ""
 
-#: fortran/resolve.cc:4458
+#: fortran/resolve.cc:4655
 #, gcc-internal-format
 msgid ""
 "Unexpected derived-type entities in binary intrinsic numeric operator %qs at "
 "%L"
 msgstr ""
 
-#: fortran/resolve.cc:4482
+#: fortran/resolve.cc:4679
 #, gcc-internal-format, gfc-internal-format
 msgid "Operands of string concatenation operator at %L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.cc:4525
+#: fortran/resolve.cc:4722
 #, gcc-internal-format
 msgid "Operands of logical operator %qs at %L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.cc:4548
+#: fortran/resolve.cc:4745
 #, gcc-internal-format, gfc-internal-format
 msgid "Operand of .not. operator at %L is %s"
 msgstr ""
 
-#: fortran/resolve.cc:4563
+#: fortran/resolve.cc:4760
 #, gcc-internal-format, gfc-internal-format
 msgid "COMPLEX quantities cannot be compared at %L"
 msgstr ""
 
-#: fortran/resolve.cc:4593 fortran/resolve.cc:4608
+#: fortran/resolve.cc:4790 fortran/resolve.cc:4805
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "BOZ literal constant near %L cannot appear as an operand of a relational "
 "operator"
 msgstr ""
 
-#: fortran/resolve.cc:4643
+#: fortran/resolve.cc:4840
 #, gcc-internal-format, gfc-internal-format
 msgid "Inconsistent types for operator at %L and %L: %s and %s"
 msgstr ""
 
-#: fortran/resolve.cc:4667
+#: fortran/resolve.cc:4864
 #, gcc-internal-format, gfc-internal-format
 msgid "Equality comparison for %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:4669
+#: fortran/resolve.cc:4866
 #, gcc-internal-format, gfc-internal-format
 msgid "Inequality comparison for %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:4682
+#: fortran/resolve.cc:4879
 #, gcc-internal-format, gfc-internal-format
 msgid "Logicals at %L must be compared with %s instead of %s"
 msgstr ""
 
-#: fortran/resolve.cc:4690
+#: fortran/resolve.cc:4887
 #, gcc-internal-format
 msgid "Operands of comparison operator %qs at %L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.cc:4705
+#: fortran/resolve.cc:4902
 #, gcc-internal-format
 msgid "Unknown operator %qs at %L; did you mean %qs?"
 msgstr ""
 
-#: fortran/resolve.cc:4708
+#: fortran/resolve.cc:4905
 #, gcc-internal-format
 msgid "Unknown operator %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:4713
+#: fortran/resolve.cc:4910
 #, gcc-internal-format
 msgid "Operand of user operator %qs at %L is %s"
 msgstr ""
 
-#: fortran/resolve.cc:4720
+#: fortran/resolve.cc:4917
 #, gcc-internal-format
 msgid "Operands of user operator %qs at %L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.cc:4734
+#: fortran/resolve.cc:4931
 #, gcc-internal-format
 msgid "resolve_operator(): Bad intrinsic"
 msgstr ""
 
-#: fortran/resolve.cc:4832
+#: fortran/resolve.cc:5056
 #, gcc-internal-format, gfc-internal-format
-msgid "Inconsistent coranks for operator at %L and %L"
+msgid "Condition in conditional expression must be a scalar logical at %L"
+msgstr ""
+
+#: fortran/resolve.cc:5063
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"expr at %L and expr at %L in conditional expression must have the same "
+"declared type"
 msgstr ""
 
-#: fortran/resolve.cc:5031
+#: fortran/resolve.cc:5071
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"expr at %L and expr at %L in conditional expression must have the same kind "
+"parameter"
+msgstr ""
+
+#: fortran/resolve.cc:5079
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"expr at %L and expr at %L in conditional expression must have the same rank"
+msgstr ""
+
+#: fortran/resolve.cc:5091
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"Sorry, only integer, logical, real, complex and character types are "
+"currently supported for conditional expressions at %L"
+msgstr ""
+
+#: fortran/resolve.cc:5100
+#, gcc-internal-format, gfc-internal-format
+msgid "Sorry, array is currently unsupported for conditional expressions at %L"
+msgstr ""
+
+#: fortran/resolve.cc:5270
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld < %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.cc:5036
+#: fortran/resolve.cc:5275
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld < %ld) in codimension %d"
 msgstr ""
 
-#: fortran/resolve.cc:5046
+#: fortran/resolve.cc:5285
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld > %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.cc:5051
+#: fortran/resolve.cc:5290
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld > %ld) in codimension %d"
 msgstr ""
 
-#: fortran/resolve.cc:5072
+#: fortran/resolve.cc:5311
 #, gcc-internal-format, gfc-internal-format
 msgid "Illegal stride of zero at %L"
 msgstr ""
 
-#: fortran/resolve.cc:5089
+#: fortran/resolve.cc:5328
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Lower array reference at %L is out of bounds (%ld < %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.cc:5097
+#: fortran/resolve.cc:5336
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Lower array reference at %L is out of bounds (%ld > %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.cc:5113
+#: fortran/resolve.cc:5352
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Upper array reference at %L is out of bounds (%ld < %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.cc:5122
+#: fortran/resolve.cc:5361
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Upper array reference at %L is out of bounds (%ld > %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.cc:5138
+#: fortran/resolve.cc:5377
 #, gcc-internal-format
 msgid "check_dimension(): Bad array reference"
 msgstr ""
 
-#: fortran/resolve.cc:5161
+#: fortran/resolve.cc:5400
 #, gcc-internal-format, gfc-internal-format
 msgid "Rightmost upper bound of assumed size array section not specified at %L"
 msgstr ""
 
-#: fortran/resolve.cc:5171
+#: fortran/resolve.cc:5410
 #, gcc-internal-format, gfc-internal-format
 msgid "Rank mismatch in array reference at %L (%d/%d)"
 msgstr ""
 
-#: fortran/resolve.cc:5179
+#: fortran/resolve.cc:5418
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindex rank mismatch in array reference at %L (%d/%d)"
 msgstr ""
 
-#: fortran/resolve.cc:5195
+#: fortran/resolve.cc:5434
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindex of codimension %d must be a scalar at %L"
 msgstr ""
 
-#: fortran/resolve.cc:5223
+#: fortran/resolve.cc:5462
 #, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:5229
+#: fortran/resolve.cc:5468
 #, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L must be of INTEGER type, found %s"
 msgstr ""
 
-#: fortran/resolve.cc:5235
+#: fortran/resolve.cc:5474
 #, gcc-internal-format, gfc-internal-format
 msgid "REAL array index at %L"
 msgstr ""
 
-#: fortran/resolve.cc:5275
+#: fortran/resolve.cc:5514
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument dim at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:5282
+#: fortran/resolve.cc:5521
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument dim at %L must be of INTEGER type"
 msgstr ""
 
-#: fortran/resolve.cc:5343
+#: fortran/resolve.cc:5582
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid array reference of a non-array entity at %L"
 msgstr ""
 
-#: fortran/resolve.cc:5358
+#: fortran/resolve.cc:5597
 #, gcc-internal-format
 msgid "find_array_spec(): unused as(1)"
 msgstr ""
 
-#: fortran/resolve.cc:5370
+#: fortran/resolve.cc:5609
 #, gcc-internal-format
 msgid "find_array_spec(): unused as(2)"
 msgstr ""
 
-#: fortran/resolve.cc:5415
+#: fortran/resolve.cc:5654
 #, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L is an array of rank %d"
 msgstr ""
 
-#: fortran/resolve.cc:5506
+#: fortran/resolve.cc:5745
 #, gcc-internal-format, gfc-internal-format
 msgid "TEAM_NUMBER argument at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:5513
+#: fortran/resolve.cc:5752
 #, gcc-internal-format, gfc-internal-format
 msgid "TEAM_NUMBER argument at %L must be of INTEGER type, found %s"
 msgstr ""
 
-#: fortran/resolve.cc:5527
+#: fortran/resolve.cc:5766
 #, gcc-internal-format, gfc-internal-format
 msgid "TEAM argument at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:5536
+#: fortran/resolve.cc:5775
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TEAM argument at %L must be of TEAM_TYPE from the intrinsic module "
 "ISO_FORTRAN_ENV, found %s"
 msgstr ""
 
-#: fortran/resolve.cc:5550
+#: fortran/resolve.cc:5789
 #, gcc-internal-format, gfc-internal-format
 msgid "STAT argument at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:5557
+#: fortran/resolve.cc:5796
 #, gcc-internal-format, gfc-internal-format
 msgid "STAT argument at %L must be of INTEGER type, found %s"
 msgstr ""
 
-#: fortran/resolve.cc:5566
+#: fortran/resolve.cc:5805
 #, gcc-internal-format, gfc-internal-format
 msgid "STAT's expression at %L must be a variable"
 msgstr ""
 
-#: fortran/resolve.cc:5588
+#: fortran/resolve.cc:5827
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L must be of type INTEGER"
 msgstr ""
 
-#: fortran/resolve.cc:5595
+#: fortran/resolve.cc:5834
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:5617
+#: fortran/resolve.cc:5856
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L must be of type INTEGER"
 msgstr ""
 
-#: fortran/resolve.cc:5624
+#: fortran/resolve.cc:5863
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:5644
+#: fortran/resolve.cc:5883
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L is too large"
 msgstr ""
 
-#: fortran/resolve.cc:5835
+#: fortran/resolve.cc:6112
 #, gcc-internal-format
 msgid "resolve_ref(): Bad array reference"
 msgstr ""
 
-#: fortran/resolve.cc:5849
+#: fortran/resolve.cc:6126
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Component to the right of a part reference with nonzero rank must not have "
 "the POINTER attribute at %L"
 msgstr ""
 
-#: fortran/resolve.cc:5859
+#: fortran/resolve.cc:6136
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Component to the right of a part reference with nonzero rank must not have "
 "the ALLOCATABLE attribute at %L"
 msgstr ""
 
-#: fortran/resolve.cc:5907
+#: fortran/resolve.cc:6204
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Two or more part references with nonzero rank must not be specified at %L"
 msgstr ""
 
-#: fortran/resolve.cc:6019
+#: fortran/resolve.cc:6316
 #, gcc-internal-format
 msgid "gfc_expression_rank(): Two array specs"
 msgstr ""
 
-#: fortran/resolve.cc:6048
+#: fortran/resolve.cc:6345
 #, gcc-internal-format
 msgid "Illegal coarray index"
 msgstr ""
 
-#: fortran/resolve.cc:6096
+#: fortran/resolve.cc:6393
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable %s at %L with NO_ARG_CHECK attribute may only be used as actual "
 "argument"
 msgstr ""
 
-#: fortran/resolve.cc:6106
+#: fortran/resolve.cc:6403
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L may only be used as actual argument"
 msgstr ""
@@ -86565,14 +90795,14 @@ msgstr ""
 #. for all inquiry functions in resolve_function; the reason is
 #. that the function-name resolution happens too late in that
 #. function.
-#: fortran/resolve.cc:6116
+#: fortran/resolve.cc:6413
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Assumed-type variable %s at %L as actual argument to an inquiry function "
 "shall be the first argument"
 msgstr ""
 
-#: fortran/resolve.cc:6137
+#: fortran/resolve.cc:6434
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank variable %s at %L may only be used as actual argument"
 msgstr ""
@@ -86581,450 +90811,456 @@ msgstr ""
 #. for all inquiry functions in resolve_function; the reason is
 #. that the function-name resolution happens too late in that
 #. function.
-#: fortran/resolve.cc:6147
+#: fortran/resolve.cc:6444
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Assumed-rank variable %s at %L as actual argument to an inquiry function "
 "shall be the first argument"
 msgstr ""
 
-#: fortran/resolve.cc:6158
+#: fortran/resolve.cc:6455
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable %s at %L with NO_ARG_CHECK attribute shall not have a subobject "
 "reference"
 msgstr ""
 
-#: fortran/resolve.cc:6167
+#: fortran/resolve.cc:6464
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L shall not have a subobject reference"
 msgstr ""
 
-#: fortran/resolve.cc:6184
+#: fortran/resolve.cc:6481
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank variable %s at %L shall not have a subobject reference"
 msgstr ""
 
-#: fortran/resolve.cc:6245
+#: fortran/resolve.cc:6542
 #, gcc-internal-format
 msgid "Scalar variable %qs has an array reference at %L"
 msgstr ""
 
-#: fortran/resolve.cc:6401
+#: fortran/resolve.cc:6698
 #, gcc-internal-format
 msgid ""
 "Variable %qs, used in a specification expression, is referenced at %L before "
 "the ENTRY statement in which it is a parameter"
 msgstr ""
 
-#: fortran/resolve.cc:6406
+#: fortran/resolve.cc:6703
 #, gcc-internal-format
 msgid ""
 "Variable %qs is used at %L before the ENTRY statement in which it is a "
 "parameter"
 msgstr ""
 
-#: fortran/resolve.cc:6480
+#: fortran/resolve.cc:6777
 #, gcc-internal-format, gfc-internal-format
 msgid "Polymorphic subobject of coindexed object at %L"
 msgstr ""
 
-#: fortran/resolve.cc:6493
+#: fortran/resolve.cc:6790
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindexed object with polymorphic allocatable subcomponent at %L"
 msgstr ""
 
-#: fortran/resolve.cc:6506
+#: fortran/resolve.cc:6803
 #, gcc-internal-format
 msgid "Using variable %qs at %L is deprecated"
 msgstr ""
 
-#: fortran/resolve.cc:6562 fortran/resolve.cc:6650 fortran/resolve.cc:6674
+#: fortran/resolve.cc:6859 fortran/resolve.cc:6947 fortran/resolve.cc:6971
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid array reference at %L"
 msgstr ""
 
-#: fortran/resolve.cc:6759
+#: fortran/resolve.cc:7056
 #, gcc-internal-format
 msgid ""
 "%qs at %L is host associated at %L into a contained procedure with an "
 "internal procedure of the same name"
 msgstr ""
 
-#: fortran/resolve.cc:6938 fortran/resolve.cc:7090
+#: fortran/resolve.cc:7235 fortran/resolve.cc:7387
 #, gcc-internal-format, gfc-internal-format
 msgid "Error in typebound call at %L"
 msgstr ""
 
-#: fortran/resolve.cc:7054
+#: fortran/resolve.cc:7351
 #, gcc-internal-format, gfc-internal-format
 msgid "Passed-object at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:7061
+#: fortran/resolve.cc:7358
 #, gcc-internal-format
 msgid ""
 "Base object for procedure-pointer component call at %L is of ABSTRACT type "
 "%qs"
 msgstr ""
 
-#: fortran/resolve.cc:7100
+#: fortran/resolve.cc:7397
 #, gcc-internal-format
 msgid "Base object for type-bound procedure call at %L is of ABSTRACT type %qs"
 msgstr ""
 
-#: fortran/resolve.cc:7109
+#: fortran/resolve.cc:7406
 #, gcc-internal-format, gfc-internal-format
 msgid "Base object for NOPASS type-bound procedure call at %L must be scalar"
 msgstr ""
 
 #. Nothing matching found!
-#: fortran/resolve.cc:7304
+#: fortran/resolve.cc:7601
 #, gcc-internal-format
 msgid ""
 "Found no matching specific binding for the call to the GENERIC %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:7338
+#: fortran/resolve.cc:7635
 #, gcc-internal-format
 msgid "%qs at %L should be a SUBROUTINE"
 msgstr ""
 
-#: fortran/resolve.cc:7391
+#: fortran/resolve.cc:7688
 #, gcc-internal-format
 msgid "%qs at %L should be a FUNCTION"
 msgstr ""
 
-#: fortran/resolve.cc:7932
+#: fortran/resolve.cc:8253
 #, gcc-internal-format
 msgid "gfc_resolve_expr(): Bad expression type"
 msgstr ""
 
-#: fortran/resolve.cc:7965
+#: fortran/resolve.cc:8289
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be a scalar"
 msgstr ""
 
-#: fortran/resolve.cc:7975
+#: fortran/resolve.cc:8299
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be integer"
 msgstr ""
 
-#: fortran/resolve.cc:7979 fortran/resolve.cc:7986
+#: fortran/resolve.cc:8303 fortran/resolve.cc:8310
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be INTEGER"
 msgstr ""
 
-#: fortran/resolve.cc:8041
+#: fortran/resolve.cc:8365
 #, gcc-internal-format, gfc-internal-format
 msgid "Step expression in DO loop at %L cannot be zero"
 msgstr ""
 
-#: fortran/resolve.cc:8064
+#: fortran/resolve.cc:8388
 #, gcc-internal-format, gfc-internal-format
 msgid "DO loop at %L will be executed zero times"
 msgstr ""
 
-#: fortran/resolve.cc:8081
+#: fortran/resolve.cc:8405
 #, gcc-internal-format, gfc-internal-format
 msgid "DO loop at %L is undefined as it overflows"
 msgstr ""
 
-#: fortran/resolve.cc:8087
+#: fortran/resolve.cc:8411
 #, gcc-internal-format, gfc-internal-format
 msgid "DO loop at %L is undefined as it underflows"
 msgstr ""
 
-#: fortran/resolve.cc:8147
+#: fortran/resolve.cc:8471
 #, gcc-internal-format
 msgid ""
 "Variable %qs referenced in concurrent-header at %L must not appear in LOCAL "
 "locality-spec at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8183
+#: fortran/resolve.cc:8520
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L not specified in a locality spec of DO CONCURRENT at %L "
 "but required due to DEFAULT (NONE)"
 msgstr ""
 
-#: fortran/resolve.cc:8235
+#: fortran/resolve.cc:8572
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected variable name in %s locality spec at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8244
+#: fortran/resolve.cc:8581
 #, gcc-internal-format
 msgid "Variable %qs at %L has already been specified in a locality-spec"
 msgstr ""
 
-#: fortran/resolve.cc:8254
+#: fortran/resolve.cc:8591
 #, gcc-internal-format
 msgid "Index variable %qs at %L cannot be specified in a locality-spec"
 msgstr ""
 
-#: fortran/resolve.cc:8267
+#: fortran/resolve.cc:8604
 #, gcc-internal-format
 msgid "OPTIONAL attribute not permitted for %qs in %s locality-spec at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8274
+#: fortran/resolve.cc:8611
 #, gcc-internal-format
 msgid "Assumed-size array not permitted for %qs in %s locality-spec at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8287
+#: fortran/resolve.cc:8624
 #, gcc-internal-format
 msgid "ALLOCATABLE attribute not permitted for %qs in %s locality-spec at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8292
+#: fortran/resolve.cc:8629
 #, gcc-internal-format
 msgid ""
 "Nonpointer polymorphic dummy argument not permitted for %qs in %s locality-"
 "spec at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8297
+#: fortran/resolve.cc:8634
 #, gcc-internal-format
 msgid "Coarray not permitted for %qs in %s locality-spec at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8303
+#: fortran/resolve.cc:8640
 #, gcc-internal-format
 msgid "Finalizable type not permitted for %qs in %s locality-spec at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8308
+#: fortran/resolve.cc:8645
 #, gcc-internal-format
 msgid ""
 "Type with ultimate allocatable component not permitted for %qs in %s "
 "locality-spec at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8316
+#: fortran/resolve.cc:8653
 #, gcc-internal-format
 msgid ""
 "ASYNCHRONOUS attribute not permitted for %qs in REDUCE locality-spec at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8320
+#: fortran/resolve.cc:8657
 #, gcc-internal-format
 msgid "VOLATILE attribute not permitted for %qs in REDUCE locality-spec at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8374
+#: fortran/resolve.cc:8711
 #, gcc-internal-format
 msgid "Expected numeric type for %qs in REDUCE at %L, got %s"
 msgstr ""
 
-#: fortran/resolve.cc:8383
+#: fortran/resolve.cc:8720
 #, gcc-internal-format
 msgid "Expected logical type for %qs in REDUCE at %L, got %qs"
 msgstr ""
 
-#: fortran/resolve.cc:8401
+#: fortran/resolve.cc:8738
 #, gcc-internal-format
 msgid ""
 "Expected INTEGER, REAL or CHARACTER type for %qs in REDUCE with MIN/MAX at "
 "%L, got %s"
 msgstr ""
 
-#: fortran/resolve.cc:8410
+#: fortran/resolve.cc:8747
 #, gcc-internal-format
 msgid ""
 "Expected integer type for %qs in REDUCE with IAND/IOR/IEOR at %L, got %s"
 msgstr ""
 
-#: fortran/resolve.cc:8448
+#: fortran/resolve.cc:8785
 #, gcc-internal-format
 msgid "Variable %qs in locality-spec at %L is not used"
 msgstr ""
 
-#: fortran/resolve.cc:8479
+#: fortran/resolve.cc:8818
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL index-name at %L must be a scalar INTEGER"
 msgstr ""
 
-#: fortran/resolve.cc:8484
+#: fortran/resolve.cc:8823
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL start expression at %L must be a scalar INTEGER"
 msgstr ""
 
-#: fortran/resolve.cc:8491
+#: fortran/resolve.cc:8830
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL end expression at %L must be a scalar INTEGER"
 msgstr ""
 
-#: fortran/resolve.cc:8499
+#: fortran/resolve.cc:8838
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL stride expression at %L must be a scalar %s"
 msgstr ""
 
-#: fortran/resolve.cc:8504
+#: fortran/resolve.cc:8843
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL stride expression at %L cannot be zero"
 msgstr ""
 
-#: fortran/resolve.cc:8517
+#: fortran/resolve.cc:8856
 #, gcc-internal-format
 msgid "FORALL index %qs may not appear in triplet specification at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8622 fortran/resolve.cc:8928
+#: fortran/resolve.cc:8961 fortran/resolve.cc:9284
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L must be ALLOCATABLE or a POINTER"
 msgstr ""
 
-#: fortran/resolve.cc:8630 fortran/resolve.cc:8891
+#: fortran/resolve.cc:8969 fortran/resolve.cc:9247
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindexed allocatable object at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8748
+#: fortran/resolve.cc:9093
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"Allocate-object at %L has rank %d but MOLD= expression at %L has rank %d"
+msgstr ""
+
+#: fortran/resolve.cc:9104
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Source-expr at %L must be scalar or have the same rank as the allocate-"
 "object at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8779
+#: fortran/resolve.cc:9135
 #, gcc-internal-format, gfc-internal-format
 msgid "Source-expr at %L and allocate-object at %L must have the same shape"
 msgstr ""
 
-#: fortran/resolve.cc:8943
+#: fortran/resolve.cc:9299
 #, gcc-internal-format, gfc-internal-format
 msgid "The intrinsic NULL cannot be used as source-expr at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8951
+#: fortran/resolve.cc:9307
 #, gcc-internal-format, gfc-internal-format
 msgid "Type of entity at %L is type incompatible with source-expr at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8963
+#: fortran/resolve.cc:9319
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The allocate-object at %L and the source-expr at %L shall have the same kind "
 "type parameter"
 msgstr ""
 
-#: fortran/resolve.cc:8977
+#: fortran/resolve.cc:9333
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The source-expr at %L shall neither be of type LOCK_TYPE nor have a "
 "LOCK_TYPE component if allocate-object at %L is a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:9002
+#: fortran/resolve.cc:9358
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The source-expr at %L shall neither be of type EVENT_TYPE nor have a "
 "EVENT_TYPE component if allocate-object at %L is a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:9015
+#: fortran/resolve.cc:9371
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocating %s of ABSTRACT base type at %L requires a type-spec or source-expr"
 msgstr ""
 
-#: fortran/resolve.cc:9029
+#: fortran/resolve.cc:9385
 #, gcc-internal-format
 msgid ""
 "The type parameter in ALLOCATE statement with type-spec shall be an asterisk "
 "as allocate object %qs at %L is a dummy argument with assumed type parameter"
 msgstr ""
 
-#: fortran/resolve.cc:9049
+#: fortran/resolve.cc:9405
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocating %s at %L with type-spec requires the same character-length "
 "parameter as in the declaration"
 msgstr ""
 
-#: fortran/resolve.cc:9133 fortran/resolve.cc:9148
+#: fortran/resolve.cc:9489 fortran/resolve.cc:9504
 #, gcc-internal-format, gfc-internal-format
 msgid "Array specification required in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9140
+#: fortran/resolve.cc:9496
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Array specification or array-valued SOURCE= expression required in ALLOCATE "
 "statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9165
+#: fortran/resolve.cc:9521
 #, gcc-internal-format, gfc-internal-format
 msgid "Coarray specification required in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9175 fortran/resolve.cc:9277
+#: fortran/resolve.cc:9531 fortran/resolve.cc:9633
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad coarray specification in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9181
+#: fortran/resolve.cc:9537
 #, gcc-internal-format, gfc-internal-format
 msgid "Upper cobound is less than lower cobound at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9193
+#: fortran/resolve.cc:9549
 #, gcc-internal-format, gfc-internal-format
 msgid "Upper cobound is less than lower cobound of 1 at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9204 fortran/resolve.cc:9232
+#: fortran/resolve.cc:9560 fortran/resolve.cc:9588
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad array specification in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9251
+#: fortran/resolve.cc:9607
 #, gcc-internal-format
 msgid ""
 "%qs must not appear in the array specification at %L in the same ALLOCATE "
 "statement where it is itself allocated"
 msgstr ""
 
-#: fortran/resolve.cc:9266
+#: fortran/resolve.cc:9622
 #, gcc-internal-format
 msgid "Expected %<*%> in coindex specification in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9308
+#: fortran/resolve.cc:9664
 #, gcc-internal-format, gfc-internal-format
 msgid "Stat-variable at %L must be a scalar INTEGER variable"
 msgstr ""
 
-#: fortran/resolve.cc:9337
+#: fortran/resolve.cc:9693
 #, gcc-internal-format, gfc-internal-format
 msgid "Stat-variable at %L shall not be %sd within the same %s statement"
 msgstr ""
 
-#: fortran/resolve.cc:9350
+#: fortran/resolve.cc:9706
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG at %L is useless without a STAT tag"
 msgstr ""
 
-#: fortran/resolve.cc:9364
+#: fortran/resolve.cc:9720
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG variable at %L shall be a scalar default CHARACTER variable"
 msgstr ""
 
-#: fortran/resolve.cc:9393
+#: fortran/resolve.cc:9749
 #, gcc-internal-format, gfc-internal-format
 msgid "Errmsg-variable at %L shall not be %sd within the same %s statement"
 msgstr ""
 
-#: fortran/resolve.cc:9425
+#: fortran/resolve.cc:9781
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L also appears at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9431 fortran/resolve.cc:9437
+#: fortran/resolve.cc:9787 fortran/resolve.cc:9793
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L is subobject of object at %L"
 msgstr ""
@@ -87033,330 +91269,330 @@ msgstr ""
 #. element in the list.  Either way, we must
 #. issue an error and get the next case from P.
 #. FIXME: Sort P and Q by line number.
-#: fortran/resolve.cc:9665
+#: fortran/resolve.cc:10022
 #, gcc-internal-format, gfc-internal-format
 msgid "CASE label at %L overlaps with CASE label at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9716
+#: fortran/resolve.cc:10073
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L must be of type %s"
 msgstr ""
 
-#: fortran/resolve.cc:9727
+#: fortran/resolve.cc:10084
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L must be of kind %d"
 msgstr ""
 
-#: fortran/resolve.cc:9740
+#: fortran/resolve.cc:10097
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:9786
+#: fortran/resolve.cc:10143
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Selection expression in computed GOTO statement at %L must be a scalar "
 "integer expression"
 msgstr ""
 
-#: fortran/resolve.cc:9807
+#: fortran/resolve.cc:10164
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of SELECT statement at %L cannot be %s"
 msgstr ""
 
-#: fortran/resolve.cc:9817
+#: fortran/resolve.cc:10174
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of SELECT statement at %L must be a scalar expression"
 msgstr ""
 
-#: fortran/resolve.cc:9835 fortran/resolve.cc:9843
+#: fortran/resolve.cc:10192 fortran/resolve.cc:10200
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L is not in the range of %s"
 msgstr ""
 
-#: fortran/resolve.cc:9905 fortran/resolve.cc:10739
+#: fortran/resolve.cc:10262 fortran/resolve.cc:11101
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The DEFAULT CASE at %L cannot be followed by a second DEFAULT CASE at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9931
+#: fortran/resolve.cc:10288
 #, gcc-internal-format, gfc-internal-format
 msgid "Logical range in CASE statement at %L is not allowed"
 msgstr ""
 
-#: fortran/resolve.cc:9944
+#: fortran/resolve.cc:10301
 #, gcc-internal-format, gfc-internal-format
 msgid "Constant logical value in CASE statement is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9959
+#: fortran/resolve.cc:10316
 #, gcc-internal-format, gfc-internal-format
 msgid "Range specification at %L can never be matched"
 msgstr ""
 
-#: fortran/resolve.cc:10062
+#: fortran/resolve.cc:10419
 #, gcc-internal-format, gfc-internal-format
 msgid "Logical SELECT CASE block at %L has more that two cases"
 msgstr ""
 
-#: fortran/resolve.cc:10124
+#: fortran/resolve.cc:10481
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "(F202y)Missing or invalid bound in ASSOCIATE rank remapping of associate "
 "name %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:10140
+#: fortran/resolve.cc:10497
 #, gcc-internal-format
 msgid "Associating entity %qs at %L is a procedure pointer"
 msgstr ""
 
-#: fortran/resolve.cc:10149
+#: fortran/resolve.cc:10506
 #, gcc-internal-format
 msgid "Derived type %qs cannot be used as a variable at %L"
 msgstr ""
 
-#: fortran/resolve.cc:10166
+#: fortran/resolve.cc:10523
 #, gcc-internal-format
 msgid "Associating entity %qs at %L is a procedure name"
 msgstr ""
 
-#: fortran/resolve.cc:10182
+#: fortran/resolve.cc:10539
 #, gcc-internal-format, gfc-internal-format
 msgid "Associating selector-expression at %L yields a procedure"
 msgstr ""
 
-#: fortran/resolve.cc:10236
+#: fortran/resolve.cc:10593
 #, gcc-internal-format, gfc-internal-format
 msgid "Selector at %L cannot be NULL()"
 msgstr ""
 
-#: fortran/resolve.cc:10241
+#: fortran/resolve.cc:10598
 #, gcc-internal-format, gfc-internal-format
 msgid "Selector at %L has no type"
 msgstr ""
 
-#: fortran/resolve.cc:10300
+#: fortran/resolve.cc:10657
 #, gcc-internal-format
 msgid "Associate-name %qs at %L is used as array"
 msgstr ""
 
-#: fortran/resolve.cc:10311
+#: fortran/resolve.cc:10668
 #, gcc-internal-format, gfc-internal-format
 msgid "CLASS selector at %L needs a temporary which is not yet implemented"
 msgstr ""
 
-#: fortran/resolve.cc:10598
+#: fortran/resolve.cc:10960
 #, gcc-internal-format, gfc-internal-format
 msgid "Selector shall be polymorphic in SELECT TYPE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:10647 fortran/resolve.cc:10659
+#: fortran/resolve.cc:11009 fortran/resolve.cc:11021
 #, gcc-internal-format, gfc-internal-format
 msgid "Selector at %L must not be coindexed"
 msgstr ""
 
-#: fortran/resolve.cc:10688
+#: fortran/resolve.cc:11050
 #, gcc-internal-format, gfc-internal-format
 msgid "TYPE IS at %L overlaps with TYPE IS at %L"
 msgstr ""
 
-#: fortran/resolve.cc:10701
+#: fortran/resolve.cc:11063
 #, gcc-internal-format
 msgid "Derived type %qs at %L must be extensible"
 msgstr ""
 
-#: fortran/resolve.cc:10714
+#: fortran/resolve.cc:11076
 #, gcc-internal-format
 msgid "Derived type %qs at %L must be an extension of %qs"
 msgstr ""
 
-#: fortran/resolve.cc:10717
+#: fortran/resolve.cc:11079
 #, gcc-internal-format
 msgid "Unexpected intrinsic type %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:10727
+#: fortran/resolve.cc:11089
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The type-spec at %L shall specify that each length type parameter is assumed"
 msgstr ""
 
-#: fortran/resolve.cc:10978
+#: fortran/resolve.cc:11357
 #, gcc-internal-format, gfc-internal-format
 msgid "Double CLASS IS block in SELECT TYPE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11111
+#: fortran/resolve.cc:11490
 #, gcc-internal-format, gfc-internal-format
 msgid "RANK DEFAULT at %L is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11120
+#: fortran/resolve.cc:11499
 #, gcc-internal-format, gfc-internal-format
 msgid "RANK (*) at %L is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11123
+#: fortran/resolve.cc:11502
 #, gcc-internal-format, gfc-internal-format
 msgid "RANK (%i) at %L is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11133
+#: fortran/resolve.cc:11512
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "RANK (*) at %L cannot be used with the pointer or allocatable selector at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11242
+#: fortran/resolve.cc:11621
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid context for NULL () intrinsic at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11296
+#: fortran/resolve.cc:11675
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO %s procedure at %L must be recursive"
 msgstr ""
 
-#: fortran/resolve.cc:11306
+#: fortran/resolve.cc:11685
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Data transfer element at %L cannot be polymorphic unless it is processed by "
 "a defined input/output procedure"
 msgstr ""
 
-#: fortran/resolve.cc:11319
+#: fortran/resolve.cc:11698
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Data transfer element at %L cannot have POINTER components unless it is "
 "processed by a defined input/output procedure"
 msgstr ""
 
-#: fortran/resolve.cc:11328
+#: fortran/resolve.cc:11707
 #, gcc-internal-format, gfc-internal-format
 msgid "Data transfer element at %L cannot have procedure pointer components"
 msgstr ""
 
-#: fortran/resolve.cc:11335
+#: fortran/resolve.cc:11714
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Data transfer element at %L cannot have ALLOCATABLE components unless it is "
 "processed by a defined input/output procedure"
 msgstr ""
 
-#: fortran/resolve.cc:11346
+#: fortran/resolve.cc:11725
 #, gcc-internal-format, gfc-internal-format
 msgid "Data transfer element at %L cannot have PRIVATE components"
 msgstr ""
 
-#: fortran/resolve.cc:11352
+#: fortran/resolve.cc:11731
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Data transfer element at %L cannot have PRIVATE components unless it is "
 "processed by a defined input/output procedure"
 msgstr ""
 
-#: fortran/resolve.cc:11370
+#: fortran/resolve.cc:11749
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Data transfer element at %L cannot be a full reference to an assumed-size "
 "array"
 msgstr ""
 
-#: fortran/resolve.cc:11421
+#: fortran/resolve.cc:11800
 #, gcc-internal-format, gfc-internal-format
 msgid "Lock variable at %L must be a scalar of type LOCK_TYPE"
 msgstr ""
 
-#: fortran/resolve.cc:11431
+#: fortran/resolve.cc:11810
 #, gcc-internal-format, gfc-internal-format
 msgid "Event variable at %L must be a scalar of type EVENT_TYPE"
 msgstr ""
 
-#: fortran/resolve.cc:11435
+#: fortran/resolve.cc:11814
 #, gcc-internal-format, gfc-internal-format
 msgid "Event variable argument at %L must be a coarray or coindexed"
 msgstr ""
 
-#: fortran/resolve.cc:11438
+#: fortran/resolve.cc:11817
 #, gcc-internal-format, gfc-internal-format
 msgid "Event variable argument at %L must be a coarray but not coindexed"
 msgstr ""
 
-#: fortran/resolve.cc:11445 fortran/resolve.cc:11672
+#: fortran/resolve.cc:11824 fortran/resolve.cc:12051
 #, gcc-internal-format, gfc-internal-format
 msgid "STAT= argument at %L must be a scalar INTEGER variable"
 msgstr ""
 
-#: fortran/resolve.cc:11457 fortran/resolve.cc:11684
+#: fortran/resolve.cc:11836 fortran/resolve.cc:12063
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG= argument at %L must be a scalar CHARACTER variable"
 msgstr ""
 
-#: fortran/resolve.cc:11469
+#: fortran/resolve.cc:11848
 #, gcc-internal-format, gfc-internal-format
 msgid "ACQUIRED_LOCK= argument at %L must be a scalar LOGICAL variable"
 msgstr ""
 
-#: fortran/resolve.cc:11482
+#: fortran/resolve.cc:11861
 #, gcc-internal-format, gfc-internal-format
 msgid "UNTIL_COUNT= argument at %L must be a scalar INTEGER expression"
 msgstr ""
 
-#: fortran/resolve.cc:11495
+#: fortran/resolve.cc:11874
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TEAM argument at %L must be a scalar expression of type TEAM_TYPE from the "
 "intrinsic module ISO_FORTRAN_ENV"
 msgstr ""
 
-#: fortran/resolve.cc:11509
+#: fortran/resolve.cc:11888
 #, gcc-internal-format, gfc-internal-format
 msgid "%s argument at %L must be a scalar %s variable of at least kind %d"
 msgstr ""
 
-#: fortran/resolve.cc:11530
+#: fortran/resolve.cc:11909
 #, gcc-internal-format, gfc-internal-format
 msgid "%s argument at %L must be a scalar %s of at least kind %d"
 msgstr ""
 
-#: fortran/resolve.cc:11648
+#: fortran/resolve.cc:12027
 #, gcc-internal-format, gfc-internal-format
 msgid "Imageset argument at %L must be a scalar or rank-1 INTEGER expression"
 msgstr ""
 
-#: fortran/resolve.cc:11652 fortran/resolve.cc:11662
+#: fortran/resolve.cc:12031 fortran/resolve.cc:12041
 #, gcc-internal-format, gfc-internal-format
 msgid "Imageset argument at %L must between 1 and num_images()"
 msgstr ""
 
-#: fortran/resolve.cc:11715
+#: fortran/resolve.cc:12094
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Statement at %L is not a valid branch target statement for the branch "
 "statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11724
+#: fortran/resolve.cc:12103
 #, gcc-internal-format, gfc-internal-format
 msgid "Branch at %L may result in an infinite loop"
 msgstr ""
 
 #. Note: A label at END CRITICAL does not leave the CRITICAL
 #. construct as END CRITICAL is still part of it.
-#: fortran/resolve.cc:11742 fortran/resolve.cc:11769
+#: fortran/resolve.cc:12121 fortran/resolve.cc:12148
 #, gcc-internal-format, gfc-internal-format
 msgid "GOTO statement at %L leaves CRITICAL construct for label at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11746 fortran/resolve.cc:11775
+#: fortran/resolve.cc:12125 fortran/resolve.cc:12154
 #, gcc-internal-format, gfc-internal-format
 msgid "GOTO statement at %L leaves DO CONCURRENT construct for label at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11750
+#: fortran/resolve.cc:12129
 #, gcc-internal-format, gfc-internal-format
 msgid "GOTO statement at %L leaves CHANGE TEAM construct for label at %L"
 msgstr ""
@@ -87364,85 +91600,90 @@ msgstr ""
 #. The label is not in an enclosing block, so illegal.  This was
 #. allowed in Fortran 66, so we allow it as extension.  No
 #. further checks are necessary in this case.
-#: fortran/resolve.cc:11790
+#: fortran/resolve.cc:12169
 #, gcc-internal-format, gfc-internal-format
 msgid "Label at %L is not in the same block as the GOTO statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11862
+#: fortran/resolve.cc:12241
 #, gcc-internal-format, gfc-internal-format
 msgid "WHERE mask at %L has inconsistent shape"
 msgstr ""
 
-#: fortran/resolve.cc:11878
+#: fortran/resolve.cc:12257
 #, gcc-internal-format, gfc-internal-format
 msgid "WHERE assignment target at %L has inconsistent shape"
 msgstr ""
 
-#: fortran/resolve.cc:11891 fortran/resolve.cc:11983
+#: fortran/resolve.cc:12270 fortran/resolve.cc:12365
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-ELEMENTAL user-defined assignment in WHERE at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11901 fortran/resolve.cc:11993
+#: fortran/resolve.cc:12280 fortran/resolve.cc:12375
 #, gcc-internal-format, gfc-internal-format
 msgid "Unsupported statement inside WHERE at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11932
+#: fortran/resolve.cc:12310
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to a FORALL index variable at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11941
+#: fortran/resolve.cc:12323
 #, gcc-internal-format
 msgid ""
 "The FORALL with index %qs is not used on the left side of the assignment at "
 "%L and so might cause multiple assignment to this object"
 msgstr ""
 
-#: fortran/resolve.cc:12098
+#: fortran/resolve.cc:12652
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL construct at %L"
 msgstr ""
 
-#: fortran/resolve.cc:12119
+#: fortran/resolve.cc:12678
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL index-name at %L must be a scalar variable of type integer"
 msgstr ""
 
-#: fortran/resolve.cc:12129
+#: fortran/resolve.cc:12690
 #, gcc-internal-format, gfc-internal-format
 msgid "An outer FORALL construct already has an index with this name %L"
 msgstr ""
 
-#: fortran/resolve.cc:12207
+#: fortran/resolve.cc:12725
+#, gcc-internal-format
+msgid "Expected shadow variable name to start with _"
+msgstr ""
+
+#: fortran/resolve.cc:12812
 #, gcc-internal-format, gfc-internal-format
 msgid "WHERE/ELSEWHERE clause at %L requires a LOGICAL array"
 msgstr ""
 
-#: fortran/resolve.cc:12328
+#: fortran/resolve.cc:12933
 #, gcc-internal-format
 msgid "gfc_resolve_blocks(): Bad block type"
 msgstr ""
 
-#: fortran/resolve.cc:12408
+#: fortran/resolve.cc:13013
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable in the ordinary assignment at %L is a procedure pointer component"
 msgstr ""
 
-#: fortran/resolve.cc:12428
+#: fortran/resolve.cc:13033
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot assign %s to %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:12476
+#: fortran/resolve.cc:13081
 #, gcc-internal-format
 msgid "CHARACTER expression will be truncated in assignment (%wd/%wd) at %L"
 msgstr ""
 
-#: fortran/resolve.cc:12508
+#: fortran/resolve.cc:13113
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Coindexed expression at %L is assigned to a derived type variable with a "
@@ -87450,7 +91691,7 @@ msgid ""
 msgstr ""
 
 #. F2008, C1283 (4).
-#: fortran/resolve.cc:12514
+#: fortran/resolve.cc:13119
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "In a pure subprogram an INTENT(IN) dummy argument shall not be used as the "
@@ -87459,43 +91700,43 @@ msgid ""
 "component selection."
 msgstr ""
 
-#: fortran/resolve.cc:12526
+#: fortran/resolve.cc:13131
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to coindexed variable at %L in a PURE procedure"
 msgstr ""
 
-#: fortran/resolve.cc:12558
+#: fortran/resolve.cc:13163
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to polymorphic coarray at %L is not permitted"
 msgstr ""
 
-#: fortran/resolve.cc:12562
+#: fortran/resolve.cc:13167
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to an allocatable polymorphic variable at %L"
 msgstr ""
 
-#: fortran/resolve.cc:12567
+#: fortran/resolve.cc:13172
 #, gcc-internal-format
 msgid ""
 "Assignment to an allocatable polymorphic variable at %L requires %<-frealloc-"
 "lhs%>"
 msgstr ""
 
-#: fortran/resolve.cc:12574
+#: fortran/resolve.cc:13179
 #, gcc-internal-format
 msgid ""
 "Nonallocatable variable must not be polymorphic in intrinsic assignment at "
 "%L - check that there is a matching specific subroutine for %<=%> operator"
 msgstr ""
 
-#: fortran/resolve.cc:12585
+#: fortran/resolve.cc:13190
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Coindexed variable must not have an allocatable ultimate component in "
 "assignment at %L"
 msgstr ""
 
-#: fortran/resolve.cc:12974
+#: fortran/resolve.cc:13579
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TODO: type-bound defined assignment(s) at %L not done because multiple part "
@@ -87504,82 +91745,82 @@ msgstr ""
 
 #. Even if standard does not support this feature, continue to build
 #. the two statements to avoid upsetting frontend_passes.c.
-#: fortran/resolve.cc:13288
+#: fortran/resolve.cc:13893
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer procedure assignment at %L"
 msgstr ""
 
-#: fortran/resolve.cc:13300
+#: fortran/resolve.cc:13905
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The function result on the lhs of the assignment at %L must have the pointer "
 "attribute."
 msgstr ""
 
-#: fortran/resolve.cc:13611
+#: fortran/resolve.cc:14222
 #, gcc-internal-format, gfc-internal-format
 msgid "ASSIGNED GOTO statement at %L requires a scalar INTEGER variable"
 msgstr ""
 
-#: fortran/resolve.cc:13615
+#: fortran/resolve.cc:14226
 #, gcc-internal-format
 msgid "Variable %qs has not been assigned a target label at %L"
 msgstr ""
 
-#: fortran/resolve.cc:13626
+#: fortran/resolve.cc:14237
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Alternate RETURN statement at %L requires a SCALAR-INTEGER return specifier"
 msgstr ""
 
-#: fortran/resolve.cc:13682
+#: fortran/resolve.cc:14293
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected intrinsic assignment in OMP WORKSHARE at %L"
 msgstr ""
 
-#: fortran/resolve.cc:13724
+#: fortran/resolve.cc:14335
 #, gcc-internal-format, gfc-internal-format
 msgid "ASSIGN statement at %L requires a scalar default INTEGER variable"
 msgstr ""
 
-#: fortran/resolve.cc:13771
+#: fortran/resolve.cc:14382
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid NULL at %L"
 msgstr ""
 
-#: fortran/resolve.cc:13775
+#: fortran/resolve.cc:14386
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Arithmetic IF statement at %L requires a scalar REAL or INTEGER expression"
 msgstr ""
 
-#: fortran/resolve.cc:13836
+#: fortran/resolve.cc:14447
 #, gcc-internal-format
 msgid "gfc_resolve_code(): No expression on DO WHILE"
 msgstr ""
 
-#: fortran/resolve.cc:13841
+#: fortran/resolve.cc:14452
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Exit condition of DO WHILE loop at %L must be a scalar LOGICAL expression"
 msgstr ""
 
-#: fortran/resolve.cc:13925
+#: fortran/resolve.cc:14536
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL mask clause at %L requires a scalar LOGICAL expression"
 msgstr ""
 
-#: fortran/resolve.cc:14037
+#: fortran/resolve.cc:14648
 #, gcc-internal-format
 msgid "gfc_resolve_code(): Bad statement code"
 msgstr ""
 
-#: fortran/resolve.cc:14058
+#: fortran/resolve.cc:14669
 #, gcc-internal-format
 msgid "Using parameter %qs declared at %L is deprecated"
 msgstr ""
 
-#: fortran/resolve.cc:14154
+#: fortran/resolve.cc:14765
 #, gcc-internal-format
 msgid ""
 "Variable %qs with binding label %qs at %L uses the same global identifier as "
@@ -87588,7 +91829,7 @@ msgstr ""
 
 #. This can only happen if the variable is defined in a module - if it
 #. isn't the same module, reject it.
-#: fortran/resolve.cc:14168
+#: fortran/resolve.cc:14779
 #, gcc-internal-format
 msgid ""
 "Variable %qs from module %qs with binding label %qs at %L uses the same "
@@ -87598,1283 +91839,1315 @@ msgstr ""
 #. Print an error if the procedure is defined multiple times; we have to
 #. exclude references to the same procedure via module association or
 #. multiple checks for the same procedure.
-#: fortran/resolve.cc:14187
+#: fortran/resolve.cc:14798
 #, gcc-internal-format
 msgid ""
 "Procedure %qs with binding label %qs at %L uses the same global identifier "
 "as entity at %L"
 msgstr ""
 
-#: fortran/resolve.cc:14273
+#: fortran/resolve.cc:14884
 #, gcc-internal-format, gfc-internal-format
 msgid "String length at %L is too large"
 msgstr ""
 
-#: fortran/resolve.cc:14511
+#: fortran/resolve.cc:15128
 #, gcc-internal-format
 msgid "Allocatable array %qs at %L must have a deferred shape or assumed rank"
 msgstr ""
 
-#: fortran/resolve.cc:14515
+#: fortran/resolve.cc:15132
 #, gcc-internal-format
 msgid "Scalar object %qs at %L may not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.cc:14523
+#: fortran/resolve.cc:15140
 #, gcc-internal-format
 msgid "Array pointer %qs at %L must have a deferred shape or assumed rank"
 msgstr ""
 
-#: fortran/resolve.cc:14534
+#: fortran/resolve.cc:15151
 #, gcc-internal-format
 msgid "Array %qs at %L cannot have a deferred shape"
 msgstr ""
 
-#: fortran/resolve.cc:14552
+#: fortran/resolve.cc:15169
 #, gcc-internal-format
 msgid "Type %qs of CLASS variable %qs at %L is not extensible"
 msgstr ""
 
-#: fortran/resolve.cc:14566
+#: fortran/resolve.cc:15183
 #, gcc-internal-format
 msgid "CLASS variable %qs at %L must be dummy, allocatable or pointer"
 msgstr ""
 
-#: fortran/resolve.cc:14599
+#: fortran/resolve.cc:15216
 #, gcc-internal-format
 msgid ""
 "The type %qs cannot be host associated at %L because it is blocked by an "
 "incompatible object of the same name declared at %L"
 msgstr ""
 
-#: fortran/resolve.cc:14621
+#: fortran/resolve.cc:15238
 #, gcc-internal-format
 msgid ""
 "Implied SAVE for module variable %qs at %L, needed due to the default "
 "initialization"
 msgstr ""
 
-#: fortran/resolve.cc:14654
+#: fortran/resolve.cc:15271
 #, gcc-internal-format
 msgid ""
 "Entity %qs at %L has a deferred type parameter and requires either the "
 "POINTER or ALLOCATABLE attribute"
 msgstr ""
 
-#: fortran/resolve.cc:14668
+#: fortran/resolve.cc:15285
 #, gcc-internal-format
 msgid "Automatic object %qs at %L cannot have the SAVE attribute"
 msgstr ""
 
 #. F08:C541. The shape of an array defined in a main program or module
 #. * needs to be constant.
-#: fortran/resolve.cc:14690
+#: fortran/resolve.cc:15307
 #, gcc-internal-format
 msgid "The module or main program array %qs at %L must have constant shape"
 msgstr ""
 
-#: fortran/resolve.cc:14715
+#: fortran/resolve.cc:15332
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Entity with assumed character length at %L must be a dummy argument or a "
 "PARAMETER"
 msgstr ""
 
-#: fortran/resolve.cc:14736
+#: fortran/resolve.cc:15353
 #, gcc-internal-format
 msgid "%qs at %L must have constant character length in this context"
 msgstr ""
 
-#: fortran/resolve.cc:14743
+#: fortran/resolve.cc:15360
 #, gcc-internal-format
 msgid "COMMON variable %qs at %L must have constant character length"
 msgstr ""
 
-#: fortran/resolve.cc:14791
+#: fortran/resolve.cc:15408
 #, gcc-internal-format
 msgid "Allocatable %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:14794
+#: fortran/resolve.cc:15411
 #, gcc-internal-format
 msgid "External %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:14797
+#: fortran/resolve.cc:15414
 #, gcc-internal-format
 msgid "Dummy %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:14800
+#: fortran/resolve.cc:15417
 #, gcc-internal-format
 msgid "Intrinsic %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:14803
+#: fortran/resolve.cc:15420
 #, gcc-internal-format
 msgid "Function result %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:14806
+#: fortran/resolve.cc:15423
 #, gcc-internal-format
 msgid "Automatic array %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:14848
+#: fortran/resolve.cc:15465
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:14880
+#: fortran/resolve.cc:15497
 #, gcc-internal-format
 msgid "Character-valued statement function %qs at %L must have constant length"
 msgstr ""
 
-#: fortran/resolve.cc:14903
+#: fortran/resolve.cc:15520
 #, gcc-internal-format
 msgid ""
 "%qs is of a PRIVATE type and cannot be a dummy argument of %qs, which is "
 "PUBLIC at %L"
 msgstr ""
 
-#: fortran/resolve.cc:14925
+#: fortran/resolve.cc:15542
 #, gcc-internal-format
 msgid ""
 "Procedure %qs in PUBLIC interface %qs at %L takes dummy arguments of %qs "
 "which is PRIVATE"
 msgstr ""
 
-#: fortran/resolve.cc:14943
+#: fortran/resolve.cc:15560
 #, gcc-internal-format
 msgid "Function %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:14955
+#: fortran/resolve.cc:15572
 #, gcc-internal-format
 msgid "External object %qs at %L may not have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:14965
+#: fortran/resolve.cc:15582
 #, gcc-internal-format
 msgid "ELEMENTAL function %qs at %L must have a scalar result"
 msgstr ""
 
-#: fortran/resolve.cc:14975
+#: fortran/resolve.cc:15592
 #, gcc-internal-format
 msgid ""
 "Statement function %qs at %L may not have pointer or allocatable attribute"
 msgstr ""
 
-#: fortran/resolve.cc:14994
+#: fortran/resolve.cc:15611
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be array-valued"
 msgstr ""
 
-#: fortran/resolve.cc:14998
+#: fortran/resolve.cc:15615
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be pointer-valued"
 msgstr ""
 
-#: fortran/resolve.cc:15002
+#: fortran/resolve.cc:15619
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be pure"
 msgstr ""
 
-#: fortran/resolve.cc:15006
+#: fortran/resolve.cc:15623
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be recursive"
 msgstr ""
 
-#: fortran/resolve.cc:15019
+#: fortran/resolve.cc:15636
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15030
+#: fortran/resolve.cc:15647
 #, gcc-internal-format
 msgid "Procedure pointer %qs at %L shall not be elemental"
 msgstr ""
 
-#: fortran/resolve.cc:15036
+#: fortran/resolve.cc:15653
 #, gcc-internal-format
 msgid "Dummy procedure %qs at %L shall not be elemental"
 msgstr ""
 
-#: fortran/resolve.cc:15056
+#: fortran/resolve.cc:15673
 #, gcc-internal-format
 msgid ""
 "Function result variable %qs at %L of elemental function %qs shall not have "
 "an ALLOCATABLE or POINTER attribute"
 msgstr ""
 
-#: fortran/resolve.cc:15113
+#: fortran/resolve.cc:15690
+#, gcc-internal-format
+msgid "Result variable %qs of pure function at %L is polymorphic allocatable"
+msgstr ""
+
+#: fortran/resolve.cc:15704
+#, gcc-internal-format
+msgid ""
+"Result variable %qs of pure function at %L has polymorphic allocatable "
+"component %qs"
+msgstr ""
+
+#: fortran/resolve.cc:15763
 #, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with SAVE attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15119
+#: fortran/resolve.cc:15769
 #, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with INTENT attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15125
+#: fortran/resolve.cc:15775
 #, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with RESULT attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15133
+#: fortran/resolve.cc:15783
 #, gcc-internal-format
 msgid "EXTERNAL attribute conflicts with FUNCTION attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15139
+#: fortran/resolve.cc:15789
 #, gcc-internal-format
 msgid "Procedure pointer result %qs at %L is missing the pointer attribute"
 msgstr ""
 
-#: fortran/resolve.cc:15182
+#: fortran/resolve.cc:15832
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Mismatch in ELEMENTAL attribute between MODULE PROCEDURE at %L and its "
 "interface in %s"
 msgstr ""
 
-#: fortran/resolve.cc:15190
+#: fortran/resolve.cc:15840
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Mismatch in PURE attribute between MODULE PROCEDURE at %L and its interface "
 "in %s"
 msgstr ""
 
-#: fortran/resolve.cc:15198
+#: fortran/resolve.cc:15848
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Mismatch in RECURSIVE attribute between MODULE PROCEDURE at %L and its "
 "interface in %s"
 msgstr ""
 
-#: fortran/resolve.cc:15207
+#: fortran/resolve.cc:15857
 #, gcc-internal-format
 msgid ""
 "%s between the MODULE PROCEDURE declaration in MODULE %qs and the "
 "declaration at %L in (SUB)MODULE %qs"
 msgstr ""
 
-#: fortran/resolve.cc:15231
+#: fortran/resolve.cc:15881
 #, gcc-internal-format
 msgid "Interface of %qs at %L must be explicit"
 msgstr ""
 
-#: fortran/resolve.cc:15301
+#: fortran/resolve.cc:15986
 #, gcc-internal-format
 msgid "FINAL procedure %qs at %L is not a SUBROUTINE"
 msgstr ""
 
-#: fortran/resolve.cc:15310
+#: fortran/resolve.cc:15995
 #, gcc-internal-format, gfc-internal-format
 msgid "FINAL procedure at %L must have exactly one argument"
 msgstr ""
 
-#: fortran/resolve.cc:15318 fortran/resolve.cc:15335
+#: fortran/resolve.cc:16003 fortran/resolve.cc:16021
 #, gcc-internal-format
 msgid "Argument of FINAL procedure at %L must be of type %qs"
 msgstr ""
 
-#: fortran/resolve.cc:15326
+#: fortran/resolve.cc:16011
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "FINAL procedure at %L with assumed rank argument must be the only finalizer "
 "with the same kind/type (F2018: C790)"
 msgstr ""
 
-#: fortran/resolve.cc:15343
+#: fortran/resolve.cc:16029
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be a POINTER"
 msgstr ""
 
-#: fortran/resolve.cc:15349
+#: fortran/resolve.cc:16035
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.cc:15355
+#: fortran/resolve.cc:16041
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be OPTIONAL"
 msgstr ""
 
-#: fortran/resolve.cc:15363
+#: fortran/resolve.cc:16049
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be INTENT(OUT)"
 msgstr ""
 
-#: fortran/resolve.cc:15372
+#: fortran/resolve.cc:16058
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-scalar FINAL procedure at %L should have assumed shape argument"
 msgstr ""
 
-#: fortran/resolve.cc:15394
+#: fortran/resolve.cc:16080
 #, gcc-internal-format
 msgid "FINAL procedure %qs declared at %L has the same rank (%d) as %qs"
 msgstr ""
 
-#: fortran/resolve.cc:15431
+#: fortran/resolve.cc:16117
 #, gcc-internal-format
 msgid ""
 "Only array FINAL procedures declared for derived type %qs defined at %L, "
 "suggest also scalar one unless an assumed rank finalizer has been declared"
 msgstr ""
 
-#: fortran/resolve.cc:15472
+#: fortran/resolve.cc:16187
 #, gcc-internal-format
 msgid "%qs and %qs cannot be mixed FUNCTION/SUBROUTINE for GENERIC %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15508
+#: fortran/resolve.cc:16234
 #, gcc-internal-format
 msgid "%qs and %qs for GENERIC %qs at %L are ambiguous"
 msgstr ""
 
-#: fortran/resolve.cc:15567
+#: fortran/resolve.cc:16293
 #, gcc-internal-format
 msgid "Undefined specific binding %qs as target of GENERIC %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15579
+#: fortran/resolve.cc:16305
 #, gcc-internal-format
 msgid "GENERIC %qs at %L must target a specific binding, %qs is GENERIC, too"
 msgstr ""
 
-#: fortran/resolve.cc:15607
+#: fortran/resolve.cc:16333
 #, gcc-internal-format
 msgid "GENERIC %qs at %L cannot overwrite specific binding with the same name"
 msgstr ""
 
-#: fortran/resolve.cc:15663
+#: fortran/resolve.cc:16389
 #, gcc-internal-format, gfc-internal-format
 msgid "Type-bound operator at %L cannot be NOPASS"
 msgstr ""
 
-#: fortran/resolve.cc:15875
+#: fortran/resolve.cc:16605
 #, gcc-internal-format
 msgid ""
 "%qs must be a module procedure or an external procedure with an explicit "
 "interface at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15918
+#: fortran/resolve.cc:16648
 #, gcc-internal-format
 msgid "Procedure %qs with PASS(%s) at %L has no argument %qs"
 msgstr ""
 
-#: fortran/resolve.cc:15932
+#: fortran/resolve.cc:16662
 #, gcc-internal-format
 msgid "Procedure %qs with PASS at %L must have at least one argument"
 msgstr ""
 
-#: fortran/resolve.cc:15946 fortran/resolve.cc:16488
+#: fortran/resolve.cc:16676 fortran/resolve.cc:17242
 #, gcc-internal-format
 msgid "Non-polymorphic passed-object dummy argument of %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15955
+#: fortran/resolve.cc:16687
 #, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived-type %qs"
 msgstr ""
 
-#: fortran/resolve.cc:15965
+#: fortran/resolve.cc:16697
 #, gcc-internal-format
 msgid ""
 "Argument %qs of %qs with PASS(%s) at %L must be of the parametric derived-"
 "type %qs"
 msgstr ""
 
-#: fortran/resolve.cc:16007
+#: fortran/resolve.cc:16740
 #, gcc-internal-format
 msgid ""
 "All LEN type parameters of the passed dummy argument %qs of %qs at %L must "
 "be ASSUMED."
 msgstr ""
 
-#: fortran/resolve.cc:16017
+#: fortran/resolve.cc:16750
 #, gcc-internal-format
 msgid "Passed-object dummy argument of %qs at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:16023
+#: fortran/resolve.cc:16756
 #, gcc-internal-format
 msgid "Passed-object dummy argument of %qs at %L must not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.cc:16029
+#: fortran/resolve.cc:16762
 #, gcc-internal-format
 msgid "Passed-object dummy argument of %qs at %L must not be POINTER"
 msgstr ""
 
-#: fortran/resolve.cc:16058
+#: fortran/resolve.cc:16791
 #, gcc-internal-format
 msgid "Procedure %qs at %L has the same name as a component of %qs"
 msgstr ""
 
-#: fortran/resolve.cc:16068
+#: fortran/resolve.cc:16801
 #, gcc-internal-format
 msgid "Procedure %qs at %L has the same name as an inherited component of %qs"
 msgstr ""
 
-#: fortran/resolve.cc:16163
+#: fortran/resolve.cc:16898
 #, gcc-internal-format
 msgid ""
 "Derived-type %qs declared at %L must be ABSTRACT because %qs is DEFERRED and "
 "not overridden"
 msgstr ""
 
-#: fortran/resolve.cc:16268
+#: fortran/resolve.cc:17003
 #, gcc-internal-format
 msgid "Coarray component %qs at %L must be allocatable with deferred shape"
 msgstr ""
 
-#: fortran/resolve.cc:16277
+#: fortran/resolve.cc:17012
 #, gcc-internal-format
 msgid ""
 "Component %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:16287
+#: fortran/resolve.cc:17022
 #, gcc-internal-format
 msgid ""
 "Component %qs at %L with coarray component shall be a nonpointer, "
 "nonallocatable scalar"
 msgstr ""
 
-#: fortran/resolve.cc:16312
+#: fortran/resolve.cc:17047
 #, gcc-internal-format
 msgid ""
 "Component %qs at %L has the CONTIGUOUS attribute but is not an array pointer"
 msgstr ""
 
-#: fortran/resolve.cc:16323
+#: fortran/resolve.cc:17058
 #, gcc-internal-format
 msgid "Component %qs of BIND(C) type at %L must have length one"
 msgstr ""
 
-#: fortran/resolve.cc:16421
+#: fortran/resolve.cc:17175
 #, gcc-internal-format
 msgid "Procedure pointer component %qs with PASS(%s) at %L has no argument %qs"
 msgstr ""
 
-#: fortran/resolve.cc:16435
+#: fortran/resolve.cc:17189
 #, gcc-internal-format
 msgid ""
 "Procedure pointer component %qs with PASS at %L must have at least one "
 "argument"
 msgstr ""
 
-#: fortran/resolve.cc:16451
+#: fortran/resolve.cc:17205
 #, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived type %qs"
 msgstr ""
 
-#: fortran/resolve.cc:16461
+#: fortran/resolve.cc:17215
 #, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:16470
+#: fortran/resolve.cc:17224
 #, gcc-internal-format
 msgid ""
 "Argument %qs of %qs with PASS(%s) at %L may not have the POINTER attribute"
 msgstr ""
 
-#: fortran/resolve.cc:16479
+#: fortran/resolve.cc:17233
 #, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L may not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.cc:16521
+#: fortran/resolve.cc:17275
 #, gcc-internal-format
 msgid ""
 "Component %qs of %qs at %L has the same name as an inherited type-bound "
 "procedure"
 msgstr ""
 
-#: fortran/resolve.cc:16534
+#: fortran/resolve.cc:17291
 #, gcc-internal-format
 msgid ""
 "Character length of component %qs needs to be a constant specification "
 "expression at %L"
 msgstr ""
 
-#: fortran/resolve.cc:16545
+#: fortran/resolve.cc:17302
 #, gcc-internal-format
 msgid ""
 "Character length expression of component %qs at %L must be of INTEGER type, "
 "found %s"
 msgstr ""
 
-#: fortran/resolve.cc:16558
+#: fortran/resolve.cc:17315
 #, gcc-internal-format
 msgid ""
 "Character component %qs of %qs at %L with deferred length must be a POINTER "
 "or ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.cc:16591
+#: fortran/resolve.cc:17348
 #, gcc-internal-format
 msgid ""
 "the component %qs is a PRIVATE type and cannot be a component of %qs, which "
 "is PUBLIC at %L"
 msgstr ""
 
-#: fortran/resolve.cc:16599
+#: fortran/resolve.cc:17356
 #, gcc-internal-format, gfc-internal-format
 msgid "Polymorphic component %s at %L in SEQUENCE or BIND(C) type %s"
 msgstr ""
 
-#: fortran/resolve.cc:16608
+#: fortran/resolve.cc:17365
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Component %s of SEQUENCE type declared at %L does not have the SEQUENCE "
 "attribute"
 msgstr ""
 
-#: fortran/resolve.cc:16694
+#: fortran/resolve.cc:17451
 #, gcc-internal-format, gfc-internal-format
 msgid "Conflicting initializers in union at %L and %L"
 msgstr ""
 
-#: fortran/resolve.cc:16786
+#: fortran/resolve.cc:17543
 #, gcc-internal-format
 msgid ""
 "As extending type %qs at %L has a coarray component, parent type %qs shall "
 "also have one"
 msgstr ""
 
-#: fortran/resolve.cc:16799
+#: fortran/resolve.cc:17556
 #, gcc-internal-format
 msgid "Non-extensible derived-type %qs at %L must not be ABSTRACT"
 msgstr ""
 
-#: fortran/resolve.cc:16869
+#: fortran/resolve.cc:17626
 #, gcc-internal-format
 msgid ""
 "Parameterized type %qs does not have a component corresponding to parameter "
 "%qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:16901
+#: fortran/resolve.cc:17658
 #, gcc-internal-format
 msgid ""
 "Generic name %qs of function %qs at %L being the same name as derived type "
 "at %L"
 msgstr ""
 
-#: fortran/resolve.cc:16915
+#: fortran/resolve.cc:17672
 #, gcc-internal-format
 msgid "Derived type %qs at %L has not been declared"
 msgstr ""
 
-#: fortran/resolve.cc:16983
+#: fortran/resolve.cc:17695
+#, gcc-internal-format, gfc-internal-format
+msgid "Failed to build PDT class component at %L"
+msgstr ""
+
+#: fortran/resolve.cc:17756
 #, gcc-internal-format
 msgid "Assumed size array %qs in namelist %qs at %L is not allowed"
 msgstr ""
 
-#: fortran/resolve.cc:16989
+#: fortran/resolve.cc:17762
 #, gcc-internal-format
 msgid "NAMELIST array object %qs with assumed shape in namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:16995
+#: fortran/resolve.cc:17768
 #, gcc-internal-format
 msgid "NAMELIST array object %qs with nonconstant shape in namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:17003
+#: fortran/resolve.cc:17776
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs with nonconstant character length in namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:17020
+#: fortran/resolve.cc:17793
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs was declared PRIVATE and cannot be member of PUBLIC "
 "namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:17042
+#: fortran/resolve.cc:17815
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs has use-associated PRIVATE components and cannot be "
 "member of namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:17053
+#: fortran/resolve.cc:17826
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs has PRIVATE components and cannot be a member of PUBLIC "
 "namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:17080
+#: fortran/resolve.cc:17853
 #, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with NAMELIST attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:17099
+#: fortran/resolve.cc:17872
 #, gcc-internal-format
 msgid "Parameter array %qs at %L cannot be automatic or of deferred shape"
 msgstr ""
 
-#: fortran/resolve.cc:17115
+#: fortran/resolve.cc:17888
 #, gcc-internal-format
 msgid ""
 "Implicitly typed PARAMETER %qs at %L doesn't match a later IMPLICIT type"
 msgstr ""
 
-#: fortran/resolve.cc:17126
+#: fortran/resolve.cc:17899
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible derived type in PARAMETER at %L"
 msgstr ""
 
-#: fortran/resolve.cc:17134
+#: fortran/resolve.cc:17907
 #, gcc-internal-format
 msgid "CLASS variable %qs at %L cannot have the PARAMETER attribute"
 msgstr ""
 
-#: fortran/resolve.cc:17186
+#: fortran/resolve.cc:17929
+#, gcc-internal-format, gfc-internal-format
+msgid "Expecting constant expression near %L"
+msgstr ""
+
+#: fortran/resolve.cc:17980
 #, gcc-internal-format
 msgid ""
 "Entity %qs at %L has a deferred LEN parameter %qs and requires either the "
 "POINTER or ALLOCATABLE attribute"
 msgstr ""
 
-#: fortran/resolve.cc:17198
+#: fortran/resolve.cc:17992
 #, gcc-internal-format
 msgid ""
 "The AUTOMATIC object %qs at %L must not have the SAVE attribute or be a "
 "variable declared in the main program, a module or a submodule(F08/C513)"
 msgstr ""
 
-#: fortran/resolve.cc:17205
+#: fortran/resolve.cc:17999
 #, gcc-internal-format
 msgid ""
 "The object %qs at %L with ASSUMED type parameters must be a dummy or a "
 "SELECT TYPE selector(F08/4.2)"
 msgstr ""
 
-#: fortran/resolve.cc:17264
+#: fortran/resolve.cc:18058
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Sorry, allocatable/pointer components in polymorphic (CLASS) type coarrays "
 "at %L are unsupported"
 msgstr ""
 
-#: fortran/resolve.cc:17277
+#: fortran/resolve.cc:18071
 #, gcc-internal-format
 msgid ""
 "%<omp_all_memory%>, declared at %L, may only be used in the OpenMP DEPEND "
 "clause"
 msgstr ""
 
-#: fortran/resolve.cc:17342
+#: fortran/resolve.cc:18136
 #, gcc-internal-format, gfc-internal-format
 msgid "PROTECTED attribute conflicts with EXTERNAL attribute at %L"
 msgstr ""
 
-#: fortran/resolve.cc:17345
+#: fortran/resolve.cc:18139
 #, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE attribute conflicts with PROTECTED attribute at %L"
 msgstr ""
 
-#: fortran/resolve.cc:17451
+#: fortran/resolve.cc:18246
 #, gcc-internal-format
 msgid ""
 "%qs at %L has the CONTIGUOUS attribute but is not an array pointer or an "
 "assumed-shape or assumed-rank array"
 msgstr ""
 
-#: fortran/resolve.cc:17472
+#: fortran/resolve.cc:18267
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad specification for assumed size array at %L"
 msgstr ""
 
-#: fortran/resolve.cc:17486
+#: fortran/resolve.cc:18281
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed size array at %L must be a dummy argument"
 msgstr ""
 
-#: fortran/resolve.cc:17489
+#: fortran/resolve.cc:18284
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed shape array at %L must be a dummy argument"
 msgstr ""
 
-#: fortran/resolve.cc:17501
+#: fortran/resolve.cc:18296
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank array at %L must be a dummy argument"
 msgstr ""
 
-#: fortran/resolve.cc:17508
+#: fortran/resolve.cc:18303
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Assumed-rank array at %L may not have the VALUE or CODIMENSION attribute"
 msgstr ""
 
-#: fortran/resolve.cc:17521
+#: fortran/resolve.cc:18316
 #, gcc-internal-format, gfc-internal-format
 msgid "Symbol at %L is not a DUMMY variable"
 msgstr ""
 
-#: fortran/resolve.cc:17527
+#: fortran/resolve.cc:18322
 #, gcc-internal-format
 msgid ""
 "%qs at %L cannot have the VALUE attribute because it is not a dummy argument"
 msgstr ""
 
-#: fortran/resolve.cc:17537
+#: fortran/resolve.cc:18332
 #, gcc-internal-format
 msgid ""
 "Character dummy variable %qs at %L with VALUE attribute must have constant "
 "length"
 msgstr ""
 
-#: fortran/resolve.cc:17546
+#: fortran/resolve.cc:18341
 #, gcc-internal-format
 msgid ""
 "C interoperable character dummy variable %qs at %L with VALUE attribute must "
 "have length one"
 msgstr ""
 
-#: fortran/resolve.cc:17559 fortran/resolve.cc:17736
+#: fortran/resolve.cc:18354 fortran/resolve.cc:18531
 #, gcc-internal-format
 msgid "The derived type %qs at %L is of type %qs, which has not been defined"
 msgstr ""
 
-#: fortran/resolve.cc:17573
+#: fortran/resolve.cc:18368
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable %s at %L with NO_ARG_CHECK attribute shall be a dummy argument"
 msgstr ""
 
-#: fortran/resolve.cc:17582
+#: fortran/resolve.cc:18377
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable %s at %L with NO_ARG_CHECK attribute shall be of type TYPE(*) or of "
 "an numeric intrinsic type"
 msgstr ""
 
-#: fortran/resolve.cc:17591
+#: fortran/resolve.cc:18386
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable %s at %L with NO_ARG_CHECK attribute may not have the ALLOCATABLE, "
 "CODIMENSION, POINTER or VALUE attribute"
 msgstr ""
 
-#: fortran/resolve.cc:17599
+#: fortran/resolve.cc:18394
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable %s at %L with NO_ARG_CHECK attribute may not have the INTENT(OUT) "
 "attribute"
 msgstr ""
 
-#: fortran/resolve.cc:17606
+#: fortran/resolve.cc:18401
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable %s at %L with NO_ARG_CHECK attribute shall either be a scalar or an "
 "assumed-size array"
 msgstr ""
 
-#: fortran/resolve.cc:17626
+#: fortran/resolve.cc:18421
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed type of variable %s at %L is only permitted for dummy variables"
 msgstr ""
 
-#: fortran/resolve.cc:17633
+#: fortran/resolve.cc:18428
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Assumed-type variable %s at %L may not have the ALLOCATABLE, CODIMENSION, "
 "POINTER or VALUE attribute"
 msgstr ""
 
-#: fortran/resolve.cc:17640
+#: fortran/resolve.cc:18435
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L may not have the INTENT(OUT) attribute"
 msgstr ""
 
-#: fortran/resolve.cc:17647
+#: fortran/resolve.cc:18442
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L shall not be an explicit-shape array"
 msgstr ""
 
-#: fortran/resolve.cc:17673
+#: fortran/resolve.cc:18468
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L cannot be BIND(C) because it is neither a COMMON block "
 "nor declared at the module level scope"
 msgstr ""
 
-#: fortran/resolve.cc:17683
+#: fortran/resolve.cc:18478
 #, gcc-internal-format
 msgid "BIND(C) Variable %qs at %L must have length one"
 msgstr ""
 
-#: fortran/resolve.cc:17762
+#: fortran/resolve.cc:18557
 #, gcc-internal-format
 msgid "PUBLIC %s %qs at %L of PRIVATE derived type %qs"
 msgstr ""
 
-#: fortran/resolve.cc:17777
+#: fortran/resolve.cc:18572
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable %s at %L of type LOCK_TYPE or with subcomponent of type LOCK_TYPE "
 "must be a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:17790
+#: fortran/resolve.cc:18585
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable %s at %L of type EVENT_TYPE or with subcomponent of type EVENT_TYPE "
 "must be a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:17808
+#: fortran/resolve.cc:18603
 #, gcc-internal-format
 msgid ""
 "The INTENT(OUT) dummy argument %qs at %L is ASSUMED SIZE and so cannot have "
 "a default initializer"
 msgstr ""
 
-#: fortran/resolve.cc:17820
+#: fortran/resolve.cc:18615
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L of LOCK_TYPE shall not be INTENT(OUT)"
 msgstr ""
 
-#: fortran/resolve.cc:17829
+#: fortran/resolve.cc:18624
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L of EVENT_TYPE shall not be INTENT(OUT)"
 msgstr ""
 
-#: fortran/resolve.cc:17842
+#: fortran/resolve.cc:18637
 #, gcc-internal-format
 msgid ""
 "Function result %qs at %L shall not be a coarray or have a coarray component"
 msgstr ""
 
-#: fortran/resolve.cc:17851
+#: fortran/resolve.cc:18646
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:17864
+#: fortran/resolve.cc:18659
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L with coarray component shall be a nonpointer, "
 "nonallocatable scalar, which is not a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:17880
+#: fortran/resolve.cc:18675
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L is a coarray and is not ALLOCATABLE, SAVE nor a dummy "
 "argument"
 msgstr ""
 
-#: fortran/resolve.cc:17888
+#: fortran/resolve.cc:18683
 #, gcc-internal-format
 msgid ""
 "Coarray variable %qs at %L shall not have codimensions with deferred shape "
 "without allocatable"
 msgstr ""
 
-#: fortran/resolve.cc:17896
+#: fortran/resolve.cc:18691
 #, gcc-internal-format
 msgid "Allocatable coarray variable %qs at %L must have deferred shape"
 msgstr ""
 
-#: fortran/resolve.cc:17909
+#: fortran/resolve.cc:18704
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L is INTENT(OUT) and can thus not be an allocatable coarray "
 "or have coarray components"
 msgstr ""
 
-#: fortran/resolve.cc:17918
+#: fortran/resolve.cc:18713
 #, gcc-internal-format
 msgid "Coarray dummy variable %qs at %L not allowed in BIND(C) procedure %qs"
 msgstr ""
 
-#: fortran/resolve.cc:17934
+#: fortran/resolve.cc:18729
 #, gcc-internal-format
 msgid ""
 "LOGICAL dummy argument %qs at %L with non-C_Bool kind in BIND(C) procedure "
 "%qs"
 msgstr ""
 
-#: fortran/resolve.cc:17940
+#: fortran/resolve.cc:18735
 #, gcc-internal-format
 msgid ""
 "LOGICAL result variable %qs at %L with non-C_Bool kind in BIND(C) procedure "
 "%qs"
 msgstr ""
 
-#: fortran/resolve.cc:17965
+#: fortran/resolve.cc:18760
 #, gcc-internal-format
 msgid "Namelist %qs cannot be an argument to subroutine or function at %L"
 msgstr ""
 
-#: fortran/resolve.cc:18025
+#: fortran/resolve.cc:18822
 #, gcc-internal-format, gfc-internal-format
 msgid "Threadprivate at %L isn't SAVEd"
 msgstr ""
 
-#: fortran/resolve.cc:18037
+#: fortran/resolve.cc:18824
+#, gcc-internal-format
+msgid "OpenMP groupprivate variable %qs at %L must have the SAVE attribute"
+msgstr ""
+
+#: fortran/resolve.cc:18829
+#, gcc-internal-format
+msgid "!$OMP GROUPPRIVATE variable %qs at %L must not have an initializer"
+msgstr ""
+
+#: fortran/resolve.cc:18845
 #, gcc-internal-format
 msgid "!$OMP DECLARE TARGET variable %qs at %L isn't SAVEd"
 msgstr ""
 
-#: fortran/resolve.cc:18148
+#: fortran/resolve.cc:18963
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting definable entity near %L"
 msgstr ""
 
-#: fortran/resolve.cc:18156
+#: fortran/resolve.cc:18971
 #, gcc-internal-format
 msgid "BLOCK DATA element %qs at %L must be in COMMON"
 msgstr ""
 
-#: fortran/resolve.cc:18163
+#: fortran/resolve.cc:18978
 #, gcc-internal-format
 msgid "DATA array %qs at %L must be specified in a previous declaration"
 msgstr ""
 
-#: fortran/resolve.cc:18170
+#: fortran/resolve.cc:18985
 #, gcc-internal-format
 msgid "DATA element %qs at %L cannot have a coindex"
 msgstr ""
 
-#: fortran/resolve.cc:18186
+#: fortran/resolve.cc:19001
 #, gcc-internal-format
 msgid "DATA element %qs at %L is a pointer and so must be a full array"
 msgstr ""
 
-#: fortran/resolve.cc:18193
+#: fortran/resolve.cc:19008
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "DATA object near %L has the pointer attribute and the corresponding DATA "
 "value is not a valid initial-data-target"
 msgstr ""
 
-#: fortran/resolve.cc:18202
+#: fortran/resolve.cc:19017
 #, gcc-internal-format
 msgid "DATA element %qs at %L cannot have the ALLOCATABLE attribute"
 msgstr ""
 
-#: fortran/resolve.cc:18264
+#: fortran/resolve.cc:19079
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonconstant array section at %L in DATA statement"
 msgstr ""
 
-#: fortran/resolve.cc:18277
+#: fortran/resolve.cc:19092
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %L has more variables than values"
 msgstr ""
 
-#: fortran/resolve.cc:18353
+#: fortran/resolve.cc:19168
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-constant character length at %L in DATA statement"
 msgstr ""
 
-#: fortran/resolve.cc:18381
+#: fortran/resolve.cc:19196
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "start of implied-do loop at %L could not be simplified to a constant value"
 msgstr ""
 
-#: fortran/resolve.cc:18389
+#: fortran/resolve.cc:19204
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "end of implied-do loop at %L could not be simplified to a constant value"
 msgstr ""
 
-#: fortran/resolve.cc:18397
+#: fortran/resolve.cc:19212
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "step of implied-do loop at %L could not be simplified to a constant value"
 msgstr ""
 
-#: fortran/resolve.cc:18404
+#: fortran/resolve.cc:19219
 #, gcc-internal-format, gfc-internal-format
 msgid "step of implied-do loop at %L shall not be zero"
 msgstr ""
 
-#: fortran/resolve.cc:18529
+#: fortran/resolve.cc:19344
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %L has more values than variables"
 msgstr ""
 
-#: fortran/resolve.cc:18695
+#: fortran/resolve.cc:19521
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d at %L defined but not used"
 msgstr ""
 
-#: fortran/resolve.cc:18701
+#: fortran/resolve.cc:19527
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d at %L defined but cannot be used"
 msgstr ""
 
-#: fortran/resolve.cc:18785
+#: fortran/resolve.cc:19611
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs at %L must have SEQUENCE attribute to be an "
 "EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.cc:18794
+#: fortran/resolve.cc:19620
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs at %L cannot have ALLOCATABLE components to be an "
 "EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.cc:18802
+#: fortran/resolve.cc:19628
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs at %L with default initialization cannot be in "
 "EQUIVALENCE with a variable in COMMON"
 msgstr ""
 
-#: fortran/resolve.cc:18818
+#: fortran/resolve.cc:19644
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs at %L with pointer component(s) cannot be an "
 "EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.cc:18921
+#: fortran/resolve.cc:19747
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in EQUIVALENCE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:18936
+#: fortran/resolve.cc:19762
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Either all or none of the objects in the EQUIVALENCE set at %L shall have "
 "the PROTECTED attribute"
 msgstr ""
 
-#: fortran/resolve.cc:18961
+#: fortran/resolve.cc:19787
 #, gcc-internal-format
 msgid ""
 "COMMON block member %qs at %L cannot be an EQUIVALENCE object in the pure "
 "procedure %qs"
 msgstr ""
 
-#: fortran/resolve.cc:18970
+#: fortran/resolve.cc:19796
 #, gcc-internal-format
 msgid "Named constant %qs at %L cannot be an EQUIVALENCE object"
 msgstr ""
 
 #. Since the pair of objects is not of the same type, mixed or
 #. non-default sequences can be rejected.
-#: fortran/resolve.cc:19000
+#: fortran/resolve.cc:19826
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Sequence %s with mixed components in EQUIVALENCE statement at %L with "
 "different type objects"
 msgstr ""
 
-#: fortran/resolve.cc:19010
+#: fortran/resolve.cc:19836
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Non-default type object or sequence %s in EQUIVALENCE statement at %L with "
 "objects of different type"
 msgstr ""
 
-#: fortran/resolve.cc:19020
+#: fortran/resolve.cc:19846
 #, gcc-internal-format
 msgid ""
 "Non-CHARACTER object %qs in default CHARACTER EQUIVALENCE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:19027
+#: fortran/resolve.cc:19853
 #, gcc-internal-format
 msgid "Non-NUMERIC object %qs in default NUMERIC EQUIVALENCE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:19045
+#: fortran/resolve.cc:19871
 #, gcc-internal-format
 msgid ""
 "Array %qs at %L with non-constant bounds cannot be an EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.cc:19056
+#: fortran/resolve.cc:19882
 #, gcc-internal-format
 msgid "Structure component %qs at %L cannot be an EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.cc:19067
+#: fortran/resolve.cc:19893
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring at %L has length zero"
 msgstr ""
 
-#: fortran/resolve.cc:19098
+#: fortran/resolve.cc:19924
 #, gcc-internal-format
 msgid "Self reference in character length expression for %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:19165
+#: fortran/resolve.cc:19991
 #, gcc-internal-format
 msgid "PUBLIC function %qs at %L of PRIVATE type %qs"
 msgstr ""
 
-#: fortran/resolve.cc:19178
+#: fortran/resolve.cc:20004
 #, gcc-internal-format
 msgid "ENTRY %qs at %L has no IMPLICIT type"
 msgstr ""
 
-#: fortran/resolve.cc:19200
+#: fortran/resolve.cc:20026
 #, gcc-internal-format
 msgid "User operator procedure %qs at %L must be a FUNCTION"
 msgstr ""
 
-#: fortran/resolve.cc:19210
+#: fortran/resolve.cc:20036
 #, gcc-internal-format
 msgid "User operator procedure %qs at %L cannot be assumed character length"
 msgstr ""
 
-#: fortran/resolve.cc:19218
+#: fortran/resolve.cc:20044
 #, gcc-internal-format
 msgid "User operator procedure %qs at %L must have at least one argument"
 msgstr ""
 
-#: fortran/resolve.cc:19232
+#: fortran/resolve.cc:20058
 #, gcc-internal-format, gfc-internal-format
 msgid "First argument of operator interface at %L cannot be optional"
 msgstr ""
 
-#: fortran/resolve.cc:19250
+#: fortran/resolve.cc:20076
 #, gcc-internal-format, gfc-internal-format
 msgid "Second argument of operator interface at %L cannot be optional"
 msgstr ""
 
-#: fortran/resolve.cc:19257
+#: fortran/resolve.cc:20083
 #, gcc-internal-format, gfc-internal-format
 msgid "Operator interface at %L must have, at most, two arguments"
 msgstr ""
 
-#: fortran/resolve.cc:19339
+#: fortran/resolve.cc:20165
 #, gcc-internal-format
 msgid "Contained procedure %qs at %L of a PURE procedure must also be PURE"
 msgstr ""
 
-#: fortran/scanner.cc:309
+#: fortran/scanner.cc:307
 #, gcc-internal-format
 msgid "Include directory %qs: %s"
 msgstr ""
 
-#: fortran/scanner.cc:313
+#: fortran/scanner.cc:311
 #, gcc-internal-format
 msgid "Nonexistent include directory %qs"
 msgstr ""
 
-#: fortran/scanner.cc:318
+#: fortran/scanner.cc:316
 #, gcc-internal-format
 msgid "%qs is not a directory"
 msgstr ""
 
-#: fortran/scanner.cc:792
+#: fortran/scanner.cc:790
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$ACC at %C starts a commented line as it neither is followed by a space nor "
 "is a continuation line"
 msgstr ""
 
-#: fortran/scanner.cc:832
+#: fortran/scanner.cc:830
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP at %C starts a commented line as it neither is followed by a space nor "
 "is a continuation line"
 msgstr ""
 
-#: fortran/scanner.cc:1011
+#: fortran/scanner.cc:1009
 #, gcc-internal-format
 msgid "Ignoring %<!$omx%> vendor-extension sentinel at %C"
 msgstr ""
 
-#: fortran/scanner.cc:1323 fortran/scanner.cc:1526
+#: fortran/scanner.cc:1321 fortran/scanner.cc:1524
 #, gcc-internal-format, gfc-internal-format
 msgid "Line truncated at %L"
 msgstr ""
 
-#: fortran/scanner.cc:1387 fortran/scanner.cc:1616
+#: fortran/scanner.cc:1385 fortran/scanner.cc:1614
 #, gcc-internal-format, gfc-internal-format
 msgid "Limit of %d continuations exceeded in statement at %C"
 msgstr ""
 
-#: fortran/scanner.cc:1466 fortran/scanner.cc:1575
+#: fortran/scanner.cc:1464 fortran/scanner.cc:1573
 #, gcc-internal-format, gfc-internal-format
 msgid "Wrong OpenACC continuation at %C: expected !$ACC, got !$OMP"
 msgstr ""
 
-#: fortran/scanner.cc:1468 fortran/scanner.cc:1577
+#: fortran/scanner.cc:1466 fortran/scanner.cc:1575
 #, gcc-internal-format, gfc-internal-format
 msgid "Wrong OpenMP continuation at %C: expected !$OMP, got !$ACC"
 msgstr ""
 
-#: fortran/scanner.cc:1481
+#: fortran/scanner.cc:1479
 #, gcc-internal-format
 msgid "Missing %<&%> in continued character constant at %C"
 msgstr ""
 
-#: fortran/scanner.cc:1767
+#: fortran/scanner.cc:1765
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonconforming tab character at %C"
 msgstr ""
 
-#: fortran/scanner.cc:1778
+#: fortran/scanner.cc:1776
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid character 0x%s at %C"
 msgstr ""
 
-#: fortran/scanner.cc:1867 fortran/scanner.cc:1870
+#: fortran/scanner.cc:1865 fortran/scanner.cc:1868
 #, gcc-internal-format
 msgid "%<&%> not allowed by itself in line %d"
 msgstr ""
 
-#: fortran/scanner.cc:1960
+#: fortran/scanner.cc:1958
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonconforming tab character in column %d of line %d"
 msgstr ""
 
-#: fortran/scanner.cc:2189
+#: fortran/scanner.cc:2187
 #, gcc-internal-format
 msgid "file %qs left but not entered"
 msgstr ""
 
-#: fortran/scanner.cc:2231
+#: fortran/scanner.cc:2229
 #, gcc-internal-format
 msgid "Illegal preprocessor directive"
 msgstr ""
 
-#: fortran/scanner.cc:2554
+#: fortran/scanner.cc:2552
 #, gcc-internal-format
 msgid "File %qs is being included recursively"
 msgstr ""
 
-#: fortran/scanner.cc:2566
+#: fortran/scanner.cc:2564
 #, gcc-internal-format
 msgid "Cannot open file %qs"
 msgstr ""
 
-#: fortran/scanner.cc:2576
+#: fortran/scanner.cc:2574
 #, gcc-internal-format
 msgid "Cannot open included file %qs"
 msgstr ""
 
-#: fortran/scanner.cc:2578
+#: fortran/scanner.cc:2576
 #, gcc-internal-format
 msgid "Cannot open pre-included file %qs"
 msgstr ""
 
-#: fortran/scanner.cc:2586 fortran/scanner.cc:2588
+#: fortran/scanner.cc:2584 fortran/scanner.cc:2586
 #, gcc-internal-format
 msgid "Included file %qs is not a regular file"
 msgstr ""
@@ -88933,292 +93206,309 @@ msgstr ""
 
 #: fortran/simplify.cc:888
 #, gcc-internal-format, gfc-internal-format
-msgid "Argument of ACOS at %L must be between -1 and 1"
+msgid "Argument of ACOS at %L must be within the closed interval [-1, 1]"
 msgstr ""
 
-#: fortran/simplify.cc:902
+#: fortran/simplify.cc:903
 #, gcc-internal-format
 msgid "in gfc_simplify_acos(): Bad type"
 msgstr ""
 
-#: fortran/simplify.cc:921
+#: fortran/simplify.cc:922
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of ACOSH at %L must not be less than 1"
 msgstr ""
 
-#: fortran/simplify.cc:936
+#: fortran/simplify.cc:937
 #, gcc-internal-format
 msgid "in gfc_simplify_acosh(): Bad type"
 msgstr ""
 
-#: fortran/simplify.cc:1165
+#: fortran/simplify.cc:1166
 #, gcc-internal-format, gfc-internal-format
-msgid "Argument of ASIN at %L must be between -1 and 1"
+msgid "Argument of ASIN at %L must be within the closed interval [-1, 1]"
 msgstr ""
 
-#: fortran/simplify.cc:1179
+#: fortran/simplify.cc:1181
 #, gcc-internal-format
 msgid "in gfc_simplify_asin(): Bad type"
 msgstr ""
 
-#: fortran/simplify.cc:1214
+#: fortran/simplify.cc:1219
 #, gcc-internal-format, gfc-internal-format
-msgid "Argument of ACOSD at %L must be between -1 and 1"
+msgid "Argument of ACOSD at %L must be within the closed interval [-1, 1]"
 msgstr ""
 
-#: fortran/simplify.cc:1240
+#: fortran/simplify.cc:1250
 #, gcc-internal-format, gfc-internal-format
-msgid "Argument of ASIND at %L must be between -1 and 1"
+msgid "Argument of ASIND at %L must be within the closed interval [-1, 1]"
 msgstr ""
 
-#: fortran/simplify.cc:1292
+#: fortran/simplify.cc:1310
 #, gcc-internal-format
 msgid "in gfc_simplify_asinh(): Bad type"
 msgstr ""
 
-#: fortran/simplify.cc:1320
+#: fortran/simplify.cc:1338
 #, gcc-internal-format
 msgid "in gfc_simplify_atan(): Bad type"
 msgstr ""
 
-#: fortran/simplify.cc:1341
+#: fortran/simplify.cc:1359
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of ATANH at %L must be inside the range -1 to 1"
 msgstr ""
 
-#: fortran/simplify.cc:1355
+#: fortran/simplify.cc:1373
 #, gcc-internal-format
 msgid "in gfc_simplify_atanh(): Bad type"
 msgstr ""
 
-#: fortran/simplify.cc:1372
+#: fortran/simplify.cc:1390
 #, gcc-internal-format, gfc-internal-format
 msgid ""
-"If first argument of ATAN2 at %L is zero, then the second argument must not "
-"be zero"
+"If the first argument of ATAN2 at %L is zero, then the second argument must "
+"not be zero"
 msgstr ""
 
-#: fortran/simplify.cc:1464
+#: fortran/simplify.cc:1482
 #, gcc-internal-format, gfc-internal-format
 msgid "Result of BESSEL_YN is -INF at %L"
 msgstr ""
 
-#: fortran/simplify.cc:1864
+#: fortran/simplify.cc:1882
 #, gcc-internal-format
 msgid "gfc_simplify_dcmplx(): Bad type (x)"
 msgstr ""
 
-#: fortran/simplify.cc:1884
+#: fortran/simplify.cc:1902
 #, gcc-internal-format
 msgid "gfc_simplify_dcmplx(): Bad type (y)"
 msgstr ""
 
-#: fortran/simplify.cc:1951
+#: fortran/simplify.cc:1969
 #, gcc-internal-format, gfc-internal-format
 msgid ""
-"If first argument of ATAN2D at %L is zero, then the second argument must not "
-"be zero"
+"If the first argument of ATAN2D at %L is zero, then the second argument must "
+"not be zero"
 msgstr ""
 
-#: fortran/simplify.cc:1986
+#: fortran/simplify.cc:2009
 #, gcc-internal-format
 msgid "in gfc_simplify_cos(): Bad type"
 msgstr ""
 
-#: fortran/simplify.cc:2458
+#: fortran/simplify.cc:2169
+#, gcc-internal-format, gfc-internal-format
+msgid "Argument of ACOSPI at %L must be within the closed interval [-1, 1]"
+msgstr ""
+
+#: fortran/simplify.cc:2201
+#, gcc-internal-format, gfc-internal-format
+msgid "Argument of ASINPI at %L must be within the closed interval [-1, 1]"
+msgstr ""
+
+#: fortran/simplify.cc:2256
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"If the first argument of ATAN2PI at %L is zero, then the second argument "
+"must not be zero"
+msgstr ""
+
+#: fortran/simplify.cc:2745
 #, gcc-internal-format
 msgid "gfc_simplify_dim(): Bad type"
 msgstr ""
 
-#: fortran/simplify.cc:3049
+#: fortran/simplify.cc:3336
 #, gcc-internal-format
 msgid "in gfc_simplify_exp(): Bad type"
 msgstr ""
 
-#: fortran/simplify.cc:3269
+#: fortran/simplify.cc:3556
 #, gcc-internal-format
 msgid "gfc_simplify_floor(): Bad kind"
 msgstr ""
 
-#: fortran/simplify.cc:3386
+#: fortran/simplify.cc:3673
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of IACHAR at %L must be of length one"
 msgstr ""
 
-#: fortran/simplify.cc:3394
+#: fortran/simplify.cc:3681
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of IACHAR function at %L outside of range 0..127"
 msgstr ""
 
-#: fortran/simplify.cc:3555
+#: fortran/simplify.cc:3842
 #, gcc-internal-format, gfc-internal-format
 msgid "Sum of second and third arguments of IBITS exceeds bit size at %L"
 msgstr ""
 
-#: fortran/simplify.cc:3581
+#: fortran/simplify.cc:3868
 #, gcc-internal-format
 msgid "IBITS: Bad bit"
 msgstr ""
 
-#: fortran/simplify.cc:3648
+#: fortran/simplify.cc:3935
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of ICHAR at %L must be of length one"
 msgstr ""
 
 #. Left shift, as in SHIFTL.
-#: fortran/simplify.cc:4009 fortran/simplify.cc:4017
+#: fortran/simplify.cc:4296 fortran/simplify.cc:4304
 #, gcc-internal-format, gfc-internal-format
 msgid "Second argument of %s is negative at %L"
 msgstr ""
 
-#: fortran/simplify.cc:4029
+#: fortran/simplify.cc:4316
 #, gcc-internal-format, gfc-internal-format
 msgid "Magnitude of second argument of %s exceeds bit size at %L"
 msgstr ""
 
-#: fortran/simplify.cc:4161
+#: fortran/simplify.cc:4448
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Magnitude of second argument of ISHFTC exceeds BIT_SIZE of first argument at "
 "%C"
 msgstr ""
 
-#: fortran/simplify.cc:4164
+#: fortran/simplify.cc:4451
 #, gcc-internal-format, gfc-internal-format
 msgid "Absolute value of SHIFT shall be less than or equal to SIZE at %C"
 msgstr ""
 
-#: fortran/simplify.cc:4511 fortran/simplify.cc:4644
+#: fortran/simplify.cc:4798 fortran/simplify.cc:4931
 #, gcc-internal-format, gfc-internal-format
 msgid "DIM argument at %L is out of bounds"
 msgstr ""
 
-#: fortran/simplify.cc:4977
+#: fortran/simplify.cc:5279
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of LOG at %L cannot be less than or equal to zero"
 msgstr ""
 
-#: fortran/simplify.cc:4990
+#: fortran/simplify.cc:5292
 #, gcc-internal-format, gfc-internal-format
 msgid "Complex argument of LOG at %L cannot be zero"
 msgstr ""
 
-#: fortran/simplify.cc:5001
+#: fortran/simplify.cc:5303
 #, gcc-internal-format
 msgid "gfc_simplify_log: bad type"
 msgstr ""
 
-#: fortran/simplify.cc:5018
+#: fortran/simplify.cc:5320
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of LOG10 at %L cannot be less than or equal to zero"
 msgstr ""
 
-#: fortran/simplify.cc:5450
+#: fortran/simplify.cc:5752
 #, gcc-internal-format
 msgid "simplify_min_max(): Bad type in arglist"
 msgstr ""
 
-#: fortran/simplify.cc:6373 fortran/simplify.cc:6381
+#: fortran/simplify.cc:6675 fortran/simplify.cc:6683
 #, gcc-internal-format
 msgid "Argument %qs of MOD at %L shall not be zero"
 msgstr ""
 
-#: fortran/simplify.cc:6387
+#: fortran/simplify.cc:6689
 #, gcc-internal-format
 msgid "gfc_simplify_mod(): Bad arguments"
 msgstr ""
 
-#: fortran/simplify.cc:6426 fortran/simplify.cc:6434
+#: fortran/simplify.cc:6728 fortran/simplify.cc:6736
 #, gcc-internal-format
 msgid "Argument %qs of MODULO at %L shall not be zero"
 msgstr ""
 
-#: fortran/simplify.cc:6440
+#: fortran/simplify.cc:6742
 #, gcc-internal-format
 msgid "gfc_simplify_modulo(): Bad arguments"
 msgstr ""
 
-#: fortran/simplify.cc:6512
+#: fortran/simplify.cc:6814
 #, gcc-internal-format, gfc-internal-format
 msgid "Result of NEAREST is NaN at %L"
 msgstr ""
 
-#: fortran/simplify.cc:7299
+#: fortran/simplify.cc:7601
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument NCOPIES of REPEAT intrinsic is negative at %L"
 msgstr ""
 
-#: fortran/simplify.cc:7355
+#: fortran/simplify.cc:7657
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument NCOPIES of REPEAT intrinsic is too large at %L"
 msgstr ""
 
-#: fortran/simplify.cc:7392
+#: fortran/simplify.cc:7694
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Evaluation of string longer than 2**28 at %L deferred to runtime, expect bugs"
 msgstr ""
 
-#: fortran/simplify.cc:7450
+#: fortran/simplify.cc:7752
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The SHAPE array for the RESHAPE intrinsic at %L has a negative value %d for "
 "dimension %d"
 msgstr ""
 
-#: fortran/simplify.cc:7475
+#: fortran/simplify.cc:7777
 #, gcc-internal-format, gfc-internal-format
 msgid "Shapes of ORDER at %L and SHAPE at %L are different"
 msgstr ""
 
-#: fortran/simplify.cc:7489
+#: fortran/simplify.cc:7791
 #, gcc-internal-format, gfc-internal-format
 msgid "Sizes of ORDER at %L and SHAPE at %L are different"
 msgstr ""
 
-#: fortran/simplify.cc:7504
+#: fortran/simplify.cc:7806
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Element with a value of %d in ORDER at %L must be in the range [1, ..., %d] "
 "for the RESHAPE intrinsic near %L"
 msgstr ""
 
-#: fortran/simplify.cc:7515
+#: fortran/simplify.cc:7817
 #, gcc-internal-format, gfc-internal-format
 msgid "ORDER at %L is not a permutation of the size of SHAPE at %L"
 msgstr ""
 
-#: fortran/simplify.cc:7577
+#: fortran/simplify.cc:7879
 #, gcc-internal-format, gfc-internal-format
 msgid "Reshaped array too large at %C"
 msgstr ""
 
-#: fortran/simplify.cc:7698
+#: fortran/simplify.cc:8000
 #, gcc-internal-format, gfc-internal-format
 msgid "Result of SCALE overflows its kind at %L"
 msgstr ""
 
-#: fortran/simplify.cc:8218
+#: fortran/simplify.cc:8520
 #, gcc-internal-format, gfc-internal-format
 msgid "DIM argument (%d) to intrinsic SIZE at %L out of range (1:%d)"
 msgstr ""
 
-#: fortran/simplify.cc:8347
+#: fortran/simplify.cc:8649
 #, gcc-internal-format
 msgid "Bad type in gfc_simplify_sign"
 msgstr ""
 
-#: fortran/simplify.cc:8376
+#: fortran/simplify.cc:8678
 #, gcc-internal-format
 msgid "in gfc_simplify_sin(): Bad type"
 msgstr ""
 
-#: fortran/simplify.cc:8514 fortran/simplify.cc:8797
+#: fortran/simplify.cc:8816 fortran/simplify.cc:9099
 #, gcc-internal-format
 msgid "Failure getting length of a constant array."
 msgstr ""
 
-#: fortran/simplify.cc:8524
+#: fortran/simplify.cc:8826
 #, gcc-internal-format
 msgid ""
 "The number of elements (%d) in the array constructor at %L requires an "
@@ -89226,42 +93516,42 @@ msgid ""
 "option."
 msgstr ""
 
-#: fortran/simplify.cc:8591
+#: fortran/simplify.cc:8893
 #, gcc-internal-format, gfc-internal-format
 msgid "Simplification of SPREAD at %C not yet implemented"
 msgstr ""
 
-#: fortran/simplify.cc:8615
+#: fortran/simplify.cc:8917
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of SQRT at %L has a negative value"
 msgstr ""
 
-#: fortran/simplify.cc:8631
+#: fortran/simplify.cc:8933
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid argument of SQRT at %L"
 msgstr ""
 
-#: fortran/simplify.cc:8979
+#: fortran/simplify.cc:9281
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Out of bounds in IMAGE_INDEX at %L for dimension %d, SUB has %ld and COARRAY "
 "lower bound is %ld)"
 msgstr ""
 
-#: fortran/simplify.cc:9002
+#: fortran/simplify.cc:9304
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Out of bounds in IMAGE_INDEX at %L for dimension %d, SUB has %ld and COARRAY "
 "upper bound is %ld)"
 msgstr ""
 
-#: fortran/simplify.cc:9544
+#: fortran/simplify.cc:9846
 #, gcc-internal-format
 msgid ""
 "Character %qs in string at %L cannot be converted into character kind %d"
 msgstr ""
 
-#: fortran/st.cc:314
+#: fortran/st.cc:318
 #, gcc-internal-format
 msgid "gfc_free_statement(): Bad statement"
 msgstr ""
@@ -89334,132 +93624,132 @@ msgstr ""
 msgid "Function result %qs at %L has no IMPLICIT type"
 msgstr ""
 
-#: fortran/symbol.cc:418 fortran/symbol.cc:923 fortran/symbol.cc:1802
+#: fortran/symbol.cc:418 fortran/symbol.cc:945 fortran/symbol.cc:1859
 #, gcc-internal-format, gfc-internal-format
 msgid "%s attribute conflicts with %s attribute at %L"
 msgstr ""
 
-#: fortran/symbol.cc:424 fortran/symbol.cc:926
+#: fortran/symbol.cc:424 fortran/symbol.cc:948
 #, gcc-internal-format
 msgid "%s attribute conflicts with %s attribute in %qs at %L"
 msgstr ""
 
-#: fortran/symbol.cc:506
+#: fortran/symbol.cc:508
 #, gcc-internal-format, gfc-internal-format
 msgid "%s attribute not allowed in BLOCK DATA program unit at %L"
 msgstr ""
 
-#: fortran/symbol.cc:531
+#: fortran/symbol.cc:533
 #, gcc-internal-format, gfc-internal-format
 msgid "Namelist group name at %L cannot have the SAVE attribute"
 msgstr ""
 
-#: fortran/symbol.cc:550
+#: fortran/symbol.cc:552
 #, gcc-internal-format
 msgid "internal procedure %qs at %L conflicts with DUMMY argument"
 msgstr ""
 
-#: fortran/symbol.cc:583
+#: fortran/symbol.cc:588
 #, gcc-internal-format, gfc-internal-format
 msgid "Procedure pointer at %C"
 msgstr ""
 
-#: fortran/symbol.cc:795
+#: fortran/symbol.cc:809
 #, gcc-internal-format, gfc-internal-format
 msgid "%s attribute applied to %s %s at %L"
 msgstr ""
 
-#: fortran/symbol.cc:802
+#: fortran/symbol.cc:816
 #, gcc-internal-format, gfc-internal-format
 msgid "BIND(C) applied to %s %s at %L"
 msgstr ""
 
-#: fortran/symbol.cc:968
+#: fortran/symbol.cc:990
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot change attributes of USE-associated symbol at %L"
 msgstr ""
 
-#: fortran/symbol.cc:971
+#: fortran/symbol.cc:993
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot change attributes of USE-associated symbol %s at %L"
 msgstr ""
 
-#: fortran/symbol.cc:987
+#: fortran/symbol.cc:1009
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate %s attribute specified at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1029
+#: fortran/symbol.cc:1051
 #, gcc-internal-format, gfc-internal-format
 msgid "ALLOCATABLE specified outside of INTERFACE body at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1046
+#: fortran/symbol.cc:1068
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate AUTOMATIC attribute specified at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1070
+#: fortran/symbol.cc:1092
 #, gcc-internal-format
 msgid "CODIMENSION specified for %qs outside its INTERFACE body at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1096
+#: fortran/symbol.cc:1118
 #, gcc-internal-format
 msgid "DIMENSION specified for %qs outside its INTERFACE body at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1259
+#: fortran/symbol.cc:1281
 #, gcc-internal-format, gfc-internal-format
 msgid "Cray Pointee at %L appears in multiple pointer() statements"
 msgstr ""
 
-#: fortran/symbol.cc:1278
+#: fortran/symbol.cc:1300
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate PROTECTED attribute specified at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1310
+#: fortran/symbol.cc:1332
 #, gcc-internal-format, gfc-internal-format
 msgid "SAVE attribute at %L cannot be specified in a PURE procedure"
 msgstr ""
 
-#: fortran/symbol.cc:1323
+#: fortran/symbol.cc:1345
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate SAVE attribute specified near %C"
 msgstr ""
 
-#: fortran/symbol.cc:1327
+#: fortran/symbol.cc:1349
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate SAVE attribute specified at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1347
+#: fortran/symbol.cc:1369
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate VALUE attribute specified at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1366
+#: fortran/symbol.cc:1388
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate VOLATILE attribute specified at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1378
+#: fortran/symbol.cc:1400
 #, gcc-internal-format, gfc-internal-format
 msgid "VOLATILE attribute at %L cannot be specified in a PURE procedure"
 msgstr ""
 
-#: fortran/symbol.cc:1399
+#: fortran/symbol.cc:1421
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate ASYNCHRONOUS attribute specified at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1798
+#: fortran/symbol.cc:1855
 #, gcc-internal-format
 msgid "%s attribute of %qs conflicts with %s attribute at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1835
+#: fortran/symbol.cc:1892
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "%s procedure at %L is already declared as %s procedure. \n"
@@ -89468,226 +93758,226 @@ msgid ""
 "kind of executable statement before it. FIXME"
 msgstr ""
 
-#: fortran/symbol.cc:1843
+#: fortran/symbol.cc:1900
 #, gcc-internal-format, gfc-internal-format
 msgid "%s procedure at %L is already declared as %s procedure"
 msgstr ""
 
-#: fortran/symbol.cc:1878
+#: fortran/symbol.cc:1935
 #, gcc-internal-format, gfc-internal-format
 msgid "INTENT (%s) conflicts with INTENT(%s) at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1902
+#: fortran/symbol.cc:1959
 #, gcc-internal-format, gfc-internal-format
 msgid "ACCESS specification at %L was already specified"
 msgstr ""
 
-#: fortran/symbol.cc:1919
+#: fortran/symbol.cc:1976
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate BIND attribute specified at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1926
+#: fortran/symbol.cc:1983
 #, gcc-internal-format, gfc-internal-format
 msgid "BIND(C) at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1942
+#: fortran/symbol.cc:1999
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate EXTENDS attribute specified at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1946
+#: fortran/symbol.cc:2003
 #, gcc-internal-format, gfc-internal-format
 msgid "EXTENDS at %L"
 msgstr ""
 
-#: fortran/symbol.cc:1972
+#: fortran/symbol.cc:2029
 #, gcc-internal-format
 msgid "Symbol %qs at %L already has an explicit interface"
 msgstr ""
 
-#: fortran/symbol.cc:1979
+#: fortran/symbol.cc:2036
 #, gcc-internal-format
 msgid "%qs at %L has attributes specified outside its INTERFACE body"
 msgstr ""
 
-#: fortran/symbol.cc:2017
+#: fortran/symbol.cc:2074
 #, gcc-internal-format
 msgid ""
 "Symbol %qs at %L conflicts with symbol from module %qs, use-associated at %L"
 msgstr ""
 
-#: fortran/symbol.cc:2021 fortran/symbol.cc:2024
+#: fortran/symbol.cc:2078 fortran/symbol.cc:2081
 #, gcc-internal-format
 msgid "Symbol %qs at %L already has basic type of %s"
 msgstr ""
 
-#: fortran/symbol.cc:2031
+#: fortran/symbol.cc:2088
 #, gcc-internal-format
 msgid "Procedure %qs at %L may not have basic type of %s"
 msgstr ""
 
-#: fortran/symbol.cc:2043
+#: fortran/symbol.cc:2100
 #, gcc-internal-format
 msgid "Symbol %qs at %L cannot have a type"
 msgstr ""
 
-#: fortran/symbol.cc:2288
+#: fortran/symbol.cc:2355
 #, gcc-internal-format
 msgid "Component %qs at %C already in the parent type at %L"
 msgstr ""
 
-#: fortran/symbol.cc:2373
+#: fortran/symbol.cc:2440
 #, gcc-internal-format
 msgid "Symbol %qs at %C is ambiguous"
 msgstr ""
 
-#: fortran/symbol.cc:2405
+#: fortran/symbol.cc:2472
 #, gcc-internal-format
 msgid "Derived type %qs at %C is being used before it is defined"
 msgstr ""
 
-#: fortran/symbol.cc:2615
+#: fortran/symbol.cc:2682
 #, gcc-internal-format
 msgid "Component %qs at %C is a PRIVATE component of %qs"
 msgstr ""
 
-#: fortran/symbol.cc:2636
+#: fortran/symbol.cc:2703
 #, gcc-internal-format
 msgid "%qs at %C is not a member of the %qs structure; did you mean %qs?"
 msgstr ""
 
-#: fortran/symbol.cc:2640
+#: fortran/symbol.cc:2707
 #, gcc-internal-format
 msgid "%qs at %C is not a member of the %qs structure"
 msgstr ""
 
-#: fortran/symbol.cc:2816
+#: fortran/symbol.cc:2935
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate statement label %d at %L and %L"
 msgstr ""
 
-#: fortran/symbol.cc:2827
+#: fortran/symbol.cc:2946
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d at %C already referenced as branch target"
 msgstr ""
 
-#: fortran/symbol.cc:2837
+#: fortran/symbol.cc:2956
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d at %C already referenced as a format label"
 msgstr ""
 
-#: fortran/symbol.cc:2844
+#: fortran/symbol.cc:2963
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "DO termination statement which is not END DO or CONTINUE with label %d at %C"
 msgstr ""
 
-#: fortran/symbol.cc:2885
+#: fortran/symbol.cc:3004
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d at %C previously used as a FORMAT label"
 msgstr ""
 
-#: fortran/symbol.cc:2894
+#: fortran/symbol.cc:3013
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d at %C previously used as branch target"
 msgstr ""
 
-#: fortran/symbol.cc:2901
+#: fortran/symbol.cc:3021
 #, gcc-internal-format, gfc-internal-format
 msgid "Shared DO termination label %d at %C"
 msgstr ""
 
-#: fortran/symbol.cc:2905
+#: fortran/symbol.cc:3025
 #, gcc-internal-format, gfc-internal-format
 msgid "Labeled DO statement at %L"
 msgstr ""
 
-#: fortran/symbol.cc:3296
+#: fortran/symbol.cc:3430
 #, gcc-internal-format
 msgid "Name %qs at %C is an ambiguous reference to %qs from module %qs"
 msgstr ""
 
-#: fortran/symbol.cc:3299
+#: fortran/symbol.cc:3433
 #, gcc-internal-format
 msgid ""
 "Name %qs at %C is an ambiguous reference to %qs from current program unit"
 msgstr ""
 
 #. Symbol is from another namespace.
-#: fortran/symbol.cc:3544
+#: fortran/symbol.cc:3678
 #, gcc-internal-format
 msgid "Symbol %qs at %C has already been host associated"
 msgstr ""
 
-#: fortran/symbol.cc:4599
+#: fortran/symbol.cc:4733
 #, gcc-internal-format
 msgid "verify_bind_c_derived_type(): Given symbol is unexpectedly NULL"
 msgstr ""
 
-#: fortran/symbol.cc:4612
+#: fortran/symbol.cc:4746
 #, gcc-internal-format
 msgid ""
 "Derived type %qs declared at %L must have the BIND attribute to be C "
 "interoperable"
 msgstr ""
 
-#: fortran/symbol.cc:4640
+#: fortran/symbol.cc:4774
 #, gcc-internal-format
 msgid "Derived type %qs with BIND(C) attribute at %L has no components"
 msgstr ""
 
 #. Generally emit warning, but not twice if -pedantic is given.
-#: fortran/symbol.cc:4646
+#: fortran/symbol.cc:4780
 #, gcc-internal-format
 msgid ""
 "Derived type %qs with BIND(C) attribute at %L is empty, and may be "
 "inaccessible by the C companion processor"
 msgstr ""
 
-#: fortran/symbol.cc:4668
+#: fortran/symbol.cc:4802
 #, gcc-internal-format
 msgid ""
 "Component %qs at %L cannot have the POINTER attribute because it is a member "
 "of the BIND(C) derived type %qs at %L"
 msgstr ""
 
-#: fortran/symbol.cc:4678
+#: fortran/symbol.cc:4812
 #, gcc-internal-format
 msgid ""
 "Procedure pointer component %qs at %L cannot be a member of the BIND(C) "
 "derived type %qs at %L"
 msgstr ""
 
-#: fortran/symbol.cc:4689
+#: fortran/symbol.cc:4823
 #, gcc-internal-format
 msgid ""
 "Component %qs at %L cannot have the ALLOCATABLE attribute because it is a "
 "member of the BIND(C) derived type %qs at %L"
 msgstr ""
 
-#: fortran/symbol.cc:4728
+#: fortran/symbol.cc:4862
 #, gcc-internal-format
 msgid ""
 "Component %qs in derived type %qs at %L may not be C interoperable, even "
 "though derived type %qs is BIND(C)"
 msgstr ""
 
-#: fortran/symbol.cc:4738
+#: fortran/symbol.cc:4872
 #, gcc-internal-format
 msgid "Component %qs in derived type %qs at %L may not be C interoperable"
 msgstr ""
 
-#: fortran/symbol.cc:4750
+#: fortran/symbol.cc:4884
 #, gcc-internal-format
 msgid ""
 "Derived type %qs at %L cannot have the SEQUENCE attribute because it is "
 "BIND(C)"
 msgstr ""
 
-#: fortran/symbol.cc:5263 fortran/symbol.cc:5268
+#: fortran/symbol.cc:5397 fortran/symbol.cc:5402
 #, gcc-internal-format
 msgid "Symbol %qs is used before it is typed at %L"
 msgstr ""
@@ -89717,7 +94007,7 @@ msgstr ""
 msgid "Overlapping unequal initializers in EQUIVALENCE at %C"
 msgstr ""
 
-#: fortran/trans-array.cc:2466 fortran/trans-expr.cc:10442
+#: fortran/trans-array.cc:2452 fortran/trans-expr.cc:10593
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The structure constructor at %L has been finalized. This feature was removed "
@@ -89726,19 +94016,19 @@ msgstr ""
 
 #. Problems occur when we get something like
 #. integer :: a(lots) = (/(i, i=1, lots)/)
-#: fortran/trans-array.cc:6838
+#: fortran/trans-array.cc:7083
 #, gcc-internal-format
 msgid ""
 "The number of elements in the array constructor at %L requires an increase "
 "of the allowed %d upper limit. See %<-fmax-array-constructor%> option"
 msgstr ""
 
-#: fortran/trans-array.cc:9244
+#: fortran/trans-array.cc:9503
 #, gcc-internal-format
 msgid "Creating array temporary at %L for argument %qs"
 msgstr ""
 
-#: fortran/trans-array.cc:12704
+#: fortran/trans-array.cc:13266
 #, gcc-internal-format, gfc-internal-format
 msgid "bad expression type during walk (%d)"
 msgstr ""
@@ -89750,82 +94040,97 @@ msgid ""
 "%wu bytes)"
 msgstr ""
 
-#: fortran/trans-common.cc:839
+#: fortran/trans-common.cc:494
+#, gcc-internal-format
+msgid ""
+"Sorry, OMP GROUPPRIVATE not implemented, used by common block %</%s/%> "
+"declared at %L"
+msgstr ""
+
+#. Use 'else if' as groupprivate implies 'local'.
+#: fortran/trans-common.cc:498
+#, gcc-internal-format
+msgid ""
+"Sorry, OMP DECLARE TARGET with LOCAL clause not implemented, used by common "
+"block %</%s/%> declared at %L"
+msgstr ""
+
+#: fortran/trans-common.cc:853
 #, gcc-internal-format
 msgid "get_mpz(): Not an integer constant"
 msgstr ""
 
-#: fortran/trans-common.cc:867
+#: fortran/trans-common.cc:881
 #, gcc-internal-format
 msgid "element_number(): Bad dimension type"
 msgstr ""
 
-#: fortran/trans-common.cc:937
+#: fortran/trans-common.cc:951
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad array reference at %L"
 msgstr ""
 
-#: fortran/trans-common.cc:945
+#: fortran/trans-common.cc:959
 #, gcc-internal-format, gfc-internal-format
 msgid "Illegal reference type at %L as EQUIVALENCE object"
 msgstr ""
 
-#: fortran/trans-common.cc:985
+#: fortran/trans-common.cc:999
 #, gcc-internal-format
 msgid "Inconsistent equivalence rules involving %qs at %L and %qs at %L"
 msgstr ""
 
 #. Aligning this field would misalign a previous field.
-#: fortran/trans-common.cc:1174
+#: fortran/trans-common.cc:1190
 #, gcc-internal-format
 msgid ""
 "The equivalence set for variable %qs declared at %L violates alignment "
 "requirements"
 msgstr ""
 
-#: fortran/trans-common.cc:1222
+#: fortran/trans-common.cc:1238
 #, gcc-internal-format
 msgid "Sorry, !$OMP allocate for COMMON block variable %qs at %L not supported"
 msgstr ""
 
-#: fortran/trans-common.cc:1243
+#: fortran/trans-common.cc:1259
 #, gcc-internal-format
 msgid "Equivalence for %qs does not match ordering of COMMON %qs at %L"
 msgstr ""
 
-#: fortran/trans-common.cc:1258
+#: fortran/trans-common.cc:1274
 #, gcc-internal-format
 msgid ""
 "The equivalence set for %qs cause an invalid extension to COMMON %qs at %L"
 msgstr ""
 
-#: fortran/trans-common.cc:1274
+#: fortran/trans-common.cc:1290
 #, gcc-internal-format
 msgid ""
 "Padding of %d bytes required before %qs in COMMON %qs at %L; reorder "
 "elements or use %<-fno-align-commons%>"
 msgstr ""
 
-#: fortran/trans-common.cc:1280
+#: fortran/trans-common.cc:1296
 #, gcc-internal-format
 msgid ""
 "Padding of %d bytes required before %qs in COMMON at %L; reorder elements or "
 "use %<-fno-align-commons%>"
 msgstr ""
 
-#: fortran/trans-common.cc:1301
+#: fortran/trans-common.cc:1317
 #, gcc-internal-format
 msgid "COMMON %qs at %L does not exist"
 msgstr ""
 
-#: fortran/trans-common.cc:1310
+#: fortran/trans-common.cc:1326
 #, gcc-internal-format
 msgid ""
 "COMMON %qs at %L requires %d bytes of padding; reorder elements or use %<-"
 "fno-align-commons%>"
 msgstr ""
 
-#: fortran/trans-common.cc:1315
+#: fortran/trans-common.cc:1331
 #, gcc-internal-format
 msgid ""
 "COMMON at %L requires %d bytes of padding; reorder elements or use %<-fno-"
@@ -89842,7 +94147,7 @@ msgstr ""
 msgid "non-constant initialization expression at %L"
 msgstr ""
 
-#: fortran/trans-decl.cc:774
+#: fortran/trans-decl.cc:785
 #, gcc-internal-format
 msgid ""
 "Array %qs at %L is larger than limit set by %<-fmax-stack-var-size=%>, moved "
@@ -89855,140 +94160,153 @@ msgid ""
 "SAVE attribute."
 msgstr ""
 
-#: fortran/trans-decl.cc:1905
+#: fortran/trans-decl.cc:1591
+#, gcc-internal-format
+msgid "Sorry, OMP GROUPPRIVATE not implemented, used by %qs declared at %L"
+msgstr ""
+
+#. Use 'else if' as groupprivate implies 'local'.
+#: fortran/trans-decl.cc:1595
+#, gcc-internal-format
+msgid ""
+"Sorry, OMP DECLARE TARGET with LOCAL clause not implemented, used by %qs "
+"declared at %L"
+msgstr ""
+
+#: fortran/trans-decl.cc:1939
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L has no default type"
 msgstr ""
 
-#: fortran/trans-decl.cc:1909
+#: fortran/trans-decl.cc:1943
 #, gcc-internal-format
 msgid "intrinsic variable which isn't a procedure"
 msgstr ""
 
-#: fortran/trans-decl.cc:4699 fortran/trans-decl.cc:8139
+#: fortran/trans-decl.cc:4823 fortran/trans-decl.cc:7990
 #, gcc-internal-format
 msgid "Return value of function %qs at %L not set"
 msgstr ""
 
-#: fortran/trans-decl.cc:5231
+#: fortran/trans-decl.cc:5373
 #, gcc-internal-format
 msgid "Deferred type parameter not yet supported"
 msgstr ""
 
-#: fortran/trans-decl.cc:5543
+#: fortran/trans-decl.cc:5685
 #, gcc-internal-format
 msgid "backend decl for module variable %qs already exists"
 msgstr ""
 
-#: fortran/trans-decl.cc:5556
+#: fortran/trans-decl.cc:5698
 #, gcc-internal-format
 msgid "Unused PRIVATE module variable %qs declared at %L"
 msgstr ""
 
-#: fortran/trans-decl.cc:6242
+#: fortran/trans-decl.cc:6384
 #, gcc-internal-format
 msgid "Symbol %qs at %L has the WEAK attribute but is a dummy argument"
 msgstr ""
 
-#: fortran/trans-decl.cc:6245
+#: fortran/trans-decl.cc:6387
 #, gcc-internal-format
 msgid "Symbol %qs at %L has the WEAK attribute but is a local variable"
 msgstr ""
 
-#: fortran/trans-decl.cc:6260
+#: fortran/trans-decl.cc:6402
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L was declared INTENT(OUT) but was not set"
 msgstr ""
 
-#: fortran/trans-decl.cc:6266
+#: fortran/trans-decl.cc:6408
 #, gcc-internal-format
 msgid ""
 "Derived-type dummy argument %qs at %L was declared INTENT(OUT) but was not "
 "set and does not have a default initializer"
 msgstr ""
 
-#: fortran/trans-decl.cc:6277 fortran/trans-decl.cc:6428
+#: fortran/trans-decl.cc:6419 fortran/trans-decl.cc:6570
 #, gcc-internal-format
 msgid "Unused dummy argument %qs at %L"
 msgstr ""
 
-#: fortran/trans-decl.cc:6293
+#: fortran/trans-decl.cc:6435
 #, gcc-internal-format
 msgid "Unused module variable %qs which has been explicitly imported at %L"
 msgstr ""
 
-#: fortran/trans-decl.cc:6312
+#: fortran/trans-decl.cc:6454
 #, gcc-internal-format
 msgid "Unused variable %qs declared at %L"
 msgstr ""
 
-#: fortran/trans-decl.cc:6361
+#: fortran/trans-decl.cc:6503
 #, gcc-internal-format
 msgid "Unused parameter %qs declared at %L"
 msgstr ""
 
-#: fortran/trans-decl.cc:6365
+#: fortran/trans-decl.cc:6507
 #, gcc-internal-format
 msgid "Unused parameter %qs which has been explicitly imported at %L"
 msgstr ""
 
-#: fortran/trans-decl.cc:6395
+#: fortran/trans-decl.cc:6537
 #, gcc-internal-format
 msgid "Return value %qs of function %qs declared at %L not set"
 msgstr ""
 
-#: fortran/trans-decl.cc:6994
+#: fortran/trans-decl.cc:7136
 #, gcc-internal-format, gfc-internal-format
 msgid "Sorry, !$ACC DECLARE at %L is not allowed in BLOCK construct"
 msgstr ""
 
-#: fortran/trans-decl.cc:7193 fortran/trans-expr.cc:6115
+#: fortran/trans-decl.cc:7335 fortran/trans-expr.cc:6207
 #, gcc-internal-format
 msgid "Unsigned not yet implemented"
 msgstr ""
 
-#: fortran/trans-decl.cc:8311
+#: fortran/trans-decl.cc:8474
 #, gcc-internal-format
 msgid ""
 "Symbol %qs at %L is declared in a BLOCK DATA program unit but is not in a "
 "COMMON block"
 msgstr ""
 
-#: fortran/trans-expr.cc:1211
+#: fortran/trans-expr.cc:1231
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot compute the length of the char array at %L."
 msgstr ""
 
-#: fortran/trans-expr.cc:2041
+#: fortran/trans-expr.cc:2061
 #, gcc-internal-format, gfc-internal-format
 msgid "Code for reallocating the allocatable variable at %L will be added"
 msgstr ""
 
-#: fortran/trans-expr.cc:2367
+#: fortran/trans-expr.cc:2387
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Sorry, coindexed access to an unlimited polymorphic object at %L is not "
 "supported"
 msgstr ""
 
-#: fortran/trans-expr.cc:2376
+#: fortran/trans-expr.cc:2396
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Sorry, coindexed access to an unlimited polymorphic component at %L is not "
 "supported"
 msgstr ""
 
-#: fortran/trans-expr.cc:4277
+#: fortran/trans-expr.cc:4308
 #, gcc-internal-format
 msgid "Unknown intrinsic op"
 msgstr ""
 
-#: fortran/trans-expr.cc:5863
+#: fortran/trans-expr.cc:5958
 #, gcc-internal-format, gfc-internal-format
 msgid "Unknown argument list function at %L"
 msgstr ""
 
-#: fortran/trans-expr.cc:11040
+#: fortran/trans-expr.cc:11200
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "If bounds remapping is specified at %L, the pointer target shall not be NULL"
@@ -89999,28 +94317,28 @@ msgstr ""
 msgid "Intrinsic function %qs (%d) not recognized"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:1899 fortran/trans-intrinsic.cc:2447
-#: fortran/trans-intrinsic.cc:2650
+#: fortran/trans-intrinsic.cc:1899 fortran/trans-intrinsic.cc:2467
+#: fortran/trans-intrinsic.cc:2673
 #, gcc-internal-format
 msgid "%<dim%> argument of %s intrinsic at %L is not a valid dimension index"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12709 fortran/trans-stmt.cc:1164
+#: fortran/trans-intrinsic.cc:12988 fortran/trans-stmt.cc:1234
 #, gcc-internal-format, gfc-internal-format
 msgid "Sorry, the event component of derived type at %L is not yet supported"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12716
+#: fortran/trans-intrinsic.cc:12995
 #, gcc-internal-format, gfc-internal-format
 msgid "The event variable at %L shall not be coindexed"
 msgstr ""
 
-#: fortran/trans-io.cc:2000
+#: fortran/trans-io.cc:2001
 #, gcc-internal-format
 msgid "build_dt: format with namelist"
 msgstr ""
 
-#: fortran/trans-io.cc:2550
+#: fortran/trans-io.cc:2552
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad IO basetype (%d)"
 msgstr ""
@@ -90047,39 +94365,39 @@ msgstr ""
 msgid "Mapping of polymorphic list item %qD is unspecified behavior"
 msgstr ""
 
-#: fortran/trans-openmp.cc:4176
+#: fortran/trans-openmp.cc:4204
 #, gcc-internal-format
 msgid "optional class parameter"
 msgstr ""
 
-#: fortran/trans-openmp.cc:4640
+#: fortran/trans-openmp.cc:4668
 #, gcc-internal-format
 msgid "unhandled expression type"
 msgstr ""
 
-#: fortran/trans-openmp.cc:4949
+#: fortran/trans-openmp.cc:4977
 #, gcc-internal-format
 msgid "unhandled expression"
 msgstr ""
 
-#: fortran/trans-openmp.cc:5072
+#: fortran/trans-openmp.cc:5102
 #, gcc-internal-format
 msgid "%<uses_allocators%> clause with traits and memory spaces"
 msgstr ""
 
-#: fortran/trans-openmp.cc:6050
+#: fortran/trans-openmp.cc:6138
 #, gcc-internal-format
 msgid "%<!$OMP %s%> at %L requires %<-fopenmp-allocators%>"
 msgstr ""
 
-#: fortran/trans-openmp.cc:6053
+#: fortran/trans-openmp.cc:6141
 #, gcc-internal-format
 msgid ""
 "All files that might deallocate such a variable must be compiled with %<-"
 "fopenmp-allocators%>"
 msgstr ""
 
-#: fortran/trans-openmp.cc:6056
+#: fortran/trans-openmp.cc:6144
 #, gcc-internal-format
 msgid ""
 "This includes explicit DEALLOCATE, reallocation on intrinsic assignment, "
@@ -90087,74 +94405,79 @@ msgid ""
 "components allocated with an OpenMP allocator"
 msgstr ""
 
-#: fortran/trans-openmp.cc:6633 fortran/trans-openmp.cc:6653
+#: fortran/trans-openmp.cc:6721 fortran/trans-openmp.cc:6741
 #, gcc-internal-format
 msgid "non-rectangular loop nest with non-constant step for %qs"
 msgstr ""
 
-#: fortran/trans-openmp.cc:6655
+#: fortran/trans-openmp.cc:6743
 #, gcc-internal-format
 msgid "Used here"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9221
+#: fortran/trans-openmp.cc:9311
 #, gcc-internal-format
 msgid "gfc_trans_omp_workshare(): Bad statement code"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9631
+#: fortran/trans-openmp.cc:9721
 #, gcc-internal-format
 msgid "The base name for %<declare variant%> must be specified at %L"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9642
+#: fortran/trans-openmp.cc:9732
 #, gcc-internal-format, gfc-internal-format
 msgid "The base name at %L does not match the name of the current procedure"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9645
+#: fortran/trans-openmp.cc:9735
 #, gcc-internal-format, gfc-internal-format
 msgid "The base name at %L must not be an entry name"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9648
+#: fortran/trans-openmp.cc:9738
 #, gcc-internal-format, gfc-internal-format
 msgid "The base name at %L must not be a generic name"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9651
+#: fortran/trans-openmp.cc:9741
 #, gcc-internal-format, gfc-internal-format
 msgid "The base name at %L must not be a procedure pointer"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9654
+#: fortran/trans-openmp.cc:9744
 #, gcc-internal-format, gfc-internal-format
 msgid "The base procedure at %L must have an explicit interface"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9690
+#: fortran/trans-openmp.cc:9780
 #, gcc-internal-format
-msgid "Cannot find symbol %qs"
+msgid "Cannot find symbol %qs at %L"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9702
+#: fortran/trans-openmp.cc:9793
 #, gcc-internal-format
 msgid "variant %qs at %L is not a function or subroutine"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9744
+#: fortran/trans-openmp.cc:9799
+#, gcc-internal-format
+msgid "variant %qs at %L is the same as base function"
+msgstr ""
+
+#: fortran/trans-openmp.cc:9841
 #, gcc-internal-format
 msgid "variant %qs and base %qs at %L have incompatible types: %s"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9750
+#: fortran/trans-openmp.cc:9847
 #, gcc-internal-format
 msgid ""
 "%<append_args%> clause implies that %qs has %d dummy arguments of integer "
 "type with %<omp_interop_kind%> kind"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9776
+#: fortran/trans-openmp.cc:9873
 #, gcc-internal-format
 msgid ""
 "%qs at %L must be a nonpointer, nonallocatable scalar integer dummy argument "
@@ -90162,104 +94485,104 @@ msgid ""
 "at %L"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9786
+#: fortran/trans-openmp.cc:9883
 #, gcc-internal-format
 msgid ""
 "%qs at %L with OPTIONAL attribute not support when utilized with the "
 "%<append_args%> clause at %L"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9796
+#: fortran/trans-openmp.cc:9893
 #, gcc-internal-format
 msgid ""
 "%qs at %L has %d but requires %d %<omp_interop_kind%> kind dummy arguments "
 "as it is utilized with the %<append_args%> clause at %L"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9811
+#: fortran/trans-openmp.cc:9908
 #, gcc-internal-format
 msgid ""
 "the %qs clause can only be specified if the %<dispatch%> selector of the "
 "construct selector set appears in the %<match%> clause at %L"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9912 fortran/trans-openmp.cc:9951
+#: fortran/trans-openmp.cc:10009 fortran/trans-openmp.cc:10048
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected positive argument index at %L"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9923
+#: fortran/trans-openmp.cc:10020
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument index at %L exceeds number of arguments %d"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9961
+#: fortran/trans-openmp.cc:10058
 #, gcc-internal-format, gfc-internal-format
 msgid "Upper argument index smaller than lower one at %L"
 msgstr ""
 
-#: fortran/trans-openmp.cc:9987
+#: fortran/trans-openmp.cc:10084
 #, gcc-internal-format
 msgid "List item %qs at %L, declared at %L, is not a dummy argument"
 msgstr ""
 
-#: fortran/trans-openmp.cc:10001
+#: fortran/trans-openmp.cc:10098
 #, gcc-internal-format
 msgid ""
 "Argument %qs at %L to list item in %<need_device_ptr%> at %L must be a "
 "scalar of TYPE(C_PTR)"
 msgstr ""
 
-#: fortran/trans-openmp.cc:10008
+#: fortran/trans-openmp.cc:10105
 #, gcc-internal-format
 msgid "Consider using %<need_device_addr%> instead"
 msgstr ""
 
-#: fortran/trans-openmp.cc:10015
+#: fortran/trans-openmp.cc:10112
 #, gcc-internal-format
 msgid ""
 "Argument %qs at %L to list item in %<need_device_addr%> at %L must not have "
 "the VALUE attribute"
 msgstr ""
 
-#: fortran/trans-openmp.cc:10024
+#: fortran/trans-openmp.cc:10121
 #, gcc-internal-format
 msgid "%qs at %L is specified more than once"
 msgstr ""
 
-#: fortran/trans-openmp.cc:10041
+#: fortran/trans-openmp.cc:10138
 #, gcc-internal-format
 msgid "%<need_device_addr%> not yet supported"
 msgstr ""
 
-#: fortran/trans-stmt.cc:576
+#: fortran/trans-stmt.cc:646
 #, gcc-internal-format, gfc-internal-format
 msgid "An alternate return at %L without a * dummy argument"
 msgstr ""
 
-#: fortran/trans-stmt.cc:965
+#: fortran/trans-stmt.cc:1035
 #, gcc-internal-format, gfc-internal-format
 msgid "Sorry, the lock component of derived type at %L is not yet supported"
 msgstr ""
 
-#: fortran/trans-stmt.cc:1426
+#: fortran/trans-stmt.cc:1496
 #, gcc-internal-format, gfc-internal-format
 msgid "Sorry, only support for integer kind %d implemented for image-set at %L"
 msgstr ""
 
-#: fortran/trans-stmt.cc:3901
+#: fortran/trans-stmt.cc:3950
 #, gcc-internal-format
 msgid "gfc_trans_select(): Bad type for case expr."
 msgstr ""
 
-#: fortran/trans-stmt.cc:5264
+#: fortran/trans-stmt.cc:5313
 #, gcc-internal-format
 msgid ""
 "Sorry, %s specifier at %L for assumed-size array %qs is not yet supported"
 msgstr ""
 
 #. Cf. PR fortran/
-#: fortran/trans-stmt.cc:5301
+#: fortran/trans-stmt.cc:5350
 #, gcc-internal-format
 msgid ""
 "Sorry, LOCAL specifier at %L for %qs of derived type with default "
@@ -90328,17 +94651,22 @@ msgstr ""
 msgid "REAL(KIND=10) is not available for %<-freal-8-real-16%> option"
 msgstr ""
 
-#: fortran/trans-types.cc:909
+#: fortran/trans-types.cc:804
+#, gcc-internal-format
+msgid "-fexternal-blas64 requires a 64-bit system"
+msgstr ""
+
+#: fortran/trans-types.cc:912
 #, gcc-internal-format
 msgid "gfc_validate_kind(): Got bad type"
 msgstr ""
 
-#: fortran/trans-types.cc:913
+#: fortran/trans-types.cc:916
 #, gcc-internal-format
 msgid "gfc_validate_kind(): Got bad kind"
 msgstr ""
 
-#: fortran/trans.cc:2671
+#: fortran/trans.cc:2689
 #, gcc-internal-format
 msgid "gfc_trans_code(): Bad statement code"
 msgstr ""
@@ -90429,16 +94757,6 @@ msgstr ""
 msgid "unexpected EOF"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:985
-#, gcc-internal-format
-msgid "invalid use of type"
-msgstr ""
-
-#: go/gofrontend/statements.cc:2670
-#, gcc-internal-format
-msgid "expected call expression"
-msgstr ""
-
 #: lto/lto-common.cc:2041
 #, gcc-internal-format
 msgid "bytecode stream: garbage at the end of symbols section"
@@ -90494,27 +94812,32 @@ msgstr ""
 msgid "Cannot open %s"
 msgstr ""
 
-#: lto/lto-common.cc:2447
+#: lto/lto-common.cc:2443
+#, gcc-internal-format, gfc-internal-format
+msgid "Cannot map %s: section is too long"
+msgstr ""
+
+#: lto/lto-common.cc:2453
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot map %s"
 msgstr ""
 
-#: lto/lto-common.cc:2458
+#: lto/lto-common.cc:2464
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot read %s"
 msgstr ""
 
-#: lto/lto-common.cc:2775
+#: lto/lto-common.cc:2781
 #, gcc-internal-format
 msgid "could not open symbol resolution file: %m"
 msgstr ""
 
-#: lto/lto-common.cc:2900
+#: lto/lto-common.cc:2906
 #, gcc-internal-format, gfc-internal-format
 msgid "missing resolution data for %s"
 msgstr ""
 
-#: lto/lto-common.cc:2937
+#: lto/lto-common.cc:2943
 #, gcc-internal-format
 msgid "errors during merging of translation units"
 msgstr ""
@@ -90539,107 +94862,107 @@ msgstr ""
 msgid "%s:%s: %E: %E"
 msgstr ""
 
-#: lto/lto-lang.cc:893
+#: lto/lto-lang.cc:892
 #, gcc-internal-format
 msgid "%<-fwpa%> and %<-fltrans%> are mutually exclusive"
 msgstr ""
 
-#: lto/lto-lang.cc:927
+#: lto/lto-lang.cc:926
 #, gcc-internal-format
 msgid "%<-flinker-output=rel%> and %<-fltrans%> are mutually exclusive"
 msgstr ""
 
-#: lto/lto-object.cc:106
+#: lto/lto-object.cc:104
 #, gcc-internal-format, gfc-internal-format
 msgid "open %s failed: %s"
 msgstr ""
 
-#: lto/lto-object.cc:150
+#: lto/lto-object.cc:148
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: %s: %s"
 msgstr ""
 
-#: lto/lto-object.cc:191
+#: lto/lto-object.cc:189
 #, gcc-internal-format, gfc-internal-format
 msgid "close: %s"
 msgstr ""
 
-#: lto/lto-object.cc:247
+#: lto/lto-object.cc:245
 #, gcc-internal-format, gfc-internal-format
 msgid "two or more sections for %s"
 msgstr ""
 
-#: lto/lto-partition.cc:1123
+#: lto/lto-partition.cc:1233
 #, gcc-internal-format
 msgid "min partition size cannot be greater than max partition size"
 msgstr ""
 
-#: lto/lto-symtab.cc:169
+#: lto/lto-symtab.cc:176
 #, gcc-internal-format
 msgid "%qD is defined with tls model %s"
 msgstr ""
 
-#: lto/lto-symtab.cc:171
+#: lto/lto-symtab.cc:178
 #, gcc-internal-format, gfc-internal-format
 msgid "previously defined here as %s"
 msgstr ""
 
-#: lto/lto-symtab.cc:474
+#: lto/lto-symtab.cc:481
 #, gcc-internal-format
 msgid "multiple prevailing defs for %qE"
 msgstr ""
 
-#: lto/lto-symtab.cc:492
+#: lto/lto-symtab.cc:499
 #, gcc-internal-format
 msgid "%qD has already been defined"
 msgstr ""
 
-#: lto/lto-symtab.cc:494
+#: lto/lto-symtab.cc:501
 #, gcc-internal-format
 msgid "previously defined here"
 msgstr ""
 
-#: lto/lto-symtab.cc:720
+#: lto/lto-symtab.cc:727
 #, gcc-internal-format
 msgid "%qD violates the C++ One Definition Rule"
 msgstr ""
 
-#: lto/lto-symtab.cc:726
+#: lto/lto-symtab.cc:733
 #, gcc-internal-format
 msgid "type of %qD does not match original declaration"
 msgstr ""
 
-#: lto/lto-symtab.cc:746
+#: lto/lto-symtab.cc:753
 #, gcc-internal-format
 msgid "alignment of %qD is bigger than original declaration"
 msgstr ""
 
-#: lto/lto-symtab.cc:752
+#: lto/lto-symtab.cc:759
 #, gcc-internal-format
 msgid "size of %qD differ from the size of original declaration"
 msgstr ""
 
-#: lto/lto-symtab.cc:757
+#: lto/lto-symtab.cc:764
 #, gcc-internal-format
 msgid "%qD was previously declared here"
 msgstr ""
 
-#: lto/lto-symtab.cc:760
+#: lto/lto-symtab.cc:767
 #, gcc-internal-format
 msgid "code may be misoptimized unless %<-fno-strict-aliasing%> is used"
 msgstr ""
 
-#: lto/lto-symtab.cc:846
+#: lto/lto-symtab.cc:853
 #, gcc-internal-format
 msgid "variable %qD redeclared as function"
 msgstr ""
 
-#: lto/lto-symtab.cc:853
+#: lto/lto-symtab.cc:860
 #, gcc-internal-format
 msgid "function %qD redeclared as variable"
 msgstr ""
 
-#: lto/lto-symtab.cc:865
+#: lto/lto-symtab.cc:872
 #, gcc-internal-format
 msgid "previously declared here"
 msgstr ""
@@ -90664,38 +94987,38 @@ msgstr ""
 msgid "streaming subprocess was killed by signal"
 msgstr ""
 
-#: lto/lto.cc:321
+#: lto/lto.cc:319
 #, gcc-internal-format
 msgid "no LTRANS output list filename provided"
 msgstr ""
 
-#: lto/lto.cc:429
+#: lto/lto.cc:430
 #, gcc-internal-format
 msgid "opening LTRANS output list %s: %m"
 msgstr ""
 
-#: lto/lto.cc:436
+#: lto/lto.cc:437
 #, gcc-internal-format
 msgid "writing to LTRANS output list %s: %m"
 msgstr ""
 
-#: lto/lto.cc:446
+#: lto/lto.cc:447
 #, gcc-internal-format
 msgid "closing LTRANS output list %s: %m"
 msgstr ""
 
-#: m2/gm2-lang.cc:1142
+#: m2/gm2-lang.cc:1342
 #, gcc-internal-format
 msgid "cannot convert expression, only base types can be converted"
 msgstr ""
 
 #. Not found, probably a user typo.
-#: m2/gm2spec.cc:346
+#: m2/gm2spec.cc:363
 #, gcc-internal-format
 msgid "%qs is not a valid Modula-2 system library name or abbreviation"
 msgstr ""
 
-#: m2/gm2spec.cc:730 m2/gm2spec.cc:738
+#: m2/gm2spec.cc:754 m2/gm2spec.cc:762
 #, gcc-internal-format
 msgid "%qs and %qs cannot both be enabled"
 msgstr ""
@@ -90761,83 +95084,73 @@ msgstr ""
 msgid "constant %qs is too large"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:2618
+#: m2/gm2-gcc/m2expr.cc:2522
 #, gcc-internal-format
 msgid "not expecting different types to binary operator"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:2891
+#: m2/gm2-gcc/m2expr.cc:2795
 #, gcc-internal-format
 msgid "cannot take the address of this expression"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:3658
+#: m2/gm2-gcc/m2expr.cc:3354
 #, gcc-internal-format
 msgid "argument to CAP is not a constant or variable of type CHAR"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:3938 m2/gm2-gcc/m2expr.cc:4044
-#: m2/gm2-gcc/m2expr.cc:4053
+#: m2/gm2-gcc/m2expr.cc:3577 m2/gm2-gcc/m2expr.cc:3683
+#: m2/gm2-gcc/m2expr.cc:3692
 #, gcc-internal-format
 msgid "constant literal %qs exceeds internal ZTYPE range"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:3973
+#: m2/gm2-gcc/m2expr.cc:3612
 #, gcc-internal-format
 msgid "constant literal %qs contains %qc, expected 0 or 1"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:3988 m2/gm2-gcc/m2expr.cc:4000
+#: m2/gm2-gcc/m2expr.cc:3627 m2/gm2-gcc/m2expr.cc:3639
 #, gcc-internal-format
 msgid "constant literal %qs contains %qc, expected %qs"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:4019
+#: m2/gm2-gcc/m2expr.cc:3658
 #, gcc-internal-format
 msgid "constant literal %qs contains %qc, expected %qs or %qs"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:4085
+#: m2/gm2-gcc/m2expr.cc:3724
 #, gcc-internal-format
 msgid "%qs applied to a void type"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:4106 m2/gm2-gcc/m2expr.cc:4150
+#: m2/gm2-gcc/m2expr.cc:3745 m2/gm2-gcc/m2expr.cc:3789
 #, gcc-internal-format
 msgid "%qs applied to an incomplete type"
 msgstr ""
 
-#: m2/gm2-gcc/m2linemap.cc:333
+#: m2/gm2-gcc/m2linemap.cc:336
 #, gcc-internal-format
 msgid "memory allocation failed in vasprintf"
 msgstr ""
 
-#: m2/gm2-gcc/m2linemap.cc:365 rust/rust-diagnostics.cc:166
+#: m2/gm2-gcc/m2linemap.cc:368 rust/rust-diagnostics.cc:173
 #, gcc-internal-format, gfc-internal-format
 msgid "at %s, %s"
 msgstr ""
 
-#: m2/gm2-gcc/m2statement.cc:678
-#, gcc-internal-format
-msgid "internal error: not expecting operand1 to be a constant set"
-msgstr ""
-
-#: m2/gm2-gcc/m2statement.cc:1072
-#, gcc-internal-format
-msgid "expecting one and only one label to be declared"
-msgstr ""
-
-#: m2/gm2-gcc/m2treelib.cc:286
+#: m2/gm2-gcc/m2treelib.cc:274
 #, gcc-internal-format
 msgid "field number exceeds definition of set"
 msgstr ""
 
-#: m2/gm2-gcc/m2treelib.cc:291
+#: m2/gm2-gcc/m2treelib.cc:279
 #, gcc-internal-format
 msgid "field number out of range trying to access set element"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:225
+#: m2/gm2-gcc/m2type.cc:224
 #, gcc-internal-format
 msgid "array declaration canonicalization has failed"
 msgstr ""
@@ -90852,83 +95165,83 @@ msgstr ""
 msgid "high bound for the array is outside the ztype limits"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:917
+#: m2/gm2-gcc/m2type.cc:929
 #, gcc-internal-format
 msgid "set base type must be an ordinal type"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:946
+#: m2/gm2-gcc/m2type.cc:958
 #, gcc-internal-format
 msgid "ordinal type expected"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:955
+#: m2/gm2-gcc/m2type.cc:967
 #, gcc-internal-format
 msgid "range limits are not of the same type"
 msgstr ""
 
 #. This enum is a named one that has been declared already.
-#: m2/gm2-gcc/m2type.cc:2004
+#: m2/gm2-gcc/m2type.cc:2016
 #, gcc-internal-format
 msgid "redeclaration of enum %qs"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2070
+#: m2/gm2-gcc/m2type.cc:2082
 #, gcc-internal-format
 msgid "enumeration values exceed range of integer"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2304
+#: m2/gm2-gcc/m2type.cc:2316
 #, gcc-internal-format
-msgid "set type cannot be initialized with a %qs"
+msgid "set type must be initialized"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2311
+#: m2/gm2-gcc/m2type.cc:2405
 #, gcc-internal-format
-msgid "set type does not take another integer value"
+msgid "record type must be initialized"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2436
+#: m2/gm2-gcc/m2type.cc:2458
 #, gcc-internal-format
 msgid "array cannot be initialized with a %qs"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2442
+#: m2/gm2-gcc/m2type.cc:2464
 #, gcc-internal-format
 msgid "array type must be initialized"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2449
+#: m2/gm2-gcc/m2type.cc:2471
 #, gcc-internal-format
 msgid "array element value must be the same type as its declaration"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2512
+#: m2/gm2-gcc/m2type.cc:2534
 #, gcc-internal-format
 msgid "low bound for the subrange has overflowed"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2514
+#: m2/gm2-gcc/m2type.cc:2536
 #, gcc-internal-format
 msgid "high bound for the subrange has overflowed"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2811
+#: m2/gm2-gcc/m2type.cc:2833
 #, gcc-internal-format
 msgid "requested alignment is not a constant"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2813
+#: m2/gm2-gcc/m2type.cc:2835
 #, gcc-internal-format
 msgid "requested alignment is not a power of 2"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2815
+#: m2/gm2-gcc/m2type.cc:2837
 #, gcc-internal-format
 msgid "requested alignment is too large"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2841
+#: m2/gm2-gcc/m2type.cc:2863
 #, gcc-internal-format
 msgid "alignment may not be specified for %qD"
 msgstr ""
@@ -91925,70 +96238,79 @@ msgstr ""
 msgid "creating selector for nonexistent method %qE"
 msgstr ""
 
-#: rust/backend/rust-constexpr.cc:1676
+#: rust/backend/rust-constexpr.cc:936
+#, gcc-internal-format
+msgid "accessing value of %qE through a %qT glvalue in a constant expression"
+msgstr ""
+
+#: rust/backend/rust-constexpr.cc:1723
 #, gcc-internal-format
 msgid "array size expression is not supported yet"
 msgstr ""
 
-#: rust/backend/rust-constexpr.cc:1803
+#: rust/backend/rust-constexpr.cc:1852
 #, gcc-internal-format
 msgid "constant folding not supported for this tree code"
 msgstr ""
 
-#: rust/backend/rust-constexpr.cc:2480
+#: rust/backend/rust-constexpr.cc:2562
 #, gcc-internal-format
 msgid "cast from %qT is not allowed"
 msgstr ""
 
-#: rust/backend/rust-constexpr.cc:2751
+#: rust/backend/rust-constexpr.cc:2837
 #, gcc-internal-format
 msgid "modification of %qE is not a constant expression"
 msgstr ""
 
-#: rust/backend/rust-constexpr.cc:6172
+#: rust/backend/rust-constexpr.cc:4544
+#, gcc-internal-format
+msgid "is not a constant expression"
+msgstr ""
+
+#: rust/backend/rust-constexpr.cc:6396
 #, gcc-internal-format
 msgid "%qD declared %<thread_local%> in %<constexpr%> context"
 msgstr ""
 
-#: rust/backend/rust-constexpr.cc:6181
+#: rust/backend/rust-constexpr.cc:6405
 #, gcc-internal-format
 msgid "%qD declared %<static%> in %<constexpr%> context"
 msgstr ""
 
-#: rust/backend/rust-constexpr.cc:6427
+#: rust/backend/rust-constexpr.cc:6656
 #, gcc-internal-format
 msgid ""
 "label definition in %<constexpr%> function only available with %<-std=c+"
 "+2b%> or %<-std=gnu++2b%>"
 msgstr ""
 
-#: rust/backend/rust-tree.cc:616
+#: rust/backend/rust-tree.cc:620
 #, gcc-internal-format
 msgid "ignoring return value of %qD, that must be used: %qs"
 msgstr ""
 
-#: rust/backend/rust-tree.cc:617
+#: rust/backend/rust-tree.cc:621
 #, gcc-internal-format
 msgid "ignoring return value of %qD, that must be used"
 msgstr ""
 
-#: rust/backend/rust-tree.cc:633
+#: rust/backend/rust-tree.cc:637
 #, gcc-internal-format
 msgid "ignoring returned value of type %qT, that must be used: %qs"
 msgstr ""
 
-#: rust/backend/rust-tree.cc:634
+#: rust/backend/rust-tree.cc:638
 #, gcc-internal-format
 msgid "ignoring returned value of type %qT, that must be used"
 msgstr ""
 
-#: rust/checks/lints/rust-lint-unused-var.cc:51
+#: rust/checks/lints/rust-lint-unused-var.cc:53
 #, gcc-internal-format
 msgid "unused name %qE"
 msgstr ""
 
-#: rust/resolve/rust-ast-resolve-expr.cc:134
-#: rust/resolve/rust-late-name-resolver-2.0.cc:268
+#: rust/resolve/rust-late-name-resolver-2.0.cc:340
 #, gcc-internal-format, gfc-internal-format
 msgid "are you trying to break %s? how dare you?"
 msgstr ""
index fc5521bc4711ac5ae7b87d61e82be34742bb3df1..16e2e41a3cf761987d0e818198a3db43d596d78f 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n"
-"POT-Creation-Date: 2025-03-14 22:05+0000\n"
+"POT-Creation-Date: 2026-02-19 21:05+0000\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"
@@ -31,281 +31,281 @@ msgstr ""
 msgid "no iconv implementation, cannot convert from %s to %s"
 msgstr ""
 
-#: charset.cc:870
+#: charset.cc:874
 #, gcc-internal-format
 msgid "character 0x%lx is not in the basic source character set"
 msgstr ""
 
-#: charset.cc:887
-#: charset.cc:2639
+#: charset.cc:891
+#: charset.cc:2643
 msgid "converting to execution character set"
 msgstr ""
 
-#: charset.cc:893
+#: charset.cc:897
 #, gcc-internal-format
 msgid "character 0x%lx is not unibyte in execution character set"
 msgstr ""
 
-#: charset.cc:1549
+#: charset.cc:1553
 msgid "universal character names are only valid in C++ and C99"
 msgstr ""
 
-#: charset.cc:1553
+#: charset.cc:1557
 #, gcc-internal-format
 msgid "C99%'s universal character names are incompatible with C90"
 msgstr ""
 
-#: charset.cc:1556
+#: charset.cc:1560
 #, gcc-internal-format
 msgid "the meaning of %<\\%c%> is different in traditional C"
 msgstr ""
 
-#: charset.cc:1595
+#: charset.cc:1599
 #, gcc-internal-format
 msgid "%<\\N%> not followed by %<{%>"
 msgstr ""
 
-#: charset.cc:1625
+#: charset.cc:1629
 msgid ""
 "empty named universal character escape sequence; treating it as separate "
 "tokens"
 msgstr ""
 
-#: charset.cc:1632
+#: charset.cc:1636
 msgid "empty named universal character escape sequence"
 msgstr ""
 
-#: charset.cc:1639
+#: charset.cc:1643
 msgid "named universal character escapes are only valid in C++23"
 msgstr ""
 
-#: charset.cc:1659
+#: charset.cc:1663
 #, gcc-internal-format
 msgid ""
 "%<\\N{%.*s}%> is not a valid universal character; treating it as separate "
 "tokens"
 msgstr ""
 
-#: charset.cc:1665
+#: charset.cc:1669
 #, gcc-internal-format
 msgid "%<\\N{%.*s}%> is not a valid universal character"
 msgstr ""
 
-#: charset.cc:1675
+#: charset.cc:1679
 #, gcc-internal-format
 msgid "did you mean %<\\N{%s}%>?"
 msgstr ""
 
-#: charset.cc:1693
+#: charset.cc:1697
 #, gcc-internal-format
 msgid ""
 "%<\\N{%> not terminated with %<}%> after %.*s; treating it as separate tokens"
 msgstr ""
 
-#: charset.cc:1702
+#: charset.cc:1706
 #, gcc-internal-format
 msgid "%<\\N{%> not terminated with %<}%> after %.*s"
 msgstr ""
 
-#: charset.cc:1710
+#: charset.cc:1714
 #, gcc-internal-format
 msgid "in %<_cpp_valid_ucn%> but not a UCN"
 msgstr ""
 
-#: charset.cc:1753
+#: charset.cc:1757
 msgid "empty delimited escape sequence; treating it as separate tokens"
 msgstr ""
 
-#: charset.cc:1760
-#: charset.cc:2163
-#: charset.cc:2280
+#: charset.cc:1764
+#: charset.cc:2167
+#: charset.cc:2284
 msgid "empty delimited escape sequence"
 msgstr ""
 
-#: charset.cc:1769
-#: charset.cc:2172
-#: charset.cc:2289
+#: charset.cc:1773
+#: charset.cc:2176
+#: charset.cc:2293
 msgid "delimited escape sequences are only valid in C++23"
 msgstr ""
 
-#: charset.cc:1774
-#: charset.cc:1779
-#: charset.cc:2177
-#: charset.cc:2182
-#: charset.cc:2294
-#: charset.cc:2299
+#: charset.cc:1778
+#: charset.cc:1783
+#: charset.cc:2181
+#: charset.cc:2186
+#: charset.cc:2298
+#: charset.cc:2303
 msgid "delimited escape sequences are only valid in C2Y"
 msgstr ""
 
-#: charset.cc:1794
+#: charset.cc:1798
 #, gcc-internal-format
 msgid ""
 "%<\\u{%> not terminated with %<}%> after %.*s; treating it as separate tokens"
 msgstr ""
 
-#: charset.cc:1806
+#: charset.cc:1810
 #, gcc-internal-format
 msgid "incomplete universal character name %.*s"
 msgstr ""
 
-#: charset.cc:1810
+#: charset.cc:1814
 #, gcc-internal-format
 msgid "%<\\u{%> not terminated with %<}%> after %.*s"
 msgstr ""
 
-#: charset.cc:1818
+#: charset.cc:1822
 #, gcc-internal-format
 msgid "%.*s is not a valid universal character"
 msgstr ""
 
-#: charset.cc:1834
 #: charset.cc:1838
+#: charset.cc:1842
 #, gcc-internal-format
 msgid "%.*s is not a valid universal character name before C23"
 msgstr ""
 
-#: charset.cc:1854
-#: lex.cc:2096
+#: charset.cc:1858
+#: lex.cc:2099
 #, gcc-internal-format
 msgid "%<$%> in identifier or number"
 msgstr ""
 
-#: charset.cc:1864
+#: charset.cc:1868
 #, gcc-internal-format
 msgid "universal character %.*s is not valid in an identifier"
 msgstr ""
 
-#: charset.cc:1868
+#: charset.cc:1872
 #, gcc-internal-format
 msgid "universal character %.*s is not valid at the start of an identifier"
 msgstr ""
 
-#: charset.cc:1875
+#: charset.cc:1879
 #, gcc-internal-format
 msgid "%.*s is outside the UCS codespace"
 msgstr ""
 
-#: charset.cc:1919
-#: charset.cc:3072
+#: charset.cc:1923
+#: charset.cc:3180
 msgid "converting UCN to source character set"
 msgstr ""
 
-#: charset.cc:1926
+#: charset.cc:1930
 msgid "converting UCN to execution character set"
 msgstr ""
 
-#: charset.cc:1990
+#: charset.cc:1994
 #, gcc-internal-format
 msgid "extended character %.*s is not valid in an identifier"
 msgstr ""
 
-#: charset.cc:2007
+#: charset.cc:2011
 #, gcc-internal-format
 msgid "extended character %.*s is not valid at the start of an identifier"
 msgstr ""
 
-#: charset.cc:2129
+#: charset.cc:2133
 #, gcc-internal-format
 msgid "the meaning of %<\\x%> is different in traditional C"
 msgstr ""
 
-#: charset.cc:2190
+#: charset.cc:2194
 #, gcc-internal-format
 msgid "%<\\x%> used with no following hex digits"
 msgstr ""
 
-#: charset.cc:2196
+#: charset.cc:2200
 #, gcc-internal-format
 msgid "%<\\x{%> not terminated with %<}%> after %.*s"
 msgstr ""
 
-#: charset.cc:2204
+#: charset.cc:2208
 msgid "hex escape sequence out of range"
 msgstr ""
 
-#: charset.cc:2247
+#: charset.cc:2251
 #, gcc-internal-format
 msgid "%<\\o%> not followed by %<{%>"
 msgstr ""
 
-#: charset.cc:2305
+#: charset.cc:2309
 #, gcc-internal-format
 msgid "%<\\o{%> not terminated with %<}%> after %.*s"
 msgstr ""
 
-#: charset.cc:2314
+#: charset.cc:2318
 msgid "octal escape sequence out of range"
 msgstr ""
 
-#: charset.cc:2366
-#: charset.cc:2376
+#: charset.cc:2370
+#: charset.cc:2380
 #, gcc-internal-format
 msgid "numeric escape sequence in unevaluated string: %<\\%c%>"
 msgstr ""
 
-#: charset.cc:2404
+#: charset.cc:2408
 #, gcc-internal-format
 msgid "the meaning of %<\\a%> is different in traditional C"
 msgstr ""
 
-#: charset.cc:2410
+#: charset.cc:2414
 #, gcc-internal-format
 msgid "non-ISO-standard escape sequence, %<\\%c%>"
 msgstr ""
 
-#: charset.cc:2418
+#: charset.cc:2422
 #, gcc-internal-format
 msgid "unknown escape sequence: %<\\%c%>"
 msgstr ""
 
-#: charset.cc:2428
+#: charset.cc:2432
 #, gcc-internal-format
 msgid "unknown escape sequence: %<\\%s%>"
 msgstr ""
 
-#: charset.cc:2436
+#: charset.cc:2440
 msgid "converting escape sequence to execution character set"
 msgstr ""
 
-#: charset.cc:2576
+#: charset.cc:2580
 msgid "missing open quote"
 msgstr ""
 
-#: charset.cc:2807
+#: charset.cc:2915
 msgid "character not encodable in a single execution character code unit"
 msgstr ""
 
-#: charset.cc:2812
+#: charset.cc:2920
 msgid ""
 "at least one character in a multi-character literal not encodable in a "
 "single execution character code unit"
 msgstr ""
 
-#: charset.cc:2830
+#: charset.cc:2938
 #, gcc-internal-format
 msgid ""
 "multi-character literal with %ld characters exceeds %<int%> size of %ld bytes"
 msgstr ""
 
-#: charset.cc:2834
-#: charset.cc:2929
+#: charset.cc:2942
+#: charset.cc:3037
 msgid "multi-character literal cannot have an encoding prefix"
 msgstr ""
 
-#: charset.cc:2837
-#: charset.cc:2932
+#: charset.cc:2945
+#: charset.cc:3040
 msgid "character not encodable in a single code unit"
 msgstr ""
 
-#: charset.cc:2841
+#: charset.cc:2949
 msgid "multi-character character constant"
 msgstr ""
 
-#: charset.cc:2973
+#: charset.cc:3081
 msgid "empty character constant"
 msgstr ""
 
-#: charset.cc:3158
+#: charset.cc:3266
 #, gcc-internal-format, gfc-internal-format
 msgid "failure to convert %s to %s"
 msgstr ""
@@ -326,17 +326,17 @@ msgid "%<#%s%> is a GCC extension"
 msgstr ""
 
 #: directives.cc:404
-#: directives.cc:2686
-#: directives.cc:2725
+#: directives.cc:2716
+#: directives.cc:2755
 #, gcc-internal-format
 msgid "%<#%s%> before C++23 is a GCC extension"
 msgstr ""
 
 #: directives.cc:409
 #: directives.cc:415
-#: directives.cc:1374
-#: directives.cc:2690
-#: directives.cc:2730
+#: directives.cc:1404
+#: directives.cc:2720
+#: directives.cc:2760
 #, gcc-internal-format
 msgid "%<#%s%> before C23 is a GCC extension"
 msgstr ""
@@ -398,308 +398,315 @@ msgstr ""
 msgid "macro names must be identifiers"
 msgstr ""
 
-#: directives.cc:743
-#: directives.cc:747
+#: directives.cc:752
+#: directives.cc:755
+#, gcc-internal-format
+msgid "undefining keyword %qs"
+msgstr ""
+
+#: directives.cc:767
+#: directives.cc:772
+#: directives.cc:784
 #, gcc-internal-format
 msgid "undefining %qs"
 msgstr ""
 
-#: directives.cc:805
+#: directives.cc:835
 #, gcc-internal-format
 msgid "missing terminating %<>%> character"
 msgstr ""
 
-#: directives.cc:865
+#: directives.cc:895
 #, gcc-internal-format
 msgid "%<#%s%> expects %<\"FILENAME\"%> or %<<FILENAME>%>"
 msgstr ""
 
-#: directives.cc:911
-#: directives.cc:1391
+#: directives.cc:941
+#: directives.cc:1421
 #, gcc-internal-format, gfc-internal-format
 msgid "empty filename in #%s"
 msgstr ""
 
-#: directives.cc:920
+#: directives.cc:950
 #, gcc-internal-format
 msgid ""
 "%<#include%> nested depth %u exceeds maximum of %u (use %<-fmax-include-"
 "depth=DEPTH%> to increase the maximum)"
 msgstr ""
 
-#: directives.cc:965
+#: directives.cc:995
 #, gcc-internal-format
 msgid "%<#include_next%> in primary source file"
 msgstr ""
 
-#: directives.cc:1037
-#: directives.cc:1059
-#: directives.cc:1062
-#: directives.cc:1065
+#: directives.cc:1067
+#: directives.cc:1089
+#: directives.cc:1092
+#: directives.cc:1095
 #, gcc-internal-format, gfc-internal-format
 msgid "unbalanced '%c'"
 msgstr ""
 
-#: directives.cc:1120
-#: directives.cc:1311
+#: directives.cc:1150
+#: directives.cc:1341
 #, gcc-internal-format
 msgid "expected %<)%>"
 msgstr ""
 
-#: directives.cc:1126
-#: directives.cc:1177
+#: directives.cc:1156
+#: directives.cc:1207
 msgid "expected parameter name"
 msgstr ""
 
-#: directives.cc:1137
+#: directives.cc:1167
 #, gcc-internal-format
 msgid ""
 "%<gnu::base64%> parameter conflicts with %<limit%> or %<gnu::offset%> "
 "parameters"
 msgstr ""
 
-#: directives.cc:1147
+#: directives.cc:1177
 #, gcc-internal-format
 msgid "%<gnu::base64%> parameter required in preprocessed source"
 msgstr ""
 
-#: directives.cc:1168
+#: directives.cc:1198
 #, gcc-internal-format
 msgid "expected %<:%>"
 msgstr ""
 
-#: directives.cc:1235
+#: directives.cc:1265
 #, gcc-internal-format
 msgid "duplicate embed parameter '%.*s%s%.*s'"
 msgstr ""
 
-#: directives.cc:1247
+#: directives.cc:1277
 #, gcc-internal-format
 msgid "unknown embed parameter '%.*s%s%.*s'"
 msgstr ""
 
-#: directives.cc:1256
+#: directives.cc:1286
 #, gcc-internal-format
 msgid "expected %<(%>"
 msgstr ""
 
-#: directives.cc:1269
+#: directives.cc:1299
 #, gcc-internal-format
 msgid "too large %<gnu::offset%> argument"
 msgstr ""
 
-#: directives.cc:1316
+#: directives.cc:1346
 msgid "expected character string literal"
 msgstr ""
 
-#: directives.cc:1361
+#: directives.cc:1391
 #, gcc-internal-format
 msgid "%<#embed%> not supported in traditional C"
 msgstr ""
 
-#: directives.cc:1370
+#: directives.cc:1400
 #, gcc-internal-format
 msgid "%<#%s%> before C++26 is a GCC extension"
 msgstr ""
 
-#: directives.cc:1379
+#: directives.cc:1409
 #, gcc-internal-format
 msgid "%<#%s%> is a C23 feature"
 msgstr ""
 
-#: directives.cc:1436
+#: directives.cc:1466
 #, gcc-internal-format
 msgid "invalid flag %qs in line directive"
 msgstr ""
 
-#: directives.cc:1504
+#: directives.cc:1534
 #, gcc-internal-format
 msgid "unexpected end of file after %<#line%>"
 msgstr ""
 
-#: directives.cc:1507
+#: directives.cc:1537
 #, gcc-internal-format
 msgid "%qs after %<#line%> is not a positive integer"
 msgstr ""
 
-#: directives.cc:1513
-#: directives.cc:1516
+#: directives.cc:1543
+#: directives.cc:1546
 msgid "line number out of range"
 msgstr ""
 
-#: directives.cc:1529
-#: directives.cc:1610
+#: directives.cc:1559
+#: directives.cc:1640
 #, gcc-internal-format
 msgid "%qs is not a valid filename"
 msgstr ""
 
-#: directives.cc:1570
+#: directives.cc:1600
 #, gcc-internal-format
 msgid "%qs after %<#%> is not a positive integer"
 msgstr ""
 
-#: directives.cc:1637
+#: directives.cc:1667
 #, gcc-internal-format
 msgid "file %qs linemarker ignored due to incorrect nesting"
 msgstr ""
 
-#: directives.cc:1715
-#: directives.cc:1717
-#: directives.cc:1719
-#: directives.cc:2326
+#: directives.cc:1745
+#: directives.cc:1747
+#: directives.cc:1749
+#: directives.cc:2356
 #, gcc-internal-format, gfc-internal-format
 msgid "%s"
 msgstr ""
 
-#: directives.cc:1743
+#: directives.cc:1773
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid #%s directive"
 msgstr ""
 
-#: directives.cc:1806
+#: directives.cc:1836
 #, gcc-internal-format
 msgid "registering pragmas in namespace %qs with mismatched name expansion"
 msgstr ""
 
-#: directives.cc:1815
+#: directives.cc:1845
 #, gcc-internal-format
 msgid "registering pragma %qs with name expansion and no namespace"
 msgstr ""
 
-#: directives.cc:1833
+#: directives.cc:1863
 #, gcc-internal-format
 msgid "registering %qs as both a pragma and a pragma namespace"
 msgstr ""
 
-#: directives.cc:1836
+#: directives.cc:1866
 #, gcc-internal-format
 msgid "%<#pragma %s %s%> is already registered"
 msgstr ""
 
-#: directives.cc:1839
+#: directives.cc:1869
 #, gcc-internal-format
 msgid "%<#pragma %s%> is already registered"
 msgstr ""
 
-#: directives.cc:1870
+#: directives.cc:1900
 msgid "registering pragma with NULL handler"
 msgstr ""
 
-#: directives.cc:2088
+#: directives.cc:2118
 #, gcc-internal-format
 msgid "%<#pragma once%> in main file"
 msgstr ""
 
-#: directives.cc:2158
+#: directives.cc:2188
 #, gcc-internal-format
 msgid "invalid %<#pragma %s_macro%> directive"
 msgstr ""
 
-#: directives.cc:2237
+#: directives.cc:2267
 #, gcc-internal-format
 msgid "invalid %<#pragma GCC poison%> directive"
 msgstr ""
 
-#: directives.cc:2246
+#: directives.cc:2276
 #, gcc-internal-format
 msgid "poisoning existing macro %qs"
 msgstr ""
 
-#: directives.cc:2268
+#: directives.cc:2298
 #, gcc-internal-format
 msgid "%<#pragma system_header%> ignored outside include file"
 msgstr ""
 
-#: directives.cc:2293
+#: directives.cc:2323
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot find source file %s"
 msgstr ""
 
-#: directives.cc:2297
+#: directives.cc:2327
 #, gcc-internal-format, gfc-internal-format
 msgid "current file is older than %s"
 msgstr ""
 
-#: directives.cc:2321
+#: directives.cc:2351
 #, gcc-internal-format
 msgid "invalid %<#pragma GCC %s%> directive"
 msgstr ""
 
-#: directives.cc:2541
+#: directives.cc:2571
 #, gcc-internal-format
 msgid "%<_Pragma%> takes a parenthesized string literal"
 msgstr ""
 
-#: directives.cc:2624
+#: directives.cc:2654
 #, gcc-internal-format
 msgid "%<#else%> without %<#if%>"
 msgstr ""
 
-#: directives.cc:2629
+#: directives.cc:2659
 #, gcc-internal-format
 msgid "%<#else%> after %<#else%>"
 msgstr ""
 
-#: directives.cc:2631
-#: directives.cc:2666
+#: directives.cc:2661
+#: directives.cc:2696
 msgid "the conditional began here"
 msgstr ""
 
-#: directives.cc:2657
+#: directives.cc:2687
 #, gcc-internal-format
 msgid "%<#%s%> without %<#if%>"
 msgstr ""
 
-#: directives.cc:2663
+#: directives.cc:2693
 #, gcc-internal-format
 msgid "%<#%s%> after %<#else%>"
 msgstr ""
 
-#: directives.cc:2767
+#: directives.cc:2797
 #, gcc-internal-format
 msgid "%<#endif%> without %<#if%>"
 msgstr ""
 
-#: directives.cc:2852
+#: directives.cc:2882
 #, gcc-internal-format
 msgid "missing %<(%> after predicate"
 msgstr ""
 
-#: directives.cc:2870
+#: directives.cc:2900
 #, gcc-internal-format
 msgid "missing %<)%> to complete answer"
 msgstr ""
 
-#: directives.cc:2882
+#: directives.cc:2912
 #, gcc-internal-format
 msgid "predicate%'s answer is empty"
 msgstr ""
 
-#: directives.cc:2912
+#: directives.cc:2942
 msgid "assertion without predicate"
 msgstr ""
 
-#: directives.cc:2915
+#: directives.cc:2945
 msgid "predicate must be an identifier"
 msgstr ""
 
-#: directives.cc:2997
+#: directives.cc:3027
 #, gcc-internal-format
 msgid "%qs re-asserted"
 msgstr ""
 
-#: directives.cc:3305
+#: directives.cc:3341
 #, gcc-internal-format, gfc-internal-format
 msgid "unterminated #%s"
 msgstr ""
 
-#: errors.cc:343
-#: errors.cc:358
+#: errors.cc:353
+#: errors.cc:368
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: %s"
 msgstr ""
 
-#: errors.cc:356
+#: errors.cc:366
 msgid "stdout"
 msgstr ""
 
@@ -872,168 +879,168 @@ msgstr ""
 msgid "assertions are a deprecated extension"
 msgstr ""
 
-#: expr.cc:1619
+#: expr.cc:1629
 #, gcc-internal-format, gfc-internal-format
 msgid "unbalanced stack in %s"
 msgstr ""
 
-#: expr.cc:1633
+#: expr.cc:1643
 msgid "negative embed parameter operand"
 msgstr ""
 
-#: expr.cc:1639
+#: expr.cc:1649
 msgid "too large embed parameter operand"
 msgstr ""
 
-#: expr.cc:1658
+#: expr.cc:1668
 #, gcc-internal-format, gfc-internal-format
 msgid "impossible operator '%u'"
 msgstr ""
 
-#: expr.cc:1759
+#: expr.cc:1769
 #, gcc-internal-format
 msgid "missing %<)%> in expression"
 msgstr ""
 
-#: expr.cc:1788
+#: expr.cc:1798
 #, gcc-internal-format
 msgid "%<?%> without following %<:%>"
 msgstr ""
 
-#: expr.cc:1798
+#: expr.cc:1808
 msgid "integer overflow in preprocessor expression"
 msgstr ""
 
-#: expr.cc:1803
+#: expr.cc:1813
 #, gcc-internal-format
 msgid "missing %<(%> in expression"
 msgstr ""
 
-#: expr.cc:1835
+#: expr.cc:1845
 #, gcc-internal-format
 msgid "the left operand of %qs changes sign when promoted"
 msgstr ""
 
-#: expr.cc:1840
+#: expr.cc:1850
 #, gcc-internal-format
 msgid "the right operand of %qs changes sign when promoted"
 msgstr ""
 
-#: expr.cc:2099
+#: expr.cc:2127
 msgid "traditional C rejects the unary plus operator"
 msgstr ""
 
-#: expr.cc:2197
+#: expr.cc:2227
 #, gcc-internal-format, gfc-internal-format
 msgid "comma operator in operand of #%s"
 msgstr ""
 
-#: expr.cc:2335
+#: expr.cc:2365
 #, gcc-internal-format, gfc-internal-format
 msgid "division by zero in #%s"
 msgstr ""
 
-#: files.cc:530
+#: files.cc:531
 #, gcc-internal-format
 msgid "NULL directory in %<find_file%>"
 msgstr ""
 
-#: files.cc:603
+#: files.cc:604
 msgid "one or more PCH files were found, but they were invalid"
 msgstr ""
 
-#: files.cc:607
+#: files.cc:608
 #, gcc-internal-format
 msgid "use %<-Winvalid-pch%> for more information"
 msgstr ""
 
-#: files.cc:737
-#: files.cc:1661
+#: files.cc:738
+#: files.cc:1695
 #, gcc-internal-format, gfc-internal-format
 msgid "%s is a block device"
 msgstr ""
 
-#: files.cc:756
-#: files.cc:1261
-#: files.cc:1287
-#: files.cc:1692
-#: files.cc:1762
+#: files.cc:757
+#: files.cc:1295
+#: files.cc:1321
+#: files.cc:1726
+#: files.cc:1796
 #, gcc-internal-format, gfc-internal-format
 msgid "%s is too large"
 msgstr ""
 
-#: files.cc:796
-#: files.cc:1783
+#: files.cc:797
+#: files.cc:1817
 #, gcc-internal-format, gfc-internal-format
 msgid "%s is shorter than expected"
 msgstr ""
 
-#: files.cc:1120
+#: files.cc:1124
 #, gcc-internal-format, gfc-internal-format
 msgid "no include path in which to search for %s"
 msgstr ""
 
-#: files.cc:1455
+#: files.cc:1489
 #, gcc-internal-format
 msgid "%<gnu::base64%> parameter can be only used with %<\".\"%>"
 msgstr ""
 
-#: files.cc:1472
+#: files.cc:1506
 #, gcc-internal-format
 msgid "%<gnu::base64%> argument not valid base64 encoded string"
 msgstr ""
 
-#: files.cc:2228
+#: files.cc:2262
 msgid "Multiple include guards may be useful for:\n"
 msgstr ""
 
-#: files.cc:2306
+#: files.cc:2340
 #, gcc-internal-format
 msgid "header guard %qs followed by %<#define%> of a different macro"
 msgstr ""
 
-#: files.cc:2310
+#: files.cc:2344
 #, gcc-internal-format
 msgid "%qs is defined here; did you mean %qs?"
 msgstr ""
 
-#: init.cc:676
+#: init.cc:687
 #, gcc-internal-format
 msgid "%<cppchar_t%> must be an unsigned type"
 msgstr ""
 
-#: init.cc:680
+#: init.cc:691
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "preprocessor arithmetic has maximum precision of %lu bits; target requires "
 "%lu bits"
 msgstr ""
 
-#: init.cc:687
+#: init.cc:698
 #, gcc-internal-format
 msgid "CPP arithmetic must be at least as precise as a target %<int%>"
 msgstr ""
 
-#: init.cc:691
+#: init.cc:702
 #, gcc-internal-format
 msgid "target %<char%> is less than 8 bits wide"
 msgstr ""
 
-#: init.cc:695
+#: init.cc:706
 #, gcc-internal-format
 msgid "target %<wchar_t%> is narrower than target %<char%>"
 msgstr ""
 
-#: init.cc:699
+#: init.cc:710
 #, gcc-internal-format
 msgid "target %<int%> is narrower than target %<char%>"
 msgstr ""
 
-#: init.cc:704
+#: init.cc:715
 msgid "CPP half-integer narrower than CPP character"
 msgstr ""
 
-#: init.cc:708
+#: init.cc:719
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "CPP on this host cannot handle wide character constants over %lu bits, but "
@@ -1083,231 +1090,231 @@ msgstr ""
 msgid "whitespace other than spaces and tabs in leading whitespace"
 msgstr ""
 
-#: lex.cc:1623
+#: lex.cc:1625
 msgid "end of bidirectional context"
 msgstr ""
 
-#: lex.cc:1664
+#: lex.cc:1666
 msgid "unpaired UTF-8 bidirectional control characters detected"
 msgstr ""
 
-#: lex.cc:1668
+#: lex.cc:1670
 msgid "unpaired UTF-8 bidirectional control character detected"
 msgstr ""
 
-#: lex.cc:1706
+#: lex.cc:1708
 #, gcc-internal-format
 msgid "UTF-8 vs UCN mismatch when closing a context by %qs"
 msgstr ""
 
-#: lex.cc:1715
+#: lex.cc:1717
 #, gcc-internal-format
 msgid "%qs is closing an unopened context"
 msgstr ""
 
-#: lex.cc:1719
+#: lex.cc:1721
 #, gcc-internal-format
 msgid "found problematic Unicode character %qs"
 msgstr ""
 
-#: lex.cc:1749
-#: lex.cc:1755
+#: lex.cc:1751
+#: lex.cc:1757
 #, gcc-internal-format
 msgid "invalid UTF-8 character %<<%x>%>"
 msgstr ""
 
-#: lex.cc:1765
-#: lex.cc:1771
+#: lex.cc:1767
+#: lex.cc:1773
 #, gcc-internal-format
 msgid "invalid UTF-8 character %<<%x><%x>%>"
 msgstr ""
 
-#: lex.cc:1781
-#: lex.cc:1787
+#: lex.cc:1783
+#: lex.cc:1789
 #, gcc-internal-format
 msgid "invalid UTF-8 character %<<%x><%x><%x>%>"
 msgstr ""
 
-#: lex.cc:1797
-#: lex.cc:1803
+#: lex.cc:1799
+#: lex.cc:1805
 #, gcc-internal-format
 msgid "invalid UTF-8 character %<<%x><%x><%x><%x>%>"
 msgstr ""
 
-#: lex.cc:1885
+#: lex.cc:1887
 #, gcc-internal-format
 msgid "%</*%> within comment"
 msgstr ""
 
-#: lex.cc:1990
+#: lex.cc:1992
 #, gcc-internal-format, gfc-internal-format
 msgid "%s in preprocessing directive"
 msgstr ""
 
-#: lex.cc:2002
+#: lex.cc:2004
 msgid "null character(s) ignored"
 msgstr ""
 
-#: lex.cc:2063
+#: lex.cc:2066
 #, gcc-internal-format
 msgid "%<%.*s%> is not in NFKC"
 msgstr ""
 
-#: lex.cc:2066
 #: lex.cc:2069
+#: lex.cc:2072
 #, gcc-internal-format
 msgid "%<%.*s%> is not in NFC"
 msgstr ""
 
-#: lex.cc:2158
+#: lex.cc:2161
 #, gcc-internal-format
 msgid "%<__VA_OPT__%> is not available until C++20"
 msgstr ""
 
-#: lex.cc:2161
+#: lex.cc:2164
 #, gcc-internal-format
 msgid "%<__VA_OPT__%> is not available until C23"
 msgstr ""
 
-#: lex.cc:2169
+#: lex.cc:2172
 #, gcc-internal-format
 msgid ""
 "%<__VA_OPT__%> can only appear in the expansion of a C++20 variadic macro"
 msgstr ""
 
-#: lex.cc:2186
+#: lex.cc:2189
 #, gcc-internal-format
 msgid "attempt to use poisoned %qs"
 msgstr ""
 
-#: lex.cc:2191
+#: lex.cc:2194
 msgid "poisoned here"
 msgstr ""
 
-#: lex.cc:2201
+#: lex.cc:2204
 #, gcc-internal-format
 msgid ""
 "%<__VA_ARGS__%> can only appear in the expansion of a C++11 variadic macro"
 msgstr ""
 
-#: lex.cc:2205
+#: lex.cc:2208
 #, gcc-internal-format
 msgid ""
 "%<__VA_ARGS__%> can only appear in the expansion of a C99 variadic macro"
 msgstr ""
 
-#: lex.cc:2217
+#: lex.cc:2220
 #, gcc-internal-format
 msgid "identifier %qs is a special operator name in C++"
 msgstr ""
 
-#: lex.cc:2353
+#: lex.cc:2356
 msgid "adjacent digit separators"
 msgstr ""
 
-#: lex.cc:2502
+#: lex.cc:2505
 msgid ""
 "invalid suffix on literal; C++11 requires a space between literal and string "
 "macro"
 msgstr ""
 
-#: lex.cc:2723
+#: lex.cc:2727
 msgid "raw string delimiter longer than 16 characters"
 msgstr ""
 
-#: lex.cc:2727
+#: lex.cc:2731
 msgid "invalid new-line in raw string delimiter"
 msgstr ""
 
-#: lex.cc:2731
-#: lex.cc:5671
+#: lex.cc:2735
+#: lex.cc:5709
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid character '%c' in raw string delimiter"
 msgstr ""
 
-#: lex.cc:2770
-#: lex.cc:2793
+#: lex.cc:2774
+#: lex.cc:2797
 msgid "unterminated raw string"
 msgstr ""
 
-#: lex.cc:2950
+#: lex.cc:2954
 msgid "null character(s) preserved in literal"
 msgstr ""
 
-#: lex.cc:2953
+#: lex.cc:2957
 #, gcc-internal-format, gfc-internal-format
 msgid "missing terminating %c character"
 msgstr ""
 
-#: lex.cc:2986
+#: lex.cc:2990
 msgid "C++11 requires a space between string literal and macro"
 msgstr ""
 
-#: lex.cc:3579
+#: lex.cc:3584
 msgid "module control-line cannot be in included file"
 msgstr ""
 
-#: lex.cc:3593
+#: lex.cc:3598
 #, gcc-internal-format
 msgid "module control-line %qs cannot be an object-like macro"
 msgstr ""
 
-#: lex.cc:3631
+#: lex.cc:3636
 #, gcc-internal-format
 msgid "module name %qs cannot be an object-like macro"
 msgstr ""
 
-#: lex.cc:3637
+#: lex.cc:3642
 #, gcc-internal-format
 msgid "module partition %qs cannot be an object-like macro"
 msgstr ""
 
-#: lex.cc:3658
+#: lex.cc:3663
 #, gcc-internal-format
 msgid "module name followed by %<(%>"
 msgstr ""
 
-#: lex.cc:3662
+#: lex.cc:3667
 #, gcc-internal-format
 msgid "module partition followed by %<(%>"
 msgstr ""
 
-#: lex.cc:4071
-#: lex.cc:5504
+#: lex.cc:4073
+#: lex.cc:5542
 #: traditional.cc:174
 msgid "unterminated comment"
 msgstr ""
 
-#: lex.cc:4085
-#: lex.cc:4120
+#: lex.cc:4087
+#: lex.cc:4122
 msgid "C++ style comments are not allowed in ISO C90"
 msgstr ""
 
-#: lex.cc:4088
-#: lex.cc:4099
-#: lex.cc:4123
+#: lex.cc:4090
+#: lex.cc:4101
+#: lex.cc:4125
 msgid "(this will be reported only once per input file)"
 msgstr ""
 
-#: lex.cc:4097
+#: lex.cc:4099
 msgid "C++ style comments are incompatible with C90"
 msgstr ""
 
-#: lex.cc:4129
+#: lex.cc:4131
 msgid "multi-line comment"
 msgstr ""
 
-#: lex.cc:4557
+#: lex.cc:4589
 #, gcc-internal-format, gfc-internal-format
 msgid "unspellable token %s"
 msgstr ""
 
-#: lex.cc:5659
+#: lex.cc:5697
 #, gcc-internal-format, gfc-internal-format
 msgid "raw string delimiter longer than %d characters"
 msgstr ""
 
-#: lex.cc:5729
+#: lex.cc:5767
 msgid "unterminated literal"
 msgstr ""
 
@@ -1361,7 +1368,7 @@ msgid "macro %qs is not used"
 msgstr ""
 
 #: macro.cc:572
-#: macro.cc:888
+#: macro.cc:891
 #, gcc-internal-format
 msgid "invalid built-in macro %qs"
 msgstr ""
@@ -1385,156 +1392,172 @@ msgstr ""
 msgid "%<__COUNTER__%> expanded inside directive with %<-fdirectives-only%>"
 msgstr ""
 
-#: macro.cc:760
+#: macro.cc:738
+#, gcc-internal-format
+msgid "%<__COUNTER__%> expanded more than 2147483648 times"
+msgstr ""
+
+#: macro.cc:763
 #, gcc-internal-format
 msgid "%<__has_embed%> not supported in traditional C"
 msgstr ""
 
-#: macro.cc:1007
+#: macro.cc:1013
 #, gcc-internal-format
 msgid "invalid string literal, ignoring final %<\\%>"
 msgstr ""
 
-#: macro.cc:1071
+#: macro.cc:1077
 #, gcc-internal-format
-msgid "pasting \"%.*s\" and \"%.*s\" does not give a valid preprocessing token"
+msgid "pasting %<%.*s%> and %<%.*s%> does not give a valid preprocessing token"
 msgstr ""
 
-#: macro.cc:1203
+#: macro.cc:1209
 #, gcc-internal-format
 msgid ""
 "ISO C++11 requires at least one argument for the %<...%> in a variadic macro"
 msgstr ""
 
-#: macro.cc:1207
+#: macro.cc:1213
 #, gcc-internal-format
 msgid ""
 "ISO C99 requires at least one argument for the %<...%> in a variadic macro"
 msgstr ""
 
-#: macro.cc:1214
+#: macro.cc:1220
 #, gcc-internal-format
 msgid "macro %qs requires %u arguments, but only %u given"
 msgstr ""
 
-#: macro.cc:1219
+#: macro.cc:1225
 #, gcc-internal-format
 msgid "macro %qs passed %u arguments, but takes just %u"
 msgstr ""
 
-#: macro.cc:1223
+#: macro.cc:1229
 #, gcc-internal-format
 msgid "macro %qs defined here"
 msgstr ""
 
-#: macro.cc:1417
+#: macro.cc:1423
 #: traditional.cc:822
 #, gcc-internal-format
 msgid "unterminated argument list invoking macro %qs"
 msgstr ""
 
-#: macro.cc:1563
+#: macro.cc:1569
 #, gcc-internal-format
 msgid "function-like macro %qs must be used with arguments in traditional C"
 msgstr ""
 
-#: macro.cc:2398
+#: macro.cc:2404
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "invoking macro %s argument %d: empty macro arguments are undefined in ISO C+"
 "+98"
 msgstr ""
 
-#: macro.cc:2406
-#: macro.cc:2415
+#: macro.cc:2412
+#: macro.cc:2421
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "invoking macro %s argument %d: empty macro arguments are undefined in ISO C90"
 msgstr ""
 
-#: macro.cc:3238
+#: macro.cc:3244
 #, gcc-internal-format
 msgid "%qc in module name or partition comes from or after macro expansion"
 msgstr ""
 
-#: macro.cc:3481
+#: macro.cc:3494
 #, gcc-internal-format
 msgid "duplicate macro parameter %qs"
 msgstr ""
 
-#: macro.cc:3563
+#: macro.cc:3576
 #, gcc-internal-format
 msgid "expected parameter name, found %qs"
 msgstr ""
 
-#: macro.cc:3564
+#: macro.cc:3577
 #, gcc-internal-format
 msgid "expected %<,%> or %<)%>, found %qs"
 msgstr ""
 
-#: macro.cc:3565
+#: macro.cc:3578
 msgid "expected parameter name before end of line"
 msgstr ""
 
-#: macro.cc:3566
+#: macro.cc:3579
 #, gcc-internal-format
 msgid "expected %<)%> before end of line"
 msgstr ""
 
-#: macro.cc:3567
+#: macro.cc:3580
 #, gcc-internal-format
 msgid "expected %<)%> after %<...%>"
 msgstr ""
 
-#: macro.cc:3624
+#: macro.cc:3638
 msgid "anonymous variadic macros were introduced in C++11"
 msgstr ""
 
-#: macro.cc:3625
-#: macro.cc:3629
+#: macro.cc:3639
+#: macro.cc:3643
 msgid "anonymous variadic macros were introduced in C99"
 msgstr ""
 
-#: macro.cc:3635
+#: macro.cc:3649
 msgid "ISO C++ does not permit named variadic macros"
 msgstr ""
 
-#: macro.cc:3636
+#: macro.cc:3650
 msgid "ISO C does not permit named variadic macros"
 msgstr ""
 
-#: macro.cc:3682
+#: macro.cc:3696
 #, gcc-internal-format
 msgid "%<##%> cannot appear at either end of a macro expansion"
 msgstr ""
 
-#: macro.cc:3720
+#: macro.cc:3734
 msgid "ISO C++11 requires whitespace after the macro name"
 msgstr ""
 
-#: macro.cc:3721
+#: macro.cc:3735
 msgid "ISO C99 requires whitespace after the macro name"
 msgstr ""
 
-#: macro.cc:3745
+#: macro.cc:3759
 msgid "missing whitespace after the macro name"
 msgstr ""
 
-#: macro.cc:3798
+#: macro.cc:3812
 #, gcc-internal-format
 msgid "%<#%> is not followed by a macro parameter"
 msgstr ""
 
-#: macro.cc:3961
+#: macro.cc:3976
+#: macro.cc:3980
+#, gcc-internal-format
+msgid "keyword %qs defined as macro"
+msgstr ""
+
+#: macro.cc:3996
 #, gcc-internal-format
 msgid "%qs redefined"
 msgstr ""
 
-#: macro.cc:3965
+#: macro.cc:4000
 msgid "this is the location of the previous definition"
 msgstr ""
 
-#: macro.cc:4103
+#: macro.cc:4009
+#, gcc-internal-format
+msgid "%qs defined"
+msgstr ""
+
+#: macro.cc:4143
 #, gcc-internal-format
 msgid "macro argument %qs would be stringified in traditional C"
 msgstr ""
@@ -1575,7 +1598,7 @@ msgid "%s: not used because %<__COUNTER__%> is invalid"
 msgstr ""
 
 #: pch.cc:722
-#: pch.cc:885
+#: pch.cc:968
 msgid "while reading precompiled header"
 msgstr ""