Regenerate .pot files.
authorJoseph Myers <joseph@codesourcery.com>
Fri, 5 Feb 2021 21:40:13 +0000 (21:40 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Fri, 5 Feb 2021 21:40:13 +0000 (21:40 +0000)
gcc/po/
* gcc.pot: Regenerate.

libcpp/po/
* cpplib.pot: Regenerate.

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

index 99c40e9..eb8757a 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: 2020-07-20 18:03+0000\n"
+"POT-Creation-Date: 2021-02-05 21:38+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"
@@ -34,50 +34,50 @@ msgstr ""
 msgid "return not followed by barrier"
 msgstr ""
 
-#: collect-utils.c:165
+#: collect-utils.c:169
 #, c-format
 msgid "[cannot find %s]"
 msgstr ""
 
-#: collect2.c:1569
+#: collect2.c:1587
 #, c-format
 msgid "collect2 version %s\n"
 msgstr ""
 
-#: collect2.c:1674
+#: collect2.c:1692
 #, c-format
 msgid "%d constructor found\n"
 msgid_plural "%d constructors found\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: collect2.c:1678
+#: collect2.c:1696
 #, c-format
 msgid "%d destructor found\n"
 msgid_plural "%d destructors found\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: collect2.c:1682
+#: collect2.c:1700
 #, c-format
 msgid "%d frame table found\n"
 msgid_plural "%d frame tables found\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: collect2.c:1837
+#: collect2.c:1855
 #, c-format
 msgid "[Leaving %s]\n"
 msgstr ""
 
-#: collect2.c:2067
+#: collect2.c:2085
 #, c-format
 msgid ""
 "\n"
 "write_c_file - output name is %s, prefix is %s\n"
 msgstr ""
 
-#: collect2.c:2572
+#: collect2.c:2608
 #, c-format
 msgid ""
 "\n"
@@ -98,94 +98,122 @@ msgstr ""
 msgid "%s: some warnings being treated as errors"
 msgstr ""
 
-#: diagnostic.c:422 input.c:225 input.c:1874 c-family/c-opts.c:1428
-#: fortran/cpp.c:577 fortran/error.c:1049 fortran/error.c:1069
+#: diagnostic.c:440 input.c:225 input.c:1876 c-family/c-opts.c:1458
+#: fortran/cpp.c:579 fortran/error.c:1049 fortran/error.c:1069
 msgid "<built-in>"
 msgstr ""
 
-#: diagnostic.c:579
+#: diagnostic.c:598
 #, c-format
 msgid "compilation terminated due to -fmax-errors=%u.\n"
 msgstr ""
 
-#: diagnostic.c:607
+#: diagnostic.c:626
 #, c-format
 msgid "compilation terminated due to -Wfatal-errors.\n"
 msgstr ""
 
-#: diagnostic.c:627
+#: diagnostic.c:646
 #, c-format
 msgid ""
 "Please submit a full bug report,\n"
 "with preprocessed source if appropriate.\n"
 msgstr ""
 
-#: diagnostic.c:633
+#: diagnostic.c:652
 #, c-format
 msgid "See %s for instructions.\n"
 msgstr ""
 
-#: diagnostic.c:642
+#: diagnostic.c:661
 #, c-format
 msgid "compilation terminated.\n"
 msgstr ""
 
-#: diagnostic.c:709
+#: diagnostic.c:730
+msgid "                 from"
+msgstr ""
+
+#: diagnostic.c:731
 msgid "In file included from"
 msgstr ""
 
-#: diagnostic.c:710
-msgid "                 from"
+#. 2
+#: diagnostic.c:732
+msgid "        included from"
 msgstr ""
 
-#: diagnostic.c:1181
+#: diagnostic.c:733
+msgid "In module"
+msgstr ""
+
+#. 4
+#: diagnostic.c:734
+msgid "of module"
+msgstr ""
+
+#: diagnostic.c:735
+msgid "In module imported at"
+msgstr ""
+
+#. 6
+#: diagnostic.c:736
+msgid "imported at"
+msgstr ""
+
+#: diagnostic.c:1220
 #, c-format
 msgid "%s:%d: confused by earlier errors, bailing out\n"
 msgstr ""
 
-#: diagnostic.c:1806
+#: diagnostic.c:1857
 #, c-format
 msgid "Internal compiler error: Error reporting routines re-entered.\n"
 msgstr ""
 
-#: final.c:1126
+#: diagnostic.c:1888 diagnostic.c:1907
+#, gcc-internal-format, gfc-internal-format
+msgid "in %s, at %s:%d"
+msgstr ""
+
+#: final.c:1127
 msgid "negative insn length"
 msgstr ""
 
-#: final.c:3073
+#: final.c:3092
 msgid "could not split insn"
 msgstr ""
 
-#: final.c:3602
+#: final.c:3620
 msgid "invalid 'asm': "
 msgstr ""
 
-#: final.c:3735
+#: final.c:3753
 #, c-format
 msgid "nested assembly dialect alternatives"
 msgstr ""
 
-#: final.c:3763 final.c:3775
+#: final.c:3781 final.c:3793
 #, c-format
 msgid "unterminated assembly dialect alternative"
 msgstr ""
 
-#: final.c:3917
+#: final.c:3935
 #, c-format
 msgid "operand number missing after %%-letter"
 msgstr ""
 
-#: final.c:3920 final.c:3961
+#: final.c:3938 final.c:3979
 #, c-format
 msgid "operand number out of range"
 msgstr ""
 
-#: final.c:3978
+#: final.c:3996
 #, c-format
 msgid "invalid %%-code"
 msgstr ""
 
-#: final.c:4012
+#: final.c:4030
 #, c-format
 msgid "'%%l' operand isn't a label"
 msgstr ""
@@ -194,12 +222,12 @@ msgstr ""
 #. PRINT_OPERAND must handle them.
 #. We can't handle floating point constants;
 #. TARGET_PRINT_OPERAND must handle them.
-#: final.c:4148 config/arc/arc.c:6404 config/i386/i386.c:11644
+#: final.c:4166 config/arc/arc.c:6404 config/i386/i386.c:11956
 #, c-format
 msgid "floating constant misused"
 msgstr ""
 
-#: final.c:4206 config/arc/arc.c:6501 config/i386/i386.c:11735
+#: final.c:4224 config/arc/arc.c:6501 config/i386/i386.c:12047
 #: config/pdp11/pdp11.c:1874
 #, c-format
 msgid "invalid expression as operand"
@@ -210,277 +238,277 @@ msgstr ""
 msgid "%s\n"
 msgstr ""
 
-#: gcc.c:1763
+#: gcc.c:1841
 #, c-format
 msgid "Using built-in specs.\n"
 msgstr ""
 
-#: gcc.c:1963
+#: gcc.c:2086
 #, c-format
 msgid ""
 "Setting spec %s to '%s'\n"
 "\n"
 msgstr ""
 
-#: gcc.c:2142
+#: gcc.c:2291
 #, c-format
 msgid "Reading specs from %s\n"
 msgstr ""
 
-#: gcc.c:2274
+#: gcc.c:2423
 #, c-format
 msgid "could not find specs file %s\n"
 msgstr ""
 
-#: gcc.c:2349
+#: gcc.c:2498
 #, c-format
 msgid "rename spec %s to %s\n"
 msgstr ""
 
-#: gcc.c:2351
+#: gcc.c:2500
 #, c-format
 msgid ""
 "spec is '%s'\n"
 "\n"
 msgstr ""
 
-#: gcc.c:3198
+#: gcc.c:3347
 #, c-format
 msgid ""
 "\n"
 "Go ahead? (y or n) "
 msgstr ""
 
-#: gcc.c:3370
+#: gcc.c:3519
 #, c-format
 msgid "# %s %.2f %.2f\n"
 msgstr ""
 
-#: gcc.c:3586
+#: gcc.c:3735
 #, c-format
 msgid "Usage: %s [options] file...\n"
 msgstr ""
 
-#: gcc.c:3587
+#: gcc.c:3736
 msgid "Options:\n"
 msgstr ""
 
-#: gcc.c:3589
+#: gcc.c:3738
 msgid "  -pass-exit-codes         Exit with highest error code from a phase.\n"
 msgstr ""
 
-#: gcc.c:3590
+#: gcc.c:3739
 msgid "  --help                   Display this information.\n"
 msgstr ""
 
-#: gcc.c:3591
+#: gcc.c:3740
 msgid ""
 "  --target-help            Display target specific command line options.\n"
 msgstr ""
 
-#: gcc.c:3592
+#: gcc.c:3741
 msgid ""
 "  --help={common|optimizers|params|target|warnings|[^]{joined|separate|"
 "undocumented}}[,...].\n"
 msgstr ""
 
-#: gcc.c:3593
+#: gcc.c:3742
 msgid ""
 "                           Display specific types of command line options.\n"
 msgstr ""
 
-#: gcc.c:3595
+#: gcc.c:3744
 msgid "  (Use '-v --help' to display command line options of sub-processes).\n"
 msgstr ""
 
-#: gcc.c:3596
+#: gcc.c:3745
 msgid "  --version                Display compiler version information.\n"
 msgstr ""
 
-#: gcc.c:3597
+#: gcc.c:3746
 msgid "  -dumpspecs               Display all of the built in spec strings.\n"
 msgstr ""
 
-#: gcc.c:3598
+#: gcc.c:3747
 msgid "  -dumpversion             Display the version of the compiler.\n"
 msgstr ""
 
-#: gcc.c:3599
+#: gcc.c:3748
 msgid "  -dumpmachine             Display the compiler's target processor.\n"
 msgstr ""
 
-#: gcc.c:3600
+#: gcc.c:3749
 msgid ""
 "  -print-search-dirs       Display the directories in the compiler's search "
 "path.\n"
 msgstr ""
 
-#: gcc.c:3601
+#: gcc.c:3750
 msgid ""
 "  -print-libgcc-file-name  Display the name of the compiler's companion "
 "library.\n"
 msgstr ""
 
-#: gcc.c:3602
+#: gcc.c:3751
 msgid "  -print-file-name=<lib>   Display the full path to library <lib>.\n"
 msgstr ""
 
-#: gcc.c:3603
+#: gcc.c:3752
 msgid ""
 "  -print-prog-name=<prog>  Display the full path to compiler component "
 "<prog>.\n"
 msgstr ""
 
-#: gcc.c:3604
+#: gcc.c:3753
 msgid ""
 "  -print-multiarch         Display the target's normalized GNU triplet, used "
 "as\n"
 "                           a component in the library path.\n"
 msgstr ""
 
-#: gcc.c:3607
+#: gcc.c:3756
 msgid ""
 "  -print-multi-directory   Display the root directory for versions of "
 "libgcc.\n"
 msgstr ""
 
-#: gcc.c:3608
+#: gcc.c:3757
 msgid ""
 "  -print-multi-lib         Display the mapping between command line options "
 "and\n"
 "                           multiple library search directories.\n"
 msgstr ""
 
-#: gcc.c:3611
+#: gcc.c:3760
 msgid ""
 "  -print-multi-os-directory Display the relative path to OS libraries.\n"
 msgstr ""
 
-#: gcc.c:3612
+#: gcc.c:3761
 msgid "  -print-sysroot           Display the target libraries directory.\n"
 msgstr ""
 
-#: gcc.c:3613
+#: gcc.c:3762
 msgid ""
 "  -print-sysroot-headers-suffix Display the sysroot suffix used to find "
 "headers.\n"
 msgstr ""
 
-#: gcc.c:3614
+#: gcc.c:3763
 msgid ""
 "  -Wa,<options>            Pass comma-separated <options> on to the "
 "assembler.\n"
 msgstr ""
 
-#: gcc.c:3615
+#: gcc.c:3764
 msgid ""
 "  -Wp,<options>            Pass comma-separated <options> on to the "
 "preprocessor.\n"
 msgstr ""
 
-#: gcc.c:3616
+#: gcc.c:3765
 msgid ""
 "  -Wl,<options>            Pass comma-separated <options> on to the linker.\n"
 msgstr ""
 
-#: gcc.c:3617
+#: gcc.c:3766
 msgid "  -Xassembler <arg>        Pass <arg> on to the assembler.\n"
 msgstr ""
 
-#: gcc.c:3618
+#: gcc.c:3767
 msgid "  -Xpreprocessor <arg>     Pass <arg> on to the preprocessor.\n"
 msgstr ""
 
-#: gcc.c:3619
+#: gcc.c:3768
 msgid "  -Xlinker <arg>           Pass <arg> on to the linker.\n"
 msgstr ""
 
-#: gcc.c:3620
+#: gcc.c:3769
 msgid "  -save-temps              Do not delete intermediate files.\n"
 msgstr ""
 
-#: gcc.c:3621
+#: gcc.c:3770
 msgid "  -save-temps=<arg>        Do not delete intermediate files.\n"
 msgstr ""
 
-#: gcc.c:3622
+#: gcc.c:3771
 msgid ""
 "  -no-canonical-prefixes   Do not canonicalize paths when building relative\n"
 "                           prefixes to other gcc components.\n"
 msgstr ""
 
-#: gcc.c:3625
+#: gcc.c:3774
 msgid "  -pipe                    Use pipes rather than intermediate files.\n"
 msgstr ""
 
-#: gcc.c:3626
+#: gcc.c:3775
 msgid "  -time                    Time the execution of each subprocess.\n"
 msgstr ""
 
-#: gcc.c:3627
+#: gcc.c:3776
 msgid ""
 "  -specs=<file>            Override built-in specs with the contents of "
 "<file>.\n"
 msgstr ""
 
-#: gcc.c:3628
+#: gcc.c:3777
 msgid ""
 "  -std=<standard>          Assume that the input sources are for "
 "<standard>.\n"
 msgstr ""
 
-#: gcc.c:3629
+#: gcc.c:3778
 msgid ""
 "  --sysroot=<directory>    Use <directory> as the root directory for "
 "headers\n"
 "                           and libraries.\n"
 msgstr ""
 
-#: gcc.c:3632
+#: gcc.c:3781
 msgid ""
 "  -B <directory>           Add <directory> to the compiler's search paths.\n"
 msgstr ""
 
-#: gcc.c:3633
+#: gcc.c:3782
 msgid ""
 "  -v                       Display the programs invoked by the compiler.\n"
 msgstr ""
 
-#: gcc.c:3634
+#: gcc.c:3783
 msgid ""
 "  -###                     Like -v but options quoted and commands not "
 "executed.\n"
 msgstr ""
 
-#: gcc.c:3635
+#: gcc.c:3784
 msgid ""
 "  -E                       Preprocess only; do not compile, assemble or "
 "link.\n"
 msgstr ""
 
-#: gcc.c:3636
+#: gcc.c:3785
 msgid "  -S                       Compile only; do not assemble or link.\n"
 msgstr ""
 
-#: gcc.c:3637
+#: gcc.c:3786
 msgid "  -c                       Compile and assemble, but do not link.\n"
 msgstr ""
 
-#: gcc.c:3638
+#: gcc.c:3787
 msgid "  -o <file>                Place the output into <file>.\n"
 msgstr ""
 
-#: gcc.c:3639
+#: gcc.c:3788
 msgid ""
 "  -pie                     Create a dynamically linked position independent\n"
 "                           executable.\n"
 msgstr ""
 
-#: gcc.c:3641
+#: gcc.c:3790
 msgid "  -shared                  Create a shared library.\n"
 msgstr ""
 
-#: gcc.c:3642
+#: gcc.c:3791
 msgid ""
 "  -x <language>            Specify the language of the following input "
 "files.\n"
@@ -491,7 +519,7 @@ msgid ""
 "extension.\n"
 msgstr ""
 
-#: gcc.c:3649
+#: gcc.c:3798
 #, c-format
 msgid ""
 "\n"
@@ -500,96 +528,96 @@ msgid ""
 " other options on to these processes the -W<letter> options must be used.\n"
 msgstr ""
 
-#: gcc.c:6540
+#: gcc.c:6668
 #, c-format
 msgid "Processing spec (%s), which is '%s'\n"
 msgstr ""
 
-#: gcc.c:7301
+#: gcc.c:7429
 #, c-format
 msgid "Target: %s\n"
 msgstr ""
 
-#: gcc.c:7302
+#: gcc.c:7430
 #, c-format
 msgid "Configured with: %s\n"
 msgstr ""
 
-#: gcc.c:7316
+#: gcc.c:7444
 #, c-format
 msgid "Thread model: %s\n"
 msgstr ""
 
-#: gcc.c:7317
+#: gcc.c:7445
 #, c-format
 msgid "Supported LTO compression algorithms: zlib"
 msgstr ""
 
-#: gcc.c:7319
+#: gcc.c:7447
 #, c-format
 msgid " zstd"
 msgstr ""
 
-#: gcc.c:7321 gcov.c:1415 gcov.c:1471 gcov.c:1483 gcov.c:2822
+#: gcc.c:7449 gcov.c:1461 gcov.c:1519 gcov.c:1531 gcov.c:2872
 #, c-format
 msgid "\n"
 msgstr ""
 
-#: gcc.c:7332
+#: gcc.c:7460
 #, c-format
 msgid "gcc version %s %s\n"
 msgstr ""
 
-#: gcc.c:7335
+#: gcc.c:7463
 #, c-format
 msgid "gcc driver version %s %sexecuting gcc version %s\n"
 msgstr ""
 
-#: gcc.c:7408 gcc.c:7618
+#: gcc.c:7536 gcc.c:7746
 #, c-format
 msgid ""
 "The bug is not reproducible, so it is likely a hardware or OS problem.\n"
 msgstr ""
 
-#: gcc.c:7542
+#: gcc.c:7670
 #, c-format
 msgid ""
 "Preprocessed source stored into %s file, please attach this to your "
 "bugreport.\n"
 msgstr ""
 
-#: gcc.c:8392
+#: gcc.c:8520
 #, c-format
 msgid "install: %s%s\n"
 msgstr ""
 
-#: gcc.c:8395
+#: gcc.c:8523
 #, c-format
 msgid "programs: %s\n"
 msgstr ""
 
-#: gcc.c:8397
+#: gcc.c:8525
 #, c-format
 msgid "libraries: %s\n"
 msgstr ""
 
-#: gcc.c:8514
+#: gcc.c:8642
 #, c-format
 msgid ""
 "\n"
 "For bug reporting instructions, please see:\n"
 msgstr ""
 
-#: gcc.c:8530 gcov-tool.c:527
+#: gcc.c:8658 gcov-tool.c:527
 #, c-format
 msgid "%s %s%s\n"
 msgstr ""
 
-#: gcc.c:8533 gcov-tool.c:529 gcov.c:934 fortran/gfortranspec.c:282
+#: gcc.c:8661 gcov-tool.c:529 gcov.c:967 fortran/gfortranspec.c:282
 msgid "(C)"
 msgstr ""
 
-#: gcc.c:8534 gcov-tool.c:531 gcov.c:936 fortran/gfortranspec.c:283
+#: gcc.c:8662 gcov-tool.c:531 gcov.c:969 fortran/gfortranspec.c:283
 #, c-format
 msgid ""
 "This is free software; see the source for copying conditions.  There is NO\n"
@@ -597,7 +625,7 @@ msgid ""
 "\n"
 msgstr ""
 
-#: gcc.c:8877
+#: gcc.c:9005
 #, c-format
 msgid ""
 "\n"
@@ -606,14 +634,14 @@ msgid ""
 "\n"
 msgstr ""
 
-#: gcc.c:8878
+#: gcc.c:9006
 #, c-format
 msgid ""
 "Use \"-Wl,OPTION\" to pass \"OPTION\" to the linker.\n"
 "\n"
 msgstr ""
 
-#: gcc.c:10233
+#: gcc.c:10421
 #, c-format
 msgid ""
 "Assembler options\n"
@@ -621,7 +649,7 @@ msgid ""
 "\n"
 msgstr ""
 
-#: gcc.c:10234
+#: gcc.c:10422
 #, c-format
 msgid ""
 "Use \"-Wa,OPTION\" to pass \"OPTION\" to the assembler.\n"
@@ -753,7 +781,7 @@ msgid ""
 "  -v, --version                         Print version number, then exit\n"
 msgstr ""
 
-#: gcov-tool.c:517 gcov.c:922
+#: gcov-tool.c:517 gcov.c:955
 #, c-format
 msgid ""
 "\n"
@@ -763,374 +791,379 @@ msgstr ""
 
 #: gcov-tool.c:528
 #, c-format
-msgid "Copyright %s 2020 Free Software Foundation, Inc.\n"
+msgid "Copyright %s 2021 Free Software Foundation, Inc.\n"
 msgstr ""
 
-#: gcov.c:892
+#: gcov.c:924
 #, c-format
 msgid ""
 "Usage: gcov [OPTION...] SOURCE|OBJ...\n"
 "\n"
 msgstr ""
 
-#: gcov.c:893
+#: gcov.c:925
 #, c-format
 msgid ""
 "Print code coverage information.\n"
 "\n"
 msgstr ""
 
-#: gcov.c:894
+#: gcov.c:926
 #, c-format
 msgid ""
 "  -a, --all-blocks                Show information for every basic block\n"
 msgstr ""
 
-#: gcov.c:895
+#: gcov.c:927
 #, c-format
 msgid ""
 "  -b, --branch-probabilities      Include branch probabilities in output\n"
 msgstr ""
 
-#: gcov.c:896
+#: gcov.c:928
 #, c-format
 msgid ""
 "  -c, --branch-counts             Output counts of branches taken\n"
 "                                    rather than percentages\n"
 msgstr ""
 
-#: gcov.c:898
+#: gcov.c:930
 #, c-format
 msgid "  -d, --display-progress          Display progress information\n"
 msgstr ""
 
-#: gcov.c:899
+#: gcov.c:931
+#, c-format
+msgid "  -D, --debug\t\t\t    Display debugging dumps\n"
+msgstr ""
+
+#: gcov.c:932
 #, c-format
 msgid "  -f, --function-summaries        Output summaries for each function\n"
 msgstr ""
 
-#: gcov.c:900
+#: gcov.c:933
 #, c-format
 msgid "  -h, --help                      Print this help, then exit\n"
 msgstr ""
 
-#: gcov.c:901
+#: gcov.c:934
 #, c-format
 msgid ""
 "  -j, --json-format               Output JSON intermediate format\n"
 "                                    into .gcov.json.gz file\n"
 msgstr ""
 
-#: gcov.c:903
+#: gcov.c:936
 #, c-format
 msgid "  -H, --human-readable            Output human readable numbers\n"
 msgstr ""
 
-#: gcov.c:904
+#: gcov.c:937
 #, c-format
 msgid "  -k, --use-colors                Emit colored output\n"
 msgstr ""
 
-#: gcov.c:905
+#: gcov.c:938
 #, c-format
 msgid ""
 "  -l, --long-file-names           Use long output file names for included\n"
 "                                    source files\n"
 msgstr ""
 
-#: gcov.c:907
+#: gcov.c:940
 #, c-format
 msgid "  -m, --demangled-names           Output demangled function names\n"
 msgstr ""
 
-#: gcov.c:908
+#: gcov.c:941
 #, c-format
 msgid "  -n, --no-output                 Do not create an output file\n"
 msgstr ""
 
-#: gcov.c:909
+#: gcov.c:942
 #, c-format
 msgid ""
 "  -o, --object-directory DIR|FILE Search for object files in DIR or called "
 "FILE\n"
 msgstr ""
 
-#: gcov.c:910
+#: gcov.c:943
 #, c-format
 msgid "  -p, --preserve-paths            Preserve all pathname components\n"
 msgstr ""
 
-#: gcov.c:911
+#: gcov.c:944
 #, c-format
 msgid ""
 "  -q, --use-hotness-colors        Emit perf-like colored output for hot "
 "lines\n"
 msgstr ""
 
-#: gcov.c:912
+#: gcov.c:945
 #, c-format
 msgid "  -r, --relative-only             Only show data for relative sources\n"
 msgstr ""
 
-#: gcov.c:913
+#: gcov.c:946
 #, c-format
 msgid "  -s, --source-prefix DIR         Source prefix to elide\n"
 msgstr ""
 
-#: gcov.c:914
+#: gcov.c:947
 #, c-format
 msgid "  -t, --stdout                    Output to stdout instead of a file\n"
 msgstr ""
 
-#: gcov.c:915
+#: gcov.c:948
 #, c-format
 msgid ""
 "  -u, --unconditional-branches    Show unconditional branch counts too\n"
 msgstr ""
 
-#: gcov.c:916
+#: gcov.c:949
 #, c-format
 msgid "  -v, --version                   Print version number, then exit\n"
 msgstr ""
 
-#: gcov.c:917
+#: gcov.c:950
 #, c-format
 msgid "  -w, --verbose                   Print verbose informations\n"
 msgstr ""
 
-#: gcov.c:918
+#: gcov.c:951
 #, c-format
 msgid "  -x, --hash-filenames            Hash long pathnames\n"
 msgstr ""
 
-#: gcov.c:919
+#: gcov.c:952
 #, c-format
 msgid ""
 "\n"
 "Obsolete options:\n"
 msgstr ""
 
-#: gcov.c:920
+#: gcov.c:953
 #, c-format
 msgid "  -i, --json-format               Replaced with -j, --json-format\n"
 msgstr ""
 
-#: gcov.c:921
+#: gcov.c:954
 #, c-format
 msgid "  -j, --human-readable            Replaced with -H, --human-readable\n"
 msgstr ""
 
-#: gcov.c:932
+#: gcov.c:965
 #, c-format
 msgid "gcov %s%s\n"
 msgstr ""
 
-#: gcov.c:1266
+#: gcov.c:1312
 #, c-format
 msgid "'%s' file is already processed\n"
 msgstr ""
 
-#: gcov.c:1380
+#: gcov.c:1426
 #, c-format
 msgid "Creating '%s'\n"
 msgstr ""
 
-#: gcov.c:1383
+#: gcov.c:1429
 #, c-format
 msgid "Error writing output file '%s'\n"
 msgstr ""
 
-#: gcov.c:1388
+#: gcov.c:1434
 #, c-format
 msgid "Could not open output file '%s'\n"
 msgstr ""
 
-#: gcov.c:1393
+#: gcov.c:1439
 #, c-format
 msgid "Removing '%s'\n"
 msgstr ""
 
-#: gcov.c:1505
+#: gcov.c:1553
 #, c-format
 msgid "Cannot open JSON output file %s\n"
 msgstr ""
 
-#: gcov.c:1513
+#: gcov.c:1561
 #, c-format
 msgid "Error writing JSON output file %s\n"
 msgstr ""
 
-#: gcov.c:1677
+#: gcov.c:1725
 #, c-format
 msgid "%s:source file is newer than notes file '%s'\n"
 msgstr ""
 
-#: gcov.c:1682
+#: gcov.c:1730
 #, c-format
 msgid "(the message is displayed only once per source file)\n"
 msgstr ""
 
-#: gcov.c:1702
+#: gcov.c:1750
 #, c-format
 msgid "%s:cannot open notes file\n"
 msgstr ""
 
-#: gcov.c:1708
+#: gcov.c:1756
 #, c-format
 msgid "%s:not a gcov notes file\n"
 msgstr ""
 
-#: gcov.c:1721
+#: gcov.c:1769
 #, c-format
 msgid "%s:version '%.4s', prefer '%.4s'\n"
 msgstr ""
 
-#: gcov.c:1771
+#: gcov.c:1819
 #, c-format
 msgid "%s:already seen blocks for '%s'\n"
 msgstr ""
 
-#: gcov.c:1885 gcov.c:1992
+#: gcov.c:1935 gcov.c:2042
 #, c-format
 msgid "%s:corrupted\n"
 msgstr ""
 
-#: gcov.c:1892
+#: gcov.c:1942
 #, c-format
 msgid "%s:no functions found\n"
 msgstr ""
 
-#: gcov.c:1910
+#: gcov.c:1960
 #, c-format
 msgid "%s:cannot open data file, assuming not executed\n"
 msgstr ""
 
-#: gcov.c:1917
+#: gcov.c:1967
 #, c-format
 msgid "%s:not a gcov data file\n"
 msgstr ""
 
-#: gcov.c:1930
+#: gcov.c:1980
 #, c-format
 msgid "%s:version '%.4s', prefer version '%.4s'\n"
 msgstr ""
 
-#: gcov.c:1936
+#: gcov.c:1986
 #, c-format
 msgid "%s:stamp mismatch with notes file\n"
 msgstr ""
 
-#: gcov.c:1968
+#: gcov.c:2019
 #, c-format
 msgid "%s:profile mismatch for '%s'\n"
 msgstr ""
 
-#: gcov.c:1991
+#: gcov.c:2041
 #, c-format
 msgid "%s:overflowed\n"
 msgstr ""
 
-#: gcov.c:2038
+#: gcov.c:2088
 #, c-format
 msgid "%s:'%s' lacks entry and/or exit blocks\n"
 msgstr ""
 
-#: gcov.c:2043
+#: gcov.c:2093
 #, c-format
 msgid "%s:'%s' has arcs to entry block\n"
 msgstr ""
 
-#: gcov.c:2051
+#: gcov.c:2101
 #, c-format
 msgid "%s:'%s' has arcs from exit block\n"
 msgstr ""
 
-#: gcov.c:2260
+#: gcov.c:2310
 #, c-format
 msgid "%s:graph is unsolvable for '%s'\n"
 msgstr ""
 
-#: gcov.c:2376
+#: gcov.c:2426
 #, c-format
 msgid "Lines executed:%s of %d\n"
 msgstr ""
 
-#: gcov.c:2379
+#: gcov.c:2429
 #, c-format
 msgid "No executable lines\n"
 msgstr ""
 
-#: gcov.c:2387 gcov.c:2396
+#: gcov.c:2437 gcov.c:2446
 #, c-format
 msgid "%s '%s'\n"
 msgstr ""
 
-#: gcov.c:2403
+#: gcov.c:2453
 #, c-format
 msgid "Branches executed:%s of %d\n"
 msgstr ""
 
-#: gcov.c:2407
+#: gcov.c:2457
 #, c-format
 msgid "Taken at least once:%s of %d\n"
 msgstr ""
 
-#: gcov.c:2413
+#: gcov.c:2463
 #, c-format
 msgid "No branches\n"
 msgstr ""
 
-#: gcov.c:2415
+#: gcov.c:2465
 #, c-format
 msgid "Calls executed:%s of %d\n"
 msgstr ""
 
-#: gcov.c:2419
+#: gcov.c:2469
 #, c-format
 msgid "No calls\n"
 msgstr ""
 
-#: gcov.c:2676
+#: gcov.c:2726
 #, c-format
 msgid "%s:no lines for '%s'\n"
 msgstr ""
 
-#: gcov.c:2802
+#: gcov.c:2852
 #, c-format
 msgid "call   %2d returned %s\n"
 msgstr ""
 
-#: gcov.c:2807
+#: gcov.c:2857
 #, c-format
 msgid "call   %2d never executed\n"
 msgstr ""
 
-#: gcov.c:2812
+#: gcov.c:2862
 #, c-format
 msgid "branch %2d taken %s%s"
 msgstr ""
 
-#: gcov.c:2817
+#: gcov.c:2867
 #, c-format
 msgid "branch %2d never executed"
 msgstr ""
 
-#: gcov.c:2820
+#: gcov.c:2870
 #, c-format
 msgid " (BB %d)"
 msgstr ""
 
-#: gcov.c:2827
+#: gcov.c:2877
 #, c-format
 msgid "unconditional %2d taken %s\n"
 msgstr ""
 
-#: gcov.c:2830
+#: gcov.c:2880
 #, c-format
 msgid "unconditional %2d never executed\n"
 msgstr ""
 
-#: gcov.c:3083
+#: gcov.c:3133
 #, c-format
 msgid "Cannot open source file %s\n"
 msgstr ""
@@ -1158,17 +1191,17 @@ msgstr ""
 msgid "ignoring nonexistent directory \"%s\"\n"
 msgstr ""
 
-#: incpath.c:385
+#: incpath.c:387
 #, c-format
 msgid "#include \"...\" search starts here:\n"
 msgstr ""
 
-#: incpath.c:389
+#: incpath.c:391
 #, c-format
 msgid "#include <...> search starts here:\n"
 msgstr ""
 
-#: incpath.c:394
+#: incpath.c:396
 #, c-format
 msgid "End of search list.\n"
 msgstr ""
@@ -1183,183 +1216,183 @@ msgstr ""
 msgid "'"
 msgstr ""
 
-#: langhooks.c:382
+#: langhooks.c:384
 msgid "At top level:"
 msgstr ""
 
-#: langhooks.c:398 cp/error.c:3487
+#: langhooks.c:400 cp/error.c:3566
 #, c-format
 msgid "In member function %qs"
 msgstr ""
 
-#: langhooks.c:402 cp/error.c:3490
+#: langhooks.c:404 cp/error.c:3569
 #, c-format
 msgid "In function %qs"
 msgstr ""
 
-#: langhooks.c:447 cp/error.c:3440
+#: langhooks.c:449 cp/error.c:3519
 msgid "    inlined from %qs at %r%s:%d:%d%R"
 msgstr ""
 
-#: langhooks.c:452 cp/error.c:3445
+#: langhooks.c:454 cp/error.c:3524
 msgid "    inlined from %qs at %r%s:%d%R"
 msgstr ""
 
-#: langhooks.c:458 cp/error.c:3451
+#: langhooks.c:460 cp/error.c:3530
 #, c-format
 msgid "    inlined from %qs"
 msgstr ""
 
-#: lra-assigns.c:1841 reload1.c:2073
+#: lra-assigns.c:1837 reload1.c:2073
 msgid "this is the insn:"
 msgstr ""
 
-#: lra-constraints.c:3021
+#: lra-constraints.c:3113
 msgid "unable to generate reloads for impossible constraints:"
 msgstr ""
 
-#: lra-constraints.c:4012 reload.c:3814
+#: lra-constraints.c:4108 reload.c:3862
 msgid "unable to generate reloads for:"
 msgstr ""
 
 #. What to print when a switch has no documentation.
-#: opts.c:187
+#: opts.c:188
 msgid "This option lacks documentation."
 msgstr ""
 
-#: opts.c:188
+#: opts.c:189
 msgid "Uses of this option are diagnosed."
 msgstr ""
 
-#: opts.c:1307
+#: opts.c:1372
 #, c-format
 msgid "Same as %s%s (or, in negated form, %s%s)."
 msgstr ""
 
-#: opts.c:1312
+#: opts.c:1377
 #, c-format
 msgid "Same as %s%s."
 msgstr ""
 
-#: opts.c:1317
+#: opts.c:1382
 #, c-format
 msgid "Same as %s."
 msgstr ""
 
-#: opts.c:1325
+#: opts.c:1390
 #, c-format
 msgid "%s  Same as %s."
 msgstr ""
 
-#: opts.c:1388
+#: opts.c:1453
 msgid "[available in "
 msgstr ""
 
-#: opts.c:1420
+#: opts.c:1485
 msgid "[default]"
 msgstr ""
 
-#: opts.c:1429
+#: opts.c:1494
 #, c-format
 msgid "%llu bytes"
 msgstr ""
 
-#: opts.c:1466
+#: opts.c:1531
 msgid "[enabled]"
 msgstr ""
 
-#: opts.c:1468
+#: opts.c:1533
 msgid "[disabled]"
 msgstr ""
 
-#: opts.c:1504
+#: opts.c:1569
 #, c-format
 msgid " No options with the desired characteristics were found\n"
 msgstr ""
 
-#: opts.c:1513
+#: opts.c:1578
 #, c-format
 msgid ""
 " None found.  Use --help=%s to show *all* the options supported by the %s "
 "front-end.\n"
 msgstr ""
 
-#: opts.c:1519
+#: opts.c:1584
 #, c-format
 msgid ""
 " All options with the desired characteristics have already been displayed\n"
 msgstr ""
 
-#: opts.c:1564
+#: opts.c:1629
 #, c-format
 msgid ""
 "  Known valid arguments for %s option:\n"
 "   "
 msgstr ""
 
-#: opts.c:1614
+#: opts.c:1679
 msgid "The following options are target specific"
 msgstr ""
 
-#: opts.c:1617
+#: opts.c:1682
 msgid "The following options control compiler warning messages"
 msgstr ""
 
-#: opts.c:1620
+#: opts.c:1685
 msgid "The following options control optimizations"
 msgstr ""
 
-#: opts.c:1623 opts.c:1663
+#: opts.c:1688 opts.c:1728
 msgid "The following options are language-independent"
 msgstr ""
 
-#: opts.c:1626
+#: opts.c:1691
 msgid "The following options control parameters"
 msgstr ""
 
-#: opts.c:1632
+#: opts.c:1697
 msgid "The following options are specific to just the language "
 msgstr ""
 
-#: opts.c:1634
+#: opts.c:1699
 msgid "The following options are supported by the language "
 msgstr ""
 
-#: opts.c:1645
+#: opts.c:1710
 msgid "The following options are not documented"
 msgstr ""
 
-#: opts.c:1647
+#: opts.c:1712
 msgid "The following options take separate arguments"
 msgstr ""
 
-#: opts.c:1649
+#: opts.c:1714
 msgid "The following options take joined arguments"
 msgstr ""
 
-#: opts.c:1661
+#: opts.c:1726
 msgid "The following options are language-related"
 msgstr ""
 
-#: passes.c:1785
+#: passes.c:1832
 #, c-format
 msgid "during %s pass: %s\n"
 msgstr ""
 
-#: passes.c:1790
+#: passes.c:1837
 #, c-format
 msgid "dump file: %s\n"
 msgstr ""
 
-#: plugin.c:924
+#: plugin.c:926
 msgid "Event"
 msgstr ""
 
-#: plugin.c:924
+#: plugin.c:926
 msgid "Plugins"
 msgstr ""
 
-#: plugin.c:956
+#: plugin.c:958
 #, c-format
 msgid ""
 "*** WARNING *** there are active plugins, do not report this as a bug unless "
@@ -1392,20 +1425,20 @@ msgstr ""
 msgid "insn does not satisfy its constraints:"
 msgstr ""
 
-#: targhooks.c:2032
+#: targhooks.c:2075
 #, c-format
 msgid "created and used with differing settings of '%s'"
 msgstr ""
 
-#: targhooks.c:2047
+#: targhooks.c:2090
 msgid "created and used with different settings of %<-fpic%>"
 msgstr ""
 
-#: targhooks.c:2049
+#: targhooks.c:2092
 msgid "created and used with different settings of %<-fpie%>"
 msgstr ""
 
-#: toplev.c:324
+#: toplev.c:323
 #, c-format
 msgid "unrecoverable error"
 msgstr ""
@@ -1438,16 +1471,8 @@ msgid ""
 "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
 msgstr ""
 
-#: toplev.c:790
-msgid "options passed: "
-msgstr ""
-
-#: toplev.c:818
-msgid "options enabled: "
-msgstr ""
-
-#: tree-diagnostic.c:299 c/c-decl.c:5782 c/c-typeck.c:7701 cp/error.c:1075
-#: tree-diagnostic-path.cc:261 c-family/c-pretty-print.c:417
+#: tree-diagnostic.c:299 c/c-decl.c:6025 c/c-typeck.c:7780 cp/error.c:1113
+#: tree-diagnostic-path.cc:257 c-family/c-pretty-print.c:424
 #, gcc-internal-format
 msgid "<anonymous>"
 msgstr ""
@@ -1631,59 +1656,59 @@ msgstr ""
 msgid "field precision specifier"
 msgstr ""
 
-#: c-family/c-format.c:559 c-family/c-format.c:583 config/i386/msformat-c.c:44
+#: c-family/c-format.c:559 c-family/c-format.c:583 config/i386/msformat-c.c:45
 msgid "' ' flag"
 msgstr ""
 
-#: c-family/c-format.c:559 c-family/c-format.c:583 config/i386/msformat-c.c:44
+#: c-family/c-format.c:559 c-family/c-format.c:583 config/i386/msformat-c.c:45
 msgid "the ' ' printf flag"
 msgstr ""
 
 #: c-family/c-format.c:560 c-family/c-format.c:584 c-family/c-format.c:615
-#: c-family/c-format.c:681 config/i386/msformat-c.c:45
+#: c-family/c-format.c:681 config/i386/msformat-c.c:46
 msgid "'+' flag"
 msgstr ""
 
 #: c-family/c-format.c:560 c-family/c-format.c:584 c-family/c-format.c:615
-#: config/i386/msformat-c.c:45
+#: config/i386/msformat-c.c:46
 msgid "the '+' printf flag"
 msgstr ""
 
 #: c-family/c-format.c:561 c-family/c-format.c:585 c-family/c-format.c:616
-#: c-family/c-format.c:656 config/i386/msformat-c.c:46
-#: config/i386/msformat-c.c:81
+#: c-family/c-format.c:656 config/i386/msformat-c.c:47
+#: config/i386/msformat-c.c:82
 msgid "'#' flag"
 msgstr ""
 
 #: c-family/c-format.c:561 c-family/c-format.c:585 c-family/c-format.c:616
-#: config/i386/msformat-c.c:46
+#: config/i386/msformat-c.c:47
 msgid "the '#' printf flag"
 msgstr ""
 
 #: c-family/c-format.c:562 c-family/c-format.c:586 c-family/c-format.c:654
-#: config/i386/msformat-c.c:47
+#: config/i386/msformat-c.c:48
 msgid "'0' flag"
 msgstr ""
 
-#: c-family/c-format.c:562 c-family/c-format.c:586 config/i386/msformat-c.c:47
+#: c-family/c-format.c:562 c-family/c-format.c:586 config/i386/msformat-c.c:48
 msgid "the '0' printf flag"
 msgstr ""
 
 #: c-family/c-format.c:563 c-family/c-format.c:587 c-family/c-format.c:653
-#: c-family/c-format.c:684 config/i386/msformat-c.c:48
+#: c-family/c-format.c:684 config/i386/msformat-c.c:49
 msgid "'-' flag"
 msgstr ""
 
-#: c-family/c-format.c:563 c-family/c-format.c:587 config/i386/msformat-c.c:48
+#: c-family/c-format.c:563 c-family/c-format.c:587 config/i386/msformat-c.c:49
 msgid "the '-' printf flag"
 msgstr ""
 
-#: c-family/c-format.c:564 c-family/c-format.c:636 config/i386/msformat-c.c:49
-#: config/i386/msformat-c.c:69
+#: c-family/c-format.c:564 c-family/c-format.c:636 config/i386/msformat-c.c:50
+#: config/i386/msformat-c.c:70
 msgid "''' flag"
 msgstr ""
 
-#: c-family/c-format.c:564 config/i386/msformat-c.c:49
+#: c-family/c-format.c:564 config/i386/msformat-c.c:50
 msgid "the ''' printf flag"
 msgstr ""
 
@@ -1697,33 +1722,33 @@ msgstr ""
 
 #: c-family/c-format.c:566 c-family/c-format.c:588 c-family/c-format.c:634
 #: c-family/c-format.c:657 c-family/c-format.c:685 config/sol2-c.c:43
-#: config/i386/msformat-c.c:50 config/i386/msformat-c.c:67
+#: config/i386/msformat-c.c:51 config/i386/msformat-c.c:68
 msgid "field width"
 msgstr ""
 
 #: c-family/c-format.c:566 c-family/c-format.c:588 config/sol2-c.c:43
-#: config/i386/msformat-c.c:50
+#: config/i386/msformat-c.c:51
 msgid "field width in printf format"
 msgstr ""
 
 #: c-family/c-format.c:567 c-family/c-format.c:589 c-family/c-format.c:618
-#: config/i386/msformat-c.c:51
+#: config/i386/msformat-c.c:52
 msgid "precision"
 msgstr ""
 
 #: c-family/c-format.c:567 c-family/c-format.c:589 c-family/c-format.c:618
-#: config/i386/msformat-c.c:51
+#: config/i386/msformat-c.c:52
 msgid "precision in printf format"
 msgstr ""
 
 #: c-family/c-format.c:568 c-family/c-format.c:590 c-family/c-format.c:619
 #: c-family/c-format.c:635 c-family/c-format.c:688 config/sol2-c.c:44
-#: config/i386/msformat-c.c:52 config/i386/msformat-c.c:68
+#: config/i386/msformat-c.c:53 config/i386/msformat-c.c:69
 msgid "length modifier"
 msgstr ""
 
 #: c-family/c-format.c:568 c-family/c-format.c:590 c-family/c-format.c:619
-#: config/sol2-c.c:44 config/i386/msformat-c.c:52
+#: config/sol2-c.c:44 config/i386/msformat-c.c:53
 msgid "length modifier in printf format"
 msgstr ""
 
@@ -1735,19 +1760,19 @@ msgstr ""
 msgid "the 'q' diagnostic flag"
 msgstr ""
 
-#: c-family/c-format.c:631 config/i386/msformat-c.c:65
+#: c-family/c-format.c:631 config/i386/msformat-c.c:66
 msgid "assignment suppression"
 msgstr ""
 
-#: c-family/c-format.c:631 config/i386/msformat-c.c:65
+#: c-family/c-format.c:631 config/i386/msformat-c.c:66
 msgid "the assignment suppression scanf feature"
 msgstr ""
 
-#: c-family/c-format.c:632 config/i386/msformat-c.c:66
+#: c-family/c-format.c:632 config/i386/msformat-c.c:67
 msgid "'a' flag"
 msgstr ""
 
-#: c-family/c-format.c:632 config/i386/msformat-c.c:66
+#: c-family/c-format.c:632 config/i386/msformat-c.c:67
 msgid "the 'a' scanf flag"
 msgstr ""
 
@@ -1759,15 +1784,15 @@ msgstr ""
 msgid "the 'm' scanf flag"
 msgstr ""
 
-#: c-family/c-format.c:634 config/i386/msformat-c.c:67
+#: c-family/c-format.c:634 config/i386/msformat-c.c:68
 msgid "field width in scanf format"
 msgstr ""
 
-#: c-family/c-format.c:635 config/i386/msformat-c.c:68
+#: c-family/c-format.c:635 config/i386/msformat-c.c:69
 msgid "length modifier in scanf format"
 msgstr ""
 
-#: c-family/c-format.c:636 config/i386/msformat-c.c:69
+#: c-family/c-format.c:636 config/i386/msformat-c.c:70
 msgid "the ''' scanf flag"
 msgstr ""
 
@@ -1799,7 +1824,7 @@ msgstr ""
 msgid "the '^' strftime flag"
 msgstr ""
 
-#: c-family/c-format.c:656 config/i386/msformat-c.c:81
+#: c-family/c-format.c:656 config/i386/msformat-c.c:82
 msgid "the '#' strftime flag"
 msgstr ""
 
@@ -1888,87 +1913,87 @@ msgid "length modifier in strfmon format"
 msgstr ""
 
 #. Handle deferred options from command-line.
-#: c-family/c-opts.c:1452 fortran/cpp.c:590
+#: c-family/c-opts.c:1482 fortran/cpp.c:592
 msgid "<command-line>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:10009
+#: config/aarch64/aarch64.c:10256
 #, c-format
 msgid "unsupported operand for code '%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.c:10018 config/aarch64/aarch64.c:10031
-#: config/aarch64/aarch64.c:10043 config/aarch64/aarch64.c:10054
-#: config/aarch64/aarch64.c:10070 config/aarch64/aarch64.c:10084
-#: config/aarch64/aarch64.c:10104 config/aarch64/aarch64.c:10178
-#: config/aarch64/aarch64.c:10189 config/aarch64/aarch64.c:10203
-#: config/aarch64/aarch64.c:10425 config/aarch64/aarch64.c:10443
+#: config/aarch64/aarch64.c:10265 config/aarch64/aarch64.c:10278
+#: config/aarch64/aarch64.c:10290 config/aarch64/aarch64.c:10301
+#: config/aarch64/aarch64.c:10317 config/aarch64/aarch64.c:10331
+#: config/aarch64/aarch64.c:10351 config/aarch64/aarch64.c:10425
+#: config/aarch64/aarch64.c:10436 config/aarch64/aarch64.c:10450
+#: config/aarch64/aarch64.c:10672 config/aarch64/aarch64.c:10690
 #: config/pru/pru.c:1669 config/pru/pru.c:1679 config/pru/pru.c:1710
 #: config/pru/pru.c:1721 config/pru/pru.c:1793
 #, c-format
 msgid "invalid operand for '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.c:10122 config/aarch64/aarch64.c:10133
-#: config/aarch64/aarch64.c:10285 config/aarch64/aarch64.c:10296
+#: config/aarch64/aarch64.c:10369 config/aarch64/aarch64.c:10380
+#: config/aarch64/aarch64.c:10532 config/aarch64/aarch64.c:10543
 #, c-format
 msgid "invalid vector constant"
 msgstr ""
 
-#: config/aarch64/aarch64.c:10145 config/aarch64/aarch64.c:10157
+#: config/aarch64/aarch64.c:10392 config/aarch64/aarch64.c:10404
 #, c-format
 msgid "incompatible floating point / vector register operand for '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.c:10171
+#: config/aarch64/aarch64.c:10418
 #, c-format
 msgid "incompatible register operand for '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.c:10237 config/arm/arm.c:24256
+#: config/aarch64/aarch64.c:10484 config/arm/arm.c:24281
 #, c-format
 msgid "missing operand"
 msgstr ""
 
-#: config/aarch64/aarch64.c:10322
+#: config/aarch64/aarch64.c:10569
 #, c-format
 msgid "invalid constant"
 msgstr ""
 
-#: config/aarch64/aarch64.c:10325
+#: config/aarch64/aarch64.c:10572
 #, c-format
 msgid "invalid operand"
 msgstr ""
 
-#: config/aarch64/aarch64.c:10451 config/aarch64/aarch64.c:10456
+#: config/aarch64/aarch64.c:10698 config/aarch64/aarch64.c:10703
 #, c-format
 msgid "invalid operand prefix '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.c:10476
+#: config/aarch64/aarch64.c:10723
 #, c-format
 msgid "invalid address mode"
 msgstr ""
 
-#: config/aarch64/aarch64.c:23021 config/arm/arm.c:33216
+#: config/aarch64/aarch64.c:23521 config/arm/arm.c:33636
 msgid "invalid conversion from type %<bfloat16_t%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:23023 config/arm/arm.c:33218
+#: config/aarch64/aarch64.c:23523 config/arm/arm.c:33638
 msgid "invalid conversion to type %<bfloat16_t%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:23038 config/aarch64/aarch64.c:23054
-#: config/arm/arm.c:33233 config/arm/arm.c:33249
+#: config/aarch64/aarch64.c:23538 config/aarch64/aarch64.c:23554
+#: config/arm/arm.c:33653 config/arm/arm.c:33669
 msgid "operation not permitted on type %<bfloat16_t%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:23062
+#: config/aarch64/aarch64.c:23562
 msgid "cannot combine GNU and SVE vectors in a binary operation"
 msgstr ""
 
-#: config/alpha/alpha.c:5076 config/i386/i386.c:12938
-#: config/rs6000/rs6000.c:13446 config/sparc/sparc.c:9351
+#: config/alpha/alpha.c:5076 config/i386/i386.c:13215
+#: config/rs6000/rs6000.c:13975 config/sparc/sparc.c:9320
 #, c-format
 msgid "'%%&' used without any local dynamic TLS references"
 msgstr ""
@@ -1984,18 +2009,18 @@ msgid "invalid %%r value"
 msgstr ""
 
 #: config/alpha/alpha.c:5174 config/ia64/ia64.c:5531
-#: config/rs6000/rs6000.c:13140 config/xtensa/xtensa.c:2444
+#: config/rs6000/rs6000.c:13669 config/xtensa/xtensa.c:2459
 #, c-format
 msgid "invalid %%R value"
 msgstr ""
 
-#: config/alpha/alpha.c:5180 config/rs6000/rs6000.c:13060
-#: config/xtensa/xtensa.c:2411
+#: config/alpha/alpha.c:5180 config/rs6000/rs6000.c:13589
+#: config/xtensa/xtensa.c:2426
 #, c-format
 msgid "invalid %%N value"
 msgstr ""
 
-#: config/alpha/alpha.c:5188 config/rs6000/rs6000.c:13088
+#: config/alpha/alpha.c:5188 config/rs6000/rs6000.c:13617
 #, c-format
 msgid "invalid %%P value"
 msgstr ""
@@ -2005,7 +2030,7 @@ msgstr ""
 msgid "invalid %%h value"
 msgstr ""
 
-#: config/alpha/alpha.c:5204 config/xtensa/xtensa.c:2437
+#: config/alpha/alpha.c:5204 config/xtensa/xtensa.c:2452
 #, c-format
 msgid "invalid %%L value"
 msgstr ""
@@ -2025,7 +2050,7 @@ msgstr ""
 msgid "invalid %%U value"
 msgstr ""
 
-#: config/alpha/alpha.c:5274 config/rs6000/rs6000.c:13148
+#: config/alpha/alpha.c:5274 config/rs6000/rs6000.c:13677
 #, c-format
 msgid "invalid %%s value"
 msgstr ""
@@ -2035,7 +2060,7 @@ msgstr ""
 msgid "invalid %%C value"
 msgstr ""
 
-#: config/alpha/alpha.c:5322 config/rs6000/rs6000.c:12924
+#: config/alpha/alpha.c:5322 config/rs6000/rs6000.c:13453
 #, c-format
 msgid "invalid %%E value"
 msgstr ""
@@ -2045,10 +2070,10 @@ msgstr ""
 msgid "unknown relocation unspec"
 msgstr ""
 
-#: config/alpha/alpha.c:5356 config/cr16/cr16.c:1570 config/gcn/gcn.c:5764
-#: config/gcn/gcn.c:5773 config/gcn/gcn.c:5833 config/gcn/gcn.c:5841
-#: config/gcn/gcn.c:5857 config/gcn/gcn.c:5875 config/gcn/gcn.c:5926
-#: config/gcn/gcn.c:6045 config/gcn/gcn.c:6156 config/rs6000/rs6000.c:13451
+#: config/alpha/alpha.c:5356 config/cr16/cr16.c:1570 config/gcn/gcn.c:5796
+#: config/gcn/gcn.c:5805 config/gcn/gcn.c:5865 config/gcn/gcn.c:5873
+#: config/gcn/gcn.c:5889 config/gcn/gcn.c:5907 config/gcn/gcn.c:5958
+#: config/gcn/gcn.c:6077 config/gcn/gcn.c:6188 config/rs6000/rs6000.c:13980
 #, c-format
 msgid "invalid %%xn code"
 msgstr ""
@@ -2116,7 +2141,7 @@ msgstr ""
 #. Unknown flag.
 #. Undocumented flag.
 #: config/arc/arc.c:4949 config/epiphany/epiphany.c:1307
-#: config/m32r/m32r.c:2232 config/nds32/nds32.c:3517 config/sparc/sparc.c:9630
+#: config/m32r/m32r.c:2232 config/nds32/nds32.c:3517 config/sparc/sparc.c:9599
 #, c-format
 msgid "invalid operand output code"
 msgstr ""
@@ -2130,35 +2155,35 @@ msgstr ""
 msgid "unrecognized supposed constant"
 msgstr ""
 
-#: config/arm/arm.c:20631 config/arm/arm.c:20656 config/arm/arm.c:20666
-#: config/arm/arm.c:20675 config/arm/arm.c:20684
+#: config/arm/arm.c:20645 config/arm/arm.c:20670 config/arm/arm.c:20680
+#: config/arm/arm.c:20689 config/arm/arm.c:20698
 #, c-format
 msgid "invalid shift operand"
 msgstr ""
 
-#: config/arm/arm.c:23540 config/arm/arm.c:23558
+#: config/arm/arm.c:23554 config/arm/arm.c:23572
 #, c-format
 msgid "predicated Thumb instruction"
 msgstr ""
 
-#: config/arm/arm.c:23546
+#: config/arm/arm.c:23560
 #, c-format
 msgid "predicated instruction in conditional sequence"
 msgstr ""
 
-#: config/arm/arm.c:23664 config/arm/arm.c:23677 config/arm/arm.c:23702
-#: config/nios2/nios2.c:3086
+#: config/arm/arm.c:23678 config/arm/arm.c:23691 config/arm/arm.c:23716
+#: config/nios2/nios2.c:3079
 #, c-format
 msgid "Unsupported operand for code '%c'"
 msgstr ""
 
-#: config/arm/arm.c:23779 config/arm/arm.c:23801 config/arm/arm.c:23811
-#: config/arm/arm.c:23821 config/arm/arm.c:23831 config/arm/arm.c:23870
-#: config/arm/arm.c:23888 config/arm/arm.c:23913 config/arm/arm.c:23928
-#: config/arm/arm.c:23955 config/arm/arm.c:23962 config/arm/arm.c:23980
-#: config/arm/arm.c:23987 config/arm/arm.c:23995 config/arm/arm.c:24016
-#: config/arm/arm.c:24023 config/arm/arm.c:24203 config/arm/arm.c:24210
-#: config/arm/arm.c:24237 config/arm/arm.c:24244 config/bfin/bfin.c:1440
+#: config/arm/arm.c:23793 config/arm/arm.c:23815 config/arm/arm.c:23825
+#: config/arm/arm.c:23835 config/arm/arm.c:23845 config/arm/arm.c:23884
+#: config/arm/arm.c:23902 config/arm/arm.c:23927 config/arm/arm.c:23942
+#: config/arm/arm.c:23969 config/arm/arm.c:23976 config/arm/arm.c:23994
+#: config/arm/arm.c:24001 config/arm/arm.c:24009 config/arm/arm.c:24030
+#: config/arm/arm.c:24037 config/arm/arm.c:24228 config/arm/arm.c:24235
+#: config/arm/arm.c:24262 config/arm/arm.c:24269 config/bfin/bfin.c:1440
 #: config/bfin/bfin.c:1447 config/bfin/bfin.c:1454 config/bfin/bfin.c:1461
 #: config/bfin/bfin.c:1470 config/bfin/bfin.c:1477 config/bfin/bfin.c:1484
 #: config/bfin/bfin.c:1491 config/nds32/nds32.c:3543
@@ -2166,13 +2191,13 @@ msgstr ""
 msgid "invalid operand for code '%c'"
 msgstr ""
 
-#: config/arm/arm.c:23883
+#: config/arm/arm.c:23897
 #, c-format
 msgid "instruction never executed"
 msgstr ""
 
 #. Former Maverick support, removed after GCC-4.7.
-#: config/arm/arm.c:23904
+#: config/arm/arm.c:23918
 #, c-format
 msgid "obsolete Maverick format code '%c'"
 msgstr ""
@@ -2276,23 +2301,23 @@ msgstr ""
 msgid "invalid %%j value"
 msgstr ""
 
-#: config/bfin/bfin.c:1582 config/c6x/c6x.c:2277
+#: config/bfin/bfin.c:1582 config/c6x/c6x.c:2278
 #, c-format
 msgid "invalid const_double operand"
 msgstr ""
 
-#: config/bpf/bpf.c:762
+#: config/bpf/bpf.c:776
 msgid "invalid address in operand"
 msgstr ""
 
 #. Fallthrough.
-#: config/bpf/bpf.c:769
+#: config/bpf/bpf.c:783
 msgid "unsupported operand"
 msgstr ""
 
 #: config/cris/cris.c:775 config/ft32/ft32.c:110 config/moxie/moxie.c:108
-#: final.c:3607 final.c:3609 fold-const.c:266 gcc.c:5902 gcc.c:5916
-#: rtl-error.c:101 toplev.c:328 vr-values.c:2479 cp/typeck.c:6780
+#: final.c:3625 final.c:3627 fold-const.c:267 gcc.c:6030 gcc.c:6044
+#: rtl-error.c:101 toplev.c:327 vr-values.c:2370 cp/typeck.c:6920
 #: lto/lto-object.c:184 lto/lto-object.c:281 lto/lto-object.c:338
 #: lto/lto-object.c:362
 #, gcc-internal-format, gfc-internal-format
@@ -2499,133 +2524,128 @@ msgstr ""
 msgid "bad output_condmove_single operand"
 msgstr ""
 
-#: config/gcn/gcn.c:5434 config/gcn/gcn.c:5458 config/gcn/gcn.c:5462
-#: config/gcn/gcn.c:5806 config/gcn/gcn.c:5817 config/gcn/gcn.c:5820
+#: config/gcn/gcn.c:5466 config/gcn/gcn.c:5490 config/gcn/gcn.c:5494
+#: config/gcn/gcn.c:5838 config/gcn/gcn.c:5849 config/gcn/gcn.c:5852
 #, c-format
 msgid "bad ADDR_SPACE_GLOBAL address"
 msgstr ""
 
-#: config/gcn/gcn.c:5574 config/gcn/gcn.c:5597 config/gcn/gcn.c:5629
-#: config/gcn/gcn.c:5645 config/gcn/gcn.c:5660 config/gcn/gcn.c:5679
-#: config/gcn/gcn.c:5755 config/gcn/gcn.c:5951 config/gcn/gcn.c:6066
+#: config/gcn/gcn.c:5606 config/gcn/gcn.c:5629 config/gcn/gcn.c:5661
+#: config/gcn/gcn.c:5677 config/gcn/gcn.c:5692 config/gcn/gcn.c:5711
+#: config/gcn/gcn.c:5787 config/gcn/gcn.c:5983 config/gcn/gcn.c:6098
 #, c-format
 msgid "invalid operand %%xn code"
 msgstr ""
 
-#: config/gcn/gcn.c:6054
+#: config/gcn/gcn.c:6086
 #, c-format
 msgid "operand %%xn code invalid for QImode"
 msgstr ""
 
-#: config/gcn/gcn.c:6136
+#: config/gcn/gcn.c:6168
 #, c-format
 msgid "invalid fp constant"
 msgstr ""
 
-#: config/h8300/h8300.c:1545 config/h8300/h8300.c:1553
-#: config/h8300/h8300.c:1561 config/h8300/h8300.c:1569
-#: config/h8300/h8300.c:1577 config/h8300/h8300.c:1585
+#: config/h8300/h8300.c:1565 config/h8300/h8300.c:1573
+#: config/h8300/h8300.c:1581 config/h8300/h8300.c:1589
+#: config/h8300/h8300.c:1597 config/h8300/h8300.c:1605
 #, c-format
 msgid "Expected register or constant integer."
 msgstr ""
 
-#: config/i386/i386.c:11729
+#: config/i386/i386.c:12041
 #, c-format
 msgid "invalid UNSPEC as operand"
 msgstr ""
 
-#: config/i386/i386.c:12268
+#: config/i386/i386.c:12580
 #, c-format
 msgid "invalid use of register '%s'"
 msgstr ""
 
-#: config/i386/i386.c:12273
+#: config/i386/i386.c:12585
 #, c-format
 msgid "invalid use of asm flag output"
 msgstr ""
 
-#: config/i386/i386.c:12506
+#: config/i386/i386.c:12817
 #, c-format
 msgid "invalid operand size for operand code 'O'"
 msgstr ""
 
-#: config/i386/i386.c:12541
+#: config/i386/i386.c:12852
 #, c-format
 msgid "invalid operand size for operand code 'z'"
 msgstr ""
 
-#: config/i386/i386.c:12610
+#: config/i386/i386.c:12921
 #, c-format
 msgid "invalid operand type used with operand code 'Z'"
 msgstr ""
 
-#: config/i386/i386.c:12615
+#: config/i386/i386.c:12926
 #, c-format
 msgid "invalid operand size for operand code 'Z'"
 msgstr ""
 
-#: config/i386/i386.c:12670
-#, c-format
-msgid "operand is not a condition code, invalid operand code 'I'"
-msgstr ""
-
-#: config/i386/i386.c:12726
+#: config/i386/i386.c:13003
 #, c-format
 msgid "operand is not a condition code, invalid operand code 'Y'"
 msgstr ""
 
-#: config/i386/i386.c:12805
+#: config/i386/i386.c:13082
 #, c-format
 msgid "operand is not a condition code, invalid operand code 'D'"
 msgstr ""
 
-#: config/i386/i386.c:12823
+#: config/i386/i386.c:13100
 #, c-format
 msgid "operand is not a condition code, invalid operand code '%c'"
 msgstr ""
 
-#: config/i386/i386.c:12836
+#: config/i386/i386.c:13113
 #, c-format
 msgid ""
 "operand is not an offsettable memory reference, invalid operand code 'H'"
 msgstr ""
 
-#: config/i386/i386.c:12851
+#: config/i386/i386.c:13128
 #, c-format
 msgid "operand is not an integer, invalid operand code 'K'"
 msgstr ""
 
-#: config/i386/i386.c:12879
+#: config/i386/i386.c:13156
 #, c-format
 msgid "operand is not a specific integer, invalid operand code 'r'"
 msgstr ""
 
-#: config/i386/i386.c:12897
+#: config/i386/i386.c:13174
 #, c-format
 msgid "operand is not an integer, invalid operand code 'R'"
 msgstr ""
 
-#: config/i386/i386.c:12920
+#: config/i386/i386.c:13197
 #, c-format
 msgid "operand is not a specific integer, invalid operand code 'R'"
 msgstr ""
 
-#: config/i386/i386.c:13024
+#: config/i386/i386.c:13301
 #, c-format
 msgid "invalid operand code '%c'"
 msgstr ""
 
-#: config/i386/i386.c:13086
+#: config/i386/i386.c:13363
 #, c-format
 msgid "invalid constraints for operand"
 msgstr ""
 
-#: config/i386/i386.c:13136
+#: config/i386/i386.c:13450
 #, c-format
 msgid "invalid vector immediate"
 msgstr ""
 
-#: config/i386/i386.c:16068
+#: config/i386/i386.c:16403
 msgid "unknown insn mode"
 msgstr ""
 
@@ -2656,13 +2676,13 @@ msgstr ""
 msgid "invalid operation on %<__fpreg%>"
 msgstr ""
 
-#: config/iq2000/iq2000.c:3126 config/tilegx/tilegx.c:5303
-#: config/tilepro/tilepro.c:4692
+#: config/iq2000/iq2000.c:3126 config/tilegx/tilegx.c:5301
+#: config/tilepro/tilepro.c:4690
 #, c-format
 msgid "invalid %%P operand"
 msgstr ""
 
-#: config/iq2000/iq2000.c:3134 config/rs6000/rs6000.c:13078
+#: config/iq2000/iq2000.c:3134 config/rs6000/rs6000.c:13607
 #, c-format
 msgid "invalid %%p value"
 msgstr ""
@@ -2715,7 +2735,7 @@ msgstr ""
 msgid "post-increment address is not a register"
 msgstr ""
 
-#: config/m32r/m32r.c:2335 config/m32r/m32r.c:2350 config/rs6000/rs6000.c:19869
+#: config/m32r/m32r.c:2335 config/m32r/m32r.c:2350 config/rs6000/rs6000.c:20448
 msgid "bad address"
 msgstr ""
 
@@ -2748,7 +2768,7 @@ msgid "insn contains an invalid address !"
 msgstr ""
 
 #: config/microblaze/microblaze.c:2402 config/microblaze/microblaze.c:2632
-#: config/xtensa/xtensa.c:2541
+#: config/xtensa/xtensa.c:2556
 msgid "invalid address"
 msgstr ""
 
@@ -2767,59 +2787,66 @@ msgstr ""
 #: config/mips/mips.c:9084 config/mips/mips.c:9087 config/mips/mips.c:9099
 #: config/mips/mips.c:9102 config/mips/mips.c:9162 config/mips/mips.c:9169
 #: config/mips/mips.c:9190 config/mips/mips.c:9205 config/mips/mips.c:9224
-#: config/mips/mips.c:9233 config/riscv/riscv.c:3294 config/riscv/riscv.c:3409
-#: config/riscv/riscv.c:3415 config/riscv/riscv.c:3424
+#: config/mips/mips.c:9233 config/riscv/riscv.c:3299 config/riscv/riscv.c:3414
+#: config/riscv/riscv.c:3420 config/riscv/riscv.c:3429
 #, c-format
 msgid "invalid use of '%%%c'"
 msgstr ""
 
-#: config/mmix/mmix.c:1619 config/mmix/mmix.c:1749
+#: config/mmix/mmix.c:1622 config/mmix/mmix.c:1752
 msgid "MMIX Internal: Expected a CONST_INT, not this"
 msgstr ""
 
-#: config/mmix/mmix.c:1698
+#: config/mmix/mmix.c:1701
 msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
 msgstr ""
 
-#: config/mmix/mmix.c:1717
+#: config/mmix/mmix.c:1720
 msgid "MMIX Internal: Expected a register, not this"
 msgstr ""
 
-#: config/mmix/mmix.c:1727
+#: config/mmix/mmix.c:1730
 msgid "MMIX Internal: Expected a constant, not this"
 msgstr ""
 
 #. We need the original here.
-#: config/mmix/mmix.c:1811
+#: config/mmix/mmix.c:1814
 msgid "MMIX Internal: Cannot decode this operand"
 msgstr ""
 
-#: config/mmix/mmix.c:1867
+#: config/mmix/mmix.c:1870
 msgid "MMIX Internal: This is not a recognized address"
 msgstr ""
 
-#: config/mmix/mmix.c:2743
+#: config/mmix/mmix.c:2762
 msgid "MMIX Internal: Trying to output invalidly reversed condition:"
 msgstr ""
 
-#: config/mmix/mmix.c:2750
+#: config/mmix/mmix.c:2769
 msgid "MMIX Internal: What's the CC of this?"
 msgstr ""
 
-#: config/mmix/mmix.c:2754
+#: config/mmix/mmix.c:2773
 msgid "MMIX Internal: What is the CC of this?"
 msgstr ""
 
-#: config/mmix/mmix.c:2796
+#: config/mmix/mmix.c:2815
 msgid "MMIX Internal: This is not a constant:"
 msgstr ""
 
-#: config/msp430/msp430.c:3586
+#: config/msp430/msp430.c:4230
+#, c-format
+msgid ""
+"%%d, %%e, %%f, %%g operand modifiers are for memory references or constant "
+"values only"
+msgstr ""
+
+#: config/msp430/msp430.c:4343
 #, c-format
 msgid "invalid operand prefix"
 msgstr ""
 
-#: config/msp430/msp430.c:3620
+#: config/msp430/msp430.c:4377
 #, c-format
 msgid "invalid zero extract"
 msgstr ""
@@ -2834,7 +2861,7 @@ msgstr ""
 msgid "invalid %%H value"
 msgstr ""
 
-#: config/or1k/or1k.c:1231 config/xtensa/xtensa.c:2458
+#: config/or1k/or1k.c:1231 config/xtensa/xtensa.c:2473
 #, c-format
 msgid "invalid %%d value"
 msgstr ""
@@ -2899,294 +2926,286 @@ msgstr ""
 msgid "Try running '%s' in the shell to raise its limit.\n"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3696
+#: config/rs6000/rs6000.c:3831
 msgid "%<-mvsx%> requires hardware floating point"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3704
+#: config/rs6000/rs6000.c:3839
 msgid "%<-mvsx%> needs indexed addressing"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3709
+#: config/rs6000/rs6000.c:3844
 msgid "%<-mvsx%> and %<-mno-altivec%> are incompatible"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3711
+#: config/rs6000/rs6000.c:3846
 msgid "%<-mno-altivec%> disables vsx"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3845
+#: config/rs6000/rs6000.c:3986
 msgid "%<-mquad-memory%> requires 64-bit mode"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3848
+#: config/rs6000/rs6000.c:3989
 msgid "%<-mquad-memory-atomic%> requires 64-bit mode"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3860
+#: config/rs6000/rs6000.c:4001
 msgid "%<-mquad-memory%> is not available in little endian mode"
 msgstr ""
 
-#: config/rs6000/rs6000.c:10144
+#: config/rs6000/rs6000.c:10673
 msgid "bad move"
 msgstr ""
 
-#: config/rs6000/rs6000.c:12708
+#: config/rs6000/rs6000.c:13237
 msgid "Bad 128-bit move"
 msgstr ""
 
-#: config/rs6000/rs6000.c:12888
+#: config/rs6000/rs6000.c:13417
 #, c-format
 msgid "invalid %%A value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:12897 config/xtensa/xtensa.c:2387
+#: config/rs6000/rs6000.c:13426 config/xtensa/xtensa.c:2402
 #, c-format
 msgid "invalid %%D value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:12912
+#: config/rs6000/rs6000.c:13441
 #, c-format
 msgid "invalid %%e value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:12933
+#: config/rs6000/rs6000.c:13462
 #, c-format
 msgid "invalid %%f value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:12942
+#: config/rs6000/rs6000.c:13471
 #, c-format
 msgid "invalid %%F value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:12951
+#: config/rs6000/rs6000.c:13480
 #, c-format
 msgid "invalid %%G value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:12986
+#: config/rs6000/rs6000.c:13515
 #, c-format
 msgid "invalid %%j code"
 msgstr ""
 
-#: config/rs6000/rs6000.c:12996
+#: config/rs6000/rs6000.c:13525
 #, c-format
 msgid "invalid %%J code"
 msgstr ""
 
-#: config/rs6000/rs6000.c:13006
+#: config/rs6000/rs6000.c:13535
 #, c-format
 msgid "invalid %%k value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:13021 config/xtensa/xtensa.c:2430
+#: config/rs6000/rs6000.c:13550 config/xtensa/xtensa.c:2445
 #, c-format
 msgid "invalid %%K value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:13068
+#: config/rs6000/rs6000.c:13597
 #, c-format
 msgid "invalid %%O value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:13115
+#: config/rs6000/rs6000.c:13644
 #, c-format
 msgid "invalid %%q value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:13157
+#: config/rs6000/rs6000.c:13686
 #, c-format
 msgid "invalid %%t value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:13174
+#: config/rs6000/rs6000.c:13703
 #, c-format
 msgid "invalid %%T value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:13186
+#: config/rs6000/rs6000.c:13715
 #, c-format
 msgid "invalid %%u value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:13200 config/xtensa/xtensa.c:2399
+#: config/rs6000/rs6000.c:13729 config/xtensa/xtensa.c:2414
 #, c-format
 msgid "invalid %%v value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:13250
+#: config/rs6000/rs6000.c:13779
 #, c-format
 msgid "invalid %%V value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:13267 config/xtensa/xtensa.c:2451
+#: config/rs6000/rs6000.c:13796 config/xtensa/xtensa.c:2466
 #, c-format
 msgid "invalid %%x value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:13324
+#: config/rs6000/rs6000.c:13853
 #, c-format
 msgid "invalid %%z value"
 msgstr ""
 
-#: config/rs6000/rs6000.c:13393
+#: config/rs6000/rs6000.c:13922
 #, c-format
 msgid "invalid %%y value, try using the 'Z' constraint"
 msgstr ""
 
-#: config/rs6000/rs6000.c:14237
-msgid "__float128 and __ibm128 cannot be used in the same expression"
-msgstr ""
-
-#: config/rs6000/rs6000.c:14243
-msgid "__ibm128 and long double cannot be used in the same expression"
+#: config/rs6000/rs6000.c:14766
+msgid "Invalid mixing of IEEE 128-bit and IBM 128-bit floating point types"
 msgstr ""
 
-#: config/rs6000/rs6000.c:14249
-msgid "__float128 and long double cannot be used in the same expression"
-msgstr ""
-
-#: config/rs6000/rs6000.c:23128
+#: config/rs6000/rs6000.c:23725
 msgid "AltiVec argument passed to unprototyped function"
 msgstr ""
 
-#: config/rs6000/rs6000.c:26145
+#: config/rs6000/rs6000.c:26824
 msgid "Could not generate addis value for fusion"
 msgstr ""
 
-#: config/rs6000/rs6000.c:26214
+#: config/rs6000/rs6000.c:26893
 msgid "Unable to generate load/store offset for fusion"
 msgstr ""
 
-#: config/rs6000/rs6000.c:26290
+#: config/rs6000/rs6000.c:26969
 msgid "Bad GPR fusion"
 msgstr ""
 
-#: config/rs6000/rs6000.c:26769
+#: config/rs6000/rs6000.c:27529
 msgid "invalid conversion from type %<__vector_quad%>"
 msgstr ""
 
-#: config/rs6000/rs6000.c:26771
+#: config/rs6000/rs6000.c:27531
 msgid "invalid conversion to type %<__vector_quad%>"
 msgstr ""
 
-#: config/rs6000/rs6000.c:26773
+#: config/rs6000/rs6000.c:27533
 msgid "invalid conversion from type %<__vector_pair%>"
 msgstr ""
 
-#: config/rs6000/rs6000.c:26775
+#: config/rs6000/rs6000.c:27535
 msgid "invalid conversion to type %<__vector_pair%>"
 msgstr ""
 
-#: config/rs6000/rs6000.c:26783
+#: config/rs6000/rs6000.c:27550
 msgid "invalid conversion from type %<* __vector_quad%>"
 msgstr ""
 
-#: config/rs6000/rs6000.c:26786
+#: config/rs6000/rs6000.c:27552
 msgid "invalid conversion to type %<* __vector_quad%>"
 msgstr ""
 
-#: config/rs6000/rs6000.c:26789
+#: config/rs6000/rs6000.c:27554
 msgid "invalid conversion from type %<* __vector_pair%>"
 msgstr ""
 
-#: config/rs6000/rs6000.c:26792
+#: config/rs6000/rs6000.c:27556
 msgid "invalid conversion to type %<* __vector_pair%>"
 msgstr ""
 
-#: config/s390/s390.c:7792
+#: config/s390/s390.c:7867
 #, c-format
 msgid "symbolic memory references are only supported on z10 or later"
 msgstr ""
 
-#: config/s390/s390.c:7803
+#: config/s390/s390.c:7878
 #, c-format
 msgid "cannot decompose address"
 msgstr ""
 
-#: config/s390/s390.c:7883
+#: config/s390/s390.c:7959
 #, c-format
 msgid "invalid comparison operator for 'E' output modifier"
 msgstr ""
 
-#: config/s390/s390.c:7906
+#: config/s390/s390.c:7982
 #, c-format
 msgid "invalid reference for 'J' output modifier"
 msgstr ""
 
-#: config/s390/s390.c:7924
+#: config/s390/s390.c:8000
 #, c-format
 msgid "invalid address for 'O' output modifier"
 msgstr ""
 
-#: config/s390/s390.c:7946
+#: config/s390/s390.c:8022
 #, c-format
 msgid "invalid address for 'R' output modifier"
 msgstr ""
 
-#: config/s390/s390.c:7964
+#: config/s390/s390.c:8040
 #, c-format
 msgid "memory reference expected for 'S' output modifier"
 msgstr ""
 
-#: config/s390/s390.c:7974
+#: config/s390/s390.c:8050
 #, c-format
 msgid "invalid address for 'S' output modifier"
 msgstr ""
 
-#: config/s390/s390.c:7995
+#: config/s390/s390.c:8071
 #, c-format
 msgid "register or memory expression expected for 'N' output modifier"
 msgstr ""
 
-#: config/s390/s390.c:8006
+#: config/s390/s390.c:8082
 #, c-format
 msgid "register or memory expression expected for 'M' output modifier"
 msgstr ""
 
-#: config/s390/s390.c:8092 config/s390/s390.c:8113
+#: config/s390/s390.c:8168 config/s390/s390.c:8189
 #, c-format
 msgid "invalid constant for output modifier '%c'"
 msgstr ""
 
-#: config/s390/s390.c:8110
+#: config/s390/s390.c:8186
 #, c-format
 msgid "invalid constant - try using an output modifier"
 msgstr ""
 
-#: config/s390/s390.c:8147
+#: config/s390/s390.c:8223
 #, c-format
 msgid "invalid constant vector for output modifier '%c'"
 msgstr ""
 
-#: config/s390/s390.c:8154
+#: config/s390/s390.c:8230
 #, c-format
 msgid "invalid expression - try using an output modifier"
 msgstr ""
 
-#: config/s390/s390.c:8157
+#: config/s390/s390.c:8233
 #, c-format
 msgid "invalid expression for output modifier '%c'"
 msgstr ""
 
-#: config/s390/s390.c:11878
+#: config/s390/s390.c:12011
 msgid "vector argument passed to unprototyped function"
 msgstr ""
 
-#: config/s390/s390.c:16250
+#: config/s390/s390.c:16383
 msgid "types differ in signedness"
 msgstr ""
 
-#: config/s390/s390.c:16260
+#: config/s390/s390.c:16393
 msgid "binary operator does not support two vector bool operands"
 msgstr ""
 
-#: config/s390/s390.c:16263
+#: config/s390/s390.c:16396
 msgid "binary operator does not support vector bool operand"
 msgstr ""
 
-#: config/s390/s390.c:16271
+#: config/s390/s390.c:16404
 msgid ""
 "binary operator does not support mixing vector bool with floating point "
 "vector operands"
@@ -3214,43 +3233,43 @@ msgstr ""
 msgid "created and used with different endianness"
 msgstr ""
 
-#: config/sparc/sparc.c:9360 config/sparc/sparc.c:9366
+#: config/sparc/sparc.c:9329 config/sparc/sparc.c:9335
 #, c-format
 msgid "invalid %%Y operand"
 msgstr ""
 
-#: config/sparc/sparc.c:9453
+#: config/sparc/sparc.c:9422
 #, c-format
 msgid "invalid %%A operand"
 msgstr ""
 
-#: config/sparc/sparc.c:9473
+#: config/sparc/sparc.c:9442
 #, c-format
 msgid "invalid %%B operand"
 msgstr ""
 
-#: config/sparc/sparc.c:9553 config/tilegx/tilegx.c:5090
-#: config/tilepro/tilepro.c:4499
+#: config/sparc/sparc.c:9522 config/tilegx/tilegx.c:5088
+#: config/tilepro/tilepro.c:4497
 #, c-format
 msgid "invalid %%C operand"
 msgstr ""
 
-#: config/sparc/sparc.c:9585 config/tilegx/tilegx.c:5123
+#: config/sparc/sparc.c:9554 config/tilegx/tilegx.c:5121
 #, c-format
 msgid "invalid %%D operand"
 msgstr ""
 
-#: config/sparc/sparc.c:9604
+#: config/sparc/sparc.c:9573
 #, c-format
 msgid "invalid %%f operand"
 msgstr ""
 
-#: config/sparc/sparc.c:9616
+#: config/sparc/sparc.c:9585
 #, c-format
 msgid "invalid %%s operand"
 msgstr ""
 
-#: config/sparc/sparc.c:9661
+#: config/sparc/sparc.c:9630
 #, c-format
 msgid "floating-point constant not a valid immediate operand"
 msgstr ""
@@ -3275,82 +3294,82 @@ msgstr ""
 msgid "xstormy16_print_operand: unknown code"
 msgstr ""
 
-#: config/tilegx/tilegx.c:5075 config/tilepro/tilepro.c:4484
+#: config/tilegx/tilegx.c:5073 config/tilepro/tilepro.c:4482
 #, c-format
 msgid "invalid %%c operand"
 msgstr ""
 
-#: config/tilegx/tilegx.c:5106
+#: config/tilegx/tilegx.c:5104
 #, c-format
 msgid "invalid %%d operand"
 msgstr ""
 
-#: config/tilegx/tilegx.c:5203
+#: config/tilegx/tilegx.c:5201
 #, c-format
 msgid "invalid %%H specifier"
 msgstr ""
 
-#: config/tilegx/tilegx.c:5245 config/tilepro/tilepro.c:4513
+#: config/tilegx/tilegx.c:5243 config/tilepro/tilepro.c:4511
 #, c-format
 msgid "invalid %%h operand"
 msgstr ""
 
-#: config/tilegx/tilegx.c:5257 config/tilepro/tilepro.c:4577
+#: config/tilegx/tilegx.c:5255 config/tilepro/tilepro.c:4575
 #, c-format
 msgid "invalid %%I operand"
 msgstr ""
 
-#: config/tilegx/tilegx.c:5269 config/tilepro/tilepro.c:4589
+#: config/tilegx/tilegx.c:5267 config/tilepro/tilepro.c:4587
 #, c-format
 msgid "invalid %%i operand"
 msgstr ""
 
-#: config/tilegx/tilegx.c:5290 config/tilepro/tilepro.c:4610
+#: config/tilegx/tilegx.c:5288 config/tilepro/tilepro.c:4608
 #, c-format
 msgid "invalid %%j operand"
 msgstr ""
 
-#: config/tilegx/tilegx.c:5321
+#: config/tilegx/tilegx.c:5319
 #, c-format
 msgid "invalid %%%c operand"
 msgstr ""
 
-#: config/tilegx/tilegx.c:5336 config/tilepro/tilepro.c:4724
+#: config/tilegx/tilegx.c:5334 config/tilepro/tilepro.c:4722
 #, c-format
 msgid "invalid %%N operand"
 msgstr ""
 
-#: config/tilegx/tilegx.c:5380
+#: config/tilegx/tilegx.c:5378
 #, c-format
 msgid "invalid operand for 'r' specifier"
 msgstr ""
 
-#: config/tilegx/tilegx.c:5404 config/tilepro/tilepro.c:4804
+#: config/tilegx/tilegx.c:5402 config/tilepro/tilepro.c:4802
 #, c-format
 msgid "unable to print out operand yet; code == %d (%c)"
 msgstr ""
 
-#: config/tilepro/tilepro.c:4549
+#: config/tilepro/tilepro.c:4547
 #, c-format
 msgid "invalid %%H operand"
 msgstr ""
 
-#: config/tilepro/tilepro.c:4649
+#: config/tilepro/tilepro.c:4647
 #, c-format
 msgid "invalid %%L operand"
 msgstr ""
 
-#: config/tilepro/tilepro.c:4709
+#: config/tilepro/tilepro.c:4707
 #, c-format
 msgid "invalid %%M operand"
 msgstr ""
 
-#: config/tilepro/tilepro.c:4752 config/tilepro/tilepro.c:4759
+#: config/tilepro/tilepro.c:4750 config/tilepro/tilepro.c:4757
 #, c-format
 msgid "invalid %%t operand"
 msgstr ""
 
-#: config/tilepro/tilepro.c:4779
+#: config/tilepro/tilepro.c:4777
 #, c-format
 msgid "invalid %%r operand"
 msgstr ""
@@ -3363,22 +3382,22 @@ msgstr ""
 msgid "output_move_single:"
 msgstr ""
 
-#: config/vax/vax.c:463
+#: config/vax/vax.c:479
 #, c-format
 msgid "symbol used with both base and indexed registers"
 msgstr ""
 
-#: config/vax/vax.c:472
+#: config/vax/vax.c:488
 #, c-format
 msgid "symbol with offset used in PIC mode"
 msgstr ""
 
-#: config/vax/vax.c:560
+#: config/vax/vax.c:576
 #, c-format
 msgid "symbol used as immediate operand"
 msgstr ""
 
-#: config/vax/vax.c:1587
+#: config/vax/vax.c:1667
 msgid "illegal operand detected"
 msgstr ""
 
@@ -3407,20 +3426,20 @@ msgstr ""
 msgid "bad test"
 msgstr ""
 
-#: config/xtensa/xtensa.c:2425
+#: config/xtensa/xtensa.c:2440
 msgid "invalid mask"
 msgstr ""
 
-#: config/xtensa/xtensa.c:2477 config/xtensa/xtensa.c:2487
+#: config/xtensa/xtensa.c:2492 config/xtensa/xtensa.c:2502
 #, c-format
 msgid "invalid %%t/%%b value"
 msgstr ""
 
-#: config/xtensa/xtensa.c:2566
+#: config/xtensa/xtensa.c:2581
 msgid "no register in address"
 msgstr ""
 
-#: config/xtensa/xtensa.c:2574
+#: config/xtensa/xtensa.c:2589
 msgid "address offset not a constant"
 msgstr ""
 
@@ -3441,489 +3460,517 @@ msgstr ""
 #. ;
 #. <~~~~~~~~~ declaration ~~~~~~~~~~>
 #. Use c_parser_require to get an error with a fix-it hint.
-#: c/c-parser.c:2456 c/c-parser.c:2575 c/c-parser.c:2589 c/c-parser.c:5700
-#: c/c-parser.c:6331 c/c-parser.c:6781 c/c-parser.c:6960 c/c-parser.c:6994
-#: c/c-parser.c:7251 c/c-parser.c:11044 c/c-parser.c:11079 c/c-parser.c:11110
-#: c/c-parser.c:11157 c/c-parser.c:11338 c/c-parser.c:12137 c/c-parser.c:12207
-#: c/c-parser.c:12250 c/c-parser.c:17706 c/c-parser.c:17730 c/c-parser.c:17748
-#: c/c-parser.c:18174 c/c-parser.c:18218 c/gimple-parser.c:392
-#: c/gimple-parser.c:433 c/gimple-parser.c:442 c/gimple-parser.c:650
-#: c/gimple-parser.c:2190 c/gimple-parser.c:2227 c/gimple-parser.c:2306
-#: c/gimple-parser.c:2333 c/c-parser.c:3268 c/c-parser.c:3455 c/c-parser.c:3488
-#: c/c-parser.c:11331 c/gimple-parser.c:2024 c/gimple-parser.c:2063
-#: cp/parser.c:13745 cp/parser.c:30090 cp/parser.c:30683
+#: c/c-parser.c:2462 c/c-parser.c:2581 c/c-parser.c:2595 c/c-parser.c:5652
+#: c/c-parser.c:6251 c/c-parser.c:6686 c/c-parser.c:6865 c/c-parser.c:6898
+#: c/c-parser.c:7164 c/c-parser.c:10987 c/c-parser.c:11022 c/c-parser.c:11053
+#: c/c-parser.c:11100 c/c-parser.c:11281 c/c-parser.c:12113 c/c-parser.c:12188
+#: c/c-parser.c:12231 c/c-parser.c:17865 c/c-parser.c:17889 c/c-parser.c:17907
+#: c/c-parser.c:18330 c/c-parser.c:18374 c/gimple-parser.c:392
+#: c/gimple-parser.c:433 c/gimple-parser.c:442 c/gimple-parser.c:651
+#: c/gimple-parser.c:2193 c/gimple-parser.c:2230 c/gimple-parser.c:2309
+#: c/gimple-parser.c:2336 c/c-parser.c:3274 c/c-parser.c:3461 c/c-parser.c:3494
+#: c/c-parser.c:11274 c/gimple-parser.c:2027 c/gimple-parser.c:2066
+#: cp/parser.c:14328 cp/parser.c:30947 cp/parser.c:31557
 #, gcc-internal-format
 msgid "expected %<;%>"
 msgstr ""
 
-#: c/c-parser.c:3038 c/c-parser.c:4013 c/c-parser.c:4208 c/c-parser.c:4273
-#: c/c-parser.c:4331 c/c-parser.c:4693 c/c-parser.c:4714 c/c-parser.c:4723
-#: c/c-parser.c:4774 c/c-parser.c:4783 c/c-parser.c:8584 c/c-parser.c:8650
-#: c/c-parser.c:9149 c/c-parser.c:9171 c/c-parser.c:9205 c/c-parser.c:9314
-#: c/c-parser.c:10097 c/c-parser.c:11445 c/c-parser.c:13661 c/c-parser.c:14304
-#: c/c-parser.c:14363 c/c-parser.c:14418 c/c-parser.c:15684 c/c-parser.c:15782
-#: c/c-parser.c:17023 c/c-parser.c:17790 c/c-parser.c:18182 c/c-parser.c:20987
-#: c/c-parser.c:21065 c/gimple-parser.c:195 c/gimple-parser.c:198
+#: c/c-parser.c:3044 c/c-parser.c:4014 c/c-parser.c:4209 c/c-parser.c:4274
+#: c/c-parser.c:4332 c/c-parser.c:4694 c/c-parser.c:4715 c/c-parser.c:4724
+#: c/c-parser.c:4775 c/c-parser.c:4784 c/c-parser.c:8508 c/c-parser.c:8574
+#: c/c-parser.c:9080 c/c-parser.c:9105 c/c-parser.c:9139 c/c-parser.c:9248
+#: c/c-parser.c:10031 c/c-parser.c:11388 c/c-parser.c:13644 c/c-parser.c:14286
+#: c/c-parser.c:14345 c/c-parser.c:14400 c/c-parser.c:15722 c/c-parser.c:15820
+#: c/c-parser.c:17119 c/c-parser.c:17949 c/c-parser.c:18338 c/c-parser.c:21151
+#: c/c-parser.c:21229 c/gimple-parser.c:195 c/gimple-parser.c:198
 #: c/gimple-parser.c:527 c/gimple-parser.c:561 c/gimple-parser.c:566
-#: c/gimple-parser.c:734 c/gimple-parser.c:831 c/gimple-parser.c:1024
-#: c/gimple-parser.c:1050 c/gimple-parser.c:1053 c/gimple-parser.c:1184
-#: c/gimple-parser.c:1311 c/gimple-parser.c:1437 c/gimple-parser.c:1453
-#: c/gimple-parser.c:1469 c/gimple-parser.c:1491 c/gimple-parser.c:1521
-#: c/gimple-parser.c:1547 c/gimple-parser.c:1753 c/gimple-parser.c:1946
-#: c/gimple-parser.c:1966 c/gimple-parser.c:2100 c/gimple-parser.c:2263
-#: c/c-parser.c:7200 cp/parser.c:30731
+#: c/gimple-parser.c:735 c/gimple-parser.c:832 c/gimple-parser.c:1025
+#: c/gimple-parser.c:1051 c/gimple-parser.c:1054 c/gimple-parser.c:1185
+#: c/gimple-parser.c:1312 c/gimple-parser.c:1438 c/gimple-parser.c:1454
+#: c/gimple-parser.c:1470 c/gimple-parser.c:1492 c/gimple-parser.c:1522
+#: c/gimple-parser.c:1548 c/gimple-parser.c:1756 c/gimple-parser.c:1949
+#: c/gimple-parser.c:1969 c/gimple-parser.c:2103 c/gimple-parser.c:2266
+#: c/c-parser.c:7116 cp/parser.c:31605
 #, gcc-internal-format
 msgid "expected %<)%>"
 msgstr ""
 
-#: c/c-parser.c:4102 c/c-parser.c:4834 c/c-parser.c:4978 c/c-parser.c:5051
-#: c/c-parser.c:5052 c/c-parser.c:5466 c/c-parser.c:5502 c/c-parser.c:7302
-#: c/c-parser.c:9305 c/c-parser.c:10195 c/c-parser.c:10484 c/c-parser.c:13108
-#: c/gimple-parser.c:1730 cp/parser.c:30695
+#: c/c-parser.c:4103 c/c-parser.c:4835 c/c-parser.c:4976 c/c-parser.c:5002
+#: c/c-parser.c:5003 c/c-parser.c:5417 c/c-parser.c:5453 c/c-parser.c:7215
+#: c/c-parser.c:9239 c/c-parser.c:10129 c/c-parser.c:10418 c/c-parser.c:13091
+#: c/gimple-parser.c:1733 cp/parser.c:31569
 #, gcc-internal-format
 msgid "expected %<]%>"
 msgstr ""
 
-#: c/c-parser.c:4311
+#: c/c-parser.c:4312
 msgid "expected %<;%>, %<,%> or %<)%>"
 msgstr ""
 
 #. Look for the two `(' tokens.
-#: c/c-parser.c:4743 c/c-parser.c:4748 c/c-parser.c:13644 c/c-parser.c:14393
-#: c/c-parser.c:20348 c/c-parser.c:20795 c/c-parser.c:21008
+#: c/c-parser.c:4744 c/c-parser.c:4749 c/c-parser.c:13627 c/c-parser.c:14375
+#: c/c-parser.c:20512 c/c-parser.c:20959 c/c-parser.c:21172
 #: c/gimple-parser.c:180 c/gimple-parser.c:474 c/gimple-parser.c:513
-#: c/gimple-parser.c:545 c/gimple-parser.c:801 c/gimple-parser.c:1018
-#: c/gimple-parser.c:1044 c/gimple-parser.c:1171 c/gimple-parser.c:1306
-#: c/gimple-parser.c:1427 c/gimple-parser.c:1487 c/gimple-parser.c:1505
-#: c/gimple-parser.c:1540 c/gimple-parser.c:1915 c/gimple-parser.c:1926
-#: c/gimple-parser.c:1932 c/gimple-parser.c:2097 c/gimple-parser.c:2260
-#: c/c-parser.c:13466 cp/parser.c:30686
+#: c/gimple-parser.c:545 c/gimple-parser.c:802 c/gimple-parser.c:1019
+#: c/gimple-parser.c:1045 c/gimple-parser.c:1172 c/gimple-parser.c:1307
+#: c/gimple-parser.c:1428 c/gimple-parser.c:1488 c/gimple-parser.c:1506
+#: c/gimple-parser.c:1541 c/gimple-parser.c:1918 c/gimple-parser.c:1929
+#: c/gimple-parser.c:1935 c/gimple-parser.c:2100 c/gimple-parser.c:2263
+#: c/c-parser.c:13449 cp/parser.c:31560
 #, gcc-internal-format
 msgid "expected %<(%>"
 msgstr ""
 
-#: c/c-parser.c:4974 c/c-parser.c:4976 c/c-parser.c:13036 cp/parser.c:30698
-#: cp/parser.c:34358
+#: c/c-parser.c:4972 c/c-parser.c:4974 c/c-parser.c:13019 cp/parser.c:31572
+#: cp/parser.c:35255
 #, gcc-internal-format
 msgid "expected %<[%>"
 msgstr ""
 
-#: c/c-parser.c:5636 c/c-parser.c:11674 c/c-parser.c:17983 c/c-parser.c:18800
-#: c/c-parser.c:21843 c/gimple-parser.c:385 c/gimple-parser.c:2266
-#: c/c-parser.c:3256 c/c-parser.c:3478 c/c-parser.c:11226 cp/parser.c:19290
-#: cp/parser.c:30692
+#: c/c-parser.c:5588 c/c-parser.c:11617 c/c-parser.c:18133 c/c-parser.c:18947
+#: c/c-parser.c:22011 c/gimple-parser.c:385 c/gimple-parser.c:2269
+#: c/c-parser.c:3262 c/c-parser.c:3484 c/c-parser.c:11169 cp/parser.c:19889
+#: cp/parser.c:31566
 #, gcc-internal-format
 msgid "expected %<{%>"
 msgstr ""
 
-#: c/c-parser.c:5914 c/c-parser.c:5923 c/c-parser.c:7735 c/c-parser.c:8786
-#: c/c-parser.c:11438 c/c-parser.c:11834 c/c-parser.c:11898 c/c-parser.c:13090
-#: c/c-parser.c:14005 c/c-parser.c:14221 c/c-parser.c:14711 c/c-parser.c:14812
-#: c/c-parser.c:15436 c/c-parser.c:15563 c/c-parser.c:20210 c/c-parser.c:20852
-#: c/c-parser.c:20911 c/gimple-parser.c:568 c/gimple-parser.c:871
-#: c/gimple-parser.c:2314 c/gimple-parser.c:2341 c/c-parser.c:7207
-#: c/c-parser.c:13569 c/c-parser.c:14817 cp/parser.c:30725 cp/parser.c:32371
-#: cp/parser.c:35149 cp/parser.c:35924
+#: c/c-parser.c:5878 c/c-parser.c:5887 c/c-parser.c:7648 c/c-parser.c:8711
+#: c/c-parser.c:11381 c/c-parser.c:11777 c/c-parser.c:11841 c/c-parser.c:13073
+#: c/c-parser.c:13987 c/c-parser.c:14203 c/c-parser.c:14693 c/c-parser.c:14794
+#: c/c-parser.c:15161 c/c-parser.c:15474 c/c-parser.c:15601 c/c-parser.c:20374
+#: c/c-parser.c:21016 c/c-parser.c:21075 c/gimple-parser.c:568
+#: c/gimple-parser.c:872 c/gimple-parser.c:2317 c/gimple-parser.c:2344
+#: c/c-parser.c:7123 c/c-parser.c:13552 c/c-parser.c:14799 cp/parser.c:31599
+#: cp/parser.c:33245 cp/parser.c:36054 cp/parser.c:36838
 #, gcc-internal-format
 msgid "expected %<:%>"
 msgstr ""
 
-#: c/c-parser.c:6764 cp/parser.c:30612
+#: c/c-parser.c:6673 cp/parser.c:31486
 #, gcc-internal-format
 msgid "expected %<while%>"
 msgstr ""
 
-#: c/c-parser.c:8548 c/c-parser.c:8737 c/c-parser.c:9195 c/c-parser.c:9238
-#: c/c-parser.c:9376 c/c-parser.c:10087 c/c-parser.c:14398 c/c-parser.c:15519
-#: c/gimple-parser.c:1021 c/gimple-parser.c:1047 c/gimple-parser.c:1175
-#: c/gimple-parser.c:1178 c/gimple-parser.c:1509 c/gimple-parser.c:1515
-#: cp/parser.c:30088 cp/parser.c:30701
+#: c/c-parser.c:8472 c/c-parser.c:8662 c/c-parser.c:9129 c/c-parser.c:9172
+#: c/c-parser.c:9310 c/c-parser.c:10021 c/c-parser.c:14380 c/c-parser.c:15557
+#: c/gimple-parser.c:1022 c/gimple-parser.c:1048 c/gimple-parser.c:1176
+#: c/gimple-parser.c:1179 c/gimple-parser.c:1510 c/gimple-parser.c:1516
+#: cp/parser.c:30945 cp/parser.c:31575
 #, gcc-internal-format
 msgid "expected %<,%>"
 msgstr ""
 
-#: c/c-parser.c:9095
+#: c/c-parser.c:9026
 msgid "expected %<.%>"
 msgstr ""
 
-#: c/c-parser.c:10897 c/c-parser.c:10929 c/c-parser.c:11169 cp/parser.c:32945
-#: cp/parser.c:33019
+#: c/c-parser.c:10840 c/c-parser.c:10872 c/c-parser.c:11112 cp/parser.c:33819
+#: cp/parser.c:33840
 #, gcc-internal-format
 msgid "expected %<@end%>"
 msgstr ""
 
-#: c/c-parser.c:11587 c/gimple-parser.c:1345 cp/parser.c:30710
+#: c/c-parser.c:11530 c/gimple-parser.c:1346 cp/parser.c:31584
 #, gcc-internal-format
 msgid "expected %<>%>"
 msgstr ""
 
-#: c/c-parser.c:14906 c/c-parser.c:15800 cp/parser.c:30734
+#: c/c-parser.c:14888 c/c-parser.c:15838 cp/parser.c:31608
 #, gcc-internal-format
 msgid "expected %<,%> or %<)%>"
 msgstr ""
 
 #. All following cases are statements with LHS.
-#: c/c-parser.c:15428 c/c-parser.c:17439 c/c-parser.c:17483 c/c-parser.c:17715
-#: c/c-parser.c:18161 c/c-parser.c:20417 c/c-parser.c:21049
-#: c/gimple-parser.c:725 c/c-parser.c:5525 cp/parser.c:30713
+#: c/c-parser.c:15466 c/c-parser.c:17598 c/c-parser.c:17642 c/c-parser.c:17874
+#: c/c-parser.c:18317 c/c-parser.c:20581 c/c-parser.c:21213
+#: c/gimple-parser.c:726 c/c-parser.c:5476 cp/parser.c:31587
 #, gcc-internal-format
 msgid "expected %<=%>"
 msgstr ""
 
-#: c/c-parser.c:17731 c/c-parser.c:18031 c/gimple-parser.c:1563
-#: c/gimple-parser.c:1595 c/gimple-parser.c:1605 c/gimple-parser.c:2351
-#: cp/parser.c:30689 cp/parser.c:33164
+#: c/c-parser.c:17890 c/c-parser.c:18181 c/gimple-parser.c:1564
+#: c/gimple-parser.c:1596 c/gimple-parser.c:1606 c/gimple-parser.c:2354
+#: cp/parser.c:31563 cp/parser.c:34029
 #, gcc-internal-format
 msgid "expected %<}%>"
 msgstr ""
 
-#: c/c-parser.c:18843 c/c-parser.c:18833 cp/parser.c:39781
+#: c/c-parser.c:18990 c/c-parser.c:18980 cp/parser.c:40842
 #, gcc-internal-format
 msgid "expected %<#pragma omp section%> or %<}%>"
 msgstr ""
 
-#: c/c-typeck.c:8291
+#: c/c-typeck.c:8370
 msgid "(anonymous)"
 msgstr ""
 
-#: c/gimple-parser.c:1334 cp/parser.c:16709 cp/parser.c:30707
+#: c/gimple-parser.c:1335 cp/parser.c:17308 cp/parser.c:31581
 #, gcc-internal-format
 msgid "expected %<<%>"
 msgstr ""
 
-#: c/gimple-parser.c:2310 c/gimple-parser.c:2337 c/gimple-parser.c:2176
-#: c/gimple-parser.c:2213
+#: c/gimple-parser.c:2313 c/gimple-parser.c:2340 c/gimple-parser.c:2179
+#: c/gimple-parser.c:2216
 #, gcc-internal-format
 msgid "expected label"
 msgstr ""
 
-#: cp/call.c:3865
+#: cp/call.c:3900
 msgid "candidate:"
 msgstr ""
 
-#: cp/call.c:7209
+#: cp/call.c:7315
 msgid "  after user-defined conversion:"
 msgstr ""
 
-#: cp/call.c:7347 cp/pt.c:2029 cp/pt.c:24617
+#: cp/call.c:7453 cp/pt.c:2044 cp/pt.c:25021
 msgid "candidate is:"
 msgid_plural "candidates are:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/call.c:11717
+#: cp/call.c:11972
 msgid "candidate 1:"
 msgstr ""
 
-#: cp/call.c:11718
+#: cp/call.c:11973
 msgid "candidate 2:"
 msgstr ""
 
-#: cp/decl.c:3284
+#: cp/decl.c:3370
 msgid "jump to label %qD"
 msgstr ""
 
-#: cp/decl.c:3285
+#: cp/decl.c:3371
 msgid "jump to case label"
 msgstr ""
 
-#: cp/error.c:384
+#: cp/error.c:416
 msgid "<missing>"
 msgstr ""
 
-#: cp/error.c:486
+#: cp/error.c:518
 msgid "<brace-enclosed initializer list>"
 msgstr ""
 
-#: cp/error.c:488
+#: cp/error.c:520
 msgid "<unresolved overloaded function type>"
 msgstr ""
 
-#: cp/error.c:657
+#: cp/error.c:690
 msgid "<type error>"
 msgstr ""
 
 #. A lambda's "type" is essentially its signature.
-#: cp/error.c:758
+#: cp/error.c:789
 msgid "<lambda"
 msgstr ""
 
-#: cp/error.c:768 objc/objc-act.c:6202 cp/cxx-pretty-print.c:154
+#: cp/error.c:799 objc/objc-act.c:6352 cp/cxx-pretty-print.c:154
 #, gcc-internal-format
 msgid "<unnamed>"
 msgstr ""
 
-#: cp/error.c:770
+#: cp/error.c:801
 #, c-format
 msgid "<unnamed %s>"
 msgstr ""
 
-#: cp/error.c:896
+#: cp/error.c:930
 msgid "<typeprefixerror>"
 msgstr ""
 
-#: cp/error.c:1025
+#: cp/error.c:1063
 #, c-format
 msgid "(static initializers for %s)"
 msgstr ""
 
-#: cp/error.c:1027
+#: cp/error.c:1065
 #, c-format
 msgid "(static destructors for %s)"
 msgstr ""
 
-#: cp/error.c:1073
+#: cp/error.c:1111
 msgid "<structured bindings>"
 msgstr ""
 
-#: cp/error.c:1176
+#: cp/error.c:1217
 msgid "vtable for "
 msgstr ""
 
-#: cp/error.c:1200
+#: cp/error.c:1241
 msgid "<return value> "
 msgstr ""
 
-#: cp/error.c:1215
+#: cp/error.c:1256
 msgid "{anonymous}"
 msgstr ""
 
-#: cp/error.c:1217
+#: cp/error.c:1258
 msgid "(anonymous namespace)"
 msgstr ""
 
-#: cp/error.c:1317
+#: cp/error.c:1358
 msgid "<template arguments error>"
 msgstr ""
 
-#: cp/error.c:1339
+#: cp/error.c:1380
 msgid "<enumerator>"
 msgstr ""
 
-#: cp/error.c:1390
+#: cp/error.c:1431
 msgid "<declaration error>"
 msgstr ""
 
-#: cp/error.c:1939 cp/error.c:1959
+#: cp/error.c:1982 cp/error.c:2002
 msgid "<template parameter error>"
 msgstr ""
 
-#: cp/error.c:2089
+#: cp/error.c:2132
 msgid "<statement>"
 msgstr ""
 
-#: cp/error.c:2118 cp/error.c:3168 c-family/c-pretty-print.c:2212
+#: cp/error.c:2161 cp/error.c:3247 c-family/c-pretty-print.c:2633
 #, gcc-internal-format
 msgid "<unknown>"
 msgstr ""
 
 #. While waiting for caret diagnostics, avoid printing
 #. __cxa_allocate_exception, __cxa_throw, and the like.
-#: cp/error.c:2136
+#: cp/error.c:2179
 msgid "<throw-expression>"
 msgstr ""
 
-#: cp/error.c:2237
+#: cp/error.c:2280
 msgid "<ubsan routine call>"
 msgstr ""
 
-#: cp/error.c:2686
+#: cp/error.c:2764
 msgid "<unparsed>"
 msgstr ""
 
-#: cp/error.c:2842
+#: cp/error.c:2921
 msgid "<lambda>"
 msgstr ""
 
-#: cp/error.c:2881
+#: cp/error.c:2960
 msgid "*this"
 msgstr ""
 
-#: cp/error.c:2895
+#: cp/error.c:2974
 msgid "<expression error>"
 msgstr ""
 
-#: cp/error.c:2910
+#: cp/error.c:2989
 msgid "<unknown operator>"
 msgstr ""
 
-#: cp/error.c:3381
+#: cp/error.c:3460
 msgid "At global scope:"
 msgstr ""
 
-#: cp/error.c:3477
+#: cp/error.c:3556
 #, c-format
 msgid "In static member function %qs"
 msgstr ""
 
-#: cp/error.c:3479
+#: cp/error.c:3558
 #, c-format
 msgid "In copy constructor %qs"
 msgstr ""
 
-#: cp/error.c:3481
+#: cp/error.c:3560
 #, c-format
 msgid "In constructor %qs"
 msgstr ""
 
-#: cp/error.c:3483
+#: cp/error.c:3562
 #, c-format
 msgid "In destructor %qs"
 msgstr ""
 
-#: cp/error.c:3485
+#: cp/error.c:3564
 msgid "In lambda function"
 msgstr ""
 
-#: cp/error.c:3505
+#: cp/error.c:3592
 #, c-format
 msgid "%s: In substitution of %qS:\n"
 msgstr ""
 
-#: cp/error.c:3506
+#: cp/error.c:3593
 msgid "%s: In instantiation of %q#D:\n"
 msgstr ""
 
-#: cp/error.c:3531 cp/error.c:3685
+#: cp/error.c:3618 cp/error.c:3772
 msgid "%r%s:%d:%d:%R   "
 msgstr ""
 
-#: cp/error.c:3534 cp/error.c:3688
+#: cp/error.c:3621 cp/error.c:3775
 msgid "%r%s:%d:%R   "
 msgstr ""
 
-#: cp/error.c:3542
+#: cp/error.c:3629
 #, c-format
 msgid "recursively required by substitution of %qS\n"
 msgstr ""
 
-#: cp/error.c:3543
+#: cp/error.c:3630
 #, c-format
 msgid "required by substitution of %qS\n"
 msgstr ""
 
-#: cp/error.c:3548
+#: cp/error.c:3635
 msgid "recursively required from %q#D\n"
 msgstr ""
 
-#: cp/error.c:3549
+#: cp/error.c:3636
 msgid "required from %q#D\n"
 msgstr ""
 
-#: cp/error.c:3556
+#: cp/error.c:3643
 msgid "recursively required from here\n"
 msgstr ""
 
-#: cp/error.c:3557
+#: cp/error.c:3644
 msgid "required from here\n"
 msgstr ""
 
-#: cp/error.c:3609
+#: cp/error.c:3696
 msgid ""
 "%r%s:%d:%d:%R   [ skipping %d instantiation contexts, use -ftemplate-"
 "backtrace-limit=0 to disable ]\n"
 msgstr ""
 
-#: cp/error.c:3615
+#: cp/error.c:3702
 msgid ""
 "%r%s:%d:%R   [ skipping %d instantiation contexts, use -ftemplate-backtrace-"
 "limit=0 to disable ]\n"
 msgstr ""
 
-#: cp/error.c:3669
+#: cp/error.c:3756
 msgid "%r%s:%d:%d:%R   in %<constexpr%> expansion of %qs"
 msgstr ""
 
-#: cp/error.c:3673
+#: cp/error.c:3760
 msgid "%r%s:%d:%R   in %<constexpr%> expansion of %qs"
 msgstr ""
 
-#: cp/pt.c:2027 cp/semantics.c:5575
+#: cp/parser.c:5949
+msgid "parameter %qD may not appear in this context"
+msgstr ""
+
+#: cp/parser.c:5950
+msgid "local variable %qD may not appear in this context"
+msgstr ""
+
+#: cp/parser.c:20685
+msgid "%<using enum%> only available with %<-std=c++20%> or %<-std=gnu++20%>"
+msgstr ""
+
+#: cp/parser.c:20688
+msgid "%<using enum%> of dependent type %qT"
+msgstr ""
+
+#: cp/parser.c:20690
+msgid "%<using enum%> of non-enumeration type %q#T"
+msgstr ""
+
+#: cp/parser.c:20692
+msgid "%<using enum%> of incomplete type %qT"
+msgstr ""
+
+#: cp/parser.c:20694
+msgid "%<using enum%> of %qT before its enum-specifier"
+msgstr ""
+
+#: cp/pt.c:2042 cp/semantics.c:5643
 msgid "candidates are:"
 msgstr ""
 
-#: cp/rtti.c:575
+#: cp/rtti.c:589
 msgid "target is not pointer or reference to class"
 msgstr ""
 
-#: cp/rtti.c:580
+#: cp/rtti.c:594
 msgid "target is not pointer or reference to complete type"
 msgstr ""
 
-#: cp/rtti.c:586
+#: cp/rtti.c:600
 msgid "target is not pointer or reference"
 msgstr ""
 
-#: cp/rtti.c:602
+#: cp/rtti.c:616
 msgid "source is not a pointer"
 msgstr ""
 
-#: cp/rtti.c:607
+#: cp/rtti.c:621
 msgid "source is not a pointer to class"
 msgstr ""
 
-#: cp/rtti.c:612
+#: cp/rtti.c:626
 msgid "source is a pointer to incomplete type"
 msgstr ""
 
-#: cp/rtti.c:625
+#: cp/rtti.c:639
 msgid "source is not of class type"
 msgstr ""
 
-#: cp/rtti.c:630
+#: cp/rtti.c:644
 msgid "source is of incomplete class type"
 msgstr ""
 
-#: cp/rtti.c:641
+#: cp/rtti.c:655
 msgid "conversion casts away constness"
 msgstr ""
 
-#: cp/rtti.c:801
+#: cp/rtti.c:811
 msgid "source type is not polymorphic"
 msgstr ""
 
-#: cp/typeck.c:6485 c/c-typeck.c:4399
+#: cp/typeck.c:6625 c/c-typeck.c:4406
 #, gcc-internal-format
 msgid "wrong type argument to unary minus"
 msgstr ""
 
-#: cp/typeck.c:6486 c/c-typeck.c:4386
+#: cp/typeck.c:6626 c/c-typeck.c:4393
 #, gcc-internal-format
 msgid "wrong type argument to unary plus"
 msgstr ""
 
-#: cp/typeck.c:6513 c/c-typeck.c:4443
+#: cp/typeck.c:6653 c/c-typeck.c:4450
 #, gcc-internal-format
 msgid "wrong type argument to bit-complement"
 msgstr ""
 
-#: cp/typeck.c:6530 c/c-typeck.c:4451
+#: cp/typeck.c:6670 c/c-typeck.c:4458
 #, gcc-internal-format
 msgid "wrong type argument to abs"
 msgstr ""
 
-#: cp/typeck.c:6542 c/c-typeck.c:4473
+#: cp/typeck.c:6682 c/c-typeck.c:4480
 #, gcc-internal-format
 msgid "wrong type argument to conjugation"
 msgstr ""
 
-#: cp/typeck.c:6560
+#: cp/typeck.c:6700
 msgid "in argument to unary !"
 msgstr ""
 
-#: cp/typeck.c:6606
+#: cp/typeck.c:6746
 msgid "no pre-increment operator for type"
 msgstr ""
 
-#: cp/typeck.c:6608
+#: cp/typeck.c:6748
 msgid "no post-increment operator for type"
 msgstr ""
 
-#: cp/typeck.c:6610
+#: cp/typeck.c:6750
 msgid "no pre-decrement operator for type"
 msgstr ""
 
-#: cp/typeck.c:6612
+#: cp/typeck.c:6752
 msgid "no post-decrement operator for type"
 msgstr ""
 
@@ -3935,22 +3982,22 @@ msgstr ""
 msgid " [see %<-fno-allow-invalid-boz%>]"
 msgstr ""
 
-#: fortran/check.c:3711
+#: fortran/check.c:3717
 #, c-format
 msgid "arguments 'a%d' and 'a%d' for intrinsic '%s'"
 msgstr ""
 
-#: fortran/check.c:3919 fortran/check.c:4000 fortran/check.c:4065
+#: fortran/check.c:3925 fortran/check.c:4006 fortran/check.c:4071
 #, c-format
 msgid "arguments '%s' and '%s' for intrinsic %s"
 msgstr ""
 
-#: fortran/check.c:4403 fortran/intrinsic.c:4778
+#: fortran/check.c:4409 fortran/intrinsic.c:4815
 #, c-format
 msgid "arguments '%s' and '%s' for intrinsic '%s'"
 msgstr ""
 
-#: fortran/dump-parse-tree.c:3219
+#: fortran/dump-parse-tree.c:3302
 #, c-format
 msgid ""
 "/* Prototypes for external procedures generated from %s\n"
@@ -3993,24 +4040,30 @@ msgstr ""
 msgid "Deleted feature:"
 msgstr ""
 
-#: fortran/expr.c:3696
+#: fortran/expr.c:3705
 msgid "array assignment"
 msgstr ""
 
+#: fortran/frontend-passes.c:2386
+msgid ""
+"Index variable %qs redefined at %L in procedure %qs called from within DO "
+"loop at %L"
+msgstr ""
+
 #. Macros for unified error messages.
-#: fortran/frontend-passes.c:3785
+#: fortran/frontend-passes.c:4040
 #, c-format
 msgid ""
 "Incorrect extent in argument B in MATMUL intrinsic in dimension 1: is %ld, "
 "should be %ld"
 msgstr ""
 
-#: fortran/frontend-passes.c:3788
+#: fortran/frontend-passes.c:4043
 #, c-format
 msgid "Array bound mismatch for dimension 1 of array (%ld/%ld)"
 msgstr ""
 
-#: fortran/frontend-passes.c:3791
+#: fortran/frontend-passes.c:4046
 #, c-format
 msgid "Array bound mismatch for dimension 2 of array (%ld/%ld)"
 msgstr ""
@@ -4020,43 +4073,43 @@ msgstr ""
 msgid "Driving:"
 msgstr ""
 
-#: fortran/interface.c:3405 fortran/intrinsic.c:4461
+#: fortran/interface.c:3421 fortran/intrinsic.c:4498
 msgid "actual argument to INTENT = OUT/INOUT"
 msgstr ""
 
-#: fortran/intrinsic.c:4815
+#: fortran/intrinsic.c:4852
 msgid "available since Fortran 77"
 msgstr ""
 
-#: fortran/intrinsic.c:4819
+#: fortran/intrinsic.c:4856
 msgid "obsolescent in Fortran 95"
 msgstr ""
 
-#: fortran/intrinsic.c:4823
+#: fortran/intrinsic.c:4860
 msgid "deleted in Fortran 95"
 msgstr ""
 
-#: fortran/intrinsic.c:4827
+#: fortran/intrinsic.c:4864
 msgid "new in Fortran 95"
 msgstr ""
 
-#: fortran/intrinsic.c:4831
+#: fortran/intrinsic.c:4868
 msgid "new in Fortran 2003"
 msgstr ""
 
-#: fortran/intrinsic.c:4835
+#: fortran/intrinsic.c:4872
 msgid "new in Fortran 2008"
 msgstr ""
 
-#: fortran/intrinsic.c:4839
+#: fortran/intrinsic.c:4876
 msgid "new in Fortran 2018"
 msgstr ""
 
-#: fortran/intrinsic.c:4843
+#: fortran/intrinsic.c:4880
 msgid "a GNU Fortran extension"
 msgstr ""
 
-#: fortran/intrinsic.c:4847
+#: fortran/intrinsic.c:4884
 msgid "for backward compatibility"
 msgstr ""
 
@@ -4081,410 +4134,436 @@ msgstr ""
 msgid "Syntax error in expression at %C"
 msgstr ""
 
-#: fortran/module.c:1246
+#: fortran/module.c:1253
 msgid "Unexpected EOF"
 msgstr ""
 
-#: fortran/module.c:1358
+#: fortran/module.c:1378
 msgid "Name too long"
 msgstr ""
 
-#: fortran/module.c:1460 fortran/module.c:1563
+#: fortran/module.c:1432 fortran/module.c:1490 fortran/module.c:1545
+#: fortran/module.c:1603
 msgid "Bad name"
 msgstr ""
 
-#: fortran/module.c:1587
+#: fortran/module.c:1627
 msgid "Expected name"
 msgstr ""
 
-#: fortran/module.c:1590
+#: fortran/module.c:1630
 msgid "Expected left parenthesis"
 msgstr ""
 
-#: fortran/module.c:1593
+#: fortran/module.c:1633
 msgid "Expected right parenthesis"
 msgstr ""
 
-#: fortran/module.c:1596
+#: fortran/module.c:1636
 msgid "Expected integer"
 msgstr ""
 
-#: fortran/module.c:1599 fortran/module.c:2699
+#: fortran/module.c:1639 fortran/module.c:2837
 msgid "Expected string"
 msgstr ""
 
-#: fortran/module.c:1624
+#: fortran/module.c:1664
 msgid "find_enum(): Enum not found"
 msgstr ""
 
-#: fortran/module.c:2177
+#: fortran/module.c:2232
 msgid "Unsupported: multiple OpenACC 'routine' levels of parallelism"
 msgstr ""
 
-#: fortran/module.c:2380
+#: fortran/module.c:2470
 msgid "Expected attribute bit name"
 msgstr ""
 
-#: fortran/module.c:3328
+#: fortran/module.c:3466
 msgid "Expected integer string"
 msgstr ""
 
-#: fortran/module.c:3332
+#: fortran/module.c:3470
 msgid "Error converting integer"
 msgstr ""
 
-#: fortran/module.c:3354
+#: fortran/module.c:3492
 msgid "Expected real string"
 msgstr ""
 
-#: fortran/module.c:3579
+#: fortran/module.c:3717
 msgid "Expected expression type"
 msgstr ""
 
-#: fortran/module.c:3659
+#: fortran/module.c:3797
 msgid "Bad operator"
 msgstr ""
 
-#: fortran/module.c:3776
+#: fortran/module.c:3914
 msgid "Bad type in constant expression"
 msgstr ""
 
-#: fortran/module.c:7160
+#: fortran/module.c:7303
 msgid "Unexpected end of module"
 msgstr ""
 
-#: fortran/parse.c:1808
+#: fortran/parse.c:1846
 msgid "arithmetic IF"
 msgstr ""
 
-#: fortran/parse.c:1817
+#: fortran/parse.c:1855
 msgid "attribute declaration"
 msgstr ""
 
-#: fortran/parse.c:1853
+#: fortran/parse.c:1891
 msgid "data declaration"
 msgstr ""
 
-#: fortran/parse.c:1871
+#: fortran/parse.c:1909
 msgid "derived type declaration"
 msgstr ""
 
-#: fortran/parse.c:1998
+#: fortran/parse.c:2036
 msgid "block IF"
 msgstr ""
 
-#: fortran/parse.c:2007
+#: fortran/parse.c:2045
 msgid "implied END DO"
 msgstr ""
 
-#: fortran/parse.c:2101 fortran/resolve.c:11874
+#: fortran/parse.c:2139 fortran/resolve.c:11928
 msgid "assignment"
 msgstr ""
 
-#: fortran/parse.c:2104 fortran/resolve.c:11926 fortran/resolve.c:11929
+#: fortran/parse.c:2142 fortran/resolve.c:11980 fortran/resolve.c:11983
 msgid "pointer assignment"
 msgstr ""
 
-#: fortran/parse.c:2128
+#: fortran/parse.c:2166
 msgid "simple IF"
 msgstr ""
 
-#: fortran/resolve.c:2318 fortran/resolve.c:2512
+#: fortran/resolve.c:2325 fortran/resolve.c:2519
 msgid "elemental procedure"
 msgstr ""
 
-#: fortran/resolve.c:2415
+#: fortran/resolve.c:2422
 msgid "allocatable argument"
 msgstr ""
 
-#: fortran/resolve.c:2420
+#: fortran/resolve.c:2427
 msgid "asynchronous argument"
 msgstr ""
 
-#: fortran/resolve.c:2425
+#: fortran/resolve.c:2432
 msgid "optional argument"
 msgstr ""
 
-#: fortran/resolve.c:2430
+#: fortran/resolve.c:2437
 msgid "pointer argument"
 msgstr ""
 
-#: fortran/resolve.c:2435
+#: fortran/resolve.c:2442
 msgid "target argument"
 msgstr ""
 
-#: fortran/resolve.c:2440
+#: fortran/resolve.c:2447
 msgid "value argument"
 msgstr ""
 
-#: fortran/resolve.c:2445
+#: fortran/resolve.c:2452
 msgid "volatile argument"
 msgstr ""
 
-#: fortran/resolve.c:2450
+#: fortran/resolve.c:2457
 msgid "assumed-shape argument"
 msgstr ""
 
-#: fortran/resolve.c:2455
+#: fortran/resolve.c:2462
 msgid "assumed-rank argument"
 msgstr ""
 
-#: fortran/resolve.c:2460
+#: fortran/resolve.c:2467
 msgid "coarray argument"
 msgstr ""
 
-#: fortran/resolve.c:2465
+#: fortran/resolve.c:2472
 msgid "parametrized derived type argument"
 msgstr ""
 
-#: fortran/resolve.c:2470
+#: fortran/resolve.c:2477
 msgid "polymorphic argument"
 msgstr ""
 
-#: fortran/resolve.c:2475
+#: fortran/resolve.c:2482
 msgid "NO_ARG_CHECK attribute"
 msgstr ""
 
 #. As assumed-type is unlimited polymorphic (cf. above).
 #. See also TS 29113, Note 6.1.
-#: fortran/resolve.c:2482
+#: fortran/resolve.c:2489
 msgid "assumed-type argument"
 msgstr ""
 
-#: fortran/resolve.c:2493
+#: fortran/resolve.c:2500
 msgid "array result"
 msgstr ""
 
-#: fortran/resolve.c:2498
+#: fortran/resolve.c:2505
 msgid "pointer or allocatable result"
 msgstr ""
 
-#: fortran/resolve.c:2505
+#: fortran/resolve.c:2512
 msgid "result with non-constant character length"
 msgstr ""
 
-#: fortran/resolve.c:2517
+#: fortran/resolve.c:2524
 msgid "bind(c) procedure"
 msgstr ""
 
-#: fortran/resolve.c:4032
+#: fortran/resolve.c:4050
 #, c-format
 msgid "Invalid context for NULL() pointer at %%L"
 msgstr ""
 
-#: fortran/resolve.c:4048
+#: fortran/resolve.c:4066
 #, c-format
 msgid "Operand of unary numeric operator %%<%s%%> at %%L is %s"
 msgstr ""
 
-#: fortran/resolve.c:4065
+#: fortran/resolve.c:4083
 #, c-format
 msgid ""
 "Unexpected derived-type entities in binary intrinsic numeric operator %%<%s"
 "%%> at %%L"
 msgstr ""
 
-#: fortran/resolve.c:4070
+#: fortran/resolve.c:4088
 #, c-format
 msgid "Operands of binary numeric operator %%<%s%%> at %%L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.c:4085
+#: fortran/resolve.c:4103
 #, c-format
 msgid "Operands of string concatenation operator at %%L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.c:4127
+#: fortran/resolve.c:4145
 #, c-format
 msgid "Operands of logical operator %%<%s%%> at %%L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.c:4150
+#: fortran/resolve.c:4168
 #, c-format
 msgid "Operand of .not. operator at %%L is %s"
 msgstr ""
 
-#: fortran/resolve.c:4164
+#: fortran/resolve.c:4182
 msgid "COMPLEX quantities cannot be compared at %L"
 msgstr ""
 
-#: fortran/resolve.c:4262
+#: fortran/resolve.c:4280
 #, c-format
 msgid "Logicals at %%L must be compared with %s instead of %s"
 msgstr ""
 
-#: fortran/resolve.c:4268
+#: fortran/resolve.c:4286
 #, c-format
 msgid "Operands of comparison operator %%<%s%%> at %%L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.c:4281
+#: fortran/resolve.c:4299
 #, c-format
 msgid "Unknown operator %%<%s%%> at %%L; did you mean '%s'?"
 msgstr ""
 
-#: fortran/resolve.c:4284
+#: fortran/resolve.c:4302
 #, c-format
 msgid "Unknown operator %%<%s%%> at %%L"
 msgstr ""
 
-#: fortran/resolve.c:4287
+#: fortran/resolve.c:4305
 #, c-format
 msgid "Operand of user operator %%<%s%%> at %%L is %s"
 msgstr ""
 
-#: fortran/resolve.c:4291
+#: fortran/resolve.c:4309
 #, c-format
 msgid "Operands of user operator %%<%s%%> at %%L are %s/%s"
 msgstr ""
 
-#: fortran/resolve.c:4377
+#: fortran/resolve.c:4395
 #, c-format
 msgid "Inconsistent ranks for operator at %%L and %%L"
 msgstr ""
 
-#: fortran/resolve.c:7193
+#: fortran/resolve.c:7234
 msgid "Loop variable"
 msgstr ""
 
-#: fortran/resolve.c:7197
+#: fortran/resolve.c:7238
 msgid "iterator variable"
 msgstr ""
 
-#: fortran/resolve.c:7201
+#: fortran/resolve.c:7242
 msgid "Start expression in DO loop"
 msgstr ""
 
-#: fortran/resolve.c:7205
+#: fortran/resolve.c:7246
 msgid "End expression in DO loop"
 msgstr ""
 
-#: fortran/resolve.c:7209
+#: fortran/resolve.c:7250
 msgid "Step expression in DO loop"
 msgstr ""
 
-#: fortran/resolve.c:7495 fortran/resolve.c:7498
+#: fortran/resolve.c:7536 fortran/resolve.c:7539
 msgid "DEALLOCATE object"
 msgstr ""
 
-#: fortran/resolve.c:7875 fortran/resolve.c:7878
+#: fortran/resolve.c:7916 fortran/resolve.c:7919
 msgid "ALLOCATE object"
 msgstr ""
 
-#: fortran/resolve.c:8111 fortran/resolve.c:10056
+#: fortran/resolve.c:8152 fortran/resolve.c:10105
 msgid "STAT variable"
 msgstr ""
 
-#: fortran/resolve.c:8155 fortran/resolve.c:10068
+#: fortran/resolve.c:8196 fortran/resolve.c:10117
 msgid "ERRMSG variable"
 msgstr ""
 
-#: fortran/resolve.c:9862
+#: fortran/resolve.c:9911
 msgid "item in READ"
 msgstr ""
 
-#: fortran/resolve.c:10080
+#: fortran/resolve.c:10129
 msgid "ACQUIRED_LOCK variable"
 msgstr ""
 
-#: fortran/trans-array.c:1676
+#: fortran/trans-array.c:1747
 #, c-format
 msgid "Different CHARACTER lengths (%ld/%ld) in array constructor"
 msgstr ""
 
-#: fortran/trans-array.c:5927
+#: fortran/trans-array.c:6020
 msgid "Integer overflow when calculating the amount of memory to allocate"
 msgstr ""
 
-#: fortran/trans-array.c:9667
+#: fortran/trans-array.c:9779
 #, c-format
 msgid ""
 "The value of the PDT LEN parameter '%s' does not agree with that in the "
 "dummy declaration"
 msgstr ""
 
-#: fortran/trans-decl.c:6196
+#: fortran/trans-decl.c:6235
 #, c-format
 msgid ""
 "Actual string length does not match the declared one for dummy argument "
 "'%s' (%ld/%ld)"
 msgstr ""
 
-#: fortran/trans-decl.c:6204
+#: fortran/trans-decl.c:6243
 #, c-format
 msgid ""
 "Actual string length is shorter than the declared one for dummy argument "
 "'%s' (%ld/%ld)"
 msgstr ""
 
-#: fortran/trans-expr.c:9537
+#: fortran/trans-expr.c:9756
 #, c-format
 msgid "Target of rank remapping is too small (%ld < %ld)"
 msgstr ""
 
-#: fortran/trans-expr.c:10951
+#: fortran/trans-expr.c:11230
 msgid "Assignment of scalar to unallocated array"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:968
+#: fortran/trans-intrinsic.c:983
 #, c-format
 msgid "Unequal character lengths (%ld/%ld) in %s"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:6359
+#: fortran/trans-intrinsic.c:6529
 #, c-format
 msgid "POS argument (%ld) out of range 0:%ld in intrinsic BTEST"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:6454
+#: fortran/trans-intrinsic.c:6624
 #, c-format
 msgid "POS argument (%ld) out of range 0:%ld in intrinsic %s"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:6501
+#: fortran/trans-intrinsic.c:6671
 #, c-format
 msgid "POS argument (%ld) out of range 0:%ld in intrinsic IBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:6511
+#: fortran/trans-intrinsic.c:6681
 #, c-format
 msgid "LEN argument (%ld) out of range 0:%ld in intrinsic IBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:6518
+#: fortran/trans-intrinsic.c:6688
 #, c-format
 msgid "POS(%ld)+LEN(%ld)>BIT_SIZE(%ld) in intrinsic IBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:6662
+#: fortran/trans-intrinsic.c:6832
 #, c-format
 msgid "SHIFT argument (%ld) out of range 0:%ld in intrinsic %s"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:6730
+#: fortran/trans-intrinsic.c:6900
 #, c-format
 msgid "SHIFT argument (%ld) out of range -%ld:%ld in intrinsic ISHFT"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:6796
+#: fortran/trans-intrinsic.c:6966
 #, c-format
 msgid "SIZE argument (%ld) out of range 1:%ld in intrinsic ISHFTC"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:6804 fortran/trans-intrinsic.c:6849
+#: fortran/trans-intrinsic.c:6974 fortran/trans-intrinsic.c:7019
 #, c-format
 msgid "SHIFT argument (%ld) out of range -%ld:%ld in intrinsic ISHFTC"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:9118
+#: fortran/trans-intrinsic.c:9323
 #, c-format
 msgid "Argument NCOPIES of REPEAT intrinsic is negative (its value is %ld)"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:9150
+#: fortran/trans-intrinsic.c:9355
 msgid "Argument NCOPIES of REPEAT intrinsic is too large"
 msgstr ""
 
+#: fortran/trans-intrinsic.c:12044
+#, c-format
+msgid "FROMPOS argument (%ld) out of range 0:%d in intrinsic MVBITS"
+msgstr ""
+
+#: fortran/trans-intrinsic.c:12056
+#, c-format
+msgid "LEN argument (%ld) out of range 0:%d in intrinsic MVBITS"
+msgstr ""
+
+#: fortran/trans-intrinsic.c:12068
+#, c-format
+msgid "TOPOS argument (%ld) out of range 0:%d in intrinsic MVBITS"
+msgstr ""
+
+#: fortran/trans-intrinsic.c:12080
+#, c-format
+msgid "FROMPOS(%ld)+LEN(%ld)>BIT_SIZE(%d) in intrinsic MVBITS"
+msgstr ""
+
+#: fortran/trans-intrinsic.c:12088
+#, c-format
+msgid "TOPOS(%ld)+LEN(%ld)>BIT_SIZE(%d) in intrinsic MVBITS"
+msgstr ""
+
 #: fortran/trans-io.c:587
 msgid "Unit number in I/O statement too small"
 msgstr ""
@@ -4497,20 +4576,20 @@ msgstr ""
 msgid "Assigned label is not a target label"
 msgstr ""
 
-#: fortran/trans-stmt.c:1251
+#: fortran/trans-stmt.c:1278
 #, c-format
 msgid "Invalid image number %d in SYNC IMAGES"
 msgstr ""
 
-#: fortran/trans-stmt.c:2411
+#: fortran/trans-stmt.c:2439
 msgid "Loop iterates infinitely"
 msgstr ""
 
-#: fortran/trans-stmt.c:2431 fortran/trans-stmt.c:2687
+#: fortran/trans-stmt.c:2459 fortran/trans-stmt.c:2715
 msgid "Loop variable has been modified"
 msgstr ""
 
-#: fortran/trans-stmt.c:2540
+#: fortran/trans-stmt.c:2568
 msgid "DO step value is zero"
 msgstr ""
 
@@ -4522,26 +4601,26 @@ msgstr ""
 msgid "Incorrect function return value"
 msgstr ""
 
-#: fortran/trans.c:659 fortran/trans.c:734
+#: fortran/trans.c:714 fortran/trans.c:789
 #, c-format
 msgid "Error allocating %lu bytes"
 msgstr ""
 
-#: fortran/trans.c:943
+#: fortran/trans.c:998
 #, c-format
 msgid "Attempting to allocate already allocated variable '%s'"
 msgstr ""
 
-#: fortran/trans.c:949
+#: fortran/trans.c:1004
 msgid "Attempting to allocate already allocated variable"
 msgstr ""
 
-#: fortran/trans.c:1399 fortran/trans.c:1558
+#: fortran/trans.c:1454 fortran/trans.c:1613
 #, c-format
 msgid "Attempt to DEALLOCATE unallocated '%s'"
 msgstr ""
 
-#: fortran/trans.c:1716
+#: fortran/trans.c:1771
 #, c-format
 msgid "Error reallocating to %lu bytes"
 msgstr ""
@@ -4613,47 +4692,51 @@ msgstr ""
 msgid "short read while reading export data"
 msgstr ""
 
-#: gcc.c:796 gcc.c:800 gcc.c:855
+#: gcc.c:822 gcc.c:826 gcc.c:881
 msgid "-gz is not supported in this configuration"
 msgstr ""
 
-#: gcc.c:806 gcc.c:866
+#: gcc.c:832 gcc.c:892
 msgid "-gz=zlib is not supported in this configuration"
 msgstr ""
 
-#: gcc.c:1016
+#: gcc.c:1085
 msgid "-fuse-linker-plugin is not supported in this configuration"
 msgstr ""
 
-#: gcc.c:1031
+#: gcc.c:1101
 msgid "cannot specify -static with -fsanitize=address"
 msgstr ""
 
-#: gcc.c:1033
+#: gcc.c:1103
+msgid "cannot specify -static with -fsanitize=hwaddress"
+msgstr ""
+
+#: gcc.c:1105
 msgid "cannot specify -static with -fsanitize=thread"
 msgstr ""
 
-#: gcc.c:1055
+#: gcc.c:1127
 msgid "-fvtable-verify=std is not supported in this configuration"
 msgstr ""
 
-#: gcc.c:1057
+#: gcc.c:1129
 msgid "-fvtable-verify=preinit is not supported in this configuration"
 msgstr ""
 
-#: gcc.c:1192 ada/gcc-interface/lang-specs.h:37
+#: gcc.c:1266 ada/gcc-interface/lang-specs.h:37
 msgid "-pg and -fomit-frame-pointer are incompatible"
 msgstr ""
 
-#: gcc.c:1361
+#: gcc.c:1436
 msgid "GNU C no longer supports -traditional without -E"
 msgstr ""
 
-#: gcc.c:1370
+#: gcc.c:1445
 msgid "-E or -x required when input is from standard input"
 msgstr ""
 
-#: config/darwin.h:132 config/darwin.h:480
+#: config/darwin.h:132 config/darwin.h:498
 msgid "gsplit-dwarf is not supported on this platform"
 msgstr ""
 
@@ -4669,35 +4752,35 @@ msgstr ""
 msgid "rdynamic is not supported"
 msgstr ""
 
-#: config/darwin.h:300
+#: config/darwin.h:311
 msgid "-current_version only allowed with -dynamiclib"
 msgstr ""
 
-#: config/darwin.h:302
+#: config/darwin.h:313
 msgid "-install_name only allowed with -dynamiclib"
 msgstr ""
 
-#: config/darwin.h:307
+#: config/darwin.h:318
 msgid "-bundle not allowed with -dynamiclib"
 msgstr ""
 
-#: config/darwin.h:308
+#: config/darwin.h:319
 msgid "-bundle_loader not allowed with -dynamiclib"
 msgstr ""
 
-#: config/darwin.h:309
+#: config/darwin.h:320
 msgid "-client_name not allowed with -dynamiclib"
 msgstr ""
 
-#: config/darwin.h:314
+#: config/darwin.h:325
 msgid "-force_flat_namespace not allowed with -dynamiclib"
 msgstr ""
 
-#: config/darwin.h:316
+#: config/darwin.h:327
 msgid "-keep_private_externs not allowed with -dynamiclib"
 msgstr ""
 
-#: config/darwin.h:317
+#: config/darwin.h:328
 msgid "-private_bundle not allowed with -dynamiclib"
 msgstr ""
 
@@ -4718,11 +4801,11 @@ msgstr ""
 msgid "does not support multilib"
 msgstr ""
 
-#: config/sol2.h:452
+#: config/sol2.h:449
 msgid "-pie is not supported in this configuration"
 msgstr ""
 
-#: config/vxworks.h:139
+#: config/vxworks.h:151
 msgid "-Xbind-now and -Xbind-lazy are incompatible"
 msgstr ""
 
@@ -4788,11 +4871,11 @@ msgstr ""
 msgid "this target is little-endian"
 msgstr ""
 
-#: config/msp430/msp430.h:92
+#: config/msp430/msp430.h:90
 msgid "-mcode-region requires the large memory model (-mlarge)"
 msgstr ""
 
-#: config/msp430/msp430.h:94
+#: config/msp430/msp430.h:92
 msgid "-mdata-region requires the large memory model (-mlarge)"
 msgstr ""
 
@@ -4814,7 +4897,7 @@ msgstr ""
 msgid "  profiling support are only provided in archive format"
 msgstr ""
 
-#: config/rs6000/freebsd64.h:173
+#: config/rs6000/freebsd64.h:114
 msgid "consider using `-pg' instead of `-p' with gprof(1)"
 msgstr ""
 
@@ -4842,11 +4925,11 @@ msgstr ""
 msgid "SH2a does not support little-endian"
 msgstr ""
 
-#: config/sparc/linux64.h:148
+#: config/sparc/linux64.h:142
 msgid "-fsanitize=address is not supported in this configuration"
 msgstr ""
 
-#: config/sparc/linux64.h:162 config/sparc/linux64.h:168
+#: config/sparc/linux64.h:156 config/sparc/linux64.h:162
 #: config/sparc/netbsd-elf.h:108 config/sparc/netbsd-elf.h:117
 #: config/sparc/sol2.h:237 config/sparc/sol2.h:243
 msgid "may not use both -m32 and -m64"
@@ -4915,11 +4998,11 @@ msgstr ""
 msgid "Warn about creation of array temporaries."
 msgstr ""
 
-#: fortran/lang.opt:214 fortran/lang.opt:518 config/alpha/alpha.opt:31
-#: common.opt:661 common.opt:799 common.opt:1017 common.opt:1021
-#: common.opt:1025 common.opt:1029 common.opt:1675 common.opt:1731
-#: common.opt:1863 common.opt:1867 common.opt:2101 common.opt:2307
-#: common.opt:3020
+#: fortran/lang.opt:214 fortran/lang.opt:522 config/alpha/alpha.opt:31
+#: common.opt:661 common.opt:799 common.opt:1025 common.opt:1029
+#: common.opt:1033 common.opt:1037 common.opt:1687 common.opt:1743
+#: common.opt:1882 common.opt:1886 common.opt:2124 common.opt:2338
+#: common.opt:3054
 #, no-c-format
 msgid "Does nothing. Preserved for backward compatibility."
 msgstr ""
@@ -5152,428 +5235,433 @@ msgstr ""
 
 #: fortran/lang.opt:457
 #, no-c-format
-msgid "Enable all DEC language extensions."
+msgid "Issue debug information for compiler-generated auxiliary variables."
 msgstr ""
 
 #: fortran/lang.opt:461
 #, no-c-format
-msgid "Enable the use of blank format items in format strings."
+msgid "Enable all DEC language extensions."
 msgstr ""
 
 #: fortran/lang.opt:465
 #, no-c-format
+msgid "Enable the use of blank format items in format strings."
+msgstr ""
+
+#: fortran/lang.opt:469
+#, no-c-format
 msgid ""
 "Enable the use of character literals in assignments and data statements for "
 "non-character variables."
 msgstr ""
 
-#: fortran/lang.opt:470
+#: fortran/lang.opt:474
 #, no-c-format
 msgid "Enable legacy parsing of INCLUDE as statement."
 msgstr ""
 
-#: fortran/lang.opt:474
+#: fortran/lang.opt:478
 #, no-c-format
 msgid "Enable default widths for i, f and g format specifiers."
 msgstr ""
 
-#: fortran/lang.opt:478
+#: fortran/lang.opt:482
 #, no-c-format
 msgid "Enable kind-specific variants of integer intrinsic functions."
 msgstr ""
 
-#: fortran/lang.opt:482
+#: fortran/lang.opt:486
 #, no-c-format
 msgid "Enable legacy math intrinsics for compatibility."
 msgstr ""
 
-#: fortran/lang.opt:486
+#: fortran/lang.opt:490
 #, no-c-format
 msgid "Enable support for DEC STRUCTURE/RECORD."
 msgstr ""
 
-#: fortran/lang.opt:490
+#: fortran/lang.opt:494
 #, no-c-format
 msgid "Enable DEC-style STATIC and AUTOMATIC attributes."
 msgstr ""
 
-#: fortran/lang.opt:494
+#: fortran/lang.opt:498
 #, no-c-format
 msgid "Set the default double precision kind to an 8 byte wide type."
 msgstr ""
 
-#: fortran/lang.opt:498
+#: fortran/lang.opt:502
 #, no-c-format
 msgid "Set the default integer kind to an 8 byte wide type."
 msgstr ""
 
-#: fortran/lang.opt:502
+#: fortran/lang.opt:506
 #, no-c-format
 msgid "Set the default real kind to an 8 byte wide type."
 msgstr ""
 
-#: fortran/lang.opt:506
+#: fortran/lang.opt:510
 #, no-c-format
 msgid "Set the default real kind to an 10 byte wide type."
 msgstr ""
 
-#: fortran/lang.opt:510
+#: fortran/lang.opt:514
 #, no-c-format
 msgid "Set the default real kind to an 16 byte wide type."
 msgstr ""
 
-#: fortran/lang.opt:514
+#: fortran/lang.opt:518
 #, no-c-format
 msgid "Allow dollar signs in entity names."
 msgstr ""
 
-#: fortran/lang.opt:522
+#: fortran/lang.opt:526
 #, no-c-format
 msgid "Display the code tree after parsing."
 msgstr ""
 
-#: fortran/lang.opt:526
+#: fortran/lang.opt:530
 #, no-c-format
 msgid "Display the code tree after front end optimization."
 msgstr ""
 
-#: fortran/lang.opt:530
+#: fortran/lang.opt:534
 #, no-c-format
 msgid "Display the global symbol table after parsing."
 msgstr ""
 
-#: fortran/lang.opt:534
+#: fortran/lang.opt:538
 #, no-c-format
 msgid "Display the code tree after parsing; deprecated option."
 msgstr ""
 
-#: fortran/lang.opt:538
+#: fortran/lang.opt:542
 #, no-c-format
 msgid ""
 "Specify that an external BLAS library should be used for matmul calls on "
 "large-size arrays."
 msgstr ""
 
-#: fortran/lang.opt:542
+#: fortran/lang.opt:546
 #, no-c-format
 msgid "Use f2c calling convention."
 msgstr ""
 
-#: fortran/lang.opt:546
+#: fortran/lang.opt:550
 #, no-c-format
 msgid "Assume that the source file is fixed form."
 msgstr ""
 
-#: fortran/lang.opt:550
+#: fortran/lang.opt:554
 #, no-c-format
 msgid "Force creation of temporary to test infrequently-executed forall code."
 msgstr ""
 
-#: fortran/lang.opt:554
+#: fortran/lang.opt:558
 #, no-c-format
 msgid "Interpret any INTEGER(4) as an INTEGER(8)."
 msgstr ""
 
-#: fortran/lang.opt:558 fortran/lang.opt:562
+#: fortran/lang.opt:562 fortran/lang.opt:566
 #, no-c-format
 msgid "Specify where to find the compiled intrinsic modules."
 msgstr ""
 
-#: fortran/lang.opt:566
+#: fortran/lang.opt:570
 #, no-c-format
 msgid "Allow arbitrary character line width in fixed mode."
 msgstr ""
 
-#: fortran/lang.opt:570
+#: fortran/lang.opt:574
 #, no-c-format
 msgid "-ffixed-line-length-<n>\tUse n as character line width in fixed mode."
 msgstr ""
 
-#: fortran/lang.opt:574
+#: fortran/lang.opt:578
 #, no-c-format
 msgid "Pad shorter fixed form lines to line width with spaces."
 msgstr ""
 
-#: fortran/lang.opt:578
+#: fortran/lang.opt:582
 #, no-c-format
 msgid "-ffpe-trap=[...]\tStop on following floating point exceptions."
 msgstr ""
 
-#: fortran/lang.opt:582
+#: fortran/lang.opt:586
 #, no-c-format
 msgid "-ffpe-summary=[...]\tPrint summary of floating point exceptions."
 msgstr ""
 
-#: fortran/lang.opt:586
+#: fortran/lang.opt:590
 #, no-c-format
 msgid "Assume that the source file is free form."
 msgstr ""
 
-#: fortran/lang.opt:590
+#: fortran/lang.opt:594
 #, no-c-format
 msgid "Allow arbitrary character line width in free mode."
 msgstr ""
 
-#: fortran/lang.opt:594
+#: fortran/lang.opt:598
 #, no-c-format
 msgid "-ffree-line-length-<n>\tUse n as character line width in free mode."
 msgstr ""
 
-#: fortran/lang.opt:598
+#: fortran/lang.opt:602
 #, no-c-format
 msgid "Try to interchange loops if profitable."
 msgstr ""
 
-#: fortran/lang.opt:602
+#: fortran/lang.opt:606
 #, no-c-format
 msgid "Enable front end optimization."
 msgstr ""
 
-#: fortran/lang.opt:606
+#: fortran/lang.opt:610
 #, no-c-format
 msgid ""
 "Specify that no implicit typing is allowed, unless overridden by explicit "
 "IMPLICIT statements."
 msgstr ""
 
-#: fortran/lang.opt:610
+#: fortran/lang.opt:614
 #, no-c-format
 msgid ""
 "-finit-character=<n>\tInitialize local character variables to ASCII value n."
 msgstr ""
 
-#: fortran/lang.opt:614
+#: fortran/lang.opt:618
 #, no-c-format
 msgid ""
 "Initialize components of derived type variables according to other init "
 "flags."
 msgstr ""
 
-#: fortran/lang.opt:618
+#: fortran/lang.opt:622
 #, no-c-format
 msgid "-finit-integer=<n>\tInitialize local integer variables to n."
 msgstr ""
 
-#: fortran/lang.opt:622
+#: fortran/lang.opt:626
 #, no-c-format
 msgid "Initialize local variables to zero (from g77)."
 msgstr ""
 
-#: fortran/lang.opt:626
+#: fortran/lang.opt:630
 #, no-c-format
 msgid "-finit-logical=<true|false>\tInitialize local logical variables."
 msgstr ""
 
-#: fortran/lang.opt:630
+#: fortran/lang.opt:634
 #, no-c-format
 msgid "-finit-real=<zero|snan|nan|inf|-inf>\tInitialize local real variables."
 msgstr ""
 
-#: fortran/lang.opt:652
+#: fortran/lang.opt:656
 #, no-c-format
 msgid "-finline-arg-packing\tPerform argument packing inline."
 msgstr ""
 
-#: fortran/lang.opt:656
+#: fortran/lang.opt:660
 #, no-c-format
 msgid ""
 "-finline-matmul-limit=<n>\tSpecify the size of the largest matrix for which "
 "matmul will be inlined."
 msgstr ""
 
-#: fortran/lang.opt:660
+#: fortran/lang.opt:664
 #, no-c-format
 msgid ""
 "-fmax-array-constructor=<n>\tMaximum number of objects in an array "
 "constructor."
 msgstr ""
 
-#: fortran/lang.opt:664
+#: fortran/lang.opt:668
 #, no-c-format
 msgid "-fmax-identifier-length=<n>\tMaximum identifier length."
 msgstr ""
 
-#: fortran/lang.opt:668
+#: fortran/lang.opt:672
 #, no-c-format
 msgid "-fmax-subrecord-length=<n>\tMaximum length for subrecords."
 msgstr ""
 
-#: fortran/lang.opt:672
+#: fortran/lang.opt:676
 #, no-c-format
 msgid ""
 "-fmax-stack-var-size=<n>\tSize in bytes of the largest array that will be "
 "put on the stack."
 msgstr ""
 
-#: fortran/lang.opt:676
+#: fortran/lang.opt:680
 #, no-c-format
 msgid "Put all local arrays on stack."
 msgstr ""
 
-#: fortran/lang.opt:680
+#: fortran/lang.opt:684
 #, no-c-format
 msgid "Set default accessibility of module entities to PRIVATE."
 msgstr ""
 
-#: fortran/lang.opt:700
+#: fortran/lang.opt:708
 #, no-c-format
 msgid "Try to lay out derived types as compactly as possible."
 msgstr ""
 
-#: fortran/lang.opt:708
+#: fortran/lang.opt:716
 #, no-c-format
 msgid "Protect parentheses in expressions."
 msgstr ""
 
-#: fortran/lang.opt:712
+#: fortran/lang.opt:720
 #, no-c-format
 msgid ""
 "Path to header file that should be pre-included before each compilation unit."
 msgstr ""
 
-#: fortran/lang.opt:716
+#: fortran/lang.opt:724
 #, no-c-format
 msgid "Enable range checking during compilation."
 msgstr ""
 
-#: fortran/lang.opt:720
+#: fortran/lang.opt:728
 #, no-c-format
 msgid "Interpret any REAL(4) as a REAL(8)."
 msgstr ""
 
-#: fortran/lang.opt:724
+#: fortran/lang.opt:732
 #, no-c-format
 msgid "Interpret any REAL(4) as a REAL(10)."
 msgstr ""
 
-#: fortran/lang.opt:728
+#: fortran/lang.opt:736
 #, no-c-format
 msgid "Interpret any REAL(4) as a REAL(16)."
 msgstr ""
 
-#: fortran/lang.opt:732
+#: fortran/lang.opt:740
 #, no-c-format
 msgid "Interpret any REAL(8) as a REAL(4)."
 msgstr ""
 
-#: fortran/lang.opt:736
+#: fortran/lang.opt:744
 #, no-c-format
 msgid "Interpret any REAL(8) as a REAL(10)."
 msgstr ""
 
-#: fortran/lang.opt:740
+#: fortran/lang.opt:748
 #, no-c-format
 msgid "Interpret any REAL(8) as a REAL(16)."
 msgstr ""
 
-#: fortran/lang.opt:744
+#: fortran/lang.opt:752
 #, no-c-format
 msgid "Reallocate the LHS in assignments."
 msgstr ""
 
-#: fortran/lang.opt:748
+#: fortran/lang.opt:756
 #, no-c-format
 msgid "Use a 4-byte record marker for unformatted files."
 msgstr ""
 
-#: fortran/lang.opt:752
+#: fortran/lang.opt:760
 #, no-c-format
 msgid "Use an 8-byte record marker for unformatted files."
 msgstr ""
 
-#: fortran/lang.opt:756
+#: fortran/lang.opt:764
 #, no-c-format
 msgid "Allocate local variables on the stack to allow indirect recursion."
 msgstr ""
 
-#: fortran/lang.opt:760
+#: fortran/lang.opt:768
 #, no-c-format
 msgid "Copy array sections into a contiguous block on procedure entry."
 msgstr ""
 
-#: fortran/lang.opt:764
+#: fortran/lang.opt:772
 #, no-c-format
 msgid ""
 "-fcoarray=<none|single|lib>\tSpecify which coarray parallelization should be "
 "used."
 msgstr ""
 
-#: fortran/lang.opt:780
+#: fortran/lang.opt:788
 #, no-c-format
 msgid "-fcheck=[...]\tSpecify which runtime checks are to be performed."
 msgstr ""
 
-#: fortran/lang.opt:784
+#: fortran/lang.opt:792
 #, no-c-format
 msgid "Append a second underscore if the name already contains an underscore."
 msgstr ""
 
-#: fortran/lang.opt:792
+#: fortran/lang.opt:800
 #, no-c-format
 msgid "Apply negative sign to zero values."
 msgstr ""
 
-#: fortran/lang.opt:799
+#: fortran/lang.opt:807
 #, no-c-format
 msgid ""
 "Disallow tail call optimization when a calling routine may have omitted "
 "character lengths."
 msgstr ""
 
-#: fortran/lang.opt:803
+#: fortran/lang.opt:811
 #, no-c-format
 msgid "Append underscores to externally visible names."
 msgstr ""
 
-#: fortran/lang.opt:807 c-family/c.opt:1465 c-family/c.opt:1497
-#: c-family/c.opt:1505 c-family/c.opt:1757 config/pa/pa.opt:42
-#: config/pa/pa.opt:74 common.opt:1099 common.opt:1103 common.opt:1107
-#: common.opt:1194 common.opt:1467 common.opt:1546 common.opt:1819
-#: common.opt:1950 common.opt:1993 common.opt:2382 common.opt:2418
-#: common.opt:2511 common.opt:2515 common.opt:2624 common.opt:2715
-#: common.opt:2723 common.opt:2731 common.opt:2739 common.opt:2840
-#: common.opt:2896 common.opt:2984 common.opt:3121 common.opt:3125
-#: common.opt:3129 common.opt:3133
+#: fortran/lang.opt:815 c-family/c.opt:1539 c-family/c.opt:1571
+#: c-family/c.opt:1579 c-family/c.opt:1895 config/pa/pa.opt:42
+#: config/pa/pa.opt:74 common.opt:623 common.opt:1107 common.opt:1111
+#: common.opt:1115 common.opt:1202 common.opt:1479 common.opt:1558
+#: common.opt:1834 common.opt:1973 common.opt:2016 common.opt:2413
+#: common.opt:2449 common.opt:2542 common.opt:2546 common.opt:2655
+#: common.opt:2746 common.opt:2754 common.opt:2762 common.opt:2770
+#: common.opt:2871 common.opt:2927 common.opt:3015 common.opt:3159
+#: common.opt:3163 common.opt:3167 common.opt:3171
 #, no-c-format
 msgid "Does nothing.  Preserved for backward compatibility."
 msgstr ""
 
-#: fortran/lang.opt:847
+#: fortran/lang.opt:855
 #, no-c-format
 msgid "Statically link the GNU Fortran helper library (libgfortran)."
 msgstr ""
 
-#: fortran/lang.opt:851
+#: fortran/lang.opt:859
 #, no-c-format
 msgid "Conform to the ISO Fortran 2003 standard."
 msgstr ""
 
-#: fortran/lang.opt:855
+#: fortran/lang.opt:863
 #, no-c-format
 msgid "Conform to the ISO Fortran 2008 standard."
 msgstr ""
 
-#: fortran/lang.opt:859
+#: fortran/lang.opt:867
 #, no-c-format
 msgid "Conform to the ISO Fortran 2008 standard including TS 29113."
 msgstr ""
 
-#: fortran/lang.opt:863
+#: fortran/lang.opt:871
 #, no-c-format
 msgid "Conform to the ISO Fortran 2018 standard."
 msgstr ""
 
-#: fortran/lang.opt:867
+#: fortran/lang.opt:875
 #, no-c-format
 msgid "Conform to the ISO Fortran 95 standard."
 msgstr ""
 
-#: fortran/lang.opt:871
+#: fortran/lang.opt:879
 #, no-c-format
 msgid "Conform to nothing in particular."
 msgstr ""
 
-#: fortran/lang.opt:875
+#: fortran/lang.opt:883
 #, no-c-format
 msgid "Accept extensions to support legacy code."
 msgstr ""
@@ -5654,709 +5742,778 @@ msgstr ""
 
 #: c-family/c.opt:241
 #, no-c-format
+msgid "Generate C++ Module dependency information."
+msgstr ""
+
+#: c-family/c.opt:249
+#, no-c-format
 msgid "Generate phony targets for all headers."
 msgstr ""
 
-#: c-family/c.opt:245
+#: c-family/c.opt:253
 #, no-c-format
-msgid "-MQ <target>\tAdd a MAKE-quoted target."
+msgid "-MQ <target>\tAdd a target that may require quoting."
 msgstr ""
 
-#: c-family/c.opt:249
+#: c-family/c.opt:257
 #, no-c-format
-msgid "-MT <target>\tAdd an unquoted target."
+msgid "-MT <target>\tAdd a target that does not require quoting."
 msgstr ""
 
-#: c-family/c.opt:253
+#: c-family/c.opt:261
 #, no-c-format
 msgid "Do not generate #line directives."
 msgstr ""
 
-#: c-family/c.opt:257
+#: c-family/c.opt:265
 #, no-c-format
 msgid "-U<macro>\tUndefine <macro>."
 msgstr ""
 
-#: c-family/c.opt:261
+#: c-family/c.opt:269
+#, no-c-format
+msgid "Warn if the NSObject attribute is applied to a non-typedef."
+msgstr ""
+
+#: c-family/c.opt:273
 #, no-c-format
 msgid ""
 "Warn about things that will change when compiling with an ABI-compliant "
 "compiler."
 msgstr ""
 
-#: c-family/c.opt:265
+#: c-family/c.opt:277
 #, no-c-format
 msgid ""
 "Warn about things that change between the current -fabi-version and the "
 "specified version."
 msgstr ""
 
-#: c-family/c.opt:269
+#: c-family/c.opt:281
 #, no-c-format
 msgid ""
 "Warn if a subobject has an abi_tag attribute that the complete object type "
 "does not have."
 msgstr ""
 
-#: c-family/c.opt:276
+#: c-family/c.opt:288
 #, no-c-format
 msgid ""
 "Warn on suspicious calls of standard functions computing absolute values."
 msgstr ""
 
-#: c-family/c.opt:280
+#: c-family/c.opt:292
 #, no-c-format
 msgid "Warn about suspicious uses of memory addresses."
 msgstr ""
 
-#: c-family/c.opt:296
+#: c-family/c.opt:308
 #, no-c-format
 msgid "Warn about 'new' of type with extended alignment without -faligned-new."
 msgstr ""
 
-#: c-family/c.opt:300
+#: c-family/c.opt:312
 #, no-c-format
 msgid ""
 "-Waligned-new=[none|global|all]\tWarn even if 'new' uses a class member "
 "allocation function."
 msgstr ""
 
-#: c-family/c.opt:304 ada/gcc-interface/lang.opt:57
+#: c-family/c.opt:316 ada/gcc-interface/lang.opt:57
 #, no-c-format
 msgid "Enable most warning messages."
 msgstr ""
 
-#: c-family/c.opt:308
+#: c-family/c.opt:320
 #, no-c-format
 msgid "Warn on any use of alloca."
 msgstr ""
 
-#: c-family/c.opt:312
+#: c-family/c.opt:324
 #, no-c-format
 msgid ""
 "-Walloc-size-larger-than=<bytes>\tWarn for calls to allocation functions "
 "that attempt to allocate objects larger than the specified number of bytes."
 msgstr ""
 
-#: c-family/c.opt:317
+#: c-family/c.opt:329
 #, no-c-format
 msgid ""
 "Disable Walloc-size-larger-than= warning.  Equivalent to Walloc-size-larger-"
 "than=<SIZE_MAX> or larger."
 msgstr ""
 
-#: c-family/c.opt:321
+#: c-family/c.opt:333
 #, no-c-format
 msgid "Warn for calls to allocation functions that specify zero bytes."
 msgstr ""
 
-#: c-family/c.opt:325
+#: c-family/c.opt:337
 #, no-c-format
 msgid ""
 "-Walloca-larger-than=<number>\tWarn on unbounded uses of alloca, and on "
 "bounded uses of alloca whose bound can be larger than <number> bytes."
 msgstr ""
 
-#: c-family/c.opt:331
+#: c-family/c.opt:343
 #, no-c-format
 msgid ""
 "Disable Walloca-larger-than= warning.  Equivalent to Walloca-larger-"
 "than=<SIZE_MAX> or larger."
 msgstr ""
 
-#: c-family/c.opt:343
+#: c-family/c.opt:355 c-family/c.opt:359
+#, no-c-format
+msgid ""
+"Warn about mismatched declarations of array parameters and unsafe accesses "
+"to them."
+msgstr ""
+
+#: c-family/c.opt:363
 #, no-c-format
 msgid "Warn about accesses to interior zero-length array members."
 msgstr ""
 
-#: c-family/c.opt:347
+#: c-family/c.opt:367
 #, no-c-format
 msgid ""
 "Warn whenever an Objective-C assignment is being intercepted by the garbage "
 "collector."
 msgstr ""
 
-#: c-family/c.opt:351
+#: c-family/c.opt:371
 #, no-c-format
 msgid "Warn about casting functions to incompatible types."
 msgstr ""
 
-#: c-family/c.opt:355
+#: c-family/c.opt:375
 #, no-c-format
 msgid ""
 "Warn about boolean expression compared with an integer value different from "
 "true/false."
 msgstr ""
 
-#: c-family/c.opt:359
+#: c-family/c.opt:379
 #, no-c-format
 msgid "Warn about certain operations on boolean expressions."
 msgstr ""
 
-#: c-family/c.opt:363
+#: c-family/c.opt:383
 #, no-c-format
 msgid ""
 "Warn when __builtin_frame_address or __builtin_return_address is used "
 "unsafely."
 msgstr ""
 
-#: c-family/c.opt:367
+#: c-family/c.opt:387
 #, no-c-format
 msgid "Warn when a built-in function is declared with the wrong signature."
 msgstr ""
 
-#: c-family/c.opt:371
+#: c-family/c.opt:391
 #, no-c-format
 msgid "Warn when a built-in preprocessor macro is undefined or redefined."
 msgstr ""
 
-#: c-family/c.opt:375
+#: c-family/c.opt:395
 #, no-c-format
 msgid "Warn about features not present in ISO C11, but present in ISO C2X."
 msgstr ""
 
-#: c-family/c.opt:379
+#: c-family/c.opt:399
 #, no-c-format
 msgid "Warn about features not present in ISO C90, but present in ISO C99."
 msgstr ""
 
-#: c-family/c.opt:383
+#: c-family/c.opt:403
 #, no-c-format
 msgid "Warn about features not present in ISO C99, but present in ISO C11."
 msgstr ""
 
-#: c-family/c.opt:387
+#: c-family/c.opt:407
 #, no-c-format
 msgid "Warn about C constructs that are not in the common subset of C and C++."
 msgstr ""
 
-#: c-family/c.opt:394
+#: c-family/c.opt:414
 #, no-c-format
 msgid ""
 "Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO "
 "C++ 2011."
 msgstr ""
 
-#: c-family/c.opt:398
+#: c-family/c.opt:418
 #, no-c-format
 msgid ""
 "Warn about C++ constructs whose meaning differs between ISO C++ 2011 and ISO "
 "C++ 2014."
 msgstr ""
 
-#: c-family/c.opt:405
+#: c-family/c.opt:425
 #, no-c-format
 msgid ""
 "Warn about C++ constructs whose meaning differs between ISO C++ 2014 and ISO "
 "C++ 2017."
 msgstr ""
 
-#: c-family/c.opt:412
+#: c-family/c.opt:432
 #, no-c-format
 msgid ""
 "Warn about C++ constructs whose meaning differs between ISO C++ 2017 and ISO "
 "C++ 2020."
 msgstr ""
 
-#: c-family/c.opt:416
+#: c-family/c.opt:436
 #, no-c-format
 msgid "Warn about casts between incompatible function types."
 msgstr ""
 
-#: c-family/c.opt:420
+#: c-family/c.opt:440
 #, no-c-format
 msgid "Warn about casts which discard qualifiers."
 msgstr ""
 
-#: c-family/c.opt:424 c-family/c.opt:428
+#: c-family/c.opt:444 c-family/c.opt:448
 #, no-c-format
 msgid "Warn about catch handlers of non-reference type."
 msgstr ""
 
-#: c-family/c.opt:432
+#: c-family/c.opt:452
 #, no-c-format
 msgid "Warn about subscripts whose type is \"char\"."
 msgstr ""
 
-#: c-family/c.opt:436 c-family/c.opt:1362 c-family/c.opt:1366
-#: c-family/c.opt:1370 c-family/c.opt:1374 c-family/c.opt:1378
-#: c-family/c.opt:1382 c-family/c.opt:1386 c-family/c.opt:1393
-#: c-family/c.opt:1397 c-family/c.opt:1401 c-family/c.opt:1405
-#: c-family/c.opt:1409 c-family/c.opt:1413 c-family/c.opt:1417
-#: c-family/c.opt:1421 c-family/c.opt:1425 c-family/c.opt:1429
-#: c-family/c.opt:1433 c-family/c.opt:1437 c-family/c.opt:1441
-#: config/i386/i386.opt:965
+#: c-family/c.opt:456 c-family/c.opt:1436 c-family/c.opt:1440
+#: c-family/c.opt:1444 c-family/c.opt:1448 c-family/c.opt:1452
+#: c-family/c.opt:1456 c-family/c.opt:1460 c-family/c.opt:1467
+#: c-family/c.opt:1471 c-family/c.opt:1475 c-family/c.opt:1479
+#: c-family/c.opt:1483 c-family/c.opt:1487 c-family/c.opt:1491
+#: c-family/c.opt:1495 c-family/c.opt:1499 c-family/c.opt:1503
+#: c-family/c.opt:1507 c-family/c.opt:1511 c-family/c.opt:1515
+#: config/i386/i386.opt:979
 #, no-c-format
 msgid "Removed in GCC 9.  This switch has no effect."
 msgstr ""
 
-#: c-family/c.opt:440
+#: c-family/c.opt:460
 #, no-c-format
 msgid "Warn about variables that might be changed by \"longjmp\" or \"vfork\"."
 msgstr ""
 
-#: c-family/c.opt:444
+#: c-family/c.opt:464
 #, no-c-format
 msgid "Warn about uses of a comma operator within a subscripting expression."
 msgstr ""
 
-#: c-family/c.opt:448
+#: c-family/c.opt:468
 #, no-c-format
 msgid ""
 "Warn about possibly nested block comments, and C++ comments spanning more "
 "than one physical line."
 msgstr ""
 
-#: c-family/c.opt:452
+#: c-family/c.opt:472
 #, no-c-format
 msgid "Synonym for -Wcomment."
 msgstr ""
 
-#: c-family/c.opt:456
+#: c-family/c.opt:476
 #, no-c-format
 msgid "Warn for conditionally-supported constructs."
 msgstr ""
 
-#: c-family/c.opt:460
+#: c-family/c.opt:480
 #, no-c-format
 msgid "Warn for implicit type conversions that may change a value."
 msgstr ""
 
-#: c-family/c.opt:464
+#: c-family/c.opt:484
 #, no-c-format
 msgid "Warn for converting NULL from/to a non-pointer type."
 msgstr ""
 
-#: c-family/c.opt:472
+#: c-family/c.opt:492
+#, no-c-format
+msgid ""
+"Warn when performing class template argument deduction on a type with no "
+"deduction guides."
+msgstr ""
+
+#: c-family/c.opt:497
 #, no-c-format
 msgid "Warn when all constructors and destructors are private."
 msgstr ""
 
-#: c-family/c.opt:476
+#: c-family/c.opt:501
 #, no-c-format
 msgid "Warn about dangling else."
 msgstr ""
 
-#: c-family/c.opt:480
+#: c-family/c.opt:505
 #, no-c-format
 msgid "Warn about __TIME__, __DATE__ and __TIMESTAMP__ usage."
 msgstr ""
 
-#: c-family/c.opt:484
+#: c-family/c.opt:509
 #, no-c-format
 msgid "Warn when a declaration is found after a statement."
 msgstr ""
 
-#: c-family/c.opt:488
+#: c-family/c.opt:513
 #, no-c-format
 msgid "Warn when deleting a pointer to incomplete type."
 msgstr ""
 
-#: c-family/c.opt:492
+#: c-family/c.opt:517
 #, no-c-format
 msgid "Warn about deleting polymorphic objects with non-virtual destructors."
 msgstr ""
 
-#: c-family/c.opt:500
+#: c-family/c.opt:525
 #, no-c-format
 msgid ""
 "Mark implicitly-declared copy operations as deprecated if the class has a "
 "user-provided copy operation."
 msgstr ""
 
-#: c-family/c.opt:505
+#: c-family/c.opt:530
 #, no-c-format
 msgid ""
 "Mark implicitly-declared copy operations as deprecated if the class has a "
 "user-provided copy operation or destructor."
 msgstr ""
 
-#: c-family/c.opt:510
+#: c-family/c.opt:535
+#, no-c-format
+msgid ""
+"Warn about deprecated arithmetic conversions on operands of enumeration "
+"types."
+msgstr ""
+
+#: c-family/c.opt:539
+#, no-c-format
+msgid ""
+"Warn about deprecated arithmetic conversions on operands where one is of "
+"enumeration type and the other is of a floating-point type."
+msgstr ""
+
+#: c-family/c.opt:544
 #, no-c-format
 msgid ""
 "Warn about positional initialization of structs requiring designated "
 "initializers."
 msgstr ""
 
-#: c-family/c.opt:514
+#: c-family/c.opt:548
 #, no-c-format
 msgid "Warn if qualifiers on arrays which are pointer targets are discarded."
 msgstr ""
 
-#: c-family/c.opt:518
+#: c-family/c.opt:552
 #, no-c-format
 msgid "Warn if type qualifiers on pointers are discarded."
 msgstr ""
 
-#: c-family/c.opt:522
+#: c-family/c.opt:556
 #, no-c-format
 msgid "Warn about compile-time integer division by zero."
 msgstr ""
 
-#: c-family/c.opt:526
+#: c-family/c.opt:560
 #, no-c-format
 msgid "Warn about duplicated branches in if-else statements."
 msgstr ""
 
-#: c-family/c.opt:530
+#: c-family/c.opt:564
 #, no-c-format
 msgid "Warn about duplicated conditions in an if-else-if chain."
 msgstr ""
 
-#: c-family/c.opt:534
+#: c-family/c.opt:568
 #, no-c-format
 msgid "Warn about violations of Effective C++ style rules."
 msgstr ""
 
-#: c-family/c.opt:538
+#: c-family/c.opt:572
 #, no-c-format
 msgid "Warn about an empty body in an if or else statement."
 msgstr ""
 
-#: c-family/c.opt:542
+#: c-family/c.opt:576
 #, no-c-format
 msgid "Warn about stray tokens after #else and #endif."
 msgstr ""
 
-#: c-family/c.opt:546
+#: c-family/c.opt:580
 #, no-c-format
 msgid "Warn about comparison of different enum types."
 msgstr ""
 
-#: c-family/c.opt:550
+#: c-family/c.opt:584
 #, no-c-format
 msgid "Warn about implicit conversion of enum types."
 msgstr ""
 
-#: c-family/c.opt:558
+#: c-family/c.opt:592
 #, no-c-format
 msgid ""
 "This switch is deprecated; use -Werror=implicit-function-declaration instead."
 msgstr ""
 
-#: c-family/c.opt:566
+#: c-family/c.opt:596
+#, no-c-format
+msgid "Warn when an exception handler is shadowed by another handler."
+msgstr ""
+
+#: c-family/c.opt:604
 #, no-c-format
 msgid "Warn about semicolon after in-class function definition."
 msgstr ""
 
-#: c-family/c.opt:570
+#: c-family/c.opt:608
 #, no-c-format
 msgid ""
 "Warn for implicit type conversions that cause loss of floating point "
 "precision."
 msgstr ""
 
-#: c-family/c.opt:574
+#: c-family/c.opt:612
 #, no-c-format
 msgid "Warn if testing floating point numbers for equality."
 msgstr ""
 
-#: c-family/c.opt:578 c-family/c.opt:624
+#: c-family/c.opt:616 c-family/c.opt:662
 #, no-c-format
 msgid "Warn about printf/scanf/strftime/strfmon format string anomalies."
 msgstr ""
 
-#: c-family/c.opt:582
+#: c-family/c.opt:620
 #, no-c-format
 msgid "Warn about format strings that contain NUL bytes."
 msgstr ""
 
-#: c-family/c.opt:586
+#: c-family/c.opt:624
 #, no-c-format
 msgid "Warn about GCC format strings with strings unsuitable for diagnostics."
 msgstr ""
 
-#: c-family/c.opt:590
+#: c-family/c.opt:628
 #, no-c-format
 msgid "Warn if passing too many arguments to a function for its format string."
 msgstr ""
 
-#: c-family/c.opt:594
+#: c-family/c.opt:632
 #, no-c-format
 msgid "Warn about format strings that are not literals."
 msgstr ""
 
-#: c-family/c.opt:598
+#: c-family/c.opt:636
 #, no-c-format
 msgid ""
 "Warn about function calls with format strings that write past the end of the "
 "destination region.  Same as -Wformat-overflow=1."
 msgstr ""
 
-#: c-family/c.opt:603
+#: c-family/c.opt:641
 #, no-c-format
 msgid "Warn about possible security problems with format functions."
 msgstr ""
 
-#: c-family/c.opt:607
+#: c-family/c.opt:645
 #, no-c-format
 msgid "Warn about sign differences with format functions."
 msgstr ""
 
-#: c-family/c.opt:611
+#: c-family/c.opt:649
 #, no-c-format
 msgid ""
 "Warn about calls to snprintf and similar functions that truncate output. "
 "Same as -Wformat-truncation=1."
 msgstr ""
 
-#: c-family/c.opt:616
+#: c-family/c.opt:654
 #, no-c-format
 msgid "Warn about strftime formats yielding 2-digit years."
 msgstr ""
 
-#: c-family/c.opt:620
+#: c-family/c.opt:658
 #, no-c-format
 msgid "Warn about zero-length formats."
 msgstr ""
 
-#: c-family/c.opt:628
+#: c-family/c.opt:666
 #, no-c-format
 msgid ""
 "Warn about function calls with format strings that write past the end of the "
 "destination region."
 msgstr ""
 
-#: c-family/c.opt:633
+#: c-family/c.opt:671
 #, no-c-format
 msgid ""
 "Warn about calls to snprintf and similar functions that truncate output."
 msgstr ""
 
-#: c-family/c.opt:637
+#: c-family/c.opt:675
 #, no-c-format
 msgid "Warn when the field in a struct is not aligned."
 msgstr ""
 
-#: c-family/c.opt:641
+#: c-family/c.opt:679
 #, no-c-format
 msgid "Warn whenever type qualifiers are ignored."
 msgstr ""
 
-#: c-family/c.opt:645
+#: c-family/c.opt:683
 #, no-c-format
 msgid "Warn whenever attributes are ignored."
 msgstr ""
 
-#: c-family/c.opt:649
+#: c-family/c.opt:687
 #, no-c-format
 msgid "Warn when a base is inaccessible in derived due to ambiguity."
 msgstr ""
 
-#: c-family/c.opt:653
+#: c-family/c.opt:691
 #, no-c-format
 msgid ""
 "Warn when there is a conversion between pointers that have incompatible "
 "types."
 msgstr ""
 
-#: c-family/c.opt:657
+#: c-family/c.opt:695
 #, no-c-format
 msgid "Warn when the address of packed member of struct or union is taken."
 msgstr ""
 
-#: c-family/c.opt:661
+#: c-family/c.opt:699
 #, no-c-format
 msgid "Warn about variables which are initialized to themselves."
 msgstr ""
 
-#: c-family/c.opt:665
+#: c-family/c.opt:703
 #, no-c-format
 msgid ""
 "Warn about uses of std::initializer_list that can result in dangling "
 "pointers."
 msgstr ""
 
-#: c-family/c.opt:669
+#: c-family/c.opt:707
 #, no-c-format
 msgid "Warn about implicit declarations."
 msgstr ""
 
-#: c-family/c.opt:677
+#: c-family/c.opt:715
 #, no-c-format
 msgid "Warn about implicit conversions from \"float\" to \"double\"."
 msgstr ""
 
-#: c-family/c.opt:681
+#: c-family/c.opt:719
 #, no-c-format
 msgid "Warn if \"defined\" is used outside #if."
 msgstr ""
 
-#: c-family/c.opt:685
+#: c-family/c.opt:723
 #, no-c-format
 msgid "Warn about implicit function declarations."
 msgstr ""
 
-#: c-family/c.opt:689
+#: c-family/c.opt:727
 #, no-c-format
 msgid "Warn when a declaration does not specify a type."
 msgstr ""
 
-#: c-family/c.opt:696
+#: c-family/c.opt:734
 #, no-c-format
 msgid ""
 "Warn about C++11 inheriting constructors when the base has a variadic "
 "constructor."
 msgstr ""
 
-#: c-family/c.opt:700
+#: c-family/c.opt:738
 #, no-c-format
 msgid ""
 "Warn about incompatible integer to pointer and pointer to integer "
 "conversions."
 msgstr ""
 
-#: c-family/c.opt:704
+#: c-family/c.opt:742
 #, no-c-format
 msgid "Warn for suspicious integer expressions in boolean context."
 msgstr ""
 
-#: c-family/c.opt:708
+#: c-family/c.opt:746
 #, no-c-format
 msgid ""
 "Warn when there is a cast to a pointer from an integer of a different size."
 msgstr ""
 
-#: c-family/c.opt:712
+#: c-family/c.opt:750
 #, no-c-format
 msgid "Warn about invalid uses of the \"offsetof\" macro."
 msgstr ""
 
-#: c-family/c.opt:716
+#: c-family/c.opt:754
 #, no-c-format
 msgid "Warn about PCH files that are found but not used."
 msgstr ""
 
-#: c-family/c.opt:720
+#: c-family/c.opt:758
 #, no-c-format
 msgid "Warn when a jump misses a variable initialization."
 msgstr ""
 
-#: c-family/c.opt:724
+#: c-family/c.opt:762
 #, no-c-format
 msgid ""
 "Warn when a string or character literal is followed by a ud-suffix which "
 "does not begin with an underscore."
 msgstr ""
 
-#: c-family/c.opt:728
+#: c-family/c.opt:766
 #, no-c-format
 msgid ""
 "Warn when a logical operator is suspiciously always evaluating to true or "
 "false."
 msgstr ""
 
-#: c-family/c.opt:732
+#: c-family/c.opt:770
 #, no-c-format
 msgid ""
 "Warn when logical not is used on the left hand side operand of a comparison."
 msgstr ""
 
-#: c-family/c.opt:736
+#: c-family/c.opt:774
 #, no-c-format
 msgid "Do not warn about using \"long long\" when -pedantic."
 msgstr ""
 
-#: c-family/c.opt:740
+#: c-family/c.opt:778
 #, no-c-format
 msgid "Warn about suspicious declarations of \"main\"."
 msgstr ""
 
-#: c-family/c.opt:748
+#: c-family/c.opt:786
 #, no-c-format
 msgid ""
 "Warn about suspicious calls to memset where the third argument is constant "
 "literal zero and the second is not."
 msgstr ""
 
-#: c-family/c.opt:752
+#: c-family/c.opt:790
 #, no-c-format
 msgid ""
 "Warn about suspicious calls to memset where the third argument contains the "
 "number of elements not multiplied by the element size."
 msgstr ""
 
-#: c-family/c.opt:756
+#: c-family/c.opt:794
 #, no-c-format
 msgid ""
 "Warn when the indentation of the code does not reflect the block structure."
 msgstr ""
 
-#: c-family/c.opt:760
+#: c-family/c.opt:798
+#, no-c-format
+msgid ""
+"Warn for deallocation calls with arguments returned from mismatched "
+"allocation functions."
+msgstr ""
+
+#: c-family/c.opt:803
+#, no-c-format
+msgid ""
+"Warn for mismatches between calls to operator new or delete and the "
+"corrsponding call to the allocation or deallocation function."
+msgstr ""
+
+#: c-family/c.opt:808
 #, no-c-format
 msgid ""
 "Warn when a class is redeclared or referenced using a mismatched class-key."
 msgstr ""
 
-#: c-family/c.opt:764
+#: c-family/c.opt:812
 #, no-c-format
 msgid "Warn about possibly missing braces around initializers."
 msgstr ""
 
-#: c-family/c.opt:768
+#: c-family/c.opt:816
 #, no-c-format
 msgid "Warn about global functions without previous declarations."
 msgstr ""
 
-#: c-family/c.opt:772
+#: c-family/c.opt:820
 #, no-c-format
 msgid "Warn about missing fields in struct initializers."
 msgstr ""
 
-#: c-family/c.opt:776
+#: c-family/c.opt:824
 #, no-c-format
 msgid ""
 "Warn about unsafe macros expanding to multiple statements used as a body of "
 "a clause such as if, else, while, switch, or for."
 msgstr ""
 
-#: c-family/c.opt:780
+#: c-family/c.opt:828
 #, no-c-format
 msgid "Warn on direct multiple inheritance."
 msgstr ""
 
-#: c-family/c.opt:784
+#: c-family/c.opt:832
 #, no-c-format
 msgid "Warn on namespace definition."
 msgstr ""
 
-#: c-family/c.opt:788
+#: c-family/c.opt:836
 #, no-c-format
 msgid "Warn when fields in a struct with the packed attribute are misaligned."
 msgstr ""
 
-#: c-family/c.opt:792
+#: c-family/c.opt:840
+#, no-c-format
+msgid "Warn when a range-based for-loop is creating unnecessary copies."
+msgstr ""
+
+#: c-family/c.opt:844
 #, no-c-format
 msgid ""
 "Warn when a class or enumerated type is referenced using a redundant class-"
 "key."
 msgstr ""
 
-#: c-family/c.opt:796
+#: c-family/c.opt:848
 #, no-c-format
 msgid "Warn about missing sized deallocation functions."
 msgstr ""
 
-#: c-family/c.opt:800
+#: c-family/c.opt:852
 #, no-c-format
 msgid ""
 "Warn about suspicious divisions of two sizeof expressions that don't work "
 "correctly with pointers."
 msgstr ""
 
-#: c-family/c.opt:804
+#: c-family/c.opt:856
+#, no-c-format
+msgid ""
+"Warn about divisions of two sizeof operators when the first one is applied "
+"to an array and the divisor does not equal the size of the array element."
+msgstr ""
+
+#: c-family/c.opt:861
 #, no-c-format
 msgid ""
 "Warn about suspicious length parameters to certain string functions if the "
 "argument uses sizeof."
 msgstr ""
 
-#: c-family/c.opt:808
+#: c-family/c.opt:865
 #, no-c-format
 msgid "Warn when sizeof is applied on a parameter declared as an array."
 msgstr ""
 
-#: c-family/c.opt:812
+#: c-family/c.opt:869
 #, no-c-format
 msgid ""
 "Warn about calls to strcmp and strncmp used in equality expressions that are "
@@ -6364,476 +6521,495 @@ msgid ""
 "argument."
 msgstr ""
 
-#: c-family/c.opt:818
+#: c-family/c.opt:875
 #, no-c-format
 msgid ""
 "Warn about buffer overflow in string manipulation functions like memcpy and "
 "strcpy."
 msgstr ""
 
-#: c-family/c.opt:823
+#: c-family/c.opt:880
 #, no-c-format
 msgid ""
 "Under the control of Object Size type, warn about buffer overflow in string "
 "manipulation functions like memcpy and strcpy."
 msgstr ""
 
-#: c-family/c.opt:828
+#: c-family/c.opt:885
+#, no-c-format
+msgid ""
+"Warn about reading past the end of a source array in string manipulation "
+"functions like memchr and memcpy."
+msgstr ""
+
+#: c-family/c.opt:889
 #, no-c-format
 msgid ""
 "Warn about truncation in string manipulation functions like strncat and "
 "strncpy."
 msgstr ""
 
-#: c-family/c.opt:832
+#: c-family/c.opt:893
 #, no-c-format
 msgid "Warn about functions which might be candidates for format attributes."
 msgstr ""
 
-#: c-family/c.opt:836
+#: c-family/c.opt:897
 #, no-c-format
 msgid ""
 "Suggest that the override keyword be used when the declaration of a virtual "
 "function overrides another."
 msgstr ""
 
-#: c-family/c.opt:841
+#: c-family/c.opt:902
 #, no-c-format
 msgid "Warn about enumerated switches, with no default, missing a case."
 msgstr ""
 
-#: c-family/c.opt:845
+#: c-family/c.opt:906
 #, no-c-format
 msgid "Warn about enumerated switches missing a \"default:\" statement."
 msgstr ""
 
-#: c-family/c.opt:849
+#: c-family/c.opt:910
 #, no-c-format
 msgid "Warn about all enumerated switches missing a specific case."
 msgstr ""
 
-#: c-family/c.opt:853
+#: c-family/c.opt:914
 #, no-c-format
 msgid "Warn about switches with boolean controlling expression."
 msgstr ""
 
-#: c-family/c.opt:857
+#: c-family/c.opt:918
 #, no-c-format
 msgid "Warn about switch values that are outside of the switch's type range."
 msgstr ""
 
-#: c-family/c.opt:861
+#: c-family/c.opt:922
 #, no-c-format
 msgid "Warn on primary template declaration."
 msgstr ""
 
-#: c-family/c.opt:865
+#: c-family/c.opt:926
 #, no-c-format
 msgid ""
 "Warn about declarations of entities that may be missing attributes that "
 "related entities have been declared with."
 msgstr ""
 
-#: c-family/c.opt:874
+#: c-family/c.opt:935
 #, no-c-format
 msgid "Warn about user-specified include directories that do not exist."
 msgstr ""
 
-#: c-family/c.opt:878
+#: c-family/c.opt:939
 #, no-c-format
 msgid ""
 "Warn about function parameters declared without a type specifier in K&R-"
 "style functions."
 msgstr ""
 
-#: c-family/c.opt:882
+#: c-family/c.opt:943
 #, no-c-format
 msgid "Warn about global functions without prototypes."
 msgstr ""
 
-#: c-family/c.opt:889
+#: c-family/c.opt:950
 #, no-c-format
 msgid "Warn about use of multi-character character constants."
 msgstr ""
 
-#: c-family/c.opt:893
+#: c-family/c.opt:954
 #, no-c-format
 msgid ""
 "Warn about narrowing conversions within { } that are ill-formed in C++11."
 msgstr ""
 
-#: c-family/c.opt:897
+#: c-family/c.opt:958
 #, no-c-format
 msgid "Warn about \"extern\" declarations not at file scope."
 msgstr ""
 
-#: c-family/c.opt:901
+#: c-family/c.opt:962
 #, no-c-format
 msgid ""
 "Warn when a noexcept expression evaluates to false even though the "
 "expression can't actually throw."
 msgstr ""
 
-#: c-family/c.opt:905
+#: c-family/c.opt:966
 #, no-c-format
 msgid ""
 "Warn if C++17 noexcept function type will change the mangled name of a "
 "symbol."
 msgstr ""
 
-#: c-family/c.opt:909
+#: c-family/c.opt:970
 #, no-c-format
 msgid ""
 "Warn when non-templatized friend functions are declared within a template."
 msgstr ""
 
-#: c-family/c.opt:913
+#: c-family/c.opt:974
 #, no-c-format
 msgid ""
 "Warn when a conversion function will never be called due to the type it "
 "converts to."
 msgstr ""
 
-#: c-family/c.opt:917
+#: c-family/c.opt:978
 #, no-c-format
 msgid "Warn for unsafe raw memory writes to objects of class types."
 msgstr ""
 
-#: c-family/c.opt:921
+#: c-family/c.opt:982
 #, no-c-format
 msgid "Warn about non-virtual destructors."
 msgstr ""
 
-#: c-family/c.opt:925
+#: c-family/c.opt:986
 #, no-c-format
 msgid ""
 "Warn about NULL being passed to argument slots marked as requiring non-NULL."
 msgstr ""
 
-#: c-family/c.opt:941
+#: c-family/c.opt:1002
 #, no-c-format
 msgid ""
 "-Wnormalized=[none|id|nfc|nfkc]\tWarn about non-normalized Unicode strings."
 msgstr ""
 
-#: c-family/c.opt:964
+#: c-family/c.opt:1025
+#, no-c-format
+msgid ""
+"Warn if a class interface has no superclass.  Root classes may use an "
+"attribute to suppress this warning."
+msgstr ""
+
+#: c-family/c.opt:1030
 #, no-c-format
 msgid "Warn if a C-style cast is used in a program."
 msgstr ""
 
-#: c-family/c.opt:968
+#: c-family/c.opt:1034
 #, no-c-format
 msgid "Warn for obsolescent usage in a declaration."
 msgstr ""
 
-#: c-family/c.opt:972
+#: c-family/c.opt:1038
 #, no-c-format
 msgid "Warn if an old-style parameter definition is used."
 msgstr ""
 
-#: c-family/c.opt:976
+#: c-family/c.opt:1042
 #, no-c-format
 msgid "Warn if a simd directive is overridden by the vectorizer cost model."
 msgstr ""
 
-#: c-family/c.opt:980
+#: c-family/c.opt:1046
 #, no-c-format
 msgid ""
 "Warn if a string is longer than the maximum portable length specified by the "
 "standard."
 msgstr ""
 
-#: c-family/c.opt:984
+#: c-family/c.opt:1050
 #, no-c-format
 msgid "Warn about overloaded virtual function names."
 msgstr ""
 
-#: c-family/c.opt:988
+#: c-family/c.opt:1054
 #, no-c-format
 msgid "Warn about overriding initializers without side effects."
 msgstr ""
 
-#: c-family/c.opt:992
+#: c-family/c.opt:1058
 #, no-c-format
 msgid "Warn about overriding initializers with side effects."
 msgstr ""
 
-#: c-family/c.opt:996
+#: c-family/c.opt:1062
 #, no-c-format
 msgid "Warn about packed bit-fields whose offset changed in GCC 4.4."
 msgstr ""
 
-#: c-family/c.opt:1000
+#: c-family/c.opt:1066
 #, no-c-format
 msgid "Warn about possibly missing parentheses."
 msgstr ""
 
-#: c-family/c.opt:1008
+#: c-family/c.opt:1074
 #, no-c-format
 msgid ""
 "Warn about calling std::move on a local object in a return statement "
 "preventing copy elision."
 msgstr ""
 
-#: c-family/c.opt:1012
+#: c-family/c.opt:1078
 #, no-c-format
 msgid "Warn when converting the type of pointers to member functions."
 msgstr ""
 
-#: c-family/c.opt:1016
+#: c-family/c.opt:1082
 #, no-c-format
 msgid "Warn about function pointer arithmetic."
 msgstr ""
 
-#: c-family/c.opt:1020
+#: c-family/c.opt:1086
 #, no-c-format
 msgid "Warn when a pointer differs in signedness in an assignment."
 msgstr ""
 
-#: c-family/c.opt:1024
+#: c-family/c.opt:1090
 #, no-c-format
 msgid "Warn when a pointer is compared with a zero character constant."
 msgstr ""
 
-#: c-family/c.opt:1028
+#: c-family/c.opt:1094
 #, no-c-format
 msgid "Warn when a pointer is cast to an integer of a different size."
 msgstr ""
 
-#: c-family/c.opt:1032
+#: c-family/c.opt:1098
 #, no-c-format
 msgid "Warn about misuses of pragmas."
 msgstr ""
 
-#: c-family/c.opt:1036
+#: c-family/c.opt:1102
 #, no-c-format
 msgid ""
 "Warn if constructor or destructors with priorities from 0 to 100 are used."
 msgstr ""
 
-#: c-family/c.opt:1040
+#: c-family/c.opt:1106
 #, no-c-format
 msgid ""
 "Warn if a property for an Objective-C object has no assign semantics "
 "specified."
 msgstr ""
 
-#: c-family/c.opt:1044
+#: c-family/c.opt:1110
 #, no-c-format
 msgid "Warn if inherited methods are unimplemented."
 msgstr ""
 
-#: c-family/c.opt:1048 c-family/c.opt:1052
+#: c-family/c.opt:1114 c-family/c.opt:1118
 #, no-c-format
 msgid "Warn for placement new expressions with undefined behavior."
 msgstr ""
 
-#: c-family/c.opt:1056
+#: c-family/c.opt:1122
 #, no-c-format
 msgid "Warn about multiple declarations of the same object."
 msgstr ""
 
-#: c-family/c.opt:1060
+#: c-family/c.opt:1126
 #, no-c-format
 msgid "Warn about redundant calls to std::move."
 msgstr ""
 
-#: c-family/c.opt:1064
+#: c-family/c.opt:1130
 #, no-c-format
 msgid "Warn about uses of register storage specifier."
 msgstr ""
 
-#: c-family/c.opt:1068
+#: c-family/c.opt:1134
 #, no-c-format
 msgid "Warn when the compiler reorders code."
 msgstr ""
 
-#: c-family/c.opt:1072
+#: c-family/c.opt:1138
 #, no-c-format
 msgid ""
 "Warn whenever a function's return type defaults to \"int\" (C), or about "
 "inconsistent return types (C++)."
 msgstr ""
 
-#: c-family/c.opt:1076
+#: c-family/c.opt:1142
 #, no-c-format
 msgid "Warn on suspicious constructs involving reverse scalar storage order."
 msgstr ""
 
-#: c-family/c.opt:1080
+#: c-family/c.opt:1146
 #, no-c-format
 msgid "Warn if a selector has multiple methods."
 msgstr ""
 
-#: c-family/c.opt:1084
+#: c-family/c.opt:1150
 #, no-c-format
 msgid "Warn about possible violations of sequence point rules."
 msgstr ""
 
-#: c-family/c.opt:1088
+#: c-family/c.opt:1154
 #, no-c-format
 msgid "Warn if a local declaration hides an instance variable."
 msgstr ""
 
-#: c-family/c.opt:1092 c-family/c.opt:1096
+#: c-family/c.opt:1158 c-family/c.opt:1162
 #, no-c-format
 msgid "Warn if left shift of a signed value overflows."
 msgstr ""
 
-#: c-family/c.opt:1100
+#: c-family/c.opt:1166
 #, no-c-format
 msgid "Warn if shift count is negative."
 msgstr ""
 
-#: c-family/c.opt:1104
+#: c-family/c.opt:1170
 #, no-c-format
 msgid "Warn if shift count >= width of type."
 msgstr ""
 
-#: c-family/c.opt:1108
+#: c-family/c.opt:1174
 #, no-c-format
 msgid "Warn if left shifting a negative value."
 msgstr ""
 
-#: c-family/c.opt:1112
+#: c-family/c.opt:1178
 #, no-c-format
 msgid ""
 "Warn if conversion of the result of arithmetic might change the value even "
 "though converting the operands cannot."
 msgstr ""
 
-#: c-family/c.opt:1116
+#: c-family/c.opt:1182
 #, no-c-format
 msgid "Warn about signed-unsigned comparisons."
 msgstr ""
 
-#: c-family/c.opt:1124
+#: c-family/c.opt:1190
 #, no-c-format
 msgid ""
 "Warn for implicit type conversions between signed and unsigned integers."
 msgstr ""
 
-#: c-family/c.opt:1128
+#: c-family/c.opt:1194
 #, no-c-format
 msgid "Warn when overload promotes from unsigned to signed."
 msgstr ""
 
-#: c-family/c.opt:1132
+#: c-family/c.opt:1198
 #, no-c-format
 msgid "Warn about uncasted NULL used as sentinel."
 msgstr ""
 
-#: c-family/c.opt:1136
+#: c-family/c.opt:1202
 #, no-c-format
 msgid "Warn about unprototyped function declarations."
 msgstr ""
 
-#: c-family/c.opt:1148
+#: c-family/c.opt:1214
 #, no-c-format
 msgid "Warn if type signatures of candidate methods do not match exactly."
 msgstr ""
 
-#: c-family/c.opt:1152
+#: c-family/c.opt:1218
 #, no-c-format
 msgid ""
 "Warn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions "
 "are used."
 msgstr ""
 
-#: c-family/c.opt:1156
+#: c-family/c.opt:1222
 #, no-c-format
 msgid "Deprecated.  This switch has no effect."
 msgstr ""
 
-#: c-family/c.opt:1164
+#: c-family/c.opt:1230
 #, no-c-format
 msgid "Warn if a comparison always evaluates to true or false."
 msgstr ""
 
-#: c-family/c.opt:1168
+#: c-family/c.opt:1234
 #, no-c-format
 msgid "Warn if a throw expression will always result in a call to terminate()."
 msgstr ""
 
-#: c-family/c.opt:1172
+#: c-family/c.opt:1238
 #, no-c-format
 msgid "Warn about features not present in traditional C."
 msgstr ""
 
-#: c-family/c.opt:1176
+#: c-family/c.opt:1242
 #, no-c-format
 msgid ""
 "Warn of prototypes causing type conversions different from what would happen "
 "in the absence of prototype."
 msgstr ""
 
-#: c-family/c.opt:1180
+#: c-family/c.opt:1246
 #, no-c-format
 msgid ""
 "Warn if trigraphs are encountered that might affect the meaning of the "
 "program."
 msgstr ""
 
-#: c-family/c.opt:1184
+#: c-family/c.opt:1250
 #, no-c-format
 msgid "Warn about @selector()s without previously declared methods."
 msgstr ""
 
-#: c-family/c.opt:1188
+#: c-family/c.opt:1254
 #, no-c-format
 msgid "Warn if an undefined macro is used in an #if directive."
 msgstr ""
 
-#: c-family/c.opt:1200
+#: c-family/c.opt:1266
 #, no-c-format
 msgid "Warn about unrecognized pragmas."
 msgstr ""
 
-#: c-family/c.opt:1204
+#: c-family/c.opt:1270
 #, no-c-format
 msgid "Warn about unsuffixed float constants."
 msgstr ""
 
-#: c-family/c.opt:1212
+#: c-family/c.opt:1278
 #, no-c-format
 msgid "Warn when typedefs locally defined in a function are not used."
 msgstr ""
 
-#: c-family/c.opt:1216
+#: c-family/c.opt:1282
 #, no-c-format
 msgid "Warn about macros defined in the main file that are not used."
 msgstr ""
 
-#: c-family/c.opt:1220
+#: c-family/c.opt:1286
 #, no-c-format
 msgid ""
 "Warn if a caller of a function, marked with attribute warn_unused_result, "
 "does not use its return value."
 msgstr ""
 
-#: c-family/c.opt:1228 c-family/c.opt:1232
+#: c-family/c.opt:1294 c-family/c.opt:1298
 #, no-c-format
 msgid "Warn when a const variable is unused."
 msgstr ""
 
-#: c-family/c.opt:1236
+#: c-family/c.opt:1302
 #, no-c-format
 msgid "Warn about using variadic macros."
 msgstr ""
 
-#: c-family/c.opt:1240
+#: c-family/c.opt:1306
 #, no-c-format
 msgid ""
 "Warn about questionable usage of the macros used to retrieve variable "
 "arguments."
 msgstr ""
 
-#: c-family/c.opt:1244
+#: c-family/c.opt:1310
+#, no-c-format
+msgid "Warn about the most vexing parse syntactic ambiguity."
+msgstr ""
+
+#: c-family/c.opt:1314
 #, no-c-format
 msgid "Warn if a variable length array is used."
 msgstr ""
 
-#: c-family/c.opt:1248
+#: c-family/c.opt:1318
 #, no-c-format
 msgid ""
 "-Wvla-larger-than=<number>\tWarn on unbounded uses of variable-length "
@@ -6841,34 +7017,39 @@ msgid ""
 "larger than <number> bytes."
 msgstr ""
 
-#: c-family/c.opt:1254
+#: c-family/c.opt:1324
 #, no-c-format
 msgid ""
 "Disable Wvla-larger-than= warning.  Equivalent to Wvla-larger-"
 "than=<SIZE_MAX> or larger."
 msgstr ""
 
-#: c-family/c.opt:1258
+#: c-family/c.opt:1328
+#, no-c-format
+msgid "Warn about mismatched declarations of VLA parameters."
+msgstr ""
+
+#: c-family/c.opt:1332
 #, no-c-format
 msgid "Warn about deprecated uses of volatile qualifier."
 msgstr ""
 
-#: c-family/c.opt:1262
+#: c-family/c.opt:1336
 #, no-c-format
 msgid "Warn when a register variable is declared volatile."
 msgstr ""
 
-#: c-family/c.opt:1266
+#: c-family/c.opt:1340
 #, no-c-format
 msgid "Warn on direct virtual inheritance."
 msgstr ""
 
-#: c-family/c.opt:1270
+#: c-family/c.opt:1344
 #, no-c-format
 msgid "Warn if a virtual base has a non-trivial move assignment operator."
 msgstr ""
 
-#: c-family/c.opt:1274
+#: c-family/c.opt:1348
 #, no-c-format
 msgid ""
 "In C++, nonzero means warn about deprecated conversion from string literals "
@@ -6876,889 +7057,969 @@ msgid ""
 "not deprecated by the ISO C standard."
 msgstr ""
 
-#: c-family/c.opt:1278
+#: c-family/c.opt:1352
 #, no-c-format
 msgid "Warn when a literal '0' is used as null pointer."
 msgstr ""
 
-#: c-family/c.opt:1282
+#: c-family/c.opt:1356
 #, no-c-format
 msgid "Warn about useless casts."
 msgstr ""
 
-#: c-family/c.opt:1286
+#: c-family/c.opt:1360
 #, no-c-format
 msgid ""
 "Warn if a class type has a base or a field whose type uses the anonymous "
 "namespace or depends on a type with no linkage."
 msgstr ""
 
-#: c-family/c.opt:1290
+#: c-family/c.opt:1364
 #, no-c-format
 msgid ""
 "Warn when a declaration has duplicate const, volatile, restrict or _Atomic "
 "specifier."
 msgstr ""
 
-#: c-family/c.opt:1294
+#: c-family/c.opt:1368
 #, no-c-format
 msgid ""
 "Warn when an argument passed to a restrict-qualified parameter aliases with "
 "another argument."
 msgstr ""
 
-#: c-family/c.opt:1299
+#: c-family/c.opt:1373
 #, no-c-format
 msgid "A synonym for -std=c89 (for C) or -std=c++98 (for C++)."
 msgstr ""
 
-#: c-family/c.opt:1307
+#: c-family/c.opt:1381
 #, no-c-format
 msgid ""
 "The version of the C++ ABI used for -Wabi warnings and link compatibility "
 "aliases."
 msgstr ""
 
-#: c-family/c.opt:1311
+#: c-family/c.opt:1385
 #, no-c-format
 msgid "Enforce class member access control semantics."
 msgstr ""
 
-#: c-family/c.opt:1315
+#: c-family/c.opt:1389
 #, no-c-format
 msgid "-fada-spec-parent=unit\tDump Ada specs as child units of given parent."
 msgstr ""
 
-#: c-family/c.opt:1319
+#: c-family/c.opt:1393
 #, no-c-format
 msgid "Support C++17 allocation of over-aligned types."
 msgstr ""
 
-#: c-family/c.opt:1323
+#: c-family/c.opt:1397
 #, no-c-format
 msgid ""
 "-faligned-new=<N>\tUse C++17 over-aligned type allocation for alignments "
 "greater than N."
 msgstr ""
 
-#: c-family/c.opt:1330
+#: c-family/c.opt:1404
 #, no-c-format
 msgid "Allow variadic functions without named parameter."
 msgstr ""
 
-#: c-family/c.opt:1334 c-family/c.opt:1598 c-family/c.opt:1922
-#: c-family/c.opt:1926 c-family/c.opt:1942
+#: c-family/c.opt:1408 c-family/c.opt:1672 c-family/c.opt:2060
+#: c-family/c.opt:2064 c-family/c.opt:2080
 #, no-c-format
 msgid "No longer supported."
 msgstr ""
 
-#: c-family/c.opt:1338
+#: c-family/c.opt:1412
 #, no-c-format
 msgid "Recognize the \"asm\" keyword."
 msgstr ""
 
-#: c-family/c.opt:1346
+#: c-family/c.opt:1420
 #, no-c-format
 msgid "Recognize built-in functions."
 msgstr ""
 
-#: c-family/c.opt:1353
+#: c-family/c.opt:1427
 #, no-c-format
 msgid "Where shorter, use canonicalized paths to systems headers."
 msgstr ""
 
-#: c-family/c.opt:1357
+#: c-family/c.opt:1431
 #, no-c-format
 msgid ""
 "Enable the char8_t fundamental type and use it as the type for UTF-8 string "
 "and character literals."
 msgstr ""
 
-#: c-family/c.opt:1445
+#: c-family/c.opt:1519
 #, no-c-format
 msgid "Removed in GCC 8.  This switch has no effect."
 msgstr ""
 
-#: c-family/c.opt:1449
+#: c-family/c.opt:1523
 #, no-c-format
 msgid "Enable support for C++ concepts."
 msgstr ""
 
-#: c-family/c.opt:1453
+#: c-family/c.opt:1527
 #, no-c-format
 msgid "Enable certain features present in the Concepts TS."
 msgstr ""
 
-#: c-family/c.opt:1457
+#: c-family/c.opt:1531
 #, no-c-format
 msgid ""
 "Specify maximum error replay depth during recursive diagnosis of a "
 "constraint satisfaction failure."
 msgstr ""
 
-#: c-family/c.opt:1461
+#: c-family/c.opt:1535
 #, no-c-format
 msgid "Allow the arguments of the '?' operator to have different types."
 msgstr ""
 
-#: c-family/c.opt:1469
+#: c-family/c.opt:1543
 #, no-c-format
 msgid "-fconst-string-class=<name>\tUse class <name> for constant strings."
 msgstr ""
 
-#: c-family/c.opt:1473
+#: c-family/c.opt:1547
 #, no-c-format
 msgid "-fconstexpr-depth=<number>\tSpecify maximum constexpr recursion depth."
 msgstr ""
 
-#: c-family/c.opt:1477
+#: c-family/c.opt:1551
 #, no-c-format
 msgid ""
 "-fconstexpr-cache-depth=<number>\tSpecify maximum constexpr recursion cache "
 "depth."
 msgstr ""
 
-#: c-family/c.opt:1481
+#: c-family/c.opt:1555
 #, no-c-format
 msgid ""
 "-fconstexpr-loop-limit=<number>\tSpecify maximum constexpr loop iteration "
 "count."
 msgstr ""
 
-#: c-family/c.opt:1485
+#: c-family/c.opt:1559
 #, no-c-format
 msgid ""
 "-fconstexpr-ops-limit=<number>\tSpecify maximum number of constexpr "
 "operations during a single constexpr evaluation."
 msgstr ""
 
-#: c-family/c.opt:1489
+#: c-family/c.opt:1563
 #, no-c-format
 msgid "Enable C++ coroutines (experimental)."
 msgstr ""
 
-#: c-family/c.opt:1493
+#: c-family/c.opt:1567
 #, no-c-format
 msgid "Emit debug annotations during preprocessing."
 msgstr ""
 
-#: c-family/c.opt:1501
+#: c-family/c.opt:1575
 #, no-c-format
 msgid "Factor complex constructors and destructors to favor space over speed."
 msgstr ""
 
-#: c-family/c.opt:1509
+#: c-family/c.opt:1583
 #, no-c-format
 msgid "Print hierarchical comparisons when template types are mismatched."
 msgstr ""
 
-#: c-family/c.opt:1513
+#: c-family/c.opt:1587
 #, no-c-format
 msgid "Preprocess directives only."
 msgstr ""
 
-#: c-family/c.opt:1517
+#: c-family/c.opt:1591
 #, no-c-format
 msgid "Permit '$' as an identifier character."
 msgstr ""
 
-#: c-family/c.opt:1521
+#: c-family/c.opt:1595
 #, no-c-format
 msgid ""
 "-fmacro-prefix-map=<old>=<new>\tMap one directory name to another in "
 "__FILE__, __BASE_FILE__, and __builtin_FILE()."
 msgstr ""
 
-#: c-family/c.opt:1525
+#: c-family/c.opt:1599
 #, no-c-format
 msgid "Write all declarations as Ada code transitively."
 msgstr ""
 
-#: c-family/c.opt:1529
+#: c-family/c.opt:1603
 #, no-c-format
 msgid "Write all declarations as Ada code for the given file only."
 msgstr ""
 
-#: c-family/c.opt:1536
+#: c-family/c.opt:1610
 #, no-c-format
 msgid "Do not elide common elements in template comparisons."
 msgstr ""
 
-#: c-family/c.opt:1540
+#: c-family/c.opt:1614
 #, no-c-format
 msgid "Generate code to check exception specifications."
 msgstr ""
 
-#: c-family/c.opt:1547
+#: c-family/c.opt:1621
 #, no-c-format
 msgid ""
 "-fexec-charset=<cset>\tConvert all strings and character constants to "
 "character set <cset>."
 msgstr ""
 
-#: c-family/c.opt:1551
+#: c-family/c.opt:1625
 #, no-c-format
 msgid "Permit universal character names (\\u and \\U) in identifiers."
 msgstr ""
 
-#: c-family/c.opt:1555
+#: c-family/c.opt:1629
 #, no-c-format
 msgid ""
 "-finput-charset=<cset>\tSpecify the default character set for source files."
 msgstr ""
 
-#: c-family/c.opt:1559
+#: c-family/c.opt:1633
 #, no-c-format
 msgid ""
 "Support dynamic initialization of thread-local variables in a different "
 "translation unit."
 msgstr ""
 
-#: c-family/c.opt:1569
+#: c-family/c.opt:1643
 #, no-c-format
 msgid "Do not assume that standard C libraries and \"main\" exist."
 msgstr ""
 
-#: c-family/c.opt:1573
+#: c-family/c.opt:1647
 #, no-c-format
 msgid "Recognize GNU-defined keywords."
 msgstr ""
 
-#: c-family/c.opt:1577
+#: c-family/c.opt:1651
 #, no-c-format
 msgid "Generate code for GNU runtime environment."
 msgstr ""
 
-#: c-family/c.opt:1581
+#: c-family/c.opt:1655
 #, no-c-format
 msgid "Use traditional GNU semantics for inline functions."
 msgstr ""
 
-#: c-family/c.opt:1594
+#: c-family/c.opt:1668
 #, no-c-format
 msgid "Assume normal C execution environment."
 msgstr ""
 
-#: c-family/c.opt:1602
+#: c-family/c.opt:1676
 #, no-c-format
 msgid "Export functions even if they can be inlined."
 msgstr ""
 
-#: c-family/c.opt:1606
+#: c-family/c.opt:1680
 #, no-c-format
 msgid "Emit implicit instantiations of inline templates."
 msgstr ""
 
-#: c-family/c.opt:1610
+#: c-family/c.opt:1684
 #, no-c-format
 msgid "Emit implicit instantiations of templates."
 msgstr ""
 
-#: c-family/c.opt:1614
+#: c-family/c.opt:1688
 #, no-c-format
 msgid "Implement C++17 inheriting constructor semantics."
 msgstr ""
 
-#: c-family/c.opt:1621
+#: c-family/c.opt:1695
 #, no-c-format
 msgid "Don't emit dllexported inline functions unless needed."
 msgstr ""
 
-#: c-family/c.opt:1628
+#: c-family/c.opt:1702
 #, no-c-format
 msgid ""
 "Allow implicit conversions between vectors with differing numbers of "
 "subparts and/or differing element types."
 msgstr ""
 
-#: c-family/c.opt:1632
+#: c-family/c.opt:1706
+#, no-c-format
+msgid "Enable C++ modules-ts (experimental)."
+msgstr ""
+
+#: c-family/c.opt:1714
+#, no-c-format
+msgid "Enable C++ header module (experimental)."
+msgstr ""
+
+#: c-family/c.opt:1721
+#, no-c-format
+msgid ""
+"Member functions defined within their class are inline in module purview."
+msgstr ""
+
+#: c-family/c.opt:1725
+#, no-c-format
+msgid "Only emit Compiled Module Interface."
+msgstr ""
+
+#: c-family/c.opt:1729
+#, no-c-format
+msgid "Mapper for module to CMI files."
+msgstr ""
+
+#: c-family/c.opt:1733
+#, no-c-format
+msgid "Enable lazy module importing."
+msgstr ""
+
+#: c-family/c.opt:1741
+#, no-c-format
+msgid "Warn about macros that have conflicting header units definitions."
+msgstr ""
+
+#: c-family/c.opt:1745
+#, no-c-format
+msgid "Note #include directives translated to import declarations."
+msgstr ""
+
+#: c-family/c.opt:1749
+#, no-c-format
+msgid ""
+"Note #include directives not translated to import declarations, and not "
+"known to be textual."
+msgstr ""
+
+#: c-family/c.opt:1753
+#, no-c-format
+msgid "Note a #include translation of a specific header."
+msgstr ""
+
+#: c-family/c.opt:1757
 #, no-c-format
 msgid ""
 "fmax-include-depth=<number> Set the maximum depth of the nested #include."
 msgstr ""
 
-#: c-family/c.opt:1636
+#: c-family/c.opt:1761
 #, no-c-format
 msgid "Don't warn about uses of Microsoft extensions."
 msgstr ""
 
-#: c-family/c.opt:1655
+#: c-family/c.opt:1780
 #, no-c-format
 msgid ""
 "Implement resolution of DR 150 for matching of template template arguments."
 msgstr ""
 
-#: c-family/c.opt:1659
+#: c-family/c.opt:1784
 #, no-c-format
 msgid "Generate code for NeXT (Apple Mac OS X) runtime environment."
 msgstr ""
 
-#: c-family/c.opt:1663
+#: c-family/c.opt:1788
 #, no-c-format
 msgid "Assume that receivers of Objective-C messages may be nil."
 msgstr ""
 
-#: c-family/c.opt:1667
+#: c-family/c.opt:1792
 #, no-c-format
 msgid ""
 "Allow access to instance variables as if they were local declarations within "
 "instance method implementations."
 msgstr ""
 
-#: c-family/c.opt:1671
+#: c-family/c.opt:1796
 #, no-c-format
 msgid ""
 "-fvisibility=[private|protected|public|package]\tSet the default symbol "
 "visibility."
 msgstr ""
 
-#: c-family/c.opt:1696
+#: c-family/c.opt:1821
 #, no-c-format
 msgid ""
 "Treat a throw() exception specification as noexcept to improve code size."
 msgstr ""
 
-#: c-family/c.opt:1700
+#: c-family/c.opt:1825
 #, no-c-format
 msgid ""
 "Specify which ABI to use for Objective-C family code and meta-data "
 "generation."
 msgstr ""
 
-#: c-family/c.opt:1706
+#: c-family/c.opt:1831
 #, no-c-format
 msgid ""
 "Generate special Objective-C methods to initialize/destroy non-POD C++ "
 "ivars, if needed."
 msgstr ""
 
-#: c-family/c.opt:1710
+#: c-family/c.opt:1835
 #, no-c-format
 msgid "Allow fast jumps to the message dispatcher."
 msgstr ""
 
-#: c-family/c.opt:1716
+#: c-family/c.opt:1841
 #, no-c-format
 msgid "Enable Objective-C exception and synchronization syntax."
 msgstr ""
 
-#: c-family/c.opt:1720
+#: c-family/c.opt:1845
 #, no-c-format
 msgid "Enable garbage collection (GC) in Objective-C/Objective-C++ programs."
 msgstr ""
 
-#: c-family/c.opt:1724
+#: c-family/c.opt:1849
 #, no-c-format
 msgid ""
 "Enable inline checks for nil receivers with the NeXT runtime and ABI version "
 "2."
 msgstr ""
 
-#: c-family/c.opt:1729
+#: c-family/c.opt:1854
 #, no-c-format
 msgid "Enable Objective-C setjmp exception handling runtime."
 msgstr ""
 
-#: c-family/c.opt:1733
+#: c-family/c.opt:1858
 #, no-c-format
 msgid "Conform to the Objective-C 1.0 language as implemented in GCC 4.0."
 msgstr ""
 
-#: c-family/c.opt:1737
+#: c-family/c.opt:1862
 #, no-c-format
 msgid "Enable OpenACC."
 msgstr ""
 
-#: c-family/c.opt:1741
+#: c-family/c.opt:1866
 #, no-c-format
 msgid "Specify default OpenACC compute dimensions."
 msgstr ""
 
-#: c-family/c.opt:1745
+#: c-family/c.opt:1870
+#, no-c-format
+msgid ""
+"-fopenacc-kernels=[decompose|parloops]\tSpecify mode of OpenACC 'kernels' "
+"constructs handling."
+msgstr ""
+
+#: c-family/c.opt:1883
 #, no-c-format
 msgid "Enable OpenMP (implies -frecursive in Fortran)."
 msgstr ""
 
-#: c-family/c.opt:1749
+#: c-family/c.opt:1887
 #, no-c-format
 msgid "Enable OpenMP's SIMD directives."
 msgstr ""
 
-#: c-family/c.opt:1753
+#: c-family/c.opt:1891
 #, no-c-format
 msgid "Recognize C++ keywords like \"compl\" and \"xor\"."
 msgstr ""
 
-#: c-family/c.opt:1764
+#: c-family/c.opt:1902
 #, no-c-format
 msgid "Look for and use PCH files even when preprocessing."
 msgstr ""
 
-#: c-family/c.opt:1768
+#: c-family/c.opt:1906
 #, no-c-format
 msgid "Downgrade conformance errors to warnings."
 msgstr ""
 
-#: c-family/c.opt:1772
+#: c-family/c.opt:1910
 #, no-c-format
 msgid "Enable Plan 9 language extensions."
 msgstr ""
 
-#: c-family/c.opt:1776
+#: c-family/c.opt:1914
 #, no-c-format
 msgid "Treat the input file as already preprocessed."
 msgstr ""
 
-#: c-family/c.opt:1784
+#: c-family/c.opt:1922
 #, no-c-format
 msgid ""
 "-ftrack-macro-expansion=<0|1|2>\tTrack locations of tokens coming from macro "
 "expansion and display them in error messages."
 msgstr ""
 
-#: c-family/c.opt:1788
+#: c-family/c.opt:1926
 #, no-c-format
 msgid ""
 "Do not pretty-print template specializations as the template signature "
 "followed by the arguments."
 msgstr ""
 
-#: c-family/c.opt:1792
+#: c-family/c.opt:1930
 #, no-c-format
 msgid "Treat known sprintf return values as constants."
 msgstr ""
 
-#: c-family/c.opt:1796
+#: c-family/c.opt:1934
 #, no-c-format
 msgid ""
 "Used in Fix-and-Continue mode to indicate that object files may be swapped "
 "in at runtime."
 msgstr ""
 
-#: c-family/c.opt:1800
+#: c-family/c.opt:1938
 #, no-c-format
 msgid "Removed in GCC 10.  This switch has no effect."
 msgstr ""
 
-#: c-family/c.opt:1804
+#: c-family/c.opt:1942
 #, no-c-format
 msgid "Generate run time type descriptor information."
 msgstr ""
 
-#: c-family/c.opt:1808 ada/gcc-interface/lang.opt:81
+#: c-family/c.opt:1946 ada/gcc-interface/lang.opt:81
 #, no-c-format
 msgid "Use the narrowest integer type possible for enumeration types."
 msgstr ""
 
-#: c-family/c.opt:1812
+#: c-family/c.opt:1950
 #, no-c-format
 msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"."
 msgstr ""
 
-#: c-family/c.opt:1816
+#: c-family/c.opt:1954
 #, no-c-format
 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed."
 msgstr ""
 
-#: c-family/c.opt:1820 ada/gcc-interface/lang.opt:85
+#: c-family/c.opt:1958 ada/gcc-interface/lang.opt:85
 #, no-c-format
 msgid "Make \"char\" signed by default."
 msgstr ""
 
-#: c-family/c.opt:1824
+#: c-family/c.opt:1962
 #, no-c-format
 msgid "Enable C++14 sized deallocation support."
 msgstr ""
 
-#: c-family/c.opt:1831
+#: c-family/c.opt:1969
 #, no-c-format
 msgid ""
 "-fsso-struct=[big-endian|little-endian|native]\tSet the default scalar "
 "storage order."
 msgstr ""
 
-#: c-family/c.opt:1847
+#: c-family/c.opt:1985
 #, no-c-format
 msgid "Display statistics accumulated during compilation."
 msgstr ""
 
-#: c-family/c.opt:1851
+#: c-family/c.opt:1989
 #, no-c-format
 msgid ""
 "Assume that values of enumeration type are always within the minimum range "
 "of that type."
 msgstr ""
 
-#: c-family/c.opt:1858 c-family/c.opt:1863
+#: c-family/c.opt:1996 c-family/c.opt:2001
 #, no-c-format
 msgid ""
 "Follow the C++17 evaluation order requirements for assignment expressions, "
 "shift, member function calls, etc."
 msgstr ""
 
-#: c-family/c.opt:1880
+#: c-family/c.opt:2018
 #, no-c-format
 msgid ""
 "Set the maximum number of template instantiation notes for a single warning "
 "or error."
 msgstr ""
 
-#: c-family/c.opt:1887
+#: c-family/c.opt:2025
 #, no-c-format
 msgid ""
 "-ftemplate-depth=<number>\tSpecify maximum template instantiation depth."
 msgstr ""
 
-#: c-family/c.opt:1894
+#: c-family/c.opt:2032
 #, no-c-format
 msgid ""
 "-fno-threadsafe-statics\tDo not generate thread-safe code for initializing "
 "local statics."
 msgstr ""
 
-#: c-family/c.opt:1898
+#: c-family/c.opt:2036
 #, no-c-format
 msgid ""
 "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned."
 msgstr ""
 
-#: c-family/c.opt:1902 ada/gcc-interface/lang.opt:89
+#: c-family/c.opt:2040 ada/gcc-interface/lang.opt:89
 #, no-c-format
 msgid "Make \"char\" unsigned by default."
 msgstr ""
 
-#: c-family/c.opt:1906
+#: c-family/c.opt:2044
 #, no-c-format
 msgid "Use __cxa_atexit to register destructors."
 msgstr ""
 
-#: c-family/c.opt:1910
+#: c-family/c.opt:2048
 #, no-c-format
 msgid "Use __cxa_get_exception_ptr in exception handling."
 msgstr ""
 
-#: c-family/c.opt:1914
+#: c-family/c.opt:2052
 #, no-c-format
 msgid "Marks all inlined functions and methods as having hidden visibility."
 msgstr ""
 
-#: c-family/c.opt:1918
+#: c-family/c.opt:2056
 #, no-c-format
 msgid "Changes visibility to match Microsoft Visual Studio by default."
 msgstr ""
 
-#: c-family/c.opt:1930 d/lang.opt:330
+#: c-family/c.opt:2068 d/lang.opt:326
 #, no-c-format
 msgid "Emit common-like symbols as weak symbols."
 msgstr ""
 
-#: c-family/c.opt:1934
+#: c-family/c.opt:2072
 #, no-c-format
 msgid ""
 "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants "
 "to character set <cset>."
 msgstr ""
 
-#: c-family/c.opt:1938
+#: c-family/c.opt:2076
 #, no-c-format
 msgid "Generate a #line directive pointing at the current working directory."
 msgstr ""
 
-#: c-family/c.opt:1946
+#: c-family/c.opt:2084
 #, no-c-format
 msgid ""
 "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode."
 msgstr ""
 
-#: c-family/c.opt:1950
+#: c-family/c.opt:2088
 #, no-c-format
 msgid "Dump declarations to a .decl file."
 msgstr ""
 
-#: c-family/c.opt:1954
+#: c-family/c.opt:2092
 #, no-c-format
 msgid ""
 "-femit-struct-debug-baseonly\tAggressive reduced debug info for structs."
 msgstr ""
 
-#: c-family/c.opt:1958
+#: c-family/c.opt:2096
 #, no-c-format
 msgid ""
 "-femit-struct-debug-reduced\tConservative reduced debug info for structs."
 msgstr ""
 
-#: c-family/c.opt:1962
+#: c-family/c.opt:2100
 #, no-c-format
 msgid ""
 "-femit-struct-debug-detailed=<spec-list>\tDetailed reduced debug info for "
 "structs."
 msgstr ""
 
-#: c-family/c.opt:1966
+#: c-family/c.opt:2104
 #, no-c-format
 msgid ""
 "Interpret imaginary, fixed-point, or other gnu number suffix as the "
 "corresponding number literal rather than a user-defined number literal."
 msgstr ""
 
-#: c-family/c.opt:1971
+#: c-family/c.opt:2109
 #, no-c-format
 msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path."
 msgstr ""
 
-#: c-family/c.opt:1975
+#: c-family/c.opt:2113
 #, no-c-format
 msgid "-imacros <file>\tAccept definition of macros in <file>."
 msgstr ""
 
-#: c-family/c.opt:1979
+#: c-family/c.opt:2117
 #, no-c-format
 msgid "-imultilib <dir>\tSet <dir> to be the multilib include subdirectory."
 msgstr ""
 
-#: c-family/c.opt:1983
+#: c-family/c.opt:2121
 #, no-c-format
 msgid "-include <file>\tInclude the contents of <file> before other files."
 msgstr ""
 
-#: c-family/c.opt:1987
+#: c-family/c.opt:2125
 #, no-c-format
 msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options."
 msgstr ""
 
-#: c-family/c.opt:1991
+#: c-family/c.opt:2129
 #, no-c-format
 msgid "-isysroot <dir>\tSet <dir> to be the system root directory."
 msgstr ""
 
-#: c-family/c.opt:1995
+#: c-family/c.opt:2133
 #, no-c-format
 msgid "-isystem <dir>\tAdd <dir> to the start of the system include path."
 msgstr ""
 
-#: c-family/c.opt:1999
+#: c-family/c.opt:2137
 #, no-c-format
 msgid "-iquote <dir>\tAdd <dir> to the end of the quote include path."
 msgstr ""
 
-#: c-family/c.opt:2003
+#: c-family/c.opt:2141
 #, no-c-format
 msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path."
 msgstr ""
 
-#: c-family/c.opt:2007
+#: c-family/c.opt:2145
 #, no-c-format
 msgid ""
 "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path."
 msgstr ""
 
-#: c-family/c.opt:2017
+#: c-family/c.opt:2155
 #, no-c-format
 msgid ""
 "Do not search standard system include directories (those specified with -"
 "isystem will still be used)."
 msgstr ""
 
-#: c-family/c.opt:2021
+#: c-family/c.opt:2159
 #, no-c-format
 msgid "Do not search standard system include directories for C++."
 msgstr ""
 
-#: c-family/c.opt:2033
+#: c-family/c.opt:2171
 #, no-c-format
 msgid "Generate C header of platform-specific features."
 msgstr ""
 
-#: c-family/c.opt:2037
+#: c-family/c.opt:2175
 #, no-c-format
 msgid "Remap file names when including files."
 msgstr ""
 
-#: c-family/c.opt:2041 c-family/c.opt:2045
+#: c-family/c.opt:2179 c-family/c.opt:2183
 #, no-c-format
 msgid ""
 "Conform to the ISO 1998 C++ standard revised by the 2003 technical "
 "corrigendum."
 msgstr ""
 
-#: c-family/c.opt:2049
+#: c-family/c.opt:2187
 #, no-c-format
 msgid "Conform to the ISO 2011 C++ standard."
 msgstr ""
 
-#: c-family/c.opt:2053
+#: c-family/c.opt:2191
 #, no-c-format
 msgid "Deprecated in favor of -std=c++11."
 msgstr ""
 
-#: c-family/c.opt:2057
+#: c-family/c.opt:2195
 #, no-c-format
 msgid "Deprecated in favor of -std=c++14."
 msgstr ""
 
-#: c-family/c.opt:2061
+#: c-family/c.opt:2199
 #, no-c-format
 msgid "Conform to the ISO 2014 C++ standard."
 msgstr ""
 
-#: c-family/c.opt:2065
+#: c-family/c.opt:2203
 #, no-c-format
 msgid "Deprecated in favor of -std=c++17."
 msgstr ""
 
-#: c-family/c.opt:2069
+#: c-family/c.opt:2207
 #, no-c-format
 msgid "Conform to the ISO 2017 C++ standard."
 msgstr ""
 
-#: c-family/c.opt:2073 c-family/c.opt:2077
+#: c-family/c.opt:2211 c-family/c.opt:2215
+#, no-c-format
+msgid ""
+"Conform to the ISO 2020 C++ standard (experimental and incomplete support)."
+msgstr ""
+
+#: c-family/c.opt:2219 c-family/c.opt:2223
 #, no-c-format
 msgid ""
-"Conform to the ISO 2020 C++ draft standard (experimental and incomplete "
+"Conform to the ISO 2023 C++ draft standard (experimental and incomplete "
 "support)."
 msgstr ""
 
-#: c-family/c.opt:2081 c-family/c.opt:2211
+#: c-family/c.opt:2227 c-family/c.opt:2365
 #, no-c-format
 msgid "Conform to the ISO 2011 C standard."
 msgstr ""
 
-#: c-family/c.opt:2085
+#: c-family/c.opt:2231
 #, no-c-format
 msgid "Deprecated in favor of -std=c11."
 msgstr ""
 
-#: c-family/c.opt:2089 c-family/c.opt:2093 c-family/c.opt:2215
-#: c-family/c.opt:2219
+#: c-family/c.opt:2235 c-family/c.opt:2239 c-family/c.opt:2369
+#: c-family/c.opt:2373
 #, no-c-format
 msgid "Conform to the ISO 2017 C standard (published in 2018)."
 msgstr ""
 
-#: c-family/c.opt:2097
+#: c-family/c.opt:2243
 #, no-c-format
 msgid ""
 "Conform to the ISO 202X C standard draft (experimental and incomplete "
 "support)."
 msgstr ""
 
-#: c-family/c.opt:2101 c-family/c.opt:2105 c-family/c.opt:2195
+#: c-family/c.opt:2247 c-family/c.opt:2251 c-family/c.opt:2349
 #, no-c-format
 msgid "Conform to the ISO 1990 C standard."
 msgstr ""
 
-#: c-family/c.opt:2109 c-family/c.opt:2203
+#: c-family/c.opt:2255 c-family/c.opt:2357
 #, no-c-format
 msgid "Conform to the ISO 1999 C standard."
 msgstr ""
 
-#: c-family/c.opt:2113
+#: c-family/c.opt:2259
 #, no-c-format
 msgid "Deprecated in favor of -std=c99."
 msgstr ""
 
-#: c-family/c.opt:2117 c-family/c.opt:2122
+#: c-family/c.opt:2263 c-family/c.opt:2268
 #, no-c-format
 msgid ""
 "Conform to the ISO 1998 C++ standard revised by the 2003 technical "
 "corrigendum with GNU extensions."
 msgstr ""
 
-#: c-family/c.opt:2127
+#: c-family/c.opt:2273
 #, no-c-format
 msgid "Conform to the ISO 2011 C++ standard with GNU extensions."
 msgstr ""
 
-#: c-family/c.opt:2131
+#: c-family/c.opt:2277
 #, no-c-format
 msgid "Deprecated in favor of -std=gnu++11."
 msgstr ""
 
-#: c-family/c.opt:2135
+#: c-family/c.opt:2281
 #, no-c-format
 msgid "Deprecated in favor of -std=gnu++14."
 msgstr ""
 
-#: c-family/c.opt:2139
+#: c-family/c.opt:2285
 #, no-c-format
 msgid "Conform to the ISO 2014 C++ standard with GNU extensions."
 msgstr ""
 
-#: c-family/c.opt:2143
+#: c-family/c.opt:2289
 #, no-c-format
 msgid "Deprecated in favor of -std=gnu++17."
 msgstr ""
 
-#: c-family/c.opt:2147
+#: c-family/c.opt:2293
 #, no-c-format
 msgid "Conform to the ISO 2017 C++ standard with GNU extensions."
 msgstr ""
 
-#: c-family/c.opt:2151 c-family/c.opt:2155
+#: c-family/c.opt:2297 c-family/c.opt:2301
+#, no-c-format
+msgid ""
+"Conform to the ISO 2020 C++ standard with GNU extensions (experimental and "
+"incomplete support)."
+msgstr ""
+
+#: c-family/c.opt:2305 c-family/c.opt:2309
 #, no-c-format
 msgid ""
-"Conform to the ISO 2020 C++ draft standard with GNU extensions (experimental "
+"Conform to the ISO 2023 C++ draft standard with GNU extensions (experimental "
 "and incomplete support)."
 msgstr ""
 
-#: c-family/c.opt:2159
+#: c-family/c.opt:2313
 #, no-c-format
 msgid "Conform to the ISO 2011 C standard with GNU extensions."
 msgstr ""
 
-#: c-family/c.opt:2163
+#: c-family/c.opt:2317
 #, no-c-format
 msgid "Deprecated in favor of -std=gnu11."
 msgstr ""
 
-#: c-family/c.opt:2167 c-family/c.opt:2171
+#: c-family/c.opt:2321 c-family/c.opt:2325
 #, no-c-format
 msgid ""
 "Conform to the ISO 2017 C standard (published in 2018) with GNU extensions."
 msgstr ""
 
-#: c-family/c.opt:2175
+#: c-family/c.opt:2329
 #, no-c-format
 msgid ""
 "Conform to the ISO 202X C standard draft with GNU extensions (experimental "
 "and incomplete support)."
 msgstr ""
 
-#: c-family/c.opt:2179 c-family/c.opt:2183
+#: c-family/c.opt:2333 c-family/c.opt:2337
 #, no-c-format
 msgid "Conform to the ISO 1990 C standard with GNU extensions."
 msgstr ""
 
-#: c-family/c.opt:2187
+#: c-family/c.opt:2341
 #, no-c-format
 msgid "Conform to the ISO 1999 C standard with GNU extensions."
 msgstr ""
 
-#: c-family/c.opt:2191
+#: c-family/c.opt:2345
 #, no-c-format
 msgid "Deprecated in favor of -std=gnu99."
 msgstr ""
 
-#: c-family/c.opt:2199
+#: c-family/c.opt:2353
 #, no-c-format
 msgid "Conform to the ISO 1990 C standard as amended in 1994."
 msgstr ""
 
-#: c-family/c.opt:2207
+#: c-family/c.opt:2361
 #, no-c-format
 msgid "Deprecated in favor of -std=iso9899:1999."
 msgstr ""
 
-#: c-family/c.opt:2226
+#: c-family/c.opt:2377
+#, no-c-format
+msgid ""
+"-stdlib=[libstdc++|libc++]\tThe standard library to be used for C++ headers "
+"and runtime."
+msgstr ""
+
+#: c-family/c.opt:2394
 #, no-c-format
 msgid "Enable traditional preprocessing."
 msgstr ""
 
-#: c-family/c.opt:2230
+#: c-family/c.opt:2398
 #, no-c-format
 msgid "-trigraphs\tSupport ISO C trigraphs."
 msgstr ""
 
-#: c-family/c.opt:2234
+#: c-family/c.opt:2402
 #, no-c-format
 msgid "Do not predefine system-specific and GCC-specific macros."
 msgstr ""
@@ -7830,152 +8091,147 @@ msgstr ""
 msgid "Warn from speculative compiles such as __traits(compiles)."
 msgstr ""
 
-#: d/lang.opt:151
+#: d/lang.opt:155
 #, no-c-format
 msgid "Generate JSON file."
 msgstr ""
 
-#: d/lang.opt:155
+#: d/lang.opt:159
 #, no-c-format
 msgid "-Xf <file>\tWrite JSON output to the given <file>."
 msgstr ""
 
-#: d/lang.opt:159
+#: d/lang.opt:163
 #, no-c-format
 msgid "Debug library to use instead of phobos."
 msgstr ""
 
-#: d/lang.opt:163
+#: d/lang.opt:167
 #, no-c-format
 msgid "Default library to use instead of phobos."
 msgstr ""
 
-#: d/lang.opt:167
+#: d/lang.opt:171
 #, no-c-format
 msgid "Do link the standard D startup files in the compilation."
 msgstr ""
 
-#: d/lang.opt:174
+#: d/lang.opt:178
 #, no-c-format
 msgid "Generate code for all template instantiations."
 msgstr ""
 
-#: d/lang.opt:178
+#: d/lang.opt:182
 #, no-c-format
 msgid "Generate code for assert contracts."
 msgstr ""
 
-#: d/lang.opt:186
+#: d/lang.opt:190
 #, no-c-format
 msgid ""
 "-fbounds-check=[on|safeonly|off]\tTurn array bounds checks on, in @safe code "
 "only, or off."
 msgstr ""
 
-#: d/lang.opt:210
+#: d/lang.opt:214
 #, no-c-format
 msgid "Compile in debug code."
 msgstr ""
 
-#: d/lang.opt:214
+#: d/lang.opt:218
 #, no-c-format
 msgid ""
 "-fdebug=<level|ident>\tCompile in debug code, code <= <level>, or code "
 "identified by <ident>."
 msgstr ""
 
-#: d/lang.opt:218
+#: d/lang.opt:222
 #, no-c-format
 msgid "Generate documentation."
 msgstr ""
 
-#: d/lang.opt:222
+#: d/lang.opt:226
 #, no-c-format
 msgid "-fdoc-dir=<dir>\tWrite documentation file to directory <dir>."
 msgstr ""
 
-#: d/lang.opt:226
+#: d/lang.opt:230
 #, no-c-format
 msgid "-fdoc-file=<file>\tWrite documentation to <file>."
 msgstr ""
 
-#: d/lang.opt:230
+#: d/lang.opt:234
 #, no-c-format
 msgid "-fdoc-inc=<file>\tInclude a Ddoc macro <file>."
 msgstr ""
 
-#: d/lang.opt:234
+#: d/lang.opt:238
 #, no-c-format
 msgid "Assume that standard D runtime libraries and \"D main\" exist."
 msgstr ""
 
-#: d/lang.opt:238
+#: d/lang.opt:242
 #, no-c-format
 msgid "Display the frontend AST after parsing and semantic passes."
 msgstr ""
 
-#: d/lang.opt:242
+#: d/lang.opt:246
 #, no-c-format
 msgid "Ignore unsupported pragmas."
 msgstr ""
 
-#: d/lang.opt:246
+#: d/lang.opt:250
 #, no-c-format
 msgid "Generate code for class invariant contracts."
 msgstr ""
 
-#: d/lang.opt:250
+#: d/lang.opt:254
 #, no-c-format
 msgid "Generate a default D main() function when compiling."
 msgstr ""
 
-#: d/lang.opt:254
+#: d/lang.opt:258
 #, no-c-format
 msgid ""
 "-fmodule-file=<package.module>=<filespec>\tuse <filespec> as source file for "
 "<package.module>."
 msgstr ""
 
-#: d/lang.opt:258
+#: d/lang.opt:262
 #, no-c-format
 msgid "Generate ModuleInfo struct for output module."
 msgstr ""
 
-#: d/lang.opt:262
+#: d/lang.opt:266
 #, no-c-format
 msgid ""
 "Process all modules specified on the command line, but only generate code "
 "for the module specified by the argument."
 msgstr ""
 
-#: d/lang.opt:266
+#: d/lang.opt:270
 #, no-c-format
 msgid "Generate code for postcondition contracts."
 msgstr ""
 
-#: d/lang.opt:270
+#: d/lang.opt:274
 #, no-c-format
 msgid "Generate code for precondition contracts."
 msgstr ""
 
-#: d/lang.opt:274
+#: d/lang.opt:278
 #, no-c-format
 msgid "Compile release version."
 msgstr ""
 
-#: d/lang.opt:282
-#, no-c-format
-msgid "Generate code for switches without a default case."
-msgstr ""
-
 #: d/lang.opt:286
 #, no-c-format
-msgid "List information on all language changes."
+msgid "Generate code for switches without a default case."
 msgstr ""
 
 #: d/lang.opt:290
 #, no-c-format
-msgid "Give deprecation messages about -ftransition=import anomalies."
+msgid "List information on all language changes."
 msgstr ""
 
 #: d/lang.opt:294
@@ -8000,42 +8256,37 @@ msgstr ""
 
 #: d/lang.opt:310
 #, no-c-format
-msgid "Revert to single phase name lookup."
-msgstr ""
-
-#: d/lang.opt:314
-#, no-c-format
 msgid "List all hidden GC allocations."
 msgstr ""
 
-#: d/lang.opt:318
+#: d/lang.opt:314
 #, no-c-format
 msgid "List all variables going into thread local storage."
 msgstr ""
 
-#: d/lang.opt:322
+#: d/lang.opt:318
 #, no-c-format
 msgid "Compile in unittest code."
 msgstr ""
 
-#: d/lang.opt:326
+#: d/lang.opt:322
 #, no-c-format
 msgid ""
 "-fversion=<level|ident>\tCompile in version code >= <level> or identified by "
 "<ident>."
 msgstr ""
 
-#: d/lang.opt:350
+#: d/lang.opt:346
 #, no-c-format
 msgid "Do not link the standard D library in the compilation."
 msgstr ""
 
-#: d/lang.opt:358
+#: d/lang.opt:354
 #, no-c-format
 msgid "Link the standard D library statically in the compilation."
 msgstr ""
 
-#: d/lang.opt:362
+#: d/lang.opt:358
 #, no-c-format
 msgid "Link the standard D library dynamically in the compilation."
 msgstr ""
@@ -8067,45 +8318,50 @@ msgstr ""
 
 #: go/lang.opt:62
 #, no-c-format
-msgid "-fgo-optimize-<type>\tTurn on optimization passes in the frontend."
+msgid "-fgo-embedcfg=<file>\tList embedded files via go:embed."
 msgstr ""
 
 #: go/lang.opt:66
 #, no-c-format
-msgid "-fgo-pkgpath=<string>\tSet Go package path."
+msgid "-fgo-optimize-<type>\tTurn on optimization passes in the frontend."
 msgstr ""
 
 #: go/lang.opt:70
 #, no-c-format
+msgid "-fgo-pkgpath=<string>\tSet Go package path."
+msgstr ""
+
+#: go/lang.opt:74
+#, no-c-format
 msgid ""
 "-fgo-prefix=<string>\tSet package-specific prefix for exported Go names."
 msgstr ""
 
-#: go/lang.opt:74
+#: go/lang.opt:78
 #, no-c-format
 msgid ""
 "-fgo-relative-import-path=<path>\tTreat a relative import as relative to "
 "path."
 msgstr ""
 
-#: go/lang.opt:78
+#: go/lang.opt:82
 #, no-c-format
 msgid "Functions which return values must end with return statements."
 msgstr ""
 
-#: go/lang.opt:82
+#: go/lang.opt:86
 #, no-c-format
 msgid ""
 "Emit debugging information related to the escape analysis pass when run with "
 "-fgo-optimize-allocs."
 msgstr ""
 
-#: go/lang.opt:86
+#: go/lang.opt:90
 #, no-c-format
 msgid "-fgo-debug-escape-hash=<string>\tHash value to debug escape analysis."
 msgstr ""
 
-#: go/lang.opt:90
+#: go/lang.opt:94
 #, no-c-format
 msgid "Emit optimization diagnostics."
 msgstr ""
@@ -8126,204 +8382,262 @@ msgstr ""
 
 #: analyzer/analyzer.opt:35
 #, no-c-format
+msgid "The maximum number of constraints per state."
+msgstr ""
+
+#: analyzer/analyzer.opt:39
+#, no-c-format
 msgid ""
 "The maximum number of times a callsite can appear in a call stack within the "
 "analyzer, before terminating analysis of a call that would recurse deeper."
 msgstr ""
 
-#: analyzer/analyzer.opt:39
+#: analyzer/analyzer.opt:43
+#, no-c-format
+msgid ""
+"The maximum depth of a symbolic value, before approximating the value as "
+"unknown."
+msgstr ""
+
+#: analyzer/analyzer.opt:47
 #, no-c-format
 msgid ""
 "The minimum number of supernodes within a function for the analyzer to "
 "consider summarizing its effects at call sites."
 msgstr ""
 
-#: analyzer/analyzer.opt:43
+#: analyzer/analyzer.opt:51
+#, no-c-format
+msgid ""
+"The maximum depth of exploded nodes that should appear in a dot dump before "
+"switching to a less verbose format."
+msgstr ""
+
+#: analyzer/analyzer.opt:55
 #, no-c-format
 msgid ""
 "Warn about code paths in which a stdio FILE can be closed more than once."
 msgstr ""
 
-#: analyzer/analyzer.opt:47
+#: analyzer/analyzer.opt:59
 #, no-c-format
 msgid "Warn about code paths in which a pointer can be freed more than once."
 msgstr ""
 
-#: analyzer/analyzer.opt:51
+#: analyzer/analyzer.opt:63
 #, no-c-format
 msgid "Warn about code paths in which sensitive data is written to a file."
 msgstr ""
 
-#: analyzer/analyzer.opt:55
+#: analyzer/analyzer.opt:67
 #, no-c-format
 msgid "Warn about code paths in which a stdio FILE is not closed."
 msgstr ""
 
-#: analyzer/analyzer.opt:59
+#: analyzer/analyzer.opt:71
 #, no-c-format
 msgid "Warn about code paths in which a non-heap pointer is freed."
 msgstr ""
 
-#: analyzer/analyzer.opt:63
+#: analyzer/analyzer.opt:75
 #, no-c-format
 msgid "Warn about code paths in which a heap-allocated pointer leaks."
 msgstr ""
 
-#: analyzer/analyzer.opt:67
+#: analyzer/analyzer.opt:79
+#, no-c-format
+msgid ""
+"Warn about code paths in which the wrong deallocation function is called."
+msgstr ""
+
+#: analyzer/analyzer.opt:83
 #, no-c-format
 msgid ""
 "Warn about code paths in which a possibly-NULL value is passed to a must-not-"
 "be-NULL function argument."
 msgstr ""
 
-#: analyzer/analyzer.opt:71
+#: analyzer/analyzer.opt:87
 #, no-c-format
 msgid "Warn about code paths in which a possibly-NULL pointer is dereferenced."
 msgstr ""
 
-#: analyzer/analyzer.opt:75
+#: analyzer/analyzer.opt:91
 #, no-c-format
 msgid ""
 "Warn about code paths in which an async-signal-unsafe function is called "
 "from a signal handler."
 msgstr ""
 
-#: analyzer/analyzer.opt:79
+#: analyzer/analyzer.opt:95
 #, no-c-format
 msgid ""
 "Warn about code paths in which NULL is passed to a must-not-be-NULL function "
 "argument."
 msgstr ""
 
-#: analyzer/analyzer.opt:83
+#: analyzer/analyzer.opt:99
 #, no-c-format
 msgid "Warn about code paths in which a NULL pointer is dereferenced."
 msgstr ""
 
-#: analyzer/analyzer.opt:87
+#: analyzer/analyzer.opt:103
+#, no-c-format
+msgid ""
+"Warn about code paths in which a shift with negative count is attempted."
+msgstr ""
+
+#: analyzer/analyzer.opt:107
+#, no-c-format
+msgid ""
+"Warn about code paths in which a shift with count >= width of type is "
+"attempted."
+msgstr ""
+
+#: analyzer/analyzer.opt:111
 #, no-c-format
 msgid ""
 "Warn about code paths in which a longjmp rewinds to a jmp_buf saved in a "
 "stack frame that has returned."
 msgstr ""
 
-#: analyzer/analyzer.opt:91
+#: analyzer/analyzer.opt:115
 #, no-c-format
 msgid ""
 "Warn about code paths in which an unsanitized value is used as an array "
 "index."
 msgstr ""
 
-#: analyzer/analyzer.opt:95
+#: analyzer/analyzer.opt:119
 #, no-c-format
 msgid "Warn about code paths in which a freed value is used."
 msgstr ""
 
-#: analyzer/analyzer.opt:99
+#: analyzer/analyzer.opt:123
 #, no-c-format
 msgid ""
 "Warn about code paths in which a pointer to a stale stack frame is used."
 msgstr ""
 
-#: analyzer/analyzer.opt:103
+#: analyzer/analyzer.opt:127
+#, no-c-format
+msgid "Warn about code paths which attempt to write to a const object."
+msgstr ""
+
+#: analyzer/analyzer.opt:131
+#, no-c-format
+msgid "Warn about code paths which attempt to write to a string literal."
+msgstr ""
+
+#: analyzer/analyzer.opt:135
 #, no-c-format
 msgid "Warn if the code is too complicated for the analyzer to fully explore."
 msgstr ""
 
-#: analyzer/analyzer.opt:107
+#: analyzer/analyzer.opt:139
 #, no-c-format
 msgid "Restrict the analyzer to run just the named checker."
 msgstr ""
 
-#: analyzer/analyzer.opt:111
+#: analyzer/analyzer.opt:143
 #, no-c-format
 msgid "Avoid combining multiple statements into one exploded edge."
 msgstr ""
 
-#: analyzer/analyzer.opt:115
+#: analyzer/analyzer.opt:147
+#, no-c-format
+msgid "Verify that paths are feasible when emitting diagnostics."
+msgstr ""
+
+#: analyzer/analyzer.opt:151
 #, no-c-format
 msgid "Issue a note when diagnostics are deduplicated."
 msgstr ""
 
-#: analyzer/analyzer.opt:119
+#: analyzer/analyzer.opt:155
 #, no-c-format
 msgid "Purge unneeded state during analysis."
 msgstr ""
 
-#: analyzer/analyzer.opt:123
+#: analyzer/analyzer.opt:159
 #, no-c-format
 msgid "Merge similar-enough states during analysis."
 msgstr ""
 
-#: analyzer/analyzer.opt:127
+#: analyzer/analyzer.opt:163
 #, no-c-format
 msgid "Enable transitivity of constraints during analysis."
 msgstr ""
 
-#: analyzer/analyzer.opt:131
+#: analyzer/analyzer.opt:167
 #, no-c-format
 msgid "Approximate the effect of function calls to simplify analysis."
 msgstr ""
 
-#: analyzer/analyzer.opt:135
+#: analyzer/analyzer.opt:171
 #, no-c-format
 msgid "Emit more verbose descriptions of control flow in diagnostics."
 msgstr ""
 
-#: analyzer/analyzer.opt:139
+#: analyzer/analyzer.opt:175
 #, no-c-format
 msgid "Emit more verbose descriptions of state changes in diagnostics."
 msgstr ""
 
-#: analyzer/analyzer.opt:143
+#: analyzer/analyzer.opt:179
 #, no-c-format
 msgid "Control which events are displayed in diagnostic paths."
 msgstr ""
 
-#: analyzer/analyzer.opt:147
+#: analyzer/analyzer.opt:183
 #, no-c-format
 msgid "Dump various analyzer internals to SRCFILE.analyzer.txt."
 msgstr ""
 
-#: analyzer/analyzer.opt:151
+#: analyzer/analyzer.opt:187
 #, no-c-format
 msgid "Dump various analyzer internals to stderr."
 msgstr ""
 
-#: analyzer/analyzer.opt:155
+#: analyzer/analyzer.opt:191
 #, no-c-format
 msgid ""
 "Dump analyzer-specific call graph information to a SRCFILE.callgraph.dot "
 "file."
 msgstr ""
 
-#: analyzer/analyzer.opt:159
+#: analyzer/analyzer.opt:195
 #, no-c-format
 msgid "Dump the analyzer exploded graph to a SRCFILE.eg.dot file."
 msgstr ""
 
-#: analyzer/analyzer.opt:163
+#: analyzer/analyzer.opt:199
 #, no-c-format
 msgid "Emit diagnostics showing the location of nodes in the exploded graph."
 msgstr ""
 
-#: analyzer/analyzer.opt:167
+#: analyzer/analyzer.opt:203
 #, no-c-format
 msgid "Dump a textual representation of the exploded graph to SRCFILE.eg.txt."
 msgstr ""
 
-#: analyzer/analyzer.opt:171
+#: analyzer/analyzer.opt:207
 #, no-c-format
 msgid ""
 "Dump a textual representation of the exploded graph to SRCFILE.eg-ID.txt."
 msgstr ""
 
-#: analyzer/analyzer.opt:175
+#: analyzer/analyzer.opt:211
+#, no-c-format
+msgid "Dump analyzer-specific data to a SRCFILE.analyzer.json.gz file."
+msgstr ""
+
+#: analyzer/analyzer.opt:215
 #, no-c-format
 msgid "Dump state-purging information to a SRCFILE.state-purge.dot file."
 msgstr ""
 
-#: analyzer/analyzer.opt:179
+#: analyzer/analyzer.opt:219
 #, no-c-format
 msgid "Dump the analyzer supergraph to a SRCFILE.supergraph.dot file."
 msgstr ""
@@ -9019,7 +9333,7 @@ msgstr ""
 msgid "Use simulator runtime."
 msgstr ""
 
-#: config/bfin/bfin.opt:44 config/arm/arm.opt:111
+#: config/bfin/bfin.opt:44 config/arm/arm.opt:102
 #, no-c-format
 msgid "Specify the name of the target CPU."
 msgstr ""
@@ -9078,7 +9392,7 @@ msgstr ""
 msgid "Link with the fast floating-point library."
 msgstr ""
 
-#: config/bfin/bfin.opt:90 config/arm/arm.opt:312 config/frv/frv.opt:130
+#: config/bfin/bfin.opt:90 config/arm/arm.opt:303 config/frv/frv.opt:130
 #, no-c-format
 msgid "Enable Function Descriptor PIC mode."
 msgstr ""
@@ -9133,7 +9447,7 @@ msgstr ""
 msgid "Known M68K ISAs (for use with the -march= option):"
 msgstr ""
 
-#: config/m68k/ieee.opt:24 config/i386/i386.opt:364
+#: config/m68k/ieee.opt:24 config/i386/i386.opt:374
 #, no-c-format
 msgid "Use IEEE math for fp comparisons."
 msgstr ""
@@ -9228,7 +9542,7 @@ msgstr ""
 msgid "Align variables on a 32-bit boundary."
 msgstr ""
 
-#: config/m68k/m68k.opt:103 config/arm/arm.opt:86 config/nios2/nios2.opt:570
+#: config/m68k/m68k.opt:103 config/arm/arm.opt:77 config/nios2/nios2.opt:570
 #: config/nds32/nds32.opt:171 config/c6x/c6x.opt:67
 #, no-c-format
 msgid "Specify the name of the target architecture."
@@ -9349,7 +9663,7 @@ msgstr ""
 msgid "Specify integer and floating-point calling convention."
 msgstr ""
 
-#: config/riscv/riscv.opt:38 config/i386/i386.opt:411
+#: config/riscv/riscv.opt:38 config/i386/i386.opt:421
 #, no-c-format
 msgid "Attempt to keep stack aligned to this power of 2."
 msgstr ""
@@ -9384,16 +9698,22 @@ msgstr ""
 #: config/riscv/riscv.opt:84
 #, no-c-format
 msgid ""
+"-mcpu=PROCESSOR\tUse architecture of and optimize the output for PROCESSOR."
+msgstr ""
+
+#: config/riscv/riscv.opt:88
+#, no-c-format
+msgid ""
 "-msmall-data-limit=N\tPut global and static data smaller than <number> bytes "
 "into a special section (on some targets)."
 msgstr ""
 
-#: config/riscv/riscv.opt:88
+#: config/riscv/riscv.opt:92
 #, no-c-format
 msgid "Use smaller but slower prologue and epilogue code."
 msgstr ""
 
-#: config/riscv/riscv.opt:92
+#: config/riscv/riscv.opt:96
 #, no-c-format
 msgid ""
 "Convert BASE + LARGE_OFFSET addresses to NEW_BASE + SMALL_OFFSET to allow "
@@ -9401,50 +9721,84 @@ msgid ""
 "targets 32-bit integer load/stores."
 msgstr ""
 
-#: config/riscv/riscv.opt:98 config/aarch64/aarch64.opt:92
+#: config/riscv/riscv.opt:102 config/aarch64/aarch64.opt:92
 #, no-c-format
 msgid "Specify the code model."
 msgstr ""
 
-#: config/riscv/riscv.opt:102
+#: config/riscv/riscv.opt:106
 #, no-c-format
 msgid "Do not generate unaligned memory accesses."
 msgstr ""
 
-#: config/riscv/riscv.opt:106 config/i386/i386.opt:283
+#: config/riscv/riscv.opt:110 config/i386/i386.opt:293
 #: config/rs6000/aix64.opt:36 config/rs6000/linux64.opt:32
 #: config/tilegx/tilegx.opt:57
 #, no-c-format
 msgid "Known code models (for use with the -mcmodel= option):"
 msgstr ""
 
-#: config/riscv/riscv.opt:116
+#: config/riscv/riscv.opt:120
 #, no-c-format
 msgid "Use %reloc() operators, rather than assembly macros, to load addresses."
 msgstr ""
 
-#: config/riscv/riscv.opt:120
+#: config/riscv/riscv.opt:124
 #, no-c-format
 msgid ""
 "Take advantage of linker relaxations to reduce the number of instructions "
 "required to materialize symbol addresses."
 msgstr ""
 
-#: config/riscv/riscv.opt:139
+#: config/riscv/riscv.opt:143
 #, no-c-format
 msgid "Emit RISC-V ELF attribute."
 msgstr ""
 
-#: config/riscv/riscv.opt:143 config/i386/i386.opt:236
+#: config/riscv/riscv.opt:147 config/i386/i386.opt:246
 #, no-c-format
 msgid "Use the given data alignment."
 msgstr ""
 
-#: config/riscv/riscv.opt:147 config/i386/i386.opt:240
+#: config/riscv/riscv.opt:151 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:161 config/aarch64/aarch64.opt:235
+#: config/i386/i386.opt:995 config/rs6000/rs6000.opt:570
+#, no-c-format
+msgid "Use given stack-protector guard."
+msgstr ""
+
+#: config/riscv/riscv.opt:165 config/aarch64/aarch64.opt:239
+#: config/rs6000/rs6000.opt:574
+#, no-c-format
+msgid "Valid arguments to -mstack-protector-guard=:"
+msgstr ""
+
+#: config/riscv/riscv.opt:175 config/i386/i386.opt:1009
+#: config/rs6000/rs6000.opt:584
+#, no-c-format
+msgid "Use the given base register for addressing the stack-protector guard."
+msgstr ""
+
+#: config/riscv/riscv.opt:182 config/i386/i386.opt:1016
+#: config/rs6000/rs6000.opt:591
+#, no-c-format
+msgid "Use the given offset for addressing the stack-protector guard."
+msgstr ""
+
+#: config/riscv/riscv.opt:192
+#, no-c-format
+msgid "Supported ISA specs (for use with the -misa-spec= option):"
+msgstr ""
+
+#: config/riscv/riscv.opt:205
+#, no-c-format
+msgid "Set the version of RISC-V ISA spec."
+msgstr ""
+
 #: config/m32c/m32c.opt:23
 #, no-c-format
 msgid "-msim\tUse simulator runtime."
@@ -9512,34 +9866,34 @@ msgstr ""
 msgid "Specify the ISA to build for: msp430, msp430x, msp430xv2."
 msgstr ""
 
-#: config/msp430/msp430.opt:31
+#: config/msp430/msp430.opt:52
 #, no-c-format
 msgid "Select large model - 20-bit addresses/pointers."
 msgstr ""
 
-#: config/msp430/msp430.opt:35
+#: config/msp430/msp430.opt:56
 #, no-c-format
 msgid "Select small model - 16-bit addresses/pointers (default)."
 msgstr ""
 
-#: config/msp430/msp430.opt:39
+#: config/msp430/msp430.opt:60
 #, no-c-format
 msgid "Optimize opcode sizes at link time."
 msgstr ""
 
-#: config/msp430/msp430.opt:46 config/pru/pru.opt:26
+#: config/msp430/msp430.opt:67 config/pru/pru.opt:26
 #, no-c-format
 msgid ""
 "Use a minimum runtime (no static initializers or ctors) for memory-"
 "constrained devices."
 msgstr ""
 
-#: config/msp430/msp430.opt:53
+#: config/msp430/msp430.opt:74
 #, no-c-format
 msgid "Specify the type of hardware multiply to support."
 msgstr ""
 
-#: config/msp430/msp430.opt:75
+#: config/msp430/msp430.opt:96
 #, no-c-format
 msgid ""
 "Specify whether functions should be placed into the lower or upper memory "
@@ -9547,7 +9901,7 @@ msgid ""
 "fit (default: lower)."
 msgstr ""
 
-#: config/msp430/msp430.opt:79
+#: config/msp430/msp430.opt:100
 #, no-c-format
 msgid ""
 "Specify whether variables should be placed into the lower or upper memory "
@@ -9555,27 +9909,27 @@ msgid ""
 "fit (default: lower)."
 msgstr ""
 
-#: config/msp430/msp430.opt:83
+#: config/msp430/msp430.opt:104
 #, no-c-format
 msgid ""
 "Add the .lower prefix to section names when compiling with -m{code,data}-"
 "region=lower (disabled by default)."
 msgstr ""
 
-#: config/msp430/msp430.opt:102
+#: config/msp430/msp430.opt:123
 #, no-c-format
 msgid ""
 "Passes on a request to the assembler to enable fixes for various silicon "
 "errata."
 msgstr ""
 
-#: config/msp430/msp430.opt:106
+#: config/msp430/msp430.opt:127
 #, no-c-format
 msgid ""
 "Passes on a request to the assembler to warn about various silicon errata."
 msgstr ""
 
-#: config/msp430/msp430.opt:110
+#: config/msp430/msp430.opt:131
 #, no-c-format
 msgid ""
 "The path to devices.csv.  The GCC driver can normally locate devices.csv "
@@ -9583,6 +9937,15 @@ msgid ""
 "pass this."
 msgstr ""
 
+#: config/msp430/msp430.opt:136
+#, no-c-format
+msgid ""
+"For shift operations by a constant amount, which require an individual "
+"instruction to shift by one position, set the maximum number of inline shift "
+"instructions (maximum value 64) to emit instead of using the corresponding "
+"__mspabi helper function. The default value is 4."
+msgstr ""
+
 #: config/aarch64/aarch64.opt:43
 #, no-c-format
 msgid "The possible TLS dialects:"
@@ -9593,13 +9956,13 @@ msgstr ""
 msgid "The code model option names for -mcmodel:"
 msgstr ""
 
-#: config/aarch64/aarch64.opt:68 config/arm/arm.opt:99
+#: config/aarch64/aarch64.opt:68 config/arm/arm.opt:90
 #: config/microblaze/microblaze.opt:60
 #, no-c-format
 msgid "Assume target CPU is configured as big endian."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:72 config/i386/i386.opt:1016
+#: config/aarch64/aarch64.opt:72 config/i386/i386.opt:1030
 #, no-c-format
 msgid "Generate code which uses only the general registers."
 msgstr ""
@@ -9619,7 +9982,7 @@ msgstr ""
 msgid "Workaround for ARM Cortex-A53 Erratum number 843419."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:88 config/arm/arm.opt:164
+#: config/aarch64/aarch64.opt:88 config/arm/arm.opt:155
 #: config/microblaze/microblaze.opt:64
 #, no-c-format
 msgid "Assume target CPU is configured as little endian."
@@ -9630,7 +9993,7 @@ msgstr ""
 msgid "Don't assume that unaligned accesses are handled by the system."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:100 config/i386/i386.opt:395
+#: config/aarch64/aarch64.opt:100 config/i386/i386.opt:405
 #, no-c-format
 msgid "Omit the frame pointer in leaf functions."
 msgstr ""
@@ -9745,17 +10108,6 @@ msgstr ""
 msgid "Generate code to track when the CPU might be speculating incorrectly."
 msgstr ""
 
-#: config/aarch64/aarch64.opt:235 config/i386/i386.opt:981
-#: config/rs6000/rs6000.opt:539
-#, no-c-format
-msgid "Use given stack-protector guard."
-msgstr ""
-
-#: config/aarch64/aarch64.opt:239 config/rs6000/rs6000.opt:543
-#, no-c-format
-msgid "Valid arguments to -mstack-protector-guard=:"
-msgstr ""
-
 #: config/aarch64/aarch64.opt:249
 #, no-c-format
 msgid ""
@@ -9941,7 +10293,7 @@ msgstr ""
 msgid "Specify bit size of immediate TLS offsets."
 msgstr ""
 
-#: config/ia64/ia64.opt:122 config/i386/i386.opt:509 config/s390/s390.opt:197
+#: config/ia64/ia64.opt:122 config/i386/i386.opt:519 config/s390/s390.opt:197
 #: config/sparc/sparc.opt:146 config/visium/visium.opt:49
 #, no-c-format
 msgid "Schedule code for given CPU."
@@ -10427,963 +10779,1000 @@ msgstr ""
 msgid "Use unicode startup and define UNICODE macro."
 msgstr ""
 
-#: config/i386/i386.opt:188
+#: config/i386/i386.opt:198
 #, no-c-format
 msgid "sizeof(long double) is 16."
 msgstr ""
 
-#: config/i386/i386.opt:192 config/i386/i386.opt:360
+#: config/i386/i386.opt:202 config/i386/i386.opt:370
 #, no-c-format
 msgid "Use hardware fp."
 msgstr ""
 
-#: config/i386/i386.opt:196
+#: config/i386/i386.opt:206
 #, no-c-format
 msgid "sizeof(long double) is 12."
 msgstr ""
 
-#: config/i386/i386.opt:200
+#: config/i386/i386.opt:210
 #, no-c-format
 msgid "Use 80-bit long double."
 msgstr ""
 
-#: config/i386/i386.opt:204 config/s390/s390.opt:157
+#: config/i386/i386.opt:214 config/s390/s390.opt:157
 #: config/sparc/long-double-switch.opt:27 config/alpha/alpha.opt:102
 #, no-c-format
 msgid "Use 64-bit long double."
 msgstr ""
 
-#: config/i386/i386.opt:208 config/s390/s390.opt:153
+#: config/i386/i386.opt:218 config/s390/s390.opt:153
 #: config/sparc/long-double-switch.opt:23 config/alpha/alpha.opt:98
 #, no-c-format
 msgid "Use 128-bit long double."
 msgstr ""
 
-#: config/i386/i386.opt:212 config/sh/sh.opt:179
+#: config/i386/i386.opt:222 config/sh/sh.opt:179
 #, no-c-format
 msgid "Reserve space for outgoing arguments in the function prologue."
 msgstr ""
 
-#: config/i386/i386.opt:216
+#: config/i386/i386.opt:226
 #, no-c-format
 msgid "Align some doubles on dword boundary."
 msgstr ""
 
-#: config/i386/i386.opt:220
+#: config/i386/i386.opt:230
 #, no-c-format
 msgid "Function starts are aligned to this power of 2."
 msgstr ""
 
-#: config/i386/i386.opt:224
+#: config/i386/i386.opt:234
 #, no-c-format
 msgid "Jump targets are aligned to this power of 2."
 msgstr ""
 
-#: config/i386/i386.opt:228
+#: config/i386/i386.opt:238
 #, no-c-format
 msgid "Loop code aligned to this power of 2."
 msgstr ""
 
-#: config/i386/i386.opt:232
+#: config/i386/i386.opt:242
 #, no-c-format
 msgid "Align destination of the string operations."
 msgstr ""
 
-#: config/i386/i386.opt:253 config/s390/s390.opt:56
+#: config/i386/i386.opt:263 config/s390/s390.opt:56
 #, no-c-format
 msgid "Generate code for given CPU."
 msgstr ""
 
-#: config/i386/i386.opt:257
+#: config/i386/i386.opt:267
 #, no-c-format
 msgid "Use given assembler dialect."
 msgstr ""
 
-#: config/i386/i386.opt:261
+#: config/i386/i386.opt:271
 #, no-c-format
 msgid "Known assembler dialects (for use with the -masm= option):"
 msgstr ""
 
-#: config/i386/i386.opt:271
+#: config/i386/i386.opt:281
 #, no-c-format
 msgid "Branches are this expensive (arbitrary units)."
 msgstr ""
 
-#: config/i386/i386.opt:275
+#: config/i386/i386.opt:285
 #, no-c-format
 msgid ""
 "-mlarge-data-threshold=<number>\tData greater than given threshold will go "
 "into .ldata section in x86-64 medium model."
 msgstr ""
 
-#: config/i386/i386.opt:279
+#: config/i386/i386.opt:289
 #, no-c-format
 msgid "Use given x86-64 code model."
 msgstr ""
 
-#: config/i386/i386.opt:302
+#: config/i386/i386.opt:312
 #, no-c-format
 msgid "Use given address mode."
 msgstr ""
 
-#: config/i386/i386.opt:306
+#: config/i386/i386.opt:316
 #, no-c-format
 msgid "Known address mode (for use with the -maddress-mode= option):"
 msgstr ""
 
-#: config/i386/i386.opt:319
+#: config/i386/i386.opt:329
 #, no-c-format
 msgid "Generate sin, cos, sqrt for FPU."
 msgstr ""
 
-#: config/i386/i386.opt:323
+#: config/i386/i386.opt:333
 #, no-c-format
 msgid "Always use Dynamic Realigned Argument Pointer (DRAP) to realign stack."
 msgstr ""
 
-#: config/i386/i386.opt:327
+#: config/i386/i386.opt:337
 #, no-c-format
 msgid "Return values of functions in FPU registers."
 msgstr ""
 
-#: config/i386/i386.opt:331
+#: config/i386/i386.opt:341
 #, no-c-format
 msgid "Generate floating point mathematics using given instruction set."
 msgstr ""
 
-#: config/i386/i386.opt:335
+#: config/i386/i386.opt:345
 #, no-c-format
 msgid "Valid arguments to -mfpmath=:"
 msgstr ""
 
-#: config/i386/i386.opt:368
+#: config/i386/i386.opt:378
 #, no-c-format
 msgid "Inline all known string operations."
 msgstr ""
 
-#: config/i386/i386.opt:372
+#: config/i386/i386.opt:382
 #, no-c-format
 msgid ""
 "Inline memset/memcpy string operations, but perform inline version only for "
 "small blocks."
 msgstr ""
 
-#: config/i386/i386.opt:379
+#: config/i386/i386.opt:389
 #, no-c-format
 msgid "Use native (MS) bitfield layout."
 msgstr ""
 
-#: config/i386/i386.opt:399
+#: config/i386/i386.opt:409
 #, no-c-format
 msgid "Set 80387 floating-point precision to 32-bit."
 msgstr ""
 
-#: config/i386/i386.opt:403
+#: config/i386/i386.opt:413
 #, no-c-format
 msgid "Set 80387 floating-point precision to 64-bit."
 msgstr ""
 
-#: config/i386/i386.opt:407
+#: config/i386/i386.opt:417
 #, no-c-format
 msgid "Set 80387 floating-point precision to 80-bit."
 msgstr ""
 
-#: config/i386/i386.opt:415
+#: config/i386/i386.opt:425
 #, no-c-format
 msgid "Assume incoming stack aligned to this power of 2."
 msgstr ""
 
-#: config/i386/i386.opt:419
+#: config/i386/i386.opt:429
 #, no-c-format
 msgid "Use push instructions to save outgoing arguments."
 msgstr ""
 
-#: config/i386/i386.opt:423
+#: config/i386/i386.opt:433
 #, no-c-format
 msgid "Use red-zone in the x86-64 code."
 msgstr ""
 
-#: config/i386/i386.opt:427
+#: config/i386/i386.opt:437
 #, no-c-format
 msgid "Number of registers used to pass integer arguments."
 msgstr ""
 
-#: config/i386/i386.opt:431
+#: config/i386/i386.opt:441
 #, no-c-format
 msgid "Alternate calling convention."
 msgstr ""
 
-#: config/i386/i386.opt:435 config/alpha/alpha.opt:23
+#: config/i386/i386.opt:445 config/alpha/alpha.opt:23
 #, no-c-format
 msgid "Do not use hardware fp."
 msgstr ""
 
-#: config/i386/i386.opt:439
+#: config/i386/i386.opt:449
 #, no-c-format
 msgid "Use SSE register passing conventions for SF and DF mode."
 msgstr ""
 
-#: config/i386/i386.opt:443
+#: config/i386/i386.opt:453
 #, no-c-format
 msgid "Realign stack in prologue."
 msgstr ""
 
-#: config/i386/i386.opt:447
+#: config/i386/i386.opt:457
 #, no-c-format
 msgid "Enable stack probing."
 msgstr ""
 
-#: config/i386/i386.opt:451
+#: config/i386/i386.opt:461
 #, no-c-format
 msgid "Specify memcpy expansion strategy when expected size is known."
 msgstr ""
 
-#: config/i386/i386.opt:455
+#: config/i386/i386.opt:465
 #, no-c-format
 msgid "Specify memset expansion strategy when expected size is known."
 msgstr ""
 
-#: config/i386/i386.opt:459
+#: config/i386/i386.opt:469
 #, no-c-format
 msgid "Chose strategy to generate stringop using."
 msgstr ""
 
-#: config/i386/i386.opt:463
+#: config/i386/i386.opt:473
 #, no-c-format
 msgid "Valid arguments to -mstringop-strategy=:"
 msgstr ""
 
-#: config/i386/i386.opt:491
+#: config/i386/i386.opt:501
 #, no-c-format
 msgid "Use given thread-local storage dialect."
 msgstr ""
 
-#: config/i386/i386.opt:495
+#: config/i386/i386.opt:505
 #, no-c-format
 msgid "Known TLS dialects (for use with the -mtls-dialect= option):"
 msgstr ""
 
-#: config/i386/i386.opt:505
+#: config/i386/i386.opt:515
 #, no-c-format
 msgid "Use direct references against %gs when accessing tls data."
 msgstr ""
 
-#: config/i386/i386.opt:513
+#: config/i386/i386.opt:523
 #, no-c-format
 msgid "Fine grain control of tune features."
 msgstr ""
 
-#: config/i386/i386.opt:517
+#: config/i386/i386.opt:527
 #, no-c-format
 msgid "Clear all tune features."
 msgstr ""
 
-#: config/i386/i386.opt:524
+#: config/i386/i386.opt:534
 #, no-c-format
 msgid "Generate code that conforms to Intel MCU psABI."
 msgstr ""
 
-#: config/i386/i386.opt:528
+#: config/i386/i386.opt:538
 #, no-c-format
 msgid "Generate code that conforms to the given ABI."
 msgstr ""
 
-#: config/i386/i386.opt:532 config/nds32/nds32.opt:51
+#: config/i386/i386.opt:542 config/nds32/nds32.opt:51
 #, no-c-format
 msgid "Known ABIs (for use with the -mabi= option):"
 msgstr ""
 
-#: config/i386/i386.opt:542
+#: config/i386/i386.opt:552
 #, no-c-format
 msgid ""
 "Use libgcc stubs to save and restore registers clobbered by 64-bit Microsoft "
 "to System V ABI calls."
 msgstr ""
 
-#: config/i386/i386.opt:546 config/rs6000/rs6000.opt:203
+#: config/i386/i386.opt:556 config/rs6000/rs6000.opt:203
 #, no-c-format
 msgid "Vector library ABI to use."
 msgstr ""
 
-#: config/i386/i386.opt:550
+#: config/i386/i386.opt:560
 #, no-c-format
 msgid ""
 "Known vectorization library ABIs (for use with the -mveclibabi= option):"
 msgstr ""
 
-#: config/i386/i386.opt:560
+#: config/i386/i386.opt:570
 #, no-c-format
 msgid "Return 8-byte vectors in memory."
 msgstr ""
 
-#: config/i386/i386.opt:564
+#: config/i386/i386.opt:574
 #, no-c-format
 msgid "Generate reciprocals instead of divss and sqrtss."
 msgstr ""
 
-#: config/i386/i386.opt:568
+#: config/i386/i386.opt:578
 #, no-c-format
 msgid "Control generation of reciprocal estimates."
 msgstr ""
 
-#: config/i386/i386.opt:572
+#: config/i386/i386.opt:582
 #, no-c-format
 msgid "Generate cld instruction in the function prologue."
 msgstr ""
 
-#: config/i386/i386.opt:576
+#: config/i386/i386.opt:586
 #, no-c-format
 msgid ""
 "Generate vzeroupper instruction before a transfer of control flow out of the "
 "function."
 msgstr ""
 
-#: config/i386/i386.opt:581
+#: config/i386/i386.opt:591
 #, no-c-format
 msgid ""
 "Disable Scalar to Vector optimization pass transforming 64-bit integer "
 "computations into a vector ones."
 msgstr ""
 
-#: config/i386/i386.opt:586
+#: config/i386/i386.opt:596
 #, 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:591
+#: config/i386/i386.opt:601
 #, no-c-format
 msgid ""
 "Use 128-bit AVX instructions instead of 256-bit AVX instructions in the auto-"
 "vectorizer."
 msgstr ""
 
-#: config/i386/i386.opt:595
+#: config/i386/i386.opt:605
 #, no-c-format
 msgid ""
 "Use given register vector width instructions instead of maximum register "
 "width in the auto-vectorizer."
 msgstr ""
 
-#: config/i386/i386.opt:599
+#: config/i386/i386.opt:609
 #, no-c-format
 msgid ""
 "Known preferred register vector length (to use with the -mprefer-vector-"
 "width= option):"
 msgstr ""
 
-#: config/i386/i386.opt:617
+#: config/i386/i386.opt:627
 #, no-c-format
 msgid "Generate 32bit i386 code."
 msgstr ""
 
-#: config/i386/i386.opt:621
+#: config/i386/i386.opt:631
 #, no-c-format
 msgid "Generate 64bit x86-64 code."
 msgstr ""
 
-#: config/i386/i386.opt:625
+#: config/i386/i386.opt:635
 #, no-c-format
 msgid "Generate 32bit x86-64 code."
 msgstr ""
 
-#: config/i386/i386.opt:629
+#: config/i386/i386.opt:639
 #, no-c-format
 msgid "Generate 16bit i386 code."
 msgstr ""
 
-#: config/i386/i386.opt:633
+#: config/i386/i386.opt:643
 #, no-c-format
 msgid "Support MMX built-in functions."
 msgstr ""
 
-#: config/i386/i386.opt:637
+#: config/i386/i386.opt:647
 #, no-c-format
 msgid "Support 3DNow! built-in functions."
 msgstr ""
 
-#: config/i386/i386.opt:641
+#: config/i386/i386.opt:651
 #, no-c-format
 msgid "Support Athlon 3Dnow! built-in functions."
 msgstr ""
 
-#: config/i386/i386.opt:645
+#: config/i386/i386.opt:655
 #, no-c-format
 msgid "Support MMX and SSE built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:649
+#: config/i386/i386.opt:659
 #, no-c-format
 msgid "Support MMX, SSE and SSE2 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:653
+#: config/i386/i386.opt:663
 #, no-c-format
 msgid "Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:657
+#: config/i386/i386.opt:667
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3 and SSSE3 built-in functions and code "
 "generation."
 msgstr ""
 
-#: config/i386/i386.opt:661
+#: config/i386/i386.opt:671
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3, SSSE3 and SSE4.1 built-in functions and code "
 "generation."
 msgstr ""
 
-#: config/i386/i386.opt:665 config/i386/i386.opt:669
+#: config/i386/i386.opt:675 config/i386/i386.opt:679
 #, 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:673
+#: config/i386/i386.opt:683
 #, no-c-format
 msgid ""
 "Do not support SSE4.1 and SSE4.2 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:681
+#: config/i386/i386.opt:691
 #, 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:685
+#: config/i386/i386.opt:695
 #, 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:689
+#: config/i386/i386.opt:699
 #, 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:693
+#: config/i386/i386.opt:703
 #, 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:697
+#: config/i386/i386.opt:707
 #, 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:701
+#: config/i386/i386.opt:711
 #, 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:705
+#: config/i386/i386.opt:715
 #, 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:709
+#: config/i386/i386.opt:719
 #, 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:713
+#: config/i386/i386.opt:723
 #, 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:717
+#: config/i386/i386.opt:727
 #, 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:721
+#: config/i386/i386.opt:731
 #, 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:725
+#: config/i386/i386.opt:735
 #, 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:729
+#: config/i386/i386.opt:739
 #, 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:733
+#: config/i386/i386.opt:743
 #, 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:737
+#: config/i386/i386.opt:747
 #, 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:741
+#: config/i386/i386.opt:751
 #, no-c-format
 msgid "Support AVX512VNNI built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:745
+#: config/i386/i386.opt:755
 #, 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:749
+#: config/i386/i386.opt:759
 #, no-c-format
 msgid "Support AVX512VP2INTERSECT built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:753
+#: config/i386/i386.opt:763
 #, 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:757
+#: config/i386/i386.opt:767
 #, no-c-format
 msgid ""
 "Support MMX, SSE, SSE2, SSE3 and SSE4A built-in functions and code "
 "generation."
 msgstr ""
 
-#: config/i386/i386.opt:761
+#: config/i386/i386.opt:771
 #, no-c-format
 msgid "Support FMA4 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:765
+#: config/i386/i386.opt:775
 #, no-c-format
 msgid "Support XOP built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:769
+#: config/i386/i386.opt:779
 #, no-c-format
 msgid "Support LWP built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:773
+#: config/i386/i386.opt:783
 #, no-c-format
 msgid ""
 "Support code generation of Advanced Bit Manipulation (ABM) instructions."
 msgstr ""
 
-#: config/i386/i386.opt:777
+#: config/i386/i386.opt:787
 #, no-c-format
 msgid "Support code generation of popcnt instruction."
 msgstr ""
 
-#: config/i386/i386.opt:781
+#: config/i386/i386.opt:791
 #, no-c-format
 msgid "Support PCONFIG built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:785
+#: config/i386/i386.opt:795
 #, no-c-format
 msgid "Support WBNOINVD built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:789
+#: config/i386/i386.opt:799
 #, no-c-format
 msgid "Support PTWRITE built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:793
+#: config/i386/i386.opt:803
+#, no-c-format
+msgid "Support UINTR built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:807
 #, no-c-format
 msgid "Support SGX built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:797
+#: config/i386/i386.opt:811
 #, no-c-format
 msgid "Support RDPID built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:801
+#: config/i386/i386.opt:815
 #, no-c-format
 msgid "Support GFNI built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:805
+#: config/i386/i386.opt:819
 #, no-c-format
 msgid "Support VAES built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:809
+#: config/i386/i386.opt:823
 #, no-c-format
 msgid "Support VPCLMULQDQ built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:813
+#: config/i386/i386.opt:827
 #, no-c-format
 msgid "Support BMI built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:817
+#: config/i386/i386.opt:831
 #, no-c-format
 msgid "Support BMI2 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:821
+#: config/i386/i386.opt:835
 #, no-c-format
 msgid "Support LZCNT built-in function and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:825
+#: config/i386/i386.opt:839
 #, no-c-format
 msgid "Support Hardware Lock Elision prefixes."
 msgstr ""
 
-#: config/i386/i386.opt:829
+#: config/i386/i386.opt:843
 #, no-c-format
 msgid "Support RDSEED instruction."
 msgstr ""
 
-#: config/i386/i386.opt:833
+#: config/i386/i386.opt:847
 #, no-c-format
 msgid "Support PREFETCHW instruction."
 msgstr ""
 
-#: config/i386/i386.opt:837
+#: config/i386/i386.opt:851
 #, no-c-format
 msgid "Support flag-preserving add-carry instructions."
 msgstr ""
 
-#: config/i386/i386.opt:841
+#: config/i386/i386.opt:855
 #, no-c-format
 msgid "Support CLFLUSHOPT instructions."
 msgstr ""
 
-#: config/i386/i386.opt:845
+#: config/i386/i386.opt:859
 #, no-c-format
 msgid "Support CLWB instruction."
 msgstr ""
 
-#: config/i386/i386.opt:852
+#: config/i386/i386.opt:866
 #, no-c-format
 msgid "Support FXSAVE and FXRSTOR instructions."
 msgstr ""
 
-#: config/i386/i386.opt:856
+#: config/i386/i386.opt:870
 #, no-c-format
 msgid "Support XSAVE and XRSTOR instructions."
 msgstr ""
 
-#: config/i386/i386.opt:860
+#: config/i386/i386.opt:874
 #, no-c-format
 msgid "Support XSAVEOPT instruction."
 msgstr ""
 
-#: config/i386/i386.opt:864
+#: config/i386/i386.opt:878
 #, no-c-format
 msgid "Support XSAVEC instructions."
 msgstr ""
 
-#: config/i386/i386.opt:868
+#: config/i386/i386.opt:882
 #, no-c-format
 msgid "Support XSAVES and XRSTORS instructions."
 msgstr ""
 
-#: config/i386/i386.opt:872
+#: config/i386/i386.opt:886
 #, no-c-format
 msgid "Support TBM built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:876
+#: config/i386/i386.opt:890
 #, no-c-format
 msgid "Support code generation of cmpxchg16b instruction."
 msgstr ""
 
-#: config/i386/i386.opt:880
+#: config/i386/i386.opt:894
 #, no-c-format
 msgid "Support code generation of sahf instruction in 64bit x86-64 code."
 msgstr ""
 
-#: config/i386/i386.opt:884
+#: config/i386/i386.opt:898
 #, no-c-format
 msgid "Support code generation of movbe instruction."
 msgstr ""
 
-#: config/i386/i386.opt:888
+#: config/i386/i386.opt:902
 #, no-c-format
 msgid "Support code generation of crc32 instruction."
 msgstr ""
 
-#: config/i386/i386.opt:892
+#: config/i386/i386.opt:906
 #, no-c-format
 msgid "Support AES built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:896
+#: config/i386/i386.opt:910
 #, no-c-format
 msgid "Support SHA1 and SHA256 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:900
+#: config/i386/i386.opt:914
 #, no-c-format
 msgid "Support PCLMUL built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:904
+#: config/i386/i386.opt:918
 #, no-c-format
 msgid "Encode SSE instructions with VEX prefix."
 msgstr ""
 
-#: config/i386/i386.opt:908
+#: config/i386/i386.opt:922
 #, no-c-format
 msgid "Support FSGSBASE built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:912
+#: config/i386/i386.opt:926
 #, no-c-format
 msgid "Support RDRND built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:916
+#: config/i386/i386.opt:930
 #, no-c-format
 msgid "Support F16C built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:920
+#: config/i386/i386.opt:934
 #, no-c-format
 msgid "Support PREFETCHWT1 built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:924
+#: config/i386/i386.opt:938
 #, no-c-format
 msgid "Emit profiling counter call at function entry before prologue."
 msgstr ""
 
-#: config/i386/i386.opt:928
+#: config/i386/i386.opt:942
 #, no-c-format
 msgid "Generate __mcount_loc section with all mcount or __fentry__ calls."
 msgstr ""
 
-#: config/i386/i386.opt:932 config/s390/s390.opt:305
+#: config/i386/i386.opt:946 config/s390/s390.opt:305
 #, no-c-format
 msgid ""
 "Generate mcount/__fentry__ calls as nops. To activate they need to be "
 "patched in."
 msgstr ""
 
-#: config/i386/i386.opt:937
+#: config/i386/i386.opt:951
 #, no-c-format
 msgid "Set name of __fentry__ symbol called at function entry."
 msgstr ""
 
-#: config/i386/i386.opt:941
+#: config/i386/i386.opt:955
 #, no-c-format
 msgid "Set name of section to record mrecord-mcount calls."
 msgstr ""
 
-#: config/i386/i386.opt:945
+#: config/i386/i386.opt:959
 #, no-c-format
 msgid "Skip setting up RAX register when passing variable arguments."
 msgstr ""
 
-#: config/i386/i386.opt:949
+#: config/i386/i386.opt:963
 #, no-c-format
 msgid ""
 "Expand 32bit/64bit integer divide into 8bit unsigned integer divide with run-"
 "time check."
 msgstr ""
 
-#: config/i386/i386.opt:953
+#: config/i386/i386.opt:967
 #, no-c-format
 msgid "Split 32-byte AVX unaligned load."
 msgstr ""
 
-#: config/i386/i386.opt:957
+#: config/i386/i386.opt:971
 #, no-c-format
 msgid "Split 32-byte AVX unaligned store."
 msgstr ""
 
-#: config/i386/i386.opt:961
+#: config/i386/i386.opt:975
 #, no-c-format
 msgid "Support RTM built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:969
+#: config/i386/i386.opt:983
 #, no-c-format
 msgid "Support MWAITX and MONITORX built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:973
+#: config/i386/i386.opt:987
 #, no-c-format
 msgid "Support CLZERO built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:977
+#: config/i386/i386.opt:991
 #, no-c-format
 msgid "Support PKU built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:985
+#: config/i386/i386.opt:999
 #, no-c-format
 msgid ""
 "Known stack protector guard (for use with the -mstack-protector-guard= "
 "option):"
 msgstr ""
 
-#: config/i386/i386.opt:995 config/rs6000/rs6000.opt:553
-#, no-c-format
-msgid "Use the given base register for addressing the stack-protector guard."
-msgstr ""
-
-#: config/i386/i386.opt:1002 config/rs6000/rs6000.opt:560
-#, no-c-format
-msgid "Use the given offset for addressing the stack-protector guard."
-msgstr ""
-
-#: config/i386/i386.opt:1009
+#: config/i386/i386.opt:1023
 #, no-c-format
 msgid "Use the given symbol for addressing the stack-protector guard."
 msgstr ""
 
-#: config/i386/i386.opt:1020
+#: config/i386/i386.opt:1034
 #, no-c-format
 msgid ""
 "Enable shadow stack built-in functions from Control-flow Enforcement "
 "Technology (CET)."
 msgstr ""
 
-#: config/i386/i386.opt:1025
+#: config/i386/i386.opt:1039
 #, 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:1030
+#: config/i386/i386.opt:1044
 #, no-c-format
 msgid ""
 "Insert ENDBR instruction at function entry only via cf_check attribute for "
 "CET instrumentation."
 msgstr ""
 
-#: config/i386/i386.opt:1035
+#: config/i386/i386.opt:1049
 #, no-c-format
 msgid "Make all function calls indirect."
 msgstr ""
 
-#: config/i386/i386.opt:1039
+#: config/i386/i386.opt:1053
 #, no-c-format
 msgid "Convert indirect call and jump to call and return thunks."
 msgstr ""
 
-#: config/i386/i386.opt:1043
+#: config/i386/i386.opt:1057
 #, no-c-format
 msgid "Convert function return to call and return thunk."
 msgstr ""
 
-#: config/i386/i386.opt:1047 config/s390/s390.opt:271
+#: config/i386/i386.opt:1061 config/s390/s390.opt:271
 #, no-c-format
 msgid ""
 "Known indirect branch choices (for use with the -mindirect-branch=/-"
 "mfunction-return= options):"
 msgstr ""
 
-#: config/i386/i386.opt:1063
+#: config/i386/i386.opt:1077
 #, no-c-format
 msgid "Force indirect call and jump via register."
 msgstr ""
 
-#: config/i386/i386.opt:1067
+#: config/i386/i386.opt:1081
 #, no-c-format
 msgid "Support MOVDIRI built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1071
+#: config/i386/i386.opt:1085
 #, no-c-format
 msgid "Support MOVDIR64B built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1075
+#: config/i386/i386.opt:1089
 #, no-c-format
 msgid "Support WAITPKG built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1079
+#: config/i386/i386.opt:1093
 #, no-c-format
 msgid "Support CLDEMOTE built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1083
+#: config/i386/i386.opt:1097
 #, no-c-format
 msgid "Instrument function exit in instrumented functions with __fentry__."
 msgstr ""
 
-#: config/i386/i386.opt:1087
+#: config/i386/i386.opt:1101
 #, no-c-format
 msgid "Known choices for return instrumentation with -minstrument-return=:"
 msgstr ""
 
-#: config/i386/i386.opt:1100
+#: config/i386/i386.opt:1114
 #, no-c-format
 msgid ""
 "Generate a __return_loc section pointing to all return instrumentation code."
 msgstr ""
 
-#: config/i386/i386.opt:1104
+#: config/i386/i386.opt:1118
 #, 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:1109
+#: config/i386/i386.opt:1123
 #, no-c-format
 msgid "Support ENQCMD built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1113
+#: config/i386/i386.opt:1127
 #, no-c-format
 msgid "Support SERIALIZE built-in functions and code generation."
 msgstr ""
 
-#: config/i386/i386.opt:1117
+#: config/i386/i386.opt:1131
 #, no-c-format
 msgid "Support TSXLDTRK built-in functions and code generation."
 msgstr ""
 
+#: config/i386/i386.opt:1135
+#, no-c-format
+msgid "Support AMX-TILE built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1139
+#, no-c-format
+msgid "Support AMX-INT8 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1143
+#, no-c-format
+msgid "Support AMX-BF16 built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1147
+#, no-c-format
+msgid "Support HRESET built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1151
+#, no-c-format
+msgid "Support KL built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1155
+#, no-c-format
+msgid "Support WIDEKL built-in functions and code generation."
+msgstr ""
+
+#: config/i386/i386.opt:1159
+#, 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:1164
+#, no-c-format
+msgid "Emit GNU_PROPERTY_X86_ISA_1_NEEDED GNU property."
+msgstr ""
+
 #: config/pa/pa64-hpux.opt:23
 #, no-c-format
 msgid "Assume code will be linked by GNU ld."
@@ -11672,55 +12061,50 @@ msgstr ""
 msgid "Support multi-threading."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:22 config/gcn/gcn.opt:47
-#, no-c-format
-msgid "Generate code for a 32-bit ABI."
-msgstr ""
-
-#: config/nvptx/nvptx.opt:26 config/gcn/gcn.opt:51
+#: config/nvptx/nvptx.opt:28 config/gcn/gcn.opt:54
 #, no-c-format
 msgid "Generate code for a 64-bit ABI."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:30
+#: config/nvptx/nvptx.opt:32
 #, no-c-format
 msgid "Link in code for a __main kernel."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:34
+#: config/nvptx/nvptx.opt:36
 #, no-c-format
 msgid "Optimize partition neutering."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:38
+#: config/nvptx/nvptx.opt:40
 #, no-c-format
 msgid "Use custom stacks instead of local memory for automatic storage."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:42
+#: config/nvptx/nvptx.opt:44
 #, no-c-format
 msgid ""
 "Specify size of .local memory used for stack when the exact amount is not "
 "known."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:46
+#: config/nvptx/nvptx.opt:48
 #, no-c-format
 msgid "Generate code that can keep local state uniform across all lanes."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:50
+#: config/nvptx/nvptx.opt:52
 #, no-c-format
 msgid ""
 "Generate code for OpenMP offloading: enables -msoft-stack and -muniform-simt."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:54
+#: config/nvptx/nvptx.opt:56
 #, no-c-format
 msgid "Known PTX ISA versions (for use with the -misa= option):"
 msgstr ""
 
-#: config/nvptx/nvptx.opt:64
+#: config/nvptx/nvptx.opt:67
 #, no-c-format
 msgid "Specify the version of the ptx ISA to use."
 msgstr ""
@@ -12164,7 +12548,7 @@ msgid ""
 "are small, non-negative integers.  The default branch cost is 1."
 msgstr ""
 
-#: config/s390/s390.opt:232 config/arm/arm.opt:172
+#: config/s390/s390.opt:232 config/arm/arm.opt:163
 #, no-c-format
 msgid "Assume data segments are relative to text segment."
 msgstr ""
@@ -12238,7 +12622,20 @@ msgstr ""
 msgid "Generate __mcount_loc section with all _mcount and __fentry__ calls."
 msgstr ""
 
-#: config/rl78/rl78.opt:27 config/rx/elf.opt:26
+#: config/s390/s390.opt:310
+#, no-c-format
+msgid ""
+"Emit fused multiply-add instructions for long doubles in vector registers "
+"(wfmaxb, wfmsxb, wfnmaxb, wfnmsxb).  Reassociation pass does not handle "
+"fused multiply-adds, therefore code generated by the middle-end is prone to "
+"having long fused multiply-add chains.  This is not pipeline-friendly, and "
+"the default behavior is to emit separate multiplication and addition "
+"instructions for long doubles in vector registers, because measurements show "
+"that this improves performance.  This option allows overriding it for "
+"testing purposes."
+msgstr ""
+
+#: config/rl78/rl78.opt:27 config/rx/elf.opt:26 config/csky/csky.opt:198
 #, no-c-format
 msgid "Use the simulator runtime."
 msgstr ""
@@ -12303,169 +12700,169 @@ msgstr ""
 msgid "Known ARM CPUs (for use with the -mcpu= and -mtune= options):"
 msgstr ""
 
-#: config/arm/arm-tables.opt:269
+#: config/arm/arm-tables.opt:287
 #, no-c-format
 msgid "Known ARM architectures (for use with the -march= option):"
 msgstr ""
 
-#: config/arm/arm-tables.opt:372
+#: config/arm/arm-tables.opt:390
 #, no-c-format
 msgid "Known ARM FPUs (for use with the -mfpu= option):"
 msgstr ""
 
-#: config/arm/arm.opt:35
+#: config/arm/arm.opt:26
 #, no-c-format
 msgid "TLS dialect to use:"
 msgstr ""
 
-#: config/arm/arm.opt:45
+#: config/arm/arm.opt:36
 #, no-c-format
 msgid "Specify an ABI."
 msgstr ""
 
-#: config/arm/arm.opt:49
+#: config/arm/arm.opt:40
 #, no-c-format
 msgid "Known ARM ABIs (for use with the -mabi= option):"
 msgstr ""
 
-#: config/arm/arm.opt:68
+#: config/arm/arm.opt:59
 #, no-c-format
 msgid "Generate a call to abort if a noreturn function returns."
 msgstr ""
 
-#: config/arm/arm.opt:75
+#: config/arm/arm.opt:66
 #, no-c-format
 msgid "Generate APCS conformant stack frames."
 msgstr ""
 
-#: config/arm/arm.opt:79
+#: config/arm/arm.opt:70
 #, no-c-format
 msgid "Generate re-entrant, PIC code."
 msgstr ""
 
-#: config/arm/arm.opt:95
+#: config/arm/arm.opt:86
 #, no-c-format
 msgid "Generate code in 32 bit ARM state."
 msgstr ""
 
-#: config/arm/arm.opt:103
+#: config/arm/arm.opt:94
 #, no-c-format
 msgid "Thumb: Assume non-static functions may be called from ARM code."
 msgstr ""
 
-#: config/arm/arm.opt:107
+#: config/arm/arm.opt:98
 #, no-c-format
 msgid "Thumb: Assume function pointers may go to non-Thumb aware code."
 msgstr ""
 
-#: config/arm/arm.opt:115
+#: config/arm/arm.opt:106 config/csky/csky.opt:73
 #, no-c-format
 msgid "Specify if floating point hardware should be used."
 msgstr ""
 
-#: config/arm/arm.opt:119
+#: config/arm/arm.opt:110
 #, no-c-format
 msgid ""
 "Specify that the compiler should target secure code as per ARMv8-M Security "
 "Extensions."
 msgstr ""
 
-#: config/arm/arm.opt:123
+#: config/arm/arm.opt:114 config/csky/csky.opt:77
 #, no-c-format
 msgid "Known floating-point ABIs (for use with the -mfloat-abi= option):"
 msgstr ""
 
-#: config/arm/arm.opt:136
+#: config/arm/arm.opt:127
 #, no-c-format
 msgid "Switch ARM/Thumb modes on alternating functions for compiler testing."
 msgstr ""
 
-#: config/arm/arm.opt:140
+#: config/arm/arm.opt:131
 #, no-c-format
 msgid "Specify the __fp16 floating-point format."
 msgstr ""
 
-#: config/arm/arm.opt:144
+#: config/arm/arm.opt:135
 #, no-c-format
 msgid "Known __fp16 formats (for use with the -mfp16-format= option):"
 msgstr ""
 
-#: config/arm/arm.opt:157
+#: config/arm/arm.opt:148
 #, no-c-format
 msgid "Specify the name of the target floating point hardware/format."
 msgstr ""
 
-#: config/arm/arm.opt:168
+#: config/arm/arm.opt:159
 #, no-c-format
 msgid "Generate call insns as indirect calls, if necessary."
 msgstr ""
 
-#: config/arm/arm.opt:176
+#: config/arm/arm.opt:167
 #, no-c-format
 msgid "Specify the register to be used for PIC addressing."
 msgstr ""
 
-#: config/arm/arm.opt:180
+#: config/arm/arm.opt:171
 #, no-c-format
 msgid "Store function names in object code."
 msgstr ""
 
-#: config/arm/arm.opt:184
+#: config/arm/arm.opt:175
 #, no-c-format
 msgid "Permit scheduling of a function's prologue sequence."
 msgstr ""
 
-#: config/arm/arm.opt:188 config/rs6000/rs6000.opt:243
+#: config/arm/arm.opt:179 config/rs6000/rs6000.opt:243
 #, no-c-format
 msgid "Do not load the PIC register in function prologues."
 msgstr ""
 
-#: config/arm/arm.opt:195
+#: config/arm/arm.opt:186
 #, no-c-format
 msgid "Specify the minimum bit alignment of structures. (Deprecated)."
 msgstr ""
 
-#: config/arm/arm.opt:199
+#: config/arm/arm.opt:190
 #, no-c-format
 msgid "Generate code for Thumb state."
 msgstr ""
 
-#: config/arm/arm.opt:203
+#: config/arm/arm.opt:194
 #, no-c-format
 msgid "Support calls between Thumb and ARM instruction sets."
 msgstr ""
 
-#: config/arm/arm.opt:207
+#: config/arm/arm.opt:198
 #, no-c-format
 msgid "Specify thread local storage scheme."
 msgstr ""
 
-#: config/arm/arm.opt:211
+#: config/arm/arm.opt:202
 #, no-c-format
 msgid "Specify how to access the thread pointer."
 msgstr ""
 
-#: config/arm/arm.opt:215
+#: config/arm/arm.opt:206
 #, no-c-format
 msgid "Valid arguments to -mtp=:"
 msgstr ""
 
-#: config/arm/arm.opt:228
+#: config/arm/arm.opt:219
 #, no-c-format
 msgid "Thumb: Generate (non-leaf) stack frames even if not needed."
 msgstr ""
 
-#: config/arm/arm.opt:232
+#: config/arm/arm.opt:223
 #, no-c-format
 msgid "Thumb: Generate (leaf) stack frames even if not needed."
 msgstr ""
 
-#: config/arm/arm.opt:236 config/mn10300/mn10300.opt:42
+#: config/arm/arm.opt:227 config/mn10300/mn10300.opt:42
 #, no-c-format
 msgid "Tune code for the given processor."
 msgstr ""
 
-#: config/arm/arm.opt:240
+#: config/arm/arm.opt:231
 #, no-c-format
 msgid ""
 "Print CPU tuning information as comment in assembler file.  This is an "
@@ -12473,84 +12870,84 @@ msgid ""
 "ordinary use in compiling code."
 msgstr ""
 
-#: config/arm/arm.opt:251
+#: config/arm/arm.opt:242
 #, no-c-format
 msgid ""
 "Use Neon quad-word (rather than double-word) registers for vectorization."
 msgstr ""
 
-#: config/arm/arm.opt:255
+#: config/arm/arm.opt:246
 #, no-c-format
 msgid ""
 "Use Neon double-word (rather than quad-word) registers for vectorization."
 msgstr ""
 
-#: config/arm/arm.opt:259
+#: config/arm/arm.opt:250
 #, no-c-format
 msgid ""
 "Enable more verbose RTX cost dumps during debug.  For GCC developers use "
 "only."
 msgstr ""
 
-#: config/arm/arm.opt:263
+#: config/arm/arm.opt:254
 #, no-c-format
 msgid "Only generate absolute relocations on word sized values."
 msgstr ""
 
-#: config/arm/arm.opt:267
+#: config/arm/arm.opt:258
 #, no-c-format
 msgid "Generate IT blocks appropriate for ARMv8."
 msgstr ""
 
-#: config/arm/arm.opt:271
+#: config/arm/arm.opt:262
 #, no-c-format
 msgid ""
 "Avoid overlapping destination and address registers on LDRD instructions "
 "that may trigger Cortex-M3 errata."
 msgstr ""
 
-#: config/arm/arm.opt:276 config/nds32/nds32.opt:461 config/arc/arc.opt:496
+#: config/arm/arm.opt:267 config/nds32/nds32.opt:461 config/arc/arc.opt:496
 #, no-c-format
 msgid "Enable unaligned word and halfword accesses to packed data."
 msgstr ""
 
-#: config/arm/arm.opt:280
+#: config/arm/arm.opt:271
 #, no-c-format
 msgid "This option is deprecated and has no effect."
 msgstr ""
 
-#: config/arm/arm.opt:284
+#: config/arm/arm.opt:275
 #, no-c-format
 msgid "Assume loading data from flash is slower than fetching instructions."
 msgstr ""
 
-#: config/arm/arm.opt:288
+#: config/arm/arm.opt:279
 #, no-c-format
 msgid "Assume unified syntax for inline assembly code."
 msgstr ""
 
-#: config/arm/arm.opt:292
+#: config/arm/arm.opt:283
 #, no-c-format
 msgid "Do not allow constant data to be placed in code sections."
 msgstr ""
 
-#: config/arm/arm.opt:296
+#: config/arm/arm.opt:287
 #, no-c-format
 msgid "When linking for big-endian targets, generate a BE8 format image."
 msgstr ""
 
-#: config/arm/arm.opt:300
+#: config/arm/arm.opt:291
 #, no-c-format
 msgid ""
 "When linking for big-endian targets, generate a legacy BE32 format image."
 msgstr ""
 
-#: config/arm/arm.opt:304 config/sh/sh.opt:195
+#: config/arm/arm.opt:295 config/sh/sh.opt:195
 #, no-c-format
 msgid "Cost to assume for a branch insn."
 msgstr ""
 
-#: config/arm/arm.opt:308
+#: config/arm/arm.opt:299
 #, no-c-format
 msgid "Generate code which uses the core registers only (r0-r14)."
 msgstr ""
@@ -12965,220 +13362,245 @@ msgstr ""
 
 #: config/rs6000/rs6000.opt:329
 #, no-c-format
-msgid "Max number of bytes to compare without loops."
+msgid ""
+"Generate unaligned VSX load/store for inline expansion of memcpy/memmove."
 msgstr ""
 
 #: config/rs6000/rs6000.opt:333
 #, no-c-format
-msgid "Max number of bytes to compare with loops."
+msgid ""
+"Generate unaligned VSX vector pair load/store for inline expansion of memcpy/"
+"memmove."
 msgstr ""
 
 #: config/rs6000/rs6000.opt:337
 #, no-c-format
-msgid "Max number of bytes to compare."
+msgid "Max number of bytes to compare without loops."
 msgstr ""
 
 #: config/rs6000/rs6000.opt:341
 #, no-c-format
-msgid "Generate isel instructions."
+msgid "Max number of bytes to compare with loops."
 msgstr ""
 
 #: config/rs6000/rs6000.opt:345
 #, no-c-format
-msgid "-mdebug=\tEnable debug output."
+msgid "Max number of bytes to compare."
 msgstr ""
 
 #: config/rs6000/rs6000.opt:349
 #, no-c-format
-msgid "Use the AltiVec ABI extensions."
+msgid "Generate isel instructions."
 msgstr ""
 
 #: config/rs6000/rs6000.opt:353
 #, no-c-format
+msgid "-mdebug=\tEnable debug output."
+msgstr ""
+
+#: config/rs6000/rs6000.opt:358
+#, no-c-format
+msgid "Use the AltiVec ABI extensions."
+msgstr ""
+
+#: config/rs6000/rs6000.opt:362
+#, no-c-format
 msgid "Do not use the AltiVec ABI extensions."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:357
+#: config/rs6000/rs6000.opt:367
+#, no-c-format
+msgid "Use the AIX Vector Extended ABI."
+msgstr ""
+
+#: config/rs6000/rs6000.opt:371
+#, no-c-format
+msgid "Do not use the AIX Vector Extended ABI."
+msgstr ""
+
+#: config/rs6000/rs6000.opt:376
 #, no-c-format
 msgid "Use the ELFv1 ABI."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:361
+#: config/rs6000/rs6000.opt:380
 #, no-c-format
 msgid "Use the ELFv2 ABI."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:381
+#: config/rs6000/rs6000.opt:400
 #, no-c-format
 msgid "-mcpu=\tUse features of and schedule code for given CPU."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:385
+#: config/rs6000/rs6000.opt:404
 #, no-c-format
 msgid "-mtune=\tSchedule code for given CPU."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:389
+#: config/rs6000/rs6000.opt:408
 #, no-c-format
 msgid "-mtraceback=[full,part,no]\tSelect type of traceback table."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:405
+#: config/rs6000/rs6000.opt:424
 #, no-c-format
 msgid "Avoid all range limits on call instructions."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:413
+#: config/rs6000/rs6000.opt:432
 #, no-c-format
 msgid "Warn about deprecated 'vector long ...' AltiVec type usage."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:417
+#: config/rs6000/rs6000.opt:436
 #, no-c-format
 msgid ""
 "Use -mlong-double-64 for 64-bit IEEE floating point format.  Use -mlong-"
 "double-128 for 128-bit floating point format (either IEEE or IBM)."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:426
+#: config/rs6000/rs6000.opt:445
 #, no-c-format
 msgid "Determine which dependences between insns are considered costly."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:430
+#: config/rs6000/rs6000.opt:449
 #, no-c-format
 msgid "Specify which post scheduling nop insertion scheme to apply."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:434
+#: config/rs6000/rs6000.opt:453
 #, no-c-format
 msgid "Specify alignment of structure fields default/natural."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:438
+#: config/rs6000/rs6000.opt:457
 #, no-c-format
 msgid "Valid arguments to -malign-:"
 msgstr ""
 
-#: config/rs6000/rs6000.opt:448
+#: config/rs6000/rs6000.opt:467
 #, no-c-format
 msgid "Specify scheduling priority for dispatch slot restricted insns."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:452
+#: config/rs6000/rs6000.opt:471
 #, no-c-format
 msgid "Use r11 to hold the static link in calls to functions via pointers."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:456
+#: config/rs6000/rs6000.opt:475
 #, no-c-format
 msgid "Save the TOC in the prologue for indirect calls rather than inline."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:464
+#: config/rs6000/rs6000.opt:483
 #, no-c-format
 msgid ""
 "Fuse certain integer operations together for better performance on power8."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:468
+#: config/rs6000/rs6000.opt:487
 #, no-c-format
 msgid "Allow sign extension in fusion operations."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:472
+#: config/rs6000/rs6000.opt:491
 #, no-c-format
 msgid "Use vector and scalar instructions added in ISA 2.07."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:476
+#: config/rs6000/rs6000.opt:495 config/rs6000/rs6000.opt:499
+#: config/rs6000/rs6000.opt:503
+#, no-c-format
+msgid ""
+"Fuse certain integer operations together for better performance on power10."
+msgstr ""
+
+#: config/rs6000/rs6000.opt:507
 #, no-c-format
 msgid "Use ISA 2.07 Category:Vector.AES and Category:Vector.SHA2 instructions."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:483
+#: config/rs6000/rs6000.opt:514
 #, no-c-format
 msgid "Use ISA 2.07 transactional memory (HTM) instructions."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:487
+#: config/rs6000/rs6000.opt:518
 #, no-c-format
 msgid "Generate the quad word memory instructions (lq/stq)."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:491
+#: config/rs6000/rs6000.opt:522
 #, no-c-format
 msgid "Generate the quad word memory atomic instructions (lqarx/stqcx)."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:495
+#: config/rs6000/rs6000.opt:526
 #, no-c-format
 msgid ""
 "Generate aggregate parameter passing code with at most 64-bit alignment."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:499
+#: config/rs6000/rs6000.opt:530
 #, no-c-format
 msgid "Analyze and remove doubleword swaps from VSX computations."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:507
+#: config/rs6000/rs6000.opt:538
 #, no-c-format
 msgid "Use certain scalar instructions added in ISA 3.0."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:511
+#: config/rs6000/rs6000.opt:542
 #, no-c-format
 msgid "Use vector instructions added in ISA 3.0."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:515
+#: config/rs6000/rs6000.opt:546
 #, no-c-format
 msgid "Use the new min/max instructions defined in ISA 3.0."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:519
+#: config/rs6000/rs6000.opt:550
 #, no-c-format
 msgid ""
 "Fuse medium/large code model toc references with the memory instruction."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:523
+#: config/rs6000/rs6000.opt:554
 #, no-c-format
 msgid "Generate the integer modulo instructions."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:527
+#: config/rs6000/rs6000.opt:558
 #, no-c-format
 msgid "Enable IEEE 128-bit floating point via the __float128 keyword."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:531
+#: config/rs6000/rs6000.opt:562
 #, no-c-format
 msgid "Enable using IEEE 128-bit floating point instructions."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:535
+#: config/rs6000/rs6000.opt:566
 #, no-c-format
 msgid "Enable default conversions between __float128 & long double."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:572
-#, no-c-format
-msgid "Use instructions added in ISA 3.1."
-msgstr ""
-
-#: config/rs6000/rs6000.opt:576
+#: config/rs6000/rs6000.opt:606
 #, no-c-format
 msgid "Generate (do not generate) prefixed memory instructions."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:580
+#: config/rs6000/rs6000.opt:610
 #, no-c-format
 msgid "Generate (do not generate) pc-relative memory addressing."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:584
+#: config/rs6000/rs6000.opt:614
 #, no-c-format
 msgid "Generate (do not generate) MMA instructions."
 msgstr ""
@@ -15091,132 +15513,122 @@ msgstr ""
 msgid "Specify the target processor."
 msgstr ""
 
-#: config/csky/csky.opt:61
-#, no-c-format
-msgid "Enable hardware floating-point instructions."
-msgstr ""
-
-#: config/csky/csky.opt:65
-#, no-c-format
-msgid "Use library calls to perform floating-point operations (default)."
-msgstr ""
-
-#: config/csky/csky.opt:69
+#: config/csky/csky.opt:90
 #, no-c-format
 msgid "Specify the target floating-point hardware/format."
 msgstr ""
 
-#: config/csky/csky.opt:73
+#: config/csky/csky.opt:94
 #, no-c-format
 msgid "Generate C-SKY FPU double float instructions (default for hard float)."
 msgstr ""
 
-#: config/csky/csky.opt:77
+#: config/csky/csky.opt:98
 #, no-c-format
 msgid "Generate frecipd/fsqrtd/fdivd instructions (default for hard float)."
 msgstr ""
 
-#: config/csky/csky.opt:85
+#: config/csky/csky.opt:106
 #, no-c-format
 msgid "Enable the extended LRW instruction (default for CK801)."
 msgstr ""
 
-#: config/csky/csky.opt:89
+#: config/csky/csky.opt:110
 #, no-c-format
 msgid "Enable interrupt stack instructions."
 msgstr ""
 
-#: config/csky/csky.opt:93
+#: config/csky/csky.opt:114
 #, no-c-format
 msgid "Enable multiprocessor instructions."
 msgstr ""
 
-#: config/csky/csky.opt:97
+#: config/csky/csky.opt:118
 #, no-c-format
 msgid "Enable coprocessor instructions."
 msgstr ""
 
-#: config/csky/csky.opt:101
+#: config/csky/csky.opt:122
 #, no-c-format
 msgid "Enable cache prefetch instructions."
 msgstr ""
 
-#: config/csky/csky.opt:105
+#: config/csky/csky.opt:126
 #, no-c-format
 msgid "Enable C-SKY SECURE instructions."
 msgstr ""
 
-#: config/csky/csky.opt:112
+#: config/csky/csky.opt:133
 #, no-c-format
 msgid "Enable C-SKY TRUST instructions."
 msgstr ""
 
-#: config/csky/csky.opt:116
+#: config/csky/csky.opt:137
 #, no-c-format
 msgid "Enable C-SKY DSP instructions."
 msgstr ""
 
-#: config/csky/csky.opt:120
+#: config/csky/csky.opt:141
 #, no-c-format
 msgid "Enable C-SKY Enhanced DSP instructions."
 msgstr ""
 
-#: config/csky/csky.opt:124
+#: config/csky/csky.opt:145
 #, no-c-format
 msgid "Enable C-SKY Vector DSP instructions."
 msgstr ""
 
-#: config/csky/csky.opt:130
+#: config/csky/csky.opt:151
 #, no-c-format
 msgid "Generate divide instructions."
 msgstr ""
 
-#: config/csky/csky.opt:134
+#: config/csky/csky.opt:155
 #, no-c-format
 msgid "Generate code for Smart Mode."
 msgstr ""
 
-#: config/csky/csky.opt:138
+#: config/csky/csky.opt:159
 #, no-c-format
 msgid "Enable use of R16-R31 (default)."
 msgstr ""
 
-#: config/csky/csky.opt:142
+#: config/csky/csky.opt:163
 #, no-c-format
 msgid "Generate code using global anchor symbol addresses."
 msgstr ""
 
-#: config/csky/csky.opt:146
+#: config/csky/csky.opt:167
 #, no-c-format
 msgid "Generate push/pop instructions (default)."
 msgstr ""
 
-#: config/csky/csky.opt:150
+#: config/csky/csky.opt:171
 #, no-c-format
 msgid "Generate stm/ldm instructions (default)."
 msgstr ""
 
-#: config/csky/csky.opt:157
+#: config/csky/csky.opt:178
 #, no-c-format
 msgid "Generate constant pools in the compiler instead of assembler."
 msgstr ""
 
-#: config/csky/csky.opt:161
+#: config/csky/csky.opt:182
 #, no-c-format
 msgid "Emit .stack_size directives."
 msgstr ""
 
-#: config/csky/csky.opt:165
+#: config/csky/csky.opt:186
 #, no-c-format
 msgid "Generate code for C-SKY compiler runtime instead of libgcc."
 msgstr ""
 
-#: config/csky/csky.opt:169
+#: config/csky/csky.opt:190
 #, no-c-format
 msgid "Set the branch costs to roughly the specified number of instructions."
 msgstr ""
 
-#: config/csky/csky.opt:173
+#: config/csky/csky.opt:194
 #, no-c-format
 msgid "Permit scheduling of function prologue and epilogue sequences."
 msgstr ""
@@ -15685,23 +16097,28 @@ msgstr ""
 msgid "GCN GPU type to use:"
 msgstr ""
 
-#: config/gcn/gcn.opt:39 config/gcn/gcn.opt:43
+#: config/gcn/gcn.opt:42 config/gcn/gcn.opt:46
 #, no-c-format
 msgid "Specify the name of the target GPU."
 msgstr ""
 
-#: config/gcn/gcn.opt:55
+#: config/gcn/gcn.opt:50
+#, no-c-format
+msgid "Generate code for a 32-bit ABI."
+msgstr ""
+
+#: config/gcn/gcn.opt:58
 #, no-c-format
 msgid "Enable OpenMP GPU offloading."
 msgstr ""
 
-#: config/gcn/gcn.opt:71
+#: config/gcn/gcn.opt:74
 #, no-c-format
 msgid ""
 "-mstack-size=<number>\tSet the private segment size per wave-front, in bytes."
 msgstr ""
 
-#: config/gcn/gcn.opt:75
+#: config/gcn/gcn.opt:78
 #, no-c-format
 msgid "Warn about invalid OpenACC dimensions."
 msgstr ""
@@ -16909,11 +17326,6 @@ msgstr ""
 msgid "Warn when attempting to free a non-heap object."
 msgstr ""
 
-#: common.opt:623
-#, no-c-format
-msgid "Warn when a function cannot be expanded to HSAIL."
-msgstr ""
-
 #: common.opt:630
 #, no-c-format
 msgid "Warn when a switch case falls through."
@@ -17180,368 +17592,373 @@ msgstr ""
 msgid "Warn when a vector operation is compiled outside the SIMD."
 msgstr ""
 
-#: common.opt:859
+#: common.opt:847
+#, no-c-format
+msgid "Warn about unsupported features in ThreadSanitizer."
+msgstr ""
+
+#: common.opt:863
 #, no-c-format
 msgid "-aux-info <file>\tEmit declaration information into <file>."
 msgstr ""
 
-#: common.opt:872
+#: common.opt:876
 #, no-c-format
 msgid "-d<letters>\tEnable dumps from specific passes of the compiler."
 msgstr ""
 
-#: common.opt:876
+#: common.opt:880
 #, no-c-format
 msgid "-dumpbase <file>\tSet the file basename to be used for dumps."
 msgstr ""
 
-#: common.opt:880
+#: common.opt:884
 #, no-c-format
 msgid ""
 "-dumpbase-ext .<ext>    Drop a trailing .<ext> from the dump basename to "
 "name auxiliary output files."
 msgstr ""
 
-#: common.opt:884
+#: common.opt:888
 #, no-c-format
 msgid "-dumpdir <dir>\tSet the directory name to be used for dumps."
 msgstr ""
 
-#: common.opt:970
+#: common.opt:978
 #, no-c-format
 msgid "The version of the C++ ABI in use."
 msgstr ""
 
-#: common.opt:974
+#: common.opt:982
 #, no-c-format
 msgid "Aggressively optimize loops using language constraints."
 msgstr ""
 
-#: common.opt:978
+#: common.opt:986
 #, no-c-format
 msgid "Align the start of functions."
 msgstr ""
 
-#: common.opt:988
+#: common.opt:996
 #, no-c-format
 msgid "Align labels which are only reached by jumping."
 msgstr ""
 
-#: common.opt:995
+#: common.opt:1003
 #, no-c-format
 msgid "Align all labels."
 msgstr ""
 
-#: common.opt:1002
+#: common.opt:1010
 #, no-c-format
 msgid "Align the start of loops."
 msgstr ""
 
-#: common.opt:1009
+#: common.opt:1017
 #, no-c-format
 msgid "Allow the compiler to introduce new data races on stores."
 msgstr ""
 
-#: common.opt:1013
+#: common.opt:1021
 #, no-c-format
 msgid "Enable static analysis pass."
 msgstr ""
 
-#: common.opt:1033
+#: common.opt:1041
 #, no-c-format
 msgid "Select what to sanitize."
 msgstr ""
 
-#: common.opt:1037
+#: common.opt:1045
 #, no-c-format
 msgid "Select type of coverage sanitization."
 msgstr ""
 
-#: common.opt:1041
+#: common.opt:1049
 #, no-c-format
 msgid "-fasan-shadow-offset=<number>\tUse custom shadow memory offset."
 msgstr ""
 
-#: common.opt:1045
+#: common.opt:1053
 #, no-c-format
 msgid ""
 "-fsanitize-sections=<sec1,sec2,...>\tSanitize global variables in user-"
 "defined sections."
 msgstr ""
 
-#: common.opt:1050
+#: common.opt:1058
 #, no-c-format
 msgid "After diagnosing undefined behavior attempt to continue execution."
 msgstr ""
 
-#: common.opt:1054
+#: common.opt:1062
 #, no-c-format
 msgid "This switch is deprecated; use -fsanitize-recover= instead."
 msgstr ""
 
-#: common.opt:1061
+#: common.opt:1069
 #, no-c-format
 msgid ""
 "Use trap instead of a library function for undefined behavior sanitization."
 msgstr ""
 
-#: common.opt:1065
+#: common.opt:1073
 #, no-c-format
 msgid "Generate unwind tables that are exact at each instruction boundary."
 msgstr ""
 
-#: common.opt:1069
+#: common.opt:1077
 #, no-c-format
 msgid "Generate auto-inc/dec instructions."
 msgstr ""
 
-#: common.opt:1073
+#: common.opt:1081
 #, 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:1078
+#: common.opt:1086
 #, no-c-format
 msgid ""
 "Use sample profile information for call graph node weights. The profile file "
 "is specified in the argument."
 msgstr ""
 
-#: common.opt:1087
+#: common.opt:1095
 #, no-c-format
 msgid "Generate code to check bounds before indexing arrays."
 msgstr ""
 
-#: common.opt:1091
+#: common.opt:1099
 #, no-c-format
 msgid "Replace add, compare, branch with branch on count register."
 msgstr ""
 
-#: common.opt:1095
+#: common.opt:1103
 #, no-c-format
 msgid "Use profiling information for branch probabilities."
 msgstr ""
 
-#: common.opt:1111
+#: common.opt:1119
 #, no-c-format
 msgid "Output callgraph information on a per-file basis."
 msgstr ""
 
-#: common.opt:1115
+#: common.opt:1123
 #, no-c-format
 msgid "Output callgraph information on a per-file basis with decorations."
 msgstr ""
 
-#: common.opt:1119
+#: common.opt:1127
 #, no-c-format
 msgid ""
 "-fcall-saved-<register>\tMark <register> as being preserved across functions."
 msgstr ""
 
-#: common.opt:1123
+#: common.opt:1131
 #, no-c-format
 msgid ""
 "-fcall-used-<register>\tMark <register> as being corrupted by function calls."
 msgstr ""
 
-#: common.opt:1130
+#: common.opt:1138
 #, no-c-format
 msgid "Save registers around function calls."
 msgstr ""
 
-#: common.opt:1134
+#: common.opt:1142
 #, no-c-format
 msgid "This switch is deprecated; do not use."
 msgstr ""
 
-#: common.opt:1138
+#: common.opt:1146
 #, no-c-format
 msgid "Check the return value of new in C++."
 msgstr ""
 
-#: common.opt:1142 common.opt:1146
+#: common.opt:1150 common.opt:1154
 #, no-c-format
 msgid "Perform internal consistency checkings."
 msgstr ""
 
-#: common.opt:1150
+#: common.opt:1158
 #, no-c-format
 msgid "Enable code hoisting."
 msgstr ""
 
-#: common.opt:1154
+#: common.opt:1162
 #, no-c-format
 msgid ""
 "Looks for opportunities to reduce stack adjustments and stack references."
 msgstr ""
 
-#: common.opt:1158
+#: common.opt:1166
 #, no-c-format
 msgid "Put uninitialized globals in the common section."
 msgstr ""
 
-#: common.opt:1166
+#: common.opt:1174
 #, no-c-format
 msgid ""
 "-fcompare-debug[=<opts>]\tCompile with and without e.g. -gtoggle, and "
 "compare the final-insns dump."
 msgstr ""
 
-#: common.opt:1170
+#: common.opt:1178
 #, no-c-format
 msgid "Run only the second compilation of -fcompare-debug."
 msgstr ""
 
-#: common.opt:1174
+#: common.opt:1182
 #, no-c-format
 msgid "Perform comparison elimination after register allocation has finished."
 msgstr ""
 
-#: common.opt:1178
+#: common.opt:1186
 #, no-c-format
 msgid "Do not perform optimizations increasing noticeably stack usage."
 msgstr ""
 
-#: common.opt:1182
+#: common.opt:1190
 #, no-c-format
 msgid "Perform a register copy-propagation optimization pass."
 msgstr ""
 
-#: common.opt:1186
+#: common.opt:1194
 #, no-c-format
 msgid "Perform cross-jumping optimization."
 msgstr ""
 
-#: common.opt:1190
+#: common.opt:1198
 #, no-c-format
 msgid "When running CSE, follow jumps to their targets."
 msgstr ""
 
-#: common.opt:1198
+#: common.opt:1206
 #, no-c-format
 msgid "Omit range reduction step when performing complex division."
 msgstr ""
 
-#: common.opt:1202
+#: common.opt:1210
 #, no-c-format
 msgid "Complex multiplication and division follow Fortran rules."
 msgstr ""
 
-#: common.opt:1206
+#: common.opt:1214
 #, no-c-format
 msgid "Place data items into their own section."
 msgstr ""
 
-#: common.opt:1210
+#: common.opt:1218
 #, no-c-format
 msgid "List all available debugging counters with their limits and counts."
 msgstr ""
 
-#: common.opt:1214
+#: common.opt:1222
 #, no-c-format
 msgid ""
 "-fdbg-cnt=<counter>[:<lower_limit1>-]<upper_limit1>[:<lower_limit2>-"
 "<upper_limit2>:...][,<counter>:...]\tSet the debug counter limit."
 msgstr ""
 
-#: common.opt:1218
+#: common.opt:1226
 #, no-c-format
 msgid ""
 "-fdebug-prefix-map=<old>=<new>\tMap one directory name to another in debug "
 "information."
 msgstr ""
 
-#: common.opt:1222
+#: common.opt:1230
 #, no-c-format
 msgid ""
 "-ffile-prefix-map=<old>=<new>\tMap one directory name to another in "
 "compilation result."
 msgstr ""
 
-#: common.opt:1226
+#: common.opt:1234
 #, no-c-format
 msgid "Output .debug_types section when using DWARF v4 debuginfo."
 msgstr ""
 
-#: common.opt:1232
+#: common.opt:1240
 #, no-c-format
 msgid "Defer popping functions args from stack until later."
 msgstr ""
 
-#: common.opt:1236
+#: common.opt:1244
 #, no-c-format
 msgid "Attempt to fill delay slots of branch instructions."
 msgstr ""
 
-#: common.opt:1240
+#: common.opt:1248
 #, no-c-format
 msgid "Delete dead instructions that may throw exceptions."
 msgstr ""
 
-#: common.opt:1244
+#: common.opt:1252
 #, no-c-format
 msgid "Delete useless null pointer checks."
 msgstr ""
 
-#: common.opt:1248
+#: common.opt:1256
 #, no-c-format
 msgid ""
 "Stream extra data to support more aggressive devirtualization in LTO local "
 "transformation mode."
 msgstr ""
 
-#: common.opt:1252
+#: common.opt:1260
 #, no-c-format
 msgid "Perform speculative devirtualization."
 msgstr ""
 
-#: common.opt:1256
+#: common.opt:1264
 #, no-c-format
 msgid "Try to convert virtual calls to direct ones."
 msgstr ""
 
-#: common.opt:1260
+#: common.opt:1268
 #, 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:1277
+#: common.opt:1285
 #, no-c-format
 msgid "Show the source line with a caret indicating the column."
 msgstr ""
 
-#: common.opt:1281
+#: common.opt:1289
 #, no-c-format
 msgid "Show labels annotating ranges of source code when showing source."
 msgstr ""
 
-#: common.opt:1285
+#: common.opt:1293
 #, no-c-format
 msgid "Show line numbers in the left margin when showing source."
 msgstr ""
 
-#: common.opt:1293
+#: common.opt:1301
 #, no-c-format
 msgid "-fdiagnostics-color=[never|always|auto]\tColorize diagnostics."
 msgstr ""
 
-#: common.opt:1313
+#: common.opt:1321
 #, no-c-format
 msgid "-fdiagnostics-urls=[never|always|auto]\tEmbed URLs in diagnostics."
 msgstr ""
 
-#: common.opt:1333
+#: common.opt:1341
 #, 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:1337
+#: common.opt:1345
 #, no-c-format
 msgid ""
 "-fdiagnostics-column-origin=<number>\tSet the number of the first column.  "
@@ -17549,962 +17966,993 @@ msgid ""
 "based, for example."
 msgstr ""
 
-#: common.opt:1341
+#: common.opt:1349
 #, no-c-format
 msgid "-fdiagnostics-format=[text|json]\tSelect output format."
 msgstr ""
 
-#: common.opt:1367
+#: common.opt:1375
 #, no-c-format
 msgid "Print fix-it hints in machine-readable form."
 msgstr ""
 
-#: common.opt:1371
+#: common.opt:1379
 #, no-c-format
 msgid "Print fix-it hints to stderr in unified diff format."
 msgstr ""
 
-#: common.opt:1375
+#: common.opt:1383
 #, no-c-format
 msgid ""
 "Amend appropriate diagnostic messages with the command line option that "
 "controls them."
 msgstr ""
 
-#: common.opt:1379
+#: common.opt:1387
 #, no-c-format
 msgid "Print CWE identifiers for diagnostic messages, where available."
 msgstr ""
 
-#: common.opt:1383
+#: common.opt:1391
 #, no-c-format
 msgid ""
 "Specify how to print any control-flow path associated with a diagnostic."
 msgstr ""
 
-#: common.opt:1387
+#: common.opt:1395
+#, no-c-format
+msgid ""
+"Turn off any diagnostics features that complicate the output, such as line "
+"numbers, color, and warning URLs."
+msgstr ""
+
+#: common.opt:1399
 #, no-c-format
 msgid ""
 "-ftabstop=<number>      Distance between tab stops for column reporting."
 msgstr ""
 
-#: common.opt:1403
+#: common.opt:1415
 #, no-c-format
 msgid "Show stack depths of events in paths."
 msgstr ""
 
-#: common.opt:1407
+#: common.opt:1419
 #, no-c-format
 msgid "Set minimum width of left margin of source code when showing source."
 msgstr ""
 
-#: common.opt:1411
+#: common.opt:1423
 #, no-c-format
 msgid ""
 "-fdisable-[tree|rtl|ipa]-<pass>=range1+range2\tDisable an optimization pass."
 msgstr ""
 
-#: common.opt:1415
+#: common.opt:1427
 #, no-c-format
 msgid ""
 "-fenable-[tree|rtl|ipa]-<pass>=range1+range2\tEnable an optimization pass."
 msgstr ""
 
-#: common.opt:1419
+#: common.opt:1431
 #, no-c-format
 msgid "-fdump-<type>\tDump various compiler internals to a file."
 msgstr ""
 
-#: common.opt:1426
+#: common.opt:1438
 #, no-c-format
 msgid ""
 "-fdump-final-insns=filename\tDump to filename the insns at the end of "
 "translation."
 msgstr ""
 
-#: common.opt:1430
+#: common.opt:1442
 #, no-c-format
 msgid "-fdump-go-spec=filename\tWrite all declarations to file as Go code."
 msgstr ""
 
-#: common.opt:1434
+#: common.opt:1446
 #, no-c-format
 msgid "Suppress output of addresses in debugging dumps."
 msgstr ""
 
-#: common.opt:1438
+#: common.opt:1450
 #, no-c-format
 msgid ""
 "Collect and dump debug information into temporary file if ICE in C/C++ "
 "compiler occurred."
 msgstr ""
 
-#: common.opt:1443
+#: common.opt:1455
 #, no-c-format
 msgid ""
 "Dump detailed information on GCC's internal representation of source code "
 "locations."
 msgstr ""
 
-#: common.opt:1447
+#: common.opt:1459
 #, no-c-format
 msgid "Dump optimization passes."
 msgstr ""
 
-#: common.opt:1451
+#: common.opt:1463
 #, no-c-format
 msgid ""
 "Suppress output of instruction numbers, line number notes and addresses in "
 "debugging dumps."
 msgstr ""
 
-#: common.opt:1455
+#: common.opt:1467
 #, no-c-format
 msgid "Suppress output of previous and next insn numbers in debugging dumps."
 msgstr ""
 
-#: common.opt:1459
+#: common.opt:1471
 #, no-c-format
 msgid "Enable CFI tables via GAS assembler directives."
 msgstr ""
 
-#: common.opt:1463
+#: common.opt:1475
 #, no-c-format
 msgid "Perform early inlining."
 msgstr ""
 
-#: common.opt:1471
+#: common.opt:1483
 #, no-c-format
 msgid "Perform interprocedural reduction of aggregates."
 msgstr ""
 
-#: common.opt:1475
+#: common.opt:1487
 #, no-c-format
 msgid "Perform unused symbol elimination in debug info."
 msgstr ""
 
-#: common.opt:1479
+#: common.opt:1491
 #, no-c-format
 msgid "Perform unused type elimination in debug info."
 msgstr ""
 
-#: common.opt:1483
+#: common.opt:1495
 #, no-c-format
 msgid "Do not suppress C++ class debug information."
 msgstr ""
 
-#: common.opt:1487
+#: common.opt:1499
 #, no-c-format
 msgid "Enable exception handling."
 msgstr ""
 
-#: common.opt:1491
+#: common.opt:1503
 #, no-c-format
 msgid "Perform a number of minor, expensive optimizations."
 msgstr ""
 
-#: common.opt:1495
+#: common.opt:1507
 #, no-c-format
 msgid ""
 "-fexcess-precision=[fast|standard]\tSpecify handling of excess floating-"
 "point precision."
 msgstr ""
 
-#: common.opt:1510
+#: common.opt:1522
 #, no-c-format
 msgid ""
 "-fpermitted-flt-eval-methods=[c11|ts-18661]\tSpecify which values of "
 "FLT_EVAL_METHOD are permitted."
 msgstr ""
 
-#: common.opt:1526
+#: common.opt:1538
 #, no-c-format
 msgid ""
 "Output lto objects containing both the intermediate language and binary "
 "output."
 msgstr ""
 
-#: common.opt:1530
+#: common.opt:1542
 #, no-c-format
 msgid "Assume no NaNs or infinities are generated."
 msgstr ""
 
-#: common.opt:1534
+#: common.opt:1546
 #, no-c-format
 msgid ""
 "Assume that loops with an exit will terminate and not loop indefinitely."
 msgstr ""
 
-#: common.opt:1538
+#: common.opt:1550
 #, no-c-format
 msgid ""
 "-ffixed-<register>\tMark <register> as being unavailable to the compiler."
 msgstr ""
 
-#: common.opt:1542
+#: common.opt:1554
 #, no-c-format
 msgid "Don't allocate floats and doubles in extended-precision registers."
 msgstr ""
 
-#: common.opt:1550
+#: common.opt:1562
 #, no-c-format
 msgid "Perform a forward propagation pass on RTL."
 msgstr ""
 
-#: common.opt:1554
+#: common.opt:1566
 #, no-c-format
 msgid ""
 "-ffp-contract=[off|on|fast]\tPerform floating-point expression contraction."
 msgstr ""
 
-#: common.opt:1571
+#: common.opt:1583
 #, no-c-format
 msgid ""
 "Allow built-in functions ceil, floor, round, trunc to raise \"inexact\" "
 "exceptions."
 msgstr ""
 
-#: common.opt:1578
+#: common.opt:1590
 #, no-c-format
 msgid "Allow function addresses to be held in registers."
 msgstr ""
 
-#: common.opt:1582
+#: common.opt:1594
 #, no-c-format
 msgid "Place each function into its own section."
 msgstr ""
 
-#: common.opt:1586
+#: common.opt:1598
 #, no-c-format
 msgid "Perform global common subexpression elimination."
 msgstr ""
 
-#: common.opt:1590
+#: common.opt:1602
 #, no-c-format
 msgid ""
 "Perform enhanced load motion during global common subexpression elimination."
 msgstr ""
 
-#: common.opt:1594
+#: common.opt:1606
 #, no-c-format
 msgid "Perform store motion after global common subexpression elimination."
 msgstr ""
 
-#: common.opt:1598
+#: common.opt:1610
 #, no-c-format
 msgid ""
 "Perform redundant load after store elimination in global common "
 "subexpression elimination."
 msgstr ""
 
-#: common.opt:1603
+#: common.opt:1615
 #, no-c-format
 msgid ""
 "Perform global common subexpression elimination after register allocation "
 "has finished."
 msgstr ""
 
-#: common.opt:1620
+#: common.opt:1632
 #, 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:1625
+#: common.opt:1637
 #, no-c-format
 msgid "Enable in and out of Graphite representation."
 msgstr ""
 
-#: common.opt:1629
+#: common.opt:1641
 #, no-c-format
 msgid "Enable Graphite Identity transformation."
 msgstr ""
 
-#: common.opt:1633
+#: common.opt:1645
 #, no-c-format
 msgid ""
 "Enable hoisting adjacent loads to encourage generating conditional move "
 "instructions."
 msgstr ""
 
-#: common.opt:1642
+#: common.opt:1654
 #, 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:1647
+#: common.opt:1659
 #, no-c-format
 msgid "Mark all loops as parallel."
 msgstr ""
 
-#: common.opt:1651 common.opt:1659 common.opt:2804
+#: common.opt:1663 common.opt:1671 common.opt:2835
 #, no-c-format
 msgid "Enable loop nest transforms.  Same as -floop-nest-optimize."
 msgstr ""
 
-#: common.opt:1655
+#: common.opt:1667
 #, no-c-format
 msgid "Enable loop interchange on trees."
 msgstr ""
 
-#: common.opt:1663
+#: common.opt:1675
 #, no-c-format
 msgid "Perform unroll-and-jam on loops."
 msgstr ""
 
-#: common.opt:1667
+#: common.opt:1679
 #, no-c-format
 msgid "Enable support for GNU transactional memory."
 msgstr ""
 
-#: common.opt:1671
+#: common.opt:1683
 #, no-c-format
 msgid "Use STB_GNU_UNIQUE if supported by the assembler."
 msgstr ""
 
-#: common.opt:1679
+#: common.opt:1691
 #, no-c-format
 msgid "Enable the loop nest optimizer."
 msgstr ""
 
-#: common.opt:1683
+#: common.opt:1695
 #, no-c-format
 msgid "Force bitfield accesses to match their type width."
 msgstr ""
 
-#: common.opt:1687
+#: common.opt:1699
 #, no-c-format
 msgid "Merge adjacent stores."
 msgstr ""
 
-#: common.opt:1691
+#: common.opt:1703
 #, no-c-format
 msgid "Enable guessing of branch probabilities."
 msgstr ""
 
-#: common.opt:1699
+#: common.opt:1711
 #, no-c-format
 msgid "Process #ident directives."
 msgstr ""
 
-#: common.opt:1703
+#: common.opt:1715
 #, no-c-format
 msgid "Perform conversion of conditional jumps to branchless equivalents."
 msgstr ""
 
-#: common.opt:1707
+#: common.opt:1719
 #, no-c-format
 msgid "Perform conversion of conditional jumps to conditional execution."
 msgstr ""
 
-#: common.opt:1711
+#: common.opt:1723
 #, no-c-format
 msgid ""
 "-fstack-reuse=[all|named_vars|none]\tSet stack reuse level for local "
 "variables."
 msgstr ""
 
-#: common.opt:1727
+#: common.opt:1739
 #, no-c-format
 msgid "Convert conditional jumps in innermost loops to branchless equivalents."
 msgstr ""
 
-#: common.opt:1739
+#: common.opt:1751
 #, no-c-format
 msgid "Do not generate .size directives."
 msgstr ""
 
-#: common.opt:1743
+#: common.opt:1755
 #, no-c-format
 msgid "Perform indirect inlining."
 msgstr ""
 
-#: common.opt:1749
+#: common.opt:1761
 #, no-c-format
 msgid ""
 "Enable inlining of function declared \"inline\", disabling disables all "
 "inlining."
 msgstr ""
 
-#: common.opt:1753
+#: common.opt:1765
 #, no-c-format
 msgid ""
 "Integrate functions into their callers when code size is known not to grow."
 msgstr ""
 
-#: common.opt:1757
+#: common.opt:1769
 #, no-c-format
 msgid ""
 "Integrate functions not declared \"inline\" into their callers when "
 "profitable."
 msgstr ""
 
-#: common.opt:1761
+#: common.opt:1773
 #, no-c-format
 msgid "Integrate functions only required by their single caller."
 msgstr ""
 
-#: common.opt:1768
+#: common.opt:1780
 #, no-c-format
 msgid ""
 "-finline-limit=<number>\tLimit the size of inlined functions to <number>."
 msgstr ""
 
-#: common.opt:1772
+#: common.opt:1784
 #, no-c-format
 msgid ""
 "Inline __atomic operations when a lock free instruction sequence is "
 "available."
 msgstr ""
 
-#: common.opt:1779
+#: common.opt:1791
 #, no-c-format
 msgid ""
-"-fcf-protection=[full|branch|return|none]\tInstrument functions with checks "
-"to verify jump/call/return control-flow transfer instructions have valid "
-"targets."
+"-fcf-protection=[full|branch|return|none|check]\tInstrument functions with "
+"checks to verify jump/call/return control-flow transfer instructions have "
+"valid targets."
 msgstr ""
 
-#: common.opt:1799
+#: common.opt:1814
 #, no-c-format
 msgid "Instrument function entry and exit with profiling calls."
 msgstr ""
 
-#: common.opt:1803
+#: common.opt:1818
 #, no-c-format
 msgid ""
 "-finstrument-functions-exclude-function-list=name,...\tDo not instrument "
 "listed functions."
 msgstr ""
 
-#: common.opt:1807
+#: common.opt:1822
 #, no-c-format
 msgid ""
 "-finstrument-functions-exclude-file-list=filename,...\tDo not instrument "
 "functions listed in files."
 msgstr ""
 
-#: common.opt:1811
+#: common.opt:1826
 #, no-c-format
 msgid "Perform interprocedural constant propagation."
 msgstr ""
 
-#: common.opt:1815
+#: common.opt:1830
 #, no-c-format
 msgid "Perform cloning to make Interprocedural constant propagation stronger."
 msgstr ""
 
-#: common.opt:1823
+#: common.opt:1838
 #, no-c-format
 msgid "Perform interprocedural bitwise constant propagation."
 msgstr ""
 
-#: common.opt:1827
+#: common.opt:1842
+#, no-c-format
+msgid "Perform interprocedural modref analysis."
+msgstr ""
+
+#: common.opt:1846
 #, no-c-format
 msgid "Perform interprocedural profile propagation."
 msgstr ""
 
-#: common.opt:1831
+#: common.opt:1850
 #, no-c-format
 msgid "Perform interprocedural points-to analysis."
 msgstr ""
 
-#: common.opt:1835
+#: common.opt:1854
 #, no-c-format
 msgid "Discover pure and const functions."
 msgstr ""
 
-#: common.opt:1839
+#: common.opt:1858
 #, no-c-format
 msgid "Perform Identical Code Folding for functions and read-only variables."
 msgstr ""
 
-#: common.opt:1843
+#: common.opt:1862
 #, no-c-format
 msgid "Perform Identical Code Folding for functions."
 msgstr ""
 
-#: common.opt:1847
+#: common.opt:1866
 #, no-c-format
 msgid "Perform Identical Code Folding for variables."
 msgstr ""
 
-#: common.opt:1851
+#: common.opt:1870
 #, no-c-format
 msgid "Discover read-only and non addressable static variables."
 msgstr ""
 
-#: common.opt:1855
+#: common.opt:1874
 #, no-c-format
 msgid "Discover read-only, write-only and non-addressable static variables."
 msgstr ""
 
-#: common.opt:1859
+#: common.opt:1878
 #, no-c-format
 msgid "Reduce stack alignment on call sites if possible."
 msgstr ""
 
-#: common.opt:1871
+#: common.opt:1890
 #, no-c-format
 msgid "Perform IPA Value Range Propagation."
 msgstr ""
 
-#: common.opt:1875
+#: common.opt:1894
 #, no-c-format
 msgid "-fira-algorithm=[CB|priority]\tSet the used IRA algorithm."
 msgstr ""
 
-#: common.opt:1888
+#: common.opt:1907
 #, no-c-format
 msgid "-fira-region=[one|all|mixed]\tSet regions for IRA."
 msgstr ""
 
-#: common.opt:1904
+#: common.opt:1923
 #, no-c-format
 msgid "Use IRA based register pressure calculation in RTL hoist optimizations."
 msgstr ""
 
-#: common.opt:1909
+#: common.opt:1928
 #, no-c-format
 msgid "Use IRA based register pressure calculation in RTL loop optimizations."
 msgstr ""
 
-#: common.opt:1914
+#: common.opt:1933
 #, no-c-format
 msgid "Share slots for saving different hard registers."
 msgstr ""
 
-#: common.opt:1918
+#: common.opt:1937
 #, no-c-format
 msgid "Share stack slots for spilled pseudo-registers."
 msgstr ""
 
-#: common.opt:1922
+#: common.opt:1941
 #, no-c-format
 msgid "-fira-verbose=<number>\tControl IRA's level of diagnostic messages."
 msgstr ""
 
-#: common.opt:1926
+#: common.opt:1945
 #, no-c-format
 msgid "Optimize induction variables on trees."
 msgstr ""
 
-#: common.opt:1930
+#: common.opt:1949
 #, no-c-format
 msgid "Use jump tables for sufficiently large switch statements."
 msgstr ""
 
-#: common.opt:1934
+#: common.opt:1953
+#, no-c-format
+msgid "Use bit tests for sufficiently large switch statements."
+msgstr ""
+
+#: common.opt:1957
 #, no-c-format
 msgid "Generate code for functions even if they are fully inlined."
 msgstr ""
 
-#: common.opt:1938
+#: common.opt:1961
 #, no-c-format
 msgid "Generate code for static functions even if they are never called."
 msgstr ""
 
-#: common.opt:1942
+#: common.opt:1965
 #, no-c-format
 msgid "Emit static const variables even if they are not used."
 msgstr ""
 
-#: common.opt:1946
+#: common.opt:1969
 #, no-c-format
 msgid "Give external symbols a leading underscore."
 msgstr ""
 
-#: common.opt:1954
+#: common.opt:1977
 #, no-c-format
 msgid "Do CFG-sensitive rematerialization in LRA."
 msgstr ""
 
-#: common.opt:1958
+#: common.opt:1981
 #, no-c-format
 msgid "Enable link-time optimization."
 msgstr ""
 
-#: common.opt:1962
+#: common.opt:1985
 #, no-c-format
 msgid "Link-time optimization with number of parallel jobs or jobserver."
 msgstr ""
 
-#: common.opt:1984
+#: common.opt:2007
 #, no-c-format
 msgid "Specify the algorithm to partition symbols and vars at linktime."
 msgstr ""
 
-#: common.opt:1989
+#: common.opt:2012
 #, no-c-format
 msgid ""
 "-flto-compression-level=<number>\tUse zlib/zstd compression level <number> "
 "for IL."
 msgstr ""
 
-#: common.opt:1997
+#: common.opt:2020
 #, no-c-format
 msgid "Report various link-time optimization statistics."
 msgstr ""
 
-#: common.opt:2001
+#: common.opt:2024
 #, no-c-format
 msgid "Report various link-time optimization statistics for WPA only."
 msgstr ""
 
-#: common.opt:2005
+#: common.opt:2028
 #, no-c-format
 msgid "Set errno after built-in math functions."
 msgstr ""
 
-#: common.opt:2009
+#: common.opt:2032
 #, no-c-format
 msgid "-fmax-errors=<number>\tMaximum number of errors to report."
 msgstr ""
 
-#: common.opt:2013
+#: common.opt:2036
 #, no-c-format
 msgid "Report on permanent memory allocation."
 msgstr ""
 
-#: common.opt:2017
+#: common.opt:2040
 #, no-c-format
 msgid "Report on permanent memory allocation in WPA only."
 msgstr ""
 
-#: common.opt:2024
+#: common.opt:2047
 #, no-c-format
 msgid "Attempt to merge identical constants and constant variables."
 msgstr ""
 
-#: common.opt:2028
+#: common.opt:2051
 #, no-c-format
 msgid "Attempt to merge identical constants across compilation units."
 msgstr ""
 
-#: common.opt:2032
+#: common.opt:2055
 #, no-c-format
 msgid "Attempt to merge identical debug strings across compilation units."
 msgstr ""
 
-#: common.opt:2036
+#: common.opt:2059
 #, no-c-format
 msgid ""
 "-fmessage-length=<number>\tLimit diagnostics to <number> characters per "
 "line.  0 suppresses line-wrapping."
 msgstr ""
 
-#: common.opt:2040
+#: common.opt:2063
 #, no-c-format
 msgid "Perform SMS based modulo scheduling before the first scheduling pass."
 msgstr ""
 
-#: common.opt:2044
+#: common.opt:2067
 #, no-c-format
 msgid "Perform SMS based modulo scheduling with register moves allowed."
 msgstr ""
 
-#: common.opt:2048
+#: common.opt:2071
 #, no-c-format
 msgid "Move loop invariant computations out of loops."
 msgstr ""
 
-#: common.opt:2052
+#: common.opt:2075
 #, no-c-format
 msgid "Use the RTL dead code elimination pass."
 msgstr ""
 
-#: common.opt:2056
+#: common.opt:2079
 #, no-c-format
 msgid "Use the RTL dead store elimination pass."
 msgstr ""
 
-#: common.opt:2060
+#: common.opt:2083
 #, no-c-format
 msgid ""
 "Enable/Disable the traditional scheduling in loops that already passed "
 "modulo scheduling."
 msgstr ""
 
-#: common.opt:2064
+#: common.opt:2087
 #, no-c-format
 msgid "Support synchronous non-call exceptions."
 msgstr ""
 
-#: common.opt:2068
+#: common.opt:2091
 #, no-c-format
 msgid ""
 "-foffload=<targets>=<options>\tSpecify offloading targets and options for "
 "them."
 msgstr ""
 
-#: common.opt:2072
+#: common.opt:2095
 #, no-c-format
 msgid "-foffload-abi=[lp64|ilp32]\tSet the ABI to use in an offload compiler."
 msgstr ""
 
-#: common.opt:2085
+#: common.opt:2108
 #, no-c-format
 msgid "When possible do not generate stack frames."
 msgstr ""
 
-#: common.opt:2089
+#: common.opt:2112
 #, no-c-format
 msgid "Enable all optimization info dumps on stderr."
 msgstr ""
 
-#: common.opt:2093
+#: common.opt:2116
 #, no-c-format
 msgid "-fopt-info[-<type>=filename]\tDump compiler optimization details."
 msgstr ""
 
-#: common.opt:2097
+#: common.opt:2120
 #, no-c-format
 msgid ""
 "Write a SRCFILE.opt-record.json file detailing what optimizations were "
 "performed."
 msgstr ""
 
-#: common.opt:2105
+#: common.opt:2128
 #, no-c-format
 msgid "Optimize sibling and tail recursive calls."
 msgstr ""
 
-#: common.opt:2109
+#: common.opt:2132
 #, no-c-format
 msgid "Perform partial inlining."
 msgstr ""
 
-#: common.opt:2113 common.opt:2117
+#: common.opt:2136 common.opt:2140
 #, no-c-format
 msgid "Report on memory allocation before interprocedural optimization."
 msgstr ""
 
-#: common.opt:2121
+#: common.opt:2144
 #, no-c-format
 msgid "Pack structure members together without holes."
 msgstr ""
 
-#: common.opt:2125
+#: common.opt:2148
 #, no-c-format
 msgid "-fpack-struct=<number>\tSet initial maximum structure member alignment."
 msgstr ""
 
-#: common.opt:2129
+#: common.opt:2152
 #, no-c-format
 msgid "Return small aggregates in memory, not registers."
 msgstr ""
 
-#: common.opt:2133
+#: common.opt:2156
 #, no-c-format
 msgid "Perform loop peeling."
 msgstr ""
 
-#: common.opt:2137
+#: common.opt:2160
 #, no-c-format
 msgid "Enable machine specific peephole optimizations."
 msgstr ""
 
-#: common.opt:2141
+#: common.opt:2164
 #, no-c-format
 msgid "Enable an RTL peephole pass before sched2."
 msgstr ""
 
-#: common.opt:2145
+#: common.opt:2168
 #, no-c-format
 msgid "Generate position-independent code if possible (large mode)."
 msgstr ""
 
-#: common.opt:2149
+#: common.opt:2172
 #, no-c-format
 msgid ""
 "Generate position-independent code for executables if possible (large mode)."
 msgstr ""
 
-#: common.opt:2153
+#: common.opt:2176
 #, no-c-format
 msgid "Generate position-independent code if possible (small mode)."
 msgstr ""
 
-#: common.opt:2157
+#: common.opt:2180
 #, no-c-format
 msgid ""
 "Generate position-independent code for executables if possible (small mode)."
 msgstr ""
 
-#: common.opt:2161
+#: common.opt:2184
 #, no-c-format
 msgid ""
 "Use PLT for PIC calls (-fno-plt: load the address from GOT at call site)."
 msgstr ""
 
-#: common.opt:2165
+#: common.opt:2188
 #, no-c-format
 msgid "Specify a plugin to load."
 msgstr ""
 
-#: common.opt:2169
+#: common.opt:2192
 #, no-c-format
 msgid ""
 "-fplugin-arg-<name>-<key>[=<value>]\tSpecify argument <key>=<value> for "
 "plugin <name>."
 msgstr ""
 
-#: common.opt:2173
+#: common.opt:2196
 #, no-c-format
 msgid "Run predictive commoning optimization."
 msgstr ""
 
-#: common.opt:2177
+#: common.opt:2200
 #, no-c-format
 msgid "Generate prefetch instructions, if available, for arrays in loops."
 msgstr ""
 
-#: common.opt:2181
+#: common.opt:2204
 #, no-c-format
 msgid "Enable basic program profiling code."
 msgstr ""
 
-#: common.opt:2185
+#: common.opt:2208
 #, no-c-format
 msgid "Generate absolute source path names for gcov."
 msgstr ""
 
-#: common.opt:2189
+#: common.opt:2212
 #, no-c-format
 msgid "Insert arc-based program profiling code."
 msgstr ""
 
-#: common.opt:2193
+#: common.opt:2216
 #, no-c-format
 msgid ""
 "Set the top-level directory for storing the profile data. The default is "
 "'pwd'."
 msgstr ""
 
-#: common.opt:2198
+#: common.opt:2221
 #, no-c-format
 msgid "Select the name for storing the profile note file."
 msgstr ""
 
-#: common.opt:2202
+#: common.opt:2225
 #, no-c-format
 msgid "Enable correction of flow inconsistent profile data input."
 msgstr ""
 
-#: common.opt:2206
+#: common.opt:2229
 #, no-c-format
 msgid ""
 "-fprofile-update=[single|atomic|prefer-atomic]\tSet the profile update "
 "method."
 msgstr ""
 
-#: common.opt:2210
+#: common.opt:2233
 #, no-c-format
 msgid ""
-"Instrument only functions from files where names match any regular "
-"expression (separated by a semi-colon)."
+"Instrument only functions from files whose name matches any of the regular "
+"expressions (separated by semi-colons)."
 msgstr ""
 
-#: common.opt:2214
+#: common.opt:2237
 #, no-c-format
 msgid ""
-"Instrument only functions from files where names do not match all the "
-"regular expressions (separated by a semi-colon)."
+"Instrument only functions from files whose name does not match any of the "
+"regular expressions (separated by semi-colons)."
 msgstr ""
 
-#: common.opt:2230
+#: common.opt:2253
 #, no-c-format
 msgid ""
 "-fprofile-reproducible=[serial|parallel-runs|multithreaded]\tControl level "
 "of reproducibility of profile gathered by -fprofile-generate."
 msgstr ""
 
-#: common.opt:2246
+#: common.opt:2269
 #, no-c-format
 msgid ""
 "Remove prefix from absolute path before mangling name for -fprofile-"
 "generate= and -fprofile-use=."
 msgstr ""
 
-#: common.opt:2250
+#: common.opt:2273
 #, no-c-format
 msgid ""
 "Enable common options for generating profile info for profile feedback "
 "directed optimizations."
 msgstr ""
 
-#: common.opt:2254
+#: common.opt:2277
 #, no-c-format
 msgid ""
 "Enable common options for generating profile info for profile feedback "
 "directed optimizations, and set -fprofile-dir=."
 msgstr ""
 
-#: common.opt:2258
+#: common.opt:2281
+#, no-c-format
+msgid ""
+"Register the profile information in the .gcov_info section instead of using "
+"a constructor/destructor."
+msgstr ""
+
+#: common.opt:2285
+#, no-c-format
+msgid ""
+"Register the profile information in the specified section instead of using a "
+"constructor/destructor."
+msgstr ""
+
+#: common.opt:2289
 #, no-c-format
 msgid ""
 "Do not assume that functions never executed during the train run are cold."
 msgstr ""
 
-#: common.opt:2262
+#: common.opt:2293
 #, no-c-format
 msgid ""
 "Enable common options for performing profile feedback directed optimizations."
 msgstr ""
 
-#: common.opt:2266
+#: common.opt:2297
 #, no-c-format
 msgid ""
 "Enable common options for performing profile feedback directed "
 "optimizations, and set -fprofile-dir=."
 msgstr ""
 
-#: common.opt:2270
+#: common.opt:2301
 #, no-c-format
 msgid "Insert code to profile values of expressions."
 msgstr ""
 
-#: common.opt:2274
+#: common.opt:2305
 #, no-c-format
 msgid "Report on consistency of profile."
 msgstr ""
 
-#: common.opt:2278
+#: common.opt:2309
 #, no-c-format
 msgid "Enable function reordering that improves code placement."
 msgstr ""
 
-#: common.opt:2282
+#: common.opt:2313
 #, no-c-format
 msgid "Insert NOP instructions at each function entry."
 msgstr ""
 
-#: common.opt:2289
+#: common.opt:2320
 #, no-c-format
 msgid "-frandom-seed=<string>\tMake compile reproducible using <string>."
 msgstr ""
 
-#: common.opt:2299
+#: common.opt:2330
 #, no-c-format
 msgid "Record gcc command line switches in the object file."
 msgstr ""
 
-#: common.opt:2303
+#: common.opt:2334
 #, no-c-format
 msgid "Return small aggregates in registers."
 msgstr ""
 
-#: common.opt:2311
+#: common.opt:2342
 #, 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:2322
+#: common.opt:2353
 #, no-c-format
 msgid ""
 "-flive-patching=[inline-only-static|inline-clone]\tControl IPA optimizations "
@@ -18512,483 +18960,483 @@ msgid ""
 "multiple-level control on the enabled IPA optimizations."
 msgstr ""
 
-#: common.opt:2337
+#: common.opt:2368
 #, no-c-format
 msgid "Tell DCE to remove unused C++ allocations."
 msgstr ""
 
-#: common.opt:2341
+#: common.opt:2372
 #, no-c-format
 msgid "Relief of register pressure through live range shrinkage."
 msgstr ""
 
-#: common.opt:2345
+#: common.opt:2376
 #, no-c-format
 msgid "Perform a register renaming optimization pass."
 msgstr ""
 
-#: common.opt:2349
+#: common.opt:2380
 #, no-c-format
 msgid "Perform a target dependent instruction fusion optimization pass."
 msgstr ""
 
-#: common.opt:2353
+#: common.opt:2384
 #, no-c-format
 msgid "Reorder basic blocks to improve code placement."
 msgstr ""
 
-#: common.opt:2357
+#: common.opt:2388
 #, no-c-format
 msgid ""
 "-freorder-blocks-algorithm=[simple|stc]\tSet the used basic block reordering "
 "algorithm."
 msgstr ""
 
-#: common.opt:2370
+#: common.opt:2401
 #, no-c-format
 msgid "Reorder basic blocks and partition into hot and cold sections."
 msgstr ""
 
-#: common.opt:2374
+#: common.opt:2405
 #, no-c-format
 msgid "Reorder functions to improve code placement."
 msgstr ""
 
-#: common.opt:2378
+#: common.opt:2409
 #, no-c-format
 msgid "Add a common subexpression elimination pass after loop optimizations."
 msgstr ""
 
-#: common.opt:2386
+#: common.opt:2417
 #, no-c-format
 msgid "Disable optimizations that assume default FP rounding behavior."
 msgstr ""
 
-#: common.opt:2390
+#: common.opt:2421
 #, no-c-format
 msgid "Enable scheduling across basic blocks."
 msgstr ""
 
-#: common.opt:2394
+#: common.opt:2425
 #, no-c-format
 msgid "Enable register pressure sensitive insn scheduling."
 msgstr ""
 
-#: common.opt:2398
+#: common.opt:2429
 #, no-c-format
 msgid "Allow speculative motion of non-loads."
 msgstr ""
 
-#: common.opt:2402
+#: common.opt:2433
 #, no-c-format
 msgid "Allow speculative motion of some loads."
 msgstr ""
 
-#: common.opt:2406
+#: common.opt:2437
 #, no-c-format
 msgid "Allow speculative motion of more loads."
 msgstr ""
 
-#: common.opt:2410
+#: common.opt:2441
 #, no-c-format
 msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler."
 msgstr ""
 
-#: common.opt:2414
+#: common.opt:2445
 #, no-c-format
 msgid "If scheduling post reload, do superblock scheduling."
 msgstr ""
 
-#: common.opt:2422
+#: common.opt:2453
 #, no-c-format
 msgid "Reschedule instructions before register allocation."
 msgstr ""
 
-#: common.opt:2426
+#: common.opt:2457
 #, no-c-format
 msgid "Reschedule instructions after register allocation."
 msgstr ""
 
-#: common.opt:2433
+#: common.opt:2464
 #, no-c-format
 msgid "Schedule instructions using selective scheduling algorithm."
 msgstr ""
 
-#: common.opt:2437
+#: common.opt:2468
 #, no-c-format
 msgid "Run selective scheduling after reload."
 msgstr ""
 
-#: common.opt:2441
+#: common.opt:2472
 #, no-c-format
 msgid "Run self-tests, using the given path to locate test files."
 msgstr ""
 
-#: common.opt:2445
+#: common.opt:2476
 #, no-c-format
 msgid "Perform software pipelining of inner loops during selective scheduling."
 msgstr ""
 
-#: common.opt:2449
+#: common.opt:2480
 #, no-c-format
 msgid "Perform software pipelining of outer loops during selective scheduling."
 msgstr ""
 
-#: common.opt:2453
+#: common.opt:2484
 #, no-c-format
 msgid "Reschedule pipelined regions without pipelining."
 msgstr ""
 
-#: common.opt:2457
+#: common.opt:2488
 #, no-c-format
 msgid ""
 "Allow interposing function (or variables) by ones with different semantics "
 "(or initializer) respectively by dynamic linker."
 msgstr ""
 
-#: common.opt:2463
+#: common.opt:2494
 #, no-c-format
 msgid "Allow premature scheduling of queued insns."
 msgstr ""
 
-#: common.opt:2467
+#: common.opt:2498
 #, no-c-format
 msgid ""
 "-fsched-stalled-insns=<number>\tSet number of queued insns that can be "
 "prematurely scheduled."
 msgstr ""
 
-#: common.opt:2475
+#: common.opt:2506
 #, no-c-format
 msgid ""
 "Set dependence distance checking in premature scheduling of queued insns."
 msgstr ""
 
-#: common.opt:2479
+#: common.opt:2510
 #, no-c-format
 msgid ""
 "-fsched-stalled-insns-dep=<number>\tSet dependence distance checking in "
 "premature scheduling of queued insns."
 msgstr ""
 
-#: common.opt:2483
+#: common.opt:2514
 #, no-c-format
 msgid "Enable the group heuristic in the scheduler."
 msgstr ""
 
-#: common.opt:2487
+#: common.opt:2518
 #, no-c-format
 msgid "Enable the critical path heuristic in the scheduler."
 msgstr ""
 
-#: common.opt:2491
+#: common.opt:2522
 #, no-c-format
 msgid "Enable the speculative instruction heuristic in the scheduler."
 msgstr ""
 
-#: common.opt:2495
+#: common.opt:2526
 #, no-c-format
 msgid "Enable the rank heuristic in the scheduler."
 msgstr ""
 
-#: common.opt:2499
+#: common.opt:2530
 #, no-c-format
 msgid "Enable the last instruction heuristic in the scheduler."
 msgstr ""
 
-#: common.opt:2503
+#: common.opt:2534
 #, no-c-format
 msgid "Enable the dependent count heuristic in the scheduler."
 msgstr ""
 
-#: common.opt:2507
+#: common.opt:2538
 #, no-c-format
 msgid "Access data in the same section from shared anchor points."
 msgstr ""
 
-#: common.opt:2519
+#: common.opt:2550
 #, no-c-format
 msgid "Turn on Redundant Extensions Elimination pass."
 msgstr ""
 
-#: common.opt:2523
+#: common.opt:2554
 #, no-c-format
 msgid "Show column numbers in diagnostics, when available.  Default on."
 msgstr ""
 
-#: common.opt:2527
+#: common.opt:2558
 #, 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:2532
+#: common.opt:2563
 #, no-c-format
 msgid "Shrink-wrap parts of the prologue and epilogue separately."
 msgstr ""
 
-#: common.opt:2536
+#: common.opt:2567
 #, no-c-format
 msgid "Disable optimizations observable by IEEE signaling NaNs."
 msgstr ""
 
-#: common.opt:2540
+#: common.opt:2571
 #, no-c-format
 msgid ""
 "Disable floating point optimizations that ignore the IEEE signedness of zero."
 msgstr ""
 
-#: common.opt:2544
+#: common.opt:2575
 #, no-c-format
 msgid "Convert floating point constants to single precision constants."
 msgstr ""
 
-#: common.opt:2548
+#: common.opt:2579
 #, no-c-format
 msgid "Split lifetimes of induction variables when loops are unrolled."
 msgstr ""
 
-#: common.opt:2552
+#: common.opt:2583
 #, no-c-format
 msgid "Generate discontiguous stack frames."
 msgstr ""
 
-#: common.opt:2556
+#: common.opt:2587
 #, no-c-format
 msgid "Split wide types into independent registers."
 msgstr ""
 
-#: common.opt:2560
+#: common.opt:2591
 #, no-c-format
 msgid "Split wide types into independent registers earlier."
 msgstr ""
 
-#: common.opt:2564
+#: common.opt:2595
 #, no-c-format
 msgid "Enable backward propagation of use properties at the SSA level."
 msgstr ""
 
-#: common.opt:2568
+#: common.opt:2599
 #, no-c-format
 msgid "Optimize conditional patterns using SSA PHI nodes."
 msgstr ""
 
-#: common.opt:2572
+#: common.opt:2603
 #, no-c-format
 msgid ""
 "Optimize amount of stdarg registers saved to stack at start of function."
 msgstr ""
 
-#: common.opt:2576
+#: common.opt:2607
 #, no-c-format
 msgid "Apply variable expansion when loops are unrolled."
 msgstr ""
 
-#: common.opt:2580
+#: common.opt:2611
 #, no-c-format
 msgid ""
 "-fstack-check=[no|generic|specific]\tInsert stack checking code into the "
 "program."
 msgstr ""
 
-#: common.opt:2584
+#: common.opt:2615
 #, no-c-format
 msgid ""
 "Insert stack checking code into the program.  Same as -fstack-check=specific."
 msgstr ""
 
-#: common.opt:2588
+#: common.opt:2619
 #, 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:2596
+#: common.opt:2627
 #, no-c-format
 msgid ""
 "-fstack-limit-register=<register>\tTrap if the stack goes past <register>."
 msgstr ""
 
-#: common.opt:2600
+#: common.opt:2631
 #, no-c-format
 msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>."
 msgstr ""
 
-#: common.opt:2604
+#: common.opt:2635
 #, no-c-format
 msgid "Use propolice as a stack protection method."
 msgstr ""
 
-#: common.opt:2608
+#: common.opt:2639
 #, no-c-format
 msgid "Use a stack protection method for every function."
 msgstr ""
 
-#: common.opt:2612
+#: common.opt:2643
 #, no-c-format
 msgid "Use a smart stack protection method for certain functions."
 msgstr ""
 
-#: common.opt:2616
+#: common.opt:2647
 #, no-c-format
 msgid ""
 "Use stack protection method only for functions with the stack_protect "
 "attribute."
 msgstr ""
 
-#: common.opt:2620
+#: common.opt:2651
 #, no-c-format
 msgid "Output stack usage information on a per-function basis."
 msgstr ""
 
-#: common.opt:2632
+#: common.opt:2663
 #, no-c-format
 msgid "Assume strict aliasing rules apply."
 msgstr ""
 
-#: common.opt:2636
+#: common.opt:2667
 #, no-c-format
 msgid ""
 "Treat signed overflow as undefined.  Negated as -fwrapv -fwrapv-pointer."
 msgstr ""
 
-#: common.opt:2640
+#: common.opt:2671
 #, no-c-format
 msgid "Implement __atomic operations via libcalls to legacy __sync functions."
 msgstr ""
 
-#: common.opt:2644
+#: common.opt:2675
 #, no-c-format
 msgid "Check for syntax errors, then stop."
 msgstr ""
 
-#: common.opt:2648
+#: common.opt:2679
 #, no-c-format
 msgid "Create data files needed by \"gcov\"."
 msgstr ""
 
-#: common.opt:2652
+#: common.opt:2683
 #, no-c-format
 msgid "Perform jump threading optimizations."
 msgstr ""
 
-#: common.opt:2656
+#: common.opt:2687
 #, no-c-format
 msgid "Report the time taken by each compiler pass."
 msgstr ""
 
-#: common.opt:2660
+#: common.opt:2691
 #, no-c-format
 msgid "Record times taken by sub-phases separately."
 msgstr ""
 
-#: common.opt:2664
+#: common.opt:2695
 #, 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:2683
+#: common.opt:2714
 #, no-c-format
 msgid "Reorder top level functions, variables, and asms."
 msgstr ""
 
-#: common.opt:2687
+#: common.opt:2718
 #, no-c-format
 msgid "Perform superblock formation via tail duplication."
 msgstr ""
 
-#: common.opt:2691
+#: common.opt:2722
 #, no-c-format
 msgid ""
 "For targets that normally need trampolines for nested functions, always "
 "generate them instead of using descriptors."
 msgstr ""
 
-#: common.opt:2699
+#: common.opt:2730
 #, no-c-format
 msgid "Assume floating-point operations can trap."
 msgstr ""
 
-#: common.opt:2703
+#: common.opt:2734
 #, no-c-format
 msgid "Trap for signed overflow in addition, subtraction and multiplication."
 msgstr ""
 
-#: common.opt:2707
+#: common.opt:2738
 #, no-c-format
 msgid "Enable SSA-CCP optimization on trees."
 msgstr ""
 
-#: common.opt:2711
+#: common.opt:2742
 #, no-c-format
 msgid "Enable SSA-BIT-CCP optimization on trees."
 msgstr ""
 
-#: common.opt:2719
+#: common.opt:2750
 #, no-c-format
 msgid "Enable loop header copying on trees."
 msgstr ""
 
-#: common.opt:2727
+#: common.opt:2758
 #, no-c-format
 msgid "Enable SSA coalescing of user variables."
 msgstr ""
 
-#: common.opt:2735
+#: common.opt:2766
 #, no-c-format
 msgid "Enable copy propagation on trees."
 msgstr ""
 
-#: common.opt:2743
+#: common.opt:2774
 #, no-c-format
 msgid "Transform condition stores into unconditional ones."
 msgstr ""
 
-#: common.opt:2747
+#: common.opt:2778
 #, no-c-format
 msgid "Perform conversions of switch initializations."
 msgstr ""
 
-#: common.opt:2751
+#: common.opt:2782
 #, no-c-format
 msgid "Enable SSA dead code elimination optimization on trees."
 msgstr ""
 
-#: common.opt:2755
+#: common.opt:2786
 #, no-c-format
 msgid "Enable dominator optimizations."
 msgstr ""
 
-#: common.opt:2759
+#: common.opt:2790
 #, no-c-format
 msgid "Enable tail merging on trees."
 msgstr ""
 
-#: common.opt:2763
+#: common.opt:2794
 #, no-c-format
 msgid "Enable dead store elimination."
 msgstr ""
 
-#: common.opt:2767
+#: common.opt:2798
 #, no-c-format
 msgid "Enable forward propagation on trees."
 msgstr ""
 
-#: common.opt:2771
+#: common.opt:2802
 #, no-c-format
 msgid "Enable Full Redundancy Elimination (FRE) on trees."
 msgstr ""
 
-#: common.opt:2775
+#: common.opt:2806
 #, no-c-format
 msgid "Enable string length optimizations on trees."
 msgstr ""
 
-#: common.opt:2779
+#: common.opt:2810
 #, no-c-format
 msgid ""
 "Detect paths that trigger erroneous or undefined behavior due to "
@@ -18996,7 +19444,7 @@ msgid ""
 "flow and turn the statement with erroneous or undefined behavior into a trap."
 msgstr ""
 
-#: common.opt:2785
+#: common.opt:2816
 #, no-c-format
 msgid ""
 "Detect paths that trigger erroneous or undefined behavior due to a null "
@@ -19005,494 +19453,509 @@ msgid ""
 "statement with erroneous or undefined behavior into a trap."
 msgstr ""
 
-#: common.opt:2792
+#: common.opt:2823
 #, no-c-format
 msgid "Enable loop distribution on trees."
 msgstr ""
 
-#: common.opt:2796
+#: common.opt:2827
 #, no-c-format
 msgid "Enable loop distribution for patterns transformed into a library call."
 msgstr ""
 
-#: common.opt:2800
+#: common.opt:2831
 #, no-c-format
 msgid "Enable loop invariant motion on trees."
 msgstr ""
 
-#: common.opt:2808
+#: common.opt:2839
 #, no-c-format
 msgid "Create canonical induction variables in loops."
 msgstr ""
 
-#: common.opt:2812
+#: common.opt:2843
 #, no-c-format
 msgid "Enable loop optimizations on tree level."
 msgstr ""
 
-#: common.opt:2816
+#: common.opt:2847
 #, no-c-format
 msgid ""
 "-ftree-parallelize-loops=<number>\tEnable automatic parallelization of loops."
 msgstr ""
 
-#: common.opt:2820
+#: common.opt:2851
 #, no-c-format
 msgid "Enable hoisting loads from conditional pointers."
 msgstr ""
 
-#: common.opt:2824
+#: common.opt:2855
 #, no-c-format
 msgid "Enable SSA-PRE optimization on trees."
 msgstr ""
 
-#: common.opt:2828
+#: common.opt:2859
 #, no-c-format
 msgid ""
 "In SSA-PRE optimization on trees, enable partial-partial redundancy "
 "elimination."
 msgstr ""
 
-#: common.opt:2832
+#: common.opt:2863
 #, no-c-format
 msgid "Perform function-local points-to analysis on trees."
 msgstr ""
 
-#: common.opt:2836
+#: common.opt:2867
 #, no-c-format
 msgid "Enable reassociation on tree level."
 msgstr ""
 
-#: common.opt:2844
+#: common.opt:2875
 #, no-c-format
 msgid "Enable SSA code sinking on trees."
 msgstr ""
 
-#: common.opt:2848
+#: common.opt:2879
 #, no-c-format
 msgid "Perform straight-line strength reduction."
 msgstr ""
 
-#: common.opt:2852
+#: common.opt:2883
 #, no-c-format
 msgid "Perform scalar replacement of aggregates."
 msgstr ""
 
-#: common.opt:2856
+#: common.opt:2887
 #, no-c-format
 msgid "Replace temporary expressions in the SSA->normal pass."
 msgstr ""
 
-#: common.opt:2860
+#: common.opt:2891
 #, no-c-format
 msgid "Perform live range splitting during the SSA->normal pass."
 msgstr ""
 
-#: common.opt:2864
+#: common.opt:2895
 #, no-c-format
 msgid "Perform Value Range Propagation on trees."
 msgstr ""
 
-#: common.opt:2868
+#: common.opt:2899
 #, no-c-format
 msgid "Split paths leading to loop backedges."
 msgstr ""
 
-#: common.opt:2872
+#: common.opt:2903
 #, no-c-format
 msgid ""
 "Assume common declarations may be overridden with ones with a larger "
 "trailing array."
 msgstr ""
 
-#: common.opt:2877
+#: common.opt:2908
 #, no-c-format
 msgid "Compile whole compilation unit at a time."
 msgstr ""
 
-#: common.opt:2881
+#: common.opt:2912
 #, no-c-format
 msgid "Perform loop unrolling when iteration count is known."
 msgstr ""
 
-#: common.opt:2885
+#: common.opt:2916
 #, no-c-format
 msgid "Perform loop unrolling for all loops."
 msgstr ""
 
-#: common.opt:2900
+#: common.opt:2931
 #, no-c-format
 msgid ""
 "Allow optimization for floating-point arithmetic which may change the result "
 "of the operation due to rounding."
 msgstr ""
 
-#: common.opt:2905
+#: common.opt:2936
 #, no-c-format
 msgid "Same as -fassociative-math for expressions which include division."
 msgstr ""
 
-#: common.opt:2913
+#: common.opt:2944
 #, no-c-format
 msgid "Allow math optimizations that may violate IEEE or ISO standards."
 msgstr ""
 
-#: common.opt:2917
+#: common.opt:2948
 #, no-c-format
 msgid "Perform loop unswitching."
 msgstr ""
 
-#: common.opt:2921
+#: common.opt:2952
 #, no-c-format
 msgid "Perform loop splitting."
 msgstr ""
 
-#: common.opt:2925
+#: common.opt:2956
 #, no-c-format
 msgid "Version loops based on whether indices have a stride of one."
 msgstr ""
 
-#: common.opt:2929
+#: common.opt:2960
 #, no-c-format
 msgid "Just generate unwind tables for exception handling."
 msgstr ""
 
-#: common.opt:2933
+#: common.opt:2964
 #, no-c-format
 msgid "Use the bfd linker instead of the default linker."
 msgstr ""
 
-#: common.opt:2937
+#: common.opt:2968
 #, no-c-format
 msgid "Use the gold linker instead of the default linker."
 msgstr ""
 
-#: common.opt:2941
+#: common.opt:2972
 #, no-c-format
 msgid "Use the lld LLVM linker instead of the default linker."
 msgstr ""
 
-#: common.opt:2953
+#: common.opt:2984
 #, no-c-format
 msgid "Perform variable tracking."
 msgstr ""
 
-#: common.opt:2961
+#: common.opt:2992
 #, no-c-format
 msgid "Perform variable tracking by annotating assignments."
 msgstr ""
 
-#: common.opt:2967
+#: common.opt:2998
 #, no-c-format
 msgid "Toggle -fvar-tracking-assignments."
 msgstr ""
 
-#: common.opt:2975
+#: common.opt:3006
 #, no-c-format
 msgid ""
 "Perform variable tracking and also tag variables that are uninitialized."
 msgstr ""
 
-#: common.opt:2980
+#: common.opt:3011
 #, no-c-format
 msgid "Enable vectorization on trees."
 msgstr ""
 
-#: common.opt:2988
+#: common.opt:3019
 #, no-c-format
 msgid "Enable loop vectorization on trees."
 msgstr ""
 
-#: common.opt:2992
+#: common.opt:3023
 #, no-c-format
 msgid "Enable basic block vectorization (SLP) on trees."
 msgstr ""
 
-#: common.opt:2996
+#: common.opt:3027
 #, no-c-format
 msgid ""
-"-fvect-cost-model=[unlimited|dynamic|cheap]\tSpecifies the cost model for "
-"vectorization."
+"-fvect-cost-model=[unlimited|dynamic|cheap|very-cheap]\tSpecifies the cost "
+"model for vectorization."
 msgstr ""
 
-#: common.opt:3000
+#: common.opt:3031
 #, no-c-format
 msgid ""
-"-fsimd-cost-model=[unlimited|dynamic|cheap]\tSpecifies the vectorization "
-"cost model for code marked with a simd directive."
+"-fsimd-cost-model=[unlimited|dynamic|cheap|very-cheap]\tSpecifies the "
+"vectorization cost model for code marked with a simd directive."
 msgstr ""
 
-#: common.opt:3016
+#: common.opt:3050
 #, no-c-format
 msgid ""
 "Enables the dynamic vectorizer cost model.  Preserved for backward "
 "compatibility."
 msgstr ""
 
-#: common.opt:3024
+#: common.opt:3058
 #, no-c-format
 msgid "Enable copy propagation of scalar-evolution information."
 msgstr ""
 
-#: common.opt:3034
+#: common.opt:3068
 #, no-c-format
 msgid "Add extra commentary to assembler output."
 msgstr ""
 
-#: common.opt:3038
+#: common.opt:3072
 #, no-c-format
 msgid ""
 "-fvisibility=[default|internal|hidden|protected]\tSet the default symbol "
 "visibility."
 msgstr ""
 
-#: common.opt:3057
+#: common.opt:3091
 #, no-c-format
 msgid "Validate vtable pointers before using them."
 msgstr ""
 
-#: common.opt:3073
+#: common.opt:3107
 #, no-c-format
 msgid "Output vtable verification counters."
 msgstr ""
 
-#: common.opt:3077
+#: common.opt:3111
 #, no-c-format
 msgid "Output vtable verification pointer sets information."
 msgstr ""
 
-#: common.opt:3081
+#: common.opt:3115
 #, no-c-format
 msgid "Use expression value profiles in optimizations."
 msgstr ""
 
-#: common.opt:3085
+#: common.opt:3119
 #, no-c-format
 msgid "Construct webs and split unrelated uses of single variable."
 msgstr ""
 
-#: common.opt:3089
+#: common.opt:3123
 #, no-c-format
 msgid "Enable conditional dead code elimination for builtin calls."
 msgstr ""
 
-#: common.opt:3093
+#: common.opt:3127
 #, no-c-format
 msgid "Perform whole program optimizations."
 msgstr ""
 
-#: common.opt:3097
+#: common.opt:3131
 #, no-c-format
 msgid "Assume pointer overflow wraps around."
 msgstr ""
 
-#: common.opt:3101
+#: common.opt:3135
 #, no-c-format
 msgid "Assume signed arithmetic overflow wraps around."
 msgstr ""
 
-#: common.opt:3105
+#: common.opt:3139
 #, no-c-format
 msgid "Put zero initialized data in the bss section."
 msgstr ""
 
-#: common.opt:3109
+#: common.opt:3143
+#, no-c-format
+msgid "Clear call-used registers upon function return."
+msgstr ""
+
+#: common.opt:3147
 #, no-c-format
 msgid "Generate debug information in default format."
 msgstr ""
 
-#: common.opt:3113
+#: common.opt:3151
 #, no-c-format
 msgid "Assume assembler support for (DWARF2+) .loc directives."
 msgstr ""
 
-#: common.opt:3117
+#: common.opt:3155
 #, no-c-format
 msgid "Assume assembler support for view in (DWARF2+) .loc directives."
 msgstr ""
 
-#: common.opt:3137
+#: common.opt:3175
 #, no-c-format
 msgid "Record DW_AT_decl_column and DW_AT_call_column in DWARF."
 msgstr ""
 
-#: common.opt:3141
+#: common.opt:3179
 #, no-c-format
 msgid "Generate debug information in default version of DWARF format."
 msgstr ""
 
-#: common.opt:3145
+#: common.opt:3183
 #, no-c-format
 msgid "Generate debug information in DWARF v2 (or later) format."
 msgstr ""
 
-#: common.opt:3149
+#: common.opt:3187
+#, no-c-format
+msgid "Use 32-bit DWARF format when emitting DWARF debug information."
+msgstr ""
+
+#: common.opt:3191
+#, no-c-format
+msgid "Use 64-bit DWARF format when emitting DWARF debug information."
+msgstr ""
+
+#: common.opt:3195
 #, no-c-format
 msgid "Generate debug information in default extended format."
 msgstr ""
 
-#: common.opt:3153
+#: common.opt:3199
 #, no-c-format
 msgid "Generate extended entry point information for inlined functions."
 msgstr ""
 
-#: common.opt:3157
+#: common.opt:3203
 #, no-c-format
 msgid "Compute locview reset points based on insn length estimates."
 msgstr ""
 
-#: common.opt:3165
+#: common.opt:3211
 #, no-c-format
 msgid "Don't generate DWARF pubnames and pubtypes sections."
 msgstr ""
 
-#: common.opt:3169
+#: common.opt:3215
 #, no-c-format
 msgid "Generate DWARF pubnames and pubtypes sections."
 msgstr ""
 
-#: common.opt:3173
+#: common.opt:3219
 #, no-c-format
 msgid "Generate DWARF pubnames and pubtypes sections with GNU extensions."
 msgstr ""
 
-#: common.opt:3177
+#: common.opt:3223
 #, no-c-format
 msgid "Record gcc command line switches in DWARF DW_AT_producer."
 msgstr ""
 
-#: common.opt:3181
+#: common.opt:3227
 #, no-c-format
 msgid "Generate debug information in separate .dwo files."
 msgstr ""
 
-#: common.opt:3185
+#: common.opt:3231
 #, no-c-format
 msgid "Generate debug information in STABS format."
 msgstr ""
 
-#: common.opt:3189
+#: common.opt:3235
 #, no-c-format
 msgid "Generate debug information in extended STABS format."
 msgstr ""
 
-#: common.opt:3193
+#: common.opt:3239
 #, no-c-format
 msgid "Emit progressive recommended breakpoint locations."
 msgstr ""
 
-#: common.opt:3197
+#: common.opt:3243
 #, no-c-format
 msgid "Don't emit DWARF additions beyond selected version."
 msgstr ""
 
-#: common.opt:3201
+#: common.opt:3247
 #, no-c-format
 msgid ""
 "Add description attributes to some DWARF DIEs that have no name attribute."
 msgstr ""
 
-#: common.opt:3205
+#: common.opt:3251
 #, no-c-format
 msgid "Toggle debug information generation."
 msgstr ""
 
-#: common.opt:3209
+#: common.opt:3255
 #, no-c-format
 msgid "Augment variable location lists with progressive views."
 msgstr ""
 
-#: common.opt:3216
+#: common.opt:3262
 #, no-c-format
 msgid "Generate debug information in VMS format."
 msgstr ""
 
-#: common.opt:3220
+#: common.opt:3266
 #, no-c-format
 msgid "Generate debug information in XCOFF format."
 msgstr ""
 
-#: common.opt:3224
+#: common.opt:3270
 #, no-c-format
 msgid "Generate debug information in extended XCOFF format."
 msgstr ""
 
-#: common.opt:3242
+#: common.opt:3288
 #, no-c-format
 msgid "Generate compressed debug sections."
 msgstr ""
 
-#: common.opt:3246
+#: common.opt:3292
 #, no-c-format
 msgid "-gz=<format>\tGenerate compressed debug sections in format <format>."
 msgstr ""
 
-#: common.opt:3253
+#: common.opt:3299
 #, no-c-format
 msgid "-iplugindir=<dir>\tSet <dir> to be the default plugin directory."
 msgstr ""
 
-#: common.opt:3257
+#: common.opt:3303
 #, no-c-format
 msgid "-imultiarch <dir>\tSet <dir> to be the multiarch include subdirectory."
 msgstr ""
 
-#: common.opt:3282
+#: common.opt:3328
 #, no-c-format
 msgid "-o <file>\tPlace output into <file>."
 msgstr ""
 
-#: common.opt:3286
+#: common.opt:3332
 #, no-c-format
 msgid "Enable function profiling."
 msgstr ""
 
-#: common.opt:3296
+#: common.opt:3342
 #, no-c-format
 msgid "Like -pedantic but issue them as errors."
 msgstr ""
 
-#: common.opt:3336
+#: common.opt:3382
 #, no-c-format
 msgid "Do not display functions compiled or elapsed time."
 msgstr ""
 
-#: common.opt:3368
+#: common.opt:3414
 #, no-c-format
 msgid "Enable verbose output."
 msgstr ""
 
-#: common.opt:3372
+#: common.opt:3418
 #, no-c-format
 msgid "Display the compiler's version."
 msgstr ""
 
-#: common.opt:3376
+#: common.opt:3422
 #, no-c-format
 msgid "Suppress warnings."
 msgstr ""
 
-#: common.opt:3386
+#: common.opt:3432
 #, no-c-format
 msgid "Create a shared library."
 msgstr ""
 
-#: common.opt:3431
+#: common.opt:3480
 #, no-c-format
 msgid "Don't create a dynamically linked position independent executable."
 msgstr ""
 
-#: common.opt:3435
+#: common.opt:3484
 #, no-c-format
 msgid "Create a dynamically linked position independent executable."
 msgstr ""
 
-#: common.opt:3439
+#: common.opt:3488
 #, no-c-format
 msgid "Create a static position independent executable."
 msgstr ""
 
-#: common.opt:3446
+#: common.opt:3495
 #, no-c-format
 msgid "Use caller save register across calls if possible."
 msgstr ""
@@ -19555,29 +20018,60 @@ msgstr ""
 
 #: params.opt:67
 #, no-c-format
-msgid "Average number of iterations of a loop."
+msgid ""
+"Enable hwasan instrumentation of statically sized stack-allocated variables."
 msgstr ""
 
 #: params.opt:71
 #, no-c-format
-msgid "Maximum number of bits for which we avoid creating FMAs."
+msgid "Use random base tag for each frame, as opposed to base always zero."
 msgstr ""
 
 #: params.opt:75
 #, no-c-format
+msgid "Enable hwasan instrumentation of allocas/VLAs."
+msgstr ""
+
+#: params.opt:79
+#, no-c-format
+msgid "Enable hwasan instrumentation of load operations."
+msgstr ""
+
+#: params.opt:83
+#, no-c-format
+msgid "Enable hwasan instrumentation of store operations."
+msgstr ""
+
+#: params.opt:87
+#, no-c-format
+msgid "Enable hwasan instrumentation of builtin functions."
+msgstr ""
+
+#: params.opt:91
+#, no-c-format
+msgid "Average number of iterations of a loop."
+msgstr ""
+
+#: params.opt:95
+#, no-c-format
+msgid "Maximum number of bits for which we avoid creating FMAs."
+msgstr ""
+
+#: params.opt:99
+#, no-c-format
 msgid ""
 "Set the estimated probability in percentage for builtin expect. The default "
 "value is 90% probability."
 msgstr ""
 
-#: params.opt:79
+#: params.opt:103
 #, 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:83
+#: params.opt:107
 #, no-c-format
 msgid ""
 "The smallest number of different values for which it is best to use a jump-"
@@ -19585,130 +20079,137 @@ msgid ""
 "the machine."
 msgstr ""
 
-#: params.opt:87
+#: params.opt:111
 #, no-c-format
 msgid ""
 "Probability that COMDAT function will be shared with different compilation "
 "unit."
 msgstr ""
 
-#: params.opt:91
+#: params.opt:115
 #, no-c-format
 msgid ""
 "Maximum number of namespaces to search for alternatives when name lookup "
 "fails."
 msgstr ""
 
-#: params.opt:95
+#: params.opt:119
 #, no-c-format
 msgid "Maximum number of queries into the alias oracle per store."
 msgstr ""
 
-#: params.opt:99
+#: params.opt:123
 #, no-c-format
 msgid ""
 "Maximum size (in bytes) of objects tracked bytewise by dead store "
 "elimination."
 msgstr ""
 
-#: params.opt:103
+#: params.opt:127
 #, no-c-format
 msgid ""
 "Maximal estimated growth of function body caused by early inlining of single "
 "call."
 msgstr ""
 
-#: params.opt:107
+#: params.opt:131
+#, no-c-format
+msgid ""
+"--param=evrp-mode=[legacy|ranger|legacy-first|ranger-first|ranger-trace|"
+"ranger-debug|trace|debug] Specifies the mode Early VRP should operate in."
+msgstr ""
+
+#: params.opt:162
 #, no-c-format
 msgid ""
 "Maximum number of arguments a PHI may have before the FSM threader will not "
 "try to thread through its block."
 msgstr ""
 
-#: params.opt:111
+#: params.opt:166
 #, no-c-format
 msgid ""
 "Scale factor to apply to the number of blocks in a threading path when "
 "comparing to the number of (scaled) statements."
 msgstr ""
 
-#: params.opt:115
+#: params.opt:170
 #, no-c-format
 msgid ""
 "Scale factor to apply to the number of statements in a threading path when "
 "comparing to the number of (scaled) blocks."
 msgstr ""
 
-#: params.opt:119
+#: params.opt:174
 #, no-c-format
 msgid ""
 "The threshold ratio of critical edges execution count that permit performing "
 "redundancy elimination after reload."
 msgstr ""
 
-#: params.opt:123
+#: params.opt:178
 #, no-c-format
 msgid ""
 "The threshold ratio for performing partial redundancy elimination after "
 "reload."
 msgstr ""
 
-#: params.opt:127
+#: params.opt:182
 #, no-c-format
 msgid ""
 "Scaling factor in calculation of maximum distance an expression can be moved "
 "by GCSE optimizations."
 msgstr ""
 
-#: params.opt:131
+#: params.opt:186
 #, no-c-format
 msgid ""
 "Cost at which GCSE optimizations will not constraint the distance an "
 "expression can travel."
 msgstr ""
 
-#: params.opt:135
+#: params.opt:190
 #, no-c-format
 msgid ""
 "Minimum heap expansion to trigger garbage collection, as a percentage of the "
 "total size of the heap."
 msgstr ""
 
-#: params.opt:139
+#: params.opt:194
 #, no-c-format
 msgid "Minimum heap size before we start collecting garbage, in kilobytes."
 msgstr ""
 
-#: params.opt:143
+#: params.opt:198
 #, 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:147
+#: params.opt:202
 #, no-c-format
 msgid "Whether codegen errors should be ICEs when -fchecking."
 msgstr ""
 
-#: params.opt:151
+#: params.opt:206
 #, no-c-format
 msgid "Maximum number of arrays per SCoP."
 msgstr ""
 
-#: params.opt:155
+#: params.opt:210
 #, no-c-format
 msgid "Maximum number of parameters in a SCoP."
 msgstr ""
 
-#: params.opt:159
+#: params.opt:214
 #, no-c-format
 msgid ""
 "The number of elements for which hash table verification is done for each "
 "searched element."
 msgstr ""
 
-#: params.opt:163
+#: params.opt:218
 #, no-c-format
 msgid ""
 "The denominator n of fraction 1/n of the maximal execution count of a basic "
@@ -19716,7 +20217,7 @@ msgid ""
 "order to be considered hot (used in non-LTO mode)."
 msgstr ""
 
-#: params.opt:167
+#: params.opt:222
 #, no-c-format
 msgid ""
 "The number of most executed permilles of the profiled execution of the "
@@ -19724,7 +20225,7 @@ msgid ""
 "in order to be considered hot (used in LTO mode)."
 msgstr ""
 
-#: params.opt:171
+#: params.opt:226
 #, no-c-format
 msgid ""
 "The denominator n of fraction 1/n of the execution frequency of the entry "
@@ -19732,862 +20233,880 @@ msgid ""
 "have in order to be considered hot."
 msgstr ""
 
-#: params.opt:175
-#, no-c-format
-msgid "Level of hsa debug stores verbosity."
-msgstr ""
-
-#: params.opt:179
+#: params.opt:230
 #, 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:183
+#: params.opt:234
 #, no-c-format
 msgid ""
 "The minimal estimated speedup allowing inliner to ignore inline-insns-single "
 "and inline-insns-auto."
 msgstr ""
 
-#: params.opt:187
+#: params.opt:238
 #, no-c-format
 msgid ""
 "How much can given compilation unit grow because of the inlining (in "
 "percent)."
 msgstr ""
 
-#: params.opt:191
+#: params.opt:242
 #, no-c-format
 msgid "The upper bound for sharing integer constants."
 msgstr ""
 
-#: params.opt:195
+#: params.opt:246
 #, no-c-format
 msgid ""
 "Threshold ipa-cp opportunity evaluation that is still considered beneficial "
 "to clone."
 msgstr ""
 
-#: params.opt:199
+#: params.opt:250
 #, no-c-format
 msgid ""
 "Compile-time bonus IPA-CP assigns to candidates which make loop bounds or "
 "strides known."
 msgstr ""
 
-#: params.opt:203
+#: params.opt:254
 #, no-c-format
 msgid "Maximum depth of recursive cloning for self-recursive function."
 msgstr ""
 
-#: params.opt:207
+#: params.opt:258
 #, no-c-format
 msgid ""
 "Recursive cloning only when the probability of call being executed exceeds "
 "the parameter."
 msgstr ""
 
-#: params.opt:211
+#: params.opt:262
 #, no-c-format
 msgid ""
 "Percentage penalty the recursive functions will receive when they are "
 "evaluated for cloning."
 msgstr ""
 
-#: params.opt:215
+#: params.opt:266
 #, 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:219
+#: params.opt:270
 #, no-c-format
 msgid ""
 "How much can given compilation unit grow because of the interprocedural "
 "constant propagation (in percent)."
 msgstr ""
 
-#: params.opt:223
+#: params.opt:274
+#, no-c-format
+msgid "The size of translation unit that IPA-CP pass considers large."
+msgstr ""
+
+#: params.opt:278
 #, no-c-format
 msgid ""
 "Maximum size of a list of values associated with each parameter for "
 "interprocedural constant propagation."
 msgstr ""
 
-#: params.opt:227
+#: params.opt:282
+#, no-c-format
+msgid ""
+"Maximum number of statements visited during jump function offset discovery."
+msgstr ""
+
+#: params.opt:286
 #, 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:231
+#: params.opt:290
 #, no-c-format
 msgid ""
 "Maximum number of aggregate content items for a parameter in jump functions "
 "and lattices."
 msgstr ""
 
-#: params.opt:235
+#: params.opt:294
 #, no-c-format
 msgid ""
 "Maximum number of operations in a parameter expression that can be handled "
 "by IPA analysis."
 msgstr ""
 
-#: params.opt:239
+#: params.opt:298
+#, no-c-format
+msgid ""
+"Maximum number of different predicates used to track properties of loops in "
+"IPA analysis."
+msgstr ""
+
+#: params.opt:302
 #, no-c-format
 msgid ""
 "Maximal number of boundary endpoints of case ranges of switch statement used "
 "during IPA function summary generation."
 msgstr ""
 
-#: params.opt:243
+#: params.opt:306
 #, 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:247
+#: params.opt:310
 #, no-c-format
 msgid ""
 "Maximum allowed growth of number and total size of new parameters that ipa-"
 "sra replaces a pointer to an aggregate with."
 msgstr ""
 
-#: params.opt:251
+#: params.opt:314
 #, no-c-format
 msgid ""
 "The number of registers in each class kept unused by loop invariant motion."
 msgstr ""
 
-#: params.opt:255
+#: params.opt:318
 #, no-c-format
 msgid "Max size of conflict table in MB."
 msgstr ""
 
-#: params.opt:259
+#: params.opt:322
 #, no-c-format
 msgid "Max loops number for regional RA."
 msgstr ""
 
-#: params.opt:263
+#: params.opt:326
 #, 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:267
+#: params.opt:330
 #, no-c-format
 msgid ""
 "Bound on number of candidates below that all candidates are considered in iv "
 "optimizations."
 msgstr ""
 
-#: params.opt:271
+#: params.opt:334
 #, no-c-format
 msgid "Bound on number of iv uses in loop optimized in iv optimizations."
 msgstr ""
 
-#: params.opt:275
+#: params.opt:338
 #, 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:279
+#: params.opt:342
 #, 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:283
+#: params.opt:346
 #, no-c-format
 msgid "The size of L1 cache line."
 msgstr ""
 
-#: params.opt:287
+#: params.opt:350
 #, no-c-format
 msgid "The size of L1 cache."
 msgstr ""
 
-#: params.opt:291
+#: params.opt:354
 #, no-c-format
 msgid "The size of L2 cache."
 msgstr ""
 
-#: params.opt:295
+#: params.opt:358
 #, no-c-format
 msgid "Maximal growth due to inlining of large function (in percent)."
 msgstr ""
 
-#: params.opt:299
+#: params.opt:362
 #, no-c-format
 msgid "The size of function body to be considered large."
 msgstr ""
 
-#: params.opt:303
+#: params.opt:366
 #, no-c-format
 msgid "The size of stack frame to be considered large."
 msgstr ""
 
-#: params.opt:307
+#: params.opt:370
 #, no-c-format
 msgid "Maximal stack frame growth due to inlining (in percent)."
 msgstr ""
 
-#: params.opt:311
+#: params.opt:374
 #, no-c-format
 msgid "The size of translation unit to be considered large."
 msgstr ""
 
-#: params.opt:315
+#: params.opt:378
+#, no-c-format
+msgid "Maximum number of concurrently open C++ module files when lazy loading."
+msgstr ""
+
+#: params.opt:382
 #, no-c-format
 msgid ""
 "The minimum cost of an expensive expression in the loop invariant motion."
 msgstr ""
 
-#: params.opt:319
+#: params.opt:386
 #, no-c-format
 msgid "True if a non-short-circuit operation is optimal."
 msgstr ""
 
-#: params.opt:323
+#: params.opt:390
 #, no-c-format
 msgid "Size of tiles for loop blocking."
 msgstr ""
 
-#: params.opt:327
+#: params.opt:394
 #, no-c-format
 msgid "The maximum number of stmts in loop nest for loop interchange."
 msgstr ""
 
-#: params.opt:331
+#: params.opt:398
 #, no-c-format
 msgid "The minimum stride ratio for loop interchange to be profitable."
 msgstr ""
 
-#: params.opt:335
+#: params.opt:402
 #, no-c-format
 msgid "Max basic blocks number in loop for loop invariant motion."
 msgstr ""
 
-#: params.opt:339
+#: params.opt:406
 #, no-c-format
 msgid "Maximum number of datarefs in loop for building loop data dependencies."
 msgstr ""
 
-#: params.opt:343
+#: params.opt:410
 #, no-c-format
 msgid ""
 "The maximum number of instructions in an inner loop that is being considered "
 "for versioning."
 msgstr ""
 
-#: params.opt:347
+#: params.opt:414
 #, 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:351
+#: params.opt:418
 #, no-c-format
 msgid ""
 "Minimal fall-through edge probability in percentage used to add BB to "
 "inheritance EBB in LRA."
 msgstr ""
 
-#: params.opt:355
+#: params.opt:422
 #, no-c-format
 msgid ""
 "The max number of reload pseudos which are considered during spilling a non-"
 "reload pseudo."
 msgstr ""
 
-#: params.opt:359
+#: params.opt:426
 #, no-c-format
 msgid "Maximal size of a partition for LTO (in estimated instructions)."
 msgstr ""
 
-#: params.opt:363
+#: params.opt:430
 #, no-c-format
 msgid "maximal number of LTO partitions streamed in parallel."
 msgstr ""
 
-#: params.opt:367
+#: params.opt:434
 #, no-c-format
 msgid "Minimal size of a partition for LTO (in estimated instructions)."
 msgstr ""
 
-#: params.opt:371
+#: params.opt:438
 #, no-c-format
 msgid "Number of partitions the program should be split to."
 msgstr ""
 
-#: params.opt:375
+#: params.opt:442
 #, no-c-format
 msgid ""
 "The maximum number of instructions to consider to unroll in a loop on "
 "average."
 msgstr ""
 
-#: params.opt:379
+#: params.opt:446
 #, no-c-format
 msgid "The maximum number of insns combine tries to combine."
 msgstr ""
 
-#: params.opt:383
+#: params.opt:450
 #, no-c-format
 msgid "The maximum depth of a loop nest we completely peel."
 msgstr ""
 
-#: params.opt:387
+#: params.opt:454
 #, no-c-format
 msgid ""
 "The maximum number of peelings of a single loop that is peeled completely."
 msgstr ""
 
-#: params.opt:391
+#: params.opt:458
 #, no-c-format
 msgid "The maximum number of insns of a completely peeled loop."
 msgstr ""
 
-#: params.opt:395
+#: params.opt:462
 #, no-c-format
 msgid "The maximum number of incoming edges to consider for crossjumping."
 msgstr ""
 
-#: params.opt:399
+#: params.opt:466
 #, no-c-format
 msgid "The maximum instructions CSE process before flushing."
 msgstr ""
 
-#: params.opt:403
+#: params.opt:470
 #, no-c-format
 msgid "The maximum length of path considered in cse."
 msgstr ""
 
-#: params.opt:407
+#: params.opt:474
 #, no-c-format
 msgid "The maximum memory locations recorded by cselib."
 msgstr ""
 
-#: params.opt:411
+#: params.opt:478
 #, no-c-format
 msgid "Max. count of debug markers to expand or inline."
 msgstr ""
 
-#: params.opt:415
+#: params.opt:482
 #, no-c-format
 msgid "The maximum number of instructions to consider to fill a delay slot."
 msgstr ""
 
-#: params.opt:419
+#: params.opt:486
 #, no-c-format
 msgid ""
 "The maximum number of instructions to consider to find accurate live "
 "register information."
 msgstr ""
 
-#: params.opt:423
+#: params.opt:490
 #, no-c-format
 msgid "Maximum number of active local stores in RTL dead store elimination."
 msgstr ""
 
-#: params.opt:427
+#: params.opt:494
 #, no-c-format
 msgid ""
 "The maximum number of nested indirect inlining performed by early inliner."
 msgstr ""
 
-#: params.opt:431
+#: params.opt:498
 #, no-c-format
 msgid ""
 "Maximum number of fields in a structure before pointer analysis treats the "
 "structure as a single variable."
 msgstr ""
 
-#: params.opt:435
+#: params.opt:502
 #, no-c-format
 msgid ""
 "Maximum number of basic blocks on a finite state automaton jump thread path."
 msgstr ""
 
-#: params.opt:439
+#: params.opt:506
 #, no-c-format
 msgid ""
 "Maximum number of instructions to copy when duplicating blocks on a finite "
 "state automaton jump thread path."
 msgstr ""
 
-#: params.opt:443
+#: params.opt:510
 #, no-c-format
 msgid ""
 "Maximum number of new jump thread paths to create for a finite state "
 "automaton."
 msgstr ""
 
-#: params.opt:447
+#: params.opt:514
 #, no-c-format
 msgid "The maximum ratio of insertions to deletions of expressions in GCSE."
 msgstr ""
 
-#: params.opt:451
+#: params.opt:518
 #, no-c-format
-msgid "The maximum amount of memory to be allocated by GCSE."
+msgid "The maximum amount of memory to be allocated by GCSE, in kilobytes."
 msgstr ""
 
-#: params.opt:455
+#: params.opt:522
 #, no-c-format
 msgid ""
 "The maximum number of insns to duplicate when unfactoring computed gotos."
 msgstr ""
 
-#: params.opt:459
+#: params.opt:526
 #, no-c-format
 msgid "The maximum expansion factor when copying basic blocks."
 msgstr ""
 
-#: params.opt:463
+#: params.opt:530
 #, no-c-format
 msgid "Maximum depth of search in the dominator tree for expressions to hoist."
 msgstr ""
 
-#: params.opt:467
+#: params.opt:534
 #, no-c-format
 msgid "The maximum number of instructions when automatically inlining."
 msgstr ""
 
-#: params.opt:471
+#: params.opt:538
 #, no-c-format
 msgid ""
 "The maximum number of instructions inline function can grow to via recursive "
 "inlining."
 msgstr ""
 
-#: params.opt:475
+#: params.opt:542
 #, no-c-format
 msgid ""
 "The maximum number of instructions non-inline function can grow to via "
 "recursive inlining."
 msgstr ""
 
-#: params.opt:479
+#: params.opt:546
 #, no-c-format
 msgid ""
 "The maximum number of instructions in a single function eligible for "
 "inlining."
 msgstr ""
 
-#: params.opt:483
+#: params.opt:550
 #, no-c-format
 msgid "The maximum number of instructions when inlining for size."
 msgstr ""
 
-#: params.opt:487
+#: params.opt:554
 #, no-c-format
 msgid ""
 "The maximum number of instructions when automatically inlining small "
 "functions."
 msgstr ""
 
-#: params.opt:491
+#: params.opt:558
 #, no-c-format
 msgid "The maximum depth of recursive inlining for inline functions."
 msgstr ""
 
-#: params.opt:495
+#: params.opt:562
 #, no-c-format
 msgid "The maximum depth of recursive inlining for non-inline functions."
 msgstr ""
 
-#: params.opt:499
+#: params.opt:566
 #, no-c-format
 msgid "Maximum number of isl operations, 0 means unlimited."
 msgstr ""
 
-#: params.opt:503
+#: params.opt:570
 #, no-c-format
 msgid "Bound on the cost of an expression to compute the number of iterations."
 msgstr ""
 
-#: params.opt:507
+#: params.opt:574
 #, no-c-format
 msgid ""
 "Bound on the number of iterations the brute force # of iterations analysis "
 "algorithm evaluates."
 msgstr ""
 
-#: params.opt:511
+#: params.opt:578
 #, no-c-format
 msgid ""
 "Maximum number of statements allowed in a block that needs to be duplicated "
 "when threading jumps."
 msgstr ""
 
-#: params.opt:515
+#: params.opt:582
 #, no-c-format
 msgid ""
 "The maximum number of RTL nodes that can be recorded as combiner's last "
 "value."
 msgstr ""
 
-#: params.opt:519
+#: params.opt:586
 #, no-c-format
 msgid ""
 "The maximum number of insns in loop header duplicated by the copy loop "
 "headers pass."
 msgstr ""
 
-#: params.opt:523
+#: params.opt:590
 #, no-c-format
 msgid ""
 "The maximum number of backtrack attempts the scheduler should make when "
 "modulo scheduling a loop."
 msgstr ""
 
-#: params.opt:527
+#: params.opt:594
 #, no-c-format
 msgid ""
 "Maximum length of partial antic set when performing tree pre optimization."
 msgstr ""
 
-#: params.opt:531
+#: params.opt:598
 #, no-c-format
 msgid "The maximum number of branches on the path through the peeled sequence."
 msgstr ""
 
-#: params.opt:535
+#: params.opt:602
 #, no-c-format
 msgid "The maximum number of peelings of a single loop."
 msgstr ""
 
-#: params.opt:539
+#: params.opt:606
 #, no-c-format
 msgid "The maximum number of insns of a peeled loop."
 msgstr ""
 
-#: params.opt:543
+#: params.opt:610
 #, no-c-format
 msgid "The maximum length of scheduling's pending operations list."
 msgstr ""
 
-#: params.opt:547 params.opt:591
+#: params.opt:614 params.opt:658
 #, no-c-format
 msgid ""
 "The maximum number of blocks in a region to be considered for interblock "
 "scheduling."
 msgstr ""
 
-#: params.opt:551 params.opt:595
+#: params.opt:618 params.opt:662
 #, no-c-format
 msgid ""
 "The maximum number of insns in a region to be considered for interblock "
 "scheduling."
 msgstr ""
 
-#: params.opt:555
+#: params.opt:622
 #, no-c-format
 msgid ""
 "Maximum depth of sqrt chains to use when synthesizing exponentiation by a "
 "real constant."
 msgstr ""
 
-#: params.opt:559
+#: params.opt:626
 #, no-c-format
 msgid "The maximum number of loop iterations we predict statically."
 msgstr ""
 
-#: params.opt:563
+#: params.opt:630
 #, no-c-format
 msgid ""
 "The maximum number of instructions to search backward when looking for "
 "equivalent reload."
 msgstr ""
 
-#: params.opt:567
+#: params.opt:634
 #, no-c-format
 msgid ""
 "Maximum number of insns in a basic block to consider for RTL if-conversion."
 msgstr ""
 
-#: params.opt:571
+#: params.opt:638
 #, 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:575
+#: params.opt:642
 #, 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:579
+#: params.opt:646
 #, no-c-format
 msgid "The maximum number of iterations through CFG to extend regions."
 msgstr ""
 
-#: params.opt:583
+#: params.opt:650
 #, no-c-format
 msgid ""
 "The maximum conflict delay for an insn to be considered for speculative "
 "motion."
 msgstr ""
 
-#: params.opt:587
+#: params.opt:654
 #, 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:599
+#: params.opt:666
 #, no-c-format
 msgid "Maximum length of candidate scans for straight-line strength reduction."
 msgstr ""
 
-#: params.opt:603
+#: params.opt:670
 #, no-c-format
 msgid "Maximum number of may-defs visited when devirtualizing speculatively."
 msgstr ""
 
-#: params.opt:607
+#: params.opt:674
 #, no-c-format
 msgid ""
 "Maximum recursion depth allowed when querying a property of an SSA name."
 msgstr ""
 
-#: params.opt:611
+#: params.opt:678
 #, no-c-format
 msgid "Maximum number of constant stores to merge in the store merging pass."
 msgstr ""
 
-#: params.opt:615
+#: params.opt:682
 #, no-c-format
 msgid "Maximum number of conditional store pairs that can be sunk."
 msgstr ""
 
-#: params.opt:619
+#: params.opt:686
 #, no-c-format
 msgid "Maximum amount of similar bbs to compare a bb with."
 msgstr ""
 
-#: params.opt:623
+#: params.opt:690
 #, no-c-format
 msgid "Maximum amount of iterations of the pass over a function."
 msgstr ""
 
-#: params.opt:627
+#: params.opt:694
 #, no-c-format
 msgid ""
 "Maximum number of strings for which strlen optimization pass will track "
 "string lengths."
 msgstr ""
 
-#: params.opt:631
+#: params.opt:698
 #, 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:635
+#: params.opt:702
 #, no-c-format
 msgid "The maximum number of unrollings of a single loop."
 msgstr ""
 
-#: params.opt:639
+#: params.opt:706
 #, no-c-format
 msgid "The maximum number of instructions to consider to unroll in a loop."
 msgstr ""
 
-#: params.opt:643
+#: params.opt:710
 #, no-c-format
 msgid "The maximum number of insns of an unswitched loop."
 msgstr ""
 
-#: params.opt:647
+#: params.opt:714
 #, no-c-format
 msgid "The maximum number of unswitchings in a single loop."
 msgstr ""
 
-#: params.opt:651
+#: params.opt:718
 #, 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:655
+#: params.opt:722
 #, no-c-format
 msgid "Max. recursion depth for expanding var tracking expressions."
 msgstr ""
 
-#: params.opt:659
+#: params.opt:726
 #, no-c-format
 msgid "Max. size of loc list for which reverse ops should be added."
 msgstr ""
 
-#: params.opt:663
+#: params.opt:730
 #, no-c-format
 msgid "Max. size of var tracking hash tables."
 msgstr ""
 
-#: params.opt:667
+#: params.opt:734
 #, no-c-format
 msgid "Maximum number of VALUEs handled during a single find_base_term call."
 msgstr ""
 
-#: params.opt:671
+#: params.opt:738
 #, no-c-format
 msgid ""
 "Maximum number of assertions to add along the default edge of a switch "
 "statement during VRP."
 msgstr ""
 
-#: params.opt:675
+#: params.opt:742
 #, no-c-format
 msgid ""
 "The minimum number of matching instructions to consider for crossjumping."
 msgstr ""
 
-#: params.opt:679
+#: params.opt:746
 #, no-c-format
 msgid ""
 "Inline recursively only when the probability of call being executed exceeds "
 "the parameter."
 msgstr ""
 
-#: params.opt:683
+#: params.opt:750
 #, no-c-format
 msgid ""
 "Min. ratio of insns to prefetches to enable prefetching for a loop with an "
 "unknown trip count."
 msgstr ""
 
-#: params.opt:687
+#: params.opt:754
 #, no-c-format
 msgid ""
 "The minimum threshold for probability of semi-invariant condition statement "
 "to trigger loop split."
 msgstr ""
 
-#: params.opt:691
+#: params.opt:758
 #, no-c-format
 msgid "The minimum UID to be used for a nondebug insn."
 msgstr ""
 
-#: params.opt:695
+#: params.opt:762
 #, no-c-format
 msgid ""
 "The minimum size of variables taking part in stack slot sharing when not "
 "optimizing."
 msgstr ""
 
-#: params.opt:699
+#: params.opt:766
 #, no-c-format
 msgid ""
 "The minimum probability of reaching a source block for interblock "
 "speculative scheduling."
 msgstr ""
 
-#: params.opt:703
+#: params.opt:770
 #, no-c-format
 msgid ""
 "If -ftree-vectorize is used, the minimal loop bound of a loop to be "
 "considered for vectorization."
 msgstr ""
 
-#: params.opt:707
+#: params.opt:774
 #, no-c-format
 msgid "Chunk size of omp schedule for loops parallelized by parloops."
 msgstr ""
 
-#: params.opt:711
+#: params.opt:778
 #, no-c-format
 msgid ""
 "Minimum number of iterations per thread of an innermost parallelized loop."
 msgstr ""
 
-#: params.opt:715
+#: params.opt:782
 #, 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:737
+#: params.opt:804
 #, 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:741
+#: params.opt:808
 #, no-c-format
 msgid "Maximal estimated outcome of branch considered predictable."
 msgstr ""
 
-#: params.opt:745
+#: params.opt:812
 #, no-c-format
 msgid ""
 "Whether software prefetch hints should be issued for non-constant strides."
 msgstr ""
 
-#: params.opt:749
+#: params.opt:816
 #, no-c-format
 msgid "The number of insns executed before prefetch is completed."
 msgstr ""
 
-#: params.opt:753
+#: params.opt:820
 #, no-c-format
 msgid "Min. ratio of insns to mem ops to enable prefetching in a loop."
 msgstr ""
 
-#: params.opt:757
+#: params.opt:824
 #, no-c-format
 msgid ""
 "The minimum constant stride beyond which we should use prefetch hints for."
 msgstr ""
 
-#: params.opt:761
+#: params.opt:828
 #, no-c-format
 msgid "Use internal function id in profile lookup."
 msgstr ""
 
-#: params.opt:765
+#: params.opt:832
 #, no-c-format
 msgid "Maximum depth of a loop nest to fully value-number optimistically."
 msgstr ""
 
-#: params.opt:769
+#: params.opt:836
 #, no-c-format
 msgid "Maximum number of disambiguations to perform per memory access."
 msgstr ""
 
-#: params.opt:773
+#: params.opt:840
 #, no-c-format
 msgid ""
 "Bound on the complexity of the expressions in the scalar evolutions analyzer."
 msgstr ""
 
-#: params.opt:777
+#: params.opt:844
 #, no-c-format
 msgid "Bound on size of expressions used in the scalar evolutions analyzer."
 msgstr ""
 
-#: params.opt:781
+#: params.opt:848
 #, no-c-format
 msgid ""
 "Hardware autoprefetcher scheduler model control flag.  Number of lookahead "
@@ -20595,250 +21114,273 @@ msgid ""
 "heuristic.  Disabled by default."
 msgstr ""
 
-#: params.opt:785
+#: params.opt:852
 #, no-c-format
 msgid "Minimal distance between possibly conflicting store and load."
 msgstr ""
 
-#: params.opt:789
+#: params.opt:856
 #, no-c-format
 msgid "Which -fsched-pressure algorithm to apply."
 msgstr ""
 
-#: params.opt:793
+#: params.opt:860
 #, no-c-format
 msgid ""
 "The minimal probability of speculation success (in percents), so that "
 "speculative insn will be scheduled."
 msgstr ""
 
-#: params.opt:797
+#: params.opt:864
 #, no-c-format
 msgid ""
 "The minimum probability an edge must have for the scheduler to save its "
 "state across it."
 msgstr ""
 
-#: params.opt:801
+#: params.opt:868
 #, no-c-format
 msgid ""
 "Maximum number of instructions in the ready list that are considered "
 "eligible for renaming."
 msgstr ""
 
-#: params.opt:805
+#: params.opt:872
 #, no-c-format
 msgid "The maximum size of the lookahead window of selective scheduling."
 msgstr ""
 
-#: params.opt:809
+#: params.opt:876
 #, no-c-format
 msgid "Maximum number of times that an insn could be scheduled."
 msgstr ""
 
-#: params.opt:813
+#: params.opt:880
 #, no-c-format
 msgid "The number of prefetches that can run at the same time."
 msgstr ""
 
-#: params.opt:817
+#: params.opt:884
 #, no-c-format
 msgid ""
 "Target block's relative execution frequency (as a percentage) required to "
 "sink a statement."
 msgstr ""
 
-#: params.opt:821
-#, no-c-format
-msgid ""
-"Maximum number of instructions in basic block to be considered for SLP "
-"vectorization."
-msgstr ""
-
-#: params.opt:825
+#: params.opt:888
 #, no-c-format
 msgid ""
 "The number of cycles the swing modulo scheduler considers when checking "
 "conflicts using DFA."
 msgstr ""
 
-#: params.opt:829
+#: params.opt:892
 #, no-c-format
 msgid ""
 "A threshold on the average loop count considered by the swing modulo "
 "scheduler."
 msgstr ""
 
-#: params.opt:833
+#: params.opt:896
 #, no-c-format
 msgid ""
 "A factor for tuning the upper bound that swing modulo scheduler uses for "
 "scheduling a loop."
 msgstr ""
 
-#: params.opt:837
+#: params.opt:900
 #, no-c-format
 msgid ""
 "The minimum value of stage count that swing modulo scheduler will generate."
 msgstr ""
 
-#: params.opt:841
+#: params.opt:904
 #, 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:845
+#: params.opt:908
 #, 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:849
+#: params.opt:912
 #, 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:853
+#: params.opt:916
 #, no-c-format
 msgid ""
 "The maximum number of SSA_NAME assignments to follow in determining a value."
 msgstr ""
 
-#: params.opt:857
+#: params.opt:920
 #, no-c-format
 msgid ""
 "The lower bound for a buffer to be considered for stack smashing protection."
 msgstr ""
 
-#: params.opt:861
+#: params.opt:924
 #, no-c-format
 msgid "Size of the stack guard expressed as a power of two in bytes."
 msgstr ""
 
-#: params.opt:865
+#: params.opt:928
 #, no-c-format
 msgid ""
 "Interval in which to probe the stack expressed as a power of two in bytes."
 msgstr ""
 
-#: params.opt:869
+#: params.opt:932
 #, no-c-format
 msgid ""
 "Allow the store merging pass to introduce unaligned stores if it is legal to "
 "do so."
 msgstr ""
 
-#: params.opt:873
+#: params.opt:936
 #, no-c-format
 msgid "Maximum size of a single store merging region in bytes."
 msgstr ""
 
-#: params.opt:877
+#: params.opt:940
 #, no-c-format
 msgid ""
 "The maximum ratio between array size and switch branches for a switch "
 "conversion to take place."
 msgstr ""
 
-#: params.opt:881
+#: params.opt:944
+#, no-c-format
+msgid "Maximum number of bases stored in each modref tree."
+msgstr ""
+
+#: params.opt:948
+#, no-c-format
+msgid "Maximum number of references stored in each modref base."
+msgstr ""
+
+#: params.opt:952
+#, no-c-format
+msgid "Maximum number of accesse stored in each modref reference."
+msgstr ""
+
+#: params.opt:956
+#, no-c-format
+msgid "Maximum number of tests performed by modref query."
+msgstr ""
+
+#: params.opt:960
+#, no-c-format
+msgid "Maximum depth of DFS walk used by modref escape analysis."
+msgstr ""
+
+#: params.opt:964
+#, no-c-format
+msgid "Maximum number of escape points tracked by modref per SSA-name."
+msgstr ""
+
+#: params.opt:968
 #, 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:885
+#: params.opt:972
 #, 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:889
+#: params.opt:976
 #, 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:893
+#: params.opt:980
 #, no-c-format
 msgid "Maximal code growth caused by tail duplication (in percent)."
 msgstr ""
 
-#: params.opt:897
+#: params.opt:984
 #, 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:901
+#: params.opt:988
 #, 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:905
+#: params.opt:992
 #, no-c-format
 msgid ""
 "Stop reverse growth if the reverse probability of best edge is less than "
 "this threshold (in percent)."
 msgstr ""
 
-#: params.opt:909
+#: params.opt:996
 #, 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:913
+#: params.opt:1000
 #, no-c-format
 msgid "Emit special instrumentation for accesses to volatiles."
 msgstr ""
 
-#: params.opt:917
+#: params.opt:1004
 #, no-c-format
 msgid ""
 "Emit instrumentation calls to __tsan_func_entry() and __tsan_func_exit()."
 msgstr ""
 
-#: params.opt:921
+#: params.opt:1008
 #, no-c-format
 msgid ""
 "Maximum number of nested calls to search for control dependencies during "
 "uninitialized variable analysis."
 msgstr ""
 
-#: params.opt:925
+#: params.opt:1012
 #, no-c-format
 msgid ""
 "Instruction accounted for function prologue, epilogue and other overhead."
 msgstr ""
 
-#: params.opt:929
+#: params.opt:1016
 #, no-c-format
 msgid "Time accounted for function prologue, epilogue and other overhead."
 msgstr ""
 
-#: params.opt:933
+#: params.opt:1020
 #, no-c-format
 msgid "Instruction accounted for function thunk overhead."
 msgstr ""
 
-#: params.opt:937
+#: params.opt:1024
 #, no-c-format
 msgid "Time accounted for function thunk overhead."
 msgstr ""
 
-#: params.opt:941
+#: params.opt:1028
 #, no-c-format
 msgid ""
 "The denominator n of fraction 1/n of the number of profiled runs of the "
@@ -20846,57 +21388,57 @@ msgid ""
 "order for the basic block to be considered unlikely."
 msgstr ""
 
-#: params.opt:945
+#: params.opt:1032
 #, no-c-format
 msgid "Maximum unroll factor for the unroll-and-jam transformation."
 msgstr ""
 
-#: params.opt:949
+#: params.opt:1036
 #, no-c-format
 msgid ""
 "Minimum percentage of memrefs that must go away for unroll-and-jam to be "
 "considered profitable."
 msgstr ""
 
-#: params.opt:953
+#: params.opt:1040
 #, no-c-format
 msgid ""
 "Use direct poisoning/unpoisoning instructions for variables smaller or equal "
 "to this number."
 msgstr ""
 
-#: params.opt:957
+#: params.opt:1044
 #, no-c-format
 msgid "Whether to use canonical types."
 msgstr ""
 
-#: params.opt:961
+#: params.opt:1048
 #, no-c-format
 msgid "Enable loop epilogue vectorization using smaller vector size."
 msgstr ""
 
-#: params.opt:965
+#: params.opt:1052
 #, no-c-format
 msgid ""
 "Maximum number of loop peels to enhance alignment of data references in a "
 "loop."
 msgstr ""
 
-#: params.opt:969
+#: params.opt:1056
 #, no-c-format
 msgid ""
 "Bound on number of runtime checks inserted by the vectorizer's loop "
 "versioning for alias check."
 msgstr ""
 
-#: params.opt:973
+#: params.opt:1060
 #, no-c-format
 msgid ""
 "Bound on number of runtime checks inserted by the vectorizer's loop "
 "versioning for alignment check."
 msgstr ""
 
-#: params.opt:977
+#: params.opt:1064
 #, no-c-format
 msgid ""
 "Controls how loop vectorizer uses partial vectors.  0 means never, 1 means "
@@ -20904,262 +21446,261 @@ msgid ""
 "The default value is 2."
 msgstr ""
 
-#: go/gofrontend/expressions.cc:116 c-family/c-warn.c:672 cp/cvt.c:1387
-#: cp/cvt.c:1643
+#: go/gofrontend/expressions.cc:183 c-family/c-warn.c:683 cp/cvt.c:1397
 #, gcc-internal-format
 msgid "value computed is not used"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:817
+#: go/gofrontend/expressions.cc:923
 msgid "invalid use of type"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:3511 go/gofrontend/expressions.cc:3527
+#: go/gofrontend/expressions.cc:3612 go/gofrontend/expressions.cc:3628
 msgid "constant refers to itself"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:4568 go/gofrontend/expressions.cc:5067
+#: go/gofrontend/expressions.cc:4675 go/gofrontend/expressions.cc:5174
 msgid "expected pointer"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:5038
+#: go/gofrontend/expressions.cc:5145
 msgid "expected numeric type"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:5043
+#: go/gofrontend/expressions.cc:5150
 msgid "expected boolean type"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:5048 c/c-parser.c:15343 c/c-parser.c:15350
-#: cp/parser.c:36429 cp/parser.c:36436
+#: go/gofrontend/expressions.cc:5155 c/c-parser.c:15381 c/c-parser.c:15388
+#: cp/parser.c:37384 cp/parser.c:37391
 #, gcc-internal-format
 msgid "expected integer"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:6813
+#: go/gofrontend/expressions.cc:6930
 msgid "invalid comparison of nil with nil"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:6819 go/gofrontend/expressions.cc:6837
+#: go/gofrontend/expressions.cc:6936 go/gofrontend/expressions.cc:6954
 msgid "incompatible types in binary expression"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:6857
+#: go/gofrontend/expressions.cc:6974
 msgid "integer division by zero"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:6865
+#: go/gofrontend/expressions.cc:6982
 msgid "shift of non-integer operand"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:6868 go/gofrontend/expressions.cc:6871
-#: go/gofrontend/expressions.cc:6879
+#: go/gofrontend/expressions.cc:6985 go/gofrontend/expressions.cc:6988
+#: go/gofrontend/expressions.cc:6996
 msgid "shift count not integer"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:6884
+#: go/gofrontend/expressions.cc:7001
 msgid "negative shift count"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:7790
+#: go/gofrontend/expressions.cc:7886
 msgid "object is not a method"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:7807
+#: go/gofrontend/expressions.cc:7903
 msgid "method type does not match object type"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:8202
+#: go/gofrontend/expressions.cc:8298
 msgid "invalid use of %<...%> with builtin function"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:8213
+#: go/gofrontend/expressions.cc:8309
 msgid "invalid use of method value as argument of Offsetof"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:8227
+#: go/gofrontend/expressions.cc:8323
 msgid "argument of Offsetof implies indirection of an embedded field"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:8252 go/gofrontend/expressions.cc:8288
-#: go/gofrontend/expressions.cc:8602 go/gofrontend/expressions.cc:9919
-#: go/gofrontend/expressions.cc:10068 go/gofrontend/expressions.cc:10114
-#: go/gofrontend/expressions.cc:10149 go/gofrontend/expressions.cc:10225
-#: go/gofrontend/expressions.cc:12090 go/gofrontend/expressions.cc:12107
-#: go/gofrontend/expressions.cc:12123
+#: go/gofrontend/expressions.cc:8348 go/gofrontend/expressions.cc:8384
+#: go/gofrontend/expressions.cc:8706 go/gofrontend/expressions.cc:10026
+#: go/gofrontend/expressions.cc:10175 go/gofrontend/expressions.cc:10221
+#: go/gofrontend/expressions.cc:10256 go/gofrontend/expressions.cc:10332
+#: go/gofrontend/expressions.cc:12220 go/gofrontend/expressions.cc:12237
+#: go/gofrontend/expressions.cc:12253
 msgid "not enough arguments"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:8254 go/gofrontend/expressions.cc:8290
-#: go/gofrontend/expressions.cc:9924 go/gofrontend/expressions.cc:10051
-#: go/gofrontend/expressions.cc:10073 go/gofrontend/expressions.cc:10154
-#: go/gofrontend/expressions.cc:10227 go/gofrontend/expressions.cc:11038
-#: go/gofrontend/expressions.cc:12095 go/gofrontend/expressions.cc:12109
-#: go/gofrontend/expressions.cc:12130 cp/pt.c:8960
+#: go/gofrontend/expressions.cc:8350 go/gofrontend/expressions.cc:8386
+#: go/gofrontend/expressions.cc:10031 go/gofrontend/expressions.cc:10158
+#: go/gofrontend/expressions.cc:10180 go/gofrontend/expressions.cc:10261
+#: go/gofrontend/expressions.cc:10334 go/gofrontend/expressions.cc:11145
+#: go/gofrontend/expressions.cc:12225 go/gofrontend/expressions.cc:12239
+#: go/gofrontend/expressions.cc:12260 cp/pt.c:9041
 #, gcc-internal-format
 msgid "too many arguments"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:8292
+#: go/gofrontend/expressions.cc:8388
 msgid "argument 1 must be a map"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:8632
+#: go/gofrontend/expressions.cc:8736
 msgid "invalid type for make function"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:8645
+#: go/gofrontend/expressions.cc:8749
 msgid "length required when allocating a slice"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:8689
+#: go/gofrontend/expressions.cc:8793
 msgid "len larger than cap"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:8698
+#: go/gofrontend/expressions.cc:8802
 msgid "too many arguments to make"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:9968
+#: go/gofrontend/expressions.cc:10075
 msgid "argument must be array or slice or channel"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:9978
+#: go/gofrontend/expressions.cc:10085
 msgid "argument must be string or array or slice or map or channel"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:10024
+#: go/gofrontend/expressions.cc:10131
 msgid "unsupported argument type to builtin function"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:10035
+#: go/gofrontend/expressions.cc:10142
 msgid "argument must be channel"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:10037
+#: go/gofrontend/expressions.cc:10144
 msgid "cannot close receive-only channel"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:10059
+#: go/gofrontend/expressions.cc:10166
 msgid "argument must be a field reference"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:10089
+#: go/gofrontend/expressions.cc:10196
 msgid "left argument must be a slice"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:10097
+#: go/gofrontend/expressions.cc:10204
 msgid "element types must be the same"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:10102
+#: go/gofrontend/expressions.cc:10209
 msgid "first argument must be []byte"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:10105
+#: go/gofrontend/expressions.cc:10212
 msgid "second argument must be slice or string"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:10217
+#: go/gofrontend/expressions.cc:10324
 msgid "argument must have complex type"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:10236
+#: go/gofrontend/expressions.cc:10343
 msgid "complex arguments must have identical types"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:10238
+#: go/gofrontend/expressions.cc:10345
 msgid "complex arguments must have floating-point type"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:10819 go/gofrontend/expressions.cc:12036
-#: go/gofrontend/expressions.cc:12472
+#: go/gofrontend/expressions.cc:10926 go/gofrontend/expressions.cc:12166
+#: go/gofrontend/expressions.cc:12602
 msgid "expected function"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:10847
+#: go/gofrontend/expressions.cc:10954
 msgid "multiple-value argument in single-value context"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:11042
+#: go/gofrontend/expressions.cc:11149
 msgid "invalid use of %<...%> with non-slice"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:12044
+#: go/gofrontend/expressions.cc:12174
 msgid "function result count mismatch"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:12062
+#: go/gofrontend/expressions.cc:12192
 msgid "incompatible type for receiver"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:12080
+#: go/gofrontend/expressions.cc:12210
 msgid "invalid use of %<...%> calling non-variadic function"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:12481 go/gofrontend/expressions.cc:12495
+#: go/gofrontend/expressions.cc:12611 go/gofrontend/expressions.cc:12625
 msgid "number of results does not match number of values"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:12800 go/gofrontend/expressions.cc:13479
+#: go/gofrontend/expressions.cc:12917 go/gofrontend/expressions.cc:13589
 msgid "index must be integer"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:12809 go/gofrontend/expressions.cc:13488
+#: go/gofrontend/expressions.cc:12926 go/gofrontend/expressions.cc:13598
 msgid "slice end must be integer"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:12818
+#: go/gofrontend/expressions.cc:12935
 msgid "slice capacity must be integer"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:12868 go/gofrontend/expressions.cc:13522
+#: go/gofrontend/expressions.cc:12985 go/gofrontend/expressions.cc:13632
 msgid "inverted slice range"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:12911
+#: go/gofrontend/expressions.cc:13028
 msgid "slice of unaddressable value"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:13778
+#: go/gofrontend/expressions.cc:13888
 msgid "incompatible type for map index"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:14216
+#: go/gofrontend/expressions.cc:14326
 msgid "expected interface or pointer to interface"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:14968
+#: go/gofrontend/expressions.cc:15088
 msgid "too many expressions for struct"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:14981
+#: go/gofrontend/expressions.cc:15101
 msgid "too few expressions for struct"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:16938 go/gofrontend/statements.cc:1909
+#: go/gofrontend/expressions.cc:17095 go/gofrontend/statements.cc:1909
 msgid "type assertion only valid for interface types"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:16950
+#: go/gofrontend/expressions.cc:17107
 msgid "impossible type assertion: type does not implement interface"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:17146 go/gofrontend/expressions.cc:17166
+#: go/gofrontend/expressions.cc:17303 go/gofrontend/expressions.cc:17323
 #: go/gofrontend/statements.cc:1756
 msgid "expected channel"
 msgstr ""
 
-#: go/gofrontend/expressions.cc:17171 go/gofrontend/statements.cc:1761
+#: go/gofrontend/expressions.cc:17328 go/gofrontend/statements.cc:1761
 msgid "invalid receive on send-only channel"
 msgstr ""
 
-#: go/gofrontend/parse.cc:3114
+#: go/gofrontend/parse.cc:3180
 msgid ""
 "parentheses required around this composite literal to avoid parsing ambiguity"
 msgstr ""
 
-#: go/gofrontend/parse.cc:4688
+#: go/gofrontend/parse.cc:4754
 msgid "cannot fallthrough final case in switch"
 msgstr ""
 
@@ -21175,227 +21716,226 @@ msgstr ""
 msgid "expected map index on right hand side"
 msgstr ""
 
-#: go/gofrontend/statements.cc:3145 go/gofrontend/statements.cc:3175
+#: go/gofrontend/statements.cc:3169 go/gofrontend/statements.cc:3199
 msgid "not enough arguments to return"
 msgstr ""
 
-#: go/gofrontend/statements.cc:3153
+#: go/gofrontend/statements.cc:3177
 msgid "return with value in function with no return type"
 msgstr ""
 
-#: go/gofrontend/statements.cc:3181
+#: go/gofrontend/statements.cc:3205
 msgid "too many values in return statement"
 msgstr ""
 
-#: go/gofrontend/statements.cc:3734
+#: go/gofrontend/statements.cc:3758
 msgid "expected boolean expression"
 msgstr ""
 
-#: go/gofrontend/statements.cc:4922
+#: go/gofrontend/statements.cc:4955
 msgid "cannot type switch on non-interface value"
 msgstr ""
 
-#: go/gofrontend/statements.cc:5057
+#: go/gofrontend/statements.cc:5090
 msgid "incompatible types in send"
 msgstr ""
 
-#: go/gofrontend/statements.cc:5062
+#: go/gofrontend/statements.cc:5095
 msgid "invalid send on receive-only channel"
 msgstr ""
 
-#: go/gofrontend/statements.cc:6324
+#: go/gofrontend/statements.cc:6410
 msgid "too many variables for range clause with channel"
 msgstr ""
 
-#: go/gofrontend/statements.cc:6331
+#: go/gofrontend/statements.cc:6417
 msgid "range clause must have array, slice, string, map, or channel type"
 msgstr ""
 
-#: go/gofrontend/types.cc:533
+#: go/gofrontend/types.cc:542
 msgid "invalid comparison of non-ordered type"
 msgstr ""
 
-#: go/gofrontend/types.cc:549
+#: go/gofrontend/types.cc:558
 msgid "slice can only be compared to nil"
 msgstr ""
 
-#: go/gofrontend/types.cc:551
+#: go/gofrontend/types.cc:560
 msgid "map can only be compared to nil"
 msgstr ""
 
-#: go/gofrontend/types.cc:553
+#: go/gofrontend/types.cc:562
 msgid "func can only be compared to nil"
 msgstr ""
 
-#: go/gofrontend/types.cc:559
+#: go/gofrontend/types.cc:568
 #, c-format
 msgid "invalid operation (%s)"
 msgstr ""
 
-#: go/gofrontend/types.cc:582
+#: go/gofrontend/types.cc:591
 msgid "invalid comparison of non-comparable type"
 msgstr ""
 
-#: go/gofrontend/types.cc:595
+#: go/gofrontend/types.cc:604
 msgid "invalid comparison of generated struct"
 msgstr ""
 
-#: go/gofrontend/types.cc:606
+#: go/gofrontend/types.cc:615
 msgid "invalid comparison of non-comparable struct"
 msgstr ""
 
-#: go/gofrontend/types.cc:616
+#: go/gofrontend/types.cc:625
 msgid "invalid comparison of generated array"
 msgstr ""
 
-#: go/gofrontend/types.cc:623
+#: go/gofrontend/types.cc:632
 msgid "invalid comparison of non-comparable array"
 msgstr ""
 
-#: go/gofrontend/types.cc:651
+#: go/gofrontend/types.cc:660
 msgid "multiple-value function call in single-value context"
 msgstr ""
 
-#: go/gofrontend/types.cc:735
+#: go/gofrontend/types.cc:744
 msgid "need explicit conversion"
 msgstr ""
 
-#: go/gofrontend/types.cc:743
+#: go/gofrontend/types.cc:752
 #, c-format
 msgid "cannot use type %s as type %s"
 msgstr ""
 
-#: go/gofrontend/types.cc:779
+#: go/gofrontend/types.cc:788
 msgid "conversion from normal type to notinheap type"
 msgstr ""
 
-#: go/gofrontend/types.cc:4694
+#: go/gofrontend/types.cc:4735
 msgid "different receiver types"
 msgstr ""
 
-#: go/gofrontend/types.cc:4717 go/gofrontend/types.cc:4730
-#: go/gofrontend/types.cc:4744
+#: go/gofrontend/types.cc:4758 go/gofrontend/types.cc:4771
+#: go/gofrontend/types.cc:4785
 msgid "different number of parameters"
 msgstr ""
 
-#: go/gofrontend/types.cc:4737
+#: go/gofrontend/types.cc:4778
 msgid "different parameter types"
 msgstr ""
 
-#: go/gofrontend/types.cc:4752
+#: go/gofrontend/types.cc:4793
 msgid "different varargs"
 msgstr ""
 
-#: go/gofrontend/types.cc:4765 go/gofrontend/types.cc:4778
-#: go/gofrontend/types.cc:4792
+#: go/gofrontend/types.cc:4806 go/gofrontend/types.cc:4819
+#: go/gofrontend/types.cc:4833
 msgid "different number of results"
 msgstr ""
 
-#: go/gofrontend/types.cc:4785
+#: go/gofrontend/types.cc:4826
 msgid "different result types"
 msgstr ""
 
-#: go/gofrontend/types.cc:9140
+#: go/gofrontend/types.cc:9233
 #, c-format
 msgid "need explicit conversion; missing method %s%s%s"
 msgstr ""
 
-#: go/gofrontend/types.cc:9158 go/gofrontend/types.cc:9303
+#: go/gofrontend/types.cc:9251 go/gofrontend/types.cc:9396
 #, c-format
 msgid "incompatible type for method %s%s%s"
 msgstr ""
 
-#: go/gofrontend/types.cc:9162 go/gofrontend/types.cc:9307
+#: go/gofrontend/types.cc:9255 go/gofrontend/types.cc:9400
 #, c-format
 msgid "incompatible type for method %s%s%s (%s)"
 msgstr ""
 
-#: go/gofrontend/types.cc:9243 go/gofrontend/types.cc:9256
+#: go/gofrontend/types.cc:9336 go/gofrontend/types.cc:9349
 msgid "pointer to interface type has no methods"
 msgstr ""
 
-#: go/gofrontend/types.cc:9245 go/gofrontend/types.cc:9258
+#: go/gofrontend/types.cc:9338 go/gofrontend/types.cc:9351
 msgid "type has no methods"
 msgstr ""
 
-#: go/gofrontend/types.cc:9279
+#: go/gofrontend/types.cc:9372
 #, c-format
 msgid "ambiguous method %s%s%s"
 msgstr ""
 
-#: go/gofrontend/types.cc:9282
+#: go/gofrontend/types.cc:9375
 #, c-format
 msgid "missing method %s%s%s"
 msgstr ""
 
-#: go/gofrontend/types.cc:9324
+#: go/gofrontend/types.cc:9417
 #, c-format
 msgid "method %s%s%s requires a pointer receiver"
 msgstr ""
 
-#: go/gofrontend/types.cc:9342
+#: go/gofrontend/types.cc:9435
 #, c-format
 msgid "method %s%s%s is marked go:nointerface"
 msgstr ""
 
-#: attribs.c:440
+#: attribs.c:443
 #, gcc-internal-format
 msgid ""
 "ignoring attribute %qE in declaration of a built-in function %qD because it "
 "conflicts with attribute %qs"
 msgstr ""
 
-#: attribs.c:446
+#: attribs.c:449
 #, gcc-internal-format
 msgid "ignoring attribute %qE because it conflicts with attribute %qs"
 msgstr ""
 
-#: attribs.c:452 c-family/c-attribs.c:2080 c-family/c-attribs.c:2497
-#: c-family/c-attribs.c:3891 c-family/c-attribs.c:3905
-#: c-family/c-attribs.c:3919 c-family/c-attribs.c:3934 cp/decl.c:14905
-#: cp/friend.c:303 cp/tree.c:4799
+#: attribs.c:455 c-family/c-attribs.c:883 c-family/c-attribs.c:2315
+#: c-family/c-attribs.c:2780 c-family/c-attribs.c:4481
+#: c-family/c-attribs.c:4574 cp/decl.c:15092 cp/friend.c:303 cp/tree.c:4935
 #, gcc-internal-format
 msgid "previous declaration here"
 msgstr ""
 
 #. Warn about and ignore all others for now, but store them.
-#: attribs.c:567 c-family/c-attribs.c:3243 objc/objc-act.c:4978
-#: objc/objc-act.c:6948 objc/objc-act.c:8137 objc/objc-act.c:8188
+#: attribs.c:570 c-family/c-attribs.c:3792 objc/objc-act.c:5128
+#: objc/objc-act.c:7108 objc/objc-act.c:8297 objc/objc-act.c:8348
 #, gcc-internal-format
 msgid "%qE attribute directive ignored"
 msgstr ""
 
-#: attribs.c:571
+#: attribs.c:574
 #, gcc-internal-format
 msgid "%<%E::%E%> scoped attribute directive ignored"
 msgstr ""
 
-#: attribs.c:583
+#: attribs.c:586
 #, gcc-internal-format
 msgid "wrong number of arguments specified for %qE attribute"
 msgstr ""
 
-#: attribs.c:586
+#: attribs.c:589
 #, gcc-internal-format, gfc-internal-format
 msgid "expected %i or more, found %i"
 msgstr ""
 
-#: attribs.c:589
+#: attribs.c:592
 #, gcc-internal-format, gfc-internal-format
 msgid "expected between %i and %i, found %i"
 msgstr ""
 
-#: attribs.c:609 c-family/c-attribs.c:3798
+#: attribs.c:612 c-family/c-attribs.c:4347
 #, gcc-internal-format
 msgid "%qE attribute does not apply to types"
 msgstr ""
 
-#: attribs.c:658
+#: attribs.c:661
 #, gcc-internal-format
 msgid "%qE attribute only applies to function types"
 msgstr ""
 
-#: attribs.c:668
+#: attribs.c:671
 #, gcc-internal-format
 msgid "type attributes ignored after type is already defined"
 msgstr ""
@@ -21406,115 +21946,116 @@ msgstr ""
 #. constraint violation.
 #. An attribute with standard syntax and no namespace specified
 #. is a constraint violation if it is not one of the known
-#. standard attributes (of which nodiscard is the only one
-#. without a handler in GCC).  Diagnose it here with a pedwarn
-#. and then discard it to prevent a duplicate warning later.
-#: attribs.c:720 attribs.c:1628 attribs.c:1638 attribs.c:1648
-#: c-family/c-attribs.c:761 c-family/c-attribs.c:780 c-family/c-attribs.c:798
-#: c-family/c-attribs.c:828 c-family/c-attribs.c:849 c-family/c-attribs.c:870
-#: c-family/c-attribs.c:911 c-family/c-attribs.c:942 c-family/c-attribs.c:958
-#: c-family/c-attribs.c:975 c-family/c-attribs.c:991 c-family/c-attribs.c:1017
-#: c-family/c-attribs.c:1032 c-family/c-attribs.c:1060
-#: c-family/c-attribs.c:1077 c-family/c-attribs.c:1095
-#: c-family/c-attribs.c:1119 c-family/c-attribs.c:1157
-#: c-family/c-attribs.c:1180 c-family/c-attribs.c:1197
-#: c-family/c-attribs.c:1226 c-family/c-attribs.c:1247
-#: c-family/c-attribs.c:1268 c-family/c-attribs.c:1295
-#: c-family/c-attribs.c:1325 c-family/c-attribs.c:1362
-#: c-family/c-attribs.c:1415 c-family/c-attribs.c:1481
-#: c-family/c-attribs.c:1539 c-family/c-attribs.c:1628
-#: c-family/c-attribs.c:1658 c-family/c-attribs.c:1709
-#: c-family/c-attribs.c:2199 c-family/c-attribs.c:2350
-#: c-family/c-attribs.c:2411 c-family/c-attribs.c:2650
-#: c-family/c-attribs.c:2730 c-family/c-attribs.c:2882
-#: c-family/c-attribs.c:2901 c-family/c-attribs.c:3066
-#: c-family/c-attribs.c:3132 c-family/c-attribs.c:3159
-#: c-family/c-attribs.c:3214 c-family/c-attribs.c:3396
-#: c-family/c-attribs.c:3417 c-family/c-attribs.c:3530
-#: c-family/c-attribs.c:3800 c-family/c-attribs.c:4226
-#: c-family/c-attribs.c:4249 c-family/c-attribs.c:4288
-#: c-family/c-attribs.c:4370 c-family/c-attribs.c:4426
-#: c-family/c-attribs.c:4442 c-family/c-attribs.c:4548 c-family/c-common.c:5749
-#: c-family/c-common.c:5752 config/darwin.c:2062 config/arm/arm.c:7279
-#: config/arm/arm.c:7307 config/arm/arm.c:7324 config/avr/avr.c:9675
-#: config/csky/csky.c:6046 config/csky/csky.c:6068 config/h8300/h8300.c:4881
-#: config/h8300/h8300.c:4905 config/i386/i386-options.c:3336
-#: config/i386/i386-options.c:3494 config/i386/i386-options.c:3726
-#: config/ia64/ia64.c:785 config/rs6000/rs6000.c:19633
-#: ada/gcc-interface/utils.c:6529 ada/gcc-interface/utils.c:6557
-#: ada/gcc-interface/utils.c:6574 ada/gcc-interface/utils.c:6591
-#: ada/gcc-interface/utils.c:6606 ada/gcc-interface/utils.c:6622
-#: ada/gcc-interface/utils.c:6648 ada/gcc-interface/utils.c:6717
-#: ada/gcc-interface/utils.c:6744 ada/gcc-interface/utils.c:6765
-#: ada/gcc-interface/utils.c:6786 ada/gcc-interface/utils.c:6802
-#: ada/gcc-interface/utils.c:6857 brig/brig-lang.c:484 c/c-decl.c:4580
-#: c/c-decl.c:4583 c/c-decl.c:4598 c/c-parser.c:4960 jit/dummy-frontend.c:185
-#: lto/lto-lang.c:288
+#. standard attributes.  Diagnose it here with a pedwarn and
+#. then discard it to prevent a duplicate warning later.
+#: attribs.c:729 attribs.c:1637 attribs.c:1647 attribs.c:1657
+#: c-family/c-attribs.c:911 c-family/c-attribs.c:973 c-family/c-attribs.c:992
+#: c-family/c-attribs.c:1010 c-family/c-attribs.c:1040
+#: c-family/c-attribs.c:1061 c-family/c-attribs.c:1082
+#: c-family/c-attribs.c:1123 c-family/c-attribs.c:1154
+#: c-family/c-attribs.c:1170 c-family/c-attribs.c:1187
+#: c-family/c-attribs.c:1203 c-family/c-attribs.c:1229
+#: c-family/c-attribs.c:1245 c-family/c-attribs.c:1260
+#: c-family/c-attribs.c:1288 c-family/c-attribs.c:1305
+#: c-family/c-attribs.c:1323 c-family/c-attribs.c:1347
+#: c-family/c-attribs.c:1385 c-family/c-attribs.c:1408
+#: c-family/c-attribs.c:1425 c-family/c-attribs.c:1454
+#: c-family/c-attribs.c:1475 c-family/c-attribs.c:1496
+#: c-family/c-attribs.c:1523 c-family/c-attribs.c:1553
+#: c-family/c-attribs.c:1590 c-family/c-attribs.c:1643
+#: c-family/c-attribs.c:1709 c-family/c-attribs.c:1767
+#: c-family/c-attribs.c:1856 c-family/c-attribs.c:1886
+#: c-family/c-attribs.c:1937 c-family/c-attribs.c:2434
+#: c-family/c-attribs.c:2633 c-family/c-attribs.c:2694
+#: c-family/c-attribs.c:2935 c-family/c-attribs.c:3015
+#: c-family/c-attribs.c:3167 c-family/c-attribs.c:3615
+#: c-family/c-attribs.c:3681 c-family/c-attribs.c:3708
+#: c-family/c-attribs.c:3763 c-family/c-attribs.c:3945
+#: c-family/c-attribs.c:3966 c-family/c-attribs.c:4079
+#: c-family/c-attribs.c:4349 c-family/c-attribs.c:5077
+#: c-family/c-attribs.c:5100 c-family/c-attribs.c:5139
+#: c-family/c-attribs.c:5221 c-family/c-attribs.c:5277
+#: c-family/c-attribs.c:5293 c-family/c-attribs.c:5447 c-family/c-common.c:5808
+#: c-family/c-common.c:5811 config/darwin.c:2131 config/arm/arm.c:7245
+#: config/arm/arm.c:7273 config/arm/arm.c:7290 config/avr/avr.c:9675
+#: config/csky/csky.c:6108 config/csky/csky.c:6130 config/h8300/h8300.c:4918
+#: config/h8300/h8300.c:4942 config/i386/i386-options.c:3466
+#: config/i386/i386-options.c:3624 config/i386/i386-options.c:3856
+#: config/ia64/ia64.c:785 config/rs6000/rs6000.c:20212
+#: ada/gcc-interface/utils.c:6576 ada/gcc-interface/utils.c:6592
+#: ada/gcc-interface/utils.c:6621 ada/gcc-interface/utils.c:6638
+#: ada/gcc-interface/utils.c:6655 ada/gcc-interface/utils.c:6670
+#: ada/gcc-interface/utils.c:6686 ada/gcc-interface/utils.c:6712
+#: ada/gcc-interface/utils.c:6781 ada/gcc-interface/utils.c:6808
+#: ada/gcc-interface/utils.c:6829 ada/gcc-interface/utils.c:6850
+#: ada/gcc-interface/utils.c:6866 ada/gcc-interface/utils.c:6921
+#: brig/brig-lang.c:484 c/c-decl.c:4621 c/c-decl.c:4624 c/c-decl.c:4639
+#: c/c-parser.c:4961 jit/dummy-frontend.c:185 lto/lto-lang.c:288
 #, gcc-internal-format
 msgid "%qE attribute ignored"
 msgstr ""
 
-#: attribs.c:995
+#: attribs.c:1004
 #, gcc-internal-format
 msgid "missing %<target%> attribute for multi-versioned %qD"
 msgstr ""
 
-#: attribs.c:998 cp/decl.c:1165 cp/decl.c:2034 cp/decl.c:2080 cp/decl.c:2097
-#: cp/decl.c:2700 cp/decl.c:3129
+#: attribs.c:1007 cp/decl.c:1179 cp/decl.c:2084 cp/decl.c:2130 cp/decl.c:2147
+#: cp/decl.c:2760 cp/decl.c:3215
 #, gcc-internal-format
 msgid "previous declaration of %qD"
 msgstr ""
 
-#: attribs.c:1141
+#: attribs.c:1150
 #, gcc-internal-format
 msgid "ignoring attributes applied to %qT after definition"
 msgstr ""
 
-#: attribs.c:1559
+#: attribs.c:1568
 #, gcc-internal-format
 msgid "%q+D already declared with dllexport attribute: dllimport ignored"
 msgstr ""
 
-#: attribs.c:1571
+#: attribs.c:1580
 #, gcc-internal-format
 msgid ""
 "%q+D redeclared without dllimport attribute after being referenced with dll "
 "linkage"
 msgstr ""
 
-#: attribs.c:1585
+#: attribs.c:1594
 #, gcc-internal-format
 msgid "%q+D redeclared without dllimport attribute: previous dllimport ignored"
 msgstr ""
 
-#: attribs.c:1666
+#: attribs.c:1675
 #, gcc-internal-format
 msgid "inline function %q+D declared as dllimport: attribute ignored"
 msgstr ""
 
-#: attribs.c:1674
+#: attribs.c:1683
 #, gcc-internal-format
 msgid "function %q+D definition is marked dllimport"
 msgstr ""
 
-#: attribs.c:1682
+#: attribs.c:1691
 #, gcc-internal-format
 msgid "variable %q+D definition is marked dllimport"
 msgstr ""
 
-#: attribs.c:1713
+#: attribs.c:1722
 #, gcc-internal-format
 msgid "external linkage required for symbol %q+D because of %qE attribute"
 msgstr ""
 
-#: attribs.c:1727
+#: attribs.c:1736
 #, gcc-internal-format
 msgid ""
 "%qE implies default visibility, but %qD has already been declared with a "
 "different visibility"
 msgstr ""
 
-#: attribs.c:1990
+#: attribs.c:1999
 #, gcc-internal-format
 msgid "%qD specifies more restrictive attribute than its target %qD: %s"
 msgid_plural ""
@@ -21522,12 +22063,12 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: attribs.c:1996 attribs.c:2016
+#: attribs.c:2005 attribs.c:2025
 #, gcc-internal-format
 msgid "%qD target declared here"
 msgstr ""
 
-#: attribs.c:2010
+#: attribs.c:2019
 #, gcc-internal-format
 msgid "%qD specifies less restrictive attribute than its target %qD: %s"
 msgid_plural ""
@@ -21570,740 +22111,1098 @@ msgstr ""
 msgid "cannot read function profile from %s"
 msgstr ""
 
-#: builtins.c:559
+#: builtins.c:1128
+#, gcc-internal-format
+msgid "%K%qD specified bound %s exceeds maximum object size %E"
+msgstr ""
+
+#: builtins.c:1136
+#, gcc-internal-format
+msgid "%K%qD specified bound %s exceeds the size %E of unterminated array"
+msgstr ""
+
+#: builtins.c:1139
+#, gcc-internal-format
+msgid ""
+"%K%qD specified bound %s may exceed the size of at most %E of unterminated "
+"array"
+msgstr ""
+
+#: builtins.c:1142
+#, gcc-internal-format
+msgid ""
+"%K%qD specified bound %s exceeds the size of at most %E of unterminated array"
+msgstr ""
+
+#: builtins.c:1150
 #, gcc-internal-format
-msgid "%qs argument missing terminating nul"
+msgid "%K%qD argument missing terminating nul"
 msgstr ""
 
-#: builtins.c:562 builtins.c:3163 builtins.c:3217 gimple-ssa-sprintf.c:3281
+#: builtins.c:1159
+#, gcc-internal-format
+msgid "%qs specified bound %s exceeds maximum object size %E"
+msgstr ""
+
+#: builtins.c:1167
+#, gcc-internal-format
+msgid "%qs specified bound %s exceeds the size %E of unterminated array"
+msgstr ""
+
+#: builtins.c:1170
+#, gcc-internal-format
+msgid ""
+"%qs specified bound %s may exceed the size of at most %E of unterminated "
+"array"
+msgstr ""
+
+#: builtins.c:1173
+#, gcc-internal-format
+msgid ""
+"%qs specified bound %s exceeds the size of at most %E of unterminated array"
+msgstr ""
+
+#: builtins.c:1181
+#, gcc-internal-format
+msgid "%qsargument missing terminating nul"
+msgstr ""
+
+#: builtins.c:1188 gimple-ssa-sprintf.c:3288
 #, gcc-internal-format
 msgid "referenced argument declared here"
 msgstr ""
 
-#: builtins.c:814
+#: builtins.c:1450
 #, gcc-internal-format
 msgid "offset %qwi outside bounds of constant string"
 msgstr ""
 
-#: builtins.c:818 cp/name-lookup.c:5332
+#: builtins.c:1454 cp/name-lookup.c:6576
 #, gcc-internal-format
 msgid "%qE declared here"
 msgstr ""
 
-#: builtins.c:1426
+#: builtins.c:2062
 #, gcc-internal-format
 msgid "second argument to %<__builtin_prefetch%> must be a constant"
 msgstr ""
 
-#: builtins.c:1433
+#: builtins.c:2069
 #, gcc-internal-format
 msgid "invalid second argument to %<__builtin_prefetch%>; using zero"
 msgstr ""
 
-#: builtins.c:1441
+#: builtins.c:2077
 #, gcc-internal-format
 msgid "third argument to %<__builtin_prefetch%> must be a constant"
 msgstr ""
 
-#: builtins.c:1448
+#: builtins.c:2084
 #, gcc-internal-format
 msgid "invalid third argument to %<__builtin_prefetch%>; using zero"
 msgstr ""
 
-#: builtins.c:3130 builtins.c:3801 calls.c:1676
+#: builtins.c:3954
+#, gcc-internal-format
+msgid "%K%qD specified bound %E may exceed maximum object size %E"
+msgstr ""
+
+#: builtins.c:3956 calls.c:1730
 #, gcc-internal-format
 msgid "%K%qD specified bound %E exceeds maximum object size %E"
 msgstr ""
 
-#: builtins.c:3156
+#: builtins.c:3961
 #, gcc-internal-format
-msgid "%K%qD specified bound %E exceeds the size %E of unterminated array"
+msgid "%Kspecified bound %E may exceed maximum object size %E"
 msgstr ""
 
-#: builtins.c:3158
+#: builtins.c:3963
 #, gcc-internal-format
-msgid ""
-"%K%qD specified bound %E may exceed the size of at most %E of unterminated "
-"array"
+msgid "%Kspecified bound %E exceeds maximum object size %E"
 msgstr ""
 
-#: builtins.c:3187
+#: builtins.c:3970
 #, gcc-internal-format
-msgid "%K%qD specified bound [%wu, %wu] exceeds maximum object size %E"
+msgid "%K%qD specified bound [%E, %E] may exceed maximum object size %E"
 msgstr ""
 
-#: builtins.c:3210
+#: builtins.c:3972 calls.c:1735
 #, gcc-internal-format
-msgid ""
-"%K%qD specified bound [%wu, %wu] exceeds the size %E of unterminated array"
+msgid "%K%qD specified bound [%E, %E] exceeds maximum object size %E"
+msgstr ""
+
+#: builtins.c:3978
+#, gcc-internal-format
+msgid "%Kspecified bound [%E, %E] may exceed maximum object size %E"
+msgstr ""
+
+#: builtins.c:3980
+#, gcc-internal-format
+msgid "%Kspecified bound [%E, %E] exceeds maximum object size %E"
+msgstr ""
+
+#: builtins.c:3990
+#, gcc-internal-format
+msgid "%K%qD specified bound %E may exceed source size %E"
+msgstr ""
+
+#: builtins.c:3992
+#, gcc-internal-format
+msgid "%K%qD specified bound %E exceeds source size %E"
+msgstr ""
+
+#: builtins.c:3997
+#, gcc-internal-format
+msgid "%Kspecified bound %E may exceed source size %E"
+msgstr ""
+
+#: builtins.c:3999
+#, gcc-internal-format
+msgid "%Kspecified bound %E exceeds source size %E"
+msgstr ""
+
+#: builtins.c:4006
+#, gcc-internal-format
+msgid "%K%qD specified bound [%E, %E] may exceed source size %E"
+msgstr ""
+
+#: builtins.c:4008
+#, gcc-internal-format
+msgid "%K%qD specified bound [%E, %E] exceeds source size %E"
+msgstr ""
+
+#: builtins.c:4013
+#, gcc-internal-format
+msgid "%Kspecified bound [%E, %E] may exceed source size %E"
+msgstr ""
+
+#: builtins.c:4015
+#, gcc-internal-format
+msgid "%Kspecified bound [%E, %E] exceeds source size %E"
+msgstr ""
+
+#: builtins.c:4024
+#, gcc-internal-format
+msgid "source object declared here"
 msgstr ""
 
-#: builtins.c:3212
+#: builtins.c:4027
+#, gcc-internal-format
+msgid "source object allocated here"
+msgstr ""
+
+#: builtins.c:4042
+#, gcc-internal-format
+msgid "%K%qD specified size %E may exceed maximum object size %E"
+msgstr ""
+
+#: builtins.c:4044
+#, gcc-internal-format
+msgid "%K%qD specified size %E exceeds maximum object size %E"
+msgstr ""
+
+#: builtins.c:4049
+#, gcc-internal-format
+msgid "%Kspecified size %E may exceed maximum object size %E"
+msgstr ""
+
+#: builtins.c:4051
+#, gcc-internal-format
+msgid "%Kspecified size %E exceeds maximum object size %E"
+msgstr ""
+
+#: builtins.c:4058
 #, gcc-internal-format
 msgid ""
-"%K%qD specified bound [%wu, %wu] may exceed the size of at most %E of "
-"unterminated array"
+"%K%qD specified size between %E and %E may exceed maximum object size %E"
 msgstr ""
 
-#: builtins.c:3330
+#: builtins.c:4060
 #, gcc-internal-format
-msgid "%K%qD reading %E byte from a region of size %E"
-msgid_plural "%K%qD reading %E bytes from a region of size %E"
-msgstr[0] ""
-msgstr[1] ""
+msgid "%K%qD specified size between %E and %E exceeds maximum object size %E"
+msgstr ""
 
-#: builtins.c:3334
+#: builtins.c:4066
 #, gcc-internal-format
-msgid "%Kreading %E byte from a region of size %E"
-msgid_plural "%Kreading %E bytes from a region of size %E"
-msgstr[0] ""
-msgstr[1] ""
+msgid "%Kspecified size between %E and %E may exceed maximum object size %E"
+msgstr ""
 
-#: builtins.c:3342
+#: builtins.c:4068
 #, gcc-internal-format
-msgid "%K%qD reading %E or more bytes from a region of size %E"
+msgid "%Kspecified size between %E and %E exceeds maximum object size %E"
 msgstr ""
 
-#: builtins.c:3346
+#: builtins.c:4078
 #, gcc-internal-format
-msgid "%Kreading %E or more bytes from a region of size %E"
+msgid "%K%qD specified bound %E may exceed destination size %E"
 msgstr ""
 
-#: builtins.c:3353
+#: builtins.c:4080
 #, gcc-internal-format
-msgid "%K%qD reading between %E and %E bytes from a region of size %E"
+msgid "%K%qD specified bound %E exceeds destination size %E"
 msgstr ""
 
-#: builtins.c:3357
+#: builtins.c:4085
 #, gcc-internal-format
-msgid "%Kreading between %E and %E bytes from a region of size %E"
+msgid "%Kspecified bound %E may exceed destination size %E"
 msgstr ""
 
-#: builtins.c:3367
+#: builtins.c:4087
 #, gcc-internal-format
-msgid "%K%qD epecting %E byte in a region of size %E"
-msgid_plural "%K%qD expecting %E bytes in a region of size %E"
-msgstr[0] ""
-msgstr[1] ""
+msgid "%Kspecified bound %E exceeds destination size %E"
+msgstr ""
 
-#: builtins.c:3371
+#: builtins.c:4094
 #, gcc-internal-format
-msgid "%Kexpecting %E byte in a region of size %E"
-msgid_plural "%Kexpecting %E bytes in a region of size %E"
-msgstr[0] ""
-msgstr[1] ""
+msgid "%K%qD specified bound [%E, %E] may exceed destination size %E"
+msgstr ""
 
-#: builtins.c:3379
+#: builtins.c:4096
 #, gcc-internal-format
-msgid "%K%qD expecting %E or more bytes in a region of size %E"
+msgid "%K%qD specified bound [%E, %E] exceeds destination size %E"
 msgstr ""
 
-#: builtins.c:3383
+#: builtins.c:4101 builtins.c:4103
 #, gcc-internal-format
-msgid "%Kexpecting %E or more bytes in a region of size %E"
+msgid "%Kspecified bound [%E, %E] exceeds destination size %E"
 msgstr ""
 
-#: builtins.c:3390
+#: builtins.c:4113
 #, gcc-internal-format
-msgid "%K%qD expecting between %E and %E bytes in a region of size %E"
+msgid "destination object declared here"
 msgstr ""
 
-#: builtins.c:3394
+#: builtins.c:4116
 #, gcc-internal-format
-msgid "%Kexpectting between %E and %E bytes in a region of size %E"
+msgid "destination object allocated here"
 msgstr ""
 
-#: builtins.c:3461
+#: builtins.c:4143
 #, gcc-internal-format
-msgid "destination object %qD"
+msgid "%K%qD may access %E byte in a region of size %E"
 msgstr ""
 
-#: builtins.c:3463
+#: builtins.c:4145
 #, gcc-internal-format
-msgid "at offset %lli into destination object %qD"
+msgid "%K%qD accessing %E byte in a region of size %E"
 msgstr ""
 
-#: builtins.c:3467
+#: builtins.c:4148
 #, gcc-internal-format
-msgid "at offset [%lli, %lli] into destination object %qD"
+msgid "%K%qD may access %E bytes in a region of size %E"
 msgstr ""
 
-#: builtins.c:3475
+#: builtins.c:4150
 #, gcc-internal-format
-msgid "destination object of size %s allocated by %qE"
+msgid "%K%qD accessing %E bytes in a region of size %E"
 msgstr ""
 
-#: builtins.c:3479
+#: builtins.c:4155
 #, gcc-internal-format
-msgid "at offset %lli into destination object of size %s allocated by %qE"
+msgid "%Kmay access %E byte in a region of size %E"
 msgstr ""
 
-#: builtins.c:3484
+#: builtins.c:4157
 #, gcc-internal-format
-msgid ""
-"at offset [%lli, %lli] into destination object of size %s allocated by %qE"
+msgid "%Kaccessing %E byte in a region of size %E"
 msgstr ""
 
-#: builtins.c:3496
+#: builtins.c:4160
 #, gcc-internal-format
-msgid "source object %qD"
+msgid "%Kmay access %E bytes in a region of size %E"
 msgstr ""
 
-#: builtins.c:3498
+#: builtins.c:4162
 #, gcc-internal-format
-msgid "at offset %lli into source object %qD"
+msgid "%Kaccessing %E bytes in a region of size %E"
 msgstr ""
 
-#: builtins.c:3502
+#: builtins.c:4171
 #, gcc-internal-format
-msgid "at offset [%lli, %lli] into source object %qD"
+msgid "%K%qD may access %E or more bytes in a region of size %E"
 msgstr ""
 
-#: builtins.c:3510
+#: builtins.c:4173
 #, gcc-internal-format
-msgid "source object of size %s allocated by %qE"
+msgid "%K%qD accessing %E or more bytes in a region of size %E"
 msgstr ""
 
-#: builtins.c:3514
+#: builtins.c:4178
 #, gcc-internal-format
-msgid "at offset %lli into source object of size %s allocated by %qE"
+msgid "%Kmay access %E or more bytes in a region of size %E"
 msgstr ""
 
-#: builtins.c:3519
+#: builtins.c:4180
 #, gcc-internal-format
-msgid "at offset [%lli, %lli] into source object of size %s allocated by %qE"
+msgid "%Kaccessing %E or more bytes in a region of size %E"
 msgstr ""
 
-#: builtins.c:3658
+#: builtins.c:4188
 #, gcc-internal-format
-msgid "%K%qD specified size %E exceeds maximum object size %E"
+msgid "%K%qD may access between %E and %E bytes in a region of size %E"
 msgstr ""
 
-#: builtins.c:3662
+#: builtins.c:4190
 #, gcc-internal-format
-msgid "%Kspecified size %E exceeds maximum object size %E"
+msgid "%K%qD accessing between %E and %E bytes in a region of size %E"
 msgstr ""
 
-#: builtins.c:3668
+#: builtins.c:4196
 #, gcc-internal-format
-msgid "%K%qD specified size between %E and %E exceeds maximum object size %E"
+msgid "%Kmay access between %E and %E bytes in a region of size %E"
 msgstr ""
 
-#: builtins.c:3673
+#: builtins.c:4198
 #, gcc-internal-format
-msgid "%Kspecified size between %E and %E exceeds maximum object size %E"
+msgid "%Kaccessing between %E and %E bytes in a region of size %E"
 msgstr ""
 
-#: builtins.c:3712 builtins.c:3741
+#: builtins.c:4211
 #, gcc-internal-format
-msgid ""
-"%K%qD writing %E or more bytes into a region of size %E overflows the "
-"destination"
+msgid "%K%qD may write %E byte into a region of size %E"
 msgstr ""
 
-#: builtins.c:3717 builtins.c:3746
+#: builtins.c:4213
 #, gcc-internal-format
 msgid ""
-"%Kwriting %E or more bytes into a region of size %E overflows the destination"
+"%K%qD writing %E byte into a region of size %E overflows the destination"
 msgstr ""
 
-#: builtins.c:3725
+#: builtins.c:4216
+#, gcc-internal-format
+msgid "%K%qD may write %E bytes into a region of size %E"
+msgstr ""
+
+#: builtins.c:4218
 #, gcc-internal-format
 msgid ""
-"%K%qD writing %E byte into a region of size %E overflows the destination"
-msgid_plural ""
 "%K%qD writing %E bytes into a region of size %E overflows the destination"
-msgstr[0] ""
-msgstr[1] ""
+msgstr ""
+
+#: builtins.c:4223
+#, gcc-internal-format
+msgid "%Kmay write %E byte into a region of size %E"
+msgstr ""
 
-#: builtins.c:3731
+#: builtins.c:4225
 #, gcc-internal-format
 msgid "%Kwriting %E byte into a region of size %E overflows the destination"
-msgid_plural ""
-"%Kwriting %E bytes into a region of size %E overflows the destination"
-msgstr[0] ""
-msgstr[1] ""
+msgstr ""
 
-#: builtins.c:3754
+#: builtins.c:4228
+#, gcc-internal-format
+msgid "%Kmay write %E bytes into a region of size %E"
+msgstr ""
+
+#: builtins.c:4230
+#, gcc-internal-format
+msgid "%Kwriting %E bytes into a region of size %E overflows the destination"
+msgstr ""
+
+#: builtins.c:4239
+#, gcc-internal-format
+msgid ""
+"%K%qD may write %E or more bytes into a region of size %E the destination"
+msgstr ""
+
+#: builtins.c:4242 builtins.c:4780
+#, gcc-internal-format
+msgid ""
+"%K%qD writing %E or more bytes into a region of size %E overflows the "
+"destination"
+msgstr ""
+
+#: builtins.c:4248
+#, gcc-internal-format
+msgid "%Kmay write %E or more bytes into a region of size %E"
+msgstr ""
+
+#: builtins.c:4250 builtins.c:4785
+#, gcc-internal-format
+msgid ""
+"%Kwriting %E or more bytes into a region of size %E overflows the destination"
+msgstr ""
+
+#: builtins.c:4259
+#, gcc-internal-format
+msgid "%K%qD may write between %E and %E bytes into a region of size %E"
+msgstr ""
+
+#: builtins.c:4261
 #, gcc-internal-format
 msgid ""
 "%K%qD writing between %E and %E bytes into a region of size %E overflows the "
 "destination"
 msgstr ""
 
-#: builtins.c:3760
+#: builtins.c:4268
+#, gcc-internal-format
+msgid "%Kmay write between %E and %E bytes into a region of size %E"
+msgstr ""
+
+#: builtins.c:4270
 #, gcc-internal-format
 msgid ""
 "%Kwriting between %E and %E bytes into a region of size %E overflows the "
 "destination"
 msgstr ""
 
-#: builtins.c:3805
+#: builtins.c:4285
 #, gcc-internal-format
-msgid "%Kspecified bound %E exceeds maximum object size %E"
+msgid "%K%qD may reade %E byte from a region of size %E"
 msgstr ""
 
-#: builtins.c:3811
+#: builtins.c:4287
 #, gcc-internal-format
-msgid "%K%qD specified bound between %E and %E exceeds maximum object size %E"
+msgid "%K%qD reading %E byte from a region of size %E"
 msgstr ""
 
-#: builtins.c:3817
+#: builtins.c:4290
 #, gcc-internal-format
-msgid "%Kspecified bound between %E and %E exceeds maximum object size %E"
+msgid "%K%qD may read %E bytes from a region of size %E"
 msgstr ""
 
-#: builtins.c:3837
+#: builtins.c:4292
 #, gcc-internal-format
-msgid "%K%qD specified bound %E exceeds destination size %E"
+msgid "%K%qD reading %E bytes from a region of size %E"
 msgstr ""
 
-#: builtins.c:3842
+#: builtins.c:4298
 #, gcc-internal-format
-msgid "%Kspecified bound %E exceeds destination size %E"
+msgid "%Kmay read %E byte from a region of size %E"
 msgstr ""
 
-#: builtins.c:3848
+#: builtins.c:4300
 #, gcc-internal-format
-msgid "%K%qD specified bound between %E and %E exceeds destination size %E"
+msgid "%Kreading %E byte from a region of size %E"
 msgstr ""
 
-#: builtins.c:3853
+#: builtins.c:4303
 #, gcc-internal-format
-msgid "%Kspecified bound between %E and %E exceeds destination size %E"
+msgid "%Kmay read %E bytes from a region of size %E"
 msgstr ""
 
-#: builtins.c:4863 builtins.c:4938
+#: builtins.c:4305
+#, gcc-internal-format
+msgid "%Kreading %E bytes from a region of size %E"
+msgstr ""
+
+#: builtins.c:4314
+#, gcc-internal-format
+msgid "%K%qD may read %E or more bytes from a region of size %E"
+msgstr ""
+
+#: builtins.c:4316
+#, gcc-internal-format
+msgid "%K%qD reading %E or more bytes from a region of size %E"
+msgstr ""
+
+#: builtins.c:4321
+#, gcc-internal-format
+msgid "%Kmay read %E or more bytes from a region of size %E"
+msgstr ""
+
+#: builtins.c:4323
+#, gcc-internal-format
+msgid "%Kreading %E or more bytes from a region of size %E"
+msgstr ""
+
+#: builtins.c:4331
+#, gcc-internal-format
+msgid "%K%qD may read between %E and %E bytes from a region of size %E"
+msgstr ""
+
+#: builtins.c:4333
+#, gcc-internal-format
+msgid "%K%qD reading between %E and %E bytes from a region of size %E"
+msgstr ""
+
+#: builtins.c:4338
+#, gcc-internal-format
+msgid "%Kmay read between %E and %E bytes from a region of size %E"
+msgstr ""
+
+#: builtins.c:4340
+#, gcc-internal-format
+msgid "%Kreading between %E and %E bytes from a region of size %E"
+msgstr ""
+
+#: builtins.c:4355
+#, gcc-internal-format
+msgid "%K%qD epecting %E byte in a region of size %E"
+msgid_plural "%K%qD expecting %E bytes in a region of size %E"
+msgstr[0] ""
+msgstr[1] ""
+
+#: builtins.c:4360
+#, gcc-internal-format
+msgid "%Kexpecting %E byte in a region of size %E"
+msgid_plural "%Kexpecting %E bytes in a region of size %E"
+msgstr[0] ""
+msgstr[1] ""
+
+#: builtins.c:4368
+#, gcc-internal-format
+msgid "%K%qD expecting %E or more bytes in a region of size %E"
+msgstr ""
+
+#: builtins.c:4372
+#, gcc-internal-format
+msgid "%Kexpecting %E or more bytes in a region of size %E"
+msgstr ""
+
+#: builtins.c:4379
+#, gcc-internal-format
+msgid "%K%qD expecting between %E and %E bytes in a region of size %E"
+msgstr ""
+
+#: builtins.c:4383
+#, gcc-internal-format
+msgid "%Kexpectting between %E and %E bytes in a region of size %E"
+msgstr ""
+
+#: builtins.c:4546
+#, gcc-internal-format
+msgid "at offset %s into destination object %qE of size %s"
+msgstr ""
+
+#: builtins.c:4549
+#, gcc-internal-format
+msgid "destination object %qE of size %s"
+msgstr ""
+
+#: builtins.c:4555
+#, gcc-internal-format
+msgid "at offset %s into destination object of size %s allocated by %qE"
+msgstr ""
+
+#: builtins.c:4558
+#, gcc-internal-format
+msgid "destination object of size %s allocated by %qE"
+msgstr ""
+
+#: builtins.c:4566
+#, gcc-internal-format
+msgid "at offset %s into source object %qE of size %s"
+msgstr ""
+
+#: builtins.c:4569
+#, gcc-internal-format
+msgid "source object %qE of size %s"
+msgstr ""
+
+#: builtins.c:4576
+#, gcc-internal-format
+msgid "at offset %s into source object of size %s allocated by %qE"
+msgstr ""
+
+#: builtins.c:4579
+#, gcc-internal-format
+msgid "source object of size %s allocated by %qE"
+msgstr ""
+
+#: builtins.c:6384 builtins.c:6457
 #, gcc-internal-format
 msgid "%K%qD specified bound %E equals destination size"
 msgstr ""
 
-#: builtins.c:5797 gimplify.c:3360
+#: builtins.c:7349 gimplify.c:3383
 #, gcc-internal-format
 msgid "too few arguments to function %<va_start%>"
 msgstr ""
 
-#: builtins.c:5897
+#: builtins.c:7449
 #, gcc-internal-format
 msgid "invalid argument to %qD"
 msgstr ""
 
-#: builtins.c:5910
+#: builtins.c:7462
 #, 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.c:5918
+#: builtins.c:7470
 #, gcc-internal-format
 msgid "calling %qD with a nonzero argument is unsafe"
 msgstr ""
 
-#: builtins.c:6250
+#: builtins.c:7800 builtins.c:7840
 #, gcc-internal-format
 msgid "both arguments to %<__builtin___clear_cache%> must be pointers"
 msgstr ""
 
-#: builtins.c:6349
+#: builtins.c:7930
 #, gcc-internal-format
 msgid "trampoline generated for nested function %qD"
 msgstr ""
 
-#: builtins.c:6743 builtins.c:6756
+#: builtins.c:8325 builtins.c:8338
 #, gcc-internal-format
 msgid "%qD changed semantics in GCC 4.4"
 msgstr ""
 
-#: builtins.c:6862
+#: builtins.c:8444
 #, gcc-internal-format
 msgid "unknown architecture specifier in memory model to builtin"
 msgstr ""
 
-#: builtins.c:6870
+#: builtins.c:8452
 #, gcc-internal-format
 msgid "invalid memory model argument to builtin"
 msgstr ""
 
-#: builtins.c:6931 builtins.c:7058
+#: builtins.c:8513 builtins.c:8640
 #, gcc-internal-format
 msgid ""
 "failure memory model cannot be stronger than success memory model for "
 "%<__atomic_compare_exchange%>"
 msgstr ""
 
-#: builtins.c:6939 builtins.c:7066
+#: builtins.c:8521 builtins.c:8648
 #, gcc-internal-format
 msgid "invalid failure memory model for %<__atomic_compare_exchange%>"
 msgstr ""
 
-#: builtins.c:7124
+#: builtins.c:8706
 #, gcc-internal-format
 msgid "invalid memory model for %<__atomic_load%>"
 msgstr ""
 
-#: builtins.c:7156 builtins.c:7349
+#: builtins.c:8738 builtins.c:8931
 #, gcc-internal-format
 msgid "invalid memory model for %<__atomic_store%>"
 msgstr ""
 
-#: builtins.c:7470
+#: builtins.c:9052
 #, gcc-internal-format
 msgid "non-constant argument 1 to %qs"
 msgstr ""
 
-#: builtins.c:7512
+#: builtins.c:9094
 #, gcc-internal-format
 msgid "non-integer argument 1 to %qs"
 msgstr ""
 
-#: builtins.c:7576
+#: builtins.c:9158
 #, gcc-internal-format
 msgid "%<__builtin_thread_pointer%> is not supported on this target"
 msgstr ""
 
-#: builtins.c:7596
+#: builtins.c:9178
 #, gcc-internal-format
 msgid "%<__builtin_set_thread_pointer%> is not supported on this target"
 msgstr ""
 
-#: builtins.c:7655
+#: builtins.c:9237
 #, gcc-internal-format
 msgid "%qs only supported in OpenACC code"
 msgstr ""
 
-#: builtins.c:7662
+#: builtins.c:9244
 #, gcc-internal-format
 msgid "non-constant argument 0 to %qs"
 msgstr ""
 
-#: builtins.c:7674
+#: builtins.c:9256
 #, gcc-internal-format
 msgid "illegal argument 0 to %qs"
 msgstr ""
 
 #. All valid uses of __builtin_va_arg_pack () are removed during
 #. inlining.
-#: builtins.c:8113 expr.c:11202
+#: builtins.c:9714 expr.c:11241
 #, gcc-internal-format
 msgid "%Kinvalid use of %<__builtin_va_arg_pack ()%>"
 msgstr ""
 
 #. All valid uses of __builtin_va_arg_pack_len () are removed during
 #. inlining.
-#: builtins.c:8119
+#: builtins.c:9720
 #, gcc-internal-format
 msgid "%Kinvalid use of %<__builtin_va_arg_pack_len ()%>"
 msgstr ""
 
-#: builtins.c:8452
+#: builtins.c:10052
 #, gcc-internal-format
 msgid "%<__builtin_longjmp%> second argument must be 1"
 msgstr ""
 
-#: builtins.c:9349
+#: builtins.c:10945
 #, gcc-internal-format
 msgid "target format does not support infinity"
 msgstr ""
 
-#: builtins.c:10968
+#: builtins.c:12566
 #, gcc-internal-format
 msgid "%<va_start%> used in function with fixed arguments"
 msgstr ""
 
-#: builtins.c:10976
+#: builtins.c:12574
 #, gcc-internal-format
 msgid "wrong number of arguments to function %<va_start%>"
 msgstr ""
 
-#: builtins.c:10991
+#: builtins.c:12589
 #, gcc-internal-format
 msgid "%<__builtin_next_arg%> called without an argument"
 msgstr ""
 
-#: builtins.c:10996
+#: builtins.c:12594
 #, gcc-internal-format
 msgid "wrong number of arguments to function %<__builtin_next_arg%>"
 msgstr ""
 
-#: builtins.c:11028
+#: builtins.c:12626
 #, gcc-internal-format
 msgid "second parameter of %<va_start%> not last named argument"
 msgstr ""
 
-#: builtins.c:11041
+#: builtins.c:12639
 #, gcc-internal-format
 msgid ""
 "undefined behavior when second parameter of %<va_start%> is declared with "
 "%<register%> storage"
 msgstr ""
 
-#: builtins.c:11070
+#: builtins.c:12668
 #, gcc-internal-format
 msgid "%Kfirst argument of %qD must be a pointer, second integer constant"
 msgstr ""
 
-#: builtins.c:11083
+#: builtins.c:12681
 #, gcc-internal-format
 msgid "%Klast argument of %qD is not integer constant between 0 and 3"
 msgstr ""
 
-#: builtins.c:11362
+#: builtins.c:13484
+#, gcc-internal-format
+msgid "%K%qD called on pointer %qE with nonzero offset%s"
+msgstr ""
+
+#: builtins.c:13489 builtins.c:13553 gimple-ssa-isolate-paths.c:412
+#: tree.c:13226 tree.c:13263 c/c-typeck.c:2939 c/c-typeck.c:3026
+#: c/c-typeck.c:5541 c/c-typeck.c:10765 c/c-typeck.c:10782
+#: c/gimple-parser.c:2416 c/gimple-parser.c:2424 cp/call.c:7194 cp/call.c:9179
+#: cp/constexpr.c:842 cp/constexpr.c:3559 cp/cvt.c:1077 cp/cvt.c:1115
+#: cp/decl.c:8188 cp/decl.c:15242 cp/decl.c:15621 cp/decl2.c:5626
+#: cp/decl2.c:5677 cp/parser.c:20706 cp/pt.c:8849 cp/semantics.c:2023
+#: cp/semantics.c:3267 cp/semantics.c:4354 cp/typeck.c:1796 cp/typeck.c:2013
+#: cp/typeck.c:4083 cp/typeck.c:9779
+#, gcc-internal-format
+msgid "declared here"
+msgstr ""
+
+#: builtins.c:13499 builtins.c:13624
 #, gcc-internal-format
-msgid "%Kattempt to free a non-heap object %qD"
+msgid "returned from %qD"
 msgstr ""
 
-#: builtins.c:11365
+#: builtins.c:13502
 #, gcc-internal-format
-msgid "%Kattempt to free a non-heap object"
+msgid "returned from %qT"
 msgstr ""
 
-#: calls.c:1384
+#: builtins.c:13504
+#, gcc-internal-format
+msgid "obtained here"
+msgstr ""
+
+#: builtins.c:13547
+#, gcc-internal-format
+msgid "%K%qD called on unallocated object %qD"
+msgstr ""
+
+#: builtins.c:13567
+#, gcc-internal-format
+msgid "%K%qD called on a pointer to an unallocated object %qE"
+msgstr ""
+
+#: builtins.c:13576
+#, gcc-internal-format
+msgid "assigned here"
+msgstr ""
+
+#: builtins.c:13605
+#, gcc-internal-format
+msgid "%K%qD called on pointer returned from a mismatched allocation function"
+msgstr ""
+
+#: builtins.c:13614
+#, gcc-internal-format
+msgid "%K%qD called on pointer to an unallocated object"
+msgstr ""
+
+#: calls.c:1436
 #, gcc-internal-format
 msgid "%Kargument %i value %qE is negative"
 msgstr ""
 
-#: calls.c:1401
+#: calls.c:1453
 #, gcc-internal-format
 msgid "%Kargument %i value is zero"
 msgstr ""
 
-#: calls.c:1419
+#: calls.c:1471
 #, gcc-internal-format
 msgid "%Kargument %i value %qE exceeds maximum object size %E"
 msgstr ""
 
-#: calls.c:1433 calls.c:2001
+#: calls.c:1485
 #, gcc-internal-format
 msgid "%Kargument %i range [%E, %E] is negative"
 msgstr ""
 
-#: calls.c:1440
+#: calls.c:1492
 #, gcc-internal-format
 msgid "%Kargument %i range [%E, %E] exceeds maximum object size %E"
 msgstr ""
 
-#: calls.c:1470
+#: calls.c:1522
 #, gcc-internal-format
 msgid "%Kproduct %<%E * %E%> of arguments %i and %i exceeds %<SIZE_MAX%>"
 msgstr ""
 
-#: calls.c:1476
+#: calls.c:1528
 #, gcc-internal-format
 msgid ""
 "%Kproduct %<%E * %E%> of arguments %i and %i exceeds maximum object size %E"
 msgstr ""
 
-#: calls.c:1487 calls.c:1490
+#: calls.c:1539 calls.c:1542
 #, gcc-internal-format
 msgid "argument %i in the range [%E, %E]"
 msgstr ""
 
-#: calls.c:1501
+#: calls.c:1553
 #, gcc-internal-format
 msgid "in a call to built-in allocation function %qD"
 msgstr ""
 
-#: calls.c:1504
+#: calls.c:1556
 #, gcc-internal-format
 msgid "in a call to allocation function %qD declared here"
 msgstr ""
 
-#: calls.c:1681
-#, gcc-internal-format
-msgid "%K%qD specified bound [%E, %E] exceeds maximum object size %E"
-msgstr ""
-
-#: calls.c:1824
+#: calls.c:1883
 #, gcc-internal-format
 msgid ""
 "%qD argument %i declared attribute %<nonstring%> is smaller than the "
 "specified bound %wu"
 msgstr ""
 
-#: calls.c:1830
+#: calls.c:1889
 #, gcc-internal-format
 msgid ""
 "%qD argument %i declared attribute %<nonstring%> is smaller than the "
 "specified bound [%E, %E]"
 msgstr ""
 
-#: calls.c:1836
+#: calls.c:1895
 #, gcc-internal-format
 msgid ""
 "%qD argument %i declared attribute %<nonstring%> may be smaller than the "
 "specified bound [%E, %E]"
 msgstr ""
 
-#: calls.c:1846
+#: calls.c:1905
 #, gcc-internal-format
 msgid "%qD argument %i declared attribute %<nonstring%>"
 msgstr ""
 
-#: calls.c:1851
+#: calls.c:1911
 #, gcc-internal-format
 msgid "argument %qD declared here"
 msgstr ""
 
-#: calls.c:1865
+#: calls.c:1932
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot tail-call: %s"
 msgstr ""
 
-#: calls.c:1997
+#: calls.c:2067
 #, gcc-internal-format
-msgid "%Kargument %i value %E is negative"
+msgid ""
+"%Kbound argument %i value %s is negative for a variable length array "
+"argument %i of type %s"
 msgstr ""
 
-#: calls.c:2044
+#: calls.c:2075
+#, gcc-internal-format
+msgid "%Kargument %i value %s is negative"
+msgstr ""
+
+#: calls.c:2122
 #, gcc-internal-format
 msgid ""
-"%Kargument %i is null but the corresponding size argument %i value is %E"
+"%Kargument %i of variable length array %s is null but the corresponding "
+"bound argument %i value is %s"
 msgstr ""
 
-#: calls.c:2049
+#: calls.c:2131
 #, gcc-internal-format
 msgid ""
-"%Kargument %i is null but the corresponding size argument %i range is [%E, "
-"%E]"
+"%Kargument %i is null but the corresponding size argument %i value is %s"
+msgstr ""
+
+#: calls.c:2142
+#, gcc-internal-format
+msgid "%Kargument %i to %<%T[static %E]%> is null where non-null expected"
+msgstr ""
+
+#: calls.c:2201
+#, gcc-internal-format
+msgid "referencing argument %u of type %qT"
 msgstr ""
 
-#: calls.c:2103
+#: calls.c:2214
 #, gcc-internal-format
 msgid "in a call to function %qD declared with attribute %qs"
 msgstr ""
 
-#: calls.c:2107
+#: calls.c:2218
 #, gcc-internal-format
 msgid "in a call with type %qT and attribute %qs"
 msgstr ""
 
-#: calls.c:3692
+#: calls.c:2225
+#, gcc-internal-format
+msgid "in a call to function %qD"
+msgstr ""
+
+#: calls.c:2228
+#, gcc-internal-format
+msgid "in a call with type %qT"
+msgstr ""
+
+#: calls.c:3802
 #, gcc-internal-format
 msgid "function call has aggregate value"
 msgstr ""
 
-#: calls.c:4413
+#: calls.c:4522
 #, gcc-internal-format
 msgid "passing too large argument on stack"
 msgstr ""
 
-#: cfgexpand.c:1699
+#: cfgexpand.c:1812
 #, gcc-internal-format
 msgid "total size of local objects is too large"
 msgstr ""
 
-#: cfgexpand.c:1702 function.c:1010 varasm.c:2221
+#: cfgexpand.c:1815 function.c:1012 varasm.c:2311
 #, gcc-internal-format
 msgid "size of variable %q+D is too large"
 msgstr ""
 
-#: cfgexpand.c:1714
+#: cfgexpand.c:1827
 #, gcc-internal-format
 msgid "cannot allocate stack for variable %q+D, naked function"
 msgstr ""
 
-#: cfgexpand.c:2794
+#: cfgexpand.c:2930
 #, gcc-internal-format
 msgid "too many alternatives in %<asm%>"
 msgstr ""
 
-#: cfgexpand.c:2801
+#: cfgexpand.c:2937
 #, gcc-internal-format
 msgid "operand constraints for %<asm%> differ in number of alternatives"
 msgstr ""
 
-#: cfgexpand.c:2822
+#: cfgexpand.c:2958
 #, gcc-internal-format
 msgid "%<asm%> specifier for variable %qE conflicts with %<asm%> clobber list"
 msgstr ""
 
 #. ??? Diagnose during gimplification?
-#: cfgexpand.c:2854
+#: cfgexpand.c:2990
 #, gcc-internal-format
 msgid "PIC register clobbered by %qs in %<asm%>"
 msgstr ""
 
 #. ??? Diagnose during gimplification?
-#: cfgexpand.c:2861
+#: cfgexpand.c:2997
 #, gcc-internal-format
 msgid "the register %qs cannot be clobbered in %<asm%> for the current target"
 msgstr ""
 
-#: cfgexpand.c:2872
+#: cfgexpand.c:3010
 #, gcc-internal-format
 msgid "listing the stack pointer register %qs in a clobber list is deprecated"
 msgstr ""
 
-#: cfgexpand.c:2874
+#: cfgexpand.c:3012
 #, gcc-internal-format
 msgid ""
 "the value of the stack pointer after an %<asm%> statement must be the same "
 "as it was before the statement"
 msgstr ""
 
-#: cfgexpand.c:2942
+#: cfgexpand.c:3082
 #, gcc-internal-format
 msgid "more than %d operands in %<asm%>"
 msgstr ""
 
 #. ??? Diagnose during gimplification?
-#: cfgexpand.c:2995
+#: cfgexpand.c:3135
 #, gcc-internal-format
 msgid "unknown register name %qs in %<asm%>"
 msgstr ""
 
-#: cfgexpand.c:3058
+#: cfgexpand.c:3198
 #, gcc-internal-format
 msgid "invalid hard register usage between output operands"
 msgstr ""
 
-#: cfgexpand.c:3081
+#: cfgexpand.c:3221
 #, gcc-internal-format
 msgid ""
 "invalid hard register usage between output operand and matching constraint "
 "operand"
 msgstr ""
 
-#: cfgexpand.c:3086
+#: cfgexpand.c:3226
 #, gcc-internal-format
 msgid ""
 "invalid hard register usage between earlyclobber operand and input operand"
 msgstr ""
 
-#: cfgexpand.c:3163
+#: cfgexpand.c:3303
 #, gcc-internal-format, gfc-internal-format
 msgid "output number %d not directly addressable"
 msgstr ""
 
-#: cfgexpand.c:3244
+#: cfgexpand.c:3384
 #, gcc-internal-format
 msgid "%<asm%> operand %d probably does not match constraints"
 msgstr ""
 
-#: cfgexpand.c:3428
+#: cfgexpand.c:3569
 #, gcc-internal-format
 msgid "%<asm%> clobber conflict with output operand"
 msgstr ""
 
-#: cfgexpand.c:3433
+#: cfgexpand.c:3574
 #, gcc-internal-format
 msgid "%<asm%> clobber conflict with input operand"
 msgstr ""
 
-#: cfgexpand.c:6450
+#: cfgexpand.c:6606
 #, gcc-internal-format
 msgid "stack protector not protecting local variables: variable length buffer"
 msgstr ""
 
-#: cfgexpand.c:6454
+#: cfgexpand.c:6610
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "stack protector not protecting function: all local arrays are less than %d "
 "bytes long"
 msgstr ""
 
-#: cfgexpand.c:6714
+#: cfgexpand.c:6873
 #, gcc-internal-format
 msgid "patchable function entry %wu exceeds size %wu"
 msgstr ""
@@ -22814,481 +23713,471 @@ msgstr ""
 msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
 msgstr ""
 
-#: cgraph.c:3140
+#: cgraph.c:3132
 #, gcc-internal-format
 msgid "caller edge count invalid"
 msgstr ""
 
-#: cgraph.c:3236
+#: cgraph.c:3228
 #, gcc-internal-format
 msgid "missing indirect call in speculative call sequence"
 msgstr ""
 
-#: cgraph.c:3241
+#: cgraph.c:3233
 #, gcc-internal-format
 msgid "indirect call in speculative call sequence has no speculative flag"
 msgstr ""
 
-#: cgraph.c:3271
+#: cgraph.c:3263
 #, gcc-internal-format
 msgid "speculative edges are not adjacent"
 msgstr ""
 
-#: cgraph.c:3277
+#: cgraph.c:3269
 #, gcc-internal-format, gfc-internal-format
 msgid "direct call to %s in speculative call sequence has no speculative flag"
 msgstr ""
 
-#: cgraph.c:3283 cgraph.c:3313
+#: cgraph.c:3275 cgraph.c:3305
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "direct call to %s in speculative call sequence has speculative_id %i out of "
 "range"
 msgstr ""
 
-#: cgraph.c:3290
+#: cgraph.c:3282
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "duplicate direct call to %s in speculative call sequence with speculative_id "
 "%i"
 msgstr ""
 
-#: cgraph.c:3301
+#: cgraph.c:3293
 #, gcc-internal-format
 msgid ""
 "call stmt hash does not point to first direct edge of speculative call "
 "sequence"
 msgstr ""
 
-#: cgraph.c:3320
+#: cgraph.c:3312
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "duplicate reference %s in speculative call sequence with speculative_id %i"
 msgstr ""
 
-#: cgraph.c:3333
+#: cgraph.c:3325
 #, gcc-internal-format, gfc-internal-format
 msgid "missing direct call for speculation %i"
 msgstr ""
 
-#: cgraph.c:3338
+#: cgraph.c:3330
 #, gcc-internal-format, gfc-internal-format
 msgid "missing ref for speculation %i"
 msgstr ""
 
-#: cgraph.c:3347
+#: cgraph.c:3339
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "number of speculative targets %i mismatched with "
 "num_speculative_call_targets %i"
 msgstr ""
 
-#: cgraph.c:3376
+#: cgraph.c:3368
 #, gcc-internal-format, gfc-internal-format
 msgid "aux field set for edge %s->%s"
 msgstr ""
 
-#: cgraph.c:3383
+#: cgraph.c:3375
 #, gcc-internal-format
 msgid "cgraph count invalid"
 msgstr ""
 
-#: cgraph.c:3388
+#: cgraph.c:3380
 #, gcc-internal-format
 msgid "inline clone in same comdat group list"
 msgstr ""
 
-#: cgraph.c:3393
+#: cgraph.c:3385
 #, gcc-internal-format
 msgid "inline clone count is not compatible"
 msgstr ""
 
-#: cgraph.c:3400
+#: cgraph.c:3392
 #, gcc-internal-format
 msgid "tp_first_run must be non-negative"
 msgstr ""
 
-#: cgraph.c:3405
+#: cgraph.c:3397
 #, gcc-internal-format
 msgid "local symbols must be defined"
 msgstr ""
 
-#: cgraph.c:3410
+#: cgraph.c:3402
 #, gcc-internal-format
 msgid "externally visible inline clone"
 msgstr ""
 
-#: cgraph.c:3415
+#: cgraph.c:3407
 #, gcc-internal-format
 msgid "inline clone with address taken"
 msgstr ""
 
-#: cgraph.c:3420
+#: cgraph.c:3412
 #, gcc-internal-format
 msgid "inline clone is forced to output"
 msgstr ""
 
-#: cgraph.c:3427
+#: cgraph.c:3419
 #, gcc-internal-format
 msgid "calls_comdat_local is set outside of a comdat group"
 msgstr ""
 
-#: cgraph.c:3432
+#: cgraph.c:3424
 #, gcc-internal-format
 msgid "invalid calls_comdat_local flag"
 msgstr ""
 
-#: cgraph.c:3439
+#: cgraph.c:3431
 #, gcc-internal-format
 msgid "malloc attribute should be used for a function that returns a pointer"
 msgstr ""
 
-#: cgraph.c:3447
+#: cgraph.c:3439
 #, gcc-internal-format, gfc-internal-format
 msgid "aux field set for indirect edge from %s"
 msgstr ""
 
-#: cgraph.c:3453 cgraph.c:3513
+#: cgraph.c:3445 cgraph.c:3505
 #, gcc-internal-format
 msgid "edge count is not compatible with function count"
 msgstr ""
 
-#: cgraph.c:3461
+#: cgraph.c:3453
 #, 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.c:3469 cgraph.c:3540
+#: cgraph.c:3461 cgraph.c:3532
 #, gcc-internal-format
 msgid "edge has both call_stmt and lto_stmt_uid set"
 msgstr ""
 
-#: cgraph.c:3481
+#: cgraph.c:3473
 #, gcc-internal-format, gfc-internal-format
 msgid "comdat-local function called by %s outside its comdat"
 msgstr ""
 
-#: cgraph.c:3491
+#: cgraph.c:3483
 #, gcc-internal-format
 msgid "inlined_to pointer is wrong"
 msgstr ""
 
-#: cgraph.c:3496
+#: cgraph.c:3488
 #, gcc-internal-format
 msgid "multiple inline callers"
 msgstr ""
 
-#: cgraph.c:3503
+#: cgraph.c:3495
 #, gcc-internal-format
 msgid "inlined_to pointer set for noninline callers"
 msgstr ""
 
-#: cgraph.c:3530
+#: cgraph.c:3522
 #, gcc-internal-format
 msgid "caller edge count does not match BB count"
 msgstr ""
 
-#: cgraph.c:3561
+#: cgraph.c:3553
 #, gcc-internal-format
 msgid "indirect call count does not match BB count"
 msgstr ""
 
-#: cgraph.c:3578
+#: cgraph.c:3570
 #, gcc-internal-format
 msgid "reference has both stmt and lto_stmt_uid set"
 msgstr ""
 
-#: cgraph.c:3589
+#: cgraph.c:3581
 #, gcc-internal-format
 msgid "inlined_to pointer is set but no predecessors found"
 msgstr ""
 
-#: cgraph.c:3594
+#: cgraph.c:3586
 #, gcc-internal-format
 msgid "inlined_to pointer refers to itself"
 msgstr ""
 
-#: cgraph.c:3605
+#: cgraph.c:3597
 #, gcc-internal-format
 msgid "cgraph_node has wrong clone_of"
 msgstr ""
 
-#: cgraph.c:3618
+#: cgraph.c:3610
 #, gcc-internal-format
 msgid "cgraph_node has wrong clone list"
 msgstr ""
 
-#: cgraph.c:3624
+#: cgraph.c:3616
 #, gcc-internal-format
 msgid "cgraph_node is in clone list but it is not clone"
 msgstr ""
 
-#: cgraph.c:3629
+#: cgraph.c:3621
 #, gcc-internal-format
 msgid "cgraph_node has wrong prev_clone pointer"
 msgstr ""
 
-#: cgraph.c:3634
+#: cgraph.c:3626
 #, gcc-internal-format
 msgid "double linked list of clones corrupted"
 msgstr ""
 
-#: cgraph.c:3646
+#: cgraph.c:3638
 #, gcc-internal-format
 msgid "Alias has call edges"
 msgstr ""
 
-#: cgraph.c:3652
+#: cgraph.c:3644
 #, gcc-internal-format
 msgid "Alias has non-alias reference"
 msgstr ""
 
-#: cgraph.c:3657
+#: cgraph.c:3649
 #, gcc-internal-format
 msgid "Alias has more than one alias reference"
 msgstr ""
 
-#: cgraph.c:3664
+#: cgraph.c:3656
 #, gcc-internal-format
 msgid "Analyzed alias has no reference"
 msgstr ""
 
-#: cgraph.c:3673
+#: cgraph.c:3665
 #, gcc-internal-format
 msgid "No edge out of thunk node"
 msgstr ""
 
-#: cgraph.c:3678
+#: cgraph.c:3670
 #, gcc-internal-format
 msgid "More than one edge out of thunk node"
 msgstr ""
 
-#: cgraph.c:3683
+#: cgraph.c:3675
 #, gcc-internal-format
 msgid "Thunk is not supposed to have body"
 msgstr ""
 
-#: cgraph.c:3717
+#: cgraph.c:3709
 #, gcc-internal-format
 msgid "shared call_stmt:"
 msgstr ""
 
-#: cgraph.c:3725
+#: cgraph.c:3717
 #, gcc-internal-format
 msgid "edge points to wrong declaration:"
 msgstr ""
 
-#: cgraph.c:3734
+#: cgraph.c:3726
 #, gcc-internal-format
 msgid ""
 "an indirect edge with unknown callee corresponding to a call_stmt with a "
 "known declaration:"
 msgstr ""
 
-#: cgraph.c:3744
+#: cgraph.c:3736
 #, gcc-internal-format
 msgid "missing callgraph edge for call stmt:"
 msgstr ""
 
-#: cgraph.c:3754
+#: cgraph.c:3746
 #, gcc-internal-format
 msgid "reference to dead statement"
 msgstr ""
 
-#: cgraph.c:3767
+#: cgraph.c:3759
 #, gcc-internal-format, gfc-internal-format
 msgid "edge %s->%s has no corresponding call_stmt"
 msgstr ""
 
-#: cgraph.c:3779
+#: cgraph.c:3771
 #, gcc-internal-format, gfc-internal-format
 msgid "an indirect edge from %s has no corresponding call_stmt"
 msgstr ""
 
-#: cgraph.c:3794 cgraph.c:3807
+#: cgraph.c:3790 cgraph.c:3803
 #, gcc-internal-format
 msgid "missing origin for a node in a nested list"
 msgstr ""
 
-#: cgraph.c:3799
+#: cgraph.c:3795
 #, gcc-internal-format
 msgid "origin points to a different parent"
 msgstr ""
 
-#: cgraph.c:3814
+#: cgraph.c:3811
 #, gcc-internal-format
 msgid "verify_cgraph_node failed"
 msgstr ""
 
-#: cgraph.c:3925 varpool.c:303
+#: cgraph.c:3933 varpool.c:304
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: section %s.%d is missing"
 msgstr ""
 
-#: cgraphunit.c:728
-#, gcc-internal-format
-msgid "multiple versions for one symbol"
-msgstr ""
-
-#: cgraphunit.c:739
+#: cgraphunit.c:740
 #, gcc-internal-format
 msgid "duplicate definition of a symbol version"
 msgstr ""
 
-#: cgraphunit.c:741
+#: cgraphunit.c:742
 #, gcc-internal-format
 msgid "same version was previously defined here"
 msgstr ""
 
-#: cgraphunit.c:747
+#: cgraphunit.c:748
 #, gcc-internal-format
 msgid "symbol needs to be defined to have a version"
 msgstr ""
 
-#: cgraphunit.c:753
+#: cgraphunit.c:754
 #, gcc-internal-format
 msgid "common symbol cannot be versioned"
 msgstr ""
 
-#: cgraphunit.c:759
+#: cgraphunit.c:760
 #, gcc-internal-format
 msgid "comdat symbol cannot be versioned"
 msgstr ""
 
-#: cgraphunit.c:765
+#: cgraphunit.c:766
 #, gcc-internal-format
 msgid "%<weakref%> cannot be versioned"
 msgstr ""
 
-#: cgraphunit.c:771
+#: cgraphunit.c:772
 #, gcc-internal-format
 msgid "versioned symbol must be public"
 msgstr ""
 
-#: cgraphunit.c:777
+#: cgraphunit.c:778
 #, gcc-internal-format
 msgid "versioned symbol must have default visibility"
 msgstr ""
 
-#: cgraphunit.c:809
+#: cgraphunit.c:811
 #, gcc-internal-format
 msgid "%<weakref%> attribute should be accompanied with an %<alias%> attribute"
 msgstr ""
 
-#: cgraphunit.c:861
+#: cgraphunit.c:863
 #, gcc-internal-format
 msgid "%<flatten%> attribute is ignored on aliases"
 msgstr ""
 
-#: cgraphunit.c:869 cgraphunit.c:920
+#: cgraphunit.c:871 cgraphunit.c:922
 #, gcc-internal-format
 msgid "%<externally_visible%> attribute have effect only on public objects"
 msgstr ""
 
-#: cgraphunit.c:880
+#: cgraphunit.c:882
 #, gcc-internal-format
 msgid "%<weakref%> attribute ignored because function is defined"
 msgstr ""
 
-#: cgraphunit.c:895
+#: cgraphunit.c:897
 #, gcc-internal-format
 msgid "%<alias%> attribute ignored because function is defined"
 msgstr ""
 
-#: cgraphunit.c:903
+#: cgraphunit.c:905
 #, gcc-internal-format
 msgid "%<always_inline%> function might not be inlinable"
 msgstr ""
 
-#: cgraphunit.c:928
+#: cgraphunit.c:930
 #, gcc-internal-format
 msgid "%<weakref%> attribute ignored because variable is initialized"
 msgstr ""
 
 #. include_self=
-#: cgraphunit.c:1077 c/c-decl.c:11836
+#: cgraphunit.c:1079 c/c-decl.c:12091
 #, gcc-internal-format
 msgid "%q+F used but never defined"
 msgstr ""
 
-#: cgraphunit.c:1079 c/c-decl.c:11846
+#: cgraphunit.c:1081 c/c-decl.c:12101
 #, gcc-internal-format
 msgid "%q+F declared %<static%> but never defined"
 msgstr ""
 
-#: cgraphunit.c:1124
+#: cgraphunit.c:1126
 #, gcc-internal-format
 msgid "%qD defined but not used"
 msgstr ""
 
-#: cgraphunit.c:1459
+#: cgraphunit.c:1461
 #, gcc-internal-format
 msgid "%<ifunc%> resolver for %qD must return %qT"
 msgstr ""
 
-#: cgraphunit.c:1462 cgraphunit.c:1485
+#: cgraphunit.c:1464 cgraphunit.c:1487
 #, gcc-internal-format
 msgid "resolver indirect function declared here"
 msgstr ""
 
-#: cgraphunit.c:1482
+#: cgraphunit.c:1484
 #, gcc-internal-format
 msgid "%<ifunc%> resolver for %qD should return %qT"
 msgstr ""
 
-#: cgraphunit.c:1492
+#: cgraphunit.c:1494
 #, gcc-internal-format
 msgid "%qD alias between functions of incompatible types %qT and %qT"
 msgstr ""
 
-#: cgraphunit.c:1495 cgraphunit.c:1577
+#: cgraphunit.c:1497 cgraphunit.c:1579
 #, gcc-internal-format
 msgid "aliased declaration here"
 msgstr ""
 
-#: cgraphunit.c:1533 c-family/c-pragma.c:340
+#: cgraphunit.c:1535 c-family/c-pragma.c:340
 #, gcc-internal-format
 msgid "%q+D aliased to undefined symbol %qE"
 msgstr ""
 
-#: cgraphunit.c:1549
+#: cgraphunit.c:1551
 #, gcc-internal-format
 msgid "%q+D aliased to external symbol %qE"
 msgstr ""
 
-#: cgraphunit.c:1574
+#: cgraphunit.c:1576
 #, gcc-internal-format
 msgid "%q+D alias between function and variable is not supported"
 msgstr ""
 
-#: cgraphunit.c:1648
+#: cgraphunit.c:1650
 #, gcc-internal-format
 msgid "failed to reclaim unneeded function"
 msgstr ""
 
-#: cgraphunit.c:1676
+#: cgraphunit.c:1678
 #, gcc-internal-format
 msgid "failed to reclaim unneeded function in same comdat group"
 msgstr ""
 
-#: cgraphunit.c:1947
-#, gcc-internal-format
-msgid "generic thunk code fails for method %qD which uses %<...%>"
-msgstr ""
-
-#: cgraphunit.c:2328
+#: cgraphunit.c:1854
 #, gcc-internal-format
 msgid "size of return value of %q+D is %u bytes"
 msgstr ""
 
-#: cgraphunit.c:2332
+#: cgraphunit.c:1858
 #, gcc-internal-format
 msgid "size of return value of %q+D is larger than %wu bytes"
 msgstr ""
 
-#: cgraphunit.c:2855
+#: cgraphunit.c:2391
 #, gcc-internal-format
 msgid "nodes with unreleased memory found"
 msgstr ""
@@ -23308,146 +24197,146 @@ msgstr ""
 msgid "%s returned %d exit status"
 msgstr ""
 
-#: collect-utils.c:134
+#: collect-utils.c:138
 #, gcc-internal-format, gfc-internal-format
 msgid "could not open response file %s"
 msgstr ""
 
-#: collect-utils.c:140
+#: collect-utils.c:144
 #, gcc-internal-format, gfc-internal-format
 msgid "could not write to response file %s"
 msgstr ""
 
-#: collect-utils.c:146
+#: collect-utils.c:150
 #, gcc-internal-format, gfc-internal-format
 msgid "could not close response file %s"
 msgstr ""
 
-#: collect-utils.c:180
+#: collect-utils.c:184
 #, gcc-internal-format
 msgid "cannot find %qs"
 msgstr ""
 
-#: collect-utils.c:184 collect2.c:2378 gcc.c:3243 gcc.c:7455
+#: collect-utils.c:188 collect2.c:2414 gcc.c:3392 gcc.c:7583
 #, gcc-internal-format
 msgid "%<pex_init%> failed: %m"
 msgstr ""
 
-#: collect-utils.c:193 collect2.c:2387 collect2.c:2556 gcc.c:2541 gcc.c:4697
+#: collect-utils.c:197 collect2.c:2423 collect2.c:2592 gcc.c:2690
 #, gcc-internal-format
 msgid "%s: %m"
 msgstr ""
 
-#: collect2.c:621
+#: collect2.c:622
 #, gcc-internal-format
 msgid "environment variable %<COLLECT_LTO_WRAPPER%> must be set"
 msgstr ""
 
-#: collect2.c:762
+#: collect2.c:765
 #, gcc-internal-format, gfc-internal-format
 msgid "ld returned %d exit status"
 msgstr ""
 
-#: collect2.c:921 gcc.c:7974 config/gcn/mkoffload.c:752
-#: config/i386/intelmic-mkoffload.c:557 config/nvptx/mkoffload.c:417
+#: collect2.c:924 gcc.c:8102 config/gcn/mkoffload.c:765
+#: config/i386/intelmic-mkoffload.c:597 config/nvptx/mkoffload.c:418
 #, gcc-internal-format
 msgid "atexit failed"
 msgstr ""
 
-#: collect2.c:1043
+#: collect2.c:1052
 #, gcc-internal-format
 msgid "no arguments"
 msgstr ""
 
-#: collect2.c:1295 opts.c:1008
+#: collect2.c:1313 opts.c:1064
 #, gcc-internal-format
 msgid "LTO support has not been enabled in this configuration"
 msgstr ""
 
-#: collect2.c:1336 graph.c:55 lto-wrapper.c:1604 lto-wrapper.c:1660
-#: toplev.c:1741 objc/objc-act.c:461
+#: collect2.c:1354 graph.c:55 lto-wrapper.c:1655 lto-wrapper.c:1711
+#: toplev.c:1594 objc/objc-act.c:461
 #, gcc-internal-format
 msgid "cannot open %s: %m"
 msgstr ""
 
-#: collect2.c:1456
+#: collect2.c:1474
 #, gcc-internal-format
 msgid "unknown demangling style %qs"
 msgstr ""
 
-#: collect2.c:1558 collect2.c:1736 collect2.c:1776
+#: collect2.c:1576 collect2.c:1754 collect2.c:1794
 #, gcc-internal-format
 msgid "fopen %s: %m"
 msgstr ""
 
-#: collect2.c:1561 collect2.c:1741 collect2.c:1779
+#: collect2.c:1579 collect2.c:1759 collect2.c:1797
 #, gcc-internal-format
 msgid "fclose %s: %m"
 msgstr ""
 
-#: collect2.c:2312 lto-wrapper.c:1147 lto-wrapper.c:1162 lto/lto-object.c:151
+#: collect2.c:2348 lto-wrapper.c:1170 lto-wrapper.c:1185 lto/lto-object.c:151
 #: lto/lto-object.c:186 lto/lto-object.c:283 lto/lto-object.c:340
 #: lto/lto-object.c:364
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: %s"
 msgstr ""
 
-#: collect2.c:2352
+#: collect2.c:2388
 #, gcc-internal-format
 msgid "cannot find %<nm%>"
 msgstr ""
 
-#: collect2.c:2400
+#: collect2.c:2436
 #, gcc-internal-format
 msgid "cannot open nm output: %m"
 msgstr ""
 
-#: collect2.c:2455
+#: collect2.c:2491
 #, gcc-internal-format, gfc-internal-format
 msgid "init function found in object %s"
 msgstr ""
 
-#: collect2.c:2466
+#: collect2.c:2502
 #, gcc-internal-format, gfc-internal-format
 msgid "fini function found in object %s"
 msgstr ""
 
-#: collect2.c:2523
+#: collect2.c:2559
 #, gcc-internal-format
 msgid "cannot find %<ldd%>"
 msgstr ""
 
-#: collect2.c:2548
+#: collect2.c:2584
 #, gcc-internal-format
 msgid "pex_init failed: %m"
 msgstr ""
 
-#: collect2.c:2569
+#: collect2.c:2605
 #, gcc-internal-format
 msgid "cannot open ldd output: %m"
 msgstr ""
 
-#: collect2.c:2587
+#: collect2.c:2623
 #, gcc-internal-format, gfc-internal-format
 msgid "dynamic dependency %s not found"
 msgstr ""
 
-#: collect2.c:2599
+#: collect2.c:2635
 #, gcc-internal-format
 msgid "unable to open dynamic dependency %qs"
 msgstr ""
 
-#: collect2.c:2750
+#: collect2.c:2786
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: not a COFF file"
 msgstr ""
 
-#: collect2.c:2907
+#: collect2.c:2943
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: cannot open as COFF file"
 msgstr ""
 
-#: collect2.c:2966
+#: collect2.c:3002
 #, gcc-internal-format, gfc-internal-format
 msgid "library lib%s not found"
 msgstr ""
@@ -23586,12 +24475,12 @@ msgstr ""
 msgid "error writing %qs"
 msgstr ""
 
-#: coverage.c:1241
+#: coverage.c:1267
 #, gcc-internal-format
 msgid "filename %qs does not start with profile prefix %qs"
 msgstr ""
 
-#: coverage.c:1287
+#: coverage.c:1313
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot open %s"
 msgstr ""
@@ -23606,52 +24495,52 @@ msgstr ""
 msgid "bytecode stream: found non-null terminated string"
 msgstr ""
 
-#: dbgcnt.c:128
+#: dbgcnt.c:132
 #, gcc-internal-format
 msgid "Interval overlap of %<-fdbg-cnt=%s%>: [%u, %u] and [%u, %u]"
 msgstr ""
 
-#: dbgcnt.c:143
+#: dbgcnt.c:149
 #, gcc-internal-format
 msgid "%<-fdbg-cnt=%s:%d-%d%> has smaller upper limit than the lower"
 msgstr ""
 
-#: dbgcnt.c:155
+#: dbgcnt.c:161
 #, gcc-internal-format
 msgid "cannot find a valid counter name %qs of %<-fdbg-cnt=%> option"
 msgstr ""
 
-#: dbgcnt.c:226
+#: dbgcnt.c:232
 #, gcc-internal-format
 msgid "counter name"
 msgstr ""
 
-#: dbgcnt.c:226
+#: dbgcnt.c:233
+#, gcc-internal-format
+msgid "counter value"
+msgstr ""
+
+#: dbgcnt.c:233
 #, gcc-internal-format
 msgid "closed intervals"
 msgstr ""
 
-#: dbxout.c:3380
+#: dbxout.c:3381
 #, gcc-internal-format
 msgid "common symbol debug info is not structured as symbol+offset"
 msgstr ""
 
-#: dbxout.c:3911
+#: dbxout.c:3912
 #, gcc-internal-format
 msgid "global destructors not supported on this target"
 msgstr ""
 
-#: dbxout.c:3928
+#: dbxout.c:3929
 #, gcc-internal-format
 msgid "global constructors not supported on this target"
 msgstr ""
 
-#: diagnostic.c:1824
-#, gcc-internal-format, gfc-internal-format
-msgid "in %s, at %s:%d"
-msgstr ""
-
-#: diagnostic.c:1940
+#: diagnostic.c:2023
 #, gcc-internal-format
 msgid "debug path"
 msgstr ""
@@ -23671,45 +24560,45 @@ msgstr ""
 msgid "could not open dump file %qs: %m"
 msgstr ""
 
-#: dumpfile.c:1828
+#: dumpfile.c:1844
 #, gcc-internal-format
 msgid "ignoring unknown option %q.*s"
 msgstr ""
 
-#: dumpfile.c:1910
+#: dumpfile.c:1926
 #, gcc-internal-format
 msgid ""
 "unrecognized command-line option %<-fdump-%s%>; did you mean %<-fdump-%s%>?"
 msgstr ""
 
-#: dumpfile.c:1913
+#: dumpfile.c:1929
 #, gcc-internal-format
 msgid "unrecognized command-line option %<-fdump-%s%>"
 msgstr ""
 
-#: dumpfile.c:1986
+#: dumpfile.c:2002
 #, gcc-internal-format
 msgid "unknown option %q.*s in %<-fopt-info-%s%>"
 msgstr ""
 
-#: dumpfile.c:2018
+#: dumpfile.c:2034
 #, gcc-internal-format
 msgid "ignoring possibly conflicting option %<-fopt-info-%s%>"
 msgstr ""
 
-#: dwarf2out.c:1120
+#: dwarf2out.c:1130
 #, gcc-internal-format
 msgid ""
 "multiple EH personalities are supported only with assemblers supporting %<."
 "cfi_personality%> directive"
 msgstr ""
 
-#: dwarf2out.c:10991
+#: dwarf2out.c:11035
 #, gcc-internal-format
 msgid "%<-gdwarf-6%> is output as version 5 with incompatibilities"
 msgstr ""
 
-#: dwarf2out.c:14515
+#: dwarf2out.c:14629
 #, gcc-internal-format, gfc-internal-format
 msgid "non-delegitimized UNSPEC %s (%d) found in variable location"
 msgstr ""
@@ -23729,7 +24618,7 @@ msgstr ""
 msgid "internal consistency failure"
 msgstr ""
 
-#: emit-rtl.c:4027
+#: emit-rtl.c:4038
 #, gcc-internal-format
 msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
 msgstr ""
@@ -23789,64 +24678,71 @@ msgstr ""
 msgid "%<lp_array%> does not match %<region_tree%>"
 msgstr ""
 
-#: except.c:3517 tree.c:14718 value-prof.c:534
+#: except.c:3517 tree.c:14913 value-prof.c:537
 #, gcc-internal-format
 msgid "%qs failed"
 msgstr ""
 
-#: explow.c:1530
+#: explow.c:1550
 #, gcc-internal-format
 msgid "stack limits not supported on this target"
 msgstr ""
 
-#: expmed.c:356
+#: expmed.c:359
 #, gcc-internal-format
 msgid "reverse scalar storage order"
 msgstr ""
 
-#: expmed.c:373
+#: expmed.c:376
 #, gcc-internal-format
 msgid "reverse floating-point scalar storage order"
 msgstr ""
 
-#: expmed.c:414
+#: expmed.c:418
 #, gcc-internal-format, gfc-internal-format
 msgid "reverse storage order for %smode"
 msgstr ""
 
-#: expmed.c:660
+#: expmed.c:664
 #, gcc-internal-format
 msgid ""
 "write of %wu-bit data outside the bound of destination object, data "
 "truncated into %wu-bit"
 msgstr ""
 
-#: expr.c:11214
+#: expr.c:11253
 #, gcc-internal-format
 msgid "%Kcall to %qs declared with attribute error: %s"
 msgstr ""
 
-#: expr.c:11228
+#: expr.c:11267
 #, gcc-internal-format
 msgid "%Kcall to %qs declared with attribute warning: %s"
 msgstr ""
 
+#: expr.c:12305
+#, gcc-internal-format
+msgid ""
+"assuming signed overflow does not occur when simplifying %<X - Y %s 0%> to "
+"%<X %s Y%>"
+msgstr ""
+
 #: file-prefix-map.c:50
 #, gcc-internal-format
 msgid "invalid argument %qs to %qs"
 msgstr ""
 
-#: final.c:1797
+#: final.c:1799
 #, gcc-internal-format
 msgid "the frame size of %wu bytes is larger than %wu bytes"
 msgstr ""
 
-#: final.c:4809 toplev.c:1565 tree-cfgcleanup.c:1499
+#: final.c:4827 toplev.c:1418 tree-cfgcleanup.c:1521
 #, gcc-internal-format
 msgid "could not open final insn dump file %qs: %m"
 msgstr ""
 
-#: final.c:4878 tree-cfgcleanup.c:1516
+#: final.c:4896 tree-cfgcleanup.c:1538
 #, gcc-internal-format
 msgid "could not close final insn dump file %qs: %m"
 msgstr ""
@@ -23856,252 +24752,252 @@ msgstr ""
 msgid "large fixed-point constant implicitly truncated to fixed-point type"
 msgstr ""
 
-#: fold-const.c:4563 fold-const.c:4573
+#: fold-const.c:4617 fold-const.c:4627
 #, gcc-internal-format, gfc-internal-format
 msgid "comparison is always %d due to width of bit-field"
 msgstr ""
 
-#: fold-const.c:5927 tree-ssa-reassoc.c:2752 tree-ssa-reassoc.c:3663
+#: fold-const.c:5981 tree-ssa-reassoc.c:2736 tree-ssa-reassoc.c:3752
 #, gcc-internal-format
 msgid "assuming signed overflow does not occur when simplifying range test"
 msgstr ""
 
-#: fold-const.c:6380 fold-const.c:6394
+#: fold-const.c:6441 fold-const.c:6455
 #, gcc-internal-format, gfc-internal-format
 msgid "comparison is always %d"
 msgstr ""
 
-#: fold-const.c:6538
+#: fold-const.c:6599
 #, gcc-internal-format
 msgid "%<or%> of unmatched not-equal tests is always 1"
 msgstr ""
 
-#: fold-const.c:6543
+#: fold-const.c:6604
 #, gcc-internal-format
 msgid "%<and%> of mutually exclusive equal-tests is always 0"
 msgstr ""
 
-#: fold-const.c:9313
+#: fold-const.c:9792
 #, gcc-internal-format
 msgid ""
 "assuming signed overflow does not occur when reducing constant in comparison"
 msgstr ""
 
-#: fold-const.c:9713
+#: fold-const.c:10192
 #, gcc-internal-format
 msgid ""
 "assuming signed overflow does not occur when combining constants around a "
 "comparison"
 msgstr ""
 
-#: fold-const.c:12969
+#: fold-const.c:13449
 #, gcc-internal-format
 msgid "fold check: original tree changed by fold"
 msgstr ""
 
-#: function.c:249
+#: function.c:251
 #, gcc-internal-format
 msgid "total size of local objects %wu exceeds maximum %wu"
 msgstr ""
 
-#: function.c:253
+#: function.c:255
 #, gcc-internal-format
 msgid "total size of local objects exceeds maximum %wu"
 msgstr ""
 
-#: function.c:1784 gimplify.c:6274 gimplify.c:6434
+#: function.c:1786 gimplify.c:6328 gimplify.c:6488
 #, gcc-internal-format
 msgid "impossible constraint in %<asm%>"
 msgstr ""
 
-#: function.c:4262
+#: function.c:4276
 #, gcc-internal-format
 msgid "variable %q+D might be clobbered by %<longjmp%> or %<vfork%>"
 msgstr ""
 
-#: function.c:4283
+#: function.c:4297
 #, gcc-internal-format
 msgid "argument %q+D might be clobbered by %<longjmp%> or %<vfork%>"
 msgstr ""
 
-#: function.c:4953
+#: function.c:4968
 #, gcc-internal-format
 msgid "function returns an aggregate"
 msgstr ""
 
-#: gcc.c:2071
+#: gcc.c:2194
 #, gcc-internal-format
 msgid "cannot open nested response file"
 msgstr ""
 
-#: gcc.c:2082
+#: gcc.c:2231
 #, gcc-internal-format
 msgid "cannot close nonexistent response file"
 msgstr ""
 
-#: gcc.c:2105
+#: gcc.c:2254
 #, gcc-internal-format, gfc-internal-format
 msgid "could not open temporary response file %s"
 msgstr ""
 
-#: gcc.c:2112
+#: gcc.c:2261
 #, gcc-internal-format, gfc-internal-format
 msgid "could not write to temporary response file %s"
 msgstr ""
 
-#: gcc.c:2118
+#: gcc.c:2267
 #, gcc-internal-format, gfc-internal-format
 msgid "could not close temporary response file %s"
 msgstr ""
 
 #. This leaves DESC open, but the OS will save us.
-#: gcc.c:2150
+#: gcc.c:2299
 #, gcc-internal-format
 msgid "cannot read spec file %qs: %m"
 msgstr ""
 
-#: gcc.c:2244 gcc.c:2265
+#: gcc.c:2393 gcc.c:2414
 #, gcc-internal-format, gfc-internal-format
 msgid "specs %%include syntax malformed after %ld characters"
 msgstr ""
 
-#: gcc.c:2292 gcc.c:2302 gcc.c:2313 gcc.c:2324
+#: gcc.c:2441 gcc.c:2451 gcc.c:2462 gcc.c:2473
 #, gcc-internal-format, gfc-internal-format
 msgid "specs %%rename syntax malformed after %ld characters"
 msgstr ""
 
-#: gcc.c:2335
+#: gcc.c:2484
 #, gcc-internal-format, gfc-internal-format
 msgid "specs %s spec was not found to be renamed"
 msgstr ""
 
-#: gcc.c:2343
+#: gcc.c:2492
 #, gcc-internal-format
 msgid "%s: attempt to rename spec %qs to already defined spec %qs"
 msgstr ""
 
-#: gcc.c:2365
+#: gcc.c:2514
 #, gcc-internal-format, gfc-internal-format
 msgid "specs unknown %% command after %ld characters"
 msgstr ""
 
-#: gcc.c:2377 gcc.c:2391
+#: gcc.c:2526 gcc.c:2540
 #, gcc-internal-format, gfc-internal-format
 msgid "specs file malformed after %ld characters"
 msgstr ""
 
-#: gcc.c:2446
+#: gcc.c:2595
 #, gcc-internal-format
 msgid "spec file has no spec for linking"
 msgstr ""
 
-#: gcc.c:2994 gcc.c:3031
+#: gcc.c:3143 gcc.c:3180
 #, gcc-internal-format
 msgid "system path %qs is not absolute"
 msgstr ""
 
-#: gcc.c:3121
+#: gcc.c:3270
 #, gcc-internal-format
 msgid "%<-pipe%> not supported"
 msgstr ""
 
-#: gcc.c:3260 gcc.c:7464
+#: gcc.c:3409 gcc.c:7592
 #, gcc-internal-format
 msgid "cannot execute %qs: %s: %m"
 msgstr ""
 
-#: gcc.c:3261 gcc.c:7465
+#: gcc.c:3410 gcc.c:7593
 #, gcc-internal-format
 msgid "cannot execute %qs: %s"
 msgstr ""
 
-#: gcc.c:3280
+#: gcc.c:3429
 #, gcc-internal-format
 msgid "failed to get exit status: %m"
 msgstr ""
 
-#: gcc.c:3286
+#: gcc.c:3435
 #, gcc-internal-format
 msgid "failed to get process times: %m"
 msgstr ""
 
 #. The inferior failed to catch the signal.
-#: gcc.c:3312 gcc.c:3336
+#: gcc.c:3461 gcc.c:3485
 #, gcc-internal-format, gfc-internal-format
 msgid "%s signal terminated program %s"
 msgstr ""
 
-#: gcc.c:3814 opts-common.c:1364 opts-common.c:1396
+#: gcc.c:3963 opts-common.c:1400 opts-common.c:1432
 #, gcc-internal-format
 msgid "unrecognized command-line option %qs"
 msgstr ""
 
-#: gcc.c:3879
+#: gcc.c:4028
 #, gcc-internal-format, gfc-internal-format
 msgid "GCC is not configured to support %s as offload target"
 msgstr ""
 
-#: gcc.c:4198
+#: gcc.c:4347
 #, gcc-internal-format
 msgid "%qs is an unknown %<-save-temps%> option"
 msgstr ""
 
-#: gcc.c:4725 toplev.c:860
+#: gcc.c:4842 toplev.c:719
 #, gcc-internal-format
 msgid "input file %qs is the same as output file"
 msgstr ""
 
-#: gcc.c:4730
+#: gcc.c:4847
 #, gcc-internal-format
 msgid "output filename may not be empty"
 msgstr ""
 
-#: gcc.c:5103
+#: gcc.c:5231
 #, gcc-internal-format
 msgid "%<-pipe%> ignored because %<-save-temps%> specified"
 msgstr ""
 
-#: gcc.c:5191
+#: gcc.c:5319
 #, gcc-internal-format
 msgid "%<-x %s%> after last input file has no effect"
 msgstr ""
 
-#: gcc.c:5394
+#: gcc.c:5522
 #, gcc-internal-format
 msgid "unable to locate default linker script %qs in the library search paths"
 msgstr ""
 
-#: gcc.c:5601
+#: gcc.c:5729
 #, gcc-internal-format
 msgid "switch %qs does not start with %<-%>"
 msgstr ""
 
-#: gcc.c:5605
+#: gcc.c:5733
 #, gcc-internal-format
 msgid "spec-generated switch is just %<-%>"
 msgstr ""
 
-#: gcc.c:5829
+#: gcc.c:5957
 #, gcc-internal-format
 msgid "spec %qs invalid"
 msgstr ""
 
-#: gcc.c:5990
+#: gcc.c:6118
 #, gcc-internal-format
 msgid "spec %qs has invalid %<%%0%c%>"
 msgstr ""
 
-#: gcc.c:6269
+#: gcc.c:6397
 #, gcc-internal-format
 msgid "spec %qs has invalid %<%%W%c%>"
 msgstr ""
 
-#: gcc.c:6285
+#: gcc.c:6413
 #, gcc-internal-format
 msgid "spec %qs has invalid %<%%@%c%>"
 msgstr ""
 
-#: gcc.c:6306
+#: gcc.c:6434
 #, gcc-internal-format
 msgid "spec %qs has invalid %<%%x%c%>"
 msgstr ""
@@ -24109,222 +25005,235 @@ 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.c:6517
+#: gcc.c:6645
 #, gcc-internal-format
 msgid "spec failure: %<%%*%> has not been initialized by pattern match"
 msgstr ""
 
-#: gcc.c:6568
+#: gcc.c:6696
 #, gcc-internal-format
 msgid "spec failure: unrecognized spec option %qc"
 msgstr ""
 
-#: gcc.c:6634
+#: gcc.c:6762
 #, gcc-internal-format
 msgid "unknown spec function %qs"
 msgstr ""
 
-#: gcc.c:6664
+#: gcc.c:6792
 #, gcc-internal-format
 msgid "error in arguments to spec function %qs"
 msgstr ""
 
-#: gcc.c:6723
+#: gcc.c:6851
 #, gcc-internal-format
 msgid "malformed spec function name"
 msgstr ""
 
 #. )
-#: gcc.c:6726
+#: gcc.c:6854
 #, gcc-internal-format
 msgid "no arguments for spec function"
 msgstr ""
 
-#: gcc.c:6745
+#: gcc.c:6873
 #, gcc-internal-format
 msgid "malformed spec function arguments"
 msgstr ""
 
-#: gcc.c:6924
+#: gcc.c:7052
 #, gcc-internal-format
 msgid "braced spec %qs ends in escape"
 msgstr ""
 
-#: gcc.c:7059
+#: gcc.c:7187
 #, gcc-internal-format
 msgid "braced spec %qs is invalid at %qc"
 msgstr ""
 
-#: gcc.c:7154
+#: gcc.c:7282
 #, gcc-internal-format
 msgid "braced spec body %qs is invalid"
 msgstr ""
 
-#: gcc.c:7763
+#: gcc.c:7891
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: could not determine length of compare-debug file %s"
 msgstr ""
 
-#: gcc.c:7774
+#: gcc.c:7902
 #, gcc-internal-format
 msgid "%s: %<-fcompare-debug%> failure (length)"
 msgstr ""
 
-#: gcc.c:7784 gcc.c:7825
+#: gcc.c:7912 gcc.c:7953
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: could not open compare-debug file %s"
 msgstr ""
 
-#: gcc.c:7804 gcc.c:7841
+#: gcc.c:7932 gcc.c:7969
 #, gcc-internal-format
 msgid "%s: %<-fcompare-debug%> failure"
 msgstr ""
 
-#: gcc.c:8144
+#: gcc.c:8272
 #, gcc-internal-format
 msgid "spec failure: more than one argument to %<SYSROOT_SUFFIX_SPEC%>"
 msgstr ""
 
-#: gcc.c:8169
+#: gcc.c:8297
 #, gcc-internal-format
 msgid "spec failure: more than one argument to %<SYSROOT_HEADERS_SUFFIX_SPEC%>"
 msgstr ""
 
-#: gcc.c:8375
+#: gcc.c:8503
 #, gcc-internal-format
 msgid "unrecognized command-line option %<-%s%>; did you mean %<-%s%>?"
 msgstr ""
 
-#: gcc.c:8379
+#: gcc.c:8507
 #, gcc-internal-format
 msgid "unrecognized command-line option %<-%s%>"
 msgstr ""
 
-#: gcc.c:8505
+#: gcc.c:8633
 #, gcc-internal-format
 msgid "not configured with sysroot headers suffix"
 msgstr ""
 
-#: gcc.c:8566
+#: gcc.c:8694
 #, gcc-internal-format
 msgid "no input files"
 msgstr ""
 
-#: gcc.c:8617
+#: gcc.c:8745
 #, gcc-internal-format
 msgid "cannot specify %<-o%> with %<-c%>, %<-S%> or %<-E%> with multiple files"
 msgstr ""
 
-#: gcc.c:8659
+#: gcc.c:8787
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: %s compiler not installed on this system"
 msgstr ""
 
-#: gcc.c:8684
+#: gcc.c:8812
 #, gcc-internal-format
 msgid "recompiling with %<-fcompare-debug%>"
 msgstr ""
 
-#: gcc.c:8700
+#: gcc.c:8828
 #, gcc-internal-format
 msgid "during %<-fcompare-debug%> recompilation"
 msgstr ""
 
-#: gcc.c:8709
+#: gcc.c:8837
 #, gcc-internal-format
 msgid "comparing final insns dumps"
 msgstr ""
 
-#: gcc.c:8862
+#: gcc.c:8990
 #, gcc-internal-format
 msgid "%<-fuse-linker-plugin%>, but %s not found"
 msgstr ""
 
-#: gcc.c:8895
+#: gcc.c:9024
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: linker input file unused because linking not done"
 msgstr ""
 
-#: gcc.c:8991 c-family/c-opts.c:766
+#. This is can be an indication the user specifed an errorneous
+#. separated option value, (or used the wrong prefix for an
+#. option).
+#: gcc.c:9030
+#, gcc-internal-format
+msgid "%s: linker input file not found: %m"
+msgstr ""
+
+#: gcc.c:9126 c-family/c-opts.c:784
 #, gcc-internal-format
 msgid "cannot use %<-%> as input filename for a precompiled header"
 msgstr ""
 
-#: gcc.c:8997
+#: gcc.c:9132
 #, gcc-internal-format, gfc-internal-format
 msgid "language %s not recognized"
 msgstr ""
 
-#: gcc.c:9237
+#: gcc.c:9372
 #, gcc-internal-format
 msgid "multilib spec %qs is invalid"
 msgstr ""
 
-#: gcc.c:9439
+#: gcc.c:9574
 #, gcc-internal-format
 msgid "multilib exclusions %qs is invalid"
 msgstr ""
 
-#: gcc.c:9503
+#: gcc.c:9638
 #, gcc-internal-format
 msgid "multilib select %qs %qs is invalid"
 msgstr ""
 
-#: gcc.c:9665
+#: gcc.c:9801
 #, gcc-internal-format
 msgid "multilib select %qs is invalid"
 msgstr ""
 
-#: gcc.c:9705
+#: gcc.c:9841
 #, gcc-internal-format
 msgid "multilib exclusion %qs is invalid"
 msgstr ""
 
-#: gcc.c:9931
+#: gcc.c:10092
 #, gcc-internal-format
 msgid "environment variable %qs not defined"
 msgstr ""
 
-#: gcc.c:10071 gcc.c:10076
+#: gcc.c:10259 gcc.c:10264
 #, gcc-internal-format
 msgid "invalid version number %qs"
 msgstr ""
 
-#: gcc.c:10119
+#: gcc.c:10307
 #, gcc-internal-format, gfc-internal-format
 msgid "too few arguments to %%:version-compare"
 msgstr ""
 
-#: gcc.c:10125
+#: gcc.c:10313
 #, gcc-internal-format, gfc-internal-format
 msgid "too many arguments to %%:version-compare"
 msgstr ""
 
-#: gcc.c:10167
+#: gcc.c:10355
 #, gcc-internal-format
 msgid "unknown operator %qs in %%:version-compare"
 msgstr ""
 
-#: gcc.c:10291
+#: gcc.c:10479
 #, gcc-internal-format, gfc-internal-format
 msgid "too many arguments to %%:compare-debug-dump-opt"
 msgstr ""
 
-#: gcc.c:10359
+#: gcc.c:10547
 #, gcc-internal-format, gfc-internal-format
 msgid "too many arguments to %%:compare-debug-self-opt"
 msgstr ""
 
-#: gcc.c:10446
+#: gcc.c:10634
 #, gcc-internal-format, gfc-internal-format
 msgid "too many arguments for %%:dumps"
 msgstr ""
 
-#: gcc.c:10550
+#: gcc.c:10738
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong number of arguments to %%:debug-level-gt"
 msgstr ""
 
+#: gcc.c:10759
+#, gcc-internal-format, gfc-internal-format
+msgid "wrong number of arguments to %%:dwarf-version-gt"
+msgstr ""
+
 #: gcov-tool.c:73
 #, gcc-internal-format, gfc-internal-format
 msgid "error in removing %s"
@@ -24369,7 +25278,7 @@ msgstr ""
 #, gcc-internal-format
 msgid ""
 "%s: %d basic blocks and %d registers; increase %<--param max-gcse-memory%> "
-"above %d"
+"above "
 msgstr ""
 
 #: gencfn-macros.c:195
@@ -24418,7 +25327,7 @@ msgid "duplicate definition of '%s'"
 msgstr ""
 
 #: ggc-common.c:386 ggc-common.c:394 ggc-common.c:463 ggc-common.c:481
-#: ggc-page.c:2493 ggc-page.c:2524 ggc-page.c:2531
+#: ggc-page.c:2492 ggc-page.c:2523 ggc-page.c:2530
 #, gcc-internal-format
 msgid "cannot write PCH file: %m"
 msgstr ""
@@ -24434,7 +25343,7 @@ msgid "cannot write padding to PCH file: %m"
 msgstr ""
 
 #: ggc-common.c:606 ggc-common.c:614 ggc-common.c:617 ggc-common.c:627
-#: ggc-common.c:630 ggc-page.c:2595
+#: ggc-common.c:630 ggc-page.c:2594
 #, gcc-internal-format
 msgid "cannot read PCH file: %m"
 msgstr ""
@@ -24449,7 +25358,7 @@ msgstr ""
 msgid "open /dev/zero: %m"
 msgstr ""
 
-#: ggc-page.c:2509 ggc-page.c:2515
+#: ggc-page.c:2508 ggc-page.c:2514
 #, gcc-internal-format
 msgid "cannot write PCH file"
 msgstr ""
@@ -24468,7 +25377,7 @@ msgstr ""
 msgid "%G%qD destination unchanged after copying no bytes"
 msgstr ""
 
-#: gimple-fold.c:2304 tree-ssa-strlen.c:3310
+#: gimple-fold.c:2304 tree-ssa-strlen.c:3062
 msgid "%G%qD specified bound %E equals destination size"
 msgstr ""
 
@@ -24480,6 +25389,27 @@ msgstr ""
 msgid "%G%qD specified bound %E equals source length"
 msgstr ""
 
+#: gimple-fold.c:4377 gimple-fold.c:4572
+#, gcc-internal-format
+msgid ""
+"flexible array member %qD does not have well defined padding bits for %qs"
+msgstr ""
+
+#: gimple-fold.c:4521
+#, gcc-internal-format
+msgid "PDP11 bit-field handling unsupported in %qs"
+msgstr ""
+
+#: gimple-fold.c:4741
+#, gcc-internal-format, gfc-internal-format
+msgid "%s not supported for variable length aggregates"
+msgstr ""
+
+#: gimple-fold.c:4747
+#, gcc-internal-format, gfc-internal-format
+msgid "%s not supported on this target"
+msgstr ""
+
 #: gimple-ssa-isolate-paths.c:290
 #, gcc-internal-format
 msgid "potential null pointer dereference"
@@ -24495,55 +25425,44 @@ msgstr ""
 msgid "function may return address of local variable"
 msgstr ""
 
-#: gimple-ssa-isolate-paths.c:409 c/c-typeck.c:10755
+#: gimple-ssa-isolate-paths.c:409 c/c-typeck.c:10859
 #, gcc-internal-format
 msgid "function returns address of local variable"
 msgstr ""
 
-#: gimple-ssa-isolate-paths.c:412 tree.c:13048 tree.c:13085 c/c-typeck.c:2932
-#: c/c-typeck.c:3018 c/c-typeck.c:10661 c/c-typeck.c:10678
-#: c/gimple-parser.c:2413 c/gimple-parser.c:2421 cp/call.c:7088 cp/call.c:8922
-#: cp/constexpr.c:850 cp/constexpr.c:3455 cp/cvt.c:1067 cp/cvt.c:1105
-#: cp/decl.c:8041 cp/decl2.c:5571 cp/decl2.c:5616 cp/pt.c:8768
-#: cp/semantics.c:1994 cp/semantics.c:4292 cp/typeck.c:1788 cp/typeck.c:2000
-#: cp/typeck.c:4060 cp/typeck.c:9625
-#, gcc-internal-format
-msgid "declared here"
-msgstr ""
-
 #: gimple-ssa-nonnull-compare.c:102
 #, gcc-internal-format
 msgid "%<nonnull%> argument %qD compared to NULL"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2768 gimple-ssa-sprintf.c:2888
+#: gimple-ssa-sprintf.c:2775 gimple-ssa-sprintf.c:2895
 #, gcc-internal-format
 msgid "%qE output may be truncated before the last format character"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2770 gimple-ssa-sprintf.c:2890
+#: gimple-ssa-sprintf.c:2777 gimple-ssa-sprintf.c:2897
 #, gcc-internal-format
 msgid "%qE output truncated before the last format character"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2773 gimple-ssa-sprintf.c:2893
+#: gimple-ssa-sprintf.c:2780 gimple-ssa-sprintf.c:2900
 #, gcc-internal-format
 msgid "%qE may write a terminating nul past the end of the destination"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2775 gimple-ssa-sprintf.c:2895
+#: gimple-ssa-sprintf.c:2782 gimple-ssa-sprintf.c:2902
 #, gcc-internal-format
 msgid "%qE writing a terminating nul past the end of the destination"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2785
+#: gimple-ssa-sprintf.c:2792
 #, gcc-internal-format
 msgid "%<%.*s%> directive writing %wu byte into a region of size %wu"
 msgid_plural "%<%.*s%> directive writing %wu bytes into a region of size %wu"
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-sprintf.c:2792
+#: gimple-ssa-sprintf.c:2799
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output may be truncated writing %wu byte into a region of "
@@ -24554,7 +25473,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-sprintf.c:2799
+#: gimple-ssa-sprintf.c:2806
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output truncated writing %wu byte into a region of size "
@@ -24565,86 +25484,86 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-sprintf.c:2810
+#: gimple-ssa-sprintf.c:2817
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output may be truncated writing up to %wu bytes into a "
 "region of size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2813
+#: gimple-ssa-sprintf.c:2820
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output truncated writing up to %wu bytes into a region of "
 "size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2815
+#: gimple-ssa-sprintf.c:2822
 #, gcc-internal-format
 msgid "%<%.*s%> directive writing up to %wu bytes into a region of size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2827
+#: gimple-ssa-sprintf.c:2834
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output may be truncated writing likely %wu or more bytes "
 "into a region of size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2830
+#: gimple-ssa-sprintf.c:2837
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output truncated writing likely %wu or more bytes into a "
 "region of size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2833
+#: gimple-ssa-sprintf.c:2840
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive writing likely %wu or more bytes into a region of size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2842
+#: gimple-ssa-sprintf.c:2849
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output may be truncated writing between %wu and %wu bytes "
 "into a region of size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2845
+#: gimple-ssa-sprintf.c:2852
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output truncated writing between %wu and %wu bytes into a "
 "region of size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2848
+#: gimple-ssa-sprintf.c:2855
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive writing between %wu and %wu bytes into a region of size "
 "%wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2857
+#: gimple-ssa-sprintf.c:2864
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output may be truncated writing %wu or more bytes into a "
 "region of size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2860
+#: gimple-ssa-sprintf.c:2867
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output truncated writing %wu or more bytes into a region "
 "of size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2862
+#: gimple-ssa-sprintf.c:2869
 #, gcc-internal-format
 msgid "%<%.*s%> directive writing %wu or more bytes into a region of size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2904
+#: gimple-ssa-sprintf.c:2911
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive writing %wu byte into a region of size between %wu and %wu"
@@ -24654,7 +25573,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-sprintf.c:2911
+#: gimple-ssa-sprintf.c:2918
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output may be truncated writing %wu byte into a region of "
@@ -24665,7 +25584,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-sprintf.c:2919
+#: gimple-ssa-sprintf.c:2926
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output truncated writing %wu byte into a region of size "
@@ -24676,368 +25595,349 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-sprintf.c:2931
+#: gimple-ssa-sprintf.c:2938
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output may be truncated writing up to %wu bytes into a "
 "region of size between %wu and %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2934
+#: gimple-ssa-sprintf.c:2941
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output truncated writing up to %wu bytes into a region of "
 "size between %wu and %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2937
+#: gimple-ssa-sprintf.c:2944
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive writing up to %wu bytes into a region of size between %wu "
 "and %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2950
+#: gimple-ssa-sprintf.c:2957
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output may be truncated writing likely %wu or more bytes "
 "into a region of size between %wu and %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2953
+#: gimple-ssa-sprintf.c:2960
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output truncated writing likely %wu or more bytes into a "
 "region of size between %wu and %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2956
+#: gimple-ssa-sprintf.c:2963
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive writing likely %wu or more bytes into a region of size "
 "between %wu and %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2966
+#: gimple-ssa-sprintf.c:2973
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output may be truncated writing between %wu and %wu bytes "
 "into a region of size between %wu and %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2969
+#: gimple-ssa-sprintf.c:2976
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output truncated writing between %wu and %wu bytes into a "
 "region of size between %wu and %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2972
+#: gimple-ssa-sprintf.c:2979
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive writing between %wu and %wu bytes into a region of size "
 "between %wu and %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2981
+#: gimple-ssa-sprintf.c:2988
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output may be truncated writing %wu or more bytes into a "
 "region of size between %wu and %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2984
+#: gimple-ssa-sprintf.c:2991
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output truncated writing %wu or more bytes into a region "
 "of size between %wu and %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:2987
+#: gimple-ssa-sprintf.c:2994
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive writing %wu or more bytes into a region of size between "
 "%wu and %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3109
+#: gimple-ssa-sprintf.c:3116
 msgid "%G%<%.*s%> directive argument is null"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3188
+#: gimple-ssa-sprintf.c:3195
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output of %wu bytes exceeds minimum required size of 4095"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3194
+#: gimple-ssa-sprintf.c:3201
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output between %wu and %wu bytes exceeds minimum required "
 "size of 4095"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3201
+#: gimple-ssa-sprintf.c:3208
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output between %wu and %wu bytes may exceed minimum "
 "required size of 4095"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3231
+#: gimple-ssa-sprintf.c:3238
 #, gcc-internal-format
 msgid "%<%.*s%> directive output of %wu bytes exceeds %<INT_MAX%>"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3237
+#: gimple-ssa-sprintf.c:3244
 #, gcc-internal-format
 msgid "%<%.*s%> directive output between %wu and %wu bytes exceeds %<INT_MAX%>"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3248
+#: gimple-ssa-sprintf.c:3255
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output of %wu bytes causes result to exceed %<INT_MAX%>"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3254
+#: gimple-ssa-sprintf.c:3261
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output between %wu and %wu bytes causes result to exceed "
 "%<INT_MAX%>"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3265
+#: gimple-ssa-sprintf.c:3272
 #, gcc-internal-format
 msgid ""
 "%<%.*s%> directive output between %wu and %wu bytes may cause result to "
 "exceed %<INT_MAX%>"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3275
+#: gimple-ssa-sprintf.c:3282
 #, gcc-internal-format
 msgid "%<%.*s%> directive argument is not a nul-terminated string"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3288
+#: gimple-ssa-sprintf.c:3295
 #, gcc-internal-format
 msgid "assuming directive output of %wu byte"
 msgid_plural "assuming directive output of %wu bytes"
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-sprintf.c:3295
+#: gimple-ssa-sprintf.c:3302
 #, gcc-internal-format
 msgid "directive argument %qE"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3297
+#: gimple-ssa-sprintf.c:3304
 #, gcc-internal-format
 msgid "directive argument in the range [%E, %E]"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3301
+#: gimple-ssa-sprintf.c:3308
 #, gcc-internal-format
 msgid "using the range [%E, %E] for directive argument"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3321
+#: gimple-ssa-sprintf.c:3328
 #, gcc-internal-format
 msgid "%qE output %wu byte into a destination of size %wu"
 msgid_plural "%qE output %wu bytes into a destination of size %wu"
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-sprintf.c:3326
+#: gimple-ssa-sprintf.c:3333
 #, gcc-internal-format
 msgid "%qE output between %wu and %wu bytes into a destination of size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3331
+#: gimple-ssa-sprintf.c:3338
 #, gcc-internal-format
 msgid ""
 "%qE output %wu or more bytes (assuming %wu) into a destination of size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3336
+#: gimple-ssa-sprintf.c:3343
 #, gcc-internal-format
 msgid "%qE output %wu or more bytes into a destination of size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3347
+#: gimple-ssa-sprintf.c:3354
 #, gcc-internal-format
 msgid "%qE output %wu byte"
 msgid_plural "%qE output %wu bytes"
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-sprintf.c:3351
+#: gimple-ssa-sprintf.c:3358
 #, gcc-internal-format
 msgid "%qE output between %wu and %wu bytes"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3355
+#: gimple-ssa-sprintf.c:3362
 #, gcc-internal-format
 msgid "%qE output %wu or more bytes (assuming %wu)"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3359
+#: gimple-ssa-sprintf.c:3366
 #, gcc-internal-format
 msgid "%qE output %wu or more bytes"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3738
+#: gimple-ssa-sprintf.c:3745
 #, gcc-internal-format
 msgid "%<%.*s%> directive width out of range"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3772
+#: gimple-ssa-sprintf.c:3779
 #, gcc-internal-format
 msgid "%<%.*s%> directive precision out of range"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3905
+#: gimple-ssa-sprintf.c:3912
 msgid "%qE arguments %Z and maybe %Z overlap destination object %qE"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:3917
+#: gimple-ssa-sprintf.c:3924
 msgid "%qE argument %Z overlaps destination object %qE"
 msgid_plural "%qE arguments %Z overlap destination object %qE"
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-sprintf.c:3928
+#: gimple-ssa-sprintf.c:3935
 msgid "%qE argument %Z may overlap destination object %qE"
 msgid_plural "%qE arguments %Z may overlap destination object %qE"
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-sprintf.c:3948
+#: gimple-ssa-sprintf.c:3955
 #, gcc-internal-format
 msgid ""
 "destination object referenced by %<restrict%>-qualified argument 1 was "
 "declared here"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:4538
+#: gimple-ssa-sprintf.c:4541
 #, gcc-internal-format
 msgid "specified bound %wu exceeds maximum object size %wu"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:4549
+#: gimple-ssa-sprintf.c:4552
 #, gcc-internal-format
 msgid "specified bound %wu exceeds %<INT_MAX%>"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:4572
+#: gimple-ssa-sprintf.c:4578
 #, gcc-internal-format
 msgid "specified bound range [%wu, %wu] exceeds %<INT_MAX%>"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:4623
+#: gimple-ssa-sprintf.c:4622
 msgid "%Gnull destination pointer"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:4641
+#: gimple-ssa-sprintf.c:4640
 #, gcc-internal-format
 msgid "specified bound %wu exceeds the size %wu of the destination object"
 msgstr ""
 
-#: gimple-ssa-sprintf.c:4653
+#: gimple-ssa-sprintf.c:4652
 msgid "%Gnull format string"
 msgstr ""
 
-#: gimple-ssa-warn-alloca.c:532
+#: gimple-ssa-warn-alloca.c:288
 msgid "%Guse of %<alloca%>"
 msgstr ""
 
-#: gimple-ssa-warn-alloca.c:569
+#: gimple-ssa-warn-alloca.c:324
 msgid "%Gargument to variable-length array may be too large"
 msgstr ""
 
-#: gimple-ssa-warn-alloca.c:571
+#: gimple-ssa-warn-alloca.c:326
 msgid "%Gargument to %<alloca%> may be too large"
 msgstr ""
 
-#: gimple-ssa-warn-alloca.c:577
+#: gimple-ssa-warn-alloca.c:332
 #, gcc-internal-format
 msgid "limit is %wu bytes, but argument may be as large as %s"
 msgstr ""
 
-#: gimple-ssa-warn-alloca.c:589
+#: gimple-ssa-warn-alloca.c:344
 msgid "%Gargument to variable-length array is too large"
 msgstr ""
 
-#: gimple-ssa-warn-alloca.c:591
+#: gimple-ssa-warn-alloca.c:346
 msgid "%Gargument to %<alloca%> is too large"
 msgstr ""
 
-#: gimple-ssa-warn-alloca.c:596
+#: gimple-ssa-warn-alloca.c:351
 #, gcc-internal-format
 msgid "limit is %wu bytes, but argument is %s"
 msgstr ""
 
-#: gimple-ssa-warn-alloca.c:605
-msgid "%Gvariable-length array bound is unknown"
-msgstr ""
-
-#: gimple-ssa-warn-alloca.c:606
-msgid "%G%<alloca%> bound is unknown"
-msgstr ""
-
-#: gimple-ssa-warn-alloca.c:612
+#: gimple-ssa-warn-alloca.c:360
 msgid "%Gunbounded use of variable-length array"
 msgstr ""
 
-#: gimple-ssa-warn-alloca.c:613
+#: gimple-ssa-warn-alloca.c:361
 msgid "%Gunbounded use of %<alloca%>"
 msgstr ""
 
-#: gimple-ssa-warn-alloca.c:619
+#: gimple-ssa-warn-alloca.c:367
 msgid "%Guse of %<alloca%> within a loop"
 msgstr ""
 
-#: gimple-ssa-warn-alloca.c:625
-msgid ""
-"%Gargument to variable-length array may be too large due to conversion from "
-"%qT to %qT"
-msgstr ""
-
-#: gimple-ssa-warn-alloca.c:628
-msgid ""
-"%Gargument to %<alloca%> may be too large due to conversion from %qT to %qT"
-msgstr ""
-
-#: gimple-ssa-warn-alloca.c:635
+#: gimple-ssa-warn-alloca.c:372
 msgid "%Gargument to variable-length array is zero"
 msgstr ""
 
-#: gimple-ssa-warn-alloca.c:637
+#: gimple-ssa-warn-alloca.c:374
 msgid "%Gargument to %<alloca%> is zero"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1481
+#: gimple-ssa-warn-restrict.c:1491
 msgid ""
 "%G%qD accessing %wu byte at offsets %s and %s overlaps %wu byte at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1483
+#: gimple-ssa-warn-restrict.c:1493
 msgid ""
 "%G%qD accessing %wu byte at offsets %s and %s overlaps %wu bytes at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1487
+#: gimple-ssa-warn-restrict.c:1497
 msgid ""
 "%G%qD accessing %wu bytes at offsets %s and %s overlaps %wu byte at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1489
+#: gimple-ssa-warn-restrict.c:1499
 msgid ""
 "%G%qD accessing %wu bytes at offsets %s and %s overlaps %wu bytes at offset "
 "%s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1496
+#: gimple-ssa-warn-restrict.c:1506
 msgid ""
 "%G%qD accessing %wu byte at offsets %s and %s overlaps between %wu and %wu "
 "bytes at offset %s"
@@ -25047,7 +25947,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.c:1506
+#: gimple-ssa-warn-restrict.c:1516
 msgid ""
 "%G%qD accessing %wu byte at offsets %s and %s overlaps %wu or more bytes at "
 "offset %s"
@@ -25057,7 +25957,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.c:1519
+#: gimple-ssa-warn-restrict.c:1529
 msgid ""
 "%G%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps %wu "
 "byte at offset %s"
@@ -25067,19 +25967,19 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.c:1529
+#: gimple-ssa-warn-restrict.c:1539
 msgid ""
 "%G%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps "
 "between %wu and %wu bytes at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1537
+#: gimple-ssa-warn-restrict.c:1547
 msgid ""
 "%G%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps %wu "
 "or more bytes at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1550
+#: gimple-ssa-warn-restrict.c:1560
 msgid ""
 "%G%qD accessing %wu or more bytes at offsets %s and %s overlaps %wu byte at "
 "offset %s"
@@ -25089,25 +25989,25 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.c:1558
+#: gimple-ssa-warn-restrict.c:1568
 msgid ""
 "%G%qD accessing %wu or more bytes at offsets %s and %s overlaps between %wu "
 "and %wu bytes at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1565
+#: gimple-ssa-warn-restrict.c:1575
 msgid ""
 "%G%qD accessing %wu or more bytes at offsets %s and %s overlaps %wu or more "
 "bytes at offset %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1593
+#: gimple-ssa-warn-restrict.c:1603
 msgid "%G%qD accessing %wu byte may overlap %wu byte"
 msgid_plural "%G%qD accessing %wu bytes may overlap %wu byte"
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.c:1600
+#: gimple-ssa-warn-restrict.c:1610
 msgid ""
 "%G%qD accessing %wu byte at offsets %s and %s may overlap %wu byte at offset "
 "%s"
@@ -25117,13 +26017,13 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.c:1611
+#: gimple-ssa-warn-restrict.c:1621
 msgid "%G%qD accessing %wu byte may overlap up to %wu bytes"
 msgid_plural "%G%qD accessing %wu bytes may overlap up to %wu bytes"
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.c:1618
+#: gimple-ssa-warn-restrict.c:1628
 msgid ""
 "%G%qD accessing %wu byte at offsets %s and %s may overlap up to %wu bytes at "
 "offset %s"
@@ -25133,14 +26033,14 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.c:1631
+#: gimple-ssa-warn-restrict.c:1641
 msgid "%G%qD accessing between %wu and %wu bytes may overlap %wu byte"
 msgid_plural ""
 "%G%qD accessing between %wu and %wu bytes may overlap up to %wu bytes"
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.c:1638
+#: gimple-ssa-warn-restrict.c:1648
 msgid ""
 "%G%qD accessing between %wu and %wu bytes at offsets %s and %s may overlap "
 "%wu byte at offset %s"
@@ -25150,7 +26050,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.c:1650
+#: gimple-ssa-warn-restrict.c:1660
 msgid ""
 "%G%qD accessing %wu or more bytes at offsets %s and %s may overlap %wu byte "
 "at offset %s"
@@ -25160,476 +26060,476 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: gimple-ssa-warn-restrict.c:1693
+#: gimple-ssa-warn-restrict.c:1703
 msgid "%G%qD specified bound %wu exceeds maximum object size %wu"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1699
+#: gimple-ssa-warn-restrict.c:1709
 msgid ""
 "%G%qD specified bound between %wu and %wu exceeds maximum object size %wu"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1758
+#: gimple-ssa-warn-restrict.c:1768
 msgid ""
 "%G%qD pointer overflow between offset %s and size %s accessing array %qD "
 "with type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1763
+#: gimple-ssa-warn-restrict.c:1773 c-family/c-warn.c:3722
 #, gcc-internal-format
 msgid "array %qD declared here"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1768 gimple-ssa-warn-restrict.c:1774
+#: gimple-ssa-warn-restrict.c:1778 gimple-ssa-warn-restrict.c:1784
 msgid "%G%qD pointer overflow between offset %s and size %s"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1791
+#: gimple-ssa-warn-restrict.c:1801
 msgid ""
 "%G%qD forming offset %s is out of the bounds [0, %wu] of object %qD with "
 "type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1794
+#: gimple-ssa-warn-restrict.c:1804
 msgid ""
 "%G%qD offset %s is out of the bounds [0, %wu] of object %qD with type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1800
+#: gimple-ssa-warn-restrict.c:1810
 msgid ""
 "%G%qD forming offset %s is out of the bounds of object %qD with type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1802
+#: gimple-ssa-warn-restrict.c:1812
 msgid "%G%qD offset %s is out of the bounds of object %qD with type %qT"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1808 tree-ssa-uninit.c:569 tree-ssa-uninit.c:647
-#: c/c-decl.c:3856 c/c-decl.c:4129 c/c-typeck.c:8789 cp/class.c:1392
-#: cp/class.c:3186 cp/constexpr.c:954 cp/decl.c:4098 cp/decl.c:11689
-#: cp/decl.c:12162 cp/decl.c:12171 cp/friend.c:386 cp/friend.c:396
-#: cp/parser.c:3362 cp/parser.c:3495 cp/parser.c:3546 cp/parser.c:6597
-#: cp/parser.c:22343
+#: gimple-ssa-warn-restrict.c:1818 tree-ssa-uninit.c:586 tree-ssa-uninit.c:664
+#: c/c-decl.c:3870 c/c-decl.c:4143 c/c-typeck.c:8868 cp/class.c:1450
+#: cp/class.c:3256 cp/constexpr.c:955 cp/decl.c:4187 cp/decl.c:11838
+#: cp/decl.c:12317 cp/decl.c:12326 cp/friend.c:386 cp/friend.c:396
+#: cp/init.c:2675 cp/parser.c:3432 cp/parser.c:3574 cp/parser.c:3625
+#: cp/parser.c:6760 cp/parser.c:23182
 #, gcc-internal-format
 msgid "%qD declared here"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1815
+#: gimple-ssa-warn-restrict.c:1825
 msgid "%G%qD forming offset %s is out of the bounds [0, %wu]"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1817
+#: gimple-ssa-warn-restrict.c:1827
 msgid "%G%qD offset %s is out of the bounds [0, %wu]"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1823
+#: gimple-ssa-warn-restrict.c:1833
 msgid "%G%qD forming offset %s is out of bounds"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1824
+#: gimple-ssa-warn-restrict.c:1834
 msgid "%G%qD offset %s is out of bounds"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1836
+#: gimple-ssa-warn-restrict.c:1846
 msgid "%G%qD offset %s from the object at %qE is out of the bounds of %qT"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1844 gimple-ssa-warn-restrict.c:1865
+#: gimple-ssa-warn-restrict.c:1854 gimple-ssa-warn-restrict.c:1875
 #, gcc-internal-format
 msgid "subobject %qD declared here"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:1854
+#: gimple-ssa-warn-restrict.c:1864
 msgid ""
 "%G%qD offset %s from the object at %qE is out of the bounds of referenced "
 "subobject %qD with type %qT at offset %wi"
 msgstr ""
 
-#: gimple-ssa-warn-restrict.c:2043
+#: gimple-ssa-warn-restrict.c:2064
 msgid "%G%qD source argument is the same as destination"
 msgstr ""
 
-#: gimple-streamer-in.c:210
+#: gimple-streamer-in.c:207
 #, gcc-internal-format, gfc-internal-format
 msgid "bytecode stream: unknown GIMPLE statement tag %s"
 msgstr ""
 
-#: gimple.c:1270
+#: gimple.c:1259
 #, gcc-internal-format, gfc-internal-format
 msgid "gimple check: expected %s(%s), have %s(%s) in %s, at %s:%d"
 msgstr ""
 
-#: gimplify.c:1946
+#: gimplify.c:1969
 #, gcc-internal-format
 msgid "statement will never be executed"
 msgstr ""
 
-#: gimplify.c:2285 gimplify.c:2293
+#: gimplify.c:2308 gimplify.c:2316
 #, gcc-internal-format
 msgid "this statement may fall through"
 msgstr ""
 
-#: gimplify.c:2295
+#: gimplify.c:2318
 #, gcc-internal-format
 msgid "here"
 msgstr ""
 
 #. We've found [[fallthrough]]; at the end of a switch, which the C++
 #. standard says is ill-formed; see [dcl.attr.fallthrough].
-#: gimplify.c:2407 gimplify.c:2430
+#: gimplify.c:2430 gimplify.c:2453
 #, gcc-internal-format
 msgid "attribute %<fallthrough%> not preceding a case label or default label"
 msgstr ""
 
-#: gimplify.c:3512
+#: gimplify.c:3549
 #, gcc-internal-format
 msgid "using result of function returning %<void%>"
 msgstr ""
 
-#: gimplify.c:6275
+#: gimplify.c:6329
 #, gcc-internal-format, gfc-internal-format
 msgid "non-memory output %d must stay in memory"
 msgstr ""
 
-#: gimplify.c:6288
+#: gimplify.c:6342
 #, gcc-internal-format
 msgid "invalid lvalue in %<asm%> output %d"
 msgstr ""
 
-#: gimplify.c:6435
+#: gimplify.c:6489
 #, gcc-internal-format, gfc-internal-format
 msgid "non-memory input %d must stay in memory"
 msgstr ""
 
-#: gimplify.c:6475 gimplify.c:6484
+#: gimplify.c:6529 gimplify.c:6538
 #, gcc-internal-format, gfc-internal-format
 msgid "memory input %d is not directly addressable"
 msgstr ""
 
-#: gimplify.c:7098
+#: gimplify.c:7152
 #, gcc-internal-format
 msgid ""
 "threadprivate variable %qE used in a region with %<order(concurrent)%> clause"
 msgstr ""
 
-#: gimplify.c:7100
+#: gimplify.c:7154
 #, gcc-internal-format
 msgid "enclosing region"
 msgstr ""
 
-#: gimplify.c:7104
+#: gimplify.c:7158
 #, gcc-internal-format
 msgid "threadprivate variable %qE used in target region"
 msgstr ""
 
-#: gimplify.c:7106
+#: gimplify.c:7160
 #, gcc-internal-format
 msgid "enclosing target region"
 msgstr ""
 
-#: gimplify.c:7119
+#: gimplify.c:7173
 #, gcc-internal-format
 msgid "threadprivate variable %qE used in untied task"
 msgstr ""
 
-#: gimplify.c:7121
+#: gimplify.c:7175
 #, gcc-internal-format
 msgid "enclosing task"
 msgstr ""
 
-#: gimplify.c:7197
+#: gimplify.c:7260
 #, gcc-internal-format
 msgid "%qE not specified in enclosing %qs"
 msgstr ""
 
-#: gimplify.c:7199
+#: gimplify.c:7262
 #, gcc-internal-format
 msgid "enclosing %qs"
 msgstr ""
 
-#: gimplify.c:7342
+#: gimplify.c:7405
 #, gcc-internal-format
 msgid "%qE not specified in enclosing OpenACC %qs construct"
 msgstr ""
 
-#: gimplify.c:7344
+#: gimplify.c:7407
 #, gcc-internal-format
 msgid "enclosing OpenACC %qs construct"
 msgstr ""
 
-#: gimplify.c:7405
+#: gimplify.c:7468
 #, gcc-internal-format
 msgid "%qE with %<link%> clause used in %<routine%> function"
 msgstr ""
 
-#: gimplify.c:7413
+#: gimplify.c:7476
 #, gcc-internal-format
 msgid "%qE requires a %<declare%> directive for use in a %<routine%> function"
 msgstr ""
 
-#: gimplify.c:7478
+#: gimplify.c:7541
 #, gcc-internal-format
 msgid "%qE not specified in enclosing %<target%>"
 msgstr ""
 
-#: gimplify.c:7480
+#: gimplify.c:7543
 #, gcc-internal-format
 msgid "enclosing %<target%>"
 msgstr ""
 
-#: gimplify.c:7510 gimplify.c:8822
+#: gimplify.c:7573 gimplify.c:9007
 #, gcc-internal-format
 msgid "variable %qE declared in enclosing %<host_data%> region"
 msgstr ""
 
-#: gimplify.c:7531
+#: gimplify.c:7594
 #, gcc-internal-format
 msgid "%qD referenced in target region does not have a mappable type"
 msgstr ""
 
-#: gimplify.c:7654
+#: gimplify.c:7725
 #, gcc-internal-format
 msgid "iteration variable %qE is predetermined linear"
 msgstr ""
 
-#: gimplify.c:7657
+#: gimplify.c:7728
 #, gcc-internal-format
 msgid "iteration variable %qE should be private"
 msgstr ""
 
-#: gimplify.c:7671
+#: gimplify.c:7742
 #, gcc-internal-format
 msgid "iteration variable %qE should not be firstprivate"
 msgstr ""
 
-#: gimplify.c:7674
+#: gimplify.c:7745
 #, gcc-internal-format
 msgid "iteration variable %qE should not be reduction"
 msgstr ""
 
-#: gimplify.c:7677
+#: gimplify.c:7748
 #, gcc-internal-format
 msgid "iteration variable %qE should not be linear"
 msgstr ""
 
-#: gimplify.c:8431 gimplify.c:8437
+#: gimplify.c:8615 gimplify.c:8621
 #, gcc-internal-format
 msgid "conditional %<lastprivate%> clause on %qs construct"
 msgstr ""
 
-#: gimplify.c:8454
+#: gimplify.c:8638
 #, gcc-internal-format
 msgid "non-scalar variable %qD in conditional %<lastprivate%> clause"
 msgstr ""
 
-#: gimplify.c:8543
+#: gimplify.c:8727
 #, gcc-internal-format
 msgid "%<task%> reduction modifier on a construct with a %<nowait%> clause"
 msgstr ""
 
-#: gimplify.c:8551 gimplify.c:12419
+#: gimplify.c:8735 gimplify.c:12838
 #, gcc-internal-format
 msgid ""
 "invalid %<task%> reduction modifier on construct other than %<parallel%>, "
-"%<for%> or %<sections%>"
+"%qs or %<sections%>"
 msgstr ""
 
-#: gimplify.c:8561 gimplify.c:8567 gimplify.c:8573 gimplify.c:8579
-#: gimplify.c:12412
+#: gimplify.c:8746 gimplify.c:8752 gimplify.c:8758 gimplify.c:8764
+#: gimplify.c:12831
 #, gcc-internal-format
 msgid "%<inscan%> %<reduction%> clause on %qs construct"
 msgstr ""
 
-#: gimplify.c:8666
+#: gimplify.c:8851
 #, gcc-internal-format
 msgid ""
 "%<linear%> clause for variable other than loop iterator specified on "
 "construct combined with %<distribute%>"
 msgstr ""
 
-#: gimplify.c:8990
+#: gimplify.c:9177
 #, gcc-internal-format
 msgid "mapping field %qE of variable length structure"
 msgstr ""
 
-#: gimplify.c:9164
+#: gimplify.c:9359
 #, gcc-internal-format
 msgid "%qE appears more than once in map clauses"
 msgstr ""
 
-#: gimplify.c:9453
+#: gimplify.c:9709
 #, gcc-internal-format
 msgid ""
 "copyprivate variable %qE is not threadprivate or private in outer context"
 msgstr ""
 
-#: gimplify.c:9510
+#: gimplify.c:9766
 #, gcc-internal-format
 msgid "%s variable %qE is private in outer context"
 msgstr ""
 
-#: gimplify.c:9538
+#: gimplify.c:9798
 #, gcc-internal-format
 msgid "expected %qs %<if%> clause modifier rather than %qs"
 msgstr ""
 
-#: gimplify.c:9714
+#: gimplify.c:9998
 #, gcc-internal-format
 msgid ""
 "%qD specified in %qs clause but not in %<inscan%> %<reduction%> clause on "
 "the containing construct"
 msgstr ""
 
-#: gimplify.c:9924
+#: gimplify.c:10208
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in implicit %<map%> clause"
 msgstr ""
 
-#: gimplify.c:9973
+#: gimplify.c:10262
 #, gcc-internal-format
 msgid ""
 "%<_Atomic%> %qD in implicit %<firstprivate%> clause on %<target%> construct"
 msgstr ""
 
-#: gimplify.c:10220
+#: gimplify.c:10511
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<firstprivate%> clause on %<target%> construct"
 msgstr ""
 
-#: gimplify.c:10275
+#: gimplify.c:10572
 #, gcc-internal-format
 msgid ""
 "same variable used in %<firstprivate%> and %<lastprivate%> clauses on "
 "%<distribute%> construct"
 msgstr ""
 
-#: gimplify.c:10366
+#: gimplify.c:10663
 #, gcc-internal-format
 msgid ""
 "incompatible data clause with reduction on %qE; promoting to "
 "%<present_or_copy%>"
 msgstr ""
 
-#: gimplify.c:10513
+#: gimplify.c:10810
 #, gcc-internal-format
 msgid ""
 "%qD specified in %<inscan%> %<reduction%> clause but not in %<scan%> "
 "directive clause"
 msgstr ""
 
-#: gimplify.c:10532
+#: gimplify.c:10829
 #, gcc-internal-format
 msgid "invalid private reduction on %qE"
 msgstr ""
 
-#: gimplify.c:10631
+#: gimplify.c:10966
 #, gcc-internal-format
 msgid ""
 "%<inscan%> %<reduction%> clause used together with %<linear%> clause for a "
 "variable other than loop iterator"
 msgstr ""
 
-#: gimplify.c:10965
+#: gimplify.c:11300
 #, gcc-internal-format
 msgid "%<mutexinoutset%> kind in %<depend%> clause on a %<taskwait%> construct"
 msgstr ""
 
-#: gimplify.c:11192 gimplify.c:11196 gimplify.c:11205
+#: gimplify.c:11559 gimplify.c:11563 gimplify.c:11572
 #, gcc-internal-format
 msgid "%qs clause may not appear on non-rectangular %qs"
 msgstr ""
 
-#: gimplify.c:11468 gimplify.c:11727
+#: gimplify.c:11804 gimplify.c:12063
 #, gcc-internal-format
 msgid "conditional %<lastprivate%> on loop iterator %qD ignored"
 msgstr ""
 
-#: gimplify.c:12350
+#: gimplify.c:12769
 #, gcc-internal-format
 msgid ""
 "%<bind%> clause not specified on a %<loop%> construct not nested inside "
 "another OpenMP construct"
 msgstr ""
 
-#: gimplify.c:12374
+#: gimplify.c:12793
 #, gcc-internal-format
 msgid ""
 "%<bind(parallel)%> on a %<loop%> construct nested inside %<simd%> construct"
 msgstr ""
 
-#: gimplify.c:12394
+#: gimplify.c:12813
 #, gcc-internal-format
 msgid ""
 "%<bind(teams)%> on a %<loop%> region not strictly nested inside of a %<teams"
 "%> region"
 msgstr ""
 
-#: gimplify.c:12446
+#: gimplify.c:12866
 #, gcc-internal-format
 msgid ""
 "%<lastprivate%> clause on a %<loop%> construct refers to a variable %qD "
 "which is not the loop iterator"
 msgstr ""
 
-#: gimplify.c:13304 omp-low.c:3254
+#: gimplify.c:13729 omp-low.c:3448
 #, gcc-internal-format
 msgid ""
 "%<ordered%> construct with %<depend%> clause must be closely nested inside a "
 "loop with %<ordered%> clause with a parameter"
 msgstr ""
 
-#: gimplify.c:13322
+#: gimplify.c:13747
 #, gcc-internal-format
 msgid "variable %qE is not an iteration of outermost loop %d, expected %qE"
 msgstr ""
 
-#: gimplify.c:13335
+#: gimplify.c:13760
 #, gcc-internal-format
 msgid ""
 "number of variables in %<depend%> clause with %<sink%> modifier does not "
 "match number of iteration variables"
 msgstr ""
 
-#: gimplify.c:13348
+#: gimplify.c:13773
 #, gcc-internal-format
 msgid ""
 "more than one %<depend%> clause with %<source%> modifier on an %<ordered%> "
 "construct"
 msgstr ""
 
-#: gimplify.c:13359
+#: gimplify.c:13784
 #, gcc-internal-format
 msgid ""
 "%<depend%> clause with %<source%> modifier specified together with %<depend"
 "%> clauses with %<sink%> modifier on the same construct"
 msgstr ""
 
-#: gimplify.c:14636
+#: gimplify.c:15061
 #, gcc-internal-format
 msgid "gimplification failed"
 msgstr ""
 
-#: gimplify.c:15169
+#: gimplify.c:15594
 #, gcc-internal-format
 msgid "%qT is promoted to %qT when passed through %<...%>"
 msgstr ""
 
-#: gimplify.c:15174
+#: gimplify.c:15599
 #, gcc-internal-format
 msgid "(so you should pass %qT not %qT to %<va_arg%>)"
 msgstr ""
 
-#: gimplify.c:15181
+#: gimplify.c:15606
 #, gcc-internal-format
 msgid "if this code is reached, the program will abort"
 msgstr ""
 
-#: godump.c:1426
+#: godump.c:1421
 #, gcc-internal-format
 msgid "could not close Go dump file: %m"
 msgstr ""
 
-#: godump.c:1438
+#: godump.c:1433
 #, gcc-internal-format
 msgid "could not open Go dump file %qs: %m"
 msgstr ""
@@ -25639,42 +26539,6 @@ msgstr ""
 msgid "Graphite loop optimizations cannot be used (isl is not available)."
 msgstr ""
 
-#: hsa-brig.c:910
-#, gcc-internal-format
-msgid "Support for HSA does not implement immediate 16 bit FPU operands"
-msgstr ""
-
-#: hsa-common.c:243
-#, gcc-internal-format
-msgid "HSA image ops not handled"
-msgstr ""
-
-#: hsa-gen.c:1230
-#, gcc-internal-format
-msgid "HSA SSA name defined by instruction that is supposed to be using it"
-msgstr ""
-
-#: hsa-gen.c:1234 hsa-gen.c:1247
-#, gcc-internal-format
-msgid "HSA SSA verification failed"
-msgstr ""
-
-#: hsa-gen.c:1243
-#, gcc-internal-format
-msgid ""
-"HSA SSA name not among operands of instruction that is supposed to use it"
-msgstr ""
-
-#: hsa-gen.c:1503
-#, gcc-internal-format
-msgid "HSA instruction uses a register but is not among recorded register uses"
-msgstr ""
-
-#: hsa-gen.c:1507
-#, gcc-internal-format
-msgid "HSA instruction verification failed"
-msgstr ""
-
 #: input.c:1206
 #, gcc-internal-format, gfc-internal-format
 msgid "expansion point is location %i"
@@ -25695,7 +26559,7 @@ msgstr ""
 msgid "token %u has %<y-location == %u%>"
 msgstr ""
 
-#: internal-fn.c:513
+#: internal-fn.c:618
 #, gcc-internal-format
 msgid "invalid use of attribute %<fallthrough%>"
 msgstr ""
@@ -25954,27 +26818,27 @@ msgid ""
 "a type with different number of fields is defined in another translation unit"
 msgstr ""
 
-#: ipa-devirt.c:1537
+#: ipa-devirt.c:1538
 #, gcc-internal-format
 msgid "a type with different size is defined in another translation unit"
 msgstr ""
 
-#: ipa-devirt.c:1546
+#: ipa-devirt.c:1547
 #, gcc-internal-format
 msgid "one type needs to be constructed while the other does not"
 msgstr ""
 
-#: ipa-devirt.c:1559
+#: ipa-devirt.c:1560
 #, gcc-internal-format
 msgid "memory layout mismatch"
 msgstr ""
 
-#: ipa-devirt.c:1678
+#: ipa-devirt.c:1679
 #, gcc-internal-format
 msgid "the extra base is defined here"
 msgstr ""
 
-#: ipa-devirt.c:3842
+#: ipa-devirt.c:3845
 #, gcc-internal-format
 msgid "Declaring type %qD final would enable devirtualization of %i call"
 msgid_plural ""
@@ -25982,7 +26846,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: ipa-devirt.c:3851
+#: ipa-devirt.c:3854
 #, gcc-internal-format
 msgid ""
 "Declaring type %qD final would enable devirtualization of %i call executed "
@@ -25993,7 +26857,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: ipa-devirt.c:3881
+#: ipa-devirt.c:3884
 #, gcc-internal-format
 msgid ""
 "Declaring virtual destructor of %qD final would enable devirtualization of "
@@ -26004,7 +26868,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: ipa-devirt.c:3889
+#: ipa-devirt.c:3892
 #, gcc-internal-format
 msgid "Declaring method %qD final would enable devirtualization of %i call"
 msgid_plural ""
@@ -26012,7 +26876,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: ipa-devirt.c:3897
+#: ipa-devirt.c:3900
 #, gcc-internal-format
 msgid ""
 "Declaring virtual destructor of %qD final would enable devirtualization of "
@@ -26023,7 +26887,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: ipa-devirt.c:3908
+#: ipa-devirt.c:3911
 #, gcc-internal-format
 msgid ""
 "Declaring method %qD final would enable devirtualization of %i call executed "
@@ -26034,223 +26898,223 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: ipa-devirt.c:4219
+#: ipa-devirt.c:4222
 #, gcc-internal-format
 msgid "type %qs violates the C++ One Definition Rule"
 msgstr ""
 
-#: ipa-devirt.c:4228
+#: ipa-devirt.c:4231
 #, gcc-internal-format
 msgid ""
 "an enum with different number of values is defined in another translation "
 "unit"
 msgstr ""
 
-#: ipa-devirt.c:4232
+#: ipa-devirt.c:4235
 #, gcc-internal-format
 msgid ""
 "an enum with different value name is defined in another translation unit"
 msgstr ""
 
-#: ipa-devirt.c:4236
+#: ipa-devirt.c:4239
 #, gcc-internal-format
 msgid "an enum with different values is defined in another translation unit"
 msgstr ""
 
-#: ipa-devirt.c:4257
+#: ipa-devirt.c:4260
 #, gcc-internal-format
 msgid "name %qs differs from name %qs defined in another translation unit"
 msgstr ""
 
-#: ipa-devirt.c:4265
+#: ipa-devirt.c:4268
 #, gcc-internal-format
 msgid "name %qs is defined to "
 msgstr ""
 
-#: ipa-devirt.c:4272
+#: ipa-devirt.c:4275
 #, gcc-internal-format
 msgid "name %qs is defined to different value in another translation unit"
 msgstr ""
 
-#: ipa-devirt.c:4277
+#: ipa-devirt.c:4280
 #, gcc-internal-format
 msgid "mismatching definition"
 msgstr ""
 
-#: ipa-fnsummary.c:4295
+#: ipa-fnsummary.c:4447
 #, gcc-internal-format
 msgid "invalid fnsummary in LTO stream"
 msgstr ""
 
-#: ipa-fnsummary.c:4364
+#: ipa-fnsummary.c:4548
 #, gcc-internal-format
 msgid "ipa inline summary is missing in input file"
 msgstr ""
 
-#: ipa-hsa.c:58
-#, gcc-internal-format, gfc-internal-format
-msgid "could not emit HSAIL for function %s: function cannot be cloned"
+#: ipa-modref.c:2709
+#, gcc-internal-format
+msgid "IPA modref summary is missing in input file"
 msgstr ""
 
-#: ipa-prop.c:4538 ipa-prop.c:4580 ipa-prop.c:4664 ipa-prop.c:4709
+#: ipa-prop.c:4665 ipa-prop.c:4707 ipa-prop.c:4791 ipa-prop.c:4839
 #, gcc-internal-format
 msgid "invalid jump function in LTO stream"
 msgstr ""
 
-#: ipa-pure-const.c:216
+#: ipa-pure-const.c:217
 #, gcc-internal-format
 msgid "function might be candidate for attribute %qs"
 msgstr ""
 
-#: ipa-pure-const.c:217
+#: ipa-pure-const.c:218
 #, gcc-internal-format
 msgid ""
 "function might be candidate for attribute %qs if it is known to return "
 "normally"
 msgstr ""
 
-#: ipa-reference.c:1254
+#: ipa-reference.c:1258
 #, gcc-internal-format
 msgid "ipa reference summary is missing in ltrans unit"
 msgstr ""
 
-#: ipa-sra.c:1470
+#: ipa-sra.c:1489
 #, gcc-internal-format
 msgid "Access offset before parent offset"
 msgstr ""
 
-#: ipa-sra.c:1475
+#: ipa-sra.c:1494
 #, gcc-internal-format
 msgid "Access size greater or equal to its parent size"
 msgstr ""
 
-#: ipa-sra.c:1480
+#: ipa-sra.c:1499
 #, gcc-internal-format
 msgid "Access terminates outside of its parent"
 msgstr ""
 
-#: ipa-sra.c:1492
+#: ipa-sra.c:1511
 #, gcc-internal-format
 msgid "Access overlaps with its sibling"
 msgstr ""
 
-#: ipa-sra.c:1511
+#: ipa-sra.c:1530
 #, gcc-internal-format
 msgid "IPA-SRA access verification failed"
 msgstr ""
 
-#: ipa-sra.c:2472
+#: ipa-sra.c:2493
 #, gcc-internal-format
 msgid "Function %qs, parameter %u, has IPA-SRA accesses which overlap"
 msgstr ""
 
-#: ipa-sra.c:2475
+#: ipa-sra.c:2496
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Function %s, parameter %u, is used but does not have any certain IPA-SRA "
 "access"
 msgstr ""
 
-#: ira.c:2305 ira.c:2323
+#: ira.c:2310 ira.c:2332
 #, gcc-internal-format
 msgid "%s cannot be used in %<asm%> here"
 msgstr ""
 
-#: ira.c:5611
+#: ira.c:5913
 #, gcc-internal-format
 msgid "frame pointer required, but reserved"
 msgstr ""
 
-#: ira.c:5612
+#: ira.c:5914
 #, gcc-internal-format
 msgid "for %qD"
 msgstr ""
 
-#: ira.c:5628
+#: ira.c:5930
 #, gcc-internal-format
 msgid "frame size too large for reliable stack checking"
 msgstr ""
 
-#: lra-assigns.c:1693
+#: lra-assigns.c:1694
 #, gcc-internal-format, gfc-internal-format
 msgid "maximum number of LRA assignment passes is achieved (%d)"
 msgstr ""
 
-#: lra-assigns.c:1819 reload1.c:1242
+#: lra-assigns.c:1821 reload1.c:1242
 #, gcc-internal-format
 msgid "%<asm%> operand has impossible constraints"
 msgstr ""
 
-#: lra-assigns.c:1840
+#: lra-assigns.c:1836
 #, gcc-internal-format
 msgid "unable to find a register to spill"
 msgstr ""
 
-#: lra-constraints.c:4014 reload.c:3815 reload.c:4070
+#: lra-constraints.c:4110 reload.c:3863 reload.c:4118
 #, gcc-internal-format
 msgid "inconsistent operand constraints in an %<asm%>"
 msgstr ""
 
-#: lra-constraints.c:4954
+#: lra-constraints.c:5066
 #, gcc-internal-format, gfc-internal-format
 msgid "maximum number of generated reload insns per insn achieved (%d)"
 msgstr ""
 
-#: lto-cgraph.c:1120
+#: lto-cgraph.c:1125
 #, gcc-internal-format
 msgid ""
 "function %qs has been referenced in offloaded code but hasn%'t been marked "
 "to be included in the offloaded code"
 msgstr ""
 
-#: lto-cgraph.c:1125
+#: lto-cgraph.c:1130
 #, gcc-internal-format
 msgid ""
 "variable %qs has been referenced in offloaded code but hasn%'t been marked "
 "to be included in the offloaded code"
 msgstr ""
 
-#: lto-cgraph.c:1290
+#: lto-cgraph.c:1298
 #, gcc-internal-format, gfc-internal-format
 msgid "bytecode stream: found multiple instances of cgraph node with uid %d"
 msgstr ""
 
-#: lto-cgraph.c:1464
+#: lto-cgraph.c:1462
 #, gcc-internal-format
 msgid "bytecode stream: no caller found while reading edge"
 msgstr ""
 
-#: lto-cgraph.c:1470
+#: lto-cgraph.c:1468
 #, gcc-internal-format
 msgid "bytecode stream: no callee found while reading edge"
 msgstr ""
 
-#: lto-cgraph.c:1547
+#: lto-cgraph.c:1545
 #, gcc-internal-format
 msgid "bytecode stream: found empty cgraph node"
 msgstr ""
 
-#: lto-cgraph.c:1663
+#: lto-cgraph.c:1664
 #, gcc-internal-format, gfc-internal-format
 msgid "At most %i profile runs is supported. Perhaps corrupted profile?"
 msgstr ""
 
-#: lto-cgraph.c:1688
+#: lto-cgraph.c:1689
 #, gcc-internal-format, gfc-internal-format
 msgid "Profile information in %s corrupted"
 msgstr ""
 
-#: lto-cgraph.c:1726
+#: lto-cgraph.c:1727
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot find LTO cgraph in %s"
 msgstr ""
 
-#: lto-cgraph.c:1736
+#: lto-cgraph.c:1737
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot find LTO section refs in %s"
 msgstr ""
 
-#: lto-cgraph.c:1811
+#: lto-cgraph.c:1812
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid offload table in %s"
 msgstr ""
@@ -26292,74 +27156,74 @@ msgstr ""
 msgid "%s out of range: Range is %i to %i, value is %i"
 msgstr ""
 
-#: lto-streamer-in.c:77
+#: lto-streamer-in.c:125
 #, gcc-internal-format, gfc-internal-format
 msgid "bytecode stream: unexpected tag %s"
 msgstr ""
 
-#: lto-streamer-in.c:882 lto-streamer-in.c:893
+#: lto-streamer-in.c:1193 lto-streamer-in.c:1204
 #, gcc-internal-format
 msgid "Cgraph edge statement index out of range"
 msgstr ""
 
-#: lto-streamer-in.c:887 lto-streamer-in.c:897
+#: lto-streamer-in.c:1198 lto-streamer-in.c:1208
 #, gcc-internal-format
 msgid "Cgraph edge statement index not found"
 msgstr ""
 
-#: lto-streamer-in.c:904
+#: lto-streamer-in.c:1215
 #, gcc-internal-format
 msgid "Reference statement index out of range"
 msgstr ""
 
-#: lto-streamer-in.c:908
+#: lto-streamer-in.c:1219
 #, gcc-internal-format
 msgid "Reference statement index not found"
 msgstr ""
 
-#: lto-streamer-in.c:1656
+#: lto-streamer-in.c:1967
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot read LTO mode table from %s"
 msgstr ""
 
-#: lto-streamer-in.c:1760
+#: lto-streamer-in.c:2071
 #, gcc-internal-format
 msgid "%s - %u-bit-precision floating-point numbers unsupported (mode %qs)"
 msgstr ""
 
-#: lto-streamer-in.c:1765
+#: lto-streamer-in.c:2076
 #, gcc-internal-format
 msgid ""
 "%s - %u-bit-precision decimal floating-point numbers unsupported (mode %qs)"
 msgstr ""
 
-#: lto-streamer-in.c:1770
+#: lto-streamer-in.c:2081
 #, gcc-internal-format
 msgid ""
 "%s - %u-bit-precision complex floating-point numbers unsupported (mode %qs)"
 msgstr ""
 
-#: lto-streamer-in.c:1775
+#: lto-streamer-in.c:2086
 #, gcc-internal-format
 msgid "%s - %u-bit integer numbers unsupported (mode %qs)"
 msgstr ""
 
-#: lto-streamer-in.c:1778
+#: lto-streamer-in.c:2089
 #, gcc-internal-format
 msgid "%s - unsupported mode %qs"
 msgstr ""
 
-#: lto-streamer-out.c:488 lto-streamer-out.c:840
+#: lto-streamer-out.c:554 lto-streamer-out.c:906
 #, gcc-internal-format
 msgid "tree code %qs is not supported in LTO streams"
 msgstr ""
 
-#: lto-streamer.c:128
+#: lto-streamer.c:129
 #, gcc-internal-format, gfc-internal-format
 msgid "bytecode stream: unexpected LTO section %s"
 msgstr ""
 
-#: lto-streamer.c:257
+#: lto-streamer.c:261
 #, gcc-internal-format
 msgid ""
 "bytecode stream in file %qs generated with LTO version %d.%d instead of the "
@@ -26376,87 +27240,87 @@ msgstr ""
 msgid "option %s with different values"
 msgstr ""
 
-#: lto-wrapper.c:322
-#, gcc-internal-format, gfc-internal-format
-msgid "option -fcf-protection with mismatching values (%s, %s)"
+#: lto-wrapper.c:326
+#, gcc-internal-format
+msgid "option %qs with mismatching values (%s, %s)"
 msgstr ""
 
-#: lto-wrapper.c:408
+#: lto-wrapper.c:434
 #, gcc-internal-format, gfc-internal-format
 msgid "option %s not used consistently in all LTO input files"
 msgstr ""
 
-#: lto-wrapper.c:542 lto-wrapper.c:550
+#: lto-wrapper.c:568 lto-wrapper.c:576
 #, gcc-internal-format
 msgid ""
 "Extra option to %<-Xassembler%>: %s, dropping all %<-Xassembler%> and %<-Wa"
 "%> options."
 msgstr ""
 
-#: lto-wrapper.c:558
+#: lto-wrapper.c:584
 #, gcc-internal-format
 msgid ""
 "Options to %<-Xassembler%> do not match: %s, %s, dropping all %<-Xassembler"
 "%> and %<-Wa%> options."
 msgstr ""
 
-#: lto-wrapper.c:886
+#: lto-wrapper.c:912
 #, gcc-internal-format
 msgid "could not find %s in %s (consider using %<-B%>)"
 msgstr ""
 
-#: lto-wrapper.c:975
+#: lto-wrapper.c:995
 #, gcc-internal-format, gfc-internal-format
 msgid "problem with building target image for %s"
 msgstr ""
 
-#: lto-wrapper.c:995
+#: lto-wrapper.c:1014
 #, gcc-internal-format
 msgid "reading input file"
 msgstr ""
 
-#: lto-wrapper.c:1000
+#: lto-wrapper.c:1019
 #, gcc-internal-format
 msgid "writing output file"
 msgstr ""
 
-#: lto-wrapper.c:1032
+#: lto-wrapper.c:1055
 #, gcc-internal-format
 msgid "installation error, cannot find %<crtoffloadtable.o%>"
 msgstr ""
 
-#: lto-wrapper.c:1353
+#: lto-wrapper.c:1396
 #, gcc-internal-format
 msgid "environment variable %<COLLECT_GCC%> must be set"
 msgstr ""
 
-#: lto-wrapper.c:1357
+#: lto-wrapper.c:1400
 #, gcc-internal-format
 msgid "environment variable %<COLLECT_GCC_OPTIONS%> must be set"
 msgstr ""
 
-#: lto-wrapper.c:1607 lto-wrapper.c:1667 c-family/c-pch.c:211
-#: c-family/c-pch.c:252 c-family/c-pch.c:303
+#: lto-wrapper.c:1658 lto-wrapper.c:1718 c-family/c-pch.c:215
+#: c-family/c-pch.c:250 c-family/c-pch.c:298
 #, gcc-internal-format
 msgid "cannot read %s: %m"
 msgstr ""
 
-#: lto-wrapper.c:1634
+#: lto-wrapper.c:1685
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid format of %s"
 msgstr ""
 
-#: lto-wrapper.c:1802
+#: lto-wrapper.c:1856
 #, gcc-internal-format
 msgid "%<fopen%>: %s: %m"
 msgstr ""
 
-#: lto-wrapper.c:1819
+#: lto-wrapper.c:1873
 #, gcc-internal-format, gfc-internal-format
 msgid "corrupted ltrans output file %s"
 msgstr ""
 
-#: lto-wrapper.c:2012
+#: lto-wrapper.c:2070
 #, gcc-internal-format
 msgid "%<atexit%> failed"
 msgstr ""
@@ -26506,212 +27370,206 @@ msgstr ""
 msgid "multiple %<default%> targets were set"
 msgstr ""
 
-#: omp-expand.c:2969
+#: omp-expand.c:3249
 #, gcc-internal-format
 msgid ""
 "%<depend%> clause with %<sink%> modifier waiting for lexically later "
 "iteration"
 msgstr ""
 
-#: omp-expand.c:3106
+#: omp-expand.c:3386
 #, gcc-internal-format
 msgid ""
 "%<depend%> clause with %<sink%> modifier refers to iteration never in the "
 "iteration space"
 msgstr ""
 
-#: omp-expand.c:7365
+#: omp-expand.c:7997
 #, gcc-internal-format
 msgid ""
 "invalid OpenMP non-rectangular loop step; %<(%E - %E) * %E%> is not a "
 "multiple of loop %d step %qE"
 msgstr ""
 
-#: omp-expand.c:7394
-#, gcc-internal-format
-msgid "non-rectangular %<simd%> not supported yet"
-msgstr ""
-
-#: omp-expand.c:7406
-#, gcc-internal-format
-msgid "non-rectangular %<taskloop%> not supported yet"
-msgstr ""
-
-#: omp-expand.c:7419
-#, gcc-internal-format
-msgid "non-rectangular OpenMP loops not supported yet"
-msgstr ""
-
-#: omp-general.c:2494
+#: omp-general.c:2600
 #, gcc-internal-format
 msgid "%qs specifies a conflicting level of parallelism"
 msgstr ""
 
-#: omp-general.c:2497
+#: omp-general.c:2603
 #, gcc-internal-format
 msgid "... to the previous %qs clause here"
 msgstr ""
 
-#: omp-general.c:2528
+#: omp-general.c:2634
 #, gcc-internal-format
 msgid ""
 "cannot apply %<%s%> to %qD, which has also been marked with an OpenMP "
 "'declare target' directive"
 msgstr ""
 
-#: omp-general.c:2570
+#: omp-general.c:2676
 #, gcc-internal-format
 msgid ""
 "incompatible %qs clause when applying %<%s%> to %qD, which has already been "
 "marked with an OpenACC 'routine' directive"
 msgstr ""
 
-#: omp-general.c:2577
+#: omp-general.c:2683
 #, gcc-internal-format
 msgid ""
 "missing %qs clause when applying %<%s%> to %qD, which has already been "
 "marked with an OpenACC 'routine' directive"
 msgstr ""
 
-#: omp-general.c:2586
+#: omp-general.c:2692
 #, gcc-internal-format
 msgid "... with %qs clause here"
 msgstr ""
 
-#: omp-general.c:2594
+#: omp-general.c:2700
 #, gcc-internal-format
 msgid "... without %qs clause near to here"
 msgstr ""
 
-#: omp-low.c:2382 omp-offload.c:1376
+#: omp-low.c:2564 omp-offload.c:1439
 #, gcc-internal-format
 msgid "%<seq%> overrides other OpenACC loop specifiers"
 msgstr ""
 
-#: omp-low.c:2385 omp-offload.c:1377
+#: omp-low.c:2567 omp-offload.c:1440
 #, gcc-internal-format
 msgid "%<auto%> conflicts with other OpenACC loop specifiers"
 msgstr ""
 
-#: omp-low.c:2389 omp-offload.c:1411
+#: omp-low.c:2571 omp-offload.c:1474
 #, gcc-internal-format
 msgid "inner loop uses same OpenACC parallelism as containing loop"
 msgstr ""
 
-#: omp-low.c:2436
+#: omp-low.c:2622
 #, gcc-internal-format
-msgid ""
-"argument not permitted on %qs clause in OpenACC %<parallel%> or %<serial%>"
+msgid "argument not permitted on %qs clause"
+msgstr ""
+
+#: omp-low.c:2626
+#, gcc-internal-format
+msgid "enclosing parent compute construct"
 msgstr ""
 
-#: omp-low.c:2491
+#: omp-low.c:2629
+#, gcc-internal-format
+msgid "enclosing routine"
+msgstr ""
+
+#: omp-low.c:2670
 #, gcc-internal-format
 msgid "conflicting reduction operations for %qE"
 msgstr ""
 
-#: omp-low.c:2494
+#: omp-low.c:2673
 #, gcc-internal-format
 msgid "location of the previous reduction for %qE"
 msgstr ""
 
-#: omp-low.c:2527
+#: omp-low.c:2706
 #, gcc-internal-format
 msgid "nested loop in reduction needs reduction clause for %qE"
 msgstr ""
 
-#: omp-low.c:2820
+#: omp-low.c:3012
 #, gcc-internal-format
 msgid "non-OpenACC construct inside of OpenACC routine"
 msgstr ""
 
-#: omp-low.c:2829
+#: omp-low.c:3021
 #, gcc-internal-format
 msgid "non-OpenACC construct inside of OpenACC region"
 msgstr ""
 
-#: omp-low.c:2851 omp-low.c:2918
+#: omp-low.c:3043 omp-low.c:3110
 #, gcc-internal-format
 msgid ""
 "OpenMP constructs other than %<parallel%>, %<loop%> or %<simd%> may not be "
 "nested inside a region with the %<order(concurrent)%> clause"
 msgstr ""
 
-#: omp-low.c:2870
+#: omp-low.c:3062
 #, gcc-internal-format
 msgid ""
-"%<ordered simd threads%> must be closely nested inside of %<for simd%> region"
+"%<ordered simd threads%> must be closely nested inside of %<%s simd%> region"
 msgstr ""
 
-#: omp-low.c:2885
+#: omp-low.c:3078
 #, gcc-internal-format
 msgid ""
 "OpenMP constructs other than %<ordered simd%>, %<simd%>, %<loop%> or %<atomic"
 "%> may not be nested inside %<simd%> region"
 msgstr ""
 
-#: omp-low.c:2900
+#: omp-low.c:3092
 #, gcc-internal-format
 msgid ""
 "only %<distribute%>, %<parallel%> or %<loop%> regions are allowed to be "
 "strictly nested inside %<teams%> region"
 msgstr ""
 
-#: omp-low.c:2914
+#: omp-low.c:3106
 #, gcc-internal-format
 msgid ""
 "OpenMP constructs other than %<parallel%>, %<loop%> or %<simd%> may not be "
 "nested inside a %<loop%> region"
 msgstr ""
 
-#: omp-low.c:2934
+#: omp-low.c:3126
 #, gcc-internal-format
 msgid ""
 "%<distribute%> region must be strictly nested inside %<teams%> construct"
 msgstr ""
 
-#: omp-low.c:2981
+#: omp-low.c:3175
 #, gcc-internal-format
 msgid ""
 "OpenACC loop directive must be associated with an OpenACC compute region"
 msgstr ""
 
-#: omp-low.c:3003
+#: omp-low.c:3197
 #, gcc-internal-format
 msgid "orphaned %qs construct"
 msgstr ""
 
-#: omp-low.c:3032
+#: omp-low.c:3226
 #, gcc-internal-format
 msgid "%<cancel for%> inside %<nowait%> for construct"
 msgstr ""
 
-#: omp-low.c:3037
+#: omp-low.c:3231
 #, gcc-internal-format
 msgid "%<cancel for%> inside %<ordered%> for construct"
 msgstr ""
 
-#: omp-low.c:3057 omp-low.c:3070
+#: omp-low.c:3251 omp-low.c:3264
 #, gcc-internal-format
 msgid "%<cancel sections%> inside %<nowait%> sections construct"
 msgstr ""
 
-#: omp-low.c:3099
+#: omp-low.c:3293
 #, gcc-internal-format
 msgid ""
 "%<%s taskgroup%> construct not closely nested inside of %<taskgroup%> region"
 msgstr ""
 
-#: omp-low.c:3124
+#: omp-low.c:3318
 #, gcc-internal-format
 msgid "invalid arguments"
 msgstr ""
 
-#: omp-low.c:3130
+#: omp-low.c:3324
 #, gcc-internal-format
 msgid "%<%s %s%> construct not closely nested inside of %qs"
 msgstr ""
 
-#: omp-low.c:3158
+#: omp-low.c:3352
 #, gcc-internal-format
 msgid ""
 "barrier region may not be closely nested inside of work-sharing, %<loop%>, "
@@ -26719,7 +27577,7 @@ msgid ""
 "region"
 msgstr ""
 
-#: omp-low.c:3165
+#: omp-low.c:3359
 #, gcc-internal-format
 msgid ""
 "work-sharing region may not be closely nested inside of work-sharing, %<loop"
@@ -26727,183 +27585,183 @@ msgid ""
 "region"
 msgstr ""
 
-#: omp-low.c:3194
+#: omp-low.c:3388
 #, gcc-internal-format
 msgid ""
 "%<master%> region may not be closely nested inside of work-sharing, %<loop"
 "%>, explicit %<task%> or %<taskloop%> region"
 msgstr ""
 
-#: omp-low.c:3218 omp-low.c:3375 c-family/c-omp.c:494
+#: omp-low.c:3412 omp-low.c:3569 c-family/c-omp.c:506
 #, gcc-internal-format
 msgid "%<depend(%s)%> is only allowed in %<omp ordered%>"
 msgstr ""
 
-#: omp-low.c:3246
+#: omp-low.c:3440
 #, gcc-internal-format
 msgid ""
 "%<ordered%> construct with %<depend%> clause must be closely nested inside "
 "an %<ordered%> loop"
 msgstr ""
 
-#: omp-low.c:3263
+#: omp-low.c:3457
 #, gcc-internal-format
 msgid "invalid depend kind in omp %<ordered%> %<depend%>"
 msgstr ""
 
-#: omp-low.c:3278
+#: omp-low.c:3472
 #, gcc-internal-format
 msgid "%<ordered%> %<simd%> must be closely nested inside %<simd%> region"
 msgstr ""
 
-#: omp-low.c:3291
+#: omp-low.c:3485
 #, gcc-internal-format
 msgid ""
 "%<ordered%> region may not be closely nested inside of %<critical%>, "
 "%<ordered%>, explicit %<task%> or %<taskloop%> region"
 msgstr ""
 
-#: omp-low.c:3304 omp-low.c:3326
+#: omp-low.c:3498 omp-low.c:3520
 #, gcc-internal-format
 msgid ""
 "%<ordered%> region must be closely nested inside a loop region with an "
 "%<ordered%> clause"
 msgstr ""
 
-#: omp-low.c:3312
+#: omp-low.c:3506
 #, gcc-internal-format
 msgid ""
 "%<ordered%> region without %<depend%> clause may not be closely nested "
 "inside a loop region with an %<ordered%> clause with a parameter"
 msgstr ""
 
-#: omp-low.c:3343
+#: omp-low.c:3537
 #, gcc-internal-format
 msgid ""
 "%<critical%> region may not be nested inside a %<critical%> region with the "
 "same name"
 msgstr ""
 
-#: omp-low.c:3361
+#: omp-low.c:3555
 #, gcc-internal-format
 msgid ""
 "%<teams%> construct must be closely nested inside of %<target%> construct or "
 "not nested in any OpenMP construct"
 msgstr ""
 
-#: omp-low.c:3383
+#: omp-low.c:3577
 #, gcc-internal-format
 msgid ""
 "OpenACC region inside of OpenACC routine, nested parallelism not supported "
 "yet"
 msgstr ""
 
-#: omp-low.c:3396
+#: omp-low.c:3590
 #, gcc-internal-format
 msgid "OpenACC construct inside of non-OpenACC region"
 msgstr ""
 
-#: omp-low.c:3445
+#: omp-low.c:3649
 #, gcc-internal-format
 msgid "%s %qs construct inside of %s %qs region"
 msgstr ""
 
-#: omp-low.c:3458 omp-low.c:3465
+#: omp-low.c:3662 omp-low.c:3669
 #, gcc-internal-format
 msgid "%qs construct inside of %qs region"
 msgstr ""
 
-#: omp-low.c:3688
+#: omp-low.c:3892
 #, gcc-internal-format
 msgid "setjmp/longjmp inside %<simd%> construct"
 msgstr ""
 
-#: omp-low.c:3714
+#: omp-low.c:3918
 #, gcc-internal-format
 msgid ""
 "OpenMP runtime API call %qD in a region with %<order(concurrent)%> clause"
 msgstr ""
 
-#: omp-low.c:8883
+#: omp-low.c:9274
 #, gcc-internal-format
 msgid ""
 "ignoring sink clause with offset that is not a multiple of the loop step"
 msgstr ""
 
-#: omp-low.c:8906
+#: omp-low.c:9297
 #, gcc-internal-format
 msgid "first offset must be in opposite direction of loop iterations"
 msgstr ""
 
-#: omp-low.c:13200
+#: omp-low.c:13632
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid exit from %s structured block"
 msgstr ""
 
-#: omp-low.c:13202 omp-low.c:13207
+#: omp-low.c:13634 omp-low.c:13639
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid entry to %s structured block"
 msgstr ""
 
 #. Otherwise, be vague and lazy, but efficient.
-#: omp-low.c:13211
+#: omp-low.c:13643
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid branch to/from %s structured block"
 msgstr ""
 
-#: omp-offload.c:261
+#: omp-offload.c:313
 #, gcc-internal-format
 msgid ""
 "%qD specified both in declare target %<link%> and implicitly in %<to%> "
 "clauses"
 msgstr ""
 
-#: omp-offload.c:834
+#: omp-offload.c:897
 #, gcc-internal-format
 msgid "%<-fopenacc-dim%> operand is malformed at %qs"
 msgstr ""
 
-#: omp-offload.c:1409
+#: omp-offload.c:1472
 #, gcc-internal-format
 msgid "routine call uses same OpenACC parallelism as containing loop"
 msgstr ""
 
-#: omp-offload.c:1413 omp-offload.c:1445
+#: omp-offload.c:1476 omp-offload.c:1508
 #, gcc-internal-format
 msgid "containing loop here"
 msgstr ""
 
-#: omp-offload.c:1418
+#: omp-offload.c:1481
 #, gcc-internal-format
 msgid "routine call uses OpenACC parallelism disallowed by containing routine"
 msgstr ""
 
-#: omp-offload.c:1420
+#: omp-offload.c:1483
 #, gcc-internal-format
 msgid "loop uses OpenACC parallelism disallowed by containing routine"
 msgstr ""
 
-#: omp-offload.c:1425
+#: omp-offload.c:1488
 #, gcc-internal-format
 msgid "routine %qD declared here"
 msgstr ""
 
-#: omp-offload.c:1438
+#: omp-offload.c:1501
 #, gcc-internal-format
 msgid "incorrectly nested OpenACC loop parallelism"
 msgstr ""
 
-#: omp-offload.c:1579
+#: omp-offload.c:1642
 #, gcc-internal-format
 msgid "insufficient partitioning available to parallelize element loop"
 msgstr ""
 
-#: omp-offload.c:1587
+#: omp-offload.c:1650
 #, gcc-internal-format
 msgid "insufficient partitioning available to parallelize tile loop"
 msgstr ""
 
-#: omp-offload.c:1589
+#: omp-offload.c:1652
 #, gcc-internal-format
 msgid "insufficient partitioning available to parallelize loop"
 msgstr ""
@@ -26932,59 +27790,64 @@ msgid ""
 "non-%<uniform%> argument"
 msgstr ""
 
-#: optabs.c:4322
+#: optabs.c:4726
 #, gcc-internal-format
 msgid "indirect jumps are not available on this target"
 msgstr ""
 
-#: opts-common.c:1275
+#: opts-common.c:1311
 #, gcc-internal-format
 msgid "command-line option %qs is not supported by this configuration"
 msgstr ""
 
-#: opts-common.c:1285 opts.c:2069
+#: opts-common.c:1321 opts.c:2186
 #, gcc-internal-format
 msgid "missing argument to %qs"
 msgstr ""
 
-#: opts-common.c:1292
+#: opts-common.c:1328
 #, gcc-internal-format
 msgid ""
 "argument to %qs should be a non-negative integer optionally followed by a "
 "size unit"
 msgstr ""
 
-#: opts-common.c:1296
+#: opts-common.c:1332
 #, gcc-internal-format
 msgid "argument to %qs should be a non-negative integer"
 msgstr ""
 
-#: opts-common.c:1303
+#: opts-common.c:1339
 #, gcc-internal-format
 msgid "argument to %qs is not between %d and %d"
 msgstr ""
 
-#: opts-common.c:1318
+#: opts-common.c:1354
 #, gcc-internal-format
 msgid "unrecognized argument in option %qs"
 msgstr ""
 
-#: opts-common.c:1329 config/i386/i386-options.c:1487
+#: opts-common.c:1365 config/i386/i386-options.c:1551
 #, gcc-internal-format
 msgid "valid arguments to %qs are: %s; did you mean %qs?"
 msgstr ""
 
-#: opts-common.c:1332 config/i386/i386-options.c:1490
+#: opts-common.c:1368 config/i386/i386-options.c:1554
 #, gcc-internal-format
 msgid "valid arguments to %qs are: %s"
 msgstr ""
 
-#: opts-common.c:1375 c-family/c-opts.c:428
+#: opts-common.c:1411 c-family/c-opts.c:442
 #, gcc-internal-format
 msgid "switch %qs is no longer supported"
 msgstr ""
 
-#: opts-common.c:1764
+#: opts-common.c:1470
+#, gcc-internal-format
+msgid "argument to %qs is bigger than %d"
+msgstr ""
+
+#: opts-common.c:1806
 #, gcc-internal-format
 msgid "malformed %<COLLECT_GCC_OPTIONS%>"
 msgstr ""
@@ -27013,423 +27876,315 @@ msgid ""
 "earlier diagnostics"
 msgstr ""
 
-#: opts-global.c:393
+#: opts-global.c:395
 #, gcc-internal-format
 msgid "unrecognized command-line option %<-fopt-info-%s%>"
 msgstr ""
 
-#: opts-global.c:414 opts-global.c:422
+#: opts-global.c:416 opts-global.c:424
 #, gcc-internal-format
 msgid "plugin support is disabled; configure with --enable-plugin"
 msgstr ""
 
-#: opts-global.c:446
+#: opts-global.c:448
 #, gcc-internal-format
 msgid "unrecognized register name %qs"
 msgstr ""
 
-#: opts-global.c:464
+#: opts-global.c:466
 #, gcc-internal-format
 msgid ""
 "%<-fasan-shadow-offset%> should only be used with %<-fsanitize=kernel-address"
 "%>"
 msgstr ""
 
-#: opts-global.c:467
+#: opts-global.c:469
 #, gcc-internal-format
 msgid "unrecognized shadow offset %qs"
 msgstr ""
 
-#: opts.c:92
+#: opts.c:93
 #, gcc-internal-format
 msgid "argument %qs to %<-femit-struct-debug-detailed%> not recognized"
 msgstr ""
 
-#: opts.c:128
+#: opts.c:129
 #, gcc-internal-format
 msgid "argument %qs to %<-femit-struct-debug-detailed%> unknown"
 msgstr ""
 
-#: opts.c:135
+#: opts.c:136
 #, gcc-internal-format
 msgid ""
 "%<-femit-struct-debug-detailed=dir:...%> must allow at least as much as %<-"
 "femit-struct-debug-detailed=ind:...%>"
 msgstr ""
 
-#: opts.c:594
+#: opts.c:596
 #, gcc-internal-format
 msgid ""
 "argument to %<-O%> should be a non-negative integer, %<g%>, %<s%> or %<fast%>"
 msgstr ""
 
-#: opts.c:691
-#, gcc-internal-format
-msgid ""
-"%<-fipa-cp-clone%> is incompatible with %<-flive-patching=inline-only-static"
-"%>"
-msgstr ""
-
-#: opts.c:698
-#, gcc-internal-format
-msgid ""
-"%<-fipa-sra%> is incompatible with %<-flive-patching=inline-only-static%>"
-msgstr ""
-
-#: opts.c:705
-#, gcc-internal-format
-msgid ""
-"%<-fpartial-inlining%> is incompatible with %<-flive-patching=inline-only-"
-"static%>"
-msgstr ""
-
-#: opts.c:712
-#, gcc-internal-format
-msgid ""
-"%<-fipa-cp%> is incompatible with %<-flive-patching=inline-only-static%>"
-msgstr ""
-
-#: opts.c:722
-#, gcc-internal-format
-msgid ""
-"%<-fwhole-program%> is incompatible with %<-flive-patching=inline-only-"
-"static|inline-clone%>"
-msgstr ""
-
-#: opts.c:733
+#: opts.c:692 opts.c:698 opts.c:704 opts.c:710 opts.c:719 opts.c:730 opts.c:737
+#: opts.c:744 opts.c:751 opts.c:758 opts.c:765 opts.c:772 opts.c:779 opts.c:786
+#: opts.c:804 opts.c:813 config/mips/mips.c:20008 config/mips/mips.c:20010
+#: config/mips/mips.c:20023
 #, gcc-internal-format
-msgid ""
-"%<-fipa-pta%> is incompatible with %<-flive-patching=inline-only-static|"
-"inline-clone%>"
-msgstr ""
-
-#: opts.c:740
-#, gcc-internal-format
-msgid ""
-"%<-fipa-reference%> is incompatible with %<-flive-patching=inline-only-"
-"static|inline-clone%>"
-msgstr ""
-
-#: opts.c:747
-#, gcc-internal-format
-msgid ""
-"%<-fipa-ra%> is incompatible with %<-flive-patching=inline-only-static|"
-"inline-clone%>"
-msgstr ""
-
-#: opts.c:754
-#, gcc-internal-format
-msgid ""
-"%<-fipa-icf%> is incompatible with %<-flive-patching=inline-only-static|"
-"inline-clone%>"
-msgstr ""
-
-#: opts.c:761
-#, gcc-internal-format
-msgid ""
-"%<-fipa-icf-functions%> is incompatible with %<-flive-patching=inline-only-"
-"static|inline-clone%>"
-msgstr ""
-
-#: opts.c:768
-#, gcc-internal-format
-msgid ""
-"%<-fipa-icf-variables%> is incompatible with %<-flive-patching=inline-only-"
-"static|inline-clone%>"
-msgstr ""
-
-#: opts.c:775
-#, gcc-internal-format
-msgid ""
-"%<-fipa-bit-cp%> is incompatible with %<-flive-patching=inline-only-static|"
-"inline-clone%>"
+msgid "%qs is incompatible with %qs"
 msgstr ""
 
-#: opts.c:782
+#: opts.c:794
 #, gcc-internal-format
 msgid ""
-"%<-fipa-vrp%> is incompatible with %<-flive-patching=inline-only-static|"
+"%<-fipa-modref%> is incompatible with %<-flive-patching=inline-only-static|"
 "inline-clone%>"
 msgstr ""
 
-#: opts.c:789
-#, gcc-internal-format
-msgid ""
-"%<-fipa-pure-const%> is incompatible with %<-flive-patching=inline-only-"
-"static|inline-clone%>"
-msgstr ""
-
-#: opts.c:800
-#, gcc-internal-format
-msgid ""
-"%<-fipa-reference-addressable%> is incompatible with %<-flive-"
-"patching=inline-only-static|inline-clone%>"
-msgstr ""
-
-#: opts.c:809
+#: opts.c:874
 #, gcc-internal-format
-msgid ""
-"%<-fipa-stack-alignment%> is incompatible with %<-flive-patching=inline-only-"
-"static|inline-clone%>"
+msgid "%<-fsanitize=%s%> is incompatible with %<-fsanitize=%s%>"
 msgstr ""
 
-#: opts.c:858
+#: opts.c:914
 #, gcc-internal-format
 msgid "section anchors must be disabled when unit-at-a-time is disabled"
 msgstr ""
 
-#: opts.c:862
+#: opts.c:918
 #, gcc-internal-format
 msgid "toplevel reorder must be disabled when unit-at-a-time is disabled"
 msgstr ""
 
-#: opts.c:876
+#: opts.c:932
 #, gcc-internal-format
 msgid "transactional memory is not supported with non-call exceptions"
 msgstr ""
 
-#: opts.c:891
+#: opts.c:947
 #, gcc-internal-format
 msgid "section anchors must be disabled when toplevel reorder is disabled"
 msgstr ""
 
-#: opts.c:946 config/darwin.c:3223
+#: opts.c:1002 config/darwin.c:3307
 #, gcc-internal-format
 msgid ""
 "%<-freorder-blocks-and-partition%> does not work with exceptions on this "
 "architecture"
 msgstr ""
 
-#: opts.c:962
+#: opts.c:1018
 #, gcc-internal-format
 msgid ""
 "%<-freorder-blocks-and-partition%> does not support unwind info on this "
 "architecture"
 msgstr ""
 
-#: opts.c:980 config/pa/pa.c:554
+#: opts.c:1036 config/pa/pa.c:554
 #, gcc-internal-format
 msgid "%<-freorder-blocks-and-partition%> does not work on this architecture"
 msgstr ""
 
-#: opts.c:1016
+#: opts.c:1072
 #, gcc-internal-format
 msgid "%<-fno-fat-lto-objects%> are supported only with linker plugin"
 msgstr ""
 
-#: opts.c:1024
+#: opts.c:1080
 #, gcc-internal-format
 msgid "%<-gsplit-dwarf%> is not supported with LTO, disabling"
 msgstr ""
 
-#: opts.c:1038
+#: opts.c:1094
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> is not supported by this compiler configuration"
 msgstr ""
 
-#: opts.c:1065
+#: opts.c:1121
 #, gcc-internal-format
 msgid ""
 "%<-fsanitize=pointer-compare%> must be combined with %<-fsanitize=address%> "
 "or %<-fsanitize=kernel-address%>"
 msgstr ""
 
-#: opts.c:1069
+#: opts.c:1125
 #, gcc-internal-format
 msgid ""
 "%<-fsanitize=pointer-subtract%> must be combined with %<-fsanitize=address%> "
 "or %<-fsanitize=kernel-address%>"
 msgstr ""
 
-#: opts.c:1077
-#, gcc-internal-format
-msgid ""
-"%<-fsanitize=address%> is incompatible with %<-fsanitize=kernel-address%>"
-msgstr ""
-
-#: opts.c:1084
-#, gcc-internal-format
-msgid ""
-"%<-fsanitize=address%> and %<-fsanitize=kernel-address%> are incompatible "
-"with %<-fsanitize=thread%>"
-msgstr ""
-
-#: opts.c:1090
-#, gcc-internal-format
-msgid "%<-fsanitize=leak%> is incompatible with %<-fsanitize=thread%>"
-msgstr ""
-
-#: opts.c:1096
+#: opts.c:1150
 #, gcc-internal-format
 msgid "%<-fsanitize-recover=%s%> is not supported"
 msgstr ""
 
-#: opts.c:1122
+#: opts.c:1177
 #, gcc-internal-format
 msgid ""
 "%<-fsanitize-address-use-after-scope%> requires %<-fstack-reuse=none%> option"
 msgstr ""
 
-#: opts.c:1129
+#: opts.c:1184
 #, gcc-internal-format
 msgid "transactional memory is not supported with %<-fsanitize=address%>"
 msgstr ""
 
-#: opts.c:1132
+#: opts.c:1187
 #, gcc-internal-format
 msgid ""
 "transactional memory is not supported with %<-fsanitize=kernel-address%>"
 msgstr ""
 
-#: opts.c:1137
+#: opts.c:1192
 #, gcc-internal-format
 msgid "live patching is not supported with LTO"
 msgstr ""
 
-#: opts.c:1141
+#: opts.c:1196
 #, gcc-internal-format
 msgid "vtable verification is not supported with LTO"
 msgstr ""
 
-#: opts.c:1652
+#: opts.c:1717
 #, gcc-internal-format
 msgid "unrecognized %<include_flags 0x%x%> passed to %<print_specific_help%>"
 msgstr ""
 
-#: opts.c:1866
+#: opts.c:1954
 #, gcc-internal-format
 msgid "%<-fsanitize=all%> option is not valid"
 msgstr ""
 
-#: opts.c:1906
+#: opts.c:1994
 #, gcc-internal-format
 msgid ""
 "unrecognized argument to %<-f%ssanitize%s=%> option: %q.*s; did you mean %qs?"
 msgstr ""
 
-#: opts.c:1912
+#: opts.c:2000
 #, gcc-internal-format
 msgid "unrecognized argument to %<-f%ssanitize%s=%> option: %q.*s"
 msgstr ""
 
-#: opts.c:1947
+#: opts.c:2035
 #, gcc-internal-format
 msgid "%qs attribute directive ignored"
 msgstr ""
 
-#: opts.c:1974
+#: opts.c:2059
+#, gcc-internal-format
+msgid "unrecognized argument to %<-fzero-call-used-regs=%>: %qs"
+msgstr ""
+
+#: opts.c:2083
 #, gcc-internal-format
 msgid "invalid arguments for %<-falign-%s%> option: %qs"
 msgstr ""
 
-#: opts.c:1989
+#: opts.c:2098
 #, gcc-internal-format
 msgid "invalid number of arguments for %<-falign-%s%> option: %qs"
 msgstr ""
 
-#: opts.c:1998
+#: opts.c:2107
 #, gcc-internal-format
 msgid "%<-falign-%s%> is not between 0 and %d"
 msgstr ""
 
-#: opts.c:2124
+#: opts.c:2241
 #, gcc-internal-format
 msgid "%<--help%> argument %q.*s is ambiguous, please be more specific"
 msgstr ""
 
-#: opts.c:2133
+#: opts.c:2250
 #, gcc-internal-format
 msgid "unrecognized argument to %<--help=%> option: %q.*s"
 msgstr ""
 
-#: opts.c:2499
-#, gcc-internal-format
-msgid "HSA has not been enabled during configuration"
-msgstr ""
-
-#: opts.c:2511
+#: opts.c:2607
 #, gcc-internal-format
 msgid "%<-foffload-abi%> option can be specified only for offload compiler"
 msgstr ""
 
-#: opts.c:2519
+#: opts.c:2615
 #, gcc-internal-format
 msgid "structure alignment must be a small power of two, not %wu"
 msgstr ""
 
-#: opts.c:2596
+#: opts.c:2696
 #, gcc-internal-format
 msgid "invalid arguments for %<-fpatchable-function-entry%>"
 msgstr ""
 
-#: opts.c:2654
+#: opts.c:2759
 #, gcc-internal-format
 msgid "unknown stack check parameter %qs"
 msgstr ""
 
-#: opts.c:2682
+#: opts.c:2787
 #, gcc-internal-format
 msgid ""
 "%<-gdwarf%s%> is ambiguous; use %<-gdwarf-%s%> for DWARF version or %<-gdwarf"
 "%> %<-g%s%> for debug level"
 msgstr ""
 
-#: opts.c:2693
+#: opts.c:2798
 #, gcc-internal-format
 msgid "dwarf version %wu is not supported"
 msgstr ""
 
-#: opts.c:2747
+#: opts.c:2847
 #, gcc-internal-format
 msgid "unrecognized argument to %<-flto=%> option: %qs"
 msgstr ""
 
-#: opts.c:2931
+#: opts.c:3039
 #, gcc-internal-format
 msgid "target system does not support debug output"
 msgstr ""
 
-#: opts.c:2940
+#: opts.c:3048
 #, gcc-internal-format
 msgid "debug format %qs conflicts with prior selection"
 msgstr ""
 
-#: opts.c:2958
+#: opts.c:3066
 #, gcc-internal-format
 msgid "unrecognized debug output level %qs"
 msgstr ""
 
-#: opts.c:2960
+#: opts.c:3068
 #, gcc-internal-format
 msgid "debug output level %qs is too high"
 msgstr ""
 
-#: opts.c:2980
+#: opts.c:3088
 #, gcc-internal-format
 msgid "getting core file size maximum limit: %m"
 msgstr ""
 
-#: opts.c:2984
+#: opts.c:3092
 #, gcc-internal-format
 msgid "setting core file size limit to maximum: %m"
 msgstr ""
 
-#: opts.c:3029
+#: opts.c:3137
 #, gcc-internal-format, gfc-internal-format
 msgid "unrecognized gcc debugging option: %c"
 msgstr ""
 
-#: opts.c:3058
+#: opts.c:3166
 #, gcc-internal-format
 msgid "%<-W%serror=%s%>: no option %<-%s%>; did you mean %<-%s%>?"
 msgstr ""
 
-#: opts.c:3062
+#: opts.c:3170
 #, gcc-internal-format
 msgid "%<-W%serror=%s%>: no option %<-%s%>"
 msgstr ""
 
-#: opts.c:3066
+#: opts.c:3174
 #, gcc-internal-format
 msgid "%<-Werror=%s%>: %<-%s%> is not an option that controls warnings"
 msgstr ""
@@ -27446,72 +28201,72 @@ msgid ""
 "argument in %<NEXT_PASS%>"
 msgstr ""
 
-#: passes.c:1026
+#: passes.c:1073
 #, gcc-internal-format
 msgid "unrecognized option %<-fenable%>"
 msgstr ""
 
-#: passes.c:1028
+#: passes.c:1075
 #, gcc-internal-format
 msgid "unrecognized option %<-fdisable%>"
 msgstr ""
 
-#: passes.c:1036
+#: passes.c:1083
 #, gcc-internal-format
 msgid "unknown pass %s specified in %<-fenable%>"
 msgstr ""
 
-#: passes.c:1038
+#: passes.c:1085
 #, gcc-internal-format
 msgid "unknown pass %s specified in %<-fdisable%>"
 msgstr ""
 
-#: passes.c:1063 passes.c:1152
+#: passes.c:1110 passes.c:1199
 #, gcc-internal-format, gfc-internal-format
 msgid "enable pass %s for functions in the range of [%u, %u]"
 msgstr ""
 
-#: passes.c:1066 passes.c:1163
+#: passes.c:1113 passes.c:1210
 #, gcc-internal-format, gfc-internal-format
 msgid "disable pass %s for functions in the range of [%u, %u]"
 msgstr ""
 
-#: passes.c:1102 passes.c:1130
+#: passes.c:1149 passes.c:1177
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid range %s in option %s"
 msgstr ""
 
-#: passes.c:1148
+#: passes.c:1195
 #, gcc-internal-format, gfc-internal-format
 msgid "enable pass %s for function %s"
 msgstr ""
 
-#: passes.c:1159
+#: passes.c:1206
 #, gcc-internal-format, gfc-internal-format
 msgid "disable pass %s for function %s"
 msgstr ""
 
-#: passes.c:1388
+#: passes.c:1435
 #, gcc-internal-format
 msgid "invalid pass positioning operation"
 msgstr ""
 
-#: passes.c:1449
+#: passes.c:1496
 #, gcc-internal-format
 msgid "plugin cannot register a missing pass"
 msgstr ""
 
-#: passes.c:1452
+#: passes.c:1499
 #, gcc-internal-format
 msgid "plugin cannot register an unnamed pass"
 msgstr ""
 
-#: passes.c:1457
+#: passes.c:1504
 #, gcc-internal-format
 msgid "plugin cannot register pass %qs without reference pass name"
 msgstr ""
 
-#: passes.c:1476
+#: passes.c:1523
 #, gcc-internal-format
 msgid "pass %qs not found but is referenced by new pass %qs"
 msgstr ""
@@ -27547,73 +28302,73 @@ msgstr ""
 msgid "unknown callback event registered by plugin %s"
 msgstr ""
 
-#: plugin.c:504
+#: plugin.c:505
 #, gcc-internal-format, gfc-internal-format
 msgid "plugin %s registered a null callback function for event %s"
 msgstr ""
 
-#: plugin.c:637
+#: plugin.c:639
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "cannot load plugin %s\n"
 "%s"
 msgstr ""
 
-#: plugin.c:648
+#: plugin.c:650
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "plugin %s is not licensed under a GPL-compatible license\n"
 "%s"
 msgstr ""
 
-#: plugin.c:661
+#: plugin.c:663
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "cannot find %s in plugin %s\n"
 "%s"
 msgstr ""
 
-#: plugin.c:671
+#: plugin.c:673
 #, gcc-internal-format, gfc-internal-format
 msgid "fail to initialize plugin %s"
 msgstr ""
 
-#: plugin.c:704
+#: plugin.c:706
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot load plugin %s: %s"
 msgstr ""
 
-#: plugin.c:714
+#: plugin.c:716
 #, gcc-internal-format, gfc-internal-format
 msgid "plugin %s is not licensed under a GPL-compatible license %s"
 msgstr ""
 
-#: plugin.c:724
+#: plugin.c:726
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot find %s in plugin %s: %s"
 msgstr ""
 
-#: plugin.c:733
+#: plugin.c:735
 #, gcc-internal-format, gfc-internal-format
 msgid "failed to initialize plugin %s"
 msgstr ""
 
-#: plugin.c:1007
+#: plugin.c:1009
 #, gcc-internal-format
 msgid "%<-iplugindir%> <dir> option not passed from the gcc driver"
 msgstr ""
 
-#: predict.c:2489
+#: predict.c:2522
 #, gcc-internal-format
 msgid "probability %qE must be constant floating-point expression"
 msgstr ""
 
-#: predict.c:2502
+#: predict.c:2535
 #, gcc-internal-format
 msgid "probability %qE is outside the range [0.0, 1.0]"
 msgstr ""
 
-#: predict.c:3482
+#: predict.c:3541
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing counts for called function %s"
 msgstr ""
@@ -27691,7 +28446,7 @@ msgstr ""
 msgid "start of RTL fragment must be on an earlier line than end"
 msgstr ""
 
-#: read-rtl.c:424
+#: read-rtl.c:496
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "ambiguous attribute '%s'; could be '%s' (via '%s:%s') or '%s' (via '%s:%s')"
@@ -27727,84 +28482,89 @@ msgstr ""
 msgid "output operand %d must use %<&%> constraint"
 msgstr ""
 
-#: regcprop.c:1200
+#: regcprop.c:1229
 #, gcc-internal-format
 msgid "%qs: [%u] bad %<next_regno%> for empty chain (%u)"
 msgstr ""
 
-#: regcprop.c:1212
+#: regcprop.c:1241
 #, gcc-internal-format
 msgid "%qs: loop in %<next_regno%> chain (%u)"
 msgstr ""
 
-#: regcprop.c:1215
+#: regcprop.c:1244
 #, gcc-internal-format
 msgid "%qs: [%u] bad %<oldest_regno%> (%u)"
 msgstr ""
 
-#: regcprop.c:1227
+#: regcprop.c:1256
 #, gcc-internal-format
 msgid "%qs: [%u] non-empty register in chain (%s %u %i)"
 msgstr ""
 
-#: reginfo.c:647
+#: reginfo.c:651
 #, gcc-internal-format
 msgid "cannot use %qs as a call-saved register"
 msgstr ""
 
-#: reginfo.c:651
+#: reginfo.c:655
 #, gcc-internal-format
 msgid "cannot use %qs as a call-used register"
 msgstr ""
 
-#: reginfo.c:663
+#: reginfo.c:667
 #, gcc-internal-format
 msgid "cannot use %qs as a fixed register"
 msgstr ""
 
-#: reginfo.c:690 config/arc/arc.c:1184 config/arc/arc.c:1226
+#: reginfo.c:694 config/arc/arc.c:1184 config/arc/arc.c:1226
 #: config/ia64/ia64.c:6036 config/ia64/ia64.c:6043 config/pa/pa.c:465
 #: config/pa/pa.c:472 config/sh/sh.c:8277 config/sh/sh.c:8284
 #, gcc-internal-format, gfc-internal-format
 msgid "unknown register name: %s"
 msgstr ""
 
-#: reginfo.c:703
+#: reginfo.c:707
 #, gcc-internal-format
 msgid "stack register used for global register variable"
 msgstr ""
 
-#: reginfo.c:709
+#: reginfo.c:713
 #, gcc-internal-format
 msgid "global register variable follows a function definition"
 msgstr ""
 
-#: reginfo.c:715
+#: reginfo.c:719
 #, gcc-internal-format
 msgid "register of %qD used for multiple global register variables"
 msgstr ""
 
-#: reginfo.c:718 config/rs6000/rs6000-logue.c:5488
+#: reginfo.c:722 config/rs6000/rs6000-logue.c:5499
 #, gcc-internal-format
 msgid "conflicts with %qD"
 msgstr ""
 
-#: reginfo.c:723
+#: reginfo.c:727
 #, gcc-internal-format
 msgid "call-clobbered register used for global register variable"
 msgstr ""
 
-#: reload.c:1293
+#: reload.c:1312
 #, gcc-internal-format
 msgid "cannot reload integer constant operand in %<asm%>"
 msgstr ""
 
-#: reload.c:1307
+#: reload.c:1326
 #, gcc-internal-format
 msgid "impossible register constraint in %<asm%>"
 msgstr ""
 
-#: reload.c:3672
+#: reload.c:2687
+#, gcc-internal-format
+msgid "the target does not support %<asm goto%> with outputs in %<asm%>"
+msgstr ""
+
+#: reload.c:3720
 #, gcc-internal-format
 msgid "%<&%> constraint used with no register class"
 msgstr ""
@@ -27950,76 +28710,81 @@ msgstr ""
 msgid "undefined named operand %qs"
 msgstr ""
 
-#: stor-layout.c:799
+#: stor-layout.c:802
 #, gcc-internal-format
 msgid "size of %q+D %E bytes exceeds maximum object size %wu"
 msgstr ""
 
-#: stor-layout.c:1180
+#: stor-layout.c:1183
 #, gcc-internal-format
 msgid "alignment %u of %qT is less than %u"
 msgstr ""
 
-#: stor-layout.c:1187
+#: stor-layout.c:1190
 #, gcc-internal-format
 msgid "%q+D offset %E in %qT isn%'t aligned to %u"
 msgstr ""
 
-#: stor-layout.c:1190
+#: stor-layout.c:1193
 #, gcc-internal-format
 msgid "%q+D offset %E in %qT may not be aligned to %u"
 msgstr ""
 
-#: stor-layout.c:1322
+#: stor-layout.c:1325
 #, gcc-internal-format
 msgid "packed attribute causes inefficient alignment for %q+D"
 msgstr ""
 
-#: stor-layout.c:1326
+#: stor-layout.c:1329
 #, gcc-internal-format
 msgid "packed attribute is unnecessary for %q+D"
 msgstr ""
 
-#: stor-layout.c:1346
+#: stor-layout.c:1349
 #, gcc-internal-format
 msgid "padding struct to align %q+D"
 msgstr ""
 
-#: stor-layout.c:1405
+#: stor-layout.c:1408
 #, gcc-internal-format
 msgid "offset of packed bit-field %qD has changed in GCC 4.4"
 msgstr ""
 
-#: stor-layout.c:1781
+#: stor-layout.c:1784
 #, gcc-internal-format
 msgid "padding struct size to alignment boundary"
 msgstr ""
 
-#: stor-layout.c:1809
+#: stor-layout.c:1812
 #, gcc-internal-format
 msgid "packed attribute causes inefficient alignment for %qE"
 msgstr ""
 
-#: stor-layout.c:1813
+#: stor-layout.c:1816
 #, gcc-internal-format
 msgid "packed attribute is unnecessary for %qE"
 msgstr ""
 
-#: stor-layout.c:1819
+#: stor-layout.c:1822
 #, gcc-internal-format
 msgid "packed attribute causes inefficient alignment"
 msgstr ""
 
-#: stor-layout.c:1821
+#: stor-layout.c:1824
 #, gcc-internal-format
 msgid "packed attribute is unnecessary"
 msgstr ""
 
-#: stor-layout.c:2585
+#: stor-layout.c:2599
 #, gcc-internal-format
 msgid "alignment of array elements is greater than element size"
 msgstr ""
 
+#: stor-layout.c:2605
+#, gcc-internal-format
+msgid "size of array element is not a multiple of its alignment"
+msgstr ""
+
 #: substring-locations.c:229
 #, gcc-internal-format
 msgid "format string is defined here"
@@ -28030,249 +28795,264 @@ msgstr ""
 msgid "%qD renamed after being referenced in assembly"
 msgstr ""
 
-#: symtab.c:1064
+#: symtab.c:1103
 #, gcc-internal-format
 msgid "function symbol is not function"
 msgstr ""
 
-#: symtab.c:1071
+#: symtab.c:1110
 #, gcc-internal-format
 msgid "inconsistent %<ifunc%> attribute"
 msgstr ""
 
-#: symtab.c:1079
+#: symtab.c:1118
 #, gcc-internal-format
 msgid "variable symbol is not variable"
 msgstr ""
 
-#: symtab.c:1085
+#: symtab.c:1124
 #, gcc-internal-format
 msgid "node has unknown type"
 msgstr ""
 
-#: symtab.c:1094
+#: symtab.c:1129
+#, gcc-internal-format, gfc-internal-format
+msgid "node has invalid order %i"
+msgstr ""
+
+#: symtab.c:1138
 #, gcc-internal-format
 msgid "node not found node->decl->decl_with_vis.symtab_node"
 msgstr ""
 
-#: symtab.c:1102
+#: symtab.c:1146
 #, gcc-internal-format
 msgid "node differs from node->decl->decl_with_vis.symtab_node"
 msgstr ""
 
-#: symtab.c:1113 symtab.c:1120
+#: symtab.c:1157 symtab.c:1164
 #, gcc-internal-format
 msgid "assembler name hash list corrupted"
 msgstr ""
 
-#: symtab.c:1129
+#: symtab.c:1173
 #, gcc-internal-format
 msgid "node not found in symtab assembler name hash"
 msgstr ""
 
-#: symtab.c:1138
+#: symtab.c:1182
 #, gcc-internal-format
 msgid "double linked list of assembler names corrupted"
 msgstr ""
 
-#: symtab.c:1143
+#: symtab.c:1187
 #, gcc-internal-format
 msgid "node has body_removed but is definition"
 msgstr ""
 
-#: symtab.c:1148
+#: symtab.c:1192
 #, gcc-internal-format
 msgid "node is analyzed but it is not a definition"
 msgstr ""
 
-#: symtab.c:1153
+#: symtab.c:1197
 #, gcc-internal-format
 msgid "node is alias but not implicit alias"
 msgstr ""
 
-#: symtab.c:1158
+#: symtab.c:1202
 #, gcc-internal-format
 msgid "node is alias but not definition"
 msgstr ""
 
-#: symtab.c:1163
+#: symtab.c:1207
 #, gcc-internal-format
 msgid "node is weakref but not an transparent_alias"
 msgstr ""
 
-#: symtab.c:1168
+#: symtab.c:1212
 #, gcc-internal-format
 msgid "node is transparent_alias but not an alias"
 msgstr ""
 
-#: symtab.c:1173
+#: symtab.c:1217
 #, gcc-internal-format
 msgid "node is symver but not alias"
 msgstr ""
 
-#: symtab.c:1182
+#: symtab.c:1226
 #, gcc-internal-format
 msgid "symver target is not exported with default visibility"
 msgstr ""
 
-#: symtab.c:1189
+#: symtab.c:1233
 #, gcc-internal-format
 msgid "symver is not exported with default visibility"
 msgstr ""
 
-#: symtab.c:1198
+#: symtab.c:1242
 #, gcc-internal-format
 msgid "node is in same_comdat_group list but has no comdat_group"
 msgstr ""
 
-#: symtab.c:1203
+#: symtab.c:1247
 #, gcc-internal-format
 msgid "same_comdat_group list across different groups"
 msgstr ""
 
-#: symtab.c:1208
+#: symtab.c:1252
 #, gcc-internal-format
 msgid "mixing different types of symbol in same comdat groups is not supported"
 msgstr ""
 
-#: symtab.c:1213
+#: symtab.c:1257
 #, gcc-internal-format
 msgid "node is alone in a comdat group"
 msgstr ""
 
-#: symtab.c:1220
+#: symtab.c:1264
 #, gcc-internal-format
 msgid "same_comdat_group is not a circular list"
 msgstr ""
 
-#: symtab.c:1235
+#: symtab.c:1279
 #, gcc-internal-format, gfc-internal-format
 msgid "comdat-local symbol referred to by %s outside its comdat"
 msgstr ""
 
-#: symtab.c:1245
+#: symtab.c:1289
 #, gcc-internal-format
 msgid "implicit_section flag is set but section isn%'t"
 msgstr ""
 
-#: symtab.c:1252
+#: symtab.c:1296
 #, gcc-internal-format
 msgid "Both section and comdat group is set"
 msgstr ""
 
-#: symtab.c:1264
+#: symtab.c:1308
 #, gcc-internal-format
 msgid "Alias and target%'s section differs"
 msgstr ""
 
-#: symtab.c:1271
+#: symtab.c:1315
 #, gcc-internal-format
 msgid "Alias and target%'s comdat groups differs"
 msgstr ""
 
-#: symtab.c:1286
+#: symtab.c:1330
 #, gcc-internal-format
 msgid "Transparent alias and target%'s assembler names differs"
 msgstr ""
 
-#: symtab.c:1294
+#: symtab.c:1338
 #, gcc-internal-format
 msgid "Chained transparent aliases"
 msgstr ""
 
-#: symtab.c:1317 symtab.c:1354
+#: symtab.c:1361 symtab.c:1379 symtab.c:1406
 #, gcc-internal-format
 msgid "symtab_node::verify failed"
 msgstr ""
 
-#: symtab.c:1350
+#: symtab.c:1378
+#, gcc-internal-format, gfc-internal-format
+msgid "invalid order in asm node %i"
+msgstr ""
+
+#: symtab.c:1402
 #, gcc-internal-format
 msgid ""
 "Two symbols with same comdat_group are not linked by the same_comdat_group "
 "list."
 msgstr ""
 
-#: symtab.c:1763
+#: symtab.c:1840
 #, gcc-internal-format
 msgid "function %q+D part of alias cycle"
 msgstr ""
 
-#: symtab.c:1765
+#: symtab.c:1842
 #, gcc-internal-format
 msgid "variable %q+D part of alias cycle"
 msgstr ""
 
-#: symtab.c:1793
+#: symtab.c:1870
 #, gcc-internal-format
 msgid "section of alias %q+D must match section of its target"
 msgstr ""
 
-#: targhooks.c:191
+#: targhooks.c:198
 #, gcc-internal-format
 msgid "%<__builtin_saveregs%> not supported by this target"
 msgstr ""
 
-#: targhooks.c:1024
+#: targhooks.c:1017
+#, gcc-internal-format
+msgid "%qs not supported on this target"
+msgstr ""
+
+#: targhooks.c:1060
 #, gcc-internal-format
 msgid "nested functions not supported on this target"
 msgstr ""
 
-#: targhooks.c:1037
+#: targhooks.c:1073
 #, gcc-internal-format
 msgid "nested function trampolines not supported on this target"
 msgstr ""
 
-#: targhooks.c:1588
+#: targhooks.c:1625
 #, gcc-internal-format
 msgid "target attribute is not supported on this machine"
 msgstr ""
 
-#: targhooks.c:1602
+#: targhooks.c:1639
 #, gcc-internal-format
 msgid "%<#pragma GCC target%> is not supported for this machine"
 msgstr ""
 
-#: toplev.c:864
+#: toplev.c:723
 #, gcc-internal-format
 msgid "cannot open %qs for writing: %m"
 msgstr ""
 
-#: toplev.c:886
+#: toplev.c:742
 #, gcc-internal-format
 msgid "%<-frecord-gcc-switches%> is not supported by the current target"
 msgstr ""
 
-#: toplev.c:935
+#: toplev.c:793
 #, gcc-internal-format
 msgid "stack usage computation not supported for this target"
 msgstr ""
 
-#: toplev.c:993
+#: toplev.c:851
 #, gcc-internal-format
 msgid "stack usage might be unbounded"
 msgstr ""
 
-#: toplev.c:998
+#: toplev.c:856
 #, gcc-internal-format
 msgid "stack usage might be %wu bytes"
 msgstr ""
 
-#: toplev.c:1001
+#: toplev.c:859
 #, gcc-internal-format
 msgid "stack usage is %wu bytes"
 msgstr ""
 
-#: toplev.c:1118
+#: toplev.c:976
 #, gcc-internal-format
 msgid "cannot open %s for writing: %m"
 msgstr ""
 
-#: toplev.c:1402
+#: toplev.c:1260
 #, gcc-internal-format
 msgid "this target does not support %qs"
 msgstr ""
 
-#: toplev.c:1436
+#: toplev.c:1294
 #, gcc-internal-format
 msgid ""
 "Graphite loop optimizations cannot be used (isl is not available) (%<-"
@@ -28280,422 +29060,439 @@ msgid ""
 "parallelize-all%>)"
 msgstr ""
 
-#: toplev.c:1447
+#: toplev.c:1305
 #, gcc-internal-format
 msgid "%<-fcf-protection=full%> is not supported for this target"
 msgstr ""
 
-#: toplev.c:1454
+#: toplev.c:1312
 #, gcc-internal-format
 msgid "%<-fcf-protection=branch%> is not supported for this target"
 msgstr ""
 
-#: toplev.c:1461
+#: toplev.c:1319
 #, gcc-internal-format
 msgid "%<-fcf-protection=return%> is not supported for this target"
 msgstr ""
 
-#: toplev.c:1476
+#: toplev.c:1334
 #, gcc-internal-format
 msgid "%<-fabi-version=1%> is no longer supported"
 msgstr ""
 
-#: toplev.c:1509
+#: toplev.c:1357
 #, gcc-internal-format
 msgid "instruction scheduling not supported on this target machine"
 msgstr ""
 
-#: toplev.c:1513
+#: toplev.c:1361
 #, gcc-internal-format
 msgid "this target machine does not have delayed branches"
 msgstr ""
 
-#: toplev.c:1527
+#: toplev.c:1375
 #, gcc-internal-format
 msgid "%<-f%sleading-underscore%> not supported on this target machine"
 msgstr ""
 
-#: toplev.c:1572
+#: toplev.c:1425
 #, gcc-internal-format
 msgid "could not close zeroed insn dump file %qs: %m"
 msgstr ""
 
-#: toplev.c:1607
+#: toplev.c:1460
 #, gcc-internal-format
 msgid "target system does not support the %qs debug format"
 msgstr ""
 
-#: toplev.c:1620
+#: toplev.c:1473
 #, gcc-internal-format
 msgid "variable tracking requested, but useless unless producing debug info"
 msgstr ""
 
-#: toplev.c:1624
+#: toplev.c:1477
 #, gcc-internal-format
 msgid "variable tracking requested, but not supported by this debug format"
 msgstr ""
 
-#: toplev.c:1663
+#: toplev.c:1516
 #, gcc-internal-format
 msgid "var-tracking-assignments changes selective scheduling"
 msgstr ""
 
-#: toplev.c:1694
+#: toplev.c:1547
 #, gcc-internal-format
 msgid ""
 "without %<-gdwarf-5%>, %<-gvariable-location-views=incompat5%> is equivalent "
 "to %<-gvariable-location-views%>"
 msgstr ""
 
-#: toplev.c:1710
+#: toplev.c:1563
 #, gcc-internal-format
 msgid ""
 "%<-ginternal-reset-location-views%> is forced disabled without %<-gvariable-"
 "location-views%>"
 msgstr ""
 
-#: toplev.c:1720
+#: toplev.c:1573
 #, gcc-internal-format
 msgid ""
 "%<-ginline-points%> is forced disabled without %<-gstatement-frontiers%>"
 msgstr ""
 
-#: toplev.c:1749
+#: toplev.c:1602
 #, gcc-internal-format
 msgid "%<-ffunction-sections%> not supported for this target"
 msgstr ""
 
-#: toplev.c:1755
+#: toplev.c:1608
 #, gcc-internal-format
 msgid "%<-fdata-sections%> not supported for this target"
 msgstr ""
 
-#: toplev.c:1763
+#: toplev.c:1616
 #, gcc-internal-format
 msgid "%<-fprefetch-loop-arrays%> not supported for this target"
 msgstr ""
 
-#: toplev.c:1769
+#: toplev.c:1622
 #, gcc-internal-format
 msgid ""
 "%<-fprefetch-loop-arrays%> not supported for this target (try %<-march%> "
 "switches)"
 msgstr ""
 
-#: toplev.c:1779
+#: toplev.c:1632
 #, gcc-internal-format
 msgid "%<-fprefetch-loop-arrays%> is not supported with %<-Os%>"
 msgstr ""
 
-#: toplev.c:1791
+#: toplev.c:1644
 #, gcc-internal-format
 msgid "%<-fassociative-math%> disabled; other options take precedence"
 msgstr ""
 
-#: toplev.c:1801
+#: toplev.c:1654
 #, gcc-internal-format
 msgid ""
 "%<-fstack-clash-protection%> is not supported on targets where the stack "
 "grows from lower to higher addresses"
 msgstr ""
 
-#: toplev.c:1811
+#: toplev.c:1664
 #, gcc-internal-format
 msgid ""
 "%<-fstack-check=%> and %<-fstack-clash_protection%> are mutually exclusive; "
 "disabling %<-fstack-check=%>"
 msgstr ""
 
-#: toplev.c:1829
+#: toplev.c:1682
 #, gcc-internal-format
 msgid "%<-fstack-protector%> not supported for this target"
 msgstr ""
 
-#: toplev.c:1841
+#: toplev.c:1694
 #, gcc-internal-format
 msgid ""
 "%<-fsanitize=address%> and %<-fsanitize=kernel-address%> are not supported "
 "for this target"
 msgstr ""
 
-#: toplev.c:2166
+#: toplev.c:1704
+#, gcc-internal-format
+msgid "%<-fsanitize=address%> not supported for this target"
+msgstr ""
+
+#: toplev.c:1713
+#, gcc-internal-format
+msgid ""
+"%<-fsanitize=kernel-address%> with stack protection is not supported without "
+"%<-fasan-shadow-offset=%> for this target"
+msgstr ""
+
+#: toplev.c:1723
+#, gcc-internal-format
+msgid "%qs is not supported for this target"
+msgstr ""
+
+#: toplev.c:2049
 #, gcc-internal-format
 msgid "error writing to %s: %m"
 msgstr ""
 
-#: toplev.c:2168
+#: toplev.c:2051
 #, gcc-internal-format
 msgid "error closing %s: %m"
 msgstr ""
 
-#: toplev.c:2285
+#: toplev.c:2171
 #, gcc-internal-format
 msgid "mpfr not configured to handle all floating modes"
 msgstr ""
 
-#: toplev.c:2361
+#: toplev.c:2247
 #, gcc-internal-format
 msgid "self-tests incompatible with %<-E%>"
 msgstr ""
 
-#: toplev.c:2376
+#: toplev.c:2262
 #, gcc-internal-format
 msgid "self-tests are not enabled in this build"
 msgstr ""
 
-#: trans-mem.c:607
+#: trans-mem.c:610
 #, gcc-internal-format
 msgid "invalid use of volatile lvalue inside transaction"
 msgstr ""
 
-#: trans-mem.c:610
+#: trans-mem.c:613
 #, gcc-internal-format
 msgid "invalid use of volatile lvalue inside %<transaction_safe%> function"
 msgstr ""
 
-#: trans-mem.c:642
+#: trans-mem.c:645
 #, gcc-internal-format
 msgid ""
 "%<transaction_may_cancel_outer%> function call not within outer transaction "
 "or %<transaction_may_cancel_outer%>"
 msgstr ""
 
-#: trans-mem.c:711 trans-mem.c:4819
+#: trans-mem.c:714 trans-mem.c:4823
 #, gcc-internal-format
 msgid "unsafe function call %qD within atomic transaction"
 msgstr ""
 
-#: trans-mem.c:718
+#: trans-mem.c:721
 #, gcc-internal-format
 msgid "unsafe function call %qE within atomic transaction"
 msgstr ""
 
-#: trans-mem.c:722
+#: trans-mem.c:725
 #, gcc-internal-format
 msgid "unsafe indirect function call within atomic transaction"
 msgstr ""
 
-#: trans-mem.c:730 trans-mem.c:4751
+#: trans-mem.c:733 trans-mem.c:4755
 #, gcc-internal-format
 msgid "unsafe function call %qD within %<transaction_safe%> function"
 msgstr ""
 
-#: trans-mem.c:737
+#: trans-mem.c:740
 #, gcc-internal-format
 msgid "unsafe function call %qE within %<transaction_safe%> function"
 msgstr ""
 
-#: trans-mem.c:741
+#: trans-mem.c:744
 #, gcc-internal-format
 msgid "unsafe indirect function call within %<transaction_safe%> function"
 msgstr ""
 
-#: trans-mem.c:756 trans-mem.c:4791
+#: trans-mem.c:759 trans-mem.c:4795
 #, gcc-internal-format
 msgid "%<asm%> not allowed in atomic transaction"
 msgstr ""
 
-#: trans-mem.c:759
+#: trans-mem.c:762
 #, gcc-internal-format
 msgid "%<asm%> not allowed in %<transaction_safe%> function"
 msgstr ""
 
-#: trans-mem.c:771
+#: trans-mem.c:774
 #, gcc-internal-format
 msgid "relaxed transaction in atomic transaction"
 msgstr ""
 
-#: trans-mem.c:774
+#: trans-mem.c:777
 #, gcc-internal-format
 msgid "relaxed transaction in %<transaction_safe%> function"
 msgstr ""
 
-#: trans-mem.c:781
+#: trans-mem.c:784
 #, gcc-internal-format
 msgid "outer transaction in transaction"
 msgstr ""
 
-#: trans-mem.c:784
+#: trans-mem.c:787
 #, gcc-internal-format
 msgid "outer transaction in %<transaction_may_cancel_outer%> function"
 msgstr ""
 
-#: trans-mem.c:788
+#: trans-mem.c:791
 #, gcc-internal-format
 msgid "outer transaction in %<transaction_safe%> function"
 msgstr ""
 
-#: trans-mem.c:4416
+#: trans-mem.c:4419
 #, gcc-internal-format
 msgid "%K%<asm%> not allowed in %<transaction_safe%> function"
 msgstr ""
 
-#: tree-cfg.c:356
+#: tree-cfg.c:354
 #, gcc-internal-format
 msgid "ignoring loop annotation"
 msgstr ""
 
-#: tree-cfg.c:2995
+#: tree-cfg.c:2973
 #, gcc-internal-format
 msgid "constant not recomputed when %<ADDR_EXPR%> changed"
 msgstr ""
 
-#: tree-cfg.c:3000
+#: tree-cfg.c:2978
 #, gcc-internal-format
 msgid "side effects not recomputed when %<ADDR_EXPR%> changed"
 msgstr ""
 
-#: tree-cfg.c:3015
+#: tree-cfg.c:2993
 #, gcc-internal-format
 msgid "address taken but %<TREE_ADDRESSABLE%> bit not set"
 msgstr ""
 
-#: tree-cfg.c:3037
+#: tree-cfg.c:3015
 #, gcc-internal-format
 msgid "invalid expression for min lvalue"
 msgstr ""
 
-#: tree-cfg.c:3048
+#: tree-cfg.c:3026
 #, gcc-internal-format
 msgid "invalid operand in indirect reference"
 msgstr ""
 
-#: tree-cfg.c:3073
+#: tree-cfg.c:3051
 #, gcc-internal-format
 msgid "non-scalar %qs"
 msgstr ""
 
-#: tree-cfg.c:3087
+#: tree-cfg.c:3065
 #, gcc-internal-format
 msgid "invalid position or size operand to %qs"
 msgstr ""
 
-#: tree-cfg.c:3093
+#: tree-cfg.c:3071
 #, gcc-internal-format
 msgid "integral result type precision does not match field size of %qs"
 msgstr ""
 
-#: tree-cfg.c:3102
+#: tree-cfg.c:3080
 #, gcc-internal-format
 msgid "mode size of non-integral result does not match field size of %qs"
 msgstr ""
 
-#: tree-cfg.c:3110
+#: tree-cfg.c:3088
 #, gcc-internal-format
 msgid "%qs of non-mode-precision operand"
 msgstr ""
 
-#: tree-cfg.c:3117
+#: tree-cfg.c:3095
 #, gcc-internal-format
 msgid "position plus size exceeds size of referenced object in %qs"
 msgstr ""
 
-#: tree-cfg.c:3128
+#: tree-cfg.c:3106
 #, gcc-internal-format
 msgid "type mismatch in %qs reference"
 msgstr ""
 
-#: tree-cfg.c:3144
+#: tree-cfg.c:3122
 #, gcc-internal-format
 msgid "non-top-level %qs"
 msgstr ""
 
-#: tree-cfg.c:3159
+#: tree-cfg.c:3137
 #, gcc-internal-format
 msgid "invalid operands to %qs"
 msgstr ""
 
-#: tree-cfg.c:3170 tree-cfg.c:3179 tree-cfg.c:3196 tree-cfg.c:3838
-#: tree-cfg.c:3867 tree-cfg.c:3884 tree-cfg.c:3905 tree-cfg.c:3951
-#: tree-cfg.c:3972 tree-cfg.c:4026 tree-cfg.c:4046 tree-cfg.c:4082
-#: tree-cfg.c:4103 tree-cfg.c:4135 tree-cfg.c:4211 tree-cfg.c:4243
-#: tree-cfg.c:4255 tree-cfg.c:4314 tree-cfg.c:4339 tree-cfg.c:4412
-#: tree-cfg.c:4490
+#: tree-cfg.c:3148 tree-cfg.c:3157 tree-cfg.c:3174 tree-cfg.c:3811
+#: tree-cfg.c:3840 tree-cfg.c:3857 tree-cfg.c:3878 tree-cfg.c:3926
+#: tree-cfg.c:3947 tree-cfg.c:4001 tree-cfg.c:4025 tree-cfg.c:4061
+#: tree-cfg.c:4082 tree-cfg.c:4114 tree-cfg.c:4190 tree-cfg.c:4222
+#: tree-cfg.c:4234 tree-cfg.c:4293 tree-cfg.c:4318 tree-cfg.c:4391
+#: tree-cfg.c:4469
 #, gcc-internal-format
 msgid "type mismatch in %qs"
 msgstr ""
 
-#: tree-cfg.c:3190
+#: tree-cfg.c:3168
 #, gcc-internal-format
 msgid "invalid %qs offset operator"
 msgstr ""
 
-#: tree-cfg.c:3214
+#: tree-cfg.c:3192
 #, gcc-internal-format
 msgid "conversion of %qs on the left hand side of %qs"
 msgstr ""
 
-#: tree-cfg.c:3222
+#: tree-cfg.c:3200
 #, gcc-internal-format
 msgid "conversion of register to a different size in %qs"
 msgstr ""
 
-#: tree-cfg.c:3242 tree-cfg.c:3268
+#: tree-cfg.c:3220 tree-cfg.c:3246
 #, gcc-internal-format
 msgid "invalid address operand in %qs"
 msgstr ""
 
-#: tree-cfg.c:3249 tree-cfg.c:3275
+#: tree-cfg.c:3227 tree-cfg.c:3253
 #, gcc-internal-format
 msgid "invalid offset operand in %qs"
 msgstr ""
 
-#: tree-cfg.c:3256 tree-cfg.c:3282
+#: tree-cfg.c:3234 tree-cfg.c:3260
 #, gcc-internal-format
 msgid "invalid clique in %qs"
 msgstr ""
 
-#: tree-cfg.c:3289 tree-cfg.c:4502
+#: tree-cfg.c:3267 tree-cfg.c:4481
 #, gcc-internal-format
 msgid "%qs in gimple IL"
 msgstr ""
 
-#: tree-cfg.c:3342
+#: tree-cfg.c:3320
 #, gcc-internal-format
 msgid "gimple call has two targets"
 msgstr ""
 
-#: tree-cfg.c:3351
+#: tree-cfg.c:3329
 #, gcc-internal-format
 msgid "gimple call has no target"
 msgstr ""
 
-#: tree-cfg.c:3358
+#: tree-cfg.c:3336
 #, gcc-internal-format
 msgid "invalid function in gimple call"
 msgstr ""
 
-#: tree-cfg.c:3368
+#: tree-cfg.c:3346
 #, gcc-internal-format
 msgid "non-function in gimple call"
 msgstr ""
 
-#: tree-cfg.c:3379
+#: tree-cfg.c:3357
 #, gcc-internal-format
 msgid "invalid pure const state for function"
 msgstr ""
 
-#: tree-cfg.c:3388
+#: tree-cfg.c:3366
 #, gcc-internal-format
 msgid "invalid LHS in gimple call"
 msgstr ""
 
-#: tree-cfg.c:3396
+#: tree-cfg.c:3374
 #, gcc-internal-format
 msgid "LHS in %<noreturn%> call"
 msgstr ""
 
-#: tree-cfg.c:3410
+#: tree-cfg.c:3388
 #, gcc-internal-format
 msgid "invalid conversion in gimple call"
 msgstr ""
 
-#: tree-cfg.c:3419
+#: tree-cfg.c:3397
 #, gcc-internal-format
 msgid "invalid static chain in gimple call"
 msgstr ""
 
-#: tree-cfg.c:3430
+#: tree-cfg.c:3408
 #, gcc-internal-format
 msgid "static chain with function that doesn%'t use one"
 msgstr ""
@@ -28706,510 +29503,510 @@ msgstr ""
 #. __builtin_unreachable internally, for example when IPA figures
 #. out a call cannot happen in a legal program.  In such cases,
 #. we must make sure arguments are stripped off.
-#: tree-cfg.c:3448
+#: tree-cfg.c:3426
 #, gcc-internal-format
 msgid "%<__builtin_unreachable%> or %<__builtin_trap%> call with arguments"
 msgstr ""
 
-#: tree-cfg.c:3471
+#: tree-cfg.c:3449
 #, gcc-internal-format
 msgid "invalid argument to gimple call"
 msgstr ""
 
-#: tree-cfg.c:3491
+#: tree-cfg.c:3469
 #, gcc-internal-format
 msgid "invalid operands in gimple comparison"
 msgstr ""
 
-#: tree-cfg.c:3507
+#: tree-cfg.c:3480
 #, gcc-internal-format
 msgid "mismatching comparison operand types"
 msgstr ""
 
-#: tree-cfg.c:3524
+#: tree-cfg.c:3497
 #, gcc-internal-format
 msgid "unsupported operation or type for vector comparison returning a boolean"
 msgstr ""
 
-#: tree-cfg.c:3539
+#: tree-cfg.c:3512
 #, gcc-internal-format
 msgid "non-vector operands in vector comparison"
 msgstr ""
 
-#: tree-cfg.c:3548
+#: tree-cfg.c:3521
 #, gcc-internal-format
 msgid "invalid vector comparison resulting type"
 msgstr ""
 
-#: tree-cfg.c:3555
+#: tree-cfg.c:3528
 #, gcc-internal-format
 msgid "bogus comparison result type"
 msgstr ""
 
-#: tree-cfg.c:3577
+#: tree-cfg.c:3550
 #, gcc-internal-format
 msgid "non-register as LHS of unary operation"
 msgstr ""
 
-#: tree-cfg.c:3583
+#: tree-cfg.c:3556
 #, gcc-internal-format
 msgid "invalid operand in unary operation"
 msgstr ""
 
-#: tree-cfg.c:3606
+#: tree-cfg.c:3579
 #, gcc-internal-format
 msgid "invalid vector types in nop conversion"
 msgstr ""
 
-#: tree-cfg.c:3643
+#: tree-cfg.c:3616
 #, gcc-internal-format
 msgid "invalid types in nop conversion"
 msgstr ""
 
-#: tree-cfg.c:3658
+#: tree-cfg.c:3631
 #, gcc-internal-format
 msgid "invalid types in address space conversion"
 msgstr ""
 
-#: tree-cfg.c:3672
+#: tree-cfg.c:3645
 #, gcc-internal-format
 msgid "invalid types in fixed-point conversion"
 msgstr ""
 
-#: tree-cfg.c:3687
+#: tree-cfg.c:3660
 #, gcc-internal-format
 msgid "invalid types in conversion to floating-point"
 msgstr ""
 
-#: tree-cfg.c:3702
+#: tree-cfg.c:3675
 #, gcc-internal-format
 msgid "invalid types in conversion to integer"
 msgstr ""
 
-#: tree-cfg.c:3742
+#: tree-cfg.c:3715
 #, gcc-internal-format
 msgid "type mismatch in %qs expression"
 msgstr ""
 
-#: tree-cfg.c:3764
+#: tree-cfg.c:3737
 #, gcc-internal-format
 msgid "invalid types for %qs"
 msgstr ""
 
-#: tree-cfg.c:3775
+#: tree-cfg.c:3748
 #, gcc-internal-format
 msgid "%qs should be from a scalar to a like vector"
 msgstr ""
 
-#: tree-cfg.c:3789
+#: tree-cfg.c:3762
 #, gcc-internal-format
 msgid "non-trivial conversion in unary operation"
 msgstr ""
 
-#: tree-cfg.c:3814
+#: tree-cfg.c:3787
 #, gcc-internal-format
 msgid "non-register as LHS of binary operation"
 msgstr ""
 
-#: tree-cfg.c:3821
+#: tree-cfg.c:3794
 #, gcc-internal-format
 msgid "invalid operands in binary operation"
 msgstr ""
 
-#: tree-cfg.c:3926
+#: tree-cfg.c:3901
 #, gcc-internal-format
 msgid "invalid non-vector operands to %qs"
 msgstr ""
 
-#: tree-cfg.c:3937
+#: tree-cfg.c:3912
 #, gcc-internal-format
 msgid "invalid (pointer) operands %qs"
 msgstr ""
 
-#: tree-cfg.c:4143
+#: tree-cfg.c:4122
 #, gcc-internal-format
 msgid "vector type expected in %qs"
 msgstr ""
 
-#: tree-cfg.c:4156
+#: tree-cfg.c:4135
 #, gcc-internal-format
 msgid "type mismatch in binary expression"
 msgstr ""
 
-#: tree-cfg.c:4184
+#: tree-cfg.c:4163
 #, gcc-internal-format
 msgid "non-register as LHS of ternary operation"
 msgstr ""
 
-#: tree-cfg.c:4193
+#: tree-cfg.c:4172
 #, gcc-internal-format
 msgid "invalid operands in ternary operation"
 msgstr ""
 
-#: tree-cfg.c:4225
+#: tree-cfg.c:4204
 #, gcc-internal-format
 msgid ""
 "the first argument of a %qs must be of a boolean vector type of the same "
 "number of elements as the result"
 msgstr ""
 
-#: tree-cfg.c:4267 tree-cfg.c:4326
+#: tree-cfg.c:4246 tree-cfg.c:4305
 #, gcc-internal-format
 msgid "vector types expected in %qs"
 msgstr ""
 
-#: tree-cfg.c:4282
+#: tree-cfg.c:4261
 #, gcc-internal-format
 msgid "vectors with different element number found in %qs"
 msgstr ""
 
-#: tree-cfg.c:4298
+#: tree-cfg.c:4277
 #, gcc-internal-format
 msgid "invalid mask type in %qs"
 msgstr ""
 
-#: tree-cfg.c:4358
+#: tree-cfg.c:4337
 #, gcc-internal-format
 msgid "not allowed type combination in %qs"
 msgstr ""
 
-#: tree-cfg.c:4367
+#: tree-cfg.c:4346
 #, gcc-internal-format
 msgid "invalid position or size in %qs"
 msgstr ""
 
-#: tree-cfg.c:4373
+#: tree-cfg.c:4352
 #, gcc-internal-format
 msgid "%qs into non-mode-precision operand"
 msgstr ""
 
-#: tree-cfg.c:4383
+#: tree-cfg.c:4362
 #, gcc-internal-format
 msgid "insertion out of range in %qs"
 msgstr ""
 
-#: tree-cfg.c:4393
+#: tree-cfg.c:4372
 #, gcc-internal-format
 msgid "%qs not at element boundary"
 msgstr ""
 
-#: tree-cfg.c:4448
+#: tree-cfg.c:4427
 #, gcc-internal-format
 msgid "non-trivial conversion in %qs"
 msgstr ""
 
-#: tree-cfg.c:4457
+#: tree-cfg.c:4436
 #, gcc-internal-format
 msgid "%qs LHS in clobber statement"
 msgstr ""
 
-#: tree-cfg.c:4476
+#: tree-cfg.c:4455
 #, gcc-internal-format
 msgid "invalid operand in %qs"
 msgstr ""
 
-#: tree-cfg.c:4517 tree-cfg.c:4543
+#: tree-cfg.c:4496 tree-cfg.c:4522
 #, gcc-internal-format
 msgid "invalid RHS for gimple memory store: %qs"
 msgstr ""
 
-#: tree-cfg.c:4577 tree-cfg.c:4595
+#: tree-cfg.c:4556 tree-cfg.c:4574
 #, gcc-internal-format
 msgid "incorrect type of vector %qs elements"
 msgstr ""
 
-#: tree-cfg.c:4586 tree-cfg.c:4603
+#: tree-cfg.c:4565 tree-cfg.c:4582
 #, gcc-internal-format
 msgid "incorrect number of vector %qs elements"
 msgstr ""
 
-#: tree-cfg.c:4611
+#: tree-cfg.c:4590
 #, gcc-internal-format
 msgid "incorrect type of vector CONSTRUCTOR elements"
 msgstr ""
 
-#: tree-cfg.c:4620
+#: tree-cfg.c:4599
 #, gcc-internal-format
 msgid "vector %qs with non-NULL element index"
 msgstr ""
 
-#: tree-cfg.c:4627
+#: tree-cfg.c:4606
 #, gcc-internal-format
 msgid "vector %qs element is not a GIMPLE value"
 msgstr ""
 
-#: tree-cfg.c:4636
+#: tree-cfg.c:4615
 #, gcc-internal-format
 msgid "non-vector %qs with elements"
 msgstr ""
 
-#: tree-cfg.c:4647
+#: tree-cfg.c:4626
 #, gcc-internal-format
 msgid "%qs with an always-false condition"
 msgstr ""
 
-#: tree-cfg.c:4706
+#: tree-cfg.c:4685
 #, gcc-internal-format
 msgid "invalid operand in return statement"
 msgstr ""
 
-#: tree-cfg.c:4721 c/gimple-parser.c:2419
+#: tree-cfg.c:4700 c/gimple-parser.c:2422
 #, gcc-internal-format
 msgid "invalid conversion in return statement"
 msgstr ""
 
-#: tree-cfg.c:4745
+#: tree-cfg.c:4724
 #, gcc-internal-format
 msgid "goto destination is neither a label nor a pointer"
 msgstr ""
 
-#: tree-cfg.c:4764
+#: tree-cfg.c:4743
 #, gcc-internal-format
 msgid "invalid operand to switch statement"
 msgstr ""
 
-#: tree-cfg.c:4772
+#: tree-cfg.c:4751
 #, gcc-internal-format
 msgid "non-integral type switch statement"
 msgstr ""
 
-#: tree-cfg.c:4782
+#: tree-cfg.c:4761
 #, gcc-internal-format
 msgid "invalid default case label in switch statement"
 msgstr ""
 
-#: tree-cfg.c:4794
+#: tree-cfg.c:4773
 #, gcc-internal-format
 msgid "invalid %<CASE_CHAIN%>"
 msgstr ""
 
-#: tree-cfg.c:4800
+#: tree-cfg.c:4779
 #, gcc-internal-format
 msgid "invalid case label in switch statement"
 msgstr ""
 
-#: tree-cfg.c:4807
+#: tree-cfg.c:4786
 #, gcc-internal-format
 msgid "invalid case range in switch statement"
 msgstr ""
 
-#: tree-cfg.c:4817
+#: tree-cfg.c:4796
 #, gcc-internal-format
-msgid "type mismatch for case label in switch statement"
+msgid "type precision mismatch in switch statement"
 msgstr ""
 
-#: tree-cfg.c:4827
+#: tree-cfg.c:4803
 #, gcc-internal-format
-msgid "type precision mismatch in switch statement"
+msgid "type mismatch for case label in switch statement"
 msgstr ""
 
-#: tree-cfg.c:4836
+#: tree-cfg.c:4812
 #, gcc-internal-format
 msgid "case labels not sorted in switch statement"
 msgstr ""
 
-#: tree-cfg.c:4879
+#: tree-cfg.c:4855
 #, gcc-internal-format
 msgid "label context is not the current function declaration"
 msgstr ""
 
-#: tree-cfg.c:4888
+#: tree-cfg.c:4864
 #, gcc-internal-format
 msgid "incorrect entry in %<label_to_block_map%>"
 msgstr ""
 
-#: tree-cfg.c:4898
+#: tree-cfg.c:4874
 #, gcc-internal-format
 msgid "incorrect setting of landing pad number"
 msgstr ""
 
-#: tree-cfg.c:4914
+#: tree-cfg.c:4890
 #, gcc-internal-format
 msgid "invalid comparison code in gimple cond"
 msgstr ""
 
-#: tree-cfg.c:4922
+#: tree-cfg.c:4898
 #, gcc-internal-format
 msgid "invalid labels in gimple cond"
 msgstr ""
 
-#: tree-cfg.c:5005 tree-cfg.c:5014
+#: tree-cfg.c:4981 tree-cfg.c:4990
 #, gcc-internal-format
 msgid "invalid %<PHI%> result"
 msgstr ""
 
-#: tree-cfg.c:5024
+#: tree-cfg.c:5000
 #, gcc-internal-format
 msgid "missing %<PHI%> def"
 msgstr ""
 
-#: tree-cfg.c:5038
+#: tree-cfg.c:5014
 #, gcc-internal-format
 msgid "invalid %<PHI%> argument"
 msgstr ""
 
-#: tree-cfg.c:5045
+#: tree-cfg.c:5021
 #, gcc-internal-format
 msgid "incompatible types in %<PHI%> argument %u"
 msgstr ""
 
-#: tree-cfg.c:5143
+#: tree-cfg.c:5119
 #, gcc-internal-format
 msgid "%<verify_gimple%> failed"
 msgstr ""
 
-#: tree-cfg.c:5200
+#: tree-cfg.c:5176
 #, gcc-internal-format
 msgid "dead statement in EH table"
 msgstr ""
 
-#: tree-cfg.c:5216
+#: tree-cfg.c:5192
 #, gcc-internal-format
 msgid "location references block not in block tree"
 msgstr ""
 
-#: tree-cfg.c:5265
+#: tree-cfg.c:5241
 #, gcc-internal-format
 msgid "local declaration from a different function"
 msgstr ""
 
-#: tree-cfg.c:5368
+#: tree-cfg.c:5344
 #, gcc-internal-format
 msgid "gimple_bb (phi) is set to a wrong basic block"
 msgstr ""
 
-#: tree-cfg.c:5377
+#: tree-cfg.c:5353
 #, gcc-internal-format
 msgid "PHI node with location"
 msgstr ""
 
-#: tree-cfg.c:5388 tree-cfg.c:5435
+#: tree-cfg.c:5364 tree-cfg.c:5411
 #, gcc-internal-format
 msgid "incorrect sharing of tree nodes"
 msgstr ""
 
-#: tree-cfg.c:5396
+#: tree-cfg.c:5372
 #, gcc-internal-format
 msgid "virtual PHI with argument locations"
 msgstr ""
 
-#: tree-cfg.c:5423
+#: tree-cfg.c:5399
 #, gcc-internal-format
 msgid "gimple_bb (stmt) is set to a wrong basic block"
 msgstr ""
 
-#: tree-cfg.c:5463
+#: tree-cfg.c:5439
 #, gcc-internal-format
 msgid "statement marked for throw, but doesn%'t"
 msgstr ""
 
-#: tree-cfg.c:5469
+#: tree-cfg.c:5445
 #, gcc-internal-format
 msgid "statement marked for throw in middle of block"
 msgstr ""
 
-#: tree-cfg.c:5491
+#: tree-cfg.c:5467
 #, gcc-internal-format
 msgid "verify_gimple failed"
 msgstr ""
 
-#: tree-cfg.c:5513
+#: tree-cfg.c:5489
 #, gcc-internal-format
 msgid "ENTRY_BLOCK has IL associated with it"
 msgstr ""
 
-#: tree-cfg.c:5520
+#: tree-cfg.c:5496
 #, gcc-internal-format
 msgid "EXIT_BLOCK has IL associated with it"
 msgstr ""
 
-#: tree-cfg.c:5527
+#: tree-cfg.c:5503
 #, gcc-internal-format, gfc-internal-format
 msgid "fallthru to exit from bb %d"
 msgstr ""
 
-#: tree-cfg.c:5551
+#: tree-cfg.c:5527
 #, gcc-internal-format
 msgid "nonlocal label "
 msgstr ""
 
-#: tree-cfg.c:5560
+#: tree-cfg.c:5536
 #, gcc-internal-format
 msgid "EH landing pad label "
 msgstr ""
 
-#: tree-cfg.c:5569 tree-cfg.c:5578 tree-cfg.c:5603
+#: tree-cfg.c:5545 tree-cfg.c:5554 tree-cfg.c:5579
 #, gcc-internal-format
 msgid "label "
 msgstr ""
 
-#: tree-cfg.c:5593
+#: tree-cfg.c:5569
 #, gcc-internal-format, gfc-internal-format
 msgid "control flow in the middle of basic block %d"
 msgstr ""
 
-#: tree-cfg.c:5626
+#: tree-cfg.c:5602
 #, gcc-internal-format, gfc-internal-format
 msgid "fallthru edge after a control statement in bb %d"
 msgstr ""
 
-#: tree-cfg.c:5639
+#: tree-cfg.c:5615
 #, gcc-internal-format, gfc-internal-format
 msgid "true/false edge after a non-GIMPLE_COND in bb %d"
 msgstr ""
 
-#: tree-cfg.c:5662 tree-cfg.c:5684 tree-cfg.c:5701 tree-cfg.c:5770
+#: tree-cfg.c:5638 tree-cfg.c:5660 tree-cfg.c:5677 tree-cfg.c:5746
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong outgoing edge flags at end of bb %d"
 msgstr ""
 
-#: tree-cfg.c:5672
+#: tree-cfg.c:5648
 #, gcc-internal-format, gfc-internal-format
 msgid "explicit goto at end of bb %d"
 msgstr ""
 
-#: tree-cfg.c:5706
+#: tree-cfg.c:5682
 #, gcc-internal-format, gfc-internal-format
 msgid "return edge does not point to exit in bb %d"
 msgstr ""
 
-#: tree-cfg.c:5736
+#: tree-cfg.c:5712
 #, gcc-internal-format
 msgid "found default case not at the start of case vector"
 msgstr ""
 
-#: tree-cfg.c:5744
+#: tree-cfg.c:5720
 #, gcc-internal-format
 msgid "case labels not sorted: "
 msgstr ""
 
-#: tree-cfg.c:5761
+#: tree-cfg.c:5737
 #, gcc-internal-format, gfc-internal-format
 msgid "extra outgoing edge %d->%d"
 msgstr ""
 
-#: tree-cfg.c:5784
+#: tree-cfg.c:5760
 #, gcc-internal-format, gfc-internal-format
 msgid "missing edge %i->%i"
 msgstr ""
 
-#: tree-cfg.c:9412
+#: tree-cfg.c:9430
 #, gcc-internal-format
 msgid "%<noreturn%> function does return"
 msgstr ""
 
-#: tree-cfg.c:9433 tree-cfg.c:9465
+#: tree-cfg.c:9451 tree-cfg.c:9483
 #, gcc-internal-format
 msgid "control reaches end of non-void function"
 msgstr ""
 
-#: tree-cfg.c:9531
+#: tree-cfg.c:9549
 #, gcc-internal-format
 msgid ""
 "ignoring return value of %qD declared with attribute %<warn_unused_result%>"
 msgstr ""
 
-#: tree-cfg.c:9536 cp/cvt.c:1109
+#: tree-cfg.c:9554 cp/cvt.c:1119
 #, gcc-internal-format
 msgid ""
 "ignoring return value of function declared with attribute "
@@ -29271,163 +30068,173 @@ msgstr ""
 msgid "BB %i has incorrect fallthru edge"
 msgstr ""
 
-#: tree-inline.c:3845
+#: tree-inline.c:3855
 #, gcc-internal-format
 msgid "function %q+F can never be copied because it receives a non-local goto"
 msgstr ""
 
-#: tree-inline.c:3852
+#: tree-inline.c:3862
 #, 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.c:3892
+#: tree-inline.c:3902
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses alloca (override using "
 "the always_inline attribute)"
 msgstr ""
 
-#: tree-inline.c:3906
+#: tree-inline.c:3916
 #, gcc-internal-format
 msgid "function %q+F can never be inlined because it uses setjmp"
 msgstr ""
 
-#: tree-inline.c:3920
+#: tree-inline.c:3930
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses variable argument lists"
 msgstr ""
 
-#: tree-inline.c:3932
+#: tree-inline.c:3942
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses setjmp-longjmp exception "
 "handling"
 msgstr ""
 
-#: tree-inline.c:3940
+#: tree-inline.c:3950
 #, gcc-internal-format
 msgid "function %q+F can never be inlined because it uses non-local goto"
 msgstr ""
 
-#: tree-inline.c:3952
+#: tree-inline.c:3962
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses %<__builtin_return%> or "
 "%<__builtin_apply_args%>"
 msgstr ""
 
-#: tree-inline.c:3972
+#: tree-inline.c:3982
 #, gcc-internal-format
 msgid "function %q+F can never be inlined because it contains a computed goto"
 msgstr ""
 
-#: tree-inline.c:4073
+#: tree-inline.c:4083
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it is suppressed using %<-fno-"
 "inline%>"
 msgstr ""
 
-#: tree-inline.c:4081
+#: tree-inline.c:4091
 #, gcc-internal-format
 msgid ""
 "function %q+F can never be inlined because it uses attributes conflicting "
 "with inlining"
 msgstr ""
 
-#: tree-inline.c:4759
+#: tree-inline.c:4776
 #, gcc-internal-format
 msgid "inlining failed in call to %<always_inline%> %q+F: %s"
 msgstr ""
 
-#: tree-inline.c:4762 tree-inline.c:4783
+#: tree-inline.c:4779 tree-inline.c:4800
 #, gcc-internal-format
 msgid "called from here"
 msgstr ""
 
-#: tree-inline.c:4765 tree-inline.c:4786
+#: tree-inline.c:4782 tree-inline.c:4803
 #, gcc-internal-format
 msgid "called from this function"
 msgstr ""
 
-#: tree-inline.c:4779
+#: tree-inline.c:4796
 #, gcc-internal-format
 msgid "inlining failed in call to %q+F: %s"
 msgstr ""
 
-#: tree-into-ssa.c:3347
+#: tree-into-ssa.c:3352
 #, gcc-internal-format
 msgid "statement uses released SSA name"
 msgstr ""
 
-#: tree-into-ssa.c:3359
+#: tree-into-ssa.c:3364
 #, gcc-internal-format
 msgid "cannot update SSA form"
 msgstr ""
 
-#: tree-into-ssa.c:3450 tree-outof-ssa.c:902 tree-ssa-coalesce.c:1003
+#: tree-into-ssa.c:3455 tree-outof-ssa.c:902 tree-ssa-coalesce.c:1003
 #, gcc-internal-format
 msgid "SSA corruption"
 msgstr ""
 
-#: tree-nested.c:1061
+#: tree-nested.c:1163
 #, gcc-internal-format, gfc-internal-format
 msgid "%s from %s referenced in %s"
 msgstr ""
 
-#: tree-nested.c:2774
+#: tree-nested.c:2924
 #, gcc-internal-format, gfc-internal-format
 msgid "%s from %s called in %s"
 msgstr ""
 
-#: tree-profile.c:621
+#: tree-profile.c:624
 #, gcc-internal-format
 msgid "invalid regular expression %qs in %qs"
 msgstr ""
 
-#: tree-profile.c:711
+#: tree-profile.c:714
 #, gcc-internal-format
 msgid "target does not support atomic profile update, single mode is selected"
 msgstr ""
 
-#: tree-ssa-ccp.c:3572
-msgid "%G%qs pointer null"
+#: tree-ssa-alias.c:3847
+#, gcc-internal-format, gfc-internal-format
+msgid "invalid fn spec attribute \"%s\""
+msgstr ""
+
+#: tree-ssa-alias.c:3886
+#, gcc-internal-format, gfc-internal-format
+msgid "invalid fn spec attribute \"%s\" arg %i"
+msgstr ""
+
+#: tree-ssa-ccp.c:3567
+msgid "%G%qs pointer is null"
 msgstr ""
 
-#: tree-ssa-ccp.c:3575 c-family/c-common.c:5543
+#: tree-ssa-ccp.c:3570 c-family/c-common.c:5601
 #, gcc-internal-format
 msgid "in a call to non-static member function %qD"
 msgstr ""
 
-#: tree-ssa-ccp.c:3581
+#: tree-ssa-ccp.c:3576
 msgid "%Gargument %u null where non-null expected"
 msgstr ""
 
-#: tree-ssa-ccp.c:3587
+#: tree-ssa-ccp.c:3582
 #, gcc-internal-format
 msgid "in a call to built-in function %qD"
 msgstr ""
 
-#: tree-ssa-ccp.c:3591 c-family/c-common.c:5553
+#: tree-ssa-ccp.c:3586 c-family/c-common.c:5611
 #, gcc-internal-format
 msgid "in a call to function %qD declared %qs"
 msgstr ""
 
-#: tree-ssa-loop-niter.c:3360
+#: tree-ssa-loop-niter.c:3374
 #, gcc-internal-format, gfc-internal-format
 msgid "iteration %s invokes undefined behavior"
 msgstr ""
 
-#: tree-ssa-loop-niter.c:3361
+#: tree-ssa-loop-niter.c:3375
 #, gcc-internal-format
 msgid "within this loop"
 msgstr ""
 
-#: tree-ssa-loop-prefetch.c:2095
+#: tree-ssa-loop-prefetch.c:2092
 #, gcc-internal-format
 msgid "%<l1-cache-size%> parameter is not a power of two %d"
 msgstr ""
@@ -29467,114 +30274,63 @@ msgstr ""
 msgid "statement volatile flag not up to date"
 msgstr ""
 
-#: tree-ssa-strlen.c:2149
+#: tree-ssa-strlen.c:2010
 msgid ""
 "%G%qD writing one too many bytes into a region of a size that depends on "
 "%<strlen%>"
 msgstr ""
 
-#: tree-ssa-strlen.c:2153
+#: tree-ssa-strlen.c:2014
 msgid ""
 "%Gwriting one too many bytes into a region of a size that depends on %<strlen"
 "%>"
 msgstr ""
 
-#: tree-ssa-strlen.c:2163
+#: tree-ssa-strlen.c:2024
 msgid "%G%qD writing %wu byte into a region of size %wu"
 msgid_plural "%G%qD writing %wu bytes into a region of size %wu"
 msgstr[0] ""
 msgstr[1] ""
 
-#: tree-ssa-strlen.c:2171
+#: tree-ssa-strlen.c:2032
 msgid "%Gwriting %wu byte into a region of size %wu"
 msgid_plural "%Gwriting %wu bytes into a region of size %wu"
 msgstr[0] ""
 msgstr[1] ""
 
-#: tree-ssa-strlen.c:2181
+#: tree-ssa-strlen.c:2042
 msgid "%G%qD writing %wu byte into a region of size between %wu and %wu"
 msgid_plural ""
 "%G%qD writing %wu bytes into a region of size between %wu and %wu"
 msgstr[0] ""
 msgstr[1] ""
 
-#: tree-ssa-strlen.c:2189
+#: tree-ssa-strlen.c:2050
 msgid "%Gwriting %wu byte into a region of size between %wu and %wu"
 msgid_plural "%Gwriting %wu bytes into a region of size between %wu and %wu"
 msgstr[0] ""
 msgstr[1] ""
 
-#: tree-ssa-strlen.c:2199
+#: tree-ssa-strlen.c:2060
 msgid "%G%qD writing between %wu and %wu bytes into a region of size %wu"
 msgstr ""
 
-#: tree-ssa-strlen.c:2205
+#: tree-ssa-strlen.c:2066
 msgid "%Gwriting between %wu and %wu bytes into a region of size %wu"
 msgstr ""
 
-#: tree-ssa-strlen.c:2213
+#: tree-ssa-strlen.c:2074
 msgid ""
 "%G%qD writing between %wu and %wu bytes into a region of size between %wu "
 "and %wu"
 msgstr ""
 
-#: tree-ssa-strlen.c:2219
+#: tree-ssa-strlen.c:2080
 msgid ""
 "%Gwriting between %wu and %wu bytes into a region of size between %wu and %wu"
 msgstr ""
 
-#: tree-ssa-strlen.c:2256
-#, gcc-internal-format
-msgid "at offset %s to object %qD with size %E declared here"
-msgstr ""
-
-#: tree-ssa-strlen.c:2260
-#, gcc-internal-format
-msgid "at offset %s to object %qD declared here"
-msgstr ""
-
-#: tree-ssa-strlen.c:2292
-#, gcc-internal-format
-msgid "at offset %s to an object with size %wu declared here"
-msgstr ""
-
-#: tree-ssa-strlen.c:2299
-#, gcc-internal-format
-msgid "at offset %s to an object with size at most %wu declared here"
-msgstr ""
-
-#: tree-ssa-strlen.c:2304
-#, gcc-internal-format, gfc-internal-format
-msgid "at offset %s to an object declared here"
-msgstr ""
-
-#: tree-ssa-strlen.c:2308
-#, gcc-internal-format
-msgid "at offset %s to an object with size between %wu and %wu declared here"
-msgstr ""
-
-#: tree-ssa-strlen.c:2316
-#, gcc-internal-format
-msgid "at offset %s to an object with size %wu allocated by %qE here"
-msgstr ""
-
-#: tree-ssa-strlen.c:2323
-#, gcc-internal-format
-msgid "at offset %s to an object with size at most %wu allocated by %qD here"
-msgstr ""
-
-#: tree-ssa-strlen.c:2328
-#, gcc-internal-format
-msgid "at offset %s to an object allocated by %qE here"
-msgstr ""
-
-#: tree-ssa-strlen.c:2333
-#, gcc-internal-format
-msgid ""
-"at offset %s to an object with size between %wu and %wu allocated by %qE here"
-msgstr ""
-
-#: tree-ssa-strlen.c:3224
+#: tree-ssa-strlen.c:2975
 msgid ""
 "%G%qD output truncated before terminating nul copying %E byte from a string "
 "of the same length"
@@ -29584,20 +30340,20 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: tree-ssa-strlen.c:3240
+#: tree-ssa-strlen.c:2991
 msgid "%G%qD output truncated copying %E byte from a string of length %wu"
 msgid_plural ""
 "%G%qD output truncated copying %E bytes from a string of length %wu"
 msgstr[0] ""
 msgstr[1] ""
 
-#: tree-ssa-strlen.c:3247
+#: tree-ssa-strlen.c:2998
 msgid ""
 "%G%qD output truncated copying between %wu and %wu bytes from a string of "
 "length %wu"
 msgstr ""
 
-#: tree-ssa-strlen.c:3259
+#: tree-ssa-strlen.c:3010
 msgid ""
 "%G%qD output may be truncated copying %E byte from a string of length %wu"
 msgid_plural ""
@@ -29605,55 +30361,55 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: tree-ssa-strlen.c:3266 tree-ssa-strlen.c:3282
+#: tree-ssa-strlen.c:3017 tree-ssa-strlen.c:3033
 msgid ""
 "%G%qD output may be truncated copying between %wu and %wu bytes from a "
 "string of length %wu"
 msgstr ""
 
-#: tree-ssa-strlen.c:3423
+#: tree-ssa-strlen.c:3175
 msgid ""
 "%G%qD output truncated before terminating nul copying as many bytes from a "
 "string as its length"
 msgstr ""
 
-#: tree-ssa-strlen.c:3429
+#: tree-ssa-strlen.c:3181
 msgid "%G%qD specified bound depends on the length of the source argument"
 msgstr ""
 
-#: tree-ssa-strlen.c:3436
+#: tree-ssa-strlen.c:3188
 #, gcc-internal-format
 msgid "length computed here"
 msgstr ""
 
-#: tree-ssa-strlen.c:4341
+#: tree-ssa-strlen.c:4115
 msgid ""
 "%G%qD of a string of length %wu or more and an array of size %wu evaluates "
 "to nonzero"
 msgstr ""
 
-#: tree-ssa-strlen.c:4343
+#: tree-ssa-strlen.c:4117
 msgid ""
 "%G%qD of a string of length %wu and an array of size %wu evaluates to nonzero"
 msgstr ""
 
-#: tree-ssa-strlen.c:4350
+#: tree-ssa-strlen.c:4124
 msgid ""
 "%G%qD of strings of length %wu and %wu and bound of %wu evaluates to nonzero"
 msgstr ""
 
-#: tree-ssa-strlen.c:4355
+#: tree-ssa-strlen.c:4129
 msgid ""
 "%G%qD of a string of length %wu, an array of size %wu and bound of %wu "
 "evaluates to nonzero"
 msgstr ""
 
-#: tree-ssa-strlen.c:4365
+#: tree-ssa-strlen.c:4140
 #, gcc-internal-format
 msgid "in this expression"
 msgstr ""
 
-#: tree-ssa-uninit.c:194 varasm.c:343
+#: tree-ssa-uninit.c:195 varasm.c:367 varasm.c:7788
 #, gcc-internal-format
 msgid "%qD was declared here"
 msgstr ""
@@ -29666,37 +30422,37 @@ msgstr ""
 msgid "%G%qE may be used uninitialized"
 msgstr ""
 
-#: tree-ssa-uninit.c:539
+#: tree-ssa-uninit.c:547
 #, gcc-internal-format
-msgid "in a call to %qD declared with attribute %<access (%s, %u)%> here"
+msgid "in a call to %qD declared with attribute %<%s%> here"
 msgstr ""
 
-#: tree-ssa-uninit.c:547
+#: tree-ssa-uninit.c:554
 #, gcc-internal-format
-msgid "in a call to %qT declared with attribute %<access (%s, %u)%>"
+msgid "in a call to %qT declared with attribute %<%s%>"
 msgstr ""
 
-#: tree-ssa-uninit.c:555
+#: tree-ssa-uninit.c:570
 #, gcc-internal-format
-msgid "by argument %u of type %qT to %qD declared here"
+msgid "by argument %u of type %s to %qD declared here"
 msgstr ""
 
-#: tree-ssa-uninit.c:562
+#: tree-ssa-uninit.c:578
 #, gcc-internal-format
-msgid "by argument %u of type %qT to %qT"
+msgid "by argument %u of type %s to %qT"
 msgstr ""
 
-#: tree-ssa-uninit.c:616
+#: tree-ssa-uninit.c:633
 #, gcc-internal-format
 msgid "%qD is used uninitialized"
 msgstr ""
 
-#: tree-ssa-uninit.c:621
+#: tree-ssa-uninit.c:638
 #, gcc-internal-format
 msgid "%qD may be used uninitialized"
 msgstr ""
 
-#: tree-ssa-uninit.c:2885
+#: tree-ssa-uninit.c:2968
 #, gcc-internal-format
 msgid "%qD may be used uninitialized in this function"
 msgstr ""
@@ -29766,7 +30522,7 @@ msgstr ""
 msgid "SSA_NAME created in two different blocks %i and %i"
 msgstr ""
 
-#: tree-ssa.c:836 tree-ssa.c:1170
+#: tree-ssa.c:836 tree-ssa.c:1176
 #, gcc-internal-format
 msgid "SSA_NAME_DEF_STMT is wrong"
 msgstr ""
@@ -29816,32 +30572,37 @@ msgstr ""
 msgid "PHI argument is not SSA_NAME, or invariant"
 msgstr ""
 
-#: tree-ssa.c:1007
+#: tree-ssa.c:992
+#, gcc-internal-format
+msgid "PHI argument on abnormal edge is not SSA_NAME"
+msgstr ""
+
+#: tree-ssa.c:1013
 #, gcc-internal-format
 msgid "address taken, but ADDRESSABLE bit not set"
 msgstr ""
 
-#: tree-ssa.c:1014
+#: tree-ssa.c:1020
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong edge %d->%d for PHI argument"
 msgstr ""
 
-#: tree-ssa.c:1089
+#: tree-ssa.c:1095
 #, gcc-internal-format
 msgid "shared SSA name info"
 msgstr ""
 
-#: tree-ssa.c:1116
+#: tree-ssa.c:1122
 #, gcc-internal-format, gfc-internal-format
 msgid "AUX pointer initialized for edge %d->%d"
 msgstr ""
 
-#: tree-ssa.c:1142
+#: tree-ssa.c:1148
 #, gcc-internal-format
 msgid "stmt (%p) marked modified after optimization pass: "
 msgstr ""
 
-#: tree-ssa.c:1208
+#: tree-ssa.c:1214
 #, gcc-internal-format
 msgid "verify_ssa failed"
 msgstr ""
@@ -29856,138 +30617,138 @@ msgstr ""
 msgid "target specific builtin not available"
 msgstr ""
 
-#: tree-vect-generic.c:288 tree-vect-generic.c:446 tree-vect-generic.c:1968
+#: tree-vect-generic.c:276 tree-vect-generic.c:433 tree-vect-generic.c:1961
 #, gcc-internal-format
 msgid "vector operation will be expanded piecewise"
 msgstr ""
 
-#: tree-vect-generic.c:291
+#: tree-vect-generic.c:279
 #, gcc-internal-format
 msgid "vector operation will be expanded in parallel"
 msgstr ""
 
-#: tree-vect-generic.c:344
+#: tree-vect-generic.c:332
 #, gcc-internal-format
 msgid "vector operation will be expanded with a single scalar operation"
 msgstr ""
 
-#: tree-vect-generic.c:1055
+#: tree-vect-generic.c:1042
 #, gcc-internal-format
 msgid "vector condition will be expanded piecewise"
 msgstr ""
 
-#: tree-vect-generic.c:1543
+#: tree-vect-generic.c:1530
 #, gcc-internal-format
 msgid "vector shuffling operation will be expanded piecewise"
 msgstr ""
 
-#: tree-vect-loop.c:3901
+#: tree-vect-loop.c:4247
 #, gcc-internal-format
 msgid "vectorization did not happen for a simd loop"
 msgstr ""
 
-#: tree.c:2045
+#: tree.c:2127
 #, gcc-internal-format
 msgid "non-constant element in constant CONSTRUCTOR"
 msgstr ""
 
-#: tree.c:2047
+#: tree.c:2129
 #, gcc-internal-format
 msgid "side-effects element in no-side-effects CONSTRUCTOR"
 msgstr ""
 
-#: tree.c:8143
+#: tree.c:8270
 #, gcc-internal-format
 msgid "arrays of functions are not meaningful"
 msgstr ""
 
-#: tree.c:8307
+#: tree.c:8434
 #, gcc-internal-format
 msgid "function return type cannot be function"
 msgstr ""
 
-#: tree.c:9687 tree.c:9772 tree.c:9835
+#: tree.c:9814 tree.c:9899 tree.c:9962
 #, gcc-internal-format, gfc-internal-format
 msgid "tree check: %s, have %s in %s, at %s:%d"
 msgstr ""
 
-#: tree.c:9724
+#: tree.c:9851
 #, gcc-internal-format, gfc-internal-format
 msgid "tree check: expected none of %s, have %s in %s, at %s:%d"
 msgstr ""
 
-#: tree.c:9737
+#: tree.c:9864
 #, gcc-internal-format
 msgid "tree check: expected class %qs, have %qs (%s) in %s, at %s:%d"
 msgstr ""
 
-#: tree.c:9786
+#: tree.c:9913
 #, gcc-internal-format
 msgid "tree check: did not expect class %qs, have %qs (%s) in %s, at %s:%d"
 msgstr ""
 
-#: tree.c:9799
+#: tree.c:9926
 #, gcc-internal-format
 msgid "tree check: expected %<omp_clause %s%>, have %qs in %s, at %s:%d"
 msgstr ""
 
-#: tree.c:9861
+#: tree.c:9988
 #, gcc-internal-format
 msgid ""
 "tree check: expected tree that contains %qs structure, have %qs in %s, at %s:"
 "%d"
 msgstr ""
 
-#: tree.c:9875
+#: tree.c:10002
 #, gcc-internal-format
 msgid ""
 "tree check: accessed elt %d of %<tree_int_cst%> with %d elts in %s, at %s:%d"
 msgstr ""
 
-#: tree.c:9888
+#: tree.c:10015
 #, gcc-internal-format
 msgid ""
 "tree check: accessed elt %d of %<tree_vec%> with %d elts in %s, at %s:%d"
 msgstr ""
 
-#: tree.c:9901
+#: tree.c:10028
 #, gcc-internal-format, gfc-internal-format
 msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
 msgstr ""
 
-#: tree.c:9914
+#: tree.c:10041
 #, gcc-internal-format
 msgid ""
 "tree check: accessed operand %d of %<omp_clause %s%> with %d operands in %s, "
 "at %s:%d"
 msgstr ""
 
-#: tree.c:13043
+#: tree.c:13221
 #, gcc-internal-format
 msgid "%qD is deprecated: %s"
 msgstr ""
 
-#: tree.c:13046
+#: tree.c:13224
 #, gcc-internal-format
 msgid "%qD is deprecated"
 msgstr ""
 
-#: tree.c:13069
+#: tree.c:13247
 #, gcc-internal-format
 msgid "%qE is deprecated: %s"
 msgstr ""
 
-#: tree.c:13072
+#: tree.c:13250
 #, gcc-internal-format
 msgid "%qE is deprecated"
 msgstr ""
 
-#: tree.c:13078
+#: tree.c:13256
 #, gcc-internal-format, gfc-internal-format
 msgid "type is deprecated: %s"
 msgstr ""
 
-#: tree.c:13081
+#: tree.c:13259
 #, gcc-internal-format
 msgid "type is deprecated"
 msgstr ""
@@ -30012,443 +30773,465 @@ msgstr ""
 #. - vector types may differ by TYPE_VECTOR_OPAQUE
 #.
 #. Convenience macro for matching individual fields.
-#: tree.c:13884
+#: tree.c:14079
 #, gcc-internal-format, gfc-internal-format
 msgid "type variant differs by %s"
 msgstr ""
 
-#: tree.c:13925
+#: tree.c:14120
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_SIZE_UNIT%>"
 msgstr ""
 
-#: tree.c:13927
+#: tree.c:14122
 #, gcc-internal-format
 msgid "type variant%'s %<TYPE_SIZE_UNIT%>"
 msgstr ""
 
-#: tree.c:13929
+#: tree.c:14124
 #, gcc-internal-format
 msgid "type%'s %<TYPE_SIZE_UNIT%>"
 msgstr ""
 
-#: tree.c:13952
+#: tree.c:14147
 #, gcc-internal-format
 msgid "type variant with %<TYPE_ALIAS_SET_KNOWN_P%>"
 msgstr ""
 
-#: tree.c:13965
+#: tree.c:14160
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_VFIELD%>"
 msgstr ""
 
-#: tree.c:14001
+#: tree.c:14196
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_BINFO%>"
 msgstr ""
 
-#: tree.c:14003
+#: tree.c:14198
 #, gcc-internal-format
 msgid "type variant%'s %<TYPE_BINFO%>"
 msgstr ""
 
-#: tree.c:14005
+#: tree.c:14200
 #, gcc-internal-format
 msgid "type%'s %<TYPE_BINFO%>"
 msgstr ""
 
-#: tree.c:14044
+#: tree.c:14239
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_FIELDS%>"
 msgstr ""
 
-#: tree.c:14046
+#: tree.c:14241
 #, gcc-internal-format
 msgid "first mismatch is field"
 msgstr ""
 
-#: tree.c:14048
+#: tree.c:14243
 #, gcc-internal-format
 msgid "and field"
 msgstr ""
 
-#: tree.c:14065
+#: tree.c:14260
 #, gcc-internal-format
 msgid "type variant has different %<TREE_TYPE%>"
 msgstr ""
 
-#: tree.c:14067 tree.c:14078
+#: tree.c:14262 tree.c:14273
 #, gcc-internal-format
 msgid "type variant%'s %<TREE_TYPE%>"
 msgstr ""
 
-#: tree.c:14069 tree.c:14080
+#: tree.c:14264 tree.c:14275
 #, gcc-internal-format
 msgid "type%'s %<TREE_TYPE%>"
 msgstr ""
 
-#: tree.c:14076
+#: tree.c:14271
 #, gcc-internal-format
 msgid "type is not compatible with its variant"
 msgstr ""
 
-#: tree.c:14388
+#: tree.c:14583
 #, gcc-internal-format
 msgid "main variant is not defined"
 msgstr ""
 
-#: tree.c:14393
+#: tree.c:14588
 #, gcc-internal-format
 msgid "%<TYPE_MAIN_VARIANT%> has different %<TYPE_MAIN_VARIANT%>"
 msgstr ""
 
-#: tree.c:14405
+#: tree.c:14600
 #, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> has different %<TYPE_CANONICAL%>"
 msgstr ""
 
-#: tree.c:14424
+#: tree.c:14619
 #, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> is not compatible"
 msgstr ""
 
-#: tree.c:14432
+#: tree.c:14627
 #, gcc-internal-format
 msgid "%<TYPE_MODE%> of %<TYPE_CANONICAL%> is not compatible"
 msgstr ""
 
-#: tree.c:14438
+#: tree.c:14633
 #, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> of main variant is not main variant"
 msgstr ""
 
-#: tree.c:14454
+#: tree.c:14649
 #, gcc-internal-format
 msgid "%<TYPE_VFIELD%> is not %<FIELD_DECL%> nor %<TREE_LIST%>"
 msgstr ""
 
-#: tree.c:14464
+#: tree.c:14659
 #, gcc-internal-format
 msgid "%<TYPE_NEXT_PTR_TO%> is not %<POINTER_TYPE%>"
 msgstr ""
 
-#: tree.c:14474
+#: tree.c:14669
 #, gcc-internal-format
 msgid "%<TYPE_NEXT_REF_TO%> is not %<REFERENCE_TYPE%>"
 msgstr ""
 
-#: tree.c:14495
+#: tree.c:14690
 #, gcc-internal-format
 msgid "%<TYPE_BINFO%> is not %<TREE_BINFO%>"
 msgstr ""
 
-#: tree.c:14501
+#: tree.c:14696
 #, gcc-internal-format
 msgid "%<TYPE_BINFO%> type is not %<TYPE_MAIN_VARIANT%>"
 msgstr ""
 
-#: tree.c:14512
+#: tree.c:14707
 #, gcc-internal-format
 msgid "%<TYPE_METHOD_BASETYPE%> is not record nor union"
 msgstr ""
 
-#: tree.c:14523
+#: tree.c:14718
 #, gcc-internal-format
 msgid "%<TYPE_OFFSET_BASETYPE%> is not record nor union"
 msgstr ""
 
-#: tree.c:14541
+#: tree.c:14736
 #, gcc-internal-format
 msgid "%<TYPE_ARRAY_MAX_SIZE%> not %<INTEGER_CST%>"
 msgstr ""
 
-#: tree.c:14548
+#: tree.c:14743
 #, gcc-internal-format
 msgid "%<TYPE_MAX_VALUE_RAW%> non-NULL"
 msgstr ""
 
-#: tree.c:14555
+#: tree.c:14750
 #, gcc-internal-format
 msgid "%<TYPE_LANG_SLOT_1 (binfo)%> field is non-NULL"
 msgstr ""
 
-#: tree.c:14571
+#: tree.c:14766
 #, gcc-internal-format
 msgid "enum value is not %<CONST_DECL%> or %<INTEGER_CST%>"
 msgstr ""
 
-#: tree.c:14579
+#: tree.c:14774
 #, gcc-internal-format
 msgid "enum value type is not %<INTEGER_TYPE%> nor convertible to the enum"
 msgstr ""
 
-#: tree.c:14587
+#: tree.c:14782
 #, gcc-internal-format
 msgid "enum value name is not %<IDENTIFIER_NODE%>"
 msgstr ""
 
-#: tree.c:14597
+#: tree.c:14792
 #, gcc-internal-format
 msgid "array %<TYPE_DOMAIN%> is not integer type"
 msgstr ""
 
-#: tree.c:14606
+#: tree.c:14801
 #, gcc-internal-format
 msgid "%<TYPE_FIELDS%> defined in incomplete type"
 msgstr ""
 
-#: tree.c:14628
+#: tree.c:14823
 #, gcc-internal-format
 msgid "wrong tree in %<TYPE_FIELDS%> list"
 msgstr ""
 
-#: tree.c:14643
+#: tree.c:14838
 #, gcc-internal-format
 msgid "%<TYPE_CACHED_VALUES_P%> is %i while %<TYPE_CACHED_VALUES%> is %p"
 msgstr ""
 
-#: tree.c:14650
+#: tree.c:14845
 #, gcc-internal-format
 msgid "%<TYPE_CACHED_VALUES%> is not %<TREE_VEC%>"
 msgstr ""
 
-#: tree.c:14663
+#: tree.c:14858
 #, gcc-internal-format
 msgid "wrong %<TYPE_CACHED_VALUES%> entry"
 msgstr ""
 
-#: tree.c:14676
+#: tree.c:14871
 #, gcc-internal-format
 msgid "%<TREE_PURPOSE%> is non-NULL in %<TYPE_ARG_TYPES%> list"
 msgstr ""
 
-#: tree.c:14682
+#: tree.c:14877
 #, gcc-internal-format
 msgid "wrong entry in %<TYPE_ARG_TYPES%> list"
 msgstr ""
 
-#: tree.c:14689
+#: tree.c:14884
 #, gcc-internal-format
 msgid "%<TYPE_VALUES_RAW%> field is non-NULL"
 msgstr ""
 
-#: tree.c:14701
+#: tree.c:14896
 #, gcc-internal-format
 msgid "%<TYPE_CACHED_VALUES_P%> is set while it should not be"
 msgstr ""
 
-#: tree.c:14711
+#: tree.c:14906
 #, gcc-internal-format
 msgid "%<TYPE_METHOD_BASETYPE%> is not main variant"
 msgstr ""
 
-#: value-prof.c:493
+#: tsan.c:506
+#, gcc-internal-format
+msgid "%qs is not supported with %qs"
+msgstr ""
+
+#: value-prof.c:496
 #, gcc-internal-format
 msgid "dead histogram"
 msgstr ""
 
-#: value-prof.c:522
+#: value-prof.c:525
 #, gcc-internal-format
 msgid ""
 "histogram value statement does not correspond to the statement it is "
 "associated with"
 msgstr ""
 
-#: value-prof.c:591
+#: value-prof.c:594
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "corrupted value profile: %s profile counter (%d out of %d) inconsistent with "
 "basic-block count (%d)"
 msgstr ""
 
-#: var-tracking.c:7188
+#: var-tracking.c:7210
 #, gcc-internal-format
 msgid ""
 "variable tracking size limit exceeded with %<-fvar-tracking-assignments%>, "
 "retrying without"
 msgstr ""
 
-#: var-tracking.c:7192
+#: var-tracking.c:7214
 #, gcc-internal-format
 msgid "variable tracking size limit exceeded"
 msgstr ""
 
-#: varasm.c:338
+#: varasm.c:316
+#, gcc-internal-format
+msgid "Section already exists: %qs"
+msgstr ""
+
+#: varasm.c:362
 #, gcc-internal-format
 msgid "%+qD causes a section type conflict with %qD"
 msgstr ""
 
-#: varasm.c:341
+#: varasm.c:365
 #, gcc-internal-format
 msgid "section type conflict with %qD"
 msgstr ""
 
-#: varasm.c:346
+#: varasm.c:370
 #, gcc-internal-format
 msgid "%+qD causes a section type conflict"
 msgstr ""
 
-#: varasm.c:348
+#: varasm.c:372
 #, gcc-internal-format
 msgid "section type conflict"
 msgstr ""
 
-#: varasm.c:1043
+#: varasm.c:1105
 #, gcc-internal-format
 msgid "alignment of %q+D is greater than maximum object file alignment %d"
 msgstr ""
 
-#: varasm.c:1196
+#: varasm.c:1259
 #, gcc-internal-format
 msgid "only zero initializers are allowed in section %qs"
 msgstr ""
 
-#: varasm.c:1398 varasm.c:1407
+#: varasm.c:1479 varasm.c:1488
 #, gcc-internal-format
 msgid "register name not specified for %q+D"
 msgstr ""
 
-#: varasm.c:1409
+#: varasm.c:1490
 #, gcc-internal-format
 msgid "invalid register name for %q+D"
 msgstr ""
 
-#: varasm.c:1411
+#: varasm.c:1492
 #, gcc-internal-format
 msgid "data type of %q+D isn%'t suitable for a register"
 msgstr ""
 
-#: varasm.c:1414
+#: varasm.c:1495
 #, gcc-internal-format
 msgid ""
 "the register specified for %q+D cannot be accessed by the current target"
 msgstr ""
 
-#: varasm.c:1417
+#: varasm.c:1498
 #, gcc-internal-format
 msgid ""
 "the register specified for %q+D is not general enough to be used as a "
 "register variable"
 msgstr ""
 
-#: varasm.c:1420
+#: varasm.c:1501
 #, gcc-internal-format
 msgid "register specified for %q+D isn%'t suitable for data type"
 msgstr ""
 
-#: varasm.c:1430
+#: varasm.c:1510
+#, gcc-internal-format
+msgid "register specified for %q+D is an internal GCC implementation detail"
+msgstr ""
+
+#: varasm.c:1520
 #, gcc-internal-format
 msgid "global register variable has initial value"
 msgstr ""
 
-#: varasm.c:1434
+#: varasm.c:1524
 #, gcc-internal-format
 msgid "optimization may eliminate reads and/or writes to register variables"
 msgstr ""
 
-#: varasm.c:1480
+#: varasm.c:1570
 #, gcc-internal-format
 msgid "register name given for non-register variable %q+D"
 msgstr ""
 
-#: varasm.c:2059
+#: varasm.c:2149
 #, gcc-internal-format
 msgid "thread-local COMMON data not implemented"
 msgstr ""
 
-#: varasm.c:2092
+#: varasm.c:2182
 #, gcc-internal-format
 msgid ""
 "requested alignment for %q+D is greater than implemented alignment of %wu"
 msgstr ""
 
-#: varasm.c:2195 c/c-decl.c:5393 c/c-parser.c:1656
+#: varasm.c:2285 c/c-decl.c:5448 c/c-parser.c:1660
 #, gcc-internal-format
 msgid "storage size of %q+D isn%'t known"
 msgstr ""
 
-#: varasm.c:4977
+#: varasm.c:5245
 #, gcc-internal-format
 msgid "initializer for integer/fixed-point value is too complicated"
 msgstr ""
 
-#: varasm.c:4982
+#: varasm.c:5250
 #, gcc-internal-format
 msgid "initializer for floating value is not a floating constant"
 msgstr ""
 
-#: varasm.c:5321
+#: varasm.c:5589
 #, gcc-internal-format
 msgid "invalid initial value for member %qE"
 msgstr ""
 
-#: varasm.c:5577
+#: varasm.c:5845
 #, gcc-internal-format
 msgid "%+qD declared weak after being used"
 msgstr ""
 
-#: varasm.c:5629
+#: varasm.c:5897
 #, gcc-internal-format
 msgid ""
 "weak declaration of %q+D being applied to a already existing, static "
 "definition"
 msgstr ""
 
-#: varasm.c:5665
+#: varasm.c:5933
 #, gcc-internal-format
 msgid "weak declaration of %q+D must be public"
 msgstr ""
 
-#: varasm.c:5669
+#: varasm.c:5937
 #, gcc-internal-format
 msgid "weak declaration of %q+D not supported"
 msgstr ""
 
-#: varasm.c:5698 varasm.c:6018
+#: varasm.c:5966 varasm.c:6286
 #, gcc-internal-format
 msgid "only weak aliases are supported in this configuration"
 msgstr ""
 
-#: varasm.c:5893
+#: varasm.c:6161
 #, gcc-internal-format
 msgid "weakref is not supported in this configuration"
 msgstr ""
 
-#: varasm.c:5921
+#: varasm.c:6189
 #, gcc-internal-format
 msgid "%qs is not supported on this target"
 msgstr ""
 
-#: varasm.c:5977
+#: varasm.c:6245
 #, gcc-internal-format
 msgid "symver is only supported on ELF platforms"
 msgstr ""
 
-#: varasm.c:5996
+#: varasm.c:6264
 #, gcc-internal-format
 msgid "%qs symbol %q+D ultimately targets itself"
 msgstr ""
 
-#: varasm.c:5998
+#: varasm.c:6266
 #, gcc-internal-format
 msgid "%qs symbol %q+D must have static linkage"
 msgstr ""
 
-#: varasm.c:6005
+#: varasm.c:6273
 #, gcc-internal-format
 msgid "alias definitions not supported in this configuration"
 msgstr ""
 
-#: varasm.c:6015
+#: varasm.c:6283
 #, gcc-internal-format
 msgid "%qs is not supported in this configuration"
 msgstr ""
 
-#: varasm.c:6233 config/sol2.c:159 config/i386/winnt.c:265
+#: varasm.c:6501 config/sol2.c:159 config/i386/winnt.c:265
 #, gcc-internal-format
 msgid "visibility attribute not supported in this configuration; ignored"
 msgstr ""
 
+#: varasm.c:7784
+#, gcc-internal-format
+msgid ""
+"%+qD without %<used%> attribute and %qD with %<used%> attribute are placed "
+"in a section with the same name"
+msgstr ""
+
 #: vec.c:200
 #, gcc-internal-format, gfc-internal-format
 msgid "qsort comparator not anti-symmetric: %d, %d"
@@ -30469,43 +31252,43 @@ msgstr ""
 msgid "qsort checking failed"
 msgstr ""
 
-#: vr-values.c:2461
+#: vr-values.c:2352
 #, gcc-internal-format
 msgid ""
 "assuming signed overflow does not occur when simplifying conditional to "
 "constant"
 msgstr ""
 
-#: vr-values.c:2467
+#: vr-values.c:2358
 #, gcc-internal-format
 msgid "assuming signed overflow does not occur when simplifying conditional"
 msgstr ""
 
-#: vr-values.c:2511
+#: vr-values.c:2400
 #, gcc-internal-format
 msgid "comparison always false due to limited range of data type"
 msgstr ""
 
-#: vr-values.c:2513
+#: vr-values.c:2402
 #, gcc-internal-format
 msgid "comparison always true due to limited range of data type"
 msgstr ""
 
-#: vr-values.c:3190
+#: vr-values.c:3080
 #, gcc-internal-format
 msgid ""
 "assuming signed overflow does not occur when simplifying %</%> or %<%%%> to "
 "%<>>%> or %<&%>"
 msgstr ""
 
-#: vr-values.c:3258
+#: vr-values.c:3148
 #, gcc-internal-format
 msgid ""
 "assuming signed overflow does not occur when simplifying %<min/max (X,Y)%> "
 "to %<X%> or %<Y%>"
 msgstr ""
 
-#: vr-values.c:3310
+#: vr-values.c:3200
 #, gcc-internal-format
 msgid ""
 "assuming signed overflow does not occur when simplifying %<abs (X)%> to %<X"
@@ -30518,288 +31301,304 @@ msgstr ""
 msgid "no sclass for %s stab (0x%x)"
 msgstr ""
 
-#: lto-streamer.h:1010
+#: lto-streamer.h:1027
 #, gcc-internal-format, gfc-internal-format
 msgid "bytecode stream: expected tag %s instead of %s"
 msgstr ""
 
-#: lto-streamer.h:1020
+#: lto-streamer.h:1037
 #, gcc-internal-format, gfc-internal-format
 msgid "bytecode stream: tag %s is not in the expected range [%s, %s]"
 msgstr ""
 
-#: c-family/c-ada-spec.c:2850
+#: c-family/c-ada-spec.c:2840
 #, gcc-internal-format
 msgid "unsupported record layout"
 msgstr ""
 
-#: c-family/c-attribs.c:548
+#: c-family/c-attribs.c:595
 #, gcc-internal-format
 msgid "%qE attribute argument is invalid"
 msgstr ""
 
-#: c-family/c-attribs.c:551
+#: c-family/c-attribs.c:598
 #, gcc-internal-format
 msgid "%qE attribute argument %i is invalid"
 msgstr ""
 
-#: c-family/c-attribs.c:563
+#: c-family/c-attribs.c:610
 #, gcc-internal-format
 msgid "%qE attribute argument has type %qT"
 msgstr ""
 
-#: c-family/c-attribs.c:567
+#: c-family/c-attribs.c:614
 #, gcc-internal-format
 msgid "%qE attribute argument %i has type %qT"
 msgstr ""
 
-#: c-family/c-attribs.c:578 c-family/c-attribs.c:3610 c-family/c-attribs.c:3614
+#: c-family/c-attribs.c:625 c-family/c-attribs.c:4159 c-family/c-attribs.c:4163
 #, gcc-internal-format
 msgid "%qE attribute argument value %qE is not an integer constant"
 msgstr ""
 
-#: c-family/c-attribs.c:583
+#: c-family/c-attribs.c:630
 #, gcc-internal-format
 msgid "%qE attribute argument %i value %qE is not an integer constant"
 msgstr ""
 
-#: c-family/c-attribs.c:599
+#: c-family/c-attribs.c:646
 #, gcc-internal-format
 msgid "%qE attribute argument value %qE does not refer to a function parameter"
 msgstr ""
 
-#: c-family/c-attribs.c:604
+#: c-family/c-attribs.c:651
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument %i value %qE does not refer to a function parameter"
 msgstr ""
 
-#: c-family/c-attribs.c:627
+#: c-family/c-attribs.c:674
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument value %qE exceeds the number of function parameters %u"
 msgstr ""
 
-#: c-family/c-attribs.c:632
+#: c-family/c-attribs.c:679
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument %i value %qE exceeds the number of function "
 "parameters %u"
 msgstr ""
 
-#: c-family/c-attribs.c:650
+#: c-family/c-attribs.c:697
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument value %qE does not refer to a variable argument list"
 msgstr ""
 
-#: c-family/c-attribs.c:654
+#: c-family/c-attribs.c:701
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument %i value %qE does not refer to a variable argument "
 "list"
 msgstr ""
 
-#: c-family/c-attribs.c:681 c-family/c-attribs.c:694
+#: c-family/c-attribs.c:728 c-family/c-attribs.c:741
 #, gcc-internal-format
 msgid "%qE attribute argument value %qE refers to parameter type %qT"
 msgstr ""
 
-#: c-family/c-attribs.c:685 c-family/c-attribs.c:699
+#: c-family/c-attribs.c:732 c-family/c-attribs.c:746
 #, gcc-internal-format
 msgid "%qE attribute argument %i value %qE refers to parameter type %qT"
 msgstr ""
 
-#: c-family/c-attribs.c:709
+#: c-family/c-attribs.c:756
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument value %qE refers to a variadic function parameter of "
 "unknown type"
 msgstr ""
 
-#: c-family/c-attribs.c:714
+#: c-family/c-attribs.c:761
 #, gcc-internal-format
 msgid ""
 "%qE attribute argument %i value %qE refers to a variadic function parameter "
 "of unknown type"
 msgstr ""
 
-#: c-family/c-attribs.c:738
+#: c-family/c-attribs.c:879
+#, gcc-internal-format
+msgid "ignoring attribute %qs because it conflicts with previous %qs"
+msgstr ""
+
+#: c-family/c-attribs.c:917
+#, gcc-internal-format
+msgid "%qE attribute only supported on boolean types"
+msgstr ""
+
+#: c-family/c-attribs.c:927
+#, gcc-internal-format
+msgid "%qE attribute with unsupported boolean precision"
+msgstr ""
+
+#: c-family/c-attribs.c:950
 #, gcc-internal-format
 msgid "%qE attribute ignored for type %qT"
 msgstr ""
 
-#: c-family/c-attribs.c:750
+#: c-family/c-attribs.c:962
 #, gcc-internal-format
 msgid "%qE attribute ignored for field of type %qT"
 msgstr ""
 
-#: c-family/c-attribs.c:920 c-family/c-attribs.c:2829
+#: c-family/c-attribs.c:1132 c-family/c-attribs.c:3114
+#: c-family/c-attribs.c:5383
 #, gcc-internal-format
 msgid "%qE argument not a string"
 msgstr ""
 
-#: c-family/c-attribs.c:1051 ada/gcc-interface/utils.c:6548
+#: c-family/c-attribs.c:1279 ada/gcc-interface/utils.c:6612
 #, gcc-internal-format
 msgid "%qE attribute ignored due to conflict with attribute %qs"
 msgstr ""
 
-#: c-family/c-attribs.c:1100
+#: c-family/c-attribs.c:1328
 #, gcc-internal-format
 msgid "%qE attribute ignored. Use %<-fcf-protection%> option to enable it"
 msgstr ""
 
-#: c-family/c-attribs.c:1140 c-family/c-attribs.c:1146
-#: c-family/c-attribs.c:4375 c-family/c-attribs.c:4410
-#: c-family/c-attribs.c:4416 ada/gcc-interface/utils.c:6807
-#: ada/gcc-interface/utils.c:6841 ada/gcc-interface/utils.c:6847
+#: c-family/c-attribs.c:1368 c-family/c-attribs.c:1374
+#: c-family/c-attribs.c:5226 c-family/c-attribs.c:5261
+#: c-family/c-attribs.c:5267 ada/gcc-interface/utils.c:6871
+#: ada/gcc-interface/utils.c:6905 ada/gcc-interface/utils.c:6911
 #, gcc-internal-format
 msgid "%qE attribute ignored due to conflict with %qs attribute"
 msgstr ""
 
-#: c-family/c-attribs.c:1202 brig/brig-lang.c:490 jit/dummy-frontend.c:190
+#: c-family/c-attribs.c:1430 brig/brig-lang.c:490 jit/dummy-frontend.c:190
 #: lto/lto-lang.c:293
 #, gcc-internal-format
 msgid "%qE attribute has no effect on unit local functions"
 msgstr ""
 
-#: c-family/c-attribs.c:1356
+#: c-family/c-attribs.c:1584
 #, gcc-internal-format
 msgid "%qE attribute have effect only on public objects"
 msgstr ""
 
-#: c-family/c-attribs.c:1385
+#: c-family/c-attribs.c:1613
 #, gcc-internal-format
 msgid "%qE attribute only affects top level objects"
 msgstr ""
 
-#: c-family/c-attribs.c:1424 c-family/c-attribs.c:3206
+#: c-family/c-attribs.c:1652 c-family/c-attribs.c:3755
 #, gcc-internal-format
 msgid "%qE attribute on function returning %<void%>"
 msgstr ""
 
-#: c-family/c-attribs.c:1447
+#: c-family/c-attribs.c:1675
 #, gcc-internal-format
 msgid "%qE attribute is not supported because endianness is not uniform"
 msgstr ""
 
-#: c-family/c-attribs.c:1464
+#: c-family/c-attribs.c:1692
 #, gcc-internal-format
 msgid "attribute %qE argument must be one of %qs or %qs"
 msgstr ""
 
-#: c-family/c-attribs.c:1560
+#: c-family/c-attribs.c:1788
 #, gcc-internal-format
 msgid "destructor priorities are not supported"
 msgstr ""
 
-#: c-family/c-attribs.c:1562
+#: c-family/c-attribs.c:1790
 #, gcc-internal-format
 msgid "constructor priorities are not supported"
 msgstr ""
 
-#: c-family/c-attribs.c:1584
+#: c-family/c-attribs.c:1812
 #, gcc-internal-format, gfc-internal-format
 msgid "destructor priorities from 0 to %d are reserved for the implementation"
 msgstr ""
 
-#: c-family/c-attribs.c:1589
+#: c-family/c-attribs.c:1817
 #, gcc-internal-format, gfc-internal-format
 msgid "constructor priorities from 0 to %d are reserved for the implementation"
 msgstr ""
 
-#: c-family/c-attribs.c:1597
+#: c-family/c-attribs.c:1825
 #, gcc-internal-format, gfc-internal-format
 msgid "destructor priorities must be integers from 0 to %d inclusive"
 msgstr ""
 
-#: c-family/c-attribs.c:1600
+#: c-family/c-attribs.c:1828
 #, gcc-internal-format, gfc-internal-format
 msgid "constructor priorities must be integers from 0 to %d inclusive"
 msgstr ""
 
-#: c-family/c-attribs.c:1753
+#: c-family/c-attribs.c:1981
 #, gcc-internal-format
 msgid "unknown machine mode %qE"
 msgstr ""
 
-#: c-family/c-attribs.c:1787
+#: c-family/c-attribs.c:2015
 #, gcc-internal-format
 msgid "specifying vector types with %<__attribute__ ((mode))%> is deprecated"
 msgstr ""
 
-#: c-family/c-attribs.c:1790
+#: c-family/c-attribs.c:2018
 #, gcc-internal-format
 msgid "use %<__attribute__ ((vector_size))%> instead"
 msgstr ""
 
-#: c-family/c-attribs.c:1799
+#: c-family/c-attribs.c:2027
 #, gcc-internal-format
 msgid "unable to emulate %qs"
 msgstr ""
 
-#: c-family/c-attribs.c:1812
+#: c-family/c-attribs.c:2040
 #, gcc-internal-format
 msgid "invalid pointer mode %qs"
 msgstr ""
 
-#: c-family/c-attribs.c:1829
+#: c-family/c-attribs.c:2057
 #, gcc-internal-format
 msgid "signedness of type and machine mode %qs don%'t match"
 msgstr ""
 
-#: c-family/c-attribs.c:1840
+#: c-family/c-attribs.c:2068
 #, gcc-internal-format
 msgid "no data type for mode %qs"
 msgstr ""
 
-#: c-family/c-attribs.c:1850
+#: c-family/c-attribs.c:2078
 #, gcc-internal-format
 msgid "cannot use mode %qs for enumerated types"
 msgstr ""
 
-#: c-family/c-attribs.c:1878
+#: c-family/c-attribs.c:2106
 #, gcc-internal-format
 msgid "mode %qs applied to inappropriate type"
 msgstr ""
 
-#: c-family/c-attribs.c:1901
+#: c-family/c-attribs.c:2131 c-family/c-attribs.c:2461
 #, gcc-internal-format
 msgid "section attributes are not supported for this target"
 msgstr ""
 
-#: c-family/c-attribs.c:1907
+#: c-family/c-attribs.c:2137
 #, gcc-internal-format
 msgid "section attribute not allowed for %q+D"
 msgstr ""
 
-#: c-family/c-attribs.c:1913
+#: c-family/c-attribs.c:2143
 #, gcc-internal-format
 msgid "section attribute argument not a string constant"
 msgstr ""
 
-#: c-family/c-attribs.c:1922
+#: c-family/c-attribs.c:2152
 #, gcc-internal-format
 msgid "section attribute cannot be specified for local variables"
 msgstr ""
 
-#: c-family/c-attribs.c:1932 config/bfin/bfin.c:4794 config/bfin/bfin.c:4845
+#: c-family/c-attribs.c:2163 config/bfin/bfin.c:4794 config/bfin/bfin.c:4845
 #: config/bfin/bfin.c:4871 config/bfin/bfin.c:4884
 #, gcc-internal-format
 msgid "section of %q+D conflicts with previous declaration"
 msgstr ""
 
-#: c-family/c-attribs.c:1940
+#: c-family/c-attribs.c:2172 c-family/c-attribs.c:2487
 #, gcc-internal-format
 msgid "section of %q+D cannot be overridden"
 msgstr ""
 
-#: c-family/c-attribs.c:2053
+#: c-family/c-attribs.c:2288
 #, gcc-internal-format
 msgid "alignment may not be specified for %q+D"
 msgstr ""
 
-#: c-family/c-attribs.c:2075
+#: c-family/c-attribs.c:2310
 #, gcc-internal-format
 msgid ""
 "ignoring attribute %<%E (%u)%> because it conflicts with attribute %<%E "
@@ -30811,358 +31610,465 @@ msgstr ""
 #. that appear to relax the implicit function alignment for
 #. the target.  Both increasing and increasing the alignment
 #. set by -falign-functions setting is permitted.
-#: c-family/c-attribs.c:2122
+#: c-family/c-attribs.c:2357
 #, gcc-internal-format
 msgid ""
 "alignment for %q+D was previously specified as %d and may not be decreased"
 msgstr ""
 
-#: c-family/c-attribs.c:2139
+#: c-family/c-attribs.c:2374
 #, gcc-internal-format
 msgid "%<warn_if_not_aligned%> may not be specified for %q+D"
 msgstr ""
 
-#: c-family/c-attribs.c:2187
+#: c-family/c-attribs.c:2422
 #, gcc-internal-format
 msgid "inline function %q+D declared weak"
 msgstr ""
 
-#: c-family/c-attribs.c:2192
+#: c-family/c-attribs.c:2427
 #, gcc-internal-format
 msgid "indirect function %q+D cannot be declared weak"
 msgstr ""
 
-#: c-family/c-attribs.c:2225 config/arc/arc.c:11309 config/avr/avr.c:9754
-#: config/bfin/bfin.c:4815 config/i386/winnt.c:63 config/msp430/msp430.c:1438
-#: config/nvptx/nvptx.c:5076
+#: c-family/c-attribs.c:2468
 #, gcc-internal-format
-msgid "%qE attribute only applies to variables"
+msgid "ignoring %qE attribute not set on a variable"
 msgstr ""
 
-#: c-family/c-attribs.c:2230 config/msp430/msp430.c:1432
+#: c-family/c-attribs.c:2478 config/bfin/bfin.c:4822
 #, gcc-internal-format
-msgid "%qE attribute cannot be applied to variables with specific sections"
+msgid "%qE attribute cannot be specified for local variables"
 msgstr ""
 
-#: c-family/c-attribs.c:2234
+#: c-family/c-attribs.c:2493
 #, gcc-internal-format
 msgid "%qE attribute is specific to ELF targets"
 msgstr ""
 
-#: c-family/c-attribs.c:2274
+#: c-family/c-attribs.c:2500
+#, gcc-internal-format
+msgid "ignoring %qE attribute set on const variable"
+msgstr ""
+
+#: c-family/c-attribs.c:2511
+#, gcc-internal-format
+msgid "ignoring %qE attribute set on initialized variable"
+msgstr ""
+
+#: c-family/c-attribs.c:2524
+#, gcc-internal-format
+msgid "ignoring %qE attribute set on uninitialized variable"
+msgstr ""
+
+#: c-family/c-attribs.c:2557
 #, gcc-internal-format
 msgid "%qE attribute is only applicable on functions"
 msgstr ""
 
-#: c-family/c-attribs.c:2293
+#: c-family/c-attribs.c:2576
 #, gcc-internal-format
 msgid "%<symver%> attribute only applies to functions and variables"
 msgstr ""
 
-#: c-family/c-attribs.c:2301
+#: c-family/c-attribs.c:2584
 #, gcc-internal-format
 msgid "%<symver%> attribute is only applicable to symbols"
 msgstr ""
 
-#: c-family/c-attribs.c:2311
+#: c-family/c-attribs.c:2594
 #, gcc-internal-format
 msgid "%<symver%> attribute argument not a string constant"
 msgstr ""
 
-#: c-family/c-attribs.c:2325
+#: c-family/c-attribs.c:2608
 #, gcc-internal-format
 msgid "symver attribute argument must have format %<name@nodename%>"
 msgstr ""
 
-#: c-family/c-attribs.c:2326
+#: c-family/c-attribs.c:2609
 #, gcc-internal-format
 msgid "%<symver%> attribute argument %qs must contain one or two %<@%>"
 msgstr ""
 
-#: c-family/c-attribs.c:2361
+#: c-family/c-attribs.c:2644
 #, gcc-internal-format
 msgid "%q+D defined both normally and as %qE attribute"
 msgstr ""
 
-#: c-family/c-attribs.c:2369
+#: c-family/c-attribs.c:2652
 #, gcc-internal-format
 msgid "weak %q+D cannot be defined %qE"
 msgstr ""
 
-#: c-family/c-attribs.c:2386 c-family/c-attribs.c:3106
+#: c-family/c-attribs.c:2669 c-family/c-attribs.c:3655
 #, gcc-internal-format
 msgid "attribute %qE argument not a string"
 msgstr ""
 
-#: c-family/c-attribs.c:2419
+#: c-family/c-attribs.c:2702
 #, gcc-internal-format
 msgid "%+qD declared %qs after being used"
 msgstr ""
 
-#: c-family/c-attribs.c:2469
+#: c-family/c-attribs.c:2752
 #, gcc-internal-format
 msgid "%qE attribute argument cannot be a string"
 msgstr ""
 
-#: c-family/c-attribs.c:2482
+#: c-family/c-attribs.c:2765
 #, gcc-internal-format
 msgid "%qE attribute argument cannot be a constant arithmetic expression"
 msgstr ""
 
-#: c-family/c-attribs.c:2493
+#: c-family/c-attribs.c:2776
 #, gcc-internal-format
 msgid "%qE attribute ignored on a redeclaration of the referenced symbol"
 msgstr ""
 
-#: c-family/c-attribs.c:2548
+#: c-family/c-attribs.c:2831
 #, gcc-internal-format
 msgid ""
 "%qE attribute ignored on a declaration of a different kind than referenced "
 "symbol"
 msgstr ""
 
-#: c-family/c-attribs.c:2553
+#: c-family/c-attribs.c:2836
 #, gcc-internal-format
 msgid "symbol %qD referenced by %qD declared here"
 msgstr ""
 
-#: c-family/c-attribs.c:2601
+#: c-family/c-attribs.c:2884
 #, gcc-internal-format
 msgid "%qE attribute must apply to a declaration"
 msgstr ""
 
-#: c-family/c-attribs.c:2657
+#: c-family/c-attribs.c:2942
 #, gcc-internal-format
 msgid "indirect function %q+D cannot be declared %qE"
 msgstr ""
 
-#: c-family/c-attribs.c:2680
+#: c-family/c-attribs.c:2965
 #, gcc-internal-format
 msgid "%qE attribute must appear before %qs attribute"
 msgstr ""
 
-#: c-family/c-attribs.c:2693
+#: c-family/c-attribs.c:2978
 #, gcc-internal-format
 msgid "%+qD declared %qE after being used"
 msgstr ""
 
-#: c-family/c-attribs.c:2717
+#: c-family/c-attribs.c:3002
 #, gcc-internal-format
 msgid "%qE attribute ignored on non-class types"
 msgstr ""
 
-#: c-family/c-attribs.c:2723
+#: c-family/c-attribs.c:3008
 #, gcc-internal-format
 msgid "%qE attribute ignored because %qT is already defined"
 msgstr ""
 
-#: c-family/c-attribs.c:2736
+#: c-family/c-attribs.c:3021
 #, gcc-internal-format
 msgid "visibility argument not a string"
 msgstr ""
 
-#: c-family/c-attribs.c:2748
+#: c-family/c-attribs.c:3033
 #, gcc-internal-format
 msgid "%qE attribute ignored on types"
 msgstr ""
 
-#: c-family/c-attribs.c:2764
+#: c-family/c-attribs.c:3049
 #, gcc-internal-format
 msgid "attribute %qE argument must be one of %qs, %qs, %qs, or %qs"
 msgstr ""
 
-#: c-family/c-attribs.c:2776
+#: c-family/c-attribs.c:3061
 #, gcc-internal-format
 msgid "%qD redeclared with different visibility"
 msgstr ""
 
-#: c-family/c-attribs.c:2779 c-family/c-attribs.c:2783
+#: c-family/c-attribs.c:3064 c-family/c-attribs.c:3068
 #, gcc-internal-format
 msgid "%qD was declared %qs which implies default visibility"
 msgstr ""
 
-#: c-family/c-attribs.c:2812
+#: c-family/c-attribs.c:3097
 #, gcc-internal-format
 msgid "%qE attribute ignored because %qD is not a variable"
 msgstr ""
 
-#: c-family/c-attribs.c:2820
+#: c-family/c-attribs.c:3105
 #, gcc-internal-format
 msgid "%qE attribute ignored because %qD does not have thread storage duration"
 msgstr ""
 
-#: c-family/c-attribs.c:2842
+#: c-family/c-attribs.c:3127
 #, gcc-internal-format
 msgid "%qE argument must be one of %qs, %qs, %qs, or %qs"
 msgstr ""
 
-#: c-family/c-attribs.c:2864 c-family/c-attribs.c:3180
-#: c-family/c-attribs.c:4496 config/m32c/m32c.c:2935
+#: c-family/c-attribs.c:3149 c-family/c-attribs.c:3729
+#: c-family/c-attribs.c:5348 c-family/c-attribs.c:5375 config/m32c/m32c.c:2935
 #, gcc-internal-format
 msgid "%qE attribute applies only to functions"
 msgstr ""
 
-#: c-family/c-attribs.c:2920 c-family/c-attribs.c:2961
-#: c-family/c-attribs.c:2985
+#: c-family/c-attribs.c:3195
+#, gcc-internal-format
+msgid "%<%E (%E)%> attribute ignored on functions declared %qs"
+msgstr ""
+
+#: c-family/c-attribs.c:3205
+#, gcc-internal-format
+msgid "%<%E (%E)%> attribute ignored with deallocation functions declared %qs"
+msgstr ""
+
+#: c-family/c-attribs.c:3209
+#, gcc-internal-format
+msgid "deallocation function declared here"
+msgstr ""
+
+#: c-family/c-attribs.c:3236
+#, gcc-internal-format
+msgid "%qE attribute ignored; valid only for functions"
+msgstr ""
+
+#: c-family/c-attribs.c:3246
+#, gcc-internal-format
+msgid ""
+"%qE attribute ignored on functions returning %qT; valid only for pointer "
+"return types"
+msgstr ""
+
+#. Handle specially the common case of specifying one of a number
+#. of overloads, such as operator delete.
+#: c-family/c-attribs.c:3292
+#, gcc-internal-format
+msgid "%qE attribute argument 1 is ambiguous"
+msgstr ""
+
+#: c-family/c-attribs.c:3294
+#, gcc-internal-format
+msgid "use a cast to the expected type to disambiguate"
+msgstr ""
+
+#: c-family/c-attribs.c:3299
+#, gcc-internal-format
+msgid "%qE attribute argument 1 does not name a function"
+msgstr ""
+
+#: c-family/c-attribs.c:3302
+#, gcc-internal-format
+msgid "argument references a symbol declared here"
+msgstr ""
+
+#. Reject functions without a prototype.
+#: c-family/c-attribs.c:3318
+#, gcc-internal-format
+msgid "%qE attribute argument 1 must take a pointer type as its first argument"
+msgstr ""
+
+#: c-family/c-attribs.c:3321
+#, gcc-internal-format
+msgid "refernced symbol declared here"
+msgstr ""
+
+#. Reject functions that don't take a pointer as their first
+#. argument.
+#: c-family/c-attribs.c:3331
+#, gcc-internal-format
+msgid ""
+"%qE attribute argument 1 must take a pointer type as its first argument; "
+"have %qT"
+msgstr ""
+
+#: c-family/c-attribs.c:3334
+#, gcc-internal-format
+msgid "referenced symbol declared here"
+msgstr ""
+
+#: c-family/c-attribs.c:3445 c-family/c-attribs.c:3493
+#: c-family/c-attribs.c:3520
 #, gcc-internal-format
 msgid "%qE attribute ignored on a function returning %qT"
 msgstr ""
 
-#: c-family/c-attribs.c:3004
+#: c-family/c-attribs.c:3539
 #, gcc-internal-format
 msgid "%qE attribute %E is not an integer constant"
 msgstr ""
 
-#: c-family/c-attribs.c:3016
+#: c-family/c-attribs.c:3551
 #, gcc-internal-format
 msgid "%qE attribute argument %E is not a power of 2"
 msgstr ""
 
-#: c-family/c-attribs.c:3029
+#: c-family/c-attribs.c:3564
 #, gcc-internal-format
 msgid "%qE attribute argument %E is not in the range [0, %wu]"
 msgstr ""
 
-#: c-family/c-attribs.c:3119
+#: c-family/c-attribs.c:3668
 #, gcc-internal-format
 msgid ""
 "only %<inbranch%> and %<notinbranch%> flags are allowed for %<__simd__%> "
 "attribute"
 msgstr ""
 
-#: c-family/c-attribs.c:3186 c-family/c-attribs.c:4502
+#: c-family/c-attribs.c:3735 c-family/c-attribs.c:5354
 #, gcc-internal-format
 msgid "cannot set %qE attribute after definition"
 msgstr ""
 
-#: c-family/c-attribs.c:3253
+#: c-family/c-attribs.c:3802
 #, gcc-internal-format
 msgid "%qE attribute duplicated"
 msgstr ""
 
-#: c-family/c-attribs.c:3255
+#: c-family/c-attribs.c:3804
 #, gcc-internal-format
 msgid "%qE attribute follows %qE"
 msgstr ""
 
-#: c-family/c-attribs.c:3354
+#: c-family/c-attribs.c:3903
 #, gcc-internal-format
 msgid "type was previously declared %qE"
 msgstr ""
 
-#: c-family/c-attribs.c:3367 cp/class.c:4662
+#: c-family/c-attribs.c:3916 cp/class.c:4752
 #, gcc-internal-format
 msgid ""
 "%<transaction_safe_dynamic%> may only be specified for a virtual function"
 msgstr ""
 
-#: c-family/c-attribs.c:3425
+#: c-family/c-attribs.c:3974
 #, gcc-internal-format
 msgid "%qE argument not an identifier"
 msgstr ""
 
-#: c-family/c-attribs.c:3436
+#: c-family/c-attribs.c:3985
 #, gcc-internal-format
 msgid "%qD is not compatible with %qD"
 msgstr ""
 
-#: c-family/c-attribs.c:3439
+#: c-family/c-attribs.c:3988
 #, gcc-internal-format
 msgid "%qE argument is not a function"
 msgstr ""
 
-#: c-family/c-attribs.c:3487 cp/name-lookup.c:5011
+#: c-family/c-attribs.c:4036 cp/name-lookup.c:6178
 #, gcc-internal-format
 msgid "deprecated message is not a string"
 msgstr ""
 
-#: c-family/c-attribs.c:3528
+#: c-family/c-attribs.c:4077
 #, gcc-internal-format
 msgid "%qE attribute ignored for %qE"
 msgstr ""
 
-#: c-family/c-attribs.c:3586 c-family/c-attribs.c:3588
+#: c-family/c-attribs.c:4135 c-family/c-attribs.c:4137
 #, gcc-internal-format
 msgid "invalid vector type for attribute %qE"
 msgstr ""
 
-#: c-family/c-attribs.c:3623 c-family/c-attribs.c:3627
+#: c-family/c-attribs.c:4172 c-family/c-attribs.c:4176
 #, gcc-internal-format
 msgid "%qE attribute argument value %qE is negative"
 msgstr ""
 
-#: c-family/c-attribs.c:3640 c-family/c-attribs.c:3644
+#: c-family/c-attribs.c:4189 c-family/c-attribs.c:4193
 #, gcc-internal-format
 msgid "%qE attribute argument value %qE exceeds %wu"
 msgstr ""
 
-#: c-family/c-attribs.c:3652 ada/gcc-interface/utils.c:4124
+#: c-family/c-attribs.c:4201 ada/gcc-interface/utils.c:4169
 #, gcc-internal-format
 msgid "vector size not an integral multiple of component size"
 msgstr ""
 
-#: c-family/c-attribs.c:3658 ada/gcc-interface/utils.c:4131
+#: c-family/c-attribs.c:4207 ada/gcc-interface/utils.c:4176
 #, gcc-internal-format
 msgid "zero vector size"
 msgstr ""
 
-#: c-family/c-attribs.c:3667 c-family/c-attribs.c:3670
+#: c-family/c-attribs.c:4216 c-family/c-attribs.c:4219
 #, gcc-internal-format
 msgid "number of components of the vector not a power of two"
 msgstr ""
 
-#: c-family/c-attribs.c:3730
+#: c-family/c-attribs.c:4279
 #, gcc-internal-format
 msgid "%qE attribute without arguments on a non-prototype"
 msgstr ""
 
-#: c-family/c-attribs.c:3787
+#: c-family/c-attribs.c:4336
 #, gcc-internal-format
 msgid "%qE attribute ignored on objects of type %qT"
 msgstr ""
 
-#: c-family/c-attribs.c:3795
+#: c-family/c-attribs.c:4344
 #, gcc-internal-format
 msgid "%qE attribute does not apply to functions"
 msgstr ""
 
-#: c-family/c-attribs.c:3887
+#: c-family/c-attribs.c:4478
 #, gcc-internal-format
 msgid "attribute %qs mismatch with mode %qs"
 msgstr ""
 
-#: c-family/c-attribs.c:3900
+#: c-family/c-attribs.c:4527
+#, gcc-internal-format
+msgid ""
+"attribute %qs missing positional argument 2 provided in previous designation "
+"by argument %u"
+msgstr ""
+
+#: c-family/c-attribs.c:4533
 #, gcc-internal-format
-msgid "attribute %qs positional argument 2 conflicts with previous designation"
+msgid "attribute %qs positional argument 2 missing in previous designation"
 msgstr ""
 
-#: c-family/c-attribs.c:3914
+#: c-family/c-attribs.c:4539
 #, gcc-internal-format
 msgid ""
-"attribute %qs missing positional argument 2 provided in previous designation"
+"attribute %qs positional argument 2 conflicts with previous designation by "
+"argument %u"
 msgstr ""
 
-#: c-family/c-attribs.c:3928
+#: c-family/c-attribs.c:4547
 #, gcc-internal-format
 msgid "attribute %qs mismatched positional argument values %i and %i"
 msgstr ""
 
-#: c-family/c-attribs.c:3980
+#: c-family/c-attribs.c:4569
+#, gcc-internal-format, gfc-internal-format
+msgid "designating the bound of variable length array argument %u"
+msgstr ""
+
+#: c-family/c-attribs.c:4652
 #, gcc-internal-format
 msgid "attribute %qE without arguments on a non-prototype"
 msgstr ""
 
-#: c-family/c-attribs.c:4003
+#: c-family/c-attribs.c:4702
 #, gcc-internal-format
 msgid "attribute %qE invalid mode"
 msgstr ""
 
-#: c-family/c-attribs.c:4025
+#: c-family/c-attribs.c:4711
+#, 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.c:4739
 #, gcc-internal-format
 msgid "attribute %qE invalid mode %qs; expected one of %qs, %qs, %qs, or %qs"
 msgstr ""
 
-#: c-family/c-attribs.c:4033
+#: c-family/c-attribs.c:4750
 #, gcc-internal-format
 msgid ""
 "attribute %qE unexpected %<(%> after mode %qs; expected a positional "
@@ -31173,734 +32079,786 @@ 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.c:4046
+#: c-family/c-attribs.c:4763
 #, gcc-internal-format
 msgid "attribute %<%E(%s)%> missing an argument"
 msgstr ""
 
-#: c-family/c-attribs.c:4087
+#: c-family/c-attribs.c:4804
 #, gcc-internal-format
 msgid "attribute %<%E(%s, %E, %E)%> invalid positional argument %i"
 msgstr ""
 
-#: c-family/c-attribs.c:4090
+#: c-family/c-attribs.c:4807
 #, gcc-internal-format
 msgid "attribute %<%E(%s, %E)%> invalid positional argument %i"
 msgstr ""
 
-#: c-family/c-attribs.c:4115
+#: c-family/c-attribs.c:4832
 #, gcc-internal-format
 msgid "attribute %qs positional argument %i invalid value %wi"
 msgstr ""
 
-#: c-family/c-attribs.c:4119
+#: c-family/c-attribs.c:4836
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument %i value %wi exceeds number of function "
 "arguments %u"
 msgstr ""
 
-#: c-family/c-attribs.c:4126
+#: c-family/c-attribs.c:4843
 #, gcc-internal-format
 msgid "attribute %qs invalid positional argument"
 msgstr ""
 
 #. The first argument must have a pointer or reference type.
-#: c-family/c-attribs.c:4134
+#: c-family/c-attribs.c:4851
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 1 references non-pointer argument type %qT"
 msgstr ""
 
-#: c-family/c-attribs.c:4145
+#: c-family/c-attribs.c:4862
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 1 references argument of function type %qT"
 msgstr ""
 
-#: c-family/c-attribs.c:4158
+#: c-family/c-attribs.c:4875
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 1 references %qs-qualified argument type "
 "%qT"
 msgstr ""
 
-#: c-family/c-attribs.c:4176
+#: c-family/c-attribs.c:4893
 #, gcc-internal-format
 msgid ""
 "attribute %qs positional argument 2 references non-integer argument type %qT"
 msgstr ""
 
-#: c-family/c-attribs.c:4260
+#: c-family/c-attribs.c:5111
 #, gcc-internal-format
 msgid "cleanup argument not an identifier"
 msgstr ""
 
-#: c-family/c-attribs.c:4267
+#: c-family/c-attribs.c:5118
 #, gcc-internal-format
 msgid "cleanup argument not a function"
 msgstr ""
 
-#: c-family/c-attribs.c:4304
+#: c-family/c-attribs.c:5155
 #, gcc-internal-format
 msgid "%qE attribute requires prototypes with named arguments"
 msgstr ""
 
-#: c-family/c-attribs.c:4312
+#: c-family/c-attribs.c:5163
 #, gcc-internal-format
 msgid "%qE attribute only applies to variadic functions"
 msgstr ""
 
-#: c-family/c-attribs.c:4328 ada/gcc-interface/utils.c:6477
+#: c-family/c-attribs.c:5179 ada/gcc-interface/utils.c:6524
 #, gcc-internal-format
 msgid "requested position is not an integer constant"
 msgstr ""
 
-#: c-family/c-attribs.c:4336 ada/gcc-interface/utils.c:6484
+#: c-family/c-attribs.c:5187 ada/gcc-interface/utils.c:6531
 #, gcc-internal-format
 msgid "requested position is less than zero"
 msgstr ""
 
-#: c-family/c-attribs.c:4391 ada/gcc-interface/utils.c:6822
+#: c-family/c-attribs.c:5242 ada/gcc-interface/utils.c:6886
 #, gcc-internal-format
 msgid "empty string in attribute %<target%>"
 msgstr ""
 
-#: c-family/c-attribs.c:4519
+#: c-family/c-attribs.c:5400
+#, gcc-internal-format
+msgid "unrecognized %qE attribute argument %qs"
+msgstr ""
+
+#: c-family/c-attribs.c:5418
 #, gcc-internal-format
 msgid "%qE attribute on a function not returning a pointer"
 msgstr ""
 
-#: c-family/c-attribs.c:4534
+#: c-family/c-attribs.c:5433
 #, gcc-internal-format
 msgid "%qE attribute is only valid on %<struct%> type"
 msgstr ""
 
-#: c-family/c-attribs.c:4570
+#: c-family/c-attribs.c:5469
 #, gcc-internal-format
 msgid "%qE attribute argument %qE is not an integer constant"
 msgstr ""
 
-#: c-family/c-attribs.c:4579
+#: c-family/c-attribs.c:5478
 #, gcc-internal-format
-msgid "%qE attribute argument %qE is out of range (> 65535)"
+msgid "%qE attribute argument %qE exceeds %u"
 msgstr ""
 
-#: c-family/c-attribs.c:4600
+#: c-family/c-attribs.c:5500
+#, gcc-internal-format
+msgid "%qE attribute may be put on a typedef only; attribute is ignored"
+msgstr ""
+
+#: c-family/c-attribs.c:5512
+#, gcc-internal-format
+msgid "%qE attribute is for pointer types only"
+msgstr ""
+
+#: c-family/c-attribs.c:5531
+#, gcc-internal-format
+msgid ""
+"%qE is only applicable to Objective-C class interfaces, attribute ignored"
+msgstr ""
+
+#: c-family/c-attribs.c:5554
+#, gcc-internal-format
+msgid "%qE cannot be applied to non-pointer type %qT"
+msgstr ""
+
+#: c-family/c-attribs.c:5567
+#, gcc-internal-format
+msgid "%qE attribute argument %qE is not an integer constant between 0 and 3"
+msgstr ""
+
+#: c-family/c-attribs.c:5579
+#, gcc-internal-format
+msgid "%qE attribute argument %qE is not recognised"
+msgstr ""
+
+#: c-family/c-attribs.c:5596
 #, gcc-internal-format
 msgid "unknown attribute %qE"
 msgstr ""
 
-#: c-family/c-attribs.c:4627
+#: c-family/c-attribs.c:5623
 #, gcc-internal-format
 msgid "invalid operand type %qT for %qs"
 msgstr ""
 
-#: c-family/c-attribs.c:4731
+#: c-family/c-attribs.c:5727
 #, gcc-internal-format
 msgid "%qs attribute not supported for %qT in %<__builtin_has_attribute%>"
 msgstr ""
 
-#: c-family/c-attribs.c:4733
+#: c-family/c-attribs.c:5729
 #, gcc-internal-format
 msgid "%qs attribute not supported for %qE in %<__builtin_has_attribute%>"
 msgstr ""
 
-#: c-family/c-attribs.c:4910
+#: c-family/c-attribs.c:5906
 #, gcc-internal-format
 msgid "%qs attribute not supported in %<__builtin_has_attribute%>"
 msgstr ""
 
-#: c-family/c-common.c:742
+#: c-family/c-common.c:759
 #, gcc-internal-format
 msgid "%qD is not defined outside of function scope"
 msgstr ""
 
-#: c-family/c-common.c:787
+#: c-family/c-common.c:804
 #, gcc-internal-format
 msgid "size of string literal is too large"
 msgstr ""
 
-#: c-family/c-common.c:810
+#: c-family/c-common.c:827
 #, gcc-internal-format
 msgid ""
 "string length %qd is greater than the length %qd ISO C%d compilers are "
 "required to support"
 msgstr ""
 
-#: c-family/c-common.c:983
+#: c-family/c-common.c:1000
 #, gcc-internal-format
 msgid ""
 "use %<-flax-vector-conversions%> to permit conversions between vectors with "
 "differing element types or numbers of subparts"
 msgstr ""
 
-#: c-family/c-common.c:1024
+#: c-family/c-common.c:1041
 #, gcc-internal-format
 msgid "%<__builtin_shuffle%> last argument must be an integer vector"
 msgstr ""
 
-#: c-family/c-common.c:1033
+#: c-family/c-common.c:1050
 #, gcc-internal-format
 msgid "%<__builtin_shuffle%> arguments must be vectors"
 msgstr ""
 
-#: c-family/c-common.c:1040
+#: c-family/c-common.c:1057
 #, gcc-internal-format
 msgid "%<__builtin_shuffle%> argument vectors must be of the same type"
 msgstr ""
 
-#: c-family/c-common.c:1051
+#: c-family/c-common.c:1068
 #, gcc-internal-format
 msgid ""
 "%<__builtin_shuffle%> number of elements of the argument vector(s) and the "
 "mask vector should be the same"
 msgstr ""
 
-#: c-family/c-common.c:1061
+#: c-family/c-common.c:1078
 #, gcc-internal-format
 msgid ""
 "%<__builtin_shuffle%> argument vector(s) inner type must have the same size "
 "as inner type of the mask"
 msgstr ""
 
-#: c-family/c-common.c:1110
+#: c-family/c-common.c:1127
 #, gcc-internal-format
 msgid ""
 "%<__builtin_convertvector%> first argument must be an integer or floating "
 "vector"
 msgstr ""
 
-#: c-family/c-common.c:1119
+#: c-family/c-common.c:1136
 #, gcc-internal-format
 msgid ""
 "%<__builtin_convertvector%> second argument must be an integer or floating "
 "vector type"
 msgstr ""
 
-#: c-family/c-common.c:1128
+#: c-family/c-common.c:1145
 #, gcc-internal-format
 msgid ""
 "%<__builtin_convertvector%> number of elements of the first argument vector "
 "and the second argument vector type should be the same"
 msgstr ""
 
-#: c-family/c-common.c:1747
+#: c-family/c-common.c:1764
 #, gcc-internal-format
 msgid "operation on %qE may be undefined"
 msgstr ""
 
-#: c-family/c-common.c:2075
+#: c-family/c-common.c:2115
 #, gcc-internal-format
 msgid "case label does not reduce to an integer constant"
 msgstr ""
 
-#: c-family/c-common.c:2158
+#: c-family/c-common.c:2198
 #, 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.c:2703
+#: c-family/c-common.c:2743
 #, gcc-internal-format
 msgid "invalid operands to binary %s (have %qT and %qT)"
 msgstr ""
 
-#: c-family/c-common.c:2952
+#: c-family/c-common.c:2992
 #, gcc-internal-format
 msgid "comparison is always false due to limited range of data type"
 msgstr ""
 
-#: c-family/c-common.c:2955
+#: c-family/c-common.c:2995
 #, gcc-internal-format
 msgid "comparison is always true due to limited range of data type"
 msgstr ""
 
-#: c-family/c-common.c:3052
+#: c-family/c-common.c:3092
 #, gcc-internal-format
 msgid "comparison of unsigned expression in %<>= 0%> is always true"
 msgstr ""
 
-#: c-family/c-common.c:3060
+#: c-family/c-common.c:3100
 #, gcc-internal-format
 msgid "comparison of unsigned expression in %<< 0%> is always false"
 msgstr ""
 
-#: c-family/c-common.c:3104
+#: c-family/c-common.c:3144
 #, gcc-internal-format
 msgid "pointer of type %<void *%> used in arithmetic"
 msgstr ""
 
-#: c-family/c-common.c:3113
+#: c-family/c-common.c:3153
 #, gcc-internal-format
 msgid "pointer to a function used in arithmetic"
 msgstr ""
 
-#: c-family/c-common.c:3290
+#: c-family/c-common.c:3330
 #, gcc-internal-format
 msgid "enum constant in boolean context"
 msgstr ""
 
-#: c-family/c-common.c:3317
+#: c-family/c-common.c:3357
 #, gcc-internal-format
 msgid "the address of %qD will always evaluate as %<true%>"
 msgstr ""
 
-#: c-family/c-common.c:3361
+#: c-family/c-common.c:3401
 #, gcc-internal-format
 msgid "%<*%> in boolean context, suggest %<&&%> instead"
 msgstr ""
 
-#: c-family/c-common.c:3373
+#: c-family/c-common.c:3413
 #, gcc-internal-format
 msgid "%<<<%> in boolean context, did you mean %<<%>?"
 msgstr ""
 
-#: c-family/c-common.c:3389
+#: c-family/c-common.c:3429
 #, gcc-internal-format
 msgid ""
 "%<?:%> using integer constants in boolean context, the expression will "
 "always evaluate to %<true%>"
 msgstr ""
 
-#: c-family/c-common.c:3398
+#: c-family/c-common.c:3438
 #, gcc-internal-format
 msgid "%<?:%> using integer constants in boolean context"
 msgstr ""
 
-#: c-family/c-common.c:3434
+#: c-family/c-common.c:3474
 #, gcc-internal-format
 msgid ""
 "the compiler can assume that the address of %qD will always evaluate to "
 "%<true%>"
 msgstr ""
 
-#: c-family/c-common.c:3460 cp/semantics.c:729 cp/typeck.c:9407
+#: c-family/c-common.c:3500 cp/semantics.c:758 cp/typeck.c:9561
 #, gcc-internal-format
 msgid "suggest parentheses around assignment used as truth value"
 msgstr ""
 
-#: c-family/c-common.c:3547 c/c-decl.c:4644 c/c-decl.c:6822 c/c-typeck.c:15263
+#: c-family/c-common.c:3587 c/c-decl.c:4685 c/c-decl.c:7065 c/c-typeck.c:15427
 #, gcc-internal-format
 msgid "invalid use of %<restrict%>"
 msgstr ""
 
-#: c-family/c-common.c:3621
+#: c-family/c-common.c:3661
 #, gcc-internal-format
 msgid "invalid application of %<sizeof%> to a function type"
 msgstr ""
 
-#: c-family/c-common.c:3631
+#: c-family/c-common.c:3671
 #, gcc-internal-format
 msgid "ISO C++ does not permit %<alignof%> applied to a function type"
 msgstr ""
 
-#: c-family/c-common.c:3634
+#: c-family/c-common.c:3674
 #, gcc-internal-format
 msgid "ISO C does not permit %<_Alignof%> applied to a function type"
 msgstr ""
 
-#: c-family/c-common.c:3645
+#: c-family/c-common.c:3685
 #, gcc-internal-format
 msgid "invalid application of %qs to a void type"
 msgstr ""
 
-#: c-family/c-common.c:3654
+#: c-family/c-common.c:3694
 #, gcc-internal-format
 msgid "invalid application of %qs to incomplete type %qT"
 msgstr ""
 
-#: c-family/c-common.c:3662
+#: c-family/c-common.c:3702
 #, gcc-internal-format
 msgid "invalid application of %qs to array type %qT of incomplete element type"
 msgstr ""
 
-#: c-family/c-common.c:3714
+#: c-family/c-common.c:3754
 #, gcc-internal-format
 msgid "%<__alignof%> applied to a bit-field"
 msgstr ""
 
-#: c-family/c-common.c:4514
+#: c-family/c-common.c:4554
 #, gcc-internal-format
 msgid "first argument to %<va_arg%> not of type %<va_list%>"
 msgstr ""
 
-#: c-family/c-common.c:4634
+#: c-family/c-common.c:4674
 #, gcc-internal-format
 msgid "cannot disable built-in function %qs"
 msgstr ""
 
-#: c-family/c-common.c:4825
+#: c-family/c-common.c:4865
 #, gcc-internal-format
 msgid "pointers are not permitted as case values"
 msgstr ""
 
-#: c-family/c-common.c:4832
+#: c-family/c-common.c:4872
 #, gcc-internal-format
 msgid "range expressions in switch statements are non-standard"
 msgstr ""
 
-#: c-family/c-common.c:4860
+#: c-family/c-common.c:4900
 #, gcc-internal-format
 msgid "empty range specified"
 msgstr ""
 
-#: c-family/c-common.c:4912
+#: c-family/c-common.c:4952
 #, gcc-internal-format
 msgid "duplicate (or overlapping) case value"
 msgstr ""
 
-#: c-family/c-common.c:4914
+#: c-family/c-common.c:4954
 #, gcc-internal-format
 msgid "this is the first entry overlapping that value"
 msgstr ""
 
-#: c-family/c-common.c:4918
+#: c-family/c-common.c:4958
 #, gcc-internal-format
 msgid "duplicate case value"
 msgstr ""
 
-#: c-family/c-common.c:4919 c-family/c-warn.c:2515
+#: c-family/c-common.c:4959 c-family/c-warn.c:2526
 #, gcc-internal-format
 msgid "previously used here"
 msgstr ""
 
-#: c-family/c-common.c:4923
+#: c-family/c-common.c:4963
 #, gcc-internal-format
 msgid "multiple default labels in one switch"
 msgstr ""
 
-#: c-family/c-common.c:4925
+#: c-family/c-common.c:4965
 #, gcc-internal-format
 msgid "this is the first default label"
 msgstr ""
 
-#: c-family/c-common.c:5019
+#: c-family/c-common.c:5077
 #, gcc-internal-format
 msgid "taking the address of a label is non-standard"
 msgstr ""
 
-#: c-family/c-common.c:5197
+#: c-family/c-common.c:5255
 #, gcc-internal-format
 msgid "requested alignment is not an integer constant"
 msgstr ""
 
-#: c-family/c-common.c:5205 c-family/c-common.c:5215
+#: c-family/c-common.c:5263 c-family/c-common.c:5273
 #, gcc-internal-format
 msgid "requested alignment %qE is not a positive power of 2"
 msgstr ""
 
-#: c-family/c-common.c:5225
+#: c-family/c-common.c:5283
 #, gcc-internal-format
 msgid "requested alignment %qE exceeds object file maximum %u"
 msgstr ""
 
-#: c-family/c-common.c:5233
+#: c-family/c-common.c:5291
 #, gcc-internal-format
 msgid "requested alignment %qE exceeds maximum %u"
 msgstr ""
 
-#: c-family/c-common.c:5407
+#: c-family/c-common.c:5465
 #, gcc-internal-format
 msgid "not enough variable arguments to fit a sentinel"
 msgstr ""
 
-#: c-family/c-common.c:5421
+#: c-family/c-common.c:5479
 #, gcc-internal-format
 msgid "missing sentinel in function call"
 msgstr ""
 
-#: c-family/c-common.c:5540
+#: c-family/c-common.c:5598
 #, gcc-internal-format
-msgid "%qs pointer null"
+msgid "%qs pointer is null"
 msgstr ""
 
-#: c-family/c-common.c:5549
+#: c-family/c-common.c:5607
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u null where non-null expected"
 msgstr ""
 
-#: c-family/c-common.c:5648 c-family/c-common.c:5698
+#: c-family/c-common.c:5706 c-family/c-common.c:5756
 #, gcc-internal-format
 msgid "bad option %qs to attribute %<optimize%>"
 msgstr ""
 
-#: c-family/c-common.c:5651 c-family/c-common.c:5702
+#: c-family/c-common.c:5709 c-family/c-common.c:5760
 #, gcc-internal-format
 msgid "bad option %qs to pragma %<optimize%>"
 msgstr ""
 
-#: c-family/c-common.c:5734
+#: c-family/c-common.c:5793
 #, gcc-internal-format
-msgid "%<fallthrough%> attribute specified multiple times"
+msgid "attribute %<fallthrough%> specified multiple times"
 msgstr ""
 
-#: c-family/c-common.c:5738
+#: c-family/c-common.c:5797
 #, gcc-internal-format
 msgid "%<fallthrough%> attribute specified with a parameter"
 msgstr ""
 
-#: c-family/c-common.c:5911 c-family/c-common.c:6701 c-family/c-common.c:6748
-#: c-family/c-common.c:6823 c-family/c-common.c:6896 c/c-typeck.c:3663
+#: c-family/c-common.c:5973 c-family/c-common.c:6803 c-family/c-common.c:6850
+#: c-family/c-common.c:6925 c-family/c-common.c:6998 c/c-typeck.c:3671
 #, gcc-internal-format
 msgid "too few arguments to function %qE"
 msgstr ""
 
-#: c-family/c-common.c:5916 c-family/c-common.c:6754 c-family/c-common.c:6922
-#: c/c-typeck.c:3527
+#: c-family/c-common.c:5978 c-family/c-common.c:6856 c-family/c-common.c:7024
+#: c/c-typeck.c:3535
 #, gcc-internal-format
 msgid "too many arguments to function %qE"
 msgstr ""
 
-#: c-family/c-common.c:5958
+#: c-family/c-common.c:6020
 #, gcc-internal-format
 msgid "third argument to function %qE must be a constant integer"
 msgstr ""
 
-#: c-family/c-common.c:5983
+#: c-family/c-common.c:6045
 #, 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.c:6004 c-family/c-common.c:6048
+#: c-family/c-common.c:6066 c-family/c-common.c:6110
 #, gcc-internal-format
 msgid "non-floating-point argument in call to function %qE"
 msgstr ""
 
-#: c-family/c-common.c:6027
+#: c-family/c-common.c:6089
 #, gcc-internal-format
 msgid "non-floating-point arguments in call to function %qE"
 msgstr ""
 
-#: c-family/c-common.c:6041
+#: c-family/c-common.c:6103
 #, gcc-internal-format
 msgid "non-const integer argument %u in call to function %qE"
 msgstr ""
 
-#: c-family/c-common.c:6061
+#: c-family/c-common.c:6123
 #, gcc-internal-format
 msgid "non-integer argument 3 in call to function %qE"
 msgstr ""
 
-#: c-family/c-common.c:6078 c-family/c-common.c:6121
+#: c-family/c-common.c:6140 c-family/c-common.c:6190
 #, gcc-internal-format
 msgid "argument %u in call to function %qE does not have integral type"
 msgstr ""
 
-#: c-family/c-common.c:6085
+#: c-family/c-common.c:6147
 #, gcc-internal-format
 msgid ""
 "argument 3 in call to function %qE does not have pointer to integral type"
 msgstr ""
 
-#: c-family/c-common.c:6091
+#: c-family/c-common.c:6153
 #, gcc-internal-format
 msgid "argument 3 in call to function %qE has pointer to enumerated type"
 msgstr ""
 
-#: c-family/c-common.c:6097
+#: c-family/c-common.c:6159
 #, gcc-internal-format
 msgid "argument 3 in call to function %qE has pointer to boolean type"
 msgstr ""
 
-#: c-family/c-common.c:6103
+#: c-family/c-common.c:6165 c-family/c-common.c:6172 c-family/c-common.c:6227
+#: c-family/c-common.c:6234
 #, gcc-internal-format
-msgid "argument 3 in call to function %qE has pointer to %<const%> type (%qT)"
+msgid "argument %u in call to function %qE has pointer to %qs type (%qT)"
 msgstr ""
 
-#: c-family/c-common.c:6127
+#: c-family/c-common.c:6196
 #, gcc-internal-format
 msgid "argument 3 in call to function %qE has enumerated type"
 msgstr ""
 
-#: c-family/c-common.c:6133
+#: c-family/c-common.c:6202
 #, gcc-internal-format
 msgid "argument 3 in call to function %qE has boolean type"
 msgstr ""
 
-#: c-family/c-common.c:6384
+#: c-family/c-common.c:6215
+#, gcc-internal-format
+msgid "argument %u in call to function %qE does not have pointer type"
+msgstr ""
+
+#: c-family/c-common.c:6221
+#, gcc-internal-format
+msgid "argument %u in call to function %qE points to incomplete type"
+msgstr ""
+
+#: c-family/c-common.c:6486
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to static data member %qD"
 msgstr ""
 
-#: c-family/c-common.c:6389
+#: c-family/c-common.c:6491
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> when %<operator[]%> is overloaded"
 msgstr ""
 
-#: c-family/c-common.c:6396
+#: c-family/c-common.c:6498
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to a non constant address"
 msgstr ""
 
-#: c-family/c-common.c:6409
+#: c-family/c-common.c:6511
 #, gcc-internal-format
 msgid "attempt to take address of bit-field structure member %qD"
 msgstr ""
 
-#: c-family/c-common.c:6462
+#: c-family/c-common.c:6564
 #, gcc-internal-format
 msgid "index %E denotes an offset greater than size of %qT"
 msgstr ""
 
-#: c-family/c-common.c:6623
+#: c-family/c-common.c:6725
 #, gcc-internal-format
 msgid "size of array is too large"
 msgstr ""
 
-#: c-family/c-common.c:6731 c-family/c-common.c:6855
+#: c-family/c-common.c:6833 c-family/c-common.c:6957
 #, gcc-internal-format
 msgid "operand type %qT is incompatible with argument %d of %qE"
 msgstr ""
 
-#: c-family/c-common.c:6765
+#: c-family/c-common.c:6867
 #, gcc-internal-format
 msgid "expecting argument of type pointer or of type integer for argument 1"
 msgstr ""
 
-#: c-family/c-common.c:6781
+#: c-family/c-common.c:6883
 #, gcc-internal-format
 msgid "both arguments must be compatible"
 msgstr ""
 
-#: c-family/c-common.c:6997
+#: c-family/c-common.c:7099
 #, gcc-internal-format
 msgid "incorrect number of arguments to function %qE"
 msgstr ""
 
-#: c-family/c-common.c:7011
+#: c-family/c-common.c:7113
 #, gcc-internal-format
 msgid "argument 1 of %qE must be a non-void pointer type"
 msgstr ""
 
-#: c-family/c-common.c:7020
+#: c-family/c-common.c:7120
+#, gcc-internal-format
+msgid "argument 1 of %qE must be a pointer to a complete type"
+msgstr ""
+
+#: c-family/c-common.c:7129
 #, gcc-internal-format
 msgid "argument 1 of %qE must be a pointer to a constant size type"
 msgstr ""
 
-#: c-family/c-common.c:7031
+#: c-family/c-common.c:7140
 #, gcc-internal-format
 msgid "argument 1 of %qE must be a pointer to a nonzero size object"
 msgstr ""
 
-#: c-family/c-common.c:7052
+#: c-family/c-common.c:7161
 #, gcc-internal-format
 msgid "argument %d of %qE must be a pointer type"
 msgstr ""
 
-#: c-family/c-common.c:7060
+#: c-family/c-common.c:7169
 #, gcc-internal-format
 msgid "argument %d of %qE must be a pointer to a constant size type"
 msgstr ""
 
-#: c-family/c-common.c:7066
+#: c-family/c-common.c:7175
 #, gcc-internal-format
 msgid "argument %d of %qE must not be a pointer to a function"
 msgstr ""
 
-#: c-family/c-common.c:7074
+#: c-family/c-common.c:7183
 #, gcc-internal-format
 msgid "size mismatch in argument %d of %qE"
 msgstr ""
 
-#: c-family/c-common.c:7087
+#: c-family/c-common.c:7196
 #, gcc-internal-format
 msgid "argument %d of %qE must not be a pointer to a %<const%> type"
 msgstr ""
 
-#: c-family/c-common.c:7092
+#: c-family/c-common.c:7201
 #, gcc-internal-format
 msgid "argument %d of %qE discards %<const%> qualifier"
 msgstr ""
 
-#: c-family/c-common.c:7101
+#: c-family/c-common.c:7210
 #, gcc-internal-format
 msgid "argument %d of %qE must not be a pointer to a %<volatile%> type"
 msgstr ""
 
-#: c-family/c-common.c:7106
+#: c-family/c-common.c:7215
 #, gcc-internal-format
 msgid "argument %d of %qE discards %<volatile%> qualifier"
 msgstr ""
 
-#: c-family/c-common.c:7119
+#: c-family/c-common.c:7228
 #, gcc-internal-format
 msgid "non-integer memory model argument %d of %qE"
 msgstr ""
 
-#: c-family/c-common.c:7132
+#: c-family/c-common.c:7241
 #, gcc-internal-format
 msgid "invalid memory model argument %d of %qE"
 msgstr ""
 
-#: c-family/c-common.c:7533
+#: c-family/c-common.c:7642
 #, 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.c:8153
+#: c-family/c-common.c:8269
 #, gcc-internal-format
 msgid "index value is out of bound"
 msgstr ""
 
-#: c-family/c-common.c:8195 c-family/c-common.c:8244 c-family/c-common.c:8260
+#: c-family/c-common.c:8311 c-family/c-common.c:8360 c-family/c-common.c:8376
 #, 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.c:8348
+#: c-family/c-common.c:8464
 #, gcc-internal-format
 msgid "built-in function %qE must be directly called"
 msgstr ""
 
-#: c-family/c-common.c:8368
+#: c-family/c-common.c:8484
 #, gcc-internal-format
 msgid "size of array %qE is not a constant expression"
 msgstr ""
 
-#: c-family/c-common.c:8371
+#: c-family/c-common.c:8487
 #, gcc-internal-format
 msgid "size of array is not a constant expression"
 msgstr ""
 
-#: c-family/c-common.c:8375
+#: c-family/c-common.c:8491
 #, gcc-internal-format
 msgid "size %qE of array %qE is negative"
 msgstr ""
 
-#: c-family/c-common.c:8378
+#: c-family/c-common.c:8494
 #, gcc-internal-format
 msgid "size %qE of array is negative"
 msgstr ""
 
-#: c-family/c-common.c:8383
+#: c-family/c-common.c:8499
 #, gcc-internal-format
 msgid "size %qE of array %qE exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.c:8386
+#: c-family/c-common.c:8502
 #, gcc-internal-format
 msgid "size %qE of array exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.c:8391
+#: c-family/c-common.c:8507
 #, gcc-internal-format
 msgid "size of array %qE exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.c:8394
+#: c-family/c-common.c:8510
 #, gcc-internal-format
 msgid "size of array exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.c:8465
+#: c-family/c-common.c:8581
 #, gcc-internal-format
 msgid ""
 "environment variable %qs must expand to a non-negative integer less than or "
@@ -32464,26 +33422,26 @@ msgstr ""
 msgid "strftime formats cannot format arguments"
 msgstr ""
 
-#: c-family/c-indentation.c:66
+#: c-family/c-indentation.c:318
 #, gcc-internal-format
 msgid ""
 "%<-Wmisleading-indentation%> is disabled from this point onwards, since "
 "column-tracking was disabled due to the size of the code/headers"
 msgstr ""
 
-#: c-family/c-indentation.c:71
+#: c-family/c-indentation.c:323
 #, gcc-internal-format
 msgid ""
 "adding %<-flarge-source-files%> will allow for more column-tracking support, "
 "at the expense of compilation time and memory"
 msgstr ""
 
-#: c-family/c-indentation.c:618
+#: c-family/c-indentation.c:651
 #, gcc-internal-format
 msgid "this %qs clause does not guard..."
 msgstr ""
 
-#: c-family/c-indentation.c:621
+#: c-family/c-indentation.c:654
 #, gcc-internal-format
 msgid ""
 "...this statement, but the latter is misleadingly indented as if it were "
@@ -32501,422 +33459,436 @@ msgid "ignoring %<#pragma %s %s%>"
 msgstr ""
 
 #. ... or not.
-#: c-family/c-lex.c:560 c-family/c-lex.c:1273
+#: c-family/c-lex.c:577 c-family/c-lex.c:1301
 #, gcc-internal-format
 msgid "stray %<@%> in program"
 msgstr ""
 
-#: c-family/c-lex.c:575
+#: c-family/c-lex.c:592
 #, gcc-internal-format
 msgid "stray %qs in program"
 msgstr ""
 
-#: c-family/c-lex.c:585
+#: c-family/c-lex.c:602
 #, gcc-internal-format, gfc-internal-format
 msgid "missing terminating %c character"
 msgstr ""
 
-#: c-family/c-lex.c:587
+#: c-family/c-lex.c:604
 #, gcc-internal-format
 msgid "stray %qc in program"
 msgstr ""
 
-#: c-family/c-lex.c:589
+#: c-family/c-lex.c:606
 #, gcc-internal-format
 msgid "stray %<\\%o%> in program"
 msgstr ""
 
-#: c-family/c-lex.c:803
+#: c-family/c-lex.c:823
 #, gcc-internal-format
 msgid "this decimal constant is unsigned only in ISO C90"
 msgstr ""
 
-#: c-family/c-lex.c:807
+#: c-family/c-lex.c:827
 #, gcc-internal-format
 msgid "this decimal constant would be unsigned in ISO C90"
 msgstr ""
 
-#: c-family/c-lex.c:827
+#: c-family/c-lex.c:855
 #, gcc-internal-format
 msgid "integer constant is too large for %<unsigned long%> type"
 msgstr ""
 
-#: c-family/c-lex.c:867
+#: c-family/c-lex.c:895
 #, gcc-internal-format
 msgid "unsuffixed floating constant"
 msgstr ""
 
-#: c-family/c-lex.c:881
+#: c-family/c-lex.c:909
 #, gcc-internal-format
 msgid "decimal floating-point not supported for this target"
 msgstr ""
 
-#: c-family/c-lex.c:904 c-family/c-lex.c:928
+#: c-family/c-lex.c:932 c-family/c-lex.c:956
 #, gcc-internal-format
 msgid "unsupported non-standard suffix on floating constant"
 msgstr ""
 
-#: c-family/c-lex.c:909 c-family/c-lex.c:932
+#: c-family/c-lex.c:937 c-family/c-lex.c:960
 #, gcc-internal-format
 msgid "non-standard suffix on floating constant"
 msgstr ""
 
-#: c-family/c-lex.c:1011 c-family/c-lex.c:1014
+#: c-family/c-lex.c:1039 c-family/c-lex.c:1042
 #, gcc-internal-format
 msgid "floating constant exceeds range of %qT"
 msgstr ""
 
-#: c-family/c-lex.c:1029
+#: c-family/c-lex.c:1057
 #, gcc-internal-format
 msgid "floating constant truncated to zero"
 msgstr ""
 
-#: c-family/c-lex.c:1230
+#: c-family/c-lex.c:1258
 #, gcc-internal-format
 msgid "repeated %<@%> before Objective-C string"
 msgstr ""
 
-#: c-family/c-lex.c:1249 c/c-parser.c:7469 cp/parser.c:4272
+#: c-family/c-lex.c:1277 c/c-parser.c:7382 cp/parser.c:4375
 #, gcc-internal-format
 msgid "unsupported non-standard concatenation of string literals"
 msgstr ""
 
-#: c-family/c-lex.c:1285 c/c-parser.c:7490
+#: c-family/c-lex.c:1313 c/c-parser.c:7403
 #, gcc-internal-format
 msgid "traditional C rejects string constant concatenation"
 msgstr ""
 
-#: c-family/c-omp.c:212
+#: c-family/c-omp.c:116 cp/pt.c:18814
+#, gcc-internal-format
+msgid ""
+"%<#pragma omp critical%> with %<hint%> clause requires a name, except when "
+"%<omp_sync_hint_none%> is used"
+msgstr ""
+
+#: c-family/c-omp.c:224
 #, gcc-internal-format
 msgid "invalid expression type for %<#pragma omp atomic%>"
 msgstr ""
 
-#: c-family/c-omp.c:217
+#: c-family/c-omp.c:229
 #, gcc-internal-format
 msgid "%<_Atomic%> expression in %<#pragma omp atomic%>"
 msgstr ""
 
-#: c-family/c-omp.c:337
+#: c-family/c-omp.c:349
 #, gcc-internal-format
 msgid "%<#pragma omp atomic update%> uses two different variables for memory"
 msgstr ""
 
-#: c-family/c-omp.c:340 c-family/c-omp.c:378
+#: c-family/c-omp.c:352 c-family/c-omp.c:390
 #, gcc-internal-format
 msgid "%<#pragma omp atomic capture%> uses two different variables for memory"
 msgstr ""
 
-#: c-family/c-omp.c:460
+#: c-family/c-omp.c:472
 #, gcc-internal-format
 msgid "type of %<depobj%> expression is not %<omp_depend_t%>"
 msgstr ""
 
-#: c-family/c-omp.c:466
+#: c-family/c-omp.c:478
 #, gcc-internal-format
 msgid "%<const%> qualified %<depobj%> expression"
 msgstr ""
 
-#: c-family/c-omp.c:482
+#: c-family/c-omp.c:494
 #, gcc-internal-format
 msgid "more than one locator in %<depend%> clause on %<depobj%> construct"
 msgstr ""
 
-#: c-family/c-omp.c:488
+#: c-family/c-omp.c:500
 #, gcc-internal-format
 msgid ""
 "%<depobj%> dependence type specified in %<depend%> clause on %<depobj%> "
 "construct"
 msgstr ""
 
-#: c-family/c-omp.c:510
+#: c-family/c-omp.c:522
 #, gcc-internal-format
 msgid "%<iterator%> modifier may not be specified on %<depobj%> construct"
 msgstr ""
 
-#: c-family/c-omp.c:724 cp/semantics.c:9090
+#: c-family/c-omp.c:736 cp/semantics.c:9360
 #, gcc-internal-format
 msgid "invalid type for iteration variable %qE"
 msgstr ""
 
-#: c-family/c-omp.c:729
+#: c-family/c-omp.c:741
 #, gcc-internal-format
 msgid "%<_Atomic%> iteration variable %qE"
 msgstr ""
 
-#: c-family/c-omp.c:745
+#: c-family/c-omp.c:757
 #, gcc-internal-format
 msgid "%qE is not initialized"
 msgstr ""
 
-#: c-family/c-omp.c:766 cp/semantics.c:8979
+#: c-family/c-omp.c:778 cp/semantics.c:9249
 #, gcc-internal-format
 msgid "missing controlling predicate"
 msgstr ""
 
-#: c-family/c-omp.c:872 cp/semantics.c:8598
+#: c-family/c-omp.c:884 cp/semantics.c:8868
 #, gcc-internal-format
 msgid "invalid controlling predicate"
 msgstr ""
 
-#: c-family/c-omp.c:879 cp/semantics.c:8985
+#: c-family/c-omp.c:891 cp/semantics.c:9255
 #, gcc-internal-format
 msgid "missing increment expression"
 msgstr ""
 
-#: c-family/c-omp.c:979 c-family/c-omp.c:997
+#: c-family/c-omp.c:991 c-family/c-omp.c:1009
 #, gcc-internal-format
 msgid "increment is not constant 1 or -1 for %<!=%> condition"
 msgstr ""
 
-#: c-family/c-omp.c:1010 cp/semantics.c:8713
+#: c-family/c-omp.c:1022 cp/semantics.c:8983
 #, gcc-internal-format
 msgid "invalid increment expression"
 msgstr ""
 
-#: c-family/c-omp.c:1107
+#: c-family/c-omp.c:1119
 #, gcc-internal-format
 msgid "initializer expression refers to iteration variable %qD"
 msgstr ""
 
-#: c-family/c-omp.c:1111
+#: c-family/c-omp.c:1123
 #, gcc-internal-format
 msgid "condition expression refers to iteration variable %qD"
 msgstr ""
 
-#: c-family/c-omp.c:1115
+#: c-family/c-omp.c:1127
 #, gcc-internal-format
 msgid "increment expression refers to iteration variable %qD"
 msgstr ""
 
-#: c-family/c-omp.c:1267
+#: c-family/c-omp.c:1279
 #, gcc-internal-format
 msgid ""
 "outer iteration variable %qD used in initializer expression has type other "
 "than %qT"
 msgstr ""
 
-#: c-family/c-omp.c:1271
+#: c-family/c-omp.c:1283
 #, gcc-internal-format
 msgid ""
 "outer iteration variable %qD used in condition expression has type other "
 "than %qT"
 msgstr ""
 
-#: c-family/c-omp.c:1278
+#: c-family/c-omp.c:1290
 #, gcc-internal-format
 msgid "outer iteration variable %qD multiplier expression %qE is not integral"
 msgstr ""
 
-#: c-family/c-omp.c:1284
+#: c-family/c-omp.c:1296
 #, gcc-internal-format
 msgid "outer iteration variable %qD addend expression %qE is not integral"
 msgstr ""
 
-#: c-family/c-omp.c:1349 c-family/c-omp.c:1435
+#: c-family/c-omp.c:1361 c-family/c-omp.c:1447
 #, gcc-internal-format
 msgid "the same loop iteration variables %qD used in multiple associated loops"
 msgstr ""
 
-#: c-family/c-omp.c:1387
+#: c-family/c-omp.c:1399
 #, gcc-internal-format
 msgid ""
 "two different outer iteration variables %qD and %qD used in a single loop"
 msgstr ""
 
-#: c-family/c-omp.c:1939
+#: c-family/c-omp.c:1952
 #, gcc-internal-format
 msgid ""
 "invalid %<task%> reduction modifier on construct combined with %<simd%> or "
 "%<loop%>"
 msgstr ""
 
-#: c-family/c-omp.c:1950
+#: c-family/c-omp.c:1963
 #, gcc-internal-format
 msgid ""
 "invalid %<task%> reduction modifier on construct not combined with %<parallel"
 "%>, %<for%> or %<sections%>"
 msgstr ""
 
-#: c-family/c-omp.c:1963
+#: c-family/c-omp.c:1976
 #, gcc-internal-format
 msgid ""
 "%<inscan%> %<reduction%> clause on construct other than %<for%>, %<simd%>, "
 "%<for simd%>, %<parallel for%>, %<parallel for simd%>"
 msgstr ""
 
-#: c-family/c-omp.c:2270 c-family/c-omp.c:2285
+#: c-family/c-omp.c:2382 c/c-typeck.c:15240 cp/semantics.c:8511
+#, gcc-internal-format
+msgid ""
+"%qD specified in %<allocate%> clause but not in an explicit privatization "
+"clause"
+msgstr ""
+
+#: c-family/c-omp.c:2473 c-family/c-omp.c:2488
 #, gcc-internal-format
 msgid "%qD is not a function argument"
 msgstr ""
 
-#: c-family/c-omp.c:2414
+#: c-family/c-omp.c:2617
 #, gcc-internal-format
 msgid "selector set %qs specified more than once"
 msgstr ""
 
-#: c-family/c-omp.c:2428 c-family/c-omp.c:2441
+#: c-family/c-omp.c:2631 c-family/c-omp.c:2644
 #, gcc-internal-format
 msgid "selector %qs specified more than once in set %qs"
 msgstr ""
 
-#: c-family/c-omp.c:2482
+#: c-family/c-omp.c:2685
 #, gcc-internal-format
 msgid "incorrect property %qs of %qs selector"
 msgstr ""
 
-#: c-family/c-omp.c:2489
+#: c-family/c-omp.c:2692
 #, gcc-internal-format
 msgid "unknown property %qs of %qs selector"
 msgstr ""
 
-#: c-family/c-omp.c:2494
+#: c-family/c-omp.c:2697
 #, gcc-internal-format
 msgid "unknown property %qE of %qs selector"
 msgstr ""
 
-#: c-family/c-omp.c:2535
+#: c-family/c-omp.c:2738
 #, gcc-internal-format
 msgid "%qD used as a variant with incompatible %<construct%> selector sets"
 msgstr ""
 
-#: c-family/c-opts.c:330
+#: c-family/c-opts.c:332
 #, gcc-internal-format
 msgid "%<-I-%> specified twice"
 msgstr ""
 
-#: c-family/c-opts.c:333
+#: c-family/c-opts.c:335
 #, gcc-internal-format
 msgid "obsolete option %<-I-%> used, please use %<-iquote%> instead"
 msgstr ""
 
-#: c-family/c-opts.c:412
+#: c-family/c-opts.c:426
 #, gcc-internal-format
 msgid "%<-Wabi=1%> is not supported, using =2"
 msgstr ""
 
-#: c-family/c-opts.c:598 fortran/cpp.c:351
+#: c-family/c-opts.c:612 fortran/cpp.c:353
 #, gcc-internal-format
 msgid "output filename specified twice"
 msgstr ""
 
-#: c-family/c-opts.c:795
+#: c-family/c-opts.c:813
 #, gcc-internal-format
 msgid "%<-fexcess-precision=standard%> for C++"
 msgstr ""
 
-#: c-family/c-opts.c:835
+#: c-family/c-opts.c:853
 #, gcc-internal-format
 msgid "%<-fno-gnu89-inline%> is only supported in GNU99 or C99 mode"
 msgstr ""
 
-#: c-family/c-opts.c:881
+#: c-family/c-opts.c:899
 #, gcc-internal-format
 msgid "%<-Wformat-y2k%> ignored without %<-Wformat%>"
 msgstr ""
 
-#: c-family/c-opts.c:883
+#: c-family/c-opts.c:901
 #, gcc-internal-format
 msgid "%<-Wformat-extra-args%> ignored without %<-Wformat%>"
 msgstr ""
 
-#: c-family/c-opts.c:885
+#: c-family/c-opts.c:903
 #, gcc-internal-format
 msgid "%<-Wformat-zero-length%> ignored without %<-Wformat%>"
 msgstr ""
 
-#: c-family/c-opts.c:887
+#: c-family/c-opts.c:905
 #, gcc-internal-format
 msgid "%<-Wformat-nonliteral%> ignored without %<-Wformat%>"
 msgstr ""
 
-#: c-family/c-opts.c:889
+#: c-family/c-opts.c:907
 #, gcc-internal-format
 msgid "%<-Wformat-contains-nul%> ignored without %<-Wformat%>"
 msgstr ""
 
-#: c-family/c-opts.c:891
+#: c-family/c-opts.c:909
 #, gcc-internal-format
 msgid "%<-Wformat-security%> ignored without %<-Wformat%>"
 msgstr ""
 
-#: c-family/c-opts.c:934
+#: c-family/c-opts.c:962
 #, gcc-internal-format
 msgid "%<-fabi-compat-version=1%> is not supported, using =2"
 msgstr ""
 
-#: c-family/c-opts.c:961
+#: c-family/c-opts.c:989
 #, gcc-internal-format
 msgid "%<-Wabi%> won%'t warn about anything"
 msgstr ""
 
-#: c-family/c-opts.c:963
+#: c-family/c-opts.c:991
 #, gcc-internal-format
 msgid ""
 "%<-Wabi%> warns about differences from the most up-to-date ABI, which is "
 "also used by default"
 msgstr ""
 
-#: c-family/c-opts.c:966
+#: c-family/c-opts.c:994
 #, gcc-internal-format
 msgid "use e.g. %<-Wabi=11%> to warn about changes from GCC 7"
 msgstr ""
 
-#: c-family/c-opts.c:1029
+#: c-family/c-opts.c:1057
 #, gcc-internal-format
 msgid "external TLS initialization functions not supported on this target"
 msgstr ""
 
-#: c-family/c-opts.c:1053
+#: c-family/c-opts.c:1081
 #, gcc-internal-format
 msgid "too many filenames given; type %<%s %s%> for usage"
 msgstr ""
 
-#: c-family/c-opts.c:1068
+#: c-family/c-opts.c:1096
 #, gcc-internal-format
 msgid "opening output file %s: %m"
 msgstr ""
 
-#: c-family/c-opts.c:1088
+#: c-family/c-opts.c:1116
 #, gcc-internal-format
 msgid "the %qs debug format cannot be used with pre-compiled headers"
 msgstr ""
 
-#: c-family/c-opts.c:1246
+#: c-family/c-opts.c:1276
 #, gcc-internal-format
 msgid "opening dependency file %s: %m"
 msgstr ""
 
-#: c-family/c-opts.c:1257
+#: c-family/c-opts.c:1287
 #, gcc-internal-format
 msgid "closing dependency file %s: %m"
 msgstr ""
 
-#: c-family/c-opts.c:1260
+#: c-family/c-opts.c:1290
 #, gcc-internal-format
 msgid "when writing output to %s: %m"
 msgstr ""
 
-#: c-family/c-opts.c:1336
+#: c-family/c-opts.c:1366
 #, gcc-internal-format
 msgid "to generate dependencies you must specify either %<-M%> or %<-MM%>"
 msgstr ""
 
-#: c-family/c-opts.c:1360
+#: c-family/c-opts.c:1390
 #, gcc-internal-format
 msgid "%<-MG%> may only be used with %<-M%> or %<-MM%>"
 msgstr ""
 
-#: c-family/c-opts.c:1393
+#: c-family/c-opts.c:1423
 #, gcc-internal-format
 msgid "%<-fdirectives-only%> is incompatible with %<-Wunused-macros%>"
 msgstr ""
 
-#: c-family/c-opts.c:1396
+#: c-family/c-opts.c:1426
 #, gcc-internal-format
 msgid "%<-fdirectives-only%> is incompatible with %<-traditional%>"
 msgstr ""
 
-#: c-family/c-opts.c:1583
+#: c-family/c-opts.c:1624
 #, gcc-internal-format
 msgid "too late for # directive to set debug directory"
 msgstr ""
@@ -32936,27 +33908,27 @@ msgstr ""
 msgid "cannot write %s: %m"
 msgstr ""
 
-#: c-family/c-pch.c:409
+#: c-family/c-pch.c:403
 #, gcc-internal-format
 msgid "%<pch_preprocess%> pragma should only be used with %<-fpreprocessed%>"
 msgstr ""
 
-#: c-family/c-pch.c:411
+#: c-family/c-pch.c:405
 #, gcc-internal-format
 msgid "use %<#include%> instead"
 msgstr ""
 
-#: c-family/c-pch.c:417
+#: c-family/c-pch.c:411
 #, gcc-internal-format
 msgid "%s: couldn%'t open PCH file: %m"
 msgstr ""
 
-#: c-family/c-pch.c:422
+#: c-family/c-pch.c:416
 #, gcc-internal-format
 msgid "use %<-Winvalid-pch%> for more information"
 msgstr ""
 
-#: c-family/c-pch.c:423
+#: c-family/c-pch.c:417
 #, gcc-internal-format, gfc-internal-format
 msgid "%s: PCH file was invalid"
 msgstr ""
@@ -33148,65 +34120,64 @@ msgstr ""
 msgid "missing option after %<#pragma GCC diagnostic%> kind"
 msgstr ""
 
-#: c-family/c-pragma.c:816
+#: c-family/c-pragma.c:814
 #, gcc-internal-format
-msgid ""
-"unknown option after %<#pragma GCC diagnostic%> kind; did you mean %<-%s%>?"
+msgid "unknown option after %<#pragma GCC diagnostic%> kind"
 msgstr ""
 
-#: c-family/c-pragma.c:820
+#: c-family/c-pragma.c:819
 #, gcc-internal-format
-msgid "unknown option after %<#pragma GCC diagnostic%> kind"
+msgid "did you mean %<-%s%>?"
 msgstr ""
 
-#: c-family/c-pragma.c:827
+#: c-family/c-pragma.c:826
 #, gcc-internal-format
 msgid "%qs is not an option that controls warnings"
 msgstr ""
 
-#: c-family/c-pragma.c:835
+#: c-family/c-pragma.c:834
 #, gcc-internal-format
 msgid "option %qs is valid for %s but not for %s"
 msgstr ""
 
-#: c-family/c-pragma.c:867
+#: c-family/c-pragma.c:866
 #, gcc-internal-format
 msgid "%<#pragma GCC option%> is not allowed inside functions"
 msgstr ""
 
-#: c-family/c-pragma.c:880
+#: c-family/c-pragma.c:879
 #, gcc-internal-format
 msgid "%<#pragma GCC option%> is not a string"
 msgstr ""
 
-#: c-family/c-pragma.c:907
+#: c-family/c-pragma.c:906
 #, gcc-internal-format
 msgid ""
 "%<#pragma GCC target (string [,string]...)%> does not have a final %<)%>"
 msgstr ""
 
-#: c-family/c-pragma.c:913
+#: c-family/c-pragma.c:912
 #, gcc-internal-format
 msgid "%<#pragma GCC target%> string is badly formed"
 msgstr ""
 
-#: c-family/c-pragma.c:936
+#: c-family/c-pragma.c:935
 #, gcc-internal-format
 msgid "%<#pragma GCC optimize%> is not allowed inside functions"
 msgstr ""
 
-#: c-family/c-pragma.c:949
+#: c-family/c-pragma.c:948
 #, gcc-internal-format
 msgid "%<#pragma GCC optimize%> is not a string or number"
 msgstr ""
 
-#: c-family/c-pragma.c:975
+#: c-family/c-pragma.c:974
 #, gcc-internal-format
 msgid ""
 "%<#pragma GCC optimize (string [,string]...)%> does not have a final %<)%>"
 msgstr ""
 
-#: c-family/c-pragma.c:981
+#: c-family/c-pragma.c:980
 #, gcc-internal-format
 msgid "%<#pragma GCC optimize%> string is badly formed"
 msgstr ""
@@ -33216,109 +34187,109 @@ msgstr ""
 msgid "junk at end of %<#pragma push_options%>"
 msgstr ""
 
-#: c-family/c-pragma.c:1058
+#: c-family/c-pragma.c:1060
 #, gcc-internal-format
 msgid "junk at end of %<#pragma pop_options%>"
 msgstr ""
 
-#: c-family/c-pragma.c:1065
+#: c-family/c-pragma.c:1067
 #, gcc-internal-format
 msgid ""
 "%<#pragma GCC pop_options%> without a corresponding %<#pragma GCC "
 "push_options%>"
 msgstr ""
 
-#: c-family/c-pragma.c:1112
+#: c-family/c-pragma.c:1114
 #, gcc-internal-format
 msgid "junk at end of %<#pragma reset_options%>"
 msgstr ""
 
-#: c-family/c-pragma.c:1150 c-family/c-pragma.c:1157
+#: c-family/c-pragma.c:1152 c-family/c-pragma.c:1159
 #, gcc-internal-format
 msgid "expected a string after %<#pragma message%>"
 msgstr ""
 
-#: c-family/c-pragma.c:1152
+#: c-family/c-pragma.c:1154
 #, gcc-internal-format
 msgid "malformed %<#pragma message%>, ignored"
 msgstr ""
 
-#: c-family/c-pragma.c:1162
+#: c-family/c-pragma.c:1164
 #, gcc-internal-format
 msgid "junk at end of %<#pragma message%>"
 msgstr ""
 
-#: c-family/c-pragma.c:1165
+#: c-family/c-pragma.c:1167
 #, gcc-internal-format
 msgid "%<#pragma message: %s%>"
 msgstr ""
 
-#: c-family/c-pragma.c:1203
+#: c-family/c-pragma.c:1205
 #, gcc-internal-format
 msgid "invalid location for %<pragma %s%>, ignored"
 msgstr ""
 
-#: c-family/c-pragma.c:1210 c-family/c-pragma.c:1224
+#: c-family/c-pragma.c:1212 c-family/c-pragma.c:1226
 #, gcc-internal-format
 msgid "malformed %<#pragma %s%>, ignored"
 msgstr ""
 
-#: c-family/c-pragma.c:1230 cp/lex.c:395
+#: c-family/c-pragma.c:1232 cp/lex.c:597
 #, gcc-internal-format
 msgid "junk at end of %<#pragma %s%>"
 msgstr ""
 
-#: c-family/c-pragma.c:1248
+#: c-family/c-pragma.c:1250
 #, gcc-internal-format
 msgid "%<#pragma STDC FLOAT_CONST_DECIMAL64%> is not supported for C++"
 msgstr ""
 
-#: c-family/c-pragma.c:1257
+#: c-family/c-pragma.c:1259
 #, gcc-internal-format
 msgid "%<#pragma STDC FLOAT_CONST_DECIMAL64%> is not supported on this target"
 msgstr ""
 
-#: c-family/c-pragma.c:1263
+#: c-family/c-pragma.c:1265
 #, gcc-internal-format
 msgid "ISO C does not support %<#pragma STDC FLOAT_CONST_DECIMAL64%>"
 msgstr ""
 
-#: c-family/c-pretty-print.c:333
+#: c-family/c-pretty-print.c:339
 #, gcc-internal-format
 msgid "<type-error>"
 msgstr ""
 
-#: c-family/c-pretty-print.c:375
+#: c-family/c-pretty-print.c:382
 #, gcc-internal-format
 msgid "<unnamed-unsigned:"
 msgstr ""
 
-#: c-family/c-pretty-print.c:379
+#: c-family/c-pretty-print.c:386
 #, gcc-internal-format
 msgid "<unnamed-float:"
 msgstr ""
 
-#: c-family/c-pretty-print.c:382
+#: c-family/c-pretty-print.c:389
 #, gcc-internal-format
 msgid "<unnamed-fixed:"
 msgstr ""
 
-#: c-family/c-pretty-print.c:397
+#: c-family/c-pretty-print.c:404
 #, gcc-internal-format
 msgid "<typedef-error>"
 msgstr ""
 
-#: c-family/c-pretty-print.c:412
+#: c-family/c-pretty-print.c:419
 #, gcc-internal-format
 msgid "<tag-error>"
 msgstr ""
 
-#: c-family/c-pretty-print.c:1250
+#: c-family/c-pretty-print.c:1308
 #, gcc-internal-format
 msgid "<erroneous-expression>"
 msgstr ""
 
-#: c-family/c-pretty-print.c:1254 cp/cxx-pretty-print.c:133
+#: c-family/c-pretty-print.c:1312 cp/cxx-pretty-print.c:133
 #, gcc-internal-format
 msgid "<return-value>"
 msgstr ""
@@ -33328,847 +34299,976 @@ msgstr ""
 msgid "wrong type argument to %s"
 msgstr ""
 
-#: c-family/c-warn.c:56 c-family/c-warn.c:69 cp/constexpr.c:2838
-#: cp/constexpr.c:5597
+#: c-family/c-warn.c:58 c-family/c-warn.c:71 cp/constexpr.c:2925
+#: cp/constexpr.c:5982
 #, gcc-internal-format
 msgid "overflow in constant expression"
 msgstr ""
 
-#: c-family/c-warn.c:96
+#: c-family/c-warn.c:98
 #, gcc-internal-format
 msgid "integer overflow in expression %qE of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.c:98
+#: c-family/c-warn.c:100
 #, gcc-internal-format
 msgid "integer overflow in expression of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.c:104
+#: c-family/c-warn.c:106
 #, gcc-internal-format
 msgid "floating point overflow in expression %qE of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.c:106
+#: c-family/c-warn.c:108
 #, gcc-internal-format
 msgid "floating point overflow in expression of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.c:112
+#: c-family/c-warn.c:114
 #, gcc-internal-format
 msgid "fixed-point overflow in expression %qE of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.c:114
+#: c-family/c-warn.c:116
 #, gcc-internal-format
 msgid "fixed-point overflow in expression of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.c:120
+#: c-family/c-warn.c:122
 #, gcc-internal-format
 msgid "vector overflow in expression %qE of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.c:122
+#: c-family/c-warn.c:124
 #, gcc-internal-format
 msgid "vector overflow in expression of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.c:129
+#: c-family/c-warn.c:131
 #, gcc-internal-format
 msgid "complex integer overflow in expression %qE of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.c:131
+#: c-family/c-warn.c:133
 #, gcc-internal-format
 msgid "complex integer overflow in expression of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.c:135
+#: c-family/c-warn.c:137
 #, gcc-internal-format
 msgid ""
 "complex floating point overflow in expression %qE of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.c:137
+#: c-family/c-warn.c:139
 #, gcc-internal-format
 msgid ""
 "complex floating point overflow in expression of type %qT results in %qE"
 msgstr ""
 
-#: c-family/c-warn.c:229
+#: c-family/c-warn.c:231
 #, gcc-internal-format
 msgid "logical %<or%> applied to non-boolean constant"
 msgstr ""
 
-#: c-family/c-warn.c:233
+#: c-family/c-warn.c:235
 #, gcc-internal-format
 msgid "logical %<and%> applied to non-boolean constant"
 msgstr ""
 
-#: c-family/c-warn.c:303
+#: c-family/c-warn.c:305
 #, gcc-internal-format
 msgid "logical %<or%> of collectively exhaustive tests is always true"
 msgstr ""
 
-#: c-family/c-warn.c:307
+#: c-family/c-warn.c:309
 #, gcc-internal-format
 msgid "logical %<and%> of mutually exclusive tests is always false"
 msgstr ""
 
-#: c-family/c-warn.c:317
+#: c-family/c-warn.c:319
 #, gcc-internal-format
 msgid "logical %<or%> of equal expressions"
 msgstr ""
 
-#: c-family/c-warn.c:320
+#: c-family/c-warn.c:322
 #, gcc-internal-format
 msgid "logical %<and%> of equal expressions"
 msgstr ""
 
-#: c-family/c-warn.c:406
+#: c-family/c-warn.c:408
 #, gcc-internal-format
 msgid "bitwise comparison always evaluates to false"
 msgstr ""
 
-#: c-family/c-warn.c:409
+#: c-family/c-warn.c:411
 #, gcc-internal-format
 msgid "bitwise comparison always evaluates to true"
 msgstr ""
 
-#: c-family/c-warn.c:514
+#: c-family/c-warn.c:516
 #, gcc-internal-format
 msgid "self-comparison always evaluates to true"
 msgstr ""
 
-#: c-family/c-warn.c:517
+#: c-family/c-warn.c:519
 #, gcc-internal-format
 msgid "self-comparison always evaluates to false"
 msgstr ""
 
-#: c-family/c-warn.c:568
+#: c-family/c-warn.c:570
 #, gcc-internal-format
 msgid "logical not is only applied to the left hand side of comparison"
 msgstr ""
 
-#: c-family/c-warn.c:576
+#: c-family/c-warn.c:578
 #, gcc-internal-format
 msgid ""
 "add parentheses around left hand side expression to silence this warning"
 msgstr ""
 
-#: c-family/c-warn.c:710
+#: c-family/c-warn.c:721
 #, gcc-internal-format
 msgid "type-punning to incomplete type might break strict-aliasing rules"
 msgstr ""
 
-#: c-family/c-warn.c:728
+#: c-family/c-warn.c:739
 #, gcc-internal-format
 msgid "dereferencing type-punned pointer will break strict-aliasing rules"
 msgstr ""
 
-#: c-family/c-warn.c:736 c-family/c-warn.c:754
+#: c-family/c-warn.c:747 c-family/c-warn.c:765
 #, gcc-internal-format
 msgid "dereferencing type-punned pointer might break strict-aliasing rules"
 msgstr ""
 
-#: c-family/c-warn.c:901
+#: c-family/c-warn.c:912
 #, 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.c:932
+#: c-family/c-warn.c:943
 #, 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.c:939
+#: c-family/c-warn.c:950
 #, 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.c:944
+#: c-family/c-warn.c:955
 #, 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.c:956
+#: c-family/c-warn.c:967
 #, 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.c:972
+#: c-family/c-warn.c:983
 #, 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.c:979
+#: c-family/c-warn.c:990
 #, 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.c:984
+#: c-family/c-warn.c:995
 #, 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.c:996
+#: c-family/c-warn.c:1007
 #, 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.c:1012
+#: c-family/c-warn.c:1023
 #, 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.c:1019
+#: c-family/c-warn.c:1030
 #, 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.c:1024
+#: c-family/c-warn.c:1035
 #, 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.c:1036
+#: c-family/c-warn.c:1047
 #, 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.c:1052
+#: c-family/c-warn.c:1063
 #, 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.c:1059
+#: c-family/c-warn.c:1070
 #, 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.c:1064
+#: c-family/c-warn.c:1075
 #, 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.c:1076
+#: c-family/c-warn.c:1087
 #, 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.c:1105 c-family/c-warn.c:1112
+#: c-family/c-warn.c:1116 c-family/c-warn.c:1123
 #, gcc-internal-format
 msgid "%<_Atomic%>-qualified parameter type %qT of %q+D"
 msgstr ""
 
-#: c-family/c-warn.c:1122
+#: c-family/c-warn.c:1133
 #, gcc-internal-format
 msgid "first argument of %q+D should be %<int%>"
 msgstr ""
 
-#: c-family/c-warn.c:1131
+#: c-family/c-warn.c:1142
 #, gcc-internal-format
 msgid "second argument of %q+D should be %<char **%>"
 msgstr ""
 
-#: c-family/c-warn.c:1140
+#: c-family/c-warn.c:1151
 #, gcc-internal-format
 msgid "third argument of %q+D should probably be %<char **%>"
 msgstr ""
 
-#: c-family/c-warn.c:1151
+#: c-family/c-warn.c:1162
 #, gcc-internal-format
 msgid "%q+D takes only zero or two arguments"
 msgstr ""
 
-#: c-family/c-warn.c:1155
+#: c-family/c-warn.c:1166
 #, gcc-internal-format
 msgid "%q+D declared as variadic function"
 msgstr ""
 
-#: c-family/c-warn.c:1198
+#: c-family/c-warn.c:1209
 #, gcc-internal-format
 msgid "conversion to %qT from boolean expression"
 msgstr ""
 
-#: c-family/c-warn.c:1223 c-family/c-warn.c:1392
+#: c-family/c-warn.c:1234 c-family/c-warn.c:1403
 #, gcc-internal-format
 msgid "unsigned conversion from %qT to %qT changes value from %qE to %qE"
 msgstr ""
 
-#: c-family/c-warn.c:1228 c-family/c-warn.c:1400
+#: c-family/c-warn.c:1239 c-family/c-warn.c:1411
 #, gcc-internal-format
 msgid "unsigned conversion from %qT to %qT changes the value of %qE"
 msgstr ""
 
-#: c-family/c-warn.c:1236
+#: c-family/c-warn.c:1247
 #, gcc-internal-format
 msgid "signed conversion from %qT to %qT changes value from %qE to %qE"
 msgstr ""
 
-#: c-family/c-warn.c:1241
+#: c-family/c-warn.c:1252
 #, gcc-internal-format
 msgid "signed conversion from %qT to %qT changes the value of %qE"
 msgstr ""
 
-#: c-family/c-warn.c:1248 c-family/c-warn.c:1390
+#: c-family/c-warn.c:1259 c-family/c-warn.c:1401
 #, gcc-internal-format
 msgid "conversion from %qT to %qT changes value from %qE to %qE"
 msgstr ""
 
-#: c-family/c-warn.c:1252 c-family/c-warn.c:1398
+#: c-family/c-warn.c:1263 c-family/c-warn.c:1409
 #, gcc-internal-format
 msgid "conversion from %qT to %qT changes the value of %qE"
 msgstr ""
 
-#: c-family/c-warn.c:1335
+#: c-family/c-warn.c:1346
 #, gcc-internal-format
 msgid "conversion to %qT from %qT may change the sign of the result"
 msgstr ""
 
-#: c-family/c-warn.c:1340
+#: c-family/c-warn.c:1351
 #, gcc-internal-format
 msgid "conversion from %qT to %qT discards imaginary component"
 msgstr ""
 
-#: c-family/c-warn.c:1344
+#: c-family/c-warn.c:1355
 #, gcc-internal-format
 msgid "conversion from %qT to %qT may change value"
 msgstr ""
 
-#: c-family/c-warn.c:1411 c-family/c-warn.c:1428 c-family/c-warn.c:1445
+#: c-family/c-warn.c:1422 c-family/c-warn.c:1439 c-family/c-warn.c:1456
 #, gcc-internal-format
 msgid "overflow in conversion from %qT to %qT changes value from %qE to %qE"
 msgstr ""
 
-#: c-family/c-warn.c:1416 c-family/c-warn.c:1433 c-family/c-warn.c:1450
+#: c-family/c-warn.c:1427 c-family/c-warn.c:1444 c-family/c-warn.c:1461
 #, gcc-internal-format
 msgid "overflow in conversion from %qT to %qT changes the value of %qE"
 msgstr ""
 
-#: c-family/c-warn.c:1480
+#: c-family/c-warn.c:1491
 #, gcc-internal-format
 msgid "case value %qs not in enumerated type"
 msgstr ""
 
-#: c-family/c-warn.c:1485
+#: c-family/c-warn.c:1496
 #, gcc-internal-format
 msgid "case value %qs not in enumerated type %qT"
 msgstr ""
 
-#: c-family/c-warn.c:1565
+#: c-family/c-warn.c:1576
 #, gcc-internal-format
 msgid "lower value in case label range less than minimum value for type"
 msgstr ""
 
-#: c-family/c-warn.c:1579
+#: c-family/c-warn.c:1590
 #, gcc-internal-format
 msgid "case label value is less than minimum value for type"
 msgstr ""
 
-#: c-family/c-warn.c:1596
+#: c-family/c-warn.c:1607
 #, gcc-internal-format
 msgid "upper value in case label range exceeds maximum value for type"
 msgstr ""
 
-#: c-family/c-warn.c:1609
+#: c-family/c-warn.c:1620
 #, gcc-internal-format
 msgid "case label value exceeds maximum value for type"
 msgstr ""
 
-#: c-family/c-warn.c:1622
+#: c-family/c-warn.c:1633
 #, gcc-internal-format
 msgid "switch missing default case"
 msgstr ""
 
-#: c-family/c-warn.c:1667
+#: c-family/c-warn.c:1678
 #, gcc-internal-format
 msgid "switch condition has boolean value"
 msgstr ""
 
-#: c-family/c-warn.c:1749
+#: c-family/c-warn.c:1760
 #, gcc-internal-format
 msgid "enumeration value %qE not handled in switch"
 msgstr ""
 
-#: c-family/c-warn.c:1777
+#: c-family/c-warn.c:1788
 #, gcc-internal-format
 msgid ""
 "the omitted middle operand in %<?:%> will always be %<true%>, suggest "
 "explicit middle operand"
 msgstr ""
 
-#: c-family/c-warn.c:1799
+#: c-family/c-warn.c:1810
 #, gcc-internal-format
 msgid "assignment of member %qD in read-only object"
 msgstr ""
 
-#: c-family/c-warn.c:1801
+#: c-family/c-warn.c:1812
 #, gcc-internal-format
 msgid "increment of member %qD in read-only object"
 msgstr ""
 
-#: c-family/c-warn.c:1803
+#: c-family/c-warn.c:1814
 #, gcc-internal-format
 msgid "decrement of member %qD in read-only object"
 msgstr ""
 
-#: c-family/c-warn.c:1805
+#: c-family/c-warn.c:1816
 #, gcc-internal-format
 msgid "member %qD in read-only object used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.c:1809
+#: c-family/c-warn.c:1820
 #, gcc-internal-format
 msgid "assignment of read-only member %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1810
+#: c-family/c-warn.c:1821
 #, gcc-internal-format
 msgid "increment of read-only member %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1811
+#: c-family/c-warn.c:1822
 #, gcc-internal-format
 msgid "decrement of read-only member %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1812
+#: c-family/c-warn.c:1823
 #, gcc-internal-format
 msgid "read-only member %qD used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.c:1816
+#: c-family/c-warn.c:1827
 #, gcc-internal-format
 msgid "assignment of read-only variable %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1817
+#: c-family/c-warn.c:1828
 #, gcc-internal-format
 msgid "increment of read-only variable %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1818
+#: c-family/c-warn.c:1829
 #, gcc-internal-format
 msgid "decrement of read-only variable %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1819
+#: c-family/c-warn.c:1830
 #, gcc-internal-format
 msgid "read-only variable %qD used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.c:1822
+#: c-family/c-warn.c:1833
 #, gcc-internal-format
 msgid "assignment of read-only parameter %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1823
+#: c-family/c-warn.c:1834
 #, gcc-internal-format
 msgid "increment of read-only parameter %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1824
+#: c-family/c-warn.c:1835
 #, gcc-internal-format
 msgid "decrement of read-only parameter %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1825
+#: c-family/c-warn.c:1836
 #, gcc-internal-format
 msgid "read-only parameter %qD use as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.c:1830
+#: c-family/c-warn.c:1841
 #, gcc-internal-format
 msgid "assignment of read-only named return value %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1832
+#: c-family/c-warn.c:1843
 #, gcc-internal-format
 msgid "increment of read-only named return value %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1834
+#: c-family/c-warn.c:1845
 #, gcc-internal-format
 msgid "decrement of read-only named return value %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1836
+#: c-family/c-warn.c:1847
 #, gcc-internal-format
 msgid "read-only named return value %qD used as %<asm%>output"
 msgstr ""
 
-#: c-family/c-warn.c:1841
+#: c-family/c-warn.c:1852
 #, gcc-internal-format
 msgid "assignment of function %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1842
+#: c-family/c-warn.c:1853
 #, gcc-internal-format
 msgid "increment of function %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1843
+#: c-family/c-warn.c:1854
 #, gcc-internal-format
 msgid "decrement of function %qD"
 msgstr ""
 
-#: c-family/c-warn.c:1844
+#: c-family/c-warn.c:1855
 #, gcc-internal-format
 msgid "function %qD used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.c:1847 c/c-typeck.c:4917
+#: c-family/c-warn.c:1858 c/c-typeck.c:4924
 #, gcc-internal-format
 msgid "assignment of read-only location %qE"
 msgstr ""
 
-#: c-family/c-warn.c:1848 c/c-typeck.c:4920
+#: c-family/c-warn.c:1859 c/c-typeck.c:4927
 #, gcc-internal-format
 msgid "increment of read-only location %qE"
 msgstr ""
 
-#: c-family/c-warn.c:1849 c/c-typeck.c:4923
+#: c-family/c-warn.c:1860 c/c-typeck.c:4930
 #, gcc-internal-format
 msgid "decrement of read-only location %qE"
 msgstr ""
 
-#: c-family/c-warn.c:1850
+#: c-family/c-warn.c:1861
 #, gcc-internal-format
 msgid "read-only location %qE used as %<asm%> output"
 msgstr ""
 
-#: c-family/c-warn.c:1864
+#: c-family/c-warn.c:1875
 #, gcc-internal-format
 msgid "lvalue required as left operand of assignment"
 msgstr ""
 
-#: c-family/c-warn.c:1867
+#: c-family/c-warn.c:1878
 #, gcc-internal-format
 msgid "lvalue required as increment operand"
 msgstr ""
 
-#: c-family/c-warn.c:1870
+#: c-family/c-warn.c:1881
 #, gcc-internal-format
 msgid "lvalue required as decrement operand"
 msgstr ""
 
-#: c-family/c-warn.c:1873
+#: c-family/c-warn.c:1884
 #, gcc-internal-format
 msgid "lvalue required as unary %<&%> operand"
 msgstr ""
 
-#: c-family/c-warn.c:1876
+#: c-family/c-warn.c:1887
 #, gcc-internal-format
 msgid "lvalue required in %<asm%> statement"
 msgstr ""
 
-#: c-family/c-warn.c:1893
+#: c-family/c-warn.c:1904
 #, gcc-internal-format
 msgid "invalid type argument (have %qT)"
 msgstr ""
 
-#: c-family/c-warn.c:1897
+#: c-family/c-warn.c:1908
 #, gcc-internal-format
 msgid "invalid type argument of array indexing (have %qT)"
 msgstr ""
 
-#: c-family/c-warn.c:1902
+#: c-family/c-warn.c:1913
 #, gcc-internal-format
 msgid "invalid type argument of unary %<*%> (have %qT)"
 msgstr ""
 
-#: c-family/c-warn.c:1907
+#: c-family/c-warn.c:1918
 #, gcc-internal-format
 msgid "invalid type argument of %<->%> (have %qT)"
 msgstr ""
 
-#: c-family/c-warn.c:1912
+#: c-family/c-warn.c:1923
 #, gcc-internal-format
 msgid "invalid type argument of %<->*%> (have %qT)"
 msgstr ""
 
-#: c-family/c-warn.c:1917
+#: c-family/c-warn.c:1928
 #, gcc-internal-format
 msgid "invalid type argument of implicit conversion (have %qT)"
 msgstr ""
 
-#: c-family/c-warn.c:1944
+#: c-family/c-warn.c:1955
 #, gcc-internal-format
 msgid "array subscript has type %<char%>"
 msgstr ""
 
-#: c-family/c-warn.c:1980 c-family/c-warn.c:1983
+#: c-family/c-warn.c:1991 c-family/c-warn.c:1994
 #, gcc-internal-format
 msgid "suggest parentheses around %<+%> inside %<<<%>"
 msgstr ""
 
-#: c-family/c-warn.c:1986 c-family/c-warn.c:1989
+#: c-family/c-warn.c:1997 c-family/c-warn.c:2000
 #, gcc-internal-format
 msgid "suggest parentheses around %<-%> inside %<<<%>"
 msgstr ""
 
-#: c-family/c-warn.c:1995 c-family/c-warn.c:1998
+#: c-family/c-warn.c:2006 c-family/c-warn.c:2009
 #, gcc-internal-format
 msgid "suggest parentheses around %<+%> inside %<>>%>"
 msgstr ""
 
-#: c-family/c-warn.c:2001 c-family/c-warn.c:2004
+#: c-family/c-warn.c:2012 c-family/c-warn.c:2015
 #, gcc-internal-format
 msgid "suggest parentheses around %<-%> inside %<>>%>"
 msgstr ""
 
-#: c-family/c-warn.c:2010 c-family/c-warn.c:2013
+#: c-family/c-warn.c:2021 c-family/c-warn.c:2024
 #, gcc-internal-format
 msgid "suggest parentheses around %<&&%> within %<||%>"
 msgstr ""
 
-#: c-family/c-warn.c:2020 c-family/c-warn.c:2024
+#: c-family/c-warn.c:2031 c-family/c-warn.c:2035
 #, gcc-internal-format
 msgid "suggest parentheses around arithmetic in operand of %<|%>"
 msgstr ""
 
-#: c-family/c-warn.c:2028 c-family/c-warn.c:2031
+#: c-family/c-warn.c:2039 c-family/c-warn.c:2042
 #, gcc-internal-format
 msgid "suggest parentheses around comparison in operand of %<|%>"
 msgstr ""
 
-#: c-family/c-warn.c:2036
+#: c-family/c-warn.c:2047
 #, gcc-internal-format
 msgid ""
 "suggest parentheses around operand of %<!%> or change %<|%> to %<||%> or %<!"
 "%> to %<~%>"
 msgstr ""
 
-#: c-family/c-warn.c:2044 c-family/c-warn.c:2048
+#: c-family/c-warn.c:2055 c-family/c-warn.c:2059
 #, gcc-internal-format
 msgid "suggest parentheses around arithmetic in operand of %<^%>"
 msgstr ""
 
-#: c-family/c-warn.c:2052 c-family/c-warn.c:2055
+#: c-family/c-warn.c:2063 c-family/c-warn.c:2066
 #, gcc-internal-format
 msgid "suggest parentheses around comparison in operand of %<^%>"
 msgstr ""
 
-#: c-family/c-warn.c:2061 c-family/c-warn.c:2064
+#: c-family/c-warn.c:2072 c-family/c-warn.c:2075
 #, gcc-internal-format
 msgid "suggest parentheses around %<+%> in operand of %<&%>"
 msgstr ""
 
-#: c-family/c-warn.c:2067 c-family/c-warn.c:2070
+#: c-family/c-warn.c:2078 c-family/c-warn.c:2081
 #, gcc-internal-format
 msgid "suggest parentheses around %<-%> in operand of %<&%>"
 msgstr ""
 
-#: c-family/c-warn.c:2074 c-family/c-warn.c:2077
+#: c-family/c-warn.c:2085 c-family/c-warn.c:2088
 #, gcc-internal-format
 msgid "suggest parentheses around comparison in operand of %<&%>"
 msgstr ""
 
-#: c-family/c-warn.c:2082
+#: c-family/c-warn.c:2093
 #, gcc-internal-format
 msgid ""
 "suggest parentheses around operand of %<!%> or change %<&%> to %<&&%> or %<!"
 "%> to %<~%>"
 msgstr ""
 
-#: c-family/c-warn.c:2089 c-family/c-warn.c:2092
+#: c-family/c-warn.c:2100 c-family/c-warn.c:2103
 #, gcc-internal-format
 msgid "suggest parentheses around comparison in operand of %<==%>"
 msgstr ""
 
-#: c-family/c-warn.c:2097 c-family/c-warn.c:2100
+#: c-family/c-warn.c:2108 c-family/c-warn.c:2111
 #, gcc-internal-format
 msgid "suggest parentheses around comparison in operand of %<!=%>"
 msgstr ""
 
-#: c-family/c-warn.c:2110 c-family/c-warn.c:2116
+#: c-family/c-warn.c:2121 c-family/c-warn.c:2127
 #, gcc-internal-format
 msgid "comparisons like %<X<=Y<=Z%> do not have their mathematical meaning"
 msgstr ""
 
-#: c-family/c-warn.c:2132
+#: c-family/c-warn.c:2143
 #, gcc-internal-format
 msgid "label %q+D defined but not used"
 msgstr ""
 
-#: c-family/c-warn.c:2134
+#: c-family/c-warn.c:2145
 #, gcc-internal-format
 msgid "label %q+D declared but not defined"
 msgstr ""
 
-#: c-family/c-warn.c:2157
+#: c-family/c-warn.c:2168
 #, gcc-internal-format
 msgid "division by zero"
 msgstr ""
 
-#: c-family/c-warn.c:2177
+#: c-family/c-warn.c:2188
 #, gcc-internal-format
 msgid ""
 "%<memset%> used with constant zero length parameter; this could be due to "
 "transposed parameters"
 msgstr ""
 
-#: c-family/c-warn.c:2201
+#: c-family/c-warn.c:2212
 #, gcc-internal-format
 msgid ""
 "%<memset%> used with length equal to number of elements without "
 "multiplication by element size"
 msgstr ""
 
-#: c-family/c-warn.c:2240 c/c-typeck.c:12039 c/c-typeck.c:12207
-#: cp/typeck.c:5295
+#: c-family/c-warn.c:2251 c/c-typeck.c:12059 c/c-typeck.c:12227
+#: cp/typeck.c:5425
 #, gcc-internal-format
 msgid "comparison between types %qT and %qT"
 msgstr ""
 
-#: c-family/c-warn.c:2293
+#: c-family/c-warn.c:2304
 #, gcc-internal-format
 msgid "comparison of integer expressions of different signedness: %qT and %qT"
 msgstr ""
 
-#: c-family/c-warn.c:2346
+#: c-family/c-warn.c:2357
 #, gcc-internal-format
 msgid "promoted bitwise complement of an unsigned value is always nonzero"
 msgstr ""
 
-#: c-family/c-warn.c:2350
+#: c-family/c-warn.c:2361
 #, gcc-internal-format
 msgid ""
 "comparison of promoted bitwise complement of an unsigned value with constant"
 msgstr ""
 
-#: c-family/c-warn.c:2361
+#: c-family/c-warn.c:2372
 #, gcc-internal-format
 msgid ""
 "comparison of promoted bitwise complement of an unsigned value with unsigned"
 msgstr ""
 
-#: c-family/c-warn.c:2416
+#: c-family/c-warn.c:2427
 #, gcc-internal-format
 msgid "unused parameter %qD"
 msgstr ""
 
-#: c-family/c-warn.c:2478
+#: c-family/c-warn.c:2489
 #, gcc-internal-format
 msgid "typedef %qD locally defined but not used"
 msgstr ""
 
-#: c-family/c-warn.c:2514
+#: c-family/c-warn.c:2525
 #, gcc-internal-format
 msgid "duplicated %<if%> condition"
 msgstr ""
 
-#: c-family/c-warn.c:2543
+#: c-family/c-warn.c:2554
 #, gcc-internal-format
 msgid ""
 "optimization attribute on %qD follows definition but the attribute doesn%'t "
 "match"
 msgstr ""
 
-#: c-family/c-warn.c:2551
+#: c-family/c-warn.c:2562
 #, gcc-internal-format
 msgid ""
 "inline declaration of %qD follows declaration with attribute %<noinline%>"
 msgstr ""
 
-#: c-family/c-warn.c:2556
+#: c-family/c-warn.c:2567
 #, gcc-internal-format
 msgid ""
 "declaration of %q+D with attribute %<noinline%> follows inline declaration"
 msgstr ""
 
-#: c-family/c-warn.c:2605
+#: c-family/c-warn.c:2616
 #, gcc-internal-format
 msgid "result of %qE requires %u bits to represent, but %qT only has %u bits"
 msgstr ""
 
-#: c-family/c-warn.c:2643 c-family/c-warn.c:2667
+#: c-family/c-warn.c:2654 c-family/c-warn.c:2678
 #, gcc-internal-format
 msgid "comparison of constant %qE with boolean expression is always false"
 msgstr ""
 
-#: c-family/c-warn.c:2646 c-family/c-warn.c:2664
+#: c-family/c-warn.c:2657 c-family/c-warn.c:2675
 #, gcc-internal-format
 msgid "comparison of constant %qE with boolean expression is always true"
 msgstr ""
 
-#: c-family/c-warn.c:2714
+#: c-family/c-warn.c:2725
 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.c:2779 c/c-typeck.c:5488 cp/call.c:5715
+#: c-family/c-warn.c:2790 c/c-typeck.c:5495 cp/call.c:5796
 #, gcc-internal-format
 msgid "this condition has identical branches"
 msgstr ""
 
-#: c-family/c-warn.c:2886
+#: c-family/c-warn.c:2897
 #, gcc-internal-format
 msgid "macro expands to multiple statements"
 msgstr ""
 
-#: c-family/c-warn.c:2887
+#: c-family/c-warn.c:2898
 #, gcc-internal-format
 msgid "some parts of macro expansion are not guarded by this %qs clause"
 msgstr ""
 
-#: c-family/c-warn.c:2980
+#: c-family/c-warn.c:2991
 #, 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.c:2987 c-family/c-warn.c:2990 cp/init.c:635
+#: c-family/c-warn.c:2998 c-family/c-warn.c:3001 cp/init.c:633
 #, gcc-internal-format
 msgid "defined here"
 msgstr ""
 
-#: c-family/c-warn.c:3077
+#: c-family/c-warn.c:3088
 #, gcc-internal-format
 msgid ""
 "taking address of packed member of %qT may result in an unaligned pointer "
 "value"
 msgstr ""
 
+#: c-family/c-warn.c:3315
+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.c:3318 c-family/c-warn.c:3676
+#, gcc-internal-format, gfc-internal-format
+msgid "previously declared as %s"
+msgstr ""
+
+#: c-family/c-warn.c:3439
+#, gcc-internal-format, gfc-internal-format
+msgid "argument %u of type %s declared as a variable length array"
+msgstr ""
+
+#: c-family/c-warn.c:3444
+#, gcc-internal-format, gfc-internal-format
+msgid "previously declared as a pointer %s"
+msgstr ""
+
+#: c-family/c-warn.c:3445
+#, gcc-internal-format, gfc-internal-format
+msgid "previously declared as an ordinary array %s"
+msgstr ""
+
+#: c-family/c-warn.c:3458 c-family/c-warn.c:3472
+#, gcc-internal-format, gfc-internal-format
+msgid "argument %u of type %s declared as a pointer"
+msgstr ""
+
+#: c-family/c-warn.c:3462 c-family/c-warn.c:3488
+#, gcc-internal-format, gfc-internal-format
+msgid "previously declared as a variable length array %s"
+msgstr ""
+
+#: c-family/c-warn.c:3475
+#, gcc-internal-format, gfc-internal-format
+msgid "previously declared as an array %s"
+msgstr ""
+
+#: c-family/c-warn.c:3484
+#, gcc-internal-format, gfc-internal-format
+msgid "argument %u of type %s declared as an ordinary array"
+msgstr ""
+
+#: c-family/c-warn.c:3512
+#, 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.c:3519
+#, 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.c:3543
+#, gcc-internal-format, gfc-internal-format
+msgid "argument %u of type %s declared with %u unspecified variable bound"
+msgid_plural ""
+"argument %u of type %s declared with %u unspecified variable bounds"
+msgstr[0] ""
+msgstr[1] ""
+
+#: c-family/c-warn.c:3551
+#, 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.c:3558
+#, 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.c:3612
+#, gcc-internal-format
+msgid "argument %u of type %s declared with mismatched bound argument %E"
+msgstr ""
+
+#: c-family/c-warn.c:3619 c-family/c-warn.c:3652
+#, gcc-internal-format
+msgid "argument %u of type %s declared with mismatched bound %<%s%>"
+msgstr ""
+
+#: c-family/c-warn.c:3631
+#, gcc-internal-format
+msgid "previously declared as %s with bound argument %E"
+msgstr ""
+
+#: c-family/c-warn.c:3636
+#, gcc-internal-format
+msgid "previously declared as %s with bound %<%s%>"
+msgstr ""
+
+#: c-family/c-warn.c:3655
+#, gcc-internal-format
+msgid "previously declared as %s with bound %qs"
+msgstr ""
+
+#: c-family/c-warn.c:3674
+#, gcc-internal-format, gfc-internal-format
+msgid "argument %u of type %s with mismatched bound"
+msgstr ""
+
+#: c-family/c-warn.c:3705
+#, 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.c:3715
+#, gcc-internal-format
+msgid "add parentheses around %qE to silence this warning"
+msgstr ""
+
+#: c-family/c-warn.c:3719
+#, gcc-internal-format
+msgid "add parentheses around the second %<sizeof%> to silence this warning"
+msgstr ""
+
 #: c-family/cppspec.c:94
 #, gcc-internal-format
 msgid "%qs is not a valid option to the preprocessor"
@@ -34179,7 +35279,7 @@ msgstr ""
 msgid "too many input files"
 msgstr ""
 
-#: common/config/aarch64/aarch64-common.c:516 config/aarch64/aarch64.c:14529
+#: common/config/aarch64/aarch64-common.c:519 config/aarch64/aarch64.c:14773
 #, gcc-internal-format
 msgid "unknown value %qs for %<-mcpu%>"
 msgstr ""
@@ -34210,14 +35310,14 @@ msgid "unrecognized option passed to %%:target_mode_check"
 msgstr ""
 
 #: common/config/arm/arm-common.c:331 common/config/arm/arm-common.c:395
-#: common/config/arm/arm-common.c:442 config/aarch64/aarch64.c:14461
-#: config/aarch64/aarch64.c:14499
+#: common/config/arm/arm-common.c:442 config/aarch64/aarch64.c:14705
+#: config/aarch64/aarch64.c:14743
 #, gcc-internal-format
 msgid "valid arguments are: %s; did you mean %qs?"
 msgstr ""
 
 #: common/config/arm/arm-common.c:334 common/config/arm/arm-common.c:398
-#: common/config/arm/arm-common.c:445 config/aarch64/aarch64.c:14464
+#: common/config/arm/arm-common.c:445 config/aarch64/aarch64.c:14708
 #, gcc-internal-format, gfc-internal-format
 msgid "valid arguments are: %s"
 msgstr ""
@@ -34312,47 +35412,47 @@ msgstr ""
 msgid "%<-mcpu=%s%> has invalid silicon revision"
 msgstr ""
 
-#: common/config/i386/i386-common.c:1428
+#: common/config/i386/i386-common.c:1577
 #, gcc-internal-format
 msgid "%<-malign-loops%> is obsolete, use %<-falign-loops%>"
 msgstr ""
 
-#: common/config/i386/i386-common.c:1431
+#: common/config/i386/i386-common.c:1580
 #, gcc-internal-format
 msgid "%<-malign-loops=%d%> is not between 0 and %d"
 msgstr ""
 
-#: common/config/i386/i386-common.c:1438
+#: common/config/i386/i386-common.c:1587
 #, gcc-internal-format
 msgid "%<-malign-jumps%> is obsolete, use %<-falign-jumps%>"
 msgstr ""
 
-#: common/config/i386/i386-common.c:1441
+#: common/config/i386/i386-common.c:1590
 #, gcc-internal-format
 msgid "%<-malign-jumps=%d%> is not between 0 and %d"
 msgstr ""
 
-#: common/config/i386/i386-common.c:1449
+#: common/config/i386/i386-common.c:1598
 #, gcc-internal-format
 msgid "%<-malign-functions%> is obsolete, use %<-falign-functions%>"
 msgstr ""
 
-#: common/config/i386/i386-common.c:1452
+#: common/config/i386/i386-common.c:1601
 #, gcc-internal-format
 msgid "%<-malign-functions=%d%> is not between 0 and %d"
 msgstr ""
 
-#: common/config/i386/i386-common.c:1461
+#: common/config/i386/i386-common.c:1610
 #, gcc-internal-format
 msgid "%<-mbranch-cost=%d%> is not between 0 and 5"
 msgstr ""
 
-#: common/config/i386/i386-common.c:1515
+#: common/config/i386/i386-common.c:1664
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> currently only supported on GNU/Linux"
 msgstr ""
 
-#: common/config/i386/i386-common.c:1521
+#: common/config/i386/i386-common.c:1670
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> requires assembler support for CFI directives"
 msgstr ""
@@ -34362,11 +35462,6 @@ msgstr ""
 msgid "bad value %<%s%> for %<-mtls-size=%> switch"
 msgstr ""
 
-#: common/config/msp430/msp430-common.c:57
-#, gcc-internal-format
-msgid "unrecognized argument of %<-mcpu%>: %s"
-msgstr ""
-
 #: common/config/nds32/nds32-common.c:49
 #, gcc-internal-format
 msgid "%<-misr-vector-size=%d%> argument must be 4 or 16"
@@ -34384,47 +35479,69 @@ msgid ""
 "64, 128, 256, or 512"
 msgstr ""
 
-#: common/config/riscv/riscv-common.c:286
+#: common/config/riscv/riscv-common.c:290
+#, gcc-internal-format
+msgid "%<-march=%s%>: Extension `%s' appear more than one time."
+msgstr ""
+
+#: common/config/riscv/riscv-common.c:535
 #, gcc-internal-format
 msgid "%<-march=%s%>: Expect number after %<%dp%>."
 msgstr ""
 
-#: common/config/riscv/riscv-common.c:366
+#: common/config/riscv/riscv-common.c:605
 #, gcc-internal-format
 msgid "%<-march=%s%>: rv%de is not a valid base ISA"
 msgstr ""
 
-#: common/config/riscv/riscv-common.c:389
+#: common/config/riscv/riscv-common.c:617
+#, gcc-internal-format
+msgid ""
+"version of `g` will be omitted, please specify version for individual "
+"extension."
+msgstr ""
+
+#: common/config/riscv/riscv-common.c:636
 #, gcc-internal-format
 msgid "%<-march=%s%>: first ISA subset must be %<e%>, %<i%> or %<g%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.c:416
+#: common/config/riscv/riscv-common.c:663
 #, gcc-internal-format
 msgid "%<-march=%s%>: unsupported ISA subset %<%c%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.c:420
+#: common/config/riscv/riscv-common.c:667
 #, gcc-internal-format
 msgid "%<-march=%s%>: ISA string is not in canonical order. %<%c%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.c:525
+#: common/config/riscv/riscv-common.c:773
+#, gcc-internal-format
+msgid "%<-march=%s%>: name of %s must be more than 1 letter"
+msgstr ""
+
+#: common/config/riscv/riscv-common.c:785
 #, gcc-internal-format
 msgid "%<-march=%s%>: %s must separate with _"
 msgstr ""
 
-#: common/config/riscv/riscv-common.c:553
+#: common/config/riscv/riscv-common.c:814
 #, gcc-internal-format
 msgid "%<-march=%s%>: ISA string must begin with rv32 or rv64"
 msgstr ""
 
-#: common/config/riscv/riscv-common.c:590
+#: common/config/riscv/riscv-common.c:851
 #, gcc-internal-format
 msgid "%<-march=%s%>: unexpected ISA string at end: %qs"
 msgstr ""
 
-#: common/config/rs6000/rs6000-common.c:184 config/sparc/sparc.c:1736
+#: common/config/riscv/riscv-common.c:979
+#, gcc-internal-format
+msgid "%<-mcpu=%s%>: unknown CPU"
+msgstr ""
+
+#: common/config/rs6000/rs6000-common.c:184 config/sparc/sparc.c:1740
 #, gcc-internal-format
 msgid "unknown %<-mdebug-%s%> switch"
 msgstr ""
@@ -34466,210 +35583,210 @@ msgstr ""
 msgid "value passed in %qs is too large"
 msgstr ""
 
-#: config/darwin-c.c:82
+#: config/darwin-c.c:81
 #, gcc-internal-format
 msgid "too many %<#pragma options align=reset%>"
 msgstr ""
 
-#: config/darwin-c.c:102 config/darwin-c.c:105 config/darwin-c.c:107
-#: config/darwin-c.c:109
+#: config/darwin-c.c:101 config/darwin-c.c:104 config/darwin-c.c:106
+#: config/darwin-c.c:108
 #, gcc-internal-format
 msgid "malformed %<#pragma options%>, ignoring"
 msgstr ""
 
-#: config/darwin-c.c:112
+#: config/darwin-c.c:111
 #, gcc-internal-format
 msgid "junk at end of %<#pragma options%>"
 msgstr ""
 
-#: config/darwin-c.c:122
+#: config/darwin-c.c:121
 #, gcc-internal-format
 msgid "malformed %<#pragma options align={mac68k|power|reset}%>, ignoring"
 msgstr ""
 
-#: config/darwin-c.c:134
+#: config/darwin-c.c:133
 #, gcc-internal-format
 msgid "missing %<(%> after %<#pragma unused%>, ignoring"
 msgstr ""
 
-#: config/darwin-c.c:155
+#: config/darwin-c.c:154
 #, gcc-internal-format
 msgid "missing %<)%> after %<#pragma unused%>, ignoring"
 msgstr ""
 
-#: config/darwin-c.c:158
+#: config/darwin-c.c:157
 #, gcc-internal-format
 msgid "junk at end of %<#pragma unused%>"
 msgstr ""
 
-#: config/darwin-c.c:169
+#: config/darwin-c.c:168
 #, gcc-internal-format
 msgid "malformed %<#pragma ms_struct%>, ignoring"
 msgstr ""
 
-#: config/darwin-c.c:177
+#: config/darwin-c.c:176
 #, gcc-internal-format
 msgid "malformed %<#pragma ms_struct {on|off|reset}%>, ignoring"
 msgstr ""
 
-#: config/darwin-c.c:180
+#: config/darwin-c.c:179
 #, gcc-internal-format
 msgid "junk at end of %<#pragma ms_struct%>"
 msgstr ""
 
-#: config/darwin-c.c:406
+#: config/darwin-c.c:405
 #, gcc-internal-format, gfc-internal-format
 msgid "subframework include %s conflicts with framework include"
 msgstr ""
 
-#: config/darwin-c.c:709
+#: config/darwin-c.c:708
 #, gcc-internal-format
 msgid "unknown value %qs of %<-mmacosx-version-min%>"
 msgstr ""
 
-#: config/darwin-driver.c:133
+#: config/darwin-driver.c:146
 #, gcc-internal-format
 msgid "sysctl for kern.osversion failed: %m"
 msgstr ""
 
-#: config/darwin-driver.c:165
+#: config/darwin-driver.c:192
 #, gcc-internal-format
 msgid "couldn%'t understand kern.osversion %q.*s"
 msgstr ""
 
-#: config/darwin-driver.c:205
-#, gcc-internal-format
-msgid "couldn%'t understand version %s"
+#: config/darwin-driver.c:232
+#, gcc-internal-format, gfc-internal-format
+msgid "could not understand version %s"
 msgstr ""
 
-#: config/darwin-driver.c:281
+#: config/darwin-driver.c:308
 #, gcc-internal-format, gfc-internal-format
 msgid "this compiler does not support %s"
 msgstr ""
 
-#: config/darwin-driver.c:324
+#: config/darwin-driver.c:351
 #, gcc-internal-format
 msgid "%qs is not valid for %<-mmacosx-version-min%>"
 msgstr ""
 
-#: config/darwin-driver.c:358
+#: config/darwin-driver.c:385
 #, gcc-internal-format
 msgid "this compiler does not support PowerPC (arch flags ignored)"
 msgstr ""
 
-#: config/darwin-driver.c:362
+#: config/darwin-driver.c:389
 #, gcc-internal-format, gfc-internal-format
 msgid "%s conflicts with i386 (arch flags ignored)"
 msgstr ""
 
-#: config/darwin-driver.c:370
+#: config/darwin-driver.c:397
 #, gcc-internal-format, gfc-internal-format
 msgid "%s conflicts with x86_64 (arch flags ignored)"
 msgstr ""
 
-#: config/darwin-driver.c:377
+#: config/darwin-driver.c:404
 #, gcc-internal-format
 msgid "this compiler does not support X86 (arch flags ignored)"
 msgstr ""
 
-#: config/darwin-driver.c:381
+#: config/darwin-driver.c:408
 #, gcc-internal-format, gfc-internal-format
 msgid "%s conflicts with ppc (arch flags ignored)"
 msgstr ""
 
-#: config/darwin-driver.c:389
+#: config/darwin-driver.c:416
 #, gcc-internal-format, gfc-internal-format
 msgid "%s conflicts with ppc64 (arch flags ignored)"
 msgstr ""
 
-#: config/darwin.c:1942
+#: config/darwin.c:2011
 #, gcc-internal-format, gfc-internal-format
 msgid "failed to open temporary file %s for LTO output"
 msgstr ""
 
-#: config/darwin.c:2035
+#: config/darwin.c:2104
 #, gcc-internal-format
 msgid ""
 "%qE 2.95 vtable-compatibility attribute applies only when compiling a kext"
 msgstr ""
 
-#: config/darwin.c:2042
+#: config/darwin.c:2111
 #, gcc-internal-format
 msgid "%qE 2.95 vtable-compatibility attribute applies only to C++ classes"
 msgstr ""
 
-#: config/darwin.c:2772
+#: config/darwin.c:2838
 #, gcc-internal-format
 msgid ""
 "protected visibility attribute not supported in this configuration; ignored"
 msgstr ""
 
-#: config/darwin.c:2987
+#: config/darwin.c:3053
 #, gcc-internal-format, gfc-internal-format
 msgid "failed to open temporary file %s with LTO output"
 msgstr ""
 
-#: config/darwin.c:3173
+#: config/darwin.c:3257
 #, gcc-internal-format
 msgid ""
 "%<-fobjc-abi-version%> 2 must be used for 64 bit targets with %<-fnext-"
 "runtime%>"
 msgstr ""
 
-#: config/darwin.c:3178
+#: config/darwin.c:3262
 #, gcc-internal-format
 msgid ""
 "%<-fobjc-abi-version%> %d is not supported for 32 bit targets with %<-fnext-"
 "runtime%>"
 msgstr ""
 
-#: config/darwin.c:3193
+#: config/darwin.c:3277
 #, gcc-internal-format
 msgid "%<-gsplit-dwarf%> is not supported on this platform, ignored"
 msgstr ""
 
-#: config/darwin.c:3271
+#: config/darwin.c:3355
 #, gcc-internal-format
 msgid ""
 "%<-mdynamic-no-pic%> overrides %<-fpic%>, %<-fPIC%>, %<-fpie%> or %<-fPIE%>"
 msgstr ""
 
-#: config/darwin.c:3314
+#: config/darwin.c:3398
 #, gcc-internal-format
 msgid "%<-mpic-symbol-stubs%> is not required for 64-bit code (ignored)"
 msgstr ""
 
-#: config/darwin.c:3494
+#: config/darwin.c:3578
 #, gcc-internal-format
 msgid "built-in function %qD requires the %<-mconstant-cfstrings%> flag"
 msgstr ""
 
-#: config/darwin.c:3501
+#: config/darwin.c:3585
 #, gcc-internal-format
 msgid "built-in function %qD takes one argument only"
 msgstr ""
 
-#: config/darwin.c:3587
+#: config/darwin.c:3673
 #, gcc-internal-format
 msgid "CFString literal is missing"
 msgstr ""
 
-#: config/darwin.c:3598
+#: config/darwin.c:3684
 #, gcc-internal-format
 msgid "CFString literal expression is not a string constant"
 msgstr ""
 
-#: config/darwin.c:3622
+#: config/darwin.c:3708
 #, gcc-internal-format
 msgid "non-ASCII character in CFString literal"
 msgstr ""
 
-#: config/darwin.c:3623
+#: config/darwin.c:3709
 #, gcc-internal-format
 msgid "embedded NUL in CFString literal"
 msgstr ""
 
-#: config/host-darwin.c:61
+#: config/host-darwin.c:64
 #, gcc-internal-format
 msgid "couldn%'t unmap pch_address_space: %m"
 msgstr ""
@@ -34734,7 +35851,7 @@ msgstr ""
 msgid "ignoring %<#pragma align%> for explicitly aligned %q+D"
 msgstr ""
 
-#: config/vxworks.c:159
+#: config/vxworks.c:164
 #, gcc-internal-format
 msgid "PIC is only supported for RTPs"
 msgstr ""
@@ -34744,106 +35861,106 @@ msgstr ""
 #. coalesced sections.  Weak aliases (or any other kind of aliases) are
 #. not supported.  Weak symbols that aren't visible outside the .s file
 #. are not supported.
-#: config/darwin.h:545
+#: config/darwin.h:566
 #, gcc-internal-format
 msgid "alias definitions not supported in Mach-O; ignored"
 msgstr ""
 
 #. No profiling.
-#: config/vx-common.h:121
+#: config/vx-common.h:119
 #, gcc-internal-format
 msgid "profiler support for VxWorks"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.c:1490
-#: config/aarch64/aarch64-builtins.c:1720 config/arm/arm-builtins.c:3110
+#: config/aarch64/aarch64-builtins.c:1595
+#: config/aarch64/aarch64-builtins.c:1825 config/arm/arm-builtins.c:3113
 #, gcc-internal-format
 msgid "%Kargument %d must be a constant immediate"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.c:1561 config/arm/arm-builtins.c:3455
+#: config/aarch64/aarch64-builtins.c:1666 config/arm/arm-builtins.c:3458
 #, gcc-internal-format
 msgid "%Klane index must be a constant immediate"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.c:1564
+#: config/aarch64/aarch64-builtins.c:1669
 #, gcc-internal-format
 msgid "%Ktotal size and element size must be a non-zero constant immediate"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.c:1809
+#: config/aarch64/aarch64-builtins.c:1914
 #, gcc-internal-format
 msgid "%Kargument must be a 16-bit constant immediate"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.c:1864
+#: config/aarch64/aarch64-builtins.c:1969
 #, gcc-internal-format
 msgid "Memory Tagging Extension does not support %<-mabi=ilp32%>"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.c:1898
+#: config/aarch64/aarch64-builtins.c:2003
 #, gcc-internal-format
 msgid "%Kargument %d must be a constant immediate in range [0,15]"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.c:2459
-#: config/aarch64/aarch64-builtins.c:2479
+#: config/aarch64/aarch64-builtins.c:2567
+#: config/aarch64/aarch64-builtins.c:2587
 #, gcc-internal-format, gfc-internal-format
 msgid "expected 64-bit address but argument 1 is %d-bit"
 msgstr ""
 
-#: config/aarch64/aarch64-builtins.c:2463
+#: config/aarch64/aarch64-builtins.c:2571
 #, gcc-internal-format, gfc-internal-format
 msgid "expected 64-bit address but argument 2 is %d-bit"
 msgstr ""
 
-#: config/aarch64/aarch64-c.c:291
+#: config/aarch64/aarch64-c.c:292
 #, gcc-internal-format
 msgid "%<#pragma GCC aarch64%> requires a string parameter"
 msgstr ""
 
-#: config/aarch64/aarch64-c.c:299
+#: config/aarch64/aarch64-c.c:300
 #, gcc-internal-format
 msgid "unknown %<#pragma GCC aarch64%> option %qs"
 msgstr ""
 
-#: config/aarch64/aarch64.c:1410
+#: config/aarch64/aarch64.c:1633
 #, gcc-internal-format
 msgid "the %qE attribute cannot be applied to an SVE function type"
 msgstr ""
 
-#: config/aarch64/aarch64.c:1485 config/aarch64/aarch64.c:1499
+#: config/aarch64/aarch64.c:1708 config/aarch64/aarch64.c:1722
 #, gcc-internal-format
 msgid "unexpected %<%s%> after %<%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:1929
+#: config/aarch64/aarch64.c:2175
 #, gcc-internal-format
 msgid "%qs is incompatible with the use of floating-point types"
 msgstr ""
 
-#: config/aarch64/aarch64.c:1932
+#: config/aarch64/aarch64.c:2178
 #, gcc-internal-format
 msgid "%qs is incompatible with the use of vector types"
 msgstr ""
 
-#: config/aarch64/aarch64.c:1936
+#: config/aarch64/aarch64.c:2182
 #, gcc-internal-format
 msgid ""
 "%qs feature modifier is incompatible with the use of floating-point types"
 msgstr ""
 
-#: config/aarch64/aarch64.c:1939
+#: config/aarch64/aarch64.c:2185
 #, gcc-internal-format
 msgid "%qs feature modifier is incompatible with the use of vector types"
 msgstr ""
 
-#: config/aarch64/aarch64.c:1955
+#: config/aarch64/aarch64.c:2201
 #, gcc-internal-format
 msgid "this operation requires the SVE ISA extension"
 msgstr ""
 
-#: config/aarch64/aarch64.c:1956
+#: config/aarch64/aarch64.c:2202
 #, gcc-internal-format
 msgid ""
 "you can enable SVE using the command-line option %<-march%>, or by using the "
@@ -34852,336 +35969,337 @@ msgstr ""
 
 #. We can't gracefully recover at this point, so make this a
 #. fatal error.
-#: config/aarch64/aarch64.c:5426
+#: config/aarch64/aarch64.c:5701
 #, gcc-internal-format
 msgid "arguments of type %qT require the SVE ISA extension"
 msgstr ""
 
-#: config/aarch64/aarch64.c:5747
+#: config/aarch64/aarch64.c:6022
 #, gcc-internal-format
 msgid "SVE type %qT cannot be passed to an unprototyped function"
 msgstr ""
 
-#: config/aarch64/aarch64.c:5869 config/aarch64/aarch64.c:5932
-#: config/aarch64/aarch64.c:6052 config/aarch64/aarch64.c:16362
-#: config/arm/arm.c:7101 config/arm/arm.c:7131 config/arm/arm.c:28590
+#: config/aarch64/aarch64.c:6144 config/aarch64/aarch64.c:6207
+#: config/aarch64/aarch64.c:6326 config/aarch64/aarch64.c:16626
+#: config/arm/arm.c:7067 config/arm/arm.c:7097 config/arm/arm.c:28831
 #, gcc-internal-format
 msgid "parameter passing for argument of type %qT changed in GCC 9.1"
 msgstr ""
 
-#: config/aarch64/aarch64.c:6001
+#: config/aarch64/aarch64.c:6275
 #, gcc-internal-format
 msgid "%qE requires the SVE ISA extension"
 msgstr ""
 
-#: config/aarch64/aarch64.c:6004
+#: config/aarch64/aarch64.c:6278
 #, gcc-internal-format
 msgid "calls to functions of type %qT require the SVE ISA extension"
 msgstr ""
 
-#: config/aarch64/aarch64.c:6180
+#: config/aarch64/aarch64.c:6450
 #, gcc-internal-format
 msgid "stack probes for SVE frames"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14006
+#: config/aarch64/aarch64.c:14244
 #, gcc-internal-format
 msgid "unknown flag passed in %<-moverride=%s%> (%s)"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14050
+#: config/aarch64/aarch64.c:14288
 #, gcc-internal-format, gfc-internal-format
 msgid "%s string ill-formed\n"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14106
+#: config/aarch64/aarch64.c:14344
 #, gcc-internal-format
 msgid "invalid format for sve_width"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14118
+#: config/aarch64/aarch64.c:14356
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid sve_width value: %d"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14138
+#: config/aarch64/aarch64.c:14376
 #, gcc-internal-format, gfc-internal-format
 msgid "tuning string missing in option (%s)"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14156
+#: config/aarch64/aarch64.c:14394
 #, gcc-internal-format, gfc-internal-format
 msgid "unknown tuning option (%s)"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14309
+#: config/aarch64/aarch64.c:14547 config/riscv/riscv.c:4789
 #, gcc-internal-format
 msgid ""
 "incompatible options %<-mstack-protector-guard=global%> and %<-mstack-"
 "protector-guard-offset=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14318
+#: config/aarch64/aarch64.c:14556 config/riscv/riscv.c:4798
 #, 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.c:14326
+#: config/aarch64/aarch64.c:14564
 #, gcc-internal-format
 msgid "specify a system register with a small string length."
 msgstr ""
 
-#: config/aarch64/aarch64.c:14336 config/rs6000/rs6000.c:4385
+#: config/aarch64/aarch64.c:14574 config/riscv/riscv.c:4827
+#: config/rs6000/rs6000.c:4560
 #, gcc-internal-format
 msgid "%qs is not a valid offset in %qs"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14401
+#: config/aarch64/aarch64.c:14645
 #, 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.c:14417
+#: config/aarch64/aarch64.c:14661
 #, gcc-internal-format
 msgid "stack clash guard size %<%d%> must be equal to probing interval %<%d%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14502
+#: config/aarch64/aarch64.c:14746
 #, gcc-internal-format, gfc-internal-format
 msgid "valid arguments are: %s;"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14526
+#: config/aarch64/aarch64.c:14770
 #, gcc-internal-format
 msgid "missing cpu name in %<-mcpu=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14533
+#: config/aarch64/aarch64.c:14777
 #, gcc-internal-format
 msgid "invalid feature modifier %qs in %<-mcpu=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14592
+#: config/aarch64/aarch64.c:14836
 #, gcc-internal-format
 msgid "invalid argument given to %<-mharden-sls=%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14603
+#: config/aarch64/aarch64.c:14847
 #, gcc-internal-format
 msgid "%<%s%> must be by itself for %<-mharden-sls=%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14608
+#: config/aarch64/aarch64.c:14852
 #, gcc-internal-format
 msgid "invalid argument %<%s%> for %<-mharden-sls=%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14714
+#: config/aarch64/aarch64.c:14958
 #, gcc-internal-format
 msgid "invalid argument %<%s%> for %<-mbranch-protection=%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14716
+#: config/aarch64/aarch64.c:14960
 #, gcc-internal-format
 msgid "missing argument for %<-mbranch-protection=%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14740
+#: config/aarch64/aarch64.c:14984
 #, gcc-internal-format
 msgid "missing arch name in %<-march=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14743
+#: config/aarch64/aarch64.c:14987
 #, gcc-internal-format
 msgid "unknown value %qs for %<-march%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14747
+#: config/aarch64/aarch64.c:14991
 #, gcc-internal-format
 msgid "invalid feature modifier %qs in %<-march=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14775
+#: config/aarch64/aarch64.c:15019
 #, gcc-internal-format
 msgid "missing cpu name in %<-mtune=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14778
+#: config/aarch64/aarch64.c:15022
 #, gcc-internal-format
 msgid "unknown value %qs for %<-mtune%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14912 config/arm/arm.c:3255
+#: config/aarch64/aarch64.c:15156 config/arm/arm.c:3236
 #, gcc-internal-format
 msgid "switch %<-mcpu=%s%> conflicts with %<-march=%s%> switch"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14968
+#: config/aarch64/aarch64.c:15212
 #, gcc-internal-format
 msgid "assembler does not support %<-mabi=ilp32%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:14975
+#: config/aarch64/aarch64.c:15219
 #, gcc-internal-format
 msgid "return address signing is only supported for %<-mabi=lp64%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15047
+#: config/aarch64/aarch64.c:15301
 #, gcc-internal-format
 msgid "code model %qs with %<-f%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15050
+#: config/aarch64/aarch64.c:15304
 #, gcc-internal-format
 msgid "code model %qs not supported in ilp32 mode"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15221
+#: config/aarch64/aarch64.c:15479
 #, gcc-internal-format
 msgid "missing name in %<target(\"arch=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15224
+#: config/aarch64/aarch64.c:15482
 #, gcc-internal-format
 msgid "invalid name (\"%s\") in %<target(\"arch=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15228 config/aarch64/aarch64.c:15270
-#: config/aarch64/aarch64.c:15377
+#: config/aarch64/aarch64.c:15486 config/aarch64/aarch64.c:15528
+#: config/aarch64/aarch64.c:15635
 #, gcc-internal-format
 msgid ""
 "invalid feature modifier %s of value (\"%s\") in %<target()%> pragma or "
 "attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15263
+#: config/aarch64/aarch64.c:15521
 #, gcc-internal-format
 msgid "missing name in %<target(\"cpu=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15266
+#: config/aarch64/aarch64.c:15524
 #, gcc-internal-format
 msgid "invalid name (\"%s\") in %<target(\"cpu=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15293
+#: config/aarch64/aarch64.c:15551
 #, gcc-internal-format
 msgid ""
 "missing argument to %<target(\"branch-protection=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15297
+#: config/aarch64/aarch64.c:15555
 #, gcc-internal-format
 msgid ""
 "invalid protection type (\"%s\") in %<target(\"branch-protection=\")%> "
 "pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15332
+#: config/aarch64/aarch64.c:15590
 #, gcc-internal-format
 msgid "invalid name (\"%s\") in %<target(\"tune=\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15373
+#: config/aarch64/aarch64.c:15631
 #, gcc-internal-format
 msgid "missing value in %<target()%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15431 config/aarch64/aarch64.c:15604
+#: config/aarch64/aarch64.c:15689 config/aarch64/aarch64.c:15862
 #, gcc-internal-format
 msgid "malformed %<target()%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15475
+#: config/aarch64/aarch64.c:15733
 #, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s\")%> does not accept an argument"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15483
+#: config/aarch64/aarch64.c:15741 config/i386/i386-options.c:1201
 #, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s\")%> does not allow a negated form"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15537
+#: config/aarch64/aarch64.c:15795
 #, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s=%s\")%> is not valid"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15594 config/arm/arm.c:32422
-#: config/rs6000/rs6000.c:23457 config/s390/s390.c:15596
+#: config/aarch64/aarch64.c:15852 config/arm/arm.c:32843
+#: config/rs6000/rs6000.c:24059 config/s390/s390.c:15724
 #, gcc-internal-format
 msgid "attribute %<target%> argument not a string"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15621
+#: config/aarch64/aarch64.c:15879
 #, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s\")%> is not valid"
 msgstr ""
 
-#: config/aarch64/aarch64.c:15630
+#: config/aarch64/aarch64.c:15888
 #, gcc-internal-format
 msgid "malformed %<target(\"%s\")%> pragma or attribute"
 msgstr ""
 
-#: config/aarch64/aarch64.c:17050 config/arm/arm.c:6453
-#: config/rs6000/rs6000-call.c:5936 config/s390/s390.c:11977
-#: config/s390/s390.c:12054
+#: config/aarch64/aarch64.c:17314 config/arm/arm.c:6419
+#: config/rs6000/rs6000-call.c:6323 config/s390/s390.c:12110
+#: config/s390/s390.c:12187
 msgid ""
 "parameter passing for argument of type %qT with %<[[no_unique_address]]%> "
 "members changed %{in GCC 10.1%}"
 msgstr ""
 
-#: config/aarch64/aarch64.c:17055 config/arm/arm.c:6458
-#: config/rs6000/rs6000-call.c:5931 config/s390/s390.c:11972
-#: config/s390/s390.c:12049
+#: config/aarch64/aarch64.c:17319 config/arm/arm.c:6424
+#: config/rs6000/rs6000-call.c:6318 config/s390/s390.c:12105
+#: config/s390/s390.c:12182
 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.c:18129
+#: config/aarch64/aarch64.c:18452
 #, gcc-internal-format
 msgid "%Klane %wd out of range %wd - %wd"
 msgstr ""
 
-#: config/aarch64/aarch64.c:18131
+#: config/aarch64/aarch64.c:18454
 #, gcc-internal-format
 msgid "lane %wd out of range %wd - %wd"
 msgstr ""
 
-#: config/aarch64/aarch64.c:22872 config/i386/i386.c:22054
-#: config/i386/i386.c:22181
-#, gcc-internal-format, gfc-internal-format
-msgid "unsupported simdlen %d"
+#: config/aarch64/aarch64.c:23369 config/i386/i386.c:22509
+#: config/i386/i386.c:22637
+#, gcc-internal-format
+msgid "unsupported simdlen %wd"
 msgstr ""
 
-#: config/aarch64/aarch64.c:22882 config/aarch64/aarch64.c:22903
+#: config/aarch64/aarch64.c:23379 config/aarch64/aarch64.c:23400
 #, gcc-internal-format
 msgid "GCC does not currently support mixed size types for %<simd%> functions"
 msgstr ""
 
-#: config/aarch64/aarch64.c:22886
+#: config/aarch64/aarch64.c:23383
 #, gcc-internal-format
 msgid "GCC does not currently support return type %qT for %<simd%> functions"
 msgstr ""
 
-#: config/aarch64/aarch64.c:22890
+#: config/aarch64/aarch64.c:23387
 #, gcc-internal-format
 msgid "unsupported return type %qT for %<simd%> functions"
 msgstr ""
 
-#: config/aarch64/aarch64.c:22907
+#: config/aarch64/aarch64.c:23404
 #, gcc-internal-format
 msgid "GCC does not currently support argument type %qT for %<simd%> functions"
 msgstr ""
 
-#: config/aarch64/aarch64.c:22929
+#: config/aarch64/aarch64.c:23429
 #, gcc-internal-format
-msgid "GCC does not currently support simdlen %d for type %qT"
+msgid "GCC does not currently support simdlen %wd for type %qT"
 msgstr ""
 
 #: config/alpha/alpha.c:420
@@ -35240,7 +36358,7 @@ msgid "bad value %qs for %<-mmemory-latency%>"
 msgstr ""
 
 #: config/alpha/alpha.c:6651 config/alpha/alpha.c:6654 config/arc/arc.c:7073
-#: config/arc/arc.c:7347 config/s390/s390.c:839 config/tilegx/tilegx.c:3536
+#: config/arc/arc.c:7347 config/s390/s390.c:849 config/tilegx/tilegx.c:3536
 #: config/tilepro/tilepro.c:3100
 #, gcc-internal-format
 msgid "bad builtin fcode"
@@ -35362,18 +36480,18 @@ msgstr ""
 msgid "argument of %qE attribute is not \"ilink\" or \"firq\""
 msgstr ""
 
-#: config/arc/arc.c:2130 config/arm/arm.c:7242 config/arm/arm.c:7260
-#: config/arm/arm.c:7441 config/avr/avr.c:9695 config/avr/avr.c:9711
+#: config/arc/arc.c:2130 config/arm/arm.c:7208 config/arm/arm.c:7226
+#: config/arm/arm.c:7407 config/avr/avr.c:9695 config/avr/avr.c:9711
 #: config/bfin/bfin.c:4693 config/bfin/bfin.c:4754 config/bfin/bfin.c:4783
-#: config/csky/csky.c:6006 config/csky/csky.c:6034
+#: config/bpf/bpf.c:80 config/csky/csky.c:6068 config/csky/csky.c:6096
 #: config/epiphany/epiphany.c:491 config/gcn/gcn.c:317
-#: config/h8300/h8300.c:4857 config/i386/i386-options.c:3291
-#: config/i386/i386-options.c:3468 config/i386/i386-options.c:3524
-#: config/i386/i386-options.c:3575 config/i386/i386-options.c:3612
-#: config/m68k/m68k.c:792 config/mcore/mcore.c:3066 config/nvptx/nvptx.c:5053
-#: config/riscv/riscv.c:3009 config/rl78/rl78.c:820 config/rl78/rl78.c:889
-#: config/rs6000/rs6000.c:19529 config/rx/rx.c:2719 config/rx/rx.c:2745
-#: config/s390/s390.c:1054 config/s390/s390.c:1141 config/sh/sh.c:8428
+#: config/h8300/h8300.c:4894 config/i386/i386-options.c:3421
+#: config/i386/i386-options.c:3598 config/i386/i386-options.c:3654
+#: config/i386/i386-options.c:3705 config/i386/i386-options.c:3742
+#: config/m68k/m68k.c:792 config/mcore/mcore.c:3066 config/nvptx/nvptx.c:5160
+#: config/riscv/riscv.c:3014 config/rl78/rl78.c:820 config/rl78/rl78.c:889
+#: config/rs6000/rs6000.c:20108 config/rx/rx.c:2727 config/rx/rx.c:2753
+#: config/s390/s390.c:1064 config/s390/s390.c:1151 config/sh/sh.c:8428
 #: config/sh/sh.c:8446 config/sh/sh.c:8470 config/sh/sh.c:8541
 #: config/sh/sh.c:8564 config/stormy16/stormy16.c:2229 config/v850/v850.c:2010
 #: config/visium/visium.c:723
@@ -35468,68 +36586,74 @@ msgid ""
 "optimization levels"
 msgstr ""
 
-#: config/arc/arc.c:8442
+#: config/arc/arc.c:8436
 #, gcc-internal-format
 msgid "insn addresses not set after shorten_branches"
 msgstr ""
 
-#: config/arc/arc.c:8656
+#: config/arc/arc.c:8651
 #, gcc-internal-format
 msgid "insn addresses not freed"
 msgstr ""
 
-#: config/arc/arc.c:11135
+#: config/arc/arc.c:11093
 #, gcc-internal-format
 msgid "%qE attribute only valid for ARCv2 architecture"
 msgstr ""
 
-#: config/arc/arc.c:11143 config/arc/arc.c:11182
+#: config/arc/arc.c:11101 config/arc/arc.c:11140
 #, gcc-internal-format
 msgid "argument of %qE attribute is missing"
 msgstr ""
 
-#: config/arc/arc.c:11154 config/arc/arc.c:11193 config/arc/arc.c:11319
+#: config/arc/arc.c:11112 config/arc/arc.c:11151 config/arc/arc.c:11277
 #: config/avr/avr.c:9767
 #, gcc-internal-format
 msgid "%qE attribute allows only an integer constant argument"
 msgstr ""
 
-#: config/arc/arc.c:11174
+#: config/arc/arc.c:11132
 #, gcc-internal-format
 msgid "%qE attribute only valid for ARC EM architecture"
 msgstr ""
 
-#: config/arc/arc.c:11229
+#: config/arc/arc.c:11187
 #, gcc-internal-format
 msgid "%qE attribute only applies to types"
 msgstr ""
 
-#: config/arc/arc.c:11235
+#: config/arc/arc.c:11193
 #, gcc-internal-format
 msgid "argument of %qE attribute ignored"
 msgstr ""
 
-#: config/arm/aarch-common.c:549 config/i386/i386.c:20968
+#: config/arc/arc.c:11267 config/avr/avr.c:9754 config/bfin/bfin.c:4815
+#: config/i386/winnt.c:63 config/nvptx/nvptx.c:5183
+#, gcc-internal-format
+msgid "%qE attribute only applies to variables"
+msgstr ""
+
+#: config/arm/aarch-common.c:549 config/i386/i386.c:21444
 #, gcc-internal-format
 msgid "alternatives not allowed in %<asm%> flag output"
 msgstr ""
 
-#: config/arm/aarch-common.c:610 config/i386/i386.c:21032
+#: config/arm/aarch-common.c:610 config/i386/i386.c:21508
 #, gcc-internal-format
 msgid "unknown %<asm%> flag output %qs"
 msgstr ""
 
-#: config/arm/aarch-common.c:620 config/i386/i386.c:21061
+#: config/arm/aarch-common.c:620 config/i386/i386.c:21537
 #, gcc-internal-format
 msgid "invalid type for %<asm%> flag output"
 msgstr ""
 
-#: config/arm/arm-builtins.c:3092
+#: config/arm/arm-builtins.c:3095
 #, gcc-internal-format
 msgid "%Kcoprocessor %d is not enabled with +cdecp%d"
 msgstr ""
 
-#: config/arm/arm-builtins.c:3095
+#: config/arm/arm-builtins.c:3098
 #, gcc-internal-format
 msgid ""
 "%Kcoproc must be a constant immediate in range [0-%d] enabled with +cdecp<N>"
@@ -35538,44 +36662,44 @@ msgstr ""
 #. Here we mention the builtin name to follow the same
 #. format that the C/C++ frontends use for referencing
 #. a given argument index.
-#: config/arm/arm-builtins.c:3103
+#: config/arm/arm-builtins.c:3106
 #, gcc-internal-format
 msgid "%Kargument %d to %qE must be a constant immediate in range [0-%d]"
 msgstr ""
 
-#: config/arm/arm-builtins.c:3221
+#: config/arm/arm-builtins.c:3224
 #, gcc-internal-format
 msgid "this builtin is not supported for this target"
 msgstr ""
 
-#: config/arm/arm-builtins.c:3328
+#: config/arm/arm-builtins.c:3331
 #, gcc-internal-format
 msgid "%Ksaturation bit range must be in the range [%wd, %wd]"
 msgstr ""
 
-#: config/arm/arm-builtins.c:3332
+#: config/arm/arm-builtins.c:3335
 #, gcc-internal-format
 msgid "%Ksaturation bit range must be a constant immediate"
 msgstr ""
 
-#: config/arm/arm-builtins.c:3355
+#: config/arm/arm-builtins.c:3358
 #, gcc-internal-format
 msgid "You must enable MVE instructions to use these intrinsics"
 msgstr ""
 
-#: config/arm/arm-builtins.c:3377
+#: config/arm/arm-builtins.c:3380
 #, gcc-internal-format
 msgid ""
 "You must enable NEON instructions (e.g. %<-mfloat-abi=softfp%> %<-mfpu=neon"
 "%>) to use these intrinsics."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3399
+#: config/arm/arm-builtins.c:3402
 #, gcc-internal-format
 msgid "You must enable VFP instructions to use these intrinsics."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3477
+#: config/arm/arm-builtins.c:3480
 #, gcc-internal-format
 msgid ""
 "You must enable crypto instructions (e.g. include %<-mfloat-abi=softfp%> %<-"
@@ -35583,199 +36707,199 @@ msgid ""
 msgstr ""
 
 #. @@@ better error message
-#: config/arm/arm-builtins.c:3555 config/arm/arm-builtins.c:3659
+#: config/arm/arm-builtins.c:3558 config/arm/arm-builtins.c:3662
 #, gcc-internal-format
 msgid "selector must be an immediate"
 msgstr ""
 
-#: config/arm/arm-builtins.c:3563 config/arm/arm-builtins.c:3608
-#: config/arm/arm-builtins.c:3666 config/arm/arm-builtins.c:3675
+#: config/arm/arm-builtins.c:3566 config/arm/arm-builtins.c:3611
+#: config/arm/arm-builtins.c:3669 config/arm/arm-builtins.c:3678
 #, gcc-internal-format
 msgid "the range of selector should be in 0 to 7"
 msgstr ""
 
-#: config/arm/arm-builtins.c:3568 config/arm/arm-builtins.c:3677
+#: config/arm/arm-builtins.c:3571 config/arm/arm-builtins.c:3680
 #, gcc-internal-format
 msgid "the range of selector should be in 0 to 3"
 msgstr ""
 
-#: config/arm/arm-builtins.c:3573 config/arm/arm-builtins.c:3679
+#: config/arm/arm-builtins.c:3576 config/arm/arm-builtins.c:3682
 #, gcc-internal-format
 msgid "the range of selector should be in 0 to 1"
 msgstr ""
 
-#: config/arm/arm-builtins.c:3745
+#: config/arm/arm-builtins.c:3748
 #, gcc-internal-format
 msgid "mask must be an immediate"
 msgstr ""
 
-#: config/arm/arm-builtins.c:3750
+#: config/arm/arm-builtins.c:3753
 #, gcc-internal-format
 msgid "the range of mask should be in 0 to 255"
 msgstr ""
 
-#: config/arm/arm-builtins.c:3938
+#: config/arm/arm-builtins.c:3941
 #, gcc-internal-format
 msgid ""
 "the range of count should be in 0 to 32.  please check the intrinsic "
 "_mm_rori_pi16 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3940
+#: config/arm/arm-builtins.c:3943
 #, gcc-internal-format
 msgid ""
 "the range of count should be in 0 to 32.  please check the intrinsic "
 "_mm_rori_pi32 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3942
+#: config/arm/arm-builtins.c:3945
 #, gcc-internal-format
 msgid ""
 "the range of count should be in 0 to 32.  please check the intrinsic "
 "_mm_ror_pi16 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3944
+#: config/arm/arm-builtins.c:3947
 #, gcc-internal-format
 msgid ""
 "the range of count should be in 0 to 32.  please check the intrinsic "
 "_mm_ror_pi32 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3950
+#: config/arm/arm-builtins.c:3953
 #, gcc-internal-format
 msgid ""
 "the range of count should be in 0 to 64.  please check the intrinsic "
 "_mm_rori_si64 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3952
+#: config/arm/arm-builtins.c:3955
 #, gcc-internal-format
 msgid ""
 "the range of count should be in 0 to 64.  please check the intrinsic "
 "_mm_ror_si64 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3957
+#: config/arm/arm-builtins.c:3960
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic "
 "_mm_srli_pi16 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3959
+#: config/arm/arm-builtins.c:3962
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic "
 "_mm_srli_pi32 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3961
+#: config/arm/arm-builtins.c:3964
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic "
 "_mm_srli_si64 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3963
+#: config/arm/arm-builtins.c:3966
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic "
 "_mm_slli_pi16 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3965
+#: config/arm/arm-builtins.c:3968
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic "
 "_mm_slli_pi32 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3967
+#: config/arm/arm-builtins.c:3970
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic "
 "_mm_slli_si64 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3969
+#: config/arm/arm-builtins.c:3972
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic "
 "_mm_srai_pi16 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3971
+#: config/arm/arm-builtins.c:3974
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic "
 "_mm_srai_pi32 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3973
+#: config/arm/arm-builtins.c:3976
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic "
 "_mm_srai_si64 in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3975
+#: config/arm/arm-builtins.c:3978
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic _mm_srl_pi16 "
 "in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3977
+#: config/arm/arm-builtins.c:3980
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic _mm_srl_pi32 "
 "in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3979
+#: config/arm/arm-builtins.c:3982
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic _mm_srl_si64 "
 "in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3981
+#: config/arm/arm-builtins.c:3984
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic _mm_sll_pi16 "
 "in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3983
+#: config/arm/arm-builtins.c:3986
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic _mm_sll_pi32 "
 "in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3985
+#: config/arm/arm-builtins.c:3988
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic _mm_sll_si64 "
 "in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3987
+#: config/arm/arm-builtins.c:3990
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic _mm_sra_pi16 "
 "in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3989
+#: config/arm/arm-builtins.c:3992
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic _mm_sra_pi32 "
 "in code."
 msgstr ""
 
-#: config/arm/arm-builtins.c:3991
+#: config/arm/arm-builtins.c:3994
 #, gcc-internal-format
 msgid ""
 "the count should be no less than 0.  please check the intrinsic _mm_sra_si64 "
@@ -35789,298 +36913,298 @@ msgid ""
 "wide"
 msgstr ""
 
-#: config/arm/arm.c:2915
+#: config/arm/arm.c:2911
 #, gcc-internal-format
 msgid "iWMMXt and NEON are incompatible"
 msgstr ""
 
-#: config/arm/arm.c:2921
+#: config/arm/arm.c:2917
 #, gcc-internal-format
 msgid "target CPU does not support ARM mode"
 msgstr ""
 
-#: config/arm/arm.c:2925
+#: config/arm/arm.c:2921
 #, gcc-internal-format
 msgid ""
 "enabling backtrace support is only meaningful when compiling for the Thumb"
 msgstr ""
 
-#: config/arm/arm.c:2928
+#: config/arm/arm.c:2924
 #, gcc-internal-format
 msgid ""
 "enabling callee interworking support is only meaningful when compiling for "
 "the Thumb"
 msgstr ""
 
-#: config/arm/arm.c:2936
+#: config/arm/arm.c:2932
 #, gcc-internal-format
 msgid "%<-g%> with %<-mno-apcs-frame%> may not give sensible debugging"
 msgstr ""
 
-#: config/arm/arm.c:2941
+#: config/arm/arm.c:2937
 #, gcc-internal-format
 msgid "iWMMXt unsupported under Thumb mode"
 msgstr ""
 
-#: config/arm/arm.c:2944
+#: config/arm/arm.c:2940
 #, gcc-internal-format
 msgid "cannot use %<-mtp=cp15%> with 16-bit Thumb"
 msgstr ""
 
-#: config/arm/arm.c:2948
+#: config/arm/arm.c:2944
 #, gcc-internal-format
 msgid "RTP PIC is incompatible with Thumb"
 msgstr ""
 
-#: config/arm/arm.c:2961
+#: config/arm/arm.c:2957
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "%s only supports non-pic code on M-profile targets with the MOVT instruction"
 msgstr ""
 
-#: config/arm/arm.c:2966
+#: config/arm/arm.c:2962
 #, gcc-internal-format, gfc-internal-format
 msgid "%s only supports non-pic code on M-profile targets"
 msgstr ""
 
-#: config/arm/arm.c:2971
+#: config/arm/arm.c:2967
 #, gcc-internal-format
 msgid "%s incompatible with %<-mword-relocations%>"
 msgstr ""
 
-#: config/arm/arm.c:3086
+#: config/arm/arm.c:3067
 #, gcc-internal-format
 msgid "target CPU does not support THUMB instructions"
 msgstr ""
 
-#: config/arm/arm.c:3136
+#: config/arm/arm.c:3117
 #, gcc-internal-format
 msgid "target CPU does not support unaligned accesses"
 msgstr ""
 
-#: config/arm/arm.c:3485
+#: config/arm/arm.c:3481
 #, gcc-internal-format
 msgid "%<-mapcs-stack-check%> incompatible with %<-mno-apcs-frame%>"
 msgstr ""
 
-#: config/arm/arm.c:3494
+#: config/arm/arm.c:3490
 #, gcc-internal-format
 msgid "%<-fpic%> and %<-mapcs-reent%> are incompatible"
 msgstr ""
 
-#: config/arm/arm.c:3497
+#: config/arm/arm.c:3493
 #, gcc-internal-format
 msgid "APCS reentrant code not supported.  Ignored"
 msgstr ""
 
-#: config/arm/arm.c:3520
+#: config/arm/arm.c:3516
 #, gcc-internal-format
 msgid "option %<-mstructure-size-boundary%> is deprecated"
 msgstr ""
 
-#: config/arm/arm.c:3528
+#: config/arm/arm.c:3524
 #, gcc-internal-format
 msgid "structure size boundary can only be set to 8, 32 or 64"
 msgstr ""
 
-#: config/arm/arm.c:3530
+#: config/arm/arm.c:3526
 #, gcc-internal-format
 msgid "structure size boundary can only be set to 8 or 32"
 msgstr ""
 
-#: config/arm/arm.c:3555
+#: config/arm/arm.c:3551
 #, gcc-internal-format
 msgid "RTP PIC is incompatible with %<-msingle-pic-base%>"
 msgstr ""
 
-#: config/arm/arm.c:3567 config/arm/arm.c:32436
+#: config/arm/arm.c:3563 config/arm/arm.c:32857
 #, gcc-internal-format
 msgid "FDPIC mode is not supported in Thumb-1 mode"
 msgstr ""
 
-#: config/arm/arm.c:3575
+#: config/arm/arm.c:3571
 #, gcc-internal-format
 msgid "%<-mpic-register=%> is useless without %<-fpic%>"
 msgstr ""
 
-#: config/arm/arm.c:3584
+#: config/arm/arm.c:3580
 #, gcc-internal-format
 msgid "unable to use %qs for PIC register"
 msgstr ""
 
-#: config/arm/arm.c:3606 config/pru/pru.c:612
+#: config/arm/arm.c:3602 config/pru/pru.c:612
 #, gcc-internal-format
 msgid "%<-freorder-blocks-and-partition%> not supported on this architecture"
 msgstr ""
 
-#: config/arm/arm.c:3750
+#: config/arm/arm.c:3747
 #, gcc-internal-format
 msgid "selected fp16 options are incompatible"
 msgstr ""
 
-#: config/arm/arm.c:3802
+#: config/arm/arm.c:3799
 #, gcc-internal-format
 msgid "iwmmxt requires an AAPCS compatible ABI for proper operation"
 msgstr ""
 
-#: config/arm/arm.c:3805
+#: config/arm/arm.c:3802
 #, gcc-internal-format
 msgid "iwmmxt abi requires an iwmmxt capable cpu"
 msgstr ""
 
-#: config/arm/arm.c:3813
+#: config/arm/arm.c:3810
 #, gcc-internal-format
 msgid "target CPU does not support interworking"
 msgstr ""
 
-#: config/arm/arm.c:3826
+#: config/arm/arm.c:3823
 #, gcc-internal-format
 msgid "AAPCS does not support %<-mcaller-super-interworking%>"
 msgstr ""
 
-#: config/arm/arm.c:3829
+#: config/arm/arm.c:3826
 #, gcc-internal-format
 msgid "AAPCS does not support %<-mcallee-super-interworking%>"
 msgstr ""
 
-#: config/arm/arm.c:3834
+#: config/arm/arm.c:3831
 #, gcc-internal-format
 msgid "__fp16 and no ldrh"
 msgstr ""
 
-#: config/arm/arm.c:3837
+#: config/arm/arm.c:3834
 #, gcc-internal-format
 msgid "target CPU does not support ARMv8-M Security Extensions"
 msgstr ""
 
-#: config/arm/arm.c:3842
+#: config/arm/arm.c:3839
 #, gcc-internal-format
 msgid "ARMv8-M Security Extensions incompatible with selected FPU"
 msgstr ""
 
-#: config/arm/arm.c:3854
+#: config/arm/arm.c:3851
 #, gcc-internal-format
 msgid "%<-mfloat-abi=hard%>: selected processor lacks an FPU"
 msgstr ""
 
-#: config/arm/arm.c:3862
+#: config/arm/arm.c:3859
 #, gcc-internal-format
 msgid "%<-mfloat-abi=hard%> and VFP"
 msgstr ""
 
-#: config/arm/arm.c:6127
+#: config/arm/arm.c:6093
 #, gcc-internal-format
 msgid "non-AAPCS derived PCS variant"
 msgstr ""
 
-#: config/arm/arm.c:6129
+#: config/arm/arm.c:6095
 #, gcc-internal-format
 msgid "variadic functions must use the base AAPCS variant"
 msgstr ""
 
-#: config/arm/arm.c:6149
+#: config/arm/arm.c:6115
 #, gcc-internal-format
 msgid "PCS variant"
 msgstr ""
 
-#: config/arm/arm.c:6401
+#: config/arm/arm.c:6367
 #, gcc-internal-format
 msgid "Thumb-1 hard-float VFP ABI"
 msgstr ""
 
-#: config/arm/arm.c:6490
+#: config/arm/arm.c:6456
 #, gcc-internal-format
 msgid "argument of type %qT not permitted with -mgeneral-regs-only"
 msgstr ""
 
-#: config/arm/arm.c:6874 config/arm/arm.c:7095 config/arm/arm.c:7128
-#: config/arm/arm.c:28583
+#: config/arm/arm.c:6840 config/arm/arm.c:7061 config/arm/arm.c:7094
+#: config/arm/arm.c:28824
 #, gcc-internal-format
 msgid "parameter passing for argument of type %qT changed in GCC 7.1"
 msgstr ""
 
-#: config/arm/arm.c:7266
+#: config/arm/arm.c:7232
 #, gcc-internal-format
 msgid ""
 "FP registers might be clobbered despite %qE attribute: compile with %<-"
 "mgeneral-regs-only%>"
 msgstr ""
 
-#: config/arm/arm.c:7390
+#: config/arm/arm.c:7356
 #, gcc-internal-format
 msgid ""
 "%qE attribute not available to functions with arguments passed on the stack"
 msgstr ""
 
-#: config/arm/arm.c:7402
+#: config/arm/arm.c:7368
 #, gcc-internal-format
 msgid ""
 "%qE attribute not available to functions with variable number of arguments"
 msgstr ""
 
-#: config/arm/arm.c:7411
+#: config/arm/arm.c:7377
 #, gcc-internal-format
 msgid "%qE attribute not available to functions that return value on the stack"
 msgstr ""
 
-#: config/arm/arm.c:7433 config/arm/arm.c:7485
+#: config/arm/arm.c:7399 config/arm/arm.c:7451
 #, gcc-internal-format
 msgid "%qE attribute ignored without %<-mcmse%> option."
 msgstr ""
 
-#: config/arm/arm.c:7452
+#: config/arm/arm.c:7418
 #, gcc-internal-format
 msgid "%qE attribute has no effect on functions with static linkage"
 msgstr ""
 
-#: config/arm/arm.c:7501
+#: config/arm/arm.c:7467
 #, gcc-internal-format
 msgid "%qE attribute only applies to base type of a function pointer"
 msgstr ""
 
-#: config/arm/arm.c:9465
+#: config/arm/arm.c:9431
 #, gcc-internal-format
 msgid ""
 "accessing thread-local storage is not currently supported with %<-mpure-code"
 "%> or %<-mslow-flash-data%>"
 msgstr ""
 
-#: config/arm/arm.c:13204
+#: config/arm/arm.c:13190
 #, gcc-internal-format
 msgid "%K%s %wd out of range %wd - %wd"
 msgstr ""
 
-#: config/arm/arm.c:13207
+#: config/arm/arm.c:13193
 #, gcc-internal-format
 msgid "%s %wd out of range %wd - %wd"
 msgstr ""
 
-#: config/arm/arm.c:25445
+#: config/arm/arm.c:25470
 #, gcc-internal-format
 msgid "unable to compute real location of stacked parameter"
 msgstr ""
 
-#: config/arm/arm.c:26107
+#: config/arm/arm.c:26132
 #, gcc-internal-format
 msgid "Unexpected thumb1 far jump"
 msgstr ""
 
-#: config/arm/arm.c:26366
+#: config/arm/arm.c:26391
 #, gcc-internal-format
 msgid "no low registers available for popping high registers"
 msgstr ""
 
-#: config/arm/arm.c:26618
+#: config/arm/arm.c:26643
 #, gcc-internal-format
 msgid "Interrupt Service Routines cannot be coded in Thumb-1 mode"
 msgstr ""
 
-#: config/arm/arm.c:26864
+#: config/arm/arm.c:26889
 #, gcc-internal-format
 msgid "%<-fstack-check=specific%> for Thumb-1"
 msgstr ""
 
-#: config/arm/arm.c:32451
+#: config/arm/arm.c:32872
 #, gcc-internal-format
 msgid "invalid fpu for target attribute or pragma %qs"
 msgstr ""
@@ -36088,22 +37212,22 @@ msgstr ""
 #. This doesn't really make sense until we support
 #. general dynamic selection of the architecture and all
 #. sub-features.
-#: config/arm/arm.c:32459
+#: config/arm/arm.c:32880
 #, gcc-internal-format
 msgid "auto fpu selection not currently permitted here"
 msgstr ""
 
-#: config/arm/arm.c:32472
+#: config/arm/arm.c:32893
 #, gcc-internal-format
 msgid "invalid architecture for target attribute or pragma %qs"
 msgstr ""
 
-#: config/arm/arm.c:32486
+#: config/arm/arm.c:32907
 #, gcc-internal-format
 msgid "unknown target attribute or pragma %qs"
 msgstr ""
 
-#: config/arm/arm.c:33498
+#: config/arm/arm.c:33918
 #, gcc-internal-format
 msgid "asm flags not supported in thumb1 mode"
 msgstr ""
@@ -36182,17 +37306,17 @@ msgstr ""
 msgid "%<-fPIE%> is not supported"
 msgstr ""
 
-#: config/avr/avr.c:1040 config/avr/avr.c:1045 config/riscv/riscv.c:5029
+#: config/avr/avr.c:1040 config/avr/avr.c:1045 config/riscv/riscv.c:5084
 #, gcc-internal-format
 msgid "function attributes %qs and %qs are mutually exclusive"
 msgstr ""
 
-#: config/avr/avr.c:1066 config/riscv/riscv.c:5041
+#: config/avr/avr.c:1066 config/riscv/riscv.c:5096
 #, gcc-internal-format
 msgid "%qs function cannot have arguments"
 msgstr ""
 
-#: config/avr/avr.c:1069 config/riscv/riscv.c:5038
+#: config/avr/avr.c:1069 config/riscv/riscv.c:5093
 #, gcc-internal-format
 msgid "%qs function cannot return a value"
 msgstr ""
@@ -36433,37 +37557,42 @@ msgid ""
 "can%'t apply both longcall and shortcall attributes to the same function"
 msgstr ""
 
-#: config/bfin/bfin.c:4822
+#: config/bpf/bpf.c:92
 #, gcc-internal-format
-msgid "%qE attribute cannot be specified for local variables"
+msgid "%qE attribute requires an integer argument"
+msgstr ""
+
+#: config/bpf/bpf.c:99
+#, gcc-internal-format
+msgid "%qE requires an argument"
 msgstr ""
 
-#: config/bpf/bpf.c:291
+#: config/bpf/bpf.c:297
 #, gcc-internal-format
 msgid "eBPF stack limit exceeded"
 msgstr ""
 
-#: config/bpf/bpf.c:616
+#: config/bpf/bpf.c:622
 #, gcc-internal-format
 msgid "too many function arguments for eBPF"
 msgstr ""
 
-#: config/bpf/bpf.c:634 config/bpf/bpf.c:636
+#: config/bpf/bpf.c:640 config/bpf/bpf.c:642
 #, gcc-internal-format
 msgid "no constructors"
 msgstr ""
 
-#: config/bpf/bpf.c:652 config/bpf/bpf.c:654
+#: config/bpf/bpf.c:658 config/bpf/bpf.c:660
 #, gcc-internal-format
 msgid "no destructors"
 msgstr ""
 
-#: config/bpf/bpf.c:699
+#: config/bpf/bpf.c:712
 #, gcc-internal-format
 msgid "indirect call in function, which are not supported by eBPF"
 msgstr ""
 
-#: config/bpf/bpf.c:899 config/mips/mips.c:17025 config/nios2/nios2.c:3600
+#: config/bpf/bpf.c:867 config/mips/mips.c:17025 config/nios2/nios2.c:3593
 #: config/riscv/riscv-builtins.c:222
 #, gcc-internal-format
 msgid "invalid argument to built-in function"
@@ -36474,7 +37603,7 @@ msgstr ""
 msgid "%<-fpic%> and %<-fPIC%> not supported without %<-mdsbt%> on this target"
 msgstr ""
 
-#: config/c6x/c6x.h:346 config/nvptx/nvptx.h:181
+#: config/c6x/c6x.h:346 config/nvptx/nvptx.h:184
 #, gcc-internal-format
 msgid "profiling is not yet implemented for this architecture"
 msgstr ""
@@ -36553,7 +37682,7 @@ msgid "stackframe too big: %d bytes"
 msgstr ""
 
 #. Definitions for GCC.  Part of the machine description for CRIS.
-#. Copyright (C) 1998-2020 Free Software Foundation, Inc.
+#. Copyright (C) 1998-2021 Free Software Foundation, Inc.
 #. Contributed by Axis Communications.  Written by Hans-Peter Nilsson.
 #.
 #. This file is part of GCC.
@@ -36605,33 +37734,33 @@ msgstr ""
 msgid "no FUNCTION_PROFILER for CRIS"
 msgstr ""
 
-#: config/csky/csky.c:2389
+#: config/csky/csky.c:2450
 #, gcc-internal-format, gfc-internal-format
 msgid "cpu %s is not based on arch %s, ignoring the arch"
 msgstr ""
 
-#: config/csky/csky.c:2453 config/csky/csky.c:2489 config/csky/csky.c:2542
-#: config/csky/csky.c:2565 config/csky/csky.c:2582
+#: config/csky/csky.c:2514 config/csky/csky.c:2550 config/csky/csky.c:2603
+#: config/csky/csky.c:2626 config/csky/csky.c:2643
 #, gcc-internal-format
 msgid "%qs is not supported by arch %s"
 msgstr ""
 
-#: config/csky/csky.c:2492
+#: config/csky/csky.c:2553
 #, gcc-internal-format
 msgid "%<-mhard-float%> is not supported by the selected CPU"
 msgstr ""
 
-#: config/csky/csky.c:2508
+#: config/csky/csky.c:2569
 #, gcc-internal-format
 msgid "%<-mdouble-float%> ignored without %<-mhard-float%>"
 msgstr ""
 
-#: config/csky/csky.c:2511
+#: config/csky/csky.c:2572
 #, gcc-internal-format
 msgid "%<-mfdivdu%> ignored without %<-mhard-float%>"
 msgstr ""
 
-#: config/csky/csky.c:2554
+#: config/csky/csky.c:2615
 #, gcc-internal-format
 msgid "%<-msmart%> is incompatible with %<-mhigh-registers%>"
 msgstr ""
@@ -36648,12 +37777,12 @@ msgstr ""
 #. by the caller.  In theory we could test for that and handle
 #. limited cases with parameters that all fit in r0-r3 with no
 #. stack overflow, but punt for now.
-#: config/csky/csky.c:5819
+#: config/csky/csky.c:5880
 #, gcc-internal-format
 msgid "Nested function trampolines not supported on CK801."
 msgstr ""
 
-#: config/csky/csky.c:6024
+#: config/csky/csky.c:6086
 #, gcc-internal-format
 msgid "%qE attribute ignored without %<-mistack%>"
 msgstr ""
@@ -36701,12 +37830,12 @@ msgstr ""
 msgid "invalid IACC argument"
 msgstr ""
 
-#: config/frv/frv.c:8603 config/sparc/sparc.c:10940
+#: config/frv/frv.c:8603 config/sparc/sparc.c:10909
 #, gcc-internal-format
 msgid "%qs expects a constant argument"
 msgstr ""
 
-#: config/frv/frv.c:8608 config/sparc/sparc.c:10946
+#: config/frv/frv.c:8608 config/sparc/sparc.c:10915
 #, gcc-internal-format
 msgid "constant argument out of range for %qs"
 msgstr ""
@@ -36776,105 +37905,105 @@ msgstr ""
 msgid "too many arguments passed in sgpr registers"
 msgstr ""
 
-#: config/gcn/gcn.c:2090
+#: config/gcn/gcn.c:2104
 #, gcc-internal-format
 msgid ""
 "A non-default set of initial values has been requested, which violates the "
 "ABI!"
 msgstr ""
 
-#: config/gcn/gcn.c:2330
+#: config/gcn/gcn.c:2340
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong type of argument %s"
 msgstr ""
 
-#: config/gcn/gcn.c:3167
+#: config/gcn/gcn.c:3179
 #, gcc-internal-format
 msgid ""
 "nested function trampolines not supported on GCN5 due to non-executable "
 "stacks"
 msgstr ""
 
-#: config/gcn/gcn.c:3276
+#: config/gcn/gcn.c:3288
 #, gcc-internal-format
 msgid "TLS is not implemented for GCN."
 msgstr ""
 
-#: config/gcn/gcn.c:3887
+#: config/gcn/gcn.c:3899
 #, gcc-internal-format
 msgid "Builtin not implemented"
 msgstr ""
 
-#: config/gcn/gcn.c:4856
+#: config/gcn/gcn.c:4885
 #, gcc-internal-format, gfc-internal-format
 msgid "using vector_length (64), ignoring %d"
 msgstr ""
 
-#: config/gcn/gcn.c:4857
+#: config/gcn/gcn.c:4886
 #, gcc-internal-format
 msgid "using vector_length (64), ignoring runtime setting"
 msgstr ""
 
-#: config/gcn/gcn.c:4869 config/nvptx/nvptx.c:5701
+#: config/gcn/gcn.c:4898 config/nvptx/nvptx.c:5808
 #, gcc-internal-format, gfc-internal-format
 msgid "using num_workers (%d), ignoring %d"
 msgstr ""
 
-#: config/gcn/gcn.c:4897 config/gcn/gcn.c:4924
+#: config/gcn/gcn.c:4926 config/gcn/gcn.c:4953
 #, gcc-internal-format, gfc-internal-format
 msgid "offload dimension out of range (%d)"
 msgstr ""
 
-#: config/gcn/gcn.c:5315
+#: config/gcn/gcn.c:5347
 #, gcc-internal-format
 msgid "local data-share memory exhausted"
 msgstr ""
 
-#: config/gcn/mkoffload.c:104 config/i386/intelmic-mkoffload.c:73
+#: config/gcn/mkoffload.c:106 config/i386/intelmic-mkoffload.c:73
 #: config/nvptx/mkoffload.c:88
 #, gcc-internal-format
 msgid "deleting file %s: %m"
 msgstr ""
 
-#: config/gcn/mkoffload.c:693 config/nvptx/mkoffload.c:365
+#: config/gcn/mkoffload.c:710 config/nvptx/mkoffload.c:365
 #, gcc-internal-format
 msgid "environment variable COLLECT_GCC_OPTIONS must be set"
 msgstr ""
 
-#: config/gcn/mkoffload.c:756 config/nvptx/mkoffload.c:421
+#: config/gcn/mkoffload.c:769 config/nvptx/mkoffload.c:422
 #, gcc-internal-format
 msgid "COLLECT_GCC must be set."
 msgstr ""
 
-#: config/gcn/mkoffload.c:802 config/i386/intelmic-mkoffload.c:566
+#: config/gcn/mkoffload.c:815 config/i386/intelmic-mkoffload.c:606
 #, gcc-internal-format, gfc-internal-format
 msgid "offload compiler %s not found"
 msgstr ""
 
-#: config/gcn/mkoffload.c:824 config/i386/intelmic-mkoffload.c:585
-#: config/nvptx/mkoffload.c:492
+#: config/gcn/mkoffload.c:837 config/i386/intelmic-mkoffload.c:625
+#: config/nvptx/mkoffload.c:493
 #, gcc-internal-format
 msgid "unrecognizable argument of option "
 msgstr ""
 
-#: config/gcn/mkoffload.c:851
+#: config/gcn/mkoffload.c:866
 #, gcc-internal-format
 msgid "either -fopenacc or -fopenmp must be set"
 msgstr ""
 
-#: config/gcn/mkoffload.c:999
-#, gcc-internal-format
-msgid "cannot open intermediate gcn asm file"
-msgstr ""
-
-#: config/gcn/mkoffload.c:1003 config/gcn/mkoffload.c:1007
-#: config/i386/intelmic-mkoffload.c:255 config/i386/intelmic-mkoffload.c:319
-#: config/i386/intelmic-mkoffload.c:360 config/nvptx/mkoffload.c:556
+#: config/gcn/mkoffload.c:918 config/gcn/mkoffload.c:1033
+#: config/i386/intelmic-mkoffload.c:260 config/i386/intelmic-mkoffload.c:335
+#: config/i386/intelmic-mkoffload.c:387 config/nvptx/mkoffload.c:557
 #, gcc-internal-format, gfc-internal-format
 msgid "cannot open '%s'"
 msgstr ""
 
-#: config/gcn/mkoffload.c:1020
+#: config/gcn/mkoffload.c:1029
+#, gcc-internal-format
+msgid "cannot open intermediate gcn asm file"
+msgstr ""
+
+#: config/gcn/mkoffload.c:1046
 #, gcc-internal-format
 msgid "cannot open intermediate gcn obj file"
 msgstr ""
@@ -36919,259 +38048,259 @@ msgstr ""
 msgid "can%'t set position in PCH file: %m"
 msgstr ""
 
-#: config/i386/i386-builtins.c:1960
+#: config/i386/i386-builtins.c:1954
 #, gcc-internal-format
 msgid "no dispatcher found for the versioning attributes"
 msgstr ""
 
-#: config/i386/i386-builtins.c:2010
+#: config/i386/i386-builtins.c:2004
 #, gcc-internal-format
 msgid "ISA %qs is not supported in %<target%> attribute, use %<arch=%> syntax"
 msgstr ""
 
-#: config/i386/i386-builtins.c:2021
+#: config/i386/i386-builtins.c:2015
 #, gcc-internal-format, gfc-internal-format
 msgid "no dispatcher found for the versioning attributes: %s"
 msgstr ""
 
-#: config/i386/i386-builtins.c:2122
+#: config/i386/i386-builtins.c:2116
 #, gcc-internal-format
 msgid "parameter to builtin must be a string constant or literal"
 msgstr ""
 
-#: config/i386/i386-builtins.c:2146 config/i386/i386-builtins.c:2196
+#: config/i386/i386-builtins.c:2140 config/i386/i386-builtins.c:2190
 #, gcc-internal-format, gfc-internal-format
 msgid "parameter to builtin not valid: %s"
 msgstr ""
 
-#: config/i386/i386-expand.c:7902
+#: config/i386/i386-expand.c:8042
 #, gcc-internal-format
 msgid "interrupt service routine cannot be called directly"
 msgstr ""
 
-#: config/i386/i386-expand.c:8306 config/i386/i386-expand.c:9769
+#: config/i386/i386-expand.c:8452 config/i386/i386-expand.c:9904
 #, gcc-internal-format
 msgid "the last argument must be a 2-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:8701
+#: config/i386/i386-expand.c:8840
 #, gcc-internal-format
 msgid "the fifth argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:8796
+#: config/i386/i386-expand.c:8935
 #, gcc-internal-format
 msgid "the third argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:9700
+#: config/i386/i386-expand.c:9835
 #, gcc-internal-format
 msgid "the last argument must be an 1-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:9715
+#: config/i386/i386-expand.c:9850
 #, gcc-internal-format
 msgid "the last argument must be a 3-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:9748
+#: config/i386/i386-expand.c:9883
 #, gcc-internal-format
 msgid "the last argument must be a 4-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:9788
+#: config/i386/i386-expand.c:9923
 #, gcc-internal-format
 msgid "the last argument must be a 1-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:9801
+#: config/i386/i386-expand.c:9936
 #, gcc-internal-format
 msgid "the last argument must be a 5-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:9811
+#: config/i386/i386-expand.c:9946
 #, gcc-internal-format
 msgid "the next to last argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:9816 config/i386/i386-expand.c:10722
+#: config/i386/i386-expand.c:9951
 #, gcc-internal-format
 msgid "the last argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:9956
+#: config/i386/i386-expand.c:10088
 #, gcc-internal-format
 msgid "the third argument must be comparison constant"
 msgstr ""
 
-#: config/i386/i386-expand.c:9961
+#: config/i386/i386-expand.c:10093
 #, gcc-internal-format
 msgid "incorrect comparison mode"
 msgstr ""
 
-#: config/i386/i386-expand.c:9967 config/i386/i386-expand.c:10287
+#: config/i386/i386-expand.c:10099 config/i386/i386-expand.c:10419
 #, gcc-internal-format
 msgid "incorrect rounding operand"
 msgstr ""
 
-#: config/i386/i386-expand.c:10269
+#: config/i386/i386-expand.c:10401
 #, gcc-internal-format
 msgid "the immediate argument must be a 4-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:10275
+#: config/i386/i386-expand.c:10407
 #, gcc-internal-format
 msgid "the immediate argument must be a 5-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:10278
+#: config/i386/i386-expand.c:10410
 #, gcc-internal-format
 msgid "the immediate argument must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:10720
-#, gcc-internal-format
-msgid "the last argument must be a 32-bit immediate"
-msgstr ""
-
-#: config/i386/i386-expand.c:10802 config/rs6000/rs6000-call.c:10323
+#: config/i386/i386-expand.c:10905 config/rs6000/rs6000-call.c:10906
 #, gcc-internal-format
 msgid "selector must be an integer constant in the range [0, %wi]"
 msgstr ""
 
-#: config/i386/i386-expand.c:10996
+#: config/i386/i386-expand.c:11118
 #, gcc-internal-format
 msgid "%qE needs unknown isa option"
 msgstr ""
 
-#: config/i386/i386-expand.c:11000
+#: config/i386/i386-expand.c:11122
 #, gcc-internal-format
 msgid "%qE needs isa option %s"
 msgstr ""
 
-#: config/i386/i386-expand.c:11671
+#: config/i386/i386-expand.c:12043
+#, gcc-internal-format
+msgid "the last argument must be a 32-bit immediate"
+msgstr ""
+
+#: config/i386/i386-expand.c:12076
 #, gcc-internal-format
 msgid "last argument must be an immediate"
 msgstr ""
 
-#: config/i386/i386-expand.c:12427 config/i386/i386-expand.c:12639
+#: config/i386/i386-expand.c:12837 config/i386/i386-expand.c:13049
 #, gcc-internal-format
 msgid "the last argument must be scale 1, 2, 4, 8"
 msgstr ""
 
-#: config/i386/i386-expand.c:12692
+#: config/i386/i386-expand.c:13102
 #, gcc-internal-format
 msgid "the forth argument must be scale 1, 2, 4, 8"
 msgstr ""
 
-#: config/i386/i386-expand.c:12698
+#: config/i386/i386-expand.c:13108
 #, gcc-internal-format
 msgid "incorrect hint operand"
 msgstr ""
 
-#: config/i386/i386-expand.c:12717
+#: config/i386/i386-expand.c:13127
 #, gcc-internal-format
 msgid "the argument to %<xabort%> intrinsic must be an 8-bit immediate"
 msgstr ""
 
-#: config/i386/i386-features.c:2642
+#: config/i386/i386-features.c:2794
 #, gcc-internal-format
 msgid ""
 "function versions cannot be marked as %<gnu_inline%>, bodies have to be "
 "generated"
 msgstr ""
 
-#: config/i386/i386-features.c:2647 config/i386/i386-features.c:2915
+#: config/i386/i386-features.c:2799 config/i386/i386-features.c:3067
 #, gcc-internal-format
 msgid "virtual function multiversioning not supported"
 msgstr ""
 
-#: config/i386/i386-features.c:2779
+#: config/i386/i386-features.c:2931
 #, gcc-internal-format
 msgid "multiversioning needs %<ifunc%> which is not supported on this target"
 msgstr ""
 
-#: config/i386/i386-options.c:848 config/i386/i386-options.c:1932
-#: config/i386/i386-options.c:1941
+#: config/i386/i386-options.c:849 config/i386/i386-options.c:1999
+#: config/i386/i386-options.c:2008
 #, gcc-internal-format, gfc-internal-format
 msgid "code model %s does not support PIC mode"
 msgstr ""
 
-#: config/i386/i386-options.c:1089
+#: config/i386/i386-options.c:1106
 #, gcc-internal-format
 msgid "attribute %qs argument is not a string"
 msgstr ""
 
-#: config/i386/i386-options.c:1153
+#: config/i386/i386-options.c:1170
 #, gcc-internal-format
 msgid "attribute %qs argument %qs is unknown"
 msgstr ""
 
-#: config/i386/i386-options.c:1182
+#: config/i386/i386-options.c:1233
 #, gcc-internal-format
 msgid "attribute value %qs was already specified in %qs attribute"
 msgstr ""
 
-#: config/i386/i386-options.c:1220
+#: config/i386/i386-options.c:1271
 #, gcc-internal-format
 msgid "attribute value %qs is unknown in %qs attribute"
 msgstr ""
 
-#: config/i386/i386-options.c:1458
+#: config/i386/i386-options.c:1522
 #, gcc-internal-format
 msgid "wrong argument %qs to option %qs"
 msgstr ""
 
-#: config/i386/i386-options.c:1464
+#: config/i386/i386-options.c:1528
 #, gcc-internal-format
 msgid "size ranges of option %qs should be increasing"
 msgstr ""
 
-#: config/i386/i386-options.c:1474
+#: config/i386/i386-options.c:1538
 #, gcc-internal-format
 msgid "wrong strategy name %qs specified for option %qs"
 msgstr ""
 
 #. rep; movq isn't available in 32-bit code.
-#: config/i386/i386-options.c:1500
+#: config/i386/i386-options.c:1564
 #, gcc-internal-format
 msgid ""
 "strategy name %qs specified for option %qs not supported for 32-bit code"
 msgstr ""
 
-#: config/i386/i386-options.c:1513
+#: config/i386/i386-options.c:1577
 #, gcc-internal-format
 msgid "unknown alignment %qs specified for option %qs"
 msgstr ""
 
-#: config/i386/i386-options.c:1523
+#: config/i386/i386-options.c:1587
 #, gcc-internal-format
 msgid "the max value for the last size range should be -1 for option %qs"
 msgstr ""
 
-#: config/i386/i386-options.c:1530
+#: config/i386/i386-options.c:1594
 #, gcc-internal-format
 msgid "too many size ranges specified in option %qs"
 msgstr ""
 
-#: config/i386/i386-options.c:1583
+#: config/i386/i386-options.c:1647
 #, gcc-internal-format
 msgid "unknown parameter to option %<-mtune-ctrl%>: %s"
 msgstr ""
 
-#: config/i386/i386-options.c:1767
+#: config/i386/i386-options.c:1831
 #, gcc-internal-format
 msgid "Intel MCU psABI isn%'t supported in %s mode"
 msgstr ""
 
-#: config/i386/i386-options.c:1816
+#: config/i386/i386-options.c:1878
 #, gcc-internal-format
 msgid ""
 "%<-mtune=x86-64%> is deprecated; use %<-mtune=k8%> or %<-mtune=generic%> "
 "instead as appropriate"
 msgstr ""
 
-#: config/i386/i386-options.c:1818
+#: config/i386/i386-options.c:1880
 #, gcc-internal-format
 msgid ""
 "%<target(\"tune=x86-64\")%> is deprecated; use %<target(\"tune=k8\")%> or "
@@ -37179,556 +38308,566 @@ msgid ""
 msgstr ""
 
 #. rep; movq isn't available in 32-bit code.
-#: config/i386/i386-options.c:1844
+#: config/i386/i386-options.c:1908
 #, gcc-internal-format
 msgid "%<-mstringop-strategy=rep_8byte%> not supported for 32-bit code"
 msgstr ""
 
-#: config/i386/i386-options.c:1861
+#: config/i386/i386-options.c:1913
+#, gcc-internal-format
+msgid "%<-muintr%> not supported for 32-bit code"
+msgstr ""
+
+#: config/i386/i386-options.c:1928
 #, gcc-internal-format
 msgid "address mode %qs not supported in the %s bit mode"
 msgstr ""
 
-#: config/i386/i386-options.c:1872
+#: config/i386/i386-options.c:1939
 #, gcc-internal-format
 msgid "%<-mabi=ms%> not supported with X32 ABI"
 msgstr ""
 
-#: config/i386/i386-options.c:1878
+#: config/i386/i386-options.c:1945
 #, gcc-internal-format
 msgid "%<-mabi=%s%> not supported with %<-fsanitize=address%>"
 msgstr ""
 
-#: config/i386/i386-options.c:1881
+#: config/i386/i386-options.c:1948
 #, gcc-internal-format
 msgid "%<-mabi=%s%> not supported with %<-fsanitize=kernel-address%>"
 msgstr ""
 
-#: config/i386/i386-options.c:1885
+#: config/i386/i386-options.c:1952
 #, gcc-internal-format
 msgid "%<-mabi=%s%> not supported with %<-fsanitize=thread%>"
 msgstr ""
 
-#: config/i386/i386-options.c:1902 config/i386/i386-options.c:1911
-#: config/i386/i386-options.c:1923 config/i386/i386-options.c:1934
-#: config/i386/i386-options.c:1945
+#: config/i386/i386-options.c:1969 config/i386/i386-options.c:1978
+#: config/i386/i386-options.c:1990 config/i386/i386-options.c:2001
+#: config/i386/i386-options.c:2012
 #, gcc-internal-format
 msgid "code model %qs not supported in the %s bit mode"
 msgstr ""
 
-#: config/i386/i386-options.c:1914 config/i386/i386-options.c:1926
+#: config/i386/i386-options.c:1981 config/i386/i386-options.c:1993
 #, gcc-internal-format
 msgid "code model %qs not supported in x32 mode"
 msgstr ""
 
-#: config/i386/i386-options.c:1969
+#: config/i386/i386-options.c:2036
 #, gcc-internal-format
 msgid "%<-masm=intel%> not supported in this configuration"
 msgstr ""
 
-#: config/i386/i386-options.c:1974
+#: config/i386/i386-options.c:2041
 #, gcc-internal-format, gfc-internal-format
 msgid "%i-bit mode not compiled in"
 msgstr ""
 
-#: config/i386/i386-options.c:1983
+#: config/i386/i386-options.c:2050
 #, gcc-internal-format
 msgid "%<generic%> CPU can be used only for %<-mtune=%> switch"
 msgstr ""
 
-#: config/i386/i386-options.c:1985
+#: config/i386/i386-options.c:2052
 #, gcc-internal-format
 msgid "%<generic%> CPU can be used only for %<target(\"tune=\")%> attribute"
 msgstr ""
 
-#: config/i386/i386-options.c:1992
+#: config/i386/i386-options.c:2059
 #, gcc-internal-format
 msgid "%<intel%> CPU can be used only for %<-mtune=%> switch"
 msgstr ""
 
-#: config/i386/i386-options.c:1994
+#: config/i386/i386-options.c:2061
 #, gcc-internal-format
 msgid "%<intel%> CPU can be used only for %<target(\"tune=\")%> attribute"
 msgstr ""
 
-#: config/i386/i386-options.c:2002 config/i386/i386-options.c:2339
+#: config/i386/i386-options.c:2069 config/i386/i386-options.c:2436
 #, gcc-internal-format
 msgid "CPU you selected does not support x86-64 instruction set"
 msgstr ""
 
-#: config/i386/i386-options.c:2279
+#: config/i386/i386-options.c:2375
 #, gcc-internal-format
 msgid "bad value (%qs) for %<-march=%> switch"
 msgstr ""
 
-#: config/i386/i386-options.c:2280
+#: config/i386/i386-options.c:2376
 #, gcc-internal-format
 msgid "bad value (%qs) for %<target(\"arch=\")%> attribute"
 msgstr ""
 
-#: config/i386/i386-options.c:2302
+#: config/i386/i386-options.c:2398
 #, gcc-internal-format
 msgid "valid arguments to %<-march=%> switch are: %s; did you mean %qs?"
 msgstr ""
 
-#: config/i386/i386-options.c:2304
+#: config/i386/i386-options.c:2400
 #, gcc-internal-format
 msgid ""
 "valid arguments to %<target(\"arch=\")%> attribute are: %s; did you mean %qs?"
 msgstr ""
 
-#: config/i386/i386-options.c:2309
+#: config/i386/i386-options.c:2405
 #, gcc-internal-format
 msgid "valid arguments to %<-march=%> switch are: %s"
 msgstr ""
 
-#: config/i386/i386-options.c:2310
+#: config/i386/i386-options.c:2406
 #, gcc-internal-format
 msgid "valid arguments to %<target(\"arch=\")%> attribute are: %s"
 msgstr ""
 
-#: config/i386/i386-options.c:2358
+#: config/i386/i386-options.c:2455
 #, gcc-internal-format
 msgid "bad value (%qs) for %<-mtune=%> switch"
 msgstr ""
 
-#: config/i386/i386-options.c:2359
+#: config/i386/i386-options.c:2456
 #, gcc-internal-format
 msgid "bad value (%qs) for %<target(\"tune=\")%> attribute"
 msgstr ""
 
-#: config/i386/i386-options.c:2379
+#: config/i386/i386-options.c:2477
 #, gcc-internal-format
 msgid "valid arguments to %<-mtune=%> switch are: %s; did you mean %qs?"
 msgstr ""
 
-#: config/i386/i386-options.c:2381
+#: config/i386/i386-options.c:2479
 #, gcc-internal-format
 msgid ""
 "valid arguments to %<target(\"tune=\")%> attribute are: %s; did you mean %qs?"
 msgstr ""
 
-#: config/i386/i386-options.c:2386
+#: config/i386/i386-options.c:2484
 #, gcc-internal-format
 msgid "valid arguments to %<-mtune=%> switch are: %s"
 msgstr ""
 
-#: config/i386/i386-options.c:2387
+#: config/i386/i386-options.c:2485
 #, gcc-internal-format
 msgid "valid arguments to %<target(\"tune=\")%> attribute are: %s"
 msgstr ""
 
-#: config/i386/i386-options.c:2411
+#: config/i386/i386-options.c:2509
 #, gcc-internal-format
 msgid "%<-mregparm%> is ignored in 64-bit mode"
 msgstr ""
 
-#: config/i386/i386-options.c:2413
+#: config/i386/i386-options.c:2511
 #, gcc-internal-format
 msgid "%<-mregparm%> is ignored for Intel MCU psABI"
 msgstr ""
 
-#: config/i386/i386-options.c:2416
+#: config/i386/i386-options.c:2514
 #, gcc-internal-format
 msgid "%<-mregparm=%d%> is not between 0 and %d"
 msgstr ""
 
-#: config/i386/i386-options.c:2444
+#: config/i386/i386-options.c:2542
 #, gcc-internal-format
 msgid "%<-mrtd%> is ignored in 64bit mode"
 msgstr ""
 
-#: config/i386/i386-options.c:2445
+#: config/i386/i386-options.c:2543
 #, gcc-internal-format
 msgid "%<target(\"rtd\")%> is ignored in 64bit mode"
 msgstr ""
 
-#: config/i386/i386-options.c:2524
+#: config/i386/i386-options.c:2622
 #, gcc-internal-format
 msgid "%<-mpreferred-stack-boundary%> is not supported for this target"
 msgstr ""
 
-#: config/i386/i386-options.c:2527
+#: config/i386/i386-options.c:2625
 #, gcc-internal-format
 msgid "%<-mpreferred-stack-boundary=%d%> is not between %d and %d"
 msgstr ""
 
-#: config/i386/i386-options.c:2550
+#: config/i386/i386-options.c:2648
 #, gcc-internal-format
 msgid "%<-mincoming-stack-boundary=%d%> is not between %d and 12"
 msgstr ""
 
-#: config/i386/i386-options.c:2563
+#: config/i386/i386-options.c:2661
 #, gcc-internal-format
 msgid "%<-mnop-mcount%> is not compatible with this target"
 msgstr ""
 
-#: config/i386/i386-options.c:2566
+#: config/i386/i386-options.c:2664
 #, gcc-internal-format
 msgid "%<-mnop-mcount%> is not implemented for %<-fPIC%>"
 msgstr ""
 
-#: config/i386/i386-options.c:2572
+#: config/i386/i386-options.c:2670
 #, gcc-internal-format
 msgid "%<-msseregparm%> used without SSE enabled"
 msgstr ""
 
-#: config/i386/i386-options.c:2573
+#: config/i386/i386-options.c:2671
 #, gcc-internal-format
 msgid "%<target(\"sseregparm\")%> used without SSE enabled"
 msgstr ""
 
-#: config/i386/i386-options.c:2583
+#: config/i386/i386-options.c:2681
 #, gcc-internal-format
 msgid "SSE instruction set disabled, using 387 arithmetics"
 msgstr ""
 
-#: config/i386/i386-options.c:2590
+#: config/i386/i386-options.c:2688
 #, gcc-internal-format
 msgid "387 instruction set disabled, using SSE arithmetics"
 msgstr ""
 
-#: config/i386/i386-options.c:2640
+#: config/i386/i386-options.c:2738
 #, gcc-internal-format
 msgid "stack probing requires %<-maccumulate-outgoing-args%> for correctness"
 msgstr ""
 
-#: config/i386/i386-options.c:2642
+#: config/i386/i386-options.c:2740
 #, gcc-internal-format
 msgid ""
 "stack probing requires %<target(\"accumulate-outgoing-args\")%> for "
 "correctness"
 msgstr ""
 
-#: config/i386/i386-options.c:2656
+#: config/i386/i386-options.c:2754
 #, gcc-internal-format
 msgid "fixed ebp register requires %<-maccumulate-outgoing-args%>"
 msgstr ""
 
-#: config/i386/i386-options.c:2658
+#: config/i386/i386-options.c:2756
 #, gcc-internal-format
 msgid "fixed ebp register requires %<target(\"accumulate-outgoing-args\")%>"
 msgstr ""
 
-#: config/i386/i386-options.c:2712
+#: config/i386/i386-options.c:2810
 #, gcc-internal-format
 msgid "%<-mfentry%> isn%'t supported for 32-bit in combination with %<-fpic%>"
 msgstr ""
 
-#: config/i386/i386-options.c:2715
+#: config/i386/i386-options.c:2813
 #, gcc-internal-format
 msgid "%<-mno-fentry%> isn%'t compatible with SEH"
 msgstr ""
 
-#: config/i386/i386-options.c:2719
+#: config/i386/i386-options.c:2817
 #, gcc-internal-format
 msgid "%<-mcall-ms2sysv-xlogues%> isn%'t currently supported with SEH"
 msgstr ""
 
-#: config/i386/i386-options.c:2784
+#: config/i386/i386-options.c:2882
 #, gcc-internal-format
 msgid "unknown option for %<-mrecip=%s%>"
 msgstr ""
 
-#: config/i386/i386-options.c:2843
+#: config/i386/i386-options.c:2941
 #, gcc-internal-format
 msgid "%qs is not a valid number in %<-mstack-protector-guard-offset=%>"
 msgstr ""
 
-#: config/i386/i386-options.c:2848
+#: config/i386/i386-options.c:2946
 #, gcc-internal-format
 msgid "%qs is not a valid offset in %<-mstack-protector-guard-offset=%>"
 msgstr ""
 
-#: config/i386/i386-options.c:2876
+#: config/i386/i386-options.c:2974
 #, gcc-internal-format
 msgid "%qs is not a valid base register in %<-mstack-protector-guard-reg=%>"
 msgstr ""
 
-#: config/i386/i386-options.c:3038
+#: config/i386/i386-options.c:3022
+#, gcc-internal-format
+msgid "%<-fcf-protection%> is not compatible with this target"
+msgstr ""
+
+#: config/i386/i386-options.c:3149
 #, gcc-internal-format
 msgid "interrupt and naked attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3053
+#: config/i386/i386-options.c:3164
 #, gcc-internal-format
 msgid "only DWARF debug format is supported for interrupt service routine"
 msgstr ""
 
-#: config/i386/i386-options.c:3102
+#: config/i386/i386-options.c:3213
 #, gcc-internal-format
 msgid "%<-mindirect-branch=%s%> and %<-mcmodel=large%> are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3112
+#: config/i386/i386-options.c:3223
 #, gcc-internal-format
 msgid "%<-mindirect-branch%> and %<-fcf-protection%> are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3147
+#: config/i386/i386-options.c:3258
 #, gcc-internal-format
 msgid "%<-mfunction-return=%s%> and %<-mcmodel=large%> are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3157
+#: config/i386/i386-options.c:3268
 #, gcc-internal-format
 msgid "%<-mfunction-return%> and %<-fcf-protection%> are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3251
+#: config/i386/i386-options.c:3381
 #, gcc-internal-format
 msgid "%s instructions aren%'t allowed in an exception service routine"
 msgstr ""
 
-#: config/i386/i386-options.c:3253
+#: config/i386/i386-options.c:3383
 #, gcc-internal-format
 msgid "%s instructions aren%'t allowed in an interrupt service routine"
 msgstr ""
 
-#: config/i386/i386-options.c:3257
+#: config/i386/i386-options.c:3387
 #, gcc-internal-format
 msgid ""
 "%s instructions aren%'t allowed in a function with the "
 "%<no_caller_saved_registers%> attribute"
 msgstr ""
 
-#: config/i386/i386-options.c:3304 config/i386/i386-options.c:3355
+#: config/i386/i386-options.c:3434 config/i386/i386-options.c:3485
 #, gcc-internal-format
 msgid "fastcall and regparm attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3309
+#: config/i386/i386-options.c:3439
 #, gcc-internal-format
 msgid "regparam and thiscall attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3316 config/i386/i386-options.c:3544
+#: config/i386/i386-options.c:3446 config/i386/i386-options.c:3674
 #, gcc-internal-format
 msgid "%qE attribute requires an integer constant argument"
 msgstr ""
 
-#: config/i386/i386-options.c:3322
+#: config/i386/i386-options.c:3452
 #, gcc-internal-format
 msgid "argument to %qE attribute larger than %d"
 msgstr ""
 
-#: config/i386/i386-options.c:3347 config/i386/i386-options.c:3390
+#: config/i386/i386-options.c:3477 config/i386/i386-options.c:3520
 #, gcc-internal-format
 msgid "fastcall and cdecl attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3351
+#: config/i386/i386-options.c:3481
 #, gcc-internal-format
 msgid "fastcall and stdcall attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3359 config/i386/i386-options.c:3408
+#: config/i386/i386-options.c:3489 config/i386/i386-options.c:3538
 #, gcc-internal-format
 msgid "fastcall and thiscall attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3369 config/i386/i386-options.c:3386
+#: config/i386/i386-options.c:3499 config/i386/i386-options.c:3516
 #, gcc-internal-format
 msgid "stdcall and cdecl attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3373
+#: config/i386/i386-options.c:3503
 #, gcc-internal-format
 msgid "stdcall and fastcall attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3377 config/i386/i386-options.c:3404
+#: config/i386/i386-options.c:3507 config/i386/i386-options.c:3534
 #, gcc-internal-format
 msgid "stdcall and thiscall attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3394 config/i386/i386-options.c:3412
+#: config/i386/i386-options.c:3524 config/i386/i386-options.c:3542
 #, gcc-internal-format
 msgid "cdecl and thiscall attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3400
+#: config/i386/i386-options.c:3530
 #, gcc-internal-format
 msgid "%qE attribute is used for non-class method"
 msgstr ""
 
-#: config/i386/i386-options.c:3504 config/rs6000/rs6000.c:19642
+#: config/i386/i386-options.c:3634 config/rs6000/rs6000.c:20221
 #, gcc-internal-format
 msgid "%qE incompatible attribute ignored"
 msgstr ""
 
-#: config/i386/i386-options.c:3531
+#: config/i386/i386-options.c:3661
 #, gcc-internal-format
 msgid "%qE attribute only available for 32-bit"
 msgstr ""
 
-#: config/i386/i386-options.c:3552
+#: config/i386/i386-options.c:3682
 #, gcc-internal-format
 msgid "argument to %qE attribute is neither zero, nor one"
 msgstr ""
 
-#: config/i386/i386-options.c:3586 config/i386/i386-options.c:3596
+#: config/i386/i386-options.c:3716 config/i386/i386-options.c:3726
 #, gcc-internal-format
 msgid "%qs and %qs attributes are not compatible"
 msgstr ""
 
-#: config/i386/i386-options.c:3623 config/i386/i386-options.c:3645
-#: config/ia64/ia64.c:812 config/s390/s390.c:1151
+#: config/i386/i386-options.c:3753 config/i386/i386-options.c:3775
+#: config/ia64/ia64.c:812 config/s390/s390.c:1161
 #, gcc-internal-format
 msgid "%qE attribute requires a string constant argument"
 msgstr ""
 
-#: config/i386/i386-options.c:3633 config/i386/i386-options.c:3655
-#: config/s390/s390.c:1180
+#: config/i386/i386-options.c:3763 config/i386/i386-options.c:3785
+#: config/s390/s390.c:1190
 #, gcc-internal-format
 msgid "argument to %qE attribute is not (keep|thunk|thunk-inline|thunk-extern)"
 msgstr ""
 
-#: config/i386/i386-options.c:3687
+#: config/i386/i386-options.c:3817
 #, gcc-internal-format
 msgid "interrupt service routine should have a pointer as the first argument"
 msgstr ""
 
-#: config/i386/i386-options.c:3694
+#: config/i386/i386-options.c:3824
 #, gcc-internal-format
 msgid "interrupt service routine should have %qs as the second argument"
 msgstr ""
 
-#: config/i386/i386-options.c:3705
+#: config/i386/i386-options.c:3835
 #, gcc-internal-format
 msgid ""
 "interrupt service routine can only have a pointer argument and an optional "
 "integer argument"
 msgstr ""
 
-#: config/i386/i386-options.c:3708
+#: config/i386/i386-options.c:3838
 #, gcc-internal-format
 msgid "interrupt service routine must return %<void%>"
 msgstr ""
 
-#: config/i386/i386.c:1191
+#: config/i386/i386.c:1204
 #, gcc-internal-format
 msgid "calling %qD with attribute sseregparm without SSE/SSE2 enabled"
 msgstr ""
 
-#: config/i386/i386.c:1194
+#: config/i386/i386.c:1207
 #, gcc-internal-format
 msgid "calling %qT with attribute sseregparm without SSE/SSE2 enabled"
 msgstr ""
 
-#: config/i386/i386.c:1506
+#: config/i386/i386.c:1511
 #, gcc-internal-format
 msgid "X32 does not support %<ms_abi%> attribute"
 msgstr ""
 
-#: config/i386/i386.c:1540
+#: config/i386/i386.c:1545
 #, gcc-internal-format
 msgid "%<ms_hook_prologue%> attribute is not compatible with nested function"
 msgstr ""
 
-#: config/i386/i386.c:1883
+#: config/i386/i386.c:1888
 #, gcc-internal-format
 msgid "AVX512F vector argument without AVX512F enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.c:1889
+#: config/i386/i386.c:1894
 #, gcc-internal-format
 msgid "AVX512F vector return without AVX512F enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.c:1903
+#: config/i386/i386.c:1908
 #, gcc-internal-format
 msgid "AVX vector argument without AVX enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.c:1909
+#: config/i386/i386.c:1914
 #, gcc-internal-format
 msgid "AVX vector return without AVX enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.c:1925
+#: config/i386/i386.c:1930
 #, gcc-internal-format
 msgid "SSE vector argument without SSE enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.c:1931
+#: config/i386/i386.c:1936
 #, gcc-internal-format
 msgid "SSE vector return without SSE enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.c:1947
+#: config/i386/i386.c:1952
 #, gcc-internal-format
 msgid "MMX vector argument without MMX enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.c:1953
+#: config/i386/i386.c:1958
 #, gcc-internal-format
 msgid "MMX vector return without MMX enabled changes the ABI"
 msgstr ""
 
-#: config/i386/i386.c:2138
+#: config/i386/i386.c:2143
 #, gcc-internal-format
 msgid ""
 "the ABI of passing struct with a flexible array member has changed in GCC 4.4"
 msgstr ""
 
-#: config/i386/i386.c:2255
+#: config/i386/i386.c:2260
 #, gcc-internal-format
 msgid "the ABI of passing union with %<long double%> has changed in GCC 4.4"
 msgstr ""
 
-#: config/i386/i386.c:2373
+#: config/i386/i386.c:2378
 #, gcc-internal-format
 msgid ""
 "the ABI of passing structure with %<complex float%> member has changed in "
 "GCC 4.4"
 msgstr ""
 
-#: config/i386/i386.c:2536
+#: config/i386/i386.c:2541
 #, gcc-internal-format
 msgid "SSE register return with SSE disabled"
 msgstr ""
 
-#: config/i386/i386.c:2542
+#: config/i386/i386.c:2547
 #, gcc-internal-format
 msgid "SSE register argument with SSE disabled"
 msgstr ""
 
-#: config/i386/i386.c:2558
+#: config/i386/i386.c:2563
 #, gcc-internal-format
 msgid "x87 register return with x87 disabled"
 msgstr ""
 
-#: config/i386/i386.c:2868 config/i386/i386.c:3105 config/i386/i386.c:3600
+#: config/i386/i386.c:2873 config/i386/i386.c:3110 config/i386/i386.c:3901
 #, gcc-internal-format
 msgid "calling %qD with SSE calling convention without SSE/SSE2 enabled"
 msgstr ""
 
-#: config/i386/i386.c:2870 config/i386/i386.c:3107 config/i386/i386.c:3602
+#: config/i386/i386.c:2875 config/i386/i386.c:3112 config/i386/i386.c:3903
 #, gcc-internal-format
 msgid ""
 "this is a GCC bug that can be worked around by adding attribute used to "
 "function called"
 msgstr ""
 
-#: config/i386/i386.c:3506
+#: config/i386/i386.c:3511
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "the ABI for passing parameters with %d-byte alignment has changed in GCC 4.6"
 msgstr ""
 
-#: config/i386/i386.c:6018
+#: config/i386/i386.c:6318
 #, gcc-internal-format
 msgid "%<-mcall-ms2sysv-xlogues%> is not compatible with %s"
 msgstr ""
 
-#: config/i386/i386.c:7883
+#: config/i386/i386.c:8189
 #, gcc-internal-format
 msgid ""
 "%<ms_hook_prologue%> attribute is not compatible with %<-mfentry%> for 32-bit"
 msgstr ""
 
-#: config/i386/i386.c:7973
+#: config/i386/i386.c:8279
 #, gcc-internal-format
 msgid ""
 "Dynamic Realign Argument Pointer (DRAP) not supported in interrupt service "
@@ -37736,12 +38875,12 @@ msgid ""
 "return."
 msgstr ""
 
-#: config/i386/i386.c:9300
+#: config/i386/i386.c:9606
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> does not support fastcall with nested function"
 msgstr ""
 
-#: config/i386/i386.c:9320
+#: config/i386/i386.c:9626
 #, gcc-internal-format
 msgid ""
 "%<-fsplit-stack%> does not support 2 register parameters for a nested "
@@ -37750,75 +38889,84 @@ msgstr ""
 
 #. FIXME: We could make this work by pushing a register
 #. around the addition and comparison.
-#: config/i386/i386.c:9331
+#: config/i386/i386.c:9637
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> does not support 3 register parameters"
 msgstr ""
 
-#: config/i386/i386.c:12282
+#: config/i386/i386.c:12594
 #, gcc-internal-format
 msgid "%<V%> modifier on non-integer register"
 msgstr ""
 
-#: config/i386/i386.c:12293 config/i386/i386.c:12307
+#: config/i386/i386.c:12605 config/i386/i386.c:12619
 #, gcc-internal-format
 msgid "unsupported size for integer register"
 msgstr ""
 
-#: config/i386/i386.c:12339
+#: config/i386/i386.c:12651
 #, gcc-internal-format
 msgid "extended registers have no high halves"
 msgstr ""
 
-#: config/i386/i386.c:12354
+#: config/i386/i386.c:12666
 #, gcc-internal-format
 msgid "unsupported operand size for extended register"
 msgstr ""
 
-#: config/i386/i386.c:12548
+#: config/i386/i386.c:12859
 #, gcc-internal-format
 msgid "non-integer operand used with operand code %<z%>"
 msgstr ""
 
-#: config/i386/i386.c:16485
+#: config/i386/i386.c:16820
 #, gcc-internal-format
 msgid ""
 "empty class %qT parameter passing ABI changes in %<-fabi-version=12%> (GCC 8)"
 msgstr ""
 
-#: config/i386/i386.c:22015
+#: config/i386/i386.c:20721
+msgid "the alignment of %<_Atomic %T%> fields changed in %{GCC 11.1%}"
+msgstr ""
+
+#: config/i386/i386.c:20817
+#, gcc-internal-format
+msgid "profiling %<-mcmodel=large%> with PIC is not supported"
+msgstr ""
+
+#: config/i386/i386.c:22470
 #, gcc-internal-format
 msgid "unknown architecture specific memory model"
 msgstr ""
 
-#: config/i386/i386.c:22022
+#: config/i386/i386.c:22477
 #, gcc-internal-format
 msgid "%<HLE_ACQUIRE%> not used with %<ACQUIRE%> or stronger memory model"
 msgstr ""
 
-#: config/i386/i386.c:22029
+#: config/i386/i386.c:22484
 #, gcc-internal-format
 msgid "%<HLE_RELEASE%> not used with %<RELEASE%> or stronger memory model"
 msgstr ""
 
-#: config/i386/i386.c:22075
+#: config/i386/i386.c:22530
 #, gcc-internal-format
 msgid "unsupported return type %qT for simd"
 msgstr ""
 
-#: config/i386/i386.c:22105
+#: config/i386/i386.c:22560
 #, gcc-internal-format
 msgid "unsupported argument type %qT for simd"
 msgstr ""
 
-#: config/i386/intelmic-mkoffload.c:465
+#: config/i386/intelmic-mkoffload.c:601
 #, gcc-internal-format
-msgid "output file not specified"
+msgid "COLLECT_GCC must be set"
 msgstr ""
 
-#: config/i386/intelmic-mkoffload.c:561
+#: config/i386/intelmic-mkoffload.c:641
 #, gcc-internal-format
-msgid "COLLECT_GCC must be set"
+msgid "output file not specified"
 msgstr ""
 
 #: config/i386/winnt.c:83
@@ -37894,7 +39042,7 @@ msgstr ""
 msgid "argument %qd is not a constant"
 msgstr ""
 
-#: config/iq2000/iq2000.c:2893 config/xtensa/xtensa.c:2536
+#: config/iq2000/iq2000.c:2893 config/xtensa/xtensa.c:2551
 #, gcc-internal-format
 msgid "PRINT_OPERAND_ADDRESS, null pointer"
 msgstr ""
@@ -37904,7 +39052,7 @@ msgstr ""
 msgid "PRINT_OPERAND: Unknown punctuation %<%c%>"
 msgstr ""
 
-#: config/iq2000/iq2000.c:3057 config/xtensa/xtensa.c:2379
+#: config/iq2000/iq2000.c:3057 config/xtensa/xtensa.c:2394
 #, gcc-internal-format
 msgid "PRINT_OPERAND null pointer"
 msgstr ""
@@ -38057,12 +39205,12 @@ msgstr ""
 msgid "%qE cannot have both %qs and %qs attributes"
 msgstr ""
 
-#: config/mips/mips.c:1473 config/mips/mips.c:1479 config/nios2/nios2.c:4448
+#: config/mips/mips.c:1473 config/mips/mips.c:1479 config/nios2/nios2.c:4444
 #, gcc-internal-format
 msgid "%qE redeclared with conflicting %qs attributes"
 msgstr ""
 
-#: config/mips/mips.c:1511 config/mips/mips.c:1565 config/riscv/riscv.c:3037
+#: config/mips/mips.c:1511 config/mips/mips.c:1565 config/riscv/riscv.c:3042
 #, gcc-internal-format
 msgid "%qE attribute requires a string argument"
 msgstr ""
@@ -38210,11 +39358,6 @@ msgstr ""
 msgid "%<-mfpxx%> requires %<-mlra%>"
 msgstr ""
 
-#: config/mips/mips.c:20008 config/mips/mips.c:20010 config/mips/mips.c:20023
-#, gcc-internal-format
-msgid "%qs is incompatible with %qs"
-msgstr ""
-
 #. We have traditionally allowed non-abicalls code to use
 #. an LP64 form of o64.  However, it would take a bit more
 #. effort to support the combination of 32-bit GOT entries
@@ -38335,55 +39478,55 @@ msgstr ""
 msgid "mips16 function profiling"
 msgstr ""
 
-#: config/mmix/mmix.c:317
+#: config/mmix/mmix.c:320
 #, gcc-internal-format
 msgid "%<-f%s%> not supported: ignored"
 msgstr ""
 
-#: config/mmix/mmix.c:775
+#: config/mmix/mmix.c:778
 #, gcc-internal-format
 msgid "support for mode %qs"
 msgstr ""
 
-#: config/mmix/mmix.c:789
+#: config/mmix/mmix.c:792
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "too large function value type, needs %d registers, have only %d registers "
 "for this"
 msgstr ""
 
-#: config/mmix/mmix.c:970
+#: config/mmix/mmix.c:973
 #, gcc-internal-format
 msgid "function_profiler support for MMIX"
 msgstr ""
 
-#: config/mmix/mmix.c:993
+#: config/mmix/mmix.c:996
 #, gcc-internal-format
 msgid "MMIX Internal: Last named vararg would not fit in a register"
 msgstr ""
 
-#: config/mmix/mmix.c:1627 config/mmix/mmix.c:1651 config/mmix/mmix.c:1767
+#: config/mmix/mmix.c:1630 config/mmix/mmix.c:1654 config/mmix/mmix.c:1770
 #, gcc-internal-format, gfc-internal-format
 msgid "MMIX Internal: Bad register: %d"
 msgstr ""
 
 #. Presumably there's a missing case above if we get here.
-#: config/mmix/mmix.c:1759
+#: config/mmix/mmix.c:1762
 #, gcc-internal-format
 msgid "MMIX Internal: Missing %qc case in mmix_print_operand"
 msgstr ""
 
-#: config/mmix/mmix.c:2044
+#: config/mmix/mmix.c:2048
 #, gcc-internal-format
 msgid "stack frame not a multiple of 8 bytes: %wd"
 msgstr ""
 
-#: config/mmix/mmix.c:2282
+#: config/mmix/mmix.c:2301
 #, gcc-internal-format
 msgid "stack frame not a multiple of octabyte: %wd"
 msgstr ""
 
-#: config/mmix/mmix.c:2568 config/mmix/mmix.c:2627
+#: config/mmix/mmix.c:2587 config/mmix/mmix.c:2646
 #, gcc-internal-format, gfc-internal-format
 msgid "MMIX Internal: %s is not a shiftable int"
 msgstr ""
@@ -38480,31 +39623,31 @@ msgstr ""
 msgid "could not locate MCU data file %<devices.csv%>"
 msgstr ""
 
-#: config/msp430/msp430.c:184
+#: config/msp430/msp430.c:181
 #, gcc-internal-format
 msgid "MCU %qs supports %s ISA but %<-mcpu%> option is set to %s"
 msgstr ""
 
-#: config/msp430/msp430.c:192
+#: config/msp430/msp430.c:189
 #, gcc-internal-format
 msgid ""
 "MCU %qs does not have hardware multiply support, but %<-mhwmult%> is set to "
 "%s"
 msgstr ""
 
-#: config/msp430/msp430.c:201
+#: config/msp430/msp430.c:198
 #, gcc-internal-format
 msgid ""
 "MCU %qs supports %s hardware multiply, but %<-mhwmult%> is set to 16-bit"
 msgstr ""
 
-#: config/msp430/msp430.c:206
+#: config/msp430/msp430.c:203
 #, gcc-internal-format
 msgid ""
 "MCU %qs supports %s hardware multiply, but %<-mhwmult%> is set to 32-bit"
 msgstr ""
 
-#: config/msp430/msp430.c:211
+#: config/msp430/msp430.c:208
 #, gcc-internal-format
 msgid ""
 "MCU %qs supports %s hardware multiply, but %<-mhwmult%> is set to f5series"
@@ -38513,7 +39656,7 @@ msgstr ""
 #: config/msp430/msp430.c:225
 #, gcc-internal-format
 msgid ""
-"Unrecognized MCU name %qs, assuming that it is just a MSP430 with no "
+"Unrecognized MCU name %qs, assuming that it is just a MSP430X with no "
 "hardware multiply.\n"
 "Use the %<-mcpu%> and %<-mhwmult%> options to set these explicitly."
 msgstr ""
@@ -38528,150 +39671,140 @@ msgstr ""
 #: config/msp430/msp430.c:244
 #, gcc-internal-format
 msgid ""
-"Unrecognized MCU name %qs, assuming that it just supports the MSP430 ISA.\n"
+"Unrecognized MCU name %qs, assuming that it just supports the MSP430X ISA.\n"
 "Use the %<-mcpu%> option to set the ISA explicitly."
 msgstr ""
 
-#: config/msp430/msp430.c:252
+#: config/msp430/msp430.c:250
 #, gcc-internal-format
 msgid "Unrecognized MCU name %qs."
 msgstr ""
 
-#: config/msp430/msp430.c:262
+#: config/msp430/msp430.c:255
 #, gcc-internal-format
 msgid "%<-mlarge%> requires a 430X-compatible %<-mmcu=%>"
 msgstr ""
 
-#: config/msp430/msp430.c:265
+#: config/msp430/msp430.c:258
 #, gcc-internal-format
 msgid "%<-mcode-region=either%> requires the large memory model (%<-mlarge%>)"
 msgstr ""
 
-#: config/msp430/msp430.c:268
+#: config/msp430/msp430.c:261
 #, gcc-internal-format
 msgid "%<-mcode-region=upper%> requires the large memory model (%<-mlarge%>)"
 msgstr ""
 
-#: config/msp430/msp430.c:272
+#: config/msp430/msp430.c:265
 #, gcc-internal-format
 msgid "%<-mdata-region=either%> requires the large memory model (%<-mlarge%>)"
 msgstr ""
 
-#: config/msp430/msp430.c:275
+#: config/msp430/msp430.c:268
 #, gcc-internal-format
 msgid "%<-mdata-region=upper%> requires the large memory model (%<-mlarge%>)"
 msgstr ""
 
-#: config/msp430/msp430.c:298
+#: config/msp430/msp430.c:291
 #, gcc-internal-format
 msgid "%<-fuse-cxa-atexit%> is not supported for msp430-elf"
 msgstr ""
 
-#: config/msp430/msp430.c:303
+#: config/msp430/msp430.c:296
 #, gcc-internal-format
 msgid ""
 "GCC must be configured with %<--enable-newlib-nano-formatted-io%> to use %<-"
 "mtiny-printf%>"
 msgstr ""
 
-#: config/msp430/msp430.c:1306
+#: config/msp430/msp430.c:1895
 #, gcc-internal-format
 msgid "unrecognized interrupt vector argument of %qE attribute"
 msgstr ""
 
-#: config/msp430/msp430.c:1315
+#: config/msp430/msp430.c:1904
 #, gcc-internal-format
 msgid "numeric argument of %qE attribute must be in range 0..63"
 msgstr ""
 
-#: config/msp430/msp430.c:1321
+#: config/msp430/msp430.c:1910
 #, gcc-internal-format
 msgid "argument of %qE attribute is not a string constant or number"
 msgstr ""
 
-#: config/msp430/msp430.c:1350
+#: config/msp430/msp430.c:1939
 #, gcc-internal-format
 msgid "critical attribute has no effect on interrupt functions"
 msgstr ""
 
-#: config/msp430/msp430.c:1386 config/msp430/msp430.c:1435
+#: config/msp430/msp430.c:1975
 #, gcc-internal-format
 msgid "ignoring attribute %qE because it conflicts with attribute %<noinit%>"
 msgstr ""
 
-#: config/msp430/msp430.c:1389 config/msp430/msp430.c:1427
+#: config/msp430/msp430.c:1978
 #, gcc-internal-format
 msgid "ignoring attribute %qE because it conflicts with attribute %<section%>"
 msgstr ""
 
-#: config/msp430/msp430.c:1399
-#, gcc-internal-format
-msgid "%qE attribute ignored.  Large memory model (%<-mlarge%>) is required."
-msgstr ""
-
-#: config/msp430/msp430.c:1441
+#: config/msp430/msp430.c:1981
 #, gcc-internal-format
-msgid "%qE attribute has no effect on automatic variables"
+msgid ""
+"ignoring attribute %qE because it conflicts with attribute %<persistent%>"
 msgstr ""
 
-#: config/msp430/msp430.c:1443
+#: config/msp430/msp430.c:1991
 #, gcc-internal-format
-msgid "variables marked with %qE attribute must be initialized"
+msgid "%qE attribute ignored.  Large memory model (%<-mlarge%>) is required."
 msgstr ""
 
-#: config/msp430/msp430.c:1574
+#: config/msp430/msp430.c:2101
 #, gcc-internal-format
 msgid "ignoring attribute %qE because it conflicts with attribute %<lower%>"
 msgstr ""
 
-#: config/msp430/msp430.c:1577
+#: config/msp430/msp430.c:2104
 #, gcc-internal-format
 msgid "ignoring attribute %qE because it conflicts with attribute %<upper%>"
 msgstr ""
 
-#: config/msp430/msp430.c:1580
+#: config/msp430/msp430.c:2107
 #, gcc-internal-format
 msgid "ignoring attribute %qE because it conflicts with attribute %<either%>"
 msgstr ""
 
-#: config/msp430/msp430.c:1583
-#, gcc-internal-format
-msgid ""
-"ignoring attribute %qE because it conflicts with attribute %<persistent%>"
-msgstr ""
-
-#: config/msp430/msp430.c:1743
+#: config/msp430/msp430.c:2267
 #, gcc-internal-format
 msgid "argument to interrupt attribute is unsupported for weak functions"
 msgstr ""
 
-#: config/msp430/msp430.c:2253
+#: config/msp430/msp430.c:2747
 #, gcc-internal-format
 msgid "__delay_cycles() only takes constant arguments"
 msgstr ""
 
-#: config/msp430/msp430.c:2263
+#: config/msp430/msp430.c:2757
 #, gcc-internal-format
 msgid "__delay_cycles only takes non-negative cycle counts"
 msgstr ""
 
-#: config/msp430/msp430.c:2284
+#: config/msp430/msp430.c:2778
 #, gcc-internal-format
 msgid "__delay_cycles is limited to 32-bit loop counts"
 msgstr ""
 
-#: config/msp430/msp430.c:2355
+#: config/msp430/msp430.c:2849
 #, gcc-internal-format
 msgid "MSP430 builtin functions only work inside interrupt handlers"
 msgstr ""
 
-#: config/msp430/msp430.c:2367 config/pru/pru.c:2821 config/rx/rx.c:2658
-#: config/xtensa/xtensa.c:3480 config/xtensa/xtensa.c:3506
+#: config/msp430/msp430.c:2861 config/pru/pru.c:2870 config/rx/rx.c:2666
+#: config/xtensa/xtensa.c:3495 config/xtensa/xtensa.c:3521
 #, gcc-internal-format
 msgid "bad builtin code"
 msgstr ""
 
-#: config/nds32/nds32-intrinsic.c:126 config/nios2/nios2.c:3838
+#: config/nds32/nds32-intrinsic.c:126 config/nios2/nios2.c:3831
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid argument to built-in function %s"
 msgstr ""
@@ -38841,172 +39974,152 @@ msgstr ""
 msgid "switch %<-mcustom-%s%> is required for double precision floating point"
 msgstr ""
 
-#: config/nios2/nios2.c:1195
-#, gcc-internal-format
-msgid ""
-"switch %<-mcustom-%s%> has no effect unless %<-funsafe-math-optimizations%> "
-"is specified"
-msgstr ""
-
-#: config/nios2/nios2.c:1205
-#, gcc-internal-format
-msgid ""
-"switch %<-mcustom-%s%> has no effect unless %<-ffinite-math-only%> is "
-"specified"
-msgstr ""
-
-#: config/nios2/nios2.c:1214
-#, gcc-internal-format
-msgid ""
-"switch %<-mcustom-%s%> has no effect unless %<-fno-math-errno%> is specified"
-msgstr ""
-
-#: config/nios2/nios2.c:1219
+#: config/nios2/nios2.c:1191
 #, gcc-internal-format
 msgid ""
 "conflicting use of %<-mcustom%> switches, target attributes, and/or "
 "%<__builtin_custom_%> functions"
 msgstr ""
 
-#: config/nios2/nios2.c:1321
+#: config/nios2/nios2.c:1314
 #, gcc-internal-format
 msgid "ignoring unrecognized switch %<-mcustom-fpu-cfg%> value %<%s%>"
 msgstr ""
 
-#: config/nios2/nios2.c:1340
+#: config/nios2/nios2.c:1333
 #, gcc-internal-format
 msgid "switch %<-mcustom-%s%> value %d must be between 0 and 255"
 msgstr ""
 
-#: config/nios2/nios2.c:1363
+#: config/nios2/nios2.c:1356
 #, gcc-internal-format
 msgid "position-independent code requires the Linux ABI"
 msgstr ""
 
-#: config/nios2/nios2.c:1366
+#: config/nios2/nios2.c:1359
 #, gcc-internal-format
 msgid "PIC support for %<-fstack-limit-symbol%>"
 msgstr ""
 
-#: config/nios2/nios2.c:1388
+#: config/nios2/nios2.c:1381
 #, gcc-internal-format
 msgid "%<-mgpopt%> not supported with PIC."
 msgstr ""
 
-#: config/nios2/nios2.c:1390
+#: config/nios2/nios2.c:1383
 #, gcc-internal-format
 msgid "%<-mgprel-sec=%> not supported with PIC."
 msgstr ""
 
-#: config/nios2/nios2.c:1392
+#: config/nios2/nios2.c:1385
 #, gcc-internal-format
 msgid "%<-mr0rel-sec=%> not supported with PIC."
 msgstr ""
 
-#: config/nios2/nios2.c:1400
+#: config/nios2/nios2.c:1393
 #, gcc-internal-format
 msgid "%<-mgprel-sec=%> argument is not a valid regular expression."
 msgstr ""
 
-#: config/nios2/nios2.c:1406
+#: config/nios2/nios2.c:1399
 #, gcc-internal-format
 msgid "%<-mr0rel-sec=%> argument is not a valid regular expression."
 msgstr ""
 
-#: config/nios2/nios2.c:1417
+#: config/nios2/nios2.c:1410
 #, gcc-internal-format
 msgid "BMX instructions are only supported with R2 architecture"
 msgstr ""
 
-#: config/nios2/nios2.c:1419
+#: config/nios2/nios2.c:1412
 #, gcc-internal-format
 msgid "CDX instructions are only supported with R2 architecture"
 msgstr ""
 
-#: config/nios2/nios2.c:1424
+#: config/nios2/nios2.c:1417
 #, gcc-internal-format
 msgid "R2 architecture is little-endian only"
 msgstr ""
 
-#: config/nios2/nios2.c:3584
+#: config/nios2/nios2.c:3577
 #, gcc-internal-format
 msgid ""
 "Cannot call %<__builtin_custom_%s%> without specifying switch %<-mcustom-%s%>"
 msgstr ""
 
-#: config/nios2/nios2.c:3692
+#: config/nios2/nios2.c:3685
 #, gcc-internal-format
 msgid ""
 "custom instruction opcode must be compile time constant in the range 0-255 "
 "for %<__builtin_custom_%s%>"
 msgstr ""
 
-#: config/nios2/nios2.c:3897
+#: config/nios2/nios2.c:3890
 #, gcc-internal-format, gfc-internal-format
 msgid "Control register number must be in range 0-31 for %s"
 msgstr ""
 
-#: config/nios2/nios2.c:3925
+#: config/nios2/nios2.c:3918
 #, gcc-internal-format, gfc-internal-format
 msgid "Register number must be in range 0-31 for %s"
 msgstr ""
 
-#: config/nios2/nios2.c:3932
+#: config/nios2/nios2.c:3925
 #, gcc-internal-format, gfc-internal-format
 msgid "The immediate value must fit into a %d-bit integer for %s"
 msgstr ""
 
-#: config/nios2/nios2.c:3982
+#: config/nios2/nios2.c:3975
 #, gcc-internal-format
 msgid "The ENI instruction operand must be either 0 or 1"
 msgstr ""
 
-#: config/nios2/nios2.c:4010
+#: config/nios2/nios2.c:4003
 #, gcc-internal-format, gfc-internal-format
 msgid "Builtin function %s requires Nios II R%d"
 msgstr ""
 
-#: config/nios2/nios2.c:4090
+#: config/nios2/nios2.c:4083
 #, gcc-internal-format
 msgid "switch %<-mcustom-%s%> conflicts with switch %<-mcustom-%s%>"
 msgstr ""
 
-#: config/nios2/nios2.c:4096 config/nios2/nios2.c:4106
+#: config/nios2/nios2.c:4089 config/nios2/nios2.c:4099
 #, gcc-internal-format
 msgid "call to %<__builtin_custom_%s%> conflicts with switch %<-mcustom-%s%>"
 msgstr ""
 
-#: config/nios2/nios2.c:4212
+#: config/nios2/nios2.c:4207
 #, gcc-internal-format
 msgid "custom-fpu-cfg option does not support %<no-%>"
 msgstr ""
 
-#: config/nios2/nios2.c:4217
+#: config/nios2/nios2.c:4212
 #, gcc-internal-format
 msgid "custom-fpu-cfg option requires configuration argument"
 msgstr ""
 
-#: config/nios2/nios2.c:4246
+#: config/nios2/nios2.c:4241
 #, gcc-internal-format
 msgid "%<no-custom-%s%> does not accept arguments"
 msgstr ""
 
-#: config/nios2/nios2.c:4261
+#: config/nios2/nios2.c:4256
 #, gcc-internal-format
 msgid "%<custom-%s=%> requires argument"
 msgstr ""
 
-#: config/nios2/nios2.c:4271
+#: config/nios2/nios2.c:4266
 #, gcc-internal-format
 msgid "%<custom-%s=%> argument should be a non-negative integer"
 msgstr ""
 
-#: config/nios2/nios2.c:4283
+#: config/nios2/nios2.c:4278
 #, gcc-internal-format
 msgid "%<custom-%s=%> is not recognized as FPU instruction"
 msgstr ""
 
-#: config/nios2/nios2.c:4290
+#: config/nios2/nios2.c:4285
 #, gcc-internal-format
 msgid "%<%s%> is unknown"
 msgstr ""
@@ -39016,17 +40129,17 @@ msgstr ""
 msgid "malformed ptx file"
 msgstr ""
 
-#: config/nvptx/mkoffload.c:469
+#: config/nvptx/mkoffload.c:470
 #, gcc-internal-format
 msgid "offload compiler %s not found (consider using %<-B%>)"
 msgstr ""
 
-#: config/nvptx/mkoffload.c:512
+#: config/nvptx/mkoffload.c:513
 #, gcc-internal-format
 msgid "either %<-fopenacc%> or %<-fopenmp%> must be set"
 msgstr ""
 
-#: config/nvptx/mkoffload.c:594
+#: config/nvptx/mkoffload.c:596
 #, gcc-internal-format
 msgid "cannot open intermediate ptx file"
 msgstr ""
@@ -39047,39 +40160,39 @@ msgid ""
 "static initialization of variable %q+D in %<.shared%> memory is not supported"
 msgstr ""
 
-#: config/nvptx/nvptx.c:2062
+#: config/nvptx/nvptx.c:2153
 #, gcc-internal-format
 msgid "cannot emit unaligned pointers in ptx assembly"
 msgstr ""
 
-#: config/nvptx/nvptx.c:2287
+#: config/nvptx/nvptx.c:2378
 #, gcc-internal-format
 msgid "PTX does not support weak declarations (only weak definitions)"
 msgstr ""
 
-#: config/nvptx/nvptx.c:5058
+#: config/nvptx/nvptx.c:5165
 #, gcc-internal-format
 msgid "%qE attribute requires a void return type"
 msgstr ""
 
-#: config/nvptx/nvptx.c:5081
+#: config/nvptx/nvptx.c:5188
 #, gcc-internal-format
 msgid "%qE attribute not allowed with auto storage class"
 msgstr ""
 
-#: config/nvptx/nvptx.c:5674
+#: config/nvptx/nvptx.c:5781
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "using vector_length (%d) due to call to vector-partitionable routine, "
 "ignoring %d"
 msgstr ""
 
-#: config/nvptx/nvptx.c:5682
+#: config/nvptx/nvptx.c:5789
 #, gcc-internal-format, gfc-internal-format
 msgid "using vector_length (%d), ignoring runtime setting"
 msgstr ""
 
-#: config/nvptx/nvptx.c:5696
+#: config/nvptx/nvptx.c:5803
 #, gcc-internal-format, gfc-internal-format
 msgid "using vector_length (%d), ignoring %d"
 msgstr ""
@@ -39109,7 +40222,7 @@ msgstr ""
 msgid "%<-g%> option disabled"
 msgstr ""
 
-#: config/pa/pa.c:8761
+#: config/pa/pa.c:8895
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "alignment (%u) for %s exceeds maximum alignment for global common data.  "
@@ -39155,70 +40268,80 @@ msgstr ""
 msgid "malformed %<#pragma CTABLE_ENTRY%> variable address"
 msgstr ""
 
-#: config/pru/pru.c:2753
+#: config/pru/pru.c:2777
 #, gcc-internal-format
 msgid "%<__delay_cycles%> only takes constant arguments"
 msgstr ""
 
-#: config/pru/pru.c:2762
+#: config/pru/pru.c:2786
 #, gcc-internal-format
 msgid "%<__delay_cycles%> only takes non-negative cycle counts"
 msgstr ""
 
-#: config/pru/pru.c:2775
+#: config/pru/pru.c:2799
 #, gcc-internal-format
 msgid "%<__delay_cycles%> is limited to 32-bit loop counts"
 msgstr ""
 
-#: config/riscv/riscv.c:363
+#: config/riscv/riscv.c:368
 #, gcc-internal-format
 msgid "unknown cpu %qs for %<-mtune%>"
 msgstr ""
 
-#: config/riscv/riscv.c:2657 config/riscv/riscv.c:2699
+#: config/riscv/riscv.c:2662 config/riscv/riscv.c:2704
 #, gcc-internal-format
 msgid "ABI for flattened struct with zero-length bit-fields changed in GCC 10"
 msgstr ""
 
-#: config/riscv/riscv.c:3048
+#: config/riscv/riscv.c:3053
 #, gcc-internal-format
 msgid ""
 "argument to %qE attribute is not \"user\", \"supervisor\", or \"machine\""
 msgstr ""
 
-#: config/riscv/riscv.c:4702
+#: config/riscv/riscv.c:4708
 #, gcc-internal-format
 msgid "%<-mdiv%> requires %<-march%> to subsume the %<M%> extension"
 msgstr ""
 
-#: config/riscv/riscv.c:4743
+#: config/riscv/riscv.c:4751
 #, gcc-internal-format
 msgid "requested ABI requires %<-march%> to subsume the %qc extension"
 msgstr ""
 
-#: config/riscv/riscv.c:4747
+#: config/riscv/riscv.c:4755
 #, gcc-internal-format
 msgid "rv32e requires ilp32e ABI"
 msgstr ""
 
-#: config/riscv/riscv.c:4751
+#: config/riscv/riscv.c:4759
 #, gcc-internal-format
 msgid "ABI requires %<-march=rv%d%>"
 msgstr ""
 
-#: config/riscv/riscv.c:4761
+#: config/riscv/riscv.c:4769
 #, gcc-internal-format
 msgid "%<-mpreferred-stack-boundary=%d%> must be between %d and %d"
 msgstr ""
 
-#: config/riscv/riscv.c:4774
+#: config/riscv/riscv.c:4782
 #, gcc-internal-format
 msgid ""
 "%<-mriscv-attribute%> RISC-V ELF attribute requires GNU as 2.32 [%<-mriscv-"
 "attribute%>]"
 msgstr ""
 
-#: config/riscv/riscv.c:5067
+#: config/riscv/riscv.c:4809 config/rs6000/rs6000.c:4572
+#, gcc-internal-format
+msgid "%qs is not a valid base register in %qs"
+msgstr ""
+
+#: config/riscv/riscv.c:4823 config/rs6000/rs6000.c:4555
+#, gcc-internal-format
+msgid "%qs is not a valid number in %qs"
+msgstr ""
+
+#: config/riscv/riscv.c:5122
 #, gcc-internal-format
 msgid "%qs function cannot have different interrupt type"
 msgstr ""
@@ -39334,362 +40457,392 @@ msgstr ""
 msgid "junk at end of %<#pragma longcall%>"
 msgstr ""
 
-#: config/rs6000/rs6000-c.c:941
+#: config/rs6000/rs6000-c.c:946
 #, gcc-internal-format
 msgid ""
 "%<vec_lvsl%> is deprecated for little endian; use assignment for unaligned "
 "loads and stores"
 msgstr ""
 
-#: config/rs6000/rs6000-c.c:945
+#: config/rs6000/rs6000-c.c:950
 #, gcc-internal-format
 msgid ""
 "%<vec_lvsr%> is deprecated for little endian; use assignment for unaligned "
 "loads and stores"
 msgstr ""
 
-#: config/rs6000/rs6000-c.c:955 config/rs6000/rs6000-c.c:1006
-#: config/rs6000/rs6000-c.c:1276 config/rs6000/rs6000-c.c:1342
-#: config/rs6000/rs6000-c.c:1708 config/rs6000/rs6000-c.c:1755
+#: config/rs6000/rs6000-c.c:960 config/rs6000/rs6000-c.c:1011
+#: config/rs6000/rs6000-c.c:1281 config/rs6000/rs6000-c.c:1347
+#: config/rs6000/rs6000-c.c:1729 config/rs6000/rs6000-c.c:1776
 #, gcc-internal-format
 msgid "builtin %qs only accepts 2 arguments"
 msgstr ""
 
-#: config/rs6000/rs6000-c.c:1079 config/rs6000/rs6000-c.c:1162
-#: config/rs6000/rs6000-c.c:1520
+#: config/rs6000/rs6000-c.c:1084 config/rs6000/rs6000-c.c:1167
+#: config/rs6000/rs6000-c.c:1523
 #, gcc-internal-format
 msgid "builtin %qs only accepts 3 arguments"
 msgstr ""
 
-#: config/rs6000/rs6000-c.c:1271
+#: config/rs6000/rs6000-c.c:1276
 #, gcc-internal-format
 msgid "builtin %qs only accepts 1 argument"
 msgstr ""
 
-#: config/rs6000/rs6000-c.c:1647
+#: config/rs6000/rs6000-c.c:1668
 #, gcc-internal-format
 msgid "passing argument %d of %qE discards qualifiers from pointer target type"
 msgstr ""
 
-#: config/rs6000/rs6000-c.c:1810
+#: config/rs6000/rs6000-c.c:1837
 #, gcc-internal-format
 msgid "builtin %qs requires 4 arguments"
 msgstr ""
 
-#: config/rs6000/rs6000-c.c:1880
+#: config/rs6000/rs6000-c.c:1913
 #, gcc-internal-format
 msgid "builtin %qs requires builtin %qs"
 msgstr ""
 
-#: config/rs6000/rs6000-c.c:1884
+#: config/rs6000/rs6000-c.c:1917
 #, gcc-internal-format
 msgid "%qs is not supported in this compiler configuration"
 msgstr ""
 
-#: config/rs6000/rs6000-c.c:1893
+#: config/rs6000/rs6000-c.c:1926
 #, gcc-internal-format
 msgid "invalid parameter combination for AltiVec intrinsic %qs"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:6034
+#: config/rs6000/rs6000-call.c:6385
+#, gcc-internal-format
+msgid "invalid use of MMA type %qs as a function return value"
+msgstr ""
+
+#: config/rs6000/rs6000-call.c:6437
 #, gcc-internal-format
 msgid ""
 "GCC vector returned by reference: non-standard ABI extension with no "
 "compatibility guarantee"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:6224
+#: config/rs6000/rs6000-call.c:6627
 #, gcc-internal-format
 msgid ""
 "cannot return value in vector register because altivec instructions are "
 "disabled, use %qs to enable them"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:6399
+#: config/rs6000/rs6000-call.c:6802
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "the ABI of passing aggregates with %d-byte alignment has changed in GCC 5"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:6669
+#: config/rs6000/rs6000-call.c:7072
 #, gcc-internal-format
 msgid ""
 "cannot pass argument in vector register because altivec instructions are "
 "disabled, use %qs to enable them"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:7409
+#: config/rs6000/rs6000-call.c:7598
+#, gcc-internal-format
+msgid "invalid use of MMA operand of type %qs as a function parameter"
+msgstr ""
+
+#: config/rs6000/rs6000-call.c:7822
 #, gcc-internal-format
 msgid ""
 "the ABI of passing homogeneous %<float%> aggregates has changed in GCC 5"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:7584
+#: config/rs6000/rs6000-call.c:7997
 #, gcc-internal-format
 msgid ""
 "GCC vector passed by reference: non-standard ABI extension with no "
 "compatibility guarantee"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:8376
+#: config/rs6000/rs6000-call.c:8789
 #, gcc-internal-format
 msgid "internal error: builtin function %qs already processed"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:8797
+#: config/rs6000/rs6000-call.c:9210
 #, gcc-internal-format
 msgid "%<__builtin_mffsl%> not supported with %<-msoft-float%>"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:8838
+#: config/rs6000/rs6000-call.c:9251
 #, gcc-internal-format
 msgid "argument 1 must be an 8-bit field value"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:8869
+#: config/rs6000/rs6000-call.c:9282
 #, gcc-internal-format
 msgid ""
 "%<__builtin_mtfsb0%> and %<__builtin_mtfsb1%> not supported with %<-msoft-"
 "float%>"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:8881
+#: config/rs6000/rs6000-call.c:9294
 #, gcc-internal-format
 msgid "Argument must be a constant between 0 and 31."
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:8907
+#: config/rs6000/rs6000-call.c:9320
 #, gcc-internal-format
 msgid "%<__builtin_set_fpscr_rn%> not supported with %<-msoft-float%>"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:8922
+#: config/rs6000/rs6000-call.c:9335
 #, gcc-internal-format
 msgid "Argument must be a value between 0 and 3."
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:8947
+#: config/rs6000/rs6000-call.c:9360
 #, gcc-internal-format
 msgid "%<__builtin_set_fpscr_drn%> is not supported in 32-bit mode"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:8952
+#: config/rs6000/rs6000-call.c:9365
 #, gcc-internal-format
 msgid "%<__builtin_set_fpscr_drn%> not supported with %<-msoft-float%>"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:8971
+#: config/rs6000/rs6000-call.c:9384
 #, gcc-internal-format
 msgid "Argument must be a value between 0 and 7."
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9012
+#: config/rs6000/rs6000-call.c:9425
 #, gcc-internal-format
 msgid "argument 1 must be a 5-bit signed literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9100
+#: config/rs6000/rs6000-call.c:9513
 #, gcc-internal-format
 msgid "argument 2 must be a 1-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9111
+#: config/rs6000/rs6000-call.c:9524
 #, gcc-internal-format
 msgid "argument 2 must be a 2-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9124
+#: config/rs6000/rs6000-call.c:9537
 #, gcc-internal-format
 msgid "argument 2 must be unsigned literal between 2 and 7 inclusive"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9136
+#: config/rs6000/rs6000-call.c:9549
 #, gcc-internal-format
 msgid "argument 2 must be a 3-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9147
+#: config/rs6000/rs6000-call.c:9560
 #, gcc-internal-format
 msgid "argument 2 must be a 4-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9161
+#: config/rs6000/rs6000-call.c:9576
 #, gcc-internal-format
 msgid "argument 2 must be a 5-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9179
+#: config/rs6000/rs6000-call.c:9594
 #, gcc-internal-format
 msgid "argument 1 must be a 6-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9195
+#: config/rs6000/rs6000-call.c:9610
 #, gcc-internal-format
 msgid "argument 2 must be a 7-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9234
+#: config/rs6000/rs6000-call.c:9649
 #, gcc-internal-format
 msgid "argument 1 of %qs must be a constant"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9292
+#: config/rs6000/rs6000-call.c:9707
 #, gcc-internal-format
 msgid "argument 1 of %qs is out of range"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9581 config/rs6000/rs6000-call.c:9741
+#: config/rs6000/rs6000-call.c:10094 config/rs6000/rs6000-call.c:10255
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %d must be an unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9583 config/rs6000/rs6000-call.c:9743
+#: config/rs6000/rs6000-call.c:10096 config/rs6000/rs6000-call.c:10257
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %d is an unsigned literal that is out of range"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9692
+#: config/rs6000/rs6000-call.c:10206
 #, gcc-internal-format
 msgid "builtin %qs is only valid in 64-bit mode"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9890
+#: config/rs6000/rs6000-call.c:10404
 #, gcc-internal-format
 msgid "builtin %qs only accepts a string argument"
 msgstr ""
 
 #. Invalid CPU argument.
-#: config/rs6000/rs6000-call.c:9909
+#: config/rs6000/rs6000-call.c:10423
 #, gcc-internal-format
 msgid "cpu %qs is an invalid argument to builtin %qs"
 msgstr ""
 
 #. Invalid HWCAP argument.
-#: config/rs6000/rs6000-call.c:9937
+#: config/rs6000/rs6000-call.c:10451
 #, gcc-internal-format
 msgid "%s %qs is an invalid argument to builtin %qs"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:9963
+#: config/rs6000/rs6000-call.c:10477
 #, gcc-internal-format
 msgid ""
 "builtin %qs needs GLIBC (2.23 and newer) that exports hardware capability "
 "bits"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10016
+#: config/rs6000/rs6000-call.c:10530
 #, gcc-internal-format
 msgid "argument 4 must be an 8-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10086
+#: config/rs6000/rs6000-call.c:10542
+#, gcc-internal-format
+msgid "argument 4 must be a 3-bit unsigned literal"
+msgstr ""
+
+#: config/rs6000/rs6000-call.c:10556
+#, gcc-internal-format
+msgid "argument 3 must be in the range 0 to 3"
+msgstr ""
+
+#: config/rs6000/rs6000-call.c:10570
+#, gcc-internal-format
+msgid "argument 3 must be in the range 0 to 12"
+msgstr ""
+
+#: config/rs6000/rs6000-call.c:10590
+#, gcc-internal-format
+msgid "argument 3 must be a constant in the range 0 to 7"
+msgstr ""
+
+#: config/rs6000/rs6000-call.c:10660
 #, gcc-internal-format
 msgid "argument 3 must be a 4-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10111
+#: config/rs6000/rs6000-call.c:10685
 #, gcc-internal-format
 msgid "argument 3 must be a 2-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10131
+#: config/rs6000/rs6000-call.c:10713
 #, gcc-internal-format
 msgid "argument 3 must be a 1-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10143
+#: config/rs6000/rs6000-call.c:10725
 #, gcc-internal-format
 msgid "argument 1 must be 0 or 2"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10155
+#: config/rs6000/rs6000-call.c:10738
 #, gcc-internal-format
 msgid "argument 1 must be a 1-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10169
+#: config/rs6000/rs6000-call.c:10752
 #, gcc-internal-format
 msgid "argument 2 must be a 6-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10181
+#: config/rs6000/rs6000-call.c:10764
 #, gcc-internal-format
 msgid "argument 2 must be 0 or 1"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10189
+#: config/rs6000/rs6000-call.c:10772
 #, gcc-internal-format
 msgid "argument 3 must be in the range [0, 15]"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10256 config/rs6000/rs6000-call.c:10596
+#: config/rs6000/rs6000-call.c:10839 config/rs6000/rs6000-call.c:11189
 #, gcc-internal-format
 msgid "argument to %qs must be a 2-bit unsigned literal"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10421
+#: config/rs6000/rs6000-call.c:11004
 #, gcc-internal-format
 msgid "unresolved overload for Altivec builtin %qF"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10643
+#: config/rs6000/rs6000-call.c:11236
 #, gcc-internal-format
 msgid "second argument to %qs must be [0, 12]"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10658
+#: config/rs6000/rs6000-call.c:11251
 #, gcc-internal-format
 msgid "third argument to %qs must be [0, 12]"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10676
+#: config/rs6000/rs6000-call.c:11269
 #, gcc-internal-format
 msgid "Second argument of %qs must be in the range [0, 3]."
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10870
+#: config/rs6000/rs6000-call.c:11487
 #, gcc-internal-format
 msgid "%qs is only valid for the cell processor"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10872 config/rs6000/rs6000-call.c:10874
-#: config/rs6000/rs6000-call.c:10876 config/rs6000/rs6000-call.c:10882
-#: config/rs6000/rs6000-call.c:10884 config/rs6000/rs6000-call.c:10890
-#: config/rs6000/rs6000-call.c:10896 config/rs6000/rs6000-call.c:10898
-#: config/rs6000/rs6000-call.c:10900 config/rs6000/rs6000-call.c:10904
-#: config/rs6000/rs6000-call.c:10906 config/rs6000/rs6000-call.c:10910
-#: config/rs6000/rs6000-call.c:10914
+#: config/rs6000/rs6000-call.c:11489 config/rs6000/rs6000-call.c:11491
+#: config/rs6000/rs6000-call.c:11493 config/rs6000/rs6000-call.c:11499
+#: config/rs6000/rs6000-call.c:11501 config/rs6000/rs6000-call.c:11507
+#: config/rs6000/rs6000-call.c:11513 config/rs6000/rs6000-call.c:11515
+#: config/rs6000/rs6000-call.c:11517 config/rs6000/rs6000-call.c:11521
+#: config/rs6000/rs6000-call.c:11523 config/rs6000/rs6000-call.c:11527
+#: config/rs6000/rs6000-call.c:11531
 #, gcc-internal-format
 msgid "%qs requires the %qs option"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10879 config/rs6000/rs6000-call.c:10887
-#: config/rs6000/rs6000-call.c:10893
+#: config/rs6000/rs6000-call.c:11496 config/rs6000/rs6000-call.c:11504
+#: config/rs6000/rs6000-call.c:11510
 #, gcc-internal-format
 msgid "%qs requires the %qs and %qs options"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10912
+#: config/rs6000/rs6000-call.c:11529
 #, gcc-internal-format
 msgid "%qs requires ISA 3.0 IEEE 128-bit floating point"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10917
+#: config/rs6000/rs6000-call.c:11534
 #, gcc-internal-format
 msgid "%qs requires the %qs (or newer), and %qs or %qs options"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:10920
+#: config/rs6000/rs6000-call.c:11537
 #, gcc-internal-format
 msgid "%qs is not supported with the current options"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:13946
+#: config/rs6000/rs6000-call.c:14640
 #, gcc-internal-format
 msgid "internal error: builtin function %qs had an unexpected return type %qs"
 msgstr ""
 
-#: config/rs6000/rs6000-call.c:13968
+#: config/rs6000/rs6000-call.c:14662
 #, gcc-internal-format
 msgid ""
 "internal error: builtin function %qs, argument %d had unexpected argument "
@@ -39701,45 +40854,65 @@ msgstr ""
 msgid "stack frame too large"
 msgstr ""
 
-#: config/rs6000/rs6000-logue.c:5486
+#: config/rs6000/rs6000-logue.c:5497
 #, gcc-internal-format
 msgid "%qs uses register r29"
 msgstr ""
 
-#: config/rs6000/rs6000-logue.c:5494
+#: config/rs6000/rs6000-logue.c:5505
 #, gcc-internal-format
 msgid "Stack frame larger than 2G is not supported for %<-fsplit-stack%>"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3217 config/rs6000/rs6000.c:3220
-#: config/rs6000/rs6000.c:3223
+#: config/rs6000/rs6000.c:3219 config/rs6000/rs6000.c:3222
+#: config/rs6000/rs6000.c:3225
 #, gcc-internal-format
 msgid "%qs requires %qs or %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3324
+#: config/rs6000/rs6000.c:3326
 #, gcc-internal-format
 msgid "%qs requires PowerPC64 architecture, enabling"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3519
+#: config/rs6000/rs6000.c:3471
+#, gcc-internal-format
+msgid "%<-mcall-aixdesc%> incompatible with %<-mabi=elfv2%>"
+msgstr ""
+
+#: config/rs6000/rs6000.c:3491 config/rs6000/rtems.h:114
+#, gcc-internal-format
+msgid "%<-m64%> requires a PowerPC64 cpu"
+msgstr ""
+
+#: config/rs6000/rs6000.c:3499
+#, gcc-internal-format
+msgid "%<-mcmodel incompatible with other toc options%>"
+msgstr ""
+
+#: config/rs6000/rs6000.c:3520
+#, gcc-internal-format
+msgid "%qs unsupported for this ABI"
+msgstr ""
+
+#: config/rs6000/rs6000.c:3653
 #, gcc-internal-format
 msgid ""
 "%qs is not supported for 64-bit Darwin; it is incompatible with the "
 "installed C and C++ libraries"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3658
+#: config/rs6000/rs6000.c:3792
 #, gcc-internal-format
 msgid "AltiVec not supported in this target"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3675
+#: config/rs6000/rs6000.c:3809
 #, gcc-internal-format
 msgid "%qs is not supported on little endian systems"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3754
+#: config/rs6000/rs6000.c:3895
 #, gcc-internal-format
 msgid ""
 "power9 target option is incompatible with %<%s=<xxx>%> for <xxx> less than "
@@ -39748,203 +40921,200 @@ msgstr ""
 
 #. Enforce that none of the ISA_3_0_MASKS_SERVER flags
 #. were explicitly cleared.
-#: config/rs6000/rs6000.c:3762
+#: config/rs6000/rs6000.c:3903
 #, gcc-internal-format
 msgid "%qs incompatible with explicitly disabled options"
 msgstr ""
 
 #. TARGET_VSX = 1 implies Power 7 and newer
-#: config/rs6000/rs6000.c:3787 config/rs6000/rs6000.c:3795
-#: config/rs6000/rs6000.c:3802 config/rs6000/rs6000.c:3809
-#: config/rs6000/rs6000.c:3817 config/rs6000/rs6000.c:3836
-#: config/rs6000/rs6000.c:3898 config/rs6000/rs6000.c:3925
-#: config/rs6000/rs6000.c:3952 config/rs6000/rs6000.c:3967
-#: config/rs6000/rs6000.c:3975 config/rs6000/rs6000.c:4004
-#: config/rs6000/rs6000.c:4006 config/rs6000/rs6000.c:4092
-#: config/rs6000/rs6000.c:4105 config/rs6000/rs6000.c:4114
-#: config/rs6000/rs6000.c:4262 config/rs6000/rs6000.c:4275
+#: config/rs6000/rs6000.c:3928 config/rs6000/rs6000.c:3936
+#: config/rs6000/rs6000.c:3943 config/rs6000/rs6000.c:3950
+#: config/rs6000/rs6000.c:3958 config/rs6000/rs6000.c:3977
+#: config/rs6000/rs6000.c:4039 config/rs6000/rs6000.c:4066
+#: config/rs6000/rs6000.c:4093 config/rs6000/rs6000.c:4108
+#: config/rs6000/rs6000.c:4116 config/rs6000/rs6000.c:4161
+#: config/rs6000/rs6000.c:4163 config/rs6000/rs6000.c:4255
+#: config/rs6000/rs6000.c:4268 config/rs6000/rs6000.c:4277
+#: config/rs6000/rs6000.c:4427 config/rs6000/rs6000.c:4450
 #, gcc-internal-format
 msgid "%qs requires %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.c:3995
+#: config/rs6000/rs6000.c:4152
 #, gcc-internal-format
 msgid "target attribute or pragma changes %<long double%> size"
 msgstr ""
 
-#: config/rs6000/rs6000.c:4021
+#: config/rs6000/rs6000.c:4178
 #, gcc-internal-format
 msgid "%qs requires full ISA 2.06 support"
 msgstr ""
 
-#: config/rs6000/rs6000.c:4030
+#: config/rs6000/rs6000.c:4193
 #, gcc-internal-format
 msgid "Using IEEE extended precision %<long double%>"
 msgstr ""
 
-#: config/rs6000/rs6000.c:4033
+#: config/rs6000/rs6000.c:4196
 #, gcc-internal-format
 msgid "Using IBM extended precision %<long double%>"
 msgstr ""
 
-#: config/rs6000/rs6000.c:4052
+#: config/rs6000/rs6000.c:4215
 #, gcc-internal-format
 msgid "%qs requires VSX support"
 msgstr ""
 
-#: config/rs6000/rs6000.c:4061
+#: config/rs6000/rs6000.c:4224
 #, gcc-internal-format
 msgid "The %<-mfloat128%> option may not be fully supported"
 msgstr ""
 
-#: config/rs6000/rs6000.c:4084
+#: config/rs6000/rs6000.c:4247
 #, gcc-internal-format
 msgid "%qs requires full ISA 3.0 support"
 msgstr ""
 
-#: config/rs6000/rs6000.c:4171
+#: config/rs6000/rs6000.c:4334
 #, gcc-internal-format
 msgid "unknown vectorization library ABI type (%qs) for %qs switch"
 msgstr ""
 
-#: config/rs6000/rs6000.c:4194 config/rs6000/rs6000.c:4209
+#: config/rs6000/rs6000.c:4359 config/rs6000/rs6000.c:4374
 #, gcc-internal-format
 msgid "target attribute or pragma changes AltiVec ABI"
 msgstr ""
 
-#: config/rs6000/rs6000.c:4222
+#: config/rs6000/rs6000.c:4387
 #, gcc-internal-format
 msgid "target attribute or pragma changes darwin64 ABI"
 msgstr ""
 
-#: config/rs6000/rs6000.c:4380
-#, gcc-internal-format
-msgid "%qs is not a valid number in %qs"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4397
-#, gcc-internal-format
-msgid "%qs is not a valid base register in %qs"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4405
+#: config/rs6000/rs6000.c:4580
 #, gcc-internal-format
 msgid "%qs needs a valid base register"
 msgstr ""
 
-#: config/rs6000/rs6000.c:4711
+#: config/rs6000/rs6000.c:4874
 #, gcc-internal-format
 msgid "unknown option for %<%s=%s%>"
 msgstr ""
 
-#: config/rs6000/rs6000.c:4748
+#: config/rs6000/rs6000.c:4911
 #, gcc-internal-format
 msgid "%qs is deprecated and not recommended in any circumstances"
 msgstr ""
 
-#: config/rs6000/rs6000.c:7296
+#: config/rs6000/rs6000.c:7821
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "the layout of aggregates containing vectors with %d-byte alignment has "
 "changed in GCC 5"
 msgstr ""
 
-#: config/rs6000/rs6000.c:9974
+#: config/rs6000/rs6000.c:10503
 #, gcc-internal-format
 msgid "%qs is an opaque type, and you can't set it to other values."
 msgstr ""
 
-#: config/rs6000/rs6000.c:17007
+#: config/rs6000/rs6000.c:17598
 #, gcc-internal-format
 msgid "no profiling of 64-bit code for this ABI"
 msgstr ""
 
-#: config/rs6000/rs6000.c:19309
+#: config/rs6000/rs6000.c:19887
 #, gcc-internal-format
 msgid ""
 "you cannot take the address of a nested function if you use the %qs option"
 msgstr ""
 
-#: config/rs6000/rs6000.c:19391
+#: config/rs6000/rs6000.c:19969
 #, gcc-internal-format
 msgid "use of %<long double%> in AltiVec types is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.c:19393
+#: config/rs6000/rs6000.c:19971
 #, gcc-internal-format
 msgid "use of boolean types in AltiVec types is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.c:19395
+#: config/rs6000/rs6000.c:19973
 #, gcc-internal-format
 msgid "use of %<complex%> in AltiVec types is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.c:19397
+#: config/rs6000/rs6000.c:19975
 #, gcc-internal-format
 msgid "use of decimal floating point types in AltiVec types is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.c:19403
+#: config/rs6000/rs6000.c:19981
 #, gcc-internal-format
 msgid "use of %<long%> in AltiVec types is invalid for 64-bit code without %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.c:19406
+#: config/rs6000/rs6000.c:19984
 #, gcc-internal-format
 msgid "use of %<long%> in AltiVec types is deprecated; use %<int%>"
 msgstr ""
 
-#: config/rs6000/rs6000.c:19411
+#: config/rs6000/rs6000.c:19989
 #, gcc-internal-format
 msgid "use of %<long long%> in AltiVec types is invalid without %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.c:19414
+#: config/rs6000/rs6000.c:19992
 #, gcc-internal-format
 msgid "use of %<double%> in AltiVec types is invalid without %qs"
 msgstr ""
 
-#: config/rs6000/rs6000.c:23429
+#: config/rs6000/rs6000.c:24031
 #, gcc-internal-format
 msgid "invalid cpu %qs for %s%qs%s"
 msgstr ""
 
-#: config/rs6000/rs6000.c:23432
+#: config/rs6000/rs6000.c:24034
 #, gcc-internal-format
 msgid "%s%qs%s is not allowed"
 msgstr ""
 
-#: config/rs6000/rs6000.c:23434
+#: config/rs6000/rs6000.c:24036
 #, gcc-internal-format
 msgid "%s%qs%s is invalid"
 msgstr ""
 
-#: config/rs6000/rs6000.c:23971
+#: config/rs6000/rs6000.c:24581
 #, gcc-internal-format
 msgid "%<-mno-%s%> turns off %<-m%s%>"
 msgstr ""
 
-#: config/rs6000/rs6000.c:24130
+#: config/rs6000/rs6000.c:24740
 #, gcc-internal-format
 msgid ""
 "%<target_clones%> attribute needs GLIBC (2.23 and newer) that exports "
 "hardware capability bits"
 msgstr ""
 
-#: config/rs6000/rs6000.c:24162
+#: config/rs6000/rs6000.c:24772
 #, gcc-internal-format
 msgid "multiversioning needs ifunc which is not supported on this target"
 msgstr ""
 
-#: config/rs6000/rs6000.c:24418
+#: config/rs6000/rs6000.c:25028
 #, gcc-internal-format
 msgid "Virtual function multiversioning not supported"
 msgstr ""
 
+#: config/rs6000/rs6000.c:27580
+#, gcc-internal-format
+msgid ""
+"the result for the xxspltidp instruction is undefined for subnormal input "
+"values"
+msgstr ""
+
 #. Definitions of target machine for GNU compiler,
 #. for IBM RS/6000 POWER running AIX V6.1.
-#. Copyright (C) 2002-2020 Free Software Foundation, Inc.
+#. Copyright (C) 2002-2021 Free Software Foundation, Inc.
 #. Contributed by David Edelsohn (edelsohn@gnu.org).
 #.
 #. This file is part of GCC.
@@ -39966,7 +41136,7 @@ msgstr ""
 #. get control in TARGET_OPTION_OVERRIDE.
 #. Definitions of target machine for GNU compiler,
 #. for IBM RS/6000 POWER running AIX V7.1.
-#. Copyright (C) 2002-2020 Free Software Foundation, Inc.
+#. Copyright (C) 2002-2021 Free Software Foundation, Inc.
 #. Contributed by David Edelsohn (edelsohn@gnu.org).
 #.
 #. This file is part of GCC.
@@ -39988,7 +41158,7 @@ msgstr ""
 #. get control in TARGET_OPTION_OVERRIDE.
 #. Definitions of target machine for GNU compiler,
 #. for IBM RS/6000 POWER running AIX V7.2.
-#. Copyright (C) 2002-2020 Free Software Foundation, Inc.
+#. Copyright (C) 2002-2021 Free Software Foundation, Inc.
 #. Contributed by David Edelsohn (edelsohn@gnu.org).
 #.
 #. This file is part of GCC.
@@ -40026,32 +41196,11 @@ msgid ""
 msgstr ""
 
 #: config/rs6000/aix61.h:47 config/rs6000/aix71.h:47 config/rs6000/aix72.h:47
-#: config/rs6000/freebsd64.h:124 config/rs6000/rtems.h:121
+#: config/rs6000/rtems.h:121
 #, gcc-internal-format
 msgid "%<-mcmodel%> incompatible with other toc options"
 msgstr ""
 
-#: config/rs6000/freebsd64.h:102 config/rs6000/linux64.h:115
-#, gcc-internal-format
-msgid "%<-mcall-aixdesc%> incompatible with %<-mabi=elfv2%>"
-msgstr ""
-
-#: config/rs6000/freebsd64.h:117 config/rs6000/linux64.h:135
-#: config/rs6000/rtems.h:114
-#, gcc-internal-format
-msgid "%<-m64%> requires a PowerPC64 cpu"
-msgstr ""
-
-#: config/rs6000/linux64.h:142
-#, gcc-internal-format
-msgid "%<-mcmodel incompatible with other toc options%>"
-msgstr ""
-
-#: config/rs6000/linux64.h:161
-#, gcc-internal-format
-msgid "%qs unsupported for this ABI"
-msgstr ""
-
 #. The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
 #. get control in TARGET_OPTION_OVERRIDE.
 #: config/rs6000/sysv4.h:116
@@ -40099,187 +41248,192 @@ msgstr ""
 msgid "%<-m%s%> not supported in this configuration"
 msgstr ""
 
-#: config/rx/rx.c:650
+#: config/rx/rx.c:651
 #, gcc-internal-format
 msgid "unrecognized control register number: %d - using %<psw%>"
 msgstr ""
 
-#: config/rx/rx.c:1383
+#: config/rx/rx.c:1384
 #, gcc-internal-format
 msgid "multiple fast interrupt routines seen: %qE and %qE"
 msgstr ""
 
-#: config/rx/rx.c:2594
+#: config/rx/rx.c:2480
+#, gcc-internal-format, gfc-internal-format
+msgid "invalid control register for mvtc : %d - using 'psw'"
+msgstr ""
+
+#: config/rx/rx.c:2602
 #, gcc-internal-format
 msgid "%<__builtin_rx_%s%> takes %<C%>, %<Z%>, %<S%>, %<O%>, %<I%>, or %<U%>"
 msgstr ""
 
-#: config/rx/rx.c:2597
+#: config/rx/rx.c:2605
 #, gcc-internal-format
 msgid "use %<__builtin_rx_mvtc%> (0, ... ) to write arbitrary values to PSW"
 msgstr ""
 
-#: config/rx/rx.c:2644
+#: config/rx/rx.c:2652
 #, gcc-internal-format
 msgid ""
 "%<-mno-allow-string-insns%> forbids the generation of the RMPA instruction"
 msgstr ""
 
-#: config/rx/rx.c:2792
+#: config/rx/rx.c:2800
 #, gcc-internal-format
 msgid "RX FPU instructions do not support NaNs and infinities"
 msgstr ""
 
-#: config/s390/s390-c.c:465
+#: config/s390/s390-c.c:483
 #, gcc-internal-format
 msgid "builtin vec_step can only be used on vector types."
 msgstr ""
 
-#: config/s390/s390-c.c:694 config/s390/s390.c:879
+#: config/s390/s390-c.c:712 config/s390/s390.c:889
 #, gcc-internal-format
 msgid "constant value required for builtin %qF argument %d"
 msgstr ""
 
-#: config/s390/s390-c.c:709
+#: config/s390/s390-c.c:727
 #, gcc-internal-format
 msgid ""
 "valid values for builtin %qF argument %d are 64, 128, 256, 512, 1024, 2048, "
 "and 4096"
 msgstr ""
 
-#: config/s390/s390-c.c:886
+#: config/s390/s390-c.c:904
 #, gcc-internal-format
 msgid "builtin %qF is for GCC internal use only."
 msgstr ""
 
-#: config/s390/s390-c.c:894
+#: config/s390/s390-c.c:912
 #, gcc-internal-format
 msgid "builtin %qF is deprecated."
 msgstr ""
 
-#: config/s390/s390-c.c:898
+#: config/s390/s390-c.c:916
 #, gcc-internal-format
 msgid "%qF requires %<-mvx%>"
 msgstr ""
 
-#: config/s390/s390-c.c:904
+#: config/s390/s390-c.c:922
 #, gcc-internal-format
 msgid "%qF requires z14 or higher"
 msgstr ""
 
-#: config/s390/s390-c.c:910
+#: config/s390/s390-c.c:928
 #, gcc-internal-format
 msgid "%qF requires z15 or higher"
 msgstr ""
 
-#: config/s390/s390-c.c:924
+#: config/s390/s390-c.c:942
 #, gcc-internal-format
 msgid "mismatch in number of arguments for builtin %qF. Expected: %d got %d"
 msgstr ""
 
-#: config/s390/s390-c.c:973
+#: config/s390/s390-c.c:991
 #, gcc-internal-format
 msgid "invalid parameter combination for intrinsic %qs"
 msgstr ""
 
-#: config/s390/s390-c.c:979
+#: config/s390/s390-c.c:997
 #, gcc-internal-format
 msgid "ambiguous overload for intrinsic %qs"
 msgstr ""
 
-#: config/s390/s390-c.c:987
+#: config/s390/s390-c.c:1005
 #, gcc-internal-format
 msgid "%qs matching variant requires z14 or higher"
 msgstr ""
 
-#: config/s390/s390-c.c:996
+#: config/s390/s390-c.c:1014
 #, gcc-internal-format
 msgid "%qs matching variant requires z15 or higher"
 msgstr ""
 
-#: config/s390/s390-c.c:1002
+#: config/s390/s390-c.c:1020
 #, gcc-internal-format
 msgid "%qs matching variant is deprecated."
 msgstr ""
 
-#: config/s390/s390-c.c:1042
+#: config/s390/s390-c.c:1060
 #, gcc-internal-format
 msgid "constant argument %d for builtin %qF is out of range for target type"
 msgstr ""
 
-#: config/s390/s390.c:732
+#: config/s390/s390.c:742
 #, gcc-internal-format
 msgid "constant argument %d for builtin %qF is out of range (0..%wu)"
 msgstr ""
 
-#: config/s390/s390.c:748
+#: config/s390/s390.c:758
 #, gcc-internal-format
 msgid "constant argument %d for builtin %qF is out of range (%wd..%wd)"
 msgstr ""
 
-#: config/s390/s390.c:797
+#: config/s390/s390.c:807
 #, gcc-internal-format
 msgid ""
 "builtin %qF is not supported without %<-mhtm%> (default with %<-"
 "march=zEC12%> and higher)."
 msgstr ""
 
-#: config/s390/s390.c:803
+#: config/s390/s390.c:813
 #, gcc-internal-format
 msgid "builtin %qF requires %<-mvx%> (default with %<-march=z13%> and higher)."
 msgstr ""
 
-#: config/s390/s390.c:810
+#: config/s390/s390.c:820
 #, gcc-internal-format
 msgid "Builtin %qF requires z14 or higher."
 msgstr ""
 
-#: config/s390/s390.c:816
+#: config/s390/s390.c:826
 #, gcc-internal-format
 msgid "Builtin %qF requires z15 or higher."
 msgstr ""
 
-#: config/s390/s390.c:835
+#: config/s390/s390.c:845
 #, gcc-internal-format
 msgid "unresolved overloaded builtin"
 msgstr ""
 
-#: config/s390/s390.c:842 config/tilegx/tilegx.c:3539
+#: config/s390/s390.c:852 config/tilegx/tilegx.c:3539
 #: config/tilepro/tilepro.c:3103
 #, gcc-internal-format
 msgid "bad builtin icode"
 msgstr ""
 
-#: config/s390/s390.c:976
+#: config/s390/s390.c:986
 #, gcc-internal-format
 msgid "invalid argument %d for builtin %qF"
 msgstr ""
 
-#: config/s390/s390.c:1077
+#: config/s390/s390.c:1087
 #, gcc-internal-format
 msgid ""
 "requested %qE attribute is not a comma separated pair of non-negative "
 "integer constants or too large (max. %d)"
 msgstr ""
 
-#: config/s390/s390.c:1167
+#: config/s390/s390.c:1177
 #, gcc-internal-format
 msgid "argument to %qE attribute is not (keep|thunk|thunk-extern)"
 msgstr ""
 
-#: config/s390/s390.c:9876
+#: config/s390/s390.c:9983
 #, gcc-internal-format
 msgid "total size of local variables exceeds architecture limit"
 msgstr ""
 
-#: config/s390/s390.c:11215
+#: config/s390/s390.c:11348
 #, gcc-internal-format
 msgid ""
 "frame size of function %qs is %wd bytes exceeding user provided stack limit "
 "of %d bytes.  An unconditional trap is added."
 msgstr ""
 
-#: config/s390/s390.c:11231
+#: config/s390/s390.c:11364
 #, gcc-internal-format
 msgid ""
 "frame size of function %qs is %wd bytes which is more than half the stack "
@@ -40287,128 +41441,128 @@ msgid ""
 "function."
 msgstr ""
 
-#: config/s390/s390.c:11259
+#: config/s390/s390.c:11392
 #, gcc-internal-format
 msgid "frame size of %qs is %wd bytes"
 msgstr ""
 
-#: config/s390/s390.c:11263
+#: config/s390/s390.c:11396
 #, gcc-internal-format
 msgid "%qs uses dynamic stack allocation"
 msgstr ""
 
-#: config/s390/s390.c:12973
+#: config/s390/s390.c:13106
 #, gcc-internal-format
 msgid "nested functions cannot be profiled with %<-mfentry%> on s390"
 msgstr ""
 
-#: config/s390/s390.c:15236
+#: config/s390/s390.c:15370
 #, gcc-internal-format
 msgid "64-bit ABI not supported in ESA/390 mode"
 msgstr ""
 
-#: config/s390/s390.c:15243
+#: config/s390/s390.c:15377
 #, gcc-internal-format
 msgid "thunk-inline is only supported with %<-mindirect-branch-jump%>"
 msgstr ""
 
-#: config/s390/s390.c:15278
+#: config/s390/s390.c:15412
 #, gcc-internal-format, gfc-internal-format
 msgid "hardware vector support not available on %s"
 msgstr ""
 
-#: config/s390/s390.c:15281
+#: config/s390/s390.c:15415
 #, gcc-internal-format
 msgid "hardware vector support not available with %<-msoft-float%>"
 msgstr ""
 
-#: config/s390/s390.c:15310
+#: config/s390/s390.c:15444
 #, gcc-internal-format, gfc-internal-format
 msgid "hardware decimal floating point instructions not available on %s"
 msgstr ""
 
-#: config/s390/s390.c:15314
+#: config/s390/s390.c:15448
 #, gcc-internal-format
 msgid ""
 "hardware decimal floating point instructions not available in ESA/390 mode"
 msgstr ""
 
-#: config/s390/s390.c:15326
+#: config/s390/s390.c:15460
 #, gcc-internal-format
 msgid "%<-mhard-dfp%> can%'t be used in conjunction with %<-msoft-float%>"
 msgstr ""
 
-#: config/s390/s390.c:15335
+#: config/s390/s390.c:15469
 #, gcc-internal-format
 msgid ""
 "%<-mbackchain%> %<-mpacked-stack%> %<-mhard-float%> are not supported in "
 "combination"
 msgstr ""
 
-#: config/s390/s390.c:15341
+#: config/s390/s390.c:15475
 #, gcc-internal-format
 msgid "stack size must be greater than the stack guard value"
 msgstr ""
 
-#: config/s390/s390.c:15343
+#: config/s390/s390.c:15477
 #, gcc-internal-format
 msgid "stack size must not be greater than 64k"
 msgstr ""
 
-#: config/s390/s390.c:15346
+#: config/s390/s390.c:15480
 #, gcc-internal-format
 msgid "%<-mstack-guard%> implies use of %<-mstack-size%>"
 msgstr ""
 
-#: config/s390/s390.c:15359
+#: config/s390/s390.c:15493
 #, gcc-internal-format
 msgid "-mtpf-trace-hook-prologue-check requires integer in range 0..4095"
 msgstr ""
 
-#: config/s390/s390.c:15362
+#: config/s390/s390.c:15496
 #, gcc-internal-format
 msgid "-mtpf-trace-hook-prologue-target requires integer in range 0..4095"
 msgstr ""
 
-#: config/s390/s390.c:15365
+#: config/s390/s390.c:15499
 #, gcc-internal-format
 msgid "-mtpf-trace-hook-epilogue-check requires integer in range 0..4095"
 msgstr ""
 
-#: config/s390/s390.c:15368
+#: config/s390/s390.c:15502
 #, gcc-internal-format
 msgid "-mtpf-trace-hook-epilogue-target requires integer in range 0..4095"
 msgstr ""
 
-#: config/s390/s390.c:15428
+#: config/s390/s390.c:15555
 #, gcc-internal-format
 msgid "%<-mfentry%> is supported only for 64-bit CPUs"
 msgstr ""
 
 #. argument is not a plain number
-#: config/s390/s390.c:15464
+#: config/s390/s390.c:15591
 #, gcc-internal-format
 msgid "arguments to %qs should be non-negative integers"
 msgstr ""
 
-#: config/s390/s390.c:15471
+#: config/s390/s390.c:15598
 #, gcc-internal-format
 msgid "argument to %qs is too large (max. %d)"
 msgstr ""
 
-#: config/s390/s390.c:15501
+#: config/s390/s390.c:15629
 #, gcc-internal-format
 msgid ""
 "%<-mno-pic-data-is-text-relative%> cannot be used without %<-fpic%>/%<-fPIC%>"
 msgstr ""
 
-#: config/s390/s390.c:15662 config/s390/s390.c:15712 config/s390/s390.c:15729
+#: config/s390/s390.c:15790 config/s390/s390.c:15840 config/s390/s390.c:15857
 #, gcc-internal-format, gfc-internal-format
 msgid "attribute(target(\"%s\")) is unknown"
 msgstr ""
 
 #. Value is not allowed for the target attribute.
-#: config/s390/s390.c:15668
+#: config/s390/s390.c:15796
 #, gcc-internal-format
 msgid "value %qs is not supported by attribute %<target%>"
 msgstr ""
@@ -40467,22 +41621,22 @@ msgstr ""
 msgid "%<-mrelax%> is only supported for RTP PIC"
 msgstr ""
 
-#: config/sparc/sparc.c:1763
+#: config/sparc/sparc.c:1767
 #, gcc-internal-format, gfc-internal-format
 msgid "%s is not supported by this configuration"
 msgstr ""
 
-#: config/sparc/sparc.c:1770
+#: config/sparc/sparc.c:1774
 #, gcc-internal-format
 msgid "%<-mlong-double-64%> not allowed with %<-m64%>"
 msgstr ""
 
-#: config/sparc/sparc.c:1778
+#: config/sparc/sparc.c:1782
 #, gcc-internal-format
 msgid "%<-fcall-saved-REG%> is not supported for out registers"
 msgstr ""
 
-#: config/sparc/sparc.c:1902
+#: config/sparc/sparc.c:1906
 #, gcc-internal-format
 msgid "%<-mcmodel=%> is not supported in 32-bit mode"
 msgstr ""
@@ -40717,110 +41871,110 @@ msgstr ""
 msgid "invalid constant in %<#pragma %s%>"
 msgstr ""
 
-#: config/xtensa/xtensa.c:2236
+#: config/xtensa/xtensa.c:2251
 #, gcc-internal-format
 msgid "boolean registers required for the floating-point option"
 msgstr ""
 
-#: config/xtensa/xtensa.c:2271
+#: config/xtensa/xtensa.c:2286
 #, gcc-internal-format
 msgid "%<-f%s%> is not supported with CONST16 instructions"
 msgstr ""
 
-#: config/xtensa/xtensa.c:2278
+#: config/xtensa/xtensa.c:2293
 #, gcc-internal-format
 msgid "PIC is required but not supported with CONST16 instructions"
 msgstr ""
 
-#: config/xtensa/xtensa.c:3648
+#: config/xtensa/xtensa.c:3663
 #, gcc-internal-format
 msgid "only uninitialized variables can be placed in a .bss section"
 msgstr ""
 
-#: ada/gcc-interface/misc.c:154
+#: ada/gcc-interface/misc.c:155
 #, gcc-internal-format
 msgid "%<-gnat%> misspelled as %<-gant%>"
 msgstr ""
 
-#: ada/gcc-interface/misc.c:257
+#: ada/gcc-interface/misc.c:258
 #, gcc-internal-format
 msgid "%<-fexcess-precision=standard%> for Ada"
 msgstr ""
 
-#: ada/gcc-interface/misc.c:276
+#: ada/gcc-interface/misc.c:277
 #, gcc-internal-format
 msgid ""
 "STABS debugging information for Ada is obsolete and not supported anymore"
 msgstr ""
 
-#: ada/gcc-interface/trans.c:1622
+#: ada/gcc-interface/trans.c:1637
 #, gcc-internal-format
 msgid "subprogram %q+F not marked %<Inline_Always%>"
 msgstr ""
 
-#: ada/gcc-interface/trans.c:1624 ada/gcc-interface/trans.c:1630
+#: ada/gcc-interface/trans.c:1639 ada/gcc-interface/trans.c:1645
 #, gcc-internal-format
 msgid "parent subprogram cannot be inlined"
 msgstr ""
 
-#: ada/gcc-interface/trans.c:1628
+#: ada/gcc-interface/trans.c:1643
 #, gcc-internal-format
 msgid "subprogram %q+F not marked %<Inline%>"
 msgstr ""
 
-#: ada/gcc-interface/utils.c:4115
+#: ada/gcc-interface/utils.c:4160
 #, gcc-internal-format
 msgid "invalid element type for attribute %qs"
 msgstr ""
 
-#: ada/gcc-interface/utils.c:4139
+#: ada/gcc-interface/utils.c:4184
 #, gcc-internal-format
 msgid "number of components of vector not a power of two"
 msgstr ""
 
-#: ada/gcc-interface/utils.c:6334 ada/gcc-interface/utils.c:6512
-#: ada/gcc-interface/utils.c:6667
+#: ada/gcc-interface/utils.c:6381 ada/gcc-interface/utils.c:6559
+#: ada/gcc-interface/utils.c:6731
 #, gcc-internal-format
 msgid "%qs attribute ignored"
 msgstr ""
 
-#: ada/gcc-interface/utils.c:6389
+#: ada/gcc-interface/utils.c:6436
 #, gcc-internal-format
 msgid "%qs attribute without arguments on a non-prototype"
 msgstr ""
 
-#: ada/gcc-interface/utils.c:6404
+#: ada/gcc-interface/utils.c:6451
 #, gcc-internal-format
 msgid "%qs argument has invalid operand number (argument %lu)"
 msgstr ""
 
-#: ada/gcc-interface/utils.c:6426
+#: ada/gcc-interface/utils.c:6473
 #, gcc-internal-format
 msgid ""
 "%qs argument with out-of-range operand number (argument %lu, operand %lu)"
 msgstr ""
 
-#: ada/gcc-interface/utils.c:6435
+#: ada/gcc-interface/utils.c:6482
 #, gcc-internal-format
 msgid "%qs argument references non-pointer operand (argument %lu, operand %lu)"
 msgstr ""
 
-#: ada/gcc-interface/utils.c:6456
+#: ada/gcc-interface/utils.c:6503
 #, gcc-internal-format
 msgid "%qs attribute requires prototypes with named arguments"
 msgstr ""
 
-#: ada/gcc-interface/utils.c:6465
+#: ada/gcc-interface/utils.c:6512
 #, gcc-internal-format
 msgid "%qs attribute only applies to variadic functions"
 msgstr ""
 
-#: ada/gcc-interface/utils.c:6627
+#: ada/gcc-interface/utils.c:6691
 #, gcc-internal-format
 msgid "%qE attribute has no effect"
 msgstr ""
 
-#: ada/gcc-interface/utils.c:6911
+#: ada/gcc-interface/utils.c:6975
 #, gcc-internal-format
 msgid "attribute %qs applies to array types only"
 msgstr ""
@@ -40830,8 +41984,8 @@ msgstr ""
 msgid "could not read the BRIG file"
 msgstr ""
 
-#: c/c-convert.c:101 c/c-typeck.c:2203 c/c-typeck.c:12684 cp/typeck.c:2126
-#: cp/typeck.c:8441 cp/typeck.c:9232
+#: c/c-convert.c:101 c/c-typeck.c:2210 c/c-typeck.c:12705 cp/typeck.c:2139
+#: cp/typeck.c:8595 cp/typeck.c:9386
 #, gcc-internal-format
 msgid "void value not ignored as it ought to be"
 msgstr ""
@@ -40841,502 +41995,519 @@ msgstr ""
 msgid "conversion to non-scalar type requested"
 msgstr ""
 
-#: c/c-decl.c:829
+#: c/c-decl.c:832
 #, gcc-internal-format
 msgid "array %q+D assumed to have one element"
 msgstr ""
 
-#: c/c-decl.c:870
+#: c/c-decl.c:873
 #, gcc-internal-format
 msgid "%qD is static but used in inline function %qD which is not static"
 msgstr ""
 
-#: c/c-decl.c:875
+#: c/c-decl.c:878
 #, gcc-internal-format
 msgid "%q+D is static but declared in inline function %qD which is not static"
 msgstr ""
 
-#: c/c-decl.c:1071
+#: c/c-decl.c:1074
 #, gcc-internal-format, gfc-internal-format
 msgid "GCC supports only %u nested scopes"
 msgstr ""
 
-#: c/c-decl.c:1223 cp/decl.c:359
+#: c/c-decl.c:1226 cp/decl.c:363
 #, gcc-internal-format
 msgid "label %q+D used but not defined"
 msgstr ""
 
-#: c/c-decl.c:1269
+#: c/c-decl.c:1272
 #, gcc-internal-format
 msgid "nested function %q+D declared but never defined"
 msgstr ""
 
-#: c/c-decl.c:1283
+#: c/c-decl.c:1286
 #, gcc-internal-format
 msgid "inline function %q+D declared but never defined"
 msgstr ""
 
-#: c/c-decl.c:1300
+#: c/c-decl.c:1303
 #, gcc-internal-format
 msgid "unused variable %q+D"
 msgstr ""
 
-#: c/c-decl.c:1304 cp/decl.c:686
+#: c/c-decl.c:1307 cp/decl.c:690
 #, gcc-internal-format
 msgid "variable %qD set but not used"
 msgstr ""
 
-#: c/c-decl.c:1309
+#: c/c-decl.c:1312
 #, gcc-internal-format
 msgid "type of array %q+D completed incompatibly with implicit initialization"
 msgstr ""
 
-#: c/c-decl.c:1590 c/c-decl.c:7094 c/c-decl.c:8002 c/c-decl.c:8809
+#: c/c-decl.c:1593 c/c-decl.c:7337 c/c-decl.c:8245 c/c-decl.c:9052
 #, gcc-internal-format
 msgid "originally defined here"
 msgstr ""
 
-#: c/c-decl.c:1812
+#: c/c-decl.c:1818
 #, gcc-internal-format
 msgid ""
 "a parameter list with an ellipsis cannot match an empty parameter name list "
 "declaration"
 msgstr ""
 
-#: c/c-decl.c:1819
+#: c/c-decl.c:1825
 #, gcc-internal-format
 msgid ""
 "an argument type that has a default promotion cannot match an empty "
 "parameter name list declaration"
 msgstr ""
 
-#: c/c-decl.c:1867
+#: c/c-decl.c:1873
 #, gcc-internal-format
 msgid ""
 "prototype for %q+D declares more arguments than previous old-style definition"
 msgstr ""
 
-#: c/c-decl.c:1873
+#: c/c-decl.c:1879
 #, gcc-internal-format
 msgid ""
 "prototype for %q+D declares fewer arguments than previous old-style "
 "definition"
 msgstr ""
 
-#: c/c-decl.c:1882
+#: c/c-decl.c:1888
 #, 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.c:1895
+#: c/c-decl.c:1901
 #, gcc-internal-format
 msgid "prototype for %q+D follows non-prototype definition"
 msgstr ""
 
-#: c/c-decl.c:1911
+#: c/c-decl.c:1919
 #, gcc-internal-format
-msgid "previous definition of %q+D was here"
+msgid "previous definition of %q+D with type %qT"
 msgstr ""
 
-#: c/c-decl.c:1913
+#: c/c-decl.c:1923
 #, gcc-internal-format
-msgid "previous implicit declaration of %q+D was here"
+msgid "previous implicit declaration of %q+D with type %qT"
 msgstr ""
 
-#: c/c-decl.c:1915
+#: c/c-decl.c:1927
 #, gcc-internal-format
-msgid "previous declaration of %q+D was here"
+msgid "previous declaration of %q+D with type %qT"
 msgstr ""
 
-#: c/c-decl.c:1954
+#: c/c-decl.c:1967
 #, gcc-internal-format
 msgid "%q+D redeclared as different kind of symbol"
 msgstr ""
 
-#: c/c-decl.c:1959
+#: c/c-decl.c:1972
 #, gcc-internal-format
 msgid "built-in function %q+D declared as non-function"
 msgstr ""
 
-#: c/c-decl.c:1962 c/c-decl.c:3031
+#: c/c-decl.c:1975 c/c-decl.c:3045
 #, gcc-internal-format
 msgid "declaration of %q+D shadows a built-in function"
 msgstr ""
 
-#: c/c-decl.c:1972
+#: c/c-decl.c:1985
 #, gcc-internal-format
 msgid "redeclaration of enumerator %q+D"
 msgstr ""
 
-#: c/c-decl.c:2008
+#: c/c-decl.c:2021
 #, gcc-internal-format
 msgid "conflicting types for built-in function %q+D; expected %qT"
 msgstr ""
 
-#: c/c-decl.c:2018 c/c-decl.c:2043
+#: c/c-decl.c:2031 c/c-decl.c:2056
 #, gcc-internal-format
 msgid "%qD is declared in header %qs"
 msgstr ""
 
-#: c/c-decl.c:2029
+#: c/c-decl.c:2042
 #, gcc-internal-format
 msgid "mismatch in argument %u type of built-in function %qD; expected %qT"
 msgstr ""
 
-#: c/c-decl.c:2034
+#: c/c-decl.c:2047
 #, gcc-internal-format
 msgid "mismatch in return type of built-in function %qD; expected %qT"
 msgstr ""
 
-#: c/c-decl.c:2067 c/c-decl.c:2080 c/c-decl.c:2116
+#: c/c-decl.c:2080
 #, gcc-internal-format
 msgid "conflicting types for %q+D"
 msgstr ""
 
-#: c/c-decl.c:2096
+#: c/c-decl.c:2093 c/c-decl.c:2130
+#, gcc-internal-format
+msgid "conflicting types for %q+D; have %qT"
+msgstr ""
+
+#: c/c-decl.c:2110
 #, gcc-internal-format
 msgid "conflicting named address spaces (generic vs %s) for %q+D"
 msgstr ""
 
-#: c/c-decl.c:2100
+#: c/c-decl.c:2114
 #, gcc-internal-format
 msgid "conflicting named address spaces (%s vs generic) for %q+D"
 msgstr ""
 
-#: c/c-decl.c:2104
+#: c/c-decl.c:2118
 #, gcc-internal-format
 msgid "conflicting named address spaces (%s vs %s) for %q+D"
 msgstr ""
 
-#: c/c-decl.c:2113
+#: c/c-decl.c:2127
 #, gcc-internal-format
 msgid "conflicting type qualifiers for %q+D"
 msgstr ""
 
-#: c/c-decl.c:2138
+#: c/c-decl.c:2152
 #, gcc-internal-format
 msgid "redefinition of typedef %q+D with different type"
 msgstr ""
 
-#: c/c-decl.c:2151
+#: c/c-decl.c:2165
 #, gcc-internal-format
 msgid "redefinition of typedef %q+D with variably modified type"
 msgstr ""
 
-#: c/c-decl.c:2156
+#: c/c-decl.c:2170
 #, gcc-internal-format
 msgid "redefinition of typedef %q+D"
 msgstr ""
 
-#: c/c-decl.c:2184
+#: c/c-decl.c:2198
 #, gcc-internal-format
 msgid "declaration of %qD shadows a built-in function"
 msgstr ""
 
-#: c/c-decl.c:2200
+#: c/c-decl.c:2214
 #, gcc-internal-format
 msgid "declaration of built-in function %qD without a prototype; expected %qT"
 msgstr ""
 
-#: c/c-decl.c:2227 c/c-decl.c:2338
+#: c/c-decl.c:2241 c/c-decl.c:2352
 #, gcc-internal-format
 msgid "redefinition of %q+D"
 msgstr ""
 
-#: c/c-decl.c:2266 c/c-decl.c:2378
+#: c/c-decl.c:2280 c/c-decl.c:2392
 #, gcc-internal-format
 msgid "static declaration of %q+D follows non-static declaration"
 msgstr ""
 
-#: c/c-decl.c:2277 c/c-decl.c:2285 c/c-decl.c:2367 c/c-decl.c:2375
+#: c/c-decl.c:2291 c/c-decl.c:2299 c/c-decl.c:2381 c/c-decl.c:2389
 #, gcc-internal-format
 msgid "non-static declaration of %q+D follows static declaration"
 msgstr ""
 
-#: c/c-decl.c:2302
+#: c/c-decl.c:2316
 #, gcc-internal-format
 msgid "%<gnu_inline%> attribute present on %q+D"
 msgstr ""
 
-#: c/c-decl.c:2305
+#: c/c-decl.c:2319
 #, gcc-internal-format
 msgid "but not here"
 msgstr ""
 
-#: c/c-decl.c:2324
+#: c/c-decl.c:2338
 #, gcc-internal-format
 msgid "thread-local declaration of %q+D follows non-thread-local declaration"
 msgstr ""
 
-#: c/c-decl.c:2327
+#: c/c-decl.c:2341
 #, gcc-internal-format
 msgid "non-thread-local declaration of %q+D follows thread-local declaration"
 msgstr ""
 
-#: c/c-decl.c:2359
+#: c/c-decl.c:2373
 #, gcc-internal-format
 msgid "extern declaration of %q+D follows declaration with no linkage"
 msgstr ""
 
-#: c/c-decl.c:2397
+#: c/c-decl.c:2411
 #, gcc-internal-format
 msgid "declaration of %q+D with no linkage follows extern declaration"
 msgstr ""
 
-#: c/c-decl.c:2404
+#: c/c-decl.c:2418
 #, gcc-internal-format
 msgid "redeclaration of %q+D with no linkage"
 msgstr ""
 
-#: c/c-decl.c:2430
+#: c/c-decl.c:2444
 #, gcc-internal-format
 msgid ""
 "redeclaration of %q+D with different visibility (old visibility preserved)"
 msgstr ""
 
-#: c/c-decl.c:2451
+#: c/c-decl.c:2465
 #, gcc-internal-format
 msgid "redefinition of parameter %q+D"
 msgstr ""
 
-#: c/c-decl.c:2478
+#: c/c-decl.c:2492
 #, gcc-internal-format
 msgid "redundant redeclaration of %q+D"
 msgstr ""
 
-#: c/c-decl.c:2989
+#: c/c-decl.c:3003
 #, gcc-internal-format
 msgid "declaration of %q+D shadows previous non-variable"
 msgstr ""
 
-#: c/c-decl.c:3011
+#: c/c-decl.c:3025
 #, gcc-internal-format
 msgid "declaration of %qD shadows a parameter"
 msgstr ""
 
-#: c/c-decl.c:3024 cp/name-lookup.c:2841
+#: c/c-decl.c:3038 cp/name-lookup.c:3343
 #, gcc-internal-format
 msgid "declaration of %qD shadows a global declaration"
 msgstr ""
 
-#: c/c-decl.c:3050
+#: c/c-decl.c:3064
 #, gcc-internal-format
 msgid "declaration of %qD shadows a previous local"
 msgstr ""
 
-#: c/c-decl.c:3056 cp/name-lookup.c:2615
+#: c/c-decl.c:3070 cp/name-lookup.c:3117
 #, gcc-internal-format
 msgid "shadowed declaration is here"
 msgstr ""
 
-#: c/c-decl.c:3186
+#: c/c-decl.c:3200
 #, gcc-internal-format
 msgid "nested extern declaration of %qD"
 msgstr ""
 
-#: c/c-decl.c:3350 c/c-decl.c:3364
+#: c/c-decl.c:3364 c/c-decl.c:3378
 #, gcc-internal-format
 msgid "implicit declaration of function %qE; did you mean %qs?"
 msgstr ""
 
-#: c/c-decl.c:3356 c/c-decl.c:3369
+#: c/c-decl.c:3370 c/c-decl.c:3383
 #, gcc-internal-format
 msgid "implicit declaration of function %qE"
 msgstr ""
 
-#: c/c-decl.c:3388
+#: c/c-decl.c:3402
 #, gcc-internal-format
 msgid "include %qs or provide a declaration of %qE"
 msgstr ""
 
-#: c/c-decl.c:3658
+#: c/c-decl.c:3672
 #, gcc-internal-format
 msgid "incompatible implicit declaration of built-in function %qD"
 msgstr ""
 
-#: c/c-decl.c:3668
+#: c/c-decl.c:3682
 #, gcc-internal-format
 msgid "include %qs or provide a declaration of %qD"
 msgstr ""
 
-#: c/c-decl.c:3679
+#: c/c-decl.c:3693
 #, gcc-internal-format
 msgid "incompatible implicit declaration of function %qD"
 msgstr ""
 
-#: c/c-decl.c:3740
+#: c/c-decl.c:3754
 #, gcc-internal-format
 msgid "%qE undeclared here (not in a function); did you mean %qs?"
 msgstr ""
 
-#: c/c-decl.c:3745
+#: c/c-decl.c:3759
 #, gcc-internal-format
 msgid "%qE undeclared here (not in a function)"
 msgstr ""
 
-#: c/c-decl.c:3758
+#: c/c-decl.c:3772
 #, gcc-internal-format
 msgid "%qE undeclared (first use in this function); did you mean %qs?"
 msgstr ""
 
-#: c/c-decl.c:3763
+#: c/c-decl.c:3777
 #, gcc-internal-format
 msgid "%qE undeclared (first use in this function)"
 msgstr ""
 
-#: c/c-decl.c:3767
+#: c/c-decl.c:3781
 #, gcc-internal-format
 msgid ""
 "each undeclared identifier is reported only once for each function it "
 "appears in"
 msgstr ""
 
-#: c/c-decl.c:3815 cp/decl.c:3173
+#: c/c-decl.c:3829 cp/decl.c:3259
 #, gcc-internal-format
 msgid "label %qE referenced outside of any function"
 msgstr ""
 
-#: c/c-decl.c:3851
+#: c/c-decl.c:3865
 #, gcc-internal-format
 msgid "jump into scope of identifier with variably modified type"
 msgstr ""
 
-#: c/c-decl.c:3854
+#: c/c-decl.c:3868
 #, gcc-internal-format
 msgid "jump skips variable initialization"
 msgstr ""
 
-#: c/c-decl.c:3855 c/c-decl.c:3910 c/c-decl.c:4000
+#: c/c-decl.c:3869 c/c-decl.c:3924 c/c-decl.c:4014
 #, gcc-internal-format
 msgid "label %qD defined here"
 msgstr ""
 
-#: c/c-decl.c:3909 c/c-decl.c:3999
+#: c/c-decl.c:3923 c/c-decl.c:4013
 #, gcc-internal-format
 msgid "jump into statement expression"
 msgstr ""
 
-#: c/c-decl.c:3932
+#: c/c-decl.c:3946
 #, gcc-internal-format
 msgid "duplicate label declaration %qE"
 msgstr ""
 
-#: c/c-decl.c:4031 cp/decl.c:3579
+#: c/c-decl.c:4045 cp/decl.c:3665
 #, gcc-internal-format
 msgid "duplicate label %qD"
 msgstr ""
 
-#: c/c-decl.c:4062
+#: c/c-decl.c:4076
 #, gcc-internal-format
 msgid ""
 "traditional C lacks a separate namespace for labels, identifier %qE conflicts"
 msgstr ""
 
-#: c/c-decl.c:4127
+#: c/c-decl.c:4141
 #, gcc-internal-format
 msgid "switch jumps over variable initialization"
 msgstr ""
 
-#: c/c-decl.c:4128 c/c-decl.c:4139
+#: c/c-decl.c:4142 c/c-decl.c:4153
 #, gcc-internal-format
 msgid "switch starts here"
 msgstr ""
 
-#: c/c-decl.c:4138
+#: c/c-decl.c:4152
 #, gcc-internal-format
 msgid "switch jumps into statement expression"
 msgstr ""
 
-#: c/c-decl.c:4221
+#: c/c-decl.c:4235
 #, gcc-internal-format
 msgid "%qE defined as wrong kind of tag"
 msgstr ""
 
-#: c/c-decl.c:4654
+#: c/c-decl.c:4421 cp/tree.c:4731
+#, gcc-internal-format
+msgid "%qE attribute applied to %qD with void return type"
+msgstr ""
+
+#: c/c-decl.c:4430
+#, gcc-internal-format
+msgid ""
+"%qE attribute can only be applied to functions or to structure, union or "
+"enumeration types"
+msgstr ""
+
+#: c/c-decl.c:4695
 #, gcc-internal-format
 msgid "unnamed struct/union that defines no instances"
 msgstr ""
 
-#: c/c-decl.c:4665
+#: c/c-decl.c:4706
 #, gcc-internal-format
 msgid "empty declaration with storage class specifier does not redeclare tag"
 msgstr ""
 
-#: c/c-decl.c:4681
+#: c/c-decl.c:4722
 #, gcc-internal-format
 msgid "empty declaration with type qualifier does not redeclare tag"
 msgstr ""
 
-#: c/c-decl.c:4693
+#: c/c-decl.c:4734
 #, gcc-internal-format
 msgid "empty declaration with %<_Alignas%> does not redeclare tag"
 msgstr ""
 
-#: c/c-decl.c:4715 c/c-decl.c:4723
+#: c/c-decl.c:4756 c/c-decl.c:4764
 #, gcc-internal-format
 msgid "useless type name in empty declaration"
 msgstr ""
 
-#: c/c-decl.c:4731
+#: c/c-decl.c:4772
 #, gcc-internal-format
 msgid "%<inline%> in empty declaration"
 msgstr ""
 
-#: c/c-decl.c:4737
+#: c/c-decl.c:4778
 #, gcc-internal-format
 msgid "%<_Noreturn%> in empty declaration"
 msgstr ""
 
-#: c/c-decl.c:4743
+#: c/c-decl.c:4784
 #, gcc-internal-format
 msgid "%<auto%> in file-scope empty declaration"
 msgstr ""
 
-#: c/c-decl.c:4749
+#: c/c-decl.c:4790
 #, gcc-internal-format
 msgid "%<register%> in file-scope empty declaration"
 msgstr ""
 
-#: c/c-decl.c:4756
+#: c/c-decl.c:4797
 #, gcc-internal-format
 msgid "useless storage class specifier in empty declaration"
 msgstr ""
 
-#: c/c-decl.c:4762
+#: c/c-decl.c:4803
 #, gcc-internal-format
 msgid "useless %qs in empty declaration"
 msgstr ""
 
-#: c/c-decl.c:4775
+#: c/c-decl.c:4816
 #, gcc-internal-format
 msgid "useless type qualifier in empty declaration"
 msgstr ""
 
-#: c/c-decl.c:4782
+#: c/c-decl.c:4823
 #, gcc-internal-format
 msgid "useless %<_Alignas%> in empty declaration"
 msgstr ""
 
-#: c/c-decl.c:4800
+#: c/c-decl.c:4841
 #, gcc-internal-format
 msgid "invalid use of attributes in empty declaration"
 msgstr ""
 
-#: c/c-decl.c:4814 c/c-parser.c:2029
+#: c/c-decl.c:4855 c/c-parser.c:2033
 #, gcc-internal-format
 msgid "empty declaration"
 msgstr ""
 
-#: c/c-decl.c:4885
+#: c/c-decl.c:4926
 #, gcc-internal-format
 msgid ""
 "ISO C90 does not support %<static%> or type qualifiers in parameter array "
 "declarators"
 msgstr ""
 
-#: c/c-decl.c:4889
+#: c/c-decl.c:4930
 #, gcc-internal-format
 msgid "ISO C90 does not support %<[*]%> array declarators"
 msgstr ""
@@ -41344,28 +42515,28 @@ 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.c:4895 c/c-decl.c:7561 c/c-decl.c:9465
+#: c/c-decl.c:4936 c/c-decl.c:7804 c/c-decl.c:9722
 #, gcc-internal-format
 msgid "%<[*]%> not allowed in other than function prototype scope"
 msgstr ""
 
-#: c/c-decl.c:5046
+#: c/c-decl.c:5101
 #, gcc-internal-format
 msgid "%q+D is usually a function"
 msgstr ""
 
-#: c/c-decl.c:5055
+#: c/c-decl.c:5110
 #, gcc-internal-format
 msgid "typedef %qD is initialized (use %<__typeof__%> instead)"
 msgstr ""
 
-#: c/c-decl.c:5060
+#: c/c-decl.c:5115
 #, 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.c:5066
+#: c/c-decl.c:5121
 #, gcc-internal-format
 msgid "parameter %qD is initialized"
 msgstr ""
@@ -41374,267 +42545,267 @@ msgstr ""
 #. of VLAs themselves count as VLAs, it does not make
 #. sense to permit them to be initialized given that
 #. ordinary VLAs may not be initialized.
-#: c/c-decl.c:5085 c/c-decl.c:5100 c/c-typeck.c:8074
+#: c/c-decl.c:5140 c/c-decl.c:5155 c/c-typeck.c:8153
 #, gcc-internal-format
 msgid "variable-sized object may not be initialized"
 msgstr ""
 
-#: c/c-decl.c:5091
+#: c/c-decl.c:5146
 #, gcc-internal-format
 msgid "variable %qD has initializer but incomplete type"
 msgstr ""
 
-#: c/c-decl.c:5180
+#: c/c-decl.c:5235
 #, gcc-internal-format
 msgid "inline function %q+D given attribute %qs"
 msgstr ""
 
-#: c/c-decl.c:5230
+#: c/c-decl.c:5285
 #, gcc-internal-format
 msgid "uninitialized const member in %qT is invalid in C++"
 msgstr ""
 
-#: c/c-decl.c:5232
+#: c/c-decl.c:5287
 #, gcc-internal-format
 msgid "%qD should be initialized"
 msgstr ""
 
-#: c/c-decl.c:5313
+#: c/c-decl.c:5368
 #, gcc-internal-format
 msgid "initializer fails to determine size of %q+D"
 msgstr ""
 
-#: c/c-decl.c:5318
+#: c/c-decl.c:5373
 #, gcc-internal-format
 msgid "array size missing in %q+D"
 msgstr ""
 
-#: c/c-decl.c:5322
+#: c/c-decl.c:5377
 #, gcc-internal-format
 msgid "zero or negative size array %q+D"
 msgstr ""
 
-#: c/c-decl.c:5411
+#: c/c-decl.c:5466
 #, gcc-internal-format
 msgid "storage size of %q+D isn%'t constant"
 msgstr ""
 
-#: c/c-decl.c:5461
+#: c/c-decl.c:5516
 #, gcc-internal-format
 msgid "ignoring %<asm%> specifier for non-static local variable %q+D"
 msgstr ""
 
-#: c/c-decl.c:5491
+#: c/c-decl.c:5554
 #, gcc-internal-format
 msgid "cannot put object with volatile field into register"
 msgstr ""
 
-#: c/c-decl.c:5577
+#: c/c-decl.c:5640
 #, gcc-internal-format
 msgid "uninitialized %<const %D%> is invalid in C++"
 msgstr ""
 
-#: c/c-decl.c:5592 cp/decl.c:8002
+#: c/c-decl.c:5655 cp/decl.c:8142
 #, gcc-internal-format
 msgid "%q+D in declare target directive does not have mappable type"
 msgstr ""
 
-#: c/c-decl.c:5656
+#: c/c-decl.c:5899
 #, gcc-internal-format
 msgid "ISO C forbids forward parameter declarations"
 msgstr ""
 
-#: c/c-decl.c:5767
+#: c/c-decl.c:6010
 #, gcc-internal-format
 msgid "defining a type in a compound literal is invalid in C++"
 msgstr ""
 
-#: c/c-decl.c:5788 c/c-decl.c:5803
+#: c/c-decl.c:6031 c/c-decl.c:6046
 #, gcc-internal-format
 msgid "bit-field %qs width not an integer constant"
 msgstr ""
 
-#: c/c-decl.c:5798
+#: c/c-decl.c:6041
 #, gcc-internal-format
 msgid "bit-field %qs width not an integer constant expression"
 msgstr ""
 
-#: c/c-decl.c:5809
+#: c/c-decl.c:6052
 #, gcc-internal-format
 msgid "negative width in bit-field %qs"
 msgstr ""
 
-#: c/c-decl.c:5814
+#: c/c-decl.c:6057
 #, gcc-internal-format
 msgid "zero width for bit-field %qs"
 msgstr ""
 
-#: c/c-decl.c:5824
+#: c/c-decl.c:6067
 #, gcc-internal-format
 msgid "bit-field %qs has invalid type"
 msgstr ""
 
-#: c/c-decl.c:5830
+#: c/c-decl.c:6073
 #, gcc-internal-format
 msgid "cannot declare bit-field %qs with %<warn_if_not_aligned%> type"
 msgstr ""
 
-#: c/c-decl.c:5841
+#: c/c-decl.c:6084
 #, gcc-internal-format
 msgid "type of bit-field %qs is a GCC extension"
 msgstr ""
 
-#: c/c-decl.c:5847
+#: c/c-decl.c:6090
 #, gcc-internal-format
 msgid "width of %qs exceeds its type"
 msgstr ""
 
-#: c/c-decl.c:5860
+#: c/c-decl.c:6103
 #, gcc-internal-format
 msgid "%qs is narrower than values of its type"
 msgstr ""
 
-#: c/c-decl.c:5875
+#: c/c-decl.c:6118
 #, gcc-internal-format
 msgid "ISO C90 forbids array %qE whose size cannot be evaluated"
 msgstr ""
 
-#: c/c-decl.c:5878
+#: c/c-decl.c:6121
 #, gcc-internal-format
 msgid "ISO C90 forbids array whose size cannot be evaluated"
 msgstr ""
 
-#: c/c-decl.c:5885
+#: c/c-decl.c:6128
 #, gcc-internal-format
 msgid "ISO C90 forbids variable length array %qE"
 msgstr ""
 
-#: c/c-decl.c:5887
+#: c/c-decl.c:6130
 #, gcc-internal-format
 msgid "ISO C90 forbids variable length array"
 msgstr ""
 
-#: c/c-decl.c:6098 c/c-decl.c:6494 c/c-decl.c:6504
+#: c/c-decl.c:6341 c/c-decl.c:6737 c/c-decl.c:6747
 #, gcc-internal-format
 msgid "variably modified %qE at file scope"
 msgstr ""
 
-#: c/c-decl.c:6100
+#: c/c-decl.c:6343
 #, gcc-internal-format
 msgid "variably modified field at file scope"
 msgstr ""
 
-#: c/c-decl.c:6120
+#: c/c-decl.c:6363
 #, gcc-internal-format
 msgid "type defaults to %<int%> in declaration of %qE"
 msgstr ""
 
-#: c/c-decl.c:6124
+#: c/c-decl.c:6367
 #, gcc-internal-format
 msgid "type defaults to %<int%> in type name"
 msgstr ""
 
-#: c/c-decl.c:6156
+#: c/c-decl.c:6399
 #, gcc-internal-format
 msgid "duplicate %<const%>"
 msgstr ""
 
-#: c/c-decl.c:6158
+#: c/c-decl.c:6401
 #, gcc-internal-format
 msgid "duplicate %<restrict%>"
 msgstr ""
 
-#: c/c-decl.c:6160
+#: c/c-decl.c:6403
 #, gcc-internal-format
 msgid "duplicate %<volatile%>"
 msgstr ""
 
-#: c/c-decl.c:6162
+#: c/c-decl.c:6405
 #, gcc-internal-format
 msgid "duplicate %<_Atomic%>"
 msgstr ""
 
-#: c/c-decl.c:6165
+#: c/c-decl.c:6408
 #, gcc-internal-format, gfc-internal-format
 msgid "conflicting named address spaces (%s vs %s)"
 msgstr ""
 
-#: c/c-decl.c:6188 c/c-parser.c:3042
+#: c/c-decl.c:6431 c/c-parser.c:3048
 #, gcc-internal-format
 msgid "%<_Atomic%>-qualified array type"
 msgstr ""
 
-#: c/c-decl.c:6202
+#: c/c-decl.c:6445
 #, gcc-internal-format
 msgid "function definition declared %<auto%>"
 msgstr ""
 
-#: c/c-decl.c:6204
+#: c/c-decl.c:6447
 #, gcc-internal-format
 msgid "function definition declared %<register%>"
 msgstr ""
 
-#: c/c-decl.c:6206
+#: c/c-decl.c:6449
 #, gcc-internal-format
 msgid "function definition declared %<typedef%>"
 msgstr ""
 
-#: c/c-decl.c:6208
+#: c/c-decl.c:6451
 #, gcc-internal-format
 msgid "function definition declared %qs"
 msgstr ""
 
-#: c/c-decl.c:6226
+#: c/c-decl.c:6469
 #, gcc-internal-format
 msgid "storage class specified for structure field %qE"
 msgstr ""
 
-#: c/c-decl.c:6229
+#: c/c-decl.c:6472
 #, gcc-internal-format
 msgid "storage class specified for structure field"
 msgstr ""
 
-#: c/c-decl.c:6233
+#: c/c-decl.c:6476
 #, gcc-internal-format
 msgid "storage class specified for parameter %qE"
 msgstr ""
 
-#: c/c-decl.c:6236
+#: c/c-decl.c:6479
 #, gcc-internal-format
 msgid "storage class specified for unnamed parameter"
 msgstr ""
 
-#: c/c-decl.c:6239 cp/decl.c:11921
+#: c/c-decl.c:6482 cp/decl.c:12070
 #, gcc-internal-format
 msgid "storage class specified for typename"
 msgstr ""
 
-#: c/c-decl.c:6256
+#: c/c-decl.c:6499
 #, gcc-internal-format
 msgid "%qE initialized and declared %<extern%>"
 msgstr ""
 
-#: c/c-decl.c:6260
+#: c/c-decl.c:6503
 #, gcc-internal-format
 msgid "%qE has both %<extern%> and initializer"
 msgstr ""
 
-#: c/c-decl.c:6265
+#: c/c-decl.c:6508
 #, gcc-internal-format
 msgid "file-scope declaration of %qE specifies %<auto%>"
 msgstr ""
 
-#: c/c-decl.c:6269
+#: c/c-decl.c:6512
 #, gcc-internal-format
 msgid "file-scope declaration of %qE specifies %<register%>"
 msgstr ""
 
-#: c/c-decl.c:6274
+#: c/c-decl.c:6517
 #, gcc-internal-format
 msgid "nested function %qE declared %<extern%>"
 msgstr ""
 
-#: c/c-decl.c:6277
+#: c/c-decl.c:6520
 #, gcc-internal-format
 msgid "function-scope %qE implicitly auto and declared %qs"
 msgstr ""
@@ -41642,719 +42813,721 @@ 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.c:6324 c/c-decl.c:6718
+#: c/c-decl.c:6567 c/c-decl.c:6961
 #, gcc-internal-format
 msgid "static or type qualifiers in non-parameter array declarator"
 msgstr ""
 
-#: c/c-decl.c:6385
+#: c/c-decl.c:6628
 #, gcc-internal-format
 msgid "declaration of %qE as array of voids"
 msgstr ""
 
-#: c/c-decl.c:6387
+#: c/c-decl.c:6630
 #, gcc-internal-format
 msgid "declaration of type name as array of voids"
 msgstr ""
 
-#: c/c-decl.c:6394
+#: c/c-decl.c:6637
 #, gcc-internal-format
 msgid "declaration of %qE as array of functions"
 msgstr ""
 
-#: c/c-decl.c:6397
+#: c/c-decl.c:6640
 #, gcc-internal-format
 msgid "declaration of type name as array of functions"
 msgstr ""
 
-#: c/c-decl.c:6405 c/c-decl.c:8533
+#: c/c-decl.c:6648 c/c-decl.c:8776
 #, gcc-internal-format
 msgid "invalid use of structure with flexible array member"
 msgstr ""
 
-#: c/c-decl.c:6437
+#: c/c-decl.c:6680
 #, gcc-internal-format
 msgid "size of array %qE has non-integer type"
 msgstr ""
 
-#: c/c-decl.c:6441
+#: c/c-decl.c:6684
 #, gcc-internal-format
 msgid "size of unnamed array has non-integer type"
 msgstr ""
 
-#: c/c-decl.c:6449
+#: c/c-decl.c:6692
 #, gcc-internal-format
 msgid "size of array %qE has incomplete type"
 msgstr ""
 
-#: c/c-decl.c:6452
+#: c/c-decl.c:6695
 #, gcc-internal-format
 msgid "size of unnamed array has incomplete type"
 msgstr ""
 
-#: c/c-decl.c:6464
+#: c/c-decl.c:6707
 #, gcc-internal-format
 msgid "ISO C forbids zero-size array %qE"
 msgstr ""
 
-#: c/c-decl.c:6467
+#: c/c-decl.c:6710
 #, gcc-internal-format
 msgid "ISO C forbids zero-size array"
 msgstr ""
 
-#: c/c-decl.c:6476
+#: c/c-decl.c:6719
 #, gcc-internal-format
 msgid "size of array %qE is negative"
 msgstr ""
 
-#: c/c-decl.c:6478
+#: c/c-decl.c:6721
 #, gcc-internal-format
 msgid "size of unnamed array is negative"
 msgstr ""
 
-#: c/c-decl.c:6564
+#: c/c-decl.c:6807
 #, gcc-internal-format
 msgid "size of array %qE is too large"
 msgstr ""
 
-#: c/c-decl.c:6567
+#: c/c-decl.c:6810
 #, gcc-internal-format
 msgid "size of unnamed array is too large"
 msgstr ""
 
-#: c/c-decl.c:6606 c/c-decl.c:7264
+#: c/c-decl.c:6849 c/c-decl.c:7507
 #, gcc-internal-format
 msgid "ISO C90 does not support flexible array members"
 msgstr ""
 
 #. C99 6.7.5.2p4
-#: c/c-decl.c:6628
+#: c/c-decl.c:6871
 #, gcc-internal-format
 msgid "%<[*]%> not in a declaration"
 msgstr ""
 
-#: c/c-decl.c:6641
+#: c/c-decl.c:6884
 #, gcc-internal-format
 msgid "array type has incomplete element type %qT"
 msgstr ""
 
-#: c/c-decl.c:6647
+#: c/c-decl.c:6890
 #, gcc-internal-format
 msgid ""
 "declaration of %qE as multidimensional array must have bounds for all "
 "dimensions except the first"
 msgstr ""
 
-#: c/c-decl.c:6651
+#: c/c-decl.c:6894
 #, gcc-internal-format
 msgid ""
 "declaration of multidimensional array must have bounds for all dimensions "
 "except the first"
 msgstr ""
 
-#: c/c-decl.c:6754
+#: c/c-decl.c:6997
 #, gcc-internal-format
 msgid "%qE declared as function returning a function"
 msgstr ""
 
-#: c/c-decl.c:6757
+#: c/c-decl.c:7000
 #, gcc-internal-format
 msgid "type name declared as function returning a function"
 msgstr ""
 
-#: c/c-decl.c:6764
+#: c/c-decl.c:7007
 #, gcc-internal-format
 msgid "%qE declared as function returning an array"
 msgstr ""
 
-#: c/c-decl.c:6767
+#: c/c-decl.c:7010
 #, gcc-internal-format
 msgid "type name declared as function returning an array"
 msgstr ""
 
-#: c/c-decl.c:6808
+#: c/c-decl.c:7051
 #, gcc-internal-format
 msgid "function definition has qualified void return type"
 msgstr ""
 
-#: c/c-decl.c:6812 cp/decl.c:12215
+#: c/c-decl.c:7055 cp/decl.c:12370
 #, gcc-internal-format
 msgid "type qualifiers ignored on function return type"
 msgstr ""
 
-#: c/c-decl.c:6850 c/c-decl.c:7060 c/c-decl.c:7114 c/c-decl.c:7198
-#: c/c-decl.c:7323 c/c-parser.c:3044
+#: c/c-decl.c:7093 c/c-decl.c:7303 c/c-decl.c:7357 c/c-decl.c:7441
+#: c/c-decl.c:7566 c/c-parser.c:3050
 #, gcc-internal-format
 msgid "%<_Atomic%>-qualified function type"
 msgstr ""
 
-#: c/c-decl.c:6856 c/c-decl.c:7066 c/c-decl.c:7203 c/c-decl.c:7328
+#: c/c-decl.c:7099 c/c-decl.c:7309 c/c-decl.c:7446 c/c-decl.c:7571
 #, gcc-internal-format
 msgid "ISO C forbids qualified function types"
 msgstr ""
 
-#: c/c-decl.c:6951
+#: c/c-decl.c:7194
 #, gcc-internal-format
 msgid "%qs combined with %<auto%> qualifier for %qE"
 msgstr ""
 
-#: c/c-decl.c:6955
+#: c/c-decl.c:7198
 #, gcc-internal-format
 msgid "%qs combined with %<register%> qualifier for %qE"
 msgstr ""
 
-#: c/c-decl.c:6961
+#: c/c-decl.c:7204
 #, gcc-internal-format
 msgid "%qs specified for auto variable %qE"
 msgstr ""
 
-#: c/c-decl.c:6977
+#: c/c-decl.c:7220
 #, gcc-internal-format
 msgid "%qs specified for parameter %qE"
 msgstr ""
 
-#: c/c-decl.c:6980
+#: c/c-decl.c:7223
 #, gcc-internal-format
 msgid "%qs specified for unnamed parameter"
 msgstr ""
 
-#: c/c-decl.c:6986
+#: c/c-decl.c:7229
 #, gcc-internal-format
 msgid "%qs specified for structure field %qE"
 msgstr ""
 
-#: c/c-decl.c:6989
+#: c/c-decl.c:7232
 #, gcc-internal-format
 msgid "%qs specified for structure field"
 msgstr ""
 
-#: c/c-decl.c:7004
+#: c/c-decl.c:7247
 #, gcc-internal-format
 msgid "bit-field %qE has atomic type"
 msgstr ""
 
-#: c/c-decl.c:7006
+#: c/c-decl.c:7249
 #, gcc-internal-format
 msgid "bit-field has atomic type"
 msgstr ""
 
-#: c/c-decl.c:7015
+#: c/c-decl.c:7258
 #, gcc-internal-format
 msgid "alignment specified for typedef %qE"
 msgstr ""
 
-#: c/c-decl.c:7017
+#: c/c-decl.c:7260
 #, gcc-internal-format
 msgid "alignment specified for %<register%> object %qE"
 msgstr ""
 
-#: c/c-decl.c:7022
+#: c/c-decl.c:7265
 #, gcc-internal-format
 msgid "alignment specified for parameter %qE"
 msgstr ""
 
-#: c/c-decl.c:7024
+#: c/c-decl.c:7267
 #, gcc-internal-format
 msgid "alignment specified for unnamed parameter"
 msgstr ""
 
-#: c/c-decl.c:7029
+#: c/c-decl.c:7272
 #, gcc-internal-format
 msgid "alignment specified for bit-field %qE"
 msgstr ""
 
-#: c/c-decl.c:7031
+#: c/c-decl.c:7274
 #, gcc-internal-format
 msgid "alignment specified for unnamed bit-field"
 msgstr ""
 
-#: c/c-decl.c:7034
+#: c/c-decl.c:7277
 #, gcc-internal-format
 msgid "alignment specified for function %qE"
 msgstr ""
 
-#: c/c-decl.c:7041
+#: c/c-decl.c:7284
 #, gcc-internal-format
 msgid "%<_Alignas%> specifiers cannot reduce alignment of %qE"
 msgstr ""
 
-#: c/c-decl.c:7044
+#: c/c-decl.c:7287
 #, gcc-internal-format
 msgid "%<_Alignas%> specifiers cannot reduce alignment of unnamed field"
 msgstr ""
 
-#: c/c-decl.c:7075
+#: c/c-decl.c:7318
 #, gcc-internal-format
 msgid "typedef %q+D declared %<inline%>"
 msgstr ""
 
-#: c/c-decl.c:7077
+#: c/c-decl.c:7320
 #, gcc-internal-format
 msgid "typedef %q+D declared %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.c:7120
+#: c/c-decl.c:7363
 #, gcc-internal-format
 msgid "ISO C forbids const or volatile function types"
 msgstr ""
 
 #. C99 6.7.2.1p8
-#: c/c-decl.c:7131
+#: c/c-decl.c:7374
 #, gcc-internal-format
 msgid "a member of a structure or union cannot have a variably modified type"
 msgstr ""
 
-#: c/c-decl.c:7148 cp/decl.c:10850
+#: c/c-decl.c:7391 cp/decl.c:10999
 #, gcc-internal-format
 msgid "variable or field %qE declared void"
 msgstr ""
 
-#: c/c-decl.c:7188
+#: c/c-decl.c:7431
 #, gcc-internal-format
 msgid "attributes in parameter array declarator ignored"
 msgstr ""
 
-#: c/c-decl.c:7230
+#: c/c-decl.c:7473
 #, gcc-internal-format
 msgid "parameter %q+D declared %<inline%>"
 msgstr ""
 
-#: c/c-decl.c:7232
+#: c/c-decl.c:7475
 #, gcc-internal-format
 msgid "parameter %q+D declared %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.c:7245
+#: c/c-decl.c:7488
 #, gcc-internal-format
 msgid "field %qE declared as a function"
 msgstr ""
 
-#: c/c-decl.c:7252
+#: c/c-decl.c:7495
 #, gcc-internal-format
 msgid "field %qE has incomplete type"
 msgstr ""
 
-#: c/c-decl.c:7254
+#: c/c-decl.c:7497
 #, gcc-internal-format
 msgid "unnamed field has incomplete type"
 msgstr ""
 
-#: c/c-decl.c:7294 c/c-decl.c:7305 c/c-decl.c:7308
+#: c/c-decl.c:7537 c/c-decl.c:7548 c/c-decl.c:7551
 #, gcc-internal-format
 msgid "invalid storage class for function %qE"
 msgstr ""
 
-#: c/c-decl.c:7365
+#: c/c-decl.c:7608
 #, gcc-internal-format
 msgid "cannot inline function %<main%>"
 msgstr ""
 
-#: c/c-decl.c:7367
+#: c/c-decl.c:7610
 #, gcc-internal-format
 msgid "%<main%> declared %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.c:7378
+#: c/c-decl.c:7621
 #, gcc-internal-format
 msgid "ISO C99 does not support %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.c:7381
+#: c/c-decl.c:7624
 #, gcc-internal-format
 msgid "ISO C90 does not support %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.c:7410
+#: c/c-decl.c:7653
 #, gcc-internal-format
 msgid "variable previously declared %<static%> redeclared %<extern%>"
 msgstr ""
 
-#: c/c-decl.c:7420
+#: c/c-decl.c:7663
 #, gcc-internal-format
 msgid "variable %q+D declared %<inline%>"
 msgstr ""
 
-#: c/c-decl.c:7422
+#: c/c-decl.c:7665
 #, gcc-internal-format
 msgid "variable %q+D declared %<_Noreturn%>"
 msgstr ""
 
-#: c/c-decl.c:7457
+#: c/c-decl.c:7700
 #, gcc-internal-format
 msgid "non-nested function with variably modified type"
 msgstr ""
 
-#: c/c-decl.c:7459
+#: c/c-decl.c:7702
 #, gcc-internal-format
 msgid "object with variably modified type must have no linkage"
 msgstr ""
 
-#: c/c-decl.c:7567 c/c-decl.c:9286
+#: c/c-decl.c:7810 c/c-decl.c:9530
 #, gcc-internal-format
 msgid "function declaration isn%'t a prototype"
 msgstr ""
 
-#: c/c-decl.c:7577
+#: c/c-decl.c:7820
 #, gcc-internal-format
 msgid "parameter names (without types) in function declaration"
 msgstr ""
 
-#: c/c-decl.c:7622
+#: c/c-decl.c:7865
 #, gcc-internal-format
 msgid "parameter %u (%q+D) has incomplete type"
 msgstr ""
 
-#: c/c-decl.c:7626
+#: c/c-decl.c:7869
 #, gcc-internal-format, gfc-internal-format
 msgid "parameter %u has incomplete type"
 msgstr ""
 
-#: c/c-decl.c:7637
+#: c/c-decl.c:7880
 #, gcc-internal-format
 msgid "parameter %u (%q+D) has void type"
 msgstr ""
 
-#: c/c-decl.c:7641
+#: c/c-decl.c:7884
 #, gcc-internal-format, gfc-internal-format
 msgid "parameter %u has void type"
 msgstr ""
 
-#: c/c-decl.c:7715
+#: c/c-decl.c:7958
 #, gcc-internal-format
 msgid "%<void%> as only parameter may not be qualified"
 msgstr ""
 
-#: c/c-decl.c:7719 c/c-decl.c:7755
+#: c/c-decl.c:7962 c/c-decl.c:7998
 #, gcc-internal-format
 msgid "%<void%> must be the only parameter"
 msgstr ""
 
-#: c/c-decl.c:7749
+#: c/c-decl.c:7992
 #, gcc-internal-format
 msgid "parameter %q+D has just a forward declaration"
 msgstr ""
 
-#: c/c-decl.c:7795
+#: c/c-decl.c:8038
 #, gcc-internal-format
 msgid ""
 "%<%s %E%> declared inside parameter list will not be visible outside of this "
 "definition or declaration"
 msgstr ""
 
-#: c/c-decl.c:7801
+#: c/c-decl.c:8044
 #, 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.c:7909
+#: c/c-decl.c:8152
 #, gcc-internal-format
 msgid "enum type defined here"
 msgstr ""
 
-#: c/c-decl.c:7915
+#: c/c-decl.c:8158
 #, gcc-internal-format
 msgid "struct defined here"
 msgstr ""
 
-#: c/c-decl.c:7921
+#: c/c-decl.c:8164
 #, gcc-internal-format
 msgid "union defined here"
 msgstr ""
 
-#: c/c-decl.c:7998
+#: c/c-decl.c:8241
 #, gcc-internal-format
 msgid "redefinition of %<union %E%>"
 msgstr ""
 
-#: c/c-decl.c:8000
+#: c/c-decl.c:8243
 #, gcc-internal-format
 msgid "redefinition of %<struct %E%>"
 msgstr ""
 
-#: c/c-decl.c:8009
+#: c/c-decl.c:8252
 #, gcc-internal-format
 msgid "nested redefinition of %<union %E%>"
 msgstr ""
 
-#: c/c-decl.c:8011
+#: c/c-decl.c:8254
 #, gcc-internal-format
 msgid "nested redefinition of %<struct %E%>"
 msgstr ""
 
-#: c/c-decl.c:8041 c/c-decl.c:8828
+#: c/c-decl.c:8284 c/c-decl.c:9071
 #, gcc-internal-format
 msgid "defining type in %qs expression is invalid in C++"
 msgstr ""
 
-#: c/c-decl.c:8108 cp/decl.c:5013
+#: c/c-decl.c:8351 cp/decl.c:5100
 #, gcc-internal-format
 msgid "declaration does not declare anything"
 msgstr ""
 
-#: c/c-decl.c:8113
+#: c/c-decl.c:8356
 #, gcc-internal-format
 msgid "ISO C99 doesn%'t support unnamed structs/unions"
 msgstr ""
 
-#: c/c-decl.c:8116
+#: c/c-decl.c:8359
 #, gcc-internal-format
 msgid "ISO C90 doesn%'t support unnamed structs/unions"
 msgstr ""
 
-#: c/c-decl.c:8209 c/c-decl.c:8227 c/c-decl.c:8288
+#: c/c-decl.c:8452 c/c-decl.c:8470 c/c-decl.c:8531
 #, gcc-internal-format
 msgid "duplicate member %q+D"
 msgstr ""
 
-#: c/c-decl.c:8314
+#: c/c-decl.c:8557
 #, gcc-internal-format
 msgid "empty struct has size 0 in C, size 1 in C++"
 msgstr ""
 
-#: c/c-decl.c:8317
+#: c/c-decl.c:8560
 #, gcc-internal-format
 msgid "empty union has size 0 in C, size 1 in C++"
 msgstr ""
 
-#: c/c-decl.c:8442
+#: c/c-decl.c:8685
 #, gcc-internal-format
 msgid "union has no named members"
 msgstr ""
 
-#: c/c-decl.c:8444
+#: c/c-decl.c:8687
 #, gcc-internal-format
 msgid "union has no members"
 msgstr ""
 
-#: c/c-decl.c:8449
+#: c/c-decl.c:8692
 #, gcc-internal-format
 msgid "struct has no named members"
 msgstr ""
 
-#: c/c-decl.c:8451
+#: c/c-decl.c:8694
 #, gcc-internal-format
 msgid "struct has no members"
 msgstr ""
 
-#: c/c-decl.c:8512 cp/decl.c:13175
+#: c/c-decl.c:8755 cp/decl.c:13342
 #, gcc-internal-format
 msgid "flexible array member in union"
 msgstr ""
 
-#: c/c-decl.c:8518
+#: c/c-decl.c:8761
 #, gcc-internal-format
 msgid "flexible array member not at end of struct"
 msgstr ""
 
-#: c/c-decl.c:8524
+#: c/c-decl.c:8767
 #, gcc-internal-format
 msgid "flexible array member in a struct with no named members"
 msgstr ""
 
-#: c/c-decl.c:8555
+#: c/c-decl.c:8798
 #, gcc-internal-format
 msgid "type %qT is too large"
 msgstr ""
 
-#: c/c-decl.c:8660
+#: c/c-decl.c:8903
 #, gcc-internal-format
 msgid "union cannot be made transparent"
 msgstr ""
 
-#: c/c-decl.c:8800
+#: c/c-decl.c:9043
 #, gcc-internal-format
 msgid "nested redefinition of %<enum %E%>"
 msgstr ""
 
 #. This enum is a named one that has been declared already.
-#: c/c-decl.c:8807
+#: c/c-decl.c:9050
 #, gcc-internal-format
 msgid "redeclaration of %<enum %E%>"
 msgstr ""
 
-#: c/c-decl.c:8886 cp/decl.c:15631
+#: c/c-decl.c:9129 cp/decl.c:15815
 #, gcc-internal-format
 msgid "specified mode too small for enumerated values"
 msgstr ""
 
-#: c/c-decl.c:8901
+#: c/c-decl.c:9144
 #, gcc-internal-format
 msgid "enumeration values exceed range of largest integer"
 msgstr ""
 
-#: c/c-decl.c:9021 c/c-decl.c:9037
+#: c/c-decl.c:9264 c/c-decl.c:9280
 #, gcc-internal-format
 msgid "enumerator value for %qE is not an integer constant"
 msgstr ""
 
-#: c/c-decl.c:9032
+#: c/c-decl.c:9275
 #, gcc-internal-format
 msgid "enumerator value for %qE is not an integer constant expression"
 msgstr ""
 
-#: c/c-decl.c:9056
+#: c/c-decl.c:9299
 #, gcc-internal-format
 msgid "overflow in enumeration values"
 msgstr ""
 
-#: c/c-decl.c:9064
+#: c/c-decl.c:9307
 #, gcc-internal-format
 msgid "ISO C restricts enumerator values to range of %<int%>"
 msgstr ""
 
-#: c/c-decl.c:9183 cp/decl.c:5311 cp/decl.c:16190
+#: c/c-decl.c:9424 cp/decl.c:5411 cp/decl.c:16366
 #, gcc-internal-format
 msgid "inline function %qD given attribute %qs"
 msgstr ""
 
-#: c/c-decl.c:9201
+#: c/c-decl.c:9442
 #, gcc-internal-format
 msgid "return type is an incomplete type"
 msgstr ""
 
-#: c/c-decl.c:9212
+#: c/c-decl.c:9453
 #, gcc-internal-format
 msgid "return type defaults to %<int%>"
 msgstr ""
 
-#: c/c-decl.c:9236
+#: c/c-decl.c:9481
 #, gcc-internal-format
 msgid "%q+D defined as variadic function without prototype"
 msgstr ""
 
-#: c/c-decl.c:9295
+#: c/c-decl.c:9539
 #, gcc-internal-format
 msgid "no previous prototype for %qD"
 msgstr ""
 
-#: c/c-decl.c:9304
+#: c/c-decl.c:9548
 #, gcc-internal-format
 msgid "%qD was used with no prototype before its definition"
 msgstr ""
 
-#: c/c-decl.c:9312 cp/decl.c:16325
+#: c/c-decl.c:9556 cp/decl.c:16501
 #, gcc-internal-format
 msgid "no previous declaration for %qD"
 msgstr ""
 
-#: c/c-decl.c:9322
+#: c/c-decl.c:9566
 #, gcc-internal-format
 msgid "%qD was used with no declaration before its definition"
 msgstr ""
 
-#: c/c-decl.c:9341
+#: c/c-decl.c:9585
 #, gcc-internal-format
 msgid "return type of %qD is not %<int%>"
 msgstr ""
 
-#: c/c-decl.c:9343
+#: c/c-decl.c:9587
 #, gcc-internal-format
 msgid "%<_Atomic%>-qualified return type of %qD"
 msgstr ""
 
-#: c/c-decl.c:9350
+#: c/c-decl.c:9594
 #, gcc-internal-format
 msgid "%qD is normally a non-static function"
 msgstr ""
 
-#: c/c-decl.c:9387
+#: c/c-decl.c:9642
 #, gcc-internal-format
 msgid "old-style parameter declarations in prototyped function definition"
 msgstr ""
 
-#: c/c-decl.c:9402
+#: c/c-decl.c:9657
 #, gcc-internal-format
 msgid "traditional C rejects ISO C style function definitions"
 msgstr ""
 
-#: c/c-decl.c:9418
+#: c/c-decl.c:9674
 #, gcc-internal-format
-msgid "parameter name omitted"
+msgid ""
+"ISO C does not support omitting parameter names in function definitions "
+"before C2X"
 msgstr ""
 
-#: c/c-decl.c:9457 c/c-decl.c:9461
+#: c/c-decl.c:9714 c/c-decl.c:9718
 #, gcc-internal-format
 msgid "old-style function definition"
 msgstr ""
 
-#: c/c-decl.c:9474
+#: c/c-decl.c:9731
 #, gcc-internal-format
 msgid "parameter name missing from parameter list"
 msgstr ""
 
-#: c/c-decl.c:9490
+#: c/c-decl.c:9747
 #, gcc-internal-format
 msgid "%qD declared as a non-parameter"
 msgstr ""
 
-#: c/c-decl.c:9498
+#: c/c-decl.c:9755
 #, gcc-internal-format
 msgid "multiple parameters named %qD"
 msgstr ""
 
-#: c/c-decl.c:9507
+#: c/c-decl.c:9764
 #, gcc-internal-format
 msgid "parameter %qD declared with void type"
 msgstr ""
 
-#: c/c-decl.c:9536 c/c-decl.c:9541
+#: c/c-decl.c:9793 c/c-decl.c:9798
 #, gcc-internal-format
 msgid "type of %qD defaults to %<int%>"
 msgstr ""
 
-#: c/c-decl.c:9561
+#: c/c-decl.c:9818
 #, gcc-internal-format
 msgid "parameter %qD has incomplete type"
 msgstr ""
 
-#: c/c-decl.c:9568
+#: c/c-decl.c:9825
 #, gcc-internal-format
 msgid "declaration for parameter %qD but no such parameter"
 msgstr ""
 
-#: c/c-decl.c:9621
+#: c/c-decl.c:9878
 #, gcc-internal-format
 msgid "number of arguments doesn%'t match built-in prototype"
 msgstr ""
 
-#: c/c-decl.c:9632
+#: c/c-decl.c:9889
 #, gcc-internal-format
 msgid "number of arguments doesn%'t match prototype"
 msgstr ""
 
-#: c/c-decl.c:9635 c/c-decl.c:9682 c/c-decl.c:9696
+#: c/c-decl.c:9892 c/c-decl.c:9939 c/c-decl.c:9953
 #, gcc-internal-format
 msgid "prototype declaration"
 msgstr ""
 
-#: c/c-decl.c:9674
+#: c/c-decl.c:9931
 #, gcc-internal-format
 msgid "promoted argument %qD doesn%'t match built-in prototype"
 msgstr ""
 
-#: c/c-decl.c:9679
+#: c/c-decl.c:9936
 #, gcc-internal-format
 msgid "promoted argument %qD doesn%'t match prototype"
 msgstr ""
 
-#: c/c-decl.c:9689
+#: c/c-decl.c:9946
 #, gcc-internal-format
 msgid "argument %qD doesn%'t match built-in prototype"
 msgstr ""
 
-#: c/c-decl.c:9694
+#: c/c-decl.c:9951
 #, gcc-internal-format
 msgid "argument %qD doesn%'t match prototype"
 msgstr ""
 
-#: c/c-decl.c:9952 cp/decl.c:17209
+#: c/c-decl.c:10209 cp/decl.c:17326
 #, gcc-internal-format
 msgid "no return statement in function returning non-void"
 msgstr ""
 
-#: c/c-decl.c:9971 cp/decl.c:17241
+#: c/c-decl.c:10228 cp/decl.c:17410
 #, gcc-internal-format
 msgid "parameter %qD set but not used"
 msgstr ""
@@ -42362,378 +43535,377 @@ msgstr ""
 #. If we get here, declarations have been used in a for loop without
 #. the C99 for loop scope.  This doesn't make much sense, so don't
 #. allow it.
-#: c/c-decl.c:10067
+#: c/c-decl.c:10324
 #, gcc-internal-format
 msgid "%<for%> loop initial declarations are only allowed in C99 or C11 mode"
 msgstr ""
 
-#: c/c-decl.c:10072
+#: c/c-decl.c:10329
 #, gcc-internal-format
 msgid ""
 "use option %<-std=c99%>, %<-std=gnu99%>, %<-std=c11%> or %<-std=gnu11%> to "
 "compile your code"
 msgstr ""
 
-#: c/c-decl.c:10079
+#: c/c-decl.c:10336
 #, gcc-internal-format
 msgid "ISO C90 does not support %<for%> loop initial declarations"
 msgstr ""
 
-#: c/c-decl.c:10111
+#: c/c-decl.c:10368
 #, gcc-internal-format
 msgid "declaration of static variable %qD in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.c:10115
+#: c/c-decl.c:10372
 #, gcc-internal-format
 msgid ""
 "declaration of %<extern%> variable %qD in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.c:10122
+#: c/c-decl.c:10379
 #, gcc-internal-format
 msgid "%<struct %E%> declared in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.c:10127
+#: c/c-decl.c:10384
 #, gcc-internal-format
 msgid "%<union %E%> declared in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.c:10131
+#: c/c-decl.c:10388
 #, gcc-internal-format
 msgid "%<enum %E%> declared in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.c:10135
+#: c/c-decl.c:10392
 #, gcc-internal-format
 msgid "declaration of non-variable %qD in %<for%> loop initial declaration"
 msgstr ""
 
-#: c/c-decl.c:10429
+#: c/c-decl.c:10684
 #, gcc-internal-format
 msgid "incompatible address space qualifiers %qs and %qs"
 msgstr ""
 
-#: c/c-decl.c:10488 c/c-decl.c:10495
+#: c/c-decl.c:10743 c/c-decl.c:10750
 #, gcc-internal-format
 msgid "duplicate %qE declaration specifier"
 msgstr ""
 
-#: c/c-decl.c:10523 c/c-decl.c:10907 c/c-decl.c:11302
+#: c/c-decl.c:10778 c/c-decl.c:11162 c/c-decl.c:11557
 #, gcc-internal-format
 msgid "two or more data types in declaration specifiers"
 msgstr ""
 
-#: c/c-decl.c:10535 cp/parser.c:30503
+#: c/c-decl.c:10790 cp/parser.c:31377
 #, gcc-internal-format
 msgid "%<long long long%> is too long for GCC"
 msgstr ""
 
-#: c/c-decl.c:10548
+#: c/c-decl.c:10803
 #, gcc-internal-format
 msgid "ISO C90 does not support %<long long%>"
 msgstr ""
 
-#: c/c-decl.c:10777 c/c-parser.c:10028
+#: c/c-decl.c:11032 c/c-parser.c:9962
 #, gcc-internal-format
 msgid "ISO C90 does not support complex types"
 msgstr ""
 
-#: c/c-decl.c:10823
+#: c/c-decl.c:11078
 #, gcc-internal-format
 msgid "ISO C does not support saturating types"
 msgstr ""
 
-#: c/c-decl.c:10894 c/c-decl.c:11460
+#: c/c-decl.c:11149 c/c-decl.c:11715
 #, gcc-internal-format
 msgid "duplicate %qE"
 msgstr ""
 
-#: c/c-decl.c:10954
+#: c/c-decl.c:11209
 #, gcc-internal-format
 msgid "ISO C does not support %<__int%d%> types"
 msgstr ""
 
-#: c/c-decl.c:10976
+#: c/c-decl.c:11231
 #, gcc-internal-format
 msgid "%<__int%d%> is not supported on this target"
 msgstr ""
 
-#: c/c-decl.c:11019
+#: c/c-decl.c:11274
 #, gcc-internal-format
 msgid "ISO C90 does not support boolean types"
 msgstr ""
 
-#: c/c-decl.c:11138
+#: c/c-decl.c:11393
 #, gcc-internal-format
 msgid "ISO C does not support the %<_Float%d%s%> type"
 msgstr ""
 
-#: c/c-decl.c:11188
+#: c/c-decl.c:11443
 #, gcc-internal-format
 msgid "%<_Float%d%s%> is not supported on this target"
 msgstr ""
 
-#: c/c-decl.c:11259
+#: c/c-decl.c:11514
 #, gcc-internal-format
 msgid "ISO C does not support decimal floating-point before C2X"
 msgstr ""
 
-#: c/c-decl.c:11283 c/c-decl.c:11556 c/c-parser.c:9042
+#: c/c-decl.c:11538 c/c-decl.c:11811 c/c-parser.c:8973
 #, gcc-internal-format
 msgid "fixed-point types not supported for this target"
 msgstr ""
 
-#: c/c-decl.c:11285
+#: c/c-decl.c:11540
 #, gcc-internal-format
 msgid "ISO C does not support fixed-point types"
 msgstr ""
 
-#: c/c-decl.c:11320
+#: c/c-decl.c:11575
 #, gcc-internal-format
 msgid "C++ lookup of %qD would return a field, not a type"
 msgstr ""
 
-#: c/c-decl.c:11333
+#: c/c-decl.c:11588
 #, gcc-internal-format
 msgid "%qE fails to be a typedef or built in type"
 msgstr ""
 
-#: c/c-decl.c:11382
+#: c/c-decl.c:11637
 #, gcc-internal-format
 msgid "%qE is not at beginning of declaration"
 msgstr ""
 
-#: c/c-decl.c:11403
+#: c/c-decl.c:11658
 #, gcc-internal-format
 msgid "%qE used with %<auto%>"
 msgstr ""
 
-#: c/c-decl.c:11405
+#: c/c-decl.c:11660
 #, gcc-internal-format
 msgid "%qE used with %<register%>"
 msgstr ""
 
-#: c/c-decl.c:11407
+#: c/c-decl.c:11662
 #, gcc-internal-format
 msgid "%qE used with %<typedef%>"
 msgstr ""
 
-#: c/c-decl.c:11421 c/c-parser.c:8407
+#: c/c-decl.c:11676 c/c-parser.c:8331
 #, gcc-internal-format
 msgid "ISO C99 does not support %qE"
 msgstr ""
 
-#: c/c-decl.c:11424 c/c-parser.c:8410
+#: c/c-decl.c:11679 c/c-parser.c:8334
 #, gcc-internal-format
 msgid "ISO C90 does not support %qE"
 msgstr ""
 
-#: c/c-decl.c:11436
+#: c/c-decl.c:11691
 #, gcc-internal-format
 msgid "%<__thread%> before %<extern%>"
 msgstr ""
 
-#: c/c-decl.c:11445
+#: c/c-decl.c:11700
 #, gcc-internal-format
 msgid "%<__thread%> before %<static%>"
 msgstr ""
 
-#: c/c-decl.c:11458
+#: c/c-decl.c:11713
 #, gcc-internal-format
 msgid "duplicate %<_Thread_local%> or %<__thread%>"
 msgstr ""
 
-#: c/c-decl.c:11466
+#: c/c-decl.c:11721
 #, gcc-internal-format
 msgid "multiple storage classes in declaration specifiers"
 msgstr ""
 
-#: c/c-decl.c:11474
+#: c/c-decl.c:11729
 #, gcc-internal-format
 msgid "%qs used with %qE"
 msgstr ""
 
-#: c/c-decl.c:11553
+#: c/c-decl.c:11808
 #, gcc-internal-format
 msgid "%<_Sat%> is used without %<_Fract%> or %<_Accum%>"
 msgstr ""
 
-#: c/c-decl.c:11568
+#: c/c-decl.c:11823
 #, gcc-internal-format
 msgid "ISO C does not support plain %<complex%> meaning %<double complex%>"
 msgstr ""
 
-#: c/c-decl.c:11595
+#: c/c-decl.c:11850
 #, gcc-internal-format
 msgid "%<__auto_type%> followed by %<[[]]%> attributes"
 msgstr ""
 
-#: c/c-decl.c:11621 c/c-decl.c:11637 c/c-decl.c:11663
+#: c/c-decl.c:11876 c/c-decl.c:11892 c/c-decl.c:11918
 #, gcc-internal-format
 msgid "ISO C does not support complex integer types"
 msgstr ""
 
-#: c/c-decl.c:12062 cp/semantics.c:5655
+#: c/c-decl.c:12341 cp/semantics.c:5723
 #, 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.c:12066 cp/semantics.c:5659
+#: c/c-decl.c:12345 cp/semantics.c:5727
 #, 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.c:387 c/c-typeck.c:11966 cp/typeck.c:4935
+#: c/c-fold.c:387 c/c-typeck.c:11986 cp/typeck.c:5065
 #, gcc-internal-format
 msgid "left shift of negative value"
 msgstr ""
 
-#: c/c-fold.c:397 c/c-typeck.c:11975 cp/typeck.c:4943
+#: c/c-fold.c:397 c/c-typeck.c:11995 cp/typeck.c:5073
 #, gcc-internal-format
 msgid "left shift count is negative"
 msgstr ""
 
-#: c/c-fold.c:398 c/c-typeck.c:11904 cp/typeck.c:4883
+#: c/c-fold.c:398 c/c-typeck.c:11924 cp/typeck.c:5013
 #, gcc-internal-format
 msgid "right shift count is negative"
 msgstr ""
 
-#: c/c-fold.c:406 c/c-typeck.c:11994 cp/typeck.c:4951
+#: c/c-fold.c:406 c/c-typeck.c:12014 cp/typeck.c:5081
 #, gcc-internal-format
 msgid "left shift count >= width of type"
 msgstr ""
 
-#: c/c-fold.c:407 c/c-typeck.c:11928 cp/typeck.c:4894
+#: c/c-fold.c:407 c/c-typeck.c:11948 cp/typeck.c:5024
 #, gcc-internal-format
 msgid "right shift count >= width of type"
 msgstr ""
 
-#: c/c-fold.c:414 c/c-typeck.c:11986
+#: c/c-fold.c:414 c/c-typeck.c:12006
 #, gcc-internal-format
 msgid "left shift count >= width of vector element"
 msgstr ""
 
-#: c/c-fold.c:415 c/c-typeck.c:11915
+#: c/c-fold.c:415 c/c-typeck.c:11935
 #, gcc-internal-format
 msgid "right shift count >= width of vector element"
 msgstr ""
 
-#: c/c-parser.c:320
+#: c/c-parser.c:321
 #, gcc-internal-format
 msgid "identifier %qE conflicts with C++ keyword"
 msgstr ""
 
-#: c/c-parser.c:973 cp/parser.c:2910
+#: c/c-parser.c:974 cp/parser.c:2979
 #, gcc-internal-format
 msgid "version control conflict marker in file"
 msgstr ""
 
-#: c/c-parser.c:1195 cp/parser.c:2990
+#: c/c-parser.c:1196 cp/parser.c:3060
 #, gcc-internal-format
 msgid "to match this %qs"
 msgstr ""
 
-#: c/c-parser.c:1324 cp/parser.c:30737
+#: c/c-parser.c:1325 cp/parser.c:31611
 #, gcc-internal-format
 msgid "expected end of line"
 msgstr ""
 
-#: c/c-parser.c:1637
+#: c/c-parser.c:1641
 #, gcc-internal-format
 msgid "ISO C forbids an empty translation unit"
 msgstr ""
 
-#: c/c-parser.c:1661 cp/semantics.c:3090
+#: c/c-parser.c:1665 cp/semantics.c:3131
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare target%> without corresponding %<#pragma omp end "
 "declare target%>"
 msgstr ""
 
-#: c/c-parser.c:1749 c/c-parser.c:11273
+#: c/c-parser.c:1753 c/c-parser.c:11216
 #, gcc-internal-format
 msgid "ISO C does not allow extra %<;%> outside of a function"
 msgstr ""
 
-#: c/c-parser.c:1937
+#: c/c-parser.c:1941
 #, gcc-internal-format
 msgid "unknown type name %qE; use %<struct%> keyword to refer to the type"
 msgstr ""
 
-#: c/c-parser.c:1945
+#: c/c-parser.c:1949
 #, gcc-internal-format
 msgid "unknown type name %qE; use %<union%> keyword to refer to the type"
 msgstr ""
 
-#: c/c-parser.c:1953
+#: c/c-parser.c:1957
 #, gcc-internal-format
 msgid "unknown type name %qE; use %<enum%> keyword to refer to the type"
 msgstr ""
 
-#: c/c-parser.c:1966 c/c-parser.c:4375
+#: c/c-parser.c:1970 c/c-parser.c:4376
 #, gcc-internal-format
 msgid "unknown type name %qE; did you mean %qs?"
 msgstr ""
 
-#: c/c-parser.c:1970 c/c-parser.c:2871 c/c-parser.c:4379
+#: c/c-parser.c:1974 c/c-parser.c:2877 c/c-parser.c:4380
 #, gcc-internal-format
 msgid "unknown type name %qE"
 msgstr ""
 
-#: c/c-parser.c:1997 c/c-parser.c:12533 c/c-parser.c:18735 c/c-parser.c:19246
-#: c/c-parser.c:19755 cp/parser.c:40189 cp/parser.c:44007
+#: c/c-parser.c:2001 c/c-parser.c:12514 c/c-parser.c:18882 c/c-parser.c:19399
+#: c/c-parser.c:19916 cp/parser.c:41259 cp/parser.c:45124
 #, gcc-internal-format
 msgid "expected declaration specifiers"
 msgstr ""
 
-#: c/c-parser.c:2007
+#: c/c-parser.c:2011
 #, gcc-internal-format
 msgid "%<__auto_type%> in empty declaration"
 msgstr ""
 
-#: c/c-parser.c:2021
+#: c/c-parser.c:2025
 #, gcc-internal-format
 msgid "%<fallthrough%> attribute at top level"
 msgstr ""
 
-#: c/c-parser.c:2044 c/c-parser.c:3603
+#: c/c-parser.c:2048 c/c-parser.c:3609
 #, gcc-internal-format
 msgid "expected %<;%>, identifier or %<(%>"
 msgstr ""
 
-#: c/c-parser.c:2062 cp/parser.c:32934 cp/parser.c:33008
+#: c/c-parser.c:2066 cp/parser.c:33808 cp/parser.c:33880
 #, gcc-internal-format
 msgid "prefix attributes are ignored for methods"
 msgstr ""
 
-#: c/c-parser.c:2097
+#: c/c-parser.c:2101
 #, gcc-internal-format
 msgid "prefix attributes are ignored for implementations"
 msgstr ""
 
-#: c/c-parser.c:2118
+#: c/c-parser.c:2122
 #, gcc-internal-format
 msgid "unexpected attribute"
 msgstr ""
 
-#: c/c-parser.c:2128 c/c-parser.c:5976 c/c-parser.c:6300 cp/parser.c:11573
-#: cp/parser.c:11780
+#: c/c-parser.c:2132 c/c-parser.c:6220 cp/parser.c:11777 cp/parser.c:11984
 #, gcc-internal-format
 msgid "%<fallthrough%> attribute not followed by %<;%>"
 msgstr ""
 
-#: c/c-parser.c:2160
+#: c/c-parser.c:2164
 #, gcc-internal-format
 msgid "%<__auto_type%> requires a plain identifier as declarator"
 msgstr ""
 
-#: c/c-parser.c:2177
+#: c/c-parser.c:2181
 #, gcc-internal-format
 msgid "data definition has no type or storage class"
 msgstr ""
@@ -42741,28 +43913,28 @@ msgstr ""
 #. This means there is an attribute specifier after
 #. the declarator in a function definition.  Provide
 #. some more information for the user.
-#: c/c-parser.c:2192
+#: c/c-parser.c:2196
 #, gcc-internal-format
 msgid ""
 "attributes should be specified before the declarator in a function definition"
 msgstr ""
 
-#: c/c-parser.c:2219
+#: c/c-parser.c:2223
 #, gcc-internal-format
 msgid "%<__auto_type%> used with a bit-field initializer"
 msgstr ""
 
-#: c/c-parser.c:2294 c/c-parser.c:2417
+#: c/c-parser.c:2294 c/c-parser.c:2423
 #, gcc-internal-format
 msgid "%<__auto_type%> requires an initialized data declaration"
 msgstr ""
 
-#: c/c-parser.c:2380
+#: c/c-parser.c:2386
 #, gcc-internal-format
 msgid "%<__auto_type%> may only be used with a single declarator"
 msgstr ""
 
-#: c/c-parser.c:2409 cp/parser.c:13904
+#: c/c-parser.c:2415 cp/parser.c:14487
 #, gcc-internal-format
 msgid "expected %<,%> or %<;%>"
 msgstr ""
@@ -42770,269 +43942,260 @@ 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.c:2423 c/c-parser.c:2464
+#: c/c-parser.c:2429 c/c-parser.c:2470
 #, gcc-internal-format
 msgid "expected %<=%>, %<,%>, %<;%>, %<asm%> or %<__attribute__%>"
 msgstr ""
 
-#: c/c-parser.c:2431
+#: c/c-parser.c:2437
 #, gcc-internal-format
 msgid "ISO C forbids nested functions"
 msgstr ""
 
-#: c/c-parser.c:2615
+#: c/c-parser.c:2621
 #, gcc-internal-format
 msgid "ISO C99 does not support %<_Static_assert%>"
 msgstr ""
 
-#: c/c-parser.c:2618
+#: c/c-parser.c:2624
 #, gcc-internal-format
 msgid "ISO C90 does not support %<_Static_assert%>"
 msgstr ""
 
-#: c/c-parser.c:2639 c/c-parser.c:7430 c/c-parser.c:12594
+#: c/c-parser.c:2645 c/c-parser.c:7343 c/c-parser.c:12575
 #, gcc-internal-format
 msgid "expected string literal"
 msgstr ""
 
-#: c/c-parser.c:2648
+#: c/c-parser.c:2654
 #, gcc-internal-format
 msgid "ISO C11 does not support omitting the string in %<_Static_assert%>"
 msgstr ""
 
-#: c/c-parser.c:2654
+#: c/c-parser.c:2660
 #, gcc-internal-format
 msgid "expression in static assertion is not an integer"
 msgstr ""
 
-#: c/c-parser.c:2663
+#: c/c-parser.c:2669
 #, gcc-internal-format
 msgid "expression in static assertion is not an integer constant expression"
 msgstr ""
 
-#: c/c-parser.c:2668
+#: c/c-parser.c:2674
 #, gcc-internal-format
 msgid "expression in static assertion is not constant"
 msgstr ""
 
-#: c/c-parser.c:2675
+#: c/c-parser.c:2681
 #, gcc-internal-format
 msgid "static assertion failed: %E"
 msgstr ""
 
-#: c/c-parser.c:2677 cp/semantics.c:9745
+#: c/c-parser.c:2683 cp/semantics.c:10061
 #, gcc-internal-format
 msgid "static assertion failed"
 msgstr ""
 
-#: c/c-parser.c:3013
+#: c/c-parser.c:3019
 #, gcc-internal-format
 msgid "%<_Atomic%> in Objective-C"
 msgstr ""
 
-#: c/c-parser.c:3016
+#: c/c-parser.c:3022
 #, gcc-internal-format
 msgid "ISO C99 does not support the %<_Atomic%> qualifier"
 msgstr ""
 
-#: c/c-parser.c:3019
+#: c/c-parser.c:3025
 #, gcc-internal-format
 msgid "ISO C90 does not support the %<_Atomic%> qualifier"
 msgstr ""
 
-#: c/c-parser.c:3046
+#: c/c-parser.c:3052
 #, gcc-internal-format
 msgid "%<_Atomic%> applied to a qualified type"
 msgstr ""
 
-#: c/c-parser.c:3076
+#: c/c-parser.c:3082
 #, gcc-internal-format
 msgid "%<__GIMPLE%> only valid with %<-fgimple%>"
 msgstr ""
 
-#: c/c-parser.c:3186
+#: c/c-parser.c:3192
 #, gcc-internal-format
 msgid "empty enum is invalid"
 msgstr ""
 
-#: c/c-parser.c:3190 c/c-parser.c:4193 c/c-parser.c:4894 c/c-parser.c:4906
-#: c/c-parser.c:5389 c/c-parser.c:5687 c/c-parser.c:7297 c/c-parser.c:7380
-#: c/c-parser.c:8270 c/c-parser.c:8573 c/c-parser.c:8582 c/c-parser.c:9102
-#: c/c-parser.c:9285 c/c-parser.c:9311 c/c-parser.c:10139 c/c-parser.c:10565
-#: c/c-parser.c:10602 c/c-parser.c:10856 c/c-parser.c:10906 c/c-parser.c:11066
-#: c/c-parser.c:11096 c/c-parser.c:11104 c/c-parser.c:11133 c/c-parser.c:11146
-#: c/c-parser.c:11452 c/c-parser.c:11576 c/c-parser.c:12034 c/c-parser.c:12069
-#: c/c-parser.c:12122 c/c-parser.c:12175 c/c-parser.c:12191 c/c-parser.c:12237
-#: c/c-parser.c:13021 c/c-parser.c:13054 c/c-parser.c:15311 c/c-parser.c:15421
-#: c/c-parser.c:15694 c/c-parser.c:17793 c/c-parser.c:20270 c/c-parser.c:20461
-#: c/gimple-parser.c:1773 c/gimple-parser.c:1811 cp/parser.c:8764
-#: cp/parser.c:30740 cp/parser.c:33790 cp/parser.c:33820 cp/parser.c:33890
-#: cp/parser.c:36395 cp/parser.c:36517 cp/parser.c:41732 cp/parser.c:43324
+#: c/c-parser.c:3196 c/c-parser.c:4194 c/c-parser.c:4895 c/c-parser.c:4907
+#: c/c-parser.c:5340 c/c-parser.c:5639 c/c-parser.c:7210 c/c-parser.c:7293
+#: c/c-parser.c:8194 c/c-parser.c:8497 c/c-parser.c:8506 c/c-parser.c:9033
+#: c/c-parser.c:9219 c/c-parser.c:9245 c/c-parser.c:10073 c/c-parser.c:10499
+#: c/c-parser.c:10536 c/c-parser.c:10798 c/c-parser.c:10849 c/c-parser.c:11009
+#: c/c-parser.c:11039 c/c-parser.c:11047 c/c-parser.c:11076 c/c-parser.c:11089
+#: c/c-parser.c:11395 c/c-parser.c:11519 c/c-parser.c:12103 c/c-parser.c:12156
+#: c/c-parser.c:12172 c/c-parser.c:12218 c/c-parser.c:13004 c/c-parser.c:13037
+#: c/c-parser.c:15349 c/c-parser.c:15459 c/c-parser.c:15732 c/c-parser.c:15995
+#: c/c-parser.c:17952 c/c-parser.c:20434 c/c-parser.c:20625
+#: c/gimple-parser.c:1776 c/gimple-parser.c:1814 cp/parser.c:8953
+#: cp/parser.c:31614 cp/parser.c:34785 cp/parser.c:37350 cp/parser.c:37518
+#: cp/parser.c:42832 cp/parser.c:44439
 #, gcc-internal-format
 msgid "expected identifier"
 msgstr ""
 
-#: c/c-parser.c:3232 cp/parser.c:19514
+#: c/c-parser.c:3238 cp/parser.c:20113
 #, gcc-internal-format
 msgid "comma at end of enumerator list"
 msgstr ""
 
-#: c/c-parser.c:3238
+#: c/c-parser.c:3244
 #, gcc-internal-format
 msgid "expected %<,%> or %<}%>"
 msgstr ""
 
-#: c/c-parser.c:3277
+#: c/c-parser.c:3283
 #, gcc-internal-format
 msgid "ISO C forbids forward references to %<enum%> types"
 msgstr ""
 
-#: c/c-parser.c:3400
+#: c/c-parser.c:3406
 #, gcc-internal-format
 msgid "expected class name"
 msgstr ""
 
-#: c/c-parser.c:3422
+#: c/c-parser.c:3428
 #, gcc-internal-format
 msgid "extra semicolon in struct or union specified"
 msgstr ""
 
-#: c/c-parser.c:3451
+#: c/c-parser.c:3457
 #, gcc-internal-format
 msgid "no semicolon at end of struct or union"
 msgstr ""
 
-#: c/c-parser.c:3565 c/c-parser.c:5184
+#: c/c-parser.c:3571 c/c-parser.c:5135
 #, gcc-internal-format
 msgid "expected specifier-qualifier-list"
 msgstr ""
 
-#: c/c-parser.c:3576
+#: c/c-parser.c:3582
 #, gcc-internal-format
 msgid "ISO C forbids member declarations with no members"
 msgstr ""
 
-#: c/c-parser.c:3666
+#: c/c-parser.c:3672
 #, gcc-internal-format
 msgid "expected %<,%>, %<;%> or %<}%>"
 msgstr ""
 
-#: c/c-parser.c:3673
+#: c/c-parser.c:3679
 #, gcc-internal-format
 msgid "expected %<:%>, %<,%>, %<;%>, %<}%> or %<__attribute__%>"
 msgstr ""
 
-#: c/c-parser.c:3727
+#: c/c-parser.c:3733
 #, gcc-internal-format
 msgid "%<typeof%> applied to a bit-field"
 msgstr ""
 
-#: c/c-parser.c:3764
+#: c/c-parser.c:3765
 #, gcc-internal-format
 msgid "ISO C99 does not support %<_Alignas%>"
 msgstr ""
 
-#: c/c-parser.c:3767
+#: c/c-parser.c:3768
 #, gcc-internal-format
 msgid "ISO C90 does not support %<_Alignas%>"
 msgstr ""
 
-#: c/c-parser.c:4021
+#: c/c-parser.c:4022
 #, gcc-internal-format
 msgid "expected identifier or %<(%>"
 msgstr ""
 
-#: c/c-parser.c:4262
+#: c/c-parser.c:4263
 #, gcc-internal-format
 msgid "ISO C requires a named argument before %<...%>"
 msgstr ""
 
-#: c/c-parser.c:4386
+#: c/c-parser.c:4387
 #, gcc-internal-format
 msgid "expected declaration specifiers or %<...%>"
 msgstr ""
 
-#: c/c-parser.c:4611
+#: c/c-parser.c:4612
 #, gcc-internal-format
 msgid "parentheses must be omitted if attribute argument list is empty"
 msgstr ""
 
-#: c/c-parser.c:4931 cp/parser.c:26957
+#: c/c-parser.c:4932 cp/parser.c:27815
 #, gcc-internal-format
 msgid "%qE attribute does not take any arguments"
 msgstr ""
 
-#: c/c-parser.c:4983
+#: c/c-parser.c:4981
 #, gcc-internal-format
 msgid "ISO C does not support %<[[]]%> attributes before C2X"
 msgstr ""
 
-#: c/c-parser.c:5015 cp/parser.c:27023
-#, gcc-internal-format
-msgid "attribute %<deprecated%> can appear at most once in an attribute-list"
-msgstr ""
-
-#: c/c-parser.c:5025
-#, gcc-internal-format
-msgid "attribute %<fallthrough%> can appear at most once in an attribute-list"
-msgstr ""
-
-#: c/c-parser.c:5035
-#, gcc-internal-format
-msgid "attribute %<maybe_unused%> can appear at most once in an attribute-list"
-msgstr ""
-
-#: c/c-parser.c:5294
+#: c/c-parser.c:5245
 #, gcc-internal-format
 msgid "ISO C forbids empty initializer braces"
 msgstr ""
 
-#: c/c-parser.c:5353
+#: c/c-parser.c:5304
 #, gcc-internal-format
 msgid "obsolete use of designated initializer with %<:%>"
 msgstr ""
 
-#: c/c-parser.c:5498
+#: c/c-parser.c:5449
 #, gcc-internal-format
 msgid "ISO C forbids specifying range of elements to initialize"
 msgstr ""
 
-#: c/c-parser.c:5510
+#: c/c-parser.c:5461
 #, gcc-internal-format
 msgid "ISO C90 forbids specifying subobject to initialize"
 msgstr ""
 
-#: c/c-parser.c:5518
+#: c/c-parser.c:5469
 #, gcc-internal-format
 msgid "obsolete use of designated initializer without %<=%>"
 msgstr ""
 
-#: c/c-parser.c:5702
+#: c/c-parser.c:5654
 #, gcc-internal-format
 msgid "ISO C forbids label declarations"
 msgstr ""
 
-#: c/c-parser.c:5708 c/c-parser.c:5794 c/c-parser.c:5808 c/gimple-parser.c:405
+#: c/c-parser.c:5660 c/c-parser.c:5749 c/c-parser.c:5763 c/gimple-parser.c:405
 #, gcc-internal-format
 msgid "expected declaration or statement"
 msgstr ""
 
-#: c/c-parser.c:5752 c/c-parser.c:5785
+#: c/c-parser.c:5695
+#, gcc-internal-format
+msgid ""
+"a label can only be part of a statement and a declaration is not a statement"
+msgstr ""
+
+#: c/c-parser.c:5707 c/c-parser.c:5740
 #, gcc-internal-format
 msgid "ISO C90 forbids mixed declarations and code"
 msgstr ""
 
-#: c/c-parser.c:5816
+#: c/c-parser.c:5771
 #, gcc-internal-format
 msgid "expected %<}%> before %<else%>"
 msgstr ""
 
-#: c/c-parser.c:5821 cp/parser.c:11903
+#: c/c-parser.c:5776 cp/parser.c:12107
 #, gcc-internal-format
 msgid "%<else%> without a previous %<if%>"
 msgstr ""
 
-#: c/c-parser.c:5839
+#: c/c-parser.c:5794
 #, gcc-internal-format
 msgid "label at end of compound statement"
 msgstr ""
@@ -43041,1490 +44204,1532 @@ 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.c:5859 c/c-parser.c:6321 c/gimple-parser.c:2273 cp/parser.c:11523
+#: c/c-parser.c:5815 c/c-parser.c:5828 c/c-parser.c:6241 c/gimple-parser.c:2276
+#: cp/parser.c:11727
 #, gcc-internal-format
 msgid "expected statement"
 msgstr ""
 
-#: c/c-parser.c:5918
+#: c/c-parser.c:5882
 #, gcc-internal-format
 msgid "expected %<:%> or %<...%>"
 msgstr ""
 
-#: c/c-parser.c:5980 c/c-parser.c:6304
+#: c/c-parser.c:5910
 #, gcc-internal-format
-msgid "only attribute %<fallthrough%> can be applied to a null statement"
+msgid ""
+"GNU-style attribute between label and declaration appertains to the label"
 msgstr ""
 
-#: c/c-parser.c:5988
+#: c/c-parser.c:6140
 #, gcc-internal-format
-msgid ""
-"a label can only be part of a statement and a declaration is not a statement"
+msgid "expected identifier or %<*%>"
 msgstr ""
 
-#: c/c-parser.c:6220
+#: c/c-parser.c:6224
 #, gcc-internal-format
-msgid "expected identifier or %<*%>"
+msgid "only attribute %<fallthrough%> can be applied to a null statement"
 msgstr ""
 
-#: c/c-parser.c:6428 cp/parser.c:13284
+#: c/c-parser.c:6348 cp/parser.c:13570
 #, gcc-internal-format
 msgid "suggest braces around empty body in an %<if%> statement"
 msgstr ""
 
-#: c/c-parser.c:6470 cp/parser.c:13287
+#: c/c-parser.c:6390 cp/parser.c:13573
 #, gcc-internal-format
 msgid "suggest braces around empty body in an %<else%> statement"
 msgstr ""
 
-#: c/c-parser.c:6604 cp/parser.c:12180
+#: c/c-parser.c:6524 cp/parser.c:12384
 #, gcc-internal-format
 msgid "suggest explicit braces to avoid ambiguous %<else%>"
 msgstr ""
 
-#: c/c-parser.c:6756
+#: c/c-parser.c:6667
 #, gcc-internal-format
 msgid "suggest braces around empty body in %<do%> statement"
 msgstr ""
 
-#: c/c-parser.c:6894 c/c-parser.c:6926
+#: c/c-parser.c:6799 c/c-parser.c:6831
 #, gcc-internal-format
 msgid "multiple iterating variables in fast enumeration"
 msgstr ""
 
-#: c/c-parser.c:6949
+#: c/c-parser.c:6854
 #, gcc-internal-format
 msgid "invalid iterating variable in fast enumeration"
 msgstr ""
 
-#: c/c-parser.c:6974 cp/parser.c:12452
+#: c/c-parser.c:6878 cp/parser.c:12656
 #, gcc-internal-format
 msgid "missing loop condition in loop with %<GCC ivdep%> pragma"
 msgstr ""
 
-#: c/c-parser.c:6980 cp/parser.c:12458
+#: c/c-parser.c:6884 cp/parser.c:12662
 #, gcc-internal-format
 msgid "missing loop condition in loop with %<GCC unroll%> pragma"
 msgstr ""
 
-#: c/c-parser.c:7016
+#: c/c-parser.c:6920
 #, gcc-internal-format
 msgid "missing collection in fast enumeration"
 msgstr ""
 
-#: c/c-parser.c:7126 c/c-parser.c:7137 c/c-parser.c:7148
+#: c/c-parser.c:7042 c/c-parser.c:7053 c/c-parser.c:7064
 #, gcc-internal-format
 msgid "duplicate %<asm%> qualifier %qE"
 msgstr ""
 
-#: c/c-parser.c:7127 c/c-parser.c:7138 c/c-parser.c:7149 cp/parser.c:20288
-#: cp/parser.c:20305 cp/parser.c:20319
+#: c/c-parser.c:7043 c/c-parser.c:7054 c/c-parser.c:7065 cp/parser.c:20966
+#: cp/parser.c:20983 cp/parser.c:20997
 #, gcc-internal-format
 msgid "first seen here"
 msgstr ""
 
-#: c/c-parser.c:7158
+#: c/c-parser.c:7074
 #, gcc-internal-format
 msgid "%qE is not a valid %<asm%> qualifier"
 msgstr ""
 
-#: c/c-parser.c:7208
+#: c/c-parser.c:7124
 #, gcc-internal-format
 msgid "expected %<:%> or %<)%>"
 msgstr ""
 
-#: c/c-parser.c:7510 cp/parser.c:4308
+#: c/c-parser.c:7423 cp/parser.c:4411
 #, gcc-internal-format
 msgid "a wide string is invalid in this context"
 msgstr ""
 
-#: c/c-parser.c:7702
+#: c/c-parser.c:7615
 #, 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.c:7910 cp/typeck.c:4718
+#: c/c-parser.c:7825 cp/typeck.c:4841
 #, gcc-internal-format
 msgid ""
 "division %<sizeof (%T) / sizeof (%T)%> does not compute the number of array "
 "elements"
 msgstr ""
 
-#: c/c-parser.c:7916 cp/typeck.c:4723
+#: c/c-parser.c:7831 cp/typeck.c:4846
 #, gcc-internal-format
 msgid "first %<sizeof%> operand was declared here"
 msgstr ""
 
-#: c/c-parser.c:8134
+#: c/c-parser.c:8058
 #, gcc-internal-format
 msgid "alignment specified for type name in cast"
 msgstr ""
 
-#: c/c-parser.c:8233
+#: c/c-parser.c:8157
 #, gcc-internal-format
 msgid "traditional C rejects the unary plus operator"
 msgstr ""
 
-#: c/c-parser.c:8364
+#: c/c-parser.c:8288
 #, gcc-internal-format
 msgid "alignment specified for type name in %<sizeof%>"
 msgstr ""
 
-#: c/c-parser.c:8380
+#: c/c-parser.c:8304
 #, gcc-internal-format
 msgid "%<sizeof%> applied to a bit-field"
 msgstr ""
 
-#: c/c-parser.c:8450
+#: c/c-parser.c:8374
 #, gcc-internal-format
 msgid "alignment specified for type name in %qE"
 msgstr ""
 
-#: c/c-parser.c:8473
+#: c/c-parser.c:8397
 #, gcc-internal-format
 msgid "ISO C does not allow %<%E (expression)%>"
 msgstr ""
 
-#: c/c-parser.c:8621
+#: c/c-parser.c:8545
 #, gcc-internal-format
 msgid "cannot take address of %qs"
 msgstr ""
 
-#: c/c-parser.c:8704
+#: c/c-parser.c:8628
 #, gcc-internal-format
 msgid "ISO C99 does not support %<_Generic%>"
 msgstr ""
 
-#: c/c-parser.c:8707
+#: c/c-parser.c:8631
 #, gcc-internal-format
 msgid "ISO C90 does not support %<_Generic%>"
 msgstr ""
 
-#: c/c-parser.c:8775
+#: c/c-parser.c:8700
 #, gcc-internal-format
 msgid "%<_Generic%> association has function type"
 msgstr ""
 
-#: c/c-parser.c:8778
+#: c/c-parser.c:8703
 #, gcc-internal-format
 msgid "%<_Generic%> association has incomplete type"
 msgstr ""
 
-#: c/c-parser.c:8782
+#: c/c-parser.c:8707
 #, gcc-internal-format
 msgid "%<_Generic%> association has variable length type"
 msgstr ""
 
-#: c/c-parser.c:8806
+#: c/c-parser.c:8731
 #, gcc-internal-format
 msgid "duplicate %<default%> case in %<_Generic%>"
 msgstr ""
 
-#: c/c-parser.c:8807
+#: c/c-parser.c:8732
 #, gcc-internal-format
 msgid "original %<default%> is here"
 msgstr ""
 
-#: c/c-parser.c:8815
+#: c/c-parser.c:8740
 #, gcc-internal-format
 msgid "%<_Generic%> specifies two compatible types"
 msgstr ""
 
-#: c/c-parser.c:8816
+#: c/c-parser.c:8741
 #, gcc-internal-format
 msgid "compatible type is here"
 msgstr ""
 
-#: c/c-parser.c:8839
+#: c/c-parser.c:8764
 #, gcc-internal-format
 msgid "%<_Generic%> selector matches multiple associations"
 msgstr ""
 
-#: c/c-parser.c:8841
+#: c/c-parser.c:8766
 #, gcc-internal-format
 msgid "other match is here"
 msgstr ""
 
-#: c/c-parser.c:8860
+#: c/c-parser.c:8791
 #, gcc-internal-format
 msgid ""
 "%<_Generic%> selector of type %qT is not compatible with any association"
 msgstr ""
 
-#: c/c-parser.c:8881
+#: c/c-parser.c:8812
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> is not a function pointer"
 msgstr ""
 
-#: c/c-parser.c:8889
+#: c/c-parser.c:8820
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> is unprototyped"
 msgstr ""
 
-#: c/c-parser.c:8895
+#: c/c-parser.c:8826
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> has variable arguments"
 msgstr ""
 
-#: c/c-parser.c:8911
+#: c/c-parser.c:8842
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> has no arguments"
 msgstr ""
 
-#: c/c-parser.c:8934 c/c-parser.c:8938
+#: c/c-parser.c:8865 c/c-parser.c:8869
 #, gcc-internal-format
 msgid "ISO C does not support %qs predefined identifier"
 msgstr ""
 
-#: c/c-parser.c:8942
+#: c/c-parser.c:8873
 #, gcc-internal-format
 msgid "ISO C90 does not support %<__func__%> predefined identifier"
 msgstr ""
 
-#: c/c-parser.c:9116 c/c-parser.c:10181 c/c-parser.c:10203
-#: c/gimple-parser.c:1693 c/gimple-parser.c:1699 c/gimple-parser.c:2290
+#: c/c-parser.c:9047 c/c-parser.c:10115 c/c-parser.c:10137
+#: c/gimple-parser.c:1694 c/gimple-parser.c:1700 c/gimple-parser.c:2293
 #, gcc-internal-format
 msgid "expected expression"
 msgstr ""
 
-#: c/c-parser.c:9137
+#: c/c-parser.c:9068
 #, gcc-internal-format
 msgid "braced-group within expression allowed only inside a function"
 msgstr ""
 
-#: c/c-parser.c:9151
+#: c/c-parser.c:9082
 #, gcc-internal-format
 msgid "ISO C forbids braced-groups within expressions"
 msgstr ""
 
-#: c/c-parser.c:9338
+#: c/c-parser.c:9272
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_choose_expr%>"
 msgstr ""
 
-#: c/c-parser.c:9354
+#: c/c-parser.c:9288
 #, gcc-internal-format
 msgid "first argument to %<__builtin_choose_expr%> not a constant"
 msgstr ""
 
-#: c/c-parser.c:9424 c/c-parser.c:9441 c/c-parser.c:9448
+#: c/c-parser.c:9358 c/c-parser.c:9375 c/c-parser.c:9382
 #, gcc-internal-format
 msgid "too few arguments to %<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.c:9469
+#: c/c-parser.c:9403
 #, gcc-internal-format
 msgid "argument %u of %<__builtin_tgmath%> has wrong number of arguments"
 msgstr ""
 
-#: c/c-parser.c:9513 c/c-parser.c:9523
+#: c/c-parser.c:9447 c/c-parser.c:9457
 #, gcc-internal-format
 msgid ""
 "invalid type-generic return type for argument %u of %<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.c:9545 c/c-parser.c:9555
+#: c/c-parser.c:9479 c/c-parser.c:9489
 #, gcc-internal-format
 msgid ""
 "invalid type-generic type for argument %u of argument %u of "
 "%<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.c:9588
+#: c/c-parser.c:9522
 #, gcc-internal-format
 msgid "function arguments of %<__builtin_tgmath%> all have the same type"
 msgstr ""
 
-#: c/c-parser.c:9607
+#: c/c-parser.c:9541
 #, gcc-internal-format
 msgid "function arguments of %<__builtin_tgmath%> lack type-generic parameter"
 msgstr ""
 
-#: c/c-parser.c:9655
+#: c/c-parser.c:9589
 #, gcc-internal-format
 msgid ""
 "duplicate type-generic parameter type for function argument %u of "
 "%<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.c:9678
+#: c/c-parser.c:9612
 #, gcc-internal-format
 msgid "bad return type for function argument %u of %<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.c:9695
+#: c/c-parser.c:9629
 #, gcc-internal-format
 msgid ""
 "bad type for argument %u of function argument %u of %<__builtin_tgmath%>"
 msgstr ""
 
-#: c/c-parser.c:9733
+#: c/c-parser.c:9667
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid type of argument %u of type-generic function"
 msgstr ""
 
-#: c/c-parser.c:9744
+#: c/c-parser.c:9678
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "decimal floating-point argument %u to complex-only type-generic function"
 msgstr ""
 
-#: c/c-parser.c:9752
+#: c/c-parser.c:9686
 #, gcc-internal-format, gfc-internal-format
 msgid "decimal floating-point argument %u to binary-only type-generic function"
 msgstr ""
 
-#: c/c-parser.c:9760 c/c-parser.c:9790
+#: c/c-parser.c:9694 c/c-parser.c:9724
 #, gcc-internal-format
 msgid ""
 "both complex and decimal floating-point arguments to type-generic function"
 msgstr ""
 
-#: c/c-parser.c:9768 c/c-parser.c:9810
+#: c/c-parser.c:9702 c/c-parser.c:9744
 #, gcc-internal-format
 msgid ""
 "both binary and decimal floating-point arguments to type-generic function"
 msgstr ""
 
-#: c/c-parser.c:9782
+#: c/c-parser.c:9716
 #, gcc-internal-format, gfc-internal-format
 msgid "complex argument %u to decimal-only type-generic function"
 msgstr ""
 
-#: c/c-parser.c:9802
+#: c/c-parser.c:9736
 #, gcc-internal-format, gfc-internal-format
 msgid "binary argument %u to decimal-only type-generic function"
 msgstr ""
 
-#: c/c-parser.c:9908
+#: c/c-parser.c:9842
 #, gcc-internal-format
 msgid "no matching function for type-generic call"
 msgstr ""
 
-#: c/c-parser.c:9949
+#: c/c-parser.c:9883
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_call_with_static_chain%>"
 msgstr ""
 
-#: c/c-parser.c:9962
+#: c/c-parser.c:9896
 #, gcc-internal-format
 msgid ""
 "first argument to %<__builtin_call_with_static_chain%> must be a call "
 "expression"
 msgstr ""
 
-#: c/c-parser.c:9966
+#: c/c-parser.c:9900
 #, gcc-internal-format
 msgid ""
 "second argument to %<__builtin_call_with_static_chain%> must be a pointer "
 "type"
 msgstr ""
 
-#: c/c-parser.c:9992
+#: c/c-parser.c:9926
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_complex%>"
 msgstr ""
 
-#: c/c-parser.c:10014
+#: c/c-parser.c:9948
 #, gcc-internal-format
 msgid "%<__builtin_complex%> operand not of real binary floating-point type"
 msgstr ""
 
-#: c/c-parser.c:10023
+#: c/c-parser.c:9957
 #, gcc-internal-format
 msgid "%<__builtin_complex%> operands of different types"
 msgstr ""
 
-#: c/c-parser.c:10068 cp/parser.c:7182
+#: c/c-parser.c:10002 cp/parser.c:7345
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_shuffle%>"
 msgstr ""
 
-#: c/c-parser.c:10241
+#: c/c-parser.c:10175
 #, gcc-internal-format
 msgid "compound literal has variable size"
 msgstr ""
 
-#: c/c-parser.c:10252
+#: c/c-parser.c:10186
 #, gcc-internal-format
 msgid "compound literal qualified by address-space qualifier"
 msgstr ""
 
-#: c/c-parser.c:10256
+#: c/c-parser.c:10190
 #, gcc-internal-format
 msgid "ISO C90 forbids compound literals"
 msgstr ""
 
-#: c/c-parser.c:10269
+#: c/c-parser.c:10203
 #, gcc-internal-format
 msgid "%<_Alignas%> specifiers cannot reduce alignment of compound literal"
 msgstr ""
 
-#: c/c-parser.c:10343
+#: c/c-parser.c:10277
 #, gcc-internal-format
 msgid ""
 "using integer absolute value function %qD when argument is of floating-point "
 "type %qT"
 msgstr ""
 
-#: c/c-parser.c:10348
+#: c/c-parser.c:10282
 #, gcc-internal-format
 msgid ""
 "using integer absolute value function %qD when argument is of complex type "
 "%qT"
 msgstr ""
 
-#: c/c-parser.c:10356
+#: c/c-parser.c:10290
 #, gcc-internal-format
 msgid "taking the absolute value of unsigned type %qT has no effect"
 msgstr ""
 
-#: c/c-parser.c:10367
+#: c/c-parser.c:10301
 #, gcc-internal-format
 msgid ""
 "using floating-point absolute value function %qD when argument is of integer "
 "type %qT"
 msgstr ""
 
-#: c/c-parser.c:10371
+#: c/c-parser.c:10305
 #, gcc-internal-format
 msgid ""
 "using floating-point absolute value function %qD when argument is of decimal "
 "floating-point type %qT"
 msgstr ""
 
-#: c/c-parser.c:10376
+#: c/c-parser.c:10310
 #, gcc-internal-format
 msgid ""
 "using floating-point absolute value function %qD when argument is of complex "
 "type %qT"
 msgstr ""
 
-#: c/c-parser.c:10389
+#: c/c-parser.c:10323
 #, gcc-internal-format
 msgid ""
 "using complex absolute value function %qD when argument is of integer type "
 "%qT"
 msgstr ""
 
-#: c/c-parser.c:10393
+#: c/c-parser.c:10327
 #, gcc-internal-format
 msgid ""
 "using complex absolute value function %qD when argument is of floating-point "
 "type %qT"
 msgstr ""
 
-#: c/c-parser.c:10410
+#: c/c-parser.c:10344
 #, gcc-internal-format
 msgid ""
 "using decimal floating-point absolute value function %qD when argument is of "
 "integer type %qT"
 msgstr ""
 
-#: c/c-parser.c:10415
+#: c/c-parser.c:10349
 #, gcc-internal-format
 msgid ""
 "using decimal floating-point absolute value function %qD when argument is of "
 "floating-point type %qT"
 msgstr ""
 
-#: c/c-parser.c:10420
+#: c/c-parser.c:10354
 #, gcc-internal-format
 msgid ""
 "using decimal floating-point absolute value function %qD when argument is of "
 "complex type %qT"
 msgstr ""
 
-#: c/c-parser.c:10446
+#: c/c-parser.c:10380
 #, 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.c:10877
+#: c/c-parser.c:10820
 #, gcc-internal-format
 msgid "expected identifier or %<)%>"
 msgstr ""
 
-#: c/c-parser.c:10973
+#: c/c-parser.c:10916
 #, gcc-internal-format
 msgid "extra semicolon"
 msgstr ""
 
-#: c/c-parser.c:11221
+#: c/c-parser.c:11164
 #, gcc-internal-format
 msgid "extra semicolon in method definition specified"
 msgstr ""
 
-#: c/c-parser.c:11353
+#: c/c-parser.c:11296
 #, gcc-internal-format
 msgid "method attributes must be specified at the end only"
 msgstr ""
 
-#: c/c-parser.c:11373
+#: c/c-parser.c:11316
 #, gcc-internal-format
 msgid "expected %<;%> or %<{%> after method attribute definition"
 msgstr ""
 
-#: c/c-parser.c:11495
+#: c/c-parser.c:11438
 #, gcc-internal-format
 msgid "objective-c method declaration is expected"
 msgstr ""
 
-#: c/c-parser.c:11946
+#: c/c-parser.c:11889
 #, gcc-internal-format
 msgid "no type or storage class may be specified here,"
 msgstr ""
 
-#: c/c-parser.c:12038 c/c-parser.c:12095 cp/parser.c:33850
+#: c/c-parser.c:11957 cp/parser.c:34642
 #, gcc-internal-format
-msgid "unknown property attribute"
+msgid "empty property attribute list"
 msgstr ""
 
-#: c/c-parser.c:12059 cp/parser.c:33810
+#: c/c-parser.c:11971 cp/parser.c:34655
 #, gcc-internal-format
-msgid "missing %<=%> (after %<getter%> attribute)"
+msgid "missing property attribute"
 msgstr ""
 
-#: c/c-parser.c:12062 cp/parser.c:33813
+#: c/c-parser.c:12010
 #, gcc-internal-format
-msgid "missing %<=%> (after %<setter%> attribute)"
+msgid "unknown property attribute %<%s%s%>"
 msgstr ""
 
-#: c/c-parser.c:12076 cp/parser.c:33828
+#: c/c-parser.c:12013 cp/parser.c:34692
 #, gcc-internal-format
-msgid "the %<setter%> attribute may only be specified once"
+msgid "unknown property attribute"
 msgstr ""
 
-#: c/c-parser.c:12081 cp/parser.c:33834
+#: c/c-parser.c:12022 cp/parser.c:34701
 #, gcc-internal-format
-msgid "setter name must terminate with %<:%>"
+msgid "expected %<=%> after Objective-C %qE"
 msgstr ""
 
-#: c/c-parser.c:12088 cp/parser.c:33842
+#: c/c-parser.c:12033 cp/parser.c:34715
 #, gcc-internal-format
-msgid "the %<getter%> attribute may only be specified once"
+msgid "expected %qE selector name"
 msgstr ""
 
-#: c/c-parser.c:12282 cp/parser.c:43655
+#: c/c-parser.c:12049 cp/parser.c:34734
+#, gcc-internal-format
+msgid "setter method names must terminate with %<:%>"
+msgstr ""
+
+#: c/c-parser.c:12263 cp/parser.c:44770
 #, 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.c:12326 c/c-parser.c:19243 c/c-parser.c:19534 c/c-parser.c:19593
-#: c/c-parser.c:19677 cp/parser.c:40186 cp/parser.c:40516 cp/parser.c:40604
-#: cp/parser.c:40675 cp/parser.c:43702 cp/parser.c:43717 cp/parser.c:43732
-#: cp/parser.c:43748 cp/parser.c:43764 cp/parser.c:43780 cp/parser.c:43807
-#: cp/parser.c:43820 cp/parser.c:43843 cp/parser.c:43856
+#: c/c-parser.c:12307 c/c-parser.c:19396 c/c-parser.c:19691 c/c-parser.c:19750
+#: c/c-parser.c:19836 cp/parser.c:41256 cp/parser.c:41590 cp/parser.c:41680
+#: cp/parser.c:41753 cp/parser.c:44817 cp/parser.c:44832 cp/parser.c:44847
+#: cp/parser.c:44863 cp/parser.c:44879 cp/parser.c:44895 cp/parser.c:44922
+#: cp/parser.c:44935 cp/parser.c:44958 cp/parser.c:44971
 #, gcc-internal-format
 msgid "%<#pragma %s%> may only be used in compound statements"
 msgstr ""
 
-#: c/c-parser.c:12349 cp/parser.c:43833
+#: c/c-parser.c:12330 cp/parser.c:44948
 #, gcc-internal-format
 msgid "%<#pragma acc routine%> must be at file scope"
 msgstr ""
 
-#: c/c-parser.c:12436 cp/parser.c:43926
+#: c/c-parser.c:12417 cp/parser.c:45043
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp scan%> may only be used in a loop construct with %<inscan%> "
 "%<reduction%> clause"
 msgstr ""
 
-#: c/c-parser.c:12443 cp/parser.c:43932
+#: c/c-parser.c:12424 cp/parser.c:45049
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp section%> may only be used in %<#pragma omp sections%> "
 "construct"
 msgstr ""
 
-#: c/c-parser.c:12456
+#: c/c-parser.c:12437
 #, gcc-internal-format
 msgid "%<#pragma omp requires%> may only be used at file scope"
 msgstr ""
 
-#: c/c-parser.c:12478 c/c-parser.c:12502 cp/parser.c:43961 cp/parser.c:43994
+#: c/c-parser.c:12459 c/c-parser.c:12483 cp/parser.c:45078 cp/parser.c:45111
 #, gcc-internal-format
 msgid "for, while or do statement expected"
 msgstr ""
 
-#: c/c-parser.c:12515 cp/parser.c:43692
+#: c/c-parser.c:12496 cp/parser.c:44807
 #, gcc-internal-format
 msgid "%<#pragma GCC pch_preprocess%> must be first"
 msgstr ""
 
-#: c/c-parser.c:12852 c/c-parser.c:15805 c/c-parser.c:21275 c/c-parser.c:21283
-#: cp/parser.c:34256 cp/parser.c:36868 cp/parser.c:42779 cp/parser.c:42787
+#: c/c-parser.c:12835 c/c-parser.c:15843 c/c-parser.c:21439 c/c-parser.c:21447
+#: cp/parser.c:35153 cp/parser.c:37869 cp/parser.c:43890 cp/parser.c:43898
 #, gcc-internal-format
 msgid "too many %qs clauses"
 msgstr ""
 
-#: c/c-parser.c:12879
+#: c/c-parser.c:12862
 #, gcc-internal-format
 msgid "expression must be integral"
 msgstr ""
 
-#: c/c-parser.c:13123 c/c-parser.c:13135
+#: c/c-parser.c:13106 c/c-parser.c:13118
 #, gcc-internal-format
 msgid "expected %<)%> or %<,%>"
 msgstr ""
 
-#: c/c-parser.c:13286 c/c-parser.c:21572
+#: c/c-parser.c:13269 c/c-parser.c:21740
 #, gcc-internal-format
 msgid "%qD is not a variable"
 msgstr ""
 
-#: c/c-parser.c:13290 cp/semantics.c:7513
+#: c/c-parser.c:13273 cp/semantics.c:7697
 #, gcc-internal-format
 msgid "%qD is not a pointer variable"
 msgstr ""
 
-#: c/c-parser.c:13332 cp/parser.c:34935
+#: c/c-parser.c:13315 cp/parser.c:35840
 #, gcc-internal-format
 msgid "collapse argument needs positive constant integer expression"
 msgstr ""
 
-#: c/c-parser.c:13409 cp/parser.c:34999
+#: c/c-parser.c:13392 cp/parser.c:35904
 #, gcc-internal-format
 msgid "expected %<none%> or %<present%>"
 msgstr ""
 
-#: c/c-parser.c:13411 cp/parser.c:35001
+#: c/c-parser.c:13394 cp/parser.c:35906
 #, gcc-internal-format
 msgid "expected %<none%> or %<shared%>"
 msgstr ""
 
-#: c/c-parser.c:13531 cp/parser.c:35112
+#: c/c-parser.c:13514 cp/parser.c:36017
 #, gcc-internal-format
 msgid "expected %<data%>, %<update%>, %<enter%> or %<exit%>"
 msgstr ""
 
-#: c/c-parser.c:13551 c/c-parser.c:19586 c/c-parser.c:19670 cp/parser.c:35130
-#: cp/parser.c:40508 cp/parser.c:40596
+#: c/c-parser.c:13534 c/c-parser.c:19743 c/c-parser.c:19829 cp/parser.c:36035
+#: cp/parser.c:41582 cp/parser.c:41672
 #, gcc-internal-format
 msgid "expected %<data%>"
 msgstr ""
 
-#: c/c-parser.c:13604 cp/parser.c:35185
+#: c/c-parser.c:13587 cp/parser.c:36090
 #, gcc-internal-format
 msgid "too many %<if%> clauses with %qs modifier"
 msgstr ""
 
-#: c/c-parser.c:13611 cp/parser.c:35192
+#: c/c-parser.c:13594 cp/parser.c:36097
 #, gcc-internal-format
 msgid "too many %<if%> clauses"
 msgstr ""
 
-#: c/c-parser.c:13613 cp/parser.c:35194
+#: c/c-parser.c:13596 cp/parser.c:36099
 #, gcc-internal-format
 msgid "too many %<if%> clauses without modifier"
 msgstr ""
 
-#: c/c-parser.c:13619 cp/parser.c:35200
+#: c/c-parser.c:13602 cp/parser.c:36105
 #, gcc-internal-format
 msgid ""
 "if any %<if%> clause has modifier, then all %<if%> clauses have to use "
 "modifier"
 msgstr ""
 
-#: c/c-parser.c:13724 c/c-parser.c:13770 c/c-parser.c:13816 c/c-parser.c:13862
-#: c/c-parser.c:14279 c/c-parser.c:14361 c/c-parser.c:14900 c/c-parser.c:15028
-#: c/c-parser.c:15073 c/c-parser.c:15749
+#: c/c-parser.c:13707 c/c-parser.c:13753 c/c-parser.c:13799 c/c-parser.c:13845
+#: c/c-parser.c:14261 c/c-parser.c:14343 c/c-parser.c:14882 c/c-parser.c:15010
+#: c/c-parser.c:15055 c/c-parser.c:15787
 #, gcc-internal-format
 msgid "expected integer expression"
 msgstr ""
 
-#: c/c-parser.c:13735
+#: c/c-parser.c:13718
 #, gcc-internal-format
 msgid "%<num_threads%> value must be positive"
 msgstr ""
 
-#: c/c-parser.c:13781
+#: c/c-parser.c:13764
 #, gcc-internal-format
 msgid "%<num_tasks%> value must be positive"
 msgstr ""
 
-#: c/c-parser.c:13827 cp/semantics.c:7716
+#: c/c-parser.c:13810 cp/semantics.c:7902
 #, gcc-internal-format
 msgid "%<grainsize%> value must be positive"
 msgstr ""
 
-#: c/c-parser.c:13874 cp/semantics.c:7746
+#: c/c-parser.c:13857 cp/semantics.c:7932
 #, gcc-internal-format
 msgid "%<priority%> value must be non-negative"
 msgstr ""
 
-#: c/c-parser.c:13910
+#: c/c-parser.c:13891 cp/parser.c:36297
 #, gcc-internal-format
-msgid "expected constant integer expression"
+msgid "expected constant integer expression with valid sync-hint value"
 msgstr ""
 
-#: c/c-parser.c:13949 cp/parser.c:35425
+#: c/c-parser.c:13931 cp/parser.c:36339
 #, gcc-internal-format
 msgid ""
 "expected %<alloc%>, %<to%>, %<from%>, %<tofrom%>, %<firstprivate%>, %<none%> "
 "or %<default%>"
 msgstr ""
 
-#: c/c-parser.c:14010 cp/parser.c:35490
+#: c/c-parser.c:13992 cp/parser.c:36404
 #, gcc-internal-format
 msgid "expected %<scalar%>, %<aggregate%> or %<pointer%>"
 msgstr ""
 
-#: c/c-parser.c:14076 cp/parser.c:35559
+#: c/c-parser.c:14058 cp/parser.c:36473
 #, gcc-internal-format
 msgid "too many %<defaultmap%> clauses with %qs category"
 msgstr ""
 
-#: c/c-parser.c:14079 cp/parser.c:35562
+#: c/c-parser.c:14061 cp/parser.c:36476
 #, gcc-internal-format
 msgid "too many %<defaultmap%> clauses with unspecified category"
 msgstr ""
 
-#: c/c-parser.c:14153 cp/semantics.c:6867
+#: c/c-parser.c:14135 cp/semantics.c:6939
 #, gcc-internal-format
 msgid "%qs expression must be integral"
 msgstr ""
 
-#: c/c-parser.c:14165 c/c-parser.c:14288 cp/semantics.c:6899
+#: c/c-parser.c:14147 c/c-parser.c:14270 cp/semantics.c:6971
 #, gcc-internal-format
 msgid "%qs value must be positive"
 msgstr ""
 
-#: c/c-parser.c:14227 cp/parser.c:34707
+#: c/c-parser.c:14209 cp/parser.c:35612
 #, gcc-internal-format
 msgid "too many %<static%> arguments"
 msgstr ""
 
-#: c/c-parser.c:14261 cp/parser.c:34740
+#: c/c-parser.c:14243 cp/parser.c:35645
 #, gcc-internal-format
 msgid "unexpected argument"
 msgstr ""
 
-#: c/c-parser.c:14428 cp/semantics.c:7878
+#: c/c-parser.c:14410 cp/semantics.c:8067
 #, gcc-internal-format
 msgid "%<tile%> argument needs positive integral constant"
 msgstr ""
 
-#: c/c-parser.c:14486 c/c-parser.c:14492 cp/parser.c:35594 cp/parser.c:35604
+#: c/c-parser.c:14468 c/c-parser.c:14474 cp/parser.c:36508 cp/parser.c:36518
 #, gcc-internal-format
 msgid "expected %<concurrent%>"
 msgstr ""
 
-#: c/c-parser.c:14526 cp/parser.c:35642
+#: c/c-parser.c:14508 cp/parser.c:36556
 #, gcc-internal-format
 msgid "expected %<teams%>, %<parallel%> or %<thread%>"
 msgstr ""
 
-#: c/c-parser.c:14579 cp/parser.c:35710
+#: c/c-parser.c:14561 cp/parser.c:36624
 #, gcc-internal-format
 msgid "ordered argument needs positive constant integer expression"
 msgstr ""
 
-#: c/c-parser.c:14704 c/c-parser.c:20841 cp/parser.c:42441
+#: c/c-parser.c:14686 c/c-parser.c:21005 cp/parser.c:43541
 #, gcc-internal-format
 msgid ""
 "expected %<+%>, %<*%>, %<-%>, %<&%>, %<^%>, %<|%>, %<&&%>, %<||%> or "
 "identifier"
 msgstr ""
 
-#: c/c-parser.c:14824 cp/parser.c:35968
+#: c/c-parser.c:14806 cp/parser.c:36882
 #, gcc-internal-format
 msgid "both %<monotonic%> and %<nonmonotonic%> modifiers specified"
 msgstr ""
 
-#: c/c-parser.c:14878 cp/parser.c:35984
+#: c/c-parser.c:14860 cp/parser.c:36898
 #, gcc-internal-format
 msgid "schedule %<runtime%> does not take a %<chunk_size%> parameter"
 msgstr ""
 
-#: c/c-parser.c:14882 cp/parser.c:35987
+#: c/c-parser.c:14864 cp/parser.c:36901
 #, gcc-internal-format
 msgid "schedule %<auto%> does not take a %<chunk_size%> parameter"
 msgstr ""
 
-#: c/c-parser.c:14894 cp/semantics.c:6934
+#: c/c-parser.c:14876 cp/semantics.c:7006
 #, gcc-internal-format
 msgid "chunk size value must be positive"
 msgstr ""
 
-#: c/c-parser.c:14917 cp/parser.c:36007
+#: c/c-parser.c:14899 cp/parser.c:36921
 #, gcc-internal-format
 msgid "invalid schedule kind"
 msgstr ""
 
-#: c/c-parser.c:15038
+#: c/c-parser.c:15020
 #, gcc-internal-format
 msgid "%<num_teams%> value must be positive"
 msgstr ""
 
-#: c/c-parser.c:15083 cp/semantics.c:7030
+#: c/c-parser.c:15065 cp/semantics.c:7102
 #, gcc-internal-format
 msgid "%<thread_limit%> value must be positive"
 msgstr ""
 
-#: c/c-parser.c:15128 cp/semantics.c:7149
+#: c/c-parser.c:15110 cp/semantics.c:7221
 #, gcc-internal-format
 msgid ""
 "%<aligned%> clause alignment expression must be positive constant integer "
 "expression"
 msgstr ""
 
-#: c/c-parser.c:15191
+#: c/c-parser.c:15155 cp/semantics.c:7319
+#, gcc-internal-format
+msgid ""
+"%<allocate%> clause allocator expression has type %qT rather than "
+"%<omp_allocator_handle_t%>"
+msgstr ""
+
+#: c/c-parser.c:15229
 #, gcc-internal-format
 msgid "%<linear%> clause step expression must be integral"
 msgstr ""
 
-#: c/c-parser.c:15241
+#: c/c-parser.c:15279
 #, gcc-internal-format
 msgid ""
 "%<safelen%> clause expression must be positive constant integer expression"
 msgstr ""
 
-#: c/c-parser.c:15280
+#: c/c-parser.c:15318
 #, gcc-internal-format
 msgid ""
 "%<simdlen%> clause expression must be positive constant integer expression"
 msgstr ""
 
-#: c/c-parser.c:15548 cp/parser.c:36649
+#: c/c-parser.c:15586 cp/parser.c:37650
 #, gcc-internal-format
 msgid "%<iterator%> modifier incompatible with %qs"
 msgstr ""
 
-#: c/c-parser.c:15595 cp/parser.c:36697 cp/parser.c:36926 cp/parser.c:36976
+#: c/c-parser.c:15633 cp/parser.c:37698 cp/parser.c:37927 cp/parser.c:37977
 #, gcc-internal-format
 msgid "invalid depend kind"
 msgstr ""
 
-#: c/c-parser.c:15682 cp/parser.c:36772
+#: c/c-parser.c:15720 cp/parser.c:37773
 #, gcc-internal-format
 msgid "invalid map kind"
 msgstr ""
 
-#: c/c-parser.c:15780 cp/parser.c:36873
+#: c/c-parser.c:15818 cp/parser.c:37874
 #, gcc-internal-format
 msgid "invalid dist_schedule kind"
 msgstr ""
 
-#: c/c-parser.c:15856
+#: c/c-parser.c:15894
 #, gcc-internal-format
 msgid "invalid proc_bind kind"
 msgstr ""
 
-#: c/c-parser.c:15900
+#: c/c-parser.c:15938
 #, gcc-internal-format
 msgid "expected %<host%>, %<nohost%> or %<any%>"
 msgstr ""
 
-#: c/c-parser.c:16124 cp/parser.c:37207
+#: c/c-parser.c:16015 cp/semantics.c:7477
+#, gcc-internal-format
+msgid ""
+"%<detach%> clause event handle has type %qT rather than %<omp_event_handle_t"
+"%>"
+msgstr ""
+
+#: c/c-parser.c:16212 cp/parser.c:38211
 #, gcc-internal-format
 msgid "expected %<#pragma acc%> clause"
 msgstr ""
 
-#: c/c-parser.c:16135 c/c-parser.c:16459 cp/parser.c:37218 cp/parser.c:37581
+#: c/c-parser.c:16223 c/c-parser.c:16555 cp/parser.c:38222 cp/parser.c:38593
 #, gcc-internal-format
 msgid "%qs is not valid for %qs"
 msgstr ""
 
-#: c/c-parser.c:16179 cp/parser.c:37265
+#: c/c-parser.c:16267 cp/parser.c:38269
 #, gcc-internal-format
 msgid "clauses in %<simd%> trait should be separated by %<,%>"
 msgstr ""
 
-#: c/c-parser.c:16320 cp/parser.c:37443
+#: c/c-parser.c:16412 cp/parser.c:38447
 #, gcc-internal-format
 msgid "%qs must be the first clause of %qs"
 msgstr ""
 
-#: c/c-parser.c:16448 cp/parser.c:37570
+#: c/c-parser.c:16544 cp/parser.c:38582
 #, gcc-internal-format
 msgid "expected %<#pragma omp%> clause"
 msgstr ""
 
-#: c/c-parser.c:16581 cp/parser.c:41023
+#: c/c-parser.c:16677 cp/parser.c:42109
 #, gcc-internal-format
 msgid "no valid clauses specified in %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.c:16591 cp/parser.c:41033
+#: c/c-parser.c:16687 cp/parser.c:42119
 #, gcc-internal-format
 msgid "array section in %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.c:16611 cp/parser.c:41053
+#: c/c-parser.c:16707 cp/parser.c:42139
 #, gcc-internal-format
 msgid "%qD must be a global variable in %<#pragma acc declare link%>"
 msgstr ""
 
-#: c/c-parser.c:16622 cp/parser.c:41064
+#: c/c-parser.c:16718 cp/parser.c:42150
 #, gcc-internal-format
 msgid "invalid OpenACC clause at file scope"
 msgstr ""
 
-#: c/c-parser.c:16629 cp/parser.c:41071
+#: c/c-parser.c:16725 cp/parser.c:42157
 #, gcc-internal-format
 msgid "invalid use of %<extern%> variable %qD in %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.c:16637 cp/parser.c:41079
+#: c/c-parser.c:16733 cp/parser.c:42165
 #, gcc-internal-format
 msgid "invalid use of %<global%> variable %qD in %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.c:16648 cp/parser.c:41097
+#: c/c-parser.c:16744 cp/parser.c:42187
 #, gcc-internal-format
 msgid ""
 "%qD must be a variable declared in the same scope as %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.c:16658 cp/parser.c:41107
+#: c/c-parser.c:16754 cp/parser.c:42197
 #, gcc-internal-format
 msgid "variable %qD used more than once with %<#pragma acc declare%>"
 msgstr ""
 
-#: c/c-parser.c:16751 cp/parser.c:41194
+#: c/c-parser.c:16847 cp/parser.c:42294
 #, gcc-internal-format
 msgid "expected %<data%> after %<#pragma acc %s%>"
 msgstr ""
 
-#: c/c-parser.c:16767 cp/parser.c:41211
+#: c/c-parser.c:16863 cp/parser.c:42311
 #, gcc-internal-format
 msgid "%<#pragma acc %s data%> has no data movement clause"
 msgstr ""
 
-#: c/c-parser.c:17016 cp/parser.c:3037
+#: c/c-parser.c:17112 cp/parser.c:3107
 #, gcc-internal-format
 msgid "%qE has not been declared"
 msgstr ""
 
-#: c/c-parser.c:17020
+#: c/c-parser.c:17116
 #, gcc-internal-format
 msgid "expected function name"
 msgstr ""
 
-#: c/c-parser.c:17038 cp/parser.c:43022
+#: c/c-parser.c:17134 cp/parser.c:44134
 #, gcc-internal-format
 msgid "%qD does not refer to a function"
 msgstr ""
 
-#: c/c-parser.c:17061 c/c-parser.c:17109 cp/parser.c:1408
+#: c/c-parser.c:17157 c/c-parser.c:17205 cp/parser.c:1450
 #, gcc-internal-format
 msgid ""
 "%<#pragma acc routine%> not immediately followed by function declaration or "
 "definition"
 msgstr ""
 
-#: c/c-parser.c:17101 cp/parser.c:43073 cp/parser.c:43118
+#: c/c-parser.c:17197 cp/parser.c:44185 cp/parser.c:44230
 #, gcc-internal-format
 msgid ""
 "%<#pragma acc routine%> not immediately followed by a single function "
 "declaration or definition"
 msgstr ""
 
-#: c/c-parser.c:17132 cp/parser.c:43147
+#: c/c-parser.c:17228 cp/parser.c:44259
 #, gcc-internal-format
 msgid "%<#pragma acc routine%> must be applied before use"
 msgstr ""
 
-#: c/c-parser.c:17133 cp/parser.c:43149
+#: c/c-parser.c:17229 cp/parser.c:44261
 #, gcc-internal-format
 msgid "%<#pragma acc routine%> must be applied before definition"
 msgstr ""
 
-#: c/c-parser.c:17177 cp/parser.c:41412
+#: c/c-parser.c:17273 cp/parser.c:42512
 #, gcc-internal-format
 msgid ""
 "%<#pragma acc update%> must contain at least one %<device%> or %<host%> or "
 "%<self%> clause"
 msgstr ""
 
-#: c/c-parser.c:17329 cp/parser.c:37748
+#: c/c-parser.c:17328 cp/parser.c:38672
+#, gcc-internal-format
+msgid "expected %<allocator%>"
+msgstr ""
+
+#: c/c-parser.c:17344
+#, gcc-internal-format
+msgid ""
+"%<allocator%> clause allocator expression has type %qT rather than "
+"%<omp_allocator_handle_t%>"
+msgstr ""
+
+#: c/c-parser.c:17359 cp/parser.c:38687
+#, gcc-internal-format
+msgid "%<#pragma omp allocate%> not yet supported"
+msgstr ""
+
+#: c/c-parser.c:17458 cp/parser.c:38780
+#, gcc-internal-format
+msgid "expected %<read%>, %<write%>, %<update%>, or %<capture%> clause"
+msgstr ""
+
+#: c/c-parser.c:17480 cp/parser.c:38802
 #, gcc-internal-format
 msgid ""
 "expected %<read%>, %<write%>, %<update%>, %<capture%>, %<seq_cst%>, %<acq_rel"
 "%>, %<release%>, %<relaxed%> or %<hint%> clause"
 msgstr ""
 
-#: c/c-parser.c:17338 cp/parser.c:37757
+#: c/c-parser.c:17494 cp/parser.c:38816
 #, gcc-internal-format
 msgid "too many atomic clauses"
 msgstr ""
 
-#: c/c-parser.c:17345 cp/parser.c:37764
+#: c/c-parser.c:17501 cp/parser.c:38823
 #, gcc-internal-format
 msgid "too many memory order clauses"
 msgstr ""
 
-#: c/c-parser.c:17400 cp/parser.c:37819
+#: c/c-parser.c:17558 cp/parser.c:38880
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp atomic read%> incompatible with %<acq_rel%> or %<release%> "
 "clauses"
 msgstr ""
 
-#: c/c-parser.c:17409 cp/parser.c:37828
+#: c/c-parser.c:17567 cp/parser.c:38889
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp atomic write%> incompatible with %<acq_rel%> or %<acquire%> "
 "clauses"
 msgstr ""
 
-#: c/c-parser.c:17418 cp/parser.c:37837
+#: c/c-parser.c:17577 cp/parser.c:38898
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp atomic update%> incompatible with %<acq_rel%> or %<acquire%> "
 "clauses"
 msgstr ""
 
-#: c/c-parser.c:17684 cp/parser.c:38042 cp/parser.c:38068
+#: c/c-parser.c:17843 cp/parser.c:39103 cp/parser.c:39129
 #, gcc-internal-format
 msgid "invalid form of %<#pragma omp atomic%>"
 msgstr ""
 
-#: c/c-parser.c:17688 cp/parser.c:38099 cp/parser.c:38115
+#: c/c-parser.c:17847 cp/parser.c:39160 cp/parser.c:39176
 #, gcc-internal-format
 msgid "invalid operator for %<#pragma omp atomic%>"
 msgstr ""
 
-#: c/c-parser.c:17737 cp/semantics.c:9381 cp/semantics.c:9391
+#: c/c-parser.c:17896 cp/semantics.c:9651 cp/semantics.c:9661
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp atomic capture%> uses two different expressions for memory"
 msgstr ""
 
-#: c/c-parser.c:17806 c/c-parser.c:17963
-#, gcc-internal-format
-msgid "expected %<(%> or end of line"
-msgstr ""
-
-#: c/c-parser.c:17846 cp/semantics.c:9456
+#: c/c-parser.c:17996 cp/semantics.c:9726
 #, gcc-internal-format
 msgid "%<depobj%> expression is not lvalue expression"
 msgstr ""
 
-#: c/c-parser.c:17903 cp/parser.c:38300
+#: c/c-parser.c:18053 cp/parser.c:39360
 #, gcc-internal-format
 msgid "expected %<in%>, %<out%>, %<inout%> or %<mutexinoutset%>"
 msgstr ""
 
-#: c/c-parser.c:17915 cp/parser.c:38316
+#: c/c-parser.c:18065 cp/parser.c:39376
 #, gcc-internal-format
 msgid "expected %<depend%>, %<destroy%> or %<update%> clause"
 msgstr ""
 
-#: c/c-parser.c:17951 cp/parser.c:38349
+#: c/c-parser.c:18101 cp/parser.c:39409
 #, gcc-internal-format
 msgid "expected %<acq_rel%>, %<release%> or %<acquire%>"
 msgstr ""
 
-#: c/c-parser.c:17958 cp/parser.c:38356
+#: c/c-parser.c:18108 cp/parser.c:39416
 #, gcc-internal-format
 msgid "%<flush%> list specified together with memory order clause"
 msgstr ""
 
-#: c/c-parser.c:18017 cp/parser.c:38961
+#: c/c-parser.c:18113
+#, gcc-internal-format
+msgid "expected %<(%> or end of line"
+msgstr ""
+
+#: c/c-parser.c:18167 cp/parser.c:40021
 #, gcc-internal-format
 msgid "expected %<inclusive%> or %<exclusive%> clause"
 msgstr ""
 
-#: c/c-parser.c:18022 cp/parser.c:38967
+#: c/c-parser.c:18172 cp/parser.c:40027
 #, gcc-internal-format
 msgid "expected %<#pragma omp scan%>"
 msgstr ""
 
-#: c/c-parser.c:18077 cp/parser.c:39018
+#: c/c-parser.c:18228 cp/parser.c:40078
 #, gcc-internal-format
 msgid "%<ordered%> clause parameter is less than %<collapse%>"
 msgstr ""
 
-#: c/c-parser.c:18088 cp/parser.c:39029
+#: c/c-parser.c:18239 cp/parser.c:40089
 #, gcc-internal-format
 msgid ""
 "%<linear%> clause may not be specified together with %<ordered%> clause with "
 "a parameter"
 msgstr ""
 
-#: c/c-parser.c:18106 cp/parser.c:39057
+#: c/c-parser.c:18257 cp/parser.c:40117
 #, gcc-internal-format
 msgid "for statement expected"
 msgstr ""
 
-#: c/c-parser.c:18180 cp/semantics.c:8966 cp/semantics.c:9057
+#: c/c-parser.c:18336 cp/semantics.c:9236 cp/semantics.c:9327
 #, gcc-internal-format
 msgid "expected iteration declaration or initialization"
 msgstr ""
 
-#: c/c-parser.c:18266
+#: c/c-parser.c:18422
 #, gcc-internal-format
 msgid "not enough perfectly nested loops"
 msgstr ""
 
-#: c/c-parser.c:18324 cp/parser.c:39371
+#: c/c-parser.c:18470 cp/parser.c:40431
 #, gcc-internal-format
 msgid "collapsed loops not perfectly nested"
 msgstr ""
 
-#: c/c-parser.c:18407 cp/parser.c:39167 cp/parser.c:39209 cp/pt.c:17591
+#: c/c-parser.c:18553 cp/parser.c:40227 cp/parser.c:40269 cp/pt.c:17855
 #, gcc-internal-format
 msgid "iteration variable %qD should not be firstprivate"
 msgstr ""
 
-#: c/c-parser.c:18541 cp/parser.c:39490
+#: c/c-parser.c:18687 cp/parser.c:40550
 #, gcc-internal-format
 msgid "%<ordered%> clause with parameter may not be specified on %qs construct"
 msgstr ""
 
-#: c/c-parser.c:18754 cp/parser.c:39707
+#: c/c-parser.c:18901 cp/parser.c:40768
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp ordered%> with %<depend%> clause may only be used in compound "
 "statements"
 msgstr ""
 
-#: c/c-parser.c:18962 cp/parser.c:39906
+#: c/c-parser.c:19111 cp/parser.c:40969
 #, gcc-internal-format
 msgid "expected %<for%> after %qs"
 msgstr ""
 
-#: c/c-parser.c:19234 cp/parser.c:40177
+#: c/c-parser.c:19387 cp/parser.c:41247
 #, gcc-internal-format
 msgid "expected %<point%>"
 msgstr ""
 
-#: c/c-parser.c:19483 cp/parser.c:40446
+#: c/c-parser.c:19640 cp/parser.c:41520
 #, 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.c:19499 cp/parser.c:40462
+#: c/c-parser.c:19656 cp/parser.c:41536
 #, 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.c:19547 cp/parser.c:40688
+#: c/c-parser.c:19704 cp/parser.c:41766
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target update%> must contain at least one %<from%> or %<to%> "
 "clauses"
 msgstr ""
 
-#: c/c-parser.c:19619 cp/parser.c:40543
+#: c/c-parser.c:19778 cp/parser.c:41619
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target enter data%> with map-type other than %<to%> or %<alloc"
 "%> on %<map%> clause"
 msgstr ""
 
-#: c/c-parser.c:19631 cp/parser.c:40555
+#: c/c-parser.c:19790 cp/parser.c:41631
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target enter data%> must contain at least one %<map%> clause"
 msgstr ""
 
-#: c/c-parser.c:19705 cp/parser.c:40632
+#: c/c-parser.c:19865 cp/parser.c:41710
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target exit data%> with map-type other than %<from%>, %<release"
 "%> or %<delete%> on %<map%> clause"
 msgstr ""
 
-#: c/c-parser.c:19718 cp/parser.c:40645
+#: c/c-parser.c:19878 cp/parser.c:41723
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target exit data%> must contain at least one %<map%> clause"
 msgstr ""
 
-#: c/c-parser.c:19937 cp/parser.c:40902
+#: c/c-parser.c:20101 cp/parser.c:41984
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp target%> with map-type other than %<to%>, %<from%>, %<tofrom%> "
 "or %<alloc%> on %<map%> clause"
 msgstr ""
 
-#: c/c-parser.c:19994
+#: c/c-parser.c:20158
 #, 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.c:20045 c/c-parser.c:20073
+#: c/c-parser.c:20209 c/c-parser.c:20237
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare %s%> must be followed by function declaration or "
 "definition"
 msgstr ""
 
-#: c/c-parser.c:20112 cp/parser.c:41560
+#: c/c-parser.c:20276 cp/parser.c:42660
 #, gcc-internal-format
 msgid "expected trait selector name"
 msgstr ""
 
-#: c/c-parser.c:20165 cp/parser.c:41612
+#: c/c-parser.c:20329 cp/parser.c:42712
 #, gcc-internal-format
 msgid "selector %qs not allowed for context selector set %qs"
 msgstr ""
 
-#: c/c-parser.c:20190 cp/parser.c:41636
+#: c/c-parser.c:20354 cp/parser.c:42736
 #, gcc-internal-format
 msgid "selector %qs does not accept any properties"
 msgstr ""
 
-#: c/c-parser.c:20217 cp/parser.c:41675 cp/pt.c:11344
+#: c/c-parser.c:20381 cp/parser.c:42775 cp/pt.c:11512
 #, gcc-internal-format
 msgid "score argument must be constant integer expression"
 msgstr ""
 
-#: c/c-parser.c:20220 cp/parser.c:41678 cp/pt.c:11361
+#: c/c-parser.c:20384 cp/parser.c:42778 cp/pt.c:11529
 #, gcc-internal-format
 msgid "score argument must be non-negative"
 msgstr ""
 
-#: c/c-parser.c:20244 cp/parser.c:41706 cp/pt.c:11347
+#: c/c-parser.c:20408 cp/parser.c:42806 cp/pt.c:11515
 #, gcc-internal-format
 msgid "property must be constant integer expression or string literal"
 msgstr ""
 
-#: c/c-parser.c:20289 cp/parser.c:41750
+#: c/c-parser.c:20453 cp/parser.c:42850
 #, gcc-internal-format
 msgid "expected identifier or string literal"
 msgstr ""
 
-#: c/c-parser.c:20311 cp/parser.c:41772 cp/pt.c:11351
+#: c/c-parser.c:20475 cp/parser.c:42872 cp/pt.c:11519
 #, gcc-internal-format
 msgid "property must be constant integer expression"
 msgstr ""
 
-#: c/c-parser.c:20322 cp/parser.c:41783
+#: c/c-parser.c:20486 cp/parser.c:42883
 #, gcc-internal-format
 msgid ""
 "properties for %<simd%> selector may not be specified in %<metadirective%>"
 msgstr ""
 
-#: c/c-parser.c:20409 cp/parser.c:41869
+#: c/c-parser.c:20573 cp/parser.c:42969
 #, gcc-internal-format
 msgid "expected %<construct%>, %<device%>, %<implementation%> or %<user%>"
 msgstr ""
 
-#: c/c-parser.c:20484 cp/parser.c:41977
+#: c/c-parser.c:20648 cp/parser.c:43077
 #, gcc-internal-format
 msgid "expected %<match%>"
 msgstr ""
 
-#: c/c-parser.c:20504
+#: c/c-parser.c:20668
 #, gcc-internal-format
 msgid "variant %qD is not a function"
 msgstr ""
 
-#: c/c-parser.c:20510 cp/decl.c:7378
+#: c/c-parser.c:20674 cp/decl.c:7517
 #, gcc-internal-format
 msgid "variant %qD and base %qD have incompatible types"
 msgstr ""
 
-#: c/c-parser.c:20522 cp/decl.c:7387
+#: c/c-parser.c:20686 cp/decl.c:7526
 #, gcc-internal-format
 msgid "variant %qD is a built-in"
 msgstr ""
 
-#: c/c-parser.c:20565
+#: c/c-parser.c:20729
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare %s%> not immediately followed by a function "
 "declaration or definition"
 msgstr ""
 
-#: c/c-parser.c:20573 cp/parser.c:42022
+#: c/c-parser.c:20737 cp/parser.c:43122
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare %s%> not immediately followed by a single function "
 "declaration or definition"
 msgstr ""
 
-#: c/c-parser.c:20682 cp/parser.c:42127
+#: c/c-parser.c:20846 cp/parser.c:43227
 #, gcc-internal-format
 msgid "%qD specified both in declare target %<link%> and %<to%> clauses"
 msgstr ""
 
-#: c/c-parser.c:20731 cp/parser.c:42176
+#: c/c-parser.c:20895 cp/parser.c:43276
 #, gcc-internal-format
 msgid "directive with only %<device_type%> clauses ignored"
 msgstr ""
 
-#: c/c-parser.c:20750 cp/parser.c:42201
+#: c/c-parser.c:20914 cp/parser.c:43301
 #, gcc-internal-format
 msgid "expected %<target%>"
 msgstr ""
 
-#: c/c-parser.c:20757 cp/parser.c:42208
+#: c/c-parser.c:20921 cp/parser.c:43308
 #, gcc-internal-format
 msgid "expected %<declare%>"
 msgstr ""
 
-#: c/c-parser.c:20763 cp/parser.c:42215
+#: c/c-parser.c:20927 cp/parser.c:43315
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp end declare target%> without corresponding %<#pragma omp "
 "declare target%>"
 msgstr ""
 
-#: c/c-parser.c:20791
+#: c/c-parser.c:20955
 #, gcc-internal-format
 msgid "%<#pragma omp declare reduction%> not at file or block scope"
 msgstr ""
 
-#: c/c-parser.c:20868
+#: c/c-parser.c:21032
 #, gcc-internal-format
 msgid "predeclared arithmetic type in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.c:20872
+#: c/c-parser.c:21036
 #, gcc-internal-format
 msgid "function or array type in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.c:20875
+#: c/c-parser.c:21039
 #, gcc-internal-format
 msgid "%<_Atomic%> qualified type in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.c:20878
+#: c/c-parser.c:21042
 #, gcc-internal-format
 msgid ""
 "const, volatile or restrict qualified type in %<#pragma omp declare reduction"
 "%>"
 msgstr ""
 
-#: c/c-parser.c:20886
+#: c/c-parser.c:21050
 #, gcc-internal-format
 msgid "redeclaration of %qs %<#pragma omp declare reduction%> for type %qT"
 msgstr ""
 
-#: c/c-parser.c:20895
+#: c/c-parser.c:21059
 #, gcc-internal-format
 msgid "previous %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.c:21012
+#: c/c-parser.c:21176
 #, gcc-internal-format
 msgid "expected %<omp_priv%> or function-name"
 msgstr ""
 
-#: c/c-parser.c:21023
+#: c/c-parser.c:21187
 #, gcc-internal-format
 msgid "expected function-name %<(%>"
 msgstr ""
 
-#: c/c-parser.c:21042
+#: c/c-parser.c:21206
 #, gcc-internal-format
 msgid "one of the initializer call arguments should be %<&omp_priv%>"
 msgstr ""
 
-#: c/c-parser.c:21173 cp/parser.c:42672
+#: c/c-parser.c:21337 cp/parser.c:43783
 #, gcc-internal-format
 msgid "expected %<simd%>, %<reduction%>, %<target%> or %<variant%>"
 msgstr ""
 
-#: c/c-parser.c:21237 cp/parser.c:42735
+#: c/c-parser.c:21401 cp/parser.c:43846
 #, gcc-internal-format
 msgid "expected %<seq_cst%>, %<relaxed%> or %<acq_rel%>"
 msgstr ""
 
-#: c/c-parser.c:21257 cp/parser.c:42761
+#: c/c-parser.c:21421 cp/parser.c:43872
 #, gcc-internal-format
 msgid ""
 "expected %<unified_address%>, %<unified_shared_memory%>, %<dynamic_allocators"
 "%>, %<reverse_offload%> or %<atomic_default_mem_order%> clause"
 msgstr ""
 
-#: c/c-parser.c:21266 cp/parser.c:42770
+#: c/c-parser.c:21430 cp/parser.c:43881
 #, gcc-internal-format
 msgid "%qs clause on %<requires%> directive not supported yet"
 msgstr ""
 
-#: c/c-parser.c:21278 cp/parser.c:42782
+#: c/c-parser.c:21442 cp/parser.c:43893
 #, gcc-internal-format
 msgid ""
 "%qs clause used lexically after first target construct or offloading API"
 msgstr ""
 
-#: c/c-parser.c:21290 cp/parser.c:42794
+#: c/c-parser.c:21454 cp/parser.c:43905
 #, gcc-internal-format
 msgid ""
 "more than one %<atomic_default_mem_order%> clause in a single compilation "
 "unit"
 msgstr ""
 
-#: c/c-parser.c:21299 cp/parser.c:42803
+#: c/c-parser.c:21463 cp/parser.c:43914
 #, gcc-internal-format
 msgid ""
 "%<atomic_default_mem_order%> clause used lexically after first %<atomic%> "
 "construct without memory order clause"
 msgstr ""
 
-#: c/c-parser.c:21313 cp/parser.c:42817
+#: c/c-parser.c:21477 cp/parser.c:43928
 #, gcc-internal-format
 msgid "%<pragma omp requires%> requires at least one clause"
 msgstr ""
 
-#: c/c-parser.c:21332
+#: c/c-parser.c:21496
 #, gcc-internal-format
 msgid "zero sized type %qT in %<reduction%> clause"
 msgstr ""
 
-#: c/c-parser.c:21338
+#: c/c-parser.c:21502
 #, gcc-internal-format
 msgid "variable sized type %qT in %<reduction%> clause"
 msgstr ""
 
-#: c/c-parser.c:21574 cp/semantics.c:8405
+#: c/c-parser.c:21742 cp/semantics.c:8675
 #, gcc-internal-format
 msgid "%qE declared %<threadprivate%> after first use"
 msgstr ""
 
-#: c/c-parser.c:21576 cp/semantics.c:8407
+#: c/c-parser.c:21744 cp/semantics.c:8677
 #, gcc-internal-format
 msgid "automatic variable %qE cannot be %<threadprivate%>"
 msgstr ""
 
-#: c/c-parser.c:21580 cp/semantics.c:8409
+#: c/c-parser.c:21748 cp/semantics.c:8679
 #, gcc-internal-format
 msgid "%<threadprivate%> %qE has incomplete type"
 msgstr ""
 
-#: c/c-parser.c:21759 cp/parser.c:43546
+#: c/c-parser.c:21927 cp/parser.c:44661
 #, gcc-internal-format
 msgid "%<__transaction_cancel%> without transactional memory support enabled"
 msgstr ""
 
-#: c/c-parser.c:21765 cp/parser.c:43552
+#: c/c-parser.c:21933 cp/parser.c:44667
 #, gcc-internal-format
 msgid "%<__transaction_cancel%> within a %<__transaction_relaxed%>"
 msgstr ""
 
-#: c/c-parser.c:21774
+#: c/c-parser.c:21942
 #, gcc-internal-format
 msgid ""
 "outer %<__transaction_cancel%> not within outer %<__transaction_atomic%> or "
 "a %<transaction_may_cancel_outer%> function"
 msgstr ""
 
-#: c/c-parser.c:21782 cp/parser.c:43570
+#: c/c-parser.c:21950 cp/parser.c:44685
 #, gcc-internal-format
 msgid "%<__transaction_cancel%> not within %<__transaction_atomic%>"
 msgstr ""
 
-#: c/c-parser.c:21866
+#: c/c-parser.c:22034
 #, gcc-internal-format
 msgid "no closing brace"
 msgstr ""
@@ -44534,7 +45739,7 @@ msgstr ""
 msgid "%qD has an incomplete type %qT"
 msgstr ""
 
-#: c/c-typeck.c:241 c/c-typeck.c:10507 c/c-typeck.c:10549 cp/call.c:4494
+#: c/c-typeck.c:241 c/c-typeck.c:10615 c/c-typeck.c:10657 cp/call.c:4545
 #, gcc-internal-format
 msgid "invalid use of void expression"
 msgstr ""
@@ -44544,7 +45749,7 @@ msgstr ""
 msgid "invalid use of flexible array member"
 msgstr ""
 
-#: c/c-typeck.c:255 cp/typeck2.c:505
+#: c/c-typeck.c:255 cp/typeck2.c:363
 #, gcc-internal-format
 msgid "invalid use of array with unspecified bounds"
 msgstr ""
@@ -44592,112 +45797,112 @@ msgstr ""
 msgid "cannot mix operands of decimal floating and other floating types"
 msgstr ""
 
-#: c/c-typeck.c:1321
+#: c/c-typeck.c:1325
 #, gcc-internal-format
 msgid "pointers to arrays with different qualifiers are incompatible in ISO C"
 msgstr ""
 
-#: c/c-typeck.c:1325
+#: c/c-typeck.c:1329
 #, gcc-internal-format
 msgid "types are not quite compatible"
 msgstr ""
 
-#: c/c-typeck.c:1329
+#: c/c-typeck.c:1333
 #, gcc-internal-format
 msgid "pointer target types incompatible in C++"
 msgstr ""
 
-#: c/c-typeck.c:1662
+#: c/c-typeck.c:1666
 #, gcc-internal-format
 msgid "function return types not compatible due to %<volatile%>"
 msgstr ""
 
-#: c/c-typeck.c:1920
+#: c/c-typeck.c:1924
 #, gcc-internal-format
 msgid "converting an array compound literal to a pointer is ill-formed in C++"
 msgstr ""
 
-#: c/c-typeck.c:2450 c/c-typeck.c:9091
+#: c/c-typeck.c:2457 c/c-typeck.c:9170
 #, gcc-internal-format
 msgid "%qT has no member named %qE; did you mean %qE?"
 msgstr ""
 
-#: c/c-typeck.c:2454 c/c-typeck.c:9095
+#: c/c-typeck.c:2461 c/c-typeck.c:9174
 #, gcc-internal-format
 msgid "%qT has no member named %qE"
 msgstr ""
 
-#: c/c-typeck.c:2463
+#: c/c-typeck.c:2470
 #, gcc-internal-format
 msgid "accessing a member %qE of an atomic structure %qE"
 msgstr ""
 
-#: c/c-typeck.c:2466
+#: c/c-typeck.c:2473
 #, gcc-internal-format
 msgid "accessing a member %qE of an atomic union %qE"
 msgstr ""
 
-#: c/c-typeck.c:2526
+#: c/c-typeck.c:2533
 #, gcc-internal-format
 msgid "%qE is a pointer; did you mean to use %<->%>?"
 msgstr ""
 
-#: c/c-typeck.c:2532
+#: c/c-typeck.c:2539
 #, gcc-internal-format
 msgid "request for member %qE in something not a structure or union"
 msgstr ""
 
-#: c/c-typeck.c:2580
+#: c/c-typeck.c:2587
 #, gcc-internal-format
 msgid "dereferencing %<void *%> pointer"
 msgstr ""
 
-#: c/c-typeck.c:2635
+#: c/c-typeck.c:2642
 #, gcc-internal-format
 msgid "subscripted value is neither array nor pointer nor vector"
 msgstr ""
 
-#: c/c-typeck.c:2645 cp/typeck.c:3558 cp/typeck.c:3651
+#: c/c-typeck.c:2652 cp/typeck.c:3581 cp/typeck.c:3674
 #, gcc-internal-format
 msgid "array subscript is not an integer"
 msgstr ""
 
-#: c/c-typeck.c:2651
+#: c/c-typeck.c:2658
 #, gcc-internal-format
 msgid "subscripted value is pointer to function"
 msgstr ""
 
-#: c/c-typeck.c:2705
+#: c/c-typeck.c:2712
 #, gcc-internal-format
 msgid "ISO C forbids subscripting %<register%> array"
 msgstr ""
 
-#: c/c-typeck.c:2708
+#: c/c-typeck.c:2715
 #, gcc-internal-format
 msgid "ISO C90 forbids subscripting non-lvalue array"
 msgstr ""
 
-#: c/c-typeck.c:2822
+#: c/c-typeck.c:2829
 #, gcc-internal-format
 msgid "enum constant defined here"
 msgstr ""
 
-#: c/c-typeck.c:2929 cp/typeck.c:1786
+#: c/c-typeck.c:2936 cp/typeck.c:1794
 #, gcc-internal-format
 msgid "%<sizeof%> on array function parameter %qE will return size of %qT"
 msgstr ""
 
-#: c/c-typeck.c:3081
+#: c/c-typeck.c:3089
 #, gcc-internal-format
 msgid "called object %qE is not a function or function pointer"
 msgstr ""
 
-#: c/c-typeck.c:3086
+#: c/c-typeck.c:3094
 #, gcc-internal-format
 msgid "called object %qD is not a function or function pointer"
 msgstr ""
 
-#: c/c-typeck.c:3092
+#: c/c-typeck.c:3100
 #, gcc-internal-format
 msgid "called object is not a function or function pointer"
 msgstr ""
@@ -44705,1609 +45910,1665 @@ 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.c:3122
+#: c/c-typeck.c:3130
 #, gcc-internal-format
 msgid "function called through a non-compatible type"
 msgstr ""
 
-#: c/c-typeck.c:3127 c/c-typeck.c:3179
+#: c/c-typeck.c:3135 c/c-typeck.c:3187
 #, gcc-internal-format
 msgid "function with qualified void return type called"
 msgstr ""
 
-#: c/c-typeck.c:3234
+#: c/c-typeck.c:3242
 #, gcc-internal-format, gfc-internal-format
 msgid "type of formal parameter %d is incomplete"
 msgstr ""
 
-#: c/c-typeck.c:3248
+#: c/c-typeck.c:3256
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as integer rather than floating due to prototype"
 msgstr ""
 
-#: c/c-typeck.c:3254
+#: c/c-typeck.c:3262
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as integer rather than complex due to prototype"
 msgstr ""
 
-#: c/c-typeck.c:3260
+#: c/c-typeck.c:3268
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as complex rather than floating due to prototype"
 msgstr ""
 
-#: c/c-typeck.c:3266
+#: c/c-typeck.c:3274
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as floating rather than integer due to prototype"
 msgstr ""
 
-#: c/c-typeck.c:3272
+#: c/c-typeck.c:3280
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as complex rather than integer due to prototype"
 msgstr ""
 
-#: c/c-typeck.c:3278
+#: c/c-typeck.c:3286
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as floating rather than complex due to prototype"
 msgstr ""
 
-#: c/c-typeck.c:3292
+#: c/c-typeck.c:3300
 #, gcc-internal-format
 msgid ""
 "passing argument %d of %qE as %<float%> rather than %<double%> due to "
 "prototype"
 msgstr ""
 
-#: c/c-typeck.c:3318
+#: c/c-typeck.c:3326
 #, gcc-internal-format
 msgid "passing argument %d of %qE as %qT rather than %qT due to prototype"
 msgstr ""
 
-#: c/c-typeck.c:3343
+#: c/c-typeck.c:3351
 #, gcc-internal-format
 msgid "passing argument %d of %qE with different width due to prototype"
 msgstr ""
 
-#: c/c-typeck.c:3367
+#: c/c-typeck.c:3375
 #, gcc-internal-format
 msgid "passing argument %d of %qE as unsigned due to prototype"
 msgstr ""
 
-#: c/c-typeck.c:3372
+#: c/c-typeck.c:3380
 #, gcc-internal-format
 msgid "passing argument %d of %qE as signed due to prototype"
 msgstr ""
 
-#: c/c-typeck.c:3525
+#: c/c-typeck.c:3533
 #, gcc-internal-format
 msgid "too many arguments to method %qE"
 msgstr ""
 
-#: c/c-typeck.c:3535
+#: c/c-typeck.c:3543
 #, gcc-internal-format
 msgid "too many arguments to built-in function %qE expecting %d"
 msgstr ""
 
-#: c/c-typeck.c:3607
+#: c/c-typeck.c:3615
 #, gcc-internal-format
 msgid "implicit conversion from %qT to %qT when passing argument to function"
 msgstr ""
 
-#: c/c-typeck.c:3675
+#: c/c-typeck.c:3683
 #, gcc-internal-format
 msgid "too few arguments to built-in function %qE expecting %u"
 msgstr ""
 
-#: c/c-typeck.c:3850 c/c-typeck.c:3878 cp/typeck.c:4981 cp/typeck.c:5250
+#: c/c-typeck.c:3858 c/c-typeck.c:3886 cp/typeck.c:5111 cp/typeck.c:5380
 #, gcc-internal-format
 msgid "comparison with string literal results in unspecified behavior"
 msgstr ""
 
-#: c/c-typeck.c:3858 c/c-typeck.c:3869 cp/typeck.c:5008 cp/typeck.c:5032
+#: c/c-typeck.c:3866 c/c-typeck.c:3877 cp/typeck.c:5138 cp/typeck.c:5162
 #, gcc-internal-format
 msgid "comparison between pointer and zero character constant"
 msgstr ""
 
-#: c/c-typeck.c:3861 c/c-typeck.c:3872 cp/typeck.c:5011 cp/typeck.c:5035
+#: c/c-typeck.c:3869 c/c-typeck.c:3880 cp/typeck.c:5141 cp/typeck.c:5165
 #, gcc-internal-format
 msgid "did you mean to dereference the pointer?"
 msgstr ""
 
-#: c/c-typeck.c:3892
+#: c/c-typeck.c:3900
 #, gcc-internal-format
 msgid "comparison between %qT and %qT"
 msgstr ""
 
-#: c/c-typeck.c:3943
+#: c/c-typeck.c:3951
 #, gcc-internal-format
 msgid "pointer of type %<void *%> used in subtraction"
 msgstr ""
 
-#: c/c-typeck.c:3946
+#: c/c-typeck.c:3954
 #, gcc-internal-format
 msgid "pointer to a function used in subtraction"
 msgstr ""
 
-#: c/c-typeck.c:3981
+#: c/c-typeck.c:3988
 #, gcc-internal-format
 msgid "arithmetic on pointer to an incomplete type"
 msgstr ""
 
-#: c/c-typeck.c:3990 cp/typeck.c:5938
+#: c/c-typeck.c:3997 cp/typeck.c:6078
 #, gcc-internal-format
 msgid "arithmetic on pointer to an empty aggregate"
 msgstr ""
 
-#: c/c-typeck.c:4423
+#: c/c-typeck.c:4430
 #, gcc-internal-format
 msgid "%<~%> on a boolean expression"
 msgstr ""
 
-#: c/c-typeck.c:4427
+#: c/c-typeck.c:4434
 #, gcc-internal-format
 msgid "did you mean to use logical not?"
 msgstr ""
 
-#: c/c-typeck.c:4437
+#: c/c-typeck.c:4444
 #, gcc-internal-format
 msgid "ISO C does not support %<~%> for complex conjugation"
 msgstr ""
 
-#: c/c-typeck.c:4461
+#: c/c-typeck.c:4468
 #, gcc-internal-format
 msgid "wrong type argument to absu"
 msgstr ""
 
-#: c/c-typeck.c:4486
+#: c/c-typeck.c:4493
 #, gcc-internal-format
 msgid "wrong type argument to unary exclamation mark"
 msgstr ""
 
-#: c/c-typeck.c:4544
+#: c/c-typeck.c:4551
 #, gcc-internal-format
 msgid "increment of enumeration value is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.c:4547
+#: c/c-typeck.c:4554
 #, gcc-internal-format
 msgid "decrement of enumeration value is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.c:4554
+#: c/c-typeck.c:4561
 #, gcc-internal-format
 msgid "increment of a boolean expression"
 msgstr ""
 
-#: c/c-typeck.c:4557
+#: c/c-typeck.c:4564
 #, gcc-internal-format
 msgid "decrement of a boolean expression"
 msgstr ""
 
-#: c/c-typeck.c:4573
+#: c/c-typeck.c:4580
 #, gcc-internal-format
 msgid "ISO C does not support %<++%> and %<--%> on complex types"
 msgstr ""
 
-#: c/c-typeck.c:4599 c/c-typeck.c:4633
+#: c/c-typeck.c:4606 c/c-typeck.c:4640
 #, gcc-internal-format
 msgid "wrong type argument to increment"
 msgstr ""
 
-#: c/c-typeck.c:4601 c/c-typeck.c:4636
+#: c/c-typeck.c:4608 c/c-typeck.c:4643
 #, gcc-internal-format
 msgid "wrong type argument to decrement"
 msgstr ""
 
-#: c/c-typeck.c:4621
+#: c/c-typeck.c:4628
 #, gcc-internal-format
 msgid "increment of pointer to an incomplete type %qT"
 msgstr ""
 
-#: c/c-typeck.c:4625
+#: c/c-typeck.c:4632
 #, gcc-internal-format
 msgid "decrement of pointer to an incomplete type %qT"
 msgstr ""
 
-#: c/c-typeck.c:4732
+#: c/c-typeck.c:4739
 #, gcc-internal-format
 msgid "taking address of expression of type %<void%>"
 msgstr ""
 
-#: c/c-typeck.c:4791
+#: c/c-typeck.c:4798
 #, gcc-internal-format
 msgid "cannot take address of bit-field %qD"
 msgstr ""
 
-#: c/c-typeck.c:4804
+#: c/c-typeck.c:4811
 #, gcc-internal-format
 msgid "cannot take address of scalar with reverse storage order"
 msgstr ""
 
-#: c/c-typeck.c:4812
+#: c/c-typeck.c:4819
 #, gcc-internal-format
 msgid "address of array with reverse scalar storage order requested"
 msgstr ""
 
-#: c/c-typeck.c:4997
+#: c/c-typeck.c:5004
 #, gcc-internal-format
 msgid "global register variable %qD used in nested function"
 msgstr ""
 
-#: c/c-typeck.c:5000
+#: c/c-typeck.c:5007
 #, gcc-internal-format
 msgid "register variable %qD used in nested function"
 msgstr ""
 
-#: c/c-typeck.c:5005
+#: c/c-typeck.c:5012
 #, gcc-internal-format
 msgid "address of global register variable %qD requested"
 msgstr ""
 
-#: c/c-typeck.c:5007
+#: c/c-typeck.c:5014
 #, gcc-internal-format
 msgid "address of register variable %qD requested"
 msgstr ""
 
-#: c/c-typeck.c:5146
+#: c/c-typeck.c:5153
 #, gcc-internal-format
 msgid "non-lvalue array in conditional expression"
 msgstr ""
 
-#: c/c-typeck.c:5228
+#: c/c-typeck.c:5235
 #, gcc-internal-format
 msgid ""
 "implicit conversion from %qT to %qT to match other result of conditional"
 msgstr ""
 
-#: c/c-typeck.c:5287 c/c-typeck.c:5293
+#: c/c-typeck.c:5294 c/c-typeck.c:5300
 #, gcc-internal-format
 msgid ""
 "operand of %<?:%> changes signedness from %qT to %qT due to unsignedness of "
 "other operand"
 msgstr ""
 
-#: c/c-typeck.c:5310
+#: c/c-typeck.c:5317
 #, gcc-internal-format
 msgid "ISO C forbids conditional expr with only one void side"
 msgstr ""
 
-#: c/c-typeck.c:5327
+#: c/c-typeck.c:5334
 #, gcc-internal-format
 msgid "pointers to disjoint address spaces used in conditional expression"
 msgstr ""
 
-#: c/c-typeck.c:5338 c/c-typeck.c:5355
+#: c/c-typeck.c:5345 c/c-typeck.c:5362
 #, gcc-internal-format
 msgid "pointer to array loses qualifier in conditional expression"
 msgstr ""
 
-#: c/c-typeck.c:5343 c/c-typeck.c:5360
+#: c/c-typeck.c:5350 c/c-typeck.c:5367
 #, gcc-internal-format
 msgid "ISO C forbids conditional expr between %<void *%> and function pointer"
 msgstr ""
 
-#: c/c-typeck.c:5373
+#: c/c-typeck.c:5380
 #, gcc-internal-format
 msgid ""
 "pointer type mismatch between %qT and %qT of %qD and %qD in conditional "
 "expression"
 msgstr ""
 
-#: c/c-typeck.c:5378
+#: c/c-typeck.c:5385
 #, gcc-internal-format
 msgid "pointer type mismatch in conditional expression"
 msgstr ""
 
-#: c/c-typeck.c:5387 c/c-typeck.c:5398
+#: c/c-typeck.c:5394 c/c-typeck.c:5405
 #, gcc-internal-format
 msgid "pointer/integer type mismatch in conditional expression"
 msgstr ""
 
-#: c/c-typeck.c:5412
+#: c/c-typeck.c:5419
 #, gcc-internal-format
 msgid "type mismatch in conditional expression"
 msgstr ""
 
-#: c/c-typeck.c:5536
+#: c/c-typeck.c:5534
+#, gcc-internal-format
+msgid "ignoring return value of %qD, declared with attribute %<nodiscard%>: %E"
+msgstr ""
+
+#: c/c-typeck.c:5538
+#, gcc-internal-format
+msgid "ignoring return value of %qD, declared with attribute %<nodiscard%>"
+msgstr ""
+
+#: c/c-typeck.c:5556
+#, gcc-internal-format
+msgid ""
+"ignoring return value of type %qT, declared with attribute %<nodiscard%>: %E"
+msgstr ""
+
+#: c/c-typeck.c:5561
+#, gcc-internal-format
+msgid ""
+"ignoring return value of type %qT, declared with attribute %<nodiscard%>"
+msgstr ""
+
+#: c/c-typeck.c:5570 cp/cvt.c:1098
+#, gcc-internal-format
+msgid "in call to %qD, declared here"
+msgstr ""
+
+#: c/c-typeck.c:5619
 #, gcc-internal-format
 msgid "left-hand operand of comma expression has no effect"
 msgstr ""
 
-#: c/c-typeck.c:5554 c/c-typeck.c:11156
+#: c/c-typeck.c:5637 c/c-typeck.c:11176
 #, gcc-internal-format
 msgid "right-hand operand of comma expression has no effect"
 msgstr ""
 
-#: c/c-typeck.c:5623
+#: c/c-typeck.c:5708
 msgid "cast adds %q#v qualifier to function type"
 msgstr ""
 
-#: c/c-typeck.c:5629
+#: c/c-typeck.c:5714
 msgid "cast discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.c:5664
+#: c/c-typeck.c:5749
 #, gcc-internal-format
 msgid ""
 "to be safe all intermediate pointers in cast from %qT to %qT must be %<const"
 "%> qualified"
 msgstr ""
 
-#: c/c-typeck.c:5758
+#: c/c-typeck.c:5843
 #, gcc-internal-format
 msgid "cast specifies array type"
 msgstr ""
 
-#: c/c-typeck.c:5764
+#: c/c-typeck.c:5849
 #, gcc-internal-format
 msgid "cast specifies function type"
 msgstr ""
 
-#: c/c-typeck.c:5779
+#: c/c-typeck.c:5864
 #, gcc-internal-format
 msgid "ISO C forbids casting nonscalar to the same type"
 msgstr ""
 
-#: c/c-typeck.c:5799
+#: c/c-typeck.c:5884
 #, gcc-internal-format
 msgid "ISO C forbids casts to union type"
 msgstr ""
 
-#: c/c-typeck.c:5809
+#: c/c-typeck.c:5894
 #, gcc-internal-format
 msgid "cast to union type from type not present in union"
 msgstr ""
 
-#: c/c-typeck.c:5844
+#: c/c-typeck.c:5929
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "cast to %s address space pointer from disjoint generic address space pointer"
 msgstr ""
 
-#: c/c-typeck.c:5849
+#: c/c-typeck.c:5934
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "cast to generic address space pointer from disjoint %s address space pointer"
 msgstr ""
 
-#: c/c-typeck.c:5854
+#: c/c-typeck.c:5939
 #, gcc-internal-format, gfc-internal-format
 msgid "cast to %s address space pointer from disjoint %s address space pointer"
 msgstr ""
 
-#: c/c-typeck.c:5874
+#: c/c-typeck.c:5959
 #, gcc-internal-format
 msgid "cast increases required alignment of target type"
 msgstr ""
 
-#: c/c-typeck.c:5885
+#: c/c-typeck.c:5970
 #, gcc-internal-format
 msgid "cast from pointer to integer of different size"
 msgstr ""
 
-#: c/c-typeck.c:5890
+#: c/c-typeck.c:5975
 #, gcc-internal-format
 msgid "cast from function call of type %qT to non-matching type %qT"
 msgstr ""
 
-#: c/c-typeck.c:5899 cp/typeck.c:8276
+#: c/c-typeck.c:5984 cp/typeck.c:8430
 #, gcc-internal-format
 msgid "cast to pointer from integer of different size"
 msgstr ""
 
-#: c/c-typeck.c:5913
+#: c/c-typeck.c:5998
 #, gcc-internal-format
 msgid "ISO C forbids conversion of function pointer to object pointer type"
 msgstr ""
 
-#: c/c-typeck.c:5922
+#: c/c-typeck.c:6007
 #, gcc-internal-format
 msgid "ISO C forbids conversion of object pointer to function pointer type"
 msgstr ""
 
-#: c/c-typeck.c:5932
+#: c/c-typeck.c:6017
 #, gcc-internal-format
 msgid "cast between incompatible function types from %qT to %qT"
 msgstr ""
 
-#: c/c-typeck.c:6027
+#: c/c-typeck.c:6112
 #, gcc-internal-format
 msgid "defining a type in a cast is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.c:6068
+#: c/c-typeck.c:6153
 #, gcc-internal-format
 msgid "assignment to expression with array type"
 msgstr ""
 
-#: c/c-typeck.c:6194
+#: c/c-typeck.c:6279
 #, gcc-internal-format
 msgid "enum conversion in assignment is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.c:6403 c/c-typeck.c:6425 c/c-typeck.c:6451
+#: c/c-typeck.c:6481 c/c-typeck.c:6503 c/c-typeck.c:6529
 #, gcc-internal-format
 msgid "(near initialization for %qs)"
 msgstr ""
 
-#: c/c-typeck.c:6466
+#: c/c-typeck.c:6544
 #, gcc-internal-format
 msgid "array initialized from parenthesized string constant"
 msgstr ""
 
-#: c/c-typeck.c:6509 c/c-typeck.c:6755
+#: c/c-typeck.c:6587 c/c-typeck.c:6833
 #, gcc-internal-format
 msgid "expected %qT but argument is of type %qT"
 msgstr ""
 
-#: c/c-typeck.c:6543
+#: c/c-typeck.c:6621
 #, 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.c:6546
+#: c/c-typeck.c:6624
 #, 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.c:6551
+#: c/c-typeck.c:6629
 #, gcc-internal-format
 msgid "built-in %qD declared here"
 msgstr ""
 
-#: c/c-typeck.c:6750
+#: c/c-typeck.c:6828
 #, gcc-internal-format
 msgid "enum conversion when passing argument %d of %qE is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.c:6759
+#: c/c-typeck.c:6837
 #, gcc-internal-format
 msgid "enum conversion from %qT to %qT in assignment is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.c:6763
+#: c/c-typeck.c:6841
 #, gcc-internal-format
 msgid "enum conversion from %qT to %qT in initialization is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.c:6768
+#: c/c-typeck.c:6846
 #, gcc-internal-format
 msgid "enum conversion from %qT to %qT in return is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.c:6786
+#: c/c-typeck.c:6864
 #, gcc-internal-format
 msgid "implicit conversion from %qT to %qT"
 msgstr ""
 
-#: c/c-typeck.c:6964 c/c-typeck.c:7318
+#: c/c-typeck.c:7042 c/c-typeck.c:7397
 msgid ""
 "passing argument %d of %qE makes %q#v qualified function pointer from "
 "unqualified"
 msgstr ""
 
-#: c/c-typeck.c:6967 c/c-typeck.c:7321
+#: c/c-typeck.c:7045 c/c-typeck.c:7400
 msgid "assignment makes %q#v qualified function pointer from unqualified"
 msgstr ""
 
-#: c/c-typeck.c:6970 c/c-typeck.c:7323
+#: c/c-typeck.c:7048 c/c-typeck.c:7402
 msgid "initialization makes %q#v qualified function pointer from unqualified"
 msgstr ""
 
-#: c/c-typeck.c:6973 c/c-typeck.c:7325
+#: c/c-typeck.c:7051 c/c-typeck.c:7404
 msgid "return makes %q#v qualified function pointer from unqualified"
 msgstr ""
 
-#: c/c-typeck.c:6981 c/c-typeck.c:7213 c/c-typeck.c:7256
+#: c/c-typeck.c:7059 c/c-typeck.c:7292 c/c-typeck.c:7335
 msgid ""
 "passing argument %d of %qE discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.c:6983 c/c-typeck.c:7215 c/c-typeck.c:7258
+#: c/c-typeck.c:7061 c/c-typeck.c:7294 c/c-typeck.c:7337
 msgid "assignment discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.c:6985 c/c-typeck.c:7217 c/c-typeck.c:7260
+#: c/c-typeck.c:7063 c/c-typeck.c:7296 c/c-typeck.c:7339
 msgid "initialization discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.c:6987 c/c-typeck.c:7219 c/c-typeck.c:7262
+#: c/c-typeck.c:7065 c/c-typeck.c:7298 c/c-typeck.c:7341
 msgid "return discards %qv qualifier from pointer target type"
 msgstr ""
 
-#: c/c-typeck.c:6996
+#: c/c-typeck.c:7074
 #, gcc-internal-format
 msgid "ISO C prohibits argument conversion to union type"
 msgstr ""
 
-#: c/c-typeck.c:7064
+#: c/c-typeck.c:7142
 #, gcc-internal-format
 msgid "request for implicit conversion from %qT to %qT not permitted in C++"
 msgstr ""
 
-#: c/c-typeck.c:7077
+#: c/c-typeck.c:7155
 #, gcc-internal-format
 msgid "passing argument %d of %qE from pointer to non-enclosed address space"
 msgstr ""
 
-#: c/c-typeck.c:7087
+#: c/c-typeck.c:7165
 #, gcc-internal-format
 msgid "assignment from pointer to non-enclosed address space"
 msgstr ""
 
-#: c/c-typeck.c:7097
+#: c/c-typeck.c:7175
 #, gcc-internal-format
 msgid "initialization from pointer to non-enclosed address space"
 msgstr ""
 
-#: c/c-typeck.c:7107
+#: c/c-typeck.c:7185
 #, gcc-internal-format
 msgid "return from pointer to non-enclosed address space"
 msgstr ""
 
-#: c/c-typeck.c:7130
+#: c/c-typeck.c:7208
 #, gcc-internal-format
 msgid "argument %d of %qE might be a candidate for a format attribute"
 msgstr ""
 
-#: c/c-typeck.c:7136
+#: c/c-typeck.c:7214
 #, gcc-internal-format
 msgid "assignment left-hand side might be a candidate for a format attribute"
 msgstr ""
 
-#: c/c-typeck.c:7141
+#: c/c-typeck.c:7219
 #, gcc-internal-format
 msgid ""
 "initialization left-hand side might be a candidate for a format attribute"
 msgstr ""
 
-#: c/c-typeck.c:7146 cp/typeck.c:9385
+#: c/c-typeck.c:7224 cp/typeck.c:9539
 #, gcc-internal-format
 msgid "return type might be a candidate for a format attribute"
 msgstr ""
 
-#: c/c-typeck.c:7166
+#: c/c-typeck.c:7245
 #, gcc-internal-format
 msgid "passing argument %d of %qE from incompatible scalar storage order"
 msgstr ""
 
-#: c/c-typeck.c:7171
+#: c/c-typeck.c:7250
 #, gcc-internal-format
 msgid ""
 "assignment to %qT from pointer type %qT with incompatible scalar storage "
 "order"
 msgstr ""
 
-#: c/c-typeck.c:7176
+#: c/c-typeck.c:7255
 #, gcc-internal-format
 msgid ""
 "initialization of %qT from pointer type %qT with incompatible scalar storage "
 "order"
 msgstr ""
 
-#: c/c-typeck.c:7181
+#: c/c-typeck.c:7260
 #, gcc-internal-format
 msgid ""
 "returning %qT from pointer type with incompatible scalar storage order %qT"
 msgstr ""
 
-#: c/c-typeck.c:7230
+#: c/c-typeck.c:7309
 #, gcc-internal-format
 msgid ""
 "ISO C forbids passing argument %d of %qE between function pointer and %<void "
 "*%>"
 msgstr ""
 
-#: c/c-typeck.c:7233
+#: c/c-typeck.c:7312
 #, gcc-internal-format
 msgid "ISO C forbids assignment between function pointer and %<void *%>"
 msgstr ""
 
-#: c/c-typeck.c:7235
+#: c/c-typeck.c:7314
 #, gcc-internal-format
 msgid "ISO C forbids initialization between function pointer and %<void *%>"
 msgstr ""
 
-#: c/c-typeck.c:7237
+#: c/c-typeck.c:7316
 #, gcc-internal-format
 msgid "ISO C forbids return between function pointer and %<void *%>"
 msgstr ""
 
-#: c/c-typeck.c:7281
+#: c/c-typeck.c:7360
 #, gcc-internal-format
 msgid "pointer targets in passing argument %d of %qE differ in signedness"
 msgstr ""
 
-#: c/c-typeck.c:7289
+#: c/c-typeck.c:7368
 #, gcc-internal-format
 msgid "pointer targets in assignment from %qT to %qT differ in signedness"
 msgstr ""
 
-#: c/c-typeck.c:7294
+#: c/c-typeck.c:7373
 #, gcc-internal-format
 msgid "pointer targets in initialization of %qT from %qT differ in signedness"
 msgstr ""
 
-#: c/c-typeck.c:7299
+#: c/c-typeck.c:7378
 #, gcc-internal-format
 msgid ""
 "pointer targets in returning %qT from a function with return type %qT differ "
 "in signedness"
 msgstr ""
 
-#: c/c-typeck.c:7341
+#: c/c-typeck.c:7420
 #, gcc-internal-format
 msgid "passing argument %d of %qE from incompatible pointer type"
 msgstr ""
 
-#: c/c-typeck.c:7349
+#: c/c-typeck.c:7428
 #, gcc-internal-format
 msgid "assignment to %qT from pointer to %qD with incompatible type %qT"
 msgstr ""
 
-#: c/c-typeck.c:7354
+#: c/c-typeck.c:7433
 #, gcc-internal-format
 msgid "assignment to %qT from incompatible pointer type %qT"
 msgstr ""
 
-#: c/c-typeck.c:7360
+#: c/c-typeck.c:7439
 #, gcc-internal-format
 msgid "initialization of %qT from pointer to %qD with incompatible type %qT"
 msgstr ""
 
-#: c/c-typeck.c:7365
+#: c/c-typeck.c:7444
 #, gcc-internal-format
 msgid "initialization of %qT from incompatible pointer type %qT"
 msgstr ""
 
-#: c/c-typeck.c:7372
+#: c/c-typeck.c:7451
 #, gcc-internal-format
 msgid ""
 "returning pointer to %qD of type %qT from a function with incompatible type "
 "%qT"
 msgstr ""
 
-#: c/c-typeck.c:7377
+#: c/c-typeck.c:7456
 #, gcc-internal-format
 msgid "returning %qT from a function with incompatible return type %qT"
 msgstr ""
 
-#: c/c-typeck.c:7416
+#: c/c-typeck.c:7495
 #, gcc-internal-format
 msgid "passing argument %d of %qE makes pointer from integer without a cast"
 msgstr ""
 
-#: c/c-typeck.c:7423
+#: c/c-typeck.c:7502
 #, gcc-internal-format
 msgid "assignment to %qT from %qT makes pointer from integer without a cast"
 msgstr ""
 
-#: c/c-typeck.c:7428
+#: c/c-typeck.c:7507
 #, gcc-internal-format
 msgid ""
 "initialization of %qT from %qT makes pointer from integer without a cast"
 msgstr ""
 
-#: c/c-typeck.c:7432
+#: c/c-typeck.c:7511
 #, gcc-internal-format
 msgid ""
 "returning %qT from a function with return type %qT makes pointer from "
 "integer without a cast"
 msgstr ""
 
-#: c/c-typeck.c:7452
+#: c/c-typeck.c:7531
 #, gcc-internal-format
 msgid "passing argument %d of %qE makes integer from pointer without a cast"
 msgstr ""
 
-#: c/c-typeck.c:7459
+#: c/c-typeck.c:7538
 #, gcc-internal-format
 msgid "assignment to %qT from %qT makes integer from pointer without a cast"
 msgstr ""
 
-#: c/c-typeck.c:7464
+#: c/c-typeck.c:7543
 #, gcc-internal-format
 msgid ""
 "initialization of %qT from %qT makes integer from pointer without a cast"
 msgstr ""
 
-#: c/c-typeck.c:7468
+#: c/c-typeck.c:7547
 #, gcc-internal-format
 msgid ""
 "returning %qT from a function with return type %qT makes integer from "
 "pointer without a cast"
 msgstr ""
 
-#: c/c-typeck.c:7495
+#: c/c-typeck.c:7574
 #, gcc-internal-format
 msgid "incompatible type for argument %d of %qE"
 msgstr ""
 
-#: c/c-typeck.c:7506
+#: c/c-typeck.c:7585
 #, gcc-internal-format
 msgid "incompatible types when assigning to type %qT from type %qT"
 msgstr ""
 
-#: c/c-typeck.c:7516
+#: c/c-typeck.c:7595
 #, gcc-internal-format
 msgid "incompatible types when initializing type %qT using type %qT"
 msgstr ""
 
-#: c/c-typeck.c:7526
+#: c/c-typeck.c:7605
 #, gcc-internal-format
 msgid "incompatible types when returning type %qT but %qT was expected"
 msgstr ""
 
-#: c/c-typeck.c:7594
+#: c/c-typeck.c:7673
 #, gcc-internal-format
 msgid "traditional C rejects automatic aggregate initialization"
 msgstr ""
 
-#: c/c-typeck.c:7834 c/c-typeck.c:8728 cp/typeck2.c:1174
+#: c/c-typeck.c:7913 c/c-typeck.c:8807 cp/typeck2.c:1082
 #, gcc-internal-format
 msgid "initialization of a flexible array member"
 msgstr ""
 
-#: c/c-typeck.c:7850 cp/typeck2.c:1209
+#: c/c-typeck.c:7929 cp/typeck2.c:1099
 #, gcc-internal-format
 msgid ""
 "cannot initialize array of %qT from a string literal with type array of %qT"
 msgstr ""
 
-#: c/c-typeck.c:7890
+#: c/c-typeck.c:7969
 #, gcc-internal-format
 msgid "array of inappropriate type initialized from string constant"
 msgstr ""
 
-#: c/c-typeck.c:7958 cp/typeck.c:2162
+#: c/c-typeck.c:8037 cp/typeck.c:2175
 #, gcc-internal-format
 msgid "invalid use of non-lvalue array"
 msgstr ""
 
-#: c/c-typeck.c:7977 c/c-typeck.c:8001 c/c-typeck.c:8004 c/c-typeck.c:8012
-#: c/c-typeck.c:8052 c/c-typeck.c:9581 c/c-typeck.c:9631
+#: c/c-typeck.c:8056 c/c-typeck.c:8080 c/c-typeck.c:8083 c/c-typeck.c:8091
+#: c/c-typeck.c:8131 c/c-typeck.c:9660 c/c-typeck.c:9710
 #, gcc-internal-format
 msgid "initializer element is not constant"
 msgstr ""
 
-#: c/c-typeck.c:7986
+#: c/c-typeck.c:8065
 #, gcc-internal-format
 msgid "array initialized from non-constant array expression"
 msgstr ""
 
-#: c/c-typeck.c:8017 c/c-typeck.c:8065 c/c-typeck.c:9641
+#: c/c-typeck.c:8096 c/c-typeck.c:8144 c/c-typeck.c:9720
 #, gcc-internal-format
 msgid "initializer element is not a constant expression"
 msgstr ""
 
-#: c/c-typeck.c:8059 c/c-typeck.c:9636
+#: c/c-typeck.c:8138 c/c-typeck.c:9715
 #, gcc-internal-format
 msgid "initializer element is not computable at load time"
 msgstr ""
 
-#: c/c-typeck.c:8078
+#: c/c-typeck.c:8157
 #, gcc-internal-format
 msgid "invalid initializer"
 msgstr ""
 
-#: c/c-typeck.c:8356 cp/decl.c:6779
+#: c/c-typeck.c:8435 cp/decl.c:6933
 #, gcc-internal-format
 msgid "opaque vector types cannot be initialized"
 msgstr ""
 
-#: c/c-typeck.c:8576
+#: c/c-typeck.c:8655
 #, gcc-internal-format
 msgid "extra brace group at end of initializer"
 msgstr ""
 
-#: c/c-typeck.c:8659
+#: c/c-typeck.c:8738
 #, gcc-internal-format
 msgid "braces around scalar initializer"
 msgstr ""
 
-#: c/c-typeck.c:8725 c/c-typeck.c:10123 cp/typeck2.c:1218 cp/typeck2.c:1475
+#: c/c-typeck.c:8804 c/c-typeck.c:10243 cp/typeck2.c:1109 cp/typeck2.c:1367
 #, gcc-internal-format
 msgid "initialization of flexible array member in a nested context"
 msgstr ""
 
-#: c/c-typeck.c:8762
+#: c/c-typeck.c:8841
 #, gcc-internal-format
 msgid "missing braces around initializer"
 msgstr ""
 
-#: c/c-typeck.c:8785
+#: c/c-typeck.c:8864
 #, gcc-internal-format
 msgid "missing initializer for field %qD of %qT"
 msgstr ""
 
-#: c/c-typeck.c:8809
+#: c/c-typeck.c:8888
 #, gcc-internal-format
 msgid "empty scalar initializer"
 msgstr ""
 
-#: c/c-typeck.c:8814
+#: c/c-typeck.c:8893
 #, gcc-internal-format
 msgid "extra elements in scalar initializer"
 msgstr ""
 
-#: c/c-typeck.c:8933 c/c-typeck.c:9015
+#: c/c-typeck.c:9012 c/c-typeck.c:9094
 #, gcc-internal-format
 msgid "array index in non-array initializer"
 msgstr ""
 
-#: c/c-typeck.c:8938 c/c-typeck.c:9077
+#: c/c-typeck.c:9017 c/c-typeck.c:9156
 #, gcc-internal-format
 msgid "field name not in record or union initializer"
 msgstr ""
 
-#: c/c-typeck.c:8988
+#: c/c-typeck.c:9067
 #, gcc-internal-format
 msgid "array index in initializer not of integer type"
 msgstr ""
 
-#: c/c-typeck.c:8997 c/c-typeck.c:9006
+#: c/c-typeck.c:9076 c/c-typeck.c:9085
 #, gcc-internal-format
 msgid "array index in initializer is not an integer constant expression"
 msgstr ""
 
-#: c/c-typeck.c:9011 c/c-typeck.c:9013
+#: c/c-typeck.c:9090 c/c-typeck.c:9092
 #, gcc-internal-format
 msgid "nonconstant array index in initializer"
 msgstr ""
 
-#: c/c-typeck.c:9017 c/c-typeck.c:9020
+#: c/c-typeck.c:9096 c/c-typeck.c:9099
 #, gcc-internal-format
 msgid "array index in initializer exceeds array bounds"
 msgstr ""
 
-#: c/c-typeck.c:9039
+#: c/c-typeck.c:9118
 #, gcc-internal-format
 msgid "empty index range in initializer"
 msgstr ""
 
-#: c/c-typeck.c:9048
+#: c/c-typeck.c:9127
 #, gcc-internal-format
 msgid "array index range in initializer exceeds array bounds"
 msgstr ""
 
-#: c/c-typeck.c:9150 c/c-typeck.c:9180 c/c-typeck.c:9724
+#: c/c-typeck.c:9229 c/c-typeck.c:9259 c/c-typeck.c:9803
 #, gcc-internal-format
 msgid "initialized field with side-effects overwritten"
 msgstr ""
 
-#: c/c-typeck.c:9154 c/c-typeck.c:9184 c/c-typeck.c:9727
+#: c/c-typeck.c:9233 c/c-typeck.c:9263 c/c-typeck.c:9806
 #, gcc-internal-format
 msgid "initialized field overwritten"
 msgstr ""
 
-#: c/c-typeck.c:9658
+#: c/c-typeck.c:9737
 #, gcc-internal-format
 msgid "enum conversion in initialization is invalid in C++"
 msgstr ""
 
-#: c/c-typeck.c:9998
+#: c/c-typeck.c:10118
 #, gcc-internal-format
 msgid "excess elements in %<char%> array initializer"
 msgstr ""
 
-#: c/c-typeck.c:10005 c/c-typeck.c:10082
+#: c/c-typeck.c:10125 c/c-typeck.c:10202
 #, gcc-internal-format
 msgid "excess elements in struct initializer"
 msgstr ""
 
-#: c/c-typeck.c:10026
+#: c/c-typeck.c:10146
 #, gcc-internal-format
 msgid ""
 "positional initialization of field in %<struct%> declared with "
 "%<designated_init%> attribute"
 msgstr ""
 
-#: c/c-typeck.c:10097 cp/typeck2.c:1178
+#: c/c-typeck.c:10217 cp/typeck2.c:1086
 #, gcc-internal-format
 msgid "non-static initialization of a flexible array member"
 msgstr ""
 
-#: c/c-typeck.c:10196
+#: c/c-typeck.c:10312
 #, gcc-internal-format
 msgid "excess elements in union initializer"
 msgstr ""
 
-#: c/c-typeck.c:10218
+#: c/c-typeck.c:10334
 #, gcc-internal-format
 msgid "traditional C rejects initialization of unions"
 msgstr ""
 
-#: c/c-typeck.c:10288
+#: c/c-typeck.c:10396
 #, gcc-internal-format
 msgid "excess elements in array initializer"
 msgstr ""
 
-#: c/c-typeck.c:10322
+#: c/c-typeck.c:10430
 #, gcc-internal-format
 msgid "excess elements in vector initializer"
 msgstr ""
 
-#: c/c-typeck.c:10354
+#: c/c-typeck.c:10462
 #, gcc-internal-format
 msgid "excess elements in scalar initializer"
 msgstr ""
 
-#: c/c-typeck.c:10600
+#: c/c-typeck.c:10704
 #, gcc-internal-format
 msgid "ISO C forbids %<goto *expr;%>"
 msgstr ""
 
-#: c/c-typeck.c:10627 c/gimple-parser.c:2401 cp/typeck.c:9833
+#: c/c-typeck.c:10731 c/gimple-parser.c:2404 cp/typeck.c:10031
 #, gcc-internal-format
 msgid "function declared %<noreturn%> has a %<return%> statement"
 msgstr ""
 
-#: c/c-typeck.c:10653 c/c-typeck.c:10657
+#: c/c-typeck.c:10757 c/c-typeck.c:10761
 #, gcc-internal-format
 msgid "%<return%> with no value, in function returning non-void"
 msgstr ""
 
-#: c/c-typeck.c:10671 c/gimple-parser.c:2411
+#: c/c-typeck.c:10775 c/gimple-parser.c:2414
 #, gcc-internal-format
 msgid "%<return%> with a value, in function returning void"
 msgstr ""
 
-#: c/c-typeck.c:10674
+#: c/c-typeck.c:10778
 #, gcc-internal-format
 msgid "ISO C forbids %<return%> with expression, in function returning void"
 msgstr ""
 
-#: c/c-typeck.c:10751
+#: c/c-typeck.c:10855
 #, gcc-internal-format
 msgid "function returns address of label"
 msgstr ""
 
-#: c/c-typeck.c:10838 cp/semantics.c:1321
+#: c/c-typeck.c:10945 cp/semantics.c:1350
 #, gcc-internal-format
 msgid "switch quantity not an integer"
 msgstr ""
 
-#: c/c-typeck.c:10863
+#: c/c-typeck.c:10970
 #, gcc-internal-format
 msgid "%<long%> switch expression not converted to %<int%> in ISO C"
 msgstr ""
 
-#: c/c-typeck.c:10900 c/c-typeck.c:10908
+#: c/c-typeck.c:11008 c/c-typeck.c:11016
 #, gcc-internal-format
 msgid "case label is not an integer constant expression"
 msgstr ""
 
-#: c/c-typeck.c:10914 cp/parser.c:11694
+#: c/c-typeck.c:11022 cp/parser.c:11898
 #, gcc-internal-format
 msgid "case label not within a switch statement"
 msgstr ""
 
-#: c/c-typeck.c:10916
+#: c/c-typeck.c:11024
 #, gcc-internal-format
 msgid "%<default%> label not within a switch statement"
 msgstr ""
 
-#: c/c-typeck.c:11098 cp/parser.c:13120
+#: c/c-typeck.c:11100 cp/parser.c:13406
 #, gcc-internal-format
 msgid "break statement not within loop or switch"
 msgstr ""
 
-#: c/c-typeck.c:11100 cp/parser.c:13143
+#: c/c-typeck.c:11103 c/c-typeck.c:11123 cp/decl.c:3639 cp/parser.c:13416
+#: cp/parser.c:13437
 #, gcc-internal-format
-msgid "continue statement not within a loop"
+msgid "invalid exit from OpenMP structured block"
 msgstr ""
 
-#: c/c-typeck.c:11105 cp/parser.c:13133
+#: c/c-typeck.c:11106 cp/parser.c:13419
 #, gcc-internal-format
 msgid "break statement used with OpenMP for loop"
 msgstr ""
 
-#: c/c-typeck.c:11110
+#: c/c-typeck.c:11120 cp/parser.c:13429
 #, gcc-internal-format
-msgid "break statement within %<#pragma simd%> loop body"
-msgstr ""
-
-#: c/c-typeck.c:11112
-#, gcc-internal-format
-msgid "continue statement within %<#pragma simd%> loop body"
+msgid "continue statement not within a loop"
 msgstr ""
 
-#: c/c-typeck.c:11138 cp/cp-gimplify.c:500
+#: c/c-typeck.c:11158 cp/cp-gimplify.c:218
 #, gcc-internal-format
 msgid "statement with no effect"
 msgstr ""
 
-#: c/c-typeck.c:11182
+#: c/c-typeck.c:11202
 #, gcc-internal-format
 msgid "expression statement has incomplete type"
 msgstr ""
 
-#: c/c-typeck.c:12016 c/c-typeck.c:12184 cp/typeck.c:5264
+#: c/c-typeck.c:12036 c/c-typeck.c:12204 cp/typeck.c:5394
 #, gcc-internal-format
 msgid "comparing vectors with different element types"
 msgstr ""
 
-#: c/c-typeck.c:12024 c/c-typeck.c:12192 cp/typeck.c:5277
+#: c/c-typeck.c:12044 c/c-typeck.c:12212 cp/typeck.c:5407
 #, gcc-internal-format
 msgid "comparing vectors with different number of elements"
 msgstr ""
 
-#: c/c-typeck.c:12049 c/c-typeck.c:12217 cp/typeck.c:5312
+#: c/c-typeck.c:12069 c/c-typeck.c:12237 cp/typeck.c:5442
 #, gcc-internal-format
 msgid "could not find an integer type of the same size as %qT"
 msgstr ""
 
-#: c/c-typeck.c:12063 cp/typeck.c:4970
+#: c/c-typeck.c:12083 cp/typeck.c:5100
 #, gcc-internal-format
 msgid "comparing floating-point with %<==%> or %<!=%> is unsafe"
 msgstr ""
 
-#: c/c-typeck.c:12081 c/c-typeck.c:12102
+#: c/c-typeck.c:12101 c/c-typeck.c:12122
 #, gcc-internal-format
 msgid ""
 "the comparison will always evaluate as %<false%> for the address of %qD will "
 "never be NULL"
 msgstr ""
 
-#: c/c-typeck.c:12087 c/c-typeck.c:12108
+#: c/c-typeck.c:12107 c/c-typeck.c:12128
 #, gcc-internal-format
 msgid ""
 "the comparison will always evaluate as %<true%> for the address of %qD will "
 "never be NULL"
 msgstr ""
 
-#: c/c-typeck.c:12129 c/c-typeck.c:12258
+#: c/c-typeck.c:12149 c/c-typeck.c:12278
 #, gcc-internal-format
 msgid "comparison of pointers to disjoint address spaces"
 msgstr ""
 
-#: c/c-typeck.c:12136 c/c-typeck.c:12142
+#: c/c-typeck.c:12156 c/c-typeck.c:12162
 #, gcc-internal-format
 msgid "ISO C forbids comparison of %<void *%> with function pointer"
 msgstr ""
 
-#: c/c-typeck.c:12149 c/c-typeck.c:12268
+#: c/c-typeck.c:12169 c/c-typeck.c:12288
 #, gcc-internal-format
 msgid "comparison of distinct pointer types lacks a cast"
 msgstr ""
 
-#: c/c-typeck.c:12161 c/c-typeck.c:12166 c/c-typeck.c:12294 c/c-typeck.c:12299
+#: c/c-typeck.c:12181 c/c-typeck.c:12186 c/c-typeck.c:12314 c/c-typeck.c:12319
 #, gcc-internal-format
 msgid "comparison between pointer and integer"
 msgstr ""
 
-#: c/c-typeck.c:12246
+#: c/c-typeck.c:12266
 #, gcc-internal-format
 msgid "comparison of complete and incomplete pointers"
 msgstr ""
 
-#: c/c-typeck.c:12248
+#: c/c-typeck.c:12268
 #, gcc-internal-format
 msgid "ISO C forbids ordered comparisons of pointers to functions"
 msgstr ""
 
-#: c/c-typeck.c:12253
+#: c/c-typeck.c:12273
 #, gcc-internal-format
 msgid "ordered comparison of pointer with null pointer"
 msgstr ""
 
-#: c/c-typeck.c:12276 c/c-typeck.c:12279 c/c-typeck.c:12286 c/c-typeck.c:12289
+#: c/c-typeck.c:12296 c/c-typeck.c:12299 c/c-typeck.c:12306 c/c-typeck.c:12309
 #, gcc-internal-format
 msgid "ordered comparison of pointer with integer zero"
 msgstr ""
 
-#: c/c-typeck.c:12357
+#: c/c-typeck.c:12378
 #, gcc-internal-format
 msgid ""
 "implicit conversion from %qT to %qT to match other operand of binary "
 "expression"
 msgstr ""
 
-#: c/c-typeck.c:12672
+#: c/c-typeck.c:12693
 #, gcc-internal-format
 msgid "used array that cannot be converted to pointer where scalar is required"
 msgstr ""
 
-#: c/c-typeck.c:12676
+#: c/c-typeck.c:12697
 #, gcc-internal-format
 msgid "used struct type value where scalar is required"
 msgstr ""
 
-#: c/c-typeck.c:12680
+#: c/c-typeck.c:12701
 #, gcc-internal-format
 msgid "used union type value where scalar is required"
 msgstr ""
 
-#: c/c-typeck.c:12696
+#: c/c-typeck.c:12717
 #, gcc-internal-format
 msgid "used vector type where scalar is required"
 msgstr ""
 
-#: c/c-typeck.c:12886 cp/semantics.c:9529
+#: c/c-typeck.c:12907 cp/semantics.c:9799
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp cancel%> must specify one of %<parallel%>, %<for%>, %<sections"
 "%> or %<taskgroup%> clauses"
 msgstr ""
 
-#: c/c-typeck.c:12897 c/c-typeck.c:12907 cp/semantics.c:9540
-#: cp/semantics.c:9550
+#: c/c-typeck.c:12918 c/c-typeck.c:12928 cp/semantics.c:9810
+#: cp/semantics.c:9820
 #, gcc-internal-format
 msgid "expected %<cancel%> %<if%> clause modifier"
 msgstr ""
 
-#: c/c-typeck.c:12942 cp/semantics.c:9585
+#: c/c-typeck.c:12963 cp/semantics.c:9855
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp cancellation point%> must specify one of %<parallel%>, %<for"
 "%>, %<sections%> or %<taskgroup%> clauses"
 msgstr ""
 
-#: c/c-typeck.c:12986 c/c-typeck.c:14544 c/c-typeck.c:14631 c/c-typeck.c:14702
+#: c/c-typeck.c:13007 c/c-typeck.c:14594 c/c-typeck.c:14681 c/c-typeck.c:14754
 #, gcc-internal-format
 msgid "%<_Atomic%> %qE in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:12998 c/c-typeck.c:14476 c/c-typeck.c:14617 cp/semantics.c:4797
-#: cp/semantics.c:7257 cp/semantics.c:7415
+#: c/c-typeck.c:13019 c/c-typeck.c:14526 c/c-typeck.c:14667 cp/semantics.c:4860
+#: cp/semantics.c:7403 cp/semantics.c:7597
 #, gcc-internal-format
 msgid "bit-field %qE in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13007 c/c-typeck.c:14641 cp/semantics.c:4807
-#: cp/semantics.c:7434
+#: c/c-typeck.c:13028 c/c-typeck.c:14691 cp/semantics.c:4870
+#: cp/semantics.c:7616
 #, gcc-internal-format
 msgid "%qE is a member of a union"
 msgstr ""
 
-#: c/c-typeck.c:13015 c/c-typeck.c:14650
+#: c/c-typeck.c:13036 c/c-typeck.c:14700
 #, gcc-internal-format
 msgid "cannot dereference %qE in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13026 cp/semantics.c:4823 cp/semantics.c:7461
+#: c/c-typeck.c:13047 cp/semantics.c:4886 cp/semantics.c:7645
 #, gcc-internal-format
 msgid "%qD is not a variable in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13030 c/c-typeck.c:14667 cp/semantics.c:4827
-#: cp/semantics.c:7465
+#: c/c-typeck.c:13051 c/c-typeck.c:14719 cp/semantics.c:4890
+#: cp/semantics.c:7649
 #, gcc-internal-format
 msgid "%qE is not a variable in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13037
+#: c/c-typeck.c:13058
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13046 c/c-typeck.c:14674 c/c-typeck.c:14784 cp/semantics.c:4845
-#: cp/semantics.c:7472 cp/semantics.c:7651
+#: c/c-typeck.c:13067 c/c-typeck.c:14726 c/c-typeck.c:14844 cp/semantics.c:4908
+#: cp/semantics.c:7656 cp/semantics.c:7837
 #, gcc-internal-format
 msgid "%qD is threadprivate variable in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13082 cp/semantics.c:4879
+#: c/c-typeck.c:13103 cp/semantics.c:4942
 #, gcc-internal-format
 msgid "low bound %qE of array section does not have integral type"
 msgstr ""
 
-#: c/c-typeck.c:13089 cp/semantics.c:4886
+#: c/c-typeck.c:13110 cp/semantics.c:4949
 #, gcc-internal-format
 msgid "length %qE of array section does not have integral type"
 msgstr ""
 
-#: c/c-typeck.c:13112 cp/semantics.c:4919
+#: c/c-typeck.c:13133 cp/semantics.c:4982
 #, gcc-internal-format
 msgid "expected single pointer in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13129 c/c-typeck.c:13195 c/c-typeck.c:13467 cp/semantics.c:4936
-#: cp/semantics.c:5002
+#: c/c-typeck.c:13150 c/c-typeck.c:13216 c/c-typeck.c:13493 cp/semantics.c:4999
+#: cp/semantics.c:5065
 #, gcc-internal-format
 msgid "zero length array section in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13148 cp/semantics.c:4955
+#: c/c-typeck.c:13169 cp/semantics.c:5018
 #, gcc-internal-format
 msgid "for unknown bound array type length expression must be specified"
 msgstr ""
 
-#: c/c-typeck.c:13156 cp/semantics.c:4963
+#: c/c-typeck.c:13177 cp/semantics.c:5026
 #, gcc-internal-format
 msgid "negative low bound in array section in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13165 c/c-typeck.c:13281 cp/semantics.c:4972
-#: cp/semantics.c:5088
+#: c/c-typeck.c:13186 c/c-typeck.c:13307 cp/semantics.c:5035
+#: cp/semantics.c:5156
 #, gcc-internal-format
 msgid "negative length in array section in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13182 cp/semantics.c:4989
+#: c/c-typeck.c:13203 cp/semantics.c:5052
 #, gcc-internal-format
 msgid "low bound %qE above array section size in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13223 cp/semantics.c:5030
+#: c/c-typeck.c:13244 cp/semantics.c:5093
 #, gcc-internal-format
 msgid "length %qE above array section size in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13238 cp/semantics.c:5045
+#: c/c-typeck.c:13259 cp/semantics.c:5108
 #, gcc-internal-format
 msgid "high bound %qE above array section size in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13273 cp/semantics.c:5080
+#: c/c-typeck.c:13295 cp/semantics.c:5144
+#, gcc-internal-format
+msgid "for array function parameter length expression must be specified"
+msgstr ""
+
+#: c/c-typeck.c:13299 cp/semantics.c:5148
 #, gcc-internal-format
 msgid "for pointer type length expression must be specified"
 msgstr ""
 
-#: c/c-typeck.c:13291 c/c-typeck.c:13406 cp/semantics.c:5098
-#: cp/semantics.c:5227
+#: c/c-typeck.c:13317 c/c-typeck.c:13432 cp/semantics.c:5166
+#: cp/semantics.c:5295
 #, gcc-internal-format
 msgid "array section is not contiguous in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13299 cp/semantics.c:5106
+#: c/c-typeck.c:13325 cp/semantics.c:5174
 #, gcc-internal-format
 msgid "%qE does not have pointer or array type"
 msgstr ""
 
-#: c/c-typeck.c:13689 cp/semantics.c:6179
+#: c/c-typeck.c:13711 cp/semantics.c:6248
 #, gcc-internal-format
 msgid "iterator %qD has neither integral nor pointer type"
 msgstr ""
 
-#: c/c-typeck.c:13696
+#: c/c-typeck.c:13718
 #, gcc-internal-format
 msgid "iterator %qD has %<_Atomic%> qualified type"
 msgstr ""
 
-#: c/c-typeck.c:13702 cp/semantics.c:6186
+#: c/c-typeck.c:13724 cp/semantics.c:6255
 #, gcc-internal-format
 msgid "iterator %qD has const qualified type"
 msgstr ""
 
-#: c/c-typeck.c:13715 cp/semantics.c:6202
+#: c/c-typeck.c:13737 cp/semantics.c:6271
 #, gcc-internal-format
 msgid "iterator step with non-integral type"
 msgstr ""
 
-#: c/c-typeck.c:13735 cp/semantics.c:6238
+#: c/c-typeck.c:13757 cp/semantics.c:6307
 #, gcc-internal-format
 msgid "iterator %qD has zero step"
 msgstr ""
 
-#: c/c-typeck.c:13762
+#: c/c-typeck.c:13784
 #, gcc-internal-format
 msgid "type of iterator %qD refers to outer iterator %qD"
 msgstr ""
 
-#: c/c-typeck.c:13769 cp/semantics.c:6272
+#: c/c-typeck.c:13791 cp/semantics.c:6341
 #, gcc-internal-format
 msgid "begin expression refers to outer iterator %qD"
 msgstr ""
 
-#: c/c-typeck.c:13775 cp/semantics.c:6278
+#: c/c-typeck.c:13797 cp/semantics.c:6347
 #, gcc-internal-format
 msgid "end expression refers to outer iterator %qD"
 msgstr ""
 
-#: c/c-typeck.c:13781 cp/semantics.c:6284
+#: c/c-typeck.c:13803 cp/semantics.c:6353
 #, gcc-internal-format
 msgid "step expression refers to outer iterator %qD"
 msgstr ""
 
-#: c/c-typeck.c:13818 cp/semantics.c:6332
+#: c/c-typeck.c:13840 cp/semantics.c:6401
 #, gcc-internal-format
 msgid "expected pointer in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13897 cp/semantics.c:6404
+#: c/c-typeck.c:13922 cp/semantics.c:6476
 #, gcc-internal-format
 msgid ""
 "%<inscan%> and non-%<inscan%> %<reduction%> clauses on the same construct"
 msgstr ""
 
-#: c/c-typeck.c:13919 cp/semantics.c:6424
+#: c/c-typeck.c:13944 cp/semantics.c:6496
 #, gcc-internal-format
 msgid "%<inscan%> %<reduction%> clause with array section"
 msgstr ""
 
-#: c/c-typeck.c:13945 c/c-typeck.c:13955
+#: c/c-typeck.c:13970 c/c-typeck.c:13980
 #, gcc-internal-format
 msgid "%qD in %<reduction%> clause is a zero size array"
 msgstr ""
 
-#: c/c-typeck.c:13973
+#: c/c-typeck.c:14000
 #, gcc-internal-format
 msgid "%<_Atomic%> %qE in %<reduction%> clause"
 msgstr ""
 
-#: c/c-typeck.c:13985
+#: c/c-typeck.c:14012
 #, gcc-internal-format
 msgid "zero sized type %qT in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:13993
+#: c/c-typeck.c:14020
 #, gcc-internal-format
 msgid "variable sized type %qT in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:14043
+#: c/c-typeck.c:14070
 #, gcc-internal-format
 msgid "%qE has invalid type for %<reduction(%s)%>"
 msgstr ""
 
-#: c/c-typeck.c:14052 cp/semantics.c:6071
+#: c/c-typeck.c:14079 cp/semantics.c:6140
 #, gcc-internal-format
 msgid "user defined reduction not found for %qE"
 msgstr ""
 
-#: c/c-typeck.c:14140
+#: c/c-typeck.c:14167
 #, gcc-internal-format
 msgid "variable length element type in array %<reduction%> clause"
 msgstr ""
 
-#: c/c-typeck.c:14158 c/c-typeck.c:14858 cp/semantics.c:8092
+#: c/c-typeck.c:14185 c/c-typeck.c:14918 cp/semantics.c:8292
 #, gcc-internal-format
 msgid "%<nowait%> clause must not be used together with %<copyprivate%>"
 msgstr ""
 
-#: c/c-typeck.c:14170 cp/semantics.c:8135
+#: c/c-typeck.c:14197 cp/semantics.c:8360
 #, gcc-internal-format
 msgid "%qE must be %<threadprivate%> for %<copyin%>"
 msgstr ""
 
-#: c/c-typeck.c:14184 cp/semantics.c:6465
+#: c/c-typeck.c:14211 cp/semantics.c:6537
 #, gcc-internal-format
 msgid ""
 "modifier should not be specified in %<linear%> clause on %<simd%> or %<for%> "
 "constructs"
 msgstr ""
 
-#: c/c-typeck.c:14192
+#: c/c-typeck.c:14219
 #, gcc-internal-format
 msgid ""
 "linear clause applied to non-integral non-pointer variable with type %qT"
 msgstr ""
 
-#: c/c-typeck.c:14200
+#: c/c-typeck.c:14227
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<linear%> clause"
 msgstr ""
 
-#: c/c-typeck.c:14219 cp/semantics.c:6539
+#: c/c-typeck.c:14246 cp/semantics.c:6611
 #, gcc-internal-format
 msgid "%<linear%> clause step %qE is neither constant nor a parameter"
 msgstr ""
 
-#: c/c-typeck.c:14249 c/c-typeck.c:14777 c/c-typeck.c:14982 cp/semantics.c:6626
-#: cp/semantics.c:7644 cp/semantics.c:7939
+#: c/c-typeck.c:14276 c/c-typeck.c:14837 c/c-typeck.c:15061 cp/semantics.c:6698
+#: cp/semantics.c:7830 cp/semantics.c:8128
 #, gcc-internal-format
 msgid "%qE is not a variable in clause %qs"
 msgstr ""
 
-#: c/c-typeck.c:14264 cp/semantics.c:6641
+#: c/c-typeck.c:14291 cp/semantics.c:6713
 #, gcc-internal-format
 msgid "%qD appears more than once in reduction clauses"
 msgstr ""
 
-#: c/c-typeck.c:14277 c/c-typeck.c:14309 c/c-typeck.c:14340
+#: c/c-typeck.c:14304 c/c-typeck.c:14336 c/c-typeck.c:14367
 #, gcc-internal-format
 msgid "%qE appears more than once in data clauses"
 msgstr ""
 
-#: c/c-typeck.c:14285 c/c-typeck.c:14316 c/c-typeck.c:14565 c/c-typeck.c:14713
-#: c/c-typeck.c:14720 c/c-typeck.c:14736 c/c-typeck.c:14747 cp/semantics.c:6654
-#: cp/semantics.c:6662 cp/semantics.c:6719 cp/semantics.c:6726
-#: cp/semantics.c:6770 cp/semantics.c:7348 cp/semantics.c:7523
-#: cp/semantics.c:7530 cp/semantics.c:7548 cp/semantics.c:7559
+#: c/c-typeck.c:14312 c/c-typeck.c:14343 c/c-typeck.c:14615 c/c-typeck.c:14765
+#: c/c-typeck.c:14772 c/c-typeck.c:14790 c/c-typeck.c:14800 c/c-typeck.c:14807
+#: cp/semantics.c:6726 cp/semantics.c:6734 cp/semantics.c:6791
+#: cp/semantics.c:6798 cp/semantics.c:6842 cp/semantics.c:7530
+#: cp/semantics.c:7707 cp/semantics.c:7714 cp/semantics.c:7731
+#: cp/semantics.c:7741 cp/semantics.c:7748
 #, gcc-internal-format
 msgid "%qD appears more than once in data clauses"
 msgstr ""
 
-#: c/c-typeck.c:14288 c/c-typeck.c:14319 c/c-typeck.c:14723 c/c-typeck.c:14750
-#: cp/semantics.c:6665 cp/semantics.c:6729 cp/semantics.c:7533
-#: cp/semantics.c:7562
+#: c/c-typeck.c:14315 c/c-typeck.c:14346 c/c-typeck.c:14775 c/c-typeck.c:14810
+#: cp/semantics.c:6737 cp/semantics.c:6801 cp/semantics.c:7717
+#: cp/semantics.c:7751
 #, gcc-internal-format
 msgid "%qD appears both in data and map clauses"
 msgstr ""
 
-#: c/c-typeck.c:14302 cp/semantics.c:6711
+#: c/c-typeck.c:14329 cp/semantics.c:6783
 #, gcc-internal-format
 msgid "%qE is not a variable in clause %<firstprivate%>"
 msgstr ""
 
-#: c/c-typeck.c:14333 cp/semantics.c:6762
+#: c/c-typeck.c:14360 cp/semantics.c:6834
 #, gcc-internal-format
 msgid "%qE is not a variable in clause %<lastprivate%>"
 msgstr ""
 
-#: c/c-typeck.c:14352 cp/semantics.c:7101
+#: c/c-typeck.c:14379 cp/semantics.c:7173
 #, gcc-internal-format
 msgid "%qE is not a variable in %<aligned%> clause"
 msgstr ""
 
-#: c/c-typeck.c:14359
+#: c/c-typeck.c:14386
 #, gcc-internal-format
 msgid "%qE in %<aligned%> clause is neither a pointer nor an array"
 msgstr ""
 
-#: c/c-typeck.c:14366
+#: c/c-typeck.c:14393
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<aligned%> clause"
 msgstr ""
 
-#: c/c-typeck.c:14373
+#: c/c-typeck.c:14400
 #, gcc-internal-format
 msgid "%qE appears more than once in %<aligned%> clauses"
 msgstr ""
 
-#: c/c-typeck.c:14386 cp/semantics.c:7172
+#: c/c-typeck.c:14413 cp/semantics.c:7244
 #, gcc-internal-format
 msgid "%qE is not a variable in %<nontemporal%> clause"
 msgstr ""
 
-#: c/c-typeck.c:14392
+#: c/c-typeck.c:14419
 #, gcc-internal-format
 msgid "%qE appears more than once in %<nontemporal%> clauses"
 msgstr ""
 
-#: c/c-typeck.c:14457 cp/semantics.c:7223
+#: c/c-typeck.c:14432 cp/semantics.c:7283
+#, gcc-internal-format
+msgid "%qE is not a variable in %<allocate%> clause"
+msgstr ""
+
+#: c/c-typeck.c:14438
+#, gcc-internal-format
+msgid "%qE appears more than once in %<allocate%> clauses"
+msgstr ""
+
+#: c/c-typeck.c:14507 cp/semantics.c:7369
 #, gcc-internal-format
 msgid "%<depend%> clause with %<depobj%> dependence type on array section"
 msgstr ""
 
-#: c/c-typeck.c:14468 cp/semantics.c:7248
+#: c/c-typeck.c:14518 cp/semantics.c:7394
 #, gcc-internal-format
 msgid "%qE is not lvalue expression nor array section in %<depend%> clause"
 msgstr ""
 
-#: c/c-typeck.c:14484 cp/semantics.c:7267
+#: c/c-typeck.c:14534 cp/semantics.c:7413
 #, gcc-internal-format
 msgid ""
 "%qE does not have %<omp_depend_t%> type in %<depend%> clause with %<depobj%> "
 "dependence type"
 msgstr ""
 
-#: c/c-typeck.c:14493 cp/semantics.c:7278
+#: c/c-typeck.c:14543 cp/semantics.c:7424
 #, 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.c:14536 cp/semantics.c:7323
+#: c/c-typeck.c:14586 cp/semantics.c:7505
 #, gcc-internal-format
 msgid "array section does not have mappable type in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:14561 c/c-typeck.c:14733 cp/semantics.c:7344
-#: cp/semantics.c:7545
+#: c/c-typeck.c:14611 c/c-typeck.c:14787 cp/semantics.c:7526
+#: cp/semantics.c:7728
 #, gcc-internal-format
 msgid "%qD appears more than once in motion clauses"
 msgstr ""
 
-#: c/c-typeck.c:14569 c/c-typeck.c:14739 cp/semantics.c:7352
-#: cp/semantics.c:7551
+#: c/c-typeck.c:14619 c/c-typeck.c:14793 cp/semantics.c:7534
+#: cp/semantics.c:7734
 #, gcc-internal-format
 msgid "%qD appears more than once in map clauses"
 msgstr ""
 
-#: c/c-typeck.c:14624 cp/semantics.c:7422
+#: c/c-typeck.c:14674 cp/semantics.c:7604
 #, gcc-internal-format
 msgid "%qE does not have a mappable type in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:14693 c/c-typeck.c:14791 cp/semantics.c:7502
-#: cp/semantics.c:7658
+#: c/c-typeck.c:14745 c/c-typeck.c:14851 cp/semantics.c:7686
+#: cp/semantics.c:7844
 #, gcc-internal-format
 msgid "%qD does not have a mappable type in %qs clause"
 msgstr ""
 
-#: c/c-typeck.c:14772 cp/semantics.c:7638
+#: c/c-typeck.c:14832 cp/semantics.c:7824
 #, gcc-internal-format
 msgid "%qE is neither a variable nor a function name in clause %qs"
 msgstr ""
 
-#: c/c-typeck.c:14800 cp/semantics.c:7668
+#: c/c-typeck.c:14860 cp/semantics.c:7854
 #, gcc-internal-format
 msgid "%qE appears more than once on the same %<declare target%> directive"
 msgstr ""
 
-#: c/c-typeck.c:14814 cp/semantics.c:7684
+#: c/c-typeck.c:14874 cp/semantics.c:7870
 #, gcc-internal-format
 msgid "%qD is not an argument in %<uniform%> clause"
 msgstr ""
 
-#: c/c-typeck.c:14817 cp/semantics.c:7687
+#: c/c-typeck.c:14877 cp/semantics.c:7873
 #, gcc-internal-format
 msgid "%qE is not an argument in %<uniform%> clause"
 msgstr ""
 
-#: c/c-typeck.c:14834
+#: c/c-typeck.c:14894
 #, gcc-internal-format
 msgid "%qs variable is not a pointer"
 msgstr ""
 
-#: c/c-typeck.c:14841
+#: c/c-typeck.c:14901
 #, gcc-internal-format
 msgid "%qs variable is neither a pointer nor an array"
 msgstr ""
 
-#: c/c-typeck.c:14871 c/c-typeck.c:14943 cp/semantics.c:8081
+#: c/c-typeck.c:14931 c/c-typeck.c:15022 cp/semantics.c:8270
 #, gcc-internal-format
 msgid "%<order%> clause must not be used together with %<ordered%>"
 msgstr ""
 
-#: c/c-typeck.c:14965 cp/semantics.c:7907
+#: c/c-typeck.c:14951 cp/semantics.c:7456
+#, gcc-internal-format
+msgid "too many %qs clauses on a task construct"
+msgstr ""
+
+#: c/c-typeck.c:15044 cp/semantics.c:8096
 #, gcc-internal-format
 msgid "%<inbranch%> clause is incompatible with %<notinbranch%>"
 msgstr ""
 
-#: c/c-typeck.c:15032 cp/semantics.c:8194
+#: c/c-typeck.c:15111 cp/semantics.c:8431
 #, gcc-internal-format
 msgid "%qE is predetermined %qs for %qs"
 msgstr ""
 
-#: c/c-typeck.c:15042
+#: c/c-typeck.c:15121
 #, gcc-internal-format
 msgid ""
 "%<const%> qualified %qE may appear only in %<shared%> or %<firstprivate%> "
 "clauses"
 msgstr ""
 
-#: c/c-typeck.c:15061 cp/semantics.c:8033
+#: c/c-typeck.c:15140 cp/semantics.c:8222
 #, gcc-internal-format
 msgid "%<simdlen%> clause value is bigger than %<safelen%> clause value"
 msgstr ""
 
-#: c/c-typeck.c:15073 cp/semantics.c:8046
+#: c/c-typeck.c:15152 cp/semantics.c:8235
 #, gcc-internal-format
 msgid ""
 "%<nonmonotonic%> schedule modifier specified together with %<ordered%> clause"
 msgstr ""
 
-#: c/c-typeck.c:15084 c/c-typeck.c:15092 cp/semantics.c:8055
-#: cp/semantics.c:8073
+#: c/c-typeck.c:15163 c/c-typeck.c:15171 cp/semantics.c:8244
+#: cp/semantics.c:8262
 #, gcc-internal-format
 msgid "%qs clause specified together with %<inscan%> %<reduction%> clause"
 msgstr ""
 
-#: c/c-typeck.c:15107 cp/semantics.c:8013
+#: c/c-typeck.c:15216 cp/semantics.c:8202
 #, gcc-internal-format
 msgid ""
 "%<linear%> clause step is a parameter %qD not specified in %<uniform%> clause"
 msgstr ""
 
-#: c/c-typeck.c:15124 cp/semantics.c:8063
+#: c/c-typeck.c:15253 cp/semantics.c:8252
 #, gcc-internal-format
 msgid "%<nogroup%> clause must not be used together with %<reduction%> clause"
 msgstr ""
 
-#: c/c-typeck.c:15291
+#: c/c-typeck.c:15263 cp/semantics.c:8281
+#, gcc-internal-format
+msgid "%<detach%> clause must not be used together with %<mergeable%> clause"
+msgstr ""
+
+#: c/c-typeck.c:15281 cp/semantics.c:8456
+#, gcc-internal-format
+msgid ""
+"the event handle of a %<detach%> clause should not be in a data-sharing "
+"clause"
+msgstr ""
+
+#: c/c-typeck.c:15455
 #, gcc-internal-format
 msgid "cannot use %<va_arg%> with reverse storage order"
 msgstr ""
 
-#: c/c-typeck.c:15296
+#: c/c-typeck.c:15460
 #, gcc-internal-format
 msgid "second argument to %<va_arg%> is of incomplete type %qT"
 msgstr ""
 
-#: c/c-typeck.c:15302
+#: c/c-typeck.c:15466
 #, gcc-internal-format
 msgid "C++ requires promoted type, not enum type, in %<va_arg%>"
 msgstr ""
@@ -46357,12 +47618,12 @@ msgstr ""
 msgid "unknown block specifier"
 msgstr ""
 
-#: c/gimple-parser.c:552 c/gimple-parser.c:1939
+#: c/gimple-parser.c:552 c/gimple-parser.c:1942
 #, gcc-internal-format
 msgid "expected count value"
 msgstr ""
 
-#: c/gimple-parser.c:575 c/gimple-parser.c:661
+#: c/gimple-parser.c:575 c/gimple-parser.c:662
 #, gcc-internal-format
 msgid "stmts without block"
 msgstr ""
@@ -46372,955 +47633,969 @@ msgstr ""
 msgid "duplicate loop header"
 msgstr ""
 
-#: c/gimple-parser.c:818
+#: c/gimple-parser.c:819
 #, gcc-internal-format
 msgid "invalid source block specification"
 msgstr ""
 
-#: c/gimple-parser.c:980
+#: c/gimple-parser.c:981
 #, gcc-internal-format
 msgid "%<&&%> not valid in GIMPLE"
 msgstr ""
 
-#: c/gimple-parser.c:983
+#: c/gimple-parser.c:984
 #, gcc-internal-format
 msgid "%<||%> not valid in GIMPLE"
 msgstr ""
 
-#: c/gimple-parser.c:1097
+#: c/gimple-parser.c:1098
 #, gcc-internal-format
 msgid "expected pointer as argument of unary %<*%>"
 msgstr ""
 
-#: c/gimple-parser.c:1123
+#: c/gimple-parser.c:1124
 #, gcc-internal-format
 msgid "%<!%> not valid in GIMPLE"
 msgstr ""
 
-#: c/gimple-parser.c:1182 c/gimple-parser.c:1519
+#: c/gimple-parser.c:1183 c/gimple-parser.c:1520
 #, gcc-internal-format
 msgid "expected constant offset"
 msgstr ""
 
-#: c/gimple-parser.c:1243
+#: c/gimple-parser.c:1244
 #, gcc-internal-format
 msgid "SSA name undeclared"
 msgstr ""
 
-#: c/gimple-parser.c:1265
+#: c/gimple-parser.c:1266
 #, gcc-internal-format
 msgid "base variable or SSA name undeclared"
 msgstr ""
 
-#: c/gimple-parser.c:1272
+#: c/gimple-parser.c:1273
 #, gcc-internal-format
 msgid "invalid base %qE for SSA name"
 msgstr ""
 
-#: c/gimple-parser.c:1300
+#: c/gimple-parser.c:1301
 #, gcc-internal-format
 msgid "expecting internal function name"
 msgstr ""
 
-#: c/gimple-parser.c:1313
+#: c/gimple-parser.c:1314
 #, gcc-internal-format
 msgid "unknown internal function %qE"
 msgstr ""
 
-#: c/gimple-parser.c:1451
+#: c/gimple-parser.c:1452
 #, gcc-internal-format
 msgid "invalid type of %<__MEM%> operand"
 msgstr ""
 
-#: c/gimple-parser.c:1513
+#: c/gimple-parser.c:1514
 #, gcc-internal-format
 msgid "expected constant size"
 msgstr ""
 
-#: c/gimple-parser.c:1551 c/gimple-parser.c:1581 c/gimple-parser.c:1624
-#: c/gimple-parser.c:1634
+#: c/gimple-parser.c:1552 c/gimple-parser.c:1582 c/gimple-parser.c:1625
+#: c/gimple-parser.c:1635
 #, gcc-internal-format
 msgid "invalid _Literal"
 msgstr ""
 
-#: c/gimple-parser.c:1560
+#: c/gimple-parser.c:1561
 #, gcc-internal-format
 msgid "invalid type for _Literal with constructor"
 msgstr ""
 
-#: c/gimple-parser.c:1669
+#: c/gimple-parser.c:1670
 #, gcc-internal-format
 msgid "anonymous SSA name cannot have default definition"
 msgstr ""
 
-#: c/gimple-parser.c:1920
+#: c/gimple-parser.c:1923
 #, gcc-internal-format
 msgid "expected pass name"
 msgstr ""
 
-#: c/gimple-parser.c:1959
+#: c/gimple-parser.c:1962
 #, gcc-internal-format
 msgid "invalid operation"
 msgstr ""
 
-#: c/gimple-parser.c:2149
+#: c/gimple-parser.c:2152
 #, gcc-internal-format
 msgid "%<catch%> is not supported"
 msgstr ""
 
-#: c/gimple-parser.c:2151
+#: c/gimple-parser.c:2154
 #, gcc-internal-format
 msgid "expected %<finally%> or %<catch%>"
 msgstr ""
 
-#: c/gimple-parser.c:2195 c/gimple-parser.c:2232
+#: c/gimple-parser.c:2198 c/gimple-parser.c:2235
 #, gcc-internal-format
 msgid "expected goto expression"
 msgstr ""
 
-#: c/gimple-parser.c:2203
+#: c/gimple-parser.c:2206
 #, gcc-internal-format
 msgid "expected else statement"
 msgstr ""
 
-#: c/gimple-parser.c:2346
+#: c/gimple-parser.c:2349
 #, gcc-internal-format
 msgid "expected case label"
 msgstr ""
 
 #. A bad conversion for 'this' must be discarding cv-quals.
-#: cp/call.c:3651
+#: cp/call.c:3686
 #, gcc-internal-format
 msgid "  passing %qT as %<this%> argument discards qualifiers"
 msgstr ""
 
-#: cp/call.c:3655
+#: cp/call.c:3690
 msgid "  no known conversion for implicit %<this%> parameter from %qH to %qI"
 msgstr ""
 
-#: cp/call.c:3662
+#: cp/call.c:3697
 #, 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.c:3669
+#: cp/call.c:3704
 msgid "  no known conversion from %qH to %qI"
 msgstr ""
 
-#: cp/call.c:3675
+#: cp/call.c:3710
 msgid "  no known conversion for argument %d from %qH to %qI"
 msgstr ""
 
-#: cp/call.c:3687 cp/pt.c:6821
+#: cp/call.c:3722 cp/pt.c:6885
 #, 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.c:3715
+#: cp/call.c:3750
 #, gcc-internal-format
 msgid "%s%<%D(%T, %T, %T)%> (built-in)"
 msgstr ""
 
-#: cp/call.c:3720
+#: cp/call.c:3755
 #, gcc-internal-format
 msgid "%s%<%D(%T, %T)%> (built-in)"
 msgstr ""
 
-#: cp/call.c:3724
+#: cp/call.c:3759
 #, gcc-internal-format
 msgid "%s%<%D(%T)%> (built-in)"
 msgstr ""
 
-#: cp/call.c:3728
+#: cp/call.c:3763
 #, gcc-internal-format
 msgid "%s%qT (conversion)"
 msgstr ""
 
-#: cp/call.c:3730
+#: cp/call.c:3765
 #, gcc-internal-format
 msgid "%s%#qD (near match)"
 msgstr ""
 
-#: cp/call.c:3732
+#: cp/call.c:3767
 #, gcc-internal-format
 msgid "%s%#qD (deleted)"
 msgstr ""
 
-#: cp/call.c:3734
+#: cp/call.c:3769
 #, gcc-internal-format
 msgid "%s%#qD (reversed)"
 msgstr ""
 
-#: cp/call.c:3736
+#: cp/call.c:3771
 #, gcc-internal-format
 msgid "%s%#qD (rewritten)"
 msgstr ""
 
-#: cp/call.c:3738
+#: cp/call.c:3773
 #, gcc-internal-format
 msgid "%s%#qD"
 msgstr ""
 
-#: cp/call.c:3742
+#: cp/call.c:3777
 #, gcc-internal-format
 msgid "  inherited here"
 msgstr ""
 
-#: cp/call.c:3762
+#: cp/call.c:3797
 #, gcc-internal-format
 msgid ""
 "  return type %qT of explicit conversion function cannot be converted to %qT "
 "with a qualification conversion"
 msgstr ""
 
-#: cp/call.c:3768
+#: cp/call.c:3803
 #, gcc-internal-format
 msgid ""
 "  conversion from return type %qT of template conversion function "
 "specialization to %qT is not an exact match"
 msgstr ""
 
-#: cp/call.c:3779
+#: cp/call.c:3814
 #, gcc-internal-format
 msgid ""
 "  substitution of deduced template arguments resulted in errors seen above"
 msgstr ""
 
 #. Re-run template unification with diagnostics.
-#: cp/call.c:3784
+#: cp/call.c:3819
 #, gcc-internal-format
 msgid "  template argument deduction/substitution failed:"
 msgstr ""
 
-#: cp/call.c:3798
+#: cp/call.c:3833
 #, gcc-internal-format
 msgid ""
 "  a constructor taking a single argument of its own class type is invalid"
 msgstr ""
 
-#: cp/call.c:3805
+#: cp/call.c:3840
 #, 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.c:3952 cp/call.c:4308
+#: cp/call.c:3987 cp/call.c:4359
 #, gcc-internal-format
 msgid "designated initializers cannot be used with a non-aggregate type %qT"
 msgstr ""
 
-#: cp/call.c:4206
+#: cp/call.c:4257
 msgid "conversion from %qH to %qI is ambiguous"
 msgstr ""
 
-#: cp/call.c:4314 cp/cvt.c:855
+#: cp/call.c:4365 cp/cvt.c:862
 msgid "could not convert %qE from %qH to %qI"
 msgstr ""
 
-#: cp/call.c:4381
+#: cp/call.c:4432
 msgid ""
 "initializing %qH with %qI in converted constant expression does not bind "
 "directly"
 msgstr ""
 
-#: cp/call.c:4402
+#: cp/call.c:4453
 msgid "conversion from %qH to %qI in a converted constant expression"
 msgstr ""
 
-#: cp/call.c:4583
+#: cp/call.c:4634
 #, gcc-internal-format
 msgid "no matching function for call to %<%D(%A)%>"
 msgstr ""
 
-#: cp/call.c:4586
+#: cp/call.c:4637
 #, 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.c:4802
+#: cp/call.c:4862
 #, gcc-internal-format
 msgid ""
 "pointer-to-member function %qE cannot be called without an object; consider "
 "using %<.*%> or %<->*%>"
 msgstr ""
 
-#: cp/call.c:4874
+#: cp/call.c:4934
 #, gcc-internal-format
 msgid "no match for call to %<(%T) (%A)%>"
 msgstr ""
 
-#: cp/call.c:4888
+#: cp/call.c:4948
 #, gcc-internal-format
 msgid "call of %<(%T) (%A)%> is ambiguous"
 msgstr ""
 
-#: cp/call.c:4940
+#: cp/call.c:5000
 #, gcc-internal-format
 msgid "ambiguous overload for "
 msgstr ""
 
-#: cp/call.c:4941
+#: cp/call.c:5001
 #, gcc-internal-format
 msgid "no match for "
 msgstr ""
 
-#: cp/call.c:4944
+#: cp/call.c:5004
 #, gcc-internal-format
 msgid " (operand types are %qT, %qT, and %qT)"
 msgstr ""
 
-#: cp/call.c:4946
+#: cp/call.c:5006
 #, gcc-internal-format
 msgid " (operand types are %qT and %qT)"
 msgstr ""
 
-#: cp/call.c:4948
+#: cp/call.c:5008
 #, gcc-internal-format
 msgid " (operand type is %qT)"
 msgstr ""
 
-#: cp/call.c:4965
+#: cp/call.c:5025
 #, gcc-internal-format
 msgid "ternary %<operator?:%>"
 msgstr ""
 
-#: cp/call.c:4969
+#: cp/call.c:5029
 #, gcc-internal-format
 msgid "ternary %<operator?:%> in %<%E ? %E : %E%>"
 msgstr ""
 
-#: cp/call.c:4978 cp/call.c:5022 cp/call.c:5032
+#: cp/call.c:5038 cp/call.c:5082 cp/call.c:5092
 #, gcc-internal-format
 msgid "%<operator%s%>"
 msgstr ""
 
-#: cp/call.c:4981
+#: cp/call.c:5041
 #, gcc-internal-format
 msgid "%<operator%s%> in %<%E%s%>"
 msgstr ""
 
-#: cp/call.c:4988
+#: cp/call.c:5048
 #, gcc-internal-format
 msgid "%<operator[]%>"
 msgstr ""
 
-#: cp/call.c:4991
+#: cp/call.c:5051
 #, gcc-internal-format
 msgid "%<operator[]%> in %<%E[%E]%>"
 msgstr ""
 
-#: cp/call.c:4999
+#: cp/call.c:5059
 #, gcc-internal-format
 msgid "%qs"
 msgstr ""
 
-#: cp/call.c:5002
+#: cp/call.c:5062
 #, gcc-internal-format
 msgid "%qs in %<%s %E%>"
 msgstr ""
 
-#: cp/call.c:5008
+#: cp/call.c:5068
 #, gcc-internal-format
 msgid "%<operator %s%>"
 msgstr ""
 
-#: cp/call.c:5011
+#: cp/call.c:5071
 #, gcc-internal-format
 msgid "%<operator %s%> in %<%s%E%>"
 msgstr ""
 
-#: cp/call.c:5026
+#: cp/call.c:5086
 #, gcc-internal-format
 msgid "%<operator%s%> in %<%E %s %E%>"
 msgstr ""
 
-#: cp/call.c:5035
+#: cp/call.c:5095
 #, gcc-internal-format
 msgid "%<operator%s%> in %<%s%E%>"
 msgstr ""
 
-#: cp/call.c:5145
+#: cp/call.c:5205
 #, gcc-internal-format
 msgid "ISO C++ forbids omitting the middle term of a %<?:%> expression"
 msgstr ""
 
-#: cp/call.c:5212
+#: cp/call.c:5272
 #, 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.c:5229 cp/call.c:5236
+#: cp/call.c:5289 cp/call.c:5296
 msgid "conversion of scalar %qH to vector %qI involves truncation"
 msgstr ""
 
-#: cp/call.c:5292
+#: cp/call.c:5352
 #, gcc-internal-format
 msgid "incompatible vector types in conditional expression: %qT, %qT and %qT"
 msgstr ""
 
-#: cp/call.c:5372
+#: cp/call.c:5432
 #, 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.c:5377
+#: cp/call.c:5437
 #, 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.c:5426 cp/call.c:5543 cp/call.c:5691
+#: cp/call.c:5486 cp/call.c:5601 cp/call.c:5772
 #, gcc-internal-format
 msgid "operands to %<?:%> have different types %qT and %qT"
 msgstr ""
 
-#: cp/call.c:5430
+#: cp/call.c:5490
 #, gcc-internal-format
 msgid "  and each type can be converted to the other"
 msgstr ""
 
-#: cp/call.c:5619
+#: cp/call.c:5677
 msgid ""
 "implicit conversion from %qH to %qI to match other result of conditional"
 msgstr ""
 
-#: cp/call.c:5635
+#: cp/call.c:5693
 #, gcc-internal-format
 msgid "enumerated mismatch in conditional expression: %qT vs %qT"
 msgstr ""
 
-#: cp/call.c:5647
+#: cp/call.c:5706
+#, gcc-internal-format
+msgid ""
+"conditional expression between enumeration type %qT and floating-point type "
+"%qT is deprecated"
+msgstr ""
+
+#: cp/call.c:5711
+#, gcc-internal-format
+msgid ""
+"conditional expression between floating-point type %qT and enumeration type "
+"%qT is deprecated"
+msgstr ""
+
+#: cp/call.c:5727
 #, gcc-internal-format
 msgid "enumerated and non-enumerated type in conditional expression"
 msgstr ""
 
-#: cp/call.c:6250
+#: cp/call.c:6331
 #, gcc-internal-format
 msgid "no %<%D(int)%> declared for postfix %qs, trying prefix operator instead"
 msgstr ""
 
-#: cp/call.c:6252
+#: cp/call.c:6333
 #, gcc-internal-format
 msgid "no %<%D(int)%> declared for postfix %qs"
 msgstr ""
 
-#: cp/call.c:6330
+#: cp/call.c:6413
 #, gcc-internal-format
 msgid ""
 "in C++20 this comparison calls the current function recursively with "
 "reversed arguments"
 msgstr ""
 
-#: cp/call.c:6386
+#: cp/call.c:6464
 #, gcc-internal-format
 msgid "return type of %qD is not %qs"
 msgstr ""
 
-#: cp/call.c:6388
+#: cp/call.c:6466
 #, gcc-internal-format
 msgid "used as rewritten candidate for comparison of %qT and %qT"
 msgstr ""
 
-#: cp/call.c:6459
+#: cp/call.c:6537
 #, gcc-internal-format
 msgid "comparison between %q#T and %q#T"
 msgstr ""
 
-#: cp/call.c:6843
+#: cp/call.c:6921
 #, gcc-internal-format
 msgid ""
 "exception cleanup for this placement new selects non-placement %<operator "
 "delete%>"
 msgstr ""
 
-#: cp/call.c:6846
+#: cp/call.c:6924
 #, gcc-internal-format
 msgid ""
 "%qD is a usual (non-placement) deallocation function in C++14 (or with %<-"
 "fsized-deallocation%>)"
 msgstr ""
 
-#: cp/call.c:6885
+#: cp/call.c:6963
 #, gcc-internal-format
 msgid "%qD is a usual (non-placement) deallocation function"
 msgstr ""
 
-#: cp/call.c:7049
+#: cp/call.c:7137
 #, gcc-internal-format
 msgid "no corresponding deallocation function for %qD"
 msgstr ""
 
-#: cp/call.c:7055
+#: cp/call.c:7143
 #, gcc-internal-format
 msgid "no suitable %<operator %s%> for %qT"
 msgstr ""
 
-#: cp/call.c:7073
+#: cp/call.c:7179
 #, gcc-internal-format
 msgid "%q#D is private within this context"
 msgstr ""
 
-#: cp/call.c:7075 cp/decl.c:8050
+#: cp/call.c:7180 cp/decl.c:8197
 #, gcc-internal-format
 msgid "declared private here"
 msgstr ""
 
-#: cp/call.c:7080
+#: cp/call.c:7185
 #, gcc-internal-format
 msgid "%q#D is protected within this context"
 msgstr ""
 
-#: cp/call.c:7082 cp/decl.c:8051
+#: cp/call.c:7186 cp/decl.c:8198
 #, gcc-internal-format
 msgid "declared protected here"
 msgstr ""
 
-#: cp/call.c:7087
+#: cp/call.c:7193
 #, gcc-internal-format
 msgid "%q#D is inaccessible within this context"
 msgstr ""
 
-#: cp/call.c:7160
+#: cp/call.c:7266
 #, gcc-internal-format
 msgid "passing NULL to non-pointer argument %P of %qD"
 msgstr ""
 
-#: cp/call.c:7163 cp/call.c:7182 cp/decl.c:9709 cp/typeck.c:4157
+#: cp/call.c:7269 cp/call.c:7288 cp/decl.c:9859 cp/typeck.c:4180
 #, gcc-internal-format
 msgid "  declared here"
 msgstr ""
 
-#: cp/call.c:7167
+#: cp/call.c:7273
 #, gcc-internal-format
 msgid "converting to non-pointer type %qT from NULL"
 msgstr ""
 
-#: cp/call.c:7179
+#: cp/call.c:7285
 #, gcc-internal-format
 msgid "converting %<false%> to pointer type for argument %P of %qD"
 msgstr ""
 
-#: cp/call.c:7186
+#: cp/call.c:7292
 #, gcc-internal-format
 msgid "converting %<false%> to pointer type %qT"
 msgstr ""
 
-#: cp/call.c:7253
+#: cp/call.c:7359
 #, gcc-internal-format
 msgid "  initializing argument %P of %qD"
 msgstr ""
 
-#: cp/call.c:7273
+#: cp/call.c:7379
 #, gcc-internal-format
 msgid ""
 "conversions to arrays of unknown bound are only available with %<-std=c+"
 "+20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/call.c:7323
+#: cp/call.c:7429
 #, gcc-internal-format
 msgid "too many braces around initializer for %qT"
 msgstr ""
 
-#: cp/call.c:7334
+#: cp/call.c:7440
 msgid "converting to %qH from %qI requires direct-initialization"
 msgstr ""
 
-#: cp/call.c:7343
+#: cp/call.c:7449
 msgid "invalid user-defined conversion from %qH to %qI"
 msgstr ""
 
-#: cp/call.c:7380 cp/cvt.c:227
+#: cp/call.c:7486 cp/cvt.c:227
 msgid "invalid conversion from %qH to %qI"
 msgstr ""
 
-#: cp/call.c:7422 cp/call.c:7429
+#: cp/call.c:7528 cp/call.c:7535
 #, gcc-internal-format
 msgid ""
 "converting to %qT from initializer list would use explicit constructor %qD"
 msgstr ""
 
-#: cp/call.c:7425
+#: cp/call.c:7531
 #, gcc-internal-format
 msgid "in C++11 and above a default constructor can be explicit"
 msgstr ""
 
-#: cp/call.c:7695
+#: cp/call.c:7801
 msgid "cannot bind rvalue reference of type %qH to lvalue of type %qI"
 msgstr ""
 
-#: cp/call.c:7699
+#: cp/call.c:7805
 msgid ""
 "cannot bind non-const lvalue reference of type %qH to an rvalue of type %qI"
 msgstr ""
 
-#: cp/call.c:7710
+#: cp/call.c:7816
 msgid "cannot bind reference of type %qH to %qI due to different array bounds"
 msgstr ""
 
-#: cp/call.c:7713
+#: cp/call.c:7819
 msgid "binding reference of type %qH to %qI discards qualifiers"
 msgstr ""
 
-#: cp/call.c:7752
+#: cp/call.c:7858
 #, gcc-internal-format
 msgid "cannot bind bit-field %qE to %qT"
 msgstr ""
 
-#: cp/call.c:7755 cp/call.c:7773
+#: cp/call.c:7861 cp/call.c:7879
 #, gcc-internal-format
 msgid "cannot bind packed field %qE to %qT"
 msgstr ""
 
-#: cp/call.c:7758
+#: cp/call.c:7864
 #, gcc-internal-format
 msgid "cannot bind rvalue %qE to %qT"
 msgstr ""
 
-#: cp/call.c:7932
+#: cp/call.c:8038
 msgid "implicit conversion from %qH to %qI when passing argument to function"
 msgstr ""
 
-#: cp/call.c:7956 cp/cvt.c:1976
+#: cp/call.c:8062 cp/cvt.c:1976
 #, gcc-internal-format
 msgid ""
 "scoped enum %qT passed through %<...%> as %qT before %<-fabi-version=6%>, "
 "%qT after"
 msgstr ""
 
-#: cp/call.c:8000
+#: cp/call.c:8106
 #, gcc-internal-format
 msgid ""
 "passing objects of non-trivially-copyable type %q#T through %<...%> is "
 "conditionally supported"
 msgstr ""
 
-#: cp/call.c:8036
+#: cp/call.c:8142
 #, gcc-internal-format
 msgid "cannot receive reference type %qT through %<...%>"
 msgstr ""
 
-#: cp/call.c:8046
+#: cp/call.c:8152
 #, gcc-internal-format
 msgid ""
 "receiving objects of non-trivially-copyable type %q#T through %<...%> is "
 "conditionally-supported"
 msgstr ""
 
-#: cp/call.c:8114
+#: cp/call.c:8220
 #, gcc-internal-format
 msgid "recursive evaluation of default argument for %q#D"
 msgstr ""
 
-#: cp/call.c:8123
+#: cp/call.c:8229
 #, gcc-internal-format
 msgid ""
 "call to %qD uses the default argument for parameter %P, which is not yet "
 "defined"
 msgstr ""
 
-#: cp/call.c:8227
+#: cp/call.c:8329
 #, gcc-internal-format
 msgid "argument of function call might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/call.c:8286
+#: cp/call.c:8388
 #, gcc-internal-format
 msgid "use of multiversioned function without a default"
 msgstr ""
 
-#: cp/call.c:8710
+#: cp/call.c:8967
 #, gcc-internal-format
 msgid "passing %qT as %<this%> argument discards qualifiers"
 msgstr ""
 
-#: cp/call.c:8713 cp/call.c:11340
+#: cp/call.c:8970 cp/call.c:11595
 #, gcc-internal-format
 msgid "  in call to %qD"
 msgstr ""
 
-#: cp/call.c:8738
+#: cp/call.c:8995
 #, gcc-internal-format
 msgid "%qT is not an accessible base of %qT"
 msgstr ""
 
-#: cp/call.c:8920
+#: cp/call.c:9177
 #, gcc-internal-format
 msgid "passing arguments to ellipsis of inherited constructor %qD"
 msgstr ""
 
-#: cp/call.c:9049
+#: cp/call.c:9309
 #, gcc-internal-format
 msgid ""
 "assignment from temporary %<initializer_list%> does not extend the lifetime "
 "of the underlying array"
 msgstr ""
 
-#: cp/call.c:9449
+#: cp/call.c:9705
 #, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with no trivial copy-assignment"
 msgstr ""
 
-#: cp/call.c:9452
+#: cp/call.c:9708
 #, gcc-internal-format
 msgid "%qD writing to an object of non-trivial type %#qT%s"
 msgstr ""
 
-#: cp/call.c:9457
+#: cp/call.c:9713
 #, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with %qs member %qD"
 msgstr ""
 
-#: cp/call.c:9462
+#: cp/call.c:9718
 #, gcc-internal-format
 msgid ""
 "%qD writing to an object of type %#qT containing a pointer to data member%s"
 msgstr ""
 
-#: cp/call.c:9477
+#: cp/call.c:9733
 #, gcc-internal-format
 msgid "; use assignment or value-initialization instead"
 msgstr ""
 
-#: cp/call.c:9479
+#: cp/call.c:9735
 #, gcc-internal-format
 msgid "; use assignment instead"
 msgstr ""
 
-#: cp/call.c:9481
+#: cp/call.c:9737
 #, gcc-internal-format
 msgid "; use value-initialization instead"
 msgstr ""
 
-#: cp/call.c:9484
+#: cp/call.c:9740
 #, gcc-internal-format
 msgid "%qD clearing an object of type %#qT with no trivial copy-assignment%s"
 msgstr ""
 
-#: cp/call.c:9487
+#: cp/call.c:9743
 #, gcc-internal-format
 msgid "%qD clearing an object of non-trivial type %#qT%s"
 msgstr ""
 
-#: cp/call.c:9489
+#: cp/call.c:9745
 #, gcc-internal-format
 msgid "%qD clearing an object of type %#qT containing a pointer-to-member%s"
 msgstr ""
 
-#: cp/call.c:9510
+#: cp/call.c:9766
 #, gcc-internal-format
 msgid "; use copy-assignment or copy-initialization instead"
 msgstr ""
 
-#: cp/call.c:9512
+#: cp/call.c:9768
 #, gcc-internal-format
 msgid "; use copy-assignment instead"
 msgstr ""
 
-#: cp/call.c:9514
+#: cp/call.c:9770
 #, gcc-internal-format
 msgid "; use copy-initialization instead"
 msgstr ""
 
-#: cp/call.c:9517
+#: cp/call.c:9773
 #, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with no trivial copy-assignment%s"
 msgstr ""
 
-#: cp/call.c:9520
+#: cp/call.c:9776
 #, gcc-internal-format
 msgid "%qD writing to an object of non-trivially copyable type %#qT%s"
 msgstr ""
 
-#: cp/call.c:9523
+#: cp/call.c:9779
 #, gcc-internal-format
 msgid "%qD writing to an object with a deleted copy constructor"
 msgstr ""
 
-#: cp/call.c:9534
+#: cp/call.c:9790
 #, gcc-internal-format
 msgid "%qD copying an object of non-trivial type %#qT from an array of %#qT"
 msgstr ""
 
-#: cp/call.c:9546
+#: cp/call.c:9802
 #, 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.c:9563
+#: cp/call.c:9819
 #, gcc-internal-format
 msgid ""
 "%qD writing to an object of a non-trivial type %#qT leaves %wu bytes "
 "unchanged"
 msgstr ""
 
-#: cp/call.c:9566
+#: cp/call.c:9822
 #, gcc-internal-format
 msgid ""
 "%qD writing to an object of a non-trivial type %#qT leaves %wu byte unchanged"
 msgstr ""
 
-#: cp/call.c:9576
+#: cp/call.c:9832
 #, gcc-internal-format
 msgid ""
 "%qD moving an object of non-trivially copyable type %#qT; use %<new%> and "
 "%<delete%> instead"
 msgstr ""
 
-#: cp/call.c:9579
+#: cp/call.c:9835
 #, gcc-internal-format
 msgid ""
 "%qD moving an object of type %#qT with deleted copy constructor; use %<new%> "
 "and %<delete%> instead"
 msgstr ""
 
-#: cp/call.c:9582
+#: cp/call.c:9838
 #, gcc-internal-format
 msgid "%qD moving an object of type %#qT with deleted destructor"
 msgstr ""
 
-#: cp/call.c:9591
+#: cp/call.c:9847
 #, 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.c:9613
+#: cp/call.c:9869
 #, gcc-internal-format
 msgid "%#qT declared here"
 msgstr ""
 
-#: cp/call.c:9713
+#: cp/call.c:9969
 #, gcc-internal-format
 msgid "constructor delegates to itself"
 msgstr ""
 
-#: cp/call.c:9987 cp/typeck.c:9320
+#: cp/call.c:10243 cp/typeck.c:9474
 msgid "cannot convert %qH to %qI"
 msgstr ""
 
-#: cp/call.c:10009
+#: cp/call.c:10265
 #, gcc-internal-format
 msgid "no matching function for call to %<%T::operator %T(%A)%#V%>"
 msgstr ""
 
-#: cp/call.c:10041
+#: cp/call.c:10297
 #, gcc-internal-format
 msgid "no matching function for call to %<%T::%s%E(%A)%#V%>"
 msgstr ""
 
-#: cp/call.c:10088
+#: cp/call.c:10344
 #, gcc-internal-format
 msgid "call to non-function %qD"
 msgstr ""
 
-#: cp/call.c:10126 cp/pt.c:16040 cp/typeck.c:3140
+#: cp/call.c:10382 cp/pt.c:16250 cp/typeck.c:3155
 #, gcc-internal-format
 msgid "cannot call constructor %<%T::%D%> directly"
 msgstr ""
 
-#: cp/call.c:10128
+#: cp/call.c:10384
 #, gcc-internal-format
 msgid "for a function-style cast, remove the redundant %<::%D%>"
 msgstr ""
 
-#: cp/call.c:10320
+#: cp/call.c:10576
 #, gcc-internal-format
 msgid "no matching function for call to %<%s(%A)%>"
 msgstr ""
 
-#: cp/call.c:10323
+#: cp/call.c:10579
 #, gcc-internal-format
 msgid "call of overloaded %<%s(%A)%> is ambiguous"
 msgstr ""
 
-#: cp/call.c:10344
+#: cp/call.c:10602
 #, gcc-internal-format
 msgid "pure virtual %q#D called from non-static data member initializer"
 msgstr ""
 
-#: cp/call.c:10349
+#: cp/call.c:10607
 #, gcc-internal-format
 msgid "pure virtual %q#D called from constructor"
 msgstr ""
 
-#: cp/call.c:10350
+#: cp/call.c:10608
 #, gcc-internal-format
 msgid "pure virtual %q#D called from destructor"
 msgstr ""
 
-#: cp/call.c:10373
+#: cp/call.c:10631
 #, gcc-internal-format
 msgid "cannot call member function %qD without object"
 msgstr ""
 
-#: cp/call.c:11338
+#: cp/call.c:11593
 #, gcc-internal-format
 msgid "passing %qT chooses %qT over %qT"
 msgstr ""
 
-#: cp/call.c:11407
+#: cp/call.c:11662
 #, gcc-internal-format
 msgid "choosing %qD over %qD"
 msgstr ""
 
-#: cp/call.c:11408
+#: cp/call.c:11663
 msgid "  for conversion from %qH to %qI"
 msgstr ""
 
-#: cp/call.c:11411
+#: cp/call.c:11666
 #, gcc-internal-format
 msgid "  because conversion sequence for the argument is better"
 msgstr ""
 
-#: cp/call.c:11661
+#: cp/call.c:11916
 #, gcc-internal-format
 msgid "default argument mismatch in overload resolution"
 msgstr ""
 
-#: cp/call.c:11665
+#: cp/call.c:11920
 #, gcc-internal-format
 msgid " candidate 1: %q#F"
 msgstr ""
 
-#: cp/call.c:11667
+#: cp/call.c:11922
 #, gcc-internal-format
 msgid " candidate 2: %q#F"
 msgstr ""
 
-#: cp/call.c:11713
+#: cp/call.c:11968
 #, 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.c:12100
+#: cp/call.c:12355
 #, gcc-internal-format
 msgid "a temporary bound to %qD only persists until the constructor exits"
 msgstr ""
 
-#: cp/call.c:12255
+#: cp/call.c:12510
 msgid ""
 "invalid initialization of non-const reference of type %qH from an rvalue of "
 "type %qI"
 msgstr ""
 
-#: cp/call.c:12259
+#: cp/call.c:12514
 msgid ""
 "invalid initialization of reference of type %qH from expression of type %qI"
 msgstr ""
@@ -47357,528 +48632,528 @@ msgstr ""
 msgid "cannot convert from %qT to base class %qT because %qT is incomplete"
 msgstr ""
 
-#: cp/class.c:1155
+#: cp/class.c:1197
 #, gcc-internal-format
 msgid "%q#D conflicts with version inherited from %qT"
 msgstr ""
 
-#: cp/class.c:1158
+#: cp/class.c:1200
 #, gcc-internal-format
 msgid "version inherited from %qT declared here"
 msgstr ""
 
-#: cp/class.c:1178
+#: cp/class.c:1218
 #, gcc-internal-format
 msgid "%q#D cannot be overloaded with %q#D"
 msgstr ""
 
-#: cp/class.c:1180 cp/decl.c:1718 cp/decl.c:1730 cp/decl.c:1755 cp/decl.c:1778
-#: cp/name-lookup.c:2279 cp/name-lookup.c:2564
+#: cp/class.c:1220 cp/decl.c:1722 cp/decl.c:1734 cp/decl.c:1759 cp/decl.c:1782
+#: cp/name-lookup.c:2740 cp/name-lookup.c:3066
 #, gcc-internal-format
 msgid "previous declaration %q#D"
 msgstr ""
 
-#: cp/class.c:1223
+#: cp/class.c:1262
 #, gcc-internal-format
 msgid "conflicting access specifications for method %q+D, ignored"
 msgstr ""
 
-#: cp/class.c:1226
+#: cp/class.c:1265
 #, gcc-internal-format
 msgid "conflicting access specifications for field %qE, ignored"
 msgstr ""
 
-#: cp/class.c:1295
+#: cp/class.c:1334
 #, gcc-internal-format
 msgid "%qD invalid in %q#T because of local method %q#D with same name"
 msgstr ""
 
-#: cp/class.c:1299
+#: cp/class.c:1338
 #, gcc-internal-format
 msgid "local method %q#D declared here"
 msgstr ""
 
-#: cp/class.c:1305
+#: cp/class.c:1344
 #, gcc-internal-format
 msgid "%qD invalid in %q#T because of local member %q#D with same name"
 msgstr ""
 
-#: cp/class.c:1309
+#: cp/class.c:1348
 #, gcc-internal-format
 msgid "local member %q#D declared here"
 msgstr ""
 
-#: cp/class.c:1365
+#: cp/class.c:1423
 #, gcc-internal-format
 msgid "%qD inherits the %E ABI tag that %qT (used in its return type) has"
 msgstr ""
 
-#: cp/class.c:1368 cp/class.c:1375 cp/class.c:1382 cp/class.c:1394
-#: cp/cvt.c:1090
+#: cp/class.c:1426 cp/class.c:1433 cp/class.c:1440 cp/class.c:1452
+#: cp/cvt.c:1100
 #, gcc-internal-format
 msgid "%qT declared here"
 msgstr ""
 
-#: cp/class.c:1373
+#: cp/class.c:1431
 #, gcc-internal-format
 msgid "%qD inherits the %E ABI tag that %qT (used in its type) has"
 msgstr ""
 
-#: cp/class.c:1380
+#: cp/class.c:1438
 #, gcc-internal-format
 msgid "%qT does not have the %E ABI tag that base %qT has"
 msgstr ""
 
-#: cp/class.c:1388
+#: cp/class.c:1446
 #, gcc-internal-format
 msgid "%qT does not have the %E ABI tag that %qT (used in the type of %qD) has"
 msgstr ""
 
-#: cp/class.c:1691
+#: cp/class.c:1757
 #, gcc-internal-format
 msgid "cannot derive from %<final%> base %qT in derived type %qT"
 msgstr ""
 
-#: cp/class.c:2154
+#: cp/class.c:2221
 #, gcc-internal-format
 msgid "all member functions in class %qT are private"
 msgstr ""
 
-#: cp/class.c:2166
+#: cp/class.c:2233
 #, gcc-internal-format
 msgid "%q#T only defines a private destructor and has no friends"
 msgstr ""
 
-#: cp/class.c:2207
+#: cp/class.c:2274
 #, gcc-internal-format
 msgid "%q#T only defines private constructors and has no friends"
 msgstr ""
 
-#: cp/class.c:2211
+#: cp/class.c:2278
 #, gcc-internal-format
 msgid "%q#D is public, but requires an existing %q#T object"
 msgstr ""
 
-#: cp/class.c:2503
+#: cp/class.c:2570
 #, gcc-internal-format
 msgid "no unique final overrider for %qD in %qT"
 msgstr ""
 
-#: cp/class.c:2865
+#: cp/class.c:2932
 #, gcc-internal-format
 msgid "%qD can be marked override"
 msgstr ""
 
-#: cp/class.c:2868
+#: cp/class.c:2935
 #, gcc-internal-format
 msgid "%q+#D marked %<override%>, but does not override"
 msgstr ""
 
-#: cp/class.c:2883
+#: cp/class.c:2950
 #, gcc-internal-format
 msgid "%q+#D marked %<final%>, but is not virtual"
 msgstr ""
 
-#: cp/class.c:2946
+#: cp/class.c:3013
 #, gcc-internal-format
 msgid "%qD was hidden"
 msgstr ""
 
-#: cp/class.c:2947
+#: cp/class.c:3014
 #, gcc-internal-format
 msgid "  by %qD"
 msgstr ""
 
-#: cp/class.c:2982
+#: cp/class.c:3049
 #, gcc-internal-format
 msgid ""
 "%q#D invalid; an anonymous union may only have public non-static data members"
 msgstr ""
 
-#: cp/class.c:2992 cp/parser.c:20955
+#: cp/class.c:3059 cp/parser.c:21770
 #, gcc-internal-format
 msgid "this flexibility is deprecated and will be removed"
 msgstr ""
 
-#: cp/class.c:3185
+#: cp/class.c:3255
 #, gcc-internal-format
 msgid "the ellipsis in %qD is not inherited"
 msgstr ""
 
-#: cp/class.c:3376
+#: cp/class.c:3447
 #, gcc-internal-format
 msgid "bit-field %q#D with non-integral type %qT"
 msgstr ""
 
-#: cp/class.c:3392
+#: cp/class.c:3463
 #, gcc-internal-format
 msgid "bit-field %q+D width not an integer constant"
 msgstr ""
 
-#: cp/class.c:3397
+#: cp/class.c:3468
 #, gcc-internal-format
 msgid "negative width in bit-field %q+D"
 msgstr ""
 
-#: cp/class.c:3402
+#: cp/class.c:3473
 #, gcc-internal-format
 msgid "zero width for bit-field %q+D"
 msgstr ""
 
-#: cp/class.c:3412
+#: cp/class.c:3483
 #, gcc-internal-format
 msgid "width of %qD exceeds its type"
 msgstr ""
 
-#: cp/class.c:3418
+#: cp/class.c:3489
 #, gcc-internal-format
 msgid "%qD is too small to hold all values of %q#T"
 msgstr ""
 
-#: cp/class.c:3479
+#: cp/class.c:3550
 #, gcc-internal-format
 msgid "member %q+#D with constructor not allowed in union"
 msgstr ""
 
-#: cp/class.c:3482
+#: cp/class.c:3553
 #, gcc-internal-format
 msgid "member %q+#D with destructor not allowed in union"
 msgstr ""
 
-#: cp/class.c:3484
+#: cp/class.c:3555
 #, gcc-internal-format
 msgid "member %q+#D with copy assignment operator not allowed in union"
 msgstr ""
 
-#: cp/class.c:3488
+#: cp/class.c:3559
 #, gcc-internal-format
 msgid ""
 "unrestricted unions only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/class.c:3604
+#: cp/class.c:3675
 #, gcc-internal-format
 msgid "in C++98 %q+D may not be static because it is a member of a union"
 msgstr ""
 
-#: cp/class.c:3617
+#: cp/class.c:3688
 #, gcc-internal-format
 msgid "non-static data member %q+D in a union may not have reference type %qT"
 msgstr ""
 
-#: cp/class.c:3630
+#: cp/class.c:3701
 #, gcc-internal-format
 msgid "data member %q+D invalidly declared function type"
 msgstr ""
 
-#: cp/class.c:3636
+#: cp/class.c:3707
 #, gcc-internal-format
 msgid "data member %q+D invalidly declared method type"
 msgstr ""
 
-#: cp/class.c:3707
+#: cp/class.c:3778
 #, gcc-internal-format
 msgid "ignoring packed attribute because of unpacked non-POD field %q#D"
 msgstr ""
 
-#: cp/class.c:3759
+#: cp/class.c:3830
 #, gcc-internal-format
 msgid "member %q+D cannot be declared as a %<mutable%> reference"
 msgstr ""
 
-#: cp/class.c:3762
+#: cp/class.c:3833
 #, gcc-internal-format
 msgid "member %q+D cannot be declared both %<const%> and %<mutable%>"
 msgstr ""
 
-#: cp/class.c:3793
+#: cp/class.c:3864
 #, gcc-internal-format
 msgid "multiple fields in union %qT initialized"
 msgstr ""
 
-#: cp/class.c:3795
+#: cp/class.c:3866
 #, gcc-internal-format
 msgid "initialized member %q+D declared here"
 msgstr ""
 
-#: cp/class.c:3838
+#: cp/class.c:3909
 #, gcc-internal-format
 msgid "field %q#D with same name as class"
 msgstr ""
 
-#: cp/class.c:3866
+#: cp/class.c:3937
 #, gcc-internal-format
 msgid "%q#T has pointer data members"
 msgstr ""
 
-#: cp/class.c:3871
+#: cp/class.c:3942
 #, gcc-internal-format
 msgid "  but does not declare %<%T(const %T&)%>"
 msgstr ""
 
-#: cp/class.c:3873
+#: cp/class.c:3944
 #, gcc-internal-format
 msgid "  or %<operator=(const %T&)%>"
 msgstr ""
 
-#: cp/class.c:3877
+#: cp/class.c:3948
 #, gcc-internal-format
 msgid "  but does not declare %<operator=(const %T&)%>"
 msgstr ""
 
-#: cp/class.c:3879
+#: cp/class.c:3950
 #, gcc-internal-format
 msgid "pointer member %q+D declared here"
 msgstr ""
 
-#: cp/class.c:4317
+#: cp/class.c:4407
 #, gcc-internal-format
 msgid "alignment of %qD increased in %<-fabi-version=9%> (GCC 5.2)"
 msgstr ""
 
-#: cp/class.c:4320
+#: cp/class.c:4410
 #, gcc-internal-format
 msgid "alignment of %qD will increase in %<-fabi-version=9%>"
 msgstr ""
 
-#: cp/class.c:4648
+#: cp/class.c:4738
 #, gcc-internal-format
 msgid "initializer specified for non-virtual method %q+D"
 msgstr ""
 
-#: cp/class.c:4681
+#: cp/class.c:4771
 #, gcc-internal-format
 msgid "destructor for %qT is ambiguous"
 msgstr ""
 
-#: cp/class.c:5133
+#: cp/class.c:5227
 #, gcc-internal-format
 msgid "method overrides both %<transaction_pure%> and %qE methods"
 msgstr ""
 
-#: cp/class.c:5154
+#: cp/class.c:5248
 #, gcc-internal-format
 msgid "method declared %qE overriding %qE method"
 msgstr ""
 
-#: cp/class.c:5810 cp/constexpr.c:252
+#: cp/class.c:5904 cp/constexpr.c:244
 #, gcc-internal-format
 msgid ""
 "enclosing class of %<constexpr%> non-static member function %q+#D is not a "
 "literal type"
 msgstr ""
 
-#: cp/class.c:5836
+#: cp/class.c:5930
 #, gcc-internal-format
 msgid "%q+T is not literal because:"
 msgstr ""
 
-#: cp/class.c:5839
+#: cp/class.c:5933
 #, gcc-internal-format
 msgid "  %qT is a closure type, which is only literal in C++17 and later"
 msgstr ""
 
-#: cp/class.c:5842
+#: cp/class.c:5936
 #, gcc-internal-format
 msgid "  %q+T has a non-trivial destructor"
 msgstr ""
 
-#: cp/class.c:5845
+#: cp/class.c:5939
 #, gcc-internal-format
 msgid "  %q+T does not have %<constexpr%> destructor"
 msgstr ""
 
-#: cp/class.c:5853
+#: cp/class.c:5947
 #, 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.c:5886
+#: cp/class.c:5980
 #, gcc-internal-format
 msgid "  base class %qT of %q+T is non-literal"
 msgstr ""
 
-#: cp/class.c:5901
+#: cp/class.c:5995
 #, gcc-internal-format
 msgid "  non-static data member %qD has non-literal type"
 msgstr ""
 
-#: cp/class.c:5908
+#: cp/class.c:6002
 #, gcc-internal-format
 msgid "  non-static data member %qD has volatile type"
 msgstr ""
 
-#: cp/class.c:6029
+#: cp/class.c:6123
 #, gcc-internal-format
 msgid "base class %q#T has accessible non-virtual destructor"
 msgstr ""
 
-#: cp/class.c:6058
+#: cp/class.c:6152
 #, gcc-internal-format
 msgid "non-static reference %q#D in class without a constructor"
 msgstr ""
 
-#: cp/class.c:6064
+#: cp/class.c:6158
 #, gcc-internal-format
 msgid "non-static const member %q#D in class without a constructor"
 msgstr ""
 
-#: cp/class.c:6383
+#: cp/class.c:6477
 #, gcc-internal-format
 msgid "direct base %qT inaccessible in %qT due to ambiguity"
 msgstr ""
 
-#: cp/class.c:6395
+#: cp/class.c:6489
 #, gcc-internal-format
 msgid "virtual base %qT inaccessible in %qT due to ambiguity"
 msgstr ""
 
-#: cp/class.c:6643
+#: cp/class.c:6739
 #, gcc-internal-format
 msgid ""
 "offset of %qD is not ABI-compliant and may change in a future version of GCC"
 msgstr ""
 
-#: cp/class.c:6815
+#: cp/class.c:6918
 #, gcc-internal-format
 msgid "size of type %qT is too large (%qE bytes)"
 msgstr ""
 
-#: cp/class.c:7101
+#: cp/class.c:7204
 #, gcc-internal-format
 msgid "invalid use of %q#T with a zero-size array in %q#D"
 msgstr ""
 
-#: cp/class.c:7103
+#: cp/class.c:7206
 #, gcc-internal-format
 msgid "invalid use of %q#T with a flexible array member in %q#T"
 msgstr ""
 
-#: cp/class.c:7108
+#: cp/class.c:7211
 #, gcc-internal-format
 msgid "array member %q#D declared here"
 msgstr ""
 
-#: cp/class.c:7136
+#: cp/class.c:7239
 #, gcc-internal-format
 msgid "zero-size array member %qD not at end of %q#T"
 msgstr ""
 
-#: cp/class.c:7138
+#: cp/class.c:7241
 #, gcc-internal-format
 msgid "zero-size array member %qD in an otherwise empty %q#T"
 msgstr ""
 
-#: cp/class.c:7147 cp/class.c:7178
+#: cp/class.c:7250 cp/class.c:7281
 #, gcc-internal-format
 msgid "in the definition of %q#T"
 msgstr ""
 
-#: cp/class.c:7155
+#: cp/class.c:7258
 #, gcc-internal-format
 msgid "flexible array member %qD not at end of %q#T"
 msgstr ""
 
-#: cp/class.c:7157
+#: cp/class.c:7260
 #, gcc-internal-format
 msgid "flexible array member %qD in an otherwise empty %q#T"
 msgstr ""
 
-#: cp/class.c:7176
+#: cp/class.c:7279
 #, gcc-internal-format
 msgid "next member %q#D declared here"
 msgstr ""
 
-#: cp/class.c:7290 cp/parser.c:24705
+#: cp/class.c:7393 cp/parser.c:25558
 #, gcc-internal-format
 msgid "redefinition of %q#T"
 msgstr ""
 
-#: cp/class.c:7427
+#: cp/class.c:7530
 #, gcc-internal-format
 msgid "%q#T has virtual functions and accessible non-virtual destructor"
 msgstr ""
 
-#: cp/class.c:7458
+#: cp/class.c:7558
 #, gcc-internal-format
 msgid "type transparent %q#T does not have any fields"
 msgstr ""
 
-#: cp/class.c:7464
+#: cp/class.c:7564
 #, gcc-internal-format
 msgid "type transparent class %qT has base classes"
 msgstr ""
 
-#: cp/class.c:7468
+#: cp/class.c:7568
 #, gcc-internal-format
 msgid "type transparent class %qT has virtual functions"
 msgstr ""
 
-#: cp/class.c:7474
+#: cp/class.c:7574
 #, 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.c:7636
+#: cp/class.c:7731
 #, gcc-internal-format
 msgid "definition of %qD does not match %<#include <initializer_list>%>"
 msgstr ""
 
-#: cp/class.c:7647
+#: cp/class.c:7742
 #, gcc-internal-format
 msgid "trying to finish struct, but kicked out due to previous parse errors"
 msgstr ""
 
-#: cp/class.c:8154
+#: cp/class.c:8249
 #, gcc-internal-format
 msgid "language string %<\"%E\"%> not recognized"
 msgstr ""
 
-#: cp/class.c:8244
+#: cp/class.c:8339
 #, gcc-internal-format
 msgid "cannot resolve overloaded function %qD based on conversion to type %qT"
 msgstr ""
 
-#: cp/class.c:8389
+#: cp/class.c:8497
 #, gcc-internal-format
 msgid "no matches converting function %qD to type %q#T"
 msgstr ""
 
-#: cp/class.c:8416
+#: cp/class.c:8524
 #, gcc-internal-format
 msgid "converting overloaded function %qD to type %q#T is ambiguous"
 msgstr ""
 
-#: cp/class.c:8443
+#: cp/class.c:8551
 #, gcc-internal-format
 msgid "assuming pointer to member %qD"
 msgstr ""
 
-#: cp/class.c:8446
+#: cp/class.c:8554
 #, gcc-internal-format
 msgid "(a pointer to member can only be formed with %<&%E%>)"
 msgstr ""
 
-#: cp/class.c:8522 cp/class.c:8564
+#: cp/class.c:8630 cp/class.c:8672
 #, gcc-internal-format
 msgid "not enough type information"
 msgstr ""
 
-#: cp/class.c:8542
+#: cp/class.c:8650
 #, gcc-internal-format
 msgid "cannot convert %qE from type %qT to type %qT"
 msgstr ""
 
-#: cp/class.c:8815
+#: cp/class.c:8924
 #, gcc-internal-format
 msgid "declaration of %q#D changes meaning of %qD"
 msgstr ""
 
-#: cp/class.c:8818
+#: cp/class.c:8927
 #, gcc-internal-format
 msgid "%qD declared here as %q#D"
 msgstr ""
@@ -47898,581 +49173,691 @@ msgstr ""
 msgid "%<constexpr%> variable %qD has variably-modified type %qT"
 msgstr ""
 
-#: cp/constexpr.c:200
+#: cp/constexpr.c:192
 #, gcc-internal-format
 msgid "inherited constructor %qD is not %<constexpr%>"
 msgstr ""
 
-#: cp/constexpr.c:213
+#: cp/constexpr.c:205
 #, gcc-internal-format
 msgid "invalid type for parameter %d of %<constexpr%> function %q+#D"
 msgstr ""
 
-#: cp/constexpr.c:225
+#: cp/constexpr.c:217
 #, gcc-internal-format
 msgid "lambdas are implicitly %<constexpr%> only in C++17 and later"
 msgstr ""
 
-#: cp/constexpr.c:236
+#: cp/constexpr.c:228
 #, gcc-internal-format
 msgid "invalid return type %qT of %<constexpr%> function %q+D"
 msgstr ""
 
-#: cp/constexpr.c:263
+#: cp/constexpr.c:255
 #, gcc-internal-format
 msgid "%q#T has virtual base classes"
 msgstr ""
 
-#: cp/constexpr.c:524
+#: cp/constexpr.c:516
 #, gcc-internal-format
 msgid "%<constexpr%> constructor does not have empty body"
 msgstr ""
 
-#: cp/constexpr.c:787
+#: cp/constexpr.c:779
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> constructor for union %qT must initialize exactly one non-"
 "static data member"
 msgstr ""
 
-#: cp/constexpr.c:848
+#: cp/constexpr.c:840
 #, gcc-internal-format
 msgid ""
 "member %qD must be initialized by mem-initializer in %<constexpr%> "
 "constructor"
 msgstr ""
 
-#: cp/constexpr.c:889
+#: cp/constexpr.c:882
 #, gcc-internal-format
 msgid "body of %<constexpr%> function %qD not a return-statement"
 msgstr ""
 
-#: cp/constexpr.c:970
+#: cp/constexpr.c:971
 #, gcc-internal-format
 msgid "%qD is not usable as a %<constexpr%> function because:"
 msgstr ""
 
-#: cp/constexpr.c:1432 cp/constexpr.c:2626
+#: cp/constexpr.c:1444 cp/constexpr.c:2723
 #, gcc-internal-format
 msgid "%<constexpr%> call flows off the end of the function"
 msgstr ""
 
-#: cp/constexpr.c:1437 cp/constexpr.c:1447 cp/constexpr.c:2831
+#: cp/constexpr.c:1449 cp/constexpr.c:1459 cp/constexpr.c:2918
 #, gcc-internal-format
 msgid "%q+E is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:1714 cp/constexpr.c:7500
+#: cp/constexpr.c:1734 cp/constexpr.c:7914
 #, gcc-internal-format
 msgid "call to internal function %qE"
 msgstr ""
 
-#: cp/constexpr.c:1769
+#: cp/constexpr.c:1789
 #, gcc-internal-format
 msgid "modifying a const object %qE is not allowed in a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:1771
+#: cp/constexpr.c:1791
 #, gcc-internal-format
 msgid "originally declared %<const%> here"
 msgstr ""
 
-#: cp/constexpr.c:1969 cp/constexpr.c:2015 cp/constexpr.c:2047
-#: cp/constexpr.c:2068
+#: cp/constexpr.c:1989 cp/constexpr.c:2044 cp/constexpr.c:2076
+#: cp/constexpr.c:2097
 #, gcc-internal-format
 msgid "reference %<dynamic_cast%> failed"
 msgstr ""
 
-#: cp/constexpr.c:1970
+#: cp/constexpr.c:1990
 #, gcc-internal-format
 msgid "dynamic type %qT of its operand does not have a base class of type %qT"
 msgstr ""
 
-#: cp/constexpr.c:2016 cp/constexpr.c:2048
+#: cp/constexpr.c:2014
+#, gcc-internal-format
+msgid "virtual table pointer is used uninitialized"
+msgstr ""
+
+#: cp/constexpr.c:2045 cp/constexpr.c:2077
 #, gcc-internal-format
 msgid ""
 "static type %qT of its operand is a non-public base class of dynamic type %qT"
 msgstr ""
 
-#: cp/constexpr.c:2070
+#: cp/constexpr.c:2099
 #, gcc-internal-format
 msgid "%qT is an ambiguous base class of dynamic type %qT of its operand"
 msgstr ""
 
-#: cp/constexpr.c:2073
+#: cp/constexpr.c:2102
 #, gcc-internal-format
 msgid ""
 "dynamic type %qT of its operand does not have an unambiguous public base "
 "class %qT"
 msgstr ""
 
-#: cp/constexpr.c:2148 cp/constexpr.c:2352 cp/constexpr.c:7532
+#: cp/constexpr.c:2177 cp/constexpr.c:2443 cp/constexpr.c:7946
 #, gcc-internal-format
 msgid "call to non-%<constexpr%> function %qD"
 msgstr ""
 
-#: cp/constexpr.c:2244
+#: cp/constexpr.c:2294
 #, gcc-internal-format
 msgid "expression %qE does not designate a %<constexpr%> function"
 msgstr ""
 
-#: cp/constexpr.c:2311
+#: cp/constexpr.c:2362
+#, gcc-internal-format
+msgid "array deallocation of object allocated with non-array allocation"
+msgstr ""
+
+#: cp/constexpr.c:2366 cp/constexpr.c:2388
+#, gcc-internal-format
+msgid "allocation performed here"
+msgstr ""
+
+#: cp/constexpr.c:2384
+#, gcc-internal-format
+msgid "non-array deallocation of object allocated with array allocation"
+msgstr ""
+
+#: cp/constexpr.c:2401
 #, gcc-internal-format
 msgid "deallocation of already deallocated storage"
 msgstr ""
 
-#: cp/constexpr.c:2318
+#: cp/constexpr.c:2408
 #, gcc-internal-format
 msgid "deallocation of storage that was not previously allocated"
 msgstr ""
 
-#: cp/constexpr.c:2426
+#: cp/constexpr.c:2517
 #, gcc-internal-format
 msgid "%qD called in a constant expression before its definition is complete"
 msgstr ""
 
-#: cp/constexpr.c:2433
+#: cp/constexpr.c:2524
 #, gcc-internal-format
 msgid "%qD called in a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:2437
+#: cp/constexpr.c:2528
 #, gcc-internal-format
 msgid "%qD used before its definition"
 msgstr ""
 
-#: cp/constexpr.c:2528
+#: cp/constexpr.c:2619
 #, gcc-internal-format
 msgid "call has circular dependency"
 msgstr ""
 
-#: cp/constexpr.c:2539
+#: cp/constexpr.c:2630
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> evaluation depth exceeds maximum of %d (use %<-fconstexpr-"
 "depth=%> to increase the maximum)"
 msgstr ""
 
-#: cp/constexpr.c:2871
+#: cp/constexpr.c:2958
 #, gcc-internal-format
 msgid "right operand of shift expression %q+E is negative"
 msgstr ""
 
-#: cp/constexpr.c:2878
+#: cp/constexpr.c:2965
 #, 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.c:2901
+#: cp/constexpr.c:2988
 #, gcc-internal-format
 msgid "left operand of shift expression %q+E is negative"
 msgstr ""
 
-#: cp/constexpr.c:2920
+#: cp/constexpr.c:3007
 #, gcc-internal-format
 msgid "shift expression %q+E overflows"
 msgstr ""
 
-#: cp/constexpr.c:3078
+#: cp/constexpr.c:3165
 #, gcc-internal-format
 msgid "arithmetic involving a null pointer in %qE"
 msgstr ""
 
-#: cp/constexpr.c:3450
+#: cp/constexpr.c:3554
 #, gcc-internal-format
 msgid ""
 "array subscript value %qE is outside the bounds of array %qD of type %qT"
 msgstr ""
 
-#: cp/constexpr.c:3453
+#: cp/constexpr.c:3557
 #, gcc-internal-format
 msgid ""
 "nonzero array subscript %qE is used with array %qD of type %qT with unknown "
 "bounds"
 msgstr ""
 
-#: cp/constexpr.c:3458
+#: cp/constexpr.c:3562
 #, gcc-internal-format
 msgid "array subscript value %qE is outside the bounds of array type %qT"
 msgstr ""
 
-#: cp/constexpr.c:3461
+#: cp/constexpr.c:3565
 #, gcc-internal-format
 msgid ""
 "nonzero array subscript %qE is used with array of type %qT with unknown "
 "bounds"
 msgstr ""
 
-#: cp/constexpr.c:3644
+#: cp/constexpr.c:3748
 #, gcc-internal-format
 msgid "accessing uninitialized array element"
 msgstr ""
 
-#: cp/constexpr.c:3684
+#: cp/constexpr.c:3796
 #, gcc-internal-format
 msgid "dereferencing a null pointer in %qE"
 msgstr ""
 
-#: cp/constexpr.c:3701 cp/constexpr.c:3800 cp/constexpr.c:5645
-#: cp/constexpr.c:5742 cp/constexpr.c:7452
+#: cp/constexpr.c:3813 cp/constexpr.c:3912 cp/constexpr.c:6030
+#: cp/constexpr.c:6127 cp/constexpr.c:7866
 #, gcc-internal-format
 msgid "%qE is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:3707
+#: cp/constexpr.c:3819
 #, gcc-internal-format
 msgid "mutable %qD is not usable in a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:3738 cp/constexpr.c:3760
+#: cp/constexpr.c:3850 cp/constexpr.c:3872
 #, gcc-internal-format
 msgid "accessing uninitialized member %qD"
 msgstr ""
 
-#: cp/constexpr.c:3740
+#: cp/constexpr.c:3852
 #, gcc-internal-format
 msgid ""
 "accessing %qD member instead of initialized %qD member in constant expression"
 msgstr ""
 
-#: cp/constexpr.c:4510 cp/constexpr.c:6292
+#: cp/constexpr.c:3983
+#, gcc-internal-format
+msgid "%qs is not a constant expression because %qT is a union type"
+msgstr ""
+
+#: cp/constexpr.c:3986
+#, gcc-internal-format
+msgid "%qs is not a constant expression because %qT contains a union type"
+msgstr ""
+
+#: cp/constexpr.c:3997
+#, gcc-internal-format
+msgid "%qs is not a constant expression because %qT is a pointer type"
+msgstr ""
+
+#: cp/constexpr.c:4000
+#, gcc-internal-format
+msgid "%qs is not a constant expression because %qT contains a pointer type"
+msgstr ""
+
+#: cp/constexpr.c:4011
+#, gcc-internal-format
+msgid "%qs is not a constant expression because %qT is a reference type"
+msgstr ""
+
+#: cp/constexpr.c:4014
+#, gcc-internal-format
+msgid "%qs is not a constant expression because %qT contains a reference type"
+msgstr ""
+
+#: cp/constexpr.c:4025
+#, gcc-internal-format
+msgid ""
+"%qs is not a constant expression because %qT is a pointer to member type"
+msgstr ""
+
+#: cp/constexpr.c:4029
+#, gcc-internal-format
+msgid ""
+"%qs is not a constant expression because %qT contains a pointer to member "
+"type"
+msgstr ""
+
+#: cp/constexpr.c:4040
+#, gcc-internal-format
+msgid "%qs is not a constant expression because %qT is volatile"
+msgstr ""
+
+#: cp/constexpr.c:4043
+#, gcc-internal-format
+msgid ""
+"%qs is not a constant expression because %qT contains a volatile subobject"
+msgstr ""
+
+#: cp/constexpr.c:4084
+#, gcc-internal-format
+msgid "%qs cannot be constant evaluated on the target"
+msgstr ""
+
+#: cp/constexpr.c:4093 cp/constexpr.c:4103
+#, gcc-internal-format
+msgid "%qs cannot be constant evaluated because the type is too large"
+msgstr ""
+
+#: cp/constexpr.c:4123
+#, gcc-internal-format
+msgid "%qs cannot be constant evaluated because the argument cannot be encoded"
+msgstr ""
+
+#: cp/constexpr.c:4147
+#, gcc-internal-format
+msgid "%qs accessing uninitialized byte at offset %d"
+msgstr ""
+
+#: cp/constexpr.c:4159
+#, gcc-internal-format
+msgid ""
+"%qs cannot be constant evaluated because the argument cannot be interpreted"
+msgstr ""
+
+#: cp/constexpr.c:4882 cp/constexpr.c:6667
 #, gcc-internal-format
 msgid "dereferencing a null pointer"
 msgstr ""
 
-#: cp/constexpr.c:4530
+#: cp/constexpr.c:4902
 #, gcc-internal-format
 msgid "accessing value of %qE through a %qT glvalue in a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:4573
+#: cp/constexpr.c:4947
 #, gcc-internal-format
 msgid ""
 "the content of uninitialized storage is not usable in a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:4575 cp/constexpr.c:4582
+#: cp/constexpr.c:4949 cp/constexpr.c:4956
 #, gcc-internal-format
 msgid "allocated here"
 msgstr ""
 
-#: cp/constexpr.c:4580
+#: cp/constexpr.c:4954
 #, gcc-internal-format
 msgid "use of allocated storage after deallocation in a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:4585
+#: cp/constexpr.c:4959
 #, gcc-internal-format
 msgid "the value of %qD is not usable in a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:4592
+#: cp/constexpr.c:4966
 #, gcc-internal-format
 msgid "%qD used in its own initializer"
 msgstr ""
 
-#: cp/constexpr.c:4597
+#: cp/constexpr.c:4971
 #, gcc-internal-format
 msgid "%q#D is not const"
 msgstr ""
 
-#: cp/constexpr.c:4600
+#: cp/constexpr.c:4974
 #, gcc-internal-format
 msgid "%q#D is volatile"
 msgstr ""
 
-#: cp/constexpr.c:4605 cp/constexpr.c:4612
+#: cp/constexpr.c:4979 cp/constexpr.c:4986
 #, gcc-internal-format
 msgid "%qD was not initialized with a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:4618
+#: cp/constexpr.c:4992
 #, gcc-internal-format
 msgid "%qD was not declared %<constexpr%>"
 msgstr ""
 
-#: cp/constexpr.c:4621
+#: cp/constexpr.c:4995
 #, gcc-internal-format
 msgid "%qD does not have integral or enumeration type"
 msgstr ""
 
-#: cp/constexpr.c:4867
+#: cp/constexpr.c:5241
 #, gcc-internal-format
 msgid "modification of %qE is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:4928
+#: cp/constexpr.c:5310
 #, gcc-internal-format
 msgid "change of the active member of a union from %qD to %qD"
 msgstr ""
 
-#: cp/constexpr.c:4941
+#: cp/constexpr.c:5323
 #, gcc-internal-format
 msgid ""
 "change of the active member of a union from %qD to %qD during initialization"
 msgstr ""
 
-#: cp/constexpr.c:5333 cp/constexpr.c:6548
+#: cp/constexpr.c:5718 cp/constexpr.c:6940
 #, gcc-internal-format
 msgid "statement is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:5439
+#: cp/constexpr.c:5824
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> loop iteration count exceeds limit of %d (use %<-fconstexpr-"
 "loop-limit=%> to increase the limit)"
 msgstr ""
 
-#: cp/constexpr.c:5541
+#: cp/constexpr.c:5926
 #, gcc-internal-format
 msgid "inline assembly is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:5542
+#: cp/constexpr.c:5927
 #, gcc-internal-format
 msgid ""
 "only unevaluated inline assembly is allowed in a %<constexpr%> function in C+"
 "+20"
 msgstr ""
 
-#: cp/constexpr.c:5607
+#: cp/constexpr.c:5992
 #, gcc-internal-format
 msgid "value %qE of type %qT is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:5620
+#: cp/constexpr.c:6005
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> evaluation operation count exceeds limit of %wd (use %<-"
 "fconstexpr-ops-limit=%> to increase the limit)"
 msgstr ""
 
-#: cp/constexpr.c:5802 cp/constexpr.c:8102
+#: cp/constexpr.c:6187 cp/constexpr.c:8544
 #, gcc-internal-format
 msgid "temporary of non-literal type %qT in a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:6240 cp/constexpr.c:7652
+#: cp/constexpr.c:6615 cp/constexpr.c:8071
 #, gcc-internal-format
 msgid "%<reinterpret_cast%> is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:6267
+#: cp/constexpr.c:6642
 #, gcc-internal-format
 msgid ""
 "conversion from pointer type %qT to arithmetic type %qT in a constant "
 "expression"
 msgstr ""
 
-#: cp/constexpr.c:6304
+#: cp/constexpr.c:6679
 #, gcc-internal-format
 msgid "conversion of %qT null pointer to %qT is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:6318
+#: cp/constexpr.c:6693
 #, gcc-internal-format
 msgid "%<reinterpret_cast<%T>(%E)%> is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:6419 cp/constexpr.c:7928 cp/constexpr.c:8273
+#: cp/constexpr.c:6798 cp/constexpr.c:8370 cp/constexpr.c:8748
 #, gcc-internal-format
 msgid "expression %qE is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:6514
+#: cp/constexpr.c:6893
 #, gcc-internal-format
 msgid "unexpected template-id %qE"
 msgstr ""
 
-#: cp/constexpr.c:6520
+#: cp/constexpr.c:6899
 #, gcc-internal-format
 msgid "function concept must be called"
 msgstr ""
 
-#: cp/constexpr.c:6551
+#: cp/constexpr.c:6924
+#, gcc-internal-format
+msgid "address of a call to %qs is not a constant expression"
+msgstr ""
+
+#: cp/constexpr.c:6943
 #, gcc-internal-format
 msgid "unexpected expression %qE of kind %s"
 msgstr ""
 
-#: cp/constexpr.c:6777
+#: cp/constexpr.c:7173
 #, gcc-internal-format
 msgid ""
 "%qE is not a constant expression because it refers to mutable subobjects of "
 "%qT"
 msgstr ""
 
-#: cp/constexpr.c:6785
+#: cp/constexpr.c:7181
 #, gcc-internal-format
 msgid ""
 "%qE is not a constant expression because it refers to an incompletely "
 "initialized variable"
 msgstr ""
 
-#: cp/constexpr.c:6800
+#: cp/constexpr.c:7196
 #, gcc-internal-format
 msgid ""
 "%qE is not a constant expression because it refers to a result of %<operator "
 "new%>"
 msgstr ""
 
-#: cp/constexpr.c:6810
+#: cp/constexpr.c:7206
 #, gcc-internal-format
 msgid ""
 "%qE is not a constant expression because allocated storage has not been "
 "deallocated"
 msgstr ""
 
-#: cp/constexpr.c:6830
+#: cp/constexpr.c:7226
 #, gcc-internal-format
 msgid "immediate evaluation returns address of immediate function %qD"
 msgstr ""
 
-#: cp/constexpr.c:7391
+#: cp/constexpr.c:7806
 #, gcc-internal-format
 msgid "lvalue-to-rvalue conversion of a volatile lvalue %qE with type %qT"
 msgstr ""
 
-#: cp/constexpr.c:7622
+#: cp/constexpr.c:8036
 #, gcc-internal-format
 msgid "lambda capture of %qE is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:7625
+#: cp/constexpr.c:8039
 #, gcc-internal-format
 msgid "because it is used as a glvalue"
 msgstr ""
 
-#: cp/constexpr.c:7672
+#: cp/constexpr.c:8091
 #, gcc-internal-format
 msgid "%<reinterpret_cast%> from integer to pointer"
 msgstr ""
 
-#: cp/constexpr.c:7705
+#: cp/constexpr.c:8124
 #, gcc-internal-format
 msgid ""
 "address-of an object %qE with thread local or automatic storage is not a "
 "constant expression"
 msgstr ""
 
-#: cp/constexpr.c:7744
+#: cp/constexpr.c:8163
 #, gcc-internal-format
 msgid "use of %<this%> in a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:7875
+#: cp/constexpr.c:8317
 #, gcc-internal-format
 msgid "lambda-expression is not a constant expression before C++17"
 msgstr ""
 
-#: cp/constexpr.c:7942
+#: cp/constexpr.c:8384
 #, gcc-internal-format
 msgid "virtual functions cannot be %<constexpr%> before C++20"
 msgstr ""
 
-#: cp/constexpr.c:7957
+#: cp/constexpr.c:8399
 #, gcc-internal-format
 msgid ""
 "%<typeid%> is not a constant expression because %qE is of polymorphic type"
 msgstr ""
 
-#: cp/constexpr.c:8021
+#: cp/constexpr.c:8463
 #, gcc-internal-format
 msgid "cast to non-integral type %qT in a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:8071
+#: cp/constexpr.c:8513
 #, gcc-internal-format
 msgid "%qD declared %<static%> in %<constexpr%> context"
 msgstr ""
 
-#: cp/constexpr.c:8078
+#: cp/constexpr.c:8520
 #, gcc-internal-format
 msgid "%qD declared %<thread_local%> in %<constexpr%> context"
 msgstr ""
 
-#: cp/constexpr.c:8151
+#: cp/constexpr.c:8593
 #, gcc-internal-format
 msgid "division by zero is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:8249
+#: cp/constexpr.c:8689
 #, gcc-internal-format
 msgid "%<delete[]%> is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:8281
+#: cp/constexpr.c:8756
 #, gcc-internal-format
 msgid "non-constant array initialization"
 msgstr ""
 
-#: cp/constexpr.c:8311
+#: cp/constexpr.c:8786
 #, gcc-internal-format
 msgid "%<goto%> is not a constant expression"
 msgstr ""
 
-#: cp/constexpr.c:8328
+#: cp/constexpr.c:8795
+#, gcc-internal-format
+msgid "label definition is not a constant expression"
+msgstr ""
+
+#: cp/constexpr.c:8814
 #, gcc-internal-format, gfc-internal-format
 msgid "unexpected AST of kind %s"
 msgstr ""
 
-#: cp/cp-gimplify.c:214
+#: cp/cp-gimplify.c:154
 #, gcc-internal-format
 msgid "both branches of %<if%> statement marked as %qs"
 msgstr ""
 
-#: cp/cp-gimplify.c:1613
+#: cp/cp-gimplify.c:1313
 #, gcc-internal-format
 msgid "%<throw%> will always call %<terminate%>"
 msgstr ""
 
-#: cp/cp-gimplify.c:1616
+#: cp/cp-gimplify.c:1316
 #, gcc-internal-format
 msgid "in C++11 destructors default to %<noexcept%>"
 msgstr ""
 
-#: cp/cp-gimplify.c:1628
+#: cp/cp-gimplify.c:1328
 #, gcc-internal-format
 msgid ""
 "in C++11 this %<throw%> will call %<terminate%> because destructors default "
 "to %<noexcept%>"
 msgstr ""
 
-#: cp/cp-gimplify.c:3091
+#: cp/cp-gimplify.c:2782
 #, gcc-internal-format
 msgid "ignoring attribute %qE after earlier %qE"
 msgstr ""
 
-#: cp/cp-gimplify.c:3113 cp/cp-gimplify.c:3125 cp/decl.c:3952 cp/method.c:958
+#: cp/cp-gimplify.c:2804 cp/cp-gimplify.c:2816 cp/decl.c:4044 cp/method.c:978
 #, gcc-internal-format
 msgid "%qD is not a type"
 msgstr ""
 
-#: cp/cp-gimplify.c:3131
+#: cp/cp-gimplify.c:2822
 #, gcc-internal-format
 msgid "%qD is not a class type"
 msgstr ""
 
-#: cp/cp-gimplify.c:3148
+#: cp/cp-gimplify.c:2839
 #, gcc-internal-format
 msgid "%qD does not have %<const char *%> type"
 msgstr ""
 
-#: cp/cp-gimplify.c:3159
+#: cp/cp-gimplify.c:2850
 #, gcc-internal-format
 msgid "%qD does not have integral type"
 msgstr ""
 
-#: cp/cp-gimplify.c:3171
+#: cp/cp-gimplify.c:2862
 #, gcc-internal-format
 msgid ""
 "%<std::source_location::__impl%> does not contain only non-static data "
 "members %<_M_file_name%>, %<_M_function_name%>, %<_M_line%> and %<_M_column%>"
 msgstr ""
 
-#: cp/cp-gimplify.c:3260
+#: cp/cp-gimplify.c:2966
 #, gcc-internal-format
 msgid "evaluating %qs"
 msgstr ""
@@ -48513,7 +49898,7 @@ msgstr ""
 msgid "conversion from %qH to %qI discards qualifiers"
 msgstr ""
 
-#: cp/cvt.c:498 cp/typeck.c:7807
+#: cp/cvt.c:498 cp/typeck.c:7961
 #, gcc-internal-format
 msgid "casting %qT to %qT does not dereference pointer"
 msgstr ""
@@ -48522,363 +49907,358 @@ msgstr ""
 msgid "cannot convert type %qH to type %qI"
 msgstr ""
 
-#: cp/cvt.c:809
+#: cp/cvt.c:816
 #, gcc-internal-format
 msgid "conversion from %q#T to %q#T"
 msgstr ""
 
-#: cp/cvt.c:827
+#: cp/cvt.c:834
 #, gcc-internal-format
 msgid ""
 "the result of the conversion is unspecified because %qE is outside the range "
 "of type %qT"
 msgstr ""
 
-#: cp/cvt.c:838 cp/cvt.c:893
+#: cp/cvt.c:845 cp/cvt.c:900
 #, gcc-internal-format
 msgid "%q#T used where a %qT was expected"
 msgstr ""
 
-#: cp/cvt.c:847
+#: cp/cvt.c:854
 #, gcc-internal-format
 msgid "could not convert %qE from %<void%> to %<bool%>"
 msgstr ""
 
-#: cp/cvt.c:909
+#: cp/cvt.c:916
 #, gcc-internal-format
 msgid "%q#T used where a floating-point value was expected"
 msgstr ""
 
-#: cp/cvt.c:967
+#: cp/cvt.c:974
 msgid "conversion from %qH to non-scalar type %qI requested"
 msgstr ""
 
-#: cp/cvt.c:1060
+#: cp/cvt.c:1070
 #, gcc-internal-format
 msgid ""
 "ignoring return value of %qD, declared with attribute %<nodiscard%>: %<%s%>"
 msgstr ""
 
-#: cp/cvt.c:1062
+#: cp/cvt.c:1072
 #, gcc-internal-format
 msgid "ignoring return value of %qD, declared with attribute %<nodiscard%>%s"
 msgstr ""
 
-#: cp/cvt.c:1078
+#: cp/cvt.c:1088
 #, gcc-internal-format
 msgid ""
 "ignoring returned value of type %qT, declared with attribute %<nodiscard%>: "
 "%<%s%>"
 msgstr ""
 
-#: cp/cvt.c:1080
+#: cp/cvt.c:1090
 #, gcc-internal-format
 msgid ""
 "ignoring returned value of type %qT, declared with attribute %<nodiscard%>%s"
 msgstr ""
 
-#: cp/cvt.c:1088
-#, gcc-internal-format
-msgid "in call to %qD, declared here"
-msgstr ""
-
-#: cp/cvt.c:1102
+#: cp/cvt.c:1112
 #, gcc-internal-format
 msgid ""
 "ignoring return value of %qD, declared with attribute %<warn_unused_result%>"
 msgstr ""
 
-#: cp/cvt.c:1156
+#: cp/cvt.c:1166
 #, gcc-internal-format
 msgid "pseudo-destructor is not called"
 msgstr ""
 
-#: cp/cvt.c:1250
+#: cp/cvt.c:1260
 #, gcc-internal-format
 msgid "conversion to void will not access object of incomplete type %qT"
 msgstr ""
 
-#: cp/cvt.c:1254
+#: cp/cvt.c:1264
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in second operand "
 "of conditional expression"
 msgstr ""
 
-#: cp/cvt.c:1259
+#: cp/cvt.c:1269
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in third operand "
 "of conditional expression"
 msgstr ""
 
-#: cp/cvt.c:1264
+#: cp/cvt.c:1274
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in right operand "
 "of comma operator"
 msgstr ""
 
-#: cp/cvt.c:1269
+#: cp/cvt.c:1279
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in left operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.c:1274
+#: cp/cvt.c:1284
 #, gcc-internal-format
 msgid "indirection will not access object of incomplete type %qT in statement"
 msgstr ""
 
-#: cp/cvt.c:1278
+#: cp/cvt.c:1288
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of incomplete type %qT in for increment "
 "expression"
 msgstr ""
 
-#: cp/cvt.c:1294
+#: cp/cvt.c:1304
 #, gcc-internal-format
 msgid "conversion to void will not access object of type %qT"
 msgstr ""
 
-#: cp/cvt.c:1298
+#: cp/cvt.c:1308
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in second operand of "
 "conditional expression"
 msgstr ""
 
-#: cp/cvt.c:1303
+#: cp/cvt.c:1313
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in third operand of "
 "conditional expression"
 msgstr ""
 
-#: cp/cvt.c:1308
+#: cp/cvt.c:1318
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in right operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.c:1313
+#: cp/cvt.c:1323
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in left operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.c:1318
+#: cp/cvt.c:1328
 #, gcc-internal-format
 msgid "implicit dereference will not access object of type %qT in statement"
 msgstr ""
 
-#: cp/cvt.c:1322
+#: cp/cvt.c:1332
 #, gcc-internal-format
 msgid ""
 "implicit dereference will not access object of type %qT in for increment "
 "expression"
 msgstr ""
 
-#: cp/cvt.c:1336
+#: cp/cvt.c:1346
 #, gcc-internal-format
 msgid ""
 "conversion to void will not access object of non-trivially-copyable type %qT"
 msgstr ""
 
-#: cp/cvt.c:1341
+#: cp/cvt.c:1351
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in "
 "second operand of conditional expression"
 msgstr ""
 
-#: cp/cvt.c:1346
+#: cp/cvt.c:1356
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in "
 "third operand of conditional expression"
 msgstr ""
 
-#: cp/cvt.c:1351
+#: cp/cvt.c:1361
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in "
 "right operand of comma operator"
 msgstr ""
 
-#: cp/cvt.c:1356
+#: cp/cvt.c:1366
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in "
 "left operand of comma operator"
 msgstr ""
 
-#: cp/cvt.c:1361
+#: cp/cvt.c:1371
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in "
 "statement"
 msgstr ""
 
-#: cp/cvt.c:1366
+#: cp/cvt.c:1376
 #, gcc-internal-format
 msgid ""
 "indirection will not access object of non-trivially-copyable type %qT in for "
 "increment expression"
 msgstr ""
 
-#: cp/cvt.c:1407
+#: cp/cvt.c:1417
 #, gcc-internal-format
 msgid "conversion to void will not access object %qE of incomplete type %qT"
 msgstr ""
 
-#: cp/cvt.c:1411
+#: cp/cvt.c:1421
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in second operand "
 "of conditional expression"
 msgstr ""
 
-#: cp/cvt.c:1416
+#: cp/cvt.c:1426
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in third operand of "
 "conditional expression"
 msgstr ""
 
-#: cp/cvt.c:1421
+#: cp/cvt.c:1431
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in right operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.c:1426
+#: cp/cvt.c:1436
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in left operand of "
 "comma operator"
 msgstr ""
 
-#: cp/cvt.c:1431
+#: cp/cvt.c:1441
 #, gcc-internal-format
 msgid "variable %qE of incomplete type %qT will not be accessed in statement"
 msgstr ""
 
-#: cp/cvt.c:1435
+#: cp/cvt.c:1445
 #, gcc-internal-format
 msgid ""
 "variable %qE of incomplete type %qT will not be accessed in for increment "
 "expression"
 msgstr ""
 
-#: cp/cvt.c:1488
+#: cp/cvt.c:1498
 #, gcc-internal-format
 msgid "conversion to void cannot resolve address of overloaded function"
 msgstr ""
 
-#: cp/cvt.c:1492
+#: cp/cvt.c:1502
 #, gcc-internal-format
 msgid ""
 "second operand of conditional expression cannot resolve address of "
 "overloaded function"
 msgstr ""
 
-#: cp/cvt.c:1496
+#: cp/cvt.c:1506
 #, gcc-internal-format
 msgid ""
 "third operand of conditional expression cannot resolve address of overloaded "
 "function"
 msgstr ""
 
-#: cp/cvt.c:1500
+#: cp/cvt.c:1510
 #, gcc-internal-format
 msgid ""
 "right operand of comma operator cannot resolve address of overloaded function"
 msgstr ""
 
-#: cp/cvt.c:1504
+#: cp/cvt.c:1514
 #, gcc-internal-format
 msgid ""
 "left operand of comma operator cannot resolve address of overloaded function"
 msgstr ""
 
-#: cp/cvt.c:1508
+#: cp/cvt.c:1518
 #, gcc-internal-format
 msgid "statement cannot resolve address of overloaded function"
 msgstr ""
 
-#: cp/cvt.c:1512
+#: cp/cvt.c:1522
 #, gcc-internal-format
 msgid "for increment expression cannot resolve address of overloaded function"
 msgstr ""
 
-#: cp/cvt.c:1528
+#: cp/cvt.c:1538
 #, gcc-internal-format
 msgid ""
 "second operand of conditional expression is a reference, not call, to "
 "function %qE"
 msgstr ""
 
-#: cp/cvt.c:1533
+#: cp/cvt.c:1543
 #, gcc-internal-format
 msgid ""
 "third operand of conditional expression is a reference, not call, to "
 "function %qE"
 msgstr ""
 
-#: cp/cvt.c:1538
+#: cp/cvt.c:1548
 #, gcc-internal-format
 msgid ""
 "right operand of comma operator is a reference, not call, to function %qE"
 msgstr ""
 
-#: cp/cvt.c:1543
+#: cp/cvt.c:1553
 #, gcc-internal-format
 msgid ""
 "left operand of comma operator is a reference, not call, to function %qE"
 msgstr ""
 
-#: cp/cvt.c:1548
+#: cp/cvt.c:1558
 #, gcc-internal-format
 msgid "statement is a reference, not call, to function %qE"
 msgstr ""
 
-#: cp/cvt.c:1553
+#: cp/cvt.c:1563
 #, gcc-internal-format
 msgid "for increment expression is a reference, not call, to function %qE"
 msgstr ""
 
-#: cp/cvt.c:1581
+#: cp/cvt.c:1592
 #, gcc-internal-format
 msgid "second operand of conditional expression has no effect"
 msgstr ""
 
-#: cp/cvt.c:1586
+#: cp/cvt.c:1597
 #, gcc-internal-format
 msgid "third operand of conditional expression has no effect"
 msgstr ""
 
-#: cp/cvt.c:1591
+#: cp/cvt.c:1602
 #, gcc-internal-format
 msgid "right operand of comma operator has no effect"
 msgstr ""
 
-#: cp/cvt.c:1595
+#: cp/cvt.c:1606
 #, gcc-internal-format
 msgid "left operand of comma operator has no effect"
 msgstr ""
 
-#: cp/cvt.c:1599
+#: cp/cvt.c:1610
 #, gcc-internal-format
 msgid "statement has no effect"
 msgstr ""
 
-#: cp/cvt.c:1603
+#: cp/cvt.c:1614
 #, gcc-internal-format
 msgid "for increment expression has no effect"
 msgstr ""
@@ -48903,256 +50283,281 @@ msgstr ""
 msgid "  candidate conversions include %qD and %qD"
 msgstr ""
 
-#: cp/cxx-pretty-print.c:2318
+#: cp/cxx-pretty-print.c:2288
 #, gcc-internal-format
 msgid "template-parameter-"
 msgstr ""
 
-#: cp/cxx-pretty-print.c:2332
+#: cp/cxx-pretty-print.c:2302
 #, gcc-internal-format
 msgid "requires"
 msgstr ""
 
-#: cp/cxx-pretty-print.c:2890 cp/error.c:1560
+#: cp/cxx-pretty-print.c:2866 cp/error.c:1601
 #, gcc-internal-format
 msgid "with"
 msgstr ""
 
-#: cp/decl.c:669
+#: cp/decl.c:673
 #, gcc-internal-format
 msgid "unused structured binding declaration"
 msgstr ""
 
-#: cp/decl.c:672
+#: cp/decl.c:676
 #, gcc-internal-format
 msgid "unused variable %qD"
 msgstr ""
 
-#: cp/decl.c:681
+#: cp/decl.c:685
 #, gcc-internal-format
 msgid "structured binding declaration set but not used"
 msgstr ""
 
-#: cp/decl.c:829
+#: cp/decl.c:843
 #, gcc-internal-format
 msgid "%qF declared %<static%> but never defined"
 msgstr ""
 
-#: cp/decl.c:836
+#: cp/decl.c:850
 #, gcc-internal-format
 msgid "odr-used inline variable %qD is not defined"
 msgstr ""
 
-#: cp/decl.c:1163
+#: cp/decl.c:1177
 #, gcc-internal-format
 msgid "%qD was declared %<extern%> and later %<static%>"
 msgstr ""
 
-#: cp/decl.c:1202
+#: cp/decl.c:1216
 #, gcc-internal-format
 msgid "declaration of %qF has a different exception specifier"
 msgstr ""
 
-#: cp/decl.c:1216
+#: cp/decl.c:1230
 #, gcc-internal-format
 msgid "from previous declaration %qF"
 msgstr ""
 
-#: cp/decl.c:1263
+#: cp/decl.c:1277
 #, gcc-internal-format
 msgid "redeclaration %qD differs in %qs from previous declaration"
 msgstr ""
 
-#: cp/decl.c:1267 cp/decl.c:15058
+#: cp/decl.c:1281 cp/decl.c:15231
 #, gcc-internal-format
 msgid "previous declaration %qD"
 msgstr ""
 
-#: cp/decl.c:1296
+#: cp/decl.c:1310
 #, gcc-internal-format
 msgid "cannot specialize concept %q#D"
 msgstr ""
 
-#: cp/decl.c:1318
+#: cp/decl.c:1332
 #, gcc-internal-format
 msgid "redeclaration of %q#D may not have default arguments"
 msgstr ""
 
-#: cp/decl.c:1349
+#: cp/decl.c:1361
 #, gcc-internal-format
 msgid ""
 "friend declaration of %q#D specifies default arguments and isn%'t the only "
 "declaration"
 msgstr ""
 
-#: cp/decl.c:1352
+#: cp/decl.c:1364
 #, gcc-internal-format
 msgid "previous declaration of %q#D"
 msgstr ""
 
-#: cp/decl.c:1401
+#: cp/decl.c:1413
 #, gcc-internal-format
 msgid "ambiguating new declaration %q+#D"
 msgstr ""
 
-#: cp/decl.c:1403 cp/decl.c:1794
+#: cp/decl.c:1415 cp/decl.c:1798
 #, gcc-internal-format
 msgid "old declaration %q#D"
 msgstr ""
 
-#: cp/decl.c:1471
+#: cp/decl.c:1484
 #, gcc-internal-format
 msgid "built-in function %qD declared as non-function"
 msgstr ""
 
-#: cp/decl.c:1484 cp/decl.c:1620
+#: cp/decl.c:1497 cp/decl.c:1624
 #, gcc-internal-format
 msgid "shadowing built-in function %q#D"
 msgstr ""
 
-#: cp/decl.c:1485 cp/decl.c:1621
+#: cp/decl.c:1498 cp/decl.c:1625
 #, gcc-internal-format
 msgid "shadowing library function %q#D"
 msgstr ""
 
-#: cp/decl.c:1493
+#: cp/decl.c:1506
 #, gcc-internal-format
 msgid "library function %q#D redeclared as non-function %q#D"
 msgstr ""
 
-#: cp/decl.c:1497 cp/decl.c:1567
+#: cp/decl.c:1510 cp/decl.c:1571
 #, gcc-internal-format
 msgid "declaration of %q#D conflicts with built-in declaration %q#D"
 msgstr ""
 
-#: cp/decl.c:1505
-#, gcc-internal-format
-msgid "redeclaration of %<pragma omp declare reduction%>"
-msgstr ""
-
-#: cp/decl.c:1507
-#, gcc-internal-format
-msgid "previous %<pragma omp declare reduction%> declaration"
-msgstr ""
-
-#: cp/decl.c:1595
+#: cp/decl.c:1599
 #, gcc-internal-format
 msgid "definition of %q#D ambiguates built-in declaration %q#D"
 msgstr ""
 
-#: cp/decl.c:1601 cp/decl.c:1615
+#: cp/decl.c:1605 cp/decl.c:1619
 #, gcc-internal-format
 msgid "new declaration %q#D ambiguates built-in declaration %q#D"
 msgstr ""
 
-#: cp/decl.c:1605
+#: cp/decl.c:1609
 #, gcc-internal-format
 msgid "ignoring the %q#D declaration"
 msgstr ""
 
-#: cp/decl.c:1709
+#: cp/decl.c:1713
 #, gcc-internal-format
 msgid "literal operator %q#D conflicts with raw literal operator"
 msgstr ""
 
-#: cp/decl.c:1713
+#: cp/decl.c:1717
 #, gcc-internal-format
 msgid "raw literal operator %q#D conflicts with literal operator template"
 msgstr ""
 
-#: cp/decl.c:1729
+#: cp/decl.c:1733
 #, gcc-internal-format
 msgid "%q#D redeclared as different kind of entity"
 msgstr ""
 
-#: cp/decl.c:1753
+#: cp/decl.c:1757
 #, gcc-internal-format
 msgid "conflicting declaration of template %q#D"
 msgstr ""
 
-#: cp/decl.c:1775
+#: cp/decl.c:1779
 #, gcc-internal-format
 msgid "conflicting declaration of C function %q#D"
 msgstr ""
 
-#: cp/decl.c:1792
+#: cp/decl.c:1796
 #, gcc-internal-format
 msgid "ambiguating new declaration of %q#D"
 msgstr ""
 
-#: cp/decl.c:1802
+#: cp/decl.c:1806
 #, gcc-internal-format
 msgid "conflicting declaration %q#D"
 msgstr ""
 
-#: cp/decl.c:1804
+#: cp/decl.c:1808
 #, gcc-internal-format
 msgid "previous declaration as %q#D"
 msgstr ""
 
-#: cp/decl.c:1863
+#: cp/decl.c:1818
+#, gcc-internal-format
+msgid "redeclaration of %<pragma omp declare reduction%>"
+msgstr ""
+
+#: cp/decl.c:1820
+#, gcc-internal-format
+msgid "previous %<pragma omp declare reduction%> declaration"
+msgstr ""
+
+#: cp/decl.c:1878
 #, gcc-internal-format
 msgid "%q#D previously defined here"
 msgstr ""
 
-#: cp/decl.c:1864 cp/name-lookup.c:2690 cp/name-lookup.c:2719
-#: cp/name-lookup.c:2743
+#: cp/decl.c:1879 cp/name-lookup.c:3192 cp/name-lookup.c:3221
+#: cp/name-lookup.c:3245
 #, gcc-internal-format
 msgid "%q#D previously declared here"
 msgstr ""
 
-#: cp/decl.c:1875
+#: cp/decl.c:1890
 #, gcc-internal-format
 msgid "prototype specified for %q#D"
 msgstr ""
 
-#: cp/decl.c:1877
+#: cp/decl.c:1892
 #, gcc-internal-format
 msgid "previous non-prototype definition here"
 msgstr ""
 
-#: cp/decl.c:1917
+#: cp/decl.c:1932
 #, gcc-internal-format
 msgid "conflicting declaration of %q#D with %qL linkage"
 msgstr ""
 
-#: cp/decl.c:1920
+#: cp/decl.c:1935
 #, gcc-internal-format
 msgid "previous declaration with %qL linkage"
 msgstr ""
 
-#: cp/decl.c:1955 cp/decl.c:1965
+#: cp/decl.c:1970 cp/decl.c:1980
 #, gcc-internal-format
 msgid "default argument given for parameter %d of %q#D"
 msgstr ""
 
-#: cp/decl.c:1958 cp/decl.c:1968
+#: cp/decl.c:1973 cp/decl.c:1983
 #, gcc-internal-format
 msgid "previous specification in %q#D here"
 msgstr ""
 
-#: cp/decl.c:2018
+#: cp/decl.c:2025
+#, gcc-internal-format
+msgid "declaration %qD conflicts with builtin"
+msgstr ""
+
+#: cp/decl.c:2033
+#, gcc-internal-format
+msgid "declaration %qD conflicts with import"
+msgstr ""
+
+#: cp/decl.c:2034
+#, gcc-internal-format
+msgid "import declared %q#D here"
+msgstr ""
+
+#: cp/decl.c:2042
+#, gcc-internal-format
+msgid "conflicting exporting declaration %qD"
+msgstr ""
+
+#: cp/decl.c:2043
+#, gcc-internal-format
+msgid "previous declaration %q#D here"
+msgstr ""
+
+#: cp/decl.c:2068
 #, gcc-internal-format
 msgid "previous definition of %qD here"
 msgstr ""
 
-#: cp/decl.c:2019
+#: cp/decl.c:2069
 #, gcc-internal-format
 msgid "previous declaration of %qD here"
 msgstr ""
 
-#: cp/decl.c:2032
+#: cp/decl.c:2082
 #, gcc-internal-format
 msgid ""
 "function %qD declared %<[[noreturn]]%> but its first declaration was not"
 msgstr ""
 
-#: cp/decl.c:2077
+#: cp/decl.c:2127
 #, gcc-internal-format
 msgid "redundant redeclaration of %qD in same scope"
 msgstr ""
 
-#: cp/decl.c:2094
+#: cp/decl.c:2144
 #, gcc-internal-format
 msgid "deleted definition of %qD is not first declaration"
 msgstr ""
@@ -49165,12 +50570,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.c:2559
+#: cp/decl.c:2618
 #, gcc-internal-format
 msgid "explicit specialization of %qD after first use"
 msgstr ""
 
-#: cp/decl.c:2697
+#: cp/decl.c:2757
 #, gcc-internal-format
 msgid ""
 "%qD: visibility attribute ignored because it conflicts with previous "
@@ -49178,32 +50583,37 @@ msgid ""
 msgstr ""
 
 #. Reject two definitions.
-#: cp/decl.c:2953 cp/decl.c:2982 cp/decl.c:3020 cp/decl.c:3037 cp/decl.c:3135
+#: cp/decl.c:3030 cp/decl.c:3059 cp/decl.c:3101 cp/decl.c:3118 cp/decl.c:3221
 #, gcc-internal-format
 msgid "redefinition of %q#D"
 msgstr ""
 
-#: cp/decl.c:2969
+#: cp/decl.c:3046
 #, gcc-internal-format
 msgid "%qD conflicts with used function"
 msgstr ""
 
-#: cp/decl.c:2979
+#: cp/decl.c:3056
 #, gcc-internal-format
 msgid "%q#D not declared in class"
 msgstr ""
 
-#: cp/decl.c:2993 cp/decl.c:3047
+#: cp/decl.c:3070 cp/decl.c:3128
 #, gcc-internal-format
 msgid "%q+D redeclared inline with %<gnu_inline%> attribute"
 msgstr ""
 
-#: cp/decl.c:2996 cp/decl.c:3050
+#: cp/decl.c:3073 cp/decl.c:3131
 #, gcc-internal-format
 msgid "%q+D redeclared inline without %<gnu_inline%> attribute"
 msgstr ""
 
-#: cp/decl.c:3006
+#: cp/decl.c:3080 cp/decl.c:3138
+#, gcc-internal-format
+msgid "deduction guide %q+D redeclared"
+msgstr ""
+
+#: cp/decl.c:3087
 #, gcc-internal-format
 msgid "comparison operator %q+D defaulted after its first declaration"
 msgstr ""
@@ -49211,2362 +50621,2382 @@ msgstr ""
 #. is_primary=
 #. is_partial=
 #. is_friend_decl=
-#: cp/decl.c:3067
+#: cp/decl.c:3152
 #, gcc-internal-format
 msgid "redeclaration of friend %q#D may not have default template arguments"
 msgstr ""
 
-#: cp/decl.c:3081
+#: cp/decl.c:3167
 #, gcc-internal-format
 msgid "thread-local declaration of %q#D follows non-thread-local declaration"
 msgstr ""
 
-#: cp/decl.c:3084
+#: cp/decl.c:3170
 #, gcc-internal-format
 msgid "non-thread-local declaration of %q#D follows thread-local declaration"
 msgstr ""
 
-#: cp/decl.c:3099 cp/decl.c:3143 cp/name-lookup.c:2274 cp/name-lookup.c:2717
-#: cp/name-lookup.c:2741
+#: cp/decl.c:3185 cp/decl.c:3229 cp/name-lookup.c:2735 cp/name-lookup.c:3219
+#: cp/name-lookup.c:3243
 #, gcc-internal-format
 msgid "redeclaration of %q#D"
 msgstr ""
 
-#: cp/decl.c:3126
+#: cp/decl.c:3212
 #, gcc-internal-format
 msgid "redundant redeclaration of %<constexpr%> static data member %qD"
 msgstr ""
 
-#: cp/decl.c:3192
+#: cp/decl.c:3278
 #, gcc-internal-format
 msgid "local label %qE conflicts with existing label"
 msgstr ""
 
-#: cp/decl.c:3193
+#: cp/decl.c:3279
 #, gcc-internal-format
 msgid "previous label"
 msgstr ""
 
-#: cp/decl.c:3287
+#: cp/decl.c:3373
 #, gcc-internal-format
 msgid "  from here"
 msgstr ""
 
-#: cp/decl.c:3310 cp/decl.c:3538
+#: cp/decl.c:3396 cp/decl.c:3624
 #, gcc-internal-format
 msgid "  exits OpenMP structured block"
 msgstr ""
 
-#: cp/decl.c:3338
+#: cp/decl.c:3424
 #, gcc-internal-format
 msgid "  crosses initialization of %q#D"
 msgstr ""
 
-#: cp/decl.c:3341
+#: cp/decl.c:3427
 #, gcc-internal-format
 msgid "  enters scope of %q#D, which has non-trivial destructor"
 msgstr ""
 
-#: cp/decl.c:3355 cp/decl.c:3509
+#: cp/decl.c:3441 cp/decl.c:3595
 #, gcc-internal-format
 msgid "  enters %<try%> block"
 msgstr ""
 
-#: cp/decl.c:3361 cp/decl.c:3491 cp/decl.c:3511
+#: cp/decl.c:3447 cp/decl.c:3577 cp/decl.c:3597
 #, gcc-internal-format
 msgid "  enters %<catch%> block"
 msgstr ""
 
-#: cp/decl.c:3367 cp/decl.c:3521
+#: cp/decl.c:3453 cp/decl.c:3607
 #, gcc-internal-format
 msgid "  enters OpenMP structured block"
 msgstr ""
 
-#: cp/decl.c:3373 cp/decl.c:3513
+#: cp/decl.c:3459 cp/decl.c:3599
 #, gcc-internal-format
 msgid "  enters synchronized or atomic statement"
 msgstr ""
 
-#: cp/decl.c:3380 cp/decl.c:3515
+#: cp/decl.c:3466 cp/decl.c:3601
 #, gcc-internal-format
 msgid "  enters %<constexpr if%> statement"
 msgstr ""
 
-#: cp/decl.c:3498
+#: cp/decl.c:3584
 #, gcc-internal-format
 msgid "  skips initialization of %q#D"
 msgstr ""
 
-#: cp/decl.c:3501
+#: cp/decl.c:3587
 #, gcc-internal-format
 msgid "  enters scope of %q#D which has non-trivial destructor"
 msgstr ""
 
-#: cp/decl.c:3553 cp/parser.c:13130 cp/parser.c:13151
-#, gcc-internal-format
-msgid "invalid exit from OpenMP structured block"
-msgstr ""
-
-#: cp/decl.c:3959 cp/parser.c:6636
+#: cp/decl.c:4051 cp/parser.c:6799
 #, gcc-internal-format
 msgid "%qD used without template arguments"
 msgstr ""
 
-#: cp/decl.c:3970
+#: cp/decl.c:4062
 #, gcc-internal-format
 msgid "%q#T is not a class"
 msgstr ""
 
-#: cp/decl.c:3998 cp/decl.c:4087
+#: cp/decl.c:4090 cp/decl.c:4176
 #, gcc-internal-format
 msgid "no class template named %q#T in %q#T"
 msgstr ""
 
-#: cp/decl.c:3999
+#: cp/decl.c:4091
 #, gcc-internal-format
 msgid "no type named %q#T in %q#T"
 msgstr ""
 
-#: cp/decl.c:4012
+#: cp/decl.c:4104
 #, gcc-internal-format
 msgid "lookup of %qT in %qT is ambiguous"
 msgstr ""
 
-#: cp/decl.c:4021
+#: cp/decl.c:4113
 #, gcc-internal-format
 msgid "%<typename %T::%D%> names %q#T, which is not a class template"
 msgstr ""
 
-#: cp/decl.c:4028
+#: cp/decl.c:4120
 #, gcc-internal-format
 msgid "%<typename %T::%D%> names %q#T, which is not a type"
 msgstr ""
 
-#: cp/decl.c:4096
+#: cp/decl.c:4185
 #, gcc-internal-format
 msgid "template parameters do not match template %qD"
 msgstr ""
 
-#: cp/decl.c:4420
+#: cp/decl.c:4524
 #, gcc-internal-format
 msgid "%<-faligned-new=%d%> is not a power of two"
 msgstr ""
 
-#: cp/decl.c:4912
+#: cp/decl.c:4999
 #, gcc-internal-format
 msgid "member %q+#D with constructor not allowed in anonymous aggregate"
 msgstr ""
 
-#: cp/decl.c:4915
+#: cp/decl.c:5002
 #, gcc-internal-format
 msgid "member %q+#D with destructor not allowed in anonymous aggregate"
 msgstr ""
 
-#: cp/decl.c:4918
+#: cp/decl.c:5005
 #, gcc-internal-format
 msgid ""
 "member %q+#D with copy assignment operator not allowed in anonymous aggregate"
 msgstr ""
 
-#: cp/decl.c:4937
+#: cp/decl.c:5024
 #, gcc-internal-format
 msgid "attribute ignored in declaration of %q#T"
 msgstr ""
 
-#: cp/decl.c:4940
+#: cp/decl.c:5027
 #, gcc-internal-format
 msgid "attribute for %q#T must follow the %qs keyword"
 msgstr ""
 
-#: cp/decl.c:4982
+#: cp/decl.c:5069
 #, gcc-internal-format
 msgid "multiple types in one declaration"
 msgstr ""
 
-#: cp/decl.c:4987
+#: cp/decl.c:5074
 #, gcc-internal-format
 msgid "redeclaration of C++ built-in type %qT"
 msgstr ""
 
-#: cp/decl.c:5004
+#: cp/decl.c:5091
 #, gcc-internal-format
 msgid "%<auto%> can only be specified for variables or function declarations"
 msgstr ""
 
-#: cp/decl.c:5037
+#: cp/decl.c:5124
 #, gcc-internal-format
 msgid "missing type-name in typedef-declaration"
 msgstr ""
 
-#: cp/decl.c:5045
+#: cp/decl.c:5132
 #, gcc-internal-format
 msgid "ISO C++ prohibits anonymous structs"
 msgstr ""
 
-#: cp/decl.c:5052
+#: cp/decl.c:5139
 #, gcc-internal-format
 msgid "%<inline%> can only be specified for functions"
 msgstr ""
 
-#: cp/decl.c:5055
+#: cp/decl.c:5142
 #, gcc-internal-format
 msgid "%<virtual%> can only be specified for functions"
 msgstr ""
 
-#: cp/decl.c:5060
+#: cp/decl.c:5147
 #, gcc-internal-format
 msgid "%<friend%> can only be specified inside a class"
 msgstr ""
 
-#: cp/decl.c:5063
+#: cp/decl.c:5150
 #, gcc-internal-format
 msgid "%<explicit%> can only be specified for constructors"
 msgstr ""
 
-#: cp/decl.c:5066
+#: cp/decl.c:5153
 #, gcc-internal-format
 msgid "a storage class can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.c:5070
+#: cp/decl.c:5157
 #, gcc-internal-format
 msgid "%<const%> can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.c:5074
+#: cp/decl.c:5161
 #, gcc-internal-format
 msgid "%<volatile%> can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.c:5078
+#: cp/decl.c:5165
 #, gcc-internal-format
 msgid "%<__restrict%> can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.c:5082
+#: cp/decl.c:5169
 #, gcc-internal-format
 msgid "%<__thread%> can only be specified for objects and functions"
 msgstr ""
 
-#: cp/decl.c:5086
+#: cp/decl.c:5173
 #, gcc-internal-format
 msgid "%<typedef%> was ignored in this declaration"
 msgstr ""
 
-#: cp/decl.c:5089 cp/decl.c:5092 cp/decl.c:5095
+#: cp/decl.c:5176 cp/decl.c:5179 cp/decl.c:5182
 #, gcc-internal-format
 msgid "%qs cannot be used for type declarations"
 msgstr ""
 
-#: cp/decl.c:5117
+#: cp/decl.c:5204
 #, gcc-internal-format
 msgid "attribute ignored in explicit instantiation %q#T"
 msgstr ""
 
-#: cp/decl.c:5120
+#: cp/decl.c:5207
 #, gcc-internal-format
 msgid "no attribute can be applied to an explicit instantiation"
 msgstr ""
 
-#: cp/decl.c:5192
+#: cp/decl.c:5279
 #, 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.c:5196
+#: cp/decl.c:5283
 #, gcc-internal-format
 msgid ""
 "ignoring attributes applied to dependent type %qT without an associated "
 "declaration"
 msgstr ""
 
-#: cp/decl.c:5259 cp/decl2.c:859
+#: cp/decl.c:5347 cp/decl2.c:859
 #, gcc-internal-format
 msgid "typedef %qD is initialized (use %qs instead)"
 msgstr ""
 
-#: cp/decl.c:5268
+#: cp/decl.c:5360
 #, gcc-internal-format
 msgid "declaration of %q#D has %<extern%> and is initialized"
 msgstr ""
 
-#: cp/decl.c:5298
+#: cp/decl.c:5398
 #, gcc-internal-format
 msgid "definition of %q#D is marked %<dllimport%>"
 msgstr ""
 
-#: cp/decl.c:5322
+#: cp/decl.c:5422
 #, gcc-internal-format
 msgid "%q+#D is not a static data member of %q#T"
 msgstr ""
 
-#: cp/decl.c:5330
+#: cp/decl.c:5430
 #, gcc-internal-format
 msgid "non-member-template declaration of %qD"
 msgstr ""
 
-#: cp/decl.c:5331
+#: cp/decl.c:5431
 #, gcc-internal-format
 msgid "does not match member template declaration here"
 msgstr ""
 
-#: cp/decl.c:5343
+#: cp/decl.c:5443
 #, gcc-internal-format
 msgid "ISO C++ does not permit %<%T::%D%> to be defined as %<%T::%D%>"
 msgstr ""
 
-#: cp/decl.c:5355
+#: cp/decl.c:5455
 #, gcc-internal-format
 msgid "duplicate initialization of %qD"
 msgstr ""
 
-#: cp/decl.c:5405
+#: cp/decl.c:5503
 #, gcc-internal-format
 msgid "declaration of %q#D outside of class is not definition"
 msgstr ""
 
-#: cp/decl.c:5450
+#: cp/decl.c:5520
+#, gcc-internal-format
+msgid "block-scope extern declaration %q#D not permitted in module purview"
+msgstr ""
+
+#: cp/decl.c:5555
 #, gcc-internal-format
 msgid "%qD declared %<thread_local%> in %qs function"
 msgstr ""
 
-#: cp/decl.c:5455
+#: cp/decl.c:5560
 #, gcc-internal-format
 msgid "%qD declared %<static%> in %qs function"
 msgstr ""
 
-#: cp/decl.c:5529
+#: cp/decl.c:5632
 #, gcc-internal-format
 msgid "variable %q#D has initializer but incomplete type"
 msgstr ""
 
-#: cp/decl.c:5535 cp/decl.c:6637
+#: cp/decl.c:5638 cp/decl.c:6791
 #, gcc-internal-format
 msgid "elements of array %q#D have incomplete type"
 msgstr ""
 
-#: cp/decl.c:5545
+#: cp/decl.c:5648
 #, gcc-internal-format
 msgid "aggregate %q#D has incomplete type and cannot be defined"
 msgstr ""
 
-#: cp/decl.c:5581
+#: cp/decl.c:5715
 #, gcc-internal-format
 msgid "%qD declared as reference but not initialized"
 msgstr ""
 
-#: cp/decl.c:5668
+#: cp/decl.c:5798
 #, gcc-internal-format
 msgid "name used in a GNU-style designated initializer for an array"
 msgstr ""
 
-#: cp/decl.c:5674
+#: cp/decl.c:5804
 #, gcc-internal-format
 msgid "name %qD used in a GNU-style designated initializer for an array"
 msgstr ""
 
-#: cp/decl.c:5693
+#: cp/decl.c:5823
 #, gcc-internal-format
 msgid "non-trivial designated initializers not supported"
 msgstr ""
 
-#: cp/decl.c:5697
+#: cp/decl.c:5827
 #, gcc-internal-format
 msgid "C99 designator %qE is not an integral constant-expression"
 msgstr ""
 
-#: cp/decl.c:5753
+#: cp/decl.c:5883
 #, gcc-internal-format
 msgid "initializer fails to determine size of %qD"
 msgstr ""
 
-#: cp/decl.c:5760
+#: cp/decl.c:5890
 #, gcc-internal-format
 msgid "array size missing in %qD"
 msgstr ""
 
-#: cp/decl.c:5772
+#: cp/decl.c:5902
 #, gcc-internal-format
 msgid "zero-size array %qD"
 msgstr ""
 
-#: cp/decl.c:5812
+#: cp/decl.c:5942
 #, gcc-internal-format
 msgid "storage size of %qD isn%'t known"
 msgstr ""
 
-#: cp/decl.c:5836
+#: cp/decl.c:5967
 #, gcc-internal-format
 msgid "storage size of %qD isn%'t constant"
 msgstr ""
 
-#: cp/decl.c:5887
+#: cp/decl.c:6018
 #, gcc-internal-format
 msgid ""
 "sorry: semantics of inline variable %q#D are wrong (you%'ll wind up with "
 "multiple copies)"
 msgstr ""
 
-#: cp/decl.c:5891
+#: cp/decl.c:6022
 #, 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.c:5897
+#: cp/decl.c:6028
 #, gcc-internal-format
 msgid "you can work around this by removing the initializer"
 msgstr ""
 
-#: cp/decl.c:5939
+#: cp/decl.c:6070
 #, gcc-internal-format
 msgid "uninitialized %<const %D%>"
 msgstr ""
 
-#: cp/decl.c:5946
+#: cp/decl.c:6077
 #, gcc-internal-format
 msgid "uninitialized variable %qD in %<constexpr%> function"
 msgstr ""
 
-#: cp/decl.c:5955
+#: cp/decl.c:6086
 #, gcc-internal-format
 msgid "uninitialized variable %qD in %<constexpr%> context"
 msgstr ""
 
-#: cp/decl.c:5963
+#: cp/decl.c:6094
 #, gcc-internal-format
 msgid "%q#T has no user-provided default constructor"
 msgstr ""
 
-#: cp/decl.c:5967
+#: cp/decl.c:6098
 #, gcc-internal-format
 msgid ""
 "constructor is not user-provided because it is explicitly defaulted in the "
 "class body"
 msgstr ""
 
-#: cp/decl.c:5970
+#: cp/decl.c:6101
 #, gcc-internal-format
 msgid "and the implicitly-defined constructor does not initialize %q#D"
 msgstr ""
 
-#: cp/decl.c:6138
+#: cp/decl.c:6269
 #, gcc-internal-format
 msgid "invalid type %qT as initializer for a vector of type %qT"
 msgstr ""
 
-#: cp/decl.c:6195
+#: cp/decl.c:6326
 #, gcc-internal-format
 msgid "initializer for %qT must be brace-enclosed"
 msgstr ""
 
-#: cp/decl.c:6233
+#: cp/decl.c:6364
 #, gcc-internal-format
 msgid "%<[%E] =%> used in a GNU-style designated initializer for class %qT"
 msgstr ""
 
-#: cp/decl.c:6241
+#: cp/decl.c:6372
 #, gcc-internal-format
 msgid "%qT has no non-static data member named %qD"
 msgstr ""
 
-#: cp/decl.c:6269
+#: cp/decl.c:6400
 #, gcc-internal-format
 msgid "invalid initializer for %q#D"
 msgstr ""
 
-#: cp/decl.c:6320
+#: cp/decl.c:6451
 #, gcc-internal-format
 msgid "C99 designator %qE outside aggregate initializer"
 msgstr ""
 
-#: cp/decl.c:6359 cp/decl.c:6609 cp/typeck2.c:1488 cp/typeck2.c:1799
-#: cp/typeck2.c:1847 cp/typeck2.c:1894
+#: cp/decl.c:6490 cp/decl.c:6750 cp/typeck2.c:1380 cp/typeck2.c:1694
+#: cp/typeck2.c:1742 cp/typeck2.c:1789
 #, gcc-internal-format
 msgid "too many initializers for %qT"
 msgstr ""
 
-#: cp/decl.c:6400
+#: cp/decl.c:6531
 #, gcc-internal-format
 msgid "braces around scalar initializer for type %qT"
 msgstr ""
 
-#: cp/decl.c:6410
+#: cp/decl.c:6541
 #, gcc-internal-format
 msgid "too many braces around scalar initializer for type %qT"
 msgstr ""
 
-#: cp/decl.c:6528
+#: cp/decl.c:6659
 #, gcc-internal-format
 msgid "missing braces around initializer for %qT"
 msgstr ""
 
-#: cp/decl.c:6639
+#: cp/decl.c:6779
+#, gcc-internal-format
+msgid "structured binding has incomplete type %qT"
+msgstr ""
+
+#: cp/decl.c:6793
 #, gcc-internal-format
 msgid "elements of array %q#T have incomplete type"
 msgstr ""
 
-#: cp/decl.c:6652
+#: cp/decl.c:6806
 #, gcc-internal-format
 msgid "variable-sized compound literal"
 msgstr ""
 
-#: cp/decl.c:6707
+#: cp/decl.c:6861
 #, gcc-internal-format
 msgid "%q#D has incomplete type"
 msgstr ""
 
-#: cp/decl.c:6728
+#: cp/decl.c:6882
 #, gcc-internal-format
 msgid "scalar object %qD requires one element in initializer"
 msgstr ""
 
-#: cp/decl.c:6773
+#: cp/decl.c:6927
 #, gcc-internal-format
 msgid "in C++98 %qD must be initialized by constructor, not by %<{...}%>"
 msgstr ""
 
-#: cp/decl.c:6920
+#: cp/decl.c:7059
 #, gcc-internal-format
 msgid "array %qD initialized by parenthesized string literal %qE"
 msgstr ""
 
-#: cp/decl.c:6955
+#: cp/decl.c:7094
 #, gcc-internal-format
 msgid "initializer invalid for static member with constructor"
 msgstr ""
 
-#: cp/decl.c:6957
+#: cp/decl.c:7096
 #, gcc-internal-format
 msgid "non-constant in-class initialization invalid for static member %qD"
 msgstr ""
 
-#: cp/decl.c:6960
+#: cp/decl.c:7099
 #, gcc-internal-format
 msgid ""
 "non-constant in-class initialization invalid for non-inline static member %qD"
 msgstr ""
 
-#: cp/decl.c:6965
+#: cp/decl.c:7104
 #, gcc-internal-format
 msgid "(an out of class initialization is required)"
 msgstr ""
 
-#: cp/decl.c:7143
+#: cp/decl.c:7282
 #, gcc-internal-format
 msgid "reference %qD is initialized with itself"
 msgstr ""
 
-#: cp/decl.c:7401
+#: cp/decl.c:7540
 #, gcc-internal-format
 msgid "could not find variant declaration"
 msgstr ""
 
-#: cp/decl.c:7425
+#: cp/decl.c:7564
 #, gcc-internal-format
 msgid "%<declare variant%> on constructor %qD"
 msgstr ""
 
-#: cp/decl.c:7430
+#: cp/decl.c:7569
 #, gcc-internal-format
 msgid "%<declare variant%> on destructor %qD"
 msgstr ""
 
-#: cp/decl.c:7435
+#: cp/decl.c:7574
 #, gcc-internal-format
 msgid "%<declare variant%> on defaulted %qD"
 msgstr ""
 
-#: cp/decl.c:7440
+#: cp/decl.c:7579
 #, gcc-internal-format
 msgid "%<declare variant%> on deleted %qD"
 msgstr ""
 
-#: cp/decl.c:7445
+#: cp/decl.c:7584
 #, gcc-internal-format
 msgid "%<declare variant%> on virtual %qD"
 msgstr ""
 
-#: cp/decl.c:7495
+#: cp/decl.c:7634
 #, gcc-internal-format
 msgid "assignment (not initialization) in declaration"
 msgstr ""
 
-#: cp/decl.c:7513 cp/decl.c:13804
+#: cp/decl.c:7652 cp/decl.c:13973
 #, gcc-internal-format
 msgid "ISO C++17 does not allow %<register%> storage class specifier"
 msgstr ""
 
-#: cp/decl.c:7517 cp/decl.c:13808
+#: cp/decl.c:7656 cp/decl.c:13977
 #, gcc-internal-format
 msgid "%<register%> storage class specifier used"
 msgstr ""
 
-#: cp/decl.c:7570
+#: cp/decl.c:7709
 #, gcc-internal-format
 msgid ""
 "initializer for %<decltype(auto) %D%> has function type; did you forget the "
 "%<()%>?"
 msgstr ""
 
-#: cp/decl.c:7682
+#: cp/decl.c:7817
 #, gcc-internal-format
 msgid "variable concept has no initializer"
 msgstr ""
 
-#: cp/decl.c:7735
+#: cp/decl.c:7876
 #, gcc-internal-format
 msgid "shadowing previous type declaration of %q#D"
 msgstr ""
 
-#: cp/decl.c:7778
+#: cp/decl.c:7919
 #, gcc-internal-format
 msgid ""
 "%<constinit%> can only be applied to a variable with static or thread "
 "storage duration"
 msgstr ""
 
-#: cp/decl.c:7950
+#: cp/decl.c:8090
 #, gcc-internal-format
 msgid "function %q#D is initialized like a variable"
 msgstr ""
 
-#: cp/decl.c:8036
+#: cp/decl.c:8183
 #, gcc-internal-format
 msgid ""
 "cannot decompose class type %qT because it has an anonymous struct member"
 msgstr ""
 
-#: cp/decl.c:8039
+#: cp/decl.c:8186
 #, gcc-internal-format
 msgid ""
 "cannot decompose class type %qT because it has an anonymous union member"
 msgstr ""
 
-#: cp/decl.c:8046
+#: cp/decl.c:8193
 #, gcc-internal-format
 msgid "cannot decompose inaccessible member %qD of %qT"
 msgstr ""
 
-#: cp/decl.c:8072
+#: cp/decl.c:8219
 #, gcc-internal-format
 msgid ""
 "cannot decompose class type %qT: both it and its base class %qT have non-"
 "static data members"
 msgstr ""
 
-#: cp/decl.c:8081
+#: cp/decl.c:8228
 #, gcc-internal-format
 msgid ""
 "cannot decompose class type %qT: its base classes %qT and %qT have non-"
 "static data members"
 msgstr ""
 
-#: cp/decl.c:8291
+#: cp/decl.c:8438
 #, gcc-internal-format
 msgid "structured binding refers to incomplete type %qT"
 msgstr ""
 
-#: cp/decl.c:8307
+#: cp/decl.c:8454
 #, gcc-internal-format
 msgid "cannot decompose variable length array %qT"
 msgstr ""
 
-#: cp/decl.c:8316 cp/decl.c:8401
+#: cp/decl.c:8463 cp/decl.c:8548
 #, 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.c:8320
+#: cp/decl.c:8467
 #, 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.c:8323
+#: cp/decl.c:8470
 #, gcc-internal-format
 msgid "while %qT decomposes into %wu element"
 msgid_plural "while %qT decomposes into %wu elements"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/decl.c:8368
+#: cp/decl.c:8515
 #, gcc-internal-format
 msgid "cannot decompose variable length vector %qT"
 msgstr ""
 
-#: cp/decl.c:8394
+#: cp/decl.c:8541
 #, gcc-internal-format
 msgid "%<std::tuple_size<%T>::value%> is not an integral constant expression"
 msgstr ""
 
-#: cp/decl.c:8403
+#: cp/decl.c:8550
 #, gcc-internal-format
 msgid "while %qT decomposes into %E elements"
 msgstr ""
 
-#: cp/decl.c:8424
+#: cp/decl.c:8571
 #, gcc-internal-format
 msgid "in initialization of structured binding variable %qD"
 msgstr ""
 
-#: cp/decl.c:8453
+#: cp/decl.c:8600
 #, gcc-internal-format
 msgid "cannot decompose union type %qT"
 msgstr ""
 
-#: cp/decl.c:8458
+#: cp/decl.c:8605
 #, gcc-internal-format
 msgid "cannot decompose non-array non-class type %qT"
 msgstr ""
 
-#: cp/decl.c:8463
+#: cp/decl.c:8610
 #, gcc-internal-format
 msgid "cannot decompose lambda closure type %qT"
 msgstr ""
 
-#: cp/decl.c:8469
+#: cp/decl.c:8616
 #, gcc-internal-format
 msgid "structured binding refers to incomplete class type %qT"
 msgstr ""
 
-#: cp/decl.c:8478
+#: cp/decl.c:8625
 #, gcc-internal-format
 msgid "cannot decompose class type %qT without non-static data members"
 msgstr ""
 
-#: cp/decl.c:8925
+#: cp/decl.c:9072
 #, gcc-internal-format
 msgid ""
 "non-local variable %qD declared %<__thread%> needs dynamic initialization"
 msgstr ""
 
-#: cp/decl.c:8928
+#: cp/decl.c:9075
 #, gcc-internal-format
 msgid ""
 "non-local variable %qD declared %<__thread%> has a non-trivial destructor"
 msgstr ""
 
-#: cp/decl.c:8933
+#: cp/decl.c:9080
 #, gcc-internal-format
 msgid "C++11 %<thread_local%> allows dynamic initialization and destruction"
 msgstr ""
 
-#: cp/decl.c:9162
+#: cp/decl.c:9309
 #, gcc-internal-format
 msgid "initializer fails to determine size of %qT"
 msgstr ""
 
-#: cp/decl.c:9166
+#: cp/decl.c:9313
 #, gcc-internal-format
 msgid "array size missing in %qT"
 msgstr ""
 
-#: cp/decl.c:9169
+#: cp/decl.c:9316
 #, gcc-internal-format
 msgid "zero-size array %qT"
 msgstr ""
 
-#: cp/decl.c:9185
+#: cp/decl.c:9332
 #, gcc-internal-format
 msgid "destructor for alien class %qT cannot be a member"
 msgstr ""
 
-#: cp/decl.c:9187
+#: cp/decl.c:9334
 #, gcc-internal-format
 msgid "constructor for alien class %qT cannot be a member"
 msgstr ""
 
-#: cp/decl.c:9213
+#: cp/decl.c:9360
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> variable"
 msgstr ""
 
-#: cp/decl.c:9215
+#: cp/decl.c:9362
 #, gcc-internal-format
 msgid ""
 "%<const%> and %<volatile%> function specifiers on %qD invalid in variable "
 "declaration"
 msgstr ""
 
-#: cp/decl.c:9221
+#: cp/decl.c:9368
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> parameter"
 msgstr ""
 
-#: cp/decl.c:9224
+#: cp/decl.c:9371
 #, gcc-internal-format
 msgid "%qD declared as an %<inline%> parameter"
 msgstr ""
 
-#: cp/decl.c:9226
+#: cp/decl.c:9373
 #, gcc-internal-format
 msgid ""
 "%<const%> and %<volatile%> function specifiers on %qD invalid in parameter "
 "declaration"
 msgstr ""
 
-#: cp/decl.c:9232
+#: cp/decl.c:9379
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> type"
 msgstr ""
 
-#: cp/decl.c:9235
+#: cp/decl.c:9382
 #, gcc-internal-format
 msgid "%qD declared as an %<inline%> type"
 msgstr ""
 
-#: cp/decl.c:9237
+#: cp/decl.c:9384
 #, gcc-internal-format
 msgid ""
 "%<const%> and %<volatile%> function specifiers on %qD invalid in type "
 "declaration"
 msgstr ""
 
-#: cp/decl.c:9243
+#: cp/decl.c:9390
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> field"
 msgstr ""
 
-#: cp/decl.c:9246
+#: cp/decl.c:9393
 #, gcc-internal-format
 msgid "%qD declared as an %<inline%> field"
 msgstr ""
 
-#: cp/decl.c:9248
+#: cp/decl.c:9395
 #, gcc-internal-format
 msgid ""
 "%<const%> and %<volatile%> function specifiers on %qD invalid in field "
 "declaration"
 msgstr ""
 
-#: cp/decl.c:9255
+#: cp/decl.c:9402
 #, gcc-internal-format
 msgid "%q+D declared as a friend"
 msgstr ""
 
-#: cp/decl.c:9262
+#: cp/decl.c:9409
 #, gcc-internal-format
 msgid "%q+D declared with an exception specification"
 msgstr ""
 
-#: cp/decl.c:9294
+#: cp/decl.c:9441
 #, gcc-internal-format
 msgid "definition of %qD is not in namespace enclosing %qT"
 msgstr ""
 
-#: cp/decl.c:9334
+#: cp/decl.c:9481
 #, gcc-internal-format
 msgid "static member function %q#D declared with type qualifiers"
 msgstr ""
 
-#: cp/decl.c:9345
+#: cp/decl.c:9492
 #, gcc-internal-format
 msgid "concept %q#D declared with function parameters"
 msgstr ""
 
-#: cp/decl.c:9352
+#: cp/decl.c:9499
 #, gcc-internal-format
 msgid "concept %q#D declared with a deduced return type"
 msgstr ""
 
-#: cp/decl.c:9355
+#: cp/decl.c:9502
 #, gcc-internal-format
 msgid "concept %q#D with non-%<bool%> return type %qT"
 msgstr ""
 
-#: cp/decl.c:9431
+#: cp/decl.c:9578
 #, gcc-internal-format
 msgid "concept %qD has no definition"
 msgstr ""
 
-#: cp/decl.c:9450
+#: cp/decl.c:9600
 #, gcc-internal-format
 msgid "a function concept cannot be constrained"
 msgstr ""
 
-#: cp/decl.c:9458
+#: cp/decl.c:9610
 #, gcc-internal-format
 msgid "constraints on a non-templated function"
 msgstr ""
 
-#: cp/decl.c:9503
+#: cp/decl.c:9655
 #, gcc-internal-format
 msgid "defining explicit specialization %qD in friend declaration"
 msgstr ""
 
-#: cp/decl.c:9514
+#: cp/decl.c:9666
 #, gcc-internal-format
 msgid "invalid use of template-id %qD in declaration of primary template"
 msgstr ""
 
-#: cp/decl.c:9533
+#: cp/decl.c:9685
 #, gcc-internal-format
 msgid ""
 "default arguments are not allowed in declaration of friend template "
 "specialization %qD"
 msgstr ""
 
-#: cp/decl.c:9542
+#: cp/decl.c:9694
 #, gcc-internal-format
 msgid ""
 "%<inline%> is not allowed in declaration of friend template specialization "
 "%qD"
 msgstr ""
 
-#: cp/decl.c:9559
+#: cp/decl.c:9711
 #, gcc-internal-format
 msgid ""
 "friend declaration of %qD specifies default arguments and isn%'t a definition"
 msgstr ""
 
-#: cp/decl.c:9606
+#: cp/decl.c:9756
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be a template"
 msgstr ""
 
-#: cp/decl.c:9609
+#: cp/decl.c:9759
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be inline"
 msgstr ""
 
-#: cp/decl.c:9612 cp/decl.c:9615
+#: cp/decl.c:9762 cp/decl.c:9765
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be %qs"
 msgstr ""
 
-#: cp/decl.c:9617
+#: cp/decl.c:9767
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be static"
 msgstr ""
 
-#: cp/decl.c:9679
+#: cp/decl.c:9829
 #, gcc-internal-format
 msgid "static member function %qD cannot have cv-qualifier"
 msgstr ""
 
-#: cp/decl.c:9680
+#: cp/decl.c:9830
 #, gcc-internal-format
 msgid "non-member function %qD cannot have cv-qualifier"
 msgstr ""
 
-#: cp/decl.c:9688
+#: cp/decl.c:9838
 #, gcc-internal-format
 msgid "static member function %qD cannot have ref-qualifier"
 msgstr ""
 
-#: cp/decl.c:9689
+#: cp/decl.c:9839
 #, gcc-internal-format
 msgid "non-member function %qD cannot have ref-qualifier"
 msgstr ""
 
-#: cp/decl.c:9699
+#: cp/decl.c:9849
 #, gcc-internal-format
 msgid "deduction guide %qD must be declared at namespace scope"
 msgstr ""
 
-#: cp/decl.c:9707
+#: cp/decl.c:9857
 #, gcc-internal-format
 msgid "deduction guide %qD must be declared in the same scope as %qT"
 msgstr ""
 
-#: cp/decl.c:9714
+#: cp/decl.c:9864
 #, gcc-internal-format
 msgid "deduction guide %qD must not have a function body"
 msgstr ""
 
-#: cp/decl.c:9727
+#: cp/decl.c:9877
 #, gcc-internal-format
 msgid "literal operator with C linkage"
 msgstr ""
 
-#: cp/decl.c:9737
+#: cp/decl.c:9887
 #, gcc-internal-format
 msgid "%qD has invalid argument list"
 msgstr ""
 
-#: cp/decl.c:9745
+#: cp/decl.c:9895
 #, gcc-internal-format
 msgid "integer suffix %qs shadowed by implementation"
 msgstr ""
 
-#: cp/decl.c:9751
+#: cp/decl.c:9901
 #, gcc-internal-format
 msgid "floating-point suffix %qs shadowed by implementation"
 msgstr ""
 
-#: cp/decl.c:9758
+#: cp/decl.c:9908
 #, gcc-internal-format
 msgid ""
 "literal operator suffixes not preceded by %<_%> are reserved for future "
 "standardization"
 msgstr ""
 
-#: cp/decl.c:9763
+#: cp/decl.c:9913
 #, gcc-internal-format
 msgid "%qD must be a non-member function"
 msgstr ""
 
-#: cp/decl.c:9844
+#: cp/decl.c:9996
 #, gcc-internal-format
 msgid "%<::main%> must return %<int%>"
 msgstr ""
 
-#: cp/decl.c:9884
+#: cp/decl.c:10036
 #, gcc-internal-format
 msgid "definition of implicitly-declared %qD"
 msgstr ""
 
-#: cp/decl.c:9889
+#: cp/decl.c:10041
 #, gcc-internal-format
 msgid "definition of explicitly-defaulted %q+D"
 msgstr ""
 
-#: cp/decl.c:9891
+#: cp/decl.c:10043
 #, gcc-internal-format
 msgid "%q#D explicitly defaulted here"
 msgstr ""
 
-#: cp/decl.c:9908
+#: cp/decl.c:10060
 #, gcc-internal-format
 msgid "no %q#D member function declared in class %qT"
 msgstr ""
 
-#: cp/decl.c:10099
+#: cp/decl.c:10253
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be a global variable"
 msgstr ""
 
-#: cp/decl.c:10108
+#: cp/decl.c:10262
 #, gcc-internal-format
 msgid "a non-template variable cannot be %<concept%>"
 msgstr ""
 
-#: cp/decl.c:10115
+#: cp/decl.c:10269
 #, gcc-internal-format
 msgid "concept must have type %<bool%>"
 msgstr ""
 
-#: cp/decl.c:10118
+#: cp/decl.c:10272
 #, gcc-internal-format
 msgid "a variable concept cannot be constrained"
 msgstr ""
 
-#: cp/decl.c:10242
+#: cp/decl.c:10396
 #, gcc-internal-format
 msgid "in-class initialization of static data member %q#D of incomplete type"
 msgstr ""
 
-#: cp/decl.c:10246
+#: cp/decl.c:10400
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> needed for in-class initialization of static data member %q#D "
 "of non-integral type"
 msgstr ""
 
-#: cp/decl.c:10250
+#: cp/decl.c:10404
 #, gcc-internal-format
 msgid "in-class initialization of static data member %q#D of non-literal type"
 msgstr ""
 
-#: cp/decl.c:10261
+#: cp/decl.c:10415
 #, gcc-internal-format
 msgid ""
 "invalid in-class initialization of static data member of non-integral type "
 "%qT"
 msgstr ""
 
-#: cp/decl.c:10266
+#: cp/decl.c:10420
 #, gcc-internal-format
 msgid "ISO C++ forbids in-class initialization of non-const static member %qD"
 msgstr ""
 
-#: cp/decl.c:10271
+#: cp/decl.c:10425
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids initialization of member constant %qD of non-integral type "
 "%qT"
 msgstr ""
 
-#: cp/decl.c:10382
+#: cp/decl.c:10536
 #, gcc-internal-format
 msgid "size of array %qD has non-integral type %qT"
 msgstr ""
 
-#: cp/decl.c:10385
+#: cp/decl.c:10539
 #, gcc-internal-format
 msgid "size of array has non-integral type %qT"
 msgstr ""
 
-#: cp/decl.c:10416 cp/decl.c:10488
+#: cp/decl.c:10570 cp/decl.c:10642
 #, gcc-internal-format
 msgid "size of array %qD is not an integral constant-expression"
 msgstr ""
 
-#: cp/decl.c:10420 cp/decl.c:10491
+#: cp/decl.c:10574 cp/decl.c:10645
 #, gcc-internal-format
 msgid "size of array is not an integral constant-expression"
 msgstr ""
 
-#: cp/decl.c:10471
+#: cp/decl.c:10625
 #, gcc-internal-format
 msgid "ISO C++ forbids zero-size array %qD"
 msgstr ""
 
-#: cp/decl.c:10474
+#: cp/decl.c:10628
 #, gcc-internal-format
 msgid "ISO C++ forbids zero-size array"
 msgstr ""
 
-#: cp/decl.c:10498
+#: cp/decl.c:10652
 #, gcc-internal-format
 msgid "ISO C++ forbids variable length array %qD"
 msgstr ""
 
-#: cp/decl.c:10501
+#: cp/decl.c:10655
 #, gcc-internal-format
 msgid "ISO C++ forbids variable length array"
 msgstr ""
 
-#: cp/decl.c:10507
+#: cp/decl.c:10661
 #, gcc-internal-format
 msgid "variable length array %qD is used"
 msgstr ""
 
-#: cp/decl.c:10510
+#: cp/decl.c:10664
 #, gcc-internal-format
 msgid "variable length array is used"
 msgstr ""
 
-#: cp/decl.c:10562
+#: cp/decl.c:10716
 #, gcc-internal-format
 msgid "overflow in array dimension"
 msgstr ""
 
-#: cp/decl.c:10622
+#: cp/decl.c:10776
 #, gcc-internal-format
 msgid "%qD declared as array of %qT"
 msgstr ""
 
-#: cp/decl.c:10624 cp/pt.c:15760
+#: cp/decl.c:10778 cp/pt.c:15977
 #, gcc-internal-format
 msgid "creating array of %qT"
 msgstr ""
 
-#: cp/decl.c:10634
+#: cp/decl.c:10788
 #, gcc-internal-format
 msgid "declaration of %qD as array of void"
 msgstr ""
 
-#: cp/decl.c:10636
+#: cp/decl.c:10790
 #, gcc-internal-format
 msgid "creating array of void"
 msgstr ""
 
-#: cp/decl.c:10641
+#: cp/decl.c:10795
 #, gcc-internal-format
 msgid "declaration of %qD as array of functions"
 msgstr ""
 
-#: cp/decl.c:10643
+#: cp/decl.c:10797
 #, gcc-internal-format
 msgid "creating array of functions"
 msgstr ""
 
-#: cp/decl.c:10648
+#: cp/decl.c:10802
 #, gcc-internal-format
 msgid "declaration of %qD as array of references"
 msgstr ""
 
-#: cp/decl.c:10650
+#: cp/decl.c:10804
 #, gcc-internal-format
 msgid "creating array of references"
 msgstr ""
 
-#: cp/decl.c:10655
+#: cp/decl.c:10809
 #, gcc-internal-format
 msgid "declaration of %qD as array of function members"
 msgstr ""
 
-#: cp/decl.c:10658
+#: cp/decl.c:10812
 #, gcc-internal-format
 msgid "creating array of function members"
 msgstr ""
 
-#: cp/decl.c:10676
+#: cp/decl.c:10830
 #, gcc-internal-format
 msgid ""
 "declaration of %qD as multidimensional array must have bounds for all "
 "dimensions except the first"
 msgstr ""
 
-#: cp/decl.c:10680
+#: cp/decl.c:10834
 #, gcc-internal-format
 msgid ""
 "multidimensional array must have bounds for all dimensions except the first"
 msgstr ""
 
-#: cp/decl.c:10767
+#: cp/decl.c:10916
 #, gcc-internal-format
 msgid "return type specification for constructor invalid"
 msgstr ""
 
-#: cp/decl.c:10770
+#: cp/decl.c:10919
 #, gcc-internal-format
 msgid "qualifiers are not allowed on constructor declaration"
 msgstr ""
 
-#: cp/decl.c:10781
+#: cp/decl.c:10930
 #, gcc-internal-format
 msgid "return type specification for destructor invalid"
 msgstr ""
 
-#: cp/decl.c:10784
+#: cp/decl.c:10933
 #, gcc-internal-format
 msgid "qualifiers are not allowed on destructor declaration"
 msgstr ""
 
-#: cp/decl.c:10797
+#: cp/decl.c:10946
 #, gcc-internal-format
 msgid "return type specified for %<operator %T%>"
 msgstr ""
 
-#: cp/decl.c:10800
+#: cp/decl.c:10949
 #, gcc-internal-format
 msgid "qualifiers are not allowed on declaration of %<operator %T%>"
 msgstr ""
 
-#: cp/decl.c:10809
+#: cp/decl.c:10958
 #, gcc-internal-format
 msgid "return type specified for deduction guide"
 msgstr ""
 
-#: cp/decl.c:10812
+#: cp/decl.c:10961
 #, gcc-internal-format
 msgid "qualifiers are not allowed on declaration of deduction guide"
 msgstr ""
 
-#: cp/decl.c:10816
+#: cp/decl.c:10965
 #, gcc-internal-format
 msgid "template template parameter %qT in declaration of deduction guide"
 msgstr ""
 
-#: cp/decl.c:10825
+#: cp/decl.c:10974
 #, gcc-internal-format
 msgid "%<decl-specifier%> in declaration of deduction guide"
 msgstr ""
 
-#: cp/decl.c:10846
+#: cp/decl.c:10995
 #, gcc-internal-format
 msgid "unnamed variable or field declared void"
 msgstr ""
 
-#: cp/decl.c:10854
+#: cp/decl.c:11003
 #, gcc-internal-format
 msgid "variable or field declared void"
 msgstr ""
 
-#: cp/decl.c:10869
+#: cp/decl.c:11018
 #, gcc-internal-format
 msgid "%<inline%> specifier invalid for variable %qD declared at block scope"
 msgstr ""
 
-#: cp/decl.c:10874
+#: cp/decl.c:11023
 #, gcc-internal-format
 msgid ""
 "inline variables are only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/decl.c:11124
+#: cp/decl.c:11273
 #, gcc-internal-format
 msgid "invalid use of qualified-name %<::%D%>"
 msgstr ""
 
-#: cp/decl.c:11127 cp/decl.c:11149
+#: cp/decl.c:11276 cp/decl.c:11298
 #, gcc-internal-format
 msgid "invalid use of qualified-name %<%T::%D%>"
 msgstr ""
 
-#: cp/decl.c:11130
+#: cp/decl.c:11279
 #, gcc-internal-format
 msgid "invalid use of qualified-name %<%D::%D%>"
 msgstr ""
 
-#: cp/decl.c:11140
+#: cp/decl.c:11289
 #, gcc-internal-format
 msgid "%q#T is not a class or namespace"
 msgstr ""
 
-#: cp/decl.c:11164
+#: cp/decl.c:11313
 #, gcc-internal-format
 msgid "declaration of %qE as non-function"
 msgstr ""
 
-#: cp/decl.c:11171
+#: cp/decl.c:11320
 #, gcc-internal-format
 msgid "declaration of %qE as non-member"
 msgstr ""
 
-#: cp/decl.c:11199
+#: cp/decl.c:11348
 #, gcc-internal-format
 msgid "declarator-id missing; using reserved word %qD"
 msgstr ""
 
-#: cp/decl.c:11250
+#: cp/decl.c:11399
 #, gcc-internal-format
 msgid "function definition does not declare parameters"
 msgstr ""
 
-#: cp/decl.c:11258 cp/decl.c:11267 cp/decl.c:13067
+#: cp/decl.c:11407 cp/decl.c:11416 cp/decl.c:13224
 #, gcc-internal-format
 msgid "declaration of %qD as non-function"
 msgstr ""
 
-#: cp/decl.c:11275
+#: cp/decl.c:11424
 #, gcc-internal-format
 msgid "declaration of %qD as %<typedef%>"
 msgstr ""
 
-#: cp/decl.c:11280
+#: cp/decl.c:11429
 #, gcc-internal-format
 msgid "declaration of %qD as parameter"
 msgstr ""
 
-#: cp/decl.c:11315
+#: cp/decl.c:11464
 #, gcc-internal-format
 msgid "both %qs and %qs specified"
 msgstr ""
 
-#: cp/decl.c:11322 cp/decl.c:11329 cp/decl.c:11336 cp/decl.c:11343
+#: cp/decl.c:11471 cp/decl.c:11478 cp/decl.c:11485 cp/decl.c:11492
 #, gcc-internal-format
 msgid "%qs cannot appear in a typedef declaration"
 msgstr ""
 
-#: cp/decl.c:11354
+#: cp/decl.c:11503
 #, gcc-internal-format
 msgid "can use at most one of the %<constinit%> and %<constexpr%> specifiers"
 msgstr ""
 
-#: cp/decl.c:11364
+#: cp/decl.c:11513
 #, gcc-internal-format
 msgid "two or more data types in declaration of %qs"
 msgstr ""
 
-#: cp/decl.c:11372
+#: cp/decl.c:11521
 #, gcc-internal-format
 msgid "conflicting specifiers in declaration of %qs"
 msgstr ""
 
-#: cp/decl.c:11419
+#: cp/decl.c:11568
 #, gcc-internal-format
 msgid "ISO C++ does not support plain %<complex%> meaning %<double complex%>"
 msgstr ""
 
-#: cp/decl.c:11468 cp/decl.c:11472 cp/decl.c:11475
+#: cp/decl.c:11617 cp/decl.c:11621 cp/decl.c:11624
 #, gcc-internal-format
 msgid "ISO C++ forbids declaration of %qs with no type"
 msgstr ""
 
-#: cp/decl.c:11492
+#: cp/decl.c:11641
 #, gcc-internal-format
 msgid "%<__int%d%> is not supported by this target"
 msgstr ""
 
-#: cp/decl.c:11500
+#: cp/decl.c:11649
 #, gcc-internal-format
 msgid "ISO C++ does not support %<__int%d%> for %qs"
 msgstr ""
 
-#: cp/decl.c:11554
+#: cp/decl.c:11703
 #, gcc-internal-format
 msgid "%<signed%> and %<unsigned%> specified together"
 msgstr ""
 
-#: cp/decl.c:11560
+#: cp/decl.c:11709
 #, gcc-internal-format
 msgid "%<long%> and %<short%> specified together"
 msgstr ""
 
-#: cp/decl.c:11568 cp/decl.c:11574
+#: cp/decl.c:11717 cp/decl.c:11723
 #, gcc-internal-format
 msgid "%qs specified with %qT"
 msgstr ""
 
-#: cp/decl.c:11579
+#: cp/decl.c:11728
 #, gcc-internal-format
 msgid "%qs specified with %<decltype%>"
 msgstr ""
 
-#: cp/decl.c:11581
+#: cp/decl.c:11730
 #, gcc-internal-format
 msgid "%qs specified with %<typeof%>"
 msgstr ""
 
-#: cp/decl.c:11648
+#: cp/decl.c:11797
 #, gcc-internal-format
 msgid "complex invalid for %qs"
 msgstr ""
 
-#: cp/decl.c:11687
+#: cp/decl.c:11836
 #, gcc-internal-format
 msgid ""
 "template placeholder type %qT must be followed by a simple declarator-id"
 msgstr ""
 
-#: cp/decl.c:11708
+#: cp/decl.c:11857
 #, gcc-internal-format
 msgid "member %qD cannot be declared both %<virtual%> and %<static%>"
 msgstr ""
 
-#: cp/decl.c:11717
+#: cp/decl.c:11866
 #, 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.c:11730
+#: cp/decl.c:11879
 #, gcc-internal-format
 msgid "typedef declaration invalid in parameter declaration"
 msgstr ""
 
-#: cp/decl.c:11737
+#: cp/decl.c:11886
 #, gcc-internal-format
 msgid "storage class specified for template parameter %qs"
 msgstr ""
 
-#: cp/decl.c:11747 cp/decl.c:11919
+#: cp/decl.c:11896 cp/decl.c:12068
 #, gcc-internal-format
 msgid "storage class specified for parameter %qs"
 msgstr ""
 
-#: cp/decl.c:11755 cp/decl.c:11764 cp/decl.c:11770 cp/decl.c:11776
+#: cp/decl.c:11904 cp/decl.c:11913 cp/decl.c:11919 cp/decl.c:11925
 #, gcc-internal-format
 msgid "a parameter cannot be declared %qs"
 msgstr ""
 
-#: cp/decl.c:11786
+#: cp/decl.c:11935
 #, gcc-internal-format
 msgid "%<virtual%> outside class declaration"
 msgstr ""
 
-#: cp/decl.c:11796 cp/decl.c:11799 cp/decl.c:11801 cp/decl.c:11804
-#: cp/decl.c:11814 cp/decl.c:11824 cp/decl.c:11834 cp/decl.c:11838
+#: cp/decl.c:11945 cp/decl.c:11948 cp/decl.c:11950 cp/decl.c:11953
+#: cp/decl.c:11963 cp/decl.c:11973 cp/decl.c:11983 cp/decl.c:11987
 #, gcc-internal-format
 msgid "structured binding declaration cannot be %qs"
 msgstr ""
 
-#: cp/decl.c:11808 cp/decl.c:11830
+#: cp/decl.c:11957 cp/decl.c:11979
 #, gcc-internal-format
 msgid ""
 "structured binding declaration can be %qs only in %<-std=c++20%> or %<-"
 "std=gnu++20%>"
 msgstr ""
 
-#: cp/decl.c:11818
+#: cp/decl.c:11967
 #, gcc-internal-format
 msgid "%<volatile%>-qualified structured binding is deprecated"
 msgstr ""
 
-#: cp/decl.c:11842
+#: cp/decl.c:11991
 #, gcc-internal-format
 msgid "structured binding declaration cannot be C++98 %<auto%>"
 msgstr ""
 
-#: cp/decl.c:11853
+#: cp/decl.c:12002
 #, gcc-internal-format
 msgid "structured binding declaration cannot have type %qT"
 msgstr ""
 
-#: cp/decl.c:11856
+#: cp/decl.c:12005
 #, gcc-internal-format
 msgid ""
 "type must be cv-qualified %<auto%> or reference to cv-qualified %<auto%>"
 msgstr ""
 
-#: cp/decl.c:11891
+#: cp/decl.c:12040
 #, gcc-internal-format
 msgid "multiple storage classes in declaration of %qs"
 msgstr ""
 
-#: cp/decl.c:11917
+#: cp/decl.c:12066
 #, gcc-internal-format
 msgid "storage class specified for %qs"
 msgstr ""
 
-#: cp/decl.c:11931
+#: cp/decl.c:12080
 #, gcc-internal-format
 msgid "nested function %qs declared %<extern%>"
 msgstr ""
 
-#: cp/decl.c:11936
+#: cp/decl.c:12085
 #, gcc-internal-format
 msgid "top-level declaration of %qs specifies %<auto%>"
 msgstr ""
 
-#: cp/decl.c:11944
+#: cp/decl.c:12093
 #, gcc-internal-format
 msgid "function-scope %qs implicitly auto and declared %<__thread%>"
 msgstr ""
 
-#: cp/decl.c:11958
+#: cp/decl.c:12107
 #, gcc-internal-format
 msgid "storage class specifiers invalid in friend function declarations"
 msgstr ""
 
-#: cp/decl.c:11989
+#: cp/decl.c:12138
 #, gcc-internal-format
 msgid "attribute ignored"
 msgstr ""
 
-#: cp/decl.c:11990
+#: cp/decl.c:12139
 #, gcc-internal-format
 msgid "an attribute that appertains to a type-specifier is ignored"
 msgstr ""
 
-#: cp/decl.c:12047
+#: cp/decl.c:12197
 #, gcc-internal-format
 msgid "unnecessary parentheses in declaration of %qs"
 msgstr ""
 
-#: cp/decl.c:12099
+#: cp/decl.c:12203
+#, gcc-internal-format
+msgid "remove parentheses"
+msgstr ""
+
+#: cp/decl.c:12252
 #, gcc-internal-format
 msgid "requires-clause on return type"
 msgstr ""
 
-#: cp/decl.c:12117
+#: cp/decl.c:12272
 #, gcc-internal-format
 msgid "%qs function uses %<auto%> type specifier without trailing return type"
 msgstr ""
 
-#: cp/decl.c:12121
+#: cp/decl.c:12276
 #, gcc-internal-format
 msgid ""
 "deduced return type only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/decl.c:12126
+#: cp/decl.c:12281
 #, gcc-internal-format
 msgid "virtual function cannot have deduced return type"
 msgstr ""
 
-#: cp/decl.c:12133
+#: cp/decl.c:12288
 #, gcc-internal-format
 msgid ""
 "%qs function with trailing return type has %qT as its type rather than plain "
 "%<auto%>"
 msgstr ""
 
-#: cp/decl.c:12142
+#: cp/decl.c:12297
 #, gcc-internal-format
 msgid ""
 "%qs function with trailing return type has %<decltype(auto)%> as its type "
 "rather than plain %<auto%>"
 msgstr ""
 
-#: cp/decl.c:12147
+#: cp/decl.c:12302
 #, gcc-internal-format
 msgid "invalid use of %<decltype(auto)%>"
 msgstr ""
 
-#: cp/decl.c:12158
+#: cp/decl.c:12313
 #, gcc-internal-format
 msgid "deduced class type %qD in function return type"
 msgstr ""
 
-#: cp/decl.c:12167
+#: cp/decl.c:12322
 #, gcc-internal-format
 msgid "deduction guide for %qT must have trailing return type"
 msgstr ""
 
-#: cp/decl.c:12180
+#: cp/decl.c:12335
 #, gcc-internal-format
 msgid ""
 "trailing return type %qT of deduction guide is not a specialization of %qT"
 msgstr ""
 
-#: cp/decl.c:12194
+#: cp/decl.c:12349
 #, gcc-internal-format
 msgid ""
 "trailing return type only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/decl.c:12197
+#: cp/decl.c:12352
 #, gcc-internal-format
 msgid ""
 "%qs function with trailing return type not declared with %<auto%> type "
 "specifier"
 msgstr ""
 
-#: cp/decl.c:12221
+#: cp/decl.c:12376
 #, gcc-internal-format
 msgid "%<volatile%>-qualified return type is deprecated"
 msgstr ""
 
-#: cp/decl.c:12233
+#: cp/decl.c:12388
 #, gcc-internal-format
 msgid "%qs declared as function returning a function"
 msgstr ""
 
-#: cp/decl.c:12239
+#: cp/decl.c:12394
 #, gcc-internal-format
 msgid "%qs declared as function returning an array"
 msgstr ""
 
-#: cp/decl.c:12246
+#: cp/decl.c:12401
 #, gcc-internal-format
 msgid "%<constinit%> on function return type is not allowed"
 msgstr ""
 
-#: cp/decl.c:12257 cp/pt.c:28993
+#: cp/decl.c:12412 cp/pt.c:29487
 #, gcc-internal-format
 msgid "%qT as type rather than plain %<decltype(auto)%>"
 msgstr ""
 
-#: cp/decl.c:12263 cp/pt.c:28999
+#: cp/decl.c:12418 cp/pt.c:29493
 #, gcc-internal-format
 msgid "%<decltype(auto)%> cannot be cv-qualified"
 msgstr ""
 
-#: cp/decl.c:12295
+#: cp/decl.c:12450
 #, gcc-internal-format
 msgid "destructor cannot be static member function"
 msgstr ""
 
-#: cp/decl.c:12297
+#: cp/decl.c:12452
 #, gcc-internal-format
 msgid "constructor cannot be static member function"
 msgstr ""
 
-#: cp/decl.c:12302
+#: cp/decl.c:12457
 #, gcc-internal-format
 msgid "destructors may not be cv-qualified"
 msgstr ""
 
-#: cp/decl.c:12303
+#: cp/decl.c:12458
 #, gcc-internal-format
 msgid "constructors may not be cv-qualified"
 msgstr ""
 
-#: cp/decl.c:12311
+#: cp/decl.c:12466
 #, gcc-internal-format
 msgid "destructors may not be ref-qualified"
 msgstr ""
 
-#: cp/decl.c:12312
+#: cp/decl.c:12467
 #, gcc-internal-format
 msgid "constructors may not be ref-qualified"
 msgstr ""
 
-#: cp/decl.c:12330
+#: cp/decl.c:12485
 #, gcc-internal-format
 msgid "constructors cannot be declared %<virtual%>"
 msgstr ""
 
-#: cp/decl.c:12347
+#: cp/decl.c:12502
 #, gcc-internal-format
 msgid "virtual functions cannot be friends"
 msgstr ""
 
-#: cp/decl.c:12352
+#: cp/decl.c:12507
 #, gcc-internal-format
 msgid "friend declaration not in class definition"
 msgstr ""
 
-#: cp/decl.c:12356
+#: cp/decl.c:12511
 #, gcc-internal-format
 msgid "cannot define friend function %qs in a local class definition"
 msgstr ""
 
-#: cp/decl.c:12366
+#: cp/decl.c:12521
 #, gcc-internal-format
 msgid "friend function definition %qs cannot have a name qualified with %<::%>"
 msgstr ""
 
-#: cp/decl.c:12370
+#: cp/decl.c:12525
 #, gcc-internal-format
 msgid ""
 "friend function definition %qs cannot have a name qualified with %<%D::%>"
 msgstr ""
 
-#: cp/decl.c:12383
+#: cp/decl.c:12538
 #, gcc-internal-format
 msgid "a conversion function cannot have a trailing return type"
 msgstr ""
 
-#: cp/decl.c:12410
+#: cp/decl.c:12565
 #, gcc-internal-format
 msgid "destructors may not have parameters"
 msgstr ""
 
-#: cp/decl.c:12450
+#: cp/decl.c:12605
 #, gcc-internal-format
 msgid "cannot declare pointer to %q#T"
 msgstr ""
 
-#: cp/decl.c:12463 cp/decl.c:12470
+#: cp/decl.c:12618 cp/decl.c:12625
 #, gcc-internal-format
 msgid "cannot declare reference to %q#T"
 msgstr ""
 
-#: cp/decl.c:12472
+#: cp/decl.c:12627
 #, gcc-internal-format
 msgid "cannot declare pointer to %q#T member"
 msgstr ""
 
-#: cp/decl.c:12501
+#: cp/decl.c:12656
 #, gcc-internal-format
 msgid "cannot declare reference to qualified function type %qT"
 msgstr ""
 
-#: cp/decl.c:12502
+#: cp/decl.c:12657
 #, gcc-internal-format
 msgid "cannot declare pointer to qualified function type %qT"
 msgstr ""
 
-#: cp/decl.c:12575
+#: cp/decl.c:12730
 #, gcc-internal-format
 msgid ""
 "cannot declare reference to %q#T, which is not a typedef or a template type "
 "argument"
 msgstr ""
 
-#: cp/decl.c:12646
+#: cp/decl.c:12801
 #, gcc-internal-format
 msgid "template-id %qD used as a declarator"
 msgstr ""
 
-#: cp/decl.c:12672
+#: cp/decl.c:12827
 #, gcc-internal-format
 msgid "member functions are implicitly friends of their class"
 msgstr ""
 
-#: cp/decl.c:12677
+#: cp/decl.c:12832
 #, gcc-internal-format
 msgid "extra qualification %<%T::%> on member %qs"
 msgstr ""
 
-#: cp/decl.c:12707
+#: cp/decl.c:12862
 #, gcc-internal-format
 msgid "cannot define member function %<%T::%s%> within %qT"
 msgstr ""
 
-#: cp/decl.c:12709
+#: cp/decl.c:12864
 #, gcc-internal-format
 msgid "cannot declare member function %<%T::%s%> within %qT"
 msgstr ""
 
-#: cp/decl.c:12717
+#: cp/decl.c:12872
 #, gcc-internal-format
 msgid "cannot declare member %<%T::%s%> within %qT"
 msgstr ""
 
-#: cp/decl.c:12757
+#: cp/decl.c:12912
 #, gcc-internal-format
 msgid "non-parameter %qs cannot be a parameter pack"
 msgstr ""
 
-#: cp/decl.c:12766
+#: cp/decl.c:12921
 #, gcc-internal-format
 msgid "data member may not have variably modified type %qT"
 msgstr ""
 
-#: cp/decl.c:12769
+#: cp/decl.c:12924
 #, gcc-internal-format
 msgid "parameter may not have variably modified type %qT"
 msgstr ""
 
-#: cp/decl.c:12780
+#: cp/decl.c:12935
 #, gcc-internal-format
 msgid "%<explicit%> outside class declaration"
 msgstr ""
 
-#: cp/decl.c:12783
+#: cp/decl.c:12938
 #, gcc-internal-format
 msgid "%<explicit%> in friend declaration"
 msgstr ""
 
-#: cp/decl.c:12786
+#: cp/decl.c:12941
 #, gcc-internal-format
 msgid ""
 "only declarations of constructors and conversion operators can be %<explicit"
 "%>"
 msgstr ""
 
-#: cp/decl.c:12796
+#: cp/decl.c:12951
 #, gcc-internal-format
 msgid "non-member %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.c:12803
+#: cp/decl.c:12958
 #, gcc-internal-format
 msgid "non-object member %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.c:12809
+#: cp/decl.c:12964
 #, gcc-internal-format
 msgid "function %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.c:12815
+#: cp/decl.c:12970
 #, gcc-internal-format
 msgid "%<static%> %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.c:12821
+#: cp/decl.c:12976
 #, gcc-internal-format
 msgid "%<const%> %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.c:12827
+#: cp/decl.c:12982
 #, gcc-internal-format
 msgid "reference %qs cannot be declared %<mutable%>"
 msgstr ""
 
-#: cp/decl.c:12843
+#: cp/decl.c:12998
 #, gcc-internal-format
 msgid "typedef may not be a function definition"
 msgstr ""
 
-#: cp/decl.c:12846
+#: cp/decl.c:13001
 #, gcc-internal-format
 msgid "typedef may not be a member function definition"
 msgstr ""
 
-#: cp/decl.c:12872
+#: cp/decl.c:13027
 #, gcc-internal-format
 msgid "%<auto%> not allowed in alias declaration"
 msgstr ""
 
-#: cp/decl.c:12875
+#: cp/decl.c:13030
 #, gcc-internal-format
 msgid "typedef declared %<auto%>"
 msgstr ""
 
-#: cp/decl.c:12880
+#: cp/decl.c:13035
 #, gcc-internal-format
 msgid "requires-clause on typedef"
 msgstr ""
 
-#: cp/decl.c:12884
+#: cp/decl.c:13039
 #, gcc-internal-format
 msgid "typedef name may not be a nested-name-specifier"
 msgstr ""
 
-#: cp/decl.c:12908
+#: cp/decl.c:13065
 #, gcc-internal-format
 msgid "ISO C++ forbids nested type %qD with same name as enclosing class"
 msgstr ""
 
-#: cp/decl.c:12997
+#: cp/decl.c:13154
 #, gcc-internal-format
 msgid "%<inline%> specified for friend class declaration"
 msgstr ""
 
-#: cp/decl.c:13005
+#: cp/decl.c:13162
 #, gcc-internal-format
 msgid "template parameters cannot be friends"
 msgstr ""
 
-#: cp/decl.c:13007
+#: cp/decl.c:13164
 #, gcc-internal-format
 msgid "friend declaration requires class-key, i.e. %<friend class %T::%D%>"
 msgstr ""
 
-#: cp/decl.c:13011
+#: cp/decl.c:13168
 #, gcc-internal-format
 msgid "friend declaration requires class-key, i.e. %<friend %#T%>"
 msgstr ""
 
-#: cp/decl.c:13024
+#: cp/decl.c:13181
 #, gcc-internal-format
 msgid "trying to make class %qT a friend of global scope"
 msgstr ""
 
-#: cp/decl.c:13044
+#: cp/decl.c:13201
 #, gcc-internal-format
 msgid "invalid qualifiers on non-member function type"
 msgstr ""
 
-#: cp/decl.c:13048
+#: cp/decl.c:13205
 #, gcc-internal-format
 msgid "requires-clause on type-id"
 msgstr ""
 
-#: cp/decl.c:13058
+#: cp/decl.c:13215
 #, gcc-internal-format
 msgid "abstract declarator %qT used as declaration"
 msgstr ""
 
-#: cp/decl.c:13073
+#: cp/decl.c:13230
 #, gcc-internal-format
 msgid "requires-clause on declaration of non-function type %qT"
 msgstr ""
 
-#: cp/decl.c:13092
+#: cp/decl.c:13249
 #, gcc-internal-format
 msgid "cannot use %<::%> in parameter declaration"
 msgstr ""
 
-#: cp/decl.c:13101 cp/parser.c:18511
+#: cp/decl.c:13258 cp/parser.c:19108
 #, gcc-internal-format
 msgid "cannot declare a parameter with %<decltype(auto)%>"
 msgstr ""
 
-#: cp/decl.c:13104
+#: cp/decl.c:13263
+#, gcc-internal-format
+msgid "class template placeholder %qE not permitted in this context"
+msgstr ""
+
+#: cp/decl.c:13266
+#, gcc-internal-format
+msgid "use %<auto%> for an abbreviated function template"
+msgstr ""
+
+#: cp/decl.c:13271
 #, gcc-internal-format
 msgid "%<auto%> parameter not permitted in this context"
 msgstr ""
 
-#: cp/decl.c:13107
+#: cp/decl.c:13274
 #, gcc-internal-format
 msgid "parameter declared %<auto%>"
 msgstr ""
 
-#: cp/decl.c:13158 cp/parser.c:3357
+#: cp/decl.c:13325 cp/parser.c:3427
 #, gcc-internal-format
 msgid "invalid use of template-name %qE without an argument list"
 msgstr ""
 
-#: cp/decl.c:13162
+#: cp/decl.c:13329
 #, gcc-internal-format
 msgid "non-static data member declared with placeholder %qT"
 msgstr ""
 
-#: cp/decl.c:13183
+#: cp/decl.c:13350
 #, gcc-internal-format
 msgid "ISO C++ forbids flexible array member %qs"
 msgstr ""
 
-#: cp/decl.c:13186
+#: cp/decl.c:13353
 #, gcc-internal-format
 msgid "ISO C++ forbids flexible array members"
 msgstr ""
 
 #. Something like struct S { int N::j; };
-#: cp/decl.c:13202
+#: cp/decl.c:13369
 #, gcc-internal-format
 msgid "invalid use of %<::%>"
 msgstr ""
 
-#: cp/decl.c:13223
+#: cp/decl.c:13390
 #, gcc-internal-format
 msgid "declaration of function %qD in invalid context"
 msgstr ""
 
-#: cp/decl.c:13233
+#: cp/decl.c:13400
 #, gcc-internal-format
 msgid "function %qD declared %<virtual%> inside a union"
 msgstr ""
 
-#: cp/decl.c:13243
+#: cp/decl.c:13410
 #, gcc-internal-format
 msgid "%qD cannot be declared %<virtual%>, since it is always static"
 msgstr ""
 
-#: cp/decl.c:13257
+#: cp/decl.c:13424
 #, gcc-internal-format
 msgid "expected qualified name in friend declaration for destructor %qD"
 msgstr ""
 
-#: cp/decl.c:13264
+#: cp/decl.c:13431
 #, gcc-internal-format
 msgid "declaration of %qD as member of %qT"
 msgstr ""
 
-#: cp/decl.c:13271 cp/decl.c:13284
+#: cp/decl.c:13438 cp/decl.c:13451
 #, gcc-internal-format
 msgid "a destructor cannot be %qs"
 msgstr ""
 
-#: cp/decl.c:13277
+#: cp/decl.c:13444
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> destructors only available with %<-std=c++20%> or %<-std=gnu+"
 "+20%>"
 msgstr ""
 
-#: cp/decl.c:13290
+#: cp/decl.c:13457
 #, gcc-internal-format
 msgid "expected qualified name in friend declaration for constructor %qD"
 msgstr ""
 
-#: cp/decl.c:13299
+#: cp/decl.c:13466
 #, gcc-internal-format
 msgid "a constructor cannot be %<concept%>"
 msgstr ""
 
-#: cp/decl.c:13305
+#: cp/decl.c:13472
 #, gcc-internal-format
 msgid "a concept cannot be a member function"
 msgstr ""
 
-#: cp/decl.c:13313 cp/decl.c:13641
+#: cp/decl.c:13480 cp/decl.c:13810
 #, gcc-internal-format
 msgid "%qD cannot be %qs"
 msgstr ""
 
-#: cp/decl.c:13322
+#: cp/decl.c:13489
 #, gcc-internal-format
 msgid "specialization of variable template %qD declared as function"
 msgstr ""
 
-#: cp/decl.c:13325
+#: cp/decl.c:13492
 #, gcc-internal-format
 msgid "variable template declared here"
 msgstr ""
 
-#: cp/decl.c:13387
+#: cp/decl.c:13554
 #, gcc-internal-format
 msgid "field %qD has incomplete type %qT"
 msgstr ""
 
-#: cp/decl.c:13392
+#: cp/decl.c:13559
 #, gcc-internal-format
 msgid "name %qT has incomplete type"
 msgstr ""
 
-#: cp/decl.c:13412
+#: cp/decl.c:13579
 #, gcc-internal-format
 msgid "%qE is neither function nor member function; cannot be declared friend"
 msgstr ""
 
-#: cp/decl.c:13415
+#: cp/decl.c:13582
 #, gcc-internal-format
 msgid ""
 "unnamed field is neither function nor member function; cannot be declared "
 "friend"
 msgstr ""
 
-#: cp/decl.c:13466 cp/decl.c:13477
+#: cp/decl.c:13635 cp/decl.c:13646
 #, gcc-internal-format
 msgid "static data member %qE declared %qs"
 msgstr ""
 
-#: cp/decl.c:13471
+#: cp/decl.c:13640
 #, gcc-internal-format
 msgid "%<constexpr%> static data member %qD must have an initializer"
 msgstr ""
 
-#: cp/decl.c:13505 cp/decl.c:13513 cp/decl.c:13520 cp/decl.c:13527
+#: cp/decl.c:13674 cp/decl.c:13682 cp/decl.c:13689 cp/decl.c:13696
 #, gcc-internal-format
 msgid "non-static data member %qE declared %qs"
 msgstr ""
 
-#: cp/decl.c:13582
+#: cp/decl.c:13751
 #, gcc-internal-format
 msgid "storage class %<auto%> invalid for function %qs"
 msgstr ""
 
-#: cp/decl.c:13585
+#: cp/decl.c:13754
 #, gcc-internal-format
 msgid "storage class %<register%> invalid for function %qs"
 msgstr ""
 
-#: cp/decl.c:13591
+#: cp/decl.c:13760
 #, gcc-internal-format
 msgid "storage class %<__thread%> invalid for function %qs"
 msgstr ""
 
-#: cp/decl.c:13595
+#: cp/decl.c:13764
 #, gcc-internal-format
 msgid "storage class %<thread_local%> invalid for function %qs"
 msgstr ""
 
-#: cp/decl.c:13600
+#: cp/decl.c:13769
 #, gcc-internal-format
 msgid "virt-specifiers in %qs not allowed outside a class definition"
 msgstr ""
 
-#: cp/decl.c:13612
+#: cp/decl.c:13781
 #, gcc-internal-format
 msgid ""
 "%<static%> specifier invalid for function %qs declared out of global scope"
 msgstr ""
 
-#: cp/decl.c:13616
+#: cp/decl.c:13785
 #, gcc-internal-format
 msgid ""
 "%<inline%> specifier invalid for function %qs declared out of global scope"
 msgstr ""
 
-#: cp/decl.c:13624
+#: cp/decl.c:13793
 #, gcc-internal-format
 msgid "virtual non-class function %qs"
 msgstr ""
 
-#: cp/decl.c:13631
+#: cp/decl.c:13800
 #, gcc-internal-format
 msgid "%qs defined in a non-class scope"
 msgstr ""
 
-#: cp/decl.c:13632
+#: cp/decl.c:13801
 #, gcc-internal-format
 msgid "%qs declared in a non-class scope"
 msgstr ""
 
-#: cp/decl.c:13675
+#: cp/decl.c:13844
 #, gcc-internal-format
 msgid "cannot declare member function %qD to have static linkage"
 msgstr ""
 
-#: cp/decl.c:13684
+#: cp/decl.c:13853
 #, gcc-internal-format
 msgid "cannot declare static function inside another function"
 msgstr ""
 
-#: cp/decl.c:13723
+#: cp/decl.c:13892
 #, gcc-internal-format
 msgid ""
 "%<static%> may not be used when defining (as opposed to declaring) a static "
 "data member"
 msgstr ""
 
-#: cp/decl.c:13730
+#: cp/decl.c:13899
 #, gcc-internal-format
 msgid "static member %qD declared %<register%>"
 msgstr ""
 
-#: cp/decl.c:13736
+#: cp/decl.c:13905
 #, gcc-internal-format
 msgid "cannot explicitly declare member %q#D to have extern linkage"
 msgstr ""
 
-#: cp/decl.c:13744
+#: cp/decl.c:13913
 #, gcc-internal-format
 msgid "declaration of %<constexpr%> variable %qD is not a definition"
 msgstr ""
 
-#: cp/decl.c:13751
+#: cp/decl.c:13920
 #, gcc-internal-format
 msgid "a variable cannot be declared %<consteval%>"
 msgstr ""
 
-#: cp/decl.c:13771
+#: cp/decl.c:13940
 #, gcc-internal-format
 msgid "declaration of %q#D has no initializer"
 msgstr ""
 
-#: cp/decl.c:13783
+#: cp/decl.c:13952
 #, gcc-internal-format
 msgid "%qs initialized and declared %<extern%>"
 msgstr ""
 
-#: cp/decl.c:13788
+#: cp/decl.c:13957
 #, gcc-internal-format
 msgid "%qs has both %<extern%> and initializer"
 msgstr ""
 
-#: cp/decl.c:13955
+#: cp/decl.c:14129
 #, gcc-internal-format
 msgid "default argument %qE uses %qD"
 msgstr ""
 
-#: cp/decl.c:13958
+#: cp/decl.c:14132
 #, gcc-internal-format
 msgid "default argument %qE uses local variable %qD"
 msgstr ""
 
-#: cp/decl.c:14048
+#: cp/decl.c:14222
 #, gcc-internal-format
 msgid "invalid use of cv-qualified type %qT in parameter declaration"
 msgstr ""
 
-#: cp/decl.c:14052
+#: cp/decl.c:14226
 #, gcc-internal-format
 msgid "invalid use of type %<void%> in parameter declaration"
 msgstr ""
 
-#: cp/decl.c:14074
+#: cp/decl.c:14248
 #, gcc-internal-format
 msgid "%<volatile%>-qualified parameter is deprecated"
 msgstr ""
 
-#: cp/decl.c:14082
+#: cp/decl.c:14256
 #, gcc-internal-format
 msgid "parameter %qD invalidly declared method type"
 msgstr ""
 
-#: cp/decl.c:14110
+#: cp/decl.c:14281
 #, gcc-internal-format
 msgid "parameter %qD includes pointer to array of unknown bound %qT"
 msgstr ""
 
-#: cp/decl.c:14112
+#: cp/decl.c:14283
 #, gcc-internal-format
 msgid "parameter %qD includes reference to array of unknown bound %qT"
 msgstr ""
 
-#: cp/decl.c:14363
+#: cp/decl.c:14542
 #, gcc-internal-format
 msgid "invalid constructor; you probably meant %<%T (const %T&)%>"
 msgstr ""
 
-#: cp/decl.c:14442
+#: cp/decl.c:14621
 #, gcc-internal-format
 msgid "%qD may not be declared within a namespace"
 msgstr ""
 
-#: cp/decl.c:14449
+#: cp/decl.c:14628
 #, gcc-internal-format
 msgid "%qD may not be declared as static"
 msgstr ""
 
-#: cp/decl.c:14479
+#: cp/decl.c:14658
 #, gcc-internal-format
 msgid "%qD must be a non-static member function"
 msgstr ""
 
-#: cp/decl.c:14485
+#: cp/decl.c:14664
 #, gcc-internal-format
 msgid ""
 "%qD must be either a non-static member function or a non-member function"
 msgstr ""
 
-#: cp/decl.c:14495
+#: cp/decl.c:14674
 #, gcc-internal-format
 msgid "%qD must have an argument of class or enumerated type"
 msgstr ""
 
 #. 13.4.0.3
-#: cp/decl.c:14521
+#: cp/decl.c:14700
 #, gcc-internal-format
 msgid "ISO C++ prohibits overloading %<operator ?:%>"
 msgstr ""
 
 #. Variadic.
-#: cp/decl.c:14532
+#: cp/decl.c:14711
 #, gcc-internal-format
 msgid "%qD must not have variable number of arguments"
 msgstr ""
 
-#: cp/decl.c:14558
+#: cp/decl.c:14737
 #, gcc-internal-format
 msgid "%qD must have either zero or one argument"
 msgstr ""
 
-#: cp/decl.c:14559
+#: cp/decl.c:14738
 #, gcc-internal-format
 msgid "%qD must have either one or two arguments"
 msgstr ""
 
-#: cp/decl.c:14571
+#: cp/decl.c:14750
 #, gcc-internal-format
 msgid "postfix %qD must have %<int%> as its argument"
 msgstr ""
 
-#: cp/decl.c:14572
+#: cp/decl.c:14751
 #, gcc-internal-format
 msgid "postfix %qD must have %<int%> as its second argument"
 msgstr ""
 
-#: cp/decl.c:14583
+#: cp/decl.c:14762
 #, gcc-internal-format
 msgid "%qD must have no arguments"
 msgstr ""
 
-#: cp/decl.c:14584 cp/decl.c:14594
+#: cp/decl.c:14763 cp/decl.c:14773
 #, gcc-internal-format
 msgid "%qD must have exactly one argument"
 msgstr ""
 
-#: cp/decl.c:14595
+#: cp/decl.c:14774
 #, gcc-internal-format
 msgid "%qD must have exactly two arguments"
 msgstr ""
 
-#: cp/decl.c:14609
+#: cp/decl.c:14788
 #, gcc-internal-format
 msgid "%qD cannot have default arguments"
 msgstr ""
 
-#: cp/decl.c:14633
+#: cp/decl.c:14812
 #, gcc-internal-format
 msgid "converting %qT to %<void%> will never use a type conversion operator"
 msgstr ""
 
-#: cp/decl.c:14640
+#: cp/decl.c:14819
 #, gcc-internal-format
 msgid ""
 "converting %qT to a reference to the same type will never use a type "
 "conversion operator"
 msgstr ""
 
-#: cp/decl.c:14642
+#: cp/decl.c:14821
 #, gcc-internal-format
 msgid ""
 "converting %qT to the same type will never use a type conversion operator"
 msgstr ""
 
-#: cp/decl.c:14651
+#: cp/decl.c:14830
 #, gcc-internal-format
 msgid ""
 "converting %qT to a reference to a base class %qT will never use a type "
 "conversion operator"
 msgstr ""
 
-#: cp/decl.c:14653
+#: cp/decl.c:14832
 #, gcc-internal-format
 msgid ""
 "converting %qT to a base class %qT will never use a type conversion operator"
 msgstr ""
 
-#: cp/decl.c:14669
+#: cp/decl.c:14848
 #, gcc-internal-format
 msgid "user-defined %qD always evaluates both arguments"
 msgstr ""
 
-#: cp/decl.c:14688
+#: cp/decl.c:14867
 #, gcc-internal-format
 msgid "prefix %qD should return %qT"
 msgstr ""
 
-#: cp/decl.c:14695
+#: cp/decl.c:14874
 #, gcc-internal-format
 msgid "postfix %qD should return %qT"
 msgstr ""
 
-#: cp/decl.c:14707
+#: cp/decl.c:14886
 #, gcc-internal-format
 msgid "%qD should return by value"
 msgstr ""
 
-#: cp/decl.c:14762
+#: cp/decl.c:14941
 #, gcc-internal-format
 msgid "using template type parameter %qT after %qs"
 msgstr ""
 
-#: cp/decl.c:14785
+#: cp/decl.c:14964
 #, gcc-internal-format
 msgid "using alias template specialization %qT after %qs"
 msgstr ""
 
-#: cp/decl.c:14788
+#: cp/decl.c:14967
 #, gcc-internal-format
 msgid "using typedef-name %qD after %qs"
 msgstr ""
 
-#: cp/decl.c:14790
+#: cp/decl.c:14969
 #, gcc-internal-format
 msgid "%qD has a previous declaration here"
 msgstr ""
 
-#: cp/decl.c:14798
+#: cp/decl.c:14977
 #, gcc-internal-format
 msgid "%qT referred to as %qs"
 msgstr ""
 
-#: cp/decl.c:14799 cp/decl.c:14806
+#: cp/decl.c:14978 cp/decl.c:14985
 #, gcc-internal-format
 msgid "%qT has a previous declaration here"
 msgstr ""
 
-#: cp/decl.c:14805
+#: cp/decl.c:14984
 #, gcc-internal-format
 msgid "%qT referred to as enum"
 msgstr ""
@@ -51578,95 +53008,105 @@ msgstr ""
 #. void f(class C);            // No template header here
 #.
 #. then the required template argument is missing.
-#: cp/decl.c:14820
+#: cp/decl.c:14999
 #, gcc-internal-format
 msgid "template argument required for %<%s %T%>"
 msgstr ""
 
-#: cp/decl.c:14874 cp/name-lookup.c:4480
+#: cp/decl.c:15042 cp/name-lookup.c:5854 cp/name-lookup.c:5989 cp/parser.c:6809
+#: cp/parser.c:29322
+#, gcc-internal-format
+msgid "reference to %qD is ambiguous"
+msgstr ""
+
+#: cp/decl.c:15063 cp/name-lookup.c:5552
 #, gcc-internal-format
 msgid "%qD has the same name as the class in which it is declared"
 msgstr ""
 
-#: cp/decl.c:14904 cp/friend.c:302 cp/parser.c:3182 cp/parser.c:6357
-#: cp/pt.c:9661
+#: cp/decl.c:15091 cp/friend.c:302 cp/parser.c:3252 cp/parser.c:6520
+#: cp/pt.c:9740
 #, gcc-internal-format
 msgid "%qT is not a template"
 msgstr ""
 
-#: cp/decl.c:14909
+#: cp/decl.c:15096
 #, gcc-internal-format
 msgid "perhaps you want to explicitly add %<%T::%>"
 msgstr ""
 
-#: cp/decl.c:14918 cp/name-lookup.c:4719 cp/name-lookup.c:4830 cp/parser.c:6646
-#: cp/parser.c:28467
+#: cp/decl.c:15199
 #, gcc-internal-format
-msgid "reference to %qD is ambiguous"
+msgid "use of enum %q#D without previous declaration"
 msgstr ""
 
-#: cp/decl.c:15021
+#: cp/decl.c:15230
 #, gcc-internal-format
-msgid "use of enum %q#D without previous declaration"
+msgid "redeclaration of %qT as a non-template"
 msgstr ""
 
-#: cp/decl.c:15057
+#: cp/decl.c:15241 cp/semantics.c:3266
 #, gcc-internal-format
-msgid "redeclaration of %qT as a non-template"
+msgid "cannot declare %qD in a different module"
 msgstr ""
 
-#: cp/decl.c:15197
+#: cp/decl.c:15369
 #, gcc-internal-format
 msgid "derived union %qT invalid"
 msgstr ""
 
-#: cp/decl.c:15204
+#: cp/decl.c:15376
 #, gcc-internal-format
 msgid "%qT defined with multiple direct bases"
 msgstr ""
 
-#: cp/decl.c:15215
+#: cp/decl.c:15387
 #, gcc-internal-format
 msgid "%qT defined with direct virtual base"
 msgstr ""
 
-#: cp/decl.c:15240
+#: cp/decl.c:15412
 #, gcc-internal-format
 msgid "base type %qT fails to be a struct or class type"
 msgstr ""
 
-#: cp/decl.c:15270
+#: cp/decl.c:15442
 #, gcc-internal-format
 msgid "recursive type %qT undefined"
 msgstr ""
 
-#: cp/decl.c:15272
+#: cp/decl.c:15444
 #, gcc-internal-format
 msgid "duplicate base type %qT invalid"
 msgstr ""
 
-#: cp/decl.c:15417
+#: cp/decl.c:15589
 #, gcc-internal-format
 msgid "scoped/unscoped mismatch in enum %q#T"
 msgstr ""
 
-#: cp/decl.c:15420 cp/decl.c:15428 cp/decl.c:15438 cp/decl.c:16021
-#: cp/parser.c:19413
+#: cp/decl.c:15592 cp/decl.c:15600 cp/decl.c:15610 cp/decl.c:16212
+#: cp/parser.c:20012
 #, gcc-internal-format
 msgid "previous definition here"
 msgstr ""
 
-#: cp/decl.c:15425
+#: cp/decl.c:15597
 #, gcc-internal-format
 msgid "underlying type mismatch in enum %q#T"
 msgstr ""
 
-#: cp/decl.c:15435
+#: cp/decl.c:15607
 #, gcc-internal-format
 msgid "different underlying type in enum %q#T"
 msgstr ""
 
-#: cp/decl.c:15508
+#: cp/decl.c:15618
+#, gcc-internal-format
+msgid "cannot define %qD in different module"
+msgstr ""
+
+#: cp/decl.c:15692
 #, gcc-internal-format
 msgid "underlying type %qT of %qT must be an integral type"
 msgstr ""
@@ -51675,73 +53115,78 @@ msgstr ""
 #.
 #. IF no integral type can represent all the enumerator values, the
 #. enumeration is ill-formed.
-#: cp/decl.c:15655
+#: cp/decl.c:15839
 #, gcc-internal-format
 msgid "no integral type can represent all of the enumerator values for %qT"
 msgstr ""
 
-#: cp/decl.c:15823
+#: cp/decl.c:16014
 #, gcc-internal-format
 msgid ""
 "enumerator value for %qD must have integral or unscoped enumeration type"
 msgstr ""
 
-#: cp/decl.c:15833
+#: cp/decl.c:16024
 #, gcc-internal-format
 msgid "enumerator value for %qD is not an integer constant"
 msgstr ""
 
-#: cp/decl.c:15882
+#: cp/decl.c:16073
 #, gcc-internal-format
 msgid "incremented enumerator value is too large for %<unsigned long%>"
 msgstr ""
 
-#: cp/decl.c:15883
+#: cp/decl.c:16074
 #, gcc-internal-format
 msgid "incremented enumerator value is too large for %<long%>"
 msgstr ""
 
-#: cp/decl.c:15894
+#: cp/decl.c:16085
 #, gcc-internal-format
 msgid "overflow in enumeration values at %qD"
 msgstr ""
 
-#: cp/decl.c:15914
+#: cp/decl.c:16105
 #, gcc-internal-format
 msgid "enumerator value %qE is outside the range of underlying type %qT"
 msgstr ""
 
-#: cp/decl.c:16019 cp/parser.c:19411
+#: cp/decl.c:16210 cp/parser.c:20010
 #, gcc-internal-format
 msgid "multiple definition of %q#T"
 msgstr ""
 
-#: cp/decl.c:16059
+#: cp/decl.c:16250
 #, gcc-internal-format
 msgid "return type %q#T is incomplete"
 msgstr ""
 
-#: cp/decl.c:16234 cp/typeck.c:10007
+#: cp/decl.c:16410 cp/typeck.c:10205
 #, gcc-internal-format
 msgid "%<operator=%> should return a reference to %<*this%>"
 msgstr ""
 
-#: cp/decl.c:17097
+#: cp/decl.c:17259
 #, gcc-internal-format
 msgid "no return statements in function returning %qT"
 msgstr ""
 
-#: cp/decl.c:17099 cp/typeck.c:9887
+#: cp/decl.c:17261 cp/typeck.c:10085
 #, gcc-internal-format
 msgid "only plain %<auto%> return type can be deduced to %<void%>"
 msgstr ""
 
-#: cp/decl.c:17336
+#: cp/decl.c:17323
+#, gcc-internal-format
+msgid "no return statement in %<constexpr%> function returning non-void"
+msgstr ""
+
+#: cp/decl.c:17505
 #, gcc-internal-format
 msgid "%qD is already defined in class %qT"
 msgstr ""
 
-#: cp/decl.c:17714
+#: cp/decl.c:17896
 #, gcc-internal-format
 msgid "use of %qD before deduction of %<auto%>"
 msgstr ""
@@ -51783,7 +53228,7 @@ msgstr ""
 msgid "deleting %qT is undefined"
 msgstr ""
 
-#: cp/decl2.c:580 cp/pt.c:5780
+#: cp/decl2.c:580 cp/pt.c:5824
 #, gcc-internal-format
 msgid "template declaration of %q#D"
 msgstr ""
@@ -51794,7 +53239,7 @@ msgid ""
 "template parameter lists provided don%'t match the template parameters of %qD"
 msgstr ""
 
-#: cp/decl2.c:635 cp/pt.c:5737
+#: cp/decl2.c:635 cp/pt.c:5781
 #, gcc-internal-format
 msgid "destructor %qD declared as member template"
 msgstr ""
@@ -51859,97 +53304,97 @@ msgstr ""
 msgid "initializer specified for static member function %qD"
 msgstr ""
 
-#: cp/decl2.c:1010
+#: cp/decl2.c:1007
 #, gcc-internal-format
 msgid "%<asm%> specifiers are not permitted on non-static data members"
 msgstr ""
 
-#: cp/decl2.c:1067
+#: cp/decl2.c:1064
 #, gcc-internal-format
 msgid "bit-field %qD with non-integral type %qT"
 msgstr ""
 
-#: cp/decl2.c:1075
+#: cp/decl2.c:1072
 #, gcc-internal-format
 msgid "cannot declare %qD to be a bit-field type"
 msgstr ""
 
-#: cp/decl2.c:1086
+#: cp/decl2.c:1083
 #, gcc-internal-format
 msgid "cannot declare bit-field %qD with function type"
 msgstr ""
 
-#: cp/decl2.c:1092
+#: cp/decl2.c:1089
 #, gcc-internal-format
 msgid "cannot declare bit-field %qD with %<warn_if_not_aligned%> type"
 msgstr ""
 
-#: cp/decl2.c:1099
+#: cp/decl2.c:1096
 #, gcc-internal-format
 msgid "%qD is already defined in the class %qT"
 msgstr ""
 
-#: cp/decl2.c:1107
+#: cp/decl2.c:1104
 #, gcc-internal-format
 msgid "static member %qD cannot be a bit-field"
 msgstr ""
 
-#: cp/decl2.c:1121
+#: cp/decl2.c:1118
 #, gcc-internal-format
 msgid "width of bit-field %qD has non-integral type %qT"
 msgstr ""
 
-#: cp/decl2.c:1447
+#: cp/decl2.c:1444
 #, gcc-internal-format
 msgid "incomplete type %qT is not mappable"
 msgstr ""
 
-#: cp/decl2.c:1459
+#: cp/decl2.c:1456
 #, gcc-internal-format
 msgid "type %qT with virtual members is not mappable"
 msgstr ""
 
-#: cp/decl2.c:1471
+#: cp/decl2.c:1468
 #, gcc-internal-format
 msgid "static field %qD is not mappable"
 msgstr ""
 
-#: cp/decl2.c:1560
+#: cp/decl2.c:1557
 #, gcc-internal-format
 msgid "%q+D static data member inside of declare target directive"
 msgstr ""
 
-#: cp/decl2.c:1632
+#: cp/decl2.c:1629
 #, gcc-internal-format
 msgid "anonymous struct not inside named type"
 msgstr ""
 
-#: cp/decl2.c:1648
+#: cp/decl2.c:1645
 #, gcc-internal-format
 msgid "%q#D invalid; an anonymous union can only have non-static data members"
 msgstr ""
 
-#: cp/decl2.c:1655
+#: cp/decl2.c:1652
 #, gcc-internal-format
 msgid "private member %q#D in anonymous union"
 msgstr ""
 
-#: cp/decl2.c:1658
+#: cp/decl2.c:1655
 #, gcc-internal-format
 msgid "protected member %q#D in anonymous union"
 msgstr ""
 
-#: cp/decl2.c:1723
+#: cp/decl2.c:1720
 #, gcc-internal-format
 msgid "namespace-scope anonymous aggregates must be static"
 msgstr ""
 
-#: cp/decl2.c:1732
+#: cp/decl2.c:1729
 #, gcc-internal-format
 msgid "anonymous union with no members"
 msgstr ""
 
-#: cp/decl2.c:1769
+#: cp/decl2.c:1766
 #, gcc-internal-format
 msgid "%<operator new%> must return type %qT"
 msgstr ""
@@ -51958,84 +53403,84 @@ msgstr ""
 #.
 #. The first parameter shall not have an associated default
 #. argument.
-#: cp/decl2.c:1781
+#: cp/decl2.c:1778
 #, gcc-internal-format
 msgid "the first parameter of %<operator new%> cannot have a default argument"
 msgstr ""
 
-#: cp/decl2.c:1797
+#: cp/decl2.c:1794
 #, gcc-internal-format
 msgid "%<operator new%> takes type %<size_t%> (%qT) as first parameter"
 msgstr ""
 
-#: cp/decl2.c:1827
+#: cp/decl2.c:1824
 #, gcc-internal-format
 msgid "%<operator delete%> must return type %qT"
 msgstr ""
 
-#: cp/decl2.c:1842
+#: cp/decl2.c:1839
 #, gcc-internal-format
 msgid "destroying %<operator delete%> must be a member function"
 msgstr ""
 
-#: cp/decl2.c:1845
+#: cp/decl2.c:1842
 #, gcc-internal-format
 msgid "%<operator delete[]%> cannot be a destroying delete"
 msgstr ""
 
-#: cp/decl2.c:1847
+#: cp/decl2.c:1844
 #, gcc-internal-format
 msgid "destroying %<operator delete%> must be a usual deallocation function"
 msgstr ""
 
-#: cp/decl2.c:1857
+#: cp/decl2.c:1854
 #, gcc-internal-format
 msgid "%<operator delete%> takes type %qT as first parameter"
 msgstr ""
 
-#: cp/decl2.c:2841
+#: cp/decl2.c:2839
 #, gcc-internal-format
 msgid "%qT has a field %qD whose type has no linkage"
 msgstr ""
 
-#: cp/decl2.c:2845
+#: cp/decl2.c:2843
 #, gcc-internal-format
 msgid ""
 "%qT has a field %qD whose type depends on the type %qT which has no linkage"
 msgstr ""
 
-#: cp/decl2.c:2850
+#: cp/decl2.c:2848
 #, gcc-internal-format
 msgid "%qT has a field %qD whose type uses the anonymous namespace"
 msgstr ""
 
-#: cp/decl2.c:2858
+#: cp/decl2.c:2856
 #, gcc-internal-format
 msgid "%qT declared with greater visibility than the type of its field %qD"
 msgstr ""
 
-#: cp/decl2.c:2876
+#: cp/decl2.c:2874
 #, gcc-internal-format
 msgid "%qT has a base %qT whose type has no linkage"
 msgstr ""
 
-#: cp/decl2.c:2880
+#: cp/decl2.c:2878
 #, gcc-internal-format
 msgid ""
 "%qT has a base %qT whose type depends on the type %qT which has no linkage"
 msgstr ""
 
-#: cp/decl2.c:2885
+#: cp/decl2.c:2883
 #, gcc-internal-format
 msgid "%qT has a base %qT whose type uses the anonymous namespace"
 msgstr ""
 
-#: cp/decl2.c:2892
+#: cp/decl2.c:2890
 #, gcc-internal-format
 msgid "%qT declared with greater visibility than its base %qT"
 msgstr ""
 
-#: cp/decl2.c:4509
+#: cp/decl2.c:4552
 #, gcc-internal-format
 msgid "%q#D, declared using unnamed type, is used but never defined"
 msgstr ""
@@ -52044,307 +53489,307 @@ 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.c:4518
+#: cp/decl2.c:4561
 #, gcc-internal-format
 msgid "unnamed type with no linkage used to declare variable %q#D with linkage"
 msgstr ""
 
-#: cp/decl2.c:4522
+#: cp/decl2.c:4565
 #, gcc-internal-format
 msgid "unnamed type with no linkage used to declare function %q#D with linkage"
 msgstr ""
 
-#: cp/decl2.c:4526
+#: cp/decl2.c:4569
 #, gcc-internal-format
 msgid ""
 "%q#D does not refer to the unqualified type, so it is not used for linkage"
 msgstr ""
 
-#: cp/decl2.c:4534
+#: cp/decl2.c:4577
 #, gcc-internal-format
 msgid "%q#D, declared using local type %qT, is used but never defined"
 msgstr ""
 
-#: cp/decl2.c:4538
+#: cp/decl2.c:4581
 #, gcc-internal-format
 msgid "type %qT with no linkage used to declare variable %q#D with linkage"
 msgstr ""
 
-#: cp/decl2.c:4541
+#: cp/decl2.c:4584
 #, gcc-internal-format
 msgid "type %qT with no linkage used to declare function %q#D with linkage"
 msgstr ""
 
-#: cp/decl2.c:4729
+#: cp/decl2.c:4772
 #, gcc-internal-format
 msgid "mangling of %q#D as %qE conflicts with a previous mangle"
 msgstr ""
 
-#: cp/decl2.c:4732
+#: cp/decl2.c:4775
 #, gcc-internal-format
 msgid "previous mangling %q#D"
 msgstr ""
 
-#: cp/decl2.c:4734
+#: cp/decl2.c:4777
 #, gcc-internal-format
 msgid ""
 "a later %<-fabi-version=%> (or =0) avoids this error with a change in "
 "mangling"
 msgstr ""
 
-#: cp/decl2.c:4806 cp/decl2.c:4809
+#: cp/decl2.c:4849 cp/decl2.c:4852
 #, gcc-internal-format
 msgid "the program should also define %qD"
 msgstr ""
 
-#: cp/decl2.c:5152
+#: cp/decl2.c:5204
 #, gcc-internal-format
 msgid "inline function %qD used but never defined"
 msgstr ""
 
-#: cp/decl2.c:5353
+#: cp/decl2.c:5407
 #, gcc-internal-format
 msgid "default argument missing for parameter %P of %q#D"
 msgstr ""
 
-#: cp/decl2.c:5358
+#: cp/decl2.c:5412
 #, gcc-internal-format
 msgid "...following parameter %P which has a default argument"
 msgstr ""
 
-#: cp/decl2.c:5458
+#: cp/decl2.c:5512
 #, gcc-internal-format
 msgid "implicitly-declared %qD is deprecated"
 msgstr ""
 
-#: cp/decl2.c:5462
+#: cp/decl2.c:5516
 #, 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.c:5566
+#: cp/decl2.c:5621
 #, gcc-internal-format
 msgid "converting lambda that uses %<...%> to function pointer"
 msgstr ""
 
-#: cp/decl2.c:5569
+#: cp/decl2.c:5624
 #, gcc-internal-format
 msgid "use of deleted function %qD"
 msgstr ""
 
-#: cp/decl2.c:5613
+#: cp/decl2.c:5674
 #, gcc-internal-format
 msgid "use of function %qD with unsatisfied constraints"
 msgstr ""
 
-#: cp/decl2.c:5635
+#: cp/decl2.c:5706
 #, gcc-internal-format
 msgid "use of built-in parameter pack %qD outside of a template"
 msgstr ""
 
-#: cp/error.c:3875
+#: cp/error.c:3962
 #, gcc-internal-format
 msgid "(no argument)"
 msgstr ""
 
-#: cp/error.c:3967
+#: cp/error.c:4054
 #, gcc-internal-format
 msgid "[...]"
 msgstr ""
 
-#: cp/error.c:4318
+#: cp/error.c:4410
 #, gcc-internal-format
 msgid ""
 "extended initializer lists only available with %<-std=c++11%> or %<-std=gnu+"
 "+11%>"
 msgstr ""
 
-#: cp/error.c:4323
+#: cp/error.c:4415
 #, gcc-internal-format
 msgid ""
 "explicit conversion operators only available with %<-std=c++11%> or %<-"
 "std=gnu++11%>"
 msgstr ""
 
-#: cp/error.c:4328
+#: cp/error.c:4420
 #, gcc-internal-format
 msgid ""
 "variadic templates only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.c:4333
+#: cp/error.c:4425
 #, gcc-internal-format
 msgid ""
 "lambda expressions only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.c:4338
+#: cp/error.c:4430
 #, gcc-internal-format
 msgid "C++11 auto only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.c:4343
+#: cp/error.c:4435
 #, gcc-internal-format
 msgid "scoped enums only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.c:4348
+#: cp/error.c:4440
 #, gcc-internal-format
 msgid ""
 "defaulted and deleted functions only available with %<-std=c++11%> or %<-"
 "std=gnu++11%>"
 msgstr ""
 
-#: cp/error.c:4353
+#: cp/error.c:4445
 #, gcc-internal-format
 msgid ""
 "inline namespaces only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.c:4358
+#: cp/error.c:4450
 #, gcc-internal-format
 msgid ""
 "override controls (override/final) only available with %<-std=c++11%> or %<-"
 "std=gnu++11%>"
 msgstr ""
 
-#: cp/error.c:4363
+#: cp/error.c:4455
 #, gcc-internal-format
 msgid ""
 "non-static data member initializers only available with %<-std=c++11%> or %<-"
 "std=gnu++11%>"
 msgstr ""
 
-#: cp/error.c:4368
+#: cp/error.c:4460
 #, gcc-internal-format
 msgid ""
 "user-defined literals only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.c:4373
+#: cp/error.c:4465
 #, gcc-internal-format
 msgid ""
 "delegating constructors only available with %<-std=c++11%> or %<-std=gnu+"
 "+11%>"
 msgstr ""
 
-#: cp/error.c:4378
+#: cp/error.c:4470
 #, gcc-internal-format
 msgid ""
 "inheriting constructors only available with %<-std=c++11%> or %<-std=gnu+"
 "+11%>"
 msgstr ""
 
-#: cp/error.c:4383
+#: cp/error.c:4475
 #, gcc-internal-format
 msgid "c++11 attributes only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.c:4388
+#: cp/error.c:4480
 #, gcc-internal-format
 msgid "ref-qualifiers only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/error.c:4438
+#: cp/error.c:4530
 #, gcc-internal-format
 msgid "incomplete type %qT used in nested name specifier"
 msgstr ""
 
-#: cp/error.c:4442
+#: cp/error.c:4534
 #, gcc-internal-format
 msgid "reference to %<%T::%D%> is ambiguous"
 msgstr ""
 
-#: cp/error.c:4456
+#: cp/error.c:4548
 #, gcc-internal-format
 msgid "%qD is not a member of %qT; did you mean %qs?"
 msgstr ""
 
-#: cp/error.c:4460 cp/typeck.c:2530
+#: cp/error.c:4552 cp/typeck.c:2543
 #, gcc-internal-format
 msgid "%qD is not a member of %qT"
 msgstr ""
 
-#: cp/error.c:4482
+#: cp/error.c:4574
 #, gcc-internal-format
 msgid "%qD is not a member of %qD; did you mean %qs?"
 msgstr ""
 
-#: cp/error.c:4486 cp/typeck.c:3124
+#: cp/error.c:4578 cp/typeck.c:3139
 #, gcc-internal-format
 msgid "%qD is not a member of %qD"
 msgstr ""
 
-#: cp/error.c:4497
+#: cp/error.c:4589
 #, gcc-internal-format
 msgid "%<::%D%> has not been declared; did you mean %qs?"
 msgstr ""
 
-#: cp/error.c:4501
+#: cp/error.c:4593
 #, gcc-internal-format
 msgid "%<::%D%> has not been declared"
 msgstr ""
 
-#: cp/except.c:378
+#: cp/except.c:377
 #, gcc-internal-format
 msgid "exception handling disabled, use %<-fexceptions%> to enable"
 msgstr ""
 
-#: cp/except.c:605
+#: cp/except.c:604
 #, gcc-internal-format
 msgid "throwing NULL, which has integral, not pointer type"
 msgstr ""
 
-#: cp/except.c:727
+#: cp/except.c:730
 #, gcc-internal-format
 msgid "  in thrown expression"
 msgstr ""
 
-#: cp/except.c:868
+#: cp/except.c:871
 #, gcc-internal-format
 msgid "cannot declare %<catch%> parameter to be of rvalue reference type %qT"
 msgstr ""
 
-#: cp/except.c:876
+#: cp/except.c:879
 #, gcc-internal-format
 msgid ""
 "cannot throw expression of type %qT because it involves types of variable "
 "size"
 msgstr ""
 
-#: cp/except.c:879
+#: cp/except.c:882
 #, gcc-internal-format
 msgid "cannot catch type %qT because it involves types of variable size"
 msgstr ""
 
-#: cp/except.c:975
+#: cp/except.c:982
 #, gcc-internal-format
-msgid "exception of type %qT will be caught"
+msgid "exception of type %qT will be caught by earlier handler"
 msgstr ""
 
-#: cp/except.c:978
+#: cp/except.c:984
 #, gcc-internal-format
-msgid "   by earlier handler for %qT"
+msgid "for type %qT"
 msgstr ""
 
-#: cp/except.c:1007
+#: cp/except.c:1013
 #, gcc-internal-format
 msgid "%<...%> handler must be the last handler for its try block"
 msgstr ""
 
-#: cp/except.c:1100
+#: cp/except.c:1106
 #, gcc-internal-format
 msgid "noexcept-expression evaluates to %<false%> because of a call to %qD"
 msgstr ""
 
-#: cp/except.c:1103
+#: cp/except.c:1109
 #, gcc-internal-format
 msgid "but %qD does not throw; perhaps it should be declared %<noexcept%>"
 msgstr ""
 
-#: cp/expr.c:236
+#: cp/expr.c:233
 #, gcc-internal-format
 msgid ""
 "using value of simple assignment with %<volatile%>-qualified left operand is "
@@ -52428,483 +53873,514 @@ msgstr ""
 msgid "member %qD declared as friend before type %qT defined"
 msgstr ""
 
-#: cp/friend.c:637
+#: cp/friend.c:631
 #, gcc-internal-format
 msgid "friend declaration %q#D declares a non-template function"
 msgstr ""
 
-#: cp/friend.c:641
+#: cp/friend.c:635
 #, gcc-internal-format
 msgid ""
 "(if this is not what you intended, make sure the function template has "
 "already been declared and add %<<>%> after the function name here)"
 msgstr ""
 
-#: cp/init.c:393
+#: cp/init.c:391
 #, gcc-internal-format
 msgid "value-initialization of incomplete type %qT"
 msgstr ""
 
-#: cp/init.c:471
+#: cp/init.c:469
 #, gcc-internal-format
 msgid "cannot value-initialize array of unknown bound %qT"
 msgstr ""
 
-#: cp/init.c:510
+#: cp/init.c:508
 #, gcc-internal-format
 msgid "value-initialization of function type %qT"
 msgstr ""
 
-#: cp/init.c:516
+#: cp/init.c:514
 #, gcc-internal-format
 msgid "value-initialization of reference type %qT"
 msgstr ""
 
-#: cp/init.c:574
+#: cp/init.c:572
 #, gcc-internal-format
 msgid "recursive instantiation of default member initializer for %qD"
 msgstr ""
 
-#: cp/init.c:633
+#: cp/init.c:631
 #, gcc-internal-format
 msgid ""
 "default member initializer for %qD required before the end of its enclosing "
 "class"
 msgstr ""
 
-#: cp/init.c:697
+#: cp/init.c:695
 #, gcc-internal-format
 msgid "initializer for flexible array member %q#D"
 msgstr ""
 
-#: cp/init.c:755
+#: cp/init.c:753
 #, gcc-internal-format
 msgid ""
 "initializing %qD from %qE does not extend the lifetime of the underlying "
 "array"
 msgstr ""
 
-#: cp/init.c:781
+#: cp/init.c:779
 #, gcc-internal-format
 msgid "%qD should be initialized in the member initialization list"
 msgstr ""
 
-#: cp/init.c:802
+#: cp/init.c:800
 #, gcc-internal-format
 msgid "%qD is initialized with itself"
 msgstr ""
 
-#: cp/init.c:906
+#: cp/init.c:916
 #, gcc-internal-format
 msgid "invalid initializer for array member %q#D"
 msgstr ""
 
-#: cp/init.c:921 cp/init.c:947 cp/init.c:2485 cp/method.c:2079
+#: cp/init.c:931 cp/init.c:957 cp/init.c:2514 cp/method.c:2261
 #, gcc-internal-format
 msgid "uninitialized const member in %q#T"
 msgstr ""
 
-#: cp/init.c:923 cp/init.c:941 cp/init.c:949 cp/init.c:2470 cp/init.c:2498
-#: cp/method.c:2082 cp/method.c:2093
+#: cp/init.c:933 cp/init.c:951 cp/init.c:959 cp/init.c:2499 cp/init.c:2527
+#: cp/method.c:2264 cp/method.c:2275
 #, gcc-internal-format
 msgid "%q#D should be initialized"
 msgstr ""
 
-#: cp/init.c:939 cp/init.c:2457 cp/method.c:2090
+#: cp/init.c:949 cp/init.c:2486 cp/method.c:2272
 #, gcc-internal-format
 msgid "uninitialized reference member in %q#T"
 msgstr ""
 
-#: cp/init.c:1116
+#: cp/init.c:1126
 #, gcc-internal-format
 msgid "%qD will be initialized after"
 msgstr ""
 
-#: cp/init.c:1119
+#: cp/init.c:1129
 #, gcc-internal-format
 msgid "base %qT will be initialized after"
 msgstr ""
 
-#: cp/init.c:1123
+#: cp/init.c:1133
 #, gcc-internal-format
 msgid "  %q#D"
 msgstr ""
 
-#: cp/init.c:1125
+#: cp/init.c:1135
 #, gcc-internal-format
 msgid "  base %qT"
 msgstr ""
 
-#: cp/init.c:1127
+#: cp/init.c:1137
 #, gcc-internal-format
 msgid "  when initialized here"
 msgstr ""
 
-#: cp/init.c:1144
+#: cp/init.c:1154
 #, gcc-internal-format
 msgid "multiple initializations given for %qD"
 msgstr ""
 
-#: cp/init.c:1148
+#: cp/init.c:1158
 #, gcc-internal-format
 msgid "multiple initializations given for base %qT"
 msgstr ""
 
-#: cp/init.c:1233
+#: cp/init.c:1245
 #, gcc-internal-format
 msgid "initializations for multiple members of %qT"
 msgstr ""
 
-#: cp/init.c:1330
+#: cp/init.c:1342
 #, gcc-internal-format
 msgid ""
 "base class %q#T should be explicitly initialized in the copy constructor"
 msgstr ""
 
-#: cp/init.c:1557 cp/init.c:1576
+#: cp/init.c:1573 cp/init.c:1592
 #, gcc-internal-format
 msgid "class %qT does not have any field named %qD"
 msgstr ""
 
-#: cp/init.c:1563
+#: cp/init.c:1579
 #, gcc-internal-format
 msgid ""
 "%q#D is a static data member; it can only be initialized at its definition"
 msgstr ""
 
-#: cp/init.c:1570
+#: cp/init.c:1586
 #, gcc-internal-format
 msgid "%q#D is not a non-static data member of %qT"
 msgstr ""
 
-#: cp/init.c:1609
+#: cp/init.c:1625
 #, gcc-internal-format
 msgid "unnamed initializer for %qT, which has no base classes"
 msgstr ""
 
-#: cp/init.c:1617
+#: cp/init.c:1633
 #, gcc-internal-format
 msgid "unnamed initializer for %qT, which uses multiple inheritance"
 msgstr ""
 
-#: cp/init.c:1664
+#: cp/init.c:1680
 #, gcc-internal-format
 msgid "%qD is both a direct base and an indirect virtual base"
 msgstr ""
 
-#: cp/init.c:1672
+#: cp/init.c:1688
 #, gcc-internal-format
 msgid "type %qT is not a direct or virtual base of %qT"
 msgstr ""
 
-#: cp/init.c:1675
+#: cp/init.c:1691
 #, gcc-internal-format
 msgid "type %qT is not a direct base of %qT"
 msgstr ""
 
-#: cp/init.c:1787 cp/init.c:4618 cp/typeck2.c:1346
+#: cp/init.c:1803 cp/init.c:4521 cp/typeck2.c:1238
 #, gcc-internal-format
 msgid "array must be initialized with a brace-enclosed initializer"
 msgstr ""
 
-#: cp/init.c:2096 cp/semantics.c:3480
+#: cp/init.c:2113 cp/semantics.c:3534
 #, gcc-internal-format
 msgid "%qT is not a class type"
 msgstr ""
 
-#: cp/init.c:2152
+#: cp/init.c:2169
 #, gcc-internal-format
 msgid "incomplete type %qT does not have member %qD"
 msgstr ""
 
-#: cp/init.c:2166
+#: cp/init.c:2183
 #, gcc-internal-format
 msgid "invalid pointer to bit-field %qD"
 msgstr ""
 
-#: cp/init.c:2252 cp/typeck.c:1998
+#: cp/init.c:2269 cp/typeck.c:2011
 #, gcc-internal-format
 msgid "invalid use of non-static member function %qD"
 msgstr ""
 
-#: cp/init.c:2259 cp/semantics.c:1993
+#: cp/init.c:2276 cp/semantics.c:2022
 #, gcc-internal-format
 msgid "invalid use of non-static data member %qD"
 msgstr ""
 
-#: cp/init.c:2454
+#: cp/init.c:2483
 #, gcc-internal-format
 msgid ""
 "uninitialized reference member in %q#T using %<new%> without new-initializer"
 msgstr ""
 
-#: cp/init.c:2462
+#: cp/init.c:2491
 #, gcc-internal-format
 msgid ""
 "uninitialized reference member in base %q#T of %q#T using %<new%> without "
 "new-initializer"
 msgstr ""
 
-#: cp/init.c:2466
+#: cp/init.c:2495
 #, gcc-internal-format
 msgid "uninitialized reference member in base %q#T of %q#T"
 msgstr ""
 
-#: cp/init.c:2482
+#: cp/init.c:2511
 #, gcc-internal-format
 msgid ""
 "uninitialized const member in %q#T using %<new%> without new-initializer"
 msgstr ""
 
-#: cp/init.c:2490
+#: cp/init.c:2519
 #, gcc-internal-format
 msgid ""
 "uninitialized const member in base %q#T of %q#T using %<new%> without new-"
 "initializer"
 msgstr ""
 
-#: cp/init.c:2494
+#: cp/init.c:2523
 #, gcc-internal-format
 msgid "uninitialized const member in base %q#T of %q#T"
 msgstr ""
 
-#: cp/init.c:2791
+#: cp/init.c:2633
 #, 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.c:2802
+#: cp/init.c:2636
+#, 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.c:2646
 #, 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.c:2813
+#: cp/init.c:2649
+#, 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.c:2658
 #, 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.c:3035
+#: cp/init.c:2661
+#, 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.c:2678
+#, gcc-internal-format
+msgid "at offset %wi from %qD declared here"
+msgstr ""
+
+#: cp/init.c:2682
+#, gcc-internal-format
+msgid "at offset [%wi, %wi] from %qD declared here"
+msgstr ""
+
+#: cp/init.c:2897
 #, gcc-internal-format
 msgid "integer overflow in array size"
 msgstr ""
 
-#: cp/init.c:3045
+#: cp/init.c:2907
 #, gcc-internal-format
 msgid "array size in new-expression must be constant"
 msgstr ""
 
-#: cp/init.c:3063
+#: cp/init.c:2925
 #, gcc-internal-format
 msgid "variably modified type not allowed in new-expression"
 msgstr ""
 
-#: cp/init.c:3079
+#: cp/init.c:2941
 #, gcc-internal-format
 msgid ""
 "non-constant array new length must be specified directly, not by %<typedef%>"
 msgstr ""
 
-#: cp/init.c:3081
+#: cp/init.c:2943
 #, gcc-internal-format
 msgid ""
 "non-constant array new length must be specified without parentheses around "
 "the type-id"
 msgstr ""
 
-#: cp/init.c:3091
+#: cp/init.c:2953
 #, gcc-internal-format
 msgid "invalid type %<void%> for %<new%>"
 msgstr ""
 
-#: cp/init.c:3097
+#: cp/init.c:2959
 #, gcc-internal-format
 msgid ""
 "%<new%> of %<initializer_list%> does not extend the lifetime of the "
 "underlying array"
 msgstr ""
 
-#: cp/init.c:3139
+#: cp/init.c:3001
 #, gcc-internal-format
 msgid "uninitialized const in %<new%> of %q#T"
 msgstr ""
 
-#: cp/init.c:3283
+#: cp/init.c:3145
 #, gcc-internal-format
 msgid "no suitable %qD found in class %qT"
 msgstr ""
 
-#: cp/init.c:3290 cp/search.c:1024
+#: cp/init.c:3152 cp/search.c:1058
 #, gcc-internal-format
 msgid "request for member %qD is ambiguous"
 msgstr ""
 
-#: cp/init.c:3364
+#: cp/init.c:3226
 #, gcc-internal-format
 msgid "%<new%> of type %qT with extended alignment %d"
 msgstr ""
 
-#: cp/init.c:3367
+#: cp/init.c:3229
 #, gcc-internal-format
 msgid "uses %qD, which does not have an alignment parameter"
 msgstr ""
 
-#: cp/init.c:3370
+#: cp/init.c:3232
 #, gcc-internal-format
 msgid "use %<-faligned-new%> to enable C++17 over-aligned new support"
 msgstr ""
 
-#: cp/init.c:3565
+#: cp/init.c:3429
 #, gcc-internal-format
 msgid "parenthesized initializer in array new"
 msgstr ""
 
-#: cp/init.c:3859
+#: cp/init.c:3722
 #, gcc-internal-format
 msgid "size in array new must have integral type"
 msgstr ""
 
-#: cp/init.c:3888
+#: cp/init.c:3751
 #, gcc-internal-format
 msgid "new cannot be applied to a reference type"
 msgstr ""
 
-#: cp/init.c:3897
+#: cp/init.c:3760
 #, gcc-internal-format
 msgid "new cannot be applied to a function type"
 msgstr ""
 
-#: cp/init.c:3972
+#: cp/init.c:3879
 #, gcc-internal-format
 msgid "possible problem detected in invocation of operator %<delete []%>"
 msgstr ""
 
-#: cp/init.c:3976
+#: cp/init.c:3883
 #, 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.c:4527
+#: cp/init.c:4430
 #, gcc-internal-format
 msgid "initializer ends prematurely"
 msgstr ""
 
-#: cp/init.c:4833
+#: cp/init.c:4736
 #, gcc-internal-format
 msgid "unknown array size in delete"
 msgstr ""
 
-#: cp/init.c:4867
+#: cp/init.c:4770
 #, gcc-internal-format
 msgid "possible problem detected in invocation of %<operator delete%>"
 msgstr ""
 
-#: cp/init.c:4872
+#: cp/init.c:4775
 #, 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.c:4887
+#: cp/init.c:4790
 #, gcc-internal-format
 msgid ""
 "deleting object of abstract class type %qT which has non-virtual destructor "
 "will cause undefined behavior"
 msgstr ""
 
-#: cp/init.c:4892
+#: cp/init.c:4795
 #, gcc-internal-format
 msgid ""
 "deleting object of polymorphic class type %qT which has non-virtual "
 "destructor might cause undefined behavior"
 msgstr ""
 
-#: cp/init.c:5202
+#: cp/init.c:5099
 #, gcc-internal-format
 msgid "type to vector delete is neither pointer or array type"
 msgstr ""
 
-#: cp/lambda.c:529
+#: cp/lambda.c:528
 #, gcc-internal-format
 msgid "array of runtime bound cannot be captured by copy, only by reference"
 msgstr ""
 
-#: cp/lambda.c:544
+#: cp/lambda.c:543
 #, gcc-internal-format
 msgid ""
 "capture of variably-modified type %qT that is not an N3639 array of runtime "
 "bound"
 msgstr ""
 
-#: cp/lambda.c:548
+#: cp/lambda.c:547
 #, gcc-internal-format
 msgid "because the array element type %qT has variable size"
 msgstr ""
 
-#: cp/lambda.c:572
+#: cp/lambda.c:571
 #, gcc-internal-format
 msgid "cannot capture %qE by reference"
 msgstr ""
 
-#: cp/lambda.c:582
+#: cp/lambda.c:581
 #, gcc-internal-format
 msgid "capture by copy of incomplete type %qT"
 msgstr ""
 
-#: cp/lambda.c:634
+#: cp/lambda.c:633
 #, gcc-internal-format
 msgid "trying to capture %qD in instantiation of generic lambda"
 msgstr ""
 
-#: cp/lambda.c:710
+#: cp/lambda.c:709
 #, gcc-internal-format
 msgid "implicit capture of %qE via %<[=]%> is deprecated in C++20"
 msgstr ""
 
-#: cp/lambda.c:712
+#: cp/lambda.c:711
 #, gcc-internal-format
 msgid "add explicit %<this%> or %<*this%> capture"
 msgstr ""
 
-#: cp/lambda.c:826
+#: cp/lambda.c:825
 #, gcc-internal-format
 msgid "%<this%> was not captured for this lambda function"
 msgstr ""
 
-#: cp/lex.c:402
+#: cp/lex.c:604
 #, gcc-internal-format
 msgid "invalid %<#pragma %s%>"
 msgstr ""
 
-#: cp/lex.c:410
+#: cp/lex.c:612
 #, gcc-internal-format
 msgid "%<#pragma vtable%> no longer supported"
 msgstr ""
 
-#: cp/lex.c:482
+#: cp/lex.c:684
 #, gcc-internal-format
 msgid "%<#pragma implementation%> for %qs appears after file is included"
 msgstr ""
 
-#: cp/lex.c:510
+#: cp/lex.c:712
 #, gcc-internal-format
 msgid "%qD not defined"
 msgstr ""
 
-#: cp/lex.c:522
+#: cp/lex.c:724
 #, gcc-internal-format
 msgid "%qD was not declared in this scope; did you mean %qs?"
 msgstr ""
 
-#: cp/lex.c:526
+#: cp/lex.c:728
 #, gcc-internal-format
 msgid "%qD was not declared in this scope"
 msgstr ""
@@ -52919,2106 +54395,2312 @@ msgstr ""
 #. Note that we have the exact wording of the following message in
 #. the manual (trouble.texi, node "Name lookup"), so they need to
 #. be kept in synch.
-#: cp/lex.c:568
+#: cp/lex.c:770
 #, gcc-internal-format
 msgid ""
 "there are no arguments to %qD that depend on a template parameter, so a "
 "declaration of %qD must be available"
 msgstr ""
 
-#: cp/lex.c:577
+#: cp/lex.c:779
 #, gcc-internal-format
 msgid ""
 "(if you use %<-fpermissive%>, G++ will accept your code, but allowing the "
 "use of an undeclared name is deprecated)"
 msgstr ""
 
-#: cp/mangle.c:2318
+#: cp/mangle.c:2357
 #, gcc-internal-format
 msgid "mangling %<typeof%>, use %<decltype%> instead"
 msgstr ""
 
-#: cp/mangle.c:2322
+#: cp/mangle.c:2361
 #, gcc-internal-format
 msgid "mangling %<__underlying_type%>"
 msgstr ""
 
-#: cp/mangle.c:2629
+#: cp/mangle.c:2668
 #, gcc-internal-format
 msgid "mangling unknown fixed point type"
 msgstr ""
 
-#: cp/mangle.c:3301
+#: cp/mangle.c:3428
 #, gcc-internal-format
 msgid ""
 "use of built-in trait %qE in function signature; use library traits instead"
 msgstr ""
 
-#: cp/mangle.c:3306
+#: cp/mangle.c:3433
 #, gcc-internal-format, gfc-internal-format
 msgid "mangling %C"
 msgstr ""
 
-#: cp/mangle.c:3382
+#: cp/mangle.c:3509
 #, gcc-internal-format
 msgid "omitted middle operand to %<?:%> operand cannot be mangled"
 msgstr ""
 
-#: cp/mangle.c:3931
+#: cp/mangle.c:4074
 #, 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.c:3977
+#: cp/mangle.c:4120
 #, gcc-internal-format
 msgid ""
 "the mangled name of %qD changed between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)"
 msgstr ""
 
-#: cp/mangle.c:3983
+#: cp/mangle.c:4126
 #, gcc-internal-format
 msgid ""
 "the mangled name of %qD changes between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)"
 msgstr ""
 
-#: cp/mangle.c:4255
+#: cp/mangle.c:4398
 #, gcc-internal-format
 msgid ""
 "the mangled name of a thunk for %qD changes between %<-fabi-version=%d%> and "
 "%<-fabi-version=%d%>"
 msgstr ""
 
-#: cp/mangle.c:4260
+#: cp/mangle.c:4403
 #, gcc-internal-format
 msgid ""
 "the mangled name of %qD changes between %<-fabi-version=%d%> and %<-fabi-"
 "version=%d%>"
 msgstr ""
 
-#: cp/mangle.c:4265
+#: cp/mangle.c:4408
 #, gcc-internal-format
 msgid ""
 "the mangled name of the initialization guard variable for %qD changes "
 "between %<-fabi-version=%d%> and %<-fabi-version=%d%>"
 msgstr ""
 
-#: cp/method.c:835 cp/method.c:2032
+#: cp/method.c:855 cp/method.c:2214
 #, gcc-internal-format
 msgid "non-static const member %q#D, cannot use default assignment operator"
 msgstr ""
 
-#: cp/method.c:841 cp/method.c:2038
+#: cp/method.c:861 cp/method.c:2220
 #, gcc-internal-format
 msgid ""
 "non-static reference member %q#D, cannot use default assignment operator"
 msgstr ""
 
-#: cp/method.c:931
+#: cp/method.c:951
 #, gcc-internal-format
 msgid "%qD is not a static data member"
 msgstr ""
 
-#: cp/method.c:932
+#: cp/method.c:952
 #, gcc-internal-format
 msgid "determining value of %qs"
 msgstr ""
 
-#: cp/method.c:959
+#: cp/method.c:979
 #, gcc-internal-format
 msgid "forming type of %qs"
 msgstr ""
 
-#: cp/method.c:1103
+#: cp/method.c:1140
 #, gcc-internal-format
 msgid "defaulted %qD only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/method.c:1118
+#: cp/method.c:1155
 #, gcc-internal-format
 msgid "defaulted %qD must return %<bool%>"
 msgstr ""
 
-#: cp/method.c:1126
+#: cp/method.c:1163
 #, gcc-internal-format
 msgid "defaulted %qD must be %<const%>"
 msgstr ""
 
-#: cp/method.c:1131
+#: cp/method.c:1168
 #, gcc-internal-format
 msgid "defaulted %qD must not have %<&&%> ref-qualifier"
 msgstr ""
 
-#: cp/method.c:1158
+#: cp/method.c:1195
 #, gcc-internal-format
 msgid "defaulted %qD is not a friend of %qT"
 msgstr ""
 
-#: cp/method.c:1167
+#: cp/method.c:1204
 #, gcc-internal-format
 msgid "defaulted member %qD must have parameter type %<const %T&%>"
 msgstr ""
 
-#: cp/method.c:1170
+#: cp/method.c:1207
 #, gcc-internal-format
 msgid "defaulted %qD must have parameters of either type %<const %T&%> or %qT"
 msgstr ""
 
-#: cp/method.c:1173
+#: cp/method.c:1210
 #, gcc-internal-format
 msgid ""
 "defaulted %qD must have parameters of either type %<const %T&%> or %qT, not "
 "both"
 msgstr ""
 
-#: cp/method.c:1327
+#: cp/method.c:1366
 #, gcc-internal-format
 msgid "cannot default compare union %qT"
 msgstr ""
 
-#: cp/method.c:1364
+#: cp/method.c:1409
 #, gcc-internal-format
 msgid "cannot default compare reference member %qD"
 msgstr ""
 
-#: cp/method.c:1373
+#: cp/method.c:1418
 #, gcc-internal-format
 msgid "cannot default compare anonymous union member"
 msgstr ""
 
-#: cp/method.c:1397
+#: cp/method.c:1436
+#, gcc-internal-format
+msgid "cannot default compare flexible array member"
+msgstr ""
+
+#. Return type is auto, suggest changing it.
+#: cp/method.c:1487
+#, gcc-internal-format
+msgid ""
+"changing the return type from %qs to a comparison category type will allow "
+"the comparison to use %qs and %qs"
+msgstr ""
+
+#: cp/method.c:1512
 #, gcc-internal-format
 msgid ""
 "three-way comparison of %qD has type %qT, not a comparison category type"
 msgstr ""
 
-#: cp/method.c:1608
+#: cp/method.c:1522
+#, gcc-internal-format
+msgid "three-way comparison of %qD has type %qT, which does not convert to %qT"
+msgstr ""
+
+#: cp/method.c:1779
 #, gcc-internal-format
 msgid "synthesized method %qD first required here"
 msgstr ""
 
-#: cp/method.c:1977
+#: cp/method.c:2159
 #, gcc-internal-format
 msgid "union member %q+D with non-trivial %qD"
 msgstr ""
 
-#: cp/method.c:1988
+#: cp/method.c:2170
 #, gcc-internal-format
 msgid "defaulted destructor calls non-%<constexpr%> %qD"
 msgstr ""
 
-#: cp/method.c:1989
+#: cp/method.c:2171
 #, gcc-internal-format
 msgid "defaulted constructor calls non-%<constexpr%> %qD"
 msgstr ""
 
-#: cp/method.c:2055
+#: cp/method.c:2237
 #, gcc-internal-format
 msgid "initializer for %q#D is invalid"
 msgstr ""
 
-#: cp/method.c:2112
+#: cp/method.c:2294
 #, gcc-internal-format
 msgid "defaulted default constructor does not initialize %q#D"
 msgstr ""
 
-#: cp/method.c:2123
+#: cp/method.c:2305
 #, gcc-internal-format
 msgid "copying non-static data member %q#D of rvalue reference type"
 msgstr ""
 
 #. A trivial constructor doesn't have any NSDMI.
-#: cp/method.c:2330
+#: cp/method.c:2512
 #, gcc-internal-format
 msgid ""
 "defaulted default constructor does not initialize any non-static data member"
 msgstr ""
 
-#: cp/method.c:2373
+#: cp/method.c:2555
 #, gcc-internal-format
 msgid ""
 "defaulted move assignment for %qT calls a non-trivial move assignment "
 "operator for virtual base %qT"
 msgstr ""
 
-#: cp/method.c:2504
+#: cp/method.c:2686
 #, gcc-internal-format
 msgid "a lambda closure type has a deleted default constructor"
 msgstr ""
 
-#: cp/method.c:2507
+#: cp/method.c:2689
 #, gcc-internal-format
 msgid "a lambda closure type has a deleted copy assignment operator"
 msgstr ""
 
-#: cp/method.c:2516
+#: cp/method.c:2698
 #, gcc-internal-format
 msgid ""
 "%q#D is implicitly declared as deleted because %qT declares a move "
 "constructor or move assignment operator"
 msgstr ""
 
-#: cp/method.c:2527
+#: cp/method.c:2709
 #, gcc-internal-format
 msgid "%q#D inherits from multiple base subobjects"
 msgstr ""
 
-#: cp/method.c:2535 cp/method.c:2559
+#: cp/method.c:2717 cp/method.c:2741
 #, gcc-internal-format
 msgid ""
 "%q#D is implicitly deleted because the default definition would be ill-"
 "formed:"
 msgstr ""
 
-#: cp/method.c:2568
+#: cp/method.c:2750
 msgid ""
 "%q#F is implicitly deleted because its exception-specification does not "
 "match the implicit exception-specification %qX"
 msgstr ""
 
-#: cp/method.c:2954
+#: cp/method.c:3136
 #, gcc-internal-format
 msgid "defaulted declaration %q+D does not match the expected signature"
 msgstr ""
 
-#: cp/method.c:2957
+#: cp/method.c:3139
 #, gcc-internal-format
 msgid "expected signature: %qD"
 msgstr ""
 
-#: cp/method.c:2989
+#: cp/method.c:3171
 #, gcc-internal-format
 msgid ""
 "explicitly defaulted function %q+D cannot be declared %qs because the "
 "implicit declaration is not %qs:"
 msgstr ""
 
-#: cp/method.c:3009
+#: cp/method.c:3191
 #, gcc-internal-format
 msgid "a template cannot be defaulted"
 msgstr ""
 
-#: cp/method.c:3044
+#: cp/method.c:3226
 #, gcc-internal-format
 msgid "%qD cannot be defaulted"
 msgstr ""
 
-#: cp/method.c:3053
+#: cp/method.c:3235
 #, gcc-internal-format
 msgid "defaulted function %q+D with default argument"
 msgstr ""
 
-#: cp/name-lookup.c:2271
+#: cp/name-lookup.c:2732
 #, gcc-internal-format
 msgid "redeclaration of %q#D with different template parameters"
 msgstr ""
 
-#: cp/name-lookup.c:2277
+#: cp/name-lookup.c:2738
 #, gcc-internal-format
 msgid "%q#D conflicts with a previous declaration"
 msgstr ""
 
-#: cp/name-lookup.c:2434
+#: cp/name-lookup.c:2915
 #, gcc-internal-format
 msgid "%q#D hides constructor for %q#D"
 msgstr ""
 
-#: cp/name-lookup.c:2562
+#: cp/name-lookup.c:3064
 #, gcc-internal-format
 msgid "conflicting C language linkage declaration %q#D"
 msgstr ""
 
-#: cp/name-lookup.c:2567
+#: cp/name-lookup.c:3069
 #, gcc-internal-format
 msgid "due to different exception specifications"
 msgstr ""
 
-#: cp/name-lookup.c:2665
+#: cp/name-lookup.c:3167
 #, gcc-internal-format
 msgid "lambda parameter %qD previously declared as a capture"
 msgstr ""
 
-#: cp/name-lookup.c:2688
+#: cp/name-lookup.c:3190
 #, gcc-internal-format
 msgid "declaration of %q#D shadows a parameter"
 msgstr ""
 
-#: cp/name-lookup.c:2821
+#: cp/name-lookup.c:3323
 #, gcc-internal-format
 msgid "declaration of %qD shadows a member of %qT"
 msgstr ""
 
-#: cp/name-lookup.c:2975
+#: cp/name-lookup.c:3812
 #, gcc-internal-format
-msgid "local external declaration %q#D"
+msgid "friend declaration %qD in local class without prior local declaration"
 msgstr ""
 
-#: cp/name-lookup.c:2977
+#: cp/name-lookup.c:4309
 #, gcc-internal-format
-msgid "does not match previous declaration %q#D"
+msgid "%s %<%s(%E)%> %p %d"
 msgstr ""
 
-#: cp/name-lookup.c:3101
+#: cp/name-lookup.c:4312
 #, gcc-internal-format
-msgid "friend declaration %qD in local class without prior local declaration"
+msgid "%s %s %p %d"
 msgstr ""
 
-#: cp/name-lookup.c:3294
+#: cp/name-lookup.c:4962
 #, gcc-internal-format
-msgid "%s %<%s(%E)%> %p %d"
+msgid "%q#D does not have external linkage"
 msgstr ""
 
-#: cp/name-lookup.c:3297
+#: cp/name-lookup.c:4964 cp/parser.c:11125 cp/parser.c:11135
+#: cp/semantics.c:3718 cp/semantics.c:3730
 #, gcc-internal-format
-msgid "%s %s %p %d"
+msgid "%q#D declared here"
+msgstr ""
+
+#: cp/name-lookup.c:5706
+#, gcc-internal-format
+msgid "%<%T%s%D%> names destructor"
 msgstr ""
 
-#: cp/name-lookup.c:4615
+#: cp/name-lookup.c:5722
 #, gcc-internal-format
 msgid "using-declaration for non-member at class scope"
 msgstr ""
 
-#: cp/name-lookup.c:4623
+#: cp/name-lookup.c:5730
 #, gcc-internal-format
-msgid "using-declaration may not name enumerator %<%E::%D%>"
+msgid ""
+"%<using%> with enumeration scope %q#T only available with %<-std=c++20%> or "
+"%<-std=gnu++20%>"
 msgstr ""
 
-#: cp/name-lookup.c:4632
+#: cp/name-lookup.c:5746 cp/pt.c:18183
 #, gcc-internal-format
-msgid "using-declaration for member at non-class scope"
+msgid "%qT is not a class, namespace, or enumeration"
 msgstr ""
 
-#: cp/name-lookup.c:4639
+#: cp/name-lookup.c:5756
 #, gcc-internal-format
-msgid "%<%T::%D%> names destructor"
+msgid "non-member using-declaration names constructor of %qT"
 msgstr ""
 
-#: cp/name-lookup.c:4656
+#: cp/name-lookup.c:5767 cp/name-lookup.c:5825
 #, gcc-internal-format
-msgid "%<%T::%D%> names constructor in %qT"
+msgid "using-declaration for member at non-class scope"
+msgstr ""
+
+#: cp/name-lookup.c:5790
+#, gcc-internal-format
+msgid "%qT is not a direct base of %qT"
 msgstr ""
 
-#: cp/name-lookup.c:4694
+#: cp/name-lookup.c:5835
 #, gcc-internal-format
-msgid "cannot inherit constructors from indirect base %qT"
+msgid "did you mean %<using enum %T::%D%>?"
 msgstr ""
 
-#: cp/name-lookup.c:4711
+#: cp/name-lookup.c:5847
 #, gcc-internal-format
-msgid "%qD has not been declared in %qE"
+msgid "%qD has not been declared in %qD"
 msgstr ""
 
-#: cp/name-lookup.c:4727
+#: cp/name-lookup.c:5861
 #, gcc-internal-format
 msgid "using-declaration may not name namespace %qD"
 msgstr ""
 
-#: cp/name-lookup.c:4810
+#: cp/name-lookup.c:5872
+#, gcc-internal-format
+msgid "%<%T::%D%> names constructor in %qT"
+msgstr ""
+
+#: cp/name-lookup.c:5968
 #, gcc-internal-format
 msgid "declaration of %qD not in a namespace surrounding %qD"
 msgstr ""
 
-#: cp/name-lookup.c:4850
+#: cp/name-lookup.c:6009
 #, gcc-internal-format
 msgid "explicit qualification in declaration of %qD"
 msgstr ""
 
-#: cp/name-lookup.c:4902
+#: cp/name-lookup.c:6019
 #, gcc-internal-format
-msgid "%qD has not been declared within %qD"
+msgid "%qD should have been declared inside %qD"
 msgstr ""
 
-#: cp/name-lookup.c:4904
+#: cp/name-lookup.c:6072
 #, gcc-internal-format
-msgid "only here as a %<friend%>"
+msgid "%qD has not been declared within %qD"
 msgstr ""
 
-#: cp/name-lookup.c:4913
+#: cp/name-lookup.c:6074
 #, gcc-internal-format
-msgid "%qD should have been declared inside %qD"
+msgid "only here as a %<friend%>"
 msgstr ""
 
-#: cp/name-lookup.c:4961
+#: cp/name-lookup.c:6128
 #, gcc-internal-format
 msgid "%qD attribute requires a single NTBS argument"
 msgstr ""
 
-#: cp/name-lookup.c:4968
+#: cp/name-lookup.c:6135
 #, gcc-internal-format
 msgid ""
 "%qD attribute is meaningless since members of the anonymous namespace get "
 "local symbols"
 msgstr ""
 
-#: cp/name-lookup.c:4978 cp/name-lookup.c:5005
+#: cp/name-lookup.c:6145 cp/name-lookup.c:6172
 #, gcc-internal-format
 msgid "ignoring %qD attribute on anonymous namespace"
 msgstr ""
 
-#: cp/name-lookup.c:4984
+#: cp/name-lookup.c:6151
 #, gcc-internal-format
 msgid "ignoring %qD attribute on non-inline namespace"
 msgstr ""
 
-#: cp/name-lookup.c:5021 cp/name-lookup.c:7309
+#: cp/name-lookup.c:6188 cp/name-lookup.c:8731
 #, gcc-internal-format
 msgid "%qD attribute directive ignored"
 msgstr ""
 
-#: cp/name-lookup.c:5306
+#: cp/name-lookup.c:6550
 #, gcc-internal-format
 msgid "maximum limit of %d namespaces searched for %qE"
 msgstr ""
 
-#: cp/name-lookup.c:5358
+#: cp/name-lookup.c:6602
 #, gcc-internal-format
 msgid "suggested alternative:"
 msgid_plural "suggested alternatives:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/name-lookup.c:5364
+#: cp/name-lookup.c:6608
 #, gcc-internal-format
 msgid "  %qE"
 msgstr ""
 
-#: cp/name-lookup.c:5891
+#: cp/name-lookup.c:7135
 #, gcc-internal-format
 msgid ""
 "%<std::%s%> is defined in header %qs; did you forget to %<#include %s%>?"
 msgstr ""
 
-#: cp/name-lookup.c:5897
+#: cp/name-lookup.c:7141
 #, gcc-internal-format
 msgid "%<std::%s%> is only available from %s onwards"
 msgstr ""
 
-#: cp/name-lookup.c:6166
+#: cp/name-lookup.c:7577
 #, gcc-internal-format
 msgid "the macro %qs had not yet been defined"
 msgstr ""
 
-#: cp/name-lookup.c:6169
+#: cp/name-lookup.c:7580
 #, gcc-internal-format
 msgid "it was later defined here"
 msgstr ""
 
-#: cp/name-lookup.c:6926
+#: cp/name-lookup.c:8360
 #, gcc-internal-format
 msgid ""
 "declaration of %<std::initializer_list%> does not match %<#include "
 "<initializer_list>%>, isn%'t a template"
 msgstr ""
 
-#: cp/name-lookup.c:7303
+#: cp/name-lookup.c:8725
 #, gcc-internal-format
 msgid "%<strong%> using directive no longer supported"
 msgstr ""
 
-#: cp/name-lookup.c:7306
+#: cp/name-lookup.c:8728
 #, gcc-internal-format
 msgid "you can use an inline namespace instead"
 msgstr ""
 
-#: cp/name-lookup.c:7409
+#. We only allow depth 255.
+#: cp/name-lookup.c:8819
+#, gcc-internal-format, gfc-internal-format
+msgid "cannot nest more than %d namespaces"
+msgstr ""
+
+#: cp/name-lookup.c:8916
 #, gcc-internal-format
 msgid "%<namespace %E%> is ambiguous"
 msgstr ""
 
-#: cp/name-lookup.c:7425
+#: cp/name-lookup.c:8932
 #, gcc-internal-format
 msgid "namespace alias %qD not allowed here, assuming %qD"
 msgstr ""
 
-#. We only allow depth 255.
-#: cp/name-lookup.c:7445
-#, gcc-internal-format, gfc-internal-format
-msgid "cannot nest more than %d namespaces"
-msgstr ""
-
-#: cp/name-lookup.c:7480
+#: cp/name-lookup.c:9011
 #, gcc-internal-format
 msgid "inline namespace must be specified at initial definition"
 msgstr ""
 
-#: cp/name-lookup.c:7481
+#: cp/name-lookup.c:9012
 #, gcc-internal-format
 msgid "%qD defined here"
 msgstr ""
 
-#: cp/name-lookup.c:7554
+#: cp/name-lookup.c:9063
+#, gcc-internal-format
+msgid "%s namespace %qD conflicts with reachable definition"
+msgstr ""
+
+#: cp/name-lookup.c:9065
+#, gcc-internal-format, gfc-internal-format
+msgid "reachable %s definition here"
+msgstr ""
+
+#: cp/name-lookup.c:9145
 #, gcc-internal-format
 msgid "XXX entering %<pop_everything ()%>"
 msgstr ""
 
-#: cp/name-lookup.c:7563
+#: cp/name-lookup.c:9154
 #, gcc-internal-format
 msgid "XXX leaving %<pop_everything ()%>"
 msgstr ""
 
-#: cp/optimize.c:618
+#: cp/optimize.c:612
 #, gcc-internal-format
 msgid "making multiple clones of %qD"
 msgstr ""
 
-#: cp/parser.c:853
+#: cp/parser.c:897
 #, gcc-internal-format
 msgid "identifier %qE is a keyword in C++11"
 msgstr ""
 
-#: cp/parser.c:867
+#: cp/parser.c:911
 #, gcc-internal-format
 msgid "identifier %qE is a keyword in C++20"
 msgstr ""
 
-#: cp/parser.c:1333 cp/parser.c:1346
+#: cp/parser.c:1375 cp/parser.c:1388
 #, gcc-internal-format
 msgid "%<LEXER_DEBUGGING_ENABLED_P%> is not set to true"
 msgstr ""
 
-#: cp/parser.c:1371 cp/parser.c:41522
+#: cp/parser.c:1413 cp/parser.c:42622
 #, gcc-internal-format
 msgid ""
 "%<#pragma omp declare %s%> not immediately followed by function declaration "
 "or definition"
 msgstr ""
 
-#: cp/parser.c:2897
+#: cp/parser.c:2966
 #, gcc-internal-format
 msgid "%<#pragma%> is not allowed here"
 msgstr ""
 
-#: cp/parser.c:3025
+#: cp/parser.c:3095
 #, gcc-internal-format
 msgid "%<%E::%E%> has not been declared"
 msgstr ""
 
-#: cp/parser.c:3028
+#: cp/parser.c:3098
 #, gcc-internal-format
 msgid "%<::%E%> has not been declared"
 msgstr ""
 
-#: cp/parser.c:3031
+#: cp/parser.c:3101
 #, gcc-internal-format
 msgid "request for member %qE in non-class type %qT"
 msgstr ""
 
-#: cp/parser.c:3034 cp/parser.c:19350
+#: cp/parser.c:3104 cp/parser.c:19949
 #, gcc-internal-format
 msgid "%<%T::%E%> has not been declared"
 msgstr ""
 
-#: cp/parser.c:3044
+#: cp/parser.c:3114
 #, gcc-internal-format
 msgid "%<%E::%E%> is not a type"
 msgstr ""
 
-#: cp/parser.c:3048
+#: cp/parser.c:3118
 #, gcc-internal-format
 msgid "%<%E::%E%> is not a class or namespace"
 msgstr ""
 
-#: cp/parser.c:3053
+#: cp/parser.c:3123
 #, gcc-internal-format
 msgid "%<%E::%E%> is not a class, namespace, or enumeration"
 msgstr ""
 
-#: cp/parser.c:3066
+#: cp/parser.c:3136
 #, gcc-internal-format
 msgid "%<::%E%> is not a type"
 msgstr ""
 
-#: cp/parser.c:3069
+#: cp/parser.c:3139
 #, gcc-internal-format
 msgid "%<::%E%> is not a class or namespace"
 msgstr ""
 
-#: cp/parser.c:3073
+#: cp/parser.c:3143
 #, gcc-internal-format
 msgid "%<::%E%> is not a class, namespace, or enumeration"
 msgstr ""
 
-#: cp/parser.c:3085
+#: cp/parser.c:3155
 #, gcc-internal-format
 msgid "%qE is not a type"
 msgstr ""
 
-#: cp/parser.c:3088
+#: cp/parser.c:3158
 #, gcc-internal-format
 msgid "%qE is not a class or namespace"
 msgstr ""
 
-#: cp/parser.c:3092
+#: cp/parser.c:3162
 #, gcc-internal-format
 msgid "%qE is not a class, namespace, or enumeration"
 msgstr ""
 
-#: cp/parser.c:3156
+#: cp/parser.c:3226
 #, gcc-internal-format
 msgid "new types may not be defined in a return type"
 msgstr ""
 
-#: cp/parser.c:3158
+#: cp/parser.c:3228
 #, gcc-internal-format
 msgid "(perhaps a semicolon is missing after the definition of %qT)"
 msgstr ""
 
-#: cp/parser.c:3186
+#: cp/parser.c:3256
 #, gcc-internal-format
 msgid "%qE is not a class template"
 msgstr ""
 
-#: cp/parser.c:3188
+#: cp/parser.c:3258
 #, gcc-internal-format
 msgid "%qE is not a template"
 msgstr ""
 
-#: cp/parser.c:3191
+#: cp/parser.c:3261
 #, gcc-internal-format
 msgid "invalid template-id"
 msgstr ""
 
-#: cp/parser.c:3225
+#: cp/parser.c:3295
 #, gcc-internal-format
 msgid "ISO C++ forbids using a floating-point literal in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3229 cp/pt.c:19364
+#: cp/parser.c:3299 cp/pt.c:19679
 #, gcc-internal-format
 msgid ""
 "a cast to a type other than an integral or enumeration type cannot appear in "
 "a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3234
+#: cp/parser.c:3304
 #, gcc-internal-format
 msgid "%<typeid%> operator cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3238
+#: cp/parser.c:3308
 #, gcc-internal-format
 msgid "non-constant compound literals cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3242
+#: cp/parser.c:3312
 #, gcc-internal-format
 msgid "a function call cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3246
+#: cp/parser.c:3316
 #, gcc-internal-format
 msgid "an increment cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3250
+#: cp/parser.c:3320
 #, gcc-internal-format
 msgid "an decrement cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3254
+#: cp/parser.c:3324
 #, gcc-internal-format
 msgid "an array reference cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3258
+#: cp/parser.c:3328
 #, gcc-internal-format
 msgid "the address of a label cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3262
+#: cp/parser.c:3332
 #, gcc-internal-format
 msgid "calls to overloaded operators cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3266
+#: cp/parser.c:3336
 #, gcc-internal-format
 msgid "an assignment cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3269
+#: cp/parser.c:3339
 #, gcc-internal-format
 msgid "a comma operator cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3273
+#: cp/parser.c:3343
 #, gcc-internal-format
 msgid "a call to a constructor cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3277
+#: cp/parser.c:3347
 #, gcc-internal-format
 msgid "a transaction expression cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3323
+#: cp/parser.c:3393
 #, gcc-internal-format
 msgid "%qs cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/parser.c:3360
+#: cp/parser.c:3430
 #, gcc-internal-format
 msgid ""
 "class template argument deduction is only available with %<-std=c++17%> or "
 "%<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.c:3365
+#: cp/parser.c:3435
 #, gcc-internal-format
 msgid "invalid use of destructor %qD as a type"
 msgstr ""
 
 #. Something like 'unsigned A a;'
-#: cp/parser.c:3368
+#: cp/parser.c:3438
 #, gcc-internal-format
 msgid "invalid combination of multiple type-specifiers"
 msgstr ""
 
-#: cp/parser.c:3381
+#: cp/parser.c:3451
 #, gcc-internal-format
 msgid "%qE does not name a type; did you mean %qs?"
 msgstr ""
 
-#: cp/parser.c:3385
+#: cp/parser.c:3455
 #, gcc-internal-format
 msgid "%qE does not name a type"
 msgstr ""
 
-#: cp/parser.c:3394
+#: cp/parser.c:3464
 #, gcc-internal-format
 msgid ""
 "C++11 %<constexpr%> only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/parser.c:3397
+#: cp/parser.c:3467
 #, gcc-internal-format
 msgid ""
 "C++11 %<noexcept%> only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/parser.c:3402
+#: cp/parser.c:3473
+#, gcc-internal-format
+msgid "%qE only available with %<-fmodules-ts%>"
+msgstr ""
+
+#: cp/parser.c:3475
+#, gcc-internal-format
+msgid "%qE was not recognized as a module control-line"
+msgstr ""
+
+#: cp/parser.c:3481
 #, gcc-internal-format
 msgid ""
 "C++11 %<thread_local%> only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr ""
 
-#: cp/parser.c:3405
+#: cp/parser.c:3484
 #, gcc-internal-format
 msgid ""
 "C++20 %<constinit%> only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.c:3408
+#: cp/parser.c:3487
 #, gcc-internal-format
 msgid "%<concept%> only available with %<-std=c++20%> or %<-fconcepts%>"
 msgstr ""
 
-#: cp/parser.c:3411 cp/parser.c:27793
+#: cp/parser.c:3490 cp/parser.c:28654
 #, gcc-internal-format
 msgid "%<requires%> only available with %<-std=c++20%> or %<-fconcepts%>"
 msgstr ""
 
-#: cp/parser.c:3433
+#: cp/parser.c:3512
 #, gcc-internal-format
 msgid "(perhaps %<typename %T::%E%> was intended)"
 msgstr ""
 
-#: cp/parser.c:3461 cp/parser.c:3473
+#: cp/parser.c:3540 cp/parser.c:3552
 #, gcc-internal-format
 msgid "%qE in namespace %qE does not name a template type; did you mean %qs?"
 msgstr ""
 
-#: cp/parser.c:3466 cp/parser.c:3478
+#: cp/parser.c:3545 cp/parser.c:3557
 #, gcc-internal-format
 msgid "%qE in namespace %qE does not name a template type"
 msgstr ""
 
-#: cp/parser.c:3486
+#: cp/parser.c:3565
 #, gcc-internal-format
 msgid "%qE in namespace %qE does not name a type; did you mean %qs?"
 msgstr ""
 
-#: cp/parser.c:3491
+#: cp/parser.c:3570
 #, gcc-internal-format
 msgid "%qE in namespace %qE does not name a type"
 msgstr ""
 
-#: cp/parser.c:3502
+#: cp/parser.c:3581
 #, gcc-internal-format
 msgid "%<%T::%E%> names the constructor, not the type"
 msgstr ""
 
-#: cp/parser.c:3505
+#: cp/parser.c:3584
 #, gcc-internal-format
 msgid "and %qT has no template constructors"
 msgstr ""
 
-#: cp/parser.c:3515
+#: cp/parser.c:3594
 #, gcc-internal-format
 msgid ""
 "need %<typename%> before %<%T::%D::%E%> because %<%T::%D%> is a dependent "
 "scope"
 msgstr ""
 
-#: cp/parser.c:3523
+#: cp/parser.c:3602
 #, gcc-internal-format
 msgid "need %<typename%> before %<%T::%E%> because %qT is a dependent scope"
 msgstr ""
 
-#: cp/parser.c:3535 cp/parser.c:3539
+#: cp/parser.c:3614 cp/parser.c:3618
 #, gcc-internal-format
 msgid "%qE in %q#T does not name a template type"
 msgstr ""
 
-#: cp/parser.c:3543
+#: cp/parser.c:3622
 #, gcc-internal-format
 msgid "%qE in %q#T does not name a type"
 msgstr ""
 
-#: cp/parser.c:4187
+#: cp/parser.c:4290
 #, gcc-internal-format
 msgid "expected string-literal"
 msgstr ""
 
-#: cp/parser.c:4253
+#: cp/parser.c:4356
 #, gcc-internal-format
 msgid ""
 "inconsistent user-defined literal suffixes %qD and %qD in string literal"
 msgstr ""
 
-#: cp/parser.c:4439
+#: cp/parser.c:4542
 #, gcc-internal-format
 msgid "unable to find character literal operator %qD with %qT argument"
 msgstr ""
 
-#: cp/parser.c:4544
+#: cp/parser.c:4647
 #, gcc-internal-format
 msgid "integer literal exceeds range of %qT type"
 msgstr ""
 
-#: cp/parser.c:4551
+#: cp/parser.c:4654
 #, gcc-internal-format
 msgid "floating literal exceeds range of %qT type"
 msgstr ""
 
-#: cp/parser.c:4555
+#: cp/parser.c:4658
 #, gcc-internal-format
 msgid "floating literal truncated to zero"
 msgstr ""
 
-#: cp/parser.c:4584
+#: cp/parser.c:4687
 #, gcc-internal-format
 msgid "failed to translate literal to execution character set %qT"
 msgstr ""
 
-#: cp/parser.c:4618
+#: cp/parser.c:4721
 #, gcc-internal-format
 msgid "unable to find numeric literal operator %qD"
 msgstr ""
 
-#: cp/parser.c:4624
+#: cp/parser.c:4727
 #, gcc-internal-format
 msgid ""
 "add %<using namespace std::complex_literals%> (from %<<complex>%>) to enable "
 "the C++14 user-defined literal suffixes"
 msgstr ""
 
-#: cp/parser.c:4628
+#: cp/parser.c:4731
 #, gcc-internal-format
 msgid "or use %<j%> instead of %<i%> for the GNU built-in suffix"
 msgstr ""
 
-#: cp/parser.c:4632
+#: cp/parser.c:4735
 #, gcc-internal-format
 msgid "use %<-fext-numeric-literals%> to enable more built-in suffixes"
 msgstr ""
 
-#: cp/parser.c:4717
+#: cp/parser.c:4820
 #, gcc-internal-format
 msgid "unable to find string literal operator %qD with %qT, %qT arguments"
 msgstr ""
 
-#: cp/parser.c:4773 cp/parser.c:13690
+#: cp/parser.c:4914
+#, gcc-internal-format
+msgid "global module fragment contents must be from preprocessor inclusion"
+msgstr ""
+
+#: cp/parser.c:4929 cp/parser.c:14273
 #, gcc-internal-format
 msgid "expected declaration"
 msgstr ""
 
-#: cp/parser.c:5132 cp/parser.c:5147
+#: cp/parser.c:5290 cp/parser.c:5305
 #, gcc-internal-format
 msgid "expected binary operator"
 msgstr ""
 
-#: cp/parser.c:5153
+#: cp/parser.c:5311
 #, gcc-internal-format
 msgid "expected ..."
 msgstr ""
 
-#: cp/parser.c:5165
+#: cp/parser.c:5323
 #, gcc-internal-format
 msgid "binary expression in operand of fold-expression"
 msgstr ""
 
-#: cp/parser.c:5170
+#: cp/parser.c:5328
 #, gcc-internal-format
 msgid "conditional expression in operand of fold-expression"
 msgstr ""
 
-#: cp/parser.c:5178
+#: cp/parser.c:5336
 #, gcc-internal-format
 msgid "mismatched operator in fold-expression"
 msgstr ""
 
-#: cp/parser.c:5282
+#: cp/parser.c:5440
 #, gcc-internal-format
 msgid "fixed-point types not supported in C++"
 msgstr ""
 
-#: cp/parser.c:5365
+#: cp/parser.c:5523
 #, gcc-internal-format
 msgid "ISO C++ forbids braced-groups within expressions"
 msgstr ""
 
-#: cp/parser.c:5377
+#: cp/parser.c:5535
 #, gcc-internal-format
 msgid ""
 "statement-expressions are not allowed outside functions nor in template-"
 "argument lists"
 msgstr ""
 
-#: cp/parser.c:5416
+#: cp/parser.c:5574
 #, gcc-internal-format
 msgid "fold-expressions only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.c:5474 cp/parser.c:5651 cp/parser.c:5826 cp/semantics.c:3818
+#: cp/parser.c:5632 cp/parser.c:5811 cp/parser.c:5989 cp/semantics.c:3872
 #, gcc-internal-format
 msgid "expected primary-expression"
 msgstr ""
 
-#: cp/parser.c:5504
+#: cp/parser.c:5662
 #, gcc-internal-format
 msgid "%<this%> may not be used in this context"
 msgstr ""
 
-#: cp/parser.c:5645
+#: cp/parser.c:5805
 #, gcc-internal-format
 msgid "a template declaration cannot appear at block scope"
 msgstr ""
 
-#: cp/parser.c:5788
-#, gcc-internal-format
-msgid "local variable %qD may not appear in this context"
-msgstr ""
-
-#: cp/parser.c:5982
+#: cp/parser.c:6145
 #, gcc-internal-format
 msgid "expected id-expression"
 msgstr ""
 
-#: cp/parser.c:6113
+#: cp/parser.c:6276
 #, gcc-internal-format
 msgid "scope %qT before %<~%> is not a class-name"
 msgstr ""
 
-#: cp/parser.c:6123
+#: cp/parser.c:6286
 #, gcc-internal-format
 msgid "%<template%> keyword not permitted in destructor name"
 msgstr ""
 
-#: cp/parser.c:6160 cp/parser.c:8153
+#: cp/parser.c:6323 cp/parser.c:8342
 #, gcc-internal-format
 msgid "%<~auto%> only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/parser.c:6171
+#: cp/parser.c:6334
 #, gcc-internal-format
 msgid "template-id not allowed for destructor"
 msgstr ""
 
-#: cp/parser.c:6280
+#: cp/parser.c:6443
 #, gcc-internal-format
 msgid "declaration of %<~%T%> as member of %qT"
 msgstr ""
 
-#: cp/parser.c:6295
+#: cp/parser.c:6458
 #, gcc-internal-format
 msgid "typedef-name %qD used as destructor declarator"
 msgstr ""
 
-#: cp/parser.c:6331 cp/parser.c:21528
+#: cp/parser.c:6494 cp/parser.c:22348
 #, gcc-internal-format
 msgid "expected unqualified-id"
 msgstr ""
 
-#: cp/parser.c:6358 cp/typeck.c:2823 cp/typeck.c:2826 cp/typeck.c:2843
+#: cp/parser.c:6521 cp/typeck.c:2836 cp/typeck.c:2839 cp/typeck.c:2856
 #, gcc-internal-format
 msgid "%qD is not a template"
 msgstr ""
 
-#: cp/parser.c:6467
+#: cp/parser.c:6630
 #, gcc-internal-format
 msgid "found %<:%> in nested-name-specifier, expected %<::%>"
 msgstr ""
 
-#: cp/parser.c:6547
+#: cp/parser.c:6710
 #, gcc-internal-format
 msgid "%<decltype%> evaluates to %qT, which is not a class or enumeration type"
 msgstr ""
 
-#: cp/parser.c:6574 cp/parser.c:6585
+#: cp/parser.c:6737 cp/parser.c:6748
 #, gcc-internal-format
 msgid "concept-id %qD in nested-name-specifier"
 msgstr ""
 
-#: cp/parser.c:6577
+#: cp/parser.c:6740
 #, gcc-internal-format
 msgid "function template-id %qD in nested-name-specifier"
 msgstr ""
 
-#: cp/parser.c:6591
+#: cp/parser.c:6754
 #, gcc-internal-format
 msgid "variable template-id %qD in nested-name-specifier"
 msgstr ""
 
-#: cp/parser.c:6765
+#: cp/parser.c:6928
 #, gcc-internal-format
 msgid "expected nested-name-specifier"
 msgstr ""
 
-#: cp/parser.c:6972 cp/parser.c:9390
+#: cp/parser.c:7135 cp/parser.c:9587
 #, gcc-internal-format
 msgid "types may not be defined in casts"
 msgstr ""
 
-#: cp/parser.c:7061
+#: cp/parser.c:7224
 #, gcc-internal-format
 msgid "types may not be defined in a %<typeid%> expression"
 msgstr ""
 
-#: cp/parser.c:7153
+#: cp/parser.c:7316
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_addressof%>"
 msgstr ""
 
-#: cp/parser.c:7165 cp/pt.c:19987
+#: cp/parser.c:7328 cp/pt.c:20323
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_launder%>"
 msgstr ""
 
-#: cp/parser.c:7285
+#: cp/parser.c:7474
 #, gcc-internal-format
 msgid "ISO C++ forbids compound-literals"
 msgstr ""
 
-#: cp/parser.c:7344
+#: cp/parser.c:7533
 #, gcc-internal-format
 msgid "two consecutive %<[%> shall only introduce an attribute"
 msgstr ""
 
-#: cp/parser.c:7891 cp/typeck.c:2711
+#: cp/parser.c:8080 cp/typeck.c:2724
 #, gcc-internal-format
 msgid "invalid use of %qD"
 msgstr ""
 
-#: cp/parser.c:7900
+#: cp/parser.c:8089
 #, gcc-internal-format
 msgid "%<%D::%D%> is not a class member"
 msgstr ""
 
-#: cp/parser.c:8205
+#: cp/parser.c:8394
 #, gcc-internal-format
 msgid "non-scalar type"
 msgstr ""
 
-#: cp/parser.c:8315
+#: cp/parser.c:8504
 #, gcc-internal-format
 msgid "ISO C++ does not allow %<alignof%> with a non-type"
 msgstr ""
 
-#: cp/parser.c:8410
+#: cp/parser.c:8599
 #, gcc-internal-format
 msgid "types may not be defined in %<noexcept%> expressions"
 msgstr ""
 
-#: cp/parser.c:8684 cp/parser.c:30259
+#: cp/parser.c:8873 cp/parser.c:31133
 #, gcc-internal-format
 msgid "types may not be defined in %qs expressions"
 msgstr ""
 
-#: cp/parser.c:8749
+#: cp/parser.c:8938
 #, gcc-internal-format
 msgid "%<__builtin_has_attribute%> with dependent argument not supported yet"
 msgstr ""
 
-#: cp/parser.c:8835
+#: cp/parser.c:9024
 #, gcc-internal-format
 msgid "types may not be defined in a new-expression"
 msgstr ""
 
-#: cp/parser.c:8851
+#: cp/parser.c:9040
 #, gcc-internal-format
 msgid "array bound forbidden after parenthesized type-id"
 msgstr ""
 
-#: cp/parser.c:8853
+#: cp/parser.c:9042
 #, gcc-internal-format
 msgid "try removing the parentheses around the type-id"
 msgstr ""
 
-#: cp/parser.c:8885
+#: cp/parser.c:9074
 #, gcc-internal-format
 msgid ""
 "initialization of new-expression for type %<auto%> requires exactly one "
 "element"
 msgstr ""
 
-#: cp/parser.c:8930
+#: cp/parser.c:9119
 #, gcc-internal-format
 msgid "expected expression-list or type-id"
 msgstr ""
 
-#: cp/parser.c:8959
+#: cp/parser.c:9148
 #, gcc-internal-format
 msgid "types may not be defined in a new-type-id"
 msgstr ""
 
-#: cp/parser.c:9088
+#: cp/parser.c:9283
 #, gcc-internal-format
 msgid "expression in new-declarator must have integral or enumeration type"
 msgstr ""
 
-#: cp/parser.c:9495
+#: cp/parser.c:9692
 #, gcc-internal-format
 msgid "use of old-style cast to %q#T"
 msgstr ""
 
-#: cp/parser.c:9644
+#: cp/parser.c:9841
 #, gcc-internal-format
 msgid "%<>>%> operator is treated as two right angle brackets in C++11"
 msgstr ""
 
-#: cp/parser.c:9647
+#: cp/parser.c:9844
 #, gcc-internal-format
 msgid "suggest parentheses around %<>>%> expression"
 msgstr ""
 
-#: cp/parser.c:9855
+#: cp/parser.c:10052
 #, gcc-internal-format
 msgid "ISO C++ does not allow %<?:%> with omitted middle operand"
 msgstr ""
 
-#: cp/parser.c:10144
+#: cp/parser.c:10341
 #, gcc-internal-format
 msgid "top-level comma expression in array subscript is deprecated"
 msgstr ""
 
-#: cp/parser.c:10294
+#: cp/parser.c:10491
 #, gcc-internal-format
 msgid "types may not be defined within %<__builtin_offsetof%>"
 msgstr ""
 
-#: cp/parser.c:10583
+#: cp/parser.c:10790
 #, gcc-internal-format
 msgid ""
 "lambda-expression in unevaluated context only available with %<-std=c++20%> "
 "or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.c:10593
+#: cp/parser.c:10800
 #, gcc-internal-format
 msgid ""
 "lambda-expression in template-argument only available with %<-std=c++20%> or "
 "%<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.c:10745
+#: cp/parser.c:10952
 #, gcc-internal-format
 msgid "non-local lambda expression cannot have a capture-default"
 msgstr ""
 
-#: cp/parser.c:10767
+#: cp/parser.c:10974
 #, gcc-internal-format
 msgid "expected end of capture-list"
 msgstr ""
 
-#: cp/parser.c:10782
+#: cp/parser.c:10989
 #, gcc-internal-format
 msgid ""
 "explicit by-copy capture of %<this%> redundant with by-copy capture default"
 msgstr ""
 
-#: cp/parser.c:10787 cp/parser.c:10808 cp/parser.c:11000
+#: cp/parser.c:10994 cp/parser.c:11015 cp/parser.c:11207
 #, gcc-internal-format
 msgid "already captured %qD in lambda expression"
 msgstr ""
 
-#: cp/parser.c:10802
+#: cp/parser.c:11009
 #, gcc-internal-format
 msgid ""
 "%<*this%> capture only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.c:10822
+#: cp/parser.c:11029
 #, gcc-internal-format
 msgid "%<this%> cannot be captured by reference"
 msgstr ""
 
-#: cp/parser.c:10841
+#: cp/parser.c:11048
 #, gcc-internal-format
 msgid ""
 "pack init-capture only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.c:10852
+#: cp/parser.c:11059
 #, gcc-internal-format
 msgid "%<&%> should come before %<...%>"
 msgstr ""
 
-#: cp/parser.c:10883
+#: cp/parser.c:11090
 #, gcc-internal-format
 msgid ""
 "lambda capture initializers only available with %<-std=c++14%> or %<-std=gnu+"
 "+14%>"
 msgstr ""
 
-#: cp/parser.c:10890
+#: cp/parser.c:11097
 #, gcc-internal-format
 msgid "empty initializer for lambda init-capture"
 msgstr ""
 
-#: cp/parser.c:10914
+#: cp/parser.c:11121
 #, gcc-internal-format
 msgid "capture of non-variable %qE"
 msgstr ""
 
-#: cp/parser.c:10918 cp/parser.c:10928 cp/semantics.c:3664 cp/semantics.c:3676
-#, gcc-internal-format
-msgid "%q#D declared here"
-msgstr ""
-
-#: cp/parser.c:10924
+#: cp/parser.c:11131
 #, gcc-internal-format
 msgid "capture of variable %qD with non-automatic storage duration"
 msgstr ""
 
-#: cp/parser.c:10962
+#: cp/parser.c:11169
 #, gcc-internal-format
 msgid "too many %<...%> in lambda capture"
 msgstr ""
 
-#: cp/parser.c:10973
+#: cp/parser.c:11180
 #, gcc-internal-format
 msgid "explicit by-copy capture of %qD redundant with by-copy capture default"
 msgstr ""
 
-#: cp/parser.c:10978
+#: cp/parser.c:11185
 #, gcc-internal-format
 msgid ""
 "explicit by-reference capture of %qD redundant with by-reference capture "
 "default"
 msgstr ""
 
-#: cp/parser.c:11057
+#: cp/parser.c:11262
 #, gcc-internal-format
 msgid ""
 "lambda templates are only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/parser.c:11061
+#: cp/parser.c:11266
 #, gcc-internal-format
 msgid ""
 "lambda templates are only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.c:11129
+#: cp/parser.c:11334
 #, gcc-internal-format
 msgid "default argument specified for lambda parameter"
 msgstr ""
 
-#: cp/parser.c:11147
+#: cp/parser.c:11352
 #, gcc-internal-format
 msgid "duplicate %<mutable%>"
 msgstr ""
 
-#: cp/parser.c:11198
+#: cp/parser.c:11401
 #, gcc-internal-format
 msgid ""
 "%<constexpr%> lambda only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.c:11586 cp/parser.c:11787
+#: cp/parser.c:11790 cp/parser.c:11991
 #, gcc-internal-format
 msgid "attributes at the beginning of statement are ignored"
 msgstr ""
 
-#: cp/parser.c:11626
+#: cp/parser.c:11830
 #, gcc-internal-format
 msgid "expected labeled-statement"
 msgstr ""
 
-#: cp/parser.c:11675
+#: cp/parser.c:11879
 #, gcc-internal-format
 msgid "case label %qE not within a switch statement"
 msgstr ""
 
-#: cp/parser.c:11794
+#: cp/parser.c:11998
 #, gcc-internal-format
 msgid "need %<typename%> before %qE because %qT is a dependent scope"
 msgstr ""
 
-#: cp/parser.c:11803
+#: cp/parser.c:12007
 #, gcc-internal-format
 msgid "%<%T::%D%> names the constructor, not the type"
 msgstr ""
 
-#: cp/parser.c:11851
+#: cp/parser.c:12055
 #, gcc-internal-format
 msgid "compound-statement in %<constexpr%> function"
 msgstr ""
 
-#: cp/parser.c:12016
+#: cp/parser.c:12220
 #, gcc-internal-format
 msgid "%<if constexpr%> only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.c:12043
+#: cp/parser.c:12247
 #, gcc-internal-format
 msgid ""
 "init-statement in selection statements only available with %<-std=c++17%> or "
 "%<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.c:12220 cp/parser.c:30743
+#: cp/parser.c:12424 cp/parser.c:31617
 #, gcc-internal-format
 msgid "expected selection-statement"
 msgstr ""
 
-#: cp/parser.c:12261
+#: cp/parser.c:12465
 #, gcc-internal-format
 msgid "condition declares an array"
 msgstr ""
 
-#: cp/parser.c:12263
+#: cp/parser.c:12467
 #, gcc-internal-format
 msgid "condition declares a function"
 msgstr ""
 
-#: cp/parser.c:12303
+#: cp/parser.c:12507
 #, gcc-internal-format
 msgid "types may not be defined in conditions"
 msgstr ""
 
 #. Anything else is an error.
-#: cp/parser.c:12384 cp/parser.c:20825 cp/parser.c:23261
+#: cp/parser.c:12588 cp/parser.c:21640 cp/parser.c:24109
 #, gcc-internal-format
 msgid "expected initializer"
 msgstr ""
 
-#: cp/parser.c:12766
+#: cp/parser.c:12872
+#, gcc-internal-format
+msgid ""
+"loop variable %qD of type %qT binds to a temporary constructed from type %qT"
+msgstr ""
+
+#. rval
+#: cp/parser.c:12879
+#, gcc-internal-format
+msgid ""
+"use non-reference type %qT to make the copy explicit or %qT to prevent "
+"copying"
+msgstr ""
+
+#: cp/parser.c:12904
+#, gcc-internal-format
+msgid "loop variable %qD creates a copy from type %qT"
+msgstr ""
+
+#: cp/parser.c:12909
+#, gcc-internal-format
+msgid "use reference type to prevent copying"
+msgstr ""
+
+#: cp/parser.c:13052
 #, gcc-internal-format
 msgid "range-based %<for%> expression of type %qT has incomplete type"
 msgstr ""
 
-#: cp/parser.c:12850
+#: cp/parser.c:13136
 #, gcc-internal-format
 msgid ""
 "inconsistent begin/end types in range-based %<for%> statement: %qT and %qT"
 msgstr ""
 
-#: cp/parser.c:12993 cp/parser.c:30746
+#: cp/parser.c:13279 cp/parser.c:31620
 #, gcc-internal-format
 msgid "expected iteration-statement"
 msgstr ""
 
-#: cp/parser.c:13039
+#: cp/parser.c:13325
 #, gcc-internal-format
 msgid ""
 "range-based %<for%> loops with initializer only available with %<-std=c+"
 "+20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.c:13063
+#: cp/parser.c:13349
 #, gcc-internal-format
 msgid ""
 "range-based %<for%> loops only available with %<-std=c++11%> or %<-std=gnu+"
 "+11%>"
 msgstr ""
 
-#: cp/parser.c:13194
+#: cp/parser.c:13480
 #, gcc-internal-format
 msgid "%<goto%> in %<constexpr%> function"
 msgstr ""
 
 #. Issue a warning about this use of a GNU extension.
-#: cp/parser.c:13202
+#: cp/parser.c:13488
 #, gcc-internal-format
 msgid "ISO C++ forbids computed gotos"
 msgstr ""
 
-#: cp/parser.c:13215 cp/parser.c:30749
+#: cp/parser.c:13501 cp/parser.c:31623
 #, gcc-internal-format
 msgid "expected jump-statement"
 msgstr ""
 
-#: cp/parser.c:13522 cp/parser.c:25051
+#: cp/parser.c:13678
+#, gcc-internal-format
+msgid "expected module-name"
+msgstr ""
+
+#: cp/parser.c:13732
+#, gcc-internal-format
+msgid ""
+"private module fragment only permitted in purview of module interface or "
+"partition"
+msgstr ""
+
+#: cp/parser.c:13737
+#, gcc-internal-format
+msgid "private module fragment"
+msgstr ""
+
+#. Neither the first declaration, nor in a GMF.
+#: cp/parser.c:13743
+#, gcc-internal-format
+msgid ""
+"module-declaration only permitted as first declaration, or ending a global "
+"module fragment"
+msgstr ""
+
+#: cp/parser.c:13780
+#, gcc-internal-format
+msgid "post-module-declaration imports must be contiguous"
+msgstr ""
+
+#: cp/parser.c:13783
+#, gcc-internal-format
+msgid ""
+"perhaps insert a line break, or other disambiguation, to prevent this being "
+"considered a module control-line"
+msgstr ""
+
+#: cp/parser.c:13791
+#, gcc-internal-format
+msgid "import-declaration must be at global scope"
+msgstr ""
+
+#: cp/parser.c:13804
+#, gcc-internal-format
+msgid "import cannot appear directly in a linkage-specification"
+msgstr ""
+
+#: cp/parser.c:13812
+#, gcc-internal-format
+msgid "post-module-declaration imports must not be include-translated"
+msgstr ""
+
+#: cp/parser.c:13817
+#, gcc-internal-format
+msgid "post-module-declaration imports must not be from header inclusion"
+msgstr ""
+
+#: cp/parser.c:13837
+#, gcc-internal-format
+msgid "%qE may only occur after a module interface declaration"
+msgstr ""
+
+#: cp/parser.c:13845
+#, gcc-internal-format
+msgid "%qE may only occur once in an export declaration"
+msgstr ""
+
+#: cp/parser.c:13866
+#, gcc-internal-format
+msgid "%<export%> not part of following module-directive"
+msgstr ""
+
+#: cp/parser.c:13968
+#, gcc-internal-format
+msgid "attributes are not permitted in this position"
+msgstr ""
+
+#: cp/parser.c:13972
+#, gcc-internal-format
+msgid "attributes may be inserted here"
+msgstr ""
+
+#: cp/parser.c:14103 cp/parser.c:25912
 #, gcc-internal-format
 msgid "extra %<;%>"
 msgstr ""
 
-#: cp/parser.c:13613
+#: cp/parser.c:14196
 #, gcc-internal-format
 msgid "%<__label__%> not at the beginning of a block"
 msgstr ""
 
-#: cp/parser.c:13828
+#: cp/parser.c:14411
 #, gcc-internal-format
 msgid ""
 "non-variable %qD in declaration with more than one declarator with "
 "placeholder type"
 msgstr ""
 
-#: cp/parser.c:13848
+#: cp/parser.c:14431
 #, gcc-internal-format
 msgid "inconsistent deduction for %qT: %qT and then %qT"
 msgstr ""
 
-#: cp/parser.c:13869
+#: cp/parser.c:14452
 #, gcc-internal-format
 msgid "mixing declarations and function-definitions is forbidden"
 msgstr ""
 
-#: cp/parser.c:13893
+#: cp/parser.c:14476
 #, gcc-internal-format
 msgid "types may not be defined in a for-range-declaration"
 msgstr ""
 
-#: cp/parser.c:13948
+#: cp/parser.c:14531
 #, gcc-internal-format
 msgid "initializer in range-based %<for%> loop"
 msgstr ""
 
-#: cp/parser.c:13951
+#: cp/parser.c:14534
 #, gcc-internal-format
 msgid "multiple declarations in range-based %<for%> loop"
 msgstr ""
 
-#: cp/parser.c:14002
+#: cp/parser.c:14585
 #, gcc-internal-format
 msgid ""
 "structured bindings only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.c:14054
+#: cp/parser.c:14637
 #, gcc-internal-format
 msgid "empty structured binding declaration"
 msgstr ""
 
-#: cp/parser.c:14072
+#: cp/parser.c:14655
 #, gcc-internal-format
 msgid "invalid initializer for structured binding declaration"
 msgstr ""
 
-#: cp/parser.c:14244
+#: cp/parser.c:14824
 #, gcc-internal-format
 msgid "%<friend%> used outside of class"
 msgstr ""
 
-#: cp/parser.c:14283
+#: cp/parser.c:14863
 #, gcc-internal-format
 msgid "the %<bool%> keyword is not allowed in a C++20 concept definition"
 msgstr ""
 
-#: cp/parser.c:14286
+#: cp/parser.c:14866
 #, gcc-internal-format
 msgid "C++20 concept definition syntax is %<concept <name> = <expr>%>"
 msgstr ""
 
-#: cp/parser.c:14353
+#: cp/parser.c:14933
 #, gcc-internal-format
 msgid "%<auto%> changes meaning in C++11; please remove it"
 msgstr ""
 
-#: cp/parser.c:14389
+#: cp/parser.c:14969
 #, gcc-internal-format
 msgid "%<decl-specifier%> invalid in condition"
 msgstr ""
 
-#: cp/parser.c:14396
+#: cp/parser.c:14976
 #, gcc-internal-format
 msgid "%qD invalid in lambda"
 msgstr ""
 
-#: cp/parser.c:14477
+#: cp/parser.c:15057
 #, gcc-internal-format
 msgid "type-specifier invalid in lambda"
 msgstr ""
 
-#: cp/parser.c:14496
+#: cp/parser.c:15076
 #, gcc-internal-format
 msgid "class definition may not be declared a friend"
 msgstr ""
 
-#: cp/parser.c:14569 cp/parser.c:25565
+#: cp/parser.c:15149 cp/parser.c:26427
 #, gcc-internal-format
 msgid "templates may not be %<virtual%>"
 msgstr ""
 
-#: cp/parser.c:14588
+#: cp/parser.c:15168
 #, gcc-internal-format
 msgid "types may not be defined in explicit-specifier"
 msgstr ""
 
-#: cp/parser.c:14592
+#: cp/parser.c:15172
 #, gcc-internal-format
 msgid ""
 "%<explicit(bool)%> only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.c:14656
+#: cp/parser.c:15236
 #, gcc-internal-format
 msgid "invalid linkage-specification"
 msgstr ""
 
-#: cp/parser.c:14760
+#: cp/parser.c:15340
 #, gcc-internal-format
 msgid ""
 "%<static_assert%> without a message only available with %<-std=c++17%> or %<-"
 "std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.c:14961
+#: cp/parser.c:15542
 #, gcc-internal-format
 msgid ""
 "%<decltype(auto)%> type specifier only available with %<-std=c++14%> or %<-"
 "std=gnu++14%>"
 msgstr ""
 
-#: cp/parser.c:14974
+#: cp/parser.c:15555
 #, gcc-internal-format
 msgid "types may not be defined in %<decltype%> expressions"
 msgstr ""
 
-#: cp/parser.c:15137
+#: cp/parser.c:15718
 #, gcc-internal-format
 msgid "types may not be defined in a conversion-type-id"
 msgstr ""
 
-#: cp/parser.c:15166
+#: cp/parser.c:15747
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in conversion operator"
 msgstr ""
 
-#: cp/parser.c:15170
+#: cp/parser.c:15751
 #, gcc-internal-format
 msgid ""
 "use of %<auto%> in member template conversion operator can never be deduced"
 msgstr ""
 
-#: cp/parser.c:15254
+#: cp/parser.c:15835
 #, gcc-internal-format
 msgid "only constructors take member initializers"
 msgstr ""
 
-#: cp/parser.c:15281
+#: cp/parser.c:15862
 #, gcc-internal-format
 msgid "cannot expand initializer for member %qD"
 msgstr ""
 
-#: cp/parser.c:15293 cp/pt.c:25962
+#: cp/parser.c:15874 cp/pt.c:26367
 #, gcc-internal-format
 msgid "mem-initializer for %qD follows constructor delegation"
 msgstr ""
 
-#: cp/parser.c:15305 cp/pt.c:25974
+#: cp/parser.c:15886 cp/pt.c:26379
 #, gcc-internal-format
 msgid "constructor delegation follows mem-initializer for %qD"
 msgstr ""
 
-#: cp/parser.c:15357
+#: cp/parser.c:15938
 #, gcc-internal-format
 msgid "anachronistic old-style base class initializer"
 msgstr ""
 
-#: cp/parser.c:15429
+#: cp/parser.c:16023
 #, gcc-internal-format
 msgid ""
 "keyword %<typename%> not allowed in this context (a qualified member "
 "initializer is implicitly a type)"
 msgstr ""
 
-#: cp/parser.c:15830
+#: cp/parser.c:16424
 #, gcc-internal-format
 msgid "unexpected keyword; remove space between quotes and suffix identifier"
 msgstr ""
 
-#: cp/parser.c:15836
+#: cp/parser.c:16430
 #, gcc-internal-format
 msgid "expected suffix identifier"
 msgstr ""
 
-#: cp/parser.c:15845
+#: cp/parser.c:16439
 #, gcc-internal-format
 msgid "expected empty string after %<operator%> keyword"
 msgstr ""
 
-#: cp/parser.c:15851
+#: cp/parser.c:16445
 #, gcc-internal-format
 msgid "invalid encoding prefix in literal operator"
 msgstr ""
 
-#: cp/parser.c:15885
+#: cp/parser.c:16479
 #, gcc-internal-format
 msgid "expected operator"
 msgstr ""
 
-#. Warn that we do not support `export'.
-#: cp/parser.c:15931
+#: cp/parser.c:16526
 #, gcc-internal-format
 msgid "keyword %<export%> not implemented, and will be ignored"
 msgstr ""
 
-#: cp/parser.c:16110
+#: cp/parser.c:16528
+#, gcc-internal-format
+msgid "keyword %<export%> is deprecated, and is ignored"
+msgstr ""
+
+#: cp/parser.c:16530
+#, gcc-internal-format
+msgid "keyword %<export%> is enabled with %<-fmodules-ts%>"
+msgstr ""
+
+#: cp/parser.c:16709
 #, gcc-internal-format
 msgid "invalid constrained type parameter"
 msgstr ""
 
-#: cp/parser.c:16118
+#: cp/parser.c:16717
 #, gcc-internal-format
 msgid "cv-qualified type parameter"
 msgstr ""
 
-#: cp/parser.c:16261
+#: cp/parser.c:16860
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in default template argument"
 msgstr ""
 
-#: cp/parser.c:16497 cp/parser.c:16583 cp/parser.c:23032
+#: cp/parser.c:17096 cp/parser.c:17182 cp/parser.c:23880
 #, gcc-internal-format
 msgid "template parameter pack %qD cannot have a default argument"
 msgstr ""
 
-#: cp/parser.c:16501 cp/parser.c:16587
+#: cp/parser.c:17100 cp/parser.c:17186
 #, gcc-internal-format
 msgid "template parameter packs cannot have default arguments"
 msgstr ""
 
-#: cp/parser.c:16654
+#: cp/parser.c:17253
 #, gcc-internal-format
 msgid "expected template-id"
 msgstr ""
 
-#: cp/parser.c:16716
+#: cp/parser.c:17315
 #, gcc-internal-format
 msgid "%<<::%> cannot begin a template-argument list"
 msgstr ""
 
-#: cp/parser.c:16720
+#: cp/parser.c:17319
 #, gcc-internal-format
 msgid ""
 "%<<:%> is an alternate spelling for %<[%>. Insert whitespace between %<<%> "
 "and %<::%>"
 msgstr ""
 
-#: cp/parser.c:16724
+#: cp/parser.c:17323
 #, gcc-internal-format
 msgid ""
 "(if you use %<-fpermissive%> or %<-std=c++11%>, or %<-std=gnu++11%> G++ will "
 "accept your code)"
 msgstr ""
 
-#: cp/parser.c:16754
+#: cp/parser.c:17353
 #, gcc-internal-format
 msgid "invalid template-argument-list"
 msgstr ""
 
-#: cp/parser.c:16755
+#: cp/parser.c:17354
 #, 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.c:16762
+#: cp/parser.c:17361
 #, gcc-internal-format
 msgid "expected %<(%> after template-argument-list"
 msgstr ""
 
-#: cp/parser.c:16866
+#: cp/parser.c:17465
 #, gcc-internal-format
 msgid "parse error in template argument list"
 msgstr ""
 
 #. The name does not name a template.
-#: cp/parser.c:16951 cp/parser.c:17117 cp/parser.c:17322
+#: cp/parser.c:17550 cp/parser.c:17716 cp/parser.c:17921
 #, gcc-internal-format
 msgid "expected template-name"
 msgstr ""
 
 #. Explain what went wrong.
-#: cp/parser.c:16997
+#: cp/parser.c:17596
 #, gcc-internal-format
 msgid "non-template %qD used as template"
 msgstr ""
 
-#: cp/parser.c:16999
+#: cp/parser.c:17598
 #, gcc-internal-format
 msgid "use %<%T::template %D%> to indicate that it is a template"
 msgstr ""
 
-#: cp/parser.c:17178
+#: cp/parser.c:17777
 #, gcc-internal-format
 msgid "expected parameter pack before %<...%>"
 msgstr ""
 
-#: cp/parser.c:17287 cp/parser.c:17305 cp/parser.c:17476
+#: cp/parser.c:17886 cp/parser.c:17904 cp/parser.c:18075
 #, gcc-internal-format
 msgid "expected template-argument"
 msgstr ""
 
-#: cp/parser.c:17443
+#: cp/parser.c:18042
 #, gcc-internal-format
 msgid "invalid non-type template argument"
 msgstr ""
 
-#: cp/parser.c:17580
+#: cp/parser.c:18177
 #, gcc-internal-format
 msgid "explicit instantiation shall not use %<inline%> specifier"
 msgstr ""
 
-#: cp/parser.c:17584
+#: cp/parser.c:18181
 #, gcc-internal-format
 msgid "explicit instantiation shall not use %<constexpr%> specifier"
 msgstr ""
 
-#: cp/parser.c:17588
+#: cp/parser.c:18185
 #, gcc-internal-format
 msgid "explicit instantiation shall not use %<consteval%> specifier"
 msgstr ""
 
-#: cp/parser.c:17647
+#: cp/parser.c:18245
 #, gcc-internal-format
 msgid "template specialization with C linkage"
 msgstr ""
 
-#: cp/parser.c:17868
+#: cp/parser.c:18465
 #, gcc-internal-format
 msgid "expected type specifier"
 msgstr ""
 
-#: cp/parser.c:18061
+#: cp/parser.c:18658
 #, gcc-internal-format
 msgid ""
 "use of %<auto%> in lambda parameter declaration only available with %<-std=c+"
 "+14%> or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/parser.c:18067
+#: cp/parser.c:18664
 #, gcc-internal-format
 msgid ""
 "use of %<auto%> in parameter declaration only available with %<-std=c++14%> "
 "or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/parser.c:18072
+#: cp/parser.c:18669
 #, gcc-internal-format
 msgid ""
 "use of %<auto%> in parameter declaration only available with %<-fconcepts-ts"
 "%>"
 msgstr ""
 
-#: cp/parser.c:18229
+#: cp/parser.c:18826
 #, gcc-internal-format
 msgid "expected template-id for type"
 msgstr ""
 
-#: cp/parser.c:18359
+#: cp/parser.c:18956
 #, gcc-internal-format
 msgid "expected type-name"
 msgstr ""
 
-#: cp/parser.c:18469
+#: cp/parser.c:19066
 #, gcc-internal-format
 msgid "%qE does not constrain a type"
 msgstr ""
 
-#: cp/parser.c:18470
+#: cp/parser.c:19067
 #, gcc-internal-format
 msgid "concept defined here"
 msgstr ""
 
-#: cp/parser.c:18492
+#: cp/parser.c:19089
 #, gcc-internal-format
 msgid "expected %<auto%> or %<decltype(auto)%> after %qE"
 msgstr ""
 
-#: cp/parser.c:18499
+#: cp/parser.c:19096
 #, gcc-internal-format
 msgid "unexpected placeholder in constrained result type"
 msgstr ""
 
-#: cp/parser.c:18742
+#: cp/parser.c:19339
 #, gcc-internal-format
 msgid ""
 "elaborated-type-specifier for a scoped enum must not use the %qD keyword"
 msgstr ""
 
-#: cp/parser.c:18818
+#: cp/parser.c:19415
 #, gcc-internal-format
 msgid "%<template%> must follow a nested-name-specifier"
 msgstr ""
 
-#: cp/parser.c:18980
+#: cp/parser.c:19577
 #, gcc-internal-format
 msgid "declaration %qD does not declare anything"
 msgstr ""
 
-#: cp/parser.c:19068
+#: cp/parser.c:19665
 #, gcc-internal-format
 msgid "attributes ignored on uninstantiated type"
 msgstr ""
 
-#: cp/parser.c:19072
+#: cp/parser.c:19671
 #, gcc-internal-format
 msgid "attributes ignored on template instantiation"
 msgstr ""
 
-#: cp/parser.c:19077
+#: cp/parser.c:19676
 #, gcc-internal-format
 msgid ""
 "attributes ignored on elaborated-type-specifier that is not a forward "
 "declaration"
 msgstr ""
 
-#: cp/parser.c:19217
+#: cp/parser.c:19816
 #, gcc-internal-format
 msgid "%qD is an enumeration template"
 msgstr ""
 
-#: cp/parser.c:19228
+#: cp/parser.c:19827
 #, gcc-internal-format
 msgid "%qD does not name an enumeration in %qT"
 msgstr ""
 
-#: cp/parser.c:19243
+#: cp/parser.c:19842
 #, gcc-internal-format
 msgid "unnamed scoped enum is not allowed"
 msgstr ""
 
-#: cp/parser.c:19300
+#: cp/parser.c:19899
 #, gcc-internal-format
 msgid "expected %<;%> or %<{%>"
 msgstr ""
 
-#: cp/parser.c:19344
+#: cp/parser.c:19943
 #, gcc-internal-format
 msgid "cannot add an enumerator list to a template instantiation"
 msgstr ""
 
-#: cp/parser.c:19358
+#: cp/parser.c:19957
 #, gcc-internal-format
 msgid ""
 "nested name specifier %qT for enum declaration does not name a class or "
 "namespace"
 msgstr ""
 
-#: cp/parser.c:19370 cp/parser.c:24534
+#: cp/parser.c:19969 cp/parser.c:25387
 #, gcc-internal-format
 msgid "declaration of %qD in namespace %qD which does not enclose %qD"
 msgstr ""
 
-#: cp/parser.c:19375 cp/parser.c:24539
+#: cp/parser.c:19974 cp/parser.c:25392
 #, gcc-internal-format
 msgid "declaration of %qD in %qD which does not enclose %qD"
 msgstr ""
 
-#: cp/parser.c:19387 cp/parser.c:24552
+#: cp/parser.c:19986 cp/parser.c:25405
 #, gcc-internal-format
 msgid "extra qualification not allowed"
 msgstr ""
 
-#: cp/parser.c:19424
+#: cp/parser.c:20023
 #, gcc-internal-format
 msgid "ISO C++ forbids empty unnamed enum"
 msgstr ""
 
-#: cp/parser.c:19449
+#: cp/parser.c:20048
 #, gcc-internal-format
 msgid "opaque-enum-specifier without name"
 msgstr ""
 
-#: cp/parser.c:19452
+#: cp/parser.c:20051
 #, gcc-internal-format
 msgid "opaque-enum-specifier must use a simple identifier"
 msgstr ""
 
-#: cp/parser.c:19639
+#: cp/parser.c:20238
 #, gcc-internal-format
 msgid "%qD is not a namespace-name; did you mean %qs?"
 msgstr ""
 
-#: cp/parser.c:19643
+#: cp/parser.c:20242
 #, gcc-internal-format
 msgid "%qD is not a namespace-name"
 msgstr ""
 
-#: cp/parser.c:19647
+#: cp/parser.c:20246
 #, gcc-internal-format
 msgid "expected namespace-name"
 msgstr ""
 
-#: cp/parser.c:19708
+#: cp/parser.c:20307
 #, gcc-internal-format
 msgid ""
 "nested inline namespace definitions only available with %<-std=c++20%> or %<-"
 "std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.c:19719
+#: cp/parser.c:20318
 #, gcc-internal-format
 msgid "standard attributes on namespaces must precede the namespace name"
 msgstr ""
 
-#: cp/parser.c:19738
+#: cp/parser.c:20337
 #, gcc-internal-format
 msgid ""
 "nested namespace definitions only available with %<-std=c++17%> or %<-std=gnu"
 "++17%>"
 msgstr ""
 
-#: cp/parser.c:19748
+#: cp/parser.c:20347
 #, gcc-internal-format
 msgid "nested namespace name required"
 msgstr ""
 
-#: cp/parser.c:19753
+#: cp/parser.c:20352
 #, gcc-internal-format
 msgid "namespace name required"
 msgstr ""
 
-#: cp/parser.c:19757
+#: cp/parser.c:20356
 #, gcc-internal-format
 msgid "a nested namespace definition cannot have attributes"
 msgstr ""
 
-#: cp/parser.c:19760
+#: cp/parser.c:20359
 #, gcc-internal-format
 msgid "a nested namespace definition cannot be inline"
 msgstr ""
 
-#: cp/parser.c:19767
+#: cp/parser.c:20366
 #, gcc-internal-format
 msgid "namespace %qD entered"
 msgstr ""
 
-#: cp/parser.c:19822
+#: cp/parser.c:20421
 #, gcc-internal-format
 msgid "%<namespace%> definition is not allowed here"
 msgstr ""
 
-#: cp/parser.c:19976
+#: cp/parser.c:20596
 #, gcc-internal-format
 msgid ""
 "pack expansion in using-declaration only available with %<-std=c++17%> or %<-"
 "std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.c:19991
+#: cp/parser.c:20611
 #, gcc-internal-format
 msgid "a template-id may not appear in a using-declaration"
 msgstr ""
 
-#: cp/parser.c:20021
+#: cp/parser.c:20629
 #, gcc-internal-format
 msgid ""
 "comma-separated list in using-declaration only available with %<-std=c++17%> "
 "or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.c:20031
+#: cp/parser.c:20639
 #, gcc-internal-format
 msgid ""
 "access declarations are deprecated in favour of using-declarations; "
 "suggestion: add the %<using%> keyword"
 msgstr ""
 
-#: cp/parser.c:20096
+#: cp/parser.c:20704
+#, gcc-internal-format
+msgid "opaque-enum-declaration here"
+msgstr ""
+
+#: cp/parser.c:20774
 #, gcc-internal-format
 msgid "types may not be defined in alias template declarations"
 msgstr ""
 
-#: cp/parser.c:20267
+#: cp/parser.c:20945
 #, gcc-internal-format
 msgid ""
 "%<asm%> in %<constexpr%> function only available with %<-std=c++20%> or %<-"
 "std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.c:20286 cp/parser.c:20303 cp/parser.c:20317
+#: cp/parser.c:20964 cp/parser.c:20981 cp/parser.c:20995
 #, gcc-internal-format
 msgid "duplicate %<asm%> qualifier %qT"
 msgstr ""
 
-#: cp/parser.c:20293
+#: cp/parser.c:20971
 #, gcc-internal-format
 msgid "%<asm%> qualifier %qT ignored outside of function body"
 msgstr ""
 
-#: cp/parser.c:20330
+#: cp/parser.c:21008
 #, gcc-internal-format
 msgid "%qT is not an %<asm%> qualifier"
 msgstr ""
 
-#: cp/parser.c:20346
+#: cp/parser.c:21024
 #, gcc-internal-format
 msgid "%<asm%> qualifier outside of function body"
 msgstr ""
 
-#: cp/parser.c:20720
+#: cp/parser.c:21252
+#, gcc-internal-format
+msgid "empty parentheses were disambiguated as a function declaration"
+msgstr ""
+
+#: cp/parser.c:21263
+#, gcc-internal-format
+msgid "remove parentheses to default-initialize a variable"
+msgstr ""
+
+#: cp/parser.c:21268
+#, gcc-internal-format
+msgid "or replace parentheses with braces to aggregate-initialize a variable"
+msgstr ""
+
+#: cp/parser.c:21271
+#, gcc-internal-format
+msgid "or replace parentheses with braces to value-initialize a variable"
+msgstr ""
+
+#: cp/parser.c:21288 cp/parser.c:21313
+#, gcc-internal-format
+msgid "parentheses were disambiguated as a function declaration"
+msgstr ""
+
+#: cp/parser.c:21300 cp/parser.c:21321
+#, gcc-internal-format
+msgid "replace parentheses with braces to declare a variable"
+msgstr ""
+
+#: cp/parser.c:21307
+#, gcc-internal-format
+msgid "add parentheses to declare a variable"
+msgstr ""
+
+#: cp/parser.c:21535
 #, gcc-internal-format
 msgid "a function-definition is not allowed here"
 msgstr ""
 
-#: cp/parser.c:20731
+#: cp/parser.c:21546
 #, gcc-internal-format
 msgid "an %<asm%> specification is not allowed on a function-definition"
 msgstr ""
 
-#: cp/parser.c:20735
+#: cp/parser.c:21550
 #, gcc-internal-format
 msgid "attributes are not allowed on a function-definition"
 msgstr ""
 
-#: cp/parser.c:20786
+#: cp/parser.c:21601
 #, gcc-internal-format
 msgid "expected constructor, destructor, or type conversion"
 msgstr ""
 
-#: cp/parser.c:20906
+#: cp/parser.c:21721
 #, gcc-internal-format
 msgid "initializer provided for function"
 msgstr ""
 
-#: cp/parser.c:20948
+#: cp/parser.c:21763
 #, gcc-internal-format
 msgid "attributes after parenthesized initializer ignored"
 msgstr ""
 
-#: cp/parser.c:20962
+#: cp/parser.c:21777
 #, gcc-internal-format
 msgid "non-function %qD declared as implicit template"
 msgstr ""
 
-#: cp/parser.c:21448
+#: cp/parser.c:22268
 #, gcc-internal-format
 msgid "array bound is not an integer constant"
 msgstr ""
 
-#: cp/parser.c:21574
+#: cp/parser.c:22394
 #, gcc-internal-format
 msgid "cannot define member of dependent typedef %qT"
 msgstr ""
 
-#: cp/parser.c:21578
+#: cp/parser.c:22398
 #, gcc-internal-format
 msgid "%<%T::%E%> is not a type"
 msgstr ""
@@ -55027,17 +56709,17 @@ msgstr ""
 #. here because we do not have enough
 #. information about its original syntactic
 #. form.
-#: cp/parser.c:21607
+#: cp/parser.c:22427
 #, gcc-internal-format
 msgid "invalid declarator"
 msgstr ""
 
-#: cp/parser.c:21615
+#: cp/parser.c:22435
 #, gcc-internal-format
 msgid "invalid use of constructor as a template"
 msgstr ""
 
-#: cp/parser.c:21617
+#: cp/parser.c:22437
 #, gcc-internal-format
 msgid ""
 "use %<%T::%D%> instead of %<%T::%D%> to name the constructor in a qualified "
@@ -55046,429 +56728,429 @@ msgstr ""
 
 #. But declarations with qualified-ids can't appear in a
 #. function.
-#: cp/parser.c:21726
+#: cp/parser.c:22552
 #, gcc-internal-format
 msgid "qualified-id in declaration"
 msgstr ""
 
-#: cp/parser.c:21751
+#: cp/parser.c:22577
 #, gcc-internal-format
 msgid "expected declarator"
 msgstr ""
 
-#: cp/parser.c:21870
+#: cp/parser.c:22698
 #, gcc-internal-format
 msgid "%qD is a namespace"
 msgstr ""
 
-#: cp/parser.c:21872
+#: cp/parser.c:22700
 #, gcc-internal-format
 msgid "cannot form pointer to member of non-class %q#T"
 msgstr ""
 
-#: cp/parser.c:21893
+#: cp/parser.c:22721
 #, gcc-internal-format
 msgid "expected ptr-operator"
 msgstr ""
 
-#: cp/parser.c:21954
+#: cp/parser.c:22782
 #, gcc-internal-format
 msgid "duplicate cv-qualifier"
 msgstr ""
 
-#: cp/parser.c:22008
+#: cp/parser.c:22836
 #, gcc-internal-format
 msgid "multiple ref-qualifiers"
 msgstr ""
 
-#: cp/parser.c:22045
+#: cp/parser.c:22873
 #, gcc-internal-format
 msgid "%qE requires %<-fgnu-tm%>"
 msgstr ""
 
-#: cp/parser.c:22103
+#: cp/parser.c:22931
 #, gcc-internal-format
 msgid "duplicate virt-specifier"
 msgstr ""
 
-#: cp/parser.c:22341
+#: cp/parser.c:23180
 #, gcc-internal-format
 msgid "missing template arguments after %qT"
 msgstr ""
 
-#: cp/parser.c:22347 cp/typeck2.c:495 cp/typeck2.c:542 cp/typeck2.c:2305
+#: cp/parser.c:23186
+#, gcc-internal-format
+msgid "%qT not permitted in template argument"
+msgstr ""
+
+#: cp/parser.c:23189 cp/typeck2.c:353 cp/typeck2.c:400 cp/typeck2.c:2200
 #, gcc-internal-format
 msgid "invalid use of %qT"
 msgstr ""
 
-#: cp/parser.c:22373
+#: cp/parser.c:23215
 #, gcc-internal-format
 msgid "types may not be defined in template arguments"
 msgstr ""
 
-#: cp/parser.c:22378
+#: cp/parser.c:23220
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in template argument"
 msgstr ""
 
-#: cp/parser.c:22484
+#: cp/parser.c:23326
 #, gcc-internal-format
 msgid "expected type-specifier"
 msgstr ""
 
-#: cp/parser.c:22759
+#: cp/parser.c:23607
 #, gcc-internal-format
 msgid "expected %<,%> or %<...%>"
 msgstr ""
 
-#: cp/parser.c:22837
+#: cp/parser.c:23685
 #, gcc-internal-format
 msgid "types may not be defined in parameter types"
 msgstr ""
 
-#: cp/parser.c:23016
+#: cp/parser.c:23864
 #, gcc-internal-format
 msgid "default arguments are only permitted for function parameters"
 msgstr ""
 
-#: cp/parser.c:23034
+#: cp/parser.c:23882
 #, gcc-internal-format
 msgid "parameter pack %qD cannot have a default argument"
 msgstr ""
 
-#: cp/parser.c:23040
+#: cp/parser.c:23888
 #, gcc-internal-format
 msgid "template parameter pack cannot have a default argument"
 msgstr ""
 
-#: cp/parser.c:23042
+#: cp/parser.c:23890
 #, gcc-internal-format
 msgid "parameter pack cannot have a default argument"
 msgstr ""
 
-#: cp/parser.c:23168
+#: cp/parser.c:24016
 #, gcc-internal-format
 msgid ""
 "function-try-block body of %<constexpr%> constructor only available with %<-"
 "std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.c:23172
+#: cp/parser.c:24020
 #, gcc-internal-format
 msgid ""
 "function-try-block body of %<constexpr%> function only available with %<-"
 "std=c++20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.c:23496
+#: cp/parser.c:24344
 #, gcc-internal-format
 msgid ""
 "C++ designated initializers only available with %<-std=c++20%> or %<-std=gnu+"
 "+20%>"
 msgstr ""
 
-#: cp/parser.c:23516
+#: cp/parser.c:24364
 #, gcc-internal-format
 msgid "ISO C++ does not allow GNU designated initializers"
 msgstr ""
 
-#: cp/parser.c:23554
+#: cp/parser.c:24402
 #, gcc-internal-format
 msgid "ISO C++ does not allow C99 designated initializers"
 msgstr ""
 
-#: cp/parser.c:23568
+#: cp/parser.c:24416
 #, gcc-internal-format
 msgid ""
 "either all initializer clauses should be designated or none of them should be"
 msgstr ""
 
-#: cp/parser.c:23593
+#: cp/parser.c:24441
 #, gcc-internal-format
 msgid "%<...%> not allowed in designated initializer list"
 msgstr ""
 
-#: cp/parser.c:23644
+#: cp/parser.c:24492
 #, gcc-internal-format
 msgid "%<.%s%> designator used multiple times in the same initializer list"
 msgstr ""
 
-#: cp/parser.c:23703 cp/parser.c:23838
+#: cp/parser.c:24548 cp/parser.c:24687
 #, gcc-internal-format
 msgid "expected class-name"
 msgstr ""
 
-#: cp/parser.c:24082
+#: cp/parser.c:24926
 #, gcc-internal-format
 msgid "expected %<;%> after class definition"
 msgstr ""
 
-#: cp/parser.c:24085
+#: cp/parser.c:24929
 #, gcc-internal-format
 msgid "expected %<;%> after struct definition"
 msgstr ""
 
-#: cp/parser.c:24088
+#: cp/parser.c:24932
 #, gcc-internal-format
 msgid "expected %<;%> after union definition"
 msgstr ""
 
-#: cp/parser.c:24476
+#: cp/parser.c:25329
 #, gcc-internal-format
 msgid "expected %<{%> or %<:%>"
 msgstr ""
 
-#: cp/parser.c:24487
+#: cp/parser.c:25340
 #, gcc-internal-format
 msgid "cannot specify %<override%> for a class"
 msgstr ""
 
-#: cp/parser.c:24495
+#: cp/parser.c:25348
 #, gcc-internal-format
 msgid "global qualification of class name is invalid"
 msgstr ""
 
-#: cp/parser.c:24502
+#: cp/parser.c:25355
 #, gcc-internal-format
 msgid "qualified name does not name a class"
 msgstr ""
 
-#: cp/parser.c:24514
+#: cp/parser.c:25367
 #, gcc-internal-format
 msgid "keyword %<template%> not allowed in class-head-name"
 msgstr ""
 
-#: cp/parser.c:24520
+#: cp/parser.c:25373
 #, gcc-internal-format
 msgid "invalid class name in declaration of %qD"
 msgstr ""
 
-#: cp/parser.c:24574
+#: cp/parser.c:25427
 #, gcc-internal-format
 msgid "an explicit specialization must be preceded by %<template <>%>"
 msgstr ""
 
-#: cp/parser.c:24606
+#: cp/parser.c:25459
 #, gcc-internal-format
 msgid "function template %qD redeclared as a class template"
 msgstr ""
 
-#: cp/parser.c:24642
+#: cp/parser.c:25495
 #, gcc-internal-format
 msgid "could not resolve typename type"
 msgstr ""
 
-#: cp/parser.c:24707
+#: cp/parser.c:25560
 #, gcc-internal-format
 msgid "previous definition of %q#T"
 msgstr ""
 
-#: cp/parser.c:24797 cp/parser.c:30752
+#: cp/parser.c:25660 cp/parser.c:31626
 #, gcc-internal-format
 msgid "expected class-key"
 msgstr ""
 
-#: cp/parser.c:24821
+#: cp/parser.c:25684
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids typename key in template template parameter; use %<-std=c+"
 "+17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.c:24825
+#: cp/parser.c:25688
 #, gcc-internal-format
 msgid "expected %<class%> or %<typename%>"
 msgstr ""
 
-#: cp/parser.c:25072
+#: cp/parser.c:25931
 #, gcc-internal-format
 msgid "in C++03 a class-key must be used when declaring a friend"
 msgstr ""
 
-#: cp/parser.c:25090
+#: cp/parser.c:25949
 #, gcc-internal-format
 msgid "friend declaration does not name a class or function"
 msgstr ""
 
-#: cp/parser.c:25108
+#: cp/parser.c:25967
 #, gcc-internal-format
 msgid "a storage class on an anonymous aggregate in class scope is not allowed"
 msgstr ""
 
-#: cp/parser.c:25206
+#: cp/parser.c:26065
 #, gcc-internal-format
 msgid ""
 "default member initializers for bit-fields only available with %<-std=c+"
 "+20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.c:25213
+#: cp/parser.c:26072
 #, gcc-internal-format
 msgid "default member initializer for unnamed bit-field"
 msgstr ""
 
-#: cp/parser.c:25226
+#: cp/parser.c:26085
 #, gcc-internal-format
 msgid "ISO C++ allows bit-field attributes only before the %<:%> token"
 msgstr ""
 
-#: cp/parser.c:25376
+#: cp/parser.c:26238
 #, gcc-internal-format
 msgid "bit-field %qD has non-integral type %qT"
 msgstr ""
 
-#: cp/parser.c:25404
+#: cp/parser.c:26266
 #, gcc-internal-format
 msgid "pure-specifier on function-definition"
 msgstr ""
 
-#: cp/parser.c:25424
+#: cp/parser.c:26286
 #, gcc-internal-format
 msgid "extra %<;%> after in-class function definition"
 msgstr ""
 
-#: cp/parser.c:25471
+#: cp/parser.c:26333
 #, gcc-internal-format
 msgid "stray %<,%> at end of member declaration"
 msgstr ""
 
-#: cp/parser.c:25485
+#: cp/parser.c:26347
 #, gcc-internal-format
 msgid "expected %<;%> at end of member declaration"
 msgstr ""
 
-#: cp/parser.c:25559
+#: cp/parser.c:26421
 #, gcc-internal-format
 msgid "invalid pure specifier (only %<= 0%> is allowed)"
 msgstr ""
 
-#: cp/parser.c:25594
+#: cp/parser.c:26456
 #, gcc-internal-format
 msgid "a brace-enclosed initializer is not allowed here"
 msgstr ""
 
-#: cp/parser.c:25724
+#: cp/parser.c:26586
 #, gcc-internal-format
 msgid "%<virtual%> specified more than once in base-specifier"
 msgstr ""
 
-#: cp/parser.c:25744
+#: cp/parser.c:26606
 #, gcc-internal-format
 msgid "more than one access specifier in base-specifier"
 msgstr ""
 
-#: cp/parser.c:25768
+#: cp/parser.c:26630
 #, gcc-internal-format
 msgid "keyword %<typename%> not allowed outside of templates"
 msgstr ""
 
-#: cp/parser.c:25771
+#: cp/parser.c:26633
 #, gcc-internal-format
 msgid ""
 "keyword %<typename%> not allowed in this context (the base class is "
 "implicitly a type)"
 msgstr ""
 
-#: cp/parser.c:25975 cp/parser.c:26069
+#: cp/parser.c:26833 cp/parser.c:26927
 #, gcc-internal-format
 msgid "types may not be defined in an exception-specification"
 msgstr ""
 
-#: cp/parser.c:26077
+#: cp/parser.c:26935
 #, gcc-internal-format
 msgid "ISO C++17 does not allow dynamic exception specifications"
 msgstr ""
 
-#: cp/parser.c:26083
+#: cp/parser.c:26941
 #, gcc-internal-format
 msgid "dynamic exception specifications are deprecated in C++11"
 msgstr ""
 
-#: cp/parser.c:26127
+#: cp/parser.c:26985
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in exception-specification"
 msgstr ""
 
-#: cp/parser.c:26168
+#: cp/parser.c:27026
 #, gcc-internal-format
 msgid ""
 "%<try%> in %<constexpr%> function only available with %<-std=c++20%> or %<-"
 "std=gnu++20%>"
 msgstr ""
 
-#: cp/parser.c:26280
+#: cp/parser.c:27138
 #, gcc-internal-format
 msgid "types may not be defined in exception-declarations"
 msgstr ""
 
-#: cp/parser.c:26887
+#: cp/parser.c:27745
 #, gcc-internal-format
 msgid "attribute using prefix used together with scoped attribute token"
 msgstr ""
 
-#: cp/parser.c:26901
+#: cp/parser.c:27759
 #, gcc-internal-format
 msgid "expected an identifier for the attribute name"
 msgstr ""
 
 #. e.g. [[attr()]].
-#: cp/parser.c:26990
+#: cp/parser.c:27848
 #, gcc-internal-format
 msgid "parentheses must be omitted if %qE attribute argument list is empty"
 msgstr ""
 
-#: cp/parser.c:27019
+#: cp/parser.c:27883
 #, gcc-internal-format
-msgid "attribute %<noreturn%> can appear at most once in an attribute-list"
+msgid "attribute %qs specified multiple times"
 msgstr ""
 
-#: cp/parser.c:27027
-#, gcc-internal-format
-msgid "attribute %<nodiscard%> can appear at most once in an attribute-list"
-msgstr ""
-
-#: cp/parser.c:27064
+#: cp/parser.c:27925
 #, gcc-internal-format
 msgid "expected attribute before %<...%>"
 msgstr ""
 
-#: cp/parser.c:27124
+#: cp/parser.c:27985
 #, gcc-internal-format
 msgid ""
 "attribute using prefix only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.c:27464 cp/parser.c:27473
+#: cp/parser.c:28325 cp/parser.c:28334
 #, gcc-internal-format
 msgid "expression must be enclosed in parentheses"
 msgstr ""
 
-#: cp/parser.c:27810
+#: cp/parser.c:28671
 #, gcc-internal-format
 msgid "missing additional %<requires%> to start a requires-expression"
 msgstr ""
 
-#: cp/parser.c:28143
+#: cp/parser.c:29004
 #, gcc-internal-format
 msgid "result type is not a plain type-constraint"
 msgstr ""
 
-#: cp/parser.c:28151
+#: cp/parser.c:29012
 #, gcc-internal-format
 msgid "return-type-requirement is not a type-constraint"
 msgstr ""
 
-#: cp/parser.c:28639
+#: cp/parser.c:29494
 #, gcc-internal-format
 msgid "specializing member %<%T::%E%> requires %<template<>%> syntax"
 msgstr ""
 
-#: cp/parser.c:28644
+#: cp/parser.c:29499
 #, gcc-internal-format
 msgid "invalid declaration of %<%T::%E%>"
 msgstr ""
 
-#: cp/parser.c:28648
+#: cp/parser.c:29503
 #, gcc-internal-format
 msgid "too few template-parameter-lists"
 msgstr ""
@@ -55477,24 +57159,24 @@ msgstr ""
 #. something like:
 #.
 #. template <class T> template <class U> void S::f();
-#: cp/parser.c:28655
+#: cp/parser.c:29510
 #, gcc-internal-format
 msgid "too many template-parameter-lists"
 msgstr ""
 
-#: cp/parser.c:29054
+#: cp/parser.c:29909
 #, gcc-internal-format
 msgid "named return values are no longer supported"
 msgstr ""
 
-#: cp/parser.c:29217
+#: cp/parser.c:30080
 #, gcc-internal-format
 msgid ""
 "ISO C++ did not adopt string literal operator templates taking an argument "
 "pack of characters"
 msgstr ""
 
-#: cp/parser.c:29226
+#: cp/parser.c:30089
 #, gcc-internal-format
 msgid ""
 "literal operator template %qD has invalid parameter list; expected non-type "
@@ -55502,669 +57184,675 @@ msgid ""
 "type"
 msgstr ""
 
-#: cp/parser.c:29232
+#: cp/parser.c:30095
 #, gcc-internal-format
 msgid ""
 "literal operator template %qD has invalid parameter list; expected non-type "
 "template parameter pack %<<char...>%>"
 msgstr ""
 
-#: cp/parser.c:29332
+#: cp/parser.c:30195
 #, gcc-internal-format
-msgid "template-introductions are not part of C++20 concepts [-fconcepts-ts]"
+msgid ""
+"template-introductions are not part of C++20 concepts; use %qs to enable"
 msgstr ""
 
-#: cp/parser.c:29341
+#: cp/parser.c:30205
 #, gcc-internal-format
 msgid "no matching concept for template-introduction"
 msgstr ""
 
-#: cp/parser.c:29364
+#: cp/parser.c:30228
 #, gcc-internal-format
 msgid "invalid declaration of member template in local class"
 msgstr ""
 
-#: cp/parser.c:29373
+#: cp/parser.c:30237
 #, gcc-internal-format
 msgid "template with C linkage"
 msgstr ""
 
-#: cp/parser.c:29393
+#: cp/parser.c:30257
 #, gcc-internal-format
 msgid "invalid explicit specialization"
 msgstr ""
 
-#: cp/parser.c:29498
+#: cp/parser.c:30362
 #, gcc-internal-format
 msgid "template declaration of %<typedef%>"
 msgstr ""
 
-#: cp/parser.c:29549
+#: cp/parser.c:30413
 #, gcc-internal-format
 msgid "a class template declaration must not declare anything else"
 msgstr ""
 
-#: cp/parser.c:29596
+#: cp/parser.c:30460
 #, gcc-internal-format
 msgid "explicit template specialization cannot have a storage class"
 msgstr ""
 
-#: cp/parser.c:29896
+#: cp/parser.c:30760
 #, gcc-internal-format
 msgid "%<>>%> should be %<> >%> within a nested template argument list"
 msgstr ""
 
-#: cp/parser.c:29909
+#: cp/parser.c:30773
 #, gcc-internal-format
 msgid "spurious %<>>%>, use %<>%> to terminate a template argument list"
 msgstr ""
 
-#: cp/parser.c:30207
+#: cp/parser.c:31081
 #, gcc-internal-format
 msgid "%<sizeof...%> argument must be surrounded by parentheses"
 msgstr ""
 
-#: cp/parser.c:30359
+#: cp/parser.c:31233
 #, gcc-internal-format
 msgid "invalid use of %qD in linkage specification"
 msgstr ""
 
-#: cp/parser.c:30374
+#: cp/parser.c:31248
 #, gcc-internal-format
 msgid "%<__thread%> before %qD"
 msgstr ""
 
-#: cp/parser.c:30509
+#: cp/parser.c:31383
 #, gcc-internal-format
 msgid "ISO C++ 1998 does not support %<long long%>"
 msgstr ""
 
-#: cp/parser.c:30520
+#: cp/parser.c:31394
 #, gcc-internal-format
 msgid "both %<__thread%> and %<thread_local%> specified"
 msgstr ""
 
-#: cp/parser.c:30525
+#: cp/parser.c:31399
 #, gcc-internal-format
 msgid "duplicate %qD"
 msgstr ""
 
-#: cp/parser.c:30551
+#: cp/parser.c:31425
 #, gcc-internal-format
 msgid "duplicate %qs"
 msgstr ""
 
-#: cp/parser.c:30603
+#: cp/parser.c:31477
 #, gcc-internal-format
 msgid "expected %<new%>"
 msgstr ""
 
-#: cp/parser.c:30606
+#: cp/parser.c:31480
 #, gcc-internal-format
 msgid "expected %<delete%>"
 msgstr ""
 
-#: cp/parser.c:30609
+#: cp/parser.c:31483
 #, gcc-internal-format
 msgid "expected %<return%>"
 msgstr ""
 
-#: cp/parser.c:30615
+#: cp/parser.c:31489
 #, gcc-internal-format
 msgid "expected %<extern%>"
 msgstr ""
 
-#: cp/parser.c:30618
+#: cp/parser.c:31492
 #, gcc-internal-format
 msgid "expected %<static_assert%>"
 msgstr ""
 
-#: cp/parser.c:30621
+#: cp/parser.c:31495
 #, gcc-internal-format
 msgid "expected %<decltype%>"
 msgstr ""
 
-#: cp/parser.c:30624
+#: cp/parser.c:31498
 #, gcc-internal-format
 msgid "expected %<operator%>"
 msgstr ""
 
-#: cp/parser.c:30627
+#: cp/parser.c:31501
 #, gcc-internal-format
 msgid "expected %<class%>"
 msgstr ""
 
-#: cp/parser.c:30630
+#: cp/parser.c:31504
 #, gcc-internal-format
 msgid "expected %<template%>"
 msgstr ""
 
-#: cp/parser.c:30633
+#: cp/parser.c:31507
 #, gcc-internal-format
 msgid "expected %<namespace%>"
 msgstr ""
 
-#: cp/parser.c:30636
+#: cp/parser.c:31510
 #, gcc-internal-format
 msgid "expected %<using%>"
 msgstr ""
 
-#: cp/parser.c:30639
+#: cp/parser.c:31513
 #, gcc-internal-format
 msgid "expected %<asm%>"
 msgstr ""
 
-#: cp/parser.c:30642
+#: cp/parser.c:31516
 #, gcc-internal-format
 msgid "expected %<try%>"
 msgstr ""
 
-#: cp/parser.c:30645
+#: cp/parser.c:31519
 #, gcc-internal-format
 msgid "expected %<catch%>"
 msgstr ""
 
-#: cp/parser.c:30648
+#: cp/parser.c:31522
 #, gcc-internal-format
 msgid "expected %<throw%>"
 msgstr ""
 
-#: cp/parser.c:30651
+#: cp/parser.c:31525
 #, gcc-internal-format
 msgid "expected %<auto%>"
 msgstr ""
 
-#: cp/parser.c:30654
+#: cp/parser.c:31528
 #, gcc-internal-format
 msgid "expected %<__label__%>"
 msgstr ""
 
-#: cp/parser.c:30657
+#: cp/parser.c:31531
 #, gcc-internal-format
 msgid "expected %<@try%>"
 msgstr ""
 
-#: cp/parser.c:30660
+#: cp/parser.c:31534
 #, gcc-internal-format
 msgid "expected %<@synchronized%>"
 msgstr ""
 
-#: cp/parser.c:30663
+#: cp/parser.c:31537
 #, gcc-internal-format
 msgid "expected %<@throw%>"
 msgstr ""
 
-#: cp/parser.c:30666
+#: cp/parser.c:31540
 #, gcc-internal-format
 msgid "expected %<__transaction_atomic%>"
 msgstr ""
 
-#: cp/parser.c:30669
+#: cp/parser.c:31543
 #, gcc-internal-format
 msgid "expected %<__transaction_relaxed%>"
 msgstr ""
 
-#: cp/parser.c:30672
+#: cp/parser.c:31546
 #, gcc-internal-format
 msgid "expected %<co_yield%>"
 msgstr ""
 
-#: cp/parser.c:30704
+#: cp/parser.c:31578
 #, gcc-internal-format
 msgid "expected %<::%>"
 msgstr ""
 
-#: cp/parser.c:30716
+#: cp/parser.c:31590
 #, gcc-internal-format
 msgid "expected %<...%>"
 msgstr ""
 
-#: cp/parser.c:30719
+#: cp/parser.c:31593
 #, gcc-internal-format
 msgid "expected %<*%>"
 msgstr ""
 
-#: cp/parser.c:30722
+#: cp/parser.c:31596
 #, gcc-internal-format
 msgid "expected %<~%>"
 msgstr ""
 
-#: cp/parser.c:30728
+#: cp/parser.c:31602
 #, gcc-internal-format
 msgid "expected %<:%> or %<::%>"
 msgstr ""
 
-#: cp/parser.c:30755
+#: cp/parser.c:31629
 #, gcc-internal-format
 msgid "expected %<class%>, %<typename%>, or %<template%>"
 msgstr ""
 
-#: cp/parser.c:31057
+#: cp/parser.c:31931
 #, gcc-internal-format
 msgid "redundant enum-key %<enum%s%> in reference to %q#T"
 msgstr ""
 
-#: cp/parser.c:31208
+#: cp/parser.c:32082
 #, gcc-internal-format
 msgid "%qs tag used in naming %q#T"
 msgstr ""
 
-#: cp/parser.c:31213
+#: cp/parser.c:32087
 #, gcc-internal-format
 msgid "%q#T was previously declared here"
 msgstr ""
 
-#: cp/parser.c:31333
+#: cp/parser.c:32207
 #, gcc-internal-format
 msgid "redundant class-key %qs in reference to %q#T"
 msgstr ""
 
-#: cp/parser.c:31473 cp/parser.c:31507
+#: cp/parser.c:32347 cp/parser.c:32381
 #, gcc-internal-format
 msgid "%qT declared with a mismatched class-key %qs"
 msgstr ""
 
-#: cp/parser.c:31480 cp/parser.c:31513
+#: cp/parser.c:32354 cp/parser.c:32387
 #, gcc-internal-format
 msgid "remove the class-key or replace it with %qs"
 msgstr ""
 
-#: cp/parser.c:31481 cp/parser.c:31514
+#: cp/parser.c:32355 cp/parser.c:32388
 #, gcc-internal-format
 msgid "replace the class-key with %qs"
 msgstr ""
 
-#: cp/parser.c:31488
+#: cp/parser.c:32362
 #, gcc-internal-format
 msgid "%qT defined as %qs here"
 msgstr ""
 
-#: cp/parser.c:31489
+#: cp/parser.c:32363
 #, gcc-internal-format
 msgid "%qT first declared as %qs here"
 msgstr ""
 
-#: cp/parser.c:31571
+#: cp/parser.c:32445
 #, gcc-internal-format
 msgid "%qD redeclared with different access"
 msgstr ""
 
-#: cp/parser.c:31592
+#: cp/parser.c:32466
 #, gcc-internal-format
 msgid ""
 "in C++98 %<template%> (as a disambiguator) is only allowed within templates"
 msgstr ""
 
-#: cp/parser.c:31840
+#: cp/parser.c:32714
 #, gcc-internal-format
 msgid "file ends in default argument"
 msgstr ""
 
-#: cp/parser.c:32081 cp/parser.c:33395 cp/parser.c:33584
+#: cp/parser.c:32955 cp/parser.c:34261 cp/parser.c:34450
 #, gcc-internal-format
 msgid "misplaced %<@%D%> Objective-C++ construct"
 msgstr ""
 
-#: cp/parser.c:32150
+#: cp/parser.c:33024
 #, gcc-internal-format
 msgid "objective-c++ message receiver expected"
 msgstr ""
 
-#: cp/parser.c:32220
+#: cp/parser.c:33094
 #, gcc-internal-format
 msgid "objective-c++ message argument(s) are expected"
 msgstr ""
 
-#: cp/parser.c:32251
+#: cp/parser.c:33125
 #, gcc-internal-format
 msgid "%<@encode%> must specify a type as an argument"
 msgstr ""
 
-#: cp/parser.c:32655
+#: cp/parser.c:33529
 #, gcc-internal-format
 msgid "invalid Objective-C++ selector name"
 msgstr ""
 
-#: cp/parser.c:32730 cp/parser.c:32748
+#: cp/parser.c:33604 cp/parser.c:33622
 #, gcc-internal-format
 msgid "objective-c++ method declaration is expected"
 msgstr ""
 
-#: cp/parser.c:32742 cp/parser.c:32808
+#: cp/parser.c:33616 cp/parser.c:33682
 #, gcc-internal-format
 msgid "method attributes must be specified at the end"
 msgstr ""
 
-#: cp/parser.c:32851
+#: cp/parser.c:33725
 #, gcc-internal-format
 msgid "stray %qs between Objective-C++ methods"
 msgstr ""
 
-#: cp/parser.c:33057 cp/parser.c:33064 cp/parser.c:33071
+#: cp/parser.c:33922 cp/parser.c:33929 cp/parser.c:33936
 #, gcc-internal-format
 msgid "invalid type for instance variable"
 msgstr ""
 
-#: cp/parser.c:33188
+#: cp/parser.c:34053
 #, gcc-internal-format
 msgid "identifier expected after %<@protocol%>"
 msgstr ""
 
-#: cp/parser.c:33360
+#: cp/parser.c:34226
 #, gcc-internal-format
 msgid ""
 "attributes may not be specified before the %<@%D%> Objective-C++ keyword"
 msgstr ""
 
-#: cp/parser.c:33367
+#: cp/parser.c:34233
 #, gcc-internal-format
 msgid "prefix attributes are ignored before %<@%D%>"
 msgstr ""
 
-#: cp/parser.c:33643 cp/parser.c:33650 cp/parser.c:33657
+#: cp/parser.c:34513 cp/parser.c:34520 cp/parser.c:34527
 #, gcc-internal-format
 msgid "invalid type for property"
 msgstr ""
 
-#: cp/parser.c:34850
+#: cp/parser.c:34689
+#, gcc-internal-format
+msgid "unknown property attribute %qE"
+msgstr ""
+
+#: cp/parser.c:35755
 #, gcc-internal-format
 msgid "expected integer expression list"
 msgstr ""
 
-#: cp/parser.c:34867
+#: cp/parser.c:35772
 #, gcc-internal-format
 msgid "%<wait%> expression must be integral"
 msgstr ""
 
-#: cp/parser.c:35841
+#: cp/parser.c:36755
 #, gcc-internal-format
 msgid "invalid reduction-identifier"
 msgstr ""
 
-#: cp/parser.c:36507
+#: cp/parser.c:37508
 #, gcc-internal-format
 msgid "types may not be defined in iterator type"
 msgstr ""
 
-#: cp/parser.c:38577
+#: cp/parser.c:39637
 #, gcc-internal-format
 msgid "parenthesized initialization is not allowed in OpenMP %<for%> loop"
 msgstr ""
 
-#: cp/parser.c:39128
+#: cp/parser.c:40188
 #, gcc-internal-format
 msgid "%<ordered%> clause with parameter on range-based %<for%> loop"
 msgstr ""
 
-#: cp/parser.c:39215 cp/pt.c:17598
+#: cp/parser.c:40275 cp/pt.c:17862
 #, gcc-internal-format
 msgid "iteration variable %qD should not be reduction"
 msgstr ""
 
-#: cp/parser.c:39308
+#: cp/parser.c:40368
 #, gcc-internal-format
 msgid "not enough for loops to collapse"
 msgstr ""
 
-#: cp/parser.c:41484
+#: cp/parser.c:42584
 #, gcc-internal-format
 msgid "%<#pragma omp declare %s%> followed by %<#pragma omp declare %s%>"
 msgstr ""
 
-#: cp/parser.c:42315
+#: cp/parser.c:43415
 #, gcc-internal-format
 msgid "invalid initializer clause"
 msgstr ""
 
-#: cp/parser.c:42345
+#: cp/parser.c:43445
 #, gcc-internal-format
 msgid "expected id-expression (arguments)"
 msgstr ""
 
-#: cp/parser.c:42357
+#: cp/parser.c:43457
 #, gcc-internal-format
 msgid ""
 "one of the initializer call arguments should be %<omp_priv%> or %<&omp_priv%>"
 msgstr ""
 
-#: cp/parser.c:42460
+#: cp/parser.c:43560
 #, gcc-internal-format
 msgid "types may not be defined in declare reduction type list"
 msgstr ""
 
-#: cp/parser.c:42480 cp/semantics.c:5712
+#: cp/parser.c:43580 cp/semantics.c:5780
 #, gcc-internal-format
 msgid "predeclared arithmetic type %qT in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.c:42484 cp/semantics.c:5720
+#: cp/parser.c:43584 cp/semantics.c:5788
 #, gcc-internal-format
 msgid "function or array type %qT in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.c:42487 cp/pt.c:13804 cp/semantics.c:5726
+#: cp/parser.c:43587 cp/pt.c:13989 cp/semantics.c:5794
 #, gcc-internal-format
 msgid "reference type %qT in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.c:42490 cp/semantics.c:5732
+#: cp/parser.c:43590 cp/semantics.c:5800
 #, gcc-internal-format
 msgid ""
 "%<const%>, %<volatile%> or %<__restrict%>-qualified type %qT in %<#pragma "
 "omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.c:43005
+#: cp/parser.c:44117
 #, gcc-internal-format
 msgid "%<#pragma acc routine%> names a set of overloads"
 msgstr ""
 
-#: cp/parser.c:43015
+#: cp/parser.c:44127
 #, gcc-internal-format
 msgid "%qD does not refer to a namespace scope function"
 msgstr ""
 
 #. cancel-and-throw is unimplemented.
-#: cp/parser.c:43366
+#: cp/parser.c:44481
 #, gcc-internal-format
 msgid "%<atomic_cancel%>"
 msgstr ""
 
-#: cp/parser.c:43413 cp/semantics.c:9614
+#: cp/parser.c:44528 cp/semantics.c:9884
 #, gcc-internal-format
 msgid "%<__transaction_relaxed%> without transactional memory support enabled"
 msgstr ""
 
-#: cp/parser.c:43415 cp/semantics.c:9616
+#: cp/parser.c:44530 cp/semantics.c:9886
 #, gcc-internal-format
 msgid "%<__transaction_atomic%> without transactional memory support enabled"
 msgstr ""
 
-#: cp/parser.c:43561
+#: cp/parser.c:44676
 #, gcc-internal-format
 msgid ""
 "outer %<__transaction_cancel%> not within outer %<__transaction_atomic%>"
 msgstr ""
 
-#: cp/parser.c:43564
+#: cp/parser.c:44679
 #, gcc-internal-format
 msgid "  or a %<transaction_may_cancel_outer%> function"
 msgstr ""
 
-#: cp/parser.c:43615
+#: cp/parser.c:44730
 #, gcc-internal-format
 msgid "malformed %<#pragma GCC pch_preprocess%>"
 msgstr ""
 
-#: cp/parser.c:43898
+#: cp/parser.c:45015
 #, gcc-internal-format
 msgid "%<#pragma omp requires%> may only be used at file or namespace scope"
 msgstr ""
 
-#: cp/parser.c:43941
+#: cp/parser.c:45058
 #, gcc-internal-format
 msgid "%<#pragma GCC ivdep%> must be inside a function"
 msgstr ""
 
-#: cp/parser.c:43973
+#: cp/parser.c:45090
 #, gcc-internal-format
 msgid "%<#pragma GCC unroll%> must be inside a function"
 msgstr ""
 
-#: cp/parser.c:44053
+#: cp/parser.c:45170
 #, gcc-internal-format
 msgid "multi-source compilation not implemented for C++"
 msgstr ""
 
-#: cp/parser.c:44092
+#: cp/parser.c:45209
 #, gcc-internal-format
 msgid "placeholder type not allowed in this context"
 msgstr ""
 
-#: cp/parser.c:44293
+#: cp/parser.c:45410
 #, gcc-internal-format
 msgid "implicit templates may not be %<virtual%>"
 msgstr ""
 
-#: cp/parser.c:44349
+#: cp/parser.c:45466
 #, gcc-internal-format
 msgid "%<extern \"C\"%> linkage started here"
 msgstr ""
 
-#: cp/pt.c:303
+#: cp/pt.c:299
 #, gcc-internal-format
 msgid "data member %qD cannot be a member template"
 msgstr ""
 
-#: cp/pt.c:316
+#: cp/pt.c:312
 #, gcc-internal-format
 msgid "invalid member template declaration %qD"
 msgstr ""
 
-#: cp/pt.c:730
+#: cp/pt.c:736
 #, gcc-internal-format
 msgid "explicit specialization in non-namespace scope %qD"
 msgstr ""
 
-#: cp/pt.c:744
+#: cp/pt.c:750
 #, gcc-internal-format
 msgid "enclosing class templates are not explicitly specialized"
 msgstr ""
 
-#: cp/pt.c:828
+#: cp/pt.c:834
 #, gcc-internal-format
 msgid "specialization of %qD must appear at namespace scope"
 msgstr ""
 
-#: cp/pt.c:839 cp/pt.c:1069
+#: cp/pt.c:845 cp/pt.c:1078
 #, gcc-internal-format
 msgid "specialization of %qD in different namespace"
 msgstr ""
 
-#: cp/pt.c:841
+#: cp/pt.c:847
 #, gcc-internal-format
 msgid "  from definition of %q#D"
 msgstr ""
 
-#: cp/pt.c:858
+#: cp/pt.c:864
 #, gcc-internal-format
 msgid ""
 "explicit instantiation of %qD in namespace %qD (which does not enclose "
 "namespace %qD)"
 msgstr ""
 
-#: cp/pt.c:981
+#: cp/pt.c:990
 #, gcc-internal-format
 msgid "name of class shadows template template parameter %qD"
 msgstr ""
 
-#: cp/pt.c:993
+#: cp/pt.c:1002
 #, gcc-internal-format
 msgid "specialization of alias template %qD"
 msgstr ""
 
-#: cp/pt.c:996 cp/pt.c:1135
+#: cp/pt.c:1005 cp/pt.c:1144
 #, gcc-internal-format
 msgid "explicit specialization of non-template %qT"
 msgstr ""
 
-#: cp/pt.c:1028
+#: cp/pt.c:1037
 #, gcc-internal-format
 msgid "specialization of %qT after instantiation"
 msgstr ""
 
-#: cp/pt.c:1072
+#: cp/pt.c:1081
 #, 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.c:1113
+#: cp/pt.c:1122
 #, gcc-internal-format
 msgid "specialization %qT after instantiation %qT"
 msgstr ""
 
-#: cp/pt.c:1131
+#: cp/pt.c:1140
 #, gcc-internal-format
 msgid "template specialization of %qD not allowed by ISO C++"
 msgstr ""
 
-#: cp/pt.c:1596
+#: cp/pt.c:1605
 #, gcc-internal-format
 msgid "specialization of %qD after instantiation"
 msgstr ""
 
-#: cp/pt.c:2032 cp/semantics.c:5581
+#: cp/pt.c:2047 cp/semantics.c:5649
 #, gcc-internal-format
 msgid "%s %#qD"
 msgstr ""
 
-#: cp/pt.c:2168
+#: cp/pt.c:2183
 #, gcc-internal-format
 msgid "%qD is not a function template"
 msgstr ""
 
-#: cp/pt.c:2173
+#: cp/pt.c:2188
 #, gcc-internal-format
 msgid "%qD is not a variable template"
 msgstr ""
 
-#: cp/pt.c:2465
+#: cp/pt.c:2480
 #, gcc-internal-format
 msgid "template-id %qD for %q+D does not match any template declaration"
 msgstr ""
 
-#: cp/pt.c:2469
+#: cp/pt.c:2484
 #, gcc-internal-format
 msgid ""
 "saw %d %<template<>%>, need %d for specializing a member function template"
 msgstr ""
 
-#: cp/pt.c:2480
+#: cp/pt.c:2495
 #, gcc-internal-format
 msgid "ambiguous template specialization %qD for %q+D"
 msgstr ""
 
-#: cp/pt.c:2687
+#: cp/pt.c:2702
 #, gcc-internal-format
 msgid ""
 "variable templates only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr ""
 
-#: cp/pt.c:2697
+#: cp/pt.c:2712
 #, gcc-internal-format
 msgid "too many template headers for %qD (should be %d)"
 msgstr ""
 
-#: cp/pt.c:2703
+#: cp/pt.c:2718
 #, gcc-internal-format
 msgid ""
 "members of an explicitly specialized class are defined without a template "
 "header"
 msgstr ""
 
-#: cp/pt.c:2727
+#: cp/pt.c:2742
 #, gcc-internal-format
 msgid ""
 "explicit specialization of %qD outside its namespace must use a nested-name-"
@@ -56172,79 +57860,79 @@ msgid ""
 msgstr ""
 
 #. This was allowed in C++98, so only pedwarn.
-#: cp/pt.c:2732
+#: cp/pt.c:2747
 #, gcc-internal-format
 msgid ""
 "explicit instantiation of %qD outside its namespace must use a nested-name-"
 "specifier"
 msgstr ""
 
-#: cp/pt.c:2768
+#: cp/pt.c:2783
 #, gcc-internal-format
 msgid "explicit specialization %q#D may be missing attributes"
 msgstr ""
 
-#: cp/pt.c:2772
+#: cp/pt.c:2787
 #, gcc-internal-format, gfc-internal-format
 msgid "missing primary template attributes %s"
 msgstr ""
 
-#: cp/pt.c:2773
+#: cp/pt.c:2788
 #, gcc-internal-format, gfc-internal-format
 msgid "missing primary template attribute %s"
 msgstr ""
 
-#: cp/pt.c:2863 cp/pt.c:2923
+#: cp/pt.c:2878 cp/pt.c:2938
 #, gcc-internal-format
 msgid "template-id %qE in declaration of primary template"
 msgstr ""
 
-#: cp/pt.c:2876
+#: cp/pt.c:2891
 #, gcc-internal-format
 msgid "template parameter list used in explicit instantiation"
 msgstr ""
 
-#: cp/pt.c:2882
+#: cp/pt.c:2897
 #, gcc-internal-format
 msgid "definition provided for explicit instantiation"
 msgstr ""
 
-#: cp/pt.c:2890
+#: cp/pt.c:2905
 #, gcc-internal-format
 msgid "too many template parameter lists in declaration of %qD"
 msgstr ""
 
-#: cp/pt.c:2893
+#: cp/pt.c:2908
 #, gcc-internal-format
 msgid "too few template parameter lists in declaration of %qD"
 msgstr ""
 
-#: cp/pt.c:2895
+#: cp/pt.c:2910
 #, gcc-internal-format
 msgid "explicit specialization of %qD must be introduced by %<template <>%>"
 msgstr ""
 
-#: cp/pt.c:2901
+#: cp/pt.c:2916
 #, gcc-internal-format
 msgid "explicit specialization declared %<concept%>"
 msgstr ""
 
-#: cp/pt.c:2934
+#: cp/pt.c:2949
 #, gcc-internal-format
 msgid "non-type partial specialization %qE is not allowed"
 msgstr ""
 
-#: cp/pt.c:2938
+#: cp/pt.c:2953
 #, gcc-internal-format
 msgid "non-class, non-variable partial specialization %qE is not allowed"
 msgstr ""
 
-#: cp/pt.c:2970
+#: cp/pt.c:2985
 #, gcc-internal-format
 msgid "default argument specified in explicit specialization"
 msgstr ""
 
-#: cp/pt.c:3008
+#: cp/pt.c:3028
 #, gcc-internal-format
 msgid "%qD is not a template function"
 msgstr ""
@@ -56257,99 +57945,99 @@ msgstr ""
 #. program is ill-formed.
 #.
 #. Similar language is found in [temp.explicit].
-#: cp/pt.c:3070
+#: cp/pt.c:3090
 #, gcc-internal-format
 msgid "specialization of implicitly-declared special member function"
 msgstr ""
 
-#: cp/pt.c:3086
+#: cp/pt.c:3106
 #, gcc-internal-format
 msgid "no member function %qD declared in %qT"
 msgstr ""
 
-#: cp/pt.c:3118
+#: cp/pt.c:3137
 #, gcc-internal-format
 msgid "friend declaration %qD is not visible to explicit specialization"
 msgstr ""
 
-#: cp/pt.c:3121
+#: cp/pt.c:3140
 #, gcc-internal-format
 msgid "friend declaration here"
 msgstr ""
 
-#: cp/pt.c:3229
+#: cp/pt.c:3249
 #, gcc-internal-format
 msgid "explicit specialization of function concept %qD"
 msgstr ""
 
-#: cp/pt.c:3810
+#: cp/pt.c:3830
 #, gcc-internal-format
 msgid "argument to %<__integer_pack%> must be between 0 and %d"
 msgstr ""
 
-#: cp/pt.c:4113
+#: cp/pt.c:4133
 #, gcc-internal-format
 msgid "base initializer expansion %qT contains no parameter packs"
 msgstr ""
 
-#: cp/pt.c:4181
+#: cp/pt.c:4201
 #, gcc-internal-format
 msgid "expansion pattern %qT contains no parameter packs"
 msgstr ""
 
-#: cp/pt.c:4183
+#: cp/pt.c:4203
 #, gcc-internal-format
 msgid "expansion pattern %qE contains no parameter packs"
 msgstr ""
 
-#: cp/pt.c:4235
+#: cp/pt.c:4262
 #, gcc-internal-format
 msgid "parameter packs not expanded with %<...%>:"
 msgstr ""
 
-#: cp/pt.c:4252 cp/pt.c:5047
+#: cp/pt.c:4279 cp/pt.c:5092
 #, gcc-internal-format
 msgid "        %qD"
 msgstr ""
 
-#: cp/pt.c:4254
+#: cp/pt.c:4281
 #, gcc-internal-format, gfc-internal-format
 msgid "        %s"
 msgstr ""
 
-#: cp/pt.c:4380
+#: cp/pt.c:4407
 #, gcc-internal-format
 msgid "declaration of template parameter %q+D shadows template parameter"
 msgstr ""
 
-#: cp/pt.c:4383
+#: cp/pt.c:4410
 #, gcc-internal-format
 msgid "declaration of %q+#D shadows template parameter"
 msgstr ""
 
-#: cp/pt.c:4385
+#: cp/pt.c:4412
 #, gcc-internal-format
 msgid "template parameter %qD declared here"
 msgstr ""
 
-#: cp/pt.c:4983
+#: cp/pt.c:5028
 #, gcc-internal-format
 msgid "specialization of variable concept %q#D"
 msgstr ""
 
-#: cp/pt.c:5042
+#: cp/pt.c:5087
 #, gcc-internal-format
 msgid "template parameters not deducible in partial specialization:"
 msgstr ""
 
-#: cp/pt.c:5066
+#: cp/pt.c:5110
 #, 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.c:5070
+#: cp/pt.c:5114
 #, gcc-internal-format
 msgid ""
 "partial specialization %q+D does not specialize any template arguments and "
@@ -56357,121 +58045,122 @@ msgid ""
 "template, remove the template argument list"
 msgstr ""
 
-#: cp/pt.c:5074 cp/pt.c:5085 cp/pt.c:5093
+#: cp/pt.c:5118 cp/pt.c:5129 cp/pt.c:5137
 #, gcc-internal-format
 msgid "primary template here"
 msgstr ""
 
-#: cp/pt.c:5082
+#: cp/pt.c:5126
 #, 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.c:5092
+#: cp/pt.c:5136
 #, gcc-internal-format
 msgid "too many arguments for partial specialization %qT"
 msgstr ""
 
-#: cp/pt.c:5106
+#: cp/pt.c:5150
 #, gcc-internal-format
 msgid "partial specialization %qD is not more specialized than"
 msgstr ""
 
-#: cp/pt.c:5108
+#: cp/pt.c:5152
 #, gcc-internal-format
 msgid "primary template %qD"
 msgstr ""
 
-#: cp/pt.c:5154
+#: cp/pt.c:5198
 #, gcc-internal-format
 msgid ""
 "parameter pack argument %qE must be at the end of the template argument list"
 msgstr ""
 
-#: cp/pt.c:5157
+#: cp/pt.c:5201
 #, gcc-internal-format
 msgid ""
 "parameter pack argument %qT must be at the end of the template argument list"
 msgstr ""
 
-#: cp/pt.c:5180
+#: cp/pt.c:5224
 #, gcc-internal-format
 msgid "template argument %qE involves template parameter(s)"
 msgstr ""
 
-#: cp/pt.c:5226
+#: cp/pt.c:5270
 #, 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.c:5286
+#: cp/pt.c:5330
 #, gcc-internal-format
 msgid "declaration of %qD ambiguates earlier template instantiation for %qD"
 msgstr ""
 
-#: cp/pt.c:5290
+#: cp/pt.c:5334
 #, gcc-internal-format
 msgid "partial specialization of %qD after instantiation of %qD"
 msgstr ""
 
-#: cp/pt.c:5473
+#: cp/pt.c:5517
 #, gcc-internal-format
 msgid "no default argument for %qD"
 msgstr ""
 
-#. A primary class template can only have one
+#. A primary class template, primary variable template
+#. (DR 2032), or alias template can only have one
 #. parameter pack, at the end of the template
 #. parameter list.
-#: cp/pt.c:5495
+#: cp/pt.c:5540
 #, gcc-internal-format
 msgid "parameter pack %q+D must be at the end of the template parameter list"
 msgstr ""
 
-#: cp/pt.c:5531
+#: cp/pt.c:5576
 #, gcc-internal-format
 msgid ""
 "default template arguments may not be used in function template friend re-"
 "declaration"
 msgstr ""
 
-#: cp/pt.c:5534
+#: cp/pt.c:5579
 #, gcc-internal-format
 msgid ""
 "default template arguments may not be used in template friend declarations"
 msgstr ""
 
-#: cp/pt.c:5537
+#: cp/pt.c:5582
 #, 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.c:5540
+#: cp/pt.c:5585
 #, gcc-internal-format
 msgid "default template arguments may not be used in partial specializations"
 msgstr ""
 
-#: cp/pt.c:5543 cp/pt.c:5601
+#: cp/pt.c:5588 cp/pt.c:5646
 #, gcc-internal-format
 msgid "default argument for template parameter for class enclosing %qD"
 msgstr ""
 
-#: cp/pt.c:5714
+#: cp/pt.c:5757
 #, gcc-internal-format
 msgid "template %qD declared"
 msgstr ""
 
-#: cp/pt.c:5721
+#: cp/pt.c:5765
 #, gcc-internal-format
 msgid "template class without a name"
 msgstr ""
 
-#: cp/pt.c:5729
+#: cp/pt.c:5773
 #, gcc-internal-format
 msgid "member template %qD may not have virt-specifiers"
 msgstr ""
@@ -56481,525 +58170,525 @@ msgstr ""
 #. An allocation function can be a function
 #. template. ... Template allocation functions shall
 #. have two or more parameters.
-#: cp/pt.c:5752
+#: cp/pt.c:5796
 #, gcc-internal-format
 msgid "invalid template declaration of %qD"
 msgstr ""
 
-#: cp/pt.c:5895
+#: cp/pt.c:5952
 #, gcc-internal-format
 msgid "template definition of non-template %q#D"
 msgstr ""
 
-#: cp/pt.c:5936
+#: cp/pt.c:5991
 #, gcc-internal-format
 msgid "expected %d levels of template parms for %q#D, got %d"
 msgstr ""
 
-#: cp/pt.c:5950
+#: cp/pt.c:6005
 #, gcc-internal-format
 msgid "got %d template parameters for %q#D"
 msgstr ""
 
-#: cp/pt.c:5953
+#: cp/pt.c:6008
 #, gcc-internal-format
 msgid "got %d template parameters for %q#T"
 msgstr ""
 
-#: cp/pt.c:5955
+#: cp/pt.c:6010
 #, gcc-internal-format, gfc-internal-format
 msgid "  but %d required"
 msgstr ""
 
-#: cp/pt.c:5976
+#: cp/pt.c:6031
 #, gcc-internal-format
 msgid "template arguments to %qD do not match original template %qD"
 msgstr ""
 
-#: cp/pt.c:5979
+#: cp/pt.c:6034
 #, gcc-internal-format
 msgid "use %<template<>%> for an explicit specialization"
 msgstr ""
 
-#: cp/pt.c:6119
+#: cp/pt.c:6179
 #, gcc-internal-format
 msgid "%qT is not a template type"
 msgstr ""
 
-#: cp/pt.c:6132
+#: cp/pt.c:6192
 #, gcc-internal-format
 msgid "template specifiers not specified in declaration of %qD"
 msgstr ""
 
-#: cp/pt.c:6143
+#: cp/pt.c:6203
 #, 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.c:6147
+#: cp/pt.c:6207
 #, 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.c:6185
+#: cp/pt.c:6245
 #, gcc-internal-format
 msgid "template parameter %q+#D"
 msgstr ""
 
-#: cp/pt.c:6186
+#: cp/pt.c:6246
 #, gcc-internal-format
 msgid "redeclared here as %q#D"
 msgstr ""
 
-#: cp/pt.c:6197
+#: cp/pt.c:6257
 #, gcc-internal-format
 msgid "declaration of template parameter %q+#D with different constraints"
 msgstr ""
 
-#: cp/pt.c:6200 cp/pt.c:6249
+#: cp/pt.c:6260 cp/pt.c:6309
 #, gcc-internal-format
 msgid "original declaration appeared here"
 msgstr ""
 
-#: cp/pt.c:6211
+#: cp/pt.c:6271
 #, gcc-internal-format
 msgid "redefinition of default argument for %q#D"
 msgstr ""
 
-#: cp/pt.c:6213
+#: cp/pt.c:6273
 #, gcc-internal-format
 msgid "original definition appeared here"
 msgstr ""
 
-#: cp/pt.c:6246
+#: cp/pt.c:6306
 #, gcc-internal-format
 msgid "redeclaration %q#D with different constraints"
 msgstr ""
 
-#: cp/pt.c:6573 cp/pt.c:6642
+#: cp/pt.c:6637 cp/pt.c:6706
 #, gcc-internal-format
 msgid "%qE is not a valid template argument for type %qT"
 msgstr ""
 
-#: cp/pt.c:6576
+#: cp/pt.c:6640
 #, gcc-internal-format
 msgid "it must be the address of a function with external linkage"
 msgstr ""
 
-#: cp/pt.c:6579
+#: cp/pt.c:6643
 #, gcc-internal-format
 msgid "it must be the name of a function with external linkage"
 msgstr ""
 
-#: cp/pt.c:6592
+#: cp/pt.c:6656
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because %qD has no linkage"
 msgstr ""
 
-#: cp/pt.c:6596
+#: cp/pt.c:6660
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because %qD does not have "
 "external linkage"
 msgstr ""
 
-#: cp/pt.c:6645
+#: cp/pt.c:6709
 #, gcc-internal-format
 msgid "it must be a pointer-to-member of the form %<&X::Y%>"
 msgstr ""
 
-#: cp/pt.c:6647
+#: cp/pt.c:6711
 #, gcc-internal-format
 msgid "because it is a member of %qT"
 msgstr ""
 
-#: cp/pt.c:6709
+#: cp/pt.c:6773
 #, gcc-internal-format
 msgid "  couldn%'t deduce template parameter %qD"
 msgstr ""
 
-#: cp/pt.c:6718
+#: cp/pt.c:6782
 #, gcc-internal-format
 msgid "  types %qT and %qT have incompatible cv-qualifiers"
 msgstr ""
 
-#: cp/pt.c:6727
+#: cp/pt.c:6791
 #, gcc-internal-format
 msgid "  mismatched types %qT and %qT"
 msgstr ""
 
-#: cp/pt.c:6736
+#: cp/pt.c:6800
 #, gcc-internal-format
 msgid "  template parameter %qD is not a parameter pack, but argument %qD is"
 msgstr ""
 
-#: cp/pt.c:6747
+#: cp/pt.c:6811
 #, gcc-internal-format
 msgid "  template argument %qE does not match pointer-to-member constant %qE"
 msgstr ""
 
-#: cp/pt.c:6757
+#: cp/pt.c:6821
 #, gcc-internal-format
 msgid "  %qE is not equivalent to %qE"
 msgstr ""
 
-#: cp/pt.c:6766
+#: cp/pt.c:6830
 #, gcc-internal-format
 msgid "  inconsistent parameter pack deduction with %qT and %qT"
 msgstr ""
 
-#: cp/pt.c:6778
+#: cp/pt.c:6842
 #, gcc-internal-format
 msgid "  deduced conflicting types for parameter %qT (%qT and %qT)"
 msgstr ""
 
-#: cp/pt.c:6782
+#: cp/pt.c:6846
 #, gcc-internal-format
 msgid "  deduced conflicting values for non-type parameter %qE (%qE and %qE)"
 msgstr ""
 
-#: cp/pt.c:6793
+#: cp/pt.c:6857
 #, gcc-internal-format
 msgid "  variable-sized array type %qT is not a valid template argument"
 msgstr ""
 
-#: cp/pt.c:6804
+#: cp/pt.c:6868
 #, gcc-internal-format
 msgid "  member function type %qT is not a valid template argument"
 msgstr ""
 
-#: cp/pt.c:6816
+#: cp/pt.c:6880
 #, gcc-internal-format, gfc-internal-format
 msgid "  candidate expects at least %d argument, %d provided"
 msgid_plural "  candidate expects at least %d arguments, %d provided"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/pt.c:6847
+#: cp/pt.c:6911
 #, gcc-internal-format
 msgid "  cannot convert %qE (type %qT) to type %qT"
 msgstr ""
 
-#: cp/pt.c:6860
+#: cp/pt.c:6924
 #, gcc-internal-format
 msgid "  %qT is an ambiguous base class of %qT"
 msgstr ""
 
-#: cp/pt.c:6864
+#: cp/pt.c:6928
 #, gcc-internal-format
 msgid "  %qT is not derived from %qT"
 msgstr ""
 
-#: cp/pt.c:6875
+#: cp/pt.c:6939
 #, gcc-internal-format
 msgid ""
 "  template parameters of a template template argument are inconsistent with "
 "other deduced template arguments"
 msgstr ""
 
-#: cp/pt.c:6885
+#: cp/pt.c:6949
 #, gcc-internal-format
 msgid "  cannot deduce a template for %qT from non-template type %qT"
 msgstr ""
 
-#: cp/pt.c:6895
+#: cp/pt.c:6959
 #, gcc-internal-format
 msgid "  template argument %qE does not match %qE"
 msgstr ""
 
-#: cp/pt.c:6942
+#: cp/pt.c:7021
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument of type %qT because %qE is not a "
 "variable"
 msgstr ""
 
-#: cp/pt.c:6950
+#: cp/pt.c:7029
 #, 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.c:6960
+#: cp/pt.c:7039
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument of type %qT because %qD has no linkage"
 msgstr ""
 
-#: cp/pt.c:6975
+#: cp/pt.c:7054
 #, gcc-internal-format
 msgid "the address of %qD is not a valid template argument"
 msgstr ""
 
-#: cp/pt.c:6984
+#: cp/pt.c:7064
 #, gcc-internal-format
 msgid ""
 "the address of the %qT subobject of %qD is not a valid template argument"
 msgstr ""
 
-#: cp/pt.c:6991
+#: cp/pt.c:7071
 #, 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.c:7009
+#: cp/pt.c:7089
 #, 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.c:7017
+#: cp/pt.c:7097
 #, 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.c:7126
+#: cp/pt.c:7206
 #, 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.c:7285
+#: cp/pt.c:7365
 #, gcc-internal-format
 msgid "in template argument for type %qT"
 msgstr ""
 
-#: cp/pt.c:7299
+#: cp/pt.c:7379
 #, gcc-internal-format
 msgid "template argument %qE for type %qT not a compile-time constant"
 msgstr ""
 
-#: cp/pt.c:7385
+#: cp/pt.c:7465
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because of conflicts in cv-"
 "qualification"
 msgstr ""
 
-#: cp/pt.c:7393
+#: cp/pt.c:7473
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because it is not an lvalue"
 msgstr ""
 
-#: cp/pt.c:7411
+#: cp/pt.c:7491
 #, 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.c:7470
+#: cp/pt.c:7550
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because it is a pointer"
 msgstr ""
 
-#: cp/pt.c:7472
+#: cp/pt.c:7552
 #, gcc-internal-format
 msgid "try using %qE instead"
 msgstr ""
 
-#: cp/pt.c:7526
+#: cp/pt.c:7606
 #, gcc-internal-format
 msgid ""
 "%qE is not a valid template argument for type %qT because it is of type %qT"
 msgstr ""
 
-#: cp/pt.c:8075
+#: cp/pt.c:8155
 #, gcc-internal-format
 msgid "ignoring attributes on template argument %qT"
 msgstr ""
 
-#: cp/pt.c:8091
+#: cp/pt.c:8171
 #, gcc-internal-format
 msgid "ignoring attributes in template argument %qE"
 msgstr ""
 
-#: cp/pt.c:8224
+#: cp/pt.c:8305
 #, gcc-internal-format
 msgid "injected-class-name %qD used as template template argument"
 msgstr ""
 
-#: cp/pt.c:8253
+#: cp/pt.c:8334
 #, gcc-internal-format
 msgid "invalid use of destructor %qE as a type"
 msgstr ""
 
-#: cp/pt.c:8258
+#: cp/pt.c:8339
 #, gcc-internal-format
 msgid "to refer to a type member of a template parameter, use %<typename %E%>"
 msgstr ""
 
-#: cp/pt.c:8274 cp/pt.c:8308 cp/pt.c:8362
+#: cp/pt.c:8355 cp/pt.c:8389 cp/pt.c:8443
 #, gcc-internal-format
 msgid "type/value mismatch at argument %d in template parameter list for %qD"
 msgstr ""
 
-#: cp/pt.c:8282
+#: cp/pt.c:8363
 #, gcc-internal-format
 msgid "  expected a constant of type %qT, got %qT"
 msgstr ""
 
-#: cp/pt.c:8290
+#: cp/pt.c:8371
 #, gcc-internal-format
 msgid ""
 "  ambiguous template argument for non-type template parameter is treated as "
 "function type"
 msgstr ""
 
-#: cp/pt.c:8296
+#: cp/pt.c:8377
 #, gcc-internal-format
 msgid "  expected a class template, got %qE"
 msgstr ""
 
-#: cp/pt.c:8299
+#: cp/pt.c:8380
 #, gcc-internal-format
 msgid "  expected a type, got %qE"
 msgstr ""
 
-#: cp/pt.c:8313
+#: cp/pt.c:8394
 #, gcc-internal-format
 msgid "  expected a type, got %qT"
 msgstr ""
 
-#: cp/pt.c:8316
+#: cp/pt.c:8397
 #, gcc-internal-format
 msgid "  expected a class template, got %qT"
 msgstr ""
 
-#: cp/pt.c:8366
+#: cp/pt.c:8447
 #, gcc-internal-format
 msgid "  expected a template of type %qD, got %qT"
 msgstr ""
 
-#: cp/pt.c:8380
+#: cp/pt.c:8461
 #, gcc-internal-format
 msgid "constraint mismatch at argument %d in template parameter list for %qD"
 msgstr ""
 
-#: cp/pt.c:8383
+#: cp/pt.c:8464
 #, gcc-internal-format
 msgid "  expected %qD but got %qD"
 msgstr ""
 
-#: cp/pt.c:8447
+#: cp/pt.c:8528
 #, gcc-internal-format
 msgid "could not convert template argument %qE from %qT to %qT"
 msgstr ""
 
-#: cp/pt.c:8585 cp/pt.c:8898
+#: cp/pt.c:8666 cp/pt.c:8979
 #, gcc-internal-format, gfc-internal-format
 msgid "template argument %d is invalid"
 msgstr ""
 
-#: cp/pt.c:8600 cp/pt.c:8732
+#: cp/pt.c:8681 cp/pt.c:8813
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong number of template arguments (%d, should be %d)"
 msgstr ""
 
-#: cp/pt.c:8728
+#: cp/pt.c:8809
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong number of template arguments (%d, should be at least %d)"
 msgstr ""
 
-#: cp/pt.c:8737
+#: cp/pt.c:8818
 #, gcc-internal-format
 msgid "provided for %qD"
 msgstr ""
 
-#: cp/pt.c:8762
+#: cp/pt.c:8843
 #, gcc-internal-format
 msgid ""
 "pack expansion argument for non-pack parameter %qD of alias template %qD"
 msgstr ""
 
-#: cp/pt.c:8766
+#: cp/pt.c:8847
 #, gcc-internal-format
 msgid "pack expansion argument for non-pack parameter %qD of concept %qD"
 msgstr ""
 
-#: cp/pt.c:8864
+#: cp/pt.c:8945
 #, gcc-internal-format
 msgid ""
 "so any instantiation with a non-empty parameter pack would be ill-formed"
 msgstr ""
 
-#: cp/pt.c:9510
+#: cp/pt.c:9589
 #, gcc-internal-format
 msgid "%q#D is not a function template"
 msgstr ""
 
-#: cp/pt.c:9673
+#: cp/pt.c:9752
 #, gcc-internal-format
 msgid "non-template type %qT used as a template"
 msgstr ""
 
-#: cp/pt.c:9675
+#: cp/pt.c:9754
 #, gcc-internal-format
 msgid "for template declaration %q+D"
 msgstr ""
 
-#: cp/pt.c:9801 cp/pt.c:20824
+#: cp/pt.c:9889 cp/pt.c:21170
 #, gcc-internal-format
 msgid "template constraint failure for %qD"
 msgstr ""
 
-#: cp/pt.c:10165
+#: cp/pt.c:10276
 #, gcc-internal-format
 msgid "use of invalid variable template %qE"
 msgstr ""
 
-#: cp/pt.c:10748
+#: cp/pt.c:10920
 #, gcc-internal-format
 msgid ""
 "template instantiation depth exceeds maximum of %d (use %<-ftemplate-depth="
 "%> to increase the maximum)"
 msgstr ""
 
-#: cp/pt.c:11904
+#: cp/pt.c:12078
 #, gcc-internal-format
 msgid "flexible array member %qD in union"
 msgstr ""
 
-#: cp/pt.c:12403
+#: cp/pt.c:12564
 #, gcc-internal-format
 msgid "fold of empty expansion over %O"
 msgstr ""
 
-#: cp/pt.c:12800
+#: cp/pt.c:12961
 #, gcc-internal-format
 msgid "%qE is not the entire pattern of the pack expansion"
 msgstr ""
 
-#: cp/pt.c:12888
+#: cp/pt.c:13049
 #, gcc-internal-format
 msgid "mismatched argument pack lengths while expanding %qT"
 msgstr ""
 
-#: cp/pt.c:12891
+#: cp/pt.c:13052
 #, gcc-internal-format
 msgid "mismatched argument pack lengths while expanding %qE"
 msgstr ""
 
-#: cp/pt.c:13464
+#: cp/pt.c:13642
 #, gcc-internal-format
 msgid "  when instantiating default argument for call to %qD"
 msgstr ""
 
-#: cp/pt.c:13563
+#: cp/pt.c:13741
 #, gcc-internal-format
 msgid "creating pointer to member function of non-class type %qT"
 msgstr ""
@@ -57017,295 +58706,295 @@ msgstr ""
 #.
 #. is an attempt to declare a variable with function
 #. type.
-#: cp/pt.c:14605
+#: cp/pt.c:14814
 #, gcc-internal-format
 msgid "variable %qD has function type"
 msgstr ""
 
-#: cp/pt.c:14810
+#: cp/pt.c:15014
 #, gcc-internal-format
 msgid "invalid parameter type %qT"
 msgstr ""
 
-#: cp/pt.c:14812
+#: cp/pt.c:15016
 #, gcc-internal-format
 msgid "in declaration %q+D"
 msgstr ""
 
-#: cp/pt.c:14930
+#: cp/pt.c:15131
 #, gcc-internal-format
 msgid "function returning an array"
 msgstr ""
 
-#: cp/pt.c:14932
+#: cp/pt.c:15133
 #, gcc-internal-format
 msgid "function returning a function"
 msgstr ""
 
-#: cp/pt.c:15614
+#: cp/pt.c:15831
 #, gcc-internal-format
 msgid "forming reference to void"
 msgstr ""
 
-#: cp/pt.c:15616
+#: cp/pt.c:15833
 #, gcc-internal-format
 msgid "forming pointer to reference type %qT"
 msgstr ""
 
-#: cp/pt.c:15618
+#: cp/pt.c:15835
 #, gcc-internal-format
 msgid "forming reference to reference type %qT"
 msgstr ""
 
-#: cp/pt.c:15631
+#: cp/pt.c:15848
 #, gcc-internal-format
 msgid "forming pointer to qualified function type %qT"
 msgstr ""
 
-#: cp/pt.c:15634
+#: cp/pt.c:15851
 #, gcc-internal-format
 msgid "forming reference to qualified function type %qT"
 msgstr ""
 
-#: cp/pt.c:15682
+#: cp/pt.c:15899
 #, gcc-internal-format
 msgid "creating pointer to member of non-class type %qT"
 msgstr ""
 
-#: cp/pt.c:15688
+#: cp/pt.c:15905
 #, gcc-internal-format
 msgid "creating pointer to member reference type %qT"
 msgstr ""
 
-#: cp/pt.c:15694
+#: cp/pt.c:15911
 #, gcc-internal-format
 msgid "creating pointer to member of type void"
 msgstr ""
 
-#: cp/pt.c:15794
+#: cp/pt.c:16012
 #, gcc-internal-format
 msgid "%qD is instantiated for an empty pack"
 msgstr ""
 
-#: cp/pt.c:15814
+#: cp/pt.c:16032
 #, gcc-internal-format
 msgid "%qT is not a class, struct, or union type"
 msgstr ""
 
-#: cp/pt.c:15851
+#: cp/pt.c:16064
 #, gcc-internal-format
 msgid "%qT resolves to %qT, which is not an enumeration type"
 msgstr ""
 
-#: cp/pt.c:15859
+#: cp/pt.c:16072
 #, gcc-internal-format
 msgid "%qT resolves to %qT, which is not a class type"
 msgstr ""
 
-#: cp/pt.c:15986
+#: cp/pt.c:16186
 #, gcc-internal-format
 msgid "use of %qs in template"
 msgstr ""
 
-#: cp/pt.c:16165
+#: cp/pt.c:16374
 #, gcc-internal-format
 msgid "qualifying type %qT does not match destructor name ~%qT"
 msgstr ""
 
-#: cp/pt.c:16180
+#: cp/pt.c:16389
 #, gcc-internal-format
 msgid ""
 "dependent-name %qE is parsed as a non-type, but instantiation yields a type"
 msgstr ""
 
-#: cp/pt.c:16182
+#: cp/pt.c:16391
 #, gcc-internal-format
 msgid "say %<typename %E%> if a type is meant"
 msgstr ""
 
-#: cp/pt.c:16273
+#: cp/pt.c:16484
 #, gcc-internal-format
 msgid "initializer for %q#D expands to an empty list of expressions"
 msgstr ""
 
-#: cp/pt.c:16396
+#: cp/pt.c:16635
 #, gcc-internal-format
 msgid "using invalid field %qD"
 msgstr ""
 
-#: cp/pt.c:16922 cp/pt.c:18754
+#: cp/pt.c:17182 cp/pt.c:19055
 #, gcc-internal-format
 msgid "invalid use of pack expansion expression"
 msgstr ""
 
-#: cp/pt.c:16926 cp/pt.c:18758
+#: cp/pt.c:17186 cp/pt.c:19059
 #, gcc-internal-format
 msgid "use %<...%> to expand argument pack"
 msgstr ""
 
-#: cp/pt.c:18896
+#: cp/pt.c:19199
 #, gcc-internal-format
 msgid "empty initializer in lambda init-capture"
 msgstr ""
 
-#: cp/pt.c:19913
+#: cp/pt.c:20249
 #, 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.c:19940
+#: cp/pt.c:20276
 #, gcc-internal-format
 msgid "declarations in dependent base %qT are not found by unqualified lookup"
 msgstr ""
 
-#: cp/pt.c:19945
+#: cp/pt.c:20281
 #, gcc-internal-format
 msgid "use %<this->%D%> instead"
 msgstr ""
 
-#: cp/pt.c:19948
+#: cp/pt.c:20284
 #, gcc-internal-format
 msgid "use %<%T::%D%> instead"
 msgstr ""
 
-#: cp/pt.c:19953
+#: cp/pt.c:20289
 #, gcc-internal-format
 msgid "%qD declared here, later in the translation unit"
 msgstr ""
 
-#: cp/pt.c:20001
+#: cp/pt.c:20337
 #, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_convertvector%>"
 msgstr ""
 
-#: cp/pt.c:20222
+#: cp/pt.c:20557
 #, gcc-internal-format
 msgid "%qT is not a class or namespace"
 msgstr ""
 
-#: cp/pt.c:20225
+#: cp/pt.c:20560
 #, gcc-internal-format
 msgid "%qD is not a class or namespace"
 msgstr ""
 
-#: cp/pt.c:20547
+#: cp/pt.c:20882
 #, gcc-internal-format
 msgid "%qT is/uses unnamed type"
 msgstr ""
 
-#: cp/pt.c:20549
+#: cp/pt.c:20884
 #, gcc-internal-format
 msgid "template argument for %qD uses local type %qT"
 msgstr ""
 
-#: cp/pt.c:20559
+#: cp/pt.c:20894
 #, gcc-internal-format
 msgid "%qT is a variably modified type"
 msgstr ""
 
-#: cp/pt.c:20574
+#: cp/pt.c:20909
 #, gcc-internal-format
 msgid "integral expression %qE is not constant"
 msgstr ""
 
-#: cp/pt.c:20592
+#: cp/pt.c:20927
 #, gcc-internal-format
 msgid "  trying to instantiate %qD"
 msgstr ""
 
-#: cp/pt.c:24614
+#: cp/pt.c:25018
 #, gcc-internal-format
 msgid "ambiguous template instantiation for %q#T"
 msgstr ""
 
-#: cp/pt.c:24616
+#: cp/pt.c:25020
 #, gcc-internal-format
 msgid "ambiguous template instantiation for %q#D"
 msgstr ""
 
-#: cp/pt.c:24622
+#: cp/pt.c:25026
 msgid "%s %#qS"
 msgstr ""
 
-#: cp/pt.c:24646 cp/pt.c:24741
+#: cp/pt.c:25050 cp/pt.c:25145
 #, gcc-internal-format
 msgid "explicit instantiation of non-template %q#D"
 msgstr ""
 
-#: cp/pt.c:24652
+#: cp/pt.c:25056
 #, gcc-internal-format
 msgid "explicit instantiation of variable concept %q#D"
 msgstr ""
 
-#: cp/pt.c:24654
+#: cp/pt.c:25058
 #, gcc-internal-format
 msgid "explicit instantiation of function concept %q#D"
 msgstr ""
 
-#: cp/pt.c:24673
+#: cp/pt.c:25077
 #, gcc-internal-format
 msgid "%qD is not a static data member of a class template"
 msgstr ""
 
-#: cp/pt.c:24679 cp/pt.c:24736
+#: cp/pt.c:25083 cp/pt.c:25140
 #, gcc-internal-format
 msgid "no matching template for %qD found"
 msgstr ""
 
-#: cp/pt.c:24684
+#: cp/pt.c:25088
 #, gcc-internal-format
 msgid ""
 "type %qT for explicit instantiation %qD does not match declared type %qT"
 msgstr ""
 
-#: cp/pt.c:24692
+#: cp/pt.c:25096
 #, gcc-internal-format
 msgid "explicit instantiation of %q#D"
 msgstr ""
 
-#: cp/pt.c:24728
+#: cp/pt.c:25132
 #, gcc-internal-format
 msgid "duplicate explicit instantiation of %q#D"
 msgstr ""
 
-#: cp/pt.c:24751 cp/pt.c:24835
+#: cp/pt.c:25155 cp/pt.c:25222
 #, gcc-internal-format
 msgid "ISO C++ 1998 forbids the use of %<extern%> on explicit instantiations"
 msgstr ""
 
-#: cp/pt.c:24756 cp/pt.c:24851
+#: cp/pt.c:25160 cp/pt.c:25237
 #, gcc-internal-format
 msgid "storage class %qD applied to template instantiation"
 msgstr ""
 
-#: cp/pt.c:24813
+#: cp/pt.c:25194
 #, gcc-internal-format
 msgid "explicit instantiation of non-class template %qD"
 msgstr ""
 
-#: cp/pt.c:24815
+#: cp/pt.c:25197
 #, gcc-internal-format
 msgid "explicit instantiation of non-template type %qT"
 msgstr ""
 
-#: cp/pt.c:24824
+#: cp/pt.c:25206
 #, gcc-internal-format
 msgid "explicit instantiation of %q#T before definition of template"
 msgstr ""
 
-#: cp/pt.c:24840
+#: cp/pt.c:25227
 #, gcc-internal-format
 msgid "ISO C++ forbids the use of %qE on explicit instantiations"
 msgstr ""
 
-#: cp/pt.c:24885
+#: cp/pt.c:25267
 #, gcc-internal-format
 msgid "duplicate explicit instantiation of %q#T"
 msgstr ""
 
-#: cp/pt.c:25226
+#: cp/pt.c:25610
 #, gcc-internal-format
 msgid "exception specification of %qD depends on itself"
 msgstr ""
@@ -57317,12 +59006,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.c:25558
+#: cp/pt.c:26108
 #, gcc-internal-format
 msgid "explicit instantiation of %qD but no definition available"
 msgstr ""
 
-#: cp/pt.c:25750
+#: cp/pt.c:26155
 #, gcc-internal-format
 msgid ""
 "template instantiation depth exceeds maximum of %d instantiating %q+D, "
@@ -57330,1431 +59019,1532 @@ msgid ""
 "increase the maximum)"
 msgstr ""
 
-#: cp/pt.c:26113
+#: cp/pt.c:26521
 #, 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.c:26143
+#: cp/pt.c:26551
 #, gcc-internal-format
 msgid ""
 "%qT is not a valid type for a template non-type parameter because it is not "
 "structural"
 msgstr ""
 
-#: cp/pt.c:26152
+#: cp/pt.c:26560
 #, gcc-internal-format
 msgid ""
 "non-type template parameters of class type only available with %<-std=c+"
 "+20%> or %<-std=gnu++20%>"
 msgstr ""
 
-#: cp/pt.c:26160
+#: cp/pt.c:26568
 #, gcc-internal-format
 msgid "invalid template non-type parameter"
 msgstr ""
 
-#: cp/pt.c:26162
+#: cp/pt.c:26570
 #, gcc-internal-format
 msgid "%q#T is not a valid type for a template non-type parameter"
 msgstr ""
 
-#: cp/pt.c:27515
+#: cp/pt.c:27927
 #, gcc-internal-format
 msgid "keyword %<template%> not allowed in declarator-id"
 msgstr ""
 
-#: cp/pt.c:27776
+#: cp/pt.c:28190
 #, gcc-internal-format
 msgid "a concept cannot be constrained"
 msgstr ""
 
-#: cp/pt.c:27785
+#: cp/pt.c:28199
 #, gcc-internal-format
 msgid "concept %qE not in namespace scope"
 msgstr ""
 
-#: cp/pt.c:27810
+#: cp/pt.c:28226
 #, gcc-internal-format
 msgid ""
 "deducing from brace-enclosed initializer list requires %<#include "
 "<initializer_list>%>"
 msgstr ""
 
-#: cp/pt.c:28756
+#: cp/pt.c:29199
 #, gcc-internal-format
 msgid "non-deducible template %qT used without template arguments"
 msgstr ""
 
-#: cp/pt.c:28763
+#: cp/pt.c:29206
 #, gcc-internal-format
 msgid ""
 "alias template deduction only available with %<-std=c++20%> or %<-std=gnu+"
 "+20%>"
 msgstr ""
 
-#: cp/pt.c:28864
+#: cp/pt.c:29308
 #, 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.c:28871
+#: cp/pt.c:29315
 #, gcc-internal-format
 msgid ""
 "cannot deduce template arguments of %qT, as it has no viable deduction guides"
 msgstr ""
 
-#: cp/pt.c:28886
+#: cp/pt.c:29331
 #, gcc-internal-format
 msgid "class template argument deduction failed:"
 msgstr ""
 
-#: cp/pt.c:28893
+#: cp/pt.c:29339
 #, gcc-internal-format
 msgid "explicit deduction guides not considered for copy-initialization"
 msgstr ""
 
-#: cp/pt.c:28957
+#. TODO: Pass down location from cp_finish_decl.
+#: cp/pt.c:29354
+#, gcc-internal-format
+msgid ""
+"class template argument deduction for %qT failed: explicit deduction guide "
+"selected in copy-list-initialization"
+msgstr ""
+
+#: cp/pt.c:29358
+#, gcc-internal-format
+msgid "explicit deduction guide declared here"
+msgstr ""
+
+#: cp/pt.c:29374
+#, gcc-internal-format
+msgid "%qT may not intend to support class template argument deduction"
+msgstr ""
+
+#: cp/pt.c:29376
+#, gcc-internal-format
+msgid "add a deduction guide to suppress this warning"
+msgstr ""
+
+#: cp/pt.c:29440
 #, gcc-internal-format
 msgid "direct-list-initialization of %<auto%> requires exactly one element"
 msgstr ""
 
-#: cp/pt.c:28960
+#: cp/pt.c:29443
 #, gcc-internal-format
 msgid ""
 "for deduction to %<std::initializer_list%>, use copy-list-initialization (i."
 "e. add %<=%> before the %<{%>)"
 msgstr ""
 
-#: cp/pt.c:29040
+#: cp/pt.c:29534
 #, gcc-internal-format
 msgid "unable to deduce lambda return type from %qE"
 msgstr ""
 
-#: cp/pt.c:29042
+#: cp/pt.c:29536
 #, gcc-internal-format
 msgid "unable to deduce %qT from %qE"
 msgstr ""
 
-#: cp/pt.c:29084
+#: cp/pt.c:29578
 #, gcc-internal-format
 msgid "placeholder constraints not satisfied"
 msgstr ""
 
-#: cp/pt.c:29088
+#: cp/pt.c:29582
 #, gcc-internal-format
 msgid "deduced initializer does not satisfy placeholder constraints"
 msgstr ""
 
-#: cp/pt.c:29092
+#: cp/pt.c:29586
 #, gcc-internal-format
 msgid "deduced return type does not satisfy placeholder constraints"
 msgstr ""
 
-#: cp/pt.c:29096
+#: cp/pt.c:29590
 #, gcc-internal-format
 msgid "deduced expression type does not satisfy placeholder constraints"
 msgstr ""
 
-#: cp/pt.c:29226
+#: cp/pt.c:29720
 #, gcc-internal-format
 msgid "invalid use of %qT in template argument"
 msgstr ""
 
-#: cp/rtti.c:313
+#: cp/rtti.c:314
 #, gcc-internal-format
 msgid "cannot use %<typeid%> with %<-fno-rtti%>"
 msgstr ""
 
-#: cp/rtti.c:322
+#: cp/rtti.c:323
 #, gcc-internal-format
 msgid "must %<#include <typeinfo>%> before using %<typeid%>"
 msgstr ""
 
-#: cp/rtti.c:423
+#: cp/rtti.c:421
 #, gcc-internal-format
 msgid ""
 "cannot create type information for type %qT because it involves types of "
 "variable size"
 msgstr ""
 
-#: cp/rtti.c:514
+#: cp/rtti.c:528
 #, gcc-internal-format
 msgid "%<typeid%> of qualified function type %qT"
 msgstr ""
 
-#: cp/rtti.c:697 cp/rtti.c:713
+#: cp/rtti.c:711 cp/rtti.c:727
 #, gcc-internal-format
 msgid "%<dynamic_cast<%#T>(%#D)%> can never succeed"
 msgstr ""
 
-#: cp/rtti.c:725
+#: cp/rtti.c:739
 #, gcc-internal-format
 msgid "%<dynamic_cast%> not permitted with %<-fno-rtti%>"
 msgstr ""
 
-#: cp/rtti.c:805
+#: cp/rtti.c:815
 #, gcc-internal-format
 msgid "cannot %<dynamic_cast%> %qE (of type %q#T) to type %q#T (%s)"
 msgstr ""
 
-#: cp/search.c:243
+#: cp/search.c:278
 #, gcc-internal-format
 msgid "%qT is an ambiguous base of %qT"
 msgstr ""
 
-#: cp/search.c:259
+#: cp/search.c:294
 #, gcc-internal-format
 msgid "%qT is an inaccessible base of %qT"
 msgstr ""
 
-#: cp/search.c:1876
+#: cp/search.c:1910
 #, gcc-internal-format
 msgid "looser exception specification on overriding virtual function %q+#F"
 msgstr ""
 
-#: cp/search.c:1879
+#: cp/search.c:1913
 #, gcc-internal-format
 msgid "overridden function is %q#F"
 msgstr ""
 
-#: cp/search.c:1948
+#: cp/search.c:1982
 #, gcc-internal-format
 msgid "invalid covariant return type for %q#D"
 msgstr ""
 
-#: cp/search.c:1950 cp/search.c:1967 cp/search.c:1984
+#: cp/search.c:1984 cp/search.c:2001 cp/search.c:2018
 #, gcc-internal-format
 msgid "overridden function is %q#D"
 msgstr ""
 
-#: cp/search.c:1963
+#: cp/search.c:1997
 #, gcc-internal-format
 msgid "invalid covariant return type for %q+#D"
 msgstr ""
 
-#: cp/search.c:1965
+#: cp/search.c:1999
 #, gcc-internal-format
 msgid "conflicting return type specified for %q+#D"
 msgstr ""
 
-#: cp/search.c:1982
+#: cp/search.c:2016
 #, gcc-internal-format
 msgid "conflicting type attributes specified for %q+#D"
 msgstr ""
 
-#: cp/search.c:1997
+#: cp/search.c:2031
 #, gcc-internal-format
 msgid "%<consteval%> function %q+D overriding non-%<consteval%> function"
 msgstr ""
 
-#: cp/search.c:2000
+#: cp/search.c:2034
 #, gcc-internal-format
 msgid "non-%<consteval%> function %q+D overriding %<consteval%> function"
 msgstr ""
 
-#: cp/search.c:2003 cp/search.c:2032 cp/search.c:2041 cp/search.c:2050
+#: cp/search.c:2037 cp/search.c:2066 cp/search.c:2075 cp/search.c:2084
 #, gcc-internal-format
 msgid "overridden function is %qD"
 msgstr ""
 
-#: cp/search.c:2019
+#: cp/search.c:2053
 #, gcc-internal-format
 msgid "%qD declared %<transaction_safe_dynamic%>"
 msgstr ""
 
-#: cp/search.c:2021
+#: cp/search.c:2055
 #, gcc-internal-format
 msgid "overriding %qD declared %<transaction_safe%>"
 msgstr ""
 
-#: cp/search.c:2029
+#: cp/search.c:2063
 #, gcc-internal-format
 msgid "deleted function %q+D overriding non-deleted function"
 msgstr ""
 
-#: cp/search.c:2038
+#: cp/search.c:2072
 #, gcc-internal-format
 msgid "non-deleted function %q+D overriding deleted function"
 msgstr ""
 
-#: cp/search.c:2048
+#: cp/search.c:2082
 #, gcc-internal-format
 msgid "virtual function %q+D overriding final function"
 msgstr ""
 
-#: cp/search.c:2133
+#: cp/search.c:2167
 #, gcc-internal-format
 msgid "%q+#D cannot be declared"
 msgstr ""
 
-#: cp/search.c:2134
+#: cp/search.c:2168
 #, gcc-internal-format
 msgid "  since %q+#D declared in base class"
 msgstr ""
 
-#: cp/semantics.c:843
+#: cp/semantics.c:872
 #, gcc-internal-format
 msgid "%qs always evaluates to true in %<if constexpr%>"
 msgstr ""
 
-#: cp/semantics.c:991
+#: cp/semantics.c:1020
 #, gcc-internal-format
 msgid "suggest explicit braces around empty body in %<do%> statement"
 msgstr ""
 
-#: cp/semantics.c:1504
+#: cp/semantics.c:1533
 #, gcc-internal-format
 msgid "catching polymorphic type %q#T by value"
 msgstr ""
 
-#: cp/semantics.c:1509
+#: cp/semantics.c:1538
 #, gcc-internal-format
 msgid "catching type %q#T by value"
 msgstr ""
 
-#: cp/semantics.c:1514
+#: cp/semantics.c:1543
 #, gcc-internal-format
 msgid "catching non-reference type %q#T"
 msgstr ""
 
-#: cp/semantics.c:1724
+#: cp/semantics.c:1753
 #, gcc-internal-format
 msgid "type of %<asm%> operand %qE could not be determined"
 msgstr ""
 
-#: cp/semantics.c:1806
+#: cp/semantics.c:1835
 #, gcc-internal-format
 msgid "%<__label__%> declarations are only allowed in function scopes"
 msgstr ""
 
-#: cp/semantics.c:1991
+#: cp/semantics.c:2020
 #, gcc-internal-format
 msgid "invalid use of member %qD in static member function"
 msgstr ""
 
-#: cp/semantics.c:2229
+#: cp/semantics.c:2267
 #, gcc-internal-format
 msgid "%qE missing template arguments"
 msgstr ""
 
-#: cp/semantics.c:2289
+#: cp/semantics.c:2327
 #, gcc-internal-format
 msgid ""
 "a statement expression is an insufficient context for overload resolution"
 msgstr ""
 
-#: cp/semantics.c:2641
+#: cp/semantics.c:2679
 #, gcc-internal-format
 msgid "cannot call a concept as a function"
 msgstr ""
 
-#: cp/semantics.c:2709
+#: cp/semantics.c:2747
 #, gcc-internal-format
 msgid "arguments to destructor are not allowed"
 msgstr ""
 
-#: cp/semantics.c:2787
+#: cp/semantics.c:2829
 #, gcc-internal-format
 msgid "%<this%> is unavailable for static member functions"
 msgstr ""
 
-#: cp/semantics.c:2789
+#: cp/semantics.c:2831
 #, gcc-internal-format
 msgid "invalid use of %<this%> in non-member function"
 msgstr ""
 
-#: cp/semantics.c:2791
+#: cp/semantics.c:2833
 #, gcc-internal-format
 msgid "invalid use of %<this%> at top level"
 msgstr ""
 
-#: cp/semantics.c:2813
+#: cp/semantics.c:2855
 #, gcc-internal-format
 msgid "invalid qualifying scope in pseudo-destructor name"
 msgstr ""
 
-#: cp/semantics.c:2821 cp/typeck.c:2743
+#: cp/semantics.c:2863 cp/typeck.c:2756
 #, gcc-internal-format
 msgid "qualified type %qT does not match destructor name ~%qT"
 msgstr ""
 
-#: cp/semantics.c:2843
+#: cp/semantics.c:2885
 #, gcc-internal-format
 msgid "%qE is not of type %qT"
 msgstr ""
 
-#: cp/semantics.c:2920
+#: cp/semantics.c:2965
 #, gcc-internal-format
 msgid "compound literal of non-object type %qT"
 msgstr ""
 
-#: cp/semantics.c:3104
+#: cp/semantics.c:3145
 #, gcc-internal-format
 msgid "template type parameters must use the keyword %<class%> or %<typename%>"
 msgstr ""
 
-#: cp/semantics.c:3154
+#: cp/semantics.c:3195
 #, gcc-internal-format
 msgid ""
 "invalid use of type %qT as a default value for a template template-parameter"
 msgstr ""
 
-#: cp/semantics.c:3157
+#: cp/semantics.c:3198
 #, gcc-internal-format
 msgid "invalid default argument for a template template parameter"
 msgstr ""
 
-#: cp/semantics.c:3174
+#: cp/semantics.c:3215
 #, gcc-internal-format
 msgid "definition of %q#T inside template parameter list"
 msgstr ""
 
-#: cp/semantics.c:3205
+#: cp/semantics.c:3246
 #, gcc-internal-format
 msgid "invalid definition of qualified type %qT"
 msgstr ""
 
-#: cp/semantics.c:3475
+#: cp/semantics.c:3529
 #, gcc-internal-format
 msgid "invalid base-class specification"
 msgstr ""
 
-#: cp/semantics.c:3638
+#: cp/semantics.c:3692
 #, gcc-internal-format
 msgid "cannot capture member %qD of anonymous union"
 msgstr ""
 
-#: cp/semantics.c:3655 cp/semantics.c:10328
+#: cp/semantics.c:3709 cp/semantics.c:10656
 #, gcc-internal-format
 msgid "%qD is not captured"
 msgstr ""
 
-#: cp/semantics.c:3659
+#: cp/semantics.c:3713
 #, gcc-internal-format
 msgid "the lambda has no capture-default"
 msgstr ""
 
-#: cp/semantics.c:3661
+#: cp/semantics.c:3715
 #, gcc-internal-format
 msgid ""
 "lambda in local class %q+T cannot capture variables from the enclosing "
 "context"
 msgstr ""
 
-#: cp/semantics.c:3673
+#: cp/semantics.c:3727
 #, gcc-internal-format
 msgid "use of local variable with automatic storage from containing function"
 msgstr ""
 
-#: cp/semantics.c:3675
+#: cp/semantics.c:3729
 #, gcc-internal-format
 msgid "use of parameter from containing function"
 msgstr ""
 
-#: cp/semantics.c:3802
+#: cp/semantics.c:3856
 #, gcc-internal-format
 msgid "use of parameter outside function body"
 msgstr ""
 
-#: cp/semantics.c:3812
+#: cp/semantics.c:3866
 #, gcc-internal-format
 msgid "missing template arguments"
 msgstr ""
 
-#: cp/semantics.c:3848
+#: cp/semantics.c:3902
 #, 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.c:3879
+#: cp/semantics.c:3933
 #, gcc-internal-format
 msgid "use of class template %qT as expression"
 msgstr ""
 
 #. Ambiguous reference to base members.
-#: cp/semantics.c:3886
+#: cp/semantics.c:3940
 #, gcc-internal-format
 msgid "request for member %qD is ambiguous in multiple inheritance lattice"
 msgstr ""
 
-#: cp/semantics.c:3914
+#: cp/semantics.c:3968
 #, gcc-internal-format
 msgid "%qD cannot appear in a constant-expression"
 msgstr ""
 
-#: cp/semantics.c:4083
+#: cp/semantics.c:4145
 #, gcc-internal-format
 msgid "type of %qE is unknown"
 msgstr ""
 
-#: cp/semantics.c:4112
+#: cp/semantics.c:4174
 #, gcc-internal-format
 msgid "%qT is not an enumeration type"
 msgstr ""
 
 #. Parameter packs can only be used in templates
-#: cp/semantics.c:4246
+#: cp/semantics.c:4308
 #, gcc-internal-format
 msgid "parameter pack %<__bases%> only valid in template declaration"
 msgstr ""
 
-#: cp/semantics.c:4278
+#: cp/semantics.c:4340
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to destructor %<~%T%>"
 msgstr ""
 
-#: cp/semantics.c:4291
+#: cp/semantics.c:4353
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to member function %qD"
 msgstr ""
 
-#: cp/semantics.c:4295
+#: cp/semantics.c:4357
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to member function"
 msgstr ""
 
-#: cp/semantics.c:4300
+#: cp/semantics.c:4362
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to an enumerator %qD"
 msgstr ""
 
-#: cp/semantics.c:4311
+#: cp/semantics.c:4373
 #, gcc-internal-format
 msgid ""
 "%<offsetof%> within non-standard-layout type %qT is conditionally-supported"
 msgstr ""
 
-#: cp/semantics.c:4837 cp/semantics.c:6610 cp/semantics.c:6694
-#: cp/semantics.c:6745 cp/semantics.c:7087 cp/semantics.c:7234
-#: cp/semantics.c:7479 cp/semantics.c:7922
+#: cp/semantics.c:4900 cp/semantics.c:6682 cp/semantics.c:6766
+#: cp/semantics.c:6817 cp/semantics.c:7159 cp/semantics.c:7380
+#: cp/semantics.c:7663 cp/semantics.c:8111
 #, gcc-internal-format
 msgid "%<this%> allowed in OpenMP only in %<declare simd%> clauses"
 msgstr ""
 
-#: cp/semantics.c:5578
+#: cp/semantics.c:5646
 #, gcc-internal-format
 msgid "user defined reduction lookup is ambiguous"
 msgstr ""
 
-#: cp/semantics.c:5851
+#: cp/semantics.c:5920
 #, gcc-internal-format
 msgid "%qE in %<reduction%> clause is a zero size array"
 msgstr ""
 
-#: cp/semantics.c:5901
+#: cp/semantics.c:5970
 #, gcc-internal-format
 msgid "%qE has const type for %<reduction%>"
 msgstr ""
 
-#: cp/semantics.c:6020
+#: cp/semantics.c:6089
 #, gcc-internal-format
 msgid "user defined reduction with constructor initializer for base class %qT"
 msgstr ""
 
-#: cp/semantics.c:6478
+#: cp/semantics.c:6550
 #, gcc-internal-format
 msgid ""
 "linear clause with %qs modifier applied to non-reference variable with %qT "
 "type"
 msgstr ""
 
-#: cp/semantics.c:6493
+#: cp/semantics.c:6565
 #, gcc-internal-format
 msgid ""
 "linear clause applied to non-integral non-pointer variable with %qT type"
 msgstr ""
 
-#: cp/semantics.c:6517
+#: cp/semantics.c:6589
 #, gcc-internal-format
 msgid "linear step expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:6622 cp/semantics.c:7935
+#: cp/semantics.c:6694 cp/semantics.c:8124
 #, gcc-internal-format
 msgid "%qD is not a variable in clause %qs"
 msgstr ""
 
-#: cp/semantics.c:6707
+#: cp/semantics.c:6779
 #, gcc-internal-format
 msgid "%qD is not a variable in clause %<firstprivate%>"
 msgstr ""
 
-#: cp/semantics.c:6758
+#: cp/semantics.c:6830
 #, gcc-internal-format
 msgid "%qD is not a variable in clause %<lastprivate%>"
 msgstr ""
 
-#: cp/semantics.c:6808
+#: cp/semantics.c:6880
 #, gcc-internal-format
 msgid "%<gang%> static expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:6822
+#: cp/semantics.c:6894
 #, gcc-internal-format
 msgid "%<gang%> static value must be positive"
 msgstr ""
 
-#: cp/semantics.c:6856
+#: cp/semantics.c:6928
 #, gcc-internal-format
 msgid "%<gang%> num expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:6859
+#: cp/semantics.c:6931
 #, gcc-internal-format
 msgid "%<vector%> length expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:6863
+#: cp/semantics.c:6935
 #, gcc-internal-format
 msgid "%<worker%> num expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:6885
+#: cp/semantics.c:6957
 #, gcc-internal-format
 msgid "%<gang%> num value must be positive"
 msgstr ""
 
-#: cp/semantics.c:6889
+#: cp/semantics.c:6961
 #, gcc-internal-format
 msgid "%<vector%> length value must be positive"
 msgstr ""
 
-#: cp/semantics.c:6894
+#: cp/semantics.c:6966
 #, gcc-internal-format
 msgid "%<worker%> num value must be positive"
 msgstr ""
 
-#: cp/semantics.c:6921
+#: cp/semantics.c:6993
 #, gcc-internal-format
 msgid "schedule chunk size expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:6954
+#: cp/semantics.c:7026
 #, gcc-internal-format
 msgid "%qs length expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:6968
+#: cp/semantics.c:7040
 #, gcc-internal-format
 msgid "%qs length expression must be positive constant integer expression"
 msgstr ""
 
-#: cp/semantics.c:6988
+#: cp/semantics.c:7060
 #, gcc-internal-format
 msgid "%<async%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:7017
+#: cp/semantics.c:7089
 #, gcc-internal-format
 msgid "%<thread_limit%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:7047
+#: cp/semantics.c:7119
 #, gcc-internal-format
 msgid "%<device%> id must be integral"
 msgstr ""
 
-#: cp/semantics.c:7069
+#: cp/semantics.c:7141
 #, gcc-internal-format
 msgid "%<dist_schedule%> chunk size expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:7098
+#: cp/semantics.c:7170
 #, gcc-internal-format
 msgid "%qD is not a variable in %<aligned%> clause"
 msgstr ""
 
-#: cp/semantics.c:7113
+#: cp/semantics.c:7185
 #, 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.c:7120
+#: cp/semantics.c:7192
 #, gcc-internal-format
 msgid "%qD appears more than once in %<aligned%> clauses"
 msgstr ""
 
-#: cp/semantics.c:7135
+#: cp/semantics.c:7207
 #, gcc-internal-format
 msgid "%<aligned%> clause alignment expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:7168
+#: cp/semantics.c:7240
 #, gcc-internal-format
 msgid "%qD is not a variable in %<nontemporal%> clause"
 msgstr ""
 
-#: cp/semantics.c:7179
+#: cp/semantics.c:7251
 #, gcc-internal-format
 msgid "%qD appears more than once in %<nontemporal%> clauses"
 msgstr ""
 
-#: cp/semantics.c:7244
+#: cp/semantics.c:7268
+#, gcc-internal-format
+msgid "%<this%> not allowed in %<allocate%> clause"
+msgstr ""
+
+#: cp/semantics.c:7280
+#, gcc-internal-format
+msgid "%qD is not a variable in %<allocate%> clause"
+msgstr ""
+
+#: cp/semantics.c:7289
+#, gcc-internal-format
+msgid "%qD appears more than once in %<allocate%> clauses"
+msgstr ""
+
+#: cp/semantics.c:7390
 #, gcc-internal-format
 msgid "%qD is not lvalue expression nor array section in %<depend%> clause"
 msgstr ""
 
-#: cp/semantics.c:7630
+#: cp/semantics.c:7816
 #, gcc-internal-format
 msgid "template %qE in clause %qs"
 msgstr ""
 
-#: cp/semantics.c:7634
+#: cp/semantics.c:7820
 #, gcc-internal-format
 msgid "overloaded function name %qE in clause %qs"
 msgstr ""
 
-#: cp/semantics.c:7703
+#: cp/semantics.c:7889
 #, gcc-internal-format
 msgid "%<grainsize%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:7733
+#: cp/semantics.c:7919
 #, gcc-internal-format
 msgid "%<priority%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:7763
+#: cp/semantics.c:7949
 #, gcc-internal-format
 msgid "%<hint%> expression must be integral"
 msgstr ""
 
-#: cp/semantics.c:7776
+#: cp/semantics.c:7962
 #, gcc-internal-format
 msgid "%<hint%> expression must be constant integer expression"
 msgstr ""
 
-#: cp/semantics.c:7799
+#: cp/semantics.c:7985
 #, gcc-internal-format
 msgid "%qs variable is neither a pointer nor reference to pointer"
 msgstr ""
 
-#: cp/semantics.c:7809
+#: cp/semantics.c:7995
 #, gcc-internal-format
 msgid ""
 "%qs variable is neither a pointer, nor an array nor reference to pointer or "
 "array"
 msgstr ""
 
-#: cp/semantics.c:7863
+#: cp/semantics.c:8052
 #, gcc-internal-format
 msgid "%<tile%> argument needs integral type"
 msgstr ""
 
-#: cp/semantics.c:8204
+#: cp/semantics.c:8441
 #, gcc-internal-format
 msgid ""
 "%<const%> qualified %qE without %<mutable%> member may appear only in "
 "%<shared%> or %<firstprivate%> clauses"
 msgstr ""
 
-#: cp/semantics.c:8398
+#: cp/semantics.c:8668
 #, gcc-internal-format
 msgid "%<threadprivate%> %qD is not file, namespace or block scope variable"
 msgstr ""
 
-#: cp/semantics.c:8412
+#: cp/semantics.c:8682
 #, gcc-internal-format
 msgid "%<threadprivate%> %qE directive not in %qT definition"
 msgstr ""
 
-#: cp/semantics.c:8609
+#: cp/semantics.c:8879
 #, gcc-internal-format
 msgid "difference between %qE and %qD does not have integer type"
 msgstr ""
 
-#: cp/semantics.c:9075
+#: cp/semantics.c:9345
 #, gcc-internal-format
 msgid "%<#pragma omp simd%> used with class iteration variable %qE"
 msgstr ""
 
-#: cp/semantics.c:9378 cp/semantics.c:9388
+#: cp/semantics.c:9648 cp/semantics.c:9658
 #, gcc-internal-format
 msgid "%<#pragma omp atomic update%> uses two different expressions for memory"
 msgstr ""
 
-#: cp/semantics.c:9747
+#: cp/semantics.c:10063
 #, gcc-internal-format, gfc-internal-format
 msgid "static assertion failed: %s"
 msgstr ""
 
-#: cp/semantics.c:9758
+#: cp/semantics.c:10066
+#, gcc-internal-format
+msgid "%qE evaluates to false"
+msgstr ""
+
+#: cp/semantics.c:10078
 #, gcc-internal-format
 msgid "non-constant condition for static assertion"
 msgstr ""
 
-#: cp/semantics.c:9788
+#: cp/semantics.c:10107
 #, gcc-internal-format
 msgid "argument to %<decltype%> must be an expression"
 msgstr ""
 
-#: cp/semantics.c:9824
+#: cp/semantics.c:10144
 #, gcc-internal-format
 msgid "%<decltype%> cannot resolve address of overloaded function"
 msgstr ""
 
-#: cp/semantics.c:10367
+#: cp/semantics.c:10695
 #, gcc-internal-format
 msgid "operand of fold expression has no unexpanded parameter packs"
 msgstr ""
 
-#: cp/semantics.c:10420
+#: cp/semantics.c:10748
 #, gcc-internal-format
 msgid "both arguments in binary fold have unexpanded parameter packs"
 msgstr ""
 
-#: cp/semantics.c:10422
+#: cp/semantics.c:10750
 #, gcc-internal-format
 msgid "no unexpanded parameter packs in binary fold"
 msgstr ""
 
-#: cp/semantics.c:10440
+#: cp/semantics.c:10768
 #, gcc-internal-format
 msgid "non-pointer argument to %<__builtin_launder%>"
 msgstr ""
 
-#: cp/tree.c:1385
+#. 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.c:10817
+#, gcc-internal-format
+msgid "%<__builtin_bit_cast%> destination type %qT is an array type"
+msgstr ""
+
+#: cp/semantics.c:10823
+#, gcc-internal-format
+msgid "%<__builtin_bit_cast%> destination type %qT is not trivially copyable"
+msgstr ""
+
+#: cp/semantics.c:10850
+#, gcc-internal-format
+msgid "%<__builtin_bit_cast%> source type %qT is not trivially copyable"
+msgstr ""
+
+#: cp/semantics.c:10858
+#, gcc-internal-format
+msgid ""
+"%<__builtin_bit_cast%> source size %qE not equal to destination type size %qE"
+msgstr ""
+
+#: cp/tree.c:1416
 #, gcc-internal-format
 msgid "%qV qualifiers cannot be applied to %qT"
 msgstr ""
 
-#: cp/tree.c:1904
+#: cp/tree.c:1937
 #, gcc-internal-format
 msgid "statement-expression in a constant expression"
 msgstr ""
 
-#: cp/tree.c:4116
+#: cp/tree.c:4252
 #, gcc-internal-format
 msgid ""
 "%<-fabi-version=13%> (GCC 8.2) fixes the calling convention for %qT, which "
 "was accidentally changed in 8.1"
 msgstr ""
 
-#: cp/tree.c:4120
+#: cp/tree.c:4256
 #, gcc-internal-format
 msgid ""
 "%<-fabi-version=12%> (GCC 8.1) accidentally changes the calling convention "
 "for %qT"
 msgstr ""
 
-#: cp/tree.c:4123
+#: cp/tree.c:4259
 #, gcc-internal-format
 msgid " declared here"
 msgstr ""
 
-#: cp/tree.c:4128
+#: cp/tree.c:4264
 #, gcc-internal-format
 msgid ""
 "the calling convention for %qT changes in %<-fabi-version=13%> (GCC 8.2)"
 msgstr ""
 
-#: cp/tree.c:4130
+#: cp/tree.c:4266
 #, gcc-internal-format
 msgid " because all of its copy and move constructors are deleted"
 msgstr ""
 
-#: cp/tree.c:4551
+#: cp/tree.c:4687
 #, gcc-internal-format
 msgid "base class %qT is not public"
 msgstr ""
 
-#: cp/tree.c:4554
+#: cp/tree.c:4690
 #, gcc-internal-format
 msgid "%qD is not public"
 msgstr ""
 
-#: cp/tree.c:4561
+#: cp/tree.c:4697
 #, gcc-internal-format
 msgid "%qD is mutable"
 msgstr ""
 
-#: cp/tree.c:4569
+#: cp/tree.c:4705
 #, gcc-internal-format
 msgid "%qD has a non-structural type"
 msgstr ""
 
-#: cp/tree.c:4587
+#: cp/tree.c:4723
 #, gcc-internal-format
 msgid "%qE attribute argument must be a string constant"
 msgstr ""
 
-#: cp/tree.c:4595
-#, gcc-internal-format
-msgid "%qE attribute applied to %qD with void return type"
-msgstr ""
-
-#: cp/tree.c:4602
+#: cp/tree.c:4738
 #, gcc-internal-format
 msgid ""
 "%qE attribute can only be applied to functions or to class or enumeration "
 "types"
 msgstr ""
 
-#: cp/tree.c:4620
+#: cp/tree.c:4756
 #, gcc-internal-format
 msgid "%qE attribute can only be applied to non-static data members"
 msgstr ""
 
-#: cp/tree.c:4626
+#: cp/tree.c:4762
 #, gcc-internal-format
 msgid "%qE attribute cannot be applied to a bit-field"
 msgstr ""
 
-#: cp/tree.c:4646
+#: cp/tree.c:4782
 #, gcc-internal-format
 msgid "%qE attribute takes no arguments"
 msgstr ""
 
-#: cp/tree.c:4650
+#: cp/tree.c:4786
 #, gcc-internal-format
 msgid ""
 "ISO C++ %qE attribute does not apply to functions; treating as %<[[gnu::"
 "%E]]%>"
 msgstr ""
 
-#: cp/tree.c:4713
+#: cp/tree.c:4849
 #, gcc-internal-format
 msgid "requested %<init_priority%> is not an integer constant"
 msgstr ""
 
-#: cp/tree.c:4735
+#: cp/tree.c:4871
 #, gcc-internal-format
 msgid ""
 "can only use %qE attribute on file-scope definitions of objects of class type"
 msgstr ""
 
-#: cp/tree.c:4743
+#: cp/tree.c:4879
 #, gcc-internal-format
 msgid "requested %<init_priority%> %i is out of range [0, %i]"
 msgstr ""
 
-#: cp/tree.c:4754
+#: cp/tree.c:4890
 #, gcc-internal-format
 msgid "requested %<init_priority%> %i is reserved for internal use"
 msgstr ""
 
-#: cp/tree.c:4766
+#: cp/tree.c:4902
 #, gcc-internal-format
 msgid "%qE attribute is not supported on this platform"
 msgstr ""
 
-#: cp/tree.c:4793
+#: cp/tree.c:4929
 #, gcc-internal-format
 msgid "redeclaration of %qD adds abi tag %qE"
 msgstr ""
 
-#: cp/tree.c:4813
+#: cp/tree.c:4949
 #, gcc-internal-format
 msgid "the %qE attribute requires arguments"
 msgstr ""
 
-#: cp/tree.c:4824
+#: cp/tree.c:4960
 #, gcc-internal-format
 msgid "arguments to the %qE attribute must be narrow string literals"
 msgstr ""
 
-#: cp/tree.c:4837 cp/tree.c:4850
+#: cp/tree.c:4973 cp/tree.c:4986
 #, gcc-internal-format
 msgid "arguments to the %qE attribute must contain valid identifiers"
 msgstr ""
 
-#: cp/tree.c:4839
+#: cp/tree.c:4975
 #, gcc-internal-format
 msgid "%<%c%> is not a valid first character for an identifier"
 msgstr ""
 
-#: cp/tree.c:4852
+#: cp/tree.c:4988
 #, gcc-internal-format
 msgid "%<%c%> is not a valid character in an identifier"
 msgstr ""
 
-#: cp/tree.c:4876
+#: cp/tree.c:5012
 #, gcc-internal-format
 msgid "%qE attribute applied to non-class, non-enum type %qT"
 msgstr ""
 
-#: cp/tree.c:4882
+#: cp/tree.c:5018
 #, gcc-internal-format
 msgid "%qE attribute applied to %qT after its definition"
 msgstr ""
 
-#: cp/tree.c:4889
+#: cp/tree.c:5025
 #, gcc-internal-format
 msgid "ignoring %qE attribute applied to template instantiation %qT"
 msgstr ""
 
-#: cp/tree.c:4896
+#: cp/tree.c:5032
 #, gcc-internal-format
 msgid "ignoring %qE attribute applied to template specialization %qT"
 msgstr ""
 
-#: cp/tree.c:4918
+#: cp/tree.c:5054
 #, gcc-internal-format
 msgid "%qE attribute applied to non-function, non-variable %qD"
 msgstr ""
 
-#: cp/tree.c:4924
+#: cp/tree.c:5060
 #, gcc-internal-format
 msgid "%qE attribute applied to extern \"C\" declaration %qD"
 msgstr ""
 
-#: cp/tree.c:5791
+#: cp/tree.c:5940
 #, gcc-internal-format
 msgid "zero as null pointer constant"
 msgstr ""
 
-#: cp/tree.c:5804
+#: cp/tree.c:5962
 #, gcc-internal-format
 msgid "%<lang_*%> check: failed in %s, at %s:%d"
 msgstr ""
 
-#: cp/typeck.c:459
+#: cp/typeck.c:460
 #, gcc-internal-format
 msgid "comparison between distinct pointer types %qT and %qT lacks a cast"
 msgstr ""
 
-#: cp/typeck.c:465
+#: cp/typeck.c:466
 #, gcc-internal-format
 msgid "conversion between distinct pointer types %qT and %qT lacks a cast"
 msgstr ""
 
-#: cp/typeck.c:471
+#: cp/typeck.c:472
 #, gcc-internal-format
 msgid ""
 "conditional expression between distinct pointer types %qT and %qT lacks a "
 "cast"
 msgstr ""
 
-#: cp/typeck.c:619
+#: cp/typeck.c:620
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids comparison between pointer of type %<void *%> and pointer-to-"
 "function"
 msgstr ""
 
-#: cp/typeck.c:624
+#: cp/typeck.c:625
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids conversion between pointer of type %<void *%> and pointer-to-"
 "function"
 msgstr ""
 
-#: cp/typeck.c:629
+#: cp/typeck.c:630
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids conditional expression between pointer of type %<void *%> "
 "and pointer-to-function"
 msgstr ""
 
-#: cp/typeck.c:708
+#: cp/typeck.c:709
 #, gcc-internal-format
 msgid ""
 "comparison between distinct pointer-to-member types %qT and %qT lacks a cast"
 msgstr ""
 
-#: cp/typeck.c:713
+#: cp/typeck.c:714
 #, gcc-internal-format
 msgid ""
 "conversion between distinct pointer-to-member types %qT and %qT lacks a cast"
 msgstr ""
 
-#: cp/typeck.c:718
+#: cp/typeck.c:719
 #, gcc-internal-format
 msgid ""
 "conditional expression between distinct pointer-to-member types %qT and %qT "
 "lacks a cast"
 msgstr ""
 
-#: cp/typeck.c:1532
+#: cp/typeck.c:1540
 #, gcc-internal-format
 msgid "canonical types differ for identical types %qT and %qT"
 msgstr ""
 
-#: cp/typeck.c:1539
+#: cp/typeck.c:1547
 #, gcc-internal-format
 msgid "same canonical type node for different types %qT and %qT"
 msgstr ""
 
-#: cp/typeck.c:1699
+#: cp/typeck.c:1707
 #, gcc-internal-format
 msgid "invalid application of %qs to a member function"
 msgstr ""
 
-#: cp/typeck.c:1797
+#: cp/typeck.c:1805
 #, gcc-internal-format
 msgid "invalid application of %<sizeof%> to a bit-field"
 msgstr ""
 
-#: cp/typeck.c:1805
+#: cp/typeck.c:1813
 #, gcc-internal-format
 msgid "ISO C++ forbids applying %<sizeof%> to an expression of function type"
 msgstr ""
 
-#: cp/typeck.c:1867
+#: cp/typeck.c:1878
 #, gcc-internal-format
 msgid "invalid application of %<__alignof%> to a bit-field"
 msgstr ""
 
-#: cp/typeck.c:1878
+#: cp/typeck.c:1889
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids applying %<__alignof%> to an expression of function type"
 msgstr ""
 
-#: cp/typeck.c:1958
+#: cp/typeck.c:1971
 #, gcc-internal-format
 msgid "%<alignas%> argument has non-integral type %qT"
 msgstr ""
 
-#: cp/typeck.c:2003
+#: cp/typeck.c:2016
 #, gcc-internal-format
 msgid "invalid use of non-static member function of type %qT"
 msgstr ""
 
-#: cp/typeck.c:2171
+#: cp/typeck.c:2184
 #, gcc-internal-format
 msgid "taking address of temporary array"
 msgstr ""
 
-#: cp/typeck.c:2353
+#: cp/typeck.c:2366
 #, gcc-internal-format
 msgid "ISO C++ forbids converting a string constant to %qT"
 msgstr ""
 
-#: cp/typeck.c:2357
+#: cp/typeck.c:2370
 #, gcc-internal-format
 msgid "deprecated conversion from string constant to %qT"
 msgstr ""
 
-#: cp/typeck.c:2493 cp/typeck.c:3056
+#: cp/typeck.c:2506 cp/typeck.c:3071
 #, gcc-internal-format
 msgid ""
 "request for member %qD in %qE, which is of pointer type %qT (maybe you meant "
 "to use %<->%> ?)"
 msgstr ""
 
-#: cp/typeck.c:2497 cp/typeck.c:3060
+#: cp/typeck.c:2510 cp/typeck.c:3075
 #, gcc-internal-format
 msgid "request for member %qD in %qE, which is of non-class type %qT"
 msgstr ""
 
-#: cp/typeck.c:2528
+#: cp/typeck.c:2541
 #, gcc-internal-format
 msgid "invalid use of non-static data member %qE"
 msgstr ""
 
-#: cp/typeck.c:2608
+#: cp/typeck.c:2621
 #, gcc-internal-format
 msgid ""
 "invalid access to non-static data member %qD in virtual base of NULL object"
 msgstr ""
 
-#: cp/typeck.c:2758
+#: cp/typeck.c:2771
 #, gcc-internal-format
 msgid "object type %qT does not match destructor name ~%qT"
 msgstr ""
 
-#: cp/typeck.c:2767
+#: cp/typeck.c:2780
 #, gcc-internal-format
 msgid "the type being destroyed is %qT, but the destructor refers to %qT"
 msgstr ""
 
-#: cp/typeck.c:2908
+#: cp/typeck.c:2922
 #, gcc-internal-format
 msgid "field %q#D can be accessed via %q#D"
 msgstr ""
 
 #. No hint.
-#: cp/typeck.c:2927
+#: cp/typeck.c:2941
 #, gcc-internal-format
 msgid "%q#T has no member named %qE"
 msgstr ""
 
-#: cp/typeck.c:2950
+#: cp/typeck.c:2964
 #, gcc-internal-format
 msgid "%q#T has no member named %qE; did you mean %q#D? (accessible via %q#D)"
 msgstr ""
 
-#: cp/typeck.c:2961
+#: cp/typeck.c:2975
 #, gcc-internal-format
 msgid ""
 "%q#T has no member named %qE; did you mean %q#D? (not accessible from this "
 "context)"
 msgstr ""
 
-#: cp/typeck.c:2975
+#: cp/typeck.c:2990
 #, gcc-internal-format
 msgid "%q#T has no member named %qE; did you mean %qE?"
 msgstr ""
 
-#: cp/typeck.c:3090 cp/typeck.c:3116
+#: cp/typeck.c:3105 cp/typeck.c:3131
 #, gcc-internal-format
 msgid "%<%D::%D%> is not a member of %qT"
 msgstr ""
 
-#: cp/typeck.c:3155
+#: cp/typeck.c:3170
 #, gcc-internal-format
 msgid "%qT is not a base of %qT"
 msgstr ""
 
-#: cp/typeck.c:3208
+#: cp/typeck.c:3223
 #, gcc-internal-format
 msgid "%qD is not a member template function"
 msgstr ""
 
-#: cp/typeck.c:3403
+#: cp/typeck.c:3426
 #, gcc-internal-format
 msgid "%qT is not a pointer-to-object type"
 msgstr ""
 
-#: cp/typeck.c:3435
+#: cp/typeck.c:3458
 #, gcc-internal-format
 msgid "invalid use of array indexing on pointer to member"
 msgstr ""
 
-#: cp/typeck.c:3438
+#: cp/typeck.c:3461
 #, gcc-internal-format
 msgid "invalid use of unary %<*%> on pointer to member"
 msgstr ""
 
-#: cp/typeck.c:3441
+#: cp/typeck.c:3464
 #, gcc-internal-format
 msgid "invalid use of implicit conversion on pointer to member"
 msgstr ""
 
-#: cp/typeck.c:3445
+#: cp/typeck.c:3468
 #, gcc-internal-format
 msgid ""
 "left hand operand of %<->*%> must be a pointer to class, but is a pointer to "
 "member of type %qT"
 msgstr ""
 
-#: cp/typeck.c:3510
+#: cp/typeck.c:3533
 #, gcc-internal-format
 msgid "subscript missing in array reference"
 msgstr ""
 
-#: cp/typeck.c:3607
+#: cp/typeck.c:3630
 #, gcc-internal-format
 msgid "subscripting array declared %<register%>"
 msgstr ""
 
-#: cp/typeck.c:3645
+#: cp/typeck.c:3668
 #, gcc-internal-format
 msgid "subscripted value is neither array nor pointer"
 msgstr ""
 
-#: cp/typeck.c:3717
+#: cp/typeck.c:3740
 #, gcc-internal-format
 msgid "object missing in use of %qE"
 msgstr ""
 
-#: cp/typeck.c:3942
+#: cp/typeck.c:3965
 #, gcc-internal-format
 msgid "ISO C++ forbids calling %<::main%> from within program"
 msgstr ""
 
-#: cp/typeck.c:3963
+#: cp/typeck.c:3986
 #, gcc-internal-format
 msgid ""
 "must use %<.*%> or %<->*%> to call pointer-to-member function in %<%E "
 "(...)%>, e.g. %<(... ->* %E) (...)%>"
 msgstr ""
 
-#: cp/typeck.c:3980
+#: cp/typeck.c:4003
 #, gcc-internal-format
 msgid "%qE cannot be used as a function"
 msgstr ""
 
-#: cp/typeck.c:3983
+#: cp/typeck.c:4006
 #, gcc-internal-format
 msgid "%qD cannot be used as a function"
 msgstr ""
 
-#: cp/typeck.c:3986
+#: cp/typeck.c:4009
 #, gcc-internal-format
 msgid "expression cannot be used as a function"
 msgstr ""
 
-#: cp/typeck.c:4043
+#: cp/typeck.c:4066
 #, gcc-internal-format
 msgid "too many arguments to constructor %q#D"
 msgstr ""
 
-#: cp/typeck.c:4044
+#: cp/typeck.c:4067
 #, gcc-internal-format
 msgid "too few arguments to constructor %q#D"
 msgstr ""
 
-#: cp/typeck.c:4049
+#: cp/typeck.c:4072
 #, gcc-internal-format
 msgid "too many arguments to member function %q#D"
 msgstr ""
 
-#: cp/typeck.c:4050
+#: cp/typeck.c:4073
 #, gcc-internal-format
 msgid "too few arguments to member function %q#D"
 msgstr ""
 
-#: cp/typeck.c:4056
+#: cp/typeck.c:4079
 #, gcc-internal-format
 msgid "too many arguments to function %q#D"
 msgstr ""
 
-#: cp/typeck.c:4057
+#: cp/typeck.c:4080
 #, gcc-internal-format
 msgid "too few arguments to function %q#D"
 msgstr ""
 
-#: cp/typeck.c:4067
+#: cp/typeck.c:4090
 #, gcc-internal-format
 msgid "too many arguments to method %q#D"
 msgstr ""
 
-#: cp/typeck.c:4068
+#: cp/typeck.c:4091
 #, gcc-internal-format
 msgid "too few arguments to method %q#D"
 msgstr ""
 
-#: cp/typeck.c:4071
+#: cp/typeck.c:4094
 #, gcc-internal-format
 msgid "too many arguments to function"
 msgstr ""
 
-#: cp/typeck.c:4072
+#: cp/typeck.c:4095
 #, gcc-internal-format
 msgid "too few arguments to function"
 msgstr ""
 
-#: cp/typeck.c:4154
+#: cp/typeck.c:4177
 #, gcc-internal-format
 msgid "parameter %P of %qD has incomplete type %qT"
 msgstr ""
 
-#: cp/typeck.c:4160
+#: cp/typeck.c:4183
 #, gcc-internal-format
 msgid "parameter %P has incomplete type %qT"
 msgstr ""
 
-#: cp/typeck.c:4409
+#: cp/typeck.c:4432
 #, gcc-internal-format
 msgid "the address of %qD will never be NULL"
 msgstr ""
 
-#: cp/typeck.c:4420
+#: cp/typeck.c:4443
 #, gcc-internal-format
 msgid "the compiler can assume that the address of %qD will never be NULL"
 msgstr ""
 
-#: cp/typeck.c:4543 cp/typeck.c:4555
+#: cp/typeck.c:4489
+#, gcc-internal-format
+msgid ""
+"bitwise operation between different enumeration types %qT and %qT is "
+"deprecated"
+msgstr ""
+
+#: cp/typeck.c:4494
+#, gcc-internal-format
+msgid ""
+"arithmetic between different enumeration types %qT and %qT is deprecated"
+msgstr ""
+
+#: cp/typeck.c:4524
+#, gcc-internal-format
+msgid ""
+"comparison of enumeration type %qT with floating-point type %qT is deprecated"
+msgstr ""
+
+#: cp/typeck.c:4528
+#, gcc-internal-format
+msgid ""
+"comparison of floating-point type %qT with enumeration type %qT is deprecated"
+msgstr ""
+
+#: cp/typeck.c:4537
+#, gcc-internal-format
+msgid ""
+"arithmetic between enumeration type %qT and floating-point type %qT is "
+"deprecated"
+msgstr ""
+
+#: cp/typeck.c:4541
+#, gcc-internal-format
+msgid ""
+"arithmetic between floating-point type %qT and enumeration type %qT is "
+"deprecated"
+msgstr ""
+
+#: cp/typeck.c:4667 cp/typeck.c:4679
 #, gcc-internal-format
 msgid "assuming cast to type %qT from overloaded function"
 msgstr ""
 
-#: cp/typeck.c:4601
+#: cp/typeck.c:4725
 #, gcc-internal-format
 msgid "NULL used in arithmetic"
 msgstr ""
 
-#: cp/typeck.c:5051 cp/typeck.c:5060 cp/typeck.c:5353 cp/typeck.c:5362
+#: cp/typeck.c:5181 cp/typeck.c:5190 cp/typeck.c:5483 cp/typeck.c:5492
 #, gcc-internal-format
 msgid "ISO C++ forbids comparison between pointer and integer"
 msgstr ""
 
-#: cp/typeck.c:5266 cp/typeck.c:5279
+#: cp/typeck.c:5396 cp/typeck.c:5409
 #, gcc-internal-format
 msgid "operand types are %qT and %qT"
 msgstr ""
 
-#: cp/typeck.c:5302
+#: cp/typeck.c:5432
 #, gcc-internal-format
 msgid "three-way comparison of vectors"
 msgstr ""
 
-#: cp/typeck.c:5334 cp/typeck.c:5342
+#: cp/typeck.c:5464 cp/typeck.c:5472
 #, gcc-internal-format
 msgid "ordered comparison of pointer with integer zero (%qT and %qT)"
 msgstr ""
 
-#: cp/typeck.c:5392
+#: cp/typeck.c:5522
 #, gcc-internal-format
 msgid "unordered comparison on non-floating-point argument"
 msgstr ""
 
-#: cp/typeck.c:5437
+#: cp/typeck.c:5568
 msgid ""
 "implicit conversion from %qH to %qI to match other operand of binary "
 "expression"
 msgstr ""
 
-#: cp/typeck.c:5508
+#: cp/typeck.c:5648
 #, gcc-internal-format
 msgid "invalid operands of types %qT and %qT to binary %qO"
 msgstr ""
 
-#: cp/typeck.c:5860
+#: cp/typeck.c:6000
 #, gcc-internal-format
 msgid "ISO C++ forbids using pointer of type %<void *%> in subtraction"
 msgstr ""
 
-#: cp/typeck.c:5868
+#: cp/typeck.c:6008
 #, gcc-internal-format
 msgid "ISO C++ forbids using pointer to a function in subtraction"
 msgstr ""
 
-#: cp/typeck.c:5876
+#: cp/typeck.c:6016
 #, gcc-internal-format
 msgid "ISO C++ forbids using pointer to a method in subtraction"
 msgstr ""
 
-#: cp/typeck.c:5929
+#: cp/typeck.c:6069
 #, gcc-internal-format
 msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
 msgstr ""
 
-#: cp/typeck.c:6008
+#: cp/typeck.c:6148
 #, gcc-internal-format
 msgid "taking address of constructor %qD"
 msgstr ""
 
-#: cp/typeck.c:6009
+#: cp/typeck.c:6149
 #, gcc-internal-format
 msgid "taking address of destructor %qD"
 msgstr ""
 
-#: cp/typeck.c:6025
+#: cp/typeck.c:6165
 #, gcc-internal-format
 msgid "invalid use of %qE to form a pointer-to-member-function"
 msgstr ""
 
-#: cp/typeck.c:6028
+#: cp/typeck.c:6168
 #, gcc-internal-format
 msgid "  a qualified-id is required"
 msgstr ""
 
-#: cp/typeck.c:6035
+#: cp/typeck.c:6175
 #, gcc-internal-format
 msgid ""
 "parentheses around %qE cannot be used to form a pointer-to-member-function"
 msgstr ""
 
-#: cp/typeck.c:6221
+#: cp/typeck.c:6361
 #, 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.c:6227
+#: cp/typeck.c:6367
 #, gcc-internal-format
 msgid ""
 "ISO C++ forbids taking the address of a bound member function to form a "
@@ -58762,445 +60552,445 @@ msgid ""
 msgstr ""
 
 #. Make this a permerror because we used to accept it.
-#: cp/typeck.c:6262
+#: cp/typeck.c:6402
 #, gcc-internal-format
 msgid "taking address of rvalue"
 msgstr ""
 
-#: cp/typeck.c:6279
+#: cp/typeck.c:6419
 #, gcc-internal-format
 msgid "ISO C++ forbids taking address of function %<::main%>"
 msgstr ""
 
-#: cp/typeck.c:6337
+#: cp/typeck.c:6477
 #, gcc-internal-format
 msgid "cannot create pointer to reference member %qD"
 msgstr ""
 
-#: cp/typeck.c:6357
+#: cp/typeck.c:6497
 #, gcc-internal-format
 msgid "attempt to take address of bit-field"
 msgstr ""
 
-#: cp/typeck.c:6373
+#: cp/typeck.c:6513
 #, gcc-internal-format
 msgid "taking address of an immediate function %qD"
 msgstr ""
 
-#: cp/typeck.c:6520
+#: cp/typeck.c:6660
 #, gcc-internal-format
 msgid "%<~%> on an expression of type %<bool%>"
 msgstr ""
 
-#: cp/typeck.c:6521
+#: cp/typeck.c:6661
 #, gcc-internal-format
 msgid "did you mean to use logical not (%<!%>)?"
 msgstr ""
 
-#: cp/typeck.c:6644
+#: cp/typeck.c:6784
 #, gcc-internal-format
 msgid "ISO C++ forbids incrementing an enum"
 msgstr ""
 
-#: cp/typeck.c:6645
+#: cp/typeck.c:6785
 #, gcc-internal-format
 msgid "ISO C++ forbids decrementing an enum"
 msgstr ""
 
-#: cp/typeck.c:6661
+#: cp/typeck.c:6801
 #, gcc-internal-format
 msgid "cannot increment a pointer to incomplete type %qT"
 msgstr ""
 
-#: cp/typeck.c:6663
+#: cp/typeck.c:6803
 #, gcc-internal-format
 msgid "cannot decrement a pointer to incomplete type %qT"
 msgstr ""
 
-#: cp/typeck.c:6675
+#: cp/typeck.c:6815
 #, gcc-internal-format
 msgid "ISO C++ forbids incrementing a pointer of type %qT"
 msgstr ""
 
-#: cp/typeck.c:6677
+#: cp/typeck.c:6817
 #, gcc-internal-format
 msgid "ISO C++ forbids decrementing a pointer of type %qT"
 msgstr ""
 
-#: cp/typeck.c:6716
+#: cp/typeck.c:6856
 #, gcc-internal-format
 msgid "%qs expression of %<volatile%>-qualified type is deprecated"
 msgstr ""
 
-#: cp/typeck.c:6729
+#: cp/typeck.c:6869
 #, gcc-internal-format
 msgid "use of an operand of type %qT in %<operator--%> is forbidden"
 msgstr ""
 
-#: cp/typeck.c:6739
+#: cp/typeck.c:6879
 #, gcc-internal-format
 msgid "use of an operand of type %qT in %<operator++%> is forbidden in C++17"
 msgstr ""
 
-#: cp/typeck.c:6747
+#: cp/typeck.c:6887
 #, gcc-internal-format
 msgid "use of an operand of type %qT in %<operator++%> is deprecated"
 msgstr ""
 
-#: cp/typeck.c:6927
+#: cp/typeck.c:7067
 #, gcc-internal-format
 msgid "cannot take the address of %<this%>, which is an rvalue expression"
 msgstr ""
 
-#: cp/typeck.c:6949
+#: cp/typeck.c:7089
 #, gcc-internal-format
 msgid "address of explicit register variable %qD requested"
 msgstr ""
 
-#: cp/typeck.c:6954
+#: cp/typeck.c:7094
 #, gcc-internal-format
 msgid "address requested for %qD, which is declared %<register%>"
 msgstr ""
 
-#: cp/typeck.c:7029
+#: cp/typeck.c:7169
 #, gcc-internal-format
 msgid "list-initializer for non-class type must not be parenthesized"
 msgstr ""
 
-#: cp/typeck.c:7041
+#: cp/typeck.c:7181
 #, gcc-internal-format
 msgid "expression list treated as compound expression in initializer"
 msgstr ""
 
-#: cp/typeck.c:7045
+#: cp/typeck.c:7185
 #, gcc-internal-format
 msgid "expression list treated as compound expression in mem-initializer"
 msgstr ""
 
-#: cp/typeck.c:7049
+#: cp/typeck.c:7189
 #, gcc-internal-format
 msgid "expression list treated as compound expression in functional cast"
 msgstr ""
 
-#: cp/typeck.c:7086
+#: cp/typeck.c:7226
 #, gcc-internal-format, gfc-internal-format
 msgid "%s expression list treated as compound expression"
 msgstr ""
 
-#: cp/typeck.c:7173
+#: cp/typeck.c:7313
 #, gcc-internal-format
 msgid "no context to resolve type of %qE"
 msgstr ""
 
-#: cp/typeck.c:7207
+#: cp/typeck.c:7347
 #, gcc-internal-format
 msgid "cast from type %qT to type %qT casts away qualifiers"
 msgstr ""
 
-#: cp/typeck.c:7213
+#: cp/typeck.c:7353
 #, gcc-internal-format
 msgid "%<static_cast%> from type %qT to type %qT casts away qualifiers"
 msgstr ""
 
-#: cp/typeck.c:7220
+#: cp/typeck.c:7360
 #, gcc-internal-format
 msgid "%<reinterpret_cast%> from type %qT to type %qT casts away qualifiers"
 msgstr ""
 
-#: cp/typeck.c:7244
+#: cp/typeck.c:7384
 #, gcc-internal-format
 msgid "useless cast to type %q#T"
 msgstr ""
 
-#: cp/typeck.c:7258
+#: cp/typeck.c:7398
 #, gcc-internal-format
 msgid "type qualifiers ignored on cast result type"
 msgstr ""
 
-#: cp/typeck.c:7681
+#: cp/typeck.c:7835
 #, gcc-internal-format
 msgid "invalid %<static_cast%> from type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.c:7687 cp/typeck.c:7693 cp/typeck.c:9348
+#: cp/typeck.c:7841 cp/typeck.c:7847 cp/typeck.c:9502
 #, gcc-internal-format
 msgid "class type %qT is incomplete"
 msgstr ""
 
-#: cp/typeck.c:7719
+#: cp/typeck.c:7873
 msgid "converting from %qH to %qI"
 msgstr ""
 
-#: cp/typeck.c:7794
+#: cp/typeck.c:7948
 #, gcc-internal-format
 msgid "invalid cast of an rvalue expression of type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.c:7864
+#: cp/typeck.c:8018
 msgid "cast from %qH to %qI loses precision"
 msgstr ""
 
-#: cp/typeck.c:7889
+#: cp/typeck.c:8043
 msgid "cast between incompatible function types from %qH to %qI"
 msgstr ""
 
-#: cp/typeck.c:7900
+#: cp/typeck.c:8054
 msgid "cast between incompatible pointer to member types from %qH to %qI"
 msgstr ""
 
-#: cp/typeck.c:7921 cp/typeck.c:8111
+#: cp/typeck.c:8075 cp/typeck.c:8265
 msgid "cast from %qH to %qI increases required alignment of target type"
 msgstr ""
 
-#: cp/typeck.c:7938
+#: cp/typeck.c:8092
 #, gcc-internal-format
 msgid ""
 "casting between pointer-to-function and pointer-to-object is conditionally-"
 "supported"
 msgstr ""
 
-#: cp/typeck.c:7952
+#: cp/typeck.c:8106
 #, gcc-internal-format
 msgid "invalid cast from type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.c:8025
+#: cp/typeck.c:8179
 #, 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.c:8034
+#: cp/typeck.c:8188
 #, 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.c:8076
+#: cp/typeck.c:8230
 #, gcc-internal-format
 msgid "invalid %<const_cast%> of an rvalue of type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.c:8146
+#: cp/typeck.c:8300
 #, gcc-internal-format
 msgid "invalid %<const_cast%> from type %qT to type %qT"
 msgstr ""
 
-#: cp/typeck.c:8247 cp/typeck.c:8256
+#: cp/typeck.c:8401 cp/typeck.c:8410
 #, gcc-internal-format
 msgid "ISO C++ forbids casting to an array type %qT"
 msgstr ""
 
-#: cp/typeck.c:8265
+#: cp/typeck.c:8419
 #, gcc-internal-format
 msgid "invalid cast to function type %qT"
 msgstr ""
 
-#: cp/typeck.c:8575
+#: cp/typeck.c:8729
 #, gcc-internal-format
 msgid ""
 "compound assignment with %<volatile%>-qualified left operand is deprecated"
 msgstr ""
 
-#: cp/typeck.c:8595
+#: cp/typeck.c:8749
 #, gcc-internal-format
 msgid "  in evaluation of %<%Q(%#T, %#T)%>"
 msgstr ""
 
-#: cp/typeck.c:8655
+#: cp/typeck.c:8809
 #, gcc-internal-format
 msgid "assigning to an array from an initializer list"
 msgstr ""
 
-#: cp/typeck.c:8682
+#: cp/typeck.c:8836
 #, gcc-internal-format
 msgid "incompatible types in assignment of %qT to %qT"
 msgstr ""
 
-#: cp/typeck.c:8696
+#: cp/typeck.c:8850
 #, gcc-internal-format
 msgid "array used as initializer"
 msgstr ""
 
-#: cp/typeck.c:8698
+#: cp/typeck.c:8852
 #, gcc-internal-format
 msgid "invalid array assignment"
 msgstr ""
 
-#: cp/typeck.c:8835
+#: cp/typeck.c:8989
 #, gcc-internal-format
 msgid "   in pointer to member function conversion"
 msgstr ""
 
-#: cp/typeck.c:8849
+#: cp/typeck.c:9003
 #, gcc-internal-format
 msgid "pointer to member conversion via virtual base %qT"
 msgstr ""
 
-#: cp/typeck.c:8896 cp/typeck.c:8915
+#: cp/typeck.c:9050 cp/typeck.c:9069
 #, gcc-internal-format
 msgid "   in pointer to member conversion"
 msgstr ""
 
-#: cp/typeck.c:8996
+#: cp/typeck.c:9150
 #, gcc-internal-format
 msgid "invalid conversion to type %qT from type %qT"
 msgstr ""
 
-#: cp/typeck.c:9311
+#: cp/typeck.c:9465
 msgid "cannot convert %qH to %qI in default argument"
 msgstr ""
 
-#: cp/typeck.c:9316
+#: cp/typeck.c:9470
 msgid "cannot convert %qH to %qI in argument passing"
 msgstr ""
 
-#: cp/typeck.c:9325
+#: cp/typeck.c:9479
 msgid "cannot convert %qH to %qI in initialization"
 msgstr ""
 
-#: cp/typeck.c:9329
+#: cp/typeck.c:9483
 msgid "cannot convert %qH to %qI in return"
 msgstr ""
 
-#: cp/typeck.c:9334
+#: cp/typeck.c:9488
 msgid "cannot convert %qH to %qI in assignment"
 msgstr ""
 
-#: cp/typeck.c:9366
+#: cp/typeck.c:9520
 #, gcc-internal-format
 msgid "parameter %qP of %qD might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.c:9370
+#: cp/typeck.c:9524
 #, gcc-internal-format
 msgid "parameter might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.c:9375
+#: cp/typeck.c:9529
 #, gcc-internal-format
 msgid "target of conversion might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.c:9380
+#: cp/typeck.c:9534
 #, gcc-internal-format
 msgid "target of initialization might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.c:9390
+#: cp/typeck.c:9544
 #, gcc-internal-format
 msgid ""
 "left-hand side of assignment might be a candidate for a format attribute"
 msgstr ""
 
-#: cp/typeck.c:9486
+#: cp/typeck.c:9640
 #, gcc-internal-format
 msgid "in passing argument %P of %qD"
 msgstr ""
 
-#: cp/typeck.c:9568
+#: cp/typeck.c:9722
 #, gcc-internal-format
 msgid "returning reference to temporary"
 msgstr ""
 
-#: cp/typeck.c:9571
+#: cp/typeck.c:9725
 #, gcc-internal-format
 msgid ""
 "returning temporary %<initializer_list%> does not extend the lifetime of the "
 "underlying array"
 msgstr ""
 
-#: cp/typeck.c:9607
+#: cp/typeck.c:9761
 #, gcc-internal-format
 msgid "reference to local variable %qD returned"
 msgstr ""
 
-#: cp/typeck.c:9611
+#: cp/typeck.c:9765
 #, gcc-internal-format
 msgid ""
 "returning local %<initializer_list%> variable %qD does not extend the "
 "lifetime of the underlying array"
 msgstr ""
 
-#: cp/typeck.c:9617
+#: cp/typeck.c:9771
 #, gcc-internal-format
 msgid "address of label %qD returned"
 msgstr ""
 
-#: cp/typeck.c:9621
+#: cp/typeck.c:9775
 #, gcc-internal-format
 msgid "address of local variable %qD returned"
 msgstr ""
 
-#: cp/typeck.c:9776
+#: cp/typeck.c:9974
 #, gcc-internal-format
 msgid "moving a local object in a return statement prevents copy elision"
 msgstr ""
 
-#: cp/typeck.c:9778 cp/typeck.c:9801
+#: cp/typeck.c:9976 cp/typeck.c:9999
 #, gcc-internal-format
 msgid "remove %<std::move%> call"
 msgstr ""
 
-#: cp/typeck.c:9800
+#: cp/typeck.c:9998
 #, gcc-internal-format
 msgid "redundant move in return statement"
 msgstr ""
 
-#: cp/typeck.c:9839
+#: cp/typeck.c:10037
 #, 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.c:9847
+#: cp/typeck.c:10045
 #, 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.c:9850
+#: cp/typeck.c:10048
 #, gcc-internal-format
 msgid "returning a value from a constructor"
 msgstr ""
 
 #. Give a helpful error message.
-#: cp/typeck.c:9885 cp/typeck.c:9931
+#: cp/typeck.c:10083 cp/typeck.c:10129
 #, gcc-internal-format
 msgid "return-statement with no value, in function returning %qT"
 msgstr ""
 
-#: cp/typeck.c:9893
+#: cp/typeck.c:10091
 #, gcc-internal-format
 msgid "returning initializer list"
 msgstr ""
 
-#: cp/typeck.c:9912
+#: cp/typeck.c:10110
 #, gcc-internal-format
 msgid "inconsistent types %qT and %qT deduced for lambda return type"
 msgstr ""
 
-#: cp/typeck.c:9915
+#: cp/typeck.c:10113
 #, gcc-internal-format
 msgid "inconsistent deduction for auto return type: %qT and then %qT"
 msgstr ""
 
-#: cp/typeck.c:9950
+#: cp/typeck.c:10148
 #, gcc-internal-format
 msgid "return-statement with a value, in function returning %qT"
 msgstr ""
 
-#: cp/typeck.c:9979
+#: cp/typeck.c:10177
 #, gcc-internal-format
 msgid ""
 "%<operator new%> must not return NULL unless it is declared %<throw()%> (or "
 "%<-fcheck-new%> is in effect)"
 msgstr ""
 
-#: cp/typeck.c:10615
+#: cp/typeck.c:10820
 #, gcc-internal-format
 msgid "using rvalue as lvalue"
 msgstr ""
@@ -59250,323 +61040,323 @@ msgstr ""
 msgid "decrement of read-only reference %qD"
 msgstr ""
 
-#: cp/typeck2.c:317
+#: cp/typeck2.c:175
 #, gcc-internal-format
 msgid "cannot declare variable %q+D to be of abstract type %qT"
 msgstr ""
 
-#: cp/typeck2.c:322
+#: cp/typeck2.c:180
 #, gcc-internal-format
 msgid "cannot declare parameter %q+D to be of abstract type %qT"
 msgstr ""
 
-#: cp/typeck2.c:325
+#: cp/typeck2.c:183
 #, gcc-internal-format
 msgid "cannot declare parameter to be of abstract type %qT"
 msgstr ""
 
-#: cp/typeck2.c:329
+#: cp/typeck2.c:187
 #, gcc-internal-format
 msgid "cannot declare field %q+D to be of abstract type %qT"
 msgstr ""
 
-#: cp/typeck2.c:333
+#: cp/typeck2.c:191
 #, gcc-internal-format
 msgid "invalid abstract return type for member function %q+#D"
 msgstr ""
 
-#: cp/typeck2.c:335
+#: cp/typeck2.c:193
 #, gcc-internal-format
 msgid "invalid abstract return type for function %q+#D"
 msgstr ""
 
 #. Here we do not have location information.
-#: cp/typeck2.c:338
+#: cp/typeck2.c:196
 #, gcc-internal-format
 msgid "invalid abstract type %qT for %qE"
 msgstr ""
 
-#: cp/typeck2.c:340
+#: cp/typeck2.c:198
 #, gcc-internal-format
 msgid "invalid abstract type for %q+D"
 msgstr ""
 
-#: cp/typeck2.c:345
+#: cp/typeck2.c:203
 #, gcc-internal-format
 msgid "creating array of %qT, which is an abstract class type"
 msgstr ""
 
-#: cp/typeck2.c:348
+#: cp/typeck2.c:206
 #, gcc-internal-format
 msgid "invalid cast to abstract class type %qT"
 msgstr ""
 
-#: cp/typeck2.c:351
+#: cp/typeck2.c:209
 #, gcc-internal-format
 msgid "invalid new-expression of abstract class type %qT"
 msgstr ""
 
-#: cp/typeck2.c:354
+#: cp/typeck2.c:212
 #, gcc-internal-format
 msgid "invalid abstract return type %qT"
 msgstr ""
 
-#: cp/typeck2.c:357
+#: cp/typeck2.c:215
 #, gcc-internal-format
 msgid "invalid abstract parameter type %qT"
 msgstr ""
 
-#: cp/typeck2.c:360
+#: cp/typeck2.c:218
 #, gcc-internal-format
 msgid ""
 "expression of abstract class type %qT cannot be used in throw-expression"
 msgstr ""
 
-#: cp/typeck2.c:364
+#: cp/typeck2.c:222
 #, gcc-internal-format
 msgid "cannot declare %<catch%> parameter to be of abstract class type %qT"
 msgstr ""
 
-#: cp/typeck2.c:368
+#: cp/typeck2.c:226
 #, gcc-internal-format
 msgid "cannot allocate an object of abstract type %qT"
 msgstr ""
 
-#: cp/typeck2.c:378
+#: cp/typeck2.c:236
 #, gcc-internal-format
 msgid "  because the following virtual functions are pure within %qT:"
 msgstr ""
 
-#: cp/typeck2.c:384
+#: cp/typeck2.c:242
 #, gcc-internal-format
 msgid "    %#qD"
 msgstr ""
 
-#: cp/typeck2.c:437
+#: cp/typeck2.c:295
 #, gcc-internal-format
 msgid "definition of %q#T is not complete until the closing brace"
 msgstr ""
 
-#: cp/typeck2.c:440
+#: cp/typeck2.c:298
 #, gcc-internal-format
 msgid "forward declaration of %q#T"
 msgstr ""
 
-#: cp/typeck2.c:442
+#: cp/typeck2.c:300
 #, gcc-internal-format
 msgid "declaration of %q#T"
 msgstr ""
 
-#: cp/typeck2.c:473
+#: cp/typeck2.c:331
 #, gcc-internal-format
 msgid "%qD has incomplete type"
 msgstr ""
 
-#: cp/typeck2.c:487
+#: cp/typeck2.c:345
 #, gcc-internal-format
 msgid "invalid use of incomplete type %q#T"
 msgstr ""
 
-#: cp/typeck2.c:524
+#: cp/typeck2.c:382
 #, gcc-internal-format
 msgid "invalid use of member function %qD (did you forget the %<()%> ?)"
 msgstr ""
 
-#: cp/typeck2.c:529
+#: cp/typeck2.c:387
 #, gcc-internal-format
 msgid "invalid use of member %qD (did you forget the %<&%> ?)"
 msgstr ""
 
-#: cp/typeck2.c:539
+#: cp/typeck2.c:397
 #, gcc-internal-format
 msgid "invalid use of placeholder %qT"
 msgstr ""
 
-#: cp/typeck2.c:546
+#: cp/typeck2.c:404
 #, gcc-internal-format
 msgid "invalid use of template type parameter %qT"
 msgstr ""
 
-#: cp/typeck2.c:551
+#: cp/typeck2.c:409
 #, gcc-internal-format
 msgid "invalid use of template template parameter %qT"
 msgstr ""
 
-#: cp/typeck2.c:557
+#: cp/typeck2.c:415
 #, gcc-internal-format
 msgid "invalid use of pack expansion %qT"
 msgstr ""
 
-#: cp/typeck2.c:563
+#: cp/typeck2.c:421
 #, gcc-internal-format
 msgid "invalid use of dependent type %qT"
 msgstr ""
 
-#: cp/typeck2.c:570
+#: cp/typeck2.c:428
 #, gcc-internal-format
 msgid "invalid use of brace-enclosed initializer list"
 msgstr ""
 
-#: cp/typeck2.c:578
+#: cp/typeck2.c:436
 #, gcc-internal-format
 msgid "address of overloaded function with no contextual type information"
 msgstr ""
 
-#: cp/typeck2.c:582
+#: cp/typeck2.c:440
 #, gcc-internal-format
 msgid "overloaded function with no contextual type information"
 msgstr ""
 
-#: cp/typeck2.c:585
+#: cp/typeck2.c:443
 #, gcc-internal-format
 msgid "insufficient contextual information to determine type"
 msgstr ""
 
-#: cp/typeck2.c:846
+#: cp/typeck2.c:727
 #, gcc-internal-format
 msgid "constructor syntax used, but no constructor declared for type %qT"
 msgstr ""
 
-#: cp/typeck2.c:916
+#: cp/typeck2.c:800
 #, gcc-internal-format
 msgid "%<constinit%> variable %qD does not have a constant initializer"
 msgstr ""
 
-#: cp/typeck2.c:1074
+#: cp/typeck2.c:959
 msgid "narrowing conversion of %qE from %qH to %qI is ill-formed in C++11"
 msgstr ""
 
-#: cp/typeck2.c:1086 cp/typeck2.c:1099
+#: cp/typeck2.c:971 cp/typeck2.c:984
 msgid "narrowing conversion of %qE from %qH to %qI"
 msgstr ""
 
-#: cp/typeck2.c:1089
+#: cp/typeck2.c:974
 #, gcc-internal-format
 msgid ""
 " the expression has a constant value but is not a C++ constant-expression"
 msgstr ""
 
-#: cp/typeck2.c:1248
+#: cp/typeck2.c:1139
 #, gcc-internal-format
 msgid "initializer-string for %qT is too long"
 msgstr ""
 
-#: cp/typeck2.c:1309
+#: cp/typeck2.c:1201
 #, gcc-internal-format
 msgid "initializing a base class of type %qT results in object slicing"
 msgstr ""
 
-#: cp/typeck2.c:1311
+#: cp/typeck2.c:1203
 #, gcc-internal-format
 msgid "remove %<{ }%> around initializer"
 msgstr ""
 
-#: cp/typeck2.c:1328
+#: cp/typeck2.c:1220
 #, gcc-internal-format
 msgid "cannot initialize aggregate of type %qT with a compound literal"
 msgstr ""
 
-#: cp/typeck2.c:1695 cp/typeck2.c:1725
+#: cp/typeck2.c:1586 cp/typeck2.c:1616
 #, gcc-internal-format
 msgid "missing initializer for member %qD"
 msgstr ""
 
-#: cp/typeck2.c:1703
+#: cp/typeck2.c:1593
 #, gcc-internal-format
 msgid "member %qD is uninitialized reference"
 msgstr ""
 
-#: cp/typeck2.c:1710
+#: cp/typeck2.c:1600
 #, gcc-internal-format
 msgid "member %qD with uninitialized reference fields"
 msgstr ""
 
-#: cp/typeck2.c:1796
+#: cp/typeck2.c:1691
 #, gcc-internal-format
 msgid "designator order for field %qD does not match declaration order in %qT"
 msgstr ""
 
-#: cp/typeck2.c:1869
+#: cp/typeck2.c:1764
 #, gcc-internal-format
 msgid "no field %qD found in union being initialized"
 msgstr ""
 
-#: cp/typeck2.c:1880
+#: cp/typeck2.c:1775
 #, gcc-internal-format
 msgid "index value instead of field name in union initializer"
 msgstr ""
 
-#: cp/typeck2.c:2074
+#: cp/typeck2.c:1969
 #, gcc-internal-format
 msgid "circular pointer delegation detected"
 msgstr ""
 
-#: cp/typeck2.c:2088
+#: cp/typeck2.c:1983
 #, gcc-internal-format
 msgid "base operand of %<->%> has non-pointer type %qT"
 msgstr ""
 
-#: cp/typeck2.c:2118
+#: cp/typeck2.c:2013
 #, gcc-internal-format
 msgid "result of %<operator->()%> yields non-pointer result"
 msgstr ""
 
-#: cp/typeck2.c:2120
+#: cp/typeck2.c:2015
 #, gcc-internal-format
 msgid "base operand of %<->%> is not a pointer"
 msgstr ""
 
-#: cp/typeck2.c:2147
+#: cp/typeck2.c:2042
 #, gcc-internal-format
 msgid "%qE cannot be used as a member pointer, since it is of type %qT"
 msgstr ""
 
-#: cp/typeck2.c:2156
+#: cp/typeck2.c:2051
 #, gcc-internal-format
 msgid "cannot apply member pointer %qE to %qE, which is of non-class type %qT"
 msgstr ""
 
-#: cp/typeck2.c:2178
+#: cp/typeck2.c:2073
 #, gcc-internal-format
 msgid "pointer to member type %qT incompatible with object type %qT"
 msgstr ""
 
-#: cp/typeck2.c:2236
+#: cp/typeck2.c:2131
 #, gcc-internal-format
 msgid "pointer-to-member-function type %qT requires an rvalue"
 msgstr ""
 
-#: cp/typeck2.c:2247
+#: cp/typeck2.c:2142
 #, gcc-internal-format
 msgid "pointer-to-member-function type %qT requires an lvalue"
 msgstr ""
 
-#: cp/typeck2.c:2255
+#: cp/typeck2.c:2150
 #, gcc-internal-format
 msgid "pointer-to-member-function type %qT requires an lvalue before C++20"
 msgstr ""
 
-#: cp/typeck2.c:2296
+#: cp/typeck2.c:2191
 #, gcc-internal-format
 msgid "functional cast to array type %qT"
 msgstr ""
 
-#: cp/typeck2.c:2318
+#: cp/typeck2.c:2213
 #, gcc-internal-format
 msgid "cannot deduce template arguments for %qT from %<()%>"
 msgstr ""
 
-#: cp/typeck2.c:2338
+#: cp/typeck2.c:2233
 #, gcc-internal-format
 msgid "invalid value-initialization of reference type"
 msgstr ""
 
-#: cp/typeck2.c:2579
+#: cp/typeck2.c:2474
 #, gcc-internal-format
 msgid "call to function %qD which throws incomplete type %q#T"
 msgstr ""
 
-#: cp/typeck2.c:2582
+#: cp/typeck2.c:2477
 #, gcc-internal-format
 msgid "call to function which throws incomplete type %q#T"
 msgstr ""
@@ -59838,12 +61628,12 @@ msgstr ""
 msgid "Array reference at %C cannot have more than %d dimensions"
 msgstr ""
 
-#: fortran/array.c:241 fortran/array.c:696 fortran/check.c:3429
-#: fortran/check.c:5921 fortran/check.c:5959 fortran/check.c:6001
-#: fortran/check.c:6028 fortran/check.c:6291 fortran/match.c:1874
-#: fortran/match.c:3270 fortran/match.c:3612 fortran/match.c:3808
-#: fortran/simplify.c:2957 fortran/simplify.c:2987 fortran/simplify.c:6253
-#: fortran/simplify.c:8236
+#: fortran/array.c:241 fortran/array.c:696 fortran/check.c:3430
+#: fortran/check.c:5927 fortran/check.c:5965 fortran/check.c:6007
+#: fortran/check.c:6034 fortran/check.c:6297 fortran/match.c:1871
+#: fortran/match.c:3267 fortran/match.c:3609 fortran/match.c:3805
+#: fortran/simplify.c:2989 fortran/simplify.c:3019 fortran/simplify.c:6289
+#: fortran/simplify.c:8282
 #, gcc-internal-format
 msgid "Coarrays disabled at %C, use %<-fcoarray=%> to enable"
 msgstr ""
@@ -60008,7 +61798,7 @@ msgstr ""
 msgid "Array constructor including type specification at %C"
 msgstr ""
 
-#: fortran/array.c:1255 fortran/match.c:4244
+#: fortran/array.c:1255 fortran/match.c:4241
 #, gcc-internal-format, gfc-internal-format
 msgid "Type-spec at %L cannot contain a deferred type parameter"
 msgstr ""
@@ -60087,8 +61877,8 @@ msgstr ""
 msgid "Bad array dimension at %L"
 msgstr ""
 
-#: fortran/array.c:2394 fortran/data.c:563 fortran/data.c:582
-#: fortran/data.c:596 fortran/data.c:725
+#: fortran/array.c:2394 fortran/data.c:648 fortran/data.c:667
+#: fortran/data.c:681 fortran/data.c:810
 #, gcc-internal-format
 msgid "Simplification error"
 msgstr ""
@@ -60129,7 +61919,7 @@ msgstr ""
 msgid "Arguments of %qs at %L and %L cannot both be BOZ literal constants"
 msgstr ""
 
-#: fortran/check.c:123 fortran/resolve.c:10875
+#: fortran/check.c:123 fortran/resolve.c:10921
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid use of BOZ literal constant at %L"
 msgstr ""
@@ -60170,7 +61960,7 @@ msgid ""
 "%qs argument of %qs intrinsic at %L must be INTEGER or REAL or CHARACTER"
 msgstr ""
 
-#: fortran/check.c:590 fortran/check.c:3384
+#: fortran/check.c:590 fortran/check.c:3385
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be of intrinsic type"
 msgstr ""
@@ -60185,7 +61975,7 @@ msgstr ""
 msgid "%qs argument of %qs intrinsic at %L must be INTEGER or PROCEDURE"
 msgstr ""
 
-#: fortran/check.c:651 fortran/check.c:7497
+#: fortran/check.c:651 fortran/check.c:7503
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be a constant"
 msgstr ""
@@ -60268,245 +62058,245 @@ msgstr ""
 msgid "%qs argument of %qs intrinsic at %L must not be OPTIONAL"
 msgstr ""
 
-#: fortran/check.c:980
+#: fortran/check.c:981
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be ALLOCATABLE"
 msgstr ""
 
-#: fortran/check.c:998
+#: fortran/check.c:999
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be of kind %d"
 msgstr ""
 
-#: fortran/check.c:1036
+#: fortran/check.c:1037
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L cannot be INTENT(IN)"
 msgstr ""
 
-#: fortran/check.c:1057
+#: fortran/check.c:1058
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be a variable"
 msgstr ""
 
-#: fortran/check.c:1106
+#: fortran/check.c:1107
 #, gcc-internal-format
 msgid ""
 "%<dim%> argument of %qs intrinsic at %L is not a valid codimension index"
 msgstr ""
 
-#: fortran/check.c:1158
+#: fortran/check.c:1159
 #, gcc-internal-format
 msgid "%<dim%> argument of %qs intrinsic at %L is not a valid dimension index"
 msgstr ""
 
-#: fortran/check.c:1261
+#: fortran/check.c:1262
 #, gcc-internal-format, gfc-internal-format
 msgid "Unequal character lengths (%ld/%ld) in %s at %L"
 msgstr ""
 
-#: fortran/check.c:1318
+#: fortran/check.c:1319
 #, gcc-internal-format, gfc-internal-format
 msgid "BOZ literal constant at %L cannot appear in ACHAR intrinsic subprogram"
 msgstr ""
 
-#: fortran/check.c:1409
+#: fortran/check.c:1410
 #, gcc-internal-format
 msgid "%qs and %qs arguments of %qs intrinsic at %L must have the same type"
 msgstr ""
 
-#: fortran/check.c:1418 fortran/check.c:3696
+#: fortran/check.c:1419 fortran/check.c:3702
 #, gcc-internal-format, gfc-internal-format
 msgid "Different type kinds at %L"
 msgstr ""
 
-#: fortran/check.c:1441
+#: fortran/check.c:1442
 #, gcc-internal-format
 msgid ""
 "NULL at %L is not permitted as actual argument to %qs intrinsic function"
 msgstr ""
 
-#: fortran/check.c:1463
+#: fortran/check.c:1464
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be a POINTER"
 msgstr ""
 
-#: fortran/check.c:1472 fortran/check.c:1507 fortran/check.c:4383
+#: fortran/check.c:1473 fortran/check.c:1508 fortran/check.c:4389
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L shall not be coindexed"
 msgstr ""
 
-#: fortran/check.c:1489
+#: fortran/check.c:1490
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must be a pointer or target VARIABLE or "
 "FUNCTION"
 msgstr ""
 
-#: fortran/check.c:1498
+#: fortran/check.c:1499
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be a POINTER or a TARGET"
 msgstr ""
 
-#: fortran/check.c:1523
+#: fortran/check.c:1524
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Array section with a vector subscript at %L shall not be the target of a "
 "pointer"
 msgstr ""
 
-#: fortran/check.c:1570
+#: fortran/check.c:1571
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "ATOM argument at %L to intrinsic function %s shall be an integer of "
 "ATOMIC_INT_KIND or a logical of ATOMIC_LOGICAL_KIND"
 msgstr ""
 
-#: fortran/check.c:1578
+#: fortran/check.c:1579
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "ATOM argument at %L of the %s intrinsic function shall be a coarray or "
 "coindexed"
 msgstr ""
 
-#: fortran/check.c:1585
+#: fortran/check.c:1586
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L shall have the same type as %qs at %L"
 msgstr ""
 
-#: fortran/check.c:1603 fortran/check.c:1816
+#: fortran/check.c:1604 fortran/check.c:1817
 #, gcc-internal-format, gfc-internal-format
 msgid "STAT= argument to %s at %L"
 msgstr ""
 
-#: fortran/check.c:1622 fortran/check.c:1756 fortran/check.c:1853
+#: fortran/check.c:1623 fortran/check.c:1757 fortran/check.c:1854
 #, gcc-internal-format, gfc-internal-format
 msgid "ATOM argument of the %s intrinsic function at %L shall be definable"
 msgstr ""
 
-#: fortran/check.c:1636 fortran/check.c:1836
+#: fortran/check.c:1637 fortran/check.c:1837
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "ATOM argument at %L to intrinsic function %s shall be an integer of "
 "ATOMIC_INT_KIND"
 msgstr ""
 
-#: fortran/check.c:1656
+#: fortran/check.c:1657
 #, gcc-internal-format, gfc-internal-format
 msgid "VALUE argument of the %s intrinsic function at %L shall be definable"
 msgstr ""
 
-#: fortran/check.c:1675 fortran/check.c:1689 fortran/check.c:1724
+#: fortran/check.c:1676 fortran/check.c:1690 fortran/check.c:1725
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L not yet supported"
 msgstr ""
 
-#: fortran/check.c:1709
+#: fortran/check.c:1710
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L shall specify a valid integer kind"
 msgstr ""
 
-#: fortran/check.c:1763 fortran/check.c:1860
+#: fortran/check.c:1764 fortran/check.c:1861
 #, gcc-internal-format, gfc-internal-format
 msgid "OLD argument of the %s intrinsic function at %L shall be definable"
 msgstr ""
 
-#: fortran/check.c:1778
+#: fortran/check.c:1779
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "EVENT argument at %L to the intrinsic EVENT_QUERY shall be of type EVENT_TYPE"
 msgstr ""
 
-#: fortran/check.c:1788
+#: fortran/check.c:1789
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "COUNT argument of the EVENT_QUERY intrinsic function at %L shall be definable"
 msgstr ""
 
-#: fortran/check.c:1801
+#: fortran/check.c:1802
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "COUNT argument of the EVENT_QUERY intrinsic function at %L shall have at "
 "least the range of the default integer"
 msgstr ""
 
-#: fortran/check.c:1880
+#: fortran/check.c:1881
 #, gcc-internal-format, gfc-internal-format
 msgid "Negative argument N at %L"
 msgstr ""
 
-#: fortran/check.c:1978
+#: fortran/check.c:1979
 #, gcc-internal-format, gfc-internal-format
 msgid "BOZ literal constant at %L cannot appear in CHAR intrinsic subprogram"
 msgstr ""
 
-#: fortran/check.c:2102 fortran/check.c:2592
+#: fortran/check.c:2103 fortran/check.c:2593
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must not be present if %<x%> is COMPLEX"
 msgstr ""
 
-#: fortran/check.c:2111 fortran/check.c:2601
+#: fortran/check.c:2112 fortran/check.c:2602
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must have a type of either REAL or "
 "INTEGER"
 msgstr ""
 
-#: fortran/check.c:2121 fortran/check.c:2127
+#: fortran/check.c:2122 fortran/check.c:2128
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Conversion from %s to default-kind COMPLEX(%d) at %L might lose precision, "
 "consider using the KIND argument"
 msgstr ""
 
-#: fortran/check.c:2149
+#: fortran/check.c:2150
 #, gcc-internal-format
 msgid ""
 "Argument %<A%> with INTENT(INOUT) at %L of the intrinsic subroutine %s shall "
 "not have a vector subscript"
 msgstr ""
 
-#: fortran/check.c:2157
+#: fortran/check.c:2158
 #, gcc-internal-format, gfc-internal-format
 msgid "The A argument at %L to the intrinsic %s shall not be coindexed"
 msgstr ""
 
-#: fortran/check.c:2180
+#: fortran/check.c:2181
 #, gcc-internal-format, gfc-internal-format
 msgid "The stat= argument at %L must be a kind=4 integer variable"
 msgstr ""
 
-#: fortran/check.c:2196
+#: fortran/check.c:2197
 #, gcc-internal-format, gfc-internal-format
 msgid "The errmsg= argument at %L must be a default-kind character variable"
 msgstr ""
 
-#: fortran/check.c:2204
+#: fortran/check.c:2205
 #, gcc-internal-format
 msgid "Coarrays disabled at %L, use %<-fcoarray=%> to enable"
 msgstr ""
 
-#: fortran/check.c:2219
+#: fortran/check.c:2220
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Support for the A argument at %L which is polymorphic A argument or has "
 "allocatable components is not yet implemented"
 msgstr ""
 
-#: fortran/check.c:2238
+#: fortran/check.c:2239
 #, gcc-internal-format, gfc-internal-format
 msgid "The A argument at %L of CO_REDUCE shall not be polymorphic"
 msgstr ""
 
-#: fortran/check.c:2245
+#: fortran/check.c:2246
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Support for the A argument at %L with allocatable components is not yet "
 "implemented"
 msgstr ""
 
-#: fortran/check.c:2259
+#: fortran/check.c:2260
 #, gcc-internal-format, gfc-internal-format
 msgid "OPERATOR argument at %L must be a PURE function"
 msgstr ""
@@ -60514,784 +62304,789 @@ msgstr ""
 #. None of the intrinsics fulfills the criteria of taking two arguments,
 #. returning the same type and kind as the arguments and being permitted
 #. as actual argument.
-#: fortran/check.c:2269
+#: fortran/check.c:2270
 #, gcc-internal-format, gfc-internal-format
 msgid "Intrinsic function %s at %L is not permitted for CO_REDUCE"
 msgstr ""
 
-#: fortran/check.c:2286
+#: fortran/check.c:2287
 #, gcc-internal-format, gfc-internal-format
 msgid "The function passed as OPERATOR at %L shall have two arguments"
 msgstr ""
 
-#: fortran/check.c:2296
+#: fortran/check.c:2297
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The A argument at %L has type %s but the function passed as OPERATOR at %L "
 "returns %s"
 msgstr ""
 
-#: fortran/check.c:2305
+#: fortran/check.c:2306
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The function passed as OPERATOR at %L has arguments of type %s and %s but "
 "shall have type %s"
 msgstr ""
 
-#: fortran/check.c:2316
+#: fortran/check.c:2317
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The function passed as OPERATOR at %L shall have scalar nonallocatable "
 "nonpointer arguments and return a nonallocatable nonpointer scalar"
 msgstr ""
 
-#: fortran/check.c:2324
+#: fortran/check.c:2325
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The function passed as OPERATOR at %L shall have the VALUE attribute either "
 "for none or both arguments"
 msgstr ""
 
-#: fortran/check.c:2331
+#: fortran/check.c:2332
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The function passed as OPERATOR at %L shall have the TARGET attribute either "
 "for none or both arguments"
 msgstr ""
 
-#: fortran/check.c:2338
+#: fortran/check.c:2339
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The function passed as OPERATOR at %L shall have the ASYNCHRONOUS attribute "
 "either for none or both arguments"
 msgstr ""
 
-#: fortran/check.c:2346
+#: fortran/check.c:2347
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The function passed as OPERATOR at %L shall not have the OPTIONAL attribute "
 "for either of the arguments"
 msgstr ""
 
-#: fortran/check.c:2376
+#: fortran/check.c:2377
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The character length of the A argument at %L and of the arguments of the "
 "OPERATOR at %L shall be the same"
 msgstr ""
 
-#: fortran/check.c:2383
+#: fortran/check.c:2384
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The character length of the A argument at %L and of the function result of "
 "the OPERATOR at %L shall be the same"
 msgstr ""
 
-#: fortran/check.c:2401
+#: fortran/check.c:2402
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L shall be of type integer, real or "
 "character"
 msgstr ""
 
-#: fortran/check.c:2429 fortran/check.c:2443
+#: fortran/check.c:2430 fortran/check.c:2444
 #, gcc-internal-format, gfc-internal-format
 msgid "BOZ constant at %L cannot appear in the COMPLEX intrinsic subprogram"
 msgstr ""
 
-#: fortran/check.c:2480 fortran/check.c:3110 fortran/check.c:3193
-#: fortran/check.c:3415 fortran/check.c:3463 fortran/check.c:4950
-#: fortran/check.c:5087 fortran/check.c:5142 fortran/check.c:6277
-#: fortran/check.c:6406
+#: fortran/check.c:2481 fortran/check.c:3111 fortran/check.c:3194
+#: fortran/check.c:3416 fortran/check.c:3464 fortran/check.c:4956
+#: fortran/check.c:5093 fortran/check.c:5148 fortran/check.c:6283
+#: fortran/check.c:6412
 #, gcc-internal-format
 msgid "%qs intrinsic with KIND argument at %L"
 msgstr ""
 
-#: fortran/check.c:2527 fortran/check.c:2796 fortran/check.c:2856
+#: fortran/check.c:2528 fortran/check.c:2797 fortran/check.c:2857
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L has invalid shape in dimension %d (%ld/"
 "%ld)"
 msgstr ""
 
-#: fortran/check.c:2542 fortran/check.c:2811 fortran/check.c:2871
+#: fortran/check.c:2543 fortran/check.c:2812 fortran/check.c:2872
 #, gcc-internal-format
 msgid "%qs argument of intrinsic %qs at %L of must have rank %d or be a scalar"
 msgstr ""
 
-#: fortran/check.c:2654 fortran/check.c:3790 fortran/check.c:3798
+#: fortran/check.c:2655 fortran/check.c:3796 fortran/check.c:3804
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be numeric or LOGICAL"
 msgstr ""
 
-#: fortran/check.c:2668
+#: fortran/check.c:2669
 #, gcc-internal-format
 msgid ""
 "Different shape for arguments %qs and %qs at %L for intrinsic %<dot_product%>"
 msgstr ""
 
-#: fortran/check.c:2688 fortran/check.c:2696
+#: fortran/check.c:2689 fortran/check.c:2697
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be default real"
 msgstr ""
 
-#: fortran/check.c:2832
+#: fortran/check.c:2833
 #, gcc-internal-format
 msgid "%qs must be of same type and kind as %qs at %L in %qs"
 msgstr ""
 
-#: fortran/check.c:2890
+#: fortran/check.c:2891
 #, gcc-internal-format
 msgid "Missing %qs argument to %qs intrinsic at %L for %qs of type %qs"
 msgstr ""
 
-#: fortran/check.c:2908
+#: fortran/check.c:2909
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "BOZ literal constant at %L cannot appear in the FLOAT intrinsic subprogram"
 msgstr ""
 
-#: fortran/check.c:2922
+#: fortran/check.c:2923
 #, gcc-internal-format, gfc-internal-format
 msgid "non-default INTEGER kind argument to %s intrinsic at %L"
 msgstr ""
 
-#: fortran/check.c:2983
+#: fortran/check.c:2984
 #, gcc-internal-format
 msgid "COMPLEX argument %qs of %qs intrinsic at %L"
 msgstr ""
 
-#: fortran/check.c:3065
+#: fortran/check.c:3066
 #, gcc-internal-format
 msgid "Arguments of %qs have different kind type parameters at %L"
 msgstr ""
 
-#: fortran/check.c:3161
+#: fortran/check.c:3162
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of %s at %L must be of length one"
 msgstr ""
 
-#: fortran/check.c:3200
+#: fortran/check.c:3201
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be the same kind as %qs"
 msgstr ""
 
-#: fortran/check.c:3234
+#: fortran/check.c:3235
 #, gcc-internal-format
 msgid ""
 "%qs intrinsic subprogram at %L has been deprecated.  Use INT intrinsic "
 "subprogram."
 msgstr ""
 
-#: fortran/check.c:3286
+#: fortran/check.c:3287
 #, gcc-internal-format, gfc-internal-format
 msgid "SIZE at %L must be positive"
 msgstr ""
 
-#: fortran/check.c:3298
+#: fortran/check.c:3299
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The absolute value of SHIFT at %L must be less than or equal to SIZE at %L"
 msgstr ""
 
-#: fortran/check.c:3357
+#: fortran/check.c:3358
 #, gcc-internal-format, gfc-internal-format
 msgid "STATUS at %L shall be an INTENT(OUT) variable"
 msgstr ""
 
-#: fortran/check.c:3366
+#: fortran/check.c:3367
 #, gcc-internal-format
 msgid "%qs at %L shall be an INTENT(OUT) variable"
 msgstr ""
 
-#: fortran/check.c:3391
+#: fortran/check.c:3392
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be a data entity"
 msgstr ""
 
-#: fortran/check.c:3605
+#: fortran/check.c:3606
 #, gcc-internal-format
 msgid "Intrinsic %qs at %L must have at least two arguments"
 msgstr ""
 
-#: fortran/check.c:3653
+#: fortran/check.c:3654
 #, gcc-internal-format
 msgid "Missing %qs argument to the %s intrinsic at %L"
 msgstr ""
 
-#: fortran/check.c:3668
+#: fortran/check.c:3669
 #, gcc-internal-format
 msgid "Duplicate argument %qs at %L to intrinsic %s"
 msgstr ""
 
-#: fortran/check.c:3673
+#: fortran/check.c:3674
 #, gcc-internal-format
 msgid "Unknown argument %qs at %L to intrinsic %s"
 msgstr ""
 
-#: fortran/check.c:3702
+#: fortran/check.c:3699
+#, gcc-internal-format, gfc-internal-format
+msgid "Different character kinds at %L"
+msgstr ""
+
+#: fortran/check.c:3708
 #, gcc-internal-format
 msgid "%<a%d%> argument of %qs intrinsic at %L must be %s(%d)"
 msgstr ""
 
-#: fortran/check.c:3733
+#: fortran/check.c:3739
 #, gcc-internal-format
 msgid "%qs intrinsic with CHARACTER argument at %L"
 msgstr ""
 
-#: fortran/check.c:3740
+#: fortran/check.c:3746
 #, gcc-internal-format
 msgid ""
 "%<a1%> argument of %qs intrinsic at %L must be INTEGER, REAL or CHARACTER"
 msgstr ""
 
-#: fortran/check.c:3807
+#: fortran/check.c:3813
 #, gcc-internal-format
 msgid "Argument types of %qs intrinsic at %L must match (%s/%s)"
 msgstr ""
 
-#: fortran/check.c:3821
+#: fortran/check.c:3827
 #, gcc-internal-format
 msgid ""
 "Different shape on dimension 1 for arguments %qs and %qs at %L for intrinsic "
 "matmul"
 msgstr ""
 
-#: fortran/check.c:3840
+#: fortran/check.c:3846
 #, gcc-internal-format
 msgid ""
 "Different shape on dimension 2 for argument %qs and dimension 1 for argument "
 "%qs at %L for intrinsic matmul"
 msgstr ""
 
-#: fortran/check.c:3849
+#: fortran/check.c:3855
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be of rank 1 or 2"
 msgstr ""
 
-#: fortran/check.c:4012
+#: fortran/check.c:4018
 #, gcc-internal-format
 msgid ""
 "Argument %qs of %qs intrinsic at %L must be in type conformance to argument "
 "%qs at %L"
 msgstr ""
 
-#: fortran/check.c:4130 fortran/check.c:7417 fortran/check.c:7432
+#: fortran/check.c:4136 fortran/check.c:7423 fortran/check.c:7438
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be INTEGER"
 msgstr ""
 
-#: fortran/check.c:4213
+#: fortran/check.c:4219
 #, gcc-internal-format, gfc-internal-format
 msgid "The FROM argument to MOVE_ALLOC at %L shall not be coindexed"
 msgstr ""
 
-#: fortran/check.c:4224
+#: fortran/check.c:4230
 #, gcc-internal-format, gfc-internal-format
 msgid "The TO argument to MOVE_ALLOC at %L shall not be coindexed"
 msgstr ""
 
-#: fortran/check.c:4231
+#: fortran/check.c:4237
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The TO arguments in MOVE_ALLOC at %L must be polymorphic if FROM is "
 "polymorphic"
 msgstr ""
 
-#: fortran/check.c:4242
+#: fortran/check.c:4248
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The FROM and TO arguments of the MOVE_ALLOC intrinsic at %L must have the "
 "same rank %d/%d"
 msgstr ""
 
-#: fortran/check.c:4251
+#: fortran/check.c:4257
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The FROM and TO arguments of the MOVE_ALLOC intrinsic at %L must have the "
 "same corank %d/%d"
 msgstr ""
 
-#: fortran/check.c:4291
+#: fortran/check.c:4297
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The FROM and TO arguments at %L violate aliasing restrictions (F2003 "
 "12.4.1.7)"
 msgstr ""
 
-#: fortran/check.c:4318
+#: fortran/check.c:4324
 #, gcc-internal-format
 msgid "Argument %<S%> of NEAREST at %L shall not be zero"
 msgstr ""
 
-#: fortran/check.c:4368
+#: fortran/check.c:4374
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must be a POINTER, ALLOCATABLE or "
 "procedure pointer"
 msgstr ""
 
-#: fortran/check.c:4376
+#: fortran/check.c:4382
 #, gcc-internal-format, gfc-internal-format
 msgid "NULL intrinsic with allocatable MOLD at %L"
 msgstr ""
 
-#: fortran/check.c:4455 fortran/check.c:6353
+#: fortran/check.c:4461 fortran/check.c:6359
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must provide at least as many elements "
 "as there are .TRUE. values in %qs (%ld/%d)"
 msgstr ""
 
-#: fortran/check.c:4513
+#: fortran/check.c:4519
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be of a dummy variable"
 msgstr ""
 
-#: fortran/check.c:4521
+#: fortran/check.c:4527
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must be of an OPTIONAL dummy variable"
 msgstr ""
 
-#: fortran/check.c:4540
+#: fortran/check.c:4546
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must not be a subobject of %qs"
 msgstr ""
 
-#: fortran/check.c:4591
+#: fortran/check.c:4597
 #, gcc-internal-format, gfc-internal-format
 msgid "The argument of the RANK intrinsic at %L must be a data object"
 msgstr ""
 
-#: fortran/check.c:4698
+#: fortran/check.c:4704
 #, gcc-internal-format
 msgid ""
 "%<shape%> argument of %<reshape%> intrinsic at %L must be an array of "
 "constant size"
 msgstr ""
 
-#: fortran/check.c:4708
+#: fortran/check.c:4714
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L is empty"
 msgstr ""
 
-#: fortran/check.c:4715
+#: fortran/check.c:4721
 #, gcc-internal-format
 msgid ""
 "%<shape%> argument of %<reshape%> intrinsic at %L has more than %d elements"
 msgstr ""
 
-#: fortran/check.c:4732
+#: fortran/check.c:4738
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L has negative element (%d)"
 msgstr ""
 
-#: fortran/check.c:4765
+#: fortran/check.c:4771
 #, gcc-internal-format, gfc-internal-format
 msgid "Element %d of actual argument of RESHAPE at %L cannot be negative"
 msgstr ""
 
-#: fortran/check.c:4803
+#: fortran/check.c:4809
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L has wrong number of elements (%d/%d)"
 msgstr ""
 
-#: fortran/check.c:4821
+#: fortran/check.c:4827
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L has out-of-range dimension (%d)"
 msgstr ""
 
-#: fortran/check.c:4830
+#: fortran/check.c:4836
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L has invalid permutation of dimensions "
 "(dimension %qd duplicated)"
 msgstr ""
 
-#: fortran/check.c:4866
+#: fortran/check.c:4872
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Without padding, there are not enough elements in the intrinsic RESHAPE "
 "source at %L to match the shape"
 msgstr ""
 
-#: fortran/check.c:4883 fortran/check.c:4902
+#: fortran/check.c:4889 fortran/check.c:4908
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L cannot be of type %s"
 msgstr ""
 
-#: fortran/check.c:4893 fortran/check.c:4912
+#: fortran/check.c:4899 fortran/check.c:4918
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be of an extensible type"
 msgstr ""
 
-#: fortran/check.c:5011
+#: fortran/check.c:5017
 #, gcc-internal-format
 msgid "SELECTED_REAL_KIND with neither %<P%> nor %<R%> argument at %L"
 msgstr ""
 
-#: fortran/check.c:5042
+#: fortran/check.c:5048
 #, gcc-internal-format
 msgid "%qs intrinsic with RADIX argument at %L"
 msgstr ""
 
-#: fortran/check.c:5080
+#: fortran/check.c:5086
 #, gcc-internal-format
 msgid ""
 "%<source%> argument of %<shape%> intrinsic at %L must not be an assumed size "
 "array"
 msgstr ""
 
-#: fortran/check.c:5160 fortran/check.c:7477
+#: fortran/check.c:5166 fortran/check.c:7483
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L shall not be a procedure"
 msgstr ""
 
-#: fortran/check.c:5173 fortran/check.c:5312 fortran/check.c:7469
+#: fortran/check.c:5179 fortran/check.c:5318 fortran/check.c:7475
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L shall not be TYPE(*)"
 msgstr ""
 
-#: fortran/check.c:5184 fortran/check.c:5324
+#: fortran/check.c:5190 fortran/check.c:5330
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L shall not be an assumed-size array"
 msgstr ""
 
-#: fortran/check.c:5254
+#: fortran/check.c:5260
 #, gcc-internal-format
 msgid "is_c_interoperable(): gfc_simplify_expr failed"
 msgstr ""
 
-#: fortran/check.c:5303
+#: fortran/check.c:5309
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must be an interoperable data entity: %s"
 msgstr ""
 
-#: fortran/check.c:5342
+#: fortran/check.c:5348
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Argument C_PTR_1 at %L to C_ASSOCIATED shall have the type TYPE(C_PTR) or "
 "TYPE(C_FUNPTR)"
 msgstr ""
 
-#: fortran/check.c:5356
+#: fortran/check.c:5362
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Argument C_PTR_2 at %L to C_ASSOCIATED shall have the same type as C_PTR_1: "
 "%s instead of %s"
 msgstr ""
 
-#: fortran/check.c:5380
+#: fortran/check.c:5386
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument CPTR at %L to C_F_POINTER shall have the type TYPE(C_PTR)"
 msgstr ""
 
-#: fortran/check.c:5392
+#: fortran/check.c:5398
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument FPTR at %L to C_F_POINTER must be a pointer"
 msgstr ""
 
-#: fortran/check.c:5399
+#: fortran/check.c:5405
 #, gcc-internal-format, gfc-internal-format
 msgid "FPTR argument at %L to C_F_POINTER shall not be polymorphic"
 msgstr ""
 
-#: fortran/check.c:5406
+#: fortran/check.c:5412
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument FPTR at %L to C_F_POINTER shall not be coindexed"
 msgstr ""
 
-#: fortran/check.c:5413
+#: fortran/check.c:5419
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected SHAPE argument at %L to C_F_POINTER with scalar FPTR"
 msgstr ""
 
-#: fortran/check.c:5419
+#: fortran/check.c:5425
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected SHAPE argument to C_F_POINTER with array FPTR at %L"
 msgstr ""
 
-#: fortran/check.c:5438
+#: fortran/check.c:5444
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "SHAPE argument at %L to C_F_POINTER must have the same size as the RANK of "
 "FPTR"
 msgstr ""
 
-#: fortran/check.c:5448
+#: fortran/check.c:5454
 #, gcc-internal-format, gfc-internal-format
 msgid "Polymorphic FPTR at %L to C_F_POINTER"
 msgstr ""
 
-#: fortran/check.c:5453
+#: fortran/check.c:5459
 #, gcc-internal-format, gfc-internal-format
 msgid "Noninteroperable array FPTR at %L to C_F_POINTER: %s"
 msgstr ""
 
-#: fortran/check.c:5469
+#: fortran/check.c:5475
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Argument CPTR at %L to C_F_PROCPOINTER shall have the type TYPE(C_FUNPTR)"
 msgstr ""
 
-#: fortran/check.c:5481
+#: fortran/check.c:5487
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument FPTR at %L to C_F_PROCPOINTER shall be a procedure pointer"
 msgstr ""
 
-#: fortran/check.c:5488
+#: fortran/check.c:5494
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument FPTR at %L to C_F_PROCPOINTER shall not be coindexed"
 msgstr ""
 
-#: fortran/check.c:5494
+#: fortran/check.c:5500
 #, gcc-internal-format, gfc-internal-format
 msgid "Noninteroperable procedure pointer at %L to C_F_PROCPOINTER"
 msgstr ""
 
-#: fortran/check.c:5508
+#: fortran/check.c:5514
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument X at %L to C_FUNLOC shall not be coindexed"
 msgstr ""
 
-#: fortran/check.c:5520
+#: fortran/check.c:5526
 #, gcc-internal-format
 msgid "Function result %qs at %L is invalid as X argument to C_FUNLOC"
 msgstr ""
 
-#: fortran/check.c:5527
+#: fortran/check.c:5533
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Argument X at %L to C_FUNLOC shall be a procedure or a procedure pointer"
 msgstr ""
 
-#: fortran/check.c:5533
+#: fortran/check.c:5539
 #, gcc-internal-format, gfc-internal-format
 msgid "Noninteroperable procedure at %L to C_FUNLOC"
 msgstr ""
 
-#: fortran/check.c:5547
+#: fortran/check.c:5553
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument X at %L to C_LOC shall not be coindexed"
 msgstr ""
 
-#: fortran/check.c:5553
+#: fortran/check.c:5559
 #, gcc-internal-format, gfc-internal-format
 msgid "X argument at %L to C_LOC shall not be polymorphic"
 msgstr ""
 
-#: fortran/check.c:5564
+#: fortran/check.c:5570
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Argument X at %L to C_LOC shall have either the POINTER or the TARGET "
 "attribute"
 msgstr ""
 
-#: fortran/check.c:5572
+#: fortran/check.c:5578
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument X at %L to C_LOC shall be not be a zero-sized string"
 msgstr ""
 
-#: fortran/check.c:5581
+#: fortran/check.c:5587
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument at %L to C_LOC shall not be polymorphic"
 msgstr ""
 
-#: fortran/check.c:5588
+#: fortran/check.c:5594
 #, gcc-internal-format, gfc-internal-format
 msgid "Noninteroperable array at %L as argument to C_LOC: %s"
 msgstr ""
 
-#: fortran/check.c:5599
+#: fortran/check.c:5605
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Array of interoperable type at %L to C_LOC which is nonallocatable and "
 "neither assumed size nor explicit size"
 msgstr ""
 
-#: fortran/check.c:5604
+#: fortran/check.c:5610
 #, gcc-internal-format, gfc-internal-format
 msgid "Array section at %L to C_LOC"
 msgstr ""
 
-#: fortran/check.c:5632
+#: fortran/check.c:5638
 #, gcc-internal-format, gfc-internal-format
 msgid "non double precision REAL argument to %s intrinsic at %L"
 msgstr ""
 
-#: fortran/check.c:5648
+#: fortran/check.c:5654
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L must be less than rank %d"
 msgstr ""
 
-#: fortran/check.c:5667
+#: fortran/check.c:5673
 #, gcc-internal-format
 msgid "%qs argument of %qs intrinsic at %L is not a valid dimension index"
 msgstr ""
 
-#: fortran/check.c:5930
+#: fortran/check.c:5936
 #, gcc-internal-format, gfc-internal-format
 msgid "%s argument to IMAGE_INDEX must be a rank one array at %L"
 msgstr ""
 
-#: fortran/check.c:5941
+#: fortran/check.c:5947
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The number of array elements of the SUB argument to IMAGE_INDEX at %L shall "
 "be %d (corank) not %d"
 msgstr ""
 
-#: fortran/check.c:5974
+#: fortran/check.c:5980
 #, gcc-internal-format, gfc-internal-format
 msgid "DISTANCE= argument to NUM_IMAGES at %L"
 msgstr ""
 
-#: fortran/check.c:5987
+#: fortran/check.c:5993
 #, gcc-internal-format, gfc-internal-format
 msgid "FAILED= argument to NUM_IMAGES at %L"
 msgstr ""
 
-#: fortran/check.c:6011
+#: fortran/check.c:6017
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TEAM argument at %L to the intrinsic TEAM_NUMBER shall be of type TEAM_TYPE"
 msgstr ""
 
-#: fortran/check.c:6037
+#: fortran/check.c:6043
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "DIM argument without COARRAY argument not allowed for THIS_IMAGE intrinsic "
 "at %L"
 msgstr ""
 
-#: fortran/check.c:6044
+#: fortran/check.c:6050
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The DISTANCE argument may not be specified together with the COARRAY or DIM "
 "argument in intrinsic at %L"
 msgstr ""
 
-#: fortran/check.c:6055
+#: fortran/check.c:6061
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected DIM argument with noncoarray argument at %L"
 msgstr ""
 
-#: fortran/check.c:6073
+#: fortran/check.c:6079
 #, gcc-internal-format, gfc-internal-format
 msgid "DISTANCE= argument to THIS_IMAGE at %L"
 msgstr ""
 
-#: fortran/check.c:6131
+#: fortran/check.c:6137
 #, gcc-internal-format
 msgid ""
 "%<MOLD%> argument of %<TRANSFER%> intrinsic at %L is an array and shall not "
 "have storage size 0 when %<SOURCE%> argument has size greater than 0"
 msgstr ""
 
-#: fortran/check.c:6183
+#: fortran/check.c:6189
 #, gcc-internal-format
 msgid "%<SOURCE%> argument of %<TRANSFER%> intrinsic at %L must not be a %s"
 msgstr ""
 
-#: fortran/check.c:6202
+#: fortran/check.c:6208
 #, gcc-internal-format
 msgid "%<MOLD%> argument of %<TRANSFER%> intrinsic at %L must not be a %s"
 msgstr ""
 
-#: fortran/check.c:6210
+#: fortran/check.c:6216
 #, gcc-internal-format
 msgid "%<MOLD%> argument of %<TRANSFER%> intrinsic at %L must not be %s"
 msgstr ""
 
-#: fortran/check.c:6245
+#: fortran/check.c:6251
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Intrinsic TRANSFER at %L has partly undefined result: source size %ld < "
 "result size %ld"
 msgstr ""
 
-#: fortran/check.c:6367
+#: fortran/check.c:6373
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must have the same rank as %qs or be a "
 "scalar"
 msgstr ""
 
-#: fortran/check.c:6380
+#: fortran/check.c:6386
 #, gcc-internal-format
 msgid "%qs and %qs arguments of %qs intrinsic at %L must have identical shape."
 msgstr ""
 
-#: fortran/check.c:6646 fortran/check.c:6678
+#: fortran/check.c:6652 fortran/check.c:6684
 #, gcc-internal-format
 msgid "Size of %qs argument of %qs intrinsic at %L too small (%i/%i)"
 msgstr ""
 
-#: fortran/check.c:6686
+#: fortran/check.c:6692
 #, gcc-internal-format, gfc-internal-format
 msgid "Too many arguments to %s at %L"
 msgstr ""
 
-#: fortran/check.c:6704
+#: fortran/check.c:6710
 #, gcc-internal-format
 msgid "fe_runtime_error string must be null terminated"
 msgstr ""
 
-#: fortran/check.c:6716
+#: fortran/check.c:6722
 #, gcc-internal-format, gfc-internal-format
 msgid "fe_runtime_error: Wrong number of arguments (%d instead of %d)"
 msgstr ""
 
-#: fortran/check.c:6756
+#: fortran/check.c:6762
 #, gcc-internal-format, gfc-internal-format
 msgid "COUNT argument to SYSTEM_CLOCK at %L has non-default kind"
 msgstr ""
 
-#: fortran/check.c:6775
+#: fortran/check.c:6781
 #, gcc-internal-format, gfc-internal-format
 msgid "Real COUNT_RATE argument to SYSTEM_CLOCK at %L"
 msgstr ""
 
-#: fortran/check.c:6785
+#: fortran/check.c:6791
 #, gcc-internal-format, gfc-internal-format
 msgid "COUNT_RATE argument to SYSTEM_CLOCK at %L has non-default kind"
 msgstr ""
 
-#: fortran/check.c:6802
+#: fortran/check.c:6808
 #, gcc-internal-format, gfc-internal-format
 msgid "COUNT_MAX argument to SYSTEM_CLOCK at %L has non-default kind"
 msgstr ""
 
-#: fortran/check.c:7019
+#: fortran/check.c:7025
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must be of a kind not wider than the "
 "default kind (%d)"
 msgstr ""
 
-#: fortran/check.c:7201
+#: fortran/check.c:7207
 #, gcc-internal-format
 msgid "Actual argument at %L of %qs intrinsic shall be an associated pointer"
 msgstr ""
 
-#: fortran/check.c:7390 fortran/check.c:7401
+#: fortran/check.c:7396 fortran/check.c:7407
 #, gcc-internal-format
 msgid ""
 "%qs argument of %qs intrinsic at %L must be INTEGER, LOGICAL, or a BOZ "
 "literal constant"
 msgstr ""
 
-#: fortran/check.c:7461
+#: fortran/check.c:7467
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Intrinsic function NULL at %L cannot be an actual argument to STORAGE_SIZE, "
 "because it returns a disassociated pointer"
 msgstr ""
 
-#: fortran/class.c:648
+#: fortran/class.c:650
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Assumed size polymorphic objects or components, such as that at %C, have not "
@@ -61300,22 +63095,22 @@ msgstr ""
 
 #. Since the extension field is 8 bit wide, we can only have
 #. up to 255 extension levels.
-#: fortran/class.c:763 fortran/decl.c:3908 fortran/decl.c:10577
+#: fortran/class.c:765 fortran/decl.c:3911 fortran/decl.c:10592
 #, gcc-internal-format
 msgid "Maximum extension level reached with type %qs at %L"
 msgstr ""
 
-#: fortran/class.c:2951 fortran/class.c:3025
+#: fortran/class.c:2955 fortran/class.c:3029
 #, gcc-internal-format
 msgid "%qs of %qs is PRIVATE at %L"
 msgstr ""
 
-#: fortran/cpp.c:451
+#: fortran/cpp.c:453
 #, gcc-internal-format
 msgid "To enable preprocessing, use %<-cpp%>"
 msgstr ""
 
-#: fortran/cpp.c:549 fortran/cpp.c:560 fortran/cpp.c:688
+#: fortran/cpp.c:551 fortran/cpp.c:562 fortran/cpp.c:690
 #, gcc-internal-format
 msgid "opening output file %qs: %s"
 msgstr ""
@@ -61340,34 +63135,49 @@ msgstr ""
 msgid "Initialization string at %L was truncated to fit the variable (%ld/%ld)"
 msgstr ""
 
-#: fortran/data.c:268
+#: fortran/data.c:188 fortran/resolve.c:5099
+#, gcc-internal-format, gfc-internal-format
+msgid "Substring start index at %L is less than one"
+msgstr ""
+
+#: fortran/data.c:194 fortran/resolve.c:5129
+#, gcc-internal-format, gfc-internal-format
+msgid "Substring end index at %L exceeds the string length"
+msgstr ""
+
+#: fortran/data.c:284
 #, gcc-internal-format
 msgid "%qs at %L already is initialized at %L"
 msgstr ""
 
-#: fortran/data.c:292
+#: fortran/data.c:308
 #, gcc-internal-format, gfc-internal-format
 msgid "Data element below array lower bound at %L"
 msgstr ""
 
-#: fortran/data.c:309 fortran/data.c:398
+#: fortran/data.c:325 fortran/data.c:414
 #, gcc-internal-format, gfc-internal-format
 msgid "Data element above array upper bound at %L"
 msgstr ""
 
-#: fortran/data.c:339 fortran/data.c:496
+#: fortran/data.c:355 fortran/data.c:580
 #, gcc-internal-format
 msgid "re-initialization of %qs at %L"
 msgstr ""
 
-#: fortran/data.c:515
+#: fortran/data.c:525
+#, gcc-internal-format, gfc-internal-format
+msgid "LEN or KIND inquiry ref in DATA statement at %L"
+msgstr ""
+
+#: fortran/data.c:600
 #, gcc-internal-format
 msgid ""
 "Nonpointer object %qs with default initialization shall not appear in a DATA "
 "statement at %L"
 msgstr ""
 
-#: fortran/data.c:738
+#: fortran/data.c:823
 #, gcc-internal-format
 msgid "TODO: Vector sections in data statements"
 msgstr ""
@@ -61514,812 +63324,812 @@ msgstr ""
 msgid "deferred type parameter at %C"
 msgstr ""
 
-#: fortran/decl.c:1152 fortran/resolve.c:12391
+#: fortran/decl.c:1155 fortran/resolve.c:12452
 #, gcc-internal-format, gfc-internal-format
 msgid "Scalar INTEGER expression expected at %L"
 msgstr ""
 
-#: fortran/decl.c:1178
+#: fortran/decl.c:1181
 #, gcc-internal-format, gfc-internal-format
 msgid "Old-style character length at %C"
 msgstr ""
 
-#: fortran/decl.c:1209
+#: fortran/decl.c:1212
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in character length specification at %C"
 msgstr ""
 
-#: fortran/decl.c:1361 fortran/decl.c:1368 fortran/decl.c:1432
+#: fortran/decl.c:1364 fortran/decl.c:1371 fortran/decl.c:1435
 #, gcc-internal-format
 msgid "Procedure %qs at %C is already defined at %L"
 msgstr ""
 
-#: fortran/decl.c:1376
+#: fortran/decl.c:1379
 #, gcc-internal-format
 msgid "Contained procedure %qs at %C clashes with procedure defined at %L"
 msgstr ""
 
-#: fortran/decl.c:1388
+#: fortran/decl.c:1391
 #, gcc-internal-format
 msgid "Name %qs at %C is already defined as a generic interface at %L"
 msgstr ""
 
-#: fortran/decl.c:1404
+#: fortran/decl.c:1407
 #, gcc-internal-format
 msgid ""
 "Procedure %qs at %C has an explicit interface from a previous declaration"
 msgstr ""
 
-#: fortran/decl.c:1420
+#: fortran/decl.c:1423
 #, gcc-internal-format
 msgid ""
 "Procedure %qs defined in interface body at %L clashes with internal "
 "procedure defined at %C"
 msgstr ""
 
-#: fortran/decl.c:1503
+#: fortran/decl.c:1506
 #, gcc-internal-format
 msgid ""
 "Procedure %qs at %L must have the BIND(C) attribute to be C interoperable"
 msgstr ""
 
-#: fortran/decl.c:1530
+#: fortran/decl.c:1533
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L is a dummy argument to the BIND(C) procedure %qs but is "
 "not C interoperable because derived type %qs is not C interoperable"
 msgstr ""
 
-#: fortran/decl.c:1537
+#: fortran/decl.c:1540
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L is a dummy argument to the BIND(C) procedure %qs but is "
 "not C interoperable because it is polymorphic"
 msgstr ""
 
-#: fortran/decl.c:1544
+#: fortran/decl.c:1547
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L is a dummy argument of the BIND(C) procedure %qs but may "
 "not be C interoperable"
 msgstr ""
 
-#: fortran/decl.c:1559
+#: fortran/decl.c:1562
 #, gcc-internal-format
 msgid ""
 "Character argument %qs at %L must be length 1 because procedure %qs is "
 "BIND(C)"
 msgstr ""
 
-#: fortran/decl.c:1572
+#: fortran/decl.c:1575
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L with ALLOCATABLE attribute in procedure %qs with BIND(C)"
 msgstr ""
 
-#: fortran/decl.c:1580
+#: fortran/decl.c:1583
 #, gcc-internal-format
 msgid "Variable %qs at %L with POINTER attribute in procedure %qs with BIND(C)"
 msgstr ""
 
-#: fortran/decl.c:1589
+#: fortran/decl.c:1592
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L cannot have both the OPTIONAL and the VALUE attribute "
 "because procedure %qs is BIND(C)"
 msgstr ""
 
-#: fortran/decl.c:1596
+#: fortran/decl.c:1599
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L with OPTIONAL attribute in procedure %qs which is BIND(C)"
 msgstr ""
 
-#: fortran/decl.c:1607
+#: fortran/decl.c:1610
 #, gcc-internal-format
 msgid ""
 "Assumed-shape array %qs at %L as dummy argument to the BIND(C) procedure %qs "
 "at %L"
 msgstr ""
 
-#: fortran/decl.c:1675
+#: fortran/decl.c:1678
 #, gcc-internal-format
 msgid "Symbol %qs at %C also declared as a type at %L"
 msgstr ""
 
-#: fortran/decl.c:1734
+#: fortran/decl.c:1737
 #, gcc-internal-format
 msgid ""
 "Variable %qs in common block %qs at %C must be declared with a C "
 "interoperable kind since common block %qs is BIND(C)"
 msgstr ""
 
-#: fortran/decl.c:1774
+#: fortran/decl.c:1777
 #, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER length must be a constant at %L"
 msgstr ""
 
-#: fortran/decl.c:1789
+#: fortran/decl.c:1792
 #, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER expression at %L is being truncated (%ld/%ld)"
 msgstr ""
 
-#: fortran/decl.c:1797
+#: fortran/decl.c:1800
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The CHARACTER elements of the array constructor at %L must have the same "
 "length (%ld/%ld)"
 msgstr ""
 
-#: fortran/decl.c:1896
+#: fortran/decl.c:1899
 #, gcc-internal-format
 msgid "Initializer not allowed for PARAMETER %qs at %C"
 msgstr ""
 
-#: fortran/decl.c:1909
+#: fortran/decl.c:1912
 #, gcc-internal-format, gfc-internal-format
 msgid "PARAMETER at %L is missing an initializer"
 msgstr ""
 
-#: fortran/decl.c:1919
+#: fortran/decl.c:1922
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %C with an initializer already appears in a DATA statement"
 msgstr ""
 
-#: fortran/decl.c:1962
+#: fortran/decl.c:1965
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot initialize parameter array at %L with variable length elements"
 msgstr ""
 
-#: fortran/decl.c:2031
+#: fortran/decl.c:2034
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot initialize implied-shape array at %L with scalar"
 msgstr ""
 
-#: fortran/decl.c:2042
+#: fortran/decl.c:2045
 #, gcc-internal-format
 msgid "gfc_array_size failed"
 msgstr ""
 
-#: fortran/decl.c:2072
+#: fortran/decl.c:2075
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-constant lower bound in implied-shape declaration at %L"
 msgstr ""
 
-#: fortran/decl.c:2158 fortran/decl.c:2165
+#: fortran/decl.c:2161 fortran/decl.c:2168
 #, gcc-internal-format, gfc-internal-format
 msgid "Component at %C must have the POINTER attribute"
 msgstr ""
 
-#: fortran/decl.c:2174
+#: fortran/decl.c:2177
 #, gcc-internal-format
 msgid "Component %qs with CLASS at %C must be allocatable or pointer"
 msgstr ""
 
-#: fortran/decl.c:2183
+#: fortran/decl.c:2186
 #, gcc-internal-format, gfc-internal-format
 msgid "Array component of structure at %C must have explicit or deferred shape"
 msgstr ""
 
-#: fortran/decl.c:2207 fortran/symbol.c:2263
+#: fortran/decl.c:2210 fortran/symbol.c:2263
 #, gcc-internal-format
 msgid "Component %qs at %C already declared at %L"
 msgstr ""
 
-#: fortran/decl.c:2255
+#: fortran/decl.c:2258
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer array component of structure at %C must have a deferred shape"
 msgstr ""
 
-#: fortran/decl.c:2264
+#: fortran/decl.c:2267
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocatable component of structure at %C must have a deferred shape"
 msgstr ""
 
-#: fortran/decl.c:2273
+#: fortran/decl.c:2276
 #, gcc-internal-format, gfc-internal-format
 msgid "Array component of structure at %C must have an explicit shape"
 msgstr ""
 
-#: fortran/decl.c:2290
+#: fortran/decl.c:2293
 #, gcc-internal-format
 msgid ""
 "Type parameter %qs at %C has no corresponding entry in the type parameter "
 "name list at %L"
 msgstr ""
 
-#: fortran/decl.c:2347
+#: fortran/decl.c:2350
 #, gcc-internal-format, gfc-internal-format
 msgid "NULL() initialization at %C is ambiguous"
 msgstr ""
 
-#: fortran/decl.c:2364
+#: fortran/decl.c:2367
 #, gcc-internal-format, gfc-internal-format
 msgid "NULL() initialization at %C may not have MOLD"
 msgstr ""
 
-#: fortran/decl.c:2381
+#: fortran/decl.c:2384
 #, gcc-internal-format, gfc-internal-format
 msgid "Initialization of pointer at %C is not allowed in a PURE procedure"
 msgstr ""
 
-#: fortran/decl.c:2402
+#: fortran/decl.c:2405
 #, gcc-internal-format, gfc-internal-format
 msgid "Error in pointer initialization at %C"
 msgstr ""
 
-#: fortran/decl.c:2409
+#: fortran/decl.c:2412
 #, gcc-internal-format, gfc-internal-format
 msgid "non-NULL pointer initialization at %C"
 msgstr ""
 
-#: fortran/decl.c:2432
+#: fortran/decl.c:2435
 #, gcc-internal-format
 msgid ""
 "RESULT variable %qs at %L prohibits FUNCTION name %qs at %C from appearing "
 "in a specification statement"
 msgstr ""
 
-#: fortran/decl.c:2486
+#: fortran/decl.c:2489
 #, gcc-internal-format
 msgid "%qs not allowed outside STRUCTURE at %C"
 msgstr ""
 
-#: fortran/decl.c:2488
+#: fortran/decl.c:2491
 #, gcc-internal-format
 msgid "%qs at %C is a DEC extension, enable with %<-fdec-structure%>"
 msgstr ""
 
-#: fortran/decl.c:2496
+#: fortran/decl.c:2499
 #, gcc-internal-format
 msgid "%qs entity cannot have attributes at %C"
 msgstr ""
 
-#: fortran/decl.c:2506
+#: fortran/decl.c:2509
 #, gcc-internal-format
 msgid "Invalid character %qc in variable name at %C"
 msgstr ""
 
-#: fortran/decl.c:2548
+#: fortran/decl.c:2551
 #, gcc-internal-format
 msgid "Non-PARAMETER symbol %qs at %L cannot be implied-shape"
 msgstr ""
 
-#: fortran/decl.c:2558
+#: fortran/decl.c:2561
 #, gcc-internal-format, gfc-internal-format
 msgid "Implied-shape array at %L"
 msgstr ""
 
-#: fortran/decl.c:2615
+#: fortran/decl.c:2618
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Explicit array shape at %C must be constant of INTEGER type and not %s type"
 msgstr ""
 
-#: fortran/decl.c:2623
+#: fortran/decl.c:2626
 #, gcc-internal-format, gfc-internal-format
 msgid "Explicit shaped array with nonconstant bounds at %C"
 msgstr ""
 
-#: fortran/decl.c:2712
+#: fortran/decl.c:2715
 #, gcc-internal-format
 msgid ""
 "%qs at %C is a redefinition of the declaration in the corresponding "
 "interface for MODULE PROCEDURE %qs"
 msgstr ""
 
-#: fortran/decl.c:2723
+#: fortran/decl.c:2726
 #, gcc-internal-format
 msgid "%qs entity cannot have an initializer at %C"
 msgstr ""
 
-#: fortran/decl.c:2748 fortran/decl.c:8818
+#: fortran/decl.c:2751 fortran/decl.c:8823
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate array spec for Cray pointee at %C"
 msgstr ""
 
-#: fortran/decl.c:2756
+#: fortran/decl.c:2759
 #, gcc-internal-format
 msgid "Cannot set pointee array spec."
 msgstr ""
 
-#: fortran/decl.c:2819
+#: fortran/decl.c:2822
 #, gcc-internal-format, gfc-internal-format
 msgid "Old-style initialization at %C"
 msgstr ""
 
-#: fortran/decl.c:2827
+#: fortran/decl.c:2830
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid old style initialization for derived type component at %C"
 msgstr ""
 
-#: fortran/decl.c:2840
+#: fortran/decl.c:2843
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in old style initialization of %s at %C"
 msgstr ""
 
-#: fortran/decl.c:2860 fortran/decl.c:7034
+#: fortran/decl.c:2863 fortran/decl.c:7037
 #, gcc-internal-format, gfc-internal-format
 msgid "Initialization at %C isn't for a pointer variable"
 msgstr ""
 
-#: fortran/decl.c:2883
+#: fortran/decl.c:2886
 #, gcc-internal-format
 msgid "Pointer initialization at %C requires %<=>%>, not %<=%>"
 msgstr ""
 
-#: fortran/decl.c:2892 fortran/decl.c:10751
+#: fortran/decl.c:2895 fortran/decl.c:10766
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected an initialization expression at %C"
 msgstr ""
 
-#: fortran/decl.c:2899
+#: fortran/decl.c:2902
 #, gcc-internal-format, gfc-internal-format
 msgid "Initialization of variable at %C is not allowed in a PURE procedure"
 msgstr ""
 
-#: fortran/decl.c:2916
+#: fortran/decl.c:2919
 #, gcc-internal-format, gfc-internal-format
 msgid "Initialization of allocatable component at %C is not allowed"
 msgstr ""
 
-#: fortran/decl.c:2925
+#: fortran/decl.c:2928
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Initialization of structure component with a HOLLERITH constant at %L is not "
 "allowed"
 msgstr ""
 
-#: fortran/decl.c:2939
+#: fortran/decl.c:2942
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The component with KIND or LEN attribute at %C does not not appear in the "
 "type parameter list at %L"
 msgstr ""
 
-#: fortran/decl.c:2947
+#: fortran/decl.c:2950
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The component at %C that appears in the type parameter list at %L has "
 "neither the KIND nor LEN attribute"
 msgstr ""
 
-#: fortran/decl.c:2955
+#: fortran/decl.c:2958
 #, gcc-internal-format, gfc-internal-format
 msgid "The component at %C which is a type parameter must be a scalar"
 msgstr ""
 
-#: fortran/decl.c:2964
+#: fortran/decl.c:2967
 #, gcc-internal-format, gfc-internal-format
 msgid "BOZ literal constant at %L cannot appear as an initializer"
 msgstr ""
 
-#: fortran/decl.c:2981
+#: fortran/decl.c:2984
 #, gcc-internal-format
 msgid ""
 "Incompatible initialization between a derived type entity and an entity with "
 "%qs type at %C"
 msgstr ""
 
-#: fortran/decl.c:3044 fortran/decl.c:3080
+#: fortran/decl.c:3047 fortran/decl.c:3083
 #, gcc-internal-format, gfc-internal-format
 msgid "Old-style type declaration %s*%d not supported at %C"
 msgstr ""
 
-#: fortran/decl.c:3086
+#: fortran/decl.c:3089
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonstandard type declaration %s*%d at %C"
 msgstr ""
 
-#: fortran/decl.c:3145 fortran/decl.c:3222
+#: fortran/decl.c:3148 fortran/decl.c:3225
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing right parenthesis at %C"
 msgstr ""
 
-#: fortran/decl.c:3158 fortran/decl.c:3293
+#: fortran/decl.c:3161 fortran/decl.c:3296
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected initialization expression at %C"
 msgstr ""
 
-#: fortran/decl.c:3166 fortran/decl.c:3299
+#: fortran/decl.c:3169 fortran/decl.c:3302
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected scalar initialization expression at %C"
 msgstr ""
 
-#: fortran/decl.c:3196 fortran/decl.c:3929
+#: fortran/decl.c:3199 fortran/decl.c:3932
 #, gcc-internal-format, gfc-internal-format
 msgid "Kind %d not supported for type %s at %C"
 msgstr ""
 
-#: fortran/decl.c:3209
+#: fortran/decl.c:3212
 #, gcc-internal-format, gfc-internal-format
 msgid "C kind type parameter is for type %s but type at %L is %s"
 msgstr ""
 
-#: fortran/decl.c:3220
+#: fortran/decl.c:3223
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing right parenthesis or comma at %C"
 msgstr ""
 
-#: fortran/decl.c:3325
+#: fortran/decl.c:3328
 #, gcc-internal-format, gfc-internal-format
 msgid "Kind %d is not supported for CHARACTER at %C"
 msgstr ""
 
-#: fortran/decl.c:3457
+#: fortran/decl.c:3460
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in CHARACTER declaration at %C"
 msgstr ""
 
-#: fortran/decl.c:3556
+#: fortran/decl.c:3559
 #, gcc-internal-format
 msgid "RECORD at %C is an extension, enable it with %<-fdec-structure%>"
 msgstr ""
 
-#: fortran/decl.c:3569
+#: fortran/decl.c:3572
 #, gcc-internal-format, gfc-internal-format
 msgid "Structure name expected after RECORD at %C"
 msgstr ""
 
-#: fortran/decl.c:3682
+#: fortran/decl.c:3685
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The type parameter spec list at %C cannot contain both ASSUMED and DEFERRED "
 "parameters"
 msgstr ""
 
-#: fortran/decl.c:3706
+#: fortran/decl.c:3709
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The type parameter spec list at %C does not contain enough parameter "
 "expressions"
 msgstr ""
 
-#: fortran/decl.c:3730
+#: fortran/decl.c:3733
 #, gcc-internal-format
 msgid "The derived parameter %qs at %C does not have a default value"
 msgstr ""
 
-#: fortran/decl.c:3763
+#: fortran/decl.c:3766
 #, gcc-internal-format, gfc-internal-format
 msgid "The parameter expression at %C must be of INTEGER type and not %s type"
 msgstr ""
 
-#: fortran/decl.c:3770
+#: fortran/decl.c:3773
 #, gcc-internal-format, gfc-internal-format
 msgid "The parameter expression at %C does not simplify to an INTEGER constant"
 msgstr ""
 
-#: fortran/decl.c:3797
+#: fortran/decl.c:3800
 #, gcc-internal-format
 msgid "The KIND parameter %qs at %C cannot either be ASSUMED or DEFERRED"
 msgstr ""
 
-#: fortran/decl.c:3804
+#: fortran/decl.c:3807
 #, gcc-internal-format
 msgid ""
 "The value for the KIND parameter %qs at %C does not reduce to a constant "
 "expression"
 msgstr ""
 
-#: fortran/decl.c:3819
+#: fortran/decl.c:3822
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The type parameter spec list at %C contains too many parameter expressions"
 msgstr ""
 
-#: fortran/decl.c:3828
+#: fortran/decl.c:3831
 #, gcc-internal-format, gfc-internal-format
 msgid "Parameterized derived type at %C is ambiguous"
 msgstr ""
 
-#: fortran/decl.c:4064
+#: fortran/decl.c:4067
 #, gcc-internal-format, gfc-internal-format
 msgid "BYTE type at %C"
 msgstr ""
 
-#: fortran/decl.c:4076
+#: fortran/decl.c:4079
 #, gcc-internal-format, gfc-internal-format
 msgid "BYTE type used at %C is not available on the target machine"
 msgstr ""
 
-#: fortran/decl.c:4138
+#: fortran/decl.c:4141
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed type at %C is not allowed for components"
 msgstr ""
 
-#: fortran/decl.c:4141
+#: fortran/decl.c:4144
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed type at %C"
 msgstr ""
 
-#: fortran/decl.c:4163 fortran/decl.c:4197 fortran/decl.c:4230
-#: fortran/decl.c:4529
+#: fortran/decl.c:4166 fortran/decl.c:4200 fortran/decl.c:4233
+#: fortran/decl.c:4532
 #, gcc-internal-format, gfc-internal-format
 msgid "TYPE with intrinsic-type-spec at %C"
 msgstr ""
 
-#: fortran/decl.c:4175 fortran/decl.c:4203 fortran/decl.c:4236
-#: fortran/decl.c:4262 fortran/decl.c:4554 fortran/decl.c:4569
+#: fortran/decl.c:4178 fortran/decl.c:4206 fortran/decl.c:4239
+#: fortran/decl.c:4265 fortran/decl.c:4557 fortran/decl.c:4572
 #, gcc-internal-format, gfc-internal-format
 msgid "Malformed type-spec at %C"
 msgstr ""
 
-#: fortran/decl.c:4226
+#: fortran/decl.c:4229
 #, gcc-internal-format, gfc-internal-format
 msgid "DOUBLE COMPLEX at %C"
 msgstr ""
 
-#: fortran/decl.c:4278 fortran/decl.c:4420 fortran/decl.c:4432
-#: fortran/decl.c:4446 fortran/decl.c:4928 fortran/decl.c:4936
+#: fortran/decl.c:4281 fortran/decl.c:4423 fortran/decl.c:4435
+#: fortran/decl.c:4449 fortran/decl.c:4931 fortran/decl.c:4939
 #, gcc-internal-format
 msgid "Type name %qs at %C is ambiguous"
 msgstr ""
 
-#: fortran/decl.c:4379
+#: fortran/decl.c:4382
 #, gcc-internal-format, gfc-internal-format
 msgid "CLASS statement at %C"
 msgstr ""
 
-#: fortran/decl.c:4461
+#: fortran/decl.c:4464
 #, gcc-internal-format
 msgid ""
 "Type name %qs at %C conflicts with previously declared entity at %L, which "
 "has the same name"
 msgstr ""
 
-#: fortran/decl.c:4604
+#: fortran/decl.c:4607
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate IMPLICIT NONE statement at %C"
 msgstr ""
 
-#: fortran/decl.c:4613
+#: fortran/decl.c:4616
 #, gcc-internal-format, gfc-internal-format
 msgid "IMPORT NONE with spec list at %C"
 msgstr ""
 
-#: fortran/decl.c:4672
+#: fortran/decl.c:4675
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing character range in IMPLICIT at %C"
 msgstr ""
 
-#: fortran/decl.c:4718
+#: fortran/decl.c:4721
 #, gcc-internal-format, gfc-internal-format
 msgid "Letters must be in alphabetic order in IMPLICIT statement at %C"
 msgstr ""
 
-#: fortran/decl.c:4771
+#: fortran/decl.c:4774
 #, gcc-internal-format, gfc-internal-format
 msgid "IMPLICIT statement at %C following an IMPLICIT NONE (type) statement"
 msgstr ""
 
-#: fortran/decl.c:4781
+#: fortran/decl.c:4784
 #, gcc-internal-format, gfc-internal-format
 msgid "Empty IMPLICIT statement at %C"
 msgstr ""
 
-#: fortran/decl.c:4887
+#: fortran/decl.c:4890
 #, gcc-internal-format, gfc-internal-format
 msgid "IMPORT statement at %C only permitted in an INTERFACE body"
 msgstr ""
 
-#: fortran/decl.c:4894
+#: fortran/decl.c:4897
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "F2008: C1210 IMPORT statement at %C is not permitted in a module procedure "
 "interface body"
 msgstr ""
 
-#: fortran/decl.c:4899
+#: fortran/decl.c:4902
 #, gcc-internal-format, gfc-internal-format
 msgid "IMPORT statement at %C"
 msgstr ""
 
-#: fortran/decl.c:4913
+#: fortran/decl.c:4916
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting list of named entities at %C"
 msgstr ""
 
-#: fortran/decl.c:4942
+#: fortran/decl.c:4945
 #, gcc-internal-format
 msgid "Cannot IMPORT %qs from host scoping unit at %C - does not exist."
 msgstr ""
 
-#: fortran/decl.c:4949
+#: fortran/decl.c:4952
 #, gcc-internal-format
 msgid "%qs is already IMPORTed from host scoping unit at %C"
 msgstr ""
 
-#: fortran/decl.c:4990
+#: fortran/decl.c:4993
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in IMPORT statement at %C"
 msgstr ""
 
-#: fortran/decl.c:5330
+#: fortran/decl.c:5333
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing codimension specification at %C"
 msgstr ""
 
-#: fortran/decl.c:5332
+#: fortran/decl.c:5335
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing dimension specification at %C"
 msgstr ""
 
-#: fortran/decl.c:5427
+#: fortran/decl.c:5430
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate %s attribute at %L"
 msgstr ""
 
-#: fortran/decl.c:5444
+#: fortran/decl.c:5447
 #, gcc-internal-format
 msgid "%s at %L is a DEC extension, enable with %<-fdec-static%>"
 msgstr ""
 
-#: fortran/decl.c:5463
+#: fortran/decl.c:5466
 #, gcc-internal-format, gfc-internal-format
 msgid "ALLOCATABLE attribute at %C in a TYPE definition"
 msgstr ""
 
-#: fortran/decl.c:5465
+#: fortran/decl.c:5468
 #, gcc-internal-format, gfc-internal-format
 msgid "ALLOCATABLE attribute at %C in a STRUCTURE definition"
 msgstr ""
 
-#: fortran/decl.c:5475
+#: fortran/decl.c:5478
 #, gcc-internal-format, gfc-internal-format
 msgid "KIND attribute at %C in a TYPE definition"
 msgstr ""
 
-#: fortran/decl.c:5477
+#: fortran/decl.c:5480
 #, gcc-internal-format, gfc-internal-format
 msgid "KIND attribute at %C in a STRUCTURE definition"
 msgstr ""
 
-#: fortran/decl.c:5485
+#: fortran/decl.c:5488
 #, gcc-internal-format, gfc-internal-format
 msgid "Component with KIND attribute at %C must be INTEGER"
 msgstr ""
 
-#: fortran/decl.c:5492
+#: fortran/decl.c:5495
 #, gcc-internal-format, gfc-internal-format
 msgid "Component with KIND attribute at %C must be default integer kind (%d)"
 msgstr ""
 
-#: fortran/decl.c:5502
+#: fortran/decl.c:5505
 #, gcc-internal-format, gfc-internal-format
 msgid "LEN attribute at %C in a TYPE definition"
 msgstr ""
 
-#: fortran/decl.c:5504
+#: fortran/decl.c:5507
 #, gcc-internal-format, gfc-internal-format
 msgid "LEN attribute at %C in a STRUCTURE definition"
 msgstr ""
 
-#: fortran/decl.c:5512
+#: fortran/decl.c:5515
 #, gcc-internal-format, gfc-internal-format
 msgid "Component with LEN attribute at %C must be INTEGER"
 msgstr ""
 
-#: fortran/decl.c:5519
+#: fortran/decl.c:5522
 #, gcc-internal-format, gfc-internal-format
 msgid "Component with LEN attribute at %C must be default integer kind (%d)"
 msgstr ""
 
-#: fortran/decl.c:5528
+#: fortran/decl.c:5531
 #, gcc-internal-format, gfc-internal-format
 msgid "Attribute at %L is not allowed in a TYPE definition"
 msgstr ""
 
-#: fortran/decl.c:5530
+#: fortran/decl.c:5533
 #, gcc-internal-format, gfc-internal-format
 msgid "Attribute at %L is not allowed in a STRUCTURE definition"
 msgstr ""
 
-#: fortran/decl.c:5548
+#: fortran/decl.c:5551
 #, gcc-internal-format, gfc-internal-format
 msgid "Attribute %s at %L in a TYPE definition"
 msgstr ""
 
-#: fortran/decl.c:5558
+#: fortran/decl.c:5561
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "%s attribute at %L is not allowed outside of the specification part of a "
 "module"
 msgstr ""
 
-#: fortran/decl.c:5568
+#: fortran/decl.c:5571
 #, gcc-internal-format, gfc-internal-format
 msgid "Attribute at %L is not allowed outside a TYPE definition"
 msgstr ""
 
-#: fortran/decl.c:5581
+#: fortran/decl.c:5584
 #, gcc-internal-format, gfc-internal-format
 msgid "ASYNCHRONOUS attribute at %C"
 msgstr ""
 
-#: fortran/decl.c:5592
+#: fortran/decl.c:5595
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTIGUOUS attribute at %C"
 msgstr ""
 
-#: fortran/decl.c:5647 fortran/decl.c:9120
+#: fortran/decl.c:5650 fortran/decl.c:9125
 #, gcc-internal-format, gfc-internal-format
 msgid "PROTECTED at %C only allowed in specification part of a module"
 msgstr ""
 
-#: fortran/decl.c:5653
+#: fortran/decl.c:5656
 #, gcc-internal-format, gfc-internal-format
 msgid "PROTECTED attribute at %C"
 msgstr ""
 
-#: fortran/decl.c:5687
+#: fortran/decl.c:5690
 #, gcc-internal-format, gfc-internal-format
 msgid "VALUE attribute at %C"
 msgstr ""
 
-#: fortran/decl.c:5694
+#: fortran/decl.c:5697
 #, gcc-internal-format, gfc-internal-format
 msgid "VOLATILE attribute at %C"
 msgstr ""
 
-#: fortran/decl.c:5701
+#: fortran/decl.c:5704
 #, gcc-internal-format
 msgid "match_attr_spec(): Bad attribute"
 msgstr ""
 
-#: fortran/decl.c:5742
+#: fortran/decl.c:5745
 #, gcc-internal-format, gfc-internal-format
 msgid "Multiple identifiers provided with single NAME= specifier at %C"
 msgstr ""
 
-#: fortran/decl.c:5840
+#: fortran/decl.c:5843
 #, gcc-internal-format
 msgid ""
 "Implicitly declared BIND(C) function %qs at %L may not be C interoperable"
 msgstr ""
 
-#: fortran/decl.c:5862
+#: fortran/decl.c:5865
 #, gcc-internal-format
 msgid ""
 "Variable %qs in common block %qs at %L may not be a C interoperable kind "
 "though common block %qs is BIND(C)"
 msgstr ""
 
-#: fortran/decl.c:5871
+#: fortran/decl.c:5874
 #, gcc-internal-format
 msgid "Type declaration %qs at %L is not C interoperable but it is BIND(C)"
 msgstr ""
 
-#: fortran/decl.c:5875
+#: fortran/decl.c:5878
 #, gcc-internal-format
 msgid "Variable %qs at %L may not be a C interoperable kind but it is BIND(C)"
 msgstr ""
 
-#: fortran/decl.c:5887
+#: fortran/decl.c:5890
 #, gcc-internal-format
 msgid ""
 "Variable %qs in common block %qs at %L cannot be declared with BIND(C) since "
 "it is not a global"
 msgstr ""
 
-#: fortran/decl.c:5901
+#: fortran/decl.c:5904
 #, gcc-internal-format
 msgid "Variable %qs at %L cannot have both the POINTER and BIND(C) attributes"
 msgstr ""
 
-#: fortran/decl.c:5909
+#: fortran/decl.c:5912
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L cannot have both the ALLOCATABLE and BIND(C) attributes"
 msgstr ""
 
-#: fortran/decl.c:5921
+#: fortran/decl.c:5924
 #, gcc-internal-format
 msgid "Return type of BIND(C) function %qs at %L cannot be an array"
 msgstr ""
 
-#: fortran/decl.c:5929
+#: fortran/decl.c:5932
 #, gcc-internal-format
 msgid ""
 "Return type of BIND(C) function %qs of character type at %L must have length "
@@ -62328,1058 +64138,1058 @@ msgstr ""
 
 #. Use gfc_warning_now because we won't say that the symbol fails
 #. just because of this.
-#: fortran/decl.c:5940
+#: fortran/decl.c:5943
 #, gcc-internal-format
 msgid ""
 "Symbol %qs at %L is marked PRIVATE but has been given the binding label %qs"
 msgstr ""
 
-#: fortran/decl.c:6014
+#: fortran/decl.c:6017
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Need either entity or common block name for attribute specification "
 "statement at %C"
 msgstr ""
 
-#: fortran/decl.c:6059
+#: fortran/decl.c:6062
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Missing entity or common block name for attribute specification statement at "
 "%C"
 msgstr ""
 
-#: fortran/decl.c:6066
+#: fortran/decl.c:6069
 #, gcc-internal-format
 msgid "Missing symbol"
 msgstr ""
 
-#: fortran/decl.c:6095
+#: fortran/decl.c:6098
 #, gcc-internal-format, gfc-internal-format
 msgid "BIND(C) statement at %C"
 msgstr ""
 
-#: fortran/decl.c:6181
+#: fortran/decl.c:6184
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Derived type at %C has not been previously defined and so cannot appear in a "
 "derived type definition"
 msgstr ""
 
-#: fortran/decl.c:6223
+#: fortran/decl.c:6226
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in anonymous structure declaration at %C"
 msgstr ""
 
-#: fortran/decl.c:6232
+#: fortran/decl.c:6235
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in data declaration at %C"
 msgstr ""
 
-#: fortran/decl.c:6304
+#: fortran/decl.c:6307
 #, gcc-internal-format, gfc-internal-format
 msgid "MODULE prefix at %C"
 msgstr ""
 
-#: fortran/decl.c:6309
+#: fortran/decl.c:6312
 #, gcc-internal-format, gfc-internal-format
 msgid "MODULE prefix at %C found outside of a module, submodule, or interface"
 msgstr ""
 
-#: fortran/decl.c:6360
+#: fortran/decl.c:6363
 #, gcc-internal-format, gfc-internal-format
 msgid "IMPURE procedure at %C"
 msgstr ""
 
-#: fortran/decl.c:6372
+#: fortran/decl.c:6375
 #, gcc-internal-format, gfc-internal-format
 msgid "PURE and IMPURE must not appear both at %C"
 msgstr ""
 
-#: fortran/decl.c:6418
+#: fortran/decl.c:6421
 #, gcc-internal-format, gfc-internal-format
 msgid "ELEMENTAL prefix in MODULE PROCEDURE interface is missing at %L"
 msgstr ""
 
-#: fortran/decl.c:6425
+#: fortran/decl.c:6428
 #, gcc-internal-format, gfc-internal-format
 msgid "PURE prefix in MODULE PROCEDURE interface is missing at %L"
 msgstr ""
 
-#: fortran/decl.c:6432
+#: fortran/decl.c:6435
 #, gcc-internal-format, gfc-internal-format
 msgid "RECURSIVE prefix in MODULE PROCEDURE interface is missing at %L"
 msgstr ""
 
-#: fortran/decl.c:6493
+#: fortran/decl.c:6496
 #, gcc-internal-format, gfc-internal-format
 msgid "A type parameter list is required at %C"
 msgstr ""
 
-#: fortran/decl.c:6507 fortran/primary.c:1859
+#: fortran/decl.c:6510 fortran/primary.c:1914
 #, gcc-internal-format, gfc-internal-format
 msgid "Alternate-return argument at %C"
 msgstr ""
 
-#: fortran/decl.c:6513 fortran/decl.c:6521
+#: fortran/decl.c:6516 fortran/decl.c:6524
 #, gcc-internal-format, gfc-internal-format
 msgid "A parameter name is required at %C"
 msgstr ""
 
-#: fortran/decl.c:6561
+#: fortran/decl.c:6564
 #, gcc-internal-format
 msgid "Name %qs at %C is the name of the procedure"
 msgstr ""
 
-#: fortran/decl.c:6574
+#: fortran/decl.c:6577
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected parameter list in type declaration at %C"
 msgstr ""
 
-#: fortran/decl.c:6577
+#: fortran/decl.c:6580
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk in formal argument list at %C"
 msgstr ""
 
-#: fortran/decl.c:6595
+#: fortran/decl.c:6598
 #, gcc-internal-format
 msgid "Duplicate name %qs in parameter list at %C"
 msgstr ""
 
-#: fortran/decl.c:6598
+#: fortran/decl.c:6601
 #, gcc-internal-format
 msgid "Duplicate symbol %qs in formal argument list at %C"
 msgstr ""
 
-#: fortran/decl.c:6637
+#: fortran/decl.c:6640
 #, gcc-internal-format, gfc-internal-format
 msgid "Mismatch in MODULE PROCEDURE formal argument names (%s/%s) at %C"
 msgstr ""
 
-#: fortran/decl.c:6643
+#: fortran/decl.c:6646
 #, gcc-internal-format, gfc-internal-format
 msgid "Mismatch in number of MODULE PROCEDURE formal arguments at %C"
 msgstr ""
 
-#: fortran/decl.c:6682
+#: fortran/decl.c:6685
 #, gcc-internal-format, gfc-internal-format
 msgid "RESULT variable at %C must be different than function name"
 msgstr ""
 
-#: fortran/decl.c:6759
+#: fortran/decl.c:6762
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after function declaration at %C"
 msgstr ""
 
-#: fortran/decl.c:6769 fortran/decl.c:7906
+#: fortran/decl.c:6772 fortran/decl.c:7910
 #, gcc-internal-format, gfc-internal-format
 msgid "BIND(C) attribute at %L may not be specified for an internal procedure"
 msgstr ""
 
-#: fortran/decl.c:6973
+#: fortran/decl.c:6976
 #, gcc-internal-format, gfc-internal-format
 msgid "BIND(C) attribute at %C requires an interface with BIND(C)"
 msgstr ""
 
-#: fortran/decl.c:6980
+#: fortran/decl.c:6983
 #, gcc-internal-format, gfc-internal-format
 msgid "BIND(C) procedure with NAME may not have POINTER attribute at %C"
 msgstr ""
 
-#: fortran/decl.c:6986
+#: fortran/decl.c:6989
 #, gcc-internal-format, gfc-internal-format
 msgid "Dummy procedure at %C may not have BIND(C) attribute with NAME"
 msgstr ""
 
-#: fortran/decl.c:7009
+#: fortran/decl.c:7012
 #, gcc-internal-format
 msgid "Procedure %qs at %L already has basic type of %s"
 msgstr ""
 
-#: fortran/decl.c:7055 fortran/decl.c:7243 fortran/decl.c:11235
+#: fortran/decl.c:7058 fortran/decl.c:7246 fortran/decl.c:11250
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in PROCEDURE statement at %C"
 msgstr ""
 
-#: fortran/decl.c:7104 fortran/decl.c:11135
+#: fortran/decl.c:7107 fortran/decl.c:11150
 #, gcc-internal-format
 msgid "Expected %<::%> after binding-attributes at %C"
 msgstr ""
 
-#: fortran/decl.c:7111
+#: fortran/decl.c:7114
 #, gcc-internal-format, gfc-internal-format
 msgid "NOPASS or explicit interface required at %C"
 msgstr ""
 
-#: fortran/decl.c:7115
+#: fortran/decl.c:7118
 #, gcc-internal-format, gfc-internal-format
 msgid "Procedure pointer component at %C"
 msgstr ""
 
-#: fortran/decl.c:7187
+#: fortran/decl.c:7190
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in procedure pointer component at %C"
 msgstr ""
 
-#: fortran/decl.c:7205
+#: fortran/decl.c:7208
 #, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE at %C must be in a generic interface"
 msgstr ""
 
-#: fortran/decl.c:7214 fortran/decl.c:9875
+#: fortran/decl.c:7217 fortran/decl.c:9890
 #, gcc-internal-format, gfc-internal-format
 msgid "double colon in MODULE PROCEDURE statement at %L"
 msgstr ""
 
-#: fortran/decl.c:7284
+#: fortran/decl.c:7287
 #, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE statement at %C"
 msgstr ""
 
-#: fortran/decl.c:7356
+#: fortran/decl.c:7359
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected formal argument list in function definition at %C"
 msgstr ""
 
-#: fortran/decl.c:7386 fortran/decl.c:7664 fortran/decl.c:7873
+#: fortran/decl.c:7389 fortran/decl.c:7668 fortran/decl.c:7877
 #: fortran/symbol.c:1903
 #, gcc-internal-format, gfc-internal-format
 msgid "BIND(C) attribute at %L can only be used for variables or common blocks"
 msgstr ""
 
-#: fortran/decl.c:7415 fortran/decl.c:7930
+#: fortran/decl.c:7419 fortran/decl.c:7935
 #, gcc-internal-format
 msgid "Mismatch in BIND(C) names (%qs/%qs) at %C"
 msgstr ""
 
-#: fortran/decl.c:7558
+#: fortran/decl.c:7562
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C"
 msgstr ""
 
-#: fortran/decl.c:7567
+#: fortran/decl.c:7571
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a PROGRAM"
 msgstr ""
 
-#: fortran/decl.c:7570
+#: fortran/decl.c:7574
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a MODULE"
 msgstr ""
 
-#: fortran/decl.c:7573
+#: fortran/decl.c:7577
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a SUBMODULE"
 msgstr ""
 
-#: fortran/decl.c:7576
+#: fortran/decl.c:7580
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a BLOCK DATA"
 msgstr ""
 
-#: fortran/decl.c:7580 fortran/decl.c:7625
+#: fortran/decl.c:7584 fortran/decl.c:7629
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within an INTERFACE"
 msgstr ""
 
-#: fortran/decl.c:7584
+#: fortran/decl.c:7588
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a STRUCTURE block"
 msgstr ""
 
-#: fortran/decl.c:7588
+#: fortran/decl.c:7592
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a DERIVED TYPE block"
 msgstr ""
 
-#: fortran/decl.c:7592
+#: fortran/decl.c:7596
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within an IF-THEN block"
 msgstr ""
 
-#: fortran/decl.c:7597
+#: fortran/decl.c:7601
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a DO block"
 msgstr ""
 
-#: fortran/decl.c:7601
+#: fortran/decl.c:7605
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a SELECT block"
 msgstr ""
 
-#: fortran/decl.c:7605
+#: fortran/decl.c:7609
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a FORALL block"
 msgstr ""
 
-#: fortran/decl.c:7609
+#: fortran/decl.c:7613
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a WHERE block"
 msgstr ""
 
-#: fortran/decl.c:7613
+#: fortran/decl.c:7617
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear within a contained subprogram"
 msgstr ""
 
-#: fortran/decl.c:7617
+#: fortran/decl.c:7621
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected ENTRY statement at %C"
 msgstr ""
 
-#: fortran/decl.c:7638
+#: fortran/decl.c:7642
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %C cannot appear in a contained procedure"
 msgstr ""
 
-#: fortran/decl.c:7689 fortran/decl.c:7913
+#: fortran/decl.c:7693 fortran/decl.c:7917
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing required parentheses before BIND(C) at %C"
 msgstr ""
 
-#: fortran/decl.c:7783
+#: fortran/decl.c:7787
 #, gcc-internal-format, gfc-internal-format
 msgid "ENTRY statement at %L with BIND(C) prohibited in an elemental procedure"
 msgstr ""
 
-#: fortran/decl.c:7939
+#: fortran/decl.c:7944
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Alternate return dummy argument cannot appear in a SUBROUTINE with the "
 "BIND(C) attribute at %L"
 msgstr ""
 
-#: fortran/decl.c:8002 fortran/decl.c:8009
+#: fortran/decl.c:8007 fortran/decl.c:8014
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid C identifier in NAME= specifier at %C"
 msgstr ""
 
-#: fortran/decl.c:8049
+#: fortran/decl.c:8054
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in NAME= specifier for binding label at %C"
 msgstr ""
 
-#: fortran/decl.c:8065
+#: fortran/decl.c:8070
 #, gcc-internal-format, gfc-internal-format
 msgid "NAME= specifier at %C should be a constant expression"
 msgstr ""
 
-#: fortran/decl.c:8073
+#: fortran/decl.c:8078
 #, gcc-internal-format, gfc-internal-format
 msgid "NAME= specifier at %C should be a scalar of default character kind"
 msgstr ""
 
-#: fortran/decl.c:8092
+#: fortran/decl.c:8097
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing closing paren for binding label at %C"
 msgstr ""
 
-#: fortran/decl.c:8098
+#: fortran/decl.c:8103
 #, gcc-internal-format, gfc-internal-format
 msgid "No binding name is allowed in BIND(C) at %C"
 msgstr ""
 
-#: fortran/decl.c:8104
+#: fortran/decl.c:8109
 #, gcc-internal-format, gfc-internal-format
 msgid "For dummy procedure %s, no binding name is allowed in BIND(C) at %C"
 msgstr ""
 
-#: fortran/decl.c:8133
+#: fortran/decl.c:8138
 #, gcc-internal-format, gfc-internal-format
 msgid "NAME not allowed on BIND(C) for ABSTRACT INTERFACE at %C"
 msgstr ""
 
-#: fortran/decl.c:8379
+#: fortran/decl.c:8384
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected END statement at %C"
 msgstr ""
 
-#: fortran/decl.c:8388
+#: fortran/decl.c:8393
 #, gcc-internal-format, gfc-internal-format
 msgid "END statement instead of %s statement at %L"
 msgstr ""
 
 #. We would have required END [something].
-#: fortran/decl.c:8397
+#: fortran/decl.c:8402
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement expected at %L"
 msgstr ""
 
-#: fortran/decl.c:8408
+#: fortran/decl.c:8413
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting %s statement at %L"
 msgstr ""
 
-#: fortran/decl.c:8428
+#: fortran/decl.c:8433
 #, gcc-internal-format
 msgid "Expected block name of %qs in %s statement at %L"
 msgstr ""
 
-#: fortran/decl.c:8445
+#: fortran/decl.c:8450
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected terminating name at %C"
 msgstr ""
 
-#: fortran/decl.c:8459 fortran/decl.c:8467
+#: fortran/decl.c:8464 fortran/decl.c:8472
 #, gcc-internal-format
 msgid "Expected label %qs for %s statement at %C"
 msgstr ""
 
-#: fortran/decl.c:8566
+#: fortran/decl.c:8571
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing array specification at %L in DIMENSION statement"
 msgstr ""
 
-#: fortran/decl.c:8574
+#: fortran/decl.c:8579
 #, gcc-internal-format, gfc-internal-format
 msgid "Dimensions specified for %s at %L after its initialization"
 msgstr ""
 
-#: fortran/decl.c:8582
+#: fortran/decl.c:8587
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing array specification at %L in CODIMENSION statement"
 msgstr ""
 
-#: fortran/decl.c:8591
+#: fortran/decl.c:8596
 #, gcc-internal-format, gfc-internal-format
 msgid "Array specification must be deferred at %L"
 msgstr ""
 
-#: fortran/decl.c:8606
+#: fortran/decl.c:8611
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate DIMENSION attribute at %C"
 msgstr ""
 
-#: fortran/decl.c:8698
+#: fortran/decl.c:8703
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected character in variable list at %C"
 msgstr ""
 
-#: fortran/decl.c:8735
+#: fortran/decl.c:8740
 #, gcc-internal-format
 msgid "Expected %<(%> at %C"
 msgstr ""
 
-#: fortran/decl.c:8749 fortran/decl.c:8789
+#: fortran/decl.c:8754 fortran/decl.c:8794
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected variable name at %C"
 msgstr ""
 
-#: fortran/decl.c:8765
+#: fortran/decl.c:8770
 #, gcc-internal-format, gfc-internal-format
 msgid "Cray pointer at %C must be an integer"
 msgstr ""
 
-#: fortran/decl.c:8769
+#: fortran/decl.c:8774
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Cray pointer at %C has %d bytes of precision; memory addresses require %d "
 "bytes"
 msgstr ""
 
-#: fortran/decl.c:8775
+#: fortran/decl.c:8780
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected \",\" at %C"
 msgstr ""
 
-#: fortran/decl.c:8814
+#: fortran/decl.c:8819
 #, gcc-internal-format
 msgid "Cannot set Cray pointee array spec."
 msgstr ""
 
-#: fortran/decl.c:8838
+#: fortran/decl.c:8843
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected \")\" at %C"
 msgstr ""
 
-#: fortran/decl.c:8850
+#: fortran/decl.c:8855
 #, gcc-internal-format
 msgid "Expected %<,%> or end of statement at %C"
 msgstr ""
 
-#: fortran/decl.c:8876
+#: fortran/decl.c:8881
 #, gcc-internal-format, gfc-internal-format
 msgid "INTENT is not allowed inside of BLOCK at %C"
 msgstr ""
 
-#: fortran/decl.c:8908
+#: fortran/decl.c:8913
 #, gcc-internal-format, gfc-internal-format
 msgid "OPTIONAL is not allowed inside of BLOCK at %C"
 msgstr ""
 
-#: fortran/decl.c:8927
+#: fortran/decl.c:8932
 #, gcc-internal-format
 msgid "Cray pointer declaration at %C requires %<-fcray-pointer%> flag"
 msgstr ""
 
-#: fortran/decl.c:8966
+#: fortran/decl.c:8971
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTIGUOUS statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9064
+#: fortran/decl.c:9069
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Access specification of the %s operator at %C has already been specified"
 msgstr ""
 
-#: fortran/decl.c:9080
+#: fortran/decl.c:9085
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Access specification of the .%s. operator at %C has already been specified"
 msgstr ""
 
-#: fortran/decl.c:9128
+#: fortran/decl.c:9133
 #, gcc-internal-format, gfc-internal-format
 msgid "PROTECTED statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9162
+#: fortran/decl.c:9167
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in PROTECTED statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9189 fortran/decl.c:9214
+#: fortran/decl.c:9194 fortran/decl.c:9219
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "PRIVATE statement at %C is only allowed in the specification part of a module"
 msgstr ""
 
-#: fortran/decl.c:9235 fortran/decl.c:9255
+#: fortran/decl.c:9240 fortran/decl.c:9260
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "PUBLIC statement at %C is only allowed in the specification part of a module"
 msgstr ""
 
-#: fortran/decl.c:9277
+#: fortran/decl.c:9282
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected variable name at %C in PARAMETER statement"
 msgstr ""
 
-#: fortran/decl.c:9284
+#: fortran/decl.c:9289
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected = sign in PARAMETER statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9290
+#: fortran/decl.c:9295
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected expression at %C in PARAMETER statement"
 msgstr ""
 
-#: fortran/decl.c:9310
+#: fortran/decl.c:9315
 #, 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.c:9335
+#: fortran/decl.c:9340
 #, gcc-internal-format, gfc-internal-format
 msgid "PARAMETER without '()' at %C"
 msgstr ""
 
-#: fortran/decl.c:9351
+#: fortran/decl.c:9356
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected characters in PARAMETER statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9370 fortran/decl.c:9426
+#: fortran/decl.c:9375 fortran/decl.c:9431
 #, gcc-internal-format
 msgid "%s at %C is a DEC extension, enable with %<-fdec-static%>"
 msgstr ""
 
-#: fortran/decl.c:9405
+#: fortran/decl.c:9410
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected entity-list in AUTOMATIC statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9412
+#: fortran/decl.c:9417
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in AUTOMATIC statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9461
+#: fortran/decl.c:9466
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected entity-list in STATIC statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9468
+#: fortran/decl.c:9473
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in STATIC statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9487
+#: fortran/decl.c:9492
 #, gcc-internal-format, gfc-internal-format
 msgid "Blanket SAVE statement at %C follows previous SAVE statement"
 msgstr ""
 
-#: fortran/decl.c:9498
+#: fortran/decl.c:9503
 #, gcc-internal-format, gfc-internal-format
 msgid "SAVE statement at %C follows blanket SAVE statement"
 msgstr ""
 
-#: fortran/decl.c:9546
+#: fortran/decl.c:9551
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in SAVE statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9563
+#: fortran/decl.c:9568
 #, gcc-internal-format, gfc-internal-format
 msgid "VALUE is not allowed inside of BLOCK at %C"
 msgstr ""
 
-#: fortran/decl.c:9567
+#: fortran/decl.c:9572
 #, gcc-internal-format, gfc-internal-format
 msgid "VALUE statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9605
+#: fortran/decl.c:9610
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in VALUE statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9617
+#: fortran/decl.c:9622
 #, gcc-internal-format, gfc-internal-format
 msgid "VOLATILE statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9644
+#: fortran/decl.c:9649
 #, gcc-internal-format
 msgid ""
 "Specifying VOLATILE for coarray variable %qs at %C, which is use-/host-"
 "associated"
 msgstr ""
 
-#: fortran/decl.c:9669
+#: fortran/decl.c:9674
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in VOLATILE statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9681
+#: fortran/decl.c:9686
 #, gcc-internal-format, gfc-internal-format
 msgid "ASYNCHRONOUS statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9725
+#: fortran/decl.c:9730
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in ASYNCHRONOUS statement at %C"
 msgstr ""
 
-#: fortran/decl.c:9750
+#: fortran/decl.c:9755
 #, gcc-internal-format, gfc-internal-format
 msgid "MODULE PROCEDURE declaration at %C"
 msgstr ""
 
-#: fortran/decl.c:9850
+#: fortran/decl.c:9865
 #, gcc-internal-format, gfc-internal-format
 msgid "MODULE PROCEDURE at %C must be in a generic module interface"
 msgstr ""
 
-#: fortran/decl.c:9908
+#: fortran/decl.c:9923
 #, gcc-internal-format, gfc-internal-format
 msgid "Intrinsic procedure at %L cannot be a MODULE PROCEDURE"
 msgstr ""
 
-#: fortran/decl.c:9957
+#: fortran/decl.c:9972
 #, gcc-internal-format, gfc-internal-format
 msgid "Ambiguous symbol in TYPE definition at %C"
 msgstr ""
 
-#: fortran/decl.c:9966
+#: fortran/decl.c:9981
 #, gcc-internal-format
 msgid "Symbol %qs at %C has not been previously defined"
 msgstr ""
 
-#: fortran/decl.c:9972
+#: fortran/decl.c:9987
 #, gcc-internal-format
 msgid "%qs in EXTENDS expression at %C is not a derived type"
 msgstr ""
 
-#: fortran/decl.c:9979
+#: fortran/decl.c:9994
 #, gcc-internal-format
 msgid "%qs cannot be extended at %C because it is BIND(C)"
 msgstr ""
 
-#: fortran/decl.c:9986
+#: fortran/decl.c:10001
 #, gcc-internal-format
 msgid "%qs cannot be extended at %C because it is a SEQUENCE type"
 msgstr ""
 
-#: fortran/decl.c:10009
+#: fortran/decl.c:10024
 #, 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.c:10021
+#: fortran/decl.c:10036
 #, 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.c:10042
+#: fortran/decl.c:10057
 #, gcc-internal-format, gfc-internal-format
 msgid "ABSTRACT type at %C"
 msgstr ""
 
-#: fortran/decl.c:10088
+#: fortran/decl.c:10103
 #, gcc-internal-format, gfc-internal-format
 msgid "Failed to create structure type '%s' at %C"
 msgstr ""
 
-#: fortran/decl.c:10094
+#: fortran/decl.c:10109
 #, gcc-internal-format
 msgid "Type definition of %qs at %C was already defined at %L"
 msgstr ""
 
-#: fortran/decl.c:10141
+#: fortran/decl.c:10156
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after MAP statement at %C"
 msgstr ""
 
-#: fortran/decl.c:10174
+#: fortran/decl.c:10189
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after UNION statement at %C"
 msgstr ""
 
-#: fortran/decl.c:10209
+#: fortran/decl.c:10224
 #, gcc-internal-format
 msgid "%s at %C is a DEC extension, enable with %<-fdec-structure%>"
 msgstr ""
 
-#: fortran/decl.c:10223
+#: fortran/decl.c:10238
 #, gcc-internal-format, gfc-internal-format
 msgid "Structure name expected in non-nested structure declaration at %C"
 msgstr ""
 
-#: fortran/decl.c:10241
+#: fortran/decl.c:10256
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after non-nested STRUCTURE statement at %C"
 msgstr ""
 
-#: fortran/decl.c:10248
+#: fortran/decl.c:10263
 #, gcc-internal-format
 msgid "Structure name %qs at %C cannot be the same as an intrinsic type"
 msgstr ""
 
-#: fortran/decl.c:10411
+#: fortran/decl.c:10426
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected :: in TYPE definition at %C"
 msgstr ""
 
-#: fortran/decl.c:10424
+#: fortran/decl.c:10439
 #, gcc-internal-format, gfc-internal-format
 msgid "Mangled derived type definition at %C"
 msgstr ""
 
-#: fortran/decl.c:10453
+#: fortran/decl.c:10468
 #, gcc-internal-format
 msgid "Type name %qs at %C cannot be the same as an intrinsic type"
 msgstr ""
 
-#: fortran/decl.c:10464
+#: fortran/decl.c:10479
 #, gcc-internal-format
 msgid "Derived type name %qs at %C already has a basic type of %s"
 msgstr ""
 
-#: fortran/decl.c:10467
+#: fortran/decl.c:10482
 #, gcc-internal-format
 msgid "Derived type name %qs at %C already has a basic type"
 msgstr ""
 
-#: fortran/decl.c:10482
+#: fortran/decl.c:10497
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L cannot be a derived type at %C"
 msgstr ""
 
-#: fortran/decl.c:10491
+#: fortran/decl.c:10506
 #, gcc-internal-format
 msgid "Derived type definition of %qs at %C has already been defined"
 msgstr ""
 
-#: fortran/decl.c:10554
+#: fortran/decl.c:10569
 #, gcc-internal-format, gfc-internal-format
 msgid "Garbage after PARAMETERIZED TYPE declaration at %C"
 msgstr ""
 
-#: fortran/decl.c:10637
+#: fortran/decl.c:10652
 #, gcc-internal-format, gfc-internal-format
 msgid "Cray Pointee at %C cannot be assumed shape array"
 msgstr ""
 
-#: fortran/decl.c:10657
+#: fortran/decl.c:10672
 #, gcc-internal-format, gfc-internal-format
 msgid "ENUM and ENUMERATOR at %C"
 msgstr ""
 
-#: fortran/decl.c:10689
+#: fortran/decl.c:10704
 #, gcc-internal-format, gfc-internal-format
 msgid "Enumerator exceeds the C integer type at %C"
 msgstr ""
 
-#: fortran/decl.c:10768
+#: fortran/decl.c:10783
 #, gcc-internal-format, gfc-internal-format
 msgid "ENUMERATOR %L not initialized with integer expression"
 msgstr ""
 
-#: fortran/decl.c:10816
+#: fortran/decl.c:10831
 #, gcc-internal-format, gfc-internal-format
 msgid "ENUM definition statement expected before %C"
 msgstr ""
 
-#: fortran/decl.c:10852
+#: fortran/decl.c:10867
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in ENUMERATOR definition at %C"
 msgstr ""
 
-#: fortran/decl.c:10899 fortran/decl.c:10914
+#: fortran/decl.c:10914 fortran/decl.c:10929
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate access-specifier at %C"
 msgstr ""
 
-#: fortran/decl.c:10934
+#: fortran/decl.c:10949
 #, gcc-internal-format, gfc-internal-format
 msgid "Binding attributes already specify passing, illegal NOPASS at %C"
 msgstr ""
 
-#: fortran/decl.c:10954
+#: fortran/decl.c:10969
 #, gcc-internal-format, gfc-internal-format
 msgid "Binding attributes already specify passing, illegal PASS at %C"
 msgstr ""
 
-#: fortran/decl.c:10981
+#: fortran/decl.c:10996
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate POINTER attribute at %C"
 msgstr ""
 
-#: fortran/decl.c:10999
+#: fortran/decl.c:11014
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate NON_OVERRIDABLE at %C"
 msgstr ""
 
-#: fortran/decl.c:11015
+#: fortran/decl.c:11030
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate DEFERRED at %C"
 msgstr ""
 
-#: fortran/decl.c:11028
+#: fortran/decl.c:11043
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected access-specifier at %C"
 msgstr ""
 
-#: fortran/decl.c:11030
+#: fortran/decl.c:11045
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected binding attribute at %C"
 msgstr ""
 
-#: fortran/decl.c:11038
+#: fortran/decl.c:11053
 #, gcc-internal-format, gfc-internal-format
 msgid "NON_OVERRIDABLE and DEFERRED cannot both appear at %C"
 msgstr ""
 
-#: fortran/decl.c:11051
+#: fortran/decl.c:11066
 #, gcc-internal-format, gfc-internal-format
 msgid "POINTER attribute is required for procedure pointer component at %C"
 msgstr ""
 
-#: fortran/decl.c:11093
+#: fortran/decl.c:11108
 #, gcc-internal-format
 msgid "Interface-name expected after %<(%> at %C"
 msgstr ""
 
-#: fortran/decl.c:11099
+#: fortran/decl.c:11114
 #, gcc-internal-format
 msgid "%<)%> expected at %C"
 msgstr ""
 
-#: fortran/decl.c:11119
+#: fortran/decl.c:11134
 #, gcc-internal-format, gfc-internal-format
 msgid "Interface must be specified for DEFERRED binding at %C"
 msgstr ""
 
-#: fortran/decl.c:11124
+#: fortran/decl.c:11139
 #, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE(interface) at %C should be declared DEFERRED"
 msgstr ""
 
-#: fortran/decl.c:11147
+#: fortran/decl.c:11162
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected binding name at %C"
 msgstr ""
 
-#: fortran/decl.c:11151
+#: fortran/decl.c:11166
 #, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE list at %C"
 msgstr ""
 
-#: fortran/decl.c:11163
+#: fortran/decl.c:11178
 #, gcc-internal-format
 msgid "%<=> target%> is invalid for DEFERRED binding at %C"
 msgstr ""
 
-#: fortran/decl.c:11169
+#: fortran/decl.c:11184
 #, gcc-internal-format
 msgid "%<::%> needed in PROCEDURE binding with explicit target at %C"
 msgstr ""
 
-#: fortran/decl.c:11179
+#: fortran/decl.c:11194
 #, gcc-internal-format
 msgid "Expected binding target after %<=>%> at %C"
 msgstr ""
 
-#: fortran/decl.c:11196
+#: fortran/decl.c:11211
 #, gcc-internal-format
 msgid "Type %qs containing DEFERRED binding at %C is not ABSTRACT"
 msgstr ""
 
-#: fortran/decl.c:11207
+#: fortran/decl.c:11222
 #, gcc-internal-format
 msgid ""
 "There is already a procedure with binding name %qs for the derived type %qs "
 "at %C"
 msgstr ""
 
-#: fortran/decl.c:11258
+#: fortran/decl.c:11273
 #, gcc-internal-format, gfc-internal-format
 msgid "GENERIC at %C must be inside a derived-type CONTAINS"
 msgstr ""
 
-#: fortran/decl.c:11278
+#: fortran/decl.c:11293
 #, gcc-internal-format
 msgid "Expected %<::%> at %C"
 msgstr ""
 
-#: fortran/decl.c:11290
+#: fortran/decl.c:11305
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected generic name or operator descriptor at %C"
 msgstr ""
 
-#: fortran/decl.c:11311
+#: fortran/decl.c:11326
 #, gcc-internal-format, gfc-internal-format
 msgid "Malformed GENERIC statement at %C"
 msgstr ""
 
-#: fortran/decl.c:11322
+#: fortran/decl.c:11337
 #, gcc-internal-format
 msgid "Expected %<=>%> at %C"
 msgstr ""
 
-#: fortran/decl.c:11358
+#: fortran/decl.c:11373
 #, 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.c:11366
+#: fortran/decl.c:11381
 #, gcc-internal-format
 msgid "Binding at %C must have the same access as already defined binding %qs"
 msgstr ""
 
-#: fortran/decl.c:11414
+#: fortran/decl.c:11429
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected specific binding name at %C"
 msgstr ""
 
-#: fortran/decl.c:11424
+#: fortran/decl.c:11439
 #, gcc-internal-format
 msgid "%qs already defined as specific binding for the generic %qs at %C"
 msgstr ""
 
-#: fortran/decl.c:11442
+#: fortran/decl.c:11457
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after GENERIC binding at %C"
 msgstr ""
 
-#: fortran/decl.c:11477
+#: fortran/decl.c:11492
 #, gcc-internal-format, gfc-internal-format
 msgid "FINAL declaration at %C must be inside a derived type CONTAINS section"
 msgstr ""
 
-#: fortran/decl.c:11488
+#: fortran/decl.c:11503
 #, 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.c:11510
+#: fortran/decl.c:11525
 #, gcc-internal-format, gfc-internal-format
 msgid "Empty FINAL at %C"
 msgstr ""
 
-#: fortran/decl.c:11517
+#: fortran/decl.c:11532
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected module procedure name at %C"
 msgstr ""
 
-#: fortran/decl.c:11527
+#: fortran/decl.c:11542
 #, gcc-internal-format
 msgid "Expected %<,%> at %C"
 msgstr ""
 
-#: fortran/decl.c:11533
+#: fortran/decl.c:11548
 #, gcc-internal-format
 msgid "Unknown procedure name %qs at %C"
 msgstr ""
 
-#: fortran/decl.c:11546
+#: fortran/decl.c:11561
 #, gcc-internal-format
 msgid "%qs at %C is already defined as FINAL procedure"
 msgstr ""
 
-#: fortran/decl.c:11616
+#: fortran/decl.c:11632
 #, gcc-internal-format, gfc-internal-format
 msgid "Unknown attribute in !GCC$ ATTRIBUTES statement at %C"
 msgstr ""
 
-#: fortran/decl.c:11662
+#: fortran/decl.c:11678
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !GCC$ ATTRIBUTES statement at %C"
 msgstr ""
 
-#: fortran/decl.c:11682
+#: fortran/decl.c:11698
 #, gcc-internal-format
 msgid ""
 "%<GCC unroll%> directive requires a non-negative integral constant less than "
 "or equal to %u at %C"
 msgstr ""
 
-#: fortran/decl.c:11696
+#: fortran/decl.c:11712
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !GCC$ UNROLL directive at %C"
 msgstr ""
 
-#: fortran/decl.c:11760
+#: fortran/decl.c:11776
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !GCC$ IVDEP directive at %C"
 msgstr ""
 
-#: fortran/decl.c:11777
+#: fortran/decl.c:11793
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !GCC$ VECTOR directive at %C"
 msgstr ""
 
-#: fortran/decl.c:11794
+#: fortran/decl.c:11810
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !GCC$ NOVECTOR directive at %C"
 msgstr ""
 
-#: fortran/dependency.c:105
+#: fortran/dependency.c:106
 #, gcc-internal-format
 msgid "identical_array_ref(): inconsistent dimensions"
 msgstr ""
 
-#: fortran/dependency.c:198
+#: fortran/dependency.c:199
 #, gcc-internal-format
 msgid "are_identical_variables: Bad type"
 msgstr ""
 
-#: fortran/dependency.c:988
+#: fortran/dependency.c:989
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "INTENT(%s) actual argument at %L might interfere with actual argument at %L."
 msgstr ""
 
-#: fortran/dependency.c:1292
+#: fortran/dependency.c:1293
 #, gcc-internal-format
 msgid "gfc_check_dependency: expecting an EXPR_VARIABLE"
 msgstr ""
@@ -63394,27 +65204,27 @@ msgstr ""
 msgid "show_array_ref(): Unknown array reference"
 msgstr ""
 
-#: fortran/dump-parse-tree.c:409
+#: fortran/dump-parse-tree.c:434
 #, gcc-internal-format
 msgid "show_ref(): Bad component code"
 msgstr ""
 
-#: fortran/dump-parse-tree.c:682
+#: fortran/dump-parse-tree.c:707
 #, gcc-internal-format
 msgid "show_expr(): Bad intrinsic in expression"
 msgstr ""
 
-#: fortran/dump-parse-tree.c:725
+#: fortran/dump-parse-tree.c:750
 #, gcc-internal-format
 msgid "show_expr(): Don't know how to show expr"
 msgstr ""
 
-#: fortran/dump-parse-tree.c:3062
+#: fortran/dump-parse-tree.c:3145
 #, gcc-internal-format
 msgid "show_code_node(): Bad statement code"
 msgstr ""
 
-#: fortran/dump-parse-tree.c:3386 fortran/dump-parse-tree.c:3491
+#: fortran/dump-parse-tree.c:3469 fortran/dump-parse-tree.c:3574
 #, gcc-internal-format
 msgid "Cannot convert %qs to interoperable type at %L"
 msgstr ""
@@ -63486,12 +65296,12 @@ msgid ""
 "of the allowed %d upper limit.  See %<-fmax-array-constructor%> option"
 msgstr ""
 
-#: fortran/expr.c:1787 fortran/primary.c:2264 fortran/primary.c:2400
+#: fortran/expr.c:1787 fortran/primary.c:2320 fortran/primary.c:2460
 #, gcc-internal-format, gfc-internal-format
 msgid "LEN part_ref at %C"
 msgstr ""
 
-#: fortran/expr.c:1805 fortran/primary.c:2259 fortran/primary.c:2415
+#: fortran/expr.c:1805 fortran/primary.c:2315 fortran/primary.c:2475
 #, gcc-internal-format, gfc-internal-format
 msgid "KIND part_ref at %C"
 msgstr ""
@@ -63506,390 +65316,396 @@ msgstr ""
 msgid "IM part_ref at %C"
 msgstr ""
 
-#: fortran/expr.c:2445
+#: fortran/expr.c:2448
 #, gcc-internal-format, gfc-internal-format
 msgid "elemental function arguments at %C are not compliant"
 msgstr ""
 
-#: fortran/expr.c:2489
+#: fortran/expr.c:2492
 #, gcc-internal-format, gfc-internal-format
 msgid "Numeric or CHARACTER operands are required in expression at %L"
 msgstr ""
 
-#: fortran/expr.c:2514
+#: fortran/expr.c:2517
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Concatenation operator in expression at %L must have two CHARACTER operands"
 msgstr ""
 
-#: fortran/expr.c:2521
+#: fortran/expr.c:2524
 #, gcc-internal-format, gfc-internal-format
 msgid "Concat operator at %L must concatenate strings of the same kind"
 msgstr ""
 
-#: fortran/expr.c:2531
+#: fortran/expr.c:2534
 #, gcc-internal-format, gfc-internal-format
 msgid ".NOT. operator in expression at %L must have a LOGICAL operand"
 msgstr ""
 
-#: fortran/expr.c:2547
+#: fortran/expr.c:2550
 #, gcc-internal-format, gfc-internal-format
 msgid "LOGICAL operands are required in expression at %L"
 msgstr ""
 
-#: fortran/expr.c:2558
+#: fortran/expr.c:2561
 #, gcc-internal-format, gfc-internal-format
 msgid "Only intrinsic operators can be used in expression at %L"
 msgstr ""
 
-#: fortran/expr.c:2566
+#: fortran/expr.c:2569
 #, gcc-internal-format, gfc-internal-format
 msgid "Numeric operands are required in expression at %L"
 msgstr ""
 
-#: fortran/expr.c:2589
+#: fortran/expr.c:2592
 #, gcc-internal-format
 msgid ""
 "Invalid initialization expression for ALLOCATABLE component %qs in structure "
 "constructor at %L"
 msgstr ""
 
-#: fortran/expr.c:2726
+#: fortran/expr.c:2729
 #, gcc-internal-format
 msgid ""
 "Assumed or deferred character length variable %qs in constant expression at "
 "%L"
 msgstr ""
 
-#: fortran/expr.c:2801
+#: fortran/expr.c:2804
 #, gcc-internal-format
 msgid ""
 "transformational intrinsic %qs at %L is not permitted in an initialization "
 "expression"
 msgstr ""
 
-#: fortran/expr.c:2832
+#: fortran/expr.c:2835
 #, gcc-internal-format, gfc-internal-format
 msgid "Evaluation of nonstandard initialization expression at %L"
 msgstr ""
 
-#: fortran/expr.c:2909 fortran/resolve.c:2737
+#: fortran/expr.c:2912 fortran/resolve.c:2744
 #, gcc-internal-format
 msgid ""
 "Function %qs in initialization expression at %L must be an intrinsic function"
 msgstr ""
 
-#: fortran/expr.c:2921
+#: fortran/expr.c:2924
 #, gcc-internal-format
 msgid ""
 "Intrinsic function %qs at %L is not permitted in an initialization expression"
 msgstr ""
 
-#: fortran/expr.c:2960
+#: fortran/expr.c:2963
 #, gcc-internal-format
 msgid "PARAMETER %qs is used at %L before its definition is complete"
 msgstr ""
 
-#: fortran/expr.c:2980
+#: fortran/expr.c:2983
 #, gcc-internal-format
 msgid ""
 "Assumed size array %qs at %L is not permitted in an initialization expression"
 msgstr ""
 
-#: fortran/expr.c:2986
+#: fortran/expr.c:2989
 #, gcc-internal-format
 msgid ""
 "Assumed shape array %qs at %L is not permitted in an initialization "
 "expression"
 msgstr ""
 
-#: fortran/expr.c:2995
+#: fortran/expr.c:2998
 #, gcc-internal-format
 msgid ""
 "Assumed-shape array %qs at %L is not permitted in an initialization "
 "expression"
 msgstr ""
 
-#: fortran/expr.c:2999
+#: fortran/expr.c:3002
 #, gcc-internal-format
 msgid ""
 "Deferred array %qs at %L is not permitted in an initialization expression"
 msgstr ""
 
-#: fortran/expr.c:3005
+#: fortran/expr.c:3008
 #, gcc-internal-format
 msgid ""
 "Array %qs at %L is a variable, which does not reduce to a constant expression"
 msgstr ""
 
-#: fortran/expr.c:3015
+#: fortran/expr.c:3014
+#, gcc-internal-format
+msgid ""
+"Assumed-rank array %qs at %L is not permitted in an initialization expression"
+msgstr ""
+
+#: fortran/expr.c:3024
 #, 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.c:3069
+#: fortran/expr.c:3078
 #, gcc-internal-format
 msgid "check_init_expr(): Unknown expression type"
 msgstr ""
 
-#: fortran/expr.c:3204
+#: fortran/expr.c:3213
 #, gcc-internal-format
 msgid "Specification function %qs at %L cannot be a statement function"
 msgstr ""
 
-#: fortran/expr.c:3211
+#: fortran/expr.c:3220
 #, gcc-internal-format
 msgid "Specification function %qs at %L cannot be an internal function"
 msgstr ""
 
-#: fortran/expr.c:3218
+#: fortran/expr.c:3227
 #, gcc-internal-format
 msgid "Specification function %qs at %L must be PURE"
 msgstr ""
 
-#: fortran/expr.c:3226
+#: fortran/expr.c:3235
 #, gcc-internal-format
 msgid "Specification function %qs at %L cannot be RECURSIVE"
 msgstr ""
 
-#: fortran/expr.c:3373
+#: fortran/expr.c:3382
 #, gcc-internal-format
 msgid "Dummy argument %qs not allowed in expression at %L"
 msgstr ""
 
-#: fortran/expr.c:3381
+#: fortran/expr.c:3390
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L cannot be OPTIONAL"
 msgstr ""
 
-#: fortran/expr.c:3388
+#: fortran/expr.c:3397
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L cannot be INTENT(OUT)"
 msgstr ""
 
-#: fortran/expr.c:3417
+#: fortran/expr.c:3426
 #, gcc-internal-format
 msgid "Variable %qs cannot appear in the expression at %L"
 msgstr ""
 
-#: fortran/expr.c:3448
+#: fortran/expr.c:3457
 #, gcc-internal-format
 msgid "check_restricted(): Unknown expression type"
 msgstr ""
 
-#: fortran/expr.c:3468
+#: fortran/expr.c:3477
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression at %L must be of INTEGER type, found %s"
 msgstr ""
 
-#: fortran/expr.c:3480
+#: fortran/expr.c:3489
 #, gcc-internal-format
 msgid "Function %qs at %L must be PURE"
 msgstr ""
 
-#: fortran/expr.c:3489
+#: fortran/expr.c:3498
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression at %L must be scalar"
 msgstr ""
 
 #. Reject truncation.
-#: fortran/expr.c:3521
+#: fortran/expr.c:3530
 #, gcc-internal-format, gfc-internal-format
 msgid "optype_msgid overflow: %d"
 msgstr ""
 
-#: fortran/expr.c:3525
+#: fortran/expr.c:3534
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible ranks in %s (%d and %d) at %L"
 msgstr ""
 
-#: fortran/expr.c:3539
+#: fortran/expr.c:3548
 #, gcc-internal-format, gfc-internal-format
 msgid "Different shape for %s at %L on dimension %d (%d and %d)"
 msgstr ""
 
-#: fortran/expr.c:3587
+#: fortran/expr.c:3596
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to a LEN or KIND part_ref at %L is not allowed"
 msgstr ""
 
-#: fortran/expr.c:3643
+#: fortran/expr.c:3652
 #, gcc-internal-format
 msgid "%qs at %L is not a VALUE"
 msgstr ""
 
-#: fortran/expr.c:3654
+#: fortran/expr.c:3663
 #, gcc-internal-format, gfc-internal-format
 msgid "Illegal assignment to external procedure at %L"
 msgstr ""
 
-#: fortran/expr.c:3662
+#: fortran/expr.c:3671
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible ranks %d and %d in assignment at %L"
 msgstr ""
 
-#: fortran/expr.c:3669
+#: fortran/expr.c:3678
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable type is UNKNOWN in assignment at %L"
 msgstr ""
 
-#: fortran/expr.c:3681
+#: fortran/expr.c:3690
 #, gcc-internal-format, gfc-internal-format
 msgid "NULL appears on right-hand side in assignment at %L"
 msgstr ""
 
-#: fortran/expr.c:3691
+#: fortran/expr.c:3700
 #, gcc-internal-format, gfc-internal-format
 msgid "POINTER-valued function appears on right-hand side of assignment at %L"
 msgstr ""
 
-#: fortran/expr.c:3734
+#: fortran/expr.c:3743
 #, gcc-internal-format
 msgid "BOZ literal constant near %L cannot be assigned to a %qs variable"
 msgstr ""
 
-#: fortran/expr.c:3741
+#: fortran/expr.c:3750
 #, 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.c:3771
+#: fortran/expr.c:3780
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Incompatible types in DATA statement at %L; attempted conversion of %s to %s"
 msgstr ""
 
-#: fortran/expr.c:3812
+#: fortran/expr.c:3821
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target is not a POINTER at %L"
 msgstr ""
 
-#: fortran/expr.c:3820
+#: fortran/expr.c:3829
 #, gcc-internal-format
 msgid ""
 "%qs in the pointer assignment at %L cannot be an l-value since it is a "
 "procedure"
 msgstr ""
 
-#: fortran/expr.c:3844
+#: fortran/expr.c:3853
 #, gcc-internal-format
 msgid "Expected bounds specification for %qs at %L"
 msgstr ""
 
-#: fortran/expr.c:3849
+#: fortran/expr.c:3858
 #, gcc-internal-format
 msgid "Bounds specification for %qs in pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.c:3878
+#: fortran/expr.c:3887
 #, gcc-internal-format, gfc-internal-format
 msgid "Stride must not be present at %L"
 msgstr ""
 
-#: fortran/expr.c:3884 fortran/expr.c:3904
+#: fortran/expr.c:3893 fortran/expr.c:3913
 #, gcc-internal-format
 msgid ""
 "Rank remapping requires a list of %<lower-bound : upper-bound%> "
 "specifications at %L"
 msgstr ""
 
-#: fortran/expr.c:3892 fortran/expr.c:3911
+#: fortran/expr.c:3901 fortran/expr.c:3920
 #, gcc-internal-format
 msgid ""
 "Expected list of %<lower-bound :%> or list of %<lower-bound : upper-bound%> "
 "specifications at %L"
 msgstr ""
 
-#: fortran/expr.c:3938
+#: fortran/expr.c:3947
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer object at %L shall not have a coindex"
 msgstr ""
 
-#: fortran/expr.c:3959
+#: fortran/expr.c:3968
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid procedure pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.c:3984
+#: fortran/expr.c:3993
 #, gcc-internal-format
 msgid ""
 "Function result %qs is invalid as proc-target in procedure pointer "
 "assignment at %L"
 msgstr ""
 
-#: fortran/expr.c:3993
+#: fortran/expr.c:4002
 #, gcc-internal-format
 msgid "Abstract interface %qs is invalid in procedure pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.c:4003
+#: fortran/expr.c:4012
 #, gcc-internal-format
 msgid "Statement function %qs is invalid in procedure pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.c:4009
+#: fortran/expr.c:4018
 #, gcc-internal-format
 msgid "Internal procedure %qs is invalid in procedure pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.c:4016
+#: fortran/expr.c:4025
 #, gcc-internal-format
 msgid "Intrinsic %qs at %L is invalid in procedure pointer assignment"
 msgstr ""
 
-#: fortran/expr.c:4024
+#: fortran/expr.c:4033
 #, gcc-internal-format
 msgid ""
 "Nonintrinsic elemental procedure %qs is invalid in procedure pointer "
 "assignment at %L"
 msgstr ""
 
-#: fortran/expr.c:4047
+#: fortran/expr.c:4056
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Mismatch in the procedure pointer assignment at %L: mismatch in the calling "
 "convention"
 msgstr ""
 
-#: fortran/expr.c:4100
+#: fortran/expr.c:4109
 #, gcc-internal-format
 msgid ""
 "Interface mismatch in procedure pointer assignment at %L: %qs is not a "
 "subroutine"
 msgstr ""
 
-#: fortran/expr.c:4110 fortran/expr.c:4125
+#: fortran/expr.c:4119 fortran/expr.c:4134
 #, gcc-internal-format
 msgid "Explicit interface required for component %qs at %L: %s"
 msgstr ""
 
-#: fortran/expr.c:4116 fortran/expr.c:4131 fortran/resolve.c:2617
+#: fortran/expr.c:4125 fortran/expr.c:4140 fortran/resolve.c:2624
 #, gcc-internal-format
 msgid "Explicit interface required for %qs at %L: %s"
 msgstr ""
 
-#: fortran/expr.c:4143
+#: fortran/expr.c:4152
 #, gcc-internal-format, gfc-internal-format
 msgid "Interface mismatch in procedure pointer assignment at %L: %s"
 msgstr ""
 
-#: fortran/expr.c:4152
+#: fortran/expr.c:4161
 #, 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.c:4165
+#: fortran/expr.c:4174
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target cannot be a constant at %L"
 msgstr ""
 
-#: fortran/expr.c:4179
+#: fortran/expr.c:4188
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Data-pointer-object at %L must be unlimited polymorphic, or of a type with "
@@ -63897,34 +65713,34 @@ msgid ""
 "polymorphic target"
 msgstr ""
 
-#: fortran/expr.c:4184
+#: fortran/expr.c:4193
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Different types in pointer assignment at %L; attempted assignment of %s to %s"
 msgstr ""
 
-#: fortran/expr.c:4192
+#: fortran/expr.c:4201
 #, gcc-internal-format, gfc-internal-format
 msgid "Different kind type parameters in pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.c:4199
+#: fortran/expr.c:4208
 #, gcc-internal-format, gfc-internal-format
 msgid "Different ranks in pointer assignment at %L"
 msgstr ""
 
-#: fortran/expr.c:4218
+#: fortran/expr.c:4227
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Rank remapping target is smaller than size of the pointer (%ld < %ld) at %L"
 msgstr ""
 
-#: fortran/expr.c:4231
+#: fortran/expr.c:4240
 #, gcc-internal-format, gfc-internal-format
 msgid "Rank remapping target must be rank 1 or simply contiguous at %L"
 msgstr ""
 
-#: fortran/expr.c:4235
+#: fortran/expr.c:4244
 #, gcc-internal-format, gfc-internal-format
 msgid "Rank remapping target is not rank 1 at %L"
 msgstr ""
@@ -63932,197 +65748,197 @@ 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.c:4260 fortran/expr.c:4352
+#: fortran/expr.c:4269 fortran/expr.c:4361
 #, gcc-internal-format, gfc-internal-format
 msgid "Data target at %L shall not have a coindex"
 msgstr ""
 
-#: fortran/expr.c:4263
+#: fortran/expr.c:4272
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Target expression in pointer assignment at %L must deliver a pointer result"
 msgstr ""
 
-#: fortran/expr.c:4276
+#: fortran/expr.c:4285
 #, 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.c:4282 fortran/expr.c:4297
+#: fortran/expr.c:4291 fortran/expr.c:4306
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Pointer assignment target in initialization expression does not have the "
 "TARGET attribute at %L"
 msgstr ""
 
-#: fortran/expr.c:4307
+#: fortran/expr.c:4316
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target is neither TARGET nor POINTER at %L"
 msgstr ""
 
-#: fortran/expr.c:4322
+#: fortran/expr.c:4331
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad target in pointer assignment in PURE procedure at %L"
 msgstr ""
 
-#: fortran/expr.c:4331
+#: fortran/expr.c:4340
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment with vector subscript on rhs at %L"
 msgstr ""
 
-#: fortran/expr.c:4339
+#: fortran/expr.c:4348
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target has PROTECTED attribute at %L"
 msgstr ""
 
-#: fortran/expr.c:4365
+#: fortran/expr.c:4376 fortran/expr.c:4381
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to contiguous pointer from non-contiguous target at %L"
 msgstr ""
 
-#: fortran/expr.c:4404
+#: fortran/expr.c:4421
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer at %L in pointer assignment might outlive the pointer target"
 msgstr ""
 
-#: fortran/expr.c:4480 fortran/resolve.c:1459
+#: fortran/expr.c:4497 fortran/resolve.c:1466
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer initialization target at %L must not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/expr.c:4486
+#: fortran/expr.c:4503
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer initialization target at %L must have the TARGET attribute"
 msgstr ""
 
-#: fortran/expr.c:4501 fortran/resolve.c:1465
+#: fortran/expr.c:4518 fortran/resolve.c:1472
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer initialization target at %L must have the SAVE attribute"
 msgstr ""
 
-#: fortran/expr.c:4513
+#: fortran/expr.c:4530
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Procedure pointer initialization target at %L may not be a procedure pointer"
 msgstr ""
 
-#: fortran/expr.c:4519
+#: fortran/expr.c:4536
 #, gcc-internal-format
 msgid ""
 "Internal procedure %qs is invalid in procedure pointer initialization at %L"
 msgstr ""
 
-#: fortran/expr.c:4526
+#: fortran/expr.c:4543
 #, gcc-internal-format
 msgid ""
 "Dummy procedure %qs is invalid in procedure pointer initialization at %L"
 msgstr ""
 
-#: fortran/expr.c:4994
+#: fortran/expr.c:5011
 #, gcc-internal-format
 msgid ""
 "generate_isocbinding_initializer(): bad iso_c_binding type, expected %<c_ptr"
 "%> or %<c_funptr%>"
 msgstr ""
 
-#: fortran/expr.c:6079
+#: fortran/expr.c:6100
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Fortran 2008: Pointer functions in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.c:6087
+#: fortran/expr.c:6108
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-variable expression in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.c:6095
+#: fortran/expr.c:6116
 #, gcc-internal-format
 msgid "Named constant %qs in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.c:6104
+#: fortran/expr.c:6125
 #, gcc-internal-format
 msgid "%qs in variable definition context (%s) at %L is not a variable"
 msgstr ""
 
-#: fortran/expr.c:6115
+#: fortran/expr.c:6136
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-POINTER in pointer association context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.c:6124
+#: fortran/expr.c:6145
 #, gcc-internal-format, gfc-internal-format
 msgid "Type inaccessible in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.c:6137
+#: fortran/expr.c:6158
 #, gcc-internal-format, gfc-internal-format
 msgid "LOCK_TYPE in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.c:6150
+#: fortran/expr.c:6171
 #, gcc-internal-format, gfc-internal-format
 msgid "LOCK_EVENT in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.c:6185
+#: fortran/expr.c:6206
 #, gcc-internal-format
 msgid ""
 "Dummy argument %qs with INTENT(IN) in pointer association context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.c:6195
+#: fortran/expr.c:6216
 #, gcc-internal-format
 msgid ""
 "Dummy argument %qs with INTENT(IN) in variable definition context (%s) at %L"
 msgstr ""
 
-#: fortran/expr.c:6208
+#: fortran/expr.c:6229
 #, gcc-internal-format
 msgid ""
 "Variable %qs is PROTECTED and cannot appear in a pointer association context "
 "(%s) at %L"
 msgstr ""
 
-#: fortran/expr.c:6216
+#: fortran/expr.c:6237
 #, gcc-internal-format
 msgid ""
 "Variable %qs is PROTECTED and cannot appear in a variable definition context "
 "(%s) at %L"
 msgstr ""
 
-#: fortran/expr.c:6228
+#: fortran/expr.c:6252
 #, gcc-internal-format
 msgid ""
 "Variable %qs cannot appear in a variable definition context (%s) at %L in "
 "PURE procedure"
 msgstr ""
 
-#: fortran/expr.c:6287
+#: fortran/expr.c:6311
 #, gcc-internal-format
 msgid ""
 "%qs at %L associated to vector-indexed target cannot be used in a variable "
 "definition context (%s)"
 msgstr ""
 
-#: fortran/expr.c:6292
+#: fortran/expr.c:6316
 #, gcc-internal-format
 msgid ""
 "%qs at %L associated to expression cannot be used in a variable definition "
 "context (%s)"
 msgstr ""
 
-#: fortran/expr.c:6304
+#: fortran/expr.c:6328
 #, 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.c:6346
+#: fortran/expr.c:6370
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Elements with the same value at %L and %L in vector subscript in a variable "
@@ -64149,9 +65965,9 @@ msgstr ""
 msgid "Illegal id in copy_walk_reduction_arg"
 msgstr ""
 
-#: fortran/frontend-passes.c:870 fortran/trans-array.c:1276
-#: fortran/trans-array.c:6611 fortran/trans-array.c:8083
-#: fortran/trans-intrinsic.c:8338
+#: fortran/frontend-passes.c:870 fortran/trans-array.c:1353
+#: fortran/trans-array.c:6710 fortran/trans-array.c:8199
+#: fortran/trans-intrinsic.c:8537
 #, gcc-internal-format, gfc-internal-format
 msgid "Creating array temporary at %L"
 msgstr ""
@@ -64181,60 +65997,88 @@ msgstr ""
 msgid "illegal OP in optimize_comparison"
 msgstr ""
 
-#: fortran/frontend-passes.c:2421
+#: fortran/frontend-passes.c:2351
+#, gcc-internal-format
+msgid ""
+"Index variable %qs set to undefined as INTENT(OUT) argument at %L in "
+"procedure %qs called from within DO loop at %L"
+msgstr ""
+
+#: fortran/frontend-passes.c:2360
+#, gcc-internal-format
+msgid ""
+"Index variable %qs not definable as INTENT(INOUT) argument at %L in "
+"procedure %qs called from within DO loop at %L"
+msgstr ""
+
+#: fortran/frontend-passes.c:2488
+#, gcc-internal-format
+msgid ""
+"Index variable %qs set to undefined as INTENT(OUT) argument at %L in "
+"subroutine %qs called from within DO loop at %L"
+msgstr ""
+
+#: fortran/frontend-passes.c:2497
+#, gcc-internal-format
+msgid ""
+"Index variable %qs not definable as INTENT(INOUT) argument at %L in "
+"subroutine %qs called from within DO loop at %L"
+msgstr ""
+
+#: fortran/frontend-passes.c:2650
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L set to undefined value inside loop  beginning at %L as "
 "INTENT(OUT) argument to subroutine %qs"
 msgstr ""
 
-#: fortran/frontend-passes.c:2428
+#: fortran/frontend-passes.c:2657
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L not definable inside loop beginning at %L as "
 "INTENT(INOUT) argument to subroutine %qs"
 msgstr ""
 
-#: fortran/frontend-passes.c:2681 fortran/frontend-passes.c:2705
+#: fortran/frontend-passes.c:2911 fortran/frontend-passes.c:2935
 #, 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.c:2690 fortran/frontend-passes.c:2714
+#: fortran/frontend-passes.c:2920 fortran/frontend-passes.c:2944
 #, 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.c:2774
+#: fortran/frontend-passes.c:3029
 #, 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.c:2780
+#: fortran/frontend-passes.c:3035
 #, 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.c:3184 fortran/trans-expr.c:1616
+#: fortran/frontend-passes.c:3439 fortran/trans-expr.c:1780
 #, gcc-internal-format, gfc-internal-format
 msgid "Code for reallocating the allocatable array at %L will be added"
 msgstr ""
 
-#: fortran/frontend-passes.c:3709
+#: fortran/frontend-passes.c:3964
 #, gcc-internal-format
 msgid "Scalarization using DIMEN_RANGE unimplemented"
 msgstr ""
 
-#: fortran/frontend-passes.c:4903
+#: fortran/frontend-passes.c:5158
 #, gcc-internal-format, gfc-internal-format
 msgid "Interchanging loops at %L"
 msgstr ""
 
-#: fortran/frontend-passes.c:5529
+#: fortran/frontend-passes.c:5785
 #, gcc-internal-format, gfc-internal-format
 msgid "%s between %L and %L"
 msgstr ""
@@ -64358,12 +66202,12 @@ msgstr ""
 msgid "Second argument of defined assignment at %L must be INTENT(IN)"
 msgstr ""
 
-#: fortran/interface.c:987 fortran/resolve.c:17107
+#: fortran/interface.c:987 fortran/resolve.c:17192
 #, gcc-internal-format, gfc-internal-format
 msgid "First argument of operator interface at %L must be INTENT(IN)"
 msgstr ""
 
-#: fortran/interface.c:994 fortran/resolve.c:17125
+#: fortran/interface.c:994 fortran/resolve.c:17210
 #, gcc-internal-format, gfc-internal-format
 msgid "Second argument of operator interface at %L must be INTENT(IN)"
 msgstr ""
@@ -64373,170 +66217,170 @@ msgstr ""
 msgid "Operator interface at %L conflicts with intrinsic interface"
 msgstr ""
 
-#: fortran/interface.c:1457 fortran/interface.c:1516
+#: fortran/interface.c:1457 fortran/interface.c:1529
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "check_dummy_characteristics: Unexpected result %i of gfc_dep_compare_expr"
 msgstr ""
 
-#: fortran/interface.c:1629
+#: fortran/interface.c:1642
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "check_result_characteristics (1): Unexpected result %i of "
 "gfc_dep_compare_expr"
 msgstr ""
 
-#: fortran/interface.c:1676
+#: fortran/interface.c:1689
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "check_result_characteristics (2): Unexpected result %i of "
 "gfc_dep_compare_expr"
 msgstr ""
 
-#: fortran/interface.c:1865
+#: fortran/interface.c:1878
 #, gcc-internal-format
 msgid "Procedure %qs in %s at %L has no explicit interface; did you mean %qs?"
 msgstr ""
 
-#: fortran/interface.c:1870
+#: fortran/interface.c:1883
 #, gcc-internal-format
 msgid "Procedure %qs in %s at %L has no explicit interface"
 msgstr ""
 
-#: fortran/interface.c:1874
+#: fortran/interface.c:1887
 #, gcc-internal-format
 msgid ""
 "Procedure %qs in %s at %L is neither function nor subroutine; did you mean "
 "%qs?"
 msgstr ""
 
-#: fortran/interface.c:1878
+#: fortran/interface.c:1891
 #, gcc-internal-format
 msgid "Procedure %qs in %s at %L is neither function nor subroutine"
 msgstr ""
 
-#: fortran/interface.c:1890
+#: fortran/interface.c:1903
 #, gcc-internal-format, gfc-internal-format
 msgid "In %s at %L procedures must be either all SUBROUTINEs or all FUNCTIONs"
 msgstr ""
 
-#: fortran/interface.c:1894
+#: fortran/interface.c:1907
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "In %s at %L procedures must be all FUNCTIONs as the generic name is also the "
 "name of a derived type"
 msgstr ""
 
-#: fortran/interface.c:1902
+#: fortran/interface.c:1915
 #, gcc-internal-format
 msgid "Internal procedure %qs in %s at %L"
 msgstr ""
 
-#: fortran/interface.c:1959 fortran/interface.c:1964
+#: fortran/interface.c:1972 fortran/interface.c:1977
 #, gcc-internal-format
 msgid "Ambiguous interfaces in %s for %qs at %L and %qs at %L"
 msgstr ""
 
-#: fortran/interface.c:1969
+#: fortran/interface.c:1982
 #, gcc-internal-format
 msgid "Although not referenced, %qs has ambiguous interfaces at %L"
 msgstr ""
 
-#: fortran/interface.c:2007
+#: fortran/interface.c:2020
 #, gcc-internal-format
 msgid "%qs at %L is not a module procedure"
 msgstr ""
 
-#: fortran/interface.c:2212
+#: fortran/interface.c:2225
 #, gcc-internal-format
 msgid ""
 "The assumed-rank array at %L requires that the dummy argument %qs has "
 "assumed-rank"
 msgstr ""
 
-#: fortran/interface.c:2215
+#: fortran/interface.c:2228
 #, gcc-internal-format
 msgid "Rank mismatch in argument %qs at %L (scalar and rank-%d)"
 msgstr ""
 
-#: fortran/interface.c:2218
+#: fortran/interface.c:2231
 #, gcc-internal-format
 msgid "Rank mismatch in argument %qs at %L (rank-%d and scalar)"
 msgstr ""
 
-#: fortran/interface.c:2221
+#: fortran/interface.c:2234
 #, gcc-internal-format
 msgid "Rank mismatch in argument %qs at %L (rank-%d and rank-%d)"
 msgstr ""
 
-#: fortran/interface.c:2229
+#: fortran/interface.c:2242
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Rank mismatch between actual argument at %L and actual argument at %L "
 "(scalar and rank-%d)"
 msgstr ""
 
-#: fortran/interface.c:2233
+#: fortran/interface.c:2246
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Rank mismatch between actual argument at %L and actual argument at %L (rank-"
 "%d and scalar)"
 msgstr ""
 
-#: fortran/interface.c:2237
+#: fortran/interface.c:2250
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Rank mismatch between actual argument at %L and actual argument at %L (rank-"
 "%d and rank-%d)"
 msgstr ""
 
-#: fortran/interface.c:2342
+#: fortran/interface.c:2355
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid procedure argument at %L"
 msgstr ""
 
-#: fortran/interface.c:2350 fortran/interface.c:2377
+#: fortran/interface.c:2363 fortran/interface.c:2390
 #, gcc-internal-format
 msgid "Interface mismatch in dummy procedure %qs at %L: %s"
 msgstr ""
 
-#: fortran/interface.c:2388
+#: fortran/interface.c:2401
 #, gcc-internal-format
 msgid ""
 "Actual argument to contiguous pointer dummy %qs at %L must be simply "
 "contiguous"
 msgstr ""
 
-#: fortran/interface.c:2411
+#: fortran/interface.c:2424
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Type mismatch between actual argument at %L and actual argument at %L (%s/"
 "%s)."
 msgstr ""
 
-#: fortran/interface.c:2421
+#: fortran/interface.c:2434
 #, gcc-internal-format
 msgid "Type mismatch in argument %qs at %L; passed %s to %s"
 msgstr ""
 
-#: fortran/interface.c:2431
+#: fortran/interface.c:2444
 #, gcc-internal-format
 msgid ""
 "Assumed-type actual argument at %L requires that dummy argument %qs is of "
 "assumed type"
 msgstr ""
 
-#: fortran/interface.c:2447
+#: fortran/interface.c:2460
 #, gcc-internal-format
 msgid "Actual argument to %qs at %L must be polymorphic"
 msgstr ""
 
-#: fortran/interface.c:2457
+#: fortran/interface.c:2470
 #, gcc-internal-format
 msgid "Actual argument to %qs at %L must have the same declared type"
 msgstr ""
 
-#: fortran/interface.c:2472
+#: fortran/interface.c:2485
 #, gcc-internal-format
 msgid ""
 "Actual argument to %qs at %L must be unlimited polymorphic since the formal "
@@ -64544,38 +66388,38 @@ msgid ""
 "12.5.2.5]"
 msgstr ""
 
-#: fortran/interface.c:2483
+#: fortran/interface.c:2496
 #, gcc-internal-format
 msgid "Actual argument to %qs at %L must be a coarray"
 msgstr ""
 
-#: fortran/interface.c:2502
+#: fortran/interface.c:2515
 #, gcc-internal-format
 msgid "Corank mismatch in argument %qs at %L (%d and %d)"
 msgstr ""
 
-#: fortran/interface.c:2520
+#: fortran/interface.c:2533
 #, gcc-internal-format
 msgid ""
 "Actual argument to %qs at %L must be simply contiguous or an element of such "
 "an array"
 msgstr ""
 
-#: fortran/interface.c:2535
+#: fortran/interface.c:2548
 #, 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.c:2550
+#: fortran/interface.c:2563
 #, 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.c:2569
+#: fortran/interface.c:2582
 #, gcc-internal-format
 msgid ""
 "Dummy argument %qs has to be a pointer, assumed-shape or assumed-rank array "
@@ -64583,202 +66427,202 @@ msgid ""
 "contiguous and both are ASYNCHRONOUS or VOLATILE"
 msgstr ""
 
-#: fortran/interface.c:2582
+#: fortran/interface.c:2595
 #, gcc-internal-format
 msgid ""
 "Passing coarray at %L to allocatable, noncoarray, INTENT(OUT) dummy argument "
 "%qs"
 msgstr ""
 
-#: fortran/interface.c:2589
+#: fortran/interface.c:2602
 #, 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.c:2663
+#: fortran/interface.c:2676
 #, gcc-internal-format
 msgid "Polymorphic scalar passed to array dummy argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.c:2674
+#: fortran/interface.c:2687
 #, 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.c:2679
+#: fortran/interface.c:2692
 #, gcc-internal-format
 msgid ""
 "Element of assumed-shape or pointer array passed to array dummy argument %qs "
 "at %L"
 msgstr ""
 
-#: fortran/interface.c:2692
+#: fortran/interface.c:2705
 #, 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.c:2700
+#: fortran/interface.c:2713
 #, gcc-internal-format
 msgid ""
 "Fortran 2003: Scalar CHARACTER actual argument with array dummy argument %qs "
 "at %L"
 msgstr ""
 
-#: fortran/interface.c:3051
+#: fortran/interface.c:3064
 #, gcc-internal-format
 msgid "Keyword argument %qs at %L is invalid in a statement function"
 msgstr ""
 
-#: fortran/interface.c:3074
+#: fortran/interface.c:3087
 #, gcc-internal-format
 msgid "Keyword argument %qs at %L is not in the procedure; did you mean %qs?"
 msgstr ""
 
-#: fortran/interface.c:3078
+#: fortran/interface.c:3091
 #, gcc-internal-format
 msgid "Keyword argument %qs at %L is not in the procedure"
 msgstr ""
 
-#: fortran/interface.c:3087
+#: fortran/interface.c:3100
 #, gcc-internal-format
 msgid ""
 "Keyword argument %qs at %L is already associated with another actual argument"
 msgstr ""
 
-#: fortran/interface.c:3097
+#: fortran/interface.c:3110
 #, gcc-internal-format, gfc-internal-format
 msgid "More actual than formal arguments in procedure call at %L"
 msgstr ""
 
-#: fortran/interface.c:3111
+#: fortran/interface.c:3124
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing alternate return specifier in subroutine call at %L"
 msgstr ""
 
-#: fortran/interface.c:3123
+#: fortran/interface.c:3136
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected alternate return specifier in subroutine call at %L"
 msgstr ""
 
-#: fortran/interface.c:3152
+#: fortran/interface.c:3165
 #, gcc-internal-format
 msgid "Unexpected NULL() intrinsic at %L to dummy %qs"
 msgstr ""
 
-#: fortran/interface.c:3155
+#: fortran/interface.c:3168
 #, gcc-internal-format
 msgid "Fortran 2008: Null pointer at %L to non-pointer dummy %qs"
 msgstr ""
 
-#: fortran/interface.c:3179
+#: fortran/interface.c:3192
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Actual argument at %L to assumed-type dummy is of derived type with type-"
 "bound or FINAL procedures"
 msgstr ""
 
-#: fortran/interface.c:3201
+#: fortran/interface.c:3214
 #, gcc-internal-format
 msgid ""
 "Character length mismatch (%ld/%ld) between actual argument and pointer or "
 "allocatable dummy argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.c:3208
+#: fortran/interface.c:3221
 #, gcc-internal-format
 msgid ""
 "Character length mismatch (%ld/%ld) between actual argument and assumed-"
 "shape dummy argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.c:3222
+#: fortran/interface.c:3235
 #, 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.c:3239
+#: fortran/interface.c:3252
 #, gcc-internal-format
 msgid ""
 "Character length of actual argument shorter than of dummy argument %qs (%lu/"
 "%lu) at %L"
 msgstr ""
 
-#: fortran/interface.c:3247 fortran/interface.c:3252
+#: fortran/interface.c:3260 fortran/interface.c:3265
 #, gcc-internal-format
 msgid ""
 "Actual argument contains too few elements for dummy argument %qs (%lu/%lu) "
 "at %L"
 msgstr ""
 
-#: fortran/interface.c:3272
+#: fortran/interface.c:3285
 #, gcc-internal-format
 msgid "Expected a procedure pointer for argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.c:3288
+#: fortran/interface.c:3301
 #, gcc-internal-format
 msgid "Expected a procedure for argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.c:3302
+#: fortran/interface.c:3318
 #, gcc-internal-format
 msgid "Actual argument for %qs cannot be an assumed-size array at %L"
 msgstr ""
 
-#: fortran/interface.c:3311
+#: fortran/interface.c:3327
 #, gcc-internal-format
 msgid "Actual argument for %qs must be a pointer at %L"
 msgstr ""
 
-#: fortran/interface.c:3321
+#: fortran/interface.c:3337
 #, gcc-internal-format
 msgid "Fortran 2008: Non-pointer actual argument at %L to pointer dummy %qs"
 msgstr ""
 
-#: fortran/interface.c:3331
+#: fortran/interface.c:3347
 #, gcc-internal-format
 msgid "Coindexed actual argument at %L to pointer dummy %qs"
 msgstr ""
 
-#: fortran/interface.c:3344
+#: fortran/interface.c:3360
 #, gcc-internal-format
 msgid ""
 "Coindexed actual argument at %L to allocatable dummy %qs requires INTENT(IN)"
 msgstr ""
 
-#: fortran/interface.c:3358
+#: fortran/interface.c:3374
 #, gcc-internal-format
 msgid ""
 "Coindexed ASYNCHRONOUS or VOLATILE actual argument at %L requires that dummy "
 "%qs has neither ASYNCHRONOUS nor VOLATILE"
 msgstr ""
 
-#: fortran/interface.c:3372
+#: fortran/interface.c:3388
 #, 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.c:3384
+#: fortran/interface.c:3400
 #, gcc-internal-format
 msgid "Actual CLASS array argument for %qs must be a full array at %L"
 msgstr ""
 
-#: fortran/interface.c:3394
+#: fortran/interface.c:3410
 #, gcc-internal-format
 msgid "Actual argument for %qs must be ALLOCATABLE at %L"
 msgstr ""
 
-#: fortran/interface.c:3424
+#: fortran/interface.c:3440
 #, gcc-internal-format
 msgid ""
 "Array-section actual argument with vector subscripts at %L is incompatible "
@@ -64786,384 +66630,384 @@ msgid ""
 "dummy argument %qs"
 msgstr ""
 
-#: fortran/interface.c:3443
+#: fortran/interface.c:3459
 #, 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.c:3460
+#: fortran/interface.c:3476
 #, 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.c:3480
+#: fortran/interface.c:3496
 #, 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.c:3503
+#: fortran/interface.c:3519
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing alternate return spec in subroutine call at %L"
 msgstr ""
 
-#: fortran/interface.c:3511
+#: fortran/interface.c:3527
 #, gcc-internal-format
 msgid "Missing actual argument for argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.c:3637
+#: fortran/interface.c:3657
 #, gcc-internal-format
 msgid "compare_actual_expr(): Bad component code"
 msgstr ""
 
-#: fortran/interface.c:3666
+#: fortran/interface.c:3686
 #, gcc-internal-format
 msgid "check_some_aliasing(): List mismatch"
 msgstr ""
 
-#: fortran/interface.c:3692
+#: fortran/interface.c:3712
 #, gcc-internal-format
 msgid "check_some_aliasing(): corrupted data"
 msgstr ""
 
-#: fortran/interface.c:3702
+#: fortran/interface.c:3722
 #, gcc-internal-format
 msgid ""
 "Same actual argument associated with INTENT(%s) argument %qs and INTENT(%s) "
 "argument %qs at %L"
 msgstr ""
 
-#: fortran/interface.c:3732
+#: fortran/interface.c:3752
 #, gcc-internal-format
 msgid "check_intents(): List mismatch"
 msgstr ""
 
-#: fortran/interface.c:3752
+#: fortran/interface.c:3772
 #, 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.c:3764
+#: fortran/interface.c:3784
 #, 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.c:3774
+#: fortran/interface.c:3794
 #, 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.c:3785
+#: fortran/interface.c:3805
 #, gcc-internal-format
 msgid ""
 "Coindexed polymorphic actual argument at %L is passed polymorphic dummy "
 "argument %qs"
 msgstr ""
 
-#: fortran/interface.c:3827
+#: fortran/interface.c:3847
 #, gcc-internal-format
 msgid ""
 "Procedure %qs called at %L is not explicitly declared; did you mean %qs?"
 msgstr ""
 
-#: fortran/interface.c:3831 fortran/interface.c:3841
+#: fortran/interface.c:3851 fortran/interface.c:3861
 #, gcc-internal-format
 msgid "Procedure %qs called at %L is not explicitly declared"
 msgstr ""
 
-#: fortran/interface.c:3837
+#: fortran/interface.c:3857
 #, gcc-internal-format
 msgid "Procedure %qs called with an implicit interface at %L"
 msgstr ""
 
-#: fortran/interface.c:3850
+#: fortran/interface.c:3870
 #, gcc-internal-format
 msgid ""
 "The pointer object %qs at %L must have an explicit function interface or be "
 "declared as array"
 msgstr ""
 
-#: fortran/interface.c:3858
+#: fortran/interface.c:3878
 #, gcc-internal-format
 msgid ""
 "The allocatable object %qs at %L must have an explicit function interface or "
 "be declared as array"
 msgstr ""
 
-#: fortran/interface.c:3866
+#: fortran/interface.c:3886
 #, gcc-internal-format
 msgid "Allocatable function %qs at %L must have an explicit function interface"
 msgstr ""
 
-#: fortran/interface.c:3883
+#: fortran/interface.c:3903
 #, gcc-internal-format, gfc-internal-format
 msgid "Explicit interface required for polymorphic argument at %L"
 msgstr ""
 
-#: fortran/interface.c:3892
+#: fortran/interface.c:3912
 #, gcc-internal-format
 msgid "Keyword argument requires explicit interface for procedure %qs at %L"
 msgstr ""
 
-#: fortran/interface.c:3901
+#: fortran/interface.c:3921
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type argument %s at %L requires an explicit interface"
 msgstr ""
 
-#: fortran/interface.c:3916
+#: fortran/interface.c:3936
 #, 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.c:3931
+#: fortran/interface.c:3951
 #, 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.c:3941
+#: fortran/interface.c:3961
 #, gcc-internal-format, gfc-internal-format
 msgid "MOLD argument to NULL required at %L"
 msgstr ""
 
-#: fortran/interface.c:3951
+#: fortran/interface.c:3971
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank argument requires an explicit interface at %L"
 msgstr ""
 
-#: fortran/interface.c:3993
+#: fortran/interface.c:4013
 #, gcc-internal-format
 msgid "Procedure pointer component %qs called with an implicit interface at %L"
 msgstr ""
 
-#: fortran/interface.c:4004
+#: fortran/interface.c:4024
 #, gcc-internal-format
 msgid ""
 "Keyword argument requires explicit interface for procedure pointer component "
 "%qs at %L"
 msgstr ""
 
-#: fortran/interface.c:4089
+#: fortran/interface.c:4109
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "MOLD= required in NULL() argument at %L: Ambiguity between specific "
 "functions %s and %s"
 msgstr ""
 
-#: fortran/interface.c:4159
+#: fortran/interface.c:4179
 #, gcc-internal-format
 msgid "Unable to find symbol %qs"
 msgstr ""
 
-#: fortran/interface.c:4532
+#: fortran/interface.c:4552
 #, gcc-internal-format
 msgid "Entity %qs at %L is already present in the interface"
 msgstr ""
 
-#: fortran/interface.c:4649
+#: fortran/interface.c:4669
 #, gcc-internal-format
 msgid "gfc_add_interface(): Bad interface type"
 msgstr ""
 
-#: fortran/interface.c:4743
+#: fortran/interface.c:4763
 #, gcc-internal-format
 msgid "Cannot overwrite GENERIC %qs at %L"
 msgstr ""
 
-#: fortran/interface.c:4755
+#: fortran/interface.c:4775
 #, gcc-internal-format
 msgid "%qs at %L overrides a procedure binding declared NON_OVERRIDABLE"
 msgstr ""
 
-#: fortran/interface.c:4763
+#: fortran/interface.c:4783
 #, gcc-internal-format
 msgid "%qs at %L must not be DEFERRED as it overrides a non-DEFERRED binding"
 msgstr ""
 
-#: fortran/interface.c:4771
+#: fortran/interface.c:4791
 #, gcc-internal-format
 msgid "%qs at %L overrides a PURE procedure and must also be PURE"
 msgstr ""
 
-#: fortran/interface.c:4780
+#: fortran/interface.c:4800
 #, gcc-internal-format
 msgid "%qs at %L overrides an ELEMENTAL procedure and must also be ELEMENTAL"
 msgstr ""
 
-#: fortran/interface.c:4786
+#: fortran/interface.c:4806
 #, gcc-internal-format
 msgid ""
 "%qs at %L overrides a non-ELEMENTAL procedure and must not be ELEMENTAL, "
 "either"
 msgstr ""
 
-#: fortran/interface.c:4795
+#: fortran/interface.c:4815
 #, gcc-internal-format
 msgid "%qs at %L overrides a SUBROUTINE and must also be a SUBROUTINE"
 msgstr ""
 
-#: fortran/interface.c:4806
+#: fortran/interface.c:4826
 #, gcc-internal-format
 msgid "%qs at %L overrides a FUNCTION and must also be a FUNCTION"
 msgstr ""
 
-#: fortran/interface.c:4814
+#: fortran/interface.c:4834
 #, gcc-internal-format
 msgid "Result mismatch for the overriding procedure %qs at %L: %s"
 msgstr ""
 
-#: fortran/interface.c:4825
+#: fortran/interface.c:4845
 #, gcc-internal-format
 msgid "%qs at %L overrides a PUBLIC procedure and must not be PRIVATE"
 msgstr ""
 
-#: fortran/interface.c:4855
+#: fortran/interface.c:4875
 #, 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.c:4866
+#: fortran/interface.c:4886
 #, gcc-internal-format
 msgid "Argument mismatch for the overriding procedure %qs at %L: %s"
 msgstr ""
 
-#: fortran/interface.c:4875
+#: fortran/interface.c:4895
 #, gcc-internal-format
 msgid ""
 "%qs at %L must have the same number of formal arguments as the overridden "
 "procedure"
 msgstr ""
 
-#: fortran/interface.c:4884
+#: fortran/interface.c:4904
 #, gcc-internal-format
 msgid "%qs at %L overrides a NOPASS binding and must also be NOPASS"
 msgstr ""
 
-#: fortran/interface.c:4895
+#: fortran/interface.c:4915
 #, gcc-internal-format
 msgid "%qs at %L overrides a binding with PASS and must also be PASS"
 msgstr ""
 
-#: fortran/interface.c:4902
+#: fortran/interface.c:4922
 #, 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.c:4923
+#: fortran/interface.c:4943
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must be of type %s"
 msgstr ""
 
-#: fortran/interface.c:4930
+#: fortran/interface.c:4950
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must be of KIND = %d"
 msgstr ""
 
-#: fortran/interface.c:4937
+#: fortran/interface.c:4957
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must be a scalar"
 msgstr ""
 
-#: fortran/interface.c:4941
+#: fortran/interface.c:4961
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must be an ASSUMED SHAPE ARRAY"
 msgstr ""
 
-#: fortran/interface.c:4945
+#: fortran/interface.c:4965
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO character argument at %L must have assumed length"
 msgstr ""
 
-#: fortran/interface.c:4949
+#: fortran/interface.c:4969
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO dummy argument at %L must have INTENT %s"
 msgstr ""
 
-#: fortran/interface.c:5007 fortran/interface.c:5053
+#: fortran/interface.c:5027 fortran/interface.c:5073
 #, gcc-internal-format, gfc-internal-format
 msgid "Alternate return at %L is not permitted in a DTIO procedure"
 msgstr ""
 
-#: fortran/interface.c:5019
+#: fortran/interface.c:5039
 #, gcc-internal-format
 msgid "DTIO procedure %qs at %L must be a subroutine"
 msgstr ""
 
-#: fortran/interface.c:5031
+#: fortran/interface.c:5051
 #, gcc-internal-format
 msgid "Too few dummy arguments in DTIO procedure %qs at %L"
 msgstr ""
 
-#: fortran/interface.c:5038
+#: fortran/interface.c:5058
 #, gcc-internal-format
 msgid "Too many dummy arguments in DTIO procedure %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:201
+#: fortran/intrinsic.c:238
 #, 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.c:217
+#: fortran/intrinsic.c:254
 #, 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.c:224
+#: fortran/intrinsic.c:261
 #, 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.c:231
+#: fortran/intrinsic.c:268
 #, 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.c:238
+#: fortran/intrinsic.c:275
 #, 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.c:286
+#: fortran/intrinsic.c:323
 #, gcc-internal-format
 msgid "do_check(): too many args"
 msgstr ""
 
-#: fortran/intrinsic.c:366
+#: fortran/intrinsic.c:403
 #, gcc-internal-format
 msgid "add_sym(): Bad sizing mode"
 msgstr ""
 
-#: fortran/intrinsic.c:1158
+#: fortran/intrinsic.c:1195
 #, gcc-internal-format
 msgid ""
 "The intrinsic %qs at %L is not included in the selected standard but %s and "
@@ -65171,141 +67015,141 @@ msgid ""
 "option or define %<-fall-intrinsics%> to allow this intrinsic."
 msgstr ""
 
-#: fortran/intrinsic.c:1193
+#: fortran/intrinsic.c:1230
 #, gcc-internal-format
 msgid "make_generic(): Cannot find generic symbol %qs"
 msgstr ""
 
-#: fortran/intrinsic.c:4267
+#: fortran/intrinsic.c:4304
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "ALLOCATED intrinsic at %L requires an array or scalar allocatable entity"
 msgstr ""
 
-#: fortran/intrinsic.c:4280
+#: fortran/intrinsic.c:4317
 #, gcc-internal-format, gfc-internal-format
 msgid "Scalar entity required at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:4291
+#: fortran/intrinsic.c:4328
 #, gcc-internal-format, gfc-internal-format
 msgid "Array entity required at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:4298
+#: fortran/intrinsic.c:4335
 #, gcc-internal-format
 msgid "Invalid keyword %qs in %qs intrinsic function at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:4325
+#: fortran/intrinsic.c:4362
 #, gcc-internal-format
 msgid "Too many arguments in call to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:4340
+#: fortran/intrinsic.c:4377
 #, 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.c:4343
+#: fortran/intrinsic.c:4380
 #, gcc-internal-format
 msgid "Cannot find keyword named %qs in call to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:4350
+#: fortran/intrinsic.c:4387
 #, gcc-internal-format
 msgid "Argument %qs appears twice in call to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:4364
+#: fortran/intrinsic.c:4401
 #, gcc-internal-format
 msgid "Missing actual argument %qs in call to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:4379
+#: fortran/intrinsic.c:4416
 #, gcc-internal-format, gfc-internal-format
 msgid "ALTERNATE RETURN not permitted at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:4436
+#: fortran/intrinsic.c:4473
 #, gcc-internal-format
 msgid "In call to %qs at %L, type mismatch in argument %qs; pass %qs to %qs"
 msgstr ""
 
-#: fortran/intrinsic.c:4565
+#: fortran/intrinsic.c:4602
 #, gcc-internal-format
 msgid "resolve_intrinsic(): Too many args for intrinsic"
 msgstr ""
 
-#: fortran/intrinsic.c:4659
+#: fortran/intrinsic.c:4696
 #, gcc-internal-format
 msgid "do_simplify(): Too many args for intrinsic"
 msgstr ""
 
-#: fortran/intrinsic.c:4699
+#: fortran/intrinsic.c:4736
 #, gcc-internal-format
 msgid "init_arglist(): too many arguments"
 msgstr ""
 
-#: fortran/intrinsic.c:4851
+#: fortran/intrinsic.c:4888
 #, gcc-internal-format
 msgid "Invalid standard code on intrinsic %qs (%d)"
 msgstr ""
 
-#: fortran/intrinsic.c:4860
+#: fortran/intrinsic.c:4897
 #, gcc-internal-format
 msgid "Intrinsic %qs (%s) used at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:4932
+#: fortran/intrinsic.c:4969
 #, gcc-internal-format
 msgid "Function %qs as initialization expression at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:4950
+#: fortran/intrinsic.c:4987
 #, gcc-internal-format
 msgid ""
 "Transformational function %qs at %L is invalid in an initialization "
 "expression"
 msgstr ""
 
-#: fortran/intrinsic.c:5026
+#: fortran/intrinsic.c:5063
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Elemental function as initialization expression with non-integer/non-"
 "character arguments at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:5107
+#: fortran/intrinsic.c:5149
 #, gcc-internal-format
 msgid ""
 "Subroutine call to intrinsic %qs in DO CONCURRENT block at %L is not PURE"
 msgstr ""
 
-#: fortran/intrinsic.c:5114
+#: fortran/intrinsic.c:5156
 #, gcc-internal-format
 msgid "Subroutine call to intrinsic %qs at %L is not PURE"
 msgstr ""
 
-#: fortran/intrinsic.c:5216
+#: fortran/intrinsic.c:5258
 #, gcc-internal-format, gfc-internal-format
 msgid "Extension: Conversion from %s to %s at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:5237
+#: fortran/intrinsic.c:5279
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonstandard conversion from %s to %s at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:5252 fortran/intrinsic.c:5269
+#: fortran/intrinsic.c:5296 fortran/intrinsic.c:5313
 #, 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.c:5257 fortran/intrinsic.c:5277
+#: fortran/intrinsic.c:5301 fortran/intrinsic.c:5321
 #, gcc-internal-format, gfc-internal-format
 msgid "Conversion from %s to %s at %L"
 msgstr ""
@@ -65313,24 +67157,24 @@ msgstr ""
 #. Use of -fdec-char-conversions allows assignment of character data
 #. to non-character variables.  This not permited for nonconstant
 #. strings.
-#: fortran/intrinsic.c:5343 fortran/resolve.c:10850
+#: fortran/intrinsic.c:5387 fortran/resolve.c:10896
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot convert %s to %s at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:5348
+#: fortran/intrinsic.c:5392
 #, gcc-internal-format
 msgid "Cannot convert %qs to %qs at %L"
 msgstr ""
 
-#: fortran/intrinsic.c:5439
+#: fortran/intrinsic.c:5483
 #, 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.c:5445
+#: fortran/intrinsic.c:5489
 #, gcc-internal-format
 msgid ""
 "%qs declared at %L is also the name of an intrinsic.  It can only be called "
@@ -65775,7 +67619,7 @@ msgstr ""
 msgid "UNIT number in CLOSE statement at %L must be non-negative"
 msgstr ""
 
-#: fortran/io.c:2848 fortran/match.c:3099
+#: fortran/io.c:2848 fortran/match.c:3096
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement not allowed in PURE procedure at %C"
 msgstr ""
@@ -65876,7 +67720,7 @@ msgid ""
 "defined input/output procedure"
 msgstr ""
 
-#: fortran/io.c:3424 fortran/resolve.c:14998
+#: fortran/io.c:3424 fortran/resolve.c:15064
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs in namelist %qs at %L with ALLOCATABLE or POINTER "
@@ -65951,7 +67795,7 @@ msgid "BOZ literal constant at %L cannot appear in an output IO list"
 msgstr ""
 
 #. A general purpose syntax error.
-#: fortran/io.c:3729 fortran/io.c:4415 fortran/gfortran.h:3010
+#: fortran/io.c:3729 fortran/io.c:4415 fortran/gfortran.h:3067
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in %s statement at %C"
 msgstr ""
@@ -66076,7 +67920,7 @@ msgstr ""
 msgid "Integer too large at %C"
 msgstr ""
 
-#: fortran/match.c:577 fortran/parse.c:1182
+#: fortran/match.c:577 fortran/parse.c:1218
 #, gcc-internal-format, gfc-internal-format
 msgid "Too many digits in statement label at %C"
 msgstr ""
@@ -66165,652 +68009,652 @@ msgstr ""
 msgid "Assignment to a constant expression at %C"
 msgstr ""
 
-#: fortran/match.c:1472 fortran/match.c:1563
+#: fortran/match.c:1469 fortran/match.c:1560
 #, gcc-internal-format, gfc-internal-format
 msgid "Arithmetic IF statement at %C"
 msgstr ""
 
-#: fortran/match.c:1519
+#: fortran/match.c:1516
 #, gcc-internal-format
 msgid "Missing %<(%> in IF-expression at %C"
 msgstr ""
 
-#: fortran/match.c:1537
+#: fortran/match.c:1534
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in IF-expression at %C"
 msgstr ""
 
-#: fortran/match.c:1548
+#: fortran/match.c:1545
 #, gcc-internal-format, gfc-internal-format
 msgid "Block label not appropriate for arithmetic IF statement at %C"
 msgstr ""
 
-#: fortran/match.c:1586
+#: fortran/match.c:1583
 #, gcc-internal-format, gfc-internal-format
 msgid "Block label is not appropriate for IF statement at %C"
 msgstr ""
 
-#: fortran/match.c:1679 fortran/match.c:1686
+#: fortran/match.c:1676 fortran/match.c:1683
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in IF-clause after %C"
 msgstr ""
 
-#: fortran/match.c:1729
+#: fortran/match.c:1726
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid character(s) in ELSE statement after %C"
 msgstr ""
 
-#: fortran/match.c:1735
+#: fortran/match.c:1732
 #, gcc-internal-format
 msgid "Label %qs at %C doesn't match IF label %qs"
 msgstr ""
 
-#: fortran/match.c:1756
+#: fortran/match.c:1753
 #, gcc-internal-format
 msgid "Missing %<(%> in ELSE IF expression at %C"
 msgstr ""
 
-#: fortran/match.c:1766
+#: fortran/match.c:1763
 #, gcc-internal-format
 msgid "Missing %<)%> in ELSE IF expression at %C"
 msgstr ""
 
-#: fortran/match.c:1781
+#: fortran/match.c:1778
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing THEN in ELSE IF statement after %L"
 msgstr ""
 
-#: fortran/match.c:1789
+#: fortran/match.c:1786
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in ELSE IF statement after %L"
 msgstr ""
 
-#: fortran/match.c:1795
+#: fortran/match.c:1792
 #, gcc-internal-format
 msgid "Label %qs after %L doesn't match IF label %qs"
 msgstr ""
 
-#: fortran/match.c:1856
+#: fortran/match.c:1853
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement CRITICAL at %C in PURE procedure"
 msgstr ""
 
-#: fortran/match.c:1862
+#: fortran/match.c:1859
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement CRITICAL at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.c:1869
+#: fortran/match.c:1866
 #, gcc-internal-format, gfc-internal-format
 msgid "CRITICAL statement at %C"
 msgstr ""
 
-#: fortran/match.c:1881
+#: fortran/match.c:1878
 #, gcc-internal-format, gfc-internal-format
 msgid "Nested CRITICAL block at %C"
 msgstr ""
 
-#: fortran/match.c:1933
+#: fortran/match.c:1930
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected association list at %C"
 msgstr ""
 
-#: fortran/match.c:1945
+#: fortran/match.c:1942
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected association at %C"
 msgstr ""
 
-#: fortran/match.c:1955
+#: fortran/match.c:1952
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid association target at %C"
 msgstr ""
 
-#: fortran/match.c:1966
+#: fortran/match.c:1963
 #, gcc-internal-format
 msgid "Duplicate name %qs in association at %C"
 msgstr ""
 
-#: fortran/match.c:1974
+#: fortran/match.c:1971
 #, gcc-internal-format, gfc-internal-format
 msgid "Association target at %C must not be coindexed"
 msgstr ""
 
-#: fortran/match.c:1981
+#: fortran/match.c:1978
 #, gcc-internal-format, gfc-internal-format
 msgid "Association target at %L cannot be a BOZ literal constant"
 msgstr ""
 
-#: fortran/match.c:2000
+#: fortran/match.c:1997
 #, gcc-internal-format
 msgid "Expected %<)%> or %<,%> at %C"
 msgstr ""
 
-#: fortran/match.c:2018
+#: fortran/match.c:2015
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after ASSOCIATE statement at %C"
 msgstr ""
 
-#: fortran/match.c:2140
+#: fortran/match.c:2137
 #, gcc-internal-format
 msgid "Derived type %qs at %L may not be ABSTRACT"
 msgstr ""
 
-#: fortran/match.c:2212 fortran/match.c:2284 fortran/match.c:2307
+#: fortran/match.c:2209 fortran/match.c:2281 fortran/match.c:2304
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid type-spec at %C"
 msgstr ""
 
-#: fortran/match.c:2402
+#: fortran/match.c:2399
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in FORALL iterator at %C"
 msgstr ""
 
-#: fortran/match.c:2667
+#: fortran/match.c:2664
 #, gcc-internal-format, gfc-internal-format
 msgid "DO CONCURRENT construct at %C"
 msgstr ""
 
-#: fortran/match.c:2792
+#: fortran/match.c:2789
 #, gcc-internal-format
 msgid "Name %qs in %s statement at %C is unknown"
 msgstr ""
 
-#: fortran/match.c:2800
+#: fortran/match.c:2797
 #, gcc-internal-format
 msgid "Name %qs in %s statement at %C is not a construct name"
 msgstr ""
 
-#: fortran/match.c:2812
+#: fortran/match.c:2809
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C leaves CRITICAL construct"
 msgstr ""
 
 #. F2008, C821 & C845.
-#: fortran/match.c:2820
+#: fortran/match.c:2817
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C leaves DO CONCURRENT construct"
 msgstr ""
 
-#: fortran/match.c:2832
+#: fortran/match.c:2829
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C is not within a construct"
 msgstr ""
 
-#: fortran/match.c:2835
+#: fortran/match.c:2832
 #, gcc-internal-format
 msgid "%s statement at %C is not within construct %qs"
 msgstr ""
 
-#: fortran/match.c:2861
+#: fortran/match.c:2858
 #, gcc-internal-format
 msgid "CYCLE statement at %C is not applicable to non-loop construct %qs"
 msgstr ""
 
-#: fortran/match.c:2866
+#: fortran/match.c:2863
 #, gcc-internal-format, gfc-internal-format
 msgid "EXIT statement with no do-construct-name at %C"
 msgstr ""
 
-#: fortran/match.c:2872
+#: fortran/match.c:2869
 #, gcc-internal-format
 msgid "%s statement at %C is not applicable to construct %qs"
 msgstr ""
 
-#: fortran/match.c:2880
+#: fortran/match.c:2877
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C leaving OpenACC structured block"
 msgstr ""
 
-#: fortran/match.c:2881
+#: fortran/match.c:2878
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C leaving OpenMP structured block"
 msgstr ""
 
-#: fortran/match.c:2918
+#: fortran/match.c:2915
 #, gcc-internal-format, gfc-internal-format
 msgid "EXIT statement at %C terminating !$ACC LOOP loop"
 msgstr ""
 
-#: fortran/match.c:2924
+#: fortran/match.c:2921
 #, gcc-internal-format, gfc-internal-format
 msgid "CYCLE statement at %C to non-innermost tiled !$ACC LOOP loop"
 msgstr ""
 
-#: fortran/match.c:2926
+#: fortran/match.c:2923
 #, gcc-internal-format, gfc-internal-format
 msgid "CYCLE statement at %C to non-innermost collapsed !$ACC LOOP loop"
 msgstr ""
 
-#: fortran/match.c:2955
+#: fortran/match.c:2952
 #, gcc-internal-format, gfc-internal-format
 msgid "EXIT statement at %C terminating !$OMP DO loop"
 msgstr ""
 
-#: fortran/match.c:2960
+#: fortran/match.c:2957
 #, gcc-internal-format, gfc-internal-format
 msgid "CYCLE statement at %C to non-innermost collapsed !$OMP DO loop"
 msgstr ""
 
-#: fortran/match.c:3048
+#: fortran/match.c:3045
 #, gcc-internal-format, gfc-internal-format
 msgid "Blank required in %s statement near %C"
 msgstr ""
 
-#: fortran/match.c:3066
+#: fortran/match.c:3063
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %C cannot be negative"
 msgstr ""
 
-#: fortran/match.c:3072
+#: fortran/match.c:3069
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %C contains too many digits"
 msgstr ""
 
-#: fortran/match.c:3093
+#: fortran/match.c:3090
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C in PURE procedure"
 msgstr ""
 
-#: fortran/match.c:3109
+#: fortran/match.c:3106
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement STOP at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.c:3114
+#: fortran/match.c:3111
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement STOP at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.c:3126
+#: fortran/match.c:3123
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "STOP code at %L must be a scalar CHARACTER constant or "
 "digit[digit[digit[digit[digit]]]]"
 msgstr ""
 
-#: fortran/match.c:3138
+#: fortran/match.c:3135
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "STOP code at %L must be a scalar default CHARACTER or INTEGER constant "
 "expression"
 msgstr ""
 
-#: fortran/match.c:3145
+#: fortran/match.c:3142
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be either INTEGER or CHARACTER type"
 msgstr ""
 
-#: fortran/match.c:3152
+#: fortran/match.c:3149
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be scalar"
 msgstr ""
 
-#: fortran/match.c:3159
+#: fortran/match.c:3156
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be default character KIND=%d"
 msgstr ""
 
-#: fortran/match.c:3166
+#: fortran/match.c:3163
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be default integer KIND=%d"
 msgstr ""
 
-#: fortran/match.c:3214
+#: fortran/match.c:3211
 #, gcc-internal-format, gfc-internal-format
 msgid "PAUSE statement at %C"
 msgstr ""
 
-#: fortran/match.c:3235
+#: fortran/match.c:3232
 #, gcc-internal-format, gfc-internal-format
 msgid "ERROR STOP statement at %C"
 msgstr ""
 
-#: fortran/match.c:3261
+#: fortran/match.c:3258
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement EVENT %s at %C in PURE procedure"
 msgstr ""
 
-#: fortran/match.c:3276
+#: fortran/match.c:3273
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement EVENT %s at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.c:3283
+#: fortran/match.c:3280
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement EVENT %s at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.c:3313 fortran/match.c:3655 fortran/match.c:3867
-#: fortran/match.c:4419 fortran/match.c:4790
+#: fortran/match.c:3310 fortran/match.c:3652 fortran/match.c:3864
+#: fortran/match.c:4416 fortran/match.c:4787
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant STAT tag found at %L"
 msgstr ""
 
-#: fortran/match.c:3334 fortran/match.c:3676 fortran/match.c:3887
-#: fortran/match.c:4451 fortran/match.c:4815
+#: fortran/match.c:3331 fortran/match.c:3673 fortran/match.c:3884
+#: fortran/match.c:4448 fortran/match.c:4812
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant ERRMSG tag found at %L"
 msgstr ""
 
-#: fortran/match.c:3355
+#: fortran/match.c:3352
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant UNTIL_COUNT tag found at %L"
 msgstr ""
 
-#: fortran/match.c:3421
+#: fortran/match.c:3418
 #, gcc-internal-format, gfc-internal-format
 msgid "EVENT POST statement at %C"
 msgstr ""
 
-#: fortran/match.c:3431
+#: fortran/match.c:3428
 #, gcc-internal-format, gfc-internal-format
 msgid "EVENT WAIT statement at %C"
 msgstr ""
 
-#: fortran/match.c:3443
+#: fortran/match.c:3440
 #, gcc-internal-format, gfc-internal-format
 msgid "FAIL IMAGE statement at %C"
 msgstr ""
 
-#: fortran/match.c:3467
+#: fortran/match.c:3464
 #, gcc-internal-format, gfc-internal-format
 msgid "FORM TEAM statement at %C"
 msgstr ""
 
-#: fortran/match.c:3506
+#: fortran/match.c:3503
 #, gcc-internal-format, gfc-internal-format
 msgid "CHANGE TEAM statement at %C"
 msgstr ""
 
-#: fortran/match.c:3536
+#: fortran/match.c:3533
 #, gcc-internal-format, gfc-internal-format
 msgid "END TEAM statement at %C"
 msgstr ""
 
-#: fortran/match.c:3560
+#: fortran/match.c:3557
 #, gcc-internal-format, gfc-internal-format
 msgid "SYNC TEAM statement at %C"
 msgstr ""
 
-#: fortran/match.c:3603
+#: fortran/match.c:3600
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement %s at %C in PURE procedure"
 msgstr ""
 
-#: fortran/match.c:3618
+#: fortran/match.c:3615
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement %s at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.c:3625
+#: fortran/match.c:3622
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement %s at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.c:3697
+#: fortran/match.c:3694
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant ACQUIRED_LOCK tag found at %L"
 msgstr ""
 
-#: fortran/match.c:3762
+#: fortran/match.c:3759
 #, gcc-internal-format, gfc-internal-format
 msgid "LOCK statement at %C"
 msgstr ""
 
-#: fortran/match.c:3772
+#: fortran/match.c:3769
 #, gcc-internal-format, gfc-internal-format
 msgid "UNLOCK statement at %C"
 msgstr ""
 
-#: fortran/match.c:3797
+#: fortran/match.c:3794
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement SYNC at %C in PURE procedure"
 msgstr ""
 
-#: fortran/match.c:3803
+#: fortran/match.c:3800
 #, gcc-internal-format, gfc-internal-format
 msgid "SYNC statement at %C"
 msgstr ""
 
-#: fortran/match.c:3815
+#: fortran/match.c:3812
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement SYNC at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.c:3821
+#: fortran/match.c:3818
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement SYNC at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.c:4001
+#: fortran/match.c:3998
 #, gcc-internal-format, gfc-internal-format
 msgid "ASSIGN statement at %C"
 msgstr ""
 
-#: fortran/match.c:4045
+#: fortran/match.c:4042
 #, gcc-internal-format, gfc-internal-format
 msgid "Assigned GOTO statement at %C"
 msgstr ""
 
-#: fortran/match.c:4089 fortran/match.c:4140
+#: fortran/match.c:4086 fortran/match.c:4137
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement label list in GOTO at %C cannot be empty"
 msgstr ""
 
-#: fortran/match.c:4150
+#: fortran/match.c:4147
 #, gcc-internal-format, gfc-internal-format
 msgid "Computed GOTO at %C"
 msgstr ""
 
-#: fortran/match.c:4225
+#: fortran/match.c:4222
 #, gcc-internal-format, gfc-internal-format
 msgid "Error in type-spec at %L"
 msgstr ""
 
-#: fortran/match.c:4238
+#: fortran/match.c:4235
 #, gcc-internal-format, gfc-internal-format
 msgid "typespec in ALLOCATE at %L"
 msgstr ""
 
-#: fortran/match.c:4261
+#: fortran/match.c:4258
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The type parameter spec list in the type-spec at %L cannot contain DEFERRED "
 "parameters"
 msgstr ""
 
-#: fortran/match.c:4291 fortran/match.c:4728
+#: fortran/match.c:4288 fortran/match.c:4725
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected constant at %C"
 msgstr ""
 
-#: fortran/match.c:4301
+#: fortran/match.c:4298
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad allocate-object at %C for a PURE procedure"
 msgstr ""
 
-#: fortran/match.c:4316
+#: fortran/match.c:4313
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible allocate-object at %C for CHARACTER type-spec at %L"
 msgstr ""
 
-#: fortran/match.c:4338
+#: fortran/match.c:4335
 #, gcc-internal-format, gfc-internal-format
 msgid "ALLOCATE of coarray at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.c:4343
+#: fortran/match.c:4340
 #, gcc-internal-format, gfc-internal-format
 msgid "ALLOCATE of coarray at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.c:4365
+#: fortran/match.c:4362
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocate-object at %L is neither a data pointer nor an allocatable variable"
 msgstr ""
 
-#: fortran/match.c:4377
+#: fortran/match.c:4374
 #, gcc-internal-format, gfc-internal-format
 msgid "Type of entity at %L is type incompatible with typespec"
 msgstr ""
 
-#: fortran/match.c:4385
+#: fortran/match.c:4382
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Kind type parameter for entity at %L differs from the kind type parameter of "
 "the typespec"
 msgstr ""
 
-#: fortran/match.c:4402
+#: fortran/match.c:4399
 #, gcc-internal-format, gfc-internal-format
 msgid "Shape specification for allocatable scalar at %C"
 msgstr ""
 
-#: fortran/match.c:4429
+#: fortran/match.c:4426
 #, gcc-internal-format, gfc-internal-format
 msgid "STAT tag at %L cannot be a constant"
 msgstr ""
 
-#: fortran/match.c:4445
+#: fortran/match.c:4442
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG tag at %L"
 msgstr ""
 
-#: fortran/match.c:4468
+#: fortran/match.c:4465
 #, gcc-internal-format, gfc-internal-format
 msgid "SOURCE tag at %L"
 msgstr ""
 
-#: fortran/match.c:4474
+#: fortran/match.c:4471
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant SOURCE tag found at %L"
 msgstr ""
 
-#: fortran/match.c:4481
+#: fortran/match.c:4478
 #, gcc-internal-format, gfc-internal-format
 msgid "SOURCE tag at %L conflicts with the typespec at %L"
 msgstr ""
 
-#: fortran/match.c:4487
+#: fortran/match.c:4484
 #, gcc-internal-format, gfc-internal-format
 msgid "SOURCE tag at %L with more than a single allocate object"
 msgstr ""
 
-#: fortran/match.c:4505
+#: fortran/match.c:4502
 #, gcc-internal-format, gfc-internal-format
 msgid "MOLD tag at %L"
 msgstr ""
 
-#: fortran/match.c:4511
+#: fortran/match.c:4508
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant MOLD tag found at %L"
 msgstr ""
 
-#: fortran/match.c:4518
+#: fortran/match.c:4515
 #, gcc-internal-format, gfc-internal-format
 msgid "MOLD tag at %L conflicts with the typespec at %L"
 msgstr ""
 
-#: fortran/match.c:4544
+#: fortran/match.c:4541
 #, gcc-internal-format, gfc-internal-format
 msgid "MOLD tag at %L conflicts with SOURCE tag at %L"
 msgstr ""
 
-#: fortran/match.c:4552
+#: fortran/match.c:4549
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocate-object at %L with a deferred type parameter requires either a type-"
 "spec or SOURCE tag or a MOLD tag"
 msgstr ""
 
-#: fortran/match.c:4564
+#: fortran/match.c:4561
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Unlimited polymorphic allocate-object at %L requires either a type-spec or "
 "SOURCE tag or a MOLD tag"
 msgstr ""
 
-#: fortran/match.c:4631
+#: fortran/match.c:4628
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer object at %C shall not be coindexed"
 msgstr ""
 
-#: fortran/match.c:4646
+#: fortran/match.c:4643
 #, gcc-internal-format, gfc-internal-format
 msgid "NULLIFY does not allow bounds remapping for pointer object at %C"
 msgstr ""
 
-#: fortran/match.c:4740
+#: fortran/match.c:4737
 #, gcc-internal-format, gfc-internal-format
 msgid "Illegal allocate-object at %C for a PURE procedure"
 msgstr ""
 
-#: fortran/match.c:4750
+#: fortran/match.c:4747
 #, gcc-internal-format, gfc-internal-format
 msgid "DEALLOCATE of coarray at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.c:4757
+#: fortran/match.c:4754
 #, gcc-internal-format, gfc-internal-format
 msgid "DEALLOCATE of coarray at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.c:4773
+#: fortran/match.c:4770
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocate-object at %C is not a nonprocedure pointer nor an allocatable "
 "variable"
 msgstr ""
 
-#: fortran/match.c:4810
+#: fortran/match.c:4807
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG at %L"
 msgstr ""
 
-#: fortran/match.c:4867
+#: fortran/match.c:4864
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement RETURN at %C in CRITICAL block"
 msgstr ""
 
-#: fortran/match.c:4873
+#: fortran/match.c:4870
 #, gcc-internal-format, gfc-internal-format
 msgid "Image control statement RETURN at %C in DO CONCURRENT block"
 msgstr ""
 
-#: fortran/match.c:4882
+#: fortran/match.c:4879
 #, gcc-internal-format, gfc-internal-format
 msgid "Alternate RETURN statement at %C is only allowed within a SUBROUTINE"
 msgstr ""
 
-#: fortran/match.c:4913
+#: fortran/match.c:4910
 #, gcc-internal-format, gfc-internal-format
 msgid "RETURN statement in main program at %C"
 msgstr ""
 
-#: fortran/match.c:4941
+#: fortran/match.c:4938
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected component reference at %C"
 msgstr ""
 
-#: fortran/match.c:4950
+#: fortran/match.c:4947
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after CALL at %C"
 msgstr ""
 
-#: fortran/match.c:4961
+#: fortran/match.c:4958
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected type-bound procedure or procedure pointer component at %C"
 msgstr ""
 
-#: fortran/match.c:5052
+#: fortran/match.c:5049
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "A BOZ literal constant at %L cannot appear as an actual argument in a "
 "subroutine reference"
 msgstr ""
 
-#: fortran/match.c:5192
+#: fortran/match.c:5190
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in common block name at %C"
 msgstr ""
@@ -66818,233 +68662,233 @@ msgstr ""
 #. If we find an error, just print it and continue,
 #. cause it's just semantic, and we can see if there
 #. are more errors.
-#: fortran/match.c:5267
+#: fortran/match.c:5265
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L in common block %qs at %C must be declared with a C "
 "interoperable kind since common block %qs is bind(c)"
 msgstr ""
 
-#: fortran/match.c:5276
+#: fortran/match.c:5274
 #, gcc-internal-format
 msgid ""
 "Variable %qs in common block %qs at %C cannot be bind(c) since it is not "
 "global"
 msgstr ""
 
-#: fortran/match.c:5283
+#: fortran/match.c:5281
 #, gcc-internal-format
 msgid "Symbol %qs at %C is already in a COMMON block"
 msgstr ""
 
-#: fortran/match.c:5291
+#: fortran/match.c:5289
 #, gcc-internal-format
 msgid "Initialized symbol %qs at %C can only be COMMON in BLOCK DATA"
 msgstr ""
 
-#: fortran/match.c:5307
+#: fortran/match.c:5305
 #, gcc-internal-format
 msgid "Array specification for symbol %qs in COMMON at %C must be explicit"
 msgstr ""
 
-#: fortran/match.c:5317
+#: fortran/match.c:5315
 #, gcc-internal-format
 msgid "Symbol %qs in COMMON at %C cannot be a POINTER array"
 msgstr ""
 
-#: fortran/match.c:5363
+#: fortran/match.c:5361
 #, gcc-internal-format
 msgid ""
 "Symbol %qs, in COMMON block %qs at %C is being indirectly equivalenced to "
 "another COMMON block %qs"
 msgstr ""
 
-#: fortran/match.c:5425
+#: fortran/match.c:5423
 #, gcc-internal-format, gfc-internal-format
 msgid "BLOCK DATA construct at %L"
 msgstr ""
 
-#: fortran/match.c:5509
+#: fortran/match.c:5507
 #, gcc-internal-format
 msgid "Namelist group name %qs at %C already has a basic type of %s"
 msgstr ""
 
-#: fortran/match.c:5517
+#: fortran/match.c:5515
 #, gcc-internal-format
 msgid ""
 "Namelist group name %qs at %C already is USE associated and cannot be "
 "respecified."
 msgstr ""
 
-#: fortran/match.c:5543
+#: fortran/match.c:5541
 #, gcc-internal-format
 msgid "Assumed size array %qs in namelist %qs at %C is not allowed"
 msgstr ""
 
-#: fortran/match.c:5686
+#: fortran/match.c:5684
 #, gcc-internal-format, gfc-internal-format
 msgid "Derived type component %C is not a permitted EQUIVALENCE member"
 msgstr ""
 
-#: fortran/match.c:5694
+#: fortran/match.c:5692
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference in EQUIVALENCE at %C cannot be an array section"
 msgstr ""
 
-#: fortran/match.c:5727
+#: fortran/match.c:5725
 #, gcc-internal-format, gfc-internal-format
 msgid "EQUIVALENCE at %C requires two or more objects"
 msgstr ""
 
-#: fortran/match.c:5741
+#: fortran/match.c:5739
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Attempt to indirectly overlap COMMON blocks %s and %s by EQUIVALENCE at %C"
 msgstr ""
 
-#: fortran/match.c:5754
+#: fortran/match.c:5752
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting a comma in EQUIVALENCE at %C"
 msgstr ""
 
-#: fortran/match.c:5759
+#: fortran/match.c:5757
 #, gcc-internal-format, gfc-internal-format
 msgid "EQUIVALENCE statement at %C"
 msgstr ""
 
-#: fortran/match.c:5895
+#: fortran/match.c:5893
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement function at %L is recursive"
 msgstr ""
 
-#: fortran/match.c:5901
+#: fortran/match.c:5899
 #, gcc-internal-format
 msgid "Statement function %qs at %L conflicts with function name"
 msgstr ""
 
-#: fortran/match.c:5912
+#: fortran/match.c:5910
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement function at %L cannot appear within an INTERFACE"
 msgstr ""
 
-#: fortran/match.c:5917
+#: fortran/match.c:5915
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement function at %C"
 msgstr ""
 
-#: fortran/match.c:6042 fortran/match.c:6058
+#: fortran/match.c:6040 fortran/match.c:6056
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE selector at %L cannot be %s"
 msgstr ""
 
-#: fortran/match.c:6080
+#: fortran/match.c:6078
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected initialization expression in CASE at %C"
 msgstr ""
 
-#: fortran/match.c:6112
+#: fortran/match.c:6110
 #, gcc-internal-format
 msgid "Expected block name %qs of SELECT construct at %C"
 msgstr ""
 
-#: fortran/match.c:6406
+#: fortran/match.c:6404
 #, gcc-internal-format, gfc-internal-format
 msgid "SELECT TYPE at %C cannot appear in this scope"
 msgstr ""
 
-#: fortran/match.c:6447
+#: fortran/match.c:6445
 #, gcc-internal-format, gfc-internal-format
 msgid "parse error in SELECT TYPE statement at %C"
 msgstr ""
 
-#: fortran/match.c:6472
+#: fortran/match.c:6470
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Selector in SELECT TYPE at %C is not a named variable; use associate-name=>"
 msgstr ""
 
-#: fortran/match.c:6628
+#: fortran/match.c:6626
 #, gcc-internal-format, gfc-internal-format
 msgid "SELECT RANK statement at %C"
 msgstr ""
 
-#: fortran/match.c:6657 fortran/match.c:6711
+#: fortran/match.c:6655 fortran/match.c:6709
 #, gcc-internal-format, gfc-internal-format
 msgid "The SELECT RANK selector at %C must be an assumed rank variable"
 msgstr ""
 
-#: fortran/match.c:6721
+#: fortran/match.c:6719
 #, gcc-internal-format, gfc-internal-format
 msgid "parse error in SELECT RANK statement at %C"
 msgstr ""
 
-#: fortran/match.c:6757
+#: fortran/match.c:6755
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected CASE statement at %C"
 msgstr ""
 
-#: fortran/match.c:6809
+#: fortran/match.c:6807
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in CASE specification at %C"
 msgstr ""
 
-#: fortran/match.c:6827
+#: fortran/match.c:6825
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected TYPE IS statement at %C"
 msgstr ""
 
-#: fortran/match.c:6859
+#: fortran/match.c:6857
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The type-spec shall not specify a sequence derived type or a type with the "
 "BIND attribute in SELECT TYPE at %C [F2003:C815]"
 msgstr ""
 
-#: fortran/match.c:6870
+#: fortran/match.c:6868
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "All the LEN type parameters in the TYPE IS statement at %C must be ASSUMED"
 msgstr ""
 
-#: fortran/match.c:6881
+#: fortran/match.c:6879
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in TYPE IS specification at %C"
 msgstr ""
 
-#: fortran/match.c:6957
+#: fortran/match.c:6955
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in CLASS IS specification at %C"
 msgstr ""
 
-#: fortran/match.c:6977
+#: fortran/match.c:6975
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected RANK statement at %C"
 msgstr ""
 
-#: fortran/match.c:7023
+#: fortran/match.c:7021
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The SELECT RANK CASE expression at %C must be a scalar, integer constant"
 msgstr ""
 
-#: fortran/match.c:7032
+#: fortran/match.c:7030
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The value of the SELECT RANK CASE expression at %C must not be less than "
 "zero or greater than %d"
 msgstr ""
 
-#: fortran/match.c:7059
+#: fortran/match.c:7057
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in RANK specification at %C"
 msgstr ""
 
-#: fortran/match.c:7181
+#: fortran/match.c:7179
 #, gcc-internal-format, gfc-internal-format
 msgid "ELSEWHERE statement at %C not enclosed in WHERE block"
 msgstr ""
 
-#: fortran/match.c:7219
+#: fortran/match.c:7217
 #, gcc-internal-format
 msgid "Label %qs at %C doesn't match WHERE label %qs"
 msgstr ""
@@ -67092,7 +68936,7 @@ msgstr ""
 msgid "gfc_typename(): Undefined type"
 msgstr ""
 
-#: fortran/misc.c:287
+#: fortran/misc.c:309
 #, gcc-internal-format
 msgid "gfc_code2string(): Bad code"
 msgstr ""
@@ -67184,229 +69028,229 @@ msgstr ""
 msgid "Module %qs at line %d column %d: %s"
 msgstr ""
 
-#: fortran/module.c:1602
+#: fortran/module.c:1642
 #, gcc-internal-format
 msgid "require_atom(): bad atom type required"
 msgstr ""
 
-#: fortran/module.c:1651
+#: fortran/module.c:1691
 #, gcc-internal-format, gfc-internal-format
 msgid "Error writing modules file: %s"
 msgstr ""
 
-#: fortran/module.c:1701
+#: fortran/module.c:1741
 #, gcc-internal-format
 msgid "write_atom(): Trying to write dab atom"
 msgstr ""
 
-#: fortran/module.c:1922
+#: fortran/module.c:1962
 #, gcc-internal-format
 msgid "unquote_string(): got bad string"
 msgstr ""
 
-#: fortran/module.c:2814
+#: fortran/module.c:2952
 #, gcc-internal-format
 msgid "mio_array_ref(): Unknown array ref"
 msgstr ""
 
-#: fortran/module.c:4945
+#: fortran/module.c:5087
 #, gcc-internal-format, gfc-internal-format
 msgid "Ambiguous !$OMP DECLARE REDUCTION from module %s at %L"
 msgstr ""
 
-#: fortran/module.c:4948
+#: fortran/module.c:5090
 #, gcc-internal-format, gfc-internal-format
 msgid "Previous !$OMP DECLARE REDUCTION from module %s at %L"
 msgstr ""
 
-#: fortran/module.c:5142
+#: fortran/module.c:5284
 #, gcc-internal-format
 msgid ""
 "%qs of module %qs, imported at %C, is also the name of the current program "
 "unit"
 msgstr ""
 
-#: fortran/module.c:5279
+#: fortran/module.c:5421
 #, gcc-internal-format
 msgid ""
 "Mismatch in components of derived type %qs from %qs at %C: expecting %qs, "
 "but got %qs"
 msgstr ""
 
-#: fortran/module.c:5500
+#: fortran/module.c:5642
 #, gcc-internal-format
 msgid "Symbol %qs referenced at %L not found in module %qs"
 msgstr ""
 
-#: fortran/module.c:5507
+#: fortran/module.c:5649
 #, gcc-internal-format
 msgid "User operator %qs referenced at %L not found in module %qs"
 msgstr ""
 
-#: fortran/module.c:5512
+#: fortran/module.c:5654
 #, gcc-internal-format
 msgid "Intrinsic operator %qs referenced at %L not found in module %qs"
 msgstr ""
 
-#: fortran/module.c:5747
+#: fortran/module.c:5890
 #, gcc-internal-format
 msgid "write_symbol(): bad module symbol %qs"
 msgstr ""
 
-#: fortran/module.c:6080
+#: fortran/module.c:6223
 #, gcc-internal-format
 msgid "write_symtree(): Symbol not written"
 msgstr ""
 
-#: fortran/module.c:6270
+#: fortran/module.c:6413
 #, gcc-internal-format
 msgid "Cannot open module file %qs for writing at %C: %s"
 msgstr ""
 
-#: fortran/module.c:6291
+#: fortran/module.c:6434
 #, gcc-internal-format
 msgid "Error writing module file %qs for writing: %s"
 msgstr ""
 
-#: fortran/module.c:6302
+#: fortran/module.c:6445
 #, gcc-internal-format
 msgid "Cannot delete module file %qs: %s"
 msgstr ""
 
-#: fortran/module.c:6305
+#: fortran/module.c:6448
 #, gcc-internal-format
 msgid "Cannot rename module file %qs to %qs: %s"
 msgstr ""
 
-#: fortran/module.c:6311
+#: fortran/module.c:6454
 #, gcc-internal-format
 msgid "Cannot delete temporary module file %qs: %s"
 msgstr ""
 
-#: fortran/module.c:6368
+#: fortran/module.c:6511
 #, gcc-internal-format
 msgid "Symbol %qs at %C already declared"
 msgstr ""
 
-#: fortran/module.c:6439
+#: fortran/module.c:6582
 #, gcc-internal-format, gfc-internal-format
 msgid "import_iso_c_binding_module(): Unable to create symbol for %s"
 msgstr ""
 
-#: fortran/module.c:6547 fortran/module.c:6891
+#: fortran/module.c:6690 fortran/module.c:7034
 #, gcc-internal-format
 msgid "The symbol %qs, referenced at %L, is not in the selected standard"
 msgstr ""
 
-#: fortran/module.c:6675
+#: fortran/module.c:6818
 #, gcc-internal-format
 msgid "Symbol %qs referenced at %L not found in intrinsic module ISO_C_BINDING"
 msgstr ""
 
-#: fortran/module.c:6696 fortran/module.c:6729 fortran/module.c:6771
+#: fortran/module.c:6839 fortran/module.c:6872 fortran/module.c:6914
 #, gcc-internal-format
 msgid "Symbol %qs already declared"
 msgstr ""
 
-#: fortran/module.c:6876
+#: fortran/module.c:7019
 #, gcc-internal-format
 msgid ""
 "Use of intrinsic module %qs at %C conflicts with non-intrinsic module name "
 "used previously"
 msgstr ""
 
-#: fortran/module.c:6898
+#: fortran/module.c:7041
 #, gcc-internal-format
 msgid ""
 "Use of the NUMERIC_STORAGE_SIZE named constant from intrinsic module "
 "ISO_FORTRAN_ENV at %L is incompatible with option %qs"
 msgstr ""
 
-#: fortran/module.c:6966
+#: fortran/module.c:7109
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Use of the NUMERIC_STORAGE_SIZE named constant from intrinsic module "
 "ISO_FORTRAN_ENV at %C is incompatible with option %s"
 msgstr ""
 
-#: fortran/module.c:7020
+#: fortran/module.c:7163
 #, gcc-internal-format
 msgid ""
 "Symbol %qs referenced at %L not found in intrinsic module ISO_FORTRAN_ENV"
 msgstr ""
 
-#: fortran/module.c:7046
+#: fortran/module.c:7189
 #, gcc-internal-format, gfc-internal-format
 msgid "USE statement at %C has no ONLY qualifier"
 msgstr ""
 
-#: fortran/module.c:7075
+#: fortran/module.c:7218
 #, gcc-internal-format, gfc-internal-format
 msgid "ISO_FORTRAN_ENV intrinsic module at %C"
 msgstr ""
 
-#: fortran/module.c:7087
+#: fortran/module.c:7230
 #, gcc-internal-format, gfc-internal-format
 msgid "ISO_C_BINDING module at %C"
 msgstr ""
 
-#: fortran/module.c:7100
+#: fortran/module.c:7243
 #, gcc-internal-format
 msgid "Cannot find an intrinsic module named %qs at %C"
 msgstr ""
 
-#: fortran/module.c:7106
+#: fortran/module.c:7249
 #, gcc-internal-format, gfc-internal-format
 msgid "IEEE_FEATURES module at %C"
 msgstr ""
 
-#: fortran/module.c:7112
+#: fortran/module.c:7255
 #, gcc-internal-format, gfc-internal-format
 msgid "IEEE_EXCEPTIONS module at %C"
 msgstr ""
 
-#: fortran/module.c:7118
+#: fortran/module.c:7261
 #, gcc-internal-format, gfc-internal-format
 msgid "IEEE_ARITHMETIC module at %C"
 msgstr ""
 
-#: fortran/module.c:7128
+#: fortran/module.c:7271
 #, gcc-internal-format
 msgid "Cannot open module file %qs for reading at %C: %s"
 msgstr ""
 
-#: fortran/module.c:7131
+#: fortran/module.c:7274
 #, gcc-internal-format
 msgid ""
 "Module file %qs has not been generated, either because the module does not "
 "contain a MODULE PROCEDURE or there is an error in the module."
 msgstr ""
 
-#: fortran/module.c:7142
+#: fortran/module.c:7285
 #, gcc-internal-format
 msgid ""
 "Use of non-intrinsic module %qs at %C conflicts with intrinsic module name "
 "used previously"
 msgstr ""
 
-#: fortran/module.c:7165
+#: fortran/module.c:7308
 #, gcc-internal-format
 msgid "File %qs opened at %C is not a GNU Fortran module file"
 msgstr ""
 
-#: fortran/module.c:7173
+#: fortran/module.c:7316
 #, gcc-internal-format
 msgid ""
 "Cannot read module file %qs opened at %C, because it was created by a "
 "different version of GNU Fortran"
 msgstr ""
 
-#: fortran/module.c:7190
+#: fortran/module.c:7333
 #, gcc-internal-format
 msgid "Cannot USE a submodule that is currently built"
 msgstr ""
 
-#: fortran/module.c:7192
+#: fortran/module.c:7335
 #, gcc-internal-format
 msgid "Cannot USE a module that is currently built"
 msgstr ""
@@ -67416,1019 +69260,1269 @@ msgstr ""
 msgid "Unexpected junk at %C"
 msgstr ""
 
-#: fortran/openmp.c:279
+#: fortran/openmp.c:280
 #, gcc-internal-format, gfc-internal-format
 msgid "List item shall not be coindexed at %C"
 msgstr ""
 
-#: fortran/openmp.c:314 fortran/openmp.c:415 fortran/openmp.c:710
-#: fortran/openmp.c:3348
+#: fortran/openmp.c:315 fortran/openmp.c:416 fortran/openmp.c:744
+#: fortran/openmp.c:3632
 #, gcc-internal-format, gfc-internal-format
 msgid "COMMON block /%s/ not found at %C"
 msgstr ""
 
-#: fortran/openmp.c:353 fortran/openmp.c:443
+#: fortran/openmp.c:354 fortran/openmp.c:444
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in OpenMP variable list at %C"
 msgstr ""
 
-#: fortran/openmp.c:517
+#: fortran/openmp.c:467
+#, gcc-internal-format
+msgid "%qs at %L should be of type integer(kind=omp_event_handle_kind)"
+msgstr ""
+
+#: fortran/openmp.c:479
+#, gcc-internal-format, gfc-internal-format
+msgid "Syntax error in OpenMP detach clause at %C"
+msgstr ""
+
+#: fortran/openmp.c:551
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in OpenMP DEPEND SINK list at %C"
 msgstr ""
 
-#: fortran/openmp.c:579
+#: fortran/openmp.c:613
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in OpenACC expression list at %C"
 msgstr ""
 
-#: fortran/openmp.c:646
+#: fortran/openmp.c:680
 #, gcc-internal-format
 msgid "Unexpected OpenACC parallelism."
 msgstr ""
 
-#: fortran/openmp.c:678
+#: fortran/openmp.c:712
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable at %C is an element of a COMMON block"
 msgstr ""
 
-#: fortran/openmp.c:738
+#: fortran/openmp.c:772
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$ACC DECLARE at %C"
 msgstr ""
 
-#: fortran/openmp.c:748
+#: fortran/openmp.c:782
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$ACC DECLARE list at %C"
 msgstr ""
 
-#: fortran/openmp.c:1068
+#: fortran/openmp.c:1026
+#, gcc-internal-format, gfc-internal-format
+msgid "Comma expected at %C"
+msgstr ""
+
+#: fortran/openmp.c:1138
+#, gcc-internal-format, gfc-internal-format
+msgid "!$OMP DECLARE REDUCTION %s not found at %L"
+msgstr ""
+
+#: fortran/openmp.c:1291
 #, gcc-internal-format, gfc-internal-format
 msgid "COLLAPSE clause argument not constant positive integer at %C"
 msgstr ""
 
-#: fortran/openmp.c:1553
+#: fortran/openmp.c:1455
 #, gcc-internal-format, gfc-internal-format
-msgid "ORDERED clause argument not constant positive integer at %C"
+msgid "Expected HOST, NOHOST or ANY at %C"
 msgstr ""
 
-#: fortran/openmp.c:1738
+#: fortran/openmp.c:1830
 #, gcc-internal-format, gfc-internal-format
-msgid "!$OMP DECLARE REDUCTION %s not found at %L"
+msgid "ORDERED clause argument not constant positive integer at %C"
 msgstr ""
 
-#: fortran/openmp.c:1990
+#: fortran/openmp.c:2219
 #, gcc-internal-format, gfc-internal-format
 msgid "Failed to match clause at %C"
 msgstr ""
 
-#: fortran/openmp.c:2163
+#: fortran/openmp.c:2392
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid clause in module with !$ACC DECLARE at %L"
 msgstr ""
 
-#: fortran/openmp.c:2173
+#: fortran/openmp.c:2402
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable is USE-associated with !$ACC DECLARE at %L"
 msgstr ""
 
-#: fortran/openmp.c:2182
+#: fortran/openmp.c:2411
 #, gcc-internal-format
 msgid ""
 "Variable %qs shall be declared in the same scoping unit as !$ACC DECLARE at "
 "%L"
 msgstr ""
 
-#: fortran/openmp.c:2190
+#: fortran/openmp.c:2419
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-size dummy array with !$ACC DECLARE at %L"
 msgstr ""
 
-#: fortran/openmp.c:2239
+#: fortran/openmp.c:2468
 #, gcc-internal-format
 msgid ""
 "%<acc update%> must contain at least one %<device%> or %<host%> or %<self%> "
 "clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:2287
+#: fortran/openmp.c:2516
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid argument to !$ACC WAIT at %C"
 msgstr ""
 
-#: fortran/openmp.c:2294
+#: fortran/openmp.c:2523
 #, gcc-internal-format, gfc-internal-format
 msgid "WAIT clause at %L requires a scalar INTEGER expression"
 msgstr ""
 
-#: fortran/openmp.c:2327
+#: fortran/openmp.c:2556
 #, gcc-internal-format, gfc-internal-format
 msgid "ACC CACHE directive must be inside of loop %C"
 msgstr ""
 
-#: fortran/openmp.c:2395
+#: fortran/openmp.c:2624
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Only the !$ACC ROUTINE form without list is allowed in interface block at %C"
 msgstr ""
 
-#: fortran/openmp.c:2429
+#: fortran/openmp.c:2658
 #, gcc-internal-format
 msgid "Invalid NAME %qs in !$ACC ROUTINE ( NAME ) at %C"
 msgstr ""
 
-#: fortran/openmp.c:2437
+#: fortran/openmp.c:2666
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$ACC ROUTINE ( NAME ) at %C"
 msgstr ""
 
-#: fortran/openmp.c:2444
+#: fortran/openmp.c:2673
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$ACC ROUTINE ( NAME ) at %C, expecting ')' after NAME"
 msgstr ""
 
-#: fortran/openmp.c:2459
+#: fortran/openmp.c:2688
 #, gcc-internal-format, gfc-internal-format
 msgid "Multiple loop axes specified for routine at %C"
 msgstr ""
 
-#: fortran/openmp.c:2469
+#: fortran/openmp.c:2698
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Intrinsic symbol specified in !$ACC ROUTINE ( NAME ) at %C marked with "
 "incompatible GANG, WORKER, or VECTOR clause"
 msgstr ""
 
-#: fortran/openmp.c:2489 fortran/openmp.c:2514
+#: fortran/openmp.c:2718 fortran/openmp.c:2743
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC ROUTINE already applied at %C"
 msgstr ""
 
-#: fortran/openmp.c:2530
+#: fortran/openmp.c:2759
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$ACC ROUTINE with GANG, WORKER, or VECTOR clause is not permitted in PURE "
 "procedure at %C"
 msgstr ""
 
-#: fortran/openmp.c:2638 fortran/openmp.c:2662
+#: fortran/openmp.c:2892
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP CRITICAL statement at %C"
 msgstr ""
 
-#: fortran/openmp.c:2729
+#: fortran/openmp.c:2969
+#, gcc-internal-format, gfc-internal-format
+msgid "Expected AQC_REL, RELEASE, or ACQUIRE at %C"
+msgstr ""
+
+#: fortran/openmp.c:2978
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"List specified together with memory order clause in FLUSH directive at %C"
+msgstr ""
+
+#: fortran/openmp.c:2986
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP FLUSH statement at %C"
 msgstr ""
 
-#: fortran/openmp.c:3123 fortran/openmp.c:6604
+#: fortran/openmp.c:3382 fortran/openmp.c:7315
 #, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of predefined %s !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.c:3127 fortran/openmp.c:6608
+#: fortran/openmp.c:3386 fortran/openmp.c:7319
 #, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of predefined !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.c:3132
+#: fortran/openmp.c:3391
 #, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.c:3134
+#: fortran/openmp.c:3393
 #, gcc-internal-format, gfc-internal-format
 msgid "Previous !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.c:3154
+#: fortran/openmp.c:3413
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$OMP DECLARE REDUCTION at %C"
 msgstr ""
 
-#: fortran/openmp.c:3191
+#: fortran/openmp.c:3450
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Only the !$OMP DECLARE TARGET form without clauses is allowed in interface "
 "block at %C"
 msgstr ""
 
-#: fortran/openmp.c:3206
+#: fortran/openmp.c:3465
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$OMP DECLARE TARGET at %C"
 msgstr ""
 
-#: fortran/openmp.c:3229
+#: fortran/openmp.c:3488
 #, gcc-internal-format, gfc-internal-format
 msgid "OMP DECLARE TARGET variable at %L is an element of a COMMON block"
 msgstr ""
 
-#: fortran/openmp.c:3234
+#: fortran/openmp.c:3493
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "OMP DECLARE TARGET variable at %L previously mentioned in LINK clause and "
 "later in TO clause"
 msgstr ""
 
-#: fortran/openmp.c:3240
+#: fortran/openmp.c:3499
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "OMP DECLARE TARGET variable at %L previously mentioned in TO clause and "
 "later in LINK clause"
 msgstr ""
 
-#: fortran/openmp.c:3244
+#: fortran/openmp.c:3503
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Variable at %L mentioned multiple times in clauses of the same OMP DECLARE "
 "TARGET directive"
 msgstr ""
 
-#: fortran/openmp.c:3259
+#: fortran/openmp.c:3517 fortran/openmp.c:3563
+#, gcc-internal-format
+msgid ""
+"List item %qs at %L set in previous OMP DECLARE TARGET directive to a "
+"different DEVICE_TYPE"
+msgstr ""
+
+#: fortran/openmp.c:3527
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "OMP DECLARE TARGET COMMON at %L previously mentioned in LINK clause and "
 "later in TO clause"
 msgstr ""
 
-#: fortran/openmp.c:3265
+#: fortran/openmp.c:3533
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "OMP DECLARE TARGET COMMON at %L previously mentioned in TO clause and later "
 "in LINK clause"
 msgstr ""
 
-#: fortran/openmp.c:3269
+#: fortran/openmp.c:3537
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "COMMON at %L mentioned multiple times in clauses of the same OMP DECLARE "
 "TARGET directive"
 msgstr ""
 
-#: fortran/openmp.c:3296
+#: fortran/openmp.c:3546
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"COMMON at %L set in previous OMP DECLARE TARGET directive to a different "
+"DEVICE_TYPE"
+msgstr ""
+
+#: fortran/openmp.c:3570
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"OMP DECLARE TARGET directive at %L with only DEVICE_TYPE clause is ignored"
+msgstr ""
+
+#: fortran/openmp.c:3580
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$OMP DECLARE TARGET list at %C"
 msgstr ""
 
-#: fortran/openmp.c:3328
+#: fortran/openmp.c:3612
 #, gcc-internal-format, gfc-internal-format
 msgid "Threadprivate variable at %C is an element of a COMMON block"
 msgstr ""
 
-#: fortran/openmp.c:3365
+#: fortran/openmp.c:3649
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after OMP THREADPRIVATE at %C"
 msgstr ""
 
-#: fortran/openmp.c:3372
+#: fortran/openmp.c:3656
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$OMP THREADPRIVATE list at %C"
 msgstr ""
 
-#: fortran/openmp.c:3586
+#: fortran/openmp.c:3711
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"Program unit at %L has OpenMP device constructs/routines but does not set !"
+"$OMP REQUIRES REVERSE_OFFSET but other program units do"
+msgstr ""
+
+#: fortran/openmp.c:3716
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"Program unit at %L has OpenMP device constructs/routines but does not set !"
+"$OMP REQUIRES UNIFIED_ADDRESS but other program units do"
+msgstr ""
+
+#: fortran/openmp.c:3721
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"Program unit at %L has OpenMP device constructs/routines but does not set !"
+"$OMP REQUIRES UNIFIED_SHARED_MEMORY but other program units do"
+msgstr ""
+
+#: fortran/openmp.c:3747
+#, gcc-internal-format
+msgid ""
+"!$OMP REQUIRES clause %qs specified via module %qs use at %L comes after "
+"using a device construct/routine"
+msgstr ""
+
+#: fortran/openmp.c:3751
+#, gcc-internal-format
+msgid ""
+"!$OMP REQUIRES clause %qs specified at %L comes after using a device "
+"construct/routine"
+msgstr ""
+
+#: fortran/openmp.c:3773
+#, gcc-internal-format
+msgid ""
+"!$OMP REQUIRES clause %<atomic_default_mem_order(%s)%> specified via module "
+"%qs use at %L overrides a previous %<atomic_default_mem_order(%s)%> (which "
+"might be through using a module)"
+msgstr ""
+
+#: fortran/openmp.c:3778
+#, gcc-internal-format
+msgid ""
+"!$OMP REQUIRES clause %<atomic_default_mem_order(%s)%> specified at %L "
+"overrides a previous %<atomic_default_mem_order(%s)%> (which might be "
+"through using a module)"
+msgstr ""
+
+#: fortran/openmp.c:3789
+#, gcc-internal-format
+msgid ""
+"!$OMP REQUIRES clause %<atomic_default_mem_order(%s)%> specified via module "
+"%qs use at %L but same clause is not set at for the program unit"
+msgstr ""
+
+#: fortran/openmp.c:3794
+#, gcc-internal-format
+msgid ""
+"!$OMP REQUIRES clause %qs specified via module %qs use at %L but same clause "
+"is not set at for the program unit"
+msgstr ""
+
+#: fortran/openmp.c:3823
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"!$OMP REQUIRES at %C must appear in the specification part of a program unit"
+msgstr ""
+
+#: fortran/openmp.c:3891
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"Expected SEQ_CST, ACQ_REL or RELAXED for ATOMIC_DEFAULT_MEM_ORDER clause at "
+"%C"
+msgstr ""
+
+#: fortran/openmp.c:3900
+#, gcc-internal-format
+msgid "Sorry, %qs clause at %L on REQUIRES directive is not yet supported"
+msgstr ""
+
+#: fortran/openmp.c:3910
+#, gcc-internal-format, gfc-internal-format
+msgid "Clause expected at %C"
+msgstr ""
+
+#: fortran/openmp.c:3916
+#, gcc-internal-format
+msgid "%qs clause at %L specified more than once"
+msgstr ""
+
+#: fortran/openmp.c:3919
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"Expected UNIFIED_ADDRESS, UNIFIED_SHARED_MEMORY, DYNAMIC_ALLOCATORS, "
+"REVERSE_OFFLOAD, or ATOMIC_DEFAULT_MEM_ORDER clause at %L"
+msgstr ""
+
+#: fortran/openmp.c:3945
+#, gcc-internal-format, gfc-internal-format
+msgid "Expected INCLUSIVE or EXCLUSIVE clause at %C"
+msgstr ""
+
+#: fortran/openmp.c:3951
+#, gcc-internal-format, gfc-internal-format
+msgid "Unexpected junk after !$OMP SCAN at %C"
+msgstr ""
+
+#: fortran/openmp.c:4130
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after TASKWAIT clause at %C"
 msgstr ""
 
-#: fortran/openmp.c:3600
+#: fortran/openmp.c:4144
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after TASKYIELD clause at %C"
 msgstr ""
 
-#: fortran/openmp.c:3659
+#: fortran/openmp.c:4203
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP WORKSHARE statement at %C"
 msgstr ""
 
-#: fortran/openmp.c:3673
+#: fortran/openmp.c:4217
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP MASTER statement at %C"
 msgstr ""
 
-#: fortran/openmp.c:3732
+#: fortran/openmp.c:4257
 #, gcc-internal-format, gfc-internal-format
-msgid "Unexpected junk after $OMP ATOMIC statement at %C"
+msgid "OMP ATOMIC at %L with multiple atomic clauses"
 msgstr ""
 
-#: fortran/openmp.c:3759
+#: fortran/openmp.c:4295
 #, gcc-internal-format, gfc-internal-format
-msgid "Unexpected junk after $OMP BARRIER statement at %C"
+msgid "!$OMP ATOMIC READ at %L incompatible with ACQ_REL or RELEASE clauses"
 msgstr ""
 
-#: fortran/openmp.c:3773
+#: fortran/openmp.c:4304
 #, gcc-internal-format, gfc-internal-format
-msgid "Unexpected junk after $OMP TASKGROUP statement at %C"
+msgid "!$OMP ATOMIC WRITE at %L incompatible with ACQ_REL or ACQUIRE clauses"
 msgstr ""
 
-#: fortran/openmp.c:3823
+#: fortran/openmp.c:4314
+#, gcc-internal-format, gfc-internal-format
+msgid "!$OMP ATOMIC UPDATE at %L incompatible with ACQ_REL or ACQUIRE clauses"
+msgstr ""
+
+#: fortran/openmp.c:4349
+#, gcc-internal-format, gfc-internal-format
+msgid "Unexpected junk after !$ACC ATOMIC statement at %C"
+msgstr ""
+
+#: fortran/openmp.c:4364
+#, gcc-internal-format, gfc-internal-format
+msgid "Unexpected junk after $OMP BARRIER statement at %C"
+msgstr ""
+
+#: fortran/openmp.c:4422
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP CANCELLATION POINT statement at %C"
 msgstr ""
 
-#: fortran/openmp.c:3843
+#: fortran/openmp.c:4442
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after NOWAIT clause at %C"
 msgstr ""
 
-#: fortran/openmp.c:3886
+#: fortran/openmp.c:4485
 #, gcc-internal-format, gfc-internal-format
 msgid "%s clause at %L requires a scalar INTEGER expression"
 msgstr ""
 
-#: fortran/openmp.c:3897
+#: fortran/openmp.c:4496
 #, gcc-internal-format, gfc-internal-format
 msgid "INTEGER expression of %s clause at %L must be positive"
 msgstr ""
 
-#: fortran/openmp.c:3908
+#: fortran/openmp.c:4507
 #, gcc-internal-format, gfc-internal-format
 msgid "INTEGER expression of %s clause at %L must be non-negative"
 msgstr ""
 
-#: fortran/openmp.c:3919
+#: fortran/openmp.c:4518
 #, gcc-internal-format
 msgid "Cray pointer object %qs of derived type in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:3922
+#: fortran/openmp.c:4521
 #, gcc-internal-format
 msgid "Cray pointee object %qs of derived type in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:3928 fortran/openmp.c:4967
+#: fortran/openmp.c:4527 fortran/openmp.c:5643
 #, gcc-internal-format
 msgid "POINTER object %qs of polymorphic type in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:3933
+#: fortran/openmp.c:4532
 #, gcc-internal-format
 msgid "Cray pointer object %qs of polymorphic type in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:3938
+#: fortran/openmp.c:4537
 #, gcc-internal-format
 msgid "Cray pointee object %qs of polymorphic type in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:3948 fortran/openmp.c:4638 fortran/openmp.c:4770
+#: fortran/openmp.c:4547 fortran/openmp.c:5275 fortran/openmp.c:5426
 #, gcc-internal-format
 msgid "Assumed size array %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:3951
+#: fortran/openmp.c:4550
 #, gcc-internal-format
 msgid "Assumed rank array %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:3967 fortran/openmp.c:4729 fortran/openmp.c:4758
+#: fortran/openmp.c:4566 fortran/openmp.c:5368 fortran/openmp.c:5414
 #, gcc-internal-format
 msgid "POINTER object %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:3972 fortran/openmp.c:4971
+#: fortran/openmp.c:4571 fortran/openmp.c:5647
 #, gcc-internal-format
 msgid "Cray pointer object %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:3977 fortran/openmp.c:4974
+#: fortran/openmp.c:4576 fortran/openmp.c:5650
 #, gcc-internal-format
 msgid "Cray pointee object %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:3982 fortran/openmp.c:4724 fortran/openmp.c:4962
+#: fortran/openmp.c:4581 fortran/openmp.c:5363 fortran/openmp.c:5638
 #, gcc-internal-format
 msgid "ALLOCATABLE object %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:3985 fortran/openmp.c:4732
+#: fortran/openmp.c:4584 fortran/openmp.c:5371
 #, gcc-internal-format
 msgid "VALUE object %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4028
+#: fortran/openmp.c:4627
 #, gcc-internal-format, gfc-internal-format
 msgid "Implicitly declared function %s used in !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.c:4077
+#: fortran/openmp.c:4676
 #, gcc-internal-format, gfc-internal-format
 msgid "Implicitly declared subroutine %s used in !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.c:4110
+#: fortran/openmp.c:4714
 #, gcc-internal-format, gfc-internal-format
 msgid "ORDERED clause parameter is less than COLLAPSE at %L"
 msgstr ""
 
-#: fortran/openmp.c:4118 fortran/openmp.c:4129 fortran/resolve.c:10672
-#: fortran/resolve.c:11972
+#: fortran/openmp.c:4722 fortran/openmp.c:4733 fortran/resolve.c:10721
+#: fortran/resolve.c:12026
 #, gcc-internal-format, gfc-internal-format
 msgid "IF clause at %L requires a scalar LOGICAL expression"
 msgstr ""
 
-#: fortran/openmp.c:4133
+#: fortran/openmp.c:4737
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "IF clause without modifier at %L used together with IF clauses with modifiers"
 msgstr ""
 
-#: fortran/openmp.c:4210
+#: fortran/openmp.c:4841
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "IF clause modifier %s at %L not appropriate for the current OpenMP construct"
 msgstr ""
 
-#: fortran/openmp.c:4220
+#: fortran/openmp.c:4851
 #, gcc-internal-format, gfc-internal-format
 msgid "FINAL clause at %L requires a scalar LOGICAL expression"
 msgstr ""
 
-#: fortran/openmp.c:4230
+#: fortran/openmp.c:4861
 #, gcc-internal-format, gfc-internal-format
 msgid "SCHEDULE clause's chunk_size at %L requires a scalar INTEGER expression"
 msgstr ""
 
-#: fortran/openmp.c:4235
+#: fortran/openmp.c:4866
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "INTEGER expression of SCHEDULE clause's chunk_size at %L must be positive"
 msgstr ""
 
-#: fortran/openmp.c:4252
-#, gcc-internal-format, gfc-internal-format
-msgid "NONMONOTONIC modifier specified for %s schedule kind at %L"
-msgstr ""
-
-#: fortran/openmp.c:4256
+#: fortran/openmp.c:4873
 #, gcc-internal-format, gfc-internal-format
 msgid "Both MONOTONIC and NONMONOTONIC schedule modifiers specified at %L"
 msgstr ""
 
-#: fortran/openmp.c:4259
+#: fortran/openmp.c:4876
 #, gcc-internal-format, gfc-internal-format
 msgid "NONMONOTONIC schedule modifier specified with ORDERED clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4275
+#: fortran/openmp.c:4892
 #, gcc-internal-format
 msgid "Variable %qs is not a dummy argument at %L"
 msgstr ""
 
-#: fortran/openmp.c:4311
+#: fortran/openmp.c:4928
 #, gcc-internal-format
 msgid ""
 "Object %qs is not a variable at %L; parameters cannot be and need not be "
 "copied"
 msgstr ""
 
-#: fortran/openmp.c:4315
+#: fortran/openmp.c:4932
 #, gcc-internal-format
 msgid ""
 "Object %qs is not a variable at %L; parameters cannot be and need not be "
 "mapped"
 msgstr ""
 
-#: fortran/openmp.c:4320 fortran/openmp.c:6349
+#: fortran/openmp.c:4937 fortran/openmp.c:7041
 #, gcc-internal-format
 msgid "Object %qs is not a variable at %L"
 msgstr ""
 
-#: fortran/openmp.c:4345
+#: fortran/openmp.c:4946
+#, gcc-internal-format
+msgid ""
+"%<inscan%> REDUCTION clause on construct other than DO, SIMD, DO SIMD, "
+"PARALLEL DO, PARALLEL DO SIMD at %L"
+msgstr ""
+
+#: fortran/openmp.c:4975
 #, gcc-internal-format
 msgid "Symbol %qs has mixed component and non-component accesses at %L"
 msgstr ""
 
-#: fortran/openmp.c:4348 fortran/openmp.c:4364 fortran/openmp.c:4372
-#: fortran/openmp.c:4383 fortran/openmp.c:4395 fortran/openmp.c:4410
-#: fortran/openmp.c:6373
+#: fortran/openmp.c:4978 fortran/openmp.c:4994 fortran/openmp.c:5002
+#: fortran/openmp.c:5013 fortran/openmp.c:5025 fortran/openmp.c:5040
+#: fortran/openmp.c:7065
 #, gcc-internal-format
 msgid "Symbol %qs present on multiple clauses at %L"
 msgstr ""
 
-#: fortran/openmp.c:4417
+#: fortran/openmp.c:5047
 #, gcc-internal-format
 msgid "Array %qs is not permitted in reduction at %L"
 msgstr ""
 
-#: fortran/openmp.c:4430
+#: fortran/openmp.c:5060
 #, gcc-internal-format
 msgid "Symbol %qs present on both FROM and TO clauses at %L"
 msgstr ""
 
-#: fortran/openmp.c:4452
+#: fortran/openmp.c:5078
 #, gcc-internal-format
 msgid "Non-THREADPRIVATE object %qs in COPYIN clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4460
+#: fortran/openmp.c:5086
 #, gcc-internal-format
 msgid "Assumed size array %qs in COPYPRIVATE clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4463
+#: fortran/openmp.c:5089
 #, gcc-internal-format
 msgid "INTENT(IN) POINTER %qs in COPYPRIVATE clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4471
+#: fortran/openmp.c:5097
 #, gcc-internal-format
 msgid "THREADPRIVATE object %qs in SHARED clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4474
+#: fortran/openmp.c:5100
 #, gcc-internal-format
 msgid "Cray pointee %qs in SHARED clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4477
+#: fortran/openmp.c:5103
 #, gcc-internal-format
 msgid "ASSOCIATE name %qs in SHARED clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4492
+#: fortran/openmp.c:5107
+#, gcc-internal-format
+msgid "DETACH event handle %qs in SHARED clause at %L"
+msgstr ""
+
+#: fortran/openmp.c:5122
 #, gcc-internal-format
 msgid ""
 "%qs in ALIGNED clause must be POINTER, ALLOCATABLE, Cray pointer or C_PTR at "
 "%L"
 msgstr ""
 
-#: fortran/openmp.c:4504
+#: fortran/openmp.c:5134
 #, gcc-internal-format
 msgid ""
 "%qs in ALIGNED clause at %L requires a scalar positive constant integer "
 "alignment expression"
 msgstr ""
 
-#: fortran/openmp.c:4523
+#: fortran/openmp.c:5153
 #, gcc-internal-format, gfc-internal-format
 msgid "SINK dependence type only allowed on ORDERED directive at %L"
 msgstr ""
 
-#: fortran/openmp.c:4527
+#: fortran/openmp.c:5157
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "DEPEND SINK used together with DEPEND SOURCE on the same construct at %L"
 msgstr ""
 
-#: fortran/openmp.c:4537
+#: fortran/openmp.c:5167
 #, gcc-internal-format, gfc-internal-format
 msgid "SINK addend not a constant integer at %L"
 msgstr ""
 
-#: fortran/openmp.c:4543
+#: fortran/openmp.c:5173
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Only SOURCE or SINK dependence types are allowed on ORDERED directive at %L"
 msgstr ""
 
-#: fortran/openmp.c:4569
+#: fortran/openmp.c:5200
 #, gcc-internal-format, gfc-internal-format
 msgid "Array is not contiguous at %L"
 msgstr ""
 
-#: fortran/openmp.c:4589 fortran/openmp.c:4607
+#: fortran/openmp.c:5220
+#, gcc-internal-format, gfc-internal-format
+msgid "Unexpected substring reference in %s clause at %L"
+msgstr ""
+
+#: fortran/openmp.c:5226 fortran/openmp.c:5244
 #, gcc-internal-format
 msgid "%qs in %s clause at %L is not a proper array section"
 msgstr ""
 
-#: fortran/openmp.c:4599
+#: fortran/openmp.c:5236
 #, gcc-internal-format, gfc-internal-format
 msgid "Stride should not be specified for array section in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4620
+#: fortran/openmp.c:5257
 #, gcc-internal-format
 msgid "%qs in DEPEND clause at %L is a zero size array section"
 msgstr ""
 
-#: fortran/openmp.c:4644
+#: fortran/openmp.c:5281
 #, gcc-internal-format
 msgid ""
 "List item %qs with allocatable components is not permitted in map clause at "
 "%L"
 msgstr ""
 
-#: fortran/openmp.c:4663
+#: fortran/openmp.c:5300
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TARGET%s with map-type other than TO, FROM, TOFROM, or ALLOC on MAP clause "
 "at %L"
 msgstr ""
 
-#: fortran/openmp.c:4679
+#: fortran/openmp.c:5316
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TARGET ENTER DATA with map-type other than TO, or ALLOC on MAP clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4694
+#: fortran/openmp.c:5331
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TARGET EXIT DATA with map-type other than FROM, RELEASE, or DELETE on MAP "
 "clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4710 fortran/openmp.c:4744
+#: fortran/openmp.c:5347 fortran/openmp.c:5400
 #, gcc-internal-format
 msgid "THREADPRIVATE object %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4713 fortran/openmp.c:4747
+#: fortran/openmp.c:5350 fortran/openmp.c:5403
 #, gcc-internal-format
 msgid "Cray pointee %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4719
+#: fortran/openmp.c:5358
 #, gcc-internal-format
 msgid "Non-dummy object %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4750
+#: fortran/openmp.c:5394
+#, gcc-internal-format
+msgid ""
+"%<inscan%> and non-%<inscan%> %<reduction%> clauses on the same construct %L"
+msgstr ""
+
+#: fortran/openmp.c:5406
 #, gcc-internal-format
 msgid "ASSOCIATE name %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4755
+#: fortran/openmp.c:5411
 #, gcc-internal-format
 msgid "Procedure pointer %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4761
+#: fortran/openmp.c:5417
 #, gcc-internal-format
 msgid "Cray pointer %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4773
+#: fortran/openmp.c:5429
 #, gcc-internal-format
 msgid "Variable %qs in %s clause is used in NAMELIST statement at %L"
 msgstr ""
 
 #. case OMP_LIST_REDUCTION:
-#: fortran/openmp.c:4783
+#: fortran/openmp.c:5439
 #, gcc-internal-format
 msgid "INTENT(IN) POINTER %qs in %s clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:4876
+#: fortran/openmp.c:5450
+#, gcc-internal-format
+msgid "DETACH event handle %qs in %s clause at %L"
+msgstr ""
+
+#: fortran/openmp.c:5460
+#, gcc-internal-format, gfc-internal-format
+msgid "Only DEFAULT permitted as reduction-modifier in REDUCTION clause at %L"
+msgstr ""
+
+#: fortran/openmp.c:5552
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP DECLARE REDUCTION %s not found for type %s at %L"
 msgstr ""
 
-#: fortran/openmp.c:4902
+#: fortran/openmp.c:5578
 #, gcc-internal-format, gfc-internal-format
 msgid "LINEAR clause modifier used on DO or SIMD construct at %L"
 msgstr ""
 
-#: fortran/openmp.c:4907
+#: fortran/openmp.c:5583
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "LINEAR clause specified together with ORDERED clause with argument at %L"
 msgstr ""
 
-#: fortran/openmp.c:4912
+#: fortran/openmp.c:5588
 #, gcc-internal-format
 msgid "LINEAR variable %qs must be INTEGER at %L"
 msgstr ""
 
-#: fortran/openmp.c:4917
+#: fortran/openmp.c:5593
 #, gcc-internal-format
 msgid "LINEAR dummy argument %qs with VALUE attribute with %s modifier at %L"
 msgstr ""
 
-#: fortran/openmp.c:4928
+#: fortran/openmp.c:5604
 #, gcc-internal-format
 msgid ""
 "%qs in LINEAR clause at %L requires a scalar integer linear-step expression"
 msgstr ""
 
-#: fortran/openmp.c:4945
+#: fortran/openmp.c:5621
 #, gcc-internal-format
 msgid ""
 "%qs in LINEAR clause at %L requires a constant integer linear-step "
 "expression or dummy argument specified in UNIFORM clause"
 msgstr ""
 
-#: fortran/openmp.c:4979
+#: fortran/openmp.c:5655
 #, gcc-internal-format
 msgid "%s clause variable %qs at %L is neither a POINTER nor an array"
 msgstr ""
 
-#: fortran/openmp.c:5011
+#: fortran/openmp.c:5716
+#, gcc-internal-format, gfc-internal-format
+msgid "Value of HINT clause at %L shall be a valid constant hint expression"
+msgstr ""
+
+#: fortran/openmp.c:5726
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "DIST_SCHEDULE clause's chunk_size at %L requires a scalar INTEGER expression"
 msgstr ""
 
-#: fortran/openmp.c:5041
+#: fortran/openmp.c:5756
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible use of TILE and COLLAPSE at %L"
 msgstr ""
 
-#: fortran/openmp.c:5043
+#: fortran/openmp.c:5758
 #, gcc-internal-format, gfc-internal-format
 msgid "SOURCE dependence type only allowed on ORDERED directive at %L"
 msgstr ""
 
-#: fortran/openmp.c:5056
+#: fortran/openmp.c:5774
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"TARGET DATA must contain at least one MAP, USE_DEVICE_PTR, or "
+"USE_DEVICE_ADDR clause at %L"
+msgstr ""
+
+#: fortran/openmp.c:5777
 #, gcc-internal-format, gfc-internal-format
 msgid "%s must contain at least one MAP clause at %L"
 msgstr ""
 
-#: fortran/openmp.c:5153
+#: fortran/openmp.c:5781
+#, gcc-internal-format
+msgid ""
+"%<DETACH%> clause at %L must not be used together with %<MERGEABLE%> clause"
+msgstr ""
+
+#: fortran/openmp.c:5878
 #, gcc-internal-format, gfc-internal-format
 msgid "unexpected !$OMP ATOMIC expression at %L"
 msgstr ""
 
-#: fortran/openmp.c:5182
+#: fortran/openmp.c:5907
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC statement must set a scalar variable of intrinsic type at %L"
 msgstr ""
 
-#: fortran/openmp.c:5207
+#: fortran/openmp.c:5932
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC READ statement must read from a scalar variable of intrinsic "
 "type at %L"
 msgstr ""
 
-#: fortran/openmp.c:5212
+#: fortran/openmp.c:5937
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "expr in !$OMP ATOMIC WRITE assignment var = expr must be scalar and cannot "
 "reference var at %L"
 msgstr ""
 
-#: fortran/openmp.c:5234 fortran/openmp.c:5525
+#: fortran/openmp.c:5963 fortran/openmp.c:6251
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC CAPTURE capture statement must read from a scalar variable of "
 "intrinsic type at %L"
 msgstr ""
 
-#: fortran/openmp.c:5249
+#: fortran/openmp.c:5978
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC CAPTURE update statement must set a scalar variable of "
 "intrinsic type at %L"
 msgstr ""
 
-#: fortran/openmp.c:5256 fortran/openmp.c:5532
+#: fortran/openmp.c:5985 fortran/openmp.c:6258
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC CAPTURE capture statement reads from different variable than "
 "update statement writes into at %L"
 msgstr ""
 
-#: fortran/openmp.c:5272
+#: fortran/openmp.c:5998
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC with ALLOCATABLE variable at %L"
 msgstr ""
 
-#: fortran/openmp.c:5314
+#: fortran/openmp.c:6040
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC assignment operator must be binary +, *, -, /, .AND., .OR., ."
 "EQV. or .NEQV. at %L"
 msgstr ""
 
-#: fortran/openmp.c:5362
+#: fortran/openmp.c:6088
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC assignment must be var = var op expr or var = expr op var at %L"
 msgstr ""
 
-#: fortran/openmp.c:5376
+#: fortran/openmp.c:6102
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC var = var op expr not mathematically equivalent to var = var op "
 "(expr) at %L"
 msgstr ""
 
-#: fortran/openmp.c:5408
+#: fortran/openmp.c:6134
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "expr in !$OMP ATOMIC assignment var = var op expr must be scalar and cannot "
 "reference var at %L"
 msgstr ""
 
-#: fortran/openmp.c:5432
+#: fortran/openmp.c:6158
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC assignment intrinsic IAND, IOR or IEOR must have two arguments "
 "at %L"
 msgstr ""
 
-#: fortran/openmp.c:5439
+#: fortran/openmp.c:6165
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC assignment intrinsic must be MIN, MAX, IAND, IOR or IEOR at %L"
 msgstr ""
 
-#: fortran/openmp.c:5456
+#: fortran/openmp.c:6182
 #, gcc-internal-format
 msgid ""
 "!$OMP ATOMIC intrinsic arguments except one must not reference %qs at %L"
 msgstr ""
 
-#: fortran/openmp.c:5463
+#: fortran/openmp.c:6189
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC intrinsic arguments must be scalar at %L"
 msgstr ""
 
-#: fortran/openmp.c:5471
+#: fortran/openmp.c:6197
 #, gcc-internal-format
 msgid "First or last !$OMP ATOMIC intrinsic argument must be %qs at %L"
 msgstr ""
 
-#: fortran/openmp.c:5489
+#: fortran/openmp.c:6215
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC assignment must have an operator or intrinsic on right hand "
 "side at %L"
 msgstr ""
 
-#: fortran/openmp.c:5503
+#: fortran/openmp.c:6229
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "!$OMP ATOMIC CAPTURE capture statement must set a scalar variable of "
 "intrinsic type at %L"
 msgstr ""
 
-#: fortran/openmp.c:5846
+#: fortran/openmp.c:6307
+#, gcc-internal-format
+msgid ""
+"ORDERED clause specified together with %<inscan%> REDUCTION clause at %L"
+msgstr ""
+
+#: fortran/openmp.c:6310
+#, gcc-internal-format
+msgid ""
+"SCHEDULE clause specified together with %<inscan%> REDUCTION clause at %L"
+msgstr ""
+
+#: fortran/openmp.c:6318
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"With INSCAN at %L, expected loop body with !$OMP SCAN between two structured-"
+"block-sequences"
+msgstr ""
+
+#: fortran/openmp.c:6575
 #, gcc-internal-format, gfc-internal-format
 msgid "%s cannot be a DO WHILE or DO without loop control at %L"
 msgstr ""
 
-#: fortran/openmp.c:5852
+#: fortran/openmp.c:6581
 #, gcc-internal-format, gfc-internal-format
 msgid "%s cannot be a DO CONCURRENT loop at %L"
 msgstr ""
 
-#: fortran/openmp.c:5858
+#: fortran/openmp.c:6587
 #, gcc-internal-format, gfc-internal-format
 msgid "%s iteration variable must be of type integer at %L"
 msgstr ""
 
-#: fortran/openmp.c:5862
+#: fortran/openmp.c:6591
 #, gcc-internal-format, gfc-internal-format
 msgid "%s iteration variable must not be THREADPRIVATE at %L"
 msgstr ""
 
-#: fortran/openmp.c:5874
+#: fortran/openmp.c:6603
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "%s iteration variable present on clause other than PRIVATE or LASTPRIVATE at "
 "%L"
 msgstr ""
 
-#: fortran/openmp.c:5878
+#: fortran/openmp.c:6607
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "%s iteration variable present on clause other than PRIVATE, LASTPRIVATE or "
 "LINEAR at %L"
 msgstr ""
 
-#: fortran/openmp.c:5896
+#: fortran/openmp.c:6625
 #, gcc-internal-format, gfc-internal-format
 msgid "%s collapsed loops don't form rectangular iteration space at %L"
 msgstr ""
 
-#: fortran/openmp.c:5908
+#: fortran/openmp.c:6635
 #, gcc-internal-format, gfc-internal-format
 msgid "collapsed %s loops not perfectly nested at %L"
 msgstr ""
 
-#: fortran/openmp.c:5917 fortran/openmp.c:5925
+#: fortran/openmp.c:6644 fortran/openmp.c:6652
 #, gcc-internal-format, gfc-internal-format
 msgid "not enough DO loops for collapsed %s at %L"
 msgstr ""
 
-#: fortran/openmp.c:6096 fortran/openmp.c:6109
+#: fortran/openmp.c:6820 fortran/openmp.c:6833
 #, gcc-internal-format, gfc-internal-format
 msgid "The %s directive cannot be specified within a %s region at %L"
 msgstr ""
 
-#: fortran/openmp.c:6128
+#: fortran/openmp.c:6852
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP cannot be a DO WHILE or DO without loop control at %L"
 msgstr ""
 
-#: fortran/openmp.c:6134
+#: fortran/openmp.c:6858
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP cannot be a DO CONCURRENT loop at %L"
 msgstr ""
 
-#: fortran/openmp.c:6140
+#: fortran/openmp.c:6864
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP iteration variable must be of type integer at %L"
 msgstr ""
 
-#: fortran/openmp.c:6156
+#: fortran/openmp.c:6880
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP %s loops don't form rectangular iteration space at %L"
 msgstr ""
 
-#: fortran/openmp.c:6168
+#: fortran/openmp.c:6892
 #, gcc-internal-format, gfc-internal-format
 msgid "%s !$ACC LOOP loops not perfectly nested at %L"
 msgstr ""
 
-#: fortran/openmp.c:6178 fortran/openmp.c:6187
+#: fortran/openmp.c:6902 fortran/openmp.c:6911
 #, gcc-internal-format, gfc-internal-format
 msgid "not enough DO loops for %s !$ACC LOOP at %L"
 msgstr ""
 
-#: fortran/openmp.c:6202 fortran/openmp.c:6209
-#, gcc-internal-format, gfc-internal-format
-msgid "!$ACC LOOP %s in PARALLEL region doesn't allow %s arguments at %L"
-msgstr ""
-
-#: fortran/openmp.c:6223
+#: fortran/openmp.c:6927
 #, 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.c:6256
+#: fortran/openmp.c:6948
 #, gcc-internal-format, gfc-internal-format
 msgid "TILE requires constant expression at %L"
 msgstr ""
 
-#: fortran/openmp.c:6356
+#: fortran/openmp.c:7048
 #, gcc-internal-format
 msgid "Array sections: %qs not allowed in !$ACC DECLARE at %L"
 msgstr ""
 
-#: fortran/openmp.c:6403
+#: fortran/openmp.c:7095
 #, gcc-internal-format
 msgid ""
 "NAME %qs does not refer to a subroutine or function in !$ACC ROUTINE "
 "( NAME ) at %L"
 msgstr ""
 
-#: fortran/openmp.c:6409
+#: fortran/openmp.c:7101
 #, gcc-internal-format
 msgid "NAME %qs invalid in !$ACC ROUTINE ( NAME ) at %L"
 msgstr ""
 
-#: fortran/openmp.c:6512
+#: fortran/openmp.c:7204
 #, gcc-internal-format, gfc-internal-format
 msgid "OMP TARGET UPDATE at %L requires at least one TO or FROM clause"
 msgstr ""
 
-#: fortran/openmp.c:6534
+#: fortran/openmp.c:7218
+#, 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.c:7224
+#, gcc-internal-format
+msgid ""
+"Unexpected !$OMP SCAN at %L outside loop construct with %<inscan%> REDUCTION "
+"clause"
+msgstr ""
+
+#: fortran/openmp.c:7245
 #, gcc-internal-format
 msgid "!$OMP DECLARE SIMD should refer to containing procedure %qs at %L"
 msgstr ""
 
-#: fortran/openmp.c:6558
+#: fortran/openmp.c:7269
 #, 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.c:6566
+#: fortran/openmp.c:7277
 #, 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.c:6595
+#: fortran/openmp.c:7306
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid operator for !$OMP DECLARE REDUCTION %s at %L"
 msgstr ""
 
-#: fortran/openmp.c:6617
+#: fortran/openmp.c:7328
 #, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER length in !$OMP DECLARE REDUCTION %s not constant at %L"
 msgstr ""
 
-#: fortran/openmp.c:6633
+#: fortran/openmp.c:7344
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Subroutine call with alternate returns in combiner of !$OMP DECLARE "
 "REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.c:6648
+#: fortran/openmp.c:7359
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Subroutine call with alternate returns in INITIALIZER clause of !$OMP "
 "DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.c:6658
+#: fortran/openmp.c:7369
 #, 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.c:6666
+#: fortran/openmp.c:7377
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Missing INITIALIZER clause for !$OMP DECLARE REDUCTION of derived type "
@@ -68467,8 +70561,7 @@ msgstr ""
 
 #: fortran/options.c:416
 #, gcc-internal-format
-msgid ""
-"Flag %<-fno-automatic%> overwrites %<-frecursive%> implied by %<-fopenmp%>"
+msgid "Flag %<-fno-automatic%> overwrites %<-frecursive%> implied by %qs"
 msgstr ""
 
 #: fortran/options.c:419
@@ -68479,61 +70572,60 @@ msgstr ""
 #: fortran/options.c:422
 #, gcc-internal-format
 msgid ""
-"Flag %<-fmax-stack-var-size=%d%> overwrites %<-frecursive%> implied by %<-"
-"fopenmp%>"
+"Flag %<-fmax-stack-var-size=%d%> overwrites %<-frecursive%> implied by %qs"
 msgstr ""
 
-#: fortran/options.c:479
+#: fortran/options.c:481
 #, gcc-internal-format
 msgid "Fixed line length must be at least seven"
 msgstr ""
 
-#: fortran/options.c:482
+#: fortran/options.c:484
 #, gcc-internal-format
 msgid "Free line length must be at least three"
 msgstr ""
 
-#: fortran/options.c:485
+#: fortran/options.c:487
 #, gcc-internal-format, gfc-internal-format
 msgid "Maximum subrecord length cannot exceed %d"
 msgstr ""
 
-#: fortran/options.c:504
+#: fortran/options.c:506
 #, gcc-internal-format
 msgid "gfortran: Only one %<-J%> option allowed"
 msgstr ""
 
-#: fortran/options.c:576
+#: fortran/options.c:578
 #, gcc-internal-format
 msgid "Argument to %<-ffpe-trap%> is not valid: %s"
 msgstr ""
 
-#: fortran/options.c:578
+#: fortran/options.c:580
 #, gcc-internal-format
 msgid "Argument to %<-ffpe-summary%> is not valid: %s"
 msgstr ""
 
-#: fortran/options.c:627
+#: fortran/options.c:629
 #, gcc-internal-format
 msgid "Argument to %<-fcheck%> is not valid: %s"
 msgstr ""
 
-#: fortran/options.c:676
+#: fortran/options.c:678
 #, gcc-internal-format
 msgid "%<-static-libgfortran%> is not supported in this configuration"
 msgstr ""
 
-#: fortran/options.c:699
+#: fortran/options.c:701
 #, gcc-internal-format, gfc-internal-format
 msgid "Maximum supported identifier length is %d"
 msgstr ""
 
-#: fortran/options.c:714
+#: fortran/options.c:716
 #, gcc-internal-format
 msgid "Unrecognized option to %<-finit-logical%>: %s"
 msgstr ""
 
-#: fortran/options.c:730
+#: fortran/options.c:732
 #, gcc-internal-format
 msgid "The value of n in %<-finit-character=n%> must be between 0 and 127"
 msgstr ""
@@ -68554,144 +70646,144 @@ msgstr ""
 msgid "Unclassifiable OpenACC directive at %C"
 msgstr ""
 
-#: fortran/parse.c:872 fortran/parse.c:1082
+#: fortran/parse.c:872 fortran/parse.c:1086
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "OpenMP directives other than SIMD or DECLARE TARGET at %C may not appear in "
 "PURE procedures"
 msgstr ""
 
-#: fortran/parse.c:1066
+#: fortran/parse.c:1070
 #, gcc-internal-format, gfc-internal-format
 msgid "Unclassifiable OpenMP directive at %C"
 msgstr ""
 
-#: fortran/parse.c:1123
+#: fortran/parse.c:1159
 #, gcc-internal-format, gfc-internal-format
 msgid "Unclassifiable GCC directive at %C"
 msgstr ""
 
-#: fortran/parse.c:1125
+#: fortran/parse.c:1161
 #, gcc-internal-format, gfc-internal-format
 msgid "Unclassifiable GCC directive at %C, ignored"
 msgstr ""
 
-#: fortran/parse.c:1185 fortran/parse.c:1412
+#: fortran/parse.c:1221 fortran/parse.c:1448
 #, gcc-internal-format, gfc-internal-format
 msgid "Zero is not a valid statement label at %C"
 msgstr ""
 
-#: fortran/parse.c:1192 fortran/parse.c:1404
+#: fortran/parse.c:1228 fortran/parse.c:1440
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-numeric character in statement label at %C"
 msgstr ""
 
-#: fortran/parse.c:1204 fortran/parse.c:1453
+#: fortran/parse.c:1240 fortran/parse.c:1489
 #, gcc-internal-format, gfc-internal-format
 msgid "Semicolon at %C needs to be preceded by statement"
 msgstr ""
 
-#: fortran/parse.c:1211 fortran/parse.c:1468
+#: fortran/parse.c:1247 fortran/parse.c:1504
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement label without statement at %L"
 msgstr ""
 
-#: fortran/parse.c:1274 fortran/parse.c:1455
+#: fortran/parse.c:1310 fortran/parse.c:1491
 #, gcc-internal-format, gfc-internal-format
 msgid "Fortran 2008: Semicolon at %C without preceding statement"
 msgstr ""
 
-#: fortran/parse.c:1297 fortran/parse.c:1431
+#: fortran/parse.c:1333 fortran/parse.c:1467
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad continuation line at %C"
 msgstr ""
 
-#: fortran/parse.c:1730
+#: fortran/parse.c:1768
 #, gcc-internal-format, gfc-internal-format
 msgid "FORMAT statement at %L does not have a statement label"
 msgstr ""
 
-#: fortran/parse.c:2504
+#: fortran/parse.c:2548
 #, gcc-internal-format
 msgid "gfc_ascii_statement(): Bad statement code"
 msgstr ""
 
-#: fortran/parse.c:2646
+#: fortran/parse.c:2690
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement at %C"
 msgstr ""
 
-#: fortran/parse.c:2801
+#: fortran/parse.c:2845
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C cannot follow %s statement at %L"
 msgstr ""
 
-#: fortran/parse.c:2818
+#: fortran/parse.c:2862
 #, gcc-internal-format
 msgid "Unexpected end of file in %qs"
 msgstr ""
 
-#: fortran/parse.c:2853
+#: fortran/parse.c:2897
 #, gcc-internal-format
 msgid "Derived-type %qs with SEQUENCE must not have a CONTAINS section at %C"
 msgstr ""
 
-#: fortran/parse.c:2856
+#: fortran/parse.c:2900
 #, gcc-internal-format
 msgid "Derived-type %qs with BIND(C) must not have a CONTAINS section at %C"
 msgstr ""
 
-#: fortran/parse.c:2876
+#: fortran/parse.c:2920
 #, gcc-internal-format, gfc-internal-format
 msgid "Components in TYPE at %C must precede CONTAINS"
 msgstr ""
 
-#: fortran/parse.c:2880
+#: fortran/parse.c:2924
 #, gcc-internal-format, gfc-internal-format
 msgid "Type-bound procedure at %C"
 msgstr ""
 
-#: fortran/parse.c:2888
+#: fortran/parse.c:2932
 #, gcc-internal-format, gfc-internal-format
 msgid "GENERIC binding at %C"
 msgstr ""
 
-#: fortran/parse.c:2896
+#: fortran/parse.c:2940
 #, gcc-internal-format, gfc-internal-format
 msgid "FINAL procedure declaration at %C"
 msgstr ""
 
-#: fortran/parse.c:2908
+#: fortran/parse.c:2952
 #, gcc-internal-format, gfc-internal-format
 msgid "Derived type definition at %C with empty CONTAINS section"
 msgstr ""
 
-#: fortran/parse.c:2918 fortran/parse.c:3373
+#: fortran/parse.c:2962 fortran/parse.c:3417
 #, gcc-internal-format, gfc-internal-format
 msgid "PRIVATE statement in TYPE at %C must be inside a MODULE"
 msgstr ""
 
-#: fortran/parse.c:2925
+#: fortran/parse.c:2969
 #, gcc-internal-format, gfc-internal-format
 msgid "PRIVATE statement at %C must precede procedure bindings"
 msgstr ""
 
-#: fortran/parse.c:2932 fortran/parse.c:3386
+#: fortran/parse.c:2976 fortran/parse.c:3430
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate PRIVATE statement at %C"
 msgstr ""
 
-#: fortran/parse.c:2942
+#: fortran/parse.c:2986
 #, gcc-internal-format, gfc-internal-format
 msgid "SEQUENCE statement at %C must precede CONTAINS"
 msgstr ""
 
-#: fortran/parse.c:2946
+#: fortran/parse.c:2990
 #, gcc-internal-format, gfc-internal-format
 msgid "Already inside a CONTAINS block at %C"
 msgstr ""
 
-#: fortran/parse.c:3065
+#: fortran/parse.c:3109
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Component %s at %L of type LOCK_TYPE must have a codimension or be a "
@@ -68699,27 +70791,27 @@ msgid ""
 "pointer attribute"
 msgstr ""
 
-#: fortran/parse.c:3071
+#: fortran/parse.c:3115
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Pointer component %s at %L has a noncoarray subcomponent of type LOCK_TYPE, "
 "which must have a codimension or be a subcomponent of a coarray"
 msgstr ""
 
-#: fortran/parse.c:3076
+#: fortran/parse.c:3120
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocatable component %s at %L of type LOCK_TYPE must have a codimension"
 msgstr ""
 
-#: fortran/parse.c:3080
+#: fortran/parse.c:3124
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocatable component %s at %L must have a codimension as it has a "
 "noncoarray subcomponent of type LOCK_TYPE"
 msgstr ""
 
-#: fortran/parse.c:3085
+#: fortran/parse.c:3129
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Noncoarray component %s at %L of type LOCK_TYPE or with subcomponent of type "
@@ -68728,7 +70820,7 @@ msgid ""
 "subcomponent exists)"
 msgstr ""
 
-#: fortran/parse.c:3092
+#: fortran/parse.c:3136
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Noncoarray component %s at %L of type LOCK_TYPE or with subcomponent of type "
@@ -68737,7 +70829,7 @@ msgid ""
 "codimension or a coarray subcomponent)"
 msgstr ""
 
-#: fortran/parse.c:3102
+#: fortran/parse.c:3146
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Component %s at %L of type EVENT_TYPE must have a codimension or be a "
@@ -68745,27 +70837,27 @@ msgid ""
 "pointer attribute"
 msgstr ""
 
-#: fortran/parse.c:3108
+#: fortran/parse.c:3152
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Pointer component %s at %L has a noncoarray subcomponent of type EVENT_TYPE, "
 "which must have a codimension or be a subcomponent of a coarray"
 msgstr ""
 
-#: fortran/parse.c:3113
+#: fortran/parse.c:3157
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocatable component %s at %L of type EVENT_TYPE must have a codimension"
 msgstr ""
 
-#: fortran/parse.c:3117
+#: fortran/parse.c:3161
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Allocatable component %s at %L must have a codimension as it has a "
 "noncoarray subcomponent of type EVENT_TYPE"
 msgstr ""
 
-#: fortran/parse.c:3122
+#: fortran/parse.c:3166
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Noncoarray component %s at %L of type EVENT_TYPE or with subcomponent of "
@@ -68774,7 +70866,7 @@ msgid ""
 "subcomponent exists)"
 msgstr ""
 
-#: fortran/parse.c:3129
+#: fortran/parse.c:3173
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Noncoarray component %s at %L of type EVENT_TYPE or with subcomponent of "
@@ -68783,316 +70875,316 @@ msgid ""
 "codimension or a coarray subcomponent)"
 msgstr ""
 
-#: fortran/parse.c:3181
+#: fortran/parse.c:3225
 #, gcc-internal-format, gfc-internal-format
 msgid "failed to create map component '%s'"
 msgstr ""
 
-#: fortran/parse.c:3214
+#: fortran/parse.c:3258
 #, gcc-internal-format, gfc-internal-format
 msgid "failed to create union component '%s'"
 msgstr ""
 
-#: fortran/parse.c:3269
+#: fortran/parse.c:3313
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in nested structure declaration at %C"
 msgstr ""
 
-#: fortran/parse.c:3356
+#: fortran/parse.c:3400
 #, gcc-internal-format, gfc-internal-format
 msgid "FINAL declaration at %C must be inside CONTAINS"
 msgstr ""
 
-#: fortran/parse.c:3364
+#: fortran/parse.c:3408
 #, gcc-internal-format, gfc-internal-format
 msgid "Derived type definition at %C without components"
 msgstr ""
 
-#: fortran/parse.c:3380
+#: fortran/parse.c:3424
 #, gcc-internal-format, gfc-internal-format
 msgid "PRIVATE statement at %C must precede structure components"
 msgstr ""
 
-#: fortran/parse.c:3397
+#: fortran/parse.c:3441
 #, gcc-internal-format, gfc-internal-format
 msgid "SEQUENCE statement at %C must precede structure components"
 msgstr ""
 
-#: fortran/parse.c:3403
+#: fortran/parse.c:3447
 #, gcc-internal-format, gfc-internal-format
 msgid "SEQUENCE attribute at %C already specified in TYPE statement"
 msgstr ""
 
-#: fortran/parse.c:3408
+#: fortran/parse.c:3452
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate SEQUENCE statement at %C"
 msgstr ""
 
-#: fortran/parse.c:3418
+#: fortran/parse.c:3462
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTAINS block in derived type definition at %C"
 msgstr ""
 
-#: fortran/parse.c:3476
+#: fortran/parse.c:3520
 #, gcc-internal-format, gfc-internal-format
 msgid "ENUM declaration at %C has no ENUMERATORS"
 msgstr ""
 
-#: fortran/parse.c:3563
+#: fortran/parse.c:3607
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in INTERFACE block at %C"
 msgstr ""
 
-#: fortran/parse.c:3587
+#: fortran/parse.c:3631
 #, gcc-internal-format
 msgid ""
 "Name %qs of ABSTRACT INTERFACE at %C cannot be the same as an intrinsic type"
 msgstr ""
 
-#: fortran/parse.c:3621
+#: fortran/parse.c:3665
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement at %C in INTERFACE body"
 msgstr ""
 
-#: fortran/parse.c:3639
+#: fortran/parse.c:3683
 #, gcc-internal-format
 msgid ""
 "INTERFACE procedure %qs at %L has the same name as the enclosing procedure"
 msgstr ""
 
-#: fortran/parse.c:3769
+#: fortran/parse.c:3813
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement is not allowed inside of BLOCK at %C"
 msgstr ""
 
-#: fortran/parse.c:3801
+#: fortran/parse.c:3845
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement is not allowed inside of BLOCK DATA at %C"
 msgstr ""
 
-#: fortran/parse.c:3891
+#: fortran/parse.c:3935
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement must appear in a MODULE"
 msgstr ""
 
-#: fortran/parse.c:3899
+#: fortran/parse.c:3943
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C follows another accessibility specification"
 msgstr ""
 
-#: fortran/parse.c:3951
+#: fortran/parse.c:3995
 #, gcc-internal-format
 msgid "Bad kind expression for function %qs at %L"
 msgstr ""
 
-#: fortran/parse.c:3955
+#: fortran/parse.c:3999
 #, gcc-internal-format
 msgid "The type for function %qs at %L is not accessible"
 msgstr ""
 
-#: fortran/parse.c:4015
+#: fortran/parse.c:4059
 #, gcc-internal-format, gfc-internal-format
 msgid "ELSEWHERE statement at %C follows previous unmasked ELSEWHERE"
 msgstr ""
 
-#: fortran/parse.c:4037
+#: fortran/parse.c:4081
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in WHERE block at %C"
 msgstr ""
 
-#: fortran/parse.c:4096
+#: fortran/parse.c:4140
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in FORALL block at %C"
 msgstr ""
 
-#: fortran/parse.c:4147
+#: fortran/parse.c:4191
 #, gcc-internal-format, gfc-internal-format
 msgid "ELSE IF statement at %C cannot follow ELSE statement at %L"
 msgstr ""
 
-#: fortran/parse.c:4165
+#: fortran/parse.c:4209
 #, gcc-internal-format, gfc-internal-format
 msgid "Duplicate ELSE statements at %L and %C"
 msgstr ""
 
-#: fortran/parse.c:4226
+#: fortran/parse.c:4270
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected a CASE or END SELECT statement following SELECT CASE at %C"
 msgstr ""
 
-#: fortran/parse.c:4310
+#: fortran/parse.c:4354
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Expected TYPE IS, CLASS IS or END SELECT statement following SELECT TYPE at "
 "%C"
 msgstr ""
 
-#: fortran/parse.c:4386
+#: fortran/parse.c:4430
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected RANK or RANK DEFAULT following SELECT RANK at %C"
 msgstr ""
 
-#: fortran/parse.c:4447
+#: fortran/parse.c:4491
 #, gcc-internal-format
 msgid "Variable %qs at %C cannot be redefined inside loop beginning at %L"
 msgstr ""
 
-#: fortran/parse.c:4480
+#: fortran/parse.c:4524
 #, gcc-internal-format, gfc-internal-format
 msgid "End of nonblock DO statement at %C is within another block"
 msgstr ""
 
-#: fortran/parse.c:4490
+#: fortran/parse.c:4534
 #, gcc-internal-format, gfc-internal-format
 msgid "End of nonblock DO statement at %C is interwoven with another DO loop"
 msgstr ""
 
-#: fortran/parse.c:4516
+#: fortran/parse.c:4560
 #, gcc-internal-format, gfc-internal-format
 msgid "CRITICAL block inside of OpenACC region at %C"
 msgstr ""
 
-#: fortran/parse.c:4517
+#: fortran/parse.c:4561
 #, gcc-internal-format, gfc-internal-format
 msgid "CRITICAL block inside of OpenMP region at %C"
 msgstr ""
 
-#: fortran/parse.c:4543
+#: fortran/parse.c:4587
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement label in END CRITICAL at %C does not match CRITICAL label"
 msgstr ""
 
-#: fortran/parse.c:4612
+#: fortran/parse.c:4656
 #, gcc-internal-format, gfc-internal-format
 msgid "BLOCK construct at %C"
 msgstr ""
 
-#: fortran/parse.c:4646
+#: fortran/parse.c:4690
 #, gcc-internal-format, gfc-internal-format
 msgid "ASSOCIATE construct at %C"
 msgstr ""
 
-#: fortran/parse.c:4849
+#: fortran/parse.c:4893
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement label in ENDDO at %C doesn't match DO label"
 msgstr ""
 
-#: fortran/parse.c:4865
+#: fortran/parse.c:4909
 #, gcc-internal-format, gfc-internal-format
 msgid "Named block DO at %L requires matching ENDDO name"
 msgstr ""
 
-#: fortran/parse.c:5056
+#: fortran/parse.c:5099
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing !$OMP END ATOMIC after !$OMP ATOMIC CAPTURE at %C"
 msgstr ""
 
-#: fortran/parse.c:5072 fortran/parse.c:5134
+#: fortran/parse.c:5115 fortran/parse.c:5177
 #, gcc-internal-format, gfc-internal-format
 msgid "OpenACC directive inside of CRITICAL block at %C"
 msgstr ""
 
-#: fortran/parse.c:5109
+#: fortran/parse.c:5152
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting %s at %C"
 msgstr ""
 
-#: fortran/parse.c:5153
+#: fortran/parse.c:5196
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected DO loop at %C"
 msgstr ""
 
-#: fortran/parse.c:5173
+#: fortran/parse.c:5216
 #, gcc-internal-format, gfc-internal-format
 msgid "Redundant !$ACC END LOOP at %C"
 msgstr ""
 
-#: fortran/parse.c:5391
+#: fortran/parse.c:5435
 #, gcc-internal-format, gfc-internal-format
 msgid "Name after !$omp critical and !$omp end critical does not match at %C"
 msgstr ""
 
-#: fortran/parse.c:5449
+#: fortran/parse.c:5493
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C cannot terminate a non-block DO loop"
 msgstr ""
 
-#: fortran/parse.c:5463
+#: fortran/parse.c:5507
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %C after the first executable statement"
 msgstr ""
 
-#: fortran/parse.c:5596
+#: fortran/parse.c:5640
 #, gcc-internal-format
 msgid "%<GCC unroll%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.c:5599
+#: fortran/parse.c:5643
 #, gcc-internal-format
 msgid "%<GCC ivdep%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.c:5602
+#: fortran/parse.c:5646
 #, gcc-internal-format
 msgid "%<GCC vector%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.c:5605
+#: fortran/parse.c:5649
 #, gcc-internal-format
 msgid "%<GCC novector%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.c:5721
+#: fortran/parse.c:5765
 #, gcc-internal-format
 msgid "Contained procedure %qs at %C is already ambiguous"
 msgstr ""
 
-#: fortran/parse.c:5778
+#: fortran/parse.c:5822
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in CONTAINS section at %C"
 msgstr ""
 
-#: fortran/parse.c:5803
+#: fortran/parse.c:5847
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTAINS statement without FUNCTION or SUBROUTINE statement at %L"
 msgstr ""
 
-#: fortran/parse.c:5917
+#: fortran/parse.c:5961
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTAINS statement at %C is already in a contained program unit"
 msgstr ""
 
-#: fortran/parse.c:5969
+#: fortran/parse.c:6013
 #, gcc-internal-format
 msgid "Global binding name %qs at %L is already being used as a %s at %L"
 msgstr ""
 
-#: fortran/parse.c:5973
+#: fortran/parse.c:6017
 #, gcc-internal-format
 msgid "Global name %qs at %L is already being used as a %s at %L"
 msgstr ""
 
-#: fortran/parse.c:5979
+#: fortran/parse.c:6023
 #, gcc-internal-format
 msgid "Global binding name %qs at %L is already being used at %L"
 msgstr ""
 
-#: fortran/parse.c:5982
+#: fortran/parse.c:6026
 #, gcc-internal-format
 msgid "Global name %qs at %L is already being used at %L"
 msgstr ""
 
-#: fortran/parse.c:6004
+#: fortran/parse.c:6048
 #, gcc-internal-format, gfc-internal-format
 msgid "Blank BLOCK DATA at %C conflicts with prior BLOCK DATA at %L"
 msgstr ""
 
-#: fortran/parse.c:6030
+#: fortran/parse.c:6074
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in BLOCK DATA at %C"
 msgstr ""
 
-#: fortran/parse.c:6135
+#: fortran/parse.c:6179
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in MODULE at %C"
 msgstr ""
@@ -69100,7 +71192,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.c:6584
+#: fortran/parse.c:6636
 #, gcc-internal-format, gfc-internal-format
 msgid "Two main PROGRAMs at %L and %C"
 msgstr ""
@@ -69252,283 +71344,299 @@ msgstr ""
 msgid "match_string_constant(): Delimiter not found"
 msgstr ""
 
-#: fortran/primary.c:1258
+#: fortran/primary.c:1222
+#, gcc-internal-format, gfc-internal-format
+msgid "Substring start index (%ld) at %L below 1"
+msgstr ""
+
+#: fortran/primary.c:1228
+#, gcc-internal-format, gfc-internal-format
+msgid "Substring end index (%ld) at %L exceeds string length"
+msgstr ""
+
+#: fortran/primary.c:1313
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad kind for logical constant at %C"
 msgstr ""
 
-#: fortran/primary.c:1302
+#: fortran/primary.c:1357
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected PARAMETER symbol in complex constant at %C"
 msgstr ""
 
-#: fortran/primary.c:1313
+#: fortran/primary.c:1368
 #, gcc-internal-format, gfc-internal-format
 msgid "Numeric PARAMETER required in complex constant at %C"
 msgstr ""
 
-#: fortran/primary.c:1319
+#: fortran/primary.c:1374
 #, gcc-internal-format, gfc-internal-format
 msgid "Scalar PARAMETER required in complex constant at %C"
 msgstr ""
 
-#: fortran/primary.c:1323
+#: fortran/primary.c:1378
 #, gcc-internal-format, gfc-internal-format
 msgid "PARAMETER symbol in complex constant at %C"
 msgstr ""
 
-#: fortran/primary.c:1346
+#: fortran/primary.c:1401
 #, gcc-internal-format
 msgid "gfc_match_sym_complex_part(): Bad type"
 msgstr ""
 
-#: fortran/primary.c:1353
+#: fortran/primary.c:1408
 #, gcc-internal-format, gfc-internal-format
 msgid "Error converting PARAMETER constant in complex constant at %C"
 msgstr ""
 
-#: fortran/primary.c:1485
+#: fortran/primary.c:1540
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in COMPLEX constant at %C"
 msgstr ""
 
-#: fortran/primary.c:1612
+#: fortran/primary.c:1667
 #, gcc-internal-format
 msgid "Namelist %qs cannot be an argument at %L"
 msgstr ""
 
-#: fortran/primary.c:1714
+#: fortran/primary.c:1769
 #, gcc-internal-format
 msgid "Keyword %qs at %C has already appeared in the current argument list"
 msgstr ""
 
-#: fortran/primary.c:1781
+#: fortran/primary.c:1836
 #, gcc-internal-format, gfc-internal-format
 msgid "argument list function at %C"
 msgstr ""
 
-#: fortran/primary.c:1855
+#: fortran/primary.c:1910
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected alternate return label at %C"
 msgstr ""
 
-#: fortran/primary.c:1902
+#: fortran/primary.c:1957
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing keyword name in actual argument list at %C"
 msgstr ""
 
-#: fortran/primary.c:1948
+#: fortran/primary.c:2003
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in argument list at %C"
 msgstr ""
 
-#: fortran/primary.c:1969
+#: fortran/primary.c:2024
 #, gcc-internal-format
 msgid "extend_ref(): Bad tail"
 msgstr ""
 
-#: fortran/primary.c:2046
+#: fortran/primary.c:2102
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Array section designator, e.g. '(:)', is required besides the coarray "
 "designator '[...]' at %C"
 msgstr ""
 
-#: fortran/primary.c:2054
+#: fortran/primary.c:2110
 #, gcc-internal-format
 msgid "Coarray designator at %C but %qs is not a coarray"
 msgstr ""
 
-#: fortran/primary.c:2205
+#: fortran/primary.c:2261
 #, gcc-internal-format
 msgid "Symbol %qs at %C has no IMPLICIT type"
 msgstr ""
 
-#: fortran/primary.c:2212
+#: fortran/primary.c:2268
 #, gcc-internal-format
 msgid "Unexpected %<%c%> for nonderived-type variable %qs at %C"
 msgstr ""
 
-#: fortran/primary.c:2233
+#: fortran/primary.c:2289
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected structure component name at %C"
 msgstr ""
 
-#: fortran/primary.c:2253 fortran/primary.c:2387
+#: fortran/primary.c:2309 fortran/primary.c:2447
 #, gcc-internal-format, gfc-internal-format
 msgid "RE or IM part_ref at %C"
 msgstr ""
 
-#: fortran/primary.c:2272 fortran/primary.c:2392
+#: fortran/primary.c:2328 fortran/primary.c:2452
 #, gcc-internal-format, gfc-internal-format
 msgid "The RE or IM part_ref at %C must be applied to a COMPLEX expression"
 msgstr ""
 
-#: fortran/primary.c:2279 fortran/primary.c:2405
+#: fortran/primary.c:2335 fortran/primary.c:2465
 #, gcc-internal-format, gfc-internal-format
 msgid "The LEN part_ref at %C must be applied to a CHARACTER expression"
 msgstr ""
 
-#: fortran/primary.c:2338
+#: fortran/primary.c:2394
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected argument list at %C"
 msgstr ""
 
-#: fortran/primary.c:2421
+#: fortran/primary.c:2411
+#, gcc-internal-format
+msgid ""
+"%qs at %C is not an inquiry reference to an intrinsic type component %qs"
+msgstr ""
+
+#: fortran/primary.c:2481
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The KIND part_ref at %C must be applied to an expression of intrinsic type"
 msgstr ""
 
-#: fortran/primary.c:2449
+#: fortran/primary.c:2509
 #, gcc-internal-format
 msgid "Procedure pointer component %qs requires an argument list at %C"
 msgstr ""
 
-#: fortran/primary.c:2552
+#: fortran/primary.c:2612
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonpolymorphic reference to abstract type at %C"
 msgstr ""
 
-#: fortran/primary.c:2559
+#: fortran/primary.c:2619
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindexed procedure-pointer component at %C"
 msgstr ""
 
-#: fortran/primary.c:2595
+#: fortran/primary.c:2655
 #, gcc-internal-format
 msgid "gfc_variable_attr(): Expression isn't a variable"
 msgstr ""
 
-#: fortran/primary.c:2777
+#: fortran/primary.c:2837
 #, gcc-internal-format
 msgid "gfc_caf_attr(): Expression isn't a variable"
 msgstr ""
 
-#: fortran/primary.c:2834
+#: fortran/primary.c:2894
 #, gcc-internal-format
 msgid "gfc_caf_attr(): Bad array reference"
 msgstr ""
 
-#: fortran/primary.c:3007
-#, gcc-internal-format, gfc-internal-format
-msgid "Structure constructor with missing optional arguments at %C"
-msgstr ""
-
-#: fortran/primary.c:3016
+#: fortran/primary.c:3073
 #, gcc-internal-format
 msgid ""
 "No initializer for allocatable component %qs given in the structure "
 "constructor at %C"
 msgstr ""
 
-#: fortran/primary.c:3023
+#: fortran/primary.c:3084
+#, gcc-internal-format, gfc-internal-format
+msgid "Structure constructor with missing optional arguments at %C"
+msgstr ""
+
+#: fortran/primary.c:3093
 #, gcc-internal-format
 msgid ""
 "No initializer for component %qs given in the structure constructor at %C"
 msgstr ""
 
-#: fortran/primary.c:3071
+#: fortran/primary.c:3141
 #, gcc-internal-format
 msgid "Cannot construct ABSTRACT type %qs at %L"
 msgstr ""
 
-#: fortran/primary.c:3091
+#: fortran/primary.c:3161
 #, gcc-internal-format, gfc-internal-format
 msgid "Structure constructor with named arguments at %C"
 msgstr ""
 
-#: fortran/primary.c:3106
+#: fortran/primary.c:3176
 #, gcc-internal-format, gfc-internal-format
 msgid "Component initializer without name after component named %s at %L"
 msgstr ""
 
-#: fortran/primary.c:3111
+#: fortran/primary.c:3181
 #, gcc-internal-format, gfc-internal-format
 msgid "Too many components in structure constructor at %L"
 msgstr ""
 
-#: fortran/primary.c:3169
+#: fortran/primary.c:3239
 #, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER expression will be truncated in constructor (%ld/%ld) at %L"
 msgstr ""
 
-#: fortran/primary.c:3187
+#: fortran/primary.c:3257
 #, gcc-internal-format
 msgid "Component %qs is initialized twice in the structure constructor at %L"
 msgstr ""
 
-#: fortran/primary.c:3199
+#: fortran/primary.c:3269
 #, gcc-internal-format
 msgid ""
 "Coindexed expression to pointer component %qs in structure constructor at %L"
 msgstr ""
 
-#: fortran/primary.c:3253
+#: fortran/primary.c:3323
 #, gcc-internal-format
 msgid ""
 "component %qs at %L has already been set by a parent derived type constructor"
 msgstr ""
 
-#: fortran/primary.c:3409
+#: fortran/primary.c:3479
 #, gcc-internal-format, gfc-internal-format
 msgid "%%LOC() as an rvalue at %C"
 msgstr ""
 
-#: fortran/primary.c:3468
+#: fortran/primary.c:3538
 #, 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.c:3499 fortran/primary.c:3901
+#: fortran/primary.c:3569 fortran/primary.c:3971
 #, gcc-internal-format, gfc-internal-format
 msgid "Symbol at %C is not appropriate for an expression"
 msgstr ""
 
-#: fortran/primary.c:3604
+#: fortran/primary.c:3674
 #, gcc-internal-format
 msgid "Unexpected use of subroutine name %qs at %C"
 msgstr ""
 
-#: fortran/primary.c:3636
+#: fortran/primary.c:3706
 #, gcc-internal-format
 msgid "Statement function %qs requires argument list at %C"
 msgstr ""
 
-#: fortran/primary.c:3639
+#: fortran/primary.c:3709
 #, gcc-internal-format
 msgid "Function %qs requires an argument list at %C"
 msgstr ""
 
-#: fortran/primary.c:3689
+#: fortran/primary.c:3759
 #, gcc-internal-format
 msgid "Missing argument to %qs at %C"
 msgstr ""
 
-#: fortran/primary.c:3702
+#: fortran/primary.c:3772
 #, 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.c:3857
+#: fortran/primary.c:3927
 #, gcc-internal-format
 msgid "Missing argument list in function %qs at %C"
 msgstr ""
 
-#: fortran/primary.c:3971
+#: fortran/primary.c:4041
 #, gcc-internal-format
 msgid "Derived type %qs cannot be used as a variable at %C"
 msgstr ""
 
-#: fortran/primary.c:4012
+#: fortran/primary.c:4082
 #, gcc-internal-format, gfc-internal-format
 msgid "Named constant at %C in an EQUIVALENCE"
 msgstr ""
 
-#: fortran/primary.c:4047
+#: fortran/primary.c:4117
 #, gcc-internal-format
 msgid "%qs at %C is not a variable"
 msgstr ""
@@ -69743,181 +71851,186 @@ msgstr ""
 msgid "ENTRY result %s cannot be of type %s in FUNCTION %s at %L"
 msgstr ""
 
-#: fortran/resolve.c:948
+#: fortran/resolve.c:945
+#, gcc-internal-format
+msgid "Global entity %qs at %L cannot appear in a COMMON block at %L"
+msgstr ""
+
+#: fortran/resolve.c:955
 #, gcc-internal-format, gfc-internal-format
 msgid "COMMON block at %L"
 msgstr ""
 
-#: fortran/resolve.c:955
+#: fortran/resolve.c:962
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L is in COMMON but only in BLOCK DATA initialization is "
 "allowed"
 msgstr ""
 
-#: fortran/resolve.c:959
+#: fortran/resolve.c:966
 #, gcc-internal-format
 msgid ""
 "Initialized variable %qs at %L is in a blank COMMON but initialization is "
 "only allowed in named common blocks"
 msgstr ""
 
-#: fortran/resolve.c:966
+#: fortran/resolve.c:973
 #, gcc-internal-format
 msgid "%qs in cannot appear in COMMON at %L [F2008:C5100]"
 msgstr ""
 
-#: fortran/resolve.c:974
+#: fortran/resolve.c:981
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs in COMMON at %L has neither the SEQUENCE nor the "
 "BIND(C) attribute"
 msgstr ""
 
-#: fortran/resolve.c:978
+#: fortran/resolve.c:985
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs in COMMON at %L has an ultimate component that is "
 "allocatable"
 msgstr ""
 
-#: fortran/resolve.c:982
+#: fortran/resolve.c:989
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs in COMMON at %L may not have default initializer"
 msgstr ""
 
-#: fortran/resolve.c:1026
+#: fortran/resolve.c:1033
 #, gcc-internal-format
 msgid ""
 "In Fortran 2003 COMMON %qs block at %L is a global identifier and must thus "
 "have the same binding name as the same-named COMMON block at %L: %s vs %s"
 msgstr ""
 
-#: fortran/resolve.c:1040
+#: fortran/resolve.c:1047
 #, gcc-internal-format
 msgid "COMMON block %qs at %L uses the same global identifier as entity at %L"
 msgstr ""
 
-#: fortran/resolve.c:1048
+#: fortran/resolve.c:1055
 #, gcc-internal-format
 msgid ""
 "Fortran 2008: COMMON block %qs with binding label at %L sharing the "
 "identifier with global non-COMMON-block entity at %L"
 msgstr ""
 
-#: fortran/resolve.c:1070
+#: fortran/resolve.c:1077
 #, gcc-internal-format
 msgid ""
 "COMMON block at %L with binding label %qs uses the same global identifier as "
 "entity at %L"
 msgstr ""
 
-#: fortran/resolve.c:1091
+#: fortran/resolve.c:1098
 #, gcc-internal-format
 msgid "COMMON block %qs at %L is used as PARAMETER at %L"
 msgstr ""
 
-#: fortran/resolve.c:1095
+#: fortran/resolve.c:1102
 #, gcc-internal-format
 msgid "COMMON block %qs at %L cannot have the EXTERNAL attribute"
 msgstr ""
 
-#: fortran/resolve.c:1099
+#: fortran/resolve.c:1106
 #, gcc-internal-format
 msgid "COMMON block %qs at %L is also an intrinsic procedure"
 msgstr ""
 
-#: fortran/resolve.c:1103
+#: fortran/resolve.c:1110
 #, gcc-internal-format
 msgid "COMMON block %qs at %L that is also a function result"
 msgstr ""
 
-#: fortran/resolve.c:1108
+#: fortran/resolve.c:1115
 #, gcc-internal-format
 msgid "COMMON block %qs at %L that is also a global procedure"
 msgstr ""
 
-#: fortran/resolve.c:1175
+#: fortran/resolve.c:1182
 #, gcc-internal-format
 msgid "The KIND parameter %qs in the PDT constructor at %C has no value"
 msgstr ""
 
-#: fortran/resolve.c:1311
+#: fortran/resolve.c:1318
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The rank of the element in the structure constructor at %L does not match "
 "that of the component (%d/%d)"
 msgstr ""
 
-#: fortran/resolve.c:1332
+#: fortran/resolve.c:1339
 #, gcc-internal-format
 msgid ""
 "The element in the structure constructor at %L, for pointer component %qs, "
 "is %s but should be %s"
 msgstr ""
 
-#: fortran/resolve.c:1398
+#: fortran/resolve.c:1405
 #, gcc-internal-format
 msgid ""
 "The NULL in the structure constructor at %L is being applied to component "
 "%qs, which is neither a POINTER nor ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.c:1432
+#: fortran/resolve.c:1439
 #, gcc-internal-format
 msgid ""
 "Interface mismatch for procedure-pointer component %qs in structure "
 "constructor at %L: %s"
 msgstr ""
 
-#: fortran/resolve.c:1448
+#: fortran/resolve.c:1455
 #, gcc-internal-format
 msgid ""
 "The element in the structure constructor at %L, for pointer component %qs "
 "should be a POINTER or a TARGET"
 msgstr ""
 
-#: fortran/resolve.c:1477
+#: fortran/resolve.c:1484
 #, gcc-internal-format
 msgid ""
 "Invalid expression in the structure constructor for pointer component %qs at "
 "%L in PURE procedure"
 msgstr ""
 
-#: fortran/resolve.c:1601
+#: fortran/resolve.c:1608
 #, 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.c:1663
+#: fortran/resolve.c:1670
 #, gcc-internal-format
 msgid "%qs at %L is ambiguous"
 msgstr ""
 
-#: fortran/resolve.c:1667
+#: fortran/resolve.c:1674
 #, gcc-internal-format
 msgid "GENERIC procedure %qs is not allowed as an actual argument at %L"
 msgstr ""
 
-#: fortran/resolve.c:1788
+#: fortran/resolve.c:1795
 #, gcc-internal-format
 msgid "Type specified for intrinsic function %qs at %L is ignored"
 msgstr ""
 
-#: fortran/resolve.c:1801
+#: fortran/resolve.c:1808
 #, gcc-internal-format
 msgid "Intrinsic subroutine %qs at %L shall not have a type specifier"
 msgstr ""
 
-#: fortran/resolve.c:1812
+#: fortran/resolve.c:1819
 #, gcc-internal-format
 msgid "%qs declared INTRINSIC at %L does not exist"
 msgstr ""
 
-#: fortran/resolve.c:1825
+#: fortran/resolve.c:1832
 #, gcc-internal-format
 msgid ""
 "The intrinsic %qs declared INTRINSIC at %L is not available in the current "
@@ -69925,89 +72038,89 @@ msgid ""
 "fall-intrinsics%> in order to use it."
 msgstr ""
 
-#: fortran/resolve.c:1861
+#: fortran/resolve.c:1868
 #, gcc-internal-format
 msgid ""
 "Non-RECURSIVE procedure %qs at %L is possibly calling itself recursively.  "
 "Declare it RECURSIVE or use %<-frecursive%>"
 msgstr ""
 
-#: fortran/resolve.c:1919 fortran/resolve.c:10201 fortran/resolve.c:11900
+#: fortran/resolve.c:1926 fortran/resolve.c:10250 fortran/resolve.c:11954
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d referenced at %L is never defined"
 msgstr ""
 
-#: fortran/resolve.c:1951
+#: fortran/resolve.c:1958
 #, gcc-internal-format
 msgid "Derived type %qs is used as an actual argument at %L"
 msgstr ""
 
-#: fortran/resolve.c:1969
+#: fortran/resolve.c:1976
 #, gcc-internal-format
 msgid "Statement function %qs at %L is not allowed as an actual argument"
 msgstr ""
 
-#: fortran/resolve.c:1977
+#: fortran/resolve.c:1984
 #, gcc-internal-format
 msgid "Intrinsic %qs at %L is not allowed as an actual argument"
 msgstr ""
 
-#: fortran/resolve.c:1984
+#: fortran/resolve.c:1991
 #, gcc-internal-format
 msgid "Internal procedure %qs is used as actual argument at %L"
 msgstr ""
 
-#: fortran/resolve.c:1992
+#: fortran/resolve.c:1999
 #, gcc-internal-format
 msgid ""
 "ELEMENTAL non-INTRINSIC procedure %qs is not allowed as an actual argument "
 "at %L"
 msgstr ""
 
-#: fortran/resolve.c:2019
+#: fortran/resolve.c:2026
 #, gcc-internal-format
 msgid ""
 "Unable to find a specific INTRINSIC procedure for the reference %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:2041
+#: fortran/resolve.c:2048
 #, gcc-internal-format
 msgid "Symbol %qs at %L is ambiguous"
 msgstr ""
 
-#: fortran/resolve.c:2096
+#: fortran/resolve.c:2103
 #, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L is not of numeric type"
 msgstr ""
 
-#: fortran/resolve.c:2103
+#: fortran/resolve.c:2110
 #, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L cannot be an array or an array section"
 msgstr ""
 
-#: fortran/resolve.c:2117
+#: fortran/resolve.c:2124
 #, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L is not allowed in this context"
 msgstr ""
 
-#: fortran/resolve.c:2129
+#: fortran/resolve.c:2136
 #, gcc-internal-format, gfc-internal-format
 msgid "Passing internal procedure at %L by location not allowed"
 msgstr ""
 
-#: fortran/resolve.c:2140
+#: fortran/resolve.c:2147
 #, gcc-internal-format
 msgid ""
 "ELEMENTAL procedure pointer component %qs is not allowed as an actual "
 "argument at %L"
 msgstr ""
 
-#: fortran/resolve.c:2149
+#: fortran/resolve.c:2156
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindexed actual argument at %L with ultimate pointer component"
 msgstr ""
 
-#: fortran/resolve.c:2296
+#: fortran/resolve.c:2303
 #, gcc-internal-format
 msgid ""
 "%qs at %L is an array and OPTIONAL; If it is not present, then it cannot be "
@@ -70015,86 +72128,86 @@ msgid ""
 "argument with the same rank (Fortran 2018, 15.5.2.12)"
 msgstr ""
 
-#: fortran/resolve.c:2334
+#: fortran/resolve.c:2341
 #, 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.c:2608
+#: fortran/resolve.c:2615
 #, gcc-internal-format
 msgid "Return type mismatch of function %qs at %L (%s/%s)"
 msgstr ""
 
-#: fortran/resolve.c:2635
+#: fortran/resolve.c:2642
 #, gcc-internal-format
 msgid "Interface mismatch in global procedure %qs at %L: %s"
 msgstr ""
 
-#: fortran/resolve.c:2741
+#: fortran/resolve.c:2748
 #, gcc-internal-format
 msgid "There is no specific function for the generic %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:2761
+#: fortran/resolve.c:2768
 #, gcc-internal-format
 msgid ""
 "Generic function %qs at %L is not consistent with a specific intrinsic "
 "interface"
 msgstr ""
 
-#: fortran/resolve.c:2799
+#: fortran/resolve.c:2806
 #, gcc-internal-format
 msgid "Function %qs at %L is INTRINSIC but is not compatible with an intrinsic"
 msgstr ""
 
-#: fortran/resolve.c:2854
+#: fortran/resolve.c:2861
 #, gcc-internal-format
 msgid "Unable to resolve the specific function %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:2950
+#: fortran/resolve.c:2957
 #, gcc-internal-format
 msgid "Function %qs at %L has no IMPLICIT type; did you mean %qs?"
 msgstr ""
 
-#: fortran/resolve.c:2954 fortran/resolve.c:17039
+#: fortran/resolve.c:2961 fortran/resolve.c:17124
 #, gcc-internal-format
 msgid "Function %qs at %L has no IMPLICIT type"
 msgstr ""
 
-#: fortran/resolve.c:3078
+#: fortran/resolve.c:3085
 #, gcc-internal-format
 msgid "Reference to impure function %qs at %L inside a FORALL %s"
 msgstr ""
 
-#: fortran/resolve.c:3085
+#: fortran/resolve.c:3092
 #, gcc-internal-format
 msgid "Reference to impure function %qs at %L inside a DO CONCURRENT %s"
 msgstr ""
 
-#: fortran/resolve.c:3092
+#: fortran/resolve.c:3099
 #, gcc-internal-format
 msgid "Reference to impure function %qs at %L within a PURE procedure"
 msgstr ""
 
-#: fortran/resolve.c:3159
+#: fortran/resolve.c:3166
 #, gcc-internal-format
 msgid "Unexpected junk after %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:3170
+#: fortran/resolve.c:3177
 #, gcc-internal-format
 msgid "%qs at %L is not a function"
 msgstr ""
 
-#: fortran/resolve.c:3178 fortran/resolve.c:3670
+#: fortran/resolve.c:3185 fortran/resolve.c:3682
 #, gcc-internal-format
 msgid "ABSTRACT INTERFACE %qs must not be referenced at %L"
 msgstr ""
 
-#: fortran/resolve.c:3190
+#: fortran/resolve.c:3197
 #, gcc-internal-format
 msgid ""
 "ABSTRACT INTERFACE %qs at %L must not have an assumed character length "
@@ -70102,354 +72215,354 @@ msgid ""
 msgstr ""
 
 #. Internal procedures are taken care of in resolve_contained_fntype.
-#: fortran/resolve.c:3233
+#: fortran/resolve.c:3240
 #, 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.c:3267
+#: fortran/resolve.c:3274
 #, gcc-internal-format
 msgid "resolve_function(): bad function type"
 msgstr ""
 
-#: fortran/resolve.c:3281
+#: fortran/resolve.c:3288
 #, 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.c:3297
+#: fortran/resolve.c:3304
 #, gcc-internal-format
 msgid ""
 "User defined non-ELEMENTAL function %qs at %L not allowed in WORKSHARE "
 "construct"
 msgstr ""
 
-#: fortran/resolve.c:3359
+#: fortran/resolve.c:3366
 #, gcc-internal-format
 msgid ""
 "ENTRY %qs at %L cannot be called recursively, as function %qs is not "
 "RECURSIVE"
 msgstr ""
 
-#: fortran/resolve.c:3363
+#: fortran/resolve.c:3370
 #, gcc-internal-format
 msgid "Function %qs at %L cannot be called recursively, as it is not RECURSIVE"
 msgstr ""
 
-#: fortran/resolve.c:3414
+#: fortran/resolve.c:3410
+#, gcc-internal-format
+msgid "Using function %qs at %L is deprecated"
+msgstr ""
+
+#: fortran/resolve.c:3426
 #, gcc-internal-format
 msgid "Subroutine call to %qs in FORALL block at %L is not PURE"
 msgstr ""
 
-#: fortran/resolve.c:3420
+#: fortran/resolve.c:3432
 #, gcc-internal-format
 msgid "Subroutine call to %qs in DO CONCURRENT block at %L is not PURE"
 msgstr ""
 
-#: fortran/resolve.c:3426
+#: fortran/resolve.c:3438
 #, gcc-internal-format
 msgid "Subroutine call to %qs at %L is not PURE"
 msgstr ""
 
-#: fortran/resolve.c:3494
+#: fortran/resolve.c:3506
 #, gcc-internal-format
 msgid "There is no specific subroutine for the generic %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:3503
+#: fortran/resolve.c:3515
 #, gcc-internal-format
 msgid ""
 "Generic subroutine %qs at %L is not consistent with an intrinsic subroutine "
 "interface"
 msgstr ""
 
-#: fortran/resolve.c:3538
+#: fortran/resolve.c:3550
 #, gcc-internal-format
 msgid ""
 "Subroutine %qs at %L is INTRINSIC but is not compatible with an intrinsic"
 msgstr ""
 
-#: fortran/resolve.c:3583
+#: fortran/resolve.c:3595
 #, gcc-internal-format
 msgid "Unable to resolve the specific subroutine %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:3641
+#: fortran/resolve.c:3653
 #, gcc-internal-format
 msgid "%qs at %L has a type, which is not consistent with the CALL at %L"
 msgstr ""
 
-#: fortran/resolve.c:3680
+#: fortran/resolve.c:3692
 #, gcc-internal-format
 msgid ""
 "ENTRY %qs at %L cannot be called recursively, as subroutine %qs is not "
 "RECURSIVE"
 msgstr ""
 
-#: fortran/resolve.c:3684
+#: fortran/resolve.c:3696
 #, gcc-internal-format
 msgid ""
 "SUBROUTINE %qs at %L cannot be called recursively, as it is not RECURSIVE"
 msgstr ""
 
-#: fortran/resolve.c:3729
+#: fortran/resolve.c:3741
 #, gcc-internal-format
 msgid "resolve_subroutine(): bad function type"
 msgstr ""
 
-#: fortran/resolve.c:3767
+#: fortran/resolve.c:3758
+#, gcc-internal-format
+msgid "Using subroutine %qs at %L is deprecated"
+msgstr ""
+
+#: fortran/resolve.c:3785
 #, gcc-internal-format, gfc-internal-format
 msgid "Shapes for operands at %L and %L are not conformable"
 msgstr ""
 
-#: fortran/resolve.c:3819
+#: fortran/resolve.c:3837
 #, gcc-internal-format
 msgid "logical_to_bitwise(): Bad intrinsic"
 msgstr ""
 
-#: fortran/resolve.c:3922
+#: fortran/resolve.c:3940
 #, gcc-internal-format
 msgid "Impure function %qs at %L might not be evaluated"
 msgstr ""
 
-#: fortran/resolve.c:3926
+#: fortran/resolve.c:3944
 #, gcc-internal-format, gfc-internal-format
 msgid "Impure function at %L might not be evaluated"
 msgstr ""
 
-#: fortran/resolve.c:4002
+#: fortran/resolve.c:4020
 #, gcc-internal-format
 msgid "BOZ literal constant at %L cannot be an operand of unary operator %qs"
 msgstr ""
 
-#: fortran/resolve.c:4023
+#: fortran/resolve.c:4041
 #, gcc-internal-format
 msgid "Operands at %L and %L cannot appear as operands of binary operator %qs"
 msgstr ""
 
-#: fortran/resolve.c:4194 fortran/resolve.c:4209
+#: fortran/resolve.c:4212 fortran/resolve.c:4227
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "BOZ literal constant near %L cannot appear as an operand of a relational "
 "operator"
 msgstr ""
 
-#: fortran/resolve.c:4248
+#: fortran/resolve.c:4266
 #, gcc-internal-format, gfc-internal-format
 msgid "Equality comparison for %s at %L"
 msgstr ""
 
-#: fortran/resolve.c:4250
+#: fortran/resolve.c:4268
 #, gcc-internal-format, gfc-internal-format
 msgid "Inequality comparison for %s at %L"
 msgstr ""
 
-#: fortran/resolve.c:4306
+#: fortran/resolve.c:4324
 #, gcc-internal-format
 msgid "resolve_operator(): Bad intrinsic"
 msgstr ""
 
-#: fortran/resolve.c:4476 fortran/resolve.c:4499
+#: fortran/resolve.c:4494 fortran/resolve.c:4517
 #, gcc-internal-format
 msgid "compare_bound_int(): Bad expression"
 msgstr ""
 
-#: fortran/resolve.c:4594
+#: fortran/resolve.c:4612
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld < %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.c:4599
+#: fortran/resolve.c:4617
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld < %ld) in codimension %d"
 msgstr ""
 
-#: fortran/resolve.c:4609
+#: fortran/resolve.c:4627
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld > %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.c:4614
+#: fortran/resolve.c:4632
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld > %ld) in codimension %d"
 msgstr ""
 
-#: fortran/resolve.c:4634
+#: fortran/resolve.c:4652
 #, gcc-internal-format, gfc-internal-format
 msgid "Illegal stride of zero at %L"
 msgstr ""
 
-#: fortran/resolve.c:4651
+#: fortran/resolve.c:4669
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Lower array reference at %L is out of bounds (%ld < %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.c:4659
+#: fortran/resolve.c:4677
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Lower array reference at %L is out of bounds (%ld > %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.c:4675
+#: fortran/resolve.c:4693
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Upper array reference at %L is out of bounds (%ld < %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.c:4684
+#: fortran/resolve.c:4702
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Upper array reference at %L is out of bounds (%ld > %ld) in dimension %d"
 msgstr ""
 
-#: fortran/resolve.c:4700
+#: fortran/resolve.c:4718
 #, gcc-internal-format
 msgid "check_dimension(): Bad array reference"
 msgstr ""
 
-#: fortran/resolve.c:4723
+#: fortran/resolve.c:4741
 #, gcc-internal-format, gfc-internal-format
 msgid "Rightmost upper bound of assumed size array section not specified at %L"
 msgstr ""
 
-#: fortran/resolve.c:4733
+#: fortran/resolve.c:4751
 #, gcc-internal-format, gfc-internal-format
 msgid "Rank mismatch in array reference at %L (%d/%d)"
 msgstr ""
 
-#: fortran/resolve.c:4741
+#: fortran/resolve.c:4759
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindex rank mismatch in array reference at %L (%d/%d)"
 msgstr ""
 
-#: fortran/resolve.c:4757
+#: fortran/resolve.c:4775
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindex of codimension %d must be a scalar at %L"
 msgstr ""
 
-#: fortran/resolve.c:4785
+#: fortran/resolve.c:4803
 #, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.c:4791
+#: fortran/resolve.c:4809
 #, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L must be of INTEGER type, found %s"
 msgstr ""
 
-#: fortran/resolve.c:4797
+#: fortran/resolve.c:4815
 #, gcc-internal-format, gfc-internal-format
 msgid "REAL array index at %L"
 msgstr ""
 
-#: fortran/resolve.c:4836
+#: fortran/resolve.c:4854
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument dim at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.c:4843
+#: fortran/resolve.c:4861
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument dim at %L must be of INTEGER type"
 msgstr ""
 
-#: fortran/resolve.c:4892
+#: fortran/resolve.c:4919
 #, gcc-internal-format
 msgid "find_array_spec(): Missing spec"
 msgstr ""
 
-#: fortran/resolve.c:4903
+#: fortran/resolve.c:4930
 #, gcc-internal-format
 msgid "find_array_spec(): unused as(1)"
 msgstr ""
 
-#: fortran/resolve.c:4915
+#: fortran/resolve.c:4942
 #, gcc-internal-format
 msgid "find_array_spec(): unused as(2)"
 msgstr ""
 
-#: fortran/resolve.c:4958
+#: fortran/resolve.c:4985
 #, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L is an array of rank %d"
 msgstr ""
 
-#: fortran/resolve.c:5056
+#: fortran/resolve.c:5083
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L must be of type INTEGER"
 msgstr ""
 
-#: fortran/resolve.c:5063
+#: fortran/resolve.c:5090
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.c:5072
-#, gcc-internal-format, gfc-internal-format
-msgid "Substring start index at %L is less than one"
-msgstr ""
-
-#: fortran/resolve.c:5085
+#: fortran/resolve.c:5112
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L must be of type INTEGER"
 msgstr ""
 
-#: fortran/resolve.c:5092
+#: fortran/resolve.c:5119
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.c:5102
-#, gcc-internal-format, gfc-internal-format
-msgid "Substring end index at %L exceeds the string length"
-msgstr ""
-
-#: fortran/resolve.c:5112
+#: fortran/resolve.c:5139
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L is too large"
 msgstr ""
 
-#: fortran/resolve.c:5302
+#: fortran/resolve.c:5329
 #, gcc-internal-format
 msgid "resolve_ref(): Bad array reference"
 msgstr ""
 
-#: fortran/resolve.c:5316
+#: fortran/resolve.c:5343
 #, 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.c:5326
+#: fortran/resolve.c:5353
 #, 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.c:5372
+#: fortran/resolve.c:5399
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Two or more part references with nonzero rank must not be specified at %L"
 msgstr ""
 
-#: fortran/resolve.c:5464
+#: fortran/resolve.c:5491
 #, gcc-internal-format
 msgid "gfc_expression_rank(): Two array specs"
 msgstr ""
 
-#: fortran/resolve.c:5546
+#: fortran/resolve.c:5573
 #, 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.c:5556
+#: fortran/resolve.c:5583
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L may only be used as actual argument"
 msgstr ""
@@ -70458,14 +72571,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.c:5566
+#: fortran/resolve.c:5593
 #, 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.c:5585
+#: fortran/resolve.c:5612
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank variable %s at %L may only be used as actual argument"
 msgstr ""
@@ -70474,309 +72587,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.c:5595
+#: fortran/resolve.c:5622
 #, 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.c:5606
+#: fortran/resolve.c:5633
 #, 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.c:5615
+#: fortran/resolve.c:5642
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L shall not have a subobject reference"
 msgstr ""
 
-#: fortran/resolve.c:5631
+#: fortran/resolve.c:5658
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank variable %s at %L shall not have a subobject reference"
 msgstr ""
 
-#: fortran/resolve.c:5811
+#: fortran/resolve.c:5838
 #, 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.c:5816
+#: fortran/resolve.c:5843
 #, gcc-internal-format
 msgid ""
 "Variable %qs is used at %L before the ENTRY statement in which it is a "
 "parameter"
 msgstr ""
 
-#: fortran/resolve.c:5886
+#: fortran/resolve.c:5913
 #, gcc-internal-format, gfc-internal-format
 msgid "Polymorphic subobject of coindexed object at %L"
 msgstr ""
 
-#: fortran/resolve.c:5899
+#: fortran/resolve.c:5926
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindexed object with polymorphic allocatable subcomponent at %L"
 msgstr ""
 
-#: fortran/resolve.c:6143 fortran/resolve.c:6295
+#: fortran/resolve.c:5942
+#, gcc-internal-format
+msgid "Using variable %qs at %L is deprecated"
+msgstr ""
+
+#: fortran/resolve.c:6030
+#, 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.c:6184 fortran/resolve.c:6336
 #, gcc-internal-format, gfc-internal-format
 msgid "Error in typebound call at %L"
 msgstr ""
 
-#: fortran/resolve.c:6259
+#: fortran/resolve.c:6300
 #, gcc-internal-format, gfc-internal-format
 msgid "Passed-object at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.c:6266
+#: fortran/resolve.c:6307
 #, gcc-internal-format
 msgid ""
 "Base object for procedure-pointer component call at %L is of ABSTRACT type "
 "%qs"
 msgstr ""
 
-#: fortran/resolve.c:6305
+#: fortran/resolve.c:6346
 #, gcc-internal-format
 msgid "Base object for type-bound procedure call at %L is of ABSTRACT type %qs"
 msgstr ""
 
-#: fortran/resolve.c:6314
+#: fortran/resolve.c:6355
 #, 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.c:6502
+#: fortran/resolve.c:6543
 #, gcc-internal-format
 msgid ""
 "Found no matching specific binding for the call to the GENERIC %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:6536
+#: fortran/resolve.c:6577
 #, gcc-internal-format
 msgid "%qs at %L should be a SUBROUTINE"
 msgstr ""
 
-#: fortran/resolve.c:6588
+#: fortran/resolve.c:6629
 #, gcc-internal-format
 msgid "%qs at %L should be a FUNCTION"
 msgstr ""
 
-#: fortran/resolve.c:7123
+#: fortran/resolve.c:7164
 #, gcc-internal-format
 msgid "gfc_resolve_expr(): Bad expression type"
 msgstr ""
 
-#: fortran/resolve.c:7156
+#: fortran/resolve.c:7197
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be a scalar"
 msgstr ""
 
-#: fortran/resolve.c:7166
+#: fortran/resolve.c:7207
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be integer"
 msgstr ""
 
-#: fortran/resolve.c:7170 fortran/resolve.c:7177
+#: fortran/resolve.c:7211 fortran/resolve.c:7218
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be INTEGER"
 msgstr ""
 
-#: fortran/resolve.c:7232
+#: fortran/resolve.c:7273
 #, gcc-internal-format, gfc-internal-format
 msgid "Step expression in DO loop at %L cannot be zero"
 msgstr ""
 
-#: fortran/resolve.c:7255
+#: fortran/resolve.c:7296
 #, gcc-internal-format, gfc-internal-format
 msgid "DO loop at %L will be executed zero times"
 msgstr ""
 
-#: fortran/resolve.c:7272
+#: fortran/resolve.c:7313
 #, gcc-internal-format, gfc-internal-format
 msgid "DO loop at %L is undefined as it overflows"
 msgstr ""
 
-#: fortran/resolve.c:7278
+#: fortran/resolve.c:7319
 #, gcc-internal-format, gfc-internal-format
 msgid "DO loop at %L is undefined as it underflows"
 msgstr ""
 
-#: fortran/resolve.c:7339
+#: fortran/resolve.c:7380
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL index-name at %L must be a scalar INTEGER"
 msgstr ""
 
-#: fortran/resolve.c:7344
+#: fortran/resolve.c:7385
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL start expression at %L must be a scalar INTEGER"
 msgstr ""
 
-#: fortran/resolve.c:7351
+#: fortran/resolve.c:7392
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL end expression at %L must be a scalar INTEGER"
 msgstr ""
 
-#: fortran/resolve.c:7359
+#: fortran/resolve.c:7400
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL stride expression at %L must be a scalar %s"
 msgstr ""
 
-#: fortran/resolve.c:7364
+#: fortran/resolve.c:7405
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL stride expression at %L cannot be zero"
 msgstr ""
 
-#: fortran/resolve.c:7377
+#: fortran/resolve.c:7418
 #, gcc-internal-format
 msgid "FORALL index %qs may not appear in triplet specification at %L"
 msgstr ""
 
-#: fortran/resolve.c:7481 fortran/resolve.c:7778
+#: fortran/resolve.c:7522 fortran/resolve.c:7819
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L must be ALLOCATABLE or a POINTER"
 msgstr ""
 
-#: fortran/resolve.c:7489 fortran/resolve.c:7742
+#: fortran/resolve.c:7530 fortran/resolve.c:7783
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindexed allocatable object at %L"
 msgstr ""
 
-#: fortran/resolve.c:7599
+#: fortran/resolve.c:7640
 #, 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.c:7630
+#: fortran/resolve.c:7671
 #, gcc-internal-format, gfc-internal-format
 msgid "Source-expr at %L and allocate-object at %L must have the same shape"
 msgstr ""
 
-#: fortran/resolve.c:7789
+#: fortran/resolve.c:7830
 #, gcc-internal-format, gfc-internal-format
 msgid "Type of entity at %L is type incompatible with source-expr at %L"
 msgstr ""
 
-#: fortran/resolve.c:7801
+#: fortran/resolve.c:7842
 #, 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.c:7815
+#: fortran/resolve.c:7856
 #, 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.c:7830
+#: fortran/resolve.c:7871
 #, 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.c:7843
+#: fortran/resolve.c:7884
 #, 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.c:7861
+#: fortran/resolve.c:7902
 #, 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.c:7942 fortran/resolve.c:7957
+#: fortran/resolve.c:7983 fortran/resolve.c:7998
 #, gcc-internal-format, gfc-internal-format
 msgid "Array specification required in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.c:7949
+#: fortran/resolve.c:7990
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Array specification or array-valued SOURCE= expression required in ALLOCATE "
 "statement at %L"
 msgstr ""
 
-#: fortran/resolve.c:7974
+#: fortran/resolve.c:8015
 #, gcc-internal-format, gfc-internal-format
 msgid "Coarray specification required in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.c:7983 fortran/resolve.c:8012 fortran/resolve.c:8040
+#: fortran/resolve.c:8024 fortran/resolve.c:8053 fortran/resolve.c:8081
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad array specification in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.c:7989
+#: fortran/resolve.c:8030
 #, gcc-internal-format, gfc-internal-format
 msgid "Upper cobound is less than lower cobound at %L"
 msgstr ""
 
-#: fortran/resolve.c:8001
+#: fortran/resolve.c:8042
 #, gcc-internal-format, gfc-internal-format
 msgid "Upper cobound is less than lower cobound of 1 at %L"
 msgstr ""
 
-#: fortran/resolve.c:8059
+#: fortran/resolve.c:8100
 #, 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.c:8074
+#: fortran/resolve.c:8115
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected '*' in coindex specification in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.c:8085
+#: fortran/resolve.c:8126
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad coarray specification in ALLOCATE statement at %L"
 msgstr ""
 
-#: fortran/resolve.c:8117
+#: fortran/resolve.c:8158
 #, gcc-internal-format, gfc-internal-format
 msgid "Stat-variable at %L must be a scalar INTEGER variable"
 msgstr ""
 
-#: fortran/resolve.c:8140
+#: fortran/resolve.c:8181
 #, gcc-internal-format, gfc-internal-format
 msgid "Stat-variable at %L shall not be %sd within the same %s statement"
 msgstr ""
 
-#: fortran/resolve.c:8151
+#: fortran/resolve.c:8192
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG at %L is useless without a STAT tag"
 msgstr ""
 
-#: fortran/resolve.c:8167
+#: fortran/resolve.c:8208
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG variable at %L shall be a scalar default CHARACTER variable"
 msgstr ""
 
-#: fortran/resolve.c:8190
+#: fortran/resolve.c:8231
 #, gcc-internal-format, gfc-internal-format
 msgid "Errmsg-variable at %L shall not be %sd within the same %s statement"
 msgstr ""
 
-#: fortran/resolve.c:8220
+#: fortran/resolve.c:8261
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L also appears at %L"
 msgstr ""
 
-#: fortran/resolve.c:8226 fortran/resolve.c:8232
+#: fortran/resolve.c:8267 fortran/resolve.c:8273
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L is subobject of object at %L"
 msgstr ""
@@ -70785,301 +72910,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.c:8460
+#: fortran/resolve.c:8501
 #, gcc-internal-format, gfc-internal-format
 msgid "CASE label at %L overlaps with CASE label at %L"
 msgstr ""
 
-#: fortran/resolve.c:8511
+#: fortran/resolve.c:8552
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L must be of type %s"
 msgstr ""
 
-#: fortran/resolve.c:8522
+#: fortran/resolve.c:8563
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L must be of kind %d"
 msgstr ""
 
-#: fortran/resolve.c:8535
+#: fortran/resolve.c:8576
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.c:8581
+#: fortran/resolve.c:8622
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Selection expression in computed GOTO statement at %L must be a scalar "
 "integer expression"
 msgstr ""
 
-#: fortran/resolve.c:8600
+#: fortran/resolve.c:8641
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of SELECT statement at %L cannot be %s"
 msgstr ""
 
-#: fortran/resolve.c:8610
+#: fortran/resolve.c:8651
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of SELECT statement at %L must be a scalar expression"
 msgstr ""
 
-#: fortran/resolve.c:8628 fortran/resolve.c:8636
+#: fortran/resolve.c:8669 fortran/resolve.c:8677
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L is not in the range of %s"
 msgstr ""
 
-#: fortran/resolve.c:8698 fortran/resolve.c:9348
+#: fortran/resolve.c:8739 fortran/resolve.c:9391
 #, 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.c:8724
+#: fortran/resolve.c:8765
 #, gcc-internal-format, gfc-internal-format
 msgid "Logical range in CASE statement at %L is not allowed"
 msgstr ""
 
-#: fortran/resolve.c:8736
+#: fortran/resolve.c:8777
 #, gcc-internal-format, gfc-internal-format
 msgid "Constant logical value in CASE statement is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.c:8751
+#: fortran/resolve.c:8792
 #, gcc-internal-format, gfc-internal-format
 msgid "Range specification at %L can never be matched"
 msgstr ""
 
-#: fortran/resolve.c:8854
+#: fortran/resolve.c:8895
 #, gcc-internal-format, gfc-internal-format
 msgid "Logical SELECT CASE block at %L has more that two cases"
 msgstr ""
 
-#: fortran/resolve.c:8905
+#: fortran/resolve.c:8946
 #, gcc-internal-format
 msgid "Associating entity %qs at %L is a procedure pointer"
 msgstr ""
 
-#: fortran/resolve.c:8914
+#: fortran/resolve.c:8955
 #, gcc-internal-format
 msgid "Derived type %qs cannot be used as a variable at %L"
 msgstr ""
 
-#: fortran/resolve.c:8931
+#: fortran/resolve.c:8972
 #, gcc-internal-format
 msgid "Associating entity %qs at %L is a procedure name"
 msgstr ""
 
-#: fortran/resolve.c:8947
+#: fortran/resolve.c:8988
 #, gcc-internal-format, gfc-internal-format
 msgid "Associating selector-expression at %L yields a procedure"
 msgstr ""
 
-#: fortran/resolve.c:8954
+#: fortran/resolve.c:8995
 #, gcc-internal-format, gfc-internal-format
 msgid "Selector at %L cannot be NULL()"
 msgstr ""
 
-#: fortran/resolve.c:8959
+#: fortran/resolve.c:9000
 #, gcc-internal-format, gfc-internal-format
 msgid "Selector at %L has no type"
 msgstr ""
 
-#: fortran/resolve.c:8981
+#: fortran/resolve.c:9022
 #, gcc-internal-format
 msgid "Associate-name %qs at %L is used as array"
 msgstr ""
 
-#: fortran/resolve.c:8992
+#: fortran/resolve.c:9033
 #, gcc-internal-format, gfc-internal-format
 msgid "CLASS selector at %L needs a temporary which is not yet implemented"
 msgstr ""
 
-#: fortran/resolve.c:9222
+#: fortran/resolve.c:9263
 #, gcc-internal-format, gfc-internal-format
 msgid "Selector shall be polymorphic in SELECT TYPE statement at %L"
 msgstr ""
 
-#: fortran/resolve.c:9258 fortran/resolve.c:9270
+#: fortran/resolve.c:9301 fortran/resolve.c:9313
 #, gcc-internal-format, gfc-internal-format
 msgid "Selector at %L must not be coindexed"
 msgstr ""
 
-#: fortran/resolve.c:9299
+#: fortran/resolve.c:9342
 #, gcc-internal-format, gfc-internal-format
 msgid "TYPE IS at %L overlaps with TYPE IS at %L"
 msgstr ""
 
-#: fortran/resolve.c:9311
+#: fortran/resolve.c:9354
 #, gcc-internal-format
 msgid "Derived type %qs at %L must be extensible"
 msgstr ""
 
-#: fortran/resolve.c:9323
+#: fortran/resolve.c:9366
 #, gcc-internal-format
 msgid "Derived type %qs at %L must be an extension of %qs"
 msgstr ""
 
-#: fortran/resolve.c:9326
+#: fortran/resolve.c:9369
 #, gcc-internal-format
 msgid "Unexpected intrinsic type %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:9336
+#: fortran/resolve.c:9379
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "The type-spec at %L shall specify that each length type parameter is assumed"
 msgstr ""
 
-#: fortran/resolve.c:9583
+#: fortran/resolve.c:9626
 #, gcc-internal-format, gfc-internal-format
 msgid "Double CLASS IS block in SELECT TYPE statement at %L"
 msgstr ""
 
-#: fortran/resolve.c:9711
+#: fortran/resolve.c:9760
 #, gcc-internal-format, gfc-internal-format
 msgid "RANK DEFAULT at %L is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.c:9720
+#: fortran/resolve.c:9769
 #, gcc-internal-format, gfc-internal-format
 msgid "RANK (*) at %L is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.c:9723
+#: fortran/resolve.c:9772
 #, gcc-internal-format, gfc-internal-format
 msgid "RANK (%i) at %L is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.c:9733 fortran/resolve.c:9738
+#: fortran/resolve.c:9782 fortran/resolve.c:9787
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "RANK (*) at %L cannot be used with the pointer or allocatable selector at %L"
 msgstr ""
 
-#: fortran/resolve.c:9847
+#: fortran/resolve.c:9896
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid context for NULL () intrinsic at %L"
 msgstr ""
 
-#: fortran/resolve.c:9899
+#: fortran/resolve.c:9948
 #, gcc-internal-format, gfc-internal-format
 msgid "DTIO %s procedure at %L must be recursive"
 msgstr ""
 
-#: fortran/resolve.c:9909
+#: fortran/resolve.c:9958
 #, 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.c:9922
+#: fortran/resolve.c:9971
 #, 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.c:9931
+#: fortran/resolve.c:9980
 #, gcc-internal-format, gfc-internal-format
 msgid "Data transfer element at %L cannot have procedure pointer components"
 msgstr ""
 
-#: fortran/resolve.c:9938
+#: fortran/resolve.c:9987
 #, 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.c:9949
+#: fortran/resolve.c:9998
 #, gcc-internal-format, gfc-internal-format
 msgid "Data transfer element at %L cannot have PRIVATE components"
 msgstr ""
 
-#: fortran/resolve.c:9955
+#: fortran/resolve.c:10004
 #, 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.c:9970
+#: fortran/resolve.c:10019
 #, 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.c:10027
+#: fortran/resolve.c:10076
 #, gcc-internal-format, gfc-internal-format
 msgid "Lock variable at %L must be a scalar of type LOCK_TYPE"
 msgstr ""
 
-#: fortran/resolve.c:10037
+#: fortran/resolve.c:10086
 #, gcc-internal-format, gfc-internal-format
 msgid "Event variable at %L must be a scalar of type EVENT_TYPE"
 msgstr ""
 
-#: fortran/resolve.c:10041
+#: fortran/resolve.c:10090
 #, gcc-internal-format, gfc-internal-format
 msgid "Event variable argument at %L must be a coarray or coindexed"
 msgstr ""
 
-#: fortran/resolve.c:10044
+#: fortran/resolve.c:10093
 #, gcc-internal-format, gfc-internal-format
 msgid "Event variable argument at %L must be a coarray but not coindexed"
 msgstr ""
 
-#: fortran/resolve.c:10051 fortran/resolve.c:10173
+#: fortran/resolve.c:10100 fortran/resolve.c:10222
 #, gcc-internal-format, gfc-internal-format
 msgid "STAT= argument at %L must be a scalar INTEGER variable"
 msgstr ""
 
-#: fortran/resolve.c:10063 fortran/resolve.c:10181
+#: fortran/resolve.c:10112 fortran/resolve.c:10230
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG= argument at %L must be a scalar CHARACTER variable"
 msgstr ""
 
-#: fortran/resolve.c:10075
+#: fortran/resolve.c:10124
 #, gcc-internal-format, gfc-internal-format
 msgid "ACQUIRED_LOCK= argument at %L must be a scalar LOGICAL variable"
 msgstr ""
 
-#: fortran/resolve.c:10088
+#: fortran/resolve.c:10137
 #, gcc-internal-format, gfc-internal-format
 msgid "UNTIL_COUNT= argument at %L must be a scalar INTEGER expression"
 msgstr ""
 
-#: fortran/resolve.c:10149
+#: fortran/resolve.c:10198
 #, gcc-internal-format, gfc-internal-format
 msgid "Imageset argument at %L must be a scalar or rank-1 INTEGER expression"
 msgstr ""
 
-#: fortran/resolve.c:10153 fortran/resolve.c:10163
+#: fortran/resolve.c:10202 fortran/resolve.c:10212
 #, gcc-internal-format, gfc-internal-format
 msgid "Imageset argument at %L must between 1 and num_images()"
 msgstr ""
 
-#: fortran/resolve.c:10208
+#: fortran/resolve.c:10257
 #, 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.c:10218
+#: fortran/resolve.c:10267
 #, 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.c:10235 fortran/resolve.c:10258
+#: fortran/resolve.c:10284 fortran/resolve.c:10307
 #, gcc-internal-format, gfc-internal-format
 msgid "GOTO statement at %L leaves CRITICAL construct for label at %L"
 msgstr ""
 
-#: fortran/resolve.c:10239 fortran/resolve.c:10264
+#: fortran/resolve.c:10288 fortran/resolve.c:10313
 #, gcc-internal-format, gfc-internal-format
 msgid "GOTO statement at %L leaves DO CONCURRENT construct for label at %L"
 msgstr ""
@@ -71087,74 +73212,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.c:10279
+#: fortran/resolve.c:10328
 #, 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.c:10351
+#: fortran/resolve.c:10400
 #, gcc-internal-format, gfc-internal-format
 msgid "WHERE mask at %L has inconsistent shape"
 msgstr ""
 
-#: fortran/resolve.c:10367
+#: fortran/resolve.c:10416
 #, gcc-internal-format, gfc-internal-format
 msgid "WHERE assignment target at %L has inconsistent shape"
 msgstr ""
 
-#: fortran/resolve.c:10375 fortran/resolve.c:10462
+#: fortran/resolve.c:10424 fortran/resolve.c:10511
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-ELEMENTAL user-defined assignment in WHERE at %L"
 msgstr ""
 
-#: fortran/resolve.c:10385 fortran/resolve.c:10472
+#: fortran/resolve.c:10434 fortran/resolve.c:10521
 #, gcc-internal-format, gfc-internal-format
 msgid "Unsupported statement inside WHERE at %L"
 msgstr ""
 
-#: fortran/resolve.c:10416
+#: fortran/resolve.c:10465
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to a FORALL index variable at %L"
 msgstr ""
 
-#: fortran/resolve.c:10425
+#: fortran/resolve.c:10474
 #, 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.c:10572
+#: fortran/resolve.c:10621
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL construct at %L"
 msgstr ""
 
-#: fortran/resolve.c:10593
+#: fortran/resolve.c:10642
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL index-name at %L must be a scalar variable of type integer"
 msgstr ""
 
-#: fortran/resolve.c:10603
+#: fortran/resolve.c:10652
 #, gcc-internal-format, gfc-internal-format
 msgid "An outer FORALL construct already has an index with this name %L"
 msgstr ""
 
-#: fortran/resolve.c:10680
+#: fortran/resolve.c:10729
 #, gcc-internal-format, gfc-internal-format
 msgid "WHERE/ELSEWHERE clause at %L requires a LOGICAL array"
 msgstr ""
 
-#: fortran/resolve.c:10785
+#: fortran/resolve.c:10831
 #, gcc-internal-format
 msgid "gfc_resolve_blocks(): Bad block type"
 msgstr ""
 
-#: fortran/resolve.c:10898
+#: fortran/resolve.c:10944
 #, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER expression will be truncated in assignment (%ld/%ld) at %L"
 msgstr ""
 
-#: fortran/resolve.c:10930
+#: fortran/resolve.c:10976
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Coindexed expression at %L is assigned to a derived type variable with a "
@@ -71162,7 +73287,7 @@ msgid ""
 msgstr ""
 
 #. F2008, C1283 (4).
-#: fortran/resolve.c:10936
+#: fortran/resolve.c:10982
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "In a pure subprogram an INTENT(IN) dummy argument shall not be used as the "
@@ -71171,43 +73296,43 @@ msgid ""
 "component selection."
 msgstr ""
 
-#: fortran/resolve.c:10948
+#: fortran/resolve.c:10994
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to coindexed variable at %L in a PURE procedure"
 msgstr ""
 
-#: fortran/resolve.c:10980
+#: fortran/resolve.c:11026
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to polymorphic coarray at %L is not permitted"
 msgstr ""
 
-#: fortran/resolve.c:10984
+#: fortran/resolve.c:11030
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to an allocatable polymorphic variable at %L"
 msgstr ""
 
-#: fortran/resolve.c:10989
+#: fortran/resolve.c:11035
 #, gcc-internal-format
 msgid ""
 "Assignment to an allocatable polymorphic variable at %L requires %<-frealloc-"
 "lhs%>"
 msgstr ""
 
-#: fortran/resolve.c:10996
+#: fortran/resolve.c:11042
 #, gcc-internal-format, gfc-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.c:11007
+#: fortran/resolve.c:11053
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Coindexed variable must not have an allocatable ultimate component in "
 "assignment at %L"
 msgstr ""
 
-#: fortran/resolve.c:11325
+#: fortran/resolve.c:11373
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "TODO: type-bound defined assignment(s) at %L not done because multiple part "
@@ -71216,72 +73341,77 @@ msgstr ""
 
 #. Even if standard does not support this feature, continue to build
 #. the two statements to avoid upsetting frontend_passes.c.
-#: fortran/resolve.c:11567
+#: fortran/resolve.c:11615
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer procedure assignment at %L"
 msgstr ""
 
-#: fortran/resolve.c:11579
+#: fortran/resolve.c:11627
 #, 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.c:11831
+#: fortran/resolve.c:11882
 #, gcc-internal-format, gfc-internal-format
 msgid "ASSIGNED GOTO statement at %L requires a scalar INTEGER variable"
 msgstr ""
 
-#: fortran/resolve.c:11835
+#: fortran/resolve.c:11886
 #, gcc-internal-format
 msgid "Variable %qs has not been assigned a target label at %L"
 msgstr ""
 
-#: fortran/resolve.c:11846
+#: fortran/resolve.c:11897
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Alternate RETURN statement at %L requires a SCALAR-INTEGER return specifier"
 msgstr ""
 
-#: fortran/resolve.c:11909
+#: fortran/resolve.c:11963
 #, gcc-internal-format, gfc-internal-format
 msgid "ASSIGN statement at %L requires a scalar default INTEGER variable"
 msgstr ""
 
-#: fortran/resolve.c:11955
+#: fortran/resolve.c:12009
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid NULL at %L"
 msgstr ""
 
-#: fortran/resolve.c:11959
+#: fortran/resolve.c:12013
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Arithmetic IF statement at %L requires a scalar REAL or INTEGER expression"
 msgstr ""
 
-#: fortran/resolve.c:12020
+#: fortran/resolve.c:12074
 #, gcc-internal-format
 msgid "gfc_resolve_code(): No expression on DO WHILE"
 msgstr ""
 
-#: fortran/resolve.c:12025
+#: fortran/resolve.c:12079
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Exit condition of DO WHILE loop at %L must be a scalar LOGICAL expression"
 msgstr ""
 
-#: fortran/resolve.c:12109
+#: fortran/resolve.c:12163
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL mask clause at %L requires a scalar LOGICAL expression"
 msgstr ""
 
-#: fortran/resolve.c:12190
+#: fortran/resolve.c:12245
 #, gcc-internal-format
 msgid "gfc_resolve_code(): Bad statement code"
 msgstr ""
 
-#: fortran/resolve.c:12300
+#: fortran/resolve.c:12266
+#, gcc-internal-format
+msgid "Using parameter %qs declared at %L is deprecated"
+msgstr ""
+
+#: fortran/resolve.c:12360
 #, gcc-internal-format
 msgid ""
 "Variable %qs with binding label %qs at %L uses the same global identifier as "
@@ -71290,7 +73420,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.c:12314
+#: fortran/resolve.c:12374
 #, gcc-internal-format
 msgid ""
 "Variable %qs from module %qs with binding label %qs at %L uses the same "
@@ -71300,63 +73430,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.c:12333
+#: fortran/resolve.c:12393
 #, gcc-internal-format
 msgid ""
 "Procedure %qs with binding label %qs at %L uses the same global identifier "
 "as entity at %L"
 msgstr ""
 
-#: fortran/resolve.c:12418
+#: fortran/resolve.c:12479
 #, gcc-internal-format, gfc-internal-format
 msgid "String length at %L is too large"
 msgstr ""
 
-#: fortran/resolve.c:12652
+#: fortran/resolve.c:12713
 #, gcc-internal-format
 msgid "Allocatable array %qs at %L must have a deferred shape or assumed rank"
 msgstr ""
 
-#: fortran/resolve.c:12656
+#: fortran/resolve.c:12717
 #, gcc-internal-format
 msgid "Scalar object %qs at %L may not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.c:12664
+#: fortran/resolve.c:12725
 #, gcc-internal-format
 msgid "Array pointer %qs at %L must have a deferred shape or assumed rank"
 msgstr ""
 
-#: fortran/resolve.c:12675
+#: fortran/resolve.c:12736
 #, gcc-internal-format
 msgid "Array %qs at %L cannot have a deferred shape"
 msgstr ""
 
-#: fortran/resolve.c:12691
+#: fortran/resolve.c:12752
 #, gcc-internal-format
 msgid "Type %qs of CLASS variable %qs at %L is not extensible"
 msgstr ""
 
-#: fortran/resolve.c:12703
+#: fortran/resolve.c:12764
 #, gcc-internal-format
 msgid "CLASS variable %qs at %L must be dummy, allocatable or pointer"
 msgstr ""
 
-#: fortran/resolve.c:12736
+#: fortran/resolve.c:12797
 #, 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.c:12758
+#: fortran/resolve.c:12819
 #, gcc-internal-format
 msgid ""
 "Implied SAVE for module variable %qs at %L, needed due to the default "
 "initialization"
 msgstr ""
 
-#: fortran/resolve.c:12789
+#: fortran/resolve.c:12850
 #, gcc-internal-format
 msgid ""
 "Entity %qs at %L has a deferred type parameter and requires either the "
@@ -71365,1016 +73495,1026 @@ msgstr ""
 
 #. F08:C541. The shape of an array defined in a main program or module
 #. * needs to be constant.
-#: fortran/resolve.c:12825
+#: fortran/resolve.c:12886
 #, gcc-internal-format
 msgid "The module or main program array %qs at %L must have constant shape"
 msgstr ""
 
-#: fortran/resolve.c:12850
+#: fortran/resolve.c:12911
 #, 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.c:12871
+#: fortran/resolve.c:12932
 #, gcc-internal-format
 msgid "%qs at %L must have constant character length in this context"
 msgstr ""
 
-#: fortran/resolve.c:12878
+#: fortran/resolve.c:12939
 #, gcc-internal-format
 msgid "COMMON variable %qs at %L must have constant character length"
 msgstr ""
 
-#: fortran/resolve.c:12925
+#: fortran/resolve.c:12986
 #, gcc-internal-format
 msgid "Allocatable %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.c:12928
+#: fortran/resolve.c:12989
 #, gcc-internal-format
 msgid "External %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.c:12931
+#: fortran/resolve.c:12992
 #, gcc-internal-format
 msgid "Dummy %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.c:12934
+#: fortran/resolve.c:12995
 #, gcc-internal-format
 msgid "Intrinsic %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.c:12937
+#: fortran/resolve.c:12998
 #, gcc-internal-format
 msgid "Function result %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.c:12940
+#: fortran/resolve.c:13001
 #, gcc-internal-format
 msgid "Automatic array %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.c:12982
+#: fortran/resolve.c:13043
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L"
 msgstr ""
 
-#: fortran/resolve.c:13013
+#: fortran/resolve.c:13074
 #, gcc-internal-format
 msgid "Character-valued statement function %qs at %L must have constant length"
 msgstr ""
 
-#: fortran/resolve.c:13036
+#: fortran/resolve.c:13097
 #, 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.c:13058
+#: fortran/resolve.c:13119
 #, gcc-internal-format
 msgid ""
 "Procedure %qs in PUBLIC interface %qs at %L takes dummy arguments of %qs "
 "which is PRIVATE"
 msgstr ""
 
-#: fortran/resolve.c:13076
+#: fortran/resolve.c:13137
 #, gcc-internal-format
 msgid "Function %qs at %L cannot have an initializer"
 msgstr ""
 
-#: fortran/resolve.c:13088
+#: fortran/resolve.c:13149
 #, gcc-internal-format
 msgid "External object %qs at %L may not have an initializer"
 msgstr ""
 
-#: fortran/resolve.c:13097
+#: fortran/resolve.c:13158
 #, gcc-internal-format
 msgid "ELEMENTAL function %qs at %L must have a scalar result"
 msgstr ""
 
-#: fortran/resolve.c:13107
+#: fortran/resolve.c:13168
 #, gcc-internal-format
 msgid ""
 "Statement function %qs at %L may not have pointer or allocatable attribute"
 msgstr ""
 
-#: fortran/resolve.c:13126
+#: fortran/resolve.c:13187
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be array-valued"
 msgstr ""
 
-#: fortran/resolve.c:13130
+#: fortran/resolve.c:13191
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be pointer-valued"
 msgstr ""
 
-#: fortran/resolve.c:13134
+#: fortran/resolve.c:13195
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be pure"
 msgstr ""
 
-#: fortran/resolve.c:13138
+#: fortran/resolve.c:13199
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be recursive"
 msgstr ""
 
-#: fortran/resolve.c:13151
+#: fortran/resolve.c:13212
 #, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:13162
+#: fortran/resolve.c:13223
 #, gcc-internal-format
 msgid "Procedure pointer %qs at %L shall not be elemental"
 msgstr ""
 
-#: fortran/resolve.c:13168
+#: fortran/resolve.c:13229
 #, gcc-internal-format
 msgid "Dummy procedure %qs at %L shall not be elemental"
 msgstr ""
 
-#: fortran/resolve.c:13180
+#: fortran/resolve.c:13241
 #, 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.c:13237
+#: fortran/resolve.c:13298
 #, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with SAVE attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:13243
+#: fortran/resolve.c:13304
 #, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with INTENT attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:13249
+#: fortran/resolve.c:13310
 #, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with RESULT attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:13257
+#: fortran/resolve.c:13318
 #, gcc-internal-format
 msgid "EXTERNAL attribute conflicts with FUNCTION attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:13263
+#: fortran/resolve.c:13324
 #, gcc-internal-format
 msgid "Procedure pointer result %qs at %L is missing the pointer attribute"
 msgstr ""
 
-#: fortran/resolve.c:13306
+#: fortran/resolve.c:13367
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Mismatch in ELEMENTAL attribute between MODULE PROCEDURE at %L and its "
 "interface in %s"
 msgstr ""
 
-#: fortran/resolve.c:13314
+#: fortran/resolve.c:13375
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Mismatch in PURE attribute between MODULE PROCEDURE at %L and its interface "
 "in %s"
 msgstr ""
 
-#: fortran/resolve.c:13322
+#: fortran/resolve.c:13383
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Mismatch in RECURSIVE attribute between MODULE PROCEDURE at %L and its "
 "interface in %s"
 msgstr ""
 
-#: fortran/resolve.c:13331
+#: fortran/resolve.c:13392
 #, 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.c:13415
+#: fortran/resolve.c:13476
 #, gcc-internal-format
 msgid "FINAL procedure %qs at %L is not a SUBROUTINE"
 msgstr ""
 
-#: fortran/resolve.c:13424
+#: fortran/resolve.c:13485
 #, gcc-internal-format, gfc-internal-format
 msgid "FINAL procedure at %L must have exactly one argument"
 msgstr ""
 
-#: fortran/resolve.c:13433
+#: fortran/resolve.c:13494
 #, gcc-internal-format
 msgid "Argument of FINAL procedure at %L must be of type %qs"
 msgstr ""
 
-#: fortran/resolve.c:13441
+#: fortran/resolve.c:13502
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be a POINTER"
 msgstr ""
 
-#: fortran/resolve.c:13447
+#: fortran/resolve.c:13508
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.c:13453
+#: fortran/resolve.c:13514
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be OPTIONAL"
 msgstr ""
 
-#: fortran/resolve.c:13461
+#: fortran/resolve.c:13522
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be INTENT(OUT)"
 msgstr ""
 
-#: fortran/resolve.c:13470
+#: fortran/resolve.c:13531
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-scalar FINAL procedure at %L should have assumed shape argument"
 msgstr ""
 
-#: fortran/resolve.c:13492
+#: fortran/resolve.c:13553
 #, gcc-internal-format
 msgid "FINAL procedure %qs declared at %L has the same rank (%d) as %qs"
 msgstr ""
 
-#: fortran/resolve.c:13529
+#: fortran/resolve.c:13590
 #, gcc-internal-format
 msgid ""
 "Only array FINAL procedures declared for derived type %qs defined at %L, "
 "suggest also scalar one"
 msgstr ""
 
-#: fortran/resolve.c:13569
+#: fortran/resolve.c:13630
 #, gcc-internal-format
 msgid "%qs and %qs cannot be mixed FUNCTION/SUBROUTINE for GENERIC %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:13605
+#: fortran/resolve.c:13666
 #, gcc-internal-format
 msgid "%qs and %qs for GENERIC %qs at %L are ambiguous"
 msgstr ""
 
-#: fortran/resolve.c:13664
+#: fortran/resolve.c:13725
 #, gcc-internal-format
 msgid "Undefined specific binding %qs as target of GENERIC %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:13676
+#: fortran/resolve.c:13737
 #, gcc-internal-format
 msgid "GENERIC %qs at %L must target a specific binding, %qs is GENERIC, too"
 msgstr ""
 
-#: fortran/resolve.c:13704
+#: fortran/resolve.c:13765
 #, gcc-internal-format
 msgid "GENERIC %qs at %L cannot overwrite specific binding with the same name"
 msgstr ""
 
-#: fortran/resolve.c:13760
+#: fortran/resolve.c:13821
 #, gcc-internal-format, gfc-internal-format
 msgid "Type-bound operator at %L cannot be NOPASS"
 msgstr ""
 
-#: fortran/resolve.c:13971
+#: fortran/resolve.c:14033
 #, gcc-internal-format
 msgid ""
 "%qs must be a module procedure or an external procedure with an explicit "
 "interface at %L"
 msgstr ""
 
-#: fortran/resolve.c:14014
+#: fortran/resolve.c:14076
 #, gcc-internal-format
 msgid "Procedure %qs with PASS(%s) at %L has no argument %qs"
 msgstr ""
 
-#: fortran/resolve.c:14028
+#: fortran/resolve.c:14090
 #, gcc-internal-format
 msgid "Procedure %qs with PASS at %L must have at least one argument"
 msgstr ""
 
-#: fortran/resolve.c:14042 fortran/resolve.c:14528
+#: fortran/resolve.c:14104 fortran/resolve.c:14590
 #, gcc-internal-format
 msgid "Non-polymorphic passed-object dummy argument of %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:14050
+#: fortran/resolve.c:14112
 #, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived-type %qs"
 msgstr ""
 
-#: fortran/resolve.c:14059
+#: fortran/resolve.c:14121
 #, gcc-internal-format
 msgid "Passed-object dummy argument of %qs at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.c:14065
+#: fortran/resolve.c:14127
 #, gcc-internal-format
 msgid "Passed-object dummy argument of %qs at %L must not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.c:14071
+#: fortran/resolve.c:14133
 #, gcc-internal-format
 msgid "Passed-object dummy argument of %qs at %L must not be POINTER"
 msgstr ""
 
-#: fortran/resolve.c:14100
+#: fortran/resolve.c:14162
 #, gcc-internal-format
 msgid "Procedure %qs at %L has the same name as a component of %qs"
 msgstr ""
 
-#: fortran/resolve.c:14110
+#: fortran/resolve.c:14172
 #, gcc-internal-format
 msgid "Procedure %qs at %L has the same name as an inherited component of %qs"
 msgstr ""
 
-#: fortran/resolve.c:14205
+#: fortran/resolve.c:14267
 #, gcc-internal-format
 msgid ""
 "Derived-type %qs declared at %L must be ABSTRACT because %qs is DEFERRED and "
 "not overridden"
 msgstr ""
 
-#: fortran/resolve.c:14308
+#: fortran/resolve.c:14370
 #, gcc-internal-format
 msgid "Coarray component %qs at %L must be allocatable with deferred shape"
 msgstr ""
 
-#: fortran/resolve.c:14317
+#: fortran/resolve.c:14379
 #, gcc-internal-format
 msgid ""
 "Component %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray"
 msgstr ""
 
-#: fortran/resolve.c:14327
+#: fortran/resolve.c:14389
 #, gcc-internal-format
 msgid ""
 "Component %qs at %L with coarray component shall be a nonpointer, "
 "nonallocatable scalar"
 msgstr ""
 
-#: fortran/resolve.c:14352
+#: fortran/resolve.c:14414
 #, gcc-internal-format
 msgid ""
 "Component %qs at %L has the CONTIGUOUS attribute but is not an array pointer"
 msgstr ""
 
-#: fortran/resolve.c:14363
+#: fortran/resolve.c:14425
 #, gcc-internal-format
 msgid "Component %qs of BIND(C) type at %L must have length one"
 msgstr ""
 
-#: fortran/resolve.c:14461
+#: fortran/resolve.c:14523
 #, gcc-internal-format
 msgid "Procedure pointer component %qs with PASS(%s) at %L has no argument %qs"
 msgstr ""
 
-#: fortran/resolve.c:14475
+#: fortran/resolve.c:14537
 #, gcc-internal-format
 msgid ""
 "Procedure pointer component %qs with PASS at %L must have at least one "
 "argument"
 msgstr ""
 
-#: fortran/resolve.c:14491
+#: fortran/resolve.c:14553
 #, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived type %qs"
 msgstr ""
 
-#: fortran/resolve.c:14501
+#: fortran/resolve.c:14563
 #, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L must be scalar"
 msgstr ""
 
-#: fortran/resolve.c:14510
+#: fortran/resolve.c:14572
 #, gcc-internal-format
 msgid ""
 "Argument %qs of %qs with PASS(%s) at %L may not have the POINTER attribute"
 msgstr ""
 
-#: fortran/resolve.c:14519
+#: fortran/resolve.c:14581
 #, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L may not be ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.c:14561
+#: fortran/resolve.c:14623
 #, gcc-internal-format
 msgid ""
 "Component %qs of %qs at %L has the same name as an inherited type-bound "
 "procedure"
 msgstr ""
 
-#: fortran/resolve.c:14574
+#: fortran/resolve.c:14636
 #, gcc-internal-format
 msgid ""
 "Character length of component %qs needs to be a constant specification "
 "expression at %L"
 msgstr ""
 
-#: fortran/resolve.c:14585
+#: fortran/resolve.c:14647
 #, gcc-internal-format
 msgid ""
 "Character component %qs of %qs at %L with deferred length must be a POINTER "
 "or ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.c:14618
+#: fortran/resolve.c:14680
 #, 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.c:14626
+#: fortran/resolve.c:14688
 #, gcc-internal-format, gfc-internal-format
 msgid "Polymorphic component %s at %L in SEQUENCE or BIND(C) type %s"
 msgstr ""
 
-#: fortran/resolve.c:14635
+#: fortran/resolve.c:14697
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Component %s of SEQUENCE type declared at %L does not have the SEQUENCE "
 "attribute"
 msgstr ""
 
-#: fortran/resolve.c:14717
+#: fortran/resolve.c:14783
 #, gcc-internal-format, gfc-internal-format
 msgid "Conflicting initializers in union at %L and %L"
 msgstr ""
 
-#: fortran/resolve.c:14762
+#: fortran/resolve.c:14828
 #, gcc-internal-format
 msgid ""
 "As extending type %qs at %L has a coarray component, parent type %qs shall "
 "also have one"
 msgstr ""
 
-#: fortran/resolve.c:14775
+#: fortran/resolve.c:14841
 #, gcc-internal-format
 msgid "Non-extensible derived-type %qs at %L must not be ABSTRACT"
 msgstr ""
 
-#: fortran/resolve.c:14839
+#: fortran/resolve.c:14905
 #, gcc-internal-format
 msgid ""
 "Parameterized type %qs does not have a component corresponding to parameter "
 "%qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:14872
+#: fortran/resolve.c:14938
 #, gcc-internal-format
 msgid ""
 "Generic name %qs of function %qs at %L being the same name as derived type "
 "at %L"
 msgstr ""
 
-#: fortran/resolve.c:14886
+#: fortran/resolve.c:14952
 #, gcc-internal-format
 msgid "Derived type %qs at %L has not been declared"
 msgstr ""
 
-#: fortran/resolve.c:14951
+#: fortran/resolve.c:15017
 #, gcc-internal-format
 msgid "Assumed size array %qs in namelist %qs at %L is not allowed"
 msgstr ""
 
-#: fortran/resolve.c:14957
+#: fortran/resolve.c:15023
 #, gcc-internal-format
 msgid "NAMELIST array object %qs with assumed shape in namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:14963
+#: fortran/resolve.c:15029
 #, gcc-internal-format
 msgid "NAMELIST array object %qs with nonconstant shape in namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:14971
+#: fortran/resolve.c:15037
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs with nonconstant character length in namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:14988
+#: fortran/resolve.c:15054
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs was declared PRIVATE and cannot be member of PUBLIC "
 "namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:15010
+#: fortran/resolve.c:15076
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs has use-associated PRIVATE components and cannot be "
 "member of namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:15021
+#: fortran/resolve.c:15087
 #, gcc-internal-format
 msgid ""
 "NAMELIST object %qs has PRIVATE components and cannot be a member of PUBLIC "
 "namelist %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:15048
+#: fortran/resolve.c:15114
 #, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with NAMELIST attribute in %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:15067
+#: fortran/resolve.c:15133
 #, gcc-internal-format
 msgid "Parameter array %qs at %L cannot be automatic or of deferred shape"
 msgstr ""
 
-#: fortran/resolve.c:15083
+#: fortran/resolve.c:15149
 #, gcc-internal-format
 msgid ""
 "Implicitly typed PARAMETER %qs at %L doesn't match a later IMPLICIT type"
 msgstr ""
 
-#: fortran/resolve.c:15094
+#: fortran/resolve.c:15160
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible derived type in PARAMETER at %L"
 msgstr ""
 
-#: fortran/resolve.c:15102
+#: fortran/resolve.c:15168
 #, gcc-internal-format
 msgid "CLASS variable %qs at %L cannot have the PARAMETER attribute"
 msgstr ""
 
-#: fortran/resolve.c:15153
+#: fortran/resolve.c:15219
 #, 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.c:15164
+#: fortran/resolve.c:15230
 #, 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.c:15171
+#: fortran/resolve.c:15237
 #, 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.c:15211
+#: fortran/resolve.c:15277
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Sorry, allocatable/pointer components in polymorphic (CLASS) type coarrays "
 "at %L are unsupported"
 msgstr ""
 
-#: fortran/resolve.c:15275
+#: fortran/resolve.c:15341
 #, gcc-internal-format, gfc-internal-format
 msgid "PROTECTED attribute conflicts with EXTERNAL attribute at %L"
 msgstr ""
 
-#: fortran/resolve.c:15278
+#: fortran/resolve.c:15344
 #, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE attribute conflicts with PROTECTED attribute at %L"
 msgstr ""
 
-#: fortran/resolve.c:15374
+#: fortran/resolve.c:15444
 #, 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.c:15395
+#: fortran/resolve.c:15465
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad specification for assumed size array at %L"
 msgstr ""
 
-#: fortran/resolve.c:15408
+#: fortran/resolve.c:15478
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed size array at %L must be a dummy argument"
 msgstr ""
 
-#: fortran/resolve.c:15411
+#: fortran/resolve.c:15481
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed shape array at %L must be a dummy argument"
 msgstr ""
 
-#: fortran/resolve.c:15421
+#: fortran/resolve.c:15491
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank array at %L must be a dummy argument"
 msgstr ""
 
-#: fortran/resolve.c:15428
+#: fortran/resolve.c:15498
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Assumed-rank array at %L may not have the VALUE or CODIMENSION attribute"
 msgstr ""
 
-#: fortran/resolve.c:15441
+#: fortran/resolve.c:15511
 #, gcc-internal-format, gfc-internal-format
 msgid "Symbol at %L is not a DUMMY variable"
 msgstr ""
 
-#: fortran/resolve.c:15447
+#: fortran/resolve.c:15517
 #, gcc-internal-format
 msgid ""
 "%qs at %L cannot have the VALUE attribute because it is not a dummy argument"
 msgstr ""
 
-#: fortran/resolve.c:15457
+#: fortran/resolve.c:15527
 #, gcc-internal-format
 msgid ""
 "Character dummy variable %qs at %L with VALUE attribute must have constant "
 "length"
 msgstr ""
 
-#: fortran/resolve.c:15466
+#: fortran/resolve.c:15536
 #, gcc-internal-format
 msgid ""
 "C interoperable character dummy variable %qs at %L with VALUE attribute must "
 "have length one"
 msgstr ""
 
-#: fortran/resolve.c:15479 fortran/resolve.c:15656
+#: fortran/resolve.c:15549 fortran/resolve.c:15726
 #, gcc-internal-format
 msgid "The derived type %qs at %L is of type %qs, which has not been defined"
 msgstr ""
 
-#: fortran/resolve.c:15493
+#: fortran/resolve.c:15563
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable %s at %L with NO_ARG_CHECK attribute shall be a dummy argument"
 msgstr ""
 
-#: fortran/resolve.c:15502
+#: fortran/resolve.c:15572
 #, 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.c:15511
+#: fortran/resolve.c:15581
 #, 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.c:15519
+#: fortran/resolve.c:15589
 #, 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.c:15526
+#: fortran/resolve.c:15596
 #, 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.c:15546
+#: fortran/resolve.c:15616
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed type of variable %s at %L is only permitted for dummy variables"
 msgstr ""
 
-#: fortran/resolve.c:15553
+#: fortran/resolve.c:15623
 #, 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.c:15560
+#: fortran/resolve.c:15630
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L may not have the INTENT(OUT) attribute"
 msgstr ""
 
-#: fortran/resolve.c:15567
+#: fortran/resolve.c:15637
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L shall not be an explicit-shape array"
 msgstr ""
 
-#: fortran/resolve.c:15593
+#: fortran/resolve.c:15663
 #, 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.c:15603
+#: fortran/resolve.c:15673
 #, gcc-internal-format
 msgid "BIND(C) Variable %qs at %L must have length one"
 msgstr ""
 
-#: fortran/resolve.c:15682
+#: fortran/resolve.c:15752
 #, gcc-internal-format
 msgid "PUBLIC %s %qs at %L of PRIVATE derived type %qs"
 msgstr ""
 
-#: fortran/resolve.c:15697
+#: fortran/resolve.c:15767
 #, 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.c:15710
+#: fortran/resolve.c:15780
 #, 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.c:15728
+#: fortran/resolve.c:15798
 #, 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.c:15740
+#: fortran/resolve.c:15810
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L of LOCK_TYPE shall not be INTENT(OUT)"
 msgstr ""
 
-#: fortran/resolve.c:15749
+#: fortran/resolve.c:15819
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L of EVENT_TYPE shall not be INTENT(OUT)"
 msgstr ""
 
-#: fortran/resolve.c:15762
+#: fortran/resolve.c:15832
 #, gcc-internal-format
 msgid ""
 "Function result %qs at %L shall not be a coarray or have a coarray component"
 msgstr ""
 
-#: fortran/resolve.c:15771
+#: fortran/resolve.c:15841
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray"
 msgstr ""
 
-#: fortran/resolve.c:15784
+#: fortran/resolve.c:15854
 #, 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.c:15800
+#: fortran/resolve.c:15870
 #, gcc-internal-format
 msgid ""
 "Variable %qs at %L is a coarray and is not ALLOCATABLE, SAVE nor a dummy "
 "argument"
 msgstr ""
 
-#: fortran/resolve.c:15808
+#: fortran/resolve.c:15878
 #, gcc-internal-format
 msgid ""
 "Coarray variable %qs at %L shall not have codimensions with deferred shape"
 msgstr ""
 
-#: fortran/resolve.c:15815
+#: fortran/resolve.c:15885
 #, gcc-internal-format
 msgid "Allocatable coarray variable %qs at %L must have deferred shape"
 msgstr ""
 
-#: fortran/resolve.c:15828
+#: fortran/resolve.c:15898
 #, 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.c:15837
+#: fortran/resolve.c:15907
 #, gcc-internal-format
 msgid "Coarray dummy variable %qs at %L not allowed in BIND(C) procedure %qs"
 msgstr ""
 
-#: fortran/resolve.c:15853
+#: fortran/resolve.c:15923
 #, gcc-internal-format
 msgid ""
 "LOGICAL dummy argument %qs at %L with non-C_Bool kind in BIND(C) procedure "
 "%qs"
 msgstr ""
 
-#: fortran/resolve.c:15859
+#: fortran/resolve.c:15929
 #, gcc-internal-format
 msgid ""
 "LOGICAL result variable %qs at %L with non-C_Bool kind in BIND(C) procedure "
 "%qs"
 msgstr ""
 
-#: fortran/resolve.c:15884
+#: fortran/resolve.c:15954
 #, gcc-internal-format
 msgid "Namelist %qs cannot be an argument to subroutine or function at %L"
 msgstr ""
 
-#: fortran/resolve.c:15954
+#: fortran/resolve.c:16024
 #, gcc-internal-format, gfc-internal-format
 msgid "Threadprivate at %L isn't SAVEd"
 msgstr ""
 
-#: fortran/resolve.c:15965
+#: fortran/resolve.c:16035
 #, gcc-internal-format
 msgid "!$OMP DECLARE TARGET variable %qs at %L isn't SAVEd"
 msgstr ""
 
-#: fortran/resolve.c:16070
+#: fortran/resolve.c:16140
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting definable entity near %L"
 msgstr ""
 
-#: fortran/resolve.c:16078
+#: fortran/resolve.c:16148
 #, gcc-internal-format
 msgid "BLOCK DATA element %qs at %L must be in COMMON"
 msgstr ""
 
-#: fortran/resolve.c:16085
+#: fortran/resolve.c:16155
 #, gcc-internal-format
 msgid "DATA array %qs at %L must be specified in a previous declaration"
 msgstr ""
 
-#: fortran/resolve.c:16092
+#: fortran/resolve.c:16162
 #, gcc-internal-format
 msgid "DATA element %qs at %L cannot have a coindex"
 msgstr ""
 
-#: fortran/resolve.c:16108
+#: fortran/resolve.c:16178
 #, gcc-internal-format
 msgid "DATA element %qs at %L is a pointer and so must be a full array"
 msgstr ""
 
-#: fortran/resolve.c:16115
+#: fortran/resolve.c:16185
 #, 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.c:16163
+#: fortran/resolve.c:16194
+#, gcc-internal-format
+msgid "DATA element %qs at %L cannot have the ALLOCATABLE attribute"
+msgstr ""
+
+#: fortran/resolve.c:16240
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonconstant array section at %L in DATA statement"
 msgstr ""
 
-#: fortran/resolve.c:16176
+#: fortran/resolve.c:16253
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %L has more variables than values"
 msgstr ""
 
-#: fortran/resolve.c:16275
+#: fortran/resolve.c:16352
 #, 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.c:16283
+#: fortran/resolve.c:16360
 #, 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.c:16291
+#: fortran/resolve.c:16368
 #, 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.c:16416
+#: fortran/resolve.c:16375
+#, gcc-internal-format, gfc-internal-format
+msgid "step of implied-do loop at %L shall not be zero"
+msgstr ""
+
+#: fortran/resolve.c:16500
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %L has more values than variables"
 msgstr ""
 
-#: fortran/resolve.c:16581
+#: fortran/resolve.c:16666
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d at %L defined but not used"
 msgstr ""
 
-#: fortran/resolve.c:16587
+#: fortran/resolve.c:16672
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d at %L defined but cannot be used"
 msgstr ""
 
-#: fortran/resolve.c:16671
+#: fortran/resolve.c:16756
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs at %L must have SEQUENCE attribute to be an "
 "EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.c:16680
+#: fortran/resolve.c:16765
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs at %L cannot have ALLOCATABLE components to be an "
 "EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.c:16688
+#: fortran/resolve.c:16773
 #, 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.c:16704
+#: fortran/resolve.c:16789
 #, gcc-internal-format
 msgid ""
 "Derived type variable %qs at %L with pointer component(s) cannot be an "
 "EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.c:16807
+#: fortran/resolve.c:16892
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in EQUIVALENCE statement at %L"
 msgstr ""
 
-#: fortran/resolve.c:16822
+#: fortran/resolve.c:16907
 #, 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.c:16847
+#: fortran/resolve.c:16932
 #, gcc-internal-format
 msgid ""
 "COMMON block member %qs at %L cannot be an EQUIVALENCE object in the pure "
 "procedure %qs"
 msgstr ""
 
-#: fortran/resolve.c:16856
+#: fortran/resolve.c:16941
 #, gcc-internal-format
 msgid "Named constant %qs at %L cannot be an EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.c:16929
+#: fortran/resolve.c:17014
 #, gcc-internal-format
 msgid ""
 "Array %qs at %L with non-constant bounds cannot be an EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.c:16940
+#: fortran/resolve.c:17025
 #, gcc-internal-format
 msgid "Structure component %qs at %L cannot be an EQUIVALENCE object"
 msgstr ""
 
-#: fortran/resolve.c:16951
+#: fortran/resolve.c:17036
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring at %L has length zero"
 msgstr ""
 
-#: fortran/resolve.c:16982
+#: fortran/resolve.c:17067
 #, gcc-internal-format
 msgid "Self reference in character length expression for %qs at %L"
 msgstr ""
 
-#: fortran/resolve.c:17049
+#: fortran/resolve.c:17134
 #, gcc-internal-format
 msgid "PUBLIC function %qs at %L of PRIVATE type %qs"
 msgstr ""
 
-#: fortran/resolve.c:17062
+#: fortran/resolve.c:17147
 #, gcc-internal-format
 msgid "ENTRY %qs at %L has no IMPLICIT type"
 msgstr ""
 
-#: fortran/resolve.c:17082
+#: fortran/resolve.c:17167
 #, gcc-internal-format
 msgid "User operator procedure %qs at %L must be a FUNCTION"
 msgstr ""
 
-#: fortran/resolve.c:17092
+#: fortran/resolve.c:17177
 #, gcc-internal-format
 msgid "User operator procedure %qs at %L cannot be assumed character length"
 msgstr ""
 
-#: fortran/resolve.c:17100
+#: fortran/resolve.c:17185
 #, gcc-internal-format
 msgid "User operator procedure %qs at %L must have at least one argument"
 msgstr ""
 
-#: fortran/resolve.c:17114
+#: fortran/resolve.c:17199
 #, gcc-internal-format, gfc-internal-format
 msgid "First argument of operator interface at %L cannot be optional"
 msgstr ""
 
-#: fortran/resolve.c:17132
+#: fortran/resolve.c:17217
 #, gcc-internal-format, gfc-internal-format
 msgid "Second argument of operator interface at %L cannot be optional"
 msgstr ""
 
-#: fortran/resolve.c:17139
+#: fortran/resolve.c:17224
 #, gcc-internal-format, gfc-internal-format
 msgid "Operator interface at %L must have, at most, two arguments"
 msgstr ""
 
-#: fortran/resolve.c:17218
+#: fortran/resolve.c:17303
 #, gcc-internal-format
 msgid "Contained procedure %qs at %L of a PURE procedure must also be PURE"
 msgstr ""
@@ -72408,62 +74548,62 @@ msgid ""
 "is a continuation line"
 msgstr ""
 
-#: fortran/scanner.c:1277 fortran/scanner.c:1478
+#: fortran/scanner.c:1267 fortran/scanner.c:1468
 #, gcc-internal-format, gfc-internal-format
 msgid "Line truncated at %L"
 msgstr ""
 
-#: fortran/scanner.c:1341 fortran/scanner.c:1564
+#: fortran/scanner.c:1331 fortran/scanner.c:1554
 #, gcc-internal-format, gfc-internal-format
 msgid "Limit of %d continuations exceeded in statement at %C"
 msgstr ""
 
-#: fortran/scanner.c:1420 fortran/scanner.c:1525
+#: fortran/scanner.c:1410 fortran/scanner.c:1515
 #, gcc-internal-format, gfc-internal-format
 msgid "Wrong OpenACC continuation at %C: expected !$ACC, got !$OMP"
 msgstr ""
 
-#: fortran/scanner.c:1422 fortran/scanner.c:1527
+#: fortran/scanner.c:1412 fortran/scanner.c:1517
 #, gcc-internal-format, gfc-internal-format
 msgid "Wrong OpenMP continuation at %C: expected !$OMP, got !$ACC"
 msgstr ""
 
-#: fortran/scanner.c:1433
+#: fortran/scanner.c:1423
 #, gcc-internal-format
 msgid "Missing %<&%> in continued character constant at %C"
 msgstr ""
 
-#: fortran/scanner.c:1715
+#: fortran/scanner.c:1705
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonconforming tab character at %C"
 msgstr ""
 
-#: fortran/scanner.c:1726
+#: fortran/scanner.c:1716
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid character 0x%s at %C"
 msgstr ""
 
-#: fortran/scanner.c:1815 fortran/scanner.c:1818
+#: fortran/scanner.c:1805 fortran/scanner.c:1808
 #, gcc-internal-format
 msgid "%<&%> not allowed by itself in line %d"
 msgstr ""
 
-#: fortran/scanner.c:1908
+#: fortran/scanner.c:1898
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonconforming tab character in column %d of line %d"
 msgstr ""
 
-#: fortran/scanner.c:2137
+#: fortran/scanner.c:2127
 #, gcc-internal-format
 msgid "file %qs left but not entered"
 msgstr ""
 
-#: fortran/scanner.c:2179
+#: fortran/scanner.c:2169
 #, gcc-internal-format
 msgid "Illegal preprocessor directive"
 msgstr ""
 
-#: fortran/scanner.c:2522
+#: fortran/scanner.c:2512
 #, gcc-internal-format
 msgid "Cannot open file %qs"
 msgstr ""
@@ -72498,304 +74638,304 @@ msgstr ""
 msgid "Invalid KIND parameter of %s at %L"
 msgstr ""
 
-#: fortran/simplify.c:729
+#: fortran/simplify.c:761
 #, gcc-internal-format
 msgid "gfc_simplify_abs(): Bad type"
 msgstr ""
 
-#: fortran/simplify.c:750
+#: fortran/simplify.c:782
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of %s function at %L is negative"
 msgstr ""
 
-#: fortran/simplify.c:757
+#: fortran/simplify.c:789
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of %s function at %L outside of range [0,127]"
 msgstr ""
 
-#: fortran/simplify.c:775
+#: fortran/simplify.c:807
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Argument of %s function at %L is too large for the collating sequence of "
 "kind %d"
 msgstr ""
 
-#: fortran/simplify.c:812
+#: fortran/simplify.c:844
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of ACOS at %L must be between -1 and 1"
 msgstr ""
 
-#: fortran/simplify.c:826
+#: fortran/simplify.c:858
 #, gcc-internal-format
 msgid "in gfc_simplify_acos(): Bad type"
 msgstr ""
 
-#: fortran/simplify.c:845
+#: fortran/simplify.c:877
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of ACOSH at %L must not be less than 1"
 msgstr ""
 
-#: fortran/simplify.c:860
+#: fortran/simplify.c:892
 #, gcc-internal-format
 msgid "in gfc_simplify_acosh(): Bad type"
 msgstr ""
 
-#: fortran/simplify.c:1089
+#: fortran/simplify.c:1121
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of ASIN at %L must be between -1 and 1"
 msgstr ""
 
-#: fortran/simplify.c:1103
+#: fortran/simplify.c:1135
 #, gcc-internal-format
 msgid "in gfc_simplify_asin(): Bad type"
 msgstr ""
 
-#: fortran/simplify.c:1138
+#: fortran/simplify.c:1170
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of ACOSD at %L must be between -1 and 1"
 msgstr ""
 
-#: fortran/simplify.c:1164
+#: fortran/simplify.c:1196
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of ASIND at %L must be between -1 and 1"
 msgstr ""
 
-#: fortran/simplify.c:1216
+#: fortran/simplify.c:1248
 #, gcc-internal-format
 msgid "in gfc_simplify_asinh(): Bad type"
 msgstr ""
 
-#: fortran/simplify.c:1244
+#: fortran/simplify.c:1276
 #, gcc-internal-format
 msgid "in gfc_simplify_atan(): Bad type"
 msgstr ""
 
-#: fortran/simplify.c:1265
+#: fortran/simplify.c:1297
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of ATANH at %L must be inside the range -1 to 1"
 msgstr ""
 
-#: fortran/simplify.c:1279
+#: fortran/simplify.c:1311
 #, gcc-internal-format
 msgid "in gfc_simplify_atanh(): Bad type"
 msgstr ""
 
-#: fortran/simplify.c:1296
+#: fortran/simplify.c:1328
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "If first argument of ATAN2 at %L is zero, then the second argument must not "
 "be zero"
 msgstr ""
 
-#: fortran/simplify.c:1388
+#: fortran/simplify.c:1420
 #, gcc-internal-format, gfc-internal-format
 msgid "Result of BESSEL_YN is -INF at %L"
 msgstr ""
 
-#: fortran/simplify.c:1751
+#: fortran/simplify.c:1783
 #, gcc-internal-format
 msgid "gfc_simplify_dcmplx(): Bad type (x)"
 msgstr ""
 
-#: fortran/simplify.c:1770
+#: fortran/simplify.c:1802
 #, gcc-internal-format
 msgid "gfc_simplify_dcmplx(): Bad type (y)"
 msgstr ""
 
-#: fortran/simplify.c:1837
+#: fortran/simplify.c:1869
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "If first argument of ATAN2D at %L is zero, then the second argument must not "
 "be zero"
 msgstr ""
 
-#: fortran/simplify.c:1872
+#: fortran/simplify.c:1904
 #, gcc-internal-format
 msgid "in gfc_simplify_cos(): Bad type"
 msgstr ""
 
-#: fortran/simplify.c:2336
+#: fortran/simplify.c:2368
 #, gcc-internal-format
 msgid "gfc_simplify_dim(): Bad type"
 msgstr ""
 
-#: fortran/simplify.c:2907
+#: fortran/simplify.c:2939
 #, gcc-internal-format
 msgid "in gfc_simplify_exp(): Bad type"
 msgstr ""
 
-#: fortran/simplify.c:3121
+#: fortran/simplify.c:3153
 #, gcc-internal-format
 msgid "gfc_simplify_floor(): Bad kind"
 msgstr ""
 
-#: fortran/simplify.c:3234
+#: fortran/simplify.c:3266
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of IACHAR at %L must be of length one"
 msgstr ""
 
-#: fortran/simplify.c:3242
+#: fortran/simplify.c:3274
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of IACHAR function at %L outside of range 0..127"
 msgstr ""
 
-#: fortran/simplify.c:3357
+#: fortran/simplify.c:3389
 #, gcc-internal-format, gfc-internal-format
 msgid "Sum of second and third arguments of IBITS exceeds bit size at %L"
 msgstr ""
 
-#: fortran/simplify.c:3381
+#: fortran/simplify.c:3413
 #, gcc-internal-format
 msgid "IBITS: Bad bit"
 msgstr ""
 
-#: fortran/simplify.c:3432
+#: fortran/simplify.c:3464
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of ICHAR at %L must be of length one"
 msgstr ""
 
 #. Left shift, as in SHIFTL.
-#: fortran/simplify.c:3817 fortran/simplify.c:3825
+#: fortran/simplify.c:3849 fortran/simplify.c:3857
 #, gcc-internal-format, gfc-internal-format
 msgid "Second argument of %s is negative at %L"
 msgstr ""
 
-#: fortran/simplify.c:3837
+#: fortran/simplify.c:3869
 #, gcc-internal-format, gfc-internal-format
 msgid "Magnitude of second argument of %s exceeds bit size at %L"
 msgstr ""
 
-#: fortran/simplify.c:3962
+#: fortran/simplify.c:3994
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Magnitude of second argument of ISHFTC exceeds BIT_SIZE of first argument at "
 "%C"
 msgstr ""
 
-#: fortran/simplify.c:3965
+#: fortran/simplify.c:3997
 #, gcc-internal-format, gfc-internal-format
 msgid "Absolute value of SHIFT shall be less than or equal to SIZE at %C"
 msgstr ""
 
-#: fortran/simplify.c:4296 fortran/simplify.c:4429
+#: fortran/simplify.c:4328 fortran/simplify.c:4461
 #, gcc-internal-format, gfc-internal-format
 msgid "DIM argument at %L is out of bounds"
 msgstr ""
 
-#: fortran/simplify.c:4612
+#: fortran/simplify.c:4644
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of LOG at %L cannot be less than or equal to zero"
 msgstr ""
 
-#: fortran/simplify.c:4625
+#: fortran/simplify.c:4657
 #, gcc-internal-format, gfc-internal-format
 msgid "Complex argument of LOG at %L cannot be zero"
 msgstr ""
 
-#: fortran/simplify.c:4636
+#: fortran/simplify.c:4668
 #, gcc-internal-format
 msgid "gfc_simplify_log: bad type"
 msgstr ""
 
-#: fortran/simplify.c:4653
+#: fortran/simplify.c:4685
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of LOG10 at %L cannot be less than or equal to zero"
 msgstr ""
 
-#: fortran/simplify.c:4981
+#: fortran/simplify.c:5017
 #, gcc-internal-format
 msgid "simplify_min_max(): Bad type in arglist"
 msgstr ""
 
-#: fortran/simplify.c:5889 fortran/simplify.c:5897
+#: fortran/simplify.c:5925 fortran/simplify.c:5933
 #, gcc-internal-format
 msgid "Argument %qs of MOD at %L shall not be zero"
 msgstr ""
 
-#: fortran/simplify.c:5903
+#: fortran/simplify.c:5939
 #, gcc-internal-format
 msgid "gfc_simplify_mod(): Bad arguments"
 msgstr ""
 
-#: fortran/simplify.c:5941 fortran/simplify.c:5949
+#: fortran/simplify.c:5977 fortran/simplify.c:5985
 #, gcc-internal-format
 msgid "Argument %qs of MODULO at %L shall not be zero"
 msgstr ""
 
-#: fortran/simplify.c:5955
+#: fortran/simplify.c:5991
 #, gcc-internal-format
 msgid "gfc_simplify_modulo(): Bad arguments"
 msgstr ""
 
-#: fortran/simplify.c:6027
+#: fortran/simplify.c:6063
 #, gcc-internal-format, gfc-internal-format
 msgid "Result of NEAREST is NaN at %L"
 msgstr ""
 
-#: fortran/simplify.c:6604
+#: fortran/simplify.c:6640
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument NCOPIES of REPEAT intrinsic is negative at %L"
 msgstr ""
 
-#: fortran/simplify.c:6660
+#: fortran/simplify.c:6696
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument NCOPIES of REPEAT intrinsic is too large at %L"
 msgstr ""
 
-#: fortran/simplify.c:6697
+#: fortran/simplify.c:6733
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Evaluation of string longer than 2**28 at %L deferred to runtime, expect bugs"
 msgstr ""
 
-#: fortran/simplify.c:6772
+#: fortran/simplify.c:6809
 #, gcc-internal-format, gfc-internal-format
 msgid "Shapes of ORDER at %L and SHAPE at %L are different"
 msgstr ""
 
-#: fortran/simplify.c:6785
+#: fortran/simplify.c:6822
 #, gcc-internal-format, gfc-internal-format
 msgid "Sizes of ORDER at %L and SHAPE at %L are different"
 msgstr ""
 
-#: fortran/simplify.c:6799
+#: fortran/simplify.c:6836
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Element with a value of %d in ORDER at %L must be in the range [1, ..., %d] "
 "for the RESHAPE intrinsic near %L"
 msgstr ""
 
-#: fortran/simplify.c:6809
+#: fortran/simplify.c:6846
 #, gcc-internal-format, gfc-internal-format
 msgid "ORDER at %L is not a permutation of the size of SHAPE at %L"
 msgstr ""
 
-#: fortran/simplify.c:6861
+#: fortran/simplify.c:6905
 #, gcc-internal-format, gfc-internal-format
 msgid "Reshaped array too large at %C"
 msgstr ""
 
-#: fortran/simplify.c:6975
+#: fortran/simplify.c:7021
 #, gcc-internal-format, gfc-internal-format
 msgid "Result of SCALE overflows its kind at %L"
 msgstr ""
 
-#: fortran/simplify.c:7559
+#: fortran/simplify.c:7605
 #, gcc-internal-format
 msgid "Bad type in gfc_simplify_sign"
 msgstr ""
 
-#: fortran/simplify.c:7588
+#: fortran/simplify.c:7634
 #, gcc-internal-format
 msgid "in gfc_simplify_sin(): Bad type"
 msgstr ""
 
-#: fortran/simplify.c:7726 fortran/simplify.c:8009
+#: fortran/simplify.c:7772 fortran/simplify.c:8055
 #, gcc-internal-format
 msgid "Failure getting length of a constant array."
 msgstr ""
 
-#: fortran/simplify.c:7736
+#: fortran/simplify.c:7782
 #, gcc-internal-format
 msgid ""
 "The number of elements (%d) in the array constructor at %L requires an "
@@ -72803,42 +74943,42 @@ msgid ""
 "option."
 msgstr ""
 
-#: fortran/simplify.c:7803
+#: fortran/simplify.c:7849
 #, gcc-internal-format, gfc-internal-format
 msgid "Simplification of SPREAD at %C not yet implemented"
 msgstr ""
 
-#: fortran/simplify.c:7827
+#: fortran/simplify.c:7873
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of SQRT at %L has a negative value"
 msgstr ""
 
-#: fortran/simplify.c:7843
+#: fortran/simplify.c:7889
 #, gcc-internal-format, gfc-internal-format
 msgid "invalid argument of SQRT at %L"
 msgstr ""
 
-#: fortran/simplify.c:8176
+#: fortran/simplify.c:8222
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Out of bounds in IMAGE_INDEX at %L for dimension %d, SUB has %ld and COARRAY "
 "lower bound is %ld)"
 msgstr ""
 
-#: fortran/simplify.c:8199
+#: fortran/simplify.c:8245
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Out of bounds in IMAGE_INDEX at %L for dimension %d, SUB has %ld and COARRAY "
 "upper bound is %ld)"
 msgstr ""
 
-#: fortran/simplify.c:8683
+#: fortran/simplify.c:8729
 #, gcc-internal-format
 msgid ""
 "Character %qs in string at %L cannot be converted into character kind %d"
 msgstr ""
 
-#: fortran/st.c:280
+#: fortran/st.c:281
 #, gcc-internal-format
 msgid "gfc_free_statement(): Bad statement"
 msgstr ""
@@ -73253,7 +75393,7 @@ msgid ""
 "BIND(C)"
 msgstr ""
 
-#: fortran/symbol.c:5032 fortran/symbol.c:5037
+#: fortran/symbol.c:5049 fortran/symbol.c:5054
 #, gcc-internal-format
 msgid "Symbol %qs is used before it is typed at %L"
 msgstr ""
@@ -73285,19 +75425,19 @@ msgstr ""
 
 #. Problems occur when we get something like
 #. integer :: a(lots) = (/(i, i=1, lots)/)
-#: fortran/trans-array.c:6075
+#: fortran/trans-array.c:6168
 #, 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.c:8079
+#: fortran/trans-array.c:8195
 #, gcc-internal-format
 msgid "Creating array temporary at %L for argument %qs"
 msgstr ""
 
-#: fortran/trans-array.c:11183
+#: fortran/trans-array.c:11383
 #, gcc-internal-format, gfc-internal-format
 msgid "bad expression type during walk (%d)"
 msgstr ""
@@ -73309,77 +75449,77 @@ msgid ""
 "%lu bytes)"
 msgstr ""
 
-#: fortran/trans-common.c:790
+#: fortran/trans-common.c:811
 #, gcc-internal-format
 msgid "get_mpz(): Not an integer constant"
 msgstr ""
 
-#: fortran/trans-common.c:818
+#: fortran/trans-common.c:839
 #, gcc-internal-format
 msgid "element_number(): Bad dimension type"
 msgstr ""
 
-#: fortran/trans-common.c:888
+#: fortran/trans-common.c:909
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad array reference at %L"
 msgstr ""
 
-#: fortran/trans-common.c:896
+#: fortran/trans-common.c:917
 #, gcc-internal-format, gfc-internal-format
 msgid "Illegal reference type at %L as EQUIVALENCE object"
 msgstr ""
 
-#: fortran/trans-common.c:936
+#: fortran/trans-common.c:957
 #, gcc-internal-format
 msgid "Inconsistent equivalence rules involving %qs at %L and %qs at %L"
 msgstr ""
 
 #. Aligning this field would misalign a previous field.
-#: fortran/trans-common.c:1125
+#: fortran/trans-common.c:1146
 #, gcc-internal-format
 msgid ""
 "The equivalence set for variable %qs declared at %L violates alignment "
 "requirements"
 msgstr ""
 
-#: fortran/trans-common.c:1190
+#: fortran/trans-common.c:1211
 #, gcc-internal-format
 msgid "Equivalence for %qs does not match ordering of COMMON %qs at %L"
 msgstr ""
 
-#: fortran/trans-common.c:1205
+#: fortran/trans-common.c:1226
 #, gcc-internal-format
 msgid ""
 "The equivalence set for %qs cause an invalid extension to COMMON %qs at %L"
 msgstr ""
 
-#: fortran/trans-common.c:1221
+#: fortran/trans-common.c:1242
 #, gcc-internal-format
 msgid ""
 "Padding of %d bytes required before %qs in COMMON %qs at %L; reorder "
 "elements or use %<-fno-align-commons%>"
 msgstr ""
 
-#: fortran/trans-common.c:1227
+#: fortran/trans-common.c:1248
 #, gcc-internal-format
 msgid ""
 "Padding of %d bytes required before %qs in COMMON at %L; reorder elements or "
 "use %<-fno-align-commons%>"
 msgstr ""
 
-#: fortran/trans-common.c:1248
+#: fortran/trans-common.c:1269
 #, gcc-internal-format
 msgid "COMMON %qs at %L does not exist"
 msgstr ""
 
-#: fortran/trans-common.c:1257
+#: fortran/trans-common.c:1278
 #, gcc-internal-format
 msgid ""
 "COMMON %qs at %L requires %d bytes of padding; reorder elements or use %<-"
 "fno-align-commons%>"
 msgstr ""
 
-#: fortran/trans-common.c:1262
+#: fortran/trans-common.c:1283
 #, gcc-internal-format
 msgid ""
 "COMMON at %L requires %d bytes of padding; reorder elements or use %<-fno-"
@@ -73396,7 +75536,7 @@ msgstr ""
 msgid "non-constant initialization expression at %L"
 msgstr ""
 
-#: fortran/trans-decl.c:752
+#: fortran/trans-decl.c:753
 #, gcc-internal-format
 msgid ""
 "Array %qs at %L is larger than limit set by %<-fmax-stack-var-size=%>, moved "
@@ -73406,135 +75546,140 @@ msgid ""
 "code to use an ALLOCATABLE array."
 msgstr ""
 
-#: fortran/trans-decl.c:1743
+#: fortran/trans-decl.c:1763
 #, gcc-internal-format
 msgid "intrinsic variable which isn't a procedure"
 msgstr ""
 
-#: fortran/trans-decl.c:4555 fortran/trans-decl.c:6918
+#: fortran/trans-decl.c:4594 fortran/trans-decl.c:6958
 #, gcc-internal-format
 msgid "Return value of function %qs at %L not set"
 msgstr ""
 
-#: fortran/trans-decl.c:5043
+#: fortran/trans-decl.c:5082
 #, gcc-internal-format
 msgid "Deferred type parameter not yet supported"
 msgstr ""
 
-#: fortran/trans-decl.c:5283
+#: fortran/trans-decl.c:5322
 #, gcc-internal-format
 msgid "backend decl for module variable %qs already exists"
 msgstr ""
 
-#: fortran/trans-decl.c:5296
+#: fortran/trans-decl.c:5335
 #, gcc-internal-format
 msgid "Unused PRIVATE module variable %qs declared at %L"
 msgstr ""
 
-#: fortran/trans-decl.c:5921
+#: fortran/trans-decl.c:5960
 #, gcc-internal-format
 msgid "Dummy argument %qs at %L was declared INTENT(OUT) but was not set"
 msgstr ""
 
-#: fortran/trans-decl.c:5927
+#: fortran/trans-decl.c:5966
 #, 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.c:5938 fortran/trans-decl.c:6084
+#: fortran/trans-decl.c:5977 fortran/trans-decl.c:6123
 #, gcc-internal-format
 msgid "Unused dummy argument %qs at %L"
 msgstr ""
 
-#: fortran/trans-decl.c:5954
+#: fortran/trans-decl.c:5993
 #, gcc-internal-format
 msgid "Unused module variable %qs which has been explicitly imported at %L"
 msgstr ""
 
-#: fortran/trans-decl.c:5973
+#: fortran/trans-decl.c:6012
 #, gcc-internal-format
 msgid "Unused variable %qs declared at %L"
 msgstr ""
 
-#: fortran/trans-decl.c:6022
+#: fortran/trans-decl.c:6061
 #, gcc-internal-format
 msgid "Unused parameter %qs declared at %L"
 msgstr ""
 
-#: fortran/trans-decl.c:6026
+#: fortran/trans-decl.c:6065
 #, gcc-internal-format
 msgid "Unused parameter %qs which has been explicitly imported at %L"
 msgstr ""
 
-#: fortran/trans-decl.c:6056
+#: fortran/trans-decl.c:6095
 #, gcc-internal-format
 msgid "Return value %qs of function %qs declared at %L not set"
 msgstr ""
 
-#: fortran/trans-decl.c:6647
+#: fortran/trans-decl.c:6687
 #, gcc-internal-format, gfc-internal-format
 msgid "Sorry, !$ACC DECLARE at %L is not allowed in BLOCK construct"
 msgstr ""
 
-#: fortran/trans-expr.c:957
+#: fortran/trans-expr.c:1016
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot compute the length of the char array at %L."
 msgstr ""
 
-#: fortran/trans-expr.c:1620
+#: fortran/trans-expr.c:1784
 #, gcc-internal-format, gfc-internal-format
 msgid "Code for reallocating the allocatable variable at %L will be added"
 msgstr ""
 
-#: fortran/trans-expr.c:1937
+#: fortran/trans-expr.c:2101
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Sorry, coindexed access to an unlimited polymorphic object at %L is not "
 "supported"
 msgstr ""
 
-#: fortran/trans-expr.c:1946
+#: fortran/trans-expr.c:2110
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "Sorry, coindexed access to an unlimited polymorphic component at %L is not "
 "supported"
 msgstr ""
 
-#: fortran/trans-expr.c:3615
+#: fortran/trans-expr.c:3779
 #, gcc-internal-format
 msgid "Unknown intrinsic op"
 msgstr ""
 
-#: fortran/trans-expr.c:5114
+#: fortran/trans-expr.c:5278
 #, gcc-internal-format, gfc-internal-format
 msgid "Unknown argument list function at %L"
 msgstr ""
 
-#: fortran/trans-expr.c:9252
+#: fortran/trans-expr.c:9471
 #, gcc-internal-format, gfc-internal-format
 msgid ""
 "If bounds remapping is specified at %L, the pointer target shall not be NULL"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:929
+#: fortran/trans-intrinsic.c:408
+#, gcc-internal-format, gfc-internal-format
+msgid "Could not find real kind with at least %d bits"
+msgstr ""
+
+#: fortran/trans-intrinsic.c:944
 #, gcc-internal-format
 msgid "Intrinsic function %qs (%d) not recognized"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:2434 fortran/trans-intrinsic.c:2981
-#: fortran/trans-intrinsic.c:3201
+#: fortran/trans-intrinsic.c:2449 fortran/trans-intrinsic.c:2996
+#: fortran/trans-intrinsic.c:3216
 #, gcc-internal-format
 msgid "%<dim%> argument of %s intrinsic at %L is not a valid dimension index"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:11666 fortran/trans-stmt.c:1066
+#: fortran/trans-intrinsic.c:11871 fortran/trans-stmt.c:1093
 #, gcc-internal-format, gfc-internal-format
 msgid "Sorry, the event component of derived type at %L is not yet supported"
 msgstr ""
 
-#: fortran/trans-intrinsic.c:11673
+#: fortran/trans-intrinsic.c:11878
 #, gcc-internal-format, gfc-internal-format
 msgid "The event variable at %L shall not be coindexed"
 msgstr ""
@@ -73549,112 +75694,112 @@ msgstr ""
 msgid "Bad IO basetype (%d)"
 msgstr ""
 
-#: fortran/trans-openmp.c:1285
+#: fortran/trans-openmp.c:1302
 #, gcc-internal-format
 msgid "implicit mapping of assumed size array %qD"
 msgstr ""
 
-#: fortran/trans-openmp.c:2611
+#: fortran/trans-openmp.c:2687
 #, gcc-internal-format
 msgid "optional class parameter"
 msgstr ""
 
-#: fortran/trans-openmp.c:2902
+#: fortran/trans-openmp.c:2991
 #, gcc-internal-format
 msgid "unhandled derived-type component"
 msgstr ""
 
-#: fortran/trans-openmp.c:5772
+#: fortran/trans-openmp.c:6006
 #, gcc-internal-format
 msgid "gfc_trans_omp_workshare(): Bad statement code"
 msgstr ""
 
-#: fortran/trans-stmt.c:546
+#: fortran/trans-stmt.c:574
 #, gcc-internal-format, gfc-internal-format
 msgid "An alternate return at %L without a * dummy argument"
 msgstr ""
 
-#: fortran/trans-stmt.c:870
+#: fortran/trans-stmt.c:897
 #, gcc-internal-format, gfc-internal-format
 msgid "Sorry, the lock component of derived type at %L is not yet supported"
 msgstr ""
 
-#: fortran/trans-stmt.c:1327
+#: fortran/trans-stmt.c:1354
 #, gcc-internal-format, gfc-internal-format
 msgid "Sorry, only support for integer kind %d implemented for image-set at %L"
 msgstr ""
 
-#: fortran/trans-stmt.c:3593
+#: fortran/trans-stmt.c:3621
 #, gcc-internal-format
 msgid "gfc_trans_select(): Bad type for case expr."
 msgstr ""
 
-#: fortran/trans-types.c:518
+#: fortran/trans-types.c:520
 #, gcc-internal-format
 msgid "INTEGER(KIND=8) is not available for %<-fdefault-integer-8%> option"
 msgstr ""
 
-#: fortran/trans-types.c:527
+#: fortran/trans-types.c:529
 #, gcc-internal-format
 msgid "INTEGER(KIND=8) is not available for %<-finteger-4-integer-8%> option"
 msgstr ""
 
-#: fortran/trans-types.c:546
+#: fortran/trans-types.c:548
 #, gcc-internal-format
 msgid "REAL(KIND=8) is not available for %<-fdefault-real-8%> option"
 msgstr ""
 
-#: fortran/trans-types.c:554
+#: fortran/trans-types.c:556
 #, gcc-internal-format
 msgid "REAL(KIND=10) is not available for %<-fdefault-real-10%> option"
 msgstr ""
 
-#: fortran/trans-types.c:562
+#: fortran/trans-types.c:564
 #, gcc-internal-format
 msgid "REAL(KIND=16) is not available for %<-fdefault-real-16%> option"
 msgstr ""
 
-#: fortran/trans-types.c:570
+#: fortran/trans-types.c:572
 #, gcc-internal-format
 msgid "REAL(KIND=8) is not available for %<-freal-4-real-8%> option"
 msgstr ""
 
-#: fortran/trans-types.c:578
+#: fortran/trans-types.c:580
 #, gcc-internal-format
 msgid "REAL(KIND=10) is not available for %<-freal-4-real-10%> option"
 msgstr ""
 
-#: fortran/trans-types.c:586
+#: fortran/trans-types.c:588
 #, gcc-internal-format
 msgid "REAL(KIND=16) is not available for %<-freal-4-real-16%> option"
 msgstr ""
 
-#: fortran/trans-types.c:617
+#: fortran/trans-types.c:619
 #, gcc-internal-format
 msgid "REAL(KIND=4) is not available for %<-freal-8-real-4%> option"
 msgstr ""
 
-#: fortran/trans-types.c:625
+#: fortran/trans-types.c:627
 #, gcc-internal-format
 msgid "REAL(KIND=10) is not available for %<-freal-8-real-10%> option"
 msgstr ""
 
-#: fortran/trans-types.c:633
+#: fortran/trans-types.c:635
 #, gcc-internal-format
 msgid "REAL(KIND=10) is not available for %<-freal-8-real-16%> option"
 msgstr ""
 
-#: fortran/trans-types.c:773
+#: fortran/trans-types.c:777
 #, gcc-internal-format
 msgid "gfc_validate_kind(): Got bad type"
 msgstr ""
 
-#: fortran/trans-types.c:777
+#: fortran/trans-types.c:781
 #, gcc-internal-format
 msgid "gfc_validate_kind(): Got bad kind"
 msgstr ""
 
-#: fortran/trans.c:2162
+#: fortran/trans.c:2220
 #, gcc-internal-format
 msgid "gfc_trans_code(): Bad statement code"
 msgstr ""
@@ -73679,67 +75824,67 @@ msgstr ""
 msgid "unable to open file"
 msgstr ""
 
-#: lto/lto-common.c:2016
+#: lto/lto-common.c:2017
 #, gcc-internal-format
 msgid "bytecode stream: garbage at the end of symbols section"
 msgstr ""
 
-#: lto/lto-common.c:2043
+#: lto/lto-common.c:2044
 #, gcc-internal-format
 msgid "could not parse hex number"
 msgstr ""
 
-#: lto/lto-common.c:2075
+#: lto/lto-common.c:2076
 #, gcc-internal-format, gfc-internal-format
 msgid "unexpected file name %s in linker resolution file. Expected %s"
 msgstr ""
 
-#: lto/lto-common.c:2084
+#: lto/lto-common.c:2085
 #, gcc-internal-format
 msgid "could not parse file offset"
 msgstr ""
 
-#: lto/lto-common.c:2087
+#: lto/lto-common.c:2088
 #, gcc-internal-format
 msgid "unexpected offset"
 msgstr ""
 
-#: lto/lto-common.c:2109
+#: lto/lto-common.c:2110
 #, gcc-internal-format
 msgid "invalid line in the resolution file"
 msgstr ""
 
-#: lto/lto-common.c:2120
+#: lto/lto-common.c:2121
 #, gcc-internal-format
 msgid "invalid resolution in the resolution file"
 msgstr ""
 
-#: lto/lto-common.c:2126
+#: lto/lto-common.c:2127
 #, gcc-internal-format
 msgid "resolution sub id %wx not in object file"
 msgstr ""
 
-#: lto/lto-common.c:2243
+#: lto/lto-common.c:2244
 #, gcc-internal-format
 msgid "bytecode stream in file %qs generated with GCC compiler older than 10.0"
 msgstr ""
 
-#: lto/lto-common.c:2262
+#: lto/lto-common.c:2263
 #, gcc-internal-format
 msgid "cannot read %<LTO_section_decls%> from %s"
 msgstr ""
 
-#: lto/lto-common.c:2383
+#: lto/lto-common.c:2384
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot open %s"
 msgstr ""
 
-#: lto/lto-common.c:2404
+#: lto/lto-common.c:2405
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot map %s"
 msgstr ""
 
-#: lto/lto-common.c:2415
+#: lto/lto-common.c:2416
 #, gcc-internal-format, gfc-internal-format
 msgid "Cannot read %s"
 msgstr ""
@@ -73919,7 +76064,7 @@ msgstr ""
 msgid "closing LTRANS output list %s: %m"
 msgstr ""
 
-#: objc/objc-act.c:425 objc/objc-act.c:6802
+#: objc/objc-act.c:425 objc/objc-act.c:6952
 #, gcc-internal-format
 msgid "%<@end%> missing in implementation context"
 msgstr ""
@@ -73991,138 +76136,162 @@ msgstr ""
 msgid "%<@required%> is allowed in @protocol context only"
 msgstr ""
 
-#: objc/objc-act.c:837
+#. FIXME: we probably ought to bail out at this point.
+#: objc/objc-act.c:853
 #, gcc-internal-format
 msgid "%<@property%> is not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.c:841
+#: objc/objc-act.c:858
 #, gcc-internal-format
-msgid "%<readonly%> attribute conflicts with %<readwrite%> attribute"
+msgid ""
+"property declaration not in %<@interface%>, %<@protocol%> or %<category%> "
+"context"
 msgstr ""
 
-#: objc/objc-act.c:858
+#: objc/objc-act.c:869
 #, gcc-internal-format
-msgid "%<readonly%> attribute conflicts with %<setter%> attribute"
+msgid "properties must be named"
 msgstr ""
 
-#: objc/objc-act.c:864
+#: objc/objc-act.c:877
 #, gcc-internal-format
-msgid "%<assign%> attribute conflicts with %<retain%> attribute"
+msgid "property cannot be an array"
 msgstr ""
 
-#: objc/objc-act.c:869
+#. A @property is not an actual variable, but it is a way to
+#. describe a pair of accessor methods, so its type (which is
+#. the type of the return value of the getter and the first
+#. argument of the setter) can't be a bitfield (as return values
+#. and arguments of functions cannot be bitfields).  The
+#. underlying instance variable could be a bitfield, but that is
+#. a different matter.
+#: objc/objc-act.c:890
 #, gcc-internal-format
-msgid "%<assign%> attribute conflicts with %<copy%> attribute"
+msgid "property cannot be a bit-field"
 msgstr ""
 
-#: objc/objc-act.c:874
+#: objc/objc-act.c:914
 #, gcc-internal-format
-msgid "%<retain%> attribute conflicts with %<copy%> attribute"
+msgid "multiple property %qE methods specified, the latest one will be used"
 msgstr ""
 
-#: objc/objc-act.c:891
+#: objc/objc-act.c:916
 #, gcc-internal-format
-msgid "property declaration not in @interface or @protocol context"
+msgid "previous specification"
 msgstr ""
 
-#: objc/objc-act.c:902
+#: objc/objc-act.c:931
 #, gcc-internal-format
-msgid "invalid property declaration"
+msgid "%qE attribute conflicts with %qE attribute"
 msgstr ""
 
-#: objc/objc-act.c:910
+#: objc/objc-act.c:933
 #, gcc-internal-format
-msgid "property cannot be an array"
+msgid "%qE specified here"
 msgstr ""
 
-#. A @property is not an actual variable, but it is a way to
-#. describe a pair of accessor methods, so its type (which is
-#. the type of the return value of the getter and the first
-#. argument of the setter) can't be a bitfield (as return values
-#. and arguments of functions cannot be bitfields).  The
-#. underlying instance variable could be a bitfield, but that is
-#. a different matter.
-#: objc/objc-act.c:928
+#: objc/objc-act.c:939
 #, gcc-internal-format
-msgid "property cannot be a bit-field"
+msgid "duplicate %qE attribute"
+msgstr ""
+
+#: objc/objc-act.c:940
+#, gcc-internal-format
+msgid "first specified here"
+msgstr ""
+
+#: objc/objc-act.c:967
+#, gcc-internal-format
+msgid "%<readonly%> attribute conflicts with %<setter%> attribute"
+msgstr ""
+
+#: objc/objc-act.c:970
+#, gcc-internal-format
+msgid "%<setter%> specified here"
 msgstr ""
 
-#: objc/objc-act.c:960
+#: objc/objc-act.c:1049
 #, gcc-internal-format
 msgid ""
 "object property %qD has no %<assign%>, %<retain%> or %<copy%> attribute; "
 "assuming %<assign%>"
 msgstr ""
 
-#: objc/objc-act.c:963
+#: objc/objc-act.c:1052
 #, gcc-internal-format
 msgid ""
 "%<assign%> can be unsafe for Objective-C objects; please state explicitly if "
 "you need it"
 msgstr ""
 
-#: objc/objc-act.c:970
-#, gcc-internal-format
-msgid "%<retain%> attribute is only valid for Objective-C objects"
-msgstr ""
-
-#: objc/objc-act.c:974
+#: objc/objc-act.c:1069
 #, gcc-internal-format
-msgid "%<copy%> attribute is only valid for Objective-C objects"
+msgid "%qE attribute is only valid for Objective-C objects"
 msgstr ""
 
-#: objc/objc-act.c:1028
+#: objc/objc-act.c:1127
 #, gcc-internal-format
 msgid "redeclaration of property %qD"
 msgstr ""
 
-#: objc/objc-act.c:1031 objc/objc-act.c:1097 objc/objc-act.c:1108
-#: objc/objc-act.c:1122 objc/objc-act.c:1133 objc/objc-act.c:1145
-#: objc/objc-act.c:1182 objc/objc-act.c:7573 objc/objc-act.c:7636
-#: objc/objc-act.c:7659 objc/objc-act.c:7673 objc/objc-act.c:7691
-#: objc/objc-act.c:7790
+#: objc/objc-act.c:1130 objc/objc-act.c:1196 objc/objc-act.c:1207
+#: objc/objc-act.c:1221 objc/objc-act.c:1232 objc/objc-act.c:1244
+#: objc/objc-act.c:1281 objc/objc-act.c:7733 objc/objc-act.c:7796
+#: objc/objc-act.c:7819 objc/objc-act.c:7833 objc/objc-act.c:7851
+#: objc/objc-act.c:7950
 #, gcc-internal-format
 msgid "originally specified here"
 msgstr ""
 
-#: objc/objc-act.c:1093
+#: objc/objc-act.c:1192
 #, gcc-internal-format
 msgid ""
 "%<nonatomic%> attribute of property %qD conflicts with previous declaration"
 msgstr ""
 
-#: objc/objc-act.c:1104
+#: objc/objc-act.c:1203
 #, gcc-internal-format
 msgid ""
 "%<getter%> attribute of property %qD conflicts with previous declaration"
 msgstr ""
 
-#: objc/objc-act.c:1118
+#: objc/objc-act.c:1217
 #, gcc-internal-format
 msgid ""
 "%<setter%> attribute of property %qD conflicts with previous declaration"
 msgstr ""
 
-#: objc/objc-act.c:1130
+#: objc/objc-act.c:1229
 #, gcc-internal-format
 msgid ""
 "assign semantics attributes of property %qD conflict with previous "
 "declaration"
 msgstr ""
 
-#: objc/objc-act.c:1141
+#: objc/objc-act.c:1240
 #, gcc-internal-format
 msgid ""
 "%<readonly%> attribute of property %qD conflicts with previous declaration"
 msgstr ""
 
-#: objc/objc-act.c:1180
+#: objc/objc-act.c:1279
 #, gcc-internal-format
 msgid "type of property %qD conflicts with previous declaration"
 msgstr ""
 
-#: objc/objc-act.c:1655
+#: objc/objc-act.c:1321
+#, gcc-internal-format
+msgid "nullability specifier %qE cannot be applied to non-pointer type %qT"
+msgstr ""
+
+#: objc/objc-act.c:1326
+#, gcc-internal-format
+msgid ""
+"nullability specifier %qE cannot be applied to multi-level pointer type %qT"
+msgstr ""
+
+#: objc/objc-act.c:1778
 #, gcc-internal-format
 msgid "the dot syntax is not available in Objective-C 1.0"
 msgstr ""
@@ -74130,93 +76299,93 @@ 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.c:1671
+#: objc/objc-act.c:1794
 #, gcc-internal-format
 msgid "could not find class %qE"
 msgstr ""
 
 #. Again, this should never happen, but we do check.
-#: objc/objc-act.c:1679
+#: objc/objc-act.c:1802
 #, gcc-internal-format
 msgid "could not find interface for class %qE"
 msgstr ""
 
-#: objc/objc-act.c:1685 objc/objc-act.c:6839 objc/objc-act.c:6970
+#: objc/objc-act.c:1808 objc/objc-act.c:6989 objc/objc-act.c:7130
 #, gcc-internal-format
 msgid "class %qE is deprecated"
 msgstr ""
 
-#: objc/objc-act.c:1714
+#: objc/objc-act.c:1837
 #, gcc-internal-format
 msgid "could not find setter/getter for %qE in class %qE"
 msgstr ""
 
-#: objc/objc-act.c:1750
+#: objc/objc-act.c:1887
 #, gcc-internal-format
 msgid "%qs property cannot be set"
 msgstr ""
 
-#: objc/objc-act.c:2021
+#: objc/objc-act.c:2158
 #, gcc-internal-format
 msgid "method declaration not in @interface context"
 msgstr ""
 
-#: objc/objc-act.c:2025
+#: objc/objc-act.c:2162
 #, gcc-internal-format
 msgid "method attributes are not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.c:2045
+#: objc/objc-act.c:2182
 #, gcc-internal-format
 msgid "method definition not in @implementation context"
 msgstr ""
 
-#: objc/objc-act.c:2060
+#: objc/objc-act.c:2195
 #, gcc-internal-format
 msgid "method attributes cannot be specified in @implementation context"
 msgstr ""
 
-#: objc/objc-act.c:2289
+#: objc/objc-act.c:2424
 #, gcc-internal-format
 msgid "class %qs does not implement the %qE protocol"
 msgstr ""
 
-#: objc/objc-act.c:2292
+#: objc/objc-act.c:2427
 #, gcc-internal-format
 msgid "type %qs does not conform to the %qE protocol"
 msgstr ""
 
-#: objc/objc-act.c:2573
+#: objc/objc-act.c:2722
 #, gcc-internal-format
 msgid "comparison of distinct Objective-C types lacks a cast"
 msgstr ""
 
-#: objc/objc-act.c:2577
+#: objc/objc-act.c:2726
 #, gcc-internal-format
 msgid "initialization from distinct Objective-C type"
 msgstr ""
 
-#: objc/objc-act.c:2581
+#: objc/objc-act.c:2730
 #, gcc-internal-format
 msgid "assignment from distinct Objective-C type"
 msgstr ""
 
-#: objc/objc-act.c:2585
+#: objc/objc-act.c:2734
 #, gcc-internal-format
 msgid "distinct Objective-C type in return"
 msgstr ""
 
-#: objc/objc-act.c:2589
+#: objc/objc-act.c:2738
 #, gcc-internal-format
 msgid "passing argument %d of %qE from distinct Objective-C type"
 msgstr ""
 
-#: objc/objc-act.c:2732
+#: objc/objc-act.c:2881
 #, gcc-internal-format
 msgid "statically allocated instance of Objective-C class %qE"
 msgstr ""
 
-#: objc/objc-act.c:2741
+#: objc/objc-act.c:2890
 #, gcc-internal-format
 msgid "redeclaration of Objective-C class %qs"
 msgstr ""
@@ -74228,186 +76397,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.c:2783
+#: objc/objc-act.c:2932
 #, gcc-internal-format
 msgid "only Objective-C object types can be qualified with a protocol"
 msgstr ""
 
-#: objc/objc-act.c:2847
+#: objc/objc-act.c:2996
 #, gcc-internal-format
 msgid "protocol %qE has circular dependency"
 msgstr ""
 
-#: objc/objc-act.c:2880 objc/objc-act.c:5703
+#: objc/objc-act.c:3029 objc/objc-act.c:5853
 #, gcc-internal-format
 msgid "cannot find protocol declaration for %qE"
 msgstr ""
 
-#: objc/objc-act.c:3189 objc/objc-act.c:3844 objc/objc-act.c:6415
-#: objc/objc-act.c:6890 objc/objc-act.c:6963 objc/objc-act.c:7016
+#: objc/objc-act.c:3339 objc/objc-act.c:3994 objc/objc-act.c:6565
+#: objc/objc-act.c:7040 objc/objc-act.c:7123 objc/objc-act.c:7176
 #, gcc-internal-format
 msgid "cannot find interface declaration for %qE"
 msgstr ""
 
-#: objc/objc-act.c:3193
+#: objc/objc-act.c:3343
 #, gcc-internal-format
 msgid "interface %qE does not have valid constant string layout"
 msgstr ""
 
-#: objc/objc-act.c:3198
+#: objc/objc-act.c:3348
 #, gcc-internal-format
 msgid "cannot find reference tag for class %qE"
 msgstr ""
 
-#: objc/objc-act.c:3343
+#: objc/objc-act.c:3493
 #, gcc-internal-format
 msgid "%qE is not an Objective-C class name or alias"
 msgstr ""
 
-#: objc/objc-act.c:3358 objc/objc-act.c:3389 objc/objc-act.c:6796
-#: objc/objc-act.c:8121 objc/objc-act.c:8172
+#: objc/objc-act.c:3508 objc/objc-act.c:3539 objc/objc-act.c:6946
+#: objc/objc-act.c:8281 objc/objc-act.c:8332
 #, gcc-internal-format
 msgid "Objective-C declarations may only appear in global scope"
 msgstr ""
 
-#: objc/objc-act.c:3363
+#: objc/objc-act.c:3513
 #, gcc-internal-format
 msgid "cannot find class %qE"
 msgstr ""
 
-#: objc/objc-act.c:3365
+#: objc/objc-act.c:3515
 #, gcc-internal-format
 msgid "class %qE already exists"
 msgstr ""
 
-#: objc/objc-act.c:3407 objc/objc-act.c:6855
+#: objc/objc-act.c:3557 objc/objc-act.c:7005
 #, gcc-internal-format
 msgid "%qE redeclared as different kind of symbol"
 msgstr ""
 
-#: objc/objc-act.c:3409 objc/objc-act.c:3995 objc/objc-act.c:4023
-#: objc/objc-act.c:4078 objc/objc-act.c:6857
+#: objc/objc-act.c:3559 objc/objc-act.c:4145 objc/objc-act.c:4173
+#: objc/objc-act.c:4228 objc/objc-act.c:7007
 #, gcc-internal-format
 msgid "previous declaration of %q+D"
 msgstr ""
 
-#: objc/objc-act.c:3698
+#: objc/objc-act.c:3848
 #, gcc-internal-format
 msgid "strong-cast assignment has been intercepted"
 msgstr ""
 
-#: objc/objc-act.c:3740
+#: objc/objc-act.c:3890
 #, gcc-internal-format
 msgid "strong-cast may possibly be needed"
 msgstr ""
 
-#: objc/objc-act.c:3750
+#: objc/objc-act.c:3900
 #, gcc-internal-format
 msgid "instance variable assignment has been intercepted"
 msgstr ""
 
-#: objc/objc-act.c:3769
+#: objc/objc-act.c:3919
 #, gcc-internal-format
 msgid "pointer arithmetic for garbage-collected objects not allowed"
 msgstr ""
 
-#: objc/objc-act.c:3775
+#: objc/objc-act.c:3925
 #, gcc-internal-format
 msgid "global/static variable assignment has been intercepted"
 msgstr ""
 
-#: objc/objc-act.c:3992 objc/objc-act.c:4020 objc/objc-act.c:4075
+#: objc/objc-act.c:4142 objc/objc-act.c:4170 objc/objc-act.c:4225
 #, gcc-internal-format
 msgid "duplicate instance variable %q+D"
 msgstr ""
 
-#: objc/objc-act.c:4135
+#: objc/objc-act.c:4285
 #, gcc-internal-format
 msgid ""
 "%<-fobjc-exceptions%> is required to enable Objective-C exception syntax"
 msgstr ""
 
-#: objc/objc-act.c:4219
+#: objc/objc-act.c:4369
 #, gcc-internal-format
 msgid "%<@catch%> parameter is not a known Objective-C class type"
 msgstr ""
 
-#: objc/objc-act.c:4225
+#: objc/objc-act.c:4375
 #, gcc-internal-format
 msgid "%<@catch%> parameter cannot be protocol-qualified"
 msgstr ""
 
-#: objc/objc-act.c:4270
+#: objc/objc-act.c:4420
 #, gcc-internal-format
 msgid "exception of type %<%T%> will be caught"
 msgstr ""
 
-#: objc/objc-act.c:4272
+#: objc/objc-act.c:4422
 #, gcc-internal-format
 msgid "   by earlier handler for %<%T%>"
 msgstr ""
 
-#: objc/objc-act.c:4319
+#: objc/objc-act.c:4469
 #, gcc-internal-format
 msgid "%<@try%> without %<@catch%> or %<@finally%>"
 msgstr ""
 
-#: objc/objc-act.c:4348
+#: objc/objc-act.c:4498
 #, gcc-internal-format
 msgid "%<@throw%> (rethrow) used outside of a %<@catch%> block"
 msgstr ""
 
-#: objc/objc-act.c:4361
+#: objc/objc-act.c:4511
 #, gcc-internal-format
 msgid "%<@throw%> argument is not an object"
 msgstr ""
 
-#: objc/objc-act.c:4382
+#: objc/objc-act.c:4532
 #, gcc-internal-format
 msgid "%<@synchronized%> argument is not an object"
 msgstr ""
 
-#: objc/objc-act.c:4590
+#: objc/objc-act.c:4740
 #, gcc-internal-format
 msgid "%s %qs"
 msgstr ""
 
-#: objc/objc-act.c:4613 objc/objc-act.c:4638
+#: objc/objc-act.c:4763 objc/objc-act.c:4788
 #, gcc-internal-format
 msgid "inconsistent instance variable specification"
 msgstr ""
 
-#: objc/objc-act.c:4693
+#: objc/objc-act.c:4843
 #, gcc-internal-format
 msgid "cannot use an object as parameter to a method"
 msgstr ""
 
-#: objc/objc-act.c:4737
+#: objc/objc-act.c:4887
 #, gcc-internal-format
 msgid "method argument attributes are not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.c:5111
+#: objc/objc-act.c:5261
 #, gcc-internal-format
 msgid "multiple methods named %<%c%E%> found"
 msgstr ""
 
-#: objc/objc-act.c:5114
+#: objc/objc-act.c:5264
 #, gcc-internal-format
 msgid "using %<%c%s%>"
 msgstr ""
 
-#: objc/objc-act.c:5123
+#: objc/objc-act.c:5273
 #, gcc-internal-format
 msgid "multiple selectors named %<%c%E%> found"
 msgstr ""
 
-#: objc/objc-act.c:5126
+#: objc/objc-act.c:5276
 #, gcc-internal-format
 msgid "found %<%c%s%>"
 msgstr ""
 
-#: objc/objc-act.c:5135
+#: objc/objc-act.c:5285
 #, gcc-internal-format
 msgid "also found %<%c%s%>"
 msgstr ""
@@ -74435,50 +76604,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.c:5423 objc/objc-act.c:5558
+#: objc/objc-act.c:5573 objc/objc-act.c:5708
 #, gcc-internal-format
 msgid "%<@interface%> of class %qE not found"
 msgstr ""
 
-#: objc/objc-act.c:5432
+#: objc/objc-act.c:5582
 #, gcc-internal-format
 msgid "no super class declared in @interface for %qE"
 msgstr ""
 
-#: objc/objc-act.c:5483
+#: objc/objc-act.c:5633
 #, 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.c:5595
+#: objc/objc-act.c:5745
 #, gcc-internal-format
 msgid "invalid receiver type %qs"
 msgstr ""
 
-#: objc/objc-act.c:5612
+#: objc/objc-act.c:5762
 #, gcc-internal-format
 msgid "%<%c%E%> not found in protocol(s)"
 msgstr ""
 
-#: objc/objc-act.c:5626
+#: objc/objc-act.c:5776
 #, gcc-internal-format
 msgid "%qE may not respond to %<%c%E%>"
 msgstr ""
 
-#: objc/objc-act.c:5634
+#: objc/objc-act.c:5784
 #, gcc-internal-format
 msgid "no %<%c%E%> method found"
 msgstr ""
 
-#: objc/objc-act.c:5641
+#: objc/objc-act.c:5791
 #, gcc-internal-format
 msgid ""
 "(messages without a matching method signature will be assumed to return %<id"
 "%> and accept %<...%> as arguments)"
 msgstr ""
 
-#: objc/objc-act.c:5752
+#: objc/objc-act.c:5902
 #, gcc-internal-format
 msgid "undeclared selector %qE"
 msgstr ""
@@ -74492,212 +76661,217 @@ 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.c:5776
+#: objc/objc-act.c:5926
 #, gcc-internal-format
 msgid "instance variable %qE accessed in class method"
 msgstr ""
 
-#: objc/objc-act.c:6006 objc/objc-act.c:6026
+#: objc/objc-act.c:6156 objc/objc-act.c:6176
 #, gcc-internal-format
 msgid ""
 "method %<%c%E%> declared %<@optional%> and %<@required%> at the same time"
 msgstr ""
 
-#: objc/objc-act.c:6010
+#: objc/objc-act.c:6160
 #, gcc-internal-format
 msgid "previous declaration of %<%c%E%> as %<@required%>"
 msgstr ""
 
-#: objc/objc-act.c:6030
+#: objc/objc-act.c:6180
 #, gcc-internal-format
 msgid "previous declaration of %<%c%E%> as %<@optional%>"
 msgstr ""
 
-#: objc/objc-act.c:6090
+#: objc/objc-act.c:6240
 #, gcc-internal-format
 msgid "duplicate declaration of method %<%c%E%> with conflicting types"
 msgstr ""
 
-#: objc/objc-act.c:6094
+#: objc/objc-act.c:6244
 #, gcc-internal-format
 msgid "previous declaration of %<%c%E%>"
 msgstr ""
 
-#: objc/objc-act.c:6131
+#: objc/objc-act.c:6281
 #, gcc-internal-format
 msgid "duplicate interface declaration for category %<%E(%E)%>"
 msgstr ""
 
-#: objc/objc-act.c:6219
+#: objc/objc-act.c:6369
 #, gcc-internal-format
 msgid "illegal reference type specified for instance variable %qs"
 msgstr ""
 
-#: objc/objc-act.c:6230
+#: objc/objc-act.c:6380
 #, gcc-internal-format
 msgid "instance variable %qs has unknown size"
 msgstr ""
 
-#: objc/objc-act.c:6251
+#: objc/objc-act.c:6401
 #, gcc-internal-format
 msgid "instance variable %qs uses flexible array member"
 msgstr ""
 
-#: objc/objc-act.c:6278
+#: objc/objc-act.c:6428
 #, gcc-internal-format
 msgid "type %qE has no default constructor to call"
 msgstr ""
 
-#: objc/objc-act.c:6284
+#: objc/objc-act.c:6434
 #, 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.c:6296
+#: objc/objc-act.c:6446
 #, gcc-internal-format
 msgid "type %qE has virtual member functions"
 msgstr ""
 
-#: objc/objc-act.c:6297
+#: objc/objc-act.c:6447
 #, gcc-internal-format
 msgid "illegal aggregate type %qE specified for instance variable %qs"
 msgstr ""
 
-#: objc/objc-act.c:6307
+#: objc/objc-act.c:6457
 #, gcc-internal-format
 msgid "type %qE has a user-defined constructor"
 msgstr ""
 
-#: objc/objc-act.c:6309
+#: objc/objc-act.c:6459
 #, gcc-internal-format
 msgid "type %qE has a user-defined destructor"
 msgstr ""
 
-#: objc/objc-act.c:6313
+#: objc/objc-act.c:6463
 #, gcc-internal-format
 msgid ""
 "C++ constructors and destructors will not be invoked for Objective-C fields"
 msgstr ""
 
-#: objc/objc-act.c:6444
+#: objc/objc-act.c:6594
 #, gcc-internal-format
 msgid "instance variable %qE is declared private"
 msgstr ""
 
-#: objc/objc-act.c:6455
+#: objc/objc-act.c:6605
 #, gcc-internal-format
 msgid "instance variable %qE is %s; this will be a hard error in the future"
 msgstr ""
 
-#: objc/objc-act.c:6462
+#: objc/objc-act.c:6612
 #, gcc-internal-format
 msgid "instance variable %qE is declared %s"
 msgstr ""
 
-#: objc/objc-act.c:6573 objc/objc-act.c:6688
+#: objc/objc-act.c:6723 objc/objc-act.c:6838
 #, gcc-internal-format
 msgid "incomplete implementation of class %qE"
 msgstr ""
 
-#: objc/objc-act.c:6577 objc/objc-act.c:6692
+#: objc/objc-act.c:6727 objc/objc-act.c:6842
 #, gcc-internal-format
 msgid "incomplete implementation of category %qE"
 msgstr ""
 
-#: objc/objc-act.c:6586 objc/objc-act.c:6700
+#: objc/objc-act.c:6736 objc/objc-act.c:6850
 #, gcc-internal-format
 msgid "method definition for %<%c%E%> not found"
 msgstr ""
 
-#: objc/objc-act.c:6741
+#: objc/objc-act.c:6891
 #, gcc-internal-format
 msgid "%s %qE does not fully implement the %qE protocol"
 msgstr ""
 
-#: objc/objc-act.c:6831
+#: objc/objc-act.c:6981
 #, gcc-internal-format
 msgid "cannot find interface declaration for %qE, superclass of %qE"
 msgstr ""
 
-#: objc/objc-act.c:6870
+#: objc/objc-act.c:7020
 #, gcc-internal-format
 msgid "reimplementation of class %qE"
 msgstr ""
 
-#: objc/objc-act.c:6903
+#: objc/objc-act.c:7053
 #, gcc-internal-format
 msgid "conflicting super class name %qE"
 msgstr ""
 
-#: objc/objc-act.c:6906
+#: objc/objc-act.c:7056
 #, gcc-internal-format
 msgid "previous declaration of %qE"
 msgstr ""
 
-#: objc/objc-act.c:6908
+#: objc/objc-act.c:7058
 #, gcc-internal-format
 msgid "previous declaration"
 msgstr ""
 
-#: objc/objc-act.c:6921 objc/objc-act.c:6923
+#: objc/objc-act.c:7070
+#, gcc-internal-format
+msgid "class %qE defined without specifying a base class"
+msgstr ""
+
+#: objc/objc-act.c:7077 objc/objc-act.c:7079
 #, gcc-internal-format
 msgid "duplicate interface declaration for class %qE"
 msgstr ""
 
-#: objc/objc-act.c:7240 objc/objc-act.c:7436
+#: objc/objc-act.c:7400 objc/objc-act.c:7596
 #, gcc-internal-format
 msgid "cannot find instance variable associated with property"
 msgstr ""
 
 #. TODO: This should be caught much earlier than this.
-#: objc/objc-act.c:7402
+#: objc/objc-act.c:7562
 #, gcc-internal-format
 msgid "invalid setter, it must have one argument"
 msgstr ""
 
-#: objc/objc-act.c:7566 objc/objc-act.c:7783
+#: objc/objc-act.c:7726 objc/objc-act.c:7943
 #, gcc-internal-format
 msgid "property %qs already specified in %<@dynamic%>"
 msgstr ""
 
-#: objc/objc-act.c:7569 objc/objc-act.c:7786
+#: objc/objc-act.c:7729 objc/objc-act.c:7946
 #, gcc-internal-format
 msgid "property %qs already specified in %<@synthesize%>"
 msgstr ""
 
-#: objc/objc-act.c:7583 objc/objc-act.c:7800
+#: objc/objc-act.c:7743 objc/objc-act.c:7960
 #, gcc-internal-format
 msgid "no declaration of property %qs found in the interface"
 msgstr ""
 
-#: objc/objc-act.c:7610
+#: objc/objc-act.c:7770
 #, gcc-internal-format
 msgid "ivar %qs used by %<@synthesize%> declaration must be an existing ivar"
 msgstr ""
 
-#: objc/objc-act.c:7631
+#: objc/objc-act.c:7791
 #, gcc-internal-format
 msgid "property %qs is using instance variable %qs of incompatible type"
 msgstr ""
 
-#: objc/objc-act.c:7653
+#: objc/objc-act.c:7813
 #, gcc-internal-format
 msgid "%<assign%> property %qs is using bit-field instance variable %qs"
 msgstr ""
 
-#: objc/objc-act.c:7667
+#: objc/objc-act.c:7827
 #, gcc-internal-format
 msgid "%<atomic%> property %qs is using bit-field instance variable %qs"
 msgstr ""
 
-#: objc/objc-act.c:7686
+#: objc/objc-act.c:7846
 #, gcc-internal-format
 msgid "property %qs is using the same instance variable as property %qs"
 msgstr ""
 
-#: objc/objc-act.c:7727
+#: objc/objc-act.c:7887
 #, gcc-internal-format
 msgid "%<@synthesize%> is not available in Objective-C 1.0"
 msgstr ""
@@ -74706,22 +76880,22 @@ msgstr ""
 #. detects the problem while parsing, outputs the error
 #. "misplaced '@synthesize' Objective-C++ construct" and skips
 #. the declaration.
-#: objc/objc-act.c:7738
+#: objc/objc-act.c:7898
 #, gcc-internal-format
 msgid "%<@synthesize%> not in @implementation context"
 msgstr ""
 
-#: objc/objc-act.c:7744
+#: objc/objc-act.c:7904
 #, gcc-internal-format
 msgid "%<@synthesize%> cannot be used in categories"
 msgstr ""
 
-#: objc/objc-act.c:7753
+#: objc/objc-act.c:7913
 #, gcc-internal-format
 msgid "%<@synthesize%> requires the @interface of the class to be available"
 msgstr ""
 
-#: objc/objc-act.c:7836
+#: objc/objc-act.c:7996
 #, gcc-internal-format
 msgid "%<@dynamic%> is not available in Objective-C 1.0"
 msgstr ""
@@ -74730,17 +76904,17 @@ msgstr ""
 #. detects the problem while parsing, outputs the error
 #. "misplaced '@dynamic' Objective-C++ construct" and skips the
 #. declaration.
-#: objc/objc-act.c:7847
+#: objc/objc-act.c:8007
 #, gcc-internal-format
 msgid "%<@dynamic%> not in @implementation context"
 msgstr ""
 
-#: objc/objc-act.c:7869
+#: objc/objc-act.c:8029
 #, gcc-internal-format
 msgid "%<@dynamic%> requires the @interface of the class to be available"
 msgstr ""
 
-#: objc/objc-act.c:8067
+#: objc/objc-act.c:8227
 #, gcc-internal-format
 msgid "definition of protocol %qE not found"
 msgstr ""
@@ -74748,47 +76922,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.c:8098
+#: objc/objc-act.c:8258
 #, gcc-internal-format
 msgid "protocol %qE is deprecated"
 msgstr ""
 
-#: objc/objc-act.c:8217
+#: objc/objc-act.c:8377
 #, gcc-internal-format
 msgid "duplicate declaration for protocol %qE"
 msgstr ""
 
-#: objc/objc-act.c:8728
+#: objc/objc-act.c:8899
 #, gcc-internal-format
 msgid "conflicting types for %<%c%s%>"
 msgstr ""
 
-#: objc/objc-act.c:8732
+#: objc/objc-act.c:8903
 #, gcc-internal-format
 msgid "previous declaration of %<%c%s%>"
 msgstr ""
 
-#: objc/objc-act.c:8832
+#: objc/objc-act.c:9003
 #, gcc-internal-format
 msgid "no super class declared in interface for %qE"
 msgstr ""
 
-#: objc/objc-act.c:8859
+#: objc/objc-act.c:9030
 #, gcc-internal-format
 msgid "%<[super ...]%> must appear in a method context"
 msgstr ""
 
-#: objc/objc-act.c:8899
+#: objc/objc-act.c:9070
 #, gcc-internal-format
 msgid "method possibly missing a [super dealloc] call"
 msgstr ""
 
-#: objc/objc-act.c:9367
+#: objc/objc-act.c:9538
 #, gcc-internal-format
 msgid "instance variable %qs is declared private"
 msgstr ""
 
-#: objc/objc-act.c:9420
+#: objc/objc-act.c:9591
 #, gcc-internal-format
 msgid "local declaration of %qE hides instance variable"
 msgstr ""
@@ -74796,22 +76970,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.c:9466
+#: objc/objc-act.c:9637
 #, gcc-internal-format
 msgid "no %qs getter found"
 msgstr ""
 
-#: objc/objc-act.c:9706
+#: objc/objc-act.c:9877
 #, gcc-internal-format
 msgid "fast enumeration is not available in Objective-C 1.0"
 msgstr ""
 
-#: objc/objc-act.c:9716
+#: objc/objc-act.c:9887
 #, gcc-internal-format
 msgid "iterating variable in fast enumeration is not an object"
 msgstr ""
 
-#: objc/objc-act.c:9722
+#: objc/objc-act.c:9893
 #, gcc-internal-format
 msgid "collection in fast enumeration is not an object"
 msgstr ""
@@ -74842,8 +77016,8 @@ msgstr ""
 msgid "%<-fobjc-sjlj-exceptions%> is ignored for %<-fgnu-runtime%>"
 msgstr ""
 
-#: objc/objc-gnu-runtime-abi-01.c:2171 objc/objc-next-runtime-abi-01.c:2818
-#: objc/objc-next-runtime-abi-02.c:3593
+#: objc/objc-gnu-runtime-abi-01.c:2158 objc/objc-next-runtime-abi-01.c:2825
+#: objc/objc-next-runtime-abi-02.c:3826
 #, gcc-internal-format
 msgid "non-objective-c type %qT cannot be caught"
 msgstr ""
@@ -74855,14 +77029,14 @@ msgid ""
 "fnext-runtime%> with %<-fobjc-abi-version%> argument less than 2"
 msgstr ""
 
-#: objc/objc-next-runtime-abi-02.c:245
+#: objc/objc-next-runtime-abi-02.c:251
 #, gcc-internal-format
 msgid ""
 "%<-fobjc-sjlj-exceptions%> is ignored for %<-fnext-runtime%> when %<-fobjc-"
 "abi-version%> greater than 1"
 msgstr ""
 
-#: objc/objc-runtime-shared-support.c:425
+#: objc/objc-runtime-shared-support.c:428
 #, gcc-internal-format
 msgid "creating selector for nonexistent method %qE"
 msgstr ""
@@ -74872,12 +77046,12 @@ msgstr ""
 msgid "Unrecognized option to endianness value: %qs"
 msgstr ""
 
-#: fortran/lang.opt:633
+#: fortran/lang.opt:637
 #, gcc-internal-format
 msgid "Unrecognized option to floating-point init value: %qs"
 msgstr ""
 
-#: fortran/lang.opt:767
+#: fortran/lang.opt:775
 #, gcc-internal-format
 msgid "Unrecognized option: %qs"
 msgstr ""
@@ -74888,64 +77062,74 @@ msgid "assertion missing after %qs"
 msgstr ""
 
 #: c-family/c.opt:55 c-family/c.opt:58 c-family/c.opt:163 c-family/c.opt:166
-#: c-family/c.opt:193 c-family/c.opt:256
+#: c-family/c.opt:193 c-family/c.opt:264
 #, gcc-internal-format
 msgid "macro name missing after %qs"
 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:1974 c-family/c.opt:1982 brig/lang.opt:44
-#: config/darwin.opt:30 common.opt:332 common.opt:335 common.opt:3281
+#: c-family/c.opt:236 c-family/c.opt:2112 c-family/c.opt:2120 brig/lang.opt:44
+#: config/darwin.opt:30 common.opt:332 common.opt:335 common.opt:3327
 #, gcc-internal-format
 msgid "missing filename after %qs"
 msgstr ""
 
 #: c-family/c.opt:85 c-family/c.opt:88 c-family/c.opt:91 c-family/c.opt:94
-#: c-family/c.opt:200 c-family/c.opt:212 c-family/c.opt:1970
-#: c-family/c.opt:1990 c-family/c.opt:1994 c-family/c.opt:1998
+#: c-family/c.opt:200 c-family/c.opt:212 c-family/c.opt:2108
+#: c-family/c.opt:2128 c-family/c.opt:2132 c-family/c.opt:2136
 #, gcc-internal-format
 msgid "missing path after %qs"
 msgstr ""
 
-#: c-family/c.opt:244 c-family/c.opt:248
+#: c-family/c.opt:252 c-family/c.opt:256
 #, gcc-internal-format
 msgid "missing makefile target after %qs"
 msgstr ""
 
-#: c-family/c.opt:283
+#: c-family/c.opt:295
 #, gcc-internal-format
 msgid "argument %qs to %<-Waligned-new%> not recognized"
 msgstr ""
 
-#: c-family/c.opt:948
+#: c-family/c.opt:1009
 #, gcc-internal-format
 msgid "argument %qs to %<-Wnormalized%> not recognized"
 msgstr ""
 
-#: c-family/c.opt:1468
+#: c-family/c.opt:1542
 #, gcc-internal-format
 msgid "no class name specified with %qs"
 msgstr ""
 
-#: c-family/c.opt:1587
+#: c-family/c.opt:1661
 #, gcc-internal-format
 msgid ""
 "%<-fhandle-exceptions%> has been renamed %<-fexceptions%> (and is now on by "
 "default)"
 msgstr ""
 
-#: c-family/c.opt:1674
+#: c-family/c.opt:1728
+#, gcc-internal-format
+msgid "missing mapper"
+msgstr ""
+
+#: c-family/c.opt:1752
+#, gcc-internal-format
+msgid "missing header name"
+msgstr ""
+
+#: c-family/c.opt:1799
 #, gcc-internal-format
 msgid "unrecognized ivar visibility value %qs"
 msgstr ""
 
-#: c-family/c.opt:1834
+#: c-family/c.opt:1972
 #, gcc-internal-format
 msgid "unrecognized scalar storage order value %qs"
 msgstr ""
 
-#: d/lang.opt:189
+#: d/lang.opt:193
 #, gcc-internal-format
 msgid "unknown array bounds setting %qs"
 msgstr ""
@@ -74955,19 +77139,19 @@ msgstr ""
 msgid "unknown pointer size model %qs"
 msgstr ""
 
-#: config/i386/i386.opt:315
+#: config/i386/i386.opt:325
 #, gcc-internal-format
 msgid "%<-mcpu=%> is deprecated; use %<-mtune=%> or %<-march=%> instead"
 msgstr ""
 
-#: config/i386/i386.opt:375
+#: config/i386/i386.opt:385
 #, gcc-internal-format
 msgid ""
 "%<-mintel-syntax%> and %<-mno-intel-syntax%> are deprecated; use %<-"
 "masm=intel%> and %<-masm=att%> instead"
 msgstr ""
 
-#: config/i386/i386.opt:676
+#: config/i386/i386.opt:686
 #, gcc-internal-format
 msgid "%<-msse5%> was removed"
 msgstr ""
@@ -74987,12 +77171,12 @@ msgstr ""
 msgid "%<-mvrsave=yes%> is deprecated; use %<-mvrsave%> instead"
 msgstr ""
 
-#: config/rs6000/rs6000.opt:368
+#: config/rs6000/rs6000.opt:387
 #, gcc-internal-format
 msgid "using darwin64 ABI"
 msgstr ""
 
-#: config/rs6000/rs6000.opt:371
+#: config/rs6000/rs6000.opt:390
 #, gcc-internal-format
 msgid "using old darwin ABI"
 msgstr ""
@@ -75025,93 +77209,98 @@ msgstr ""
 msgid "unknown linker output %qs"
 msgstr ""
 
-#: common.opt:1498
+#: common.opt:1510
 #, gcc-internal-format
 msgid "unknown excess precision style %qs"
 msgstr ""
 
-#: common.opt:1513
+#: common.opt:1525
 #, gcc-internal-format
 msgid ""
 "unknown specification for the set of FLT_EVAL_METHOD values to permit %qs"
 msgstr ""
 
-#: common.opt:1557
+#: common.opt:1569
 #, gcc-internal-format
 msgid "unknown floating point contraction style %qs"
 msgstr ""
 
-#: common.opt:1714
+#: common.opt:1726
 #, gcc-internal-format
 msgid "unknown Stack Reuse Level %qs"
 msgstr ""
 
-#: common.opt:1783
+#: common.opt:1795
 #, gcc-internal-format
 msgid "unknown Control-Flow Protection Level %qs"
 msgstr ""
 
-#: common.opt:1878
+#: common.opt:1897
 #, gcc-internal-format
 msgid "unknown IRA algorithm %qs"
 msgstr ""
 
-#: common.opt:1891
+#: common.opt:1910
 #, gcc-internal-format
 msgid "unknown IRA region %qs"
 msgstr ""
 
-#: common.opt:1965
+#: common.opt:1988
 #, gcc-internal-format
 msgid "unknown LTO partitioning model %qs"
 msgstr ""
 
-#: common.opt:2067
+#: common.opt:2090
 #, gcc-internal-format
 msgid "options or targets missing after %qs"
 msgstr ""
 
-#: common.opt:2075
+#: common.opt:2098
 #, gcc-internal-format
 msgid "unknown offload ABI %qs"
 msgstr ""
 
-#: common.opt:2217
+#: common.opt:2240
 #, gcc-internal-format
 msgid "unknown profile reproducibility method %qs"
 msgstr ""
 
-#: common.opt:2233
+#: common.opt:2256
 #, gcc-internal-format
 msgid "unknown profile update method %qs"
 msgstr ""
 
-#: common.opt:2327
+#: common.opt:2358
 #, gcc-internal-format
 msgid "unknown Live-Patching Level %qs"
 msgstr ""
 
-#: common.opt:2360
+#: common.opt:2391
 #, gcc-internal-format
 msgid "unknown basic block reordering algorithm %qs"
 msgstr ""
 
-#: common.opt:2667
+#: common.opt:2698
 #, gcc-internal-format
 msgid "unknown TLS model %qs"
 msgstr ""
 
-#: common.opt:3003
+#: common.opt:3034
 #, gcc-internal-format
 msgid "unknown vectorizer cost model %qs"
 msgstr ""
 
-#: common.opt:3041
+#: common.opt:3075
 #, gcc-internal-format
 msgid "unrecognized visibility value %qs"
 msgstr ""
 
-#: common.opt:3060
+#: common.opt:3094
 #, gcc-internal-format
 msgid "unknown vtable verify initialization priority %qs"
 msgstr ""
+
+#: params.opt:134
+#, gcc-internal-format
+msgid "unknown evrp mode %qs"
+msgstr ""
index 81aa102..8f818a7 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: 2020-07-20 18:03+0000\n"
+"POT-Creation-Date: 2021-02-05 21:38+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"
@@ -17,158 +17,158 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: charset.c:674
+#: charset.c:677
 #, c-format
 msgid "conversion from %s to %s not supported by iconv"
 msgstr ""
 
-#: charset.c:677
+#: charset.c:680
 msgid "iconv_open"
 msgstr ""
 
-#: charset.c:685
+#: charset.c:688
 #, c-format
 msgid "no iconv implementation, cannot convert from %s to %s"
 msgstr ""
 
-#: charset.c:781
+#: charset.c:784
 #, c-format
 msgid "character 0x%lx is not in the basic source character set\n"
 msgstr ""
 
-#: charset.c:798
-#: charset.c:1768
+#: charset.c:801
+#: charset.c:1771
 msgid "converting to execution character set"
 msgstr ""
 
-#: charset.c:804
+#: charset.c:807
 #, c-format
 msgid "character 0x%lx is not unibyte in execution character set"
 msgstr ""
 
-#: charset.c:1054
+#: charset.c:1057
 msgid "universal character names are only valid in C++ and C99"
 msgstr ""
 
-#: charset.c:1058
+#: charset.c:1061
 msgid "C99's universal character names are incompatible with C90"
 msgstr ""
 
-#: charset.c:1061
+#: charset.c:1064
 #, c-format
 msgid "the meaning of '\\%c' is different in traditional C"
 msgstr ""
 
-#: charset.c:1070
+#: charset.c:1073
 msgid "In _cpp_valid_ucn but not a UCN"
 msgstr ""
 
-#: charset.c:1103
+#: charset.c:1106
 #, c-format
 msgid "incomplete universal character name %.*s"
 msgstr ""
 
-#: charset.c:1118
+#: charset.c:1121
 #, c-format
 msgid "%.*s is not a valid universal character"
 msgstr ""
 
-#: charset.c:1128
+#: charset.c:1131
 #: lex.c:1335
 msgid "'$' in identifier or number"
 msgstr ""
 
-#: charset.c:1138
+#: charset.c:1141
 #, c-format
 msgid "universal character %.*s is not valid in an identifier"
 msgstr ""
 
-#: charset.c:1142
+#: charset.c:1145
 #, c-format
 msgid "universal character %.*s is not valid at the start of an identifier"
 msgstr ""
 
-#: charset.c:1149
+#: charset.c:1152
 #, c-format
 msgid "%.*s is outside the UCS codespace"
 msgstr ""
 
-#: charset.c:1194
-#: charset.c:2113
+#: charset.c:1197
+#: charset.c:2116
 msgid "converting UCN to source character set"
 msgstr ""
 
-#: charset.c:1201
+#: charset.c:1204
 msgid "converting UCN to execution character set"
 msgstr ""
 
-#: charset.c:1265
+#: charset.c:1268
 #, c-format
 msgid "extended character %.*s is not valid in an identifier"
 msgstr ""
 
-#: charset.c:1282
+#: charset.c:1285
 #, c-format
 msgid "extended character %.*s is not valid at the start of an identifier"
 msgstr ""
 
-#: charset.c:1368
+#: charset.c:1371
 msgid "the meaning of '\\x' is different in traditional C"
 msgstr ""
 
-#: charset.c:1393
+#: charset.c:1396
 msgid "\\x used with no following hex digits"
 msgstr ""
 
-#: charset.c:1400
+#: charset.c:1403
 msgid "hex escape sequence out of range"
 msgstr ""
 
-#: charset.c:1452
+#: charset.c:1455
 msgid "octal escape sequence out of range"
 msgstr ""
 
-#: charset.c:1534
+#: charset.c:1537
 msgid "the meaning of '\\a' is different in traditional C"
 msgstr ""
 
-#: charset.c:1541
+#: charset.c:1544
 #, c-format
 msgid "non-ISO-standard escape sequence, '\\%c'"
 msgstr ""
 
-#: charset.c:1549
+#: charset.c:1552
 #, c-format
 msgid "unknown escape sequence: '\\%c'"
 msgstr ""
 
-#: charset.c:1557
+#: charset.c:1560
 #, c-format
 msgid "unknown escape sequence: '\\%s'"
 msgstr ""
 
-#: charset.c:1565
+#: charset.c:1568
 msgid "converting escape sequence to execution character set"
 msgstr ""
 
-#: charset.c:1705
+#: charset.c:1708
 msgid "missing open quote"
 msgstr ""
 
-#: charset.c:1923
-#: charset.c:2002
+#: charset.c:1926
+#: charset.c:2005
 msgid "character constant too long for its type"
 msgstr ""
 
-#: charset.c:1926
+#: charset.c:1929
 msgid "multi-character character constant"
 msgstr ""
 
-#: charset.c:2042
+#: charset.c:2045
 msgid "empty character constant"
 msgstr ""
 
-#: charset.c:2160
+#: charset.c:2163
 #, c-format
 msgid "failure to convert %s to %s"
 msgstr ""
@@ -241,203 +241,203 @@ msgstr ""
 msgid "undefining \"%s\""
 msgstr ""
 
-#: directives.c:724
+#: directives.c:725
 msgid "missing terminating > character"
 msgstr ""
 
-#: directives.c:783
+#: directives.c:784
 #, c-format
 msgid "#%s expects \"FILENAME\" or <FILENAME>"
 msgstr ""
 
-#: directives.c:829
+#: directives.c:830
 #, c-format
 msgid "empty filename in #%s"
 msgstr ""
 
-#: directives.c:838
+#: directives.c:839
 #, c-format
 msgid ""
 "#include nested depth %u exceeds maximum of %u (use -fmax-include-"
 "depth=DEPTH to increase the maximum)"
 msgstr ""
 
-#: directives.c:883
+#: directives.c:884
 msgid "#include_next in primary source file"
 msgstr ""
 
-#: directives.c:909
+#: directives.c:910
 #, c-format
 msgid "invalid flag \"%s\" in line directive"
 msgstr ""
 
-#: directives.c:969
+#: directives.c:970
 msgid "unexpected end of file after #line"
 msgstr ""
 
-#: directives.c:972
+#: directives.c:973
 #, c-format
 msgid "\"%s\" after #line is not a positive integer"
 msgstr ""
 
-#: directives.c:978
-#: directives.c:980
+#: directives.c:979
+#: directives.c:981
 msgid "line number out of range"
 msgstr ""
 
-#: directives.c:993
-#: directives.c:1074
+#: directives.c:994
+#: directives.c:1075
 #, c-format
 msgid "\"%s\" is not a valid filename"
 msgstr ""
 
-#: directives.c:1034
+#: directives.c:1035
 #, c-format
 msgid "\"%s\" after # is not a positive integer"
 msgstr ""
 
-#: directives.c:1101
+#: directives.c:1102
 #, c-format
 msgid "file \"%s\" linemarker ignored due to incorrect nesting"
 msgstr ""
 
-#: directives.c:1178
 #: directives.c:1180
 #: directives.c:1182
-#: directives.c:1770
+#: directives.c:1184
+#: directives.c:1772
 #, c-format
 msgid "%s"
 msgstr ""
 
-#: directives.c:1206
+#: directives.c:1208
 #, c-format
 msgid "invalid #%s directive"
 msgstr ""
 
-#: directives.c:1269
+#: directives.c:1271
 #, c-format
 msgid "registering pragmas in namespace \"%s\" with mismatched name expansion"
 msgstr ""
 
-#: directives.c:1278
+#: directives.c:1280
 #, c-format
 msgid "registering pragma \"%s\" with name expansion and no namespace"
 msgstr ""
 
-#: directives.c:1296
+#: directives.c:1298
 #, c-format
 msgid "registering \"%s\" as both a pragma and a pragma namespace"
 msgstr ""
 
-#: directives.c:1299
+#: directives.c:1301
 #, c-format
 msgid "#pragma %s %s is already registered"
 msgstr ""
 
-#: directives.c:1302
+#: directives.c:1304
 #, c-format
 msgid "#pragma %s is already registered"
 msgstr ""
 
-#: directives.c:1332
+#: directives.c:1334
 msgid "registering pragma with NULL handler"
 msgstr ""
 
-#: directives.c:1549
+#: directives.c:1551
 msgid "#pragma once in main file"
 msgstr ""
 
-#: directives.c:1572
+#: directives.c:1574
 msgid "invalid #pragma push_macro directive"
 msgstr ""
 
-#: directives.c:1629
+#: directives.c:1631
 msgid "invalid #pragma pop_macro directive"
 msgstr ""
 
-#: directives.c:1684
+#: directives.c:1686
 msgid "invalid #pragma GCC poison directive"
 msgstr ""
 
-#: directives.c:1693
+#: directives.c:1695
 #, c-format
 msgid "poisoning existing macro \"%s\""
 msgstr ""
 
-#: directives.c:1712
+#: directives.c:1714
 msgid "#pragma system_header ignored outside include file"
 msgstr ""
 
-#: directives.c:1737
+#: directives.c:1739
 #, c-format
 msgid "cannot find source file %s"
 msgstr ""
 
-#: directives.c:1741
+#: directives.c:1743
 #, c-format
 msgid "current file is older than %s"
 msgstr ""
 
-#: directives.c:1765
+#: directives.c:1767
 #, c-format
 msgid "invalid \"#pragma GCC %s\" directive"
 msgstr ""
 
-#: directives.c:1966
+#: directives.c:1968
 msgid "_Pragma takes a parenthesized string literal"
 msgstr ""
 
-#: directives.c:2049
+#: directives.c:2051
 msgid "#else without #if"
 msgstr ""
 
-#: directives.c:2054
+#: directives.c:2056
 msgid "#else after #else"
 msgstr ""
 
-#: directives.c:2056
-#: directives.c:2089
+#: directives.c:2058
+#: directives.c:2091
 msgid "the conditional began here"
 msgstr ""
 
-#: directives.c:2082
+#: directives.c:2084
 msgid "#elif without #if"
 msgstr ""
 
-#: directives.c:2087
+#: directives.c:2089
 msgid "#elif after #else"
 msgstr ""
 
-#: directives.c:2118
+#: directives.c:2120
 msgid "#endif without #if"
 msgstr ""
 
-#: directives.c:2194
+#: directives.c:2196
 msgid "missing '(' after predicate"
 msgstr ""
 
-#: directives.c:2212
+#: directives.c:2214
 msgid "missing ')' to complete answer"
 msgstr ""
 
-#: directives.c:2224
+#: directives.c:2226
 msgid "predicate's answer is empty"
 msgstr ""
 
-#: directives.c:2254
+#: directives.c:2256
 msgid "assertion without predicate"
 msgstr ""
 
-#: directives.c:2257
+#: directives.c:2259
 msgid "predicate must be an identifier"
 msgstr ""
 
-#: directives.c:2339
+#: directives.c:2341
 #, c-format
 msgid "\"%s\" re-asserted"
 msgstr ""
 
-#: directives.c:2620
+#: directives.c:2659
 #, c-format
 msgid "unterminated #%s"
 msgstr ""
@@ -451,168 +451,180 @@ msgstr ""
 msgid "stdout"
 msgstr ""
 
-#: expr.c:626
-#: expr.c:743
+#: expr.c:636
+#: expr.c:753
 msgid "fixed-point constants are a GCC extension"
 msgstr ""
 
-#: expr.c:651
+#: expr.c:661
 msgid "invalid prefix \"0b\" for floating constant"
 msgstr ""
 
-#: expr.c:664
+#: expr.c:674
 msgid "use of C++17 hexadecimal floating constant"
 msgstr ""
 
-#: expr.c:667
+#: expr.c:677
 msgid "use of C99 hexadecimal floating constant"
 msgstr ""
 
-#: expr.c:711
+#: expr.c:721
 #, c-format
 msgid "invalid suffix \"%.*s\" on floating constant"
 msgstr ""
 
-#: expr.c:722
-#: expr.c:789
+#: expr.c:732
+#: expr.c:799
 #, c-format
 msgid "traditional C rejects the \"%.*s\" suffix"
 msgstr ""
 
-#: expr.c:730
+#: expr.c:740
 msgid "suffix for double constant is a GCC extension"
 msgstr ""
 
-#: expr.c:736
+#: expr.c:746
 #, c-format
 msgid "invalid suffix \"%.*s\" with hexadecimal floating constant"
 msgstr ""
 
-#: expr.c:749
-#: expr.c:753
+#: expr.c:759
+#: expr.c:763
 msgid "decimal float constants are a C2X feature"
 msgstr ""
 
-#: expr.c:772
+#: expr.c:782
 #, c-format
 msgid "invalid suffix \"%.*s\" on integer constant"
 msgstr ""
 
-#: expr.c:797
+#: expr.c:807
 msgid "use of C++11 long long integer constant"
 msgstr ""
 
-#: expr.c:798
+#: expr.c:808
 msgid "use of C99 long long integer constant"
 msgstr ""
 
-#: expr.c:814
+#: expr.c:822
+msgid "use of C++23 %<size_t%> integer constant"
+msgstr ""
+
+#: expr.c:823
+msgid "use of C++23 %<make_signed_t<size_t>%> integer constant"
+msgstr ""
+
+#: expr.c:834
 msgid "imaginary constants are a GCC extension"
 msgstr ""
 
-#: expr.c:820
+#: expr.c:841
 msgid "binary constants are a C++14 feature or GCC extension"
 msgstr ""
 
-#: expr.c:822
-msgid "binary constants are a GCC extension"
+#: expr.c:843
+msgid "binary constants are a C2X feature or GCC extension"
+msgstr ""
+
+#: expr.c:848
+msgid "binary constants are a C2X feature"
 msgstr ""
 
-#: expr.c:917
+#: expr.c:944
 msgid "integer constant is too large for its type"
 msgstr ""
 
-#: expr.c:948
+#: expr.c:975
 msgid "integer constant is so large that it is unsigned"
 msgstr ""
 
-#: expr.c:1043
+#: expr.c:1070
 msgid "missing ')' after \"defined\""
 msgstr ""
 
-#: expr.c:1050
+#: expr.c:1077
 msgid "operator \"defined\" requires an identifier"
 msgstr ""
 
-#: expr.c:1058
+#: expr.c:1085
 #, c-format
 msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
 msgstr ""
 
-#: expr.c:1070
+#: expr.c:1098
 msgid "this use of \"defined\" may not be portable"
 msgstr ""
 
-#: expr.c:1113
+#: expr.c:1143
 msgid "user-defined literal in preprocessor expression"
 msgstr ""
 
-#: expr.c:1118
+#: expr.c:1148
 msgid "floating constant in preprocessor expression"
 msgstr ""
 
-#: expr.c:1124
+#: expr.c:1154
 msgid "imaginary number in preprocessor expression"
 msgstr ""
 
-#: expr.c:1173
+#: expr.c:1203
 #, c-format
 msgid "\"%s\" is not defined, evaluates to 0"
 msgstr ""
 
-#: expr.c:1186
+#: expr.c:1216
 msgid "assertions are a GCC extension"
 msgstr ""
 
-#: expr.c:1189
+#: expr.c:1219
 msgid "assertions are a deprecated extension"
 msgstr ""
 
-#: expr.c:1435
+#: expr.c:1465
 #, c-format
 msgid "unbalanced stack in %s"
 msgstr ""
 
-#: expr.c:1455
+#: expr.c:1485
 #, c-format
 msgid "impossible operator '%u'"
 msgstr ""
 
-#: expr.c:1556
+#: expr.c:1586
 msgid "missing ')' in expression"
 msgstr ""
 
-#: expr.c:1585
+#: expr.c:1615
 msgid "'?' without following ':'"
 msgstr ""
 
-#: expr.c:1595
+#: expr.c:1625
 msgid "integer overflow in preprocessor expression"
 msgstr ""
 
-#: expr.c:1600
+#: expr.c:1630
 msgid "missing '(' in expression"
 msgstr ""
 
-#: expr.c:1632
+#: expr.c:1662
 #, c-format
 msgid "the left operand of \"%s\" changes sign when promoted"
 msgstr ""
 
-#: expr.c:1637
+#: expr.c:1667
 #, c-format
 msgid "the right operand of \"%s\" changes sign when promoted"
 msgstr ""
 
-#: expr.c:1896
+#: expr.c:1926
 msgid "traditional C rejects the unary plus operator"
 msgstr ""
 
-#: expr.c:1994
+#: expr.c:2024
 msgid "comma operator in operand of #if"
 msgstr ""
 
-#: expr.c:2130
+#: expr.c:2160
 msgid "division by zero in #if"
 msgstr ""
 
@@ -624,47 +636,47 @@ msgstr ""
 msgid "use -Winvalid-pch for more information"
 msgstr ""
 
-#: files.c:1003
+#: files.c:1051
 #, c-format
 msgid "no include path in which to search for %s"
 msgstr ""
 
-#: files.c:1439
+#: files.c:1546
 msgid "Multiple include guards may be useful for:\n"
 msgstr ""
 
-#: init.c:597
+#: init.c:614
 msgid "cppchar_t must be an unsigned type"
 msgstr ""
 
-#: init.c:601
+#: init.c:618
 #, c-format
 msgid ""
 "preprocessor arithmetic has maximum precision of %lu bits; target requires "
 "%lu bits"
 msgstr ""
 
-#: init.c:608
+#: init.c:625
 msgid "CPP arithmetic must be at least as precise as a target int"
 msgstr ""
 
-#: init.c:611
+#: init.c:628
 msgid "target char is less than 8 bits wide"
 msgstr ""
 
-#: init.c:615
+#: init.c:632
 msgid "target wchar_t is narrower than target char"
 msgstr ""
 
-#: init.c:619
+#: init.c:636
 msgid "target int is narrower than target char"
 msgstr ""
 
-#: init.c:624
+#: init.c:641
 msgid "CPP half-integer narrower than CPP character"
 msgstr ""
 
-#: init.c:628
+#: init.c:645
 #, c-format
 msgid ""
 "CPP on this host cannot handle wide character constants over %lu bits, but "
@@ -742,81 +754,90 @@ msgstr ""
 msgid "identifier \"%s\" is a special operator name in C++"
 msgstr ""
 
-#: lex.c:1872
+#: lex.c:1879
 msgid "raw string delimiter longer than 16 characters"
 msgstr ""
 
-#: lex.c:1876
+#: lex.c:1883
 msgid "invalid new-line in raw string delimiter"
 msgstr ""
 
-#: lex.c:1880
-#: lex.c:4265
+#: lex.c:1887
+#: lex.c:4639
 #, c-format
 msgid "invalid character '%c' in raw string delimiter"
 msgstr ""
 
-#: lex.c:1918
-#: lex.c:1941
+#: lex.c:1926
+#: lex.c:1949
 msgid "unterminated raw string"
 msgstr ""
 
-#: lex.c:1963
-#: lex.c:2092
+#: lex.c:1971
+#: lex.c:2100
 msgid ""
 "invalid suffix on literal; C++11 requires a space between literal and string "
 "macro"
 msgstr ""
 
-#: lex.c:2075
+#: lex.c:2083
 msgid "null character(s) preserved in literal"
 msgstr ""
 
-#: lex.c:2078
+#: lex.c:2086
 #, c-format
 msgid "missing terminating %c character"
 msgstr ""
 
-#: lex.c:2110
+#: lex.c:2118
 msgid "C++11 requires a space between string literal and macro"
 msgstr ""
 
-#: lex.c:2913
-#: lex.c:4098
+#: lex.c:2711
+msgid "module control-line cannot be in included file"
+msgstr ""
+
+#: lex.c:2725
+#, c-format
+msgid "module control-line \"%s\" cannot be an object-like macro"
+msgstr ""
+
+#: lex.c:3099
+#: lex.c:4472
 #: traditional.c:174
 msgid "unterminated comment"
 msgstr ""
 
-#: lex.c:2927
-#: lex.c:2961
+#: lex.c:3113
+#: lex.c:3147
 msgid "C++ style comments are not allowed in ISO C90"
 msgstr ""
 
-#: lex.c:2929
-#: lex.c:2940
-#: lex.c:2964
+#: lex.c:3115
+#: lex.c:3126
+#: lex.c:3150
 msgid "(this will be reported only once per input file)"
 msgstr ""
 
-#: lex.c:2938
+#: lex.c:3124
 msgid "C++ style comments are incompatible with C90"
 msgstr ""
 
-#: lex.c:2970
+#: lex.c:3156
 msgid "multi-line comment"
 msgstr ""
 
-#: lex.c:3364
+#: lex.c:3550
 #, c-format
 msgid "unspellable token %s"
 msgstr ""
 
-#: lex.c:4253
+#: lex.c:4627
 #, c-format
 msgid "raw string delimiter longer than %d characters"
 msgstr ""
 
-#: lex.c:4323
+#: lex.c:4697
 msgid "unterminated literal"
 msgstr ""
 
@@ -824,183 +845,183 @@ msgstr ""
 msgid "'##' cannot appear at either end of __VA_OPT__"
 msgstr ""
 
-#: macro.c:388
+#: macro.c:386
 #, c-format
 msgid "\"%s\" used outside of preprocessing directive"
 msgstr ""
 
-#: macro.c:398
+#: macro.c:396
 #, c-format
 msgid "missing '(' before \"%s\" operand"
 msgstr ""
 
-#: macro.c:413
+#: macro.c:411
 #, c-format
 msgid "operator \"%s\" requires a header-name"
 msgstr ""
 
-#: macro.c:430
+#: macro.c:428
 #, c-format
 msgid "missing ')' after \"%s\" operand"
 msgstr ""
 
-#: macro.c:450
+#: macro.c:448
 #, c-format
 msgid "macro \"%s\" is not used"
 msgstr ""
 
-#: macro.c:489
-#: macro.c:747
+#: macro.c:487
+#: macro.c:778
 #, c-format
 msgid "invalid built-in macro \"%s\""
 msgstr ""
 
-#: macro.c:496
-#: macro.c:598
+#: macro.c:494
+#: macro.c:596
 #, c-format
 msgid "macro \"%s\" might prevent reproducible builds"
 msgstr ""
 
-#: macro.c:527
+#: macro.c:525
 msgid "could not determine file timestamp"
 msgstr ""
 
-#: macro.c:644
+#: macro.c:610
 msgid "could not determine date and time"
 msgstr ""
 
-#: macro.c:660
+#: macro.c:642
 msgid "__COUNTER__ expanded inside directive with -fdirectives-only"
 msgstr ""
 
-#: macro.c:866
+#: macro.c:897
 msgid "invalid string literal, ignoring final '\\'"
 msgstr ""
 
-#: macro.c:928
+#: macro.c:959
 #, c-format
 msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
 msgstr ""
 
-#: macro.c:1054
+#: macro.c:1085
 msgid ""
 "ISO C++11 requires at least one argument for the \"...\" in a variadic macro"
 msgstr ""
 
-#: macro.c:1058
+#: macro.c:1089
 msgid ""
 "ISO C99 requires at least one argument for the \"...\" in a variadic macro"
 msgstr ""
 
-#: macro.c:1065
+#: macro.c:1096
 #, c-format
 msgid "macro \"%s\" requires %u arguments, but only %u given"
 msgstr ""
 
-#: macro.c:1070
+#: macro.c:1101
 #, c-format
 msgid "macro \"%s\" passed %u arguments, but takes just %u"
 msgstr ""
 
-#: macro.c:1270
-#: traditional.c:819
+#: macro.c:1299
+#: traditional.c:822
 #, c-format
 msgid "unterminated argument list invoking macro \"%s\""
 msgstr ""
 
-#: macro.c:1412
+#: macro.c:1442
 #, c-format
 msgid "function-like macro \"%s\" must be used with arguments in traditional C"
 msgstr ""
 
-#: macro.c:2190
+#: macro.c:2220
 #, c-format
 msgid ""
 "invoking macro %s argument %d: empty macro arguments are undefined in ISO C+"
 "+98"
 msgstr ""
 
-#: macro.c:2198
-#: macro.c:2207
+#: macro.c:2228
+#: macro.c:2237
 #, c-format
 msgid ""
 "invoking macro %s argument %d: empty macro arguments are undefined in ISO C90"
 msgstr ""
 
-#: macro.c:3164
+#: macro.c:3279
 #, c-format
 msgid "duplicate macro parameter \"%s\""
 msgstr ""
 
-#: macro.c:3246
+#: macro.c:3361
 #, c-format
 msgid "expected parameter name, found \"%s\""
 msgstr ""
 
-#: macro.c:3247
+#: macro.c:3362
 #, c-format
 msgid "expected ',' or ')', found \"%s\""
 msgstr ""
 
-#: macro.c:3248
+#: macro.c:3363
 msgid "expected parameter name before end of line"
 msgstr ""
 
-#: macro.c:3249
+#: macro.c:3364
 msgid "expected ')' before end of line"
 msgstr ""
 
-#: macro.c:3250
+#: macro.c:3365
 msgid "expected ')' after \"...\""
 msgstr ""
 
-#: macro.c:3307
+#: macro.c:3422
 msgid "anonymous variadic macros were introduced in C++11"
 msgstr ""
 
-#: macro.c:3308
-#: macro.c:3312
+#: macro.c:3423
+#: macro.c:3427
 msgid "anonymous variadic macros were introduced in C99"
 msgstr ""
 
-#: macro.c:3318
+#: macro.c:3433
 msgid "ISO C++ does not permit named variadic macros"
 msgstr ""
 
-#: macro.c:3319
+#: macro.c:3434
 msgid "ISO C does not permit named variadic macros"
 msgstr ""
 
-#: macro.c:3365
+#: macro.c:3480
 msgid "'##' cannot appear at either end of a macro expansion"
 msgstr ""
 
-#: macro.c:3403
+#: macro.c:3518
 msgid "ISO C++11 requires whitespace after the macro name"
 msgstr ""
 
-#: macro.c:3404
+#: macro.c:3519
 msgid "ISO C99 requires whitespace after the macro name"
 msgstr ""
 
-#: macro.c:3428
+#: macro.c:3543
 msgid "missing whitespace after the macro name"
 msgstr ""
 
-#: macro.c:3478
+#: macro.c:3593
 msgid "'#' is not followed by a macro parameter"
 msgstr ""
 
-#: macro.c:3629
+#: macro.c:3749
 #, c-format
 msgid "\"%s\" redefined"
 msgstr ""
 
-#: macro.c:3634
+#: macro.c:3754
 msgid "this is the location of the previous definition"
 msgstr ""
 
-#: macro.c:3738
+#: macro.c:3891
 #, c-format
 msgid "macro argument \"%s\" would be stringified in traditional C"
 msgstr ""
@@ -1045,11 +1066,11 @@ msgstr ""
 msgid "while reading precompiled header"
 msgstr ""
 
-#: traditional.c:888
+#: traditional.c:891
 #, c-format
 msgid "detected recursion whilst expanding macro \"%s\""
 msgstr ""
 
-#: traditional.c:1111
+#: traditional.c:1114
 msgid "syntax error in macro parameter list"
 msgstr ""