Regenerate gcc.pot
authorJoseph Myers <joseph@codesourcery.com>
Tue, 4 Apr 2023 17:06:15 +0000 (17:06 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Tue, 4 Apr 2023 17:06:15 +0000 (17:06 +0000)
* gcc.pot: Regenerate.

gcc/po/gcc.pot

index bb7fed5..7797fc4 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: 2023-02-10 22:40+0000\n"
+"POT-Creation-Date: 2023-04-04 17:04+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"
@@ -190,30 +190,6 @@ msgstr ""
 msgid "-f%s ignored (not supported for DJGPP)\n"
 msgstr ""
 
-#: config/xtensa/xtensa-dynconfig.c:63
-msgid "Unable to load DLL."
-msgstr ""
-
-#: config/xtensa/xtensa-dynconfig.c:90
-#, c-format
-msgid "%qs is defined but could not be loaded: %s"
-msgstr ""
-
-#: config/xtensa/xtensa-dynconfig.c:97
-#, c-format
-msgid "%qs plugin is not licensed under a GPL-compatible license"
-msgstr ""
-
-#: config/xtensa/xtensa-dynconfig.c:114
-#, c-format
-msgid "%qs is loaded but symbol %qs is not found: %s"
-msgstr ""
-
-#: config/xtensa/xtensa-dynconfig.c:128
-#, c-format
-msgid "%qs is defined but plugin support is disabled"
-msgstr ""
-
 #. The remainder are real diagnostic types.
 #: fortran/gfc-diagnostic.def:33
 msgid "Fatal Error"
@@ -370,11 +346,11 @@ msgstr ""
 msgid "cannot use mshared and static together"
 msgstr ""
 
-#: config/sol2.h:350 config/sol2.h:355
+#: config/sol2.h:349 config/sol2.h:354
 msgid "does not support multilib"
 msgstr ""
 
-#: config/sol2.h:449
+#: config/sol2.h:448
 msgid "-pie is not supported in this configuration"
 msgstr ""
 
@@ -387,7 +363,7 @@ msgstr ""
 msgid "consider using `-pg' instead of `-p' with gprof (1)"
 msgstr ""
 
-#: config/arc/arc.h:68 config/mips/mips.h:1476
+#: config/arc/arc.h:68 config/mips/mips.h:1477
 msgid "may not use both -EB and -EL"
 msgstr ""
 
@@ -568,10 +544,10 @@ msgid "Warn about creation of array temporaries."
 msgstr ""
 
 #: fortran/lang.opt:214 fortran/lang.opt:535 c-family/c.opt:1529
-#: config/alpha/alpha.opt:31 common.opt:677 common.opt:819 common.opt:1060
-#: common.opt:1064 common.opt:1068 common.opt:1072 common.opt:1770
-#: common.opt:1834 common.opt:1977 common.opt:1981 common.opt:2256
-#: common.opt:2474 common.opt:3194
+#: config/alpha/alpha.opt:31 common.opt:681 common.opt:823 common.opt:1064
+#: common.opt:1068 common.opt:1072 common.opt:1076 common.opt:1778
+#: common.opt:1842 common.opt:1985 common.opt:1989 common.opt:2264
+#: common.opt:2482 common.opt:3202
 #, no-c-format
 msgid "Does nothing. Preserved for backward compatibility."
 msgstr ""
@@ -1186,14 +1162,14 @@ msgstr ""
 #: c-family/c.opt:1749 c-family/c.opt:2068 config/pa/pa.opt:46
 #: config/pa/pa.opt:78 config/arc/arc.opt:140 config/arc/arc.opt:296
 #: config/arc/arc.opt:308 config/arc/arc.opt:312 config/arc/arc.opt:317
-#: common.opt:635 common.opt:1158 common.opt:1162 common.opt:1166
-#: common.opt:1253 common.opt:1559 common.opt:1641 common.opt:1929
-#: common.opt:2072 common.opt:2115 common.opt:2549 common.opt:2585
-#: common.opt:2678 common.opt:2682 common.opt:2791 common.opt:2882
-#: common.opt:2890 common.opt:2898 common.opt:2906 common.opt:3007
-#: common.opt:3067 common.opt:3155 common.opt:3315 common.opt:3319
-#: common.opt:3323 common.opt:3327 common.opt:3397 common.opt:3401
-#: common.opt:3432 common.opt:3436
+#: common.opt:639 common.opt:1162 common.opt:1166 common.opt:1170
+#: common.opt:1261 common.opt:1567 common.opt:1649 common.opt:1937
+#: common.opt:2080 common.opt:2123 common.opt:2557 common.opt:2593
+#: common.opt:2686 common.opt:2690 common.opt:2799 common.opt:2890
+#: common.opt:2898 common.opt:2906 common.opt:2914 common.opt:3015
+#: common.opt:3075 common.opt:3163 common.opt:3323 common.opt:3327
+#: common.opt:3331 common.opt:3335 common.opt:3405 common.opt:3409
+#: common.opt:3440 common.opt:3444
 #, no-c-format
 msgid "Does nothing.  Preserved for backward compatibility."
 msgstr ""
@@ -1308,7 +1284,7 @@ msgstr ""
 msgid "-frust-metadata-output=<path.rox>  Path to output crate metadata"
 msgstr ""
 
-#: rust/lang.opt:123
+#: rust/lang.opt:124
 #, no-c-format
 msgid ""
 "-frust-compile-until=[ast|attributecheck|expansion|nameresolution|lowering|"
@@ -1684,7 +1660,7 @@ msgstr ""
 #: c-family/c.opt:1608 c-family/c.opt:1612 c-family/c.opt:1616
 #: c-family/c.opt:1620 c-family/c.opt:1624 c-family/c.opt:1628
 #: c-family/c.opt:1632 c-family/c.opt:1636 c-family/c.opt:1640
-#: config/i386/i386.opt:995
+#: config/i386/i386.opt:999
 #, no-c-format
 msgid "Removed in GCC 9.  This switch has no effect."
 msgstr ""
@@ -1990,7 +1966,7 @@ msgid ""
 "types."
 msgstr ""
 
-#: c-family/c.opt:762 common.opt:646
+#: c-family/c.opt:762 common.opt:650
 #, no-c-format
 msgid "Warn for infinitely recursive calls."
 msgstr ""
@@ -2975,7 +2951,7 @@ msgstr ""
 
 #: c-family/c.opt:1692
 #, no-c-format
-msgid "Enable certain features present drafts of C++ Contracts."
+msgid "Enable certain features present in drafts of C++ Contracts."
 msgstr ""
 
 #: c-family/c.opt:1705
@@ -4097,158 +4073,148 @@ msgstr ""
 
 #: d/lang.opt:365
 #, no-c-format
-msgid "Implement DIP25: Sealed references."
-msgstr ""
-
-#: d/lang.opt:369
-#, no-c-format
 msgid "Destruct fields of partially constructed objects."
 msgstr ""
 
-#: d/lang.opt:373
+#: d/lang.opt:369
 #, no-c-format
 msgid "Use field-wise comparisons for struct equality."
 msgstr ""
 
-#: d/lang.opt:377
+#: d/lang.opt:373
 #, no-c-format
 msgid ""
 "When a symbol is resolved, check `alias this' scope before going to upper "
 "scopes."
 msgstr ""
 
-#: d/lang.opt:381
+#: d/lang.opt:377
 #, no-c-format
 msgid ""
 "Disallow unsound immutable conversions that were formerly incorrectly "
 "permitted."
 msgstr ""
 
-#: d/lang.opt:385
+#: d/lang.opt:381
 #, no-c-format
 msgid "Implement 'in' parameters to mean scope const."
 msgstr ""
 
-#: d/lang.opt:389
+#: d/lang.opt:385
 #, no-c-format
 msgid ""
 "Implement 'in' contracts of overridden methods to be a superset of parent "
 "contract."
 msgstr ""
 
-#: d/lang.opt:393
+#: d/lang.opt:389
 #, no-c-format
 msgid "Disable access to shared memory objects."
 msgstr ""
 
-#: d/lang.opt:397
+#: d/lang.opt:393
 #, no-c-format
 msgid "Enable rvalue arguments to ref parameters."
 msgstr ""
 
-#: d/lang.opt:401
+#: d/lang.opt:397
 #, no-c-format
 msgid "Disable access to variables marked `@system' from @safe code."
 msgstr ""
 
-#: d/lang.opt:405
+#: d/lang.opt:401
 #, no-c-format
 msgid "Compile release version."
 msgstr ""
 
-#: d/lang.opt:409
+#: d/lang.opt:405
 #, no-c-format
 msgid "Turn off all revertable D language features."
 msgstr ""
 
-#: d/lang.opt:413
+#: d/lang.opt:409
 #, no-c-format
 msgid "Revert DIP1000: Scoped pointers."
 msgstr ""
 
-#: d/lang.opt:417
-#, no-c-format
-msgid "Revert DIP25: Sealed references."
-msgstr ""
-
-#: d/lang.opt:421
+#: d/lang.opt:413
 #, no-c-format
 msgid "Don't destruct fields of partially constructed objects."
 msgstr ""
 
-#: d/lang.opt:425
+#: d/lang.opt:417
 #, no-c-format
 msgid "Don't use C-style integral promotion for unary '+', '-' and '~'."
 msgstr ""
 
-#: d/lang.opt:433
+#: d/lang.opt:425
 #, no-c-format
 msgid ""
 "-fsave-mixins=<filename>\tExpand and save mixins to file specified by "
 "<filename>."
 msgstr ""
 
-#: d/lang.opt:437
+#: d/lang.opt:429
 #, no-c-format
 msgid "Generate code for switches without a default case."
 msgstr ""
 
-#: d/lang.opt:441
+#: d/lang.opt:433
 #, no-c-format
 msgid "List information on all D language transitions."
 msgstr ""
 
-#: d/lang.opt:445
+#: d/lang.opt:437
 #, no-c-format
 msgid "List all non-mutable fields which occupy an object instance."
 msgstr ""
 
-#: d/lang.opt:449
+#: d/lang.opt:441
 #, no-c-format
 msgid "List all usages of 'in' on parameter."
 msgstr ""
 
-#: d/lang.opt:453
+#: d/lang.opt:445
 #, no-c-format
 msgid "List all hidden GC allocations."
 msgstr ""
 
-#: d/lang.opt:457
+#: d/lang.opt:449
 #, no-c-format
 msgid "List statistics on template instantiations."
 msgstr ""
 
-#: d/lang.opt:461
+#: d/lang.opt:453
 #, no-c-format
 msgid "List all variables going into thread local storage."
 msgstr ""
 
-#: d/lang.opt:465
+#: d/lang.opt:457
 #, no-c-format
 msgid "Compile in unittest code."
 msgstr ""
 
-#: d/lang.opt:469
+#: d/lang.opt:461
 #, no-c-format
 msgid "-fversion=<ident>\tCompile in version code identified by <ident>."
 msgstr ""
 
-#: d/lang.opt:473
+#: d/lang.opt:465
 #, no-c-format
 msgid "Emit template instantiations as weak symbols."
 msgstr ""
 
-#: d/lang.opt:493
+#: d/lang.opt:485
 #, no-c-format
 msgid "Do not link the standard D library in the compilation."
 msgstr ""
 
-#: d/lang.opt:501
+#: d/lang.opt:493
 #, no-c-format
 msgid "Link the standard D library statically in the compilation."
 msgstr ""
 
-#: d/lang.opt:505
+#: d/lang.opt:497
 #, no-c-format
 msgid "Link the standard D library dynamically in the compilation."
 msgstr ""
@@ -4293,7 +4259,7 @@ msgstr ""
 #, no-c-format
 msgid ""
 "turns on runtime checking to check whether a CASE statement requires an ELSE "
-"clause when on was not specified"
+"clause when one was not specified"
 msgstr ""
 
 #: m2/lang.opt:63
@@ -4350,8 +4316,8 @@ msgstr ""
 #: m2/lang.opt:107
 #, no-c-format
 msgid ""
-"turns on runtime checking to check whether a floating point number is about "
-"to exceed range"
+"turns on runtime checking to check whether a floating point number will "
+"exceed range"
 msgstr ""
 
 #: m2/lang.opt:111
@@ -4361,7 +4327,7 @@ msgid ""
 "the application"
 msgstr ""
 
-#: m2/lang.opt:115 m2/lang.opt:191
+#: m2/lang.opt:115 m2/lang.opt:203
 #, no-c-format
 msgid "turns on all range checking for numerical values"
 msgstr ""
@@ -4374,8 +4340,9 @@ msgstr ""
 #: m2/lang.opt:123
 #, no-c-format
 msgid ""
-"specify the library order, currently legal entries include: log, min, pim, "
-"iso or their directory name equivalent m2log, m2min, m2pim, m2iso."
+"specify the library order, the libraries maybe specified by a comma "
+"separated abbreviation: log,min,pim,iso or by directory names: m2log,m2min,"
+"m2pim,m2iso."
 msgstr ""
 
 #: m2/lang.opt:127
@@ -4397,167 +4364,178 @@ msgstr ""
 
 #: m2/lang.opt:139
 #, no-c-format
-msgid "insert plugin to identify runtime errors at compiletime (default on)"
+msgid ""
+"specify the module mangled prefix name for all modules in the following "
+"include paths"
 msgstr ""
 
-#: m2/lang.opt:143
+#: m2/lang.opt:147
+#, no-c-format
+msgid "insert plugin to identify runtime errors at compiletime"
+msgstr ""
+
+#: m2/lang.opt:151
+#, no-c-format
+msgid "specify the module mangled prefix name"
+msgstr ""
+
+#: m2/lang.opt:155
 #, no-c-format
 msgid ""
 "display statistics about the amount of source lines compiled and symbols used"
 msgstr ""
 
-#: m2/lang.opt:147
+#: m2/lang.opt:159
 #, no-c-format
 msgid "experimental flag to turn on the new strict type checker"
 msgstr ""
 
-#: m2/lang.opt:151
+#: m2/lang.opt:163
 #, no-c-format
 msgid "compile all implementation modules and program module at once"
 msgstr ""
 
-#: m2/lang.opt:155
+#: m2/lang.opt:167
 #, no-c-format
 msgid "recognise the specified suffix as implementation and module filenames"
 msgstr ""
 
-#: m2/lang.opt:159
+#: m2/lang.opt:171
 #, no-c-format
 msgid ""
 "turns on runtime checking to detect accessing data through a NIL value "
 "pointer"
 msgstr ""
 
-#: m2/lang.opt:163
+#: m2/lang.opt:175
 #, no-c-format
 msgid "use PIM [234] dialect of Modula-2"
 msgstr ""
 
-#: m2/lang.opt:167
+#: m2/lang.opt:179
 #, no-c-format
 msgid "use PIM 2 dialect of Modula-2"
 msgstr ""
 
-#: m2/lang.opt:171
+#: m2/lang.opt:183
 #, no-c-format
 msgid "use PIM 3 dialect of Modula-2"
 msgstr ""
 
-#: m2/lang.opt:175
+#: m2/lang.opt:187
 #, no-c-format
 msgid "use PIM 4 dialect of Modula-2"
 msgstr ""
 
-#: m2/lang.opt:179
+#: m2/lang.opt:191
 #, no-c-format
 msgid "force positive result from MOD and DIV result floor"
 msgstr ""
 
-#: m2/lang.opt:183
+#: m2/lang.opt:195
 #, no-c-format
 msgid "link against the pthread library (default on)"
 msgstr ""
 
-#: m2/lang.opt:187
+#: m2/lang.opt:199
 #, no-c-format
 msgid "internal compiler debugging information, dump the list of quadruples"
 msgstr ""
 
-#: m2/lang.opt:195
+#: m2/lang.opt:207
 #, no-c-format
 msgid ""
 "turns on runtime checking for functions which finish without executing a "
 "RETURN statement"
 msgstr ""
 
-#: m2/lang.opt:199
+#: m2/lang.opt:211
 #, no-c-format
 msgid "specify the list of runtime modules and their initialization order"
 msgstr ""
 
-#: m2/lang.opt:203
+#: m2/lang.opt:215
 #, no-c-format
 msgid ""
 "the modules initialization order is dynamically determined by M2RTS and "
-"application dependancies"
+"application dependencies"
 msgstr ""
 
-#: m2/lang.opt:207
+#: m2/lang.opt:219
 #, no-c-format
 msgid "generate a C source scaffold for the current module being compiled"
 msgstr ""
 
-#: m2/lang.opt:211
+#: m2/lang.opt:223
 #, no-c-format
 msgid "generate a C++ source scaffold for the current module being compiled"
 msgstr ""
 
-#: m2/lang.opt:215
+#: m2/lang.opt:227
 #, no-c-format
 msgid "generate the main function"
 msgstr ""
 
-#: m2/lang.opt:219
+#: m2/lang.opt:231
 #, no-c-format
 msgid ""
 "generate static scaffold initialization and finalization for every module "
 "inside main"
 msgstr ""
 
-#: m2/lang.opt:223
+#: m2/lang.opt:235
 #, no-c-format
 msgid "generate a shared library from the module"
 msgstr ""
 
-#: m2/lang.opt:227
+#: m2/lang.opt:239
 #, no-c-format
 msgid ""
 "turns on all software runtime checking (an abbreviation for -fnil -frange -"
 "findex -fwholediv -fcase -freturn -fwholevalue -ffloatvalue)"
 msgstr ""
 
-#: m2/lang.opt:231
+#: m2/lang.opt:243
 #, no-c-format
 msgid "display the location of module source files as they are compiled"
 msgstr ""
 
-#: m2/lang.opt:235
+#: m2/lang.opt:247
 #, no-c-format
 msgid "create a swig interface file for the module"
 msgstr ""
 
-#: m2/lang.opt:239
+#: m2/lang.opt:251
 #, 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 ""
 
-#: m2/lang.opt:243
+#: m2/lang.opt:255
 #, no-c-format
 msgid ""
 "orders the initialization/finalializations for scaffold-static or force "
 "linking of modules if scaffold-dynamic"
 msgstr ""
 
-#: m2/lang.opt:251
+#: m2/lang.opt:263
 #, no-c-format
 msgid "turns on all division and modulus by zero checking for ordinal values"
 msgstr ""
 
-#: m2/lang.opt:255
+#: m2/lang.opt:267
 #, no-c-format
 msgid ""
-"turns on runtime checking to check whether a whole number is about to exceed "
-"range"
+"turns on runtime checking to check whether a whole number will exceed range"
 msgstr ""
 
-#: m2/lang.opt:259
+#: m2/lang.opt:271
 #, no-c-format
 msgid "Link the standard Modula-2 libraries statically in the compilation."
 msgstr ""
 
-#: m2/lang.opt:400 m2/lang.opt:404
+#: m2/lang.opt:412 m2/lang.opt:416
 #, no-c-format
 msgid "save temporary preprocessed files"
 msgstr ""
@@ -5000,101 +4978,106 @@ msgstr ""
 
 #: analyzer/analyzer.opt:267
 #, no-c-format
-msgid "Enable transitivity of constraints during analysis."
+msgid "Stop exploring an execution path after certain diagnostics."
 msgstr ""
 
 #: analyzer/analyzer.opt:271
 #, no-c-format
-msgid "Approximate the effect of function calls to simplify analysis."
+msgid "Enable transitivity of constraints during analysis."
 msgstr ""
 
 #: analyzer/analyzer.opt:275
 #, no-c-format
-msgid "Try to reconstruct function calls and returns after inlining."
+msgid "Approximate the effect of function calls to simplify analysis."
 msgstr ""
 
 #: analyzer/analyzer.opt:279
 #, no-c-format
-msgid "Emit more verbose descriptions of control flow in diagnostics."
+msgid "Try to reconstruct function calls and returns after inlining."
 msgstr ""
 
 #: analyzer/analyzer.opt:283
 #, no-c-format
-msgid "Emit more verbose descriptions of state changes in diagnostics."
+msgid "Emit more verbose descriptions of control flow in diagnostics."
 msgstr ""
 
 #: analyzer/analyzer.opt:287
 #, no-c-format
-msgid "Control which events are displayed in diagnostic paths."
+msgid "Emit more verbose descriptions of state changes in diagnostics."
 msgstr ""
 
 #: analyzer/analyzer.opt:291
 #, no-c-format
-msgid "Dump various analyzer internals to SRCFILE.analyzer.txt."
+msgid "Control which events are displayed in diagnostic paths."
 msgstr ""
 
 #: analyzer/analyzer.opt:295
 #, no-c-format
-msgid "Dump various analyzer internals to stderr."
+msgid "Dump various analyzer internals to SRCFILE.analyzer.txt."
 msgstr ""
 
 #: analyzer/analyzer.opt:299
 #, no-c-format
+msgid "Dump various analyzer internals to stderr."
+msgstr ""
+
+#: analyzer/analyzer.opt:303
+#, no-c-format
 msgid ""
 "Dump analyzer-specific call graph information to a SRCFILE.callgraph.dot "
 "file."
 msgstr ""
 
-#: analyzer/analyzer.opt:303
+#: analyzer/analyzer.opt:307
 #, no-c-format
 msgid "Dump the analyzer exploded graph to a SRCFILE.eg.dot file."
 msgstr ""
 
-#: analyzer/analyzer.opt:307
+#: analyzer/analyzer.opt:311
 #, no-c-format
 msgid "Emit diagnostics showing the location of nodes in the exploded graph."
 msgstr ""
 
-#: analyzer/analyzer.opt:311
+#: analyzer/analyzer.opt:315
 #, no-c-format
 msgid "Dump a textual representation of the exploded graph to SRCFILE.eg.txt."
 msgstr ""
 
-#: analyzer/analyzer.opt:315
+#: analyzer/analyzer.opt:319
 #, no-c-format
 msgid ""
 "Dump a textual representation of the exploded graph to SRCFILE.eg-ID.txt."
 msgstr ""
 
-#: analyzer/analyzer.opt:319
+#: analyzer/analyzer.opt:323
 #, no-c-format
 msgid ""
 "Dump a textual representation of each diagnostic's exploded path to SRCFILE."
 "IDX.KIND.epath.txt."
 msgstr ""
 
-#: analyzer/analyzer.opt:323
+#: analyzer/analyzer.opt:327
 #, no-c-format
 msgid ""
 "Dump various analyzer internals to SRCFILE.*.fg.dot and SRCFILE.*.tg.dot."
 msgstr ""
 
-#: analyzer/analyzer.opt:327
+#: analyzer/analyzer.opt:331
 #, no-c-format
 msgid "Dump analyzer-specific data to a SRCFILE.analyzer.json.gz file."
 msgstr ""
 
-#: analyzer/analyzer.opt:331
+#: analyzer/analyzer.opt:335
 #, no-c-format
 msgid "Dump state-purging information to a SRCFILE.state-purge.dot file."
 msgstr ""
 
-#: analyzer/analyzer.opt:335
+#: analyzer/analyzer.opt:339
 #, no-c-format
 msgid "Dump the analyzer supergraph to a SRCFILE.supergraph.dot file."
 msgstr ""
 
-#: analyzer/analyzer.opt:339
+#: analyzer/analyzer.opt:343
 #, no-c-format
 msgid ""
 "Emit custom warnings with internal details intended for analyzer developers."
@@ -6240,52 +6223,52 @@ msgid ""
 "only CSR can not be written by the CSR instructions."
 msgstr ""
 
-#: config/riscv/riscv.opt:159
+#: config/riscv/riscv.opt:161
 #, no-c-format
 msgid "Emit RISC-V ELF attribute."
 msgstr ""
 
-#: config/riscv/riscv.opt:163 config/i386/i386.opt:246
+#: config/riscv/riscv.opt:165 config/i386/i386.opt:246
 #, no-c-format
 msgid "Use the given data alignment."
 msgstr ""
 
-#: config/riscv/riscv.opt:167 config/i386/i386.opt:250
+#: config/riscv/riscv.opt:169 config/i386/i386.opt:250
 #, no-c-format
 msgid "Known data alignment choices (for use with the -malign-data= option):"
 msgstr ""
 
-#: config/riscv/riscv.opt:177 config/aarch64/aarch64.opt:241
-#: config/i386/i386.opt:1011 config/arm/arm.opt:343
+#: config/riscv/riscv.opt:179 config/aarch64/aarch64.opt:241
+#: config/i386/i386.opt:1015 config/arm/arm.opt:343
 #: config/rs6000/rs6000.opt:550
 #, no-c-format
 msgid "Use given stack-protector guard."
 msgstr ""
 
-#: config/riscv/riscv.opt:181 config/aarch64/aarch64.opt:245
+#: config/riscv/riscv.opt:183 config/aarch64/aarch64.opt:245
 #: config/arm/arm.opt:347 config/rs6000/rs6000.opt:554
 #, no-c-format
 msgid "Valid arguments to -mstack-protector-guard=:"
 msgstr ""
 
-#: config/riscv/riscv.opt:191 config/i386/i386.opt:1025
+#: config/riscv/riscv.opt:193 config/i386/i386.opt:1029
 #: config/rs6000/rs6000.opt:564
 #, no-c-format
 msgid "Use the given base register for addressing the stack-protector guard."
 msgstr ""
 
-#: config/riscv/riscv.opt:198 config/i386/i386.opt:1032
+#: config/riscv/riscv.opt:200 config/i386/i386.opt:1036
 #: config/rs6000/rs6000.opt:571
 #, no-c-format
 msgid "Use the given offset for addressing the stack-protector guard."
 msgstr ""
 
-#: config/riscv/riscv.opt:238
+#: config/riscv/riscv.opt:243
 #, no-c-format
 msgid "Supported ISA specs (for use with the -misa-spec= option):"
 msgstr ""
 
-#: config/riscv/riscv.opt:251
+#: config/riscv/riscv.opt:256
 #, no-c-format
 msgid "Set the version of RISC-V ISA spec."
 msgstr ""
@@ -6447,12 +6430,12 @@ msgstr ""
 msgid "The code model option names for -mcmodel:"
 msgstr ""
 
-#: config/aarch64/aarch64.opt:78 config/i386/i386.opt:1046
+#: config/aarch64/aarch64.opt:78 config/i386/i386.opt:1050
 #, no-c-format
 msgid "Generate code which uses only the general registers."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:82 config/i386/i386.opt:1138
+#: config/aarch64/aarch64.opt:82 config/i386/i386.opt:1142
 #, no-c-format
 msgid "Generate code to mitigate against straight line speculation."
 msgstr ""
@@ -7624,775 +7607,782 @@ msgstr ""
 #: config/i386/i386.opt:604
 #, no-c-format
 msgid ""
+"The maximum number of use and def visits when discovering a STV chain before "
+"the discovery is aborted."
+msgstr ""
+
+#: config/i386/i386.opt:608
+#, no-c-format
+msgid ""
 "Do dispatch scheduling if processor is bdver1, bdver2, bdver3, bdver4 or "
 "znver1 and Haifa scheduling is selected."
 msgstr ""
 
-#: config/i386/i386.opt:609
+#: config/i386/i386.opt:613
 #, no-c-format
 msgid ""
 "Use 128-bit AVX instructions instead of 256-bit AVX instructions in the auto-"
 "vectorizer."
 msgstr ""
 
-#: config/i386/i386.opt:613
+#: config/i386/i386.opt:617
 #, no-c-format
 msgid ""
 "Use given register vector width instructions instead of maximum register "
 "width in the auto-vectorizer."
 msgstr ""
 
-#: config/i386/i386.opt:617
+#: config/i386/i386.opt:621
 #, no-c-format
 msgid ""
 "Known preferred register vector length (to use with the -mprefer-vector-"
 "width= option):"
 msgstr ""
 
-#: config/i386/i386.opt:633
+#: config/i386/i386.opt:637
 #, no-c-format
 msgid ""
 "Maximum number of bits that can be moved from memory to memory efficiently."
 msgstr ""
 
-#: config/i386/i386.opt:637
+#: config/i386/i386.opt:641
 #, no-c-format
 msgid "Maximum number of bits that can be stored to memory efficiently."
 msgstr ""
 
-#: config/i386/i386.opt:643
+#: config/i386/i386.opt:647
 #, no-c-format
 msgid "Generate 32bit i386 code."
 msgstr ""
 
-#: config/i386/i386.opt:647
+#: config/i386/i386.opt:651
 #, no-c-format
 msgid "Generate 64bit x86-64 code."
 msgstr ""
 
-#: config/i386/i386.opt:651
+#: config/i386/i386.opt:655
 #, no-c-format
 msgid "Generate 32bit x86-64 code."
 msgstr ""
 
-#: config/i386/i386.opt:655
+#: config/i386/i386.opt:659
 #, no-c-format
 msgid "Generate 16bit i386 code."
 msgstr ""
 
-#: config/i386/i386.opt:659
+#: config/i386/i386.opt:663
 #, no-c-format
 msgid "Support MMX built-in functions."
 msgstr ""
 
-#: config/i386/i386.opt:663
+#: config/i386/i386.opt:667
 #, no-c-format
 msgid "Support 3DNow! built-in functions."
 msgstr ""
 
-#: config/i386/i386.opt:667
+#: config/i386/i386.opt:671
 #, no-c-format
 msgid "Support Athlon 3Dnow! built-in functions."
 msgstr ""
 
-#: config/i386/i386.opt:671
+#: config/i386/i386.opt:675
 #, no-c-format
 msgid "Support MMX and SSE built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:675
+#: config/i386/i386.opt:679
 #, no-c-format
 msgid "Support MMX, SSE and SSE2 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:679
+#: config/i386/i386.opt:683
 #, no-c-format
 msgid "Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:683
+#: config/i386/i386.opt:687
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3 and SSSE3 built-in functions and code "
 "generation."
 msgstr ""
 
-#: config/i386/i386.opt:687
+#: config/i386/i386.opt:691
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3, SSSE3 and SSE4.1 built-in functions and code "
 "generation."
 msgstr ""
 
-#: config/i386/i386.opt:691 config/i386/i386.opt:695
+#: config/i386/i386.opt:695 config/i386/i386.opt:699
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions "
 "and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:699
+#: config/i386/i386.opt:703
 #, no-c-format
 msgid ""
 "Do not support SSE4.1 and SSE4.2 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:707
+#: config/i386/i386.opt:711
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2 and AVX built-in "
 "functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:711
+#: config/i386/i386.opt:715
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and AVX2 built-in "
 "functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:715
+#: config/i386/i386.opt:719
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F "
 "built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:719
+#: config/i386/i386.opt:723
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F "
 "and AVX512PF built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:723
+#: config/i386/i386.opt:727
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F "
 "and AVX512ER built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:727
+#: config/i386/i386.opt:731
 #, 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."
 msgstr ""
 
-#: config/i386/i386.opt:731
+#: config/i386/i386.opt:735
 #, 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."
 msgstr ""
 
-#: config/i386/i386.opt:735
+#: config/i386/i386.opt:739
 #, 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."
 msgstr ""
 
-#: config/i386/i386.opt:739
+#: config/i386/i386.opt:743
 #, 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."
 msgstr ""
 
-#: config/i386/i386.opt:743
+#: config/i386/i386.opt:747
 #, 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."
 msgstr ""
 
-#: config/i386/i386.opt:747
+#: config/i386/i386.opt:751
 #, 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."
 msgstr ""
 
-#: config/i386/i386.opt:751
+#: config/i386/i386.opt:755
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
 "AVX5124FMAPS built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:755
+#: config/i386/i386.opt:759
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and "
 "AVX5124VNNIW built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:759
+#: config/i386/i386.opt:763
 #, 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."
 msgstr ""
 
-#: config/i386/i386.opt:763
+#: config/i386/i386.opt:767
 #, 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."
 msgstr ""
 
-#: config/i386/i386.opt:767
+#: config/i386/i386.opt:771
 #, no-c-format
 msgid "Support AVX512VNNI built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:771
+#: config/i386/i386.opt:775
 #, 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."
 msgstr ""
 
-#: config/i386/i386.opt:775
+#: config/i386/i386.opt:779
 #, no-c-format
 msgid "Support AVX512VP2INTERSECT built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:779
+#: config/i386/i386.opt:783
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and FMA built-in "
 "functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:783
+#: config/i386/i386.opt:787
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3 and SSE4A built-in functions and code "
 "generation."
 msgstr ""
 
-#: config/i386/i386.opt:787
+#: config/i386/i386.opt:791
 #, no-c-format
 msgid "Support FMA4 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:791
+#: config/i386/i386.opt:795
 #, no-c-format
 msgid "Support XOP built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:795
+#: config/i386/i386.opt:799
 #, no-c-format
 msgid "Support LWP built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:799
+#: config/i386/i386.opt:803
 #, no-c-format
 msgid ""
 "Support code generation of Advanced Bit Manipulation (ABM) instructions."
 msgstr ""
 
-#: config/i386/i386.opt:803
+#: config/i386/i386.opt:807
 #, no-c-format
 msgid "Support code generation of popcnt instruction."
 msgstr ""
 
-#: config/i386/i386.opt:807
+#: config/i386/i386.opt:811
 #, no-c-format
 msgid "Support PCONFIG built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:811
+#: config/i386/i386.opt:815
 #, no-c-format
 msgid "Support WBNOINVD built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:815
+#: config/i386/i386.opt:819
 #, no-c-format
 msgid "Support PTWRITE built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:819
+#: config/i386/i386.opt:823
 #, no-c-format
 msgid "Support UINTR built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:823
+#: config/i386/i386.opt:827
 #, no-c-format
 msgid "Support SGX built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:827
+#: config/i386/i386.opt:831
 #, no-c-format
 msgid "Support RDPID built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:831
+#: config/i386/i386.opt:835
 #, no-c-format
 msgid "Support GFNI built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:835
+#: config/i386/i386.opt:839
 #, no-c-format
 msgid "Support VAES built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:839
+#: config/i386/i386.opt:843
 #, no-c-format
 msgid "Support VPCLMULQDQ built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:843
+#: config/i386/i386.opt:847
 #, no-c-format
 msgid "Support BMI built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:847
+#: config/i386/i386.opt:851
 #, no-c-format
 msgid "Support BMI2 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:851
+#: config/i386/i386.opt:855
 #, no-c-format
 msgid "Support LZCNT built-in function and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:855
+#: config/i386/i386.opt:859
 #, no-c-format
 msgid "Support Hardware Lock Elision prefixes."
 msgstr ""
 
-#: config/i386/i386.opt:859
+#: config/i386/i386.opt:863
 #, no-c-format
 msgid "Support RDSEED instruction."
 msgstr ""
 
-#: config/i386/i386.opt:863
+#: config/i386/i386.opt:867
 #, no-c-format
 msgid "Support PREFETCHW instruction."
 msgstr ""
 
-#: config/i386/i386.opt:867
+#: config/i386/i386.opt:871
 #, no-c-format
 msgid "Support flag-preserving add-carry instructions."
 msgstr ""
 
-#: config/i386/i386.opt:871
+#: config/i386/i386.opt:875
 #, no-c-format
 msgid "Support CLFLUSHOPT instructions."
 msgstr ""
 
-#: config/i386/i386.opt:875
+#: config/i386/i386.opt:879
 #, no-c-format
 msgid "Support CLWB instruction."
 msgstr ""
 
-#: config/i386/i386.opt:882
+#: config/i386/i386.opt:886
 #, no-c-format
 msgid "Support FXSAVE and FXRSTOR instructions."
 msgstr ""
 
-#: config/i386/i386.opt:886
+#: config/i386/i386.opt:890
 #, no-c-format
 msgid "Support XSAVE and XRSTOR instructions."
 msgstr ""
 
-#: config/i386/i386.opt:890
+#: config/i386/i386.opt:894
 #, no-c-format
 msgid "Support XSAVEOPT instruction."
 msgstr ""
 
-#: config/i386/i386.opt:894
+#: config/i386/i386.opt:898
 #, no-c-format
 msgid "Support XSAVEC instructions."
 msgstr ""
 
-#: config/i386/i386.opt:898
+#: config/i386/i386.opt:902
 #, no-c-format
 msgid "Support XSAVES and XRSTORS instructions."
 msgstr ""
 
-#: config/i386/i386.opt:902
+#: config/i386/i386.opt:906
 #, no-c-format
 msgid "Support TBM built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:906
+#: config/i386/i386.opt:910
 #, no-c-format
 msgid "Support code generation of cmpxchg16b instruction."
 msgstr ""
 
-#: config/i386/i386.opt:910
+#: config/i386/i386.opt:914
 #, no-c-format
 msgid "Support code generation of sahf instruction in 64bit x86-64 code."
 msgstr ""
 
-#: config/i386/i386.opt:914
+#: config/i386/i386.opt:918
 #, no-c-format
 msgid "Support code generation of movbe instruction."
 msgstr ""
 
-#: config/i386/i386.opt:918
+#: config/i386/i386.opt:922
 #, no-c-format
 msgid "Support code generation of crc32 instruction."
 msgstr ""
 
-#: config/i386/i386.opt:922
+#: config/i386/i386.opt:926
 #, no-c-format
 msgid "Support AES built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:926
+#: config/i386/i386.opt:930
 #, no-c-format
 msgid "Support SHA1 and SHA256 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:930
+#: config/i386/i386.opt:934
 #, no-c-format
 msgid "Support PCLMUL built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:934
+#: config/i386/i386.opt:938
 #, no-c-format
 msgid "Encode SSE instructions with VEX prefix."
 msgstr ""
 
-#: config/i386/i386.opt:938
+#: config/i386/i386.opt:942
 #, no-c-format
 msgid "Support FSGSBASE built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:942
+#: config/i386/i386.opt:946
 #, no-c-format
 msgid "Support RDRND built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:946
+#: config/i386/i386.opt:950
 #, no-c-format
 msgid "Support F16C built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:950
+#: config/i386/i386.opt:954
 #, no-c-format
 msgid "Support PREFETCHWT1 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:954
+#: config/i386/i386.opt:958
 #, no-c-format
 msgid "Emit profiling counter call at function entry before prologue."
 msgstr ""
 
-#: config/i386/i386.opt:958
+#: config/i386/i386.opt:962
 #, no-c-format
 msgid "Generate __mcount_loc section with all mcount or __fentry__ calls."
 msgstr ""
 
-#: config/i386/i386.opt:962 config/s390/s390.opt:311
+#: config/i386/i386.opt:966 config/s390/s390.opt:311
 #, no-c-format
 msgid ""
 "Generate mcount/__fentry__ calls as nops. To activate they need to be "
 "patched in."
 msgstr ""
 
-#: config/i386/i386.opt:967
+#: config/i386/i386.opt:971
 #, no-c-format
 msgid "Set name of __fentry__ symbol called at function entry."
 msgstr ""
 
-#: config/i386/i386.opt:971
+#: config/i386/i386.opt:975
 #, no-c-format
 msgid "Set name of section to record mrecord-mcount calls."
 msgstr ""
 
-#: config/i386/i386.opt:975
+#: config/i386/i386.opt:979
 #, no-c-format
 msgid "Skip setting up RAX register when passing variable arguments."
 msgstr ""
 
-#: config/i386/i386.opt:979
+#: config/i386/i386.opt:983
 #, no-c-format
 msgid ""
 "Expand 32bit/64bit integer divide into 8bit unsigned integer divide with run-"
 "time check."
 msgstr ""
 
-#: config/i386/i386.opt:983
+#: config/i386/i386.opt:987
 #, no-c-format
 msgid "Split 32-byte AVX unaligned load."
 msgstr ""
 
-#: config/i386/i386.opt:987
+#: config/i386/i386.opt:991
 #, no-c-format
 msgid "Split 32-byte AVX unaligned store."
 msgstr ""
 
-#: config/i386/i386.opt:991
+#: config/i386/i386.opt:995
 #, no-c-format
 msgid "Support RTM built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:999
+#: config/i386/i386.opt:1003
 #, no-c-format
 msgid "Support MWAITX and MONITORX built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1003
+#: config/i386/i386.opt:1007
 #, no-c-format
 msgid "Support CLZERO built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1007
+#: config/i386/i386.opt:1011
 #, no-c-format
 msgid "Support PKU built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1015
+#: config/i386/i386.opt:1019
 #, no-c-format
 msgid ""
 "Known stack protector guard (for use with the -mstack-protector-guard= "
 "option):"
 msgstr ""
 
-#: config/i386/i386.opt:1039
+#: config/i386/i386.opt:1043
 #, no-c-format
 msgid "Use the given symbol for addressing the stack-protector guard."
 msgstr ""
 
-#: config/i386/i386.opt:1050
+#: config/i386/i386.opt:1054
 #, no-c-format
 msgid ""
 "Enable shadow stack built-in functions from Control-flow Enforcement "
 "Technology (CET)."
 msgstr ""
 
-#: config/i386/i386.opt:1055
+#: config/i386/i386.opt:1059
 #, 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:1060
+#: config/i386/i386.opt:1064
 #, no-c-format
 msgid ""
 "Insert ENDBR instruction at function entry only via cf_check attribute for "
 "CET instrumentation."
 msgstr ""
 
-#: config/i386/i386.opt:1065
+#: config/i386/i386.opt:1069
 #, no-c-format
 msgid "Make all function calls indirect."
 msgstr ""
 
-#: config/i386/i386.opt:1069
+#: config/i386/i386.opt:1073
 #, no-c-format
 msgid "Convert indirect call and jump to call and return thunks."
 msgstr ""
 
-#: config/i386/i386.opt:1073
+#: config/i386/i386.opt:1077
 #, no-c-format
 msgid "Convert function return to call and return thunk."
 msgstr ""
 
-#: config/i386/i386.opt:1077 config/s390/s390.opt:277
+#: config/i386/i386.opt:1081 config/s390/s390.opt:277
 #, no-c-format
 msgid ""
 "Known indirect branch choices (for use with the -mindirect-branch=/-"
 "mfunction-return= options):"
 msgstr ""
 
-#: config/i386/i386.opt:1093
+#: config/i386/i386.opt:1097
 #, 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:1097
+#: config/i386/i386.opt:1101
 #, no-c-format
 msgid "Force indirect call and jump via register."
 msgstr ""
 
-#: config/i386/i386.opt:1101
+#: config/i386/i386.opt:1105
 #, no-c-format
 msgid "Support MOVDIRI built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1105
+#: config/i386/i386.opt:1109
 #, no-c-format
 msgid "Support MOVDIR64B built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1109
+#: config/i386/i386.opt:1113
 #, no-c-format
 msgid "Support WAITPKG built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1113
+#: config/i386/i386.opt:1117
 #, no-c-format
 msgid "Support CLDEMOTE built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1117
+#: config/i386/i386.opt:1121
 #, no-c-format
 msgid "Instrument function exit in instrumented functions with __fentry__."
 msgstr ""
 
-#: config/i386/i386.opt:1121
+#: config/i386/i386.opt:1125
 #, no-c-format
 msgid "Known choices for return instrumentation with -minstrument-return=:"
 msgstr ""
 
-#: config/i386/i386.opt:1134
+#: config/i386/i386.opt:1138
 #, no-c-format
 msgid ""
 "Generate a __return_loc section pointing to all return instrumentation code."
 msgstr ""
 
-#: config/i386/i386.opt:1142
+#: config/i386/i386.opt:1146
 #, no-c-format
 msgid ""
 "Known choices for mitigation against straight line speculation with -mharden-"
 "sls=:"
 msgstr ""
 
-#: config/i386/i386.opt:1158
+#: config/i386/i386.opt:1162
 #, 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:1163
+#: config/i386/i386.opt:1167
 #, no-c-format
 msgid "Support ENQCMD built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1167
+#: config/i386/i386.opt:1171
 #, no-c-format
 msgid "Support SERIALIZE built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1171
+#: config/i386/i386.opt:1175
 #, no-c-format
 msgid "Support TSXLDTRK built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1175
+#: config/i386/i386.opt:1179
 #, no-c-format
 msgid "Support AMX-TILE built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1179
+#: config/i386/i386.opt:1183
 #, no-c-format
 msgid "Support AMX-INT8 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1183
+#: config/i386/i386.opt:1187
 #, no-c-format
 msgid "Support AMX-BF16 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1187
+#: config/i386/i386.opt:1191
 #, no-c-format
 msgid "Support HRESET built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1191
+#: config/i386/i386.opt:1195
 #, no-c-format
 msgid "Support KL built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1195
+#: config/i386/i386.opt:1199
 #, no-c-format
 msgid "Support WIDEKL built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1199
+#: config/i386/i386.opt:1203
 #, 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:1204
+#: config/i386/i386.opt:1208
 #, no-c-format
 msgid "Emit GNU_PROPERTY_X86_ISA_1_NEEDED GNU property."
 msgstr ""
 
-#: config/i386/i386.opt:1208
+#: config/i386/i386.opt:1212
 #, no-c-format
 msgid "Support MWAIT and MONITOR built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1212
+#: config/i386/i386.opt:1216
 #, 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:1216
+#: config/i386/i386.opt:1220
 #, no-c-format
 msgid "Do not use GOT to access external symbols."
 msgstr ""
 
-#: config/i386/i386.opt:1220
+#: config/i386/i386.opt:1224
 #, no-c-format
 msgid "Instructions number above which STFL stall penalty can be compensated."
 msgstr ""
 
-#: config/i386/i386.opt:1224
+#: config/i386/i386.opt:1228
 #, 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:1229
+#: config/i386/i386.opt:1233
 #, 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:1234
+#: config/i386/i386.opt:1238
 #, 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:1239
+#: config/i386/i386.opt:1243
 #, 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:1244
+#: config/i386/i386.opt:1248
 #, no-c-format
 msgid "Support AMX-FP16 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1248
+#: config/i386/i386.opt:1252
 #, no-c-format
 msgid "Support PREFETCHI built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1252
+#: config/i386/i386.opt:1256
 #, no-c-format
 msgid "Support RAOINT built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1256
+#: config/i386/i386.opt:1260
 #, no-c-format
 msgid "Enable conservative small loop unrolling."
 msgstr ""
 
-#: config/i386/i386.opt:1260
+#: config/i386/i386.opt:1264
 #, no-c-format
 msgid ""
 "-mlam=[none|u48|u57] Instrument meta data position in user data pointers."
@@ -14100,719 +14090,733 @@ msgstr ""
 
 #: common.opt:587
 #, no-c-format
-msgid "Warn when a #warning directive is encountered."
+msgid ""
+"Complain when a command-line option is valid, but not applicable to the "
+"current front end."
 msgstr ""
 
 #: common.opt:591
 #, no-c-format
-msgid "Warn about uses of __attribute__((warning)) declarations."
+msgid "Warn when a #warning directive is encountered."
 msgstr ""
 
 #: common.opt:595
 #, no-c-format
-msgid "Warn if a deprecated compiler feature, class, method, or field is used."
+msgid "Warn about uses of __attribute__((warning)) declarations."
 msgstr ""
 
 #: common.opt:599
 #, no-c-format
-msgid "Warn about uses of __attribute__((deprecated)) declarations."
+msgid "Warn if a deprecated compiler feature, class, method, or field is used."
 msgstr ""
 
 #: common.opt:603
 #, no-c-format
-msgid "Warn when an optimization pass is disabled."
+msgid "Warn about uses of __attribute__((deprecated)) declarations."
 msgstr ""
 
 #: common.opt:607
 #, no-c-format
-msgid "Treat all warnings as errors."
+msgid "Warn when an optimization pass is disabled."
 msgstr ""
 
 #: common.opt:611
 #, no-c-format
-msgid "Treat specified warning as error."
+msgid "Treat all warnings as errors."
 msgstr ""
 
 #: common.opt:615
 #, no-c-format
-msgid "Print extra (possibly unwanted) warnings."
+msgid "Treat specified warning as error."
 msgstr ""
 
 #: common.opt:619
 #, no-c-format
-msgid "Exit on the first error occurred."
+msgid "Print extra (possibly unwanted) warnings."
 msgstr ""
 
 #: common.opt:623
 #, no-c-format
+msgid "Exit on the first error occurred."
+msgstr ""
+
+#: common.opt:627
+#, no-c-format
 msgid ""
 "-Wframe-larger-than=<byte-size>\tWarn if a function's stack frame requires "
 "in excess of <byte-size>."
 msgstr ""
 
-#: common.opt:627
+#: common.opt:631
 #, no-c-format
 msgid ""
 "Disable -Wframe-larger-than= warning.  Equivalent to -Wframe-larger-"
 "than=<SIZE_MAX> or larger."
 msgstr ""
 
-#: common.opt:631
+#: common.opt:635
 #, no-c-format
 msgid "Warn when attempting to free a non-heap object."
 msgstr ""
 
-#: common.opt:642
+#: common.opt:646
 #, no-c-format
 msgid "Warn when a switch case falls through."
 msgstr ""
 
-#: common.opt:650
+#: common.opt:654
 #, no-c-format
 msgid "Warn when an inlined function cannot be inlined."
 msgstr ""
 
-#: common.opt:654
+#: common.opt:658
 #, no-c-format
 msgid ""
 "Warn when an atomic memory model parameter is known to be outside the valid "
 "range."
 msgstr ""
 
-#: common.opt:661
+#: common.opt:665
 #, no-c-format
 msgid ""
 "-Wlarger-than=<byte-size>\tWarn if an object's size exceeds <byte-size>."
 msgstr ""
 
-#: common.opt:665
+#: common.opt:669
 #, no-c-format
 msgid ""
 "Disable -Wlarger-than= warning.  Equivalent to -Wlarger-than=<SIZE_MAX> or "
 "larger."
 msgstr ""
 
-#: common.opt:669
+#: common.opt:673
 #, no-c-format
 msgid "Warn if comparing pointer parameter with nonnull attribute with NULL."
 msgstr ""
 
-#: common.opt:673
+#: common.opt:677
 #, no-c-format
 msgid ""
 "Warn if dereferencing a NULL pointer may lead to erroneous or undefined "
 "behavior."
 msgstr ""
 
-#: common.opt:684
+#: common.opt:688
 #, no-c-format
 msgid ""
 "Warn about some C++ One Definition Rule violations during link time "
 "optimization."
 msgstr ""
 
-#: common.opt:688
+#: common.opt:692
 #, no-c-format
 msgid "Warn about overflow in arithmetic expressions."
 msgstr ""
 
-#: common.opt:692
+#: common.opt:696
 #, no-c-format
 msgid ""
 "During link time optimization warn about mismatched types of global "
 "declarations."
 msgstr ""
 
-#: common.opt:696
+#: common.opt:700
 #, no-c-format
 msgid "Warn when the packed attribute has no effect on struct layout."
 msgstr ""
 
-#: common.opt:700
+#: common.opt:704
 #, no-c-format
 msgid "Warn when padding is required to align structure members."
 msgstr ""
 
-#: common.opt:704
+#: common.opt:708
 #, no-c-format
 msgid "Issue warnings needed for strict compliance to the standard."
 msgstr ""
 
-#: common.opt:708
+#: common.opt:712
 #, no-c-format
 msgid ""
 "Warn about returning a pointer/reference to a local or temporary variable."
 msgstr ""
 
-#: common.opt:712
+#: common.opt:716
 #, no-c-format
 msgid "Warn when one variable shadows another.  Same as -Wshadow=global."
 msgstr ""
 
-#: common.opt:716
+#: common.opt:720
 #, no-c-format
 msgid "Warn when one variable shadows another (globally)."
 msgstr ""
 
-#: common.opt:720
+#: common.opt:724
 #, no-c-format
 msgid ""
 "Warn when one local variable shadows another local variable or parameter."
 msgstr ""
 
-#: common.opt:727
+#: common.opt:731
 #, no-c-format
 msgid ""
 "Warn when one local variable shadows another local variable or parameter of "
 "compatible type."
 msgstr ""
 
-#: common.opt:734
+#: common.opt:738
 #, no-c-format
 msgid "Warn when not issuing stack smashing protection for some reason."
 msgstr ""
 
-#: common.opt:738
+#: common.opt:742
 #, no-c-format
 msgid ""
 "-Wstack-usage=<byte-size>\tWarn if stack usage might exceed <byte-size>."
 msgstr ""
 
-#: common.opt:742
+#: common.opt:746
 #, no-c-format
 msgid ""
 "Disable Wstack-usage= warning.  Equivalent to Wstack-usage=<SIZE_MAX> or "
 "larger."
 msgstr ""
 
-#: common.opt:746 common.opt:750
+#: common.opt:750 common.opt:754
 #, no-c-format
 msgid "Warn about code which might break strict aliasing rules."
 msgstr ""
 
-#: common.opt:754 common.opt:758
+#: common.opt:758 common.opt:762
 #, no-c-format
 msgid "Warn about optimizations that assume that signed overflow is undefined."
 msgstr ""
 
-#: common.opt:762
+#: common.opt:766
 #, no-c-format
 msgid ""
 "Warn about functions which might be candidates for __attribute__((cold))."
 msgstr ""
 
-#: common.opt:766
+#: common.opt:770
 #, no-c-format
 msgid ""
 "Warn about functions which might be candidates for __attribute__((const))."
 msgstr ""
 
-#: common.opt:770
+#: common.opt:774
 #, no-c-format
 msgid ""
 "Warn about functions which might be candidates for __attribute__((pure))."
 msgstr ""
 
-#: common.opt:774
+#: common.opt:778
 #, no-c-format
 msgid ""
 "Warn about functions which might be candidates for __attribute__((noreturn))."
 msgstr ""
 
-#: common.opt:778
+#: common.opt:782
 #, no-c-format
 msgid ""
 "Warn about functions which might be candidates for __attribute__((malloc))."
 msgstr ""
 
-#: common.opt:782
+#: common.opt:786
 #, no-c-format
 msgid ""
 "Warn about C++ polymorphic types where adding final keyword would improve "
 "code quality."
 msgstr ""
 
-#: common.opt:786
+#: common.opt:790
 #, no-c-format
 msgid ""
 "Warn about C++ virtual methods where adding final keyword would improve code "
 "quality."
 msgstr ""
 
-#: common.opt:790
+#: common.opt:794
 #, no-c-format
 msgid ""
 "Warn about statements between switch's controlling expression and the first "
 "case."
 msgstr ""
 
-#: common.opt:795
+#: common.opt:799
 #, no-c-format
 msgid "Do not suppress warnings from system headers."
 msgstr ""
 
-#: common.opt:799
+#: common.opt:803
 #, no-c-format
 msgid "Warn whenever a trampoline is generated."
 msgstr ""
 
-#: common.opt:803
+#: common.opt:807
 #, no-c-format
 msgid ""
 "Warn about cases where -ftrivial-auto-var-init cannot initialize an auto "
 "variable."
 msgstr ""
 
-#: common.opt:807
+#: common.opt:811
 #, no-c-format
 msgid ""
 "Warn if a comparison is always true or always false due to the limited range "
 "of the data type."
 msgstr ""
 
-#: common.opt:811
+#: common.opt:815
 #, no-c-format
 msgid "Warn about uninitialized automatic variables."
 msgstr ""
 
-#: common.opt:815
+#: common.opt:819
 #, no-c-format
 msgid "Warn about maybe uninitialized automatic variables."
 msgstr ""
 
-#: common.opt:823
+#: common.opt:827
 #, no-c-format
 msgid "Enable all -Wunused- warnings."
 msgstr ""
 
-#: common.opt:827
+#: common.opt:831
 #, no-c-format
 msgid "Warn when a function parameter is only set, otherwise unused."
 msgstr ""
 
-#: common.opt:831
+#: common.opt:835
 #, no-c-format
 msgid "Warn when a variable is only set, otherwise unused."
 msgstr ""
 
-#: common.opt:835
+#: common.opt:839
 #, no-c-format
 msgid "Warn when a function is unused."
 msgstr ""
 
-#: common.opt:839
+#: common.opt:843
 #, no-c-format
 msgid "Warn when a label is unused."
 msgstr ""
 
-#: common.opt:843
+#: common.opt:847
 #, no-c-format
 msgid "Warn when a function parameter is unused."
 msgstr ""
 
-#: common.opt:847
+#: common.opt:851
 #, no-c-format
 msgid "Warn when an expression value is unused."
 msgstr ""
 
-#: common.opt:851
+#: common.opt:855
 #, no-c-format
 msgid "Warn when a variable is unused."
 msgstr ""
 
-#: common.opt:855
+#: common.opt:859
 #, no-c-format
 msgid "Warn in case profiles in -fprofile-use do not match."
 msgstr ""
 
-#: common.opt:859
+#: common.opt:863
 #, no-c-format
 msgid ""
 "Warn in case a function ends earlier than it begins due to an invalid "
 "linenum macros."
 msgstr ""
 
-#: common.opt:863
+#: common.opt:867
 #, no-c-format
 msgid "Warn in case profiles in -fprofile-use do not exist."
 msgstr ""
 
-#: common.opt:867
+#: common.opt:871
 #, no-c-format
 msgid "Warn when a vector operation is compiled outside the SIMD."
 msgstr ""
 
-#: common.opt:871
+#: common.opt:875
 #, no-c-format
 msgid "Warn about unsupported features in ThreadSanitizer."
 msgstr ""
 
-#: common.opt:887
+#: common.opt:891
 #, no-c-format
 msgid "-aux-info <file>\tEmit declaration information into <file>."
 msgstr ""
 
-#: common.opt:900
+#: common.opt:904
 #, no-c-format
 msgid "-d<letters>\tEnable dumps from specific passes of the compiler."
 msgstr ""
 
-#: common.opt:904
+#: common.opt:908
 #, no-c-format
 msgid "-dumpbase <file>\tSet the file basename to be used for dumps."
 msgstr ""
 
-#: common.opt:908
+#: common.opt:912
 #, no-c-format
 msgid ""
 "-dumpbase-ext .<ext>    Drop a trailing .<ext> from the dump basename to "
 "name auxiliary output files."
 msgstr ""
 
-#: common.opt:912
+#: common.opt:916
 #, no-c-format
 msgid "-dumpdir <dir>\tSet the directory name to be used for dumps."
 msgstr ""
 
-#: common.opt:1013
+#: common.opt:1017
 #, no-c-format
 msgid "The version of the C++ ABI in use."
 msgstr ""
 
-#: common.opt:1017
+#: common.opt:1021
 #, no-c-format
 msgid "Aggressively optimize loops using language constraints."
 msgstr ""
 
-#: common.opt:1021
+#: common.opt:1025
 #, no-c-format
 msgid "Align the start of functions."
 msgstr ""
 
-#: common.opt:1031
+#: common.opt:1035
 #, no-c-format
 msgid "Align labels which are only reached by jumping."
 msgstr ""
 
-#: common.opt:1038
+#: common.opt:1042
 #, no-c-format
 msgid "Align all labels."
 msgstr ""
 
-#: common.opt:1045
+#: common.opt:1049
 #, no-c-format
 msgid "Align the start of loops."
 msgstr ""
 
-#: common.opt:1052
+#: common.opt:1056
 #, no-c-format
 msgid "Allow the compiler to introduce new data races on stores."
 msgstr ""
 
-#: common.opt:1056
+#: common.opt:1060
 #, no-c-format
 msgid "Enable static analysis pass."
 msgstr ""
 
-#: common.opt:1076
+#: common.opt:1080
 #, no-c-format
 msgid "Select what to sanitize."
 msgstr ""
 
-#: common.opt:1080
+#: common.opt:1084
 #, no-c-format
 msgid "Select type of coverage sanitization."
 msgstr ""
 
-#: common.opt:1093
+#: common.opt:1097
 #, no-c-format
 msgid "-fasan-shadow-offset=<number>\tUse custom shadow memory offset."
 msgstr ""
 
-#: common.opt:1097
+#: common.opt:1101
 #, no-c-format
 msgid ""
 "-fsanitize-sections=<sec1,sec2,...>\tSanitize global variables in user-"
 "defined sections."
 msgstr ""
 
-#: common.opt:1102
+#: common.opt:1106
 #, no-c-format
 msgid "After diagnosing undefined behavior attempt to continue execution."
 msgstr ""
 
-#: common.opt:1106
+#: common.opt:1110
 #, no-c-format
 msgid "This switch is deprecated; use -fsanitize-recover= instead."
 msgstr ""
 
-#: common.opt:1110
+#: common.opt:1114
 #, no-c-format
 msgid "Use traps instead of diagnostics of undefined behavior sanitizers."
 msgstr ""
 
-#: common.opt:1120
+#: common.opt:1124
 #, no-c-format
 msgid "This switch is deprecated; use -fsanitize-trap= instead."
 msgstr ""
 
-#: common.opt:1124
+#: common.opt:1128
 #, no-c-format
 msgid "Generate unwind tables that are exact at each instruction boundary."
 msgstr ""
 
-#: common.opt:1128
+#: common.opt:1132
 #, no-c-format
 msgid "Generate auto-inc/dec instructions."
 msgstr ""
 
-#: common.opt:1132
+#: common.opt:1136
 #, no-c-format
 msgid ""
 "Use sample profile information for call graph node weights. The default "
 "profile file is fbdata.afdo in 'pwd'."
 msgstr ""
 
-#: common.opt:1137
+#: common.opt:1141
 #, no-c-format
 msgid ""
 "Use sample profile information for call graph node weights. The profile file "
 "is specified in the argument."
 msgstr ""
 
-#: common.opt:1146
+#: common.opt:1150
 #, no-c-format
 msgid "Generate code to check bounds before indexing arrays."
 msgstr ""
 
-#: common.opt:1150
+#: common.opt:1154
 #, no-c-format
 msgid "Replace add, compare, branch with branch on count register."
 msgstr ""
 
-#: common.opt:1154
+#: common.opt:1158
 #, no-c-format
 msgid "Use profiling information for branch probabilities."
 msgstr ""
 
-#: common.opt:1170
+#: common.opt:1174
 #, no-c-format
 msgid "Output callgraph information on a per-file basis."
 msgstr ""
 
-#: common.opt:1174
+#: common.opt:1178
 #, no-c-format
 msgid "Output callgraph information on a per-file basis with decorations."
 msgstr ""
 
-#: common.opt:1178
+#: common.opt:1182
 #, no-c-format
 msgid ""
 "-fcall-saved-<register>\tMark <register> as being preserved across functions."
 msgstr ""
 
-#: common.opt:1182
+#: common.opt:1186
 #, no-c-format
 msgid ""
 "-fcall-used-<register>\tMark <register> as being corrupted by function calls."
 msgstr ""
 
-#: common.opt:1189
+#: common.opt:1193
 #, no-c-format
 msgid "Save registers around function calls."
 msgstr ""
 
-#: common.opt:1193
+#: common.opt:1197
 #, no-c-format
 msgid "This switch is deprecated; do not use."
 msgstr ""
 
-#: common.opt:1197
+#: common.opt:1201
 #, no-c-format
 msgid "Check the return value of new in C++."
 msgstr ""
 
-#: common.opt:1201 common.opt:1205
+#: common.opt:1205 common.opt:1209
 #, no-c-format
 msgid "Perform internal consistency checkings."
 msgstr ""
 
-#: common.opt:1209
+#: common.opt:1213
+#, no-c-format
+msgid ""
+"For -f*-prefix-map= options compare canonicalized pathnames rather than just "
+"strings."
+msgstr ""
+
+#: common.opt:1217
 #, no-c-format
 msgid "Enable code hoisting."
 msgstr ""
 
-#: common.opt:1213
+#: common.opt:1221
 #, no-c-format
 msgid ""
 "Looks for opportunities to reduce stack adjustments and stack references."
 msgstr ""
 
-#: common.opt:1217
+#: common.opt:1225
 #, no-c-format
 msgid "Put uninitialized globals in the common section."
 msgstr ""
 
-#: common.opt:1225
+#: common.opt:1233
 #, no-c-format
 msgid ""
 "-fcompare-debug[=<opts>]\tCompile with and without e.g. -gtoggle, and "
 "compare the final-insns dump."
 msgstr ""
 
-#: common.opt:1229
+#: common.opt:1237
 #, no-c-format
 msgid "Run only the second compilation of -fcompare-debug."
 msgstr ""
 
-#: common.opt:1233
+#: common.opt:1241
 #, no-c-format
 msgid "Perform comparison elimination after register allocation has finished."
 msgstr ""
 
-#: common.opt:1237
+#: common.opt:1245
 #, no-c-format
 msgid "Do not perform optimizations increasing noticeably stack usage."
 msgstr ""
 
-#: common.opt:1241
+#: common.opt:1249
 #, no-c-format
 msgid "Perform a register copy-propagation optimization pass."
 msgstr ""
 
-#: common.opt:1245
+#: common.opt:1253
 #, no-c-format
 msgid "Perform cross-jumping optimization."
 msgstr ""
 
-#: common.opt:1249
+#: common.opt:1257
 #, no-c-format
 msgid "When running CSE, follow jumps to their targets."
 msgstr ""
 
-#: common.opt:1257
+#: common.opt:1265
 #, no-c-format
 msgid "Omit range reduction step when performing complex division."
 msgstr ""
 
-#: common.opt:1261
+#: common.opt:1269
 #, no-c-format
 msgid "Complex multiplication and division follow Fortran rules."
 msgstr ""
 
-#: common.opt:1265
+#: common.opt:1273
 #, no-c-format
 msgid "Place data items into their own section."
 msgstr ""
 
-#: common.opt:1269
+#: common.opt:1277
 #, no-c-format
 msgid "List all available debugging counters with their limits and counts."
 msgstr ""
 
-#: common.opt:1273
+#: common.opt:1281
 #, no-c-format
 msgid ""
 "-fdbg-cnt=<counter>[:<lower_limit1>-]<upper_limit1>[:<lower_limit2>-"
 "<upper_limit2>:...][,<counter>:...]\tSet the debug counter limit."
 msgstr ""
 
-#: common.opt:1277
+#: common.opt:1285
 #, no-c-format
 msgid ""
 "-fdebug-prefix-map=<old>=<new>\tMap one directory name to another in debug "
 "information."
 msgstr ""
 
-#: common.opt:1281
+#: common.opt:1289
 #, no-c-format
 msgid ""
 "-ffile-prefix-map=<old>=<new>\tMap one directory name to another in "
 "compilation result."
 msgstr ""
 
-#: common.opt:1285
+#: common.opt:1293
 #, no-c-format
 msgid "Output .debug_types section when using DWARF v4 debuginfo."
 msgstr ""
 
-#: common.opt:1291
+#: common.opt:1299
 #, no-c-format
 msgid "Defer popping functions args from stack until later."
 msgstr ""
 
-#: common.opt:1295
+#: common.opt:1303
 #, no-c-format
 msgid "Attempt to fill delay slots of branch instructions."
 msgstr ""
 
-#: common.opt:1299
+#: common.opt:1307
 #, no-c-format
 msgid "Delete dead instructions that may throw exceptions."
 msgstr ""
 
-#: common.opt:1303
+#: common.opt:1311
 #, no-c-format
 msgid "Delete useless null pointer checks."
 msgstr ""
 
-#: common.opt:1307
+#: common.opt:1315
 #, no-c-format
 msgid ""
 "Stream extra data to support more aggressive devirtualization in LTO local "
 "transformation mode."
 msgstr ""
 
-#: common.opt:1311
+#: common.opt:1319
 #, no-c-format
 msgid "Perform speculative devirtualization."
 msgstr ""
 
-#: common.opt:1315
+#: common.opt:1323
 #, no-c-format
 msgid "Try to convert virtual calls to direct ones."
 msgstr ""
 
-#: common.opt:1319
+#: common.opt:1327
 #, no-c-format
 msgid ""
 "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source "
 "location at the beginning of line-wrapped diagnostics."
 msgstr ""
 
-#: common.opt:1336
+#: common.opt:1344
 #, no-c-format
 msgid "Show the source line with a caret indicating the column."
 msgstr ""
 
-#: common.opt:1340
+#: common.opt:1348
 #, no-c-format
 msgid "Show labels annotating ranges of source code when showing source."
 msgstr ""
 
-#: common.opt:1344
+#: common.opt:1352
 #, no-c-format
 msgid "Show line numbers in the left margin when showing source."
 msgstr ""
 
-#: common.opt:1352
+#: common.opt:1360
 #, no-c-format
 msgid "-fdiagnostics-color=[never|always|auto]\tColorize diagnostics."
 msgstr ""
 
-#: common.opt:1372
+#: common.opt:1380
 #, no-c-format
 msgid "-fdiagnostics-urls=[never|always|auto]\tEmbed URLs in diagnostics."
 msgstr ""
 
-#: common.opt:1392
+#: common.opt:1400
 #, no-c-format
 msgid ""
 "-fdiagnostics-column-unit=[display|byte]\tSelect whether column numbers are "
 "output as display columns (default) or raw bytes."
 msgstr ""
 
-#: common.opt:1396
+#: common.opt:1404
 #, no-c-format
 msgid ""
 "-fdiagnostics-column-origin=<number>\tSet the number of the first column.  "
@@ -14820,449 +14824,449 @@ msgid ""
 "based, for example."
 msgstr ""
 
-#: common.opt:1400
+#: common.opt:1408
 #, no-c-format
 msgid ""
 "-fdiagnostics-format=[text|sarif-stderr|sarif-file|json|json-stderr|json-"
 "file]\tSelect output format."
 msgstr ""
 
-#: common.opt:1404
+#: common.opt:1412
 #, 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."
 msgstr ""
 
-#: common.opt:1451
+#: common.opt:1459
 #, no-c-format
 msgid "Print fix-it hints in machine-readable form."
 msgstr ""
 
-#: common.opt:1455
+#: common.opt:1463
 #, no-c-format
 msgid "Print fix-it hints to stderr in unified diff format."
 msgstr ""
 
-#: common.opt:1459
+#: common.opt:1467
 #, no-c-format
 msgid ""
 "Amend appropriate diagnostic messages with the command line option that "
 "controls them."
 msgstr ""
 
-#: common.opt:1463
+#: common.opt:1471
 #, no-c-format
 msgid "Print CWE identifiers for diagnostic messages, where available."
 msgstr ""
 
-#: common.opt:1467
+#: common.opt:1475
 #, no-c-format
 msgid "Print any rules associated with diagnostic messages."
 msgstr ""
 
-#: common.opt:1471
+#: common.opt:1479
 #, no-c-format
 msgid ""
 "Specify how to print any control-flow path associated with a diagnostic."
 msgstr ""
 
-#: common.opt:1475
+#: common.opt:1483
 #, no-c-format
 msgid ""
 "Turn off any diagnostics features that complicate the output, such as line "
 "numbers, color, and warning URLs."
 msgstr ""
 
-#: common.opt:1479
+#: common.opt:1487
 #, no-c-format
 msgid ""
 "-ftabstop=<number>      Distance between tab stops for column reporting."
 msgstr ""
 
-#: common.opt:1495
+#: common.opt:1503
 #, no-c-format
 msgid "Show stack depths of events in paths."
 msgstr ""
 
-#: common.opt:1499
+#: common.opt:1507
 #, no-c-format
 msgid "Set minimum width of left margin of source code when showing source."
 msgstr ""
 
-#: common.opt:1503
+#: common.opt:1511
 #, no-c-format
 msgid ""
 "-fdisable-[tree|rtl|ipa]-<pass>=range1+range2\tDisable an optimization pass."
 msgstr ""
 
-#: common.opt:1507
+#: common.opt:1515
 #, no-c-format
 msgid ""
 "-fenable-[tree|rtl|ipa]-<pass>=range1+range2\tEnable an optimization pass."
 msgstr ""
 
-#: common.opt:1511
+#: common.opt:1519
 #, no-c-format
 msgid "-fdump-<type>\tDump various compiler internals to a file."
 msgstr ""
 
-#: common.opt:1518
+#: common.opt:1526
 #, no-c-format
 msgid ""
 "-fdump-final-insns=filename\tDump to filename the insns at the end of "
 "translation."
 msgstr ""
 
-#: common.opt:1522
+#: common.opt:1530
 #, no-c-format
 msgid "-fdump-go-spec=filename\tWrite all declarations to file as Go code."
 msgstr ""
 
-#: common.opt:1526
+#: common.opt:1534
 #, no-c-format
 msgid "Suppress output of addresses in debugging dumps."
 msgstr ""
 
-#: common.opt:1530
+#: common.opt:1538
 #, no-c-format
 msgid ""
 "Collect and dump debug information into temporary file if ICE in C/C++ "
 "compiler occurred."
 msgstr ""
 
-#: common.opt:1535
+#: common.opt:1543
 #, no-c-format
 msgid ""
 "Dump detailed information on GCC's internal representation of source code "
 "locations."
 msgstr ""
 
-#: common.opt:1539
+#: common.opt:1547
 #, no-c-format
 msgid "Dump optimization passes."
 msgstr ""
 
-#: common.opt:1543
+#: common.opt:1551
 #, no-c-format
 msgid ""
 "Suppress output of instruction numbers, line number notes and addresses in "
 "debugging dumps."
 msgstr ""
 
-#: common.opt:1547
+#: common.opt:1555
 #, no-c-format
 msgid "Suppress output of previous and next insn numbers in debugging dumps."
 msgstr ""
 
-#: common.opt:1551
+#: common.opt:1559
 #, no-c-format
 msgid "Enable CFI tables via GAS assembler directives."
 msgstr ""
 
-#: common.opt:1555
+#: common.opt:1563
 #, no-c-format
 msgid "Perform early inlining."
 msgstr ""
 
-#: common.opt:1563
+#: common.opt:1571
 #, no-c-format
 msgid "Perform interprocedural reduction of aggregates."
 msgstr ""
 
-#: common.opt:1567
+#: common.opt:1575
 #, no-c-format
 msgid "Perform unused symbol elimination in debug info."
 msgstr ""
 
-#: common.opt:1571
+#: common.opt:1579
 #, no-c-format
 msgid "Perform unused type elimination in debug info."
 msgstr ""
 
-#: common.opt:1575
+#: common.opt:1583
 #, no-c-format
 msgid "Do not suppress C++ class debug information."
 msgstr ""
 
-#: common.opt:1579
+#: common.opt:1587
 #, no-c-format
 msgid "Enable exception handling."
 msgstr ""
 
-#: common.opt:1583
+#: common.opt:1591
 #, no-c-format
 msgid "Perform a number of minor, expensive optimizations."
 msgstr ""
 
-#: common.opt:1587
+#: common.opt:1595
 #, no-c-format
 msgid ""
 "-fexcess-precision=[fast|standard|16]\tSpecify handling of excess floating-"
 "point precision."
 msgstr ""
 
-#: common.opt:1605
+#: common.opt:1613
 #, no-c-format
 msgid ""
 "-fpermitted-flt-eval-methods=[c11|ts-18661]\tSpecify which values of "
 "FLT_EVAL_METHOD are permitted."
 msgstr ""
 
-#: common.opt:1621
+#: common.opt:1629
 #, no-c-format
 msgid ""
 "Output lto objects containing both the intermediate language and binary "
 "output."
 msgstr ""
 
-#: common.opt:1625
+#: common.opt:1633
 #, no-c-format
 msgid "Assume no NaNs or infinities are generated."
 msgstr ""
 
-#: common.opt:1629
+#: common.opt:1637
 #, no-c-format
 msgid ""
 "Assume that loops with an exit will terminate and not loop indefinitely."
 msgstr ""
 
-#: common.opt:1633
+#: common.opt:1641
 #, no-c-format
 msgid ""
 "-ffixed-<register>\tMark <register> as being unavailable to the compiler."
 msgstr ""
 
-#: common.opt:1637
+#: common.opt:1645
 #, no-c-format
 msgid "Don't allocate floats and doubles in extended-precision registers."
 msgstr ""
 
-#: common.opt:1645
+#: common.opt:1653
 #, no-c-format
 msgid "Perform a forward propagation pass on RTL."
 msgstr ""
 
-#: common.opt:1649
+#: common.opt:1657
 #, no-c-format
 msgid ""
 "-ffp-contract=[off|on|fast]\tPerform floating-point expression contraction."
 msgstr ""
 
-#: common.opt:1666
+#: common.opt:1674
 #, no-c-format
 msgid ""
 "Allow built-in functions ceil, floor, round, trunc to raise \"inexact\" "
 "exceptions."
 msgstr ""
 
-#: common.opt:1673
+#: common.opt:1681
 #, no-c-format
 msgid "Allow function addresses to be held in registers."
 msgstr ""
 
-#: common.opt:1677
+#: common.opt:1685
 #, no-c-format
 msgid "Place each function into its own section."
 msgstr ""
 
-#: common.opt:1681
+#: common.opt:1689
 #, no-c-format
 msgid "Perform global common subexpression elimination."
 msgstr ""
 
-#: common.opt:1685
+#: common.opt:1693
 #, no-c-format
 msgid ""
 "Perform enhanced load motion during global common subexpression elimination."
 msgstr ""
 
-#: common.opt:1689
+#: common.opt:1697
 #, no-c-format
 msgid "Perform store motion after global common subexpression elimination."
 msgstr ""
 
-#: common.opt:1693
+#: common.opt:1701
 #, no-c-format
 msgid ""
 "Perform redundant load after store elimination in global common "
 "subexpression elimination."
 msgstr ""
 
-#: common.opt:1698
+#: common.opt:1706
 #, no-c-format
 msgid ""
 "Perform global common subexpression elimination after register allocation "
 "has finished."
 msgstr ""
 
-#: common.opt:1715
+#: common.opt:1723
 #, no-c-format
 msgid ""
 "-fgnat-encodings=[all|gdb|minimal]\tSelect the balance between GNAT "
 "encodings and standard DWARF emitted in the debug information."
 msgstr ""
 
-#: common.opt:1720
+#: common.opt:1728
 #, no-c-format
 msgid "Enable in and out of Graphite representation."
 msgstr ""
 
-#: common.opt:1724
+#: common.opt:1732
 #, no-c-format
 msgid "Enable Graphite Identity transformation."
 msgstr ""
 
-#: common.opt:1728
+#: common.opt:1736
 #, no-c-format
 msgid ""
 "Enable hoisting adjacent loads to encourage generating conditional move "
 "instructions."
 msgstr ""
 
-#: common.opt:1737
+#: common.opt:1745
 #, no-c-format
 msgid ""
 "Improve GCC's ability to track column numbers in large source files, at the "
 "expense of slower compilation."
 msgstr ""
 
-#: common.opt:1742
+#: common.opt:1750
 #, no-c-format
 msgid "Mark all loops as parallel."
 msgstr ""
 
-#: common.opt:1746 common.opt:1754 common.opt:2971
+#: common.opt:1754 common.opt:1762 common.opt:2979
 #, no-c-format
 msgid "Enable loop nest transforms.  Same as -floop-nest-optimize."
 msgstr ""
 
-#: common.opt:1750
+#: common.opt:1758
 #, no-c-format
 msgid "Enable loop interchange on trees."
 msgstr ""
 
-#: common.opt:1758
+#: common.opt:1766
 #, no-c-format
 msgid "Perform unroll-and-jam on loops."
 msgstr ""
 
-#: common.opt:1762
+#: common.opt:1770
 #, no-c-format
 msgid "Enable support for GNU transactional memory."
 msgstr ""
 
-#: common.opt:1766
+#: common.opt:1774
 #, no-c-format
 msgid "Use STB_GNU_UNIQUE if supported by the assembler."
 msgstr ""
 
-#: common.opt:1774
+#: common.opt:1782
 #, no-c-format
 msgid "Enable the loop nest optimizer."
 msgstr ""
 
-#: common.opt:1778
+#: common.opt:1786
 #, no-c-format
 msgid "Force bitfield accesses to match their type width."
 msgstr ""
 
-#: common.opt:1782
+#: common.opt:1790
 #, no-c-format
 msgid "Merge adjacent stores."
 msgstr ""
 
-#: common.opt:1786
+#: common.opt:1794
 #, no-c-format
 msgid "Enable guessing of branch probabilities."
 msgstr ""
 
-#: common.opt:1790
+#: common.opt:1798
 #, no-c-format
 msgid "Harden conditionals not used in branches, checking reversed conditions."
 msgstr ""
 
-#: common.opt:1794
+#: common.opt:1802
 #, no-c-format
 msgid "Harden conditional branches by checking reversed conditions."
 msgstr ""
 
-#: common.opt:1802
+#: common.opt:1810
 #, no-c-format
 msgid "Process #ident directives."
 msgstr ""
 
-#: common.opt:1806
+#: common.opt:1814
 #, no-c-format
 msgid "Perform conversion of conditional jumps to branchless equivalents."
 msgstr ""
 
-#: common.opt:1810
+#: common.opt:1818
 #, no-c-format
 msgid "Perform conversion of conditional jumps to conditional execution."
 msgstr ""
 
-#: common.opt:1814
+#: common.opt:1822
 #, no-c-format
 msgid ""
 "-fstack-reuse=[all|named_vars|none]\tSet stack reuse level for local "
 "variables."
 msgstr ""
 
-#: common.opt:1830
+#: common.opt:1838
 #, no-c-format
 msgid "Convert conditional jumps in innermost loops to branchless equivalents."
 msgstr ""
 
-#: common.opt:1842
+#: common.opt:1850
 #, no-c-format
 msgid "Do not generate .size directives."
 msgstr ""
 
-#: common.opt:1846
+#: common.opt:1854
 #, no-c-format
 msgid "Perform indirect inlining."
 msgstr ""
 
-#: common.opt:1852
+#: common.opt:1860
 #, no-c-format
 msgid ""
 "Enable inlining of function declared \"inline\", disabling disables all "
 "inlining."
 msgstr ""
 
-#: common.opt:1856
+#: common.opt:1864
 #, no-c-format
 msgid ""
 "Integrate functions into their callers when code size is known not to grow."
 msgstr ""
 
-#: common.opt:1860
+#: common.opt:1868
 #, no-c-format
 msgid ""
 "Integrate functions not declared \"inline\" into their callers when "
 "profitable."
 msgstr ""
 
-#: common.opt:1864
+#: common.opt:1872
 #, no-c-format
 msgid "Integrate functions only required by their single caller."
 msgstr ""
 
-#: common.opt:1871
+#: common.opt:1879
 #, no-c-format
 msgid ""
 "-finline-limit=<number>\tLimit the size of inlined functions to <number>."
 msgstr ""
 
-#: common.opt:1875
+#: common.opt:1883
 #, no-c-format
 msgid ""
 "Inline __atomic operations when a lock free instruction sequence is "
 "available."
 msgstr ""
 
-#: common.opt:1882
+#: common.opt:1890
 #, no-c-format
 msgid ""
 "-fcf-protection=[full|branch|return|none|check]\tInstrument functions with "
@@ -15270,599 +15274,599 @@ msgid ""
 "valid targets."
 msgstr ""
 
-#: common.opt:1905
+#: common.opt:1913
 #, no-c-format
 msgid "Instrument function entry and exit with profiling calls."
 msgstr ""
 
-#: common.opt:1909
+#: common.opt:1917
 #, no-c-format
 msgid "Instrument function entry and exit with profiling calls invoked once."
 msgstr ""
 
-#: common.opt:1913
+#: common.opt:1921
 #, no-c-format
 msgid ""
 "-finstrument-functions-exclude-function-list=name,...\tDo not instrument "
 "listed functions."
 msgstr ""
 
-#: common.opt:1917
+#: common.opt:1925
 #, no-c-format
 msgid ""
 "-finstrument-functions-exclude-file-list=filename,...\tDo not instrument "
 "functions listed in files."
 msgstr ""
 
-#: common.opt:1921
+#: common.opt:1929
 #, no-c-format
 msgid "Perform interprocedural constant propagation."
 msgstr ""
 
-#: common.opt:1925
+#: common.opt:1933
 #, no-c-format
 msgid "Perform cloning to make Interprocedural constant propagation stronger."
 msgstr ""
 
-#: common.opt:1933
+#: common.opt:1941
 #, no-c-format
 msgid "Perform interprocedural bitwise constant propagation."
 msgstr ""
 
-#: common.opt:1937
+#: common.opt:1945
 #, no-c-format
 msgid "Perform interprocedural modref analysis."
 msgstr ""
 
-#: common.opt:1941
+#: common.opt:1949
 #, no-c-format
 msgid "Perform interprocedural profile propagation."
 msgstr ""
 
-#: common.opt:1945
+#: common.opt:1953
 #, no-c-format
 msgid "Perform interprocedural points-to analysis."
 msgstr ""
 
-#: common.opt:1949
+#: common.opt:1957
 #, no-c-format
 msgid "Discover pure and const functions."
 msgstr ""
 
-#: common.opt:1953
+#: common.opt:1961
 #, no-c-format
 msgid "Perform Identical Code Folding for functions and read-only variables."
 msgstr ""
 
-#: common.opt:1957
+#: common.opt:1965
 #, no-c-format
 msgid "Perform Identical Code Folding for functions."
 msgstr ""
 
-#: common.opt:1961
+#: common.opt:1969
 #, no-c-format
 msgid "Perform Identical Code Folding for variables."
 msgstr ""
 
-#: common.opt:1965
+#: common.opt:1973
 #, no-c-format
 msgid "Discover read-only and non addressable static variables."
 msgstr ""
 
-#: common.opt:1969
+#: common.opt:1977
 #, no-c-format
 msgid "Discover read-only, write-only and non-addressable static variables."
 msgstr ""
 
-#: common.opt:1973
+#: common.opt:1981
 #, no-c-format
 msgid "Reduce stack alignment on call sites if possible."
 msgstr ""
 
-#: common.opt:1985
+#: common.opt:1993
 #, no-c-format
 msgid "Perform IPA Value Range Propagation."
 msgstr ""
 
-#: common.opt:1989
+#: common.opt:1997
 #, no-c-format
 msgid "-fira-algorithm=[CB|priority]\tSet the used IRA algorithm."
 msgstr ""
 
-#: common.opt:1993
+#: common.opt:2001
 #, no-c-format
 msgid ""
 "Assume strict aliasing rules apply across (uninlined) function boundaries."
 msgstr ""
 
-#: common.opt:2006
+#: common.opt:2014
 #, no-c-format
 msgid "-fira-region=[one|all|mixed]\tSet regions for IRA."
 msgstr ""
 
-#: common.opt:2022
+#: common.opt:2030
 #, no-c-format
 msgid "Use IRA based register pressure calculation in RTL hoist optimizations."
 msgstr ""
 
-#: common.opt:2027
+#: common.opt:2035
 #, no-c-format
 msgid "Use IRA based register pressure calculation in RTL loop optimizations."
 msgstr ""
 
-#: common.opt:2032
+#: common.opt:2040
 #, no-c-format
 msgid "Share slots for saving different hard registers."
 msgstr ""
 
-#: common.opt:2036
+#: common.opt:2044
 #, no-c-format
 msgid "Share stack slots for spilled pseudo-registers."
 msgstr ""
 
-#: common.opt:2040
+#: common.opt:2048
 #, no-c-format
 msgid "-fira-verbose=<number>\tControl IRA's level of diagnostic messages."
 msgstr ""
 
-#: common.opt:2044
+#: common.opt:2052
 #, no-c-format
 msgid "Optimize induction variables on trees."
 msgstr ""
 
-#: common.opt:2048
+#: common.opt:2056
 #, no-c-format
 msgid "Use jump tables for sufficiently large switch statements."
 msgstr ""
 
-#: common.opt:2052
+#: common.opt:2060
 #, no-c-format
 msgid "Use bit tests for sufficiently large switch statements."
 msgstr ""
 
-#: common.opt:2056
+#: common.opt:2064
 #, no-c-format
 msgid "Generate code for functions even if they are fully inlined."
 msgstr ""
 
-#: common.opt:2060
+#: common.opt:2068
 #, no-c-format
 msgid "Generate code for static functions even if they are never called."
 msgstr ""
 
-#: common.opt:2064
+#: common.opt:2072
 #, no-c-format
 msgid "Emit static const variables even if they are not used."
 msgstr ""
 
-#: common.opt:2068
+#: common.opt:2076
 #, no-c-format
 msgid "Give external symbols a leading underscore."
 msgstr ""
 
-#: common.opt:2076
+#: common.opt:2084
 #, no-c-format
 msgid "Do CFG-sensitive rematerialization in LRA."
 msgstr ""
 
-#: common.opt:2080
+#: common.opt:2088
 #, no-c-format
 msgid "Enable link-time optimization."
 msgstr ""
 
-#: common.opt:2084
+#: common.opt:2092
 #, no-c-format
 msgid "Link-time optimization with number of parallel jobs or jobserver."
 msgstr ""
 
-#: common.opt:2106
+#: common.opt:2114
 #, no-c-format
 msgid "Specify the algorithm to partition symbols and vars at linktime."
 msgstr ""
 
-#: common.opt:2111
+#: common.opt:2119
 #, no-c-format
 msgid "Use zlib/zstd compression level <number> for IL."
 msgstr ""
 
-#: common.opt:2119
+#: common.opt:2127
 #, no-c-format
 msgid "Report various link-time optimization statistics."
 msgstr ""
 
-#: common.opt:2123
+#: common.opt:2131
 #, no-c-format
 msgid "Report various link-time optimization statistics for WPA only."
 msgstr ""
 
-#: common.opt:2127
+#: common.opt:2135
 #, no-c-format
 msgid "Set errno after built-in math functions."
 msgstr ""
 
-#: common.opt:2131
+#: common.opt:2139
 #, no-c-format
 msgid "-fmax-errors=<number>\tMaximum number of errors to report."
 msgstr ""
 
-#: common.opt:2135
+#: common.opt:2143
 #, no-c-format
 msgid "Report on permanent memory allocation."
 msgstr ""
 
-#: common.opt:2139
+#: common.opt:2147
 #, no-c-format
 msgid "Report on permanent memory allocation in WPA only."
 msgstr ""
 
-#: common.opt:2146
+#: common.opt:2154
 #, no-c-format
 msgid "Attempt to merge identical constants and constant variables."
 msgstr ""
 
-#: common.opt:2150
+#: common.opt:2158
 #, no-c-format
 msgid "Attempt to merge identical constants across compilation units."
 msgstr ""
 
-#: common.opt:2154
+#: common.opt:2162
 #, no-c-format
 msgid "Attempt to merge identical debug strings across compilation units."
 msgstr ""
 
-#: common.opt:2158
+#: common.opt:2166
 #, no-c-format
 msgid ""
 "-fmessage-length=<number>\tLimit diagnostics to <number> characters per "
 "line.  0 suppresses line-wrapping."
 msgstr ""
 
-#: common.opt:2162
+#: common.opt:2170
 #, no-c-format
 msgid "Perform SMS based modulo scheduling before the first scheduling pass."
 msgstr ""
 
-#: common.opt:2166
+#: common.opt:2174
 #, no-c-format
 msgid "Perform SMS based modulo scheduling with register moves allowed."
 msgstr ""
 
-#: common.opt:2170
+#: common.opt:2178
 #, no-c-format
 msgid "Move loop invariant computations out of loops."
 msgstr ""
 
-#: common.opt:2174
+#: common.opt:2182
 #, no-c-format
 msgid "Move stores out of loops."
 msgstr ""
 
-#: common.opt:2178
+#: common.opt:2186
 #, no-c-format
 msgid "Building block for specs-based multilib-aware TFLAGS."
 msgstr ""
 
-#: common.opt:2182
+#: common.opt:2190
 #, no-c-format
 msgid "Use the RTL dead code elimination pass."
 msgstr ""
 
-#: common.opt:2186
+#: common.opt:2194
 #, no-c-format
 msgid "Use the RTL dead store elimination pass."
 msgstr ""
 
-#: common.opt:2190
+#: common.opt:2198
 #, no-c-format
 msgid ""
 "Enable/Disable the traditional scheduling in loops that already passed "
 "modulo scheduling."
 msgstr ""
 
-#: common.opt:2194
+#: common.opt:2202
 #, no-c-format
 msgid "Support synchronous non-call exceptions."
 msgstr ""
 
-#: common.opt:2201
+#: common.opt:2209
 #, no-c-format
 msgid ""
 "-foffload-options=<targets>=<options>\tSpecify options for the offloading "
 "targets."
 msgstr ""
 
-#: common.opt:2205
+#: common.opt:2213
 #, no-c-format
 msgid "-foffload-abi=[lp64|ilp32]\tSet the ABI to use in an offload compiler."
 msgstr ""
 
-#: common.opt:2218
+#: common.opt:2226
 #, no-c-format
 msgid "When possible do not generate stack frames."
 msgstr ""
 
-#: common.opt:2225
+#: common.opt:2233
 #, no-c-format
 msgid ""
 "Generate SIMD clones for functions with the OpenMP declare target directive."
 msgstr ""
 
-#: common.opt:2244
+#: common.opt:2252
 #, no-c-format
 msgid "Enable all optimization info dumps on stderr."
 msgstr ""
 
-#: common.opt:2248
+#: common.opt:2256
 #, no-c-format
 msgid "-fopt-info[-<type>=filename]\tDump compiler optimization details."
 msgstr ""
 
-#: common.opt:2252
+#: common.opt:2260
 #, no-c-format
 msgid ""
 "Write a SRCFILE.opt-record.json file detailing what optimizations were "
 "performed."
 msgstr ""
 
-#: common.opt:2260
+#: common.opt:2268
 #, no-c-format
 msgid "Optimize sibling and tail recursive calls."
 msgstr ""
 
-#: common.opt:2264
+#: common.opt:2272
 #, no-c-format
 msgid "Perform partial inlining."
 msgstr ""
 
-#: common.opt:2268 common.opt:2272
+#: common.opt:2276 common.opt:2280
 #, no-c-format
 msgid "Report on memory allocation before interprocedural optimization."
 msgstr ""
 
-#: common.opt:2276
+#: common.opt:2284
 #, no-c-format
 msgid "Pack structure members together without holes."
 msgstr ""
 
-#: common.opt:2280
+#: common.opt:2288
 #, no-c-format
 msgid "-fpack-struct=<number>\tSet initial maximum structure member alignment."
 msgstr ""
 
-#: common.opt:2284
+#: common.opt:2292
 #, no-c-format
 msgid "Return small aggregates in memory, not registers."
 msgstr ""
 
-#: common.opt:2288
+#: common.opt:2296
 #, no-c-format
 msgid "Perform loop peeling."
 msgstr ""
 
-#: common.opt:2292
+#: common.opt:2300
 #, no-c-format
 msgid "Enable machine specific peephole optimizations."
 msgstr ""
 
-#: common.opt:2296
+#: common.opt:2304
 #, no-c-format
 msgid "Enable an RTL peephole pass before sched2."
 msgstr ""
 
-#: common.opt:2300
+#: common.opt:2308
 #, no-c-format
 msgid "Generate position-independent code if possible (large mode)."
 msgstr ""
 
-#: common.opt:2304
+#: common.opt:2312
 #, no-c-format
 msgid ""
 "Generate position-independent code for executables if possible (large mode)."
 msgstr ""
 
-#: common.opt:2308
+#: common.opt:2316
 #, no-c-format
 msgid "Generate position-independent code if possible (small mode)."
 msgstr ""
 
-#: common.opt:2312
+#: common.opt:2320
 #, no-c-format
 msgid ""
 "Generate position-independent code for executables if possible (small mode)."
 msgstr ""
 
-#: common.opt:2316
+#: common.opt:2324
 #, no-c-format
 msgid ""
 "Use PLT for PIC calls (-fno-plt: load the address from GOT at call site)."
 msgstr ""
 
-#: common.opt:2320
+#: common.opt:2328
 #, no-c-format
 msgid "Specify a plugin to load."
 msgstr ""
 
-#: common.opt:2324
+#: common.opt:2332
 #, no-c-format
 msgid ""
 "-fplugin-arg-<name>-<key>[=<value>]\tSpecify argument <key>=<value> for "
 "plugin <name>."
 msgstr ""
 
-#: common.opt:2328
+#: common.opt:2336
 #, no-c-format
 msgid "Run predictive commoning optimization."
 msgstr ""
 
-#: common.opt:2332
+#: common.opt:2340
 #, no-c-format
 msgid "Generate prefetch instructions, if available, for arrays in loops."
 msgstr ""
 
-#: common.opt:2336
+#: common.opt:2344
 #, no-c-format
 msgid "Enable basic program profiling code."
 msgstr ""
 
-#: common.opt:2340
+#: common.opt:2348
 #, no-c-format
 msgid "Generate absolute source path names for gcov."
 msgstr ""
 
-#: common.opt:2344
+#: common.opt:2352
 #, no-c-format
 msgid "Insert arc-based program profiling code."
 msgstr ""
 
-#: common.opt:2348
+#: common.opt:2356
 #, no-c-format
 msgid ""
 "Set the top-level directory for storing the profile data. The default is "
 "'pwd'."
 msgstr ""
 
-#: common.opt:2353
+#: common.opt:2361
 #, no-c-format
 msgid "Select the name for storing the profile note file."
 msgstr ""
 
-#: common.opt:2357
+#: common.opt:2365
 #, no-c-format
 msgid "Enable correction of flow inconsistent profile data input."
 msgstr ""
 
-#: common.opt:2361
+#: common.opt:2369
 #, no-c-format
 msgid ""
 "-fprofile-update=[single|atomic|prefer-atomic]\tSet the profile update "
 "method."
 msgstr ""
 
-#: common.opt:2365
+#: common.opt:2373
 #, no-c-format
 msgid ""
 "Instrument only functions from files whose name matches any of the regular "
 "expressions (separated by semi-colons)."
 msgstr ""
 
-#: common.opt:2369
+#: common.opt:2377
 #, no-c-format
 msgid ""
 "Instrument only functions from files whose name does not match any of the "
 "regular expressions (separated by semi-colons)."
 msgstr ""
 
-#: common.opt:2385
+#: common.opt:2393
 #, no-c-format
 msgid ""
 "-fprofile-reproducible=[serial|parallel-runs|multithreaded]\tControl level "
 "of reproducibility of profile gathered by -fprofile-generate."
 msgstr ""
 
-#: common.opt:2401
+#: common.opt:2409
 #, no-c-format
 msgid ""
 "Remove prefix from absolute path before mangling name for -fprofile-"
 "generate= and -fprofile-use=."
 msgstr ""
 
-#: common.opt:2405
+#: common.opt:2413
 #, no-c-format
 msgid ""
 "-fprofile-prefix-map=<old>=<new>\tMap one directory name to another in GCOV "
 "coverage result."
 msgstr ""
 
-#: common.opt:2409
+#: common.opt:2417
 #, no-c-format
 msgid ""
 "Enable common options for generating profile info for profile feedback "
 "directed optimizations."
 msgstr ""
 
-#: common.opt:2413
+#: common.opt:2421
 #, no-c-format
 msgid ""
 "Enable common options for generating profile info for profile feedback "
 "directed optimizations, and set -fprofile-dir=."
 msgstr ""
 
-#: common.opt:2417
+#: common.opt:2425
 #, no-c-format
 msgid ""
 "Register the profile information in the .gcov_info section instead of using "
 "a constructor/destructor."
 msgstr ""
 
-#: common.opt:2421
+#: common.opt:2429
 #, no-c-format
 msgid ""
 "Register the profile information in the specified section instead of using a "
 "constructor/destructor."
 msgstr ""
 
-#: common.opt:2425
+#: common.opt:2433
 #, no-c-format
 msgid ""
 "Do not assume that functions never executed during the train run are cold."
 msgstr ""
 
-#: common.opt:2429
+#: common.opt:2437
 #, no-c-format
 msgid ""
 "Enable common options for performing profile feedback directed optimizations."
 msgstr ""
 
-#: common.opt:2433
+#: common.opt:2441
 #, no-c-format
 msgid ""
 "Enable common options for performing profile feedback directed "
 "optimizations, and set -fprofile-dir=."
 msgstr ""
 
-#: common.opt:2437
+#: common.opt:2445
 #, no-c-format
 msgid "Insert code to profile values of expressions."
 msgstr ""
 
-#: common.opt:2441
+#: common.opt:2449
 #, no-c-format
 msgid "Report on consistency of profile."
 msgstr ""
 
-#: common.opt:2445
+#: common.opt:2453
 #, no-c-format
 msgid "Enable function reordering that improves code placement."
 msgstr ""
 
-#: common.opt:2449
+#: common.opt:2457
 #, no-c-format
 msgid "Insert NOP instructions at each function entry."
 msgstr ""
 
-#: common.opt:2456
+#: common.opt:2464
 #, no-c-format
 msgid "-frandom-seed=<string>\tMake compile reproducible using <string>."
 msgstr ""
 
-#: common.opt:2466
+#: common.opt:2474
 #, no-c-format
 msgid "Record gcc command line switches in the object file."
 msgstr ""
 
-#: common.opt:2470
+#: common.opt:2478
 #, no-c-format
 msgid "Return small aggregates in registers."
 msgstr ""
 
-#: common.opt:2478
+#: common.opt:2486
 #, no-c-format
 msgid ""
 "Tell DSE that the storage for a C++ object is dead when the constructor "
 "starts and when the destructor finishes."
 msgstr ""
 
-#: common.opt:2489
+#: common.opt:2497
 #, no-c-format
 msgid ""
 "-flive-patching=[inline-only-static|inline-clone]\tControl IPA optimizations "
@@ -15870,483 +15874,483 @@ msgid ""
 "multiple-level control on the enabled IPA optimizations."
 msgstr ""
 
-#: common.opt:2504
+#: common.opt:2512
 #, no-c-format
 msgid "Tell DCE to remove unused C++ allocations."
 msgstr ""
 
-#: common.opt:2508
+#: common.opt:2516
 #, no-c-format
 msgid "Relief of register pressure through live range shrinkage."
 msgstr ""
 
-#: common.opt:2512
+#: common.opt:2520
 #, no-c-format
 msgid "Perform a register renaming optimization pass."
 msgstr ""
 
-#: common.opt:2516
+#: common.opt:2524
 #, no-c-format
 msgid "Perform a target dependent instruction fusion optimization pass."
 msgstr ""
 
-#: common.opt:2520
+#: common.opt:2528
 #, no-c-format
 msgid "Reorder basic blocks to improve code placement."
 msgstr ""
 
-#: common.opt:2524
+#: common.opt:2532
 #, no-c-format
 msgid ""
 "-freorder-blocks-algorithm=[simple|stc]\tSet the used basic block reordering "
 "algorithm."
 msgstr ""
 
-#: common.opt:2537
+#: common.opt:2545
 #, no-c-format
 msgid "Reorder basic blocks and partition into hot and cold sections."
 msgstr ""
 
-#: common.opt:2541
+#: common.opt:2549
 #, no-c-format
 msgid "Reorder functions to improve code placement."
 msgstr ""
 
-#: common.opt:2545
+#: common.opt:2553
 #, no-c-format
 msgid "Add a common subexpression elimination pass after loop optimizations."
 msgstr ""
 
-#: common.opt:2553
+#: common.opt:2561
 #, no-c-format
 msgid "Disable optimizations that assume default FP rounding behavior."
 msgstr ""
 
-#: common.opt:2557
+#: common.opt:2565
 #, no-c-format
 msgid "Enable scheduling across basic blocks."
 msgstr ""
 
-#: common.opt:2561
+#: common.opt:2569
 #, no-c-format
 msgid "Enable register pressure sensitive insn scheduling."
 msgstr ""
 
-#: common.opt:2565
+#: common.opt:2573
 #, no-c-format
 msgid "Allow speculative motion of non-loads."
 msgstr ""
 
-#: common.opt:2569
+#: common.opt:2577
 #, no-c-format
 msgid "Allow speculative motion of some loads."
 msgstr ""
 
-#: common.opt:2573
+#: common.opt:2581
 #, no-c-format
 msgid "Allow speculative motion of more loads."
 msgstr ""
 
-#: common.opt:2577
+#: common.opt:2585
 #, no-c-format
 msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler."
 msgstr ""
 
-#: common.opt:2581
+#: common.opt:2589
 #, no-c-format
 msgid "If scheduling post reload, do superblock scheduling."
 msgstr ""
 
-#: common.opt:2589
+#: common.opt:2597
 #, no-c-format
 msgid "Reschedule instructions before register allocation."
 msgstr ""
 
-#: common.opt:2593
+#: common.opt:2601
 #, no-c-format
 msgid "Reschedule instructions after register allocation."
 msgstr ""
 
-#: common.opt:2600
+#: common.opt:2608
 #, no-c-format
 msgid "Schedule instructions using selective scheduling algorithm."
 msgstr ""
 
-#: common.opt:2604
+#: common.opt:2612
 #, no-c-format
 msgid "Run selective scheduling after reload."
 msgstr ""
 
-#: common.opt:2608
+#: common.opt:2616
 #, no-c-format
 msgid "Run self-tests, using the given path to locate test files."
 msgstr ""
 
-#: common.opt:2612
+#: common.opt:2620
 #, no-c-format
 msgid "Perform software pipelining of inner loops during selective scheduling."
 msgstr ""
 
-#: common.opt:2616
+#: common.opt:2624
 #, no-c-format
 msgid "Perform software pipelining of outer loops during selective scheduling."
 msgstr ""
 
-#: common.opt:2620
+#: common.opt:2628
 #, no-c-format
 msgid "Reschedule pipelined regions without pipelining."
 msgstr ""
 
-#: common.opt:2624
+#: common.opt:2632
 #, no-c-format
 msgid ""
 "Allow interposing function (or variables) by ones with different semantics "
 "(or initializer) respectively by dynamic linker."
 msgstr ""
 
-#: common.opt:2630
+#: common.opt:2638
 #, no-c-format
 msgid "Allow premature scheduling of queued insns."
 msgstr ""
 
-#: common.opt:2634
+#: common.opt:2642
 #, no-c-format
 msgid ""
 "-fsched-stalled-insns=<number>\tSet number of queued insns that can be "
 "prematurely scheduled."
 msgstr ""
 
-#: common.opt:2642
+#: common.opt:2650
 #, no-c-format
 msgid ""
 "Set dependence distance checking in premature scheduling of queued insns."
 msgstr ""
 
-#: common.opt:2646
+#: common.opt:2654
 #, no-c-format
 msgid ""
 "-fsched-stalled-insns-dep=<number>\tSet dependence distance checking in "
 "premature scheduling of queued insns."
 msgstr ""
 
-#: common.opt:2650
+#: common.opt:2658
 #, no-c-format
 msgid "Enable the group heuristic in the scheduler."
 msgstr ""
 
-#: common.opt:2654
+#: common.opt:2662
 #, no-c-format
 msgid "Enable the critical path heuristic in the scheduler."
 msgstr ""
 
-#: common.opt:2658
+#: common.opt:2666
 #, no-c-format
 msgid "Enable the speculative instruction heuristic in the scheduler."
 msgstr ""
 
-#: common.opt:2662
+#: common.opt:2670
 #, no-c-format
 msgid "Enable the rank heuristic in the scheduler."
 msgstr ""
 
-#: common.opt:2666
+#: common.opt:2674
 #, no-c-format
 msgid "Enable the last instruction heuristic in the scheduler."
 msgstr ""
 
-#: common.opt:2670
+#: common.opt:2678
 #, no-c-format
 msgid "Enable the dependent count heuristic in the scheduler."
 msgstr ""
 
-#: common.opt:2674
+#: common.opt:2682
 #, no-c-format
 msgid "Access data in the same section from shared anchor points."
 msgstr ""
 
-#: common.opt:2686
+#: common.opt:2694
 #, no-c-format
 msgid "Turn on Redundant Extensions Elimination pass."
 msgstr ""
 
-#: common.opt:2690
+#: common.opt:2698
 #, no-c-format
 msgid "Show column numbers in diagnostics, when available.  Default on."
 msgstr ""
 
-#: common.opt:2694
+#: common.opt:2702
 #, no-c-format
 msgid ""
 "Emit function prologues only before parts of the function that need it, "
 "rather than at the top of the function."
 msgstr ""
 
-#: common.opt:2699
+#: common.opt:2707
 #, no-c-format
 msgid "Shrink-wrap parts of the prologue and epilogue separately."
 msgstr ""
 
-#: common.opt:2703
+#: common.opt:2711
 #, no-c-format
 msgid "Disable optimizations observable by IEEE signaling NaNs."
 msgstr ""
 
-#: common.opt:2707
+#: common.opt:2715
 #, no-c-format
 msgid ""
 "Disable floating point optimizations that ignore the IEEE signedness of zero."
 msgstr ""
 
-#: common.opt:2711
+#: common.opt:2719
 #, no-c-format
 msgid "Convert floating point constants to single precision constants."
 msgstr ""
 
-#: common.opt:2715
+#: common.opt:2723
 #, no-c-format
 msgid "Split lifetimes of induction variables when loops are unrolled."
 msgstr ""
 
-#: common.opt:2719
+#: common.opt:2727
 #, no-c-format
 msgid "Generate discontiguous stack frames."
 msgstr ""
 
-#: common.opt:2723
+#: common.opt:2731
 #, no-c-format
 msgid "Split wide types into independent registers."
 msgstr ""
 
-#: common.opt:2727
+#: common.opt:2735
 #, no-c-format
 msgid "Split wide types into independent registers earlier."
 msgstr ""
 
-#: common.opt:2731
+#: common.opt:2739
 #, no-c-format
 msgid "Enable backward propagation of use properties at the SSA level."
 msgstr ""
 
-#: common.opt:2735
+#: common.opt:2743
 #, no-c-format
 msgid "Optimize conditional patterns using SSA PHI nodes."
 msgstr ""
 
-#: common.opt:2739
+#: common.opt:2747
 #, no-c-format
 msgid ""
 "Optimize amount of stdarg registers saved to stack at start of function."
 msgstr ""
 
-#: common.opt:2743
+#: common.opt:2751
 #, no-c-format
 msgid "Apply variable expansion when loops are unrolled."
 msgstr ""
 
-#: common.opt:2747
+#: common.opt:2755
 #, no-c-format
 msgid ""
 "-fstack-check=[no|generic|specific]\tInsert stack checking code into the "
 "program."
 msgstr ""
 
-#: common.opt:2751
+#: common.opt:2759
 #, no-c-format
 msgid ""
 "Insert stack checking code into the program.  Same as -fstack-check=specific."
 msgstr ""
 
-#: common.opt:2755
+#: common.opt:2763
 #, no-c-format
 msgid ""
 "Insert code to probe each page of stack space as it is allocated to protect "
 "from stack-clash style attacks."
 msgstr ""
 
-#: common.opt:2763
+#: common.opt:2771
 #, no-c-format
 msgid ""
 "-fstack-limit-register=<register>\tTrap if the stack goes past <register>."
 msgstr ""
 
-#: common.opt:2767
+#: common.opt:2775
 #, no-c-format
 msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>."
 msgstr ""
 
-#: common.opt:2771
+#: common.opt:2779
 #, no-c-format
 msgid "Use propolice as a stack protection method."
 msgstr ""
 
-#: common.opt:2775
+#: common.opt:2783
 #, no-c-format
 msgid "Use a stack protection method for every function."
 msgstr ""
 
-#: common.opt:2779
+#: common.opt:2787
 #, no-c-format
 msgid "Use a smart stack protection method for certain functions."
 msgstr ""
 
-#: common.opt:2783
+#: common.opt:2791
 #, no-c-format
 msgid ""
 "Use stack protection method only for functions with the stack_protect "
 "attribute."
 msgstr ""
 
-#: common.opt:2787
+#: common.opt:2795
 #, no-c-format
 msgid "Output stack usage information on a per-function basis."
 msgstr ""
 
-#: common.opt:2799
+#: common.opt:2807
 #, no-c-format
 msgid "Assume strict aliasing rules apply."
 msgstr ""
 
-#: common.opt:2803
+#: common.opt:2811
 #, no-c-format
 msgid ""
 "Treat signed overflow as undefined.  Negated as -fwrapv -fwrapv-pointer."
 msgstr ""
 
-#: common.opt:2807
+#: common.opt:2815
 #, no-c-format
 msgid "Implement __atomic operations via libcalls to legacy __sync functions."
 msgstr ""
 
-#: common.opt:2811
+#: common.opt:2819
 #, no-c-format
 msgid "Check for syntax errors, then stop."
 msgstr ""
 
-#: common.opt:2815
+#: common.opt:2823
 #, no-c-format
 msgid "Create data files needed by \"gcov\"."
 msgstr ""
 
-#: common.opt:2819
+#: common.opt:2827
 #, no-c-format
 msgid "Perform jump threading optimizations."
 msgstr ""
 
-#: common.opt:2823
+#: common.opt:2831
 #, no-c-format
 msgid "Report the time taken by each compiler pass."
 msgstr ""
 
-#: common.opt:2827
+#: common.opt:2835
 #, no-c-format
 msgid "Record times taken by sub-phases separately."
 msgstr ""
 
-#: common.opt:2831
+#: common.opt:2839
 #, no-c-format
 msgid ""
 "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the "
 "default thread-local storage code generation model."
 msgstr ""
 
-#: common.opt:2850
+#: common.opt:2858
 #, no-c-format
 msgid "Reorder top level functions, variables, and asms."
 msgstr ""
 
-#: common.opt:2854
+#: common.opt:2862
 #, no-c-format
 msgid "Perform superblock formation via tail duplication."
 msgstr ""
 
-#: common.opt:2858
+#: common.opt:2866
 #, no-c-format
 msgid ""
 "For targets that normally need trampolines for nested functions, always "
 "generate them instead of using descriptors."
 msgstr ""
 
-#: common.opt:2866
+#: common.opt:2874
 #, no-c-format
 msgid "Assume floating-point operations can trap."
 msgstr ""
 
-#: common.opt:2870
+#: common.opt:2878
 #, no-c-format
 msgid "Trap for signed overflow in addition, subtraction and multiplication."
 msgstr ""
 
-#: common.opt:2874
+#: common.opt:2882
 #, no-c-format
 msgid "Enable SSA-CCP optimization on trees."
 msgstr ""
 
-#: common.opt:2878
+#: common.opt:2886
 #, no-c-format
 msgid "Enable SSA-BIT-CCP optimization on trees."
 msgstr ""
 
-#: common.opt:2886
+#: common.opt:2894
 #, no-c-format
 msgid "Enable loop header copying on trees."
 msgstr ""
 
-#: common.opt:2894
+#: common.opt:2902
 #, no-c-format
 msgid "Enable SSA coalescing of user variables."
 msgstr ""
 
-#: common.opt:2902
+#: common.opt:2910
 #, no-c-format
 msgid "Enable copy propagation on trees."
 msgstr ""
 
-#: common.opt:2910
+#: common.opt:2918
 #, no-c-format
 msgid "Transform condition stores into unconditional ones."
 msgstr ""
 
-#: common.opt:2914
+#: common.opt:2922
 #, no-c-format
 msgid "Perform conversions of switch initializations."
 msgstr ""
 
-#: common.opt:2918
+#: common.opt:2926
 #, no-c-format
 msgid "Enable SSA dead code elimination optimization on trees."
 msgstr ""
 
-#: common.opt:2922
+#: common.opt:2930
 #, no-c-format
 msgid "Enable dominator optimizations."
 msgstr ""
 
-#: common.opt:2926
+#: common.opt:2934
 #, no-c-format
 msgid "Enable tail merging on trees."
 msgstr ""
 
-#: common.opt:2930
+#: common.opt:2938
 #, no-c-format
 msgid "Enable dead store elimination."
 msgstr ""
 
-#: common.opt:2934
+#: common.opt:2942
 #, no-c-format
 msgid "Enable forward propagation on trees."
 msgstr ""
 
-#: common.opt:2938
+#: common.opt:2946
 #, no-c-format
 msgid "Enable Full Redundancy Elimination (FRE) on trees."
 msgstr ""
 
-#: common.opt:2942
+#: common.opt:2950
 #, no-c-format
 msgid "Enable string length optimizations on trees."
 msgstr ""
 
-#: common.opt:2946
+#: common.opt:2954
 #, no-c-format
 msgid ""
 "Detect paths that trigger erroneous or undefined behavior due to "
@@ -16354,7 +16358,7 @@ msgid ""
 "flow and turn the statement with erroneous or undefined behavior into a trap."
 msgstr ""
 
-#: common.opt:2952
+#: common.opt:2960
 #, no-c-format
 msgid ""
 "Detect paths that trigger erroneous or undefined behavior due to a null "
@@ -16363,516 +16367,516 @@ msgid ""
 "statement with erroneous or undefined behavior into a trap."
 msgstr ""
 
-#: common.opt:2959
+#: common.opt:2967
 #, no-c-format
 msgid "Enable loop distribution on trees."
 msgstr ""
 
-#: common.opt:2963
+#: common.opt:2971
 #, no-c-format
 msgid "Enable loop distribution for patterns transformed into a library call."
 msgstr ""
 
-#: common.opt:2967
+#: common.opt:2975
 #, no-c-format
 msgid "Enable loop invariant motion on trees."
 msgstr ""
 
-#: common.opt:2975
+#: common.opt:2983
 #, no-c-format
 msgid "Create canonical induction variables in loops."
 msgstr ""
 
-#: common.opt:2979
+#: common.opt:2987
 #, no-c-format
 msgid "Enable loop optimizations on tree level."
 msgstr ""
 
-#: common.opt:2983
+#: common.opt:2991
 #, no-c-format
 msgid ""
 "-ftree-parallelize-loops=<number>\tEnable automatic parallelization of loops."
 msgstr ""
 
-#: common.opt:2987
+#: common.opt:2995
 #, no-c-format
 msgid "Enable hoisting loads from conditional pointers."
 msgstr ""
 
-#: common.opt:2991
+#: common.opt:2999
 #, no-c-format
 msgid "Enable SSA-PRE optimization on trees."
 msgstr ""
 
-#: common.opt:2995
+#: common.opt:3003
 #, no-c-format
 msgid ""
 "In SSA-PRE optimization on trees, enable partial-partial redundancy "
 "elimination."
 msgstr ""
 
-#: common.opt:2999
+#: common.opt:3007
 #, no-c-format
 msgid "Perform function-local points-to analysis on trees."
 msgstr ""
 
-#: common.opt:3003
+#: common.opt:3011
 #, no-c-format
 msgid "Enable reassociation on tree level."
 msgstr ""
 
-#: common.opt:3011
+#: common.opt:3019
 #, no-c-format
 msgid "Enable SSA code sinking on trees."
 msgstr ""
 
-#: common.opt:3015
+#: common.opt:3023
 #, no-c-format
 msgid "Perform straight-line strength reduction."
 msgstr ""
 
-#: common.opt:3019
+#: common.opt:3027
 #, no-c-format
 msgid "Perform scalar replacement of aggregates."
 msgstr ""
 
-#: common.opt:3023
+#: common.opt:3031
 #, no-c-format
 msgid "Replace temporary expressions in the SSA->normal pass."
 msgstr ""
 
-#: common.opt:3027
+#: common.opt:3035
 #, no-c-format
 msgid "Perform live range splitting during the SSA->normal pass."
 msgstr ""
 
-#: common.opt:3031
+#: common.opt:3039
 #, no-c-format
 msgid "Perform Value Range Propagation on trees."
 msgstr ""
 
-#: common.opt:3035
+#: common.opt:3043
 #, no-c-format
 msgid "Split paths leading to loop backedges."
 msgstr ""
 
-#: common.opt:3039
+#: common.opt:3047
 #, no-c-format
 msgid ""
 "Assume common declarations may be overridden with ones with a larger "
 "trailing array."
 msgstr ""
 
-#: common.opt:3044
+#: common.opt:3052
 #, no-c-format
 msgid "Compile whole compilation unit at a time."
 msgstr ""
 
-#: common.opt:3048
+#: common.opt:3056
 #, no-c-format
 msgid "Trap on __builtin_unreachable instead of using it for optimization."
 msgstr ""
 
-#: common.opt:3052
+#: common.opt:3060
 #, no-c-format
 msgid "Perform loop unrolling when iteration count is known."
 msgstr ""
 
-#: common.opt:3056
+#: common.opt:3064
 #, no-c-format
 msgid "Perform loop unrolling for all loops."
 msgstr ""
 
-#: common.opt:3071
+#: common.opt:3079
 #, no-c-format
 msgid ""
 "Allow optimization for floating-point arithmetic which may change the result "
 "of the operation due to rounding."
 msgstr ""
 
-#: common.opt:3076
+#: common.opt:3084
 #, no-c-format
 msgid "Same as -fassociative-math for expressions which include division."
 msgstr ""
 
-#: common.opt:3084
+#: common.opt:3092
 #, no-c-format
 msgid "Allow math optimizations that may violate IEEE or ISO standards."
 msgstr ""
 
-#: common.opt:3088
+#: common.opt:3096
 #, no-c-format
 msgid "Perform loop unswitching."
 msgstr ""
 
-#: common.opt:3092
+#: common.opt:3100
 #, no-c-format
 msgid "Perform loop splitting."
 msgstr ""
 
-#: common.opt:3096
+#: common.opt:3104
 #, no-c-format
 msgid "Version loops based on whether indices have a stride of one."
 msgstr ""
 
-#: common.opt:3100
+#: common.opt:3108
 #, no-c-format
 msgid "Just generate unwind tables for exception handling."
 msgstr ""
 
-#: common.opt:3104
+#: common.opt:3112
 #, no-c-format
 msgid "Use the bfd linker instead of the default linker."
 msgstr ""
 
-#: common.opt:3108
+#: common.opt:3116
 #, no-c-format
 msgid "Use the gold linker instead of the default linker."
 msgstr ""
 
-#: common.opt:3112
+#: common.opt:3120
 #, no-c-format
 msgid "Use the lld LLVM linker instead of the default linker."
 msgstr ""
 
-#: common.opt:3116
+#: common.opt:3124
 #, no-c-format
 msgid "Use the Modern linker (MOLD) linker instead of the default linker."
 msgstr ""
 
-#: common.opt:3126
+#: common.opt:3134
 #, no-c-format
 msgid "Perform variable tracking."
 msgstr ""
 
-#: common.opt:3133
+#: common.opt:3141
 #, no-c-format
 msgid "Perform variable tracking by annotating assignments."
 msgstr ""
 
-#: common.opt:3139
+#: common.opt:3147
 #, no-c-format
 msgid "Toggle -fvar-tracking-assignments."
 msgstr ""
 
-#: common.opt:3146
+#: common.opt:3154
 #, no-c-format
 msgid ""
 "Perform variable tracking and also tag variables that are uninitialized."
 msgstr ""
 
-#: common.opt:3151
+#: common.opt:3159
 #, no-c-format
 msgid "Enable vectorization on trees."
 msgstr ""
 
-#: common.opt:3159
+#: common.opt:3167
 #, no-c-format
 msgid "Enable loop vectorization on trees."
 msgstr ""
 
-#: common.opt:3163
+#: common.opt:3171
 #, no-c-format
 msgid "Enable basic block vectorization (SLP) on trees."
 msgstr ""
 
-#: common.opt:3167
+#: common.opt:3175
 #, no-c-format
 msgid ""
 "-fvect-cost-model=[unlimited|dynamic|cheap|very-cheap]\tSpecifies the cost "
 "model for vectorization."
 msgstr ""
 
-#: common.opt:3171
+#: common.opt:3179
 #, no-c-format
 msgid ""
 "-fsimd-cost-model=[unlimited|dynamic|cheap|very-cheap]\tSpecifies the "
 "vectorization cost model for code marked with a simd directive."
 msgstr ""
 
-#: common.opt:3190
+#: common.opt:3198
 #, no-c-format
 msgid ""
 "Enables the dynamic vectorizer cost model.  Preserved for backward "
 "compatibility."
 msgstr ""
 
-#: common.opt:3198
+#: common.opt:3206
 #, no-c-format
 msgid "Enable copy propagation of scalar-evolution information."
 msgstr ""
 
-#: common.opt:3202
+#: common.opt:3210
 #, no-c-format
 msgid ""
 "-ftrivial-auto-var-init=[uninitialized|pattern|zero]\tAdd initializations to "
 "automatic variables."
 msgstr ""
 
-#: common.opt:3224
+#: common.opt:3232
 #, no-c-format
 msgid "Add extra commentary to assembler output."
 msgstr ""
 
-#: common.opt:3228
+#: common.opt:3236
 #, no-c-format
 msgid ""
 "-fvisibility=[default|internal|hidden|protected]\tSet the default symbol "
 "visibility."
 msgstr ""
 
-#: common.opt:3247
+#: common.opt:3255
 #, no-c-format
 msgid "Validate vtable pointers before using them."
 msgstr ""
 
-#: common.opt:3263
+#: common.opt:3271
 #, no-c-format
 msgid "Output vtable verification counters."
 msgstr ""
 
-#: common.opt:3267
+#: common.opt:3275
 #, no-c-format
 msgid "Output vtable verification pointer sets information."
 msgstr ""
 
-#: common.opt:3271
+#: common.opt:3279
 #, no-c-format
 msgid "Use expression value profiles in optimizations."
 msgstr ""
 
-#: common.opt:3275
+#: common.opt:3283
 #, no-c-format
 msgid "Construct webs and split unrelated uses of single variable."
 msgstr ""
 
-#: common.opt:3279
+#: common.opt:3287
 #, no-c-format
 msgid "Enable conditional dead code elimination for builtin calls."
 msgstr ""
 
-#: common.opt:3283
+#: common.opt:3291
 #, no-c-format
 msgid "Perform whole program optimizations."
 msgstr ""
 
-#: common.opt:3287
+#: common.opt:3295
 #, no-c-format
 msgid "Assume pointer overflow wraps around."
 msgstr ""
 
-#: common.opt:3291
+#: common.opt:3299
 #, no-c-format
 msgid "Assume signed arithmetic overflow wraps around."
 msgstr ""
 
-#: common.opt:3295
+#: common.opt:3303
 #, no-c-format
 msgid "Put zero initialized data in the bss section."
 msgstr ""
 
-#: common.opt:3299
+#: common.opt:3307
 #, no-c-format
 msgid "Clear call-used registers upon function return."
 msgstr ""
 
-#: common.opt:3303
+#: common.opt:3311
 #, no-c-format
 msgid "Generate debug information in default format."
 msgstr ""
 
-#: common.opt:3307
+#: common.opt:3315
 #, no-c-format
 msgid "Assume assembler support for (DWARF2+) .loc directives."
 msgstr ""
 
-#: common.opt:3311
+#: common.opt:3319
 #, no-c-format
 msgid "Assume assembler support for view in (DWARF2+) .loc directives."
 msgstr ""
 
-#: common.opt:3331
+#: common.opt:3339
 #, no-c-format
 msgid "Record DW_AT_decl_column and DW_AT_call_column in DWARF."
 msgstr ""
 
-#: common.opt:3337
+#: common.opt:3345
 #, no-c-format
 msgid "Generate CTF debug information at default level."
 msgstr ""
 
-#: common.opt:3341
+#: common.opt:3349
 #, no-c-format
 msgid "Generate BTF debug information at default level."
 msgstr ""
 
-#: common.opt:3345
+#: common.opt:3353
 #, no-c-format
 msgid "Generate debug information in default version of DWARF format."
 msgstr ""
 
-#: common.opt:3349
+#: common.opt:3357
 #, no-c-format
 msgid "Generate debug information in DWARF v2 (or later) format."
 msgstr ""
 
-#: common.opt:3353
+#: common.opt:3361
 #, no-c-format
 msgid "Use 32-bit DWARF format when emitting DWARF debug information."
 msgstr ""
 
-#: common.opt:3357
+#: common.opt:3365
 #, no-c-format
 msgid "Use 64-bit DWARF format when emitting DWARF debug information."
 msgstr ""
 
-#: common.opt:3361
+#: common.opt:3369
 #, no-c-format
 msgid "Generate debug information in default extended format."
 msgstr ""
 
-#: common.opt:3365
+#: common.opt:3373
 #, no-c-format
 msgid "Generate extended entry point information for inlined functions."
 msgstr ""
 
-#: common.opt:3369
+#: common.opt:3377
 #, no-c-format
 msgid "Compute locview reset points based on insn length estimates."
 msgstr ""
 
-#: common.opt:3377
+#: common.opt:3385
 #, no-c-format
 msgid "Don't generate DWARF pubnames and pubtypes sections."
 msgstr ""
 
-#: common.opt:3381
+#: common.opt:3389
 #, no-c-format
 msgid "Generate DWARF pubnames and pubtypes sections."
 msgstr ""
 
-#: common.opt:3385
+#: common.opt:3393
 #, no-c-format
 msgid "Generate DWARF pubnames and pubtypes sections with GNU extensions."
 msgstr ""
 
-#: common.opt:3389
+#: common.opt:3397
 #, no-c-format
 msgid "Record gcc command line switches in DWARF DW_AT_producer."
 msgstr ""
 
-#: common.opt:3393
+#: common.opt:3401
 #, no-c-format
 msgid "Generate debug information in separate .dwo files."
 msgstr ""
 
-#: common.opt:3405
+#: common.opt:3413
 #, no-c-format
 msgid "Emit progressive recommended breakpoint locations."
 msgstr ""
 
-#: common.opt:3409
+#: common.opt:3417
 #, no-c-format
 msgid "Don't emit DWARF additions beyond selected version."
 msgstr ""
 
-#: common.opt:3413
+#: common.opt:3421
 #, no-c-format
 msgid ""
 "Add description attributes to some DWARF DIEs that have no name attribute."
 msgstr ""
 
-#: common.opt:3417
+#: common.opt:3425
 #, no-c-format
 msgid "Toggle debug information generation."
 msgstr ""
 
-#: common.opt:3421
+#: common.opt:3429
 #, no-c-format
 msgid "Augment variable location lists with progressive views."
 msgstr ""
 
-#: common.opt:3428
+#: common.opt:3436
 #, no-c-format
 msgid "Generate debug information in VMS format."
 msgstr ""
 
-#: common.opt:3457
+#: common.opt:3465
 #, no-c-format
 msgid "Generate compressed debug sections."
 msgstr ""
 
-#: common.opt:3461
+#: common.opt:3469
 #, no-c-format
 msgid "-gz=<format>\tGenerate compressed debug sections in format <format>."
 msgstr ""
 
-#: common.opt:3468
+#: common.opt:3476
 #, no-c-format
 msgid "-iplugindir=<dir>\tSet <dir> to be the default plugin directory."
 msgstr ""
 
-#: common.opt:3472
+#: common.opt:3480
 #, no-c-format
 msgid "-imultiarch <dir>\tSet <dir> to be the multiarch include subdirectory."
 msgstr ""
 
-#: common.opt:3500
+#: common.opt:3508
 #, no-c-format
 msgid "-o <file>\tPlace output into <file>."
 msgstr ""
 
-#: common.opt:3504
+#: common.opt:3512
 #, no-c-format
 msgid "Enable function profiling."
 msgstr ""
 
-#: common.opt:3514
+#: common.opt:3522
 #, no-c-format
 msgid "Like -pedantic but issue them as errors."
 msgstr ""
 
-#: common.opt:3554
+#: common.opt:3562
 #, no-c-format
 msgid "Do not display functions compiled or elapsed time."
 msgstr ""
 
-#: common.opt:3586
+#: common.opt:3594
 #, no-c-format
 msgid "Enable verbose output."
 msgstr ""
 
-#: common.opt:3590
+#: common.opt:3598
 #, no-c-format
 msgid "Display the compiler's version."
 msgstr ""
 
-#: common.opt:3594
+#: common.opt:3602
 #, no-c-format
 msgid "Suppress warnings."
 msgstr ""
 
-#: common.opt:3604
+#: common.opt:3612
 #, no-c-format
 msgid "Create a shared library."
 msgstr ""
 
-#: common.opt:3664
+#: common.opt:3672
 #, no-c-format
 msgid "Don't create a dynamically linked position independent executable."
 msgstr ""
 
-#: common.opt:3668
+#: common.opt:3676
 #, no-c-format
 msgid "Create a dynamically linked position independent executable."
 msgstr ""
 
-#: common.opt:3672
+#: common.opt:3680
 #, no-c-format
 msgid "Create a static position independent executable."
 msgstr ""
 
-#: common.opt:3679
+#: common.opt:3687
 #, no-c-format
 msgid "Use caller save register across calls if possible."
 msgstr ""
@@ -16920,75 +16924,82 @@ msgstr ""
 
 #: params.opt:55
 #, no-c-format
-msgid "Enable asan builtin functions protection."
+msgid ""
+"Prefix calls to memcpy, memset and memmove with __asan_ or __hwasan_ for -"
+"fsanitize=kernel-address or -fsanitize=kernel-hwaddress."
 msgstr ""
 
 #: params.opt:59
 #, no-c-format
-msgid "Enable asan stack protection."
+msgid "Enable asan builtin functions protection."
 msgstr ""
 
 #: params.opt:63
 #, no-c-format
-msgid "Enable asan detection of use-after-return bugs."
+msgid "Enable asan stack protection."
 msgstr ""
 
 #: params.opt:67
 #, no-c-format
+msgid "Enable asan detection of use-after-return bugs."
+msgstr ""
+
+#: params.opt:71
+#, no-c-format
 msgid ""
 "Enable hwasan instrumentation of statically sized stack-allocated variables."
 msgstr ""
 
-#: params.opt:71
+#: params.opt:75
 #, no-c-format
 msgid "Use random base tag for each frame, as opposed to base always zero."
 msgstr ""
 
-#: params.opt:75
+#: params.opt:79
 #, no-c-format
 msgid "Enable hwasan instrumentation of allocas/VLAs."
 msgstr ""
 
-#: params.opt:79
+#: params.opt:83
 #, no-c-format
 msgid "Enable hwasan instrumentation of load operations."
 msgstr ""
 
-#: params.opt:83
+#: params.opt:87
 #, no-c-format
 msgid "Enable hwasan instrumentation of store operations."
 msgstr ""
 
-#: params.opt:87
+#: params.opt:91
 #, no-c-format
 msgid "Enable hwasan instrumentation of builtin functions."
 msgstr ""
 
-#: params.opt:91
+#: params.opt:95
 #, no-c-format
 msgid "Average number of iterations of a loop."
 msgstr ""
 
-#: params.opt:95
+#: params.opt:99
 #, no-c-format
 msgid "Maximum number of bits for which we avoid creating FMAs."
 msgstr ""
 
-#: params.opt:99
+#: params.opt:103
 #, no-c-format
 msgid ""
 "Set the estimated probability in percentage for builtin expect. The default "
 "value is 90% probability."
 msgstr ""
 
-#: params.opt:103
+#: params.opt:107
 #, 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."
 msgstr ""
 
-#: params.opt:107
+#: params.opt:111
 #, no-c-format
 msgid ""
 "The smallest number of different values for which it is best to use a jump-"
@@ -16996,127 +17007,127 @@ msgid ""
 "the machine."
 msgstr ""
 
-#: params.opt:111
+#: params.opt:115
 #, no-c-format
 msgid ""
 "Probability that COMDAT function will be shared with different compilation "
 "unit."
 msgstr ""
 
-#: params.opt:115
+#: params.opt:119
 #, no-c-format
 msgid ""
 "Maximum number of namespaces to search for alternatives when name lookup "
 "fails."
 msgstr ""
 
-#: params.opt:119
+#: params.opt:123
 #, no-c-format
 msgid "Maximum number of queries into the alias oracle per store."
 msgstr ""
 
-#: params.opt:123
+#: params.opt:127
 #, no-c-format
 msgid ""
 "Maximum size (in bytes) of objects tracked bytewise by dead store "
 "elimination."
 msgstr ""
 
-#: params.opt:127
+#: params.opt:131
 #, no-c-format
 msgid ""
 "Maximal estimated growth of function body caused by early inlining of single "
 "call."
 msgstr ""
 
-#: params.opt:131
+#: params.opt:135
 #, no-c-format
 msgid "Maximum number of basic blocks before EVRP uses a sparse cache."
 msgstr ""
 
-#: params.opt:135
+#: params.opt:139
 #, no-c-format
 msgid ""
 "Maximum number of outgoing edges in a switch before EVRP will not process it."
 msgstr ""
 
-#: params.opt:139
+#: params.opt:143
 #, 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."
 msgstr ""
 
-#: params.opt:143
+#: params.opt:147
 #, no-c-format
 msgid ""
 "The threshold ratio of critical edges execution count that permit performing "
 "redundancy elimination after reload."
 msgstr ""
 
-#: params.opt:147
+#: params.opt:151
 #, no-c-format
 msgid ""
 "The threshold ratio for performing partial redundancy elimination after "
 "reload."
 msgstr ""
 
-#: params.opt:151
+#: params.opt:155
 #, no-c-format
 msgid ""
 "Scaling factor in calculation of maximum distance an expression can be moved "
 "by GCSE optimizations."
 msgstr ""
 
-#: params.opt:155
+#: params.opt:159
 #, no-c-format
 msgid ""
 "Cost at which GCSE optimizations will not constraint the distance an "
 "expression can travel."
 msgstr ""
 
-#: params.opt:159
+#: params.opt:163
 #, no-c-format
 msgid ""
 "Minimum heap expansion to trigger garbage collection, as a percentage of the "
 "total size of the heap."
 msgstr ""
 
-#: params.opt:163
+#: params.opt:167
 #, no-c-format
 msgid "Minimum heap size before we start collecting garbage, in kilobytes."
 msgstr ""
 
-#: params.opt:167
+#: params.opt:171
 #, no-c-format
 msgid ""
 "The number of executions of a basic block which is considered hot. The "
 "parameter is used only in GIMPLE FE."
 msgstr ""
 
-#: params.opt:171
+#: params.opt:175
 #, no-c-format
 msgid "Whether codegen errors should be ICEs when -fchecking."
 msgstr ""
 
-#: params.opt:175
+#: params.opt:179
 #, no-c-format
 msgid "Maximum number of arrays per SCoP."
 msgstr ""
 
-#: params.opt:179
+#: params.opt:183
 #, no-c-format
 msgid "Maximum number of parameters in a SCoP."
 msgstr ""
 
-#: params.opt:183
+#: params.opt:187
 #, no-c-format
 msgid ""
 "The number of elements for which hash table verification is done for each "
 "searched element."
 msgstr ""
 
-#: params.opt:187
+#: params.opt:191
 #, no-c-format
 msgid ""
 "The denominator n of fraction 1/n of the maximal execution count of a basic "
@@ -17124,7 +17135,7 @@ msgid ""
 "order to be considered hot (used in non-LTO mode)."
 msgstr ""
 
-#: params.opt:191
+#: params.opt:195
 #, no-c-format
 msgid ""
 "The number of most executed permilles of the profiled execution of the "
@@ -17132,7 +17143,7 @@ msgid ""
 "in order to be considered hot (used in LTO mode)."
 msgstr ""
 
-#: params.opt:195
+#: params.opt:199
 #, no-c-format
 msgid ""
 "The denominator n of fraction 1/n of the execution frequency of the entry "
@@ -17140,168 +17151,168 @@ msgid ""
 "have in order to be considered hot."
 msgstr ""
 
-#: params.opt:199
+#: params.opt:203
 #, no-c-format
 msgid ""
 "The scale (in percents) applied to inline-insns-single and auto limits when "
 "heuristics hints that inlining is very profitable."
 msgstr ""
 
-#: params.opt:203
+#: params.opt:207
 #, no-c-format
 msgid ""
 "The minimal estimated speedup allowing inliner to ignore inline-insns-single "
 "and inline-insns-auto."
 msgstr ""
 
-#: params.opt:207
+#: params.opt:211
 #, no-c-format
 msgid ""
 "How much can given compilation unit grow because of the inlining (in "
 "percent)."
 msgstr ""
 
-#: params.opt:211
+#: params.opt:215
 #, no-c-format
 msgid "The upper bound for sharing integer constants."
 msgstr ""
 
-#: params.opt:215
+#: params.opt:219
 #, no-c-format
 msgid ""
 "Threshold ipa-cp opportunity evaluation that is still considered beneficial "
 "to clone."
 msgstr ""
 
-#: params.opt:219
+#: params.opt:223
 #, no-c-format
 msgid ""
 "Compile-time bonus IPA-CP assigns to candidates which make loop bounds or "
 "strides known."
 msgstr ""
 
-#: params.opt:223
+#: params.opt:227
 #, no-c-format
 msgid "Maximum depth of recursive cloning for self-recursive function."
 msgstr ""
 
-#: params.opt:227
+#: params.opt:231
 #, no-c-format
 msgid ""
 "Recursive cloning only when the probability of call being executed exceeds "
 "the parameter."
 msgstr ""
 
-#: params.opt:231
+#: params.opt:235
 #, no-c-format
 msgid ""
 "When propagating IPA-CP effect estimates, multiply frequencies of recursive "
 "edges that bring back an unchanged value by this factor."
 msgstr ""
 
-#: params.opt:235
+#: params.opt:239
 #, no-c-format
 msgid ""
 "Percentage penalty the recursive functions will receive when they are "
 "evaluated for cloning."
 msgstr ""
 
-#: params.opt:239
+#: params.opt:243
 #, no-c-format
 msgid ""
 "Percentage penalty functions containing a single call to another function "
 "will receive when they are evaluated for cloning."
 msgstr ""
 
-#: params.opt:243
+#: params.opt:247
 #, no-c-format
 msgid ""
 "How much can given compilation unit grow because of the interprocedural "
 "constant propagation (in percent)."
 msgstr ""
 
-#: params.opt:247
+#: params.opt:251
 #, no-c-format
 msgid "The size of translation unit that IPA-CP pass considers large."
 msgstr ""
 
-#: params.opt:251
+#: params.opt:255
 #, no-c-format
 msgid ""
 "Maximum size of a list of values associated with each parameter for "
 "interprocedural constant propagation."
 msgstr ""
 
-#: params.opt:255
+#: params.opt:259
 #, no-c-format
 msgid ""
 "When using profile feedback, use the edge at this percentage position in "
 "frequncy histogram as the bases for IPA-CP heuristics."
 msgstr ""
 
-#: params.opt:259
+#: params.opt:263
 #, no-c-format
 msgid ""
 "Maximum number of statements visited during jump function offset discovery."
 msgstr ""
 
-#: params.opt:263
+#: params.opt:267
 #, 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."
 msgstr ""
 
-#: params.opt:267
+#: params.opt:271
 #, no-c-format
 msgid ""
 "Maximum number of aggregate content items for a parameter in jump functions "
 "and lattices."
 msgstr ""
 
-#: params.opt:271
+#: params.opt:275
 #, no-c-format
 msgid ""
 "Maximum number of operations in a parameter expression that can be handled "
 "by IPA analysis."
 msgstr ""
 
-#: params.opt:275
+#: params.opt:279
 #, no-c-format
 msgid ""
 "Maximum number of different predicates used to track properties of loops in "
 "IPA analysis."
 msgstr ""
 
-#: params.opt:279
+#: params.opt:283
 #, no-c-format
 msgid ""
 "Maximal number of boundary endpoints of case ranges of switch statement used "
 "during IPA function summary generation."
 msgstr ""
 
-#: params.opt:283
+#: params.opt:287
 #, 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."
 msgstr ""
 
-#: params.opt:287
+#: params.opt:291
 #, 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."
 msgstr ""
 
-#: params.opt:291
+#: params.opt:295
 #, no-c-format
 msgid ""
 "Maximum allowed growth of total size of new parameters that ipa-sra replaces "
 "a pointer to an aggregate with."
 msgstr ""
 
-#: params.opt:295
+#: params.opt:299
 #, no-c-format
 msgid ""
 "Additional maximum allowed growth of total size of new parameters that ipa-"
@@ -17310,29 +17321,29 @@ msgid ""
 "functions."
 msgstr ""
 
-#: params.opt:299
+#: params.opt:303
 #, no-c-format
 msgid ""
 "The number of registers in each class kept unused by loop invariant motion."
 msgstr ""
 
-#: params.opt:303
+#: params.opt:307
 #, no-c-format
 msgid "Max size of conflict table in MB."
 msgstr ""
 
-#: params.opt:307
+#: params.opt:311
 #, no-c-format
 msgid ""
 "Approximate function insn number in 1K units triggering simple local RA."
 msgstr ""
 
-#: params.opt:311
+#: params.opt:315
 #, no-c-format
 msgid "Max loops number for regional RA."
 msgstr ""
 
-#: params.opt:315
+#: params.opt:319
 #, no-c-format
 msgid ""
 "Control ira to consider matching constraint (duplicated operand number) "
@@ -17344,45 +17355,45 @@ msgid ""
 "class and respect the found qualified matching constraint."
 msgstr ""
 
-#: params.opt:319
+#: params.opt:323
 #, no-c-format
 msgid ""
 "If number of candidates in the set is smaller, we always try to remove "
 "unused ivs during its optimization."
 msgstr ""
 
-#: params.opt:323
+#: params.opt:327
 #, no-c-format
 msgid ""
 "Bound on number of candidates below that all candidates are considered in iv "
 "optimizations."
 msgstr ""
 
-#: params.opt:327
+#: params.opt:331
 #, no-c-format
 msgid "Bound on number of iv uses in loop optimized in iv optimizations."
 msgstr ""
 
-#: params.opt:331
+#: params.opt:335
 #, 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."
 msgstr ""
 
-#: params.opt:335
+#: params.opt:339
 #, 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."
 msgstr ""
 
-#: params.opt:339
+#: params.opt:343
 #, no-c-format
 msgid "The size of L1 cache line."
 msgstr ""
 
-#: params.opt:343
+#: params.opt:347
 #, no-c-format
 msgid ""
 "The minimum recommended offset between two concurrently-accessed objects to "
@@ -17393,7 +17404,7 @@ msgid ""
 "discouraged from doing so in public ABIs."
 msgstr ""
 
-#: params.opt:352
+#: params.opt:356
 #, no-c-format
 msgid ""
 "The maximum recommended size of contiguous memory occupied by two objects "
@@ -17402,730 +17413,737 @@ msgid ""
 "processors with different cache line sizes."
 msgstr ""
 
-#: params.opt:359
+#: params.opt:363
 #, no-c-format
 msgid "The size of L1 cache."
 msgstr ""
 
-#: params.opt:363
+#: params.opt:367
 #, no-c-format
 msgid "The size of L2 cache."
 msgstr ""
 
-#: params.opt:367
+#: params.opt:371
 #, no-c-format
 msgid "Maximal growth due to inlining of large function (in percent)."
 msgstr ""
 
-#: params.opt:371
+#: params.opt:375
 #, no-c-format
 msgid "The size of function body to be considered large."
 msgstr ""
 
-#: params.opt:375
+#: params.opt:379
 #, no-c-format
 msgid "The size of stack frame to be considered large."
 msgstr ""
 
-#: params.opt:379
+#: params.opt:383
 #, no-c-format
 msgid "Maximal stack frame growth due to inlining (in percent)."
 msgstr ""
 
-#: params.opt:383
+#: params.opt:387
 #, no-c-format
 msgid "The size of translation unit to be considered large."
 msgstr ""
 
-#: params.opt:387
+#: params.opt:391
 #, no-c-format
 msgid "Maximum number of concurrently open C++ module files when lazy loading."
 msgstr ""
 
-#: params.opt:391
+#: params.opt:395
 #, no-c-format
 msgid ""
 "The minimum cost of an expensive expression in the loop invariant motion."
 msgstr ""
 
-#: params.opt:395
+#: params.opt:399
 #, no-c-format
 msgid "True if a non-short-circuit operation is optimal."
 msgstr ""
 
-#: params.opt:399
+#: params.opt:403
 #, no-c-format
 msgid "Size of tiles for loop blocking."
 msgstr ""
 
-#: params.opt:403
+#: params.opt:407
 #, no-c-format
 msgid "The maximum number of stmts in loop nest for loop interchange."
 msgstr ""
 
-#: params.opt:407
+#: params.opt:411
 #, no-c-format
 msgid "The minimum stride ratio for loop interchange to be profitable."
 msgstr ""
 
-#: params.opt:411
+#: params.opt:415
 #, no-c-format
 msgid "Max basic blocks number in loop for loop invariant motion."
 msgstr ""
 
-#: params.opt:415
+#: params.opt:419
 #, no-c-format
 msgid "Maximum number of datarefs in loop for building loop data dependencies."
 msgstr ""
 
-#: params.opt:419
+#: params.opt:423
 #, no-c-format
 msgid ""
 "The maximum number of instructions in an inner loop that is being considered "
 "for versioning."
 msgstr ""
 
-#: params.opt:423
+#: params.opt:427
 #, 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."
 msgstr ""
 
-#: params.opt:427
+#: params.opt:431
 #, no-c-format
 msgid ""
 "Minimal fall-through edge probability in percentage used to add BB to "
 "inheritance EBB in LRA."
 msgstr ""
 
-#: params.opt:431
+#: params.opt:435
 #, no-c-format
 msgid ""
 "The max number of reload pseudos which are considered during spilling a non-"
 "reload pseudo."
 msgstr ""
 
-#: params.opt:435
+#: params.opt:439
 #, no-c-format
 msgid "Maximal size of a partition for LTO (in estimated instructions)."
 msgstr ""
 
-#: params.opt:439
+#: params.opt:443
 #, no-c-format
 msgid "maximal number of LTO partitions streamed in parallel."
 msgstr ""
 
-#: params.opt:443
+#: params.opt:447
 #, no-c-format
 msgid "Minimal size of a partition for LTO (in estimated instructions)."
 msgstr ""
 
-#: params.opt:447
+#: params.opt:451
 #, no-c-format
 msgid "Number of partitions the program should be split to."
 msgstr ""
 
-#: params.opt:451
+#: params.opt:455
 #, no-c-format
 msgid ""
 "The maximum number of instructions to consider to unroll in a loop on "
 "average."
 msgstr ""
 
-#: params.opt:455
+#: params.opt:459
 #, no-c-format
 msgid "The maximum number of insns combine tries to combine."
 msgstr ""
 
-#: params.opt:459
+#: params.opt:463
 #, no-c-format
 msgid "The maximum depth of a loop nest we completely peel."
 msgstr ""
 
-#: params.opt:463
+#: params.opt:467
 #, no-c-format
 msgid ""
 "The maximum number of peelings of a single loop that is peeled completely."
 msgstr ""
 
-#: params.opt:467
+#: params.opt:471
 #, no-c-format
 msgid "The maximum number of insns of a completely peeled loop."
 msgstr ""
 
-#: params.opt:471
+#: params.opt:475
 #, no-c-format
 msgid "The maximum number of incoming edges to consider for crossjumping."
 msgstr ""
 
-#: params.opt:475
+#: params.opt:479
 #, no-c-format
 msgid "The maximum instructions CSE process before flushing."
 msgstr ""
 
-#: params.opt:479
+#: params.opt:483
 #, no-c-format
 msgid "The maximum length of path considered in cse."
 msgstr ""
 
-#: params.opt:483
+#: params.opt:487
 #, no-c-format
 msgid "The maximum memory locations recorded by cselib."
 msgstr ""
 
-#: params.opt:487
+#: params.opt:491
 #, no-c-format
 msgid "Max. count of debug markers to expand or inline."
 msgstr ""
 
-#: params.opt:491
+#: params.opt:495
 #, no-c-format
 msgid "The maximum number of instructions to consider to fill a delay slot."
 msgstr ""
 
-#: params.opt:495
+#: params.opt:499
 #, no-c-format
 msgid ""
 "The maximum number of instructions to consider to find accurate live "
 "register information."
 msgstr ""
 
-#: params.opt:499
+#: params.opt:503
 #, no-c-format
 msgid "Maximum number of active local stores in RTL dead store elimination."
 msgstr ""
 
-#: params.opt:503
+#: params.opt:507
 #, no-c-format
 msgid ""
 "The maximum number of nested indirect inlining performed by early inliner."
 msgstr ""
 
-#: params.opt:507
+#: params.opt:511
 #, no-c-format
 msgid ""
 "Maximum number of fields in a structure before pointer analysis treats the "
 "structure as a single variable."
 msgstr ""
 
-#: params.opt:511
+#: params.opt:515
 #, no-c-format
 msgid ""
 "Maximum number of instructions to copy when duplicating blocks on a finite "
 "state automaton jump thread path."
 msgstr ""
 
-#: params.opt:515
+#: params.opt:519
 #, no-c-format
 msgid "The maximum ratio of insertions to deletions of expressions in GCSE."
 msgstr ""
 
-#: params.opt:519
+#: params.opt:523
 #, no-c-format
 msgid "The maximum amount of memory to be allocated by GCSE, in kilobytes."
 msgstr ""
 
-#: params.opt:523
+#: params.opt:527
 #, no-c-format
 msgid ""
 "The maximum number of insns to duplicate when unfactoring computed gotos."
 msgstr ""
 
-#: params.opt:527
+#: params.opt:531
 #, no-c-format
 msgid "The maximum expansion factor when copying basic blocks."
 msgstr ""
 
-#: params.opt:531
+#: params.opt:535
 #, no-c-format
 msgid "Maximum depth of search in the dominator tree for expressions to hoist."
 msgstr ""
 
-#: params.opt:535
+#: params.opt:539
 #, no-c-format
 msgid ""
 "Maximum loop depth of a call which is considered for inlining functions "
 "called once."
 msgstr ""
 
-#: params.opt:539
+#: params.opt:543
 #, no-c-format
 msgid ""
 "Maximum combined size of caller and callee which is inlined if callee is "
 "called once."
 msgstr ""
 
-#: params.opt:543
+#: params.opt:547
 #, no-c-format
 msgid "The maximum number of instructions when automatically inlining."
 msgstr ""
 
-#: params.opt:547
+#: params.opt:551
 #, no-c-format
 msgid ""
 "The maximum number of instructions inline function can grow to via recursive "
 "inlining."
 msgstr ""
 
-#: params.opt:551
+#: params.opt:555
 #, no-c-format
 msgid ""
 "The maximum number of instructions non-inline function can grow to via "
 "recursive inlining."
 msgstr ""
 
-#: params.opt:555
+#: params.opt:559
 #, no-c-format
 msgid ""
 "The maximum number of instructions in a single function eligible for "
 "inlining."
 msgstr ""
 
-#: params.opt:559
+#: params.opt:563
 #, no-c-format
 msgid "The maximum number of instructions when inlining for size."
 msgstr ""
 
-#: params.opt:563
+#: params.opt:567
 #, no-c-format
 msgid ""
 "The maximum number of instructions when automatically inlining small "
 "functions."
 msgstr ""
 
-#: params.opt:567
+#: params.opt:571
 #, no-c-format
 msgid "The maximum depth of recursive inlining for inline functions."
 msgstr ""
 
-#: params.opt:571
+#: params.opt:575
 #, no-c-format
 msgid "The maximum depth of recursive inlining for non-inline functions."
 msgstr ""
 
-#: params.opt:575
+#: params.opt:579
 #, no-c-format
 msgid "Maximum number of isl operations, 0 means unlimited."
 msgstr ""
 
-#: params.opt:579
+#: params.opt:583
 #, no-c-format
 msgid "Bound on the cost of an expression to compute the number of iterations."
 msgstr ""
 
-#: params.opt:583
+#: params.opt:587
 #, no-c-format
 msgid ""
 "Bound on the number of iterations the brute force # of iterations analysis "
 "algorithm evaluates."
 msgstr ""
 
-#: params.opt:587
+#: params.opt:591
 #, no-c-format
 msgid ""
 "Maximum number of statements allowed in a block that needs to be duplicated "
 "when threading jumps."
 msgstr ""
 
-#: params.opt:591
+#: params.opt:595
 #, no-c-format
 msgid "Search space limit for the backwards jump threader."
 msgstr ""
 
-#: params.opt:595
+#: params.opt:599
 #, no-c-format
 msgid ""
 "The maximum number of RTL nodes that can be recorded as combiner's last "
 "value."
 msgstr ""
 
-#: params.opt:599
+#: params.opt:603
 #, no-c-format
 msgid ""
 "The maximum number of insns in loop header duplicated by the copy loop "
 "headers pass."
 msgstr ""
 
-#: params.opt:603
+#: params.opt:607
 #, no-c-format
 msgid ""
 "The maximum number of backtrack attempts the scheduler should make when "
 "modulo scheduling a loop."
 msgstr ""
 
-#: params.opt:607
+#: params.opt:611
 #, no-c-format
 msgid "Minimum page size for warning purposes."
 msgstr ""
 
-#: params.opt:611
+#: params.opt:615
 #, no-c-format
 msgid ""
 "Maximum length of partial antic set when performing tree pre optimization."
 msgstr ""
 
-#: params.opt:615
+#: params.opt:619
 #, no-c-format
 msgid "The maximum number of branches on the path through the peeled sequence."
 msgstr ""
 
-#: params.opt:619
+#: params.opt:623
 #, no-c-format
 msgid "The maximum number of peelings of a single loop."
 msgstr ""
 
-#: params.opt:623
+#: params.opt:627
 #, no-c-format
 msgid "The maximum number of insns of a peeled loop."
 msgstr ""
 
-#: params.opt:627
+#: params.opt:631
 #, no-c-format
 msgid "The maximum length of scheduling's pending operations list."
 msgstr ""
 
-#: params.opt:631 params.opt:675
+#: params.opt:635 params.opt:679
 #, no-c-format
 msgid ""
 "The maximum number of blocks in a region to be considered for interblock "
 "scheduling."
 msgstr ""
 
-#: params.opt:635 params.opt:679
+#: params.opt:639 params.opt:683
 #, no-c-format
 msgid ""
 "The maximum number of insns in a region to be considered for interblock "
 "scheduling."
 msgstr ""
 
-#: params.opt:639
+#: params.opt:643
 #, no-c-format
 msgid ""
 "Maximum depth of sqrt chains to use when synthesizing exponentiation by a "
 "real constant."
 msgstr ""
 
-#: params.opt:643
+#: params.opt:647
 #, no-c-format
 msgid "The maximum number of loop iterations we predict statically."
 msgstr ""
 
-#: params.opt:647
+#: params.opt:651
 #, no-c-format
 msgid ""
 "The maximum number of instructions to search backward when looking for "
 "equivalent reload."
 msgstr ""
 
-#: params.opt:651
+#: params.opt:655
 #, no-c-format
 msgid ""
 "Maximum number of insns in a basic block to consider for RTL if-conversion."
 msgstr ""
 
-#: params.opt:655
+#: params.opt:659
 #, 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."
 msgstr ""
 
-#: params.opt:659
+#: params.opt:663
 #, 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."
 msgstr ""
 
-#: params.opt:663
+#: params.opt:667
 #, no-c-format
 msgid "The maximum number of iterations through CFG to extend regions."
 msgstr ""
 
-#: params.opt:667
+#: params.opt:671
 #, no-c-format
 msgid ""
 "The maximum conflict delay for an insn to be considered for speculative "
 "motion."
 msgstr ""
 
-#: params.opt:671
+#: params.opt:675
 #, no-c-format
 msgid ""
 "The maximum number of instructions ready to be issued to be considered by "
 "the scheduler during the first scheduling pass."
 msgstr ""
 
-#: params.opt:683
+#: params.opt:687
 #, no-c-format
 msgid "Maximum length of candidate scans for straight-line strength reduction."
 msgstr ""
 
-#: params.opt:687
+#: params.opt:691
 #, no-c-format
 msgid "Maximum number of may-defs visited when devirtualizing speculatively."
 msgstr ""
 
-#: params.opt:691
+#: params.opt:695
 #, no-c-format
 msgid ""
 "Maximum recursion depth allowed when querying a property of an SSA name."
 msgstr ""
 
-#: params.opt:695
+#: params.opt:699
 #, no-c-format
 msgid "Maximum number of constant stores to merge in the store merging pass."
 msgstr ""
 
-#: params.opt:699
+#: params.opt:703
 #, no-c-format
 msgid "Maximum number of conditional store pairs that can be sunk."
 msgstr ""
 
-#: params.opt:703 params.opt:707
+#: params.opt:707 params.opt:711
 #, no-c-format
 msgid ""
 "Maximum number of store chains to track at the same time in the store "
 "merging pass."
 msgstr ""
 
-#: params.opt:711
+#: params.opt:715
 #, no-c-format
 msgid "Maximum amount of similar bbs to compare a bb with."
 msgstr ""
 
-#: params.opt:715
+#: params.opt:719
 #, no-c-format
 msgid "Maximum amount of iterations of the pass over a function."
 msgstr ""
 
-#: params.opt:719
+#: params.opt:723
 #, no-c-format
 msgid ""
 "Maximum number of strings for which strlen optimization pass will track "
 "string lengths."
 msgstr ""
 
-#: params.opt:723
+#: params.opt:727
 #, no-c-format
 msgid ""
 "Maximum number of arguments in a PHI supported by TREE if-conversion unless "
 "the loop is marked with simd pragma."
 msgstr ""
 
-#: params.opt:727
+#: params.opt:731
 #, no-c-format
 msgid "The maximum number of unrollings of a single loop."
 msgstr ""
 
-#: params.opt:731
+#: params.opt:735
 #, no-c-format
 msgid "The maximum number of instructions to consider to unroll in a loop."
 msgstr ""
 
-#: params.opt:735
+#: params.opt:739
 #, no-c-format
 msgid "The maximum number of insns of an unswitched loop."
 msgstr ""
 
-#: params.opt:739
+#: params.opt:743
 #, no-c-format
 msgid "The maximum depth of a loop nest to be unswitched."
 msgstr ""
 
-#: params.opt:743
+#: params.opt:747
 #, 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."
 msgstr ""
 
-#: params.opt:747
+#: params.opt:751
 #, no-c-format
 msgid "Max. recursion depth for expanding var tracking expressions."
 msgstr ""
 
-#: params.opt:751
+#: params.opt:755
 #, no-c-format
 msgid "Max. size of loc list for which reverse ops should be added."
 msgstr ""
 
-#: params.opt:755
+#: params.opt:759
 #, no-c-format
 msgid "Max. size of var tracking hash tables."
 msgstr ""
 
-#: params.opt:759
+#: params.opt:763
 #, no-c-format
 msgid "Maximum number of VALUEs handled during a single find_base_term call."
 msgstr ""
 
-#: params.opt:763
+#: params.opt:767
 #, no-c-format
 msgid ""
 "The minimum number of matching instructions to consider for crossjumping."
 msgstr ""
 
-#: params.opt:767
+#: params.opt:771
 #, no-c-format
 msgid ""
 "Inline recursively only when the probability of call being executed exceeds "
 "the parameter."
 msgstr ""
 
-#: params.opt:771
+#: params.opt:775
 #, no-c-format
 msgid ""
 "Min. ratio of insns to prefetches to enable prefetching for a loop with an "
 "unknown trip count."
 msgstr ""
 
-#: params.opt:775
+#: params.opt:779
 #, no-c-format
 msgid ""
 "The minimum threshold for probability of semi-invariant condition statement "
 "to trigger loop split."
 msgstr ""
 
-#: params.opt:779
+#: params.opt:783
 #, no-c-format
 msgid "The minimum UID to be used for a nondebug insn."
 msgstr ""
 
-#: params.opt:783
+#: params.opt:787
 #, no-c-format
 msgid ""
 "The minimum size of variables taking part in stack slot sharing when not "
 "optimizing."
 msgstr ""
 
-#: params.opt:787
+#: params.opt:791
 #, no-c-format
 msgid ""
 "The minimum probability of reaching a source block for interblock "
 "speculative scheduling."
 msgstr ""
 
-#: params.opt:791
+#: params.opt:795
 #, no-c-format
 msgid ""
 "If -ftree-vectorize is used, the minimal loop bound of a loop to be "
 "considered for vectorization."
 msgstr ""
 
-#: params.opt:795
+#: params.opt:799
 #, no-c-format
 msgid ""
 "--param=openacc-kernels=[decompose|parloops]\tSpecify mode of OpenACC "
 "'kernels' constructs handling."
 msgstr ""
 
-#: params.opt:808
+#: params.opt:812
 #, no-c-format
 msgid ""
 "--param=openacc-privatization=[quiet|noisy]\tSpecify mode of OpenACC "
 "privatization diagnostics."
 msgstr ""
 
-#: params.opt:821
+#: params.opt:825
 #, no-c-format
 msgid "Chunk size of omp schedule for loops parallelized by parloops."
 msgstr ""
 
-#: params.opt:825
+#: params.opt:829
 #, no-c-format
 msgid ""
 "Minimum number of iterations per thread of an innermost parallelized loop."
 msgstr ""
 
-#: params.opt:829
+#: params.opt:833
 #, no-c-format
 msgid ""
 "--param=parloops-schedule=[static|dynamic|guided|auto|runtime]\tSchedule "
 "type of omp schedule for loops parallelized by parloops."
 msgstr ""
 
-#: params.opt:851
+#: params.opt:855
 #, 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."
 msgstr ""
 
-#: params.opt:855
+#: params.opt:859
 #, no-c-format
 msgid "Maximal estimated outcome of branch considered predictable."
 msgstr ""
 
-#: params.opt:859
+#: params.opt:863
 #, no-c-format
 msgid ""
 "Whether software prefetch hints should be issued for non-constant strides."
 msgstr ""
 
-#: params.opt:863
+#: params.opt:867
 #, no-c-format
 msgid "The number of insns executed before prefetch is completed."
 msgstr ""
 
-#: params.opt:867
+#: params.opt:871
 #, no-c-format
 msgid "Min. ratio of insns to mem ops to enable prefetching in a loop."
 msgstr ""
 
-#: params.opt:871
+#: params.opt:875
 #, no-c-format
 msgid ""
 "The minimum constant stride beyond which we should use prefetch hints for."
 msgstr ""
 
-#: params.opt:875
+#: params.opt:879
 #, no-c-format
 msgid "Use internal function id in profile lookup."
 msgstr ""
 
-#: params.opt:879
+#: params.opt:883
 #, no-c-format
 msgid ""
 "--param=ranger-debug=[none|trace|gori|cache|tracegori|all] Specifies the "
 "output mode for debugging ranger."
 msgstr ""
 
-#: params.opt:904
+#: params.opt:908
 #, no-c-format
 msgid ""
 "Maximum depth of logical expression evaluation ranger will look through when "
 "evaluating outgoing edge ranges."
 msgstr ""
 
-#: params.opt:909
+#: params.opt:913
+#, no-c-format
+msgid ""
+"Maximum depth of instruction chains to consider for recomputation in the "
+"outgoing range calculator."
+msgstr ""
+
+#: params.opt:918
 #, no-c-format
 msgid "Maximum number of relations the oracle will register in a basic block."
 msgstr ""
 
-#: params.opt:913
+#: params.opt:922
 #, no-c-format
 msgid "Maximum depth of a loop nest to fully value-number optimistically."
 msgstr ""
 
-#: params.opt:917
+#: params.opt:926
 #, no-c-format
 msgid "Maximum number of disambiguations to perform per memory access."
 msgstr ""
 
-#: params.opt:921
+#: params.opt:930
 #, no-c-format
 msgid ""
 "Bound on the complexity of the expressions in the scalar evolutions analyzer."
 msgstr ""
 
-#: params.opt:925
+#: params.opt:934
 #, no-c-format
 msgid "Bound on size of expressions used in the scalar evolutions analyzer."
 msgstr ""
 
-#: params.opt:929
+#: params.opt:938
 #, no-c-format
 msgid ""
 "Hardware autoprefetcher scheduler model control flag.  Number of lookahead "
@@ -18133,285 +18151,285 @@ msgid ""
 "heuristic.  Disabled by default."
 msgstr ""
 
-#: params.opt:933
+#: params.opt:942
 #, no-c-format
 msgid "Minimal distance between possibly conflicting store and load."
 msgstr ""
 
-#: params.opt:937
+#: params.opt:946
 #, no-c-format
 msgid "Which -fsched-pressure algorithm to apply."
 msgstr ""
 
-#: params.opt:941
+#: params.opt:950
 #, no-c-format
 msgid ""
 "The minimal probability of speculation success (in percents), so that "
 "speculative insn will be scheduled."
 msgstr ""
 
-#: params.opt:945
+#: params.opt:954
 #, no-c-format
 msgid ""
 "The minimum probability an edge must have for the scheduler to save its "
 "state across it."
 msgstr ""
 
-#: params.opt:949
+#: params.opt:958
 #, no-c-format
 msgid ""
 "Maximum number of instructions in the ready list that are considered "
 "eligible for renaming."
 msgstr ""
 
-#: params.opt:953
+#: params.opt:962
 #, no-c-format
 msgid "The maximum size of the lookahead window of selective scheduling."
 msgstr ""
 
-#: params.opt:957
+#: params.opt:966
 #, no-c-format
 msgid "Maximum number of times that an insn could be scheduled."
 msgstr ""
 
-#: params.opt:961
+#: params.opt:970
 #, no-c-format
 msgid "The number of prefetches that can run at the same time."
 msgstr ""
 
-#: params.opt:965
+#: params.opt:974
 #, no-c-format
 msgid ""
 "Target block's relative execution frequency (as a percentage) required to "
 "sink a statement."
 msgstr ""
 
-#: params.opt:969
+#: params.opt:978
 #, no-c-format
 msgid ""
 "The number of cycles the swing modulo scheduler considers when checking "
 "conflicts using DFA."
 msgstr ""
 
-#: params.opt:973
+#: params.opt:982
 #, no-c-format
 msgid ""
 "A threshold on the average loop count considered by the swing modulo "
 "scheduler."
 msgstr ""
 
-#: params.opt:977
+#: params.opt:986
 #, no-c-format
 msgid ""
 "A factor for tuning the upper bound that swing modulo scheduler uses for "
 "scheduling a loop."
 msgstr ""
 
-#: params.opt:981
+#: params.opt:990
 #, no-c-format
 msgid ""
 "The minimum value of stage count that swing modulo scheduler will generate."
 msgstr ""
 
-#: params.opt:985
+#: params.opt:994
 #, no-c-format
 msgid ""
 "Maximum size, in storage units, of an aggregate which should be considered "
 "for scalarization when compiling for size."
 msgstr ""
 
-#: params.opt:989
+#: params.opt:998
 #, no-c-format
 msgid ""
 "Maximum size, in storage units, of an aggregate which should be considered "
 "for scalarization when compiling for speed."
 msgstr ""
 
-#: params.opt:993
+#: params.opt:1002
 #, no-c-format
 msgid ""
 "Maximum number of artificial accesses to enable forward propagation that "
 "Scalar Replacement of Aggregates will keep for one local variable."
 msgstr ""
 
-#: params.opt:997
+#: params.opt:1006
 #, no-c-format
 msgid ""
 "The maximum number of SSA_NAME assignments to follow in determining a value."
 msgstr ""
 
-#: params.opt:1001
+#: params.opt:1010
 #, no-c-format
 msgid ""
 "The lower bound for a buffer to be considered for stack smashing protection."
 msgstr ""
 
-#: params.opt:1005
+#: params.opt:1014
 #, no-c-format
 msgid "Size of the stack guard expressed as a power of two in bytes."
 msgstr ""
 
-#: params.opt:1009
+#: params.opt:1018
 #, no-c-format
 msgid ""
 "Interval in which to probe the stack expressed as a power of two in bytes."
 msgstr ""
 
-#: params.opt:1013
+#: params.opt:1022
 #, no-c-format
 msgid ""
 "Allow the store merging pass to introduce unaligned stores if it is legal to "
 "do so."
 msgstr ""
 
-#: params.opt:1017
+#: params.opt:1026
 #, no-c-format
 msgid "Maximum size of a single store merging region in bytes."
 msgstr ""
 
-#: params.opt:1021
+#: params.opt:1030
 #, no-c-format
 msgid ""
 "The maximum ratio between array size and switch branches for a switch "
 "conversion to take place."
 msgstr ""
 
-#: params.opt:1025
+#: params.opt:1034
 #, no-c-format
 msgid "Maximum number of bases stored in each modref tree."
 msgstr ""
 
-#: params.opt:1029
+#: params.opt:1038
 #, no-c-format
 msgid "Maximum number of references stored in each modref base."
 msgstr ""
 
-#: params.opt:1033
+#: params.opt:1042
 #, no-c-format
 msgid "Maximum number of accesses stored in each modref reference."
 msgstr ""
 
-#: params.opt:1037
+#: params.opt:1046
 #, no-c-format
 msgid "Maximum number of tests performed by modref query."
 msgstr ""
 
-#: params.opt:1041
+#: params.opt:1050
 #, no-c-format
 msgid "Maximum depth of DFS walk used by modref escape analysis."
 msgstr ""
 
-#: params.opt:1045
+#: params.opt:1054
 #, no-c-format
 msgid "Maximum number of escape points tracked by modref per SSA-name."
 msgstr ""
 
-#: params.opt:1049
+#: params.opt:1058
 #, no-c-format
 msgid "Maximum number of times a given range is adjusted during the dataflow."
 msgstr ""
 
-#: params.opt:1053
+#: params.opt:1062
 #, no-c-format
 msgid ""
 "--param=threader-debug=[none|all] Enables verbose dumping of the threader "
 "solver."
 msgstr ""
 
-#: params.opt:1066
+#: params.opt:1075
 #, no-c-format
 msgid ""
 "Size in bytes after which thread-local aggregates should be instrumented "
 "with the logging functions instead of save/restore pairs."
 msgstr ""
 
-#: params.opt:1070
+#: params.opt:1079
 #, 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."
 msgstr ""
 
-#: params.opt:1074
+#: params.opt:1083
 #, 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."
 msgstr ""
 
-#: params.opt:1078
+#: params.opt:1087
 #, no-c-format
 msgid "Maximal code growth caused by tail duplication (in percent)."
 msgstr ""
 
-#: params.opt:1082
+#: params.opt:1091
 #, 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."
 msgstr ""
 
-#: params.opt:1086
+#: params.opt:1095
 #, 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."
 msgstr ""
 
-#: params.opt:1090
+#: params.opt:1099
 #, no-c-format
 msgid ""
 "Stop reverse growth if the reverse probability of best edge is less than "
 "this threshold (in percent)."
 msgstr ""
 
-#: params.opt:1094
+#: params.opt:1103
 #, no-c-format
 msgid ""
 "Set the maximum number of instructions executed in parallel in reassociated "
 "tree.  If 0, use the target dependent heuristic."
 msgstr ""
 
-#: params.opt:1098
+#: params.opt:1107
 #, no-c-format
 msgid "Emit special instrumentation for accesses to volatiles."
 msgstr ""
 
-#: params.opt:1102
+#: params.opt:1111
 #, no-c-format
 msgid ""
 "Emit instrumentation calls to __tsan_func_entry() and __tsan_func_exit()."
 msgstr ""
 
-#: params.opt:1106
+#: params.opt:1115
 #, no-c-format
 msgid ""
 "Maximum number of nested calls to search for control dependencies during "
 "uninitialized variable analysis."
 msgstr ""
 
-#: params.opt:1110
+#: params.opt:1119
 #, no-c-format
 msgid ""
 "Instruction accounted for function prologue, epilogue and other overhead."
 msgstr ""
 
-#: params.opt:1114
+#: params.opt:1123
 #, no-c-format
 msgid "Time accounted for function prologue, epilogue and other overhead."
 msgstr ""
 
-#: params.opt:1118
+#: params.opt:1127
 #, no-c-format
 msgid "Instruction accounted for function thunk overhead."
 msgstr ""
 
-#: params.opt:1122
+#: params.opt:1131
 #, no-c-format
 msgid "Time accounted for function thunk overhead."
 msgstr ""
 
-#: params.opt:1126
+#: params.opt:1135
 #, no-c-format
 msgid ""
 "The denominator n of fraction 1/n of the number of profiled runs of the "
@@ -18419,64 +18437,64 @@ msgid ""
 "order for the basic block to be considered unlikely."
 msgstr ""
 
-#: params.opt:1130
+#: params.opt:1139
 #, no-c-format
 msgid "Maximum unroll factor for the unroll-and-jam transformation."
 msgstr ""
 
-#: params.opt:1134
+#: params.opt:1143
 #, no-c-format
 msgid ""
 "Minimum percentage of memrefs that must go away for unroll-and-jam to be "
 "considered profitable."
 msgstr ""
 
-#: params.opt:1138
+#: params.opt:1147
 #, no-c-format
 msgid ""
 "Use direct poisoning/unpoisoning instructions for variables smaller or equal "
 "to this number."
 msgstr ""
 
-#: params.opt:1142
+#: params.opt:1151
 #, no-c-format
 msgid "Whether to use canonical types."
 msgstr ""
 
-#: params.opt:1146
+#: params.opt:1155
 #, no-c-format
 msgid "Enable loop epilogue vectorization using smaller vector size."
 msgstr ""
 
-#: params.opt:1150
+#: params.opt:1159
 #, no-c-format
 msgid ""
 "Maximum number of possible vector layouts (such as permutations) to consider "
 "when optimizing to-be-vectorized code."
 msgstr ""
 
-#: params.opt:1154
+#: params.opt:1163
 #, no-c-format
 msgid ""
 "Maximum number of loop peels to enhance alignment of data references in a "
 "loop."
 msgstr ""
 
-#: params.opt:1158
+#: params.opt:1167
 #, no-c-format
 msgid ""
 "Bound on number of runtime checks inserted by the vectorizer's loop "
 "versioning for alias check."
 msgstr ""
 
-#: params.opt:1162
+#: params.opt:1171
 #, no-c-format
 msgid ""
 "Bound on number of runtime checks inserted by the vectorizer's loop "
 "versioning for alignment check."
 msgstr ""
 
-#: params.opt:1166
+#: params.opt:1175
 #, no-c-format
 msgid ""
 "Controls how loop vectorizer uses partial vectors.  0 means never, 1 means "
@@ -18484,14 +18502,14 @@ msgid ""
 "The default value is 2."
 msgstr ""
 
-#: params.opt:1170
+#: params.opt:1179
 #, 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."
 msgstr ""
 
-#: params.opt:1174
+#: params.opt:1183
 #, no-c-format
 msgid "Enable loop vectorization of floating point inductions."
 msgstr ""
@@ -18562,11 +18580,21 @@ msgstr ""
 msgid "const/copy propagation disabled"
 msgstr ""
 
-#: diagnostic-format-json.cc:317 diagnostic-format-sarif.cc:1530
+#: diagnostic-format-json.cc:317 diagnostic-format-sarif.cc:1605
 #, 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:1630
+#, c-format
+msgid "Internal compiler error:\n"
+msgstr ""
+
 #: diagnostic.cc:160
 #, c-format
 msgid "%s: all warnings being treated as errors"
@@ -18577,85 +18605,85 @@ msgstr ""
 msgid "%s: some warnings being treated as errors"
 msgstr ""
 
-#: diagnostic.cc:631
+#: diagnostic.cc:632
 #, c-format
 msgid "compilation terminated due to -fmax-errors=%u.\n"
 msgstr ""
 
-#: diagnostic.cc:659
+#: diagnostic.cc:660
 #, c-format
 msgid "compilation terminated due to -Wfatal-errors.\n"
 msgstr ""
 
-#: diagnostic.cc:680
+#: diagnostic.cc:693
 #, c-format
 msgid "Please submit a full bug report, with preprocessed source.\n"
 msgstr ""
 
-#: diagnostic.cc:683
+#: diagnostic.cc:696
 #, c-format
 msgid ""
 "Please submit a full bug report, with preprocessed source (by using -freport-"
 "bug).\n"
 msgstr ""
 
-#: diagnostic.cc:687
+#: diagnostic.cc:700
 #, c-format
 msgid "Please include the complete backtrace with any bug report.\n"
 msgstr ""
 
-#: diagnostic.cc:689
+#: diagnostic.cc:702
 #, c-format
 msgid "See %s for instructions.\n"
 msgstr ""
 
-#: diagnostic.cc:698
+#: diagnostic.cc:711
 #, c-format
 msgid "compilation terminated.\n"
 msgstr ""
 
-#: diagnostic.cc:792
+#: diagnostic.cc:805
 msgid "                 from"
 msgstr ""
 
-#: diagnostic.cc:793
+#: diagnostic.cc:806
 msgid "In file included from"
 msgstr ""
 
 #. 2
-#: diagnostic.cc:794
+#: diagnostic.cc:807
 msgid "        included from"
 msgstr ""
 
-#: diagnostic.cc:795
+#: diagnostic.cc:808
 msgid "In module"
 msgstr ""
 
 #. 4
-#: diagnostic.cc:796
+#: diagnostic.cc:809
 msgid "of module"
 msgstr ""
 
-#: diagnostic.cc:797
+#: diagnostic.cc:810
 msgid "In module imported at"
 msgstr ""
 
 #. 6
-#: diagnostic.cc:798
+#: diagnostic.cc:811
 msgid "imported at"
 msgstr ""
 
-#: diagnostic.cc:1557
+#: diagnostic.cc:1570
 #, c-format
 msgid "%s:%d: confused by earlier errors, bailing out\n"
 msgstr ""
 
-#: diagnostic.cc:2192
+#: diagnostic.cc:2205
 #, c-format
 msgid "internal compiler error: error reporting routines re-entered.\n"
 msgstr ""
 
-#: diagnostic.cc:2223 diagnostic.cc:2242
+#: diagnostic.cc:2236 diagnostic.cc:2255
 #, gcc-internal-format, gfc-internal-format
 msgid "in %s, at %s:%d"
 msgstr ""
@@ -18706,12 +18734,12 @@ msgstr ""
 #. PRINT_OPERAND must handle them.
 #. We can't handle floating point constants;
 #. TARGET_PRINT_OPERAND must handle them.
-#: final.cc:3729 config/arc/arc.cc:6430 config/i386/i386.cc:12312
+#: final.cc:3729 config/arc/arc.cc:6430 config/i386/i386.cc:12317
 #, c-format
 msgid "floating constant misused"
 msgstr ""
 
-#: final.cc:3787 config/arc/arc.cc:6527 config/i386/i386.cc:12403
+#: final.cc:3787 config/arc/arc.cc:6527 config/i386/i386.cc:12408
 #: config/pdp11/pdp11.cc:1871
 #, c-format
 msgid "invalid expression as operand"
@@ -19017,96 +19045,96 @@ msgid ""
 " other options on to these processes the -W<letter> options must be used.\n"
 msgstr ""
 
-#: gcc.cc:6762
+#: gcc.cc:6766
 #, c-format
 msgid "Processing spec (%s), which is '%s'\n"
 msgstr ""
 
-#: gcc.cc:7523
+#: gcc.cc:7527
 #, c-format
 msgid "Target: %s\n"
 msgstr ""
 
-#: gcc.cc:7524
+#: gcc.cc:7528
 #, c-format
 msgid "Configured with: %s\n"
 msgstr ""
 
-#: gcc.cc:7538
+#: gcc.cc:7542
 #, c-format
 msgid "Thread model: %s\n"
 msgstr ""
 
-#: gcc.cc:7539
+#: gcc.cc:7543
 #, c-format
 msgid "Supported LTO compression algorithms: zlib"
 msgstr ""
 
-#: gcc.cc:7541
+#: gcc.cc:7545
 #, c-format
 msgid " zstd"
 msgstr ""
 
-#: gcc.cc:7543 gcov.cc:1510 gcov.cc:1568 gcov.cc:1580 gcov.cc:2903
+#: gcc.cc:7547 gcov.cc:1510 gcov.cc:1568 gcov.cc:1580 gcov.cc:2903
 #, c-format
 msgid "\n"
 msgstr ""
 
-#: gcc.cc:7554
+#: gcc.cc:7558
 #, c-format
 msgid "gcc version %s %s\n"
 msgstr ""
 
-#: gcc.cc:7557
+#: gcc.cc:7561
 #, c-format
 msgid "gcc driver version %s %sexecuting gcc version %s\n"
 msgstr ""
 
-#: gcc.cc:7630 gcc.cc:7840
+#: gcc.cc:7634 gcc.cc:7844
 #, c-format
 msgid ""
 "The bug is not reproducible, so it is likely a hardware or OS problem.\n"
 msgstr ""
 
-#: gcc.cc:7764
+#: gcc.cc:7768
 #, c-format
 msgid ""
 "Preprocessed source stored into %s file, please attach this to your "
 "bugreport.\n"
 msgstr ""
 
-#: gcc.cc:8615
+#: gcc.cc:8619
 #, c-format
 msgid "install: %s%s\n"
 msgstr ""
 
-#: gcc.cc:8618
+#: gcc.cc:8622
 #, c-format
 msgid "programs: %s\n"
 msgstr ""
 
-#: gcc.cc:8620
+#: gcc.cc:8624
 #, c-format
 msgid "libraries: %s\n"
 msgstr ""
 
-#: gcc.cc:8737
+#: gcc.cc:8741
 #, c-format
 msgid ""
 "\n"
 "For bug reporting instructions, please see:\n"
 msgstr ""
 
-#: gcc.cc:8753 gcov-tool.cc:594
+#: gcc.cc:8757 gcov-tool.cc:594
 #, c-format
 msgid "%s %s%s\n"
 msgstr ""
 
-#: gcc.cc:8756 gcov-tool.cc:596 gcov.cc:968 fortran/gfortranspec.cc:282
+#: gcc.cc:8760 gcov-tool.cc:596 gcov.cc:968 fortran/gfortranspec.cc:282
 msgid "(C)"
 msgstr ""
 
-#: gcc.cc:8757 gcov-tool.cc:598 gcov.cc:970 fortran/gfortranspec.cc:283
+#: gcc.cc:8761 gcov-tool.cc:598 gcov.cc:970 fortran/gfortranspec.cc:283
 #, c-format
 msgid ""
 "This is free software; see the source for copying conditions.  There is NO\n"
@@ -19114,7 +19142,7 @@ msgid ""
 "\n"
 msgstr ""
 
-#: gcc.cc:9100
+#: gcc.cc:9104
 #, c-format
 msgid ""
 "\n"
@@ -19123,14 +19151,14 @@ msgid ""
 "\n"
 msgstr ""
 
-#: gcc.cc:9101
+#: gcc.cc:9105
 #, c-format
 msgid ""
 "Use \"-Wl,OPTION\" to pass \"OPTION\" to the linker.\n"
 "\n"
 msgstr ""
 
-#: gcc.cc:10502
+#: gcc.cc:10506
 #, c-format
 msgid ""
 "Assembler options\n"
@@ -19138,7 +19166,7 @@ msgid ""
 "\n"
 msgstr ""
 
-#: gcc.cc:10503
+#: gcc.cc:10507
 #, c-format
 msgid ""
 "Use \"-Wa,OPTION\" to pass \"OPTION\" to the assembler.\n"
@@ -19173,7 +19201,7 @@ msgstr ""
 
 #: gcov-tool.cc:188
 #, c-format
-msgid "Merge subcomand usage:"
+msgid "Merge subcommand usage:"
 msgstr ""
 
 #: gcov-tool.cc:240
@@ -19186,7 +19214,7 @@ msgstr ""
 
 #: gcov-tool.cc:258
 #, c-format
-msgid "Merge-stream subcomand usage:"
+msgid "Merge-stream subcommand usage:"
 msgstr ""
 
 #: gcov-tool.cc:335
@@ -19260,7 +19288,7 @@ msgstr ""
 
 #: gcov-tool.cc:510
 #, c-format
-msgid "Overlap subcomand usage:"
+msgid "Overlap subcommand usage:"
 msgstr ""
 
 #: gcov-tool.cc:576
@@ -19758,130 +19786,130 @@ msgstr ""
 msgid "this is the insn:"
 msgstr ""
 
-#: lra-constraints.cc:3142
+#: lra-constraints.cc:3144
 msgid "unable to generate reloads for impossible constraints:"
 msgstr ""
 
-#: lra-constraints.cc:4168 reload.cc:3844
+#: lra-constraints.cc:4170 reload.cc:3844
 msgid "unable to generate reloads for:"
 msgstr ""
 
 #. What to print when a switch has no documentation.
-#: opts.cc:321
+#: opts.cc:325
 msgid "This option lacks documentation."
 msgstr ""
 
-#: opts.cc:322
+#: opts.cc:326
 msgid "Uses of this option are diagnosed."
 msgstr ""
 
-#: opts.cc:1647
+#: opts.cc:1651
 #, c-format
 msgid "Same as %s%s (or, in negated form, %s%s)."
 msgstr ""
 
-#: opts.cc:1652
+#: opts.cc:1656
 #, c-format
 msgid "Same as %s%s."
 msgstr ""
 
-#: opts.cc:1657
+#: opts.cc:1661
 #, c-format
 msgid "Same as %s."
 msgstr ""
 
-#: opts.cc:1665
+#: opts.cc:1669
 #, c-format
 msgid "%s  Same as %s."
 msgstr ""
 
-#: opts.cc:1728
+#: opts.cc:1732
 msgid "[available in "
 msgstr ""
 
-#: opts.cc:1760
+#: opts.cc:1764
 msgid "[default]"
 msgstr ""
 
-#: opts.cc:1769
+#: opts.cc:1773
 #, c-format
 msgid "%llu bytes"
 msgstr ""
 
-#: opts.cc:1806
+#: opts.cc:1810
 msgid "[enabled]"
 msgstr ""
 
-#: opts.cc:1808
+#: opts.cc:1812
 msgid "[disabled]"
 msgstr ""
 
-#: opts.cc:1844
+#: opts.cc:1848
 #, c-format
 msgid " No options with the desired characteristics were found\n"
 msgstr ""
 
-#: opts.cc:1853
+#: opts.cc:1857
 #, c-format
 msgid ""
 " None found.  Use --help=%s to show *all* the options supported by the %s "
 "front-end.\n"
 msgstr ""
 
-#: opts.cc:1859
+#: opts.cc:1863
 #, c-format
 msgid ""
 " All options with the desired characteristics have already been displayed\n"
 msgstr ""
 
-#: opts.cc:1904
+#: opts.cc:1908
 #, c-format
 msgid ""
 "  Known valid arguments for %s option:\n"
 "   "
 msgstr ""
 
-#: opts.cc:1954
+#: opts.cc:1958
 msgid "The following options are target specific"
 msgstr ""
 
-#: opts.cc:1957
+#: opts.cc:1961
 msgid "The following options control compiler warning messages"
 msgstr ""
 
-#: opts.cc:1960
+#: opts.cc:1964
 msgid "The following options control optimizations"
 msgstr ""
 
-#: opts.cc:1963 opts.cc:2003
+#: opts.cc:1967 opts.cc:2007
 msgid "The following options are language-independent"
 msgstr ""
 
-#: opts.cc:1966
+#: opts.cc:1970
 msgid "The following options control parameters"
 msgstr ""
 
-#: opts.cc:1972
+#: opts.cc:1976
 msgid "The following options are specific to just the language "
 msgstr ""
 
-#: opts.cc:1974
+#: opts.cc:1978
 msgid "The following options are supported by the language "
 msgstr ""
 
-#: opts.cc:1985
+#: opts.cc:1989
 msgid "The following options are not documented"
 msgstr ""
 
-#: opts.cc:1987
+#: opts.cc:1991
 msgid "The following options take separate arguments"
 msgstr ""
 
-#: opts.cc:1989
+#: opts.cc:1993
 msgid "The following options take joined arguments"
 msgstr ""
 
-#: opts.cc:2001
+#: opts.cc:2005
 msgid "The following options are language-related"
 msgstr ""
 
@@ -19936,16 +19964,16 @@ msgstr ""
 msgid "insn does not satisfy its constraints:"
 msgstr ""
 
-#: targhooks.cc:2268
+#: targhooks.cc:2274
 #, c-format
 msgid "created and used with differing settings of '%s'"
 msgstr ""
 
-#: targhooks.cc:2283
+#: targhooks.cc:2289
 msgid "created and used with different settings of %<-fpic%>"
 msgstr ""
 
-#: targhooks.cc:2285
+#: targhooks.cc:2291
 msgid "created and used with different settings of %<-fpie%>"
 msgstr ""
 
@@ -19982,8 +20010,8 @@ msgid ""
 "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
 msgstr ""
 
-#: tree-diagnostic-path.cc:255 tree-diagnostic.cc:294 c/c-decl.cc:6346
-#: c/c-typeck.cc:8068 cp/error.cc:1181 c-family/c-pretty-print.cc:426
+#: tree-diagnostic-path.cc:255 tree-diagnostic.cc:294 c/c-decl.cc:6349
+#: c/c-typeck.cc:8058 cp/error.cc:1181 c-family/c-pretty-print.cc:426
 #, gcc-internal-format
 msgid "<anonymous>"
 msgstr ""
@@ -20265,85 +20293,72 @@ msgstr ""
 msgid "<command-line>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:11858 config/loongarch/loongarch.cc:4992
+#: config/aarch64/aarch64.cc:11879 config/loongarch/loongarch.cc:4992
 #, c-format
 msgid "unsupported operand for code '%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:11867 config/aarch64/aarch64.cc:11880
-#: config/aarch64/aarch64.cc:11892 config/aarch64/aarch64.cc:11903
-#: config/aarch64/aarch64.cc:11919 config/aarch64/aarch64.cc:11933
-#: config/aarch64/aarch64.cc:11953 config/aarch64/aarch64.cc:12030
-#: config/aarch64/aarch64.cc:12041 config/aarch64/aarch64.cc:12055
-#: config/aarch64/aarch64.cc:12277 config/aarch64/aarch64.cc:12297
+#: config/aarch64/aarch64.cc:11888 config/aarch64/aarch64.cc:11901
+#: config/aarch64/aarch64.cc:11913 config/aarch64/aarch64.cc:11924
+#: config/aarch64/aarch64.cc:11940 config/aarch64/aarch64.cc:11954
+#: config/aarch64/aarch64.cc:11974 config/aarch64/aarch64.cc:12051
+#: config/aarch64/aarch64.cc:12062 config/aarch64/aarch64.cc:12076
+#: config/aarch64/aarch64.cc:12298 config/aarch64/aarch64.cc:12318
 #: config/pru/pru.cc:1760 config/pru/pru.cc:1771 config/pru/pru.cc:1843
 #, c-format
 msgid "invalid operand for '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:11971 config/aarch64/aarch64.cc:11982
-#: config/aarch64/aarch64.cc:12137 config/aarch64/aarch64.cc:12148
-#: config/riscv/riscv.cc:4236 config/riscv/riscv.cc:4242
-#: config/riscv/riscv.cc:4248 config/riscv/riscv.cc:4252
-#: config/riscv/riscv.cc:4299 config/riscv/riscv.cc:4318
+#: config/aarch64/aarch64.cc:11992 config/aarch64/aarch64.cc:12003
+#: config/aarch64/aarch64.cc:12158 config/aarch64/aarch64.cc:12169
+#: config/riscv/riscv.cc:4397 config/riscv/riscv.cc:4404
+#: config/riscv/riscv.cc:4411 config/riscv/riscv.cc:4415
+#: config/riscv/riscv.cc:4462 config/riscv/riscv.cc:4481
 #, c-format
 msgid "invalid vector constant"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:11994 config/aarch64/aarch64.cc:12006
+#: config/aarch64/aarch64.cc:12015 config/aarch64/aarch64.cc:12027
 #, c-format
 msgid "incompatible floating point / vector register operand for '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12023
+#: config/aarch64/aarch64.cc:12044
 #, c-format
 msgid "incompatible register operand for '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12089 config/arm/arm.cc:24708
+#: config/aarch64/aarch64.cc:12110 config/arm/arm.cc:24708
 #, c-format
 msgid "missing operand"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12174
+#: config/aarch64/aarch64.cc:12195
 #, c-format
 msgid "invalid constant"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12177
+#: config/aarch64/aarch64.cc:12198
 #, c-format
 msgid "invalid operand"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12305 config/aarch64/aarch64.cc:12310
+#: config/aarch64/aarch64.cc:12326 config/aarch64/aarch64.cc:12331
 #, c-format
 msgid "invalid operand prefix '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:12330
+#: config/aarch64/aarch64.cc:12351
 #, c-format
 msgid "invalid address mode"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:27088 config/arm/arm.cc:34257
-msgid "invalid conversion from type %<bfloat16_t%>"
-msgstr ""
-
-#: config/aarch64/aarch64.cc:27090 config/arm/arm.cc:34259
-msgid "invalid conversion to type %<bfloat16_t%>"
-msgstr ""
-
-#: config/aarch64/aarch64.cc:27105 config/aarch64/aarch64.cc:27121
-#: config/arm/arm.cc:34274 config/arm/arm.cc:34290
-msgid "operation not permitted on type %<bfloat16_t%>"
-msgstr ""
-
-#: config/aarch64/aarch64.cc:27129
+#: config/aarch64/aarch64.cc:27134
 msgid "cannot combine GNU and SVE vectors in a binary operation"
 msgstr ""
 
-#: config/alpha/alpha.cc:5076 config/i386/i386.cc:13572
-#: config/rs6000/rs6000.cc:14388 config/sparc/sparc.cc:9370
+#: config/alpha/alpha.cc:5076 config/i386/i386.cc:13577
+#: config/rs6000/rs6000.cc:14355 config/sparc/sparc.cc:9370
 #, c-format
 msgid "'%%&' used without any local dynamic TLS references"
 msgstr ""
@@ -20359,18 +20374,18 @@ msgid "invalid %%r value"
 msgstr ""
 
 #: config/alpha/alpha.cc:5174 config/ia64/ia64.cc:5532
-#: config/rs6000/rs6000.cc:14083 config/xtensa/xtensa.cc:2971
+#: config/rs6000/rs6000.cc:14050 config/xtensa/xtensa.cc:3008
 #, c-format
 msgid "invalid %%R value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5180 config/rs6000/rs6000.cc:14003
-#: config/xtensa/xtensa.cc:2944
+#: config/alpha/alpha.cc:5180 config/rs6000/rs6000.cc:13970
+#: config/xtensa/xtensa.cc:2981
 #, c-format
 msgid "invalid %%N value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5188 config/rs6000/rs6000.cc:14031
+#: config/alpha/alpha.cc:5188 config/rs6000/rs6000.cc:13998
 #, c-format
 msgid "invalid %%P value"
 msgstr ""
@@ -20380,7 +20395,7 @@ msgstr ""
 msgid "invalid %%h value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5204 config/xtensa/xtensa.cc:2964
+#: config/alpha/alpha.cc:5204 config/xtensa/xtensa.cc:3001
 #, c-format
 msgid "invalid %%L value"
 msgstr ""
@@ -20400,7 +20415,7 @@ msgstr ""
 msgid "invalid %%U value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5274 config/rs6000/rs6000.cc:14091
+#: config/alpha/alpha.cc:5274 config/rs6000/rs6000.cc:14058
 #, c-format
 msgid "invalid %%s value"
 msgstr ""
@@ -20410,7 +20425,7 @@ msgstr ""
 msgid "invalid %%C value"
 msgstr ""
 
-#: config/alpha/alpha.cc:5322 config/rs6000/rs6000.cc:13867
+#: config/alpha/alpha.cc:5322 config/rs6000/rs6000.cc:13834
 #, c-format
 msgid "invalid %%E value"
 msgstr ""
@@ -20420,10 +20435,10 @@ msgstr ""
 msgid "unknown relocation unspec"
 msgstr ""
 
-#: config/alpha/alpha.cc:5356 config/gcn/gcn.cc:6731 config/gcn/gcn.cc:6740
-#: config/gcn/gcn.cc:6800 config/gcn/gcn.cc:6808 config/gcn/gcn.cc:6824
-#: config/gcn/gcn.cc:6842 config/gcn/gcn.cc:6893 config/gcn/gcn.cc:7012
-#: config/gcn/gcn.cc:7123 config/rs6000/rs6000.cc:14393
+#: config/alpha/alpha.cc:5356 config/gcn/gcn.cc:6940 config/gcn/gcn.cc:6949
+#: config/gcn/gcn.cc:7009 config/gcn/gcn.cc:7017 config/gcn/gcn.cc:7033
+#: config/gcn/gcn.cc:7051 config/gcn/gcn.cc:7102 config/gcn/gcn.cc:7221
+#: config/gcn/gcn.cc:7332 config/rs6000/rs6000.cc:14360
 #, c-format
 msgid "invalid %%xn code"
 msgstr ""
@@ -20553,6 +20568,18 @@ msgstr ""
 msgid "obsolete Maverick format code '%c'"
 msgstr ""
 
+#: config/arm/arm.cc:34257
+msgid "invalid conversion from type %<bfloat16_t%>"
+msgstr ""
+
+#: config/arm/arm.cc:34259
+msgid "invalid conversion to type %<bfloat16_t%>"
+msgstr ""
+
+#: config/arm/arm.cc:34274 config/arm/arm.cc:34290
+msgid "operation not permitted on type %<bfloat16_t%>"
+msgstr ""
+
 #: config/avr/avr.cc:2642
 #, c-format
 msgid "address operand requires constraint for X, Y, or Z register"
@@ -20668,16 +20695,16 @@ msgstr ""
 
 #. Format punctuators via %s to avoid -Wformat-diag.
 #: config/cris/cris.cc:775 config/ft32/ft32.cc:110 config/moxie/moxie.cc:108
-#: final.cc:3188 final.cc:3190 fold-const.cc:277 gcc.cc:6114 gcc.cc:6128
+#: final.cc:3188 final.cc:3190 fold-const.cc:277 gcc.cc:6118 gcc.cc:6132
 #: rtl-error.cc:101 toplev.cc:314 cp/logic.cc:312 cp/logic.cc:314
-#: cp/typeck.cc:7627 d/d-convert.cc:237 go/go-gcc-diagnostics.cc:28
+#: cp/typeck.cc:7634 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:180
-#: m2/gm2-gcc/m2linemap.cc:251 rust/rust-gcc-diagnostics.cc:31
-#: rust/rust-gcc-diagnostics.cc:40 rust/rust-gcc-diagnostics.cc:48
-#: rust/rust-gcc-diagnostics.cc:55 rust/rust-gcc-diagnostics.cc:62
-#: rust/rust-gcc-diagnostics.cc:70
+#: lto/lto-object.cc:334 lto/lto-object.cc:358 m2/gm2-gcc/m2linemap.cc:182
+#: m2/gm2-gcc/m2linemap.cc:253 m2/gm2-gcc/m2linemap.cc:362
+#: rust/rust-gcc-diagnostics.cc:31 rust/rust-gcc-diagnostics.cc:40
+#: rust/rust-gcc-diagnostics.cc:48 rust/rust-gcc-diagnostics.cc:55
+#: rust/rust-gcc-diagnostics.cc:62 rust/rust-gcc-diagnostics.cc:70
 #, gcc-internal-format, gfc-internal-format
 msgid "%s"
 msgstr ""
@@ -20754,7 +20781,7 @@ msgstr ""
 msgid "unrecognized address"
 msgstr ""
 
-#: config/cris/cris.cc:2535 config/cris/cris.cc:2588
+#: config/cris/cris.cc:2556 config/cris/cris.cc:2609
 msgid "unexpected side-effects in address"
 msgstr ""
 
@@ -20882,25 +20909,25 @@ msgstr ""
 msgid "bad output_condmove_single operand"
 msgstr ""
 
-#: config/gcn/gcn.cc:6417 config/gcn/gcn.cc:6437 config/gcn/gcn.cc:6441
-#: config/gcn/gcn.cc:6773 config/gcn/gcn.cc:6784 config/gcn/gcn.cc:6787
+#: config/gcn/gcn.cc:6626 config/gcn/gcn.cc:6646 config/gcn/gcn.cc:6650
+#: config/gcn/gcn.cc:6982 config/gcn/gcn.cc:6993 config/gcn/gcn.cc:6996
 #, c-format
 msgid "bad ADDR_SPACE_GLOBAL address"
 msgstr ""
 
-#: config/gcn/gcn.cc:6553 config/gcn/gcn.cc:6576 config/gcn/gcn.cc:6608
-#: config/gcn/gcn.cc:6624 config/gcn/gcn.cc:6639 config/gcn/gcn.cc:6658
-#: config/gcn/gcn.cc:6722 config/gcn/gcn.cc:6918 config/gcn/gcn.cc:7033
+#: config/gcn/gcn.cc:6762 config/gcn/gcn.cc:6785 config/gcn/gcn.cc:6817
+#: config/gcn/gcn.cc:6833 config/gcn/gcn.cc:6848 config/gcn/gcn.cc:6867
+#: config/gcn/gcn.cc:6931 config/gcn/gcn.cc:7127 config/gcn/gcn.cc:7242
 #, c-format
 msgid "invalid operand %%xn code"
 msgstr ""
 
-#: config/gcn/gcn.cc:7021
+#: config/gcn/gcn.cc:7230
 #, c-format
 msgid "operand %%xn code invalid for QImode"
 msgstr ""
 
-#: config/gcn/gcn.cc:7103
+#: config/gcn/gcn.cc:7312
 #, c-format
 msgid "invalid fp constant"
 msgstr ""
@@ -20912,98 +20939,98 @@ msgstr ""
 msgid "Expected register or constant integer."
 msgstr ""
 
-#: config/i386/i386.cc:12397
+#: config/i386/i386.cc:12402
 #, c-format
 msgid "invalid UNSPEC as operand"
 msgstr ""
 
-#: config/i386/i386.cc:12936
+#: config/i386/i386.cc:12941
 #, c-format
 msgid "invalid use of register '%s'"
 msgstr ""
 
-#: config/i386/i386.cc:12941
+#: config/i386/i386.cc:12946
 #, c-format
 msgid "invalid use of asm flag output"
 msgstr ""
 
-#: config/i386/i386.cc:13174
+#: config/i386/i386.cc:13179
 #, c-format
 msgid "invalid operand size for operand code 'O'"
 msgstr ""
 
-#: config/i386/i386.cc:13209
+#: config/i386/i386.cc:13214
 #, c-format
 msgid "invalid operand size for operand code 'z'"
 msgstr ""
 
-#: config/i386/i386.cc:13278
+#: config/i386/i386.cc:13283
 #, c-format
 msgid "invalid operand type used with operand code 'Z'"
 msgstr ""
 
-#: config/i386/i386.cc:13283
+#: config/i386/i386.cc:13288
 #, c-format
 msgid "invalid operand size for operand code 'Z'"
 msgstr ""
 
-#: config/i386/i386.cc:13360
+#: config/i386/i386.cc:13365
 #, c-format
 msgid "operand is not a condition code, invalid operand code 'Y'"
 msgstr ""
 
-#: config/i386/i386.cc:13439
+#: config/i386/i386.cc:13444
 #, c-format
 msgid "operand is not a condition code, invalid operand code 'D'"
 msgstr ""
 
-#: config/i386/i386.cc:13457
+#: config/i386/i386.cc:13462
 #, c-format
 msgid "operand is not a condition code, invalid operand code '%c'"
 msgstr ""
 
-#: config/i386/i386.cc:13470
+#: config/i386/i386.cc:13475
 #, c-format
 msgid ""
 "operand is not an offsettable memory reference, invalid operand code 'H'"
 msgstr ""
 
-#: config/i386/i386.cc:13485
+#: config/i386/i386.cc:13490
 #, c-format
 msgid "operand is not an integer, invalid operand code 'K'"
 msgstr ""
 
-#: config/i386/i386.cc:13513
+#: config/i386/i386.cc:13518
 #, c-format
 msgid "operand is not a specific integer, invalid operand code 'r'"
 msgstr ""
 
-#: config/i386/i386.cc:13531
+#: config/i386/i386.cc:13536
 #, c-format
 msgid "operand is not an integer, invalid operand code 'R'"
 msgstr ""
 
-#: config/i386/i386.cc:13554
+#: config/i386/i386.cc:13559
 #, c-format
 msgid "operand is not a specific integer, invalid operand code 'R'"
 msgstr ""
 
-#: config/i386/i386.cc:13658
+#: config/i386/i386.cc:13663
 #, c-format
 msgid "invalid operand code '%c'"
 msgstr ""
 
-#: config/i386/i386.cc:13720 config/i386/i386.cc:14109
+#: config/i386/i386.cc:13725 config/i386/i386.cc:14114
 #, c-format
 msgid "invalid constraints for operand"
 msgstr ""
 
-#: config/i386/i386.cc:13821
+#: config/i386/i386.cc:13826
 #, c-format
 msgid "invalid vector immediate"
 msgstr ""
 
-#: config/i386/i386.cc:16890
+#: config/i386/i386.cc:16903
 msgid "unknown insn mode"
 msgstr ""
 
@@ -21034,7 +21061,7 @@ msgstr ""
 msgid "invalid %%P operand"
 msgstr ""
 
-#: config/iq2000/iq2000.cc:3134 config/rs6000/rs6000.cc:14021
+#: config/iq2000/iq2000.cc:3134 config/rs6000/rs6000.cc:13988
 #, c-format
 msgid "invalid %%p value"
 msgstr ""
@@ -21062,8 +21089,8 @@ msgid "invalid addressing mode"
 msgstr ""
 
 #: config/loongarch/loongarch.cc:4754 config/loongarch/loongarch.cc:4776
-#: config/loongarch/loongarch.cc:5120 config/mips/mips.cc:9065
-#: config/mips/mips.cc:9092 config/mips/mips.cc:9275
+#: config/loongarch/loongarch.cc:5120 config/mips/mips.cc:9066
+#: config/mips/mips.cc:9093 config/mips/mips.cc:9276
 #, c-format
 msgid "'%%%c' is not a valid operand prefix"
 msgstr ""
@@ -21073,14 +21100,14 @@ msgstr ""
 #: config/loongarch/loongarch.cc:5092 config/loongarch/loongarch.cc:5099
 #: config/loongarch/loongarch.cc:5109 config/loongarch/loongarch.cc:5112
 #: config/loongarch/loongarch.cc:5136 config/loongarch/loongarch.cc:5151
-#: config/loongarch/loongarch.cc:5160 config/mips/mips.cc:9164
-#: config/mips/mips.cc:9171 config/mips/mips.cc:9178 config/mips/mips.cc:9185
-#: config/mips/mips.cc:9198 config/mips/mips.cc:9205 config/mips/mips.cc:9215
-#: config/mips/mips.cc:9218 config/mips/mips.cc:9230 config/mips/mips.cc:9233
-#: config/mips/mips.cc:9293 config/mips/mips.cc:9300 config/mips/mips.cc:9321
-#: config/mips/mips.cc:9336 config/mips/mips.cc:9355 config/mips/mips.cc:9364
-#: config/riscv/riscv.cc:4138 config/riscv/riscv.cc:4368
-#: config/riscv/riscv.cc:4374 config/riscv/riscv.cc:4383
+#: config/loongarch/loongarch.cc:5160 config/mips/mips.cc:9165
+#: config/mips/mips.cc:9172 config/mips/mips.cc:9179 config/mips/mips.cc:9186
+#: config/mips/mips.cc:9199 config/mips/mips.cc:9206 config/mips/mips.cc:9216
+#: config/mips/mips.cc:9219 config/mips/mips.cc:9231 config/mips/mips.cc:9234
+#: config/mips/mips.cc:9294 config/mips/mips.cc:9301 config/mips/mips.cc:9322
+#: config/mips/mips.cc:9337 config/mips/mips.cc:9356 config/mips/mips.cc:9365
+#: config/riscv/riscv.cc:4272 config/riscv/riscv.cc:4535
+#: config/riscv/riscv.cc:4541 config/riscv/riscv.cc:4550
 #, c-format
 msgid "invalid use of '%%%c'"
 msgstr ""
@@ -21112,7 +21139,7 @@ msgid "post-increment address is not a register"
 msgstr ""
 
 #: config/m32r/m32r.cc:2340 config/m32r/m32r.cc:2355
-#: config/rs6000/rs6000.cc:20735
+#: config/rs6000/rs6000.cc:20702
 msgid "bad address"
 msgstr ""
 
@@ -21145,7 +21172,7 @@ msgid "insn contains an invalid address !"
 msgstr ""
 
 #: config/microblaze/microblaze.cc:2408 config/microblaze/microblaze.cc:2638
-#: config/xtensa/xtensa.cc:3068
+#: config/xtensa/xtensa.cc:3105
 msgid "invalid address"
 msgstr ""
 
@@ -21222,7 +21249,7 @@ msgstr ""
 msgid "invalid %%H value"
 msgstr ""
 
-#: config/or1k/or1k.cc:1269 config/xtensa/xtensa.cc:2985
+#: config/or1k/or1k.cc:1269 config/xtensa/xtensa.cc:3022
 #, c-format
 msgid "invalid %%d value"
 msgstr ""
@@ -21272,6 +21299,11 @@ msgstr ""
 msgid "unsupported memory expression:"
 msgstr ""
 
+#: config/riscv/riscv.cc:4378
+#, c-format
+msgid "invalid vector operand"
+msgstr ""
+
 #: config/rl78/rl78.cc:1998 config/rl78/rl78.cc:2084
 #, c-format
 msgid "q/Q modifiers invalid for symbol references"
@@ -21287,175 +21319,175 @@ msgstr ""
 msgid "Try running '%s' in the shell to raise its limit.\n"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3804
+#: config/rs6000/rs6000.cc:3807
 msgid "%<-mvsx%> requires hardware floating point"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3812
+#: config/rs6000/rs6000.cc:3815
 msgid "%<-mvsx%> needs indexed addressing"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3817
+#: config/rs6000/rs6000.cc:3820
 msgid "%<-mvsx%> and %<-mno-altivec%> are incompatible"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3819
+#: config/rs6000/rs6000.cc:3822
 msgid "%<-mno-altivec%> disables vsx"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3968
+#: config/rs6000/rs6000.cc:3971
 msgid "%<-mquad-memory%> requires 64-bit mode"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3971
+#: config/rs6000/rs6000.cc:3974
 msgid "%<-mquad-memory-atomic%> requires 64-bit mode"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3983
+#: config/rs6000/rs6000.cc:3986
 msgid "%<-mquad-memory%> is not available in little endian mode"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:11074
+#: config/rs6000/rs6000.cc:11087
 msgid "bad move"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:13651
+#: config/rs6000/rs6000.cc:13618
 msgid "Bad 128-bit move"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:13831
+#: config/rs6000/rs6000.cc:13798
 #, c-format
 msgid "invalid %%A value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:13840 config/xtensa/xtensa.cc:2920
+#: config/rs6000/rs6000.cc:13807 config/xtensa/xtensa.cc:2957
 #, c-format
 msgid "invalid %%D value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:13855
+#: config/rs6000/rs6000.cc:13822
 #, c-format
 msgid "invalid %%e value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:13876
+#: config/rs6000/rs6000.cc:13843
 #, c-format
 msgid "invalid %%f value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:13885
+#: config/rs6000/rs6000.cc:13852
 #, c-format
 msgid "invalid %%F value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:13894
+#: config/rs6000/rs6000.cc:13861
 #, c-format
 msgid "invalid %%G value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:13929
+#: config/rs6000/rs6000.cc:13896
 #, c-format
 msgid "invalid %%j code"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:13939
+#: config/rs6000/rs6000.cc:13906
 #, c-format
 msgid "invalid %%J code"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:13949
+#: config/rs6000/rs6000.cc:13916
 #, c-format
 msgid "invalid %%k value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:13964 config/xtensa/xtensa.cc:2957
+#: config/rs6000/rs6000.cc:13931 config/xtensa/xtensa.cc:2994
 #, c-format
 msgid "invalid %%K value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14011
+#: config/rs6000/rs6000.cc:13978
 #, c-format
 msgid "invalid %%O value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14058
+#: config/rs6000/rs6000.cc:14025
 #, c-format
 msgid "invalid %%q value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14100
+#: config/rs6000/rs6000.cc:14067
 #, c-format
 msgid "invalid %%t value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14117
+#: config/rs6000/rs6000.cc:14084
 #, c-format
 msgid "invalid %%T value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14129
+#: config/rs6000/rs6000.cc:14096
 #, c-format
 msgid "invalid %%u value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14143 config/xtensa/xtensa.cc:2932
+#: config/rs6000/rs6000.cc:14110 config/xtensa/xtensa.cc:2969
 #, c-format
 msgid "invalid %%v value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14193
+#: config/rs6000/rs6000.cc:14160
 #, c-format
 msgid "invalid %%V value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14209 config/xtensa/xtensa.cc:2978
+#: config/rs6000/rs6000.cc:14176 config/xtensa/xtensa.cc:3015
 #, c-format
 msgid "invalid %%x value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14266
+#: config/rs6000/rs6000.cc:14233
 #, c-format
 msgid "invalid %%z value"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:14335
+#: config/rs6000/rs6000.cc:14302
 #, c-format
 msgid "invalid %%y value, try using the 'Z' constraint"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:15265
+#: config/rs6000/rs6000.cc:15232
 msgid "Invalid mixing of IEEE 128-bit and IBM 128-bit floating point types"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:24132
+#: config/rs6000/rs6000.cc:24099
 msgid "AltiVec argument passed to unprototyped function"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:27754
+#: config/rs6000/rs6000.cc:27721
 msgid "Could not generate addis value for fusion"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:27823
+#: config/rs6000/rs6000.cc:27790
 msgid "Unable to generate load/store offset for fusion"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:27899
+#: config/rs6000/rs6000.cc:27866
 msgid "Bad GPR fusion"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28438
+#: config/rs6000/rs6000.cc:28468
 msgid "invalid conversion from type %<__vector_quad%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28440
+#: config/rs6000/rs6000.cc:28470
 msgid "invalid conversion to type %<__vector_quad%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28442
+#: config/rs6000/rs6000.cc:28472
 msgid "invalid conversion from type %<__vector_pair%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28444
+#: config/rs6000/rs6000.cc:28474
 msgid "invalid conversion to type %<__vector_pair%>"
 msgstr ""
 
@@ -21538,19 +21570,19 @@ msgstr ""
 msgid "vector argument passed to unprototyped function"
 msgstr ""
 
-#: config/s390/s390.cc:16762
+#: config/s390/s390.cc:16742
 msgid "types differ in signedness"
 msgstr ""
 
-#: config/s390/s390.cc:16772
+#: config/s390/s390.cc:16752
 msgid "binary operator does not support two vector bool operands"
 msgstr ""
 
-#: config/s390/s390.cc:16775
+#: config/s390/s390.cc:16755
 msgid "binary operator does not support vector bool operand"
 msgstr ""
 
-#: config/s390/s390.cc:16783
+#: config/s390/s390.cc:16763
 msgid ""
 "binary operator does not support mixing vector bool with floating point "
 "vector operands"
@@ -21685,24 +21717,28 @@ msgstr ""
 msgid "illegal operand address (4)"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:830 config/xtensa/xtensa.cc:868
+#: config/xtensa/xtensa-dynconfig.cc:63
+msgid "Unable to load DLL."
+msgstr ""
+
+#: config/xtensa/xtensa.cc:831 config/xtensa/xtensa.cc:869
 msgid "bad test"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:2952
+#: config/xtensa/xtensa.cc:2989
 msgid "invalid mask"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:3004 config/xtensa/xtensa.cc:3014
+#: config/xtensa/xtensa.cc:3041 config/xtensa/xtensa.cc:3051
 #, c-format
 msgid "invalid %%t/%%b value"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:3093
+#: config/xtensa/xtensa.cc:3130
 msgid "no register in address"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:3101
+#: config/xtensa/xtensa.cc:3138
 msgid "address offset not a constant"
 msgstr ""
 
@@ -21727,32 +21763,32 @@ msgstr ""
 #. ;
 #. <~~~~~~~~~ declaration ~~~~~~~~~~>
 #. Use c_parser_require to get an error with a fix-it hint.
-#: c/c-parser.cc:2762 c/c-parser.cc:2884 c/c-parser.cc:2898 c/c-parser.cc:6161
-#: c/c-parser.cc:6784 c/c-parser.cc:7213 c/c-parser.cc:7392 c/c-parser.cc:7425
-#: c/c-parser.cc:7691 c/c-parser.cc:11762 c/c-parser.cc:11797
-#: c/c-parser.cc:11828 c/c-parser.cc:11875 c/c-parser.cc:12056
-#: c/c-parser.cc:12889 c/c-parser.cc:12964 c/c-parser.cc:13007
-#: c/c-parser.cc:19400 c/c-parser.cc:19480 c/c-parser.cc:19809
-#: c/c-parser.cc:19835 c/c-parser.cc:19858 c/c-parser.cc:20305
-#: c/c-parser.cc:20349 c/gimple-parser.cc:406 c/gimple-parser.cc:447
+#: c/c-parser.cc:2761 c/c-parser.cc:2883 c/c-parser.cc:2897 c/c-parser.cc:6160
+#: c/c-parser.cc:6783 c/c-parser.cc:7212 c/c-parser.cc:7391 c/c-parser.cc:7424
+#: c/c-parser.cc:7690 c/c-parser.cc:11761 c/c-parser.cc:11796
+#: c/c-parser.cc:11827 c/c-parser.cc:11874 c/c-parser.cc:12055
+#: c/c-parser.cc:12888 c/c-parser.cc:12963 c/c-parser.cc:13006
+#: c/c-parser.cc:19399 c/c-parser.cc:19479 c/c-parser.cc:19808
+#: c/c-parser.cc:19834 c/c-parser.cc:19857 c/c-parser.cc:20304
+#: c/c-parser.cc:20348 c/gimple-parser.cc:406 c/gimple-parser.cc:447
 #: c/gimple-parser.cc:456 c/gimple-parser.cc:665 c/gimple-parser.cc:2261
 #: c/gimple-parser.cc:2298 c/gimple-parser.cc:2377 c/gimple-parser.cc:2404
-#: c/c-parser.cc:3672 c/c-parser.cc:3862 c/c-parser.cc:3897 c/c-parser.cc:12049
-#: c/gimple-parser.cc:2069 c/gimple-parser.cc:2126 cp/parser.cc:15337
-#: cp/parser.cc:33066 cp/parser.cc:33700
+#: c/c-parser.cc:3671 c/c-parser.cc:3861 c/c-parser.cc:3896 c/c-parser.cc:12048
+#: c/gimple-parser.cc:2069 c/gimple-parser.cc:2126 cp/parser.cc:15350
+#: cp/parser.cc:33085 cp/parser.cc:33721
 #, gcc-internal-format
 msgid "expected %<;%>"
 msgstr ""
 
-#: c/c-parser.cc:3356 c/c-parser.cc:4461 c/c-parser.cc:4656 c/c-parser.cc:4714
-#: c/c-parser.cc:4772 c/c-parser.cc:5154 c/c-parser.cc:5177 c/c-parser.cc:5186
-#: c/c-parser.cc:5237 c/c-parser.cc:5246 c/c-parser.cc:9124 c/c-parser.cc:9192
-#: c/c-parser.cc:9702 c/c-parser.cc:9727 c/c-parser.cc:9761 c/c-parser.cc:9873
-#: c/c-parser.cc:10692 c/c-parser.cc:12163 c/c-parser.cc:14547
-#: c/c-parser.cc:15261 c/c-parser.cc:15320 c/c-parser.cc:15375
-#: c/c-parser.cc:17169 c/c-parser.cc:17289 c/c-parser.cc:18623
-#: c/c-parser.cc:19900 c/c-parser.cc:20313 c/c-parser.cc:23398
-#: c/c-parser.cc:23480 c/gimple-parser.cc:195 c/gimple-parser.cc:198
+#: c/c-parser.cc:3355 c/c-parser.cc:4460 c/c-parser.cc:4655 c/c-parser.cc:4713
+#: c/c-parser.cc:4771 c/c-parser.cc:5153 c/c-parser.cc:5176 c/c-parser.cc:5185
+#: c/c-parser.cc:5236 c/c-parser.cc:5245 c/c-parser.cc:9123 c/c-parser.cc:9191
+#: c/c-parser.cc:9701 c/c-parser.cc:9726 c/c-parser.cc:9760 c/c-parser.cc:9872
+#: c/c-parser.cc:10691 c/c-parser.cc:12162 c/c-parser.cc:14546
+#: c/c-parser.cc:15260 c/c-parser.cc:15319 c/c-parser.cc:15374
+#: c/c-parser.cc:17168 c/c-parser.cc:17288 c/c-parser.cc:18622
+#: c/c-parser.cc:19899 c/c-parser.cc:20312 c/c-parser.cc:23397
+#: c/c-parser.cc:23479 c/gimple-parser.cc:195 c/gimple-parser.cc:198
 #: c/gimple-parser.cc:541 c/gimple-parser.cc:575 c/gimple-parser.cc:580
 #: c/gimple-parser.cc:749 c/gimple-parser.cc:846 c/gimple-parser.cc:1048
 #: c/gimple-parser.cc:1074 c/gimple-parser.cc:1077 c/gimple-parser.cc:1208
@@ -21760,138 +21796,138 @@ msgstr ""
 #: c/gimple-parser.cc:1494 c/gimple-parser.cc:1516 c/gimple-parser.cc:1546
 #: c/gimple-parser.cc:1572 c/gimple-parser.cc:1779 c/gimple-parser.cc:1991
 #: c/gimple-parser.cc:2011 c/gimple-parser.cc:2171 c/gimple-parser.cc:2334
-#: c/c-parser.cc:7643 cp/parser.cc:33748
+#: c/c-parser.cc:7642 cp/parser.cc:33769
 #, gcc-internal-format
 msgid "expected %<)%>"
 msgstr ""
 
-#: c/c-parser.cc:4550 c/c-parser.cc:5297 c/c-parser.cc:5449 c/c-parser.cc:5475
-#: c/c-parser.cc:5476 c/c-parser.cc:5916 c/c-parser.cc:5960 c/c-parser.cc:7742
-#: c/c-parser.cc:9864 c/c-parser.cc:10833 c/c-parser.cc:11187
-#: c/c-parser.cc:13950 c/gimple-parser.cc:1755 cp/parser.cc:33712
+#: c/c-parser.cc:4549 c/c-parser.cc:5296 c/c-parser.cc:5448 c/c-parser.cc:5474
+#: c/c-parser.cc:5475 c/c-parser.cc:5915 c/c-parser.cc:5959 c/c-parser.cc:7741
+#: c/c-parser.cc:9863 c/c-parser.cc:10832 c/c-parser.cc:11186
+#: c/c-parser.cc:13949 c/gimple-parser.cc:1755 cp/parser.cc:33733
 #, gcc-internal-format
 msgid "expected %<]%>"
 msgstr ""
 
-#: c/c-parser.cc:4752
+#: c/c-parser.cc:4751
 msgid "expected %<;%>, %<,%> or %<)%>"
 msgstr ""
 
 #. Look for the two `(' tokens.
-#: c/c-parser.cc:5206 c/c-parser.cc:5211 c/c-parser.cc:14530
-#: c/c-parser.cc:15350 c/c-parser.cc:22674 c/c-parser.cc:23206
-#: c/c-parser.cc:23423 c/gimple-parser.cc:180 c/gimple-parser.cc:488
+#: c/c-parser.cc:5205 c/c-parser.cc:5210 c/c-parser.cc:14529
+#: c/c-parser.cc:15349 c/c-parser.cc:22673 c/c-parser.cc:23205
+#: c/c-parser.cc:23422 c/gimple-parser.cc:180 c/gimple-parser.cc:488
 #: c/gimple-parser.cc:527 c/gimple-parser.cc:559 c/gimple-parser.cc:816
 #: c/gimple-parser.cc:1042 c/gimple-parser.cc:1068 c/gimple-parser.cc:1195
 #: c/gimple-parser.cc:1330 c/gimple-parser.cc:1452 c/gimple-parser.cc:1512
 #: c/gimple-parser.cc:1530 c/gimple-parser.cc:1565 c/gimple-parser.cc:1960
 #: c/gimple-parser.cc:1971 c/gimple-parser.cc:1977 c/gimple-parser.cc:2160
-#: c/gimple-parser.cc:2331 c/c-parser.cc:14352 cp/parser.cc:33703
+#: c/gimple-parser.cc:2331 c/c-parser.cc:14351 cp/parser.cc:33724
 #, gcc-internal-format
 msgid "expected %<(%>"
 msgstr ""
 
-#: c/c-parser.cc:5445 c/c-parser.cc:5447 c/c-parser.cc:13854 cp/parser.cc:33715
-#: cp/parser.cc:37465 go/gofrontend/embed.cc:439
+#: c/c-parser.cc:5444 c/c-parser.cc:5446 c/c-parser.cc:13853 cp/parser.cc:33736
+#: cp/parser.cc:37504 go/gofrontend/embed.cc:439
 #, gcc-internal-format
 msgid "expected %<[%>"
 msgstr ""
 
-#: c/c-parser.cc:6097 c/c-parser.cc:12392 c/c-parser.cc:19375
-#: c/c-parser.cc:19461 c/c-parser.cc:20119 c/c-parser.cc:20991
-#: c/c-parser.cc:24654 c/gimple-parser.cc:399 c/gimple-parser.cc:2337
-#: c/c-parser.cc:3659 c/c-parser.cc:3886 c/c-parser.cc:11944 cp/parser.cc:21026
-#: cp/parser.cc:33709 go/gofrontend/embed.cc:370
+#: c/c-parser.cc:6096 c/c-parser.cc:12391 c/c-parser.cc:19374
+#: c/c-parser.cc:19460 c/c-parser.cc:20118 c/c-parser.cc:20990
+#: c/c-parser.cc:24653 c/gimple-parser.cc:399 c/gimple-parser.cc:2337
+#: c/c-parser.cc:3658 c/c-parser.cc:3885 c/c-parser.cc:11943 cp/parser.cc:21039
+#: cp/parser.cc:33730 go/gofrontend/embed.cc:370
 #, gcc-internal-format
 msgid "expected %<{%>"
 msgstr ""
 
-#: c/c-parser.cc:6392 c/c-parser.cc:6401 c/c-parser.cc:8189 c/c-parser.cc:9329
-#: c/c-parser.cc:12156 c/c-parser.cc:12553 c/c-parser.cc:12617
-#: c/c-parser.cc:13932 c/c-parser.cc:14952 c/c-parser.cc:15178
-#: c/c-parser.cc:15696 c/c-parser.cc:15797 c/c-parser.cc:16331
-#: c/c-parser.cc:16767 c/c-parser.cc:16843 c/c-parser.cc:16960
-#: c/c-parser.cc:17032 c/c-parser.cc:22536 c/c-parser.cc:23263
-#: c/c-parser.cc:23322 c/gimple-parser.cc:582 c/gimple-parser.cc:887
-#: c/gimple-parser.cc:2385 c/gimple-parser.cc:2412 c/c-parser.cc:7650
-#: c/c-parser.cc:14455 c/c-parser.cc:15802 cp/parser.cc:33742
-#: cp/parser.cc:35426 cp/parser.cc:38313 cp/parser.cc:39188
+#: c/c-parser.cc:6391 c/c-parser.cc:6400 c/c-parser.cc:8188 c/c-parser.cc:9328
+#: c/c-parser.cc:12155 c/c-parser.cc:12552 c/c-parser.cc:12616
+#: c/c-parser.cc:13931 c/c-parser.cc:14951 c/c-parser.cc:15177
+#: c/c-parser.cc:15695 c/c-parser.cc:15796 c/c-parser.cc:16330
+#: c/c-parser.cc:16766 c/c-parser.cc:16842 c/c-parser.cc:16959
+#: c/c-parser.cc:17031 c/c-parser.cc:22535 c/c-parser.cc:23262
+#: c/c-parser.cc:23321 c/gimple-parser.cc:582 c/gimple-parser.cc:887
+#: c/gimple-parser.cc:2385 c/gimple-parser.cc:2412 c/c-parser.cc:7649
+#: c/c-parser.cc:14454 c/c-parser.cc:15801 cp/parser.cc:33763
+#: cp/parser.cc:35465 cp/parser.cc:38352 cp/parser.cc:39227
 #: go/gofrontend/embed.cc:403
 #, gcc-internal-format
 msgid "expected %<:%>"
 msgstr ""
 
-#: c/c-parser.cc:7200 cp/parser.cc:33629
+#: c/c-parser.cc:7199 cp/parser.cc:33650
 #, gcc-internal-format
 msgid "expected %<while%>"
 msgstr ""
 
-#: c/c-parser.cc:9087 c/c-parser.cc:9280 c/c-parser.cc:9751 c/c-parser.cc:9794
-#: c/c-parser.cc:9935 c/c-parser.cc:10682 c/c-parser.cc:15355
-#: c/c-parser.cc:16912 c/gimple-parser.cc:1045 c/gimple-parser.cc:1071
+#: c/c-parser.cc:9086 c/c-parser.cc:9279 c/c-parser.cc:9750 c/c-parser.cc:9793
+#: c/c-parser.cc:9934 c/c-parser.cc:10681 c/c-parser.cc:15354
+#: c/c-parser.cc:16911 c/gimple-parser.cc:1045 c/gimple-parser.cc:1071
 #: c/gimple-parser.cc:1199 c/gimple-parser.cc:1202 c/gimple-parser.cc:1534
-#: c/gimple-parser.cc:1540 cp/parser.cc:33064 cp/parser.cc:33718
+#: c/gimple-parser.cc:1540 cp/parser.cc:33083 cp/parser.cc:33739
 #, gcc-internal-format
 msgid "expected %<,%>"
 msgstr ""
 
-#: c/c-parser.cc:9648
+#: c/c-parser.cc:9647
 msgid "expected %<.%>"
 msgstr ""
 
-#: c/c-parser.cc:11615 c/c-parser.cc:11647 c/c-parser.cc:11887
-#: cp/parser.cc:36000 cp/parser.cc:36021
+#: c/c-parser.cc:11614 c/c-parser.cc:11646 c/c-parser.cc:11886
+#: cp/parser.cc:36039 cp/parser.cc:36060
 #, gcc-internal-format
 msgid "expected %<@end%>"
 msgstr ""
 
-#: c/c-parser.cc:12305 c/gimple-parser.cc:1370 cp/parser.cc:33727
+#: c/c-parser.cc:12304 c/gimple-parser.cc:1370 cp/parser.cc:33748
 #, gcc-internal-format
 msgid "expected %<>%>"
 msgstr ""
 
-#: c/c-parser.cc:15891 c/c-parser.cc:17307 cp/parser.cc:33751
+#: c/c-parser.cc:15890 c/c-parser.cc:17306 cp/parser.cc:33772
 #, gcc-internal-format
 msgid "expected %<,%> or %<)%>"
 msgstr ""
 
 #. All following cases are statements with LHS.
-#: c/c-parser.cc:16759 c/c-parser.cc:19268 c/c-parser.cc:19315
-#: c/c-parser.cc:19472 c/c-parser.cc:19819 c/c-parser.cc:20292
-#: c/c-parser.cc:22743 c/c-parser.cc:23464 c/gimple-parser.cc:740
-#: c/c-parser.cc:5983 c/c-parser.cc:19392 c/c-parser.cc:19615
-#: cp/parser.cc:33730 cp/parser.cc:42040 cp/parser.cc:42213
+#: c/c-parser.cc:16758 c/c-parser.cc:19267 c/c-parser.cc:19314
+#: c/c-parser.cc:19471 c/c-parser.cc:19818 c/c-parser.cc:20291
+#: c/c-parser.cc:22742 c/c-parser.cc:23463 c/gimple-parser.cc:740
+#: c/c-parser.cc:5982 c/c-parser.cc:19391 c/c-parser.cc:19614
+#: cp/parser.cc:33751 cp/parser.cc:42079 cp/parser.cc:42252
 #, gcc-internal-format
 msgid "expected %<=%>"
 msgstr ""
 
-#: c/c-parser.cc:19403 c/c-parser.cc:19483 c/c-parser.cc:19836
-#: c/c-parser.cc:20170 c/gimple-parser.cc:1588 c/gimple-parser.cc:1620
-#: c/gimple-parser.cc:1630 c/gimple-parser.cc:2422 cp/parser.cc:33706
-#: cp/parser.cc:36210
+#: c/c-parser.cc:19402 c/c-parser.cc:19482 c/c-parser.cc:19835
+#: c/c-parser.cc:20169 c/gimple-parser.cc:1588 c/gimple-parser.cc:1620
+#: c/gimple-parser.cc:1630 c/gimple-parser.cc:2422 cp/parser.cc:33727
+#: cp/parser.cc:36249
 #, gcc-internal-format
 msgid "expected %<}%>"
 msgstr ""
 
-#: c/c-parser.cc:19496 cp/parser.cc:42138
+#: c/c-parser.cc:19495 cp/parser.cc:42177
 #, gcc-internal-format
 msgid "expected %<else%>"
 msgstr ""
 
-#: c/c-parser.cc:21036 c/c-parser.cc:21025 cp/parser.cc:44395
+#: c/c-parser.cc:21035 c/c-parser.cc:21024 cp/parser.cc:44437
 #, gcc-internal-format
 msgid "expected %<#pragma omp section%> or %<}%>"
 msgstr ""
 
-#: c/c-parser.cc:24024 cp/parser.cc:48240
+#: c/c-parser.cc:24023 cp/parser.cc:48282
 msgid "<message unknown at compile time>"
 msgstr ""
 
-#: c/c-typeck.cc:8865
+#: c/c-typeck.cc:8855
 msgid "(anonymous)"
 msgstr ""
 
-#: c/gimple-parser.cc:1359 cp/parser.cc:18374 cp/parser.cc:33724
+#: c/gimple-parser.cc:1359 cp/parser.cc:18387 cp/parser.cc:33745
 #, gcc-internal-format
 msgid "expected %<<%>"
 msgstr ""
@@ -21902,33 +21938,33 @@ msgstr ""
 msgid "expected label"
 msgstr ""
 
-#: cp/call.cc:4056
+#: cp/call.cc:4059
 msgid "candidate:"
 msgstr ""
 
-#: cp/call.cc:8190
+#: cp/call.cc:8193
 msgid "  after user-defined conversion:"
 msgstr ""
 
-#: cp/call.cc:8350 cp/pt.cc:2018 cp/pt.cc:25934
+#: cp/call.cc:8357 cp/pt.cc:2022 cp/pt.cc:26135
 msgid "candidate is:"
 msgid_plural "candidates are:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/call.cc:12782 cp/call.cc:13174
+#: cp/call.cc:12792 cp/call.cc:13184
 msgid "candidate 1:"
 msgstr ""
 
-#: cp/call.cc:12784 cp/call.cc:13175
+#: cp/call.cc:12794 cp/call.cc:13185
 msgid "candidate 2:"
 msgstr ""
 
-#: cp/decl.cc:3587
+#: cp/decl.cc:3588
 msgid "jump to label %qD"
 msgstr ""
 
-#: cp/decl.cc:3588
+#: cp/decl.cc:3589
 msgid "jump to case label"
 msgstr ""
 
@@ -21953,8 +21989,8 @@ msgstr ""
 msgid "<lambda"
 msgstr ""
 
-#: cp/error.cc:850 objc/objc-act.cc:6364 cp/cxx-pretty-print.cc:154
-#: cp/cxx-pretty-print.cc:2828
+#: cp/error.cc:850 objc/objc-act.cc:6362 cp/cxx-pretty-print.cc:154
+#: cp/cxx-pretty-print.cc:2831
 #, gcc-internal-format
 msgid "<unnamed>"
 msgstr ""
@@ -22168,27 +22204,27 @@ msgstr ""
 msgid "local variable %qD may not appear in this context"
 msgstr ""
 
-#: cp/parser.cc:21870
+#: cp/parser.cc:21883
 msgid "%<using enum%> only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:21873
+#: cp/parser.cc:21886
 msgid "%<using enum%> of dependent type %qT"
 msgstr ""
 
-#: cp/parser.cc:21875
+#: cp/parser.cc:21888
 msgid "%<using enum%> of non-enumeration type %q#T"
 msgstr ""
 
-#: cp/parser.cc:21877
+#: cp/parser.cc:21890
 msgid "%<using enum%> of incomplete type %qT"
 msgstr ""
 
-#: cp/parser.cc:21879
+#: cp/parser.cc:21892
 msgid "%<using enum%> of %qT before its enum-specifier"
 msgstr ""
 
-#: cp/pt.cc:2016 cp/semantics.cc:5984
+#: cp/pt.cc:2020 cp/semantics.cc:5992
 msgid "candidates are:"
 msgstr ""
 
@@ -22232,48 +22268,48 @@ msgstr ""
 msgid "source type is not polymorphic"
 msgstr ""
 
-#: cp/typeck.cc:7321 c/c-typeck.cc:4611
+#: cp/typeck.cc:7328 c/c-typeck.cc:4601
 #, gcc-internal-format
 msgid "wrong type argument to unary minus"
 msgstr ""
 
-#: cp/typeck.cc:7322 c/c-typeck.cc:4598
+#: cp/typeck.cc:7329 c/c-typeck.cc:4588
 #, gcc-internal-format
 msgid "wrong type argument to unary plus"
 msgstr ""
 
-#: cp/typeck.cc:7349 c/c-typeck.cc:4655
+#: cp/typeck.cc:7356 c/c-typeck.cc:4645
 #, gcc-internal-format
 msgid "wrong type argument to bit-complement"
 msgstr ""
 
-#: cp/typeck.cc:7366 c/c-typeck.cc:4663
+#: cp/typeck.cc:7373 c/c-typeck.cc:4653
 #, gcc-internal-format
 msgid "wrong type argument to abs"
 msgstr ""
 
-#: cp/typeck.cc:7378 c/c-typeck.cc:4685
+#: cp/typeck.cc:7385 c/c-typeck.cc:4675
 #, gcc-internal-format
 msgid "wrong type argument to conjugation"
 msgstr ""
 
-#: cp/typeck.cc:7400
+#: cp/typeck.cc:7407
 msgid "in argument to unary !"
 msgstr ""
 
-#: cp/typeck.cc:7449
+#: cp/typeck.cc:7456
 msgid "no pre-increment operator for type"
 msgstr ""
 
-#: cp/typeck.cc:7451
+#: cp/typeck.cc:7458
 msgid "no post-increment operator for type"
 msgstr ""
 
-#: cp/typeck.cc:7453
+#: cp/typeck.cc:7460
 msgid "no pre-decrement operator for type"
 msgstr ""
 
-#: cp/typeck.cc:7455
+#: cp/typeck.cc:7462
 msgid "no post-decrement operator for type"
 msgstr ""
 
@@ -22295,7 +22331,7 @@ msgstr ""
 msgid "arguments '%s' and '%s' for intrinsic %s"
 msgstr ""
 
-#: fortran/check.cc:4402 fortran/intrinsic.cc:4821
+#: fortran/check.cc:4402 fortran/intrinsic.cc:4828
 #, c-format
 msgid "arguments '%s' and '%s' for intrinsic '%s'"
 msgstr ""
@@ -22311,39 +22347,39 @@ msgid ""
 "\n"
 msgstr ""
 
-#: fortran/error.cc:977
+#: fortran/error.cc:984
 msgid "Fortran 2018 deleted feature:"
 msgstr ""
 
-#: fortran/error.cc:979
+#: fortran/error.cc:986
 msgid "Fortran 2018 obsolescent feature:"
 msgstr ""
 
-#: fortran/error.cc:981
+#: fortran/error.cc:988
 msgid "Fortran 2018:"
 msgstr ""
 
-#: fortran/error.cc:983
+#: fortran/error.cc:990
 msgid "Fortran 2008 obsolescent feature:"
 msgstr ""
 
-#: fortran/error.cc:989
+#: fortran/error.cc:996
 msgid "GNU Extension:"
 msgstr ""
 
-#: fortran/error.cc:991
+#: fortran/error.cc:998
 msgid "Legacy Extension:"
 msgstr ""
 
-#: fortran/error.cc:993
+#: fortran/error.cc:1000
 msgid "Obsolescent feature:"
 msgstr ""
 
-#: fortran/error.cc:995
+#: fortran/error.cc:1002
 msgid "Deleted feature:"
 msgstr ""
 
-#: fortran/expr.cc:3783
+#: fortran/expr.cc:3792
 msgid "array assignment"
 msgstr ""
 
@@ -22354,65 +22390,65 @@ msgid ""
 msgstr ""
 
 #. Macros for unified error messages.
-#: fortran/frontend-passes.cc:4078
+#: fortran/frontend-passes.cc:4082
 #, c-format
 msgid ""
 "Incorrect extent in argument B in MATMUL intrinsic in dimension 1: is %ld, "
 "should be %ld"
 msgstr ""
 
-#: fortran/frontend-passes.cc:4081
+#: fortran/frontend-passes.cc:4085
 #, c-format
 msgid "Array bound mismatch for dimension 1 of array (%ld/%ld)"
 msgstr ""
 
-#: fortran/frontend-passes.cc:4084
+#: fortran/frontend-passes.cc:4088
 #, c-format
 msgid "Array bound mismatch for dimension 2 of array (%ld/%ld)"
 msgstr ""
 
-#: fortran/gfortranspec.cc:427 m2/gm2spec.cc:791
+#: fortran/gfortranspec.cc:427 m2/gm2spec.cc:920
 #, c-format
 msgid "Driving:"
 msgstr ""
 
-#: fortran/interface.cc:3618 fortran/intrinsic.cc:4505
+#: fortran/interface.cc:3631 fortran/intrinsic.cc:4506
 msgid "actual argument to INTENT = OUT/INOUT"
 msgstr ""
 
-#: fortran/intrinsic.cc:4858
+#: fortran/intrinsic.cc:4865
 msgid "available since Fortran 77"
 msgstr ""
 
-#: fortran/intrinsic.cc:4862
+#: fortran/intrinsic.cc:4869
 msgid "obsolescent in Fortran 95"
 msgstr ""
 
-#: fortran/intrinsic.cc:4866
+#: fortran/intrinsic.cc:4873
 msgid "deleted in Fortran 95"
 msgstr ""
 
-#: fortran/intrinsic.cc:4870
+#: fortran/intrinsic.cc:4877
 msgid "new in Fortran 95"
 msgstr ""
 
-#: fortran/intrinsic.cc:4874
+#: fortran/intrinsic.cc:4881
 msgid "new in Fortran 2003"
 msgstr ""
 
-#: fortran/intrinsic.cc:4878
+#: fortran/intrinsic.cc:4885
 msgid "new in Fortran 2008"
 msgstr ""
 
-#: fortran/intrinsic.cc:4882
+#: fortran/intrinsic.cc:4889
 msgid "new in Fortran 2018"
 msgstr ""
 
-#: fortran/intrinsic.cc:4886
+#: fortran/intrinsic.cc:4893
 msgid "a GNU Fortran extension"
 msgstr ""
 
-#: fortran/intrinsic.cc:4890
+#: fortran/intrinsic.cc:4897
 msgid "for backward compatibility"
 msgstr ""
 
@@ -22534,11 +22570,11 @@ msgstr ""
 msgid "implied END DO"
 msgstr ""
 
-#: fortran/parse.cc:2240 fortran/resolve.cc:12129
+#: fortran/parse.cc:2240 fortran/resolve.cc:12367
 msgid "assignment"
 msgstr ""
 
-#: fortran/parse.cc:2243 fortran/resolve.cc:12187 fortran/resolve.cc:12190
+#: fortran/parse.cc:2243 fortran/resolve.cc:12433 fortran/resolve.cc:12436
 msgid "pointer assignment"
 msgstr ""
 
@@ -22546,201 +22582,201 @@ msgstr ""
 msgid "simple IF"
 msgstr ""
 
-#: fortran/resolve.cc:2394 fortran/resolve.cc:2589
+#: fortran/resolve.cc:2396 fortran/resolve.cc:2591
 msgid "elemental procedure"
 msgstr ""
 
-#: fortran/resolve.cc:2492
+#: fortran/resolve.cc:2494
 msgid "allocatable argument"
 msgstr ""
 
-#: fortran/resolve.cc:2497
+#: fortran/resolve.cc:2499
 msgid "asynchronous argument"
 msgstr ""
 
-#: fortran/resolve.cc:2502
+#: fortran/resolve.cc:2504
 msgid "optional argument"
 msgstr ""
 
-#: fortran/resolve.cc:2507
+#: fortran/resolve.cc:2509
 msgid "pointer argument"
 msgstr ""
 
-#: fortran/resolve.cc:2512
+#: fortran/resolve.cc:2514
 msgid "target argument"
 msgstr ""
 
-#: fortran/resolve.cc:2517
+#: fortran/resolve.cc:2519
 msgid "value argument"
 msgstr ""
 
-#: fortran/resolve.cc:2522
+#: fortran/resolve.cc:2524
 msgid "volatile argument"
 msgstr ""
 
-#: fortran/resolve.cc:2527
+#: fortran/resolve.cc:2529
 msgid "assumed-shape argument"
 msgstr ""
 
-#: fortran/resolve.cc:2532
+#: fortran/resolve.cc:2534
 msgid "assumed-rank argument"
 msgstr ""
 
-#: fortran/resolve.cc:2537
+#: fortran/resolve.cc:2539
 msgid "coarray argument"
 msgstr ""
 
-#: fortran/resolve.cc:2542
+#: fortran/resolve.cc:2544
 msgid "parametrized derived type argument"
 msgstr ""
 
-#: fortran/resolve.cc:2547
+#: fortran/resolve.cc:2549
 msgid "polymorphic argument"
 msgstr ""
 
-#: fortran/resolve.cc:2552
+#: fortran/resolve.cc:2554
 msgid "NO_ARG_CHECK attribute"
 msgstr ""
 
 #. As assumed-type is unlimited polymorphic (cf. above).
 #. See also TS 29113, Note 6.1.
-#: fortran/resolve.cc:2559
+#: fortran/resolve.cc:2561
 msgid "assumed-type argument"
 msgstr ""
 
-#: fortran/resolve.cc:2570
+#: fortran/resolve.cc:2572
 msgid "array result"
 msgstr ""
 
-#: fortran/resolve.cc:2575
+#: fortran/resolve.cc:2577
 msgid "pointer or allocatable result"
 msgstr ""
 
-#: fortran/resolve.cc:2582
+#: fortran/resolve.cc:2584
 msgid "result with non-constant character length"
 msgstr ""
 
-#: fortran/resolve.cc:2594
+#: fortran/resolve.cc:2596
 msgid "bind(c) procedure"
 msgstr ""
 
-#: fortran/resolve.cc:4138
+#: fortran/resolve.cc:4158
 #, c-format
 msgid "Invalid context for NULL() pointer at %%L"
 msgstr ""
 
-#: fortran/resolve.cc:4155
+#: fortran/resolve.cc:4175
 #, c-format
 msgid "Operand of unary numeric operator %%<%s%%> at %%L is %s"
 msgstr ""
 
-#: fortran/resolve.cc:4172
+#: fortran/resolve.cc:4192
 #, c-format
 msgid ""
 "Unexpected derived-type entities in binary intrinsic numeric operator "
 "%%<%s%%> at %%L"
 msgstr ""
 
-#: fortran/resolve.cc:4177
+#: fortran/resolve.cc:4197
 #, c-format
 msgid "Operands of binary numeric operator %%<%s%%> at %%L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.cc:4192
+#: fortran/resolve.cc:4212
 #, c-format
 msgid "Operands of string concatenation operator at %%L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.cc:4235
+#: fortran/resolve.cc:4255
 #, c-format
 msgid "Operands of logical operator %%<%s%%> at %%L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.cc:4258
+#: fortran/resolve.cc:4278
 #, c-format
 msgid "Operand of .not. operator at %%L is %s"
 msgstr ""
 
-#: fortran/resolve.cc:4272
+#: fortran/resolve.cc:4292
 msgid "COMPLEX quantities cannot be compared at %L"
 msgstr ""
 
-#: fortran/resolve.cc:4370
+#: fortran/resolve.cc:4390
 #, c-format
 msgid "Logicals at %%L must be compared with %s instead of %s"
 msgstr ""
 
-#: fortran/resolve.cc:4376
+#: fortran/resolve.cc:4396
 #, c-format
 msgid "Operands of comparison operator %%<%s%%> at %%L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.cc:4390
+#: fortran/resolve.cc:4410
 #, c-format
 msgid "Unknown operator %%<%s%%> at %%L; did you mean %%<%s%%>?"
 msgstr ""
 
-#: fortran/resolve.cc:4393
+#: fortran/resolve.cc:4413
 #, c-format
 msgid "Unknown operator %%<%s%%> at %%L"
 msgstr ""
 
-#: fortran/resolve.cc:4398
+#: fortran/resolve.cc:4418
 #, c-format
 msgid "Operand of user operator %%<%s%%> at %%L is %s"
 msgstr ""
 
-#: fortran/resolve.cc:4403
+#: fortran/resolve.cc:4423
 #, c-format
 msgid "Operands of user operator %%<%s%%> at %%L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.cc:4489
+#: fortran/resolve.cc:4509
 #, c-format
 msgid "Inconsistent ranks for operator at %%L and %%L"
 msgstr ""
 
-#: fortran/resolve.cc:7339
+#: fortran/resolve.cc:7383
 msgid "Loop variable"
 msgstr ""
 
-#: fortran/resolve.cc:7343
+#: fortran/resolve.cc:7387
 msgid "iterator variable"
 msgstr ""
 
-#: fortran/resolve.cc:7347
+#: fortran/resolve.cc:7391
 msgid "Start expression in DO loop"
 msgstr ""
 
-#: fortran/resolve.cc:7351
+#: fortran/resolve.cc:7395
 msgid "End expression in DO loop"
 msgstr ""
 
-#: fortran/resolve.cc:7355
+#: fortran/resolve.cc:7399
 msgid "Step expression in DO loop"
 msgstr ""
 
-#: fortran/resolve.cc:7642 fortran/resolve.cc:7645
+#: fortran/resolve.cc:7686 fortran/resolve.cc:7689
 msgid "DEALLOCATE object"
 msgstr ""
 
-#: fortran/resolve.cc:8023 fortran/resolve.cc:8026
+#: fortran/resolve.cc:8067 fortran/resolve.cc:8070
 msgid "ALLOCATE object"
 msgstr ""
 
-#: fortran/resolve.cc:8260 fortran/resolve.cc:10236 fortran/resolve.cc:10357
+#: fortran/resolve.cc:8304 fortran/resolve.cc:10280 fortran/resolve.cc:10401
 msgid "STAT variable"
 msgstr ""
 
-#: fortran/resolve.cc:8311 fortran/resolve.cc:10248 fortran/resolve.cc:10369
+#: fortran/resolve.cc:8355 fortran/resolve.cc:10292 fortran/resolve.cc:10413
 msgid "ERRMSG variable"
 msgstr ""
 
-#: fortran/resolve.cc:10038
+#: fortran/resolve.cc:10082
 msgid "item in READ"
 msgstr ""
 
-#: fortran/resolve.cc:10260
+#: fortran/resolve.cc:10304
 msgid "ACQUIRED_LOCK variable"
 msgstr ""
 
@@ -22749,37 +22785,37 @@ msgstr ""
 msgid "Different CHARACTER lengths (%ld/%ld) in array constructor"
 msgstr ""
 
-#: fortran/trans-array.cc:6184
+#: fortran/trans-array.cc:6235
 msgid "Integer overflow when calculating the amount of memory to allocate"
 msgstr ""
 
-#: fortran/trans-array.cc:10117
+#: fortran/trans-array.cc:10188
 #, 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:6168
+#: fortran/trans-decl.cc:6203
 #, c-format
 msgid ""
 "Actual string length does not match the declared one for dummy argument "
 "'%s' (%ld/%ld)"
 msgstr ""
 
-#: fortran/trans-decl.cc:6176
+#: fortran/trans-decl.cc:6211
 #, c-format
 msgid ""
 "Actual string length is shorter than the declared one for dummy argument "
 "'%s' (%ld/%ld)"
 msgstr ""
 
-#: fortran/trans-expr.cc:10343
+#: fortran/trans-expr.cc:10333
 #, c-format
 msgid "Target of rank remapping is too small (%ld < %ld)"
 msgstr ""
 
-#: fortran/trans-expr.cc:11806
+#: fortran/trans-expr.cc:11893
 msgid "Assignment of scalar to unallocated array"
 msgstr ""
 
@@ -22798,71 +22834,71 @@ msgstr ""
 msgid "POS argument (%ld) out of range 0:%ld in intrinsic %s"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6660
+#: fortran/trans-intrinsic.cc:6661
 #, c-format
 msgid "POS argument (%ld) out of range 0:%ld in intrinsic IBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6670
+#: fortran/trans-intrinsic.cc:6671
 #, c-format
 msgid "LEN argument (%ld) out of range 0:%ld in intrinsic IBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6677
+#: fortran/trans-intrinsic.cc:6678
 #, c-format
 msgid "POS(%ld)+LEN(%ld)>BIT_SIZE(%ld) in intrinsic IBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6750
+#: fortran/trans-intrinsic.cc:6760
 #, c-format
 msgid "SHIFT argument (%ld) out of range 0:%ld in intrinsic %s"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6818
+#: fortran/trans-intrinsic.cc:6828
 #, c-format
 msgid "SHIFT argument (%ld) out of range -%ld:%ld in intrinsic ISHFT"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6884
+#: fortran/trans-intrinsic.cc:6894
 #, c-format
 msgid "SIZE argument (%ld) out of range 1:%ld in intrinsic ISHFTC"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:6892 fortran/trans-intrinsic.cc:6937
+#: fortran/trans-intrinsic.cc:6902 fortran/trans-intrinsic.cc:6947
 #, c-format
 msgid "SHIFT argument (%ld) out of range -%ld:%ld in intrinsic ISHFTC"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:9290
+#: fortran/trans-intrinsic.cc:9300
 #, c-format
 msgid "Argument NCOPIES of REPEAT intrinsic is negative (its value is %ld)"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:9322
+#: fortran/trans-intrinsic.cc:9332
 msgid "Argument NCOPIES of REPEAT intrinsic is too large"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12280
+#: fortran/trans-intrinsic.cc:12290
 #, c-format
 msgid "FROMPOS argument (%ld) out of range 0:%d in intrinsic MVBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12292
+#: fortran/trans-intrinsic.cc:12302
 #, c-format
 msgid "LEN argument (%ld) out of range 0:%d in intrinsic MVBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12304
+#: fortran/trans-intrinsic.cc:12314
 #, c-format
 msgid "TOPOS argument (%ld) out of range 0:%d in intrinsic MVBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12316
+#: fortran/trans-intrinsic.cc:12326
 #, c-format
 msgid "FROMPOS(%ld)+LEN(%ld)>BIT_SIZE(%d) in intrinsic MVBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12324
+#: fortran/trans-intrinsic.cc:12334
 #, c-format
 msgid "TOPOS(%ld)+LEN(%ld)>BIT_SIZE(%d) in intrinsic MVBITS"
 msgstr ""
@@ -22879,20 +22915,20 @@ msgstr ""
 msgid "Assigned label is not a target label"
 msgstr ""
 
-#: fortran/trans-stmt.cc:1288
+#: fortran/trans-stmt.cc:1290
 #, c-format
 msgid "Invalid image number %d in SYNC IMAGES"
 msgstr ""
 
-#: fortran/trans-stmt.cc:2450
+#: fortran/trans-stmt.cc:2488
 msgid "Loop iterates infinitely"
 msgstr ""
 
-#: fortran/trans-stmt.cc:2470 fortran/trans-stmt.cc:2726
+#: fortran/trans-stmt.cc:2508 fortran/trans-stmt.cc:2764
 msgid "Loop variable has been modified"
 msgstr ""
 
-#: fortran/trans-stmt.cc:2579
+#: fortran/trans-stmt.cc:2617
 msgid "DO step value is zero"
 msgstr ""
 
@@ -22914,12 +22950,12 @@ msgstr ""
 msgid "Attempting to allocate already allocated variable"
 msgstr ""
 
-#: fortran/trans.cc:1482 fortran/trans.cc:1641
+#: fortran/trans.cc:1761 fortran/trans.cc:1920
 #, c-format
 msgid "Attempt to DEALLOCATE unallocated '%s'"
 msgstr ""
 
-#: fortran/trans.cc:1799
+#: fortran/trans.cc:2078
 #, c-format
 msgid "Error reallocating to %lu bytes"
 msgstr ""
@@ -22940,8 +22976,8 @@ msgstr ""
 msgid "short read while reading export data"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:183 c-family/c-warn.cc:683 cp/cvt.cc:1401
-#: rust/backend/rust-tree.cc:513
+#: go/gofrontend/expressions.cc:183 c-family/c-warn.cc:684 cp/cvt.cc:1401
+#: rust/backend/rust-tree.cc:514
 #, gcc-internal-format
 msgid "value computed is not used"
 msgstr ""
@@ -22966,8 +23002,8 @@ msgstr ""
 msgid "expected boolean type"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:5157 c/c-parser.cc:16671 c/c-parser.cc:16678
-#: cp/parser.cc:39948 cp/parser.cc:39955
+#: go/gofrontend/expressions.cc:5157 c/c-parser.cc:16670 c/c-parser.cc:16677
+#: cp/parser.cc:39987 cp/parser.cc:39994
 #, gcc-internal-format
 msgid "expected integer"
 msgstr ""
@@ -23021,8 +23057,8 @@ msgstr ""
 #: go/gofrontend/expressions.cc:8850 go/gofrontend/expressions.cc:10206
 #: go/gofrontend/expressions.cc:10351 go/gofrontend/expressions.cc:10397
 #: go/gofrontend/expressions.cc:10432 go/gofrontend/expressions.cc:10508
-#: go/gofrontend/expressions.cc:10533 go/gofrontend/expressions.cc:12686
-#: go/gofrontend/expressions.cc:12703 go/gofrontend/expressions.cc:12719
+#: go/gofrontend/expressions.cc:10533 go/gofrontend/expressions.cc:12687
+#: go/gofrontend/expressions.cc:12704 go/gofrontend/expressions.cc:12720
 msgid "not enough arguments"
 msgstr ""
 
@@ -23030,9 +23066,9 @@ msgstr ""
 #: go/gofrontend/expressions.cc:10211 go/gofrontend/expressions.cc:10334
 #: go/gofrontend/expressions.cc:10356 go/gofrontend/expressions.cc:10437
 #: go/gofrontend/expressions.cc:10510 go/gofrontend/expressions.cc:10535
-#: go/gofrontend/expressions.cc:11415 go/gofrontend/expressions.cc:12691
-#: go/gofrontend/expressions.cc:12705 go/gofrontend/expressions.cc:12726
-#: cp/pt.cc:9197
+#: go/gofrontend/expressions.cc:11416 go/gofrontend/expressions.cc:12692
+#: go/gofrontend/expressions.cc:12706 go/gofrontend/expressions.cc:12727
+#: cp/pt.cc:9218
 #, gcc-internal-format
 msgid "too many arguments"
 msgstr ""
@@ -23117,8 +23153,8 @@ msgstr ""
 msgid "type conversion result count mismatch"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:11195 go/gofrontend/expressions.cc:12632
-#: go/gofrontend/expressions.cc:13068
+#: go/gofrontend/expressions.cc:11195 go/gofrontend/expressions.cc:12633
+#: go/gofrontend/expressions.cc:13069
 msgid "expected function"
 msgstr ""
 
@@ -23126,76 +23162,76 @@ msgstr ""
 msgid "multiple-value argument in single-value context"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:11419
+#: go/gofrontend/expressions.cc:11420
 msgid "invalid use of %<...%> with non-slice"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:12640
+#: go/gofrontend/expressions.cc:12641
 msgid "function result count mismatch"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:12658
+#: go/gofrontend/expressions.cc:12659
 msgid "incompatible type for receiver"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:12676
+#: go/gofrontend/expressions.cc:12677
 msgid "invalid use of %<...%> calling non-variadic function"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:13077 go/gofrontend/expressions.cc:13091
+#: go/gofrontend/expressions.cc:13078 go/gofrontend/expressions.cc:13092
 msgid "number of results does not match number of values"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:13383 go/gofrontend/expressions.cc:14054
+#: go/gofrontend/expressions.cc:13384 go/gofrontend/expressions.cc:14055
 msgid "index must be integer"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:13392 go/gofrontend/expressions.cc:14063
+#: go/gofrontend/expressions.cc:13393 go/gofrontend/expressions.cc:14064
 msgid "slice end must be integer"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:13401
+#: go/gofrontend/expressions.cc:13402
 msgid "slice capacity must be integer"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:13452 go/gofrontend/expressions.cc:14097
+#: go/gofrontend/expressions.cc:13453 go/gofrontend/expressions.cc:14098
 msgid "inverted slice range"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:13495
+#: go/gofrontend/expressions.cc:13496
 msgid "slice of unaddressable value"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:14353
+#: go/gofrontend/expressions.cc:14354
 msgid "incompatible type for map index"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:14791
+#: go/gofrontend/expressions.cc:14792
 msgid "expected interface or pointer to interface"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:15577
+#: go/gofrontend/expressions.cc:15578
 msgid "too many expressions for struct"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:15590
+#: go/gofrontend/expressions.cc:15591
 msgid "too few expressions for struct"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:17555 go/gofrontend/statements.cc:1921
+#: go/gofrontend/expressions.cc:17556 go/gofrontend/statements.cc:1921
 msgid "type assertion only valid for interface types"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:17567
+#: go/gofrontend/expressions.cc:17568
 msgid "impossible type assertion: type does not implement interface"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:17766 go/gofrontend/expressions.cc:17786
+#: go/gofrontend/expressions.cc:17767 go/gofrontend/expressions.cc:17787
 #: go/gofrontend/statements.cc:1768
 msgid "expected channel"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:17791 go/gofrontend/statements.cc:1773
+#: go/gofrontend/expressions.cc:17792 go/gofrontend/statements.cc:1773
 msgid "invalid receive on send-only channel"
 msgstr ""
 
@@ -23650,7 +23686,7 @@ msgid "%<-mrelax%> is only supported for RTP PIC"
 msgstr ""
 
 #. A general purpose syntax error.
-#: fortran/gfortran.h:3337 fortran/io.cc:3736 fortran/io.cc:4422
+#: fortran/gfortran.h:3341 fortran/io.cc:3736 fortran/io.cc:4422
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in %s statement at %C"
 msgstr ""
@@ -23705,7 +23741,7 @@ msgstr ""
 msgid "unknown rust edition %qs"
 msgstr ""
 
-#: rust/lang.opt:126
+#: rust/lang.opt:127
 #, gcc-internal-format
 msgid "unknown rust compile-until %qs"
 msgstr ""
@@ -23724,7 +23760,7 @@ msgstr ""
 #: c-family/c.opt:70 c-family/c.opt:73 c-family/c.opt:76 c-family/c.opt:79
 #: c-family/c.opt:175 c-family/c.opt:178 c-family/c.opt:220 c-family/c.opt:224
 #: c-family/c.opt:236 c-family/c.opt:2292 c-family/c.opt:2300
-#: config/darwin.opt:30 common.opt:329 common.opt:332 common.opt:3499
+#: config/darwin.opt:30 common.opt:329 common.opt:332 common.opt:3507
 #, gcc-internal-format
 msgid "missing filename after %qs"
 msgstr ""
@@ -23830,12 +23866,12 @@ msgid ""
 "masm=intel%> and %<-masm=att%> instead"
 msgstr ""
 
-#: config/i386/i386.opt:702
+#: config/i386/i386.opt:706
 #, gcc-internal-format
 msgid "%<-msse5%> was removed"
 msgstr ""
 
-#: config/i386/i386.opt:1263
+#: config/i386/i386.opt:1267
 #, gcc-internal-format
 msgid "unknown lam type %qs"
 msgstr ""
@@ -23893,113 +23929,113 @@ msgstr ""
 msgid "unknown linker output %qs"
 msgstr ""
 
-#: common.opt:1590
+#: common.opt:1598
 #, gcc-internal-format
 msgid "unknown excess precision style %qs"
 msgstr ""
 
-#: common.opt:1608
+#: common.opt:1616
 #, gcc-internal-format
 msgid ""
 "unknown specification for the set of FLT_EVAL_METHOD values to permit %qs"
 msgstr ""
 
-#: common.opt:1652
+#: common.opt:1660
 #, gcc-internal-format
 msgid "unknown floating point contraction style %qs"
 msgstr ""
 
-#: common.opt:1817
+#: common.opt:1825
 #, gcc-internal-format
 msgid "unknown Stack Reuse Level %qs"
 msgstr ""
 
-#: common.opt:1886
+#: common.opt:1894
 #, gcc-internal-format
 msgid "unknown Control-Flow Protection Level %qs"
 msgstr ""
 
-#: common.opt:1996
+#: common.opt:2004
 #, gcc-internal-format
 msgid "unknown IRA algorithm %qs"
 msgstr ""
 
-#: common.opt:2009
+#: common.opt:2017
 #, gcc-internal-format
 msgid "unknown IRA region %qs"
 msgstr ""
 
-#: common.opt:2087
+#: common.opt:2095
 #, gcc-internal-format
 msgid "unknown LTO partitioning model %qs"
 msgstr ""
 
-#: common.opt:2197
+#: common.opt:2205
 #, gcc-internal-format
 msgid "targets missing after %qs"
 msgstr ""
 
-#: common.opt:2200
+#: common.opt:2208
 #, gcc-internal-format
 msgid "options or targets=options missing after %qs"
 msgstr ""
 
-#: common.opt:2208
+#: common.opt:2216
 #, gcc-internal-format
 msgid "unknown offload ABI %qs"
 msgstr ""
 
-#: common.opt:2372
+#: common.opt:2380
 #, gcc-internal-format
 msgid "unknown profile reproducibility method %qs"
 msgstr ""
 
-#: common.opt:2388
+#: common.opt:2396
 #, gcc-internal-format
 msgid "unknown profile update method %qs"
 msgstr ""
 
-#: common.opt:2494
+#: common.opt:2502
 #, gcc-internal-format
 msgid "unknown Live-Patching Level %qs"
 msgstr ""
 
-#: common.opt:2527
+#: common.opt:2535
 #, gcc-internal-format
 msgid "unknown basic block reordering algorithm %qs"
 msgstr ""
 
-#: common.opt:2834
+#: common.opt:2842
 #, gcc-internal-format
 msgid "unknown TLS model %qs"
 msgstr ""
 
-#: common.opt:3174
+#: common.opt:3182
 #, gcc-internal-format
 msgid "unknown vectorizer cost model %qs"
 msgstr ""
 
-#: common.opt:3205
+#: common.opt:3213
 #, gcc-internal-format
 msgid "unrecognized automatic variable initialization type %qs"
 msgstr ""
 
-#: common.opt:3231
+#: common.opt:3239
 #, gcc-internal-format
 msgid "unrecognized visibility value %qs"
 msgstr ""
 
-#: common.opt:3250
+#: common.opt:3258
 #, gcc-internal-format
 msgid "unknown vtable verify initialization priority %qs"
 msgstr ""
 
-#: params.opt:882
+#: params.opt:886
 #, gcc-internal-format
 msgid "unknown ranger debug mode %qs"
 msgstr ""
 
-#: params.opt:1056
+#: params.opt:1065
 #, gcc-internal-format
 msgid "unknown threader debug mode %qs"
 msgstr ""
@@ -24027,16 +24063,16 @@ msgid "ignoring attribute %qE because it conflicts with attribute %qs"
 msgstr ""
 
 #: attribs.cc:553 c-family/c-attribs.cc:937 c-family/c-attribs.cc:2439
-#: c-family/c-attribs.cc:2928 c-family/c-attribs.cc:4786
-#: c-family/c-attribs.cc:4879 cp/decl.cc:15925 cp/decl.cc:15975
+#: c-family/c-attribs.cc:2928 c-family/c-attribs.cc:4790
+#: c-family/c-attribs.cc:4883 cp/decl.cc:15960 cp/decl.cc:16010
 #: cp/friend.cc:318 cp/tree.cc:5261
 #, gcc-internal-format
 msgid "previous declaration here"
 msgstr ""
 
 #. Warn about and ignore all others for now, but store them.
-#: attribs.cc:720 c-family/c-attribs.cc:3956 objc/objc-act.cc:5133
-#: objc/objc-act.cc:7124 objc/objc-act.cc:8322 objc/objc-act.cc:8378
+#: attribs.cc:720 c-family/c-attribs.cc:3956 objc/objc-act.cc:5131
+#: objc/objc-act.cc:7122 objc/objc-act.cc:8320 objc/objc-act.cc:8376
 #, gcc-internal-format
 msgid "%qE attribute directive ignored"
 msgstr ""
@@ -24046,7 +24082,7 @@ msgstr ""
 msgid "%<%E::%E%> scoped attribute directive ignored"
 msgstr ""
 
-#: attribs.cc:737 c/c-parser.cc:1961 cp/cp-gimplify.cc:3201
+#: attribs.cc:737 c/c-parser.cc:1961 cp/cp-gimplify.cc:3274
 #, gcc-internal-format
 msgid "wrong number of arguments specified for %qE attribute"
 msgstr ""
@@ -24056,7 +24092,7 @@ msgstr ""
 msgid "expected %i or more, found %i"
 msgstr ""
 
-#: attribs.cc:743 c/c-parser.cc:1964 cp/cp-gimplify.cc:3203
+#: attribs.cc:743 c/c-parser.cc:1964 cp/cp-gimplify.cc:3276
 #, gcc-internal-format, gfc-internal-format
 msgid "expected %i, found %i"
 msgstr ""
@@ -24116,18 +24152,18 @@ msgstr ""
 #: c-family/c-attribs.cc:4109 c-family/c-attribs.cc:4130
 #: c-family/c-attribs.cc:4219 c-family/c-attribs.cc:4251
 #: c-family/c-attribs.cc:4316 c-family/c-attribs.cc:4519
-#: c-family/c-attribs.cc:4654 c-family/c-attribs.cc:5395
-#: c-family/c-attribs.cc:5418 c-family/c-attribs.cc:5457
-#: c-family/c-attribs.cc:5539 c-family/c-attribs.cc:5612
-#: c-family/c-attribs.cc:5628 c-family/c-attribs.cc:5796
-#: c-family/c-attribs.cc:5808 c-family/c-common.cc:6041
-#: c-family/c-common.cc:6044 config/darwin.cc:2143 config/arm/arm.cc:7444
+#: c-family/c-attribs.cc:4654 c-family/c-attribs.cc:5399
+#: c-family/c-attribs.cc:5422 c-family/c-attribs.cc:5461
+#: c-family/c-attribs.cc:5543 c-family/c-attribs.cc:5616
+#: c-family/c-attribs.cc:5632 c-family/c-attribs.cc:5800
+#: c-family/c-attribs.cc:5812 c-family/c-common.cc:6056
+#: c-family/c-common.cc:6059 config/darwin.cc:2143 config/arm/arm.cc:7444
 #: config/arm/arm.cc:7472 config/arm/arm.cc:7489 config/avr/avr.cc:9568
 #: config/csky/csky.cc:6498 config/csky/csky.cc:6520 config/h8300/h8300.cc:4968
 #: config/h8300/h8300.cc:4992 config/i386/i386-options.cc:3426
 #: config/i386/i386-options.cc:3584 config/i386/i386-options.cc:3816
 #: config/i386/i386-options.cc:3846 config/ia64/ia64.cc:785
-#: config/loongarch/loongarch.cc:6539 config/rs6000/rs6000.cc:20499
+#: config/loongarch/loongarch.cc:6539 config/rs6000/rs6000.cc:20466
 #: ada/gcc-interface/utils.cc:6588 ada/gcc-interface/utils.cc:6604
 #: ada/gcc-interface/utils.cc:6642 ada/gcc-interface/utils.cc:6659
 #: ada/gcc-interface/utils.cc:6676 ada/gcc-interface/utils.cc:6691
@@ -24135,8 +24171,8 @@ msgstr ""
 #: ada/gcc-interface/utils.cc:6802 ada/gcc-interface/utils.cc:6829
 #: ada/gcc-interface/utils.cc:6850 ada/gcc-interface/utils.cc:6871
 #: ada/gcc-interface/utils.cc:6919 ada/gcc-interface/utils.cc:6935
-#: ada/gcc-interface/utils.cc:6990 c/c-decl.cc:4778 c/c-decl.cc:4781
-#: c/c-decl.cc:4796 c/c-parser.cc:5434 cp/tree.cc:5032 d/d-attribs.cc:480
+#: ada/gcc-interface/utils.cc:6990 c/c-decl.cc:4781 c/c-decl.cc:4784
+#: c/c-decl.cc:4799 c/c-parser.cc:5433 cp/tree.cc:5032 d/d-attribs.cc:480
 #: d/d-attribs.cc:699 d/d-attribs.cc:720 d/d-attribs.cc:736 d/d-attribs.cc:753
 #: d/d-attribs.cc:785 d/d-attribs.cc:914 d/d-attribs.cc:973 d/d-attribs.cc:989
 #: d/d-attribs.cc:1005 d/d-attribs.cc:1154 d/d-attribs.cc:1167
@@ -24152,8 +24188,8 @@ msgstr ""
 msgid "missing %<target%> attribute for multi-versioned %qD"
 msgstr ""
 
-#: attribs.cc:1178 cp/decl.cc:1281 cp/decl.cc:2244 cp/decl.cc:2292
-#: cp/decl.cc:2308 cp/decl.cc:2988 cp/decl.cc:3434
+#: attribs.cc:1178 cp/decl.cc:1282 cp/decl.cc:2245 cp/decl.cc:2293
+#: cp/decl.cc:2309 cp/decl.cc:2989 cp/decl.cc:3435
 #, gcc-internal-format
 msgid "previous declaration of %qD"
 msgstr ""
@@ -24293,146 +24329,146 @@ msgstr ""
 msgid "invalid third argument to %<__builtin_prefetch%>; using zero"
 msgstr ""
 
-#: builtins.cc:4030 gimple-fold.cc:2523 gimple-ssa-warn-access.cc:2546
+#: builtins.cc:4042 gimple-fold.cc:2523 gimple-ssa-warn-access.cc:2553
 #: tree-ssa-strlen.cc:3188
 #, gcc-internal-format
 msgid "%qD specified bound %E equals destination size"
 msgstr ""
 
-#: builtins.cc:5135 gimplify.cc:3647
+#: builtins.cc:5147 gimplify.cc:3647
 #, gcc-internal-format
 msgid "too few arguments to function %<va_start%>"
 msgstr ""
 
-#: builtins.cc:5235
+#: builtins.cc:5247
 #, gcc-internal-format
 msgid "invalid argument to %qD"
 msgstr ""
 
-#: builtins.cc:5248
+#: builtins.cc:5260
 #, 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:5256
+#: builtins.cc:5268
 #, gcc-internal-format
 msgid "calling %qD with a nonzero argument is unsafe"
 msgstr ""
 
-#: builtins.cc:5608
+#: builtins.cc:5620
 #, gcc-internal-format
 msgid "both arguments to %<__builtin___clear_cache%> must be pointers"
 msgstr ""
 
-#: builtins.cc:5698
+#: builtins.cc:5710
 #, gcc-internal-format
 msgid "trampoline generated for nested function %qD"
 msgstr ""
 
-#: builtins.cc:6072 builtins.cc:6085
+#: builtins.cc:6084 builtins.cc:6097
 #, gcc-internal-format
 msgid "%qD changed semantics in GCC 4.4"
 msgstr ""
 
-#: builtins.cc:6855
+#: builtins.cc:6867
 #, gcc-internal-format
 msgid "non-constant argument 1 to %qs"
 msgstr ""
 
-#: builtins.cc:6897
+#: builtins.cc:6909
 #, gcc-internal-format
 msgid "non-integer argument 1 to %qs"
 msgstr ""
 
-#: builtins.cc:6961
+#: builtins.cc:6973
 #, gcc-internal-format
 msgid "%<__builtin_thread_pointer%> is not supported on this target"
 msgstr ""
 
-#: builtins.cc:6981
+#: builtins.cc:6993
 #, gcc-internal-format
 msgid "%<__builtin_set_thread_pointer%> is not supported on this target"
 msgstr ""
 
-#: builtins.cc:7040
+#: builtins.cc:7052
 #, gcc-internal-format
 msgid "%qs only supported in OpenACC code"
 msgstr ""
 
-#: builtins.cc:7047
+#: builtins.cc:7059
 #, gcc-internal-format
 msgid "non-constant argument 0 to %qs"
 msgstr ""
 
-#: builtins.cc:7059
+#: builtins.cc:7071
 #, gcc-internal-format
 msgid "illegal argument 0 to %qs"
 msgstr ""
 
 #. All valid uses of __builtin_va_arg_pack () are removed during
 #. inlining.
-#: builtins.cc:7544 expr.cc:11837
+#: builtins.cc:7581 expr.cc:11830
 #, 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:7550
+#: builtins.cc:7587
 #, gcc-internal-format
 msgid "invalid use of %<__builtin_va_arg_pack_len ()%>"
 msgstr ""
 
-#: builtins.cc:7818
+#: builtins.cc:7855
 #, gcc-internal-format
 msgid "%<__builtin_longjmp%> second argument must be 1"
 msgstr ""
 
-#: builtins.cc:8714
+#: builtins.cc:8751
 #, gcc-internal-format
 msgid "target format does not support infinity"
 msgstr ""
 
-#: builtins.cc:10360
+#: builtins.cc:10397
 #, gcc-internal-format
 msgid "%<va_start%> used in function with fixed arguments"
 msgstr ""
 
-#: builtins.cc:10368
+#: builtins.cc:10405
 #, gcc-internal-format
 msgid "wrong number of arguments to function %<va_start%>"
 msgstr ""
 
-#: builtins.cc:10383
+#: builtins.cc:10420
 #, gcc-internal-format
 msgid "%<__builtin_next_arg%> called without an argument"
 msgstr ""
 
-#: builtins.cc:10388
+#: builtins.cc:10425
 #, gcc-internal-format
 msgid "wrong number of arguments to function %<__builtin_next_arg%>"
 msgstr ""
 
-#: builtins.cc:10421
+#: builtins.cc:10458
 #, gcc-internal-format
 msgid "second parameter of %<va_start%> not last named argument"
 msgstr ""
 
-#: builtins.cc:10434
+#: builtins.cc:10471
 #, gcc-internal-format
 msgid ""
 "undefined behavior when second parameter of %<va_start%> is declared with "
 "%<register%> storage"
 msgstr ""
 
-#: builtins.cc:10463
+#: builtins.cc:10500
 #, gcc-internal-format
 msgid "first argument of %qD must be a pointer, second integer constant"
 msgstr ""
 
-#: builtins.cc:10476
+#: builtins.cc:10513
 #, gcc-internal-format
 msgid "last argument of %qD is not integer constant between 0 and 3"
 msgstr ""
@@ -24560,19 +24596,19 @@ msgstr ""
 msgid "%<asm%> clobber conflict with input operand"
 msgstr ""
 
-#: cfgexpand.cc:6684
+#: cfgexpand.cc:6694
 #, gcc-internal-format
 msgid "stack protector not protecting local variables: variable length buffer"
 msgstr ""
 
-#: cfgexpand.cc:6688
+#: cfgexpand.cc:6698
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "stack protector not protecting function: all local arrays are less than %d "
 "bytes long"
 msgstr ""
 
-#: cfgexpand.cc:6977
+#: cfgexpand.cc:6987
 #, gcc-internal-format
 msgid "patchable function entry %wu exceeds size %wu"
 msgstr ""
@@ -25104,477 +25140,477 @@ msgstr ""
 msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
 msgstr ""
 
-#: cgraph.cc:3204
+#: cgraph.cc:3207
 #, gcc-internal-format
 msgid "caller edge count invalid"
 msgstr ""
 
-#: cgraph.cc:3302
+#: cgraph.cc:3305
 #, gcc-internal-format
 msgid "missing indirect call in speculative call sequence"
 msgstr ""
 
-#: cgraph.cc:3307
+#: cgraph.cc:3310
 #, gcc-internal-format
 msgid "indirect call in speculative call sequence has no speculative flag"
 msgstr ""
 
-#: cgraph.cc:3337
+#: cgraph.cc:3340
 #, gcc-internal-format
 msgid "speculative edges are not adjacent"
 msgstr ""
 
-#: cgraph.cc:3343
+#: cgraph.cc:3346
 #, gcc-internal-format, gfc-internal-format
 msgid "direct call to %s in speculative call sequence has no speculative flag"
 msgstr ""
 
-#: cgraph.cc:3349 cgraph.cc:3379
+#: cgraph.cc:3352 cgraph.cc:3382
 #, 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:3356
+#: cgraph.cc:3359
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "duplicate direct call to %s in speculative call sequence with speculative_id "
 "%i"
 msgstr ""
 
-#: cgraph.cc:3367
+#: cgraph.cc:3370
 #, gcc-internal-format
 msgid ""
 "call stmt hash does not point to first direct edge of speculative call "
 "sequence"
 msgstr ""
 
-#: cgraph.cc:3386
+#: cgraph.cc:3389
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "duplicate reference %s in speculative call sequence with speculative_id %i"
 msgstr ""
 
-#: cgraph.cc:3399
+#: cgraph.cc:3402
 #, gcc-internal-format, gfc-internal-format
 msgid "missing direct call for speculation %i"
 msgstr ""
 
-#: cgraph.cc:3404
+#: cgraph.cc:3407
 #, gcc-internal-format, gfc-internal-format
 msgid "missing ref for speculation %i"
 msgstr ""
 
-#: cgraph.cc:3413
+#: cgraph.cc:3416
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "number of speculative targets %i mismatched with "
 "num_speculative_call_targets %i"
 msgstr ""
 
-#: cgraph.cc:3442
+#: cgraph.cc:3445
 #, gcc-internal-format, gfc-internal-format
 msgid "aux field set for edge %s->%s"
 msgstr ""
 
-#: cgraph.cc:3449
+#: cgraph.cc:3452
 #, gcc-internal-format
 msgid "cgraph count invalid"
 msgstr ""
 
-#: cgraph.cc:3454
+#: cgraph.cc:3457
 #, gcc-internal-format
 msgid "inline clone in same comdat group list"
 msgstr ""
 
-#: cgraph.cc:3459
+#: cgraph.cc:3462
 #, gcc-internal-format
 msgid "inline clone count is not compatible"
 msgstr ""
 
-#: cgraph.cc:3466
+#: cgraph.cc:3469
 #, gcc-internal-format
 msgid "tp_first_run must be non-negative"
 msgstr ""
 
-#: cgraph.cc:3471
+#: cgraph.cc:3474
 #, gcc-internal-format
 msgid "local symbols must be defined"
 msgstr ""
 
-#: cgraph.cc:3476
+#: cgraph.cc:3479
 #, gcc-internal-format
 msgid "externally visible inline clone"
 msgstr ""
 
-#: cgraph.cc:3481
+#: cgraph.cc:3484
 #, gcc-internal-format
 msgid "inline clone with address taken"
 msgstr ""
 
-#: cgraph.cc:3486
+#: cgraph.cc:3489
 #, gcc-internal-format
 msgid "inline clone is forced to output"
 msgstr ""
 
-#: cgraph.cc:3493
+#: cgraph.cc:3496
 #, gcc-internal-format
 msgid "calls_comdat_local is set outside of a comdat group"
 msgstr ""
 
-#: cgraph.cc:3498
+#: cgraph.cc:3501
 #, gcc-internal-format
 msgid "invalid calls_comdat_local flag"
 msgstr ""
 
-#: cgraph.cc:3505
+#: cgraph.cc:3508
 #, gcc-internal-format
 msgid "malloc attribute should be used for a function that returns a pointer"
 msgstr ""
 
-#: cgraph.cc:3517
+#: cgraph.cc:3520
 #, gcc-internal-format
 msgid "semantic interposition mismatch"
 msgstr ""
 
-#: cgraph.cc:3524
+#: cgraph.cc:3527
 #, gcc-internal-format, gfc-internal-format
 msgid "aux field set for indirect edge from %s"
 msgstr ""
 
-#: cgraph.cc:3530 cgraph.cc:3590
+#: cgraph.cc:3533 cgraph.cc:3593
 #, gcc-internal-format
 msgid "edge count is not compatible with function count"
 msgstr ""
 
-#: cgraph.cc:3538
+#: cgraph.cc:3541
 #, 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:3546 cgraph.cc:3617
+#: cgraph.cc:3549 cgraph.cc:3622
 #, gcc-internal-format
 msgid "edge has both call_stmt and lto_stmt_uid set"
 msgstr ""
 
-#: cgraph.cc:3558
+#: cgraph.cc:3561
 #, gcc-internal-format, gfc-internal-format
 msgid "comdat-local function called by %s outside its comdat"
 msgstr ""
 
-#: cgraph.cc:3568
+#: cgraph.cc:3571
 #, gcc-internal-format
 msgid "inlined_to pointer is wrong"
 msgstr ""
 
-#: cgraph.cc:3573
+#: cgraph.cc:3576
 #, gcc-internal-format
 msgid "multiple inline callers"
 msgstr ""
 
-#: cgraph.cc:3580
+#: cgraph.cc:3583
 #, gcc-internal-format
 msgid "inlined_to pointer set for noninline callers"
 msgstr ""
 
-#: cgraph.cc:3607
+#: cgraph.cc:3612
 #, gcc-internal-format
 msgid "caller edge count does not match BB count"
 msgstr ""
 
-#: cgraph.cc:3638
+#: cgraph.cc:3643
 #, gcc-internal-format
 msgid "indirect call count does not match BB count"
 msgstr ""
 
-#: cgraph.cc:3655
+#: cgraph.cc:3660
 #, gcc-internal-format
 msgid "reference has both stmt and lto_stmt_uid set"
 msgstr ""
 
-#: cgraph.cc:3666
+#: cgraph.cc:3671
 #, gcc-internal-format
 msgid "inlined_to pointer is set but no predecessors found"
 msgstr ""
 
-#: cgraph.cc:3671
+#: cgraph.cc:3676
 #, gcc-internal-format
 msgid "inlined_to pointer refers to itself"
 msgstr ""
 
-#: cgraph.cc:3682
+#: cgraph.cc:3687
 #, gcc-internal-format
 msgid "cgraph_node has wrong clone_of"
 msgstr ""
 
-#: cgraph.cc:3695
+#: cgraph.cc:3700
 #, gcc-internal-format
 msgid "cgraph_node has wrong clone list"
 msgstr ""
 
-#: cgraph.cc:3701
+#: cgraph.cc:3706
 #, gcc-internal-format
 msgid "cgraph_node is in clone list but it is not clone"
 msgstr ""
 
-#: cgraph.cc:3706
+#: cgraph.cc:3711
 #, gcc-internal-format
 msgid "cgraph_node has wrong prev_clone pointer"
 msgstr ""
 
-#: cgraph.cc:3711
+#: cgraph.cc:3716
 #, gcc-internal-format
 msgid "double linked list of clones corrupted"
 msgstr ""
 
-#: cgraph.cc:3723
+#: cgraph.cc:3728
 #, gcc-internal-format
 msgid "Alias has call edges"
 msgstr ""
 
-#: cgraph.cc:3729
+#: cgraph.cc:3734
 #, gcc-internal-format
 msgid "Alias has non-alias reference"
 msgstr ""
 
-#: cgraph.cc:3734
+#: cgraph.cc:3739
 #, gcc-internal-format
 msgid "Alias has more than one alias reference"
 msgstr ""
 
-#: cgraph.cc:3741
+#: cgraph.cc:3746
 #, gcc-internal-format
 msgid "Analyzed alias has no reference"
 msgstr ""
 
-#: cgraph.cc:3750
+#: cgraph.cc:3755
 #, gcc-internal-format
 msgid "No edge out of thunk node"
 msgstr ""
 
-#: cgraph.cc:3755
+#: cgraph.cc:3760
 #, gcc-internal-format
 msgid "More than one edge out of thunk node"
 msgstr ""
 
-#: cgraph.cc:3760
+#: cgraph.cc:3765
 #, gcc-internal-format
 msgid "Thunk is not supposed to have body"
 msgstr ""
 
-#: cgraph.cc:3796
+#: cgraph.cc:3801
 #, gcc-internal-format
 msgid "shared call_stmt:"
 msgstr ""
 
-#: cgraph.cc:3804
+#: cgraph.cc:3809
 #, gcc-internal-format
 msgid "edge points to wrong declaration:"
 msgstr ""
 
-#: cgraph.cc:3813
+#: cgraph.cc:3818
 #, gcc-internal-format
 msgid ""
 "an indirect edge with unknown callee corresponding to a call_stmt with a "
 "known declaration:"
 msgstr ""
 
-#: cgraph.cc:3823
+#: cgraph.cc:3828
 #, gcc-internal-format
 msgid "missing callgraph edge for call stmt:"
 msgstr ""
 
-#: cgraph.cc:3833
+#: cgraph.cc:3838
 #, gcc-internal-format
 msgid "reference to dead statement"
 msgstr ""
 
-#: cgraph.cc:3846
+#: cgraph.cc:3851
 #, gcc-internal-format, gfc-internal-format
 msgid "edge %s->%s has no corresponding call_stmt"
 msgstr ""
 
-#: cgraph.cc:3858
+#: cgraph.cc:3863
 #, gcc-internal-format, gfc-internal-format
 msgid "an indirect edge from %s has no corresponding call_stmt"
 msgstr ""
 
-#: cgraph.cc:3877 cgraph.cc:3890
+#: cgraph.cc:3882 cgraph.cc:3895
 #, gcc-internal-format
 msgid "missing origin for a node in a nested list"
 msgstr ""
 
-#: cgraph.cc:3882
+#: cgraph.cc:3887
 #, gcc-internal-format
 msgid "origin points to a different parent"
 msgstr ""
 
-#: cgraph.cc:3898
+#: cgraph.cc:3903
 #, gcc-internal-format
 msgid "verify_cgraph_node failed"
 msgstr ""
 
-#: cgraph.cc:4020 varpool.cc:304
+#: cgraph.cc:4025 varpool.cc:304
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: section %s.%d is missing"
 msgstr ""
 
-#: cgraphunit.cc:744
+#: cgraphunit.cc:752
 #, gcc-internal-format
 msgid "duplicate definition of a symbol version"
 msgstr ""
 
-#: cgraphunit.cc:746
+#: cgraphunit.cc:754
 #, gcc-internal-format
 msgid "same version was previously defined here"
 msgstr ""
 
-#: cgraphunit.cc:752
+#: cgraphunit.cc:760
 #, gcc-internal-format
 msgid "symbol needs to be defined to have a version"
 msgstr ""
 
-#: cgraphunit.cc:758
+#: cgraphunit.cc:766
 #, gcc-internal-format
 msgid "common symbol cannot be versioned"
 msgstr ""
 
-#: cgraphunit.cc:764
+#: cgraphunit.cc:772
 #, gcc-internal-format
 msgid "comdat symbol cannot be versioned"
 msgstr ""
 
-#: cgraphunit.cc:770
+#: cgraphunit.cc:778
 #, gcc-internal-format
 msgid "%<weakref%> cannot be versioned"
 msgstr ""
 
-#: cgraphunit.cc:776
+#: cgraphunit.cc:784
 #, gcc-internal-format
 msgid "versioned symbol must be public"
 msgstr ""
 
-#: cgraphunit.cc:782
+#: cgraphunit.cc:790
 #, gcc-internal-format
 msgid "versioned symbol must have default visibility"
 msgstr ""
 
-#: cgraphunit.cc:815
+#: cgraphunit.cc:823
 #, gcc-internal-format
 msgid "%<weakref%> attribute should be accompanied with an %<alias%> attribute"
 msgstr ""
 
-#: cgraphunit.cc:870
+#: cgraphunit.cc:878
 #, gcc-internal-format
 msgid "%<flatten%> attribute is ignored on aliases"
 msgstr ""
 
-#: cgraphunit.cc:878 cgraphunit.cc:929
+#: cgraphunit.cc:886 cgraphunit.cc:937
 #, gcc-internal-format
 msgid "%<externally_visible%> attribute have effect only on public objects"
 msgstr ""
 
-#: cgraphunit.cc:889
+#: cgraphunit.cc:897
 #, gcc-internal-format
 msgid "%<weakref%> attribute ignored because function is defined"
 msgstr ""
 
-#: cgraphunit.cc:904
+#: cgraphunit.cc:912
 #, gcc-internal-format
 msgid "%<alias%> attribute ignored because function is defined"
 msgstr ""
 
-#: cgraphunit.cc:912
+#: cgraphunit.cc:920
 #, gcc-internal-format
 msgid "%<always_inline%> function might not be inlinable"
 msgstr ""
 
-#: cgraphunit.cc:937
+#: cgraphunit.cc:945
 #, gcc-internal-format
 msgid "%<weakref%> attribute ignored because variable is initialized"
 msgstr ""
 
 #. include_self=
 #. TODO: Add OPT_Wundefined-inline.
-#: cgraphunit.cc:1086 c/c-decl.cc:12855
+#: cgraphunit.cc:1094 c/c-decl.cc:12837
 #, gcc-internal-format
 msgid "%q+F used but never defined"
 msgstr ""
 
-#: cgraphunit.cc:1088 c/c-decl.cc:12865
+#: cgraphunit.cc:1096 c/c-decl.cc:12847
 #, gcc-internal-format
 msgid "%q+F declared %<static%> but never defined"
 msgstr ""
 
-#: cgraphunit.cc:1131
+#: cgraphunit.cc:1140
 #, gcc-internal-format
 msgid "%qD defined but not used"
 msgstr ""
 
-#: cgraphunit.cc:1466
+#: cgraphunit.cc:1475
 #, gcc-internal-format
 msgid "%<ifunc%> resolver for %qD must return %qT"
 msgstr ""
 
-#: cgraphunit.cc:1469 cgraphunit.cc:1492
+#: cgraphunit.cc:1478 cgraphunit.cc:1501
 #, gcc-internal-format
 msgid "resolver indirect function declared here"
 msgstr ""
 
-#: cgraphunit.cc:1489
+#: cgraphunit.cc:1498
 #, gcc-internal-format
 msgid "%<ifunc%> resolver for %qD should return %qT"
 msgstr ""
 
-#: cgraphunit.cc:1499
+#: cgraphunit.cc:1508
 #, gcc-internal-format
 msgid "%qD alias between functions of incompatible types %qT and %qT"
 msgstr ""
 
-#: cgraphunit.cc:1502 cgraphunit.cc:1584
+#: cgraphunit.cc:1511 cgraphunit.cc:1593
 #, gcc-internal-format
 msgid "aliased declaration here"
 msgstr ""
 
-#: cgraphunit.cc:1540 c-family/c-pragma.cc:347
+#: cgraphunit.cc:1549 c-family/c-pragma.cc:347
 #, gcc-internal-format
 msgid "%q+D aliased to undefined symbol %qE"
 msgstr ""
 
-#: cgraphunit.cc:1556
+#: cgraphunit.cc:1565
 #, gcc-internal-format
 msgid "%q+D aliased to external symbol %qE"
 msgstr ""
 
-#: cgraphunit.cc:1581
+#: cgraphunit.cc:1590
 #, gcc-internal-format
 msgid "%q+D alias between function and variable is not supported"
 msgstr ""
 
-#: cgraphunit.cc:1655
+#: cgraphunit.cc:1664
 #, gcc-internal-format
 msgid "failed to reclaim unneeded function"
 msgstr ""
 
-#: cgraphunit.cc:1683
+#: cgraphunit.cc:1692
 #, gcc-internal-format
 msgid "failed to reclaim unneeded function in same comdat group"
 msgstr ""
 
-#: cgraphunit.cc:1859
+#: cgraphunit.cc:1868
 #, gcc-internal-format
 msgid "size of return value of %q+D is %u bytes"
 msgstr ""
 
-#: cgraphunit.cc:1863
+#: cgraphunit.cc:1872
 #, gcc-internal-format
 msgid "size of return value of %q+D is larger than %wu bytes"
 msgstr ""
 
-#: cgraphunit.cc:2425
+#: cgraphunit.cc:2434
 #, gcc-internal-format
 msgid "nodes with unreleased memory found"
 msgstr ""
@@ -25615,7 +25651,7 @@ msgid "cannot find %qs"
 msgstr ""
 
 #: collect-utils.cc:225 collect2.cc:2385 collect2.cc:2555 gcc.cc:3405
-#: gcc.cc:7677
+#: gcc.cc:7681
 #, gcc-internal-format
 msgid "%<pex_init%> failed: %m"
 msgstr ""
@@ -25635,7 +25671,7 @@ msgstr ""
 msgid "ld returned %d exit status"
 msgstr ""
 
-#: collect2.cc:913 gcc.cc:8196 config/gcn/mkoffload.cc:827
+#: collect2.cc:913 gcc.cc:8200 config/gcn/mkoffload.cc:827
 #: config/nvptx/mkoffload.cc:545
 #, gcc-internal-format
 msgid "atexit failed"
@@ -25646,13 +25682,13 @@ msgstr ""
 msgid "no arguments"
 msgstr ""
 
-#: collect2.cc:1283 opts.cc:1152
+#: collect2.cc:1283 opts.cc:1156
 #, gcc-internal-format
 msgid "LTO support has not been enabled in this configuration"
 msgstr ""
 
-#: collect2.cc:1324 graph.cc:55 lto-wrapper.cc:1710 lto-wrapper.cc:1766
-#: toplev.cc:1513 objc/objc-act.cc:461
+#: collect2.cc:1324 graph.cc:55 lto-wrapper.cc:1720 lto-wrapper.cc:1776
+#: toplev.cc:1513 objc/objc-act.cc:459
 #, gcc-internal-format
 msgid "cannot open %s: %m"
 msgstr ""
@@ -25923,7 +25959,7 @@ msgstr ""
 msgid "closed intervals"
 msgstr ""
 
-#: diagnostic.cc:2392
+#: diagnostic.cc:2405
 #, gcc-internal-format
 msgid "debug path"
 msgstr ""
@@ -25976,12 +26012,12 @@ msgid ""
 "cfi_personality%> directive"
 msgstr ""
 
-#: dwarf2out.cc:11164
+#: dwarf2out.cc:11165
 #, gcc-internal-format
 msgid "%<-gdwarf-6%> is output as version 5 with incompatibilities"
 msgstr ""
 
-#: dwarf2out.cc:15007
+#: dwarf2out.cc:15008
 #, gcc-internal-format, gfc-internal-format
 msgid "non-delegitimized UNSPEC %s (%d) found in variable location"
 msgstr ""
@@ -26061,12 +26097,12 @@ msgstr ""
 msgid "%<lp_array%> does not match %<region_tree%>"
 msgstr ""
 
-#: except.cc:3518 tree.cc:14301 value-prof.cc:529
+#: except.cc:3518 tree.cc:14286 value-prof.cc:529
 #, gcc-internal-format
 msgid "%qs failed"
 msgstr ""
 
-#: explow.cc:1551
+#: explow.cc:1556
 #, gcc-internal-format
 msgid "stack limits not supported on this target"
 msgstr ""
@@ -26093,24 +26129,24 @@ msgid ""
 "truncated into %wu-bit"
 msgstr ""
 
-#: expr.cc:11849
+#: expr.cc:11842
 #, gcc-internal-format
 msgid "call to %qs declared with attribute error: %s"
 msgstr ""
 
-#: expr.cc:11863
+#: expr.cc:11856
 #, gcc-internal-format
 msgid "call to %qs declared with attribute warning: %s"
 msgstr ""
 
-#: expr.cc:12901
+#: expr.cc:12894
 #, gcc-internal-format
 msgid ""
 "assuming signed overflow does not occur when simplifying %<X - Y %s 0%> to "
 "%<X %s Y%>"
 msgstr ""
 
-#: file-prefix-map.cc:50
+#: file-prefix-map.cc:51
 #, gcc-internal-format
 msgid "invalid argument %qs to %qs"
 msgstr ""
@@ -26135,45 +26171,45 @@ msgstr ""
 msgid "large fixed-point constant implicitly truncated to fixed-point type"
 msgstr ""
 
-#: fold-const.cc:4691 fold-const.cc:4701
+#: fold-const.cc:4692 fold-const.cc:4702
 #, gcc-internal-format, gfc-internal-format
 msgid "comparison is always %d due to width of bit-field"
 msgstr ""
 
-#: fold-const.cc:6079 tree-ssa-reassoc.cc:2859 tree-ssa-reassoc.cc:3941
+#: fold-const.cc:6080 tree-ssa-reassoc.cc:2868 tree-ssa-reassoc.cc:3950
 #, gcc-internal-format
 msgid "assuming signed overflow does not occur when simplifying range test"
 msgstr ""
 
-#: fold-const.cc:6543 fold-const.cc:6559
+#: fold-const.cc:6544 fold-const.cc:6560
 #, gcc-internal-format, gfc-internal-format
 msgid "comparison is always %d"
 msgstr ""
 
-#: fold-const.cc:6707
+#: fold-const.cc:6708
 #, gcc-internal-format
 msgid "%<or%> of unmatched not-equal tests is always 1"
 msgstr ""
 
-#: fold-const.cc:6712
+#: fold-const.cc:6713
 #, gcc-internal-format
 msgid "%<and%> of mutually exclusive equal-tests is always 0"
 msgstr ""
 
-#: fold-const.cc:9941
+#: fold-const.cc:9943
 #, gcc-internal-format
 msgid ""
 "assuming signed overflow does not occur when reducing constant in comparison"
 msgstr ""
 
-#: fold-const.cc:10348
+#: fold-const.cc:10350
 #, gcc-internal-format
 msgid ""
 "assuming signed overflow does not occur when combining constants around a "
 "comparison"
 msgstr ""
 
-#: fold-const.cc:13558
+#: fold-const.cc:13561
 #, gcc-internal-format
 msgid "fold check: original tree changed by fold"
 msgstr ""
@@ -26284,12 +26320,12 @@ msgstr ""
 msgid "%<-pipe%> not supported"
 msgstr ""
 
-#: gcc.cc:3422 gcc.cc:7686
+#: gcc.cc:3422 gcc.cc:7690
 #, gcc-internal-format
 msgid "cannot execute %qs: %s: %m"
 msgstr ""
 
-#: gcc.cc:3423 gcc.cc:7687
+#: gcc.cc:3423 gcc.cc:7691
 #, gcc-internal-format
 msgid "cannot execute %qs: %s"
 msgstr ""
@@ -26310,7 +26346,7 @@ msgstr ""
 msgid "%s signal terminated program %s"
 msgstr ""
 
-#: gcc.cc:3942 opts-common.cc:1548 opts-common.cc:1580
+#: gcc.cc:3942 opts-common.cc:1574 opts-common.cc:1606
 #, gcc-internal-format
 msgid "unrecognized command-line option %qs"
 msgstr ""
@@ -26335,67 +26371,67 @@ msgstr ""
 msgid "%<=%>options missing after %<-foffload-options=%>target"
 msgstr ""
 
-#: gcc.cc:4401
+#: gcc.cc:4405
 #, gcc-internal-format
 msgid "%qs is an unknown %<-save-temps%> option"
 msgstr ""
 
-#: gcc.cc:4928 toplev.cc:709
+#: gcc.cc:4932 toplev.cc:709
 #, gcc-internal-format
 msgid "input file %qs is the same as output file"
 msgstr ""
 
-#: gcc.cc:4933
+#: gcc.cc:4937
 #, gcc-internal-format
 msgid "output filename may not be empty"
 msgstr ""
 
-#: gcc.cc:5318
+#: gcc.cc:5322
 #, gcc-internal-format
 msgid "%<-pipe%> ignored because %<-save-temps%> specified"
 msgstr ""
 
-#: gcc.cc:5406
+#: gcc.cc:5410
 #, gcc-internal-format
 msgid "%<-x %s%> after last input file has no effect"
 msgstr ""
 
-#: gcc.cc:5609
+#: gcc.cc:5613
 #, gcc-internal-format
 msgid "unable to locate default linker script %qs in the library search paths"
 msgstr ""
 
-#: gcc.cc:5816
+#: gcc.cc:5820
 #, gcc-internal-format
 msgid "switch %qs does not start with %<-%>"
 msgstr ""
 
-#: gcc.cc:5820
+#: gcc.cc:5824
 #, gcc-internal-format
 msgid "spec-generated switch is just %<-%>"
 msgstr ""
 
-#: gcc.cc:6041
+#: gcc.cc:6045
 #, gcc-internal-format
 msgid "spec %qs invalid"
 msgstr ""
 
-#: gcc.cc:6202
+#: gcc.cc:6206
 #, gcc-internal-format
 msgid "spec %qs has invalid %<%%0%c%>"
 msgstr ""
 
-#: gcc.cc:6493
+#: gcc.cc:6497
 #, gcc-internal-format
 msgid "spec %qs has invalid %<%%W%c%>"
 msgstr ""
 
-#: gcc.cc:6509
+#: gcc.cc:6513
 #, gcc-internal-format
 msgid "spec %qs has invalid %<%%@%c%>"
 msgstr ""
 
-#: gcc.cc:6528
+#: gcc.cc:6532
 #, gcc-internal-format
 msgid "spec %qs has invalid %<%%x%c%>"
 msgstr ""
@@ -26403,138 +26439,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:6739
+#: gcc.cc:6743
 #, gcc-internal-format
 msgid "spec failure: %<%%*%> has not been initialized by pattern match"
 msgstr ""
 
-#: gcc.cc:6790
+#: gcc.cc:6794
 #, gcc-internal-format
 msgid "spec failure: unrecognized spec option %qc"
 msgstr ""
 
-#: gcc.cc:6856
+#: gcc.cc:6860
 #, gcc-internal-format
 msgid "unknown spec function %qs"
 msgstr ""
 
-#: gcc.cc:6886
+#: gcc.cc:6890
 #, gcc-internal-format
 msgid "error in arguments to spec function %qs"
 msgstr ""
 
-#: gcc.cc:6945
+#: gcc.cc:6949
 #, gcc-internal-format
 msgid "malformed spec function name"
 msgstr ""
 
 #. )
-#: gcc.cc:6948
+#: gcc.cc:6952
 #, gcc-internal-format
 msgid "no arguments for spec function"
 msgstr ""
 
-#: gcc.cc:6967
+#: gcc.cc:6971
 #, gcc-internal-format
 msgid "malformed spec function arguments"
 msgstr ""
 
-#: gcc.cc:7146
+#: gcc.cc:7150
 #, gcc-internal-format
 msgid "braced spec %qs ends in escape"
 msgstr ""
 
-#: gcc.cc:7281
+#: gcc.cc:7285
 #, gcc-internal-format
 msgid "braced spec %qs is invalid at %qc"
 msgstr ""
 
-#: gcc.cc:7376
+#: gcc.cc:7380
 #, gcc-internal-format
 msgid "braced spec body %qs is invalid"
 msgstr ""
 
-#: gcc.cc:7985
+#: gcc.cc:7989
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: could not determine length of compare-debug file %s"
 msgstr ""
 
-#: gcc.cc:7996
+#: gcc.cc:8000
 #, gcc-internal-format
 msgid "%s: %<-fcompare-debug%> failure (length)"
 msgstr ""
 
-#: gcc.cc:8006 gcc.cc:8047
+#: gcc.cc:8010 gcc.cc:8051
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: could not open compare-debug file %s"
 msgstr ""
 
-#: gcc.cc:8026 gcc.cc:8063
+#: gcc.cc:8030 gcc.cc:8067
 #, gcc-internal-format
 msgid "%s: %<-fcompare-debug%> failure"
 msgstr ""
 
-#: gcc.cc:8366
+#: gcc.cc:8370
 #, gcc-internal-format
 msgid "spec failure: more than one argument to %<SYSROOT_SUFFIX_SPEC%>"
 msgstr ""
 
-#: gcc.cc:8391
+#: gcc.cc:8395
 #, gcc-internal-format
 msgid "spec failure: more than one argument to %<SYSROOT_HEADERS_SUFFIX_SPEC%>"
 msgstr ""
 
-#: gcc.cc:8598
+#: gcc.cc:8602
 #, gcc-internal-format
 msgid "unrecognized command-line option %<-%s%>; did you mean %<-%s%>?"
 msgstr ""
 
-#: gcc.cc:8602
+#: gcc.cc:8606
 #, gcc-internal-format
 msgid "unrecognized command-line option %<-%s%>"
 msgstr ""
 
-#: gcc.cc:8728
+#: gcc.cc:8732
 #, gcc-internal-format
 msgid "not configured with sysroot headers suffix"
 msgstr ""
 
-#: gcc.cc:8789
+#: gcc.cc:8793
 #, gcc-internal-format
 msgid "no input files"
 msgstr ""
 
-#: gcc.cc:8840
+#: gcc.cc:8844
 #, gcc-internal-format
 msgid "cannot specify %<-o%> with %<-c%>, %<-S%> or %<-E%> with multiple files"
 msgstr ""
 
-#: gcc.cc:8882
+#: gcc.cc:8886
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: %s compiler not installed on this system"
 msgstr ""
 
-#: gcc.cc:8907
+#: gcc.cc:8911
 #, gcc-internal-format
 msgid "recompiling with %<-fcompare-debug%>"
 msgstr ""
 
-#: gcc.cc:8923
+#: gcc.cc:8927
 #, gcc-internal-format
 msgid "during %<-fcompare-debug%> recompilation"
 msgstr ""
 
-#: gcc.cc:8932
+#: gcc.cc:8936
 #, gcc-internal-format
 msgid "comparing final insns dumps"
 msgstr ""
 
-#: gcc.cc:9085
+#: gcc.cc:9089
 #, gcc-internal-format
 msgid "%<-fuse-linker-plugin%>, but %s not found"
 msgstr ""
 
-#: gcc.cc:9119
+#: gcc.cc:9123
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: linker input file unused because linking not done"
 msgstr ""
@@ -26542,92 +26578,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:9125
+#: gcc.cc:9129
 #, gcc-internal-format
 msgid "%s: linker input file not found: %m"
 msgstr ""
 
-#: gcc.cc:9192 c-family/c-opts.cc:791
+#: gcc.cc:9196 c-family/c-opts.cc:791
 #, gcc-internal-format
 msgid "cannot use %<-%> as input filename for a precompiled header"
 msgstr ""
 
-#: gcc.cc:9198
+#: gcc.cc:9202
 #, gcc-internal-format, gfc-internal-format
 msgid "language %s not recognized"
 msgstr ""
 
-#: gcc.cc:9441
+#: gcc.cc:9445
 #, gcc-internal-format
 msgid "multilib spec %qs is invalid"
 msgstr ""
 
-#: gcc.cc:9643
+#: gcc.cc:9647
 #, gcc-internal-format
 msgid "multilib exclusions %qs is invalid"
 msgstr ""
 
-#: gcc.cc:9707 common/config/riscv/riscv-common.cc:1637
+#: gcc.cc:9711 common/config/riscv/riscv-common.cc:1668
 #, gcc-internal-format
 msgid "multilib select %qs %qs is invalid"
 msgstr ""
 
-#: gcc.cc:9881
+#: gcc.cc:9885
 #, gcc-internal-format
 msgid "multilib select %qs is invalid"
 msgstr ""
 
-#: gcc.cc:9921
+#: gcc.cc:9925
 #, gcc-internal-format
 msgid "multilib exclusion %qs is invalid"
 msgstr ""
 
-#: gcc.cc:10172
+#: gcc.cc:10176
 #, gcc-internal-format
 msgid "environment variable %qs not defined"
 msgstr ""
 
-#: gcc.cc:10340 gcc.cc:10345
+#: gcc.cc:10344 gcc.cc:10349
 #, gcc-internal-format
 msgid "invalid version number %qs"
 msgstr ""
 
-#: gcc.cc:10388
+#: gcc.cc:10392
 #, gcc-internal-format, gfc-internal-format
 msgid "too few arguments to %%:version-compare"
 msgstr ""
 
-#: gcc.cc:10394
+#: gcc.cc:10398
 #, gcc-internal-format, gfc-internal-format
 msgid "too many arguments to %%:version-compare"
 msgstr ""
 
-#: gcc.cc:10436
+#: gcc.cc:10440
 #, gcc-internal-format
 msgid "unknown operator %qs in %%:version-compare"
 msgstr ""
 
-#: gcc.cc:10560
+#: gcc.cc:10564
 #, gcc-internal-format, gfc-internal-format
 msgid "too many arguments to %%:compare-debug-dump-opt"
 msgstr ""
 
-#: gcc.cc:10628
+#: gcc.cc:10632
 #, gcc-internal-format, gfc-internal-format
 msgid "too many arguments to %%:compare-debug-self-opt"
 msgstr ""
 
-#: gcc.cc:10715
+#: gcc.cc:10719
 #, gcc-internal-format, gfc-internal-format
 msgid "too many arguments for %%:dumps"
 msgstr ""
 
-#: gcc.cc:10819
+#: gcc.cc:10823
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong number of arguments to %%:debug-level-gt"
 msgstr ""
 
-#: gcc.cc:10840
+#: gcc.cc:10844
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong number of arguments to %%:dwarf-version-gt"
 msgstr ""
@@ -26806,47 +26842,47 @@ msgstr ""
 msgid "trailing array %qT should not be used as a flexible array member"
 msgstr ""
 
-#: gimple-array-bounds.cc:443 gimple-array-bounds.cc:710
+#: gimple-array-bounds.cc:454 gimple-array-bounds.cc:721
 #, gcc-internal-format
 msgid "while referencing %qD"
 msgstr ""
 
-#: gimple-array-bounds.cc:445
+#: gimple-array-bounds.cc:456
 #, gcc-internal-format
 msgid "defined here %qD"
 msgstr ""
 
-#: gimple-array-bounds.cc:566
+#: gimple-array-bounds.cc:577
 #, gcc-internal-format
 msgid "array subscript %wi is outside array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:571
+#: gimple-array-bounds.cc:582
 #, gcc-internal-format
 msgid "array subscript [%wi, %wi] is outside array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:586
+#: gimple-array-bounds.cc:597
 #, gcc-internal-format
 msgid "array subscript %<%T[%wi]%> is partly outside array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:609
+#: gimple-array-bounds.cc:620
 #, gcc-internal-format
 msgid "intermediate array offset %wi is outside array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:688
+#: gimple-array-bounds.cc:699
 #, gcc-internal-format
 msgid "array subscript %wi is below array bounds of %qT"
 msgstr ""
 
-#: gimple-array-bounds.cc:702
+#: gimple-array-bounds.cc:713
 #, gcc-internal-format
 msgid "array subscript %wu is above array bounds of %qT"
 msgstr ""
 
-#: gimple-fold.cc:2079 gimple-fold.cc:3130 gimple-ssa-warn-restrict.cc:2078
+#: gimple-fold.cc:2079 gimple-fold.cc:3131 gimple-ssa-warn-restrict.cc:2078
 #, gcc-internal-format
 msgid "%qD source argument is the same as destination"
 msgstr ""
@@ -26872,23 +26908,23 @@ msgstr ""
 msgid "%qD specified bound %E equals source length"
 msgstr ""
 
-#: gimple-fold.cc:4542 gimple-fold.cc:4746
+#: gimple-fold.cc:4543 gimple-fold.cc:4747
 #, gcc-internal-format
 msgid ""
 "flexible array member %qD does not have well defined padding bits for %qs"
 msgstr ""
 
-#: gimple-fold.cc:4695 cp/constexpr.cc:4643
+#: gimple-fold.cc:4696 cp/constexpr.cc:4630
 #, gcc-internal-format
 msgid "PDP11 bit-field handling unsupported in %qs"
 msgstr ""
 
-#: gimple-fold.cc:4923
+#: gimple-fold.cc:4924
 #, gcc-internal-format, gfc-internal-format
 msgid "%s not supported for variable length aggregates"
 msgstr ""
 
-#: gimple-fold.cc:4929
+#: gimple-fold.cc:4930
 #, gcc-internal-format, gfc-internal-format
 msgid "%s not supported on this target"
 msgstr ""
@@ -26908,23 +26944,23 @@ msgstr ""
 msgid "function may return address of local variable"
 msgstr ""
 
-#: gimple-ssa-isolate-paths.cc:414 c/c-typeck.cc:11407
+#: gimple-ssa-isolate-paths.cc:414 c/c-typeck.cc:11397
 #, gcc-internal-format
 msgid "function returns address of local variable"
 msgstr ""
 
-#: gimple-ssa-isolate-paths.cc:417 gimple-ssa-warn-access.cc:2034
-#: gimple-ssa-warn-access.cc:3702 tree.cc:12382 tree.cc:12419 tree.cc:12460
-#: tree.cc:12493 c/c-typeck.cc:3102 c/c-typeck.cc:3197 c/c-typeck.cc:5779
-#: c/c-typeck.cc:11313 c/c-typeck.cc:11330 c/gimple-parser.cc:2484
-#: c/gimple-parser.cc:2492 cp/call.cc:8061 cp/call.cc:10206 cp/class.cc:9066
-#: cp/constexpr.cc:893 cp/constexpr.cc:4090 cp/cvt.cc:1079 cp/cvt.cc:1117
-#: cp/decl.cc:8847 cp/decl.cc:16122 cp/decl.cc:16489 cp/decl2.cc:5680
-#: cp/decl2.cc:5735 cp/parser.cc:21891 cp/pt.cc:9005 cp/semantics.cc:2192
-#: cp/semantics.cc:3543 cp/semantics.cc:4628 cp/typeck.cc:2143
-#: cp/typeck.cc:2363 cp/typeck.cc:4494 cp/typeck.cc:10576
-#: rust/backend/rust-constexpr.cc:4415 rust/backend/rust-tree.cc:622
-#: rust/backend/rust-tree.cc:3780
+#: gimple-ssa-isolate-paths.cc:417 gimple-ssa-warn-access.cc:2041
+#: gimple-ssa-warn-access.cc:3713 tree.cc:12354 tree.cc:12391 tree.cc:12432
+#: tree.cc:12465 c/c-typeck.cc:3092 c/c-typeck.cc:3187 c/c-typeck.cc:5769
+#: c/c-typeck.cc:11303 c/c-typeck.cc:11320 c/gimple-parser.cc:2484
+#: c/gimple-parser.cc:2492 cp/call.cc:8064 cp/call.cc:10213 cp/class.cc:9076
+#: cp/constexpr.cc:894 cp/constexpr.cc:4077 cp/cvt.cc:1079 cp/cvt.cc:1117
+#: cp/decl.cc:8876 cp/decl.cc:16157 cp/decl.cc:16524 cp/decl2.cc:5715
+#: cp/decl2.cc:5770 cp/parser.cc:21904 cp/pt.cc:9026 cp/semantics.cc:2192
+#: cp/semantics.cc:3549 cp/semantics.cc:4636 cp/typeck.cc:2143
+#: cp/typeck.cc:2363 cp/typeck.cc:4494 cp/typeck.cc:10582
+#: rust/backend/rust-constexpr.cc:4403 rust/backend/rust-tree.cc:623
+#: rust/backend/rust-tree.cc:3765
 #, gcc-internal-format
 msgid "declared here"
 msgstr ""
@@ -27745,7 +27781,7 @@ msgstr ""
 msgid "%qD may write %E or more bytes into a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1031 gimple-ssa-warn-access.cc:1403
+#: gimple-ssa-warn-access.cc:1031 gimple-ssa-warn-access.cc:1408
 #, gcc-internal-format
 msgid ""
 "%qD writing %E or more bytes into a region of size %E overflows the "
@@ -27757,7 +27793,7 @@ msgstr ""
 msgid "may write %E or more bytes into a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:1039 gimple-ssa-warn-access.cc:1408
+#: gimple-ssa-warn-access.cc:1039 gimple-ssa-warn-access.cc:1413
 #, gcc-internal-format
 msgid ""
 "writing %E or more bytes into a region of size %E overflows the destination"
@@ -27901,293 +27937,293 @@ msgstr ""
 msgid "expecting between %E and %E bytes in a region of size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2029
+#: gimple-ssa-warn-access.cc:2036
 #, gcc-internal-format
 msgid "%qD called on pointer %qE with nonzero offset%s"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2044 gimple-ssa-warn-access.cc:3779
+#: gimple-ssa-warn-access.cc:2051 gimple-ssa-warn-access.cc:3790
 #, gcc-internal-format
 msgid "returned from %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2047
+#: gimple-ssa-warn-access.cc:2054
 #, gcc-internal-format
 msgid "returned from %qT"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2049
+#: gimple-ssa-warn-access.cc:2056
 #, gcc-internal-format
 msgid "obtained here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2256
+#: gimple-ssa-warn-access.cc:2263
 #, gcc-internal-format
 msgid "argument %i value %qE is negative"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2273
+#: gimple-ssa-warn-access.cc:2280
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %i value is zero"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2291
+#: gimple-ssa-warn-access.cc:2298
 #, gcc-internal-format
 msgid "argument %i value %qE exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2305
+#: gimple-ssa-warn-access.cc:2312
 #, gcc-internal-format
 msgid "argument %i range [%E, %E] is negative"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2312
+#: gimple-ssa-warn-access.cc:2319
 #, gcc-internal-format
 msgid "argument %i range [%E, %E] exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2342
+#: gimple-ssa-warn-access.cc:2349
 #, gcc-internal-format
 msgid "product %<%E * %E%> of arguments %i and %i exceeds %<SIZE_MAX%>"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2348
+#: gimple-ssa-warn-access.cc:2355
 #, gcc-internal-format
 msgid ""
 "product %<%E * %E%> of arguments %i and %i exceeds maximum object size %E"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2359 gimple-ssa-warn-access.cc:2362
+#: gimple-ssa-warn-access.cc:2366 gimple-ssa-warn-access.cc:2369
 #, gcc-internal-format
 msgid "argument %i in the range [%E, %E]"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2373
+#: gimple-ssa-warn-access.cc:2380
 #, gcc-internal-format
 msgid "in a call to built-in allocation function %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2376
+#: gimple-ssa-warn-access.cc:2383
 #, gcc-internal-format
 msgid "in a call to allocation function %qD declared here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2821
+#: gimple-ssa-warn-access.cc:2828
 #, gcc-internal-format
 msgid "unknown architecture specifier in memory model %wi for %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2913
+#: gimple-ssa-warn-access.cc:2920
 #, gcc-internal-format
 msgid "invalid memory model %qs for %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2917
+#: gimple-ssa-warn-access.cc:2924
 #, gcc-internal-format
 msgid "invalid memory model %wi for %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2932 gimple-ssa-warn-access.cc:2986
+#: gimple-ssa-warn-access.cc:2939 gimple-ssa-warn-access.cc:2993
 #, gcc-internal-format, gfc-internal-format
 msgid "valid models are %s"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2946
+#: gimple-ssa-warn-access.cc:2953
 #, gcc-internal-format
 msgid "invalid failure memory model %qs for %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2951
+#: gimple-ssa-warn-access.cc:2958
 #, gcc-internal-format
 msgid "valid failure models are %qs, %qs, %qs, %qs"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2967
+#: gimple-ssa-warn-access.cc:2974
 #, gcc-internal-format
 msgid ""
 "failure memory model %qs cannot be stronger than success memory model %qs "
 "for %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:2993
+#: gimple-ssa-warn-access.cc:3000
 #, gcc-internal-format
 msgid ""
 "failure memory model %wi cannot be stronger than success memory model %wi "
 "for %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3424
+#: gimple-ssa-warn-access.cc:3435
 #, 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:3432
+#: gimple-ssa-warn-access.cc:3443
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %i value %s is negative"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3482
+#: gimple-ssa-warn-access.cc:3493
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "argument %i of variable length array %s is null but the corresponding bound "
 "argument %i value is %s"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3491
+#: gimple-ssa-warn-access.cc:3502
 #, 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:3502
+#: gimple-ssa-warn-access.cc:3513
 #, gcc-internal-format
 msgid "argument %i to %<%T[static %E]%> is null where non-null expected"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3565
+#: gimple-ssa-warn-access.cc:3576
 #, gcc-internal-format
 msgid "referencing argument %u of type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3579
+#: gimple-ssa-warn-access.cc:3590
 #, gcc-internal-format
 msgid "in a call to function %qD declared with attribute %qs"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3583
+#: gimple-ssa-warn-access.cc:3594
 #, gcc-internal-format
 msgid "in a call with type %qT and attribute %qs"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3590
+#: gimple-ssa-warn-access.cc:3601
 #, gcc-internal-format
 msgid "in a call to function %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3593
+#: gimple-ssa-warn-access.cc:3604
 #, gcc-internal-format
 msgid "in a call with type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3699
+#: gimple-ssa-warn-access.cc:3710
 #, gcc-internal-format
 msgid "%qD called on unallocated object %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3718
+#: gimple-ssa-warn-access.cc:3729
 #, gcc-internal-format
 msgid "%qD called on a pointer to an unallocated object %qE"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3727
+#: gimple-ssa-warn-access.cc:3738
 #, gcc-internal-format
 msgid "assigned here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3760
+#: gimple-ssa-warn-access.cc:3771
 #, gcc-internal-format
 msgid "%qD called on pointer returned from a mismatched allocation function"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3769
+#: gimple-ssa-warn-access.cc:3780
 #, gcc-internal-format
 msgid "%qD called on pointer to an unallocated object"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3922
+#: gimple-ssa-warn-access.cc:3928
 #, gcc-internal-format
 msgid "pointer %qE may be used after %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3923
+#: gimple-ssa-warn-access.cc:3929
 #, gcc-internal-format
 msgid "pointer %qE used after %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3927
+#: gimple-ssa-warn-access.cc:3933
 #, gcc-internal-format
 msgid "pointer may be used after %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3928
+#: gimple-ssa-warn-access.cc:3934
 #, gcc-internal-format
 msgid "pointer used after %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3932
+#: gimple-ssa-warn-access.cc:3938
 #, gcc-internal-format
 msgid "call to %qD here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3949
+#: gimple-ssa-warn-access.cc:3955
 #, gcc-internal-format
 msgid "dangling pointer %qE to %qD may be used"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3950
+#: gimple-ssa-warn-access.cc:3956
 #, gcc-internal-format
 msgid "using dangling pointer %qE to %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3955
+#: gimple-ssa-warn-access.cc:3961
 #, gcc-internal-format
 msgid "dangling pointer to %qD may be used"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3956
+#: gimple-ssa-warn-access.cc:3962
 #, gcc-internal-format
 msgid "using a dangling pointer to %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3959 gimple-ssa-warn-access.cc:4588
-#: gimple-ssa-warn-restrict.cc:1828 tree-ssa-uninit.cc:897
-#: tree-ssa-uninit.cc:1096 c/c-decl.cc:3986 c/c-decl.cc:4267 c/c-typeck.cc:9365
-#: c/c-typeck.cc:12115 cp/class.cc:1492 cp/class.cc:3291 cp/constexpr.cc:1066
-#: cp/decl.cc:4438 cp/decl.cc:12565 cp/decl.cc:13065 cp/decl.cc:13074
-#: cp/decl.cc:14035 cp/friend.cc:406 cp/friend.cc:416 cp/init.cc:2895
+#: gimple-ssa-warn-access.cc:3965 gimple-ssa-warn-access.cc:4588
+#: gimple-ssa-warn-restrict.cc:1828 tree-ssa-uninit.cc:906
+#: tree-ssa-uninit.cc:1105 c/c-decl.cc:3989 c/c-decl.cc:4270 c/c-typeck.cc:9355
+#: c/c-typeck.cc:12105 cp/class.cc:1492 cp/class.cc:3291 cp/constexpr.cc:1067
+#: cp/decl.cc:4440 cp/decl.cc:12599 cp/decl.cc:13099 cp/decl.cc:13108
+#: cp/decl.cc:14069 cp/friend.cc:406 cp/friend.cc:416 cp/init.cc:2918
 #: cp/parser.cc:3566 cp/parser.cc:3712 cp/parser.cc:3763 cp/parser.cc:7005
-#: cp/parser.cc:24443 cp/typeck.cc:4944
+#: cp/parser.cc:24456 cp/typeck.cc:4944
 #, gcc-internal-format
 msgid "%qD declared here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3967
+#: gimple-ssa-warn-access.cc:3973
 #, gcc-internal-format
 msgid "dangling pointer %qE to an unnamed temporary may be used"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3969
+#: gimple-ssa-warn-access.cc:3975
 #, gcc-internal-format
 msgid "using dangling pointer %qE to an unnamed temporary"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3975
+#: gimple-ssa-warn-access.cc:3981
 #, gcc-internal-format
 msgid "dangling pointer to an unnamed temporary may be used"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3977
+#: gimple-ssa-warn-access.cc:3983
 #, gcc-internal-format
 msgid "using a dangling pointer to an unnamed temporary"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3981
+#: gimple-ssa-warn-access.cc:3987
 #, gcc-internal-format
 msgid "unnamed temporary defined here"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:4071
+#: gimple-ssa-warn-access.cc:4077
 #, gcc-internal-format
 msgid "%qD called on pointer %qE passed to mismatched allocation function %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:4076
+#: gimple-ssa-warn-access.cc:4082
 #, gcc-internal-format
 msgid "%qD called on a pointer passed to mismatched reallocation function %qD"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:4082
+#: gimple-ssa-warn-access.cc:4088
 #, gcc-internal-format
 msgid "call to %qD"
 msgstr ""
@@ -28435,7 +28471,7 @@ msgid ""
 "type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.cc:1783 c-family/c-warn.cc:3767
+#: gimple-ssa-warn-restrict.cc:1783 c-family/c-warn.cc:3801
 #, gcc-internal-format
 msgid "array %qD declared here"
 msgstr ""
@@ -28647,7 +28683,7 @@ msgstr ""
 msgid "enclosing %<target%>"
 msgstr ""
 
-#: gimplify.cc:7932 gimplify.cc:11175
+#: gimplify.cc:7932 gimplify.cc:11190
 #, gcc-internal-format
 msgid "variable %qE declared in enclosing %<host_data%> region"
 msgstr ""
@@ -28682,274 +28718,274 @@ msgstr ""
 msgid "iteration variable %qE should not be linear"
 msgstr ""
 
-#: gimplify.cc:9093 gimplify.cc:9104 gimplify.cc:9116 gimplify.cc:9131
-#: gimplify.cc:9327 gimplify.cc:9330 gimplify.cc:9340 gimplify.cc:9358
+#: gimplify.cc:9109 gimplify.cc:9120 gimplify.cc:9132 gimplify.cc:9147
+#: gimplify.cc:9343 gimplify.cc:9346 gimplify.cc:9356 gimplify.cc:9374
 #, gcc-internal-format
 msgid "unexpected mapping node"
 msgstr ""
 
-#: gimplify.cc:9392
+#: gimplify.cc:9408
 #, gcc-internal-format
 msgid "unexpected pointer mapping node"
 msgstr ""
 
-#: gimplify.cc:9603
+#: gimplify.cc:9618
 #, gcc-internal-format
 msgid "base pointer cycle detected"
 msgstr ""
 
-#: gimplify.cc:9975
+#: gimplify.cc:9990
 #, gcc-internal-format
 msgid ""
 "data movement for component %qE is not compatible with movement for struct "
 "%qE"
 msgstr ""
 
-#: gimplify.cc:10020
+#: gimplify.cc:10035
 #, gcc-internal-format
 msgid "%qE appears more than once in map clauses"
 msgstr ""
 
-#: gimplify.cc:10626
+#: gimplify.cc:10641
 #, gcc-internal-format
 msgid "mapping field %qE of variable length structure"
 msgstr ""
 
-#: gimplify.cc:10836 gimplify.cc:10842
+#: gimplify.cc:10851 gimplify.cc:10857
 #, gcc-internal-format
 msgid "conditional %<lastprivate%> clause on %qs construct"
 msgstr ""
 
-#: gimplify.cc:10859
+#: gimplify.cc:10874
 #, gcc-internal-format
 msgid "non-scalar variable %qD in conditional %<lastprivate%> clause"
 msgstr ""
 
-#: gimplify.cc:10881
+#: gimplify.cc:10896
 #, gcc-internal-format
 msgid "%<task%> reduction modifier on a construct with a %<nowait%> clause"
 msgstr ""
 
-#: gimplify.cc:10889
+#: gimplify.cc:10904
 #, gcc-internal-format
 msgid ""
 "invalid %<task%> reduction modifier on construct other than %<parallel%>, "
 "%qs, %<sections%> or %<scope%>"
 msgstr ""
 
-#: gimplify.cc:10900 gimplify.cc:10906 gimplify.cc:10912 gimplify.cc:10918
-#: gimplify.cc:10924 gimplify.cc:14904
+#: gimplify.cc:10915 gimplify.cc:10921 gimplify.cc:10927 gimplify.cc:10933
+#: gimplify.cc:10939 gimplify.cc:14919
 #, gcc-internal-format
 msgid "%<inscan%> %<reduction%> clause on %qs construct"
 msgstr ""
 
-#: gimplify.cc:11018
+#: gimplify.cc:11033
 #, gcc-internal-format
 msgid ""
 "%<linear%> clause for variable other than loop iterator specified on "
 "construct combined with %<distribute%>"
 msgstr ""
 
-#: gimplify.cc:11713
+#: gimplify.cc:11728
 #, gcc-internal-format
 msgid ""
 "copyprivate variable %qE is not threadprivate or private in outer context"
 msgstr ""
 
-#: gimplify.cc:11770
+#: gimplify.cc:11785
 #, gcc-internal-format
 msgid "%s variable %qE is private in outer context"
 msgstr ""
 
-#: gimplify.cc:11802
+#: gimplify.cc:11817
 #, gcc-internal-format
 msgid "expected %qs %<if%> clause modifier rather than %qs"
 msgstr ""
 
-#: gimplify.cc:11840
+#: gimplify.cc:11855
 #, gcc-internal-format
 msgid ""
 "%<device%> clause with %<ancestor%> is only allowed on %<target%> construct"
 msgstr ""
 
-#: gimplify.cc:11856
+#: gimplify.cc:11871
 #, gcc-internal-format
 msgid ""
 "with %<ancestor%>, only the %<device%>, %<firstprivate%>, %<private%>, "
 "%<defaultmap%>, and %<map%> clauses may appear on the construct"
 msgstr ""
 
-#: gimplify.cc:12068
+#: gimplify.cc:12083
 #, gcc-internal-format
 msgid ""
 "%qD specified in %qs clause but not in %<inscan%> %<reduction%> clause on "
 "the containing construct"
 msgstr ""
 
-#: gimplify.cc:12274
+#: gimplify.cc:12289
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in implicit %<map%> clause"
 msgstr ""
 
-#: gimplify.cc:12328
+#: gimplify.cc:12343
 #, gcc-internal-format
 msgid ""
 "%<_Atomic%> %qD in implicit %<firstprivate%> clause on %<target%> construct"
 msgstr ""
 
-#: gimplify.cc:12590
+#: gimplify.cc:12605
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<firstprivate%> clause on %<target%> construct"
 msgstr ""
 
-#: gimplify.cc:12663
+#: gimplify.cc:12678
 #, gcc-internal-format
 msgid ""
 "same variable used in %<firstprivate%> and %<lastprivate%> clauses on "
 "%<distribute%> construct"
 msgstr ""
 
-#: gimplify.cc:12777
+#: gimplify.cc:12792
 #, gcc-internal-format
 msgid ""
 "incompatible data clause with reduction on %qE; promoting to "
 "%<present_or_copy%>"
 msgstr ""
 
-#: gimplify.cc:12926
+#: gimplify.cc:12941
 #, gcc-internal-format
 msgid ""
 "%qD specified in %<inscan%> %<reduction%> clause but not in %<scan%> "
 "directive clause"
 msgstr ""
 
-#: gimplify.cc:12945
+#: gimplify.cc:12960
 #, gcc-internal-format
 msgid "invalid private reduction on %qE"
 msgstr ""
 
-#: gimplify.cc:13111
+#: gimplify.cc:13126
 #, gcc-internal-format
 msgid ""
 "%<inscan%> %<reduction%> clause used together with %<linear%> clause for a "
 "variable other than loop iterator"
 msgstr ""
 
-#: gimplify.cc:13450
+#: gimplify.cc:13465
 #, gcc-internal-format
 msgid "%<mutexinoutset%> kind in %<depend%> clause on a %<taskwait%> construct"
 msgstr ""
 
-#: gimplify.cc:13460
+#: gimplify.cc:13475
 #, gcc-internal-format
 msgid "%<taskwait%> construct with %<nowait%> clause but no %<depend%> clauses"
 msgstr ""
 
-#: gimplify.cc:13744 gimplify.cc:13748 gimplify.cc:13757 gimplify.cc:13769
-#: gimplify.cc:13774
+#: gimplify.cc:13759 gimplify.cc:13763 gimplify.cc:13772 gimplify.cc:13784
+#: gimplify.cc:13789
 #, gcc-internal-format
 msgid "%qs clause may not appear on non-rectangular %qs"
 msgstr ""
 
-#: gimplify.cc:13936
+#: gimplify.cc:13951
 #, 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:14001
+#: gimplify.cc:14016
 #, gcc-internal-format
 msgid "threadprivate iteration variable %qD"
 msgstr ""
 
-#: gimplify.cc:14032 gimplify.cc:14140
+#: gimplify.cc:14047 gimplify.cc:14155
 #, gcc-internal-format
 msgid "conditional %<lastprivate%> on loop iterator %qD ignored"
 msgstr ""
 
-#: gimplify.cc:14842
+#: gimplify.cc:14857
 #, gcc-internal-format
 msgid ""
 "%<bind%> clause not specified on a %<loop%> construct not nested inside "
 "another OpenMP construct"
 msgstr ""
 
-#: gimplify.cc:14866
+#: gimplify.cc:14881
 #, gcc-internal-format
 msgid ""
 "%<bind(parallel)%> on a %<loop%> construct nested inside %<simd%> construct"
 msgstr ""
 
-#: gimplify.cc:14886
+#: gimplify.cc:14901
 #, gcc-internal-format
 msgid ""
 "%<bind(teams)%> on a %<loop%> region not strictly nested inside of a "
 "%<teams%> region"
 msgstr ""
 
-#: gimplify.cc:14911
+#: gimplify.cc:14926
 #, gcc-internal-format
 msgid ""
 "invalid %<task%> reduction modifier on construct other than %<parallel%>, "
 "%qs or %<sections%>"
 msgstr ""
 
-#: gimplify.cc:14939
+#: gimplify.cc:14954
 #, gcc-internal-format
 msgid ""
 "%<lastprivate%> clause on a %<loop%> construct refers to a variable %qD "
 "which is not the loop iterator"
 msgstr ""
 
-#: gimplify.cc:16020
+#: gimplify.cc:16035
 #, gcc-internal-format
 msgid ""
 "%<ordered%> construct with %qs clause must be closely nested inside a loop "
 "with %<ordered%> clause"
 msgstr ""
 
-#: gimplify.cc:16041
+#: gimplify.cc:16056
 #, gcc-internal-format
 msgid "variable %qE is not an iteration of outermost loop %d, expected %qE"
 msgstr ""
 
-#: gimplify.cc:16054
+#: gimplify.cc:16069
 #, gcc-internal-format
 msgid ""
 "number of variables in %qs clause with %<sink%> modifier does not match "
 "number of iteration variables"
 msgstr ""
 
-#: gimplify.cc:16068
+#: gimplify.cc:16083
 #, gcc-internal-format
 msgid ""
 "more than one %qs clause with %<source%> modifier on an %<ordered%> construct"
 msgstr ""
 
-#: gimplify.cc:16081
+#: gimplify.cc:16096
 #, gcc-internal-format
 msgid ""
 "%qs clause with %<source%> modifier specified together with %qs clauses with "
 "%<sink%> modifier on the same construct"
 msgstr ""
 
-#: gimplify.cc:17390
+#: gimplify.cc:17405
 #, gcc-internal-format
 msgid "gimplification failed"
 msgstr ""
 
-#: gimplify.cc:17989
+#: gimplify.cc:18004
 #, gcc-internal-format
 msgid "%qT is promoted to %qT when passed through %<...%>"
 msgstr ""
 
-#: gimplify.cc:17994
+#: gimplify.cc:18009
 #, gcc-internal-format
 msgid "(so you should pass %qT not %qT to %<va_arg%>)"
 msgstr ""
 
-#: gimplify.cc:18001
+#: gimplify.cc:18016
 #, gcc-internal-format
 msgid "if this code is reached, the program will abort"
 msgstr ""
@@ -28969,22 +29005,22 @@ msgstr ""
 msgid "Graphite loop optimizations cannot be used (isl is not available)."
 msgstr ""
 
-#: input.cc:1493
+#: input.cc:1520
 #, gcc-internal-format, gfc-internal-format
 msgid "expansion point is location %i"
 msgstr ""
 
-#: input.cc:1523
+#: input.cc:1550
 #, gcc-internal-format
 msgid "token %u has %<x-location == y-location == %u%>"
 msgstr ""
 
-#: input.cc:1532
+#: input.cc:1559
 #, gcc-internal-format
 msgid "token %u has %<x-location == %u%>"
 msgstr ""
 
-#: input.cc:1533
+#: input.cc:1560
 #, gcc-internal-format
 msgid "token %u has %<y-location == %u%>"
 msgstr ""
@@ -29394,7 +29430,7 @@ msgstr ""
 msgid "IPA modref summary is missing in input file"
 msgstr ""
 
-#: ipa-prop.cc:4709 ipa-prop.cc:4751 ipa-prop.cc:4837 ipa-prop.cc:4885
+#: ipa-prop.cc:4715 ipa-prop.cc:4757 ipa-prop.cc:4843 ipa-prop.cc:4891
 #, gcc-internal-format
 msgid "invalid jump function in LTO stream"
 msgstr ""
@@ -29458,17 +29494,17 @@ msgstr ""
 msgid "%s cannot be used in %<asm%> here"
 msgstr ""
 
-#: ira.cc:6046
+#: ira.cc:6049
 #, gcc-internal-format
 msgid "frame pointer required, but reserved"
 msgstr ""
 
-#: ira.cc:6047
+#: ira.cc:6050
 #, gcc-internal-format
 msgid "for %qD"
 msgstr ""
 
-#: ira.cc:6063
+#: ira.cc:6066
 #, gcc-internal-format
 msgid "frame size too large for reliable stack checking"
 msgstr ""
@@ -29488,12 +29524,12 @@ msgstr ""
 msgid "unable to find a register to spill"
 msgstr ""
 
-#: lra-constraints.cc:4170 reload.cc:3845 reload.cc:4100
+#: lra-constraints.cc:4172 reload.cc:3845 reload.cc:4100
 #, gcc-internal-format
 msgid "inconsistent operand constraints in an %<asm%>"
 msgstr ""
 
-#: lra-constraints.cc:5137
+#: lra-constraints.cc:5258
 #, gcc-internal-format, gfc-internal-format
 msgid "maximum number of generated reload insns per insn achieved (%d)"
 msgstr ""
@@ -29772,33 +29808,33 @@ msgstr ""
 msgid "environment variable %<COLLECT_GCC_OPTIONS%> must be set"
 msgstr ""
 
-#: lto-wrapper.cc:1713 lto-wrapper.cc:1773 c-family/c-pch.cc:213
+#: lto-wrapper.cc:1723 lto-wrapper.cc:1783 c-family/c-pch.cc:213
 #: c-family/c-pch.cc:248 c-family/c-pch.cc:286
 #, gcc-internal-format
 msgid "cannot read %s: %m"
 msgstr ""
 
-#: lto-wrapper.cc:1740
+#: lto-wrapper.cc:1750
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid format of %s"
 msgstr ""
 
-#: lto-wrapper.cc:1906
+#: lto-wrapper.cc:1916
 #, gcc-internal-format
 msgid "%<fopen%>: %s: %m"
 msgstr ""
 
-#: lto-wrapper.cc:1923
+#: lto-wrapper.cc:1933
 #, gcc-internal-format, gfc-internal-format
 msgid "corrupted ltrans output file %s"
 msgstr ""
 
-#: lto-wrapper.cc:1966
+#: lto-wrapper.cc:1976
 #, gcc-internal-format, gfc-internal-format
 msgid "using serial compilation of %d LTRANS jobs"
 msgstr ""
 
-#: lto-wrapper.cc:2142
+#: lto-wrapper.cc:2152
 #, gcc-internal-format
 msgid "%<atexit%> failed"
 msgstr ""
@@ -29818,7 +29854,7 @@ msgstr ""
 msgid "default %<target_clones%> attribute was not set"
 msgstr ""
 
-#: multiple_target.cc:326 c-family/c-attribs.cc:5603
+#: multiple_target.cc:326 c-family/c-attribs.cc:5607
 #, gcc-internal-format
 msgid "single %<target_clones%> attribute is ignored"
 msgstr ""
@@ -29860,7 +29896,7 @@ msgid ""
 "space"
 msgstr ""
 
-#: omp-expand.cc:8176
+#: omp-expand.cc:8182
 #, gcc-internal-format
 msgid ""
 "invalid OpenMP non-rectangular loop step; %<(%E - %E) * %E%> is not a "
@@ -30215,51 +30251,51 @@ msgstr ""
 msgid "%qs construct inside of %qs region"
 msgstr ""
 
-#: omp-low.cc:4170
+#: omp-low.cc:4171
 #, gcc-internal-format
 msgid "setjmp/longjmp inside %<simd%> construct"
 msgstr ""
 
-#: omp-low.cc:4196
+#: omp-low.cc:4197
 #, gcc-internal-format
 msgid ""
 "OpenMP runtime API call %qD in a region with %<order(concurrent)%> clause"
 msgstr ""
 
-#: omp-low.cc:4212
+#: omp-low.cc:4213
 #, gcc-internal-format
 msgid "OpenMP runtime API call %qD strictly nested in a %<teams%> region"
 msgstr ""
 
-#: omp-low.cc:4224
+#: omp-low.cc:4225
 #, gcc-internal-format
 msgid ""
 "OpenMP runtime API call %qD in a region with %<device(ancestor)%> clause"
 msgstr ""
 
-#: omp-low.cc:9884
+#: omp-low.cc:9885
 #, gcc-internal-format
 msgid ""
 "ignoring sink clause with offset that is not a multiple of the loop step"
 msgstr ""
 
-#: omp-low.cc:9907
+#: omp-low.cc:9908
 #, gcc-internal-format
 msgid "first offset must be in opposite direction of loop iterations"
 msgstr ""
 
-#: omp-low.cc:14833
+#: omp-low.cc:14835
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid exit from %s structured block"
 msgstr ""
 
-#: omp-low.cc:14835 omp-low.cc:14840
+#: omp-low.cc:14837 omp-low.cc:14842
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid entry to %s structured block"
 msgstr ""
 
 #. Otherwise, be vague and lazy, but efficient.
-#: omp-low.cc:14844
+#: omp-low.cc:14846
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid branch to/from %s structured block"
 msgstr ""
@@ -30413,7 +30449,7 @@ msgid ""
 "non-%<uniform%> argument"
 msgstr ""
 
-#: optabs.cc:4937
+#: optabs.cc:4936
 #, gcc-internal-format
 msgid "indirect jumps are not available on this target"
 msgstr ""
@@ -30433,453 +30469,453 @@ msgstr ""
 msgid "error closing optimization records %qs"
 msgstr ""
 
-#: opts-common.cc:1383
+#: opts-common.cc:1409
 #, gcc-internal-format
 msgid "command-line option %qs is not supported by this configuration"
 msgstr ""
 
-#: opts-common.cc:1393 opts.cc:2507
+#: opts-common.cc:1419 opts.cc:2511
 #, gcc-internal-format
 msgid "missing argument to %qs"
 msgstr ""
 
-#: opts-common.cc:1400
+#: opts-common.cc:1426
 #, gcc-internal-format
 msgid ""
 "argument to %qs should be a non-negative integer optionally followed by a "
 "size unit"
 msgstr ""
 
-#: opts-common.cc:1404
+#: opts-common.cc:1430
 #, gcc-internal-format
 msgid "argument to %qs should be a non-negative integer"
 msgstr ""
 
-#: opts-common.cc:1411
+#: opts-common.cc:1437
 #, gcc-internal-format
 msgid "argument to %qs is not between %d and %d"
 msgstr ""
 
-#: opts-common.cc:1475
+#: opts-common.cc:1501
 #, gcc-internal-format
 msgid "invalid argument in option %qs"
 msgstr ""
 
-#: opts-common.cc:1477
+#: opts-common.cc:1503
 #, gcc-internal-format
 msgid "%qs specified multiple times in the same option"
 msgstr ""
 
-#: opts-common.cc:1480
+#: opts-common.cc:1506
 #, gcc-internal-format
 msgid "%qs is mutually exclusive with %qs and cannot be specified together"
 msgstr ""
 
-#: opts-common.cc:1502
+#: opts-common.cc:1528
 #, gcc-internal-format
 msgid "unrecognized argument in option %qs"
 msgstr ""
 
-#: opts-common.cc:1513 config/i386/i386-options.cc:1635
+#: opts-common.cc:1539 config/i386/i386-options.cc:1635
 #, gcc-internal-format
 msgid "valid arguments to %qs are: %s; did you mean %qs?"
 msgstr ""
 
-#: opts-common.cc:1516 config/i386/i386-options.cc:1638
+#: opts-common.cc:1542 config/i386/i386-options.cc:1638
 #, gcc-internal-format
 msgid "valid arguments to %qs are: %s"
 msgstr ""
 
-#: opts-common.cc:1559 c-family/c-opts.cc:448
+#: opts-common.cc:1585 c-family/c-opts.cc:448
 #, gcc-internal-format
 msgid "switch %qs is no longer supported"
 msgstr ""
 
-#: opts-common.cc:1619
+#: opts-common.cc:1645
 #, gcc-internal-format
 msgid "argument to %qs is bigger than %d"
 msgstr ""
 
-#: opts-common.cc:1966
+#: opts-common.cc:1992
 #, gcc-internal-format
 msgid "malformed %<COLLECT_GCC_OPTIONS%>"
 msgstr ""
 
-#: opts-global.cc:104
+#: opts-global.cc:107
 #, gcc-internal-format
 msgid "command-line option %qs is valid for the driver but not for %s"
 msgstr ""
 
 #. Eventually this should become a hard error IMO.
-#: opts-global.cc:110
+#: opts-global.cc:113
 #, gcc-internal-format
 msgid "command-line option %qs is valid for %s but not for %s"
 msgstr ""
 
 #. Happens for -Werror=warning_name.
-#: opts-global.cc:114
+#: opts-global.cc:117
 #, gcc-internal-format
 msgid "%<-Werror=%> argument %qs is not valid for %s"
 msgstr ""
 
-#: opts-global.cc:146
+#: opts-global.cc:149
 #, gcc-internal-format
 msgid ""
 "unrecognized command-line option %qs may have been intended to silence "
 "earlier diagnostics"
 msgstr ""
 
-#: opts-global.cc:401
+#: opts-global.cc:409
 #, gcc-internal-format
 msgid "unrecognized command-line option %<-fopt-info-%s%>"
 msgstr ""
 
-#: opts-global.cc:422 opts-global.cc:431 m2/gm2spec.cc:487
+#: opts-global.cc:430 opts-global.cc:439 m2/gm2spec.cc:548
 #, gcc-internal-format
 msgid "plugin support is disabled; configure with %<--enable-plugin%>"
 msgstr ""
 
-#: opts-global.cc:456
+#: opts-global.cc:464
 #, gcc-internal-format
 msgid "unrecognized register name %qs"
 msgstr ""
 
-#: opts-global.cc:474
+#: opts-global.cc:482
 #, gcc-internal-format
 msgid ""
 "%<-fasan-shadow-offset%> should only be used with %<-fsanitize=kernel-"
 "address%>"
 msgstr ""
 
-#: opts-global.cc:477
+#: opts-global.cc:485
 #, gcc-internal-format
 msgid "unrecognized shadow offset %qs"
 msgstr ""
 
-#: opts.cc:226
+#: opts.cc:230
 #, gcc-internal-format
 msgid "argument %qs to %<-femit-struct-debug-detailed%> not recognized"
 msgstr ""
 
-#: opts.cc:262
+#: opts.cc:266
 #, gcc-internal-format
 msgid "argument %qs to %<-femit-struct-debug-detailed%> unknown"
 msgstr ""
 
-#: opts.cc:269
+#: opts.cc:273
 #, gcc-internal-format
 msgid ""
 "%<-femit-struct-debug-detailed=dir:...%> must allow at least as much as %<-"
 "femit-struct-debug-detailed=ind:...%>"
 msgstr ""
 
-#: opts.cc:735
+#: opts.cc:739
 #, gcc-internal-format
 msgid ""
 "argument to %<-O%> should be a non-negative integer, %<g%>, %<s%>, %<z%> or "
 "%<fast%>"
 msgstr ""
 
-#: opts.cc:841 opts.cc:847 opts.cc:853 opts.cc:859 opts.cc:870 opts.cc:880
-#: opts.cc:886 opts.cc:892 opts.cc:898 opts.cc:904 opts.cc:910 opts.cc:916
-#: opts.cc:922 opts.cc:928 opts.cc:945 opts.cc:953 config/mips/mips.cc:20179
-#: config/mips/mips.cc:20181 config/mips/mips.cc:20194
+#: opts.cc:845 opts.cc:851 opts.cc:857 opts.cc:863 opts.cc:874 opts.cc:884
+#: opts.cc:890 opts.cc:896 opts.cc:902 opts.cc:908 opts.cc:914 opts.cc:920
+#: opts.cc:926 opts.cc:932 opts.cc:949 opts.cc:957 config/mips/mips.cc:20180
+#: config/mips/mips.cc:20182 config/mips/mips.cc:20195
 #, gcc-internal-format
 msgid "%qs is incompatible with %qs"
 msgstr ""
 
-#: opts.cc:935
+#: opts.cc:939
 #, gcc-internal-format
 msgid "%<-fipa-modref%> is incompatible with %qs"
 msgstr ""
 
-#: opts.cc:1015
+#: opts.cc:1019
 #, gcc-internal-format
 msgid "%<-fsanitize=%s%> is incompatible with %<-fsanitize=%s%>"
 msgstr ""
 
-#: opts.cc:1053
+#: opts.cc:1057
 #, gcc-internal-format
 msgid "section anchors must be disabled when unit-at-a-time is disabled"
 msgstr ""
 
-#: opts.cc:1057
+#: opts.cc:1061
 #, gcc-internal-format
 msgid "toplevel reorder must be disabled when unit-at-a-time is disabled"
 msgstr ""
 
-#: opts.cc:1071
+#: opts.cc:1075
 #, gcc-internal-format
 msgid "transactional memory is not supported with non-call exceptions"
 msgstr ""
 
-#: opts.cc:1086
+#: opts.cc:1090
 #, gcc-internal-format
 msgid "section anchors must be disabled when toplevel reorder is disabled"
 msgstr ""
 
-#: opts.cc:1160
+#: opts.cc:1164
 #, gcc-internal-format
 msgid "%<-fno-fat-lto-objects%> are supported only with linker plugin"
 msgstr ""
 
-#: opts.cc:1168
+#: opts.cc:1172
 #, gcc-internal-format
 msgid "%<-gsplit-dwarf%> is not supported with LTO, disabling"
 msgstr ""
 
-#: opts.cc:1182
+#: opts.cc:1186
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> is not supported by this compiler configuration"
 msgstr ""
 
-#: opts.cc:1209
+#: opts.cc:1213
 #, gcc-internal-format
 msgid ""
 "%<-fsanitize=pointer-compare%> must be combined with %<-fsanitize=address%> "
 "or %<-fsanitize=kernel-address%>"
 msgstr ""
 
-#: opts.cc:1213
+#: opts.cc:1217
 #, gcc-internal-format
 msgid ""
 "%<-fsanitize=pointer-subtract%> must be combined with %<-fsanitize=address%> "
 "or %<-fsanitize=kernel-address%>"
 msgstr ""
 
-#: opts.cc:1240
+#: opts.cc:1244
 #, gcc-internal-format
 msgid "%<-fsanitize-recover=%s%> is not supported"
 msgstr ""
 
-#: opts.cc:1252 opts.cc:2243
+#: opts.cc:1256 opts.cc:2247
 #, gcc-internal-format
 msgid "%<-fsanitize-trap=%s%> is not supported"
 msgstr ""
 
-#: opts.cc:1279
+#: opts.cc:1283
 #, gcc-internal-format
 msgid ""
 "%<-fsanitize-address-use-after-scope%> requires %<-fstack-reuse=none%> option"
 msgstr ""
 
-#: opts.cc:1286
+#: opts.cc:1290
 #, gcc-internal-format
 msgid "transactional memory is not supported with %<-fsanitize=address%>"
 msgstr ""
 
-#: opts.cc:1289
+#: opts.cc:1293
 #, gcc-internal-format
 msgid ""
 "transactional memory is not supported with %<-fsanitize=kernel-address%>"
 msgstr ""
 
-#: opts.cc:1294
+#: opts.cc:1298
 #, gcc-internal-format
 msgid "live patching (with %qs) is not supported with LTO"
 msgstr ""
 
-#: opts.cc:1299
+#: opts.cc:1303
 #, gcc-internal-format
 msgid "vtable verification is not supported with LTO"
 msgstr ""
 
-#: opts.cc:1374
+#: opts.cc:1378
 #, gcc-internal-format
 msgid "variable tracking requested, but useless unless producing debug info"
 msgstr ""
 
-#: opts.cc:1378
+#: opts.cc:1382
 #, gcc-internal-format
 msgid "variable tracking requested, but not supported by this debug format"
 msgstr ""
 
-#: opts.cc:1406
+#: opts.cc:1410
 #, gcc-internal-format
 msgid "var-tracking-assignments changes selective scheduling"
 msgstr ""
 
-#: opts.cc:1419
+#: opts.cc:1423
 #, gcc-internal-format
 msgid ""
 "%<-Wstrict-flex-arrays%> is ignored when %<-fstrict-flex-arrays%> is not "
 "present"
 msgstr ""
 
-#: opts.cc:1449 config/darwin.cc:3361
+#: opts.cc:1453 config/darwin.cc:3361
 #, gcc-internal-format
 msgid ""
 "%<-freorder-blocks-and-partition%> does not work with exceptions on this "
 "architecture"
 msgstr ""
 
-#: opts.cc:1465
+#: opts.cc:1469
 #, gcc-internal-format
 msgid ""
 "%<-freorder-blocks-and-partition%> does not support unwind info on this "
 "architecture"
 msgstr ""
 
-#: opts.cc:1483 config/pa/pa.cc:564
+#: opts.cc:1487 config/pa/pa.cc:564
 #, gcc-internal-format
 msgid "%<-freorder-blocks-and-partition%> does not work on this architecture"
 msgstr ""
 
-#: opts.cc:1992
+#: opts.cc:1996
 #, gcc-internal-format
 msgid "unrecognized %<include_flags 0x%x%> passed to %<print_specific_help%>"
 msgstr ""
 
-#: opts.cc:2222
+#: opts.cc:2226
 #, gcc-internal-format
 msgid "%<-fsanitize=all%> option is not valid"
 msgstr ""
 
-#: opts.cc:2277
+#: opts.cc:2281
 #, gcc-internal-format
 msgid ""
 "unrecognized argument to %<-f%ssanitize%s=%> option: %q.*s; did you mean %qs?"
 msgstr ""
 
-#: opts.cc:2283
+#: opts.cc:2287
 #, gcc-internal-format
 msgid "unrecognized argument to %<-f%ssanitize%s=%> option: %q.*s"
 msgstr ""
 
-#: opts.cc:2318
+#: opts.cc:2322
 #, gcc-internal-format
 msgid "%qs attribute directive ignored"
 msgstr ""
 
-#: opts.cc:2342
+#: opts.cc:2346
 #, gcc-internal-format
 msgid "unrecognized argument to %<-fzero-call-used-regs=%>: %qs"
 msgstr ""
 
-#: opts.cc:2366
+#: opts.cc:2370
 #, gcc-internal-format
 msgid "invalid arguments for %<-falign-%s%> option: %qs"
 msgstr ""
 
-#: opts.cc:2381
+#: opts.cc:2385
 #, gcc-internal-format
 msgid "invalid number of arguments for %<-falign-%s%> option: %qs"
 msgstr ""
 
-#: opts.cc:2390
+#: opts.cc:2394
 #, gcc-internal-format
 msgid "%<-falign-%s%> is not between 0 and %d"
 msgstr ""
 
-#: opts.cc:2449
+#: opts.cc:2453
 #, gcc-internal-format
 msgid "invalid arguments for %<-fpatchable-function-entry%>"
 msgstr ""
 
-#: opts.cc:2562
+#: opts.cc:2566
 #, gcc-internal-format
 msgid "%<--help%> argument %q.*s is ambiguous, please be more specific"
 msgstr ""
 
-#: opts.cc:2571
+#: opts.cc:2575
 #, gcc-internal-format
 msgid "unrecognized argument to %<--help=%> option: %q.*s"
 msgstr ""
 
-#: opts.cc:2751
+#: opts.cc:2755
 #, gcc-internal-format
 msgid ""
 "arguments ignored for %<-Wattributes=%>; use %<-Wno-attributes=%> instead"
 msgstr ""
 
-#: opts.cc:2757
+#: opts.cc:2761
 #, gcc-internal-format
 msgid "trailing %<,%> in arguments for %<-Wno-attributes=%>"
 msgstr ""
 
-#: opts.cc:2970
+#: opts.cc:2982
 #, gcc-internal-format
 msgid "%<-foffload-abi%> option can be specified only for offload compiler"
 msgstr ""
 
-#: opts.cc:2978
+#: opts.cc:2990
 #, gcc-internal-format
 msgid "structure alignment must be a small power of two, not %wu"
 msgstr ""
 
-#: opts.cc:3099
+#: opts.cc:3111
 #, gcc-internal-format
 msgid "unknown stack check parameter %qs"
 msgstr ""
 
-#: opts.cc:3145
+#: opts.cc:3157
 #, gcc-internal-format
 msgid ""
 "%<-gdwarf%s%> is ambiguous; use %<-gdwarf-%s%> for DWARF version or %<-"
 "gdwarf%> %<-g%s%> for debug level"
 msgstr ""
 
-#: opts.cc:3156
+#: opts.cc:3168
 #, gcc-internal-format
 msgid "dwarf version %wu is not supported"
 msgstr ""
 
-#: opts.cc:3193
+#: opts.cc:3205
 #, gcc-internal-format
 msgid "unrecognized argument to %<-flto=%> option: %qs"
 msgstr ""
 
-#: opts.cc:3393
+#: opts.cc:3405
 #, gcc-internal-format
 msgid "target system does not support debug output"
 msgstr ""
 
-#: opts.cc:3431
+#: opts.cc:3443
 #, gcc-internal-format
 msgid "debug format %qs conflicts with prior selection"
 msgstr ""
 
-#: opts.cc:3455
+#: opts.cc:3467
 #, gcc-internal-format
 msgid "unrecognized debug output level %qs"
 msgstr ""
 
-#: opts.cc:3457
+#: opts.cc:3469
 #, gcc-internal-format
 msgid "debug output level %qs is too high"
 msgstr ""
 
-#: opts.cc:3469
+#: opts.cc:3481
 #, gcc-internal-format
 msgid "unrecognized btf debug output level %qs"
 msgstr ""
 
-#: opts.cc:3486
+#: opts.cc:3498
 #, gcc-internal-format
 msgid "getting core file size maximum limit: %m"
 msgstr ""
 
-#: opts.cc:3490
+#: opts.cc:3502
 #, gcc-internal-format
 msgid "setting core file size limit to maximum: %m"
 msgstr ""
 
-#: opts.cc:3535
+#: opts.cc:3547
 #, gcc-internal-format, gfc-internal-format
 msgid "unrecognized gcc debugging option: %c"
 msgstr ""
 
-#: opts.cc:3564
+#: opts.cc:3576
 #, gcc-internal-format
 msgid "%<-W%serror=%s%>: no option %<-%s%>; did you mean %<-%s%>?"
 msgstr ""
 
-#: opts.cc:3568
+#: opts.cc:3580
 #, gcc-internal-format
 msgid "%<-W%serror=%s%>: no option %<-%s%>"
 msgstr ""
 
-#: opts.cc:3572
+#: opts.cc:3584
 #, gcc-internal-format
 msgid "%<-Werror=%s%>: %<-%s%> is not an option that controls warnings"
 msgstr ""
@@ -31176,37 +31212,37 @@ msgstr ""
 msgid "%<__RTL%> function cannot be compiled with %<-flto%>"
 msgstr ""
 
-#: read-rtl-function.cc:713
+#: read-rtl-function.cc:714
 #, gcc-internal-format
 msgid "unrecognized edge flag: %qs"
 msgstr ""
 
-#: read-rtl-function.cc:856
+#: read-rtl-function.cc:857
 #, gcc-internal-format
 msgid "more than one 'crtl' directive"
 msgstr ""
 
-#: read-rtl-function.cc:985
+#: read-rtl-function.cc:986
 #, gcc-internal-format
 msgid "unrecognized enum value: %qs"
 msgstr ""
 
-#: read-rtl-function.cc:1141 read-rtl-function.cc:1200
+#: read-rtl-function.cc:1142 read-rtl-function.cc:1201
 #, gcc-internal-format, gfc-internal-format
 msgid "was expecting `%s'"
 msgstr ""
 
-#: read-rtl-function.cc:1594
+#: read-rtl-function.cc:1595
 #, gcc-internal-format, gfc-internal-format
 msgid "duplicate insn UID: %i"
 msgstr ""
 
-#: read-rtl-function.cc:1655
+#: read-rtl-function.cc:1656
 #, gcc-internal-format
 msgid "start/end of RTL fragment are in different files"
 msgstr ""
 
-#: read-rtl-function.cc:1661
+#: read-rtl-function.cc:1662
 #, gcc-internal-format
 msgid "start of RTL fragment must be on an earlier line than end"
 msgstr ""
@@ -31540,12 +31576,12 @@ msgstr ""
 msgid "packed attribute is unnecessary"
 msgstr ""
 
-#: stor-layout.cc:2614
+#: stor-layout.cc:2617
 #, gcc-internal-format
 msgid "alignment of array elements is greater than element size"
 msgstr ""
 
-#: stor-layout.cc:2620
+#: stor-layout.cc:2623
 #, gcc-internal-format
 msgid "size of array element is not a multiple of its alignment"
 msgstr ""
@@ -31757,37 +31793,37 @@ msgstr ""
 msgid "%<__builtin_saveregs%> not supported by this target"
 msgstr ""
 
-#: targhooks.cc:1198
+#: targhooks.cc:1203
 #, gcc-internal-format
 msgid "argument %qs is not supported for %qs on this target"
 msgstr ""
 
-#: targhooks.cc:1240
+#: targhooks.cc:1245
 #, gcc-internal-format
 msgid "nested functions not supported on this target"
 msgstr ""
 
-#: targhooks.cc:1253
+#: targhooks.cc:1258
 #, gcc-internal-format
 msgid "nested function trampolines not supported on this target"
 msgstr ""
 
-#: targhooks.cc:1416
+#: targhooks.cc:1421
 #, gcc-internal-format
 msgid "global constructors not supported on this target"
 msgstr ""
 
-#: targhooks.cc:1425
+#: targhooks.cc:1430
 #, gcc-internal-format
 msgid "global destructors not supported on this target"
 msgstr ""
 
-#: targhooks.cc:1775
+#: targhooks.cc:1789
 #, gcc-internal-format
 msgid "target attribute is not supported on this machine"
 msgstr ""
 
-#: targhooks.cc:1789
+#: targhooks.cc:1803
 #, gcc-internal-format
 msgid "%<#pragma GCC target%> is not supported for this machine"
 msgstr ""
@@ -31952,7 +31988,7 @@ msgstr ""
 #: toplev.cc:1583
 #, gcc-internal-format
 msgid ""
-"%<-fstack-check=%> and %<-fstack-clash_protection%> are mutually exclusive; "
+"%<-fstack-check=%> and %<-fstack-clash-protection%> are mutually exclusive; "
 "disabling %<-fstack-check=%>"
 msgstr ""
 
@@ -32882,95 +32918,95 @@ msgstr ""
 msgid "BB %i has incorrect fallthru edge"
 msgstr ""
 
-#: tree-inline.cc:3889
+#: tree-inline.cc:3885
 #, gcc-internal-format
 msgid "function %q+F can never be copied because it receives a non-local goto"
 msgstr ""
 
-#: tree-inline.cc:3896
+#: tree-inline.cc:3892
 #, 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:3936
+#: tree-inline.cc:3932
 #, 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:3950
+#: tree-inline.cc:3946
 #, gcc-internal-format
 msgid "function %q+F can never be inlined because it uses setjmp"
 msgstr ""
 
-#: tree-inline.cc:3964
+#: tree-inline.cc:3960
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses variable argument lists"
 msgstr ""
 
-#: tree-inline.cc:3976
+#: tree-inline.cc:3972
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses setjmp-longjmp exception "
 "handling"
 msgstr ""
 
-#: tree-inline.cc:3984
+#: tree-inline.cc:3980
 #, gcc-internal-format
 msgid "function %q+F can never be inlined because it uses non-local goto"
 msgstr ""
 
-#: tree-inline.cc:3996
+#: tree-inline.cc:3992
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses %<__builtin_return%> or "
 "%<__builtin_apply_args%>"
 msgstr ""
 
-#: tree-inline.cc:4016
+#: tree-inline.cc:4012
 #, gcc-internal-format
 msgid "function %q+F can never be inlined because it contains a computed goto"
 msgstr ""
 
-#: tree-inline.cc:4062
+#: tree-inline.cc:4058
 #, gcc-internal-format
 msgid "function %q+F can never be inlined because it has a VLA argument"
 msgstr ""
 
-#: tree-inline.cc:4130
+#: tree-inline.cc:4126
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it is suppressed using %<-fno-"
 "inline%>"
 msgstr ""
 
-#: tree-inline.cc:4138
+#: tree-inline.cc:4134
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses attributes conflicting "
 "with inlining"
 msgstr ""
 
-#: tree-inline.cc:4824
+#: tree-inline.cc:4820
 #, gcc-internal-format
 msgid "inlining failed in call to %<always_inline%> %q+F: %s"
 msgstr ""
 
-#: tree-inline.cc:4827 tree-inline.cc:4848
+#: tree-inline.cc:4823 tree-inline.cc:4844
 #, gcc-internal-format
 msgid "called from here"
 msgstr ""
 
-#: tree-inline.cc:4830 tree-inline.cc:4851
+#: tree-inline.cc:4826 tree-inline.cc:4847
 #, gcc-internal-format
 msgid "called from this function"
 msgstr ""
 
-#: tree-inline.cc:4844
+#: tree-inline.cc:4840
 #, gcc-internal-format
 msgid "inlining failed in call to %q+F: %s"
 msgstr ""
@@ -33020,17 +33056,17 @@ msgstr ""
 msgid "invalid fn spec attribute \"%s\" arg %i"
 msgstr ""
 
-#: tree-ssa-ccp.cc:4684 c-family/c-common.cc:5815
+#: tree-ssa-ccp.cc:4684 c-family/c-common.cc:5830
 #, gcc-internal-format
 msgid "%qs pointer is null"
 msgstr ""
 
-#: tree-ssa-ccp.cc:4687 c-family/c-common.cc:5818
+#: tree-ssa-ccp.cc:4687 c-family/c-common.cc:5833
 #, gcc-internal-format
 msgid "in a call to non-static member function %qD"
 msgstr ""
 
-#: tree-ssa-ccp.cc:4693 c-family/c-common.cc:5824
+#: tree-ssa-ccp.cc:4693 c-family/c-common.cc:5839
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u null where non-null expected"
 msgstr ""
@@ -33040,17 +33076,17 @@ msgstr ""
 msgid "in a call to built-in function %qD"
 msgstr ""
 
-#: tree-ssa-ccp.cc:4703 c-family/c-common.cc:5828
+#: tree-ssa-ccp.cc:4703 c-family/c-common.cc:5843
 #, gcc-internal-format
 msgid "in a call to function %qD declared %qs"
 msgstr ""
 
-#: tree-ssa-loop-niter.cc:3895
+#: tree-ssa-loop-niter.cc:3898
 #, gcc-internal-format, gfc-internal-format
 msgid "iteration %s invokes undefined behavior"
 msgstr ""
 
-#: tree-ssa-loop-niter.cc:3896
+#: tree-ssa-loop-niter.cc:3899
 #, gcc-internal-format
 msgid "within this loop"
 msgstr ""
@@ -33248,67 +33284,67 @@ msgstr ""
 msgid "in this expression"
 msgstr ""
 
-#: tree-ssa-uninit.cc:282
+#: tree-ssa-uninit.cc:291
 #, gcc-internal-format
 msgid "%qD is used uninitialized"
 msgstr ""
 
-#: tree-ssa-uninit.cc:284
+#: tree-ssa-uninit.cc:293
 #, gcc-internal-format
 msgid "%qD may be used uninitialized"
 msgstr ""
 
-#: tree-ssa-uninit.cc:291
+#: tree-ssa-uninit.cc:300
 #, gcc-internal-format
 msgid "%qs is used uninitialized"
 msgstr ""
 
-#: tree-ssa-uninit.cc:294
+#: tree-ssa-uninit.cc:303
 #, gcc-internal-format
 msgid "%qs may be used uninitialized"
 msgstr ""
 
-#: tree-ssa-uninit.cc:313 varasm.cc:362 varasm.cc:7845
+#: tree-ssa-uninit.cc:322 varasm.cc:362 varasm.cc:7845
 #, gcc-internal-format
 msgid "%qD was declared here"
 msgstr ""
 
-#: tree-ssa-uninit.cc:315
+#: tree-ssa-uninit.cc:324
 #, gcc-internal-format
 msgid "%qs was declared here"
 msgstr ""
 
-#: tree-ssa-uninit.cc:426 tree-ssa-uninit.cc:736
+#: tree-ssa-uninit.cc:435 tree-ssa-uninit.cc:745
 #, gcc-internal-format
 msgid "%qE may be used uninitialized"
 msgstr ""
 
-#: tree-ssa-uninit.cc:435
+#: tree-ssa-uninit.cc:444
 #, gcc-internal-format
 msgid "accessing argument %u of a function declared with attribute %<%s%>"
 msgstr ""
 
-#: tree-ssa-uninit.cc:723
+#: tree-ssa-uninit.cc:732
 #, gcc-internal-format
 msgid "%qE is used uninitialized"
 msgstr ""
 
-#: tree-ssa-uninit.cc:858
+#: tree-ssa-uninit.cc:867
 #, gcc-internal-format
 msgid "in a call to %qD declared with attribute %<%s%> here"
 msgstr ""
 
-#: tree-ssa-uninit.cc:865
+#: tree-ssa-uninit.cc:874
 #, gcc-internal-format
 msgid "in a call to %qT declared with attribute %<%s%>"
 msgstr ""
 
-#: tree-ssa-uninit.cc:881
+#: tree-ssa-uninit.cc:890
 #, gcc-internal-format
 msgid "by argument %u of type %s to %qD declared here"
 msgstr ""
 
-#: tree-ssa-uninit.cc:889
+#: tree-ssa-uninit.cc:898
 #, gcc-internal-format
 msgid "by argument %u of type %s to %qT"
 msgstr ""
@@ -33473,7 +33509,7 @@ msgstr ""
 msgid "target specific builtin not available"
 msgstr ""
 
-#: tree-vect-generic.cc:319 tree-vect-generic.cc:489 tree-vect-generic.cc:2053
+#: tree-vect-generic.cc:319 tree-vect-generic.cc:489 tree-vect-generic.cc:2051
 #, gcc-internal-format
 msgid "vector operation will be expanded piecewise"
 msgstr ""
@@ -33488,153 +33524,153 @@ msgstr ""
 msgid "vector operation will be expanded with a single scalar operation"
 msgstr ""
 
-#: tree-vect-generic.cc:1101
+#: tree-vect-generic.cc:1110
 #, gcc-internal-format
 msgid "vector condition will be expanded piecewise"
 msgstr ""
 
-#: tree-vect-generic.cc:1613
+#: tree-vect-generic.cc:1611
 #, gcc-internal-format
 msgid "vector shuffling operation will be expanded piecewise"
 msgstr ""
 
-#: tree-vect-loop.cc:4495
+#: tree-vect-loop.cc:4511
 #, gcc-internal-format
 msgid "vectorization did not happen for a simd loop"
 msgstr ""
 
-#: tree.cc:2266
+#: tree.cc:2238
 #, gcc-internal-format
 msgid "non-constant element in constant CONSTRUCTOR"
 msgstr ""
 
-#: tree.cc:2268
+#: tree.cc:2240
 #, gcc-internal-format
 msgid "side-effects element in no-side-effects CONSTRUCTOR"
 msgstr ""
 
-#: tree.cc:7282 m2/gm2-gcc/m2type.cc:214
+#: tree.cc:7254 m2/gm2-gcc/m2type.cc:214
 #, gcc-internal-format
 msgid "arrays of functions are not meaningful"
 msgstr ""
 
-#: tree.cc:7449
+#: tree.cc:7421
 #, gcc-internal-format
 msgid "function return type cannot be function"
 msgstr ""
 
-#: tree.cc:8909 tree.cc:8994 tree.cc:9057
+#: tree.cc:8881 tree.cc:8966 tree.cc:9029
 #, gcc-internal-format, gfc-internal-format
 msgid "tree check: %s, have %s in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:8946
+#: tree.cc:8918
 #, gcc-internal-format, gfc-internal-format
 msgid "tree check: expected none of %s, have %s in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:8959
+#: tree.cc:8931
 #, gcc-internal-format
 msgid "tree check: expected class %qs, have %qs (%s) in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:9008
+#: tree.cc:8980
 #, gcc-internal-format
 msgid "tree check: did not expect class %qs, have %qs (%s) in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:9021
+#: tree.cc:8993
 #, gcc-internal-format
 msgid "tree check: expected %<omp_clause %s%>, have %qs in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:9083
+#: tree.cc:9055
 #, gcc-internal-format
 msgid ""
 "tree check: expected tree that contains %qs structure, have %qs in %s, at %s:"
 "%d"
 msgstr ""
 
-#: tree.cc:9097
+#: tree.cc:9069
 #, gcc-internal-format
 msgid ""
 "tree check: accessed elt %d of %<tree_int_cst%> with %d elts in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:9110
+#: tree.cc:9082
 #, gcc-internal-format
 msgid ""
 "tree check: accessed elt %d of %<tree_vec%> with %d elts in %s, at %s:%d"
 msgstr ""
 
-#: tree.cc:9123
+#: tree.cc:9095
 #, 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:9136
+#: tree.cc:9108
 #, gcc-internal-format
 msgid ""
 "tree check: accessed operand %d of %<omp_clause %s%> with %d operands in %s, "
 "at %s:%d"
 msgstr ""
 
-#: tree.cc:12377
+#: tree.cc:12349
 #, gcc-internal-format
 msgid "%qD is deprecated: %s"
 msgstr ""
 
-#: tree.cc:12380
+#: tree.cc:12352
 #, gcc-internal-format
 msgid "%qD is deprecated"
 msgstr ""
 
-#: tree.cc:12403
+#: tree.cc:12375
 #, gcc-internal-format
 msgid "%qE is deprecated: %s"
 msgstr ""
 
-#: tree.cc:12406
+#: tree.cc:12378
 #, gcc-internal-format
 msgid "%qE is deprecated"
 msgstr ""
 
-#: tree.cc:12412
+#: tree.cc:12384
 #, gcc-internal-format, gfc-internal-format
 msgid "type is deprecated: %s"
 msgstr ""
 
-#: tree.cc:12415
+#: tree.cc:12387
 #, gcc-internal-format
 msgid "type is deprecated"
 msgstr ""
 
-#: tree.cc:12457
+#: tree.cc:12429
 #, gcc-internal-format
 msgid "%qD is unavailable: %s"
 msgstr ""
 
-#: tree.cc:12459
+#: tree.cc:12431
 #, gcc-internal-format
 msgid "%qD is unavailable"
 msgstr ""
 
-#: tree.cc:12480
+#: tree.cc:12452
 #, gcc-internal-format
 msgid "%qE is unavailable: %s"
 msgstr ""
 
-#: tree.cc:12482
+#: tree.cc:12454
 #, gcc-internal-format
 msgid "%qE is unavailable"
 msgstr ""
 
-#: tree.cc:12487
+#: tree.cc:12459
 #, gcc-internal-format, gfc-internal-format
 msgid "type is unavailable: %s"
 msgstr ""
 
-#: tree.cc:12489
+#: tree.cc:12461
 #, gcc-internal-format
 msgid "type is unavailable"
 msgstr ""
@@ -33659,262 +33695,262 @@ msgstr ""
 #. - vector types may differ by TYPE_VECTOR_OPAQUE
 #.
 #. Convenience macro for matching individual fields.
-#: tree.cc:13386
+#: tree.cc:13371
 #, gcc-internal-format, gfc-internal-format
 msgid "type variant differs by %s"
 msgstr ""
 
-#: tree.cc:13431
+#: tree.cc:13416
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_SIZE_UNIT%>"
 msgstr ""
 
-#: tree.cc:13433
+#: tree.cc:13418
 #, gcc-internal-format
 msgid "type variant%'s %<TYPE_SIZE_UNIT%>"
 msgstr ""
 
-#: tree.cc:13435
+#: tree.cc:13420
 #, gcc-internal-format
 msgid "type%'s %<TYPE_SIZE_UNIT%>"
 msgstr ""
 
-#: tree.cc:13460
+#: tree.cc:13445
 #, gcc-internal-format
 msgid "type variant with %<TYPE_ALIAS_SET_KNOWN_P%>"
 msgstr ""
 
-#: tree.cc:13473
+#: tree.cc:13458
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_VFIELD%>"
 msgstr ""
 
-#: tree.cc:13509
+#: tree.cc:13494
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_BINFO%>"
 msgstr ""
 
-#: tree.cc:13511
+#: tree.cc:13496
 #, gcc-internal-format
 msgid "type variant%'s %<TYPE_BINFO%>"
 msgstr ""
 
-#: tree.cc:13513
+#: tree.cc:13498
 #, gcc-internal-format
 msgid "type%'s %<TYPE_BINFO%>"
 msgstr ""
 
-#: tree.cc:13552
+#: tree.cc:13537
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_FIELDS%>"
 msgstr ""
 
-#: tree.cc:13554
+#: tree.cc:13539
 #, gcc-internal-format
 msgid "first mismatch is field"
 msgstr ""
 
-#: tree.cc:13556
+#: tree.cc:13541
 #, gcc-internal-format
 msgid "and field"
 msgstr ""
 
-#: tree.cc:13573
+#: tree.cc:13558
 #, gcc-internal-format
 msgid "type variant has different %<TREE_TYPE%>"
 msgstr ""
 
-#: tree.cc:13575 tree.cc:13586
+#: tree.cc:13560 tree.cc:13571
 #, gcc-internal-format
 msgid "type variant%'s %<TREE_TYPE%>"
 msgstr ""
 
-#: tree.cc:13577 tree.cc:13588
+#: tree.cc:13562 tree.cc:13573
 #, gcc-internal-format
 msgid "type%'s %<TREE_TYPE%>"
 msgstr ""
 
-#: tree.cc:13584
+#: tree.cc:13569
 #, gcc-internal-format
 msgid "type is not compatible with its variant"
 msgstr ""
 
-#: tree.cc:13909
+#: tree.cc:13894
 #, gcc-internal-format, gfc-internal-format
 msgid "type %s is not an opaque type"
 msgstr ""
 
-#: tree.cc:13915
+#: tree.cc:13900
 #, gcc-internal-format, gfc-internal-format
 msgid "type %s is not with opaque mode"
 msgstr ""
 
-#: tree.cc:13921
+#: tree.cc:13906
 #, gcc-internal-format
 msgid "type %s differs by %<TYPE_MODE%>"
 msgstr ""
 
-#: tree.cc:13929
+#: tree.cc:13914
 #, gcc-internal-format
 msgid "type %s differs by %<TYPE_SIZE%>"
 msgstr ""
 
-#: tree.cc:13935
+#: tree.cc:13920
 #, gcc-internal-format
 msgid "type %s differs by %<TYPE_ALIGN%>"
 msgstr ""
 
-#: tree.cc:13941
+#: tree.cc:13926
 #, gcc-internal-format
 msgid "type %s differs by %<TYPE_USER_ALIGN%>"
 msgstr ""
 
-#: tree.cc:13971
+#: tree.cc:13956
 #, gcc-internal-format
 msgid "main variant is not defined"
 msgstr ""
 
-#: tree.cc:13976
+#: tree.cc:13961
 #, gcc-internal-format
 msgid "%<TYPE_MAIN_VARIANT%> has different %<TYPE_MAIN_VARIANT%>"
 msgstr ""
 
-#: tree.cc:13987
+#: tree.cc:13972
 #, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> has different %<TYPE_CANONICAL%>"
 msgstr ""
 
-#: tree.cc:14006
+#: tree.cc:13991
 #, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> is not compatible"
 msgstr ""
 
-#: tree.cc:14014
+#: tree.cc:13999
 #, gcc-internal-format
 msgid "%<TYPE_MODE%> of %<TYPE_CANONICAL%> is not compatible"
 msgstr ""
 
-#: tree.cc:14020
+#: tree.cc:14005
 #, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> of main variant is not main variant"
 msgstr ""
 
-#: tree.cc:14036
+#: tree.cc:14021
 #, gcc-internal-format
 msgid "%<TYPE_VFIELD%> is not %<FIELD_DECL%> nor %<TREE_LIST%>"
 msgstr ""
 
-#: tree.cc:14046
+#: tree.cc:14031
 #, gcc-internal-format
 msgid "%<TYPE_NEXT_PTR_TO%> is not %<POINTER_TYPE%>"
 msgstr ""
 
-#: tree.cc:14056
+#: tree.cc:14041
 #, gcc-internal-format
 msgid "%<TYPE_NEXT_REF_TO%> is not %<REFERENCE_TYPE%>"
 msgstr ""
 
-#: tree.cc:14077
+#: tree.cc:14062
 #, gcc-internal-format
 msgid "%<TYPE_BINFO%> is not %<TREE_BINFO%>"
 msgstr ""
 
-#: tree.cc:14083
+#: tree.cc:14068
 #, gcc-internal-format
 msgid "%<TYPE_BINFO%> type is not %<TYPE_MAIN_VARIANT%>"
 msgstr ""
 
-#: tree.cc:14094
+#: tree.cc:14079
 #, gcc-internal-format
 msgid "%<TYPE_METHOD_BASETYPE%> is not record nor union"
 msgstr ""
 
-#: tree.cc:14105
+#: tree.cc:14090
 #, gcc-internal-format
 msgid "%<TYPE_OFFSET_BASETYPE%> is not record nor union"
 msgstr ""
 
-#: tree.cc:14123
+#: tree.cc:14108
 #, gcc-internal-format
 msgid "%<TYPE_ARRAY_MAX_SIZE%> not %<INTEGER_CST%>"
 msgstr ""
 
-#: tree.cc:14130
+#: tree.cc:14115
 #, gcc-internal-format
 msgid "%<TYPE_MAX_VALUE_RAW%> non-NULL"
 msgstr ""
 
-#: tree.cc:14137
+#: tree.cc:14122
 #, gcc-internal-format
 msgid "%<TYPE_LANG_SLOT_1 (binfo)%> field is non-NULL"
 msgstr ""
 
-#: tree.cc:14153
+#: tree.cc:14138
 #, gcc-internal-format
 msgid "enum value is not %<CONST_DECL%> or %<INTEGER_CST%>"
 msgstr ""
 
-#: tree.cc:14162
+#: tree.cc:14147
 #, gcc-internal-format
 msgid "enum value type is not %<INTEGER_TYPE%> nor convertible to the enum"
 msgstr ""
 
-#: tree.cc:14170
+#: tree.cc:14155
 #, gcc-internal-format
 msgid "enum value name is not %<IDENTIFIER_NODE%>"
 msgstr ""
 
-#: tree.cc:14180
+#: tree.cc:14165
 #, gcc-internal-format
 msgid "array %<TYPE_DOMAIN%> is not integer type"
 msgstr ""
 
-#: tree.cc:14189
+#: tree.cc:14174
 #, gcc-internal-format
 msgid "%<TYPE_FIELDS%> defined in incomplete type"
 msgstr ""
 
-#: tree.cc:14211
+#: tree.cc:14196
 #, gcc-internal-format
 msgid "wrong tree in %<TYPE_FIELDS%> list"
 msgstr ""
 
-#: tree.cc:14226
+#: tree.cc:14211
 #, gcc-internal-format
 msgid "%<TYPE_CACHED_VALUES_P%> is %i while %<TYPE_CACHED_VALUES%> is %p"
 msgstr ""
 
-#: tree.cc:14233
+#: tree.cc:14218
 #, gcc-internal-format
 msgid "%<TYPE_CACHED_VALUES%> is not %<TREE_VEC%>"
 msgstr ""
 
-#: tree.cc:14246
+#: tree.cc:14231
 #, gcc-internal-format
 msgid "wrong %<TYPE_CACHED_VALUES%> entry"
 msgstr ""
 
-#: tree.cc:14259
+#: tree.cc:14244
 #, gcc-internal-format
 msgid "%<TREE_PURPOSE%> is non-NULL in %<TYPE_ARG_TYPES%> list"
 msgstr ""
 
-#: tree.cc:14265
+#: tree.cc:14250
 #, gcc-internal-format
 msgid "wrong entry in %<TYPE_ARG_TYPES%> list"
 msgstr ""
 
-#: tree.cc:14272
+#: tree.cc:14257
 #, gcc-internal-format
 msgid "%<TYPE_VALUES_RAW%> field is non-NULL"
 msgstr ""
 
-#: tree.cc:14284
+#: tree.cc:14269
 #, gcc-internal-format
 msgid "%<TYPE_CACHED_VALUES_P%> is set while it should not be"
 msgstr ""
 
-#: tree.cc:14294
+#: tree.cc:14279
 #, gcc-internal-format
 msgid "%<TYPE_METHOD_BASETYPE%> is not main variant"
 msgstr ""
@@ -34054,7 +34090,7 @@ msgid ""
 "requested alignment for %q+D is greater than implemented alignment of %wu"
 msgstr ""
 
-#: varasm.cc:2304 c/c-decl.cc:5715 c/c-parser.cc:1789 m2/gm2-gcc/m2type.cc:1259
+#: varasm.cc:2304 c/c-decl.cc:5718 c/c-parser.cc:1789 m2/gm2-gcc/m2type.cc:1259
 #, gcc-internal-format
 msgid "storage size of %q+D isn%'t known"
 msgstr ""
@@ -34307,7 +34343,7 @@ msgid "%qE attribute ignored for field of type %qT"
 msgstr ""
 
 #: c-family/c-attribs.cc:1186 c-family/c-attribs.cc:3262
-#: c-family/c-attribs.cc:5732 ada/gcc-interface/utils.cc:7087
+#: c-family/c-attribs.cc:5736 ada/gcc-interface/utils.cc:7087
 #, gcc-internal-format
 msgid "%qE argument not a string"
 msgstr ""
@@ -34323,8 +34359,8 @@ msgid "%qE attribute ignored. Use %<-fcf-protection%> option to enable it"
 msgstr ""
 
 #: c-family/c-attribs.cc:1438 c-family/c-attribs.cc:1444
-#: c-family/c-attribs.cc:5544 c-family/c-attribs.cc:5590
-#: c-family/c-attribs.cc:5596 ada/gcc-interface/utils.cc:6940
+#: c-family/c-attribs.cc:5548 c-family/c-attribs.cc:5594
+#: c-family/c-attribs.cc:5600 ada/gcc-interface/utils.cc:6940
 #: ada/gcc-interface/utils.cc:6974 ada/gcc-interface/utils.cc:6980
 #, gcc-internal-format
 msgid "%qE attribute ignored due to conflict with %qs attribute"
@@ -34508,7 +34544,7 @@ msgstr ""
 msgid "%qE attribute argument not an integer"
 msgstr ""
 
-#: c-family/c-attribs.cc:2550 c-family/c-attribs.cc:5928
+#: c-family/c-attribs.cc:2550 c-family/c-attribs.cc:5932
 #, gcc-internal-format
 msgid "%qE attribute argument %qE is not an integer constant between 0 and 3"
 msgstr ""
@@ -34699,7 +34735,7 @@ msgid "%qE argument must be one of %qs, %qs, %qs, or %qs"
 msgstr ""
 
 #: c-family/c-attribs.cc:3297 c-family/c-attribs.cc:3893
-#: c-family/c-attribs.cc:5697 c-family/c-attribs.cc:5724
+#: c-family/c-attribs.cc:5701 c-family/c-attribs.cc:5728
 #: config/m32c/m32c.cc:2939 ada/gcc-interface/utils.cc:7073
 #, gcc-internal-format
 msgid "%qE attribute applies only to functions"
@@ -34807,7 +34843,7 @@ msgid ""
 "attribute"
 msgstr ""
 
-#: c-family/c-attribs.cc:3899 c-family/c-attribs.cc:5703
+#: c-family/c-attribs.cc:3899 c-family/c-attribs.cc:5707
 #, gcc-internal-format
 msgid "cannot set %qE attribute after definition"
 msgstr ""
@@ -34918,63 +34954,63 @@ msgstr ""
 msgid "%qE attribute does not apply to functions"
 msgstr ""
 
-#: c-family/c-attribs.cc:4783
+#: c-family/c-attribs.cc:4787
 #, gcc-internal-format
 msgid "attribute %qs mismatch with mode %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:4832
+#: c-family/c-attribs.cc:4836
 #, gcc-internal-format
 msgid ""
 "attribute %qs missing positional argument 2 provided in previous designation "
 "by argument %u"
 msgstr ""
 
-#: c-family/c-attribs.cc:4838
+#: c-family/c-attribs.cc:4842
 #, gcc-internal-format
 msgid "attribute %qs positional argument 2 missing in previous designation"
 msgstr ""
 
-#: c-family/c-attribs.cc:4844
+#: c-family/c-attribs.cc:4848
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 2 conflicts with previous designation by "
 "argument %u"
 msgstr ""
 
-#: c-family/c-attribs.cc:4852
+#: c-family/c-attribs.cc:4856
 #, gcc-internal-format
 msgid "attribute %qs mismatched positional argument values %i and %i"
 msgstr ""
 
-#: c-family/c-attribs.cc:4874
+#: c-family/c-attribs.cc:4878
 #, gcc-internal-format, gfc-internal-format
 msgid "designating the bound of variable length array argument %u"
 msgstr ""
 
-#: c-family/c-attribs.cc:4957
+#: c-family/c-attribs.cc:4961
 #, gcc-internal-format
 msgid "attribute %qE without arguments on a non-prototype"
 msgstr ""
 
-#: c-family/c-attribs.cc:5007
+#: c-family/c-attribs.cc:5011
 #, gcc-internal-format
 msgid "attribute %qE invalid mode"
 msgstr ""
 
-#: c-family/c-attribs.cc:5016
+#: c-family/c-attribs.cc:5020
 #, 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:5043
+#: c-family/c-attribs.cc:5047
 #, gcc-internal-format
 msgid "attribute %qE invalid mode %qs; expected one of %qs, %qs, %qs, or %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:5054
+#: c-family/c-attribs.cc:5058
 #, gcc-internal-format
 msgid ""
 "attribute %qE unexpected %<(%> after mode %qs; expected a positional "
@@ -34985,191 +35021,191 @@ 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:5067
+#: c-family/c-attribs.cc:5071
 #, gcc-internal-format
 msgid "attribute %<%E(%s)%> missing an argument"
 msgstr ""
 
-#: c-family/c-attribs.cc:5108
+#: c-family/c-attribs.cc:5112
 #, gcc-internal-format
 msgid "attribute %<%E(%s, %E, %E)%> invalid positional argument %i"
 msgstr ""
 
-#: c-family/c-attribs.cc:5111
+#: c-family/c-attribs.cc:5115
 #, gcc-internal-format
 msgid "attribute %<%E(%s, %E)%> invalid positional argument %i"
 msgstr ""
 
-#: c-family/c-attribs.cc:5136
+#: c-family/c-attribs.cc:5140
 #, gcc-internal-format
 msgid "attribute %qs positional argument %i invalid value %wi"
 msgstr ""
 
-#: c-family/c-attribs.cc:5140
+#: c-family/c-attribs.cc:5144
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument %i value %wi exceeds number of function "
 "arguments %u"
 msgstr ""
 
-#: c-family/c-attribs.cc:5147
+#: c-family/c-attribs.cc:5151
 #, 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:5155
+#: c-family/c-attribs.cc:5159
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 1 references non-pointer argument type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:5166
+#: c-family/c-attribs.cc:5170
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 1 references argument of function type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:5179
+#: c-family/c-attribs.cc:5183
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 1 references %qs-qualified argument type "
 "%qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:5197
+#: c-family/c-attribs.cc:5201
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 2 references non-integer argument type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:5429
+#: c-family/c-attribs.cc:5433
 #, gcc-internal-format
 msgid "cleanup argument not an identifier"
 msgstr ""
 
-#: c-family/c-attribs.cc:5436
+#: c-family/c-attribs.cc:5440
 #, gcc-internal-format
 msgid "cleanup argument not a function"
 msgstr ""
 
-#: c-family/c-attribs.cc:5473
+#: c-family/c-attribs.cc:5477
 #, gcc-internal-format
 msgid "%qE attribute requires prototypes with named arguments"
 msgstr ""
 
-#: c-family/c-attribs.cc:5481
+#: c-family/c-attribs.cc:5485
 #, gcc-internal-format
 msgid "%qE attribute only applies to variadic functions"
 msgstr ""
 
-#: c-family/c-attribs.cc:5497 ada/gcc-interface/utils.cc:6536
+#: c-family/c-attribs.cc:5501 ada/gcc-interface/utils.cc:6536
 #, gcc-internal-format
 msgid "requested position is not an integer constant"
 msgstr ""
 
-#: c-family/c-attribs.cc:5505 ada/gcc-interface/utils.cc:6543
+#: c-family/c-attribs.cc:5509 ada/gcc-interface/utils.cc:6543
 #, gcc-internal-format
 msgid "requested position is less than zero"
 msgstr ""
 
-#: c-family/c-attribs.cc:5560 ada/gcc-interface/utils.cc:6955
+#: c-family/c-attribs.cc:5564 ada/gcc-interface/utils.cc:6955
 #: d/d-attribs.cc:768
 #, gcc-internal-format
 msgid "empty string in attribute %<target%>"
 msgstr ""
 
 #. The argument must be a constant string.
-#: c-family/c-attribs.cc:5582 config/sh/sh.cc:8549 d/d-attribs.cc:1035
+#: c-family/c-attribs.cc:5586 config/sh/sh.cc:8549 d/d-attribs.cc:1035
 #: d/d-attribs.cc:1109 d/d-attribs.cc:1412 d/d-attribs.cc:1454
 #: d/d-attribs.cc:1516 d/d-attribs.cc:1595
 #, gcc-internal-format
 msgid "%qE attribute argument not a string constant"
 msgstr ""
 
-#: c-family/c-attribs.cc:5749 ada/gcc-interface/utils.cc:7104
+#: c-family/c-attribs.cc:5753 ada/gcc-interface/utils.cc:7104
 #, gcc-internal-format
 msgid "unrecognized %qE attribute argument %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:5767
+#: c-family/c-attribs.cc:5771
 #, gcc-internal-format
 msgid "%qE attribute on a function not returning a pointer"
 msgstr ""
 
-#: c-family/c-attribs.cc:5782
+#: c-family/c-attribs.cc:5786
 #, gcc-internal-format
 msgid "%qE attribute is only valid on %<struct%> type"
 msgstr ""
 
-#: c-family/c-attribs.cc:5830
+#: c-family/c-attribs.cc:5834
 #, gcc-internal-format
 msgid "%qE attribute argument %qE is not an integer constant"
 msgstr ""
 
-#: c-family/c-attribs.cc:5839
+#: c-family/c-attribs.cc:5843
 #, gcc-internal-format
 msgid "%qE attribute argument %qE exceeds %u"
 msgstr ""
 
-#: c-family/c-attribs.cc:5861
+#: c-family/c-attribs.cc:5865
 #, gcc-internal-format
 msgid "%qE attribute may be put on a typedef only; attribute is ignored"
 msgstr ""
 
-#: c-family/c-attribs.cc:5873
+#: c-family/c-attribs.cc:5877
 #, gcc-internal-format
 msgid "%qE attribute is for pointer types only"
 msgstr ""
 
-#: c-family/c-attribs.cc:5892
+#: c-family/c-attribs.cc:5896
 #, gcc-internal-format
 msgid ""
 "%qE is only applicable to Objective-C class interfaces, attribute ignored"
 msgstr ""
 
-#: c-family/c-attribs.cc:5915
+#: c-family/c-attribs.cc:5919
 #, gcc-internal-format
 msgid "%qE cannot be applied to non-pointer type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:5940
+#: c-family/c-attribs.cc:5944
 #, gcc-internal-format
 msgid "%qE attribute argument %qE is not recognised"
 msgstr ""
 
-#: c-family/c-attribs.cc:5955
+#: c-family/c-attribs.cc:5959
 #, gcc-internal-format
 msgid ""
 "%qE attribute ignored; valid only for functions and function pointer fields"
 msgstr ""
 
-#: c-family/c-attribs.cc:5966
+#: c-family/c-attribs.cc:5970
 #, gcc-internal-format
 msgid "%qE attribute ignored; field must be a function pointer"
 msgstr ""
 
-#: c-family/c-attribs.cc:5990
+#: c-family/c-attribs.cc:5994
 #, gcc-internal-format
 msgid "unknown attribute %qE"
 msgstr ""
 
-#: c-family/c-attribs.cc:6017
+#: c-family/c-attribs.cc:6021
 #, gcc-internal-format
 msgid "invalid operand type %qT for %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:6121
+#: c-family/c-attribs.cc:6125
 #, gcc-internal-format
 msgid "%qs attribute not supported for %qT in %<__builtin_has_attribute%>"
 msgstr ""
 
-#: c-family/c-attribs.cc:6123
+#: c-family/c-attribs.cc:6127
 #, gcc-internal-format
 msgid "%qs attribute not supported for %qE in %<__builtin_has_attribute%>"
 msgstr ""
 
-#: c-family/c-attribs.cc:6300
+#: c-family/c-attribs.cc:6304
 #, gcc-internal-format
 msgid "%qs attribute not supported in %<__builtin_has_attribute%>"
 msgstr ""
@@ -35281,529 +35317,529 @@ msgstr ""
 msgid "operation on %qE may be undefined"
 msgstr ""
 
-#: c-family/c-common.cc:2247
+#: c-family/c-common.cc:2252
 #, gcc-internal-format
 msgid "case label does not reduce to an integer constant"
 msgstr ""
 
-#: c-family/c-common.cc:2334
+#: c-family/c-common.cc:2339
 #, 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:2879
+#: c-family/c-common.cc:2884
 #, gcc-internal-format
 msgid "invalid operands to binary %s (have %qT and %qT)"
 msgstr ""
 
-#: c-family/c-common.cc:3128
+#: c-family/c-common.cc:3133
 #, gcc-internal-format
 msgid "comparison is always false due to limited range of data type"
 msgstr ""
 
-#: c-family/c-common.cc:3131
+#: c-family/c-common.cc:3136
 #, gcc-internal-format
 msgid "comparison is always true due to limited range of data type"
 msgstr ""
 
-#: c-family/c-common.cc:3233
+#: c-family/c-common.cc:3238
 #, gcc-internal-format
 msgid "comparison of unsigned expression in %<>= 0%> is always true"
 msgstr ""
 
-#: c-family/c-common.cc:3241
+#: c-family/c-common.cc:3246
 #, gcc-internal-format
 msgid "comparison of unsigned expression in %<< 0%> is always false"
 msgstr ""
 
-#: c-family/c-common.cc:3285
+#: c-family/c-common.cc:3290
 #, gcc-internal-format
 msgid "pointer of type %<void *%> used in arithmetic"
 msgstr ""
 
-#: c-family/c-common.cc:3294
+#: c-family/c-common.cc:3299
 #, gcc-internal-format
 msgid "pointer to a function used in arithmetic"
 msgstr ""
 
-#: c-family/c-common.cc:3511
+#: c-family/c-common.cc:3516
 #, gcc-internal-format
 msgid "enum constant in boolean context"
 msgstr ""
 
-#: c-family/c-common.cc:3541 d/d-convert.cc:149
+#: c-family/c-common.cc:3546 d/d-convert.cc:149
 #, gcc-internal-format
 msgid "the address of %qD will always evaluate as %<true%>"
 msgstr ""
 
-#: c-family/c-common.cc:3586
+#: c-family/c-common.cc:3591
 #, gcc-internal-format
 msgid "%<*%> in boolean context, suggest %<&&%> instead"
 msgstr ""
 
-#: c-family/c-common.cc:3598
+#: c-family/c-common.cc:3603
 #, gcc-internal-format
 msgid "%<<<%> in boolean context, did you mean %<<%>?"
 msgstr ""
 
-#: c-family/c-common.cc:3614
+#: c-family/c-common.cc:3619
 #, gcc-internal-format
 msgid ""
 "%<?:%> using integer constants in boolean context, the expression will "
 "always evaluate to %<true%>"
 msgstr ""
 
-#: c-family/c-common.cc:3623
+#: c-family/c-common.cc:3628
 #, gcc-internal-format
 msgid "%<?:%> using integer constants in boolean context"
 msgstr ""
 
-#: c-family/c-common.cc:3659
+#: c-family/c-common.cc:3664
 #, gcc-internal-format
 msgid ""
 "the compiler can assume that the address of %qD will always evaluate to "
 "%<true%>"
 msgstr ""
 
-#: c-family/c-common.cc:3694 cp/semantics.cc:874 cp/typeck.cc:10358
+#: c-family/c-common.cc:3699 cp/semantics.cc:874 cp/typeck.cc:10364
 #, gcc-internal-format
 msgid "suggest parentheses around assignment used as truth value"
 msgstr ""
 
-#: c-family/c-common.cc:3781 c/c-decl.cc:4842 c/c-decl.cc:7424
-#: c/c-parser.cc:3524 c/c-typeck.cc:16346
+#: c-family/c-common.cc:3786 c/c-decl.cc:4845 c/c-decl.cc:7428
+#: c/c-parser.cc:3523 c/c-typeck.cc:16336
 #, gcc-internal-format
 msgid "invalid use of %<restrict%>"
 msgstr ""
 
-#: c-family/c-common.cc:3855
+#: c-family/c-common.cc:3860
 #, gcc-internal-format
 msgid "invalid application of %<sizeof%> to a function type"
 msgstr ""
 
-#: c-family/c-common.cc:3865
+#: c-family/c-common.cc:3870
 #, gcc-internal-format
 msgid "ISO C++ does not permit %<alignof%> applied to a function type"
 msgstr ""
 
-#: c-family/c-common.cc:3868
+#: c-family/c-common.cc:3873
 #, gcc-internal-format
 msgid "ISO C does not permit %<_Alignof%> applied to a function type"
 msgstr ""
 
-#: c-family/c-common.cc:3879 cp/typeck.cc:2057
+#: c-family/c-common.cc:3884 cp/typeck.cc:2057
 #, gcc-internal-format
 msgid "invalid application of %qs to a void type"
 msgstr ""
 
-#: c-family/c-common.cc:3888
+#: c-family/c-common.cc:3893
 #, gcc-internal-format
 msgid "invalid application of %qs to incomplete type %qT"
 msgstr ""
 
-#: c-family/c-common.cc:3896
+#: c-family/c-common.cc:3901
 #, gcc-internal-format
 msgid "invalid application of %qs to array type %qT of incomplete element type"
 msgstr ""
 
-#: c-family/c-common.cc:3948
+#: c-family/c-common.cc:3953
 #, gcc-internal-format
 msgid "%<__alignof%> applied to a bit-field"
 msgstr ""
 
-#: c-family/c-common.cc:4769
+#: c-family/c-common.cc:4777
 #, gcc-internal-format
 msgid "first argument to %<va_arg%> not of type %<va_list%>"
 msgstr ""
 
-#: c-family/c-common.cc:4889
+#: c-family/c-common.cc:4897
 #, gcc-internal-format
 msgid "cannot disable built-in function %qs"
 msgstr ""
 
-#: c-family/c-common.cc:5081
+#: c-family/c-common.cc:5089
 #, gcc-internal-format
 msgid "pointers are not permitted as case values"
 msgstr ""
 
-#: c-family/c-common.cc:5088
+#: c-family/c-common.cc:5096
 #, gcc-internal-format
 msgid "range expressions in switch statements are non-standard"
 msgstr ""
 
-#: c-family/c-common.cc:5116
+#: c-family/c-common.cc:5124
 #, gcc-internal-format
 msgid "empty range specified"
 msgstr ""
 
-#: c-family/c-common.cc:5168
+#: c-family/c-common.cc:5176
 #, gcc-internal-format
 msgid "duplicate (or overlapping) case value"
 msgstr ""
 
-#: c-family/c-common.cc:5170
+#: c-family/c-common.cc:5178
 #, gcc-internal-format
 msgid "this is the first entry overlapping that value"
 msgstr ""
 
-#: c-family/c-common.cc:5174
+#: c-family/c-common.cc:5182
 #, gcc-internal-format
 msgid "duplicate case value"
 msgstr ""
 
-#: c-family/c-common.cc:5175 c-family/c-warn.cc:2556
+#: c-family/c-common.cc:5183 c-family/c-warn.cc:2578
 #, gcc-internal-format
 msgid "previously used here"
 msgstr ""
 
-#: c-family/c-common.cc:5179
+#: c-family/c-common.cc:5187
 #, gcc-internal-format
 msgid "multiple default labels in one switch"
 msgstr ""
 
-#: c-family/c-common.cc:5181
+#: c-family/c-common.cc:5189
 #, gcc-internal-format
 msgid "this is the first default label"
 msgstr ""
 
-#: c-family/c-common.cc:5293
+#: c-family/c-common.cc:5301
 #, gcc-internal-format
 msgid "taking the address of a label is non-standard"
 msgstr ""
 
-#: c-family/c-common.cc:5471
+#: c-family/c-common.cc:5486
 #, gcc-internal-format
 msgid "requested alignment is not an integer constant"
 msgstr ""
 
-#: c-family/c-common.cc:5479 c-family/c-common.cc:5489
+#: c-family/c-common.cc:5494 c-family/c-common.cc:5504
 #, gcc-internal-format
 msgid "requested alignment %qE is not a positive power of 2"
 msgstr ""
 
-#: c-family/c-common.cc:5499
+#: c-family/c-common.cc:5514
 #, gcc-internal-format
 msgid "requested alignment %qE exceeds object file maximum %u"
 msgstr ""
 
-#: c-family/c-common.cc:5507
+#: c-family/c-common.cc:5522
 #, gcc-internal-format
 msgid "requested alignment %qE exceeds maximum %u"
 msgstr ""
 
-#: c-family/c-common.cc:5682
+#: c-family/c-common.cc:5697
 #, gcc-internal-format
 msgid "not enough variable arguments to fit a sentinel"
 msgstr ""
 
-#: c-family/c-common.cc:5696
+#: c-family/c-common.cc:5711
 #, gcc-internal-format
 msgid "missing sentinel in function call"
 msgstr ""
 
-#: c-family/c-common.cc:5923 c-family/c-common.cc:5973 d/d-attribs.cc:834
+#: c-family/c-common.cc:5938 c-family/c-common.cc:5988 d/d-attribs.cc:834
 #: d/d-attribs.cc:884
 #, gcc-internal-format
 msgid "bad option %qs to attribute %<optimize%>"
 msgstr ""
 
-#: c-family/c-common.cc:5926 c-family/c-common.cc:5977
+#: c-family/c-common.cc:5941 c-family/c-common.cc:5992
 #, gcc-internal-format
 msgid "bad option %qs to pragma %<optimize%>"
 msgstr ""
 
-#: c-family/c-common.cc:6025
+#: c-family/c-common.cc:6040
 #, gcc-internal-format
 msgid "attribute %<fallthrough%> specified multiple times"
 msgstr ""
 
-#: c-family/c-common.cc:6029
+#: c-family/c-common.cc:6044
 #, gcc-internal-format
 msgid "%<fallthrough%> attribute specified with a parameter"
 msgstr ""
 
-#: c-family/c-common.cc:6210 c-family/c-common.cc:7061
-#: c-family/c-common.cc:7108 c-family/c-common.cc:7183
-#: c-family/c-common.cc:7256 config/aarch64/aarch64-sve-builtins.cc:2125
-#: c/c-typeck.cc:3848
+#: c-family/c-common.cc:6225 c-family/c-common.cc:7076
+#: c-family/c-common.cc:7123 c-family/c-common.cc:7198
+#: c-family/c-common.cc:7271 config/aarch64/aarch64-sve-builtins.cc:2125
+#: c/c-typeck.cc:3838
 #, gcc-internal-format
 msgid "too few arguments to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:6215 c-family/c-common.cc:7114
-#: c-family/c-common.cc:7282 config/aarch64/aarch64-sve-builtins.cc:2127
-#: c/c-typeck.cc:3709
+#: c-family/c-common.cc:6230 c-family/c-common.cc:7129
+#: c-family/c-common.cc:7297 config/aarch64/aarch64-sve-builtins.cc:2127
+#: c/c-typeck.cc:3699
 #, gcc-internal-format
 msgid "too many arguments to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:6257
+#: c-family/c-common.cc:6272
 #, gcc-internal-format
 msgid "third argument to function %qE must be a constant integer"
 msgstr ""
 
-#: c-family/c-common.cc:6282
+#: c-family/c-common.cc:6297
 #, 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:6304 c-family/c-common.cc:6348
+#: c-family/c-common.cc:6319 c-family/c-common.cc:6363
 #, gcc-internal-format
 msgid "non-floating-point argument in call to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:6327
+#: c-family/c-common.cc:6342
 #, gcc-internal-format
 msgid "non-floating-point arguments in call to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:6341
+#: c-family/c-common.cc:6356
 #, gcc-internal-format
 msgid "non-const integer argument %u in call to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:6361
+#: c-family/c-common.cc:6376
 #, gcc-internal-format
 msgid "non-integer argument 3 in call to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:6378 c-family/c-common.cc:6428
+#: c-family/c-common.cc:6393 c-family/c-common.cc:6443
 #, gcc-internal-format
 msgid "argument %u in call to function %qE does not have integral type"
 msgstr ""
 
-#: c-family/c-common.cc:6385
+#: c-family/c-common.cc:6400
 #, gcc-internal-format
 msgid ""
 "argument 3 in call to function %qE does not have pointer to integral type"
 msgstr ""
 
-#: c-family/c-common.cc:6391
+#: c-family/c-common.cc:6406
 #, gcc-internal-format
 msgid "argument 3 in call to function %qE has pointer to enumerated type"
 msgstr ""
 
-#: c-family/c-common.cc:6397
+#: c-family/c-common.cc:6412
 #, gcc-internal-format
 msgid "argument 3 in call to function %qE has pointer to boolean type"
 msgstr ""
 
-#: c-family/c-common.cc:6403 c-family/c-common.cc:6410
-#: c-family/c-common.cc:6465 c-family/c-common.cc:6472
+#: c-family/c-common.cc:6418 c-family/c-common.cc:6425
+#: c-family/c-common.cc:6480 c-family/c-common.cc:6487
 #, gcc-internal-format
 msgid "argument %u in call to function %qE has pointer to %qs type (%qT)"
 msgstr ""
 
-#: c-family/c-common.cc:6434
+#: c-family/c-common.cc:6449
 #, gcc-internal-format
 msgid "argument 3 in call to function %qE has enumerated type"
 msgstr ""
 
-#: c-family/c-common.cc:6440
+#: c-family/c-common.cc:6455
 #, gcc-internal-format
 msgid "argument 3 in call to function %qE has boolean type"
 msgstr ""
 
-#: c-family/c-common.cc:6453
+#: c-family/c-common.cc:6468
 #, gcc-internal-format
 msgid "argument %u in call to function %qE does not have pointer type"
 msgstr ""
 
-#: c-family/c-common.cc:6459
+#: c-family/c-common.cc:6474
 #, gcc-internal-format
 msgid "argument %u in call to function %qE points to incomplete type"
 msgstr ""
 
-#: c-family/c-common.cc:6738 rust/backend/rust-tree.cc:3568
+#: c-family/c-common.cc:6753 rust/backend/rust-tree.cc:3553
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to static data member %qD"
 msgstr ""
 
-#: c-family/c-common.cc:6743 rust/backend/rust-tree.cc:3573
+#: c-family/c-common.cc:6758 rust/backend/rust-tree.cc:3558
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> when %<operator[]%> is overloaded"
 msgstr ""
 
-#: c-family/c-common.cc:6750 rust/backend/rust-tree.cc:3580
+#: c-family/c-common.cc:6765 rust/backend/rust-tree.cc:3565
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to a non constant address"
 msgstr ""
 
-#: c-family/c-common.cc:6763 rust/backend/rust-tree.cc:3593
+#: c-family/c-common.cc:6778 rust/backend/rust-tree.cc:3578
 #, gcc-internal-format
 msgid "attempt to take address of bit-field structure member %qD"
 msgstr ""
 
-#: c-family/c-common.cc:6816 rust/backend/rust-tree.cc:3645
+#: c-family/c-common.cc:6831 rust/backend/rust-tree.cc:3630
 #, gcc-internal-format
 msgid "index %E denotes an offset greater than size of %qT"
 msgstr ""
 
-#: c-family/c-common.cc:6977
+#: c-family/c-common.cc:6992
 #, gcc-internal-format
 msgid "size of array is too large"
 msgstr ""
 
-#: c-family/c-common.cc:7091 c-family/c-common.cc:7215
+#: c-family/c-common.cc:7106 c-family/c-common.cc:7230
 #, gcc-internal-format
 msgid "operand type %qT is incompatible with argument %d of %qE"
 msgstr ""
 
-#: c-family/c-common.cc:7125
+#: c-family/c-common.cc:7140
 #, gcc-internal-format
 msgid "expecting argument of type pointer or of type integer for argument 1"
 msgstr ""
 
-#: c-family/c-common.cc:7141
+#: c-family/c-common.cc:7156
 #, gcc-internal-format
 msgid "both arguments must be compatible"
 msgstr ""
 
-#: c-family/c-common.cc:7357
+#: c-family/c-common.cc:7372
 #, gcc-internal-format
 msgid "incorrect number of arguments to function %qE"
 msgstr ""
 
-#: c-family/c-common.cc:7371
+#: c-family/c-common.cc:7386
 #, gcc-internal-format
 msgid "argument 1 of %qE must be a non-void pointer type"
 msgstr ""
 
-#: c-family/c-common.cc:7378
+#: c-family/c-common.cc:7393
 #, gcc-internal-format
 msgid "argument 1 of %qE must be a pointer to a complete type"
 msgstr ""
 
-#: c-family/c-common.cc:7387
+#: c-family/c-common.cc:7402
 #, gcc-internal-format
 msgid "argument 1 of %qE must be a pointer to a constant size type"
 msgstr ""
 
-#: c-family/c-common.cc:7398
+#: c-family/c-common.cc:7413
 #, gcc-internal-format
 msgid "argument 1 of %qE must be a pointer to a nonzero size object"
 msgstr ""
 
-#: c-family/c-common.cc:7419
+#: c-family/c-common.cc:7434
 #, gcc-internal-format
 msgid "argument %d of %qE must be a pointer type"
 msgstr ""
 
-#: c-family/c-common.cc:7427
+#: c-family/c-common.cc:7442
 #, gcc-internal-format
 msgid "argument %d of %qE must be a pointer to a constant size type"
 msgstr ""
 
-#: c-family/c-common.cc:7433
+#: c-family/c-common.cc:7448
 #, gcc-internal-format
 msgid "argument %d of %qE must not be a pointer to a function"
 msgstr ""
 
-#: c-family/c-common.cc:7441
+#: c-family/c-common.cc:7456
 #, gcc-internal-format
 msgid "size mismatch in argument %d of %qE"
 msgstr ""
 
-#: c-family/c-common.cc:7454
+#: c-family/c-common.cc:7469
 #, gcc-internal-format
 msgid "argument %d of %qE must not be a pointer to a %<const%> type"
 msgstr ""
 
-#: c-family/c-common.cc:7459
+#: c-family/c-common.cc:7474
 #, gcc-internal-format
 msgid "argument %d of %qE discards %<const%> qualifier"
 msgstr ""
 
-#: c-family/c-common.cc:7468
+#: c-family/c-common.cc:7483
 #, gcc-internal-format
 msgid "argument %d of %qE must not be a pointer to a %<volatile%> type"
 msgstr ""
 
-#: c-family/c-common.cc:7473
+#: c-family/c-common.cc:7488
 #, gcc-internal-format
 msgid "argument %d of %qE discards %<volatile%> qualifier"
 msgstr ""
 
-#: c-family/c-common.cc:7486
+#: c-family/c-common.cc:7501
 #, gcc-internal-format
 msgid "non-integer memory model argument %d of %qE"
 msgstr ""
 
-#: c-family/c-common.cc:7499
+#: c-family/c-common.cc:7514
 #, gcc-internal-format
 msgid "invalid memory model argument %d of %qE"
 msgstr ""
 
-#: c-family/c-common.cc:7900
+#: c-family/c-common.cc:7915
 #, 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:8538
+#: c-family/c-common.cc:8553
 #, gcc-internal-format
 msgid "index value is out of bound"
 msgstr ""
 
-#: c-family/c-common.cc:8580 c-family/c-common.cc:8629
-#: c-family/c-common.cc:8645
+#: c-family/c-common.cc:8595 c-family/c-common.cc:8644
+#: c-family/c-common.cc:8660
 #, 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:8733 rust/backend/rust-tree.cc:3464
+#: c-family/c-common.cc:8748 rust/backend/rust-tree.cc:3449
 #, gcc-internal-format
 msgid "built-in function %qE must be directly called"
 msgstr ""
 
-#: c-family/c-common.cc:8753
+#: c-family/c-common.cc:8768
 #, gcc-internal-format
 msgid "size of array %qE is not a constant expression"
 msgstr ""
 
-#: c-family/c-common.cc:8756
+#: c-family/c-common.cc:8771
 #, gcc-internal-format
 msgid "size of array is not a constant expression"
 msgstr ""
 
-#: c-family/c-common.cc:8760
+#: c-family/c-common.cc:8775
 #, gcc-internal-format
 msgid "size %qE of array %qE is negative"
 msgstr ""
 
-#: c-family/c-common.cc:8763
+#: c-family/c-common.cc:8778
 #, gcc-internal-format
 msgid "size %qE of array is negative"
 msgstr ""
 
-#: c-family/c-common.cc:8768
+#: c-family/c-common.cc:8783
 #, gcc-internal-format
 msgid "size %qE of array %qE exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.cc:8771
+#: c-family/c-common.cc:8786
 #, gcc-internal-format
 msgid "size %qE of array exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.cc:8776
+#: c-family/c-common.cc:8791
 #, gcc-internal-format
 msgid "size of array %qE exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.cc:8779
+#: c-family/c-common.cc:8794
 #, gcc-internal-format
 msgid "size of array exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.cc:8850
+#: c-family/c-common.cc:8865
 #, gcc-internal-format
 msgid ""
 "environment variable %qs must expand to a non-negative integer less than or "
@@ -36495,17 +36531,17 @@ msgstr ""
 msgid "repeated %<@%> before Objective-C string"
 msgstr ""
 
-#: c-family/c-lex.cc:1343 c/c-parser.cc:7909
+#: c-family/c-lex.cc:1343 c/c-parser.cc:7908
 #, gcc-internal-format
 msgid "unsupported non-standard concatenation of string literals"
 msgstr ""
 
-#: c-family/c-lex.cc:1379 c/c-parser.cc:7930
+#: c-family/c-lex.cc:1379 c/c-parser.cc:7929
 #, gcc-internal-format
 msgid "traditional C rejects string constant concatenation"
 msgstr ""
 
-#: c-family/c-omp.cc:130 cp/pt.cc:19447
+#: c-family/c-omp.cc:130 cp/pt.cc:19559
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp critical%> with %<hint%> clause requires a name, except when "
@@ -36565,7 +36601,7 @@ msgstr ""
 msgid "%<iterator%> modifier may not be specified on %<depobj%> construct"
 msgstr ""
 
-#: c-family/c-omp.cc:969 cp/semantics.cc:10604
+#: c-family/c-omp.cc:969 cp/semantics.cc:10612
 #, gcc-internal-format
 msgid "invalid type for iteration variable %qE"
 msgstr ""
@@ -36580,17 +36616,17 @@ msgstr ""
 msgid "%qE is not initialized"
 msgstr ""
 
-#: c-family/c-omp.cc:1011 cp/semantics.cc:10493
+#: c-family/c-omp.cc:1011 cp/semantics.cc:10501
 #, gcc-internal-format
 msgid "missing controlling predicate"
 msgstr ""
 
-#: c-family/c-omp.cc:1117 cp/semantics.cc:10109
+#: c-family/c-omp.cc:1117 cp/semantics.cc:10117
 #, gcc-internal-format
 msgid "invalid controlling predicate"
 msgstr ""
 
-#: c-family/c-omp.cc:1124 cp/semantics.cc:10499
+#: c-family/c-omp.cc:1124 cp/semantics.cc:10507
 #, gcc-internal-format
 msgid "missing increment expression"
 msgstr ""
@@ -36600,7 +36636,7 @@ msgstr ""
 msgid "increment is not constant 1 or -1 for %<!=%> condition"
 msgstr ""
 
-#: c-family/c-omp.cc:1255 cp/semantics.cc:10226
+#: c-family/c-omp.cc:1255 cp/semantics.cc:10234
 #, gcc-internal-format
 msgid "invalid increment expression"
 msgstr ""
@@ -36676,7 +36712,7 @@ msgid ""
 "%<for simd%>, %<parallel for%>, %<parallel for simd%>"
 msgstr ""
 
-#: c-family/c-omp.cc:2756 c/c-typeck.cc:16159 cp/semantics.cc:9221
+#: c-family/c-omp.cc:2756 c/c-typeck.cc:16149 cp/semantics.cc:9229
 #, gcc-internal-format
 msgid ""
 "%qD specified in %<allocate%> clause but not in an explicit privatization "
@@ -36785,12 +36821,12 @@ msgstr ""
 msgid "the %qs debug info cannot be used with pre-compiled headers"
 msgstr ""
 
-#: c-family/c-opts.cc:1292 d/d-lang.cc:1285
+#: c-family/c-opts.cc:1292 d/d-lang.cc:1274
 #, gcc-internal-format
 msgid "opening dependency file %s: %m"
 msgstr ""
 
-#: c-family/c-opts.cc:1309 d/d-lang.cc:1298
+#: c-family/c-opts.cc:1309 d/d-lang.cc:1287
 #, gcc-internal-format
 msgid "closing dependency file %s: %m"
 msgstr ""
@@ -37255,903 +37291,903 @@ msgstr ""
 msgid "wrong type argument to %s"
 msgstr ""
 
-#: c-family/c-warn.cc:58 c-family/c-warn.cc:71 cp/constexpr.cc:3382
-#: cp/constexpr.cc:6958 m2/gm2-gcc/m2expr.cc:934
-#: rust/backend/rust-constexpr.cc:1907 rust/backend/rust-constexpr.cc:4339
+#: c-family/c-warn.cc:59 c-family/c-warn.cc:72 cp/constexpr.cc:3369
+#: cp/constexpr.cc:6946 m2/gm2-gcc/m2expr.cc:935
+#: rust/backend/rust-constexpr.cc:1905 rust/backend/rust-constexpr.cc:4327
 #, gcc-internal-format
 msgid "overflow in constant expression"
 msgstr ""
 
-#: c-family/c-warn.cc:98
+#: c-family/c-warn.cc:99
 #, gcc-internal-format
 msgid "integer overflow in expression %qE of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:100
+#: c-family/c-warn.cc:101
 #, gcc-internal-format
 msgid "integer overflow in expression of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:106
+#: c-family/c-warn.cc:107
 #, gcc-internal-format
 msgid "floating point overflow in expression %qE of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:108
+#: c-family/c-warn.cc:109
 #, gcc-internal-format
 msgid "floating point overflow in expression of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:114
+#: c-family/c-warn.cc:115
 #, gcc-internal-format
 msgid "fixed-point overflow in expression %qE of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:116
+#: c-family/c-warn.cc:117
 #, gcc-internal-format
 msgid "fixed-point overflow in expression of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:122
+#: c-family/c-warn.cc:123
 #, gcc-internal-format
 msgid "vector overflow in expression %qE of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:124
+#: c-family/c-warn.cc:125
 #, gcc-internal-format
 msgid "vector overflow in expression of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:131
+#: c-family/c-warn.cc:132
 #, gcc-internal-format
 msgid "complex integer overflow in expression %qE of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:133
+#: c-family/c-warn.cc:134
 #, gcc-internal-format
 msgid "complex integer overflow in expression of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:137
+#: c-family/c-warn.cc:138
 #, gcc-internal-format
 msgid ""
 "complex floating point overflow in expression %qE of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:139
+#: c-family/c-warn.cc:140
 #, gcc-internal-format
 msgid ""
 "complex floating point overflow in expression of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:231
+#: c-family/c-warn.cc:232
 #, gcc-internal-format
 msgid "logical %<or%> applied to non-boolean constant"
 msgstr ""
 
-#: c-family/c-warn.cc:235
+#: c-family/c-warn.cc:236
 #, gcc-internal-format
 msgid "logical %<and%> applied to non-boolean constant"
 msgstr ""
 
-#: c-family/c-warn.cc:305
+#: c-family/c-warn.cc:306
 #, gcc-internal-format
 msgid "logical %<or%> of collectively exhaustive tests is always true"
 msgstr ""
 
-#: c-family/c-warn.cc:309
+#: c-family/c-warn.cc:310
 #, gcc-internal-format
 msgid "logical %<and%> of mutually exclusive tests is always false"
 msgstr ""
 
-#: c-family/c-warn.cc:319
+#: c-family/c-warn.cc:320
 #, gcc-internal-format
 msgid "logical %<or%> of equal expressions"
 msgstr ""
 
-#: c-family/c-warn.cc:322
+#: c-family/c-warn.cc:323
 #, gcc-internal-format
 msgid "logical %<and%> of equal expressions"
 msgstr ""
 
-#: c-family/c-warn.cc:408
+#: c-family/c-warn.cc:409
 #, gcc-internal-format
 msgid "bitwise comparison always evaluates to false"
 msgstr ""
 
-#: c-family/c-warn.cc:411
+#: c-family/c-warn.cc:412
 #, gcc-internal-format
 msgid "bitwise comparison always evaluates to true"
 msgstr ""
 
-#: c-family/c-warn.cc:516
+#: c-family/c-warn.cc:517
 #, gcc-internal-format
 msgid "self-comparison always evaluates to true"
 msgstr ""
 
-#: c-family/c-warn.cc:519
+#: c-family/c-warn.cc:520
 #, gcc-internal-format
 msgid "self-comparison always evaluates to false"
 msgstr ""
 
-#: c-family/c-warn.cc:570
+#: c-family/c-warn.cc:571
 #, gcc-internal-format
 msgid "logical not is only applied to the left hand side of comparison"
 msgstr ""
 
-#: c-family/c-warn.cc:578
+#: c-family/c-warn.cc:579
 #, gcc-internal-format
 msgid ""
 "add parentheses around left hand side expression to silence this warning"
 msgstr ""
 
-#: c-family/c-warn.cc:721
+#: c-family/c-warn.cc:722
 #, gcc-internal-format
 msgid "type-punning to incomplete type might break strict-aliasing rules"
 msgstr ""
 
-#: c-family/c-warn.cc:739
+#: c-family/c-warn.cc:740
 #, gcc-internal-format
 msgid "dereferencing type-punned pointer will break strict-aliasing rules"
 msgstr ""
 
-#: c-family/c-warn.cc:747 c-family/c-warn.cc:765
+#: c-family/c-warn.cc:748 c-family/c-warn.cc:766
 #, gcc-internal-format
 msgid "dereferencing type-punned pointer might break strict-aliasing rules"
 msgstr ""
 
-#: c-family/c-warn.cc:912
+#: c-family/c-warn.cc:913
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same expression as the source; did "
 "you mean to use the size of the destination?"
 msgstr ""
 
-#: c-family/c-warn.cc:943
+#: c-family/c-warn.cc:944
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same expression as the "
 "destination; did you mean to remove the addressof?"
 msgstr ""
 
-#: c-family/c-warn.cc:950
+#: c-family/c-warn.cc:951
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same expression as the "
 "destination; did you mean to provide an explicit length?"
 msgstr ""
 
-#: c-family/c-warn.cc:955
+#: c-family/c-warn.cc:956
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same expression as the "
 "destination; did you mean to dereference it?"
 msgstr ""
 
-#: c-family/c-warn.cc:967
+#: c-family/c-warn.cc:968
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same pointer type %qT as the "
 "destination; expected %qT or an explicit length"
 msgstr ""
 
-#: c-family/c-warn.cc:983
+#: c-family/c-warn.cc:984
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same expression as the source; did "
 "you mean to remove the addressof?"
 msgstr ""
 
-#: c-family/c-warn.cc:990
+#: c-family/c-warn.cc:991
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same expression as the source; did "
 "you mean to provide an explicit length?"
 msgstr ""
 
-#: c-family/c-warn.cc:995
+#: c-family/c-warn.cc:996
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same expression as the source; did "
 "you mean to dereference it?"
 msgstr ""
 
-#: c-family/c-warn.cc:1007
+#: c-family/c-warn.cc:1008
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same pointer type %qT as the "
 "source; expected %qT or an explicit length"
 msgstr ""
 
-#: c-family/c-warn.cc:1023
+#: c-family/c-warn.cc:1024
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same expression as the first "
 "source; did you mean to remove the addressof?"
 msgstr ""
 
-#: c-family/c-warn.cc:1030
+#: c-family/c-warn.cc:1031
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same expression as the first "
 "source; did you mean to provide an explicit length?"
 msgstr ""
 
-#: c-family/c-warn.cc:1035
+#: c-family/c-warn.cc:1036
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same expression as the first "
 "source; did you mean to dereference it?"
 msgstr ""
 
-#: c-family/c-warn.cc:1047
+#: c-family/c-warn.cc:1048
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same pointer type %qT as the first "
 "source; expected %qT or an explicit length"
 msgstr ""
 
-#: c-family/c-warn.cc:1063
+#: c-family/c-warn.cc:1064
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same expression as the second "
 "source; did you mean to remove the addressof?"
 msgstr ""
 
-#: c-family/c-warn.cc:1070
+#: c-family/c-warn.cc:1071
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same expression as the second "
 "source; did you mean to provide an explicit length?"
 msgstr ""
 
-#: c-family/c-warn.cc:1075
+#: c-family/c-warn.cc:1076
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same expression as the second "
 "source; did you mean to dereference it?"
 msgstr ""
 
-#: c-family/c-warn.cc:1087
+#: c-family/c-warn.cc:1088
 #, gcc-internal-format
 msgid ""
 "argument to %<sizeof%> in %qD call is the same pointer type %qT as the "
 "second source; expected %qT or an explicit length"
 msgstr ""
 
-#: c-family/c-warn.cc:1116 c-family/c-warn.cc:1123
+#: c-family/c-warn.cc:1117 c-family/c-warn.cc:1124
 #, gcc-internal-format
 msgid "%<_Atomic%>-qualified parameter type %qT of %q+D"
 msgstr ""
 
-#: c-family/c-warn.cc:1133
+#: c-family/c-warn.cc:1134
 #, gcc-internal-format
 msgid "first argument of %q+D should be %<int%>"
 msgstr ""
 
-#: c-family/c-warn.cc:1142
+#: c-family/c-warn.cc:1143
 #, gcc-internal-format
 msgid "second argument of %q+D should be %<char **%>"
 msgstr ""
 
-#: c-family/c-warn.cc:1151
+#: c-family/c-warn.cc:1152
 #, gcc-internal-format
 msgid "third argument of %q+D should probably be %<char **%>"
 msgstr ""
 
-#: c-family/c-warn.cc:1162
+#: c-family/c-warn.cc:1163
 #, gcc-internal-format
 msgid "%q+D takes only zero or two arguments"
 msgstr ""
 
-#: c-family/c-warn.cc:1166
+#: c-family/c-warn.cc:1167
 #, gcc-internal-format
 msgid "%q+D declared as variadic function"
 msgstr ""
 
-#: c-family/c-warn.cc:1209 m2/gm2-gcc/m2convert.cc:191
+#: c-family/c-warn.cc:1210 m2/gm2-gcc/m2convert.cc:191
 #, gcc-internal-format
 msgid "conversion to %qT from boolean expression"
 msgstr ""
 
-#: c-family/c-warn.cc:1234 c-family/c-warn.cc:1438
+#: c-family/c-warn.cc:1235 c-family/c-warn.cc:1439
 #, gcc-internal-format
 msgid "unsigned conversion from %qT to %qT changes value from %qE to %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1239 c-family/c-warn.cc:1446
+#: c-family/c-warn.cc:1240 c-family/c-warn.cc:1447
 #, gcc-internal-format
 msgid "unsigned conversion from %qT to %qT changes the value of %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1247
+#: c-family/c-warn.cc:1248
 #, gcc-internal-format
 msgid "signed conversion from %qT to %qT changes value from %qE to %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1252
+#: c-family/c-warn.cc:1253
 #, gcc-internal-format
 msgid "signed conversion from %qT to %qT changes the value of %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1259 c-family/c-warn.cc:1436
+#: c-family/c-warn.cc:1260 c-family/c-warn.cc:1437
 #, gcc-internal-format
 msgid "conversion from %qT to %qT changes value from %qE to %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1263 c-family/c-warn.cc:1444
+#: c-family/c-warn.cc:1264 c-family/c-warn.cc:1445
 #, gcc-internal-format
 msgid "conversion from %qT to %qT changes the value of %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1374
+#: c-family/c-warn.cc:1375
 #, gcc-internal-format
 msgid "conversion to %qT from %qT may change the sign of the result"
 msgstr ""
 
-#: c-family/c-warn.cc:1379
+#: c-family/c-warn.cc:1380
 #, gcc-internal-format
 msgid "conversion from %qT to %qT discards imaginary component"
 msgstr ""
 
-#: c-family/c-warn.cc:1383
+#: c-family/c-warn.cc:1384
 #, gcc-internal-format
 msgid "conversion from %qT to %qT may change value"
 msgstr ""
 
-#: c-family/c-warn.cc:1457 c-family/c-warn.cc:1474 c-family/c-warn.cc:1491
+#: c-family/c-warn.cc:1458 c-family/c-warn.cc:1475 c-family/c-warn.cc:1492
 #, gcc-internal-format
 msgid "overflow in conversion from %qT to %qT changes value from %qE to %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1462 c-family/c-warn.cc:1479 c-family/c-warn.cc:1496
+#: c-family/c-warn.cc:1463 c-family/c-warn.cc:1480 c-family/c-warn.cc:1497
 #, gcc-internal-format
 msgid "overflow in conversion from %qT to %qT changes the value of %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1526
+#: c-family/c-warn.cc:1527
 #, gcc-internal-format
 msgid "case value %qs not in enumerated type"
 msgstr ""
 
-#: c-family/c-warn.cc:1531
+#: c-family/c-warn.cc:1532
 #, gcc-internal-format
 msgid "case value %qs not in enumerated type %qT"
 msgstr ""
 
-#: c-family/c-warn.cc:1611
+#: c-family/c-warn.cc:1612
 #, gcc-internal-format
 msgid "lower value in case label range less than minimum value for type"
 msgstr ""
 
-#: c-family/c-warn.cc:1625
+#: c-family/c-warn.cc:1626
 #, gcc-internal-format
 msgid "case label value is less than minimum value for type"
 msgstr ""
 
-#: c-family/c-warn.cc:1642
+#: c-family/c-warn.cc:1643
 #, gcc-internal-format
 msgid "upper value in case label range exceeds maximum value for type"
 msgstr ""
 
-#: c-family/c-warn.cc:1655
+#: c-family/c-warn.cc:1656
 #, gcc-internal-format
 msgid "case label value exceeds maximum value for type"
 msgstr ""
 
-#: c-family/c-warn.cc:1668
+#: c-family/c-warn.cc:1669
 #, gcc-internal-format
 msgid "switch missing default case"
 msgstr ""
 
-#: c-family/c-warn.cc:1713
+#: c-family/c-warn.cc:1714
 #, gcc-internal-format
 msgid "switch condition has boolean value"
 msgstr ""
 
-#: c-family/c-warn.cc:1802
+#: c-family/c-warn.cc:1803
 #, gcc-internal-format
 msgid "enumeration value %qE not handled in switch"
 msgstr ""
 
-#: c-family/c-warn.cc:1830
+#: c-family/c-warn.cc:1831
 #, gcc-internal-format
 msgid ""
 "the omitted middle operand in %<?:%> will always be %<true%>, suggest "
 "explicit middle operand"
 msgstr ""
 
-#: c-family/c-warn.cc:1852
+#: c-family/c-warn.cc:1853
 #, gcc-internal-format
 msgid "assignment of member %qD in read-only object"
 msgstr ""
 
-#: c-family/c-warn.cc:1854
+#: c-family/c-warn.cc:1855
 #, gcc-internal-format
 msgid "increment of member %qD in read-only object"
 msgstr ""
 
-#: c-family/c-warn.cc:1856
+#: c-family/c-warn.cc:1857
 #, gcc-internal-format
 msgid "decrement of member %qD in read-only object"
 msgstr ""
 
-#: c-family/c-warn.cc:1858
+#: c-family/c-warn.cc:1859
 #, gcc-internal-format
 msgid "member %qD in read-only object used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.cc:1862
+#: c-family/c-warn.cc:1863
 #, gcc-internal-format
 msgid "assignment of read-only member %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1863
+#: c-family/c-warn.cc:1864
 #, gcc-internal-format
 msgid "increment of read-only member %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1864
+#: c-family/c-warn.cc:1865
 #, gcc-internal-format
 msgid "decrement of read-only member %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1865
+#: c-family/c-warn.cc:1866
 #, gcc-internal-format
 msgid "read-only member %qD used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.cc:1869
+#: c-family/c-warn.cc:1870
 #, gcc-internal-format
 msgid "assignment of read-only variable %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1870
+#: c-family/c-warn.cc:1871
 #, gcc-internal-format
 msgid "increment of read-only variable %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1871
+#: c-family/c-warn.cc:1872
 #, gcc-internal-format
 msgid "decrement of read-only variable %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1872
+#: c-family/c-warn.cc:1873
 #, gcc-internal-format
 msgid "read-only variable %qD used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.cc:1875
+#: c-family/c-warn.cc:1876
 #, gcc-internal-format
 msgid "assignment of read-only parameter %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1876
+#: c-family/c-warn.cc:1877
 #, gcc-internal-format
 msgid "increment of read-only parameter %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1877
+#: c-family/c-warn.cc:1878
 #, gcc-internal-format
 msgid "decrement of read-only parameter %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1878
+#: c-family/c-warn.cc:1879
 #, gcc-internal-format
 msgid "read-only parameter %qD use as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.cc:1883
+#: c-family/c-warn.cc:1884
 #, gcc-internal-format
 msgid "assignment of read-only named return value %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1885
+#: c-family/c-warn.cc:1886
 #, gcc-internal-format
 msgid "increment of read-only named return value %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1887
+#: c-family/c-warn.cc:1888
 #, gcc-internal-format
 msgid "decrement of read-only named return value %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1889
+#: c-family/c-warn.cc:1890
 #, gcc-internal-format
 msgid "read-only named return value %qD used as %<asm%>output"
 msgstr ""
 
-#: c-family/c-warn.cc:1894
+#: c-family/c-warn.cc:1895
 #, gcc-internal-format
 msgid "assignment of function %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1895
+#: c-family/c-warn.cc:1896
 #, gcc-internal-format
 msgid "increment of function %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1896
+#: c-family/c-warn.cc:1897
 #, gcc-internal-format
 msgid "decrement of function %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:1897
+#: c-family/c-warn.cc:1898
 #, gcc-internal-format
 msgid "function %qD used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.cc:1900 c/c-typeck.cc:5139
+#: c-family/c-warn.cc:1901 c/c-typeck.cc:5129
 #, gcc-internal-format
 msgid "assignment of read-only location %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1901 c/c-typeck.cc:5142
+#: c-family/c-warn.cc:1902 c/c-typeck.cc:5132
 #, gcc-internal-format
 msgid "increment of read-only location %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1902 c/c-typeck.cc:5145
+#: c-family/c-warn.cc:1903 c/c-typeck.cc:5135
 #, gcc-internal-format
 msgid "decrement of read-only location %qE"
 msgstr ""
 
-#: c-family/c-warn.cc:1903
+#: c-family/c-warn.cc:1904
 #, gcc-internal-format
 msgid "read-only location %qE used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.cc:1917 rust/backend/rust-tree.cc:5954
+#: c-family/c-warn.cc:1918 rust/backend/rust-tree.cc:5931
 #, gcc-internal-format
 msgid "lvalue required as left operand of assignment"
 msgstr ""
 
-#: c-family/c-warn.cc:1920 rust/backend/rust-tree.cc:5957
+#: c-family/c-warn.cc:1921 rust/backend/rust-tree.cc:5934
 #, gcc-internal-format
 msgid "lvalue required as increment operand"
 msgstr ""
 
-#: c-family/c-warn.cc:1923 rust/backend/rust-tree.cc:5960
+#: c-family/c-warn.cc:1924 rust/backend/rust-tree.cc:5937
 #, gcc-internal-format
 msgid "lvalue required as decrement operand"
 msgstr ""
 
-#: c-family/c-warn.cc:1926 rust/backend/rust-tree.cc:5963
+#: c-family/c-warn.cc:1927 rust/backend/rust-tree.cc:5940
 #, gcc-internal-format
 msgid "lvalue required as unary %<&%> operand"
 msgstr ""
 
-#: c-family/c-warn.cc:1929 rust/backend/rust-tree.cc:5966
+#: c-family/c-warn.cc:1930 rust/backend/rust-tree.cc:5943
 #, gcc-internal-format
 msgid "lvalue required in %<asm%> statement"
 msgstr ""
 
-#: c-family/c-warn.cc:1946
+#: c-family/c-warn.cc:1947
 #, gcc-internal-format
 msgid "invalid type argument (have %qT)"
 msgstr ""
 
-#: c-family/c-warn.cc:1950
+#: c-family/c-warn.cc:1951
 #, gcc-internal-format
 msgid "invalid type argument of array indexing (have %qT)"
 msgstr ""
 
-#: c-family/c-warn.cc:1955
+#: c-family/c-warn.cc:1956
 #, gcc-internal-format
 msgid "invalid type argument of unary %<*%> (have %qT)"
 msgstr ""
 
-#: c-family/c-warn.cc:1960
+#: c-family/c-warn.cc:1961
 #, gcc-internal-format
 msgid "invalid type argument of %<->%> (have %qT)"
 msgstr ""
 
-#: c-family/c-warn.cc:1965
+#: c-family/c-warn.cc:1966
 #, gcc-internal-format
 msgid "invalid type argument of %<->*%> (have %qT)"
 msgstr ""
 
-#: c-family/c-warn.cc:1970
+#: c-family/c-warn.cc:1971
 #, gcc-internal-format
 msgid "invalid type argument of implicit conversion (have %qT)"
 msgstr ""
 
-#: c-family/c-warn.cc:1997
+#: c-family/c-warn.cc:1998
 #, gcc-internal-format
 msgid "array subscript has type %<char%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2033 c-family/c-warn.cc:2036
+#: c-family/c-warn.cc:2034 c-family/c-warn.cc:2037
 #, gcc-internal-format
 msgid "suggest parentheses around %<+%> inside %<<<%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2039 c-family/c-warn.cc:2042
+#: c-family/c-warn.cc:2040 c-family/c-warn.cc:2043
 #, gcc-internal-format
 msgid "suggest parentheses around %<-%> inside %<<<%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2048 c-family/c-warn.cc:2051
+#: c-family/c-warn.cc:2049 c-family/c-warn.cc:2052
 #, gcc-internal-format
 msgid "suggest parentheses around %<+%> inside %<>>%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2054 c-family/c-warn.cc:2057
+#: c-family/c-warn.cc:2055 c-family/c-warn.cc:2058
 #, gcc-internal-format
 msgid "suggest parentheses around %<-%> inside %<>>%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2063 c-family/c-warn.cc:2066
+#: c-family/c-warn.cc:2064 c-family/c-warn.cc:2067
 #, gcc-internal-format
 msgid "suggest parentheses around %<&&%> within %<||%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2073 c-family/c-warn.cc:2077
+#: c-family/c-warn.cc:2074 c-family/c-warn.cc:2078
 #, gcc-internal-format
 msgid "suggest parentheses around arithmetic in operand of %<|%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2081 c-family/c-warn.cc:2084
+#: c-family/c-warn.cc:2082 c-family/c-warn.cc:2085
 #, gcc-internal-format
 msgid "suggest parentheses around comparison in operand of %<|%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2089
+#: c-family/c-warn.cc:2090
 #, gcc-internal-format
 msgid ""
 "suggest parentheses around operand of %<!%> or change %<|%> to %<||%> or %<!"
 "%> to %<~%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2097 c-family/c-warn.cc:2101
+#: c-family/c-warn.cc:2098 c-family/c-warn.cc:2102
 #, gcc-internal-format
 msgid "suggest parentheses around arithmetic in operand of %<^%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2105 c-family/c-warn.cc:2108
+#: c-family/c-warn.cc:2106 c-family/c-warn.cc:2109
 #, gcc-internal-format
 msgid "suggest parentheses around comparison in operand of %<^%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2114 c-family/c-warn.cc:2117
+#: c-family/c-warn.cc:2115 c-family/c-warn.cc:2118
 #, gcc-internal-format
 msgid "suggest parentheses around %<+%> in operand of %<&%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2120 c-family/c-warn.cc:2123
+#: c-family/c-warn.cc:2121 c-family/c-warn.cc:2124
 #, gcc-internal-format
 msgid "suggest parentheses around %<-%> in operand of %<&%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2127 c-family/c-warn.cc:2130
+#: c-family/c-warn.cc:2128 c-family/c-warn.cc:2131
 #, gcc-internal-format
 msgid "suggest parentheses around comparison in operand of %<&%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2135
+#: c-family/c-warn.cc:2136
 #, gcc-internal-format
 msgid ""
 "suggest parentheses around operand of %<!%> or change %<&%> to %<&&%> or %<!"
 "%> to %<~%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2142 c-family/c-warn.cc:2145
+#: c-family/c-warn.cc:2143 c-family/c-warn.cc:2146
 #, gcc-internal-format
 msgid "suggest parentheses around comparison in operand of %<==%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2150 c-family/c-warn.cc:2153
+#: c-family/c-warn.cc:2151 c-family/c-warn.cc:2154
 #, gcc-internal-format
 msgid "suggest parentheses around comparison in operand of %<!=%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2163 c-family/c-warn.cc:2169
+#: c-family/c-warn.cc:2164 c-family/c-warn.cc:2170
 #, gcc-internal-format
 msgid "comparisons like %<X<=Y<=Z%> do not have their mathematical meaning"
 msgstr ""
 
-#: c-family/c-warn.cc:2185
+#: c-family/c-warn.cc:2186
 #, gcc-internal-format
 msgid "label %q+D defined but not used"
 msgstr ""
 
-#: c-family/c-warn.cc:2187
+#: c-family/c-warn.cc:2188
 #, gcc-internal-format
 msgid "label %q+D declared but not defined"
 msgstr ""
 
-#: c-family/c-warn.cc:2210
+#: c-family/c-warn.cc:2211
 #, gcc-internal-format
 msgid "division by zero"
 msgstr ""
 
-#: c-family/c-warn.cc:2230
+#: c-family/c-warn.cc:2231
 #, gcc-internal-format
 msgid ""
 "%<memset%> used with constant zero length parameter; this could be due to "
 "transposed parameters"
 msgstr ""
 
-#: c-family/c-warn.cc:2254
+#: c-family/c-warn.cc:2255
 #, gcc-internal-format
 msgid ""
 "%<memset%> used with length equal to number of elements without "
 "multiplication by element size"
 msgstr ""
 
-#: c-family/c-warn.cc:2334
+#: c-family/c-warn.cc:2335
 #, gcc-internal-format
 msgid "comparison of integer expressions of different signedness: %qT and %qT"
 msgstr ""
 
-#: c-family/c-warn.cc:2387
+#: c-family/c-warn.cc:2409
 #, gcc-internal-format
 msgid "promoted bitwise complement of an unsigned value is always nonzero"
 msgstr ""
 
-#: c-family/c-warn.cc:2391
+#: c-family/c-warn.cc:2413
 #, gcc-internal-format
 msgid ""
 "comparison of promoted bitwise complement of an unsigned value with constant"
 msgstr ""
 
-#: c-family/c-warn.cc:2402
+#: c-family/c-warn.cc:2424
 #, gcc-internal-format
 msgid ""
 "comparison of promoted bitwise complement of an unsigned value with unsigned"
 msgstr ""
 
-#: c-family/c-warn.cc:2457
+#: c-family/c-warn.cc:2479
 #, gcc-internal-format
 msgid "unused parameter %qD"
 msgstr ""
 
-#: c-family/c-warn.cc:2519
+#: c-family/c-warn.cc:2541
 #, gcc-internal-format
 msgid "typedef %qD locally defined but not used"
 msgstr ""
 
-#: c-family/c-warn.cc:2555
+#: c-family/c-warn.cc:2577
 #, gcc-internal-format
 msgid "duplicated %<if%> condition"
 msgstr ""
 
-#: c-family/c-warn.cc:2584
+#: c-family/c-warn.cc:2606
 #, gcc-internal-format
 msgid ""
 "optimization attribute on %qD follows definition but the attribute doesn%'t "
 "match"
 msgstr ""
 
-#: c-family/c-warn.cc:2592
+#: c-family/c-warn.cc:2614
 #, gcc-internal-format
 msgid ""
 "inline declaration of %qD follows declaration with attribute %<noinline%>"
 msgstr ""
 
-#: c-family/c-warn.cc:2597
+#: c-family/c-warn.cc:2619
 #, gcc-internal-format
 msgid ""
 "declaration of %q+D with attribute %<noinline%> follows inline declaration"
 msgstr ""
 
-#: c-family/c-warn.cc:2646
+#: c-family/c-warn.cc:2673
 #, gcc-internal-format
 msgid "result of %qE requires %u bits to represent, but %qT only has %u bits"
 msgstr ""
 
-#: c-family/c-warn.cc:2684 c-family/c-warn.cc:2708
+#: c-family/c-warn.cc:2712 c-family/c-warn.cc:2736
 #, gcc-internal-format
 msgid "comparison of constant %qE with boolean expression is always false"
 msgstr ""
 
-#: c-family/c-warn.cc:2687 c-family/c-warn.cc:2705
+#: c-family/c-warn.cc:2715 c-family/c-warn.cc:2733
 #, gcc-internal-format
 msgid "comparison of constant %qE with boolean expression is always true"
 msgstr ""
 
-#: c-family/c-warn.cc:2755
+#: c-family/c-warn.cc:2783
 msgid "passing argument %i to %qs-qualified parameter aliases with argument %Z"
 msgid_plural ""
 "passing argument %i to %qs-qualified parameter aliases with arguments %Z"
 msgstr[0] ""
 msgstr[1] ""
 
-#: c-family/c-warn.cc:2821 c/c-typeck.cc:5733 cp/call.cc:6281
+#: c-family/c-warn.cc:2849 c/c-typeck.cc:5723 cp/call.cc:6284
 #, gcc-internal-format
 msgid "this condition has identical branches"
 msgstr ""
 
-#: c-family/c-warn.cc:2928
+#: c-family/c-warn.cc:2956
 #, gcc-internal-format
 msgid "macro expands to multiple statements"
 msgstr ""
 
-#: c-family/c-warn.cc:2929
+#: c-family/c-warn.cc:2957
 #, gcc-internal-format
 msgid "some parts of macro expansion are not guarded by this %qs clause"
 msgstr ""
 
-#: c-family/c-warn.cc:3022
+#: c-family/c-warn.cc:3054
 #, gcc-internal-format
 msgid ""
 "converting a packed %qT pointer (alignment %d) to a %qT pointer (alignment "
 "%d) may result in an unaligned pointer value"
 msgstr ""
 
-#: c-family/c-warn.cc:3029 c-family/c-warn.cc:3032 cp/init.cc:654
+#: c-family/c-warn.cc:3061 c-family/c-warn.cc:3064 cp/init.cc:677
 #, gcc-internal-format
 msgid "defined here"
 msgstr ""
 
-#: c-family/c-warn.cc:3119
+#: c-family/c-warn.cc:3151
 #, gcc-internal-format
 msgid ""
 "taking address of packed member of %qT may result in an unaligned pointer "
 "value"
 msgstr ""
 
-#: c-family/c-warn.cc:3347
+#: c-family/c-warn.cc:3379
 msgid "mismatch in bound %Z of argument %u declared as %s"
 msgid_plural "mismatch in bounds %Z of argument %u declared as %s"
 msgstr[0] ""
 msgstr[1] ""
 
-#: c-family/c-warn.cc:3350 c-family/c-warn.cc:3721
+#: c-family/c-warn.cc:3382 c-family/c-warn.cc:3755
 #, gcc-internal-format, gfc-internal-format
 msgid "previously declared as %s"
 msgstr ""
 
-#: c-family/c-warn.cc:3484
+#: c-family/c-warn.cc:3516
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u of type %s declared as a variable length array"
 msgstr ""
 
-#: c-family/c-warn.cc:3489
+#: c-family/c-warn.cc:3521
 #, gcc-internal-format, gfc-internal-format
 msgid "previously declared as a pointer %s"
 msgstr ""
 
-#: c-family/c-warn.cc:3490
+#: c-family/c-warn.cc:3522
 #, gcc-internal-format, gfc-internal-format
 msgid "previously declared as an ordinary array %s"
 msgstr ""
 
-#: c-family/c-warn.cc:3503 c-family/c-warn.cc:3517
+#: c-family/c-warn.cc:3535 c-family/c-warn.cc:3549
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u of type %s declared as a pointer"
 msgstr ""
 
-#: c-family/c-warn.cc:3507 c-family/c-warn.cc:3533
+#: c-family/c-warn.cc:3539 c-family/c-warn.cc:3565
 #, gcc-internal-format, gfc-internal-format
 msgid "previously declared as a variable length array %s"
 msgstr ""
 
-#: c-family/c-warn.cc:3520
+#: c-family/c-warn.cc:3552
 #, gcc-internal-format, gfc-internal-format
 msgid "previously declared as an array %s"
 msgstr ""
 
-#: c-family/c-warn.cc:3529
+#: c-family/c-warn.cc:3561
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u of type %s declared as an ordinary array"
 msgstr ""
 
-#: c-family/c-warn.cc:3557
+#: c-family/c-warn.cc:3589
 #, 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:3564
+#: c-family/c-warn.cc:3596
 #, 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:3588
+#: c-family/c-warn.cc:3620
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u of type %s declared with %u unspecified variable bound"
 msgid_plural ""
@@ -38159,110 +38195,110 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: c-family/c-warn.cc:3596
+#: c-family/c-warn.cc:3628
 #, 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:3603
+#: c-family/c-warn.cc:3635
 #, 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:3656
+#: c-family/c-warn.cc:3690
 #, gcc-internal-format
 msgid "argument %u of type %s declared with mismatched bound argument %E"
 msgstr ""
 
-#: c-family/c-warn.cc:3663 c-family/c-warn.cc:3697
+#: c-family/c-warn.cc:3697 c-family/c-warn.cc:3731
 #, gcc-internal-format
 msgid "argument %u of type %s declared with mismatched bound %<%s%>"
 msgstr ""
 
-#: c-family/c-warn.cc:3675
+#: c-family/c-warn.cc:3709
 #, gcc-internal-format
 msgid "previously declared as %s with bound argument %E"
 msgstr ""
 
-#: c-family/c-warn.cc:3680
+#: c-family/c-warn.cc:3714
 #, gcc-internal-format
 msgid "previously declared as %s with bound %<%s%>"
 msgstr ""
 
-#: c-family/c-warn.cc:3700
+#: c-family/c-warn.cc:3734
 #, gcc-internal-format
 msgid "previously declared as %s with bound %qs"
 msgstr ""
 
-#: c-family/c-warn.cc:3719
+#: c-family/c-warn.cc:3753
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u of type %s with mismatched bound"
 msgstr ""
 
-#: c-family/c-warn.cc:3750
+#: c-family/c-warn.cc:3784
 #, 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:3760
+#: c-family/c-warn.cc:3794
 #, gcc-internal-format
 msgid "add parentheses around %qE to silence this warning"
 msgstr ""
 
-#: c-family/c-warn.cc:3764
+#: c-family/c-warn.cc:3798
 #, gcc-internal-format
 msgid "add parentheses around the second %<sizeof%> to silence this warning"
 msgstr ""
 
-#: c-family/c-warn.cc:3790
+#: c-family/c-warn.cc:3824
 #, gcc-internal-format
 msgid "comparison between two arrays is deprecated in C++20"
 msgstr ""
 
-#: c-family/c-warn.cc:3791
+#: c-family/c-warn.cc:3825
 #, gcc-internal-format
 msgid "comparison between two arrays"
 msgstr ""
 
-#: c-family/c-warn.cc:3795
+#: c-family/c-warn.cc:3829
 #, gcc-internal-format
 msgid ""
 "use unary %<+%> which decays operands to pointers or %<&%D[0] %s &%D[0]%> to "
 "compare the addresses"
 msgstr ""
 
-#: c-family/c-warn.cc:3799
+#: c-family/c-warn.cc:3833
 #, gcc-internal-format
 msgid "use %<&%D[0] %s &%D[0]%> to compare the addresses"
 msgstr ""
 
-#: c-family/c-warn.cc:3844
+#: c-family/c-warn.cc:3893
 #, gcc-internal-format
 msgid "result of %<%wu^%wu%> is %wu; did you mean %<1 << %wu%> (%wu)?"
 msgstr ""
 
-#: c-family/c-warn.cc:3854
+#: c-family/c-warn.cc:3903
 #, gcc-internal-format
 msgid "result of %<%wu^%wu%> is %wu; did you mean %<1LL << %wu%>?"
 msgstr ""
 
-#: c-family/c-warn.cc:3861
+#: c-family/c-warn.cc:3910
 #, gcc-internal-format
 msgid "result of %<%wu^%wu%> is %wu; did you mean exponentiation?"
 msgstr ""
 
-#: c-family/c-warn.cc:3872
+#: c-family/c-warn.cc:3921
 #, gcc-internal-format
 msgid "result of %<%wu^%wu%> is %wu; did you mean %<1e%wu%>?"
 msgstr ""
 
-#: c-family/c-warn.cc:3889
+#: c-family/c-warn.cc:3938
 #, gcc-internal-format
 msgid ""
 "you can silence this warning by using a hexadecimal constant (%wx rather "
@@ -38284,7 +38320,7 @@ msgstr ""
 msgid "%qs is defined in header %qs; did you forget to %<#include %s%>?"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.cc:400 config/aarch64/aarch64.cc:18044
+#: common/config/aarch64/aarch64-common.cc:400 config/aarch64/aarch64.cc:18127
 #, gcc-internal-format
 msgid "unknown value %qs for %<-mcpu%>"
 msgstr ""
@@ -38294,12 +38330,12 @@ msgstr ""
 msgid "bad value %qs for %<-mtls-size%> switch"
 msgstr ""
 
-#: common/config/arc/arc-common.cc:82
+#: common/config/arc/arc-common.cc:81
 #, gcc-internal-format
 msgid "multiple %<-mcpu=%> options specified"
 msgstr ""
 
-#: common/config/arc/arc-common.cc:88
+#: common/config/arc/arc-common.cc:87
 #, gcc-internal-format
 msgid "Unsupported value for mmpy-option"
 msgstr ""
@@ -38315,15 +38351,15 @@ msgid "unrecognized option passed to %%:%<target_mode_check%>"
 msgstr ""
 
 #: common/config/arm/arm-common.cc:378 common/config/arm/arm-common.cc:442
-#: common/config/arm/arm-common.cc:489 config/aarch64/aarch64.cc:17976
-#: config/aarch64/aarch64.cc:18014
+#: common/config/arm/arm-common.cc:489 config/aarch64/aarch64.cc:18059
+#: config/aarch64/aarch64.cc:18097
 #, gcc-internal-format
 msgid "valid arguments are: %s; did you mean %qs?"
 msgstr ""
 
 #: common/config/arm/arm-common.cc:381 common/config/arm/arm-common.cc:445
-#: common/config/arm/arm-common.cc:492 config/aarch64/aarch64.cc:17979
-#: config/aarch64/aarch64.cc:18017
+#: common/config/arm/arm-common.cc:492 config/aarch64/aarch64.cc:18062
+#: config/aarch64/aarch64.cc:18100
 #, gcc-internal-format, gfc-internal-format
 msgid "valid arguments are: %s"
 msgstr ""
@@ -38485,76 +38521,81 @@ msgid ""
 "64, 128, 256, or 512"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:486
+#: common/config/riscv/riscv-common.cc:499
 #, gcc-internal-format
 msgid "%<-march=%s%>: extension %qs appear more than one time"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:734
+#: common/config/riscv/riscv-common.cc:747
 #, gcc-internal-format
 msgid "%<-march=%s%>: expect number after %<%dp%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:740
+#: common/config/riscv/riscv-common.cc:753
 #, 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:810
+#: common/config/riscv/riscv-common.cc:823
 #, gcc-internal-format
 msgid "%<-march=%s%>: rv%de is not a valid base ISA"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:822
+#: common/config/riscv/riscv-common.cc:835
 #, gcc-internal-format
 msgid ""
 "version of %<g%> will be omitted, please specify version for individual "
 "extension"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:841
+#: common/config/riscv/riscv-common.cc:854
 #, gcc-internal-format
 msgid "%<-march=%s%>: first ISA subset must be %<e%>, %<i%> or %<g%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:868
+#: common/config/riscv/riscv-common.cc:881
 #, gcc-internal-format
 msgid "%<-march=%s%>: unsupported ISA subset %<%c%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:872
+#: common/config/riscv/riscv-common.cc:885
 #, gcc-internal-format
 msgid "%<-march=%s%>: ISA string is not in canonical order. %<%c%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1059
+#: common/config/riscv/riscv-common.cc:1072
 #, gcc-internal-format
 msgid "%<-march=%s%>: name of %s must be more than 1 letter"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1071
+#: common/config/riscv/riscv-common.cc:1084
 #, gcc-internal-format
 msgid "%<-march=%s%>: %s must separate with %<_%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1100
+#: common/config/riscv/riscv-common.cc:1113
 #, gcc-internal-format
 msgid "%<-march=%s%>: ISA string must begin with rv32 or rv64"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1131
+#: common/config/riscv/riscv-common.cc:1144
 #, gcc-internal-format
 msgid "%<-march=%s%>: unexpected ISA string at end: %qs"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1327
+#: common/config/riscv/riscv-common.cc:1157
+#, gcc-internal-format
+msgid "%<-march=%s%>: z*inx conflicts with floating-point extensions"
+msgstr ""
+
+#: common/config/riscv/riscv-common.cc:1358
 #, gcc-internal-format
 msgid "%<-mcpu=%s%>: unknown CPU"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:1406
+#: common/config/riscv/riscv-common.cc:1437
 #, gcc-internal-format
 msgid "Cannot find suitable multilib set for %<-march=%s%>/%<-mabi=%s%>"
 msgstr ""
@@ -38884,44 +38925,44 @@ msgstr ""
 msgid "PIC is only supported for RTPs"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2148
-#: config/aarch64/aarch64-builtins.cc:2382 config/arm/arm-builtins.cc:3112
+#: config/aarch64/aarch64-builtins.cc:2142
+#: config/aarch64/aarch64-builtins.cc:2376 config/arm/arm-builtins.cc:3112
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %d must be a constant immediate"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2220 config/arm/arm-builtins.cc:3467
+#: config/aarch64/aarch64-builtins.cc:2214 config/arm/arm-builtins.cc:3467
 #, gcc-internal-format
 msgid "lane index must be a constant immediate"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2224
+#: config/aarch64/aarch64-builtins.cc:2218
 #, gcc-internal-format
 msgid "total size and element size must be a nonzero constant immediate"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2472
+#: config/aarch64/aarch64-builtins.cc:2466
 #, gcc-internal-format
 msgid "argument must be a 16-bit constant immediate"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2578
+#: config/aarch64/aarch64-builtins.cc:2572
 #, gcc-internal-format
 msgid "Memory Tagging Extension does not support %<-mabi=ilp32%>"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:2613
+#: config/aarch64/aarch64-builtins.cc:2607
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %d must be a constant immediate in range [0,15]"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:3369
-#: config/aarch64/aarch64-builtins.cc:3389
+#: config/aarch64/aarch64-builtins.cc:3385
+#: config/aarch64/aarch64-builtins.cc:3405
 #, gcc-internal-format, gfc-internal-format
 msgid "expected 64-bit address but argument 1 is %d-bit"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.cc:3373
+#: config/aarch64/aarch64-builtins.cc:3389
 #, gcc-internal-format, gfc-internal-format
 msgid "expected 64-bit address but argument 2 is %d-bit"
 msgstr ""
@@ -38954,11 +38995,13 @@ msgid "ACLE function %qD is incompatible with the use of %qs"
 msgstr ""
 
 #: config/aarch64/aarch64-sve-builtins.cc:726
+#: config/riscv/riscv-vector-builtins.cc:3250
 #, gcc-internal-format
 msgid "argument %d of %qE must be an integer constant expression"
 msgstr ""
 
 #: config/aarch64/aarch64-sve-builtins.cc:738
+#: config/riscv/riscv-vector-builtins.cc:3264
 #, gcc-internal-format
 msgid ""
 "passing %wd to argument %d of %qE, which expects a value in the range [%wd, "
@@ -39232,7 +39275,7 @@ msgstr ""
 
 #: config/aarch64/aarch64-sve-builtins.cc:3536
 #: config/arm/arm-mve-builtins.cc:173
-#: config/riscv/riscv-vector-builtins.cc:1473
+#: config/riscv/riscv-vector-builtins.cc:3444
 #, gcc-internal-format
 msgid "duplicate definition of %qs"
 msgstr ""
@@ -39273,7 +39316,7 @@ msgid "SVE type %qT does not have a defined alignment"
 msgstr ""
 
 #: config/aarch64/aarch64-sve-builtins.cc:3865
-#: config/riscv/riscv-vector-builtins.cc:1411
+#: config/riscv/riscv-vector-builtins.cc:3382
 #, gcc-internal-format
 msgid "variables of type %qT cannot have thread-local storage duration"
 msgstr ""
@@ -39358,343 +39401,343 @@ msgstr ""
 
 #. We can't gracefully recover at this point, so make this a
 #. fatal error.
-#: config/aarch64/aarch64.cc:7212
+#: config/aarch64/aarch64.cc:7225
 #, gcc-internal-format
 msgid "arguments of type %qT require the SVE ISA extension"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:7630
+#: config/aarch64/aarch64.cc:7646
 #, gcc-internal-format
 msgid "SVE type %qT cannot be passed to an unprototyped function"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:7767 config/aarch64/aarch64.cc:7838
-#: config/aarch64/aarch64.cc:19715
+#: config/aarch64/aarch64.cc:7783 config/aarch64/aarch64.cc:7854
+#: config/aarch64/aarch64.cc:19798
 #, gcc-internal-format
 msgid "parameter passing for argument of type %qT changed in GCC 13.1"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:7777 config/aarch64/aarch64.cc:7847
-#: config/aarch64/aarch64.cc:19721 config/arm/arm.cc:7266
+#: config/aarch64/aarch64.cc:7793 config/aarch64/aarch64.cc:7863
+#: config/aarch64/aarch64.cc:19804 config/arm/arm.cc:7266
 #: config/arm/arm.cc:7296 config/arm/arm.cc:29325
 #, gcc-internal-format
 msgid "parameter passing for argument of type %qT changed in GCC 9.1"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:7915
+#: config/aarch64/aarch64.cc:7931
 #, gcc-internal-format
 msgid "%qE requires the SVE ISA extension"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:7918
+#: config/aarch64/aarch64.cc:7934
 #, gcc-internal-format
 msgid "calls to functions of type %qT require the SVE ISA extension"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:8091
+#: config/aarch64/aarch64.cc:8112
 #, gcc-internal-format
 msgid "stack probes for SVE frames"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:17461
+#: config/aarch64/aarch64.cc:17544
 #, gcc-internal-format
 msgid "unknown flag passed in %<-moverride=%s%> (%s)"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:17505
+#: config/aarch64/aarch64.cc:17588
 #, gcc-internal-format
 msgid "%qs string ill-formed"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:17561
+#: config/aarch64/aarch64.cc:17644
 #, gcc-internal-format
 msgid "invalid format for %<sve_width%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:17573
+#: config/aarch64/aarch64.cc:17656
 #, gcc-internal-format
 msgid "invalid %<sve_width%> value: %d"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:17593
+#: config/aarch64/aarch64.cc:17676
 #, gcc-internal-format, gfc-internal-format
 msgid "tuning string missing in option (%s)"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:17611
+#: config/aarch64/aarch64.cc:17694
 #, gcc-internal-format, gfc-internal-format
 msgid "unknown tuning option (%s)"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:17799 config/arm/arm.cc:3193
-#: config/riscv/riscv.cc:6120
+#: config/aarch64/aarch64.cc:17882 config/arm/arm.cc:3193
+#: config/riscv/riscv.cc:6320
 #, gcc-internal-format
 msgid ""
 "incompatible options %<-mstack-protector-guard=global%> and %<-mstack-"
 "protector-guard-offset=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:17808 config/riscv/riscv.cc:6129
+#: config/aarch64/aarch64.cc:17891 config/riscv/riscv.cc:6329
 #, 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:17816
+#: config/aarch64/aarch64.cc:17899
 #, gcc-internal-format
 msgid "specify a system register with a small string length"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:17826 config/arm/arm.cc:3205
-#: config/riscv/riscv.cc:6158 config/rs6000/rs6000.cc:4528
+#: config/aarch64/aarch64.cc:17909 config/arm/arm.cc:3205
+#: config/riscv/riscv.cc:6358 config/rs6000/rs6000.cc:4531
 #, gcc-internal-format
 msgid "%qs is not a valid offset in %qs"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:17833
+#: config/aarch64/aarch64.cc:17916
 #, gcc-internal-format
 msgid "%<-fsanitize=shadow-call-stack%> requires %<-ffixed-x18%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:17923
+#: config/aarch64/aarch64.cc:18006
 #, 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:17939
+#: config/aarch64/aarch64.cc:18022
 #, gcc-internal-format
 msgid "stack clash guard size %<%d%> must be equal to probing interval %<%d%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18041
+#: config/aarch64/aarch64.cc:18124
 #, gcc-internal-format
 msgid "missing cpu name in %<-mcpu=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18048
+#: config/aarch64/aarch64.cc:18131
 #, gcc-internal-format
 msgid "invalid feature modifier %qs in %<-mcpu=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18107
+#: config/aarch64/aarch64.cc:18190
 #, gcc-internal-format
 msgid "invalid argument given to %<-mharden-sls=%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18118
+#: config/aarch64/aarch64.cc:18201
 #, gcc-internal-format
 msgid "%qs must be by itself for %<-mharden-sls=%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18123
+#: config/aarch64/aarch64.cc:18206
 #, gcc-internal-format
 msgid "invalid argument %<%s%> for %<-mharden-sls=%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18151
+#: config/aarch64/aarch64.cc:18234
 #, gcc-internal-format
 msgid "missing arch name in %<-march=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18154
+#: config/aarch64/aarch64.cc:18237
 #, gcc-internal-format
 msgid "unknown value %qs for %<-march%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18160
+#: config/aarch64/aarch64.cc:18243
 #, gcc-internal-format
 msgid "did you mean %<-mcpu=%s%>?"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18163
+#: config/aarch64/aarch64.cc:18246
 #, gcc-internal-format
 msgid "invalid feature modifier %qs in %<-march=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18191
+#: config/aarch64/aarch64.cc:18274
 #, gcc-internal-format
 msgid "missing cpu name in %<-mtune=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18194
+#: config/aarch64/aarch64.cc:18277
 #, gcc-internal-format
 msgid "unknown value %qs for %<-mtune%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18279
+#: config/aarch64/aarch64.cc:18362
 #, gcc-internal-format
 msgid "switch %<-mcpu=%s%> conflicts with %<-march=%s%> switch"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18333
+#: config/aarch64/aarch64.cc:18416
 #, gcc-internal-format
 msgid "assembler does not support %<-mabi=ilp32%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18340
+#: config/aarch64/aarch64.cc:18423
 #, gcc-internal-format
 msgid "return address signing is only supported for %<-mabi=lp64%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18413
+#: config/aarch64/aarch64.cc:18496
 #, gcc-internal-format
 msgid "code model %qs with %<-f%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18416
+#: config/aarch64/aarch64.cc:18499
 #, gcc-internal-format
 msgid "code model %qs not supported in ilp32 mode"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18568
+#: config/aarch64/aarch64.cc:18651
 #, gcc-internal-format
 msgid "missing name in %<target(\"arch=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18571
+#: config/aarch64/aarch64.cc:18654
 #, gcc-internal-format
 msgid "invalid name %qs in %<target(\"arch=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18575
+#: config/aarch64/aarch64.cc:18658
 #, gcc-internal-format
 msgid ""
 "invalid feature modifier %s of value %qs in %<target()%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18609
+#: config/aarch64/aarch64.cc:18692
 #, gcc-internal-format
 msgid "missing name in %<target(\"cpu=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18612
+#: config/aarch64/aarch64.cc:18695
 #, gcc-internal-format
 msgid "invalid name %qs in %<target(\"cpu=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18616 config/aarch64/aarch64.cc:18722
+#: config/aarch64/aarch64.cc:18699 config/aarch64/aarch64.cc:18805
 #, gcc-internal-format
 msgid ""
 "invalid feature modifier %qs of value %qs in %<target()%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18639
+#: config/aarch64/aarch64.cc:18722
 #, gcc-internal-format
 msgid ""
 "missing argument to %<target(\"branch-protection=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18643
+#: config/aarch64/aarch64.cc:18726
 #, gcc-internal-format
 msgid ""
 "invalid protection type %qs in %<target(\"branch-protection=\")%> pragma or "
 "attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18677
+#: config/aarch64/aarch64.cc:18760
 #, gcc-internal-format
 msgid "invalid name %qs in %<target(\"tune=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18718
+#: config/aarch64/aarch64.cc:18801
 #, gcc-internal-format
 msgid "missing value in %<target()%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18776 config/aarch64/aarch64.cc:18949
+#: config/aarch64/aarch64.cc:18859 config/aarch64/aarch64.cc:19032
 #, gcc-internal-format
 msgid "malformed %<target()%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18820
+#: config/aarch64/aarch64.cc:18903
 #, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s\")%> does not accept an argument"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18828 config/i386/i386-options.cc:1254
+#: config/aarch64/aarch64.cc:18911 config/i386/i386-options.cc:1254
 #, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s\")%> does not allow a negated form"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18882
+#: config/aarch64/aarch64.cc:18965
 #, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s=%s\")%> is not valid"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18939 config/arm/arm.cc:33526
-#: config/rs6000/rs6000.cc:24441 config/s390/s390.cc:16073
+#: config/aarch64/aarch64.cc:19022 config/arm/arm.cc:33526
+#: config/rs6000/rs6000.cc:24408 config/s390/s390.cc:16053
 #, gcc-internal-format
 msgid "attribute %<target%> argument not a string"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18974
+#: config/aarch64/aarch64.cc:19057
 #, gcc-internal-format
 msgid "arch extension %<%s%> should be prefixed by %<+%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18977
+#: config/aarch64/aarch64.cc:19060
 #, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s\")%> is not valid"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:18986
+#: config/aarch64/aarch64.cc:19069
 #, gcc-internal-format
 msgid "malformed %<target(\"%s\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:20466 config/arm/arm.cc:6614
+#: config/aarch64/aarch64.cc:20549 config/arm/arm.cc:6614
 #: config/rs6000/rs6000-call.cc:366 config/s390/s390.cc:12424
 msgid ""
 "parameter passing for argument of type %qT with %<[[no_unique_address]]%> "
 "members changed %{in GCC 10.1%}"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:20471 config/arm/arm.cc:6619
+#: config/aarch64/aarch64.cc:20554 config/arm/arm.cc:6619
 #: config/rs6000/rs6000-call.cc:361 config/s390/s390.cc:12419
 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:20476 config/arm/arm.cc:6624
+#: config/aarch64/aarch64.cc:20559 config/arm/arm.cc:6624
 msgid "parameter passing for argument of type %qT changed %{in GCC 12.1%}"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:21630 config/aarch64/aarch64.cc:21633
+#: config/aarch64/aarch64.cc:21713 config/aarch64/aarch64.cc:21716
 #, gcc-internal-format
 msgid "lane %wd out of range %wd - %wd"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:26920 config/i386/i386.cc:23665
-#: config/i386/i386.cc:23796
+#: config/aarch64/aarch64.cc:26963 config/i386/i386.cc:23702
+#: config/i386/i386.cc:23833
 #, gcc-internal-format
 msgid "unsupported simdlen %wd"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:26932 config/aarch64/aarch64.cc:26961
+#: config/aarch64/aarch64.cc:26975 config/aarch64/aarch64.cc:27004
 #, gcc-internal-format
 msgid "GCC does not currently support mixed size types for %<simd%> functions"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:26936
+#: config/aarch64/aarch64.cc:26979
 #, gcc-internal-format
 msgid "GCC does not currently support return type %qT for %<simd%> functions"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:26940
+#: config/aarch64/aarch64.cc:26983
 #, gcc-internal-format
 msgid "unsupported return type %qT for %<simd%> functions"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:26965
+#: config/aarch64/aarch64.cc:27008
 #, gcc-internal-format
 msgid "GCC does not currently support argument type %qT for %<simd%> functions"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:26991
+#: config/aarch64/aarch64.cc:27034
 #, gcc-internal-format
 msgid "GCC does not currently support simdlen %wd for type %qT"
 msgstr ""
@@ -39880,14 +39923,14 @@ msgstr ""
 #: config/arm/arm.cc:7606 config/avr/avr.cc:9588 config/avr/avr.cc:9604
 #: config/bfin/bfin.cc:4694 config/bfin/bfin.cc:4755 config/bfin/bfin.cc:4785
 #: config/bpf/bpf.cc:99 config/csky/csky.cc:6458 config/csky/csky.cc:6486
-#: config/epiphany/epiphany.cc:491 config/gcn/gcn.cc:332
+#: config/epiphany/epiphany.cc:491 config/gcn/gcn.cc:333
 #: config/h8300/h8300.cc:4944 config/i386/i386-options.cc:3381
 #: config/i386/i386-options.cc:3558 config/i386/i386-options.cc:3614
 #: config/i386/i386-options.cc:3665 config/i386/i386-options.cc:3702
 #: config/m68k/m68k.cc:792 config/mcore/mcore.cc:3067
-#: config/nvptx/nvptx.cc:5800 config/riscv/riscv.cc:3854
+#: config/nvptx/nvptx.cc:5800 config/riscv/riscv.cc:3988
 #: config/rl78/rl78.cc:820 config/rl78/rl78.cc:889
-#: config/rs6000/rs6000.cc:20395 config/rx/rx.cc:2727 config/rx/rx.cc:2753
+#: config/rs6000/rs6000.cc:20362 config/rx/rx.cc:2727 config/rx/rx.cc:2753
 #: config/s390/s390.cc:1164 config/s390/s390.cc:1251 config/sh/sh.cc:8429
 #: config/sh/sh.cc:8447 config/sh/sh.cc:8471 config/sh/sh.cc:8542
 #: config/sh/sh.cc:8565 config/stormy16/stormy16.cc:2229
@@ -40030,17 +40073,17 @@ msgstr ""
 msgid "%qE attribute only applies to variables"
 msgstr ""
 
-#: config/arm/aarch-common.cc:551 config/i386/i386.cc:22520
+#: config/arm/aarch-common.cc:551 config/i386/i386.cc:22536
 #, gcc-internal-format
 msgid "alternatives not allowed in %<asm%> flag output"
 msgstr ""
 
-#: config/arm/aarch-common.cc:612 config/i386/i386.cc:22584
+#: config/arm/aarch-common.cc:612 config/i386/i386.cc:22600
 #, gcc-internal-format
 msgid "unknown %<asm%> flag output %qs"
 msgstr ""
 
-#: config/arm/aarch-common.cc:622 config/i386/i386.cc:22613
+#: config/arm/aarch-common.cc:622 config/i386/i386.cc:22629
 #, gcc-internal-format
 msgid "invalid type for %<asm%> flag output"
 msgstr ""
@@ -40605,17 +40648,17 @@ msgstr ""
 msgid "%<-fPIE%> is not supported"
 msgstr ""
 
-#: config/avr/avr.cc:1050 config/avr/avr.cc:1055 config/riscv/riscv.cc:6428
+#: config/avr/avr.cc:1050 config/avr/avr.cc:1055 config/riscv/riscv.cc:6628
 #, gcc-internal-format
 msgid "function attributes %qs and %qs are mutually exclusive"
 msgstr ""
 
-#: config/avr/avr.cc:1076 config/riscv/riscv.cc:6440
+#: config/avr/avr.cc:1076 config/riscv/riscv.cc:6640
 #, gcc-internal-format
 msgid "%qs function cannot have arguments"
 msgstr ""
 
-#: config/avr/avr.cc:1079 config/riscv/riscv.cc:6437
+#: config/avr/avr.cc:1079 config/riscv/riscv.cc:6637
 #, gcc-internal-format
 msgid "%qs function cannot return a value"
 msgstr ""
@@ -40884,7 +40927,7 @@ msgstr ""
 
 #: config/bpf/bpf.cc:260
 #, gcc-internal-format
-msgid "%<-fstack-protector%> does not work  on this architecture"
+msgid "%<-fstack-protector%> does not work on this architecture"
 msgstr ""
 
 #: config/bpf/bpf.cc:425
@@ -40938,9 +40981,9 @@ msgid "invalid second argument to built-in function"
 msgstr ""
 
 #: config/bpf/bpf.cc:1247 config/bpf/bpf.cc:1292
-#: config/loongarch/loongarch-builtins.cc:313 config/mips/mips.cc:17186
-#: config/nios2/nios2.cc:3600 config/riscv/riscv-builtins.cc:277
-#: config/riscv/riscv-vector-builtins.cc:1341
+#: config/loongarch/loongarch-builtins.cc:313 config/mips/mips.cc:17187
+#: config/nios2/nios2.cc:3600 config/riscv/riscv-builtins.cc:306
+#: config/riscv/riscv-vector-builtins.cc:3230
 #, gcc-internal-format
 msgid "invalid argument to built-in function"
 msgstr ""
@@ -40975,22 +41018,22 @@ msgid "internal error: bad register: %d"
 msgstr ""
 
 #. If we get here, the caller got its initial tests wrong.
-#: config/cris/cris.cc:2216
+#: config/cris/cris.cc:2237
 #, gcc-internal-format
 msgid "internal error: %<cris_side_effect_mode_ok%> with bad operands"
 msgstr ""
 
-#: config/cris/cris.cc:2269
+#: config/cris/cris.cc:2290
 #, gcc-internal-format
 msgid "%<-max-stackframe=%d%> is not usable, not between 0 and %d"
 msgstr ""
 
-#: config/cris/cris.cc:2298
+#: config/cris/cris.cc:2319
 #, gcc-internal-format
 msgid "unknown CRIS version specification in %<-march=%> or %<-mcpu=%>: %s"
 msgstr ""
 
-#: config/cris/cris.cc:2334
+#: config/cris/cris.cc:2355
 #, gcc-internal-format
 msgid "unknown CRIS cpu version specification in %<-mtune=%>: %s"
 msgstr ""
@@ -40998,22 +41041,22 @@ msgstr ""
 #. Use error rather than warning, so invalid use is easily
 #. detectable.  Still change to the values we expect, to avoid
 #. further errors.
-#: config/cris/cris.cc:2350
+#: config/cris/cris.cc:2371
 #, gcc-internal-format
 msgid "%<-fPIC%> and %<-fpic%> are not supported on this target"
 msgstr ""
 
-#: config/cris/cris.cc:2551
+#: config/cris/cris.cc:2572
 #, gcc-internal-format
 msgid "unknown src"
 msgstr ""
 
-#: config/cris/cris.cc:2601
+#: config/cris/cris.cc:2622
 #, gcc-internal-format
 msgid "unknown dest"
 msgstr ""
 
-#: config/cris/cris.cc:2902
+#: config/cris/cris.cc:2923
 #, gcc-internal-format, gfc-internal-format
 msgid "stackframe too big: %d bytes"
 msgstr ""
@@ -41168,86 +41211,86 @@ msgstr ""
 msgid "stack frame must be smaller than 64K"
 msgstr ""
 
-#: config/gcn/gcn.cc:161
+#: config/gcn/gcn.cc:162
 #, gcc-internal-format
 msgid "XNACK support"
 msgstr ""
 
-#: config/gcn/gcn.cc:245
+#: config/gcn/gcn.cc:246
 #, gcc-internal-format
 msgid "%<amdgpu_hsa_kernel%> attribute requires string constant arguments"
 msgstr ""
 
-#: config/gcn/gcn.cc:258
+#: config/gcn/gcn.cc:259
 #, gcc-internal-format
 msgid "unknown specifier %qs in %<amdgpu_hsa_kernel%> attribute"
 msgstr ""
 
-#: config/gcn/gcn.cc:265
+#: config/gcn/gcn.cc:266
 #, gcc-internal-format
 msgid "duplicated parameter specifier %qs in %<amdgpu_hsa_kernel%> attribute"
 msgstr ""
 
-#: config/gcn/gcn.cc:317
+#: config/gcn/gcn.cc:318
 #, gcc-internal-format
 msgid "too many arguments passed in sgpr registers"
 msgstr ""
 
-#: config/gcn/gcn.cc:2483
+#: config/gcn/gcn.cc:2511
 #, gcc-internal-format
 msgid ""
 "A non-default set of initial values has been requested, which violates the "
 "ABI"
 msgstr ""
 
-#: config/gcn/gcn.cc:2726
+#: config/gcn/gcn.cc:2754
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong type of argument %s"
 msgstr ""
 
-#: config/gcn/gcn.cc:3720
+#: config/gcn/gcn.cc:3752
 #, gcc-internal-format
 msgid ""
 "nested function trampolines not supported on GCN5 due to non-executable "
 "stacks"
 msgstr ""
 
-#: config/gcn/gcn.cc:3831
+#: config/gcn/gcn.cc:3863
 #, gcc-internal-format
 msgid "TLS is not implemented for GCN."
 msgstr ""
 
-#: config/gcn/gcn.cc:4695
+#: config/gcn/gcn.cc:4727
 #, gcc-internal-format
 msgid "Builtin not implemented"
 msgstr ""
 
-#: config/gcn/gcn.cc:5205
+#: config/gcn/gcn.cc:5310
 #, gcc-internal-format
 msgid "unsupported simdlen %wd (amdgcn)"
 msgstr ""
 
-#: config/gcn/gcn.cc:5778
+#: config/gcn/gcn.cc:5987
 #, gcc-internal-format
 msgid "using %<vector_length (64)%>, ignoring %d"
 msgstr ""
 
-#: config/gcn/gcn.cc:5779
+#: config/gcn/gcn.cc:5988
 #, gcc-internal-format
 msgid "using %<vector_length (64)%>, ignoring runtime setting"
 msgstr ""
 
-#: config/gcn/gcn.cc:5791 config/nvptx/nvptx.cc:6568
+#: config/gcn/gcn.cc:6000 config/nvptx/nvptx.cc:6568
 #, gcc-internal-format
 msgid "using %<num_workers (%d)%>, ignoring %d"
 msgstr ""
 
-#: config/gcn/gcn.cc:5818 config/gcn/gcn.cc:5847
+#: config/gcn/gcn.cc:6027 config/gcn/gcn.cc:6056
 #, gcc-internal-format, gfc-internal-format
 msgid "offload dimension out of range (%d)"
 msgstr ""
 
-#: config/gcn/gcn.cc:6296
+#: config/gcn/gcn.cc:6505
 #, gcc-internal-format
 msgid ""
 "%d bytes of gang-private data-share memory exhausted (increase with %<-mgang-"
@@ -41284,28 +41327,28 @@ msgstr ""
 msgid "either -fopenacc or -fopenmp must be set"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:996 config/gcn/mkoffload.cc:1140
+#: config/gcn/mkoffload.cc:996 config/gcn/mkoffload.cc:1143
 #: config/nvptx/mkoffload.cc:684
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot open '%s'"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:1126 config/nvptx/mkoffload.cc:730
+#: config/gcn/mkoffload.cc:1129 config/nvptx/mkoffload.cc:730
 #, gcc-internal-format
 msgid "cannot open omp_requires file %qs"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:1130 config/nvptx/mkoffload.cc:734
+#: config/gcn/mkoffload.cc:1133 config/nvptx/mkoffload.cc:734
 #, gcc-internal-format
 msgid "cannot read omp_requires file %qs"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:1136
+#: config/gcn/mkoffload.cc:1139
 #, gcc-internal-format
 msgid "cannot open intermediate gcn asm file"
 msgstr ""
 
-#: config/gcn/mkoffload.cc:1153
+#: config/gcn/mkoffload.cc:1156
 #, gcc-internal-format
 msgid "cannot open intermediate gcn obj file"
 msgstr ""
@@ -41370,182 +41413,182 @@ msgstr ""
 msgid "parameter to builtin not valid: %s"
 msgstr ""
 
-#: config/i386/i386-expand.cc:9359
+#: config/i386/i386-expand.cc:9401
 #, gcc-internal-format
 msgid "interrupt service routine cannot be called directly"
 msgstr ""
 
-#: config/i386/i386-expand.cc:9794 config/i386/i386-expand.cc:11366
+#: config/i386/i386-expand.cc:9836 config/i386/i386-expand.cc:11408
 #, gcc-internal-format
 msgid "the last argument must be a 2-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:10256
+#: config/i386/i386-expand.cc:10298
 #, gcc-internal-format
 msgid "the fifth argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:10351
+#: config/i386/i386-expand.cc:10393
 #, gcc-internal-format
 msgid "the third argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11295
+#: config/i386/i386-expand.cc:11337
 #, gcc-internal-format
 msgid "the last argument must be an 1-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11310
+#: config/i386/i386-expand.cc:11352
 #, gcc-internal-format
 msgid "the last argument must be a 3-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11345
+#: config/i386/i386-expand.cc:11387
 #, gcc-internal-format
 msgid "the last argument must be a 4-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11385
+#: config/i386/i386-expand.cc:11427
 #, gcc-internal-format
 msgid "the last argument must be a 1-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11401
+#: config/i386/i386-expand.cc:11443
 #, gcc-internal-format
 msgid "the last argument must be a 5-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11411
+#: config/i386/i386-expand.cc:11453
 #, gcc-internal-format
 msgid "the next to last argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11416
+#: config/i386/i386-expand.cc:11458
 #, gcc-internal-format
 msgid "the last argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11553
+#: config/i386/i386-expand.cc:11595
 #, gcc-internal-format
 msgid "the third argument must be comparison constant"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11558
+#: config/i386/i386-expand.cc:11600
 #, gcc-internal-format
 msgid "incorrect comparison mode"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11564 config/i386/i386-expand.cc:11888
+#: config/i386/i386-expand.cc:11606 config/i386/i386-expand.cc:11930
 #, gcc-internal-format
 msgid "incorrect rounding operand"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11868
+#: config/i386/i386-expand.cc:11910
 #, gcc-internal-format
 msgid "the immediate argument must be a 4-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11876
+#: config/i386/i386-expand.cc:11918
 #, gcc-internal-format
 msgid "the immediate argument must be a 5-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:11879
+#: config/i386/i386-expand.cc:11921
 #, gcc-internal-format
 msgid "the immediate argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12355
+#: config/i386/i386-expand.cc:12397
 #, gcc-internal-format
 msgid "the fourth argument must be one of enum %qs"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12425 config/rs6000/rs6000-builtin.cc:2374
+#: config/i386/i386-expand.cc:12467 config/rs6000/rs6000-builtin.cc:2374
 #, gcc-internal-format
 msgid "selector must be an integer constant in the range [0, %wi]"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12682
+#: config/i386/i386-expand.cc:12724
 #, gcc-internal-format
 msgid "%qE needs unknown isa option"
 msgstr ""
 
-#: config/i386/i386-expand.cc:12686
+#: config/i386/i386-expand.cc:12728
 #, gcc-internal-format
 msgid "%qE needs isa option %s"
 msgstr ""
 
-#: config/i386/i386-expand.cc:13174
+#: config/i386/i386-expand.cc:13216
 #, gcc-internal-format
 msgid "second, third and fourth argument must be a const"
 msgstr ""
 
-#: config/i386/i386-expand.cc:13182
+#: config/i386/i386-expand.cc:13224
 #, gcc-internal-format
 msgid "invalid third argument"
 msgstr ""
 
 #. Ignore the hint.
-#: config/i386/i386-expand.cc:13191 config/i386/i386-expand.cc:13246
+#: config/i386/i386-expand.cc:13233 config/i386/i386-expand.cc:13288
 #, 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:13208
+#: config/i386/i386-expand.cc:13250
 #, gcc-internal-format
 msgid "invalid third argument to %<__builtin_ia32_prefetch%>; using zero"
 msgstr ""
 
-#: config/i386/i386-expand.cc:13234
+#: config/i386/i386-expand.cc:13276
 #, gcc-internal-format
 msgid "second argument must be a const"
 msgstr ""
 
-#: config/i386/i386-expand.cc:13726
+#: config/i386/i386-expand.cc:13768
 #, gcc-internal-format
 msgid "the last argument must be a 32-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:13759
+#: config/i386/i386-expand.cc:13801
 #, gcc-internal-format
 msgid "last argument must be an immediate"
 msgstr ""
 
-#: config/i386/i386-expand.cc:14523 config/i386/i386-expand.cc:14735
+#: config/i386/i386-expand.cc:14565 config/i386/i386-expand.cc:14777
 #, gcc-internal-format
 msgid "the last argument must be scale 1, 2, 4, 8"
 msgstr ""
 
-#: config/i386/i386-expand.cc:14788
+#: config/i386/i386-expand.cc:14830
 #, gcc-internal-format
 msgid "the forth argument must be scale 1, 2, 4, 8"
 msgstr ""
 
-#: config/i386/i386-expand.cc:14794
+#: config/i386/i386-expand.cc:14836
 #, gcc-internal-format
 msgid "incorrect hint operand"
 msgstr ""
 
-#: config/i386/i386-expand.cc:14813
+#: config/i386/i386-expand.cc:14855
 #, gcc-internal-format
 msgid "the argument to %<xabort%> intrinsic must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-features.cc:3231
+#: config/i386/i386-features.cc:3265
 #, gcc-internal-format
 msgid ""
 "function versions cannot be marked as %<gnu_inline%>, bodies have to be "
 "generated"
 msgstr ""
 
-#: config/i386/i386-features.cc:3236 config/i386/i386-features.cc:3505
+#: config/i386/i386-features.cc:3270 config/i386/i386-features.cc:3539
 #, gcc-internal-format
 msgid "virtual function multiversioning not supported"
 msgstr ""
 
-#: config/i386/i386-features.cc:3369 config/rs6000/rs6000.cc:25139
+#: config/i386/i386-features.cc:3403 config/rs6000/rs6000.cc:25106
 #, gcc-internal-format
 msgid "multiversioning needs %<ifunc%> which is not supported on this target"
 msgstr ""
@@ -42031,7 +42074,7 @@ msgstr ""
 msgid "%qE attribute is used for non-class method"
 msgstr ""
 
-#: config/i386/i386-options.cc:3594 config/rs6000/rs6000.cc:20508
+#: config/i386/i386-options.cc:3594 config/rs6000/rs6000.cc:20475
 #, gcc-internal-format
 msgid "%qE incompatible attribute ignored"
 msgstr ""
@@ -42207,13 +42250,13 @@ msgstr ""
 msgid "%<-mcall-ms2sysv-xlogues%> is not compatible with %s"
 msgstr ""
 
-#: config/i386/i386.cc:8468
+#: config/i386/i386.cc:8470
 #, gcc-internal-format
 msgid ""
 "%<ms_hook_prologue%> attribute is not compatible with %<-mfentry%> for 32-bit"
 msgstr ""
 
-#: config/i386/i386.cc:8558
+#: config/i386/i386.cc:8560
 #, gcc-internal-format
 msgid ""
 "Dynamic Realign Argument Pointer (DRAP) not supported in interrupt service "
@@ -42221,22 +42264,22 @@ msgid ""
 "return."
 msgstr ""
 
-#: config/i386/i386.cc:9490
+#: config/i386/i386.cc:9495
 #, gcc-internal-format
 msgid "Stack realignment not supported with %<__builtin_eh_return%>"
 msgstr ""
 
-#: config/i386/i386.cc:9495
+#: config/i386/i386.cc:9500
 #, gcc-internal-format
 msgid "regparm nested function not supported with %<__builtin_eh_return%>"
 msgstr ""
 
-#: config/i386/i386.cc:9881
+#: config/i386/i386.cc:9886
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> does not support fastcall with nested function"
 msgstr ""
 
-#: config/i386/i386.cc:9901
+#: config/i386/i386.cc:9906
 #, gcc-internal-format
 msgid ""
 "%<-fsplit-stack%> does not support 2 register parameters for a nested "
@@ -42245,77 +42288,77 @@ msgstr ""
 
 #. FIXME: We could make this work by pushing a register
 #. around the addition and comparison.
-#: config/i386/i386.cc:9912
+#: config/i386/i386.cc:9917
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> does not support 3 register parameters"
 msgstr ""
 
-#: config/i386/i386.cc:12950
+#: config/i386/i386.cc:12955
 #, gcc-internal-format
 msgid "%<V%> modifier on non-integer register"
 msgstr ""
 
-#: config/i386/i386.cc:12961 config/i386/i386.cc:12975
+#: config/i386/i386.cc:12966 config/i386/i386.cc:12980
 #, gcc-internal-format
 msgid "unsupported size for integer register"
 msgstr ""
 
-#: config/i386/i386.cc:13007
+#: config/i386/i386.cc:13012
 #, gcc-internal-format
 msgid "extended registers have no high halves"
 msgstr ""
 
-#: config/i386/i386.cc:13022
+#: config/i386/i386.cc:13027
 #, gcc-internal-format
 msgid "unsupported operand size for extended register"
 msgstr ""
 
-#: config/i386/i386.cc:13216
+#: config/i386/i386.cc:13221
 #, gcc-internal-format
 msgid "non-integer operand used with operand code %<z%>"
 msgstr ""
 
-#: config/i386/i386.cc:17317
+#: config/i386/i386.cc:17330
 #, gcc-internal-format
 msgid ""
 "empty class %qT parameter passing ABI changes in %<-fabi-version=12%> (GCC 8)"
 msgstr ""
 
-#: config/i386/i386.cc:21712
+#: config/i386/i386.cc:21728
 msgid "the alignment of %<_Atomic %T%> fields changed in %{GCC 11.1%}"
 msgstr ""
 
-#: config/i386/i386.cc:21808
+#: config/i386/i386.cc:21824
 #, gcc-internal-format
 msgid "profiling %<-mcmodel=large%> with PIC is not supported"
 msgstr ""
 
-#: config/i386/i386.cc:23624
+#: config/i386/i386.cc:23661
 #, gcc-internal-format
 msgid "unknown architecture specific memory model"
 msgstr ""
 
-#: config/i386/i386.cc:23631
+#: config/i386/i386.cc:23668
 #, gcc-internal-format
 msgid "%<HLE_ACQUIRE%> not used with %<ACQUIRE%> or stronger memory model"
 msgstr ""
 
-#: config/i386/i386.cc:23638
+#: config/i386/i386.cc:23675
 #, gcc-internal-format
 msgid "%<HLE_RELEASE%> not used with %<RELEASE%> or stronger memory model"
 msgstr ""
 
-#: config/i386/i386.cc:23687
+#: config/i386/i386.cc:23724
 #, gcc-internal-format
 msgid "unsupported return type %qT for simd"
 msgstr ""
 
-#: config/i386/i386.cc:23718
+#: config/i386/i386.cc:23755
 #, gcc-internal-format
 msgid "unsupported argument type %qT for simd"
 msgstr ""
 
-#: config/i386/i386.cc:24273
+#: config/i386/i386.cc:24301
 #, gcc-internal-format
 msgid "%<-fexcess-precision=16%> is not compatible with %<-mfpmath=387%>"
 msgstr ""
@@ -42377,7 +42420,7 @@ msgstr ""
 msgid "argument %qd is not a constant"
 msgstr ""
 
-#: config/iq2000/iq2000.cc:2893 config/xtensa/xtensa.cc:3063
+#: config/iq2000/iq2000.cc:2893 config/xtensa/xtensa.cc:3100
 #, gcc-internal-format
 msgid "%<PRINT_OPERAND_ADDRESS%>, null pointer"
 msgstr ""
@@ -42387,7 +42430,7 @@ msgstr ""
 msgid "%<PRINT_OPERAND%>: Unknown punctuation %<%c%>"
 msgstr ""
 
-#: config/iq2000/iq2000.cc:3057 config/xtensa/xtensa.cc:2912
+#: config/iq2000/iq2000.cc:3057 config/xtensa/xtensa.cc:2949
 #, gcc-internal-format
 msgid "%<PRINT_OPERAND%> null pointer"
 msgstr ""
@@ -42616,7 +42659,7 @@ msgstr ""
 msgid "stack limit expression is not supported"
 msgstr ""
 
-#: config/m68k/m68k.cc:7119 config/s390/s390.cc:16829
+#: config/m68k/m68k.cc:7134 config/s390/s390.cc:16809
 #, gcc-internal-format
 msgid "%<-fexcess-precision=16%> is not supported on this target"
 msgstr ""
@@ -42658,186 +42701,186 @@ msgstr ""
 msgid "%<-mxl-multiply-high%> requires %<-mno-xl-soft-mul%>"
 msgstr ""
 
-#: config/mips/mips.cc:1425 config/mips/mips.cc:1429
+#: config/mips/mips.cc:1426 config/mips/mips.cc:1430
 #, gcc-internal-format
 msgid "%qs attribute only applies to functions"
 msgstr ""
 
-#: config/mips/mips.cc:1439 config/mips/mips.cc:1445
+#: config/mips/mips.cc:1440 config/mips/mips.cc:1446
 #, gcc-internal-format
 msgid "%qE cannot have both %qs and %qs attributes"
 msgstr ""
 
-#: config/mips/mips.cc:1474 config/mips/mips.cc:1480 config/nios2/nios2.cc:4487
+#: config/mips/mips.cc:1475 config/mips/mips.cc:1481 config/nios2/nios2.cc:4487
 #, gcc-internal-format
 msgid "%qE redeclared with conflicting %qs attributes"
 msgstr ""
 
-#: config/mips/mips.cc:1512 config/mips/mips.cc:1566 config/riscv/riscv.cc:3882
+#: config/mips/mips.cc:1513 config/mips/mips.cc:1567 config/riscv/riscv.cc:4016
 #, gcc-internal-format
 msgid "%qE attribute requires a string argument"
 msgstr ""
 
-#: config/mips/mips.cc:1520
+#: config/mips/mips.cc:1521
 #, gcc-internal-format
 msgid "argument to %qE attribute is neither eic, nor %<vector=<line>%>"
 msgstr ""
 
-#: config/mips/mips.cc:1536
+#: config/mips/mips.cc:1537
 #, 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:1573
+#: config/mips/mips.cc:1574
 #, gcc-internal-format
 msgid "argument to %qE attribute is not intstack"
 msgstr ""
 
-#: config/mips/mips.cc:6089
+#: config/mips/mips.cc:6090
 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:6517
+#: config/mips/mips.cc:6518
 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:6541
+#: config/mips/mips.cc:6542
 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:7880
+#: config/mips/mips.cc:7881
 #, gcc-internal-format
 msgid "cannot handle inconsistent calls to %qs"
 msgstr ""
 
-#: config/mips/mips.cc:11120
+#: config/mips/mips.cc:11121
 #, gcc-internal-format
 msgid "the %<interrupt%> attribute requires a MIPS32r2 processor or greater"
 msgstr ""
 
-#: config/mips/mips.cc:11122
+#: config/mips/mips.cc:11123
 #, gcc-internal-format
 msgid "interrupt handlers cannot be MIPS16 functions"
 msgstr ""
 
-#: config/mips/mips.cc:12112
+#: config/mips/mips.cc:12113
 #, gcc-internal-format
 msgid "%<-fstack-check=specific%> not implemented for MIPS16"
 msgstr ""
 
-#: config/mips/mips.cc:17180
+#: config/mips/mips.cc:17181
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %d to the built-in must be a constant in range %d to %d"
 msgstr ""
 
-#: config/mips/mips.cc:17300
+#: config/mips/mips.cc:17301
 #, gcc-internal-format
 msgid "failed to expand built-in function"
 msgstr ""
 
-#: config/mips/mips.cc:17431
+#: config/mips/mips.cc:17432
 #, gcc-internal-format
 msgid "built-in function %qE not supported for MIPS16"
 msgstr ""
 
-#: config/mips/mips.cc:18039
+#: config/mips/mips.cc:18040
 #, gcc-internal-format
 msgid "%qs does not support MIPS16 code"
 msgstr ""
 
-#: config/mips/mips.cc:19846
+#: config/mips/mips.cc:19847
 #, gcc-internal-format
 msgid "MIPS16 PIC for ABIs other than o32 and o64"
 msgstr ""
 
-#: config/mips/mips.cc:19849
+#: config/mips/mips.cc:19850
 #, gcc-internal-format
 msgid "MIPS16 %<-mxgot%> code"
 msgstr ""
 
-#: config/mips/mips.cc:19852
+#: config/mips/mips.cc:19853
 #, gcc-internal-format
 msgid "%<hard-float%> MIPS16 code for ABIs other than o32 and o64"
 msgstr ""
 
-#: config/mips/mips.cc:19855
+#: config/mips/mips.cc:19856
 #, gcc-internal-format
 msgid "MSA MIPS16 code"
 msgstr ""
 
-#: config/mips/mips.cc:20033 config/mips/mips.cc:20038
-#: config/mips/mips.cc:20127 config/mips/mips.cc:20129
-#: config/mips/mips.cc:20159 config/mips/mips.cc:20169
-#: config/mips/mips.cc:20275 config/mips/mips.cc:20299
+#: config/mips/mips.cc:20034 config/mips/mips.cc:20039
+#: config/mips/mips.cc:20128 config/mips/mips.cc:20130
+#: config/mips/mips.cc:20160 config/mips/mips.cc:20170
+#: config/mips/mips.cc:20276 config/mips/mips.cc:20300
 #, gcc-internal-format, gfc-internal-format
 msgid "unsupported combination: %s"
 msgstr ""
 
-#: config/mips/mips.cc:20072
+#: config/mips/mips.cc:20073
 #, gcc-internal-format
 msgid ""
 "%<-%s%> conflicts with the other architecture options, which specify a %s "
 "processor"
 msgstr ""
 
-#: config/mips/mips.cc:20082
+#: config/mips/mips.cc:20083
 #, gcc-internal-format
 msgid "%<-march=%s%> is not compatible with the selected ABI"
 msgstr ""
 
-#: config/mips/mips.cc:20097
+#: config/mips/mips.cc:20098
 #, gcc-internal-format
 msgid "%<-mgp64%> used with a 32-bit processor"
 msgstr ""
 
-#: config/mips/mips.cc:20099
+#: config/mips/mips.cc:20100
 #, gcc-internal-format
 msgid "%<-mgp32%> used with a 64-bit ABI"
 msgstr ""
 
-#: config/mips/mips.cc:20101
+#: config/mips/mips.cc:20102
 #, gcc-internal-format
 msgid "%<-mgp64%> used with a 32-bit ABI"
 msgstr ""
 
-#: config/mips/mips.cc:20124
+#: config/mips/mips.cc:20125
 #, gcc-internal-format
 msgid "the %qs architecture does not support %<-mfp32%>"
 msgstr ""
 
-#: config/mips/mips.cc:20133
+#: config/mips/mips.cc:20134
 #, 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:20136
+#: config/mips/mips.cc:20137
 #, gcc-internal-format
 msgid "%<-mgp32%> and %<-mfp64%> can only be combined when using the o32 ABI"
 msgstr ""
 
-#: config/mips/mips.cc:20157
+#: config/mips/mips.cc:20158
 #, gcc-internal-format
 msgid "%<-mfpxx%> can only be used with the o32 ABI"
 msgstr ""
 
-#: config/mips/mips.cc:20161
+#: config/mips/mips.cc:20162
 #, gcc-internal-format
 msgid "%<-march=%s%> requires %<-mfp32%>"
 msgstr ""
 
-#: config/mips/mips.cc:20163
+#: config/mips/mips.cc:20164
 #, gcc-internal-format
 msgid "%<-mfpxx%> requires %<-mlra%>"
 msgstr ""
@@ -42847,117 +42890,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:20188
+#: config/mips/mips.cc:20189
 #, gcc-internal-format
 msgid "the combination of %qs and %qs is incompatible with %qs"
 msgstr ""
 
-#: config/mips/mips.cc:20241
+#: config/mips/mips.cc:20242
 #, gcc-internal-format
 msgid "the %qs architecture does not support branch-likely instructions"
 msgstr ""
 
-#: config/mips/mips.cc:20256
+#: config/mips/mips.cc:20257
 #, gcc-internal-format
 msgid "the %qs architecture does not support madd or msub instructions"
 msgstr ""
 
-#: config/mips/mips.cc:20270
+#: config/mips/mips.cc:20271
 #, gcc-internal-format
 msgid "the %qs architecture does not support odd single-precision registers"
 msgstr ""
 
-#: config/mips/mips.cc:20283
+#: config/mips/mips.cc:20284
 #, gcc-internal-format
 msgid "unsupported combination: %qs%s %s"
 msgstr ""
 
-#: config/mips/mips.cc:20292
+#: config/mips/mips.cc:20293
 #, gcc-internal-format
 msgid "unsupported combination: %qs %s"
 msgstr ""
 
-#: config/mips/mips.cc:20307
+#: config/mips/mips.cc:20308
 #, gcc-internal-format
 msgid "cannot generate position-independent code for %qs"
 msgstr ""
 
-#: config/mips/mips.cc:20310
+#: config/mips/mips.cc:20311
 #, gcc-internal-format
 msgid "position-independent code requires %qs"
 msgstr ""
 
-#: config/mips/mips.cc:20343
+#: config/mips/mips.cc:20344
 #, gcc-internal-format
 msgid "%<-mno-gpopt%> needs %<-mexplicit-relocs%>"
 msgstr ""
 
-#: config/mips/mips.cc:20351 config/mips/mips.cc:20354
+#: config/mips/mips.cc:20352 config/mips/mips.cc:20355
 #, gcc-internal-format
 msgid "cannot use small-data accesses for %qs"
 msgstr ""
 
-#: config/mips/mips.cc:20369
+#: config/mips/mips.cc:20370
 #, gcc-internal-format
 msgid "the %qs architecture does not support %<-m%s=legacy%>"
 msgstr ""
 
-#: config/mips/mips.cc:20376
+#: config/mips/mips.cc:20377
 #, gcc-internal-format
 msgid "the %qs architecture does not support %<-m%s=2008%>"
 msgstr ""
 
-#: config/mips/mips.cc:20394
+#: config/mips/mips.cc:20395
 #, gcc-internal-format
 msgid "%<-mips3d%> requires %<-mpaired-single%>"
 msgstr ""
 
-#: config/mips/mips.cc:20404
+#: config/mips/mips.cc:20405
 #, gcc-internal-format
 msgid "%qs must be used with %qs"
 msgstr ""
 
-#: config/mips/mips.cc:20414
+#: config/mips/mips.cc:20415
 #, gcc-internal-format
 msgid "%<-mmsa%> must be used with %<-mfp64%> and %<-mhard-float%>"
 msgstr ""
 
-#: config/mips/mips.cc:20421
+#: config/mips/mips.cc:20422
 #, gcc-internal-format
 msgid "the %qs architecture does not support paired-single instructions"
 msgstr ""
 
-#: config/mips/mips.cc:20430
+#: config/mips/mips.cc:20431
 #, gcc-internal-format
 msgid "%qs requires a target that provides the %qs instruction"
 msgstr ""
 
-#: config/mips/mips.cc:20441
+#: config/mips/mips.cc:20442
 #, gcc-internal-format
 msgid "the %qs architecture does not support DSP instructions"
 msgstr ""
 
-#: config/mips/mips.cc:20451
+#: config/mips/mips.cc:20452
 #, gcc-internal-format
 msgid "%<-mloongson-mmi%> must be used with %<-mhard-float%>"
 msgstr ""
 
-#: config/mips/mips.cc:20461
+#: config/mips/mips.cc:20462
 #, gcc-internal-format
 msgid "%<-mloongson-ext2%> must be used with %<-mloongson-ext%>"
 msgstr ""
 
-#: config/mips/mips.cc:20556
+#: config/mips/mips.cc:20557
 #, gcc-internal-format
 msgid "%qs requires branch-likely instructions"
 msgstr ""
 
-#: config/mips/mips.cc:20560
+#: config/mips/mips.cc:20561
 #, gcc-internal-format
 msgid "the %qs architecture does not support the synci instruction"
 msgstr ""
 
-#: config/mips/mips.cc:21396
+#: config/mips/mips.cc:21397
 #, gcc-internal-format
 msgid "mips16 function profiling"
 msgstr ""
@@ -43283,7 +43326,7 @@ msgid "MSP430 built-in functions only work inside interrupt handlers"
 msgstr ""
 
 #: config/msp430/msp430.cc:2861 config/pru/pru.cc:3048 config/rx/rx.cc:2666
-#: config/xtensa/xtensa.cc:4034 config/xtensa/xtensa.cc:4060
+#: config/xtensa/xtensa.cc:4155 config/xtensa/xtensa.cc:4181
 #, gcc-internal-format
 msgid "bad builtin code"
 msgstr ""
@@ -43828,67 +43871,67 @@ msgstr ""
 msgid "pointers to %<__regio_symbol%> address space are prohibited"
 msgstr ""
 
-#: config/riscv/riscv-c.cc:166
+#: config/riscv/riscv-c.cc:176
 #, gcc-internal-format
 msgid "%<#pragma riscv intrinsic%> requires a string parameter"
 msgstr ""
 
-#: config/riscv/riscv-c.cc:176
+#: config/riscv/riscv-c.cc:186
 #, gcc-internal-format
 msgid "%<#pragma riscv intrinsic%> option %qs needs 'V' extension enabled"
 msgstr ""
 
-#: config/riscv/riscv-c.cc:184
+#: config/riscv/riscv-c.cc:194
 #, gcc-internal-format
 msgid "unknown %<#pragma riscv intrinsic%> option %qs"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:1398
+#: config/riscv/riscv-vector-builtins.cc:3369
 #, gcc-internal-format
 msgid "RVV type %qT does not have a fixed size"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:1404
+#: config/riscv/riscv-vector-builtins.cc:3375
 #, gcc-internal-format
 msgid "RVV type %qT does not have a defined alignment"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:1419
+#: config/riscv/riscv-vector-builtins.cc:3390
 #, gcc-internal-format
 msgid "arithmetic on pointer to RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:1427
+#: config/riscv/riscv-vector-builtins.cc:3398
 #, gcc-internal-format
 msgid "member variables cannot have RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:1429
+#: config/riscv/riscv-vector-builtins.cc:3400
 #, gcc-internal-format
 msgid "fields cannot have RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:1435
+#: config/riscv/riscv-vector-builtins.cc:3406
 #, gcc-internal-format
 msgid "array elements cannot have RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:1441
+#: config/riscv/riscv-vector-builtins.cc:3412
 #, gcc-internal-format
 msgid "cannot allocate objects with RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:1447
+#: config/riscv/riscv-vector-builtins.cc:3418
 #, gcc-internal-format
 msgid "cannot delete objects with RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:1453
+#: config/riscv/riscv-vector-builtins.cc:3424
 #, gcc-internal-format
 msgid "cannot throw or catch RVV type %qT"
 msgstr ""
 
-#: config/riscv/riscv-vector-builtins.cc:1459
+#: config/riscv/riscv-vector-builtins.cc:3430
 #, gcc-internal-format
 msgid "capture by copy of RVV type %qT"
 msgstr ""
@@ -43898,78 +43941,78 @@ msgstr ""
 msgid "unknown cpu %qs for %<-mtune%>"
 msgstr ""
 
-#: config/riscv/riscv.cc:1766
+#: config/riscv/riscv.cc:1800
 #, gcc-internal-format
 msgid "this operation requires the RVV ISA extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:1767
+#: config/riscv/riscv.cc:1801
 #, 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:3501 config/riscv/riscv.cc:3543
+#: config/riscv/riscv.cc:3635 config/riscv/riscv.cc:3677
 #, gcc-internal-format
 msgid "ABI for flattened struct with zero-length bit-fields changed in GCC 10"
 msgstr ""
 
-#: config/riscv/riscv.cc:3893
+#: config/riscv/riscv.cc:4027
 #, gcc-internal-format
 msgid ""
 "argument to %qE attribute is not %<\"user\"%>, %<\"supervisor\"%>, or "
 "%<\"machine\"%>"
 msgstr ""
 
-#: config/riscv/riscv.cc:6034
+#: config/riscv/riscv.cc:6234
 #, gcc-internal-format
 msgid "%<-mdiv%> requires %<-march%> to subsume the %<M%> extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:6077
+#: config/riscv/riscv.cc:6277
 #, gcc-internal-format
 msgid "requested ABI requires %<-march%> to subsume the %qc extension"
 msgstr ""
 
-#: config/riscv/riscv.cc:6081
+#: config/riscv/riscv.cc:6281
 #, gcc-internal-format
 msgid "rv32e requires ilp32e ABI"
 msgstr ""
 
-#: config/riscv/riscv.cc:6086
+#: config/riscv/riscv.cc:6286
 #, gcc-internal-format
 msgid "z*inx requires ABI ilp32, ilp32e or lp64"
 msgstr ""
 
-#: config/riscv/riscv.cc:6090
+#: config/riscv/riscv.cc:6290
 #, gcc-internal-format
 msgid "ABI requires %<-march=rv%d%>"
 msgstr ""
 
-#: config/riscv/riscv.cc:6100
+#: config/riscv/riscv.cc:6300
 #, gcc-internal-format
 msgid "%<-mpreferred-stack-boundary=%d%> must be between %d and %d"
 msgstr ""
 
-#: config/riscv/riscv.cc:6113
+#: config/riscv/riscv.cc:6313
 #, gcc-internal-format
 msgid ""
 "%<-mriscv-attribute%> RISC-V ELF attribute requires GNU as 2.32 [%<-mriscv-"
 "attribute%>]"
 msgstr ""
 
-#: config/riscv/riscv.cc:6140 config/rs6000/rs6000.cc:4540
+#: config/riscv/riscv.cc:6340 config/rs6000/rs6000.cc:4543
 #, gcc-internal-format
 msgid "%qs is not a valid base register in %qs"
 msgstr ""
 
-#: config/riscv/riscv.cc:6154 config/rs6000/rs6000.cc:4523
+#: config/riscv/riscv.cc:6354 config/rs6000/rs6000.cc:4526
 #, gcc-internal-format
 msgid "%qs is not a valid number in %qs"
 msgstr ""
 
-#: config/riscv/riscv.cc:6466
+#: config/riscv/riscv.cc:6666
 #, gcc-internal-format
 msgid "%qs function cannot have different interrupt type"
 msgstr ""
@@ -44357,17 +44400,17 @@ msgid ""
 "installed C and C++ libraries"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3769
+#: config/rs6000/rs6000.cc:3772
 #, gcc-internal-format
 msgid "AltiVec not supported in this target"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3786
+#: config/rs6000/rs6000.cc:3789
 #, gcc-internal-format
 msgid "%qs is not supported on little endian systems"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:3868
+#: config/rs6000/rs6000.cc:3871
 #, gcc-internal-format
 msgid ""
 "power9 target option is incompatible with %<%s=<xxx>%> for <xxx> less than "
@@ -44376,191 +44419,191 @@ msgstr ""
 
 #. Enforce that none of the ISA_3_0_MASKS_SERVER flags
 #. were explicitly cleared.
-#: config/rs6000/rs6000.cc:3876
+#: config/rs6000/rs6000.cc:3879
 #, gcc-internal-format
 msgid "%qs incompatible with explicitly disabled options"
 msgstr ""
 
 #. TARGET_VSX = 1 implies Power 7 and newer
-#: config/rs6000/rs6000.cc:3910 config/rs6000/rs6000.cc:3918
-#: config/rs6000/rs6000.cc:3925 config/rs6000/rs6000.cc:3932
-#: config/rs6000/rs6000.cc:3940 config/rs6000/rs6000.cc:3959
-#: config/rs6000/rs6000.cc:4021 config/rs6000/rs6000.cc:4048
-#: config/rs6000/rs6000.cc:4075 config/rs6000/rs6000.cc:4090
-#: config/rs6000/rs6000.cc:4098 config/rs6000/rs6000.cc:4222
-#: config/rs6000/rs6000.cc:4235 config/rs6000/rs6000.cc:4244
-#: config/rs6000/rs6000.cc:4382 config/rs6000/rs6000.cc:4395
-#: config/rs6000/rs6000.cc:4416
+#: config/rs6000/rs6000.cc:3913 config/rs6000/rs6000.cc:3921
+#: config/rs6000/rs6000.cc:3928 config/rs6000/rs6000.cc:3935
+#: config/rs6000/rs6000.cc:3943 config/rs6000/rs6000.cc:3962
+#: config/rs6000/rs6000.cc:4024 config/rs6000/rs6000.cc:4051
+#: config/rs6000/rs6000.cc:4078 config/rs6000/rs6000.cc:4093
+#: config/rs6000/rs6000.cc:4101 config/rs6000/rs6000.cc:4225
+#: config/rs6000/rs6000.cc:4238 config/rs6000/rs6000.cc:4247
+#: config/rs6000/rs6000.cc:4385 config/rs6000/rs6000.cc:4398
+#: config/rs6000/rs6000.cc:4419
 #, gcc-internal-format
 msgid "%qs requires %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4126
+#: config/rs6000/rs6000.cc:4129
 #, gcc-internal-format
 msgid "target attribute or pragma changes %<long double%> size"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4147
+#: config/rs6000/rs6000.cc:4150
 #, gcc-internal-format
 msgid "%qs requires full ISA 2.06 support"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4160
+#: config/rs6000/rs6000.cc:4163
 #, gcc-internal-format
 msgid "Using IEEE extended precision %<long double%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4163
+#: config/rs6000/rs6000.cc:4166
 #, gcc-internal-format
 msgid "Using IBM extended precision %<long double%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4182
+#: config/rs6000/rs6000.cc:4185
 #, gcc-internal-format
 msgid "%qs requires VSX support"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4191
+#: config/rs6000/rs6000.cc:4194
 #, gcc-internal-format
 msgid "The %<-mfloat128%> option may not be fully supported"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4214
+#: config/rs6000/rs6000.cc:4217
 #, gcc-internal-format
 msgid "%qs requires full ISA 3.0 support"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4301
+#: config/rs6000/rs6000.cc:4304
 #, gcc-internal-format
 msgid "unknown vectorization library ABI type in %<-mveclibabi=%s%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4314 config/rs6000/rs6000.cc:4329
+#: config/rs6000/rs6000.cc:4317 config/rs6000/rs6000.cc:4332
 #, gcc-internal-format
 msgid "target attribute or pragma changes AltiVec ABI"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4342
+#: config/rs6000/rs6000.cc:4345
 #, gcc-internal-format
 msgid "target attribute or pragma changes darwin64 ABI"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4548
+#: config/rs6000/rs6000.cc:4551
 #, gcc-internal-format
 msgid "%qs needs a valid base register"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4845
+#: config/rs6000/rs6000.cc:4848
 #, gcc-internal-format
 msgid "unknown option for %<%s=%s%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4874
+#: config/rs6000/rs6000.cc:4877
 #, gcc-internal-format
 msgid "%qs is deprecated and not recommended in any circumstances"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:10904
+#: config/rs6000/rs6000.cc:10917
 #, gcc-internal-format
 msgid "%qs is an opaque type, and you cannot set it to other values"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:17774
+#: config/rs6000/rs6000.cc:17741
 #, gcc-internal-format
 msgid "no profiling of 64-bit code for this ABI"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20170
+#: config/rs6000/rs6000.cc:20137
 #, gcc-internal-format
 msgid ""
 "you cannot take the address of a nested function if you use the %qs option"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20252
+#: config/rs6000/rs6000.cc:20219
 #, gcc-internal-format
 msgid "use of %<long double%> in AltiVec types is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20254
+#: config/rs6000/rs6000.cc:20221
 #, gcc-internal-format
 msgid "use of boolean types in AltiVec types is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20256
+#: config/rs6000/rs6000.cc:20223
 #, gcc-internal-format
 msgid "use of %<complex%> in AltiVec types is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20258
+#: config/rs6000/rs6000.cc:20225
 #, gcc-internal-format
 msgid "use of decimal floating-point types in AltiVec types is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20264
+#: config/rs6000/rs6000.cc:20231
 #, gcc-internal-format
 msgid "use of %<long%> in AltiVec types is invalid for 64-bit code without %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20267
+#: config/rs6000/rs6000.cc:20234
 #, gcc-internal-format
 msgid "use of %<long%> in AltiVec types is deprecated; use %<int%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20272
+#: config/rs6000/rs6000.cc:20239
 #, gcc-internal-format
 msgid "use of %<long long%> in AltiVec types is invalid without %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:20275
+#: config/rs6000/rs6000.cc:20242
 #, gcc-internal-format
 msgid "use of %<double%> in AltiVec types is invalid without %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:24413
+#: config/rs6000/rs6000.cc:24380
 #, gcc-internal-format
 msgid "invalid cpu %qs for %s%qs%s"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:24416
+#: config/rs6000/rs6000.cc:24383
 #, gcc-internal-format
 msgid "%s%qs%s is not allowed"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:24418
+#: config/rs6000/rs6000.cc:24385
 #, gcc-internal-format
 msgid "%s%qs%s is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:24947
+#: config/rs6000/rs6000.cc:24914
 #, gcc-internal-format
 msgid "%<-mno-%s%> turns off %<-m%s%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:25106
+#: config/rs6000/rs6000.cc:25073
 #, gcc-internal-format
 msgid ""
 "%<target_clones%> attribute needs GLIBC (2.23 and newer) that exports "
 "hardware capability bits"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:25395
+#: config/rs6000/rs6000.cc:25362
 #, gcc-internal-format
 msgid "Virtual function multiversioning not supported"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28469
+#: config/rs6000/rs6000.cc:28499
 #, gcc-internal-format
 msgid ""
 "the result for the xxspltidp instruction is undefined for subnormal input "
 "values"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28948
+#: config/rs6000/rs6000.cc:28978
 #, gcc-internal-format
 msgid "type %<__vector_quad%> requires the %qs option"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28953
+#: config/rs6000/rs6000.cc:28983
 #, gcc-internal-format
 msgid "type %<__vector_pair%> requires the %qs option"
 msgstr ""
@@ -44784,114 +44827,114 @@ msgstr ""
 msgid "nested functions cannot be profiled with %<-mfentry%> on s390"
 msgstr ""
 
-#: config/s390/s390.cc:15716
+#: config/s390/s390.cc:15688
 #, gcc-internal-format
 msgid "64-bit ABI not supported in ESA/390 mode"
 msgstr ""
 
-#: config/s390/s390.cc:15723
+#: config/s390/s390.cc:15695
 #, gcc-internal-format
 msgid "thunk-inline is only supported with %<-mindirect-branch-jump%>"
 msgstr ""
 
-#: config/s390/s390.cc:15758
+#: config/s390/s390.cc:15730
 #, gcc-internal-format, gfc-internal-format
 msgid "hardware vector support not available on %s"
 msgstr ""
 
-#: config/s390/s390.cc:15761
+#: config/s390/s390.cc:15733
 #, gcc-internal-format
 msgid "hardware vector support not available with %<-msoft-float%>"
 msgstr ""
 
-#: config/s390/s390.cc:15790
+#: config/s390/s390.cc:15762
 #, gcc-internal-format, gfc-internal-format
 msgid "hardware decimal floating-point instructions not available on %s"
 msgstr ""
 
-#: config/s390/s390.cc:15794
+#: config/s390/s390.cc:15766
 #, gcc-internal-format
 msgid ""
 "hardware decimal floating-point instructions not available in ESA/390 mode"
 msgstr ""
 
-#: config/s390/s390.cc:15806
+#: config/s390/s390.cc:15778
 #, gcc-internal-format
 msgid "%<-mhard-dfp%> cannot be used in conjunction with %<-msoft-float%>"
 msgstr ""
 
-#: config/s390/s390.cc:15815
+#: config/s390/s390.cc:15787
 #, gcc-internal-format
 msgid ""
 "%<-mbackchain%> %<-mpacked-stack%> %<-mhard-float%> are not supported in "
 "combination"
 msgstr ""
 
-#: config/s390/s390.cc:15821
+#: config/s390/s390.cc:15793
 #, gcc-internal-format
 msgid "stack size must be greater than the stack guard value"
 msgstr ""
 
-#: config/s390/s390.cc:15823
+#: config/s390/s390.cc:15795
 #, gcc-internal-format
 msgid "stack size must not be greater than 64k"
 msgstr ""
 
-#: config/s390/s390.cc:15826
+#: config/s390/s390.cc:15798
 #, gcc-internal-format
 msgid "%<-mstack-guard%> implies use of %<-mstack-size%>"
 msgstr ""
 
-#: config/s390/s390.cc:15839
+#: config/s390/s390.cc:15811
 #, gcc-internal-format
 msgid "%<-mtpf-trace-hook-prologue-check%> requires integer in range 0-4095"
 msgstr ""
 
-#: config/s390/s390.cc:15842
+#: config/s390/s390.cc:15814
 #, gcc-internal-format
 msgid "%<-mtpf-trace-hook-prologue-target%> requires integer in range 0-4095"
 msgstr ""
 
-#: config/s390/s390.cc:15845
+#: config/s390/s390.cc:15817
 #, gcc-internal-format
 msgid "%<-mtpf-trace-hook-epilogue-check%> requires integer in range 0-4095"
 msgstr ""
 
-#: config/s390/s390.cc:15848
+#: config/s390/s390.cc:15820
 #, gcc-internal-format
 msgid "%<-mtpf-trace-hook-epilogue-target%> requires integer in range 0-4095"
 msgstr ""
 
-#: config/s390/s390.cc:15904
+#: config/s390/s390.cc:15884
 #, gcc-internal-format
 msgid "%<-mfentry%> is supported only for 64-bit CPUs"
 msgstr ""
 
 #. argument is not a plain number
-#: config/s390/s390.cc:15940
+#: config/s390/s390.cc:15920
 #, gcc-internal-format
 msgid "arguments to %qs should be non-negative integers"
 msgstr ""
 
-#: config/s390/s390.cc:15947
+#: config/s390/s390.cc:15927
 #, gcc-internal-format
 msgid "argument to %qs is too large (max. %d)"
 msgstr ""
 
-#: config/s390/s390.cc:15978
+#: config/s390/s390.cc:15958
 #, gcc-internal-format
 msgid ""
 "%<-mno-pic-data-is-text-relative%> cannot be used without %<-fpic%>/%<-fPIC%>"
 msgstr ""
 
-#: config/s390/s390.cc:16139 config/s390/s390.cc:16189
-#: config/s390/s390.cc:16206
+#: config/s390/s390.cc:16119 config/s390/s390.cc:16169
+#: config/s390/s390.cc:16186
 #, gcc-internal-format
 msgid "attribute %<target%> argument %qs is unknown"
 msgstr ""
 
 #. Value is not allowed for the target attribute.
-#: config/s390/s390.cc:16145
+#: config/s390/s390.cc:16125
 #, gcc-internal-format
 msgid "value %qs is not supported by attribute %<target%>"
 msgstr ""
@@ -45183,22 +45226,42 @@ msgstr ""
 msgid "invalid constant in %<#pragma %s%>"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:2769
+#: config/xtensa/xtensa-dynconfig.cc:90
+#, gcc-internal-format
+msgid "%qs is defined but could not be loaded: %s"
+msgstr ""
+
+#: config/xtensa/xtensa-dynconfig.cc:97
+#, gcc-internal-format
+msgid "%qs plugin is not licensed under a GPL-compatible license"
+msgstr ""
+
+#: config/xtensa/xtensa-dynconfig.cc:114
+#, gcc-internal-format
+msgid "%qs is loaded but symbol %qs is not found: %s"
+msgstr ""
+
+#: config/xtensa/xtensa-dynconfig.cc:128
+#, gcc-internal-format
+msgid "%qs is defined but plugin support is disabled"
+msgstr ""
+
+#: config/xtensa/xtensa.cc:2806
 #, gcc-internal-format
 msgid "boolean registers required for the floating-point option"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:2804
+#: config/xtensa/xtensa.cc:2841
 #, gcc-internal-format
 msgid "%<-f%s%> is not supported with CONST16 instructions"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:2811
+#: config/xtensa/xtensa.cc:2848
 #, gcc-internal-format
 msgid "PIC is required but not supported with CONST16 instructions"
 msgstr ""
 
-#: config/xtensa/xtensa.cc:4169
+#: config/xtensa/xtensa.cc:4290
 #, gcc-internal-format
 msgid "only uninitialized variables can be placed in a %<.bss%> section"
 msgstr ""
@@ -45295,8 +45358,8 @@ msgstr ""
 msgid "attribute %qs applies to array types only"
 msgstr ""
 
-#: c/c-convert.cc:104 c/c-typeck.cc:2352 c/c-typeck.cc:13364 cp/typeck.cc:2497
-#: cp/typeck.cc:9386 cp/typeck.cc:10183 d/d-convert.cc:262
+#: c/c-convert.cc:104 c/c-typeck.cc:2342 c/c-typeck.cc:13354 cp/typeck.cc:2497
+#: cp/typeck.cc:9393 cp/typeck.cc:10189 d/d-convert.cc:262
 #, gcc-internal-format
 msgid "void value not ignored as it ought to be"
 msgstr ""
@@ -45351,413 +45414,413 @@ msgstr ""
 msgid "inline function %q+D declared but never defined"
 msgstr ""
 
-#: c/c-decl.cc:1313
+#: c/c-decl.cc:1314
 #, gcc-internal-format
 msgid "unused variable %q+D"
 msgstr ""
 
-#: c/c-decl.cc:1317 cp/decl.cc:709
+#: c/c-decl.cc:1320 cp/decl.cc:710
 #, gcc-internal-format
 msgid "variable %qD set but not used"
 msgstr ""
 
-#: c/c-decl.cc:1322
+#: c/c-decl.cc:1325
 #, gcc-internal-format
 msgid "type of array %q+D completed incompatibly with implicit initialization"
 msgstr ""
 
-#: c/c-decl.cc:1502
+#: c/c-decl.cc:1505
 #, gcc-internal-format
 msgid ""
 "underspecified declaration of %qE, which is already declared in this scope"
 msgstr ""
 
-#: c/c-decl.cc:1673 c/c-decl.cc:7697 c/c-decl.cc:8644 c/c-decl.cc:9592
+#: c/c-decl.cc:1676 c/c-decl.cc:7703 c/c-decl.cc:8650 c/c-decl.cc:9574
 #, gcc-internal-format
 msgid "originally defined here"
 msgstr ""
 
-#: c/c-decl.cc:1896
+#: c/c-decl.cc:1899
 #, gcc-internal-format
 msgid ""
 "a parameter list with an ellipsis cannot match an empty parameter name list "
 "declaration"
 msgstr ""
 
-#: c/c-decl.cc:1903
+#: c/c-decl.cc:1906
 #, 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:1951
+#: c/c-decl.cc:1954
 #, gcc-internal-format
 msgid ""
 "prototype for %q+D declares more arguments than previous old-style definition"
 msgstr ""
 
-#: c/c-decl.cc:1957
+#: c/c-decl.cc:1960
 #, gcc-internal-format
 msgid ""
 "prototype for %q+D declares fewer arguments than previous old-style "
 "definition"
 msgstr ""
 
-#: c/c-decl.cc:1966
+#: c/c-decl.cc:1969
 #, 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:1979
+#: c/c-decl.cc:1982
 #, gcc-internal-format
 msgid "prototype for %q+D follows non-prototype definition"
 msgstr ""
 
-#: c/c-decl.cc:1997
+#: c/c-decl.cc:2000
 #, gcc-internal-format
 msgid "previous definition of %q+D with type %qT"
 msgstr ""
 
-#: c/c-decl.cc:2001
+#: c/c-decl.cc:2004
 #, gcc-internal-format
 msgid "previous implicit declaration of %q+D with type %qT"
 msgstr ""
 
-#: c/c-decl.cc:2005
+#: c/c-decl.cc:2008
 #, gcc-internal-format
 msgid "previous declaration of %q+D with type %qT"
 msgstr ""
 
-#: c/c-decl.cc:2045
+#: c/c-decl.cc:2048
 #, gcc-internal-format
 msgid "%q+D redeclared as different kind of symbol"
 msgstr ""
 
-#: c/c-decl.cc:2050
+#: c/c-decl.cc:2053
 #, gcc-internal-format
 msgid "built-in function %q+D declared as non-function"
 msgstr ""
 
-#: c/c-decl.cc:2053 c/c-decl.cc:3159
+#: c/c-decl.cc:2056 c/c-decl.cc:3162
 #, gcc-internal-format
 msgid "declaration of %q+D shadows a built-in function"
 msgstr ""
 
-#: c/c-decl.cc:2063
+#: c/c-decl.cc:2066
 #, gcc-internal-format
 msgid "redeclaration of enumerator %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2102
+#: c/c-decl.cc:2105
 #, gcc-internal-format
 msgid "conflicting types for built-in function %q+D; expected %qT"
 msgstr ""
 
-#: c/c-decl.cc:2112 c/c-decl.cc:2137
+#: c/c-decl.cc:2115 c/c-decl.cc:2140
 #, gcc-internal-format
 msgid "%qD is declared in header %qs"
 msgstr ""
 
-#: c/c-decl.cc:2123
+#: c/c-decl.cc:2126
 #, gcc-internal-format
 msgid "mismatch in argument %u type of built-in function %qD; expected %qT"
 msgstr ""
 
-#: c/c-decl.cc:2128
+#: c/c-decl.cc:2131
 #, gcc-internal-format
 msgid "mismatch in return type of built-in function %qD; expected %qT"
 msgstr ""
 
-#: c/c-decl.cc:2161
+#: c/c-decl.cc:2164
 #, gcc-internal-format
 msgid "conflicting types for %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2174 c/c-decl.cc:2211
+#: c/c-decl.cc:2177 c/c-decl.cc:2214
 #, gcc-internal-format
 msgid "conflicting types for %q+D; have %qT"
 msgstr ""
 
-#: c/c-decl.cc:2191
+#: c/c-decl.cc:2194
 #, gcc-internal-format
 msgid "conflicting named address spaces (generic vs %s) for %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2195
+#: c/c-decl.cc:2198
 #, gcc-internal-format
 msgid "conflicting named address spaces (%s vs generic) for %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2199
+#: c/c-decl.cc:2202
 #, gcc-internal-format
 msgid "conflicting named address spaces (%s vs %s) for %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2208
+#: c/c-decl.cc:2211
 #, gcc-internal-format
 msgid "conflicting type qualifiers for %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2222
+#: c/c-decl.cc:2225
 #, gcc-internal-format
 msgid "conflicting types for %q+D due to enum/integer mismatch; have %qT"
 msgstr ""
 
-#: c/c-decl.cc:2239
+#: c/c-decl.cc:2242
 #, gcc-internal-format
 msgid "redefinition of typedef %q+D with different type"
 msgstr ""
 
-#: c/c-decl.cc:2252
+#: c/c-decl.cc:2255
 #, gcc-internal-format
 msgid "redefinition of typedef %q+D with variably modified type"
 msgstr ""
 
-#: c/c-decl.cc:2257
+#: c/c-decl.cc:2260
 #, gcc-internal-format
 msgid "redefinition of typedef %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2285
+#: c/c-decl.cc:2288
 #, gcc-internal-format
 msgid "declaration of %qD shadows a built-in function"
 msgstr ""
 
-#: c/c-decl.cc:2301
+#: c/c-decl.cc:2304
 #, gcc-internal-format
 msgid "declaration of built-in function %qD without a prototype; expected %qT"
 msgstr ""
 
-#: c/c-decl.cc:2328 c/c-decl.cc:2439
+#: c/c-decl.cc:2331 c/c-decl.cc:2442
 #, gcc-internal-format
 msgid "redefinition of %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2367 c/c-decl.cc:2479
+#: c/c-decl.cc:2370 c/c-decl.cc:2482
 #, gcc-internal-format
 msgid "static declaration of %q+D follows non-static declaration"
 msgstr ""
 
-#: c/c-decl.cc:2378 c/c-decl.cc:2386 c/c-decl.cc:2468 c/c-decl.cc:2476
+#: c/c-decl.cc:2381 c/c-decl.cc:2389 c/c-decl.cc:2471 c/c-decl.cc:2479
 #, gcc-internal-format
 msgid "non-static declaration of %q+D follows static declaration"
 msgstr ""
 
-#: c/c-decl.cc:2403
+#: c/c-decl.cc:2406
 #, gcc-internal-format
 msgid "%<gnu_inline%> attribute present on %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2406
+#: c/c-decl.cc:2409
 #, gcc-internal-format
 msgid "but not here"
 msgstr ""
 
-#: c/c-decl.cc:2425
+#: c/c-decl.cc:2428
 #, gcc-internal-format
 msgid "thread-local declaration of %q+D follows non-thread-local declaration"
 msgstr ""
 
-#: c/c-decl.cc:2428
+#: c/c-decl.cc:2431
 #, gcc-internal-format
 msgid "non-thread-local declaration of %q+D follows thread-local declaration"
 msgstr ""
 
-#: c/c-decl.cc:2460
+#: c/c-decl.cc:2463
 #, gcc-internal-format
 msgid "extern declaration of %q+D follows declaration with no linkage"
 msgstr ""
 
-#: c/c-decl.cc:2498
+#: c/c-decl.cc:2501
 #, gcc-internal-format
 msgid "declaration of %q+D with no linkage follows extern declaration"
 msgstr ""
 
-#: c/c-decl.cc:2505
+#: c/c-decl.cc:2508
 #, gcc-internal-format
 msgid "redeclaration of %q+D with no linkage"
 msgstr ""
 
-#: c/c-decl.cc:2531
+#: c/c-decl.cc:2534
 #, gcc-internal-format
 msgid ""
 "redeclaration of %q+D with different visibility (old visibility preserved)"
 msgstr ""
 
-#: c/c-decl.cc:2552
+#: c/c-decl.cc:2555
 #, gcc-internal-format
 msgid "redefinition of parameter %q+D"
 msgstr ""
 
-#: c/c-decl.cc:2579
+#: c/c-decl.cc:2582
 #, gcc-internal-format
 msgid "redundant redeclaration of %q+D"
 msgstr ""
 
-#: c/c-decl.cc:3117
+#: c/c-decl.cc:3120
 #, gcc-internal-format
 msgid "declaration of %q+D shadows previous non-variable"
 msgstr ""
 
-#: c/c-decl.cc:3139
+#: c/c-decl.cc:3142
 #, gcc-internal-format
 msgid "declaration of %qD shadows a parameter"
 msgstr ""
 
-#: c/c-decl.cc:3152 cp/name-lookup.cc:3321
+#: c/c-decl.cc:3155 cp/name-lookup.cc:3321
 #, gcc-internal-format
 msgid "declaration of %qD shadows a global declaration"
 msgstr ""
 
-#: c/c-decl.cc:3178
+#: c/c-decl.cc:3181
 #, gcc-internal-format
 msgid "declaration of %qD shadows a previous local"
 msgstr ""
 
-#: c/c-decl.cc:3184 cp/name-lookup.cc:3085
+#: c/c-decl.cc:3187 cp/name-lookup.cc:3085
 #, gcc-internal-format
 msgid "shadowed declaration is here"
 msgstr ""
 
-#: c/c-decl.cc:3314
+#: c/c-decl.cc:3317
 #, gcc-internal-format
 msgid "nested extern declaration of %qD"
 msgstr ""
 
-#: c/c-decl.cc:3477 c/c-decl.cc:3491
+#: c/c-decl.cc:3480 c/c-decl.cc:3494
 #, gcc-internal-format
 msgid "implicit declaration of function %qE; did you mean %qs?"
 msgstr ""
 
-#: c/c-decl.cc:3483 c/c-decl.cc:3496
+#: c/c-decl.cc:3486 c/c-decl.cc:3499
 #, gcc-internal-format
 msgid "implicit declaration of function %qE"
 msgstr ""
 
-#: c/c-decl.cc:3515
+#: c/c-decl.cc:3518
 #, gcc-internal-format
 msgid "include %qs or provide a declaration of %qE"
 msgstr ""
 
-#: c/c-decl.cc:3786
+#: c/c-decl.cc:3789
 #, gcc-internal-format
 msgid "incompatible implicit declaration of built-in function %qD"
 msgstr ""
 
-#: c/c-decl.cc:3796
+#: c/c-decl.cc:3799
 #, gcc-internal-format
 msgid "include %qs or provide a declaration of %qD"
 msgstr ""
 
-#: c/c-decl.cc:3807
+#: c/c-decl.cc:3810
 #, gcc-internal-format
 msgid "incompatible implicit declaration of function %qD"
 msgstr ""
 
-#: c/c-decl.cc:3868
+#: c/c-decl.cc:3871
 #, gcc-internal-format
 msgid "%qE undeclared here (not in a function); did you mean %qs?"
 msgstr ""
 
-#: c/c-decl.cc:3873
+#: c/c-decl.cc:3876
 #, gcc-internal-format
 msgid "%qE undeclared here (not in a function)"
 msgstr ""
 
-#: c/c-decl.cc:3886
+#: c/c-decl.cc:3889
 #, gcc-internal-format
 msgid "%qE undeclared (first use in this function); did you mean %qs?"
 msgstr ""
 
-#: c/c-decl.cc:3891
+#: c/c-decl.cc:3894
 #, gcc-internal-format
 msgid "%qE undeclared (first use in this function)"
 msgstr ""
 
-#: c/c-decl.cc:3895
+#: c/c-decl.cc:3898
 #, gcc-internal-format
 msgid ""
 "each undeclared identifier is reported only once for each function it "
 "appears in"
 msgstr ""
 
-#: c/c-decl.cc:3943 cp/decl.cc:3480
+#: c/c-decl.cc:3946 cp/decl.cc:3481
 #, gcc-internal-format
 msgid "label %qE referenced outside of any function"
 msgstr ""
 
-#: c/c-decl.cc:3980
+#: c/c-decl.cc:3983
 #, gcc-internal-format
 msgid "jump into scope of identifier with variably modified type"
 msgstr ""
 
-#: c/c-decl.cc:3983
+#: c/c-decl.cc:3986
 #, gcc-internal-format
 msgid "jump skips variable initialization"
 msgstr ""
 
-#: c/c-decl.cc:3985 c/c-decl.cc:4041 c/c-decl.cc:4132
+#: c/c-decl.cc:3988 c/c-decl.cc:4044 c/c-decl.cc:4135
 #, gcc-internal-format
 msgid "label %qD defined here"
 msgstr ""
 
-#: c/c-decl.cc:4040 c/c-decl.cc:4131
+#: c/c-decl.cc:4043 c/c-decl.cc:4134
 #, gcc-internal-format
 msgid "jump into statement expression"
 msgstr ""
 
-#: c/c-decl.cc:4063
+#: c/c-decl.cc:4066
 #, gcc-internal-format
 msgid "duplicate label declaration %qE"
 msgstr ""
 
-#: c/c-decl.cc:4163 cp/decl.cc:3898
+#: c/c-decl.cc:4166 cp/decl.cc:3899
 #, gcc-internal-format
 msgid "duplicate label %qD"
 msgstr ""
 
-#: c/c-decl.cc:4194
+#: c/c-decl.cc:4197
 #, gcc-internal-format
 msgid ""
 "traditional C lacks a separate namespace for labels, identifier %qE conflicts"
 msgstr ""
 
-#: c/c-decl.cc:4263
+#: c/c-decl.cc:4266
 #, gcc-internal-format
 msgid "switch jumps over variable initialization"
 msgstr ""
 
-#: c/c-decl.cc:4266 c/c-decl.cc:4279
+#: c/c-decl.cc:4269 c/c-decl.cc:4282
 #, gcc-internal-format
 msgid "switch starts here"
 msgstr ""
 
-#: c/c-decl.cc:4278
+#: c/c-decl.cc:4281
 #, gcc-internal-format
 msgid "switch jumps into statement expression"
 msgstr ""
 
-#: c/c-decl.cc:4361
+#: c/c-decl.cc:4364
 #, gcc-internal-format
 msgid "%qE defined as wrong kind of tag"
 msgstr ""
 
-#: c/c-decl.cc:4547 cp/tree.cc:5055
+#: c/c-decl.cc:4550 cp/tree.cc:5055
 #, gcc-internal-format
 msgid "%qE attribute applied to %qD with void return type"
 msgstr ""
 
-#: c/c-decl.cc:4556
+#: c/c-decl.cc:4559
 #, gcc-internal-format
 msgid ""
 "%qE attribute can only be applied to functions or to structure, union or "
 "enumeration types"
 msgstr ""
 
-#: c/c-decl.cc:4576
+#: c/c-decl.cc:4579
 #, gcc-internal-format
 msgid "standard %qE attribute can only be applied to functions"
 msgstr ""
@@ -45766,125 +45829,125 @@ 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:4852 c/c-decl.cc:8591
+#: c/c-decl.cc:4855 c/c-decl.cc:8597
 #, gcc-internal-format
 msgid "%qT declared in underspecified object initializer"
 msgstr ""
 
-#: c/c-decl.cc:4863
+#: c/c-decl.cc:4866
 #, gcc-internal-format
 msgid "unnamed struct/union that defines no instances"
 msgstr ""
 
-#: c/c-decl.cc:4874
+#: c/c-decl.cc:4877
 #, gcc-internal-format
 msgid "empty declaration with storage class specifier does not redeclare tag"
 msgstr ""
 
-#: c/c-decl.cc:4890
+#: c/c-decl.cc:4893
 #, gcc-internal-format
 msgid "empty declaration with type qualifier does not redeclare tag"
 msgstr ""
 
-#: c/c-decl.cc:4902
+#: c/c-decl.cc:4905
 #, gcc-internal-format
 msgid "empty declaration with %<_Alignas%> does not redeclare tag"
 msgstr ""
 
-#: c/c-decl.cc:4916
+#: c/c-decl.cc:4919
 #, gcc-internal-format
 msgid "empty declaration of %<enum%> type does not redeclare tag"
 msgstr ""
 
-#: c/c-decl.cc:4939 c/c-decl.cc:4947
+#: c/c-decl.cc:4942 c/c-decl.cc:4950
 #, gcc-internal-format
 msgid "useless type name in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:4955
+#: c/c-decl.cc:4958
 #, gcc-internal-format
 msgid "%<inline%> in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:4961
+#: c/c-decl.cc:4964
 #, gcc-internal-format
 msgid "%<_Noreturn%> in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:4967
+#: c/c-decl.cc:4970
 #, gcc-internal-format
 msgid "%<constexpr%> in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:4973
+#: c/c-decl.cc:4976
 #, gcc-internal-format
 msgid "%<auto%> in file-scope empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:4979
+#: c/c-decl.cc:4982
 #, gcc-internal-format
 msgid "%<register%> in file-scope empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:4987
+#: c/c-decl.cc:4990
 #, gcc-internal-format
 msgid ""
 "storage class specifier in empty declaration with %<enum%> underlying type"
 msgstr ""
 
-#: c/c-decl.cc:4993
+#: c/c-decl.cc:4996
 #, gcc-internal-format
 msgid "%qs in empty declaration with %<enum%> underlying type"
 msgstr ""
 
-#: c/c-decl.cc:5003
+#: c/c-decl.cc:5006
 #, gcc-internal-format
 msgid "type qualifier in empty declaration with %<enum%> underlying type"
 msgstr ""
 
-#: c/c-decl.cc:5009
+#: c/c-decl.cc:5012
 #, gcc-internal-format
 msgid "%<alignas%> in empty declaration with %<enum%> underlying type"
 msgstr ""
 
-#: c/c-decl.cc:5018
+#: c/c-decl.cc:5021
 #, gcc-internal-format
 msgid "useless storage class specifier in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5024
+#: c/c-decl.cc:5027
 #, gcc-internal-format
 msgid "useless %qs in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5037
+#: c/c-decl.cc:5040
 #, gcc-internal-format
 msgid "useless type qualifier in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5044
+#: c/c-decl.cc:5047
 #, gcc-internal-format
 msgid "useless %<_Alignas%> in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5062
+#: c/c-decl.cc:5065
 #, gcc-internal-format
 msgid "invalid use of attributes in empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5076 c/c-parser.cc:2264
+#: c/c-decl.cc:5079 c/c-parser.cc:2264
 #, gcc-internal-format
 msgid "empty declaration"
 msgstr ""
 
-#: c/c-decl.cc:5148
+#: c/c-decl.cc:5151
 #, gcc-internal-format
 msgid ""
 "ISO C90 does not support %<static%> or type qualifiers in parameter array "
 "declarators"
 msgstr ""
 
-#: c/c-decl.cc:5152
+#: c/c-decl.cc:5155
 #, gcc-internal-format
 msgid "ISO C90 does not support %<[*]%> array declarators"
 msgstr ""
@@ -45892,303 +45955,303 @@ 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:5158 c/c-decl.cc:8189 c/c-decl.cc:10413
+#: c/c-decl.cc:5161 c/c-decl.cc:8195 c/c-decl.cc:10395
 #, gcc-internal-format
 msgid "%<[*]%> not allowed in other than function prototype scope"
 msgstr ""
 
-#: c/c-decl.cc:5376
+#: c/c-decl.cc:5379
 #, gcc-internal-format
 msgid "%q+D is usually a function"
 msgstr ""
 
-#: c/c-decl.cc:5385
+#: c/c-decl.cc:5388
 #, gcc-internal-format
 msgid "typedef %qD is initialized (use %<__typeof__%> instead)"
 msgstr ""
 
-#: c/c-decl.cc:5390
+#: c/c-decl.cc:5393
 #, 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:5396
+#: c/c-decl.cc:5399
 #, gcc-internal-format
 msgid "parameter %qD is initialized"
 msgstr ""
 
-#: c/c-decl.cc:5416
+#: c/c-decl.cc:5419
 #, gcc-internal-format
 msgid "variable %qD has initializer but incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:5496
+#: c/c-decl.cc:5499
 #, gcc-internal-format
 msgid "inline function %q+D given attribute %qs"
 msgstr ""
 
-#: c/c-decl.cc:5552
+#: c/c-decl.cc:5555
 #, gcc-internal-format
 msgid "uninitialized const member in %qT is invalid in C++"
 msgstr ""
 
-#: c/c-decl.cc:5554
+#: c/c-decl.cc:5557
 #, gcc-internal-format
 msgid "%qD should be initialized"
 msgstr ""
 
-#: c/c-decl.cc:5635
+#: c/c-decl.cc:5638
 #, gcc-internal-format
 msgid "initializer fails to determine size of %q+D"
 msgstr ""
 
-#: c/c-decl.cc:5640
+#: c/c-decl.cc:5643
 #, gcc-internal-format
 msgid "array size missing in %q+D"
 msgstr ""
 
-#: c/c-decl.cc:5644
+#: c/c-decl.cc:5647
 #, gcc-internal-format
 msgid "zero or negative size array %q+D"
 msgstr ""
 
-#: c/c-decl.cc:5733 m2/gm2-gcc/m2type.cc:1269
+#: c/c-decl.cc:5736 m2/gm2-gcc/m2type.cc:1269
 #, gcc-internal-format
 msgid "storage size of %q+D isn%'t constant"
 msgstr ""
 
-#: c/c-decl.cc:5783
+#: c/c-decl.cc:5786
 #, gcc-internal-format
 msgid "ignoring %<asm%> specifier for non-static local variable %q+D"
 msgstr ""
 
-#: c/c-decl.cc:5821
+#: c/c-decl.cc:5824
 #, gcc-internal-format
 msgid "cannot put object with volatile field into register"
 msgstr ""
 
-#: c/c-decl.cc:5907
+#: c/c-decl.cc:5910
 #, gcc-internal-format
 msgid "uninitialized %<const %D%> is invalid in C++"
 msgstr ""
 
-#: c/c-decl.cc:5922 cp/decl.cc:8786
+#: c/c-decl.cc:5925 cp/decl.cc:8815
 #, gcc-internal-format
 msgid "%q+D in declare target directive does not have mappable type"
 msgstr ""
 
-#: c/c-decl.cc:6185
+#: c/c-decl.cc:6188
 #, gcc-internal-format
 msgid "ISO C forbids forward parameter declarations"
 msgstr ""
 
-#: c/c-decl.cc:6225
+#: c/c-decl.cc:6228
 #, gcc-internal-format
 msgid "file-scope compound literal specifies %<register%>"
 msgstr ""
 
-#: c/c-decl.cc:6231
+#: c/c-decl.cc:6234
 #, gcc-internal-format
 msgid "compound literal implicitly auto and declared %qs"
 msgstr ""
 
-#: c/c-decl.cc:6331
+#: c/c-decl.cc:6334
 #, gcc-internal-format
 msgid "defining a type in a compound literal is invalid in C++"
 msgstr ""
 
-#: c/c-decl.cc:6352 c/c-decl.cc:6367
+#: c/c-decl.cc:6355 c/c-decl.cc:6370
 #, gcc-internal-format
 msgid "bit-field %qs width not an integer constant"
 msgstr ""
 
-#: c/c-decl.cc:6362
+#: c/c-decl.cc:6365
 #, gcc-internal-format
 msgid "bit-field %qs width not an integer constant expression"
 msgstr ""
 
-#: c/c-decl.cc:6373
+#: c/c-decl.cc:6376
 #, gcc-internal-format
 msgid "negative width in bit-field %qs"
 msgstr ""
 
-#: c/c-decl.cc:6378
+#: c/c-decl.cc:6381
 #, gcc-internal-format
 msgid "zero width for bit-field %qs"
 msgstr ""
 
-#: c/c-decl.cc:6388
+#: c/c-decl.cc:6391
 #, gcc-internal-format
 msgid "bit-field %qs has invalid type"
 msgstr ""
 
-#: c/c-decl.cc:6394
+#: c/c-decl.cc:6397
 #, gcc-internal-format
 msgid "cannot declare bit-field %qs with %<warn_if_not_aligned%> type"
 msgstr ""
 
-#: c/c-decl.cc:6405
+#: c/c-decl.cc:6408
 #, gcc-internal-format
 msgid "type of bit-field %qs is a GCC extension"
 msgstr ""
 
-#: c/c-decl.cc:6411
+#: c/c-decl.cc:6414
 #, gcc-internal-format
 msgid "width of %qs exceeds its type"
 msgstr ""
 
-#: c/c-decl.cc:6424
+#: c/c-decl.cc:6427
 #, gcc-internal-format
 msgid "%qs is narrower than values of its type"
 msgstr ""
 
-#: c/c-decl.cc:6439
+#: c/c-decl.cc:6442
 #, gcc-internal-format
 msgid "ISO C90 forbids array %qE whose size cannot be evaluated"
 msgstr ""
 
-#: c/c-decl.cc:6442
+#: c/c-decl.cc:6445
 #, gcc-internal-format
 msgid "ISO C90 forbids array whose size cannot be evaluated"
 msgstr ""
 
-#: c/c-decl.cc:6449
+#: c/c-decl.cc:6452
 #, gcc-internal-format
 msgid "ISO C90 forbids variable length array %qE"
 msgstr ""
 
-#: c/c-decl.cc:6451
+#: c/c-decl.cc:6454
 #, gcc-internal-format
 msgid "ISO C90 forbids variable length array"
 msgstr ""
 
-#: c/c-decl.cc:6660
+#: c/c-decl.cc:6663
 #, gcc-internal-format
 msgid "%<enum%> underlying type may not be specified here"
 msgstr ""
 
-#: c/c-decl.cc:6688 c/c-decl.cc:7095 c/c-decl.cc:7105
+#: c/c-decl.cc:6691 c/c-decl.cc:7100 c/c-decl.cc:7110
 #, gcc-internal-format
 msgid "variably modified %qE at file scope"
 msgstr ""
 
-#: c/c-decl.cc:6690
+#: c/c-decl.cc:6693
 #, gcc-internal-format
 msgid "variably modified field at file scope"
 msgstr ""
 
-#: c/c-decl.cc:6710
+#: c/c-decl.cc:6713
 #, gcc-internal-format
 msgid "type defaults to %<int%> in declaration of %qE"
 msgstr ""
 
-#: c/c-decl.cc:6714
+#: c/c-decl.cc:6717
 #, gcc-internal-format
 msgid "type defaults to %<int%> in type name"
 msgstr ""
 
-#: c/c-decl.cc:6746
+#: c/c-decl.cc:6749
 #, gcc-internal-format
 msgid "duplicate %<const%>"
 msgstr ""
 
-#: c/c-decl.cc:6748
+#: c/c-decl.cc:6751
 #, gcc-internal-format
 msgid "duplicate %<restrict%>"
 msgstr ""
 
-#: c/c-decl.cc:6750
+#: c/c-decl.cc:6753
 #, gcc-internal-format
 msgid "duplicate %<volatile%>"
 msgstr ""
 
-#: c/c-decl.cc:6752
+#: c/c-decl.cc:6755
 #, gcc-internal-format
 msgid "duplicate %<_Atomic%>"
 msgstr ""
 
-#: c/c-decl.cc:6755
+#: c/c-decl.cc:6758
 #, gcc-internal-format, gfc-internal-format
 msgid "conflicting named address spaces (%s vs %s)"
 msgstr ""
 
-#: c/c-decl.cc:6778 c/c-parser.cc:3360
+#: c/c-decl.cc:6781 c/c-parser.cc:3359
 #, gcc-internal-format
 msgid "%<_Atomic%>-qualified array type"
 msgstr ""
 
-#: c/c-decl.cc:6793
+#: c/c-decl.cc:6796
 #, gcc-internal-format
 msgid "function definition declared %<auto%>"
 msgstr ""
 
-#: c/c-decl.cc:6795
+#: c/c-decl.cc:6798
 #, gcc-internal-format
 msgid "function definition declared %<register%>"
 msgstr ""
 
-#: c/c-decl.cc:6797
+#: c/c-decl.cc:6800
 #, gcc-internal-format
 msgid "function definition declared %<typedef%>"
 msgstr ""
 
-#: c/c-decl.cc:6799
+#: c/c-decl.cc:6802
 #, gcc-internal-format
 msgid "function definition declared %qs"
 msgstr ""
 
-#: c/c-decl.cc:6826
+#: c/c-decl.cc:6829
 #, gcc-internal-format
 msgid "storage class specified for structure field %qE"
 msgstr ""
 
-#: c/c-decl.cc:6829
+#: c/c-decl.cc:6832
 #, gcc-internal-format
 msgid "storage class specified for structure field"
 msgstr ""
 
-#: c/c-decl.cc:6833
+#: c/c-decl.cc:6836
 #, gcc-internal-format
 msgid "storage class specified for parameter %qE"
 msgstr ""
 
-#: c/c-decl.cc:6836
+#: c/c-decl.cc:6839
 #, gcc-internal-format
 msgid "storage class specified for unnamed parameter"
 msgstr ""
 
-#: c/c-decl.cc:6839 cp/decl.cc:12806
+#: c/c-decl.cc:6842 cp/decl.cc:12840
 #, gcc-internal-format
 msgid "storage class specified for typename"
 msgstr ""
 
-#: c/c-decl.cc:6857
+#: c/c-decl.cc:6860
 #, gcc-internal-format
 msgid "%qE initialized and declared %<extern%>"
 msgstr ""
 
-#: c/c-decl.cc:6861
+#: c/c-decl.cc:6864
 #, gcc-internal-format
 msgid "%qE has both %<extern%> and initializer"
 msgstr ""
 
-#: c/c-decl.cc:6866
+#: c/c-decl.cc:6869
 #, gcc-internal-format
 msgid "file-scope declaration of %qE specifies %<auto%>"
 msgstr ""
 
-#: c/c-decl.cc:6870
+#: c/c-decl.cc:6873
 #, gcc-internal-format
 msgid "file-scope declaration of %qE specifies %<register%>"
 msgstr ""
 
-#: c/c-decl.cc:6875
+#: c/c-decl.cc:6878
 #, gcc-internal-format
 msgid "nested function %qE declared %<extern%>"
 msgstr ""
 
-#: c/c-decl.cc:6878
+#: c/c-decl.cc:6881
 #, gcc-internal-format
 msgid "function-scope %qE implicitly auto and declared %qs"
 msgstr ""
@@ -46196,1071 +46259,1071 @@ 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:6925 c/c-decl.cc:7320
+#: c/c-decl.cc:6928 c/c-decl.cc:7324
 #, gcc-internal-format
 msgid "static or type qualifiers in non-parameter array declarator"
 msgstr ""
 
-#: c/c-decl.cc:6986
+#: c/c-decl.cc:6991
 #, gcc-internal-format
 msgid "declaration of %qE as array of voids"
 msgstr ""
 
-#: c/c-decl.cc:6988
+#: c/c-decl.cc:6993
 #, gcc-internal-format
 msgid "declaration of type name as array of voids"
 msgstr ""
 
-#: c/c-decl.cc:6995
+#: c/c-decl.cc:7000
 #, gcc-internal-format
 msgid "declaration of %qE as array of functions"
 msgstr ""
 
-#: c/c-decl.cc:6998
+#: c/c-decl.cc:7003
 #, gcc-internal-format
 msgid "declaration of type name as array of functions"
 msgstr ""
 
-#: c/c-decl.cc:7006 c/c-decl.cc:9275
+#: c/c-decl.cc:7011 c/c-decl.cc:9256
 #, gcc-internal-format
 msgid "invalid use of structure with flexible array member"
 msgstr ""
 
-#: c/c-decl.cc:7038
+#: c/c-decl.cc:7043
 #, gcc-internal-format
 msgid "size of array %qE has non-integer type"
 msgstr ""
 
-#: c/c-decl.cc:7042
+#: c/c-decl.cc:7047
 #, gcc-internal-format
 msgid "size of unnamed array has non-integer type"
 msgstr ""
 
-#: c/c-decl.cc:7050
+#: c/c-decl.cc:7055
 #, gcc-internal-format
 msgid "size of array %qE has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:7053
+#: c/c-decl.cc:7058
 #, gcc-internal-format
 msgid "size of unnamed array has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:7065
+#: c/c-decl.cc:7070
 #, gcc-internal-format
 msgid "ISO C forbids zero-size array %qE"
 msgstr ""
 
-#: c/c-decl.cc:7068
+#: c/c-decl.cc:7073
 #, gcc-internal-format
 msgid "ISO C forbids zero-size array"
 msgstr ""
 
-#: c/c-decl.cc:7077
+#: c/c-decl.cc:7082
 #, gcc-internal-format
 msgid "size of array %qE is negative"
 msgstr ""
 
-#: c/c-decl.cc:7079
+#: c/c-decl.cc:7084
 #, gcc-internal-format
 msgid "size of unnamed array is negative"
 msgstr ""
 
-#: c/c-decl.cc:7165
+#: c/c-decl.cc:7170
 #, gcc-internal-format
 msgid "size of array %qE is too large"
 msgstr ""
 
-#: c/c-decl.cc:7168
+#: c/c-decl.cc:7173
 #, gcc-internal-format
 msgid "size of unnamed array is too large"
 msgstr ""
 
-#: c/c-decl.cc:7207 c/c-decl.cc:7867
+#: c/c-decl.cc:7212 c/c-decl.cc:7873
 #, gcc-internal-format
 msgid "ISO C90 does not support flexible array members"
 msgstr ""
 
 #. C99 6.7.5.2p4
-#: c/c-decl.cc:7229
+#: c/c-decl.cc:7234
 #, gcc-internal-format
 msgid "%<[*]%> not in a declaration"
 msgstr ""
 
-#: c/c-decl.cc:7243
+#: c/c-decl.cc:7248
 #, gcc-internal-format
 msgid "array type has incomplete element type %qT"
 msgstr ""
 
-#: c/c-decl.cc:7249
+#: c/c-decl.cc:7254
 #, gcc-internal-format
 msgid ""
 "declaration of %qE as multidimensional array must have bounds for all "
 "dimensions except the first"
 msgstr ""
 
-#: c/c-decl.cc:7253
+#: c/c-decl.cc:7258
 #, gcc-internal-format
 msgid ""
 "declaration of multidimensional array must have bounds for all dimensions "
 "except the first"
 msgstr ""
 
-#: c/c-decl.cc:7356
+#: c/c-decl.cc:7360
 #, gcc-internal-format
 msgid "%qE declared as function returning a function"
 msgstr ""
 
-#: c/c-decl.cc:7359
+#: c/c-decl.cc:7363
 #, gcc-internal-format
 msgid "type name declared as function returning a function"
 msgstr ""
 
-#: c/c-decl.cc:7366
+#: c/c-decl.cc:7370
 #, gcc-internal-format
 msgid "%qE declared as function returning an array"
 msgstr ""
 
-#: c/c-decl.cc:7369
+#: c/c-decl.cc:7373
 #, gcc-internal-format
 msgid "type name declared as function returning an array"
 msgstr ""
 
-#: c/c-decl.cc:7410
+#: c/c-decl.cc:7414
 #, gcc-internal-format
 msgid "function definition has qualified void return type"
 msgstr ""
 
-#: c/c-decl.cc:7414 cp/decl.cc:13127
+#: c/c-decl.cc:7418 cp/decl.cc:13161
 #, gcc-internal-format
 msgid "type qualifiers ignored on function return type"
 msgstr ""
 
-#: c/c-decl.cc:7453 c/c-decl.cc:7663 c/c-decl.cc:7717 c/c-decl.cc:7801
-#: c/c-decl.cc:7923 c/c-parser.cc:3362
+#: c/c-decl.cc:7457 c/c-decl.cc:7669 c/c-decl.cc:7723 c/c-decl.cc:7807
+#: c/c-decl.cc:7929 c/c-parser.cc:3361
 #, gcc-internal-format
 msgid "%<_Atomic%>-qualified function type"
 msgstr ""
 
-#: c/c-decl.cc:7459 c/c-decl.cc:7669 c/c-decl.cc:7806 c/c-decl.cc:7928
+#: c/c-decl.cc:7463 c/c-decl.cc:7675 c/c-decl.cc:7812 c/c-decl.cc:7934
 #, gcc-internal-format
 msgid "ISO C forbids qualified function types"
 msgstr ""
 
-#: c/c-decl.cc:7554
+#: c/c-decl.cc:7560
 #, gcc-internal-format
 msgid "%qs combined with %<auto%> qualifier for %qE"
 msgstr ""
 
-#: c/c-decl.cc:7558
+#: c/c-decl.cc:7564
 #, gcc-internal-format
 msgid "%qs combined with %<register%> qualifier for %qE"
 msgstr ""
 
-#: c/c-decl.cc:7564
+#: c/c-decl.cc:7570
 #, gcc-internal-format
 msgid "%qs specified for auto variable %qE"
 msgstr ""
 
-#: c/c-decl.cc:7580
+#: c/c-decl.cc:7586
 #, gcc-internal-format
 msgid "%qs specified for parameter %qE"
 msgstr ""
 
-#: c/c-decl.cc:7583
+#: c/c-decl.cc:7589
 #, gcc-internal-format
 msgid "%qs specified for unnamed parameter"
 msgstr ""
 
-#: c/c-decl.cc:7589
+#: c/c-decl.cc:7595
 #, gcc-internal-format
 msgid "%qs specified for structure field %qE"
 msgstr ""
 
-#: c/c-decl.cc:7592
+#: c/c-decl.cc:7598
 #, gcc-internal-format
 msgid "%qs specified for structure field"
 msgstr ""
 
-#: c/c-decl.cc:7607
+#: c/c-decl.cc:7613
 #, gcc-internal-format
 msgid "bit-field %qE has atomic type"
 msgstr ""
 
-#: c/c-decl.cc:7609
+#: c/c-decl.cc:7615
 #, gcc-internal-format
 msgid "bit-field has atomic type"
 msgstr ""
 
-#: c/c-decl.cc:7618
+#: c/c-decl.cc:7624
 #, gcc-internal-format
 msgid "alignment specified for typedef %qE"
 msgstr ""
 
-#: c/c-decl.cc:7620
+#: c/c-decl.cc:7626
 #, gcc-internal-format
 msgid "alignment specified for %<register%> object %qE"
 msgstr ""
 
-#: c/c-decl.cc:7625
+#: c/c-decl.cc:7631
 #, gcc-internal-format
 msgid "alignment specified for parameter %qE"
 msgstr ""
 
-#: c/c-decl.cc:7627
+#: c/c-decl.cc:7633
 #, gcc-internal-format
 msgid "alignment specified for unnamed parameter"
 msgstr ""
 
-#: c/c-decl.cc:7632
+#: c/c-decl.cc:7638
 #, gcc-internal-format
 msgid "alignment specified for bit-field %qE"
 msgstr ""
 
-#: c/c-decl.cc:7634
+#: c/c-decl.cc:7640
 #, gcc-internal-format
 msgid "alignment specified for unnamed bit-field"
 msgstr ""
 
-#: c/c-decl.cc:7637
+#: c/c-decl.cc:7643
 #, gcc-internal-format
 msgid "alignment specified for function %qE"
 msgstr ""
 
-#: c/c-decl.cc:7644
+#: c/c-decl.cc:7650
 #, gcc-internal-format
 msgid "%<_Alignas%> specifiers cannot reduce alignment of %qE"
 msgstr ""
 
-#: c/c-decl.cc:7647
+#: c/c-decl.cc:7653
 #, gcc-internal-format
 msgid "%<_Alignas%> specifiers cannot reduce alignment of unnamed field"
 msgstr ""
 
-#: c/c-decl.cc:7678
+#: c/c-decl.cc:7684
 #, gcc-internal-format
 msgid "typedef %q+D declared %<inline%>"
 msgstr ""
 
-#: c/c-decl.cc:7680
+#: c/c-decl.cc:7686
 #, gcc-internal-format
 msgid "typedef %q+D declared %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.cc:7723
+#: c/c-decl.cc:7729
 #, gcc-internal-format
 msgid "ISO C forbids const or volatile function types"
 msgstr ""
 
 #. C99 6.7.2.1p8
-#: c/c-decl.cc:7734
+#: c/c-decl.cc:7740
 #, gcc-internal-format
 msgid "a member of a structure or union cannot have a variably modified type"
 msgstr ""
 
-#: c/c-decl.cc:7751 cp/decl.cc:11691
+#: c/c-decl.cc:7757 cp/decl.cc:11720
 #, gcc-internal-format
 msgid "variable or field %qE declared void"
 msgstr ""
 
-#: c/c-decl.cc:7791
+#: c/c-decl.cc:7797
 #, gcc-internal-format
 msgid "attributes in parameter array declarator ignored"
 msgstr ""
 
-#: c/c-decl.cc:7833
+#: c/c-decl.cc:7839
 #, gcc-internal-format
 msgid "parameter %q+D declared %<inline%>"
 msgstr ""
 
-#: c/c-decl.cc:7835
+#: c/c-decl.cc:7841
 #, gcc-internal-format
 msgid "parameter %q+D declared %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.cc:7848
+#: c/c-decl.cc:7854
 #, gcc-internal-format
 msgid "field %qE declared as a function"
 msgstr ""
 
-#: c/c-decl.cc:7855
+#: c/c-decl.cc:7861
 #, gcc-internal-format
 msgid "field %qE has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:7857
+#: c/c-decl.cc:7863
 #, gcc-internal-format
 msgid "unnamed field has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:7894 c/c-decl.cc:7905 c/c-decl.cc:7908
+#: c/c-decl.cc:7900 c/c-decl.cc:7911 c/c-decl.cc:7914
 #, gcc-internal-format
 msgid "invalid storage class for function %qE"
 msgstr ""
 
-#: c/c-decl.cc:7965
+#: c/c-decl.cc:7971
 #, gcc-internal-format
 msgid "cannot inline function %<main%>"
 msgstr ""
 
-#: c/c-decl.cc:7967
+#: c/c-decl.cc:7973
 #, gcc-internal-format
 msgid "%<main%> declared %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.cc:7978
+#: c/c-decl.cc:7984
 #, gcc-internal-format
 msgid "ISO C99 does not support %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.cc:7981
+#: c/c-decl.cc:7987
 #, gcc-internal-format
 msgid "ISO C90 does not support %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.cc:8000
+#: c/c-decl.cc:8006
 #, gcc-internal-format
 msgid "%<constexpr%> object has variably modified type"
 msgstr ""
 
-#: c/c-decl.cc:8004 c/c-parser.cc:10931
+#: c/c-decl.cc:8010 c/c-parser.cc:10930
 #, gcc-internal-format
 msgid "invalid qualifiers for %<constexpr%> object"
 msgstr ""
 
-#: c/c-decl.cc:8010 c/c-parser.cc:10934
+#: c/c-decl.cc:8016 c/c-parser.cc:10933
 #, gcc-internal-format
 msgid "invalid qualifiers for field of %<constexpr%> object"
 msgstr ""
 
-#: c/c-decl.cc:8036
+#: c/c-decl.cc:8042
 #, gcc-internal-format
 msgid "variable previously declared %<static%> redeclared %<extern%>"
 msgstr ""
 
-#: c/c-decl.cc:8048
+#: c/c-decl.cc:8054
 #, gcc-internal-format
 msgid "variable %q+D declared %<inline%>"
 msgstr ""
 
-#: c/c-decl.cc:8050
+#: c/c-decl.cc:8056
 #, gcc-internal-format
 msgid "variable %q+D declared %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.cc:8085
+#: c/c-decl.cc:8091
 #, gcc-internal-format
 msgid "non-nested function with variably modified type"
 msgstr ""
 
-#: c/c-decl.cc:8087
+#: c/c-decl.cc:8093
 #, gcc-internal-format
 msgid "object with variably modified type must have no linkage"
 msgstr ""
 
-#: c/c-decl.cc:8195 c/c-decl.cc:10218
+#: c/c-decl.cc:8201 c/c-decl.cc:10200
 #, gcc-internal-format
 msgid "function declaration isn%'t a prototype"
 msgstr ""
 
-#: c/c-decl.cc:8205
+#: c/c-decl.cc:8211
 #, gcc-internal-format
 msgid "parameter names (without types) in function declaration"
 msgstr ""
 
-#: c/c-decl.cc:8250
+#: c/c-decl.cc:8256
 #, gcc-internal-format
 msgid "parameter %u (%q+D) has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:8254
+#: c/c-decl.cc:8260
 #, gcc-internal-format, gfc-internal-format
 msgid "parameter %u has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:8265
+#: c/c-decl.cc:8271
 #, gcc-internal-format
 msgid "parameter %u (%q+D) has void type"
 msgstr ""
 
-#: c/c-decl.cc:8269
+#: c/c-decl.cc:8275
 #, gcc-internal-format, gfc-internal-format
 msgid "parameter %u has void type"
 msgstr ""
 
-#: c/c-decl.cc:8344
+#: c/c-decl.cc:8350
 #, gcc-internal-format
 msgid "%<void%> as only parameter may not be qualified"
 msgstr ""
 
-#: c/c-decl.cc:8348 c/c-decl.cc:8384
+#: c/c-decl.cc:8354 c/c-decl.cc:8390
 #, gcc-internal-format
 msgid "%<void%> must be the only parameter"
 msgstr ""
 
-#: c/c-decl.cc:8378
+#: c/c-decl.cc:8384
 #, gcc-internal-format
 msgid "parameter %q+D has just a forward declaration"
 msgstr ""
 
-#: c/c-decl.cc:8424
+#: c/c-decl.cc:8430
 #, 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:8430
+#: c/c-decl.cc:8436
 #, 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:8545
+#: c/c-decl.cc:8551
 #, gcc-internal-format
 msgid "enum type defined here"
 msgstr ""
 
-#: c/c-decl.cc:8551
+#: c/c-decl.cc:8557
 #, gcc-internal-format
 msgid "struct defined here"
 msgstr ""
 
-#: c/c-decl.cc:8557
+#: c/c-decl.cc:8563
 #, gcc-internal-format
 msgid "union defined here"
 msgstr ""
 
-#: c/c-decl.cc:8640
+#: c/c-decl.cc:8646
 #, gcc-internal-format
 msgid "redefinition of %<union %E%>"
 msgstr ""
 
-#: c/c-decl.cc:8642
+#: c/c-decl.cc:8648
 #, gcc-internal-format
 msgid "redefinition of %<struct %E%>"
 msgstr ""
 
-#: c/c-decl.cc:8651
+#: c/c-decl.cc:8657
 #, gcc-internal-format
 msgid "nested redefinition of %<union %E%>"
 msgstr ""
 
-#: c/c-decl.cc:8653
+#: c/c-decl.cc:8659
 #, gcc-internal-format
 msgid "nested redefinition of %<struct %E%>"
 msgstr ""
 
-#: c/c-decl.cc:8683 c/c-decl.cc:9617
+#: c/c-decl.cc:8689 c/c-decl.cc:9599
 #, gcc-internal-format
 msgid "defining type in %qs expression is invalid in C++"
 msgstr ""
 
-#: c/c-decl.cc:8689 c/c-decl.cc:9623
+#: c/c-decl.cc:8695 c/c-decl.cc:9605
 #, gcc-internal-format
 msgid "%qT defined in underspecified object initializer"
 msgstr ""
 
-#: c/c-decl.cc:8753 cp/decl.cc:5467
+#: c/c-decl.cc:8759 cp/decl.cc:5469
 #, gcc-internal-format
 msgid "declaration does not declare anything"
 msgstr ""
 
-#: c/c-decl.cc:8758
+#: c/c-decl.cc:8764
 #, gcc-internal-format
 msgid "ISO C99 doesn%'t support unnamed structs/unions"
 msgstr ""
 
-#: c/c-decl.cc:8761
+#: c/c-decl.cc:8767
 #, gcc-internal-format
 msgid "ISO C90 doesn%'t support unnamed structs/unions"
 msgstr ""
 
-#: c/c-decl.cc:8854 c/c-decl.cc:8872 c/c-decl.cc:8933
+#: c/c-decl.cc:8860 c/c-decl.cc:8878 c/c-decl.cc:8939
 #, gcc-internal-format
 msgid "duplicate member %q+D"
 msgstr ""
 
-#: c/c-decl.cc:8959
+#: c/c-decl.cc:8965
 #, gcc-internal-format
 msgid "empty struct has size 0 in C, size 1 in C++"
 msgstr ""
 
-#: c/c-decl.cc:8962
+#: c/c-decl.cc:8968
 #, gcc-internal-format
 msgid "empty union has size 0 in C, size 1 in C++"
 msgstr ""
 
-#: c/c-decl.cc:9171
+#: c/c-decl.cc:9148
 #, gcc-internal-format
 msgid "union has no named members"
 msgstr ""
 
-#: c/c-decl.cc:9173
+#: c/c-decl.cc:9150
 #, gcc-internal-format
 msgid "union has no members"
 msgstr ""
 
-#: c/c-decl.cc:9178
+#: c/c-decl.cc:9155
 #, gcc-internal-format
 msgid "struct has no named members"
 msgstr ""
 
-#: c/c-decl.cc:9180
+#: c/c-decl.cc:9157
 #, gcc-internal-format
 msgid "struct has no members"
 msgstr ""
 
-#: c/c-decl.cc:9254 cp/decl.cc:14110
+#: c/c-decl.cc:9235 cp/decl.cc:14144
 #, gcc-internal-format
 msgid "flexible array member in union"
 msgstr ""
 
-#: c/c-decl.cc:9260
+#: c/c-decl.cc:9241
 #, gcc-internal-format
 msgid "flexible array member not at end of struct"
 msgstr ""
 
-#: c/c-decl.cc:9266
+#: c/c-decl.cc:9247
 #, gcc-internal-format
 msgid "flexible array member in a struct with no named members"
 msgstr ""
 
-#: c/c-decl.cc:9300
+#: c/c-decl.cc:9281
 #, gcc-internal-format
 msgid "type %qT is too large"
 msgstr ""
 
-#: c/c-decl.cc:9354
+#: c/c-decl.cc:9335
 #, gcc-internal-format
 msgid "type punning toggles scalar storage order"
 msgstr ""
 
-#: c/c-decl.cc:9421
+#: c/c-decl.cc:9402
 #, gcc-internal-format
 msgid "union cannot be made transparent"
 msgstr ""
 
-#: c/c-decl.cc:9582
+#: c/c-decl.cc:9564
 #, gcc-internal-format
 msgid "nested redefinition of %<enum %E%>"
 msgstr ""
 
-#: c/c-decl.cc:9590
+#: c/c-decl.cc:9572
 #, gcc-internal-format
 msgid "redeclaration of %<enum %E%>"
 msgstr ""
 
-#: c/c-decl.cc:9601
+#: c/c-decl.cc:9583
 #, gcc-internal-format
 msgid "%<enum%> declared with but defined without fixed underlying type"
 msgstr ""
 
-#: c/c-decl.cc:9686 cp/decl.cc:16686 m2/gm2-gcc/m2type.cc:2060
+#: c/c-decl.cc:9668 cp/decl.cc:16721 m2/gm2-gcc/m2type.cc:2070
 #, gcc-internal-format
 msgid "specified mode too small for enumerated values"
 msgstr ""
 
-#: c/c-decl.cc:9705
+#: c/c-decl.cc:9687
 #, gcc-internal-format
 msgid "enumeration values exceed range of largest integer"
 msgstr ""
 
-#: c/c-decl.cc:9714
+#: c/c-decl.cc:9696
 #, gcc-internal-format
 msgid "enumeration values exceed range of %qs"
 msgstr ""
 
-#: c/c-decl.cc:9841 c/c-decl.cc:9857
+#: c/c-decl.cc:9823 c/c-decl.cc:9839
 #, gcc-internal-format
 msgid "enumerator value for %qE is not an integer constant"
 msgstr ""
 
-#: c/c-decl.cc:9852
+#: c/c-decl.cc:9834
 #, gcc-internal-format
 msgid "enumerator value for %qE is not an integer constant expression"
 msgstr ""
 
-#: c/c-decl.cc:9876
+#: c/c-decl.cc:9858
 #, gcc-internal-format
 msgid "overflow in enumeration values"
 msgstr ""
 
-#: c/c-decl.cc:9883
+#: c/c-decl.cc:9865
 #, gcc-internal-format
 msgid "enumerator value outside the range of underlying type"
 msgstr ""
 
-#: c/c-decl.cc:9911
+#: c/c-decl.cc:9893
 #, gcc-internal-format
 msgid "enumerator value outside the range of %qs"
 msgstr ""
 
-#: c/c-decl.cc:9917
+#: c/c-decl.cc:9899
 #, gcc-internal-format
 msgid "ISO C restricts enumerator values to range of %<int%> before C2X"
 msgstr ""
 
-#: c/c-decl.cc:10111 cp/decl.cc:5787 cp/decl.cc:17265
+#: c/c-decl.cc:10093 cp/decl.cc:5789 cp/decl.cc:17300
 #, gcc-internal-format
 msgid "inline function %qD given attribute %qs"
 msgstr ""
 
-#: c/c-decl.cc:10129
+#: c/c-decl.cc:10111
 #, gcc-internal-format
 msgid "return type is an incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:10141
+#: c/c-decl.cc:10123
 #, gcc-internal-format
 msgid "return type defaults to %<int%>"
 msgstr ""
 
-#: c/c-decl.cc:10169
+#: c/c-decl.cc:10151
 #, gcc-internal-format
 msgid "%q+D defined as variadic function without prototype"
 msgstr ""
 
-#: c/c-decl.cc:10227
+#: c/c-decl.cc:10209
 #, gcc-internal-format
 msgid "no previous prototype for %qD"
 msgstr ""
 
-#: c/c-decl.cc:10236
+#: c/c-decl.cc:10218
 #, gcc-internal-format
 msgid "%qD was used with no prototype before its definition"
 msgstr ""
 
-#: c/c-decl.cc:10244 cp/decl.cc:17408
+#: c/c-decl.cc:10226 cp/decl.cc:17443
 #, gcc-internal-format
 msgid "no previous declaration for %qD"
 msgstr ""
 
-#: c/c-decl.cc:10254
+#: c/c-decl.cc:10236
 #, gcc-internal-format
 msgid "%qD was used with no declaration before its definition"
 msgstr ""
 
-#: c/c-decl.cc:10273
+#: c/c-decl.cc:10255
 #, gcc-internal-format
 msgid "return type of %qD is not %<int%>"
 msgstr ""
 
-#: c/c-decl.cc:10275
+#: c/c-decl.cc:10257
 #, gcc-internal-format
 msgid "%<_Atomic%>-qualified return type of %qD"
 msgstr ""
 
-#: c/c-decl.cc:10282
+#: c/c-decl.cc:10264
 #, gcc-internal-format
 msgid "%qD is normally a non-static function"
 msgstr ""
 
-#: c/c-decl.cc:10333
+#: c/c-decl.cc:10315
 #, gcc-internal-format
 msgid "old-style parameter declarations in prototyped function definition"
 msgstr ""
 
-#: c/c-decl.cc:10348
+#: c/c-decl.cc:10330
 #, gcc-internal-format
 msgid "traditional C rejects ISO C style function definitions"
 msgstr ""
 
-#: c/c-decl.cc:10365
+#: c/c-decl.cc:10347
 #, gcc-internal-format
 msgid ""
 "ISO C does not support omitting parameter names in function definitions "
 "before C2X"
 msgstr ""
 
-#: c/c-decl.cc:10405 c/c-decl.cc:10409
+#: c/c-decl.cc:10387 c/c-decl.cc:10391
 #, gcc-internal-format
 msgid "old-style function definition"
 msgstr ""
 
-#: c/c-decl.cc:10422
+#: c/c-decl.cc:10404
 #, gcc-internal-format
 msgid "parameter name missing from parameter list"
 msgstr ""
 
-#: c/c-decl.cc:10438
+#: c/c-decl.cc:10420
 #, gcc-internal-format
 msgid "%qD declared as a non-parameter"
 msgstr ""
 
-#: c/c-decl.cc:10446
+#: c/c-decl.cc:10428
 #, gcc-internal-format
 msgid "multiple parameters named %qD"
 msgstr ""
 
-#: c/c-decl.cc:10455
+#: c/c-decl.cc:10437
 #, gcc-internal-format
 msgid "parameter %qD declared with void type"
 msgstr ""
 
-#: c/c-decl.cc:10484 c/c-decl.cc:10489
+#: c/c-decl.cc:10466 c/c-decl.cc:10471
 #, gcc-internal-format
 msgid "type of %qD defaults to %<int%>"
 msgstr ""
 
-#: c/c-decl.cc:10509
+#: c/c-decl.cc:10491
 #, gcc-internal-format
 msgid "parameter %qD has incomplete type"
 msgstr ""
 
-#: c/c-decl.cc:10516
+#: c/c-decl.cc:10498
 #, gcc-internal-format
 msgid "declaration for parameter %qD but no such parameter"
 msgstr ""
 
-#: c/c-decl.cc:10569
+#: c/c-decl.cc:10551
 #, gcc-internal-format
 msgid "number of arguments doesn%'t match built-in prototype"
 msgstr ""
 
-#: c/c-decl.cc:10580
+#: c/c-decl.cc:10562
 #, gcc-internal-format
 msgid "number of arguments doesn%'t match prototype"
 msgstr ""
 
-#: c/c-decl.cc:10583 c/c-decl.cc:10630 c/c-decl.cc:10644
+#: c/c-decl.cc:10565 c/c-decl.cc:10612 c/c-decl.cc:10626
 #, gcc-internal-format
 msgid "prototype declaration"
 msgstr ""
 
-#: c/c-decl.cc:10622
+#: c/c-decl.cc:10604
 #, gcc-internal-format
 msgid "promoted argument %qD doesn%'t match built-in prototype"
 msgstr ""
 
-#: c/c-decl.cc:10627
+#: c/c-decl.cc:10609
 #, gcc-internal-format
 msgid "promoted argument %qD doesn%'t match prototype"
 msgstr ""
 
-#: c/c-decl.cc:10637
+#: c/c-decl.cc:10619
 #, gcc-internal-format
 msgid "argument %qD doesn%'t match built-in prototype"
 msgstr ""
 
-#: c/c-decl.cc:10642
+#: c/c-decl.cc:10624
 #, gcc-internal-format
 msgid "argument %qD doesn%'t match prototype"
 msgstr ""
 
-#: c/c-decl.cc:10900 cp/decl.cc:18189
+#: c/c-decl.cc:10882 cp/decl.cc:18224
 #, gcc-internal-format
 msgid "no return statement in function returning non-void"
 msgstr ""
 
-#: c/c-decl.cc:10919 cp/decl.cc:18273
+#: c/c-decl.cc:10901 cp/decl.cc:18308
 #, gcc-internal-format
 msgid "parameter %qD set but not used"
 msgstr ""
 
-#: c/c-decl.cc:11016
+#: c/c-decl.cc:10998
 #, gcc-internal-format
 msgid "%<for%> loop initial declarations are only allowed in C99 or C11 mode"
 msgstr ""
 
-#: c/c-decl.cc:11021
+#: c/c-decl.cc:11003
 #, gcc-internal-format
 msgid ""
 "use option %<-std=c99%>, %<-std=gnu99%>, %<-std=c11%> or %<-std=gnu11%> to "
 "compile your code"
 msgstr ""
 
-#: c/c-decl.cc:11028
+#: c/c-decl.cc:11010
 #, gcc-internal-format
 msgid "ISO C90 does not support %<for%> loop initial declarations"
 msgstr ""
 
-#: c/c-decl.cc:11060
+#: c/c-decl.cc:11042
 #, gcc-internal-format
 msgid "declaration of static variable %qD in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.cc:11064
+#: c/c-decl.cc:11046
 #, gcc-internal-format
 msgid ""
 "declaration of %<extern%> variable %qD in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.cc:11071
+#: c/c-decl.cc:11053
 #, gcc-internal-format
 msgid "%<struct %E%> declared in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.cc:11076
+#: c/c-decl.cc:11058
 #, gcc-internal-format
 msgid "%<union %E%> declared in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.cc:11080
+#: c/c-decl.cc:11062
 #, gcc-internal-format
 msgid "%<enum %E%> declared in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.cc:11084
+#: c/c-decl.cc:11066
 #, gcc-internal-format
 msgid "declaration of non-variable %qD in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.cc:11370
+#: c/c-decl.cc:11352
 #, gcc-internal-format
 msgid "incompatible address space qualifiers %qs and %qs"
 msgstr ""
 
-#: c/c-decl.cc:11429 c/c-decl.cc:11436
+#: c/c-decl.cc:11411 c/c-decl.cc:11418
 #, gcc-internal-format
 msgid "duplicate %qE declaration specifier"
 msgstr ""
 
-#: c/c-decl.cc:11464 c/c-decl.cc:12465
+#: c/c-decl.cc:11446 c/c-decl.cc:12447
 #, gcc-internal-format
 msgid "multiple storage classes in declaration specifiers"
 msgstr ""
 
-#: c/c-decl.cc:11466
+#: c/c-decl.cc:11448
 #, 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:11471
+#: c/c-decl.cc:11453
 #, gcc-internal-format
 msgid "%<auto%> used with %<constexpr%>"
 msgstr ""
 
-#: c/c-decl.cc:11484 c/c-decl.cc:11868 c/c-decl.cc:12263
+#: c/c-decl.cc:11466 c/c-decl.cc:11850 c/c-decl.cc:12245
 #, gcc-internal-format
 msgid "two or more data types in declaration specifiers"
 msgstr ""
 
-#: c/c-decl.cc:11496 cp/parser.cc:33520
+#: c/c-decl.cc:11478 cp/parser.cc:33541
 #, gcc-internal-format
 msgid "%<long long long%> is too long for GCC"
 msgstr ""
 
-#: c/c-decl.cc:11509
+#: c/c-decl.cc:11491
 #, gcc-internal-format
 msgid "ISO C90 does not support %<long long%>"
 msgstr ""
 
-#: c/c-decl.cc:11738 c/c-parser.cc:10585
+#: c/c-decl.cc:11720 c/c-parser.cc:10584
 #, gcc-internal-format
 msgid "ISO C90 does not support complex types"
 msgstr ""
 
-#: c/c-decl.cc:11784
+#: c/c-decl.cc:11766
 #, gcc-internal-format
 msgid "ISO C does not support saturating types"
 msgstr ""
 
-#: c/c-decl.cc:11855 c/c-decl.cc:12400 c/c-decl.cc:12459
+#: c/c-decl.cc:11837 c/c-decl.cc:12382 c/c-decl.cc:12441
 #, gcc-internal-format
 msgid "duplicate %qE"
 msgstr ""
 
-#: c/c-decl.cc:11915
+#: c/c-decl.cc:11897
 #, gcc-internal-format
 msgid "ISO C does not support %<__int%d%> types"
 msgstr ""
 
-#: c/c-decl.cc:11937
+#: c/c-decl.cc:11919
 #, gcc-internal-format
 msgid "%<__int%d%> is not supported on this target"
 msgstr ""
 
-#: c/c-decl.cc:11980
+#: c/c-decl.cc:11962
 #, gcc-internal-format
 msgid "ISO C90 does not support boolean types"
 msgstr ""
 
-#: c/c-decl.cc:12099
+#: c/c-decl.cc:12081
 #, gcc-internal-format
 msgid "ISO C does not support the %<_Float%d%s%> type"
 msgstr ""
 
-#: c/c-decl.cc:12149 cp/parser.cc:19715
+#: c/c-decl.cc:12131 cp/parser.cc:19728
 #, gcc-internal-format
 msgid "%<_Float%d%s%> is not supported on this target"
 msgstr ""
 
-#: c/c-decl.cc:12220
+#: c/c-decl.cc:12202
 #, gcc-internal-format
 msgid "ISO C does not support decimal floating-point before C2X"
 msgstr ""
 
-#: c/c-decl.cc:12244 c/c-decl.cc:12561 c/c-parser.cc:9595
+#: c/c-decl.cc:12226 c/c-decl.cc:12543 c/c-parser.cc:9594
 #, gcc-internal-format
 msgid "fixed-point types not supported for this target"
 msgstr ""
 
-#: c/c-decl.cc:12246
+#: c/c-decl.cc:12228
 #, gcc-internal-format
 msgid "ISO C does not support fixed-point types"
 msgstr ""
 
-#: c/c-decl.cc:12279
+#: c/c-decl.cc:12261
 #, gcc-internal-format
 msgid "C++ lookup of %qD would return a field, not a type"
 msgstr ""
 
-#: c/c-decl.cc:12292
+#: c/c-decl.cc:12274
 #, gcc-internal-format
 msgid "%qE fails to be a typedef or built in type"
 msgstr ""
 
-#: c/c-decl.cc:12344
+#: c/c-decl.cc:12326
 #, 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:12365 c/c-decl.cc:12442
+#: c/c-decl.cc:12347 c/c-decl.cc:12424
 #, gcc-internal-format
 msgid "%qE used with %<auto%>"
 msgstr ""
 
-#: c/c-decl.cc:12367
+#: c/c-decl.cc:12349
 #, gcc-internal-format
 msgid "%qE used with %<register%>"
 msgstr ""
 
-#: c/c-decl.cc:12369 c/c-decl.cc:12438
+#: c/c-decl.cc:12351 c/c-decl.cc:12420
 #, gcc-internal-format
 msgid "%qE used with %<typedef%>"
 msgstr ""
 
-#: c/c-decl.cc:12371 c/c-decl.cc:12408
+#: c/c-decl.cc:12353 c/c-decl.cc:12390
 #, gcc-internal-format
 msgid "%qE used with %<constexpr%>"
 msgstr ""
 
-#: c/c-decl.cc:12385 c/c-parser.cc:2925 c/c-parser.cc:4209 c/c-parser.cc:8939
+#: c/c-decl.cc:12367 c/c-parser.cc:2924 c/c-parser.cc:4208 c/c-parser.cc:8938
 #, gcc-internal-format
 msgid "ISO C99 does not support %qE"
 msgstr ""
 
-#: c/c-decl.cc:12388 c/c-parser.cc:2928 c/c-parser.cc:4212 c/c-parser.cc:8942
+#: c/c-decl.cc:12370 c/c-parser.cc:2927 c/c-parser.cc:4211 c/c-parser.cc:8941
 #, gcc-internal-format
 msgid "ISO C90 does not support %qE"
 msgstr ""
 
-#: c/c-decl.cc:12414
+#: c/c-decl.cc:12396
 #, gcc-internal-format
 msgid "%<__thread%> before %<extern%>"
 msgstr ""
 
-#: c/c-decl.cc:12423
+#: c/c-decl.cc:12405
 #, gcc-internal-format
 msgid "%<__thread%> before %<static%>"
 msgstr ""
 
-#: c/c-decl.cc:12429
+#: c/c-decl.cc:12411
 #, gcc-internal-format
 msgid "%<typedef%> used with %<auto%>"
 msgstr ""
 
-#: c/c-decl.cc:12436
+#: c/c-decl.cc:12418
 #, gcc-internal-format
 msgid "%qE used with %<extern%>"
 msgstr ""
 
-#: c/c-decl.cc:12444
+#: c/c-decl.cc:12426
 #, gcc-internal-format
 msgid "%qE used with %qs"
 msgstr ""
 
-#: c/c-decl.cc:12457
+#: c/c-decl.cc:12439
 #, gcc-internal-format
 msgid "duplicate %<_Thread_local%> or %<__thread%>"
 msgstr ""
 
-#: c/c-decl.cc:12473
+#: c/c-decl.cc:12455
 #, gcc-internal-format
 msgid "%qs used with %qE"
 msgstr ""
 
-#: c/c-decl.cc:12481
+#: c/c-decl.cc:12463
 #, gcc-internal-format
 msgid "%<constexpr%> used with %qE"
 msgstr ""
 
-#: c/c-decl.cc:12558
+#: c/c-decl.cc:12540
 #, gcc-internal-format
 msgid "%<_Sat%> is used without %<_Fract%> or %<_Accum%>"
 msgstr ""
 
-#: c/c-decl.cc:12573
+#: c/c-decl.cc:12555
 #, gcc-internal-format
 msgid "ISO C does not support plain %<complex%> meaning %<double complex%>"
 msgstr ""
 
-#: c/c-decl.cc:12584
+#: c/c-decl.cc:12566
 #, gcc-internal-format
 msgid "ISO C does not support %<auto%> type deduction before C2X"
 msgstr ""
 
-#: c/c-decl.cc:12613
+#: c/c-decl.cc:12595
 #, gcc-internal-format
 msgid "%<__auto_type%> followed by %<[[]]%> attributes"
 msgstr ""
 
-#: c/c-decl.cc:12639 c/c-decl.cc:12655 c/c-decl.cc:12681
+#: c/c-decl.cc:12621 c/c-decl.cc:12637 c/c-decl.cc:12663
 #, gcc-internal-format
 msgid "ISO C does not support complex integer types"
 msgstr ""
 
-#: c/c-decl.cc:13109 cp/semantics.cc:6063
+#: c/c-decl.cc:13091 cp/semantics.cc:6071
 #, 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:13113 cp/semantics.cc:6067
+#: c/c-decl.cc:13095 cp/semantics.cc:6075
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare reduction%> initializer refers to variable %qD which "
 "is not %<omp_priv%> nor %<omp_orig%>"
 msgstr ""
 
-#: c/c-fold.cc:388 c/c-typeck.cc:12642 cp/typeck.cc:5636
+#: c/c-fold.cc:388 c/c-typeck.cc:12632 cp/typeck.cc:5636
 #, gcc-internal-format
 msgid "left shift of negative value"
 msgstr ""
 
-#: c/c-fold.cc:398 c/c-typeck.cc:12651 cp/typeck.cc:5644
+#: c/c-fold.cc:398 c/c-typeck.cc:12641 cp/typeck.cc:5644
 #, gcc-internal-format
 msgid "left shift count is negative"
 msgstr ""
 
-#: c/c-fold.cc:399 c/c-typeck.cc:12579 cp/typeck.cc:5583
+#: c/c-fold.cc:399 c/c-typeck.cc:12569 cp/typeck.cc:5583
 #, gcc-internal-format
 msgid "right shift count is negative"
 msgstr ""
 
-#: c/c-fold.cc:407 c/c-typeck.cc:12670 cp/typeck.cc:5652
+#: c/c-fold.cc:407 c/c-typeck.cc:12660 cp/typeck.cc:5652
 #, gcc-internal-format
 msgid "left shift count >= width of type"
 msgstr ""
 
-#: c/c-fold.cc:408 c/c-typeck.cc:12603 cp/typeck.cc:5594
+#: c/c-fold.cc:408 c/c-typeck.cc:12593 cp/typeck.cc:5594
 #, gcc-internal-format
 msgid "right shift count >= width of type"
 msgstr ""
 
-#: c/c-fold.cc:415 c/c-typeck.cc:12662
+#: c/c-fold.cc:415 c/c-typeck.cc:12652
 #, gcc-internal-format
 msgid "left shift count >= width of vector element"
 msgstr ""
 
-#: c/c-fold.cc:416 c/c-typeck.cc:12590
+#: c/c-fold.cc:416 c/c-typeck.cc:12580
 #, gcc-internal-format
 msgid "right shift count >= width of vector element"
 msgstr ""
@@ -47280,7 +47343,7 @@ msgstr ""
 msgid "to match this %qs"
 msgstr ""
 
-#: c/c-parser.cc:1367 cp/parser.cc:33754
+#: c/c-parser.cc:1367 cp/parser.cc:33775
 #, gcc-internal-format
 msgid "expected end of line"
 msgstr ""
@@ -47290,13 +47353,13 @@ msgstr ""
 msgid "ISO C forbids an empty translation unit"
 msgstr ""
 
-#: c/c-parser.cc:1796 c/c-parser.cc:1805 c/c-parser.cc:23169 cp/parser.cc:47419
-#: cp/semantics.cc:3399 cp/semantics.cc:3408
+#: c/c-parser.cc:1796 c/c-parser.cc:1805 c/c-parser.cc:23168 cp/parser.cc:47461
+#: cp/semantics.cc:3400 cp/semantics.cc:3409
 #, gcc-internal-format
 msgid "%qs without corresponding %qs"
 msgstr ""
 
-#: c/c-parser.cc:1901 c/c-parser.cc:11991
+#: c/c-parser.cc:1901 c/c-parser.cc:11990
 #, gcc-internal-format
 msgid "ISO C does not allow extra %<;%> outside of a function"
 msgstr ""
@@ -47321,19 +47384,19 @@ msgstr ""
 msgid "unknown type name %qE; use %<enum%> keyword to refer to the type"
 msgstr ""
 
-#: c/c-parser.cc:2161 c/c-parser.cc:4816
+#: c/c-parser.cc:2161 c/c-parser.cc:4815
 #, gcc-internal-format
 msgid "unknown type name %qE; did you mean %qs?"
 msgstr ""
 
-#: c/c-parser.cc:2165 c/c-parser.cc:3183 c/c-parser.cc:4820
+#: c/c-parser.cc:2165 c/c-parser.cc:3182 c/c-parser.cc:4819
 #, gcc-internal-format
 msgid "unknown type name %qE"
 msgstr ""
 
-#: c/c-parser.cc:2192 c/c-parser.cc:13313 c/c-parser.cc:20919
-#: c/c-parser.cc:21514 c/c-parser.cc:22068 cp/parser.cc:44882
-#: cp/parser.cc:49481
+#: c/c-parser.cc:2192 c/c-parser.cc:13312 c/c-parser.cc:20918
+#: c/c-parser.cc:21513 c/c-parser.cc:22067 cp/parser.cc:44924
+#: cp/parser.cc:49523
 #, gcc-internal-format
 msgid "expected declaration specifiers"
 msgstr ""
@@ -47358,12 +47421,12 @@ msgstr ""
 msgid "%<fallthrough%> attribute at top level"
 msgstr ""
 
-#: c/c-parser.cc:2279 c/c-parser.cc:4013
+#: c/c-parser.cc:2279 c/c-parser.cc:4012
 #, gcc-internal-format
 msgid "expected %<;%>, identifier or %<(%>"
 msgstr ""
 
-#: c/c-parser.cc:2297 cp/parser.cc:35989 cp/parser.cc:36061
+#: c/c-parser.cc:2297 cp/parser.cc:36028 cp/parser.cc:36100
 #, gcc-internal-format
 msgid "prefix attributes are ignored for methods"
 msgstr ""
@@ -47378,12 +47441,12 @@ msgstr ""
 msgid "unexpected attribute"
 msgstr ""
 
-#: c/c-parser.cc:2363 c/c-parser.cc:6748 cp/parser.cc:12603 cp/parser.cc:12825
+#: c/c-parser.cc:2363 c/c-parser.cc:6747 cp/parser.cc:12616 cp/parser.cc:12838
 #, gcc-internal-format
 msgid "%<fallthrough%> attribute not followed by %<;%>"
 msgstr ""
 
-#: c/c-parser.cc:2366 c/c-parser.cc:6731 cp/cp-gimplify.cc:3191
+#: c/c-parser.cc:2366 c/c-parser.cc:6730 cp/cp-gimplify.cc:3264
 #, gcc-internal-format
 msgid "%<assume%> attribute not followed by %<;%>"
 msgstr ""
@@ -47418,17 +47481,17 @@ msgstr ""
 msgid "%<__auto_type%> used with a bit-field initializer"
 msgstr ""
 
-#: c/c-parser.cc:2592 c/c-parser.cc:2722
+#: c/c-parser.cc:2591 c/c-parser.cc:2721
 #, gcc-internal-format
 msgid "%qs requires an initialized data declaration"
 msgstr ""
 
-#: c/c-parser.cc:2685
+#: c/c-parser.cc:2684
 #, gcc-internal-format
 msgid "%qs may only be used with a single declarator"
 msgstr ""
 
-#: c/c-parser.cc:2714 cp/parser.cc:15497
+#: c/c-parser.cc:2713 cp/parser.cc:15510
 #, gcc-internal-format
 msgid "expected %<,%> or %<;%>"
 msgstr ""
@@ -47436,274 +47499,274 @@ 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:2729 c/c-parser.cc:2770
+#: c/c-parser.cc:2728 c/c-parser.cc:2769
 #, gcc-internal-format
 msgid "expected %<=%>, %<,%>, %<;%>, %<asm%> or %<__attribute__%>"
 msgstr ""
 
-#: c/c-parser.cc:2737
+#: c/c-parser.cc:2736
 #, gcc-internal-format
 msgid "ISO C forbids nested functions"
 msgstr ""
 
-#: c/c-parser.cc:2951 c/c-parser.cc:7870 c/c-parser.cc:13374
+#: c/c-parser.cc:2950 c/c-parser.cc:7869 c/c-parser.cc:13373
 #, gcc-internal-format
 msgid "expected string literal"
 msgstr ""
 
-#: c/c-parser.cc:2960
+#: c/c-parser.cc:2959
 #, gcc-internal-format
 msgid "ISO C11 does not support omitting the string in %qE"
 msgstr ""
 
-#: c/c-parser.cc:2966
+#: c/c-parser.cc:2965
 #, gcc-internal-format
 msgid "expression in static assertion is not an integer"
 msgstr ""
 
-#: c/c-parser.cc:2975
+#: c/c-parser.cc:2974
 #, gcc-internal-format
 msgid "expression in static assertion is not an integer constant expression"
 msgstr ""
 
-#: c/c-parser.cc:2980
+#: c/c-parser.cc:2979
 #, gcc-internal-format
 msgid "expression in static assertion is not constant"
 msgstr ""
 
-#: c/c-parser.cc:2987
+#: c/c-parser.cc:2986
 #, gcc-internal-format
 msgid "static assertion failed: %E"
 msgstr ""
 
-#: c/c-parser.cc:2989 cp/semantics.cc:11287
+#: c/c-parser.cc:2988 cp/semantics.cc:11298
 #, gcc-internal-format
 msgid "static assertion failed"
 msgstr ""
 
-#: c/c-parser.cc:3330
+#: c/c-parser.cc:3329
 #, gcc-internal-format
 msgid "%<_Atomic%> in Objective-C"
 msgstr ""
 
-#: c/c-parser.cc:3333
+#: c/c-parser.cc:3332
 #, gcc-internal-format
 msgid "ISO C99 does not support the %<_Atomic%> qualifier"
 msgstr ""
 
-#: c/c-parser.cc:3336
+#: c/c-parser.cc:3335
 #, gcc-internal-format
 msgid "ISO C90 does not support the %<_Atomic%> qualifier"
 msgstr ""
 
-#: c/c-parser.cc:3364
+#: c/c-parser.cc:3363
 #, gcc-internal-format
 msgid "%<_Atomic%> applied to a qualified type"
 msgstr ""
 
-#: c/c-parser.cc:3394
+#: c/c-parser.cc:3393
 #, gcc-internal-format
 msgid "%<__GIMPLE%> only valid with %<-fgimple%>"
 msgstr ""
 
-#: c/c-parser.cc:3485
+#: c/c-parser.cc:3484
 #, gcc-internal-format
 msgid "ISO C does not support specifying %<enum%> underlying types before C2X"
 msgstr ""
 
-#: c/c-parser.cc:3494
+#: c/c-parser.cc:3493
 #, gcc-internal-format
 msgid "%<enum%> declared both with and without fixed underlying type"
 msgstr ""
 
-#: c/c-parser.cc:3516
+#: c/c-parser.cc:3515
 #, gcc-internal-format
 msgid "no %<enum%> underlying type specified"
 msgstr ""
 
-#: c/c-parser.cc:3520
+#: c/c-parser.cc:3519
 #, gcc-internal-format
 msgid "invalid %<enum%> underlying type"
 msgstr ""
 
-#: c/c-parser.cc:3550
+#: c/c-parser.cc:3549
 #, gcc-internal-format
 msgid "%<enum%> underlying type incompatible with previous declaration"
 msgstr ""
 
-#: c/c-parser.cc:3585
+#: c/c-parser.cc:3584
 #, gcc-internal-format
 msgid "empty enum is invalid"
 msgstr ""
 
-#: c/c-parser.cc:3589 c/c-parser.cc:4641 c/c-parser.cc:5362 c/c-parser.cc:5374
-#: c/c-parser.cc:5836 c/c-parser.cc:6148 c/c-parser.cc:7737 c/c-parser.cc:7820
-#: c/c-parser.cc:8796 c/c-parser.cc:9113 c/c-parser.cc:9122 c/c-parser.cc:9655
-#: c/c-parser.cc:9842 c/c-parser.cc:9870 c/c-parser.cc:10752
-#: c/c-parser.cc:11270 c/c-parser.cc:11308 c/c-parser.cc:11573
-#: c/c-parser.cc:11624 c/c-parser.cc:11784 c/c-parser.cc:11814
-#: c/c-parser.cc:11822 c/c-parser.cc:11851 c/c-parser.cc:11864
-#: c/c-parser.cc:12170 c/c-parser.cc:12294 c/c-parser.cc:12879
-#: c/c-parser.cc:12932 c/c-parser.cc:12948 c/c-parser.cc:12994
-#: c/c-parser.cc:13839 c/c-parser.cc:13885 c/c-parser.cc:16615
-#: c/c-parser.cc:16752 c/c-parser.cc:17467 c/c-parser.cc:19903
-#: c/c-parser.cc:22596 c/c-parser.cc:22787 c/gimple-parser.cc:1806
-#: c/gimple-parser.cc:1853 cp/parser.cc:9276 cp/parser.cc:33757
-#: cp/parser.cc:36966 cp/parser.cc:39892 cp/parser.cc:40084 cp/parser.cc:46465
-#: cp/parser.cc:48764
+#: c/c-parser.cc:3588 c/c-parser.cc:4640 c/c-parser.cc:5361 c/c-parser.cc:5373
+#: c/c-parser.cc:5835 c/c-parser.cc:6147 c/c-parser.cc:7736 c/c-parser.cc:7819
+#: c/c-parser.cc:8795 c/c-parser.cc:9112 c/c-parser.cc:9121 c/c-parser.cc:9654
+#: c/c-parser.cc:9841 c/c-parser.cc:9869 c/c-parser.cc:10751
+#: c/c-parser.cc:11269 c/c-parser.cc:11307 c/c-parser.cc:11572
+#: c/c-parser.cc:11623 c/c-parser.cc:11783 c/c-parser.cc:11813
+#: c/c-parser.cc:11821 c/c-parser.cc:11850 c/c-parser.cc:11863
+#: c/c-parser.cc:12169 c/c-parser.cc:12293 c/c-parser.cc:12878
+#: c/c-parser.cc:12931 c/c-parser.cc:12947 c/c-parser.cc:12993
+#: c/c-parser.cc:13838 c/c-parser.cc:13884 c/c-parser.cc:16614
+#: c/c-parser.cc:16751 c/c-parser.cc:17466 c/c-parser.cc:19902
+#: c/c-parser.cc:22595 c/c-parser.cc:22786 c/gimple-parser.cc:1806
+#: c/gimple-parser.cc:1853 cp/parser.cc:9276 cp/parser.cc:33778
+#: cp/parser.cc:37005 cp/parser.cc:39931 cp/parser.cc:40123 cp/parser.cc:46507
+#: cp/parser.cc:48806
 #, gcc-internal-format
 msgid "expected identifier"
 msgstr ""
 
-#: c/c-parser.cc:3634 cp/parser.cc:21252
+#: c/c-parser.cc:3633 cp/parser.cc:21265
 #, gcc-internal-format
 msgid "comma at end of enumerator list"
 msgstr ""
 
-#: c/c-parser.cc:3640 go/gofrontend/embed.cc:423
+#: c/c-parser.cc:3639 go/gofrontend/embed.cc:423
 #, gcc-internal-format
 msgid "expected %<,%> or %<}%>"
 msgstr ""
 
-#: c/c-parser.cc:3683
+#: c/c-parser.cc:3682
 #, gcc-internal-format
 msgid "ISO C forbids forward references to %<enum%> types"
 msgstr ""
 
-#: c/c-parser.cc:3807
+#: c/c-parser.cc:3806
 #, gcc-internal-format
 msgid "expected class name"
 msgstr ""
 
-#: c/c-parser.cc:3829
+#: c/c-parser.cc:3828
 #, gcc-internal-format
 msgid "extra semicolon in struct or union specified"
 msgstr ""
 
-#: c/c-parser.cc:3858
+#: c/c-parser.cc:3857
 #, gcc-internal-format
 msgid "no semicolon at end of struct or union"
 msgstr ""
 
-#: c/c-parser.cc:3975 c/c-parser.cc:5608
+#: c/c-parser.cc:3974 c/c-parser.cc:5607
 #, gcc-internal-format
 msgid "expected specifier-qualifier-list"
 msgstr ""
 
-#: c/c-parser.cc:3986
+#: c/c-parser.cc:3985
 #, gcc-internal-format
 msgid "ISO C forbids member declarations with no members"
 msgstr ""
 
-#: c/c-parser.cc:4080
+#: c/c-parser.cc:4079
 #, gcc-internal-format
 msgid "expected %<,%>, %<;%> or %<}%>"
 msgstr ""
 
-#: c/c-parser.cc:4087
+#: c/c-parser.cc:4086
 #, gcc-internal-format
 msgid "expected %<:%>, %<,%>, %<;%>, %<}%> or %<__attribute__%>"
 msgstr ""
 
-#: c/c-parser.cc:4158
+#: c/c-parser.cc:4157
 #, gcc-internal-format
 msgid "%<typeof%> applied to a bit-field"
 msgstr ""
 
-#: c/c-parser.cc:4469
+#: c/c-parser.cc:4468
 #, gcc-internal-format
 msgid "expected identifier or %<(%>"
 msgstr ""
 
-#: c/c-parser.cc:4702
+#: c/c-parser.cc:4701
 #, gcc-internal-format
 msgid "ISO C requires a named argument before %<...%> before C2X"
 msgstr ""
 
-#: c/c-parser.cc:4827
+#: c/c-parser.cc:4826
 #, gcc-internal-format
 msgid "expected declaration specifiers or %<...%>"
 msgstr ""
 
-#: c/c-parser.cc:5055
+#: c/c-parser.cc:5054
 #, gcc-internal-format
 msgid "parentheses must be omitted if attribute argument list is empty"
 msgstr ""
 
-#: c/c-parser.cc:5399 cp/parser.cc:29380
+#: c/c-parser.cc:5398 cp/parser.cc:29399
 #, gcc-internal-format
 msgid "%qE attribute does not take any arguments"
 msgstr ""
 
-#: c/c-parser.cc:5454
+#: c/c-parser.cc:5453
 #, gcc-internal-format
 msgid "ISO C does not support %<[[]]%> attributes before C2X"
 msgstr ""
 
-#: c/c-parser.cc:5683 c/c-parser.cc:5743 c/c-typeck.cc:8648
+#: c/c-parser.cc:5682 c/c-parser.cc:5742 c/c-typeck.cc:8638
 #, gcc-internal-format
 msgid ""
 "variable-sized object may not be initialized except with an empty initializer"
 msgstr ""
 
-#: c/c-parser.cc:5737
+#: c/c-parser.cc:5736
 #, gcc-internal-format
 msgid "ISO C forbids empty initializer braces before C2X"
 msgstr ""
 
-#: c/c-parser.cc:5800
+#: c/c-parser.cc:5799
 #, gcc-internal-format
 msgid "obsolete use of designated initializer with %<:%>"
 msgstr ""
 
-#: c/c-parser.cc:5956
+#: c/c-parser.cc:5955
 #, gcc-internal-format
 msgid "ISO C forbids specifying range of elements to initialize"
 msgstr ""
 
-#: c/c-parser.cc:5968
+#: c/c-parser.cc:5967
 #, gcc-internal-format
 msgid "ISO C90 forbids specifying subobject to initialize"
 msgstr ""
 
-#: c/c-parser.cc:5976
+#: c/c-parser.cc:5975
 #, gcc-internal-format
 msgid "obsolete use of designated initializer without %<=%>"
 msgstr ""
 
-#: c/c-parser.cc:6163
+#: c/c-parser.cc:6162
 #, gcc-internal-format
 msgid "ISO C forbids label declarations"
 msgstr ""
 
-#: c/c-parser.cc:6169 c/c-parser.cc:6258 c/c-parser.cc:6272
+#: c/c-parser.cc:6168 c/c-parser.cc:6257 c/c-parser.cc:6271
 #: c/gimple-parser.cc:419
 #, gcc-internal-format
 msgid "expected declaration or statement"
 msgstr ""
 
-#: c/c-parser.cc:6204
+#: c/c-parser.cc:6203
 #, 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:6216 c/c-parser.cc:6249
+#: c/c-parser.cc:6215 c/c-parser.cc:6248
 #, gcc-internal-format
 msgid "ISO C90 forbids mixed declarations and code"
 msgstr ""
 
-#: c/c-parser.cc:6280
+#: c/c-parser.cc:6279
 #, gcc-internal-format
 msgid "expected %<}%> before %<else%>"
 msgstr ""
 
-#: c/c-parser.cc:6285 cp/parser.cc:12950
+#: c/c-parser.cc:6284 cp/parser.cc:12963
 #, gcc-internal-format
 msgid "%<else%> without a previous %<if%>"
 msgstr ""
 
-#: c/c-parser.cc:6303
+#: c/c-parser.cc:6302
 #, gcc-internal-format
 msgid "label at end of compound statement"
 msgstr ""
@@ -47712,1175 +47775,1175 @@ 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:6324 c/c-parser.cc:6337 c/c-parser.cc:6773
-#: c/gimple-parser.cc:2344 cp/parser.cc:12509
+#: c/c-parser.cc:6323 c/c-parser.cc:6336 c/c-parser.cc:6772
+#: c/gimple-parser.cc:2344 cp/parser.cc:12522
 #, gcc-internal-format
 msgid "expected statement"
 msgstr ""
 
-#: c/c-parser.cc:6396
+#: c/c-parser.cc:6395
 #, gcc-internal-format
 msgid "expected %<:%> or %<...%>"
 msgstr ""
 
-#: c/c-parser.cc:6424
+#: c/c-parser.cc:6423
 #, gcc-internal-format
 msgid ""
 "GNU-style attribute between label and declaration appertains to the label"
 msgstr ""
 
-#: c/c-parser.cc:6655
+#: c/c-parser.cc:6654
 #, gcc-internal-format
 msgid "expected identifier or %<*%>"
 msgstr ""
 
-#: c/c-parser.cc:6756
+#: c/c-parser.cc:6755
 #, gcc-internal-format
 msgid ""
 "only attribute %<fallthrough%> or %<assume%> can be applied to a null "
 "statement"
 msgstr ""
 
-#: c/c-parser.cc:6881 cp/parser.cc:14519
+#: c/c-parser.cc:6880 cp/parser.cc:14532
 #, gcc-internal-format
 msgid "suggest braces around empty body in an %<if%> statement"
 msgstr ""
 
-#: c/c-parser.cc:6923 cp/parser.cc:14522
+#: c/c-parser.cc:6922 cp/parser.cc:14535
 #, gcc-internal-format
 msgid "suggest braces around empty body in an %<else%> statement"
 msgstr ""
 
-#: c/c-parser.cc:7054 cp/parser.cc:13319
+#: c/c-parser.cc:7053 cp/parser.cc:13332
 #, gcc-internal-format
 msgid "suggest explicit braces to avoid ambiguous %<else%>"
 msgstr ""
 
-#: c/c-parser.cc:7194
+#: c/c-parser.cc:7193
 #, gcc-internal-format
 msgid "suggest braces around empty body in %<do%> statement"
 msgstr ""
 
-#: c/c-parser.cc:7326 c/c-parser.cc:7358
+#: c/c-parser.cc:7325 c/c-parser.cc:7357
 #, gcc-internal-format
 msgid "multiple iterating variables in fast enumeration"
 msgstr ""
 
-#: c/c-parser.cc:7381
+#: c/c-parser.cc:7380
 #, gcc-internal-format
 msgid "invalid iterating variable in fast enumeration"
 msgstr ""
 
-#: c/c-parser.cc:7405 cp/parser.cc:13606
+#: c/c-parser.cc:7404 cp/parser.cc:13619
 #, gcc-internal-format
 msgid "missing loop condition in loop with %<GCC ivdep%> pragma"
 msgstr ""
 
-#: c/c-parser.cc:7411 cp/parser.cc:13612
+#: c/c-parser.cc:7410 cp/parser.cc:13625
 #, gcc-internal-format
 msgid "missing loop condition in loop with %<GCC unroll%> pragma"
 msgstr ""
 
-#: c/c-parser.cc:7447
+#: c/c-parser.cc:7446
 #, gcc-internal-format
 msgid "missing collection in fast enumeration"
 msgstr ""
 
-#: c/c-parser.cc:7569 c/c-parser.cc:7580 c/c-parser.cc:7591
+#: c/c-parser.cc:7568 c/c-parser.cc:7579 c/c-parser.cc:7590
 #, gcc-internal-format
 msgid "duplicate %<asm%> qualifier %qE"
 msgstr ""
 
-#: c/c-parser.cc:7570 c/c-parser.cc:7581 c/c-parser.cc:7592 cp/parser.cc:22159
-#: cp/parser.cc:22176 cp/parser.cc:22190
+#: c/c-parser.cc:7569 c/c-parser.cc:7580 c/c-parser.cc:7591 cp/parser.cc:22172
+#: cp/parser.cc:22189 cp/parser.cc:22203
 #, gcc-internal-format
 msgid "first seen here"
 msgstr ""
 
-#: c/c-parser.cc:7601
+#: c/c-parser.cc:7600
 #, gcc-internal-format
 msgid "%qE is not a valid %<asm%> qualifier"
 msgstr ""
 
-#: c/c-parser.cc:7651
+#: c/c-parser.cc:7650
 #, gcc-internal-format
 msgid "expected %<:%> or %<)%>"
 msgstr ""
 
-#: c/c-parser.cc:7950 cp/parser.cc:4575
+#: c/c-parser.cc:7949 cp/parser.cc:4575
 #, gcc-internal-format
 msgid "a wide string is invalid in this context"
 msgstr ""
 
-#: c/c-parser.cc:8156
+#: c/c-parser.cc:8155
 #, 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:8378 cp/typeck.cc:5417
+#: c/c-parser.cc:8377 cp/typeck.cc:5417
 #, gcc-internal-format
 msgid ""
 "division %<sizeof (%T) / sizeof (%T)%> does not compute the number of array "
 "elements"
 msgstr ""
 
-#: c/c-parser.cc:8384 cp/typeck.cc:5422
+#: c/c-parser.cc:8383 cp/typeck.cc:5422
 #, gcc-internal-format
 msgid "first %<sizeof%> operand was declared here"
 msgstr ""
 
-#: c/c-parser.cc:8655
+#: c/c-parser.cc:8654
 #, gcc-internal-format
 msgid "storage class specifier in cast"
 msgstr ""
 
-#: c/c-parser.cc:8658
+#: c/c-parser.cc:8657
 #, gcc-internal-format
 msgid "alignment specified for type name in cast"
 msgstr ""
 
-#: c/c-parser.cc:8759
+#: c/c-parser.cc:8758
 #, gcc-internal-format
 msgid "traditional C rejects the unary plus operator"
 msgstr ""
 
-#: c/c-parser.cc:8891
+#: c/c-parser.cc:8890
 #, gcc-internal-format
 msgid "storage class specifier in %<sizeof%>"
 msgstr ""
 
-#: c/c-parser.cc:8894
+#: c/c-parser.cc:8893
 #, gcc-internal-format
 msgid "alignment specified for type name in %<sizeof%>"
 msgstr ""
 
-#: c/c-parser.cc:8910
+#: c/c-parser.cc:8909
 #, gcc-internal-format
 msgid "%<sizeof%> applied to a bit-field"
 msgstr ""
 
-#: c/c-parser.cc:8983
+#: c/c-parser.cc:8982
 #, gcc-internal-format
 msgid "storage class specifier in %qE"
 msgstr ""
 
-#: c/c-parser.cc:8986
+#: c/c-parser.cc:8985
 #, gcc-internal-format
 msgid "alignment specified for type name in %qE"
 msgstr ""
 
-#: c/c-parser.cc:9010
+#: c/c-parser.cc:9009
 #, gcc-internal-format
 msgid "ISO C does not allow %<%E (expression)%>"
 msgstr ""
 
-#: c/c-parser.cc:9163
+#: c/c-parser.cc:9162
 #, gcc-internal-format
 msgid "cannot take address of %qs"
 msgstr ""
 
-#: c/c-parser.cc:9246
+#: c/c-parser.cc:9245
 #, gcc-internal-format
 msgid "ISO C99 does not support %<_Generic%>"
 msgstr ""
 
-#: c/c-parser.cc:9249
+#: c/c-parser.cc:9248
 #, gcc-internal-format
 msgid "ISO C90 does not support %<_Generic%>"
 msgstr ""
 
-#: c/c-parser.cc:9318
+#: c/c-parser.cc:9317
 #, gcc-internal-format
 msgid "%<_Generic%> association has function type"
 msgstr ""
 
-#: c/c-parser.cc:9321
+#: c/c-parser.cc:9320
 #, gcc-internal-format
 msgid "%<_Generic%> association has incomplete type"
 msgstr ""
 
-#: c/c-parser.cc:9325
+#: c/c-parser.cc:9324
 #, gcc-internal-format
 msgid "%<_Generic%> association has variable length type"
 msgstr ""
 
-#: c/c-parser.cc:9349
+#: c/c-parser.cc:9348
 #, gcc-internal-format
 msgid "duplicate %<default%> case in %<_Generic%>"
 msgstr ""
 
-#: c/c-parser.cc:9350
+#: c/c-parser.cc:9349
 #, gcc-internal-format
 msgid "original %<default%> is here"
 msgstr ""
 
-#: c/c-parser.cc:9358
+#: c/c-parser.cc:9357
 #, gcc-internal-format
 msgid "%<_Generic%> specifies two compatible types"
 msgstr ""
 
-#: c/c-parser.cc:9359
+#: c/c-parser.cc:9358
 #, gcc-internal-format
 msgid "compatible type is here"
 msgstr ""
 
-#: c/c-parser.cc:9382
+#: c/c-parser.cc:9381
 #, gcc-internal-format
 msgid "%<_Generic%> selector matches multiple associations"
 msgstr ""
 
-#: c/c-parser.cc:9384
+#: c/c-parser.cc:9383
 #, gcc-internal-format
 msgid "other match is here"
 msgstr ""
 
-#: c/c-parser.cc:9409
+#: c/c-parser.cc:9408
 #, gcc-internal-format
 msgid ""
 "%<_Generic%> selector of type %qT is not compatible with any association"
 msgstr ""
 
-#: c/c-parser.cc:9430
+#: c/c-parser.cc:9429
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> is not a function pointer"
 msgstr ""
 
-#: c/c-parser.cc:9438
+#: c/c-parser.cc:9437
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> is unprototyped"
 msgstr ""
 
-#: c/c-parser.cc:9444
+#: c/c-parser.cc:9443
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> has variable arguments"
 msgstr ""
 
-#: c/c-parser.cc:9460
+#: c/c-parser.cc:9459
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> has no arguments"
 msgstr ""
 
-#: c/c-parser.cc:9483 c/c-parser.cc:9487
+#: c/c-parser.cc:9482 c/c-parser.cc:9486
 #, gcc-internal-format
 msgid "ISO C does not support %qs predefined identifier"
 msgstr ""
 
-#: c/c-parser.cc:9491
+#: c/c-parser.cc:9490
 #, gcc-internal-format
 msgid "ISO C90 does not support %<__func__%> predefined identifier"
 msgstr ""
 
-#: c/c-parser.cc:9669 c/c-parser.cc:10819 c/c-parser.cc:10841
-#: c/c-parser.cc:19320 c/gimple-parser.cc:1722 c/gimple-parser.cc:2361
-#: cp/parser.cc:41978
+#: c/c-parser.cc:9668 c/c-parser.cc:10818 c/c-parser.cc:10840
+#: c/c-parser.cc:19319 c/gimple-parser.cc:1722 c/gimple-parser.cc:2361
+#: cp/parser.cc:42017
 #, gcc-internal-format
 msgid "expected expression"
 msgstr ""
 
-#: c/c-parser.cc:9690
+#: c/c-parser.cc:9689
 #, gcc-internal-format
 msgid "braced-group within expression allowed only inside a function"
 msgstr ""
 
-#: c/c-parser.cc:9704
+#: c/c-parser.cc:9703
 #, gcc-internal-format
 msgid "ISO C forbids braced-groups within expressions"
 msgstr ""
 
-#: c/c-parser.cc:9897
+#: c/c-parser.cc:9896
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_choose_expr%>"
 msgstr ""
 
-#: c/c-parser.cc:9913
+#: c/c-parser.cc:9912
 #, gcc-internal-format
 msgid "first argument to %<__builtin_choose_expr%> not a constant"
 msgstr ""
 
-#: c/c-parser.cc:9983 c/c-parser.cc:10000 c/c-parser.cc:10007
+#: c/c-parser.cc:9982 c/c-parser.cc:9999 c/c-parser.cc:10006
 #, gcc-internal-format
 msgid "too few arguments to %<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.cc:10028
+#: c/c-parser.cc:10027
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> has wrong number of arguments"
 msgstr ""
 
-#: c/c-parser.cc:10072 c/c-parser.cc:10082
+#: c/c-parser.cc:10071 c/c-parser.cc:10081
 #, gcc-internal-format
 msgid ""
 "invalid type-generic return type for argument %u of %<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.cc:10104 c/c-parser.cc:10114
+#: c/c-parser.cc:10103 c/c-parser.cc:10113
 #, gcc-internal-format
 msgid ""
 "invalid type-generic type for argument %u of argument %u of "
 "%<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.cc:10147
+#: c/c-parser.cc:10146
 #, gcc-internal-format
 msgid "function arguments of %<__builtin_tgmath%> all have the same type"
 msgstr ""
 
-#: c/c-parser.cc:10166
+#: c/c-parser.cc:10165
 #, gcc-internal-format
 msgid "function arguments of %<__builtin_tgmath%> lack type-generic parameter"
 msgstr ""
 
-#: c/c-parser.cc:10214
+#: c/c-parser.cc:10213
 #, gcc-internal-format
 msgid ""
 "duplicate type-generic parameter type for function argument %u of "
 "%<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.cc:10237
+#: c/c-parser.cc:10236
 #, gcc-internal-format
 msgid "bad return type for function argument %u of %<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.cc:10254
+#: c/c-parser.cc:10253
 #, gcc-internal-format
 msgid ""
 "bad type for argument %u of function argument %u of %<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.cc:10293
+#: c/c-parser.cc:10292
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid type of argument %u of type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:10304
+#: c/c-parser.cc:10303
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "decimal floating-point argument %u to complex-only type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:10312
+#: c/c-parser.cc:10311
 #, gcc-internal-format, gfc-internal-format
 msgid "decimal floating-point argument %u to binary-only type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:10320 c/c-parser.cc:10350
+#: c/c-parser.cc:10319 c/c-parser.cc:10349
 #, gcc-internal-format
 msgid ""
 "both complex and decimal floating-point arguments to type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:10328 c/c-parser.cc:10370
+#: c/c-parser.cc:10327 c/c-parser.cc:10369
 #, gcc-internal-format
 msgid ""
 "both binary and decimal floating-point arguments to type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:10342
+#: c/c-parser.cc:10341
 #, gcc-internal-format, gfc-internal-format
 msgid "complex argument %u to decimal-only type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:10362
+#: c/c-parser.cc:10361
 #, gcc-internal-format, gfc-internal-format
 msgid "binary argument %u to decimal-only type-generic function"
 msgstr ""
 
-#: c/c-parser.cc:10465
+#: c/c-parser.cc:10464
 #, gcc-internal-format
 msgid "no matching function for type-generic call"
 msgstr ""
 
-#: c/c-parser.cc:10506
+#: c/c-parser.cc:10505
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_call_with_static_chain%>"
 msgstr ""
 
-#: c/c-parser.cc:10519
+#: c/c-parser.cc:10518
 #, gcc-internal-format
 msgid ""
 "first argument to %<__builtin_call_with_static_chain%> must be a call "
 "expression"
 msgstr ""
 
-#: c/c-parser.cc:10523
+#: c/c-parser.cc:10522
 #, gcc-internal-format
 msgid ""
 "second argument to %<__builtin_call_with_static_chain%> must be a pointer "
 "type"
 msgstr ""
 
-#: c/c-parser.cc:10549
+#: c/c-parser.cc:10548
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_complex%>"
 msgstr ""
 
-#: c/c-parser.cc:10571
+#: c/c-parser.cc:10570
 #, gcc-internal-format
 msgid "%<__builtin_complex%> operand not of real binary floating-point type"
 msgstr ""
 
-#: c/c-parser.cc:10580
+#: c/c-parser.cc:10579
 #, gcc-internal-format
 msgid "%<__builtin_complex%> operands of different types"
 msgstr ""
 
-#: c/c-parser.cc:10625 c/c-parser.cc:10654 cp/parser.cc:7603
+#: c/c-parser.cc:10624 c/c-parser.cc:10653 cp/parser.cc:7603
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_shuffle%>"
 msgstr ""
 
-#: c/c-parser.cc:10796 cp/parser.cc:5983
+#: c/c-parser.cc:10795 cp/parser.cc:5983
 #, gcc-internal-format
 msgid "%<omp_all_memory%> may only be used in OpenMP %<depend%> clause"
 msgstr ""
 
-#: c/c-parser.cc:10806
+#: c/c-parser.cc:10805
 #, gcc-internal-format
 msgid "ISO C does not support %qs before C2X"
 msgstr ""
 
-#: c/c-parser.cc:10894
+#: c/c-parser.cc:10893
 #, gcc-internal-format
 msgid "%qT declared in %<constexpr%> compound literal"
 msgstr ""
 
-#: c/c-parser.cc:10899
+#: c/c-parser.cc:10898
 #, gcc-internal-format
 msgid "%qT defined in %<constexpr%> compound literal"
 msgstr ""
 
-#: c/c-parser.cc:10914
+#: c/c-parser.cc:10913
 #, gcc-internal-format
 msgid "compound literal has variable size"
 msgstr ""
 
-#: c/c-parser.cc:10919
+#: c/c-parser.cc:10918
 #, gcc-internal-format
 msgid "compound literal has function type"
 msgstr ""
 
-#: c/c-parser.cc:10950
+#: c/c-parser.cc:10949
 #, gcc-internal-format
 msgid "compound literal qualified by address-space qualifier"
 msgstr ""
 
-#: c/c-parser.cc:10955
+#: c/c-parser.cc:10954
 #, gcc-internal-format
 msgid "ISO C90 forbids compound literals"
 msgstr ""
 
-#: c/c-parser.cc:10957
+#: c/c-parser.cc:10956
 #, gcc-internal-format
 msgid "ISO C forbids storage class specifiers in compound literals before C2X"
 msgstr ""
 
-#: c/c-parser.cc:10971
+#: c/c-parser.cc:10970
 #, gcc-internal-format
 msgid "%<_Alignas%> specifiers cannot reduce alignment of compound literal"
 msgstr ""
 
-#: c/c-parser.cc:11046
+#: c/c-parser.cc:11045
 #, gcc-internal-format
 msgid ""
 "using integer absolute value function %qD when argument is of floating-point "
 "type %qT"
 msgstr ""
 
-#: c/c-parser.cc:11051
+#: c/c-parser.cc:11050
 #, gcc-internal-format
 msgid ""
 "using integer absolute value function %qD when argument is of complex type "
 "%qT"
 msgstr ""
 
-#: c/c-parser.cc:11059
+#: c/c-parser.cc:11058
 #, gcc-internal-format
 msgid "taking the absolute value of unsigned type %qT has no effect"
 msgstr ""
 
-#: c/c-parser.cc:11070
+#: c/c-parser.cc:11069
 #, gcc-internal-format
 msgid ""
 "using floating-point absolute value function %qD when argument is of integer "
 "type %qT"
 msgstr ""
 
-#: c/c-parser.cc:11074
+#: c/c-parser.cc:11073
 #, 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:11079
+#: c/c-parser.cc:11078
 #, gcc-internal-format
 msgid ""
 "using floating-point absolute value function %qD when argument is of complex "
 "type %qT"
 msgstr ""
 
-#: c/c-parser.cc:11092
+#: c/c-parser.cc:11091
 #, gcc-internal-format
 msgid ""
 "using complex absolute value function %qD when argument is of integer type "
 "%qT"
 msgstr ""
 
-#: c/c-parser.cc:11096
+#: c/c-parser.cc:11095
 #, gcc-internal-format
 msgid ""
 "using complex absolute value function %qD when argument is of floating-point "
 "type %qT"
 msgstr ""
 
-#: c/c-parser.cc:11113
+#: c/c-parser.cc:11112
 #, gcc-internal-format
 msgid ""
 "using decimal floating-point absolute value function %qD when argument is of "
 "integer type %qT"
 msgstr ""
 
-#: c/c-parser.cc:11118
+#: c/c-parser.cc:11117
 #, 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:11123
+#: c/c-parser.cc:11122
 #, gcc-internal-format
 msgid ""
 "using decimal floating-point absolute value function %qD when argument is of "
 "complex type %qT"
 msgstr ""
 
-#: c/c-parser.cc:11149
+#: c/c-parser.cc:11148
 #, 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:11595
+#: c/c-parser.cc:11594
 #, gcc-internal-format
 msgid "expected identifier or %<)%>"
 msgstr ""
 
-#: c/c-parser.cc:11691
+#: c/c-parser.cc:11690
 #, gcc-internal-format
 msgid "extra semicolon"
 msgstr ""
 
-#: c/c-parser.cc:11939
+#: c/c-parser.cc:11938
 #, gcc-internal-format
 msgid "extra semicolon in method definition specified"
 msgstr ""
 
-#: c/c-parser.cc:12071
+#: c/c-parser.cc:12070
 #, gcc-internal-format
 msgid "method attributes must be specified at the end only"
 msgstr ""
 
-#: c/c-parser.cc:12091
+#: c/c-parser.cc:12090
 #, gcc-internal-format
 msgid "expected %<;%> or %<{%> after method attribute definition"
 msgstr ""
 
-#: c/c-parser.cc:12213
+#: c/c-parser.cc:12212
 #, gcc-internal-format
 msgid "objective-c method declaration is expected"
 msgstr ""
 
-#: c/c-parser.cc:12665
+#: c/c-parser.cc:12664
 #, gcc-internal-format
 msgid "no type or storage class may be specified here,"
 msgstr ""
 
-#: c/c-parser.cc:12733 cp/parser.cc:36823
+#: c/c-parser.cc:12732 cp/parser.cc:36862
 #, gcc-internal-format
 msgid "empty property attribute list"
 msgstr ""
 
-#: c/c-parser.cc:12747 cp/parser.cc:36836
+#: c/c-parser.cc:12746 cp/parser.cc:36875
 #, gcc-internal-format
 msgid "missing property attribute"
 msgstr ""
 
-#: c/c-parser.cc:12786
+#: c/c-parser.cc:12785
 #, gcc-internal-format
 msgid "unknown property attribute %<%s%s%>"
 msgstr ""
 
-#: c/c-parser.cc:12789 cp/parser.cc:36873
+#: c/c-parser.cc:12788 cp/parser.cc:36912
 #, gcc-internal-format
 msgid "unknown property attribute"
 msgstr ""
 
-#: c/c-parser.cc:12798 cp/parser.cc:36882
+#: c/c-parser.cc:12797 cp/parser.cc:36921
 #, gcc-internal-format
 msgid "expected %<=%> after Objective-C %qE"
 msgstr ""
 
-#: c/c-parser.cc:12809 cp/parser.cc:36896
+#: c/c-parser.cc:12808 cp/parser.cc:36935
 #, gcc-internal-format
 msgid "expected %qE selector name"
 msgstr ""
 
-#: c/c-parser.cc:12825 cp/parser.cc:36915
+#: c/c-parser.cc:12824 cp/parser.cc:36954
 #, gcc-internal-format
 msgid "setter method names must terminate with %<:%>"
 msgstr ""
 
-#: c/c-parser.cc:13039 cp/parser.cc:49091
+#: c/c-parser.cc:13038 cp/parser.cc:49133
 #, 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:13084 c/c-parser.cc:21511 c/c-parser.cc:21812
-#: c/c-parser.cc:21875 c/c-parser.cc:21973 cp/parser.cc:44879
-#: cp/parser.cc:45219 cp/parser.cc:45322 cp/parser.cc:45408 cp/parser.cc:49138
-#: cp/parser.cc:49154 cp/parser.cc:49170 cp/parser.cc:49187 cp/parser.cc:49204
-#: cp/parser.cc:49221 cp/parser.cc:49248 cp/parser.cc:49262 cp/parser.cc:49287
-#: cp/parser.cc:49301
+#: c/c-parser.cc:13083 c/c-parser.cc:21510 c/c-parser.cc:21811
+#: c/c-parser.cc:21874 c/c-parser.cc:21972 cp/parser.cc:44921
+#: cp/parser.cc:45261 cp/parser.cc:45364 cp/parser.cc:45450 cp/parser.cc:49180
+#: cp/parser.cc:49196 cp/parser.cc:49212 cp/parser.cc:49229 cp/parser.cc:49246
+#: cp/parser.cc:49263 cp/parser.cc:49290 cp/parser.cc:49304 cp/parser.cc:49329
+#: cp/parser.cc:49343
 #, gcc-internal-format
 msgid "%<#pragma %s%> may only be used in compound statements"
 msgstr ""
 
-#: c/c-parser.cc:13107 cp/parser.cc:49276
+#: c/c-parser.cc:13106 cp/parser.cc:49318
 #, gcc-internal-format
 msgid "%<#pragma acc routine%> must be at file scope"
 msgstr ""
 
-#: c/c-parser.cc:13197 cp/parser.cc:49400
+#: c/c-parser.cc:13196 cp/parser.cc:49442
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp scan%> may only be used in a loop construct with %<inscan%> "
 "%<reduction%> clause"
 msgstr ""
 
-#: c/c-parser.cc:13204 cp/parser.cc:49406
+#: c/c-parser.cc:13203 cp/parser.cc:49448
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp section%> may only be used in %<#pragma omp sections%> "
 "construct"
 msgstr ""
 
-#: c/c-parser.cc:13216 c/c-parser.cc:13228
+#: c/c-parser.cc:13215 c/c-parser.cc:13227
 #, gcc-internal-format
 msgid "%<#pragma %s%> may only be used at file scope"
 msgstr ""
 
-#: c/c-parser.cc:13258 c/c-parser.cc:13282 cp/parser.cc:49435
-#: cp/parser.cc:49468
+#: c/c-parser.cc:13257 c/c-parser.cc:13281 cp/parser.cc:49477
+#: cp/parser.cc:49510
 #, gcc-internal-format
 msgid "for, while or do statement expected"
 msgstr ""
 
-#: c/c-parser.cc:13295 cp/parser.cc:49128
+#: c/c-parser.cc:13294 cp/parser.cc:49170
 #, gcc-internal-format
 msgid "%<#pragma GCC pch_preprocess%> must be first"
 msgstr ""
 
-#: c/c-parser.cc:13648 c/c-parser.cc:17312 c/c-parser.cc:18857
-#: c/c-parser.cc:18876 c/c-parser.cc:19080 c/c-parser.cc:19138
-#: c/c-parser.cc:19145 c/c-parser.cc:19152 c/c-parser.cc:23695
-#: c/c-parser.cc:23703 c/c-parser.cc:23973 c/c-parser.cc:23983
-#: c/c-parser.cc:24077 c/c-parser.cc:24084 c/c-parser.cc:24091
-#: cp/parser.cc:37344 cp/parser.cc:40661 cp/parser.cc:41526 cp/parser.cc:41563
-#: cp/parser.cc:41752 cp/parser.cc:41815 cp/parser.cc:41822 cp/parser.cc:41829
-#: cp/parser.cc:46686 cp/parser.cc:46693 cp/parser.cc:46700 cp/parser.cc:48025
-#: cp/parser.cc:48033 cp/parser.cc:48185 cp/parser.cc:48195
+#: c/c-parser.cc:13647 c/c-parser.cc:17311 c/c-parser.cc:18856
+#: c/c-parser.cc:18875 c/c-parser.cc:19079 c/c-parser.cc:19137
+#: c/c-parser.cc:19144 c/c-parser.cc:19151 c/c-parser.cc:23694
+#: c/c-parser.cc:23702 c/c-parser.cc:23972 c/c-parser.cc:23982
+#: c/c-parser.cc:24076 c/c-parser.cc:24083 c/c-parser.cc:24090
+#: cp/parser.cc:37383 cp/parser.cc:40700 cp/parser.cc:41565 cp/parser.cc:41602
+#: cp/parser.cc:41791 cp/parser.cc:41854 cp/parser.cc:41861 cp/parser.cc:41868
+#: cp/parser.cc:46728 cp/parser.cc:46735 cp/parser.cc:46742 cp/parser.cc:48067
+#: cp/parser.cc:48075 cp/parser.cc:48227 cp/parser.cc:48237
 #, gcc-internal-format
 msgid "too many %qs clauses"
 msgstr ""
 
-#: c/c-parser.cc:13675
+#: c/c-parser.cc:13674
 #, gcc-internal-format
 msgid "expression must be integral"
 msgstr ""
 
-#: c/c-parser.cc:13990 c/c-parser.cc:14002
+#: c/c-parser.cc:13989 c/c-parser.cc:14001
 #, gcc-internal-format
 msgid "expected %<)%> or %<,%>"
 msgstr ""
 
-#: c/c-parser.cc:14153 c/c-parser.cc:24382
+#: c/c-parser.cc:14152 c/c-parser.cc:24381
 #, gcc-internal-format
 msgid "%qD is not a variable"
 msgstr ""
 
-#: c/c-parser.cc:14157 cp/semantics.cc:8307
+#: c/c-parser.cc:14156 cp/semantics.cc:8315
 #, gcc-internal-format
 msgid "%qD is not a pointer variable"
 msgstr ""
 
-#: c/c-parser.cc:14199 cp/parser.cc:38084
+#: c/c-parser.cc:14198 cp/parser.cc:38123
 #, gcc-internal-format
 msgid "collapse argument needs positive constant integer expression"
 msgstr ""
 
-#: c/c-parser.cc:14294 cp/parser.cc:38162
+#: c/c-parser.cc:14293 cp/parser.cc:38201
 #, gcc-internal-format
 msgid "expected %<none%> or %<present%>"
 msgstr ""
 
-#: c/c-parser.cc:14296 cp/parser.cc:38164
+#: c/c-parser.cc:14295 cp/parser.cc:38203
 #, gcc-internal-format
 msgid "expected %<none%>, %<shared%>, %<private%> or %<firstprivate%>"
 msgstr ""
 
-#: c/c-parser.cc:14417 cp/parser.cc:38276
+#: c/c-parser.cc:14416 cp/parser.cc:38315
 #, gcc-internal-format
 msgid "expected %<data%>, %<update%>, %<enter%> or %<exit%>"
 msgstr ""
 
-#: c/c-parser.cc:14437 c/c-parser.cc:21868 c/c-parser.cc:21966
-#: cp/parser.cc:38294 cp/parser.cc:45211 cp/parser.cc:45314
+#: c/c-parser.cc:14436 c/c-parser.cc:21867 c/c-parser.cc:21965
+#: cp/parser.cc:38333 cp/parser.cc:45253 cp/parser.cc:45356
 #, gcc-internal-format
 msgid "expected %<data%>"
 msgstr ""
 
-#: c/c-parser.cc:14490 cp/parser.cc:38349
+#: c/c-parser.cc:14489 cp/parser.cc:38388
 #, gcc-internal-format
 msgid "too many %<if%> clauses with %qs modifier"
 msgstr ""
 
-#: c/c-parser.cc:14497 cp/parser.cc:38356
+#: c/c-parser.cc:14496 cp/parser.cc:38395
 #, gcc-internal-format
 msgid "too many %<if%> clauses"
 msgstr ""
 
-#: c/c-parser.cc:14499 cp/parser.cc:38358
+#: c/c-parser.cc:14498 cp/parser.cc:38397
 #, gcc-internal-format
 msgid "too many %<if%> clauses without modifier"
 msgstr ""
 
-#: c/c-parser.cc:14505 cp/parser.cc:38364
+#: c/c-parser.cc:14504 cp/parser.cc:38403
 #, gcc-internal-format
 msgid ""
 "if any %<if%> clause has modifier, then all %<if%> clauses have to use "
 "modifier"
 msgstr ""
 
-#: c/c-parser.cc:14610 c/c-parser.cc:14670 c/c-parser.cc:14731
-#: c/c-parser.cc:14778 c/c-parser.cc:14857 c/c-parser.cc:15236
-#: c/c-parser.cc:15318 c/c-parser.cc:15885 c/c-parser.cc:16030
-#: c/c-parser.cc:16095 c/c-parser.cc:17249
+#: c/c-parser.cc:14609 c/c-parser.cc:14669 c/c-parser.cc:14730
+#: c/c-parser.cc:14777 c/c-parser.cc:14856 c/c-parser.cc:15235
+#: c/c-parser.cc:15317 c/c-parser.cc:15884 c/c-parser.cc:16029
+#: c/c-parser.cc:16094 c/c-parser.cc:17248
 #, gcc-internal-format
 msgid "expected integer expression"
 msgstr ""
 
-#: c/c-parser.cc:14621
+#: c/c-parser.cc:14620
 #, gcc-internal-format
 msgid "%<num_threads%> value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:14681
+#: c/c-parser.cc:14680
 #, gcc-internal-format
 msgid "%<num_tasks%> value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:14742 cp/semantics.cc:8534
+#: c/c-parser.cc:14741 cp/semantics.cc:8542
 #, gcc-internal-format
 msgid "%<grainsize%> value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:14790 cp/semantics.cc:8564
+#: c/c-parser.cc:14789 cp/semantics.cc:8572
 #, gcc-internal-format
 msgid "%<priority%> value must be non-negative"
 msgstr ""
 
-#: c/c-parser.cc:14824 cp/parser.cc:38590
+#: c/c-parser.cc:14823 cp/parser.cc:38629
 #, gcc-internal-format
 msgid "expected constant integer expression with valid sync-hint value"
 msgstr ""
 
-#: c/c-parser.cc:14896 cp/parser.cc:38660
+#: c/c-parser.cc:14895 cp/parser.cc:38699
 #, gcc-internal-format
 msgid ""
 "expected %<alloc%>, %<to%>, %<from%>, %<tofrom%>, %<firstprivate%>, %<none%> "
 "or %<default%>"
 msgstr ""
 
-#: c/c-parser.cc:14957 cp/parser.cc:38725
+#: c/c-parser.cc:14956 cp/parser.cc:38764
 #, gcc-internal-format
 msgid "expected %<scalar%>, %<aggregate%> or %<pointer%>"
 msgstr ""
 
-#: c/c-parser.cc:15023 cp/parser.cc:38794
+#: c/c-parser.cc:15022 cp/parser.cc:38833
 #, gcc-internal-format
 msgid "too many %<defaultmap%> clauses with %qs category"
 msgstr ""
 
-#: c/c-parser.cc:15026 cp/parser.cc:38797
+#: c/c-parser.cc:15025 cp/parser.cc:38836
 #, gcc-internal-format
 msgid "too many %<defaultmap%> clauses with unspecified category"
 msgstr ""
 
-#: c/c-parser.cc:15110 cp/semantics.cc:7356 cp/semantics.cc:7409
+#: c/c-parser.cc:15109 cp/semantics.cc:7364 cp/semantics.cc:7417
 #, gcc-internal-format
 msgid "%qs expression must be integral"
 msgstr ""
 
-#: c/c-parser.cc:15122 c/c-parser.cc:15245 cp/semantics.cc:7388
-#: cp/semantics.cc:7423
+#: c/c-parser.cc:15121 c/c-parser.cc:15244 cp/semantics.cc:7396
+#: cp/semantics.cc:7431
 #, gcc-internal-format
 msgid "%qs value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:15184 cp/parser.cc:37856
+#: c/c-parser.cc:15183 cp/parser.cc:37895
 #, gcc-internal-format
 msgid "too many %<static%> arguments"
 msgstr ""
 
-#: c/c-parser.cc:15218 cp/parser.cc:37889
+#: c/c-parser.cc:15217 cp/parser.cc:37928
 #, gcc-internal-format
 msgid "unexpected argument"
 msgstr ""
 
-#: c/c-parser.cc:15385 cp/semantics.cc:8750
+#: c/c-parser.cc:15384 cp/semantics.cc:8758
 #, gcc-internal-format
 msgid "%<tile%> argument needs positive integral constant"
 msgstr ""
 
-#: c/c-parser.cc:15460 cp/parser.cc:38847
+#: c/c-parser.cc:15459 cp/parser.cc:38886
 #, gcc-internal-format
 msgid "expected %<reproducible%> or %<unconstrained%>"
 msgstr ""
 
-#: c/c-parser.cc:15469 c/c-parser.cc:15475 cp/parser.cc:38856
-#: cp/parser.cc:38866
+#: c/c-parser.cc:15468 c/c-parser.cc:15474 cp/parser.cc:38895
+#: cp/parser.cc:38905
 #, gcc-internal-format
 msgid "expected %<concurrent%>"
 msgstr ""
 
-#: c/c-parser.cc:15511 cp/parser.cc:38906
+#: c/c-parser.cc:15510 cp/parser.cc:38945
 #, gcc-internal-format
 msgid "expected %<teams%>, %<parallel%> or %<thread%>"
 msgstr ""
 
-#: c/c-parser.cc:15564 cp/parser.cc:38974
+#: c/c-parser.cc:15563 cp/parser.cc:39013
 #, gcc-internal-format
 msgid "ordered argument needs positive constant integer expression"
 msgstr ""
 
-#: c/c-parser.cc:15689 c/c-parser.cc:23252 cp/parser.cc:47672
+#: c/c-parser.cc:15688 c/c-parser.cc:23251 cp/parser.cc:47714
 #, gcc-internal-format
 msgid ""
 "expected %<+%>, %<*%>, %<-%>, %<&%>, %<^%>, %<|%>, %<&&%>, %<||%> or "
 "identifier"
 msgstr ""
 
-#: c/c-parser.cc:15809 cp/parser.cc:39232
+#: c/c-parser.cc:15808 cp/parser.cc:39271
 #, gcc-internal-format
 msgid "both %<monotonic%> and %<nonmonotonic%> modifiers specified"
 msgstr ""
 
-#: c/c-parser.cc:15863 cp/parser.cc:39248
+#: c/c-parser.cc:15862 cp/parser.cc:39287
 #, gcc-internal-format
 msgid "schedule %<runtime%> does not take a %<chunk_size%> parameter"
 msgstr ""
 
-#: c/c-parser.cc:15867 cp/parser.cc:39251
+#: c/c-parser.cc:15866 cp/parser.cc:39290
 #, gcc-internal-format
 msgid "schedule %<auto%> does not take a %<chunk_size%> parameter"
 msgstr ""
 
-#: c/c-parser.cc:15879 cp/semantics.cc:7470
+#: c/c-parser.cc:15878 cp/semantics.cc:7478
 #, gcc-internal-format
 msgid "chunk size value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:15902 cp/parser.cc:39271
+#: c/c-parser.cc:15901 cp/parser.cc:39310
 #, gcc-internal-format
 msgid "invalid schedule kind"
 msgstr ""
 
-#: c/c-parser.cc:16040 c/c-parser.cc:16050
+#: c/c-parser.cc:16039 c/c-parser.cc:16049
 #, gcc-internal-format
 msgid "%<num_teams%> value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:16057 cp/semantics.cc:7437
+#: c/c-parser.cc:16056 cp/semantics.cc:7445
 #, gcc-internal-format
 msgid "%<num_teams%> lower bound %qE bigger than upper bound %qE"
 msgstr ""
 
-#: c/c-parser.cc:16105 cp/semantics.cc:7566
+#: c/c-parser.cc:16104 cp/semantics.cc:7574
 #, gcc-internal-format
 msgid "%<thread_limit%> value must be positive"
 msgstr ""
 
-#: c/c-parser.cc:16150 cp/semantics.cc:7694
+#: c/c-parser.cc:16149 cp/semantics.cc:7702
 #, gcc-internal-format
 msgid ""
 "%<aligned%> clause alignment expression must be positive constant integer "
 "expression"
 msgstr ""
 
-#: c/c-parser.cc:16260 c/c-parser.cc:18846 cp/parser.cc:41518
+#: c/c-parser.cc:16259 c/c-parser.cc:18845 cp/parser.cc:41557
 #, gcc-internal-format
 msgid "expected %<allocator%> or %<align%>"
 msgstr ""
 
-#: c/c-parser.cc:16267
+#: c/c-parser.cc:16266
 #, gcc-internal-format
 msgid "duplicate %qs modifier"
 msgstr ""
 
-#: c/c-parser.cc:16315 cp/semantics.cc:7829
+#: c/c-parser.cc:16314 cp/semantics.cc:7837
 #, gcc-internal-format
 msgid ""
 "%<allocate%> clause allocator expression has type %qT rather than "
 "%<omp_allocator_handle_t%>"
 msgstr ""
 
-#: c/c-parser.cc:16326 cp/semantics.cc:7784 cp/semantics.cc:7800
+#: c/c-parser.cc:16325 cp/semantics.cc:7792 cp/semantics.cc:7808
 #, gcc-internal-format
 msgid ""
 "%<allocate%> clause %<align%> modifier argument needs to be positive "
 "constant power of two integer expression"
 msgstr ""
 
-#: c/c-parser.cc:16445 cp/parser.cc:39718
+#: c/c-parser.cc:16444 cp/parser.cc:39757
 #, gcc-internal-format
 msgid "multiple linear modifiers"
 msgstr ""
 
-#: c/c-parser.cc:16457 cp/parser.cc:39731
+#: c/c-parser.cc:16456 cp/parser.cc:39770
 #, gcc-internal-format
 msgid "multiple %<step%> modifiers"
 msgstr ""
 
-#: c/c-parser.cc:16465 c/c-parser.cc:16493
+#: c/c-parser.cc:16464 c/c-parser.cc:16492
 #, gcc-internal-format
 msgid "%<linear%> clause step expression must be integral"
 msgstr ""
 
-#: c/c-parser.cc:16545
+#: c/c-parser.cc:16544
 #, gcc-internal-format
 msgid ""
 "%<safelen%> clause expression must be positive constant integer expression"
 msgstr ""
 
-#: c/c-parser.cc:16584
+#: c/c-parser.cc:16583
 #, gcc-internal-format
 msgid ""
 "%<simdlen%> clause expression must be positive constant integer expression"
 msgstr ""
 
-#: c/c-parser.cc:16944 cp/parser.cc:40278
+#: c/c-parser.cc:16943 cp/parser.cc:40317
 #, gcc-internal-format
 msgid "%<iterator%> modifier incompatible with %qs"
 msgstr ""
 
-#: c/c-parser.cc:16992 cp/parser.cc:40333 cp/parser.cc:40722 cp/parser.cc:40772
+#: c/c-parser.cc:16991 cp/parser.cc:40372 cp/parser.cc:40761 cp/parser.cc:40811
 #, gcc-internal-format
 msgid "invalid depend kind"
 msgstr ""
 
-#: c/c-parser.cc:17053 cp/parser.cc:40363
+#: c/c-parser.cc:17052 cp/parser.cc:40402
 #, gcc-internal-format
 msgid "invalid doacross kind"
 msgstr ""
 
-#: c/c-parser.cc:17121 cp/parser.cc:40470
+#: c/c-parser.cc:17120 cp/parser.cc:40509
 #, gcc-internal-format
 msgid "too many %<always%> modifiers"
 msgstr ""
 
-#: c/c-parser.cc:17131 cp/parser.cc:40483
+#: c/c-parser.cc:17130 cp/parser.cc:40522
 #, gcc-internal-format
 msgid "too many %<close%> modifiers"
 msgstr ""
 
-#: c/c-parser.cc:17139 cp/parser.cc:40494
+#: c/c-parser.cc:17138 cp/parser.cc:40533
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target%> with modifier other than %<always%> or %<close%> on "
 "%<map%> clause"
 msgstr ""
 
-#: c/c-parser.cc:17167 cp/parser.cc:40525
+#: c/c-parser.cc:17166 cp/parser.cc:40564
 #, gcc-internal-format
 msgid "invalid map kind"
 msgstr ""
 
-#: c/c-parser.cc:17219 cp/parser.cc:40584
+#: c/c-parser.cc:17218 cp/parser.cc:40623
 #, gcc-internal-format
 msgid ""
 "%<ancestor%> device modifier not preceded by %<requires%> directive with "
 "%<reverse_offload%> clause"
 msgstr ""
 
-#: c/c-parser.cc:17231 cp/parser.cc:40595
+#: c/c-parser.cc:17230 cp/parser.cc:40634
 #, gcc-internal-format
 msgid "expected %<ancestor%> or %<device_num%>"
 msgstr ""
 
-#: c/c-parser.cc:17254 cp/semantics.cc:7591
+#: c/c-parser.cc:17253 cp/semantics.cc:7599
 #, gcc-internal-format
 msgid "the %<device%> clause expression must evaluate to %<1%>"
 msgstr ""
 
-#: c/c-parser.cc:17287 cp/parser.cc:40666
+#: c/c-parser.cc:17286 cp/parser.cc:40705
 #, gcc-internal-format
 msgid "invalid dist_schedule kind"
 msgstr ""
 
-#: c/c-parser.cc:17366
+#: c/c-parser.cc:17365
 #, gcc-internal-format
 msgid "invalid proc_bind kind"
 msgstr ""
 
-#: c/c-parser.cc:17410
+#: c/c-parser.cc:17409
 #, gcc-internal-format
 msgid "expected %<host%>, %<nohost%> or %<any%>"
 msgstr ""
 
-#: c/c-parser.cc:17487 cp/semantics.cc:8010
+#: c/c-parser.cc:17486 cp/semantics.cc:8018
 #, gcc-internal-format
 msgid ""
 "%<detach%> clause event handle has type %qT rather than "
 "%<omp_event_handle_t%>"
 msgstr ""
 
-#: c/c-parser.cc:17689 cp/parser.cc:41011
+#: c/c-parser.cc:17688 cp/parser.cc:41050
 #, gcc-internal-format
 msgid "expected %<#pragma acc%> clause"
 msgstr ""
 
-#: c/c-parser.cc:17700 c/c-parser.cc:18058 cp/parser.cc:41022
-#: cp/parser.cc:41424
+#: c/c-parser.cc:17699 c/c-parser.cc:18057 cp/parser.cc:41061
+#: cp/parser.cc:41463
 #, gcc-internal-format
 msgid "%qs is not valid for %qs"
 msgstr ""
 
-#: c/c-parser.cc:17744 cp/parser.cc:41069
+#: c/c-parser.cc:17743 cp/parser.cc:41108
 #, gcc-internal-format
 msgid "clauses in %<simd%> trait should be separated by %<,%>"
 msgstr ""
 
-#: c/c-parser.cc:17893 cp/parser.cc:41257
+#: c/c-parser.cc:17892 cp/parser.cc:41296
 #, gcc-internal-format
 msgid "%qs must be the first clause of %qs"
 msgstr ""
 
-#: c/c-parser.cc:18047 cp/parser.cc:41413
+#: c/c-parser.cc:18046 cp/parser.cc:41452
 #, gcc-internal-format
 msgid "expected %<#pragma omp%> clause"
 msgstr ""
 
-#: c/c-parser.cc:18180 cp/parser.cc:45739
+#: c/c-parser.cc:18179 cp/parser.cc:45781
 #, gcc-internal-format
 msgid "no valid clauses specified in %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.cc:18190 cp/parser.cc:45749
+#: c/c-parser.cc:18189 cp/parser.cc:45791
 #, gcc-internal-format
 msgid "array section in %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.cc:18210 cp/parser.cc:45769
+#: c/c-parser.cc:18209 cp/parser.cc:45811
 #, gcc-internal-format
 msgid "%qD must be a global variable in %<#pragma acc declare link%>"
 msgstr ""
 
-#: c/c-parser.cc:18221 cp/parser.cc:45780
+#: c/c-parser.cc:18220 cp/parser.cc:45822
 #, gcc-internal-format
 msgid "invalid OpenACC clause at file scope"
 msgstr ""
 
-#: c/c-parser.cc:18228 cp/parser.cc:45787
+#: c/c-parser.cc:18227 cp/parser.cc:45829
 #, gcc-internal-format
 msgid "invalid use of %<extern%> variable %qD in %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.cc:18236 cp/parser.cc:45795
+#: c/c-parser.cc:18235 cp/parser.cc:45837
 #, gcc-internal-format
 msgid "invalid use of %<global%> variable %qD in %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.cc:18247 cp/parser.cc:45817
+#: c/c-parser.cc:18246 cp/parser.cc:45859
 #, gcc-internal-format
 msgid ""
 "%qD must be a variable declared in the same scope as %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.cc:18257 cp/parser.cc:45827
+#: c/c-parser.cc:18256 cp/parser.cc:45869
 #, gcc-internal-format
 msgid "variable %qD used more than once with %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.cc:18350 cp/parser.cc:45925
+#: c/c-parser.cc:18349 cp/parser.cc:45967
 #, gcc-internal-format
 msgid "expected %<data%> after %<#pragma acc %s%>"
 msgstr ""
 
-#: c/c-parser.cc:18366 cp/parser.cc:45942
+#: c/c-parser.cc:18365 cp/parser.cc:45984
 #, gcc-internal-format
 msgid "%<#pragma acc %s data%> has no data movement clause"
 msgstr ""
 
-#: c/c-parser.cc:18616 cp/parser.cc:3241
+#: c/c-parser.cc:18615 cp/parser.cc:3241
 #, gcc-internal-format
 msgid "%qE has not been declared"
 msgstr ""
 
-#: c/c-parser.cc:18620
+#: c/c-parser.cc:18619
 #, gcc-internal-format
 msgid "expected function name"
 msgstr ""
 
-#: c/c-parser.cc:18638 cp/parser.cc:48452
+#: c/c-parser.cc:18637 cp/parser.cc:48494
 #, gcc-internal-format
 msgid "%qD does not refer to a function"
 msgstr ""
 
-#: c/c-parser.cc:18661 c/c-parser.cc:18709 cp/parser.cc:1586
+#: c/c-parser.cc:18660 c/c-parser.cc:18708 cp/parser.cc:1586
 #, gcc-internal-format
 msgid ""
 "%<#pragma acc routine%> not immediately followed by function declaration or "
 "definition"
 msgstr ""
 
-#: c/c-parser.cc:18701 cp/parser.cc:48503 cp/parser.cc:48550
+#: c/c-parser.cc:18700 cp/parser.cc:48545 cp/parser.cc:48592
 #, gcc-internal-format
 msgid ""
 "%<#pragma acc routine%> not immediately followed by a single function "
 "declaration or definition"
 msgstr ""
 
-#: c/c-parser.cc:18732 cp/parser.cc:48578
+#: c/c-parser.cc:18731 cp/parser.cc:48620
 #, gcc-internal-format
 msgid "%<#pragma acc routine%> must be applied before use"
 msgstr ""
 
-#: c/c-parser.cc:18733 cp/parser.cc:48580
+#: c/c-parser.cc:18732 cp/parser.cc:48622
 #, gcc-internal-format
 msgid "%<#pragma acc routine%> must be applied before definition"
 msgstr ""
 
-#: c/c-parser.cc:18777 cp/parser.cc:46143
+#: c/c-parser.cc:18776 cp/parser.cc:46185
 #, gcc-internal-format
 msgid ""
 "%<#pragma acc update%> must contain at least one %<device%> or %<host%> or "
 "%<self%> clause"
 msgstr ""
 
-#: c/c-parser.cc:18868 cp/parser.cc:41538 cp/parser.cc:41553
+#: c/c-parser.cc:18867 cp/parser.cc:41577 cp/parser.cc:41592
 #, gcc-internal-format
 msgid ""
 "%<align%> clause argument needs to be positive constant power of two integer "
 "expression"
 msgstr ""
 
-#: c/c-parser.cc:18891
+#: c/c-parser.cc:18890
 #, gcc-internal-format
 msgid ""
 "%<allocator%> clause allocator expression has type %qT rather than "
@@ -48891,22 +48954,22 @@ 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.
-#: c/c-parser.cc:18908 cp/parser.cc:41586
+#: c/c-parser.cc:18907 cp/parser.cc:41625
 #, gcc-internal-format
 msgid "%<#pragma omp allocate%> not yet supported"
 msgstr ""
 
-#: c/c-parser.cc:19046 cp/parser.cc:41718
+#: c/c-parser.cc:19045 cp/parser.cc:41757
 #, gcc-internal-format
 msgid "expected %<read%>, %<write%>, %<update%>, or %<capture%> clause"
 msgstr ""
 
-#: c/c-parser.cc:19085 cp/parser.cc:41757
+#: c/c-parser.cc:19084 cp/parser.cc:41796
 #, gcc-internal-format
 msgid "expected %<seq_cst%>, %<acquire%> or %<relaxed%>"
 msgstr ""
 
-#: c/c-parser.cc:19109 cp/parser.cc:41786
+#: c/c-parser.cc:19108 cp/parser.cc:41825
 #, gcc-internal-format
 msgid ""
 "expected %<read%>, %<write%>, %<update%>, %<capture%>, %<compare%>, "
@@ -48914,427 +48977,427 @@ msgid ""
 "%<hint%> clause"
 msgstr ""
 
-#: c/c-parser.cc:19124 cp/parser.cc:41801
+#: c/c-parser.cc:19123 cp/parser.cc:41840
 #, gcc-internal-format
 msgid "too many atomic clauses"
 msgstr ""
 
-#: c/c-parser.cc:19131 cp/parser.cc:41808
+#: c/c-parser.cc:19130 cp/parser.cc:41847
 #, gcc-internal-format
 msgid "too many memory order clauses"
 msgstr ""
 
-#: c/c-parser.cc:19169 c/c-parser.cc:19176 cp/parser.cc:41846
-#: cp/parser.cc:41853
+#: c/c-parser.cc:19168 c/c-parser.cc:19175 cp/parser.cc:41885
+#: cp/parser.cc:41892
 #, gcc-internal-format
 msgid "%qs clause is incompatible with %<read%> or %<write%> clauses"
 msgstr ""
 
-#: c/c-parser.cc:19182 c/c-parser.cc:19187 cp/parser.cc:41859
-#: cp/parser.cc:41864
+#: c/c-parser.cc:19181 c/c-parser.cc:19186 cp/parser.cc:41898
+#: cp/parser.cc:41903
 #, gcc-internal-format
 msgid "%qs clause requires %qs clause"
 msgstr ""
 
-#: c/c-parser.cc:19231 cp/parser.cc:41908
+#: c/c-parser.cc:19230 cp/parser.cc:41947
 #, gcc-internal-format
 msgid "%<#pragma omp atomic read%> incompatible with %<release%> clause"
 msgstr ""
 
-#: c/c-parser.cc:19241 cp/parser.cc:41918
+#: c/c-parser.cc:19240 cp/parser.cc:41957
 #, gcc-internal-format
 msgid "%<#pragma omp atomic write%> incompatible with %<acquire%> clause"
 msgstr ""
 
-#: c/c-parser.cc:19364 cp/parser.cc:42018
+#: c/c-parser.cc:19363 cp/parser.cc:42057
 #, gcc-internal-format
 msgid "expected %<==%> comparison in %<if%> condition"
 msgstr ""
 
-#: c/c-parser.cc:19371 cp/parser.cc:42025
+#: c/c-parser.cc:19370 cp/parser.cc:42064
 #, gcc-internal-format
 msgid "expected %<==%>, %<<%> or %<>%> comparison in %<if%> condition"
 msgstr ""
 
-#: c/c-parser.cc:19444 cp/parser.cc:42090 cp/parser.cc:42373 cp/parser.cc:42467
-#: cp/parser.cc:42485
+#: c/c-parser.cc:19443 cp/parser.cc:42129 cp/parser.cc:42412 cp/parser.cc:42506
+#: cp/parser.cc:42524
 #, gcc-internal-format
 msgid "invalid form of %<#pragma omp atomic compare%>"
 msgstr ""
 
-#: c/c-parser.cc:19455 cp/parser.cc:42101
+#: c/c-parser.cc:19454 cp/parser.cc:42140
 #, gcc-internal-format
 msgid "unexpected %<else%>"
 msgstr ""
 
-#: c/c-parser.cc:19515 cp/parser.cc:42540
+#: c/c-parser.cc:19514 cp/parser.cc:42579
 #, gcc-internal-format
 msgid "invalid form of %<pragma omp atomic compare%>"
 msgstr ""
 
-#: c/c-parser.cc:19786 cp/parser.cc:42394 cp/parser.cc:42420
+#: c/c-parser.cc:19785 cp/parser.cc:42433 cp/parser.cc:42459
 #, gcc-internal-format
 msgid "invalid form of %<#pragma omp atomic%>"
 msgstr ""
 
-#: c/c-parser.cc:19790 cp/parser.cc:42460 cp/parser.cc:42494
+#: c/c-parser.cc:19789 cp/parser.cc:42499 cp/parser.cc:42533
 #, gcc-internal-format
 msgid "invalid operator for %<#pragma omp atomic%>"
 msgstr ""
 
-#: c/c-parser.cc:19841 cp/parser.cc:42529
+#: c/c-parser.cc:19840 cp/parser.cc:42568
 #, gcc-internal-format
 msgid "%<weak%> clause requires atomic equality comparison"
 msgstr ""
 
-#: c/c-parser.cc:19847 cp/semantics.cc:10902 cp/semantics.cc:10912
+#: c/c-parser.cc:19846 cp/semantics.cc:10910 cp/semantics.cc:10920
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp atomic capture%> uses two different expressions for memory"
 msgstr ""
 
-#: c/c-parser.cc:19947 cp/semantics.cc:10989
+#: c/c-parser.cc:19946 cp/semantics.cc:10997
 #, gcc-internal-format
 msgid "%<depobj%> expression is not lvalue expression"
 msgstr ""
 
-#: c/c-parser.cc:20008 cp/parser.cc:42695
+#: c/c-parser.cc:20007 cp/parser.cc:42734
 #, gcc-internal-format
 msgid "expected %<in%>, %<out%>, %<inout%>, %<mutexinoutset%> or %<inoutset%>"
 msgstr ""
 
-#: c/c-parser.cc:20020 cp/parser.cc:42711
+#: c/c-parser.cc:20019 cp/parser.cc:42750
 #, gcc-internal-format
 msgid "expected %<depend%>, %<destroy%> or %<update%> clause"
 msgstr ""
 
-#: c/c-parser.cc:20061 cp/parser.cc:42749
+#: c/c-parser.cc:20060 cp/parser.cc:42788
 #, gcc-internal-format
 msgid "expected %<seq_cst%>, %<acq_rel%>, %<release%> or %<acquire%>"
 msgstr ""
 
-#: c/c-parser.cc:20069 cp/parser.cc:42757
+#: c/c-parser.cc:20068 cp/parser.cc:42796
 #, gcc-internal-format
 msgid "%<flush%> list specified together with memory order clause"
 msgstr ""
 
-#: c/c-parser.cc:20074
+#: c/c-parser.cc:20073
 #, gcc-internal-format
 msgid "expected %<(%> or end of line"
 msgstr ""
 
-#: c/c-parser.cc:20156 cp/parser.cc:43516
+#: c/c-parser.cc:20155 cp/parser.cc:43558
 #, gcc-internal-format
 msgid "expected %<inclusive%> or %<exclusive%> clause"
 msgstr ""
 
-#: c/c-parser.cc:20161 cp/parser.cc:43522
+#: c/c-parser.cc:20160 cp/parser.cc:43564
 #, gcc-internal-format
 msgid "expected %<#pragma omp scan%>"
 msgstr ""
 
-#: c/c-parser.cc:20217 cp/parser.cc:43573
+#: c/c-parser.cc:20216 cp/parser.cc:43615
 #, gcc-internal-format
 msgid "%<ordered%> clause parameter is less than %<collapse%>"
 msgstr ""
 
-#: c/c-parser.cc:20233 cp/parser.cc:43599
+#: c/c-parser.cc:20232 cp/parser.cc:43641
 #, gcc-internal-format
 msgid "for statement expected"
 msgstr ""
 
-#: c/c-parser.cc:20311 cp/semantics.cc:10480 cp/semantics.cc:10571
+#: c/c-parser.cc:20310 cp/semantics.cc:10488 cp/semantics.cc:10579
 #, gcc-internal-format
 msgid "expected iteration declaration or initialization"
 msgstr ""
 
-#: c/c-parser.cc:20397
+#: c/c-parser.cc:20396
 #, gcc-internal-format
 msgid "not enough perfectly nested loops"
 msgstr ""
 
-#: c/c-parser.cc:20445 cp/parser.cc:43913
+#: c/c-parser.cc:20444 cp/parser.cc:43955
 #, gcc-internal-format
 msgid "collapsed loops not perfectly nested"
 msgstr ""
 
-#: c/c-parser.cc:20528 cp/parser.cc:43709 cp/parser.cc:43751 cp/pt.cc:18441
+#: c/c-parser.cc:20527 cp/parser.cc:43751 cp/parser.cc:43793 cp/pt.cc:18544
 #, gcc-internal-format
 msgid "iteration variable %qD should not be firstprivate"
 msgstr ""
 
-#: c/c-parser.cc:20943 cp/parser.cc:44317
+#: c/c-parser.cc:20942 cp/parser.cc:44359
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp ordered%> with %qs clause may only be used in compound "
 "statements"
 msgstr ""
 
-#: c/c-parser.cc:21157 cp/parser.cc:44523
+#: c/c-parser.cc:21156 cp/parser.cc:44565
 #, gcc-internal-format
 msgid "expected %<for%> after %qs"
 msgstr ""
 
-#: c/c-parser.cc:21502 cp/parser.cc:44870
+#: c/c-parser.cc:21501 cp/parser.cc:44912
 #, gcc-internal-format
 msgid "expected %<point%>"
 msgstr ""
 
-#: c/c-parser.cc:21761 cp/parser.cc:45149
+#: c/c-parser.cc:21760 cp/parser.cc:45191
 #, 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:21777 cp/parser.cc:45165
+#: c/c-parser.cc:21776 cp/parser.cc:45207
 #, 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:21825 cp/parser.cc:45421
+#: c/c-parser.cc:21824 cp/parser.cc:45463
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target update%> must contain at least one %<from%> or %<to%> "
 "clauses"
 msgstr ""
 
-#: c/c-parser.cc:21915 cp/parser.cc:45260
+#: c/c-parser.cc:21914 cp/parser.cc:45302
 #, 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:21927 cp/parser.cc:45272
+#: c/c-parser.cc:21926 cp/parser.cc:45314
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target enter data%> must contain at least one %<map%> clause"
 msgstr ""
 
-#: c/c-parser.cc:22014 cp/parser.cc:45364
+#: c/c-parser.cc:22013 cp/parser.cc:45406
 #, 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:22027 cp/parser.cc:45377
+#: c/c-parser.cc:22026 cp/parser.cc:45419
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target exit data%> must contain at least one %<map%> clause"
 msgstr ""
 
-#: c/c-parser.cc:22263 cp/semantics.cc:10011
+#: c/c-parser.cc:22262 cp/semantics.cc:10019
 #, 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:22320
+#: c/c-parser.cc:22319
 #, 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:22371 c/c-parser.cc:22399
+#: c/c-parser.cc:22370 c/c-parser.cc:22398
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare %s%> must be followed by function declaration or "
 "definition"
 msgstr ""
 
-#: c/c-parser.cc:22438 cp/parser.cc:46293
+#: c/c-parser.cc:22437 cp/parser.cc:46335
 #, gcc-internal-format
 msgid "expected trait selector name"
 msgstr ""
 
-#: c/c-parser.cc:22491 cp/parser.cc:46345
+#: c/c-parser.cc:22490 cp/parser.cc:46387
 #, gcc-internal-format
 msgid "selector %qs not allowed for context selector set %qs"
 msgstr ""
 
-#: c/c-parser.cc:22516 cp/parser.cc:46369
+#: c/c-parser.cc:22515 cp/parser.cc:46411
 #, gcc-internal-format
 msgid "selector %qs does not accept any properties"
 msgstr ""
 
-#: c/c-parser.cc:22543 cp/parser.cc:46408 cp/pt.cc:11762
+#: c/c-parser.cc:22542 cp/parser.cc:46450 cp/pt.cc:11856
 #, gcc-internal-format
 msgid "score argument must be constant integer expression"
 msgstr ""
 
-#: c/c-parser.cc:22546 cp/parser.cc:46411 cp/pt.cc:11779
+#: c/c-parser.cc:22545 cp/parser.cc:46453 cp/pt.cc:11873
 #, gcc-internal-format
 msgid "score argument must be non-negative"
 msgstr ""
 
-#: c/c-parser.cc:22570 cp/parser.cc:46439 cp/pt.cc:11765
+#: c/c-parser.cc:22569 cp/parser.cc:46481 cp/pt.cc:11859
 #, gcc-internal-format
 msgid "property must be constant integer expression or string literal"
 msgstr ""
 
-#: c/c-parser.cc:22615 cp/parser.cc:46485
+#: c/c-parser.cc:22614 cp/parser.cc:46527
 #, gcc-internal-format
 msgid "expected identifier or string literal"
 msgstr ""
 
-#: c/c-parser.cc:22637 cp/parser.cc:46507 cp/pt.cc:11769
+#: c/c-parser.cc:22636 cp/parser.cc:46549 cp/pt.cc:11863
 #, gcc-internal-format
 msgid "property must be constant integer expression"
 msgstr ""
 
-#: c/c-parser.cc:22648 cp/parser.cc:46518
+#: c/c-parser.cc:22647 cp/parser.cc:46560
 #, gcc-internal-format
 msgid ""
 "properties for %<simd%> selector may not be specified in %<metadirective%>"
 msgstr ""
 
-#: c/c-parser.cc:22735 cp/parser.cc:46604
+#: c/c-parser.cc:22734 cp/parser.cc:46646
 #, gcc-internal-format
 msgid "expected %<construct%>, %<device%>, %<implementation%> or %<user%>"
 msgstr ""
 
-#: c/c-parser.cc:22814 cp/parser.cc:46921
+#: c/c-parser.cc:22813 cp/parser.cc:46963
 #, gcc-internal-format
 msgid "expected %<match%>"
 msgstr ""
 
-#: c/c-parser.cc:22834
+#: c/c-parser.cc:22833
 #, gcc-internal-format
 msgid "variant %qD is not a function"
 msgstr ""
 
-#: c/c-parser.cc:22840 cp/decl.cc:8100
+#: c/c-parser.cc:22839 cp/decl.cc:8102
 #, gcc-internal-format
 msgid "variant %qD and base %qD have incompatible types"
 msgstr ""
 
-#: c/c-parser.cc:22852 cp/decl.cc:8109
+#: c/c-parser.cc:22851 cp/decl.cc:8111
 #, gcc-internal-format
 msgid "variant %qD is a built-in"
 msgstr ""
 
-#: c/c-parser.cc:22897
+#: c/c-parser.cc:22896
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare %s%> not immediately followed by a function "
 "declaration or definition"
 msgstr ""
 
-#: c/c-parser.cc:22905 cp/parser.cc:46966
+#: c/c-parser.cc:22904 cp/parser.cc:47008
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare %s%> not immediately followed by a single function "
 "declaration or definition"
 msgstr ""
 
-#: c/c-parser.cc:23019 cp/parser.cc:47170
+#: c/c-parser.cc:23018 cp/parser.cc:47212
 #, gcc-internal-format
 msgid "%qD specified both in declare target %<link%> and %qs clauses"
 msgstr ""
 
-#: c/c-parser.cc:23023 cp/parser.cc:47174
+#: c/c-parser.cc:23022 cp/parser.cc:47216
 #, gcc-internal-format
 msgid ""
 "%qD specified both in declare target %<link%> and %<to%> or %<enter%> clauses"
 msgstr ""
 
-#: c/c-parser.cc:23072 cp/parser.cc:47285
+#: c/c-parser.cc:23071 cp/parser.cc:47327
 #, gcc-internal-format
 msgid "directive with only %<device_type%> clause"
 msgstr ""
 
-#: c/c-parser.cc:23112 c/c-parser.cc:23152 cp/parser.cc:47333
-#: cp/parser.cc:47380
+#: c/c-parser.cc:23111 c/c-parser.cc:23151 cp/parser.cc:47375
+#: cp/parser.cc:47422
 #, gcc-internal-format
 msgid "expected %<target%>"
 msgstr ""
 
-#: c/c-parser.cc:23124 cp/parser.cc:47346
+#: c/c-parser.cc:23123 cp/parser.cc:47388
 #, gcc-internal-format
 msgid "expected %<declare target%> or %<assumes%>"
 msgstr ""
 
-#: c/c-parser.cc:23158 cp/parser.cc:47387
+#: c/c-parser.cc:23157 cp/parser.cc:47429
 #, 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:23176 cp/parser.cc:47442
+#: c/c-parser.cc:23175 cp/parser.cc:47484
 #, gcc-internal-format
 msgid "expected %<declare%> or %<assumes%>"
 msgstr ""
 
-#: c/c-parser.cc:23202
+#: c/c-parser.cc:23201
 #, gcc-internal-format
 msgid "%<#pragma omp declare reduction%> not at file or block scope"
 msgstr ""
 
-#: c/c-parser.cc:23279
+#: c/c-parser.cc:23278
 #, gcc-internal-format
 msgid "predeclared arithmetic type in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.cc:23283
+#: c/c-parser.cc:23282
 #, gcc-internal-format
 msgid "function or array type in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.cc:23286
+#: c/c-parser.cc:23285
 #, gcc-internal-format
 msgid "%<_Atomic%> qualified type in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.cc:23289
+#: c/c-parser.cc:23288
 #, gcc-internal-format
 msgid ""
 "const, volatile or restrict qualified type in %<#pragma omp declare "
 "reduction%>"
 msgstr ""
 
-#: c/c-parser.cc:23297
+#: c/c-parser.cc:23296
 #, gcc-internal-format
 msgid "redeclaration of %qs %<#pragma omp declare reduction%> for type %qT"
 msgstr ""
 
-#: c/c-parser.cc:23306
+#: c/c-parser.cc:23305
 #, gcc-internal-format
 msgid "previous %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.cc:23427
+#: c/c-parser.cc:23426
 #, gcc-internal-format
 msgid "expected %<omp_priv%> or function-name"
 msgstr ""
 
-#: c/c-parser.cc:23438
+#: c/c-parser.cc:23437
 #, gcc-internal-format
 msgid "expected function-name %<(%>"
 msgstr ""
 
-#: c/c-parser.cc:23457
+#: c/c-parser.cc:23456
 #, gcc-internal-format
 msgid "one of the initializer call arguments should be %<&omp_priv%>"
 msgstr ""
 
-#: c/c-parser.cc:23588 cp/parser.cc:47914
+#: c/c-parser.cc:23587 cp/parser.cc:47956
 #, gcc-internal-format
 msgid "expected %<simd%>, %<reduction%>, %<target%> or %<variant%>"
 msgstr ""
 
-#: c/c-parser.cc:23651 cp/parser.cc:47975
+#: c/c-parser.cc:23650 cp/parser.cc:48017
 #, gcc-internal-format
 msgid "expected %<seq_cst%>, %<relaxed%> or %<acq_rel%>"
 msgstr ""
 
-#: c/c-parser.cc:23680 cp/parser.cc:48010
+#: c/c-parser.cc:23679 cp/parser.cc:48052
 #, gcc-internal-format
 msgid ""
 "expected %<unified_address%>, %<unified_shared_memory%>, "
@@ -49342,143 +49405,143 @@ msgid ""
 "clause"
 msgstr ""
 
-#: c/c-parser.cc:23698 cp/parser.cc:48028
+#: c/c-parser.cc:23697 cp/parser.cc:48070
 #, gcc-internal-format
 msgid ""
 "%qs clause used lexically after first target construct or offloading API"
 msgstr ""
 
-#: c/c-parser.cc:23710 cp/parser.cc:48040
+#: c/c-parser.cc:23709 cp/parser.cc:48082
 #, gcc-internal-format
 msgid ""
 "more than one %<atomic_default_mem_order%> clause in a single compilation "
 "unit"
 msgstr ""
 
-#: c/c-parser.cc:23719 cp/parser.cc:48049
+#: c/c-parser.cc:23718 cp/parser.cc:48091
 #, gcc-internal-format
 msgid ""
 "%<atomic_default_mem_order%> clause used lexically after first %<atomic%> "
 "construct without memory order clause"
 msgstr ""
 
-#: c/c-parser.cc:23733 cp/parser.cc:48063
+#: c/c-parser.cc:23732 cp/parser.cc:48105
 #, gcc-internal-format
 msgid "%<pragma omp requires%> requires at least one clause"
 msgstr ""
 
-#: c/c-parser.cc:23752
+#: c/c-parser.cc:23751
 #, gcc-internal-format
 msgid "zero sized type %qT in %<reduction%> clause"
 msgstr ""
 
-#: c/c-parser.cc:23758
+#: c/c-parser.cc:23757
 #, gcc-internal-format
 msgid "variable sized type %qT in %<reduction%> clause"
 msgstr ""
 
-#: c/c-parser.cc:23915 cp/parser.cc:48120
+#: c/c-parser.cc:23914 cp/parser.cc:48162
 #, gcc-internal-format
 msgid "expected %<at%>, %<severity%> or %<message%> clause"
 msgstr ""
 
-#: c/c-parser.cc:23948 cp/parser.cc:48155
+#: c/c-parser.cc:23947 cp/parser.cc:48197
 #, gcc-internal-format
 msgid "expected %qs or %qs"
 msgstr ""
 
-#: c/c-parser.cc:24005 cp/parser.cc:48217
+#: c/c-parser.cc:24004 cp/parser.cc:48259
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp error%> with %<at(execution)%> clause may only be used in "
 "compound statements"
 msgstr ""
 
-#: c/c-parser.cc:24028 cp/parser.cc:48244
+#: c/c-parser.cc:24027 cp/parser.cc:48286
 #, gcc-internal-format
 msgid "%<pragma omp error%> encountered: %s"
 msgstr ""
 
-#: c/c-parser.cc:24031 cp/parser.cc:48247
+#: c/c-parser.cc:24030 cp/parser.cc:48289
 #, gcc-internal-format
 msgid "%<pragma omp error%> encountered"
 msgstr ""
 
-#: c/c-parser.cc:24058 cp/parser.cc:46667
+#: c/c-parser.cc:24057 cp/parser.cc:46709
 #, gcc-internal-format
 msgid "expected at least one assumption clause"
 msgstr ""
 
-#: c/c-parser.cc:24144 cp/parser.cc:46753
+#: c/c-parser.cc:24143 cp/parser.cc:46795
 #, gcc-internal-format
 msgid "expected directive name"
 msgstr ""
 
-#: c/c-parser.cc:24157 cp/parser.cc:46766
+#: c/c-parser.cc:24156 cp/parser.cc:46808
 #, gcc-internal-format
 msgid "unknown OpenMP directive name in %qs clause argument"
 msgstr ""
 
-#: c/c-parser.cc:24164 cp/parser.cc:46773
+#: c/c-parser.cc:24163 cp/parser.cc:46815
 #, gcc-internal-format
 msgid ""
 "%<%s%s%s%s%s%> directive mentioned in both %<absent%> and %<contains%> "
 "clauses"
 msgstr ""
 
-#: c/c-parser.cc:24175 cp/parser.cc:46784
+#: c/c-parser.cc:24174 cp/parser.cc:46826
 #, gcc-internal-format
 msgid "%<%s%s%s%s%s%> directive mentioned multiple times in %qs clauses"
 msgstr ""
 
-#: c/c-parser.cc:24198 cp/parser.cc:46811
+#: c/c-parser.cc:24197 cp/parser.cc:46853
 #, gcc-internal-format
 msgid "unknown assumption clause %qs"
 msgstr ""
 
-#: c/c-parser.cc:24211 cp/parser.cc:46821
+#: c/c-parser.cc:24210 cp/parser.cc:46863
 #, gcc-internal-format
 msgid "expected assumption clause"
 msgstr ""
 
-#: c/c-parser.cc:24384 cp/semantics.cc:9385
+#: c/c-parser.cc:24383 cp/semantics.cc:9393
 #, gcc-internal-format
 msgid "%qE declared %<threadprivate%> after first use"
 msgstr ""
 
-#: c/c-parser.cc:24386 cp/semantics.cc:9387
+#: c/c-parser.cc:24385 cp/semantics.cc:9395
 #, gcc-internal-format
 msgid "automatic variable %qE cannot be %<threadprivate%>"
 msgstr ""
 
-#: c/c-parser.cc:24390 cp/semantics.cc:9389
+#: c/c-parser.cc:24389 cp/semantics.cc:9397
 #, gcc-internal-format
 msgid "%<threadprivate%> %qE has incomplete type"
 msgstr ""
 
-#: c/c-parser.cc:24570 cp/parser.cc:48986
+#: c/c-parser.cc:24569 cp/parser.cc:49028
 #, gcc-internal-format
 msgid "%<__transaction_cancel%> without transactional memory support enabled"
 msgstr ""
 
-#: c/c-parser.cc:24576 cp/parser.cc:48992
+#: c/c-parser.cc:24575 cp/parser.cc:49034
 #, gcc-internal-format
 msgid "%<__transaction_cancel%> within a %<__transaction_relaxed%>"
 msgstr ""
 
-#: c/c-parser.cc:24585
+#: c/c-parser.cc:24584
 #, gcc-internal-format
 msgid ""
 "outer %<__transaction_cancel%> not within outer %<__transaction_atomic%> or "
 "a %<transaction_may_cancel_outer%> function"
 msgstr ""
 
-#: c/c-parser.cc:24593 cp/parser.cc:49010
+#: c/c-parser.cc:24592 cp/parser.cc:49052
 #, gcc-internal-format
 msgid "%<__transaction_cancel%> not within %<__transaction_atomic%>"
 msgstr ""
 
-#: c/c-parser.cc:24677
+#: c/c-parser.cc:24676
 #, gcc-internal-format
 msgid "no closing brace"
 msgstr ""
@@ -49488,7 +49551,7 @@ msgstr ""
 msgid "%qD has an incomplete type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:251 c/c-typeck.cc:11152 c/c-typeck.cc:11194 cp/call.cc:4853
+#: c/c-typeck.cc:251 c/c-typeck.cc:11142 c/c-typeck.cc:11184 cp/call.cc:4856
 #, gcc-internal-format
 msgid "invalid use of void expression"
 msgstr ""
@@ -49498,7 +49561,7 @@ msgstr ""
 msgid "invalid use of flexible array member"
 msgstr ""
 
-#: c/c-typeck.cc:265 cp/typeck2.cc:350 rust/backend/rust-tree.cc:3886
+#: c/c-typeck.cc:265 cp/typeck2.cc:350 rust/backend/rust-tree.cc:3871
 #, gcc-internal-format
 msgid "invalid use of array with unspecified bounds"
 msgstr ""
@@ -49519,153 +49582,153 @@ msgstr ""
 msgid "%qT and %qT are in disjoint named address spaces"
 msgstr ""
 
-#: c/c-typeck.cc:384
+#: c/c-typeck.cc:374
 #, gcc-internal-format
 msgid ""
 "%qs attribute cannot be applied to a function that does not take variable "
 "arguments"
 msgstr ""
 
-#: c/c-typeck.cc:615 c/c-typeck.cc:640
+#: c/c-typeck.cc:605 c/c-typeck.cc:630
 #, gcc-internal-format
 msgid "function types not truly compatible in ISO C"
 msgstr ""
 
-#: c/c-typeck.cc:790
+#: c/c-typeck.cc:780
 #, gcc-internal-format
 msgid "cannot mix operands of decimal floating and vector types"
 msgstr ""
 
-#: c/c-typeck.cc:795
+#: c/c-typeck.cc:785
 #, gcc-internal-format
 msgid "cannot mix operands of decimal floating and complex types"
 msgstr ""
 
-#: c/c-typeck.cc:800
+#: c/c-typeck.cc:790
 #, gcc-internal-format
 msgid "cannot mix operands of decimal floating and other floating types"
 msgstr ""
 
-#: c/c-typeck.cc:1345
+#: c/c-typeck.cc:1335
 #, gcc-internal-format
 msgid ""
 "invalid use of pointers to arrays with different qualifiers in ISO C before "
 "C2X"
 msgstr ""
 
-#: c/c-typeck.cc:1349
+#: c/c-typeck.cc:1339
 #, gcc-internal-format
 msgid "types are not quite compatible"
 msgstr ""
 
-#: c/c-typeck.cc:1353
+#: c/c-typeck.cc:1343
 #, gcc-internal-format
 msgid "pointer target types incompatible in C++"
 msgstr ""
 
-#: c/c-typeck.cc:1686
+#: c/c-typeck.cc:1676
 #, gcc-internal-format
 msgid "function return types not compatible due to %<volatile%>"
 msgstr ""
 
-#: c/c-typeck.cc:1947
+#: c/c-typeck.cc:1937
 #, gcc-internal-format
 msgid "converting an array compound literal to a pointer is ill-formed in C++"
 msgstr ""
 
-#: c/c-typeck.cc:2600 c/c-typeck.cc:9673
+#: c/c-typeck.cc:2590 c/c-typeck.cc:9663
 #, gcc-internal-format
 msgid "%qT has no member named %qE; did you mean %qE?"
 msgstr ""
 
-#: c/c-typeck.cc:2604 c/c-typeck.cc:9677
+#: c/c-typeck.cc:2594 c/c-typeck.cc:9667
 #, gcc-internal-format
 msgid "%qT has no member named %qE"
 msgstr ""
 
-#: c/c-typeck.cc:2613
+#: c/c-typeck.cc:2603
 #, gcc-internal-format
 msgid "accessing a member %qE of an atomic structure %qE"
 msgstr ""
 
-#: c/c-typeck.cc:2616
+#: c/c-typeck.cc:2606
 #, gcc-internal-format
 msgid "accessing a member %qE of an atomic union %qE"
 msgstr ""
 
-#: c/c-typeck.cc:2680
+#: c/c-typeck.cc:2670
 #, 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:2689
+#: c/c-typeck.cc:2679
 #, gcc-internal-format
 msgid "%qE is a pointer; did you mean to use %<->%>?"
 msgstr ""
 
-#: c/c-typeck.cc:2696
+#: c/c-typeck.cc:2686
 #, gcc-internal-format
 msgid "request for member %qE in something not a structure or union"
 msgstr ""
 
-#: c/c-typeck.cc:2744
+#: c/c-typeck.cc:2734
 #, gcc-internal-format
 msgid "dereferencing %<void *%> pointer"
 msgstr ""
 
-#: c/c-typeck.cc:2799
+#: c/c-typeck.cc:2789
 #, gcc-internal-format
 msgid "subscripted value is neither array nor pointer nor vector"
 msgstr ""
 
-#: c/c-typeck.cc:2809 cp/typeck.cc:3991 cp/typeck.cc:4084
+#: c/c-typeck.cc:2799 cp/typeck.cc:3991 cp/typeck.cc:4084
 #, gcc-internal-format
 msgid "array subscript is not an integer"
 msgstr ""
 
-#: c/c-typeck.cc:2815
+#: c/c-typeck.cc:2805
 #, gcc-internal-format
 msgid "subscripted value is pointer to function"
 msgstr ""
 
-#: c/c-typeck.cc:2869
+#: c/c-typeck.cc:2859
 #, gcc-internal-format
 msgid "ISO C forbids subscripting %<register%> array"
 msgstr ""
 
-#: c/c-typeck.cc:2872
+#: c/c-typeck.cc:2862
 #, gcc-internal-format
 msgid "ISO C90 forbids subscripting non-lvalue array"
 msgstr ""
 
-#: c/c-typeck.cc:2940
+#: c/c-typeck.cc:2930
 #, gcc-internal-format
 msgid "underspecified %qD referenced in its initializer"
 msgstr ""
 
-#: c/c-typeck.cc:2991
+#: c/c-typeck.cc:2981
 #, gcc-internal-format
 msgid "enum constant defined here"
 msgstr ""
 
-#: c/c-typeck.cc:3099 cp/typeck.cc:2141
+#: c/c-typeck.cc:3089 cp/typeck.cc:2141
 #, gcc-internal-format
 msgid "%<sizeof%> on array function parameter %qE will return size of %qT"
 msgstr ""
 
-#: c/c-typeck.cc:3260
+#: c/c-typeck.cc:3250
 #, gcc-internal-format
 msgid "called object %qE is not a function or function pointer"
 msgstr ""
 
-#: c/c-typeck.cc:3265
+#: c/c-typeck.cc:3255
 #, gcc-internal-format
 msgid "called object %qD is not a function or function pointer"
 msgstr ""
 
-#: c/c-typeck.cc:3271
+#: c/c-typeck.cc:3261
 #, gcc-internal-format
 msgid "called object is not a function or function pointer"
 msgstr ""
@@ -49673,1758 +49736,1758 @@ 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:3300
+#: c/c-typeck.cc:3290
 #, gcc-internal-format
 msgid "function called through a non-compatible type"
 msgstr ""
 
-#: c/c-typeck.cc:3305 c/c-typeck.cc:3360
+#: c/c-typeck.cc:3295 c/c-typeck.cc:3350
 #, gcc-internal-format
 msgid "function with qualified void return type called"
 msgstr ""
 
-#: c/c-typeck.cc:3415
+#: c/c-typeck.cc:3405
 #, gcc-internal-format, gfc-internal-format
 msgid "type of formal parameter %d is incomplete"
 msgstr ""
 
-#: c/c-typeck.cc:3429
+#: c/c-typeck.cc:3419
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as integer rather than floating due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:3435
+#: c/c-typeck.cc:3425
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as integer rather than complex due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:3441
+#: c/c-typeck.cc:3431
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as complex rather than floating due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:3447
+#: c/c-typeck.cc:3437
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as floating rather than integer due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:3453
+#: c/c-typeck.cc:3443
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as complex rather than integer due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:3459
+#: c/c-typeck.cc:3449
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as floating rather than complex due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:3473
+#: c/c-typeck.cc:3463
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as %<float%> rather than %<double%> due to "
 "prototype"
 msgstr ""
 
-#: c/c-typeck.cc:3499
+#: c/c-typeck.cc:3489
 #, gcc-internal-format
 msgid "passing argument %d of %qE as %qT rather than %qT due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:3524
+#: c/c-typeck.cc:3514
 #, gcc-internal-format
 msgid "passing argument %d of %qE with different width due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:3548
+#: c/c-typeck.cc:3538
 #, gcc-internal-format
 msgid "passing argument %d of %qE as unsigned due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:3553
+#: c/c-typeck.cc:3543
 #, gcc-internal-format
 msgid "passing argument %d of %qE as signed due to prototype"
 msgstr ""
 
-#: c/c-typeck.cc:3707
+#: c/c-typeck.cc:3697
 #, gcc-internal-format
 msgid "too many arguments to method %qE"
 msgstr ""
 
-#: c/c-typeck.cc:3717
+#: c/c-typeck.cc:3707
 #, gcc-internal-format
 msgid "too many arguments to built-in function %qE expecting %d"
 msgstr ""
 
-#: c/c-typeck.cc:3792
+#: c/c-typeck.cc:3782
 #, gcc-internal-format
 msgid "implicit conversion from %qT to %qT when passing argument to function"
 msgstr ""
 
-#: c/c-typeck.cc:3860
+#: c/c-typeck.cc:3850
 #, gcc-internal-format
 msgid "too few arguments to built-in function %qE expecting %u"
 msgstr ""
 
-#: c/c-typeck.cc:4038 c/c-typeck.cc:4066 cp/typeck.cc:5682 cp/typeck.cc:5958
+#: c/c-typeck.cc:4028 c/c-typeck.cc:4056 cp/typeck.cc:5682 cp/typeck.cc:5965
 #, gcc-internal-format
 msgid "comparison with string literal results in unspecified behavior"
 msgstr ""
 
-#: c/c-typeck.cc:4046 c/c-typeck.cc:4057 cp/typeck.cc:5714 cp/typeck.cc:5738
+#: c/c-typeck.cc:4036 c/c-typeck.cc:4047 cp/typeck.cc:5714 cp/typeck.cc:5738
 #, gcc-internal-format
 msgid "comparison between pointer and zero character constant"
 msgstr ""
 
-#: c/c-typeck.cc:4049 c/c-typeck.cc:4060 cp/typeck.cc:5717 cp/typeck.cc:5741
+#: c/c-typeck.cc:4039 c/c-typeck.cc:4050 cp/typeck.cc:5717 cp/typeck.cc:5741
 #, gcc-internal-format
 msgid "did you mean to dereference the pointer?"
 msgstr ""
 
-#: c/c-typeck.cc:4087
+#: c/c-typeck.cc:4077
 #, gcc-internal-format
 msgid "comparison between %qT and %qT"
 msgstr ""
 
-#: c/c-typeck.cc:4146
+#: c/c-typeck.cc:4136
 #, gcc-internal-format
 msgid "pointer of type %<void *%> used in subtraction"
 msgstr ""
 
-#: c/c-typeck.cc:4149
+#: c/c-typeck.cc:4139
 #, gcc-internal-format
 msgid "pointer to a function used in subtraction"
 msgstr ""
 
-#: c/c-typeck.cc:4183
+#: c/c-typeck.cc:4173
 #, gcc-internal-format
 msgid "arithmetic on pointer to an incomplete type"
 msgstr ""
 
-#: c/c-typeck.cc:4192 cp/typeck.cc:6762
+#: c/c-typeck.cc:4182 cp/typeck.cc:6769
 #, gcc-internal-format
 msgid "arithmetic on pointer to an empty aggregate"
 msgstr ""
 
-#: c/c-typeck.cc:4635
+#: c/c-typeck.cc:4625
 #, gcc-internal-format
 msgid "%<~%> on a boolean expression"
 msgstr ""
 
-#: c/c-typeck.cc:4639
+#: c/c-typeck.cc:4629
 #, gcc-internal-format
 msgid "did you mean to use logical not?"
 msgstr ""
 
-#: c/c-typeck.cc:4649
+#: c/c-typeck.cc:4639
 #, gcc-internal-format
 msgid "ISO C does not support %<~%> for complex conjugation"
 msgstr ""
 
-#: c/c-typeck.cc:4673
+#: c/c-typeck.cc:4663
 #, gcc-internal-format
 msgid "wrong type argument to absu"
 msgstr ""
 
-#: c/c-typeck.cc:4698
+#: c/c-typeck.cc:4688
 #, gcc-internal-format
 msgid "wrong type argument to unary exclamation mark"
 msgstr ""
 
-#: c/c-typeck.cc:4756
+#: c/c-typeck.cc:4746
 #, gcc-internal-format
 msgid "increment of enumeration value is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:4759
+#: c/c-typeck.cc:4749
 #, gcc-internal-format
 msgid "decrement of enumeration value is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:4766
+#: c/c-typeck.cc:4756
 #, gcc-internal-format
 msgid "increment of a boolean expression"
 msgstr ""
 
-#: c/c-typeck.cc:4769
+#: c/c-typeck.cc:4759
 #, gcc-internal-format
 msgid "decrement of a boolean expression"
 msgstr ""
 
-#: c/c-typeck.cc:4785
+#: c/c-typeck.cc:4775
 #, gcc-internal-format
 msgid "ISO C does not support %<++%> and %<--%> on complex types"
 msgstr ""
 
-#: c/c-typeck.cc:4811 c/c-typeck.cc:4845
+#: c/c-typeck.cc:4801 c/c-typeck.cc:4835
 #, gcc-internal-format
 msgid "wrong type argument to increment"
 msgstr ""
 
-#: c/c-typeck.cc:4813 c/c-typeck.cc:4848
+#: c/c-typeck.cc:4803 c/c-typeck.cc:4838
 #, gcc-internal-format
 msgid "wrong type argument to decrement"
 msgstr ""
 
-#: c/c-typeck.cc:4833
+#: c/c-typeck.cc:4823
 #, gcc-internal-format
 msgid "increment of pointer to an incomplete type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:4837
+#: c/c-typeck.cc:4827
 #, gcc-internal-format
 msgid "decrement of pointer to an incomplete type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:4945
+#: c/c-typeck.cc:4935
 #, gcc-internal-format
 msgid "taking address of expression of type %<void%>"
 msgstr ""
 
-#: c/c-typeck.cc:5004 c/c-typeck.cc:5197
+#: c/c-typeck.cc:4994 c/c-typeck.cc:5187
 #, gcc-internal-format
 msgid "cannot take address of bit-field %qD"
 msgstr ""
 
-#: c/c-typeck.cc:5018
+#: c/c-typeck.cc:5008
 #, gcc-internal-format
 msgid "cannot take address of scalar with reverse storage order"
 msgstr ""
 
-#: c/c-typeck.cc:5026
+#: c/c-typeck.cc:5016
 #, gcc-internal-format
 msgid "address of array with reverse scalar storage order requested"
 msgstr ""
 
-#: c/c-typeck.cc:5212
+#: c/c-typeck.cc:5202
 #, gcc-internal-format
 msgid "address of register compound literal requested"
 msgstr ""
 
-#: c/c-typeck.cc:5233
+#: c/c-typeck.cc:5223
 #, gcc-internal-format
 msgid "global register variable %qD used in nested function"
 msgstr ""
 
-#: c/c-typeck.cc:5236
+#: c/c-typeck.cc:5226
 #, gcc-internal-format
 msgid "register variable %qD used in nested function"
 msgstr ""
 
-#: c/c-typeck.cc:5241
+#: c/c-typeck.cc:5231
 #, gcc-internal-format
 msgid "address of global register variable %qD requested"
 msgstr ""
 
-#: c/c-typeck.cc:5243 d/d-codegen.cc:721
+#: c/c-typeck.cc:5233 d/d-codegen.cc:721
 #, gcc-internal-format
 msgid "address of register variable %qD requested"
 msgstr ""
 
-#: c/c-typeck.cc:5382
+#: c/c-typeck.cc:5372
 #, gcc-internal-format
 msgid "non-lvalue array in conditional expression"
 msgstr ""
 
-#: c/c-typeck.cc:5464
+#: c/c-typeck.cc:5454
 #, gcc-internal-format
 msgid ""
 "implicit conversion from %qT to %qT to match other result of conditional"
 msgstr ""
 
-#: c/c-typeck.cc:5523 c/c-typeck.cc:5529
+#: c/c-typeck.cc:5513 c/c-typeck.cc:5519
 #, gcc-internal-format
 msgid ""
 "operand of %<?:%> changes signedness from %qT to %qT due to unsignedness of "
 "other operand"
 msgstr ""
 
-#: c/c-typeck.cc:5546
+#: c/c-typeck.cc:5536
 #, gcc-internal-format
 msgid "ISO C forbids conditional expr with only one void side"
 msgstr ""
 
-#: c/c-typeck.cc:5563
+#: c/c-typeck.cc:5553
 #, gcc-internal-format
 msgid "pointers to disjoint address spaces used in conditional expression"
 msgstr ""
 
-#: c/c-typeck.cc:5587
+#: c/c-typeck.cc:5577
 #, gcc-internal-format
 msgid "pointer to array loses qualifier in conditional expression"
 msgstr ""
 
-#: c/c-typeck.cc:5591
+#: c/c-typeck.cc:5581
 #, gcc-internal-format
 msgid ""
 "pointer to array loses qualifier in conditional expression in ISO C before "
 "C2X"
 msgstr ""
 
-#: c/c-typeck.cc:5596
+#: c/c-typeck.cc:5586
 #, gcc-internal-format
 msgid "ISO C forbids conditional expr between %<void *%> and function pointer"
 msgstr ""
 
-#: c/c-typeck.cc:5611
+#: c/c-typeck.cc:5601
 #, gcc-internal-format
 msgid ""
 "pointer type mismatch between %qT and %qT of %qD and %qD in conditional "
 "expression"
 msgstr ""
 
-#: c/c-typeck.cc:5616
+#: c/c-typeck.cc:5606
 #, gcc-internal-format
 msgid "pointer type mismatch in conditional expression"
 msgstr ""
 
-#: c/c-typeck.cc:5625 c/c-typeck.cc:5636
+#: c/c-typeck.cc:5615 c/c-typeck.cc:5626
 #, gcc-internal-format
 msgid "pointer/integer type mismatch in conditional expression"
 msgstr ""
 
-#: c/c-typeck.cc:5657
+#: c/c-typeck.cc:5647
 #, gcc-internal-format
 msgid "type mismatch in conditional expression"
 msgstr ""
 
-#: c/c-typeck.cc:5772
+#: c/c-typeck.cc:5762
 #, gcc-internal-format
 msgid "ignoring return value of %qD, declared with attribute %<nodiscard%>: %E"
 msgstr ""
 
-#: c/c-typeck.cc:5776
+#: c/c-typeck.cc:5766
 #, gcc-internal-format
 msgid "ignoring return value of %qD, declared with attribute %<nodiscard%>"
 msgstr ""
 
-#: c/c-typeck.cc:5794
+#: c/c-typeck.cc:5784
 #, gcc-internal-format
 msgid ""
 "ignoring return value of type %qT, declared with attribute %<nodiscard%>: %E"
 msgstr ""
 
-#: c/c-typeck.cc:5799
+#: c/c-typeck.cc:5789
 #, gcc-internal-format
 msgid ""
 "ignoring return value of type %qT, declared with attribute %<nodiscard%>"
 msgstr ""
 
-#: c/c-typeck.cc:5808 cp/cvt.cc:1100 rust/backend/rust-tree.cc:641
+#: c/c-typeck.cc:5798 cp/cvt.cc:1100 rust/backend/rust-tree.cc:642
 #, gcc-internal-format
 msgid "in call to %qD, declared here"
 msgstr ""
 
-#: c/c-typeck.cc:5857
+#: c/c-typeck.cc:5847
 #, gcc-internal-format
 msgid "left-hand operand of comma expression has no effect"
 msgstr ""
 
-#: c/c-typeck.cc:5875 c/c-typeck.cc:11727
+#: c/c-typeck.cc:5865 c/c-typeck.cc:11717
 #, gcc-internal-format
 msgid "right-hand operand of comma expression has no effect"
 msgstr ""
 
-#: c/c-typeck.cc:5946
+#: c/c-typeck.cc:5936
 msgid "cast adds %q#v qualifier to function type"
 msgstr ""
 
-#: c/c-typeck.cc:5952
+#: c/c-typeck.cc:5942
 msgid "cast discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.cc:5987
+#: c/c-typeck.cc:5977
 #, 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:6081
+#: c/c-typeck.cc:6071
 #, gcc-internal-format
 msgid "cast specifies array type"
 msgstr ""
 
-#: c/c-typeck.cc:6087
+#: c/c-typeck.cc:6077
 #, gcc-internal-format
 msgid "cast specifies function type"
 msgstr ""
 
-#: c/c-typeck.cc:6102
+#: c/c-typeck.cc:6092
 #, gcc-internal-format
 msgid "ISO C forbids casting nonscalar to the same type"
 msgstr ""
 
-#: c/c-typeck.cc:6122
+#: c/c-typeck.cc:6112
 #, gcc-internal-format
 msgid "ISO C forbids casts to union type"
 msgstr ""
 
-#: c/c-typeck.cc:6132
+#: c/c-typeck.cc:6122
 #, gcc-internal-format
 msgid "cast to union type from type not present in union"
 msgstr ""
 
-#: c/c-typeck.cc:6167
+#: c/c-typeck.cc:6157
 #, gcc-internal-format
 msgid ""
 "cast to %qs address space pointer from disjoint generic address space pointer"
 msgstr ""
 
-#: c/c-typeck.cc:6172
+#: c/c-typeck.cc:6162
 #, gcc-internal-format
 msgid ""
 "cast to generic address space pointer from disjoint %qs address space pointer"
 msgstr ""
 
-#: c/c-typeck.cc:6177
+#: c/c-typeck.cc:6167
 #, gcc-internal-format
 msgid ""
 "cast to %qs address space pointer from disjoint %qs address space pointer"
 msgstr ""
 
-#: c/c-typeck.cc:6197
+#: c/c-typeck.cc:6187
 #, gcc-internal-format
 msgid "cast increases required alignment of target type"
 msgstr ""
 
-#: c/c-typeck.cc:6208
+#: c/c-typeck.cc:6198
 #, gcc-internal-format
 msgid "cast from pointer to integer of different size"
 msgstr ""
 
-#: c/c-typeck.cc:6213
+#: c/c-typeck.cc:6203
 #, gcc-internal-format
 msgid "cast from function call of type %qT to non-matching type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:6222 cp/typeck.cc:9172
+#: c/c-typeck.cc:6212 cp/typeck.cc:9179
 #, gcc-internal-format
 msgid "cast to pointer from integer of different size"
 msgstr ""
 
-#: c/c-typeck.cc:6236
+#: c/c-typeck.cc:6226
 #, gcc-internal-format
 msgid "ISO C forbids conversion of function pointer to object pointer type"
 msgstr ""
 
-#: c/c-typeck.cc:6245
+#: c/c-typeck.cc:6235
 #, gcc-internal-format
 msgid "ISO C forbids conversion of object pointer to function pointer type"
 msgstr ""
 
-#: c/c-typeck.cc:6255
+#: c/c-typeck.cc:6245
 #, gcc-internal-format
 msgid "cast between incompatible function types from %qT to %qT"
 msgstr ""
 
-#: c/c-typeck.cc:6351
+#: c/c-typeck.cc:6341
 #, gcc-internal-format
 msgid "defining a type in a cast is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:6392
+#: c/c-typeck.cc:6382
 #, gcc-internal-format
 msgid "assignment to expression with array type"
 msgstr ""
 
-#: c/c-typeck.cc:6518
+#: c/c-typeck.cc:6508
 #, gcc-internal-format
 msgid "enum conversion in assignment is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:6720 c/c-typeck.cc:6742 c/c-typeck.cc:6768
+#: c/c-typeck.cc:6710 c/c-typeck.cc:6732 c/c-typeck.cc:6758
 #, gcc-internal-format
 msgid "(near initialization for %qs)"
 msgstr ""
 
-#: c/c-typeck.cc:6783
+#: c/c-typeck.cc:6773
 #, gcc-internal-format
 msgid "array initialized from parenthesized string constant"
 msgstr ""
 
-#: c/c-typeck.cc:6826 c/c-typeck.cc:7067
+#: c/c-typeck.cc:6816 c/c-typeck.cc:7057
 #, gcc-internal-format
 msgid "expected %qT but argument is of type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:6860
+#: c/c-typeck.cc:6850
 #, 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:6863
+#: c/c-typeck.cc:6853
 #, 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:6868
+#: c/c-typeck.cc:6858
 #, gcc-internal-format
 msgid "built-in %qD declared here"
 msgstr ""
 
-#: c/c-typeck.cc:7062
+#: c/c-typeck.cc:7052
 #, gcc-internal-format
 msgid "enum conversion when passing argument %d of %qE is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:7071
+#: c/c-typeck.cc:7061
 #, gcc-internal-format
 msgid "enum conversion from %qT to %qT in assignment is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:7076
+#: c/c-typeck.cc:7066
 #, gcc-internal-format
 msgid "enum conversion from %qT to %qT in initialization is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:7081
+#: c/c-typeck.cc:7071
 #, gcc-internal-format
 msgid "enum conversion from %qT to %qT in return is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:7099
+#: c/c-typeck.cc:7089
 #, gcc-internal-format
 msgid "implicit conversion from %qT to %qT"
 msgstr ""
 
-#: c/c-typeck.cc:7278 c/c-typeck.cc:7663
+#: c/c-typeck.cc:7268 c/c-typeck.cc:7653
 msgid ""
 "passing argument %d of %qE makes %q#v qualified function pointer from "
 "unqualified"
 msgstr ""
 
-#: c/c-typeck.cc:7281 c/c-typeck.cc:7666
+#: c/c-typeck.cc:7271 c/c-typeck.cc:7656
 msgid "assignment makes %q#v qualified function pointer from unqualified"
 msgstr ""
 
-#: c/c-typeck.cc:7284 c/c-typeck.cc:7668
+#: c/c-typeck.cc:7274 c/c-typeck.cc:7658
 msgid "initialization makes %q#v qualified function pointer from unqualified"
 msgstr ""
 
-#: c/c-typeck.cc:7287 c/c-typeck.cc:7670
+#: c/c-typeck.cc:7277 c/c-typeck.cc:7660
 msgid "return makes %q#v qualified function pointer from unqualified"
 msgstr ""
 
-#: c/c-typeck.cc:7295 c/c-typeck.cc:7554 c/c-typeck.cc:7597
+#: c/c-typeck.cc:7285 c/c-typeck.cc:7544 c/c-typeck.cc:7587
 msgid ""
 "passing argument %d of %qE discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.cc:7297 c/c-typeck.cc:7556 c/c-typeck.cc:7599
+#: c/c-typeck.cc:7287 c/c-typeck.cc:7546 c/c-typeck.cc:7589
 msgid "assignment discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.cc:7299 c/c-typeck.cc:7558 c/c-typeck.cc:7601
+#: c/c-typeck.cc:7289 c/c-typeck.cc:7548 c/c-typeck.cc:7591
 msgid "initialization discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.cc:7301 c/c-typeck.cc:7560 c/c-typeck.cc:7603
+#: c/c-typeck.cc:7291 c/c-typeck.cc:7550 c/c-typeck.cc:7593
 msgid "return discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.cc:7310
+#: c/c-typeck.cc:7300
 #, gcc-internal-format
 msgid "ISO C prohibits argument conversion to union type"
 msgstr ""
 
-#: c/c-typeck.cc:7378
+#: c/c-typeck.cc:7368
 #, gcc-internal-format
 msgid "request for implicit conversion from %qT to %qT not permitted in C++"
 msgstr ""
 
-#: c/c-typeck.cc:7393
+#: c/c-typeck.cc:7383
 #, gcc-internal-format
 msgid "passing argument %d of %qE from pointer to non-enclosed address space"
 msgstr ""
 
-#: c/c-typeck.cc:7404
+#: c/c-typeck.cc:7394
 #, gcc-internal-format
 msgid "assignment from pointer to non-enclosed address space"
 msgstr ""
 
-#: c/c-typeck.cc:7415
+#: c/c-typeck.cc:7405
 #, gcc-internal-format
 msgid "initialization from pointer to non-enclosed address space"
 msgstr ""
 
-#: c/c-typeck.cc:7425
+#: c/c-typeck.cc:7415
 #, gcc-internal-format
 msgid "return from pointer to non-enclosed address space"
 msgstr ""
 
-#: c/c-typeck.cc:7441
+#: c/c-typeck.cc:7431
 #, gcc-internal-format
 msgid "expected %qT but pointer is of type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:7456
+#: c/c-typeck.cc:7446
 #, gcc-internal-format
 msgid "argument %d of %qE might be a candidate for a format attribute"
 msgstr ""
 
-#: c/c-typeck.cc:7462
+#: c/c-typeck.cc:7452
 #, gcc-internal-format
 msgid "assignment left-hand side might be a candidate for a format attribute"
 msgstr ""
 
-#: c/c-typeck.cc:7468
+#: c/c-typeck.cc:7458
 #, gcc-internal-format
 msgid ""
 "initialization left-hand side might be a candidate for a format attribute"
 msgstr ""
 
-#: c/c-typeck.cc:7473 cp/typeck.cc:10336
+#: c/c-typeck.cc:7463 cp/typeck.cc:10342
 #, gcc-internal-format
 msgid "return type might be a candidate for a format attribute"
 msgstr ""
 
-#: c/c-typeck.cc:7496
+#: c/c-typeck.cc:7486
 #, gcc-internal-format
 msgid "passing argument %d of %qE from incompatible scalar storage order"
 msgstr ""
 
-#: c/c-typeck.cc:7506
+#: c/c-typeck.cc:7496
 #, gcc-internal-format
 msgid ""
 "assignment to %qT from pointer type %qT with incompatible scalar storage "
 "order"
 msgstr ""
 
-#: c/c-typeck.cc:7516
+#: c/c-typeck.cc:7506
 #, gcc-internal-format
 msgid ""
 "initialization of %qT from pointer type %qT with incompatible scalar storage "
 "order"
 msgstr ""
 
-#: c/c-typeck.cc:7521
+#: c/c-typeck.cc:7511
 #, gcc-internal-format
 msgid ""
 "returning %qT from pointer type with incompatible scalar storage order %qT"
 msgstr ""
 
-#: c/c-typeck.cc:7571
+#: c/c-typeck.cc:7561
 #, gcc-internal-format
 msgid ""
 "ISO C forbids passing argument %d of %qE between function pointer and %<void "
 "*%>"
 msgstr ""
 
-#: c/c-typeck.cc:7574
+#: c/c-typeck.cc:7564
 #, gcc-internal-format
 msgid "ISO C forbids assignment between function pointer and %<void *%>"
 msgstr ""
 
-#: c/c-typeck.cc:7576
+#: c/c-typeck.cc:7566
 #, gcc-internal-format
 msgid "ISO C forbids initialization between function pointer and %<void *%>"
 msgstr ""
 
-#: c/c-typeck.cc:7578
+#: c/c-typeck.cc:7568
 #, gcc-internal-format
 msgid "ISO C forbids return between function pointer and %<void *%>"
 msgstr ""
 
-#: c/c-typeck.cc:7608
+#: c/c-typeck.cc:7598
 #, gcc-internal-format
 msgid "array with qualifier on the element is not qualified before C2X"
 msgstr ""
 
-#: c/c-typeck.cc:7625
+#: c/c-typeck.cc:7615
 #, gcc-internal-format
 msgid "pointer targets in passing argument %d of %qE differ in signedness"
 msgstr ""
 
-#: c/c-typeck.cc:7633
+#: c/c-typeck.cc:7623
 #, gcc-internal-format
 msgid "pointer targets in assignment from %qT to %qT differ in signedness"
 msgstr ""
 
-#: c/c-typeck.cc:7639
+#: c/c-typeck.cc:7629
 #, gcc-internal-format
 msgid "pointer targets in initialization of %qT from %qT differ in signedness"
 msgstr ""
 
-#: c/c-typeck.cc:7644
+#: c/c-typeck.cc:7634
 #, gcc-internal-format
 msgid ""
 "pointer targets in returning %qT from a function with return type %qT differ "
 "in signedness"
 msgstr ""
 
-#: c/c-typeck.cc:7686
+#: c/c-typeck.cc:7676
 #, gcc-internal-format
 msgid "passing argument %d of %qE from incompatible pointer type"
 msgstr ""
 
-#: c/c-typeck.cc:7694
+#: c/c-typeck.cc:7684
 #, gcc-internal-format
 msgid "assignment to %qT from pointer to %qD with incompatible type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:7699
+#: c/c-typeck.cc:7689
 #, gcc-internal-format
 msgid "assignment to %qT from incompatible pointer type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:7706
+#: c/c-typeck.cc:7696
 #, gcc-internal-format
 msgid "initialization of %qT from pointer to %qD with incompatible type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:7711
+#: c/c-typeck.cc:7701
 #, gcc-internal-format
 msgid "initialization of %qT from incompatible pointer type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:7718
+#: c/c-typeck.cc:7708
 #, gcc-internal-format
 msgid ""
 "returning pointer to %qD of type %qT from a function with incompatible type "
 "%qT"
 msgstr ""
 
-#: c/c-typeck.cc:7723
+#: c/c-typeck.cc:7713
 #, gcc-internal-format
 msgid "returning %qT from a function with incompatible return type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:7763
+#: c/c-typeck.cc:7753
 #, gcc-internal-format
 msgid "passing argument %d of %qE makes pointer from integer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:7770
+#: c/c-typeck.cc:7760
 #, gcc-internal-format
 msgid "assignment to %qT from %qT makes pointer from integer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:7776
+#: c/c-typeck.cc:7766
 #, gcc-internal-format
 msgid ""
 "initialization of %qT from %qT makes pointer from integer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:7780
+#: c/c-typeck.cc:7770
 #, 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:7800
+#: c/c-typeck.cc:7790
 #, gcc-internal-format
 msgid "passing argument %d of %qE makes integer from pointer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:7807
+#: c/c-typeck.cc:7797
 #, gcc-internal-format
 msgid "assignment to %qT from %qT makes integer from pointer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:7813
+#: c/c-typeck.cc:7803
 #, gcc-internal-format
 msgid ""
 "initialization of %qT from %qT makes integer from pointer without a cast"
 msgstr ""
 
-#: c/c-typeck.cc:7817
+#: c/c-typeck.cc:7807
 #, 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:7849
+#: c/c-typeck.cc:7839
 #, gcc-internal-format
 msgid "incompatible type for argument %d of %qE"
 msgstr ""
 
-#: c/c-typeck.cc:7860
+#: c/c-typeck.cc:7850
 #, gcc-internal-format
 msgid "incompatible types when assigning to type %qT from type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:7871
+#: c/c-typeck.cc:7861
 #, gcc-internal-format
 msgid "incompatible types when initializing type %qT using type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:7881
+#: c/c-typeck.cc:7871
 #, gcc-internal-format
 msgid "incompatible types when returning type %qT but %qT was expected"
 msgstr ""
 
-#: c/c-typeck.cc:7961
+#: c/c-typeck.cc:7951
 #, gcc-internal-format
 msgid "traditional C rejects automatic aggregate initialization"
 msgstr ""
 
-#: c/c-typeck.cc:8203
+#: c/c-typeck.cc:8193
 #, gcc-internal-format
 msgid "%<constexpr%> pointer initializer is not null"
 msgstr ""
 
-#: c/c-typeck.cc:8211
+#: c/c-typeck.cc:8201
 #, gcc-internal-format
 msgid "%<constexpr%> integer initializer is not an integer constant expression"
 msgstr ""
 
-#: c/c-typeck.cc:8214 c/c-typeck.cc:8276 c/c-typeck.cc:8413
+#: c/c-typeck.cc:8204 c/c-typeck.cc:8266 c/c-typeck.cc:8403
 #, gcc-internal-format
 msgid "%<constexpr%> initializer not representable in type of object"
 msgstr ""
 
-#: c/c-typeck.cc:8224
+#: c/c-typeck.cc:8214
 #, gcc-internal-format
 msgid "%<constexpr%> initializer is not an arithmetic constant expression"
 msgstr ""
 
-#: c/c-typeck.cc:8241
+#: c/c-typeck.cc:8231
 #, gcc-internal-format
 msgid "%<constexpr%> initializer for a real type is of complex type"
 msgstr ""
 
-#: c/c-typeck.cc:8250
+#: c/c-typeck.cc:8240
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> initializer for a binary floating-point type is of decimal type"
 msgstr ""
 
-#: c/c-typeck.cc:8378 c/c-typeck.cc:9304 cp/typeck2.cc:1199
+#: c/c-typeck.cc:8368 c/c-typeck.cc:9294 cp/typeck2.cc:1199
 #, gcc-internal-format
 msgid "initialization of a flexible array member"
 msgstr ""
 
-#: c/c-typeck.cc:8394 cp/typeck2.cc:1216
+#: c/c-typeck.cc:8384 cp/typeck2.cc:1216
 #, gcc-internal-format
 msgid ""
 "cannot initialize array of %qT from a string literal with type array of %qT"
 msgstr ""
 
-#: c/c-typeck.cc:8453
+#: c/c-typeck.cc:8443
 #, gcc-internal-format
 msgid "array of inappropriate type initialized from string constant"
 msgstr ""
 
-#: c/c-typeck.cc:8521 cp/typeck.cc:2533
+#: c/c-typeck.cc:8511 cp/typeck.cc:2533
 #, gcc-internal-format
 msgid "invalid use of non-lvalue array"
 msgstr ""
 
-#: c/c-typeck.cc:8540 c/c-typeck.cc:8564 c/c-typeck.cc:8567 c/c-typeck.cc:8575
-#: c/c-typeck.cc:8622 c/c-typeck.cc:10163 c/c-typeck.cc:10242
+#: c/c-typeck.cc:8530 c/c-typeck.cc:8554 c/c-typeck.cc:8557 c/c-typeck.cc:8565
+#: c/c-typeck.cc:8612 c/c-typeck.cc:10153 c/c-typeck.cc:10232
 #, gcc-internal-format
 msgid "initializer element is not constant"
 msgstr ""
 
-#: c/c-typeck.cc:8549
+#: c/c-typeck.cc:8539
 #, gcc-internal-format
 msgid "array initialized from non-constant array expression"
 msgstr ""
 
-#: c/c-typeck.cc:8580 c/c-typeck.cc:8635 c/c-typeck.cc:10252
+#: c/c-typeck.cc:8570 c/c-typeck.cc:8625 c/c-typeck.cc:10242
 #, gcc-internal-format
 msgid "initializer element is not a constant expression"
 msgstr ""
 
-#: c/c-typeck.cc:8629 c/c-typeck.cc:10247
+#: c/c-typeck.cc:8619 c/c-typeck.cc:10237
 #, gcc-internal-format
 msgid "initializer element is not computable at load time"
 msgstr ""
 
-#: c/c-typeck.cc:8653
+#: c/c-typeck.cc:8643
 #, gcc-internal-format
 msgid "invalid initializer"
 msgstr ""
 
-#: c/c-typeck.cc:8931 cp/decl.cc:7478
+#: c/c-typeck.cc:8921 cp/decl.cc:7480
 #, gcc-internal-format
 msgid "opaque vector types cannot be initialized"
 msgstr ""
 
-#: c/c-typeck.cc:9151
+#: c/c-typeck.cc:9141
 #, gcc-internal-format
 msgid "extra brace group at end of initializer"
 msgstr ""
 
-#: c/c-typeck.cc:9234
+#: c/c-typeck.cc:9224
 #, gcc-internal-format
 msgid "braces around scalar initializer"
 msgstr ""
 
-#: c/c-typeck.cc:9301 c/c-typeck.cc:10780 cp/typeck2.cc:1226 cp/typeck2.cc:1584
+#: c/c-typeck.cc:9291 c/c-typeck.cc:10770 cp/typeck2.cc:1226 cp/typeck2.cc:1584
 #, gcc-internal-format
 msgid "initialization of flexible array member in a nested context"
 msgstr ""
 
-#: c/c-typeck.cc:9338
+#: c/c-typeck.cc:9328
 #, gcc-internal-format
 msgid "missing braces around initializer"
 msgstr ""
 
-#: c/c-typeck.cc:9361
+#: c/c-typeck.cc:9351
 #, gcc-internal-format
 msgid "missing initializer for field %qD of %qT"
 msgstr ""
 
-#: c/c-typeck.cc:9396
+#: c/c-typeck.cc:9386
 #, gcc-internal-format
 msgid "extra elements in scalar initializer"
 msgstr ""
 
-#: c/c-typeck.cc:9515 c/c-typeck.cc:9597
+#: c/c-typeck.cc:9505 c/c-typeck.cc:9587
 #, gcc-internal-format
 msgid "array index in non-array initializer"
 msgstr ""
 
-#: c/c-typeck.cc:9520 c/c-typeck.cc:9659
+#: c/c-typeck.cc:9510 c/c-typeck.cc:9649
 #, gcc-internal-format
 msgid "field name not in record or union initializer"
 msgstr ""
 
-#: c/c-typeck.cc:9570
+#: c/c-typeck.cc:9560
 #, gcc-internal-format
 msgid "array index in initializer not of integer type"
 msgstr ""
 
-#: c/c-typeck.cc:9579 c/c-typeck.cc:9588
+#: c/c-typeck.cc:9569 c/c-typeck.cc:9578
 #, gcc-internal-format
 msgid "array index in initializer is not an integer constant expression"
 msgstr ""
 
-#: c/c-typeck.cc:9593 c/c-typeck.cc:9595
+#: c/c-typeck.cc:9583 c/c-typeck.cc:9585
 #, gcc-internal-format
 msgid "nonconstant array index in initializer"
 msgstr ""
 
-#: c/c-typeck.cc:9599 c/c-typeck.cc:9602
+#: c/c-typeck.cc:9589 c/c-typeck.cc:9592
 #, gcc-internal-format
 msgid "array index in initializer exceeds array bounds"
 msgstr ""
 
-#: c/c-typeck.cc:9621
+#: c/c-typeck.cc:9611
 #, gcc-internal-format
 msgid "empty index range in initializer"
 msgstr ""
 
-#: c/c-typeck.cc:9630
+#: c/c-typeck.cc:9620
 #, gcc-internal-format
 msgid "array index range in initializer exceeds array bounds"
 msgstr ""
 
-#: c/c-typeck.cc:9732 c/c-typeck.cc:9762 c/c-typeck.cc:10340
+#: c/c-typeck.cc:9722 c/c-typeck.cc:9752 c/c-typeck.cc:10330
 #, gcc-internal-format
 msgid "initialized field with side-effects overwritten"
 msgstr ""
 
-#: c/c-typeck.cc:9736 c/c-typeck.cc:9766 c/c-typeck.cc:10343
+#: c/c-typeck.cc:9726 c/c-typeck.cc:9756 c/c-typeck.cc:10333
 #, gcc-internal-format
 msgid "initialized field overwritten"
 msgstr ""
 
-#: c/c-typeck.cc:10274
+#: c/c-typeck.cc:10264
 #, gcc-internal-format
 msgid "enum conversion in initialization is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.cc:10655
+#: c/c-typeck.cc:10645
 #, gcc-internal-format
 msgid "excess elements in %<char%> array initializer"
 msgstr ""
 
-#: c/c-typeck.cc:10662 c/c-typeck.cc:10739
+#: c/c-typeck.cc:10652 c/c-typeck.cc:10729
 #, gcc-internal-format
 msgid "excess elements in struct initializer"
 msgstr ""
 
-#: c/c-typeck.cc:10683
+#: c/c-typeck.cc:10673
 #, gcc-internal-format
 msgid ""
 "positional initialization of field in %<struct%> declared with "
 "%<designated_init%> attribute"
 msgstr ""
 
-#: c/c-typeck.cc:10754 cp/typeck2.cc:1203
+#: c/c-typeck.cc:10744 cp/typeck2.cc:1203
 #, gcc-internal-format
 msgid "non-static initialization of a flexible array member"
 msgstr ""
 
-#: c/c-typeck.cc:10849
+#: c/c-typeck.cc:10839
 #, gcc-internal-format
 msgid "excess elements in union initializer"
 msgstr ""
 
-#: c/c-typeck.cc:10871
+#: c/c-typeck.cc:10861
 #, gcc-internal-format
 msgid "traditional C rejects initialization of unions"
 msgstr ""
 
-#: c/c-typeck.cc:10933
+#: c/c-typeck.cc:10923
 #, gcc-internal-format
 msgid "excess elements in array initializer"
 msgstr ""
 
-#: c/c-typeck.cc:10967
+#: c/c-typeck.cc:10957
 #, gcc-internal-format
 msgid "excess elements in vector initializer"
 msgstr ""
 
-#: c/c-typeck.cc:10999
+#: c/c-typeck.cc:10989
 #, gcc-internal-format
 msgid "excess elements in scalar initializer"
 msgstr ""
 
-#: c/c-typeck.cc:11242
+#: c/c-typeck.cc:11232
 #, gcc-internal-format
 msgid "ISO C forbids %<goto *expr;%>"
 msgstr ""
 
-#: c/c-typeck.cc:11248
+#: c/c-typeck.cc:11238
 #, gcc-internal-format
 msgid "computed goto must be pointer type"
 msgstr ""
 
-#: c/c-typeck.cc:11277 c/gimple-parser.cc:2472 cp/typeck.cc:10926
+#: c/c-typeck.cc:11267 c/gimple-parser.cc:2472 cp/typeck.cc:10932
 #, gcc-internal-format
 msgid "function declared %<noreturn%> has a %<return%> statement"
 msgstr ""
 
-#: c/c-typeck.cc:11305 c/c-typeck.cc:11309
+#: c/c-typeck.cc:11295 c/c-typeck.cc:11299
 #, gcc-internal-format
 msgid "%<return%> with no value, in function returning non-void"
 msgstr ""
 
-#: c/c-typeck.cc:11323 c/gimple-parser.cc:2482
+#: c/c-typeck.cc:11313 c/gimple-parser.cc:2482
 #, gcc-internal-format
 msgid "%<return%> with a value, in function returning void"
 msgstr ""
 
-#: c/c-typeck.cc:11326
+#: c/c-typeck.cc:11316
 #, gcc-internal-format
 msgid "ISO C forbids %<return%> with expression, in function returning void"
 msgstr ""
 
-#: c/c-typeck.cc:11403
+#: c/c-typeck.cc:11393
 #, gcc-internal-format
 msgid "function returns address of label"
 msgstr ""
 
-#: c/c-typeck.cc:11494 cp/semantics.cc:1524
+#: c/c-typeck.cc:11484 cp/semantics.cc:1524
 #, gcc-internal-format
 msgid "switch quantity not an integer"
 msgstr ""
 
-#: c/c-typeck.cc:11519
+#: c/c-typeck.cc:11509
 #, gcc-internal-format
 msgid "%<long%> switch expression not converted to %<int%> in ISO C"
 msgstr ""
 
-#: c/c-typeck.cc:11557 c/c-typeck.cc:11565
+#: c/c-typeck.cc:11547 c/c-typeck.cc:11555
 #, gcc-internal-format
 msgid "case label is not an integer constant expression"
 msgstr ""
 
-#: c/c-typeck.cc:11571 cp/parser.cc:12737
+#: c/c-typeck.cc:11561 cp/parser.cc:12750
 #, gcc-internal-format
 msgid "case label not within a switch statement"
 msgstr ""
 
-#: c/c-typeck.cc:11573
+#: c/c-typeck.cc:11563
 #, gcc-internal-format
 msgid "%<default%> label not within a switch statement"
 msgstr ""
 
-#: c/c-typeck.cc:11649 cp/parser.cc:14353
+#: c/c-typeck.cc:11639 cp/parser.cc:14366
 #, gcc-internal-format
 msgid "break statement not within loop or switch"
 msgstr ""
 
-#: c/c-typeck.cc:11652 c/c-typeck.cc:11672 cp/decl.cc:3870 cp/parser.cc:14363
-#: cp/parser.cc:14384
+#: c/c-typeck.cc:11642 c/c-typeck.cc:11662 cp/decl.cc:3871 cp/parser.cc:14376
+#: cp/parser.cc:14397
 #, gcc-internal-format
 msgid "invalid exit from OpenMP structured block"
 msgstr ""
 
-#: c/c-typeck.cc:11655 cp/parser.cc:14366
+#: c/c-typeck.cc:11645 cp/parser.cc:14379
 #, gcc-internal-format
 msgid "break statement used with OpenMP for loop"
 msgstr ""
 
-#: c/c-typeck.cc:11669 cp/parser.cc:14376
+#: c/c-typeck.cc:11659 cp/parser.cc:14389
 #, gcc-internal-format
 msgid "continue statement not within a loop"
 msgstr ""
 
-#: c/c-typeck.cc:11709 cp/cp-gimplify.cc:229
+#: c/c-typeck.cc:11699 cp/cp-gimplify.cc:249
 #, gcc-internal-format
 msgid "statement with no effect"
 msgstr ""
 
-#: c/c-typeck.cc:11753
+#: c/c-typeck.cc:11743
 #, gcc-internal-format
 msgid "expression statement has incomplete type"
 msgstr ""
 
-#: c/c-typeck.cc:12044
+#: c/c-typeck.cc:12034
 #, 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:12049
+#: c/c-typeck.cc:12039
 #, 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:12067 c/c-typeck.cc:12105
+#: c/c-typeck.cc:12057 c/c-typeck.cc:12095
 #, 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:12072 c/c-typeck.cc:12110
+#: c/c-typeck.cc:12062 c/c-typeck.cc:12100
 #, 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:12692 c/c-typeck.cc:12853 cp/typeck.cc:5980
+#: c/c-typeck.cc:12682 c/c-typeck.cc:12843 cp/typeck.cc:5987
 #, gcc-internal-format
 msgid "comparing vectors with different element types"
 msgstr ""
 
-#: c/c-typeck.cc:12700 c/c-typeck.cc:12861 cp/typeck.cc:5993
+#: c/c-typeck.cc:12690 c/c-typeck.cc:12851 cp/typeck.cc:6000
 #, gcc-internal-format
 msgid "comparing vectors with different number of elements"
 msgstr ""
 
-#: c/c-typeck.cc:12715 c/c-typeck.cc:12876 cp/typeck.cc:6011
+#: c/c-typeck.cc:12705 c/c-typeck.cc:12866 cp/typeck.cc:6018
 #, gcc-internal-format
 msgid "comparison between types %qT and %qT"
 msgstr ""
 
-#: c/c-typeck.cc:12725 c/c-typeck.cc:12886 cp/typeck.cc:6028
+#: c/c-typeck.cc:12715 c/c-typeck.cc:12876 cp/typeck.cc:6035
 #, gcc-internal-format
 msgid "could not find an integer type of the same size as %qT"
 msgstr ""
 
-#: c/c-typeck.cc:12739 cp/typeck.cc:5671
+#: c/c-typeck.cc:12729 cp/typeck.cc:5671
 #, gcc-internal-format
 msgid "comparing floating-point with %<==%> or %<!=%> is unsafe"
 msgstr ""
 
-#: c/c-typeck.cc:12777 c/c-typeck.cc:12927
+#: c/c-typeck.cc:12767 c/c-typeck.cc:12917
 #, gcc-internal-format
 msgid "comparison of pointers to disjoint address spaces"
 msgstr ""
 
-#: c/c-typeck.cc:12784 c/c-typeck.cc:12790
+#: c/c-typeck.cc:12774 c/c-typeck.cc:12780
 #, gcc-internal-format
 msgid "ISO C forbids comparison of %<void *%> with function pointer"
 msgstr ""
 
-#: c/c-typeck.cc:12797 c/c-typeck.cc:12937
+#: c/c-typeck.cc:12787 c/c-typeck.cc:12927
 #, gcc-internal-format
 msgid "comparison of distinct pointer types lacks a cast"
 msgstr ""
 
-#: c/c-typeck.cc:12809 c/c-typeck.cc:12814 c/c-typeck.cc:12963
-#: c/c-typeck.cc:12968
+#: c/c-typeck.cc:12799 c/c-typeck.cc:12804 c/c-typeck.cc:12953
+#: c/c-typeck.cc:12958
 #, gcc-internal-format
 msgid "comparison between pointer and integer"
 msgstr ""
 
-#: c/c-typeck.cc:12915
+#: c/c-typeck.cc:12905
 #, gcc-internal-format
 msgid "comparison of complete and incomplete pointers"
 msgstr ""
 
-#: c/c-typeck.cc:12917
+#: c/c-typeck.cc:12907
 #, gcc-internal-format
 msgid "ISO C forbids ordered comparisons of pointers to functions"
 msgstr ""
 
-#: c/c-typeck.cc:12922
+#: c/c-typeck.cc:12912
 #, gcc-internal-format
 msgid "ordered comparison of pointer with null pointer"
 msgstr ""
 
-#: c/c-typeck.cc:12945 c/c-typeck.cc:12948 c/c-typeck.cc:12955
-#: c/c-typeck.cc:12958
+#: c/c-typeck.cc:12935 c/c-typeck.cc:12938 c/c-typeck.cc:12945
+#: c/c-typeck.cc:12948
 #, gcc-internal-format
 msgid "ordered comparison of pointer with integer zero"
 msgstr ""
 
-#: c/c-typeck.cc:13034
+#: c/c-typeck.cc:13024
 #, gcc-internal-format
 msgid ""
 "implicit conversion from %qT to %qT to match other operand of binary "
 "expression"
 msgstr ""
 
-#: c/c-typeck.cc:13352
+#: c/c-typeck.cc:13342
 #, gcc-internal-format
 msgid "used array that cannot be converted to pointer where scalar is required"
 msgstr ""
 
-#: c/c-typeck.cc:13356
+#: c/c-typeck.cc:13346
 #, gcc-internal-format
 msgid "used struct type value where scalar is required"
 msgstr ""
 
-#: c/c-typeck.cc:13360
+#: c/c-typeck.cc:13350
 #, gcc-internal-format
 msgid "used union type value where scalar is required"
 msgstr ""
 
-#: c/c-typeck.cc:13376
+#: c/c-typeck.cc:13366
 #, gcc-internal-format
 msgid "used vector type where scalar is required"
 msgstr ""
 
-#: c/c-typeck.cc:13566 cp/semantics.cc:11062
+#: c/c-typeck.cc:13556 cp/semantics.cc:11070
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp cancel%> must specify one of %<parallel%>, %<for%>, "
 "%<sections%> or %<taskgroup%> clauses"
 msgstr ""
 
-#: c/c-typeck.cc:13577 c/c-typeck.cc:13587 cp/semantics.cc:11073
-#: cp/semantics.cc:11083
+#: c/c-typeck.cc:13567 c/c-typeck.cc:13577 cp/semantics.cc:11081
+#: cp/semantics.cc:11091
 #, gcc-internal-format
 msgid "expected %<cancel%> %<if%> clause modifier"
 msgstr ""
 
-#: c/c-typeck.cc:13622 cp/semantics.cc:11118
+#: c/c-typeck.cc:13612 cp/semantics.cc:11126
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp cancellation point%> must specify one of %<parallel%>, "
 "%<for%>, %<sections%> or %<taskgroup%> clauses"
 msgstr ""
 
-#: c/c-typeck.cc:13667 c/c-typeck.cc:15392 c/c-typeck.cc:15528
-#: c/c-typeck.cc:15611
+#: c/c-typeck.cc:13657 c/c-typeck.cc:15382 c/c-typeck.cc:15518
+#: c/c-typeck.cc:15601
 #, gcc-internal-format
 msgid "%<_Atomic%> %qE in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13691 c/c-typeck.cc:15307 c/c-typeck.cc:15514
-#: cp/semantics.cc:5157 cp/semantics.cc:7925 cp/semantics.cc:8185
+#: c/c-typeck.cc:13681 c/c-typeck.cc:15297 c/c-typeck.cc:15504
+#: cp/semantics.cc:5165 cp/semantics.cc:7933 cp/semantics.cc:8193
 #, gcc-internal-format
 msgid "bit-field %qE in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13700 c/c-typeck.cc:15538 cp/semantics.cc:5167
-#: cp/semantics.cc:8206
+#: c/c-typeck.cc:13690 c/c-typeck.cc:15528 cp/semantics.cc:5175
+#: cp/semantics.cc:8214
 #, gcc-internal-format
 msgid "%qE is a member of a union"
 msgstr ""
 
-#: c/c-typeck.cc:13717 c/c-typeck.cc:15547 cp/semantics.cc:8215
+#: c/c-typeck.cc:13707 c/c-typeck.cc:15537 cp/semantics.cc:8223
 #, gcc-internal-format
 msgid "cannot dereference %qE in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13728 cp/semantics.cc:5192 cp/semantics.cc:8260
+#: c/c-typeck.cc:13718 cp/semantics.cc:5200 cp/semantics.cc:8268
 #, gcc-internal-format
 msgid "%qD is not a variable in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13732 c/c-typeck.cc:15575 cp/semantics.cc:5196
-#: cp/semantics.cc:8264
+#: c/c-typeck.cc:13722 c/c-typeck.cc:15565 cp/semantics.cc:5204
+#: cp/semantics.cc:8272
 #, gcc-internal-format
 msgid "%qE is not a variable in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13740
+#: c/c-typeck.cc:13730
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13750 c/c-typeck.cc:15582 c/c-typeck.cc:15712
-#: cp/semantics.cc:5205 cp/semantics.cc:8271 cp/semantics.cc:8467
+#: c/c-typeck.cc:13740 c/c-typeck.cc:15572 c/c-typeck.cc:15702
+#: cp/semantics.cc:5213 cp/semantics.cc:8279 cp/semantics.cc:8475
 #, gcc-internal-format
 msgid "%qD is threadprivate variable in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13787 cp/semantics.cc:5239
+#: c/c-typeck.cc:13777 cp/semantics.cc:5247
 #, gcc-internal-format
 msgid "low bound %qE of array section does not have integral type"
 msgstr ""
 
-#: c/c-typeck.cc:13794 cp/semantics.cc:5246
+#: c/c-typeck.cc:13784 cp/semantics.cc:5254
 #, gcc-internal-format
 msgid "length %qE of array section does not have integral type"
 msgstr ""
 
-#: c/c-typeck.cc:13817 cp/semantics.cc:5279
+#: c/c-typeck.cc:13807 cp/semantics.cc:5287
 #, gcc-internal-format
 msgid "expected single pointer in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13835 c/c-typeck.cc:13902 c/c-typeck.cc:14194
-#: cp/semantics.cc:5297 cp/semantics.cc:5364
+#: c/c-typeck.cc:13825 c/c-typeck.cc:13892 c/c-typeck.cc:14184
+#: cp/semantics.cc:5305 cp/semantics.cc:5372
 #, gcc-internal-format
 msgid "zero length array section in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13854 cp/semantics.cc:5316
+#: c/c-typeck.cc:13844 cp/semantics.cc:5324
 #, gcc-internal-format
 msgid "for unknown bound array type length expression must be specified"
 msgstr ""
 
-#: c/c-typeck.cc:13862 cp/semantics.cc:5324
+#: c/c-typeck.cc:13852 cp/semantics.cc:5332
 #, gcc-internal-format
 msgid "negative low bound in array section in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13871 c/c-typeck.cc:13995 cp/semantics.cc:5333
-#: cp/semantics.cc:5457
+#: c/c-typeck.cc:13861 c/c-typeck.cc:13985 cp/semantics.cc:5341
+#: cp/semantics.cc:5465
 #, gcc-internal-format
 msgid "negative length in array section in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13888 cp/semantics.cc:5350
+#: c/c-typeck.cc:13878 cp/semantics.cc:5358
 #, gcc-internal-format
 msgid "low bound %qE above array section size in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13931 cp/semantics.cc:5393
+#: c/c-typeck.cc:13921 cp/semantics.cc:5401
 #, gcc-internal-format
 msgid "length %qE above array section size in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13946 cp/semantics.cc:5408
+#: c/c-typeck.cc:13936 cp/semantics.cc:5416
 #, gcc-internal-format
 msgid "high bound %qE above array section size in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13983 cp/semantics.cc:5445
+#: c/c-typeck.cc:13973 cp/semantics.cc:5453
 #, gcc-internal-format
 msgid "for array function parameter length expression must be specified"
 msgstr ""
 
-#: c/c-typeck.cc:13987 cp/semantics.cc:5449
+#: c/c-typeck.cc:13977 cp/semantics.cc:5457
 #, gcc-internal-format
 msgid "for pointer type length expression must be specified"
 msgstr ""
 
-#: c/c-typeck.cc:14014 c/c-typeck.cc:14133 cp/semantics.cc:5476
-#: cp/semantics.cc:5610
+#: c/c-typeck.cc:14004 c/c-typeck.cc:14123 cp/semantics.cc:5484
+#: cp/semantics.cc:5618
 #, gcc-internal-format
 msgid "array section is not contiguous in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:14024 cp/semantics.cc:5486
+#: c/c-typeck.cc:14014 cp/semantics.cc:5494
 #, gcc-internal-format
 msgid "%qE does not have pointer or array type"
 msgstr ""
 
-#: c/c-typeck.cc:14411 cp/semantics.cc:6584
+#: c/c-typeck.cc:14401 cp/semantics.cc:6592
 #, gcc-internal-format
 msgid "iterator %qD has neither integral nor pointer type"
 msgstr ""
 
-#: c/c-typeck.cc:14418
+#: c/c-typeck.cc:14408
 #, gcc-internal-format
 msgid "iterator %qD has %<_Atomic%> qualified type"
 msgstr ""
 
-#: c/c-typeck.cc:14424 cp/semantics.cc:6591
+#: c/c-typeck.cc:14414 cp/semantics.cc:6599
 #, gcc-internal-format
 msgid "iterator %qD has const qualified type"
 msgstr ""
 
-#: c/c-typeck.cc:14437 cp/semantics.cc:6607
+#: c/c-typeck.cc:14427 cp/semantics.cc:6615
 #, gcc-internal-format
 msgid "iterator step with non-integral type"
 msgstr ""
 
-#: c/c-typeck.cc:14457 cp/semantics.cc:6643
+#: c/c-typeck.cc:14447 cp/semantics.cc:6651
 #, gcc-internal-format
 msgid "iterator %qD has zero step"
 msgstr ""
 
-#: c/c-typeck.cc:14484
+#: c/c-typeck.cc:14474
 #, gcc-internal-format
 msgid "type of iterator %qD refers to outer iterator %qD"
 msgstr ""
 
-#: c/c-typeck.cc:14491 cp/semantics.cc:6677
+#: c/c-typeck.cc:14481 cp/semantics.cc:6685
 #, gcc-internal-format
 msgid "begin expression refers to outer iterator %qD"
 msgstr ""
 
-#: c/c-typeck.cc:14497 cp/semantics.cc:6683
+#: c/c-typeck.cc:14487 cp/semantics.cc:6691
 #, gcc-internal-format
 msgid "end expression refers to outer iterator %qD"
 msgstr ""
 
-#: c/c-typeck.cc:14503 cp/semantics.cc:6689
+#: c/c-typeck.cc:14493 cp/semantics.cc:6697
 #, gcc-internal-format
 msgid "step expression refers to outer iterator %qD"
 msgstr ""
 
-#: c/c-typeck.cc:14540 cp/semantics.cc:6737
+#: c/c-typeck.cc:14530 cp/semantics.cc:6745
 #, gcc-internal-format
 msgid "expected pointer in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:14635 cp/semantics.cc:6825
+#: c/c-typeck.cc:14625 cp/semantics.cc:6833
 #, gcc-internal-format
 msgid ""
 "%<inscan%> and non-%<inscan%> %<reduction%> clauses on the same construct"
 msgstr ""
 
-#: c/c-typeck.cc:14657 cp/semantics.cc:6845
+#: c/c-typeck.cc:14647 cp/semantics.cc:6853
 #, gcc-internal-format
 msgid "%<inscan%> %<reduction%> clause with array section"
 msgstr ""
 
-#: c/c-typeck.cc:14683 c/c-typeck.cc:14693
+#: c/c-typeck.cc:14673 c/c-typeck.cc:14683
 #, gcc-internal-format
 msgid "%qD in %<reduction%> clause is a zero size array"
 msgstr ""
 
-#: c/c-typeck.cc:14713
+#: c/c-typeck.cc:14703
 #, gcc-internal-format
 msgid "%<_Atomic%> %qE in %<reduction%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:14725
+#: c/c-typeck.cc:14715
 #, gcc-internal-format
 msgid "zero sized type %qT in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:14733
+#: c/c-typeck.cc:14723
 #, gcc-internal-format
 msgid "variable sized type %qT in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:14777
+#: c/c-typeck.cc:14767
 #, gcc-internal-format
 msgid "%qE has invalid type for %<reduction(%s)%>"
 msgstr ""
 
-#: c/c-typeck.cc:14786 cp/semantics.cc:6476
+#: c/c-typeck.cc:14776 cp/semantics.cc:6484
 #, gcc-internal-format
 msgid "user defined reduction not found for %qE"
 msgstr ""
 
-#: c/c-typeck.cc:14874
+#: c/c-typeck.cc:14864
 #, gcc-internal-format
 msgid "variable length element type in array %<reduction%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:14892 c/c-typeck.cc:15806 cp/semantics.cc:9002
+#: c/c-typeck.cc:14882 c/c-typeck.cc:15796 cp/semantics.cc:9010
 #, gcc-internal-format
 msgid "%<nowait%> clause must not be used together with %<copyprivate%>"
 msgstr ""
 
-#: c/c-typeck.cc:14904 cp/semantics.cc:9070
+#: c/c-typeck.cc:14894 cp/semantics.cc:9078
 #, gcc-internal-format
 msgid "%qE must be %<threadprivate%> for %<copyin%>"
 msgstr ""
 
-#: c/c-typeck.cc:14919 cp/semantics.cc:6888
+#: c/c-typeck.cc:14909 cp/semantics.cc:6896
 #, 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:14928
+#: c/c-typeck.cc:14918
 #, gcc-internal-format
 msgid ""
 "linear clause applied to non-integral non-pointer variable with type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:14936
+#: c/c-typeck.cc:14926
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<linear%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:14955 cp/semantics.cc:6972
+#: c/c-typeck.cc:14945 cp/semantics.cc:6980
 #, gcc-internal-format
 msgid "%<linear%> clause step %qE is neither constant nor a parameter"
 msgstr ""
 
-#: c/c-typeck.cc:14985 c/c-typeck.cc:15706 c/c-typeck.cc:15951
-#: cp/semantics.cc:7059 cp/semantics.cc:8461 cp/semantics.cc:8811
+#: c/c-typeck.cc:14975 c/c-typeck.cc:15696 c/c-typeck.cc:15941
+#: cp/semantics.cc:7067 cp/semantics.cc:8469 cp/semantics.cc:8819
 #, gcc-internal-format
 msgid "%qE is not a variable in clause %qs"
 msgstr ""
 
-#: c/c-typeck.cc:15003 cp/semantics.cc:7077
+#: c/c-typeck.cc:14993 cp/semantics.cc:7085
 #, gcc-internal-format
 msgid "%qD appears more than once in data-sharing clauses"
 msgstr ""
 
-#: c/c-typeck.cc:15014 cp/semantics.cc:7088
+#: c/c-typeck.cc:15004 cp/semantics.cc:7096
 #, gcc-internal-format
 msgid "%qD appears more than once in reduction clauses"
 msgstr ""
 
-#: c/c-typeck.cc:15028 c/c-typeck.cc:15098 c/c-typeck.cc:15132
+#: c/c-typeck.cc:15018 c/c-typeck.cc:15088 c/c-typeck.cc:15122
 #, gcc-internal-format
 msgid "%qE appears more than once in data clauses"
 msgstr ""
 
-#: c/c-typeck.cc:15038 c/c-typeck.cc:15105 c/c-typeck.cc:15436
-#: c/c-typeck.cc:15629 c/c-typeck.cc:15637 c/c-typeck.cc:15654
-#: c/c-typeck.cc:15664 c/c-typeck.cc:15672 cp/semantics.cc:7102
-#: cp/semantics.cc:7112 cp/semantics.cc:7205 cp/semantics.cc:7212
-#: cp/semantics.cc:7259 cp/semantics.cc:8094 cp/semantics.cc:8325
-#: cp/semantics.cc:8333 cp/semantics.cc:8350 cp/semantics.cc:8360
-#: cp/semantics.cc:8368
+#: c/c-typeck.cc:15028 c/c-typeck.cc:15095 c/c-typeck.cc:15426
+#: c/c-typeck.cc:15619 c/c-typeck.cc:15627 c/c-typeck.cc:15644
+#: c/c-typeck.cc:15654 c/c-typeck.cc:15662 cp/semantics.cc:7110
+#: cp/semantics.cc:7120 cp/semantics.cc:7213 cp/semantics.cc:7220
+#: cp/semantics.cc:7267 cp/semantics.cc:8102 cp/semantics.cc:8333
+#: cp/semantics.cc:8341 cp/semantics.cc:8358 cp/semantics.cc:8368
+#: cp/semantics.cc:8376
 #, gcc-internal-format
 msgid "%qD appears more than once in data clauses"
 msgstr ""
 
-#: c/c-typeck.cc:15041 c/c-typeck.cc:15111 c/c-typeck.cc:15640
-#: c/c-typeck.cc:15675 cp/semantics.cc:7115 cp/semantics.cc:7218
-#: cp/semantics.cc:8336 cp/semantics.cc:8371
+#: c/c-typeck.cc:15031 c/c-typeck.cc:15101 c/c-typeck.cc:15630
+#: c/c-typeck.cc:15665 cp/semantics.cc:7123 cp/semantics.cc:7226
+#: cp/semantics.cc:8344 cp/semantics.cc:8379
 #, gcc-internal-format
 msgid "%qD appears both in data and map clauses"
 msgstr ""
 
-#: c/c-typeck.cc:15086 cp/semantics.cc:7192
+#: c/c-typeck.cc:15076 cp/semantics.cc:7200
 #, gcc-internal-format
 msgid "%qE is not a variable in clause %<firstprivate%>"
 msgstr ""
 
-#: c/c-typeck.cc:15125 cp/semantics.cc:7251
+#: c/c-typeck.cc:15115 cp/semantics.cc:7259
 #, gcc-internal-format
 msgid "%qE is not a variable in clause %<lastprivate%>"
 msgstr ""
 
-#: c/c-typeck.cc:15144 cp/semantics.cc:7646
+#: c/c-typeck.cc:15134 cp/semantics.cc:7654
 #, gcc-internal-format
 msgid "%qE is not a variable in %<aligned%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:15151
+#: c/c-typeck.cc:15141
 #, gcc-internal-format
 msgid "%qE in %<aligned%> clause is neither a pointer nor an array"
 msgstr ""
 
-#: c/c-typeck.cc:15158
+#: c/c-typeck.cc:15148
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<aligned%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:15165
+#: c/c-typeck.cc:15155
 #, gcc-internal-format
 msgid "%qE appears more than once in %<aligned%> clauses"
 msgstr ""
 
-#: c/c-typeck.cc:15178 cp/semantics.cc:7717
+#: c/c-typeck.cc:15168 cp/semantics.cc:7725
 #, gcc-internal-format
 msgid "%qE is not a variable in %<nontemporal%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:15184
+#: c/c-typeck.cc:15174
 #, gcc-internal-format
 msgid "%qE appears more than once in %<nontemporal%> clauses"
 msgstr ""
 
-#: c/c-typeck.cc:15197 cp/semantics.cc:7756
+#: c/c-typeck.cc:15187 cp/semantics.cc:7764
 #, gcc-internal-format
 msgid "%qE is not a variable in %<allocate%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:15203
+#: c/c-typeck.cc:15193
 #, gcc-internal-format
 msgid "%qE appears more than once in %<allocate%> clauses"
 msgstr ""
 
-#: c/c-typeck.cc:15273 cp/semantics.cc:7882
+#: c/c-typeck.cc:15263 cp/semantics.cc:7890
 #, gcc-internal-format
 msgid "%<depend%> clause with %<depobj%> dependence type on array section"
 msgstr ""
 
-#: c/c-typeck.cc:15288 cp/semantics.cc:7897
+#: c/c-typeck.cc:15278 cp/semantics.cc:7905
 #, gcc-internal-format
 msgid ""
 "%<omp_all_memory%> used with %<depend%> kind other than %<out%> or %<inout%>"
 msgstr ""
 
-#: c/c-typeck.cc:15296 cp/semantics.cc:7915
+#: c/c-typeck.cc:15286 cp/semantics.cc:7923
 #, gcc-internal-format
 msgid "%qE is not lvalue expression nor array section in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15317 cp/semantics.cc:7937
+#: c/c-typeck.cc:15307 cp/semantics.cc:7945
 #, gcc-internal-format
 msgid ""
 "%qE does not have %<omp_depend_t%> type in %<depend%> clause with %<depobj%> "
 "dependence type"
 msgstr ""
 
-#: c/c-typeck.cc:15327 cp/semantics.cc:7949
+#: c/c-typeck.cc:15317 cp/semantics.cc:7957
 #, 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:15384 cp/semantics.cc:8044
+#: c/c-typeck.cc:15374 cp/semantics.cc:8052
 #, gcc-internal-format
 msgid "array section does not have mappable type in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15432 c/c-typeck.cc:15651 cp/semantics.cc:8090
-#: cp/semantics.cc:8347
+#: c/c-typeck.cc:15422 c/c-typeck.cc:15641 cp/semantics.cc:8098
+#: cp/semantics.cc:8355
 #, gcc-internal-format
 msgid "%qD appears more than once in motion clauses"
 msgstr ""
 
-#: c/c-typeck.cc:15440 c/c-typeck.cc:15657 cp/semantics.cc:8098
-#: cp/semantics.cc:8353
+#: c/c-typeck.cc:15430 c/c-typeck.cc:15647 cp/semantics.cc:8106
+#: cp/semantics.cc:8361
 #, gcc-internal-format
 msgid "%qD appears more than once in map clauses"
 msgstr ""
 
-#: c/c-typeck.cc:15521 cp/semantics.cc:8192
+#: c/c-typeck.cc:15511 cp/semantics.cc:8200
 #, gcc-internal-format
 msgid "%qE does not have a mappable type in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15602 c/c-typeck.cc:15719 cp/semantics.cc:8294
-#: cp/semantics.cc:8474
+#: c/c-typeck.cc:15592 c/c-typeck.cc:15709 cp/semantics.cc:8302
+#: cp/semantics.cc:8482
 #, gcc-internal-format
 msgid "%qD does not have a mappable type in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:15702 cp/semantics.cc:8456
+#: c/c-typeck.cc:15692 cp/semantics.cc:8464
 #, gcc-internal-format
 msgid "%qE is neither a variable nor a function name in clause %qs"
 msgstr ""
 
-#: c/c-typeck.cc:15728 cp/semantics.cc:8486
+#: c/c-typeck.cc:15718 cp/semantics.cc:8494
 #, gcc-internal-format
 msgid "%qE appears more than once on the same %<declare target%> directive"
 msgstr ""
 
-#: c/c-typeck.cc:15742 cp/semantics.cc:8502
+#: c/c-typeck.cc:15732 cp/semantics.cc:8510
 #, gcc-internal-format
 msgid "%qD is not an argument in %<uniform%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:15745 cp/semantics.cc:8505
+#: c/c-typeck.cc:15735 cp/semantics.cc:8513
 #, gcc-internal-format
 msgid "%qE is not an argument in %<uniform%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:15764
+#: c/c-typeck.cc:15754
 #, gcc-internal-format
 msgid "%qs variable is not a pointer"
 msgstr ""
 
-#: c/c-typeck.cc:15771
+#: c/c-typeck.cc:15761
 #, gcc-internal-format
 msgid "%qs variable is neither a pointer nor an array"
 msgstr ""
 
-#: c/c-typeck.cc:15819 c/c-typeck.cc:15912 cp/semantics.cc:8964
+#: c/c-typeck.cc:15809 c/c-typeck.cc:15902 cp/semantics.cc:8972
 #, gcc-internal-format
 msgid "%<order%> clause must not be used together with %<ordered%>"
 msgstr ""
 
-#: c/c-typeck.cc:15839 cp/semantics.cc:7989
+#: c/c-typeck.cc:15829 cp/semantics.cc:7997
 #, gcc-internal-format
 msgid "too many %qs clauses on a task construct"
 msgstr ""
 
-#: c/c-typeck.cc:15934 cp/semantics.cc:8779
+#: c/c-typeck.cc:15924 cp/semantics.cc:8787
 #, gcc-internal-format
 msgid "%<inbranch%> clause is incompatible with %<notinbranch%>"
 msgstr ""
 
-#: c/c-typeck.cc:16001 cp/semantics.cc:9141
+#: c/c-typeck.cc:15991 cp/semantics.cc:9149
 #, gcc-internal-format
 msgid "%qE is predetermined %qs for %qs"
 msgstr ""
 
-#: c/c-typeck.cc:16011
+#: c/c-typeck.cc:16001
 #, gcc-internal-format
 msgid ""
 "%<const%> qualified %qE may appear only in %<shared%> or %<firstprivate%> "
 "clauses"
 msgstr ""
 
-#: c/c-typeck.cc:16042 cp/semantics.cc:8916
+#: c/c-typeck.cc:16032 cp/semantics.cc:8924
 #, gcc-internal-format
 msgid "%<simdlen%> clause value is bigger than %<safelen%> clause value"
 msgstr ""
 
-#: c/c-typeck.cc:16054 cp/semantics.cc:8929
+#: c/c-typeck.cc:16044 cp/semantics.cc:8937
 #, gcc-internal-format
 msgid ""
 "%<nonmonotonic%> schedule modifier specified together with %<ordered%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:16065 c/c-typeck.cc:16073 cp/semantics.cc:8938
-#: cp/semantics.cc:8956
+#: c/c-typeck.cc:16055 c/c-typeck.cc:16063 cp/semantics.cc:8946
+#: cp/semantics.cc:8964
 #, gcc-internal-format
 msgid "%qs clause specified together with %<inscan%> %<reduction%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:16121 cp/semantics.cc:8896
+#: c/c-typeck.cc:16111 cp/semantics.cc:8904
 #, gcc-internal-format
 msgid ""
 "%<linear%> clause step is a parameter %qD not specified in %<uniform%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:16172 cp/semantics.cc:8946
+#: c/c-typeck.cc:16162 cp/semantics.cc:8954
 #, gcc-internal-format
 msgid "%<nogroup%> clause must not be used together with %<reduction%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:16182 cp/semantics.cc:8975
+#: c/c-typeck.cc:16172 cp/semantics.cc:8983
 #, gcc-internal-format
 msgid "%<detach%> clause must not be used together with %<mergeable%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:16200 cp/semantics.cc:9166
+#: c/c-typeck.cc:16190 cp/semantics.cc:9174
 #, gcc-internal-format
 msgid ""
 "the event handle of a %<detach%> clause should not be in a data-sharing "
 "clause"
 msgstr ""
 
-#: c/c-typeck.cc:16374
+#: c/c-typeck.cc:16364
 #, gcc-internal-format
 msgid "cannot use %<va_arg%> with reverse storage order"
 msgstr ""
 
-#: c/c-typeck.cc:16379
+#: c/c-typeck.cc:16369
 #, gcc-internal-format
 msgid "second argument to %<va_arg%> is of incomplete type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:16385
+#: c/c-typeck.cc:16375
 #, gcc-internal-format
 msgid "second argument to %<va_arg%> is a function type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:16391
+#: c/c-typeck.cc:16381
 #, gcc-internal-format
 msgid "C++ requires promoted type, not enum type, in %<va_arg%>"
 msgstr ""
@@ -51631,928 +51694,928 @@ msgid "expected case label"
 msgstr ""
 
 #. A bad conversion for 'this' must be discarding cv-quals.
-#: cp/call.cc:3834
+#: cp/call.cc:3837
 #, gcc-internal-format
 msgid "  passing %qT as %<this%> argument discards qualifiers"
 msgstr ""
 
-#: cp/call.cc:3838
+#: cp/call.cc:3841
 msgid "  no known conversion for implicit %<this%> parameter from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:3845
+#: cp/call.cc:3848
 #, 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:3852
+#: cp/call.cc:3855
 msgid "  no known conversion from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:3858
+#: cp/call.cc:3861
 msgid "  no known conversion for argument %d from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:3872 cp/pt.cc:6988
+#: cp/call.cc:3875 cp/pt.cc:7020
 #, 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:3877 cp/pt.cc:6993
+#: cp/call.cc:3880 cp/pt.cc:7025
 #, 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:3905
+#: cp/call.cc:3908
 #, gcc-internal-format
 msgid "%s%<%D(%T, %T, %T)%> (built-in)"
 msgstr ""
 
-#: cp/call.cc:3910
+#: cp/call.cc:3913
 #, gcc-internal-format
 msgid "%s%<%D(%T, %T)%> (built-in)"
 msgstr ""
 
-#: cp/call.cc:3914
+#: cp/call.cc:3917
 #, gcc-internal-format
 msgid "%s%<%D(%T)%> (built-in)"
 msgstr ""
 
-#: cp/call.cc:3918
+#: cp/call.cc:3921
 #, gcc-internal-format
 msgid "%s%qT (conversion)"
 msgstr ""
 
-#: cp/call.cc:3920
+#: cp/call.cc:3923
 #, gcc-internal-format
 msgid "%s%#qD (near match)"
 msgstr ""
 
-#: cp/call.cc:3922
+#: cp/call.cc:3925
 #, gcc-internal-format
 msgid "%s%#qD (deleted)"
 msgstr ""
 
-#: cp/call.cc:3924
+#: cp/call.cc:3927
 #, gcc-internal-format
 msgid "%s%#qD (reversed)"
 msgstr ""
 
-#: cp/call.cc:3926
+#: cp/call.cc:3929
 #, gcc-internal-format
 msgid "%s%#qD (rewritten)"
 msgstr ""
 
-#: cp/call.cc:3928
+#: cp/call.cc:3931
 #, gcc-internal-format
 msgid "%s%#qD"
 msgstr ""
 
-#: cp/call.cc:3932
+#: cp/call.cc:3935
 #, gcc-internal-format
 msgid "  inherited here"
 msgstr ""
 
-#: cp/call.cc:3953
+#: cp/call.cc:3956
 #, gcc-internal-format
 msgid ""
 "  return type %qT of explicit conversion function cannot be converted to %qT "
 "with a qualification conversion"
 msgstr ""
 
-#: cp/call.cc:3959
+#: cp/call.cc:3962
 #, 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:3970
+#: cp/call.cc:3973
 #, gcc-internal-format
 msgid ""
 "  substitution of deduced template arguments resulted in errors seen above"
 msgstr ""
 
 #. Re-run template unification with diagnostics.
-#: cp/call.cc:3975
+#: cp/call.cc:3978
 #, gcc-internal-format
 msgid "  template argument deduction/substitution failed:"
 msgstr ""
 
-#: cp/call.cc:3989
+#: cp/call.cc:3992
 #, gcc-internal-format
 msgid ""
 "  a constructor taking a single argument of its own class type is invalid"
 msgstr ""
 
-#: cp/call.cc:3996
+#: cp/call.cc:3999
 #, 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:4143 cp/call.cc:4664
+#: cp/call.cc:4146 cp/call.cc:4667
 #, gcc-internal-format
 msgid "designated initializers cannot be used with a non-aggregate type %qT"
 msgstr ""
 
-#: cp/call.cc:4561
+#: cp/call.cc:4564
 msgid "conversion from %qH to %qI is ambiguous"
 msgstr ""
 
-#: cp/call.cc:4670 cp/cvt.cc:864
+#: cp/call.cc:4673 cp/cvt.cc:864
 msgid "could not convert %qE from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:4737
+#: cp/call.cc:4740
 msgid ""
 "initializing %qH with %qI in converted constant expression does not bind "
 "directly"
 msgstr ""
 
-#: cp/call.cc:4758
+#: cp/call.cc:4761
 msgid "conversion from %qH to %qI in a converted constant expression"
 msgstr ""
 
-#: cp/call.cc:4946
+#: cp/call.cc:4949
 #, gcc-internal-format
 msgid "no matching function for call to %<%D(%A)%>"
 msgstr ""
 
-#: cp/call.cc:4949
+#: cp/call.cc:4952
 #, 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:5236
+#: cp/call.cc:5239
 #, gcc-internal-format
 msgid ""
 "pointer-to-member function %qE cannot be called without an object; consider "
 "using %<.*%> or %<->*%>"
 msgstr ""
 
-#: cp/call.cc:5306
+#: cp/call.cc:5309
 #, gcc-internal-format
 msgid "no match for call to %<(%T) (%A)%>"
 msgstr ""
 
-#: cp/call.cc:5320
+#: cp/call.cc:5323
 #, gcc-internal-format
 msgid "call of %<(%T) (%A)%> is ambiguous"
 msgstr ""
 
-#: cp/call.cc:5366
+#: cp/call.cc:5369
 #, gcc-internal-format
 msgid "ambiguous overload for "
 msgstr ""
 
-#: cp/call.cc:5367
+#: cp/call.cc:5370
 #, gcc-internal-format
 msgid "no match for "
 msgstr ""
 
-#: cp/call.cc:5370
+#: cp/call.cc:5373
 #, gcc-internal-format
 msgid " (operand types are %qT, %qT, and %qT)"
 msgstr ""
 
-#: cp/call.cc:5372
+#: cp/call.cc:5375
 #, gcc-internal-format
 msgid " (operand types are %qT and %qT)"
 msgstr ""
 
-#: cp/call.cc:5374
+#: cp/call.cc:5377
 #, gcc-internal-format
 msgid " (operand type is %qT)"
 msgstr ""
 
-#: cp/call.cc:5391
+#: cp/call.cc:5394
 #, gcc-internal-format
 msgid "ternary %<operator?:%>"
 msgstr ""
 
-#: cp/call.cc:5395
+#: cp/call.cc:5398
 #, gcc-internal-format
 msgid "ternary %<operator?:%> in %<%E ? %E : %E%>"
 msgstr ""
 
-#: cp/call.cc:5404 cp/call.cc:5448 cp/call.cc:5458
+#: cp/call.cc:5407 cp/call.cc:5451 cp/call.cc:5461
 #, gcc-internal-format
 msgid "%<operator%s%>"
 msgstr ""
 
-#: cp/call.cc:5407
+#: cp/call.cc:5410
 #, gcc-internal-format
 msgid "%<operator%s%> in %<%E%s%>"
 msgstr ""
 
-#: cp/call.cc:5414
+#: cp/call.cc:5417
 #, gcc-internal-format
 msgid "%<operator[]%>"
 msgstr ""
 
-#: cp/call.cc:5417
+#: cp/call.cc:5420
 #, gcc-internal-format
 msgid "%<operator[]%> in %<%E[%E]%>"
 msgstr ""
 
-#: cp/call.cc:5425
+#: cp/call.cc:5428
 #, gcc-internal-format
 msgid "%qs"
 msgstr ""
 
-#: cp/call.cc:5428
+#: cp/call.cc:5431
 #, gcc-internal-format
 msgid "%qs in %<%s %E%>"
 msgstr ""
 
-#: cp/call.cc:5434
+#: cp/call.cc:5437
 #, gcc-internal-format
 msgid "%<operator %s%>"
 msgstr ""
 
-#: cp/call.cc:5437
+#: cp/call.cc:5440
 #, gcc-internal-format
 msgid "%<operator %s%> in %<%s%E%>"
 msgstr ""
 
-#: cp/call.cc:5452
+#: cp/call.cc:5455
 #, gcc-internal-format
 msgid "%<operator%s%> in %<%E %s %E%>"
 msgstr ""
 
-#: cp/call.cc:5461
+#: cp/call.cc:5464
 #, gcc-internal-format
 msgid "%<operator%s%> in %<%s%E%>"
 msgstr ""
 
-#: cp/call.cc:5574
+#: cp/call.cc:5577
 #, gcc-internal-format
 msgid "ISO C++ forbids omitting the middle term of a %<?:%> expression"
 msgstr ""
 
-#: cp/call.cc:5649
+#: cp/call.cc:5652
 #, 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:5666 cp/call.cc:5673
+#: cp/call.cc:5669 cp/call.cc:5676
 msgid "conversion of scalar %qH to vector %qI involves truncation"
 msgstr ""
 
-#: cp/call.cc:5729
+#: cp/call.cc:5732
 #, gcc-internal-format
 msgid "incompatible vector types in conditional expression: %qT, %qT and %qT"
 msgstr ""
 
-#: cp/call.cc:5781 cp/call.cc:6133 cp/call.cc:6153
+#: cp/call.cc:5784 cp/call.cc:6136 cp/call.cc:6156
 #, gcc-internal-format
 msgid "operands to %<?:%> of types %qT and %qT have unordered conversion rank"
 msgstr ""
 
-#: cp/call.cc:5853
+#: cp/call.cc:5856
 #, 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:5858
+#: cp/call.cc:5861
 #, 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:5907 cp/call.cc:6022 cp/call.cc:6256
+#: cp/call.cc:5910 cp/call.cc:6025 cp/call.cc:6259
 #, gcc-internal-format
 msgid "operands to %<?:%> have different types %qT and %qT"
 msgstr ""
 
-#: cp/call.cc:5911
+#: cp/call.cc:5914
 #, gcc-internal-format
 msgid "  and each type can be converted to the other"
 msgstr ""
 
-#: cp/call.cc:6161
+#: cp/call.cc:6164
 msgid ""
 "implicit conversion from %qH to %qI to match other result of conditional"
 msgstr ""
 
-#: cp/call.cc:6177
+#: cp/call.cc:6180
 #, gcc-internal-format
 msgid "enumerated mismatch in conditional expression: %qT vs %qT"
 msgstr ""
 
-#: cp/call.cc:6190
+#: cp/call.cc:6193
 #, gcc-internal-format
 msgid ""
 "conditional expression between enumeration type %qT and floating-point type "
 "%qT is deprecated"
 msgstr ""
 
-#: cp/call.cc:6195
+#: cp/call.cc:6198
 #, gcc-internal-format
 msgid ""
 "conditional expression between floating-point type %qT and enumeration type "
 "%qT is deprecated"
 msgstr ""
 
-#: cp/call.cc:6211
+#: cp/call.cc:6214
 #, gcc-internal-format
 msgid "enumerated and non-enumerated type in conditional expression"
 msgstr ""
 
-#: cp/call.cc:7062
+#: cp/call.cc:7065
 #, gcc-internal-format
 msgid "no %<%D(int)%> declared for postfix %qs, trying prefix operator instead"
 msgstr ""
 
-#: cp/call.cc:7064
+#: cp/call.cc:7067
 #, gcc-internal-format
 msgid "no %<%D(int)%> declared for postfix %qs"
 msgstr ""
 
-#: cp/call.cc:7144
+#: cp/call.cc:7147
 #, gcc-internal-format
 msgid ""
 "in C++20 this comparison calls the current function recursively with "
 "reversed arguments"
 msgstr ""
 
-#: cp/call.cc:7197
+#: cp/call.cc:7200
 #, gcc-internal-format
 msgid "return type of %qD is not %qs"
 msgstr ""
 
-#: cp/call.cc:7199
+#: cp/call.cc:7202
 #, gcc-internal-format
 msgid "used as rewritten candidate for comparison of %qT and %qT"
 msgstr ""
 
-#: cp/call.cc:7276
+#: cp/call.cc:7279
 #, gcc-internal-format
 msgid "comparison between %q#T and %q#T"
 msgstr ""
 
-#: cp/call.cc:7469
+#: cp/call.cc:7472
 #, gcc-internal-format
 msgid "no match for call to %<%T::operator[] (%A)%>"
 msgstr ""
 
-#: cp/call.cc:7483
+#: cp/call.cc:7486
 #, gcc-internal-format
 msgid "call of %<%T::operator[] (%A)%> is ambiguous"
 msgstr ""
 
-#: cp/call.cc:7764
+#: cp/call.cc:7767
 #, gcc-internal-format
 msgid ""
 "exception cleanup for this placement new selects non-placement %<operator "
 "delete%>"
 msgstr ""
 
-#: cp/call.cc:7767
+#: cp/call.cc:7770
 #, gcc-internal-format
 msgid ""
 "%qD is a usual (non-placement) deallocation function in C++14 (or with %<-"
 "fsized-deallocation%>)"
 msgstr ""
 
-#: cp/call.cc:7804
+#: cp/call.cc:7807
 #, gcc-internal-format
 msgid "%qD is a usual (non-placement) deallocation function"
 msgstr ""
 
-#: cp/call.cc:7998
+#: cp/call.cc:8001
 #, gcc-internal-format
 msgid "no corresponding deallocation function for %qD"
 msgstr ""
 
-#: cp/call.cc:8001
+#: cp/call.cc:8004
 #, 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:8010
+#: cp/call.cc:8013
 #, gcc-internal-format
 msgid "no suitable %<operator %s%> for %qT"
 msgstr ""
 
-#: cp/call.cc:8046
+#: cp/call.cc:8049
 #, gcc-internal-format
 msgid "%q#D is private within this context"
 msgstr ""
 
-#: cp/call.cc:8047 cp/decl.cc:8856
+#: cp/call.cc:8050 cp/decl.cc:8885
 #, gcc-internal-format
 msgid "declared private here"
 msgstr ""
 
-#: cp/call.cc:8052
+#: cp/call.cc:8055
 #, gcc-internal-format
 msgid "%q#D is protected within this context"
 msgstr ""
 
-#: cp/call.cc:8053 cp/decl.cc:8857
+#: cp/call.cc:8056 cp/decl.cc:8886
 #, gcc-internal-format
 msgid "declared protected here"
 msgstr ""
 
-#: cp/call.cc:8060
+#: cp/call.cc:8063
 #, gcc-internal-format
 msgid "%q#D is inaccessible within this context"
 msgstr ""
 
-#: cp/call.cc:8141
+#: cp/call.cc:8144
 #, gcc-internal-format
 msgid "passing NULL to non-pointer argument %P of %qD"
 msgstr ""
 
-#: cp/call.cc:8144 cp/call.cc:8163 cp/decl.cc:10528 cp/decl.cc:10536
+#: cp/call.cc:8147 cp/call.cc:8166 cp/decl.cc:10557 cp/decl.cc:10565
 #: cp/typeck.cc:4591
 #, gcc-internal-format
 msgid "  declared here"
 msgstr ""
 
-#: cp/call.cc:8148
+#: cp/call.cc:8151
 #, gcc-internal-format
 msgid "converting to non-pointer type %qT from NULL"
 msgstr ""
 
-#: cp/call.cc:8160
+#: cp/call.cc:8163
 #, gcc-internal-format
 msgid "converting %<false%> to pointer type for argument %P of %qD"
 msgstr ""
 
-#: cp/call.cc:8167
+#: cp/call.cc:8170
 #, gcc-internal-format
 msgid "converting %<false%> to pointer type %qT"
 msgstr ""
 
-#: cp/call.cc:8234
+#: cp/call.cc:8237
 #, gcc-internal-format
 msgid "  initializing argument %P of %qD"
 msgstr ""
 
-#: cp/call.cc:8255
+#: cp/call.cc:8258
 #, 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:8305
+#: cp/call.cc:8308
 #, gcc-internal-format
 msgid "too many braces around initializer for %qT"
 msgstr ""
 
-#: cp/call.cc:8316
+#: cp/call.cc:8319
 msgid "converting to %qH from %qI requires direct-initialization"
 msgstr ""
 
-#: cp/call.cc:8328
+#: cp/call.cc:8331
 msgid "converting to %qH from %qI with greater conversion rank"
 msgstr ""
 
-#: cp/call.cc:8333
+#: cp/call.cc:8338
 msgid "converting to %qH from %qI with unordered conversion ranks"
 msgstr ""
 
-#: cp/call.cc:8346
+#: cp/call.cc:8353
 msgid "invalid user-defined conversion from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:8386 cp/cvt.cc:227
+#: cp/call.cc:8393 cp/cvt.cc:227
 msgid "invalid conversion from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:8428 cp/call.cc:8435
+#: cp/call.cc:8435 cp/call.cc:8442
 #, gcc-internal-format
 msgid ""
 "converting to %qT from initializer list would use explicit constructor %qD"
 msgstr ""
 
-#: cp/call.cc:8431
+#: cp/call.cc:8438
 #, gcc-internal-format
 msgid "in C++11 and above a default constructor can be explicit"
 msgstr ""
 
-#: cp/call.cc:8701
+#: cp/call.cc:8708
 msgid "cannot bind rvalue reference of type %qH to lvalue of type %qI"
 msgstr ""
 
-#: cp/call.cc:8710
+#: cp/call.cc:8717
 msgid ""
 "cannot bind non-const lvalue reference of type %qH to a value of type %qI"
 msgstr ""
 
-#: cp/call.cc:8715
+#: cp/call.cc:8722
 msgid ""
 "cannot bind non-const lvalue reference of type %qH to an rvalue of type %qI"
 msgstr ""
 
 #. extype is volatile
-#: cp/call.cc:8718
+#: cp/call.cc:8725
 msgid "cannot bind lvalue reference of type %qH to an rvalue of type %qI"
 msgstr ""
 
-#: cp/call.cc:8731
+#: cp/call.cc:8738
 msgid "cannot bind reference of type %qH to %qI due to different array bounds"
 msgstr ""
 
-#: cp/call.cc:8734
+#: cp/call.cc:8741
 msgid "binding reference of type %qH to %qI discards qualifiers"
 msgstr ""
 
-#: cp/call.cc:8773
+#: cp/call.cc:8780
 #, gcc-internal-format
 msgid "cannot bind bit-field %qE to %qT"
 msgstr ""
 
-#: cp/call.cc:8776 cp/call.cc:8794
+#: cp/call.cc:8783 cp/call.cc:8801
 #, gcc-internal-format
 msgid "cannot bind packed field %qE to %qT"
 msgstr ""
 
-#: cp/call.cc:8779
+#: cp/call.cc:8786
 #, gcc-internal-format
 msgid "cannot bind rvalue %qE to %qT"
 msgstr ""
 
-#: cp/call.cc:8980
+#: cp/call.cc:8987
 msgid "implicit conversion from %qH to %qI when passing argument to function"
 msgstr ""
 
-#: cp/call.cc:9009 cp/cvt.cc:1992
+#: cp/call.cc:9016 cp/cvt.cc:1992
 #, gcc-internal-format
 msgid ""
 "scoped enum %qT passed through %<...%> as %qT before %<-fabi-version=6%>, "
 "%qT after"
 msgstr ""
 
-#: cp/call.cc:9053
+#: cp/call.cc:9060
 #, gcc-internal-format
 msgid ""
 "passing objects of non-trivially-copyable type %q#T through %<...%> is "
 "conditionally supported"
 msgstr ""
 
-#: cp/call.cc:9089
+#: cp/call.cc:9096
 #, gcc-internal-format
 msgid "cannot receive reference type %qT through %<...%>"
 msgstr ""
 
-#: cp/call.cc:9099
+#: cp/call.cc:9106
 #, gcc-internal-format
 msgid ""
 "receiving objects of non-trivially-copyable type %q#T through %<...%> is "
 "conditionally-supported"
 msgstr ""
 
-#: cp/call.cc:9167
+#: cp/call.cc:9174
 #, gcc-internal-format
 msgid "recursive evaluation of default argument for %q#D"
 msgstr ""
 
-#: cp/call.cc:9176
+#: cp/call.cc:9183
 #, gcc-internal-format
 msgid ""
 "call to %qD uses the default argument for parameter %P, which is not yet "
 "defined"
 msgstr ""
 
-#: cp/call.cc:9276
+#: cp/call.cc:9283
 #, gcc-internal-format
 msgid "argument of function call might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/call.cc:9346
+#: cp/call.cc:9353
 #, gcc-internal-format
 msgid "use of multiversioned function without a default"
 msgstr ""
 
-#: cp/call.cc:9971
+#: cp/call.cc:9978
 #, gcc-internal-format
 msgid "passing %qT as %<this%> argument discards qualifiers"
 msgstr ""
 
-#: cp/call.cc:9974 cp/call.cc:12754
+#: cp/call.cc:9981 cp/call.cc:12764
 #, gcc-internal-format
 msgid "  in call to %qD"
 msgstr ""
 
-#: cp/call.cc:9999
+#: cp/call.cc:10006
 #, gcc-internal-format
 msgid "%qT is not an accessible base of %qT"
 msgstr ""
 
-#: cp/call.cc:10204
+#: cp/call.cc:10211
 #, gcc-internal-format
 msgid "passing arguments to ellipsis of inherited constructor %qD"
 msgstr ""
 
-#: cp/call.cc:10339
+#: cp/call.cc:10346
 #, gcc-internal-format
 msgid ""
 "assignment from temporary %<initializer_list%> does not extend the lifetime "
 "of the underlying array"
 msgstr ""
 
-#: cp/call.cc:10735
+#: cp/call.cc:10743
 #, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with no trivial copy-assignment"
 msgstr ""
 
-#: cp/call.cc:10738
+#: cp/call.cc:10746
 #, gcc-internal-format
 msgid "%qD writing to an object of non-trivial type %#qT%s"
 msgstr ""
 
-#: cp/call.cc:10743
+#: cp/call.cc:10751
 #, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with %qs member %qD"
 msgstr ""
 
-#: cp/call.cc:10748
+#: cp/call.cc:10756
 #, gcc-internal-format
 msgid ""
 "%qD writing to an object of type %#qT containing a pointer to data member%s"
 msgstr ""
 
-#: cp/call.cc:10763
+#: cp/call.cc:10771
 #, gcc-internal-format
 msgid "; use assignment or value-initialization instead"
 msgstr ""
 
-#: cp/call.cc:10765
+#: cp/call.cc:10773
 #, gcc-internal-format
 msgid "; use assignment instead"
 msgstr ""
 
-#: cp/call.cc:10767
+#: cp/call.cc:10775
 #, gcc-internal-format
 msgid "; use value-initialization instead"
 msgstr ""
 
-#: cp/call.cc:10770
+#: cp/call.cc:10778
 #, gcc-internal-format
 msgid "%qD clearing an object of type %#qT with no trivial copy-assignment%s"
 msgstr ""
 
-#: cp/call.cc:10773
+#: cp/call.cc:10781
 #, gcc-internal-format
 msgid "%qD clearing an object of non-trivial type %#qT%s"
 msgstr ""
 
-#: cp/call.cc:10775
+#: cp/call.cc:10783
 #, gcc-internal-format
 msgid "%qD clearing an object of type %#qT containing a pointer-to-member%s"
 msgstr ""
 
-#: cp/call.cc:10796
+#: cp/call.cc:10804
 #, gcc-internal-format
 msgid "; use copy-assignment or copy-initialization instead"
 msgstr ""
 
-#: cp/call.cc:10798
+#: cp/call.cc:10806
 #, gcc-internal-format
 msgid "; use copy-assignment instead"
 msgstr ""
 
-#: cp/call.cc:10800
+#: cp/call.cc:10808
 #, gcc-internal-format
 msgid "; use copy-initialization instead"
 msgstr ""
 
-#: cp/call.cc:10803
+#: cp/call.cc:10811
 #, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with no trivial copy-assignment%s"
 msgstr ""
 
-#: cp/call.cc:10806
+#: cp/call.cc:10814
 #, gcc-internal-format
 msgid "%qD writing to an object of non-trivially copyable type %#qT%s"
 msgstr ""
 
-#: cp/call.cc:10809
+#: cp/call.cc:10817
 #, gcc-internal-format
 msgid "%qD writing to an object with a deleted copy constructor"
 msgstr ""
 
-#: cp/call.cc:10820
+#: cp/call.cc:10828
 #, gcc-internal-format
 msgid "%qD copying an object of non-trivial type %#qT from an array of %#qT"
 msgstr ""
 
-#: cp/call.cc:10832
+#: cp/call.cc:10840
 #, 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:10851
+#: cp/call.cc:10859
 #, gcc-internal-format
 msgid ""
 "%qD writing to an object of a non-trivial type %#qT leaves %wu bytes "
 "unchanged"
 msgstr ""
 
-#: cp/call.cc:10854
+#: cp/call.cc:10862
 #, gcc-internal-format
 msgid ""
 "%qD writing to an object of a non-trivial type %#qT leaves %wu byte unchanged"
 msgstr ""
 
-#: cp/call.cc:10864
+#: cp/call.cc:10872
 #, gcc-internal-format
 msgid ""
 "%qD moving an object of non-trivially copyable type %#qT; use %<new%> and "
 "%<delete%> instead"
 msgstr ""
 
-#: cp/call.cc:10867
+#: cp/call.cc:10875
 #, gcc-internal-format
 msgid ""
 "%qD moving an object of type %#qT with deleted copy constructor; use %<new%> "
 "and %<delete%> instead"
 msgstr ""
 
-#: cp/call.cc:10870
+#: cp/call.cc:10878
 #, gcc-internal-format
 msgid "%qD moving an object of type %#qT with deleted destructor"
 msgstr ""
 
-#: cp/call.cc:10879
+#: cp/call.cc:10887
 #, 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:10901
+#: cp/call.cc:10909
 #, gcc-internal-format
 msgid "%#qT declared here"
 msgstr ""
 
-#: cp/call.cc:10955
+#: cp/call.cc:10963
 #, gcc-internal-format
 msgid ""
 "argument %u in call to function %qE has pointer to a non-trivially-copyable "
 "type (%qT)"
 msgstr ""
 
-#: cp/call.cc:11022
+#: cp/call.cc:11030
 #, gcc-internal-format
 msgid "constructor delegates to itself"
 msgstr ""
 
-#: cp/call.cc:11297 cp/typeck.cc:10271
+#: cp/call.cc:11305 cp/typeck.cc:10277
 msgid "cannot convert %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:11319
+#: cp/call.cc:11327
 #, gcc-internal-format
 msgid "no matching function for call to %<%T::operator %T(%A)%#V%>"
 msgstr ""
 
-#: cp/call.cc:11351
+#: cp/call.cc:11359
 #, gcc-internal-format
 msgid "no matching function for call to %<%T::%s%E(%A)%#V%>"
 msgstr ""
 
-#: cp/call.cc:11400
+#: cp/call.cc:11408
 #, gcc-internal-format
 msgid "call to non-function %qD"
 msgstr ""
 
-#: cp/call.cc:11438 cp/pt.cc:16771 cp/typeck.cc:3492
+#: cp/call.cc:11446 cp/pt.cc:16888 cp/typeck.cc:3492
 #, gcc-internal-format
 msgid "cannot call constructor %<%T::%D%> directly"
 msgstr ""
 
-#: cp/call.cc:11440
+#: cp/call.cc:11448
 #, gcc-internal-format
 msgid "for a function-style cast, remove the redundant %<::%D%>"
 msgstr ""
 
-#: cp/call.cc:11628
+#: cp/call.cc:11636
 #, gcc-internal-format
 msgid "no matching function for call to %<%s(%A)%>"
 msgstr ""
 
-#: cp/call.cc:11631
+#: cp/call.cc:11639
 #, gcc-internal-format
 msgid "call of overloaded %<%s(%A)%> is ambiguous"
 msgstr ""
 
-#: cp/call.cc:11654
+#: cp/call.cc:11662
 #, gcc-internal-format
 msgid "pure virtual %q#D called from non-static data member initializer"
 msgstr ""
 
-#: cp/call.cc:11659
+#: cp/call.cc:11667
 #, gcc-internal-format
 msgid "pure virtual %q#D called from constructor"
 msgstr ""
 
-#: cp/call.cc:11660
+#: cp/call.cc:11668
 #, gcc-internal-format
 msgid "pure virtual %q#D called from destructor"
 msgstr ""
 
-#: cp/call.cc:11683
+#: cp/call.cc:11691
 #, gcc-internal-format
 msgid "cannot call member function %qD without object"
 msgstr ""
 
-#: cp/call.cc:12752
+#: cp/call.cc:12762
 #, gcc-internal-format
 msgid "passing %qT chooses %qT over %qT"
 msgstr ""
 
-#: cp/call.cc:12778
+#: cp/call.cc:12788
 #, gcc-internal-format
 msgid ""
 "C++20 says that these are ambiguous, even though the second is reversed:"
 msgstr ""
 
-#: cp/call.cc:12801
+#: cp/call.cc:12811
 #, gcc-internal-format
 msgid "try making the operator a %<const%> member function"
 msgstr ""
 
-#: cp/call.cc:12864
+#: cp/call.cc:12874
 #, gcc-internal-format
 msgid "choosing %qD over %qD"
 msgstr ""
 
-#: cp/call.cc:12865
+#: cp/call.cc:12875
 msgid "  for conversion from %qH to %qI"
 msgstr ""
 
-#: cp/call.cc:12868
+#: cp/call.cc:12878
 #, gcc-internal-format
 msgid "  because conversion sequence for the argument is better"
 msgstr ""
 
-#: cp/call.cc:13118
+#: cp/call.cc:13128
 #, gcc-internal-format
 msgid "default argument mismatch in overload resolution"
 msgstr ""
 
-#: cp/call.cc:13122
+#: cp/call.cc:13132
 #, gcc-internal-format
 msgid " candidate 1: %q#F"
 msgstr ""
 
-#: cp/call.cc:13124
+#: cp/call.cc:13134
 #, gcc-internal-format
 msgid " candidate 2: %q#F"
 msgstr ""
 
-#: cp/call.cc:13170
+#: cp/call.cc:13180
 #, 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:13571
+#: cp/call.cc:13581
 #, gcc-internal-format
 msgid "a temporary bound to %qD only persists until the constructor exits"
 msgstr ""
 
-#: cp/call.cc:13726
+#: cp/call.cc:13736
 msgid ""
 "invalid initialization of non-const reference of type %qH from an rvalue of "
 "type %qI"
 msgstr ""
 
-#: cp/call.cc:13730
+#: cp/call.cc:13740
 msgid ""
 "invalid initialization of reference of type %qH from expression of type %qI"
 msgstr ""
 
-#: cp/call.cc:13924
+#: cp/call.cc:14016
 #, gcc-internal-format
 msgid "possibly dangling reference to a temporary"
 msgstr ""
 
-#: cp/call.cc:13925
+#: cp/call.cc:14017
 #, gcc-internal-format
 msgid "the temporary was destroyed at the end of the full expression %qE"
 msgstr ""
@@ -52604,8 +52667,8 @@ msgstr ""
 msgid "%q#D cannot be overloaded with %q#D"
 msgstr ""
 
-#: cp/class.cc:1233 cp/decl.cc:1869 cp/decl.cc:1881 cp/decl.cc:1906
-#: cp/decl.cc:1929 cp/name-lookup.cc:2720 cp/name-lookup.cc:3034
+#: cp/class.cc:1233 cp/decl.cc:1870 cp/decl.cc:1882 cp/decl.cc:1907
+#: cp/decl.cc:1930 cp/name-lookup.cc:2720 cp/name-lookup.cc:3034
 #, gcc-internal-format
 msgid "previous declaration %q#D"
 msgstr ""
@@ -52646,7 +52709,7 @@ msgid "%qD inherits the %E ABI tag that %qT (used in its return type) has"
 msgstr ""
 
 #: cp/class.cc:1468 cp/class.cc:1475 cp/class.cc:1482 cp/class.cc:1494
-#: cp/cvt.cc:1102 rust/backend/rust-tree.cc:644
+#: cp/cvt.cc:1102 rust/backend/rust-tree.cc:645
 #, gcc-internal-format
 msgid "%qT declared here"
 msgstr ""
@@ -52887,51 +52950,51 @@ msgstr ""
 msgid "method declared %qE overriding %qE method"
 msgstr ""
 
-#: cp/class.cc:5932 cp/constexpr.cc:301
+#: cp/class.cc:5932 cp/constexpr.cc:302
 #, gcc-internal-format
 msgid ""
 "enclosing class of %<constexpr%> non-static member function %q+#D is not a "
 "literal type"
 msgstr ""
 
-#: cp/class.cc:5958 rust/backend/rust-tree.cc:6047
+#: cp/class.cc:5958 rust/backend/rust-tree.cc:6024
 #, gcc-internal-format
 msgid "%q+T is not literal because:"
 msgstr ""
 
-#: cp/class.cc:5961 rust/backend/rust-tree.cc:6050
+#: cp/class.cc:5961 rust/backend/rust-tree.cc:6027
 #, gcc-internal-format
 msgid "  %qT is a closure type, which is only literal in C++17 and later"
 msgstr ""
 
-#: cp/class.cc:5964 rust/backend/rust-tree.cc:6058
+#: cp/class.cc:5964 rust/backend/rust-tree.cc:6035
 #, gcc-internal-format
 msgid "  %q+T has a non-trivial destructor"
 msgstr ""
 
-#: cp/class.cc:5967 rust/backend/rust-tree.cc:6055
+#: cp/class.cc:5967 rust/backend/rust-tree.cc:6032
 #, gcc-internal-format
 msgid "  %q+T does not have %<constexpr%> destructor"
 msgstr ""
 
-#: cp/class.cc:5975 rust/backend/rust-tree.cc:6063
+#: cp/class.cc:5975 rust/backend/rust-tree.cc:6040
 #, 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:6008 rust/backend/rust-tree.cc:6095
+#: cp/class.cc:6008 rust/backend/rust-tree.cc:6072
 #, gcc-internal-format
 msgid "  base class %qT of %q+T is non-literal"
 msgstr ""
 
-#: cp/class.cc:6023 rust/backend/rust-tree.cc:6109
+#: cp/class.cc:6023 rust/backend/rust-tree.cc:6086
 #, gcc-internal-format
 msgid "  non-static data member %qD has non-literal type"
 msgstr ""
 
-#: cp/class.cc:6030 rust/backend/rust-tree.cc:6116
+#: cp/class.cc:6030 rust/backend/rust-tree.cc:6093
 #, gcc-internal-format
 msgid "  non-static data member %qD has volatile type"
 msgstr ""
@@ -52951,212 +53014,212 @@ msgstr ""
 msgid "non-static const member %q#D in class without a constructor"
 msgstr ""
 
-#: cp/class.cc:6530
+#: cp/class.cc:6538
 #, 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:6534
+#: cp/class.cc:6542
 #, gcc-internal-format
 msgid ""
 "offset of %qD for %<-std=c++14%> and up changes in %<-fabi-version=17%> (GCC "
 "12)"
 msgstr ""
 
-#: cp/class.cc:6574
+#: cp/class.cc:6582
 #, gcc-internal-format
 msgid "direct base %qT inaccessible in %qT due to ambiguity"
 msgstr ""
 
-#: cp/class.cc:6586
+#: cp/class.cc:6594
 #, gcc-internal-format
 msgid "virtual base %qT inaccessible in %qT due to ambiguity"
 msgstr ""
 
-#: cp/class.cc:6828
+#: cp/class.cc:6836
 #, gcc-internal-format
 msgid ""
 "offset of %qD is not ABI-compliant and may change in a future version of GCC"
 msgstr ""
 
-#: cp/class.cc:7023
+#: cp/class.cc:7031
 #, gcc-internal-format
 msgid "size of type %qT is too large (%qE bytes)"
 msgstr ""
 
-#: cp/class.cc:7309
+#: cp/class.cc:7317
 #, gcc-internal-format
 msgid "invalid use of %q#T with a zero-size array in %q#D"
 msgstr ""
 
-#: cp/class.cc:7311
+#: cp/class.cc:7319
 #, gcc-internal-format
 msgid "invalid use of %q#T with a flexible array member in %q#T"
 msgstr ""
 
-#: cp/class.cc:7316
+#: cp/class.cc:7324
 #, gcc-internal-format
 msgid "array member %q#D declared here"
 msgstr ""
 
-#: cp/class.cc:7344
+#: cp/class.cc:7352
 #, gcc-internal-format
 msgid "zero-size array member %qD not at end of %q#T"
 msgstr ""
 
-#: cp/class.cc:7346
+#: cp/class.cc:7354
 #, gcc-internal-format
 msgid "zero-size array member %qD in an otherwise empty %q#T"
 msgstr ""
 
-#: cp/class.cc:7355 cp/class.cc:7386
+#: cp/class.cc:7363 cp/class.cc:7394
 #, gcc-internal-format
 msgid "in the definition of %q#T"
 msgstr ""
 
-#: cp/class.cc:7363
+#: cp/class.cc:7371
 #, gcc-internal-format
 msgid "flexible array member %qD not at end of %q#T"
 msgstr ""
 
-#: cp/class.cc:7365
+#: cp/class.cc:7373
 #, gcc-internal-format
 msgid "flexible array member %qD in an otherwise empty %q#T"
 msgstr ""
 
-#: cp/class.cc:7384
+#: cp/class.cc:7392
 #, gcc-internal-format
 msgid "next member %q#D declared here"
 msgstr ""
 
-#: cp/class.cc:7498 cp/decl.cc:17108 cp/parser.cc:26952
+#: cp/class.cc:7506 cp/decl.cc:17143 cp/parser.cc:26971
 #, gcc-internal-format
 msgid "redefinition of %q#T"
 msgstr ""
 
-#: cp/class.cc:7642
+#: cp/class.cc:7650
 #, gcc-internal-format
 msgid "%q#T has virtual functions and accessible non-virtual destructor"
 msgstr ""
 
-#: cp/class.cc:7670
+#: cp/class.cc:7678
 #, gcc-internal-format
 msgid "type transparent %q#T does not have any fields"
 msgstr ""
 
-#: cp/class.cc:7676
+#: cp/class.cc:7684
 #, gcc-internal-format
 msgid "type transparent class %qT has base classes"
 msgstr ""
 
-#: cp/class.cc:7680
+#: cp/class.cc:7688
 #, gcc-internal-format
 msgid "type transparent class %qT has virtual functions"
 msgstr ""
 
-#: cp/class.cc:7686
+#: cp/class.cc:7694
 #, 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:7835
+#: cp/class.cc:7843
 #, gcc-internal-format
 msgid "definition of %qD does not match %<#include <initializer_list>%>"
 msgstr ""
 
-#: cp/class.cc:7846
+#: cp/class.cc:7854
 #, gcc-internal-format
 msgid "trying to finish struct, but kicked out due to previous parse errors"
 msgstr ""
 
-#: cp/class.cc:8353
+#: cp/class.cc:8361
 #, gcc-internal-format
 msgid "language string %<\"%E\"%> not recognized"
 msgstr ""
 
-#: cp/class.cc:8443
+#: cp/class.cc:8451
 #, gcc-internal-format
 msgid "cannot resolve overloaded function %qD based on conversion to type %qT"
 msgstr ""
 
-#: cp/class.cc:8601
+#: cp/class.cc:8609
 #, gcc-internal-format
 msgid "no matches converting function %qD to type %q#T"
 msgstr ""
 
-#: cp/class.cc:8628
+#: cp/class.cc:8636
 #, gcc-internal-format
 msgid "converting overloaded function %qD to type %q#T is ambiguous"
 msgstr ""
 
-#: cp/class.cc:8655
+#: cp/class.cc:8663
 #, gcc-internal-format
 msgid "assuming pointer to member %qD"
 msgstr ""
 
-#: cp/class.cc:8658
+#: cp/class.cc:8666
 #, gcc-internal-format
 msgid "(a pointer to member can only be formed with %<&%E%>)"
 msgstr ""
 
-#: cp/class.cc:8734 cp/class.cc:8776
+#: cp/class.cc:8744 cp/class.cc:8786
 #, gcc-internal-format
 msgid "not enough type information"
 msgstr ""
 
-#: cp/class.cc:8754
+#: cp/class.cc:8764
 #, gcc-internal-format
 msgid "cannot convert %qE from type %qT to type %qT"
 msgstr ""
 
-#: cp/class.cc:9062
+#: cp/class.cc:9072
 #, gcc-internal-format
 msgid "declaration of %q#D changes meaning of %qD"
 msgstr ""
 
-#: cp/class.cc:9065
+#: cp/class.cc:9075
 #, gcc-internal-format
 msgid "used here to mean %q#D"
 msgstr ""
 
-#: cp/constexpr.cc:111
+#: cp/constexpr.cc:112
 #, gcc-internal-format
 msgid "the type %qT of %<constexpr%> variable %qD is not literal"
 msgstr ""
 
-#: cp/constexpr.cc:122
+#: cp/constexpr.cc:123
 #, gcc-internal-format
 msgid ""
 "variable %qD of non-literal type %qT in %<constexpr%> function only "
 "available with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr ""
 
-#: cp/constexpr.cc:135
+#: cp/constexpr.cc:136
 #, gcc-internal-format
 msgid "%<constexpr%> variable %qD has variably-modified type %qT"
 msgstr ""
 
-#: cp/constexpr.cc:235
+#: cp/constexpr.cc:236
 #, gcc-internal-format
 msgid "inherited constructor %qD is not %<constexpr%>"
 msgstr ""
 
 #. constexpr_fundef_p
-#: cp/constexpr.cc:249
+#: cp/constexpr.cc:250
 #, gcc-internal-format
 msgid "invalid type for parameter %d of %<constexpr%> function %q+#D"
 msgstr ""
 
-#: cp/constexpr.cc:262
+#: cp/constexpr.cc:263
 #, gcc-internal-format
 msgid "lambdas are implicitly %<constexpr%> only in C++17 and later"
 msgstr ""
 
-#: cp/constexpr.cc:271 cp/decl.cc:14212
+#: cp/constexpr.cc:272 cp/decl.cc:14246
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> destructors only available with %<-std=c++20%> or %<-std=gnu+"
@@ -53164,489 +53227,489 @@ msgid ""
 msgstr ""
 
 #. constexpr_fundef_p
-#: cp/constexpr.cc:285
+#: cp/constexpr.cc:286
 #, gcc-internal-format
 msgid "invalid return type %qT of %<constexpr%> function %q+D"
 msgstr ""
 
-#: cp/constexpr.cc:312
+#: cp/constexpr.cc:313
 #, gcc-internal-format
 msgid "%q#T has virtual base classes"
 msgstr ""
 
-#: cp/constexpr.cc:570
+#: cp/constexpr.cc:571
 #, gcc-internal-format
 msgid "%<constexpr%> constructor does not have empty body"
 msgstr ""
 
-#: cp/constexpr.cc:830
+#: cp/constexpr.cc:831
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> constructor for union %qT must initialize exactly one non-"
 "static data member"
 msgstr ""
 
-#: cp/constexpr.cc:891
+#: cp/constexpr.cc:892
 #, gcc-internal-format
 msgid ""
 "member %qD must be initialized by mem-initializer in %<constexpr%> "
 "constructor"
 msgstr ""
 
-#: cp/constexpr.cc:954
+#: cp/constexpr.cc:955
 #, gcc-internal-format
 msgid "body of %<constexpr%> function %qD not a return-statement"
 msgstr ""
 
-#: cp/constexpr.cc:1082
+#: cp/constexpr.cc:1083
 #, gcc-internal-format
 msgid "%qD is not usable as a %<constexpr%> function because:"
 msgstr ""
 
-#: cp/constexpr.cc:1534 cp/constexpr.cc:3154
-#: rust/backend/rust-constexpr.cc:3326 rust/backend/rust-constexpr.cc:3588
+#: cp/constexpr.cc:1536 cp/constexpr.cc:3141
+#: rust/backend/rust-constexpr.cc:3324 rust/backend/rust-constexpr.cc:3586
 #, gcc-internal-format
 msgid "%<constexpr%> call flows off the end of the function"
 msgstr ""
 
-#: cp/constexpr.cc:1536 cp/constexpr.cc:1635 cp/constexpr.cc:1644
-#: cp/constexpr.cc:3375 rust/backend/rust-constexpr.cc:3331
-#: rust/backend/rust-constexpr.cc:3341 rust/backend/rust-constexpr.cc:4332
+#: cp/constexpr.cc:1538 cp/constexpr.cc:1637 cp/constexpr.cc:1646
+#: cp/constexpr.cc:3362 rust/backend/rust-constexpr.cc:3329
+#: rust/backend/rust-constexpr.cc:3339 rust/backend/rust-constexpr.cc:4320
 #, gcc-internal-format
 msgid "%q+E is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:1986
+#: cp/constexpr.cc:1988
 #, gcc-internal-format
 msgid "the comparison reduces to %qE"
 msgstr ""
 
-#: cp/constexpr.cc:1989
+#: cp/constexpr.cc:1991
 #, gcc-internal-format
 msgid "%qE evaluates to false"
 msgstr ""
 
-#: cp/constexpr.cc:2068
+#: cp/constexpr.cc:2070
 #, gcc-internal-format
 msgid "failed %<assume%> attribute assumption"
 msgstr ""
 
-#: cp/constexpr.cc:2103 cp/constexpr.cc:9075
-#: rust/backend/rust-constexpr.cc:5766
+#: cp/constexpr.cc:2105 cp/constexpr.cc:9121
+#: rust/backend/rust-constexpr.cc:5754
 #, gcc-internal-format
 msgid "call to internal function %qE"
 msgstr ""
 
-#: cp/constexpr.cc:2157 rust/backend/rust-constexpr.cc:2615
+#: cp/constexpr.cc:2159 rust/backend/rust-constexpr.cc:2613
 #, gcc-internal-format
 msgid "modifying a const object %qE is not allowed in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:2159 rust/backend/rust-constexpr.cc:2618
+#: cp/constexpr.cc:2161 rust/backend/rust-constexpr.cc:2616
 #, gcc-internal-format
 msgid "originally declared %<const%> here"
 msgstr ""
 
-#: cp/constexpr.cc:2384 cp/constexpr.cc:2439 cp/constexpr.cc:2471
-#: cp/constexpr.cc:2492
+#: cp/constexpr.cc:2386 cp/constexpr.cc:2441 cp/constexpr.cc:2473
+#: cp/constexpr.cc:2494
 #, gcc-internal-format
 msgid "reference %<dynamic_cast%> failed"
 msgstr ""
 
-#: cp/constexpr.cc:2385
+#: cp/constexpr.cc:2387
 #, gcc-internal-format
 msgid "dynamic type %qT of its operand does not have a base class of type %qT"
 msgstr ""
 
-#: cp/constexpr.cc:2409
+#: cp/constexpr.cc:2411
 #, gcc-internal-format
 msgid "virtual table pointer is used uninitialized"
 msgstr ""
 
-#: cp/constexpr.cc:2440 cp/constexpr.cc:2472
+#: cp/constexpr.cc:2442 cp/constexpr.cc:2474
 #, gcc-internal-format
 msgid ""
 "static type %qT of its operand is a non-public base class of dynamic type %qT"
 msgstr ""
 
-#: cp/constexpr.cc:2494
+#: cp/constexpr.cc:2496
 #, gcc-internal-format
 msgid "%qT is an ambiguous base class of dynamic type %qT of its operand"
 msgstr ""
 
-#: cp/constexpr.cc:2497
+#: cp/constexpr.cc:2499
 #, gcc-internal-format
 msgid ""
 "dynamic type %qT of its operand does not have an unambiguous public base "
 "class %qT"
 msgstr ""
 
-#: cp/constexpr.cc:2574 cp/constexpr.cc:2848 cp/constexpr.cc:9107
-#: rust/backend/rust-constexpr.cc:5797
+#: cp/constexpr.cc:2576 cp/constexpr.cc:2850 cp/constexpr.cc:9153
+#: rust/backend/rust-constexpr.cc:5785
 #, gcc-internal-format
 msgid "call to non-%<constexpr%> function %qD"
 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:2580
+#: cp/constexpr.cc:2582
 #, gcc-internal-format
 msgid "calling constexpr member function %qD through virtual base subobject"
 msgstr ""
 
-#: cp/constexpr.cc:2696 rust/backend/rust-constexpr.cc:3386
+#: cp/constexpr.cc:2698 rust/backend/rust-constexpr.cc:3384
 #, gcc-internal-format
 msgid "expression %qE does not designate a %<constexpr%> function"
 msgstr ""
 
-#: cp/constexpr.cc:2769
+#: cp/constexpr.cc:2771
 #, gcc-internal-format
 msgid "array deallocation of object allocated with non-array allocation"
 msgstr ""
 
-#: cp/constexpr.cc:2773 cp/constexpr.cc:2795
+#: cp/constexpr.cc:2775 cp/constexpr.cc:2797
 #, gcc-internal-format
 msgid "allocation performed here"
 msgstr ""
 
-#: cp/constexpr.cc:2791
+#: cp/constexpr.cc:2793
 #, gcc-internal-format
 msgid "non-array deallocation of object allocated with array allocation"
 msgstr ""
 
-#: cp/constexpr.cc:2808
+#: cp/constexpr.cc:2810
 #, gcc-internal-format
 msgid "deallocation of already deallocated storage"
 msgstr ""
 
-#: cp/constexpr.cc:2815
+#: cp/constexpr.cc:2817
 #, gcc-internal-format
 msgid "deallocation of storage that was not previously allocated"
 msgstr ""
 
-#: cp/constexpr.cc:2944 rust/backend/rust-constexpr.cc:3441
+#: cp/constexpr.cc:2931 rust/backend/rust-constexpr.cc:3439
 #, gcc-internal-format
 msgid "%qD called in a constant expression before its definition is complete"
 msgstr ""
 
-#: cp/constexpr.cc:2951
+#: cp/constexpr.cc:2938
 #, gcc-internal-format
 msgid "%qD called in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:2955 rust/backend/rust-constexpr.cc:3455
+#: cp/constexpr.cc:2942 rust/backend/rust-constexpr.cc:3453
 #, gcc-internal-format
 msgid "%qD used before its definition"
 msgstr ""
 
-#: cp/constexpr.cc:3027 rust/backend/rust-constexpr.cc:3497
+#: cp/constexpr.cc:3014 rust/backend/rust-constexpr.cc:3495
 #, gcc-internal-format
 msgid "call has circular dependency"
 msgstr ""
 
-#: cp/constexpr.cc:3038 rust/backend/rust-constexpr.cc:3508
+#: cp/constexpr.cc:3025 rust/backend/rust-constexpr.cc:3506
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> evaluation depth exceeds maximum of %d (use %<-fconstexpr-"
 "depth=%> to increase the maximum)"
 msgstr ""
 
-#: cp/constexpr.cc:3415
+#: cp/constexpr.cc:3402
 #, gcc-internal-format
 msgid "right operand of shift expression %q+E is negative"
 msgstr ""
 
-#: cp/constexpr.cc:3422
+#: cp/constexpr.cc:3409
 #, 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:3445
+#: cp/constexpr.cc:3432
 #, gcc-internal-format
 msgid "left operand of shift expression %q+E is negative"
 msgstr ""
 
-#: cp/constexpr.cc:3464
+#: cp/constexpr.cc:3451
 #, gcc-internal-format
 msgid "shift expression %q+E overflows"
 msgstr ""
 
-#: cp/constexpr.cc:3663
+#: cp/constexpr.cc:3650
 #, gcc-internal-format
 msgid "arithmetic involving a null pointer in %qE"
 msgstr ""
 
-#: cp/constexpr.cc:4085 rust/backend/rust-constexpr.cc:4407
+#: cp/constexpr.cc:4072 rust/backend/rust-constexpr.cc:4395
 #, gcc-internal-format
 msgid ""
 "array subscript value %qE is outside the bounds of array %qD of type %qT"
 msgstr ""
 
-#: cp/constexpr.cc:4088 rust/backend/rust-constexpr.cc:4412
+#: cp/constexpr.cc:4075 rust/backend/rust-constexpr.cc:4400
 #, gcc-internal-format
 msgid ""
 "nonzero array subscript %qE is used with array %qD of type %qT with unknown "
 "bounds"
 msgstr ""
 
-#: cp/constexpr.cc:4093 rust/backend/rust-constexpr.cc:4419
+#: cp/constexpr.cc:4080 rust/backend/rust-constexpr.cc:4407
 #, gcc-internal-format
 msgid "array subscript value %qE is outside the bounds of array type %qT"
 msgstr ""
 
-#: cp/constexpr.cc:4096 rust/backend/rust-constexpr.cc:4424
+#: cp/constexpr.cc:4083 rust/backend/rust-constexpr.cc:4412
 #, gcc-internal-format
 msgid ""
 "nonzero array subscript %qE is used with array of type %qT with unknown "
 "bounds"
 msgstr ""
 
-#: cp/constexpr.cc:4281 rust/backend/rust-constexpr.cc:1666
+#: cp/constexpr.cc:4268 rust/backend/rust-constexpr.cc:1664
 #, gcc-internal-format
 msgid "accessing uninitialized array element"
 msgstr ""
 
-#: cp/constexpr.cc:4336 rust/backend/rust-constexpr.cc:1723
+#: cp/constexpr.cc:4323 rust/backend/rust-constexpr.cc:1721
 #, gcc-internal-format
 msgid "dereferencing a null pointer in %qE"
 msgstr ""
 
-#: cp/constexpr.cc:4355 cp/constexpr.cc:4455 cp/constexpr.cc:4467
-#: cp/constexpr.cc:7010 cp/constexpr.cc:7108 cp/constexpr.cc:9025
-#: rust/backend/rust-constexpr.cc:1737 rust/backend/rust-constexpr.cc:1982
-#: rust/backend/rust-constexpr.cc:2224 rust/backend/rust-constexpr.cc:4751
-#: rust/backend/rust-constexpr.cc:5720
+#: cp/constexpr.cc:4342 cp/constexpr.cc:4442 cp/constexpr.cc:4454
+#: cp/constexpr.cc:6998 cp/constexpr.cc:7096 cp/constexpr.cc:9071
+#: rust/backend/rust-constexpr.cc:1735 rust/backend/rust-constexpr.cc:1980
+#: rust/backend/rust-constexpr.cc:2222 rust/backend/rust-constexpr.cc:4739
+#: rust/backend/rust-constexpr.cc:5708
 #, gcc-internal-format
 msgid "%qE is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:4363 rust/backend/rust-constexpr.cc:1743
+#: cp/constexpr.cc:4350 rust/backend/rust-constexpr.cc:1741
 #, gcc-internal-format
 msgid "mutable %qD is not usable in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:4393 cp/constexpr.cc:4415
-#: rust/backend/rust-constexpr.cc:1773 rust/backend/rust-constexpr.cc:1796
+#: cp/constexpr.cc:4380 cp/constexpr.cc:4402
+#: rust/backend/rust-constexpr.cc:1771 rust/backend/rust-constexpr.cc:1794
 #, gcc-internal-format
 msgid "accessing uninitialized member %qD"
 msgstr ""
 
-#: cp/constexpr.cc:4395 rust/backend/rust-constexpr.cc:1775
+#: cp/constexpr.cc:4382 rust/backend/rust-constexpr.cc:1773
 #, gcc-internal-format
 msgid ""
 "accessing %qD member instead of initialized %qD member in constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:4533
+#: cp/constexpr.cc:4520
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT is a union type"
 msgstr ""
 
-#: cp/constexpr.cc:4536
+#: cp/constexpr.cc:4523
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT contains a union type"
 msgstr ""
 
-#: cp/constexpr.cc:4547
+#: cp/constexpr.cc:4534
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT is a pointer type"
 msgstr ""
 
-#: cp/constexpr.cc:4550
+#: cp/constexpr.cc:4537
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT contains a pointer type"
 msgstr ""
 
-#: cp/constexpr.cc:4561
+#: cp/constexpr.cc:4548
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT is a reference type"
 msgstr ""
 
-#: cp/constexpr.cc:4564
+#: cp/constexpr.cc:4551
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT contains a reference type"
 msgstr ""
 
-#: cp/constexpr.cc:4575
+#: cp/constexpr.cc:4562
 #, gcc-internal-format
 msgid ""
 "%qs is not a constant expression because %qT is a pointer to member type"
 msgstr ""
 
-#: cp/constexpr.cc:4579
+#: cp/constexpr.cc:4566
 #, gcc-internal-format
 msgid ""
 "%qs is not a constant expression because %qT contains a pointer to member "
 "type"
 msgstr ""
 
-#: cp/constexpr.cc:4590
+#: cp/constexpr.cc:4577
 #, gcc-internal-format
 msgid "%qs is not a constant expression because %qT is volatile"
 msgstr ""
 
-#: cp/constexpr.cc:4593
+#: cp/constexpr.cc:4580
 #, gcc-internal-format
 msgid ""
 "%qs is not a constant expression because %qT contains a volatile subobject"
 msgstr ""
 
-#: cp/constexpr.cc:4746
+#: cp/constexpr.cc:4733
 #, gcc-internal-format
 msgid "%qs cannot be constant evaluated on the target"
 msgstr ""
 
-#: cp/constexpr.cc:4755 cp/constexpr.cc:4765
+#: cp/constexpr.cc:4742 cp/constexpr.cc:4752
 #, gcc-internal-format
 msgid "%qs cannot be constant evaluated because the type is too large"
 msgstr ""
 
-#: cp/constexpr.cc:4785
+#: cp/constexpr.cc:4772
 #, gcc-internal-format
 msgid "%qs cannot be constant evaluated because the argument cannot be encoded"
 msgstr ""
 
-#: cp/constexpr.cc:4824
+#: cp/constexpr.cc:4811
 #, gcc-internal-format
 msgid "%qs accessing uninitialized byte at offset %d"
 msgstr ""
 
-#: cp/constexpr.cc:4836
+#: cp/constexpr.cc:4823
 #, gcc-internal-format
 msgid ""
 "%qs cannot be constant evaluated because the argument cannot be interpreted"
 msgstr ""
 
-#: cp/constexpr.cc:5646 cp/constexpr.cc:7700 rust/backend/rust-constexpr.cc:874
-#: rust/backend/rust-constexpr.cc:2494
+#: cp/constexpr.cc:5633 cp/constexpr.cc:7717 rust/backend/rust-constexpr.cc:872
+#: rust/backend/rust-constexpr.cc:2492
 #, gcc-internal-format
 msgid "dereferencing a null pointer"
 msgstr ""
 
-#: cp/constexpr.cc:5666 rust/backend/rust-constexpr.cc:894
+#: cp/constexpr.cc:5653 rust/backend/rust-constexpr.cc:892
 #, gcc-internal-format
 msgid "accessing value of %qE through a %qT glvalue in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:5712
+#: cp/constexpr.cc:5699
 #, gcc-internal-format
 msgid ""
 "the content of uninitialized storage is not usable in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:5714 cp/constexpr.cc:5721
+#: cp/constexpr.cc:5701 cp/constexpr.cc:5708
 #, gcc-internal-format
 msgid "allocated here"
 msgstr ""
 
-#: cp/constexpr.cc:5719
+#: cp/constexpr.cc:5706
 #, gcc-internal-format
 msgid "use of allocated storage after deallocation in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:5724 rust/backend/rust-constexpr.cc:4038
+#: cp/constexpr.cc:5711 rust/backend/rust-constexpr.cc:4037
 #, gcc-internal-format
 msgid "the value of %qD is not usable in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:5732
+#: cp/constexpr.cc:5719
 #, gcc-internal-format
 msgid "%qD used in its own initializer"
 msgstr ""
 
-#: cp/constexpr.cc:5737
+#: cp/constexpr.cc:5724
 #, gcc-internal-format
 msgid "%q#D is not const"
 msgstr ""
 
-#: cp/constexpr.cc:5740
+#: cp/constexpr.cc:5727
 #, gcc-internal-format
 msgid "%q#D is volatile"
 msgstr ""
 
-#: cp/constexpr.cc:5745 cp/constexpr.cc:5752
+#: cp/constexpr.cc:5732 cp/constexpr.cc:5739
 #, gcc-internal-format
 msgid "%qD was not initialized with a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:5758
+#: cp/constexpr.cc:5745
 #, gcc-internal-format
 msgid "%qD was not declared %<constexpr%>"
 msgstr ""
 
-#: cp/constexpr.cc:5761
+#: cp/constexpr.cc:5748
 #, gcc-internal-format
 msgid "%qD does not have integral or enumeration type"
 msgstr ""
 
-#: cp/constexpr.cc:6030 rust/backend/rust-constexpr.cc:2753
+#: cp/constexpr.cc:6017 rust/backend/rust-constexpr.cc:2751
 #, gcc-internal-format
 msgid "modification of %qE is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:6128
+#: cp/constexpr.cc:6116
 #, gcc-internal-format
 msgid "change of the active member of a union from %qD to %qD"
 msgstr ""
 
-#: cp/constexpr.cc:6141 rust/backend/rust-constexpr.cc:2822
+#: cp/constexpr.cc:6129 rust/backend/rust-constexpr.cc:2820
 #, gcc-internal-format
 msgid ""
 "change of the active member of a union from %qD to %qD during initialization"
 msgstr ""
 
-#: cp/constexpr.cc:6587 cp/constexpr.cc:8041 cp/constexpr.cc:8053
-#: rust/backend/rust-constexpr.cc:4676
+#: cp/constexpr.cc:6575 cp/constexpr.cc:8058 cp/constexpr.cc:8070
+#: rust/backend/rust-constexpr.cc:4664
 #, gcc-internal-format
 msgid "statement is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:6691 rust/backend/rust-constexpr.cc:4941
+#: cp/constexpr.cc:6679 rust/backend/rust-constexpr.cc:4929
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> loop iteration count exceeds limit of %d (use %<-fconstexpr-"
 "loop-limit=%> to increase the limit)"
 msgstr ""
 
-#: cp/constexpr.cc:6792 rust/backend/rust-constexpr.cc:998
+#: cp/constexpr.cc:6780 rust/backend/rust-constexpr.cc:996
 #, gcc-internal-format
 msgid "inline assembly is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:6794 rust/backend/rust-constexpr.cc:999
+#: cp/constexpr.cc:6782 rust/backend/rust-constexpr.cc:997
 #, gcc-internal-format
 msgid ""
 "only unevaluated inline assembly is allowed in a %<constexpr%> function in C+"
 "+20"
 msgstr ""
 
-#: cp/constexpr.cc:6812
+#: cp/constexpr.cc:6800
 #, gcc-internal-format
 msgid "use of %qD"
 msgstr ""
 
-#: cp/constexpr.cc:6816
+#: cp/constexpr.cc:6804
 #, gcc-internal-format
 msgid ""
 "its value can vary between compiler versions or with different %<-mtune%> or "
 "%<-mcpu%> flags"
 msgstr ""
 
-#: cp/constexpr.cc:6818
+#: cp/constexpr.cc:6806
 #, 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:6820
+#: cp/constexpr.cc:6808
 #, gcc-internal-format, gfc-internal-format
 msgid "the default value for the current CPU tuning is %d bytes"
 msgstr ""
 
-#: cp/constexpr.cc:6822
+#: cp/constexpr.cc:6810
 #, gcc-internal-format
 msgid ""
 "you can stabilize this value with %<--param "
@@ -53654,221 +53717,226 @@ msgid ""
 "Wno-interference-size%>"
 msgstr ""
 
-#: cp/constexpr.cc:6972
+#: cp/constexpr.cc:6960
 #, gcc-internal-format
 msgid "value %qE of type %qT is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:6985
+#: cp/constexpr.cc:6973
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> evaluation operation count exceeds limit of %wd (use %<-"
 "fconstexpr-ops-limit=%> to increase the limit)"
 msgstr ""
 
-#: cp/constexpr.cc:7138
+#: cp/constexpr.cc:7126
 #, gcc-internal-format
 msgid "control passes through definition of %qD with thread storage duration"
 msgstr ""
 
-#: cp/constexpr.cc:7141
+#: cp/constexpr.cc:7129
 #, gcc-internal-format
 msgid "control passes through definition of %qD with static storage duration"
 msgstr ""
 
-#: cp/constexpr.cc:7188 cp/constexpr.cc:9733
-#: rust/backend/rust-constexpr.cc:2055 rust/backend/rust-constexpr.cc:6215
+#: cp/constexpr.cc:7194 cp/constexpr.cc:9785
+#: rust/backend/rust-constexpr.cc:2053 rust/backend/rust-constexpr.cc:6203
 #, gcc-internal-format
 msgid "temporary of non-literal type %qT in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:7619 cp/constexpr.cc:9236
+#: cp/constexpr.cc:7625 cp/constexpr.cc:9286
 #, gcc-internal-format
 msgid "%<reinterpret_cast%> is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:7647 rust/backend/rust-constexpr.cc:2461
+#: cp/constexpr.cc:7653 rust/backend/rust-constexpr.cc:2459
 #, gcc-internal-format
 msgid ""
 "conversion from pointer type %qT to arithmetic type %qT in a constant "
 "expression"
 msgstr ""
 
-#: cp/constexpr.cc:7675 rust/backend/rust-constexpr.cc:2480
+#: cp/constexpr.cc:7681 rust/backend/rust-constexpr.cc:2478
 #, gcc-internal-format
 msgid "cast from %qT is not allowed"
 msgstr ""
 
-#: cp/constexpr.cc:7711 rust/backend/rust-constexpr.cc:2506
+#: cp/constexpr.cc:7694
+#, gcc-internal-format
+msgid "%qE is not a constant expression when the class %qT is still incomplete"
+msgstr ""
+
+#: cp/constexpr.cc:7728 rust/backend/rust-constexpr.cc:2504
 #, gcc-internal-format
 msgid "%<reinterpret_cast<%T>(%E)%> is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:7842 cp/constexpr.cc:9546 cp/constexpr.cc:9956
-#: rust/backend/rust-constexpr.cc:6108 rust/backend/rust-constexpr.cc:6424
+#: cp/constexpr.cc:7859 cp/constexpr.cc:9596 cp/constexpr.cc:10008
+#: rust/backend/rust-constexpr.cc:6096 rust/backend/rust-constexpr.cc:6412
 #, gcc-internal-format
 msgid "expression %qE is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:7887 cp/constexpr.cc:9997
+#: cp/constexpr.cc:7904 cp/constexpr.cc:10049
 #, gcc-internal-format
 msgid "%<goto%> is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:7945
+#: cp/constexpr.cc:7962
 #, gcc-internal-format
 msgid "contract predicate is false in constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:7961
+#: cp/constexpr.cc:7978
 #, gcc-internal-format
 msgid "unexpected template-id %qE"
 msgstr ""
 
-#: cp/constexpr.cc:7967 cp/constraint.cc:178 cp/constraint.cc:753
+#: cp/constexpr.cc:7984 cp/constraint.cc:178 cp/constraint.cc:753
 #, gcc-internal-format
 msgid "function concept must be called"
 msgstr ""
 
-#: cp/constexpr.cc:7992
+#: cp/constexpr.cc:8009
 #, gcc-internal-format
 msgid "address of a call to %qs is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:8056
+#: cp/constexpr.cc:8073
 #, gcc-internal-format
 msgid "unexpected expression %qE of kind %s"
 msgstr ""
 
-#: cp/constexpr.cc:8314 rust/backend/rust-constexpr.cc:5166
+#: cp/constexpr.cc:8332 rust/backend/rust-constexpr.cc:5154
 #, gcc-internal-format
 msgid ""
 "%qE is not a constant expression because it refers to mutable subobjects of "
 "%qT"
 msgstr ""
 
-#: cp/constexpr.cc:8322 rust/backend/rust-constexpr.cc:5175
+#: cp/constexpr.cc:8340 rust/backend/rust-constexpr.cc:5163
 #, gcc-internal-format
 msgid ""
 "%qE is not a constant expression because it refers to an incompletely "
 "initialized variable"
 msgstr ""
 
-#: cp/constexpr.cc:8337 rust/backend/rust-constexpr.cc:5191
+#: cp/constexpr.cc:8355 rust/backend/rust-constexpr.cc:5179
 #, gcc-internal-format
 msgid ""
 "%qE is not a constant expression because it refers to a result of %<operator "
 "new%>"
 msgstr ""
 
-#: cp/constexpr.cc:8348 rust/backend/rust-constexpr.cc:5203
+#: cp/constexpr.cc:8366 rust/backend/rust-constexpr.cc:5191
 #, gcc-internal-format
 msgid ""
 "%qE is not a constant expression because allocated storage has not been "
 "deallocated"
 msgstr ""
 
-#: cp/constexpr.cc:8366 rust/backend/rust-constexpr.cc:5221
+#: cp/constexpr.cc:8384 rust/backend/rust-constexpr.cc:5209
 #, gcc-internal-format
 msgid "immediate evaluation returns address of immediate function %qD"
 msgstr ""
 
-#: cp/constexpr.cc:8963 rust/backend/rust-constexpr.cc:5675
+#: cp/constexpr.cc:9009 rust/backend/rust-constexpr.cc:5663
 #, gcc-internal-format
 msgid "lvalue-to-rvalue conversion of a volatile lvalue %qE with type %qT"
 msgstr ""
 
-#: cp/constexpr.cc:9201
+#: cp/constexpr.cc:9251
 #, gcc-internal-format
 msgid "lambda capture of %qE is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:9204
+#: cp/constexpr.cc:9254
 #, gcc-internal-format
 msgid "because it is used as a glvalue"
 msgstr ""
 
-#: cp/constexpr.cc:9260 rust/backend/rust-constexpr.cc:5901
+#: cp/constexpr.cc:9310 rust/backend/rust-constexpr.cc:5889
 #, gcc-internal-format
 msgid "%<reinterpret_cast%> from integer to pointer"
 msgstr ""
 
-#: cp/constexpr.cc:9294 rust/backend/rust-constexpr.cc:5929
+#: cp/constexpr.cc:9344 rust/backend/rust-constexpr.cc:5917
 #, gcc-internal-format
 msgid ""
 "address-of an object %qE with thread local or automatic storage is not a "
 "constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:9333
+#: cp/constexpr.cc:9383
 #, gcc-internal-format
 msgid "use of %<this%> in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:9482
+#: cp/constexpr.cc:9532
 #, gcc-internal-format
 msgid "lambda-expression is not a constant expression before C++17"
 msgstr ""
 
-#: cp/constexpr.cc:9494
+#: cp/constexpr.cc:9544
 #, gcc-internal-format
 msgid "new-expression is not a constant expression before C++20"
 msgstr ""
 
-#: cp/constexpr.cc:9560
+#: cp/constexpr.cc:9610
 #, gcc-internal-format
 msgid "virtual functions cannot be %<constexpr%> before C++20"
 msgstr ""
 
-#: cp/constexpr.cc:9576
+#: cp/constexpr.cc:9626
 #, gcc-internal-format
 msgid ""
 "%<typeid%> is not a constant expression because %qE is of polymorphic type"
 msgstr ""
 
-#: cp/constexpr.cc:9639
+#: cp/constexpr.cc:9689
 #, gcc-internal-format
 msgid "cast to non-integral type %qT in a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:9700
+#: cp/constexpr.cc:9750
 #, gcc-internal-format
 msgid "%qD defined %<thread_local%> in %<constexpr%> context"
 msgstr ""
 
-#: cp/constexpr.cc:9708
+#: cp/constexpr.cc:9758
 #, gcc-internal-format
 msgid "%qD defined %<static%> in %<constexpr%> context"
 msgstr ""
 
-#: cp/constexpr.cc:9783 rust/backend/rust-constexpr.cc:6260
+#: cp/constexpr.cc:9835 rust/backend/rust-constexpr.cc:6248
 #, gcc-internal-format
 msgid "division by zero is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:9884 rust/backend/rust-constexpr.cc:6358
+#: cp/constexpr.cc:9936 rust/backend/rust-constexpr.cc:6346
 #, gcc-internal-format
 msgid "%<delete[]%> is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:9953
+#: cp/constexpr.cc:10005
 #, gcc-internal-format
 msgid "neither branch of %<if%> is a constant expression"
 msgstr ""
 
-#: cp/constexpr.cc:9966
+#: cp/constexpr.cc:10018
 #, gcc-internal-format
 msgid "non-constant array initialization"
 msgstr ""
 
-#: cp/constexpr.cc:10014 rust/backend/rust-constexpr.cc:6436
+#: cp/constexpr.cc:10066 rust/backend/rust-constexpr.cc:6424
 #, gcc-internal-format
 msgid ""
 "label definition in %<constexpr%> function only available with %<-std=c+"
 "+2b%> or %<-std=gnu++2b%>"
 msgstr ""
 
-#: cp/constexpr.cc:10045 rust/backend/rust-constexpr.cc:6447
+#: cp/constexpr.cc:10097 rust/backend/rust-constexpr.cc:6435
 #, gcc-internal-format, gfc-internal-format
 msgid "unexpected AST of kind %s"
 msgstr ""
@@ -54020,375 +54088,390 @@ msgstr ""
 msgid "the operand %qE is unsatisfied because"
 msgstr ""
 
-#: cp/constraint.cc:3533
+#: cp/constraint.cc:3532
 #, gcc-internal-format
 msgid "definition of concept %qD is empty"
 msgstr ""
 
-#: cp/constraint.cc:3536
+#: cp/constraint.cc:3535
 #, gcc-internal-format
 msgid "definition of concept %qD has multiple statements"
 msgstr ""
 
-#: cp/constraint.cc:3682
+#: cp/constraint.cc:3681
 #, gcc-internal-format
 msgid "  %qT is not nothrow copy assignable"
 msgstr ""
 
-#: cp/constraint.cc:3685 cp/constraint.cc:3780
+#: cp/constraint.cc:3684 cp/constraint.cc:3779
 #, gcc-internal-format
 msgid "  %qT is not nothrow default constructible"
 msgstr ""
 
-#: cp/constraint.cc:3688
+#: cp/constraint.cc:3687
 #, gcc-internal-format
 msgid "  %qT is not nothrow copy constructible"
 msgstr ""
 
-#: cp/constraint.cc:3691
+#: cp/constraint.cc:3690
 #, gcc-internal-format
 msgid "  %qT is not trivially copy assignable"
 msgstr ""
 
-#: cp/constraint.cc:3694 cp/constraint.cc:3774
+#: cp/constraint.cc:3693 cp/constraint.cc:3773
 #, gcc-internal-format
 msgid "  %qT is not trivially default constructible"
 msgstr ""
 
-#: cp/constraint.cc:3697
+#: cp/constraint.cc:3696
 #, gcc-internal-format
 msgid "  %qT is not trivially copy constructible"
 msgstr ""
 
-#: cp/constraint.cc:3700
+#: cp/constraint.cc:3699
 #, gcc-internal-format
 msgid "  %qT is not trivially destructible"
 msgstr ""
 
-#: cp/constraint.cc:3703
+#: cp/constraint.cc:3702
 #, gcc-internal-format
 msgid "  %qT does not have a virtual destructor"
 msgstr ""
 
-#: cp/constraint.cc:3706
+#: cp/constraint.cc:3705
 #, gcc-internal-format
 msgid "  %qT is not an abstract class"
 msgstr ""
 
-#: cp/constraint.cc:3709
+#: cp/constraint.cc:3708
 #, gcc-internal-format
 msgid "  %qT is not a base of %qT"
 msgstr ""
 
-#: cp/constraint.cc:3712
+#: cp/constraint.cc:3711
 #, gcc-internal-format
 msgid "  %qT is not a class"
 msgstr ""
 
-#: cp/constraint.cc:3715
+#: cp/constraint.cc:3714
 #, gcc-internal-format
 msgid "  %qT is not an empty class"
 msgstr ""
 
-#: cp/constraint.cc:3718
+#: cp/constraint.cc:3717
 #, gcc-internal-format
 msgid "  %qT is not an enum"
 msgstr ""
 
-#: cp/constraint.cc:3721
+#: cp/constraint.cc:3720
 #, gcc-internal-format
 msgid "  %qT is not a final class"
 msgstr ""
 
-#: cp/constraint.cc:3724
+#: cp/constraint.cc:3723
 #, gcc-internal-format
 msgid "  %qT is not layout compatible with %qT"
 msgstr ""
 
-#: cp/constraint.cc:3727
+#: cp/constraint.cc:3726
 #, gcc-internal-format
 msgid "  %qT is not a literal type"
 msgstr ""
 
-#: cp/constraint.cc:3730
+#: cp/constraint.cc:3729
 #, gcc-internal-format
 msgid "  %qT is not pointer-interconvertible base of %qT"
 msgstr ""
 
-#: cp/constraint.cc:3734
+#: cp/constraint.cc:3733
 #, gcc-internal-format
 msgid "  %qT is not a POD type"
 msgstr ""
 
-#: cp/constraint.cc:3737
+#: cp/constraint.cc:3736
 #, gcc-internal-format
 msgid "  %qT is not a polymorphic type"
 msgstr ""
 
-#: cp/constraint.cc:3740
+#: cp/constraint.cc:3739
 #, gcc-internal-format
 msgid "  %qT is not the same as %qT"
 msgstr ""
 
-#: cp/constraint.cc:3743
+#: cp/constraint.cc:3742
 #, gcc-internal-format
 msgid "  %qT is not an standard layout type"
 msgstr ""
 
-#: cp/constraint.cc:3746
+#: cp/constraint.cc:3745
 #, gcc-internal-format
 msgid "  %qT is not a trivial type"
 msgstr ""
 
-#: cp/constraint.cc:3749
+#: cp/constraint.cc:3748
 #, gcc-internal-format
 msgid "  %qT is not a union"
 msgstr ""
 
-#: cp/constraint.cc:3752
+#: cp/constraint.cc:3751
 #, gcc-internal-format
 msgid "  %qT is not an aggregate"
 msgstr ""
 
-#: cp/constraint.cc:3755
+#: cp/constraint.cc:3754
 #, gcc-internal-format
 msgid "  %qT is not trivially copyable"
 msgstr ""
 
-#: cp/constraint.cc:3758
+#: cp/constraint.cc:3757
 #, gcc-internal-format
 msgid "  %qT is not assignable from %qT"
 msgstr ""
 
-#: cp/constraint.cc:3761
+#: cp/constraint.cc:3760
 #, gcc-internal-format
 msgid "  %qT is not trivially assignable from %qT"
 msgstr ""
 
-#: cp/constraint.cc:3764
+#: cp/constraint.cc:3763
 #, gcc-internal-format
 msgid "  %qT is not nothrow assignable from %qT"
 msgstr ""
 
-#: cp/constraint.cc:3768
+#: cp/constraint.cc:3767
 #, gcc-internal-format
 msgid "  %qT is not default constructible"
 msgstr ""
 
-#: cp/constraint.cc:3770
+#: cp/constraint.cc:3769
 #, gcc-internal-format
 msgid "  %qT is not constructible from %qE"
 msgstr ""
 
-#: cp/constraint.cc:3776
+#: cp/constraint.cc:3775
 #, gcc-internal-format
 msgid "  %qT is not trivially constructible from %qE"
 msgstr ""
 
-#: cp/constraint.cc:3782
+#: cp/constraint.cc:3781
 #, gcc-internal-format
 msgid "  %qT is not nothrow constructible from %qE"
 msgstr ""
 
-#: cp/constraint.cc:3785
+#: cp/constraint.cc:3784
 #, gcc-internal-format
 msgid "  %qT does not have unique object representations"
 msgstr ""
 
-#: cp/constraint.cc:3788
+#: cp/constraint.cc:3787
 #, gcc-internal-format
 msgid "  %qT is not convertible from %qE"
 msgstr ""
 
-#: cp/constraint.cc:3791
+#: cp/constraint.cc:3790
 #, gcc-internal-format
 msgid "  %qT is not nothrow convertible from %qE"
 msgstr ""
 
-#: cp/constraint.cc:3794
+#: cp/constraint.cc:3793
 #, gcc-internal-format
 msgid ""
 "  %qT is not a reference that binds to a temporary object of type %qT "
 "(direct-initialization)"
 msgstr ""
 
-#: cp/constraint.cc:3798
+#: cp/constraint.cc:3797
 #, gcc-internal-format
 msgid ""
 "  %qT is not a reference that binds to a temporary object of type %qT (copy-"
 "initialization)"
 msgstr ""
 
-#: cp/constraint.cc:3826
+#: cp/constraint.cc:3801
+#, gcc-internal-format
+msgid "  %qD is not deducible from %qT"
+msgstr ""
+
+#: cp/constraint.cc:3828
 #, gcc-internal-format
 msgid "invalid constraints"
 msgstr ""
 
-#: cp/constraint.cc:3851
+#: cp/constraint.cc:3853
 #, gcc-internal-format
 msgid "constraint %qE has type %qT, not %<bool%>"
 msgstr ""
 
-#: cp/constraint.cc:3854
+#: cp/constraint.cc:3856
 #, gcc-internal-format
 msgid "the expression %qE evaluated to %<false%>"
 msgstr ""
 
-#: cp/constraint.cc:3905
+#: cp/constraint.cc:3907
 #, gcc-internal-format
 msgid "constraints not satisfied"
 msgstr ""
 
-#: cp/constraint.cc:3920
+#: cp/constraint.cc:3922
 #, gcc-internal-format
 msgid "set %qs to at least %d for more detail"
 msgstr ""
 
-#: cp/contracts.cc:182
+#: cp/contracts.cc:183
 #, gcc-internal-format
 msgid "axiom contract semantic must be %<assume%> or %<ignore%>"
 msgstr ""
 
-#: cp/contracts.cc:185
+#: cp/contracts.cc:186
 #, gcc-internal-format
 msgid ""
 "the %<audit%> semantic should be at least as strong as the %<default%> "
 "semantic"
 msgstr ""
 
-#: cp/contracts.cc:203
+#: cp/contracts.cc:204
 #, gcc-internal-format, gfc-internal-format
 msgid "'%s' is not a valid explicit concrete semantic"
 msgstr ""
 
-#: cp/contracts.cc:343
+#: cp/contracts.cc:344
 #, gcc-internal-format
 msgid "%<-fcontract-build-level=%> cannot be mixed with p1332/p1429"
 msgstr ""
 
-#: cp/contracts.cc:356
+#: cp/contracts.cc:357
 #, gcc-internal-format
 msgid "%<-fcontract-build-level=%> must be off|default|audit"
 msgstr ""
 
-#: cp/contracts.cc:366
+#: cp/contracts.cc:367
 #, gcc-internal-format
 msgid "%<-fcontract-assumption-mode=%> cannot be mixed with p1332/p1429"
 msgstr ""
 
-#: cp/contracts.cc:377
+#: cp/contracts.cc:378
 #, gcc-internal-format
 msgid "%<-fcontract-assumption-mode=%> must be %<on%> or %<off%>"
 msgstr ""
 
-#: cp/contracts.cc:387
+#: cp/contracts.cc:388
 #, gcc-internal-format
 msgid "%<-fcontract-continuation-mode=%> cannot be mixed with p1332/p1429"
 msgstr ""
 
-#: cp/contracts.cc:398
+#: cp/contracts.cc:399
 #, gcc-internal-format
 msgid "%<-fcontract-continuation-mode=%> must be %<on%> or %<off%>"
 msgstr ""
 
-#: cp/contracts.cc:410
+#: cp/contracts.cc:411
 #, gcc-internal-format
 msgid "%<-fcontract-role=%> must be in the form role:semantics"
 msgstr ""
 
-#: cp/contracts.cc:421 cp/contracts.cc:430
+#: cp/contracts.cc:422 cp/contracts.cc:431
 #, gcc-internal-format
 msgid "%<-fcontract-role=%> semantics must include default,audit,axiom values"
 msgstr ""
 
-#: cp/contracts.cc:449
+#: cp/contracts.cc:450
 #, gcc-internal-format
 msgid "%<-fcontract-role=%> cannot be mixed with std/p1429 contract flags"
 msgstr ""
 
 #. TODO: not enough space?
-#: cp/contracts.cc:463
+#: cp/contracts.cc:464
 #, gcc-internal-format
 msgid "%<-fcontract-level=%> too many custom roles"
 msgstr ""
 
-#: cp/contracts.cc:475
+#: cp/contracts.cc:476
 #, gcc-internal-format
 msgid "%<-fcontract-semantic=%> must be in the form level:semantic"
 msgstr ""
 
-#: cp/contracts.cc:481
+#: cp/contracts.cc:482
 #, gcc-internal-format
 msgid "%<-fcontract-semantic=%> cannot be mixed with std/p1332 contract flags"
 msgstr ""
 
-#: cp/contracts.cc:489
+#: cp/contracts.cc:490
 #, gcc-internal-format
 msgid "%<-fcontract-semantic=%> cannot find default role"
 msgstr ""
 
-#: cp/contracts.cc:505
+#: cp/contracts.cc:506
 #, gcc-internal-format
 msgid "%<-fcontract-semantic=%> level must be default, audit, or axiom"
 msgstr ""
 
-#: cp/contracts.cc:647
-#, gcc-internal-format, gfc-internal-format
-msgid "%s does not return a value to test"
+#: cp/contracts.cc:643
+#, gcc-internal-format
+msgid "constructor does not return a value to test"
 msgstr ""
 
-#: cp/contracts.cc:1145
+#: cp/contracts.cc:645
+#, gcc-internal-format
+msgid "destructor does not return a value to test"
+msgstr ""
+
+#: cp/contracts.cc:646
+#, gcc-internal-format
+msgid "function does not return a value to test"
+msgstr ""
+
+#: cp/contracts.cc:1144
 #, gcc-internal-format
 msgid "mismatched contract attribute in declaration"
 msgstr ""
 
-#: cp/contracts.cc:1147 cp/contracts.cc:1178
+#: cp/contracts.cc:1146 cp/contracts.cc:1177
 #, gcc-internal-format
 msgid "previous contract here"
 msgstr ""
 
-#: cp/contracts.cc:1175
+#: cp/contracts.cc:1174
 #, gcc-internal-format
 msgid "mismatched contract condition in declaration"
 msgstr ""
 
-#: cp/contracts.cc:1218
+#: cp/contracts.cc:1217
 #, gcc-internal-format
 msgid ""
 "declaration has a different number of contracts than previously declared"
 msgstr ""
 
-#: cp/contracts.cc:1224
+#: cp/contracts.cc:1223
 #, gcc-internal-format
 msgid "original declaration with fewer contracts here"
 msgstr ""
 
-#: cp/contracts.cc:1961
+#: cp/contracts.cc:1960
 #, gcc-internal-format
 msgid "contracts must appertain to a function type"
 msgstr ""
 
-#: cp/contracts.cc:2174
+#: cp/contracts.cc:2173
 #, gcc-internal-format
 msgid "cannot add contracts after definition"
 msgstr ""
 
-#: cp/contracts.cc:2175
+#: cp/contracts.cc:2174
 #, gcc-internal-format
 msgid "original definition here"
 msgstr ""
 
-#: cp/contracts.cc:2183
+#: cp/contracts.cc:2182
 #, gcc-internal-format
 msgid "cannot add contracts to a virtual function"
 msgstr ""
 
-#: cp/contracts.cc:2184
+#: cp/contracts.cc:2183
 #, gcc-internal-format
 msgid "original declaration here"
 msgstr ""
 
-#: cp/contracts.cc:2194
+#: cp/contracts.cc:2193
 #, gcc-internal-format
 msgid "declaration adds contracts to %q#D"
 msgstr ""
@@ -54435,7 +54518,7 @@ msgstr ""
 msgid "%<return_void%> declared here"
 msgstr ""
 
-#: cp/coroutines.cc:648 cp/coroutines.cc:726 cp/coroutines.cc:4303
+#: cp/coroutines.cc:648 cp/coroutines.cc:726 cp/coroutines.cc:4310
 #, gcc-internal-format
 msgid "no member named %qE in %qT"
 msgstr ""
@@ -54504,131 +54587,131 @@ msgstr ""
 msgid "awaitable type %qT is not a structure"
 msgstr ""
 
-#: cp/coroutines.cc:1073
+#: cp/coroutines.cc:1077
 #, gcc-internal-format
 msgid "%<await_suspend%> must return %<void%>, %<bool%> or a coroutine handle"
 msgstr ""
 
-#: cp/coroutines.cc:1384
+#: cp/coroutines.cc:1391
 #, gcc-internal-format
 msgid "function declared %<noreturn%> has a %<co_return%> statement"
 msgstr ""
 
-#: cp/coroutines.cc:1422
+#: cp/coroutines.cc:1429
 #, gcc-internal-format
 msgid "the align argument to %<__builtin_coro_promise%> must be a constant"
 msgstr ""
 
-#: cp/coroutines.cc:1432
+#: cp/coroutines.cc:1439
 #, gcc-internal-format
 msgid "the direction argument to %<__builtin_coro_promise%> must be a constant"
 msgstr ""
 
-#: cp/coroutines.cc:1915
+#: cp/coroutines.cc:1922
 #, gcc-internal-format
 msgid "no suspend point info for %qD"
 msgstr ""
 
-#: cp/coroutines.cc:2113 cp/coroutines.cc:4677
+#: cp/coroutines.cc:2120 cp/coroutines.cc:4684
 #, gcc-internal-format
 msgid ""
 "%qE is provided by %qT but is not usable with the function signature %qD"
 msgstr ""
 
-#: cp/coroutines.cc:2563
+#: cp/coroutines.cc:2570
 #, gcc-internal-format
 msgid "duplicate info for %qE"
 msgstr ""
 
-#: cp/coroutines.cc:3715
+#: cp/coroutines.cc:3722
 #, gcc-internal-format
 msgid "await expressions are not permitted in handlers"
 msgstr ""
 
-#: cp/coroutines.cc:3947
+#: cp/coroutines.cc:3954
 #, gcc-internal-format
 msgid "variable length arrays are not yet supported in coroutines"
 msgstr ""
 
-#: cp/coroutines.cc:4682
+#: cp/coroutines.cc:4689
 #, gcc-internal-format
 msgid ""
 "%qE is provided by %qT but %qE is not marked %<throw()%> or %<noexcept%>"
 msgstr ""
 
-#: cp/coroutines.cc:4685
+#: cp/coroutines.cc:4692
 #, gcc-internal-format
 msgid ""
 "%qE is marked %<throw()%> or %<noexcept%> but no usable "
 "%<get_return_object_on_allocation_failure%> is provided by %qT"
 msgstr ""
 
-#: cp/coroutines.cc:4714
+#: cp/coroutines.cc:4721
 #, gcc-internal-format
 msgid "%qE is provided by %qT but %<std::nothrow%> cannot be found"
 msgstr ""
 
 #. We can't initialize a non-class return value from void.
-#: cp/coroutines.cc:5111
+#: cp/coroutines.cc:5118
 #, gcc-internal-format
 msgid ""
 "cannot initialize a return object of type %qT with an rvalue of type %<void%>"
 msgstr ""
 
-#: cp/cp-gimplify.cc:155
+#: cp/cp-gimplify.cc:169
 #, gcc-internal-format
 msgid "both branches of %<if%> statement marked as %qs"
 msgstr ""
 
-#: cp/cp-gimplify.cc:1035 cp/cp-gimplify.cc:1047
+#: cp/cp-gimplify.cc:1054 cp/cp-gimplify.cc:1066
 #, gcc-internal-format
 msgid "taking address of an immediate function %qD"
 msgstr ""
 
-#: cp/cp-gimplify.cc:1633
+#: cp/cp-gimplify.cc:1657
 #, gcc-internal-format
 msgid "%<throw%> will always call %<terminate%>"
 msgstr ""
 
-#: cp/cp-gimplify.cc:1636
+#: cp/cp-gimplify.cc:1660
 #, gcc-internal-format
 msgid "in C++11 destructors default to %<noexcept%>"
 msgstr ""
 
-#: cp/cp-gimplify.cc:1648
+#: cp/cp-gimplify.cc:1672
 #, gcc-internal-format
 msgid ""
 "in C++11 this %<throw%> will call %<terminate%> because destructors default "
 "to %<noexcept%>"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3158
+#: cp/cp-gimplify.cc:3231
 #, gcc-internal-format
 msgid "ignoring attribute %qE after earlier %qE"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3232 cp/cp-gimplify.cc:3244 cp/decl.cc:4274
+#: cp/cp-gimplify.cc:3305 cp/cp-gimplify.cc:3317 cp/decl.cc:4275
 #: cp/method.cc:978
 #, gcc-internal-format
 msgid "%qD is not a type"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3250
+#: cp/cp-gimplify.cc:3323
 #, gcc-internal-format
 msgid "%qD is not a class type"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3267
+#: cp/cp-gimplify.cc:3340
 #, gcc-internal-format
 msgid "%qD does not have %<const char *%> type"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3277
+#: cp/cp-gimplify.cc:3350
 #, gcc-internal-format
 msgid "%qD does not have integral type"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3289
+#: cp/cp-gimplify.cc:3362
 #, gcc-internal-format
 msgid ""
 "%<std::source_location::__impl%> does not contain only non-static data "
@@ -54671,7 +54754,7 @@ msgstr ""
 msgid "conversion from %qH to %qI discards qualifiers"
 msgstr ""
 
-#: cp/cvt.cc:498 cp/typeck.cc:8703
+#: cp/cvt.cc:498 cp/typeck.cc:8710
 #, gcc-internal-format
 msgid "casting %qT to %qT does not dereference pointer"
 msgstr ""
@@ -54746,183 +54829,183 @@ msgstr ""
 msgid "pseudo-destructor is not called"
 msgstr ""
 
-#: cp/cvt.cc:1264 rust/backend/rust-tree.cc:340
+#: cp/cvt.cc:1264 rust/backend/rust-tree.cc:341
 #, gcc-internal-format
 msgid "conversion to void will not access object of incomplete type %qT"
 msgstr ""
 
-#: cp/cvt.cc:1268 rust/backend/rust-tree.cc:346
+#: cp/cvt.cc:1268 rust/backend/rust-tree.cc:347
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in second operand "
 "of conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1273 rust/backend/rust-tree.cc:353
+#: cp/cvt.cc:1273 rust/backend/rust-tree.cc:354
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in third operand "
 "of conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1278 rust/backend/rust-tree.cc:360
+#: cp/cvt.cc:1278 rust/backend/rust-tree.cc:361
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in right operand "
 "of comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1283 rust/backend/rust-tree.cc:367
+#: cp/cvt.cc:1283 rust/backend/rust-tree.cc:368
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in left operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1288 rust/backend/rust-tree.cc:374
+#: cp/cvt.cc:1288 rust/backend/rust-tree.cc:375
 #, gcc-internal-format
 msgid "indirection will not access object of incomplete type %qT in statement"
 msgstr ""
 
-#: cp/cvt.cc:1292 rust/backend/rust-tree.cc:380
+#: cp/cvt.cc:1292 rust/backend/rust-tree.cc:381
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in for increment "
 "expression"
 msgstr ""
 
-#: cp/cvt.cc:1308 rust/backend/rust-tree.cc:397
+#: cp/cvt.cc:1308 rust/backend/rust-tree.cc:398
 #, gcc-internal-format
 msgid "conversion to void will not access object of type %qT"
 msgstr ""
 
-#: cp/cvt.cc:1312 rust/backend/rust-tree.cc:403
+#: cp/cvt.cc:1312 rust/backend/rust-tree.cc:404
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in second operand of "
 "conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1317 rust/backend/rust-tree.cc:410
+#: cp/cvt.cc:1317 rust/backend/rust-tree.cc:411
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in third operand of "
 "conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1322 rust/backend/rust-tree.cc:417
+#: cp/cvt.cc:1322 rust/backend/rust-tree.cc:418
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in right operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1327 rust/backend/rust-tree.cc:424
+#: cp/cvt.cc:1327 rust/backend/rust-tree.cc:425
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in left operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1332 rust/backend/rust-tree.cc:431
+#: cp/cvt.cc:1332 rust/backend/rust-tree.cc:432
 #, gcc-internal-format
 msgid "implicit dereference will not access object of type %qT in statement"
 msgstr ""
 
-#: cp/cvt.cc:1336 rust/backend/rust-tree.cc:437
+#: cp/cvt.cc:1336 rust/backend/rust-tree.cc:438
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in for increment "
 "expression"
 msgstr ""
 
-#: cp/cvt.cc:1350 rust/backend/rust-tree.cc:451
+#: cp/cvt.cc:1350 rust/backend/rust-tree.cc:452
 #, gcc-internal-format
 msgid ""
 "conversion to void will not access object of non-trivially-copyable type %qT"
 msgstr ""
 
-#: cp/cvt.cc:1355 rust/backend/rust-tree.cc:457
+#: cp/cvt.cc:1355 rust/backend/rust-tree.cc:458
 #, 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:1360 rust/backend/rust-tree.cc:464
+#: cp/cvt.cc:1360 rust/backend/rust-tree.cc:465
 #, 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:1365 rust/backend/rust-tree.cc:471
+#: cp/cvt.cc:1365 rust/backend/rust-tree.cc:472
 #, 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:1370 rust/backend/rust-tree.cc:478
+#: cp/cvt.cc:1370 rust/backend/rust-tree.cc:479
 #, 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:1375 rust/backend/rust-tree.cc:485
+#: cp/cvt.cc:1375 rust/backend/rust-tree.cc:486
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in "
 "statement"
 msgstr ""
 
-#: cp/cvt.cc:1380 rust/backend/rust-tree.cc:491
+#: cp/cvt.cc:1380 rust/backend/rust-tree.cc:492
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in for "
 "increment expression"
 msgstr ""
 
-#: cp/cvt.cc:1421 rust/backend/rust-tree.cc:532
+#: cp/cvt.cc:1421 rust/backend/rust-tree.cc:533
 #, gcc-internal-format
 msgid "conversion to void will not access object %qE of incomplete type %qT"
 msgstr ""
 
-#: cp/cvt.cc:1425 rust/backend/rust-tree.cc:538
+#: cp/cvt.cc:1425 rust/backend/rust-tree.cc:539
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in second operand "
 "of conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1430 rust/backend/rust-tree.cc:545
+#: cp/cvt.cc:1430 rust/backend/rust-tree.cc:546
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in third operand of "
 "conditional expression"
 msgstr ""
 
-#: cp/cvt.cc:1435 rust/backend/rust-tree.cc:552
+#: cp/cvt.cc:1435 rust/backend/rust-tree.cc:553
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in right operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1440 rust/backend/rust-tree.cc:558
+#: cp/cvt.cc:1440 rust/backend/rust-tree.cc:559
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in left operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.cc:1445 rust/backend/rust-tree.cc:564
+#: cp/cvt.cc:1445 rust/backend/rust-tree.cc:565
 #, gcc-internal-format
 msgid "variable %qE of incomplete type %qT will not be accessed in statement"
 msgstr ""
 
-#: cp/cvt.cc:1449 rust/backend/rust-tree.cc:570
+#: cp/cvt.cc:1449 rust/backend/rust-tree.cc:571
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in for increment "
@@ -55066,7 +55149,7 @@ msgstr ""
 msgid "requires"
 msgstr ""
 
-#: cp/cxx-pretty-print.cc:2815 cp/error.cc:397
+#: cp/cxx-pretty-print.cc:2818 cp/error.cc:397
 #, gcc-internal-format
 msgid "with"
 msgstr ""
@@ -55081,266 +55164,266 @@ msgstr ""
 msgid "unused variable %qD"
 msgstr ""
 
-#: cp/decl.cc:704
+#: cp/decl.cc:705
 #, gcc-internal-format
 msgid "structured binding declaration set but not used"
 msgstr ""
 
-#: cp/decl.cc:859
+#: cp/decl.cc:860
 #, gcc-internal-format
 msgid "%qF declared %<static%> but never defined"
 msgstr ""
 
-#: cp/decl.cc:866
+#: cp/decl.cc:867
 #, gcc-internal-format
 msgid "odr-used inline variable %qD is not defined"
 msgstr ""
 
-#: cp/decl.cc:1279
+#: cp/decl.cc:1280
 #, gcc-internal-format
 msgid "%qD was declared %<extern%> and later %<static%>"
 msgstr ""
 
-#: cp/decl.cc:1319
+#: cp/decl.cc:1320
 #, gcc-internal-format
 msgid "declaration of %qF has a different exception specifier"
 msgstr ""
 
-#: cp/decl.cc:1333
+#: cp/decl.cc:1334
 #, gcc-internal-format
 msgid "from previous declaration %qF"
 msgstr ""
 
-#: cp/decl.cc:1386
+#: cp/decl.cc:1387
 #, gcc-internal-format
 msgid "redeclaration %qD differs in %qs from previous declaration"
 msgstr ""
 
-#: cp/decl.cc:1390 cp/decl.cc:16111
+#: cp/decl.cc:1391 cp/decl.cc:16146
 #, gcc-internal-format
 msgid "previous declaration %qD"
 msgstr ""
 
-#: cp/decl.cc:1419
+#: cp/decl.cc:1420
 #, gcc-internal-format
 msgid "cannot specialize concept %q#D"
 msgstr ""
 
-#: cp/decl.cc:1441
+#: cp/decl.cc:1442
 #, gcc-internal-format
 msgid "redeclaration of %q#D may not have default arguments"
 msgstr ""
 
-#: cp/decl.cc:1470
+#: cp/decl.cc:1471
 #, gcc-internal-format
 msgid ""
 "friend declaration of %q#D specifies default arguments and isn%'t the only "
 "declaration"
 msgstr ""
 
-#: cp/decl.cc:1473
+#: cp/decl.cc:1474
 #, gcc-internal-format
 msgid "previous declaration of %q#D"
 msgstr ""
 
-#: cp/decl.cc:1522
+#: cp/decl.cc:1523
 #, gcc-internal-format
 msgid "ambiguating new declaration %q+#D"
 msgstr ""
 
-#: cp/decl.cc:1524 cp/decl.cc:1945
+#: cp/decl.cc:1525 cp/decl.cc:1946
 #, gcc-internal-format
 msgid "old declaration %q#D"
 msgstr ""
 
-#: cp/decl.cc:1564
+#: cp/decl.cc:1565
 #, gcc-internal-format
 msgid "redefinition of default argument for %q+#D"
 msgstr ""
 
-#: cp/decl.cc:1566
+#: cp/decl.cc:1567
 #, gcc-internal-format
 msgid "original definition appeared here"
 msgstr ""
 
-#: cp/decl.cc:1632
+#: cp/decl.cc:1633
 #, gcc-internal-format
 msgid "built-in function %qD declared as non-function"
 msgstr ""
 
-#: cp/decl.cc:1645 cp/decl.cc:1771
+#: cp/decl.cc:1646 cp/decl.cc:1772
 #, gcc-internal-format
 msgid "shadowing built-in function %q#D"
 msgstr ""
 
-#: cp/decl.cc:1646 cp/decl.cc:1772
+#: cp/decl.cc:1647 cp/decl.cc:1773
 #, gcc-internal-format
 msgid "shadowing library function %q#D"
 msgstr ""
 
-#: cp/decl.cc:1654
+#: cp/decl.cc:1655
 #, gcc-internal-format
 msgid "library function %q#D redeclared as non-function %q#D"
 msgstr ""
 
-#: cp/decl.cc:1658 cp/decl.cc:1719
+#: cp/decl.cc:1659 cp/decl.cc:1720
 #, gcc-internal-format
 msgid "declaration of %q#D conflicts with built-in declaration %q#D"
 msgstr ""
 
-#: cp/decl.cc:1746
+#: cp/decl.cc:1747
 #, gcc-internal-format
 msgid "definition of %q#D ambiguates built-in declaration %q#D"
 msgstr ""
 
-#: cp/decl.cc:1752 cp/decl.cc:1766
+#: cp/decl.cc:1753 cp/decl.cc:1767
 #, gcc-internal-format
 msgid "new declaration %q#D ambiguates built-in declaration %q#D"
 msgstr ""
 
-#: cp/decl.cc:1756
+#: cp/decl.cc:1757
 #, gcc-internal-format
 msgid "ignoring the %q#D declaration"
 msgstr ""
 
-#: cp/decl.cc:1860
+#: cp/decl.cc:1861
 #, gcc-internal-format
 msgid "literal operator %q#D conflicts with raw literal operator"
 msgstr ""
 
-#: cp/decl.cc:1864
+#: cp/decl.cc:1865
 #, gcc-internal-format
 msgid "raw literal operator %q#D conflicts with literal operator template"
 msgstr ""
 
-#: cp/decl.cc:1880
+#: cp/decl.cc:1881
 #, gcc-internal-format
 msgid "%q#D redeclared as different kind of entity"
 msgstr ""
 
-#: cp/decl.cc:1904
+#: cp/decl.cc:1905
 #, gcc-internal-format
 msgid "conflicting declaration of template %q#D"
 msgstr ""
 
-#: cp/decl.cc:1926
+#: cp/decl.cc:1927
 #, gcc-internal-format
 msgid "conflicting declaration of C function %q#D"
 msgstr ""
 
-#: cp/decl.cc:1943
+#: cp/decl.cc:1944
 #, gcc-internal-format
 msgid "ambiguating new declaration of %q#D"
 msgstr ""
 
-#: cp/decl.cc:1953
+#: cp/decl.cc:1954
 #, gcc-internal-format
 msgid "conflicting declaration %q#D"
 msgstr ""
 
-#: cp/decl.cc:1955
+#: cp/decl.cc:1956
 #, gcc-internal-format
 msgid "previous declaration as %q#D"
 msgstr ""
 
-#: cp/decl.cc:1965
+#: cp/decl.cc:1966
 #, gcc-internal-format
 msgid "redeclaration of %<pragma omp declare reduction%>"
 msgstr ""
 
-#: cp/decl.cc:1967
+#: cp/decl.cc:1968
 #, gcc-internal-format
 msgid "previous %<pragma omp declare reduction%> declaration"
 msgstr ""
 
-#: cp/decl.cc:2025
+#: cp/decl.cc:2026
 #, gcc-internal-format
 msgid "%q#D previously defined here"
 msgstr ""
 
-#: cp/decl.cc:2026 cp/name-lookup.cc:3160 cp/name-lookup.cc:3189
+#: cp/decl.cc:2027 cp/name-lookup.cc:3160 cp/name-lookup.cc:3189
 #: cp/name-lookup.cc:3213
 #, gcc-internal-format
 msgid "%q#D previously declared here"
 msgstr ""
 
-#: cp/decl.cc:2037
+#: cp/decl.cc:2038
 #, gcc-internal-format
 msgid "prototype specified for %q#D"
 msgstr ""
 
-#: cp/decl.cc:2039
+#: cp/decl.cc:2040
 #, gcc-internal-format
 msgid "previous non-prototype definition here"
 msgstr ""
 
-#: cp/decl.cc:2079
+#: cp/decl.cc:2080
 #, gcc-internal-format
 msgid "conflicting declaration of %q#D with %qL linkage"
 msgstr ""
 
-#: cp/decl.cc:2082
+#: cp/decl.cc:2083
 #, gcc-internal-format
 msgid "previous declaration with %qL linkage"
 msgstr ""
 
-#: cp/decl.cc:2131 cp/decl.cc:2141
+#: cp/decl.cc:2132 cp/decl.cc:2142
 #, gcc-internal-format
 msgid "default argument given for parameter %d of %q#D"
 msgstr ""
 
-#: cp/decl.cc:2134 cp/decl.cc:2144
+#: cp/decl.cc:2135 cp/decl.cc:2145
 #, gcc-internal-format
 msgid "previous specification in %q#D here"
 msgstr ""
 
-#: cp/decl.cc:2184
+#: cp/decl.cc:2185
 #, gcc-internal-format
 msgid "declaration %qD conflicts with builtin"
 msgstr ""
 
-#: cp/decl.cc:2187
+#: cp/decl.cc:2188
 #, gcc-internal-format
 msgid "declaration %qD conflicts with import"
 msgstr ""
 
-#: cp/decl.cc:2188
+#: cp/decl.cc:2189
 #, gcc-internal-format
 msgid "import declared %q#D here"
 msgstr ""
 
-#: cp/decl.cc:2200
+#: cp/decl.cc:2201
 #, gcc-internal-format
 msgid "conflicting exporting declaration %qD"
 msgstr ""
 
-#: cp/decl.cc:2201
+#: cp/decl.cc:2202
 #, gcc-internal-format
 msgid "previous declaration %q#D here"
 msgstr ""
 
-#: cp/decl.cc:2228
+#: cp/decl.cc:2229
 #, gcc-internal-format
 msgid "previous definition of %qD here"
 msgstr ""
 
-#: cp/decl.cc:2229
+#: cp/decl.cc:2230
 #, gcc-internal-format
 msgid "previous declaration of %qD here"
 msgstr ""
 
-#: cp/decl.cc:2242
+#: cp/decl.cc:2243
 #, gcc-internal-format
 msgid ""
 "function %qD declared %<[[noreturn]]%> but its first declaration was not"
 msgstr ""
 
-#: cp/decl.cc:2289
+#: cp/decl.cc:2290
 #, gcc-internal-format
 msgid "redundant redeclaration of %qD in same scope"
 msgstr ""
 
-#: cp/decl.cc:2305
+#: cp/decl.cc:2306
 #, gcc-internal-format
 msgid "deleted definition of %qD is not first declaration"
 msgstr ""
@@ -55353,12 +55436,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:2803
+#: cp/decl.cc:2804
 #, gcc-internal-format
 msgid "explicit specialization of %qD after first use"
 msgstr ""
 
-#: cp/decl.cc:2985
+#: cp/decl.cc:2986
 #, gcc-internal-format
 msgid ""
 "%qD: visibility attribute ignored because it conflicts with previous "
@@ -55366,38 +55449,38 @@ msgid ""
 msgstr ""
 
 #. Reject two definitions.
-#: cp/decl.cc:3249 cp/decl.cc:3278 cp/decl.cc:3320 cp/decl.cc:3337
-#: cp/decl.cc:3440
+#: cp/decl.cc:3250 cp/decl.cc:3279 cp/decl.cc:3321 cp/decl.cc:3338
+#: cp/decl.cc:3441
 #, gcc-internal-format
 msgid "redefinition of %q#D"
 msgstr ""
 
-#: cp/decl.cc:3265
+#: cp/decl.cc:3266
 #, gcc-internal-format
 msgid "%qD conflicts with used function"
 msgstr ""
 
-#: cp/decl.cc:3275
+#: cp/decl.cc:3276
 #, gcc-internal-format
 msgid "%q#D not declared in class"
 msgstr ""
 
-#: cp/decl.cc:3289 cp/decl.cc:3347
+#: cp/decl.cc:3290 cp/decl.cc:3348
 #, gcc-internal-format
 msgid "%q+D redeclared inline with %<gnu_inline%> attribute"
 msgstr ""
 
-#: cp/decl.cc:3292 cp/decl.cc:3350
+#: cp/decl.cc:3293 cp/decl.cc:3351
 #, gcc-internal-format
 msgid "%q+D redeclared inline without %<gnu_inline%> attribute"
 msgstr ""
 
-#: cp/decl.cc:3299 cp/decl.cc:3357
+#: cp/decl.cc:3300 cp/decl.cc:3358
 #, gcc-internal-format
 msgid "deduction guide %q+D redeclared"
 msgstr ""
 
-#: cp/decl.cc:3306
+#: cp/decl.cc:3307
 #, gcc-internal-format
 msgid "comparison operator %q+D defaulted after its first declaration"
 msgstr ""
@@ -55405,2482 +55488,2487 @@ msgstr ""
 #. is_primary=
 #. is_partial=
 #. is_friend_decl=
-#: cp/decl.cc:3371
+#: cp/decl.cc:3372
 #, gcc-internal-format
 msgid "redeclaration of friend %q#D may not have default template arguments"
 msgstr ""
 
-#: cp/decl.cc:3386
+#: cp/decl.cc:3387
 #, gcc-internal-format
 msgid "thread-local declaration of %q#D follows non-thread-local declaration"
 msgstr ""
 
-#: cp/decl.cc:3389
+#: cp/decl.cc:3390
 #, gcc-internal-format
 msgid "non-thread-local declaration of %q#D follows thread-local declaration"
 msgstr ""
 
-#: cp/decl.cc:3404 cp/decl.cc:3448 cp/name-lookup.cc:2715
+#: cp/decl.cc:3405 cp/decl.cc:3449 cp/name-lookup.cc:2715
 #: cp/name-lookup.cc:3187 cp/name-lookup.cc:3211
 #, gcc-internal-format
 msgid "redeclaration of %q#D"
 msgstr ""
 
-#: cp/decl.cc:3431
+#: cp/decl.cc:3432
 #, gcc-internal-format
 msgid "redundant redeclaration of %<constexpr%> static data member %qD"
 msgstr ""
 
-#: cp/decl.cc:3499
+#: cp/decl.cc:3500
 #, gcc-internal-format
 msgid "local label %qE conflicts with existing label"
 msgstr ""
 
-#: cp/decl.cc:3500
+#: cp/decl.cc:3501
 #, gcc-internal-format
 msgid "previous label"
 msgstr ""
 
-#: cp/decl.cc:3590
+#: cp/decl.cc:3591
 #, gcc-internal-format
 msgid "  from here"
 msgstr ""
 
-#: cp/decl.cc:3614 cp/decl.cc:3855
+#: cp/decl.cc:3615 cp/decl.cc:3856
 #, gcc-internal-format
 msgid "  exits OpenMP structured block"
 msgstr ""
 
-#: cp/decl.cc:3642
+#: cp/decl.cc:3643
 #, gcc-internal-format
 msgid "  crosses initialization of %q#D"
 msgstr ""
 
-#: cp/decl.cc:3645
+#: cp/decl.cc:3646
 #, gcc-internal-format
 msgid "  enters scope of %q#D, which has non-trivial destructor"
 msgstr ""
 
-#: cp/decl.cc:3659 cp/decl.cc:3822
+#: cp/decl.cc:3660 cp/decl.cc:3823
 #, gcc-internal-format
 msgid "  enters %<try%> block"
 msgstr ""
 
-#: cp/decl.cc:3665 cp/decl.cc:3804 cp/decl.cc:3824
+#: cp/decl.cc:3666 cp/decl.cc:3805 cp/decl.cc:3825
 #, gcc-internal-format
 msgid "  enters %<catch%> block"
 msgstr ""
 
-#: cp/decl.cc:3671 cp/decl.cc:3838
+#: cp/decl.cc:3672 cp/decl.cc:3839
 #, gcc-internal-format
 msgid "  enters OpenMP structured block"
 msgstr ""
 
-#: cp/decl.cc:3677 cp/decl.cc:3826
+#: cp/decl.cc:3678 cp/decl.cc:3827
 #, gcc-internal-format
 msgid "  enters synchronized or atomic statement"
 msgstr ""
 
-#: cp/decl.cc:3683 cp/decl.cc:3832
+#: cp/decl.cc:3684 cp/decl.cc:3833
 #, gcc-internal-format
 msgid "  enters statement expression"
 msgstr ""
 
-#: cp/decl.cc:3690 cp/decl.cc:3828
+#: cp/decl.cc:3691 cp/decl.cc:3829
 #, gcc-internal-format
 msgid "  enters %<constexpr if%> statement"
 msgstr ""
 
-#: cp/decl.cc:3696 cp/decl.cc:3830
+#: cp/decl.cc:3697 cp/decl.cc:3831
 #, gcc-internal-format
 msgid "  enters %<consteval if%> statement"
 msgstr ""
 
-#: cp/decl.cc:3811
+#: cp/decl.cc:3812
 #, gcc-internal-format
 msgid "  skips initialization of %q#D"
 msgstr ""
 
-#: cp/decl.cc:3814
+#: cp/decl.cc:3815
 #, gcc-internal-format
 msgid "  enters scope of %q#D which has non-trivial destructor"
 msgstr ""
 
-#: cp/decl.cc:4281 cp/parser.cc:7044
+#: cp/decl.cc:4282 cp/parser.cc:7044
 #, gcc-internal-format
 msgid "%qD used without template arguments"
 msgstr ""
 
-#: cp/decl.cc:4287
+#: cp/decl.cc:4288
 #, gcc-internal-format
 msgid "%qD is a function, not a type"
 msgstr ""
 
-#: cp/decl.cc:4298
+#: cp/decl.cc:4299
 #, gcc-internal-format
 msgid "%q#T is not a class"
 msgstr ""
 
-#: cp/decl.cc:4326 cp/decl.cc:4427
+#: cp/decl.cc:4328 cp/decl.cc:4429
 #, gcc-internal-format
 msgid "no class template named %q#T in %q#T"
 msgstr ""
 
-#: cp/decl.cc:4327
+#: cp/decl.cc:4329
 #, gcc-internal-format
 msgid "no type named %q#T in %q#T"
 msgstr ""
 
-#: cp/decl.cc:4340
+#: cp/decl.cc:4342
 #, gcc-internal-format
 msgid "lookup of %qT in %qT is ambiguous"
 msgstr ""
 
-#: cp/decl.cc:4349
+#: cp/decl.cc:4351
 #, gcc-internal-format
 msgid "%<typename %T::%D%> names %q#T, which is not a class template"
 msgstr ""
 
-#: cp/decl.cc:4362
+#: cp/decl.cc:4364
 #, gcc-internal-format
-msgid "%<typename %T::%D%> names %q#T, which is not a type"
+msgid "%<typename %T::%D%> names %q#D, which is not a type"
 msgstr ""
 
-#: cp/decl.cc:4436
+#: cp/decl.cc:4438
 #, gcc-internal-format
 msgid "template parameters do not match template %qD"
 msgstr ""
 
-#: cp/decl.cc:4793
+#: cp/decl.cc:4795
 #, gcc-internal-format
 msgid "%<-faligned-new=%d%> is not a power of two"
 msgstr ""
 
-#: cp/decl.cc:4967
+#: cp/decl.cc:4969
 #, gcc-internal-format
 msgid "%<--param destructive-interference-size=%d%> is less than %d"
 msgstr ""
 
-#: cp/decl.cc:4971
+#: cp/decl.cc:4973
 #, gcc-internal-format
 msgid ""
 "%<--param destructive-interference-size=%d%> is less than %<--param l1-cache-"
 "line-size=%d%>"
 msgstr ""
 
-#: cp/decl.cc:4984
+#: cp/decl.cc:4986
 #, gcc-internal-format
 msgid "%<--param constructive-interference-size=%d%> is less than %d"
 msgstr ""
 
-#: cp/decl.cc:4989
+#: cp/decl.cc:4991
 #, gcc-internal-format
 msgid ""
 "%<--param constructive-interference-size=%d%> is greater than %<--param l1-"
 "cache-line-size=%d%>"
 msgstr ""
 
-#: cp/decl.cc:5315
+#: cp/decl.cc:5317
 #, gcc-internal-format
 msgid ""
 "%q#D invalid; an anonymous union may only have public non-static data members"
 msgstr ""
 
-#: cp/decl.cc:5325 cp/parser.cc:23007
+#: cp/decl.cc:5327 cp/parser.cc:23020
 #, gcc-internal-format
 msgid "this flexibility is deprecated and will be removed"
 msgstr ""
 
-#: cp/decl.cc:5354
+#: cp/decl.cc:5356
 #, gcc-internal-format
 msgid "anonymous struct with base classes"
 msgstr ""
 
-#: cp/decl.cc:5366
+#: cp/decl.cc:5368
 #, gcc-internal-format
 msgid "member %q+#D with constructor not allowed in anonymous aggregate"
 msgstr ""
 
-#: cp/decl.cc:5369
+#: cp/decl.cc:5371
 #, gcc-internal-format
 msgid "member %q+#D with destructor not allowed in anonymous aggregate"
 msgstr ""
 
-#: cp/decl.cc:5372
+#: cp/decl.cc:5374
 #, gcc-internal-format
 msgid ""
 "member %q+#D with copy assignment operator not allowed in anonymous aggregate"
 msgstr ""
 
-#: cp/decl.cc:5391
+#: cp/decl.cc:5393
 #, gcc-internal-format
 msgid "attribute ignored in declaration of %q#T"
 msgstr ""
 
-#: cp/decl.cc:5394
+#: cp/decl.cc:5396
 #, gcc-internal-format
 msgid "attribute for %q#T must follow the %qs keyword"
 msgstr ""
 
-#: cp/decl.cc:5436
+#: cp/decl.cc:5438
 #, gcc-internal-format
 msgid "multiple types in one declaration"
 msgstr ""
 
-#: cp/decl.cc:5441
+#: cp/decl.cc:5443
 #, gcc-internal-format
 msgid "redeclaration of C++ built-in type %qT"
 msgstr ""
 
-#: cp/decl.cc:5458
+#: cp/decl.cc:5460
 #, gcc-internal-format
 msgid "%<auto%> can only be specified for variables or function declarations"
 msgstr ""
 
-#: cp/decl.cc:5491
+#: cp/decl.cc:5493
 #, gcc-internal-format
 msgid "missing type-name in typedef-declaration"
 msgstr ""
 
-#: cp/decl.cc:5499
+#: cp/decl.cc:5501
 #, gcc-internal-format
 msgid "ISO C++ prohibits anonymous structs"
 msgstr ""
 
-#: cp/decl.cc:5506
+#: cp/decl.cc:5508
 #, gcc-internal-format
 msgid "%<inline%> can only be specified for functions"
 msgstr ""
 
-#: cp/decl.cc:5509
+#: cp/decl.cc:5511
 #, gcc-internal-format
 msgid "%<virtual%> can only be specified for functions"
 msgstr ""
 
-#: cp/decl.cc:5514
+#: cp/decl.cc:5516
 #, gcc-internal-format
 msgid "%<friend%> can only be specified inside a class"
 msgstr ""
 
-#: cp/decl.cc:5517
+#: cp/decl.cc:5519
 #, gcc-internal-format
 msgid "%<explicit%> can only be specified for constructors"
 msgstr ""
 
-#: cp/decl.cc:5520
+#: cp/decl.cc:5522
 #, gcc-internal-format
 msgid "a storage class can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.cc:5524
+#: cp/decl.cc:5526
 #, gcc-internal-format
 msgid "%<const%> can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.cc:5528
+#: cp/decl.cc:5530
 #, gcc-internal-format
 msgid "%<volatile%> can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.cc:5532
+#: cp/decl.cc:5534
 #, gcc-internal-format
 msgid "%<__restrict%> can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.cc:5536
+#: cp/decl.cc:5538
 #, gcc-internal-format
 msgid "%<__thread%> can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.cc:5540
+#: cp/decl.cc:5542
 #, gcc-internal-format
 msgid "%<typedef%> was ignored in this declaration"
 msgstr ""
 
-#: cp/decl.cc:5543 cp/decl.cc:5546 cp/decl.cc:5549
+#: cp/decl.cc:5545 cp/decl.cc:5548 cp/decl.cc:5551
 #, gcc-internal-format
 msgid "%qs cannot be used for type declarations"
 msgstr ""
 
-#: cp/decl.cc:5571
+#: cp/decl.cc:5573
 #, gcc-internal-format
 msgid "attribute ignored in explicit instantiation %q#T"
 msgstr ""
 
-#: cp/decl.cc:5574
+#: cp/decl.cc:5576
 #, gcc-internal-format
 msgid "no attribute can be applied to an explicit instantiation"
 msgstr ""
 
-#: cp/decl.cc:5653
+#: cp/decl.cc:5655
 #, 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:5657
+#: cp/decl.cc:5659
 #, gcc-internal-format
 msgid ""
 "ignoring attributes applied to dependent type %qT without an associated "
 "declaration"
 msgstr ""
 
-#: cp/decl.cc:5723 cp/decl2.cc:1000
+#: cp/decl.cc:5725 cp/decl2.cc:1021
 #, gcc-internal-format
 msgid "typedef %qD is initialized (use %qs instead)"
 msgstr ""
 
-#: cp/decl.cc:5736
+#: cp/decl.cc:5738
 #, gcc-internal-format
 msgid "declaration of %q#D has %<extern%> and is initialized"
 msgstr ""
 
-#: cp/decl.cc:5774
+#: cp/decl.cc:5776
 #, gcc-internal-format
 msgid "definition of %q#D is marked %<dllimport%>"
 msgstr ""
 
-#: cp/decl.cc:5798
+#: cp/decl.cc:5800
 #, gcc-internal-format
 msgid "%q+#D is not a static data member of %q#T"
 msgstr ""
 
-#: cp/decl.cc:5806
+#: cp/decl.cc:5808
 #, gcc-internal-format
 msgid "non-member-template declaration of %qD"
 msgstr ""
 
-#: cp/decl.cc:5807
+#: cp/decl.cc:5809
 #, gcc-internal-format
 msgid "does not match member template declaration here"
 msgstr ""
 
-#: cp/decl.cc:5819
+#: cp/decl.cc:5821
 #, gcc-internal-format
 msgid "ISO C++ does not permit %<%T::%D%> to be defined as %<%T::%D%>"
 msgstr ""
 
-#: cp/decl.cc:5831
+#: cp/decl.cc:5833
 #, gcc-internal-format
 msgid "duplicate initialization of %qD"
 msgstr ""
 
-#: cp/decl.cc:5881 cp/decl.cc:5885
+#: cp/decl.cc:5883 cp/decl.cc:5887
 #, gcc-internal-format
 msgid "declaration of %q#D outside of class is not definition"
 msgstr ""
 
-#: cp/decl.cc:5903
+#: cp/decl.cc:5905
 #, gcc-internal-format
 msgid "block-scope extern declaration %q#D not permitted in module purview"
 msgstr ""
 
-#: cp/decl.cc:5939
+#: cp/decl.cc:5941
 #, gcc-internal-format
 msgid ""
 "%qD defined %<thread_local%> in %qs function only available with %<-std=c+"
 "+2b%> or %<-std=gnu++2b%>"
 msgstr ""
 
-#: cp/decl.cc:5945
+#: cp/decl.cc:5947
 #, gcc-internal-format
 msgid ""
 "%qD defined %<static%> in %qs function only available with %<-std=c++2b%> or "
 "%<-std=gnu++2b%>"
 msgstr ""
 
-#: cp/decl.cc:6010
+#: cp/decl.cc:6012
 #, gcc-internal-format
 msgid "variable %q#D has initializer but incomplete type"
 msgstr ""
 
-#: cp/decl.cc:6016 cp/decl.cc:7335
+#: cp/decl.cc:6018 cp/decl.cc:7337
 #, gcc-internal-format
 msgid "elements of array %q#D have incomplete type"
 msgstr ""
 
-#: cp/decl.cc:6026
+#: cp/decl.cc:6028
 #, gcc-internal-format
 msgid "aggregate %q#D has incomplete type and cannot be defined"
 msgstr ""
 
-#: cp/decl.cc:6093
+#: cp/decl.cc:6095
 #, gcc-internal-format
 msgid "%qD declared as reference but not initialized"
 msgstr ""
 
-#: cp/decl.cc:6176
+#: cp/decl.cc:6178
 #, gcc-internal-format
 msgid "name used in a GNU-style designated initializer for an array"
 msgstr ""
 
-#: cp/decl.cc:6182
+#: cp/decl.cc:6184
 #, gcc-internal-format
 msgid "name %qD used in a GNU-style designated initializer for an array"
 msgstr ""
 
-#: cp/decl.cc:6201
+#: cp/decl.cc:6203
 #, gcc-internal-format
 msgid "non-trivial designated initializers not supported"
 msgstr ""
 
-#: cp/decl.cc:6205
+#: cp/decl.cc:6207
 #, gcc-internal-format
 msgid "C99 designator %qE is not an integral constant-expression"
 msgstr ""
 
-#: cp/decl.cc:6266
+#: cp/decl.cc:6268
 #, gcc-internal-format
 msgid "initializer fails to determine size of %qD"
 msgstr ""
 
-#: cp/decl.cc:6273
+#: cp/decl.cc:6275
 #, gcc-internal-format
 msgid "array size missing in %qD"
 msgstr ""
 
-#: cp/decl.cc:6285
+#: cp/decl.cc:6287
 #, gcc-internal-format
 msgid "zero-size array %qD"
 msgstr ""
 
-#: cp/decl.cc:6325
+#: cp/decl.cc:6327
 #, gcc-internal-format
 msgid "storage size of %qD isn%'t known"
 msgstr ""
 
-#: cp/decl.cc:6350
+#: cp/decl.cc:6352
 #, gcc-internal-format
 msgid "storage size of %qD isn%'t constant"
 msgstr ""
 
-#: cp/decl.cc:6433
+#: cp/decl.cc:6435
 #, gcc-internal-format
 msgid ""
 "sorry: semantics of inline variable %q#D are wrong (you%'ll wind up with "
 "multiple copies)"
 msgstr ""
 
-#: cp/decl.cc:6437
+#: cp/decl.cc:6439
 #, 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:6443
+#: cp/decl.cc:6445
 #, gcc-internal-format
 msgid "you can work around this by removing the initializer"
 msgstr ""
 
-#: cp/decl.cc:6485 rust/backend/rust-tree.cc:3233
+#: cp/decl.cc:6487 rust/backend/rust-tree.cc:3230
 #, gcc-internal-format
 msgid "uninitialized %<const %D%>"
 msgstr ""
 
-#: cp/decl.cc:6492 rust/backend/rust-tree.cc:3240
+#: cp/decl.cc:6494 rust/backend/rust-tree.cc:3237
 #, gcc-internal-format
 msgid "uninitialized variable %qD in %<constexpr%> function"
 msgstr ""
 
-#: cp/decl.cc:6501 rust/backend/rust-tree.cc:3249
+#: cp/decl.cc:6503 rust/backend/rust-tree.cc:3246
 #, gcc-internal-format
 msgid "uninitialized variable %qD in %<constexpr%> context"
 msgstr ""
 
-#: cp/decl.cc:6509
+#: cp/decl.cc:6511
 #, gcc-internal-format
 msgid "%q#T has no user-provided default constructor"
 msgstr ""
 
-#: cp/decl.cc:6513
+#: cp/decl.cc:6515
 #, gcc-internal-format
 msgid ""
 "constructor is not user-provided because it is explicitly defaulted in the "
 "class body"
 msgstr ""
 
-#: cp/decl.cc:6516
+#: cp/decl.cc:6518
 #, gcc-internal-format
 msgid "and the implicitly-defined constructor does not initialize %q#D"
 msgstr ""
 
-#: cp/decl.cc:6708
+#: cp/decl.cc:6710
 #, gcc-internal-format
 msgid "invalid type %qT as initializer for a vector of type %qT"
 msgstr ""
 
-#: cp/decl.cc:6780
+#: cp/decl.cc:6782
 #, gcc-internal-format
 msgid "initializer for %qT must be brace-enclosed"
 msgstr ""
 
-#: cp/decl.cc:6824
+#: cp/decl.cc:6826
 #, gcc-internal-format
 msgid "%<[%E] =%> used in a GNU-style designated initializer for class %qT"
 msgstr ""
 
-#: cp/decl.cc:6837
+#: cp/decl.cc:6839
 #, gcc-internal-format
 msgid "%qT has no non-static data member named %qD"
 msgstr ""
 
-#: cp/decl.cc:6861
+#: cp/decl.cc:6863
 #, gcc-internal-format
 msgid "%qD is not a direct member of %qT"
 msgstr ""
 
-#: cp/decl.cc:6916
+#: cp/decl.cc:6918
 #, gcc-internal-format
 msgid "invalid initializer for %q#D"
 msgstr ""
 
-#: cp/decl.cc:6966
+#: cp/decl.cc:6968
 #, gcc-internal-format
 msgid "C99 designator %qE outside aggregate initializer"
 msgstr ""
 
-#: cp/decl.cc:7005 cp/decl.cc:7293 cp/typeck2.cc:1597 cp/typeck2.cc:1927
+#: cp/decl.cc:7007 cp/decl.cc:7295 cp/typeck2.cc:1597 cp/typeck2.cc:1927
 #: cp/typeck2.cc:1975 cp/typeck2.cc:2022
 #, gcc-internal-format
 msgid "too many initializers for %qT"
 msgstr ""
 
-#: cp/decl.cc:7047
+#: cp/decl.cc:7049
 #, gcc-internal-format
 msgid "braces around scalar initializer for type %qT"
 msgstr ""
 
-#: cp/decl.cc:7057
+#: cp/decl.cc:7059
 #, gcc-internal-format
 msgid "too many braces around scalar initializer for type %qT"
 msgstr ""
 
-#: cp/decl.cc:7190
+#: cp/decl.cc:7192
 #, gcc-internal-format
 msgid "missing braces around initializer for %qT"
 msgstr ""
 
-#: cp/decl.cc:7323
+#: cp/decl.cc:7325
 #, gcc-internal-format
 msgid "structured binding has incomplete type %qT"
 msgstr ""
 
-#: cp/decl.cc:7337
+#: cp/decl.cc:7339
 #, gcc-internal-format
 msgid "elements of array %q#T have incomplete type"
 msgstr ""
 
-#: cp/decl.cc:7350
+#: cp/decl.cc:7352
 #, gcc-internal-format
 msgid "variable-sized compound literal"
 msgstr ""
 
-#: cp/decl.cc:7406
+#: cp/decl.cc:7408
 #, gcc-internal-format
 msgid "%q#D has incomplete type"
 msgstr ""
 
-#: cp/decl.cc:7427
+#: cp/decl.cc:7429
 #, gcc-internal-format
 msgid "scalar object %qD requires one element in initializer"
 msgstr ""
 
-#: cp/decl.cc:7472
+#: cp/decl.cc:7474
 #, gcc-internal-format
 msgid "in C++98 %qD must be initialized by constructor, not by %<{...}%>"
 msgstr ""
 
-#: cp/decl.cc:7615
+#: cp/decl.cc:7617
 #, gcc-internal-format
 msgid "array %qD initialized by parenthesized string literal %qE"
 msgstr ""
 
-#: cp/decl.cc:7654
+#: cp/decl.cc:7656
 #, gcc-internal-format
 msgid "initializer invalid for static member with constructor"
 msgstr ""
 
-#: cp/decl.cc:7656
+#: cp/decl.cc:7658
 #, gcc-internal-format
 msgid "non-constant in-class initialization invalid for static member %qD"
 msgstr ""
 
-#: cp/decl.cc:7659
+#: cp/decl.cc:7661
 #, gcc-internal-format
 msgid ""
 "non-constant in-class initialization invalid for non-inline static member %qD"
 msgstr ""
 
-#: cp/decl.cc:7664
+#: cp/decl.cc:7666
 #, gcc-internal-format
 msgid "(an out of class initialization is required)"
 msgstr ""
 
-#: cp/decl.cc:7866
+#: cp/decl.cc:7868
 #, gcc-internal-format
 msgid "reference %qD is initialized with itself"
 msgstr ""
 
-#: cp/decl.cc:8123
+#: cp/decl.cc:8125
 #, gcc-internal-format
 msgid "could not find variant declaration"
 msgstr ""
 
-#: cp/decl.cc:8147
+#: cp/decl.cc:8149
 #, gcc-internal-format
 msgid "%<declare variant%> on constructor %qD"
 msgstr ""
 
-#: cp/decl.cc:8152
+#: cp/decl.cc:8154
 #, gcc-internal-format
 msgid "%<declare variant%> on destructor %qD"
 msgstr ""
 
-#: cp/decl.cc:8157
+#: cp/decl.cc:8159
 #, gcc-internal-format
 msgid "%<declare variant%> on defaulted %qD"
 msgstr ""
 
-#: cp/decl.cc:8162
+#: cp/decl.cc:8164
 #, gcc-internal-format
 msgid "%<declare variant%> on deleted %qD"
 msgstr ""
 
-#: cp/decl.cc:8167
+#: cp/decl.cc:8169
 #, gcc-internal-format
 msgid "%<declare variant%> on virtual %qD"
 msgstr ""
 
-#: cp/decl.cc:8217
+#: cp/decl.cc:8219
 #, gcc-internal-format
 msgid "assignment (not initialization) in declaration"
 msgstr ""
 
-#: cp/decl.cc:8238 cp/decl.cc:14754
+#: cp/decl.cc:8240 cp/decl.cc:14789
 #, gcc-internal-format
 msgid "ISO C++17 does not allow %<register%> storage class specifier"
 msgstr ""
 
-#: cp/decl.cc:8242 cp/decl.cc:14758
+#: cp/decl.cc:8244 cp/decl.cc:14793
 #, gcc-internal-format
 msgid "%<register%> storage class specifier used"
 msgstr ""
 
-#: cp/decl.cc:8310
+#: cp/decl.cc:8289 cp/decl.cc:14756
+#, gcc-internal-format
+msgid "declaration of %q#D has no initializer"
+msgstr ""
+
+#: cp/decl.cc:8325
 #, gcc-internal-format
 msgid ""
 "initializer for %<decltype(auto) %D%> has function type; did you forget the "
 "%<()%>?"
 msgstr ""
 
-#: cp/decl.cc:8321
+#: cp/decl.cc:8336
 #, gcc-internal-format
 msgid "deduced type %qT for %qD is incomplete"
 msgstr ""
 
-#: cp/decl.cc:8451
+#: cp/decl.cc:8466
 #, gcc-internal-format
 msgid "variable concept has no initializer"
 msgstr ""
 
-#: cp/decl.cc:8510
+#: cp/decl.cc:8525
 #, gcc-internal-format
 msgid "shadowing previous type declaration of %q#D"
 msgstr ""
 
-#: cp/decl.cc:8553
+#: cp/decl.cc:8568
 #, gcc-internal-format
 msgid ""
 "%<constinit%> can only be applied to a variable with static or thread "
 "storage duration"
 msgstr ""
 
-#: cp/decl.cc:8731
+#: cp/decl.cc:8760
 #, gcc-internal-format
 msgid "function %q#D is initialized like a variable"
 msgstr ""
 
-#: cp/decl.cc:8842
+#: cp/decl.cc:8871
 #, gcc-internal-format
 msgid ""
 "cannot decompose class type %qT because it has an anonymous struct member"
 msgstr ""
 
-#: cp/decl.cc:8845
+#: cp/decl.cc:8874
 #, gcc-internal-format
 msgid ""
 "cannot decompose class type %qT because it has an anonymous union member"
 msgstr ""
 
-#: cp/decl.cc:8852
+#: cp/decl.cc:8881
 #, gcc-internal-format
 msgid "cannot decompose inaccessible member %qD of %qT"
 msgstr ""
 
-#: cp/decl.cc:8878
+#: cp/decl.cc:8907
 #, 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:8887
+#: cp/decl.cc:8916
 #, gcc-internal-format
 msgid ""
 "cannot decompose class type %qT: its base classes %qT and %qT have non-"
 "static data members"
 msgstr ""
 
-#: cp/decl.cc:9097
+#: cp/decl.cc:9126
 #, gcc-internal-format
 msgid "structured binding refers to incomplete type %qT"
 msgstr ""
 
-#: cp/decl.cc:9113
+#: cp/decl.cc:9142
 #, gcc-internal-format
 msgid "cannot decompose variable length array %qT"
 msgstr ""
 
-#: cp/decl.cc:9122 cp/decl.cc:9201
+#: cp/decl.cc:9151 cp/decl.cc:9230
 #, 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:9126
+#: cp/decl.cc:9155
 #, 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:9129
+#: cp/decl.cc:9158
 #, 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:9170
+#: cp/decl.cc:9199
 #, gcc-internal-format
 msgid "cannot decompose variable length vector %qT"
 msgstr ""
 
-#: cp/decl.cc:9194
+#: cp/decl.cc:9223
 #, gcc-internal-format
 msgid "%<std::tuple_size<%T>::value%> is not an integral constant expression"
 msgstr ""
 
-#: cp/decl.cc:9203
+#: cp/decl.cc:9232
 #, gcc-internal-format
 msgid "while %qT decomposes into %E elements"
 msgstr ""
 
-#: cp/decl.cc:9224
+#: cp/decl.cc:9253
 #, gcc-internal-format
 msgid "%<std::tuple_element<%u, %T>::type%> is %<void%>"
 msgstr ""
 
-#: cp/decl.cc:9230
+#: cp/decl.cc:9259
 #, gcc-internal-format
 msgid "in initialization of structured binding variable %qD"
 msgstr ""
 
-#: cp/decl.cc:9259
+#: cp/decl.cc:9288
 #, gcc-internal-format
 msgid "cannot decompose union type %qT"
 msgstr ""
 
-#: cp/decl.cc:9264
+#: cp/decl.cc:9293
 #, gcc-internal-format
 msgid "cannot decompose non-array non-class type %qT"
 msgstr ""
 
-#: cp/decl.cc:9269
+#: cp/decl.cc:9298
 #, gcc-internal-format
 msgid "cannot decompose lambda closure type %qT"
 msgstr ""
 
-#: cp/decl.cc:9275
+#: cp/decl.cc:9304
 #, gcc-internal-format
 msgid "structured binding refers to incomplete class type %qT"
 msgstr ""
 
-#: cp/decl.cc:9284
+#: cp/decl.cc:9313
 #, gcc-internal-format
 msgid "cannot decompose class type %qT without non-static data members"
 msgstr ""
 
-#: cp/decl.cc:9751
+#: cp/decl.cc:9780
 #, gcc-internal-format
 msgid ""
 "non-local variable %qD declared %<__thread%> needs dynamic initialization"
 msgstr ""
 
-#: cp/decl.cc:9754
+#: cp/decl.cc:9783
 #, gcc-internal-format
 msgid ""
 "non-local variable %qD declared %<__thread%> has a non-trivial destructor"
 msgstr ""
 
-#: cp/decl.cc:9759
+#: cp/decl.cc:9788
 #, gcc-internal-format
 msgid "C++11 %<thread_local%> allows dynamic initialization and destruction"
 msgstr ""
 
-#: cp/decl.cc:9978
+#: cp/decl.cc:10007
 #, gcc-internal-format
 msgid "initializer fails to determine size of %qT"
 msgstr ""
 
-#: cp/decl.cc:9982
+#: cp/decl.cc:10011
 #, gcc-internal-format
 msgid "array size missing in %qT"
 msgstr ""
 
-#: cp/decl.cc:9985
+#: cp/decl.cc:10014
 #, gcc-internal-format
 msgid "zero-size array %qT"
 msgstr ""
 
-#: cp/decl.cc:10001
+#: cp/decl.cc:10030
 #, gcc-internal-format
 msgid "destructor for alien class %qT cannot be a member"
 msgstr ""
 
-#: cp/decl.cc:10003
+#: cp/decl.cc:10032
 #, gcc-internal-format
 msgid "constructor for alien class %qT cannot be a member"
 msgstr ""
 
-#: cp/decl.cc:10029
+#: cp/decl.cc:10058
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> variable"
 msgstr ""
 
-#: cp/decl.cc:10031
+#: cp/decl.cc:10060
 #, gcc-internal-format
 msgid ""
 "%<const%> and %<volatile%> function specifiers on %qD invalid in variable "
 "declaration"
 msgstr ""
 
-#: cp/decl.cc:10037
+#: cp/decl.cc:10066
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> parameter"
 msgstr ""
 
-#: cp/decl.cc:10040
+#: cp/decl.cc:10069
 #, gcc-internal-format
 msgid "%qD declared as an %<inline%> parameter"
 msgstr ""
 
-#: cp/decl.cc:10042
+#: cp/decl.cc:10071
 #, gcc-internal-format
 msgid ""
 "%<const%> and %<volatile%> function specifiers on %qD invalid in parameter "
 "declaration"
 msgstr ""
 
-#: cp/decl.cc:10048
+#: cp/decl.cc:10077
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> type"
 msgstr ""
 
-#: cp/decl.cc:10051
+#: cp/decl.cc:10080
 #, gcc-internal-format
 msgid "%qD declared as an %<inline%> type"
 msgstr ""
 
-#: cp/decl.cc:10053
+#: cp/decl.cc:10082
 #, gcc-internal-format
 msgid ""
 "%<const%> and %<volatile%> function specifiers on %qD invalid in type "
 "declaration"
 msgstr ""
 
-#: cp/decl.cc:10059
+#: cp/decl.cc:10088
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> field"
 msgstr ""
 
-#: cp/decl.cc:10062
+#: cp/decl.cc:10091
 #, gcc-internal-format
 msgid "%qD declared as an %<inline%> field"
 msgstr ""
 
-#: cp/decl.cc:10064
+#: cp/decl.cc:10093
 #, gcc-internal-format
 msgid ""
 "%<const%> and %<volatile%> function specifiers on %qD invalid in field "
 "declaration"
 msgstr ""
 
-#: cp/decl.cc:10071
+#: cp/decl.cc:10100
 #, gcc-internal-format
 msgid "%q+D declared as a friend"
 msgstr ""
 
-#: cp/decl.cc:10078
+#: cp/decl.cc:10107
 #, gcc-internal-format
 msgid "%q+D declared with an exception specification"
 msgstr ""
 
-#: cp/decl.cc:10110
+#: cp/decl.cc:10139
 #, gcc-internal-format
 msgid "definition of %qD is not in namespace enclosing %qT"
 msgstr ""
 
-#: cp/decl.cc:10150
+#: cp/decl.cc:10179
 #, gcc-internal-format
 msgid "static member function %q#D declared with type qualifiers"
 msgstr ""
 
-#: cp/decl.cc:10161
+#: cp/decl.cc:10190
 #, gcc-internal-format
 msgid "concept %q#D declared with function parameters"
 msgstr ""
 
-#: cp/decl.cc:10168
+#: cp/decl.cc:10197
 #, gcc-internal-format
 msgid "concept %q#D declared with a deduced return type"
 msgstr ""
 
-#: cp/decl.cc:10171
+#: cp/decl.cc:10200
 #, gcc-internal-format
 msgid "concept %q#D with non-%<bool%> return type %qT"
 msgstr ""
 
-#: cp/decl.cc:10247
+#: cp/decl.cc:10276
 #, gcc-internal-format
 msgid "concept %qD has no definition"
 msgstr ""
 
-#: cp/decl.cc:10276
+#: cp/decl.cc:10305
 #, gcc-internal-format
 msgid "a function concept cannot be constrained"
 msgstr ""
 
-#: cp/decl.cc:10286
+#: cp/decl.cc:10315
 #, gcc-internal-format
 msgid "constraints on a non-templated function"
 msgstr ""
 
-#: cp/decl.cc:10331
+#: cp/decl.cc:10360
 #, gcc-internal-format
 msgid "defining explicit specialization %qD in friend declaration"
 msgstr ""
 
-#: cp/decl.cc:10342
+#: cp/decl.cc:10371
 #, gcc-internal-format
 msgid "invalid use of template-id %qD in declaration of primary template"
 msgstr ""
 
-#: cp/decl.cc:10360
+#: cp/decl.cc:10389
 #, gcc-internal-format
 msgid ""
 "default arguments are not allowed in declaration of friend template "
 "specialization %qD"
 msgstr ""
 
-#: cp/decl.cc:10369
+#: cp/decl.cc:10398
 #, gcc-internal-format
 msgid ""
 "%<inline%> is not allowed in declaration of friend template specialization "
 "%qD"
 msgstr ""
 
-#: cp/decl.cc:10386
+#: cp/decl.cc:10415
 #, gcc-internal-format
 msgid ""
 "friend declaration of %qD specifies default arguments and isn%'t a definition"
 msgstr ""
 
-#: cp/decl.cc:10431
+#: cp/decl.cc:10460
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be a template"
 msgstr ""
 
-#: cp/decl.cc:10434
+#: cp/decl.cc:10463
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be inline"
 msgstr ""
 
-#: cp/decl.cc:10437 cp/decl.cc:10440
+#: cp/decl.cc:10466 cp/decl.cc:10469
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be %qs"
 msgstr ""
 
-#: cp/decl.cc:10442
+#: cp/decl.cc:10471
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be static"
 msgstr ""
 
-#: cp/decl.cc:10504
+#: cp/decl.cc:10533
 #, gcc-internal-format
 msgid "static member function %qD cannot have cv-qualifier"
 msgstr ""
 
-#: cp/decl.cc:10505
+#: cp/decl.cc:10534
 #, gcc-internal-format
 msgid "non-member function %qD cannot have cv-qualifier"
 msgstr ""
 
-#: cp/decl.cc:10513
+#: cp/decl.cc:10542
 #, gcc-internal-format
 msgid "static member function %qD cannot have ref-qualifier"
 msgstr ""
 
-#: cp/decl.cc:10514
+#: cp/decl.cc:10543
 #, gcc-internal-format
 msgid "non-member function %qD cannot have ref-qualifier"
 msgstr ""
 
-#: cp/decl.cc:10526
+#: cp/decl.cc:10555
 #, gcc-internal-format
 msgid "deduction guide %qD must be declared in the same scope as %qT"
 msgstr ""
 
-#: cp/decl.cc:10534
+#: cp/decl.cc:10563
 #, gcc-internal-format
 msgid "deduction guide %qD must have the same access as %qT"
 msgstr ""
 
-#: cp/decl.cc:10540
+#: cp/decl.cc:10569
 #, gcc-internal-format
 msgid "deduction guide %qD must not have a function body"
 msgstr ""
 
-#: cp/decl.cc:10553
+#: cp/decl.cc:10582
 #, gcc-internal-format
 msgid "literal operator with C linkage"
 msgstr ""
 
-#: cp/decl.cc:10563
+#: cp/decl.cc:10592
 #, gcc-internal-format
 msgid "%qD has invalid argument list"
 msgstr ""
 
-#: cp/decl.cc:10571
+#: cp/decl.cc:10600
 #, gcc-internal-format
 msgid "integer suffix %qs shadowed by implementation"
 msgstr ""
 
-#: cp/decl.cc:10577
+#: cp/decl.cc:10606
 #, gcc-internal-format
 msgid "floating-point suffix %qs shadowed by implementation"
 msgstr ""
 
-#: cp/decl.cc:10584
+#: cp/decl.cc:10613
 #, gcc-internal-format
 msgid ""
 "literal operator suffixes not preceded by %<_%> are reserved for future "
 "standardization"
 msgstr ""
 
-#: cp/decl.cc:10589
+#: cp/decl.cc:10618
 #, gcc-internal-format
 msgid "%qD must be a non-member function"
 msgstr ""
 
-#: cp/decl.cc:10675
+#: cp/decl.cc:10704
 #, gcc-internal-format
 msgid "%<::main%> must return %<int%>"
 msgstr ""
 
-#: cp/decl.cc:10715
+#: cp/decl.cc:10744
 #, gcc-internal-format
 msgid "definition of implicitly-declared %qD"
 msgstr ""
 
-#: cp/decl.cc:10720
+#: cp/decl.cc:10749
 #, gcc-internal-format
 msgid "definition of explicitly-defaulted %q+D"
 msgstr ""
 
-#: cp/decl.cc:10722
+#: cp/decl.cc:10751
 #, gcc-internal-format
 msgid "%q#D explicitly defaulted here"
 msgstr ""
 
-#: cp/decl.cc:10739
+#: cp/decl.cc:10768
 #, gcc-internal-format
 msgid "no %q#D member function declared in class %qT"
 msgstr ""
 
-#: cp/decl.cc:10932
+#: cp/decl.cc:10961
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be a global variable"
 msgstr ""
 
-#: cp/decl.cc:10941
+#: cp/decl.cc:10970
 #, gcc-internal-format
 msgid "a non-template variable cannot be %<concept%>"
 msgstr ""
 
-#: cp/decl.cc:10947
+#: cp/decl.cc:10976
 #, gcc-internal-format
 msgid "concept must be defined at namespace scope"
 msgstr ""
 
-#: cp/decl.cc:10954
+#: cp/decl.cc:10983
 #, gcc-internal-format
 msgid "concept must have type %<bool%>"
 msgstr ""
 
-#: cp/decl.cc:10957
+#: cp/decl.cc:10986
 #, gcc-internal-format
 msgid "a variable concept cannot be constrained"
 msgstr ""
 
-#: cp/decl.cc:11079
+#: cp/decl.cc:11108
 #, gcc-internal-format
 msgid "in-class initialization of static data member %q#D of incomplete type"
 msgstr ""
 
-#: cp/decl.cc:11083
+#: cp/decl.cc:11112
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> needed for in-class initialization of static data member %q#D "
 "of non-integral type"
 msgstr ""
 
-#: cp/decl.cc:11087
+#: cp/decl.cc:11116
 #, gcc-internal-format
 msgid "in-class initialization of static data member %q#D of non-literal type"
 msgstr ""
 
-#: cp/decl.cc:11098
+#: cp/decl.cc:11127
 #, gcc-internal-format
 msgid ""
 "invalid in-class initialization of static data member of non-integral type "
 "%qT"
 msgstr ""
 
-#: cp/decl.cc:11103
+#: cp/decl.cc:11132
 #, gcc-internal-format
 msgid "ISO C++ forbids in-class initialization of non-const static member %qD"
 msgstr ""
 
-#: cp/decl.cc:11108
+#: cp/decl.cc:11137
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids initialization of member constant %qD of non-integral type "
 "%qT"
 msgstr ""
 
-#: cp/decl.cc:11219
+#: cp/decl.cc:11248
 #, gcc-internal-format
 msgid "size of array %qD has non-integral type %qT"
 msgstr ""
 
-#: cp/decl.cc:11222
+#: cp/decl.cc:11251
 #, gcc-internal-format
 msgid "size of array has non-integral type %qT"
 msgstr ""
 
-#: cp/decl.cc:11253 cp/decl.cc:11325
+#: cp/decl.cc:11282 cp/decl.cc:11354
 #, gcc-internal-format
 msgid "size of array %qD is not an integral constant-expression"
 msgstr ""
 
-#: cp/decl.cc:11257 cp/decl.cc:11328
+#: cp/decl.cc:11286 cp/decl.cc:11357
 #, gcc-internal-format
 msgid "size of array is not an integral constant-expression"
 msgstr ""
 
-#: cp/decl.cc:11308
+#: cp/decl.cc:11337
 #, gcc-internal-format
 msgid "ISO C++ forbids zero-size array %qD"
 msgstr ""
 
-#: cp/decl.cc:11311
+#: cp/decl.cc:11340
 #, gcc-internal-format
 msgid "ISO C++ forbids zero-size array"
 msgstr ""
 
-#: cp/decl.cc:11335
+#: cp/decl.cc:11364
 #, gcc-internal-format
 msgid "ISO C++ forbids variable length array %qD"
 msgstr ""
 
-#: cp/decl.cc:11338
+#: cp/decl.cc:11367
 #, gcc-internal-format
 msgid "ISO C++ forbids variable length array"
 msgstr ""
 
-#: cp/decl.cc:11344
+#: cp/decl.cc:11373
 #, gcc-internal-format
 msgid "variable length array %qD is used"
 msgstr ""
 
-#: cp/decl.cc:11347
+#: cp/decl.cc:11376
 #, gcc-internal-format
 msgid "variable length array is used"
 msgstr ""
 
-#: cp/decl.cc:11399
+#: cp/decl.cc:11428
 #, gcc-internal-format
 msgid "overflow in array dimension"
 msgstr ""
 
-#: cp/decl.cc:11459
+#: cp/decl.cc:11488
 #, gcc-internal-format
 msgid "%qD declared as array of template placeholder type %qT"
 msgstr ""
 
-#: cp/decl.cc:11462
+#: cp/decl.cc:11491
 #, gcc-internal-format
 msgid "creating array of template placeholder type %qT"
 msgstr ""
 
-#: cp/decl.cc:11472
+#: cp/decl.cc:11501
 #, gcc-internal-format
 msgid "declaration of %qD as array of void"
 msgstr ""
 
-#: cp/decl.cc:11474
+#: cp/decl.cc:11503
 #, gcc-internal-format
 msgid "creating array of void"
 msgstr ""
 
-#: cp/decl.cc:11479
+#: cp/decl.cc:11508
 #, gcc-internal-format
 msgid "declaration of %qD as array of functions"
 msgstr ""
 
-#: cp/decl.cc:11481
+#: cp/decl.cc:11510
 #, gcc-internal-format
 msgid "creating array of functions"
 msgstr ""
 
-#: cp/decl.cc:11486
+#: cp/decl.cc:11515
 #, gcc-internal-format
 msgid "declaration of %qD as array of references"
 msgstr ""
 
-#: cp/decl.cc:11488
+#: cp/decl.cc:11517
 #, gcc-internal-format
 msgid "creating array of references"
 msgstr ""
 
-#: cp/decl.cc:11493
+#: cp/decl.cc:11522
 #, gcc-internal-format
 msgid "declaration of %qD as array of function members"
 msgstr ""
 
-#: cp/decl.cc:11496
+#: cp/decl.cc:11525
 #, gcc-internal-format
 msgid "creating array of function members"
 msgstr ""
 
-#: cp/decl.cc:11514
+#: cp/decl.cc:11543
 #, gcc-internal-format
 msgid ""
 "declaration of %qD as multidimensional array must have bounds for all "
 "dimensions except the first"
 msgstr ""
 
-#: cp/decl.cc:11518
+#: cp/decl.cc:11547
 #, gcc-internal-format
 msgid ""
 "multidimensional array must have bounds for all dimensions except the first"
 msgstr ""
 
-#: cp/decl.cc:11532
+#: cp/decl.cc:11561
 #, gcc-internal-format
 msgid "variable-length array of %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:11608
+#: cp/decl.cc:11637
 #, gcc-internal-format
 msgid "return type specification for constructor invalid"
 msgstr ""
 
-#: cp/decl.cc:11611
+#: cp/decl.cc:11640
 #, gcc-internal-format
 msgid "qualifiers are not allowed on constructor declaration"
 msgstr ""
 
-#: cp/decl.cc:11622
+#: cp/decl.cc:11651
 #, gcc-internal-format
 msgid "return type specification for destructor invalid"
 msgstr ""
 
-#: cp/decl.cc:11625
+#: cp/decl.cc:11654
 #, gcc-internal-format
 msgid "qualifiers are not allowed on destructor declaration"
 msgstr ""
 
-#: cp/decl.cc:11638
+#: cp/decl.cc:11667
 #, gcc-internal-format
 msgid "return type specified for %<operator %T%>"
 msgstr ""
 
-#: cp/decl.cc:11641
+#: cp/decl.cc:11670
 #, gcc-internal-format
 msgid "qualifiers are not allowed on declaration of %<operator %T%>"
 msgstr ""
 
-#: cp/decl.cc:11650
+#: cp/decl.cc:11679
 #, gcc-internal-format
 msgid "return type specified for deduction guide"
 msgstr ""
 
-#: cp/decl.cc:11653
+#: cp/decl.cc:11682
 #, gcc-internal-format
 msgid "qualifiers are not allowed on declaration of deduction guide"
 msgstr ""
 
-#: cp/decl.cc:11657
+#: cp/decl.cc:11686
 #, gcc-internal-format
 msgid "template template parameter %qT in declaration of deduction guide"
 msgstr ""
 
-#: cp/decl.cc:11666
+#: cp/decl.cc:11695
 #, gcc-internal-format
 msgid "%<decl-specifier%> in declaration of deduction guide"
 msgstr ""
 
-#: cp/decl.cc:11687
+#: cp/decl.cc:11716
 #, gcc-internal-format
 msgid "unnamed variable or field declared void"
 msgstr ""
 
-#: cp/decl.cc:11695
+#: cp/decl.cc:11724
 #, gcc-internal-format
 msgid "variable or field declared void"
 msgstr ""
 
-#: cp/decl.cc:11710
+#: cp/decl.cc:11739
 #, gcc-internal-format
 msgid "%<inline%> specifier invalid for variable %qD declared at block scope"
 msgstr ""
 
-#: cp/decl.cc:11715
+#: cp/decl.cc:11744
 #, gcc-internal-format
 msgid ""
 "inline variables are only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/decl.cc:11771
+#: cp/decl.cc:11800
 #, gcc-internal-format
 msgid "%qT as type rather than plain %<decltype(auto)%>"
 msgstr ""
 
-#: cp/decl.cc:11777
+#: cp/decl.cc:11806
 #, gcc-internal-format
 msgid "%<decltype(auto)%> cannot be cv-qualified"
 msgstr ""
 
-#: cp/decl.cc:11993
+#: cp/decl.cc:12022
 #, gcc-internal-format
 msgid "invalid use of qualified-name %<::%D%>"
 msgstr ""
 
-#: cp/decl.cc:11996 cp/decl.cc:12018
+#: cp/decl.cc:12025 cp/decl.cc:12047
 #, gcc-internal-format
 msgid "invalid use of qualified-name %<%T::%D%>"
 msgstr ""
 
-#: cp/decl.cc:11999
+#: cp/decl.cc:12028
 #, gcc-internal-format
 msgid "invalid use of qualified-name %<%D::%D%>"
 msgstr ""
 
-#: cp/decl.cc:12009
+#: cp/decl.cc:12038
 #, gcc-internal-format
 msgid "%q#T is not a class or namespace"
 msgstr ""
 
-#: cp/decl.cc:12033
+#: cp/decl.cc:12062
 #, gcc-internal-format
 msgid "declaration of %qE as non-function"
 msgstr ""
 
-#: cp/decl.cc:12040
+#: cp/decl.cc:12069
 #, gcc-internal-format
 msgid "declaration of %qE as non-member"
 msgstr ""
 
-#: cp/decl.cc:12068
+#: cp/decl.cc:12097
 #, gcc-internal-format
 msgid "declarator-id missing; using reserved word %qD"
 msgstr ""
 
-#: cp/decl.cc:12119
+#: cp/decl.cc:12148
 #, gcc-internal-format
 msgid "function definition does not declare parameters"
 msgstr ""
 
-#: cp/decl.cc:12127 cp/decl.cc:12136 cp/decl.cc:13989
+#: cp/decl.cc:12156 cp/decl.cc:12165 cp/decl.cc:14023
 #, gcc-internal-format
 msgid "declaration of %qD as non-function"
 msgstr ""
 
-#: cp/decl.cc:12144
+#: cp/decl.cc:12173
 #, gcc-internal-format
 msgid "declaration of %qD as %<typedef%>"
 msgstr ""
 
-#: cp/decl.cc:12149
+#: cp/decl.cc:12178
 #, gcc-internal-format
 msgid "declaration of %qD as parameter"
 msgstr ""
 
-#: cp/decl.cc:12184
+#: cp/decl.cc:12213
 #, gcc-internal-format
 msgid "both %qs and %qs specified"
 msgstr ""
 
-#: cp/decl.cc:12191 cp/decl.cc:12198 cp/decl.cc:12205 cp/decl.cc:12212
+#: cp/decl.cc:12220 cp/decl.cc:12227 cp/decl.cc:12234 cp/decl.cc:12241
 #, gcc-internal-format
 msgid "%qs cannot appear in a typedef declaration"
 msgstr ""
 
-#: cp/decl.cc:12223
+#: cp/decl.cc:12252
 #, gcc-internal-format
 msgid "can use at most one of the %<constinit%> and %<constexpr%> specifiers"
 msgstr ""
 
-#: cp/decl.cc:12233
+#: cp/decl.cc:12262
 #, gcc-internal-format
 msgid "two or more data types in declaration of %qs"
 msgstr ""
 
-#: cp/decl.cc:12287
+#: cp/decl.cc:12316
 #, gcc-internal-format
 msgid "ISO C++ does not support plain %<complex%> meaning %<double complex%>"
 msgstr ""
 
-#: cp/decl.cc:12336 cp/decl.cc:12340 cp/decl.cc:12343
+#: cp/decl.cc:12365 cp/decl.cc:12369 cp/decl.cc:12372
 #, gcc-internal-format
 msgid "ISO C++ forbids declaration of %qs with no type"
 msgstr ""
 
-#: cp/decl.cc:12360
+#: cp/decl.cc:12389
 #, gcc-internal-format
 msgid "%<__int%d%> is not supported by this target"
 msgstr ""
 
-#: cp/decl.cc:12368
+#: cp/decl.cc:12397
 #, gcc-internal-format
 msgid "ISO C++ does not support %<__int%d%> for %qs"
 msgstr ""
 
-#: cp/decl.cc:12422
+#: cp/decl.cc:12451
 #, gcc-internal-format
 msgid "%<signed%> and %<unsigned%> specified together"
 msgstr ""
 
-#: cp/decl.cc:12428
+#: cp/decl.cc:12457
 #, gcc-internal-format
 msgid "%<long%> and %<short%> specified together"
 msgstr ""
 
-#: cp/decl.cc:12436 cp/decl.cc:12442
+#: cp/decl.cc:12465
 #, gcc-internal-format
 msgid "%qs specified with %qT"
 msgstr ""
 
-#: cp/decl.cc:12449
+#: cp/decl.cc:12471
+#, gcc-internal-format
+msgid "%qs specified with %qD"
+msgstr ""
+
+#: cp/decl.cc:12483
 #, gcc-internal-format
 msgid "%qs specified with %<decltype%>"
 msgstr ""
 
-#: cp/decl.cc:12451
+#: cp/decl.cc:12485
 #, gcc-internal-format
 msgid "%qs specified with %<typeof%>"
 msgstr ""
 
-#: cp/decl.cc:12518
+#: cp/decl.cc:12552
 #, gcc-internal-format
 msgid "complex invalid for %qs"
 msgstr ""
 
-#: cp/decl.cc:12562
+#: cp/decl.cc:12596
 #, 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:12588
+#: cp/decl.cc:12622
 #, gcc-internal-format
 msgid "member %qD cannot be declared both %<virtual%> and %<static%>"
 msgstr ""
 
-#: cp/decl.cc:12597
+#: cp/decl.cc:12631
 #, 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:12610
+#: cp/decl.cc:12644
 #, gcc-internal-format
 msgid "typedef declaration invalid in parameter declaration"
 msgstr ""
 
-#: cp/decl.cc:12617
+#: cp/decl.cc:12651
 #, gcc-internal-format
 msgid "storage class specified for template parameter %qs"
 msgstr ""
 
-#: cp/decl.cc:12627 cp/decl.cc:12804
+#: cp/decl.cc:12661 cp/decl.cc:12838
 #, gcc-internal-format
 msgid "storage class specified for parameter %qs"
 msgstr ""
 
-#: cp/decl.cc:12635 cp/decl.cc:12644 cp/decl.cc:12650 cp/decl.cc:12656
+#: cp/decl.cc:12669 cp/decl.cc:12678 cp/decl.cc:12684 cp/decl.cc:12690
 #, gcc-internal-format
 msgid "a parameter cannot be declared %qs"
 msgstr ""
 
-#: cp/decl.cc:12666
+#: cp/decl.cc:12700
 #, gcc-internal-format
 msgid "%<virtual%> outside class declaration"
 msgstr ""
 
-#: cp/decl.cc:12676 cp/decl.cc:12679 cp/decl.cc:12681 cp/decl.cc:12684
-#: cp/decl.cc:12694 cp/decl.cc:12704 cp/decl.cc:12714 cp/decl.cc:12718
+#: cp/decl.cc:12710 cp/decl.cc:12713 cp/decl.cc:12715 cp/decl.cc:12718
+#: cp/decl.cc:12728 cp/decl.cc:12738 cp/decl.cc:12748 cp/decl.cc:12752
 #, gcc-internal-format
 msgid "structured binding declaration cannot be %qs"
 msgstr ""
 
-#: cp/decl.cc:12688 cp/decl.cc:12710
+#: cp/decl.cc:12722 cp/decl.cc:12744
 #, gcc-internal-format
 msgid ""
 "structured binding declaration can be %qs only in %<-std=c++20%> or %<-"
 "std=gnu++20%>"
 msgstr ""
 
-#: cp/decl.cc:12698
+#: cp/decl.cc:12732
 #, gcc-internal-format
 msgid "%<volatile%>-qualified structured binding is deprecated"
 msgstr ""
 
-#: cp/decl.cc:12722
+#: cp/decl.cc:12756
 #, gcc-internal-format
 msgid "structured binding declaration cannot be C++98 %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:12734
+#: cp/decl.cc:12768
 #, gcc-internal-format
 msgid "structured binding declaration cannot have type %qT"
 msgstr ""
 
-#: cp/decl.cc:12737
+#: cp/decl.cc:12771
 #, gcc-internal-format
 msgid ""
 "type must be cv-qualified %<auto%> or reference to cv-qualified %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:12745
+#: cp/decl.cc:12779
 #, gcc-internal-format
 msgid ""
 "structured binding declaration cannot have constrained %<auto%> type %qT"
 msgstr ""
 
-#: cp/decl.cc:12776
+#: cp/decl.cc:12810
 #, gcc-internal-format
 msgid "multiple storage classes in declaration of %qs"
 msgstr ""
 
-#: cp/decl.cc:12802
+#: cp/decl.cc:12836
 #, gcc-internal-format
 msgid "storage class specified for %qs"
 msgstr ""
 
-#: cp/decl.cc:12816
+#: cp/decl.cc:12850
 #, gcc-internal-format
 msgid "nested function %qs declared %<extern%>"
 msgstr ""
 
-#: cp/decl.cc:12821
+#: cp/decl.cc:12855
 #, gcc-internal-format
 msgid "top-level declaration of %qs specifies %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:12829
+#: cp/decl.cc:12863
 #, gcc-internal-format
 msgid "function-scope %qs implicitly auto and declared %<__thread%>"
 msgstr ""
 
-#: cp/decl.cc:12843
+#: cp/decl.cc:12877
 #, gcc-internal-format
 msgid "storage class specifiers invalid in friend function declarations"
 msgstr ""
 
-#: cp/decl.cc:12875 cp/decl.cc:14367 cp/parser.cc:14937 cp/parser.cc:20800
-#: cp/parser.cc:27371
+#: cp/decl.cc:12909 cp/decl.cc:14401 cp/parser.cc:14950 cp/parser.cc:20813
+#: cp/parser.cc:27390
 #, gcc-internal-format
 msgid "attribute ignored"
 msgstr ""
 
-#: cp/decl.cc:12876
+#: cp/decl.cc:12910
 #, gcc-internal-format
 msgid "an attribute that appertains to a type-specifier is ignored"
 msgstr ""
 
-#: cp/decl.cc:12944
+#: cp/decl.cc:12978
 #, gcc-internal-format
 msgid "unnecessary parentheses in declaration of %qs"
 msgstr ""
 
-#: cp/decl.cc:12950
+#: cp/decl.cc:12984
 #, gcc-internal-format
 msgid "remove parentheses"
 msgstr ""
 
-#: cp/decl.cc:12999
+#: cp/decl.cc:13033
 #, gcc-internal-format
 msgid "requires-clause on return type"
 msgstr ""
 
-#: cp/decl.cc:13019
+#: cp/decl.cc:13053
 #, gcc-internal-format
 msgid "%qs function uses %<auto%> type specifier without trailing return type"
 msgstr ""
 
-#: cp/decl.cc:13023
+#: cp/decl.cc:13057
 #, gcc-internal-format
 msgid ""
 "deduced return type only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/decl.cc:13028
+#: cp/decl.cc:13062
 #, gcc-internal-format
 msgid "virtual function cannot have deduced return type"
 msgstr ""
 
-#: cp/decl.cc:13035
+#: cp/decl.cc:13069
 #, gcc-internal-format
 msgid ""
 "%qs function with trailing return type has %qT as its type rather than plain "
 "%<auto%>"
 msgstr ""
 
-#: cp/decl.cc:13044
+#: cp/decl.cc:13078
 #, gcc-internal-format
 msgid ""
 "%qs function with trailing return type has %<decltype(auto)%> as its type "
 "rather than plain %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:13049
+#: cp/decl.cc:13083
 #, gcc-internal-format
 msgid "invalid use of %<decltype(auto)%>"
 msgstr ""
 
-#: cp/decl.cc:13061
+#: cp/decl.cc:13095
 #, gcc-internal-format
 msgid "deduced class type %qD in function return type"
 msgstr ""
 
-#: cp/decl.cc:13070
+#: cp/decl.cc:13104
 #, gcc-internal-format
 msgid "deduction guide for %qT must have trailing return type"
 msgstr ""
 
-#: cp/decl.cc:13083
+#: cp/decl.cc:13117
 #, gcc-internal-format
 msgid ""
 "trailing return type %qT of deduction guide is not a specialization of %qT"
 msgstr ""
 
-#: cp/decl.cc:13097
+#: cp/decl.cc:13131
 #, gcc-internal-format
 msgid ""
 "trailing return type only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/decl.cc:13100
+#: cp/decl.cc:13134
 #, gcc-internal-format
 msgid ""
 "%qs function with trailing return type not declared with %<auto%> type "
 "specifier"
 msgstr ""
 
-#: cp/decl.cc:13107
+#: cp/decl.cc:13141
 #, gcc-internal-format
 msgid "a conversion function cannot have a trailing return type"
 msgstr ""
 
-#: cp/decl.cc:13133
+#: cp/decl.cc:13167
 #, gcc-internal-format
 msgid "%<volatile%>-qualified return type is deprecated"
 msgstr ""
 
-#: cp/decl.cc:13145
+#: cp/decl.cc:13179
 #, gcc-internal-format
 msgid "%qs declared as function returning a function"
 msgstr ""
 
-#: cp/decl.cc:13151
+#: cp/decl.cc:13185
 #, gcc-internal-format
 msgid "%qs declared as function returning an array"
 msgstr ""
 
-#: cp/decl.cc:13158
+#: cp/decl.cc:13192
 #, gcc-internal-format
 msgid "%<constinit%> on function return type is not allowed"
 msgstr ""
 
-#: cp/decl.cc:13191
+#: cp/decl.cc:13225
 #, gcc-internal-format
 msgid "destructor cannot be static member function"
 msgstr ""
 
-#: cp/decl.cc:13193
+#: cp/decl.cc:13227
 #, gcc-internal-format
 msgid "constructor cannot be static member function"
 msgstr ""
 
-#: cp/decl.cc:13198
+#: cp/decl.cc:13232
 #, gcc-internal-format
 msgid "destructors may not be cv-qualified"
 msgstr ""
 
-#: cp/decl.cc:13199
+#: cp/decl.cc:13233
 #, gcc-internal-format
 msgid "constructors may not be cv-qualified"
 msgstr ""
 
-#: cp/decl.cc:13207
+#: cp/decl.cc:13241
 #, gcc-internal-format
 msgid "destructors may not be ref-qualified"
 msgstr ""
 
-#: cp/decl.cc:13208
+#: cp/decl.cc:13242
 #, gcc-internal-format
 msgid "constructors may not be ref-qualified"
 msgstr ""
 
-#: cp/decl.cc:13226
+#: cp/decl.cc:13260
 #, gcc-internal-format
 msgid "constructors cannot be declared %<virtual%>"
 msgstr ""
 
-#: cp/decl.cc:13243
+#: cp/decl.cc:13277
 #, gcc-internal-format
 msgid "virtual functions cannot be friends"
 msgstr ""
 
-#: cp/decl.cc:13248
+#: cp/decl.cc:13282
 #, gcc-internal-format
 msgid "friend declaration not in class definition"
 msgstr ""
 
-#: cp/decl.cc:13252
+#: cp/decl.cc:13286
 #, gcc-internal-format
 msgid "cannot define friend function %qs in a local class definition"
 msgstr ""
 
-#: cp/decl.cc:13262
+#: cp/decl.cc:13296
 #, gcc-internal-format
 msgid "friend function definition %qs cannot have a name qualified with %<::%>"
 msgstr ""
 
-#: cp/decl.cc:13266
+#: cp/decl.cc:13300
 #, gcc-internal-format
 msgid ""
 "friend function definition %qs cannot have a name qualified with %<%D::%>"
 msgstr ""
 
-#: cp/decl.cc:13304
+#: cp/decl.cc:13338
 #, gcc-internal-format
 msgid "destructors may not have parameters"
 msgstr ""
 
-#: cp/decl.cc:13361
+#: cp/decl.cc:13395
 #, gcc-internal-format
 msgid "cannot declare pointer to %q#T"
 msgstr ""
 
-#: cp/decl.cc:13374 cp/decl.cc:13381
+#: cp/decl.cc:13408 cp/decl.cc:13415
 #, gcc-internal-format
 msgid "cannot declare reference to %q#T"
 msgstr ""
 
-#: cp/decl.cc:13383
+#: cp/decl.cc:13417
 #, gcc-internal-format
 msgid "cannot declare pointer to %q#T member"
 msgstr ""
 
-#: cp/decl.cc:13412
+#: cp/decl.cc:13446
 #, gcc-internal-format
 msgid "cannot declare reference to qualified function type %qT"
 msgstr ""
 
-#: cp/decl.cc:13413
+#: cp/decl.cc:13447
 #, gcc-internal-format
 msgid "cannot declare pointer to qualified function type %qT"
 msgstr ""
 
-#: cp/decl.cc:13486
+#: cp/decl.cc:13520
 #, gcc-internal-format
 msgid ""
 "cannot declare reference to %q#T, which is not a typedef or a template type "
 "argument"
 msgstr ""
 
-#: cp/decl.cc:13566
+#: cp/decl.cc:13600
 #, gcc-internal-format
 msgid "template-id %qD used as a declarator"
 msgstr ""
 
-#: cp/decl.cc:13592
+#: cp/decl.cc:13626
 #, gcc-internal-format
 msgid "member functions are implicitly friends of their class"
 msgstr ""
 
-#: cp/decl.cc:13597
+#: cp/decl.cc:13631
 #, gcc-internal-format
 msgid "extra qualification %<%T::%> on member %qs"
 msgstr ""
 
-#: cp/decl.cc:13627
+#: cp/decl.cc:13661
 #, gcc-internal-format
 msgid "cannot define member function %<%T::%s%> within %qT"
 msgstr ""
 
-#: cp/decl.cc:13629
+#: cp/decl.cc:13663
 #, gcc-internal-format
 msgid "cannot declare member function %<%T::%s%> within %qT"
 msgstr ""
 
-#: cp/decl.cc:13637
+#: cp/decl.cc:13671
 #, gcc-internal-format
 msgid "cannot declare member %<%T::%s%> within %qT"
 msgstr ""
 
-#: cp/decl.cc:13677
+#: cp/decl.cc:13711
 #, gcc-internal-format
 msgid "non-parameter %qs cannot be a parameter pack"
 msgstr ""
 
-#: cp/decl.cc:13686
+#: cp/decl.cc:13720
 #, gcc-internal-format
 msgid "data member may not have variably modified type %qT"
 msgstr ""
 
-#: cp/decl.cc:13689
+#: cp/decl.cc:13723
 #, gcc-internal-format
 msgid "parameter may not have variably modified type %qT"
 msgstr ""
 
-#: cp/decl.cc:13700
+#: cp/decl.cc:13734
 #, gcc-internal-format
 msgid "%<explicit%> outside class declaration"
 msgstr ""
 
-#: cp/decl.cc:13703
+#: cp/decl.cc:13737
 #, gcc-internal-format
 msgid "%<explicit%> in friend declaration"
 msgstr ""
 
-#: cp/decl.cc:13706
+#: cp/decl.cc:13740
 #, gcc-internal-format
 msgid ""
 "only declarations of constructors and conversion operators can be "
 "%<explicit%>"
 msgstr ""
 
-#: cp/decl.cc:13716
+#: cp/decl.cc:13750
 #, gcc-internal-format
 msgid "non-member %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.cc:13723
+#: cp/decl.cc:13757
 #, gcc-internal-format
 msgid "non-object member %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.cc:13729
+#: cp/decl.cc:13763
 #, gcc-internal-format
 msgid "function %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.cc:13735
+#: cp/decl.cc:13769
 #, gcc-internal-format
 msgid "%<static%> %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.cc:13741
+#: cp/decl.cc:13775
 #, gcc-internal-format
 msgid "%<const%> %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.cc:13747
+#: cp/decl.cc:13781
 #, gcc-internal-format
 msgid "reference %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.cc:13763
+#: cp/decl.cc:13797
 #, gcc-internal-format
 msgid "typedef may not be a function definition"
 msgstr ""
 
-#: cp/decl.cc:13766
+#: cp/decl.cc:13800
 #, gcc-internal-format
 msgid "typedef may not be a member function definition"
 msgstr ""
 
-#: cp/decl.cc:13792
+#: cp/decl.cc:13826
 #, gcc-internal-format
 msgid "%<auto%> not allowed in alias declaration"
 msgstr ""
 
-#: cp/decl.cc:13795
+#: cp/decl.cc:13829
 #, gcc-internal-format
 msgid "typedef declared %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:13800
+#: cp/decl.cc:13834
 #, gcc-internal-format
 msgid "requires-clause on typedef"
 msgstr ""
 
-#: cp/decl.cc:13804
+#: cp/decl.cc:13838
 #, gcc-internal-format
 msgid "typedef name may not be a nested-name-specifier"
 msgstr ""
 
-#: cp/decl.cc:13830
+#: cp/decl.cc:13864
 #, gcc-internal-format
 msgid "ISO C++ forbids nested type %qD with same name as enclosing class"
 msgstr ""
 
-#: cp/decl.cc:13919
+#: cp/decl.cc:13953
 #, gcc-internal-format
 msgid "%<inline%> specified for friend class declaration"
 msgstr ""
 
-#: cp/decl.cc:13927
+#: cp/decl.cc:13961
 #, gcc-internal-format
 msgid "template parameters cannot be friends"
 msgstr ""
 
-#: cp/decl.cc:13929
+#: cp/decl.cc:13963
 #, gcc-internal-format
 msgid "friend declaration requires class-key, i.e. %<friend class %T::%D%>"
 msgstr ""
 
-#: cp/decl.cc:13933
+#: cp/decl.cc:13967
 #, gcc-internal-format
 msgid "friend declaration requires class-key, i.e. %<friend %#T%>"
 msgstr ""
 
-#: cp/decl.cc:13946
+#: cp/decl.cc:13980
 #, gcc-internal-format
 msgid "trying to make class %qT a friend of global scope"
 msgstr ""
 
-#: cp/decl.cc:13966
+#: cp/decl.cc:14000
 #, gcc-internal-format
 msgid "invalid qualifiers on non-member function type"
 msgstr ""
 
-#: cp/decl.cc:13970
+#: cp/decl.cc:14004
 #, gcc-internal-format
 msgid "requires-clause on type-id"
 msgstr ""
 
-#: cp/decl.cc:13980
+#: cp/decl.cc:14014
 #, gcc-internal-format
 msgid "abstract declarator %qT used as declaration"
 msgstr ""
 
-#: cp/decl.cc:13995
+#: cp/decl.cc:14029
 #, gcc-internal-format
 msgid "requires-clause on declaration of non-function type %qT"
 msgstr ""
 
-#: cp/decl.cc:14014
+#: cp/decl.cc:14048
 #, gcc-internal-format
 msgid "cannot use %<::%> in parameter declaration"
 msgstr ""
 
-#: cp/decl.cc:14023 cp/parser.cc:20234
+#: cp/decl.cc:14057 cp/parser.cc:20247
 #, gcc-internal-format
 msgid "cannot declare a parameter with %<decltype(auto)%>"
 msgstr ""
 
-#: cp/decl.cc:14030
+#: cp/decl.cc:14064
 #, gcc-internal-format
 msgid ""
 "missing template argument list after %qE; template placeholder not permitted "
 "in parameter"
 msgstr ""
 
-#: cp/decl.cc:14033
+#: cp/decl.cc:14067
 #, gcc-internal-format
 msgid "or use %<auto%> for an abbreviated function template"
 msgstr ""
 
-#: cp/decl.cc:14039
+#: cp/decl.cc:14073
 #, gcc-internal-format
 msgid "%<auto%> parameter not permitted in this context"
 msgstr ""
 
-#: cp/decl.cc:14042
+#: cp/decl.cc:14076
 #, gcc-internal-format
 msgid "parameter declared %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:14093 cp/parser.cc:3561
+#: cp/decl.cc:14127 cp/parser.cc:3561
 #, gcc-internal-format
 msgid "invalid use of template-name %qE without an argument list"
 msgstr ""
 
-#: cp/decl.cc:14097
+#: cp/decl.cc:14131
 #, gcc-internal-format
 msgid "non-static data member declared with placeholder %qT"
 msgstr ""
 
-#: cp/decl.cc:14118
+#: cp/decl.cc:14152
 #, gcc-internal-format
 msgid "ISO C++ forbids flexible array member %qs"
 msgstr ""
 
-#: cp/decl.cc:14121
+#: cp/decl.cc:14155
 #, gcc-internal-format
 msgid "ISO C++ forbids flexible array members"
 msgstr ""
 
 #. Something like struct S { int N::j; };
-#: cp/decl.cc:14137
+#: cp/decl.cc:14171
 #, gcc-internal-format
 msgid "invalid use of %<::%>"
 msgstr ""
 
-#: cp/decl.cc:14158
+#: cp/decl.cc:14192
 #, gcc-internal-format
 msgid "declaration of function %qD in invalid context"
 msgstr ""
 
-#: cp/decl.cc:14168
+#: cp/decl.cc:14202
 #, gcc-internal-format
 msgid "function %qD declared %<virtual%> inside a union"
 msgstr ""
 
-#: cp/decl.cc:14178
+#: cp/decl.cc:14212
 #, gcc-internal-format
 msgid "%qD cannot be declared %<virtual%>, since it is always static"
 msgstr ""
 
-#: cp/decl.cc:14192
+#: cp/decl.cc:14226
 #, gcc-internal-format
 msgid "expected qualified name in friend declaration for destructor %qD"
 msgstr ""
 
-#: cp/decl.cc:14199
+#: cp/decl.cc:14233
 #, gcc-internal-format
 msgid "declaration of %qD as member of %qT"
 msgstr ""
 
-#: cp/decl.cc:14206 cp/decl.cc:14219
+#: cp/decl.cc:14240 cp/decl.cc:14253
 #, gcc-internal-format
 msgid "a destructor cannot be %qs"
 msgstr ""
 
-#: cp/decl.cc:14225
+#: cp/decl.cc:14259
 #, gcc-internal-format
 msgid "expected qualified name in friend declaration for constructor %qD"
 msgstr ""
 
-#: cp/decl.cc:14234
+#: cp/decl.cc:14268
 #, gcc-internal-format
 msgid "a constructor cannot be %<concept%>"
 msgstr ""
 
-#: cp/decl.cc:14240
+#: cp/decl.cc:14274
 #, gcc-internal-format
 msgid "a concept cannot be a member function"
 msgstr ""
 
-#: cp/decl.cc:14248 cp/decl.cc:14589
+#: cp/decl.cc:14282 cp/decl.cc:14624
 #, gcc-internal-format
 msgid "%qD cannot be %qs"
 msgstr ""
 
-#: cp/decl.cc:14257
+#: cp/decl.cc:14291
 #, gcc-internal-format
 msgid "specialization of variable template %qD declared as function"
 msgstr ""
 
-#: cp/decl.cc:14260
+#: cp/decl.cc:14294
 #, gcc-internal-format
 msgid "variable template declared here"
 msgstr ""
 
-#: cp/decl.cc:14322
+#: cp/decl.cc:14356
 #, gcc-internal-format
 msgid "field %qD has incomplete type %qT"
 msgstr ""
 
-#: cp/decl.cc:14327
+#: cp/decl.cc:14361
 #, gcc-internal-format
 msgid "name %qT has incomplete type"
 msgstr ""
 
-#: cp/decl.cc:14347
+#: cp/decl.cc:14381
 #, gcc-internal-format
 msgid "%qE is neither function nor member function; cannot be declared friend"
 msgstr ""
 
-#: cp/decl.cc:14350
+#: cp/decl.cc:14384
 #, gcc-internal-format
 msgid ""
 "unnamed field is neither function nor member function; cannot be declared "
 "friend"
 msgstr ""
 
-#: cp/decl.cc:14368 cp/parser.cc:20801 cp/parser.cc:27372
+#: cp/decl.cc:14402 cp/parser.cc:20814 cp/parser.cc:27391
 #, gcc-internal-format
 msgid ""
 "an attribute that appertains to a friend declaration that is not a "
 "definition is ignored"
 msgstr ""
 
-#: cp/decl.cc:14408 cp/decl.cc:14419
+#: cp/decl.cc:14443 cp/decl.cc:14454
 #, gcc-internal-format
 msgid "static data member %qE declared %qs"
 msgstr ""
 
-#: cp/decl.cc:14413
+#: cp/decl.cc:14448
 #, gcc-internal-format
 msgid "%<constexpr%> static data member %qD must have an initializer"
 msgstr ""
 
-#: cp/decl.cc:14456 cp/decl.cc:14464 cp/decl.cc:14471 cp/decl.cc:14478
+#: cp/decl.cc:14491 cp/decl.cc:14499 cp/decl.cc:14506 cp/decl.cc:14513
 #, gcc-internal-format
 msgid "non-static data member %qE declared %qs"
 msgstr ""
 
-#: cp/decl.cc:14530
+#: cp/decl.cc:14565
 #, gcc-internal-format
 msgid "storage class %<auto%> invalid for function %qs"
 msgstr ""
 
-#: cp/decl.cc:14533
+#: cp/decl.cc:14568
 #, gcc-internal-format
 msgid "storage class %<register%> invalid for function %qs"
 msgstr ""
 
-#: cp/decl.cc:14539
+#: cp/decl.cc:14574
 #, gcc-internal-format
 msgid "storage class %<__thread%> invalid for function %qs"
 msgstr ""
 
-#: cp/decl.cc:14543
+#: cp/decl.cc:14578
 #, gcc-internal-format
 msgid "storage class %<thread_local%> invalid for function %qs"
 msgstr ""
 
-#: cp/decl.cc:14548
+#: cp/decl.cc:14583
 #, gcc-internal-format
 msgid "virt-specifiers in %qs not allowed outside a class definition"
 msgstr ""
 
-#: cp/decl.cc:14560
+#: cp/decl.cc:14595
 #, gcc-internal-format
 msgid ""
 "%<static%> specifier invalid for function %qs declared out of global scope"
 msgstr ""
 
-#: cp/decl.cc:14564
+#: cp/decl.cc:14599
 #, gcc-internal-format
 msgid ""
 "%<inline%> specifier invalid for function %qs declared out of global scope"
 msgstr ""
 
-#: cp/decl.cc:14572
+#: cp/decl.cc:14607
 #, gcc-internal-format
 msgid "virtual non-class function %qs"
 msgstr ""
 
-#: cp/decl.cc:14579
+#: cp/decl.cc:14614
 #, gcc-internal-format
 msgid "%qs defined in a non-class scope"
 msgstr ""
 
-#: cp/decl.cc:14580
+#: cp/decl.cc:14615
 #, gcc-internal-format
 msgid "%qs declared in a non-class scope"
 msgstr ""
 
-#: cp/decl.cc:14623
+#: cp/decl.cc:14658
 #, gcc-internal-format
 msgid "cannot declare member function %qD to have static linkage"
 msgstr ""
 
-#: cp/decl.cc:14632
+#: cp/decl.cc:14667
 #, gcc-internal-format
 msgid "cannot declare static function inside another function"
 msgstr ""
 
-#: cp/decl.cc:14673
+#: cp/decl.cc:14708
 #, gcc-internal-format
 msgid ""
 "%<static%> may not be used when defining (as opposed to declaring) a static "
 "data member"
 msgstr ""
 
-#: cp/decl.cc:14680
+#: cp/decl.cc:14715
 #, gcc-internal-format
 msgid "static member %qD declared %<register%>"
 msgstr ""
 
-#: cp/decl.cc:14686
+#: cp/decl.cc:14721
 #, gcc-internal-format
 msgid "cannot explicitly declare member %q#D to have extern linkage"
 msgstr ""
 
-#: cp/decl.cc:14694
+#: cp/decl.cc:14729
 #, gcc-internal-format
 msgid "declaration of %<constexpr%> variable %qD is not a definition"
 msgstr ""
 
-#: cp/decl.cc:14701
+#: cp/decl.cc:14736
 #, gcc-internal-format
 msgid "a variable cannot be declared %<consteval%>"
 msgstr ""
 
-#: cp/decl.cc:14721
-#, gcc-internal-format
-msgid "declaration of %q#D has no initializer"
-msgstr ""
-
-#: cp/decl.cc:14733
+#: cp/decl.cc:14768
 #, gcc-internal-format
 msgid "%qs initialized and declared %<extern%>"
 msgstr ""
 
-#: cp/decl.cc:14738
+#: cp/decl.cc:14773
 #, gcc-internal-format
 msgid "%qs has both %<extern%> and initializer"
 msgstr ""
 
-#: cp/decl.cc:14935
+#: cp/decl.cc:14970
 #, gcc-internal-format
 msgid "default argument %qE uses %qD"
 msgstr ""
 
-#: cp/decl.cc:14938
+#: cp/decl.cc:14973
 #, gcc-internal-format
 msgid "default argument %qE uses local variable %qD"
 msgstr ""
 
-#: cp/decl.cc:15065
+#: cp/decl.cc:15100
 #, gcc-internal-format
 msgid "invalid use of cv-qualified type %qT in parameter declaration"
 msgstr ""
 
-#: cp/decl.cc:15069
+#: cp/decl.cc:15104
 #, gcc-internal-format
 msgid "invalid use of type %<void%> in parameter declaration"
 msgstr ""
 
-#: cp/decl.cc:15098
+#: cp/decl.cc:15133
 #, gcc-internal-format
 msgid "%<volatile%>-qualified parameter is deprecated"
 msgstr ""
 
-#: cp/decl.cc:15106
+#: cp/decl.cc:15141
 #, gcc-internal-format
 msgid "parameter %qD invalidly declared method type"
 msgstr ""
 
-#: cp/decl.cc:15131
+#: cp/decl.cc:15166
 #, gcc-internal-format
 msgid "parameter %qD includes pointer to array of unknown bound %qT"
 msgstr ""
 
-#: cp/decl.cc:15133
+#: cp/decl.cc:15168
 #, gcc-internal-format
 msgid "parameter %qD includes reference to array of unknown bound %qT"
 msgstr ""
 
-#: cp/decl.cc:15392
+#: cp/decl.cc:15427
 #, gcc-internal-format
 msgid "invalid constructor; you probably meant %<%T (const %T&)%>"
 msgstr ""
 
-#: cp/decl.cc:15471
+#: cp/decl.cc:15506
 #, gcc-internal-format
 msgid "%qD may not be declared within a namespace"
 msgstr ""
 
-#: cp/decl.cc:15478
+#: cp/decl.cc:15513
 #, gcc-internal-format
 msgid "%qD may not be declared as static"
 msgstr ""
 
-#: cp/decl.cc:15506
+#: cp/decl.cc:15541
 #, gcc-internal-format
 msgid "%qD must be a non-static member function"
 msgstr ""
 
-#: cp/decl.cc:15514
+#: cp/decl.cc:15549
 #, gcc-internal-format
 msgid "%qD must be a member function"
 msgstr ""
 
-#: cp/decl.cc:15522
+#: cp/decl.cc:15557
 #, gcc-internal-format
 msgid ""
 "%qD may be a static member function only with %<-std=c++23%> or %<-std=gnu+"
 "+23%>"
 msgstr ""
 
-#: cp/decl.cc:15532
+#: cp/decl.cc:15567
 #, gcc-internal-format
 msgid ""
 "%qD must be either a non-static member function or a non-member function"
 msgstr ""
 
-#: cp/decl.cc:15542
+#: cp/decl.cc:15577
 #, gcc-internal-format
 msgid "%qD must have an argument of class or enumerated type"
 msgstr ""
 
 #. 13.4.0.3
-#: cp/decl.cc:15573
+#: cp/decl.cc:15608
 #, gcc-internal-format
 msgid "ISO C++ prohibits overloading %<operator ?:%>"
 msgstr ""
 
-#: cp/decl.cc:15583
+#: cp/decl.cc:15618
 #, gcc-internal-format
 msgid "%qD must not have variable number of arguments"
 msgstr ""
 
-#: cp/decl.cc:15609
+#: cp/decl.cc:15644
 #, gcc-internal-format
 msgid "%qD must have either zero or one argument"
 msgstr ""
 
-#: cp/decl.cc:15610
+#: cp/decl.cc:15645
 #, gcc-internal-format
 msgid "%qD must have either one or two arguments"
 msgstr ""
 
-#: cp/decl.cc:15622
+#: cp/decl.cc:15657
 #, gcc-internal-format
 msgid "postfix %qD must have %<int%> as its argument"
 msgstr ""
 
-#: cp/decl.cc:15623
+#: cp/decl.cc:15658
 #, gcc-internal-format
 msgid "postfix %qD must have %<int%> as its second argument"
 msgstr ""
 
-#: cp/decl.cc:15634
+#: cp/decl.cc:15669
 #, gcc-internal-format
 msgid "%qD must have no arguments"
 msgstr ""
 
-#: cp/decl.cc:15635 cp/decl.cc:15645
+#: cp/decl.cc:15670 cp/decl.cc:15680
 #, gcc-internal-format
 msgid "%qD must have exactly one argument"
 msgstr ""
 
-#: cp/decl.cc:15646
+#: cp/decl.cc:15681
 #, gcc-internal-format
 msgid "%qD must have exactly two arguments"
 msgstr ""
 
-#: cp/decl.cc:15661
+#: cp/decl.cc:15696
 #, gcc-internal-format
 msgid "%qD cannot have default arguments"
 msgstr ""
 
-#: cp/decl.cc:15685
+#: cp/decl.cc:15720
 #, gcc-internal-format
 msgid "converting %qT to %<void%> will never use a type conversion operator"
 msgstr ""
 
-#: cp/decl.cc:15692
+#: cp/decl.cc:15727
 #, gcc-internal-format
 msgid ""
 "converting %qT to a reference to the same type will never use a type "
 "conversion operator"
 msgstr ""
 
-#: cp/decl.cc:15694
+#: cp/decl.cc:15729
 #, gcc-internal-format
 msgid ""
 "converting %qT to the same type will never use a type conversion operator"
 msgstr ""
 
-#: cp/decl.cc:15703
+#: cp/decl.cc:15738
 #, 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:15705
+#: cp/decl.cc:15740
 #, gcc-internal-format
 msgid ""
 "converting %qT to a base class %qT will never use a type conversion operator"
 msgstr ""
 
-#: cp/decl.cc:15721
+#: cp/decl.cc:15756
 #, gcc-internal-format
 msgid "user-defined %qD always evaluates both arguments"
 msgstr ""
 
-#: cp/decl.cc:15740
+#: cp/decl.cc:15775
 #, gcc-internal-format
 msgid "prefix %qD should return %qT"
 msgstr ""
 
-#: cp/decl.cc:15747
+#: cp/decl.cc:15782
 #, gcc-internal-format
 msgid "postfix %qD should return %qT"
 msgstr ""
 
-#: cp/decl.cc:15759
+#: cp/decl.cc:15794
 #, gcc-internal-format
 msgid "%qD should return by value"
 msgstr ""
 
-#: cp/decl.cc:15814
+#: cp/decl.cc:15849
 #, gcc-internal-format
 msgid "using template type parameter %qT after %qs"
 msgstr ""
 
-#: cp/decl.cc:15837
+#: cp/decl.cc:15872
 #, gcc-internal-format
 msgid "using alias template specialization %qT after %qs"
 msgstr ""
 
-#: cp/decl.cc:15840
+#: cp/decl.cc:15875
 #, gcc-internal-format
 msgid "using typedef-name %qD after %qs"
 msgstr ""
 
-#: cp/decl.cc:15842
+#: cp/decl.cc:15877
 #, gcc-internal-format
 msgid "%qD has a previous declaration here"
 msgstr ""
 
-#: cp/decl.cc:15850
+#: cp/decl.cc:15885
 #, gcc-internal-format
 msgid "%qT referred to as %qs"
 msgstr ""
 
-#: cp/decl.cc:15851 cp/decl.cc:15858
+#: cp/decl.cc:15886 cp/decl.cc:15893
 #, gcc-internal-format
 msgid "%qT has a previous declaration here"
 msgstr ""
 
-#: cp/decl.cc:15857
+#: cp/decl.cc:15892
 #, gcc-internal-format
 msgid "%qT referred to as enum"
 msgstr ""
@@ -57892,110 +57980,110 @@ msgstr ""
 #. void f(class C);            // No template header here
 #.
 #. then the required template argument is missing.
-#: cp/decl.cc:15872
+#: cp/decl.cc:15907
 #, gcc-internal-format
 msgid "template argument required for %<%s %T%>"
 msgstr ""
 
-#: cp/decl.cc:15915 cp/name-lookup.cc:5719 cp/name-lookup.cc:5851
-#: cp/parser.cc:7054 cp/parser.cc:31389
+#: cp/decl.cc:15950 cp/name-lookup.cc:5719 cp/name-lookup.cc:5851
+#: cp/parser.cc:7054 cp/parser.cc:31408
 #, gcc-internal-format
 msgid "reference to %qD is ambiguous"
 msgstr ""
 
-#: cp/decl.cc:15924
+#: cp/decl.cc:15959
 #, gcc-internal-format
 msgid "class template %qD redeclared as non-template"
 msgstr ""
 
-#: cp/decl.cc:15946 cp/name-lookup.cc:5409
+#: cp/decl.cc:15981 cp/name-lookup.cc:5409
 #, gcc-internal-format
 msgid "%qD has the same name as the class in which it is declared"
 msgstr ""
 
-#: cp/decl.cc:15974 cp/friend.cc:317 cp/parser.cc:3386 cp/parser.cc:6759
-#: cp/pt.cc:9815
+#: cp/decl.cc:16009 cp/friend.cc:317 cp/parser.cc:3386 cp/parser.cc:6759
+#: cp/pt.cc:9836
 #, gcc-internal-format
 msgid "%qT is not a template"
 msgstr ""
 
-#: cp/decl.cc:15979
+#: cp/decl.cc:16014
 #, gcc-internal-format
 msgid "perhaps you want to explicitly add %<%T::%>"
 msgstr ""
 
-#: cp/decl.cc:16084
+#: cp/decl.cc:16119
 #, gcc-internal-format
 msgid "use of enum %q#D without previous declaration"
 msgstr ""
 
-#: cp/decl.cc:16110
+#: cp/decl.cc:16145
 #, gcc-internal-format
 msgid "redeclaration of %qT as a non-template"
 msgstr ""
 
-#: cp/decl.cc:16121 cp/semantics.cc:3542
+#: cp/decl.cc:16156 cp/semantics.cc:3548
 #, gcc-internal-format
 msgid "cannot declare %qD in a different module"
 msgstr ""
 
-#: cp/decl.cc:16237
+#: cp/decl.cc:16272
 #, gcc-internal-format
 msgid "derived union %qT invalid"
 msgstr ""
 
-#: cp/decl.cc:16244
+#: cp/decl.cc:16279
 #, gcc-internal-format
 msgid "%qT defined with multiple direct bases"
 msgstr ""
 
-#: cp/decl.cc:16255
+#: cp/decl.cc:16290
 #, gcc-internal-format
 msgid "%qT defined with direct virtual base"
 msgstr ""
 
-#: cp/decl.cc:16280
+#: cp/decl.cc:16315
 #, gcc-internal-format
 msgid "base type %qT fails to be a struct or class type"
 msgstr ""
 
-#: cp/decl.cc:16310
+#: cp/decl.cc:16345
 #, gcc-internal-format
 msgid "recursive type %qT undefined"
 msgstr ""
 
-#: cp/decl.cc:16312
+#: cp/decl.cc:16347
 #, gcc-internal-format
 msgid "duplicate base type %qT invalid"
 msgstr ""
 
-#: cp/decl.cc:16457
+#: cp/decl.cc:16492
 #, gcc-internal-format
 msgid "scoped/unscoped mismatch in enum %q#T"
 msgstr ""
 
-#: cp/decl.cc:16460 cp/decl.cc:16468 cp/decl.cc:16478 cp/decl.cc:17077
-#: cp/parser.cc:21150
+#: cp/decl.cc:16495 cp/decl.cc:16503 cp/decl.cc:16513 cp/decl.cc:17112
+#: cp/parser.cc:21163
 #, gcc-internal-format
 msgid "previous definition here"
 msgstr ""
 
-#: cp/decl.cc:16465
+#: cp/decl.cc:16500
 #, gcc-internal-format
 msgid "underlying type mismatch in enum %q#T"
 msgstr ""
 
-#: cp/decl.cc:16475
+#: cp/decl.cc:16510
 #, gcc-internal-format
 msgid "different underlying type in enum %q#T"
 msgstr ""
 
-#: cp/decl.cc:16486
+#: cp/decl.cc:16521
 #, gcc-internal-format
 msgid "cannot define %qD in different module"
 msgstr ""
 
-#: cp/decl.cc:16561
+#: cp/decl.cc:16596
 #, gcc-internal-format
 msgid "underlying type %qT of %qT must be an integral type"
 msgstr ""
@@ -58004,83 +58092,83 @@ msgstr ""
 #.
 #. IF no integral type can represent all the enumerator values, the
 #. enumeration is ill-formed.
-#: cp/decl.cc:16710
+#: cp/decl.cc:16745
 #, gcc-internal-format
 msgid "no integral type can represent all of the enumerator values for %qT"
 msgstr ""
 
-#: cp/decl.cc:16885
+#: cp/decl.cc:16920
 #, gcc-internal-format
 msgid ""
 "enumerator value for %qD must have integral or unscoped enumeration type"
 msgstr ""
 
-#: cp/decl.cc:16895
+#: cp/decl.cc:16930
 #, gcc-internal-format
 msgid "enumerator value for %qD is not an integer constant"
 msgstr ""
 
-#: cp/decl.cc:16944
+#: cp/decl.cc:16979
 #, gcc-internal-format
 msgid "incremented enumerator value is too large for %<unsigned long%>"
 msgstr ""
 
-#: cp/decl.cc:16945
+#: cp/decl.cc:16980
 #, gcc-internal-format
 msgid "incremented enumerator value is too large for %<long%>"
 msgstr ""
 
-#: cp/decl.cc:16956
+#: cp/decl.cc:16991
 #, gcc-internal-format
 msgid "overflow in enumeration values at %qD"
 msgstr ""
 
-#: cp/decl.cc:16976
+#: cp/decl.cc:17011
 #, gcc-internal-format
 msgid "enumerator value %qE is outside the range of underlying type %qT"
 msgstr ""
 
-#: cp/decl.cc:17075 cp/parser.cc:21148
+#: cp/decl.cc:17110 cp/parser.cc:21161
 #, gcc-internal-format
 msgid "multiple definition of %q#T"
 msgstr ""
 
-#: cp/decl.cc:17149
+#: cp/decl.cc:17184
 #, gcc-internal-format
 msgid "return type %q#T is incomplete"
 msgstr ""
 
-#: cp/decl.cc:17309 cp/typeck.cc:11108
+#: cp/decl.cc:17344 cp/typeck.cc:11114
 #, gcc-internal-format
 msgid "%<operator=%> should return a reference to %<*this%>"
 msgstr ""
 
-#: cp/decl.cc:18122
+#: cp/decl.cc:18157
 #, gcc-internal-format
 msgid "no return statements in function returning %qT"
 msgstr ""
 
-#: cp/decl.cc:18124 cp/typeck.cc:10988
+#: cp/decl.cc:18159 cp/typeck.cc:10994
 #, gcc-internal-format
 msgid "only plain %<auto%> return type can be deduced to %<void%>"
 msgstr ""
 
-#: cp/decl.cc:18186
+#: cp/decl.cc:18221
 #, gcc-internal-format
 msgid "no return statement in %<constexpr%> function returning non-void"
 msgstr ""
 
-#: cp/decl.cc:18379
+#: cp/decl.cc:18414
 #, gcc-internal-format
 msgid "%qD is already defined in class %qT"
 msgstr ""
 
-#: cp/decl.cc:18767
+#: cp/decl.cc:18802
 #, gcc-internal-format
 msgid "using %qs"
 msgstr ""
 
-#: cp/decl.cc:18779
+#: cp/decl.cc:18814
 #, gcc-internal-format
 msgid "use of %qD before deduction of %<auto%>"
 msgstr ""
@@ -58090,211 +58178,211 @@ msgstr ""
 msgid "name missing for member function"
 msgstr ""
 
-#: cp/decl2.cc:480 cp/decl2.cc:513
+#: cp/decl2.cc:482 cp/decl2.cc:525
 #, gcc-internal-format
 msgid "top-level comma expression in array subscript changed meaning in C++23"
 msgstr ""
 
-#: cp/decl2.cc:503
+#: cp/decl2.cc:515
 #, gcc-internal-format
 msgid "built-in subscript operator without expression list"
 msgstr ""
 
-#: cp/decl2.cc:517
+#: cp/decl2.cc:529
 #, gcc-internal-format
 msgid ""
 "built-in subscript operator with more than one expression in expression list"
 msgstr ""
 
-#: cp/decl2.cc:535 cp/decl2.cc:549
+#: cp/decl2.cc:556 cp/decl2.cc:570
 #, gcc-internal-format
 msgid "ambiguous conversion for array subscript"
 msgstr ""
 
-#: cp/decl2.cc:543
+#: cp/decl2.cc:564
 #, gcc-internal-format
 msgid "invalid types %<%T[%T]%> for array subscript"
 msgstr ""
 
-#: cp/decl2.cc:625
+#: cp/decl2.cc:646
 #, gcc-internal-format
 msgid "deleting array %q#E"
 msgstr ""
 
-#: cp/decl2.cc:633
+#: cp/decl2.cc:654
 #, gcc-internal-format
 msgid "type %q#T argument given to %<delete%>, expected pointer"
 msgstr ""
 
-#: cp/decl2.cc:647
+#: cp/decl2.cc:668
 #, gcc-internal-format
 msgid ""
 "cannot delete a function.  Only pointer-to-objects are valid arguments to "
 "%<delete%>"
 msgstr ""
 
-#: cp/decl2.cc:657
+#: cp/decl2.cc:678
 #, gcc-internal-format
 msgid "deleting %qT is undefined"
 msgstr ""
 
-#: cp/decl2.cc:705 cp/pt.cc:5913
+#: cp/decl2.cc:726 cp/pt.cc:5921
 #, gcc-internal-format
 msgid "template declaration of %q#D"
 msgstr ""
 
-#: cp/decl2.cc:745
+#: cp/decl2.cc:766
 #, gcc-internal-format
 msgid ""
 "template parameter lists provided don%'t match the template parameters of %qD"
 msgstr ""
 
-#: cp/decl2.cc:760 cp/pt.cc:5881
+#: cp/decl2.cc:781 cp/pt.cc:5889
 #, gcc-internal-format
 msgid "destructor %qD declared as member template"
 msgstr ""
 
-#: cp/decl2.cc:851
+#: cp/decl2.cc:872
 #, gcc-internal-format
 msgid "no declaration matches %q#D"
 msgstr ""
 
-#: cp/decl2.cc:856
+#: cp/decl2.cc:877
 #, gcc-internal-format
 msgid "no conversion operators declared"
 msgstr ""
 
-#: cp/decl2.cc:859
+#: cp/decl2.cc:880
 #, gcc-internal-format
 msgid "no functions named %qD"
 msgstr ""
 
-#: cp/decl2.cc:861
+#: cp/decl2.cc:882
 #, gcc-internal-format
 msgid "%#qT defined here"
 msgstr ""
 
-#: cp/decl2.cc:921
+#: cp/decl2.cc:942
 #, gcc-internal-format
 msgid "local class %q#T shall not have static data member %q#D"
 msgstr ""
 
-#: cp/decl2.cc:930
+#: cp/decl2.cc:951
 #, gcc-internal-format
 msgid "static data member %qD in unnamed class"
 msgstr ""
 
-#: cp/decl2.cc:932
+#: cp/decl2.cc:953
 #, gcc-internal-format
 msgid "unnamed class defined here"
 msgstr ""
 
-#: cp/decl2.cc:1013
+#: cp/decl2.cc:1034
 #, gcc-internal-format
 msgid "explicit template argument list not allowed"
 msgstr ""
 
-#: cp/decl2.cc:1055
+#: cp/decl2.cc:1076
 #, gcc-internal-format
 msgid "%qD is already defined in %qT"
 msgstr ""
 
-#: cp/decl2.cc:1084 cp/decl2.cc:1092
+#: cp/decl2.cc:1105 cp/decl2.cc:1113
 #, gcc-internal-format
 msgid "invalid initializer for member function %qD"
 msgstr ""
 
-#: cp/decl2.cc:1101
+#: cp/decl2.cc:1122
 #, gcc-internal-format
 msgid "initializer specified for friend function %qD"
 msgstr ""
 
-#: cp/decl2.cc:1104
+#: cp/decl2.cc:1125
 #, gcc-internal-format
 msgid "initializer specified for static member function %qD"
 msgstr ""
 
-#: cp/decl2.cc:1152
+#: cp/decl2.cc:1173
 #, gcc-internal-format
 msgid "%<asm%> specifiers are not permitted on non-static data members"
 msgstr ""
 
-#: cp/decl2.cc:1209
+#: cp/decl2.cc:1230
 #, gcc-internal-format
 msgid "bit-field %qD with non-integral type %qT"
 msgstr ""
 
-#: cp/decl2.cc:1217
+#: cp/decl2.cc:1238
 #, gcc-internal-format
 msgid "cannot declare %qD to be a bit-field type"
 msgstr ""
 
-#: cp/decl2.cc:1228
+#: cp/decl2.cc:1249
 #, gcc-internal-format
 msgid "cannot declare bit-field %qD with function type"
 msgstr ""
 
-#: cp/decl2.cc:1234
+#: cp/decl2.cc:1255
 #, gcc-internal-format
 msgid "cannot declare bit-field %qD with %<warn_if_not_aligned%> type"
 msgstr ""
 
-#: cp/decl2.cc:1241
+#: cp/decl2.cc:1262
 #, gcc-internal-format
 msgid "%qD is already defined in the class %qT"
 msgstr ""
 
-#: cp/decl2.cc:1249
+#: cp/decl2.cc:1270
 #, gcc-internal-format
 msgid "static member %qD cannot be a bit-field"
 msgstr ""
 
-#: cp/decl2.cc:1263
+#: cp/decl2.cc:1284
 #, gcc-internal-format
 msgid "width of bit-field %qD has non-integral type %qT"
 msgstr ""
 
-#: cp/decl2.cc:1656
+#: cp/decl2.cc:1682
 #, gcc-internal-format
 msgid "%q+D static data member inside of declare target directive"
 msgstr ""
 
-#: cp/decl2.cc:1718 cp/name-lookup.cc:8336
+#: cp/decl2.cc:1744 cp/name-lookup.cc:8336
 #, gcc-internal-format
 msgid "%<omp::%E%> not allowed to be specified in this context"
 msgstr ""
 
-#: cp/decl2.cc:1787
+#: cp/decl2.cc:1813
 #, gcc-internal-format
 msgid "anonymous struct not inside named type"
 msgstr ""
 
-#: cp/decl2.cc:1803
+#: cp/decl2.cc:1829
 #, gcc-internal-format
 msgid "%q#D invalid; an anonymous union can only have non-static data members"
 msgstr ""
 
-#: cp/decl2.cc:1810
+#: cp/decl2.cc:1836
 #, gcc-internal-format
 msgid "private member %q#D in anonymous union"
 msgstr ""
 
-#: cp/decl2.cc:1813
+#: cp/decl2.cc:1839
 #, gcc-internal-format
 msgid "protected member %q#D in anonymous union"
 msgstr ""
 
-#: cp/decl2.cc:1878
+#: cp/decl2.cc:1904
 #, gcc-internal-format
 msgid "namespace-scope anonymous aggregates must be static"
 msgstr ""
 
-#: cp/decl2.cc:1887
+#: cp/decl2.cc:1913
 #, gcc-internal-format
 msgid "anonymous union with no members"
 msgstr ""
 
-#: cp/decl2.cc:1924
+#: cp/decl2.cc:1950
 #, gcc-internal-format
 msgid "%<operator new%> must return type %qT"
 msgstr ""
@@ -58303,95 +58391,95 @@ msgstr ""
 #.
 #. The first parameter shall not have an associated default
 #. argument.
-#: cp/decl2.cc:1936
+#: cp/decl2.cc:1962
 #, gcc-internal-format
 msgid "the first parameter of %<operator new%> cannot have a default argument"
 msgstr ""
 
-#: cp/decl2.cc:1952
+#: cp/decl2.cc:1978
 #, gcc-internal-format
 msgid "%<operator new%> takes type %<size_t%> (%qT) as first parameter"
 msgstr ""
 
-#: cp/decl2.cc:1982
+#: cp/decl2.cc:2008
 #, gcc-internal-format
 msgid "%<operator delete%> must return type %qT"
 msgstr ""
 
-#: cp/decl2.cc:1997
+#: cp/decl2.cc:2023
 #, gcc-internal-format
 msgid "destroying %<operator delete%> must be a member function"
 msgstr ""
 
-#: cp/decl2.cc:2000
+#: cp/decl2.cc:2026
 #, gcc-internal-format
 msgid "%<operator delete[]%> cannot be a destroying delete"
 msgstr ""
 
-#: cp/decl2.cc:2002
+#: cp/decl2.cc:2028
 #, gcc-internal-format
 msgid "destroying %<operator delete%> must be a usual deallocation function"
 msgstr ""
 
-#: cp/decl2.cc:2012
+#: cp/decl2.cc:2038
 #, gcc-internal-format
 msgid "%<operator delete%> takes type %qT as first parameter"
 msgstr ""
 
-#: cp/decl2.cc:3003
+#: cp/decl2.cc:3029
 #, gcc-internal-format
 msgid "%qT has a field %q#D whose type has no linkage"
 msgstr ""
 
-#: cp/decl2.cc:3007
+#: cp/decl2.cc:3033
 #, gcc-internal-format
 msgid ""
 "%qT has a field %qD whose type depends on the type %qT which has no linkage"
 msgstr ""
 
-#: cp/decl2.cc:3013
+#: cp/decl2.cc:3039
 #, 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:3017
+#: cp/decl2.cc:3043
 #, gcc-internal-format
 msgid "%qT has a field %q#D whose type uses the anonymous namespace"
 msgstr ""
 
-#: cp/decl2.cc:3025
+#: cp/decl2.cc:3051
 #, gcc-internal-format
 msgid "%qT declared with greater visibility than the type of its field %qD"
 msgstr ""
 
-#: cp/decl2.cc:3044
+#: cp/decl2.cc:3070
 #, gcc-internal-format
 msgid "%qT has a base %qT which has no linkage"
 msgstr ""
 
-#: cp/decl2.cc:3048
+#: cp/decl2.cc:3074
 #, gcc-internal-format
 msgid "%qT has a base %qT which depends on the type %qT which has no linkage"
 msgstr ""
 
-#: cp/decl2.cc:3054
+#: cp/decl2.cc:3080
 #, 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:3058
+#: cp/decl2.cc:3084
 #, gcc-internal-format
 msgid "%qT has a base %qT which uses the anonymous namespace"
 msgstr ""
 
-#: cp/decl2.cc:3065
+#: cp/decl2.cc:3091
 #, gcc-internal-format
 msgid "%qT declared with greater visibility than its base %qT"
 msgstr ""
 
-#: cp/decl2.cc:4540
+#: cp/decl2.cc:4566
 #, gcc-internal-format
 msgid "%q#D, declared using unnamed type, is used but never defined"
 msgstr ""
@@ -58400,102 +58488,102 @@ 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:4549
+#: cp/decl2.cc:4575
 #, gcc-internal-format
 msgid "unnamed type with no linkage used to declare variable %q#D with linkage"
 msgstr ""
 
-#: cp/decl2.cc:4553
+#: cp/decl2.cc:4579
 #, gcc-internal-format
 msgid "unnamed type with no linkage used to declare function %q#D with linkage"
 msgstr ""
 
-#: cp/decl2.cc:4557
+#: cp/decl2.cc:4583
 #, gcc-internal-format
 msgid ""
 "%q#D does not refer to the unqualified type, so it is not used for linkage"
 msgstr ""
 
-#: cp/decl2.cc:4565
+#: cp/decl2.cc:4591
 #, gcc-internal-format
 msgid "%q#D, declared using local type %qT, is used but never defined"
 msgstr ""
 
-#: cp/decl2.cc:4569
+#: cp/decl2.cc:4595
 #, gcc-internal-format
 msgid "type %qT with no linkage used to declare variable %q#D with linkage"
 msgstr ""
 
-#: cp/decl2.cc:4572
+#: cp/decl2.cc:4598
 #, gcc-internal-format
 msgid "type %qT with no linkage used to declare function %q#D with linkage"
 msgstr ""
 
-#: cp/decl2.cc:4760
+#: cp/decl2.cc:4795
 #, gcc-internal-format
 msgid "mangling of %q#D as %qE conflicts with a previous mangle"
 msgstr ""
 
-#: cp/decl2.cc:4763
+#: cp/decl2.cc:4798
 #, gcc-internal-format
 msgid "previous mangling %q#D"
 msgstr ""
 
-#: cp/decl2.cc:4765
+#: cp/decl2.cc:4800
 #, gcc-internal-format
 msgid ""
 "a later %<-fabi-version=%> (or =0) avoids this error with a change in "
 "mangling"
 msgstr ""
 
-#: cp/decl2.cc:4837 cp/decl2.cc:4840
+#: cp/decl2.cc:4872 cp/decl2.cc:4875
 #, gcc-internal-format
 msgid "the program should also define %qD"
 msgstr ""
 
-#: cp/decl2.cc:5174
+#: cp/decl2.cc:5209
 #, gcc-internal-format
 msgid "inline function %qD used but never defined"
 msgstr ""
 
-#: cp/decl2.cc:5401
+#: cp/decl2.cc:5436
 #, gcc-internal-format
 msgid "default argument missing for parameter %P of %q#D"
 msgstr ""
 
-#: cp/decl2.cc:5406
+#: cp/decl2.cc:5441
 #, gcc-internal-format
 msgid "...following parameter %P which has a default argument"
 msgstr ""
 
-#: cp/decl2.cc:5530
+#: cp/decl2.cc:5565
 #, gcc-internal-format
 msgid "implicitly-declared %qD is deprecated"
 msgstr ""
 
-#: cp/decl2.cc:5534
+#: cp/decl2.cc:5569
 #, 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:5675
+#: cp/decl2.cc:5710
 #, gcc-internal-format
 msgid "converting lambda that uses %<...%> to function pointer"
 msgstr ""
 
-#: cp/decl2.cc:5678
+#: cp/decl2.cc:5713
 #, gcc-internal-format
 msgid "use of deleted function %qD"
 msgstr ""
 
-#: cp/decl2.cc:5732
+#: cp/decl2.cc:5767
 #, gcc-internal-format
 msgid "use of function %qD with unsatisfied constraints"
 msgstr ""
 
-#: cp/decl2.cc:5762
+#: cp/decl2.cc:5797
 #, gcc-internal-format
 msgid "use of built-in parameter pack %qD outside of a template"
 msgstr ""
@@ -58653,49 +58741,49 @@ msgstr ""
 msgid "throwing NULL, which has integral, not pointer type"
 msgstr ""
 
-#: cp/except.cc:734
+#: cp/except.cc:736
 #, gcc-internal-format
 msgid "  in thrown expression"
 msgstr ""
 
-#: cp/except.cc:875
+#: cp/except.cc:881
 #, gcc-internal-format
 msgid "cannot declare %<catch%> parameter to be of rvalue reference type %qT"
 msgstr ""
 
-#: cp/except.cc:883
+#: cp/except.cc:889
 #, gcc-internal-format
 msgid ""
 "cannot throw expression of type %qT because it involves types of variable "
 "size"
 msgstr ""
 
-#: cp/except.cc:886
+#: cp/except.cc:892
 #, gcc-internal-format
 msgid "cannot catch type %qT because it involves types of variable size"
 msgstr ""
 
-#: cp/except.cc:986
+#: cp/except.cc:992
 #, gcc-internal-format
 msgid "exception of type %qT will be caught by earlier handler"
 msgstr ""
 
-#: cp/except.cc:988
+#: cp/except.cc:994
 #, gcc-internal-format
 msgid "for type %qT"
 msgstr ""
 
-#: cp/except.cc:1017
+#: cp/except.cc:1023
 #, gcc-internal-format
 msgid "%<...%> handler must be the last handler for its try block"
 msgstr ""
 
-#: cp/except.cc:1113
+#: cp/except.cc:1119
 #, gcc-internal-format
 msgid "noexcept-expression evaluates to %<false%> because of a call to %qD"
 msgstr ""
 
-#: cp/except.cc:1116
+#: cp/except.cc:1122
 #, gcc-internal-format
 msgid "but %qD does not throw; perhaps it should be declared %<noexcept%>"
 msgstr ""
@@ -58774,22 +58862,22 @@ msgstr ""
 msgid "%qT is already a friend of %qT"
 msgstr ""
 
-#: cp/friend.cc:508
+#: cp/friend.cc:521
 #, gcc-internal-format
 msgid "friend declaration %qD may not have virt-specifiers"
 msgstr ""
 
-#: cp/friend.cc:586
+#: cp/friend.cc:599
 #, gcc-internal-format
 msgid "member %qD declared as friend before type %qT defined"
 msgstr ""
 
-#: cp/friend.cc:634
+#: cp/friend.cc:647
 #, gcc-internal-format
 msgid "friend declaration %q#D declares a non-template function"
 msgstr ""
 
-#: cp/friend.cc:638
+#: cp/friend.cc:651
 #, gcc-internal-format
 msgid ""
 "(if this is not what you intended, make sure the function template has "
@@ -58816,415 +58904,415 @@ msgstr ""
 msgid "value-initialization of reference type %qT"
 msgstr ""
 
-#: cp/init.cc:588
+#: cp/init.cc:586
 #, gcc-internal-format
 msgid "recursive instantiation of default member initializer for %qD"
 msgstr ""
 
-#: cp/init.cc:652
+#: cp/init.cc:675
 #, gcc-internal-format
 msgid ""
 "default member initializer for %qD required before the end of its enclosing "
 "class"
 msgstr ""
 
-#: cp/init.cc:722
+#: cp/init.cc:745
 #, gcc-internal-format
 msgid "initializer for flexible array member %q#D"
 msgstr ""
 
-#: cp/init.cc:787
+#: cp/init.cc:810
 #, gcc-internal-format
 msgid ""
 "initializing %qD from %qE does not extend the lifetime of the underlying "
 "array"
 msgstr ""
 
-#: cp/init.cc:891 cp/init.cc:972
+#: cp/init.cc:914 cp/init.cc:995
 #, gcc-internal-format
 msgid "%qD is initialized with itself"
 msgstr ""
 
-#: cp/init.cc:897
+#: cp/init.cc:920
 #, gcc-internal-format
 msgid "reference %qD is not yet bound to a value when used here"
 msgstr ""
 
-#: cp/init.cc:901
+#: cp/init.cc:924
 #, gcc-internal-format
 msgid "member %qD is used uninitialized"
 msgstr ""
 
-#: cp/init.cc:949
+#: cp/init.cc:972
 #, gcc-internal-format
 msgid "%qD should be initialized in the member initialization list"
 msgstr ""
 
-#: cp/init.cc:1093
+#: cp/init.cc:1116
 #, gcc-internal-format
 msgid "invalid initializer for array member %q#D"
 msgstr ""
 
-#: cp/init.cc:1108 cp/init.cc:1134 cp/init.cc:2729 cp/method.cc:2450
+#: cp/init.cc:1131 cp/init.cc:1157 cp/init.cc:2752 cp/method.cc:2450
 #, gcc-internal-format
 msgid "uninitialized const member in %q#T"
 msgstr ""
 
-#: cp/init.cc:1110 cp/init.cc:1128 cp/init.cc:1136 cp/init.cc:2714
-#: cp/init.cc:2742 cp/method.cc:2453 cp/method.cc:2464
+#: cp/init.cc:1133 cp/init.cc:1151 cp/init.cc:1159 cp/init.cc:2737
+#: cp/init.cc:2765 cp/method.cc:2453 cp/method.cc:2464
 #, gcc-internal-format
 msgid "%q#D should be initialized"
 msgstr ""
 
-#: cp/init.cc:1126 cp/init.cc:2701 cp/method.cc:2461
+#: cp/init.cc:1149 cp/init.cc:2724 cp/method.cc:2461
 #, gcc-internal-format
 msgid "uninitialized reference member in %q#T"
 msgstr ""
 
-#: cp/init.cc:1311
+#: cp/init.cc:1334
 #, gcc-internal-format
 msgid "%qD will be initialized after"
 msgstr ""
 
-#: cp/init.cc:1314
+#: cp/init.cc:1337
 #, gcc-internal-format
 msgid "base %qT will be initialized after"
 msgstr ""
 
-#: cp/init.cc:1318
+#: cp/init.cc:1341
 #, gcc-internal-format
 msgid "  %q#D"
 msgstr ""
 
-#: cp/init.cc:1320
+#: cp/init.cc:1343
 #, gcc-internal-format
 msgid "  base %qT"
 msgstr ""
 
-#: cp/init.cc:1322
+#: cp/init.cc:1345
 #, gcc-internal-format
 msgid "  when initialized here"
 msgstr ""
 
-#: cp/init.cc:1339
+#: cp/init.cc:1362
 #, gcc-internal-format
 msgid "multiple initializations given for %qD"
 msgstr ""
 
-#: cp/init.cc:1343
+#: cp/init.cc:1366
 #, gcc-internal-format
 msgid "multiple initializations given for base %qT"
 msgstr ""
 
-#: cp/init.cc:1430
+#: cp/init.cc:1453
 #, gcc-internal-format
 msgid "initializations for multiple members of %qT"
 msgstr ""
 
-#: cp/init.cc:1539
+#: cp/init.cc:1562
 #, gcc-internal-format
 msgid ""
 "base class %q#T should be explicitly initialized in the copy constructor"
 msgstr ""
 
-#: cp/init.cc:1775 cp/init.cc:1794
+#: cp/init.cc:1798 cp/init.cc:1817
 #, gcc-internal-format
 msgid "class %qT does not have any field named %qD"
 msgstr ""
 
-#: cp/init.cc:1781
+#: cp/init.cc:1804
 #, gcc-internal-format
 msgid ""
 "%q#D is a static data member; it can only be initialized at its definition"
 msgstr ""
 
-#: cp/init.cc:1788
+#: cp/init.cc:1811
 #, gcc-internal-format
 msgid "%q#D is not a non-static data member of %qT"
 msgstr ""
 
-#: cp/init.cc:1827
+#: cp/init.cc:1850
 #, gcc-internal-format
 msgid "unnamed initializer for %qT, which has no base classes"
 msgstr ""
 
-#: cp/init.cc:1835
+#: cp/init.cc:1858
 #, gcc-internal-format
 msgid "unnamed initializer for %qT, which uses multiple inheritance"
 msgstr ""
 
-#: cp/init.cc:1882
+#: cp/init.cc:1905
 #, gcc-internal-format
 msgid "%qD is both a direct base and an indirect virtual base"
 msgstr ""
 
-#: cp/init.cc:1890
+#: cp/init.cc:1913
 #, gcc-internal-format
 msgid "type %qT is not a direct or virtual base of %qT"
 msgstr ""
 
-#: cp/init.cc:1893
+#: cp/init.cc:1916
 #, gcc-internal-format
 msgid "type %qT is not a direct base of %qT"
 msgstr ""
 
-#: cp/init.cc:2005 cp/init.cc:4857 cp/typeck2.cc:1359
+#: cp/init.cc:2028 cp/init.cc:4916 cp/typeck2.cc:1359
 #, gcc-internal-format
 msgid "array must be initialized with a brace-enclosed initializer"
 msgstr ""
 
-#: cp/init.cc:2326 cp/semantics.cc:3819 rust/backend/rust-tree.cc:4143
+#: cp/init.cc:2349 cp/semantics.cc:3825 rust/backend/rust-tree.cc:4120
 #, gcc-internal-format
 msgid "%qT is not a class type"
 msgstr ""
 
-#: cp/init.cc:2384
+#: cp/init.cc:2407
 #, gcc-internal-format
 msgid "incomplete type %qT does not have member %qD"
 msgstr ""
 
-#: cp/init.cc:2398
+#: cp/init.cc:2421
 #, gcc-internal-format
 msgid "invalid pointer to bit-field %qD"
 msgstr ""
 
-#: cp/init.cc:2484 cp/typeck.cc:2361 rust/backend/rust-tree.cc:3778
+#: cp/init.cc:2507 cp/typeck.cc:2361 rust/backend/rust-tree.cc:3763
 #, gcc-internal-format
 msgid "invalid use of non-static member function %qD"
 msgstr ""
 
-#: cp/init.cc:2491 cp/semantics.cc:2191
+#: cp/init.cc:2514 cp/semantics.cc:2191
 #, gcc-internal-format
 msgid "invalid use of non-static data member %qD"
 msgstr ""
 
-#: cp/init.cc:2698
+#: cp/init.cc:2721
 #, gcc-internal-format
 msgid ""
 "uninitialized reference member in %q#T using %<new%> without new-initializer"
 msgstr ""
 
-#: cp/init.cc:2706
+#: cp/init.cc:2729
 #, gcc-internal-format
 msgid ""
 "uninitialized reference member in base %q#T of %q#T using %<new%> without "
 "new-initializer"
 msgstr ""
 
-#: cp/init.cc:2710
+#: cp/init.cc:2733
 #, gcc-internal-format
 msgid "uninitialized reference member in base %q#T of %q#T"
 msgstr ""
 
-#: cp/init.cc:2726
+#: cp/init.cc:2749
 #, gcc-internal-format
 msgid ""
 "uninitialized const member in %q#T using %<new%> without new-initializer"
 msgstr ""
 
-#: cp/init.cc:2734
+#: cp/init.cc:2757
 #, gcc-internal-format
 msgid ""
 "uninitialized const member in base %q#T of %q#T using %<new%> without new-"
 "initializer"
 msgstr ""
 
-#: cp/init.cc:2738
+#: cp/init.cc:2761
 #, gcc-internal-format
 msgid "uninitialized const member in base %q#T of %q#T"
 msgstr ""
 
-#: cp/init.cc:2853
+#: cp/init.cc:2876
 #, 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:2856
+#: cp/init.cc:2879
 #, 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:2866
+#: cp/init.cc:2889
 #, 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:2869
+#: cp/init.cc:2892
 #, 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:2878
+#: cp/init.cc:2901
 #, 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:2881
+#: cp/init.cc:2904
 #, 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:2898
+#: cp/init.cc:2921
 #, gcc-internal-format
 msgid "at offset %wi from %qD declared here"
 msgstr ""
 
-#: cp/init.cc:2902
+#: cp/init.cc:2925
 #, gcc-internal-format
 msgid "at offset [%wi, %wi] from %qD declared here"
 msgstr ""
 
-#: cp/init.cc:3100
+#: cp/init.cc:3123
 #, gcc-internal-format
 msgid "integer overflow in array size"
 msgstr ""
 
-#: cp/init.cc:3110
+#: cp/init.cc:3133
 #, gcc-internal-format
 msgid "array size in new-expression must be constant"
 msgstr ""
 
-#: cp/init.cc:3128
+#: cp/init.cc:3151
 #, gcc-internal-format
 msgid "variably modified type not allowed in new-expression"
 msgstr ""
 
-#: cp/init.cc:3144
+#: cp/init.cc:3167
 #, gcc-internal-format
 msgid ""
 "non-constant array new length must be specified directly, not by %<typedef%>"
 msgstr ""
 
-#: cp/init.cc:3146
+#: cp/init.cc:3169
 #, gcc-internal-format
 msgid ""
 "non-constant array new length must be specified without parentheses around "
 "the type-id"
 msgstr ""
 
-#: cp/init.cc:3156
+#: cp/init.cc:3179
 #, gcc-internal-format
 msgid "invalid type %<void%> for %<new%>"
 msgstr ""
 
-#: cp/init.cc:3162
+#: cp/init.cc:3185
 #, gcc-internal-format
 msgid ""
 "%<new%> of %<initializer_list%> does not extend the lifetime of the "
 "underlying array"
 msgstr ""
 
-#: cp/init.cc:3204
+#: cp/init.cc:3227
 #, gcc-internal-format
 msgid "uninitialized const in %<new%> of %q#T"
 msgstr ""
 
-#: cp/init.cc:3360
+#: cp/init.cc:3383
 #, gcc-internal-format
 msgid "no suitable %qD found in class %qT"
 msgstr ""
 
-#: cp/init.cc:3367 cp/search.cc:1177
+#: cp/init.cc:3390 cp/search.cc:1200
 #, gcc-internal-format
 msgid "request for member %qD is ambiguous"
 msgstr ""
 
-#: cp/init.cc:3448
+#: cp/init.cc:3471
 #, gcc-internal-format
 msgid "%<new%> of type %qT with extended alignment %d"
 msgstr ""
 
-#: cp/init.cc:3451
+#: cp/init.cc:3474
 #, gcc-internal-format
 msgid "uses %qD, which does not have an alignment parameter"
 msgstr ""
 
-#: cp/init.cc:3454
+#: cp/init.cc:3477
 #, gcc-internal-format
 msgid "use %<-faligned-new%> to enable C++17 over-aligned new support"
 msgstr ""
 
-#: cp/init.cc:3650
+#: cp/init.cc:3673
 #, gcc-internal-format
 msgid "parenthesized initializer in array new"
 msgstr ""
 
-#: cp/init.cc:3926
+#: cp/init.cc:3949
 #, gcc-internal-format
 msgid "size in array new must have integral type"
 msgstr ""
 
-#: cp/init.cc:3955
+#: cp/init.cc:3978
 #, gcc-internal-format
 msgid "new cannot be applied to a reference type"
 msgstr ""
 
-#: cp/init.cc:3964
+#: cp/init.cc:3987
 #, gcc-internal-format
 msgid "new cannot be applied to a function type"
 msgstr ""
 
-#: cp/init.cc:4084
+#: cp/init.cc:4107
 #, gcc-internal-format
 msgid "possible problem detected in invocation of operator %<delete []%>"
 msgstr ""
 
-#: cp/init.cc:4088
+#: cp/init.cc:4111
 #, 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:4761
+#: cp/init.cc:4820
 #, gcc-internal-format
 msgid "initializer ends prematurely"
 msgstr ""
 
-#: cp/init.cc:5057
+#: cp/init.cc:5116
 #, gcc-internal-format
 msgid "unknown array size in delete"
 msgstr ""
 
-#: cp/init.cc:5091
+#: cp/init.cc:5150
 #, gcc-internal-format
 msgid "possible problem detected in invocation of %<operator delete%>"
 msgstr ""
 
-#: cp/init.cc:5096
+#: cp/init.cc:5155
 #, 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:5111
+#: cp/init.cc:5170
 #, gcc-internal-format
 msgid ""
 "deleting object of abstract class type %qT which has non-virtual destructor "
 "will cause undefined behavior"
 msgstr ""
 
-#: cp/init.cc:5116
+#: cp/init.cc:5175
 #, gcc-internal-format
 msgid ""
 "deleting object of polymorphic class type %qT which has non-virtual "
 "destructor might cause undefined behavior"
 msgstr ""
 
-#: cp/init.cc:5423
+#: cp/init.cc:5482
 #, gcc-internal-format
 msgid "type to vector delete is neither pointer or array type"
 msgstr ""
@@ -59335,67 +59423,67 @@ msgstr ""
 msgid "  # %E"
 msgstr ""
 
-#: cp/mangle.cc:2478
+#: cp/mangle.cc:2503
 #, gcc-internal-format
 msgid "mangling %<typeof%>, use %<decltype%> instead"
 msgstr ""
 
-#: cp/mangle.cc:2482
+#: cp/mangle.cc:2507
 #, gcc-internal-format
 msgid ""
 "use of built-in trait %qT in function signature; use library traits instead"
 msgstr ""
 
-#: cp/mangle.cc:3533
+#: cp/mangle.cc:3560
 #, gcc-internal-format
 msgid ""
 "use of built-in trait %qE in function signature; use library traits instead"
 msgstr ""
 
-#: cp/mangle.cc:3538
+#: cp/mangle.cc:3565
 #, gcc-internal-format, gfc-internal-format
 msgid "mangling %C"
 msgstr ""
 
-#: cp/mangle.cc:3614
+#: cp/mangle.cc:3641
 #, gcc-internal-format
 msgid "omitted middle operand to %<?:%> operand cannot be mangled"
 msgstr ""
 
-#: cp/mangle.cc:4182
+#: cp/mangle.cc:4209
 #, 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:4228
+#: cp/mangle.cc:4255
 #, gcc-internal-format
 msgid ""
 "the mangled name of %qD changed between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)"
 msgstr ""
 
-#: cp/mangle.cc:4234
+#: cp/mangle.cc:4261
 #, gcc-internal-format
 msgid ""
 "the mangled name of %qD changes between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)"
 msgstr ""
 
-#: cp/mangle.cc:4506
+#: cp/mangle.cc:4533
 #, 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:4511
+#: cp/mangle.cc:4538
 #, gcc-internal-format
 msgid ""
 "the mangled name of %qD changes between %<-fabi-version=%d%> and %<-fabi-"
 "version=%d%>"
 msgstr ""
 
-#: cp/mangle.cc:4516
+#: cp/mangle.cc:4543
 #, gcc-internal-format
 msgid ""
 "the mangled name of the initialization guard variable for %qD changes "
@@ -60065,8 +60153,8 @@ msgstr ""
 msgid "%q#D does not have external linkage"
 msgstr ""
 
-#: cp/name-lookup.cc:4844 cp/parser.cc:11411 cp/parser.cc:11421
-#: cp/semantics.cc:4005 cp/semantics.cc:4020
+#: cp/name-lookup.cc:4844 cp/parser.cc:11424 cp/parser.cc:11434
+#: cp/semantics.cc:4011 cp/semantics.cc:4026
 #, gcc-internal-format
 msgid "%q#D declared here"
 msgstr ""
@@ -60088,7 +60176,7 @@ msgid ""
 "%<-std=gnu++20%>"
 msgstr ""
 
-#: cp/name-lookup.cc:5596 cp/pt.cc:18800
+#: cp/name-lookup.cc:5596 cp/pt.cc:18903
 #, gcc-internal-format
 msgid "%qT is not a class, namespace, or enumeration"
 msgstr ""
@@ -60301,7 +60389,7 @@ msgstr ""
 msgid "%<LEXER_DEBUGGING_ENABLED_P%> is not set to true"
 msgstr ""
 
-#: cp/parser.cc:1531 cp/parser.cc:46255
+#: cp/parser.cc:1531 cp/parser.cc:46297
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare %s%> not immediately followed by function declaration "
@@ -60335,7 +60423,7 @@ msgstr ""
 msgid "request for member %qE in non-class type %qT"
 msgstr ""
 
-#: cp/parser.cc:3238 cp/parser.cc:21087
+#: cp/parser.cc:3238 cp/parser.cc:21100
 #, gcc-internal-format
 msgid "%<%T::%E%> has not been declared"
 msgstr ""
@@ -60561,7 +60649,7 @@ msgstr ""
 msgid "%<concept%> only available with %<-std=c++20%> or %<-fconcepts%>"
 msgstr ""
 
-#: cp/parser.cc:3628 cp/parser.cc:30632
+#: cp/parser.cc:3628 cp/parser.cc:30651
 #, gcc-internal-format
 msgid "%<requires%> only available with %<-std=c++20%> or %<-fconcepts%>"
 msgstr ""
@@ -60696,7 +60784,7 @@ msgstr ""
 msgid "global module fragment contents must be from preprocessor inclusion"
 msgstr ""
 
-#: cp/parser.cc:5124 cp/parser.cc:15282
+#: cp/parser.cc:5124 cp/parser.cc:15295
 #, gcc-internal-format
 msgid "expected declaration"
 msgstr ""
@@ -60748,7 +60836,7 @@ msgstr ""
 msgid "fold-expressions only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:5838 cp/parser.cc:5999 cp/parser.cc:6180 cp/semantics.cc:4163
+#: cp/parser.cc:5838 cp/parser.cc:5999 cp/parser.cc:6180 cp/semantics.cc:4169
 #, gcc-internal-format
 msgid "expected primary-expression"
 msgstr ""
@@ -60803,7 +60891,7 @@ msgstr ""
 msgid "typedef-name %qD used as destructor declarator"
 msgstr ""
 
-#: cp/parser.cc:6733 cp/parser.cc:23593
+#: cp/parser.cc:6733 cp/parser.cc:23606
 #, gcc-internal-format
 msgid "expected unqualified-id"
 msgstr ""
@@ -60858,7 +60946,7 @@ msgstr ""
 msgid "wrong number of arguments to %<__builtin_addressof%>"
 msgstr ""
 
-#: cp/parser.cc:7573 cp/pt.cc:21116
+#: cp/parser.cc:7573 cp/pt.cc:21219
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_launder%>"
 msgstr ""
@@ -60908,7 +60996,7 @@ msgstr ""
 msgid "types may not be defined in %<noexcept%> expressions"
 msgstr ""
 
-#: cp/parser.cc:9196 cp/parser.cc:33253
+#: cp/parser.cc:9196 cp/parser.cc:33272
 #, gcc-internal-format
 msgid "types may not be defined in %qs expressions"
 msgstr ""
@@ -60970,192 +61058,192 @@ msgstr ""
 msgid "suggest parentheses around %<>>%> expression"
 msgstr ""
 
-#: cp/parser.cc:10392
+#: cp/parser.cc:10393
 #, gcc-internal-format
 msgid "ISO C++ does not allow %<?:%> with omitted middle operand"
 msgstr ""
 
-#: cp/parser.cc:10703
+#: cp/parser.cc:10704
 #, gcc-internal-format
 msgid "top-level comma expression in array subscript is deprecated"
 msgstr ""
 
-#: cp/parser.cc:10852
+#: cp/parser.cc:10853
 #, gcc-internal-format
 msgid "types may not be defined within %<__builtin_offsetof%>"
 msgstr ""
 
-#: cp/parser.cc:11057
+#: cp/parser.cc:11070
 #, gcc-internal-format
 msgid "lambda-expression in template parameter type"
 msgstr ""
 
-#: cp/parser.cc:11067
+#: cp/parser.cc:11080
 #, gcc-internal-format
 msgid ""
 "lambda-expression in unevaluated context only available with %<-std=c++20%> "
 "or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:11077
+#: cp/parser.cc:11090
 #, gcc-internal-format
 msgid ""
 "lambda-expression in template-argument only available with %<-std=c++20%> or "
 "%<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:11234
+#: cp/parser.cc:11247
 #, gcc-internal-format
 msgid "non-local lambda expression cannot have a capture-default"
 msgstr ""
 
-#: cp/parser.cc:11256
+#: cp/parser.cc:11269
 #, gcc-internal-format
 msgid "expected end of capture-list"
 msgstr ""
 
-#: cp/parser.cc:11272
+#: cp/parser.cc:11285
 #, 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:11278 cp/parser.cc:11300 cp/parser.cc:11493
+#: cp/parser.cc:11291 cp/parser.cc:11313 cp/parser.cc:11506
 #, gcc-internal-format
 msgid "already captured %qD in lambda expression"
 msgstr ""
 
-#: cp/parser.cc:11294
+#: cp/parser.cc:11307
 #, gcc-internal-format
 msgid ""
 "%<*this%> capture only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:11314
+#: cp/parser.cc:11327
 #, gcc-internal-format
 msgid "%<this%> cannot be captured by reference"
 msgstr ""
 
-#: cp/parser.cc:11334
+#: cp/parser.cc:11347
 #, gcc-internal-format
 msgid ""
 "pack init-capture only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:11345
+#: cp/parser.cc:11358
 #, gcc-internal-format
 msgid "%<&%> should come before %<...%>"
 msgstr ""
 
-#: cp/parser.cc:11376
+#: cp/parser.cc:11389
 #, gcc-internal-format
 msgid ""
 "lambda capture initializers only available with %<-std=c++14%> or %<-std=gnu+"
 "+14%>"
 msgstr ""
 
-#: cp/parser.cc:11383
+#: cp/parser.cc:11396
 #, gcc-internal-format
 msgid "empty initializer for lambda init-capture"
 msgstr ""
 
-#: cp/parser.cc:11407
+#: cp/parser.cc:11420
 #, gcc-internal-format
 msgid "capture of non-variable %qE"
 msgstr ""
 
-#: cp/parser.cc:11417
+#: cp/parser.cc:11430
 #, gcc-internal-format
 msgid "capture of variable %qD with non-automatic storage duration"
 msgstr ""
 
-#: cp/parser.cc:11455
+#: cp/parser.cc:11468
 #, gcc-internal-format
 msgid "too many %<...%> in lambda capture"
 msgstr ""
 
-#: cp/parser.cc:11466
+#: cp/parser.cc:11479
 #, gcc-internal-format
 msgid "explicit by-copy capture of %qD redundant with by-copy capture default"
 msgstr ""
 
-#: cp/parser.cc:11471
+#: cp/parser.cc:11484
 #, gcc-internal-format
 msgid ""
 "explicit by-reference capture of %qD redundant with by-reference capture "
 "default"
 msgstr ""
 
-#: cp/parser.cc:11550
+#: cp/parser.cc:11563
 #, gcc-internal-format
 msgid ""
 "lambda templates are only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/parser.cc:11554
+#: cp/parser.cc:11567
 #, gcc-internal-format
 msgid ""
 "lambda templates are only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:11603
+#: cp/parser.cc:11616
 #, gcc-internal-format
 msgid "default argument specified for lambda parameter"
 msgstr ""
 
-#: cp/parser.cc:11622
+#: cp/parser.cc:11635
 #, gcc-internal-format
 msgid ""
 "parameter declaration before lambda declaration specifiers only optional "
 "with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr ""
 
-#: cp/parser.cc:11638
+#: cp/parser.cc:11651
 #, gcc-internal-format
 msgid "%<static%> lambda specifier with lambda capture"
 msgstr ""
 
-#: cp/parser.cc:11650
+#: cp/parser.cc:11663
 #, gcc-internal-format
 msgid ""
 "parameter declaration before lambda transaction qualifier only optional with "
 "%<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr ""
 
-#: cp/parser.cc:11663
+#: cp/parser.cc:11676
 #, gcc-internal-format
 msgid ""
 "parameter declaration before lambda exception specification only optional "
 "with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr ""
 
-#: cp/parser.cc:11681
+#: cp/parser.cc:11694
 #, gcc-internal-format
 msgid ""
 "parameter declaration before lambda trailing return type only optional with "
 "%<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr ""
 
-#: cp/parser.cc:11723
+#: cp/parser.cc:11736
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> lambda only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:11891 cp/parser.cc:12034 cp/parser.cc:47061
+#: cp/parser.cc:11904 cp/parser.cc:12047 cp/parser.cc:47103
 #, gcc-internal-format
 msgid ""
 "mixing OpenMP directives with attribute and pragma syntax on the same "
 "statement"
 msgstr ""
 
-#: cp/parser.cc:11917 cp/parser.cc:47043
+#: cp/parser.cc:11930 cp/parser.cc:47085
 #, gcc-internal-format
 msgid "unknown OpenMP directive name in %<omp::directive%> attribute argument"
 msgstr ""
 
-#: cp/parser.cc:12003
+#: cp/parser.cc:12016
 #, gcc-internal-format
 msgid ""
 "OpenMP construct among %<omp::directive%> attributes requires all %<omp::"
@@ -61163,189 +61251,189 @@ msgid ""
 "sequence%>"
 msgstr ""
 
-#: cp/parser.cc:12011
+#: cp/parser.cc:12024
 #, gcc-internal-format
 msgid ""
 "multiple OpenMP standalone directives among %<omp::directive%> attributes "
 "must be all within the same %<omp::sequence%>"
 msgstr ""
 
-#: cp/parser.cc:12023
+#: cp/parser.cc:12036
 #, gcc-internal-format
 msgid ""
 "standalone OpenMP directives in %<omp::directive%> attribute can only appear "
 "on an empty statement"
 msgstr ""
 
-#: cp/parser.cc:12153
+#: cp/parser.cc:12166
 #, gcc-internal-format
 msgid ""
 "mixing OpenMP directives with attribute and pragma syntax on the same "
 "declaration"
 msgstr ""
 
-#: cp/parser.cc:12280
+#: cp/parser.cc:12293
 #, gcc-internal-format
 msgid "preconditions cannot be statements"
 msgstr ""
 
-#: cp/parser.cc:12283
+#: cp/parser.cc:12296
 #, gcc-internal-format
 msgid "postconditions cannot be statements"
 msgstr ""
 
-#: cp/parser.cc:12288
+#: cp/parser.cc:12301
 #, gcc-internal-format
 msgid "assertions must be followed by %<;%>"
 msgstr ""
 
-#: cp/parser.cc:12452
+#: cp/parser.cc:12465
 #, gcc-internal-format
 msgid ""
 "label at end of compound statement only available with %<-std=c++2b%> or %<-"
 "std=gnu++2b%>"
 msgstr ""
 
-#: cp/parser.cc:12625 cp/parser.cc:12832
+#: cp/parser.cc:12638 cp/parser.cc:12845
 #, gcc-internal-format
 msgid "attributes at the beginning of statement are ignored"
 msgstr ""
 
-#: cp/parser.cc:12669
+#: cp/parser.cc:12682
 #, gcc-internal-format
 msgid "expected labeled-statement"
 msgstr ""
 
-#: cp/parser.cc:12718
+#: cp/parser.cc:12731
 #, gcc-internal-format
 msgid "case label %qE not within a switch statement"
 msgstr ""
 
-#: cp/parser.cc:12839
+#: cp/parser.cc:12852
 #, gcc-internal-format
 msgid "need %<typename%> before %qE because %qT is a dependent scope"
 msgstr ""
 
-#: cp/parser.cc:12848
+#: cp/parser.cc:12861
 #, gcc-internal-format
 msgid "%<%T::%D%> names the constructor, not the type"
 msgstr ""
 
-#: cp/parser.cc:12900
+#: cp/parser.cc:12913
 #, gcc-internal-format
 msgid "compound-statement in %<constexpr%> function"
 msgstr ""
 
-#: cp/parser.cc:13064
+#: cp/parser.cc:13077
 #, gcc-internal-format
 msgid "%<if constexpr%> only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:13086
+#: cp/parser.cc:13099
 #, gcc-internal-format
 msgid "%<if consteval%> only available with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr ""
 
-#: cp/parser.cc:13111 cp/parser.cc:13146
+#: cp/parser.cc:13124 cp/parser.cc:13159
 #, gcc-internal-format
 msgid "%<if consteval%> requires compound statement"
 msgstr ""
 
-#: cp/parser.cc:13188
+#: cp/parser.cc:13201
 #, gcc-internal-format
 msgid ""
 "init-statement in selection statements only available with %<-std=c++17%> or "
 "%<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:13356 cp/parser.cc:33760
+#: cp/parser.cc:13369 cp/parser.cc:33781
 #, gcc-internal-format
 msgid "expected selection-statement"
 msgstr ""
 
-#: cp/parser.cc:13397
+#: cp/parser.cc:13410
 #, gcc-internal-format
 msgid "condition declares an array"
 msgstr ""
 
-#: cp/parser.cc:13399
+#: cp/parser.cc:13412
 #, gcc-internal-format
 msgid "condition declares a function"
 msgstr ""
 
-#: cp/parser.cc:13439
+#: cp/parser.cc:13452
 #, gcc-internal-format
 msgid "types may not be defined in conditions"
 msgstr ""
 
 #. Anything else is an error.
-#: cp/parser.cc:13521 cp/parser.cc:22877 cp/parser.cc:25441
+#: cp/parser.cc:13534 cp/parser.cc:22890 cp/parser.cc:25454
 #, gcc-internal-format
 msgid "expected initializer"
 msgstr ""
 
-#: cp/parser.cc:13571
+#: cp/parser.cc:13584
 #, gcc-internal-format
 msgid ""
 "range-based %<for%> loops with initializer only available with %<-std=c+"
 "+20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:13827
+#: cp/parser.cc:13840
 #, gcc-internal-format
 msgid ""
 "loop variable %qD of type %qT binds to a temporary constructed from type %qT"
 msgstr ""
 
 #. rval
-#: cp/parser.cc:13834
+#: cp/parser.cc:13847
 #, gcc-internal-format
 msgid ""
 "use non-reference type %qT to make the copy explicit or %qT to prevent "
 "copying"
 msgstr ""
 
-#: cp/parser.cc:13858
+#: cp/parser.cc:13871
 #, gcc-internal-format
 msgid "loop variable %qD creates a copy from type %qT"
 msgstr ""
 
-#: cp/parser.cc:13863
+#: cp/parser.cc:13876
 #, gcc-internal-format
 msgid "use reference type to prevent copying"
 msgstr ""
 
-#: cp/parser.cc:14007
+#: cp/parser.cc:14020
 #, gcc-internal-format
 msgid "range-based %<for%> expression of type %qT has incomplete type"
 msgstr ""
 
-#: cp/parser.cc:14091
+#: cp/parser.cc:14104
 #, gcc-internal-format
 msgid ""
 "inconsistent begin/end types in range-based %<for%> statement: %qT and %qT"
 msgstr ""
 
-#: cp/parser.cc:14234 cp/parser.cc:33763
+#: cp/parser.cc:14247 cp/parser.cc:33784
 #, gcc-internal-format
 msgid "expected iteration-statement"
 msgstr ""
 
-#: cp/parser.cc:14279
+#: cp/parser.cc:14292
 #, gcc-internal-format
 msgid ""
 "alias-declaration in init-statement only available with %<-std=c++23%> or %<-"
 "std=gnu++23%>"
 msgstr ""
 
-#: cp/parser.cc:14296
+#: cp/parser.cc:14309
 #, gcc-internal-format
 msgid ""
 "range-based %<for%> loops only available with %<-std=c++11%> or %<-std=gnu+"
 "+11%>"
 msgstr ""
 
-#: cp/parser.cc:14428
+#: cp/parser.cc:14441
 #, gcc-internal-format
 msgid ""
 "%<goto%> in %<constexpr%> function only available with %<-std=c++2b%> or %<-"
@@ -61353,32 +61441,32 @@ msgid ""
 msgstr ""
 
 #. Issue a warning about this use of a GNU extension.
-#: cp/parser.cc:14437
+#: cp/parser.cc:14450
 #, gcc-internal-format
 msgid "ISO C++ forbids computed gotos"
 msgstr ""
 
-#: cp/parser.cc:14450 cp/parser.cc:33766
+#: cp/parser.cc:14463 cp/parser.cc:33787
 #, gcc-internal-format
 msgid "expected jump-statement"
 msgstr ""
 
-#: cp/parser.cc:14627
+#: cp/parser.cc:14640
 #, gcc-internal-format
 msgid "expected module-name"
 msgstr ""
 
-#: cp/parser.cc:14662
+#: cp/parser.cc:14675
 #, gcc-internal-format
 msgid "module-declaration not permitted in header-unit"
 msgstr ""
 
-#: cp/parser.cc:14688
+#: cp/parser.cc:14701
 #, gcc-internal-format
 msgid "private module fragment"
 msgstr ""
 
-#: cp/parser.cc:14692
+#: cp/parser.cc:14705
 #, gcc-internal-format
 msgid ""
 "private module fragment only permitted in purview of module interface or "
@@ -61386,810 +61474,810 @@ msgid ""
 msgstr ""
 
 #. Neither the first declaration, nor in a GMF.
-#: cp/parser.cc:14698
+#: cp/parser.cc:14711
 #, gcc-internal-format
 msgid ""
 "module-declaration only permitted as first declaration, or ending a global "
 "module fragment"
 msgstr ""
 
-#: cp/parser.cc:14732
+#: cp/parser.cc:14745
 #, gcc-internal-format
 msgid "post-module-declaration imports must be contiguous"
 msgstr ""
 
-#: cp/parser.cc:14735
+#: cp/parser.cc:14748
 #, gcc-internal-format
 msgid ""
 "perhaps insert a line break, or other disambiguation, to prevent this being "
 "considered a module control-line"
 msgstr ""
 
-#: cp/parser.cc:14743
+#: cp/parser.cc:14756
 #, gcc-internal-format
 msgid "import-declaration must be at global scope"
 msgstr ""
 
-#: cp/parser.cc:14756
+#: cp/parser.cc:14769
 #, gcc-internal-format
 msgid "import cannot appear directly in a linkage-specification"
 msgstr ""
 
-#: cp/parser.cc:14766
+#: cp/parser.cc:14779
 #, gcc-internal-format
 msgid "post-module-declaration imports must not be include-translated"
 msgstr ""
 
-#: cp/parser.cc:14769
+#: cp/parser.cc:14782
 #, gcc-internal-format
 msgid "post-module-declaration imports must not be from header inclusion"
 msgstr ""
 
-#: cp/parser.cc:14790
+#: cp/parser.cc:14803
 #, gcc-internal-format
 msgid "%qE may only occur after a module interface declaration"
 msgstr ""
 
-#: cp/parser.cc:14798
+#: cp/parser.cc:14811
 #, gcc-internal-format
 msgid "%qE may only occur once in an export declaration"
 msgstr ""
 
-#: cp/parser.cc:14819
+#: cp/parser.cc:14832
 #, gcc-internal-format
 msgid "%<export%> not part of following module-directive"
 msgstr ""
 
-#: cp/parser.cc:14906 cp/parser.cc:27328
+#: cp/parser.cc:14919 cp/parser.cc:27347
 #, gcc-internal-format
 msgid "extra %<;%>"
 msgstr ""
 
-#: cp/parser.cc:14964
+#: cp/parser.cc:14977
 #, gcc-internal-format
 msgid "attributes are not permitted in this position"
 msgstr ""
 
-#: cp/parser.cc:14968
+#: cp/parser.cc:14981
 #, gcc-internal-format
 msgid "attributes may be inserted here"
 msgstr ""
 
-#: cp/parser.cc:15187
+#: cp/parser.cc:15200
 #, gcc-internal-format
 msgid "%<__label__%> not at the beginning of a block"
 msgstr ""
 
-#: cp/parser.cc:15420
+#: cp/parser.cc:15433
 #, gcc-internal-format
 msgid ""
 "non-variable %qD in declaration with more than one declarator with "
 "placeholder type"
 msgstr ""
 
-#: cp/parser.cc:15440
+#: cp/parser.cc:15453
 #, gcc-internal-format
 msgid "inconsistent deduction for %qT: %qT and then %qT"
 msgstr ""
 
-#: cp/parser.cc:15461
+#: cp/parser.cc:15474
 #, gcc-internal-format
 msgid "mixing declarations and function-definitions is forbidden"
 msgstr ""
 
-#: cp/parser.cc:15486
+#: cp/parser.cc:15499
 #, gcc-internal-format
 msgid "types may not be defined in a for-range-declaration"
 msgstr ""
 
-#: cp/parser.cc:15541
+#: cp/parser.cc:15554
 #, gcc-internal-format
 msgid "initializer in range-based %<for%> loop"
 msgstr ""
 
-#: cp/parser.cc:15544
+#: cp/parser.cc:15557
 #, gcc-internal-format
 msgid "multiple declarations in range-based %<for%> loop"
 msgstr ""
 
-#: cp/parser.cc:15597
+#: cp/parser.cc:15610
 #, gcc-internal-format
 msgid ""
 "structured bindings only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:15649
+#: cp/parser.cc:15662
 #, gcc-internal-format
 msgid "empty structured binding declaration"
 msgstr ""
 
-#: cp/parser.cc:15667
+#: cp/parser.cc:15680
 #, gcc-internal-format
 msgid "invalid initializer for structured binding declaration"
 msgstr ""
 
-#: cp/parser.cc:15848
+#: cp/parser.cc:15861
 #, gcc-internal-format
 msgid "%<friend%> used outside of class"
 msgstr ""
 
-#: cp/parser.cc:15887
+#: cp/parser.cc:15900
 #, gcc-internal-format
 msgid "the %<bool%> keyword is not allowed in a C++20 concept definition"
 msgstr ""
 
-#: cp/parser.cc:15890
+#: cp/parser.cc:15903
 #, gcc-internal-format
 msgid "C++20 concept definition syntax is %<concept <name> = <expr>%>"
 msgstr ""
 
-#: cp/parser.cc:15941
+#: cp/parser.cc:15954
 #, gcc-internal-format
 msgid "%<typedef%> specifier conflicts with %qs"
 msgstr ""
 
-#: cp/parser.cc:15967
+#: cp/parser.cc:15980
 #, gcc-internal-format
 msgid "%<auto%> changes meaning in C++11; please remove it"
 msgstr ""
 
-#: cp/parser.cc:16003
+#: cp/parser.cc:16016
 #, gcc-internal-format
 msgid "%qD invalid in condition"
 msgstr ""
 
-#: cp/parser.cc:16012
+#: cp/parser.cc:16025
 #, gcc-internal-format
 msgid "%qD invalid in lambda"
 msgstr ""
 
-#: cp/parser.cc:16016
+#: cp/parser.cc:16029
 #, gcc-internal-format
 msgid "%qD only valid in lambda with %<-std=c++23%> or %<-std=gnu++23%>"
 msgstr ""
 
-#: cp/parser.cc:16098
+#: cp/parser.cc:16111
 #, gcc-internal-format
 msgid "type-specifier invalid in lambda"
 msgstr ""
 
-#: cp/parser.cc:16110
+#: cp/parser.cc:16123
 #, gcc-internal-format
 msgid "standard attributes in middle of decl-specifiers"
 msgstr ""
 
-#: cp/parser.cc:16112
+#: cp/parser.cc:16125
 #, 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:16127
+#: cp/parser.cc:16140
 #, gcc-internal-format
 msgid "class definition may not be declared a friend"
 msgstr ""
 
-#: cp/parser.cc:16200 cp/parser.cc:27873
+#: cp/parser.cc:16213 cp/parser.cc:27892
 #, gcc-internal-format
 msgid "templates may not be %<virtual%>"
 msgstr ""
 
-#: cp/parser.cc:16219
+#: cp/parser.cc:16232
 #, gcc-internal-format
 msgid "types may not be defined in explicit-specifier"
 msgstr ""
 
-#: cp/parser.cc:16223
+#: cp/parser.cc:16236
 #, gcc-internal-format
 msgid ""
 "%<explicit(bool)%> only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:16287
+#: cp/parser.cc:16300
 #, gcc-internal-format
 msgid "invalid linkage-specification"
 msgstr ""
 
-#: cp/parser.cc:16394
+#: cp/parser.cc:16407
 #, gcc-internal-format
 msgid ""
 "%<static_assert%> without a message only available with %<-std=c++17%> or %<-"
 "std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:16595
+#: cp/parser.cc:16608
 #, gcc-internal-format
 msgid ""
 "%<decltype(auto)%> type specifier only available with %<-std=c++14%> or %<-"
 "std=gnu++14%>"
 msgstr ""
 
-#: cp/parser.cc:16608
+#: cp/parser.cc:16621
 #, gcc-internal-format
 msgid "types may not be defined in %<decltype%> expressions"
 msgstr ""
 
-#: cp/parser.cc:16781
+#: cp/parser.cc:16794
 #, gcc-internal-format
 msgid "types may not be defined in a conversion-type-id"
 msgstr ""
 
-#: cp/parser.cc:16810
+#: cp/parser.cc:16823
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in conversion operator"
 msgstr ""
 
-#: cp/parser.cc:16814
+#: cp/parser.cc:16827
 #, gcc-internal-format
 msgid ""
 "use of %<auto%> in member template conversion operator can never be deduced"
 msgstr ""
 
-#: cp/parser.cc:16898
+#: cp/parser.cc:16911
 #, gcc-internal-format
 msgid "only constructors take member initializers"
 msgstr ""
 
-#: cp/parser.cc:16925
+#: cp/parser.cc:16938
 #, gcc-internal-format
 msgid "cannot expand initializer for member %qD"
 msgstr ""
 
-#: cp/parser.cc:16937 cp/pt.cc:27250
+#: cp/parser.cc:16950 cp/pt.cc:27453
 #, gcc-internal-format
 msgid "mem-initializer for %qD follows constructor delegation"
 msgstr ""
 
-#: cp/parser.cc:16949 cp/pt.cc:27262
+#: cp/parser.cc:16962 cp/pt.cc:27465
 #, gcc-internal-format
 msgid "constructor delegation follows mem-initializer for %qD"
 msgstr ""
 
-#: cp/parser.cc:17001
+#: cp/parser.cc:17014
 #, gcc-internal-format
 msgid "anachronistic old-style base class initializer"
 msgstr ""
 
-#: cp/parser.cc:17086
+#: cp/parser.cc:17099
 #, gcc-internal-format
 msgid ""
 "keyword %<typename%> not allowed in this context (a qualified member "
 "initializer is implicitly a type)"
 msgstr ""
 
-#: cp/parser.cc:17486
+#: cp/parser.cc:17499
 #, gcc-internal-format
 msgid "unexpected keyword; remove space between quotes and suffix identifier"
 msgstr ""
 
-#: cp/parser.cc:17492
+#: cp/parser.cc:17505
 #, gcc-internal-format
 msgid "expected suffix identifier"
 msgstr ""
 
-#: cp/parser.cc:17501
+#: cp/parser.cc:17514
 #, gcc-internal-format
 msgid "expected empty string after %<operator%> keyword"
 msgstr ""
 
-#: cp/parser.cc:17507
+#: cp/parser.cc:17520
 #, gcc-internal-format
 msgid "invalid encoding prefix in literal operator"
 msgstr ""
 
-#: cp/parser.cc:17541
+#: cp/parser.cc:17554
 #, gcc-internal-format
 msgid "expected operator"
 msgstr ""
 
-#: cp/parser.cc:17588
+#: cp/parser.cc:17601
 #, gcc-internal-format
 msgid "keyword %<export%> not implemented, and will be ignored"
 msgstr ""
 
-#: cp/parser.cc:17590
+#: cp/parser.cc:17603
 #, gcc-internal-format
 msgid "keyword %<export%> is deprecated, and is ignored"
 msgstr ""
 
-#: cp/parser.cc:17592
+#: cp/parser.cc:17605
 #, gcc-internal-format
 msgid "keyword %<export%> is enabled with %<-fmodules-ts%>"
 msgstr ""
 
-#: cp/parser.cc:17771
+#: cp/parser.cc:17784
 #, gcc-internal-format
 msgid "invalid constrained type parameter"
 msgstr ""
 
-#: cp/parser.cc:17779
+#: cp/parser.cc:17792
 #, gcc-internal-format
 msgid "cv-qualified type parameter"
 msgstr ""
 
-#: cp/parser.cc:17926
+#: cp/parser.cc:17939
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in default template argument"
 msgstr ""
 
-#: cp/parser.cc:18162 cp/parser.cc:18248 cp/parser.cc:25208
+#: cp/parser.cc:18175 cp/parser.cc:18261 cp/parser.cc:25221
 #, gcc-internal-format
 msgid "template parameter pack %qD cannot have a default argument"
 msgstr ""
 
-#: cp/parser.cc:18166 cp/parser.cc:18252
+#: cp/parser.cc:18179 cp/parser.cc:18265
 #, gcc-internal-format
 msgid "template parameter packs cannot have default arguments"
 msgstr ""
 
-#: cp/parser.cc:18319
+#: cp/parser.cc:18332
 #, gcc-internal-format
 msgid "expected template-id"
 msgstr ""
 
-#: cp/parser.cc:18381
+#: cp/parser.cc:18394
 #, gcc-internal-format
 msgid "%<<::%> cannot begin a template-argument list"
 msgstr ""
 
-#: cp/parser.cc:18385
+#: cp/parser.cc:18398
 #, gcc-internal-format
 msgid ""
 "%<<:%> is an alternate spelling for %<[%>. Insert whitespace between %<<%> "
 "and %<::%>"
 msgstr ""
 
-#: cp/parser.cc:18389
+#: cp/parser.cc:18402
 #, 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:18419
+#: cp/parser.cc:18432
 #, gcc-internal-format
 msgid "invalid template-argument-list"
 msgstr ""
 
-#: cp/parser.cc:18420
+#: cp/parser.cc:18433
 #, 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:18427
+#: cp/parser.cc:18440
 #, gcc-internal-format
 msgid "expected %<(%> after template-argument-list"
 msgstr ""
 
-#: cp/parser.cc:18541
+#: cp/parser.cc:18554
 #, gcc-internal-format
 msgid "parse error in template argument list"
 msgstr ""
 
 #. The name does not name a template.
-#: cp/parser.cc:18626 cp/parser.cc:18817 cp/parser.cc:19015
+#: cp/parser.cc:18639 cp/parser.cc:18830 cp/parser.cc:19028
 #, gcc-internal-format
 msgid "expected template-name"
 msgstr ""
 
 #. Explain what went wrong.
-#: cp/parser.cc:18672
+#: cp/parser.cc:18685
 #, gcc-internal-format
 msgid "non-template %qD used as template"
 msgstr ""
 
-#: cp/parser.cc:18674
+#: cp/parser.cc:18687
 #, gcc-internal-format
 msgid "use %<%T::template %D%> to indicate that it is a template"
 msgstr ""
 
-#: cp/parser.cc:18879
+#: cp/parser.cc:18892
 #, gcc-internal-format
 msgid "expected parameter pack before %<...%>"
 msgstr ""
 
-#: cp/parser.cc:18980 cp/parser.cc:18998 cp/parser.cc:19171
+#: cp/parser.cc:18993 cp/parser.cc:19011 cp/parser.cc:19184
 #, gcc-internal-format
 msgid "expected template-argument"
 msgstr ""
 
-#: cp/parser.cc:19138
+#: cp/parser.cc:19151
 #, gcc-internal-format
 msgid "invalid non-type template argument"
 msgstr ""
 
-#: cp/parser.cc:19280
+#: cp/parser.cc:19293
 #, gcc-internal-format
 msgid "explicit instantiation shall not use %<inline%> specifier"
 msgstr ""
 
-#: cp/parser.cc:19284
+#: cp/parser.cc:19297
 #, gcc-internal-format
 msgid "explicit instantiation shall not use %<constexpr%> specifier"
 msgstr ""
 
-#: cp/parser.cc:19288
+#: cp/parser.cc:19301
 #, gcc-internal-format
 msgid "explicit instantiation shall not use %<consteval%> specifier"
 msgstr ""
 
-#: cp/parser.cc:19348
+#: cp/parser.cc:19361
 #, gcc-internal-format
 msgid "template specialization with C linkage"
 msgstr ""
 
-#: cp/parser.cc:19577
+#: cp/parser.cc:19590
 #, gcc-internal-format
 msgid "expected type specifier"
 msgstr ""
 
-#: cp/parser.cc:19777
+#: cp/parser.cc:19790
 #, 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:19783
+#: cp/parser.cc:19796
 #, gcc-internal-format
 msgid ""
 "use of %<auto%> in parameter declaration only available with %<-std=c++14%> "
 "or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/parser.cc:19788
+#: cp/parser.cc:19801
 #, gcc-internal-format
 msgid ""
 "use of %<auto%> in parameter declaration only available with %<-std=c++20%> "
 "or %<-fconcepts%>"
 msgstr ""
 
-#: cp/parser.cc:19940
+#: cp/parser.cc:19953
 #, gcc-internal-format
 msgid "expected template-id for type"
 msgstr ""
 
-#: cp/parser.cc:20070
+#: cp/parser.cc:20083
 #, gcc-internal-format
 msgid "expected type-name"
 msgstr ""
 
-#: cp/parser.cc:20182
+#: cp/parser.cc:20195
 #, gcc-internal-format
 msgid "%qE does not constrain a type"
 msgstr ""
 
-#: cp/parser.cc:20183
+#: cp/parser.cc:20196
 #, gcc-internal-format
 msgid "concept defined here"
 msgstr ""
 
-#: cp/parser.cc:20215
+#: cp/parser.cc:20228
 #, gcc-internal-format
 msgid "expected %<auto%> or %<decltype(auto)%> after %qE"
 msgstr ""
 
-#: cp/parser.cc:20222
+#: cp/parser.cc:20235
 #, gcc-internal-format
 msgid "unexpected placeholder in constrained result type"
 msgstr ""
 
-#: cp/parser.cc:20465
+#: cp/parser.cc:20478
 #, gcc-internal-format
 msgid ""
 "elaborated-type-specifier for a scoped enum must not use the %qD keyword"
 msgstr ""
 
-#: cp/parser.cc:20541
+#: cp/parser.cc:20554
 #, gcc-internal-format
 msgid "%<template%> must follow a nested-name-specifier"
 msgstr ""
 
-#: cp/parser.cc:20703
+#: cp/parser.cc:20716
 #, gcc-internal-format
 msgid "declaration %qD does not declare anything"
 msgstr ""
 
-#: cp/parser.cc:20791
+#: cp/parser.cc:20804
 #, gcc-internal-format
 msgid "attributes ignored on uninstantiated type"
 msgstr ""
 
-#: cp/parser.cc:20797
+#: cp/parser.cc:20810
 #, gcc-internal-format
 msgid "attributes ignored on template instantiation"
 msgstr ""
 
-#: cp/parser.cc:20808
+#: cp/parser.cc:20821
 #, gcc-internal-format
 msgid ""
 "attributes ignored on elaborated-type-specifier that is not a forward "
 "declaration"
 msgstr ""
 
-#: cp/parser.cc:20949
+#: cp/parser.cc:20962
 #, gcc-internal-format
 msgid "%qD is an enumeration template"
 msgstr ""
 
-#: cp/parser.cc:20960
+#: cp/parser.cc:20973
 #, gcc-internal-format
 msgid "%qD does not name an enumeration in %qT"
 msgstr ""
 
-#: cp/parser.cc:20975
+#: cp/parser.cc:20988
 #, gcc-internal-format
 msgid "unnamed scoped enum is not allowed"
 msgstr ""
 
-#: cp/parser.cc:20991
+#: cp/parser.cc:21004
 #, gcc-internal-format
 msgid "types may not be defined in enum-base"
 msgstr ""
 
-#: cp/parser.cc:21036
+#: cp/parser.cc:21049
 #, gcc-internal-format
 msgid "expected %<;%> or %<{%>"
 msgstr ""
 
-#: cp/parser.cc:21081
+#: cp/parser.cc:21094
 #, gcc-internal-format
 msgid "cannot add an enumerator list to a template instantiation"
 msgstr ""
 
-#: cp/parser.cc:21095
+#: cp/parser.cc:21108
 #, gcc-internal-format
 msgid ""
 "nested name specifier %qT for enum declaration does not name a class or "
 "namespace"
 msgstr ""
 
-#: cp/parser.cc:21107 cp/parser.cc:26785
+#: cp/parser.cc:21120 cp/parser.cc:26804
 #, gcc-internal-format
 msgid "declaration of %qD in namespace %qD which does not enclose %qD"
 msgstr ""
 
-#: cp/parser.cc:21112 cp/parser.cc:26790
+#: cp/parser.cc:21125 cp/parser.cc:26809
 #, gcc-internal-format
 msgid "declaration of %qD in %qD which does not enclose %qD"
 msgstr ""
 
-#: cp/parser.cc:21124 cp/parser.cc:26803
+#: cp/parser.cc:21137 cp/parser.cc:26822
 #, gcc-internal-format
 msgid "extra qualification not allowed"
 msgstr ""
 
-#: cp/parser.cc:21163
+#: cp/parser.cc:21176
 #, gcc-internal-format
 msgid "ISO C++ forbids empty unnamed enum"
 msgstr ""
 
-#: cp/parser.cc:21187
+#: cp/parser.cc:21200
 #, gcc-internal-format
 msgid "opaque-enum-specifier without name"
 msgstr ""
 
-#: cp/parser.cc:21190
+#: cp/parser.cc:21203
 #, gcc-internal-format
 msgid "opaque-enum-specifier must use a simple identifier"
 msgstr ""
 
-#: cp/parser.cc:21311
+#: cp/parser.cc:21324
 #, gcc-internal-format
 msgid "unexpanded parameter pack in enumerator in lambda"
 msgstr ""
 
-#: cp/parser.cc:21386
+#: cp/parser.cc:21399
 #, gcc-internal-format
 msgid "%qD is not a namespace-name; did you mean %qs?"
 msgstr ""
 
-#: cp/parser.cc:21390
+#: cp/parser.cc:21403
 #, gcc-internal-format
 msgid "%qD is not a namespace-name"
 msgstr ""
 
-#: cp/parser.cc:21394
+#: cp/parser.cc:21407
 #, gcc-internal-format
 msgid "expected namespace-name"
 msgstr ""
 
-#: cp/parser.cc:21455
+#: cp/parser.cc:21468
 #, gcc-internal-format
 msgid ""
 "nested inline namespace definitions only available with %<-std=c++20%> or %<-"
 "std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:21467
+#: cp/parser.cc:21480
 #, gcc-internal-format
 msgid "standard attributes on namespaces must precede the namespace name"
 msgstr ""
 
-#: cp/parser.cc:21486
+#: cp/parser.cc:21499
 #, gcc-internal-format
 msgid ""
 "nested namespace definitions only available with %<-std=c++17%> or %<-"
 "std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:21496
+#: cp/parser.cc:21509
 #, gcc-internal-format
 msgid "nested namespace name required"
 msgstr ""
 
-#: cp/parser.cc:21501
+#: cp/parser.cc:21514
 #, gcc-internal-format
 msgid "namespace name required"
 msgstr ""
 
-#: cp/parser.cc:21505
+#: cp/parser.cc:21518
 #, gcc-internal-format
 msgid "a nested namespace definition cannot have attributes"
 msgstr ""
 
-#: cp/parser.cc:21508
+#: cp/parser.cc:21521
 #, gcc-internal-format
 msgid "a nested namespace definition cannot be inline"
 msgstr ""
 
-#: cp/parser.cc:21515
+#: cp/parser.cc:21528
 #, gcc-internal-format
 msgid "namespace %qD entered"
 msgstr ""
 
-#: cp/parser.cc:21570
+#: cp/parser.cc:21583
 #, gcc-internal-format
 msgid "%<namespace%> definition is not allowed here"
 msgstr ""
 
-#: cp/parser.cc:21752
+#: cp/parser.cc:21765
 #, gcc-internal-format
 msgid ""
 "pack expansion in using-declaration only available with %<-std=c++17%> or %<-"
 "std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:21796
+#: cp/parser.cc:21809
 #, gcc-internal-format
 msgid "a template-id may not appear in a using-declaration"
 msgstr ""
 
-#: cp/parser.cc:21814
+#: cp/parser.cc:21827
 #, gcc-internal-format
 msgid ""
 "comma-separated list in using-declaration only available with %<-std=c++17%> "
 "or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:21824
+#: cp/parser.cc:21837
 #, gcc-internal-format
 msgid ""
 "access declarations are deprecated in favour of using-declarations; "
 "suggestion: add the %<using%> keyword"
 msgstr ""
 
-#: cp/parser.cc:21889
+#: cp/parser.cc:21902
 #, gcc-internal-format
 msgid "opaque-enum-declaration here"
 msgstr ""
 
-#: cp/parser.cc:21959
+#: cp/parser.cc:21972
 #, gcc-internal-format
 msgid "types may not be defined in alias template declarations"
 msgstr ""
 
-#: cp/parser.cc:22137
+#: cp/parser.cc:22150
 #, gcc-internal-format
 msgid ""
 "%<asm%> in %<constexpr%> function only available with %<-std=c++20%> or %<-"
 "std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:22157 cp/parser.cc:22174 cp/parser.cc:22188
+#: cp/parser.cc:22170 cp/parser.cc:22187 cp/parser.cc:22201
 #, gcc-internal-format
 msgid "duplicate %<asm%> qualifier %qT"
 msgstr ""
 
-#: cp/parser.cc:22164
+#: cp/parser.cc:22177
 #, gcc-internal-format
 msgid "%<asm%> qualifier %qT ignored outside of function body"
 msgstr ""
 
-#: cp/parser.cc:22201
+#: cp/parser.cc:22214
 #, gcc-internal-format
 msgid "%qT is not an %<asm%> qualifier"
 msgstr ""
 
-#: cp/parser.cc:22217
+#: cp/parser.cc:22230
 #, gcc-internal-format
 msgid "%<asm%> qualifier outside of function body"
 msgstr ""
 
-#: cp/parser.cc:22446
+#: cp/parser.cc:22459
 #, gcc-internal-format
 msgid "empty parentheses were disambiguated as a function declaration"
 msgstr ""
 
-#: cp/parser.cc:22457
+#: cp/parser.cc:22470
 #, gcc-internal-format
 msgid "remove parentheses to default-initialize a variable"
 msgstr ""
 
-#: cp/parser.cc:22462
+#: cp/parser.cc:22475
 #, gcc-internal-format
 msgid "or replace parentheses with braces to aggregate-initialize a variable"
 msgstr ""
 
-#: cp/parser.cc:22465
+#: cp/parser.cc:22478
 #, gcc-internal-format
 msgid "or replace parentheses with braces to value-initialize a variable"
 msgstr ""
 
-#: cp/parser.cc:22482 cp/parser.cc:22507
+#: cp/parser.cc:22495 cp/parser.cc:22520
 #, gcc-internal-format
 msgid "parentheses were disambiguated as a function declaration"
 msgstr ""
 
-#: cp/parser.cc:22494 cp/parser.cc:22515
+#: cp/parser.cc:22507 cp/parser.cc:22528
 #, gcc-internal-format
 msgid "replace parentheses with braces to declare a variable"
 msgstr ""
 
-#: cp/parser.cc:22501
+#: cp/parser.cc:22514
 #, gcc-internal-format
 msgid "add parentheses to declare a variable"
 msgstr ""
 
-#: cp/parser.cc:22748
+#: cp/parser.cc:22761
 #, gcc-internal-format
 msgid "a function-definition is not allowed here"
 msgstr ""
 
-#: cp/parser.cc:22759
+#: cp/parser.cc:22772
 #, gcc-internal-format
 msgid "an %<asm%> specification is not allowed on a function-definition"
 msgstr ""
 
-#: cp/parser.cc:22763
+#: cp/parser.cc:22776
 #, gcc-internal-format
 msgid "attributes are not allowed on a function-definition"
 msgstr ""
 
-#: cp/parser.cc:22814
+#: cp/parser.cc:22827
 #, gcc-internal-format
 msgid "expected constructor, destructor, or type conversion"
 msgstr ""
 
-#: cp/parser.cc:22958
+#: cp/parser.cc:22971
 #, gcc-internal-format
 msgid "initializer provided for function"
 msgstr ""
 
-#: cp/parser.cc:23000
+#: cp/parser.cc:23013
 #, gcc-internal-format
 msgid "attributes after parenthesized initializer ignored"
 msgstr ""
 
-#: cp/parser.cc:23014
+#: cp/parser.cc:23027
 #, gcc-internal-format
 msgid "non-function %qD declared as implicit template"
 msgstr ""
 
-#: cp/parser.cc:23513
+#: cp/parser.cc:23526
 #, gcc-internal-format
 msgid "array bound is not an integer constant"
 msgstr ""
 
-#: cp/parser.cc:23639
+#: cp/parser.cc:23652
 #, gcc-internal-format
 msgid "cannot define member of dependent typedef %qT"
 msgstr ""
 
-#: cp/parser.cc:23643
+#: cp/parser.cc:23656
 #, gcc-internal-format
 msgid "%<%T::%E%> is not a type"
 msgstr ""
@@ -62198,17 +62286,17 @@ msgstr ""
 #. here because we do not have enough
 #. information about its original syntactic
 #. form.
-#: cp/parser.cc:23672
+#: cp/parser.cc:23685
 #, gcc-internal-format
 msgid "invalid declarator"
 msgstr ""
 
-#: cp/parser.cc:23680
+#: cp/parser.cc:23693
 #, gcc-internal-format
 msgid "invalid use of constructor as a template"
 msgstr ""
 
-#: cp/parser.cc:23682
+#: cp/parser.cc:23695
 #, gcc-internal-format
 msgid ""
 "use %<%T::%D%> instead of %<%T::%D%> to name the constructor in a qualified "
@@ -62217,225 +62305,225 @@ msgstr ""
 
 #. But declarations with qualified-ids can't appear in a
 #. function.
-#: cp/parser.cc:23797
+#: cp/parser.cc:23810
 #, gcc-internal-format
 msgid "qualified-id in declaration"
 msgstr ""
 
-#: cp/parser.cc:23822
+#: cp/parser.cc:23835
 #, gcc-internal-format
 msgid "expected declarator"
 msgstr ""
 
-#: cp/parser.cc:23943
+#: cp/parser.cc:23956
 #, gcc-internal-format
 msgid "%qD is a namespace"
 msgstr ""
 
-#: cp/parser.cc:23945
+#: cp/parser.cc:23958
 #, gcc-internal-format
 msgid "cannot form pointer to member of non-class %q#T"
 msgstr ""
 
-#: cp/parser.cc:23966
+#: cp/parser.cc:23979
 #, gcc-internal-format
 msgid "expected ptr-operator"
 msgstr ""
 
-#: cp/parser.cc:24027
+#: cp/parser.cc:24040
 #, gcc-internal-format
 msgid "duplicate cv-qualifier"
 msgstr ""
 
-#: cp/parser.cc:24081
+#: cp/parser.cc:24094
 #, gcc-internal-format
 msgid "multiple ref-qualifiers"
 msgstr ""
 
-#: cp/parser.cc:24118
+#: cp/parser.cc:24131
 #, gcc-internal-format
 msgid "%qE requires %<-fgnu-tm%>"
 msgstr ""
 
-#: cp/parser.cc:24176
+#: cp/parser.cc:24189
 #, gcc-internal-format
 msgid "duplicate virt-specifier"
 msgstr ""
 
-#: cp/parser.cc:24441
+#: cp/parser.cc:24454
 #, gcc-internal-format
 msgid "missing template arguments after %qE"
 msgstr ""
 
-#: cp/parser.cc:24447
+#: cp/parser.cc:24460
 #, gcc-internal-format
 msgid "%qT not permitted in template argument"
 msgstr ""
 
-#: cp/parser.cc:24450 cp/typeck2.cc:340 cp/typeck2.cc:387 cp/typeck2.cc:2474
-#: rust/backend/rust-tree.cc:3876
+#: cp/parser.cc:24463 cp/typeck2.cc:340 cp/typeck2.cc:387 cp/typeck2.cc:2474
+#: rust/backend/rust-tree.cc:3861
 #, gcc-internal-format
 msgid "invalid use of %qT"
 msgstr ""
 
-#: cp/parser.cc:24477
+#: cp/parser.cc:24490
 #, gcc-internal-format
 msgid "types may not be defined in template arguments"
 msgstr ""
 
-#: cp/parser.cc:24482
+#: cp/parser.cc:24495
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in template argument"
 msgstr ""
 
-#: cp/parser.cc:24588
+#: cp/parser.cc:24601
 #, gcc-internal-format
 msgid "expected type-specifier"
 msgstr ""
 
-#: cp/parser.cc:24915
+#: cp/parser.cc:24928
 #, gcc-internal-format
 msgid "expected %<,%> or %<...%>"
 msgstr ""
 
-#: cp/parser.cc:24993
+#: cp/parser.cc:25006
 #, gcc-internal-format
 msgid "types may not be defined in parameter types"
 msgstr ""
 
-#: cp/parser.cc:25192
+#: cp/parser.cc:25205
 #, gcc-internal-format
 msgid "default arguments are only permitted for function parameters"
 msgstr ""
 
-#: cp/parser.cc:25210
+#: cp/parser.cc:25223
 #, gcc-internal-format
 msgid "parameter pack %qD cannot have a default argument"
 msgstr ""
 
-#: cp/parser.cc:25216
+#: cp/parser.cc:25229
 #, gcc-internal-format
 msgid "template parameter pack cannot have a default argument"
 msgstr ""
 
-#: cp/parser.cc:25218
+#: cp/parser.cc:25231
 #, gcc-internal-format
 msgid "parameter pack cannot have a default argument"
 msgstr ""
 
-#: cp/parser.cc:25348
+#: cp/parser.cc:25361
 #, 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:25352
+#: cp/parser.cc:25365
 #, 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:25687
+#: cp/parser.cc:25700
 #, gcc-internal-format
 msgid ""
 "C++ designated initializers only available with %<-std=c++20%> or %<-std=gnu+"
 "+20%>"
 msgstr ""
 
-#: cp/parser.cc:25707
+#: cp/parser.cc:25720
 #, gcc-internal-format
 msgid "ISO C++ does not allow GNU designated initializers"
 msgstr ""
 
-#: cp/parser.cc:25745
+#: cp/parser.cc:25758
 #, gcc-internal-format
 msgid "ISO C++ does not allow C99 designated initializers"
 msgstr ""
 
-#: cp/parser.cc:25759
+#: cp/parser.cc:25772
 #, gcc-internal-format
 msgid ""
 "either all initializer clauses should be designated or none of them should be"
 msgstr ""
 
-#: cp/parser.cc:25784
+#: cp/parser.cc:25797
 #, gcc-internal-format
 msgid "%<...%> not allowed in designated initializer list"
 msgstr ""
 
-#: cp/parser.cc:25835
+#: cp/parser.cc:25848
 #, gcc-internal-format
 msgid "%<.%s%> designator used multiple times in the same initializer list"
 msgstr ""
 
-#: cp/parser.cc:25891 cp/parser.cc:26028
+#: cp/parser.cc:25904 cp/parser.cc:26041
 #, gcc-internal-format
 msgid "expected class-name"
 msgstr ""
 
-#: cp/parser.cc:26270
+#: cp/parser.cc:26288
 #, gcc-internal-format
 msgid "expected %<;%> after class definition"
 msgstr ""
 
-#: cp/parser.cc:26273
+#: cp/parser.cc:26291
 #, gcc-internal-format
 msgid "expected %<;%> after struct definition"
 msgstr ""
 
-#: cp/parser.cc:26276
+#: cp/parser.cc:26294
 #, gcc-internal-format
 msgid "expected %<;%> after union definition"
 msgstr ""
 
-#: cp/parser.cc:26727
+#: cp/parser.cc:26746
 #, gcc-internal-format
 msgid "expected %<{%> or %<:%>"
 msgstr ""
 
-#: cp/parser.cc:26738
+#: cp/parser.cc:26757
 #, gcc-internal-format
 msgid "cannot specify %<override%> for a class"
 msgstr ""
 
-#: cp/parser.cc:26746
+#: cp/parser.cc:26765
 #, gcc-internal-format
 msgid "global qualification of class name is invalid"
 msgstr ""
 
-#: cp/parser.cc:26753
+#: cp/parser.cc:26772
 #, gcc-internal-format
 msgid "qualified name does not name a class"
 msgstr ""
 
-#: cp/parser.cc:26765
+#: cp/parser.cc:26784
 #, gcc-internal-format
 msgid "keyword %<template%> not allowed in class-head-name"
 msgstr ""
 
-#: cp/parser.cc:26771
+#: cp/parser.cc:26790
 #, gcc-internal-format
 msgid "invalid class name in declaration of %qD"
 msgstr ""
 
-#: cp/parser.cc:26825
+#: cp/parser.cc:26844
 #, gcc-internal-format
 msgid "an explicit specialization must be preceded by %<template <>%>"
 msgstr ""
 
-#: cp/parser.cc:26857
+#: cp/parser.cc:26876
 #, gcc-internal-format
 msgid "function template %qD redeclared as a class template"
 msgstr ""
 
-#: cp/parser.cc:26890
+#: cp/parser.cc:26909
 #, gcc-internal-format
 msgid "could not resolve typename type"
 msgstr ""
 
-#: cp/parser.cc:26954
+#: cp/parser.cc:26973
 #, gcc-internal-format
 msgid "previous definition of %q#T"
 msgstr ""
@@ -62443,265 +62531,265 @@ 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:26968 cp/pt.cc:4299
+#: cp/parser.cc:26987 cp/pt.cc:4307
 #, gcc-internal-format
 msgid "unexpanded parameter pack in local class in lambda"
 msgstr ""
 
-#: cp/parser.cc:27068 cp/parser.cc:33769
+#: cp/parser.cc:27087 cp/parser.cc:33790
 #, gcc-internal-format
 msgid "expected class-key"
 msgstr ""
 
-#: cp/parser.cc:27093
+#: cp/parser.cc:27112
 #, 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:27097
+#: cp/parser.cc:27116
 #, gcc-internal-format
 msgid "expected %<class%> or %<typename%>"
 msgstr ""
 
-#: cp/parser.cc:27347
+#: cp/parser.cc:27366
 #, gcc-internal-format
 msgid "in C++03 a class-key must be used when declaring a friend"
 msgstr ""
 
-#: cp/parser.cc:27378
+#: cp/parser.cc:27397
 #, gcc-internal-format
 msgid "friend declaration does not name a class or function"
 msgstr ""
 
-#: cp/parser.cc:27396
+#: cp/parser.cc:27415
 #, gcc-internal-format
 msgid "a storage class on an anonymous aggregate in class scope is not allowed"
 msgstr ""
 
-#: cp/parser.cc:27498
+#: cp/parser.cc:27517
 #, gcc-internal-format
 msgid ""
 "default member initializers for bit-fields only available with %<-std=c+"
 "+20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:27505
+#: cp/parser.cc:27524
 #, gcc-internal-format
 msgid "default member initializer for unnamed bit-field"
 msgstr ""
 
-#: cp/parser.cc:27518
+#: cp/parser.cc:27537
 #, gcc-internal-format
 msgid "ISO C++ allows bit-field attributes only before the %<:%> token"
 msgstr ""
 
-#: cp/parser.cc:27680
+#: cp/parser.cc:27699
 #, gcc-internal-format
 msgid "bit-field %qD has non-integral type %qT"
 msgstr ""
 
-#: cp/parser.cc:27708
+#: cp/parser.cc:27727
 #, gcc-internal-format
 msgid "pure-specifier on function-definition"
 msgstr ""
 
-#: cp/parser.cc:27729
+#: cp/parser.cc:27748
 #, gcc-internal-format
 msgid "extra %<;%> after in-class function definition"
 msgstr ""
 
-#: cp/parser.cc:27778
+#: cp/parser.cc:27797
 #, gcc-internal-format
 msgid "stray %<,%> at end of member declaration"
 msgstr ""
 
-#: cp/parser.cc:27792
+#: cp/parser.cc:27811
 #, gcc-internal-format
 msgid "expected %<;%> at end of member declaration"
 msgstr ""
 
-#: cp/parser.cc:27867
+#: cp/parser.cc:27886
 #, gcc-internal-format
 msgid "invalid pure specifier (only %<= 0%> is allowed)"
 msgstr ""
 
-#: cp/parser.cc:27902
+#: cp/parser.cc:27921
 #, gcc-internal-format
 msgid "a brace-enclosed initializer is not allowed here"
 msgstr ""
 
-#: cp/parser.cc:28032
+#: cp/parser.cc:28051
 #, gcc-internal-format
 msgid "%<virtual%> specified more than once in base-specifier"
 msgstr ""
 
-#: cp/parser.cc:28052
+#: cp/parser.cc:28071
 #, gcc-internal-format
 msgid "more than one access specifier in base-specifier"
 msgstr ""
 
-#: cp/parser.cc:28076
+#: cp/parser.cc:28095
 #, gcc-internal-format
 msgid "keyword %<typename%> not allowed outside of templates"
 msgstr ""
 
-#: cp/parser.cc:28079
+#: cp/parser.cc:28098
 #, gcc-internal-format
 msgid ""
 "keyword %<typename%> not allowed in this context (the base class is "
 "implicitly a type)"
 msgstr ""
 
-#: cp/parser.cc:28279 cp/parser.cc:28373
+#: cp/parser.cc:28298 cp/parser.cc:28392
 #, gcc-internal-format
 msgid "types may not be defined in an exception-specification"
 msgstr ""
 
-#: cp/parser.cc:28381
+#: cp/parser.cc:28400
 #, gcc-internal-format
 msgid "ISO C++17 does not allow dynamic exception specifications"
 msgstr ""
 
-#: cp/parser.cc:28387
+#: cp/parser.cc:28406
 #, gcc-internal-format
 msgid "dynamic exception specifications are deprecated in C++11"
 msgstr ""
 
-#: cp/parser.cc:28431
+#: cp/parser.cc:28450
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in exception-specification"
 msgstr ""
 
-#: cp/parser.cc:28472
+#: cp/parser.cc:28491
 #, gcc-internal-format
 msgid ""
 "%<try%> in %<constexpr%> function only available with %<-std=c++20%> or %<-"
 "std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.cc:28584
+#: cp/parser.cc:28603
 #, gcc-internal-format
 msgid "types may not be defined in exception-declarations"
 msgstr ""
 
-#: cp/parser.cc:29142
+#: cp/parser.cc:29161
 #, gcc-internal-format
 msgid "expected OpenMP directive name"
 msgstr ""
 
-#: cp/parser.cc:29151
+#: cp/parser.cc:29170
 #, gcc-internal-format
 msgid "expected attribute argument as balanced token sequence"
 msgstr ""
 
-#: cp/parser.cc:29196
+#: cp/parser.cc:29215
 #, gcc-internal-format
 msgid "expected %<directive%> or %<sequence%>"
 msgstr ""
 
-#: cp/parser.cc:29295
+#: cp/parser.cc:29314
 #, gcc-internal-format
 msgid "attribute using prefix used together with scoped attribute token"
 msgstr ""
 
-#: cp/parser.cc:29309
+#: cp/parser.cc:29328
 #, gcc-internal-format
 msgid "expected an identifier for the attribute name"
 msgstr ""
 
-#: cp/parser.cc:29364
+#: cp/parser.cc:29383
 #, gcc-internal-format
 msgid "%<omp::%E%> attribute requires argument"
 msgstr ""
 
 #. e.g. [[attr()]].
-#: cp/parser.cc:29436
+#: cp/parser.cc:29455
 #, gcc-internal-format
 msgid "parentheses must be omitted if %qE attribute argument list is empty"
 msgstr ""
 
-#: cp/parser.cc:29471
+#: cp/parser.cc:29490
 #, gcc-internal-format
 msgid "attribute %qs specified multiple times"
 msgstr ""
 
-#: cp/parser.cc:29513
+#: cp/parser.cc:29532
 #, gcc-internal-format
 msgid "expected attribute before %<...%>"
 msgstr ""
 
-#: cp/parser.cc:29556
+#: cp/parser.cc:29575
 #, gcc-internal-format
 msgid "expected contract-role"
 msgstr ""
 
 #. We got some other token other than a ':'.
-#: cp/parser.cc:29637
+#: cp/parser.cc:29656
 #, gcc-internal-format
 msgid "expected contract semantic or level"
 msgstr ""
 
-#: cp/parser.cc:29647
+#: cp/parser.cc:29666
 #, gcc-internal-format
 msgid "expected contract level: %<default%>, %<audit%>, or %<axiom%>"
 msgstr ""
 
-#: cp/parser.cc:29657
+#: cp/parser.cc:29676
 #, gcc-internal-format
 msgid "invalid use of contract role for explicit semantic"
 msgstr ""
 
-#: cp/parser.cc:29794
+#: cp/parser.cc:29813
 #, gcc-internal-format
 msgid "contracts are only available with %<-fcontracts%>"
 msgstr ""
 
-#: cp/parser.cc:29949
+#: cp/parser.cc:29968
 #, gcc-internal-format
 msgid ""
 "attribute using prefix only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:30294 cp/parser.cc:30303
+#: cp/parser.cc:30313 cp/parser.cc:30322
 #, gcc-internal-format
 msgid "expression must be enclosed in parentheses"
 msgstr ""
 
-#: cp/parser.cc:30649
+#: cp/parser.cc:30668
 #, gcc-internal-format
 msgid "missing additional %<requires%> to start a requires-expression"
 msgstr ""
 
-#: cp/parser.cc:30892
+#: cp/parser.cc:30911
 #, gcc-internal-format
 msgid ""
 "testing if a concept-id is a valid expression; add %<requires%> to check "
 "satisfaction"
 msgstr ""
 
-#: cp/parser.cc:31030
+#: cp/parser.cc:31049
 #, gcc-internal-format
 msgid "result type is not a plain type-constraint"
 msgstr ""
 
-#: cp/parser.cc:31038
+#: cp/parser.cc:31057
 #, gcc-internal-format
 msgid "return-type-requirement is not a type-constraint"
 msgstr ""
 
-#: cp/parser.cc:31550
+#: cp/parser.cc:31569
 #, gcc-internal-format
 msgid "specializing member %<%T::%E%> requires %<template<>%> syntax"
 msgstr ""
 
-#: cp/parser.cc:31555
+#: cp/parser.cc:31574
 #, gcc-internal-format
 msgid "invalid declaration of %<%T::%E%>"
 msgstr ""
 
-#: cp/parser.cc:31559
+#: cp/parser.cc:31578
 #, gcc-internal-format
 msgid "too few template-parameter-lists"
 msgstr ""
@@ -62710,24 +62798,24 @@ msgstr ""
 #. something like:
 #.
 #. template <class T> template <class U> void S::f();
-#: cp/parser.cc:31566
+#: cp/parser.cc:31585
 #, gcc-internal-format
 msgid "too many template-parameter-lists"
 msgstr ""
 
-#: cp/parser.cc:31959
+#: cp/parser.cc:31978
 #, gcc-internal-format
 msgid "named return values are no longer supported"
 msgstr ""
 
-#: cp/parser.cc:32132
+#: cp/parser.cc:32151
 #, gcc-internal-format
 msgid ""
 "ISO C++ did not adopt string literal operator templates taking an argument "
 "pack of characters"
 msgstr ""
 
-#: cp/parser.cc:32141
+#: cp/parser.cc:32160
 #, gcc-internal-format
 msgid ""
 "literal operator template %qD has invalid parameter list; expected non-type "
@@ -62735,724 +62823,724 @@ msgid ""
 "type"
 msgstr ""
 
-#: cp/parser.cc:32147
+#: cp/parser.cc:32166
 #, gcc-internal-format
 msgid ""
 "literal operator template %qD has invalid parameter list; expected non-type "
 "template parameter pack %<<char...>%>"
 msgstr ""
 
-#: cp/parser.cc:32254
+#: cp/parser.cc:32273
 #, gcc-internal-format
 msgid ""
 "template-introductions are not part of C++20 concepts; use %qs to enable"
 msgstr ""
 
-#: cp/parser.cc:32264
+#: cp/parser.cc:32283
 #, gcc-internal-format
 msgid "no matching concept for template-introduction"
 msgstr ""
 
-#: cp/parser.cc:32287
+#: cp/parser.cc:32306
 #, gcc-internal-format
 msgid "invalid declaration of member template in local class"
 msgstr ""
 
-#: cp/parser.cc:32296
+#: cp/parser.cc:32315
 #, gcc-internal-format
 msgid "template with C linkage"
 msgstr ""
 
-#: cp/parser.cc:32316
+#: cp/parser.cc:32335
 #, gcc-internal-format
 msgid "invalid explicit specialization"
 msgstr ""
 
-#: cp/parser.cc:32428
+#: cp/parser.cc:32447
 #, gcc-internal-format
 msgid "template declaration of %<typedef%>"
 msgstr ""
 
-#: cp/parser.cc:32479
+#: cp/parser.cc:32498
 #, gcc-internal-format
 msgid "a class template declaration must not declare anything else"
 msgstr ""
 
-#: cp/parser.cc:32531
+#: cp/parser.cc:32550
 #, gcc-internal-format
 msgid "explicit template specialization cannot have a storage class"
 msgstr ""
 
-#: cp/parser.cc:32838
+#: cp/parser.cc:32857
 #, gcc-internal-format
 msgid "%<>>%> should be %<> >%> within a nested template argument list"
 msgstr ""
 
-#: cp/parser.cc:32851
+#: cp/parser.cc:32870
 #, gcc-internal-format
 msgid "spurious %<>>%>, use %<>%> to terminate a template argument list"
 msgstr ""
 
-#: cp/parser.cc:32882
+#: cp/parser.cc:32901
 #, gcc-internal-format
 msgid "%qs should be %qs to terminate a template argument list"
 msgstr ""
 
-#: cp/parser.cc:33200
+#: cp/parser.cc:33219
 #, gcc-internal-format
 msgid "%<sizeof...%> argument must be surrounded by parentheses"
 msgstr ""
 
-#: cp/parser.cc:33377
+#: cp/parser.cc:33396
 #, gcc-internal-format
 msgid "invalid use of %qD in linkage specification"
 msgstr ""
 
-#: cp/parser.cc:33388
+#: cp/parser.cc:33407
 #, gcc-internal-format
 msgid "duplicate %qD specifier"
 msgstr ""
 
-#: cp/parser.cc:33391
+#: cp/parser.cc:33410
 #, gcc-internal-format
 msgid "%qD specifier conflicts with %qs"
 msgstr ""
 
-#: cp/parser.cc:33403
+#: cp/parser.cc:33422
 #, gcc-internal-format
 msgid "%<__thread%> before %qD"
 msgstr ""
 
-#: cp/parser.cc:33419
+#: cp/parser.cc:33438
 #, gcc-internal-format
 msgid "%qD specifier conflicts with %<typedef%>"
 msgstr ""
 
-#: cp/parser.cc:33526
+#: cp/parser.cc:33547
 #, gcc-internal-format
 msgid "ISO C++ 1998 does not support %<long long%>"
 msgstr ""
 
-#: cp/parser.cc:33537
+#: cp/parser.cc:33558
 #, gcc-internal-format
 msgid "both %<__thread%> and %<thread_local%> specified"
 msgstr ""
 
-#: cp/parser.cc:33542
+#: cp/parser.cc:33563
 #, gcc-internal-format
 msgid "duplicate %qD"
 msgstr ""
 
-#: cp/parser.cc:33568
+#: cp/parser.cc:33589
 #, gcc-internal-format
 msgid "duplicate %qs"
 msgstr ""
 
-#: cp/parser.cc:33620
+#: cp/parser.cc:33641
 #, gcc-internal-format
 msgid "expected %<new%>"
 msgstr ""
 
-#: cp/parser.cc:33623
+#: cp/parser.cc:33644
 #, gcc-internal-format
 msgid "expected %<delete%>"
 msgstr ""
 
-#: cp/parser.cc:33626
+#: cp/parser.cc:33647
 #, gcc-internal-format
 msgid "expected %<return%>"
 msgstr ""
 
-#: cp/parser.cc:33632
+#: cp/parser.cc:33653
 #, gcc-internal-format
 msgid "expected %<extern%>"
 msgstr ""
 
-#: cp/parser.cc:33635
+#: cp/parser.cc:33656
 #, gcc-internal-format
 msgid "expected %<static_assert%>"
 msgstr ""
 
-#: cp/parser.cc:33638
+#: cp/parser.cc:33659
 #, gcc-internal-format
 msgid "expected %<decltype%>"
 msgstr ""
 
-#: cp/parser.cc:33641
+#: cp/parser.cc:33662
 #, gcc-internal-format
 msgid "expected %<operator%>"
 msgstr ""
 
-#: cp/parser.cc:33644
+#: cp/parser.cc:33665
 #, gcc-internal-format
 msgid "expected %<class%>"
 msgstr ""
 
-#: cp/parser.cc:33647
+#: cp/parser.cc:33668
 #, gcc-internal-format
 msgid "expected %<template%>"
 msgstr ""
 
-#: cp/parser.cc:33650
+#: cp/parser.cc:33671
 #, gcc-internal-format
 msgid "expected %<namespace%>"
 msgstr ""
 
-#: cp/parser.cc:33653
+#: cp/parser.cc:33674
 #, gcc-internal-format
 msgid "expected %<using%>"
 msgstr ""
 
-#: cp/parser.cc:33656
+#: cp/parser.cc:33677
 #, gcc-internal-format
 msgid "expected %<asm%>"
 msgstr ""
 
-#: cp/parser.cc:33659
+#: cp/parser.cc:33680
 #, gcc-internal-format
 msgid "expected %<try%>"
 msgstr ""
 
-#: cp/parser.cc:33662
+#: cp/parser.cc:33683
 #, gcc-internal-format
 msgid "expected %<catch%>"
 msgstr ""
 
-#: cp/parser.cc:33665
+#: cp/parser.cc:33686
 #, gcc-internal-format
 msgid "expected %<throw%>"
 msgstr ""
 
-#: cp/parser.cc:33668
+#: cp/parser.cc:33689
 #, gcc-internal-format
 msgid "expected %<auto%>"
 msgstr ""
 
-#: cp/parser.cc:33671
+#: cp/parser.cc:33692
 #, gcc-internal-format
 msgid "expected %<__label__%>"
 msgstr ""
 
-#: cp/parser.cc:33674
+#: cp/parser.cc:33695
 #, gcc-internal-format
 msgid "expected %<@try%>"
 msgstr ""
 
-#: cp/parser.cc:33677
+#: cp/parser.cc:33698
 #, gcc-internal-format
 msgid "expected %<@synchronized%>"
 msgstr ""
 
-#: cp/parser.cc:33680
+#: cp/parser.cc:33701
 #, gcc-internal-format
 msgid "expected %<@throw%>"
 msgstr ""
 
-#: cp/parser.cc:33683
+#: cp/parser.cc:33704
 #, gcc-internal-format
 msgid "expected %<__transaction_atomic%>"
 msgstr ""
 
-#: cp/parser.cc:33686
+#: cp/parser.cc:33707
 #, gcc-internal-format
 msgid "expected %<__transaction_relaxed%>"
 msgstr ""
 
-#: cp/parser.cc:33689
+#: cp/parser.cc:33710
 #, gcc-internal-format
 msgid "expected %<co_yield%>"
 msgstr ""
 
-#: cp/parser.cc:33721
+#: cp/parser.cc:33742
 #, gcc-internal-format
 msgid "expected %<::%>"
 msgstr ""
 
-#: cp/parser.cc:33733
+#: cp/parser.cc:33754
 #, gcc-internal-format
 msgid "expected %<...%>"
 msgstr ""
 
-#: cp/parser.cc:33736
+#: cp/parser.cc:33757
 #, gcc-internal-format
 msgid "expected %<*%>"
 msgstr ""
 
-#: cp/parser.cc:33739
+#: cp/parser.cc:33760
 #, gcc-internal-format
 msgid "expected %<~%>"
 msgstr ""
 
-#: cp/parser.cc:33745
+#: cp/parser.cc:33766
 #, gcc-internal-format
 msgid "expected %<:%> or %<::%>"
 msgstr ""
 
-#: cp/parser.cc:33772
+#: cp/parser.cc:33793
 #, gcc-internal-format
 msgid "expected %<class%>, %<typename%>, or %<template%>"
 msgstr ""
 
-#: cp/parser.cc:34107
+#: cp/parser.cc:34128
 #, gcc-internal-format
 msgid "redundant enum-key %<enum%s%> in reference to %q#T"
 msgstr ""
 
-#: cp/parser.cc:34258
+#: cp/parser.cc:34279
 #, gcc-internal-format
 msgid "%qs tag used in naming %q#T"
 msgstr ""
 
-#: cp/parser.cc:34263
+#: cp/parser.cc:34284
 #, gcc-internal-format
 msgid "%q#T was previously declared here"
 msgstr ""
 
-#: cp/parser.cc:34384
+#: cp/parser.cc:34405
 #, gcc-internal-format
 msgid "redundant class-key %qs in reference to %q#T"
 msgstr ""
 
-#: cp/parser.cc:34524 cp/parser.cc:34558
+#: cp/parser.cc:34563 cp/parser.cc:34597
 #, gcc-internal-format
 msgid "%qT declared with a mismatched class-key %qs"
 msgstr ""
 
-#: cp/parser.cc:34531 cp/parser.cc:34564
+#: cp/parser.cc:34570 cp/parser.cc:34603
 #, gcc-internal-format
 msgid "remove the class-key or replace it with %qs"
 msgstr ""
 
-#: cp/parser.cc:34532 cp/parser.cc:34565
+#: cp/parser.cc:34571 cp/parser.cc:34604
 #, gcc-internal-format
 msgid "replace the class-key with %qs"
 msgstr ""
 
-#: cp/parser.cc:34539
+#: cp/parser.cc:34578
 #, gcc-internal-format
 msgid "%qT defined as %qs here"
 msgstr ""
 
-#: cp/parser.cc:34540
+#: cp/parser.cc:34579
 #, gcc-internal-format
 msgid "%qT first declared as %qs here"
 msgstr ""
 
-#: cp/parser.cc:34622
+#: cp/parser.cc:34661
 #, gcc-internal-format
 msgid "%qD redeclared with different access"
 msgstr ""
 
-#: cp/parser.cc:34643
+#: cp/parser.cc:34682
 #, gcc-internal-format
 msgid ""
 "in C++98 %<template%> (as a disambiguator) is only allowed within templates"
 msgstr ""
 
-#: cp/parser.cc:34893
+#: cp/parser.cc:34932
 #, gcc-internal-format
 msgid "file ends in default argument"
 msgstr ""
 
-#: cp/parser.cc:35134 cp/parser.cc:36442 cp/parser.cc:36631
+#: cp/parser.cc:35173 cp/parser.cc:36481 cp/parser.cc:36670
 #, gcc-internal-format
 msgid "misplaced %<@%D%> Objective-C++ construct"
 msgstr ""
 
-#: cp/parser.cc:35205
+#: cp/parser.cc:35244
 #, gcc-internal-format
 msgid "objective-c++ message receiver expected"
 msgstr ""
 
-#: cp/parser.cc:35275
+#: cp/parser.cc:35314
 #, gcc-internal-format
 msgid "objective-c++ message argument(s) are expected"
 msgstr ""
 
-#: cp/parser.cc:35306
+#: cp/parser.cc:35345
 #, gcc-internal-format
 msgid "%<@encode%> must specify a type as an argument"
 msgstr ""
 
-#: cp/parser.cc:35710
+#: cp/parser.cc:35749
 #, gcc-internal-format
 msgid "invalid Objective-C++ selector name"
 msgstr ""
 
-#: cp/parser.cc:35785 cp/parser.cc:35803
+#: cp/parser.cc:35824 cp/parser.cc:35842
 #, gcc-internal-format
 msgid "objective-c++ method declaration is expected"
 msgstr ""
 
-#: cp/parser.cc:35797 cp/parser.cc:35863
+#: cp/parser.cc:35836 cp/parser.cc:35902
 #, gcc-internal-format
 msgid "method attributes must be specified at the end"
 msgstr ""
 
-#: cp/parser.cc:35906
+#: cp/parser.cc:35945
 #, gcc-internal-format
 msgid "stray %qs between Objective-C++ methods"
 msgstr ""
 
-#: cp/parser.cc:36103 cp/parser.cc:36110 cp/parser.cc:36117
+#: cp/parser.cc:36142 cp/parser.cc:36149 cp/parser.cc:36156
 #, gcc-internal-format
 msgid "invalid type for instance variable"
 msgstr ""
 
-#: cp/parser.cc:36234
+#: cp/parser.cc:36273
 #, gcc-internal-format
 msgid "identifier expected after %<@protocol%>"
 msgstr ""
 
-#: cp/parser.cc:36407
+#: cp/parser.cc:36446
 #, gcc-internal-format
 msgid ""
 "attributes may not be specified before the %<@%D%> Objective-C++ keyword"
 msgstr ""
 
-#: cp/parser.cc:36414
+#: cp/parser.cc:36453
 #, gcc-internal-format
 msgid "prefix attributes are ignored before %<@%D%>"
 msgstr ""
 
-#: cp/parser.cc:36694 cp/parser.cc:36701 cp/parser.cc:36708
+#: cp/parser.cc:36733 cp/parser.cc:36740 cp/parser.cc:36747
 #, gcc-internal-format
 msgid "invalid type for property"
 msgstr ""
 
-#: cp/parser.cc:36870
+#: cp/parser.cc:36909
 #, gcc-internal-format
 msgid "unknown property attribute %qE"
 msgstr ""
 
-#: cp/parser.cc:37999
+#: cp/parser.cc:38038
 #, gcc-internal-format
 msgid "expected integer expression list"
 msgstr ""
 
-#: cp/parser.cc:38016
+#: cp/parser.cc:38055
 #, gcc-internal-format
 msgid "%<wait%> expression must be integral"
 msgstr ""
 
-#: cp/parser.cc:39105
+#: cp/parser.cc:39144
 #, gcc-internal-format
 msgid "invalid reduction-identifier"
 msgstr ""
 
-#: cp/parser.cc:40074
+#: cp/parser.cc:40113
 #, gcc-internal-format
 msgid "types may not be defined in iterator type"
 msgstr ""
 
-#: cp/parser.cc:42980
+#: cp/parser.cc:43019
 #, gcc-internal-format
 msgid "parenthesized initialization is not allowed in OpenMP %<for%> loop"
 msgstr ""
 
-#: cp/parser.cc:43425
+#: cp/parser.cc:43467
 #, gcc-internal-format
 msgid ""
 "%<[[omp::directive(%s)]]%> must be the only specified attribute on a "
 "statement"
 msgstr ""
 
-#: cp/parser.cc:43670
+#: cp/parser.cc:43712
 #, gcc-internal-format
 msgid "%<ordered%> clause with parameter on range-based %<for%> loop"
 msgstr ""
 
-#: cp/parser.cc:43757 cp/pt.cc:18448
+#: cp/parser.cc:43799 cp/pt.cc:18551
 #, gcc-internal-format
 msgid "iteration variable %qD should not be reduction"
 msgstr ""
 
-#: cp/parser.cc:43850
+#: cp/parser.cc:43892
 #, gcc-internal-format
 msgid "not enough for loops to collapse"
 msgstr ""
 
-#: cp/parser.cc:46217
+#: cp/parser.cc:46259
 #, gcc-internal-format
 msgid "%<#pragma omp declare %s%> followed by %<#pragma omp declare %s%>"
 msgstr ""
 
-#: cp/parser.cc:47052
+#: cp/parser.cc:47094
 #, gcc-internal-format
 msgid ""
 "OpenMP directive other than %<declare simd%> or %<declare variant%> "
 "appertains to a declaration"
 msgstr ""
 
-#: cp/parser.cc:47398 cp/parser.cc:47429
+#: cp/parser.cc:47440 cp/parser.cc:47471
 #, gcc-internal-format
 msgid "%qs in attribute syntax terminated with %qs in pragma syntax"
 msgstr ""
 
-#: cp/parser.cc:47405 cp/parser.cc:47434
+#: cp/parser.cc:47447 cp/parser.cc:47476
 #, gcc-internal-format
 msgid "%qs in pragma syntax terminated with %qs in attribute syntax"
 msgstr ""
 
-#: cp/parser.cc:47546
+#: cp/parser.cc:47588
 #, gcc-internal-format
 msgid "invalid initializer clause"
 msgstr ""
 
-#: cp/parser.cc:47576
+#: cp/parser.cc:47618
 #, gcc-internal-format
 msgid "expected id-expression (arguments)"
 msgstr ""
 
-#: cp/parser.cc:47588
+#: cp/parser.cc:47630
 #, gcc-internal-format
 msgid ""
 "one of the initializer call arguments should be %<omp_priv%> or %<&omp_priv%>"
 msgstr ""
 
-#: cp/parser.cc:47691
+#: cp/parser.cc:47733
 #, gcc-internal-format
 msgid "types may not be defined in declare reduction type list"
 msgstr ""
 
-#: cp/parser.cc:47711 cp/semantics.cc:6120
+#: cp/parser.cc:47753 cp/semantics.cc:6128
 #, gcc-internal-format
 msgid "predeclared arithmetic type %qT in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.cc:47715 cp/semantics.cc:6128
+#: cp/parser.cc:47757 cp/semantics.cc:6136
 #, gcc-internal-format
 msgid "function or array type %qT in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.cc:47718 cp/pt.cc:14373 cp/semantics.cc:6134
+#: cp/parser.cc:47760 cp/pt.cc:14473 cp/semantics.cc:6142
 #, gcc-internal-format
 msgid "reference type %qT in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.cc:47721 cp/semantics.cc:6140
+#: cp/parser.cc:47763 cp/semantics.cc:6148
 #, gcc-internal-format
 msgid ""
 "%<const%>, %<volatile%> or %<__restrict%>-qualified type %qT in %<#pragma "
 "omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.cc:48435
+#: cp/parser.cc:48477
 #, gcc-internal-format
 msgid "%<#pragma acc routine%> names a set of overloads"
 msgstr ""
 
-#: cp/parser.cc:48445
+#: cp/parser.cc:48487
 #, gcc-internal-format
 msgid "%qD does not refer to a namespace scope function"
 msgstr ""
 
 #. cancel-and-throw is unimplemented.
-#: cp/parser.cc:48806
+#: cp/parser.cc:48848
 #, gcc-internal-format
 msgid "%<atomic_cancel%>"
 msgstr ""
 
-#: cp/parser.cc:48853 cp/semantics.cc:11147
+#: cp/parser.cc:48895 cp/semantics.cc:11155
 #, gcc-internal-format
 msgid "%<__transaction_relaxed%> without transactional memory support enabled"
 msgstr ""
 
-#: cp/parser.cc:48855 cp/semantics.cc:11149
+#: cp/parser.cc:48897 cp/semantics.cc:11157
 #, gcc-internal-format
 msgid "%<__transaction_atomic%> without transactional memory support enabled"
 msgstr ""
 
-#: cp/parser.cc:49001
+#: cp/parser.cc:49043
 #, gcc-internal-format
 msgid ""
 "outer %<__transaction_cancel%> not within outer %<__transaction_atomic%>"
 msgstr ""
 
-#: cp/parser.cc:49004
+#: cp/parser.cc:49046
 #, gcc-internal-format
 msgid "  or a %<transaction_may_cancel_outer%> function"
 msgstr ""
 
-#: cp/parser.cc:49051
+#: cp/parser.cc:49093
 #, gcc-internal-format
 msgid "malformed %<#pragma GCC pch_preprocess%>"
 msgstr ""
 
-#: cp/parser.cc:49349
+#: cp/parser.cc:49391
 #, gcc-internal-format
 msgid "%<#pragma omp requires%> may only be used at file or namespace scope"
 msgstr ""
 
-#: cp/parser.cc:49360
+#: cp/parser.cc:49402
 #, gcc-internal-format
 msgid "%<#pragma omp assumes%> may only be used at file or namespace scope"
 msgstr ""
 
-#: cp/parser.cc:49415
+#: cp/parser.cc:49457
 #, gcc-internal-format
 msgid "%<#pragma GCC ivdep%> must be inside a function"
 msgstr ""
 
-#: cp/parser.cc:49447
+#: cp/parser.cc:49489
 #, gcc-internal-format
 msgid "%<#pragma GCC unroll%> must be inside a function"
 msgstr ""
 
-#: cp/parser.cc:49528
+#: cp/parser.cc:49570
 #, gcc-internal-format
 msgid "multi-source compilation not implemented for C++"
 msgstr ""
 
-#: cp/parser.cc:49565
+#: cp/parser.cc:49607
 #, gcc-internal-format
 msgid "placeholder type not allowed in this context"
 msgstr ""
 
-#: cp/parser.cc:49774
+#: cp/parser.cc:49816
 #, gcc-internal-format
 msgid "implicit templates may not be %<virtual%>"
 msgstr ""
 
-#: cp/parser.cc:49830
+#: cp/parser.cc:49872
 #, gcc-internal-format
 msgid "%<extern \"C\"%> linkage started here"
 msgstr ""
 
-#: cp/pt.cc:306
+#: cp/pt.cc:308
 #, gcc-internal-format
 msgid "data member %qD cannot be a member template"
 msgstr ""
 
-#: cp/pt.cc:319
+#: cp/pt.cc:321
 #, gcc-internal-format
 msgid "invalid member template declaration %qD"
 msgstr ""
 
-#: cp/pt.cc:745
+#: cp/pt.cc:749
 #, gcc-internal-format
 msgid "explicit specialization in non-namespace scope %qD"
 msgstr ""
 
-#: cp/pt.cc:759
+#: cp/pt.cc:763
 #, gcc-internal-format
 msgid "enclosing class templates are not explicitly specialized"
 msgstr ""
 
-#: cp/pt.cc:843
+#: cp/pt.cc:847
 #, gcc-internal-format
 msgid "specialization of %qD must appear at namespace scope"
 msgstr ""
 
-#: cp/pt.cc:854 cp/pt.cc:1095
+#: cp/pt.cc:858 cp/pt.cc:1099
 #, gcc-internal-format
 msgid "specialization of %qD in different namespace"
 msgstr ""
 
-#: cp/pt.cc:856
+#: cp/pt.cc:860
 #, gcc-internal-format
 msgid "  from definition of %q#D"
 msgstr ""
 
-#: cp/pt.cc:873
+#: cp/pt.cc:877
 #, gcc-internal-format
 msgid ""
 "explicit instantiation of %qD in namespace %qD (which does not enclose "
 "namespace %qD)"
 msgstr ""
 
-#: cp/pt.cc:1007
+#: cp/pt.cc:1011
 #, gcc-internal-format
 msgid "name of class shadows template template parameter %qD"
 msgstr ""
 
-#: cp/pt.cc:1019
+#: cp/pt.cc:1023
 #, gcc-internal-format
 msgid "specialization of alias template %qD"
 msgstr ""
 
-#: cp/pt.cc:1022 cp/pt.cc:1161
+#: cp/pt.cc:1026 cp/pt.cc:1165
 #, gcc-internal-format
 msgid "explicit specialization of non-template %qT"
 msgstr ""
 
-#: cp/pt.cc:1054
+#: cp/pt.cc:1058
 #, gcc-internal-format
 msgid "specialization of %qT after instantiation"
 msgstr ""
 
-#: cp/pt.cc:1098
+#: cp/pt.cc:1102
 #, 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:1139
+#: cp/pt.cc:1143
 #, gcc-internal-format
 msgid "specialization %qT after instantiation %qT"
 msgstr ""
 
-#: cp/pt.cc:1157
+#: cp/pt.cc:1161
 #, gcc-internal-format
 msgid "template specialization of %qD not allowed by ISO C++"
 msgstr ""
 
-#: cp/pt.cc:1548
+#: cp/pt.cc:1552
 #, gcc-internal-format
 msgid "specialization of %qD after instantiation"
 msgstr ""
 
-#: cp/pt.cc:2021 cp/semantics.cc:5990
+#: cp/pt.cc:2025 cp/semantics.cc:5998
 #, gcc-internal-format
 msgid "%s %#qD"
 msgstr ""
 
-#: cp/pt.cc:2157
+#: cp/pt.cc:2161
 #, gcc-internal-format
 msgid "%qD is not a function template"
 msgstr ""
 
-#: cp/pt.cc:2162
+#: cp/pt.cc:2166
 #, gcc-internal-format
 msgid "%qD is not a variable template"
 msgstr ""
 
-#: cp/pt.cc:2445
+#: cp/pt.cc:2449
 #, gcc-internal-format
 msgid "template-id %qD for %q+D does not match any template declaration"
 msgstr ""
 
-#: cp/pt.cc:2449
+#: cp/pt.cc:2453
 #, gcc-internal-format
 msgid ""
 "saw %d %<template<>%>, need %d for specializing a member function template"
 msgstr ""
 
-#: cp/pt.cc:2459
+#: cp/pt.cc:2463
 #, gcc-internal-format
 msgid "ambiguous template specialization %qD for %q+D"
 msgstr ""
 
-#: cp/pt.cc:2663
+#: cp/pt.cc:2667
 #, gcc-internal-format
 msgid ""
 "variable templates only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/pt.cc:2673
+#: cp/pt.cc:2677
 #, gcc-internal-format
 msgid "too many template headers for %qD (should be %d)"
 msgstr ""
 
-#: cp/pt.cc:2679
+#: cp/pt.cc:2683
 #, gcc-internal-format
 msgid ""
 "members of an explicitly specialized class are defined without a template "
 "header"
 msgstr ""
 
-#: cp/pt.cc:2703
+#: cp/pt.cc:2707
 #, gcc-internal-format
 msgid ""
 "explicit specialization of %qD outside its namespace must use a nested-name-"
@@ -63460,79 +63548,79 @@ msgid ""
 msgstr ""
 
 #. This was allowed in C++98, so only pedwarn.
-#: cp/pt.cc:2708
+#: cp/pt.cc:2712
 #, gcc-internal-format
 msgid ""
 "explicit instantiation of %qD outside its namespace must use a nested-name-"
 "specifier"
 msgstr ""
 
-#: cp/pt.cc:2744
+#: cp/pt.cc:2748
 #, gcc-internal-format
 msgid "explicit specialization %q#D may be missing attributes"
 msgstr ""
 
-#: cp/pt.cc:2748
+#: cp/pt.cc:2752
 #, gcc-internal-format, gfc-internal-format
 msgid "missing primary template attributes %s"
 msgstr ""
 
-#: cp/pt.cc:2749
+#: cp/pt.cc:2753
 #, gcc-internal-format, gfc-internal-format
 msgid "missing primary template attribute %s"
 msgstr ""
 
-#: cp/pt.cc:2841 cp/pt.cc:2901
+#: cp/pt.cc:2845 cp/pt.cc:2905
 #, gcc-internal-format
 msgid "template-id %qE in declaration of primary template"
 msgstr ""
 
-#: cp/pt.cc:2854
+#: cp/pt.cc:2858
 #, gcc-internal-format
 msgid "template parameter list used in explicit instantiation"
 msgstr ""
 
-#: cp/pt.cc:2860
+#: cp/pt.cc:2864
 #, gcc-internal-format
 msgid "definition provided for explicit instantiation"
 msgstr ""
 
-#: cp/pt.cc:2868
+#: cp/pt.cc:2872
 #, gcc-internal-format
 msgid "too many template parameter lists in declaration of %qD"
 msgstr ""
 
-#: cp/pt.cc:2871
+#: cp/pt.cc:2875
 #, gcc-internal-format
 msgid "too few template parameter lists in declaration of %qD"
 msgstr ""
 
-#: cp/pt.cc:2873
+#: cp/pt.cc:2877
 #, gcc-internal-format
 msgid "explicit specialization of %qD must be introduced by %<template <>%>"
 msgstr ""
 
-#: cp/pt.cc:2879
+#: cp/pt.cc:2883
 #, gcc-internal-format
 msgid "explicit specialization declared %<concept%>"
 msgstr ""
 
-#: cp/pt.cc:2912
+#: cp/pt.cc:2916
 #, gcc-internal-format
 msgid "non-type partial specialization %qE is not allowed"
 msgstr ""
 
-#: cp/pt.cc:2916
+#: cp/pt.cc:2920
 #, gcc-internal-format
 msgid "non-class, non-variable partial specialization %qE is not allowed"
 msgstr ""
 
-#: cp/pt.cc:2948
+#: cp/pt.cc:2952
 #, gcc-internal-format
 msgid "default argument specified in explicit specialization"
 msgstr ""
 
-#: cp/pt.cc:2991
+#: cp/pt.cc:2995
 #, gcc-internal-format
 msgid "%qD is not a template function"
 msgstr ""
@@ -63545,99 +63633,99 @@ msgstr ""
 #. program is ill-formed.
 #.
 #. Similar language is found in [temp.explicit].
-#: cp/pt.cc:3053
+#: cp/pt.cc:3057
 #, gcc-internal-format
 msgid "specialization of implicitly-declared special member function"
 msgstr ""
 
-#: cp/pt.cc:3069
+#: cp/pt.cc:3073
 #, gcc-internal-format
 msgid "no member function %qD declared in %qT"
 msgstr ""
 
-#: cp/pt.cc:3100
+#: cp/pt.cc:3104
 #, gcc-internal-format
 msgid "friend declaration %qD is not visible to explicit specialization"
 msgstr ""
 
-#: cp/pt.cc:3103
+#: cp/pt.cc:3107
 #, gcc-internal-format
 msgid "friend declaration here"
 msgstr ""
 
-#: cp/pt.cc:3214
+#: cp/pt.cc:3218
 #, gcc-internal-format
 msgid "explicit specialization of function concept %qD"
 msgstr ""
 
-#: cp/pt.cc:3815
+#: cp/pt.cc:3819
 #, gcc-internal-format
 msgid "argument to %<__integer_pack%> must be between 0 and %d"
 msgstr ""
 
-#: cp/pt.cc:4162
+#: cp/pt.cc:4170
 #, gcc-internal-format
 msgid "base initializer expansion %qT contains no parameter packs"
 msgstr ""
 
-#: cp/pt.cc:4230
+#: cp/pt.cc:4238
 #, gcc-internal-format
 msgid "expansion pattern %qT contains no parameter packs"
 msgstr ""
 
-#: cp/pt.cc:4232
+#: cp/pt.cc:4240
 #, gcc-internal-format
 msgid "expansion pattern %qE contains no parameter packs"
 msgstr ""
 
-#: cp/pt.cc:4316
+#: cp/pt.cc:4324
 #, gcc-internal-format
 msgid "parameter packs not expanded with %<...%>:"
 msgstr ""
 
-#: cp/pt.cc:4333 cp/pt.cc:5203
+#: cp/pt.cc:4341 cp/pt.cc:5211
 #, gcc-internal-format
 msgid "        %qD"
 msgstr ""
 
-#: cp/pt.cc:4335
+#: cp/pt.cc:4343
 #, gcc-internal-format, gfc-internal-format
 msgid "        %s"
 msgstr ""
 
-#: cp/pt.cc:4461
+#: cp/pt.cc:4469
 #, gcc-internal-format
 msgid "declaration of template parameter %q+D shadows template parameter"
 msgstr ""
 
-#: cp/pt.cc:4464
+#: cp/pt.cc:4472
 #, gcc-internal-format
 msgid "declaration of %q+#D shadows template parameter"
 msgstr ""
 
-#: cp/pt.cc:4466
+#: cp/pt.cc:4474
 #, gcc-internal-format
 msgid "template parameter %qD declared here"
 msgstr ""
 
-#: cp/pt.cc:5139
+#: cp/pt.cc:5147
 #, gcc-internal-format
 msgid "specialization of variable concept %q#D"
 msgstr ""
 
-#: cp/pt.cc:5198
+#: cp/pt.cc:5206
 #, gcc-internal-format
 msgid "template parameters not deducible in partial specialization:"
 msgstr ""
 
-#: cp/pt.cc:5221
+#: cp/pt.cc:5229
 #, 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:5225
+#: cp/pt.cc:5233
 #, gcc-internal-format
 msgid ""
 "partial specialization %q+D does not specialize any template arguments and "
@@ -63645,63 +63733,63 @@ msgid ""
 "template, remove the template argument list"
 msgstr ""
 
-#: cp/pt.cc:5229 cp/pt.cc:5240 cp/pt.cc:5248
+#: cp/pt.cc:5237 cp/pt.cc:5248 cp/pt.cc:5256
 #, gcc-internal-format
 msgid "primary template here"
 msgstr ""
 
-#: cp/pt.cc:5237
+#: cp/pt.cc:5245
 #, 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:5247
+#: cp/pt.cc:5255
 #, gcc-internal-format
 msgid "too many arguments for partial specialization %qT"
 msgstr ""
 
-#: cp/pt.cc:5262
+#: cp/pt.cc:5270
 #, gcc-internal-format
 msgid "partial specialization %qD is not more specialized than"
 msgstr ""
 
-#: cp/pt.cc:5264
+#: cp/pt.cc:5272
 #, gcc-internal-format
 msgid "primary template %qD"
 msgstr ""
 
-#: cp/pt.cc:5306
+#: cp/pt.cc:5314
 #, gcc-internal-format
 msgid ""
 "parameter pack argument %qE must be at the end of the template argument list"
 msgstr ""
 
-#: cp/pt.cc:5309
+#: cp/pt.cc:5317
 #, gcc-internal-format
 msgid ""
 "parameter pack argument %qT must be at the end of the template argument list"
 msgstr ""
 
-#: cp/pt.cc:5371
+#: cp/pt.cc:5379
 #, 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:5430
+#: cp/pt.cc:5438
 #, gcc-internal-format
 msgid "declaration of %qD ambiguates earlier template instantiation for %qD"
 msgstr ""
 
-#: cp/pt.cc:5434
+#: cp/pt.cc:5442
 #, gcc-internal-format
 msgid "partial specialization of %qD after instantiation of %qD"
 msgstr ""
 
-#: cp/pt.cc:5617
+#: cp/pt.cc:5625
 #, gcc-internal-format
 msgid "no default argument for %qD"
 msgstr ""
@@ -63710,52 +63798,52 @@ msgstr ""
 #. (DR 2032), or alias template can only have one
 #. parameter pack, at the end of the template
 #. parameter list.
-#: cp/pt.cc:5640
+#: cp/pt.cc:5648
 #, gcc-internal-format
 msgid "parameter pack %q+D must be at the end of the template parameter list"
 msgstr ""
 
-#: cp/pt.cc:5676
+#: cp/pt.cc:5684
 #, gcc-internal-format
 msgid ""
 "default template arguments may not be used in function template friend re-"
 "declaration"
 msgstr ""
 
-#: cp/pt.cc:5679
+#: cp/pt.cc:5687
 #, gcc-internal-format
 msgid ""
 "default template arguments may not be used in template friend declarations"
 msgstr ""
 
-#: cp/pt.cc:5682
+#: cp/pt.cc:5690
 #, 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:5685
+#: cp/pt.cc:5693
 #, gcc-internal-format
 msgid "default template arguments may not be used in partial specializations"
 msgstr ""
 
-#: cp/pt.cc:5688 cp/pt.cc:5746
+#: cp/pt.cc:5696 cp/pt.cc:5754
 #, gcc-internal-format
 msgid "default argument for template parameter for class enclosing %qD"
 msgstr ""
 
-#: cp/pt.cc:5857
+#: cp/pt.cc:5865
 #, gcc-internal-format
 msgid "template %qD declared"
 msgstr ""
 
-#: cp/pt.cc:5865
+#: cp/pt.cc:5873
 #, gcc-internal-format
 msgid "template class without a name"
 msgstr ""
 
-#: cp/pt.cc:5873
+#: cp/pt.cc:5881
 #, gcc-internal-format
 msgid "member template %qD may not have virt-specifiers"
 msgstr ""
@@ -63765,518 +63853,523 @@ msgstr ""
 #. An allocation function can be a function
 #. template. ... Template allocation functions shall
 #. have two or more parameters.
-#: cp/pt.cc:5896
+#: cp/pt.cc:5904
 #, gcc-internal-format
 msgid "invalid template declaration of %qD"
 msgstr ""
 
-#: cp/pt.cc:6048
+#: cp/pt.cc:6056
 #, gcc-internal-format
 msgid "template definition of non-template %q#D"
 msgstr ""
 
-#: cp/pt.cc:6087
+#: cp/pt.cc:6095
 #, gcc-internal-format
 msgid "expected %d levels of template parms for %q#D, got %d"
 msgstr ""
 
-#: cp/pt.cc:6101
+#: cp/pt.cc:6109
 #, gcc-internal-format
 msgid "got %d template parameters for %q#D"
 msgstr ""
 
-#: cp/pt.cc:6104
+#: cp/pt.cc:6112
 #, gcc-internal-format
 msgid "got %d template parameters for %q#T"
 msgstr ""
 
-#: cp/pt.cc:6106
+#: cp/pt.cc:6114
 #, gcc-internal-format, gfc-internal-format
 msgid "  but %d required"
 msgstr ""
 
-#: cp/pt.cc:6127
+#: cp/pt.cc:6135
 #, gcc-internal-format
 msgid "template arguments to %qD do not match original template %qD"
 msgstr ""
 
-#: cp/pt.cc:6130
+#: cp/pt.cc:6138
 #, gcc-internal-format
 msgid "use %<template<>%> for an explicit specialization"
 msgstr ""
 
-#: cp/pt.cc:6275
+#: cp/pt.cc:6160
+#, gcc-internal-format
+msgid "redeclaration of %qD with different constraints"
+msgstr ""
+
+#: cp/pt.cc:6307
 #, gcc-internal-format
 msgid "%qT is not a template type"
 msgstr ""
 
-#: cp/pt.cc:6288
+#: cp/pt.cc:6320
 #, gcc-internal-format
 msgid "template specifiers not specified in declaration of %qD"
 msgstr ""
 
-#: cp/pt.cc:6299
+#: cp/pt.cc:6331
 #, 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:6303
+#: cp/pt.cc:6335
 #, 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:6337
+#: cp/pt.cc:6369
 #, gcc-internal-format
 msgid "template parameter %q+#D"
 msgstr ""
 
-#: cp/pt.cc:6339
+#: cp/pt.cc:6371
 #, gcc-internal-format
 msgid "redeclared here as %q#D"
 msgstr ""
 
-#: cp/pt.cc:6341
+#: cp/pt.cc:6373
 #, gcc-internal-format
 msgid "redeclared here"
 msgstr ""
 
-#: cp/pt.cc:6352
+#: cp/pt.cc:6384
 #, gcc-internal-format
 msgid "declaration of template parameter %q+#D with different constraints"
 msgstr ""
 
-#: cp/pt.cc:6355 cp/pt.cc:6382
+#: cp/pt.cc:6387 cp/pt.cc:6414
 #, gcc-internal-format
 msgid "original declaration appeared here"
 msgstr ""
 
-#: cp/pt.cc:6379
+#: cp/pt.cc:6411
 #, gcc-internal-format
-msgid "redeclaration %q#D with different constraints"
+msgid "redeclaration of %q#D with different constraints"
 msgstr ""
 
-#: cp/pt.cc:6738 cp/pt.cc:6807
+#: cp/pt.cc:6770 cp/pt.cc:6839
 #, gcc-internal-format
 msgid "%qE is not a valid template argument for type %qT"
 msgstr ""
 
-#: cp/pt.cc:6741
+#: cp/pt.cc:6773
 #, gcc-internal-format
 msgid "it must be the address of a function with external linkage"
 msgstr ""
 
-#: cp/pt.cc:6744
+#: cp/pt.cc:6776
 #, gcc-internal-format
 msgid "it must be the name of a function with external linkage"
 msgstr ""
 
-#: cp/pt.cc:6757
+#: cp/pt.cc:6789
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because %qD has no linkage"
 msgstr ""
 
-#: cp/pt.cc:6761
+#: cp/pt.cc:6793
 #, 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:6810
+#: cp/pt.cc:6842
 #, gcc-internal-format
 msgid "it must be a pointer-to-member of the form %<&X::Y%>"
 msgstr ""
 
-#: cp/pt.cc:6812
+#: cp/pt.cc:6844
 #, gcc-internal-format
 msgid "because it is a member of %qT"
 msgstr ""
 
-#: cp/pt.cc:6881
+#: cp/pt.cc:6913
 #, gcc-internal-format
 msgid "  couldn%'t deduce template parameter %qD"
 msgstr ""
 
-#: cp/pt.cc:6890
+#: cp/pt.cc:6922
 #, gcc-internal-format
 msgid "  types %qT and %qT have incompatible cv-qualifiers"
 msgstr ""
 
-#: cp/pt.cc:6899
+#: cp/pt.cc:6931
 #, gcc-internal-format
 msgid "  mismatched types %qT and %qT"
 msgstr ""
 
-#: cp/pt.cc:6908
+#: cp/pt.cc:6940
 #, gcc-internal-format
 msgid "  template parameter %qD is not a parameter pack, but argument %qD is"
 msgstr ""
 
-#: cp/pt.cc:6919
+#: cp/pt.cc:6951
 #, gcc-internal-format
 msgid "  template argument %qE does not match pointer-to-member constant %qE"
 msgstr ""
 
-#: cp/pt.cc:6929
+#: cp/pt.cc:6961
 #, gcc-internal-format
 msgid "  %qE is not equivalent to %qE"
 msgstr ""
 
-#: cp/pt.cc:6938
+#: cp/pt.cc:6970
 #, gcc-internal-format
 msgid "  inconsistent parameter pack deduction with %qT and %qT"
 msgstr ""
 
-#: cp/pt.cc:6950
+#: cp/pt.cc:6982
 #, gcc-internal-format
 msgid "  deduced conflicting types for parameter %qT (%qT and %qT)"
 msgstr ""
 
-#: cp/pt.cc:6954
+#: cp/pt.cc:6986
 #, gcc-internal-format
 msgid "  deduced conflicting values for non-type parameter %qE (%qE and %qE)"
 msgstr ""
 
-#: cp/pt.cc:6965
+#: cp/pt.cc:6997
 #, gcc-internal-format
 msgid "  variable-sized array type %qT is not a valid template argument"
 msgstr ""
 
-#: cp/pt.cc:6976
+#: cp/pt.cc:7008
 #, gcc-internal-format
 msgid "  member function type %qT is not a valid template argument"
 msgstr ""
 
-#: cp/pt.cc:7019
+#: cp/pt.cc:7051
 #, gcc-internal-format
 msgid "  cannot convert %qE (type %qT) to type %qT"
 msgstr ""
 
-#: cp/pt.cc:7032
+#: cp/pt.cc:7064
 #, gcc-internal-format
 msgid "  %qT is an ambiguous base class of %qT"
 msgstr ""
 
-#: cp/pt.cc:7036
+#: cp/pt.cc:7068
 #, gcc-internal-format
 msgid "  %qT is not derived from %qT"
 msgstr ""
 
-#: cp/pt.cc:7047
+#: cp/pt.cc:7079
 #, gcc-internal-format
 msgid ""
 "  template parameters of a template template argument are inconsistent with "
 "other deduced template arguments"
 msgstr ""
 
-#: cp/pt.cc:7057
+#: cp/pt.cc:7089
 #, gcc-internal-format
 msgid "  cannot deduce a template for %qT from non-template type %qT"
 msgstr ""
 
-#: cp/pt.cc:7067
+#: cp/pt.cc:7099
 #, gcc-internal-format
 msgid "  template argument %qE does not match %qE"
 msgstr ""
 
-#: cp/pt.cc:7118
+#: cp/pt.cc:7150
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument of type %qT because %qE is not a "
-"variable"
+"variable or function"
 msgstr ""
 
-#: cp/pt.cc:7126
+#: cp/pt.cc:7159
 #, 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:7136
+#: cp/pt.cc:7169
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument of type %qT because %qD has no linkage"
 msgstr ""
 
-#: cp/pt.cc:7151
+#: cp/pt.cc:7184
 #, gcc-internal-format
 msgid "the address of %qD is not a valid template argument"
 msgstr ""
 
-#: cp/pt.cc:7161
+#: cp/pt.cc:7194
 #, gcc-internal-format
 msgid ""
 "the address of the %qT subobject of %qD is not a valid template argument"
 msgstr ""
 
-#: cp/pt.cc:7168
+#: cp/pt.cc:7201
 #, 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:7186
+#: cp/pt.cc:7219
 #, 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:7194
+#: cp/pt.cc:7227
 #, 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:7315
+#: cp/pt.cc:7348
 #, 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:7482
+#: cp/pt.cc:7513
 #, gcc-internal-format
 msgid "in template argument for type %qT"
 msgstr ""
 
-#: cp/pt.cc:7496
+#: cp/pt.cc:7527
 #, gcc-internal-format
 msgid "template argument %qE for type %qT not a compile-time constant"
 msgstr ""
 
-#: cp/pt.cc:7582
+#: cp/pt.cc:7613
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because of conflicts in cv-"
 "qualification"
 msgstr ""
 
-#: cp/pt.cc:7590
+#: cp/pt.cc:7621
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because it is not an lvalue"
 msgstr ""
 
-#: cp/pt.cc:7608
+#: cp/pt.cc:7639
 #, 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:7667
+#: cp/pt.cc:7698
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because it is a pointer"
 msgstr ""
 
-#: cp/pt.cc:7669
+#: cp/pt.cc:7700
 #, gcc-internal-format
 msgid "try using %qE instead"
 msgstr ""
 
-#: cp/pt.cc:7723
+#: cp/pt.cc:7754
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because it is of type %qT"
 msgstr ""
 
-#: cp/pt.cc:8287
+#: cp/pt.cc:8312
 #, gcc-internal-format
 msgid "ignoring attributes on template argument %qT"
 msgstr ""
 
-#: cp/pt.cc:8303
+#: cp/pt.cc:8328
 #, gcc-internal-format
 msgid "ignoring attributes in template argument %qE"
 msgstr ""
 
-#: cp/pt.cc:8439
+#: cp/pt.cc:8464
 #, gcc-internal-format
 msgid "injected-class-name %qD used as template template argument"
 msgstr ""
 
-#: cp/pt.cc:8468
+#: cp/pt.cc:8493
 #, gcc-internal-format
 msgid "invalid use of destructor %qE as a type"
 msgstr ""
 
-#: cp/pt.cc:8473
+#: cp/pt.cc:8498
 #, gcc-internal-format
 msgid "to refer to a type member of a template parameter, use %<typename %E%>"
 msgstr ""
 
-#: cp/pt.cc:8489 cp/pt.cc:8523 cp/pt.cc:8577
+#: cp/pt.cc:8514 cp/pt.cc:8548 cp/pt.cc:8598
 #, gcc-internal-format
 msgid "type/value mismatch at argument %d in template parameter list for %qD"
 msgstr ""
 
-#: cp/pt.cc:8497
+#: cp/pt.cc:8522
 #, gcc-internal-format
 msgid "  expected a constant of type %qT, got %qT"
 msgstr ""
 
-#: cp/pt.cc:8505
+#: cp/pt.cc:8530
 #, gcc-internal-format
 msgid ""
 "  ambiguous template argument for non-type template parameter is treated as "
 "function type"
 msgstr ""
 
-#: cp/pt.cc:8511
+#: cp/pt.cc:8536
 #, gcc-internal-format
 msgid "  expected a class template, got %qE"
 msgstr ""
 
-#: cp/pt.cc:8514
+#: cp/pt.cc:8539
 #, gcc-internal-format
 msgid "  expected a type, got %qE"
 msgstr ""
 
-#: cp/pt.cc:8528
+#: cp/pt.cc:8553
 #, gcc-internal-format
 msgid "  expected a type, got %qT"
 msgstr ""
 
-#: cp/pt.cc:8531
+#: cp/pt.cc:8556
 #, gcc-internal-format
 msgid "  expected a class template, got %qT"
 msgstr ""
 
-#: cp/pt.cc:8581
+#: cp/pt.cc:8602
 #, gcc-internal-format
 msgid "  expected a template of type %qD, got %qT"
 msgstr ""
 
-#: cp/pt.cc:8595
+#: cp/pt.cc:8616
 #, gcc-internal-format
 msgid "constraint mismatch at argument %d in template parameter list for %qD"
 msgstr ""
 
-#: cp/pt.cc:8598
+#: cp/pt.cc:8619
 #, gcc-internal-format
 msgid "  expected %qD but got %qD"
 msgstr ""
 
-#: cp/pt.cc:8671
+#: cp/pt.cc:8692
 #, gcc-internal-format
 msgid "could not convert template argument %qE from %qT to %qT"
 msgstr ""
 
-#: cp/pt.cc:8809 cp/pt.cc:9135
+#: cp/pt.cc:8830 cp/pt.cc:9156
 #, gcc-internal-format, gfc-internal-format
 msgid "template argument %d is invalid"
 msgstr ""
 
-#: cp/pt.cc:8824 cp/pt.cc:8969
+#: cp/pt.cc:8845 cp/pt.cc:8990
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong number of template arguments (%d, should be %d)"
 msgstr ""
 
-#: cp/pt.cc:8965
+#: cp/pt.cc:8986
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong number of template arguments (%d, should be at least %d)"
 msgstr ""
 
-#: cp/pt.cc:8974
+#: cp/pt.cc:8995
 #, gcc-internal-format
 msgid "provided for %qD"
 msgstr ""
 
-#: cp/pt.cc:8999
+#: cp/pt.cc:9020
 #, gcc-internal-format
 msgid ""
 "pack expansion argument for non-pack parameter %qD of alias template %qD"
 msgstr ""
 
-#: cp/pt.cc:9003
+#: cp/pt.cc:9024
 #, gcc-internal-format
 msgid "pack expansion argument for non-pack parameter %qD of concept %qD"
 msgstr ""
 
-#: cp/pt.cc:9101
+#: cp/pt.cc:9122
 #, gcc-internal-format
 msgid ""
 "so any instantiation with a non-empty parameter pack would be ill-formed"
 msgstr ""
 
-#: cp/pt.cc:9664
+#: cp/pt.cc:9685
 #, gcc-internal-format
 msgid "%q#D is not a function template"
 msgstr ""
 
-#: cp/pt.cc:9827
+#: cp/pt.cc:9848
 #, gcc-internal-format
 msgid "non-template type %qT used as a template"
 msgstr ""
 
-#: cp/pt.cc:9829
+#: cp/pt.cc:9850
 #, gcc-internal-format
 msgid "for template declaration %q+D"
 msgstr ""
 
-#: cp/pt.cc:9962 cp/pt.cc:22022
+#: cp/pt.cc:9983 cp/pt.cc:22180
 #, gcc-internal-format
 msgid "template constraint failure for %qD"
 msgstr ""
 
-#: cp/pt.cc:10340
+#: cp/pt.cc:10368
 #, gcc-internal-format
 msgid "use of invalid variable template %qE"
 msgstr ""
 
-#: cp/pt.cc:11013
+#: cp/pt.cc:11103
 #, gcc-internal-format
 msgid ""
 "template instantiation depth exceeds maximum of %d (use %<-ftemplate-"
 "depth=%> to increase the maximum)"
 msgstr ""
 
-#: cp/pt.cc:12339
+#: cp/pt.cc:12436
 #, gcc-internal-format
 msgid "flexible array member %qD in union"
 msgstr ""
 
-#: cp/pt.cc:12829
+#: cp/pt.cc:12926
 #, gcc-internal-format
 msgid "fold of empty expansion over %O"
 msgstr ""
 
-#: cp/pt.cc:13275
+#: cp/pt.cc:13380
 #, gcc-internal-format
 msgid "%qE is not the entire pattern of the pack expansion"
 msgstr ""
 
-#: cp/pt.cc:13363
+#: cp/pt.cc:13468
 #, gcc-internal-format
 msgid "mismatched argument pack lengths while expanding %qT"
 msgstr ""
 
-#: cp/pt.cc:13366
+#: cp/pt.cc:13471
 #, gcc-internal-format
 msgid "mismatched argument pack lengths while expanding %qE"
 msgstr ""
 
-#: cp/pt.cc:14050
+#: cp/pt.cc:14150
 #, gcc-internal-format
 msgid "  when instantiating default argument for call to %qD"
 msgstr ""
 
-#: cp/pt.cc:14146
+#: cp/pt.cc:14246
 #, gcc-internal-format
 msgid "creating pointer to member function of non-class type %qT"
 msgstr ""
 
-#: cp/pt.cc:15038
+#: cp/pt.cc:15140
 #, gcc-internal-format, gfc-internal-format
 msgid "mismatched argument pack lengths (%d vs %d)"
 msgstr ""
@@ -64294,305 +64387,305 @@ msgstr ""
 #.
 #. is an attempt to declare a variable with function
 #. type.
-#: cp/pt.cc:15231
+#: cp/pt.cc:15333
 #, gcc-internal-format
 msgid "variable %qD has function type"
 msgstr ""
 
-#: cp/pt.cc:15430
+#: cp/pt.cc:15532
 #, gcc-internal-format
 msgid "invalid parameter type %qT"
 msgstr ""
 
-#: cp/pt.cc:15432
+#: cp/pt.cc:15534
 #, gcc-internal-format
 msgid "in declaration %q+D"
 msgstr ""
 
-#: cp/pt.cc:15559
+#: cp/pt.cc:15661
 #, gcc-internal-format
 msgid "function returning an array"
 msgstr ""
 
-#: cp/pt.cc:15561
+#: cp/pt.cc:15663
 #, gcc-internal-format
 msgid "function returning a function"
 msgstr ""
 
-#: cp/pt.cc:16257
+#: cp/pt.cc:16362
 #, gcc-internal-format
 msgid "forming reference to void"
 msgstr ""
 
-#: cp/pt.cc:16259
+#: cp/pt.cc:16364
 #, gcc-internal-format
 msgid "forming pointer to reference type %qT"
 msgstr ""
 
-#: cp/pt.cc:16261
+#: cp/pt.cc:16366
 #, gcc-internal-format
 msgid "forming reference to reference type %qT"
 msgstr ""
 
-#: cp/pt.cc:16274
+#: cp/pt.cc:16379
 #, gcc-internal-format
 msgid "forming pointer to qualified function type %qT"
 msgstr ""
 
-#: cp/pt.cc:16277
+#: cp/pt.cc:16382
 #, gcc-internal-format
 msgid "forming reference to qualified function type %qT"
 msgstr ""
 
-#: cp/pt.cc:16325
+#: cp/pt.cc:16430
 #, gcc-internal-format
 msgid "creating pointer to member of non-class type %qT"
 msgstr ""
 
-#: cp/pt.cc:16331
+#: cp/pt.cc:16436
 #, gcc-internal-format
 msgid "creating pointer to member reference type %qT"
 msgstr ""
 
-#: cp/pt.cc:16337
+#: cp/pt.cc:16442
 #, gcc-internal-format
 msgid "creating pointer to member of type void"
 msgstr ""
 
-#: cp/pt.cc:16403
+#: cp/pt.cc:16508
 #, gcc-internal-format
 msgid "creating array of %qT"
 msgstr ""
 
-#: cp/pt.cc:16438
+#: cp/pt.cc:16545
 #, gcc-internal-format
 msgid "%qD is instantiated for an empty pack"
 msgstr ""
 
-#: cp/pt.cc:16458
+#: cp/pt.cc:16566
 #, gcc-internal-format
 msgid "%qT is not a class, struct, or union type"
 msgstr ""
 
-#: cp/pt.cc:16492
+#: cp/pt.cc:16599
 #, gcc-internal-format
 msgid "%qT resolves to %qT, which is not an enumeration type"
 msgstr ""
 
-#: cp/pt.cc:16500
+#: cp/pt.cc:16607
 #, gcc-internal-format
 msgid "%qT resolves to %qT, which is not a class type"
 msgstr ""
 
-#: cp/pt.cc:16613
+#: cp/pt.cc:16720
 #, gcc-internal-format
 msgid "use of %qs in template"
 msgstr ""
 
-#: cp/pt.cc:16913
+#: cp/pt.cc:17030
 #, gcc-internal-format
 msgid "qualifying type %qT does not match destructor name ~%qT"
 msgstr ""
 
-#: cp/pt.cc:16928
+#: cp/pt.cc:17045
 #, gcc-internal-format
 msgid ""
 "dependent-name %qE is parsed as a non-type, but instantiation yields a type"
 msgstr ""
 
-#: cp/pt.cc:16930
+#: cp/pt.cc:17047
 #, gcc-internal-format
 msgid "say %<typename %E%> if a type is meant"
 msgstr ""
 
-#: cp/pt.cc:17023
+#: cp/pt.cc:17140
 #, gcc-internal-format
 msgid "initializer for %q#D expands to an empty list of expressions"
 msgstr ""
 
-#: cp/pt.cc:17211
+#: cp/pt.cc:17331
 #, gcc-internal-format
 msgid "using invalid field %qD"
 msgstr ""
 
-#: cp/pt.cc:17761 cp/pt.cc:19739
+#: cp/pt.cc:17864 cp/pt.cc:19851
 #, gcc-internal-format
 msgid "invalid use of pack expansion expression"
 msgstr ""
 
-#: cp/pt.cc:17765 cp/pt.cc:19743
+#: cp/pt.cc:17868 cp/pt.cc:19855
 #, gcc-internal-format
 msgid "use %<...%> to expand argument pack"
 msgstr ""
 
-#: cp/pt.cc:19879
+#: cp/pt.cc:19992
 #, gcc-internal-format
 msgid "empty initializer in lambda init-capture"
 msgstr ""
 
-#: cp/pt.cc:21019
+#: cp/pt.cc:21134
 #, 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:21054
+#: cp/pt.cc:21169
 #, gcc-internal-format
 msgid "declarations in dependent base %qT are not found by unqualified lookup"
 msgstr ""
 
-#: cp/pt.cc:21059
+#: cp/pt.cc:21174
 #, gcc-internal-format
 msgid "use %<this->%D%> instead"
 msgstr ""
 
-#: cp/pt.cc:21062
+#: cp/pt.cc:21177
 #, gcc-internal-format
 msgid "use %<%T::%D%> instead"
 msgstr ""
 
-#: cp/pt.cc:21067
+#: cp/pt.cc:21182
 #, gcc-internal-format
 msgid "%qD declared here, later in the translation unit"
 msgstr ""
 
-#: cp/pt.cc:21130
+#: cp/pt.cc:21233
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_convertvector%>"
 msgstr ""
 
-#: cp/pt.cc:21157
+#: cp/pt.cc:21260
 #, gcc-internal-format
 msgid "wrong number of arguments to %<assume%> attribute"
 msgstr ""
 
-#: cp/pt.cc:21393
+#: cp/pt.cc:21496
 #, gcc-internal-format
 msgid "%qT is not a class or namespace"
 msgstr ""
 
-#: cp/pt.cc:21396
+#: cp/pt.cc:21499
 #, gcc-internal-format
 msgid "%qD is not a class or namespace"
 msgstr ""
 
-#: cp/pt.cc:21746
+#: cp/pt.cc:21849
 #, gcc-internal-format
 msgid "%qT is/uses unnamed type"
 msgstr ""
 
-#: cp/pt.cc:21748
+#: cp/pt.cc:21851
 #, gcc-internal-format
 msgid "template argument for %qD uses local type %qT"
 msgstr ""
 
-#: cp/pt.cc:21758
+#: cp/pt.cc:21861
 #, gcc-internal-format
 msgid "%qT is a variably modified type"
 msgstr ""
 
-#: cp/pt.cc:21773
+#: cp/pt.cc:21876
 #, gcc-internal-format
 msgid "integral expression %qE is not constant"
 msgstr ""
 
-#: cp/pt.cc:21791
+#: cp/pt.cc:21894
 #, gcc-internal-format
 msgid "  trying to instantiate %qD"
 msgstr ""
 
-#: cp/pt.cc:25931
+#: cp/pt.cc:26132
 #, gcc-internal-format
 msgid "ambiguous template instantiation for %q#T"
 msgstr ""
 
-#: cp/pt.cc:25933
+#: cp/pt.cc:26134
 #, gcc-internal-format
 msgid "ambiguous template instantiation for %q#D"
 msgstr ""
 
-#: cp/pt.cc:25939
+#: cp/pt.cc:26140
 msgid "%s %#qS"
 msgstr ""
 
-#: cp/pt.cc:25963 cp/pt.cc:26058
+#: cp/pt.cc:26164 cp/pt.cc:26259
 #, gcc-internal-format
 msgid "explicit instantiation of non-template %q#D"
 msgstr ""
 
-#: cp/pt.cc:25969
+#: cp/pt.cc:26170
 #, gcc-internal-format
 msgid "explicit instantiation of variable concept %q#D"
 msgstr ""
 
-#: cp/pt.cc:25971
+#: cp/pt.cc:26172
 #, gcc-internal-format
 msgid "explicit instantiation of function concept %q#D"
 msgstr ""
 
-#: cp/pt.cc:25990
+#: cp/pt.cc:26191
 #, gcc-internal-format
 msgid "%qD is not a static data member of a class template"
 msgstr ""
 
-#: cp/pt.cc:25996 cp/pt.cc:26053
+#: cp/pt.cc:26197 cp/pt.cc:26254
 #, gcc-internal-format
 msgid "no matching template for %qD found"
 msgstr ""
 
-#: cp/pt.cc:26001
+#: cp/pt.cc:26202
 #, gcc-internal-format
 msgid ""
 "type %qT for explicit instantiation %qD does not match declared type %qT"
 msgstr ""
 
-#: cp/pt.cc:26009
+#: cp/pt.cc:26210
 #, gcc-internal-format
 msgid "explicit instantiation of %q#D"
 msgstr ""
 
-#: cp/pt.cc:26045
+#: cp/pt.cc:26246
 #, gcc-internal-format
 msgid "duplicate explicit instantiation of %q#D"
 msgstr ""
 
-#: cp/pt.cc:26068 cp/pt.cc:26135
+#: cp/pt.cc:26269 cp/pt.cc:26336
 #, gcc-internal-format
 msgid "ISO C++ 1998 forbids the use of %<extern%> on explicit instantiations"
 msgstr ""
 
-#: cp/pt.cc:26073 cp/pt.cc:26150
+#: cp/pt.cc:26274 cp/pt.cc:26351
 #, gcc-internal-format
 msgid "storage class %qD applied to template instantiation"
 msgstr ""
 
-#: cp/pt.cc:26107
+#: cp/pt.cc:26308
 #, gcc-internal-format
 msgid "explicit instantiation of non-class template %qD"
 msgstr ""
 
-#: cp/pt.cc:26110
+#: cp/pt.cc:26311
 #, gcc-internal-format
 msgid "explicit instantiation of non-template type %qT"
 msgstr ""
 
-#: cp/pt.cc:26119
+#: cp/pt.cc:26320
 #, gcc-internal-format
 msgid "explicit instantiation of %q#T before definition of template"
 msgstr ""
 
-#: cp/pt.cc:26140
+#: cp/pt.cc:26341
 #, gcc-internal-format
 msgid "ISO C++ forbids the use of %qE on explicit instantiations"
 msgstr ""
 
-#: cp/pt.cc:26180
+#: cp/pt.cc:26381
 #, gcc-internal-format
 msgid "duplicate explicit instantiation of %q#T"
 msgstr ""
 
-#: cp/pt.cc:26490
+#: cp/pt.cc:26691
 #, gcc-internal-format
 msgid "exception specification of %qD depends on itself"
 msgstr ""
@@ -64604,12 +64697,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:26980
+#: cp/pt.cc:27183
 #, gcc-internal-format
 msgid "explicit instantiation of %qD but no definition available"
 msgstr ""
 
-#: cp/pt.cc:27027
+#: cp/pt.cc:27230
 #, gcc-internal-format
 msgid ""
 "template instantiation depth exceeds maximum of %d instantiating %q+D, "
@@ -64617,170 +64710,170 @@ msgid ""
 "increase the maximum)"
 msgstr ""
 
-#: cp/pt.cc:27397
+#: cp/pt.cc:27600
 #, 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:27427
+#: cp/pt.cc:27630
 #, 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:27436
+#: cp/pt.cc:27639
 #, 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:27444
+#: cp/pt.cc:27647
 #, gcc-internal-format
 msgid "invalid template non-type parameter"
 msgstr ""
 
-#: cp/pt.cc:27446
+#: cp/pt.cc:27649
 #, gcc-internal-format
 msgid "%q#T is not a valid type for a template non-type parameter"
 msgstr ""
 
-#: cp/pt.cc:28874
+#: cp/pt.cc:29077
 #, gcc-internal-format
 msgid "keyword %<template%> not allowed in declarator-id"
 msgstr ""
 
-#: cp/pt.cc:29164
+#: cp/pt.cc:29367
 #, gcc-internal-format
 msgid "a concept cannot be constrained"
 msgstr ""
 
-#: cp/pt.cc:29173
+#: cp/pt.cc:29376
 #, gcc-internal-format
 msgid "concept %qE not in namespace scope"
 msgstr ""
 
-#: cp/pt.cc:29179
+#: cp/pt.cc:29382
 #, gcc-internal-format
 msgid "concept %qE has multiple template parameter lists"
 msgstr ""
 
-#: cp/pt.cc:29210
+#: cp/pt.cc:29413
 #, gcc-internal-format
 msgid ""
 "deducing from brace-enclosed initializer list requires %<#include "
 "<initializer_list>%>"
 msgstr ""
 
-#: cp/pt.cc:30265
+#: cp/pt.cc:30561
 #, gcc-internal-format
 msgid "non-deducible template %qT used without template arguments"
 msgstr ""
 
-#: cp/pt.cc:30277
+#: cp/pt.cc:30573
 #, gcc-internal-format
 msgid ""
 "alias template deduction only available with %<-std=c++20%> or %<-std=gnu+"
 "+20%>"
 msgstr ""
 
-#: cp/pt.cc:30283
+#: cp/pt.cc:30579
 #, gcc-internal-format
 msgid "use %qD directly instead"
 msgstr ""
 
-#: cp/pt.cc:30394
+#: cp/pt.cc:30690
 #, 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:30401
+#: cp/pt.cc:30697
 #, gcc-internal-format
 msgid ""
 "cannot deduce template arguments of %qT, as it has no viable deduction guides"
 msgstr ""
 
-#: cp/pt.cc:30413
+#: cp/pt.cc:30709
 #, gcc-internal-format
 msgid "class template argument deduction failed:"
 msgstr ""
 
-#: cp/pt.cc:30416
+#: cp/pt.cc:30712
 #, gcc-internal-format
 msgid "explicit deduction guides not considered for copy-initialization"
 msgstr ""
 
 #. TODO: Pass down location from cp_finish_decl.
-#: cp/pt.cc:30430
+#: cp/pt.cc:30726
 #, gcc-internal-format
 msgid ""
 "class template argument deduction for %qT failed: explicit deduction guide "
 "selected in copy-list-initialization"
 msgstr ""
 
-#: cp/pt.cc:30434
+#: cp/pt.cc:30730
 #, gcc-internal-format
 msgid "explicit deduction guide declared here"
 msgstr ""
 
-#: cp/pt.cc:30448
+#: cp/pt.cc:30744
 #, gcc-internal-format
 msgid "%qT may not intend to support class template argument deduction"
 msgstr ""
 
-#: cp/pt.cc:30450
+#: cp/pt.cc:30746
 #, gcc-internal-format
 msgid "add a deduction guide to suppress this warning"
 msgstr ""
 
-#: cp/pt.cc:30554
+#: cp/pt.cc:30857
 #, gcc-internal-format
 msgid "direct-list-initialization of %<auto%> requires exactly one element"
 msgstr ""
 
-#: cp/pt.cc:30557
+#: cp/pt.cc:30860
 #, gcc-internal-format
 msgid ""
 "for deduction to %<std::initializer_list%>, use copy-list-initialization (i."
 "e. add %<=%> before the %<{%>)"
 msgstr ""
 
-#: cp/pt.cc:30636
+#: cp/pt.cc:30939
 #, gcc-internal-format
 msgid "unable to deduce lambda return type from %qE"
 msgstr ""
 
-#: cp/pt.cc:30639
+#: cp/pt.cc:30942
 #, gcc-internal-format
 msgid "unable to deduce %qT from %qE"
 msgstr ""
 
-#: cp/pt.cc:30711
+#: cp/pt.cc:31017
 #, gcc-internal-format
 msgid "placeholder constraints not satisfied"
 msgstr ""
 
-#: cp/pt.cc:30715
+#: cp/pt.cc:31021
 #, gcc-internal-format
 msgid "deduced initializer does not satisfy placeholder constraints"
 msgstr ""
 
-#: cp/pt.cc:30719
+#: cp/pt.cc:31025
 #, gcc-internal-format
 msgid "deduced return type does not satisfy placeholder constraints"
 msgstr ""
 
-#: cp/pt.cc:30723
+#: cp/pt.cc:31029
 #, gcc-internal-format
 msgid "deduced expression type does not satisfy placeholder constraints"
 msgstr ""
 
-#: cp/pt.cc:30863
+#: cp/pt.cc:31169
 #, gcc-internal-format
 msgid "invalid use of %qT in template argument"
 msgstr ""
@@ -64832,93 +64925,93 @@ msgstr ""
 msgid "%qT is an inaccessible base of %qT"
 msgstr ""
 
-#: cp/search.cc:1911
+#: cp/search.cc:1934
 #, gcc-internal-format
 msgid "looser exception specification on overriding virtual function %q+#F"
 msgstr ""
 
-#: cp/search.cc:1914
+#: cp/search.cc:1937
 #, gcc-internal-format
 msgid "overridden function is %q#F"
 msgstr ""
 
-#: cp/search.cc:1989
+#: cp/search.cc:2012
 #, gcc-internal-format
 msgid "invalid covariant return type for %q#D"
 msgstr ""
 
-#: cp/search.cc:1991 cp/search.cc:2008 cp/search.cc:2025
+#: cp/search.cc:2014 cp/search.cc:2031 cp/search.cc:2048
 #, gcc-internal-format
 msgid "overridden function is %q#D"
 msgstr ""
 
-#: cp/search.cc:2004
+#: cp/search.cc:2027
 #, gcc-internal-format
 msgid "invalid covariant return type for %q+#D"
 msgstr ""
 
-#: cp/search.cc:2006
+#: cp/search.cc:2029
 #, gcc-internal-format
 msgid "conflicting return type specified for %q+#D"
 msgstr ""
 
-#: cp/search.cc:2023
+#: cp/search.cc:2046
 #, gcc-internal-format
 msgid "conflicting type attributes specified for %q+#D"
 msgstr ""
 
-#: cp/search.cc:2038
+#: cp/search.cc:2061
 #, gcc-internal-format
 msgid "%<consteval%> function %q+D overriding non-%<consteval%> function"
 msgstr ""
 
-#: cp/search.cc:2041
+#: cp/search.cc:2064
 #, gcc-internal-format
 msgid "non-%<consteval%> function %q+D overriding %<consteval%> function"
 msgstr ""
 
-#: cp/search.cc:2044 cp/search.cc:2073 cp/search.cc:2082 cp/search.cc:2093
-#: cp/search.cc:2118
+#: cp/search.cc:2067 cp/search.cc:2096 cp/search.cc:2105 cp/search.cc:2116
+#: cp/search.cc:2141
 #, gcc-internal-format
 msgid "overridden function is %qD"
 msgstr ""
 
-#: cp/search.cc:2060
+#: cp/search.cc:2083
 #, gcc-internal-format
 msgid "%qD declared %<transaction_safe_dynamic%>"
 msgstr ""
 
-#: cp/search.cc:2062
+#: cp/search.cc:2085
 #, gcc-internal-format
 msgid "overriding %qD declared %<transaction_safe%>"
 msgstr ""
 
-#: cp/search.cc:2070
+#: cp/search.cc:2093
 #, gcc-internal-format
 msgid "deleted function %q+D overriding non-deleted function"
 msgstr ""
 
-#: cp/search.cc:2079
+#: cp/search.cc:2102
 #, gcc-internal-format
 msgid "non-deleted function %q+D overriding deleted function"
 msgstr ""
 
-#: cp/search.cc:2090
+#: cp/search.cc:2113
 #, gcc-internal-format
 msgid "function with contracts %q+D overriding contractless function"
 msgstr ""
 
-#: cp/search.cc:2116
+#: cp/search.cc:2139
 #, gcc-internal-format
 msgid "virtual function %q+D overriding final function"
 msgstr ""
 
-#: cp/search.cc:2201
+#: cp/search.cc:2224
 #, gcc-internal-format
 msgid "%q+#D cannot be declared"
 msgstr ""
 
-#: cp/search.cc:2202
+#: cp/search.cc:2225
 #, gcc-internal-format
 msgid "  since %q+#D declared in base class"
 msgstr ""
@@ -64988,562 +65081,567 @@ msgstr ""
 msgid "invalid use of member %qD in destructor %<post%> contract"
 msgstr ""
 
-#: cp/semantics.cc:2441
+#: cp/semantics.cc:2442
 #, gcc-internal-format
 msgid "%qE missing template arguments"
 msgstr ""
 
-#: cp/semantics.cc:2501
+#: cp/semantics.cc:2502
 #, gcc-internal-format
 msgid ""
 "a statement expression is an insufficient context for overload resolution"
 msgstr ""
 
-#: cp/semantics.cc:2861
+#: cp/semantics.cc:2862
 #, gcc-internal-format
 msgid "cannot call a concept as a function"
 msgstr ""
 
-#: cp/semantics.cc:2929
+#: cp/semantics.cc:2930
 #, gcc-internal-format
 msgid "arguments to destructor are not allowed"
 msgstr ""
 
-#: cp/semantics.cc:3031
+#: cp/semantics.cc:3032
 #, gcc-internal-format
 msgid "%<this%> is unavailable for static member functions"
 msgstr ""
 
-#: cp/semantics.cc:3033
+#: cp/semantics.cc:3034
 #, gcc-internal-format
 msgid "invalid use of %<this%> before it is valid"
 msgstr ""
 
-#: cp/semantics.cc:3035
+#: cp/semantics.cc:3036
 #, gcc-internal-format
 msgid "invalid use of %<this%> after it is valid"
 msgstr ""
 
-#: cp/semantics.cc:3037
+#: cp/semantics.cc:3038
 #, gcc-internal-format
 msgid "invalid use of %<this%> in non-member function"
 msgstr ""
 
-#: cp/semantics.cc:3039
+#: cp/semantics.cc:3040
 #, gcc-internal-format
 msgid "invalid use of %<this%> at top level"
 msgstr ""
 
-#: cp/semantics.cc:3061
+#: cp/semantics.cc:3062
 #, gcc-internal-format
 msgid "invalid qualifying scope in pseudo-destructor name"
 msgstr ""
 
-#: cp/semantics.cc:3069 cp/typeck.cc:3093
+#: cp/semantics.cc:3070 cp/typeck.cc:3093
 #, gcc-internal-format
 msgid "qualified type %qT does not match destructor name ~%qT"
 msgstr ""
 
-#: cp/semantics.cc:3091
+#: cp/semantics.cc:3092
 #, gcc-internal-format
 msgid "%qE is not of type %qT"
 msgstr ""
 
-#: cp/semantics.cc:3205
+#: cp/semantics.cc:3206
 #, gcc-internal-format
 msgid "compound literal of non-object type %qT"
 msgstr ""
 
-#: cp/semantics.cc:3225
+#: cp/semantics.cc:3226
 #, gcc-internal-format
 msgid "%<auto{x}%> cannot be constrained"
 msgstr ""
 
-#: cp/semantics.cc:3230
+#: cp/semantics.cc:3231
 #, gcc-internal-format
 msgid "%<auto{x}%> only available with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr ""
 
-#: cp/semantics.cc:3422
+#: cp/semantics.cc:3423
 #, gcc-internal-format
 msgid "template type parameters must use the keyword %<class%> or %<typename%>"
 msgstr ""
 
-#: cp/semantics.cc:3471
+#: cp/semantics.cc:3476
 #, gcc-internal-format
 msgid ""
 "invalid use of type %qT as a default value for a template template-parameter"
 msgstr ""
 
-#: cp/semantics.cc:3474
+#: cp/semantics.cc:3480
 #, gcc-internal-format
 msgid "invalid default argument for a template template parameter"
 msgstr ""
 
-#: cp/semantics.cc:3491
+#: cp/semantics.cc:3497
 #, gcc-internal-format
 msgid "definition of %q#T inside template parameter list"
 msgstr ""
 
-#: cp/semantics.cc:3522
+#: cp/semantics.cc:3528
 #, gcc-internal-format
 msgid "invalid definition of qualified type %qT"
 msgstr ""
 
-#: cp/semantics.cc:3814
+#: cp/semantics.cc:3820
 #, gcc-internal-format
 msgid "invalid base-class specification"
 msgstr ""
 
-#: cp/semantics.cc:3979
+#: cp/semantics.cc:3985
 #, gcc-internal-format
 msgid "cannot capture member %qD of anonymous union"
 msgstr ""
 
-#: cp/semantics.cc:3996 cp/semantics.cc:12372
+#: cp/semantics.cc:4002 cp/semantics.cc:12394
 #, gcc-internal-format
 msgid "%qD is not captured"
 msgstr ""
 
-#: cp/semantics.cc:4000
+#: cp/semantics.cc:4006
 #, gcc-internal-format
 msgid "the lambda has no capture-default"
 msgstr ""
 
-#: cp/semantics.cc:4002
+#: cp/semantics.cc:4008
 #, gcc-internal-format
 msgid ""
 "lambda in local class %q+T cannot capture variables from the enclosing "
 "context"
 msgstr ""
 
-#: cp/semantics.cc:4017
+#: cp/semantics.cc:4023
 #, gcc-internal-format
 msgid "use of local variable with automatic storage from containing function"
 msgstr ""
 
-#: cp/semantics.cc:4019
+#: cp/semantics.cc:4025
 #, gcc-internal-format
 msgid "use of parameter from containing function"
 msgstr ""
 
-#: cp/semantics.cc:4147
+#: cp/semantics.cc:4153
 #, gcc-internal-format
 msgid "use of parameter outside function body"
 msgstr ""
 
-#: cp/semantics.cc:4157
+#: cp/semantics.cc:4163
 #, gcc-internal-format
 msgid "missing template arguments"
 msgstr ""
 
-#: cp/semantics.cc:4193
+#: cp/semantics.cc:4199
 #, 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:4233
+#: cp/semantics.cc:4250
 #, gcc-internal-format
 msgid "use of class template %qT as expression"
 msgstr ""
 
 #. Ambiguous reference to base members.
-#: cp/semantics.cc:4240
+#: cp/semantics.cc:4257
 #, gcc-internal-format
 msgid "request for member %qD is ambiguous in multiple inheritance lattice"
 msgstr ""
 
-#: cp/semantics.cc:4268
+#: cp/semantics.cc:4285
 #, gcc-internal-format
 msgid "%qD cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/semantics.cc:4430
+#: cp/semantics.cc:4438
 #, gcc-internal-format
 msgid "type of %qE is unknown"
 msgstr ""
 
-#: cp/semantics.cc:4448 rust/backend/rust-tree.cc:5482
+#: cp/semantics.cc:4456 rust/backend/rust-tree.cc:5459
 #, gcc-internal-format
 msgid "%qT is not an enumeration type"
 msgstr ""
 
 #. Parameter packs can only be used in templates
-#: cp/semantics.cc:4582
+#: cp/semantics.cc:4590
 #, gcc-internal-format
 msgid "parameter pack %<__bases%> only valid in template declaration"
 msgstr ""
 
-#: cp/semantics.cc:4614
+#: cp/semantics.cc:4622
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to destructor %<~%T%>"
 msgstr ""
 
-#: cp/semantics.cc:4627
+#: cp/semantics.cc:4635
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to member function %qD"
 msgstr ""
 
-#: cp/semantics.cc:4631
+#: cp/semantics.cc:4639
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to member function"
 msgstr ""
 
-#: cp/semantics.cc:4636
+#: cp/semantics.cc:4644
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to an enumerator %qD"
 msgstr ""
 
-#: cp/semantics.cc:4647
+#: cp/semantics.cc:4655
 #, gcc-internal-format
 msgid ""
 "%<offsetof%> within non-standard-layout type %qT is conditionally-supported"
 msgstr ""
 
-#: cp/semantics.cc:5987
+#: cp/semantics.cc:5995
 #, gcc-internal-format
 msgid "user defined reduction lookup is ambiguous"
 msgstr ""
 
-#: cp/semantics.cc:6260
+#: cp/semantics.cc:6268
 #, gcc-internal-format
 msgid "%qE in %<reduction%> clause is a zero size array"
 msgstr ""
 
-#: cp/semantics.cc:6306
+#: cp/semantics.cc:6314
 #, gcc-internal-format
 msgid "%qE has const type for %<reduction%>"
 msgstr ""
 
-#: cp/semantics.cc:6425
+#: cp/semantics.cc:6433
 #, gcc-internal-format
 msgid "user defined reduction with constructor initializer for base class %qT"
 msgstr ""
 
-#: cp/semantics.cc:6896
+#: cp/semantics.cc:6904
 #, 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:6911
+#: cp/semantics.cc:6919
 #, gcc-internal-format
 msgid ""
 "linear clause with %qs modifier applied to non-reference variable with %qT "
 "type"
 msgstr ""
 
-#: cp/semantics.cc:6926
+#: cp/semantics.cc:6934
 #, gcc-internal-format
 msgid ""
 "linear clause applied to non-integral non-pointer variable with %qT type"
 msgstr ""
 
-#: cp/semantics.cc:6950
+#: cp/semantics.cc:6958
 #, gcc-internal-format
 msgid "linear step expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:7043 cp/semantics.cc:7175 cp/semantics.cc:7234
-#: cp/semantics.cc:7632 cp/semantics.cc:8794
+#: cp/semantics.cc:7051 cp/semantics.cc:7183 cp/semantics.cc:7242
+#: cp/semantics.cc:7640 cp/semantics.cc:8802
 #, gcc-internal-format
 msgid "%<this%> allowed in OpenMP only in %<declare simd%> clauses"
 msgstr ""
 
-#: cp/semantics.cc:7055 cp/semantics.cc:8807
+#: cp/semantics.cc:7063 cp/semantics.cc:8815
 #, gcc-internal-format
 msgid "%qD is not a variable in clause %qs"
 msgstr ""
 
-#: cp/semantics.cc:7188
+#: cp/semantics.cc:7196
 #, gcc-internal-format
 msgid "%qD is not a variable in clause %<firstprivate%>"
 msgstr ""
 
-#: cp/semantics.cc:7247
+#: cp/semantics.cc:7255
 #, gcc-internal-format
 msgid "%qD is not a variable in clause %<lastprivate%>"
 msgstr ""
 
-#: cp/semantics.cc:7297
+#: cp/semantics.cc:7305
 #, gcc-internal-format
 msgid "%<gang%> static expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:7311
+#: cp/semantics.cc:7319
 #, gcc-internal-format
 msgid "%<gang%> static value must be positive"
 msgstr ""
 
-#: cp/semantics.cc:7345
+#: cp/semantics.cc:7353
 #, gcc-internal-format
 msgid "%<gang%> num expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:7348
+#: cp/semantics.cc:7356
 #, gcc-internal-format
 msgid "%<vector%> length expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:7352
+#: cp/semantics.cc:7360
 #, gcc-internal-format
 msgid "%<worker%> num expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:7374
+#: cp/semantics.cc:7382
 #, gcc-internal-format
 msgid "%<gang%> num value must be positive"
 msgstr ""
 
-#: cp/semantics.cc:7378
+#: cp/semantics.cc:7386
 #, gcc-internal-format
 msgid "%<vector%> length value must be positive"
 msgstr ""
 
-#: cp/semantics.cc:7383
+#: cp/semantics.cc:7391
 #, gcc-internal-format
 msgid "%<worker%> num value must be positive"
 msgstr ""
 
-#: cp/semantics.cc:7457
+#: cp/semantics.cc:7465
 #, gcc-internal-format
 msgid "schedule chunk size expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:7490
+#: cp/semantics.cc:7498
 #, gcc-internal-format
 msgid "%qs length expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:7504
+#: cp/semantics.cc:7512
 #, gcc-internal-format
 msgid "%qs length expression must be positive constant integer expression"
 msgstr ""
 
-#: cp/semantics.cc:7524
+#: cp/semantics.cc:7532
 #, gcc-internal-format
 msgid "%<async%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:7553
+#: cp/semantics.cc:7561
 #, gcc-internal-format
 msgid "%<thread_limit%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:7583
+#: cp/semantics.cc:7591
 #, gcc-internal-format
 msgid "%<device%> id must be integral"
 msgstr ""
 
-#: cp/semantics.cc:7614
+#: cp/semantics.cc:7622
 #, gcc-internal-format
 msgid "%<dist_schedule%> chunk size expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:7643
+#: cp/semantics.cc:7651
 #, gcc-internal-format
 msgid "%qD is not a variable in %<aligned%> clause"
 msgstr ""
 
-#: cp/semantics.cc:7658
+#: cp/semantics.cc:7666
 #, 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:7665
+#: cp/semantics.cc:7673
 #, gcc-internal-format
 msgid "%qD appears more than once in %<aligned%> clauses"
 msgstr ""
 
-#: cp/semantics.cc:7680
+#: cp/semantics.cc:7688
 #, gcc-internal-format
 msgid "%<aligned%> clause alignment expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:7713
+#: cp/semantics.cc:7721
 #, gcc-internal-format
 msgid "%qD is not a variable in %<nontemporal%> clause"
 msgstr ""
 
-#: cp/semantics.cc:7724
+#: cp/semantics.cc:7732
 #, gcc-internal-format
 msgid "%qD appears more than once in %<nontemporal%> clauses"
 msgstr ""
 
-#: cp/semantics.cc:7741
+#: cp/semantics.cc:7749
 #, gcc-internal-format
 msgid "%<this%> not allowed in %<allocate%> clause"
 msgstr ""
 
-#: cp/semantics.cc:7753
+#: cp/semantics.cc:7761
 #, gcc-internal-format
 msgid "%qD is not a variable in %<allocate%> clause"
 msgstr ""
 
-#: cp/semantics.cc:7762
+#: cp/semantics.cc:7770
 #, gcc-internal-format
 msgid "%qD appears more than once in %<allocate%> clauses"
 msgstr ""
 
-#: cp/semantics.cc:7910
+#: cp/semantics.cc:7918
 #, gcc-internal-format
 msgid "%qD is not lvalue expression nor array section in %qs clause"
 msgstr ""
 
-#: cp/semantics.cc:8449
+#: cp/semantics.cc:8457
 #, gcc-internal-format
 msgid "template %qE in clause %qs"
 msgstr ""
 
-#: cp/semantics.cc:8452
+#: cp/semantics.cc:8460
 #, gcc-internal-format
 msgid "overloaded function name %qE in clause %qs"
 msgstr ""
 
-#: cp/semantics.cc:8521
+#: cp/semantics.cc:8529
 #, gcc-internal-format
 msgid "%<grainsize%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8551
+#: cp/semantics.cc:8559
 #, gcc-internal-format
 msgid "%<priority%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8581
+#: cp/semantics.cc:8589
 #, gcc-internal-format
 msgid "%<hint%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8594
+#: cp/semantics.cc:8602
 #, gcc-internal-format
 msgid "%<hint%> expression must be constant integer expression"
 msgstr ""
 
-#: cp/semantics.cc:8611
+#: cp/semantics.cc:8619
 #, gcc-internal-format
 msgid "%<filter%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.cc:8642
+#: cp/semantics.cc:8650
 #, gcc-internal-format
 msgid "%qs variable is neither a pointer nor reference to pointer"
 msgstr ""
 
-#: cp/semantics.cc:8652
+#: cp/semantics.cc:8660
 #, gcc-internal-format
 msgid ""
 "%qs variable is neither a pointer, nor an array nor reference to pointer or "
 "array"
 msgstr ""
 
-#: cp/semantics.cc:8735
+#: cp/semantics.cc:8743
 #, gcc-internal-format
 msgid "%<tile%> argument needs integral type"
 msgstr ""
 
-#: cp/semantics.cc:9151
+#: cp/semantics.cc:9159
 #, gcc-internal-format
 msgid ""
 "%<const%> qualified %qE without %<mutable%> member may appear only in "
 "%<shared%> or %<firstprivate%> clauses"
 msgstr ""
 
-#: cp/semantics.cc:9378
+#: cp/semantics.cc:9386
 #, gcc-internal-format
 msgid "%<threadprivate%> %qD is not file, namespace or block scope variable"
 msgstr ""
 
-#: cp/semantics.cc:9392
+#: cp/semantics.cc:9400
 #, gcc-internal-format
 msgid "%<threadprivate%> %qE directive not in %qT definition"
 msgstr ""
 
-#: cp/semantics.cc:10121
+#: cp/semantics.cc:10129
 #, gcc-internal-format
 msgid "difference between %qE and %qD does not have integer type"
 msgstr ""
 
-#: cp/semantics.cc:10589
+#: cp/semantics.cc:10597
 #, gcc-internal-format
 msgid "%<#pragma omp simd%> used with class iteration variable %qE"
 msgstr ""
 
-#: cp/semantics.cc:10899 cp/semantics.cc:10909
+#: cp/semantics.cc:10907 cp/semantics.cc:10917
 #, gcc-internal-format
 msgid "%<#pragma omp atomic update%> uses two different expressions for memory"
 msgstr ""
 
-#: cp/semantics.cc:11289
+#: cp/semantics.cc:11300
 #, gcc-internal-format, gfc-internal-format
 msgid "static assertion failed: %s"
 msgstr ""
 
-#: cp/semantics.cc:11296
+#: cp/semantics.cc:11307
 #, gcc-internal-format
 msgid "non-constant condition for static assertion"
 msgstr ""
 
-#: cp/semantics.cc:11325
+#: cp/semantics.cc:11336
 #, gcc-internal-format
 msgid "argument to %<decltype%> must be an expression"
 msgstr ""
 
-#: cp/semantics.cc:11370
+#: cp/semantics.cc:11381
 #, gcc-internal-format
 msgid "%<decltype%> cannot resolve address of overloaded function"
 msgstr ""
 
-#: cp/semantics.cc:11605 rust/backend/rust-tree.cc:5196
+#: cp/semantics.cc:11616 rust/backend/rust-tree.cc:5173
 #, gcc-internal-format
 msgid ""
 "%<__builtin_is_pointer_interconvertible_with_class%> needs a single argument"
 msgstr ""
 
-#: cp/semantics.cc:11614 rust/backend/rust-tree.cc:5205
+#: cp/semantics.cc:11625 rust/backend/rust-tree.cc:5182
 #, gcc-internal-format
 msgid ""
 "%<__builtin_is_pointer_interconvertible_with_class%> argument is not pointer "
 "to member"
 msgstr ""
 
-#: cp/semantics.cc:11785 rust/backend/rust-tree.cc:5809
+#: cp/semantics.cc:11796 rust/backend/rust-tree.cc:5786
 #, gcc-internal-format
 msgid ""
 "%<__builtin_is_corresponding_member%> not well defined for anonymous unions"
 msgstr ""
 
-#: cp/semantics.cc:11809 rust/backend/rust-tree.cc:5853
+#: cp/semantics.cc:11820 rust/backend/rust-tree.cc:5830
 #, gcc-internal-format
 msgid "%<__builtin_is_corresponding_member%> needs two arguments"
 msgstr ""
 
-#: cp/semantics.cc:11820 rust/backend/rust-tree.cc:5863
+#: cp/semantics.cc:11831 rust/backend/rust-tree.cc:5840
 #, gcc-internal-format
 msgid "%<__builtin_is_corresponding_member%> argument is not pointer to member"
 msgstr ""
 
-#: cp/semantics.cc:12411
+#: cp/semantics.cc:12222
+#, gcc-internal-format
+msgid "%qD is not a class or alias template"
+msgstr ""
+
+#: cp/semantics.cc:12433
 #, gcc-internal-format
 msgid "operand of fold expression has no unexpanded parameter packs"
 msgstr ""
 
-#: cp/semantics.cc:12470
+#: cp/semantics.cc:12492
 #, gcc-internal-format
 msgid "both arguments in binary fold have unexpanded parameter packs"
 msgstr ""
 
-#: cp/semantics.cc:12472
+#: cp/semantics.cc:12494
 #, gcc-internal-format
 msgid "no unexpanded parameter packs in binary fold"
 msgstr ""
 
-#: cp/semantics.cc:12490
+#: cp/semantics.cc:12512
 #, gcc-internal-format
 msgid "non-pointer argument to %<__builtin_launder%>"
 msgstr ""
@@ -65551,28 +65649,28 @@ 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:12539
+#: cp/semantics.cc:12561
 #, gcc-internal-format
 msgid "%<__builtin_bit_cast%> destination type %qT is an array type"
 msgstr ""
 
-#: cp/semantics.cc:12545
+#: cp/semantics.cc:12567
 #, gcc-internal-format
 msgid "%<__builtin_bit_cast%> destination type %qT is not trivially copyable"
 msgstr ""
 
-#: cp/semantics.cc:12572
+#: cp/semantics.cc:12594
 #, gcc-internal-format
 msgid "%<__builtin_bit_cast%> source type %qT is not trivially copyable"
 msgstr ""
 
-#: cp/semantics.cc:12580
+#: cp/semantics.cc:12602
 #, gcc-internal-format
 msgid ""
 "%<__builtin_bit_cast%> source size %qE not equal to destination type size %qE"
 msgstr ""
 
-#: cp/tree.cc:1485 rust/backend/rust-tree.cc:2564
+#: cp/tree.cc:1485 rust/backend/rust-tree.cc:2561
 #, gcc-internal-format
 msgid "%qV qualifiers cannot be applied to %qT"
 msgstr ""
@@ -65757,7 +65855,7 @@ msgstr ""
 msgid "zero as null pointer constant"
 msgstr ""
 
-#: cp/tree.cc:6326 rust/backend/rust-tree.cc:3144
+#: cp/tree.cc:6326 rust/backend/rust-tree.cc:3141
 #, gcc-internal-format
 msgid "%<lang_*%> check: failed in %s, at %s:%d"
 msgstr ""
@@ -65860,7 +65958,7 @@ msgstr ""
 msgid "%<alignas%> argument has non-integral type %qT"
 msgstr ""
 
-#: cp/typeck.cc:2366 rust/backend/rust-tree.cc:3784
+#: cp/typeck.cc:2366 rust/backend/rust-tree.cc:3769
 #, gcc-internal-format
 msgid "invalid use of non-static member function of type %qT"
 msgstr ""
@@ -66164,96 +66262,96 @@ msgstr ""
 msgid "NULL used in arithmetic"
 msgstr ""
 
-#: cp/typeck.cc:5757 cp/typeck.cc:5766 cp/typeck.cc:6060 cp/typeck.cc:6069
+#: cp/typeck.cc:5757 cp/typeck.cc:5766 cp/typeck.cc:6067 cp/typeck.cc:6076
 #, gcc-internal-format
 msgid "ISO C++ forbids comparison between pointer and integer"
 msgstr ""
 
-#: cp/typeck.cc:5982 cp/typeck.cc:5995
+#: cp/typeck.cc:5989 cp/typeck.cc:6002
 #, gcc-internal-format
 msgid "operand types are %qT and %qT"
 msgstr ""
 
-#: cp/typeck.cc:6018
+#: cp/typeck.cc:6025
 #, gcc-internal-format
 msgid "three-way comparison of vectors"
 msgstr ""
 
-#: cp/typeck.cc:6052
+#: cp/typeck.cc:6059
 #, gcc-internal-format
 msgid "ordered comparison of pointer with integer zero (%qT and %qT)"
 msgstr ""
 
-#: cp/typeck.cc:6099
+#: cp/typeck.cc:6106
 #, gcc-internal-format
 msgid "unordered comparison on non-floating-point argument"
 msgstr ""
 
-#: cp/typeck.cc:6166
+#: cp/typeck.cc:6173
 msgid ""
 "implicit conversion from %qH to %qI to match other operand of binary "
 "expression"
 msgstr ""
 
-#: cp/typeck.cc:6276
+#: cp/typeck.cc:6283
 #, gcc-internal-format
 msgid "invalid operands of types %qT and %qT to binary %qO"
 msgstr ""
 
-#: cp/typeck.cc:6684
+#: cp/typeck.cc:6691
 #, gcc-internal-format
 msgid "ISO C++ forbids using pointer of type %<void *%> in subtraction"
 msgstr ""
 
-#: cp/typeck.cc:6692
+#: cp/typeck.cc:6699
 #, gcc-internal-format
 msgid "ISO C++ forbids using pointer to a function in subtraction"
 msgstr ""
 
-#: cp/typeck.cc:6700
+#: cp/typeck.cc:6707
 #, gcc-internal-format
 msgid "ISO C++ forbids using pointer to a method in subtraction"
 msgstr ""
 
-#: cp/typeck.cc:6753
+#: cp/typeck.cc:6760
 #, gcc-internal-format
 msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
 msgstr ""
 
-#: cp/typeck.cc:6832
+#: cp/typeck.cc:6839
 #, gcc-internal-format
 msgid "taking address of constructor %qD"
 msgstr ""
 
-#: cp/typeck.cc:6833
+#: cp/typeck.cc:6840
 #, gcc-internal-format
 msgid "taking address of destructor %qD"
 msgstr ""
 
-#: cp/typeck.cc:6849
+#: cp/typeck.cc:6856
 #, gcc-internal-format
 msgid "invalid use of %qE to form a pointer-to-member-function"
 msgstr ""
 
-#: cp/typeck.cc:6852
+#: cp/typeck.cc:6859
 #, gcc-internal-format
 msgid "  a qualified-id is required"
 msgstr ""
 
-#: cp/typeck.cc:6859
+#: cp/typeck.cc:6866
 #, gcc-internal-format
 msgid ""
 "parentheses around %qE cannot be used to form a pointer-to-member-function"
 msgstr ""
 
-#: cp/typeck.cc:7050
+#: cp/typeck.cc:7057
 #, 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:7056
+#: cp/typeck.cc:7063
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids taking the address of a bound member function to form a "
@@ -66261,450 +66359,450 @@ msgid ""
 msgstr ""
 
 #. Make this a permerror because we used to accept it.
-#: cp/typeck.cc:7091
+#: cp/typeck.cc:7098
 #, gcc-internal-format
 msgid "taking address of rvalue"
 msgstr ""
 
-#: cp/typeck.cc:7108
+#: cp/typeck.cc:7115
 #, gcc-internal-format
 msgid "ISO C++ forbids taking address of function %<::main%>"
 msgstr ""
 
-#: cp/typeck.cc:7166
+#: cp/typeck.cc:7173
 #, gcc-internal-format
 msgid "cannot create pointer to reference member %qD"
 msgstr ""
 
-#: cp/typeck.cc:7192 cp/typeck.cc:7767 rust/backend/rust-tree.cc:4685
+#: cp/typeck.cc:7199 cp/typeck.cc:7774 rust/backend/rust-tree.cc:4662
 #, gcc-internal-format
 msgid "attempt to take address of bit-field"
 msgstr ""
 
-#: cp/typeck.cc:7356
+#: cp/typeck.cc:7363
 #, gcc-internal-format
 msgid "%<~%> on an expression of type %<bool%>"
 msgstr ""
 
-#: cp/typeck.cc:7357
+#: cp/typeck.cc:7364
 #, gcc-internal-format
 msgid "did you mean to use logical not (%<!%>)?"
 msgstr ""
 
-#: cp/typeck.cc:7487
+#: cp/typeck.cc:7494
 #, gcc-internal-format
 msgid "ISO C++ forbids incrementing an enum"
 msgstr ""
 
-#: cp/typeck.cc:7488
+#: cp/typeck.cc:7495
 #, gcc-internal-format
 msgid "ISO C++ forbids decrementing an enum"
 msgstr ""
 
-#: cp/typeck.cc:7504
+#: cp/typeck.cc:7511
 #, gcc-internal-format
 msgid "cannot increment a pointer to incomplete type %qT"
 msgstr ""
 
-#: cp/typeck.cc:7506
+#: cp/typeck.cc:7513
 #, gcc-internal-format
 msgid "cannot decrement a pointer to incomplete type %qT"
 msgstr ""
 
-#: cp/typeck.cc:7518
+#: cp/typeck.cc:7525
 #, gcc-internal-format
 msgid "ISO C++ forbids incrementing a pointer of type %qT"
 msgstr ""
 
-#: cp/typeck.cc:7520
+#: cp/typeck.cc:7527
 #, gcc-internal-format
 msgid "ISO C++ forbids decrementing a pointer of type %qT"
 msgstr ""
 
-#: cp/typeck.cc:7559
+#: cp/typeck.cc:7566
 #, gcc-internal-format
 msgid "%qs expression of %<volatile%>-qualified type is deprecated"
 msgstr ""
 
-#: cp/typeck.cc:7572
+#: cp/typeck.cc:7579
 #, gcc-internal-format
 msgid "use of an operand of type %qT in %<operator--%> is forbidden"
 msgstr ""
 
-#: cp/typeck.cc:7582
+#: cp/typeck.cc:7589
 #, gcc-internal-format
 msgid "use of an operand of type %qT in %<operator++%> is forbidden in C++17"
 msgstr ""
 
-#: cp/typeck.cc:7590
+#: cp/typeck.cc:7597
 #, gcc-internal-format
 msgid "use of an operand of type %qT in %<operator++%> is deprecated"
 msgstr ""
 
-#: cp/typeck.cc:7779 rust/backend/rust-tree.cc:4697
+#: cp/typeck.cc:7786 rust/backend/rust-tree.cc:4674
 #, gcc-internal-format
 msgid "cannot take the address of %<this%>, which is an rvalue expression"
 msgstr ""
 
-#: cp/typeck.cc:7801 d/d-codegen.cc:719 rust/backend/rust-tree.cc:4716
+#: cp/typeck.cc:7808 d/d-codegen.cc:719 rust/backend/rust-tree.cc:4693
 #, gcc-internal-format
 msgid "address of explicit register variable %qD requested"
 msgstr ""
 
-#: cp/typeck.cc:7806 rust/backend/rust-tree.cc:4723
+#: cp/typeck.cc:7813 rust/backend/rust-tree.cc:4700
 #, gcc-internal-format
 msgid "address requested for %qD, which is declared %<register%>"
 msgstr ""
 
-#: cp/typeck.cc:7881
+#: cp/typeck.cc:7888
 #, gcc-internal-format
 msgid "list-initializer for non-class type must not be parenthesized"
 msgstr ""
 
-#: cp/typeck.cc:7893
+#: cp/typeck.cc:7900
 #, gcc-internal-format
 msgid "expression list treated as compound expression in initializer"
 msgstr ""
 
-#: cp/typeck.cc:7897
+#: cp/typeck.cc:7904
 #, gcc-internal-format
 msgid "expression list treated as compound expression in mem-initializer"
 msgstr ""
 
-#: cp/typeck.cc:7901
+#: cp/typeck.cc:7908
 #, gcc-internal-format
 msgid "expression list treated as compound expression in functional cast"
 msgstr ""
 
-#: cp/typeck.cc:7939
+#: cp/typeck.cc:7946
 #, gcc-internal-format, gfc-internal-format
 msgid "%s expression list treated as compound expression"
 msgstr ""
 
-#: cp/typeck.cc:8042
+#: cp/typeck.cc:8049
 #, gcc-internal-format
 msgid "no context to resolve type of %qE"
 msgstr ""
 
-#: cp/typeck.cc:8079
+#: cp/typeck.cc:8086
 #, gcc-internal-format
 msgid "cast from type %qT to type %qT casts away qualifiers"
 msgstr ""
 
-#: cp/typeck.cc:8085
+#: cp/typeck.cc:8092
 #, gcc-internal-format
 msgid "%<static_cast%> from type %qT to type %qT casts away qualifiers"
 msgstr ""
 
-#: cp/typeck.cc:8092
+#: cp/typeck.cc:8099
 #, gcc-internal-format
 msgid "%<reinterpret_cast%> from type %qT to type %qT casts away qualifiers"
 msgstr ""
 
-#: cp/typeck.cc:8118
+#: cp/typeck.cc:8125
 #, gcc-internal-format
 msgid "useless cast to type %q#T"
 msgstr ""
 
-#: cp/typeck.cc:8132
+#: cp/typeck.cc:8139
 #, gcc-internal-format
 msgid "type qualifiers ignored on cast result type"
 msgstr ""
 
-#: cp/typeck.cc:8575
+#: cp/typeck.cc:8582
 #, gcc-internal-format
 msgid "invalid %<static_cast%> from type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.cc:8581 cp/typeck.cc:8587 cp/typeck.cc:10299
+#: cp/typeck.cc:8588 cp/typeck.cc:8594 cp/typeck.cc:10305
 #, gcc-internal-format
 msgid "class type %qT is incomplete"
 msgstr ""
 
-#: cp/typeck.cc:8615
+#: cp/typeck.cc:8622
 msgid "converting from %qH to %qI"
 msgstr ""
 
-#: cp/typeck.cc:8690
+#: cp/typeck.cc:8697
 #, gcc-internal-format
 msgid "invalid cast of a prvalue expression of type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.cc:8760
+#: cp/typeck.cc:8767
 msgid "cast from %qH to %qI loses precision"
 msgstr ""
 
-#: cp/typeck.cc:8785
+#: cp/typeck.cc:8792
 msgid "cast between incompatible function types from %qH to %qI"
 msgstr ""
 
-#: cp/typeck.cc:8796
+#: cp/typeck.cc:8803
 msgid "cast between incompatible pointer to member types from %qH to %qI"
 msgstr ""
 
-#: cp/typeck.cc:8817 cp/typeck.cc:9007
+#: cp/typeck.cc:8824 cp/typeck.cc:9014
 msgid "cast from %qH to %qI increases required alignment of target type"
 msgstr ""
 
-#: cp/typeck.cc:8834
+#: cp/typeck.cc:8841
 #, gcc-internal-format
 msgid ""
 "casting between pointer-to-function and pointer-to-object is conditionally-"
 "supported"
 msgstr ""
 
-#: cp/typeck.cc:8848
+#: cp/typeck.cc:8855
 #, gcc-internal-format
 msgid "invalid cast from type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.cc:8921
+#: cp/typeck.cc:8928
 #, 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:8930
+#: cp/typeck.cc:8937
 #, 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:8972
+#: cp/typeck.cc:8979
 #, gcc-internal-format
 msgid "invalid %<const_cast%> of an rvalue of type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.cc:9042
+#: cp/typeck.cc:9049
 #, gcc-internal-format
 msgid "invalid %<const_cast%> from type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.cc:9143 cp/typeck.cc:9152
+#: cp/typeck.cc:9150 cp/typeck.cc:9159
 #, gcc-internal-format
 msgid "ISO C++ forbids casting to an array type %qT"
 msgstr ""
 
-#: cp/typeck.cc:9161
+#: cp/typeck.cc:9168
 #, gcc-internal-format
 msgid "invalid cast to function type %qT"
 msgstr ""
 
-#: cp/typeck.cc:9272
+#: cp/typeck.cc:9279
 #, gcc-internal-format
 msgid "moving %qE of type %qT to itself"
 msgstr ""
 
-#: cp/typeck.cc:9273 cp/typeck.cc:10819 cp/typeck.cc:10835 cp/typeck.cc:10860
-#: cp/typeck.cc:10897
+#: cp/typeck.cc:9280 cp/typeck.cc:10825 cp/typeck.cc:10841 cp/typeck.cc:10866
+#: cp/typeck.cc:10903
 #, gcc-internal-format
 msgid "remove %<std::move%> call"
 msgstr ""
 
-#: cp/typeck.cc:9533
+#: cp/typeck.cc:9540
 #, gcc-internal-format
 msgid "  in evaluation of %<%Q(%#T, %#T)%>"
 msgstr ""
 
-#: cp/typeck.cc:9593
+#: cp/typeck.cc:9600
 #, gcc-internal-format
 msgid "assigning to an array from an initializer list"
 msgstr ""
 
-#: cp/typeck.cc:9620
+#: cp/typeck.cc:9627
 #, gcc-internal-format
 msgid "incompatible types in assignment of %qT to %qT"
 msgstr ""
 
-#: cp/typeck.cc:9634
+#: cp/typeck.cc:9643
 #, gcc-internal-format
 msgid "array used as initializer"
 msgstr ""
 
-#: cp/typeck.cc:9636
+#: cp/typeck.cc:9645
 #, gcc-internal-format
 msgid "invalid array assignment"
 msgstr ""
 
-#: cp/typeck.cc:9780
+#: cp/typeck.cc:9789
 #, gcc-internal-format
 msgid "   in pointer to member function conversion"
 msgstr ""
 
-#: cp/typeck.cc:9794
+#: cp/typeck.cc:9803
 #, gcc-internal-format
 msgid "pointer to member conversion via virtual base %qT"
 msgstr ""
 
-#: cp/typeck.cc:9841 cp/typeck.cc:9860
+#: cp/typeck.cc:9850 cp/typeck.cc:9869
 #, gcc-internal-format
 msgid "   in pointer to member conversion"
 msgstr ""
 
-#: cp/typeck.cc:9941
+#: cp/typeck.cc:9950
 #, gcc-internal-format
 msgid "invalid conversion to type %qT from type %qT"
 msgstr ""
 
-#: cp/typeck.cc:10262
+#: cp/typeck.cc:10268
 msgid "cannot convert %qH to %qI in default argument"
 msgstr ""
 
-#: cp/typeck.cc:10267
+#: cp/typeck.cc:10273
 msgid "cannot convert %qH to %qI in argument passing"
 msgstr ""
 
-#: cp/typeck.cc:10276
+#: cp/typeck.cc:10282
 msgid "cannot convert %qH to %qI in initialization"
 msgstr ""
 
-#: cp/typeck.cc:10280
+#: cp/typeck.cc:10286
 msgid "cannot convert %qH to %qI in return"
 msgstr ""
 
-#: cp/typeck.cc:10285
+#: cp/typeck.cc:10291
 msgid "cannot convert %qH to %qI in assignment"
 msgstr ""
 
-#: cp/typeck.cc:10317
+#: cp/typeck.cc:10323
 #, gcc-internal-format
 msgid "parameter %qP of %qD might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.cc:10321
+#: cp/typeck.cc:10327
 #, gcc-internal-format
 msgid "parameter might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.cc:10326
+#: cp/typeck.cc:10332
 #, gcc-internal-format
 msgid "target of conversion might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.cc:10331
+#: cp/typeck.cc:10337
 #, gcc-internal-format
 msgid "target of initialization might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.cc:10341
+#: cp/typeck.cc:10347
 #, gcc-internal-format
 msgid ""
 "left-hand side of assignment might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.cc:10437
+#: cp/typeck.cc:10443
 #, gcc-internal-format
 msgid "in passing argument %P of %qD"
 msgstr ""
 
-#: cp/typeck.cc:10519
+#: cp/typeck.cc:10525
 #, gcc-internal-format
 msgid "returning reference to temporary"
 msgstr ""
 
-#: cp/typeck.cc:10522
+#: cp/typeck.cc:10528
 #, gcc-internal-format
 msgid ""
 "returning temporary %<initializer_list%> does not extend the lifetime of the "
 "underlying array"
 msgstr ""
 
-#: cp/typeck.cc:10558
+#: cp/typeck.cc:10564
 #, gcc-internal-format
 msgid "reference to local variable %qD returned"
 msgstr ""
 
-#: cp/typeck.cc:10562
+#: cp/typeck.cc:10568
 #, gcc-internal-format
 msgid ""
 "returning local %<initializer_list%> variable %qD does not extend the "
 "lifetime of the underlying array"
 msgstr ""
 
-#: cp/typeck.cc:10568
+#: cp/typeck.cc:10574
 #, gcc-internal-format
 msgid "address of label %qD returned"
 msgstr ""
 
-#: cp/typeck.cc:10572
+#: cp/typeck.cc:10578
 #, gcc-internal-format
 msgid "address of local variable %qD returned"
 msgstr ""
 
-#: cp/typeck.cc:10818
+#: cp/typeck.cc:10824
 #, gcc-internal-format
 msgid "moving a temporary object prevents copy elision"
 msgstr ""
 
-#: cp/typeck.cc:10833
+#: cp/typeck.cc:10839
 #, gcc-internal-format
 msgid "moving a local object in a return statement prevents copy elision"
 msgstr ""
 
-#: cp/typeck.cc:10859 cp/typeck.cc:10894
+#: cp/typeck.cc:10865 cp/typeck.cc:10900
 #, gcc-internal-format
 msgid "redundant move in return statement"
 msgstr ""
 
-#: cp/typeck.cc:10896
+#: cp/typeck.cc:10902
 #, gcc-internal-format
 msgid "redundant move in initialization"
 msgstr ""
 
-#: cp/typeck.cc:10932
+#: cp/typeck.cc:10938
 #, 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:10944
+#: cp/typeck.cc:10950
 #, 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:10947
+#: cp/typeck.cc:10953
 #, gcc-internal-format
 msgid "returning a value from a constructor"
 msgstr ""
 
 #. Give a helpful error message.
-#: cp/typeck.cc:10986 cp/typeck.cc:11032
+#: cp/typeck.cc:10992 cp/typeck.cc:11038
 #, gcc-internal-format
 msgid "return-statement with no value, in function returning %qT"
 msgstr ""
 
-#: cp/typeck.cc:10994
+#: cp/typeck.cc:11000
 #, gcc-internal-format
 msgid "returning initializer list"
 msgstr ""
 
-#: cp/typeck.cc:11013
+#: cp/typeck.cc:11019
 #, gcc-internal-format
 msgid "inconsistent types %qT and %qT deduced for lambda return type"
 msgstr ""
 
-#: cp/typeck.cc:11016
+#: cp/typeck.cc:11022
 #, gcc-internal-format
 msgid "inconsistent deduction for auto return type: %qT and then %qT"
 msgstr ""
 
-#: cp/typeck.cc:11051
+#: cp/typeck.cc:11057
 #, gcc-internal-format
 msgid "return-statement with a value, in function returning %qT"
 msgstr ""
 
-#: cp/typeck.cc:11080
+#: cp/typeck.cc:11086
 #, 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:11739
+#: cp/typeck.cc:11745
 #, gcc-internal-format
 msgid "using rvalue as lvalue"
 msgstr ""
@@ -66871,12 +66969,12 @@ msgstr ""
 msgid "invalid use of incomplete type %q#T"
 msgstr ""
 
-#: cp/typeck2.cc:369 rust/backend/rust-tree.cc:3903
+#: cp/typeck2.cc:369 rust/backend/rust-tree.cc:3888
 #, gcc-internal-format
 msgid "invalid use of member function %qD (did you forget the %<()%> ?)"
 msgstr ""
 
-#: cp/typeck2.cc:374 rust/backend/rust-tree.cc:3909
+#: cp/typeck2.cc:374 rust/backend/rust-tree.cc:3894
 #, gcc-internal-format
 msgid "invalid use of member %qD (did you forget the %<&%> ?)"
 msgstr ""
@@ -66906,22 +67004,22 @@ msgstr ""
 msgid "invalid use of dependent type %qT"
 msgstr ""
 
-#: cp/typeck2.cc:415 rust/backend/rust-tree.cc:3919
+#: cp/typeck2.cc:415 rust/backend/rust-tree.cc:3904
 #, gcc-internal-format
 msgid "invalid use of brace-enclosed initializer list"
 msgstr ""
 
-#: cp/typeck2.cc:423 rust/backend/rust-tree.cc:3927
+#: cp/typeck2.cc:423 rust/backend/rust-tree.cc:3912
 #, gcc-internal-format
 msgid "address of overloaded function with no contextual type information"
 msgstr ""
 
-#: cp/typeck2.cc:427 rust/backend/rust-tree.cc:3932
+#: cp/typeck2.cc:427 rust/backend/rust-tree.cc:3917
 #, gcc-internal-format
 msgid "overloaded function with no contextual type information"
 msgstr ""
 
-#: cp/typeck2.cc:430 rust/backend/rust-tree.cc:3936
+#: cp/typeck2.cc:430 rust/backend/rust-tree.cc:3921
 #, gcc-internal-format
 msgid "insufficient contextual information to determine type"
 msgstr ""
@@ -67132,43 +67230,43 @@ msgstr ""
 msgid "the address of %qD will never be %<null%>"
 msgstr ""
 
-#: d/d-codegen.cc:2165
+#: d/d-codegen.cc:2164
 #, gcc-internal-format
 msgid "need %<this%> to access member %qE"
 msgstr ""
 
-#: d/d-codegen.cc:2327
+#: d/d-codegen.cc:2303
 #, gcc-internal-format
 msgid "tried to perform floating-point modulo division on %qT"
 msgstr ""
 
-#: d/d-codegen.cc:2378
+#: d/d-codegen.cc:2354
 #, gcc-internal-format
 msgid "cannot get frame pointer to %qs"
 msgstr ""
 
 #. Should instead error on line that references `fd'.
-#: d/d-codegen.cc:2404
+#: d/d-codegen.cc:2380
 #, gcc-internal-format
 msgid "nested function missing body"
 msgstr ""
 
-#: d/d-codegen.cc:2446
+#: d/d-codegen.cc:2422
 #, gcc-internal-format
 msgid "%qs is a nested function and cannot be accessed from %qs"
 msgstr ""
 
-#: d/d-codegen.cc:2750
+#: d/d-codegen.cc:2731
 #, gcc-internal-format
 msgid "variable %qs has scoped destruction, cannot build closure"
 msgstr ""
 
-#: d/d-codegen.cc:2758
+#: d/d-codegen.cc:2739
 #, gcc-internal-format
 msgid "explicit register variable %qs cannot be used in nested function"
 msgstr ""
 
-#: d/d-codegen.cc:2983
+#: d/d-codegen.cc:2964
 #, gcc-internal-format
 msgid "forward reference to frame of %qs"
 msgstr ""
@@ -67226,37 +67324,37 @@ msgstr ""
 msgid "bad argument for %<-fmodule-file%>: %qs"
 msgstr ""
 
-#: d/d-lang.cc:714
+#: d/d-lang.cc:704
 #, gcc-internal-format
 msgid "bad argument for %<-fversion%>: %qs"
 msgstr ""
 
-#: d/d-lang.cc:1022
+#: d/d-lang.cc:1011
 #, gcc-internal-format
 msgid "%<-fonly=%> argument is different from first input file name"
 msgstr ""
 
-#: d/d-lang.cc:1202
+#: d/d-lang.cc:1191
 #, gcc-internal-format
 msgid "unable to resolve forward reference in definition"
 msgstr ""
 
-#: d/d-lang.cc:1322
+#: d/d-lang.cc:1311
 #, gcc-internal-format
 msgid "opening json file %s: %m"
 msgstr ""
 
-#: d/d-lang.cc:1333
+#: d/d-lang.cc:1322
 #, gcc-internal-format
 msgid "closing json file %s: %m"
 msgstr ""
 
-#: d/d-lang.cc:1404
+#: d/d-lang.cc:1393
 #, gcc-internal-format
 msgid "closing mixin file %s: %m"
 msgstr ""
 
-#: d/d-lang.cc:1409
+#: d/d-lang.cc:1398
 #, gcc-internal-format
 msgid "opening mixin file %s: %m"
 msgstr ""
@@ -67271,109 +67369,109 @@ msgstr ""
 msgid "cannot represent built-in %<va_list%> type in D"
 msgstr ""
 
-#: d/decl.cc:268
+#: d/decl.cc:375
 #, gcc-internal-format, gfc-internal-format
 msgid "pragma(%s) not implemented"
 msgstr ""
 
-#: d/decl.cc:375 d/decl.cc:490 d/decl.cc:564 d/decl.cc:607 d/decl.cc:646
+#: d/decl.cc:482 d/decl.cc:597 d/decl.cc:671 d/decl.cc:714 d/decl.cc:753
 #, gcc-internal-format
 msgid "had semantic errors when compiling"
 msgstr ""
 
-#: d/decl.cc:462
+#: d/decl.cc:569
 #, gcc-internal-format
 msgid "use of %qs"
 msgstr ""
 
-#: d/decl.cc:464
+#: d/decl.cc:571
 #, gcc-internal-format
 msgid "is hidden by %qs"
 msgstr ""
 
-#: d/decl.cc:467
+#: d/decl.cc:574
 #, gcc-internal-format
 msgid "use %<alias %s = %s.%s;%> to introduce base class overload set"
 msgstr ""
 
-#: d/decl.cc:704
+#: d/decl.cc:811
 #, gcc-internal-format
 msgid "size is too large"
 msgstr ""
 
-#: d/decl.cc:1327
+#: d/decl.cc:1374
 #, gcc-internal-format
 msgid "function requires a dual-context, which is not yet supported by GDC"
 msgstr ""
 
-#: d/decl.cc:1498
+#: d/decl.cc:1551
 #, gcc-internal-format
 msgid "explicit register variable %qs declared %<extern%>"
 msgstr ""
 
-#: d/decl.cc:1501
+#: d/decl.cc:1554
 #, gcc-internal-format
 msgid "explicit register variable %qs declared thread local"
 msgstr ""
 
-#: d/decl.cc:1714
+#: d/decl.cc:1767
 #, gcc-internal-format
 msgid ""
 "mismatch between declaration %qE size (%wd) and its initializer size (%wd)"
 msgstr ""
 
-#: d/expr.cc:528
+#: d/expr.cc:553
 #, gcc-internal-format
 msgid "cannot handle comparison of type %<%s == %s%>"
 msgstr ""
 
 #. Static arrays have already been handled by the front-end.
-#: d/expr.cc:1281
+#: d/expr.cc:1306
 #, gcc-internal-format
 msgid "unexpected type for array length: %qs"
 msgstr ""
 
-#: d/expr.cc:1416
+#: d/expr.cc:1441
 #, gcc-internal-format
 msgid "don%'t know how to delete %qs"
 msgstr ""
 
-#: d/expr.cc:1440
+#: d/expr.cc:1465
 #, gcc-internal-format
 msgid "%qs is not an associative array"
 msgstr ""
 
-#: d/expr.cc:1724 d/expr.cc:2100
+#: d/expr.cc:1749 d/expr.cc:2125
 #, gcc-internal-format
 msgid "need %<this%> to access member %qs"
 msgstr ""
 
-#: d/expr.cc:1800
+#: d/expr.cc:1825
 #, gcc-internal-format
 msgid "delegates are only for non-static functions"
 msgstr ""
 
-#: d/expr.cc:1872
+#: d/expr.cc:1897
 #, gcc-internal-format
 msgid "%qs is not a field, but a %qs"
 msgstr ""
 
-#: d/expr.cc:2136
+#: d/expr.cc:2161
 #, gcc-internal-format
 msgid "recursive reference %qs"
 msgstr ""
 
-#: d/expr.cc:2155 d/expr.cc:3051
+#: d/expr.cc:2180 d/expr.cc:3075
 #, gcc-internal-format
 msgid "non-constant expression %qs"
 msgstr ""
 
-#: d/expr.cc:3018
+#: d/expr.cc:3042
 #, gcc-internal-format
 msgid "%qs is not an expression"
 msgstr ""
 
-#: d/expr.cc:3025
+#: d/expr.cc:3049
 #, gcc-internal-format
 msgid "type %qs is not an expression"
 msgstr ""
@@ -67430,27 +67528,27 @@ msgstr ""
 msgid "label %s referenced outside of any function"
 msgstr ""
 
-#: d/toir.cc:803
+#: d/toir.cc:804
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot handle switch condition of type %s"
 msgstr ""
 
-#: d/toir.cc:1180
+#: d/toir.cc:1181
 #, gcc-internal-format
 msgid "exception handling disabled; use %<-fexceptions%> to enable"
 msgstr ""
 
-#: d/toir.cc:1187
+#: d/toir.cc:1188
 #, gcc-internal-format
 msgid "cannot throw C++ classes"
 msgstr ""
 
-#: d/toir.cc:1189
+#: d/toir.cc:1190
 #, gcc-internal-format
 msgid "cannot throw COM objects"
 msgstr ""
 
-#: d/toir.cc:1322
+#: d/toir.cc:1323
 #, gcc-internal-format
 msgid "D inline assembler statements are not supported in GDC."
 msgstr ""
@@ -67670,31 +67768,31 @@ msgid ""
 "%s at %L"
 msgstr ""
 
-#: fortran/arith.cc:2145 fortran/arith.cc:2263 fortran/arith.cc:2326
-#: fortran/arith.cc:2381 fortran/arith.cc:2444 fortran/arith.cc:2516
-#: fortran/arith.cc:2586
+#: fortran/arith.cc:2145 fortran/arith.cc:2264 fortran/arith.cc:2327
+#: fortran/arith.cc:2382 fortran/arith.cc:2445 fortran/arith.cc:2517
+#: fortran/arith.cc:2587
 #, gcc-internal-format
 msgid "Conversion from %qs to %qs at %L"
 msgstr ""
 
 #: fortran/arith.cc:2177 fortran/arith.cc:2213 fortran/arith.cc:2255
-#: fortran/arith.cc:2316 fortran/arith.cc:2371 fortran/arith.cc:2434
-#: fortran/arith.cc:2506 fortran/arith.cc:2578
+#: fortran/arith.cc:2317 fortran/arith.cc:2372 fortran/arith.cc:2435
+#: fortran/arith.cc:2507 fortran/arith.cc:2579
 #, gcc-internal-format
 msgid "Change of value in conversion from %qs to %qs at %L"
 msgstr ""
 
-#: fortran/arith.cc:2420 fortran/arith.cc:2492
+#: fortran/arith.cc:2421 fortran/arith.cc:2493
 #, gcc-internal-format
 msgid "Non-zero imaginary part discarded in conversion from %qs to %qs at %L"
 msgstr ""
 
-#: fortran/arith.cc:2671
+#: fortran/arith.cc:2672
 #, gcc-internal-format
 msgid "The Hollerith constant at %L is truncated in conversion to %qs"
 msgstr ""
 
-#: fortran/arith.cc:2700
+#: fortran/arith.cc:2701
 #, gcc-internal-format, gfc-internal-format
 msgid "The character constant at %L is truncated in conversion to %s"
 msgstr ""
@@ -68031,7 +68129,7 @@ msgstr ""
 msgid "Arguments of %qs at %L and %L cannot both be BOZ literal constants"
 msgstr ""
 
-#: fortran/check.cc:123 fortran/resolve.cc:11074
+#: fortran/check.cc:123 fortran/resolve.cc:11138
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid use of BOZ literal constant at %L"
 msgstr ""
@@ -69205,12 +69303,12 @@ msgstr ""
 
 #. Since the extension field is 8 bit wide, we can only have
 #. up to 255 extension levels.
-#: fortran/class.cc:782 fortran/decl.cc:4055 fortran/decl.cc:10735
+#: fortran/class.cc:795 fortran/decl.cc:4055 fortran/decl.cc:10732
 #, gcc-internal-format
 msgid "Maximum extension level reached with type %qs at %L"
 msgstr ""
 
-#: fortran/class.cc:2965 fortran/class.cc:3039
+#: fortran/class.cc:3055 fortran/class.cc:3129
 #, gcc-internal-format
 msgid "%qs of %qs is PRIVATE at %L"
 msgstr ""
@@ -69245,12 +69343,12 @@ msgstr ""
 msgid "Initialization string at %L was truncated to fit the variable (%ld/%ld)"
 msgstr ""
 
-#: fortran/data.cc:188 fortran/resolve.cc:5199
+#: fortran/data.cc:188 fortran/resolve.cc:5219
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L is less than one"
 msgstr ""
 
-#: fortran/data.cc:194 fortran/resolve.cc:5229
+#: fortran/data.cc:194 fortran/resolve.cc:5249
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L exceeds the string length"
 msgstr ""
@@ -69440,7 +69538,7 @@ msgstr ""
 msgid "deferred type parameter at %C"
 msgstr ""
 
-#: fortran/decl.cc:1159 fortran/resolve.cc:12680
+#: fortran/decl.cc:1159 fortran/resolve.cc:12926
 #, gcc-internal-format, gfc-internal-format
 msgid "Scalar INTEGER expression expected at %L"
 msgstr ""
@@ -69805,7 +69903,7 @@ msgstr ""
 msgid "%qs entity cannot have an initializer at %C"
 msgstr ""
 
-#: fortran/decl.cc:2895 fortran/decl.cc:8966
+#: fortran/decl.cc:2895 fortran/decl.cc:8962
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate array spec for Cray pointee at %C"
 msgstr ""
@@ -69840,7 +69938,7 @@ msgstr ""
 msgid "Pointer initialization at %C requires %<=>%>, not %<=%>"
 msgstr ""
 
-#: fortran/decl.cc:3039 fortran/decl.cc:10909
+#: fortran/decl.cc:3039 fortran/decl.cc:10906
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected an initialization expression at %C"
 msgstr ""
@@ -70224,7 +70322,7 @@ msgstr ""
 msgid "CONTIGUOUS attribute at %C"
 msgstr ""
 
-#: fortran/decl.cc:5778 fortran/decl.cc:9268
+#: fortran/decl.cc:5778 fortran/decl.cc:9264
 #, gcc-internal-format, gfc-internal-format
 msgid "PROTECTED at %C only allowed in specification part of a module"
 msgstr ""
@@ -70481,12 +70579,12 @@ msgstr ""
 msgid "Procedure %qs at %L already has basic type of %s"
 msgstr ""
 
-#: fortran/decl.cc:7198 fortran/decl.cc:7386 fortran/decl.cc:11393
+#: fortran/decl.cc:7198 fortran/decl.cc:7386 fortran/decl.cc:11390
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in PROCEDURE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:7247 fortran/decl.cc:11293
+#: fortran/decl.cc:7247 fortran/decl.cc:11290
 #, gcc-internal-format
 msgid "Expected %<::%> after binding-attributes at %C"
 msgstr ""
@@ -70511,7 +70609,7 @@ msgstr ""
 msgid "PROCEDURE at %C must be in a generic interface"
 msgstr ""
 
-#: fortran/decl.cc:7357 fortran/decl.cc:10033
+#: fortran/decl.cc:7357 fortran/decl.cc:10030
 #, gcc-internal-format, gfc-internal-format
 msgid "double colon in MODULE PROCEDURE statement at %L"
 msgstr ""
@@ -70730,584 +70828,579 @@ msgstr ""
 msgid "Array specification must be deferred at %L"
 msgstr ""
 
-#: fortran/decl.cc:8754
-#, gcc-internal-format, gfc-internal-format
-msgid "Duplicate DIMENSION attribute at %C"
-msgstr ""
-
-#: fortran/decl.cc:8846
+#: fortran/decl.cc:8842
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected character in variable list at %C"
 msgstr ""
 
-#: fortran/decl.cc:8883
+#: fortran/decl.cc:8879
 #, gcc-internal-format
 msgid "Expected %<(%> at %C"
 msgstr ""
 
-#: fortran/decl.cc:8897 fortran/decl.cc:8937
+#: fortran/decl.cc:8893 fortran/decl.cc:8933
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected variable name at %C"
 msgstr ""
 
-#: fortran/decl.cc:8913
+#: fortran/decl.cc:8909
 #, gcc-internal-format, gfc-internal-format
 msgid "Cray pointer at %C must be an integer"
 msgstr ""
 
-#: fortran/decl.cc:8917
+#: fortran/decl.cc:8913
 #, 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:8923
+#: fortran/decl.cc:8919
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected \",\" at %C"
 msgstr ""
 
-#: fortran/decl.cc:8962
+#: fortran/decl.cc:8958
 #, gcc-internal-format
 msgid "Cannot set Cray pointee array spec."
 msgstr ""
 
-#: fortran/decl.cc:8986
+#: fortran/decl.cc:8982
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected \")\" at %C"
 msgstr ""
 
-#: fortran/decl.cc:8998
+#: fortran/decl.cc:8994
 #, gcc-internal-format
 msgid "Expected %<,%> or end of statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9024
+#: fortran/decl.cc:9020
 #, gcc-internal-format, gfc-internal-format
 msgid "INTENT is not allowed inside of BLOCK at %C"
 msgstr ""
 
-#: fortran/decl.cc:9056
+#: fortran/decl.cc:9052
 #, gcc-internal-format, gfc-internal-format
 msgid "OPTIONAL is not allowed inside of BLOCK at %C"
 msgstr ""
 
-#: fortran/decl.cc:9075
+#: fortran/decl.cc:9071
 #, gcc-internal-format
 msgid "Cray pointer declaration at %C requires %<-fcray-pointer%> flag"
 msgstr ""
 
-#: fortran/decl.cc:9114
+#: fortran/decl.cc:9110
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTIGUOUS statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9212
+#: fortran/decl.cc:9208
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Access specification of the %s operator at %C has already been specified"
 msgstr ""
 
-#: fortran/decl.cc:9228
+#: fortran/decl.cc:9224
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Access specification of the .%s. operator at %C has already been specified"
 msgstr ""
 
-#: fortran/decl.cc:9276
+#: fortran/decl.cc:9272
 #, gcc-internal-format, gfc-internal-format
 msgid "PROTECTED statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9310
+#: fortran/decl.cc:9306
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in PROTECTED statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9337 fortran/decl.cc:9362
+#: fortran/decl.cc:9333 fortran/decl.cc:9358
 #, 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:9383 fortran/decl.cc:9403
+#: fortran/decl.cc:9379 fortran/decl.cc:9399
 #, 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:9425
+#: fortran/decl.cc:9421
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected variable name at %C in PARAMETER statement"
 msgstr ""
 
-#: fortran/decl.cc:9432
+#: fortran/decl.cc:9428
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected = sign in PARAMETER statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9438
+#: fortran/decl.cc:9434
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected expression at %C in PARAMETER statement"
 msgstr ""
 
-#: fortran/decl.cc:9458
+#: fortran/decl.cc:9454
 #, 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:9483
+#: fortran/decl.cc:9479
 #, gcc-internal-format, gfc-internal-format
 msgid "PARAMETER without '()' at %C"
 msgstr ""
 
-#: fortran/decl.cc:9499
+#: fortran/decl.cc:9495
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected characters in PARAMETER statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9518 fortran/decl.cc:9574
+#: fortran/decl.cc:9514 fortran/decl.cc:9570
 #, gcc-internal-format
 msgid "%s at %C is a DEC extension, enable with %<-fdec-static%>"
 msgstr ""
 
-#: fortran/decl.cc:9553
+#: fortran/decl.cc:9549
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected entity-list in AUTOMATIC statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9560
+#: fortran/decl.cc:9556
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in AUTOMATIC statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9609
+#: fortran/decl.cc:9605
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected entity-list in STATIC statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9616
+#: fortran/decl.cc:9612
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in STATIC statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9635
+#: fortran/decl.cc:9631
 #, gcc-internal-format, gfc-internal-format
 msgid "Blanket SAVE statement at %C follows previous SAVE statement"
 msgstr ""
 
-#: fortran/decl.cc:9646
+#: fortran/decl.cc:9642
 #, gcc-internal-format, gfc-internal-format
 msgid "SAVE statement at %C follows blanket SAVE statement"
 msgstr ""
 
-#: fortran/decl.cc:9694
+#: fortran/decl.cc:9690
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in SAVE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9711
+#: fortran/decl.cc:9707
 #, gcc-internal-format, gfc-internal-format
 msgid "VALUE is not allowed inside of BLOCK at %C"
 msgstr ""
 
-#: fortran/decl.cc:9715
+#: fortran/decl.cc:9711
 #, gcc-internal-format, gfc-internal-format
 msgid "VALUE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9753
+#: fortran/decl.cc:9749
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in VALUE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9765
+#: fortran/decl.cc:9761
 #, gcc-internal-format, gfc-internal-format
 msgid "VOLATILE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9792
+#: fortran/decl.cc:9788
 #, gcc-internal-format
 msgid ""
 "Specifying VOLATILE for coarray variable %qs at %C, which is use-/host-"
 "associated"
 msgstr ""
 
-#: fortran/decl.cc:9817
+#: fortran/decl.cc:9813
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in VOLATILE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9829
+#: fortran/decl.cc:9825
 #, gcc-internal-format, gfc-internal-format
 msgid "ASYNCHRONOUS statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9873
+#: fortran/decl.cc:9869
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in ASYNCHRONOUS statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:9898
+#: fortran/decl.cc:9894
 #, gcc-internal-format, gfc-internal-format
 msgid "MODULE PROCEDURE declaration at %C"
 msgstr ""
 
-#: fortran/decl.cc:10008
+#: fortran/decl.cc:10005
 #, gcc-internal-format, gfc-internal-format
 msgid "MODULE PROCEDURE at %C must be in a generic module interface"
 msgstr ""
 
-#: fortran/decl.cc:10066
+#: fortran/decl.cc:10063
 #, gcc-internal-format, gfc-internal-format
 msgid "Intrinsic procedure at %L cannot be a MODULE PROCEDURE"
 msgstr ""
 
-#: fortran/decl.cc:10115
+#: fortran/decl.cc:10112
 #, gcc-internal-format, gfc-internal-format
 msgid "Ambiguous symbol in TYPE definition at %C"
 msgstr ""
 
-#: fortran/decl.cc:10124
+#: fortran/decl.cc:10121
 #, gcc-internal-format
 msgid "Symbol %qs at %C has not been previously defined"
 msgstr ""
 
-#: fortran/decl.cc:10130
+#: fortran/decl.cc:10127
 #, gcc-internal-format
 msgid "%qs in EXTENDS expression at %C is not a derived type"
 msgstr ""
 
-#: fortran/decl.cc:10137
+#: fortran/decl.cc:10134
 #, gcc-internal-format
 msgid "%qs cannot be extended at %C because it is BIND(C)"
 msgstr ""
 
-#: fortran/decl.cc:10144
+#: fortran/decl.cc:10141
 #, gcc-internal-format
 msgid "%qs cannot be extended at %C because it is a SEQUENCE type"
 msgstr ""
 
-#: fortran/decl.cc:10167
+#: fortran/decl.cc:10164
 #, 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:10179
+#: fortran/decl.cc:10176
 #, 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:10200
+#: fortran/decl.cc:10197
 #, gcc-internal-format, gfc-internal-format
 msgid "ABSTRACT type at %C"
 msgstr ""
 
-#: fortran/decl.cc:10246
+#: fortran/decl.cc:10243
 #, gcc-internal-format, gfc-internal-format
 msgid "Failed to create structure type '%s' at %C"
 msgstr ""
 
-#: fortran/decl.cc:10252
+#: fortran/decl.cc:10249
 #, gcc-internal-format
 msgid "Type definition of %qs at %C was already defined at %L"
 msgstr ""
 
-#: fortran/decl.cc:10299
+#: fortran/decl.cc:10296
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after MAP statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:10332
+#: fortran/decl.cc:10329
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after UNION statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:10367
+#: fortran/decl.cc:10364
 #, gcc-internal-format
 msgid "%s at %C is a DEC extension, enable with %<-fdec-structure%>"
 msgstr ""
 
-#: fortran/decl.cc:10381
+#: fortran/decl.cc:10378
 #, gcc-internal-format, gfc-internal-format
 msgid "Structure name expected in non-nested structure declaration at %C"
 msgstr ""
 
-#: fortran/decl.cc:10399
+#: fortran/decl.cc:10396
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after non-nested STRUCTURE statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:10406
+#: fortran/decl.cc:10403
 #, gcc-internal-format
 msgid "Structure name %qs at %C cannot be the same as an intrinsic type"
 msgstr ""
 
-#: fortran/decl.cc:10569
+#: fortran/decl.cc:10566
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected :: in TYPE definition at %C"
 msgstr ""
 
-#: fortran/decl.cc:10582
+#: fortran/decl.cc:10579
 #, gcc-internal-format, gfc-internal-format
 msgid "Mangled derived type definition at %C"
 msgstr ""
 
-#: fortran/decl.cc:10611
+#: fortran/decl.cc:10608
 #, gcc-internal-format
 msgid "Type name %qs at %C cannot be the same as an intrinsic type"
 msgstr ""
 
-#: fortran/decl.cc:10622
+#: fortran/decl.cc:10619
 #, gcc-internal-format
 msgid "Derived type name %qs at %C already has a basic type of %s"
 msgstr ""
 
-#: fortran/decl.cc:10625
+#: fortran/decl.cc:10622
 #, gcc-internal-format
 msgid "Derived type name %qs at %C already has a basic type"
 msgstr ""
 
-#: fortran/decl.cc:10640
+#: fortran/decl.cc:10637
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L cannot be a derived type at %C"
 msgstr ""
 
-#: fortran/decl.cc:10649
+#: fortran/decl.cc:10646
 #, gcc-internal-format
 msgid "Derived type definition of %qs at %C has already been defined"
 msgstr ""
 
-#: fortran/decl.cc:10712
+#: fortran/decl.cc:10709
 #, gcc-internal-format, gfc-internal-format
 msgid "Garbage after PARAMETERIZED TYPE declaration at %C"
 msgstr ""
 
-#: fortran/decl.cc:10795
+#: fortran/decl.cc:10792
 #, gcc-internal-format, gfc-internal-format
 msgid "Cray Pointee at %C cannot be assumed shape array"
 msgstr ""
 
-#: fortran/decl.cc:10815
+#: fortran/decl.cc:10812
 #, gcc-internal-format, gfc-internal-format
 msgid "ENUM and ENUMERATOR at %C"
 msgstr ""
 
-#: fortran/decl.cc:10847
+#: fortran/decl.cc:10844
 #, gcc-internal-format, gfc-internal-format
 msgid "Enumerator exceeds the C integer type at %C"
 msgstr ""
 
-#: fortran/decl.cc:10926
+#: fortran/decl.cc:10923
 #, gcc-internal-format, gfc-internal-format
 msgid "ENUMERATOR %L not initialized with integer expression"
 msgstr ""
 
-#: fortran/decl.cc:10974
+#: fortran/decl.cc:10971
 #, gcc-internal-format, gfc-internal-format
 msgid "ENUM definition statement expected before %C"
 msgstr ""
 
-#: fortran/decl.cc:11010
+#: fortran/decl.cc:11007
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in ENUMERATOR definition at %C"
 msgstr ""
 
-#: fortran/decl.cc:11057 fortran/decl.cc:11072
+#: fortran/decl.cc:11054 fortran/decl.cc:11069
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate access-specifier at %C"
 msgstr ""
 
-#: fortran/decl.cc:11092
+#: fortran/decl.cc:11089
 #, gcc-internal-format, gfc-internal-format
 msgid "Binding attributes already specify passing, illegal NOPASS at %C"
 msgstr ""
 
-#: fortran/decl.cc:11112
+#: fortran/decl.cc:11109
 #, gcc-internal-format, gfc-internal-format
 msgid "Binding attributes already specify passing, illegal PASS at %C"
 msgstr ""
 
-#: fortran/decl.cc:11139
+#: fortran/decl.cc:11136
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate POINTER attribute at %C"
 msgstr ""
 
-#: fortran/decl.cc:11157
+#: fortran/decl.cc:11154
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate NON_OVERRIDABLE at %C"
 msgstr ""
 
-#: fortran/decl.cc:11173
+#: fortran/decl.cc:11170
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate DEFERRED at %C"
 msgstr ""
 
-#: fortran/decl.cc:11186
+#: fortran/decl.cc:11183
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected access-specifier at %C"
 msgstr ""
 
-#: fortran/decl.cc:11188
+#: fortran/decl.cc:11185
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected binding attribute at %C"
 msgstr ""
 
-#: fortran/decl.cc:11196
+#: fortran/decl.cc:11193
 #, gcc-internal-format, gfc-internal-format
 msgid "NON_OVERRIDABLE and DEFERRED cannot both appear at %C"
 msgstr ""
 
-#: fortran/decl.cc:11209
+#: fortran/decl.cc:11206
 #, gcc-internal-format, gfc-internal-format
 msgid "POINTER attribute is required for procedure pointer component at %C"
 msgstr ""
 
-#: fortran/decl.cc:11251
+#: fortran/decl.cc:11248
 #, gcc-internal-format
 msgid "Interface-name expected after %<(%> at %C"
 msgstr ""
 
-#: fortran/decl.cc:11257
+#: fortran/decl.cc:11254
 #, gcc-internal-format
 msgid "%<)%> expected at %C"
 msgstr ""
 
-#: fortran/decl.cc:11277
+#: fortran/decl.cc:11274
 #, gcc-internal-format, gfc-internal-format
 msgid "Interface must be specified for DEFERRED binding at %C"
 msgstr ""
 
-#: fortran/decl.cc:11282
+#: fortran/decl.cc:11279
 #, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE(interface) at %C should be declared DEFERRED"
 msgstr ""
 
-#: fortran/decl.cc:11305
+#: fortran/decl.cc:11302
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected binding name at %C"
 msgstr ""
 
-#: fortran/decl.cc:11309
+#: fortran/decl.cc:11306
 #, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE list at %C"
 msgstr ""
 
-#: fortran/decl.cc:11321
+#: fortran/decl.cc:11318
 #, gcc-internal-format
 msgid "%<=> target%> is invalid for DEFERRED binding at %C"
 msgstr ""
 
-#: fortran/decl.cc:11327
+#: fortran/decl.cc:11324
 #, gcc-internal-format
 msgid "%<::%> needed in PROCEDURE binding with explicit target at %C"
 msgstr ""
 
-#: fortran/decl.cc:11337
+#: fortran/decl.cc:11334
 #, gcc-internal-format
 msgid "Expected binding target after %<=>%> at %C"
 msgstr ""
 
-#: fortran/decl.cc:11354
+#: fortran/decl.cc:11351
 #, gcc-internal-format
 msgid "Type %qs containing DEFERRED binding at %C is not ABSTRACT"
 msgstr ""
 
-#: fortran/decl.cc:11365
+#: fortran/decl.cc:11362
 #, gcc-internal-format
 msgid ""
 "There is already a procedure with binding name %qs for the derived type %qs "
 "at %C"
 msgstr ""
 
-#: fortran/decl.cc:11416
+#: fortran/decl.cc:11413
 #, gcc-internal-format, gfc-internal-format
 msgid "GENERIC at %C must be inside a derived-type CONTAINS"
 msgstr ""
 
-#: fortran/decl.cc:11436
+#: fortran/decl.cc:11433
 #, gcc-internal-format
 msgid "Expected %<::%> at %C"
 msgstr ""
 
-#: fortran/decl.cc:11448
+#: fortran/decl.cc:11445
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected generic name or operator descriptor at %C"
 msgstr ""
 
-#: fortran/decl.cc:11469
+#: fortran/decl.cc:11466
 #, gcc-internal-format, gfc-internal-format
 msgid "Malformed GENERIC statement at %C"
 msgstr ""
 
-#: fortran/decl.cc:11480
+#: fortran/decl.cc:11477
 #, gcc-internal-format
 msgid "Expected %<=>%> at %C"
 msgstr ""
 
-#: fortran/decl.cc:11516
+#: fortran/decl.cc:11513
 #, 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:11524
+#: fortran/decl.cc:11521
 #, gcc-internal-format
 msgid "Binding at %C must have the same access as already defined binding %qs"
 msgstr ""
 
-#: fortran/decl.cc:11572
+#: fortran/decl.cc:11569
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected specific binding name at %C"
 msgstr ""
 
-#: fortran/decl.cc:11582
+#: fortran/decl.cc:11579
 #, gcc-internal-format
 msgid "%qs already defined as specific binding for the generic %qs at %C"
 msgstr ""
 
-#: fortran/decl.cc:11600
+#: fortran/decl.cc:11597
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after GENERIC binding at %C"
 msgstr ""
 
-#: fortran/decl.cc:11635
+#: fortran/decl.cc:11632
 #, gcc-internal-format, gfc-internal-format
 msgid "FINAL declaration at %C must be inside a derived type CONTAINS section"
 msgstr ""
 
-#: fortran/decl.cc:11646
+#: fortran/decl.cc:11643
 #, 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:11668
+#: fortran/decl.cc:11665
 #, gcc-internal-format, gfc-internal-format
 msgid "Empty FINAL at %C"
 msgstr ""
 
-#: fortran/decl.cc:11675
+#: fortran/decl.cc:11672
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected module procedure name at %C"
 msgstr ""
 
-#: fortran/decl.cc:11685
+#: fortran/decl.cc:11682
 #, gcc-internal-format
 msgid "Expected %<,%> at %C"
 msgstr ""
 
-#: fortran/decl.cc:11691
+#: fortran/decl.cc:11688
 #, gcc-internal-format
 msgid "Unknown procedure name %qs at %C"
 msgstr ""
 
-#: fortran/decl.cc:11704
+#: fortran/decl.cc:11701
 #, gcc-internal-format
 msgid "%qs at %C is already defined as FINAL procedure"
 msgstr ""
@@ -71400,17 +71493,17 @@ msgstr ""
 msgid "show_code_node(): Bad statement code"
 msgstr ""
 
-#: fortran/dump-parse-tree.cc:3816 fortran/dump-parse-tree.cc:3921
+#: fortran/dump-parse-tree.cc:3821 fortran/dump-parse-tree.cc:3926
 #, gcc-internal-format
 msgid "Cannot convert %qs to interoperable type at %L"
 msgstr ""
 
-#: fortran/error.cc:381
+#: fortran/error.cc:388
 #, gcc-internal-format, gfc-internal-format
 msgid "    Included at %s:%d:"
 msgstr ""
 
-#: fortran/error.cc:467
+#: fortran/error.cc:474
 #, gcc-internal-format
 msgid "<During initialization>\n"
 msgstr ""
@@ -71425,471 +71518,471 @@ msgstr ""
 msgid "gfc_copy_expr(): Bad expr node"
 msgstr ""
 
-#: fortran/expr.cc:510
+#: fortran/expr.cc:514
 #, gcc-internal-format
 msgid "free_expr0(): Bad expr type"
 msgstr ""
 
-#: fortran/expr.cc:658 fortran/expr.cc:660 fortran/expr.cc:711
-#: fortran/expr.cc:713
+#: fortran/expr.cc:669 fortran/expr.cc:671 fortran/expr.cc:722
+#: fortran/expr.cc:724
 #, gcc-internal-format, gfc-internal-format
 msgid "Constant expression required at %C"
 msgstr ""
 
-#: fortran/expr.cc:667 fortran/expr.cc:669 fortran/expr.cc:720
-#: fortran/expr.cc:722
+#: fortran/expr.cc:678 fortran/expr.cc:680 fortran/expr.cc:731
+#: fortran/expr.cc:733
 #, gcc-internal-format, gfc-internal-format
 msgid "Integer expression required at %C"
 msgstr ""
 
-#: fortran/expr.cc:677 fortran/expr.cc:679 fortran/expr.cc:733
-#: fortran/expr.cc:735
+#: fortran/expr.cc:688 fortran/expr.cc:690 fortran/expr.cc:744
+#: fortran/expr.cc:746
 #, gcc-internal-format, gfc-internal-format
 msgid "Integer value too large in expression at %C"
 msgstr ""
 
-#: fortran/expr.cc:1098
+#: fortran/expr.cc:1109
 #, gcc-internal-format
 msgid "gfc_is_constant_expr(): Unknown expression type"
 msgstr ""
 
-#: fortran/expr.cc:1293
+#: fortran/expr.cc:1304
 #, gcc-internal-format
 msgid "simplify_intrinsic_op(): Bad operator"
 msgstr ""
 
-#: fortran/expr.cc:1398
+#: fortran/expr.cc:1409
 #, gcc-internal-format, gfc-internal-format
 msgid "Index in dimension %d is out of bounds at %L"
 msgstr ""
 
-#: fortran/expr.cc:1596 fortran/expr.cc:1647
+#: fortran/expr.cc:1607 fortran/expr.cc:1658
 #, gcc-internal-format, gfc-internal-format
 msgid "index in dimension %d is out of bounds at %L"
 msgstr ""
 
-#: fortran/expr.cc:1723
+#: fortran/expr.cc:1734
 #, 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:1733
+#: fortran/expr.cc:1744
 #, gcc-internal-format, gfc-internal-format
 msgid "Error in array constructor referenced at %L"
 msgstr ""
 
-#: fortran/expr.cc:1837 fortran/primary.cc:2292 fortran/primary.cc:2436
+#: fortran/expr.cc:1848 fortran/primary.cc:2292 fortran/primary.cc:2436
 #, gcc-internal-format, gfc-internal-format
 msgid "LEN part_ref at %C"
 msgstr ""
 
-#: fortran/expr.cc:1855 fortran/primary.cc:2287 fortran/primary.cc:2451
+#: fortran/expr.cc:1866 fortran/primary.cc:2287 fortran/primary.cc:2451
 #, gcc-internal-format, gfc-internal-format
 msgid "KIND part_ref at %C"
 msgstr ""
 
-#: fortran/expr.cc:1866
+#: fortran/expr.cc:1877
 #, gcc-internal-format, gfc-internal-format
 msgid "RE part_ref at %C"
 msgstr ""
 
-#: fortran/expr.cc:1878
+#: fortran/expr.cc:1889
 #, gcc-internal-format, gfc-internal-format
 msgid "IM part_ref at %C"
 msgstr ""
 
-#: fortran/expr.cc:2526
+#: fortran/expr.cc:2537
 #, gcc-internal-format, gfc-internal-format
 msgid "elemental function arguments at %C are not compliant"
 msgstr ""
 
-#: fortran/expr.cc:2570
+#: fortran/expr.cc:2581
 #, gcc-internal-format, gfc-internal-format
 msgid "Numeric or CHARACTER operands are required in expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:2595
+#: fortran/expr.cc:2606
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Concatenation operator in expression at %L must have two CHARACTER operands"
 msgstr ""
 
-#: fortran/expr.cc:2602
+#: fortran/expr.cc:2613
 #, gcc-internal-format, gfc-internal-format
 msgid "Concat operator at %L must concatenate strings of the same kind"
 msgstr ""
 
-#: fortran/expr.cc:2612
+#: fortran/expr.cc:2623
 #, gcc-internal-format, gfc-internal-format
 msgid ".NOT. operator in expression at %L must have a LOGICAL operand"
 msgstr ""
 
-#: fortran/expr.cc:2628
+#: fortran/expr.cc:2639
 #, gcc-internal-format, gfc-internal-format
 msgid "LOGICAL operands are required in expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:2639
+#: fortran/expr.cc:2650
 #, gcc-internal-format, gfc-internal-format
 msgid "Only intrinsic operators can be used in expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:2647
+#: fortran/expr.cc:2658
 #, gcc-internal-format, gfc-internal-format
 msgid "Numeric operands are required in expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:2670
+#: fortran/expr.cc:2681
 #, gcc-internal-format
 msgid ""
 "Invalid initialization expression for ALLOCATABLE component %qs in structure "
 "constructor at %L"
 msgstr ""
 
-#: fortran/expr.cc:2807
+#: fortran/expr.cc:2818
 #, gcc-internal-format
 msgid ""
 "Assumed or deferred character length variable %qs in constant expression at "
 "%L"
 msgstr ""
 
-#: fortran/expr.cc:2882
+#: fortran/expr.cc:2893
 #, gcc-internal-format
 msgid ""
 "transformational intrinsic %qs at %L is not permitted in an initialization "
 "expression"
 msgstr ""
 
-#: fortran/expr.cc:2913
+#: fortran/expr.cc:2924
 #, gcc-internal-format, gfc-internal-format
 msgid "Evaluation of nonstandard initialization expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:2990 fortran/resolve.cc:2814
+#: fortran/expr.cc:3001 fortran/resolve.cc:2816
 #, gcc-internal-format
 msgid ""
 "Function %qs in initialization expression at %L must be an intrinsic function"
 msgstr ""
 
-#: fortran/expr.cc:3002
+#: fortran/expr.cc:3013
 #, gcc-internal-format
 msgid ""
 "Intrinsic function %qs at %L is not permitted in an initialization expression"
 msgstr ""
 
-#: fortran/expr.cc:3041
+#: fortran/expr.cc:3052
 #, gcc-internal-format
 msgid "PARAMETER %qs is used at %L before its definition is complete"
 msgstr ""
 
-#: fortran/expr.cc:3061
+#: fortran/expr.cc:3072
 #, gcc-internal-format
 msgid ""
 "Assumed size array %qs at %L is not permitted in an initialization expression"
 msgstr ""
 
-#: fortran/expr.cc:3067
+#: fortran/expr.cc:3078
 #, gcc-internal-format
 msgid ""
 "Assumed shape array %qs at %L is not permitted in an initialization "
 "expression"
 msgstr ""
 
-#: fortran/expr.cc:3076
+#: fortran/expr.cc:3087
 #, gcc-internal-format
 msgid ""
 "Assumed-shape array %qs at %L is not permitted in an initialization "
 "expression"
 msgstr ""
 
-#: fortran/expr.cc:3080
+#: fortran/expr.cc:3091
 #, gcc-internal-format
 msgid ""
 "Deferred array %qs at %L is not permitted in an initialization expression"
 msgstr ""
 
-#: fortran/expr.cc:3086
+#: fortran/expr.cc:3097
 #, gcc-internal-format
 msgid ""
 "Array %qs at %L is a variable, which does not reduce to a constant expression"
 msgstr ""
 
-#: fortran/expr.cc:3092
+#: fortran/expr.cc:3103
 #, gcc-internal-format
 msgid ""
 "Assumed-rank array %qs at %L is not permitted in an initialization expression"
 msgstr ""
 
-#: fortran/expr.cc:3102
+#: fortran/expr.cc:3113
 #, 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:3156
+#: fortran/expr.cc:3167
 #, gcc-internal-format
 msgid "check_init_expr(): Unknown expression type"
 msgstr ""
 
-#: fortran/expr.cc:3291
+#: fortran/expr.cc:3302
 #, gcc-internal-format
 msgid "Specification function %qs at %L cannot be a statement function"
 msgstr ""
 
-#: fortran/expr.cc:3298
+#: fortran/expr.cc:3309
 #, gcc-internal-format
 msgid "Specification function %qs at %L cannot be an internal function"
 msgstr ""
 
-#: fortran/expr.cc:3305
+#: fortran/expr.cc:3316
 #, gcc-internal-format
 msgid "Specification function %qs at %L must be PURE"
 msgstr ""
 
-#: fortran/expr.cc:3313
+#: fortran/expr.cc:3324
 #, gcc-internal-format
 msgid "Specification function %qs at %L cannot be RECURSIVE"
 msgstr ""
 
-#: fortran/expr.cc:3460
+#: fortran/expr.cc:3471
 #, gcc-internal-format
 msgid "Dummy argument %qs not allowed in expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:3468
+#: fortran/expr.cc:3479
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L cannot be OPTIONAL"
 msgstr ""
 
-#: fortran/expr.cc:3475
+#: fortran/expr.cc:3486
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L cannot be INTENT(OUT)"
 msgstr ""
 
-#: fortran/expr.cc:3504
+#: fortran/expr.cc:3513
 #, gcc-internal-format
 msgid "Variable %qs cannot appear in the expression at %L"
 msgstr ""
 
-#: fortran/expr.cc:3535
+#: fortran/expr.cc:3544
 #, gcc-internal-format
 msgid "check_restricted(): Unknown expression type"
 msgstr ""
 
-#: fortran/expr.cc:3555
+#: fortran/expr.cc:3564
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression at %L must be of INTEGER type, found %s"
 msgstr ""
 
-#: fortran/expr.cc:3567
+#: fortran/expr.cc:3576
 #, gcc-internal-format
 msgid "Function %qs at %L must be PURE"
 msgstr ""
 
-#: fortran/expr.cc:3576
+#: fortran/expr.cc:3585
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression at %L must be scalar"
 msgstr ""
 
 #. Reject truncation.
-#: fortran/expr.cc:3608
+#: fortran/expr.cc:3617
 #, gcc-internal-format, gfc-internal-format
 msgid "optype_msgid overflow: %d"
 msgstr ""
 
-#: fortran/expr.cc:3612
+#: fortran/expr.cc:3621
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible ranks in %s (%d and %d) at %L"
 msgstr ""
 
-#: fortran/expr.cc:3626
+#: fortran/expr.cc:3635
 #, gcc-internal-format, gfc-internal-format
 msgid "Different shape for %s at %L on dimension %d (%d and %d)"
 msgstr ""
 
-#: fortran/expr.cc:3674
+#: fortran/expr.cc:3683
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to a LEN or KIND part_ref at %L is not allowed"
 msgstr ""
 
-#: fortran/expr.cc:3730
+#: fortran/expr.cc:3739
 #, gcc-internal-format
 msgid "%qs at %L is not a VALUE"
 msgstr ""
 
-#: fortran/expr.cc:3741
+#: fortran/expr.cc:3750
 #, gcc-internal-format, gfc-internal-format
 msgid "Illegal assignment to external procedure at %L"
 msgstr ""
 
-#: fortran/expr.cc:3749
+#: fortran/expr.cc:3758
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible ranks %d and %d in assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:3756
+#: fortran/expr.cc:3765
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable type is UNKNOWN in assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:3768
+#: fortran/expr.cc:3777
 #, gcc-internal-format, gfc-internal-format
 msgid "NULL appears on right-hand side in assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:3778
+#: fortran/expr.cc:3787
 #, gcc-internal-format, gfc-internal-format
 msgid "POINTER-valued function appears on right-hand side of assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:3821
+#: fortran/expr.cc:3830
 #, gcc-internal-format
 msgid "BOZ literal constant near %L cannot be assigned to a %qs variable"
 msgstr ""
 
-#: fortran/expr.cc:3828
+#: fortran/expr.cc:3837
 #, 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:3858
+#: fortran/expr.cc:3867
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Incompatible types in DATA statement at %L; attempted conversion of %s to %s"
 msgstr ""
 
-#: fortran/expr.cc:3902
+#: fortran/expr.cc:3911
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target is not a POINTER at %L"
 msgstr ""
 
-#: fortran/expr.cc:3910
+#: fortran/expr.cc:3919
 #, 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:3934
+#: fortran/expr.cc:3943
 #, gcc-internal-format
 msgid "Expected bounds specification for %qs at %L"
 msgstr ""
 
-#: fortran/expr.cc:3939
+#: fortran/expr.cc:3948
 #, gcc-internal-format
 msgid "Bounds specification for %qs in pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:3968
+#: fortran/expr.cc:3977
 #, gcc-internal-format, gfc-internal-format
 msgid "Stride must not be present at %L"
 msgstr ""
 
-#: fortran/expr.cc:3974 fortran/expr.cc:3994
+#: fortran/expr.cc:3983 fortran/expr.cc:4003
 #, gcc-internal-format
 msgid ""
 "Rank remapping requires a list of %<lower-bound : upper-bound%> "
 "specifications at %L"
 msgstr ""
 
-#: fortran/expr.cc:3982 fortran/expr.cc:4001
+#: fortran/expr.cc:3991 fortran/expr.cc:4010
 #, gcc-internal-format
 msgid ""
 "Expected list of %<lower-bound :%> or list of %<lower-bound : upper-bound%> "
 "specifications at %L"
 msgstr ""
 
-#: fortran/expr.cc:4028
+#: fortran/expr.cc:4037
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer object at %L shall not have a coindex"
 msgstr ""
 
-#: fortran/expr.cc:4049
+#: fortran/expr.cc:4058
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid procedure pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4074
+#: fortran/expr.cc:4083
 #, gcc-internal-format
 msgid ""
 "Function result %qs is invalid as proc-target in procedure pointer "
 "assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4083
+#: fortran/expr.cc:4092
 #, gcc-internal-format
 msgid "Abstract interface %qs is invalid in procedure pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4093
+#: fortran/expr.cc:4102
 #, gcc-internal-format
 msgid "Statement function %qs is invalid in procedure pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4099
+#: fortran/expr.cc:4108
 #, gcc-internal-format
 msgid "Internal procedure %qs is invalid in procedure pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4106
+#: fortran/expr.cc:4115
 #, gcc-internal-format
 msgid "Intrinsic %qs at %L is invalid in procedure pointer assignment"
 msgstr ""
 
-#: fortran/expr.cc:4114
+#: fortran/expr.cc:4123
 #, gcc-internal-format
 msgid ""
 "Nonintrinsic elemental procedure %qs is invalid in procedure pointer "
 "assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4137
+#: fortran/expr.cc:4146
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Mismatch in the procedure pointer assignment at %L: mismatch in the calling "
 "convention"
 msgstr ""
 
-#: fortran/expr.cc:4190
+#: fortran/expr.cc:4199
 #, gcc-internal-format
 msgid ""
 "Interface mismatch in procedure pointer assignment at %L: %qs is not a "
 "subroutine"
 msgstr ""
 
-#: fortran/expr.cc:4200 fortran/expr.cc:4215
+#: fortran/expr.cc:4209 fortran/expr.cc:4224
 #, gcc-internal-format
 msgid "Explicit interface required for component %qs at %L: %s"
 msgstr ""
 
-#: fortran/expr.cc:4206 fortran/expr.cc:4221 fortran/resolve.cc:2694
+#: fortran/expr.cc:4215 fortran/expr.cc:4230 fortran/resolve.cc:2696
 #, gcc-internal-format
 msgid "Explicit interface required for %qs at %L: %s"
 msgstr ""
 
-#: fortran/expr.cc:4233
+#: fortran/expr.cc:4242
 #, gcc-internal-format, gfc-internal-format
 msgid "Interface mismatch in procedure pointer assignment at %L: %s"
 msgstr ""
 
-#: fortran/expr.cc:4242
+#: fortran/expr.cc:4251
 #, 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:4255
+#: fortran/expr.cc:4264
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target cannot be a constant at %L"
 msgstr ""
 
-#: fortran/expr.cc:4269
+#: fortran/expr.cc:4278
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Data-pointer-object at %L must be unlimited polymorphic, or of a type with "
@@ -71897,34 +71990,34 @@ msgid ""
 "polymorphic target"
 msgstr ""
 
-#: fortran/expr.cc:4274
+#: fortran/expr.cc:4283
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Different types in pointer assignment at %L; attempted assignment of %s to %s"
 msgstr ""
 
-#: fortran/expr.cc:4282
+#: fortran/expr.cc:4291
 #, gcc-internal-format, gfc-internal-format
 msgid "Different kind type parameters in pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4289
+#: fortran/expr.cc:4298
 #, gcc-internal-format, gfc-internal-format
 msgid "Different ranks in pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.cc:4308
+#: fortran/expr.cc:4317
 #, 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:4321
+#: fortran/expr.cc:4330
 #, gcc-internal-format, gfc-internal-format
 msgid "Rank remapping target must be rank 1 or simply contiguous at %L"
 msgstr ""
 
-#: fortran/expr.cc:4325
+#: fortran/expr.cc:4334
 #, gcc-internal-format, gfc-internal-format
 msgid "Rank remapping target is not rank 1 at %L"
 msgstr ""
@@ -71932,215 +72025,215 @@ 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:4350 fortran/expr.cc:4476
+#: fortran/expr.cc:4359 fortran/expr.cc:4485
 #, gcc-internal-format, gfc-internal-format
 msgid "Data target at %L shall not have a coindex"
 msgstr ""
 
-#: fortran/expr.cc:4353
+#: fortran/expr.cc:4362
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Target expression in pointer assignment at %L must deliver a pointer result"
 msgstr ""
 
-#: fortran/expr.cc:4367
+#: fortran/expr.cc:4376
 #, 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:4373 fortran/expr.cc:4388
+#: fortran/expr.cc:4382 fortran/expr.cc:4397
 #, 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:4404
+#: fortran/expr.cc:4413
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Every subscript of target specification at %L must be a constant expression"
 msgstr ""
 
-#: fortran/expr.cc:4415
+#: fortran/expr.cc:4424
 #, 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:4431
+#: fortran/expr.cc:4440
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target is neither TARGET nor POINTER at %L"
 msgstr ""
 
-#: fortran/expr.cc:4446
+#: fortran/expr.cc:4455
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad target in pointer assignment in PURE procedure at %L"
 msgstr ""
 
-#: fortran/expr.cc:4455
+#: fortran/expr.cc:4464
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment with vector subscript on rhs at %L"
 msgstr ""
 
-#: fortran/expr.cc:4463
+#: fortran/expr.cc:4472
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target has PROTECTED attribute at %L"
 msgstr ""
 
-#: fortran/expr.cc:4491 fortran/expr.cc:4496
+#: fortran/expr.cc:4500 fortran/expr.cc:4505
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to contiguous pointer from non-contiguous target at %L"
 msgstr ""
 
-#: fortran/expr.cc:4536
+#: fortran/expr.cc:4545
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer at %L in pointer assignment might outlive the pointer target"
 msgstr ""
 
-#: fortran/expr.cc:4612 fortran/resolve.cc:1535
+#: fortran/expr.cc:4621 fortran/resolve.cc:1535
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer initialization target at %L must not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/expr.cc:4618
+#: fortran/expr.cc:4627
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer initialization target at %L must have the TARGET attribute"
 msgstr ""
 
-#: fortran/expr.cc:4633 fortran/resolve.cc:1541
+#: fortran/expr.cc:4642 fortran/resolve.cc:1541
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer initialization target at %L must have the SAVE attribute"
 msgstr ""
 
-#: fortran/expr.cc:4645
+#: fortran/expr.cc:4654
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Procedure pointer initialization target at %L may not be a procedure pointer"
 msgstr ""
 
-#: fortran/expr.cc:4651
+#: fortran/expr.cc:4660
 #, gcc-internal-format
 msgid ""
 "Internal procedure %qs is invalid in procedure pointer initialization at %L"
 msgstr ""
 
-#: fortran/expr.cc:4658
+#: fortran/expr.cc:4667
 #, gcc-internal-format
 msgid ""
 "Dummy procedure %qs is invalid in procedure pointer initialization at %L"
 msgstr ""
 
-#: fortran/expr.cc:5126
+#: fortran/expr.cc:5135
 #, gcc-internal-format
 msgid ""
 "generate_isocbinding_initializer(): bad iso_c_binding type, expected "
 "%<c_ptr%> or %<c_funptr%>"
 msgstr ""
 
-#: fortran/expr.cc:6226
+#: fortran/expr.cc:6235
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Fortran 2008: Pointer functions in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6234
+#: fortran/expr.cc:6243
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-variable expression in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6242
+#: fortran/expr.cc:6251
 #, gcc-internal-format
 msgid "Named constant %qs in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6253
+#: fortran/expr.cc:6262
 #, gcc-internal-format
 msgid "%qs in variable definition context (%s) at %L is not a variable"
 msgstr ""
 
-#: fortran/expr.cc:6264
+#: fortran/expr.cc:6273
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-POINTER in pointer association context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6273
+#: fortran/expr.cc:6282
 #, gcc-internal-format, gfc-internal-format
 msgid "Type inaccessible in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6286
+#: fortran/expr.cc:6295
 #, gcc-internal-format, gfc-internal-format
 msgid "LOCK_TYPE in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6299
+#: fortran/expr.cc:6308
 #, gcc-internal-format, gfc-internal-format
 msgid "LOCK_EVENT in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6330
+#: fortran/expr.cc:6339
 #, gcc-internal-format
 msgid "%qs parameter inquiry for %qs in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6347
+#: fortran/expr.cc:6356
 #, gcc-internal-format
 msgid ""
 "Dummy argument %qs with INTENT(IN) in pointer association context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6357
+#: fortran/expr.cc:6366
 #, gcc-internal-format
 msgid ""
 "Dummy argument %qs with INTENT(IN) in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6370
+#: fortran/expr.cc:6379
 #, gcc-internal-format
 msgid ""
 "Variable %qs is PROTECTED and cannot appear in a pointer association context "
 "(%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6378
+#: fortran/expr.cc:6387
 #, gcc-internal-format
 msgid ""
 "Variable %qs is PROTECTED and cannot appear in a variable definition context "
 "(%s) at %L"
 msgstr ""
 
-#: fortran/expr.cc:6393
+#: fortran/expr.cc:6402
 #, gcc-internal-format
 msgid ""
 "Variable %qs cannot appear in a variable definition context (%s) at %L in "
 "PURE procedure"
 msgstr ""
 
-#: fortran/expr.cc:6452
+#: fortran/expr.cc:6461
 #, 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:6457
+#: fortran/expr.cc:6466
 #, gcc-internal-format
 msgid ""
 "%qs at %L associated to expression cannot be used in a variable definition "
 "context (%s)"
 msgstr ""
 
-#: fortran/expr.cc:6469
+#: fortran/expr.cc:6478
 #, 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:6511
+#: fortran/expr.cc:6520
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Elements with the same value at %L and %L in vector subscript in a variable "
@@ -72163,8 +72256,8 @@ msgid "Illegal id in copy_walk_reduction_arg"
 msgstr ""
 
 #: fortran/frontend-passes.cc:870 fortran/trans-array.cc:1496
-#: fortran/trans-array.cc:6890 fortran/trans-array.cc:8513
-#: fortran/trans-intrinsic.cc:8453
+#: fortran/trans-array.cc:6953 fortran/trans-array.cc:8576
+#: fortran/trans-intrinsic.cc:8463
 #, gcc-internal-format, gfc-internal-format
 msgid "Creating array temporary at %L"
 msgstr ""
@@ -72236,51 +72329,51 @@ msgid ""
 "INTENT(INOUT) argument to subroutine %qs"
 msgstr ""
 
-#: fortran/frontend-passes.cc:2928 fortran/frontend-passes.cc:2954
+#: fortran/frontend-passes.cc:2931 fortran/frontend-passes.cc:2957
 #, 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:2938 fortran/frontend-passes.cc:2964
+#: fortran/frontend-passes.cc:2941 fortran/frontend-passes.cc:2967
 #, 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:3055
+#: fortran/frontend-passes.cc:3059
 #, 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:3061
+#: fortran/frontend-passes.cc:3065
 #, 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:3477 fortran/trans-expr.cc:1880
+#: fortran/frontend-passes.cc:3481 fortran/trans-expr.cc:1881
 #, gcc-internal-format, gfc-internal-format
 msgid "Code for reallocating the allocatable array at %L will be added"
 msgstr ""
 
-#: fortran/frontend-passes.cc:4002
+#: fortran/frontend-passes.cc:4006
 #, gcc-internal-format
 msgid "Scalarization using DIMEN_RANGE unimplemented"
 msgstr ""
 
-#: fortran/frontend-passes.cc:5211
+#: fortran/frontend-passes.cc:5215
 #, gcc-internal-format, gfc-internal-format
 msgid "Interchanging loops at %L"
 msgstr ""
 
-#: fortran/frontend-passes.cc:5848
+#: fortran/frontend-passes.cc:5852
 #, gcc-internal-format, gfc-internal-format
 msgid "%s between %L and %L"
 msgstr ""
 
-#: fortran/gfortranspec.cc:146 m2/gm2spec.cc:213
+#: fortran/gfortranspec.cc:146 m2/gm2spec.cc:250
 #, gcc-internal-format
 msgid "overflowed output argument list for %qs"
 msgstr ""
@@ -72399,12 +72492,12 @@ msgstr ""
 msgid "Second argument of defined assignment at %L must be INTENT(IN)"
 msgstr ""
 
-#: fortran/interface.cc:998 fortran/resolve.cc:17450
+#: fortran/interface.cc:998 fortran/resolve.cc:17749
 #, gcc-internal-format, gfc-internal-format
 msgid "First argument of operator interface at %L must be INTENT(IN)"
 msgstr ""
 
-#: fortran/interface.cc:1005 fortran/resolve.cc:17468
+#: fortran/interface.cc:1005 fortran/resolve.cc:17767
 #, gcc-internal-format, gfc-internal-format
 msgid "Second argument of operator interface at %L must be INTENT(IN)"
 msgstr ""
@@ -72531,60 +72624,60 @@ msgid ""
 "%d and rank-%d)"
 msgstr ""
 
-#: fortran/interface.cc:2377
+#: fortran/interface.cc:2378
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid procedure argument at %L"
 msgstr ""
 
-#: fortran/interface.cc:2385 fortran/interface.cc:2412
+#: fortran/interface.cc:2386 fortran/interface.cc:2413
 #, gcc-internal-format
 msgid "Interface mismatch in dummy procedure %qs at %L: %s"
 msgstr ""
 
-#: fortran/interface.cc:2423
+#: fortran/interface.cc:2424
 #, gcc-internal-format
 msgid ""
 "Actual argument to contiguous pointer dummy %qs at %L must be simply "
 "contiguous"
 msgstr ""
 
-#: fortran/interface.cc:2446
+#: fortran/interface.cc:2447
 #, 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:2456
+#: fortran/interface.cc:2457
 #, gcc-internal-format
 msgid "Type mismatch in argument %qs at %L; passed %s to %s"
 msgstr ""
 
-#: fortran/interface.cc:2466
+#: fortran/interface.cc:2467
 #, gcc-internal-format
 msgid ""
 "Assumed-type actual argument at %L requires that dummy argument %qs is of "
 "assumed type"
 msgstr ""
 
-#: fortran/interface.cc:2480
+#: fortran/interface.cc:2481
 #, 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:2497
+#: fortran/interface.cc:2498
 #, gcc-internal-format
 msgid "Actual argument to %qs at %L must be polymorphic"
 msgstr ""
 
-#: fortran/interface.cc:2507
+#: fortran/interface.cc:2508
 #, gcc-internal-format
 msgid "Actual argument to %qs at %L must have the same declared type"
 msgstr ""
 
-#: fortran/interface.cc:2522
+#: fortran/interface.cc:2523
 #, gcc-internal-format
 msgid ""
 "Actual argument to %qs at %L must be unlimited polymorphic since the formal "
@@ -72592,38 +72685,38 @@ msgid ""
 "12.5.2.5]"
 msgstr ""
 
-#: fortran/interface.cc:2538
+#: fortran/interface.cc:2539
 #, gcc-internal-format
 msgid "Actual argument to %qs at %L must be a coarray"
 msgstr ""
 
-#: fortran/interface.cc:2557
+#: fortran/interface.cc:2561
 #, gcc-internal-format
 msgid "Corank mismatch in argument %qs at %L (%d and %d)"
 msgstr ""
 
-#: fortran/interface.cc:2575
+#: fortran/interface.cc:2579
 #, 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:2590
+#: fortran/interface.cc:2594
 #, 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:2605
+#: fortran/interface.cc:2609
 #, 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:2624
+#: fortran/interface.cc:2628
 #, gcc-internal-format
 msgid ""
 "Dummy argument %qs has to be a pointer, assumed-shape or assumed-rank array "
@@ -72631,216 +72724,216 @@ msgid ""
 "contiguous and both are ASYNCHRONOUS or VOLATILE"
 msgstr ""
 
-#: fortran/interface.cc:2637
+#: fortran/interface.cc:2641
 #, gcc-internal-format
 msgid ""
 "Passing coarray at %L to allocatable, noncoarray, INTENT(OUT) dummy argument "
 "%qs"
 msgstr ""
 
-#: fortran/interface.cc:2644
+#: fortran/interface.cc:2648
 #, 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:2721
+#: fortran/interface.cc:2734
 #, gcc-internal-format
 msgid "Polymorphic scalar passed to array dummy argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:2732
+#: fortran/interface.cc:2745
 #, 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:2737
+#: fortran/interface.cc:2750
 #, gcc-internal-format
 msgid ""
 "Element of assumed-shape or pointer array passed to array dummy argument %qs "
 "at %L"
 msgstr ""
 
-#: fortran/interface.cc:2750
+#: fortran/interface.cc:2763
 #, 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:2758
+#: fortran/interface.cc:2771
 #, gcc-internal-format
 msgid ""
 "Fortran 2003: Scalar CHARACTER actual argument with array dummy argument %qs "
 "at %L"
 msgstr ""
 
-#: fortran/interface.cc:3146
+#: fortran/interface.cc:3159
 #, gcc-internal-format
 msgid "Keyword argument %qs at %L is invalid in a statement function"
 msgstr ""
 
-#: fortran/interface.cc:3169
+#: fortran/interface.cc:3182
 #, gcc-internal-format
 msgid "Keyword argument %qs at %L is not in the procedure; did you mean %qs?"
 msgstr ""
 
-#: fortran/interface.cc:3173
+#: fortran/interface.cc:3186
 #, gcc-internal-format
 msgid "Keyword argument %qs at %L is not in the procedure"
 msgstr ""
 
-#: fortran/interface.cc:3182
+#: fortran/interface.cc:3195
 #, gcc-internal-format
 msgid ""
 "Keyword argument %qs at %L is already associated with another actual argument"
 msgstr ""
 
-#: fortran/interface.cc:3192
+#: fortran/interface.cc:3205
 #, gcc-internal-format, gfc-internal-format
 msgid "More actual than formal arguments in procedure call at %L"
 msgstr ""
 
-#: fortran/interface.cc:3205
+#: fortran/interface.cc:3218
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing alternate return specifier in subroutine call at %L"
 msgstr ""
 
-#: fortran/interface.cc:3219
+#: fortran/interface.cc:3232
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected alternate return specifier in subroutine call at %L"
 msgstr ""
 
-#: fortran/interface.cc:3248
+#: fortran/interface.cc:3261
 #, gcc-internal-format
 msgid "Unexpected NULL() intrinsic at %L to dummy %qs"
 msgstr ""
 
-#: fortran/interface.cc:3251
+#: fortran/interface.cc:3264
 #, gcc-internal-format
 msgid "Fortran 2008: Null pointer at %L to non-pointer dummy %qs"
 msgstr ""
 
-#: fortran/interface.cc:3277
+#: fortran/interface.cc:3290
 #, 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:3303
+#: fortran/interface.cc:3316
 #, 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:3310
+#: fortran/interface.cc:3323
 #, gcc-internal-format
 msgid ""
 "Character length mismatch (%ld/%ld) between actual argument and assumed-"
 "shape dummy argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:3325
+#: fortran/interface.cc:3338
 #, 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:3344
+#: fortran/interface.cc:3357
 #, gcc-internal-format
 msgid ""
 "Character length of actual argument shorter than of dummy argument %qs (%lu/"
 "%lu) at %L"
 msgstr ""
 
-#: fortran/interface.cc:3354 fortran/interface.cc:3359
+#: fortran/interface.cc:3367 fortran/interface.cc:3372
 #, gcc-internal-format
 msgid ""
 "Actual argument contains too few elements for dummy argument %qs (%lu/%lu) "
 "at %L"
 msgstr ""
 
-#: fortran/interface.cc:3380
+#: fortran/interface.cc:3393
 #, gcc-internal-format
 msgid "Expected a procedure pointer for argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:3397
+#: fortran/interface.cc:3410
 #, gcc-internal-format
 msgid "Expected a procedure for argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:3462
+#: fortran/interface.cc:3475
 #, gcc-internal-format
 msgid "Actual argument for %qs cannot be an assumed-size array at %L"
 msgstr ""
 
-#: fortran/interface.cc:3491
+#: fortran/interface.cc:3504
 #, gcc-internal-format
 msgid ""
 "Actual argument to assumed-rank INTENT(OUT) dummy %qs at %L cannot be of "
 "unknown size"
 msgstr ""
 
-#: fortran/interface.cc:3506
+#: fortran/interface.cc:3519
 #, gcc-internal-format
 msgid "Actual argument for %qs at %L must be a pointer"
 msgstr ""
 
-#: fortran/interface.cc:3515
+#: fortran/interface.cc:3528
 #, gcc-internal-format
 msgid "Fortran 2008: Non-pointer actual argument at %L to pointer dummy %qs"
 msgstr ""
 
-#: fortran/interface.cc:3524
+#: fortran/interface.cc:3537
 #, 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:3538
+#: fortran/interface.cc:3551
 #, gcc-internal-format
 msgid "Coindexed actual argument at %L to pointer dummy %qs"
 msgstr ""
 
-#: fortran/interface.cc:3552
+#: fortran/interface.cc:3565
 #, gcc-internal-format
 msgid ""
 "Coindexed actual argument at %L to allocatable dummy %qs requires INTENT(IN)"
 msgstr ""
 
-#: fortran/interface.cc:3567
+#: fortran/interface.cc:3580
 #, 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:3582
+#: fortran/interface.cc:3595
 #, 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:3595
+#: fortran/interface.cc:3608
 #, gcc-internal-format
 msgid "Actual CLASS array argument for %qs must be a full array at %L"
 msgstr ""
 
-#: fortran/interface.cc:3606
+#: fortran/interface.cc:3619
 #, gcc-internal-format
 msgid "Actual argument for %qs must be ALLOCATABLE at %L"
 msgstr ""
 
-#: fortran/interface.cc:3643
+#: fortran/interface.cc:3656
 #, gcc-internal-format
 msgid ""
 "Array-section actual argument with vector subscripts at %L is incompatible "
@@ -72848,391 +72941,391 @@ msgid ""
 "dummy argument %qs"
 msgstr ""
 
-#: fortran/interface.cc:3663
+#: fortran/interface.cc:3676
 #, 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:3681
+#: fortran/interface.cc:3694
 #, 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:3702
+#: fortran/interface.cc:3715
 #, 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:3730
+#: fortran/interface.cc:3743
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing alternate return spec in subroutine call at %L"
 msgstr ""
 
-#: fortran/interface.cc:3743
+#: fortran/interface.cc:3756
 #, gcc-internal-format
 msgid "Missing actual argument for argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:3871
+#: fortran/interface.cc:3884
 #, gcc-internal-format
 msgid "compare_actual_expr(): Bad component code"
 msgstr ""
 
-#: fortran/interface.cc:3900
+#: fortran/interface.cc:3913
 #, gcc-internal-format
 msgid "check_some_aliasing(): List mismatch"
 msgstr ""
 
-#: fortran/interface.cc:3926
+#: fortran/interface.cc:3939
 #, gcc-internal-format
 msgid "check_some_aliasing(): corrupted data"
 msgstr ""
 
-#: fortran/interface.cc:3936
+#: fortran/interface.cc:3949
 #, gcc-internal-format
 msgid ""
 "Same actual argument associated with INTENT(%s) argument %qs and INTENT(%s) "
 "argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:3966
+#: fortran/interface.cc:3979
 #, gcc-internal-format
 msgid "check_intents(): List mismatch"
 msgstr ""
 
-#: fortran/interface.cc:3986
+#: fortran/interface.cc:3999
 #, 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:3998
+#: fortran/interface.cc:4011
 #, 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:4008
+#: fortran/interface.cc:4021
 #, 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:4019
+#: fortran/interface.cc:4032
 #, gcc-internal-format
 msgid ""
 "Coindexed polymorphic actual argument at %L is passed polymorphic dummy "
 "argument %qs"
 msgstr ""
 
-#: fortran/interface.cc:4061
+#: fortran/interface.cc:4074
 #, gcc-internal-format
 msgid ""
 "Procedure %qs called at %L is not explicitly declared; did you mean %qs?"
 msgstr ""
 
-#: fortran/interface.cc:4065 fortran/interface.cc:4075
+#: fortran/interface.cc:4078 fortran/interface.cc:4088
 #, gcc-internal-format
 msgid "Procedure %qs called at %L is not explicitly declared"
 msgstr ""
 
-#: fortran/interface.cc:4071
+#: fortran/interface.cc:4084
 #, gcc-internal-format
 msgid "Procedure %qs called with an implicit interface at %L"
 msgstr ""
 
-#: fortran/interface.cc:4084
+#: fortran/interface.cc:4097
 #, 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:4092
+#: fortran/interface.cc:4105
 #, 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:4100
+#: fortran/interface.cc:4113
 #, gcc-internal-format
 msgid "Allocatable function %qs at %L must have an explicit function interface"
 msgstr ""
 
-#: fortran/interface.cc:4117
+#: fortran/interface.cc:4130
 #, gcc-internal-format, gfc-internal-format
 msgid "Explicit interface required for polymorphic argument at %L"
 msgstr ""
 
-#: fortran/interface.cc:4126
+#: fortran/interface.cc:4139
 #, gcc-internal-format
 msgid "Keyword argument requires explicit interface for procedure %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:4135
+#: fortran/interface.cc:4148
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type argument %s at %L requires an explicit interface"
 msgstr ""
 
-#: fortran/interface.cc:4150
+#: fortran/interface.cc:4163
 #, 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:4165
+#: fortran/interface.cc:4178
 #, 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:4175
+#: fortran/interface.cc:4188
 #, gcc-internal-format, gfc-internal-format
 msgid "MOLD argument to NULL required at %L"
 msgstr ""
 
-#: fortran/interface.cc:4183
+#: fortran/interface.cc:4196
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Passing intrinsic NULL as actual argument at %L requires an explicit "
 "interface"
 msgstr ""
 
-#: fortran/interface.cc:4193
+#: fortran/interface.cc:4206
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank argument requires an explicit interface at %L"
 msgstr ""
 
-#: fortran/interface.cc:4235
+#: fortran/interface.cc:4248
 #, gcc-internal-format
 msgid "Procedure pointer component %qs called with an implicit interface at %L"
 msgstr ""
 
-#: fortran/interface.cc:4246
+#: fortran/interface.cc:4259
 #, gcc-internal-format
 msgid ""
 "Keyword argument requires explicit interface for procedure pointer component "
 "%qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:4331
+#: fortran/interface.cc:4344
 #, 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:4401
+#: fortran/interface.cc:4414
 #, gcc-internal-format
 msgid "Unable to find symbol %qs"
 msgstr ""
 
-#: fortran/interface.cc:4774
+#: fortran/interface.cc:4787
 #, gcc-internal-format
 msgid "Entity %qs at %L is already present in the interface"
 msgstr ""
 
-#: fortran/interface.cc:4891
+#: fortran/interface.cc:4904
 #, gcc-internal-format
 msgid "gfc_add_interface(): Bad interface type"
 msgstr ""
 
-#: fortran/interface.cc:4985
+#: fortran/interface.cc:4998
 #, gcc-internal-format
 msgid "Cannot overwrite GENERIC %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:4997
+#: fortran/interface.cc:5010
 #, gcc-internal-format
 msgid "%qs at %L overrides a procedure binding declared NON_OVERRIDABLE"
 msgstr ""
 
-#: fortran/interface.cc:5005
+#: fortran/interface.cc:5018
 #, gcc-internal-format
 msgid "%qs at %L must not be DEFERRED as it overrides a non-DEFERRED binding"
 msgstr ""
 
-#: fortran/interface.cc:5013
+#: fortran/interface.cc:5026
 #, gcc-internal-format
 msgid "%qs at %L overrides a PURE procedure and must also be PURE"
 msgstr ""
 
-#: fortran/interface.cc:5022
+#: fortran/interface.cc:5035
 #, gcc-internal-format
 msgid "%qs at %L overrides an ELEMENTAL procedure and must also be ELEMENTAL"
 msgstr ""
 
-#: fortran/interface.cc:5028
+#: fortran/interface.cc:5041
 #, gcc-internal-format
 msgid ""
 "%qs at %L overrides a non-ELEMENTAL procedure and must not be ELEMENTAL, "
 "either"
 msgstr ""
 
-#: fortran/interface.cc:5037
+#: fortran/interface.cc:5050
 #, gcc-internal-format
 msgid "%qs at %L overrides a SUBROUTINE and must also be a SUBROUTINE"
 msgstr ""
 
-#: fortran/interface.cc:5048
+#: fortran/interface.cc:5061
 #, gcc-internal-format
 msgid "%qs at %L overrides a FUNCTION and must also be a FUNCTION"
 msgstr ""
 
-#: fortran/interface.cc:5056
+#: fortran/interface.cc:5069
 #, gcc-internal-format
 msgid "Result mismatch for the overriding procedure %qs at %L: %s"
 msgstr ""
 
-#: fortran/interface.cc:5067
+#: fortran/interface.cc:5080
 #, gcc-internal-format
 msgid "%qs at %L overrides a PUBLIC procedure and must not be PRIVATE"
 msgstr ""
 
-#: fortran/interface.cc:5097
+#: fortran/interface.cc:5110
 #, 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:5108
+#: fortran/interface.cc:5121
 #, gcc-internal-format
 msgid "Argument mismatch for the overriding procedure %qs at %L: %s"
 msgstr ""
 
-#: fortran/interface.cc:5117
+#: fortran/interface.cc:5130
 #, gcc-internal-format
 msgid ""
 "%qs at %L must have the same number of formal arguments as the overridden "
 "procedure"
 msgstr ""
 
-#: fortran/interface.cc:5126
+#: fortran/interface.cc:5139
 #, gcc-internal-format
 msgid "%qs at %L overrides a NOPASS binding and must also be NOPASS"
 msgstr ""
 
-#: fortran/interface.cc:5137
+#: fortran/interface.cc:5150
 #, gcc-internal-format
 msgid "%qs at %L overrides a binding with PASS and must also be PASS"
 msgstr ""
 
-#: fortran/interface.cc:5144
+#: fortran/interface.cc:5157
 #, 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:5165
+#: fortran/interface.cc:5178
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must be of type %s"
 msgstr ""
 
-#: fortran/interface.cc:5172
+#: fortran/interface.cc:5185
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must be of KIND = %d"
 msgstr ""
 
-#: fortran/interface.cc:5179
+#: fortran/interface.cc:5192
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must be a scalar"
 msgstr ""
 
-#: fortran/interface.cc:5183
+#: fortran/interface.cc:5196
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must be an ASSUMED SHAPE ARRAY"
 msgstr ""
 
-#: fortran/interface.cc:5187
+#: fortran/interface.cc:5200
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO character argument at %L must have assumed length"
 msgstr ""
 
-#: fortran/interface.cc:5191
+#: fortran/interface.cc:5204
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must have INTENT %s"
 msgstr ""
 
-#: fortran/interface.cc:5249 fortran/interface.cc:5295
+#: fortran/interface.cc:5262 fortran/interface.cc:5308
 #, gcc-internal-format, gfc-internal-format
 msgid "Alternate return at %L is not permitted in a DTIO procedure"
 msgstr ""
 
-#: fortran/interface.cc:5261
+#: fortran/interface.cc:5274
 #, gcc-internal-format
 msgid "DTIO procedure %qs at %L must be a subroutine"
 msgstr ""
 
-#: fortran/interface.cc:5273
+#: fortran/interface.cc:5286
 #, gcc-internal-format
 msgid "Too few dummy arguments in DTIO procedure %qs at %L"
 msgstr ""
 
-#: fortran/interface.cc:5280
+#: fortran/interface.cc:5293
 #, gcc-internal-format
 msgid "Too many dummy arguments in DTIO procedure %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:260
+#: fortran/intrinsic.cc:261
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable with NO_ARG_CHECK attribute at %L is only permitted as argument to "
 "the intrinsic functions C_LOC and PRESENT"
 msgstr ""
 
-#: fortran/intrinsic.cc:276
+#: fortran/intrinsic.cc:277
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Assumed-type argument at %L is not permitted as actual argument to the "
 "intrinsic %s"
 msgstr ""
 
-#: fortran/intrinsic.cc:283
+#: fortran/intrinsic.cc:284
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Assumed-type argument at %L is only permitted as first actual argument to "
 "the intrinsic %s"
 msgstr ""
 
-#: fortran/intrinsic.cc:290
+#: fortran/intrinsic.cc:291
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Assumed-rank argument at %L is only permitted as actual argument to "
 "intrinsic inquiry functions"
 msgstr ""
 
-#: fortran/intrinsic.cc:297
+#: fortran/intrinsic.cc:298
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Assumed-rank argument at %L is only permitted as first actual argument to "
 "the intrinsic inquiry function %s"
 msgstr ""
 
-#: fortran/intrinsic.cc:345
+#: fortran/intrinsic.cc:346
 #, gcc-internal-format
 msgid "do_check(): too many args"
 msgstr ""
 
-#: fortran/intrinsic.cc:425
+#: fortran/intrinsic.cc:426
 #, gcc-internal-format
 msgid "add_sym(): Bad sizing mode"
 msgstr ""
 
-#: fortran/intrinsic.cc:1185
+#: fortran/intrinsic.cc:1186
 #, gcc-internal-format
 msgid ""
 "The intrinsic %qs at %L is not included in the selected standard but %s and "
@@ -73240,141 +73333,146 @@ msgid ""
 "option or define %<-fall-intrinsics%> to allow this intrinsic."
 msgstr ""
 
-#: fortran/intrinsic.cc:1220
+#: fortran/intrinsic.cc:1221
 #, gcc-internal-format
 msgid "make_generic(): Cannot find generic symbol %qs"
 msgstr ""
 
-#: fortran/intrinsic.cc:4312
+#: fortran/intrinsic.cc:4313
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "ALLOCATED intrinsic at %L requires an array or scalar allocatable entity"
 msgstr ""
 
-#: fortran/intrinsic.cc:4325
+#: fortran/intrinsic.cc:4326
 #, gcc-internal-format, gfc-internal-format
 msgid "Scalar entity required at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4336
+#: fortran/intrinsic.cc:4337
 #, gcc-internal-format, gfc-internal-format
 msgid "Array entity required at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4343
+#: fortran/intrinsic.cc:4344
 #, gcc-internal-format
 msgid "Invalid keyword %qs in %qs intrinsic function at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4370
+#: fortran/intrinsic.cc:4371
 #, gcc-internal-format
 msgid "Too many arguments in call to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4386
+#: fortran/intrinsic.cc:4387
 #, 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:4389
+#: fortran/intrinsic.cc:4390
 #, gcc-internal-format
 msgid "Cannot find keyword named %qs in call to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4396
+#: fortran/intrinsic.cc:4397
 #, gcc-internal-format
 msgid "Argument %qs appears twice in call to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4410
+#: fortran/intrinsic.cc:4411
 #, gcc-internal-format
 msgid "Missing actual argument %qs in call to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4426
+#: fortran/intrinsic.cc:4427
 #, gcc-internal-format, gfc-internal-format
 msgid "ALTERNATE RETURN not permitted at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4480
+#: fortran/intrinsic.cc:4481
 #, gcc-internal-format
 msgid "In call to %qs at %L, type mismatch in argument %qs; pass %qs to %qs"
 msgstr ""
 
-#: fortran/intrinsic.cc:4608
+#: fortran/intrinsic.cc:4609
 #, gcc-internal-format
 msgid "resolve_intrinsic(): Too many args for intrinsic"
 msgstr ""
 
-#: fortran/intrinsic.cc:4702
+#: fortran/intrinsic.cc:4704
 #, gcc-internal-format
 msgid "do_simplify(): Too many args for intrinsic"
 msgstr ""
 
-#: fortran/intrinsic.cc:4742
+#: fortran/intrinsic.cc:4716
+#, gcc-internal-format, gfc-internal-format
+msgid "Cannot simplify expression at %L"
+msgstr ""
+
+#: fortran/intrinsic.cc:4749
 #, gcc-internal-format
 msgid "init_arglist(): too many arguments"
 msgstr ""
 
-#: fortran/intrinsic.cc:4894
+#: fortran/intrinsic.cc:4901
 #, gcc-internal-format
 msgid "Invalid standard code on intrinsic %qs (%d)"
 msgstr ""
 
-#: fortran/intrinsic.cc:4903
+#: fortran/intrinsic.cc:4910
 #, gcc-internal-format
 msgid "Intrinsic %qs (%s) used at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4975
+#: fortran/intrinsic.cc:4982
 #, gcc-internal-format
 msgid "Function %qs as initialization expression at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:4993
+#: fortran/intrinsic.cc:5000
 #, gcc-internal-format
 msgid ""
 "Transformational function %qs at %L is invalid in an initialization "
 "expression"
 msgstr ""
 
-#: fortran/intrinsic.cc:5069
+#: fortran/intrinsic.cc:5076
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Elemental function as initialization expression with non-integer/non-"
 "character arguments at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:5160
+#: fortran/intrinsic.cc:5167
 #, gcc-internal-format
 msgid ""
 "Subroutine call to intrinsic %qs in DO CONCURRENT block at %L is not PURE"
 msgstr ""
 
-#: fortran/intrinsic.cc:5167
+#: fortran/intrinsic.cc:5174
 #, gcc-internal-format
 msgid "Subroutine call to intrinsic %qs at %L is not PURE"
 msgstr ""
 
-#: fortran/intrinsic.cc:5270
+#: fortran/intrinsic.cc:5277
 #, gcc-internal-format, gfc-internal-format
 msgid "Extension: Conversion from %s to %s at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:5291
+#: fortran/intrinsic.cc:5298
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonstandard conversion from %s to %s at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:5308 fortran/intrinsic.cc:5325
+#: fortran/intrinsic.cc:5315 fortran/intrinsic.cc:5332
 #, 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:5313 fortran/intrinsic.cc:5333
+#: fortran/intrinsic.cc:5320 fortran/intrinsic.cc:5340
 #, gcc-internal-format, gfc-internal-format
 msgid "Conversion from %s to %s at %L"
 msgstr ""
@@ -73382,24 +73480,24 @@ msgstr ""
 #. Use of -fdec-char-conversions allows assignment of character data
 #. to non-character variables.  This not permited for nonconstant
 #. strings.
-#: fortran/intrinsic.cc:5399 fortran/resolve.cc:11049
+#: fortran/intrinsic.cc:5406 fortran/resolve.cc:11113
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot convert %s to %s at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:5404
+#: fortran/intrinsic.cc:5411
 #, gcc-internal-format
 msgid "Cannot convert %qs to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.cc:5496
+#: fortran/intrinsic.cc:5503
 #, 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:5502
+#: fortran/intrinsic.cc:5509
 #, gcc-internal-format
 msgid ""
 "%qs declared at %L is also the name of an intrinsic.  It can only be called "
@@ -73950,7 +74048,7 @@ msgid ""
 "defined input/output procedure"
 msgstr ""
 
-#: fortran/io.cc:3431 fortran/resolve.cc:15309
+#: fortran/io.cc:3431 fortran/resolve.cc:15597
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs in namelist %qs at %L with ALLOCATABLE or POINTER "
@@ -74533,7 +74631,7 @@ msgstr ""
 msgid "STOP code at %L must be default integer KIND=%d"
 msgstr ""
 
-#: fortran/match.cc:3208 fortran/resolve.cc:12014
+#: fortran/match.cc:3208 fortran/resolve.cc:12252
 #, gcc-internal-format, gfc-internal-format
 msgid "QUIET specifier at %L must be a scalar LOGICAL"
 msgstr ""
@@ -75629,7 +75727,7 @@ msgstr ""
 
 #: fortran/openmp.cc:1531
 #, gcc-internal-format, gfc-internal-format
-msgid "Invalid combined or composit directive at %L"
+msgid "Invalid combined or composite directive at %L"
 msgstr ""
 
 #: fortran/openmp.cc:1539
@@ -76019,12 +76117,12 @@ msgstr ""
 msgid "Unexpected junk after $OMP FLUSH statement at %C"
 msgstr ""
 
-#: fortran/openmp.cc:5055 fortran/openmp.cc:10297
+#: fortran/openmp.cc:5055 fortran/openmp.cc:10302
 #, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of predefined %s !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:5059 fortran/openmp.cc:10301
+#: fortran/openmp.cc:5059 fortran/openmp.cc:10306
 #, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of predefined !$OMP DECLARE REDUCTION at %L"
 msgstr ""
@@ -76518,8 +76616,8 @@ msgstr ""
 msgid "ORDER clause must not be used together ORDERED at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6959 fortran/openmp.cc:6970 fortran/resolve.cc:10860
-#: fortran/resolve.cc:12234
+#: fortran/openmp.cc:6959 fortran/openmp.cc:6970 fortran/resolve.cc:10924
+#: fortran/resolve.cc:12480
 #, gcc-internal-format, gfc-internal-format
 msgid "IF clause at %L requires a scalar LOGICAL expression"
 msgstr ""
@@ -76588,7 +76686,7 @@ msgid ""
 "mapped"
 msgstr ""
 
-#: fortran/openmp.cc:7209 fortran/openmp.cc:10001
+#: fortran/openmp.cc:7209 fortran/openmp.cc:10006
 #, gcc-internal-format
 msgid "Object %qs is not a variable at %L"
 msgstr ""
@@ -76603,7 +76701,7 @@ msgstr ""
 #: fortran/openmp.cc:7249 fortran/openmp.cc:7261 fortran/openmp.cc:7282
 #: fortran/openmp.cc:7294 fortran/openmp.cc:7317 fortran/openmp.cc:7325
 #: fortran/openmp.cc:7346 fortran/openmp.cc:7357 fortran/openmp.cc:7369
-#: fortran/openmp.cc:7474 fortran/openmp.cc:10025
+#: fortran/openmp.cc:7474 fortran/openmp.cc:10030
 #, gcc-internal-format
 msgid "Symbol %qs present on multiple clauses at %L"
 msgstr ""
@@ -77159,209 +77257,209 @@ msgid ""
 "block-sequences"
 msgstr ""
 
-#: fortran/openmp.cc:9478
+#: fortran/openmp.cc:9483
 #, gcc-internal-format, gfc-internal-format
 msgid "%s cannot be a DO WHILE or DO without loop control at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9484
+#: fortran/openmp.cc:9489
 #, gcc-internal-format, gfc-internal-format
 msgid "%s cannot be a DO CONCURRENT loop at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9490
+#: fortran/openmp.cc:9495
 #, gcc-internal-format, gfc-internal-format
 msgid "%s iteration variable must be of type integer at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9494
+#: fortran/openmp.cc:9499
 #, gcc-internal-format, gfc-internal-format
 msgid "%s iteration variable must not be THREADPRIVATE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9507
+#: fortran/openmp.cc:9512
 #, 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:9511
+#: fortran/openmp.cc:9516
 #, 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:9518
+#: fortran/openmp.cc:9523
 #, gcc-internal-format, gfc-internal-format
 msgid "%s iteration variable used in more than one loop at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9526
+#: fortran/openmp.cc:9531
 #, gcc-internal-format, gfc-internal-format
 msgid "%s loop start expression not in canonical form at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9534
+#: fortran/openmp.cc:9539
 #, gcc-internal-format, gfc-internal-format
 msgid "%s loop end expression not in canonical form at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9540
+#: fortran/openmp.cc:9545
 #, gcc-internal-format, gfc-internal-format
 msgid "%s loop bounds reference different iteration variables at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9546
+#: fortran/openmp.cc:9551
 #, gcc-internal-format, gfc-internal-format
 msgid "%s loop increment not in canonical form at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9556
+#: fortran/openmp.cc:9561
 #, gcc-internal-format, gfc-internal-format
 msgid "collapsed %s loops not perfectly nested at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9565 fortran/openmp.cc:9573
+#: fortran/openmp.cc:9570 fortran/openmp.cc:9578
 #, gcc-internal-format, gfc-internal-format
 msgid "not enough DO loops for collapsed %s at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9780 fortran/openmp.cc:9793
+#: fortran/openmp.cc:9785 fortran/openmp.cc:9798
 #, gcc-internal-format, gfc-internal-format
 msgid "The %s directive cannot be specified within a %s region at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9812
+#: fortran/openmp.cc:9817
 #, 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:9818
+#: fortran/openmp.cc:9823
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP cannot be a DO CONCURRENT loop at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9824
+#: fortran/openmp.cc:9829
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP iteration variable must be of type integer at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9840
+#: fortran/openmp.cc:9845
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP %s loops don't form rectangular iteration space at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9852
+#: fortran/openmp.cc:9857
 #, gcc-internal-format, gfc-internal-format
 msgid "%s !$ACC LOOP loops not perfectly nested at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9862 fortran/openmp.cc:9871
+#: fortran/openmp.cc:9867 fortran/openmp.cc:9876
 #, gcc-internal-format, gfc-internal-format
 msgid "not enough DO loops for %s !$ACC LOOP at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9887
+#: fortran/openmp.cc:9892
 #, 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:9908
+#: fortran/openmp.cc:9913
 #, gcc-internal-format, gfc-internal-format
 msgid "TILE requires constant expression at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10008
+#: fortran/openmp.cc:10013
 #, gcc-internal-format
 msgid "Array sections: %qs not allowed in !$ACC DECLARE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10055
+#: fortran/openmp.cc:10060
 #, gcc-internal-format
 msgid ""
 "NAME %qs does not refer to a subroutine or function in !$ACC ROUTINE "
 "( NAME ) at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10061
+#: fortran/openmp.cc:10066
 #, gcc-internal-format
 msgid "NAME %qs invalid in !$ACC ROUTINE ( NAME ) at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10186
+#: fortran/openmp.cc:10191
 #, gcc-internal-format, gfc-internal-format
 msgid "OMP TARGET UPDATE at %L requires at least one TO or FROM clause"
 msgstr ""
 
-#: fortran/openmp.cc:10200
+#: fortran/openmp.cc:10205
 #, 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:10206
+#: fortran/openmp.cc:10211
 #, gcc-internal-format
 msgid ""
 "Unexpected !$OMP SCAN at %L outside loop construct with %<inscan%> REDUCTION "
 "clause"
 msgstr ""
 
-#: fortran/openmp.cc:10227
+#: fortran/openmp.cc:10232
 #, gcc-internal-format
 msgid "!$OMP DECLARE SIMD should refer to containing procedure %qs at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10251
+#: fortran/openmp.cc:10256
 #, 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:10259
+#: fortran/openmp.cc:10264
 #, 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:10288
+#: fortran/openmp.cc:10293
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid operator for !$OMP DECLARE REDUCTION %s at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10310
+#: fortran/openmp.cc:10315
 #, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER length in !$OMP DECLARE REDUCTION %s not constant at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10326
+#: fortran/openmp.cc:10331
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Subroutine call with alternate returns in combiner of !$OMP DECLARE "
 "REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:10341
+#: fortran/openmp.cc:10346
 #, 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:10351
+#: fortran/openmp.cc:10356
 #, 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:10359
+#: fortran/openmp.cc:10364
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Missing INITIALIZER clause for !$OMP DECLARE REDUCTION of derived type "
@@ -77791,239 +77889,239 @@ msgid ""
 "INTERFACE procedure %qs at %L has the same name as the enclosing procedure"
 msgstr ""
 
-#: fortran/parse.cc:4040
+#: fortran/parse.cc:4049
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement is not allowed inside of BLOCK at %C"
 msgstr ""
 
-#: fortran/parse.cc:4072
+#: fortran/parse.cc:4081
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement is not allowed inside of BLOCK DATA at %C"
 msgstr ""
 
-#: fortran/parse.cc:4162
+#: fortran/parse.cc:4165
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement must appear in a MODULE"
 msgstr ""
 
-#: fortran/parse.cc:4170
+#: fortran/parse.cc:4173
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C follows another accessibility specification"
 msgstr ""
 
-#: fortran/parse.cc:4222
+#: fortran/parse.cc:4225
 #, gcc-internal-format
 msgid "Bad kind expression for function %qs at %L"
 msgstr ""
 
-#: fortran/parse.cc:4226
+#: fortran/parse.cc:4229
 #, gcc-internal-format
 msgid "The type for function %qs at %L is not accessible"
 msgstr ""
 
-#: fortran/parse.cc:4286
+#: fortran/parse.cc:4289
 #, gcc-internal-format, gfc-internal-format
 msgid "ELSEWHERE statement at %C follows previous unmasked ELSEWHERE"
 msgstr ""
 
-#: fortran/parse.cc:4308
+#: fortran/parse.cc:4311
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in WHERE block at %C"
 msgstr ""
 
-#: fortran/parse.cc:4367
+#: fortran/parse.cc:4370
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in FORALL block at %C"
 msgstr ""
 
-#: fortran/parse.cc:4418
+#: fortran/parse.cc:4421
 #, gcc-internal-format, gfc-internal-format
 msgid "ELSE IF statement at %C cannot follow ELSE statement at %L"
 msgstr ""
 
-#: fortran/parse.cc:4436
+#: fortran/parse.cc:4439
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate ELSE statements at %L and %C"
 msgstr ""
 
-#: fortran/parse.cc:4497
+#: fortran/parse.cc:4500
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected a CASE or END SELECT statement following SELECT CASE at %C"
 msgstr ""
 
-#: fortran/parse.cc:4581
+#: fortran/parse.cc:4584
 #, 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:4657
+#: fortran/parse.cc:4660
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected RANK or RANK DEFAULT following SELECT RANK at %C"
 msgstr ""
 
-#: fortran/parse.cc:4721
+#: fortran/parse.cc:4724
 #, gcc-internal-format
 msgid "Variable %qs at %C cannot be redefined inside loop beginning at %L"
 msgstr ""
 
-#: fortran/parse.cc:4754
+#: fortran/parse.cc:4757
 #, gcc-internal-format, gfc-internal-format
 msgid "End of nonblock DO statement at %C is within another block"
 msgstr ""
 
-#: fortran/parse.cc:4764
+#: fortran/parse.cc:4767
 #, gcc-internal-format, gfc-internal-format
 msgid "End of nonblock DO statement at %C is interwoven with another DO loop"
 msgstr ""
 
-#: fortran/parse.cc:4790
+#: fortran/parse.cc:4793
 #, gcc-internal-format, gfc-internal-format
 msgid "CRITICAL block inside of OpenACC region at %C"
 msgstr ""
 
-#: fortran/parse.cc:4791
+#: fortran/parse.cc:4794
 #, gcc-internal-format, gfc-internal-format
 msgid "CRITICAL block inside of OpenMP region at %C"
 msgstr ""
 
-#: fortran/parse.cc:4817
+#: fortran/parse.cc:4820
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement label in END CRITICAL at %C does not match CRITICAL label"
 msgstr ""
 
-#: fortran/parse.cc:4886 fortran/parse.cc:5637
+#: fortran/parse.cc:4889 fortran/parse.cc:5640
 #, gcc-internal-format, gfc-internal-format
 msgid "BLOCK construct at %C"
 msgstr ""
 
-#: fortran/parse.cc:4920
+#: fortran/parse.cc:4923
 #, gcc-internal-format, gfc-internal-format
 msgid "ASSOCIATE construct at %C"
 msgstr ""
 
-#: fortran/parse.cc:5141
+#: fortran/parse.cc:5144
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement label in ENDDO at %C doesn't match DO label"
 msgstr ""
 
-#: fortran/parse.cc:5157
+#: fortran/parse.cc:5160
 #, gcc-internal-format, gfc-internal-format
 msgid "Named block DO at %L requires matching ENDDO name"
 msgstr ""
 
-#: fortran/parse.cc:5314 fortran/parse.cc:5759 fortran/parse.cc:5777
+#: fortran/parse.cc:5317 fortran/parse.cc:5762 fortran/parse.cc:5780
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicated NOWAIT clause on %s and %s at %C"
 msgstr ""
 
-#: fortran/parse.cc:5415 fortran/parse.cc:5477
+#: fortran/parse.cc:5418 fortran/parse.cc:5480
 #, gcc-internal-format, gfc-internal-format
 msgid "OpenACC directive inside of CRITICAL block at %C"
 msgstr ""
 
-#: fortran/parse.cc:5452
+#: fortran/parse.cc:5455
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting %s at %C"
 msgstr ""
 
-#: fortran/parse.cc:5496
+#: fortran/parse.cc:5499
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected DO loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:5516
+#: fortran/parse.cc:5519
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant !$ACC END LOOP at %C"
 msgstr ""
 
-#: fortran/parse.cc:5770
+#: fortran/parse.cc:5773
 #, gcc-internal-format, gfc-internal-format
 msgid "Name after !$omp critical and !$omp end critical does not match at %C"
 msgstr ""
 
-#: fortran/parse.cc:5844
+#: fortran/parse.cc:5847
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C cannot terminate a non-block DO loop"
 msgstr ""
 
-#: fortran/parse.cc:5858
+#: fortran/parse.cc:5861
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %C after the first executable statement"
 msgstr ""
 
-#: fortran/parse.cc:6009
+#: fortran/parse.cc:6012
 #, gcc-internal-format
 msgid "%<GCC unroll%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:6012
+#: fortran/parse.cc:6015
 #, gcc-internal-format
 msgid "%<GCC ivdep%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:6015
+#: fortran/parse.cc:6018
 #, gcc-internal-format
 msgid "%<GCC vector%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:6018
+#: fortran/parse.cc:6021
 #, gcc-internal-format
 msgid "%<GCC novector%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:6134
+#: fortran/parse.cc:6137
 #, gcc-internal-format
 msgid "Contained procedure %qs at %C is already ambiguous"
 msgstr ""
 
-#: fortran/parse.cc:6191
+#: fortran/parse.cc:6194
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in CONTAINS section at %C"
 msgstr ""
 
-#: fortran/parse.cc:6216
+#: fortran/parse.cc:6219
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTAINS statement without FUNCTION or SUBROUTINE statement at %L"
 msgstr ""
 
-#: fortran/parse.cc:6330
+#: fortran/parse.cc:6333
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTAINS statement at %C is already in a contained program unit"
 msgstr ""
 
-#: fortran/parse.cc:6382
+#: fortran/parse.cc:6385
 #, gcc-internal-format
 msgid "Global binding name %qs at %L is already being used as a %s at %L"
 msgstr ""
 
-#: fortran/parse.cc:6386
+#: fortran/parse.cc:6389
 #, gcc-internal-format
 msgid "Global name %qs at %L is already being used as a %s at %L"
 msgstr ""
 
-#: fortran/parse.cc:6392
+#: fortran/parse.cc:6395
 #, gcc-internal-format
 msgid "Global binding name %qs at %L is already being used at %L"
 msgstr ""
 
-#: fortran/parse.cc:6395
+#: fortran/parse.cc:6398
 #, gcc-internal-format
 msgid "Global name %qs at %L is already being used at %L"
 msgstr ""
 
-#: fortran/parse.cc:6417
+#: fortran/parse.cc:6420
 #, gcc-internal-format, gfc-internal-format
 msgid "Blank BLOCK DATA at %C conflicts with prior BLOCK DATA at %L"
 msgstr ""
 
-#: fortran/parse.cc:6443
+#: fortran/parse.cc:6446
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in BLOCK DATA at %C"
 msgstr ""
 
-#: fortran/parse.cc:6546
+#: fortran/parse.cc:6549
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in MODULE at %C"
 msgstr ""
@@ -78031,7 +78129,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:7039
+#: fortran/parse.cc:7042
 #, gcc-internal-format, gfc-internal-format
 msgid "Two main PROGRAMs at %L and %C"
 msgstr ""
@@ -78352,140 +78450,140 @@ msgstr ""
 msgid "gfc_variable_attr(): Expression isn't a variable"
 msgstr ""
 
-#: fortran/primary.cc:2822
+#: fortran/primary.cc:2821
 #, gcc-internal-format
 msgid "gfc_caf_attr(): Expression isn't a variable"
 msgstr ""
 
-#: fortran/primary.cc:2879
+#: fortran/primary.cc:2878
 #, gcc-internal-format
 msgid "gfc_caf_attr(): Bad array reference"
 msgstr ""
 
-#: fortran/primary.cc:3058
+#: fortran/primary.cc:3057
 #, gcc-internal-format
 msgid ""
 "No initializer for allocatable component %qs given in the structure "
 "constructor at %C"
 msgstr ""
 
-#: fortran/primary.cc:3069
+#: fortran/primary.cc:3068
 #, gcc-internal-format, gfc-internal-format
 msgid "Structure constructor with missing optional arguments at %C"
 msgstr ""
 
-#: fortran/primary.cc:3078
+#: fortran/primary.cc:3077
 #, gcc-internal-format
 msgid ""
 "No initializer for component %qs given in the structure constructor at %C"
 msgstr ""
 
-#: fortran/primary.cc:3126
+#: fortran/primary.cc:3125
 #, gcc-internal-format
 msgid "Cannot construct ABSTRACT type %qs at %L"
 msgstr ""
 
-#: fortran/primary.cc:3146
+#: fortran/primary.cc:3145
 #, gcc-internal-format, gfc-internal-format
 msgid "Structure constructor with named arguments at %C"
 msgstr ""
 
-#: fortran/primary.cc:3161
+#: fortran/primary.cc:3160
 #, gcc-internal-format, gfc-internal-format
 msgid "Component initializer without name after component named %s at %L"
 msgstr ""
 
-#: fortran/primary.cc:3166
+#: fortran/primary.cc:3165
 #, gcc-internal-format, gfc-internal-format
 msgid "Too many components in structure constructor at %L"
 msgstr ""
 
-#: fortran/primary.cc:3224
+#: fortran/primary.cc:3223
 #, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER expression will be truncated in constructor (%ld/%ld) at %L"
 msgstr ""
 
-#: fortran/primary.cc:3242
+#: fortran/primary.cc:3241
 #, gcc-internal-format
 msgid "Component %qs is initialized twice in the structure constructor at %L"
 msgstr ""
 
-#: fortran/primary.cc:3254
+#: fortran/primary.cc:3253
 #, gcc-internal-format
 msgid ""
 "Coindexed expression to pointer component %qs in structure constructor at %L"
 msgstr ""
 
-#: fortran/primary.cc:3308
+#: fortran/primary.cc:3307
 #, gcc-internal-format
 msgid ""
 "component %qs at %L has already been set by a parent derived type constructor"
 msgstr ""
 
-#: fortran/primary.cc:3473
+#: fortran/primary.cc:3472
 #, gcc-internal-format, gfc-internal-format
 msgid "%%LOC() as an rvalue at %C"
 msgstr ""
 
-#: fortran/primary.cc:3532
+#: fortran/primary.cc:3531
 #, 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:3563 fortran/primary.cc:3965
+#: fortran/primary.cc:3562 fortran/primary.cc:3964
 #, gcc-internal-format, gfc-internal-format
 msgid "Symbol at %C is not appropriate for an expression"
 msgstr ""
 
-#: fortran/primary.cc:3668
+#: fortran/primary.cc:3667
 #, gcc-internal-format
 msgid "Unexpected use of subroutine name %qs at %C"
 msgstr ""
 
-#: fortran/primary.cc:3700
+#: fortran/primary.cc:3699
 #, gcc-internal-format
 msgid "Statement function %qs requires argument list at %C"
 msgstr ""
 
-#: fortran/primary.cc:3703
+#: fortran/primary.cc:3702
 #, gcc-internal-format
 msgid "Function %qs requires an argument list at %C"
 msgstr ""
 
-#: fortran/primary.cc:3753
+#: fortran/primary.cc:3752
 #, gcc-internal-format
 msgid "Missing argument to %qs at %C"
 msgstr ""
 
-#: fortran/primary.cc:3766
+#: fortran/primary.cc:3765
 #, 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:3921
+#: fortran/primary.cc:3920
 #, gcc-internal-format
 msgid "Missing argument list in function %qs at %C"
 msgstr ""
 
-#: fortran/primary.cc:4035
+#: fortran/primary.cc:4034
 #, gcc-internal-format
 msgid "Derived type %qs cannot be used as a variable at %C"
 msgstr ""
 
-#: fortran/primary.cc:4076
+#: fortran/primary.cc:4075
 #, gcc-internal-format, gfc-internal-format
 msgid "Named constant at %C in an EQUIVALENCE"
 msgstr ""
 
-#: fortran/primary.cc:4081
+#: fortran/primary.cc:4080
 #, gcc-internal-format
 msgid "PARAMETER %qs shall not appear in a DATA statement at %C"
 msgstr ""
 
-#: fortran/primary.cc:4117
+#: fortran/primary.cc:4116
 #, gcc-internal-format
 msgid "%qs at %C is not a variable"
 msgstr ""
@@ -78877,39 +78975,39 @@ msgid ""
 "%L in PURE procedure"
 msgstr ""
 
-#: fortran/resolve.cc:1677
+#: fortran/resolve.cc:1679
 #, 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:1739
+#: fortran/resolve.cc:1741
 #, gcc-internal-format
 msgid "%qs at %L is ambiguous"
 msgstr ""
 
-#: fortran/resolve.cc:1743
+#: fortran/resolve.cc:1745
 #, gcc-internal-format
 msgid "GENERIC procedure %qs is not allowed as an actual argument at %L"
 msgstr ""
 
-#: fortran/resolve.cc:1864
+#: fortran/resolve.cc:1866
 #, gcc-internal-format
 msgid "Type specified for intrinsic function %qs at %L is ignored"
 msgstr ""
 
-#: fortran/resolve.cc:1877
+#: fortran/resolve.cc:1879
 #, gcc-internal-format
 msgid "Intrinsic subroutine %qs at %L shall not have a type specifier"
 msgstr ""
 
-#: fortran/resolve.cc:1888
+#: fortran/resolve.cc:1890
 #, gcc-internal-format
 msgid "%qs declared INTRINSIC at %L does not exist"
 msgstr ""
 
-#: fortran/resolve.cc:1901
+#: fortran/resolve.cc:1903
 #, gcc-internal-format
 msgid ""
 "The intrinsic %qs declared INTRINSIC at %L is not available in the current "
@@ -78917,89 +79015,89 @@ msgid ""
 "fall-intrinsics%> in order to use it."
 msgstr ""
 
-#: fortran/resolve.cc:1937
+#: fortran/resolve.cc:1939
 #, 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:1995 fortran/resolve.cc:10389 fortran/resolve.cc:12161
+#: fortran/resolve.cc:1997 fortran/resolve.cc:10433 fortran/resolve.cc:12407
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d referenced at %L is never defined"
 msgstr ""
 
-#: fortran/resolve.cc:2027
+#: fortran/resolve.cc:2029
 #, gcc-internal-format
 msgid "Derived type %qs is used as an actual argument at %L"
 msgstr ""
 
-#: fortran/resolve.cc:2045
+#: fortran/resolve.cc:2047
 #, gcc-internal-format
 msgid "Statement function %qs at %L is not allowed as an actual argument"
 msgstr ""
 
-#: fortran/resolve.cc:2053
+#: fortran/resolve.cc:2055
 #, gcc-internal-format
 msgid "Intrinsic %qs at %L is not allowed as an actual argument"
 msgstr ""
 
-#: fortran/resolve.cc:2060
+#: fortran/resolve.cc:2062
 #, gcc-internal-format
 msgid "Internal procedure %qs is used as actual argument at %L"
 msgstr ""
 
-#: fortran/resolve.cc:2068
+#: fortran/resolve.cc:2070
 #, gcc-internal-format
 msgid ""
 "ELEMENTAL non-INTRINSIC procedure %qs is not allowed as an actual argument "
 "at %L"
 msgstr ""
 
-#: fortran/resolve.cc:2095
+#: fortran/resolve.cc:2097
 #, gcc-internal-format
 msgid ""
 "Unable to find a specific INTRINSIC procedure for the reference %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:2117
+#: fortran/resolve.cc:2119
 #, gcc-internal-format
 msgid "Symbol %qs at %L is ambiguous"
 msgstr ""
 
-#: fortran/resolve.cc:2172
+#: fortran/resolve.cc:2174
 #, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L is not of numeric type"
 msgstr ""
 
-#: fortran/resolve.cc:2179
+#: fortran/resolve.cc:2181
 #, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L cannot be an array or an array section"
 msgstr ""
 
-#: fortran/resolve.cc:2193
+#: fortran/resolve.cc:2195
 #, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L is not allowed in this context"
 msgstr ""
 
-#: fortran/resolve.cc:2205
+#: fortran/resolve.cc:2207
 #, gcc-internal-format, gfc-internal-format
 msgid "Passing internal procedure at %L by location not allowed"
 msgstr ""
 
-#: fortran/resolve.cc:2216
+#: fortran/resolve.cc:2218
 #, gcc-internal-format
 msgid ""
 "ELEMENTAL procedure pointer component %qs is not allowed as an actual "
 "argument at %L"
 msgstr ""
 
-#: fortran/resolve.cc:2225
+#: fortran/resolve.cc:2227
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindexed actual argument at %L with ultimate pointer component"
 msgstr ""
 
-#: fortran/resolve.cc:2372
+#: fortran/resolve.cc:2374
 #, gcc-internal-format
 msgid ""
 "%qs at %L is an array and OPTIONAL; If it is not present, then it cannot be "
@@ -79007,92 +79105,92 @@ msgid ""
 "argument with the same rank (Fortran 2018, 15.5.2.12)"
 msgstr ""
 
-#: fortran/resolve.cc:2411
+#: fortran/resolve.cc:2413
 #, 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:2685
+#: fortran/resolve.cc:2687
 #, gcc-internal-format
 msgid "Return type mismatch of function %qs at %L (%s/%s)"
 msgstr ""
 
-#: fortran/resolve.cc:2712
+#: fortran/resolve.cc:2714
 #, gcc-internal-format
 msgid "Interface mismatch in global procedure %qs at %L: %s"
 msgstr ""
 
-#: fortran/resolve.cc:2818
+#: fortran/resolve.cc:2820
 #, gcc-internal-format
 msgid "There is no specific function for the generic %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:2838
+#: fortran/resolve.cc:2840
 #, gcc-internal-format
 msgid ""
 "Generic function %qs at %L is not consistent with a specific intrinsic "
 "interface"
 msgstr ""
 
-#: fortran/resolve.cc:2876
+#: fortran/resolve.cc:2878
 #, gcc-internal-format
 msgid "Function %qs at %L is INTRINSIC but is not compatible with an intrinsic"
 msgstr ""
 
-#: fortran/resolve.cc:2931
+#: fortran/resolve.cc:2933
 #, gcc-internal-format
 msgid "Unable to resolve the specific function %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3008
+#: fortran/resolve.cc:3010
 #, gcc-internal-format
 msgid ""
 "Missing explicit declaration with EXTERNAL attribute for symbol %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3040
+#: fortran/resolve.cc:3042
 #, gcc-internal-format
 msgid "Function %qs at %L has no IMPLICIT type; did you mean %qs?"
 msgstr ""
 
-#: fortran/resolve.cc:3044 fortran/resolve.cc:17382
+#: fortran/resolve.cc:3046 fortran/resolve.cc:17679
 #, gcc-internal-format
 msgid "Function %qs at %L has no IMPLICIT type"
 msgstr ""
 
-#: fortran/resolve.cc:3168
+#: fortran/resolve.cc:3170
 #, gcc-internal-format
 msgid "Reference to impure function %qs at %L inside a FORALL %s"
 msgstr ""
 
-#: fortran/resolve.cc:3175
+#: fortran/resolve.cc:3177
 #, gcc-internal-format
 msgid "Reference to impure function %qs at %L inside a DO CONCURRENT %s"
 msgstr ""
 
-#: fortran/resolve.cc:3182
+#: fortran/resolve.cc:3184
 #, gcc-internal-format
 msgid "Reference to impure function %qs at %L within a PURE procedure"
 msgstr ""
 
-#: fortran/resolve.cc:3249
+#: fortran/resolve.cc:3251
 #, gcc-internal-format
 msgid "Unexpected junk after %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3260
+#: fortran/resolve.cc:3262
 #, gcc-internal-format
 msgid "%qs at %L is not a function"
 msgstr ""
 
-#: fortran/resolve.cc:3268 fortran/resolve.cc:3765
+#: fortran/resolve.cc:3270 fortran/resolve.cc:3785
 #, gcc-internal-format
 msgid "ABSTRACT INTERFACE %qs must not be referenced at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3280
+#: fortran/resolve.cc:3282
 #, gcc-internal-format
 msgid ""
 "ABSTRACT INTERFACE %qs at %L must not have an assumed character length "
@@ -79100,349 +79198,349 @@ msgid ""
 msgstr ""
 
 #. Internal procedures are taken care of in resolve_contained_fntype.
-#: fortran/resolve.cc:3323
+#: fortran/resolve.cc:3325
 #, 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:3357
+#: fortran/resolve.cc:3359
 #, gcc-internal-format
 msgid "resolve_function(): bad function type"
 msgstr ""
 
-#: fortran/resolve.cc:3371
+#: fortran/resolve.cc:3373
 #, 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:3387
+#: fortran/resolve.cc:3389
 #, gcc-internal-format
 msgid ""
 "User defined non-ELEMENTAL function %qs at %L not allowed in WORKSHARE "
 "construct"
 msgstr ""
 
-#: fortran/resolve.cc:3449
+#: fortran/resolve.cc:3451
 #, gcc-internal-format
 msgid ""
 "ENTRY %qs at %L cannot be called recursively, as function %qs is not "
 "RECURSIVE"
 msgstr ""
 
-#: fortran/resolve.cc:3453
+#: fortran/resolve.cc:3455
 #, gcc-internal-format
 msgid "Function %qs at %L cannot be called recursively, as it is not RECURSIVE"
 msgstr ""
 
-#: fortran/resolve.cc:3493
+#: fortran/resolve.cc:3513
 #, gcc-internal-format
 msgid "Using function %qs at %L is deprecated"
 msgstr ""
 
-#: fortran/resolve.cc:3509
+#: fortran/resolve.cc:3529
 #, gcc-internal-format
 msgid "Subroutine call to %qs in FORALL block at %L is not PURE"
 msgstr ""
 
-#: fortran/resolve.cc:3515
+#: fortran/resolve.cc:3535
 #, gcc-internal-format
 msgid "Subroutine call to %qs in DO CONCURRENT block at %L is not PURE"
 msgstr ""
 
-#: fortran/resolve.cc:3521
+#: fortran/resolve.cc:3541
 #, gcc-internal-format
 msgid "Subroutine call to %qs at %L is not PURE"
 msgstr ""
 
-#: fortran/resolve.cc:3589
+#: fortran/resolve.cc:3609
 #, gcc-internal-format
 msgid "There is no specific subroutine for the generic %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3598
+#: fortran/resolve.cc:3618
 #, gcc-internal-format
 msgid ""
 "Generic subroutine %qs at %L is not consistent with an intrinsic subroutine "
 "interface"
 msgstr ""
 
-#: fortran/resolve.cc:3633
+#: fortran/resolve.cc:3653
 #, gcc-internal-format
 msgid ""
 "Subroutine %qs at %L is INTRINSIC but is not compatible with an intrinsic"
 msgstr ""
 
-#: fortran/resolve.cc:3678
+#: fortran/resolve.cc:3698
 #, gcc-internal-format
 msgid "Unable to resolve the specific subroutine %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3736
+#: fortran/resolve.cc:3756
 #, gcc-internal-format
 msgid "%qs at %L has a type, which is not consistent with the CALL at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3775
+#: fortran/resolve.cc:3795
 #, gcc-internal-format
 msgid ""
 "ENTRY %qs at %L cannot be called recursively, as subroutine %qs is not "
 "RECURSIVE"
 msgstr ""
 
-#: fortran/resolve.cc:3779
+#: fortran/resolve.cc:3799
 #, gcc-internal-format
 msgid ""
 "SUBROUTINE %qs at %L cannot be called recursively, as it is not RECURSIVE"
 msgstr ""
 
-#: fortran/resolve.cc:3824
+#: fortran/resolve.cc:3844
 #, gcc-internal-format
 msgid "resolve_subroutine(): bad function type"
 msgstr ""
 
-#: fortran/resolve.cc:3841
+#: fortran/resolve.cc:3861
 #, gcc-internal-format
 msgid "Using subroutine %qs at %L is deprecated"
 msgstr ""
 
-#: fortran/resolve.cc:3868
+#: fortran/resolve.cc:3888
 #, gcc-internal-format, gfc-internal-format
 msgid "Shapes for operands at %L and %L are not conformable"
 msgstr ""
 
-#: fortran/resolve.cc:3920
+#: fortran/resolve.cc:3940
 #, gcc-internal-format
 msgid "logical_to_bitwise(): Bad intrinsic"
 msgstr ""
 
-#: fortran/resolve.cc:4023
+#: fortran/resolve.cc:4043
 #, gcc-internal-format
 msgid "Impure function %qs at %L might not be evaluated"
 msgstr ""
 
-#: fortran/resolve.cc:4027
+#: fortran/resolve.cc:4047
 #, gcc-internal-format, gfc-internal-format
 msgid "Impure function at %L might not be evaluated"
 msgstr ""
 
-#: fortran/resolve.cc:4104
+#: fortran/resolve.cc:4124
 #, gcc-internal-format
 msgid "BOZ literal constant at %L cannot be an operand of unary operator %qs"
 msgstr ""
 
-#: fortran/resolve.cc:4128
+#: fortran/resolve.cc:4148
 #, gcc-internal-format
 msgid "Operands at %L and %L cannot appear as operands of binary operator %qs"
 msgstr ""
 
-#: fortran/resolve.cc:4302 fortran/resolve.cc:4317
+#: fortran/resolve.cc:4322 fortran/resolve.cc:4337
 #, 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:4356
+#: fortran/resolve.cc:4376
 #, gcc-internal-format, gfc-internal-format
 msgid "Equality comparison for %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:4358
+#: fortran/resolve.cc:4378
 #, gcc-internal-format, gfc-internal-format
 msgid "Inequality comparison for %s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:4418
+#: fortran/resolve.cc:4438
 #, gcc-internal-format
 msgid "resolve_operator(): Bad intrinsic"
 msgstr ""
 
-#: fortran/resolve.cc:4704
+#: fortran/resolve.cc:4724
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld < %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.cc:4709
+#: fortran/resolve.cc:4729
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld < %ld) in codimension %d"
 msgstr ""
 
-#: fortran/resolve.cc:4719
+#: fortran/resolve.cc:4739
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld > %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.cc:4724
+#: fortran/resolve.cc:4744
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld > %ld) in codimension %d"
 msgstr ""
 
-#: fortran/resolve.cc:4745
+#: fortran/resolve.cc:4765
 #, gcc-internal-format, gfc-internal-format
 msgid "Illegal stride of zero at %L"
 msgstr ""
 
-#: fortran/resolve.cc:4762
+#: fortran/resolve.cc:4782
 #, 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:4770
+#: fortran/resolve.cc:4790
 #, 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:4786
+#: fortran/resolve.cc:4806
 #, 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:4795
+#: fortran/resolve.cc:4815
 #, 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:4811
+#: fortran/resolve.cc:4831
 #, gcc-internal-format
 msgid "check_dimension(): Bad array reference"
 msgstr ""
 
-#: fortran/resolve.cc:4834
+#: fortran/resolve.cc:4854
 #, gcc-internal-format, gfc-internal-format
 msgid "Rightmost upper bound of assumed size array section not specified at %L"
 msgstr ""
 
-#: fortran/resolve.cc:4844
+#: fortran/resolve.cc:4864
 #, gcc-internal-format, gfc-internal-format
 msgid "Rank mismatch in array reference at %L (%d/%d)"
 msgstr ""
 
-#: fortran/resolve.cc:4852
+#: fortran/resolve.cc:4872
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindex rank mismatch in array reference at %L (%d/%d)"
 msgstr ""
 
-#: fortran/resolve.cc:4868
+#: fortran/resolve.cc:4888
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindex of codimension %d must be a scalar at %L"
 msgstr ""
 
-#: fortran/resolve.cc:4896
+#: fortran/resolve.cc:4916
 #, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:4902
+#: fortran/resolve.cc:4922
 #, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L must be of INTEGER type, found %s"
 msgstr ""
 
-#: fortran/resolve.cc:4908
+#: fortran/resolve.cc:4928
 #, gcc-internal-format, gfc-internal-format
 msgid "REAL array index at %L"
 msgstr ""
 
-#: fortran/resolve.cc:4947
+#: fortran/resolve.cc:4967
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument dim at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:4954
+#: fortran/resolve.cc:4974
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument dim at %L must be of INTEGER type"
 msgstr ""
 
-#: fortran/resolve.cc:5014
+#: fortran/resolve.cc:5034
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid array reference of a non-array entity at %L"
 msgstr ""
 
-#: fortran/resolve.cc:5028
+#: fortran/resolve.cc:5048
 #, gcc-internal-format
 msgid "find_array_spec(): unused as(1)"
 msgstr ""
 
-#: fortran/resolve.cc:5040
+#: fortran/resolve.cc:5060
 #, gcc-internal-format
 msgid "find_array_spec(): unused as(2)"
 msgstr ""
 
-#: fortran/resolve.cc:5085
+#: fortran/resolve.cc:5105
 #, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L is an array of rank %d"
 msgstr ""
 
-#: fortran/resolve.cc:5183
+#: fortran/resolve.cc:5203
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L must be of type INTEGER"
 msgstr ""
 
-#: fortran/resolve.cc:5190
+#: fortran/resolve.cc:5210
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:5212
+#: fortran/resolve.cc:5232
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L must be of type INTEGER"
 msgstr ""
 
-#: fortran/resolve.cc:5219
+#: fortran/resolve.cc:5239
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:5239
+#: fortran/resolve.cc:5259
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L is too large"
 msgstr ""
 
-#: fortran/resolve.cc:5430
+#: fortran/resolve.cc:5450
 #, gcc-internal-format
 msgid "resolve_ref(): Bad array reference"
 msgstr ""
 
-#: fortran/resolve.cc:5444
+#: fortran/resolve.cc:5464
 #, 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:5454
+#: fortran/resolve.cc:5474
 #, 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:5500
+#: fortran/resolve.cc:5520
 #, 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:5592
+#: fortran/resolve.cc:5612
 #, gcc-internal-format
 msgid "gfc_expression_rank(): Two array specs"
 msgstr ""
 
-#: fortran/resolve.cc:5674
+#: fortran/resolve.cc:5694
 #, 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:5684
+#: fortran/resolve.cc:5704
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L may only be used as actual argument"
 msgstr ""
@@ -79451,14 +79549,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:5694
+#: fortran/resolve.cc:5714
 #, 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:5713
+#: fortran/resolve.cc:5733
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank variable %s at %L may only be used as actual argument"
 msgstr ""
@@ -79467,321 +79565,321 @@ 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:5723
+#: fortran/resolve.cc:5743
 #, 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:5734
+#: fortran/resolve.cc:5754
 #, 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:5743
+#: fortran/resolve.cc:5763
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L shall not have a subobject reference"
 msgstr ""
 
-#: fortran/resolve.cc:5759
+#: fortran/resolve.cc:5779
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank variable %s at %L shall not have a subobject reference"
 msgstr ""
 
-#: fortran/resolve.cc:5941
+#: fortran/resolve.cc:5961
 #, 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:5946
+#: fortran/resolve.cc:5966
 #, gcc-internal-format
 msgid ""
 "Variable %qs is used at %L before the ENTRY statement in which it is a "
 "parameter"
 msgstr ""
 
-#: fortran/resolve.cc:6016
+#: fortran/resolve.cc:6036
 #, gcc-internal-format, gfc-internal-format
 msgid "Polymorphic subobject of coindexed object at %L"
 msgstr ""
 
-#: fortran/resolve.cc:6029
+#: fortran/resolve.cc:6049
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindexed object with polymorphic allocatable subcomponent at %L"
 msgstr ""
 
-#: fortran/resolve.cc:6045
+#: fortran/resolve.cc:6065
 #, gcc-internal-format
 msgid "Using variable %qs at %L is deprecated"
 msgstr ""
 
-#: fortran/resolve.cc:6132
+#: fortran/resolve.cc:6155
 #, 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:6289 fortran/resolve.cc:6441
+#: fortran/resolve.cc:6333 fortran/resolve.cc:6485
 #, gcc-internal-format, gfc-internal-format
 msgid "Error in typebound call at %L"
 msgstr ""
 
-#: fortran/resolve.cc:6405
+#: fortran/resolve.cc:6449
 #, gcc-internal-format, gfc-internal-format
 msgid "Passed-object at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:6412
+#: fortran/resolve.cc:6456
 #, gcc-internal-format
 msgid ""
 "Base object for procedure-pointer component call at %L is of ABSTRACT type "
 "%qs"
 msgstr ""
 
-#: fortran/resolve.cc:6451
+#: fortran/resolve.cc:6495
 #, gcc-internal-format
 msgid "Base object for type-bound procedure call at %L is of ABSTRACT type %qs"
 msgstr ""
 
-#: fortran/resolve.cc:6460
+#: fortran/resolve.cc:6504
 #, 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:6648
+#: fortran/resolve.cc:6692
 #, gcc-internal-format
 msgid ""
 "Found no matching specific binding for the call to the GENERIC %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:6682
+#: fortran/resolve.cc:6726
 #, gcc-internal-format
 msgid "%qs at %L should be a SUBROUTINE"
 msgstr ""
 
-#: fortran/resolve.cc:6734
+#: fortran/resolve.cc:6778
 #, gcc-internal-format
 msgid "%qs at %L should be a FUNCTION"
 msgstr ""
 
-#: fortran/resolve.cc:7269
+#: fortran/resolve.cc:7313
 #, gcc-internal-format
 msgid "gfc_resolve_expr(): Bad expression type"
 msgstr ""
 
-#: fortran/resolve.cc:7302
+#: fortran/resolve.cc:7346
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be a scalar"
 msgstr ""
 
-#: fortran/resolve.cc:7312
+#: fortran/resolve.cc:7356
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be integer"
 msgstr ""
 
-#: fortran/resolve.cc:7316 fortran/resolve.cc:7323
+#: fortran/resolve.cc:7360 fortran/resolve.cc:7367
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be INTEGER"
 msgstr ""
 
-#: fortran/resolve.cc:7378
+#: fortran/resolve.cc:7422
 #, gcc-internal-format, gfc-internal-format
 msgid "Step expression in DO loop at %L cannot be zero"
 msgstr ""
 
-#: fortran/resolve.cc:7401
+#: fortran/resolve.cc:7445
 #, gcc-internal-format, gfc-internal-format
 msgid "DO loop at %L will be executed zero times"
 msgstr ""
 
-#: fortran/resolve.cc:7418
+#: fortran/resolve.cc:7462
 #, gcc-internal-format, gfc-internal-format
 msgid "DO loop at %L is undefined as it overflows"
 msgstr ""
 
-#: fortran/resolve.cc:7424
+#: fortran/resolve.cc:7468
 #, gcc-internal-format, gfc-internal-format
 msgid "DO loop at %L is undefined as it underflows"
 msgstr ""
 
-#: fortran/resolve.cc:7485
+#: fortran/resolve.cc:7529
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL index-name at %L must be a scalar INTEGER"
 msgstr ""
 
-#: fortran/resolve.cc:7490
+#: fortran/resolve.cc:7534
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL start expression at %L must be a scalar INTEGER"
 msgstr ""
 
-#: fortran/resolve.cc:7497
+#: fortran/resolve.cc:7541
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL end expression at %L must be a scalar INTEGER"
 msgstr ""
 
-#: fortran/resolve.cc:7505
+#: fortran/resolve.cc:7549
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL stride expression at %L must be a scalar %s"
 msgstr ""
 
-#: fortran/resolve.cc:7510
+#: fortran/resolve.cc:7554
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL stride expression at %L cannot be zero"
 msgstr ""
 
-#: fortran/resolve.cc:7523
+#: fortran/resolve.cc:7567
 #, gcc-internal-format
 msgid "FORALL index %qs may not appear in triplet specification at %L"
 msgstr ""
 
-#: fortran/resolve.cc:7628 fortran/resolve.cc:7926
+#: fortran/resolve.cc:7672 fortran/resolve.cc:7970
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L must be ALLOCATABLE or a POINTER"
 msgstr ""
 
-#: fortran/resolve.cc:7636 fortran/resolve.cc:7889
+#: fortran/resolve.cc:7680 fortran/resolve.cc:7933
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindexed allocatable object at %L"
 msgstr ""
 
-#: fortran/resolve.cc:7746
+#: fortran/resolve.cc:7790
 #, 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:7777
+#: fortran/resolve.cc:7821
 #, 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:7937
+#: fortran/resolve.cc:7981
 #, gcc-internal-format, gfc-internal-format
 msgid "Type of entity at %L is type incompatible with source-expr at %L"
 msgstr ""
 
-#: fortran/resolve.cc:7949
+#: fortran/resolve.cc:7993
 #, 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:7963
+#: fortran/resolve.cc:8007
 #, 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:7978
+#: fortran/resolve.cc:8022
 #, 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:7991
+#: fortran/resolve.cc:8035
 #, 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:8009
+#: fortran/resolve.cc:8053
 #, 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:8090 fortran/resolve.cc:8105
+#: fortran/resolve.cc:8134 fortran/resolve.cc:8149
 #, gcc-internal-format, gfc-internal-format
 msgid "Array specification required in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8097
+#: fortran/resolve.cc:8141
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Array specification or array-valued SOURCE= expression required in ALLOCATE "
 "statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8122
+#: fortran/resolve.cc:8166
 #, gcc-internal-format, gfc-internal-format
 msgid "Coarray specification required in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8132 fortran/resolve.cc:8234
+#: fortran/resolve.cc:8176 fortran/resolve.cc:8278
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad coarray specification in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8138
+#: fortran/resolve.cc:8182
 #, gcc-internal-format, gfc-internal-format
 msgid "Upper cobound is less than lower cobound at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8150
+#: fortran/resolve.cc:8194
 #, gcc-internal-format, gfc-internal-format
 msgid "Upper cobound is less than lower cobound of 1 at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8161 fortran/resolve.cc:8189
+#: fortran/resolve.cc:8205 fortran/resolve.cc:8233
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad array specification in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8208
+#: fortran/resolve.cc:8252
 #, 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:8223
+#: fortran/resolve.cc:8267
 #, gcc-internal-format
 msgid "Expected %<*%> in coindex specification in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8265
+#: fortran/resolve.cc:8309
 #, gcc-internal-format, gfc-internal-format
 msgid "Stat-variable at %L must be a scalar INTEGER variable"
 msgstr ""
 
-#: fortran/resolve.cc:8294
+#: fortran/resolve.cc:8338
 #, gcc-internal-format, gfc-internal-format
 msgid "Stat-variable at %L shall not be %sd within the same %s statement"
 msgstr ""
 
-#: fortran/resolve.cc:8307
+#: fortran/resolve.cc:8351
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG at %L is useless without a STAT tag"
 msgstr ""
 
-#: fortran/resolve.cc:8321
+#: fortran/resolve.cc:8365
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG variable at %L shall be a scalar default CHARACTER variable"
 msgstr ""
 
-#: fortran/resolve.cc:8350
+#: fortran/resolve.cc:8394
 #, gcc-internal-format, gfc-internal-format
 msgid "Errmsg-variable at %L shall not be %sd within the same %s statement"
 msgstr ""
 
-#: fortran/resolve.cc:8382
+#: fortran/resolve.cc:8426
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L also appears at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8388 fortran/resolve.cc:8394
+#: fortran/resolve.cc:8432 fortran/resolve.cc:8438
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L is subobject of object at %L"
 msgstr ""
@@ -79790,301 +79888,301 @@ 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:8622
+#: fortran/resolve.cc:8666
 #, gcc-internal-format, gfc-internal-format
 msgid "CASE label at %L overlaps with CASE label at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8673
+#: fortran/resolve.cc:8717
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L must be of type %s"
 msgstr ""
 
-#: fortran/resolve.cc:8684
+#: fortran/resolve.cc:8728
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L must be of kind %d"
 msgstr ""
 
-#: fortran/resolve.cc:8697
+#: fortran/resolve.cc:8741
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:8743
+#: fortran/resolve.cc:8787
 #, 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:8762
+#: fortran/resolve.cc:8806
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of SELECT statement at %L cannot be %s"
 msgstr ""
 
-#: fortran/resolve.cc:8772
+#: fortran/resolve.cc:8816
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of SELECT statement at %L must be a scalar expression"
 msgstr ""
 
-#: fortran/resolve.cc:8790 fortran/resolve.cc:8798
+#: fortran/resolve.cc:8834 fortran/resolve.cc:8842
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L is not in the range of %s"
 msgstr ""
 
-#: fortran/resolve.cc:8860 fortran/resolve.cc:9517
+#: fortran/resolve.cc:8904 fortran/resolve.cc:9561
 #, 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:8886
+#: fortran/resolve.cc:8930
 #, gcc-internal-format, gfc-internal-format
 msgid "Logical range in CASE statement at %L is not allowed"
 msgstr ""
 
-#: fortran/resolve.cc:8899
+#: fortran/resolve.cc:8943
 #, gcc-internal-format, gfc-internal-format
 msgid "Constant logical value in CASE statement is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8914
+#: fortran/resolve.cc:8958
 #, gcc-internal-format, gfc-internal-format
 msgid "Range specification at %L can never be matched"
 msgstr ""
 
-#: fortran/resolve.cc:9017
+#: fortran/resolve.cc:9061
 #, gcc-internal-format, gfc-internal-format
 msgid "Logical SELECT CASE block at %L has more that two cases"
 msgstr ""
 
-#: fortran/resolve.cc:9068
+#: fortran/resolve.cc:9112
 #, gcc-internal-format
 msgid "Associating entity %qs at %L is a procedure pointer"
 msgstr ""
 
-#: fortran/resolve.cc:9077
+#: fortran/resolve.cc:9121
 #, gcc-internal-format
 msgid "Derived type %qs cannot be used as a variable at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9094
+#: fortran/resolve.cc:9138
 #, gcc-internal-format
 msgid "Associating entity %qs at %L is a procedure name"
 msgstr ""
 
-#: fortran/resolve.cc:9110
+#: fortran/resolve.cc:9154
 #, gcc-internal-format, gfc-internal-format
 msgid "Associating selector-expression at %L yields a procedure"
 msgstr ""
 
-#: fortran/resolve.cc:9117
+#: fortran/resolve.cc:9161
 #, gcc-internal-format, gfc-internal-format
 msgid "Selector at %L cannot be NULL()"
 msgstr ""
 
-#: fortran/resolve.cc:9122
+#: fortran/resolve.cc:9166
 #, gcc-internal-format, gfc-internal-format
 msgid "Selector at %L has no type"
 msgstr ""
 
-#: fortran/resolve.cc:9144
+#: fortran/resolve.cc:9188
 #, gcc-internal-format
 msgid "Associate-name %qs at %L is used as array"
 msgstr ""
 
-#: fortran/resolve.cc:9155
+#: fortran/resolve.cc:9199
 #, gcc-internal-format, gfc-internal-format
 msgid "CLASS selector at %L needs a temporary which is not yet implemented"
 msgstr ""
 
-#: fortran/resolve.cc:9387
+#: fortran/resolve.cc:9431
 #, gcc-internal-format, gfc-internal-format
 msgid "Selector shall be polymorphic in SELECT TYPE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9425 fortran/resolve.cc:9437
+#: fortran/resolve.cc:9469 fortran/resolve.cc:9481
 #, gcc-internal-format, gfc-internal-format
 msgid "Selector at %L must not be coindexed"
 msgstr ""
 
-#: fortran/resolve.cc:9466
+#: fortran/resolve.cc:9510
 #, gcc-internal-format, gfc-internal-format
 msgid "TYPE IS at %L overlaps with TYPE IS at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9479
+#: fortran/resolve.cc:9523
 #, gcc-internal-format
 msgid "Derived type %qs at %L must be extensible"
 msgstr ""
 
-#: fortran/resolve.cc:9492
+#: fortran/resolve.cc:9536
 #, gcc-internal-format
 msgid "Derived type %qs at %L must be an extension of %qs"
 msgstr ""
 
-#: fortran/resolve.cc:9495
+#: fortran/resolve.cc:9539
 #, gcc-internal-format
 msgid "Unexpected intrinsic type %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9505
+#: fortran/resolve.cc:9549
 #, 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:9752
+#: fortran/resolve.cc:9796
 #, gcc-internal-format, gfc-internal-format
 msgid "Double CLASS IS block in SELECT TYPE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9886
+#: fortran/resolve.cc:9930
 #, gcc-internal-format, gfc-internal-format
 msgid "RANK DEFAULT at %L is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9895
+#: fortran/resolve.cc:9939
 #, gcc-internal-format, gfc-internal-format
 msgid "RANK (*) at %L is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9898
+#: fortran/resolve.cc:9942
 #, gcc-internal-format, gfc-internal-format
 msgid "RANK (%i) at %L is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9908 fortran/resolve.cc:9913
+#: fortran/resolve.cc:9952 fortran/resolve.cc:9957
 #, 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:10022
+#: fortran/resolve.cc:10066
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid context for NULL () intrinsic at %L"
 msgstr ""
 
-#: fortran/resolve.cc:10076
+#: fortran/resolve.cc:10120
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO %s procedure at %L must be recursive"
 msgstr ""
 
-#: fortran/resolve.cc:10086
+#: fortran/resolve.cc:10130
 #, 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:10099
+#: fortran/resolve.cc:10143
 #, 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:10108
+#: fortran/resolve.cc:10152
 #, gcc-internal-format, gfc-internal-format
 msgid "Data transfer element at %L cannot have procedure pointer components"
 msgstr ""
 
-#: fortran/resolve.cc:10115
+#: fortran/resolve.cc:10159
 #, 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:10126
+#: fortran/resolve.cc:10170
 #, gcc-internal-format, gfc-internal-format
 msgid "Data transfer element at %L cannot have PRIVATE components"
 msgstr ""
 
-#: fortran/resolve.cc:10132
+#: fortran/resolve.cc:10176
 #, 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:10150
+#: fortran/resolve.cc:10194
 #, 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:10207
+#: fortran/resolve.cc:10251
 #, gcc-internal-format, gfc-internal-format
 msgid "Lock variable at %L must be a scalar of type LOCK_TYPE"
 msgstr ""
 
-#: fortran/resolve.cc:10217
+#: fortran/resolve.cc:10261
 #, gcc-internal-format, gfc-internal-format
 msgid "Event variable at %L must be a scalar of type EVENT_TYPE"
 msgstr ""
 
-#: fortran/resolve.cc:10221
+#: fortran/resolve.cc:10265
 #, gcc-internal-format, gfc-internal-format
 msgid "Event variable argument at %L must be a coarray or coindexed"
 msgstr ""
 
-#: fortran/resolve.cc:10224
+#: fortran/resolve.cc:10268
 #, gcc-internal-format, gfc-internal-format
 msgid "Event variable argument at %L must be a coarray but not coindexed"
 msgstr ""
 
-#: fortran/resolve.cc:10231 fortran/resolve.cc:10353
+#: fortran/resolve.cc:10275 fortran/resolve.cc:10397
 #, gcc-internal-format, gfc-internal-format
 msgid "STAT= argument at %L must be a scalar INTEGER variable"
 msgstr ""
 
-#: fortran/resolve.cc:10243 fortran/resolve.cc:10365
+#: fortran/resolve.cc:10287 fortran/resolve.cc:10409
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG= argument at %L must be a scalar CHARACTER variable"
 msgstr ""
 
-#: fortran/resolve.cc:10255
+#: fortran/resolve.cc:10299
 #, gcc-internal-format, gfc-internal-format
 msgid "ACQUIRED_LOCK= argument at %L must be a scalar LOGICAL variable"
 msgstr ""
 
-#: fortran/resolve.cc:10268
+#: fortran/resolve.cc:10312
 #, gcc-internal-format, gfc-internal-format
 msgid "UNTIL_COUNT= argument at %L must be a scalar INTEGER expression"
 msgstr ""
 
-#: fortran/resolve.cc:10329
+#: fortran/resolve.cc:10373
 #, gcc-internal-format, gfc-internal-format
 msgid "Imageset argument at %L must be a scalar or rank-1 INTEGER expression"
 msgstr ""
 
-#: fortran/resolve.cc:10333 fortran/resolve.cc:10343
+#: fortran/resolve.cc:10377 fortran/resolve.cc:10387
 #, gcc-internal-format, gfc-internal-format
 msgid "Imageset argument at %L must between 1 and num_images()"
 msgstr ""
 
-#: fortran/resolve.cc:10396
+#: fortran/resolve.cc:10440
 #, 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:10406
+#: fortran/resolve.cc:10450
 #, 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:10423 fortran/resolve.cc:10446
+#: fortran/resolve.cc:10467 fortran/resolve.cc:10490
 #, gcc-internal-format, gfc-internal-format
 msgid "GOTO statement at %L leaves CRITICAL construct for label at %L"
 msgstr ""
 
-#: fortran/resolve.cc:10427 fortran/resolve.cc:10452
+#: fortran/resolve.cc:10471 fortran/resolve.cc:10496
 #, gcc-internal-format, gfc-internal-format
 msgid "GOTO statement at %L leaves DO CONCURRENT construct for label at %L"
 msgstr ""
@@ -80092,74 +80190,74 @@ 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:10467
+#: fortran/resolve.cc:10511
 #, 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:10539
+#: fortran/resolve.cc:10583
 #, gcc-internal-format, gfc-internal-format
 msgid "WHERE mask at %L has inconsistent shape"
 msgstr ""
 
-#: fortran/resolve.cc:10555
+#: fortran/resolve.cc:10599
 #, gcc-internal-format, gfc-internal-format
 msgid "WHERE assignment target at %L has inconsistent shape"
 msgstr ""
 
-#: fortran/resolve.cc:10563 fortran/resolve.cc:10650
+#: fortran/resolve.cc:10612 fortran/resolve.cc:10704
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-ELEMENTAL user-defined assignment in WHERE at %L"
 msgstr ""
 
-#: fortran/resolve.cc:10573 fortran/resolve.cc:10660
+#: fortran/resolve.cc:10622 fortran/resolve.cc:10714
 #, gcc-internal-format, gfc-internal-format
 msgid "Unsupported statement inside WHERE at %L"
 msgstr ""
 
-#: fortran/resolve.cc:10604
+#: fortran/resolve.cc:10653
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to a FORALL index variable at %L"
 msgstr ""
 
-#: fortran/resolve.cc:10613
+#: fortran/resolve.cc:10662
 #, 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:10760
+#: fortran/resolve.cc:10819
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL construct at %L"
 msgstr ""
 
-#: fortran/resolve.cc:10781
+#: fortran/resolve.cc:10840
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL index-name at %L must be a scalar variable of type integer"
 msgstr ""
 
-#: fortran/resolve.cc:10791
+#: fortran/resolve.cc:10850
 #, gcc-internal-format, gfc-internal-format
 msgid "An outer FORALL construct already has an index with this name %L"
 msgstr ""
 
-#: fortran/resolve.cc:10868
+#: fortran/resolve.cc:10932
 #, gcc-internal-format, gfc-internal-format
 msgid "WHERE/ELSEWHERE clause at %L requires a LOGICAL array"
 msgstr ""
 
-#: fortran/resolve.cc:10984
+#: fortran/resolve.cc:11048
 #, gcc-internal-format
 msgid "gfc_resolve_blocks(): Bad block type"
 msgstr ""
 
-#: fortran/resolve.cc:11097
+#: fortran/resolve.cc:11161
 #, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER expression will be truncated in assignment (%ld/%ld) at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11129
+#: fortran/resolve.cc:11193
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Coindexed expression at %L is assigned to a derived type variable with a "
@@ -80167,7 +80265,7 @@ msgid ""
 msgstr ""
 
 #. F2008, C1283 (4).
-#: fortran/resolve.cc:11135
+#: fortran/resolve.cc:11199
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "In a pure subprogram an INTENT(IN) dummy argument shall not be used as the "
@@ -80176,43 +80274,43 @@ msgid ""
 "component selection."
 msgstr ""
 
-#: fortran/resolve.cc:11147
+#: fortran/resolve.cc:11211
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to coindexed variable at %L in a PURE procedure"
 msgstr ""
 
-#: fortran/resolve.cc:11179
+#: fortran/resolve.cc:11243
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to polymorphic coarray at %L is not permitted"
 msgstr ""
 
-#: fortran/resolve.cc:11183
+#: fortran/resolve.cc:11247
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to an allocatable polymorphic variable at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11188
+#: fortran/resolve.cc:11252
 #, gcc-internal-format
 msgid ""
 "Assignment to an allocatable polymorphic variable at %L requires %<-frealloc-"
 "lhs%>"
 msgstr ""
 
-#: fortran/resolve.cc:11195
+#: fortran/resolve.cc:11259
 #, 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:11206
+#: fortran/resolve.cc:11270
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Coindexed variable must not have an allocatable ultimate component in "
 "assignment at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11526
+#: fortran/resolve.cc:11693
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TODO: type-bound defined assignment(s) at %L not done because multiple part "
@@ -80221,93 +80319,93 @@ msgstr ""
 
 #. Even if standard does not support this feature, continue to build
 #. the two statements to avoid upsetting frontend_passes.c.
-#: fortran/resolve.cc:11768
+#: fortran/resolve.cc:11997
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer procedure assignment at %L"
 msgstr ""
 
-#: fortran/resolve.cc:11780
+#: fortran/resolve.cc:12009
 #, 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:11865
+#: fortran/resolve.cc:12094
 #, gcc-internal-format
 msgid ""
 "TEAM argument to %qs at %L must be a scalar expression of type TEAM_TYPE"
 msgstr ""
 
-#: fortran/resolve.cc:12047
+#: fortran/resolve.cc:12285
 #, gcc-internal-format, gfc-internal-format
 msgid "TEAM NUMBER argument to FORM TEAM at %L must be a scalar INTEGER"
 msgstr ""
 
-#: fortran/resolve.cc:12083
+#: fortran/resolve.cc:12321
 #, gcc-internal-format, gfc-internal-format
 msgid "ASSIGNED GOTO statement at %L requires a scalar INTEGER variable"
 msgstr ""
 
-#: fortran/resolve.cc:12087
+#: fortran/resolve.cc:12325
 #, gcc-internal-format
 msgid "Variable %qs has not been assigned a target label at %L"
 msgstr ""
 
-#: fortran/resolve.cc:12098
+#: fortran/resolve.cc:12336
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Alternate RETURN statement at %L requires a SCALAR-INTEGER return specifier"
 msgstr ""
 
-#: fortran/resolve.cc:12136
+#: fortran/resolve.cc:12374
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected intrinsic assignment in OMP WORKSHARE at %L"
 msgstr ""
 
-#: fortran/resolve.cc:12170
+#: fortran/resolve.cc:12416
 #, gcc-internal-format, gfc-internal-format
 msgid "ASSIGN statement at %L requires a scalar default INTEGER variable"
 msgstr ""
 
-#: fortran/resolve.cc:12217
+#: fortran/resolve.cc:12463
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid NULL at %L"
 msgstr ""
 
-#: fortran/resolve.cc:12221
+#: fortran/resolve.cc:12467
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Arithmetic IF statement at %L requires a scalar REAL or INTEGER expression"
 msgstr ""
 
-#: fortran/resolve.cc:12282
+#: fortran/resolve.cc:12528
 #, gcc-internal-format
 msgid "gfc_resolve_code(): No expression on DO WHILE"
 msgstr ""
 
-#: fortran/resolve.cc:12287
+#: fortran/resolve.cc:12533
 #, 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:12371
+#: fortran/resolve.cc:12617
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL mask clause at %L requires a scalar LOGICAL expression"
 msgstr ""
 
-#: fortran/resolve.cc:12473
+#: fortran/resolve.cc:12719
 #, gcc-internal-format
 msgid "gfc_resolve_code(): Bad statement code"
 msgstr ""
 
-#: fortran/resolve.cc:12494
+#: fortran/resolve.cc:12740
 #, gcc-internal-format
 msgid "Using parameter %qs declared at %L is deprecated"
 msgstr ""
 
-#: fortran/resolve.cc:12588
+#: fortran/resolve.cc:12834
 #, gcc-internal-format
 msgid ""
 "Variable %qs with binding label %qs at %L uses the same global identifier as "
@@ -80316,7 +80414,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:12602
+#: fortran/resolve.cc:12848
 #, gcc-internal-format
 msgid ""
 "Variable %qs from module %qs with binding label %qs at %L uses the same "
@@ -80326,63 +80424,63 @@ 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:12621
+#: fortran/resolve.cc:12867
 #, 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:12707
+#: fortran/resolve.cc:12953
 #, gcc-internal-format, gfc-internal-format
 msgid "String length at %L is too large"
 msgstr ""
 
-#: fortran/resolve.cc:12942
+#: fortran/resolve.cc:13188
 #, gcc-internal-format
 msgid "Allocatable array %qs at %L must have a deferred shape or assumed rank"
 msgstr ""
 
-#: fortran/resolve.cc:12946
+#: fortran/resolve.cc:13192
 #, gcc-internal-format
 msgid "Scalar object %qs at %L may not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.cc:12954
+#: fortran/resolve.cc:13200
 #, gcc-internal-format
 msgid "Array pointer %qs at %L must have a deferred shape or assumed rank"
 msgstr ""
 
-#: fortran/resolve.cc:12965
+#: fortran/resolve.cc:13211
 #, gcc-internal-format
 msgid "Array %qs at %L cannot have a deferred shape"
 msgstr ""
 
-#: fortran/resolve.cc:12982
+#: fortran/resolve.cc:13228
 #, gcc-internal-format
 msgid "Type %qs of CLASS variable %qs at %L is not extensible"
 msgstr ""
 
-#: fortran/resolve.cc:12994
+#: fortran/resolve.cc:13240
 #, gcc-internal-format
 msgid "CLASS variable %qs at %L must be dummy, allocatable or pointer"
 msgstr ""
 
-#: fortran/resolve.cc:13027
+#: fortran/resolve.cc:13273
 #, 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:13049
+#: fortran/resolve.cc:13295
 #, gcc-internal-format
 msgid ""
 "Implied SAVE for module variable %qs at %L, needed due to the default "
 "initialization"
 msgstr ""
 
-#: fortran/resolve.cc:13082
+#: fortran/resolve.cc:13328
 #, gcc-internal-format
 msgid ""
 "Entity %qs at %L has a deferred type parameter and requires either the "
@@ -80391,1033 +80489,1052 @@ msgstr ""
 
 #. F08:C541. The shape of an array defined in a main program or module
 #. * needs to be constant.
-#: fortran/resolve.cc:13118
+#: fortran/resolve.cc:13364
 #, gcc-internal-format
 msgid "The module or main program array %qs at %L must have constant shape"
 msgstr ""
 
-#: fortran/resolve.cc:13143
+#: fortran/resolve.cc:13389
 #, 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:13164
+#: fortran/resolve.cc:13410
 #, gcc-internal-format
 msgid "%qs at %L must have constant character length in this context"
 msgstr ""
 
-#: fortran/resolve.cc:13171
+#: fortran/resolve.cc:13417
 #, gcc-internal-format
 msgid "COMMON variable %qs at %L must have constant character length"
 msgstr ""
 
-#: fortran/resolve.cc:13218
+#: fortran/resolve.cc:13464
 #, gcc-internal-format
 msgid "Allocatable %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:13221
+#: fortran/resolve.cc:13467
 #, gcc-internal-format
 msgid "External %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:13224
+#: fortran/resolve.cc:13470
 #, gcc-internal-format
 msgid "Dummy %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:13227
+#: fortran/resolve.cc:13473
 #, gcc-internal-format
 msgid "Intrinsic %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:13230
+#: fortran/resolve.cc:13476
 #, gcc-internal-format
 msgid "Function result %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:13233
+#: fortran/resolve.cc:13479
 #, gcc-internal-format
 msgid "Automatic array %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:13275
+#: fortran/resolve.cc:13521
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L"
 msgstr ""
 
-#: fortran/resolve.cc:13307
+#: fortran/resolve.cc:13553
 #, gcc-internal-format
 msgid "Character-valued statement function %qs at %L must have constant length"
 msgstr ""
 
-#: fortran/resolve.cc:13330
+#: fortran/resolve.cc:13576
 #, 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:13352
+#: fortran/resolve.cc:13598
 #, gcc-internal-format
 msgid ""
 "Procedure %qs in PUBLIC interface %qs at %L takes dummy arguments of %qs "
 "which is PRIVATE"
 msgstr ""
 
-#: fortran/resolve.cc:13370
+#: fortran/resolve.cc:13616
 #, gcc-internal-format
 msgid "Function %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:13382
+#: fortran/resolve.cc:13628
 #, gcc-internal-format
 msgid "External object %qs at %L may not have an initializer"
 msgstr ""
 
-#: fortran/resolve.cc:13392
+#: fortran/resolve.cc:13638
 #, gcc-internal-format
 msgid "ELEMENTAL function %qs at %L must have a scalar result"
 msgstr ""
 
-#: fortran/resolve.cc:13402
+#: fortran/resolve.cc:13648
 #, gcc-internal-format
 msgid ""
 "Statement function %qs at %L may not have pointer or allocatable attribute"
 msgstr ""
 
-#: fortran/resolve.cc:13421
+#: fortran/resolve.cc:13667
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be array-valued"
 msgstr ""
 
-#: fortran/resolve.cc:13425
+#: fortran/resolve.cc:13671
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be pointer-valued"
 msgstr ""
 
-#: fortran/resolve.cc:13429
+#: fortran/resolve.cc:13675
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be pure"
 msgstr ""
 
-#: fortran/resolve.cc:13433
+#: fortran/resolve.cc:13679
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be recursive"
 msgstr ""
 
-#: fortran/resolve.cc:13446
+#: fortran/resolve.cc:13692
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:13457
+#: fortran/resolve.cc:13703
 #, gcc-internal-format
 msgid "Procedure pointer %qs at %L shall not be elemental"
 msgstr ""
 
-#: fortran/resolve.cc:13463
+#: fortran/resolve.cc:13709
 #, gcc-internal-format
 msgid "Dummy procedure %qs at %L shall not be elemental"
 msgstr ""
 
-#: fortran/resolve.cc:13483
+#: fortran/resolve.cc:13729
 #, 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:13540
+#: fortran/resolve.cc:13786
 #, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with SAVE attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:13546
+#: fortran/resolve.cc:13792
 #, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with INTENT attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:13552
+#: fortran/resolve.cc:13798
 #, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with RESULT attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:13560
+#: fortran/resolve.cc:13806
 #, gcc-internal-format
 msgid "EXTERNAL attribute conflicts with FUNCTION attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:13566
+#: fortran/resolve.cc:13812
 #, gcc-internal-format
 msgid "Procedure pointer result %qs at %L is missing the pointer attribute"
 msgstr ""
 
-#: fortran/resolve.cc:13609
+#: fortran/resolve.cc:13855
 #, 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:13617
+#: fortran/resolve.cc:13863
 #, 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:13625
+#: fortran/resolve.cc:13871
 #, 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:13634
+#: fortran/resolve.cc:13880
 #, 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:13718
+#: fortran/resolve.cc:13904
+#, gcc-internal-format
+msgid "Interface of %qs at %L must be explicit"
+msgstr ""
+
+#: fortran/resolve.cc:13974
 #, gcc-internal-format
 msgid "FINAL procedure %qs at %L is not a SUBROUTINE"
 msgstr ""
 
-#: fortran/resolve.cc:13727
+#: fortran/resolve.cc:13983
 #, gcc-internal-format, gfc-internal-format
 msgid "FINAL procedure at %L must have exactly one argument"
 msgstr ""
 
-#: fortran/resolve.cc:13736
+#: fortran/resolve.cc:13991 fortran/resolve.cc:14008
 #, gcc-internal-format
 msgid "Argument of FINAL procedure at %L must be of type %qs"
 msgstr ""
 
-#: fortran/resolve.cc:13744
+#: fortran/resolve.cc:13999
+#, 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:14016
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be a POINTER"
 msgstr ""
 
-#: fortran/resolve.cc:13750
+#: fortran/resolve.cc:14022
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.cc:13756
+#: fortran/resolve.cc:14028
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be OPTIONAL"
 msgstr ""
 
-#: fortran/resolve.cc:13764
+#: fortran/resolve.cc:14036
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be INTENT(OUT)"
 msgstr ""
 
-#: fortran/resolve.cc:13773
+#: fortran/resolve.cc:14045
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-scalar FINAL procedure at %L should have assumed shape argument"
 msgstr ""
 
-#: fortran/resolve.cc:13795
+#: fortran/resolve.cc:14067
 #, gcc-internal-format
 msgid "FINAL procedure %qs declared at %L has the same rank (%d) as %qs"
 msgstr ""
 
-#: fortran/resolve.cc:13832
+#: fortran/resolve.cc:14104
 #, gcc-internal-format
 msgid ""
 "Only array FINAL procedures declared for derived type %qs defined at %L, "
-"suggest also scalar one"
+"suggest also scalar one unless an assumed rank finalizer has been declared"
 msgstr ""
 
-#: fortran/resolve.cc:13872
+#: fortran/resolve.cc:14145
 #, gcc-internal-format
 msgid "%qs and %qs cannot be mixed FUNCTION/SUBROUTINE for GENERIC %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:13908
+#: fortran/resolve.cc:14181
 #, gcc-internal-format
 msgid "%qs and %qs for GENERIC %qs at %L are ambiguous"
 msgstr ""
 
-#: fortran/resolve.cc:13967
+#: fortran/resolve.cc:14240
 #, gcc-internal-format
 msgid "Undefined specific binding %qs as target of GENERIC %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:13979
+#: fortran/resolve.cc:14252
 #, gcc-internal-format
 msgid "GENERIC %qs at %L must target a specific binding, %qs is GENERIC, too"
 msgstr ""
 
-#: fortran/resolve.cc:14007
+#: fortran/resolve.cc:14280
 #, gcc-internal-format
 msgid "GENERIC %qs at %L cannot overwrite specific binding with the same name"
 msgstr ""
 
-#: fortran/resolve.cc:14063
+#: fortran/resolve.cc:14336
 #, gcc-internal-format, gfc-internal-format
 msgid "Type-bound operator at %L cannot be NOPASS"
 msgstr ""
 
-#: fortran/resolve.cc:14275
+#: fortran/resolve.cc:14548
 #, gcc-internal-format
 msgid ""
 "%qs must be a module procedure or an external procedure with an explicit "
 "interface at %L"
 msgstr ""
 
-#: fortran/resolve.cc:14318
+#: fortran/resolve.cc:14591
 #, gcc-internal-format
 msgid "Procedure %qs with PASS(%s) at %L has no argument %qs"
 msgstr ""
 
-#: fortran/resolve.cc:14332
+#: fortran/resolve.cc:14605
 #, gcc-internal-format
 msgid "Procedure %qs with PASS at %L must have at least one argument"
 msgstr ""
 
-#: fortran/resolve.cc:14346 fortran/resolve.cc:14832
+#: fortran/resolve.cc:14619 fortran/resolve.cc:15107
 #, gcc-internal-format
 msgid "Non-polymorphic passed-object dummy argument of %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:14354
+#: fortran/resolve.cc:14627
 #, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived-type %qs"
 msgstr ""
 
-#: fortran/resolve.cc:14363
+#: fortran/resolve.cc:14636
 #, gcc-internal-format
 msgid "Passed-object dummy argument of %qs at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:14369
+#: fortran/resolve.cc:14642
 #, gcc-internal-format
 msgid "Passed-object dummy argument of %qs at %L must not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.cc:14375
+#: fortran/resolve.cc:14648
 #, gcc-internal-format
 msgid "Passed-object dummy argument of %qs at %L must not be POINTER"
 msgstr ""
 
-#: fortran/resolve.cc:14404
+#: fortran/resolve.cc:14677
 #, gcc-internal-format
 msgid "Procedure %qs at %L has the same name as a component of %qs"
 msgstr ""
 
-#: fortran/resolve.cc:14414
+#: fortran/resolve.cc:14687
 #, gcc-internal-format
 msgid "Procedure %qs at %L has the same name as an inherited component of %qs"
 msgstr ""
 
-#: fortran/resolve.cc:14509
+#: fortran/resolve.cc:14782
 #, gcc-internal-format
 msgid ""
 "Derived-type %qs declared at %L must be ABSTRACT because %qs is DEFERRED and "
 "not overridden"
 msgstr ""
 
-#: fortran/resolve.cc:14612
+#: fortran/resolve.cc:14887
 #, gcc-internal-format
 msgid "Coarray component %qs at %L must be allocatable with deferred shape"
 msgstr ""
 
-#: fortran/resolve.cc:14621
+#: fortran/resolve.cc:14896
 #, 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:14631
+#: fortran/resolve.cc:14906
 #, gcc-internal-format
 msgid ""
 "Component %qs at %L with coarray component shall be a nonpointer, "
 "nonallocatable scalar"
 msgstr ""
 
-#: fortran/resolve.cc:14656
+#: fortran/resolve.cc:14931
 #, gcc-internal-format
 msgid ""
 "Component %qs at %L has the CONTIGUOUS attribute but is not an array pointer"
 msgstr ""
 
-#: fortran/resolve.cc:14667
+#: fortran/resolve.cc:14942
 #, gcc-internal-format
 msgid "Component %qs of BIND(C) type at %L must have length one"
 msgstr ""
 
-#: fortran/resolve.cc:14765
+#: fortran/resolve.cc:15040
 #, gcc-internal-format
 msgid "Procedure pointer component %qs with PASS(%s) at %L has no argument %qs"
 msgstr ""
 
-#: fortran/resolve.cc:14779
+#: fortran/resolve.cc:15054
 #, gcc-internal-format
 msgid ""
 "Procedure pointer component %qs with PASS at %L must have at least one "
 "argument"
 msgstr ""
 
-#: fortran/resolve.cc:14795
+#: fortran/resolve.cc:15070
 #, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived type %qs"
 msgstr ""
 
-#: fortran/resolve.cc:14805
+#: fortran/resolve.cc:15080
 #, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.cc:14814
+#: fortran/resolve.cc:15089
 #, gcc-internal-format
 msgid ""
 "Argument %qs of %qs with PASS(%s) at %L may not have the POINTER attribute"
 msgstr ""
 
-#: fortran/resolve.cc:14823
+#: fortran/resolve.cc:15098
 #, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L may not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.cc:14865
+#: fortran/resolve.cc:15140
 #, gcc-internal-format
 msgid ""
 "Component %qs of %qs at %L has the same name as an inherited type-bound "
 "procedure"
 msgstr ""
 
-#: fortran/resolve.cc:14878
+#: fortran/resolve.cc:15153
 #, gcc-internal-format
 msgid ""
 "Character length of component %qs needs to be a constant specification "
 "expression at %L"
 msgstr ""
 
-#: fortran/resolve.cc:14889
+#: fortran/resolve.cc:15164
+#, gcc-internal-format
+msgid ""
+"Character length expression of component %qs at %L must be of INTEGER type, "
+"found %s"
+msgstr ""
+
+#: fortran/resolve.cc:15177
 #, gcc-internal-format
 msgid ""
 "Character component %qs of %qs at %L with deferred length must be a POINTER "
 "or ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.cc:14922
+#: fortran/resolve.cc:15210
 #, 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:14930
+#: fortran/resolve.cc:15218
 #, gcc-internal-format, gfc-internal-format
 msgid "Polymorphic component %s at %L in SEQUENCE or BIND(C) type %s"
 msgstr ""
 
-#: fortran/resolve.cc:14939
+#: fortran/resolve.cc:15227
 #, 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:15025
+#: fortran/resolve.cc:15313
 #, gcc-internal-format, gfc-internal-format
 msgid "Conflicting initializers in union at %L and %L"
 msgstr ""
 
-#: fortran/resolve.cc:15070
+#: fortran/resolve.cc:15358
 #, 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:15083
+#: fortran/resolve.cc:15371
 #, gcc-internal-format
 msgid "Non-extensible derived-type %qs at %L must not be ABSTRACT"
 msgstr ""
 
-#: fortran/resolve.cc:15147
+#: fortran/resolve.cc:15435
 #, gcc-internal-format
 msgid ""
 "Parameterized type %qs does not have a component corresponding to parameter "
 "%qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15180
+#: fortran/resolve.cc:15468
 #, 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:15194
+#: fortran/resolve.cc:15482
 #, gcc-internal-format
 msgid "Derived type %qs at %L has not been declared"
 msgstr ""
 
-#: fortran/resolve.cc:15262
+#: fortran/resolve.cc:15550
 #, gcc-internal-format
 msgid "Assumed size array %qs in namelist %qs at %L is not allowed"
 msgstr ""
 
-#: fortran/resolve.cc:15268
+#: fortran/resolve.cc:15556
 #, gcc-internal-format
 msgid "NAMELIST array object %qs with assumed shape in namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15274
+#: fortran/resolve.cc:15562
 #, gcc-internal-format
 msgid "NAMELIST array object %qs with nonconstant shape in namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15282
+#: fortran/resolve.cc:15570
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs with nonconstant character length in namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15299
+#: fortran/resolve.cc:15587
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs was declared PRIVATE and cannot be member of PUBLIC "
 "namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15321
+#: fortran/resolve.cc:15609
 #, 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:15332
+#: fortran/resolve.cc:15620
 #, 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:15359
+#: fortran/resolve.cc:15647
 #, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with NAMELIST attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15378
+#: fortran/resolve.cc:15666
 #, gcc-internal-format
 msgid "Parameter array %qs at %L cannot be automatic or of deferred shape"
 msgstr ""
 
-#: fortran/resolve.cc:15394
+#: fortran/resolve.cc:15682
 #, gcc-internal-format
 msgid ""
 "Implicitly typed PARAMETER %qs at %L doesn't match a later IMPLICIT type"
 msgstr ""
 
-#: fortran/resolve.cc:15405
+#: fortran/resolve.cc:15693
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible derived type in PARAMETER at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15413
+#: fortran/resolve.cc:15701
 #, gcc-internal-format
 msgid "CLASS variable %qs at %L cannot have the PARAMETER attribute"
 msgstr ""
 
-#: fortran/resolve.cc:15464
+#: fortran/resolve.cc:15752
 #, gcc-internal-format
 msgid ""
 "The object %qs at %L has a deferred LEN parameter %qs and is neither "
 "allocatable nor a pointer"
 msgstr ""
 
-#: fortran/resolve.cc:15475
+#: fortran/resolve.cc:15763
 #, 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:15482
+#: fortran/resolve.cc:15770
 #, 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:15522
+#: fortran/resolve.cc:15810
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Sorry, allocatable/pointer components in polymorphic (CLASS) type coarrays "
 "at %L are unsupported"
 msgstr ""
 
-#: fortran/resolve.cc:15535
+#: fortran/resolve.cc:15823
 #, gcc-internal-format
 msgid ""
 "%<omp_all_memory%>, declared at %L, may only be used in the OpenMP DEPEND "
 "clause"
 msgstr ""
 
-#: fortran/resolve.cc:15593
+#: fortran/resolve.cc:15881
 #, gcc-internal-format, gfc-internal-format
 msgid "PROTECTED attribute conflicts with EXTERNAL attribute at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15596
+#: fortran/resolve.cc:15884
 #, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE attribute conflicts with PROTECTED attribute at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15696
+#: fortran/resolve.cc:15984
 #, 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:15717
+#: fortran/resolve.cc:16005
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad specification for assumed size array at %L"
 msgstr ""
 
-#: fortran/resolve.cc:15730
+#: fortran/resolve.cc:16018
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed size array at %L must be a dummy argument"
 msgstr ""
 
-#: fortran/resolve.cc:15733
+#: fortran/resolve.cc:16021
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed shape array at %L must be a dummy argument"
 msgstr ""
 
-#: fortran/resolve.cc:15743
+#: fortran/resolve.cc:16031
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank array at %L must be a dummy argument"
 msgstr ""
 
-#: fortran/resolve.cc:15750
+#: fortran/resolve.cc:16038
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Assumed-rank array at %L may not have the VALUE or CODIMENSION attribute"
 msgstr ""
 
-#: fortran/resolve.cc:15763
+#: fortran/resolve.cc:16051
 #, gcc-internal-format, gfc-internal-format
 msgid "Symbol at %L is not a DUMMY variable"
 msgstr ""
 
-#: fortran/resolve.cc:15769
+#: fortran/resolve.cc:16057
 #, gcc-internal-format
 msgid ""
 "%qs at %L cannot have the VALUE attribute because it is not a dummy argument"
 msgstr ""
 
-#: fortran/resolve.cc:15779
+#: fortran/resolve.cc:16067
 #, gcc-internal-format
 msgid ""
 "Character dummy variable %qs at %L with VALUE attribute must have constant "
 "length"
 msgstr ""
 
-#: fortran/resolve.cc:15788
+#: fortran/resolve.cc:16076
 #, gcc-internal-format
 msgid ""
 "C interoperable character dummy variable %qs at %L with VALUE attribute must "
 "have length one"
 msgstr ""
 
-#: fortran/resolve.cc:15801 fortran/resolve.cc:15978
+#: fortran/resolve.cc:16089 fortran/resolve.cc:16266
 #, gcc-internal-format
 msgid "The derived type %qs at %L is of type %qs, which has not been defined"
 msgstr ""
 
-#: fortran/resolve.cc:15815
+#: fortran/resolve.cc:16103
 #, 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:15824
+#: fortran/resolve.cc:16112
 #, 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:15833
+#: fortran/resolve.cc:16121
 #, 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:15841
+#: fortran/resolve.cc:16129
 #, 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:15848
+#: fortran/resolve.cc:16136
 #, 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:15868
+#: fortran/resolve.cc:16156
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed type of variable %s at %L is only permitted for dummy variables"
 msgstr ""
 
-#: fortran/resolve.cc:15875
+#: fortran/resolve.cc:16163
 #, 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:15882
+#: fortran/resolve.cc:16170
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L may not have the INTENT(OUT) attribute"
 msgstr ""
 
-#: fortran/resolve.cc:15889
+#: fortran/resolve.cc:16177
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L shall not be an explicit-shape array"
 msgstr ""
 
-#: fortran/resolve.cc:15915
+#: fortran/resolve.cc:16203
 #, 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:15925
+#: fortran/resolve.cc:16213
 #, gcc-internal-format
 msgid "BIND(C) Variable %qs at %L must have length one"
 msgstr ""
 
-#: fortran/resolve.cc:16004
+#: fortran/resolve.cc:16292
 #, gcc-internal-format
 msgid "PUBLIC %s %qs at %L of PRIVATE derived type %qs"
 msgstr ""
 
-#: fortran/resolve.cc:16019
+#: fortran/resolve.cc:16307
 #, 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:16032
+#: fortran/resolve.cc:16320
 #, 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:16050
+#: fortran/resolve.cc:16338
 #, 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:16062
+#: fortran/resolve.cc:16350
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L of LOCK_TYPE shall not be INTENT(OUT)"
 msgstr ""
 
-#: fortran/resolve.cc:16071
+#: fortran/resolve.cc:16359
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L of EVENT_TYPE shall not be INTENT(OUT)"
 msgstr ""
 
-#: fortran/resolve.cc:16084
+#: fortran/resolve.cc:16372
 #, gcc-internal-format
 msgid ""
 "Function result %qs at %L shall not be a coarray or have a coarray component"
 msgstr ""
 
-#: fortran/resolve.cc:16093
+#: fortran/resolve.cc:16381
 #, 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:16106
+#: fortran/resolve.cc:16394
 #, 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:16122
+#: fortran/resolve.cc:16410
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L is a coarray and is not ALLOCATABLE, SAVE nor a dummy "
 "argument"
 msgstr ""
 
-#: fortran/resolve.cc:16130
+#: fortran/resolve.cc:16418
 #, gcc-internal-format
 msgid ""
 "Coarray variable %qs at %L shall not have codimensions with deferred shape"
 msgstr ""
 
-#: fortran/resolve.cc:16137
+#: fortran/resolve.cc:16425
 #, gcc-internal-format
 msgid "Allocatable coarray variable %qs at %L must have deferred shape"
 msgstr ""
 
-#: fortran/resolve.cc:16150
+#: fortran/resolve.cc:16438
 #, 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:16159
+#: fortran/resolve.cc:16447
 #, gcc-internal-format
 msgid "Coarray dummy variable %qs at %L not allowed in BIND(C) procedure %qs"
 msgstr ""
 
-#: fortran/resolve.cc:16175
+#: fortran/resolve.cc:16463
 #, gcc-internal-format
 msgid ""
 "LOGICAL dummy argument %qs at %L with non-C_Bool kind in BIND(C) procedure "
 "%qs"
 msgstr ""
 
-#: fortran/resolve.cc:16181
+#: fortran/resolve.cc:16469
 #, gcc-internal-format
 msgid ""
 "LOGICAL result variable %qs at %L with non-C_Bool kind in BIND(C) procedure "
 "%qs"
 msgstr ""
 
-#: fortran/resolve.cc:16206
+#: fortran/resolve.cc:16494
 #, gcc-internal-format
 msgid "Namelist %qs cannot be an argument to subroutine or function at %L"
 msgstr ""
 
-#: fortran/resolve.cc:16277
+#: fortran/resolve.cc:16565
 #, gcc-internal-format, gfc-internal-format
 msgid "Threadprivate at %L isn't SAVEd"
 msgstr ""
 
-#: fortran/resolve.cc:16289
+#: fortran/resolve.cc:16577
 #, gcc-internal-format
 msgid "!$OMP DECLARE TARGET variable %qs at %L isn't SAVEd"
 msgstr ""
 
-#: fortran/resolve.cc:16396
+#: fortran/resolve.cc:16693
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting definable entity near %L"
 msgstr ""
 
-#: fortran/resolve.cc:16404
+#: fortran/resolve.cc:16701
 #, gcc-internal-format
 msgid "BLOCK DATA element %qs at %L must be in COMMON"
 msgstr ""
 
-#: fortran/resolve.cc:16411
+#: fortran/resolve.cc:16708
 #, gcc-internal-format
 msgid "DATA array %qs at %L must be specified in a previous declaration"
 msgstr ""
 
-#: fortran/resolve.cc:16418
+#: fortran/resolve.cc:16715
 #, gcc-internal-format
 msgid "DATA element %qs at %L cannot have a coindex"
 msgstr ""
 
-#: fortran/resolve.cc:16434
+#: fortran/resolve.cc:16731
 #, gcc-internal-format
 msgid "DATA element %qs at %L is a pointer and so must be a full array"
 msgstr ""
 
-#: fortran/resolve.cc:16441
+#: fortran/resolve.cc:16738
 #, 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:16450
+#: fortran/resolve.cc:16747
 #, gcc-internal-format
 msgid "DATA element %qs at %L cannot have the ALLOCATABLE attribute"
 msgstr ""
 
-#: fortran/resolve.cc:16496
+#: fortran/resolve.cc:16793
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonconstant array section at %L in DATA statement"
 msgstr ""
 
-#: fortran/resolve.cc:16509
+#: fortran/resolve.cc:16806
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %L has more variables than values"
 msgstr ""
 
-#: fortran/resolve.cc:16608
+#: fortran/resolve.cc:16905
 #, 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:16616
+#: fortran/resolve.cc:16913
 #, 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:16624
+#: fortran/resolve.cc:16921
 #, 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:16631
+#: fortran/resolve.cc:16928
 #, gcc-internal-format, gfc-internal-format
 msgid "step of implied-do loop at %L shall not be zero"
 msgstr ""
 
-#: fortran/resolve.cc:16756
+#: fortran/resolve.cc:17053
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %L has more values than variables"
 msgstr ""
 
-#: fortran/resolve.cc:16922
+#: fortran/resolve.cc:17219
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d at %L defined but not used"
 msgstr ""
 
-#: fortran/resolve.cc:16928
+#: fortran/resolve.cc:17225
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d at %L defined but cannot be used"
 msgstr ""
 
-#: fortran/resolve.cc:17012
+#: fortran/resolve.cc:17309
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs at %L must have SEQUENCE attribute to be an "
 "EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.cc:17021
+#: fortran/resolve.cc:17318
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs at %L cannot have ALLOCATABLE components to be an "
 "EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.cc:17029
+#: fortran/resolve.cc:17326
 #, 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:17045
+#: fortran/resolve.cc:17342
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs at %L with pointer component(s) cannot be an "
 "EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.cc:17148
+#: fortran/resolve.cc:17445
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in EQUIVALENCE statement at %L"
 msgstr ""
 
-#: fortran/resolve.cc:17163
+#: fortran/resolve.cc:17460
 #, 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:17188
+#: fortran/resolve.cc:17485
 #, gcc-internal-format
 msgid ""
 "COMMON block member %qs at %L cannot be an EQUIVALENCE object in the pure "
 "procedure %qs"
 msgstr ""
 
-#: fortran/resolve.cc:17197
+#: fortran/resolve.cc:17494
 #, gcc-internal-format
 msgid "Named constant %qs at %L cannot be an EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.cc:17272
+#: fortran/resolve.cc:17569
 #, gcc-internal-format
 msgid ""
 "Array %qs at %L with non-constant bounds cannot be an EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.cc:17283
+#: fortran/resolve.cc:17580
 #, gcc-internal-format
 msgid "Structure component %qs at %L cannot be an EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.cc:17294
+#: fortran/resolve.cc:17591
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring at %L has length zero"
 msgstr ""
 
-#: fortran/resolve.cc:17325
+#: fortran/resolve.cc:17622
 #, gcc-internal-format
 msgid "Self reference in character length expression for %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:17392
+#: fortran/resolve.cc:17689
 #, gcc-internal-format
 msgid "PUBLIC function %qs at %L of PRIVATE type %qs"
 msgstr ""
 
-#: fortran/resolve.cc:17405
+#: fortran/resolve.cc:17702
 #, gcc-internal-format
 msgid "ENTRY %qs at %L has no IMPLICIT type"
 msgstr ""
 
-#: fortran/resolve.cc:17425
+#: fortran/resolve.cc:17724
 #, gcc-internal-format
 msgid "User operator procedure %qs at %L must be a FUNCTION"
 msgstr ""
 
-#: fortran/resolve.cc:17435
+#: fortran/resolve.cc:17734
 #, gcc-internal-format
 msgid "User operator procedure %qs at %L cannot be assumed character length"
 msgstr ""
 
-#: fortran/resolve.cc:17443
+#: fortran/resolve.cc:17742
 #, gcc-internal-format
 msgid "User operator procedure %qs at %L must have at least one argument"
 msgstr ""
 
-#: fortran/resolve.cc:17457
+#: fortran/resolve.cc:17756
 #, gcc-internal-format, gfc-internal-format
 msgid "First argument of operator interface at %L cannot be optional"
 msgstr ""
 
-#: fortran/resolve.cc:17475
+#: fortran/resolve.cc:17774
 #, gcc-internal-format, gfc-internal-format
 msgid "Second argument of operator interface at %L cannot be optional"
 msgstr ""
 
-#: fortran/resolve.cc:17482
+#: fortran/resolve.cc:17781
 #, gcc-internal-format, gfc-internal-format
 msgid "Operator interface at %L must have, at most, two arguments"
 msgstr ""
 
-#: fortran/resolve.cc:17561
+#: fortran/resolve.cc:17860
 #, gcc-internal-format
 msgid "Contained procedure %qs at %L of a PURE procedure must also be PURE"
 msgstr ""
@@ -82269,66 +82386,66 @@ msgstr ""
 msgid "Symbol %qs at %C has already been host associated"
 msgstr ""
 
-#: fortran/symbol.cc:4434
+#: fortran/symbol.cc:4438
 #, gcc-internal-format
 msgid "verify_bind_c_derived_type(): Given symbol is unexpectedly NULL"
 msgstr ""
 
-#: fortran/symbol.cc:4447
+#: fortran/symbol.cc:4451
 #, gcc-internal-format
 msgid ""
 "Derived type %qs declared at %L must have the BIND attribute to be C "
 "interoperable"
 msgstr ""
 
-#: fortran/symbol.cc:4465
+#: fortran/symbol.cc:4469
 #, 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:4486
+#: fortran/symbol.cc:4490
 #, 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:4496
+#: fortran/symbol.cc:4500
 #, 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:4507
+#: fortran/symbol.cc:4511
 #, 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:4546
+#: fortran/symbol.cc:4550
 #, 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:4556
+#: fortran/symbol.cc:4560
 #, gcc-internal-format
 msgid "Component %qs in derived type %qs at %L may not be C interoperable"
 msgstr ""
 
-#: fortran/symbol.cc:4568
+#: fortran/symbol.cc:4572
 #, gcc-internal-format
 msgid ""
 "Derived type %qs at %L cannot have the SEQUENCE attribute because it is "
 "BIND(C)"
 msgstr ""
 
-#: fortran/symbol.cc:5065 fortran/symbol.cc:5070
+#: fortran/symbol.cc:5069 fortran/symbol.cc:5074
 #, gcc-internal-format
 msgid "Symbol %qs is used before it is typed at %L"
 msgstr ""
@@ -82343,36 +82460,43 @@ msgstr ""
 msgid "Invalid expression in gfc_target_encode_expr."
 msgstr ""
 
-#: fortran/target-memory.cc:634
+#: fortran/target-memory.cc:637
 #, gcc-internal-format
 msgid "Invalid expression in gfc_target_interpret_expr."
 msgstr ""
 
-#: fortran/target-memory.cc:707
+#: fortran/target-memory.cc:710
 #, gcc-internal-format, gfc-internal-format
 msgid "Overlapping unequal initializers in EQUIVALENCE at %L"
 msgstr ""
 
-#: fortran/target-memory.cc:710
+#: fortran/target-memory.cc:713
 #, gcc-internal-format, gfc-internal-format
 msgid "Overlapping unequal initializers in EQUIVALENCE at %C"
 msgstr ""
 
+#: fortran/trans-array.cc:2318 fortran/trans-expr.cc:9462
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"The structure constructor at %C has been finalized. This feature was removed "
+"by f08/0011. Use -std=f2018 or -std=gnu to eliminate the finalization."
+msgstr ""
+
 #. Problems occur when we get something like
 #. integer :: a(lots) = (/(i, i=1, lots)/)
-#: fortran/trans-array.cc:6339
+#: fortran/trans-array.cc:6390
 #, 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:8509
+#: fortran/trans-array.cc:8572
 #, gcc-internal-format
 msgid "Creating array temporary at %L for argument %qs"
 msgstr ""
 
-#: fortran/trans-array.cc:11773
+#: fortran/trans-array.cc:11864
 #, gcc-internal-format, gfc-internal-format
 msgid "bad expression type during walk (%d)"
 msgstr ""
@@ -82484,74 +82608,84 @@ msgid ""
 "SAVE attribute."
 msgstr ""
 
-#: fortran/trans-decl.cc:1791
+#: fortran/trans-decl.cc:1795
 #, gcc-internal-format
 msgid "intrinsic variable which isn't a procedure"
 msgstr ""
 
-#: fortran/trans-decl.cc:4520 fortran/trans-decl.cc:7757
+#: fortran/trans-decl.cc:4545 fortran/trans-decl.cc:7789
 #, gcc-internal-format
 msgid "Return value of function %qs at %L not set"
 msgstr ""
 
-#: fortran/trans-decl.cc:5012
+#: fortran/trans-decl.cc:5037
 #, gcc-internal-format
 msgid "Deferred type parameter not yet supported"
 msgstr ""
 
-#: fortran/trans-decl.cc:5245
+#: fortran/trans-decl.cc:5270
 #, gcc-internal-format
 msgid "backend decl for module variable %qs already exists"
 msgstr ""
 
-#: fortran/trans-decl.cc:5258
+#: fortran/trans-decl.cc:5283
 #, gcc-internal-format
 msgid "Unused PRIVATE module variable %qs declared at %L"
 msgstr ""
 
-#: fortran/trans-decl.cc:5888
+#: fortran/trans-decl.cc:5905
+#, gcc-internal-format
+msgid "Symbol %qs at %L has the WEAK attribute but is a dummy argument"
+msgstr ""
+
+#: fortran/trans-decl.cc:5908
+#, gcc-internal-format
+msgid "Symbol %qs at %L has the WEAK attribute but is a local variable"
+msgstr ""
+
+#: fortran/trans-decl.cc:5923
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L was declared INTENT(OUT) but was not set"
 msgstr ""
 
-#: fortran/trans-decl.cc:5894
+#: fortran/trans-decl.cc:5929
 #, 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:5905 fortran/trans-decl.cc:6056
+#: fortran/trans-decl.cc:5940 fortran/trans-decl.cc:6091
 #, gcc-internal-format
 msgid "Unused dummy argument %qs at %L"
 msgstr ""
 
-#: fortran/trans-decl.cc:5921
+#: fortran/trans-decl.cc:5956
 #, gcc-internal-format
 msgid "Unused module variable %qs which has been explicitly imported at %L"
 msgstr ""
 
-#: fortran/trans-decl.cc:5940
+#: fortran/trans-decl.cc:5975
 #, gcc-internal-format
 msgid "Unused variable %qs declared at %L"
 msgstr ""
 
-#: fortran/trans-decl.cc:5989
+#: fortran/trans-decl.cc:6024
 #, gcc-internal-format
 msgid "Unused parameter %qs declared at %L"
 msgstr ""
 
-#: fortran/trans-decl.cc:5993
+#: fortran/trans-decl.cc:6028
 #, gcc-internal-format
 msgid "Unused parameter %qs which has been explicitly imported at %L"
 msgstr ""
 
-#: fortran/trans-decl.cc:6023
+#: fortran/trans-decl.cc:6058
 #, gcc-internal-format
 msgid "Return value %qs of function %qs declared at %L not set"
 msgstr ""
 
-#: fortran/trans-decl.cc:6620
+#: fortran/trans-decl.cc:6655
 #, gcc-internal-format, gfc-internal-format
 msgid "Sorry, !$ACC DECLARE at %L is not allowed in BLOCK construct"
 msgstr ""
@@ -82561,36 +82695,36 @@ msgstr ""
 msgid "Cannot compute the length of the char array at %L."
 msgstr ""
 
-#: fortran/trans-expr.cc:1884
+#: fortran/trans-expr.cc:1885
 #, gcc-internal-format, gfc-internal-format
 msgid "Code for reallocating the allocatable variable at %L will be added"
 msgstr ""
 
-#: fortran/trans-expr.cc:2200
+#: fortran/trans-expr.cc:2202
 #, 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:2209
+#: fortran/trans-expr.cc:2211
 #, 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:3885
+#: fortran/trans-expr.cc:3887
 #, gcc-internal-format
 msgid "Unknown intrinsic op"
 msgstr ""
 
-#: fortran/trans-expr.cc:5403
+#: fortran/trans-expr.cc:5405
 #, gcc-internal-format, gfc-internal-format
 msgid "Unknown argument list function at %L"
 msgstr ""
 
-#: fortran/trans-expr.cc:10044
+#: fortran/trans-expr.cc:10034
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "If bounds remapping is specified at %L, the pointer target shall not be NULL"
@@ -82607,12 +82741,12 @@ msgstr ""
 msgid "%<dim%> argument of %s intrinsic at %L is not a valid dimension index"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12107 fortran/trans-stmt.cc:1101
+#: fortran/trans-intrinsic.cc:12117 fortran/trans-stmt.cc:1103
 #, 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:12114
+#: fortran/trans-intrinsic.cc:12124
 #, gcc-internal-format, gfc-internal-format
 msgid "The event variable at %L shall not be coindexed"
 msgstr ""
@@ -82642,99 +82776,99 @@ msgstr ""
 msgid "optional class parameter"
 msgstr ""
 
-#: fortran/trans-openmp.cc:3447
+#: fortran/trans-openmp.cc:3449
 #, gcc-internal-format
 msgid "unhandled expression type"
 msgstr ""
 
-#: fortran/trans-openmp.cc:3601
+#: fortran/trans-openmp.cc:3603
 #, gcc-internal-format
 msgid "unhandled expression"
 msgstr ""
 
-#: fortran/trans-openmp.cc:5152 fortran/trans-openmp.cc:5172
+#: fortran/trans-openmp.cc:5154 fortran/trans-openmp.cc:5174
 #, gcc-internal-format
 msgid "non-rectangular loop nest with step other than constant 1 or -1 for %qs"
 msgstr ""
 
-#: fortran/trans-openmp.cc:5174
+#: fortran/trans-openmp.cc:5176
 #, gcc-internal-format
 msgid "Used here"
 msgstr ""
 
-#: fortran/trans-openmp.cc:6691
+#: fortran/trans-openmp.cc:6693
 #, gcc-internal-format
 msgid ""
 "%qs specified in 'allocate' clause at %L but not in an explicit "
 "privatization clause"
 msgstr ""
 
-#: fortran/trans-openmp.cc:7588
+#: fortran/trans-openmp.cc:7590
 #, gcc-internal-format
 msgid "gfc_trans_omp_workshare(): Bad statement code"
 msgstr ""
 
-#: fortran/trans-openmp.cc:7888
+#: fortran/trans-openmp.cc:7890
 #, gcc-internal-format, gfc-internal-format
 msgid "The base name for 'declare variant' must be specified at %L "
 msgstr ""
 
-#: fortran/trans-openmp.cc:7898
+#: fortran/trans-openmp.cc:7900
 #, 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:7901
+#: fortran/trans-openmp.cc:7903
 #, gcc-internal-format, gfc-internal-format
 msgid "The base name at %L must not be an entry name"
 msgstr ""
 
-#: fortran/trans-openmp.cc:7904
+#: fortran/trans-openmp.cc:7906
 #, gcc-internal-format, gfc-internal-format
 msgid "The base name at %L must not be a generic name"
 msgstr ""
 
-#: fortran/trans-openmp.cc:7907
+#: fortran/trans-openmp.cc:7909
 #, gcc-internal-format, gfc-internal-format
 msgid "The base name at %L must not be a procedure pointer"
 msgstr ""
 
-#: fortran/trans-openmp.cc:7910
+#: fortran/trans-openmp.cc:7912
 #, gcc-internal-format, gfc-internal-format
 msgid "The base procedure at %L must have an explicit interface"
 msgstr ""
 
-#: fortran/trans-openmp.cc:8007
+#: fortran/trans-openmp.cc:8009
 #, gcc-internal-format
 msgid "Cannot find symbol %qs"
 msgstr ""
 
-#: fortran/trans-openmp.cc:8018
+#: fortran/trans-openmp.cc:8020
 #, gcc-internal-format
 msgid "variant %qs at %L is not a function or subroutine"
 msgstr ""
 
-#: fortran/trans-openmp.cc:8030
+#: fortran/trans-openmp.cc:8032
 #, gcc-internal-format
 msgid "variant %qs and base %qs at %L have incompatible types: %s"
 msgstr ""
 
-#: fortran/trans-stmt.cc:573
+#: fortran/trans-stmt.cc:575
 #, gcc-internal-format, gfc-internal-format
 msgid "An alternate return at %L without a * dummy argument"
 msgstr ""
 
-#: fortran/trans-stmt.cc:905
+#: fortran/trans-stmt.cc:907
 #, 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:1364
+#: fortran/trans-stmt.cc:1366
 #, 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:3632
+#: fortran/trans-stmt.cc:3670
 #, gcc-internal-format
 msgid "gfc_trans_select(): Bad type for case expr."
 msgstr ""
@@ -82811,7 +82945,7 @@ msgstr ""
 msgid "gfc_validate_kind(): Got bad kind"
 msgstr ""
 
-#: fortran/trans.cc:2268
+#: fortran/trans.cc:2547
 #, gcc-internal-format
 msgid "gfc_trans_code(): Bad statement code"
 msgstr ""
@@ -82907,82 +83041,82 @@ msgstr ""
 msgid "%s:%s: %E: %E"
 msgstr ""
 
-#: lto/lto-common.cc:2023
+#: lto/lto-common.cc:2027
 #, gcc-internal-format
 msgid "bytecode stream: garbage at the end of symbols section"
 msgstr ""
 
-#: lto/lto-common.cc:2050
+#: lto/lto-common.cc:2054
 #, gcc-internal-format
 msgid "could not parse hex number"
 msgstr ""
 
-#: lto/lto-common.cc:2082
+#: lto/lto-common.cc:2086
 #, gcc-internal-format, gfc-internal-format
 msgid "unexpected file name %s in linker resolution file. Expected %s"
 msgstr ""
 
-#: lto/lto-common.cc:2091
+#: lto/lto-common.cc:2095
 #, gcc-internal-format
 msgid "could not parse file offset"
 msgstr ""
 
-#: lto/lto-common.cc:2094
+#: lto/lto-common.cc:2098
 #, gcc-internal-format
 msgid "unexpected offset"
 msgstr ""
 
-#: lto/lto-common.cc:2115
+#: lto/lto-common.cc:2119
 #, gcc-internal-format
 msgid "invalid line in the resolution file"
 msgstr ""
 
-#: lto/lto-common.cc:2137
+#: lto/lto-common.cc:2141
 #, gcc-internal-format
 msgid "invalid resolution in the resolution file"
 msgstr ""
 
-#: lto/lto-common.cc:2143
+#: lto/lto-common.cc:2147
 #, gcc-internal-format
 msgid "resolution sub id %wx not in object file"
 msgstr ""
 
-#: lto/lto-common.cc:2260
+#: lto/lto-common.cc:2264
 #, gcc-internal-format
 msgid "bytecode stream in file %qs generated with GCC compiler older than 10.0"
 msgstr ""
 
-#: lto/lto-common.cc:2279
+#: lto/lto-common.cc:2283
 #, gcc-internal-format
 msgid "cannot read %<LTO_section_decls%> from %s"
 msgstr ""
 
-#: lto/lto-common.cc:2400
+#: lto/lto-common.cc:2404
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot open %s"
 msgstr ""
 
-#: lto/lto-common.cc:2421
+#: lto/lto-common.cc:2425
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot map %s"
 msgstr ""
 
-#: lto/lto-common.cc:2432
+#: lto/lto-common.cc:2436
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot read %s"
 msgstr ""
 
-#: lto/lto-common.cc:2749
+#: lto/lto-common.cc:2753
 #, gcc-internal-format
 msgid "could not open symbol resolution file: %m"
 msgstr ""
 
-#: lto/lto-common.cc:2874
+#: lto/lto-common.cc:2878
 #, gcc-internal-format, gfc-internal-format
 msgid "missing resolution data for %s"
 msgstr ""
 
-#: lto/lto-common.cc:2911
+#: lto/lto-common.cc:2915
 #, gcc-internal-format
 msgid "errors during merging of translation units"
 msgstr ""
@@ -83147,18 +83281,18 @@ msgstr ""
 msgid "closing LTRANS output list %s: %m"
 msgstr ""
 
-#: m2/gm2-lang.cc:994
+#: m2/gm2-lang.cc:1048
 #, gcc-internal-format
 msgid "cannot convert expression, only base types can be converted"
 msgstr ""
 
 #. Not found, probably a user typo.
-#: m2/gm2spec.cc:309
+#: m2/gm2spec.cc:346
 #, gcc-internal-format
 msgid "%qs is not a valid Modula-2 system library name or abbreviation"
 msgstr ""
 
-#: m2/gm2spec.cc:627 m2/gm2spec.cc:635
+#: m2/gm2spec.cc:728 m2/gm2spec.cc:736
 #, gcc-internal-format
 msgid "%qs and %qs cannot both be enabled"
 msgstr ""
@@ -83169,8 +83303,8 @@ msgid "the location value is corrupt"
 msgstr ""
 
 #: m2/gm2-gcc/m2builtins.cc:43
-#, gcc-internal-format, gfc-internal-format
-msgid "%s:%d:assertion of condition `%s' failed"
+#, gcc-internal-format
+msgid "%s:%d:assertion of condition %qs failed"
 msgstr ""
 
 #: m2/gm2-gcc/m2builtins.cc:49
@@ -83209,54 +83343,59 @@ msgstr ""
 msgid "overflow in implicit constant conversion"
 msgstr ""
 
-#: m2/gm2-gcc/m2decl.cc:121
+#: m2/gm2-gcc/m2decl.cc:122
 #, gcc-internal-format
 msgid "storage size of %qD has not been resolved"
 msgstr ""
 
-#: m2/gm2-gcc/m2decl.cc:124
+#: m2/gm2-gcc/m2decl.cc:125
 #, gcc-internal-format
-msgid "inconsistant because %qs"
+msgid "inconsistent because %qs"
 msgstr ""
 
-#: m2/gm2-gcc/m2decl.cc:300 m2/gm2-gcc/m2decl.cc:333
+#: m2/gm2-gcc/m2decl.cc:302 m2/gm2-gcc/m2decl.cc:338
 #, gcc-internal-format
 msgid "constant %qs is too large"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:2587
+#: m2/gm2-gcc/m2expr.cc:2588
 #, gcc-internal-format
 msgid "not expecting different types to binary operator"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:2848
+#: m2/gm2-gcc/m2expr.cc:2849
 #, gcc-internal-format
 msgid "cannot take the address of this expression"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:3615
+#: m2/gm2-gcc/m2expr.cc:3616
 #, gcc-internal-format
 msgid "argument to CAP is not a constant or variable of type CHAR"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:3833 m2/gm2-gcc/m2statement.cc:539
+#: m2/gm2-gcc/m2expr.cc:4138
 #, gcc-internal-format
-msgid "internal error: not expecting operand1 to be a constant set"
+msgid "%qs applied to a void type"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:3884 m2/gm2-gcc/m2expr.cc:4007
+#: m2/gm2-gcc/m2expr.cc:4159 m2/gm2-gcc/m2expr.cc:4203
 #, gcc-internal-format
-msgid "internal error: not expecting this base value for a constant"
+msgid "%qs applied to an incomplete type"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:4128
+#: m2/gm2-gcc/m2linemap.cc:332
 #, gcc-internal-format
-msgid "%qs applied to a void type"
+msgid "memory allocation failed in vasprintf"
 msgstr ""
 
-#: m2/gm2-gcc/m2expr.cc:4149 m2/gm2-gcc/m2expr.cc:4193
+#: m2/gm2-gcc/m2linemap.cc:364 rust/rust-gcc-diagnostics.cc:33
+#, gcc-internal-format, gfc-internal-format
+msgid "at %s, %s"
+msgstr ""
+
+#: m2/gm2-gcc/m2statement.cc:539
 #, gcc-internal-format
-msgid "%qs applied to an incomplete type"
+msgid "internal error: not expecting operand1 to be a constant set"
 msgstr ""
 
 #: m2/gm2-gcc/m2statement.cc:933
@@ -83305,162 +83444,162 @@ 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:1976
+#: m2/gm2-gcc/m2type.cc:1986
 #, gcc-internal-format
 msgid "redeclaration of enum %qs"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2042
+#: m2/gm2-gcc/m2type.cc:2052
 #, gcc-internal-format
 msgid "enumeration values exceed range of integer"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2276
+#: m2/gm2-gcc/m2type.cc:2286
 #, gcc-internal-format
 msgid "set type cannot be initialized with a %qs"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2283
+#: m2/gm2-gcc/m2type.cc:2293
 #, gcc-internal-format
 msgid "set type does not take another integer value"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2408
+#: m2/gm2-gcc/m2type.cc:2418
 #, gcc-internal-format
 msgid "array cannot be initialized with a %qs"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2414
+#: m2/gm2-gcc/m2type.cc:2424
 #, gcc-internal-format
 msgid "array type must be initialized"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2421
+#: m2/gm2-gcc/m2type.cc:2431
 #, gcc-internal-format
 msgid "array element value must be the same type as its declaration"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2484
+#: m2/gm2-gcc/m2type.cc:2494
 #, gcc-internal-format
 msgid "low bound for the subrange has overflowed"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2486
+#: m2/gm2-gcc/m2type.cc:2496
 #, gcc-internal-format
 msgid "high bound for the subrange has overflowed"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2783
+#: m2/gm2-gcc/m2type.cc:2793
 #, gcc-internal-format
 msgid "requested alignment is not a constant"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2785
+#: m2/gm2-gcc/m2type.cc:2795
 #, gcc-internal-format
 msgid "requested alignment is not a power of 2"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2787
+#: m2/gm2-gcc/m2type.cc:2797
 #, gcc-internal-format
 msgid "requested alignment is too large"
 msgstr ""
 
-#: m2/gm2-gcc/m2type.cc:2814
+#: m2/gm2-gcc/m2type.cc:2824
 #, gcc-internal-format
 msgid "alignment may not be specified for %qD"
 msgstr ""
 
-#: objc/objc-act.cc:425 objc/objc-act.cc:6964
+#: objc/objc-act.cc:423 objc/objc-act.cc:6962
 #, gcc-internal-format
 msgid "%<@end%> missing in implementation context"
 msgstr ""
 
-#: objc/objc-act.cc:578
+#: objc/objc-act.cc:576
 #, gcc-internal-format
 msgid "class attributes are not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.cc:593
+#: objc/objc-act.cc:591
 #, gcc-internal-format
 msgid "category attributes are not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.cc:596
+#: objc/objc-act.cc:594
 #, gcc-internal-format
 msgid ""
 "category attributes are not available in this version of the compiler, "
 "(ignored)"
 msgstr ""
 
-#: objc/objc-act.cc:602
+#: objc/objc-act.cc:600
 #, gcc-internal-format
 msgid "class extensions are not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.cc:616
+#: objc/objc-act.cc:614
 #, gcc-internal-format
 msgid "class extension for class %qE declared after its %<@implementation%>"
 msgstr ""
 
-#: objc/objc-act.cc:631
+#: objc/objc-act.cc:629
 #, gcc-internal-format
 msgid "protocol attributes are not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.cc:696
+#: objc/objc-act.cc:694
 #, gcc-internal-format
 msgid "%<@end%> must appear in an @implementation context"
 msgstr ""
 
-#: objc/objc-act.cc:705
+#: objc/objc-act.cc:703
 #, gcc-internal-format
 msgid "%<@package%> is not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.cc:707
+#: objc/objc-act.cc:705
 #, gcc-internal-format
 msgid "%<@package%> presently has the same effect as %<@public%>"
 msgstr ""
 
-#: objc/objc-act.cc:718
+#: objc/objc-act.cc:716
 #, gcc-internal-format
 msgid "%<@optional%> is not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.cc:720
+#: objc/objc-act.cc:718
 #, gcc-internal-format
 msgid "%<@required%> is not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.cc:728
+#: objc/objc-act.cc:726
 #, gcc-internal-format
 msgid "%<@optional%> is allowed in @protocol context only"
 msgstr ""
 
-#: objc/objc-act.cc:730
+#: objc/objc-act.cc:728
 #, gcc-internal-format
 msgid "%<@required%> is allowed in @protocol context only"
 msgstr ""
 
 #. FIXME: we probably ought to bail out at this point.
-#: objc/objc-act.cc:853
+#: objc/objc-act.cc:851
 #, gcc-internal-format
 msgid "%<@property%> is not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.cc:858
+#: objc/objc-act.cc:856
 #, gcc-internal-format
 msgid ""
 "property declaration not in %<@interface%>, %<@protocol%> or %<category%> "
 "context"
 msgstr ""
 
-#: objc/objc-act.cc:869
+#: objc/objc-act.cc:867
 #, gcc-internal-format
 msgid "properties must be named"
 msgstr ""
 
-#: objc/objc-act.cc:877
+#: objc/objc-act.cc:875
 #, gcc-internal-format
 msgid "property cannot be an array"
 msgstr ""
@@ -83472,132 +83611,132 @@ msgstr ""
 #. and arguments of functions cannot be bitfields).  The
 #. underlying instance variable could be a bitfield, but that is
 #. a different matter.
-#: objc/objc-act.cc:890
+#: objc/objc-act.cc:888
 #, gcc-internal-format
 msgid "property cannot be a bit-field"
 msgstr ""
 
-#: objc/objc-act.cc:914
+#: objc/objc-act.cc:912
 #, gcc-internal-format
 msgid "multiple property %qE methods specified, the latest one will be used"
 msgstr ""
 
-#: objc/objc-act.cc:916
+#: objc/objc-act.cc:914
 #, gcc-internal-format
 msgid "previous specification"
 msgstr ""
 
-#: objc/objc-act.cc:931
+#: objc/objc-act.cc:929
 #, gcc-internal-format
 msgid "%qE attribute conflicts with %qE attribute"
 msgstr ""
 
-#: objc/objc-act.cc:933
+#: objc/objc-act.cc:931
 #, gcc-internal-format
 msgid "%qE specified here"
 msgstr ""
 
-#: objc/objc-act.cc:939
+#: objc/objc-act.cc:937
 #, gcc-internal-format
 msgid "duplicate %qE attribute"
 msgstr ""
 
-#: objc/objc-act.cc:940
+#: objc/objc-act.cc:938
 #, gcc-internal-format
 msgid "first specified here"
 msgstr ""
 
-#: objc/objc-act.cc:967
+#: objc/objc-act.cc:965
 #, gcc-internal-format
 msgid "%<readonly%> attribute conflicts with %<setter%> attribute"
 msgstr ""
 
-#: objc/objc-act.cc:970
+#: objc/objc-act.cc:968
 #, gcc-internal-format
 msgid "%<setter%> specified here"
 msgstr ""
 
-#: objc/objc-act.cc:1049
+#: objc/objc-act.cc:1047
 #, gcc-internal-format
 msgid ""
 "object property %qD has no %<assign%>, %<retain%> or %<copy%> attribute; "
 "assuming %<assign%>"
 msgstr ""
 
-#: objc/objc-act.cc:1052
+#: objc/objc-act.cc:1050
 #, gcc-internal-format
 msgid ""
 "%<assign%> can be unsafe for Objective-C objects; please state explicitly if "
 "you need it"
 msgstr ""
 
-#: objc/objc-act.cc:1069
+#: objc/objc-act.cc:1067
 #, gcc-internal-format
 msgid "%qE attribute is only valid for Objective-C objects"
 msgstr ""
 
-#: objc/objc-act.cc:1127
+#: objc/objc-act.cc:1125
 #, gcc-internal-format
 msgid "redeclaration of property %qD"
 msgstr ""
 
-#: objc/objc-act.cc:1130 objc/objc-act.cc:1196 objc/objc-act.cc:1207
-#: objc/objc-act.cc:1221 objc/objc-act.cc:1232 objc/objc-act.cc:1244
-#: objc/objc-act.cc:1281 objc/objc-act.cc:7751 objc/objc-act.cc:7814
-#: objc/objc-act.cc:7837 objc/objc-act.cc:7851 objc/objc-act.cc:7869
-#: objc/objc-act.cc:7968
+#: objc/objc-act.cc:1128 objc/objc-act.cc:1194 objc/objc-act.cc:1205
+#: objc/objc-act.cc:1219 objc/objc-act.cc:1230 objc/objc-act.cc:1242
+#: objc/objc-act.cc:1279 objc/objc-act.cc:7749 objc/objc-act.cc:7812
+#: objc/objc-act.cc:7835 objc/objc-act.cc:7849 objc/objc-act.cc:7867
+#: objc/objc-act.cc:7966
 #, gcc-internal-format
 msgid "originally specified here"
 msgstr ""
 
-#: objc/objc-act.cc:1192
+#: objc/objc-act.cc:1190
 #, gcc-internal-format
 msgid ""
 "%<nonatomic%> attribute of property %qD conflicts with previous declaration"
 msgstr ""
 
-#: objc/objc-act.cc:1203
+#: objc/objc-act.cc:1201
 #, gcc-internal-format
 msgid ""
 "%<getter%> attribute of property %qD conflicts with previous declaration"
 msgstr ""
 
-#: objc/objc-act.cc:1217
+#: objc/objc-act.cc:1215
 #, gcc-internal-format
 msgid ""
 "%<setter%> attribute of property %qD conflicts with previous declaration"
 msgstr ""
 
-#: objc/objc-act.cc:1229
+#: objc/objc-act.cc:1227
 #, gcc-internal-format
 msgid ""
 "assign semantics attributes of property %qD conflict with previous "
 "declaration"
 msgstr ""
 
-#: objc/objc-act.cc:1240
+#: objc/objc-act.cc:1238
 #, gcc-internal-format
 msgid ""
 "%<readonly%> attribute of property %qD conflicts with previous declaration"
 msgstr ""
 
-#: objc/objc-act.cc:1279
+#: objc/objc-act.cc:1277
 #, gcc-internal-format
 msgid "type of property %qD conflicts with previous declaration"
 msgstr ""
 
-#: objc/objc-act.cc:1322
+#: objc/objc-act.cc:1320
 #, gcc-internal-format
 msgid "nullability specifier %qE cannot be applied to non-pointer type %qT"
 msgstr ""
 
-#: objc/objc-act.cc:1327
+#: objc/objc-act.cc:1325
 #, gcc-internal-format
 msgid ""
 "nullability specifier %qE cannot be applied to multi-level pointer type %qT"
 msgstr ""
 
-#: objc/objc-act.cc:1780
+#: objc/objc-act.cc:1778
 #, gcc-internal-format
 msgid "the dot syntax is not available in Objective-C 1.0"
 msgstr ""
@@ -83605,98 +83744,98 @@ msgstr ""
 #. We know that 'class_name' is an Objective-C class name as the
 #. parser won't call this function if it is not.  This is only a
 #. double-check for safety.
-#: objc/objc-act.cc:1796
+#: objc/objc-act.cc:1794
 #, gcc-internal-format
 msgid "could not find class %qE"
 msgstr ""
 
 #. Again, this should never happen, but we do check.
-#: objc/objc-act.cc:1804
+#: objc/objc-act.cc:1802
 #, gcc-internal-format
 msgid "could not find interface for class %qE"
 msgstr ""
 
-#: objc/objc-act.cc:1810 objc/objc-act.cc:7146
+#: objc/objc-act.cc:1808 objc/objc-act.cc:7144
 #, gcc-internal-format
 msgid "class %qE is unavailable"
 msgstr ""
 
-#: objc/objc-act.cc:1812 objc/objc-act.cc:7003 objc/objc-act.cc:7148
+#: objc/objc-act.cc:1810 objc/objc-act.cc:7001 objc/objc-act.cc:7146
 #, gcc-internal-format
 msgid "class %qE is deprecated"
 msgstr ""
 
-#: objc/objc-act.cc:1841
+#: objc/objc-act.cc:1839
 #, gcc-internal-format
 msgid "could not find setter/getter for %qE in class %qE"
 msgstr ""
 
-#: objc/objc-act.cc:1891
+#: objc/objc-act.cc:1889
 #, gcc-internal-format
 msgid "%qs property cannot be set"
 msgstr ""
 
-#: objc/objc-act.cc:2159
+#: objc/objc-act.cc:2157
 #, gcc-internal-format
 msgid "method declaration not in @interface context"
 msgstr ""
 
-#: objc/objc-act.cc:2163
+#: objc/objc-act.cc:2161
 #, gcc-internal-format
 msgid "method attributes are not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.cc:2183
+#: objc/objc-act.cc:2181
 #, gcc-internal-format
 msgid "method definition not in @implementation context"
 msgstr ""
 
-#: objc/objc-act.cc:2196
+#: objc/objc-act.cc:2194
 #, gcc-internal-format
 msgid "method attributes cannot be specified in @implementation context"
 msgstr ""
 
-#: objc/objc-act.cc:2426
+#: objc/objc-act.cc:2424
 #, gcc-internal-format
 msgid "class %qs does not implement the %qE protocol"
 msgstr ""
 
-#: objc/objc-act.cc:2429
+#: objc/objc-act.cc:2427
 #, gcc-internal-format
 msgid "type %qs does not conform to the %qE protocol"
 msgstr ""
 
-#: objc/objc-act.cc:2724
+#: objc/objc-act.cc:2722
 #, gcc-internal-format
 msgid "comparison of distinct Objective-C types lacks a cast"
 msgstr ""
 
-#: objc/objc-act.cc:2728
+#: objc/objc-act.cc:2726
 #, gcc-internal-format
 msgid "initialization from distinct Objective-C type"
 msgstr ""
 
-#: objc/objc-act.cc:2732
+#: objc/objc-act.cc:2730
 #, gcc-internal-format
 msgid "assignment from distinct Objective-C type"
 msgstr ""
 
-#: objc/objc-act.cc:2736
+#: objc/objc-act.cc:2734
 #, gcc-internal-format
 msgid "distinct Objective-C type in return"
 msgstr ""
 
-#: objc/objc-act.cc:2740
+#: objc/objc-act.cc:2738
 #, gcc-internal-format
 msgid "passing argument %d of %qE from distinct Objective-C type"
 msgstr ""
 
-#: objc/objc-act.cc:2883
+#: objc/objc-act.cc:2881
 #, gcc-internal-format
 msgid "statically allocated instance of Objective-C class %qE"
 msgstr ""
 
-#: objc/objc-act.cc:2892
+#: objc/objc-act.cc:2890
 #, gcc-internal-format
 msgid "redeclaration of Objective-C class %qs"
 msgstr ""
@@ -83708,186 +83847,186 @@ msgstr ""
 #. Objective-C class, but something else, such as 'int'.
 #. This is an error; protocols make no sense unless you use
 #. them with Objective-C objects.
-#: objc/objc-act.cc:2934
+#: objc/objc-act.cc:2932
 #, gcc-internal-format
 msgid "only Objective-C object types can be qualified with a protocol"
 msgstr ""
 
-#: objc/objc-act.cc:2998
+#: objc/objc-act.cc:2996
 #, gcc-internal-format
 msgid "protocol %qE has circular dependency"
 msgstr ""
 
-#: objc/objc-act.cc:3031 objc/objc-act.cc:5865
+#: objc/objc-act.cc:3029 objc/objc-act.cc:5863
 #, gcc-internal-format
 msgid "cannot find protocol declaration for %qE"
 msgstr ""
 
-#: objc/objc-act.cc:3341 objc/objc-act.cc:3996 objc/objc-act.cc:6577
-#: objc/objc-act.cc:7054 objc/objc-act.cc:7139 objc/objc-act.cc:7194
+#: objc/objc-act.cc:3339 objc/objc-act.cc:3994 objc/objc-act.cc:6575
+#: objc/objc-act.cc:7052 objc/objc-act.cc:7137 objc/objc-act.cc:7192
 #, gcc-internal-format
 msgid "cannot find interface declaration for %qE"
 msgstr ""
 
-#: objc/objc-act.cc:3345
+#: objc/objc-act.cc:3343
 #, gcc-internal-format
 msgid "interface %qE does not have valid constant string layout"
 msgstr ""
 
-#: objc/objc-act.cc:3350
+#: objc/objc-act.cc:3348
 #, gcc-internal-format
 msgid "cannot find reference tag for class %qE"
 msgstr ""
 
-#: objc/objc-act.cc:3495
+#: objc/objc-act.cc:3493
 #, gcc-internal-format
 msgid "%qE is not an Objective-C class name or alias"
 msgstr ""
 
-#: objc/objc-act.cc:3510 objc/objc-act.cc:3541 objc/objc-act.cc:6958
-#: objc/objc-act.cc:8304 objc/objc-act.cc:8360
+#: objc/objc-act.cc:3508 objc/objc-act.cc:3539 objc/objc-act.cc:6956
+#: objc/objc-act.cc:8302 objc/objc-act.cc:8358
 #, gcc-internal-format
 msgid "Objective-C declarations may only appear in global scope"
 msgstr ""
 
-#: objc/objc-act.cc:3515
+#: objc/objc-act.cc:3513
 #, gcc-internal-format
 msgid "cannot find class %qE"
 msgstr ""
 
-#: objc/objc-act.cc:3517
+#: objc/objc-act.cc:3515
 #, gcc-internal-format
 msgid "class %qE already exists"
 msgstr ""
 
-#: objc/objc-act.cc:3559 objc/objc-act.cc:7019
+#: objc/objc-act.cc:3557 objc/objc-act.cc:7017
 #, gcc-internal-format
 msgid "%qE redeclared as different kind of symbol"
 msgstr ""
 
-#: objc/objc-act.cc:3561 objc/objc-act.cc:4147 objc/objc-act.cc:4175
-#: objc/objc-act.cc:4230 objc/objc-act.cc:7021
+#: objc/objc-act.cc:3559 objc/objc-act.cc:4145 objc/objc-act.cc:4173
+#: objc/objc-act.cc:4228 objc/objc-act.cc:7019
 #, gcc-internal-format
 msgid "previous declaration of %q+D"
 msgstr ""
 
-#: objc/objc-act.cc:3850
+#: objc/objc-act.cc:3848
 #, gcc-internal-format
 msgid "strong-cast assignment has been intercepted"
 msgstr ""
 
-#: objc/objc-act.cc:3892
+#: objc/objc-act.cc:3890
 #, gcc-internal-format
 msgid "strong-cast may possibly be needed"
 msgstr ""
 
-#: objc/objc-act.cc:3902
+#: objc/objc-act.cc:3900
 #, gcc-internal-format
 msgid "instance variable assignment has been intercepted"
 msgstr ""
 
-#: objc/objc-act.cc:3921
+#: objc/objc-act.cc:3919
 #, gcc-internal-format
 msgid "pointer arithmetic for garbage-collected objects not allowed"
 msgstr ""
 
-#: objc/objc-act.cc:3927
+#: objc/objc-act.cc:3925
 #, gcc-internal-format
 msgid "global/static variable assignment has been intercepted"
 msgstr ""
 
-#: objc/objc-act.cc:4144 objc/objc-act.cc:4172 objc/objc-act.cc:4227
+#: objc/objc-act.cc:4142 objc/objc-act.cc:4170 objc/objc-act.cc:4225
 #, gcc-internal-format
 msgid "duplicate instance variable %q+D"
 msgstr ""
 
-#: objc/objc-act.cc:4287
+#: objc/objc-act.cc:4285
 #, gcc-internal-format
 msgid ""
 "%<-fobjc-exceptions%> is required to enable Objective-C exception syntax"
 msgstr ""
 
-#: objc/objc-act.cc:4371
+#: objc/objc-act.cc:4369
 #, gcc-internal-format
 msgid "%<@catch%> parameter is not a known Objective-C class type"
 msgstr ""
 
-#: objc/objc-act.cc:4377
+#: objc/objc-act.cc:4375
 #, gcc-internal-format
 msgid "%<@catch%> parameter cannot be protocol-qualified"
 msgstr ""
 
-#: objc/objc-act.cc:4422
+#: objc/objc-act.cc:4420
 #, gcc-internal-format
 msgid "exception of type %<%T%> will be caught"
 msgstr ""
 
-#: objc/objc-act.cc:4424
+#: objc/objc-act.cc:4422
 #, gcc-internal-format
 msgid "   by earlier handler for %<%T%>"
 msgstr ""
 
-#: objc/objc-act.cc:4471
+#: objc/objc-act.cc:4469
 #, gcc-internal-format
 msgid "%<@try%> without %<@catch%> or %<@finally%>"
 msgstr ""
 
-#: objc/objc-act.cc:4500
+#: objc/objc-act.cc:4498
 #, gcc-internal-format
 msgid "%<@throw%> (rethrow) used outside of a %<@catch%> block"
 msgstr ""
 
-#: objc/objc-act.cc:4513
+#: objc/objc-act.cc:4511
 #, gcc-internal-format
 msgid "%<@throw%> argument is not an object"
 msgstr ""
 
-#: objc/objc-act.cc:4534
+#: objc/objc-act.cc:4532
 #, gcc-internal-format
 msgid "%<@synchronized%> argument is not an object"
 msgstr ""
 
-#: objc/objc-act.cc:4744
+#: objc/objc-act.cc:4742
 #, gcc-internal-format
 msgid "%s %qs"
 msgstr ""
 
-#: objc/objc-act.cc:4767 objc/objc-act.cc:4792
+#: objc/objc-act.cc:4765 objc/objc-act.cc:4790
 #, gcc-internal-format
 msgid "inconsistent instance variable specification"
 msgstr ""
 
-#: objc/objc-act.cc:4847
+#: objc/objc-act.cc:4845
 #, gcc-internal-format
 msgid "cannot use an object as parameter to a method"
 msgstr ""
 
-#: objc/objc-act.cc:4891
+#: objc/objc-act.cc:4889
 #, gcc-internal-format
 msgid "method argument attributes are not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.cc:5266
+#: objc/objc-act.cc:5264
 #, gcc-internal-format
 msgid "multiple methods named %<%c%E%> found"
 msgstr ""
 
-#: objc/objc-act.cc:5269
+#: objc/objc-act.cc:5267
 #, gcc-internal-format
 msgid "using %<%c%s%>"
 msgstr ""
 
-#: objc/objc-act.cc:5278
+#: objc/objc-act.cc:5276
 #, gcc-internal-format
 msgid "multiple selectors named %<%c%E%> found"
 msgstr ""
 
-#: objc/objc-act.cc:5281
+#: objc/objc-act.cc:5279
 #, gcc-internal-format
 msgid "found %<%c%s%>"
 msgstr ""
 
-#: objc/objc-act.cc:5290
+#: objc/objc-act.cc:5288
 #, gcc-internal-format
 msgid "also found %<%c%s%>"
 msgstr ""
@@ -83915,50 +84054,50 @@ msgstr ""
 #. warning, either include an @interface for the
 #. class, or cast the receiver to 'id'.  Note that
 #. rtype is an IDENTIFIER_NODE at this point.
-#: objc/objc-act.cc:5578 objc/objc-act.cc:5713
+#: objc/objc-act.cc:5576 objc/objc-act.cc:5711
 #, gcc-internal-format
 msgid "%<@interface%> of class %qE not found"
 msgstr ""
 
-#: objc/objc-act.cc:5587
+#: objc/objc-act.cc:5585
 #, gcc-internal-format
 msgid "no super class declared in @interface for %qE"
 msgstr ""
 
-#: objc/objc-act.cc:5638
+#: objc/objc-act.cc:5636
 #, gcc-internal-format
 msgid "found %<-%E%> instead of %<+%E%> in protocol(s)"
 msgstr ""
 
 #. We have a type, but it's not an Objective-C type (!).
-#: objc/objc-act.cc:5750
+#: objc/objc-act.cc:5748
 #, gcc-internal-format
 msgid "invalid receiver type %qs"
 msgstr ""
 
-#: objc/objc-act.cc:5767
+#: objc/objc-act.cc:5765
 #, gcc-internal-format
 msgid "%<%c%E%> not found in protocol(s)"
 msgstr ""
 
-#: objc/objc-act.cc:5781
+#: objc/objc-act.cc:5779
 #, gcc-internal-format
 msgid "%qE may not respond to %<%c%E%>"
 msgstr ""
 
-#: objc/objc-act.cc:5789
+#: objc/objc-act.cc:5787
 #, gcc-internal-format
 msgid "no %<%c%E%> method found"
 msgstr ""
 
-#: objc/objc-act.cc:5796
+#: objc/objc-act.cc:5794
 #, gcc-internal-format
 msgid ""
 "(messages without a matching method signature will be assumed to return "
 "%<id%> and accept %<...%> as arguments)"
 msgstr ""
 
-#: objc/objc-act.cc:5914
+#: objc/objc-act.cc:5912
 #, gcc-internal-format
 msgid "undeclared selector %qE"
 msgstr ""
@@ -83972,222 +84111,222 @@ msgstr ""
 #. to an instance variable.  It's better to catch the cases
 #. where this is done unknowingly than to support the above
 #. paradigm.
-#: objc/objc-act.cc:5938
+#: objc/objc-act.cc:5936
 #, gcc-internal-format
 msgid "instance variable %qE accessed in class method"
 msgstr ""
 
-#: objc/objc-act.cc:6168 objc/objc-act.cc:6188
+#: objc/objc-act.cc:6166 objc/objc-act.cc:6186
 #, gcc-internal-format
 msgid ""
 "method %<%c%E%> declared %<@optional%> and %<@required%> at the same time"
 msgstr ""
 
-#: objc/objc-act.cc:6172
+#: objc/objc-act.cc:6170
 #, gcc-internal-format
 msgid "previous declaration of %<%c%E%> as %<@required%>"
 msgstr ""
 
-#: objc/objc-act.cc:6192
+#: objc/objc-act.cc:6190
 #, gcc-internal-format
 msgid "previous declaration of %<%c%E%> as %<@optional%>"
 msgstr ""
 
-#: objc/objc-act.cc:6252
+#: objc/objc-act.cc:6250
 #, gcc-internal-format
 msgid "duplicate declaration of method %<%c%E%> with conflicting types"
 msgstr ""
 
-#: objc/objc-act.cc:6256
+#: objc/objc-act.cc:6254
 #, gcc-internal-format
 msgid "previous declaration of %<%c%E%>"
 msgstr ""
 
-#: objc/objc-act.cc:6293
+#: objc/objc-act.cc:6291
 #, gcc-internal-format
 msgid "duplicate interface declaration for category %<%E(%E)%>"
 msgstr ""
 
-#: objc/objc-act.cc:6381
+#: objc/objc-act.cc:6379
 #, gcc-internal-format
 msgid "illegal reference type specified for instance variable %qs"
 msgstr ""
 
-#: objc/objc-act.cc:6392
+#: objc/objc-act.cc:6390
 #, gcc-internal-format
 msgid "instance variable %qs has unknown size"
 msgstr ""
 
-#: objc/objc-act.cc:6413
+#: objc/objc-act.cc:6411
 #, gcc-internal-format
 msgid "instance variable %qs uses flexible array member"
 msgstr ""
 
-#: objc/objc-act.cc:6440
+#: objc/objc-act.cc:6438
 #, gcc-internal-format
 msgid "type %qE has no default constructor to call"
 msgstr ""
 
-#: objc/objc-act.cc:6446
+#: objc/objc-act.cc:6444
 #, gcc-internal-format
 msgid "destructor for %qE shall not be run either"
 msgstr ""
 
 #. Vtable pointers are Real Bad(tm), since Obj-C cannot
 #. initialize them.
-#: objc/objc-act.cc:6458
+#: objc/objc-act.cc:6456
 #, gcc-internal-format
 msgid "type %qE has virtual member functions"
 msgstr ""
 
-#: objc/objc-act.cc:6459
+#: objc/objc-act.cc:6457
 #, gcc-internal-format
 msgid "illegal aggregate type %qE specified for instance variable %qs"
 msgstr ""
 
-#: objc/objc-act.cc:6469
+#: objc/objc-act.cc:6467
 #, gcc-internal-format
 msgid "type %qE has a user-defined constructor"
 msgstr ""
 
-#: objc/objc-act.cc:6471
+#: objc/objc-act.cc:6469
 #, gcc-internal-format
 msgid "type %qE has a user-defined destructor"
 msgstr ""
 
-#: objc/objc-act.cc:6475
+#: objc/objc-act.cc:6473
 #, gcc-internal-format
 msgid ""
 "C++ constructors and destructors will not be invoked for Objective-C fields"
 msgstr ""
 
-#: objc/objc-act.cc:6606
+#: objc/objc-act.cc:6604
 #, gcc-internal-format
 msgid "instance variable %qE is declared private"
 msgstr ""
 
-#: objc/objc-act.cc:6617
+#: objc/objc-act.cc:6615
 #, gcc-internal-format
 msgid "instance variable %qE is %s; this will be a hard error in the future"
 msgstr ""
 
-#: objc/objc-act.cc:6624
+#: objc/objc-act.cc:6622
 #, gcc-internal-format
 msgid "instance variable %qE is declared %s"
 msgstr ""
 
-#: objc/objc-act.cc:6735 objc/objc-act.cc:6850
+#: objc/objc-act.cc:6733 objc/objc-act.cc:6848
 #, gcc-internal-format
 msgid "incomplete implementation of class %qE"
 msgstr ""
 
-#: objc/objc-act.cc:6739 objc/objc-act.cc:6854
+#: objc/objc-act.cc:6737 objc/objc-act.cc:6852
 #, gcc-internal-format
 msgid "incomplete implementation of category %qE"
 msgstr ""
 
-#: objc/objc-act.cc:6748 objc/objc-act.cc:6862
+#: objc/objc-act.cc:6746 objc/objc-act.cc:6860
 #, gcc-internal-format
 msgid "method definition for %<%c%E%> not found"
 msgstr ""
 
-#: objc/objc-act.cc:6903
+#: objc/objc-act.cc:6901
 #, gcc-internal-format
 msgid "%s %qE does not fully implement the %qE protocol"
 msgstr ""
 
-#: objc/objc-act.cc:6993
+#: objc/objc-act.cc:6991
 #, gcc-internal-format
 msgid "cannot find interface declaration for %qE, superclass of %qE"
 msgstr ""
 
-#: objc/objc-act.cc:7001
+#: objc/objc-act.cc:6999
 #, gcc-internal-format
 msgid "class %qE is not available"
 msgstr ""
 
-#: objc/objc-act.cc:7034
+#: objc/objc-act.cc:7032
 #, gcc-internal-format
 msgid "reimplementation of class %qE"
 msgstr ""
 
-#: objc/objc-act.cc:7067
+#: objc/objc-act.cc:7065
 #, gcc-internal-format
 msgid "conflicting super class name %qE"
 msgstr ""
 
-#: objc/objc-act.cc:7070
+#: objc/objc-act.cc:7068
 #, gcc-internal-format
 msgid "previous declaration of %qE"
 msgstr ""
 
-#: objc/objc-act.cc:7072
+#: objc/objc-act.cc:7070
 #, gcc-internal-format
 msgid "previous declaration"
 msgstr ""
 
-#: objc/objc-act.cc:7084
+#: objc/objc-act.cc:7082
 #, gcc-internal-format
 msgid "class %qE defined without specifying a base class"
 msgstr ""
 
-#: objc/objc-act.cc:7091 objc/objc-act.cc:7093
+#: objc/objc-act.cc:7089 objc/objc-act.cc:7091
 #, gcc-internal-format
 msgid "duplicate interface declaration for class %qE"
 msgstr ""
 
-#: objc/objc-act.cc:7418 objc/objc-act.cc:7614
+#: objc/objc-act.cc:7416 objc/objc-act.cc:7612
 #, gcc-internal-format
 msgid "cannot find instance variable associated with property"
 msgstr ""
 
 #. TODO: This should be caught much earlier than this.
-#: objc/objc-act.cc:7580
+#: objc/objc-act.cc:7578
 #, gcc-internal-format
 msgid "invalid setter, it must have one argument"
 msgstr ""
 
-#: objc/objc-act.cc:7744 objc/objc-act.cc:7961
+#: objc/objc-act.cc:7742 objc/objc-act.cc:7959
 #, gcc-internal-format
 msgid "property %qs already specified in %<@dynamic%>"
 msgstr ""
 
-#: objc/objc-act.cc:7747 objc/objc-act.cc:7964
+#: objc/objc-act.cc:7745 objc/objc-act.cc:7962
 #, gcc-internal-format
 msgid "property %qs already specified in %<@synthesize%>"
 msgstr ""
 
-#: objc/objc-act.cc:7761 objc/objc-act.cc:7978
+#: objc/objc-act.cc:7759 objc/objc-act.cc:7976
 #, gcc-internal-format
 msgid "no declaration of property %qs found in the interface"
 msgstr ""
 
-#: objc/objc-act.cc:7788
+#: objc/objc-act.cc:7786
 #, gcc-internal-format
 msgid "ivar %qs used by %<@synthesize%> declaration must be an existing ivar"
 msgstr ""
 
-#: objc/objc-act.cc:7809
+#: objc/objc-act.cc:7807
 #, gcc-internal-format
 msgid "property %qs is using instance variable %qs of incompatible type"
 msgstr ""
 
-#: objc/objc-act.cc:7831
+#: objc/objc-act.cc:7829
 #, gcc-internal-format
 msgid "%<assign%> property %qs is using bit-field instance variable %qs"
 msgstr ""
 
-#: objc/objc-act.cc:7845
+#: objc/objc-act.cc:7843
 #, gcc-internal-format
 msgid "%<atomic%> property %qs is using bit-field instance variable %qs"
 msgstr ""
 
-#: objc/objc-act.cc:7864
+#: objc/objc-act.cc:7862
 #, gcc-internal-format
 msgid "property %qs is using the same instance variable as property %qs"
 msgstr ""
 
-#: objc/objc-act.cc:7905
+#: objc/objc-act.cc:7903
 #, gcc-internal-format
 msgid "%<@synthesize%> is not available in Objective-C 1.0"
 msgstr ""
@@ -84196,22 +84335,22 @@ msgstr ""
 #. detects the problem while parsing, outputs the error
 #. "misplaced '@synthesize' Objective-C++ construct" and skips
 #. the declaration.
-#: objc/objc-act.cc:7916
+#: objc/objc-act.cc:7914
 #, gcc-internal-format
 msgid "%<@synthesize%> not in @implementation context"
 msgstr ""
 
-#: objc/objc-act.cc:7922
+#: objc/objc-act.cc:7920
 #, gcc-internal-format
 msgid "%<@synthesize%> cannot be used in categories"
 msgstr ""
 
-#: objc/objc-act.cc:7931
+#: objc/objc-act.cc:7929
 #, gcc-internal-format
 msgid "%<@synthesize%> requires the @interface of the class to be available"
 msgstr ""
 
-#: objc/objc-act.cc:8014
+#: objc/objc-act.cc:8012
 #, gcc-internal-format
 msgid "%<@dynamic%> is not available in Objective-C 1.0"
 msgstr ""
@@ -84220,22 +84359,22 @@ msgstr ""
 #. detects the problem while parsing, outputs the error
 #. "misplaced '@dynamic' Objective-C++ construct" and skips the
 #. declaration.
-#: objc/objc-act.cc:8025
+#: objc/objc-act.cc:8023
 #, gcc-internal-format
 msgid "%<@dynamic%> not in @implementation context"
 msgstr ""
 
-#: objc/objc-act.cc:8047
+#: objc/objc-act.cc:8045
 #, gcc-internal-format
 msgid "%<@dynamic%> requires the @interface of the class to be available"
 msgstr ""
 
-#: objc/objc-act.cc:8247
+#: objc/objc-act.cc:8245
 #, gcc-internal-format
 msgid "definition of protocol %qE not found"
 msgstr ""
 
-#: objc/objc-act.cc:8274
+#: objc/objc-act.cc:8272
 #, gcc-internal-format
 msgid "protocol %qE is unavailable"
 msgstr ""
@@ -84243,47 +84382,47 @@ msgstr ""
 #. It would be nice to use warn_deprecated_use() here, but
 #. we are using TREE_CHAIN (which is supposed to be the
 #. TYPE_STUB_DECL for a TYPE) for something different.
-#: objc/objc-act.cc:8280
+#: objc/objc-act.cc:8278
 #, gcc-internal-format
 msgid "protocol %qE is deprecated"
 msgstr ""
 
-#: objc/objc-act.cc:8407
+#: objc/objc-act.cc:8405
 #, gcc-internal-format
 msgid "duplicate declaration for protocol %qE"
 msgstr ""
 
-#: objc/objc-act.cc:8931
+#: objc/objc-act.cc:8929
 #, gcc-internal-format
 msgid "conflicting types for %<%c%s%>"
 msgstr ""
 
-#: objc/objc-act.cc:8935
+#: objc/objc-act.cc:8933
 #, gcc-internal-format
 msgid "previous declaration of %<%c%s%>"
 msgstr ""
 
-#: objc/objc-act.cc:9037
+#: objc/objc-act.cc:9035
 #, gcc-internal-format
 msgid "no super class declared in interface for %qE"
 msgstr ""
 
-#: objc/objc-act.cc:9064
+#: objc/objc-act.cc:9062
 #, gcc-internal-format
 msgid "%<[super ...]%> must appear in a method context"
 msgstr ""
 
-#: objc/objc-act.cc:9104
+#: objc/objc-act.cc:9102
 #, gcc-internal-format
 msgid "method possibly missing a [super dealloc] call"
 msgstr ""
 
-#: objc/objc-act.cc:9572
+#: objc/objc-act.cc:9570
 #, gcc-internal-format
 msgid "instance variable %qs is declared private"
 msgstr ""
 
-#: objc/objc-act.cc:9625
+#: objc/objc-act.cc:9623
 #, gcc-internal-format
 msgid "local declaration of %qE hides instance variable"
 msgstr ""
@@ -84291,22 +84430,22 @@ msgstr ""
 #. This can happen if DECL_ARTIFICIAL (*expr_p), but
 #. should be impossible for real properties, which always
 #. have a getter.
-#: objc/objc-act.cc:9669
+#: objc/objc-act.cc:9667
 #, gcc-internal-format
 msgid "no %qs getter found"
 msgstr ""
 
-#: objc/objc-act.cc:9916
+#: objc/objc-act.cc:9914
 #, gcc-internal-format
 msgid "fast enumeration is not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.cc:9926
+#: objc/objc-act.cc:9924
 #, gcc-internal-format
 msgid "iterating variable in fast enumeration is not an object"
 msgstr ""
 
-#: objc/objc-act.cc:9932
+#: objc/objc-act.cc:9930
 #, gcc-internal-format
 msgid "collection in fast enumeration is not an object"
 msgstr ""
@@ -84362,52 +84501,47 @@ msgstr ""
 msgid "creating selector for nonexistent method %qE"
 msgstr ""
 
-#: rust/rust-gcc-diagnostics.cc:33
-#, gcc-internal-format, gfc-internal-format
-msgid "at %s, %s"
-msgstr ""
-
 #: rust/rust-lang.cc:104
 #, gcc-internal-format
 msgid "TODO"
 msgstr ""
 
-#: rust/backend/rust-constexpr.cc:1675
+#: rust/backend/rust-constexpr.cc:1673
 #, gcc-internal-format
 msgid "array size expression is not supported yet"
 msgstr ""
 
-#: rust/backend/rust-constexpr.cc:1802
+#: rust/backend/rust-constexpr.cc:1800
 #, gcc-internal-format
 msgid "constant folding not supported for this tree code"
 msgstr ""
 
-#: rust/backend/rust-constexpr.cc:6181
+#: rust/backend/rust-constexpr.cc:6169
 #, gcc-internal-format
 msgid "%qD declared %<thread_local%> in %<constexpr%> context"
 msgstr ""
 
-#: rust/backend/rust-constexpr.cc:6190
+#: rust/backend/rust-constexpr.cc:6178
 #, gcc-internal-format
 msgid "%qD declared %<static%> in %<constexpr%> context"
 msgstr ""
 
-#: rust/backend/rust-tree.cc:617
+#: rust/backend/rust-tree.cc:618
 #, gcc-internal-format
 msgid "ignoring return value of %qD, that must be used: %<%s%>"
 msgstr ""
 
-#: rust/backend/rust-tree.cc:618
+#: rust/backend/rust-tree.cc:619
 #, gcc-internal-format
 msgid "ignoring return value of %qD, that must be used"
 msgstr ""
 
-#: rust/backend/rust-tree.cc:634
+#: rust/backend/rust-tree.cc:635
 #, gcc-internal-format
 msgid "ignoring returned value of type %qT, that must be used: %<%s%>"
 msgstr ""
 
-#: rust/backend/rust-tree.cc:635
+#: rust/backend/rust-tree.cc:636
 #, gcc-internal-format
 msgid "ignoring returned value of type %qT, that must be used"
 msgstr ""