Update gcc .po files
[platform/upstream/gcc.git] / gcc / po / fi.po
index e381576..2d8e061 100644 (file)
@@ -32,7 +32,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: gcc 11.1-b20210321\n"
 "Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n"
-"POT-Creation-Date: 2022-02-11 23:10+0000\n"
+"POT-Creation-Date: 2022-04-01 17:30+0000\n"
 "PO-Revision-Date: 2021-03-23 21:16+0200\n"
 "Last-Translator: Lauri Nurmi <lanurmi@iki.fi>\n"
 "Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
@@ -635,10 +635,10 @@ msgid "Warn about creation of array temporaries."
 msgstr "Varoita laskutoimituksista funktio-osoittimilla"
 
 #: fortran/lang.opt:214 fortran/lang.opt:535 config/alpha/alpha.opt:31
-#: common.opt:680 common.opt:818 common.opt:1056 common.opt:1060
-#: common.opt:1064 common.opt:1068 common.opt:1743 common.opt:1807
-#: common.opt:1946 common.opt:1950 common.opt:2199 common.opt:2417
-#: common.opt:3133
+#: common.opt:680 common.opt:822 common.opt:1060 common.opt:1064
+#: common.opt:1068 common.opt:1072 common.opt:1747 common.opt:1811
+#: common.opt:1950 common.opt:1954 common.opt:2203 common.opt:2421
+#: common.opt:3137
 #, no-c-format
 msgid "Does nothing. Preserved for backward compatibility."
 msgstr "Ei tee mitään. Säilytetty yhteensopivuuden vuoksi."
@@ -1218,16 +1218,16 @@ msgstr ""
 msgid "Append underscores to externally visible names."
 msgstr ""
 
-#: fortran/lang.opt:824 c-family/c.opt:1631 c-family/c.opt:1667
-#: c-family/c.opt:1675 c-family/c.opt:1990 config/pa/pa.opt:42
+#: fortran/lang.opt:824 c-family/c.opt:1623 c-family/c.opt:1659
+#: c-family/c.opt:1667 c-family/c.opt:1986 config/pa/pa.opt:42
 #: config/pa/pa.opt:74 config/arc/arc.opt:140 config/arc/arc.opt:293
-#: config/arc/arc.opt:305 common.opt:638 common.opt:1147 common.opt:1151
-#: common.opt:1155 common.opt:1242 common.opt:1532 common.opt:1614
-#: common.opt:1898 common.opt:2041 common.opt:2084 common.opt:2492
-#: common.opt:2528 common.opt:2621 common.opt:2625 common.opt:2734
-#: common.opt:2825 common.opt:2833 common.opt:2841 common.opt:2849
-#: common.opt:2950 common.opt:3006 common.opt:3094 common.opt:3254
-#: common.opt:3258 common.opt:3262 common.opt:3266
+#: config/arc/arc.opt:305 common.opt:638 common.opt:1151 common.opt:1155
+#: common.opt:1159 common.opt:1246 common.opt:1536 common.opt:1618
+#: common.opt:1902 common.opt:2045 common.opt:2088 common.opt:2496
+#: common.opt:2532 common.opt:2625 common.opt:2629 common.opt:2738
+#: common.opt:2829 common.opt:2837 common.opt:2845 common.opt:2853
+#: common.opt:2954 common.opt:3010 common.opt:3098 common.opt:3258
+#: common.opt:3262 common.opt:3266 common.opt:3270
 #, no-c-format
 msgid "Does nothing.  Preserved for backward compatibility."
 msgstr "Ei tee mitään. Säilytetty yhteensopivuuden vuoksi."
@@ -1447,1133 +1447,1128 @@ msgstr "muuttuja %qD esitelty %<inline%>:ksi"
 msgid "Disable Walloca-larger-than= warning.  Equivalent to Walloca-larger-than=<SIZE_MAX> or larger."
 msgstr ""
 
-#: c-family/c.opt:355
+#: c-family/c.opt:351
 #, fuzzy, no-c-format
 #| msgid "Warn about comparison of different enum types."
 msgid "Warn about comparisons between two operands of array type."
 msgstr "Varoita eri enum-tyyppien vertailusta."
 
-#: c-family/c.opt:359 c-family/c.opt:363
+#: c-family/c.opt:355 c-family/c.opt:359
 #, fuzzy, no-c-format
 msgid "Warn about mismatched declarations of array parameters and unsafe accesses to them."
 msgstr "Varoita saman objektin useista esittelyistä."
 
-#: c-family/c.opt:367
+#: c-family/c.opt:363
 #, fuzzy, no-c-format
 msgid "Warn about accesses to interior zero-length array members."
 msgstr "Varoita nollan pituisista muotoiluista."
 
-#: c-family/c.opt:371
+#: 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:375
+#: c-family/c.opt:371
 #, fuzzy, no-c-format
 msgid "Warn about casting functions to incompatible types."
 msgstr "Varoita funktioiden muunnoksista epäyhteensopiviksi tyypeiksi"
 
-#: c-family/c.opt:383
+#: c-family/c.opt:379
 #, no-c-format
 msgid "-Wbidi-chars=[none|unpaired|any|ucn] Warn about UTF-8 bidirectional control characters."
 msgstr ""
 
-#: c-family/c.opt:406
+#: c-family/c.opt:402
 #, no-c-format
 msgid "Warn about boolean expression compared with an integer value different from true/false."
 msgstr ""
 
-#: c-family/c.opt:410
+#: c-family/c.opt:406
 #, fuzzy, no-c-format
 msgid "Warn about certain operations on boolean expressions."
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: c-family/c.opt:414
+#: c-family/c.opt:410
 #, no-c-format
 msgid "Warn when __builtin_frame_address or __builtin_return_address is used unsafely."
 msgstr ""
 
-#: c-family/c.opt:418
+#: c-family/c.opt:414
 #, fuzzy, no-c-format
 msgid "Warn when a built-in function is declared with the wrong signature."
 msgstr "%Javoimelle funktiolle %qD annettu attribuutti noinline"
 
-#: c-family/c.opt:422
+#: c-family/c.opt:418
 #, fuzzy, no-c-format
 msgid "Warn when a built-in preprocessor macro is undefined or redefined."
 msgstr "Varoita sisäisen makron ..."
 
-#: c-family/c.opt:426
+#: c-family/c.opt:422
 #, no-c-format
 msgid "Warn about features not present in ISO C11, but present in ISO C2X."
 msgstr "Varoita ominaisuuksista, joita ei ole ISO C11:ssä, mutta ovat ISO C2X:ssä."
 
-#: c-family/c.opt:430
+#: c-family/c.opt:426
 #, no-c-format
 msgid "Warn about features not present in ISO C90, but present in ISO C99."
 msgstr "Varoita ominaisuuksista, joita ei ole ISO C90:ssä, mutta ovat ISO C99:ssä."
 
-#: c-family/c.opt:434
+#: c-family/c.opt:430
 #, no-c-format
 msgid "Warn about features not present in ISO C99, but present in ISO C11."
 msgstr "Varoita ominaisuuksista, joita ei ole ISO C99:ssä, mutta ovat ISO C11:ssä."
 
-#: c-family/c.opt:438
+#: c-family/c.opt:434
 #, no-c-format
 msgid "Warn about C constructs that are not in the common subset of C and C++."
 msgstr "Varoita C:n rakenteista, jotka eivät ole C:n ja C++:n yhteisessä osajoukossa."
 
-#: c-family/c.opt:445
+#: c-family/c.opt:441
 #, no-c-format
 msgid "Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO C++ 2011."
 msgstr "Varoita C++:n rakenteista, joilla on eri merkitys ISO C++ 1998- ja ISO C++ 2011 -standardeissa."
 
-#: c-family/c.opt:449
+#: c-family/c.opt:445
 #, no-c-format
 msgid "Warn about C++ constructs whose meaning differs between ISO C++ 2011 and ISO C++ 2014."
 msgstr "Varoita C++:n rakenteista, joilla on eri merkitys ISO C++ 2011- ja ISO C++ 2014 -standardeissa."
 
-#: c-family/c.opt:456
+#: c-family/c.opt:452
 #, no-c-format
 msgid "Warn about C++ constructs whose meaning differs between ISO C++ 2014 and ISO C++ 2017."
 msgstr "Varoita C++:n rakenteista, joilla on eri merkitys ISO C++ 2014- ja ISO C++ 2017 -standardeissa."
 
-#: c-family/c.opt:463
+#: c-family/c.opt:459
 #, fuzzy, no-c-format
 msgid "Warn about C++ constructs whose meaning differs between ISO C++ 2017 and ISO C++ 2020."
 msgstr "Varoita C++:n rakenteista, joilla on eri merkitys ISO C++ 2014- ja ISO C++ 2017 -standardeissa."
 
-#: c-family/c.opt:467
+#: c-family/c.opt:463
 #, no-c-format
 msgid "Warn about C++11 constructs in code compiled with an older standard."
 msgstr ""
 
-#: c-family/c.opt:471
+#: c-family/c.opt:467
 #, no-c-format
 msgid "Warn about C++14 constructs in code compiled with an older standard."
 msgstr ""
 
-#: c-family/c.opt:475
+#: c-family/c.opt:471
 #, no-c-format
 msgid "Warn about C++17 constructs in code compiled with an older standard."
 msgstr ""
 
-#: c-family/c.opt:479
+#: c-family/c.opt:475
 #, no-c-format
 msgid "Warn about C++20 constructs in code compiled with an older standard."
 msgstr ""
 
-#: c-family/c.opt:483
+#: c-family/c.opt:479
 #, no-c-format
 msgid "Warn about C++23 constructs in code compiled with an older standard."
 msgstr ""
 
-#: c-family/c.opt:487
+#: c-family/c.opt:483
 #, no-c-format
 msgid "Warn about casts between incompatible function types."
 msgstr "Varoita epäyhteensopivien funktiotyyppien välisistä muunnoksista."
 
-#: c-family/c.opt:491
+#: c-family/c.opt:487
 #, no-c-format
 msgid "Warn about casts which discard qualifiers."
 msgstr "Varoita tyyppimuunnoksista, jotka hylkäävät määreet."
 
-#: c-family/c.opt:495 c-family/c.opt:499
+#: c-family/c.opt:491 c-family/c.opt:495
 #, fuzzy, no-c-format
 msgid "Warn about catch handlers of non-reference type."
 msgstr "Varoita eri enum-tyyppien vertailusta."
 
-#: c-family/c.opt:503
+#: c-family/c.opt:499
 #, no-c-format
 msgid "Warn about subscripts whose type is \"char\"."
 msgstr "Varoita ”char”-tyypillä indeksoinnista."
 
-#: c-family/c.opt:507 c-family/c.opt:1528 c-family/c.opt:1532
-#: c-family/c.opt:1536 c-family/c.opt:1540 c-family/c.opt:1544
-#: c-family/c.opt:1548 c-family/c.opt:1552 c-family/c.opt:1559
-#: c-family/c.opt:1563 c-family/c.opt:1567 c-family/c.opt:1571
-#: c-family/c.opt:1575 c-family/c.opt:1579 c-family/c.opt:1583
-#: c-family/c.opt:1587 c-family/c.opt:1591 c-family/c.opt:1595
-#: c-family/c.opt:1599 c-family/c.opt:1603 c-family/c.opt:1607
+#: c-family/c.opt:503 c-family/c.opt:1520 c-family/c.opt:1524
+#: c-family/c.opt:1528 c-family/c.opt:1532 c-family/c.opt:1536
+#: c-family/c.opt:1540 c-family/c.opt:1544 c-family/c.opt:1551
+#: c-family/c.opt:1555 c-family/c.opt:1559 c-family/c.opt:1563
+#: c-family/c.opt:1567 c-family/c.opt:1571 c-family/c.opt:1575
+#: c-family/c.opt:1579 c-family/c.opt:1583 c-family/c.opt:1587
+#: c-family/c.opt:1591 c-family/c.opt:1595 c-family/c.opt:1599
 #: config/i386/i386.opt:991
 #, no-c-format
 msgid "Removed in GCC 9.  This switch has no effect."
 msgstr "Poistettu GCC 9:ssä. Tämä valitsin ei vaikuta mihinkään."
 
-#: c-family/c.opt:511
+#: c-family/c.opt:507
 #, no-c-format
 msgid "Warn about variables that might be changed by \"longjmp\" or \"vfork\"."
 msgstr "Varoita muuttujista, joita ”longjmp” tai ”vfork” saattaa muuttaa."
 
-#: c-family/c.opt:515
+#: c-family/c.opt:511
 #, no-c-format
 msgid "Warn about uses of a comma operator within a subscripting expression."
 msgstr "Varoita pilkuoperaattorin käytöstä alaindeksilausekkeessa."
 
-#: c-family/c.opt:519
+#: c-family/c.opt:515
 #, no-c-format
 msgid "Warn about possibly nested block comments, and C++ comments spanning more than one physical line."
 msgstr "Varoita mahdollisista sisäkkäisistä lohkokommenteista ja C++-kommenteista, jotka ulottuvat useammalle kuin yhdelle fyysiselle riville."
 
-#: c-family/c.opt:523
+#: c-family/c.opt:519
 #, no-c-format
 msgid "Synonym for -Wcomment."
 msgstr "Sama kuin -Wcomment."
 
-#: c-family/c.opt:527
+#: c-family/c.opt:523
 #, no-c-format
 msgid "Warn for conditionally-supported constructs."
 msgstr "Varoittaa ehdollisesti tuetuista rakenteista."
 
-#: c-family/c.opt:531
+#: c-family/c.opt:527
 #, no-c-format
 msgid "Warn for implicit type conversions that may change a value."
 msgstr "Varoita implisiittisistä tyyppimuunnoksista, jotka voivat muuttaa arvoa."
 
-#: c-family/c.opt:535
+#: c-family/c.opt:531
 #, no-c-format
 msgid "Warn for converting NULL from/to a non-pointer type."
 msgstr "Varoita NULLin muunnoksesta epäosoitintyypiksi."
 
-#: c-family/c.opt:543
+#: c-family/c.opt:539
 #, fuzzy, no-c-format
 msgid "Warn when performing class template argument deduction on a type with no deduction guides."
 msgstr "%qE ei ole kelvollinen malliargumentti tyypille %qT, koska se ei ole objekti ulkoisella linkityksellä"
 
-#: c-family/c.opt:548
+#: c-family/c.opt:544
 #, no-c-format
 msgid "Warn when all constructors and destructors are private."
 msgstr "Varoita kun kaikki muodostimet ja hajottimet ovat yksityisiä."
 
-#: c-family/c.opt:552
+#: c-family/c.opt:548
 #, no-c-format
 msgid "Warn about dangling else."
 msgstr "Varoita orvosta elsestä."
 
-#: c-family/c.opt:556 c-family/c.opt:560
+#: c-family/c.opt:552 c-family/c.opt:556
 #, no-c-format
 msgid "Warn for uses of pointers to auto variables whose lifetime has ended."
 msgstr ""
 
-#: c-family/c.opt:564
+#: c-family/c.opt:560
 #, no-c-format
 msgid "Warn about __TIME__, __DATE__ and __TIMESTAMP__ usage."
 msgstr "Varoita makrojen __TIME__, __DATE__ ja __TIMESTAMP__ käytöstä."
 
-#: c-family/c.opt:568
+#: c-family/c.opt:564
 #, fuzzy, no-c-format
 msgid "Warn when a declaration is found after a statement."
 msgstr "Varoita kun esittely ei määrittele tyyppiä"
 
-#: c-family/c.opt:572
+#: c-family/c.opt:568
 #, no-c-format
 msgid "Warn when deleting a pointer to incomplete type."
 msgstr "Varoita epätäydellisen osoitintyypin tuhoamisesta."
 
-#: c-family/c.opt:576
+#: c-family/c.opt:572
 #, no-c-format
 msgid "Warn about deleting polymorphic objects with non-virtual destructors."
 msgstr "Varoita polymorfisten olioiden tuhoamisesta epävirtuaalisilla hajottimilla."
 
-#: c-family/c.opt:584
+#: c-family/c.opt:580
 #, 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:589
+#: c-family/c.opt:585
 #, 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:594
+#: c-family/c.opt:590
 #, fuzzy, no-c-format
 msgid "Warn about deprecated arithmetic conversions on operands of enumeration types."
 msgstr "Varoita implisiittisistä enum-tyyppien muunnoksista."
 
-#: c-family/c.opt:598
+#: c-family/c.opt:594
 #, 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:603
+#: c-family/c.opt:599
 #, fuzzy, no-c-format
 msgid "Warn about positional initialization of structs requiring designated initializers."
 msgstr "Varoita mahdollisesti puuttuvista aaltosuluista alustimissa"
 
-#: c-family/c.opt:607
+#: c-family/c.opt:603
 #, fuzzy, no-c-format
 msgid "Warn if qualifiers on arrays which are pointer targets are discarded."
 msgstr "staattinen tai tyyppimääreitä ei-parametrisessa taulukkoesittelijässä"
 
-#: c-family/c.opt:611
+#: c-family/c.opt:607
 #, no-c-format
 msgid "Warn if type qualifiers on pointers are discarded."
 msgstr "Varoita jos osoittimien tyyppimääreet hylätään."
 
-#: c-family/c.opt:615
+#: c-family/c.opt:611
 #, no-c-format
 msgid "Warn about compile-time integer division by zero."
 msgstr "Varoita käännösaikaisesta nollalla jaosta."
 
-#: c-family/c.opt:619
+#: c-family/c.opt:615
 #, no-c-format
 msgid "Warn about duplicated branches in if-else statements."
 msgstr "Varoita kahdenkertaisista haaroista if-else-lauseissa."
 
-#: c-family/c.opt:623
+#: c-family/c.opt:619
 #, no-c-format
 msgid "Warn about duplicated conditions in an if-else-if chain."
 msgstr "Varoita kahdenkertaisista ehdoista if-else-if-ketjussa."
 
-#: c-family/c.opt:627
+#: c-family/c.opt:623
 #, no-c-format
 msgid "Warn about violations of Effective C++ style rules."
 msgstr "Varoita Effective C++ -tyylisääntöjen rikkomuksista."
 
-#: c-family/c.opt:631
+#: c-family/c.opt:627
 #, no-c-format
 msgid "Warn about an empty body in an if or else statement."
 msgstr "Varoita tyhjästä rungosta if- ja else-lauseissa."
 
-#: c-family/c.opt:635
+#: c-family/c.opt:631
 #, no-c-format
 msgid "Warn about stray tokens after #else and #endif."
 msgstr "Varoita ylimääräisistä merkeistä #elif- ja #endif-direktiivien perässä."
 
-#: c-family/c.opt:639
+#: c-family/c.opt:635
 #, no-c-format
 msgid "Warn about comparison of different enum types."
 msgstr "Varoita eri enum-tyyppien vertailusta."
 
-#: c-family/c.opt:643
+#: c-family/c.opt:639
 #, no-c-format
 msgid "Warn about implicit conversion of enum types."
 msgstr "Varoita implisiittisistä enum-tyyppien muunnoksista."
 
-#: c-family/c.opt:651
+#: c-family/c.opt:647
 #, fuzzy, no-c-format
 msgid "This switch is deprecated; use -Werror=implicit-function-declaration instead."
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: c-family/c.opt:655
+#: c-family/c.opt:651
 #, fuzzy, no-c-format
 msgid "Warn when an exception handler is shadowed by another handler."
 msgstr "Varoita käyttämättömistä muuttujista"
 
-#: c-family/c.opt:663
+#: c-family/c.opt:659
 #, no-c-format
 msgid "Warn about semicolon after in-class function definition."
 msgstr "Varoita puolipisteestä luokansisäisen funktiomäärittelyn perässä."
 
-#: c-family/c.opt:667
+#: c-family/c.opt:663
 #, no-c-format
 msgid "Warn for implicit type conversions that cause loss of floating point precision."
 msgstr "Varoita implisiittisistä tyyppimuunnoksista, jotka aiheuttavat liukulukutarkkuuden menetystä."
 
-#: c-family/c.opt:671
+#: c-family/c.opt:667
 #, no-c-format
 msgid "Warn if testing floating point numbers for equality."
 msgstr "Varoita liukulukujen yhtäsuuruusvertailuista."
 
-#: c-family/c.opt:675 c-family/c.opt:721
+#: c-family/c.opt:671 c-family/c.opt:717
 #, no-c-format
 msgid "Warn about printf/scanf/strftime/strfmon format string anomalies."
 msgstr "Varoita epäilyttävistä printf/scanf/strftime/strfmon-muotoilumerkkijonoista."
 
-#: c-family/c.opt:679
+#: c-family/c.opt:675
 #, no-c-format
 msgid "Warn about format strings that contain NUL bytes."
 msgstr "Varoita NUL-tavuja sisältävistä muotoilumerkkijonoista."
 
-#: c-family/c.opt:683
+#: c-family/c.opt:679
 #, fuzzy, no-c-format
 msgid "Warn about GCC format strings with strings unsuitable for diagnostics."
 msgstr "Varoita muotoilumerkkijonoista, jotka eivät ole literaaleja."
 
-#: c-family/c.opt:687
+#: c-family/c.opt:683
 #, fuzzy, no-c-format
 msgid "Warn if passing too many arguments to a function for its format string."
 msgstr "liian paljon argumentteja funktiolle %<va_start%>"
 
-#: c-family/c.opt:691
+#: c-family/c.opt:687
 #, no-c-format
 msgid "Warn about format strings that are not literals."
 msgstr "Varoita muotoilumerkkijonoista, jotka eivät ole literaaleja."
 
-#: c-family/c.opt:695
+#: c-family/c.opt:691
 #, fuzzy, 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 "%<%.*s%>-direktiivi kirjoittaa jopa %wu tavua %wu tavun kokoiseen alueeseen"
 
-#: c-family/c.opt:700
+#: c-family/c.opt:696
 #, no-c-format
 msgid "Warn about possible security problems with format functions."
 msgstr "Varoita mahdollisista turvallisuusongelmista muotoilufunktioiden yhteydessä."
 
-#: c-family/c.opt:704
+#: c-family/c.opt:700
 #, fuzzy, no-c-format
 msgid "Warn about sign differences with format functions."
 msgstr "Varoita mahdollisista turvallisuusongelmista muotoilufunktioiden yhteydessä"
 
-#: c-family/c.opt:708
+#: c-family/c.opt:704
 #, fuzzy, no-c-format
 msgid "Warn about calls to snprintf and similar functions that truncate output. Same as -Wformat-truncation=1."
 msgstr "Varoita funktioiden muunnoksista epäyhteensopiviksi tyypeiksi"
 
-#: c-family/c.opt:713
+#: c-family/c.opt:709
 #, no-c-format
 msgid "Warn about strftime formats yielding 2-digit years."
 msgstr "Varoita kaksinumeroisia vuosilukuja tuottavista strftime-muotoiluista."
 
-#: c-family/c.opt:717
+#: c-family/c.opt:713
 #, no-c-format
 msgid "Warn about zero-length formats."
 msgstr "Varoita nollan pituisista muotoiluista."
 
-#: c-family/c.opt:725
+#: c-family/c.opt:721
 #, fuzzy, no-c-format
 msgid "Warn about function calls with format strings that write past the end of the destination region."
 msgstr "%<%.*s%>-direktiivi kirjoittaa jopa %wu tavua %wu tavun kokoiseen alueeseen"
 
-#: c-family/c.opt:730
+#: c-family/c.opt:726
 #, no-c-format
 msgid "Warn about calls to snprintf and similar functions that truncate output."
 msgstr "Varoita tuotosta typistävistä snprintf-funktiokutsuista ja vastaavista."
 
-#: c-family/c.opt:734
+#: c-family/c.opt:730
 #, no-c-format
 msgid "Warn when the field in a struct is not aligned."
 msgstr "Varoita, kun structin kenttä ei ole kohdistettu."
 
-#: c-family/c.opt:738
+#: c-family/c.opt:734
 #, no-c-format
 msgid "Warn whenever type qualifiers are ignored."
 msgstr "Varoita tyyppimääreiden huomiotta jättämisestä."
 
-#: c-family/c.opt:742
+#: c-family/c.opt:738
 #, no-c-format
 msgid "Warn whenever attributes are ignored."
 msgstr "Varoita attribuuttien huomiotta jättämisestä."
 
-#: c-family/c.opt:746
+#: c-family/c.opt:742
 #, fuzzy, no-c-format
 msgid "Warn when a base is inaccessible in derived due to ambiguity."
 msgstr "halutaan rekisterimuuttujan %qD osoite"
 
-#: c-family/c.opt:750
+#: c-family/c.opt:746
 #, fuzzy, no-c-format
 msgid "Warn when there is a conversion between pointers that have incompatible types."
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: c-family/c.opt:754 common.opt:649
+#: c-family/c.opt:750 common.opt:649
 #, no-c-format
 msgid "Warn for infinitely recursive calls."
 msgstr ""
 
-#: c-family/c.opt:758
+#: c-family/c.opt:754
 #, no-c-format
 msgid "Warn when the address of packed member of struct or union is taken."
 msgstr ""
 
-#: c-family/c.opt:762
+#: c-family/c.opt:758
 #, no-c-format
 msgid "Warn about variables which are initialized to themselves."
 msgstr "Varoita muuttujista, jotka alustetaan omalla arvollaan."
 
-#: c-family/c.opt:766
+#: c-family/c.opt:762
 #, no-c-format
 msgid "Warn about uses of std::initializer_list that can result in dangling pointers."
 msgstr ""
 
-#: c-family/c.opt:770
+#: c-family/c.opt:766
 #, no-c-format
 msgid "Warn about nonsensical values of --param destructive-interference-size or constructive-interference-size."
 msgstr ""
 
-#: c-family/c.opt:775
+#: c-family/c.opt:771
 #, no-c-format
 msgid "Warn about implicit declarations."
 msgstr "Varoita implisiittisistä funktioesittelyistä."
 
-#: c-family/c.opt:783
+#: c-family/c.opt:779
 #, fuzzy, no-c-format
 msgid "Warn about implicit conversions from \"float\" to \"double\"."
 msgstr "Varoita implisiittisistä muunnoksista"
 
-#: c-family/c.opt:787
+#: c-family/c.opt:783
 #, no-c-format
 msgid "Warn if \"defined\" is used outside #if."
 msgstr "Varoita ”defined”:in käytöstä #if-ehdon ulkopuolella."
 
-#: c-family/c.opt:791
+#: c-family/c.opt:787
 #, no-c-format
 msgid "Warn about implicit function declarations."
 msgstr "Varoita implisiittisistä funktioesittelyistä."
 
-#: c-family/c.opt:795
+#: c-family/c.opt:791
 #, no-c-format
 msgid "Warn when a declaration does not specify a type."
 msgstr "Varoita kun esittely ei määrittele tyyppiä."
 
-#: c-family/c.opt:802
+#: c-family/c.opt:798
 #, no-c-format
 msgid "Warn about C++11 inheriting constructors when the base has a variadic constructor."
 msgstr ""
 
-#: c-family/c.opt:806
+#: c-family/c.opt:802
 #, no-c-format
 msgid "Warn about incompatible integer to pointer and pointer to integer conversions."
 msgstr ""
 
-#: c-family/c.opt:810
+#: c-family/c.opt:806
 #, fuzzy, no-c-format
 msgid "Warn for suspicious integer expressions in boolean context."
 msgstr "lueteltu tyyppi määritelty täällä"
 
-#: c-family/c.opt:814
+#: c-family/c.opt:810
 #, no-c-format
 msgid "Warn when there is a cast to a pointer from an integer of a different size."
 msgstr "Varoita osoittimien tyyppimuunnoksista erikokoisiksi kokonaisluvuiksi."
 
-#: c-family/c.opt:818
+#: c-family/c.opt:814
 #, no-c-format
 msgid "Warn about invalid uses of the \"offsetof\" macro."
 msgstr "Varoita ”offsetof”-makron virheellisestä käytöstä."
 
-#: c-family/c.opt:822
+#: c-family/c.opt:818
 #, no-c-format
 msgid "Warn about PCH files that are found but not used."
 msgstr "Varoita löytyneistä PCH-tiedostoista, joita ei käytetä."
 
-#: c-family/c.opt:826
+#: c-family/c.opt:822
 #, fuzzy, no-c-format
 msgid "Warn when a jump misses a variable initialization."
 msgstr "halutaan rekisterimuuttujan %qD osoite"
 
-#: c-family/c.opt:830
+#: c-family/c.opt:826
 #, 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:834
+#: c-family/c.opt:830
 #, no-c-format
 msgid "Warn when a logical operator is suspiciously always evaluating to true or false."
 msgstr "Varoita, kun looginen operaattori on aina tosi tai aina epätosi."
 
-#: c-family/c.opt:838
+#: c-family/c.opt:834
 #, no-c-format
 msgid "Warn when logical not is used on the left hand side operand of a comparison."
 msgstr ""
 
-#: c-family/c.opt:842
+#: c-family/c.opt:838
 #, no-c-format
 msgid "Do not warn about using \"long long\" when -pedantic."
 msgstr "Älä varoita ”long long”-tyypistä -pedantic-tilassa."
 
-#: c-family/c.opt:846
+#: c-family/c.opt:842
 #, no-c-format
 msgid "Warn about suspicious declarations of \"main\"."
 msgstr "Varoita epäilyttävistä ”main”-funktion esittelyistä."
 
-#: c-family/c.opt:854
+#: c-family/c.opt:850
 #, 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:858
+#: c-family/c.opt:854
 #, 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:862
+#: c-family/c.opt:858
 #, fuzzy, no-c-format
 msgid "Warn when the indentation of the code does not reflect the block structure."
 msgstr "%J%qE-attribuutti soveltuu vain funktioihin"
 
-#: c-family/c.opt:866
+#: c-family/c.opt:862
 #, no-c-format
 msgid "Warn for deallocation calls with arguments returned from mismatched allocation functions."
 msgstr ""
 
-#: c-family/c.opt:871
+#: c-family/c.opt:867
 #, no-c-format
 msgid "Warn for mismatches between calls to operator new or delete and the corresponding call to the allocation or deallocation function."
 msgstr ""
 
-#: c-family/c.opt:876
+#: c-family/c.opt:872
 #, no-c-format
 msgid "Warn when a class is redeclared or referenced using a mismatched class-key."
 msgstr ""
 
-#: c-family/c.opt:880
+#: c-family/c.opt:876
 #, no-c-format
 msgid "Warn about possibly missing braces around initializers."
 msgstr "Varoita mahdollisesti puuttuvista aaltosuluista alustimissa."
 
-#: c-family/c.opt:884
+#: c-family/c.opt:880
 #, no-c-format
 msgid "Warn about global functions without previous declarations."
 msgstr "Varoita globaaleista funktioista, joilla ei ole aiempaa esittelyä."
 
-#: c-family/c.opt:888
+#: c-family/c.opt:884
 #, no-c-format
 msgid "Warn about missing fields in struct initializers."
 msgstr "Varoita puuttuvista kentistä struct-alustimissa."
 
-#: c-family/c.opt:892
+#: c-family/c.opt:888
 #, fuzzy, no-c-format
 #| msgid "Warn about possibly missing parentheses."
 msgid "Warn about likely missing requires keyword."
 msgstr "Varoita mahdollisesti puuttuvista sulkeista."
 
-#: c-family/c.opt:896
+#: c-family/c.opt:892
 #, no-c-format
 msgid "Warn when the template keyword is missing after a member access token in a dependent member access expression if that member is a template."
 msgstr ""
 
-#: c-family/c.opt:900
+#: c-family/c.opt:896
 #, 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:904
+#: c-family/c.opt:900
 #, no-c-format
 msgid "Warn on direct multiple inheritance."
 msgstr "Varoita suorasta moniperinnästä."
 
-#: c-family/c.opt:908
+#: c-family/c.opt:904
 #, fuzzy, no-c-format
 msgid "Warn on namespace definition."
 msgstr "%<namespace%>-määrittely ei ole sallittu täällä"
 
-#: c-family/c.opt:912
+#: c-family/c.opt:908
 #, fuzzy, no-c-format
 msgid "Warn when fields in a struct with the packed attribute are misaligned."
 msgstr "Varoita kun Cell-mikrokoodattu käsky lähetetään"
 
-#: c-family/c.opt:916
+#: c-family/c.opt:912
 #, no-c-format
 msgid "Warn when a range-based for-loop is creating unnecessary copies."
 msgstr ""
 
-#: c-family/c.opt:920
+#: c-family/c.opt:916
 #, no-c-format
 msgid "Warn when a class or enumerated type is referenced using a redundant class-key."
 msgstr ""
 
-#: c-family/c.opt:924
+#: c-family/c.opt:920
 #, fuzzy, no-c-format
 msgid "Warn about missing sized deallocation functions."
 msgstr "Varoita puuttuvista kentistä struct-alustimissa"
 
-#: c-family/c.opt:928
+#: c-family/c.opt:924
 #, no-c-format
 msgid "Warn about suspicious divisions of two sizeof expressions that don't work correctly with pointers."
 msgstr ""
 
-#: c-family/c.opt:932
+#: c-family/c.opt:928
 #, 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:937
+#: c-family/c.opt:933
 #, no-c-format
 msgid "Warn about suspicious length parameters to certain string functions if the argument uses sizeof."
 msgstr ""
 
-#: c-family/c.opt:941
+#: c-family/c.opt:937
 #, no-c-format
 msgid "Warn when sizeof is applied on a parameter declared as an array."
 msgstr ""
 
-#: c-family/c.opt:945
+#: c-family/c.opt:941
 #, no-c-format
 msgid "Warn about calls to strcmp and strncmp used in equality expressions that are necessarily true or false due to the length of one and size of the other argument."
 msgstr ""
 
-#: c-family/c.opt:951
+#: c-family/c.opt:947
 #, fuzzy, no-c-format
 msgid "Warn about buffer overflow in string manipulation functions like memcpy and strcpy."
 msgstr "Varoita funktioiden muunnoksista epäyhteensopiviksi tyypeiksi"
 
-#: c-family/c.opt:956
+#: c-family/c.opt:952
 #, fuzzy, no-c-format
 msgid "Under the control of Object Size type, warn about buffer overflow in string manipulation functions like memcpy and strcpy."
 msgstr "Varoita funktioiden muunnoksista epäyhteensopiviksi tyypeiksi"
 
-#: c-family/c.opt:961
+#: c-family/c.opt:957
 #, fuzzy, no-c-format
 msgid "Warn about reading past the end of a source array in string manipulation functions like memchr and memcpy."
 msgstr "Varoita funktioiden muunnoksista epäyhteensopiviksi tyypeiksi"
 
-#: c-family/c.opt:965
+#: c-family/c.opt:961
 #, fuzzy, no-c-format
 msgid "Warn about truncation in string manipulation functions like strncat and strncpy."
 msgstr "Varoita funktioiden muunnoksista epäyhteensopiviksi tyypeiksi"
 
-#: c-family/c.opt:969
+#: c-family/c.opt:965
 #, fuzzy, no-c-format
 msgid "Warn about functions which might be candidates for format attributes."
 msgstr "funktio on ehkä mahdollinen ehdokas %qs-muotoiluattribuutille"
 
-#: c-family/c.opt:973
+#: c-family/c.opt:969
 #, 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:978
+#: c-family/c.opt:974
 #, fuzzy, no-c-format
 msgid "Warn about enumerated switches, with no default, missing a case."
 msgstr "Tuota koodia big-endian-tilassa"
 
-#: c-family/c.opt:982
+#: c-family/c.opt:978
 #, fuzzy, no-c-format
 msgid "Warn about enumerated switches missing a \"default:\" statement."
 msgstr "Varoita tyhjästä rungosta if- ja else-lauseissa."
 
-#: c-family/c.opt:986
+#: c-family/c.opt:982
 #, fuzzy, no-c-format
 msgid "Warn about all enumerated switches missing a specific case."
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: c-family/c.opt:990
+#: c-family/c.opt:986
 #, fuzzy, no-c-format
 msgid "Warn about switches with boolean controlling expression."
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: c-family/c.opt:994
+#: c-family/c.opt:990
 #, no-c-format
 msgid "Warn about switch values that are outside of the switch's type range."
 msgstr ""
 
-#: c-family/c.opt:998
+#: c-family/c.opt:994
 #, fuzzy, no-c-format
 msgid "Warn on primary template declaration."
 msgstr "malliesittelylle %q+D"
 
-#: c-family/c.opt:1002
+#: c-family/c.opt:998
 #, 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:1011
+#: c-family/c.opt:1007
 #, fuzzy, no-c-format
 msgid "Warn about user-specified include directories that do not exist."
 msgstr "Varoita annetuista include-hakemistoista, jotka eivät ole olemassa"
 
-#: c-family/c.opt:1015
+#: c-family/c.opt:1011
 #, no-c-format
 msgid "Warn about function parameters declared without a type specifier in K&R-style functions."
 msgstr "Varoita funktioparametreistä, jotka on esitelty ilman tyyppimäärittelyjä K&R-tyylisissä funktioissa."
 
-#: c-family/c.opt:1019
+#: c-family/c.opt:1015
 #, no-c-format
 msgid "Warn about global functions without prototypes."
 msgstr "Varoita globaaleista funktioista, joilla ei ole prototyyppiä."
 
-#: c-family/c.opt:1026
+#: c-family/c.opt:1022
 #, no-c-format
 msgid "Warn about use of multi-character character constants."
 msgstr "Varoita monimerkkisistä merkkivakioista."
 
-#: c-family/c.opt:1030
+#: c-family/c.opt:1026
 #, fuzzy, no-c-format
 msgid "Warn about narrowing conversions within { } that are ill-formed in C++11."
 msgstr "virheellinen muunnos tyypistä %qT tyypiksi %qT"
 
-#: c-family/c.opt:1034
+#: c-family/c.opt:1030
 #, fuzzy, no-c-format
 msgid "Warn about \"extern\" declarations not at file scope."
 msgstr "Varoita saman objektin useista esittelyistä"
 
-#: c-family/c.opt:1038
+#: c-family/c.opt:1034
 #, 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:1042
+#: c-family/c.opt:1038
 #, no-c-format
 msgid "Warn if C++17 noexcept function type will change the mangled name of a symbol."
 msgstr ""
 
-#: c-family/c.opt:1046
+#: c-family/c.opt:1042
 #, fuzzy, no-c-format
 msgid "Warn when non-templatized friend functions are declared within a template."
 msgstr "%Javoimelle funktiolle %qD annettu attribuutti noinline"
 
-#: c-family/c.opt:1050
+#: c-family/c.opt:1046
 #, fuzzy, no-c-format
 msgid "Warn when a conversion function will never be called due to the type it converts to."
 msgstr "muunnnos void-tyypiksi ei koskaan käytä tyyppimuunnosoperaattoria"
 
-#: c-family/c.opt:1054
+#: c-family/c.opt:1050
 #, no-c-format
 msgid "Warn for unsafe raw memory writes to objects of class types."
 msgstr ""
 
-#: c-family/c.opt:1058
+#: c-family/c.opt:1054
 #, no-c-format
 msgid "Warn about non-virtual destructors."
 msgstr "Varoita epävirtuaalisista hajottimista."
 
-#: c-family/c.opt:1062
+#: c-family/c.opt:1058
 #, no-c-format
 msgid "Warn about NULL being passed to argument slots marked as requiring non-NULL."
 msgstr ""
 
-#: c-family/c.opt:1078
+#: c-family/c.opt:1074
 #, no-c-format
 msgid "-Wnormalized=[none|id|nfc|nfkc]\tWarn about non-normalized Unicode strings."
 msgstr "-Wnormalized=[none|id|nfc|nfkc]\tVaroita normalisoimattomista Unicode-merkkijonoista."
 
-#: c-family/c.opt:1101
+#: c-family/c.opt:1097
 #, 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:1106
+#: c-family/c.opt:1102
 #, no-c-format
 msgid "Warn if a C-style cast is used in a program."
 msgstr "Varoita C-tyylisistä tyyppimuunnoksista ohjelmassa."
 
-#: c-family/c.opt:1110
+#: c-family/c.opt:1106
 #, fuzzy, no-c-format
 msgid "Warn for obsolescent usage in a declaration."
 msgstr "Varoita kun esittely ei määrittele tyyppiä"
 
-#: c-family/c.opt:1114
+#: c-family/c.opt:1110
 #, fuzzy, no-c-format
 msgid "Warn if an old-style parameter definition is used."
 msgstr "vanhanmallisia parametriesittelyitä prototyypitetyssä funktiomäärittelyssä"
 
-#: c-family/c.opt:1118
+#: c-family/c.opt:1114
 #, no-c-format
 msgid "Warn about potentially suboptimal choices related to OpenACC parallelism."
 msgstr ""
 
-#: c-family/c.opt:1122
+#: c-family/c.opt:1118
 #, no-c-format
 msgid "Warn if a simd directive is overridden by the vectorizer cost model."
 msgstr ""
 
-#: c-family/c.opt:1126
+#: c-family/c.opt:1122
 #, no-c-format
 msgid "Warn if a string is longer than the maximum portable length specified by the standard."
 msgstr ""
 
-#: c-family/c.opt:1130
+#: c-family/c.opt:1126
 #, no-c-format
 msgid "Warn about overloaded virtual function names."
 msgstr "Varoita ylikuormitetuista virtuaalifunktioiden nimistä."
 
-#: c-family/c.opt:1134
+#: c-family/c.opt:1130
 #, fuzzy, no-c-format
 msgid "Warn about overriding initializers without side effects."
 msgstr "Varoita muuttujista, jotka alustetaan omalla arvollaan"
 
-#: c-family/c.opt:1138
+#: c-family/c.opt:1134
 #, fuzzy, no-c-format
 msgid "Warn about overriding initializers with side effects."
 msgstr "Varoita muuttujista, jotka alustetaan omalla arvollaan"
 
-#: c-family/c.opt:1142
+#: c-family/c.opt:1138
 #, no-c-format
 msgid "Warn about packed bit-fields whose offset changed in GCC 4.4."
 msgstr "Varoita pakatuista bittikentistä, joiden siirrososoite muuttui GCC 4.4:ssä."
 
-#: c-family/c.opt:1146
+#: c-family/c.opt:1142
 #, no-c-format
 msgid "Warn about possibly missing parentheses."
 msgstr "Varoita mahdollisesti puuttuvista sulkeista."
 
-#: c-family/c.opt:1154
+#: c-family/c.opt:1150
 #, 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:1158
+#: c-family/c.opt:1154
 #, fuzzy, no-c-format
 msgid "Warn when converting the type of pointers to member functions."
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: c-family/c.opt:1162
+#: c-family/c.opt:1158
 #, no-c-format
 msgid "Warn about function pointer arithmetic."
 msgstr "Varoita laskutoimituksista funktio-osoittimilla."
 
-#: c-family/c.opt:1166
+#: c-family/c.opt:1162
 #, fuzzy, no-c-format
 msgid "Warn when a pointer differs in signedness in an assignment."
 msgstr "tyyppimuunnos osoittimesta erisuuruiseen kokonaislukuun"
 
-#: c-family/c.opt:1170
+#: c-family/c.opt:1166
 #, fuzzy, no-c-format
 msgid "Warn when a pointer is compared with a zero character constant."
 msgstr "Varoita monimerkkisistä merkkivakioista"
 
-#: c-family/c.opt:1174
+#: c-family/c.opt:1170
 #, no-c-format
 msgid "Warn when a pointer is cast to an integer of a different size."
 msgstr "Varoita osoittimien tyyppimuunnoksista erikokoisiksi kokonaisluvuiksi."
 
 # vähän fuzzy
-#: c-family/c.opt:1178
+#: c-family/c.opt:1174
 #, no-c-format
 msgid "Warn about misuses of pragmas."
 msgstr "Varoita pragmain väärästä käytöstä."
 
-#: c-family/c.opt:1182
+#: c-family/c.opt:1178
 #, no-c-format
 msgid "Warn if constructor or destructors with priorities from 0 to 100 are used."
 msgstr ""
 
-#: c-family/c.opt:1186
+#: c-family/c.opt:1182
 #, no-c-format
 msgid "Warn if a property for an Objective-C object has no assign semantics specified."
 msgstr ""
 
-#: c-family/c.opt:1190
+#: c-family/c.opt:1186
 #, no-c-format
 msgid "Warn if inherited methods are unimplemented."
 msgstr "Varoita perittyjen metodien puuttuvista toteutuksista."
 
-#: c-family/c.opt:1194 c-family/c.opt:1198
+#: c-family/c.opt:1190 c-family/c.opt:1194
 #, no-c-format
 msgid "Warn for placement new expressions with undefined behavior."
 msgstr ""
 
-#: c-family/c.opt:1202
+#: c-family/c.opt:1198
 #, no-c-format
 msgid "Warn about multiple declarations of the same object."
 msgstr "Varoita saman objektin useista esittelyistä."
 
-#: c-family/c.opt:1206
+#: c-family/c.opt:1202
 #, no-c-format
 msgid "Warn about redundant calls to std::move."
 msgstr ""
 
 # vähän fuzzy
-#: c-family/c.opt:1210
+#: c-family/c.opt:1206
 #, fuzzy, no-c-format
 msgid "Warn about uses of register storage specifier."
 msgstr "Varoita pragmain väärästä käytöstä."
 
-#: c-family/c.opt:1214
+#: c-family/c.opt:1210
 #, no-c-format
 msgid "Warn when the compiler reorders code."
 msgstr "Varoita kun kääntäjä järjestää koodia uudelleen."
 
-#: c-family/c.opt:1218
+#: c-family/c.opt:1214
 #, no-c-format
 msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)."
 msgstr "Varoita kun funktion paluutyypiksi jää ”int” (C), tai kun paluutyypit ovat ristiriitaiset (C++)."
 
-#: c-family/c.opt:1222
+#: c-family/c.opt:1218
 #, no-c-format
 msgid "Warn on suspicious constructs involving reverse scalar storage order."
 msgstr ""
 
-#: c-family/c.opt:1226
+#: c-family/c.opt:1222
 #, fuzzy, no-c-format
 msgid "Warn if a selector has multiple methods."
 msgstr "Varoita globaaleista funktioista, joilla ei ole aiempaa esittelyä."
 
-#: c-family/c.opt:1230
+#: c-family/c.opt:1226
 #, fuzzy, no-c-format
 msgid "Warn about possible violations of sequence point rules."
 msgstr "Varoita Effective C++ -tyylisääntöjen rikkomuksista"
 
-#: c-family/c.opt:1234
+#: c-family/c.opt:1230
 #, no-c-format
 msgid "Warn if a local declaration hides an instance variable."
 msgstr "Varoita kun paikallinen esittely piilottaa instanssimuuttujan."
 
-#: c-family/c.opt:1238 c-family/c.opt:1242
+#: c-family/c.opt:1234 c-family/c.opt:1238
 #, fuzzy, no-c-format
 msgid "Warn if left shift of a signed value overflows."
 msgstr "oikealle siirron lukumäärä on negatiivinen"
 
-#: c-family/c.opt:1246
+#: c-family/c.opt:1242
 #, no-c-format
 msgid "Warn if shift count is negative."
 msgstr "Varoita kun oikealle siirron lukumäärä on negatiivinen."
 
-#: c-family/c.opt:1250
+#: c-family/c.opt:1246
 #, fuzzy, no-c-format
 msgid "Warn if shift count >= width of type."
 msgstr "vasemmalle siirron lukumäärä >= tyypin leveys"
 
-#: c-family/c.opt:1254
+#: c-family/c.opt:1250
 #, fuzzy, no-c-format
 msgid "Warn if left shifting a negative value."
 msgstr "oikealle siirron lukumäärä on negatiivinen"
 
-#: c-family/c.opt:1258
+#: c-family/c.opt:1254
 #, 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:1262
+#: c-family/c.opt:1258
 #, no-c-format
 msgid "Warn about signed-unsigned comparisons."
 msgstr "Varoita signed-unsigned-vertailuista."
 
-#: c-family/c.opt:1270
+#: c-family/c.opt:1266
 #, fuzzy, no-c-format
 msgid "Warn for implicit type conversions between signed and unsigned integers."
 msgstr "Varoita implisiittisistä tyyppimuunnoksista etumerkillisten ja etumerkittömien kokonaislukujen välillä"
 
-#: c-family/c.opt:1274
+#: c-family/c.opt:1270
 #, fuzzy, no-c-format
 msgid "Warn when overload promotes from unsigned to signed."
 msgstr "vertailu ”etumerkitön lauseke >= 0” on aina tosi"
 
-#: c-family/c.opt:1278
+#: c-family/c.opt:1274
 #, fuzzy, no-c-format
 msgid "Warn about uncasted NULL used as sentinel."
 msgstr "Varoita pragmain väärästä käytöstä"
 
-#: c-family/c.opt:1282
+#: c-family/c.opt:1278
 #, no-c-format
 msgid "Warn about unprototyped function declarations."
 msgstr "Varoita prototyypittömistä funktioesittelyistä."
 
-#: c-family/c.opt:1294
+#: c-family/c.opt:1290
 #, no-c-format
 msgid "Warn if type signatures of candidate methods do not match exactly."
 msgstr ""
 
-#: c-family/c.opt:1298
+#: c-family/c.opt:1294
 #, 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:1302
+#: c-family/c.opt:1298
 #, no-c-format
 msgid "Deprecated.  This switch has no effect."
 msgstr "Vanhentunut. Tämä valitsin ei vaikuta mihinkään."
 
-#: c-family/c.opt:1310
+#: c-family/c.opt:1306
 #, no-c-format
 msgid "Warn if a comparison always evaluates to true or false."
 msgstr "Varoita vertailusta, joka on aina tosi tai aina epätosi."
 
-#: c-family/c.opt:1314
+#: c-family/c.opt:1310
 #, no-c-format
 msgid "Warn if a throw expression will always result in a call to terminate()."
 msgstr ""
 
-#: c-family/c.opt:1318
+#: c-family/c.opt:1314
 #, no-c-format
 msgid "Warn about features not present in traditional C."
 msgstr "Varoita ominaisuuksista, joita ei ole perinteisessä C:ssä."
 
-#: c-family/c.opt:1322
+#: c-family/c.opt:1318
 #, 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:1326
+#: c-family/c.opt:1322
 #, no-c-format
 msgid "Warn if trigraphs are encountered that might affect the meaning of the program."
 msgstr ""
 
-#: c-family/c.opt:1330
+#: c-family/c.opt:1326
 #, fuzzy, no-c-format
 msgid "Warn about @selector()s without previously declared methods."
 msgstr "Varoita globaaleista funktioista, joilla ei ole aiempaa esittelyä."
 
-#: c-family/c.opt:1334
+#: c-family/c.opt:1330
 #, no-c-format
 msgid "Warn if an undefined macro is used in an #if directive."
 msgstr "Varoita määrittelemättömän makron käytöstä #if-ehdossa."
 
-#: c-family/c.opt:1346
+#: c-family/c.opt:1342
 #, no-c-format
 msgid "Warn about unrecognized pragmas."
 msgstr "Varoita tuntemattomista pragmoista."
 
-#: c-family/c.opt:1350
+#: c-family/c.opt:1346
 #, no-c-format
 msgid "Warn about unsuffixed float constants."
 msgstr "Varoita loppuliitteettömistä liukulukuvakioista."
 
-#: c-family/c.opt:1358
+#: c-family/c.opt:1354
 #, fuzzy, no-c-format
 msgid "Warn when typedefs locally defined in a function are not used."
 msgstr "%Jnimike %qD määritelty, mutta ei käytetty"
 
-#: c-family/c.opt:1362
+#: c-family/c.opt:1358
 #, fuzzy, no-c-format
 msgid "Warn about macros defined in the main file that are not used."
 msgstr "Varoita löytyneistä PCH-tiedostoista, joita ei käytetä"
 
-#: c-family/c.opt:1366
+#: c-family/c.opt:1362
 #, fuzzy, no-c-format
 msgid "Warn if a caller of a function, marked with attribute warn_unused_result, does not use its return value."
 msgstr "Varoita, jos attribuutilla warn_unused_result merkitty funktion kutsuja ei käytä paluuarvoa"
 
-#: c-family/c.opt:1374 c-family/c.opt:1378
+#: c-family/c.opt:1370 c-family/c.opt:1374
 #, no-c-format
 msgid "Warn when a const variable is unused."
 msgstr "Varoita käyttämättömistä const-muuttujista."
 
-#: c-family/c.opt:1382
-#, no-c-format
-msgid "# effect."
-msgstr ""
-
-#: c-family/c.opt:1394
+#: c-family/c.opt:1386
 #, no-c-format
 msgid "Warn about using variadic macros."
 msgstr "Varoita variadisista makroista."
 
-#: c-family/c.opt:1398
+#: c-family/c.opt:1390
 #, no-c-format
 msgid "Warn about questionable usage of the macros used to retrieve variable arguments."
 msgstr ""
 
-#: c-family/c.opt:1402
+#: c-family/c.opt:1394
 #, no-c-format
 msgid "Warn about the most vexing parse syntactic ambiguity."
 msgstr ""
 
-#: c-family/c.opt:1406
+#: c-family/c.opt:1398
 #, fuzzy, no-c-format
 msgid "Warn if a variable length array is used."
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: c-family/c.opt:1410
+#: c-family/c.opt:1402
 #, fuzzy, no-c-format
 msgid "-Wvla-larger-than=<number>\tWarn on unbounded uses of variable-length arrays, and on bounded uses of variable-length arrays whose bound can be larger than <number> bytes."
 msgstr "muuttuja %qD esitelty %<inline%>:ksi"
 
-#: c-family/c.opt:1416
+#: c-family/c.opt:1408
 #, no-c-format
 msgid "Disable Wvla-larger-than= warning.  Equivalent to Wvla-larger-than=<SIZE_MAX> or larger."
 msgstr ""
 
-#: c-family/c.opt:1420
+#: c-family/c.opt:1412
 #, fuzzy, no-c-format
 msgid "Warn about mismatched declarations of VLA parameters."
 msgstr "Varoita saman objektin useista esittelyistä."
 
-#: c-family/c.opt:1424
+#: c-family/c.opt:1416
 #, fuzzy, no-c-format
 msgid "Warn about deprecated uses of volatile qualifier."
 msgstr "Varoita tyyppimuunnoksista, jotka hylkäävät määreet."
 
-#: c-family/c.opt:1428
+#: c-family/c.opt:1420
 #, fuzzy, no-c-format
 msgid "Warn when a register variable is declared volatile."
 msgstr "halutaan rekisterimuuttujan %qD osoite"
 
-#: c-family/c.opt:1432
+#: c-family/c.opt:1424
 #, no-c-format
 msgid "Warn on direct virtual inheritance."
 msgstr "Varoita suorasta virtuaalisesta perinnästä."
 
-#: c-family/c.opt:1436
+#: c-family/c.opt:1428
 #, no-c-format
 msgid "Warn if a virtual base has a non-trivial move assignment operator."
 msgstr ""
@@ -2582,894 +2577,899 @@ msgstr ""
 # tottakai valitsimen antaminen sinänsä saa sen epänollaksi, eikä tämä mitään
 # numeroarvoja parametrikseen ota. Ei muissakaan valitsimissa mistään epänollasta
 # puhuta, miksi tässä?
-#: c-family/c.opt:1440
+#: c-family/c.opt:1432
 #, no-c-format
 msgid "In C++, nonzero means warn about deprecated conversion from string literals to 'char *'.  In C, similar warning, except that the conversion is of course not deprecated by the ISO C standard."
 msgstr "C++:ssa varoitetaan vanhentuneesta merkkijonoliteraalien tyyppimuunnoksesta ”char *”:een. C:ssä annetaan vastaava varoitus, vaikkei muunnos ISO C -standardin mukaan tietenkään ole vanhentunut."
 
-#: c-family/c.opt:1444
+#: c-family/c.opt:1436
 #, no-c-format
 msgid "Warn when a literal '0' is used as null pointer."
 msgstr "Varoita kun ”0”-literaalia käytetään nollaosoittimena."
 
-#: c-family/c.opt:1448
+#: c-family/c.opt:1440
 #, no-c-format
 msgid "Warn about useless casts."
 msgstr "Varoita tarpeettomista tyyppimuunnoksista."
 
-#: c-family/c.opt:1452
+#: c-family/c.opt:1444
 #, 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:1456
+#: c-family/c.opt:1448
 #, fuzzy, no-c-format
 msgid "Warn when a declaration has duplicate const, volatile, restrict or _Atomic specifier."
 msgstr "Varoita kun esittely ei määrittele tyyppiä."
 
-#: c-family/c.opt:1460
+#: c-family/c.opt:1452
 #, fuzzy, no-c-format
 msgid "Warn when an argument passed to a restrict-qualified parameter aliases with another argument."
 msgstr "sijoitus hylkää kohdeosoitintyypin määreitä"
 
-#: c-family/c.opt:1465
+#: c-family/c.opt:1457
 #, no-c-format
 msgid "A synonym for -std=c89 (for C) or -std=c++98 (for C++)."
 msgstr "Sama kuin -std=c89 (C) tai -std=c++98 (C++)."
 
-#: c-family/c.opt:1473
+#: c-family/c.opt:1465
 #, no-c-format
 msgid "The version of the C++ ABI used for -Wabi warnings and link compatibility aliases."
 msgstr ""
 
-#: c-family/c.opt:1477
+#: c-family/c.opt:1469
 #, no-c-format
 msgid "Enforce class member access control semantics."
 msgstr ""
 
-#: c-family/c.opt:1481
+#: c-family/c.opt:1473
 #, no-c-format
 msgid "-fada-spec-parent=unit\tDump Ada specs as child units of given parent."
 msgstr ""
 
-#: c-family/c.opt:1485
+#: c-family/c.opt:1477
 #, no-c-format
 msgid "Support C++17 allocation of over-aligned types."
 msgstr ""
 
-#: c-family/c.opt:1489
+#: c-family/c.opt:1481
 #, no-c-format
 msgid "-faligned-new=<N>\tUse C++17 over-aligned type allocation for alignments greater than N."
 msgstr ""
 
-#: c-family/c.opt:1496
+#: c-family/c.opt:1488
 #, fuzzy, no-c-format
 msgid "Allow variadic functions without named parameter."
 msgstr "kenttä %qE esitelty funktiona"
 
-#: c-family/c.opt:1500 c-family/c.opt:1768 c-family/c.opt:2155
-#: c-family/c.opt:2159 c-family/c.opt:2175
+#: c-family/c.opt:1492 c-family/c.opt:1764 c-family/c.opt:2151
+#: c-family/c.opt:2155 c-family/c.opt:2171
 #, no-c-format
 msgid "No longer supported."
 msgstr "Ei enää tuettu."
 
-#: c-family/c.opt:1504
+#: c-family/c.opt:1496
 #, no-c-format
 msgid "Recognize the \"asm\" keyword."
 msgstr "Tunnista ”asm”-avainsana."
 
-#: c-family/c.opt:1512
+#: c-family/c.opt:1504
 #, no-c-format
 msgid "Recognize built-in functions."
 msgstr "Tunnista sisäiset funktiot."
 
-#: c-family/c.opt:1519
+#: c-family/c.opt:1511
 #, no-c-format
 msgid "Where shorter, use canonicalized paths to systems headers."
 msgstr ""
 
-#: c-family/c.opt:1523
+#: c-family/c.opt:1515
 #, 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:1611
+#: c-family/c.opt:1603
 #, fuzzy, no-c-format
 msgid "Removed in GCC 8.  This switch has no effect."
 msgstr "Vanhentunut GCC 8:ssa. Tämä valitsin ei vaikuta mihinkään."
 
-#: c-family/c.opt:1615
+#: c-family/c.opt:1607
 #, fuzzy, no-c-format
 msgid "Enable support for C++ concepts."
 msgstr "Ota käyttöön lisämääreiden tuki"
 
-#: c-family/c.opt:1619
+#: c-family/c.opt:1611
 #, fuzzy, no-c-format
 msgid "Enable certain features present in the Concepts TS."
 msgstr "Varoita ominaisuuksista, joita ei ole perinteisessä C:ssä."
 
-#: c-family/c.opt:1623
+#: c-family/c.opt:1615
 #, no-c-format
 msgid "Specify maximum error replay depth during recursive diagnosis of a constraint satisfaction failure."
 msgstr ""
 
-#: c-family/c.opt:1627
+#: c-family/c.opt:1619
 #, fuzzy, no-c-format
 msgid "Allow the arguments of the '?' operator to have different types."
 msgstr "Salli ”?”-operaattorin argumenttien olla eri tyyppiä"
 
-#: c-family/c.opt:1635
+#: c-family/c.opt:1627
 #, fuzzy, no-c-format
 msgid "-fconst-string-class=<name>\tUse class <name> for constant strings."
 msgstr "siirros vakiomerkkijonon rajojen ulkopuolelle"
 
-#: c-family/c.opt:1639
+#: c-family/c.opt:1631
 #, no-c-format
 msgid "-fconstexpr-depth=<number>\tSpecify maximum constexpr recursion depth."
 msgstr ""
 
-#: c-family/c.opt:1643
+#: c-family/c.opt:1635
 #, no-c-format
 msgid "-fconstexpr-cache-depth=<number>\tSpecify maximum constexpr recursion cache depth."
 msgstr ""
 
-#: c-family/c.opt:1647
+#: c-family/c.opt:1639
 #, fuzzy, no-c-format
 msgid "Allow IEC559 floating point exceptions in constant expressions."
 msgstr "liukulukuvakio esikääntäjän lausekkeessa"
 
-#: c-family/c.opt:1651
+#: c-family/c.opt:1643
 #, no-c-format
 msgid "-fconstexpr-loop-limit=<number>\tSpecify maximum constexpr loop iteration count."
 msgstr ""
 
-#: c-family/c.opt:1655
+#: c-family/c.opt:1647
 #, no-c-format
 msgid "-fconstexpr-ops-limit=<number>\tSpecify maximum number of constexpr operations during a single constexpr evaluation."
 msgstr ""
 
-#: c-family/c.opt:1659
+#: c-family/c.opt:1651
 #, no-c-format
 msgid "Enable C++ coroutines (experimental)."
 msgstr ""
 
-#: c-family/c.opt:1663
+#: c-family/c.opt:1655
 #, fuzzy, no-c-format
 msgid "Emit debug annotations during preprocessing."
 msgstr "virheellinen esikääntäjän direktiivi #%s"
 
-#: c-family/c.opt:1671
+#: c-family/c.opt:1663
 #, fuzzy, no-c-format
 msgid "Factor complex constructors and destructors to favor space over speed."
 msgstr "Varoita kun kaikki muodostimet ja hajottimet ovat yksityisiä"
 
-#: c-family/c.opt:1679
+#: c-family/c.opt:1671
 #, no-c-format
 msgid "Print hierarchical comparisons when template types are mismatched."
 msgstr ""
 
-#: c-family/c.opt:1683
+#: c-family/c.opt:1675
 #, fuzzy, no-c-format
 msgid "Preprocess directives only."
 msgstr "Älä luo #line-direktiivejä"
 
-#: c-family/c.opt:1687
+#: c-family/c.opt:1679
 #, no-c-format
 msgid "Permit '$' as an identifier character."
 msgstr "Salli ”$” merkkinä tunnisteessa."
 
-#: c-family/c.opt:1691
+#: c-family/c.opt:1683
 #, 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:1695
+#: c-family/c.opt:1687
 #, fuzzy, no-c-format
 msgid "Write all declarations as Ada code transitively."
 msgstr "Varoita kun esittely ei määrittele tyyppiä"
 
-#: c-family/c.opt:1699
+#: c-family/c.opt:1691
 #, fuzzy, no-c-format
 msgid "Write all declarations as Ada code for the given file only."
 msgstr "Varoita kun esittely ei määrittele tyyppiä"
 
-#: c-family/c.opt:1706
+#: c-family/c.opt:1698
 #, fuzzy, no-c-format
 msgid "Do not elide common elements in template comparisons."
 msgstr "Älä hylkää kommentteja makroja lavennettaessa."
 
-#: c-family/c.opt:1710
+#: c-family/c.opt:1702
 #, fuzzy, no-c-format
 msgid "Generate code to check exception specifications."
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: c-family/c.opt:1717
+#: c-family/c.opt:1709
 #, no-c-format
 msgid "-fexec-charset=<cset>\tConvert all strings and character constants to character set <cset>."
 msgstr ""
 
-#: c-family/c.opt:1721
+#: c-family/c.opt:1713
 #, no-c-format
 msgid "Permit universal character names (\\u and \\U) in identifiers."
 msgstr ""
 
-#: c-family/c.opt:1725
+#: c-family/c.opt:1717
 #, no-c-format
 msgid "-finput-charset=<cset>\tSpecify the default character set for source files."
 msgstr ""
 
-#: c-family/c.opt:1729
+#: c-family/c.opt:1721
 #, no-c-format
 msgid "Support dynamic initialization of thread-local variables in a different translation unit."
 msgstr ""
 
-#: c-family/c.opt:1739
+#: c-family/c.opt:1728
+#, fuzzy, no-c-format
+msgid "Fold calls to simple inline functions."
+msgstr "lopetusalkio puuttuu funktiokutsusta"
+
+#: c-family/c.opt:1735
 #, no-c-format
 msgid "Do not assume that standard C libraries and \"main\" exist."
 msgstr ""
 
-#: c-family/c.opt:1743
+#: c-family/c.opt:1739
 #, no-c-format
 msgid "Recognize GNU-defined keywords."
 msgstr "Tunnista GNU-määritellyt avainsanat."
 
-#: c-family/c.opt:1747
+#: c-family/c.opt:1743
 #, no-c-format
 msgid "Generate code for GNU runtime environment."
 msgstr "Tuota koodi GNU-suoritusympäristölle."
 
-#: c-family/c.opt:1751
+#: c-family/c.opt:1747
 #, fuzzy, no-c-format
 msgid "Use traditional GNU semantics for inline functions."
 msgstr "perinteinen C ei hyväksy automaattista koostealustusta"
 
-#: c-family/c.opt:1764
+#: c-family/c.opt:1760
 #, no-c-format
 msgid "Assume normal C execution environment."
 msgstr "Oleta normaali C-suoritusympäristö."
 
-#: c-family/c.opt:1772
+#: c-family/c.opt:1768
 #, fuzzy, no-c-format
 msgid "Export functions even if they can be inlined."
 msgstr "Tuota koodia big-endian-tilassa"
 
-#: c-family/c.opt:1776
+#: c-family/c.opt:1772
 #, fuzzy, no-c-format
 msgid "Make inline functions constexpr by default."
 msgstr "Tee ”char”-tyypistä oletuksena etumerkitön"
 
-#: c-family/c.opt:1780
+#: c-family/c.opt:1776
 #, fuzzy, no-c-format
 msgid "Emit implicit instantiations of inline templates."
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: c-family/c.opt:1784
+#: c-family/c.opt:1780
 #, fuzzy, no-c-format
 msgid "Emit implicit instantiations of templates."
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: c-family/c.opt:1788
+#: c-family/c.opt:1784
 #, no-c-format
 msgid "Implement C++17 inheriting constructor semantics."
 msgstr ""
 
-#: c-family/c.opt:1795
+#: c-family/c.opt:1791
 #, no-c-format
 msgid "Don't emit dllexported inline functions unless needed."
 msgstr ""
 
-#: c-family/c.opt:1802
+#: c-family/c.opt:1798
 #, no-c-format
 msgid "Allow implicit conversions between vectors with differing numbers of subparts and/or differing element types."
 msgstr ""
 
-#: c-family/c.opt:1806
+#: c-family/c.opt:1802
 #, no-c-format
 msgid "Enable C++ modules-ts (experimental)."
 msgstr ""
 
-#: c-family/c.opt:1814
+#: c-family/c.opt:1810
 #, no-c-format
 msgid "Enable C++ header module (experimental)."
 msgstr ""
 
-#: c-family/c.opt:1821
+#: c-family/c.opt:1817
 #, no-c-format
 msgid "Member functions defined within their class are inline in module purview."
 msgstr ""
 
-#: c-family/c.opt:1825
+#: c-family/c.opt:1821
 #, no-c-format
 msgid "Only emit Compiled Module Interface."
 msgstr ""
 
-#: c-family/c.opt:1829
+#: c-family/c.opt:1825
 #, no-c-format
 msgid "Mapper for module to CMI files."
 msgstr ""
 
-#: c-family/c.opt:1833
+#: c-family/c.opt:1829
 #, fuzzy, no-c-format
 msgid "Enable lazy module importing."
 msgstr "Ota käyttöön funktioprofilointi."
 
-#: c-family/c.opt:1841
+#: c-family/c.opt:1837
 #, fuzzy, no-c-format
 msgid "Warn about macros that have conflicting header units definitions."
 msgstr "Varoita implisiittisistä funktioesittelyistä."
 
-#: c-family/c.opt:1845
+#: c-family/c.opt:1841
 #, no-c-format
 msgid "Note #include directives translated to import declarations."
 msgstr ""
 
-#: c-family/c.opt:1849
+#: c-family/c.opt:1845
 #, no-c-format
 msgid "Note #include directives not translated to import declarations, and not known to be textual."
 msgstr ""
 
-#: c-family/c.opt:1853
+#: c-family/c.opt:1849
 #, no-c-format
 msgid "Note a #include translation of a specific header."
 msgstr ""
 
-#: c-family/c.opt:1857
+#: c-family/c.opt:1853
 #, no-c-format
 msgid "Note Compiled Module Interface pathnames."
 msgstr ""
 
-#: c-family/c.opt:1861
+#: c-family/c.opt:1857
 #, no-c-format
 msgid "Note Compiled Module Interface pathname of a specific module or header-unit."
 msgstr ""
 
-#: c-family/c.opt:1865
+#: c-family/c.opt:1861
 #, no-c-format
 msgid "fmax-include-depth=<number> Set the maximum depth of the nested #include."
 msgstr ""
 
-#: c-family/c.opt:1869
+#: c-family/c.opt:1865
 #, fuzzy, no-c-format
 msgid "Don't warn about uses of Microsoft extensions."
 msgstr "Älä varoita Microsoft-laajennosten käytöstä"
 
-#: c-family/c.opt:1888
+#: c-family/c.opt:1884
 #, no-c-format
 msgid "Implement resolution of DR 150 for matching of template template arguments."
 msgstr ""
 
-#: c-family/c.opt:1892
+#: c-family/c.opt:1888
 #, no-c-format
 msgid "Generate code for NeXT (Apple Mac OS X) runtime environment."
 msgstr "Luo koodi NeXT (Apple Mac OS X) -suoritusympäristölle."
 
-#: c-family/c.opt:1896
+#: c-family/c.opt:1892
 #, no-c-format
 msgid "Assume that receivers of Objective-C messages may be nil."
 msgstr ""
 
-#: c-family/c.opt:1900
+#: c-family/c.opt:1896
 #, no-c-format
 msgid "Allow access to instance variables as if they were local declarations within instance method implementations."
 msgstr ""
 
-#: c-family/c.opt:1904
+#: c-family/c.opt:1900
 #, no-c-format
 msgid "-fvisibility=[private|protected|public|package]\tSet the default symbol visibility."
 msgstr ""
 
-#: c-family/c.opt:1929
+#: c-family/c.opt:1925
 #, no-c-format
 msgid "Treat a throw() exception specification as noexcept to improve code size."
 msgstr ""
 
-#: c-family/c.opt:1933
+#: c-family/c.opt:1929
 #, no-c-format
 msgid "Specify which ABI to use for Objective-C family code and meta-data generation."
 msgstr ""
 
-#: c-family/c.opt:1939
+#: c-family/c.opt:1935
 #, no-c-format
 msgid "Generate special Objective-C methods to initialize/destroy non-POD C++ ivars, if needed."
 msgstr ""
 
-#: c-family/c.opt:1943
+#: c-family/c.opt:1939
 #, no-c-format
 msgid "Allow fast jumps to the message dispatcher."
 msgstr ""
 
-#: c-family/c.opt:1949
+#: c-family/c.opt:1945
 #, fuzzy, no-c-format
 msgid "Enable Objective-C exception and synchronization syntax."
 msgstr "Käytä poikkeustenkäsittelyä"
 
-#: c-family/c.opt:1953
+#: c-family/c.opt:1949
 #, fuzzy, no-c-format
 msgid "Enable garbage collection (GC) in Objective-C/Objective-C++ programs."
 msgstr "Käytä roskienkeruuta (GC) Objective-C/Objective-C++-ohjelmissa"
 
-#: c-family/c.opt:1957
+#: c-family/c.opt:1953
 #, no-c-format
 msgid "Enable inline checks for nil receivers with the NeXT runtime and ABI version 2."
 msgstr ""
 
-#: c-family/c.opt:1962
+#: c-family/c.opt:1958
 #, fuzzy, no-c-format
 msgid "Enable Objective-C setjmp exception handling runtime."
 msgstr "Käytä poikkeustenkäsittelyä"
 
-#: c-family/c.opt:1966
+#: c-family/c.opt:1962
 #, fuzzy, no-c-format
 msgid "Conform to the Objective-C 1.0 language as implemented in GCC 4.0."
 msgstr "Noudata ISO 1990 C -standardia vuoden 1994 korjauksineen"
 
-#: c-family/c.opt:1970
+#: c-family/c.opt:1966
 #, no-c-format
 msgid "Enable OpenACC."
 msgstr "Käytä OpenACC:ta."
 
-#: c-family/c.opt:1974
+#: c-family/c.opt:1970
 #, no-c-format
 msgid "Specify default OpenACC compute dimensions."
 msgstr ""
 
-#: c-family/c.opt:1978
+#: c-family/c.opt:1974
 #, no-c-format
 msgid "Enable OpenMP (implies -frecursive in Fortran)."
 msgstr ""
 
-#: c-family/c.opt:1982
+#: c-family/c.opt:1978
 #, fuzzy, no-c-format
 msgid "Enable OpenMP's SIMD directives."
 msgstr "Luokittelematon lause IF-lauseessa kohdassa %C"
 
-#: c-family/c.opt:1986
+#: c-family/c.opt:1982
 #, no-c-format
 msgid "Recognize C++ keywords like \"compl\" and \"xor\"."
 msgstr "Tunnista C++:n avainsanat kuten ”compl” ja ”xor”."
 
-#: c-family/c.opt:1997
+#: c-family/c.opt:1993
 #, no-c-format
 msgid "Look for and use PCH files even when preprocessing."
 msgstr ""
 
-#: c-family/c.opt:2001
+#: c-family/c.opt:1997
 #, fuzzy, no-c-format
 msgid "Downgrade conformance errors to warnings."
 msgstr "Käsittele kaikki varoitukset virheinä"
 
-#: c-family/c.opt:2005
+#: c-family/c.opt:2001
 #, fuzzy, no-c-format
 msgid "Enable Plan 9 language extensions."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: c-family/c.opt:2009
+#: c-family/c.opt:2005
 #, no-c-format
 msgid "Treat the input file as already preprocessed."
 msgstr "Käsittele syötetiedosto jo esikäännettynä."
 
-#: c-family/c.opt:2017
+#: c-family/c.opt:2013
 #, 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:2021
+#: c-family/c.opt:2017
 #, no-c-format
 msgid "Do not pretty-print template specializations as the template signature followed by the arguments."
 msgstr ""
 
-#: c-family/c.opt:2025
+#: c-family/c.opt:2021
 #, no-c-format
 msgid "Treat known sprintf return values as constants."
 msgstr "Käsittele tunnettuja sprintf-paluuarvoja vakioina."
 
-#: c-family/c.opt:2029
+#: c-family/c.opt:2025
 #, 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:2033
+#: c-family/c.opt:2029
 #, no-c-format
 msgid "Removed in GCC 10.  This switch has no effect."
 msgstr "Poistettu GCC 10:ssä. Tämä valitsin ei vaikuta mihinkään."
 
-#: c-family/c.opt:2037
+#: c-family/c.opt:2033
 #, fuzzy, no-c-format
 msgid "Generate run time type descriptor information."
 msgstr "Tuota bittikäskyjä"
 
-#: c-family/c.opt:2041 ada/gcc-interface/lang.opt:81
+#: c-family/c.opt:2037 ada/gcc-interface/lang.opt:81
 #, no-c-format
 msgid "Use the narrowest integer type possible for enumeration types."
 msgstr "Käytä luetelluille tyypeille kapeinta mahdollista kokonaislukutyyppiä."
 
-#: c-family/c.opt:2045
+#: c-family/c.opt:2041
 #, no-c-format
 msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"."
 msgstr "Pakota ”wchar_t”:n taustatyypiksi ”unsigned short”."
 
-#: c-family/c.opt:2049
+#: c-family/c.opt:2045
 #, no-c-format
 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed."
 msgstr "Kun ”signed” tai ”unsigned” on antamatta, tee bittikentästä etumerkillinen."
 
-#: c-family/c.opt:2053 ada/gcc-interface/lang.opt:85
+#: c-family/c.opt:2049 ada/gcc-interface/lang.opt:85
 #, no-c-format
 msgid "Make \"char\" signed by default."
 msgstr "Tee ”char”-tyypistä oletuksena etumerkillinen."
 
-#: c-family/c.opt:2057
+#: c-family/c.opt:2053
 #, fuzzy, no-c-format
 msgid "Enable C++14 sized deallocation support."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: c-family/c.opt:2064
+#: c-family/c.opt:2060
 #, no-c-format
 msgid "-fsso-struct=[big-endian|little-endian|native]\tSet the default scalar storage order."
 msgstr ""
 
-#: c-family/c.opt:2080
+#: c-family/c.opt:2076
 #, no-c-format
 msgid "Display statistics accumulated during compilation."
 msgstr "Näytä kääntämisen aikana kertyneet tilastot."
 
-#: c-family/c.opt:2084
+#: c-family/c.opt:2080
 #, no-c-format
 msgid "Assume that values of enumeration type are always within the minimum range of that type."
 msgstr "Oleta, että luetellun tyypin arvot ovat aina kyseisen tyypin vähimmäisvälillä."
 
-#: c-family/c.opt:2091 c-family/c.opt:2096
+#: c-family/c.opt:2087 c-family/c.opt:2092
 #, no-c-format
 msgid "Follow the C++17 evaluation order requirements for assignment expressions, shift, member function calls, etc."
 msgstr ""
 
-#: c-family/c.opt:2113
+#: c-family/c.opt:2109
 #, fuzzy, no-c-format
 msgid "Set the maximum number of template instantiation notes for a single warning or error."
 msgstr "Kumoamistoimintojen enimmäismäärä"
 
-#: c-family/c.opt:2120
+#: c-family/c.opt:2116
 #, no-c-format
 msgid "-ftemplate-depth=<number>\tSpecify maximum template instantiation depth."
 msgstr ""
 
-#: c-family/c.opt:2127
+#: c-family/c.opt:2123
 #, fuzzy, no-c-format
 msgid "-fno-threadsafe-statics\tDo not generate thread-safe code for initializing local statics."
 msgstr "Älä luo säieturvallista koodia paikallisten staattisten muuttujien alustamiseksi"
 
-#: c-family/c.opt:2131
+#: c-family/c.opt:2127
 #, no-c-format
 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned."
 msgstr "Kun ”signed” tai ”unsigned” on antamatta, tee bittikentästä etumerkitön."
 
-#: c-family/c.opt:2135 ada/gcc-interface/lang.opt:89
+#: c-family/c.opt:2131 ada/gcc-interface/lang.opt:89
 #, fuzzy, no-c-format
 msgid "Make \"char\" unsigned by default."
 msgstr "Tee ”char”-tyypistä oletuksena etumerkitön"
 
-#: c-family/c.opt:2139
+#: c-family/c.opt:2135
 #, fuzzy, no-c-format
 msgid "Use __cxa_atexit to register destructors."
 msgstr "käytä aina numeroita käyttäjän/ryhmän nimissä"
 
-#: c-family/c.opt:2143
+#: c-family/c.opt:2139
 #, no-c-format
 msgid "Use __cxa_get_exception_ptr in exception handling."
 msgstr ""
 
-#: c-family/c.opt:2147
+#: c-family/c.opt:2143
 #, no-c-format
 msgid "Marks all inlined functions and methods as having hidden visibility."
 msgstr ""
 
-#: c-family/c.opt:2151
+#: c-family/c.opt:2147
 #, no-c-format
 msgid "Changes visibility to match Microsoft Visual Studio by default."
 msgstr ""
 
-#: c-family/c.opt:2163
+#: c-family/c.opt:2159
 #, no-c-format
 msgid "Emit common-like symbols as weak symbols."
 msgstr ""
 
-#: c-family/c.opt:2167
+#: c-family/c.opt:2163
 #, no-c-format
 msgid "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants to character set <cset>."
 msgstr ""
 
-#: c-family/c.opt:2171
+#: c-family/c.opt:2167
 #, no-c-format
 msgid "Generate a #line directive pointing at the current working directory."
 msgstr ""
 
-#: c-family/c.opt:2179
+#: c-family/c.opt:2175
 #, no-c-format
 msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode."
 msgstr ""
 
-#: c-family/c.opt:2183
+#: c-family/c.opt:2179
 #, fuzzy, no-c-format
 msgid "Dump declarations to a .decl file."
 msgstr "%qD:n esittely void-taulukkona"
 
-#: c-family/c.opt:2187
+#: c-family/c.opt:2183
 #, no-c-format
 msgid "-femit-struct-debug-baseonly\tAggressive reduced debug info for structs."
 msgstr ""
 
-#: c-family/c.opt:2191
+#: c-family/c.opt:2187
 #, no-c-format
 msgid "-femit-struct-debug-reduced\tConservative reduced debug info for structs."
 msgstr ""
 
-#: c-family/c.opt:2195
+#: c-family/c.opt:2191
 #, no-c-format
 msgid "-femit-struct-debug-detailed=<spec-list>\tDetailed reduced debug info for structs."
 msgstr ""
 
-#: c-family/c.opt:2199
+#: c-family/c.opt:2195
 #, 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:2204
+#: c-family/c.opt:2200
 #, fuzzy, no-c-format
 msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path."
 msgstr "-isystem <hakemisto>\tLisää <hakemisto> järjestelmän include-polun alkuun"
 
-#: c-family/c.opt:2208
+#: c-family/c.opt:2204
 #, fuzzy, no-c-format
 msgid "-imacros <file>\tAccept definition of macros in <file>."
 msgstr "  -o <tiedosto>            Ohjaa tuloste <tiedostoon>\n"
 
-#: c-family/c.opt:2212
+#: c-family/c.opt:2208
 #, fuzzy, no-c-format
 msgid "-imultilib <dir>\tSet <dir> to be the multilib include subdirectory."
 msgstr "-isysroot <hakemisto>\tAseta <hakemisto> järjestelmän juurihakemistoksi"
 
-#: c-family/c.opt:2216
+#: c-family/c.opt:2212
 #, no-c-format
 msgid "-include <file>\tInclude the contents of <file> before other files."
 msgstr ""
 
-#: c-family/c.opt:2220
+#: c-family/c.opt:2216
 #, fuzzy, no-c-format
 msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options."
 msgstr "Määrittele <polku> etuliitteeksi seuraaville kahdelle valitsimelle"
 
-#: c-family/c.opt:2224
+#: c-family/c.opt:2220
 #, fuzzy, no-c-format
 msgid "-isysroot <dir>\tSet <dir> to be the system root directory."
 msgstr "-isysroot <hakemisto>\tAseta <hakemisto> järjestelmän juurihakemistoksi"
 
-#: c-family/c.opt:2228
+#: c-family/c.opt:2224
 #, fuzzy, no-c-format
 msgid "-isystem <dir>\tAdd <dir> to the start of the system include path."
 msgstr "-isystem <hakemisto>\tLisää <hakemisto> järjestelmän include-polun alkuun"
 
-#: c-family/c.opt:2232
+#: c-family/c.opt:2228
 #, fuzzy, no-c-format
 msgid "-iquote <dir>\tAdd <dir> to the end of the quote include path."
 msgstr "-isystem <hakemisto>\tLisää <hakemisto> järjestelmän include-polun alkuun"
 
-#: c-family/c.opt:2236
+#: c-family/c.opt:2232
 #, fuzzy, no-c-format
 msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path."
 msgstr "-isystem <hakemisto>\tLisää <hakemisto> järjestelmän include-polun alkuun"
 
-#: c-family/c.opt:2240
+#: c-family/c.opt:2236
 #, fuzzy, no-c-format
 msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path."
 msgstr "-isystem <hakemisto>\tLisää <hakemisto> järjestelmän include-polun alkuun"
 
-#: c-family/c.opt:2250
+#: c-family/c.opt:2246
 #, no-c-format
 msgid "Do not search standard system include directories (those specified with -isystem will still be used)."
 msgstr ""
 
-#: c-family/c.opt:2254
+#: c-family/c.opt:2250
 #, no-c-format
 msgid "Do not search standard system include directories for C++."
 msgstr ""
 
-#: c-family/c.opt:2266
+#: c-family/c.opt:2262
 #, fuzzy, no-c-format
 msgid "Generate C header of platform-specific features."
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: c-family/c.opt:2270
+#: c-family/c.opt:2266
 #, no-c-format
 msgid "Remap file names when including files."
 msgstr ""
 
-#: c-family/c.opt:2274 c-family/c.opt:2278
+#: c-family/c.opt:2270 c-family/c.opt:2274
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum."
 msgstr "Noudata ISO 1998 C++ -standardia GNU-laajennoksineen"
 
-#: c-family/c.opt:2282
+#: c-family/c.opt:2278
 #, no-c-format
 msgid "Conform to the ISO 2011 C++ standard."
 msgstr "Noudata ISO 2011 C++ -standardia."
 
-#: c-family/c.opt:2286
+#: c-family/c.opt:2282
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=c++11."
 msgstr "Vanhentunut, ks. -std=c99"
 
-#: c-family/c.opt:2290
+#: c-family/c.opt:2286
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=c++14."
 msgstr "Vanhentunut, ks. -std=c99"
 
-#: c-family/c.opt:2294
+#: c-family/c.opt:2290
 #, no-c-format
 msgid "Conform to the ISO 2014 C++ standard."
 msgstr "Noudata ISO 2014 C++ -standardia."
 
-#: c-family/c.opt:2298
+#: c-family/c.opt:2294
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=c++17."
 msgstr "Vanhentunut, ks. -std=c99"
 
-#: c-family/c.opt:2302
+#: c-family/c.opt:2298
 #, no-c-format
 msgid "Conform to the ISO 2017 C++ standard."
 msgstr "Noudata ISO 2017 C++ -standardia."
 
-#: c-family/c.opt:2306 c-family/c.opt:2310
+#: c-family/c.opt:2302 c-family/c.opt:2306
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 2020 C++ standard (experimental and incomplete support)."
 msgstr "Noudata ISO 2014 C++ -standardia (kokeellinen ja epätäydellinen tuki)"
 
-#: c-family/c.opt:2314 c-family/c.opt:2318
+#: c-family/c.opt:2310 c-family/c.opt:2314
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 2023 C++ draft standard (experimental and incomplete support)."
 msgstr "Noudata ISO 2020(?) C++ -standardiluonnosta (kokeellinen ja epätäydellinen tuki)."
 
-#: c-family/c.opt:2322 c-family/c.opt:2460
+#: c-family/c.opt:2318 c-family/c.opt:2456
 #, no-c-format
 msgid "Conform to the ISO 2011 C standard."
 msgstr "Noudata ISO 2011 C -standardia."
 
-#: c-family/c.opt:2326
+#: c-family/c.opt:2322
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=c11."
 msgstr "Vanhentunut, ks. -std=c99"
 
-#: c-family/c.opt:2330 c-family/c.opt:2334 c-family/c.opt:2464
-#: c-family/c.opt:2468
+#: c-family/c.opt:2326 c-family/c.opt:2330 c-family/c.opt:2460
+#: c-family/c.opt:2464
 #, no-c-format
 msgid "Conform to the ISO 2017 C standard (published in 2018)."
 msgstr "Noudata ISO 2017 C -standardia (julkaistu 2018)."
 
-#: c-family/c.opt:2338
+#: c-family/c.opt:2334
 #, no-c-format
 msgid "Conform to the ISO 202X C standard draft (experimental and incomplete support)."
 msgstr "Noudata ISO 202X C -standardiluonnosta (kokeellinen ja epätäydellinen tuki)."
 
-#: c-family/c.opt:2342 c-family/c.opt:2346 c-family/c.opt:2444
+#: c-family/c.opt:2338 c-family/c.opt:2342 c-family/c.opt:2440
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 1990 C standard."
 msgstr "Noudata ISO 1990 C -standardia"
 
-#: c-family/c.opt:2350 c-family/c.opt:2452
+#: c-family/c.opt:2346 c-family/c.opt:2448
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 1999 C standard."
 msgstr "Noudata ISO 1999 C -standardia"
 
-#: c-family/c.opt:2354
+#: c-family/c.opt:2350
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=c99."
 msgstr "Vanhentunut, ks. -std=c99"
 
-#: c-family/c.opt:2358 c-family/c.opt:2363
+#: c-family/c.opt:2354 c-family/c.opt:2359
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum with GNU extensions."
 msgstr "Noudata ISO 1998 C++ -standardia GNU-laajennoksineen"
 
-#: c-family/c.opt:2368
+#: c-family/c.opt:2364
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 2011 C++ standard with GNU extensions."
 msgstr "Noudata ISO 1990 C -standardia GNU-laajennoksineen"
 
-#: c-family/c.opt:2372
+#: c-family/c.opt:2368
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=gnu++11."
 msgstr "Vanhentunut, ks. -std=c99"
 
-#: c-family/c.opt:2376
+#: c-family/c.opt:2372
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=gnu++14."
 msgstr "Vanhentunut, ks. -std=c99"
 
-#: c-family/c.opt:2380
+#: c-family/c.opt:2376
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 2014 C++ standard with GNU extensions."
 msgstr "Noudata ISO 1990 C -standardia GNU-laajennoksineen"
 
-#: c-family/c.opt:2384
+#: c-family/c.opt:2380
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=gnu++17."
 msgstr "Vanhentunut, ks. -std=c99"
 
-#: c-family/c.opt:2388
+#: c-family/c.opt:2384
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 2017 C++ standard with GNU extensions."
 msgstr "Noudata ISO 1990 C -standardia GNU-laajennoksineen"
 
-#: c-family/c.opt:2392 c-family/c.opt:2396
+#: c-family/c.opt:2388 c-family/c.opt:2392
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 2020 C++ standard with GNU extensions (experimental and incomplete support)."
 msgstr "Noudata ISO 1998 C++ -standardia GNU-laajennoksineen ja"
 
-#: c-family/c.opt:2400 c-family/c.opt:2404
+#: c-family/c.opt:2396 c-family/c.opt:2400
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 2023 C++ draft standard with GNU extensions (experimental and incomplete support)."
 msgstr "Noudata ISO 1998 C++ -standardia GNU-laajennoksineen ja"
 
-#: c-family/c.opt:2408
+#: c-family/c.opt:2404
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 2011 C standard with GNU extensions."
 msgstr "Noudata ISO 1990 C -standardia GNU-laajennoksineen"
 
-#: c-family/c.opt:2412
+#: c-family/c.opt:2408
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=gnu11."
 msgstr "Vanhentunut, ks. -std=c99"
 
-#: c-family/c.opt:2416 c-family/c.opt:2420
+#: c-family/c.opt:2412 c-family/c.opt:2416
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 2017 C standard (published in 2018) with GNU extensions."
 msgstr "Noudata ISO 1990 C -standardia GNU-laajennoksineen"
 
-#: c-family/c.opt:2424
+#: c-family/c.opt:2420
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 202X C standard draft with GNU extensions (experimental and incomplete support)."
 msgstr "Noudata ISO 1998 C++ -standardia GNU-laajennoksineen ja"
 
-#: c-family/c.opt:2428 c-family/c.opt:2432
+#: c-family/c.opt:2424 c-family/c.opt:2428
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 1990 C standard with GNU extensions."
 msgstr "Noudata ISO 1990 C -standardia GNU-laajennoksineen"
 
-#: c-family/c.opt:2436
+#: c-family/c.opt:2432
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 1999 C standard with GNU extensions."
 msgstr "Noudata ISO 1999 C -standardia GNU-laajennoksineen"
 
-#: c-family/c.opt:2440
+#: c-family/c.opt:2436
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=gnu99."
 msgstr "Vanhentunut, ks. -std=c99"
 
-#: c-family/c.opt:2448
+#: c-family/c.opt:2444
 #, fuzzy, no-c-format
 msgid "Conform to the ISO 1990 C standard as amended in 1994."
 msgstr "Noudata ISO 1990 C -standardia vuoden 1994 korjauksineen"
 
-#: c-family/c.opt:2456
+#: c-family/c.opt:2452
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=iso9899:1999."
 msgstr "Vanhentunut, ks. -std=c99"
 
-#: c-family/c.opt:2472
+#: c-family/c.opt:2468
 #, no-c-format
 msgid "-stdlib=[libstdc++|libc++]\tThe standard library to be used for C++ headers and runtime."
 msgstr ""
 
-#: c-family/c.opt:2489
+#: c-family/c.opt:2485
 #, fuzzy, no-c-format
 msgid "Enable traditional preprocessing."
 msgstr "virheellinen esikääntäjän direktiivi #%s"
 
-#: c-family/c.opt:2493
+#: c-family/c.opt:2489
 #, fuzzy, no-c-format
 msgid "-trigraphs\tSupport ISO C trigraphs."
 msgstr "kolmoismerkki ??%c ohitettiin, ota käyttöön valitsimella -trigraphs"
 
-#: c-family/c.opt:2497
+#: c-family/c.opt:2493
 #, no-c-format
 msgid "Do not predefine system-specific and GCC-specific macros."
 msgstr ""
@@ -3621,7 +3621,7 @@ msgstr ""
 
 #: d/lang.opt:280
 #, fuzzy, no-c-format
-msgid "-fdump-cxx-spec=<filename>\tWrite all declarations as C++ code to <file>."
+msgid "-fdump-cxx-spec=<filename>\tWrite all declarations as C++ code to <filename>."
 msgstr "  -o <tiedosto>            Ohjaa tuloste <tiedostoon>\n"
 
 #: d/lang.opt:284
@@ -3711,7 +3711,7 @@ msgstr ""
 
 #: d/lang.opt:373
 #, no-c-format
-msgid "When a symbol is resolved, check alias this scope before going to upper scopes."
+msgid "When a symbol is resolved, check `alias this' scope before going to upper scopes."
 msgstr ""
 
 #: d/lang.opt:377
@@ -4201,6 +4201,11 @@ msgstr ""
 msgid "Dump the analyzer supergraph to a SRCFILE.supergraph.dot file."
 msgstr ""
 
+#: analyzer/analyzer.opt:255
+#, no-c-format
+msgid "Emit custom warnings with internal details intended for analyzer developers."
+msgstr ""
+
 #: config/vms/vms.opt:27
 #, no-c-format
 msgid "Malloc data into P2 space."
@@ -5186,11 +5191,12 @@ msgid "Convert BASE + LARGE_OFFSET addresses to NEW_BASE + SMALL_OFFSET to allow
 msgstr ""
 
 #: config/riscv/riscv.opt:110 config/aarch64/aarch64.opt:92
+#: config/loongarch/loongarch.opt:186
 #, fuzzy, no-c-format
 msgid "Specify the code model."
 msgstr "Malli:"
 
-#: config/riscv/riscv.opt:114
+#: config/riscv/riscv.opt:114 config/loongarch/loongarch.opt:158
 #, fuzzy, no-c-format
 msgid "Do not generate unaligned memory accesses."
 msgstr "Älä luo #line-direktiivejä"
@@ -5229,25 +5235,25 @@ msgstr "epäkelpo osoitintila %qs"
 
 #: config/riscv/riscv.opt:171 config/aarch64/aarch64.opt:235
 #: config/i386/i386.opt:1007 config/arm/arm.opt:327
-#: config/rs6000/rs6000.opt:578
+#: config/rs6000/rs6000.opt:554
 #, fuzzy, no-c-format
 msgid "Use given stack-protector guard."
 msgstr "Kelvolliset argumentit ovat:\n"
 
 #: config/riscv/riscv.opt:175 config/aarch64/aarch64.opt:239
-#: config/arm/arm.opt:331 config/rs6000/rs6000.opt:582
+#: config/arm/arm.opt:331 config/rs6000/rs6000.opt:558
 #, fuzzy, no-c-format
 msgid "Valid arguments to -mstack-protector-guard=:"
 msgstr "Kelvolliset argumentit ovat:\n"
 
 #: config/riscv/riscv.opt:185 config/i386/i386.opt:1021
-#: config/rs6000/rs6000.opt:592
+#: config/rs6000/rs6000.opt:568
 #, fuzzy, no-c-format
 msgid "Use the given base register for addressing the stack-protector guard."
 msgstr "”%s” ei ole kelvollinen esikääntäjän valitsin"
 
 #: config/riscv/riscv.opt:192 config/i386/i386.opt:1028
-#: config/rs6000/rs6000.opt:599
+#: config/rs6000/rs6000.opt:575
 #, fuzzy, no-c-format
 msgid "Use the given offset for addressing the stack-protector guard."
 msgstr "Kelvolliset argumentit ovat:\n"
@@ -5387,7 +5393,7 @@ msgstr ""
 msgid "The possible TLS dialects:"
 msgstr "I/O mahdollista"
 
-#: config/aarch64/aarch64.opt:55
+#: config/aarch64/aarch64.opt:55 config/loongarch/loongarch.opt:167
 #, no-c-format
 msgid "The code model option names for -mcmodel:"
 msgstr ""
@@ -5562,6 +5568,11 @@ msgstr ""
 msgid "Constant memset size in bytes from which to start using MOPS sequence."
 msgstr ""
 
+#: config/aarch64/aarch64.opt:298
+#, no-c-format
+msgid "Limit how much the autovectorizer may unroll a loop."
+msgstr ""
+
 #: config/linux.opt:24
 #, fuzzy, no-c-format
 msgid "Use Bionic C library."
@@ -7411,61 +7422,72 @@ msgstr "Käytä jaettuja kirjastoja."
 msgid "Support multi-threading."
 msgstr "Tue monisäikeisyyttä."
 
-#: config/nvptx/nvptx.opt:28 config/gcn/gcn.opt:54
+#: config/nvptx/nvptx-gen.opt:24
 #, fuzzy, no-c-format
-msgid "Generate code for a 64-bit ABI."
-msgstr "Tuota 64-bittistä koodia"
+msgid "Known PTX ISA target architectures (for use with the -misa= option):"
+msgstr "epäkelpo osoitintila %qs"
 
-#: config/nvptx/nvptx.opt:32
+#: config/nvptx/nvptx.opt:28
+#, fuzzy, no-c-format
+#| msgid "Does nothing. Preserved for backward compatibility."
+msgid "Ignored, but preserved for backward compatibility.  Only 64-bit ABI is supported."
+msgstr "Ei tee mitään. Säilytetty yhteensopivuuden vuoksi."
+
+#: config/nvptx/nvptx.opt:33
 #, no-c-format
 msgid "Link in code for a __main kernel."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:36
+#: config/nvptx/nvptx.opt:37
 #, fuzzy, no-c-format
 msgid "Optimize partition neutering."
 msgstr "mahdollisia ikisilmukoita ei voi optimoida"
 
-#: config/nvptx/nvptx.opt:40
+#: config/nvptx/nvptx.opt:41
 #, no-c-format
 msgid "Use custom stacks instead of local memory for automatic storage."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:44
+#: config/nvptx/nvptx.opt:45
 #, no-c-format
 msgid "Specify size of .local memory used for stack when the exact amount is not known."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:48
+#: config/nvptx/nvptx.opt:49
 #, no-c-format
 msgid "Generate code that can keep local state uniform across all lanes."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:52
+#: config/nvptx/nvptx.opt:53
 #, no-c-format
 msgid "Generate code for OpenMP offloading: enables -msoft-stack and -muniform-simt."
 msgstr ""
 
-#: config/nvptx/nvptx.opt:56
+#: config/nvptx/nvptx.opt:58
 #, fuzzy, no-c-format
-msgid "Known PTX ISA versions (for use with the -misa= option):"
-msgstr "epäkelpo osoitintila %qs"
+msgid "Specify the PTX ISA target architecture to use."
+msgstr "  -L, --logfile     anna lokitiedoston nimi\n"
 
-#: config/nvptx/nvptx.opt:76
-#, fuzzy, no-c-format
-msgid "Specify the version of the ptx ISA to use."
-msgstr "Käytössä olevan C++-ABIn versio."
+#: config/nvptx/nvptx.opt:62
+#, no-c-format
+msgid "Alias:"
+msgstr ""
 
-#: config/nvptx/nvptx.opt:80
+#: config/nvptx/nvptx.opt:117
 #, fuzzy, no-c-format
-msgid "Known PTX versions (for use with the -mptx= option):"
+msgid "Known PTX ISA versions (for use with the -mptx= option):"
 msgstr "epäkelpo osoitintila %qs"
 
-#: config/nvptx/nvptx.opt:93
+#: config/nvptx/nvptx.opt:136
 #, fuzzy, no-c-format
-msgid "Specify the version of the ptx version to use."
+msgid "Specify the PTX ISA version to use."
 msgstr "Käytössä olevan C++-ABIn versio."
 
+#: config/nvptx/nvptx.opt:140
+#, fuzzy, no-c-format
+msgid "Initialize ptx registers."
+msgstr "Käytä liukulukurekistereitä"
+
 #: config/vxworks.opt:36
 #, fuzzy, no-c-format
 msgid "Assume the VxWorks RTP environment."
@@ -8777,167 +8799,142 @@ msgstr "Ota käyttöön etumerkilliset laajennetut käskyt"
 msgid "Use vector and scalar instructions added in ISA 2.07."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/rs6000/rs6000.opt:491 config/rs6000/rs6000.opt:495
+#: config/rs6000/rs6000.opt:491
 #, no-c-format
 msgid "Fuse certain integer operations together for better performance on power10."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:499
-#, no-c-format
-msgid "Fuse pairs of scalar or vector logical operations together for better performance on power10."
-msgstr ""
-
-#: config/rs6000/rs6000.opt:503
-#, no-c-format
-msgid "Fuse scalar logical op with add/subf for better performance on power10."
-msgstr ""
-
-#: config/rs6000/rs6000.opt:507
-#, no-c-format
-msgid "Fuse scalar add/subf with logical op for better performance on power10."
-msgstr ""
-
-#: config/rs6000/rs6000.opt:511
-#, no-c-format
-msgid "Fuse dependent pairs of add or vaddudm instructions for better performance on power10."
-msgstr ""
-
-#: config/rs6000/rs6000.opt:515
-#, no-c-format
-msgid "Fuse certain store operations together for better performance on power10."
-msgstr ""
-
-#: config/rs6000/rs6000.opt:519
+#: config/rs6000/rs6000.opt:495
 #, fuzzy, no-c-format
 msgid "Use ISA 2.07 Category:Vector.AES and Category:Vector.SHA2 instructions."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/rs6000/rs6000.opt:526
+#: config/rs6000/rs6000.opt:502
 #, fuzzy, no-c-format
 msgid "Use ISA 2.07 transactional memory (HTM) instructions."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/rs6000/rs6000.opt:530
+#: config/rs6000/rs6000.opt:506
 #, fuzzy, no-c-format
 msgid "Generate the quad word memory instructions (lq/stq)."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/rs6000/rs6000.opt:534
+#: config/rs6000/rs6000.opt:510
 #, fuzzy, no-c-format
 msgid "Generate the quad word memory atomic instructions (lqarx/stqcx)."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/rs6000/rs6000.opt:538
+#: config/rs6000/rs6000.opt:514
 #, no-c-format
 msgid "Generate aggregate parameter passing code with at most 64-bit alignment."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:542
+#: config/rs6000/rs6000.opt:518
 #, no-c-format
 msgid "Analyze and remove doubleword swaps from VSX computations."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:550
+#: config/rs6000/rs6000.opt:526
 #, fuzzy, no-c-format
 msgid "Use certain scalar instructions added in ISA 3.0."
 msgstr "Salli MT-käskyjen käyttö"
 
-#: config/rs6000/rs6000.opt:554
+#: config/rs6000/rs6000.opt:530
 #, fuzzy, no-c-format
 msgid "Use vector instructions added in ISA 3.0."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/rs6000/rs6000.opt:558
+#: config/rs6000/rs6000.opt:534
 #, fuzzy, no-c-format
 msgid "Use the new min/max instructions defined in ISA 3.0."
 msgstr "Ota käyttöön min/max-käskyt"
 
-#: config/rs6000/rs6000.opt:562
+#: config/rs6000/rs6000.opt:538
 #, fuzzy, no-c-format
 msgid "Generate the integer modulo instructions."
 msgstr "Tuota mul64- ja mulu64-käskyjä"
 
-#: config/rs6000/rs6000.opt:566
+#: config/rs6000/rs6000.opt:542
 #, fuzzy, no-c-format
 msgid "Enable IEEE 128-bit floating point via the __float128 keyword."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: config/rs6000/rs6000.opt:570
+#: config/rs6000/rs6000.opt:546
 #, fuzzy, no-c-format
 msgid "Enable using IEEE 128-bit floating point instructions."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: config/rs6000/rs6000.opt:574
+#: config/rs6000/rs6000.opt:550
 #, no-c-format
 msgid "Enable default conversions between __float128 & long double."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:614
+#: config/rs6000/rs6000.opt:590
 #, fuzzy, no-c-format
 msgid "Generate (do not generate) prefixed memory instructions."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/rs6000/rs6000.opt:618
+#: config/rs6000/rs6000.opt:594
 #, fuzzy, no-c-format
 msgid "Generate (do not generate) pc-relative memory addressing."
 msgstr "Älä luo #line-direktiivejä"
 
-#: config/rs6000/rs6000.opt:622
+#: config/rs6000/rs6000.opt:598
 #, fuzzy, no-c-format
 msgid "Generate (do not generate) pc-relative memory optimizations for externals."
 msgstr "Älä luo #line-direktiivejä"
 
-#: config/rs6000/rs6000.opt:626
+#: config/rs6000/rs6000.opt:602
 #, fuzzy, no-c-format
 msgid "Generate (do not generate) MMA instructions."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/rs6000/rs6000.opt:633
+#: config/rs6000/rs6000.opt:609
 #, no-c-format
 msgid "Enable instructions that guard against return-oriented programming attacks."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:637
+#: config/rs6000/rs6000.opt:613
 #, fuzzy, no-c-format
 msgid "Generate code that will run in privileged state."
 msgstr "Tuota little-endian-koodia"
 
-#: config/rs6000/rs6000.opt:641
+#: config/rs6000/rs6000.opt:617
 #, fuzzy, no-c-format
 msgid "Generate (do not generate) code that uses the XXSPLTIW instruction."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/rs6000/rs6000.opt:645
+#: config/rs6000/rs6000.opt:621
 #, fuzzy, no-c-format
 msgid "Generate (do not generate) code that uses the XXSPLTIDP instruction."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/rs6000/rs6000.opt:649
+#: config/rs6000/rs6000.opt:625
 #, fuzzy, no-c-format
 msgid "Generate (do not generate) code that uses the LXVKQ instruction."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/rs6000/rs6000.opt:653
+#: config/rs6000/rs6000.opt:629
 #, no-c-format
 msgid "When costing for loop vectorization, we probably need to penalize the loop body cost if the existing cost model may not adequately reflect delays from unavailable vector resources.  We collect the cost for vectorized statements and non-vectorized statements separately, check the proportion of vec_cost to total cost of vec_cost and non vec_cost, and penalize only if the proportion exceeds the threshold specified by this parameter.  The default value is 85."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:662
+#: config/rs6000/rs6000.opt:638
 #, no-c-format
 msgid "Like parameter rs6000-density-pct-threshold, we also check the total sum of vec_cost and non vec_cost, and penalize only if the sum exceeds the threshold specified by this parameter.  The default value is 70."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:668
+#: config/rs6000/rs6000.opt:644
 #, no-c-format
 msgid "When both heuristics with rs6000-density-pct-threshold and rs6000-density-size-threshold are satisfied, we decide to penalize the loop body cost by the value which is specified by this parameter.  The default value is 10."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:675
+#: config/rs6000/rs6000.opt:651
 #, no-c-format
 msgid "When costing for loop vectorization, we probably need to penalize the loop body cost by accounting for excess strided or elementwise loads.  We collect the numbers for general statements and load statements according to the information for statements to be vectorized, check the proportion of load statements, and penalize only if the proportion exceeds the threshold specified by this parameter.  The default value is 45."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:684
+#: config/rs6000/rs6000.opt:660
 #, no-c-format
 msgid "Like parameter rs6000-density-load-pct-threshold, we also check if the total number of load statements exceeds the threshold specified by this parameter, and penalize only if it's satisfied.  The default value is 20."
 msgstr ""
@@ -9214,6 +9211,91 @@ msgstr "Ota käyttöön etumerkilliset laajennetut käskyt"
 msgid "Enable user-defined instructions."
 msgstr "Ota käyttöön käyttäjän määrittelemät käskyt"
 
+#: config/loongarch/loongarch.opt:47
+#, no-c-format
+msgid "Basic ISAs of LoongArch:"
+msgstr ""
+
+#: config/loongarch/loongarch.opt:56
+#, no-c-format
+msgid "FPU types of LoongArch:"
+msgstr ""
+
+#: config/loongarch/loongarch.opt:69
+#, fuzzy, no-c-format
+msgid "-mfpu=FPU\tGenerate code for the given FPU."
+msgstr "Käytä AltiVec-käskyjä"
+
+#: config/loongarch/loongarch.opt:76 config/mips/mips.opt:377
+#, no-c-format
+msgid "Prevent the use of all hardware floating-point instructions."
+msgstr "Estä kaikkien laitteistoliukulukukäskyjen käyttö."
+
+#: config/loongarch/loongarch.opt:80 config/mips/mips.opt:369
+#, fuzzy, no-c-format
+msgid "Restrict the use of hardware floating-point instructions to 32-bit operations."
+msgstr "Rajoita laitteistöliukulukukäskyjen käyttö 32-bittisiin operaatioihin"
+
+#: config/loongarch/loongarch.opt:84 config/mips/mips.opt:116
+#, fuzzy, no-c-format
+msgid "Allow hardware floating-point instructions to cover both 32-bit and 64-bit operations."
+msgstr "Rajoita laitteistöliukulukukäskyjen käyttö 32-bittisiin operaatioihin"
+
+#: config/loongarch/loongarch.opt:90
+#, no-c-format
+msgid "LoongArch CPU types:"
+msgstr ""
+
+#: config/loongarch/loongarch.opt:103
+#, fuzzy, no-c-format
+msgid "-march=PROCESSOR\tGenerate code for the given PROCESSOR ISA."
+msgstr "Käytä AltiVec-käskyjä"
+
+#: config/loongarch/loongarch.opt:107
+#, fuzzy, no-c-format
+msgid "-mtune=PROCESSOR\tGenerate optimized code for PROCESSOR."
+msgstr "Tuota little-endian-koodia"
+
+#: config/loongarch/loongarch.opt:116
+#, no-c-format
+msgid "Base ABI types for LoongArch:"
+msgstr ""
+
+#: config/loongarch/loongarch.opt:129
+#, fuzzy, no-c-format
+msgid "-mabi=BASEABI\tGenerate code that conforms to the given BASEABI."
+msgstr "Tuota 68040-koodia"
+
+#: config/loongarch/loongarch.opt:138 config/mips/mips.opt:71
+#, no-c-format
+msgid "-mbranch-cost=COST\tSet the cost of branches to roughly COST instructions."
+msgstr ""
+
+#: config/loongarch/loongarch.opt:142 config/mips/mips.opt:83
+#, fuzzy, no-c-format
+msgid "Trap on integer divide by zero."
+msgstr "Kokonaisluvun jako nollalla"
+
+#: config/loongarch/loongarch.opt:146
+#, no-c-format
+msgid "Conditional moves for integral are enabled."
+msgstr ""
+
+#: config/loongarch/loongarch.opt:150
+#, no-c-format
+msgid "Conditional moves for float are enabled."
+msgstr ""
+
+#: config/loongarch/loongarch.opt:154
+#, no-c-format
+msgid "Prevent optimizing block moves, which is also the default behavior of -Os."
+msgstr ""
+
+#: config/loongarch/loongarch.opt:162
+#, no-c-format
+msgid "-mmax-inline-memcpy-size=SIZE\tSet the max size of memcpy to inline, default is 1024."
+msgstr ""
+
 #: config/or1k/elf.opt:28
 #, no-c-format
 msgid "Configure the newlib board specific runtime.  The default is or1ksim."
@@ -11379,6 +11461,11 @@ msgstr "  -L, --logfile     anna lokitiedoston nimi\n"
 msgid "Generate code for a 32-bit ABI."
 msgstr "Tuota 32-bittistä koodia"
 
+#: config/gcn/gcn.opt:54
+#, fuzzy, no-c-format
+msgid "Generate code for a 64-bit ABI."
+msgstr "Tuota 64-bittistä koodia"
+
 #: config/gcn/gcn.opt:58
 #, no-c-format
 msgid "Enable OpenMP GPU offloading."
@@ -11496,11 +11583,6 @@ msgstr "Käytä AltiVec-käskyjä"
 msgid "-march=ISA\tGenerate code for the given ISA."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/mips/mips.opt:71
-#, no-c-format
-msgid "-mbranch-cost=COST\tSet the cost of branches to roughly COST instructions."
-msgstr ""
-
 #: config/mips/mips.opt:75
 #, no-c-format
 msgid "Use Branch Likely instructions, overriding the architecture default."
@@ -11511,11 +11593,6 @@ msgstr ""
 msgid "Switch on/off MIPS16 ASE on alternating functions for compiler testing."
 msgstr ""
 
-#: config/mips/mips.opt:83
-#, fuzzy, no-c-format
-msgid "Trap on integer divide by zero."
-msgstr "Kokonaisluvun jako nollalla"
-
 #: config/mips/mips.opt:87
 #, no-c-format
 msgid "-mcode-readable=SETTING\tSpecify when instructions are allowed to access code."
@@ -11541,11 +11618,6 @@ msgstr "Estä kaikkien laitteistoliukulukukäskyjen käyttö"
 msgid "Allow the use of MDMX instructions."
 msgstr "Älä käytä MDMX-käskyjä"
 
-#: config/mips/mips.opt:116
-#, fuzzy, no-c-format
-msgid "Allow hardware floating-point instructions to cover both 32-bit and 64-bit operations."
-msgstr "Rajoita laitteistöliukulukukäskyjen käyttö 32-bittisiin operaatioihin"
-
 #: config/mips/mips.opt:120
 #, fuzzy, no-c-format
 msgid "Use MIPS-DSP instructions."
@@ -11816,21 +11888,11 @@ msgstr ""
 msgid "When generating -mabicalls code, make the code suitable for use in shared libraries."
 msgstr ""
 
-#: config/mips/mips.opt:369
-#, fuzzy, no-c-format
-msgid "Restrict the use of hardware floating-point instructions to 32-bit operations."
-msgstr "Rajoita laitteistöliukulukukäskyjen käyttö 32-bittisiin operaatioihin"
-
 #: config/mips/mips.opt:373
 #, no-c-format
 msgid "Use SmartMIPS instructions."
 msgstr "Käytä SmartMIPS-käskyjä."
 
-#: config/mips/mips.opt:377
-#, no-c-format
-msgid "Prevent the use of all hardware floating-point instructions."
-msgstr "Estä kaikkien laitteistoliukulukukäskyjen käyttö."
-
 #: config/mips/mips.opt:381
 #, no-c-format
 msgid "Optimize lui/addiu address loads."
@@ -12772,2318 +12834,2323 @@ msgstr "Varoita käyttämättömistä muuttujista"
 
 #: common.opt:806
 #, fuzzy, no-c-format
+msgid "Warn about cases where -ftrivial-auto-var-init cannot initialize an auto variable."
+msgstr "Varoita muuttujista, jotka alustetaan omalla arvollaan"
+
+#: common.opt:810
+#, fuzzy, no-c-format
 msgid "Warn if a comparison is always true or always false due to the limited range of the data type."
 msgstr "Varoita vertailusta, joka on aina tosi tai aina epätosi johtuen tietotyypin rajallisesta arvoalueesta"
 
-#: common.opt:810
+#: common.opt:814
 #, fuzzy, no-c-format
 msgid "Warn about uninitialized automatic variables."
 msgstr "Varoita muuttujista, jotka alustetaan omalla arvollaan"
 
-#: common.opt:814
+#: common.opt:818
 #, fuzzy, no-c-format
 msgid "Warn about maybe uninitialized automatic variables."
 msgstr "Varoita muuttujista, jotka alustetaan omalla arvollaan"
 
-#: common.opt:822
+#: common.opt:826
 #, fuzzy, no-c-format
 msgid "Enable all -Wunused- warnings."
 msgstr "Ota käyttöön kaikki -Wunused-varoitukset"
 
-#: common.opt:826
+#: common.opt:830
 #, fuzzy, no-c-format
 msgid "Warn when a function parameter is only set, otherwise unused."
 msgstr "Varoita käyttämättömistä funktion parametreista"
 
-#: common.opt:830
+#: common.opt:834
 #, no-c-format
 msgid "Warn when a variable is only set, otherwise unused."
 msgstr "Varoita vain asetetuista mutta muuten käyttämättömistä muuttujista."
 
-#: common.opt:834
+#: common.opt:838
 #, no-c-format
 msgid "Warn when a function is unused."
 msgstr "Varoita käyttämättömistä funktioista."
 
-#: common.opt:838
+#: common.opt:842
 #, fuzzy, no-c-format
 msgid "Warn when a label is unused."
 msgstr "Varoita kun nimiö on käyttämätön"
 
-#: common.opt:842
+#: common.opt:846
 #, fuzzy, no-c-format
 msgid "Warn when a function parameter is unused."
 msgstr "Varoita käyttämättömistä funktion parametreista"
 
-#: common.opt:846
+#: common.opt:850
 #, fuzzy, no-c-format
 msgid "Warn when an expression value is unused."
 msgstr "Varoita käyttämättömistä funktion parametreista"
 
-#: common.opt:850
+#: common.opt:854
 #, fuzzy, no-c-format
 msgid "Warn when a variable is unused."
 msgstr "Varoita käyttämättömistä muuttujista"
 
-#: common.opt:854
+#: common.opt:858
 #, fuzzy, no-c-format
 msgid "Warn in case profiles in -fprofile-use do not match."
 msgstr "Varoita annetuista include-hakemistoista, jotka eivät ole olemassa"
 
-#: common.opt:858
+#: common.opt:862
 #, no-c-format
 msgid "Warn in case a function ends earlier than it begins due to an invalid linenum macros."
 msgstr ""
 
-#: common.opt:862
+#: common.opt:866
 #, fuzzy, no-c-format
 msgid "Warn in case profiles in -fprofile-use do not exist."
 msgstr "Varoita annetuista include-hakemistoista, jotka eivät ole olemassa"
 
-#: common.opt:866
+#: common.opt:870
 #, fuzzy, no-c-format
 msgid "Warn when a vector operation is compiled outside the SIMD."
 msgstr "Varoita kun esittely ei määrittele tyyppiä"
 
-#: common.opt:870
+#: common.opt:874
 #, fuzzy, no-c-format
 msgid "Warn about unsupported features in ThreadSanitizer."
 msgstr "Varoita prototyypittömistä funktioesittelyistä."
 
-#: common.opt:886
+#: common.opt:890
 #, fuzzy, no-c-format
 msgid "-aux-info <file>\tEmit declaration information into <file>."
 msgstr "  -o <tiedosto>            Ohjaa tuloste <tiedostoon>\n"
 
-#: common.opt:899
+#: common.opt:903
 #, no-c-format
 msgid "-d<letters>\tEnable dumps from specific passes of the compiler."
 msgstr ""
 
-#: common.opt:903
+#: common.opt:907
 #, no-c-format
 msgid "-dumpbase <file>\tSet the file basename to be used for dumps."
 msgstr ""
 
-#: common.opt:907
+#: common.opt:911
 #, no-c-format
 msgid "-dumpbase-ext .<ext>    Drop a trailing .<ext> from the dump basename to name auxiliary output files."
 msgstr ""
 
-#: common.opt:911
+#: common.opt:915
 #, no-c-format
 msgid "-dumpdir <dir>\tSet the directory name to be used for dumps."
 msgstr ""
 
-#: common.opt:1009
+#: common.opt:1013
 #, no-c-format
 msgid "The version of the C++ ABI in use."
 msgstr "Käytössä olevan C++-ABIn versio."
 
-#: common.opt:1013
+#: common.opt:1017
 #, no-c-format
 msgid "Aggressively optimize loops using language constraints."
 msgstr ""
 
-#: common.opt:1017
+#: common.opt:1021
 #, no-c-format
 msgid "Align the start of functions."
 msgstr "Kohdista funktioiden alut."
 
-#: common.opt:1027
+#: common.opt:1031
 #, no-c-format
 msgid "Align labels which are only reached by jumping."
 msgstr ""
 
-#: common.opt:1034
+#: common.opt:1038
 #, no-c-format
 msgid "Align all labels."
 msgstr "Tasaa kaikki nimikkeet."
 
-#: common.opt:1041
+#: common.opt:1045
 #, no-c-format
 msgid "Align the start of loops."
 msgstr "Kohdista silmukoiden alut."
 
-#: common.opt:1048
+#: common.opt:1052
 #, no-c-format
 msgid "Allow the compiler to introduce new data races on stores."
 msgstr ""
 
-#: common.opt:1052
+#: common.opt:1056
 #, fuzzy, no-c-format
 msgid "Enable static analysis pass."
 msgstr "virheellinen esikääntäjän direktiivi #%s"
 
-#: common.opt:1072
+#: common.opt:1076
 #, fuzzy, no-c-format
 msgid "Select what to sanitize."
 msgstr "Mikä on Crowdin?"
 
-#: common.opt:1076
+#: common.opt:1080
 #, fuzzy, no-c-format
 msgid "Select type of coverage sanitization."
 msgstr "Mikä on Crowdin?"
 
-#: common.opt:1089
+#: common.opt:1093
 #, no-c-format
 msgid "-fasan-shadow-offset=<number>\tUse custom shadow memory offset."
 msgstr ""
 
-#: common.opt:1093
+#: common.opt:1097
 #, no-c-format
 msgid "-fsanitize-sections=<sec1,sec2,...>\tSanitize global variables in user-defined sections."
 msgstr ""
 
-#: common.opt:1098
+#: common.opt:1102
 #, no-c-format
 msgid "After diagnosing undefined behavior attempt to continue execution."
 msgstr ""
 
-#: common.opt:1102
+#: common.opt:1106
 #, fuzzy, no-c-format
 msgid "This switch is deprecated; use -fsanitize-recover= instead."
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: common.opt:1109
+#: common.opt:1113
 #, no-c-format
 msgid "Use trap instead of a library function for undefined behavior sanitization."
 msgstr ""
 
-#: common.opt:1113
+#: common.opt:1117
 #, fuzzy, no-c-format
 msgid "Generate unwind tables that are exact at each instruction boundary."
 msgstr "Käytä poikkeustenkäsittelyä"
 
-#: common.opt:1117
+#: common.opt:1121
 #, fuzzy, no-c-format
 msgid "Generate auto-inc/dec instructions."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: common.opt:1121
+#: common.opt:1125
 #, 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:1126
+#: common.opt:1130
 #, no-c-format
 msgid "Use sample profile information for call graph node weights. The profile file is specified in the argument."
 msgstr ""
 
-#: common.opt:1135
+#: common.opt:1139
 #, fuzzy, no-c-format
 msgid "Generate code to check bounds before indexing arrays."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: common.opt:1139
+#: common.opt:1143
 #, no-c-format
 msgid "Replace add, compare, branch with branch on count register."
 msgstr ""
 
-#: common.opt:1143
+#: common.opt:1147
 #, fuzzy, no-c-format
 msgid "Use profiling information for branch probabilities."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: common.opt:1159
+#: common.opt:1163
 #, fuzzy, no-c-format
 msgid "Output callgraph information on a per-file basis."
 msgstr "luo kutsukaavio"
 
-#: common.opt:1163
+#: common.opt:1167
 #, no-c-format
 msgid "Output callgraph information on a per-file basis with decorations."
 msgstr ""
 
-#: common.opt:1167
+#: common.opt:1171
 #, no-c-format
 msgid "-fcall-saved-<register>\tMark <register> as being preserved across functions."
 msgstr ""
 
-#: common.opt:1171
+#: common.opt:1175
 #, no-c-format
 msgid "-fcall-used-<register>\tMark <register> as being corrupted by function calls."
 msgstr ""
 
-#: common.opt:1178
+#: common.opt:1182
 #, no-c-format
 msgid "Save registers around function calls."
 msgstr ""
 
-#: common.opt:1182
+#: common.opt:1186
 #, no-c-format
 msgid "This switch is deprecated; do not use."
 msgstr "Tämä valitsin on vanhentunut; älä käytä."
 
-#: common.opt:1186
+#: common.opt:1190
 #, no-c-format
 msgid "Check the return value of new in C++."
 msgstr "Tarkista C++:n new’n paluuarvo."
 
-#: common.opt:1190 common.opt:1194
+#: common.opt:1194 common.opt:1198
 #, fuzzy, no-c-format
 msgid "Perform internal consistency checkings."
 msgstr "Sähkökatko"
 
-#: common.opt:1198
+#: common.opt:1202
 #, fuzzy, no-c-format
 msgid "Enable code hoisting."
 msgstr "Ota käyttöön funktioprofilointi."
 
-#: common.opt:1202
+#: common.opt:1206
 #, no-c-format
 msgid "Looks for opportunities to reduce stack adjustments and stack references."
 msgstr ""
 
-#: common.opt:1206
+#: common.opt:1210
 #, fuzzy, no-c-format
 msgid "Put uninitialized globals in the common section."
 msgstr "%qD:a käytetään alustamattomana tässä funktiossa"
 
-#: common.opt:1214
+#: common.opt:1218
 #, no-c-format
 msgid "-fcompare-debug[=<opts>]\tCompile with and without e.g. -gtoggle, and compare the final-insns dump."
 msgstr ""
 
-#: common.opt:1218
+#: common.opt:1222
 #, fuzzy, no-c-format
 msgid "Run only the second compilation of -fcompare-debug."
 msgstr "aseta vianjäljityksen tulostetiedoston nimi"
 
-#: common.opt:1222
+#: common.opt:1226
 #, fuzzy, no-c-format
 msgid "Perform comparison elimination after register allocation has finished."
 msgstr "Käytä rekistereitä argumenttien välittämiseen"
 
-#: common.opt:1226
+#: common.opt:1230
 #, no-c-format
 msgid "Do not perform optimizations increasing noticeably stack usage."
 msgstr ""
 
-#: common.opt:1230
+#: common.opt:1234
 #, fuzzy, no-c-format
 msgid "Perform a register copy-propagation optimization pass."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:1234
+#: common.opt:1238
 #, fuzzy, no-c-format
 msgid "Perform cross-jumping optimization."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:1238
+#: common.opt:1242
 #, no-c-format
 msgid "When running CSE, follow jumps to their targets."
 msgstr ""
 
-#: common.opt:1246
+#: common.opt:1250
 #, no-c-format
 msgid "Omit range reduction step when performing complex division."
 msgstr ""
 
-#: common.opt:1250
+#: common.opt:1254
 #, no-c-format
 msgid "Complex multiplication and division follow Fortran rules."
 msgstr ""
 
-#: common.opt:1254
+#: common.opt:1258
 #, fuzzy, no-c-format
 msgid "Place data items into their own section."
 msgstr "ensimmäinen käyttökerta kussakin funktiossa.)"
 
-#: common.opt:1258
+#: common.opt:1262
 #, no-c-format
 msgid "List all available debugging counters with their limits and counts."
 msgstr ""
 
-#: common.opt:1262
+#: common.opt:1266
 #, no-c-format
 msgid "-fdbg-cnt=<counter>[:<lower_limit1>-]<upper_limit1>[:<lower_limit2>-<upper_limit2>:...][,<counter>:...]\tSet the debug counter limit."
 msgstr ""
 
-#: common.opt:1266
+#: common.opt:1270
 #, no-c-format
 msgid "-fdebug-prefix-map=<old>=<new>\tMap one directory name to another in debug information."
 msgstr ""
 
-#: common.opt:1270
+#: common.opt:1274
 #, no-c-format
 msgid "-ffile-prefix-map=<old>=<new>\tMap one directory name to another in compilation result."
 msgstr ""
 
-#: common.opt:1274
+#: common.opt:1278
 #, no-c-format
 msgid "Output .debug_types section when using DWARF v4 debuginfo."
 msgstr ""
 
-#: common.opt:1280
+#: common.opt:1284
 #, no-c-format
 msgid "Defer popping functions args from stack until later."
 msgstr ""
 
-#: common.opt:1284
+#: common.opt:1288
 #, fuzzy, no-c-format
 msgid "Attempt to fill delay slots of branch instructions."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: common.opt:1288
+#: common.opt:1292
 #, no-c-format
 msgid "Delete dead instructions that may throw exceptions."
 msgstr ""
 
-#: common.opt:1292
+#: common.opt:1296
 #, no-c-format
 msgid "Delete useless null pointer checks."
 msgstr ""
 
-#: common.opt:1296
+#: common.opt:1300
 #, no-c-format
 msgid "Stream extra data to support more aggressive devirtualization in LTO local transformation mode."
 msgstr ""
 
-#: common.opt:1300
+#: common.opt:1304
 #, fuzzy, no-c-format
 msgid "Perform speculative devirtualization."
 msgstr "Suorita uusille äänitetyille tiedotteille:"
 
-#: common.opt:1304
+#: common.opt:1308
 #, no-c-format
 msgid "Try to convert virtual calls to direct ones."
 msgstr ""
 
-#: common.opt:1308
+#: common.opt:1312
 #, 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:1325
+#: common.opt:1329
 #, no-c-format
 msgid "Show the source line with a caret indicating the column."
 msgstr ""
 
-#: common.opt:1329
+#: common.opt:1333
 #, no-c-format
 msgid "Show labels annotating ranges of source code when showing source."
 msgstr ""
 
-#: common.opt:1333
+#: common.opt:1337
 #, no-c-format
 msgid "Show line numbers in the left margin when showing source."
 msgstr ""
 
-#: common.opt:1341
+#: common.opt:1345
 #, fuzzy, no-c-format
 msgid "-fdiagnostics-color=[never|always|auto]\tColorize diagnostics."
 msgstr "     --color[=<milloin>]  väritä tuloste (auto, always tai never)\n"
 
-#: common.opt:1361
+#: common.opt:1365
 #, fuzzy, no-c-format
 msgid "-fdiagnostics-urls=[never|always|auto]\tEmbed URLs in diagnostics."
 msgstr "     --color[=<milloin>]  väritä tuloste (auto, always tai never)\n"
 
-#: common.opt:1381
+#: common.opt:1385
 #, 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:1385
+#: common.opt:1389
 #, no-c-format
 msgid "-fdiagnostics-column-origin=<number>\tSet the number of the first column.  The default is 1-based as per GNU style, but some utilities may expect 0-based, for example."
 msgstr ""
 
-#: common.opt:1389
+#: common.opt:1393
 #, no-c-format
 msgid "-fdiagnostics-format=[text|json]\tSelect output format."
 msgstr ""
 
-#: common.opt:1393
+#: common.opt:1397
 #, no-c-format
 msgid "-fdiagnostics-escape-format=[unicode|bytes]\tSelect how to escape non-printable-ASCII bytes in the source for diagnostics that suggest it."
 msgstr ""
 
-#: common.opt:1428
+#: common.opt:1432
 #, no-c-format
 msgid "Print fix-it hints in machine-readable form."
 msgstr ""
 
-#: common.opt:1432
+#: common.opt:1436
 #, no-c-format
 msgid "Print fix-it hints to stderr in unified diff format."
 msgstr ""
 
-#: common.opt:1436
+#: common.opt:1440
 #, no-c-format
 msgid "Amend appropriate diagnostic messages with the command line option that controls them."
 msgstr ""
 
-#: common.opt:1440
+#: common.opt:1444
 #, no-c-format
 msgid "Print CWE identifiers for diagnostic messages, where available."
 msgstr ""
 
-#: common.opt:1444
+#: common.opt:1448
 #, no-c-format
 msgid "Specify how to print any control-flow path associated with a diagnostic."
 msgstr ""
 
-#: common.opt:1448
+#: common.opt:1452
 #, no-c-format
 msgid "Turn off any diagnostics features that complicate the output, such as line numbers, color, and warning URLs."
 msgstr ""
 
-#: common.opt:1452
+#: common.opt:1456
 #, no-c-format
 msgid "-ftabstop=<number>      Distance between tab stops for column reporting."
 msgstr ""
 
-#: common.opt:1468
+#: common.opt:1472
 #, no-c-format
 msgid "Show stack depths of events in paths."
 msgstr ""
 
-#: common.opt:1472
+#: common.opt:1476
 #, no-c-format
 msgid "Set minimum width of left margin of source code when showing source."
 msgstr ""
 
-#: common.opt:1476
+#: common.opt:1480
 #, no-c-format
 msgid "-fdisable-[tree|rtl|ipa]-<pass>=range1+range2\tDisable an optimization pass."
 msgstr ""
 
-#: common.opt:1480
+#: common.opt:1484
 #, no-c-format
 msgid "-fenable-[tree|rtl|ipa]-<pass>=range1+range2\tEnable an optimization pass."
 msgstr ""
 
-#: common.opt:1484
+#: common.opt:1488
 #, no-c-format
 msgid "-fdump-<type>\tDump various compiler internals to a file."
 msgstr ""
 
-#: common.opt:1491
+#: common.opt:1495
 #, no-c-format
 msgid "-fdump-final-insns=filename\tDump to filename the insns at the end of translation."
 msgstr ""
 
-#: common.opt:1495
+#: common.opt:1499
 #, fuzzy, no-c-format
 msgid "-fdump-go-spec=filename\tWrite all declarations to file as Go code."
 msgstr "  -o <tiedosto>            Ohjaa tuloste <tiedostoon>\n"
 
-#: common.opt:1499
+#: common.opt:1503
 #, no-c-format
 msgid "Suppress output of addresses in debugging dumps."
 msgstr ""
 
-#: common.opt:1503
+#: common.opt:1507
 #, no-c-format
 msgid "Collect and dump debug information into temporary file if ICE in C/C++ compiler occurred."
 msgstr ""
 
-#: common.opt:1508
+#: common.opt:1512
 #, no-c-format
 msgid "Dump detailed information on GCC's internal representation of source code locations."
 msgstr ""
 
-#: common.opt:1512
+#: common.opt:1516
 #, fuzzy, no-c-format
 msgid "Dump optimization passes."
 msgstr "%s: virheellinen ylikirjoituskertojen määrä"
 
-#: common.opt:1516
+#: common.opt:1520
 #, no-c-format
 msgid "Suppress output of instruction numbers, line number notes and addresses in debugging dumps."
 msgstr ""
 
-#: common.opt:1520
+#: common.opt:1524
 #, no-c-format
 msgid "Suppress output of previous and next insn numbers in debugging dumps."
 msgstr ""
 
-#: common.opt:1524
+#: common.opt:1528
 #, no-c-format
 msgid "Enable CFI tables via GAS assembler directives."
 msgstr "Ota käyttöön CFI-taulut GAS-assembler-direktiivien kautta."
 
-#: common.opt:1528
+#: common.opt:1532
 #, fuzzy, no-c-format
 msgid "Perform early inlining."
 msgstr "Suorita uusille äänitetyille tiedotteille:"
 
-#: common.opt:1536
+#: common.opt:1540
 #, fuzzy, no-c-format
 msgid "Perform interprocedural reduction of aggregates."
 msgstr "Sähkökatko"
 
-#: common.opt:1540
+#: common.opt:1544
 #, no-c-format
 msgid "Perform unused symbol elimination in debug info."
 msgstr ""
 
-#: common.opt:1544
+#: common.opt:1548
 #, no-c-format
 msgid "Perform unused type elimination in debug info."
 msgstr ""
 
-#: common.opt:1548
+#: common.opt:1552
 #, no-c-format
 msgid "Do not suppress C++ class debug information."
 msgstr ""
 
-#: common.opt:1552
+#: common.opt:1556
 #, no-c-format
 msgid "Enable exception handling."
 msgstr "Käytä poikkeustenkäsittelyä."
 
-#: common.opt:1556
+#: common.opt:1560
 #, no-c-format
 msgid "Perform a number of minor, expensive optimizations."
 msgstr "Suorita useita pieniä, kalliita optimointeja."
 
-#: common.opt:1560
+#: common.opt:1564
 #, no-c-format
 msgid "-fexcess-precision=[fast|standard|16]\tSpecify handling of excess floating-point precision."
 msgstr ""
 
-#: common.opt:1578
+#: common.opt:1582
 #, no-c-format
 msgid "-fpermitted-flt-eval-methods=[c11|ts-18661]\tSpecify which values of FLT_EVAL_METHOD are permitted."
 msgstr ""
 
-#: common.opt:1594
+#: common.opt:1598
 #, no-c-format
 msgid "Output lto objects containing both the intermediate language and binary output."
 msgstr ""
 
-#: common.opt:1598
+#: common.opt:1602
 #, no-c-format
 msgid "Assume no NaNs or infinities are generated."
 msgstr ""
 
-#: common.opt:1602
+#: common.opt:1606
 #, no-c-format
 msgid "Assume that loops with an exit will terminate and not loop indefinitely."
 msgstr ""
 
-#: common.opt:1606
+#: common.opt:1610
 #, no-c-format
 msgid "-ffixed-<register>\tMark <register> as being unavailable to the compiler."
 msgstr ""
 
-#: common.opt:1610
+#: common.opt:1614
 #, fuzzy, no-c-format
 msgid "Don't allocate floats and doubles in extended-precision registers."
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: common.opt:1618
+#: common.opt:1622
 #, fuzzy, no-c-format
 msgid "Perform a forward propagation pass on RTL."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:1622
+#: common.opt:1626
 #, no-c-format
 msgid "-ffp-contract=[off|on|fast]\tPerform floating-point expression contraction."
 msgstr ""
 
-#: common.opt:1639
+#: common.opt:1643
 #, no-c-format
 msgid "Allow built-in functions ceil, floor, round, trunc to raise \"inexact\" exceptions."
 msgstr ""
 
-#: common.opt:1646
+#: common.opt:1650
 #, no-c-format
 msgid "Allow function addresses to be held in registers."
 msgstr ""
 
-#: common.opt:1650
+#: common.opt:1654
 #, fuzzy, no-c-format
 msgid "Place each function into its own section."
 msgstr "ensimmäinen käyttökerta kussakin funktiossa.)"
 
-#: common.opt:1654
+#: common.opt:1658
 #, fuzzy, no-c-format
 msgid "Perform global common subexpression elimination."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:1658
+#: common.opt:1662
 #, fuzzy, no-c-format
 msgid "Perform enhanced load motion during global common subexpression elimination."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:1662
+#: common.opt:1666
 #, fuzzy, no-c-format
 msgid "Perform store motion after global common subexpression elimination."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:1666
+#: common.opt:1670
 #, fuzzy, no-c-format
 msgid "Perform redundant load after store elimination in global common subexpression elimination."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:1671
+#: common.opt:1675
 #, fuzzy, no-c-format
 msgid "Perform global common subexpression elimination after register allocation has finished."
 msgstr "Käytä rekistereitä argumenttien välittämiseen"
 
-#: common.opt:1688
+#: common.opt:1692
 #, 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:1693
+#: common.opt:1697
 #, fuzzy, no-c-format
 msgid "Enable in and out of Graphite representation."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: common.opt:1697
+#: common.opt:1701
 #, fuzzy, no-c-format
 msgid "Enable Graphite Identity transformation."
 msgstr "luo kutsukaavio"
 
-#: common.opt:1701
+#: common.opt:1705
 #, fuzzy, no-c-format
 msgid "Enable hoisting adjacent loads to encourage generating conditional move instructions."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:1710
+#: common.opt:1714
 #, 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:1715
+#: common.opt:1719
 #, no-c-format
 msgid "Mark all loops as parallel."
 msgstr "Merkitse kaikki silmukat rinnakkaisiksi."
 
-#: common.opt:1719 common.opt:1727 common.opt:2914
+#: common.opt:1723 common.opt:1731 common.opt:2918
 #, fuzzy, no-c-format
 msgid "Enable loop nest transforms.  Same as -floop-nest-optimize."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: common.opt:1723
+#: common.opt:1727
 #, fuzzy, no-c-format
 msgid "Enable loop interchange on trees."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: common.opt:1731
+#: common.opt:1735
 #, fuzzy, no-c-format
 msgid "Perform unroll-and-jam on loops."
 msgstr "continue-lause silmukan ulkopuolella"
 
-#: common.opt:1735
+#: common.opt:1739
 #, fuzzy, no-c-format
 msgid "Enable support for GNU transactional memory."
 msgstr "Ota käyttöön lisämääreiden tuki"
 
-#: common.opt:1739
+#: common.opt:1743
 #, fuzzy, no-c-format
 msgid "Use STB_GNU_UNIQUE if supported by the assembler."
 msgstr "muunnos merkistöstä ”%s” ei ole tuettu"
 
-#: common.opt:1747
+#: common.opt:1751
 #, fuzzy, no-c-format
 msgid "Enable the loop nest optimizer."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: common.opt:1751
+#: common.opt:1755
 #, no-c-format
 msgid "Force bitfield accesses to match their type width."
 msgstr ""
 
-#: common.opt:1755
+#: common.opt:1759
 #, no-c-format
 msgid "Merge adjacent stores."
 msgstr ""
 
-#: common.opt:1759
+#: common.opt:1763
 #, fuzzy, no-c-format
 msgid "Enable guessing of branch probabilities."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: common.opt:1763
+#: common.opt:1767
 #, no-c-format
 msgid "Harden conditionals not used in branches, checking reversed conditions."
 msgstr ""
 
-#: common.opt:1767
+#: common.opt:1771
 #, no-c-format
 msgid "Harden conditional branches by checking reversed conditions."
 msgstr ""
 
-#: common.opt:1775
+#: common.opt:1779
 #, fuzzy, no-c-format
 msgid "Process #ident directives."
 msgstr "Älä luo #line-direktiivejä"
 
-#: common.opt:1779
+#: common.opt:1783
 #, fuzzy, no-c-format
 msgid "Perform conversion of conditional jumps to branchless equivalents."
 msgstr "ehtolausekkeessa on tyyppiristiriita"
 
-#: common.opt:1783
+#: common.opt:1787
 #, fuzzy, no-c-format
 msgid "Perform conversion of conditional jumps to conditional execution."
 msgstr "ehtolausekkeessa on tyyppiristiriita"
 
-#: common.opt:1787
+#: common.opt:1791
 #, no-c-format
 msgid "-fstack-reuse=[all|named_vars|none]\tSet stack reuse level for local variables."
 msgstr ""
 
-#: common.opt:1803
+#: common.opt:1807
 #, fuzzy, no-c-format
 msgid "Convert conditional jumps in innermost loops to branchless equivalents."
 msgstr "ehtolausekkeessa on tyyppiristiriita"
 
-#: common.opt:1815
+#: common.opt:1819
 #, fuzzy, no-c-format
 msgid "Do not generate .size directives."
 msgstr "Älä luo #line-direktiivejä"
 
-#: common.opt:1819
+#: common.opt:1823
 #, fuzzy, no-c-format
 msgid "Perform indirect inlining."
 msgstr "Käytä epäsuoria kutsuja"
 
-#: common.opt:1825
+#: common.opt:1829
 #, no-c-format
 msgid "Enable inlining of function declared \"inline\", disabling disables all inlining."
 msgstr ""
 
-#: common.opt:1829
+#: common.opt:1833
 #, fuzzy, no-c-format
 msgid "Integrate functions into their callers when code size is known not to grow."
 msgstr "jäsenfunktio-osoitinta käytetty laskutoimituksessa"
 
-#: common.opt:1833
+#: common.opt:1837
 #, fuzzy, no-c-format
 msgid "Integrate functions not declared \"inline\" into their callers when profitable."
 msgstr "jäsenfunktio-osoitinta käytetty laskutoimituksessa"
 
-#: common.opt:1837
+#: common.opt:1841
 #, fuzzy, no-c-format
 msgid "Integrate functions only required by their single caller."
 msgstr "jäsenfunktio-osoitinta käytetty laskutoimituksessa"
 
-#: common.opt:1844
+#: common.opt:1848
 #, no-c-format
 msgid "-finline-limit=<number>\tLimit the size of inlined functions to <number>."
 msgstr ""
 
-#: common.opt:1848
+#: common.opt:1852
 #, no-c-format
 msgid "Inline __atomic operations when a lock free instruction sequence is available."
 msgstr ""
 
-#: common.opt:1855
+#: common.opt:1859
 #, no-c-format
 msgid "-fcf-protection=[full|branch|return|none|check]\tInstrument functions with checks to verify jump/call/return control-flow transfer instructions have valid targets."
 msgstr ""
 
-#: common.opt:1878
+#: common.opt:1882
 #, fuzzy, no-c-format
 msgid "Instrument function entry and exit with profiling calls."
 msgstr "funktiokutsun argumentti voi olla ehdokas muotoiluattribuutille"
 
-#: common.opt:1882
+#: common.opt:1886
 #, fuzzy, no-c-format
 msgid "-finstrument-functions-exclude-function-list=name,...\tDo not instrument listed functions."
 msgstr "funktiokutsun argumentti voi olla ehdokas muotoiluattribuutille"
 
-#: common.opt:1886
+#: common.opt:1890
 #, fuzzy, no-c-format
 msgid "-finstrument-functions-exclude-file-list=filename,...\tDo not instrument functions listed in files."
 msgstr "funktiokutsun argumentti voi olla ehdokas muotoiluattribuutille"
 
-#: common.opt:1890
+#: common.opt:1894
 #, fuzzy, no-c-format
 msgid "Perform interprocedural constant propagation."
 msgstr "Sähkökatko"
 
-#: common.opt:1894
+#: common.opt:1898
 #, fuzzy, no-c-format
 msgid "Perform cloning to make Interprocedural constant propagation stronger."
 msgstr "Sähkökatko"
 
-#: common.opt:1902
+#: common.opt:1906
 #, fuzzy, no-c-format
 msgid "Perform interprocedural bitwise constant propagation."
 msgstr "Sähkökatko"
 
-#: common.opt:1906
+#: common.opt:1910
 #, fuzzy, no-c-format
 msgid "Perform interprocedural modref analysis."
 msgstr "Sähkökatko"
 
-#: common.opt:1910
+#: common.opt:1914
 #, fuzzy, no-c-format
 msgid "Perform interprocedural profile propagation."
 msgstr "Sähkökatko"
 
-#: common.opt:1914
+#: common.opt:1918
 #, fuzzy, no-c-format
 msgid "Perform interprocedural points-to analysis."
 msgstr "Sähkökatko"
 
-#: common.opt:1918
+#: common.opt:1922
 #, fuzzy, no-c-format
 msgid "Discover pure and const functions."
 msgstr "epäkelpo tallennusluokka funktiolle %qs"
 
-#: common.opt:1922
+#: common.opt:1926
 #, fuzzy, no-c-format
 msgid "Perform Identical Code Folding for functions and read-only variables."
 msgstr "continue-lause silmukan ulkopuolella"
 
-#: common.opt:1926
+#: common.opt:1930
 #, fuzzy, no-c-format
 msgid "Perform Identical Code Folding for functions."
 msgstr "continue-lause silmukan ulkopuolella"
 
-#: common.opt:1930
+#: common.opt:1934
 #, fuzzy, no-c-format
 msgid "Perform Identical Code Folding for variables."
 msgstr "continue-lause silmukan ulkopuolella"
 
-#: common.opt:1934
+#: common.opt:1938
 #, no-c-format
 msgid "Discover read-only and non addressable static variables."
 msgstr ""
 
-#: common.opt:1938
+#: common.opt:1942
 #, no-c-format
 msgid "Discover read-only, write-only and non-addressable static variables."
 msgstr ""
 
-#: common.opt:1942
+#: common.opt:1946
 #, no-c-format
 msgid "Reduce stack alignment on call sites if possible."
 msgstr ""
 
-#: common.opt:1954
+#: common.opt:1958
 #, fuzzy, no-c-format
 msgid "Perform IPA Value Range Propagation."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:1958
+#: common.opt:1962
 #, no-c-format
 msgid "-fira-algorithm=[CB|priority]\tSet the used IRA algorithm."
 msgstr ""
 
-#: common.opt:1962
+#: common.opt:1966
 #, no-c-format
 msgid "Assume strict aliasing rules apply across (uninlined) function boundaries."
 msgstr ""
 
-#: common.opt:1975
+#: common.opt:1979
 #, no-c-format
 msgid "-fira-region=[one|all|mixed]\tSet regions for IRA."
 msgstr ""
 
-#: common.opt:1991
+#: common.opt:1995
 #, no-c-format
 msgid "Use IRA based register pressure calculation in RTL hoist optimizations."
 msgstr ""
 
-#: common.opt:1996
+#: common.opt:2000
 #, no-c-format
 msgid "Use IRA based register pressure calculation in RTL loop optimizations."
 msgstr ""
 
-#: common.opt:2001
+#: common.opt:2005
 #, no-c-format
 msgid "Share slots for saving different hard registers."
 msgstr ""
 
-#: common.opt:2005
+#: common.opt:2009
 #, no-c-format
 msgid "Share stack slots for spilled pseudo-registers."
 msgstr ""
 
-#: common.opt:2009
+#: common.opt:2013
 #, no-c-format
 msgid "-fira-verbose=<number>\tControl IRA's level of diagnostic messages."
 msgstr ""
 
-#: common.opt:2013
+#: common.opt:2017
 #, fuzzy, no-c-format
 msgid "Optimize induction variables on trees."
 msgstr "Tuota bittikäskyjä"
 
-#: common.opt:2017
+#: common.opt:2021
 #, fuzzy, no-c-format
 msgid "Use jump tables for sufficiently large switch statements."
 msgstr "nimike yhdyslauseen lopussa"
 
-#: common.opt:2021
+#: common.opt:2025
 #, fuzzy, no-c-format
 msgid "Use bit tests for sufficiently large switch statements."
 msgstr "nimike yhdyslauseen lopussa"
 
-#: common.opt:2025
+#: common.opt:2029
 #, fuzzy, no-c-format
 msgid "Generate code for functions even if they are fully inlined."
 msgstr "Tuota koodia big-endian-tilassa"
 
-#: common.opt:2029
+#: common.opt:2033
 #, fuzzy, no-c-format
 msgid "Generate code for static functions even if they are never called."
 msgstr "Tuota koodia big-endian-tilassa"
 
-#: common.opt:2033
+#: common.opt:2037
 #, fuzzy, no-c-format
 msgid "Emit static const variables even if they are not used."
 msgstr "Tuota koodia big-endian-tilassa"
 
-#: common.opt:2037
+#: common.opt:2041
 #, no-c-format
 msgid "Give external symbols a leading underscore."
 msgstr ""
 
-#: common.opt:2045
+#: common.opt:2049
 #, no-c-format
 msgid "Do CFG-sensitive rematerialization in LRA."
 msgstr ""
 
-#: common.opt:2049
+#: common.opt:2053
 #, fuzzy, no-c-format
 msgid "Enable link-time optimization."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:2053
+#: common.opt:2057
 #, no-c-format
 msgid "Link-time optimization with number of parallel jobs or jobserver."
 msgstr ""
 
-#: common.opt:2075
+#: common.opt:2079
 #, no-c-format
 msgid "Specify the algorithm to partition symbols and vars at linktime."
 msgstr ""
 
-#: common.opt:2080
+#: common.opt:2084
 #, no-c-format
 msgid "-flto-compression-level=<number>\tUse zlib/zstd compression level <number> for IL."
 msgstr ""
 
-#: common.opt:2088
+#: common.opt:2092
 #, fuzzy, no-c-format
 msgid "Report various link-time optimization statistics."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:2092
+#: common.opt:2096
 #, fuzzy, no-c-format
 msgid "Report various link-time optimization statistics for WPA only."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:2096
+#: common.opt:2100
 #, fuzzy, no-c-format
 msgid "Set errno after built-in math functions."
 msgstr "Tunnista sisäiset funktiot"
 
-#: common.opt:2100
+#: common.opt:2104
 #, no-c-format
 msgid "-fmax-errors=<number>\tMaximum number of errors to report."
 msgstr ""
 
-#: common.opt:2104
+#: common.opt:2108
 #, fuzzy, no-c-format
 msgid "Report on permanent memory allocation."
 msgstr "Muistinvarausvirhe"
 
-#: common.opt:2108
+#: common.opt:2112
 #, fuzzy, no-c-format
 msgid "Report on permanent memory allocation in WPA only."
 msgstr "Muistinvarausvirhe"
 
-#: common.opt:2115
+#: common.opt:2119
 #, no-c-format
 msgid "Attempt to merge identical constants and constant variables."
 msgstr ""
 
-#: common.opt:2119
+#: common.opt:2123
 #, no-c-format
 msgid "Attempt to merge identical constants across compilation units."
 msgstr ""
 
-#: common.opt:2123
+#: common.opt:2127
 #, no-c-format
 msgid "Attempt to merge identical debug strings across compilation units."
 msgstr ""
 
-#: common.opt:2127
+#: common.opt:2131
 #, no-c-format
 msgid "-fmessage-length=<number>\tLimit diagnostics to <number> characters per line.  0 suppresses line-wrapping."
 msgstr ""
 
-#: common.opt:2131
+#: common.opt:2135
 #, no-c-format
 msgid "Perform SMS based modulo scheduling before the first scheduling pass."
 msgstr ""
 
-#: common.opt:2135
+#: common.opt:2139
 #, no-c-format
 msgid "Perform SMS based modulo scheduling with register moves allowed."
 msgstr ""
 
-#: common.opt:2139
+#: common.opt:2143
 #, fuzzy, no-c-format
 msgid "Move loop invariant computations out of loops."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2143
+#: common.opt:2147
 #, fuzzy, no-c-format
 #| msgid "Align the start of loops."
 msgid "Move stores out of loops."
 msgstr "Kohdista silmukoiden alut."
 
-#: common.opt:2147
+#: common.opt:2151
 #, fuzzy, no-c-format
 msgid "Use the RTL dead code elimination pass."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: common.opt:2151
+#: common.opt:2155
 #, fuzzy, no-c-format
 msgid "Use the RTL dead store elimination pass."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: common.opt:2155
+#: common.opt:2159
 #, no-c-format
 msgid "Enable/Disable the traditional scheduling in loops that already passed modulo scheduling."
 msgstr ""
 
-#: common.opt:2159
+#: common.opt:2163
 #, no-c-format
 msgid "Support synchronous non-call exceptions."
 msgstr ""
 
-#: common.opt:2166
+#: common.opt:2170
 #, no-c-format
 msgid "-foffload-options=<targets>=<options>\tSpecify options for the offloading targets."
 msgstr ""
 
-#: common.opt:2170
+#: common.opt:2174
 #, no-c-format
 msgid "-foffload-abi=[lp64|ilp32]\tSet the ABI to use in an offload compiler."
 msgstr ""
 
-#: common.opt:2183
+#: common.opt:2187
 #, no-c-format
 msgid "When possible do not generate stack frames."
 msgstr ""
 
-#: common.opt:2187
+#: common.opt:2191
 #, fuzzy, no-c-format
 msgid "Enable all optimization info dumps on stderr."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: common.opt:2191
+#: common.opt:2195
 #, no-c-format
 msgid "-fopt-info[-<type>=filename]\tDump compiler optimization details."
 msgstr ""
 
-#: common.opt:2195
+#: common.opt:2199
 #, no-c-format
 msgid "Write a SRCFILE.opt-record.json file detailing what optimizations were performed."
 msgstr ""
 
-#: common.opt:2203
+#: common.opt:2207
 #, no-c-format
 msgid "Optimize sibling and tail recursive calls."
 msgstr ""
 
-#: common.opt:2207
+#: common.opt:2211
 #, fuzzy, no-c-format
 msgid "Perform partial inlining."
 msgstr "Onnistui osittain"
 
-#: common.opt:2211 common.opt:2215
+#: common.opt:2215 common.opt:2219
 #, no-c-format
 msgid "Report on memory allocation before interprocedural optimization."
 msgstr ""
 
-#: common.opt:2219
+#: common.opt:2223
 #, no-c-format
 msgid "Pack structure members together without holes."
 msgstr ""
 
-#: common.opt:2223
+#: common.opt:2227
 #, no-c-format
 msgid "-fpack-struct=<number>\tSet initial maximum structure member alignment."
 msgstr ""
 
-#: common.opt:2227
+#: common.opt:2231
 #, fuzzy, no-c-format
 msgid "Return small aggregates in memory, not registers."
 msgstr "Funktion ”%s” paluuarvoa kohdassa %L ei ole asetettu"
 
-#: common.opt:2231
+#: common.opt:2235
 #, fuzzy, no-c-format
 msgid "Perform loop peeling."
 msgstr "continue-lause silmukan ulkopuolella"
 
-#: common.opt:2235
+#: common.opt:2239
 #, fuzzy, no-c-format
 msgid "Enable machine specific peephole optimizations."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: common.opt:2239
+#: common.opt:2243
 #, no-c-format
 msgid "Enable an RTL peephole pass before sched2."
 msgstr ""
 
-#: common.opt:2243
+#: common.opt:2247
 #, fuzzy, no-c-format
 msgid "Generate position-independent code if possible (large mode)."
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: common.opt:2247
+#: common.opt:2251
 #, fuzzy, no-c-format
 msgid "Generate position-independent code for executables if possible (large mode)."
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: common.opt:2251
+#: common.opt:2255
 #, fuzzy, no-c-format
 msgid "Generate position-independent code if possible (small mode)."
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: common.opt:2255
+#: common.opt:2259
 #, fuzzy, no-c-format
 msgid "Generate position-independent code for executables if possible (small mode)."
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: common.opt:2259
+#: common.opt:2263
 #, no-c-format
 msgid "Use PLT for PIC calls (-fno-plt: load the address from GOT at call site)."
 msgstr ""
 
-#: common.opt:2263
+#: common.opt:2267
 #, no-c-format
 msgid "Specify a plugin to load."
 msgstr "Anna ladattava liitännäinen."
 
-#: common.opt:2267
+#: common.opt:2271
 #, no-c-format
 msgid "-fplugin-arg-<name>-<key>[=<value>]\tSpecify argument <key>=<value> for plugin <name>."
 msgstr ""
 
-#: common.opt:2271
+#: common.opt:2275
 #, fuzzy, no-c-format
 msgid "Run predictive commoning optimization."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:2275
+#: common.opt:2279
 #, fuzzy, no-c-format
 msgid "Generate prefetch instructions, if available, for arrays in loops."
 msgstr "Tuota bittikäskyjä"
 
-#: common.opt:2279
+#: common.opt:2283
 #, fuzzy, no-c-format
 msgid "Enable basic program profiling code."
 msgstr "Ota käyttöön funktioprofilointi"
 
-#: common.opt:2283
+#: common.opt:2287
 #, fuzzy, no-c-format
 msgid "Generate absolute source path names for gcov."
 msgstr "virheellinen versionumero ”%s”"
 
-#: common.opt:2287
+#: common.opt:2291
 #, fuzzy, no-c-format
 msgid "Insert arc-based program profiling code."
 msgstr "Ota käyttöön funktioprofilointi"
 
-#: common.opt:2291
+#: common.opt:2295
 #, no-c-format
 msgid "Set the top-level directory for storing the profile data. The default is 'pwd'."
 msgstr ""
 
-#: common.opt:2296
+#: common.opt:2300
 #, no-c-format
 msgid "Select the name for storing the profile note file."
 msgstr ""
 
-#: common.opt:2300
+#: common.opt:2304
 #, no-c-format
 msgid "Enable correction of flow inconsistent profile data input."
 msgstr ""
 
-#: common.opt:2304
+#: common.opt:2308
 #, no-c-format
 msgid "-fprofile-update=[single|atomic|prefer-atomic]\tSet the profile update method."
 msgstr ""
 
-#: common.opt:2308
+#: common.opt:2312
 #, no-c-format
 msgid "Instrument only functions from files whose name matches any of the regular expressions (separated by semi-colons)."
 msgstr ""
 
-#: common.opt:2312
+#: common.opt:2316
 #, no-c-format
 msgid "Instrument only functions from files whose name does not match any of the regular expressions (separated by semi-colons)."
 msgstr ""
 
-#: common.opt:2328
+#: common.opt:2332
 #, no-c-format
 msgid "-fprofile-reproducible=[serial|parallel-runs|multithreaded]\tControl level of reproducibility of profile gathered by -fprofile-generate."
 msgstr ""
 
-#: common.opt:2344
+#: common.opt:2348
 #, no-c-format
 msgid "Remove prefix from absolute path before mangling name for -fprofile-generate= and -fprofile-use=."
 msgstr ""
 
-#: common.opt:2348
+#: common.opt:2352
 #, no-c-format
 msgid "-fprofile-prefix-map=<old>=<new>\tMap one directory name to another in GCOV coverage result."
 msgstr ""
 
-#: common.opt:2352
+#: common.opt:2356
 #, no-c-format
 msgid "Enable common options for generating profile info for profile feedback directed optimizations."
 msgstr ""
 
-#: common.opt:2356
+#: common.opt:2360
 #, no-c-format
 msgid "Enable common options for generating profile info for profile feedback directed optimizations, and set -fprofile-dir=."
 msgstr ""
 
-#: common.opt:2360
+#: common.opt:2364
 #, no-c-format
 msgid "Register the profile information in the .gcov_info section instead of using a constructor/destructor."
 msgstr ""
 
-#: common.opt:2364
+#: common.opt:2368
 #, no-c-format
 msgid "Register the profile information in the specified section instead of using a constructor/destructor."
 msgstr ""
 
-#: common.opt:2368
+#: common.opt:2372
 #, no-c-format
 msgid "Do not assume that functions never executed during the train run are cold."
 msgstr ""
 
-#: common.opt:2372
+#: common.opt:2376
 #, no-c-format
 msgid "Enable common options for performing profile feedback directed optimizations."
 msgstr ""
 
-#: common.opt:2376
+#: common.opt:2380
 #, no-c-format
 msgid "Enable common options for performing profile feedback directed optimizations, and set -fprofile-dir=."
 msgstr ""
 
-#: common.opt:2380
+#: common.opt:2384
 #, fuzzy, no-c-format
 msgid "Insert code to profile values of expressions."
 msgstr "ehdotetaan sulkeita %<+%>:n ympärille %<<<%>:n sisällä"
 
-#: common.opt:2384
+#: common.opt:2388
 #, fuzzy, no-c-format
 msgid "Report on consistency of profile."
 msgstr "Profiilissa on päättämätön kommentti"
 
-#: common.opt:2388
+#: common.opt:2392
 #, no-c-format
 msgid "Enable function reordering that improves code placement."
 msgstr ""
 
-#: common.opt:2392
+#: common.opt:2396
 #, fuzzy, no-c-format
 msgid "Insert NOP instructions at each function entry."
 msgstr "keskeytysfunktiolla ei saa olla argumentteja"
 
-#: common.opt:2399
+#: common.opt:2403
 #, no-c-format
 msgid "-frandom-seed=<string>\tMake compile reproducible using <string>."
 msgstr ""
 
-#: common.opt:2409
+#: common.opt:2413
 #, no-c-format
 msgid "Record gcc command line switches in the object file."
 msgstr ""
 
-#: common.opt:2413
+#: common.opt:2417
 #, fuzzy, no-c-format
 msgid "Return small aggregates in registers."
 msgstr "Funktion ”%s” paluuarvoa kohdassa %L ei ole asetettu"
 
-#: common.opt:2421
+#: common.opt:2425
 #, 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:2432
+#: common.opt:2436
 #, no-c-format
 msgid "-flive-patching=[inline-only-static|inline-clone]\tControl IPA optimizations to provide a safe compilation for live-patching.  At the same time, provides multiple-level control on the enabled IPA optimizations."
 msgstr ""
 
-#: common.opt:2447
+#: common.opt:2451
 #, no-c-format
 msgid "Tell DCE to remove unused C++ allocations."
 msgstr ""
 
-#: common.opt:2451
+#: common.opt:2455
 #, fuzzy, no-c-format
 msgid "Relief of register pressure through live range shrinkage."
 msgstr "Ota käyttöön RX FPU-käskyjen käyttö."
 
-#: common.opt:2455
+#: common.opt:2459
 #, fuzzy, no-c-format
 msgid "Perform a register renaming optimization pass."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:2459
+#: common.opt:2463
 #, fuzzy, no-c-format
 msgid "Perform a target dependent instruction fusion optimization pass."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:2463
+#: common.opt:2467
 #, no-c-format
 msgid "Reorder basic blocks to improve code placement."
 msgstr ""
 
-#: common.opt:2467
+#: common.opt:2471
 #, no-c-format
 msgid "-freorder-blocks-algorithm=[simple|stc]\tSet the used basic block reordering algorithm."
 msgstr ""
 
-#: common.opt:2480
+#: common.opt:2484
 #, no-c-format
 msgid "Reorder basic blocks and partition into hot and cold sections."
 msgstr ""
 
-#: common.opt:2484
+#: common.opt:2488
 #, no-c-format
 msgid "Reorder functions to improve code placement."
 msgstr ""
 
-#: common.opt:2488
+#: common.opt:2492
 #, fuzzy, no-c-format
 msgid "Add a common subexpression elimination pass after loop optimizations."
 msgstr "Käytä rekistereitä argumenttien välittämiseen"
 
-#: common.opt:2496
+#: common.opt:2500
 #, no-c-format
 msgid "Disable optimizations that assume default FP rounding behavior."
 msgstr ""
 
-#: common.opt:2500
+#: common.opt:2504
 #, no-c-format
 msgid "Enable scheduling across basic blocks."
 msgstr ""
 
-#: common.opt:2504
+#: common.opt:2508
 #, fuzzy, no-c-format
 msgid "Enable register pressure sensitive insn scheduling."
 msgstr "Ota käyttöön RX FPU-käskyjen käyttö."
 
-#: common.opt:2508
+#: common.opt:2512
 #, fuzzy, no-c-format
 msgid "Allow speculative motion of non-loads."
 msgstr "HALLINTA"
 
-#: common.opt:2512
+#: common.opt:2516
 #, fuzzy, no-c-format
 msgid "Allow speculative motion of some loads."
 msgstr "HALLINTA"
 
-#: common.opt:2516
+#: common.opt:2520
 #, fuzzy, no-c-format
 msgid "Allow speculative motion of more loads."
 msgstr "HALLINTA"
 
-#: common.opt:2520
+#: common.opt:2524
 #, no-c-format
 msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler."
 msgstr ""
 
-#: common.opt:2524
+#: common.opt:2528
 #, no-c-format
 msgid "If scheduling post reload, do superblock scheduling."
 msgstr ""
 
-#: common.opt:2532
+#: common.opt:2536
 #, fuzzy, no-c-format
 msgid "Reschedule instructions before register allocation."
 msgstr "Käytä rekistereitä argumenttien välittämiseen"
 
-#: common.opt:2536
+#: common.opt:2540
 #, fuzzy, no-c-format
 msgid "Reschedule instructions after register allocation."
 msgstr "Käytä rekistereitä argumenttien välittämiseen"
 
-#: common.opt:2543
+#: common.opt:2547
 #, no-c-format
 msgid "Schedule instructions using selective scheduling algorithm."
 msgstr ""
 
-#: common.opt:2547
+#: common.opt:2551
 #, fuzzy, no-c-format
 msgid "Run selective scheduling after reload."
 msgstr "HALLINTA"
 
-#: common.opt:2551
+#: common.opt:2555
 #, no-c-format
 msgid "Run self-tests, using the given path to locate test files."
 msgstr ""
 
-#: common.opt:2555
+#: common.opt:2559
 #, no-c-format
 msgid "Perform software pipelining of inner loops during selective scheduling."
 msgstr ""
 
-#: common.opt:2559
+#: common.opt:2563
 #, no-c-format
 msgid "Perform software pipelining of outer loops during selective scheduling."
 msgstr ""
 
-#: common.opt:2563
+#: common.opt:2567
 #, no-c-format
 msgid "Reschedule pipelined regions without pipelining."
 msgstr ""
 
-#: common.opt:2567
+#: common.opt:2571
 #, no-c-format
 msgid "Allow interposing function (or variables) by ones with different semantics (or initializer) respectively by dynamic linker."
 msgstr ""
 
-#: common.opt:2573
+#: common.opt:2577
 #, no-c-format
 msgid "Allow premature scheduling of queued insns."
 msgstr ""
 
-#: common.opt:2577
+#: common.opt:2581
 #, no-c-format
 msgid "-fsched-stalled-insns=<number>\tSet number of queued insns that can be prematurely scheduled."
 msgstr ""
 
-#: common.opt:2585
+#: common.opt:2589
 #, no-c-format
 msgid "Set dependence distance checking in premature scheduling of queued insns."
 msgstr ""
 
-#: common.opt:2589
+#: common.opt:2593
 #, no-c-format
 msgid "-fsched-stalled-insns-dep=<number>\tSet dependence distance checking in premature scheduling of queued insns."
 msgstr ""
 
-#: common.opt:2593
+#: common.opt:2597
 #, fuzzy, no-c-format
 msgid "Enable the group heuristic in the scheduler."
 msgstr "Ota käyttöön RX FPU-käskyjen käyttö."
 
-#: common.opt:2597
+#: common.opt:2601
 #, fuzzy, no-c-format
 msgid "Enable the critical path heuristic in the scheduler."
 msgstr "Ota käyttöön RX FPU-käskyjen käyttö."
 
-#: common.opt:2601
+#: common.opt:2605
 #, fuzzy, no-c-format
 msgid "Enable the speculative instruction heuristic in the scheduler."
 msgstr "Ota käyttöön RX FPU-käskyjen käyttö."
 
-#: common.opt:2605
+#: common.opt:2609
 #, fuzzy, no-c-format
 msgid "Enable the rank heuristic in the scheduler."
 msgstr "Ota käyttöön RX FPU-käskyjen käyttö."
 
-#: common.opt:2609
+#: common.opt:2613
 #, fuzzy, no-c-format
 msgid "Enable the last instruction heuristic in the scheduler."
 msgstr "Ota käyttöön RX FPU-käskyjen käyttö."
 
-#: common.opt:2613
+#: common.opt:2617
 #, fuzzy, no-c-format
 msgid "Enable the dependent count heuristic in the scheduler."
 msgstr "Ota käyttöön RX FPU-käskyjen käyttö."
 
-#: common.opt:2617
+#: common.opt:2621
 #, no-c-format
 msgid "Access data in the same section from shared anchor points."
 msgstr ""
 
-#: common.opt:2629
+#: common.opt:2633
 #, no-c-format
 msgid "Turn on Redundant Extensions Elimination pass."
 msgstr ""
 
-#: common.opt:2633
+#: common.opt:2637
 #, no-c-format
 msgid "Show column numbers in diagnostics, when available.  Default on."
 msgstr ""
 
-#: common.opt:2637
+#: common.opt:2641
 #, 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:2642
+#: common.opt:2646
 #, fuzzy, no-c-format
 msgid "Shrink-wrap parts of the prologue and epilogue separately."
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: common.opt:2646
+#: common.opt:2650
 #, no-c-format
 msgid "Disable optimizations observable by IEEE signaling NaNs."
 msgstr ""
 
-#: common.opt:2650
+#: common.opt:2654
 #, no-c-format
 msgid "Disable floating point optimizations that ignore the IEEE signedness of zero."
 msgstr ""
 
-#: common.opt:2654
+#: common.opt:2658
 #, fuzzy, no-c-format
 msgid "Convert floating point constants to single precision constants."
 msgstr "ylivuoto implisiittisessä vakiomuunnoksessa"
 
-#: common.opt:2658
+#: common.opt:2662
 #, fuzzy, no-c-format
 msgid "Split lifetimes of induction variables when loops are unrolled."
 msgstr "Tuota bittikäskyjä"
 
-#: common.opt:2662
+#: common.opt:2666
 #, fuzzy, no-c-format
 msgid "Generate discontiguous stack frames."
 msgstr "Tuota little-endian-koodia"
 
-#: common.opt:2666
+#: common.opt:2670
 #, no-c-format
 msgid "Split wide types into independent registers."
 msgstr ""
 
-#: common.opt:2670
+#: common.opt:2674
 #, no-c-format
 msgid "Split wide types into independent registers earlier."
 msgstr ""
 
-#: common.opt:2674
+#: common.opt:2678
 #, fuzzy, no-c-format
 msgid "Enable backward propagation of use properties at the SSA level."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2678
+#: common.opt:2682
 #, no-c-format
 msgid "Optimize conditional patterns using SSA PHI nodes."
 msgstr ""
 
-#: common.opt:2682
+#: common.opt:2686
 #, no-c-format
 msgid "Optimize amount of stdarg registers saved to stack at start of function."
 msgstr ""
 
-#: common.opt:2686
+#: common.opt:2690
 #, fuzzy, no-c-format
 msgid "Apply variable expansion when loops are unrolled."
 msgstr "Tuota bittikäskyjä"
 
-#: common.opt:2690
+#: common.opt:2694
 #, no-c-format
 msgid "-fstack-check=[no|generic|specific]\tInsert stack checking code into the program."
 msgstr ""
 
-#: common.opt:2694
+#: common.opt:2698
 #, no-c-format
 msgid "Insert stack checking code into the program.  Same as -fstack-check=specific."
 msgstr ""
 
-#: common.opt:2698
+#: common.opt:2702
 #, 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:2706
+#: common.opt:2710
 #, no-c-format
 msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>."
 msgstr ""
 
-#: common.opt:2710
+#: common.opt:2714
 #, no-c-format
 msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>."
 msgstr ""
 
-#: common.opt:2714
+#: common.opt:2718
 #, fuzzy, no-c-format
 msgid "Use propolice as a stack protection method."
 msgstr "Ota käyttöön saturation-käskyt"
 
-#: common.opt:2718
+#: common.opt:2722
 #, fuzzy, no-c-format
 msgid "Use a stack protection method for every function."
 msgstr "Ota käyttöön saturation-käskyt"
 
-#: common.opt:2722
+#: common.opt:2726
 #, fuzzy, no-c-format
 msgid "Use a smart stack protection method for certain functions."
 msgstr "Ota käyttöön saturation-käskyt"
 
-#: common.opt:2726
+#: common.opt:2730
 #, fuzzy, no-c-format
 msgid "Use stack protection method only for functions with the stack_protect attribute."
 msgstr "epäkelpo osoitintila %qs"
 
-#: common.opt:2730
+#: common.opt:2734
 #, no-c-format
 msgid "Output stack usage information on a per-function basis."
 msgstr ""
 
-#: common.opt:2742
+#: common.opt:2746
 #, no-c-format
 msgid "Assume strict aliasing rules apply."
 msgstr ""
 
-#: common.opt:2746
+#: common.opt:2750
 #, fuzzy, no-c-format
 msgid "Treat signed overflow as undefined.  Negated as -fwrapv -fwrapv-pointer."
 msgstr "Käsittele puuttuvia otsikkotiedostoja luotavina tiedostoina"
 
-#: common.opt:2750
+#: common.opt:2754
 #, no-c-format
 msgid "Implement __atomic operations via libcalls to legacy __sync functions."
 msgstr ""
 
-#: common.opt:2754
+#: common.opt:2758
 #, no-c-format
 msgid "Check for syntax errors, then stop."
 msgstr "Tarkasta syntaksivirheet ja lopeta."
 
-#: common.opt:2758
+#: common.opt:2762
 #, no-c-format
 msgid "Create data files needed by \"gcov\"."
 msgstr ""
 
-#: common.opt:2762
+#: common.opt:2766
 #, fuzzy, no-c-format
 msgid "Perform jump threading optimizations."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:2766
+#: common.opt:2770
 #, no-c-format
 msgid "Report the time taken by each compiler pass."
 msgstr ""
 
-#: common.opt:2770
+#: common.opt:2774
 #, no-c-format
 msgid "Record times taken by sub-phases separately."
 msgstr ""
 
-#: common.opt:2774
+#: common.opt:2778
 #, 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:2793
+#: common.opt:2797
 #, no-c-format
 msgid "Reorder top level functions, variables, and asms."
 msgstr ""
 
-#: common.opt:2797
+#: common.opt:2801
 #, fuzzy, no-c-format
 msgid "Perform superblock formation via tail duplication."
 msgstr "Suorita uusille äänitetyille tiedotteille:"
 
-#: common.opt:2801
+#: common.opt:2805
 #, no-c-format
 msgid "For targets that normally need trampolines for nested functions, always generate them instead of using descriptors."
 msgstr ""
 
-#: common.opt:2809
+#: common.opt:2813
 #, fuzzy, no-c-format
 msgid "Assume floating-point operations can trap."
 msgstr "Käytä ohjelmistoliukulukuja"
 
-#: common.opt:2813
+#: common.opt:2817
 #, no-c-format
 msgid "Trap for signed overflow in addition, subtraction and multiplication."
 msgstr ""
 
-#: common.opt:2817
+#: common.opt:2821
 #, fuzzy, no-c-format
 msgid "Enable SSA-CCP optimization on trees."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2821
+#: common.opt:2825
 #, fuzzy, no-c-format
 msgid "Enable SSA-BIT-CCP optimization on trees."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2829
+#: common.opt:2833
 #, fuzzy, no-c-format
 msgid "Enable loop header copying on trees."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: common.opt:2837
+#: common.opt:2841
 #, fuzzy, no-c-format
 msgid "Enable SSA coalescing of user variables."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: common.opt:2845
+#: common.opt:2849
 #, fuzzy, no-c-format
 msgid "Enable copy propagation on trees."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2853
+#: common.opt:2857
 #, fuzzy, no-c-format
 msgid "Transform condition stores into unconditional ones."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2857
+#: common.opt:2861
 #, fuzzy, no-c-format
 msgid "Perform conversions of switch initializations."
 msgstr "enum-muunnos alustuksessa on virheellistä C++-kielessä"
 
-#: common.opt:2861
+#: common.opt:2865
 #, fuzzy, no-c-format
 msgid "Enable SSA dead code elimination optimization on trees."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2865
+#: common.opt:2869
 #, fuzzy, no-c-format
 msgid "Enable dominator optimizations."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:2869
+#: common.opt:2873
 #, fuzzy, no-c-format
 msgid "Enable tail merging on trees."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: common.opt:2873
+#: common.opt:2877
 #, fuzzy, no-c-format
 msgid "Enable dead store elimination."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: common.opt:2877
+#: common.opt:2881
 #, fuzzy, no-c-format
 msgid "Enable forward propagation on trees."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2881
+#: common.opt:2885
 #, fuzzy, no-c-format
 msgid "Enable Full Redundancy Elimination (FRE) on trees."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2885
+#: common.opt:2889
 #, fuzzy, no-c-format
 msgid "Enable string length optimizations on trees."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2889
+#: common.opt:2893
 #, no-c-format
 msgid "Detect paths that trigger erroneous or undefined behavior due to dereferencing a null pointer.  Isolate those paths from the main control flow and turn the statement with erroneous or undefined behavior into a trap."
 msgstr ""
 
-#: common.opt:2895
+#: common.opt:2899
 #, no-c-format
 msgid "Detect paths that trigger erroneous or undefined behavior due to a null value being used in a way forbidden by a returns_nonnull or nonnull attribute.  Isolate those paths from the main control flow and turn the statement with erroneous or undefined behavior into a trap."
 msgstr ""
 
-#: common.opt:2902
+#: common.opt:2906
 #, fuzzy, no-c-format
 msgid "Enable loop distribution on trees."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2906
+#: common.opt:2910
 #, fuzzy, no-c-format
 msgid "Enable loop distribution for patterns transformed into a library call."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2910
+#: common.opt:2914
 #, fuzzy, no-c-format
 msgid "Enable loop invariant motion on trees."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2918
+#: common.opt:2922
 #, fuzzy, no-c-format
 msgid "Create canonical induction variables in loops."
 msgstr "Tuota bittikäskyjä"
 
-#: common.opt:2922
+#: common.opt:2926
 #, fuzzy, no-c-format
 msgid "Enable loop optimizations on tree level."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2926
+#: common.opt:2930
 #, fuzzy, no-c-format
 msgid "-ftree-parallelize-loops=<number>\tEnable automatic parallelization of loops."
 msgstr "Käytä auto_maattisisennystä"
 
-#: common.opt:2930
+#: common.opt:2934
 #, fuzzy, no-c-format
 msgid "Enable hoisting loads from conditional pointers."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2934
+#: common.opt:2938
 #, fuzzy, no-c-format
 msgid "Enable SSA-PRE optimization on trees."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2938
+#: common.opt:2942
 #, no-c-format
 msgid "In SSA-PRE optimization on trees, enable partial-partial redundancy elimination."
 msgstr ""
 
-#: common.opt:2942
+#: common.opt:2946
 #, fuzzy, no-c-format
 msgid "Perform function-local points-to analysis on trees."
 msgstr "Sähkökatko"
 
-#: common.opt:2946
+#: common.opt:2950
 #, fuzzy, no-c-format
 msgid "Enable reassociation on tree level."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2954
+#: common.opt:2958
 #, fuzzy, no-c-format
 msgid "Enable SSA code sinking on trees."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: common.opt:2958
+#: common.opt:2962
 #, no-c-format
 msgid "Perform straight-line strength reduction."
 msgstr ""
 
-#: common.opt:2962
+#: common.opt:2966
 #, fuzzy, no-c-format
 msgid "Perform scalar replacement of aggregates."
 msgstr "Sähkökatko"
 
-#: common.opt:2966
+#: common.opt:2970
 #, no-c-format
 msgid "Replace temporary expressions in the SSA->normal pass."
 msgstr ""
 
-#: common.opt:2970
+#: common.opt:2974
 #, no-c-format
 msgid "Perform live range splitting during the SSA->normal pass."
 msgstr ""
 
-#: common.opt:2974
+#: common.opt:2978
 #, fuzzy, no-c-format
 msgid "Perform Value Range Propagation on trees."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:2978
+#: common.opt:2982
 #, no-c-format
 msgid "Split paths leading to loop backedges."
 msgstr ""
 
-#: common.opt:2982
+#: common.opt:2986
 #, no-c-format
 msgid "Assume common declarations may be overridden with ones with a larger trailing array."
 msgstr ""
 
-#: common.opt:2987
+#: common.opt:2991
 #, no-c-format
 msgid "Compile whole compilation unit at a time."
 msgstr ""
 
-#: common.opt:2991
+#: common.opt:2995
 #, fuzzy, no-c-format
 msgid "Perform loop unrolling when iteration count is known."
 msgstr "continue-lause silmukan ulkopuolella"
 
-#: common.opt:2995
+#: common.opt:2999
 #, fuzzy, no-c-format
 msgid "Perform loop unrolling for all loops."
 msgstr "continue-lause silmukan ulkopuolella"
 
-#: common.opt:3010
+#: common.opt:3014
 #, no-c-format
 msgid "Allow optimization for floating-point arithmetic which may change the result of the operation due to rounding."
 msgstr ""
 
-#: common.opt:3015
+#: common.opt:3019
 #, no-c-format
 msgid "Same as -fassociative-math for expressions which include division."
 msgstr ""
 
-#: common.opt:3023
+#: common.opt:3027
 #, no-c-format
 msgid "Allow math optimizations that may violate IEEE or ISO standards."
 msgstr ""
 
-#: common.opt:3027
+#: common.opt:3031
 #, fuzzy, no-c-format
 msgid "Perform loop unswitching."
 msgstr "continue-lause silmukan ulkopuolella"
 
-#: common.opt:3031
+#: common.opt:3035
 #, fuzzy, no-c-format
 msgid "Perform loop splitting."
 msgstr "continue-lause silmukan ulkopuolella"
 
-#: common.opt:3035
+#: common.opt:3039
 #, no-c-format
 msgid "Version loops based on whether indices have a stride of one."
 msgstr ""
 
-#: common.opt:3039
+#: common.opt:3043
 #, fuzzy, no-c-format
 msgid "Just generate unwind tables for exception handling."
 msgstr "Käytä poikkeustenkäsittelyä"
 
-#: common.opt:3043
+#: common.opt:3047
 #, fuzzy, no-c-format
 msgid "Use the bfd linker instead of the default linker."
 msgstr "Käytä PowerPC-64 -käskykantaa"
 
-#: common.opt:3047
+#: common.opt:3051
 #, fuzzy, no-c-format
 msgid "Use the gold linker instead of the default linker."
 msgstr "Käytä PowerPC-64 -käskykantaa"
 
-#: common.opt:3051
+#: common.opt:3055
 #, fuzzy, no-c-format
 msgid "Use the lld LLVM linker instead of the default linker."
 msgstr "Käytä PowerPC-64 -käskykantaa"
 
-#: common.opt:3055
+#: common.opt:3059
 #, fuzzy, no-c-format
 msgid "Use the Modern linker (MOLD) linker instead of the default linker."
 msgstr "Käytä PowerPC-64 -käskykantaa"
 
-#: common.opt:3065
+#: common.opt:3069
 #, fuzzy, no-c-format
 msgid "Perform variable tracking."
 msgstr "Suorita uusille äänitetyille tiedotteille:"
 
-#: common.opt:3072
+#: common.opt:3076
 #, fuzzy, no-c-format
 msgid "Perform variable tracking by annotating assignments."
 msgstr "Suorita uusille äänitetyille tiedotteille:"
 
-#: common.opt:3078
+#: common.opt:3082
 #, no-c-format
 msgid "Toggle -fvar-tracking-assignments."
 msgstr ""
 
-#: common.opt:3085
+#: common.opt:3089
 #, fuzzy, no-c-format
 msgid "Perform variable tracking and also tag variables that are uninitialized."
 msgstr "Suorita uusille äänitetyille tiedotteille:"
 
-#: common.opt:3090
+#: common.opt:3094
 #, fuzzy, no-c-format
 msgid "Enable vectorization on trees."
 msgstr "Ota käyttöön moniydintuki"
 
-#: common.opt:3098
+#: common.opt:3102
 #, fuzzy, no-c-format
 msgid "Enable loop vectorization on trees."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:3102
+#: common.opt:3106
 #, fuzzy, no-c-format
 msgid "Enable basic block vectorization (SLP) on trees."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:3106
+#: common.opt:3110
 #, fuzzy, no-c-format
 msgid "-fvect-cost-model=[unlimited|dynamic|cheap|very-cheap]\tSpecifies the cost model for vectorization."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: common.opt:3110
+#: common.opt:3114
 #, fuzzy, no-c-format
 msgid "-fsimd-cost-model=[unlimited|dynamic|cheap|very-cheap]\tSpecifies the vectorization cost model for code marked with a simd directive."
 msgstr "Käytä AltiVec-käskyjä"
 
-#: common.opt:3129
+#: common.opt:3133
 #, no-c-format
 msgid "Enables the dynamic vectorizer cost model.  Preserved for backward compatibility."
 msgstr ""
 
-#: common.opt:3137
+#: common.opt:3141
 #, fuzzy, no-c-format
 msgid "Enable copy propagation of scalar-evolution information."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: common.opt:3141
+#: common.opt:3145
 #, no-c-format
 msgid "-ftrivial-auto-var-init=[uninitialized|pattern|zero]\tAdd initializations to automatic variables."
 msgstr ""
 
-#: common.opt:3163
+#: common.opt:3167
 #, no-c-format
 msgid "Add extra commentary to assembler output."
 msgstr ""
 
-#: common.opt:3167
+#: common.opt:3171
 #, no-c-format
 msgid "-fvisibility=[default|internal|hidden|protected]\tSet the default symbol visibility."
 msgstr ""
 
-#: common.opt:3186
+#: common.opt:3190
 #, no-c-format
 msgid "Validate vtable pointers before using them."
 msgstr ""
 
-#: common.opt:3202
+#: common.opt:3206
 #, fuzzy, no-c-format
 msgid "Output vtable verification counters."
 msgstr "Ota käyttöön moniydintuki"
 
-#: common.opt:3206
+#: common.opt:3210
 #, fuzzy, no-c-format
 msgid "Output vtable verification pointer sets information."
 msgstr "Ota käyttöön moniydintuki"
 
-#: common.opt:3210
+#: common.opt:3214
 #, fuzzy, no-c-format
 msgid "Use expression value profiles in optimizations."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:3214
+#: common.opt:3218
 #, no-c-format
 msgid "Construct webs and split unrelated uses of single variable."
 msgstr ""
 
-#: common.opt:3218
+#: common.opt:3222
 #, fuzzy, no-c-format
 msgid "Enable conditional dead code elimination for builtin calls."
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: common.opt:3222
+#: common.opt:3226
 #, fuzzy, no-c-format
 msgid "Perform whole program optimizations."
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: common.opt:3226
+#: common.opt:3230
 #, fuzzy, no-c-format
 msgid "Assume pointer overflow wraps around."
 msgstr "Käsittele puuttuvia otsikkotiedostoja luotavina tiedostoina"
 
-#: common.opt:3230
+#: common.opt:3234
 #, fuzzy, no-c-format
 msgid "Assume signed arithmetic overflow wraps around."
 msgstr "Käsittele puuttuvia otsikkotiedostoja luotavina tiedostoina"
 
-#: common.opt:3234
+#: common.opt:3238
 #, fuzzy, no-c-format
 msgid "Put zero initialized data in the bss section."
 msgstr "%qD:a käytetään alustamattomana tässä funktiossa"
 
-#: common.opt:3238
+#: common.opt:3242
 #, no-c-format
 msgid "Clear call-used registers upon function return."
 msgstr ""
 
-#: common.opt:3242
+#: common.opt:3246
 #, no-c-format
 msgid "Generate debug information in default format."
 msgstr "Tuota vianjäljitystietoja oletusmuodossa."
 
-#: common.opt:3246
+#: common.opt:3250
 #, no-c-format
 msgid "Assume assembler support for (DWARF2+) .loc directives."
 msgstr ""
 
-#: common.opt:3250
+#: common.opt:3254
 #, no-c-format
 msgid "Assume assembler support for view in (DWARF2+) .loc directives."
 msgstr ""
 
-#: common.opt:3270
+#: common.opt:3274
 #, no-c-format
 msgid "Record DW_AT_decl_column and DW_AT_call_column in DWARF."
 msgstr ""
 
-#: common.opt:3276
+#: common.opt:3280
 #, fuzzy, no-c-format
 #| msgid "Generate debug information in default format."
 msgid "Generate CTF debug information at default level."
 msgstr "Tuota vianjäljitystietoja oletusmuodossa."
 
-#: common.opt:3280
+#: common.opt:3284
 #, fuzzy, no-c-format
 #| msgid "Generate debug information in default format."
 msgid "Generate BTF debug information at default level."
 msgstr "Tuota vianjäljitystietoja oletusmuodossa."
 
-#: common.opt:3284
+#: common.opt:3288
 #, fuzzy, no-c-format
 msgid "Generate debug information in default version of DWARF format."
 msgstr "Tuota vianjäljitystietoja laajennetussa STABS-muodossa"
 
-#: common.opt:3288
+#: common.opt:3292
 #, fuzzy, no-c-format
 msgid "Generate debug information in DWARF v2 (or later) format."
 msgstr "Tuota vianjäljitystietoja XCOFF-muodossa"
 
-#: common.opt:3292
+#: common.opt:3296
 #, no-c-format
 msgid "Use 32-bit DWARF format when emitting DWARF debug information."
 msgstr ""
 
-#: common.opt:3296
+#: common.opt:3300
 #, no-c-format
 msgid "Use 64-bit DWARF format when emitting DWARF debug information."
 msgstr ""
 
-#: common.opt:3300
+#: common.opt:3304
 #, fuzzy, no-c-format
 msgid "Generate debug information in default extended format."
 msgstr "Tuota vianjäljitystietoja laajennetussa STABS-muodossa"
 
-#: common.opt:3304
+#: common.opt:3308
 #, fuzzy, no-c-format
 msgid "Generate extended entry point information for inlined functions."
 msgstr "indeksoitu arvo on osoitin funktioon"
 
-#: common.opt:3308
+#: common.opt:3312
 #, no-c-format
 msgid "Compute locview reset points based on insn length estimates."
 msgstr ""
 
-#: common.opt:3316
+#: common.opt:3320
 #, fuzzy, no-c-format
 msgid "Don't generate DWARF pubnames and pubtypes sections."
 msgstr "Tuota vianjäljitystietoja VMS-muodossa"
 
-#: common.opt:3320
+#: common.opt:3324
 #, fuzzy, no-c-format
 msgid "Generate DWARF pubnames and pubtypes sections."
 msgstr "Tuota vianjäljitystietoja VMS-muodossa"
 
-#: common.opt:3324
+#: common.opt:3328
 #, fuzzy, no-c-format
 msgid "Generate DWARF pubnames and pubtypes sections with GNU extensions."
 msgstr "Tuota vianjäljitystietoja VMS-muodossa"
 
-#: common.opt:3328
+#: common.opt:3332
 #, no-c-format
 msgid "Record gcc command line switches in DWARF DW_AT_producer."
 msgstr ""
 
-#: common.opt:3332
+#: common.opt:3336
 #, fuzzy, no-c-format
 msgid "Generate debug information in separate .dwo files."
 msgstr "Tuota vianjäljitystietoja VMS-muodossa"
 
-#: common.opt:3336
+#: common.opt:3340
 #, fuzzy, no-c-format
 msgid "Generate debug information in STABS format."
 msgstr "Tuota vianjäljitystietoja laajennetussa STABS-muodossa"
 
-#: common.opt:3340
+#: common.opt:3344
 #, fuzzy, no-c-format
 msgid "Generate debug information in extended STABS format."
 msgstr "Tuota vianjäljitystietoja laajennetussa STABS-muodossa"
 
-#: common.opt:3344
+#: common.opt:3348
 #, no-c-format
 msgid "Emit progressive recommended breakpoint locations."
 msgstr ""
 
-#: common.opt:3348
+#: common.opt:3352
 #, no-c-format
 msgid "Don't emit DWARF additions beyond selected version."
 msgstr ""
 
-#: common.opt:3352
+#: common.opt:3356
 #, no-c-format
 msgid "Add description attributes to some DWARF DIEs that have no name attribute."
 msgstr ""
 
-#: common.opt:3356
+#: common.opt:3360
 #, fuzzy, no-c-format
 msgid "Toggle debug information generation."
 msgstr "Tuota vianjäljitystietoja VMS-muodossa"
 
-#: common.opt:3360
+#: common.opt:3364
 #, no-c-format
 msgid "Augment variable location lists with progressive views."
 msgstr ""
 
-#: common.opt:3367
+#: common.opt:3371
 #, no-c-format
 msgid "Generate debug information in VMS format."
 msgstr "Tuota vianjäljitystietoja VMS-muodossa."
 
-#: common.opt:3371
+#: common.opt:3375
 #, no-c-format
 msgid "Generate debug information in XCOFF format."
 msgstr "Tuota vianjäljitystietoja XCOFF-muodossa."
 
-#: common.opt:3375
+#: common.opt:3379
 #, fuzzy, no-c-format
 msgid "Generate debug information in extended XCOFF format."
 msgstr "Tuota vianjäljitystietoja XCOFF-muodossa"
 
-#: common.opt:3393
+#: common.opt:3397
 #, fuzzy, no-c-format
 msgid "Generate compressed debug sections."
 msgstr "Tuota vianjäljitystietoja VMS-muodossa"
 
-#: common.opt:3397
+#: common.opt:3401
 #, fuzzy, no-c-format
 msgid "-gz=<format>\tGenerate compressed debug sections in format <format>."
 msgstr "Tuota isel-käskyjä"
 
-#: common.opt:3404
+#: common.opt:3408
 #, fuzzy, no-c-format
 msgid "-iplugindir=<dir>\tSet <dir> to be the default plugin directory."
 msgstr "-isysroot <hakemisto>\tAseta <hakemisto> järjestelmän juurihakemistoksi"
 
-#: common.opt:3408
+#: common.opt:3412
 #, fuzzy, no-c-format
 msgid "-imultiarch <dir>\tSet <dir> to be the multiarch include subdirectory."
 msgstr "-isysroot <hakemisto>\tAseta <hakemisto> järjestelmän juurihakemistoksi"
 
-#: common.opt:3433
+#: common.opt:3437
 #, fuzzy, no-c-format
 msgid "-o <file>\tPlace output into <file>."
 msgstr "  -o <tiedosto>            Ohjaa tuloste <tiedostoon>\n"
 
-#: common.opt:3437
+#: common.opt:3441
 #, no-c-format
 msgid "Enable function profiling."
 msgstr "Ota käyttöön funktioprofilointi."
 
-#: common.opt:3447
+#: common.opt:3451
 #, no-c-format
 msgid "Like -pedantic but issue them as errors."
 msgstr ""
 
-#: common.opt:3487
+#: common.opt:3491
 #, fuzzy, no-c-format
 msgid "Do not display functions compiled or elapsed time."
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: common.opt:3519
+#: common.opt:3523
 #, no-c-format
 msgid "Enable verbose output."
 msgstr "Ota käyttöön yksityiskohtainen tuloste."
 
-#: common.opt:3523
+#: common.opt:3527
 #, no-c-format
 msgid "Display the compiler's version."
 msgstr "Näytä kääntäjän versio."
 
-#: common.opt:3527
+#: common.opt:3531
 #, no-c-format
 msgid "Suppress warnings."
 msgstr "Vaienna varoitukset."
 
-#: common.opt:3537
+#: common.opt:3541
 #, no-c-format
 msgid "Create a shared library."
 msgstr "Luo jaettu kirjasto."
 
-#: common.opt:3589
+#: common.opt:3593
 #, no-c-format
 msgid "Don't create a dynamically linked position independent executable."
 msgstr "Älä luo dynaamisesti linkitettyä paikkariippumatonta suoritettavaa tiedostoa."
 
-#: common.opt:3593
+#: common.opt:3597
 #, fuzzy, no-c-format
 msgid "Create a dynamically linked position independent executable."
 msgstr "Luo paikkariippumaton suoritettava tiedosto"
 
-#: common.opt:3597
+#: common.opt:3601
 #, fuzzy, no-c-format
 msgid "Create a static position independent executable."
 msgstr "Luo paikkariippumaton suoritettava tiedosto"
 
-#: common.opt:3604
+#: common.opt:3608
 #, no-c-format
 msgid "Use caller save register across calls if possible."
 msgstr ""
@@ -15355,7 +15422,7 @@ msgstr ""
 
 #: params.opt:254
 #, no-c-format
-msgid "When propagating IPA-CP effect estimates, multiply frequencies of recursive edges that that bring back an unchanged value by this factor."
+msgid "When propagating IPA-CP effect estimates, multiply frequencies of recursive edges that bring back an unchanged value by this factor."
 msgstr ""
 
 #: params.opt:258
@@ -15720,7 +15787,7 @@ msgstr ""
 
 #: params.opt:554
 #, no-c-format
-msgid "Maximum combinaed size of caller and callee wich is inlined if callee is called once."
+msgid "Maximum combined size of caller and callee which is inlined if callee is called once."
 msgstr ""
 
 #: params.opt:558
@@ -15800,615 +15867,625 @@ msgstr "parametrin %qs maksimiarvo on %u"
 
 #: params.opt:618
 #, no-c-format
-msgid "Maximum length of partial antic set when performing tree pre optimization."
+msgid "Minimum page size for warning purposes."
 msgstr ""
 
 #: params.opt:622
+#, no-c-format
+msgid "Maximum length of partial antic set when performing tree pre optimization."
+msgstr ""
+
+#: params.opt:626
 #, fuzzy, no-c-format
 msgid "The maximum number of branches on the path through the peeled sequence."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:626
+#: params.opt:630
 #, fuzzy, no-c-format
 msgid "The maximum number of peelings of a single loop."
 msgstr "Kumoamistoimintojen enimmäismäärä"
 
-#: params.opt:630
+#: params.opt:634
 #, fuzzy, no-c-format
 msgid "The maximum number of insns of a peeled loop."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:634
+#: params.opt:638
 #, fuzzy, no-c-format
 msgid "The maximum length of scheduling's pending operations list."
 msgstr "Kumoamistoimintojen enimmäismäärä"
 
-#: params.opt:638 params.opt:682
+#: params.opt:642 params.opt:686
 #, fuzzy, no-c-format
 msgid "The maximum number of blocks in a region to be considered for interblock scheduling."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:642 params.opt:686
+#: params.opt:646 params.opt:690
 #, fuzzy, no-c-format
 msgid "The maximum number of insns in a region to be considered for interblock scheduling."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:646
+#: params.opt:650
 #, no-c-format
 msgid "Maximum depth of sqrt chains to use when synthesizing exponentiation by a real constant."
 msgstr ""
 
-#: params.opt:650
+#: params.opt:654
 #, fuzzy, no-c-format
 msgid "The maximum number of loop iterations we predict statically."
 msgstr "Kumoamistoimintojen enimmäismäärä"
 
-#: params.opt:654
+#: params.opt:658
 #, fuzzy, no-c-format
 msgid "The maximum number of instructions to search backward when looking for equivalent reload."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:658
+#: params.opt:662
 #, fuzzy, no-c-format
 msgid "Maximum number of insns in a basic block to consider for RTL if-conversion."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:662
+#: params.opt:666
 #, 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:666
+#: params.opt:670
 #, 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:670
+#: params.opt:674
 #, fuzzy, no-c-format
 msgid "The maximum number of iterations through CFG to extend regions."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:674
+#: params.opt:678
 #, fuzzy, no-c-format
 msgid "The maximum conflict delay for an insn to be considered for speculative motion."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:678
+#: params.opt:682
 #, fuzzy, 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 "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:690
+#: params.opt:694
 #, no-c-format
 msgid "Maximum length of candidate scans for straight-line strength reduction."
 msgstr ""
 
-#: params.opt:694
+#: params.opt:698
 #, no-c-format
 msgid "Maximum number of may-defs visited when devirtualizing speculatively."
 msgstr ""
 
-#: params.opt:698
+#: params.opt:702
 #, no-c-format
 msgid "Maximum recursion depth allowed when querying a property of an SSA name."
 msgstr ""
 
-#: params.opt:702
+#: params.opt:706
 #, fuzzy, no-c-format
 msgid "Maximum number of constant stores to merge in the store merging pass."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:706
+#: params.opt:710
 #, fuzzy, no-c-format
 msgid "Maximum number of conditional store pairs that can be sunk."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:710 params.opt:714
+#: params.opt:714 params.opt:718
 #, fuzzy, no-c-format
 msgid "Maximum number of store chains to track at the same time in the store merging pass."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:718
+#: params.opt:722
 #, fuzzy, no-c-format
 msgid "Maximum amount of similar bbs to compare a bb with."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:722
+#: params.opt:726
 #, no-c-format
 msgid "Maximum amount of iterations of the pass over a function."
 msgstr ""
 
-#: params.opt:726
+#: params.opt:730
 #, no-c-format
 msgid "Maximum number of strings for which strlen optimization pass will track string lengths."
 msgstr ""
 
-#: params.opt:730
+#: params.opt:734
 #, 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:734
+#: params.opt:738
 #, fuzzy, no-c-format
 msgid "The maximum number of unrollings of a single loop."
 msgstr "Kumoamistoimintojen enimmäismäärä"
 
-#: params.opt:738
+#: params.opt:742
 #, fuzzy, no-c-format
 msgid "The maximum number of instructions to consider to unroll in a loop."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:742
+#: params.opt:746
 #, fuzzy, no-c-format
 msgid "The maximum number of insns of an unswitched loop."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:746
+#: params.opt:750
 #, fuzzy, no-c-format
 msgid "The maximum number of unswitchings in a single loop."
 msgstr "Kumoamistoimintojen enimmäismäärä"
 
-#: params.opt:750
+#: params.opt:754
 #, 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:754
+#: params.opt:758
 #, no-c-format
 msgid "Max. recursion depth for expanding var tracking expressions."
 msgstr ""
 
-#: params.opt:758
+#: params.opt:762
 #, no-c-format
 msgid "Max. size of loc list for which reverse ops should be added."
 msgstr ""
 
-#: params.opt:762
+#: params.opt:766
 #, no-c-format
 msgid "Max. size of var tracking hash tables."
 msgstr ""
 
-#: params.opt:766
+#: params.opt:770
 #, no-c-format
 msgid "Maximum number of VALUEs handled during a single find_base_term call."
 msgstr ""
 
-#: params.opt:770
+#: params.opt:774
 #, fuzzy, no-c-format
 msgid "Maximum number of assertions to add along the default edge of a switch statement during VRP."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:774
+#: params.opt:778
 #, fuzzy, no-c-format
 msgid "The minimum number of matching instructions to consider for crossjumping."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:778
+#: params.opt:782
 #, no-c-format
 msgid "Inline recursively only when the probability of call being executed exceeds the parameter."
 msgstr ""
 
-#: params.opt:782
+#: params.opt:786
 #, no-c-format
 msgid "Min. ratio of insns to prefetches to enable prefetching for a loop with an unknown trip count."
 msgstr ""
 
-#: params.opt:786
+#: params.opt:790
 #, no-c-format
 msgid "The minimum threshold for probability of semi-invariant condition statement to trigger loop split."
 msgstr ""
 
-#: params.opt:790
+#: params.opt:794
 #, no-c-format
 msgid "The minimum UID to be used for a nondebug insn."
 msgstr ""
 
-#: params.opt:794
+#: params.opt:798
 #, no-c-format
 msgid "The minimum size of variables taking part in stack slot sharing when not optimizing."
 msgstr ""
 
-#: params.opt:798
+#: params.opt:802
 #, fuzzy, no-c-format
 msgid "The minimum probability of reaching a source block for interblock speculative scheduling."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:802
+#: params.opt:806
 #, no-c-format
 msgid "If -ftree-vectorize is used, the minimal loop bound of a loop to be considered for vectorization."
 msgstr ""
 
-#: params.opt:806
+#: params.opt:810
 #, no-c-format
 msgid "--param=openacc-kernels=[decompose|parloops]\tSpecify mode of OpenACC 'kernels' constructs handling."
 msgstr ""
 
-#: params.opt:819
+#: params.opt:823
 #, no-c-format
 msgid "--param=openacc-privatization=[quiet|noisy]\tSpecify mode of OpenACC privatization diagnostics."
 msgstr ""
 
-#: params.opt:832
+#: params.opt:836
 #, no-c-format
 msgid "Chunk size of omp schedule for loops parallelized by parloops."
 msgstr ""
 
-#: params.opt:836
+#: params.opt:840
 #, fuzzy, no-c-format
 msgid "Minimum number of iterations per thread of an innermost parallelized loop."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:840
+#: params.opt:844
 #, 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:862
+#: params.opt:866
 #, 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:866
+#: params.opt:870
 #, no-c-format
 msgid "Maximal estimated outcome of branch considered predictable."
 msgstr ""
 
-#: params.opt:870
+#: params.opt:874
 #, no-c-format
 msgid "Whether software prefetch hints should be issued for non-constant strides."
 msgstr ""
 
-#: params.opt:874
+#: params.opt:878
 #, fuzzy, no-c-format
 msgid "The number of insns executed before prefetch is completed."
 msgstr "Kumoamistoimintojen enimmäismäärä"
 
-#: params.opt:878
+#: params.opt:882
 #, no-c-format
 msgid "Min. ratio of insns to mem ops to enable prefetching in a loop."
 msgstr ""
 
-#: params.opt:882
+#: params.opt:886
 #, no-c-format
 msgid "The minimum constant stride beyond which we should use prefetch hints for."
 msgstr ""
 
-#: params.opt:886
+#: params.opt:890
 #, fuzzy, no-c-format
 msgid "Use internal function id in profile lookup."
 msgstr "virheellinen versionumero ”%s”"
 
-#: params.opt:890
+#: params.opt:894
 #, no-c-format
 msgid "--param=ranger-debug=[none|trace|gori|cache|tracegori|all] Specifies the output mode for debugging ranger."
 msgstr ""
 
-#: params.opt:915
+#: params.opt:919
 #, no-c-format
 msgid "Maximum depth of logical expression evaluation ranger will look through when evaluating outgoing edge ranges."
 msgstr ""
 
-#: params.opt:920
+#: params.opt:924
 #, fuzzy, no-c-format
 msgid "Maximum number of relations the oracle will register in a basic block."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:924
+#: params.opt:928
 #, fuzzy, no-c-format
 msgid "Maximum depth of a loop nest to fully value-number optimistically."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:928
+#: params.opt:932
 #, fuzzy, no-c-format
 msgid "Maximum number of disambiguations to perform per memory access."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:932
+#: params.opt:936
 #, no-c-format
 msgid "Bound on the complexity of the expressions in the scalar evolutions analyzer."
 msgstr ""
 
-#: params.opt:936
+#: params.opt:940
 #, no-c-format
 msgid "Bound on size of expressions used in the scalar evolutions analyzer."
 msgstr ""
 
-#: params.opt:940
+#: params.opt:944
 #, no-c-format
 msgid "Hardware autoprefetcher scheduler model control flag.  Number of lookahead cycles the model looks into, at '0' only enable instruction sorting heuristic.  Disabled by default."
 msgstr ""
 
-#: params.opt:944
+#: params.opt:948
 #, no-c-format
 msgid "Minimal distance between possibly conflicting store and load."
 msgstr ""
 
-#: params.opt:948
+#: params.opt:952
 #, no-c-format
 msgid "Which -fsched-pressure algorithm to apply."
 msgstr ""
 
-#: params.opt:952
+#: params.opt:956
 #, fuzzy, no-c-format
 msgid "The minimal probability of speculation success (in percents), so that speculative insn will be scheduled."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:956
+#: params.opt:960
 #, no-c-format
 msgid "The minimum probability an edge must have for the scheduler to save its state across it."
 msgstr ""
 
-#: params.opt:960
+#: params.opt:964
 #, fuzzy, no-c-format
 msgid "Maximum number of instructions in the ready list that are considered eligible for renaming."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:964
+#: params.opt:968
 #, no-c-format
 msgid "The maximum size of the lookahead window of selective scheduling."
 msgstr ""
 
-#: params.opt:968
+#: params.opt:972
 #, fuzzy, no-c-format
 msgid "Maximum number of times that an insn could be scheduled."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:972
+#: params.opt:976
 #, no-c-format
 msgid "The number of prefetches that can run at the same time."
 msgstr ""
 
-#: params.opt:976
+#: params.opt:980
 #, no-c-format
 msgid "Target block's relative execution frequency (as a percentage) required to sink a statement."
 msgstr ""
 
-#: params.opt:980
+#: params.opt:984
 #, no-c-format
 msgid "The number of cycles the swing modulo scheduler considers when checking conflicts using DFA."
 msgstr ""
 
-#: params.opt:984
+#: params.opt:988
 #, no-c-format
 msgid "A threshold on the average loop count considered by the swing modulo scheduler."
 msgstr ""
 
-#: params.opt:988
+#: params.opt:992
 #, no-c-format
 msgid "A factor for tuning the upper bound that swing modulo scheduler uses for scheduling a loop."
 msgstr ""
 
-#: params.opt:992
+#: params.opt:996
 #, no-c-format
 msgid "The minimum value of stage count that swing modulo scheduler will generate."
 msgstr ""
 
-#: params.opt:996
+#: params.opt:1000
 #, 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:1000
+#: params.opt:1004
 #, 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:1004
+#: params.opt:1008
 #, 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:1008
+#: params.opt:1012
 #, fuzzy, no-c-format
 msgid "The maximum number of SSA_NAME assignments to follow in determining a value."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:1012
+#: params.opt:1016
 #, fuzzy, no-c-format
 msgid "The lower bound for a buffer to be considered for stack smashing protection."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:1016
+#: params.opt:1020
 #, no-c-format
 msgid "Size of the stack guard expressed as a power of two in bytes."
 msgstr ""
 
-#: params.opt:1020
+#: params.opt:1024
 #, no-c-format
 msgid "Interval in which to probe the stack expressed as a power of two in bytes."
 msgstr ""
 
-#: params.opt:1024
+#: params.opt:1028
 #, no-c-format
 msgid "Allow the store merging pass to introduce unaligned stores if it is legal to do so."
 msgstr ""
 
-#: params.opt:1028
+#: params.opt:1032
 #, no-c-format
 msgid "Maximum size of a single store merging region in bytes."
 msgstr ""
 
-#: params.opt:1032
+#: params.opt:1036
 #, no-c-format
 msgid "The maximum ratio between array size and switch branches for a switch conversion to take place."
 msgstr ""
 
-#: params.opt:1036
+#: params.opt:1040
 #, fuzzy, no-c-format
 msgid "Maximum number of bases stored in each modref tree."
 msgstr "Kumoamistoimintojen enimmäismäärä"
 
-#: params.opt:1040
+#: params.opt:1044
 #, fuzzy, no-c-format
 msgid "Maximum number of references stored in each modref base."
 msgstr "Kumoamistoimintojen enimmäismäärä"
 
-#: params.opt:1044
+#: params.opt:1048
 #, fuzzy, no-c-format
 msgid "Maximum number of accesses stored in each modref reference."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:1048
+#: params.opt:1052
 #, fuzzy, no-c-format
 msgid "Maximum number of tests performed by modref query."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:1052
+#: params.opt:1056
 #, no-c-format
 msgid "Maximum depth of DFS walk used by modref escape analysis."
 msgstr ""
 
-#: params.opt:1056
+#: params.opt:1060
 #, fuzzy, no-c-format
 msgid "Maximum number of escape points tracked by modref per SSA-name."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:1060
+#: params.opt:1064
 #, fuzzy, no-c-format
 msgid "Maximum number of times a given range is adjusted during the dataflow."
 msgstr "parametrin %qs maksimiarvo on %u"
 
-#: params.opt:1064
+#: params.opt:1068
 #, no-c-format
 msgid "--param=threader-debug=[none|all] Enables verbose dumping of the threader solver."
 msgstr ""
 
-#: params.opt:1077
+#: params.opt:1081
 #, 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:1081
+#: params.opt:1085
 #, 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:1085
+#: params.opt:1089
 #, 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:1089
+#: params.opt:1093
 #, no-c-format
 msgid "Maximal code growth caused by tail duplication (in percent)."
 msgstr ""
 
-#: params.opt:1093
+#: params.opt:1097
 #, 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:1097
+#: params.opt:1101
 #, 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:1101
+#: params.opt:1105
 #, no-c-format
 msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent)."
 msgstr ""
 
-#: params.opt:1105
+#: params.opt:1109
 #, 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:1109
+#: params.opt:1113
 #, fuzzy, no-c-format
 msgid "Emit special instrumentation for accesses to volatiles."
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: params.opt:1113
+#: params.opt:1117
 #, no-c-format
 msgid "Emit instrumentation calls to __tsan_func_entry() and __tsan_func_exit()."
 msgstr ""
 
-#: params.opt:1117
+#: params.opt:1121
 #, fuzzy, no-c-format
 msgid "Maximum number of nested calls to search for control dependencies during uninitialized variable analysis."
 msgstr "Kumoamistoimintojen enimmäismäärä"
 
-#: params.opt:1121
+#: params.opt:1125
 #, fuzzy, no-c-format
 msgid "Instruction accounted for function prologue, epilogue and other overhead."
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: params.opt:1125
+#: params.opt:1129
 #, fuzzy, no-c-format
 msgid "Time accounted for function prologue, epilogue and other overhead."
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: params.opt:1129
+#: params.opt:1133
 #, fuzzy, no-c-format
 msgid "Instruction accounted for function thunk overhead."
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: params.opt:1133
+#: params.opt:1137
 #, fuzzy, no-c-format
 msgid "Time accounted for function thunk overhead."
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: params.opt:1137
+#: params.opt:1141
 #, no-c-format
 msgid "The denominator n of fraction 1/n of the number of profiled runs of the entire program below which the execution count of a basic block must be in order for the basic block to be considered unlikely."
 msgstr ""
 
-#: params.opt:1141
+#: params.opt:1145
 #, no-c-format
 msgid "Maximum unroll factor for the unroll-and-jam transformation."
 msgstr ""
 
-#: params.opt:1145
+#: params.opt:1149
 #, no-c-format
 msgid "Minimum percentage of memrefs that must go away for unroll-and-jam to be considered profitable."
 msgstr ""
 
-#: params.opt:1149
+#: params.opt:1153
 #, no-c-format
 msgid "Use direct poisoning/unpoisoning instructions for variables smaller or equal to this number."
 msgstr ""
 
-#: params.opt:1153
+#: params.opt:1157
 #, fuzzy, no-c-format
 msgid "Whether to use canonical types."
 msgstr "Käytetäänkö järjestelmän fonttia"
 
-#: params.opt:1157
+#: params.opt:1161
 #, fuzzy, no-c-format
 msgid "Enable loop epilogue vectorization using smaller vector size."
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: params.opt:1161
+#: params.opt:1165
 #, fuzzy, no-c-format
 msgid "Maximum number of loop peels to enhance alignment of data references in a loop."
 msgstr "Kumoamistoimintojen enimmäismäärä"
 
-#: params.opt:1165
+#: params.opt:1169
 #, no-c-format
 msgid "Bound on number of runtime checks inserted by the vectorizer's loop versioning for alias check."
 msgstr ""
 
-#: params.opt:1169
+#: params.opt:1173
 #, no-c-format
 msgid "Bound on number of runtime checks inserted by the vectorizer's loop versioning for alignment check."
 msgstr ""
 
-#: params.opt:1173
+#: params.opt:1177
 #, no-c-format
 msgid "Controls how loop vectorizer uses partial vectors.  0 means never, 1 means only for loops whose need to iterate can be removed, 2 means for all loops.  The default value is 2."
 msgstr ""
 
-#: params.opt:1177
+#: params.opt:1181
 #, no-c-format
 msgid "The maximum factor which the loop vectorizer applies to the cost of statements in an inner loop relative to the loop being vectorized."
 msgstr ""
 
-#: params.opt:1181
+#: params.opt:1185
+#, fuzzy, no-c-format
+msgid "Enable loop vectorization of floating point inductions."
+msgstr "ehtolausekkeessa ei-lvalue-taulukko"
+
+#: params.opt:1189
 #, no-c-format
 msgid "--param=vrp1-mode=[vrp|ranger] Specifies the mode VRP1 should operate in."
 msgstr ""
 
-#: params.opt:1185
+#: params.opt:1193
 #, no-c-format
 msgid "--param=vrp2-mode=[vrp|ranger] Specifies the mode VRP2 should operate in."
 msgstr ""
@@ -16494,7 +16571,7 @@ msgstr "%s: kaikki varoitukset käsitellään virheinä"
 msgid "%s: some warnings being treated as errors"
 msgstr "%s: osa varoituksista ilmaistaan virheinä"
 
-#: diagnostic.cc:464 input.cc:278 input.cc:2036 c-family/c-opts.cc:1478
+#: diagnostic.cc:464 input.cc:278 input.cc:2036 c-family/c-opts.cc:1480
 #: fortran/cpp.cc:608 fortran/error.cc:1150 fortran/error.cc:1170
 msgid "<built-in>"
 msgstr "<sisäinen>"
@@ -16640,12 +16717,12 @@ msgstr "FORMAT-nimiö %d kohdassa %L ei ole määritelty"
 #. PRINT_OPERAND must handle them.
 #. We can't handle floating point constants;
 #. TARGET_PRINT_OPERAND must handle them.
-#: final.cc:3774 config/arc/arc.cc:6402 config/i386/i386.cc:12259
+#: final.cc:3774 config/arc/arc.cc:6409 config/i386/i386.cc:12275
 #, c-format
 msgid "floating constant misused"
 msgstr "liukulukuvakiota käytetty väärin"
 
-#: final.cc:3832 config/arc/arc.cc:6499 config/i386/i386.cc:12350
+#: final.cc:3832 config/arc/arc.cc:6506 config/i386/i386.cc:12366
 #: config/pdp11/pdp11.cc:1872
 #, c-format
 msgid "invalid expression as operand"
@@ -17663,7 +17740,7 @@ msgstr "Muodostin %qs"
 msgid "    inlined from %qs"
 msgstr "Muodostin %qs"
 
-#: lra-assigns.cc:1837 reload1.cc:2073
+#: lra-assigns.cc:1871 reload1.cc:2073
 msgid "this is the insn:"
 msgstr "tämä on käsky:"
 
@@ -17672,7 +17749,7 @@ msgstr "tämä on käsky:"
 msgid "unable to generate reloads for impossible constraints:"
 msgstr "%s: Tätä tiedostoa ei voitu varmuuskopioida"
 
-#: lra-constraints.cc:4168 reload.cc:3841
+#: lra-constraints.cc:4168 reload.cc:3844
 #, fuzzy
 msgid "unable to generate reloads for:"
 msgstr "%s: Tätä tiedostoa ei voitu varmuuskopioida"
@@ -17688,124 +17765,124 @@ msgstr "Tältä valitsimelta puuttuu dokumentaatio"
 msgid "Uses of this option are diagnosed."
 msgstr "%s: oletetaan RTC:n käyttävän UTC:tä...\n"
 
-#: opts.cc:1577
+#: opts.cc:1584
 #, c-format
 msgid "Same as %s%s (or, in negated form, %s%s)."
 msgstr "Sama kuin %s%s (tai kielteisessä muodossa %s%s)."
 
-#: opts.cc:1582
+#: opts.cc:1589
 #, fuzzy, c-format
 msgid "Same as %s%s."
 msgstr "on vaarallista toimia rekursiivisesti hakemistossa %s (sama kuin %s)"
 
-#: opts.cc:1587
+#: opts.cc:1594
 #, fuzzy, c-format
 msgid "Same as %s."
 msgstr "on vaarallista toimia rekursiivisesti hakemistossa %s (sama kuin %s)"
 
-#: opts.cc:1595
+#: opts.cc:1602
 #, fuzzy, c-format
 msgid "%s  Same as %s."
 msgstr "on vaarallista toimia rekursiivisesti hakemistossa %s (sama kuin %s)"
 
-#: opts.cc:1658
+#: opts.cc:1665
 #, fuzzy
 msgid "[available in "
 msgstr "Silmukkamuuttuja"
 
-#: opts.cc:1690
+#: opts.cc:1697
 msgid "[default]"
 msgstr "[oletus]"
 
-#: opts.cc:1699
+#: opts.cc:1706
 #, c-format
 msgid "%llu bytes"
 msgstr "%llu tavua"
 
-#: opts.cc:1736
+#: opts.cc:1743
 msgid "[enabled]"
 msgstr "[käytössä]"
 
-#: opts.cc:1738
+#: opts.cc:1745
 msgid "[disabled]"
 msgstr "[ei käytössä]"
 
-#: opts.cc:1774
+#: opts.cc:1781
 #, c-format
 msgid " No options with the desired characteristics were found\n"
 msgstr " Yhtään valitsinta halutuilla ominaisuuksilla ei löytynyt\n"
 
-#: opts.cc:1783
+#: opts.cc:1790
 #, c-format
 msgid " None found.  Use --help=%s to show *all* the options supported by the %s front-end.\n"
 msgstr " Mitään ei löytynyt.  Käytä --help=%s näyttämään *kaikki* valitsimet, joita %s-edusta tukee.\n"
 
-#: opts.cc:1789
+#: opts.cc:1796
 #, c-format
 msgid " All options with the desired characteristics have already been displayed\n"
 msgstr " Kaikki valitsimet halutuilla ominaisuuksilla on jo näytetty\n"
 
-#: opts.cc:1834
+#: opts.cc:1841
 #, fuzzy, c-format
 msgid ""
 "  Known valid arguments for %s option:\n"
 "   "
 msgstr "Virheellinen vähimmäisargumenttimäärä (%d) funktiolle %s"
 
-#: opts.cc:1884
+#: opts.cc:1891
 msgid "The following options are target specific"
 msgstr "Seuraavat valitsimet ovat kohdekohtaisia"
 
-#: opts.cc:1887
+#: opts.cc:1894
 #, fuzzy
 msgid "The following options control compiler warning messages"
 msgstr "Seuraavat valitsimet ohjaavat optimointeja"
 
-#: opts.cc:1890
+#: opts.cc:1897
 msgid "The following options control optimizations"
 msgstr "Seuraavat valitsimet ohjaavat optimointeja"
 
-#: opts.cc:1893 opts.cc:1933
+#: opts.cc:1900 opts.cc:1940
 msgid "The following options are language-independent"
 msgstr "Seuraavat valitsimet ovat kielestä riippumattomia"
 
-#: opts.cc:1896
+#: opts.cc:1903
 #, fuzzy
 msgid "The following options control parameters"
 msgstr "Seuraavat valitsimet ohjaavat optimointeja"
 
-#: opts.cc:1902
+#: opts.cc:1909
 msgid "The following options are specific to just the language "
 msgstr "Seuraavat valitsimet ovat liittyvät kieleen "
 
-#: opts.cc:1904
+#: opts.cc:1911
 msgid "The following options are supported by the language "
 msgstr "Kieli tukee seuraavia valitsimia "
 
-#: opts.cc:1915
+#: opts.cc:1922
 msgid "The following options are not documented"
 msgstr "Seuraavia valitsimia ei ole dokumentoitu"
 
-#: opts.cc:1917
+#: opts.cc:1924
 #, fuzzy
 msgid "The following options take separate arguments"
 msgstr "Seuraavia valitsimia ei ole dokumentoitu"
 
-#: opts.cc:1919
+#: opts.cc:1926
 #, fuzzy
 msgid "The following options take joined arguments"
 msgstr "Seuraavia valitsimia ei ole dokumentoitu"
 
-#: opts.cc:1931
+#: opts.cc:1938
 msgid "The following options are language-related"
 msgstr "Seuraavat valitsimet ovat kieleen liittyviä"
 
-#: passes.cc:1832
+#: passes.cc:1833
 #, fuzzy, c-format
 msgid "during %s pass: %s\n"
 msgstr "%qT ei ole nimiavaruus"
 
-#: passes.cc:1837
+#: passes.cc:1838
 #, fuzzy, c-format
 msgid "dump file: %s\n"
 msgstr "tiedoston %s avaaminen epäonnistui"
@@ -17905,7 +17982,7 @@ msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d
 msgstr "%s%sGGC heuristinen/heuristiikka??: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
 
 #: tree-diagnostic-path.cc:257 tree-diagnostic.cc:290 c/c-decl.cc:6073
-#: c/c-typeck.cc:7894 cp/error.cc:1165 c-family/c-pretty-print.cc:424
+#: c/c-typeck.cc:7894 cp/error.cc:1165 c-family/c-pretty-print.cc:425
 #, gcc-internal-format
 msgid "<anonymous>"
 msgstr "<nimetön>"
@@ -18188,90 +18265,90 @@ msgid "length modifier in strfmon format"
 msgstr "pituusmääre strfmon-muotoilussa"
 
 #. Handle deferred options from command-line.
-#: c-family/c-opts.cc:1502 fortran/cpp.cc:621
+#: c-family/c-opts.cc:1504 fortran/cpp.cc:621
 msgid "<command-line>"
 msgstr "<komentorivi>"
 
-#: config/aarch64/aarch64.cc:10978
+#: config/aarch64/aarch64.cc:11676
 #, fuzzy, c-format
 msgid "unsupported operand for code '%c'"
 msgstr "fr30_print_operand: tuntematon koodi"
 
-#: config/aarch64/aarch64.cc:10987 config/aarch64/aarch64.cc:11000
-#: config/aarch64/aarch64.cc:11012 config/aarch64/aarch64.cc:11023
-#: config/aarch64/aarch64.cc:11039 config/aarch64/aarch64.cc:11053
-#: config/aarch64/aarch64.cc:11073 config/aarch64/aarch64.cc:11150
-#: config/aarch64/aarch64.cc:11161 config/aarch64/aarch64.cc:11175
-#: config/aarch64/aarch64.cc:11397 config/aarch64/aarch64.cc:11417
+#: config/aarch64/aarch64.cc:11685 config/aarch64/aarch64.cc:11698
+#: config/aarch64/aarch64.cc:11710 config/aarch64/aarch64.cc:11721
+#: config/aarch64/aarch64.cc:11737 config/aarch64/aarch64.cc:11751
+#: config/aarch64/aarch64.cc:11771 config/aarch64/aarch64.cc:11848
+#: config/aarch64/aarch64.cc:11859 config/aarch64/aarch64.cc:11873
+#: config/aarch64/aarch64.cc:12095 config/aarch64/aarch64.cc:12115
 #: config/pru/pru.cc:1700 config/pru/pru.cc:1710 config/pru/pru.cc:1741
 #: config/pru/pru.cc:1752 config/pru/pru.cc:1824
 #, fuzzy, c-format
 msgid "invalid operand for '%%%c'"
 msgstr "virheellinen const_double-operandi"
 
-#: config/aarch64/aarch64.cc:11091 config/aarch64/aarch64.cc:11102
-#: config/aarch64/aarch64.cc:11257 config/aarch64/aarch64.cc:11268
+#: config/aarch64/aarch64.cc:11789 config/aarch64/aarch64.cc:11800
+#: config/aarch64/aarch64.cc:11955 config/aarch64/aarch64.cc:11966
 #, fuzzy, c-format
 msgid "invalid vector constant"
 msgstr "virheellinen rotate-käsky"
 
-#: config/aarch64/aarch64.cc:11114 config/aarch64/aarch64.cc:11126
+#: config/aarch64/aarch64.cc:11812 config/aarch64/aarch64.cc:11824
 #, c-format
 msgid "incompatible floating point / vector register operand for '%%%c'"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:11143
+#: config/aarch64/aarch64.cc:11841
 #, fuzzy, c-format
 msgid "incompatible register operand for '%%%c'"
 msgstr "virheellinen const_double-operandi"
 
-#: config/aarch64/aarch64.cc:11209 config/arm/arm.cc:24405
+#: config/aarch64/aarch64.cc:11907 config/arm/arm.cc:24475
 #, c-format
 msgid "missing operand"
 msgstr "puuttuva operandi"
 
-#: config/aarch64/aarch64.cc:11294
+#: config/aarch64/aarch64.cc:11992
 #, fuzzy, c-format
 msgid "invalid constant"
 msgstr "virheellinen rotate-käsky"
 
-#: config/aarch64/aarch64.cc:11297
+#: config/aarch64/aarch64.cc:11995
 #, fuzzy, c-format
 msgid "invalid operand"
 msgstr "muotomerkkijonolla on epäkelpo operandinumero"
 
-#: config/aarch64/aarch64.cc:11425 config/aarch64/aarch64.cc:11430
+#: config/aarch64/aarch64.cc:12123 config/aarch64/aarch64.cc:12128
 #, fuzzy, c-format
 msgid "invalid operand prefix '%%%c'"
 msgstr "virheellinen etuliite ”0b” liukulukuvakiolle"
 
-#: config/aarch64/aarch64.cc:11450
+#: config/aarch64/aarch64.cc:12148
 #, fuzzy, c-format
 msgid "invalid address mode"
 msgstr "virheellinen %%G-tila"
 
-#: config/aarch64/aarch64.cc:25851 config/arm/arm.cc:33859
+#: config/aarch64/aarch64.cc:26825 config/arm/arm.cc:33897
 #, fuzzy
 msgid "invalid conversion from type %<bfloat16_t%>"
 msgstr "virheellinen muunnos tyypistä %qT tyypiksi %qT"
 
-#: config/aarch64/aarch64.cc:25853 config/arm/arm.cc:33861
+#: config/aarch64/aarch64.cc:26827 config/arm/arm.cc:33899
 #, fuzzy
 msgid "invalid conversion to type %<bfloat16_t%>"
 msgstr "virheellinen muunnos tyypistä %qT tyyppiin %qT"
 
-#: config/aarch64/aarch64.cc:25868 config/aarch64/aarch64.cc:25884
-#: config/arm/arm.cc:33876 config/arm/arm.cc:33892
+#: config/aarch64/aarch64.cc:26842 config/aarch64/aarch64.cc:26858
+#: config/arm/arm.cc:33914 config/arm/arm.cc:33930
 msgid "operation not permitted on type %<bfloat16_t%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:25892
+#: config/aarch64/aarch64.cc:26866
 #, fuzzy
 msgid "cannot combine GNU and SVE vectors in a binary operation"
 msgstr "Virheellinen liukulukuoperaatio"
 
-#: config/alpha/alpha.cc:5076 config/i386/i386.cc:13519
-#: config/rs6000/rs6000.cc:14232 config/sparc/sparc.cc:9357
+#: config/alpha/alpha.cc:5076 config/i386/i386.cc:13535
+#: config/rs6000/rs6000.cc:14278 config/sparc/sparc.cc:9357
 #, c-format
 msgid "'%%&' used without any local dynamic TLS references"
 msgstr ""
@@ -18288,18 +18365,18 @@ msgid "invalid %%r value"
 msgstr "virheellinen %%r-arvo"
 
 #: config/alpha/alpha.cc:5174 config/ia64/ia64.cc:5531
-#: config/rs6000/rs6000.cc:13926 config/xtensa/xtensa.cc:2460
+#: config/rs6000/rs6000.cc:13972 config/xtensa/xtensa.cc:2460
 #, c-format
 msgid "invalid %%R value"
 msgstr "virheellinen %%R-arvo"
 
-#: config/alpha/alpha.cc:5180 config/rs6000/rs6000.cc:13846
+#: config/alpha/alpha.cc:5180 config/rs6000/rs6000.cc:13892
 #: config/xtensa/xtensa.cc:2427
 #, c-format
 msgid "invalid %%N value"
 msgstr "virheellinen %%N-arvo"
 
-#: config/alpha/alpha.cc:5188 config/rs6000/rs6000.cc:13874
+#: config/alpha/alpha.cc:5188 config/rs6000/rs6000.cc:13920
 #, c-format
 msgid "invalid %%P value"
 msgstr "virheellinen %%P-arvo"
@@ -18329,7 +18406,7 @@ msgstr "virheellinen %%M-arvo"
 msgid "invalid %%U value"
 msgstr "virheellinen %%U-arvo"
 
-#: config/alpha/alpha.cc:5274 config/rs6000/rs6000.cc:13934
+#: config/alpha/alpha.cc:5274 config/rs6000/rs6000.cc:13980
 #, c-format
 msgid "invalid %%s value"
 msgstr "virheellinen %%s-arvo"
@@ -18339,7 +18416,7 @@ msgstr "virheellinen %%s-arvo"
 msgid "invalid %%C value"
 msgstr "virheellinen %%C-arvo"
 
-#: config/alpha/alpha.cc:5322 config/rs6000/rs6000.cc:13710
+#: config/alpha/alpha.cc:5322 config/rs6000/rs6000.cc:13756
 #, c-format
 msgid "invalid %%E value"
 msgstr "virheellinen %%E-arvo"
@@ -18352,7 +18429,7 @@ msgstr "uudelleensijoitusvirhe"
 #: config/alpha/alpha.cc:5356 config/cr16/cr16.cc:1572 config/gcn/gcn.cc:6050
 #: config/gcn/gcn.cc:6059 config/gcn/gcn.cc:6119 config/gcn/gcn.cc:6127
 #: config/gcn/gcn.cc:6143 config/gcn/gcn.cc:6161 config/gcn/gcn.cc:6212
-#: config/gcn/gcn.cc:6331 config/gcn/gcn.cc:6442 config/rs6000/rs6000.cc:14237
+#: config/gcn/gcn.cc:6331 config/gcn/gcn.cc:6442 config/rs6000/rs6000.cc:14283
 #, c-format
 msgid "invalid %%xn code"
 msgstr "virheellinen %%xn-koodi"
@@ -18362,109 +18439,109 @@ msgstr "virheellinen %%xn-koodi"
 msgid "invalid operand address"
 msgstr "PRINT_OPERAND_ADDRESS, null-osoitin"
 
-#: config/arc/arc.cc:4517
+#: config/arc/arc.cc:4524
 #, c-format
 msgid "invalid operand to %%Z code"
 msgstr "virheellinen %%Z-operandi"
 
-#: config/arc/arc.cc:4525
+#: config/arc/arc.cc:4532
 #, c-format
 msgid "invalid operand to %%z code"
 msgstr "virheellinen %%Z-operandi"
 
-#: config/arc/arc.cc:4533
+#: config/arc/arc.cc:4540
 #, fuzzy, c-format
 msgid "invalid operands to %%c code"
 msgstr "virheellinen %%Z-operandi"
 
-#: config/arc/arc.cc:4541
+#: config/arc/arc.cc:4548
 #, c-format
 msgid "invalid operand to %%M code"
 msgstr "virheellinen %%M-operandi"
 
-#: config/arc/arc.cc:4549 config/m32r/m32r.cc:2086
+#: config/arc/arc.cc:4556 config/m32r/m32r.cc:2086
 #, fuzzy, c-format
 msgid "invalid operand to %%p code"
 msgstr "fr30_print_operand: tunnistamaton %%p-koodi"
 
-#: config/arc/arc.cc:4560 config/m32r/m32r.cc:2079
+#: config/arc/arc.cc:4567 config/m32r/m32r.cc:2079
 #, fuzzy, c-format
 msgid "invalid operand to %%s code"
 msgstr "fr30_print_operand: virheellinen %%x-koodi"
 
-#: config/arc/arc.cc:4708 config/m32r/m32r.cc:2112
+#: config/arc/arc.cc:4715 config/m32r/m32r.cc:2112
 #, c-format
 msgid "invalid operand to %%R code"
 msgstr "virheellinen %%R-operandi"
 
-#: config/arc/arc.cc:4784 config/m32r/m32r.cc:2135
+#: config/arc/arc.cc:4791 config/m32r/m32r.cc:2135
 #, c-format
 msgid "invalid operand to %%H/%%L code"
 msgstr "virheellinen %%H/%%L-operandi"
 
-#: config/arc/arc.cc:4852 config/m32r/m32r.cc:2206
+#: config/arc/arc.cc:4859 config/m32r/m32r.cc:2206
 #, c-format
 msgid "invalid operand to %%U code"
 msgstr "virheellinen %%U-operandi"
 
-#: config/arc/arc.cc:4864
+#: config/arc/arc.cc:4871
 #, c-format
 msgid "invalid operand to %%V code"
 msgstr "virheellinen %%V-operandi"
 
-#: config/arc/arc.cc:4921
+#: config/arc/arc.cc:4928
 #, c-format
 msgid "invalid operand to %%O code"
 msgstr "virheellinen %%O-operandi"
 
 #. Unknown flag.
 #. Undocumented flag.
-#: config/arc/arc.cc:4947 config/epiphany/epiphany.cc:1309
+#: config/arc/arc.cc:4954 config/epiphany/epiphany.cc:1309
 #: config/m32r/m32r.cc:2233 config/nds32/nds32.cc:3517
 #: config/sparc/sparc.cc:9636
 #, fuzzy, c-format
 msgid "invalid operand output code"
 msgstr "fr30_print_operand: virheellinen %%x-koodi"
 
-#: config/arc/arc.cc:6487
+#: config/arc/arc.cc:6494
 #, fuzzy, c-format
 msgid "invalid UNSPEC as operand: %d"
 msgstr "virheellinen lauseke kohdemuuttujana"
 
-#: config/arc/arc.cc:6703
+#: config/arc/arc.cc:6710
 #, fuzzy
 msgid "unrecognized supposed constant"
 msgstr "tunnistamaton rekisterinimi %qs"
 
-#: config/arm/arm.cc:20769 config/arm/arm.cc:20794 config/arm/arm.cc:20804
-#: config/arm/arm.cc:20813 config/arm/arm.cc:20822
+#: config/arm/arm.cc:20839 config/arm/arm.cc:20864 config/arm/arm.cc:20874
+#: config/arm/arm.cc:20883 config/arm/arm.cc:20892
 #, fuzzy, c-format
 msgid "invalid shift operand"
 msgstr "virheellinen lauseke kohdemuuttujana"
 
-#: config/arm/arm.cc:23678 config/arm/arm.cc:23696
+#: config/arm/arm.cc:23748 config/arm/arm.cc:23766
 #, fuzzy, c-format
 msgid "predicated Thumb instruction"
 msgstr "Virheellinen käsky"
 
-#: config/arm/arm.cc:23684
+#: config/arm/arm.cc:23754
 #, fuzzy, c-format
 msgid "predicated instruction in conditional sequence"
 msgstr "ehtolausekkeessa on tyyppiristiriita"
 
-#: config/arm/arm.cc:23802 config/arm/arm.cc:23815 config/arm/arm.cc:23840
+#: config/arm/arm.cc:23872 config/arm/arm.cc:23885 config/arm/arm.cc:23910
 #: config/nios2/nios2.cc:3081
 #, fuzzy, c-format
 msgid "Unsupported operand for code '%c'"
 msgstr "fr30_print_operand: tuntematon koodi"
 
-#: config/arm/arm.cc:23917 config/arm/arm.cc:23939 config/arm/arm.cc:23949
-#: config/arm/arm.cc:23959 config/arm/arm.cc:23969 config/arm/arm.cc:24008
-#: config/arm/arm.cc:24026 config/arm/arm.cc:24051 config/arm/arm.cc:24066
-#: config/arm/arm.cc:24093 config/arm/arm.cc:24100 config/arm/arm.cc:24118
-#: config/arm/arm.cc:24125 config/arm/arm.cc:24133 config/arm/arm.cc:24154
-#: config/arm/arm.cc:24161 config/arm/arm.cc:24352 config/arm/arm.cc:24359
-#: config/arm/arm.cc:24386 config/arm/arm.cc:24393 config/bfin/bfin.cc:1441
+#: config/arm/arm.cc:23987 config/arm/arm.cc:24009 config/arm/arm.cc:24019
+#: config/arm/arm.cc:24029 config/arm/arm.cc:24039 config/arm/arm.cc:24078
+#: config/arm/arm.cc:24096 config/arm/arm.cc:24121 config/arm/arm.cc:24136
+#: config/arm/arm.cc:24163 config/arm/arm.cc:24170 config/arm/arm.cc:24188
+#: config/arm/arm.cc:24195 config/arm/arm.cc:24203 config/arm/arm.cc:24224
+#: config/arm/arm.cc:24231 config/arm/arm.cc:24422 config/arm/arm.cc:24429
+#: config/arm/arm.cc:24456 config/arm/arm.cc:24463 config/bfin/bfin.cc:1441
 #: config/bfin/bfin.cc:1448 config/bfin/bfin.cc:1455 config/bfin/bfin.cc:1462
 #: config/bfin/bfin.cc:1471 config/bfin/bfin.cc:1478 config/bfin/bfin.cc:1485
 #: config/bfin/bfin.cc:1492 config/nds32/nds32.cc:3543
@@ -18472,13 +18549,13 @@ msgstr "fr30_print_operand: tuntematon koodi"
 msgid "invalid operand for code '%c'"
 msgstr "fr30_print_operand: virheellinen %%x-koodi"
 
-#: config/arm/arm.cc:24021
+#: config/arm/arm.cc:24091
 #, fuzzy, c-format
 msgid "instruction never executed"
 msgstr "kutsu  %2d ei suoritettu koskaan\n"
 
 #. Former Maverick support, removed after GCC-4.7.
-#: config/arm/arm.cc:24042
+#: config/arm/arm.cc:24112
 #, fuzzy, c-format
 msgid "obsolete Maverick format code '%c'"
 msgstr "fr30_print_operand: tuntematon koodi"
@@ -18614,7 +18691,7 @@ msgstr "odottamaton siirros"
 #: config/cris/cris.cc:775 config/ft32/ft32.cc:110 config/moxie/moxie.cc:108
 #: final.cc:3233 final.cc:3235 fold-const.cc:277 gcc.cc:6153 gcc.cc:6167
 #: rtl-error.cc:101 toplev.cc:322 vr-values.cc:2383 cp/logic.cc:312
-#: cp/logic.cc:314 cp/typeck.cc:7292 d/d-convert.cc:237
+#: cp/logic.cc:314 cp/typeck.cc:7306 d/d-convert.cc:237
 #: go/go-gcc-diagnostics.cc:28 go/go-gcc-diagnostics.cc:37
 #: go/go-gcc-diagnostics.cc:45 go/go-gcc-diagnostics.cc:53
 #: lto/lto-object.cc:180 lto/lto-object.cc:277 lto/lto-object.cc:334
@@ -18889,97 +18966,97 @@ msgstr "virheellinen rotate-käsky"
 msgid "Expected register or constant integer."
 msgstr "Odotettiin nimetöntä rajapintaa kohdassa %C"
 
-#: config/i386/i386.cc:12344
+#: config/i386/i386.cc:12360
 #, fuzzy, c-format
 msgid "invalid UNSPEC as operand"
 msgstr "virheellinen const_double-operandi"
 
-#: config/i386/i386.cc:12883
+#: config/i386/i386.cc:12899
 #, c-format
 msgid "invalid use of register '%s'"
 msgstr "virheellinen rekisterin ”%s” käyttö"
 
-#: config/i386/i386.cc:12888
+#: config/i386/i386.cc:12904
 #, fuzzy, c-format
 msgid "invalid use of asm flag output"
 msgstr "virheellinen lvalue asm-tulosteessa %d"
 
-#: config/i386/i386.cc:13121
+#: config/i386/i386.cc:13137
 #, fuzzy, c-format
 msgid "invalid operand size for operand code 'O'"
 msgstr "fr30_print_operand: virheellinen %%x-koodi"
 
-#: config/i386/i386.cc:13156
+#: config/i386/i386.cc:13172
 #, fuzzy, c-format
 msgid "invalid operand size for operand code 'z'"
 msgstr "fr30_print_operand: virheellinen %%x-koodi"
 
-#: config/i386/i386.cc:13225
+#: config/i386/i386.cc:13241
 #, fuzzy, c-format
 msgid "invalid operand type used with operand code 'Z'"
 msgstr "epäkelvot operandit binääriselle %s-operaatiolle"
 
-#: config/i386/i386.cc:13230
+#: config/i386/i386.cc:13246
 #, fuzzy, c-format
 msgid "invalid operand size for operand code 'Z'"
 msgstr "fr30_print_operand: virheellinen %%x-koodi"
 
-#: config/i386/i386.cc:13307
+#: config/i386/i386.cc:13323
 #, fuzzy, c-format
 msgid "operand is not a condition code, invalid operand code 'Y'"
 msgstr "fr30_print_operand: virheellinen %%F-koodi"
 
-#: config/i386/i386.cc:13386
+#: config/i386/i386.cc:13402
 #, fuzzy, c-format
 msgid "operand is not a condition code, invalid operand code 'D'"
 msgstr "fr30_print_operand: virheellinen %%x-koodi"
 
-#: config/i386/i386.cc:13404
+#: config/i386/i386.cc:13420
 #, fuzzy, c-format
 msgid "operand is not a condition code, invalid operand code '%c'"
 msgstr "fr30_print_operand: virheellinen %%x-koodi"
 
-#: config/i386/i386.cc:13417
+#: config/i386/i386.cc:13433
 #, fuzzy, c-format
 msgid "operand is not an offsettable memory reference, invalid operand code 'H'"
 msgstr "fr30_print_operand: virheellinen %%F-koodi"
 
-#: config/i386/i386.cc:13432
+#: config/i386/i386.cc:13448
 #, fuzzy, c-format
 msgid "operand is not an integer, invalid operand code 'K'"
 msgstr "fr30_print_operand: virheellinen %%F-koodi"
 
-#: config/i386/i386.cc:13460
+#: config/i386/i386.cc:13476
 #, fuzzy, c-format
 msgid "operand is not a specific integer, invalid operand code 'r'"
 msgstr "fr30_print_operand: virheellinen %%F-koodi"
 
-#: config/i386/i386.cc:13478
+#: config/i386/i386.cc:13494
 #, fuzzy, c-format
 msgid "operand is not an integer, invalid operand code 'R'"
 msgstr "fr30_print_operand: virheellinen %%F-koodi"
 
-#: config/i386/i386.cc:13501
+#: config/i386/i386.cc:13517
 #, fuzzy, c-format
 msgid "operand is not a specific integer, invalid operand code 'R'"
 msgstr "fr30_print_operand: virheellinen %%F-koodi"
 
-#: config/i386/i386.cc:13605
+#: config/i386/i386.cc:13621
 #, fuzzy, c-format
 msgid "invalid operand code '%c'"
 msgstr "fr30_print_operand: virheellinen %%x-koodi"
 
-#: config/i386/i386.cc:13667 config/i386/i386.cc:14056
+#: config/i386/i386.cc:13683 config/i386/i386.cc:14072
 #, fuzzy, c-format
 msgid "invalid constraints for operand"
 msgstr "virheellinen lauseke kohdemuuttujana"
 
-#: config/i386/i386.cc:13768
+#: config/i386/i386.cc:13784
 #, fuzzy, c-format
 msgid "invalid vector immediate"
 msgstr "Muotoillun tulosteen hallinta:"
 
-#: config/i386/i386.cc:16847
+#: config/i386/i386.cc:16791
 #, fuzzy
 msgid "unknown insn mode"
 msgstr "tuntematon move-käsky:"
@@ -19015,7 +19092,7 @@ msgstr "Virheellinen operaatiokoodi"
 msgid "invalid %%P operand"
 msgstr "virheellinen %%P-operandi"
 
-#: config/iq2000/iq2000.cc:3134 config/rs6000/rs6000.cc:13864
+#: config/iq2000/iq2000.cc:3134 config/rs6000/rs6000.cc:13910
 #, c-format
 msgid "invalid %%p value"
 msgstr "virheellinen %%p-arvo"
@@ -19043,6 +19120,30 @@ msgstr ""
 msgid "invalid addressing mode"
 msgstr "virheellinen %%G-tila"
 
+#: config/loongarch/loongarch.cc:4237 config/loongarch/loongarch.cc:4259
+#: config/loongarch/loongarch.cc:4451 config/mips/mips.cc:9016
+#: config/mips/mips.cc:9043 config/mips/mips.cc:9226
+#, fuzzy, c-format
+msgid "'%%%c' is not a valid operand prefix"
+msgstr "Nolla ei ole kelvollinen lausekenimiö kohdassa %C"
+
+#: config/loongarch/loongarch.cc:4368 config/loongarch/loongarch.cc:4375
+#: config/loongarch/loongarch.cc:4382 config/loongarch/loongarch.cc:4389
+#: config/loongarch/loongarch.cc:4399 config/loongarch/loongarch.cc:4402
+#: config/loongarch/loongarch.cc:4414 config/loongarch/loongarch.cc:4417
+#: config/loongarch/loongarch.cc:4482 config/loongarch/loongarch.cc:4497
+#: config/loongarch/loongarch.cc:4506 config/mips/mips.cc:9115
+#: config/mips/mips.cc:9122 config/mips/mips.cc:9129 config/mips/mips.cc:9136
+#: config/mips/mips.cc:9149 config/mips/mips.cc:9156 config/mips/mips.cc:9166
+#: config/mips/mips.cc:9169 config/mips/mips.cc:9181 config/mips/mips.cc:9184
+#: config/mips/mips.cc:9244 config/mips/mips.cc:9251 config/mips/mips.cc:9272
+#: config/mips/mips.cc:9287 config/mips/mips.cc:9306 config/mips/mips.cc:9315
+#: config/riscv/riscv.cc:3557 config/riscv/riscv.cc:3686
+#: config/riscv/riscv.cc:3692 config/riscv/riscv.cc:3701
+#, c-format
+msgid "invalid use of '%%%c'"
+msgstr "virheellinen ”%%%c”:n käyttö"
+
 #: config/m32r/m32r.cc:2144
 #, fuzzy
 msgid "bad insn for 'A'"
@@ -19074,7 +19175,7 @@ msgid "post-increment address is not a register"
 msgstr "halutaan rekisterimuuttujan %qD osoite"
 
 #: config/m32r/m32r.cc:2336 config/m32r/m32r.cc:2351
-#: config/rs6000/rs6000.cc:20490
+#: config/rs6000/rs6000.cc:20541
 msgid "bad address"
 msgstr "virheellinen osoite"
 
@@ -19119,23 +19220,6 @@ msgstr "virheellinen %%G-tila"
 msgid "letter %c was found & insn was not CONST_INT"
 msgstr ""
 
-#: config/mips/mips.cc:8936 config/mips/mips.cc:8963 config/mips/mips.cc:9146
-#, fuzzy, c-format
-msgid "'%%%c' is not a valid operand prefix"
-msgstr "Nolla ei ole kelvollinen lausekenimiö kohdassa %C"
-
-#: config/mips/mips.cc:9035 config/mips/mips.cc:9042 config/mips/mips.cc:9049
-#: config/mips/mips.cc:9056 config/mips/mips.cc:9069 config/mips/mips.cc:9076
-#: config/mips/mips.cc:9086 config/mips/mips.cc:9089 config/mips/mips.cc:9101
-#: config/mips/mips.cc:9104 config/mips/mips.cc:9164 config/mips/mips.cc:9171
-#: config/mips/mips.cc:9192 config/mips/mips.cc:9207 config/mips/mips.cc:9226
-#: config/mips/mips.cc:9235 config/riscv/riscv.cc:3557
-#: config/riscv/riscv.cc:3686 config/riscv/riscv.cc:3692
-#: config/riscv/riscv.cc:3701
-#, c-format
-msgid "invalid use of '%%%c'"
-msgstr "virheellinen ”%%%c”:n käyttö"
-
 #: config/mmix/mmix.cc:1635 config/mmix/mmix.cc:1756
 #, fuzzy
 msgid "MMIX Internal: Expected a CONST_INT, not this"
@@ -19312,176 +19396,176 @@ msgstr "valitsin --resource vaatii valitsimen -o"
 msgid "%<-mquad-memory%> is not available in little endian mode"
 msgstr "Tuota little-endian-koodia"
 
-#: config/rs6000/rs6000.cc:10923
+#: config/rs6000/rs6000.cc:10963
 #, fuzzy
 msgid "bad move"
 msgstr "Siirrä alas"
 
-#: config/rs6000/rs6000.cc:13494
+#: config/rs6000/rs6000.cc:13540
 #, fuzzy
 msgid "Bad 128-bit move"
 msgstr "Käytä 128-bittistä long double -tyyppiä"
 
-#: config/rs6000/rs6000.cc:13674
+#: config/rs6000/rs6000.cc:13720
 #, fuzzy, c-format
 msgid "invalid %%A value"
 msgstr "virheellinen %%J-arvo"
 
-#: config/rs6000/rs6000.cc:13683 config/xtensa/xtensa.cc:2403
+#: config/rs6000/rs6000.cc:13729 config/xtensa/xtensa.cc:2403
 #, c-format
 msgid "invalid %%D value"
 msgstr "virheellinen %%D-arvo"
 
-#: config/rs6000/rs6000.cc:13698
+#: config/rs6000/rs6000.cc:13744
 #, fuzzy, c-format
 msgid "invalid %%e value"
 msgstr "virheellinen %%E-arvo"
 
-#: config/rs6000/rs6000.cc:13719
+#: config/rs6000/rs6000.cc:13765
 #, c-format
 msgid "invalid %%f value"
 msgstr "virheellinen %%f-arvo"
 
-#: config/rs6000/rs6000.cc:13728
+#: config/rs6000/rs6000.cc:13774
 #, c-format
 msgid "invalid %%F value"
 msgstr "virheellinen %%F-arvo"
 
-#: config/rs6000/rs6000.cc:13737
+#: config/rs6000/rs6000.cc:13783
 #, c-format
 msgid "invalid %%G value"
 msgstr "virheellinen %%G-arvo"
 
-#: config/rs6000/rs6000.cc:13772
+#: config/rs6000/rs6000.cc:13818
 #, c-format
 msgid "invalid %%j code"
 msgstr "virheellinen %%j-koodi"
 
-#: config/rs6000/rs6000.cc:13782
+#: config/rs6000/rs6000.cc:13828
 #, c-format
 msgid "invalid %%J code"
 msgstr "virheellinen %%J-koodi"
 
-#: config/rs6000/rs6000.cc:13792
+#: config/rs6000/rs6000.cc:13838
 #, c-format
 msgid "invalid %%k value"
 msgstr "virheellinen %%k-arvo"
 
-#: config/rs6000/rs6000.cc:13807 config/xtensa/xtensa.cc:2446
+#: config/rs6000/rs6000.cc:13853 config/xtensa/xtensa.cc:2446
 #, c-format
 msgid "invalid %%K value"
 msgstr "virheellinen %%K-arvo"
 
-#: config/rs6000/rs6000.cc:13854
+#: config/rs6000/rs6000.cc:13900
 #, c-format
 msgid "invalid %%O value"
 msgstr "virheellinen %%O-arvo"
 
-#: config/rs6000/rs6000.cc:13901
+#: config/rs6000/rs6000.cc:13947
 #, c-format
 msgid "invalid %%q value"
 msgstr "virheellinen %%q-arvo"
 
-#: config/rs6000/rs6000.cc:13943
+#: config/rs6000/rs6000.cc:13989
 #, fuzzy, c-format
 msgid "invalid %%t value"
 msgstr "virheellinen %%J-arvo"
 
-#: config/rs6000/rs6000.cc:13960
+#: config/rs6000/rs6000.cc:14006
 #, c-format
 msgid "invalid %%T value"
 msgstr "virheellinen %%T-arvo"
 
-#: config/rs6000/rs6000.cc:13972
+#: config/rs6000/rs6000.cc:14018
 #, c-format
 msgid "invalid %%u value"
 msgstr "virheellinen %%u-arvo"
 
-#: config/rs6000/rs6000.cc:13986 config/xtensa/xtensa.cc:2415
+#: config/rs6000/rs6000.cc:14032 config/xtensa/xtensa.cc:2415
 #, c-format
 msgid "invalid %%v value"
 msgstr "virheellinen %%v-arvo"
 
-#: config/rs6000/rs6000.cc:14036
+#: config/rs6000/rs6000.cc:14082
 #, fuzzy, c-format
 msgid "invalid %%V value"
 msgstr "virheellinen %%J-arvo"
 
-#: config/rs6000/rs6000.cc:14053 config/xtensa/xtensa.cc:2467
+#: config/rs6000/rs6000.cc:14099 config/xtensa/xtensa.cc:2467
 #, c-format
 msgid "invalid %%x value"
 msgstr "virheellinen %%x-arvo"
 
-#: config/rs6000/rs6000.cc:14110
+#: config/rs6000/rs6000.cc:14156
 #, fuzzy, c-format
 msgid "invalid %%z value"
 msgstr "virheellinen %%J-arvo"
 
-#: config/rs6000/rs6000.cc:14179
+#: config/rs6000/rs6000.cc:14225
 #, fuzzy, c-format
 msgid "invalid %%y value, try using the 'Z' constraint"
 msgstr "virheellinen vektoripermutaatiovakio"
 
-#: config/rs6000/rs6000.cc:15047
+#: config/rs6000/rs6000.cc:15093
 #, fuzzy
 msgid "Invalid mixing of IEEE 128-bit and IBM 128-bit floating point types"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: config/rs6000/rs6000.cc:23874
+#: config/rs6000/rs6000.cc:23925
 msgid "AltiVec argument passed to unprototyped function"
 msgstr "AltiVec-argumentti välitetty funktiolle, jolla ei ole prototyyppiä"
 
-#: config/rs6000/rs6000.cc:27522
+#: config/rs6000/rs6000.cc:27573
 #, fuzzy
 msgid "Could not generate addis value for fusion"
 msgstr "Älä luo #line-direktiivejä"
 
-#: config/rs6000/rs6000.cc:27591
+#: config/rs6000/rs6000.cc:27642
 #, fuzzy
 msgid "Unable to generate load/store offset for fusion"
 msgstr "%s: Tätä tiedostoa ei voitu varmuuskopioida"
 
-#: config/rs6000/rs6000.cc:27667
+#: config/rs6000/rs6000.cc:27718
 #, fuzzy
 msgid "Bad GPR fusion"
 msgstr "Virheelliset merkit"
 
-#: config/rs6000/rs6000.cc:28207
+#: config/rs6000/rs6000.cc:28257
 #, fuzzy
 msgid "invalid conversion from type %<__vector_quad%>"
 msgstr "virheellinen muunnos tyypistä %qT tyypiksi %qT"
 
-#: config/rs6000/rs6000.cc:28209
+#: config/rs6000/rs6000.cc:28259
 #, fuzzy
 msgid "invalid conversion to type %<__vector_quad%>"
 msgstr "virheellinen muunnos tyypistä %qT tyyppiin %qT"
 
-#: config/rs6000/rs6000.cc:28211
+#: config/rs6000/rs6000.cc:28261
 #, fuzzy
 msgid "invalid conversion from type %<__vector_pair%>"
 msgstr "virheellinen muunnos tyypistä %qT tyypiksi %qT"
 
-#: config/rs6000/rs6000.cc:28213
+#: config/rs6000/rs6000.cc:28263
 #, fuzzy
 msgid "invalid conversion to type %<__vector_pair%>"
 msgstr "virheellinen muunnos gimple-kutsussa"
 
-#: config/rs6000/rs6000.cc:28228
+#: config/rs6000/rs6000.cc:28278
 #, fuzzy
 msgid "invalid conversion from type %<* __vector_quad%>"
 msgstr "virheellinen muunnos tyypistä %qT tyypiksi %qT"
 
-#: config/rs6000/rs6000.cc:28230
+#: config/rs6000/rs6000.cc:28280
 #, fuzzy
 msgid "invalid conversion to type %<* __vector_quad%>"
 msgstr "virheellinen muunnos tyypistä %qT tyyppiin %qT"
 
-#: config/rs6000/rs6000.cc:28232
+#: config/rs6000/rs6000.cc:28282
 #, fuzzy
 msgid "invalid conversion from type %<* __vector_pair%>"
 msgstr "virheellinen muunnos tyypistä %qT tyypiksi %qT"
 
-#: config/rs6000/rs6000.cc:28234
+#: config/rs6000/rs6000.cc:28284
 #, fuzzy
 msgid "invalid conversion to type %<* __vector_pair%>"
 msgstr "virheellinen muunnos gimple-kutsussa"
@@ -19857,14 +19941,14 @@ msgstr "({nimetön})"
 #: c/c-parser.cc:7172 c/c-parser.cc:11078 c/c-parser.cc:11113
 #: c/c-parser.cc:11144 c/c-parser.cc:11191 c/c-parser.cc:11372
 #: c/c-parser.cc:12204 c/c-parser.cc:12279 c/c-parser.cc:12322
-#: c/c-parser.cc:18429 c/c-parser.cc:18509 c/c-parser.cc:18839
-#: c/c-parser.cc:18865 c/c-parser.cc:18888 c/c-parser.cc:19338
-#: c/c-parser.cc:19382 c/gimple-parser.cc:392 c/gimple-parser.cc:433
-#: c/gimple-parser.cc:442 c/gimple-parser.cc:651 c/gimple-parser.cc:2223
-#: c/gimple-parser.cc:2260 c/gimple-parser.cc:2339 c/gimple-parser.cc:2366
+#: c/c-parser.cc:18438 c/c-parser.cc:18518 c/c-parser.cc:18848
+#: c/c-parser.cc:18874 c/c-parser.cc:18897 c/c-parser.cc:19347
+#: c/c-parser.cc:19391 c/gimple-parser.cc:396 c/gimple-parser.cc:437
+#: c/gimple-parser.cc:446 c/gimple-parser.cc:655 c/gimple-parser.cc:2245
+#: c/gimple-parser.cc:2282 c/gimple-parser.cc:2361 c/gimple-parser.cc:2388
 #: c/c-parser.cc:3279 c/c-parser.cc:3466 c/c-parser.cc:3499
-#: c/c-parser.cc:11365 c/gimple-parser.cc:2049 c/gimple-parser.cc:2088
-#: cp/parser.cc:15233 cp/parser.cc:32259 cp/parser.cc:32872
+#: c/c-parser.cc:11365 c/gimple-parser.cc:2053 c/gimple-parser.cc:2110
+#: cp/parser.cc:15227 cp/parser.cc:32265 cp/parser.cc:32878
 #, fuzzy, gcc-internal-format
 msgid "expected %<;%>"
 msgstr "”)” oli odotus"
@@ -19873,19 +19957,19 @@ msgstr "”)” oli odotus"
 #: c/c-parser.cc:4337 c/c-parser.cc:4699 c/c-parser.cc:4720 c/c-parser.cc:4729
 #: c/c-parser.cc:4780 c/c-parser.cc:4789 c/c-parser.cc:8541 c/c-parser.cc:8608
 #: c/c-parser.cc:9115 c/c-parser.cc:9140 c/c-parser.cc:9174 c/c-parser.cc:9283
-#: c/c-parser.cc:10104 c/c-parser.cc:11479 c/c-parser.cc:13813
-#: c/c-parser.cc:14527 c/c-parser.cc:14586 c/c-parser.cc:14641
-#: c/c-parser.cc:16253 c/c-parser.cc:16373 c/c-parser.cc:17693
-#: c/c-parser.cc:18930 c/c-parser.cc:19346 c/c-parser.cc:22313
-#: c/c-parser.cc:22391 c/gimple-parser.cc:195 c/gimple-parser.cc:198
-#: c/gimple-parser.cc:527 c/gimple-parser.cc:561 c/gimple-parser.cc:566
-#: c/gimple-parser.cc:735 c/gimple-parser.cc:832 c/gimple-parser.cc:1034
-#: c/gimple-parser.cc:1060 c/gimple-parser.cc:1063 c/gimple-parser.cc:1194
-#: c/gimple-parser.cc:1321 c/gimple-parser.cc:1447 c/gimple-parser.cc:1463
-#: c/gimple-parser.cc:1479 c/gimple-parser.cc:1501 c/gimple-parser.cc:1531
-#: c/gimple-parser.cc:1557 c/gimple-parser.cc:1763 c/gimple-parser.cc:1971
-#: c/gimple-parser.cc:1991 c/gimple-parser.cc:2133 c/gimple-parser.cc:2296
-#: c/c-parser.cc:7124 cp/parser.cc:32920
+#: c/c-parser.cc:10104 c/c-parser.cc:11479 c/c-parser.cc:13822
+#: c/c-parser.cc:14536 c/c-parser.cc:14595 c/c-parser.cc:14650
+#: c/c-parser.cc:16262 c/c-parser.cc:16382 c/c-parser.cc:17702
+#: c/c-parser.cc:18939 c/c-parser.cc:19355 c/c-parser.cc:22322
+#: c/c-parser.cc:22400 c/gimple-parser.cc:195 c/gimple-parser.cc:198
+#: c/gimple-parser.cc:531 c/gimple-parser.cc:565 c/gimple-parser.cc:570
+#: c/gimple-parser.cc:739 c/gimple-parser.cc:836 c/gimple-parser.cc:1038
+#: c/gimple-parser.cc:1064 c/gimple-parser.cc:1067 c/gimple-parser.cc:1198
+#: c/gimple-parser.cc:1325 c/gimple-parser.cc:1451 c/gimple-parser.cc:1467
+#: c/gimple-parser.cc:1483 c/gimple-parser.cc:1505 c/gimple-parser.cc:1535
+#: c/gimple-parser.cc:1561 c/gimple-parser.cc:1767 c/gimple-parser.cc:1975
+#: c/gimple-parser.cc:1995 c/gimple-parser.cc:2155 c/gimple-parser.cc:2318
+#: c/c-parser.cc:7124 cp/parser.cc:32926
 #, fuzzy, gcc-internal-format
 msgid "expected %<)%>"
 msgstr "”)” oli odotus"
@@ -19893,7 +19977,7 @@ msgstr "”)” oli odotus"
 #: c/c-parser.cc:4108 c/c-parser.cc:4840 c/c-parser.cc:4988 c/c-parser.cc:5014
 #: c/c-parser.cc:5015 c/c-parser.cc:5429 c/c-parser.cc:5465 c/c-parser.cc:7223
 #: c/c-parser.cc:9274 c/c-parser.cc:10220 c/c-parser.cc:10509
-#: c/c-parser.cc:13216 c/gimple-parser.cc:1740 cp/parser.cc:32884
+#: c/c-parser.cc:13225 c/gimple-parser.cc:1744 cp/parser.cc:32890
 #, fuzzy, gcc-internal-format
 msgid "expected %<]%>"
 msgstr "”)” oli odotus"
@@ -19904,58 +19988,58 @@ msgid "expected %<;%>, %<,%> or %<)%>"
 msgstr "odotettiin %<,%>, %<;%> tai %<}%>"
 
 #. Look for the two `(' tokens.
-#: c/c-parser.cc:4749 c/c-parser.cc:4754 c/c-parser.cc:13796
-#: c/c-parser.cc:14616 c/c-parser.cc:21672 c/c-parser.cc:22121
-#: c/c-parser.cc:22334 c/gimple-parser.cc:180 c/gimple-parser.cc:474
-#: c/gimple-parser.cc:513 c/gimple-parser.cc:545 c/gimple-parser.cc:802
-#: c/gimple-parser.cc:1028 c/gimple-parser.cc:1054 c/gimple-parser.cc:1181
-#: c/gimple-parser.cc:1316 c/gimple-parser.cc:1437 c/gimple-parser.cc:1497
-#: c/gimple-parser.cc:1515 c/gimple-parser.cc:1550 c/gimple-parser.cc:1940
-#: c/gimple-parser.cc:1951 c/gimple-parser.cc:1957 c/gimple-parser.cc:2122
-#: c/gimple-parser.cc:2293 c/c-parser.cc:13618 cp/parser.cc:32875
+#: c/c-parser.cc:4749 c/c-parser.cc:4754 c/c-parser.cc:13805
+#: c/c-parser.cc:14625 c/c-parser.cc:21681 c/c-parser.cc:22130
+#: c/c-parser.cc:22343 c/gimple-parser.cc:180 c/gimple-parser.cc:478
+#: c/gimple-parser.cc:517 c/gimple-parser.cc:549 c/gimple-parser.cc:806
+#: c/gimple-parser.cc:1032 c/gimple-parser.cc:1058 c/gimple-parser.cc:1185
+#: c/gimple-parser.cc:1320 c/gimple-parser.cc:1441 c/gimple-parser.cc:1501
+#: c/gimple-parser.cc:1519 c/gimple-parser.cc:1554 c/gimple-parser.cc:1944
+#: c/gimple-parser.cc:1955 c/gimple-parser.cc:1961 c/gimple-parser.cc:2144
+#: c/gimple-parser.cc:2315 c/c-parser.cc:13627 cp/parser.cc:32881
 #, fuzzy, gcc-internal-format
 msgid "expected %<(%>"
 msgstr "”)” oli odotus"
 
 #: c/c-parser.cc:4984 c/c-parser.cc:4986 c/c-parser.cc:13133
-#: cp/parser.cc:32887 cp/parser.cc:36617 go/gofrontend/embed.cc:439
+#: cp/parser.cc:32893 cp/parser.cc:36623 go/gofrontend/embed.cc:439
 #, fuzzy, gcc-internal-format
 msgid "expected %<[%>"
 msgstr "”)” oli odotus"
 
-#: c/c-parser.cc:5600 c/c-parser.cc:11708 c/c-parser.cc:18404
-#: c/c-parser.cc:18490 c/c-parser.cc:19142 c/c-parser.cc:20024
-#: c/c-parser.cc:23369 c/gimple-parser.cc:385 c/gimple-parser.cc:2299
+#: c/c-parser.cc:5600 c/c-parser.cc:11708 c/c-parser.cc:18413
+#: c/c-parser.cc:18499 c/c-parser.cc:19151 c/c-parser.cc:20033
+#: c/c-parser.cc:23378 c/gimple-parser.cc:389 c/gimple-parser.cc:2321
 #: c/c-parser.cc:3267 c/c-parser.cc:3489 c/c-parser.cc:11260
-#: cp/parser.cc:20871 cp/parser.cc:32881 go/gofrontend/embed.cc:370
+#: cp/parser.cc:20869 cp/parser.cc:32887 go/gofrontend/embed.cc:370
 #, fuzzy, gcc-internal-format
 msgid "expected %<{%>"
 msgstr "”)” oli odotus"
 
 #: c/c-parser.cc:5890 c/c-parser.cc:5899 c/c-parser.cc:7656 c/c-parser.cc:8745
 #: c/c-parser.cc:11472 c/c-parser.cc:11868 c/c-parser.cc:11932
-#: c/c-parser.cc:13198 c/c-parser.cc:14218 c/c-parser.cc:14444
-#: c/c-parser.cc:14962 c/c-parser.cc:15063 c/c-parser.cc:15597
-#: c/c-parser.cc:15915 c/c-parser.cc:15991 c/c-parser.cc:16103
-#: c/c-parser.cc:21534 c/c-parser.cc:22178 c/c-parser.cc:22237
-#: c/gimple-parser.cc:568 c/gimple-parser.cc:873 c/gimple-parser.cc:2347
-#: c/gimple-parser.cc:2374 c/c-parser.cc:7131 c/c-parser.cc:13721
-#: c/c-parser.cc:15068 cp/parser.cc:32914 cp/parser.cc:34593
-#: cp/parser.cc:37466 cp/parser.cc:38341 go/gofrontend/embed.cc:403
+#: c/c-parser.cc:13207 c/c-parser.cc:14227 c/c-parser.cc:14453
+#: c/c-parser.cc:14971 c/c-parser.cc:15072 c/c-parser.cc:15606
+#: c/c-parser.cc:15924 c/c-parser.cc:16000 c/c-parser.cc:16112
+#: c/c-parser.cc:21543 c/c-parser.cc:22187 c/c-parser.cc:22246
+#: c/gimple-parser.cc:572 c/gimple-parser.cc:877 c/gimple-parser.cc:2369
+#: c/gimple-parser.cc:2396 c/c-parser.cc:7131 c/c-parser.cc:13730
+#: c/c-parser.cc:15077 cp/parser.cc:32920 cp/parser.cc:34599
+#: cp/parser.cc:37472 cp/parser.cc:38347 go/gofrontend/embed.cc:403
 #, fuzzy, gcc-internal-format
 msgid "expected %<:%>"
 msgstr "”)” oli odotus"
 
-#: c/c-parser.cc:6681 cp/parser.cc:32801
+#: c/c-parser.cc:6681 cp/parser.cc:32807
 #, fuzzy, gcc-internal-format
 msgid "expected %<while%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
 #: c/c-parser.cc:8504 c/c-parser.cc:8696 c/c-parser.cc:9164 c/c-parser.cc:9207
-#: c/c-parser.cc:9345 c/c-parser.cc:10094 c/c-parser.cc:14621
-#: c/c-parser.cc:16059 c/gimple-parser.cc:1031 c/gimple-parser.cc:1057
-#: c/gimple-parser.cc:1185 c/gimple-parser.cc:1188 c/gimple-parser.cc:1519
-#: c/gimple-parser.cc:1525 cp/parser.cc:32257 cp/parser.cc:32890
+#: c/c-parser.cc:9345 c/c-parser.cc:10094 c/c-parser.cc:14630
+#: c/c-parser.cc:16068 c/gimple-parser.cc:1035 c/gimple-parser.cc:1061
+#: c/gimple-parser.cc:1189 c/gimple-parser.cc:1192 c/gimple-parser.cc:1523
+#: c/gimple-parser.cc:1529 cp/parser.cc:32263 cp/parser.cc:32896
 #, fuzzy, gcc-internal-format
 msgid "expected %<,%>"
 msgstr "”)” oli odotus"
@@ -19966,65 +20050,65 @@ msgid "expected %<.%>"
 msgstr "”)” oli odotus"
 
 #: c/c-parser.cc:10931 c/c-parser.cc:10963 c/c-parser.cc:11203
-#: cp/parser.cc:35167 cp/parser.cc:35188
+#: cp/parser.cc:35173 cp/parser.cc:35194
 #, fuzzy, gcc-internal-format
 msgid "expected %<@end%>"
 msgstr "odotettiin %<(%> tai rivin loppu"
 
-#: c/c-parser.cc:11621 c/gimple-parser.cc:1355 cp/parser.cc:32899
+#: c/c-parser.cc:11621 c/gimple-parser.cc:1359 cp/parser.cc:32905
 #, fuzzy, gcc-internal-format
 msgid "expected %<>%>"
 msgstr "”)” oli odotus"
 
-#: c/c-parser.cc:15157 c/c-parser.cc:16391 cp/parser.cc:32923
+#: c/c-parser.cc:15166 c/c-parser.cc:16400 cp/parser.cc:32929
 #, fuzzy, gcc-internal-format
 msgid "expected %<,%> or %<)%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
 #. All following cases are statements with LHS.
-#: c/c-parser.cc:15907 c/c-parser.cc:18297 c/c-parser.cc:18344
-#: c/c-parser.cc:18501 c/c-parser.cc:18849 c/c-parser.cc:19325
-#: c/c-parser.cc:21741 c/c-parser.cc:22375 c/gimple-parser.cc:726
-#: c/c-parser.cc:5488 c/c-parser.cc:18421 c/c-parser.cc:18645
-#: cp/parser.cc:32902 cp/parser.cc:40914 cp/parser.cc:41087
+#: c/c-parser.cc:15916 c/c-parser.cc:18306 c/c-parser.cc:18353
+#: c/c-parser.cc:18510 c/c-parser.cc:18858 c/c-parser.cc:19334
+#: c/c-parser.cc:21750 c/c-parser.cc:22384 c/gimple-parser.cc:730
+#: c/c-parser.cc:5488 c/c-parser.cc:18430 c/c-parser.cc:18654
+#: cp/parser.cc:32908 cp/parser.cc:40920 cp/parser.cc:41093
 #, fuzzy, gcc-internal-format
 msgid "expected %<=%>"
 msgstr "”)” oli odotus"
 
-#: c/c-parser.cc:18432 c/c-parser.cc:18512 c/c-parser.cc:18866
-#: c/c-parser.cc:19190 c/gimple-parser.cc:1573 c/gimple-parser.cc:1605
-#: c/gimple-parser.cc:1615 c/gimple-parser.cc:2384 cp/parser.cc:32878
-#: cp/parser.cc:35377
+#: c/c-parser.cc:18441 c/c-parser.cc:18521 c/c-parser.cc:18875
+#: c/c-parser.cc:19199 c/gimple-parser.cc:1577 c/gimple-parser.cc:1609
+#: c/gimple-parser.cc:1619 c/gimple-parser.cc:2406 cp/parser.cc:32884
+#: cp/parser.cc:35383
 #, fuzzy, gcc-internal-format
 msgid "expected %<}%>"
 msgstr "”)” oli odotus"
 
-#: c/c-parser.cc:18525 cp/parser.cc:41012
+#: c/c-parser.cc:18534 cp/parser.cc:41018
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<delete%>"
 msgid "expected %<else%>"
 msgstr "odotettiin %<delete%>"
 
-#: c/c-parser.cc:20069 c/c-parser.cc:20058 cp/parser.cc:43252
+#: c/c-parser.cc:20078 c/c-parser.cc:20067 cp/parser.cc:43258
 #, fuzzy, gcc-internal-format
 msgid "expected %<#pragma omp section%> or %<}%>"
 msgstr "odotettiin merkkijonoa ilmaisun %<#pragma message%> jälkeen"
 
-#: c/c-parser.cc:22946 cp/parser.cc:46770
+#: c/c-parser.cc:22955 cp/parser.cc:46776
 msgid "<message unknown at compile time>"
 msgstr ""
 
-#: c/c-typeck.cc:8487
+#: c/c-typeck.cc:8489
 msgid "(anonymous)"
 msgstr "(nimetön)"
 
-#: c/gimple-parser.cc:1344 cp/parser.cc:18240 cp/parser.cc:32896
+#: c/gimple-parser.cc:1348 cp/parser.cc:18235 cp/parser.cc:32902
 #, fuzzy, gcc-internal-format
 msgid "expected %<<%>"
 msgstr "”)” oli odotus"
 
-#: c/gimple-parser.cc:2343 c/gimple-parser.cc:2370 c/gimple-parser.cc:2209
-#: c/gimple-parser.cc:2246
+#: c/gimple-parser.cc:2365 c/gimple-parser.cc:2392 c/gimple-parser.cc:2231
+#: c/gimple-parser.cc:2268
 #, fuzzy, gcc-internal-format
 msgid "expected label"
 msgstr "odotettiin %<,%> tai %<;%>"
@@ -20034,30 +20118,30 @@ msgstr "odotettiin %<,%> tai %<;%>"
 msgid "candidate:"
 msgstr "ehdokas 1:"
 
-#: cp/call.cc:7724
+#: cp/call.cc:7735
 #, fuzzy
 msgid "  after user-defined conversion:"
 msgstr "Ota käyttöön käyttäjän määrittelemät käskyt"
 
-#: cp/call.cc:7863 cp/pt.cc:2055 cp/pt.cc:25566
+#: cp/call.cc:7874 cp/pt.cc:2055 cp/pt.cc:25614
 msgid "candidate is:"
 msgid_plural "candidates are:"
 msgstr[0] "ehdokas on:"
 msgstr[1] "ehdokkaat ovat:"
 
-#: cp/call.cc:12492
+#: cp/call.cc:12525
 msgid "candidate 1:"
 msgstr "ehdokas 1:"
 
-#: cp/call.cc:12493
+#: cp/call.cc:12526
 msgid "candidate 2:"
 msgstr "ehdokas 2:"
 
-#: cp/decl.cc:3396
+#: cp/decl.cc:3452
 msgid "jump to label %qD"
 msgstr "hyppy nimiöön %qD"
 
-#: cp/decl.cc:3397
+#: cp/decl.cc:3453
 msgid "jump to case label"
 msgstr "hyppy case-nimiöön"
 
@@ -20155,7 +20239,7 @@ msgstr "jäsennysvirhe malliargumenttien luettelossa"
 msgid "<statement>"
 msgstr "Ei välitetä lausenimiöstä tyhjässä lauseessa kohdassa %L"
 
-#: cp/error.cc:2218 cp/error.cc:3304 c-family/c-pretty-print.cc:2634
+#: cp/error.cc:2218 cp/error.cc:3304 c-family/c-pretty-print.cc:2644
 #, gcc-internal-format
 msgid "<unknown>"
 msgstr "<tuntematon>"
@@ -20285,40 +20369,40 @@ msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 msgid "%r%s:%d:%R   in %<constexpr%> expansion of %qs"
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: cp/parser.cc:6034
+#: cp/parser.cc:6032
 #, fuzzy
 msgid "parameter %qD may not appear in this context"
 msgstr "paikallinen muuttuja %qD ei voi esiintyä tässä yhteydessä"
 
-#: cp/parser.cc:6035
+#: cp/parser.cc:6033
 msgid "local variable %qD may not appear in this context"
 msgstr "paikallinen muuttuja %qD ei voi esiintyä tässä yhteydessä"
 
-#: cp/parser.cc:21677
+#: cp/parser.cc:21675
 #, fuzzy
 msgid "%<using enum%> only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:21680
+#: cp/parser.cc:21678
 #, fuzzy
 msgid "%<using enum%> of dependent type %qT"
 msgstr "virheellinen muunnos tyypistä %qT tyyppiin %qT"
 
-#: cp/parser.cc:21682
+#: cp/parser.cc:21680
 #, fuzzy
 msgid "%<using enum%> of non-enumeration type %q#T"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: cp/parser.cc:21684
+#: cp/parser.cc:21682
 #, fuzzy
 msgid "%<using enum%> of incomplete type %qT"
 msgstr "paluutyyppi %q#T on vaillinainen"
 
-#: cp/parser.cc:21686
+#: cp/parser.cc:21684
 msgid "%<using enum%> of %qT before its enum-specifier"
 msgstr ""
 
-#: cp/pt.cc:2053 cp/semantics.cc:5912
+#: cp/pt.cc:2053 cp/semantics.cc:5903
 msgid "candidates are:"
 msgstr "ehdokkaat ovat:"
 
@@ -20371,52 +20455,52 @@ msgstr "muunnos tyypistä %2$qT tyypiksi %1$qT"
 msgid "source type is not polymorphic"
 msgstr "lähde ei ole osoitin"
 
-#: cp/typeck.cc:6997 c/c-typeck.cc:4481
+#: cp/typeck.cc:7011 c/c-typeck.cc:4481
 #, gcc-internal-format
 msgid "wrong type argument to unary minus"
 msgstr "unaariselle miinus-operaatiolle annettu väärä tyyppiargumentti"
 
-#: cp/typeck.cc:6998 c/c-typeck.cc:4468
+#: cp/typeck.cc:7012 c/c-typeck.cc:4468
 #, gcc-internal-format
 msgid "wrong type argument to unary plus"
 msgstr "unaariselle plus-operaatiolle annettu väärä tyyppiargumentti"
 
-#: cp/typeck.cc:7025 c/c-typeck.cc:4525
+#: cp/typeck.cc:7039 c/c-typeck.cc:4525
 #, gcc-internal-format
 msgid "wrong type argument to bit-complement"
 msgstr "bittikomplementille annettu väärä tyyppiargumentti"
 
-#: cp/typeck.cc:7042 c/c-typeck.cc:4533
+#: cp/typeck.cc:7056 c/c-typeck.cc:4533
 #, gcc-internal-format
 msgid "wrong type argument to abs"
 msgstr "abs-funktiolle annettu väärä tyyppiargumentti"
 
-#: cp/typeck.cc:7054 c/c-typeck.cc:4555
+#: cp/typeck.cc:7068 c/c-typeck.cc:4555
 #, gcc-internal-format
 msgid "wrong type argument to conjugation"
 msgstr "konjugaatiolle annettu väärä tyyppiargumentti"
 
-#: cp/typeck.cc:7072
+#: cp/typeck.cc:7086
 #, fuzzy
 msgid "in argument to unary !"
 msgstr "unaariselle huutomerkille annettu väärä tyyppiargumentti"
 
-#: cp/typeck.cc:7118
+#: cp/typeck.cc:7132
 #, fuzzy
 msgid "no pre-increment operator for type"
 msgstr "lisäykselle annettu väärä tyyppiargumentti"
 
-#: cp/typeck.cc:7120
+#: cp/typeck.cc:7134
 #, fuzzy
 msgid "no post-increment operator for type"
 msgstr "lisäykselle annettu väärä tyyppiargumentti"
 
-#: cp/typeck.cc:7122
+#: cp/typeck.cc:7136
 #, fuzzy
 msgid "no pre-decrement operator for type"
 msgstr "vähennykselle annettu väärä tyyppiargumentti"
 
-#: cp/typeck.cc:7124
+#: cp/typeck.cc:7138
 #, fuzzy
 msgid "no post-decrement operator for type"
 msgstr "vähennykselle annettu väärä tyyppiargumentti"
@@ -20445,7 +20529,7 @@ msgstr "Liikaa argumentteja funktiolle %s kohdassa %L"
 msgid "arguments '%s' and '%s' for intrinsic '%s'"
 msgstr "Liikaa argumentteja funktiolle %s kohdassa %L"
 
-#: fortran/dump-parse-tree.cc:3548
+#: fortran/dump-parse-tree.cc:3553
 #, c-format
 msgid ""
 "/* Prototypes for external procedures generated from %s\n"
@@ -20494,27 +20578,27 @@ msgstr "Noudata ISO Fortran 2009 -standardia"
 msgid "Deleted feature:"
 msgstr "Poistettu ominaisuus:"
 
-#: fortran/expr.cc:3766
+#: fortran/expr.cc:3774
 #, fuzzy
 msgid "array assignment"
 msgstr "virheellinen taulukkosijoitus"
 
-#: fortran/frontend-passes.cc:2386
+#: fortran/frontend-passes.cc:2387
 msgid "Index variable %qs redefined at %L in procedure %qs called from within DO loop at %L"
 msgstr ""
 
 #. Macros for unified error messages.
-#: fortran/frontend-passes.cc:4066
+#: fortran/frontend-passes.cc:4067
 #, c-format
 msgid "Incorrect extent in argument B in MATMUL intrinsic in dimension 1: is %ld, should be %ld"
 msgstr ""
 
-#: fortran/frontend-passes.cc:4069
+#: fortran/frontend-passes.cc:4070
 #, fuzzy, c-format
 msgid "Array bound mismatch for dimension 1 of array (%ld/%ld)"
 msgstr "ehtolausekkeessa on osoitintyyppiristiriita"
 
-#: fortran/frontend-passes.cc:4072
+#: fortran/frontend-passes.cc:4073
 #, fuzzy, c-format
 msgid "Array bound mismatch for dimension 2 of array (%ld/%ld)"
 msgstr "ehtolausekkeessa on osoitintyyppiristiriita"
@@ -20594,89 +20678,89 @@ msgstr "<tunnistevirhe>"
 msgid "Syntax error in expression at %C"
 msgstr "Syntaksivirhe IF-lausekkeessa kohdassa %C"
 
-#: fortran/module.cc:1253
+#: fortran/module.cc:1254
 #, fuzzy
 msgid "Unexpected EOF"
 msgstr "Odottamaton tiedoston loppu arkistossa"
 
-#: fortran/module.cc:1378
+#: fortran/module.cc:1379
 msgid "Name too long"
 msgstr "Liian pitkä nimi"
 
-#: fortran/module.cc:1432 fortran/module.cc:1490 fortran/module.cc:1545
-#: fortran/module.cc:1603
+#: fortran/module.cc:1433 fortran/module.cc:1491 fortran/module.cc:1546
+#: fortran/module.cc:1604
 msgid "Bad name"
 msgstr "Virheellinen nimi"
 
-#: fortran/module.cc:1627
+#: fortran/module.cc:1628
 msgid "Expected name"
 msgstr "Odotettu nimi"
 
-#: fortran/module.cc:1630
+#: fortran/module.cc:1631
 #, fuzzy
 msgid "Expected left parenthesis"
 msgstr "Odotettiin oikeaa sulkumerkkiä lausekkeessa kohdassa %C"
 
-#: fortran/module.cc:1633
+#: fortran/module.cc:1634
 #, fuzzy
 msgid "Expected right parenthesis"
 msgstr "Odotettiin oikeaa sulkumerkkiä lausekkeessa kohdassa %C"
 
-#: fortran/module.cc:1636
+#: fortran/module.cc:1637
 #, fuzzy
 msgid "Expected integer"
 msgstr "odotettiin kokonaislukulauseketta"
 
-#: fortran/module.cc:1639 fortran/module.cc:2844
+#: fortran/module.cc:1640 fortran/module.cc:2845
 #, fuzzy
 msgid "Expected string"
 msgstr "odotettiin merkkijonoliteraalia"
 
-#: fortran/module.cc:1664
+#: fortran/module.cc:1665
 #, fuzzy
 msgid "find_enum(): Enum not found"
 msgstr "%<enum %E%>:n uudelleenmäärittely"
 
-#: fortran/module.cc:2234
+#: fortran/module.cc:2235
 msgid "Unsupported: multiple OpenACC 'routine' levels of parallelism"
 msgstr ""
 
-#: fortran/module.cc:2474
+#: fortran/module.cc:2475
 #, fuzzy
 msgid "Expected attribute bit name"
 msgstr "odotettiin %<=%>, %<,%>, %<;%>, %<asm%> tai %<__attribute__%>"
 
-#: fortran/module.cc:3473
+#: fortran/module.cc:3474
 #, fuzzy
 msgid "Expected integer string"
 msgstr "odotettiin merkkijonoliteraalia"
 
-#: fortran/module.cc:3477
+#: fortran/module.cc:3478
 #, fuzzy
 msgid "Error converting integer"
 msgstr "muunnos tyypistä %qT tyyppiin %qT"
 
-#: fortran/module.cc:3499
+#: fortran/module.cc:3500
 #, fuzzy
 msgid "Expected real string"
 msgstr "odotettiin merkkijonoliteraalia"
 
-#: fortran/module.cc:3724
+#: fortran/module.cc:3725
 #, fuzzy
 msgid "Expected expression type"
 msgstr "odotettiin lauseketta"
 
-#: fortran/module.cc:3804
+#: fortran/module.cc:3805
 #, fuzzy
 msgid "Bad operator"
 msgstr "  eikä %<operator=(const %T&)%>"
 
-#: fortran/module.cc:3921
+#: fortran/module.cc:3922
 #, fuzzy
 msgid "Bad type in constant expression"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: fortran/module.cc:7379
+#: fortran/module.cc:7380
 #, fuzzy
 msgid "Unexpected end of module"
 msgstr "Odottamaton END-lause kohdassa %C"
@@ -20711,11 +20795,11 @@ msgstr "lohkolaite"
 msgid "implied END DO"
 msgstr "syötteen loppu"
 
-#: fortran/parse.cc:2229 fortran/resolve.cc:12044
+#: fortran/parse.cc:2229 fortran/resolve.cc:12073
 msgid "assignment"
 msgstr "sijoitus"
 
-#: fortran/parse.cc:2232 fortran/resolve.cc:12102 fortran/resolve.cc:12105
+#: fortran/parse.cc:2232 fortran/resolve.cc:12131 fortran/resolve.cc:12134
 #, fuzzy
 msgid "pointer assignment"
 msgstr "Rajapintatäsmäämättömyys proseduuriosoitinsijoituksessa kohdassa %L: %s"
@@ -20734,224 +20818,224 @@ msgstr ""
 "                  muuten yksinkertaisia\n"
 "  never, simple   tee aina yksinkertaisia varmuuskopioita\n"
 
-#: fortran/resolve.cc:2371 fortran/resolve.cc:2565
+#: fortran/resolve.cc:2388 fortran/resolve.cc:2583
 #, fuzzy
 msgid "elemental procedure"
 msgstr "RPC: Proseduuri ei ole käytettävissä"
 
-#: fortran/resolve.cc:2468
+#: fortran/resolve.cc:2486
 #, fuzzy
 msgid "allocatable argument"
 msgstr "Virheellinen argumentti"
 
-#: fortran/resolve.cc:2473
+#: fortran/resolve.cc:2491
 #, fuzzy
 msgid "asynchronous argument"
 msgstr "ei argumentteja"
 
-#: fortran/resolve.cc:2478
+#: fortran/resolve.cc:2496
 msgid "optional argument"
 msgstr "valinnainen argumentti"
 
-#: fortran/resolve.cc:2483
+#: fortran/resolve.cc:2501
 msgid "pointer argument"
 msgstr "osoitinargumentti"
 
-#: fortran/resolve.cc:2488
+#: fortran/resolve.cc:2506
 msgid "target argument"
 msgstr "kohdeargumentti"
 
-#: fortran/resolve.cc:2493
+#: fortran/resolve.cc:2511
 msgid "value argument"
 msgstr "arvoargumentti"
 
-#: fortran/resolve.cc:2498
+#: fortran/resolve.cc:2516
 #, fuzzy
 msgid "volatile argument"
 msgstr "ylimääräinen %<volatile%>"
 
-#: fortran/resolve.cc:2503
+#: fortran/resolve.cc:2521
 #, fuzzy
 msgid "assumed-shape argument"
 msgstr "oletetaan palauttavan %<id%> ja hyväksyvän"
 
-#: fortran/resolve.cc:2508
+#: fortran/resolve.cc:2526
 #, fuzzy
 msgid "assumed-rank argument"
 msgstr "oletetaan palauttavan %<id%> ja hyväksyvän"
 
-#: fortran/resolve.cc:2513
+#: fortran/resolve.cc:2531
 #, fuzzy
 msgid "coarray argument"
 msgstr "Virheellinen argumentti"
 
-#: fortran/resolve.cc:2518
+#: fortran/resolve.cc:2536
 #, fuzzy
 msgid "parametrized derived type argument"
 msgstr "sijoitus kirjoitussuojattuun viitteeseen %qD"
 
-#: fortran/resolve.cc:2523
+#: fortran/resolve.cc:2541
 #, fuzzy
 msgid "polymorphic argument"
 msgstr "Virheellinen argumentti"
 
-#: fortran/resolve.cc:2528
+#: fortran/resolve.cc:2546
 #, fuzzy
 msgid "NO_ARG_CHECK attribute"
 msgstr "liian pitkä riviargumentti"
 
 #. As assumed-type is unlimited polymorphic (cf. above).
 #. See also TS 29113, Note 6.1.
-#: fortran/resolve.cc:2535
+#: fortran/resolve.cc:2553
 #, fuzzy
 msgid "assumed-type argument"
 msgstr "unaariselle miinus-operaatiolle annettu väärä tyyppiargumentti"
 
-#: fortran/resolve.cc:2546
+#: fortran/resolve.cc:2564
 #, fuzzy
 msgid "array result"
 msgstr "MD5-tulos on:\n"
 
-#: fortran/resolve.cc:2551
+#: fortran/resolve.cc:2569
 #, fuzzy
 msgid "pointer or allocatable result"
 msgstr "tulosta ei voi kirjoittaa: %s"
 
-#: fortran/resolve.cc:2558
+#: fortran/resolve.cc:2576
 #, fuzzy
 msgid "result with non-constant character length"
 msgstr "funktiota %<__builtin_next_arg%> kutsuttu ilman argumenttia"
 
-#: fortran/resolve.cc:2570
+#: fortran/resolve.cc:2588
 #, fuzzy
 msgid "bind(c) procedure"
 msgstr "Alustus kohdassa %C ei ole sallittu PURE-proseduurissa"
 
-#: fortran/resolve.cc:4114
+#: fortran/resolve.cc:4132
 #, fuzzy, c-format
 msgid "Invalid context for NULL() pointer at %%L"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/resolve.cc:4131
+#: fortran/resolve.cc:4149
 #, fuzzy, c-format
 msgid "Operand of unary numeric operator %%<%s%%> at %%L is %s"
 msgstr "pilkkuoperaattori #if:in operandissa"
 
-#: fortran/resolve.cc:4148
+#: fortran/resolve.cc:4166
 #, fuzzy, c-format
 msgid "Unexpected derived-type entities in binary intrinsic numeric operator %%<%s%%> at %%L"
 msgstr "pilkkuoperaattori #if:in operandissa"
 
-#: fortran/resolve.cc:4153
+#: fortran/resolve.cc:4171
 #, fuzzy, c-format
 msgid "Operands of binary numeric operator %%<%s%%> at %%L are %s/%s"
 msgstr "pilkkuoperaattori #if:in operandissa"
 
-#: fortran/resolve.cc:4168
+#: fortran/resolve.cc:4186
 #, fuzzy, c-format
 msgid "Operands of string concatenation operator at %%L are %s/%s"
 msgstr "pilkkuoperaattori #if:in operandissa"
 
-#: fortran/resolve.cc:4211
+#: fortran/resolve.cc:4229
 #, fuzzy, c-format
 msgid "Operands of logical operator %%<%s%%> at %%L are %s/%s"
 msgstr "pilkkuoperaattori #if:in operandissa"
 
-#: fortran/resolve.cc:4234
+#: fortran/resolve.cc:4252
 #, fuzzy, c-format
 msgid "Operand of .not. operator at %%L is %s"
 msgstr "pilkkuoperaattori #if:in operandissa"
 
-#: fortran/resolve.cc:4248
+#: fortran/resolve.cc:4266
 #, fuzzy
 msgid "COMPLEX quantities cannot be compared at %L"
 msgstr "osoitealueattribuuttia ei voi määritellä paikallisille muuttujille"
 
-#: fortran/resolve.cc:4346
+#: fortran/resolve.cc:4364
 #, c-format
 msgid "Logicals at %%L must be compared with %s instead of %s"
 msgstr ""
 
-#: fortran/resolve.cc:4352
+#: fortran/resolve.cc:4370
 #, fuzzy, c-format
 msgid "Operands of comparison operator %%<%s%%> at %%L are %s/%s"
 msgstr "pilkkuoperaattori #if:in operandissa"
 
-#: fortran/resolve.cc:4366
+#: fortran/resolve.cc:4384
 #, fuzzy, c-format
 msgid "Unknown operator %%<%s%%> at %%L; did you mean '%s'?"
 msgstr "tuntematon binäärioperaattori"
 
-#: fortran/resolve.cc:4369
+#: fortran/resolve.cc:4387
 #, fuzzy, c-format
 msgid "Unknown operator %%<%s%%> at %%L"
 msgstr "tuntematon binäärioperaattori"
 
-#: fortran/resolve.cc:4374
+#: fortran/resolve.cc:4392
 #, fuzzy, c-format
 msgid "Operand of user operator %%<%s%%> at %%L is %s"
 msgstr "pilkkuoperaattori #if:in operandissa"
 
-#: fortran/resolve.cc:4379
+#: fortran/resolve.cc:4397
 #, fuzzy, c-format
 msgid "Operands of user operator %%<%s%%> at %%L are %s/%s"
 msgstr "pilkkuoperaattori #if:in operandissa"
 
-#: fortran/resolve.cc:4465
+#: fortran/resolve.cc:4483
 #, fuzzy, c-format
 msgid "Inconsistent ranks for operator at %%L and %%L"
 msgstr "Yhteensopimattomat tasot %d ja %d sijoituksessa kohdassa %L"
 
-#: fortran/resolve.cc:7306
+#: fortran/resolve.cc:7324
 msgid "Loop variable"
 msgstr "Silmukkamuuttuja"
 
-#: fortran/resolve.cc:7310
+#: fortran/resolve.cc:7328
 #, fuzzy
 msgid "iterator variable"
 msgstr "Syntaksivirhe iteraattorissa kohdassa %C"
 
-#: fortran/resolve.cc:7314
+#: fortran/resolve.cc:7332
 #, fuzzy
 msgid "Start expression in DO loop"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/resolve.cc:7318
+#: fortran/resolve.cc:7336
 #, fuzzy
 msgid "End expression in DO loop"
 msgstr "Ennenaikainen säännöllisen lausekkeen loppu"
 
-#: fortran/resolve.cc:7322
+#: fortran/resolve.cc:7340
 #, fuzzy
 msgid "Step expression in DO loop"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/resolve.cc:7608 fortran/resolve.cc:7611
+#: fortran/resolve.cc:7626 fortran/resolve.cc:7629
 #, fuzzy
 msgid "DEALLOCATE object"
 msgstr "EI OBJEKTIA\n"
 
-#: fortran/resolve.cc:7989 fortran/resolve.cc:7992
+#: fortran/resolve.cc:8007 fortran/resolve.cc:8010
 #, fuzzy
 msgid "ALLOCATE object"
 msgstr "EI OBJEKTIA\n"
 
-#: fortran/resolve.cc:8225 fortran/resolve.cc:10194 fortran/resolve.cc:10315
+#: fortran/resolve.cc:8243 fortran/resolve.cc:10214 fortran/resolve.cc:10335
 #, fuzzy
 msgid "STAT variable"
 msgstr "tiedoston tilan lukeminen epäonnistui"
 
-#: fortran/resolve.cc:8276 fortran/resolve.cc:10206 fortran/resolve.cc:10327
+#: fortran/resolve.cc:8294 fortran/resolve.cc:10226 fortran/resolve.cc:10347
 #, fuzzy
 msgid "ERRMSG variable"
 msgstr "%qD ei ole muuttuja"
 
-#: fortran/resolve.cc:10000
+#: fortran/resolve.cc:10020
 #, fuzzy
 msgid "item in READ"
 msgstr "Soita numero"
 
-#: fortran/resolve.cc:10218
+#: fortran/resolve.cc:10238
 #, fuzzy
 msgid "ACQUIRED_LOCK variable"
 msgstr "uutta arkistoa ei voi lukita"
@@ -20965,7 +21049,7 @@ msgstr "Odotettiin PARAMETER-symbolia kompleksivakiossa kohdassa %C"
 msgid "Integer overflow when calculating the amount of memory to allocate"
 msgstr ""
 
-#: fortran/trans-array.cc:10064
+#: fortran/trans-array.cc:10071
 #, fuzzy, c-format
 msgid "The value of the PDT LEN parameter '%s' does not agree with that in the dummy declaration"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
@@ -20980,12 +21064,12 @@ msgstr "liikaa argumentteja funktiolle %s %q+#D"
 msgid "Actual string length is shorter than the declared one for dummy argument '%s' (%ld/%ld)"
 msgstr "liikaa argumentteja funktiolle %s %q+#D"
 
-#: fortran/trans-expr.cc:10290
+#: fortran/trans-expr.cc:10297
 #, c-format
 msgid "Target of rank remapping is too small (%ld < %ld)"
 msgstr ""
 
-#: fortran/trans-expr.cc:11750
+#: fortran/trans-expr.cc:11757
 #, fuzzy
 msgid "Assignment of scalar to unallocated array"
 msgstr "virheellinen taulukkosijoitus"
@@ -21040,37 +21124,37 @@ msgstr ""
 msgid "SHIFT argument (%ld) out of range -%ld:%ld in intrinsic ISHFTC"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:9277
+#: fortran/trans-intrinsic.cc:9279
 #, fuzzy, c-format
 msgid "Argument NCOPIES of REPEAT intrinsic is negative (its value is %ld)"
 msgstr "%<__builtin_args_info%>-funktion argumentin pitää olla vakio"
 
-#: fortran/trans-intrinsic.cc:9309
+#: fortran/trans-intrinsic.cc:9311
 #, fuzzy
 msgid "Argument NCOPIES of REPEAT intrinsic is too large"
 msgstr "%<__builtin_args_info%>-funktion argumentin pitää olla vakio"
 
-#: fortran/trans-intrinsic.cc:12025
+#: fortran/trans-intrinsic.cc:12027
 #, fuzzy, c-format
 msgid "FROMPOS argument (%ld) out of range 0:%d in intrinsic MVBITS"
 msgstr "liian vähän (%d) argumentteja funktiolle ”%s”"
 
-#: fortran/trans-intrinsic.cc:12037
+#: fortran/trans-intrinsic.cc:12039
 #, fuzzy, c-format
 msgid "LEN argument (%ld) out of range 0:%d in intrinsic MVBITS"
 msgstr "liian vähän (%d) argumentteja funktiolle ”%s”"
 
-#: fortran/trans-intrinsic.cc:12049
+#: fortran/trans-intrinsic.cc:12051
 #, fuzzy, c-format
 msgid "TOPOS argument (%ld) out of range 0:%d in intrinsic MVBITS"
 msgstr "liian vähän (%d) argumentteja funktiolle ”%s”"
 
-#: fortran/trans-intrinsic.cc:12061
+#: fortran/trans-intrinsic.cc:12063
 #, c-format
 msgid "FROMPOS(%ld)+LEN(%ld)>BIT_SIZE(%d) in intrinsic MVBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12069
+#: fortran/trans-intrinsic.cc:12071
 #, c-format
 msgid "TOPOS(%ld)+LEN(%ld)>BIT_SIZE(%d) in intrinsic MVBITS"
 msgstr ""
@@ -21090,21 +21174,21 @@ msgstr "UNIT-numeron lauseessa kohdassa %L täytyy olla epänegatiivinen"
 msgid "Assigned label is not a target label"
 msgstr "ei-paikallinen nimiö "
 
-#: fortran/trans-stmt.cc:1278
+#: fortran/trans-stmt.cc:1287
 #, c-format
 msgid "Invalid image number %d in SYNC IMAGES"
 msgstr ""
 
-#: fortran/trans-stmt.cc:2440
+#: fortran/trans-stmt.cc:2449
 msgid "Loop iterates infinitely"
 msgstr ""
 
-#: fortran/trans-stmt.cc:2460 fortran/trans-stmt.cc:2716
+#: fortran/trans-stmt.cc:2469 fortran/trans-stmt.cc:2725
 #, fuzzy
 msgid "Loop variable has been modified"
 msgstr "Tiedostoa ”%s” on muokattu sen avaamisen jälkeen."
 
-#: fortran/trans-stmt.cc:2569
+#: fortran/trans-stmt.cc:2578
 #, fuzzy
 msgid "DO step value is zero"
 msgstr "Odotettiin askelarvoa iteraattorissa kohdassa %C"
@@ -21182,8 +21266,8 @@ msgstr "odotettiin numeerista tyyppiä"
 msgid "expected boolean type"
 msgstr "odotettiin totuusarvotyyppiä"
 
-#: go/gofrontend/expressions.cc:5221 c/c-parser.cc:15820 c/c-parser.cc:15827
-#: cp/parser.cc:38961 cp/parser.cc:38968
+#: go/gofrontend/expressions.cc:5221 c/c-parser.cc:15829 c/c-parser.cc:15836
+#: cp/parser.cc:38967 cp/parser.cc:38974
 #, gcc-internal-format
 msgid "expected integer"
 msgstr "odotettiin kokonaislukua"
@@ -21258,7 +21342,7 @@ msgstr "liian vähän argumentteja"
 #: go/gofrontend/expressions.cc:10564 go/gofrontend/expressions.cc:10589
 #: go/gofrontend/expressions.cc:11469 go/gofrontend/expressions.cc:12745
 #: go/gofrontend/expressions.cc:12759 go/gofrontend/expressions.cc:12780
-#: cp/pt.cc:9127
+#: cp/pt.cc:9148
 #, gcc-internal-format
 msgid "too many arguments"
 msgstr "liian monta argumenttia"
@@ -21584,74 +21668,74 @@ msgstr "määrittelemättömän tyypin %<%s %E%> epäkelpo käyttö"
 msgid "conversion from normal type to notinheap type"
 msgstr "paluutyyppi on vaillinainen tyyppi"
 
-#: go/gofrontend/types.cc:4796
+#: go/gofrontend/types.cc:4793
 msgid "different receiver types"
 msgstr "erilaiset vastaanottavat tyypit"
 
-#: go/gofrontend/types.cc:4819 go/gofrontend/types.cc:4832
-#: go/gofrontend/types.cc:4846
+#: go/gofrontend/types.cc:4816 go/gofrontend/types.cc:4829
+#: go/gofrontend/types.cc:4843
 #, fuzzy
 msgid "different number of parameters"
 msgstr "useita parametreja nimellä %qD"
 
-#: go/gofrontend/types.cc:4839
+#: go/gofrontend/types.cc:4836
 msgid "different parameter types"
 msgstr "eri parametrityypit"
 
-#: go/gofrontend/types.cc:4854
+#: go/gofrontend/types.cc:4851
 msgid "different varargs"
 msgstr "erilaiset vararg-parametrit"
 
-#: go/gofrontend/types.cc:4867 go/gofrontend/types.cc:4880
-#: go/gofrontend/types.cc:4894
+#: go/gofrontend/types.cc:4864 go/gofrontend/types.cc:4877
+#: go/gofrontend/types.cc:4891
 msgid "different number of results"
 msgstr "eri määrä tuloksia"
 
-#: go/gofrontend/types.cc:4887
+#: go/gofrontend/types.cc:4884
 msgid "different result types"
 msgstr "eri tulostyypit"
 
-#: go/gofrontend/types.cc:9305
+#: go/gofrontend/types.cc:9302
 #, fuzzy, c-format
 msgid "need explicit conversion; missing method %s%s%s"
 msgstr "    Ei ilmaistuja jäseniä\n"
 
-#: go/gofrontend/types.cc:9323 go/gofrontend/types.cc:9468
+#: go/gofrontend/types.cc:9320 go/gofrontend/types.cc:9465
 #, fuzzy, c-format
 msgid "incompatible type for method %s%s%s"
 msgstr "valitsimet -l ja -s eivät ole yhteensopivia"
 
-#: go/gofrontend/types.cc:9327 go/gofrontend/types.cc:9472
+#: go/gofrontend/types.cc:9324 go/gofrontend/types.cc:9469
 #, fuzzy, c-format
 msgid "incompatible type for method %s%s%s (%s)"
 msgstr "C99:n universaalit merkkinimet ovat epäyhteensopivia C90:n kanssa"
 
-#: go/gofrontend/types.cc:9408 go/gofrontend/types.cc:9421
+#: go/gofrontend/types.cc:9405 go/gofrontend/types.cc:9418
 #, fuzzy
 msgid "pointer to interface type has no methods"
 msgstr "taulukon indeksin tyyppi on %<char%>"
 
-#: go/gofrontend/types.cc:9410 go/gofrontend/types.cc:9423
+#: go/gofrontend/types.cc:9407 go/gofrontend/types.cc:9420
 #, fuzzy
 msgid "type has no methods"
 msgstr "taulukon indeksin tyyppi on %<char%>"
 
-#: go/gofrontend/types.cc:9444
+#: go/gofrontend/types.cc:9441
 #, fuzzy, c-format
 msgid "ambiguous method %s%s%s"
 msgstr "%s: valitsin on moniselitteinen; vaihtoehdot:"
 
-#: go/gofrontend/types.cc:9447
+#: go/gofrontend/types.cc:9444
 #, fuzzy, c-format
 msgid "missing method %s%s%s"
 msgstr "%s: puuttuva argumentti parametrille %s\n"
 
-#: go/gofrontend/types.cc:9489
+#: go/gofrontend/types.cc:9486
 #, c-format
 msgid "method %s%s%s requires a pointer receiver"
 msgstr ""
 
-#: go/gofrontend/types.cc:9507
+#: go/gofrontend/types.cc:9504
 #, c-format
 msgid "method %s%s%s is marked go:nointerface"
 msgstr ""
@@ -21687,7 +21771,7 @@ msgstr "profilointituki VxWorksille"
 msgid "target OS does not support unaligned accesses"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: config/c6x/c6x.h:346 config/nvptx/nvptx.h:182
+#: config/c6x/c6x.h:346 config/nvptx/nvptx.h:192
 #, fuzzy, gcc-internal-format
 msgid "profiling is not yet implemented for this architecture"
 msgstr "Avainsana %s on tuntematon tai sillä ei vielä ole toteutusta"
@@ -21857,7 +21941,7 @@ msgid "%<-maix64%> required: 64-bit computation with 32-bit addressing not yet s
 msgstr ""
 
 #: config/rs6000/aix71.h:48 config/rs6000/aix72.h:48 config/rs6000/aix73.h:48
-#: config/rs6000/rtems.h:121
+#: config/rs6000/rtems.h:121 config/rs6000/rs6000.cc:3515
 #, fuzzy, gcc-internal-format
 msgid "%<-mcmodel%> incompatible with other toc options"
 msgstr "Muodostin %qs"
@@ -21974,15 +22058,15 @@ msgstr "makron nimi puuttuu %qs:n jälkeen"
 
 #: 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:2207 c-family/c.opt:2215
-#: config/darwin.opt:30 common.opt:331 common.opt:334 common.opt:3432
+#: c-family/c.opt:236 c-family/c.opt:2203 c-family/c.opt:2211
+#: config/darwin.opt:30 common.opt:331 common.opt:334 common.opt:3436
 #, gcc-internal-format
 msgid "missing filename after %qs"
 msgstr "tiedostonimi puuttuu %qs:n jälkeen"
 
 #: 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:2203
-#: c-family/c.opt:2223 c-family/c.opt:2227 c-family/c.opt:2231
+#: c-family/c.opt:200 c-family/c.opt:212 c-family/c.opt:2199
+#: c-family/c.opt:2219 c-family/c.opt:2223 c-family/c.opt:2227
 #, gcc-internal-format
 msgid "missing path after %qs"
 msgstr "polku puuttuu %qs:n jälkeen"
@@ -21997,47 +22081,47 @@ msgstr "makefile-kohde puuttuu %qs:n jälkeen"
 msgid "argument %qs to %<-Waligned-new%> not recognized"
 msgstr "%qs-attribuutin virheellinen argumentti"
 
-#: c-family/c.opt:390
+#: c-family/c.opt:386
 #, fuzzy, gcc-internal-format
 msgid "argument %qs to %<-Wbidi-chars%> not recognized"
 msgstr "%qs-attribuutin virheellinen argumentti"
 
-#: c-family/c.opt:1085
+#: c-family/c.opt:1081
 #, fuzzy, gcc-internal-format
 msgid "argument %qs to %<-Wnormalized%> not recognized"
 msgstr "%qs-attribuutin virheellinen argumentti"
 
-#: c-family/c.opt:1634
+#: c-family/c.opt:1626
 #, gcc-internal-format
 msgid "no class name specified with %qs"
 msgstr "luokkanimeä ei ole annettu %qs:n kanssa"
 
-#: c-family/c.opt:1757
+#: c-family/c.opt:1753
 #, fuzzy, gcc-internal-format
 msgid "%<-fhandle-exceptions%> has been renamed %<-fexceptions%> (and is now on by default)"
 msgstr "-fhandle-exceptions on uudelleennimetty: -fexceptions (ja se on nyt oletuksena päällä)"
 
-#: c-family/c.opt:1828
+#: c-family/c.opt:1824
 #, fuzzy, gcc-internal-format
 msgid "missing mapper"
 msgstr "puuttuva luku"
 
-#: c-family/c.opt:1852
+#: c-family/c.opt:1848
 #, fuzzy, gcc-internal-format
 msgid "missing header name"
 msgstr "puuttuva luku"
 
-#: c-family/c.opt:1860
+#: c-family/c.opt:1856
 #, fuzzy, gcc-internal-format
 msgid "missing module name"
 msgstr "puuttuva luku"
 
-#: c-family/c.opt:1907
+#: c-family/c.opt:1903
 #, fuzzy, gcc-internal-format
 msgid "unrecognized ivar visibility value %qs"
 msgstr "tunnistamaton muotomäärite"
 
-#: c-family/c.opt:2067
+#: c-family/c.opt:2063
 #, fuzzy, gcc-internal-format
 msgid "unrecognized scalar storage order value %qs"
 msgstr "tunnistamaton muotomäärite"
@@ -22130,102 +22214,102 @@ msgstr "%qE on vanhentunut"
 msgid "unknown linker output %qs"
 msgstr "syötetiedosto %qs on sama kuin tulostiedosto"
 
-#: common.opt:1563
+#: common.opt:1567
 #, fuzzy, gcc-internal-format
 msgid "unknown excess precision style %qs"
 msgstr "tuntematon konetila %qs"
 
-#: common.opt:1581
+#: common.opt:1585
 #, gcc-internal-format
 msgid "unknown specification for the set of FLT_EVAL_METHOD values to permit %qs"
 msgstr ""
 
-#: common.opt:1625
+#: common.opt:1629
 #, fuzzy, gcc-internal-format
 msgid "unknown floating point contraction style %qs"
 msgstr "tuntematon konetila %qs"
 
-#: common.opt:1790
+#: common.opt:1794
 #, fuzzy, gcc-internal-format
 msgid "unknown Stack Reuse Level %qs"
 msgstr "tuntematon konetila %qs"
 
-#: common.opt:1859
+#: common.opt:1863
 #, fuzzy, gcc-internal-format
 msgid "unknown Control-Flow Protection Level %qs"
 msgstr "tuntematon konetila %qs"
 
-#: common.opt:1965
+#: common.opt:1969
 #, fuzzy, gcc-internal-format
 msgid "unknown IRA algorithm %qs"
 msgstr "Funktio %qs"
 
-#: common.opt:1978
+#: common.opt:1982
 #, fuzzy, gcc-internal-format
 msgid "unknown IRA region %qs"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: common.opt:2056
+#: common.opt:2060
 #, fuzzy, gcc-internal-format
 msgid "unknown LTO partitioning model %qs"
 msgstr "tuntematon konetila %qs"
 
-#: common.opt:2162
+#: common.opt:2166
 #, fuzzy, gcc-internal-format
 msgid "targets missing after %qs"
 msgstr "makron nimi puuttuu %qs:n jälkeen"
 
-#: common.opt:2165
+#: common.opt:2169
 #, fuzzy, gcc-internal-format
 msgid "options or targets=options missing after %qs"
 msgstr "makron nimi puuttuu %qs:n jälkeen"
 
-#: common.opt:2173
+#: common.opt:2177
 #, fuzzy, gcc-internal-format
 msgid "unknown offload ABI %qs"
 msgstr "tuntematon konetila %qs"
 
-#: common.opt:2315
+#: common.opt:2319
 #, fuzzy, gcc-internal-format
 msgid "unknown profile reproducibility method %qs"
 msgstr "tuntematon konetila %qs"
 
-#: common.opt:2331
+#: common.opt:2335
 #, fuzzy, gcc-internal-format
 msgid "unknown profile update method %qs"
 msgstr "tuntematon konetila %qs"
 
-#: common.opt:2437
+#: common.opt:2441
 #, fuzzy, gcc-internal-format
 msgid "unknown Live-Patching Level %qs"
 msgstr "tuntematon konetila %qs"
 
-#: common.opt:2470
+#: common.opt:2474
 #, fuzzy, gcc-internal-format
 msgid "unknown basic block reordering algorithm %qs"
 msgstr "Funktio %qs"
 
-#: common.opt:2777
+#: common.opt:2781
 #, fuzzy, gcc-internal-format
 msgid "unknown TLS model %qs"
 msgstr "tls_model-argumentti ei ole merkkijono"
 
-#: common.opt:3113
+#: common.opt:3117
 #, fuzzy, gcc-internal-format
 msgid "unknown vectorizer cost model %qs"
 msgstr "tuntematon konetila %qs"
 
-#: common.opt:3144
+#: common.opt:3148
 #, fuzzy, gcc-internal-format
 msgid "unrecognized automatic variable initialization type %qs"
 msgstr "tunnistamaton muotomäärite"
 
-#: common.opt:3170
+#: common.opt:3174
 #, fuzzy, gcc-internal-format
 msgid "unrecognized visibility value %qs"
 msgstr "tunnistamaton rekisterinimi %qs"
 
-#: common.opt:3189
+#: common.opt:3193
 #, fuzzy, gcc-internal-format
 msgid "unknown vtable verify initialization priority %qs"
 msgstr "(%qs:n alustuksen lähistöllä)"
@@ -22235,17 +22319,17 @@ msgstr "(%qs:n alustuksen lähistöllä)"
 msgid "unknown evrp mode %qs"
 msgstr "tls_model-argumentti ei ole merkkijono"
 
-#: params.opt:893
+#: params.opt:897
 #, fuzzy, gcc-internal-format
 msgid "unknown ranger debug mode %qs"
 msgstr "tls_model-argumentti ei ole merkkijono"
 
-#: params.opt:1067
+#: params.opt:1071
 #, fuzzy, gcc-internal-format
 msgid "unknown threader debug mode %qs"
 msgstr "tls_model-argumentti ei ole merkkijono"
 
-#: params.opt:1188
+#: params.opt:1196
 #, fuzzy, gcc-internal-format
 msgid "unknown vrp mode %qs"
 msgstr "tls_model-argumentti ei ole merkkijono"
@@ -22271,16 +22355,16 @@ msgstr "%qE-attribuutti on ristiriidassa attribuutin %s kanssa"
 msgid "ignoring attribute %qE because it conflicts with attribute %qs"
 msgstr "%qE-attribuutti on ristiriidassa attribuutin %s kanssa"
 
-#: attribs.cc:552 c-family/c-attribs.cc:910 c-family/c-attribs.cc:2408
-#: c-family/c-attribs.cc:2854 c-family/c-attribs.cc:4680
-#: c-family/c-attribs.cc:4773 cp/decl.cc:15499 cp/decl.cc:15549
+#: attribs.cc:552 c-family/c-attribs.cc:912 c-family/c-attribs.cc:2410
+#: c-family/c-attribs.cc:2856 c-family/c-attribs.cc:4682
+#: c-family/c-attribs.cc:4775 cp/decl.cc:15630 cp/decl.cc:15680
 #: cp/friend.cc:316 cp/tree.cc:5093
 #, fuzzy, gcc-internal-format
 msgid "previous declaration here"
 msgstr "%q+D:lla on edellinen esittely täällä"
 
 #. Warn about and ignore all others for now, but store them.
-#: attribs.cc:714 c-family/c-attribs.cc:3882 objc/objc-act.cc:5133
+#: attribs.cc:714 c-family/c-attribs.cc:3884 objc/objc-act.cc:5133
 #: objc/objc-act.cc:7124 objc/objc-act.cc:8322 objc/objc-act.cc:8378
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute directive ignored"
@@ -22306,7 +22390,7 @@ msgstr "odotettu vähintään %i, löytyi %i"
 msgid "expected between %i and %i, found %i"
 msgstr ""
 
-#: attribs.cc:756 c-family/c-attribs.cc:4546
+#: attribs.cc:756 c-family/c-attribs.cc:4548
 #, gcc-internal-format
 msgid "%qE attribute does not apply to types"
 msgstr "%qE-attribuutti ei päde tyyppeihin"
@@ -22330,43 +22414,43 @@ msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 #. standard attributes.  Diagnose it here with a pedwarn and
 #. then discard it to prevent a duplicate warning later.
 #: attribs.cc:873 attribs.cc:1824 attribs.cc:1834 attribs.cc:1844
-#: c-family/c-attribs.cc:938 c-family/c-attribs.cc:1000
-#: c-family/c-attribs.cc:1019 c-family/c-attribs.cc:1037
-#: c-family/c-attribs.cc:1067 c-family/c-attribs.cc:1088
-#: c-family/c-attribs.cc:1109 c-family/c-attribs.cc:1150
-#: c-family/c-attribs.cc:1181 c-family/c-attribs.cc:1197
-#: c-family/c-attribs.cc:1214 c-family/c-attribs.cc:1230
-#: c-family/c-attribs.cc:1247 c-family/c-attribs.cc:1272
-#: c-family/c-attribs.cc:1288 c-family/c-attribs.cc:1303
-#: c-family/c-attribs.cc:1331 c-family/c-attribs.cc:1348
-#: c-family/c-attribs.cc:1366 c-family/c-attribs.cc:1390
-#: c-family/c-attribs.cc:1428 c-family/c-attribs.cc:1451
-#: c-family/c-attribs.cc:1468 c-family/c-attribs.cc:1497
-#: c-family/c-attribs.cc:1518 c-family/c-attribs.cc:1539
-#: c-family/c-attribs.cc:1566 c-family/c-attribs.cc:1597
-#: c-family/c-attribs.cc:1626 c-family/c-attribs.cc:1680
-#: c-family/c-attribs.cc:1733 c-family/c-attribs.cc:1799
-#: c-family/c-attribs.cc:1857 c-family/c-attribs.cc:1946
-#: c-family/c-attribs.cc:1976 c-family/c-attribs.cc:2027
-#: c-family/c-attribs.cc:2508 c-family/c-attribs.cc:2707
-#: c-family/c-attribs.cc:2768 c-family/c-attribs.cc:3009
-#: c-family/c-attribs.cc:3089 c-family/c-attribs.cc:3241
-#: c-family/c-attribs.cc:3696 c-family/c-attribs.cc:3762
-#: c-family/c-attribs.cc:3798 c-family/c-attribs.cc:3853
-#: c-family/c-attribs.cc:4035 c-family/c-attribs.cc:4056
-#: c-family/c-attribs.cc:4169 c-family/c-attribs.cc:4234
-#: c-family/c-attribs.cc:4437 c-family/c-attribs.cc:4548
-#: c-family/c-attribs.cc:5290 c-family/c-attribs.cc:5313
-#: c-family/c-attribs.cc:5352 c-family/c-attribs.cc:5434
-#: c-family/c-attribs.cc:5495 c-family/c-attribs.cc:5511
-#: c-family/c-attribs.cc:5679 c-family/c-common.cc:6031
-#: c-family/c-common.cc:6034 config/darwin.cc:2141 config/arm/arm.cc:7371
-#: config/arm/arm.cc:7399 config/arm/arm.cc:7416 config/avr/avr.cc:9568
+#: c-family/c-attribs.cc:940 c-family/c-attribs.cc:1002
+#: c-family/c-attribs.cc:1021 c-family/c-attribs.cc:1039
+#: c-family/c-attribs.cc:1069 c-family/c-attribs.cc:1090
+#: c-family/c-attribs.cc:1111 c-family/c-attribs.cc:1152
+#: c-family/c-attribs.cc:1183 c-family/c-attribs.cc:1199
+#: c-family/c-attribs.cc:1216 c-family/c-attribs.cc:1232
+#: c-family/c-attribs.cc:1249 c-family/c-attribs.cc:1274
+#: c-family/c-attribs.cc:1290 c-family/c-attribs.cc:1305
+#: c-family/c-attribs.cc:1333 c-family/c-attribs.cc:1350
+#: c-family/c-attribs.cc:1368 c-family/c-attribs.cc:1392
+#: c-family/c-attribs.cc:1430 c-family/c-attribs.cc:1453
+#: c-family/c-attribs.cc:1470 c-family/c-attribs.cc:1499
+#: c-family/c-attribs.cc:1520 c-family/c-attribs.cc:1541
+#: c-family/c-attribs.cc:1568 c-family/c-attribs.cc:1599
+#: c-family/c-attribs.cc:1628 c-family/c-attribs.cc:1682
+#: c-family/c-attribs.cc:1735 c-family/c-attribs.cc:1801
+#: c-family/c-attribs.cc:1859 c-family/c-attribs.cc:1948
+#: c-family/c-attribs.cc:1978 c-family/c-attribs.cc:2029
+#: c-family/c-attribs.cc:2510 c-family/c-attribs.cc:2709
+#: c-family/c-attribs.cc:2770 c-family/c-attribs.cc:3011
+#: c-family/c-attribs.cc:3091 c-family/c-attribs.cc:3243
+#: c-family/c-attribs.cc:3698 c-family/c-attribs.cc:3764
+#: c-family/c-attribs.cc:3800 c-family/c-attribs.cc:3855
+#: c-family/c-attribs.cc:4037 c-family/c-attribs.cc:4058
+#: c-family/c-attribs.cc:4171 c-family/c-attribs.cc:4236
+#: c-family/c-attribs.cc:4439 c-family/c-attribs.cc:4550
+#: c-family/c-attribs.cc:5292 c-family/c-attribs.cc:5315
+#: c-family/c-attribs.cc:5354 c-family/c-attribs.cc:5436
+#: c-family/c-attribs.cc:5503 c-family/c-attribs.cc:5519
+#: c-family/c-attribs.cc:5687 c-family/c-common.cc:6035
+#: c-family/c-common.cc:6038 config/darwin.cc:2141 config/arm/arm.cc:7412
+#: config/arm/arm.cc:7440 config/arm/arm.cc:7457 config/avr/avr.cc:9568
 #: config/csky/csky.cc:6494 config/csky/csky.cc:6516
 #: config/h8300/h8300.cc:4968 config/h8300/h8300.cc:4992
 #: config/i386/i386-options.cc:3381 config/i386/i386-options.cc:3539
 #: config/i386/i386-options.cc:3771 config/i386/i386-options.cc:3801
-#: config/ia64/ia64.cc:785 config/rs6000/rs6000.cc:20254
+#: config/ia64/ia64.cc:785 config/rs6000/rs6000.cc:20305
 #: ada/gcc-interface/utils.cc:6582 ada/gcc-interface/utils.cc:6598
 #: ada/gcc-interface/utils.cc:6636 ada/gcc-interface/utils.cc:6653
 #: ada/gcc-interface/utils.cc:6670 ada/gcc-interface/utils.cc:6685
@@ -22389,8 +22473,8 @@ msgstr "%qE-attribuuttia ei huomioida"
 msgid "missing %<target%> attribute for multi-versioned %qD"
 msgstr "%qE-attribuuttia ei huomioida"
 
-#: attribs.cc:1151 cp/decl.cc:1212 cp/decl.cc:2121 cp/decl.cc:2167
-#: cp/decl.cc:2183 cp/decl.cc:2797 cp/decl.cc:3243
+#: attribs.cc:1151 cp/decl.cc:1212 cp/decl.cc:2172 cp/decl.cc:2218
+#: cp/decl.cc:2234 cp/decl.cc:2853 cp/decl.cc:3299
 #, fuzzy, gcc-internal-format
 msgid "previous declaration of %qD"
 msgstr "%qD:lle ei ole edellistä esittelyä"
@@ -22499,7 +22583,7 @@ msgstr "tiedoston ”%s” otsaketta ei voi lukea"
 msgid "offset %qwi outside bounds of constant string"
 msgstr "siirros vakiomerkkijonon rajojen ulkopuolelle"
 
-#: builtins.cc:704 gimple-ssa-warn-access.cc:4590 cp/name-lookup.cc:6388
+#: builtins.cc:704 gimple-ssa-warn-access.cc:4595 cp/name-lookup.cc:6414
 #, gcc-internal-format
 msgid "%qE declared here"
 msgstr "%qE esitelty täällä"
@@ -22524,13 +22608,13 @@ msgstr "%<__builtin_prefetch%>-funktion kolmannen argumentin pitää olla vakio"
 msgid "invalid third argument to %<__builtin_prefetch%>; using zero"
 msgstr "%<__builtin_prefetch%>-funktion kolmas argumentti on epäkelpo; käytetään nollaa"
 
-#: builtins.cc:3713 gimple-fold.cc:2520 gimple-ssa-warn-access.cc:2541
+#: builtins.cc:3713 gimple-fold.cc:2523 gimple-ssa-warn-access.cc:2541
 #: tree-ssa-strlen.cc:3192
 #, fuzzy, gcc-internal-format
 msgid "%qD specified bound %E equals destination size"
 msgstr "%qE esitelty funktion palauttavana funktiona"
 
-#: builtins.cc:4818 gimplify.cc:3513
+#: builtins.cc:4818 gimplify.cc:3600
 #, gcc-internal-format
 msgid "too few arguments to function %<va_start%>"
 msgstr "liian vähän argumentteja funktiolle %<va_start%>"
@@ -22666,17 +22750,17 @@ msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvus
 msgid "last argument of %qD is not integer constant between 0 and 3"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: calls.cc:1232
+#: calls.cc:1233
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "cannot tail-call: %s"
 msgstr "lähdetiedostoa %s ei löydy"
 
-#: calls.cc:2728
+#: calls.cc:2729
 #, gcc-internal-format
 msgid "function call has aggregate value"
 msgstr "funktiokutsulla on aggregaattiarvo"
 
-#: calls.cc:3449
+#: calls.cc:3451
 #, fuzzy, gcc-internal-format
 msgid "passing too large argument on stack"
 msgstr "blocks-argumentti on liian suuri, maksimi on %llu"
@@ -22764,37 +22848,37 @@ msgstr "virheellinen Z-rekisterikorvaus käskylle"
 msgid "invalid hard register usage between earlyclobber operand and input operand"
 msgstr "virheellinen Z-rekisterikorvaus käskylle"
 
-#: cfgexpand.cc:3309
+#: cfgexpand.cc:3314
 #, gcc-internal-format, gfc-internal-format
 msgid "output number %d not directly addressable"
 msgstr ""
 
-#: cfgexpand.cc:3405
+#: cfgexpand.cc:3410
 #, fuzzy, gcc-internal-format
 msgid "%<asm%> operand %d probably does not match constraints"
 msgstr "%s: Tätä tiedostoa ei voitu varmuuskopioida"
 
-#: cfgexpand.cc:3590
+#: cfgexpand.cc:3595
 #, fuzzy, gcc-internal-format
 msgid "%<asm%> clobber conflict with output operand"
 msgstr "%s: Tätä tiedostoa ei voitu varmuuskopioida"
 
-#: cfgexpand.cc:3595
+#: cfgexpand.cc:3600
 #, fuzzy, gcc-internal-format
 msgid "%<asm%> clobber conflict with input operand"
 msgstr "%s: Tätä tiedostoa ei voitu varmuuskopioida"
 
-#: cfgexpand.cc:6648
+#: cfgexpand.cc:6659
 #, gcc-internal-format
 msgid "stack protector not protecting local variables: variable length buffer"
 msgstr ""
 
-#: cfgexpand.cc:6652
+#: cfgexpand.cc:6663
 #, gcc-internal-format, gfc-internal-format
 msgid "stack protector not protecting function: all local arrays are less than %d bytes long"
 msgstr ""
 
-#: cfgexpand.cc:6941
+#: cfgexpand.cc:6952
 #, fuzzy, gcc-internal-format
 msgid "patchable function entry %wu exceeds size %wu"
 msgstr "Kohdista koodi ja data 32 bittiin"
@@ -22984,147 +23068,152 @@ msgstr "%s ei tue: predicted_by_p"
 msgid "%s does not support flow_call_edges_add"
 msgstr "%s ei tue: split_edge"
 
-#: cfgloop.cc:1409
+#: cfgloop.cc:1411
 #, gcc-internal-format
 msgid "loop verification on loop tree that needs fixup"
 msgstr ""
 
-#: cfgloop.cc:1425
+#: cfgloop.cc:1427
 #, gcc-internal-format
 msgid "corrupt loop tree root"
 msgstr ""
 
-#: cfgloop.cc:1435
+#: cfgloop.cc:1437
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "loop with header %d marked for removal"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1440
+#: cfgloop.cc:1442
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "loop with header %d not in loop tree"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1446
+#: cfgloop.cc:1448
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "non-loop with header %d not marked for removal"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1460
+#: cfgloop.cc:1462
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "removed loop %d in loop tree"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1468
+#: cfgloop.cc:1470
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "size of loop %d should be %d, not %d"
 msgstr "sektorimäärä: %d, sektorikoko: %d\n"
 
-#: cfgloop.cc:1479
+#: cfgloop.cc:1481
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "bb %d does not belong to loop %d"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1491
+#: cfgloop.cc:1493
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "bb %d has father loop %d, should be loop %d"
 msgstr "sektorimäärä: %d, sektorikoko: %d\n"
 
-#: cfgloop.cc:1507
+#: cfgloop.cc:1509
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s header is not a loop header"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1513
+#: cfgloop.cc:1515
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s header does not have exactly 2 entries"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1520
+#: cfgloop.cc:1522
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s latch does not have an edge to its header"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1525
+#: cfgloop.cc:1527
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s latch is not dominated by its header"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1533
+#: cfgloop.cc:1535
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s latch does not have exactly 1 successor"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1538
+#: cfgloop.cc:1540
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s latch does not have header as successor"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1543
+#: cfgloop.cc:1545
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s latch does not belong directly to it"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1549
+#: cfgloop.cc:1551
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s header does not belong directly to it"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1559
+#: cfgloop.cc:1561
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s latch is marked as part of irreducible region"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cfgloop.cc:1593
+#: cfgloop.cc:1573
+#, gcc-internal-format
+msgid "loop %d%'s number of iterations %qE references the released SSA name %qE"
+msgstr ""
+
+#: cfgloop.cc:1606
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "basic block %d should be marked irreducible"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: cfgloop.cc:1599
+#: cfgloop.cc:1612
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "basic block %d should not be marked irreducible"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: cfgloop.cc:1608
+#: cfgloop.cc:1621
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "edge from %d to %d should be marked irreducible"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: cfgloop.cc:1615
+#: cfgloop.cc:1628
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "edge from %d to %d should not be marked irreducible"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: cfgloop.cc:1629
+#: cfgloop.cc:1642
 #, gcc-internal-format, gfc-internal-format
 msgid "corrupted head of the exits list of loop %d"
 msgstr ""
 
-#: cfgloop.cc:1647
+#: cfgloop.cc:1660
 #, gcc-internal-format, gfc-internal-format
 msgid "corrupted exits list of loop %d"
 msgstr ""
 
-#: cfgloop.cc:1656
+#: cfgloop.cc:1669
 #, gcc-internal-format, gfc-internal-format
 msgid "nonempty exits list of loop %d, but exits are not recorded"
 msgstr ""
 
-#: cfgloop.cc:1683
+#: cfgloop.cc:1696
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "exit %d->%d not recorded"
 msgstr "Muunnoksen paluuarvo: %d"
 
-#: cfgloop.cc:1706
+#: cfgloop.cc:1719
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong list of exited loops for edge %d->%d"
 msgstr ""
 
-#: cfgloop.cc:1715
+#: cfgloop.cc:1728
 #, fuzzy, gcc-internal-format
 msgid "too many loop exits recorded"
 msgstr "liikaa syötetiedostoja"
 
-#: cfgloop.cc:1726
+#: cfgloop.cc:1739
 #, gcc-internal-format, gfc-internal-format
 msgid "%d exits recorded for loop %d (having %d exits)"
 msgstr ""
@@ -24266,7 +24355,7 @@ msgstr "oikealle siirron lukumäärä on negatiivinen"
 msgid "%<lp_array%> does not match %<region_tree%>"
 msgstr "oikealle siirron lukumäärä on negatiivinen"
 
-#: except.cc:3518 tree.cc:13835 value-prof.cc:537
+#: except.cc:3518 tree.cc:13878 value-prof.cc:537
 #, fuzzy, gcc-internal-format
 msgid "%qs failed"
 msgstr "tiedoston %s avaaminen epäonnistui"
@@ -24338,42 +24427,42 @@ msgstr "%s: ei voida avata PCH-tiedostoa: %m\n"
 msgid "large fixed-point constant implicitly truncated to fixed-point type"
 msgstr "suuri kokonaisluku implisiittisesti katkaistu etumerkittömäksi tyypiksi"
 
-#: fold-const.cc:4663 fold-const.cc:4673
+#: fold-const.cc:4666 fold-const.cc:4676
 #, gcc-internal-format, gfc-internal-format
 msgid "comparison is always %d due to width of bit-field"
 msgstr "vertailu on aina %d johtuen bittikentän leveydestä"
 
-#: fold-const.cc:6026 tree-ssa-reassoc.cc:2855 tree-ssa-reassoc.cc:3909
+#: fold-const.cc:6029 tree-ssa-reassoc.cc:2855 tree-ssa-reassoc.cc:3909
 #, gcc-internal-format
 msgid "assuming signed overflow does not occur when simplifying range test"
 msgstr ""
 
-#: fold-const.cc:6490 fold-const.cc:6506
+#: fold-const.cc:6493 fold-const.cc:6509
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "comparison is always %d"
 msgstr "vertailu on aina %d johtuen bittikentän leveydestä"
 
-#: fold-const.cc:6654
+#: fold-const.cc:6657
 #, fuzzy, gcc-internal-format
 msgid "%<or%> of unmatched not-equal tests is always 1"
 msgstr "looginen"
 
-#: fold-const.cc:6659
+#: fold-const.cc:6662
 #, fuzzy, gcc-internal-format
 msgid "%<and%> of mutually exclusive equal-tests is always 0"
 msgstr "looginen"
 
-#: fold-const.cc:9872
+#: fold-const.cc:9879
 #, gcc-internal-format
 msgid "assuming signed overflow does not occur when reducing constant in comparison"
 msgstr ""
 
-#: fold-const.cc:10279
+#: fold-const.cc:10286
 #, gcc-internal-format
 msgid "assuming signed overflow does not occur when combining constants around a comparison"
 msgstr ""
 
-#: fold-const.cc:13544
+#: fold-const.cc:13551
 #, gcc-internal-format
 msgid "fold check: original tree changed by fold"
 msgstr ""
@@ -24388,7 +24477,7 @@ msgstr "paikallisten objektien kokonaiskoko on liian suuri"
 msgid "total size of local objects exceeds maximum %wu"
 msgstr "paikallisten objektien kokonaiskoko on liian suuri"
 
-#: function.cc:1788 gimplify.cc:6474 gimplify.cc:6636
+#: function.cc:1788 gimplify.cc:6599 gimplify.cc:6761
 #, fuzzy, gcc-internal-format
 msgid "impossible constraint in %<asm%>"
 msgstr "virheellinen ”asm”: "
@@ -24938,7 +25027,7 @@ msgstr "%s: ei voitu avata PCH-tiedostoa: %m"
 msgid "cannot write PCH file: required memory segment unavailable"
 msgstr ""
 
-#: ggc-common.cc:562
+#: ggc-common.cc:562 config/i386/host-cygwin.cc:57
 #, fuzzy, gcc-internal-format
 msgid "cannot get position in PCH file: %m"
 msgstr "%s: ei voida avata PCH-tiedostoa: %m\n"
@@ -25042,48 +25131,48 @@ msgstr "taulukon indeksi on taulukkorajojen alapuolella"
 msgid "array subscript %wu is above array bounds of %qT"
 msgstr "taulukon indeksi on taulukkorajojen yläpuolella"
 
-#: gimple-fold.cc:2076 gimple-fold.cc:3127 gimple-ssa-warn-restrict.cc:2073
+#: gimple-fold.cc:2079 gimple-fold.cc:3130 gimple-ssa-warn-restrict.cc:2073
 #, fuzzy, gcc-internal-format
 msgid "%qD source argument is the same as destination"
 msgstr "%qE esitelty funktion palauttavana funktiona"
 
-#: gimple-fold.cc:2142
+#: gimple-fold.cc:2145
 #, fuzzy, gcc-internal-format
 msgid "%qD destination unchanged after copying no bytes from a string of length %E"
 msgstr "%<%.*s%>-direktiivin tuloste saattaa katketa kirjoittaessa jopa %wu tavua %wu–%wu tavun kokoiseen alueeseen"
 
-#: gimple-fold.cc:2147
+#: gimple-fold.cc:2150
 #, fuzzy, gcc-internal-format
 msgid "%qD destination unchanged after copying no bytes"
 msgstr "%<%.*s%>-direktiivin tuloste saattaa katketa kirjoittaessa jopa %wu tavua %wu–%wu tavun kokoiseen alueeseen"
 
-#: gimple-fold.cc:2522 gimple-ssa-warn-access.cc:856
+#: gimple-fold.cc:2525 gimple-ssa-warn-access.cc:856
 #, fuzzy, gcc-internal-format
 msgid "%qD specified bound %E exceeds destination size %E"
 msgstr "%qE esitelty funktion palauttavana funktiona"
 
-#: gimple-fold.cc:2541
+#: gimple-fold.cc:2544
 #, fuzzy, gcc-internal-format
 #| msgid "%G%qD specified bound %E equals source length"
 msgid "%qD specified bound %E equals source length"
 msgstr "raja %3$E, jonka %1$G%2$qD määrittelee, on sama kuin lähteen pituus"
 
-#: gimple-fold.cc:4529 gimple-fold.cc:4733
+#: gimple-fold.cc:4542 gimple-fold.cc:4746
 #, fuzzy, gcc-internal-format
 msgid "flexible array member %qD does not have well defined padding bits for %qs"
 msgstr "joustava taulukkojäsen ei ole structin lopussa"
 
-#: gimple-fold.cc:4682 cp/constexpr.cc:4357
+#: gimple-fold.cc:4695 cp/constexpr.cc:4357
 #, gcc-internal-format
 msgid "PDP11 bit-field handling unsupported in %qs"
 msgstr ""
 
-#: gimple-fold.cc:4909
+#: gimple-fold.cc:4922
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s not supported for variable length aggregates"
 msgstr "ISO C ei tue saturoituvia tyyppejä"
 
-#: gimple-fold.cc:4915
+#: gimple-fold.cc:4928
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s not supported on this target"
 msgstr "%qs ei ole tuettu tällä kohteella"
@@ -25103,21 +25192,21 @@ msgstr "null-osoittimen käyttö"
 msgid "function may return address of local variable"
 msgstr "funktio palauttaa osoitteen paikalliseen muuttujaan"
 
-#: gimple-ssa-isolate-paths.cc:414 c/c-typeck.cc:10987
+#: gimple-ssa-isolate-paths.cc:414 c/c-typeck.cc:10989
 #, gcc-internal-format
 msgid "function returns address of local variable"
 msgstr "funktio palauttaa osoitteen paikalliseen muuttujaan"
 
 #: gimple-ssa-isolate-paths.cc:417 gimple-ssa-warn-access.cc:2028
-#: gimple-ssa-warn-access.cc:3693 tree.cc:12074 tree.cc:12111 tree.cc:12152
-#: tree.cc:12185 c/c-typeck.cc:2991 c/c-typeck.cc:3084 c/c-typeck.cc:5634
-#: c/c-typeck.cc:10893 c/c-typeck.cc:10910 c/gimple-parser.cc:2446
-#: c/gimple-parser.cc:2454 cp/call.cc:7595 cp/call.cc:9669 cp/constexpr.cc:853
-#: cp/constexpr.cc:3814 cp/cvt.cc:1075 cp/cvt.cc:1113 cp/decl.cc:8493
-#: cp/decl.cc:15701 cp/decl.cc:16068 cp/decl2.cc:5788 cp/decl2.cc:5843
-#: cp/parser.cc:21698 cp/pt.cc:8935 cp/semantics.cc:2149 cp/semantics.cc:3459
-#: cp/semantics.cc:4556 cp/typeck.cc:1984 cp/typeck.cc:2201 cp/typeck.cc:4332
-#: cp/typeck.cc:10175
+#: gimple-ssa-warn-access.cc:3693 tree.cc:12117 tree.cc:12154 tree.cc:12195
+#: tree.cc:12228 c/c-typeck.cc:2991 c/c-typeck.cc:3084 c/c-typeck.cc:5634
+#: c/c-typeck.cc:10895 c/c-typeck.cc:10912 c/gimple-parser.cc:2468
+#: c/gimple-parser.cc:2476 cp/call.cc:7606 cp/call.cc:9681 cp/constexpr.cc:853
+#: cp/constexpr.cc:3814 cp/cvt.cc:1075 cp/cvt.cc:1113 cp/decl.cc:8620
+#: cp/decl.cc:15832 cp/decl.cc:16199 cp/decl2.cc:5818 cp/decl2.cc:5873
+#: cp/parser.cc:21696 cp/pt.cc:8956 cp/semantics.cc:2149 cp/semantics.cc:3464
+#: cp/semantics.cc:4547 cp/typeck.cc:1991 cp/typeck.cc:2210 cp/typeck.cc:4341
+#: cp/typeck.cc:10189
 #, gcc-internal-format
 msgid "declared here"
 msgstr "esitelty täällä"
@@ -26191,108 +26280,108 @@ msgstr "#pragma GCC optimize ei ole sallittu funktioiden sisällä"
 msgid "%qD called on pointer to an unallocated object"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3915
+#: gimple-ssa-warn-access.cc:3910
 #, fuzzy, gcc-internal-format
 msgid "pointer %qE may be used after %qD"
 msgstr "Ei voi muuntaa tyyppiä %s tyyppiin %s kohdassa %L"
 
-#: gimple-ssa-warn-access.cc:3916
+#: gimple-ssa-warn-access.cc:3911
 #, fuzzy, gcc-internal-format
 msgid "pointer %qE used after %qD"
 msgstr "Ei voi muuntaa tyyppiä %s tyyppiin %s kohdassa %L"
 
-#: gimple-ssa-warn-access.cc:3920
+#: gimple-ssa-warn-access.cc:3915
 #, fuzzy, gcc-internal-format
 #| msgid "alignment may not be specified for %q+D"
 msgid "pointer may be used after %qD"
 msgstr "kohdistusta ei voi määritellä %q+D:lle"
 
-#: gimple-ssa-warn-access.cc:3921
+#: gimple-ssa-warn-access.cc:3916
 #, fuzzy, gcc-internal-format
 #| msgid "unused parameter %qD"
 msgid "pointer used after %qD"
 msgstr "käyttämätön parametri %qD"
 
-#: gimple-ssa-warn-access.cc:3925
+#: gimple-ssa-warn-access.cc:3920
 #, fuzzy, gcc-internal-format
 msgid "call to %qD here"
 msgstr "%qD esiteltiin täällä"
 
-#: gimple-ssa-warn-access.cc:3940
+#: gimple-ssa-warn-access.cc:3935
 #, gcc-internal-format
 msgid "dangling pointer %qE to %qD may be used"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3941
+#: gimple-ssa-warn-access.cc:3936
 #, fuzzy, gcc-internal-format
 #| msgid "invalid pointer mode %qs"
 msgid "using dangling pointer %qE to %qD"
 msgstr "epäkelpo osoitintila %qs"
 
-#: gimple-ssa-warn-access.cc:3946
+#: gimple-ssa-warn-access.cc:3941
 #, fuzzy, gcc-internal-format
 msgid "dangling pointer to %qD may be used"
 msgstr "%qD ei ole %qD:n jäsen"
 
-#: gimple-ssa-warn-access.cc:3947
+#: gimple-ssa-warn-access.cc:3942
 #, fuzzy, gcc-internal-format
 #| msgid "invalid pointer mode %qs"
 msgid "using a dangling pointer to %qD"
 msgstr "epäkelpo osoitintila %qs"
 
-#: gimple-ssa-warn-access.cc:3950 gimple-ssa-warn-access.cc:4582
+#: gimple-ssa-warn-access.cc:3945 gimple-ssa-warn-access.cc:4587
 #: gimple-ssa-warn-restrict.cc:1823 tree-ssa-uninit.cc:900
 #: tree-ssa-uninit.cc:1066 c/c-decl.cc:3893 c/c-decl.cc:4166
-#: c/c-typeck.cc:8985 c/c-typeck.cc:11694 cp/class.cc:1459 cp/class.cc:3243
-#: cp/constexpr.cc:1012 cp/decl.cc:4224 cp/decl.cc:12214 cp/decl.cc:12697
-#: cp/decl.cc:12706 cp/friend.cc:404 cp/friend.cc:414 cp/init.cc:2878
-#: cp/parser.cc:3488 cp/parser.cc:3634 cp/parser.cc:3685 cp/parser.cc:6884
-#: cp/parser.cc:24228 cp/typeck.cc:4768
+#: c/c-typeck.cc:8987 c/c-typeck.cc:11696 cp/class.cc:1492 cp/class.cc:3276
+#: cp/constexpr.cc:1012 cp/decl.cc:4290 cp/decl.cc:12341 cp/decl.cc:12824
+#: cp/decl.cc:12833 cp/friend.cc:404 cp/friend.cc:414 cp/init.cc:2888
+#: cp/parser.cc:3488 cp/parser.cc:3634 cp/parser.cc:3685 cp/parser.cc:6882
+#: cp/parser.cc:24226 cp/typeck.cc:4777
 #, gcc-internal-format
 msgid "%qD declared here"
 msgstr "%qD esitelty täällä"
 
-#: gimple-ssa-warn-access.cc:3958
+#: gimple-ssa-warn-access.cc:3953
 #, gcc-internal-format
 msgid "dangling pointer %qE to an unnamed temporary may be used"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3960
+#: gimple-ssa-warn-access.cc:3955
 #, gcc-internal-format
 msgid "using dangling pointer %qE to an unnamed temporary"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3966
+#: gimple-ssa-warn-access.cc:3961
 #, gcc-internal-format
 msgid "dangling pointer to an unnamed temporary may be used"
 msgstr ""
 
-#: gimple-ssa-warn-access.cc:3968
+#: gimple-ssa-warn-access.cc:3963
 #, fuzzy, gcc-internal-format
 msgid "using a dangling pointer to an unnamed temporary"
 msgstr "%s: tuntematon osan nimi ”%.*s”"
 
-#: gimple-ssa-warn-access.cc:3972
+#: gimple-ssa-warn-access.cc:3967
 #, fuzzy, gcc-internal-format
 msgid "unnamed temporary defined here"
 msgstr "alunperin määritelty täällä"
 
-#: gimple-ssa-warn-access.cc:4062
+#: gimple-ssa-warn-access.cc:4057
 #, fuzzy, gcc-internal-format
 msgid "%qD called on pointer %qE passed to mismatched allocation function %qD"
 msgstr "%qD on tavallisesti ei-staattinen funktio"
 
-#: gimple-ssa-warn-access.cc:4067
+#: gimple-ssa-warn-access.cc:4062
 #, fuzzy, gcc-internal-format
 msgid "%qD called on a pointer passed to mismatched reallocation function %qD"
 msgstr "%qD on tavallisesti ei-staattinen funktio"
 
-#: gimple-ssa-warn-access.cc:4073
+#: gimple-ssa-warn-access.cc:4068
 #, fuzzy, gcc-internal-format
 msgid "call to %qD"
 msgstr "%J%qD esitelty turhaan uudestaan"
 
-#: gimple-ssa-warn-access.cc:4578
+#: gimple-ssa-warn-access.cc:4581
 #, fuzzy, gcc-internal-format
 msgid "storing the address of local variable %qD in %qE"
 msgstr "palautettu osoite paikalliseen muuttujaan %q+D"
@@ -26559,12 +26648,12 @@ msgstr "Arvo sallitun välin ulkopuolella."
 msgid "bytecode stream: unknown GIMPLE statement tag %s"
 msgstr "ei voitu luoda uutta ELF-lohkoa: %s"
 
-#: gimple-warn-recursion.cc:183
+#: gimple-warn-recursion.cc:195
 #, fuzzy, gcc-internal-format
 msgid "infinite recursion detected"
 msgstr "PRINT_OPERAND null-osoitin"
 
-#: gimple-warn-recursion.cc:190
+#: gimple-warn-recursion.cc:202
 #, fuzzy, gcc-internal-format
 msgid "recursive call"
 msgstr "    Rekursiiviset jäsenet:\n"
@@ -26574,358 +26663,363 @@ msgstr "    Rekursiiviset jäsenet:\n"
 msgid "gimple check: expected %s(%s), have %s(%s) in %s, at %s:%d"
 msgstr "verifiointi epäonnistui kohdassa PC=%d: %s"
 
-#: gimplify.cc:2108
+#: gimplify.cc:2068
 #, fuzzy, gcc-internal-format
 msgid "statement will never be executed"
 msgstr "Varoita koodista, jota ei koskaan suoriteta"
 
-#: gimplify.cc:2447 gimplify.cc:2455
+#: gimplify.cc:2132
+#, gcc-internal-format
+msgid "%qs cannot be initialized with%<-ftrivial-auto-var_init%>"
+msgstr ""
+
+#: gimplify.cc:2524 gimplify.cc:2532
 #, gcc-internal-format
 msgid "this statement may fall through"
 msgstr "suoritus saattaa jatkua tämän lausekkeen jälkeen"
 
-#: gimplify.cc:2457
+#: gimplify.cc:2534
 #, gcc-internal-format
 msgid "here"
 msgstr "täällä"
 
 #. We've found [[fallthrough]]; at the end of a switch, which the C++
 #. standard says is ill-formed; see [dcl.attr.fallthrough].
-#: gimplify.cc:2569 gimplify.cc:2592
+#: gimplify.cc:2646 gimplify.cc:2669
 #, fuzzy, gcc-internal-format
 msgid "attribute %<fallthrough%> not preceding a case label or default label"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: gimplify.cc:3680
+#: gimplify.cc:3767
 #, fuzzy, gcc-internal-format
 msgid "using result of function returning %<void%>"
 msgstr "%<return%> arvon kanssa voidin palauttavassa funktiossa"
 
-#: gimplify.cc:6475
+#: gimplify.cc:6600
 #, gcc-internal-format, gfc-internal-format
 msgid "non-memory output %d must stay in memory"
 msgstr ""
 
-#: gimplify.cc:6490
+#: gimplify.cc:6615
 #, fuzzy, gcc-internal-format
 msgid "invalid lvalue in %<asm%> output %d"
 msgstr "virheellinen lvalue asm-tulosteessa %d"
 
-#: gimplify.cc:6637
+#: gimplify.cc:6762
 #, gcc-internal-format, gfc-internal-format
 msgid "non-memory input %d must stay in memory"
 msgstr ""
 
-#: gimplify.cc:6677 gimplify.cc:6687
+#: gimplify.cc:6802 gimplify.cc:6812
 #, gcc-internal-format, gfc-internal-format
 msgid "memory input %d is not directly addressable"
 msgstr ""
 
-#: gimplify.cc:7304
+#: gimplify.cc:7427
 #, fuzzy, gcc-internal-format
 msgid "threadprivate variable %qE used in a region with %<order(concurrent)%> clause"
 msgstr "sisäkkäisessä funktiossa käytetty rekisterimuuttujaa %qD"
 
-#: gimplify.cc:7306
+#: gimplify.cc:7429
 #, fuzzy, gcc-internal-format
 msgid "enclosing region"
 msgstr "# Ei kohde:"
 
-#: gimplify.cc:7310
+#: gimplify.cc:7433
 #, fuzzy, gcc-internal-format
 msgid "threadprivate variable %qE used in target region"
 msgstr "sisäkkäisessä funktiossa käytetty rekisterimuuttujaa %qD"
 
-#: gimplify.cc:7312
+#: gimplify.cc:7435
 #, fuzzy, gcc-internal-format
 msgid "enclosing target region"
 msgstr "# Ei kohde:"
 
-#: gimplify.cc:7325
+#: gimplify.cc:7448
 #, fuzzy, gcc-internal-format
 msgid "threadprivate variable %qE used in untied task"
 msgstr "sisäkkäisessä funktiossa käytetty rekisterimuuttujaa %qD"
 
-#: gimplify.cc:7327
+#: gimplify.cc:7450
 #, fuzzy, gcc-internal-format
 msgid "enclosing task"
 msgstr "          %s"
 
-#: gimplify.cc:7424
+#: gimplify.cc:7547
 #, fuzzy, gcc-internal-format
 msgid "%qE not specified in enclosing %qs"
 msgstr "%qs määritelty parametrille %qE"
 
-#: gimplify.cc:7426
+#: gimplify.cc:7549
 #, fuzzy, gcc-internal-format
 msgid "enclosing %qs"
 msgstr "          %s"
 
-#: gimplify.cc:7569
+#: gimplify.cc:7692
 #, fuzzy, gcc-internal-format
 msgid "%qE not specified in enclosing OpenACC %qs construct"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: gimplify.cc:7571
+#: gimplify.cc:7694
 #, fuzzy, gcc-internal-format
 msgid "enclosing OpenACC %qs construct"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: gimplify.cc:7632
+#: gimplify.cc:7755
 #, fuzzy, gcc-internal-format
 msgid "%qE with %<link%> clause used in %<routine%> function"
 msgstr "%qE esittelemättä (ensimmäinen käyttökerta tässä funktiossa)"
 
-#: gimplify.cc:7640
+#: gimplify.cc:7763
 #, fuzzy, gcc-internal-format
 msgid "%qE requires a %<declare%> directive for use in a %<routine%> function"
 msgstr "%qE esittelemättä (ensimmäinen käyttökerta tässä funktiossa)"
 
-#: gimplify.cc:7709
+#: gimplify.cc:7832
 #, fuzzy, gcc-internal-format
 msgid "%qE not specified in enclosing %<target%>"
 msgstr "%qs määritelty parametrille %qE"
 
-#: gimplify.cc:7711
+#: gimplify.cc:7834
 #, fuzzy, gcc-internal-format
 msgid "enclosing %<target%>"
 msgstr "# Ei kohde:"
 
-#: gimplify.cc:7741 gimplify.cc:9442
+#: gimplify.cc:7864 gimplify.cc:9565
 #, fuzzy, gcc-internal-format
 msgid "variable %qE declared in enclosing %<host_data%> region"
 msgstr "muuttuja %qD esitelty %<inline%>:ksi"
 
-#: gimplify.cc:7762
+#: gimplify.cc:7885
 #, fuzzy, gcc-internal-format
 msgid "%qD referenced in target region does not have a mappable type"
 msgstr "%qE:lla ei ole luokkatyyppiä"
 
-#: gimplify.cc:7893
+#: gimplify.cc:8016
 #, fuzzy, gcc-internal-format
 msgid "iteration variable %qE is predetermined linear"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: gimplify.cc:7896
+#: gimplify.cc:8019
 #, fuzzy, gcc-internal-format
 msgid "iteration variable %qE should be private"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: gimplify.cc:7910
+#: gimplify.cc:8033
 #, fuzzy, gcc-internal-format
 msgid "iteration variable %qE should not be firstprivate"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: gimplify.cc:7913
+#: gimplify.cc:8036
 #, fuzzy, gcc-internal-format
 msgid "iteration variable %qE should not be reduction"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: gimplify.cc:7916
+#: gimplify.cc:8039
 #, fuzzy, gcc-internal-format
 msgid "iteration variable %qE should not be linear"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: gimplify.cc:9103 gimplify.cc:9109
+#: gimplify.cc:9226 gimplify.cc:9232
 #, fuzzy, gcc-internal-format
 msgid "conditional %<lastprivate%> clause on %qs construct"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: gimplify.cc:9126
+#: gimplify.cc:9249
 #, fuzzy, gcc-internal-format
 msgid "non-scalar variable %qD in conditional %<lastprivate%> clause"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: gimplify.cc:9148
+#: gimplify.cc:9271
 #, gcc-internal-format
 msgid "%<task%> reduction modifier on a construct with a %<nowait%> clause"
 msgstr ""
 
-#: gimplify.cc:9156
+#: gimplify.cc:9279
 #, gcc-internal-format
 msgid "invalid %<task%> reduction modifier on construct other than %<parallel%>, %qs, %<sections%> or %<scope%>"
 msgstr ""
 
-#: gimplify.cc:9167 gimplify.cc:9173 gimplify.cc:9179 gimplify.cc:9185
-#: gimplify.cc:9191 gimplify.cc:13522
+#: gimplify.cc:9290 gimplify.cc:9296 gimplify.cc:9302 gimplify.cc:9308
+#: gimplify.cc:9314 gimplify.cc:13647
 #, fuzzy, gcc-internal-format
 msgid "%<inscan%> %<reduction%> clause on %qs construct"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: gimplify.cc:9285
+#: gimplify.cc:9408
 #, gcc-internal-format
 msgid "%<linear%> clause for variable other than loop iterator specified on construct combined with %<distribute%>"
 msgstr ""
 
-#: gimplify.cc:9638
+#: gimplify.cc:9761
 #, gcc-internal-format
 msgid "mapping field %qE of variable length structure"
 msgstr ""
 
-#: gimplify.cc:9908
+#: gimplify.cc:10031
 #, fuzzy, gcc-internal-format
 msgid "%qE appears more than once in map clauses"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: gimplify.cc:10424
+#: gimplify.cc:10547
 #, fuzzy, gcc-internal-format
 msgid "copyprivate variable %qE is not threadprivate or private in outer context"
 msgstr "paikallinen muuttuja %qD ei voi esiintyä tässä yhteydessä"
 
-#: gimplify.cc:10481
+#: gimplify.cc:10604
 #, fuzzy, gcc-internal-format
 msgid "%s variable %qE is private in outer context"
 msgstr "sisäkkäisessä funktiossa käytetty rekisterimuuttujaa %qD"
 
-#: gimplify.cc:10513
+#: gimplify.cc:10636
 #, fuzzy, gcc-internal-format
 msgid "expected %qs %<if%> clause modifier rather than %qs"
 msgstr "odotettiin %<operator%>"
 
-#: gimplify.cc:10551
+#: gimplify.cc:10674
 #, fuzzy, gcc-internal-format
 msgid "%<device%> clause with %<ancestor%> is only allowed on %<target%> construct"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: gimplify.cc:10567
+#: gimplify.cc:10690
 #, gcc-internal-format
 msgid "with %<ancestor%>, only the %<device%>, %<firstprivate%>, %<private%>, %<defaultmap%>, and %<map%> clauses may appear on the construct"
 msgstr ""
 
-#: gimplify.cc:10779
+#: gimplify.cc:10902
 #, gcc-internal-format
 msgid "%qD specified in %qs clause but not in %<inscan%> %<reduction%> clause on the containing construct"
 msgstr ""
 
-#: gimplify.cc:10993
+#: gimplify.cc:11116
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> %qD in implicit %<map%> clause"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: gimplify.cc:11047
+#: gimplify.cc:11170
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> %qD in implicit %<firstprivate%> clause on %<target%> construct"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: gimplify.cc:11304
+#: gimplify.cc:11427
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<firstprivate%> clause on %<target%> construct"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: gimplify.cc:11377
+#: gimplify.cc:11500
 #, fuzzy, gcc-internal-format
 msgid "same variable used in %<firstprivate%> and %<lastprivate%> clauses on %<distribute%> construct"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: gimplify.cc:11478
+#: gimplify.cc:11601
 #, gcc-internal-format
 msgid "incompatible data clause with reduction on %qE; promoting to %<present_or_copy%>"
 msgstr ""
 
-#: gimplify.cc:11627
+#: gimplify.cc:11750
 #, gcc-internal-format
 msgid "%qD specified in %<inscan%> %<reduction%> clause but not in %<scan%> directive clause"
 msgstr ""
 
-#: gimplify.cc:11646
+#: gimplify.cc:11769
 #, fuzzy, gcc-internal-format
 msgid "invalid private reduction on %qE"
 msgstr "%qD ei ole malli"
 
-#: gimplify.cc:11796
+#: gimplify.cc:11919
 #, fuzzy, gcc-internal-format
 msgid "%<inscan%> %<reduction%> clause used together with %<linear%> clause for a variable other than loop iterator"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: gimplify.cc:12130
+#: gimplify.cc:12253
 #, fuzzy, gcc-internal-format
 msgid "%<mutexinoutset%> kind in %<depend%> clause on a %<taskwait%> construct"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: gimplify.cc:12389 gimplify.cc:12393 gimplify.cc:12402
+#: gimplify.cc:12512 gimplify.cc:12516 gimplify.cc:12525
 #, gcc-internal-format
 msgid "%qs clause may not appear on non-rectangular %qs"
 msgstr ""
 
-#: gimplify.cc:12621
+#: gimplify.cc:12744
 #, fuzzy, gcc-internal-format
 #| msgid "invalid type for iteration variable %qE"
 msgid "threadprivate iteration variable %qD"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: gimplify.cc:12652 gimplify.cc:12760
+#: gimplify.cc:12775 gimplify.cc:12883
 #, fuzzy, gcc-internal-format
 msgid "conditional %<lastprivate%> on loop iterator %qD ignored"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: gimplify.cc:13460
+#: gimplify.cc:13585
 #, gcc-internal-format
 msgid "%<bind%> clause not specified on a %<loop%> construct not nested inside another OpenMP construct"
 msgstr ""
 
-#: gimplify.cc:13484
+#: gimplify.cc:13609
 #, gcc-internal-format
 msgid "%<bind(parallel)%> on a %<loop%> construct nested inside %<simd%> construct"
 msgstr ""
 
-#: gimplify.cc:13504
+#: gimplify.cc:13629
 #, gcc-internal-format
 msgid "%<bind(teams)%> on a %<loop%> region not strictly nested inside of a %<teams%> region"
 msgstr ""
 
-#: gimplify.cc:13529
+#: gimplify.cc:13654
 #, gcc-internal-format
 msgid "invalid %<task%> reduction modifier on construct other than %<parallel%>, %qs or %<sections%>"
 msgstr ""
 
-#: gimplify.cc:13557
+#: gimplify.cc:13682
 #, gcc-internal-format
 msgid "%<lastprivate%> clause on a %<loop%> construct refers to a variable %qD which is not the loop iterator"
 msgstr ""
 
-#: gimplify.cc:14639 omp-low.cc:3628
+#: gimplify.cc:14764 omp-low.cc:3654
 #, fuzzy, gcc-internal-format
 msgid "%<ordered%> construct with %<depend%> clause must be closely nested inside a loop with %<ordered%> clause with a parameter"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: gimplify.cc:14657
+#: gimplify.cc:14782
 #, gcc-internal-format
 msgid "variable %qE is not an iteration of outermost loop %d, expected %qE"
 msgstr ""
 
-#: gimplify.cc:14670
+#: gimplify.cc:14795
 #, fuzzy, gcc-internal-format
 msgid "number of variables in %<depend%> clause with %<sink%> modifier does not match number of iteration variables"
 msgstr "argumenttien määrä ei vastaa prototyyppiä"
 
-#: gimplify.cc:14683
+#: gimplify.cc:14808
 #, fuzzy, gcc-internal-format
 msgid "more than one %<depend%> clause with %<source%> modifier on an %<ordered%> construct"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: gimplify.cc:14694
+#: gimplify.cc:14819
 #, fuzzy, gcc-internal-format
 msgid "%<depend%> clause with %<source%> modifier specified together with %<depend%> clauses with %<sink%> modifier on the same construct"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: gimplify.cc:15986
+#: gimplify.cc:16122
 #, fuzzy, gcc-internal-format
 msgid "gimplification failed"
 msgstr ""
 " EPÄONNISTUI\n"
 "\n"
 
-#: gimplify.cc:16514
+#: gimplify.cc:16650
 #, gcc-internal-format
 msgid "%qT is promoted to %qT when passed through %<...%>"
 msgstr "%qT muunnetaan tyypiksi %qT, kun se viedään %<...%>:n läpi"
 
-#: gimplify.cc:16519
+#: gimplify.cc:16655
 #, gcc-internal-format
 msgid "(so you should pass %qT not %qT to %<va_arg%>)"
 msgstr "(eli kannattaisi antaa %qT eikä %qT funktiolle %<va_arg%>)"
 
-#: gimplify.cc:16526
+#: gimplify.cc:16662
 #, gcc-internal-format
 msgid "if this code is reached, the program will abort"
 msgstr "jos tämä koodi saavutetaan, ohjelma keskeytyy"
@@ -27324,7 +27418,7 @@ msgstr ""
 msgid "IPA modref summary is missing in input file"
 msgstr ""
 
-#: ipa-prop.cc:4764 ipa-prop.cc:4806 ipa-prop.cc:4890 ipa-prop.cc:4938
+#: ipa-prop.cc:4774 ipa-prop.cc:4816 ipa-prop.cc:4902 ipa-prop.cc:4950
 #, fuzzy, gcc-internal-format
 msgid "invalid jump function in LTO stream"
 msgstr "virheellinen muunnos gimple-kutsussa"
@@ -27404,17 +27498,17 @@ msgstr ""
 msgid "maximum number of LRA assignment passes is achieved (%d)"
 msgstr "Kumoamistoimintojen enimmäismäärä"
 
-#: lra-assigns.cc:1821 reload1.cc:1242
+#: lra-assigns.cc:1855 reload1.cc:1242
 #, fuzzy, gcc-internal-format
 msgid "%<asm%> operand has impossible constraints"
 msgstr "%s: Tätä tiedostoa ei voitu varmuuskopioida"
 
-#: lra-assigns.cc:1836
+#: lra-assigns.cc:1870
 #, fuzzy, gcc-internal-format
 msgid "unable to find a register to spill"
 msgstr "Tiedostoa ”%s” ei löytynyt."
 
-#: lra-constraints.cc:4170 reload.cc:3842 reload.cc:4097
+#: lra-constraints.cc:4170 reload.cc:3845 reload.cc:4100
 #, fuzzy, gcc-internal-format
 msgid "inconsistent operand constraints in an %<asm%>"
 msgstr "virheellinen lvalue asm-tulosteessa %d"
@@ -27697,32 +27791,32 @@ msgstr "kohdemuoto ei tue äärettömyyttä"
 msgid "default %<target_clones%> attribute was not set"
 msgstr "versioattribuutti ei ole merkkijono"
 
-#: multiple_target.cc:351
+#: multiple_target.cc:327 c-family/c-attribs.cc:5494
 #, fuzzy, gcc-internal-format
 msgid "single %<target_clones%> attribute is ignored"
 msgstr "%qE-attribuuttia ei huomioida"
 
-#: multiple_target.cc:360
+#: multiple_target.cc:336
 #, fuzzy, gcc-internal-format
 msgid "clones for %<target_clones%> attribute cannot be created"
 msgstr "versioattribuutti ei ole merkkijono"
 
-#: multiple_target.cc:363
+#: multiple_target.cc:339
 #, fuzzy, gcc-internal-format
 msgid "function %q+F can never be copied because it has %<noclone%> attribute"
 msgstr "%Jfunktio %qF ei voi koskaan olla avoin, koska se käyttää avoimille funktioille sopimattomia attribuutteja"
 
-#: multiple_target.cc:384
+#: multiple_target.cc:360
 #, fuzzy, gcc-internal-format
 msgid "%<default%> target was not set"
 msgstr "# Ei kohde:"
 
-#: multiple_target.cc:388
+#: multiple_target.cc:364
 #, fuzzy, gcc-internal-format
 msgid "an empty string cannot be in %<target_clones%> attribute"
 msgstr "%qE-attribuuttia ei huomioida"
 
-#: multiple_target.cc:392
+#: multiple_target.cc:368
 #, fuzzy, gcc-internal-format
 msgid "multiple %<default%> targets were set"
 msgstr "useita default-nimikkeitä samassa switch-lauseessa"
@@ -27812,268 +27906,268 @@ msgstr "switch alkaa tästä"
 msgid "... without %qs clause near to here"
 msgstr ""
 
-#: omp-low.cc:2678 omp-offload.cc:1488
+#: omp-low.cc:2704 omp-offload.cc:1488
 #, gcc-internal-format
 msgid "%<seq%> overrides other OpenACC loop specifiers"
 msgstr ""
 
-#: omp-low.cc:2681 omp-offload.cc:1489
+#: omp-low.cc:2707 omp-offload.cc:1489
 #, gcc-internal-format
 msgid "%<auto%> conflicts with other OpenACC loop specifiers"
 msgstr ""
 
-#: omp-low.cc:2685 omp-offload.cc:1523
+#: omp-low.cc:2711 omp-offload.cc:1523
 #, gcc-internal-format
 msgid "inner loop uses same OpenACC parallelism as containing loop"
 msgstr ""
 
-#: omp-low.cc:2736
+#: omp-low.cc:2762
 #, fuzzy, gcc-internal-format
 msgid "argument not permitted on %qs clause"
 msgstr "osoittimet eivät ole sallittuja case-arvoja"
 
-#: omp-low.cc:2740
+#: omp-low.cc:2766
 #, fuzzy, gcc-internal-format
 msgid "enclosing parent compute construct"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: omp-low.cc:2743
+#: omp-low.cc:2769
 #, fuzzy, gcc-internal-format
 msgid "enclosing routine"
 msgstr "# Ei kohde:"
 
-#: omp-low.cc:2784
+#: omp-low.cc:2810
 #, fuzzy, gcc-internal-format
 msgid "conflicting reduction operations for %qE"
 msgstr "ristiriitaiset tyypit %q+D:lle"
 
-#: omp-low.cc:2787
+#: omp-low.cc:2813
 #, fuzzy, gcc-internal-format
 msgid "location of the previous reduction for %qE"
 msgstr "%qD:lle ei ole edellistä esittelyä"
 
-#: omp-low.cc:2820
+#: omp-low.cc:2846
 #, gcc-internal-format
 msgid "nested loop in reduction needs reduction clause for %qE"
 msgstr ""
 
-#: omp-low.cc:3077
+#: omp-low.cc:3103
 #, gcc-internal-format
 msgid "%<target%> construct with nested %<teams%> construct contains directives outside of the %<teams%> construct"
 msgstr ""
 
-#: omp-low.cc:3135
+#: omp-low.cc:3161
 #, gcc-internal-format
 msgid "non-OpenACC construct inside of OpenACC routine"
 msgstr ""
 
-#: omp-low.cc:3144
+#: omp-low.cc:3170
 #, gcc-internal-format
 msgid "non-OpenACC construct inside of OpenACC region"
 msgstr ""
 
-#: omp-low.cc:3159
+#: omp-low.cc:3185
 #, gcc-internal-format
 msgid "OpenMP constructs are not allowed in target region with %<ancestor%>"
 msgstr ""
 
-#: omp-low.cc:3184 omp-low.cc:3251
+#: omp-low.cc:3210 omp-low.cc:3277
 #, gcc-internal-format
 msgid "OpenMP constructs other than %<parallel%>, %<loop%> or %<simd%> may not be nested inside a region with the %<order(concurrent)%> clause"
 msgstr ""
 
-#: omp-low.cc:3203
+#: omp-low.cc:3229
 #, fuzzy, gcc-internal-format
 msgid "%<ordered simd threads%> must be closely nested inside of %<%s simd%> region"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: omp-low.cc:3219
+#: omp-low.cc:3245
 #, gcc-internal-format
 msgid "OpenMP constructs other than %<ordered simd%>, %<simd%>, %<loop%> or %<atomic%> may not be nested inside %<simd%> region"
 msgstr ""
 
-#: omp-low.cc:3233
+#: omp-low.cc:3259
 #, gcc-internal-format
 msgid "only %<distribute%>, %<parallel%> or %<loop%> regions are allowed to be strictly nested inside %<teams%> region"
 msgstr ""
 
-#: omp-low.cc:3247
+#: omp-low.cc:3273
 #, gcc-internal-format
 msgid "OpenMP constructs other than %<parallel%>, %<loop%> or %<simd%> may not be nested inside a %<loop%> region"
 msgstr ""
 
-#: omp-low.cc:3267
+#: omp-low.cc:3293
 #, gcc-internal-format
 msgid "%<distribute%> region must be strictly nested inside %<teams%> construct"
 msgstr ""
 
-#: omp-low.cc:3316
+#: omp-low.cc:3342
 #, gcc-internal-format
 msgid "OpenACC loop directive must be associated with an OpenACC compute region"
 msgstr ""
 
-#: omp-low.cc:3338
+#: omp-low.cc:3364
 #, fuzzy, gcc-internal-format
 msgid "orphaned %qs construct"
 msgstr "väärin aseteltu [:upper:]- ja/tai [:lower:]-rakenne"
 
-#: omp-low.cc:3367
+#: omp-low.cc:3393
 #, fuzzy, gcc-internal-format
 msgid "%<cancel for%> inside %<nowait%> for construct"
 msgstr "<this%>-sanaa ei voi käyttää tässä yhteydessä"
 
-#: omp-low.cc:3372
+#: omp-low.cc:3398
 #, fuzzy, gcc-internal-format
 msgid "%<cancel for%> inside %<ordered%> for construct"
 msgstr "<this%>-sanaa ei voi käyttää tässä yhteydessä"
 
-#: omp-low.cc:3392 omp-low.cc:3405
+#: omp-low.cc:3418 omp-low.cc:3431
 #, fuzzy, gcc-internal-format
 msgid "%<cancel sections%> inside %<nowait%> sections construct"
 msgstr "<this%>-sanaa ei voi käyttää tässä yhteydessä"
 
-#: omp-low.cc:3434
+#: omp-low.cc:3460
 #, gcc-internal-format
 msgid "%<%s taskgroup%> construct not closely nested inside of %<taskgroup%> region"
 msgstr ""
 
-#: omp-low.cc:3459
+#: omp-low.cc:3485
 #, gcc-internal-format
 msgid "invalid arguments"
 msgstr "virheelliset argumentit"
 
-#: omp-low.cc:3465
+#: omp-low.cc:3491
 #, gcc-internal-format
 msgid "%<%s %s%> construct not closely nested inside of %qs"
 msgstr ""
 
-#: omp-low.cc:3494
+#: omp-low.cc:3520
 #, gcc-internal-format
 msgid "barrier region may not be closely nested inside of work-sharing, %<loop%>, %<critical%>, %<ordered%>, %<master%>, %<masked%>, explicit %<task%> or %<taskloop%> region"
 msgstr ""
 
-#: omp-low.cc:3501
+#: omp-low.cc:3527
 #, gcc-internal-format
 msgid "work-sharing region may not be closely nested inside of work-sharing, %<loop%>, %<critical%>, %<ordered%>, %<master%>, %<masked%>, explicit %<task%> or %<taskloop%> region"
 msgstr ""
 
-#: omp-low.cc:3532
+#: omp-low.cc:3558
 #, gcc-internal-format
 msgid "%qs region may not be closely nested inside of work-sharing, %<loop%>, explicit %<task%> or %<taskloop%> region"
 msgstr ""
 
-#: omp-low.cc:3567
+#: omp-low.cc:3593
 #, gcc-internal-format
 msgid "%<scope%> region may not be closely nested inside of work-sharing, %<loop%>, explicit %<task%>, %<taskloop%>, %<critical%>, %<ordered%>, %<master%>, or %<masked%> region"
 msgstr ""
 
-#: omp-low.cc:3592 omp-low.cc:3749 c-family/c-omp.cc:729
+#: omp-low.cc:3618 omp-low.cc:3775 c-family/c-omp.cc:734
 #, gcc-internal-format
 msgid "%<depend(%s)%> is only allowed in %<omp ordered%>"
 msgstr ""
 
-#: omp-low.cc:3620
+#: omp-low.cc:3646
 #, gcc-internal-format
 msgid "%<ordered%> construct with %<depend%> clause must be closely nested inside an %<ordered%> loop"
 msgstr ""
 
-#: omp-low.cc:3637
+#: omp-low.cc:3663
 #, gcc-internal-format
 msgid "invalid depend kind in omp %<ordered%> %<depend%>"
 msgstr ""
 
-#: omp-low.cc:3652
+#: omp-low.cc:3678
 #, gcc-internal-format
 msgid "%<ordered%> %<simd%> must be closely nested inside %<simd%> region"
 msgstr ""
 
-#: omp-low.cc:3665
+#: omp-low.cc:3691
 #, gcc-internal-format
 msgid "%<ordered%> region may not be closely nested inside of %<critical%>, %<ordered%>, explicit %<task%> or %<taskloop%> region"
 msgstr ""
 
-#: omp-low.cc:3678 omp-low.cc:3700
+#: omp-low.cc:3704 omp-low.cc:3726
 #, gcc-internal-format
 msgid "%<ordered%> region must be closely nested inside a loop region with an %<ordered%> clause"
 msgstr ""
 
-#: omp-low.cc:3686
+#: omp-low.cc:3712
 #, fuzzy, 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 "%<void%> vain parametrina ei ole oikeutettu"
 
-#: omp-low.cc:3717
+#: omp-low.cc:3743
 #, gcc-internal-format
 msgid "%<critical%> region may not be nested inside a %<critical%> region with the same name"
 msgstr ""
 
-#: omp-low.cc:3735
+#: omp-low.cc:3761
 #, gcc-internal-format
 msgid "%<teams%> construct must be closely nested inside of %<target%> construct or not nested in any OpenMP construct"
 msgstr ""
 
-#: omp-low.cc:3757
+#: omp-low.cc:3783
 #, gcc-internal-format
 msgid "OpenACC region inside of OpenACC routine, nested parallelism not supported yet"
 msgstr ""
 
-#: omp-low.cc:3770
+#: omp-low.cc:3796
 #, gcc-internal-format
 msgid "OpenACC construct inside of non-OpenACC region"
 msgstr ""
 
-#: omp-low.cc:3831
+#: omp-low.cc:3857
 #, gcc-internal-format
 msgid "%s %qs construct inside of %s %qs region"
 msgstr ""
 
-#: omp-low.cc:3844 omp-low.cc:3851
+#: omp-low.cc:3870 omp-low.cc:3877
 #, gcc-internal-format
 msgid "%qs construct inside of %qs region"
 msgstr ""
 
-#: omp-low.cc:4090
+#: omp-low.cc:4116
 #, gcc-internal-format
 msgid "setjmp/longjmp inside %<simd%> construct"
 msgstr ""
 
-#: omp-low.cc:4116
+#: omp-low.cc:4142
 #, gcc-internal-format
 msgid "OpenMP runtime API call %qD in a region with %<order(concurrent)%> clause"
 msgstr ""
 
-#: omp-low.cc:4132
+#: omp-low.cc:4158
 #, gcc-internal-format
 msgid "OpenMP runtime API call %qD strictly nested in a %<teams%> region"
 msgstr ""
 
-#: omp-low.cc:4144
+#: omp-low.cc:4170
 #, fuzzy, gcc-internal-format
 msgid "OpenMP runtime API call %qD in a region with %<device(ancestor)%> clause"
 msgstr "sisäkkäisessä funktiossa käytetty rekisterimuuttujaa %qD"
 
-#: omp-low.cc:9800
+#: omp-low.cc:9829
 #, gcc-internal-format
 msgid "ignoring sink clause with offset that is not a multiple of the loop step"
 msgstr ""
 
-#: omp-low.cc:9823
+#: omp-low.cc:9852
 #, gcc-internal-format
 msgid "first offset must be in opposite direction of loop iterations"
 msgstr ""
 
-#: omp-low.cc:14581
+#: omp-low.cc:14618
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "invalid exit from %s structured block"
 msgstr "%qs-attribuutin virheellinen argumentti"
 
-#: omp-low.cc:14583 omp-low.cc:14588
+#: omp-low.cc:14620 omp-low.cc:14625
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "invalid entry to %s structured block"
 msgstr "%qs-attribuutin virheellinen argumentti"
 
 #. Otherwise, be vague and lazy, but efficient.
-#: omp-low.cc:14592
+#: omp-low.cc:14629
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "invalid branch to/from %s structured block"
 msgstr "%qs-attribuutin virheellinen argumentti"
@@ -28110,7 +28204,12 @@ msgstr "osoittimet eivät ole sallittuja case-arvoja"
 msgid "location of OpenACC %<kernels%>"
 msgstr ""
 
-#: omp-oacc-neuter-broadcast.cc:1788
+#: omp-oacc-kernels-decompose.cc:1288
+#, fuzzy, gcc-internal-format
+msgid "%qs not yet supported"
+msgstr "  -shared                  Luo jaettu kirjasto\n"
+
+#: omp-oacc-neuter-broadcast.cc:1764
 #, gcc-internal-format
 msgid "shared-memory region overflow"
 msgstr ""
@@ -28230,7 +28329,7 @@ msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 msgid "command-line option %qs is not supported by this configuration"
 msgstr "komentorivivalitsin %qs on kelvollinen kohteelle %s, mutta ei kohteelle %s"
 
-#: opts-common.cc:1389 opts.cc:2410
+#: opts-common.cc:1389 opts.cc:2419
 #, fuzzy, gcc-internal-format
 msgid "missing argument to %qs"
 msgstr "polku puuttuu %qs:n jälkeen"
@@ -28364,8 +28463,8 @@ msgstr "%q+D:n ensimmäisen argumentin pitäisi olla %<int%>"
 
 #: opts.cc:831 opts.cc:837 opts.cc:843 opts.cc:849 opts.cc:860 opts.cc:870
 #: opts.cc:876 opts.cc:882 opts.cc:888 opts.cc:894 opts.cc:900 opts.cc:906
-#: opts.cc:912 opts.cc:918 opts.cc:935 opts.cc:943 config/mips/mips.cc:20035
-#: config/mips/mips.cc:20037 config/mips/mips.cc:20050
+#: opts.cc:912 opts.cc:918 opts.cc:935 opts.cc:943 config/mips/mips.cc:20134
+#: config/mips/mips.cc:20136 config/mips/mips.cc:20149
 #, fuzzy, gcc-internal-format
 msgid "%qs is incompatible with %qs"
 msgstr "Muodostin %qs"
@@ -28455,177 +28554,177 @@ msgstr "Profilointiajastin vanhentunut"
 msgid "vtable verification is not supported with LTO"
 msgstr "Profilointiajastin vanhentunut"
 
-#: opts.cc:1323
+#: opts.cc:1351
 #, gcc-internal-format
 msgid "var-tracking-assignments changes selective scheduling"
 msgstr ""
 
-#: opts.cc:1379 config/darwin.cc:3359
+#: opts.cc:1386 config/darwin.cc:3359
 #, fuzzy, gcc-internal-format
 msgid "%<-freorder-blocks-and-partition%> does not work with exceptions on this architecture"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: opts.cc:1395
+#: opts.cc:1402
 #, fuzzy, gcc-internal-format
 msgid "%<-freorder-blocks-and-partition%> does not support unwind info on this architecture"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: opts.cc:1413 config/pa/pa.cc:564
+#: opts.cc:1420 config/pa/pa.cc:564
 #, fuzzy, gcc-internal-format
 msgid "%<-freorder-blocks-and-partition%> does not work on this architecture"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: opts.cc:1922
+#: opts.cc:1929
 #, gcc-internal-format
 msgid "unrecognized %<include_flags 0x%x%> passed to %<print_specific_help%>"
 msgstr ""
 
-#: opts.cc:2142
+#: opts.cc:2150
 #, fuzzy, gcc-internal-format
 msgid "%<-fsanitize=all%> option is not valid"
 msgstr "Kelvolliset argumentit --quoting-style-valitsimelle ovat:"
 
-#: opts.cc:2180
+#: opts.cc:2189
 #, fuzzy, gcc-internal-format
 msgid "unrecognized argument to %<-f%ssanitize%s=%> option: %q.*s; did you mean %qs?"
 msgstr "tuntematon komentorivivalitsin ”%s”"
 
-#: opts.cc:2186
+#: opts.cc:2195
 #, fuzzy, gcc-internal-format
 msgid "unrecognized argument to %<-f%ssanitize%s=%> option: %q.*s"
 msgstr "tuntematon komentorivivalitsin ”%s”"
 
-#: opts.cc:2221
+#: opts.cc:2230
 #, fuzzy, gcc-internal-format
 msgid "%qs attribute directive ignored"
 msgstr "%qE-attribuuttia ei huomioida %qE:lle"
 
-#: opts.cc:2245
+#: opts.cc:2254
 #, fuzzy, gcc-internal-format
 msgid "unrecognized argument to %<-fzero-call-used-regs=%>: %qs"
 msgstr "valitsin -mcpu=%s on ristiriidassa valitsimen -march=%s kanssa"
 
-#: opts.cc:2269
+#: opts.cc:2278
 #, fuzzy, gcc-internal-format
 msgid "invalid arguments for %<-falign-%s%> option: %qs"
 msgstr "Virheellinen vähimmäisargumenttimäärä (%d) funktiolle %s"
 
-#: opts.cc:2284
+#: opts.cc:2293
 #, fuzzy, gcc-internal-format
 msgid "invalid number of arguments for %<-falign-%s%> option: %qs"
 msgstr "liian monta argumenttia funktiolle %qE"
 
-#: opts.cc:2293
+#: opts.cc:2302
 #, fuzzy, gcc-internal-format
 msgid "%<-falign-%s%> is not between 0 and %d"
 msgstr "  uid = %d, gid = %d, oikeudet = 0%o.\n"
 
-#: opts.cc:2352
+#: opts.cc:2361
 #, fuzzy, gcc-internal-format
 msgid "invalid arguments for %<-fpatchable-function-entry%>"
 msgstr "Virheellinen vähimmäisargumenttimäärä (%d) funktiolle %s"
 
-#: opts.cc:2465
+#: opts.cc:2474
 #, gcc-internal-format
 msgid "%<--help%> argument %q.*s is ambiguous, please be more specific"
 msgstr ""
 
-#: opts.cc:2474
+#: opts.cc:2483
 #, fuzzy, gcc-internal-format
 msgid "unrecognized argument to %<--help=%> option: %q.*s"
 msgstr "tuntematon komentorivivalitsin ”%s”"
 
-#: opts.cc:2638
+#: opts.cc:2647
 #, gcc-internal-format
 msgid "arguments ignored for %<-Wattributes=%>; use %<-Wno-attributes=%> instead"
 msgstr ""
 
-#: opts.cc:2644
+#: opts.cc:2653
 #, gcc-internal-format
 msgid "trailing %<,%> in arguments for %<-Wno-attributes=%>"
 msgstr ""
 
-#: opts.cc:2853
+#: opts.cc:2862
 #, gcc-internal-format
 msgid "%<-foffload-abi%> option can be specified only for offload compiler"
 msgstr ""
 
-#: opts.cc:2861
+#: opts.cc:2870
 #, fuzzy, gcc-internal-format
 msgid "structure alignment must be a small power of two, not %wu"
 msgstr "kohdistuksen pitää olla kahden potenssi, ei %d"
 
-#: opts.cc:2982
+#: opts.cc:2991
 #, fuzzy, gcc-internal-format
 msgid "unknown stack check parameter %qs"
 msgstr "tuntematon konetila %qs"
 
-#: opts.cc:3028
+#: opts.cc:3037
 #, gcc-internal-format
 msgid "%<-gdwarf%s%> is ambiguous; use %<-gdwarf-%s%> for DWARF version or %<-gdwarf%> %<-g%s%> for debug level"
 msgstr ""
 
-#: opts.cc:3039
+#: opts.cc:3048
 #, gcc-internal-format
 msgid "dwarf version %wu is not supported"
 msgstr "dwarfin versio %wu ei ole tuettu"
 
-#: opts.cc:3088
+#: opts.cc:3097
 #, fuzzy, gcc-internal-format
 msgid "unrecognized argument to %<-flto=%> option: %qs"
 msgstr "tuntematon komentorivivalitsin ”%s”"
 
-#: opts.cc:3288
+#: opts.cc:3297
 #, fuzzy, gcc-internal-format
 msgid "target system does not support debug output"
 msgstr "%s ei tue muotoilua %<%%%s%c%> %s"
 
-#: opts.cc:3326
+#: opts.cc:3335
 #, fuzzy, gcc-internal-format
 msgid "debug format %qs conflicts with prior selection"
 msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 
-#: opts.cc:3350
+#: opts.cc:3359
 #, fuzzy, gcc-internal-format
 msgid "unrecognized debug output level %qs"
 msgstr "tunnistamaton rekisterinimi %qs"
 
-#: opts.cc:3352
+#: opts.cc:3361
 #, fuzzy, gcc-internal-format
 msgid "debug output level %qs is too high"
 msgstr "tunnistamaton rekisterinimi %qs"
 
-#: opts.cc:3364
+#: opts.cc:3373
 #, fuzzy, gcc-internal-format
 msgid "unrecognized btf debug output level %qs"
 msgstr "tunnistamaton rekisterinimi %qs"
 
-#: opts.cc:3381
+#: opts.cc:3390
 #, gcc-internal-format
 msgid "getting core file size maximum limit: %m"
 msgstr ""
 
-#: opts.cc:3385
+#: opts.cc:3394
 #, gcc-internal-format
 msgid "setting core file size limit to maximum: %m"
 msgstr ""
 
-#: opts.cc:3430
+#: opts.cc:3439
 #, gcc-internal-format, gfc-internal-format
 msgid "unrecognized gcc debugging option: %c"
 msgstr "tunnistamaton gcc:n vianjäljitysvalitsin: %c"
 
-#: opts.cc:3459
+#: opts.cc:3468
 #, fuzzy, gcc-internal-format
 msgid "%<-W%serror=%s%>: no option %<-%s%>; did you mean %<-%s%>?"
 msgstr "tunnistamaton komentorivivalitsin %<-fdump-%s%>"
 
-#: opts.cc:3463
+#: opts.cc:3472
 #, fuzzy, gcc-internal-format
 msgid "%<-W%serror=%s%>: no option %<-%s%>"
 msgstr "%s: valitsin ”%s” on moniselitteinen\n"
 
-#: opts.cc:3467
+#: opts.cc:3476
 #, fuzzy, gcc-internal-format
 msgid "%<-Werror=%s%>: %<-%s%> is not an option that controls warnings"
 msgstr "tuntematon komentorivivalitsin %qs"
@@ -28793,7 +28892,7 @@ msgstr "PAMia ei voitu alustaa: %s"
 
 #: plugin.cc:1009
 #, gcc-internal-format
-msgid "%<-iplugindir%> <dir> option not passed from the gcc driver"
+msgid "%<-iplugindir%> option not passed from the gcc driver"
 msgstr ""
 
 #: pointer-query.cc:1202
@@ -29058,7 +29157,7 @@ msgstr "virheellinen ”asm”: "
 msgid "the target does not support %<asm goto%> with outputs in %<asm%>"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: reload.cc:3699
+#: reload.cc:3702
 #, fuzzy, gcc-internal-format
 msgid "%<&%> constraint used with no register class"
 msgstr "sisäkkäisessä funktiossa käytetty rekisterimuuttujaa %qD"
@@ -29693,27 +29792,37 @@ msgstr "Konenimen osoiteperhe ei ole tuettu"
 msgid "%qs is not supported for this target"
 msgstr "%qs ei ole tuettu tällä kohteella"
 
-#: toplev.cc:2016
+#: toplev.cc:1685
+#, fuzzy, gcc-internal-format
+msgid "%<-fsanitize=shadow-call-stack%> not supported in current platform"
+msgstr "Konenimen osoiteperhe ei ole tuettu"
+
+#: toplev.cc:1688
+#, gcc-internal-format
+msgid "%<-fsanitize=shadow-call-stack%> requires %<-fno-exceptions%>"
+msgstr ""
+
+#: toplev.cc:2026
 #, fuzzy, gcc-internal-format
 msgid "error writing to %s: %m"
 msgstr "%s: Virhe kirjoitettaessa %s\n"
 
-#: toplev.cc:2018
+#: toplev.cc:2028
 #, fuzzy, gcc-internal-format
 msgid "error closing %s: %m"
 msgstr "virhe suljettaessa laitetta %s"
 
-#: toplev.cc:2136
+#: toplev.cc:2146
 #, gcc-internal-format
 msgid "mpfr not configured to handle all floating modes"
 msgstr ""
 
-#: toplev.cc:2222
+#: toplev.cc:2232
 #, fuzzy, gcc-internal-format
 msgid "self-tests are not enabled in this build"
 msgstr "Muodostin %qs"
 
-#: toplev.cc:2315
+#: toplev.cc:2325
 #, fuzzy, gcc-internal-format
 msgid "self-tests incompatible with %<-E%>"
 msgstr "Muodostin %qs"
@@ -30238,7 +30347,7 @@ msgstr "Ei välitetä lausenimiöstä tyhjässä lauseessa kohdassa %L"
 msgid "invalid operand in return statement"
 msgstr "ei palautuslausetta funktiossa, joka palauttaa ei-voidin"
 
-#: tree-cfg.cc:4794 c/gimple-parser.cc:2452
+#: tree-cfg.cc:4794 c/gimple-parser.cc:2474
 #, fuzzy, gcc-internal-format
 msgid "invalid conversion in return statement"
 msgstr "enum-muunnos palautuksessa on virheellistä C++-kielessä"
@@ -30684,27 +30793,27 @@ msgstr "virheellinen lauseke kohdemuuttujana"
 msgid "target does not support atomic profile update, single mode is selected"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: tree-ssa-alias.cc:3968
+#: tree-ssa-alias.cc:3991
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "invalid fn spec attribute \"%s\""
 msgstr "epäkelpo alkiotyyppi attribuutille %qs"
 
-#: tree-ssa-alias.cc:4007
+#: tree-ssa-alias.cc:4030
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "invalid fn spec attribute \"%s\" arg %i"
 msgstr "virheellinen %<auto%>:n käyttö muunnosoperaattorissa"
 
-#: tree-ssa-ccp.cc:4606 c-family/c-common.cc:5806
+#: tree-ssa-ccp.cc:4606 c-family/c-common.cc:5810
 #, gcc-internal-format
 msgid "%qs pointer is null"
 msgstr ""
 
-#: tree-ssa-ccp.cc:4609 c-family/c-common.cc:5809
+#: tree-ssa-ccp.cc:4609 c-family/c-common.cc:5813
 #, fuzzy, gcc-internal-format
 msgid "in a call to non-static member function %qD"
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: tree-ssa-ccp.cc:4615 c-family/c-common.cc:5815
+#: tree-ssa-ccp.cc:4615 c-family/c-common.cc:5819
 #, gcc-internal-format, gfc-internal-format
 msgid "argument %u null where non-null expected"
 msgstr ""
@@ -30714,17 +30823,17 @@ msgstr ""
 msgid "in a call to built-in function %qD"
 msgstr "Virheellinen vähimmäisargumenttimäärä (%d) funktiolle %s"
 
-#: tree-ssa-ccp.cc:4625 c-family/c-common.cc:5819
+#: tree-ssa-ccp.cc:4625 c-family/c-common.cc:5823
 #, fuzzy, gcc-internal-format
 msgid "in a call to function %qD declared %qs"
 msgstr "muuttuja %qD esitelty %<inline%>:ksi"
 
-#: tree-ssa-loop-niter.cc:3472
+#: tree-ssa-loop-niter.cc:3478
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "iteration %s invokes undefined behavior"
 msgstr "operaatio %qE:lle voi olla määrittelemätön"
 
-#: tree-ssa-loop-niter.cc:3473
+#: tree-ssa-loop-niter.cc:3479
 #, gcc-internal-format
 msgid "within this loop"
 msgstr "tässä silmukassa"
@@ -30919,7 +31028,7 @@ msgstr "%qE:a ei ole alustettu"
 msgid "%qs may be used uninitialized"
 msgstr "%qD saattaa tulla käytetyksi alustamattomana tässä funktiossa"
 
-#: tree-ssa-uninit.cc:314 varasm.cc:366 varasm.cc:7825
+#: tree-ssa-uninit.cc:314 varasm.cc:366 varasm.cc:7828
 #, gcc-internal-format
 msgid "%qD was declared here"
 msgstr "%qD esiteltiin täällä"
@@ -31150,141 +31259,141 @@ msgstr ""
 msgid "vector shuffling operation will be expanded piecewise"
 msgstr ""
 
-#: tree-vect-loop.cc:4341
+#: tree-vect-loop.cc:4334
 #, gcc-internal-format
 msgid "vectorization did not happen for a simd loop"
 msgstr ""
 
-#: tree.cc:2223
+#: tree.cc:2259
 #, fuzzy, gcc-internal-format
 msgid "non-constant element in constant CONSTRUCTOR"
 msgstr "alustusalkio ei ole vakio"
 
-#: tree.cc:2225
+#: tree.cc:2261
 #, fuzzy, gcc-internal-format
 msgid "side-effects element in no-side-effects CONSTRUCTOR"
 msgstr "alustusalkio ei ole vakio"
 
-#: tree.cc:7143
+#: tree.cc:7179
 #, fuzzy, gcc-internal-format
 msgid "arrays of functions are not meaningful"
 msgstr "------ Semaforitaulukot --------\n"
 
-#: tree.cc:7307
+#: tree.cc:7343
 #, gcc-internal-format
 msgid "function return type cannot be function"
 msgstr "funktion paluuarvon tyyppi ei voi olla funktio"
 
-#: tree.cc:8688 tree.cc:8773 tree.cc:8836
+#: tree.cc:8724 tree.cc:8809 tree.cc:8872
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "tree check: %s, have %s in %s, at %s:%d"
 msgstr "verifiointi epäonnistui kohdassa PC=%d: %s"
 
-#: tree.cc:8725
+#: tree.cc:8761
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "tree check: expected none of %s, have %s in %s, at %s:%d"
 msgstr "verifiointi epäonnistui kohdassa PC=%d: %s"
 
-#: tree.cc:8738
+#: tree.cc:8774
 #, fuzzy, gcc-internal-format
 msgid "tree check: expected class %qs, have %qs (%s) in %s, at %s:%d"
 msgstr "verifiointi epäonnistui kohdassa PC=%d: %s"
 
-#: tree.cc:8787
+#: tree.cc:8823
 #, fuzzy, gcc-internal-format
 msgid "tree check: did not expect class %qs, have %qs (%s) in %s, at %s:%d"
 msgstr "verifiointi epäonnistui kohdassa PC=%d: %s"
 
-#: tree.cc:8800
+#: tree.cc:8836
 #, fuzzy, gcc-internal-format
 msgid "tree check: expected %<omp_clause %s%>, have %qs in %s, at %s:%d"
 msgstr "verifiointi epäonnistui kohdassa PC=%d: %s"
 
-#: tree.cc:8862
+#: tree.cc:8898
 #, fuzzy, gcc-internal-format
 msgid "tree check: expected tree that contains %qs structure, have %qs in %s, at %s:%d"
 msgstr "verifiointi epäonnistui kohdassa PC=%d: %s"
 
-#: tree.cc:8876
+#: tree.cc:8912
 #, fuzzy, gcc-internal-format
 msgid "tree check: accessed elt %d of %<tree_int_cst%> with %d elts in %s, at %s:%d"
 msgstr "verifiointi epäonnistui kohdassa PC=%d: %s"
 
-#: tree.cc:8889
+#: tree.cc:8925
 #, fuzzy, gcc-internal-format
 msgid "tree check: accessed elt %d of %<tree_vec%> with %d elts in %s, at %s:%d"
 msgstr "verifiointi epäonnistui kohdassa PC=%d: %s"
 
-#: tree.cc:8902
+#: tree.cc:8938
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
 msgstr "verifiointi epäonnistui kohdassa PC=%d: %s"
 
-#: tree.cc:8915
+#: tree.cc:8951
 #, fuzzy, gcc-internal-format
 msgid "tree check: accessed operand %d of %<omp_clause %s%> with %d operands in %s, at %s:%d"
 msgstr "verifiointi epäonnistui kohdassa PC=%d: %s"
 
-#: tree.cc:12069
+#: tree.cc:12112
 #, gcc-internal-format
 msgid "%qD is deprecated: %s"
 msgstr "%qD on vanhentunut: %s"
 
-#: tree.cc:12072
+#: tree.cc:12115
 #, gcc-internal-format
 msgid "%qD is deprecated"
 msgstr "%qD on vanhentunut"
 
-#: tree.cc:12095
+#: tree.cc:12138
 #, gcc-internal-format
 msgid "%qE is deprecated: %s"
 msgstr "%qE on vanhentunut: %s"
 
-#: tree.cc:12098
+#: tree.cc:12141
 #, gcc-internal-format
 msgid "%qE is deprecated"
 msgstr "%qE on vanhentunut"
 
-#: tree.cc:12104
+#: tree.cc:12147
 #, gcc-internal-format, gfc-internal-format
 msgid "type is deprecated: %s"
 msgstr "tyyppi on vanhentunut: %s"
 
-#: tree.cc:12107
+#: tree.cc:12150
 #, gcc-internal-format
 msgid "type is deprecated"
 msgstr "tyyppi on vanhentunut"
 
-#: tree.cc:12149
+#: tree.cc:12192
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a variable"
 msgid "%qD is unavailable: %s"
 msgstr "%qD ei ole muuttuja"
 
-#: tree.cc:12151
+#: tree.cc:12194
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a variable"
 msgid "%qD is unavailable"
 msgstr "%qD ei ole muuttuja"
 
-#: tree.cc:12172
+#: tree.cc:12215
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a variable"
 msgid "%qE is unavailable: %s"
 msgstr "%qD ei ole muuttuja"
 
-#: tree.cc:12174
+#: tree.cc:12217
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a variable"
 msgid "%qE is unavailable"
 msgstr "%qD ei ole muuttuja"
 
-#: tree.cc:12179
+#: tree.cc:12222
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "type is unavailable: %s"
 msgstr "tiedoston %s avaaminen epäonnistui"
 
-#: tree.cc:12181
+#: tree.cc:12224
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a variable"
 msgid "type is unavailable"
@@ -31310,232 +31419,232 @@ msgstr "%qD ei ole muuttuja"
 #. - vector types may differ by TYPE_VECTOR_OPAQUE
 #.
 #. Convenience macro for matching individual fields.
-#: tree.cc:12994
+#: tree.cc:13037
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "type variant differs by %s"
 msgstr "Tiedoston tyyppi eroaa"
 
-#: tree.cc:13039
+#: tree.cc:13082
 #, fuzzy, gcc-internal-format
 msgid "type variant has different %<TYPE_SIZE_UNIT%>"
 msgstr "tyypillä %qT ei ole tunnettua kokoa"
 
-#: tree.cc:13041
+#: tree.cc:13084
 #, fuzzy, gcc-internal-format
 msgid "type variant%'s %<TYPE_SIZE_UNIT%>"
 msgstr "tyypillä %qT ei ole tunnettua kokoa"
 
-#: tree.cc:13043
+#: tree.cc:13086
 #, fuzzy, gcc-internal-format
 msgid "type%'s %<TYPE_SIZE_UNIT%>"
 msgstr "tyypillä %qT ei ole tunnettua kokoa"
 
-#: tree.cc:13068
+#: tree.cc:13111
 #, fuzzy, gcc-internal-format
 msgid "type variant with %<TYPE_ALIAS_SET_KNOWN_P%>"
 msgstr "taulukon tyypillä on vaillinainen alkiotyyppi"
 
-#: tree.cc:13081
+#: tree.cc:13124
 #, fuzzy, gcc-internal-format
 msgid "type variant has different %<TYPE_VFIELD%>"
 msgstr "taulukon tyypillä on vaillinainen alkiotyyppi"
 
-#: tree.cc:13117
+#: tree.cc:13160
 #, fuzzy, gcc-internal-format
 msgid "type variant has different %<TYPE_BINFO%>"
 msgstr "paluutyyppi on vaillinainen tyyppi"
 
-#: tree.cc:13119
+#: tree.cc:13162
 #, fuzzy, gcc-internal-format
 msgid "type variant%'s %<TYPE_BINFO%>"
 msgstr "paluutyyppi on vaillinainen tyyppi"
 
-#: tree.cc:13121
+#: tree.cc:13164
 #, fuzzy, gcc-internal-format
 msgid "type%'s %<TYPE_BINFO%>"
 msgstr "paluutyyppi on vaillinainen tyyppi"
 
-#: tree.cc:13160
+#: tree.cc:13203
 #, fuzzy, gcc-internal-format
 msgid "type variant has different %<TYPE_FIELDS%>"
 msgstr "taulukon tyypillä on vaillinainen alkiotyyppi"
 
-#: tree.cc:13162
+#: tree.cc:13205
 #, fuzzy, gcc-internal-format
 msgid "first mismatch is field"
 msgstr "tyyppitäsmäämättömyys taulukkoviitteessä"
 
-#: tree.cc:13164
+#: tree.cc:13207
 #, fuzzy, gcc-internal-format
 msgid "and field"
 msgstr "kentän leveys"
 
-#: tree.cc:13181
+#: tree.cc:13224
 #, fuzzy, gcc-internal-format
 msgid "type variant has different %<TREE_TYPE%>"
 msgstr "paluutyyppi on vaillinainen tyyppi"
 
-#: tree.cc:13183 tree.cc:13194
+#: tree.cc:13226 tree.cc:13237
 #, fuzzy, gcc-internal-format
 msgid "type variant%'s %<TREE_TYPE%>"
 msgstr "paluutyyppi on vaillinainen tyyppi"
 
-#: tree.cc:13185 tree.cc:13196
+#: tree.cc:13228 tree.cc:13239
 #, fuzzy, gcc-internal-format
 msgid "type%'s %<TREE_TYPE%>"
 msgstr "paluutyyppi on vaillinainen tyyppi"
 
-#: tree.cc:13192
+#: tree.cc:13235
 #, fuzzy, gcc-internal-format
 msgid "type is not compatible with its variant"
 msgstr "funktiokutsu epäsopivan tyypin läpi"
 
-#: tree.cc:13504
+#: tree.cc:13547
 #, fuzzy, gcc-internal-format
 msgid "main variant is not defined"
 msgstr "”%s” on määrittelemättä"
 
-#: tree.cc:13509
+#: tree.cc:13552
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_MAIN_VARIANT%> has different %<TYPE_MAIN_VARIANT%>"
 msgstr "tyyppitäsmäämättömyys komponenttiviitteessä"
 
-#: tree.cc:13521
+#: tree.cc:13564
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> has different %<TYPE_CANONICAL%>"
 msgstr "tyyppitäsmäämättömyys komponenttiviitteessä"
 
-#: tree.cc:13540
+#: tree.cc:13583
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> is not compatible"
 msgstr "funktiokutsu epäsopivan tyypin läpi"
 
-#: tree.cc:13548
+#: tree.cc:13591
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_MODE%> of %<TYPE_CANONICAL%> is not compatible"
 msgstr "funktiokutsu epäsopivan tyypin läpi"
 
-#: tree.cc:13554
+#: tree.cc:13597
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> of main variant is not main variant"
 msgstr "funktiokutsu epäsopivan tyypin läpi"
 
-#: tree.cc:13570
+#: tree.cc:13613
 #, gcc-internal-format
 msgid "%<TYPE_VFIELD%> is not %<FIELD_DECL%> nor %<TREE_LIST%>"
 msgstr ""
 
-#: tree.cc:13580
+#: tree.cc:13623
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_NEXT_PTR_TO%> is not %<POINTER_TYPE%>"
 msgstr "ei voi muuntaa osoitintyypiksi"
 
-#: tree.cc:13590
+#: tree.cc:13633
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_NEXT_REF_TO%> is not %<REFERENCE_TYPE%>"
 msgstr "tyyppitäsmäämättömyys komponenttiviitteessä"
 
-#: tree.cc:13611
+#: tree.cc:13654
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_BINFO%> is not %<TREE_BINFO%>"
 msgstr "tyyppitäsmäämättömyys komponenttiviitteessä"
 
-#: tree.cc:13617
+#: tree.cc:13660
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_BINFO%> type is not %<TYPE_MAIN_VARIANT%>"
 msgstr "tyyppitäsmäämättömyys komponenttiviitteessä"
 
-#: tree.cc:13628
+#: tree.cc:13671
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_METHOD_BASETYPE%> is not record nor union"
 msgstr "funktiokutsu epäsopivan tyypin läpi"
 
-#: tree.cc:13639
+#: tree.cc:13682
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_OFFSET_BASETYPE%> is not record nor union"
 msgstr "funktiokutsu epäsopivan tyypin läpi"
 
-#: tree.cc:13657
+#: tree.cc:13700
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_ARRAY_MAX_SIZE%> not %<INTEGER_CST%>"
 msgstr "taulukon %qE koko ei ole kokonaislukutyyppiä"
 
-#: tree.cc:13664
+#: tree.cc:13707
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_MAX_VALUE_RAW%> non-NULL"
 msgstr "NULLin muunnos epäosoitintyypiksi"
 
-#: tree.cc:13671
+#: tree.cc:13714
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_LANG_SLOT_1 (binfo)%> field is non-NULL"
 msgstr "NULLin muunnos epäosoitintyypiksi"
 
-#: tree.cc:13687
+#: tree.cc:13730
 #, gcc-internal-format
 msgid "enum value is not %<CONST_DECL%> or %<INTEGER_CST%>"
 msgstr ""
 
-#: tree.cc:13696
+#: tree.cc:13739
 #, gcc-internal-format
 msgid "enum value type is not %<INTEGER_TYPE%> nor convertible to the enum"
 msgstr ""
 
-#: tree.cc:13704
+#: tree.cc:13747
 #, gcc-internal-format
 msgid "enum value name is not %<IDENTIFIER_NODE%>"
 msgstr ""
 
-#: tree.cc:13714
+#: tree.cc:13757
 #, fuzzy, gcc-internal-format
 msgid "array %<TYPE_DOMAIN%> is not integer type"
 msgstr "taulukkoindeksi alustimessa ei ole kokonaislukutyyppinen"
 
-#: tree.cc:13723
+#: tree.cc:13766
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_FIELDS%> defined in incomplete type"
 msgstr "paluutyyppi on vaillinainen tyyppi"
 
-#: tree.cc:13745
+#: tree.cc:13788
 #, gcc-internal-format
 msgid "wrong tree in %<TYPE_FIELDS%> list"
 msgstr ""
 
-#: tree.cc:13760
+#: tree.cc:13803
 #, gcc-internal-format
 msgid "%<TYPE_CACHED_VALUES_P%> is %i while %<TYPE_CACHED_VALUES%> is %p"
 msgstr ""
 
-#: tree.cc:13767
+#: tree.cc:13810
 #, gcc-internal-format
 msgid "%<TYPE_CACHED_VALUES%> is not %<TREE_VEC%>"
 msgstr ""
 
-#: tree.cc:13780
+#: tree.cc:13823
 #, gcc-internal-format
 msgid "wrong %<TYPE_CACHED_VALUES%> entry"
 msgstr ""
 
-#: tree.cc:13793
+#: tree.cc:13836
 #, gcc-internal-format
 msgid "%<TREE_PURPOSE%> is non-NULL in %<TYPE_ARG_TYPES%> list"
 msgstr ""
 
-#: tree.cc:13799
+#: tree.cc:13842
 #, gcc-internal-format
 msgid "wrong entry in %<TYPE_ARG_TYPES%> list"
 msgstr ""
 
-#: tree.cc:13806
+#: tree.cc:13849
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_VALUES_RAW%> field is non-NULL"
 msgstr "NULLin muunnos epäosoitintyypiksi"
 
-#: tree.cc:13818
+#: tree.cc:13861
 #, gcc-internal-format
 msgid "%<TYPE_CACHED_VALUES_P%> is set while it should not be"
 msgstr ""
 
-#: tree.cc:13828
+#: tree.cc:13871
 #, fuzzy, gcc-internal-format
 msgid "%<TYPE_METHOD_BASETYPE%> is not main variant"
 msgstr "funktiokutsu epäsopivan tyypin läpi"
@@ -31670,82 +31779,82 @@ msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 msgid "storage size of %q+D isn%'t known"
 msgstr "muuttujan %q+D koko muistissa ei ole tunnettu"
 
-#: varasm.cc:5266
+#: varasm.cc:5269
 #, fuzzy, gcc-internal-format
 msgid "initializer for integer/fixed-point value is too complicated"
 msgstr "alustin liukulukuarvolle ei ole liukulukuvakio"
 
-#: varasm.cc:5271
+#: varasm.cc:5274
 #, gcc-internal-format
 msgid "initializer for floating value is not a floating constant"
 msgstr "alustin liukulukuarvolle ei ole liukulukuvakio"
 
-#: varasm.cc:5616
+#: varasm.cc:5619
 #, gcc-internal-format
 msgid "invalid initial value for member %qE"
 msgstr "virheellinen alkuarvo jäsenelle %qE"
 
-#: varasm.cc:5872
+#: varasm.cc:5875
 #, fuzzy, gcc-internal-format
 msgid "%qD declared weak after being used"
 msgstr "%J%qD esitelty avoimeksi kutsumisen jälkeen"
 
-#: varasm.cc:5924
+#: varasm.cc:5927
 #, fuzzy, gcc-internal-format
 msgid "weak declaration of %q+D being applied to a already existing, static definition"
 msgstr "%qs:n esittely taulukollisena funktioita"
 
-#: varasm.cc:5965
+#: varasm.cc:5968
 #, fuzzy, gcc-internal-format
 msgid "weak declaration of %q+D must be public"
 msgstr "%J%qD esitelty uudelleen ilman linkitystä"
 
-#: varasm.cc:5969
+#: varasm.cc:5972
 #, fuzzy, gcc-internal-format
 msgid "weak declaration of %q+D not supported"
 msgstr "esittelyssä %q+D"
 
-#: varasm.cc:5998 varasm.cc:6318
+#: varasm.cc:6001 varasm.cc:6321
 #, fuzzy, gcc-internal-format
 msgid "only weak aliases are supported in this configuration"
 msgstr "weakref ei ole tuettu tässä konfiguraatiossa"
 
-#: varasm.cc:6193 varasm.cc:6315
+#: varasm.cc:6196 varasm.cc:6318
 #, fuzzy, gcc-internal-format
 msgid "%qs is not supported in this configuration"
 msgstr "weakref ei ole tuettu tässä konfiguraatiossa"
 
-#: varasm.cc:6221
+#: varasm.cc:6224
 #, gcc-internal-format
 msgid "%qs is not supported on this target"
 msgstr "%qs ei ole tuettu tällä kohteella"
 
-#: varasm.cc:6277
+#: varasm.cc:6280
 #, fuzzy, gcc-internal-format
 msgid "symver is only supported on ELF platforms"
 msgstr "Rinnakkaiset työt (-j) eivät ole tuettuja tällä alustalla."
 
-#: varasm.cc:6296
+#: varasm.cc:6299
 #, fuzzy, gcc-internal-format
 msgid "%qs symbol %q+D ultimately targets itself"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: varasm.cc:6298
+#: varasm.cc:6301
 #, fuzzy, gcc-internal-format
 msgid "%qs symbol %q+D must have static linkage"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: varasm.cc:6305
+#: varasm.cc:6308 config/nvptx/nvptx.cc:7445
 #, fuzzy, gcc-internal-format
 msgid "alias definitions not supported in this configuration"
 msgstr "weakref ei ole tuettu tässä konfiguraatiossa"
 
-#: varasm.cc:6533 config/sol2.cc:160 config/i386/winnt.cc:265
+#: varasm.cc:6536 config/sol2.cc:160 config/i386/winnt.cc:265
 #, fuzzy, gcc-internal-format
 msgid "visibility attribute not supported in this configuration; ignored"
 msgstr "weakref ei ole tuettu tässä konfiguraatiossa"
 
-#: varasm.cc:7821
+#: varasm.cc:7824
 #, gcc-internal-format
 msgid "%+qD without %<retain%> attribute and %qD with %<retain%> attribute are placed in a section with the same name"
 msgstr ""
@@ -31811,7 +31920,7 @@ msgstr ""
 msgid "no sclass for %s stab (0x%x)"
 msgstr "%s[%s] Virhe 0x%x%s"
 
-#: c-family/c-ada-spec.cc:2858
+#: c-family/c-ada-spec.cc:2877
 #, fuzzy, gcc-internal-format
 msgid "packed layout"
 msgstr "pinon ylivuoto"
@@ -31836,8 +31945,8 @@ msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 msgid "%qE attribute argument %i has type %qT"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: c-family/c-attribs.cc:649 c-family/c-attribs.cc:4314
-#: c-family/c-attribs.cc:4318 d/d-attribs.cc:1199
+#: c-family/c-attribs.cc:649 c-family/c-attribs.cc:4316
+#: c-family/c-attribs.cc:4320 d/d-attribs.cc:1199
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument value %qE is not an integer constant"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
@@ -31897,661 +32006,661 @@ msgstr "%qE-attribuutti soveltuu vain variadisiin funktioihin"
 msgid "%qE attribute argument %i value %qE refers to a variadic function parameter of unknown type"
 msgstr "%qE-attribuutti soveltuu vain variadisiin funktioihin"
 
-#: c-family/c-attribs.cc:906
+#: c-family/c-attribs.cc:908
 #, fuzzy, gcc-internal-format
 msgid "ignoring attribute %qs because it conflicts with previous %qs"
 msgstr "%qE-attribuutti on ristiriidassa attribuutin %s kanssa"
 
-#: c-family/c-attribs.cc:944
+#: c-family/c-attribs.cc:946
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute only supported on boolean types"
 msgstr "%qE-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: c-family/c-attribs.cc:954
+#: c-family/c-attribs.cc:956
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute with unsupported boolean precision"
 msgstr "Rinnakkaiset työt (-j) eivät ole tuettuja tällä alustalla."
 
-#: c-family/c-attribs.cc:977
+#: c-family/c-attribs.cc:979
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored for type %qT"
 msgstr "%qE-attribuuttia ei huomioida %qE:lle"
 
-#: c-family/c-attribs.cc:989
+#: c-family/c-attribs.cc:991
 #, gcc-internal-format
 msgid "%qE attribute ignored for field of type %qT"
 msgstr "%qE-attribuuttia ei huomioida %qT-tyyppiselle kentälle"
 
-#: c-family/c-attribs.cc:1159 c-family/c-attribs.cc:3188
-#: c-family/c-attribs.cc:5615 ada/gcc-interface/utils.cc:7033
+#: c-family/c-attribs.cc:1161 c-family/c-attribs.cc:3190
+#: c-family/c-attribs.cc:5623 ada/gcc-interface/utils.cc:7033
 #, fuzzy, gcc-internal-format
 msgid "%qE argument not a string"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: c-family/c-attribs.cc:1322 ada/gcc-interface/utils.cc:6627
+#: c-family/c-attribs.cc:1324 ada/gcc-interface/utils.cc:6627
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored due to conflict with attribute %qs"
 msgstr "%qE-attribuutti on ristiriidassa attribuutin %s kanssa"
 
-#: c-family/c-attribs.cc:1371
+#: c-family/c-attribs.cc:1373
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored. Use %<-fcf-protection%> option to enable it"
 msgstr "%qE-attribuutti on ristiriidassa attribuutin %s kanssa"
 
-#: c-family/c-attribs.cc:1411 c-family/c-attribs.cc:1417
-#: c-family/c-attribs.cc:5439 c-family/c-attribs.cc:5479
-#: c-family/c-attribs.cc:5485 ada/gcc-interface/utils.cc:6886
+#: c-family/c-attribs.cc:1413 c-family/c-attribs.cc:1419
+#: c-family/c-attribs.cc:5441 c-family/c-attribs.cc:5481
+#: c-family/c-attribs.cc:5487 ada/gcc-interface/utils.cc:6886
 #: ada/gcc-interface/utils.cc:6920 ada/gcc-interface/utils.cc:6926
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored due to conflict with %qs attribute"
 msgstr "%qE-attribuutti on ristiriidassa attribuutin %s kanssa"
 
-#: c-family/c-attribs.cc:1473 jit/dummy-frontend.cc:190 lto/lto-lang.cc:293
+#: c-family/c-attribs.cc:1475 jit/dummy-frontend.cc:190 lto/lto-lang.cc:293
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute has no effect on unit local functions"
 msgstr "%J%qE-attribuutti soveltuu vain funktioihin"
 
-#: c-family/c-attribs.cc:1643 c-family/c-attribs.cc:3171
+#: c-family/c-attribs.cc:1645 c-family/c-attribs.cc:3173
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored because %qD is not a variable"
 msgstr "%qE-attribuuttia ei huomioida koska %qT on jo määritelty"
 
-#: c-family/c-attribs.cc:1649
+#: c-family/c-attribs.cc:1651
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored because %qD is not a local variable"
 msgstr "%qE-attribuuttia ei huomioida koska %qT on jo määritelty"
 
-#: c-family/c-attribs.cc:1674 config/i386/i386-options.cc:3795
+#: c-family/c-attribs.cc:1676 config/i386/i386-options.cc:3795
 #, gcc-internal-format
 msgid "%qE attribute have effect only on public objects"
 msgstr "%qE-attribuutti vaikuttaa vain julkisiin objekteihin"
 
-#: c-family/c-attribs.cc:1703
+#: c-family/c-attribs.cc:1705
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute only affects top level objects"
 msgstr "%qE-attribuutti pätee vain muuttujiin"
 
-#: c-family/c-attribs.cc:1742 c-family/c-attribs.cc:3845
+#: c-family/c-attribs.cc:1744 c-family/c-attribs.cc:3847
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute on function returning %<void%>"
 msgstr "%<return%> arvon kanssa voidin palauttavassa funktiossa"
 
-#: c-family/c-attribs.cc:1765
+#: c-family/c-attribs.cc:1767
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute is not supported because endianness is not uniform"
 msgstr "valitsin %qs ei ole enää tuettu"
 
-#: c-family/c-attribs.cc:1782
+#: c-family/c-attribs.cc:1784
 #, fuzzy, gcc-internal-format
 msgid "attribute %qE argument must be one of %qs or %qs"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: c-family/c-attribs.cc:1878
+#: c-family/c-attribs.cc:1880
 #, fuzzy, gcc-internal-format
 msgid "destructor priorities are not supported"
 msgstr "Hajotin %qs"
 
-#: c-family/c-attribs.cc:1880
+#: c-family/c-attribs.cc:1882
 #, fuzzy, gcc-internal-format
 msgid "constructor priorities are not supported"
 msgstr "Muodostin %qs"
 
-#: c-family/c-attribs.cc:1902
+#: c-family/c-attribs.cc:1904
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "destructor priorities from 0 to %d are reserved for the implementation"
 msgstr "Muodostin %qs"
 
-#: c-family/c-attribs.cc:1907
+#: c-family/c-attribs.cc:1909
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "constructor priorities from 0 to %d are reserved for the implementation"
 msgstr "Muodostin %qs"
 
-#: c-family/c-attribs.cc:1915
+#: c-family/c-attribs.cc:1917
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "destructor priorities must be integers from 0 to %d inclusive"
 msgstr "Hajotin %qs"
 
-#: c-family/c-attribs.cc:1918
+#: c-family/c-attribs.cc:1920
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "constructor priorities must be integers from 0 to %d inclusive"
 msgstr "Muodostin %qs"
 
-#: c-family/c-attribs.cc:2071
+#: c-family/c-attribs.cc:2073
 #, fuzzy, gcc-internal-format
 msgid "unknown machine mode %qE"
 msgstr "%s on tarkoitettu tuntemattomalle koneelle %d.\n"
 
-#: c-family/c-attribs.cc:2105
+#: c-family/c-attribs.cc:2107
 #, fuzzy, gcc-internal-format
 msgid "specifying vector types with %<__attribute__ ((mode))%> is deprecated"
 msgstr "vektorityyppien määrittäminen __attribute__ ((mode)) -tyyliin on paheksuttavaa"
 
-#: c-family/c-attribs.cc:2108
+#: c-family/c-attribs.cc:2110
 #, fuzzy, gcc-internal-format
 msgid "use %<__attribute__ ((vector_size))%> instead"
 msgstr "käytä sen sijaan __attribute__ ((vector_size))"
 
-#: c-family/c-attribs.cc:2117
+#: c-family/c-attribs.cc:2119
 #, fuzzy, gcc-internal-format
 msgid "unable to emulate %qs"
 msgstr "superlohkon kirjoitus ei onnistu"
 
-#: c-family/c-attribs.cc:2130
+#: c-family/c-attribs.cc:2132
 #, gcc-internal-format
 msgid "invalid pointer mode %qs"
 msgstr "epäkelpo osoitintila %qs"
 
-#: c-family/c-attribs.cc:2147
+#: c-family/c-attribs.cc:2149
 #, gcc-internal-format
 msgid "signedness of type and machine mode %qs don%'t match"
 msgstr ""
 
-#: c-family/c-attribs.cc:2158
+#: c-family/c-attribs.cc:2160
 #, gcc-internal-format
 msgid "no data type for mode %qs"
 msgstr "ei tietotyyppiä tilalle %qs"
 
-#: c-family/c-attribs.cc:2168
+#: c-family/c-attribs.cc:2170
 #, fuzzy, gcc-internal-format
 msgid "cannot use mode %qs for enumerated types"
 msgstr "luetelluille tyypeille ei voi käyttää tilaa %qs"
 
-#: c-family/c-attribs.cc:2196
+#: c-family/c-attribs.cc:2198
 #, gcc-internal-format
 msgid "mode %qs applied to inappropriate type"
 msgstr "tilaa %qs sovellettu sopimattomaan tyyppiin"
 
-#: c-family/c-attribs.cc:2221 c-family/c-attribs.cc:2535 d/d-attribs.cc:999
+#: c-family/c-attribs.cc:2223 c-family/c-attribs.cc:2537 d/d-attribs.cc:999
 #, fuzzy, gcc-internal-format
 msgid "section attributes are not supported for this target"
 msgstr "%Jlohkoattribuutteja ei tueta tälle kohteelle"
 
-#: c-family/c-attribs.cc:2227 d/d-attribs.cc:1006
+#: c-family/c-attribs.cc:2229 d/d-attribs.cc:1006
 #, fuzzy, gcc-internal-format
 msgid "section attribute not allowed for %q+D"
 msgstr "pakattu attribuutti on tarpeeton %q+D:lle"
 
-#: c-family/c-attribs.cc:2233 d/d-attribs.cc:1013
+#: c-family/c-attribs.cc:2235 d/d-attribs.cc:1013
 #, fuzzy, gcc-internal-format
 msgid "section attribute argument not a string constant"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: c-family/c-attribs.cc:2242 d/d-attribs.cc:1022
+#: c-family/c-attribs.cc:2244 d/d-attribs.cc:1022
 #, fuzzy, gcc-internal-format
 msgid "section attribute cannot be specified for local variables"
 msgstr "osoitealueattribuuttia ei voi määritellä paikallisille muuttujille"
 
-#: c-family/c-attribs.cc:2253 config/bfin/bfin.cc:4795
-#: config/bfin/bfin.cc:4846 config/bfin/bfin.cc:4872 config/bfin/bfin.cc:4885
+#: c-family/c-attribs.cc:2255 config/bfin/bfin.cc:4796
+#: config/bfin/bfin.cc:4847 config/bfin/bfin.cc:4873 config/bfin/bfin.cc:4886
 #: d/d-attribs.cc:1033
 #, fuzzy, gcc-internal-format
 msgid "section of %q+D conflicts with previous declaration"
 msgstr "on ristiriidassa %q+#D:n edellisen esittelyn kanssa"
 
-#: c-family/c-attribs.cc:2262 c-family/c-attribs.cc:2561 d/d-attribs.cc:1042
+#: c-family/c-attribs.cc:2264 c-family/c-attribs.cc:2563 d/d-attribs.cc:1042
 #, fuzzy, gcc-internal-format
 msgid "section of %q+D cannot be overridden"
 msgstr "sisäkkäinen funktio %qs esitelty %<extern%>:ksi"
 
-#: c-family/c-attribs.cc:2378
+#: c-family/c-attribs.cc:2380
 #, gcc-internal-format
 msgid "alignment may not be specified for %q+D"
 msgstr "kohdistusta ei voi määritellä %q+D:lle"
 
-#: c-family/c-attribs.cc:2403
+#: c-family/c-attribs.cc:2405
 #, fuzzy, gcc-internal-format
 msgid "ignoring attribute %<%E (%u)%> because it conflicts with attribute %<%E (%u)%>"
 msgstr "Kaksoiskappale-%s-attribuutti määritelty kohdassa %L"
 
-#: c-family/c-attribs.cc:2448
+#: c-family/c-attribs.cc:2450
 #, fuzzy, gcc-internal-format
 msgid "%<warn_if_not_aligned%> may not be specified for %q+D"
 msgstr "kohdistusta ei voi määritellä %q+D:lle"
 
-#: c-family/c-attribs.cc:2496 d/d-attribs.cc:1120
+#: c-family/c-attribs.cc:2498 d/d-attribs.cc:1120
 #, fuzzy, gcc-internal-format
 msgid "inline function %q+D declared weak"
 msgstr "muuttuja %qD esitelty %<inline%>:ksi"
 
-#: c-family/c-attribs.cc:2501
+#: c-family/c-attribs.cc:2503
 #, fuzzy, gcc-internal-format
 msgid "indirect function %q+D cannot be declared weak"
 msgstr "sisäkkäinen funktio %qs esitelty %<extern%>:ksi"
 
-#: c-family/c-attribs.cc:2542
+#: c-family/c-attribs.cc:2544
 #, fuzzy, gcc-internal-format
 msgid "ignoring %qE attribute not set on a variable"
 msgstr "%J%qE-attribuutti soveltuu vain funktioihin"
 
-#: c-family/c-attribs.cc:2552 config/bfin/bfin.cc:4823
+#: c-family/c-attribs.cc:2554 config/bfin/bfin.cc:4824
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute cannot be specified for local variables"
 msgstr "osoitealueattribuuttia ei voi määritellä paikallisille muuttujille"
 
-#: c-family/c-attribs.cc:2567
+#: c-family/c-attribs.cc:2569
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute is specific to ELF targets"
 msgstr "%Jlohkoattribuutteja ei tueta tälle kohteelle"
 
-#: c-family/c-attribs.cc:2574
+#: c-family/c-attribs.cc:2576
 #, fuzzy, gcc-internal-format
 msgid "ignoring %qE attribute set on const variable"
 msgstr "%J%qE-attribuutti soveltuu vain funktioihin"
 
-#: c-family/c-attribs.cc:2585
+#: c-family/c-attribs.cc:2587
 #, fuzzy, gcc-internal-format
 msgid "ignoring %qE attribute set on initialized variable"
 msgstr "%qE-attribuutti pätee vain muuttujiin"
 
-#: c-family/c-attribs.cc:2598
+#: c-family/c-attribs.cc:2600
 #, fuzzy, gcc-internal-format
 msgid "ignoring %qE attribute set on uninitialized variable"
 msgstr "%qE-attribuutti pätee vain muuttujiin"
 
-#: c-family/c-attribs.cc:2631
+#: c-family/c-attribs.cc:2633
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute is only applicable on functions"
 msgstr "%qE-attribuutti pätee vain funktioihin"
 
-#: c-family/c-attribs.cc:2650 d/d-attribs.cc:1068
+#: c-family/c-attribs.cc:2652 d/d-attribs.cc:1068
 #, fuzzy, gcc-internal-format
 msgid "%<symver%> attribute only applies to functions and variables"
 msgstr "%qE-attribuutti pätee vain funktioihin"
 
-#: c-family/c-attribs.cc:2658 d/d-attribs.cc:1076
+#: c-family/c-attribs.cc:2660 d/d-attribs.cc:1076
 #, fuzzy, gcc-internal-format
 msgid "%<symver%> attribute is only applicable to symbols"
 msgstr "%qE-attribuutti pätee vain funktioihin"
 
-#: c-family/c-attribs.cc:2668 d/d-attribs.cc:1086
+#: c-family/c-attribs.cc:2670 d/d-attribs.cc:1086
 #, fuzzy, gcc-internal-format
 msgid "%<symver%> attribute argument not a string constant"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: c-family/c-attribs.cc:2682 d/d-attribs.cc:1100
+#: c-family/c-attribs.cc:2684 d/d-attribs.cc:1100
 #, gcc-internal-format
 msgid "symver attribute argument must have format %<name@nodename%>"
 msgstr ""
 
-#: c-family/c-attribs.cc:2683 d/d-attribs.cc:1101
+#: c-family/c-attribs.cc:2685 d/d-attribs.cc:1101
 #, fuzzy, gcc-internal-format
 msgid "%<symver%> attribute argument %qs must contain one or two %<@%>"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: c-family/c-attribs.cc:2718
+#: c-family/c-attribs.cc:2720
 #, fuzzy, gcc-internal-format
 msgid "%q+D defined both normally and as %qE attribute"
 msgstr "%J%qD määritelty sekä tavallisesti että aliaksena"
 
-#: c-family/c-attribs.cc:2726
+#: c-family/c-attribs.cc:2728
 #, fuzzy, gcc-internal-format
 msgid "weak %q+D cannot be defined %qE"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: c-family/c-attribs.cc:2743 c-family/c-attribs.cc:3736
+#: c-family/c-attribs.cc:2745 c-family/c-attribs.cc:3738
 #, fuzzy, gcc-internal-format
 msgid "attribute %qE argument not a string"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: c-family/c-attribs.cc:2776
+#: c-family/c-attribs.cc:2778
 #, fuzzy, gcc-internal-format
 msgid "%+qD declared %qs after being used"
 msgstr "%J%qD esitelty avoimeksi kutsumisen jälkeen"
 
-#: c-family/c-attribs.cc:2826
+#: c-family/c-attribs.cc:2828
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument cannot be a string"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: c-family/c-attribs.cc:2839
+#: c-family/c-attribs.cc:2841
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument cannot be a constant arithmetic expression"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: c-family/c-attribs.cc:2850
+#: c-family/c-attribs.cc:2852
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored on a redeclaration of the referenced symbol"
 msgstr "attribuutti jätetty huomioimatta %q+#T:n esittelyssä"
 
-#: c-family/c-attribs.cc:2905
+#: c-family/c-attribs.cc:2907
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored on a declaration of a different kind than referenced symbol"
 msgstr "%qE esitelty uudelleen erityyppisenä symbolina"
 
-#: c-family/c-attribs.cc:2910
+#: c-family/c-attribs.cc:2912
 #, fuzzy, gcc-internal-format
 msgid "symbol %qD referenced by %qD declared here"
 msgstr "%qD esitelty ei-parametrina"
 
-#: c-family/c-attribs.cc:2958
+#: c-family/c-attribs.cc:2960
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute must apply to a declaration"
 msgstr "%qE-attribuutti pätee vain funktioihin"
 
-#: c-family/c-attribs.cc:3016
+#: c-family/c-attribs.cc:3018
 #, fuzzy, gcc-internal-format
 msgid "indirect function %q+D cannot be declared %qE"
 msgstr "sisäkkäinen funktio %qs esitelty %<extern%>:ksi"
 
-#: c-family/c-attribs.cc:3039
+#: c-family/c-attribs.cc:3041
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute must appear before %qs attribute"
 msgstr "weakref-attribuutin täytyy esiintyä ennen alias-attribuuttia"
 
-#: c-family/c-attribs.cc:3052
+#: c-family/c-attribs.cc:3054
 #, fuzzy, gcc-internal-format
 msgid "%+qD declared %qE after being used"
 msgstr "%J%qD esitelty avoimeksi kutsumisen jälkeen"
 
-#: c-family/c-attribs.cc:3076
+#: c-family/c-attribs.cc:3078
 #, gcc-internal-format
 msgid "%qE attribute ignored on non-class types"
 msgstr "%qE-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: c-family/c-attribs.cc:3082
+#: c-family/c-attribs.cc:3084
 #, gcc-internal-format
 msgid "%qE attribute ignored because %qT is already defined"
 msgstr "%qE-attribuuttia ei huomioida koska %qT on jo määritelty"
 
-#: c-family/c-attribs.cc:3095
+#: c-family/c-attribs.cc:3097
 #, gcc-internal-format
 msgid "visibility argument not a string"
 msgstr "näkyvyysargumentti ei ole merkkijono"
 
-#: c-family/c-attribs.cc:3107
+#: c-family/c-attribs.cc:3109
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored on types"
 msgstr "%qE-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: c-family/c-attribs.cc:3123
+#: c-family/c-attribs.cc:3125
 #, fuzzy, gcc-internal-format
 msgid "attribute %qE argument must be one of %qs, %qs, %qs, or %qs"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: c-family/c-attribs.cc:3135
+#: c-family/c-attribs.cc:3137
 #, gcc-internal-format
 msgid "%qD redeclared with different visibility"
 msgstr "%qD esitelty uudelleen eri näkyvyydellä"
 
-#: c-family/c-attribs.cc:3138 c-family/c-attribs.cc:3142
+#: c-family/c-attribs.cc:3140 c-family/c-attribs.cc:3144
 #, gcc-internal-format
 msgid "%qD was declared %qs which implies default visibility"
 msgstr "%qD esiteltiin tyyppinä %qs, mikä edellyttää oletusnäkyvyyttä"
 
-#: c-family/c-attribs.cc:3179
+#: c-family/c-attribs.cc:3181
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored because %qD does not have thread storage duration"
 msgstr "%qE-attribuuttia ei huomioida koska %qT on jo määritelty"
 
-#: c-family/c-attribs.cc:3201
+#: c-family/c-attribs.cc:3203
 #, gcc-internal-format
 msgid "%qE argument must be one of %qs, %qs, %qs, or %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:3223 c-family/c-attribs.cc:3819
-#: c-family/c-attribs.cc:5580 c-family/c-attribs.cc:5607
+#: c-family/c-attribs.cc:3225 c-family/c-attribs.cc:3821
+#: c-family/c-attribs.cc:5588 c-family/c-attribs.cc:5615
 #: config/m32c/m32c.cc:2939 ada/gcc-interface/utils.cc:7019
 #, gcc-internal-format
 msgid "%qE attribute applies only to functions"
 msgstr "%qE-attribuutti pätee vain funktioihin"
 
-#: c-family/c-attribs.cc:3269
+#: c-family/c-attribs.cc:3271
 #, fuzzy, gcc-internal-format
 msgid "%<%E (%E)%> attribute ignored on functions declared %qs"
 msgstr "%qE-attribuuttia ei huomioida %qT-tyypin palauttavalle funktiolle"
 
-#: c-family/c-attribs.cc:3279
+#: c-family/c-attribs.cc:3281
 #, fuzzy, gcc-internal-format
 msgid "%<%E (%E)%> attribute ignored with deallocation functions declared %qs"
 msgstr "%qE-attribuuttia ei huomioida koska %qT on jo määritelty"
 
-#: c-family/c-attribs.cc:3283
+#: c-family/c-attribs.cc:3285
 #, fuzzy, gcc-internal-format
 msgid "deallocation function declared here"
 msgstr "kutsussa muistinvarausfunktioon %qD, joka on esitelty täällä"
 
-#: c-family/c-attribs.cc:3310
+#: c-family/c-attribs.cc:3312
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored; valid only for functions"
 msgstr "%qE-attribuutti pätee vain funktioihin"
 
-#: c-family/c-attribs.cc:3320
+#: c-family/c-attribs.cc:3322
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored on functions returning %qT; valid only for pointer return types"
 msgstr "%qE-attribuuttia ei huomioida %qT-tyypin palauttavalle funktiolle"
 
 #. Handle specially the common case of specifying one of a number
 #. of overloads, such as operator delete.
-#: c-family/c-attribs.cc:3366
+#: c-family/c-attribs.cc:3368
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument 1 is ambiguous"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: c-family/c-attribs.cc:3368
+#: c-family/c-attribs.cc:3370
 #, gcc-internal-format
 msgid "use a cast to the expected type to disambiguate"
 msgstr ""
 
-#: c-family/c-attribs.cc:3373
+#: c-family/c-attribs.cc:3375
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument 1 does not name a function"
 msgstr "%qE-attribuutti pätee vain funktioihin"
 
-#: c-family/c-attribs.cc:3376
+#: c-family/c-attribs.cc:3378
 #, fuzzy, gcc-internal-format
 msgid "argument references a symbol declared here"
 msgstr "%qD esitelty ei-parametrina"
 
 #. Reject functions without a prototype.
-#: c-family/c-attribs.cc:3392
+#: c-family/c-attribs.cc:3394
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument 1 must take a pointer type as its first argument"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: c-family/c-attribs.cc:3395 c-family/c-attribs.cc:3408
+#: c-family/c-attribs.cc:3397 c-family/c-attribs.cc:3410
 #, fuzzy, gcc-internal-format
 msgid "referenced symbol declared here"
 msgstr "%qD esitelty ei-parametrina"
 
 #. Reject functions that don't take a pointer as their first
 #. argument.
-#: c-family/c-attribs.cc:3405
+#: c-family/c-attribs.cc:3407
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument 1 must take a pointer type as its first argument; have %qT"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: c-family/c-attribs.cc:3519 c-family/c-attribs.cc:3567
-#: c-family/c-attribs.cc:3594 d/d-attribs.cc:1303
+#: c-family/c-attribs.cc:3521 c-family/c-attribs.cc:3569
+#: c-family/c-attribs.cc:3596 d/d-attribs.cc:1303
 #, gcc-internal-format
 msgid "%qE attribute ignored on a function returning %qT"
 msgstr "%qE-attribuuttia ei huomioida %qT-tyypin palauttavalle funktiolle"
 
-#: c-family/c-attribs.cc:3613
+#: c-family/c-attribs.cc:3615
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument %E is not an integer constant"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: c-family/c-attribs.cc:3621
+#: c-family/c-attribs.cc:3623
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument %E is not positive"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: c-family/c-attribs.cc:3632
+#: c-family/c-attribs.cc:3634
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument %E is not a power of 2"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: c-family/c-attribs.cc:3645
+#: c-family/c-attribs.cc:3647
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument %E is not in the range [0, %wu]"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: c-family/c-attribs.cc:3749
+#: c-family/c-attribs.cc:3751
 #, gcc-internal-format
 msgid "only %<inbranch%> and %<notinbranch%> flags are allowed for %<__simd__%> attribute"
 msgstr ""
 
-#: c-family/c-attribs.cc:3825 c-family/c-attribs.cc:5586
+#: c-family/c-attribs.cc:3827 c-family/c-attribs.cc:5594
 #, fuzzy, gcc-internal-format
 msgid "cannot set %qE attribute after definition"
 msgstr "ei voi asettaa %qE-attribuuttia määrittelyn jälkeen"
 
-#: c-family/c-attribs.cc:3892
+#: c-family/c-attribs.cc:3894
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute duplicated"
 msgstr "%qE-attribuuttia ei huomioida %qE:lle"
 
-#: c-family/c-attribs.cc:3894
+#: c-family/c-attribs.cc:3896
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute follows %qE"
 msgstr "%qE-attribuuttia ei huomioida %qE:lle"
 
-#: c-family/c-attribs.cc:3993
+#: c-family/c-attribs.cc:3995
 #, fuzzy, gcc-internal-format
 msgid "type was previously declared %qE"
 msgstr "%q+#D aiemmin esitelty täällä"
 
-#: c-family/c-attribs.cc:4006 cp/class.cc:4744
+#: c-family/c-attribs.cc:4008 cp/class.cc:4777
 #, fuzzy, gcc-internal-format
 msgid "%<transaction_safe_dynamic%> may only be specified for a virtual function"
 msgstr "tallennusluokan voi antaa vain objekteille ja funktioille"
 
-#: c-family/c-attribs.cc:4064
+#: c-family/c-attribs.cc:4066
 #, fuzzy, gcc-internal-format
 msgid "%qE argument not an identifier"
 msgstr "tunniste %qE on ristiriidassa C++:n varatun sanan kanssa"
 
-#: c-family/c-attribs.cc:4075
+#: c-family/c-attribs.cc:4077
 #, fuzzy, gcc-internal-format
 msgid "%qD is not compatible with %qD"
 msgstr "%qD ei ole %qD:n jäsen"
 
-#: c-family/c-attribs.cc:4078
+#: c-family/c-attribs.cc:4080
 #, fuzzy, gcc-internal-format
 msgid "%qE argument is not a function"
 msgstr "%qE esitelty funktion palauttavana funktiona"
 
-#: c-family/c-attribs.cc:4126 cp/name-lookup.cc:6026
+#: c-family/c-attribs.cc:4128 cp/name-lookup.cc:6052
 #, fuzzy, gcc-internal-format
 msgid "deprecated message is not a string"
 msgstr "odotettiin merkkijonoa ilmaisun %<#pragma message%> jälkeen"
 
-#: c-family/c-attribs.cc:4167 c-family/c-attribs.cc:4232
+#: c-family/c-attribs.cc:4169 c-family/c-attribs.cc:4234
 #, gcc-internal-format
 msgid "%qE attribute ignored for %qE"
 msgstr "%qE-attribuuttia ei huomioida %qE:lle"
 
-#: c-family/c-attribs.cc:4191
+#: c-family/c-attribs.cc:4193
 #, gcc-internal-format
 msgid "the message attached to %<unavailable%> is not a string"
 msgstr ""
 
-#: c-family/c-attribs.cc:4290 c-family/c-attribs.cc:4292
+#: c-family/c-attribs.cc:4292 c-family/c-attribs.cc:4294
 #, gcc-internal-format
 msgid "invalid vector type for attribute %qE"
 msgstr "epäkelpo vektorityyppi attribuutille %qE"
 
-#: c-family/c-attribs.cc:4327 c-family/c-attribs.cc:4331
+#: c-family/c-attribs.cc:4329 c-family/c-attribs.cc:4333
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument value %qE is negative"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: c-family/c-attribs.cc:4344 c-family/c-attribs.cc:4348
+#: c-family/c-attribs.cc:4346 c-family/c-attribs.cc:4350
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument value %qE exceeds %wu"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: c-family/c-attribs.cc:4356 ada/gcc-interface/utils.cc:4172
+#: c-family/c-attribs.cc:4358 ada/gcc-interface/utils.cc:4172
 #, gcc-internal-format
 msgid "vector size not an integral multiple of component size"
 msgstr ""
 
-#: c-family/c-attribs.cc:4362 ada/gcc-interface/utils.cc:4179
+#: c-family/c-attribs.cc:4364 ada/gcc-interface/utils.cc:4179
 #, fuzzy, gcc-internal-format
 msgid "zero vector size"
 msgstr "nollan kokoinen taulukko %qD"
 
-#: c-family/c-attribs.cc:4371 c-family/c-attribs.cc:4374
+#: c-family/c-attribs.cc:4373 c-family/c-attribs.cc:4376
 #, fuzzy, gcc-internal-format
 msgid "number of vector components %wu not a power of two"
 msgstr "vektorin komponenttien määrä ei ole kahden potenssi"
 
-#: c-family/c-attribs.cc:4381 c-family/c-attribs.cc:4385
+#: c-family/c-attribs.cc:4383 c-family/c-attribs.cc:4387
 #, gcc-internal-format
 msgid "number of vector components %wu exceeds %d"
 msgstr ""
 
-#: c-family/c-attribs.cc:4445
+#: c-family/c-attribs.cc:4447
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute only supported on non-mask vector types"
 msgstr "%qE-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: c-family/c-attribs.cc:4478
+#: c-family/c-attribs.cc:4480
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute without arguments on a non-prototype"
 msgstr "ei-tyhjä attribuutti ilman argumentteja ei-prototyypissä"
 
-#: c-family/c-attribs.cc:4535
+#: c-family/c-attribs.cc:4537
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored on objects of type %qT"
 msgstr "%qE-attribuuttia ei huomioida %qT-tyyppiselle kentälle"
 
-#: c-family/c-attribs.cc:4543
+#: c-family/c-attribs.cc:4545
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute does not apply to functions"
 msgstr "%qE-attribuutti pätee vain funktioihin"
 
-#: c-family/c-attribs.cc:4677
+#: c-family/c-attribs.cc:4679
 #, fuzzy, gcc-internal-format
 msgid "attribute %qs mismatch with mode %qs"
 msgstr "%q+#T:n attribuutin on oltava %qs-avainsanan perässä"
 
-#: c-family/c-attribs.cc:4726
+#: c-family/c-attribs.cc:4728
 #, fuzzy, gcc-internal-format
 msgid "attribute %qs missing positional argument 2 provided in previous designation by argument %u"
 msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 
-#: c-family/c-attribs.cc:4732
+#: c-family/c-attribs.cc:4734
 #, fuzzy, gcc-internal-format
 msgid "attribute %qs positional argument 2 missing in previous designation"
 msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 
-#: c-family/c-attribs.cc:4738
+#: c-family/c-attribs.cc:4740
 #, fuzzy, gcc-internal-format
 msgid "attribute %qs positional argument 2 conflicts with previous designation by argument %u"
 msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 
-#: c-family/c-attribs.cc:4746
+#: c-family/c-attribs.cc:4748
 #, gcc-internal-format
 msgid "attribute %qs mismatched positional argument values %i and %i"
 msgstr ""
 
-#: c-family/c-attribs.cc:4768
+#: c-family/c-attribs.cc:4770
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "designating the bound of variable length array argument %u"
 msgstr "ISO C90 kieltää muuttuvakokoisen taulukon"
 
-#: c-family/c-attribs.cc:4851
+#: c-family/c-attribs.cc:4853
 #, fuzzy, gcc-internal-format
 msgid "attribute %qE without arguments on a non-prototype"
 msgstr "ei-tyhjä attribuutti ilman argumentteja ei-prototyypissä"
 
-#: c-family/c-attribs.cc:4901
+#: c-family/c-attribs.cc:4903
 #, fuzzy, gcc-internal-format
 msgid "attribute %qE invalid mode"
 msgstr "attribuuttia ei huomioida"
 
-#: c-family/c-attribs.cc:4910
+#: c-family/c-attribs.cc:4912
 #, fuzzy, gcc-internal-format
 msgid "attribute %qE mode %qE is not an identifier; expected one of %qs, %qs, %qs, or %qs"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: c-family/c-attribs.cc:4938
+#: c-family/c-attribs.cc:4940
 #, fuzzy, gcc-internal-format
 msgid "attribute %qE invalid mode %qs; expected one of %qs, %qs, %qs, or %qs"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: c-family/c-attribs.cc:4949
+#: c-family/c-attribs.cc:4951
 #, gcc-internal-format
 msgid "attribute %qE unexpected %<(%> after mode %qs; expected a positional argument or %<)%>"
 msgstr ""
@@ -32560,187 +32669,187 @@ msgstr ""
 #. dropping the requirement at some point and having read_only
 #. apply to all const-qualified pointers and read_write or
 #. write_only to the rest.
-#: c-family/c-attribs.cc:4962
+#: c-family/c-attribs.cc:4964
 #, fuzzy, gcc-internal-format
 msgid "attribute %<%E(%s)%> missing an argument"
 msgstr "%J%qD sallii vain nolla tai kaksi argumenttia"
 
-#: c-family/c-attribs.cc:5003
+#: c-family/c-attribs.cc:5005
 #, gcc-internal-format
 msgid "attribute %<%E(%s, %E, %E)%> invalid positional argument %i"
 msgstr ""
 
-#: c-family/c-attribs.cc:5006
+#: c-family/c-attribs.cc:5008
 #, gcc-internal-format
 msgid "attribute %<%E(%s, %E)%> invalid positional argument %i"
 msgstr ""
 
-#: c-family/c-attribs.cc:5031
+#: c-family/c-attribs.cc:5033
 #, fuzzy, gcc-internal-format
 msgid "attribute %qs positional argument %i invalid value %wi"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: c-family/c-attribs.cc:5035
+#: c-family/c-attribs.cc:5037
 #, fuzzy, gcc-internal-format
 msgid "attribute %qs positional argument %i value %wi exceeds number of function arguments %u"
 msgstr "#pragma GCC optimize ei ole sallittu funktioiden sisällä"
 
-#: c-family/c-attribs.cc:5042
+#: c-family/c-attribs.cc:5044
 #, fuzzy, gcc-internal-format
 msgid "attribute %qs invalid positional argument"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
 # XXX
 #. The first argument must have a pointer or reference type.
-#: c-family/c-attribs.cc:5050
+#: c-family/c-attribs.cc:5052
 #, fuzzy, gcc-internal-format
 msgid "attribute %qs positional argument 1 references non-pointer argument type %qT"
 msgstr "ei-tyhjä argumentti viittaa ei-osoitinoperandiin (argumentti %lu, operandi %lu)"
 
-#: c-family/c-attribs.cc:5061
+#: c-family/c-attribs.cc:5063
 #, gcc-internal-format
 msgid "attribute %qs positional argument 1 references argument of function type %qT"
 msgstr ""
 
-#: c-family/c-attribs.cc:5074
+#: c-family/c-attribs.cc:5076
 #, fuzzy, gcc-internal-format
 msgid "attribute %qs positional argument 1 references %qs-qualified argument type %qT"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
 # XXX
-#: c-family/c-attribs.cc:5092
+#: c-family/c-attribs.cc:5094
 #, fuzzy, gcc-internal-format
 msgid "attribute %qs positional argument 2 references non-integer argument type %qT"
 msgstr "ei-tyhjä argumentti viittaa ei-osoitinoperandiin (argumentti %lu, operandi %lu)"
 
-#: c-family/c-attribs.cc:5324
+#: c-family/c-attribs.cc:5326
 #, gcc-internal-format
 msgid "cleanup argument not an identifier"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: c-family/c-attribs.cc:5331
+#: c-family/c-attribs.cc:5333
 #, gcc-internal-format
 msgid "cleanup argument not a function"
 msgstr "puhdistusargumentti ei ole funktio"
 
-#: c-family/c-attribs.cc:5368
+#: c-family/c-attribs.cc:5370
 #, gcc-internal-format
 msgid "%qE attribute requires prototypes with named arguments"
 msgstr "%qE-attribuutti tarvitsee prototyyppejä, joilla nimettyjä argumentteja"
 
-#: c-family/c-attribs.cc:5376
+#: c-family/c-attribs.cc:5378
 #, gcc-internal-format
 msgid "%qE attribute only applies to variadic functions"
 msgstr "%qE-attribuutti soveltuu vain variadisiin funktioihin"
 
-#: c-family/c-attribs.cc:5392 ada/gcc-interface/utils.cc:6530
+#: c-family/c-attribs.cc:5394 ada/gcc-interface/utils.cc:6530
 #, gcc-internal-format
 msgid "requested position is not an integer constant"
 msgstr "haluttu sijainti ei ole kokonaislukuvakio"
 
-#: c-family/c-attribs.cc:5400 ada/gcc-interface/utils.cc:6537
+#: c-family/c-attribs.cc:5402 ada/gcc-interface/utils.cc:6537
 #, gcc-internal-format
 msgid "requested position is less than zero"
 msgstr "haluttu sijainti on pienempi kuin nolla"
 
-#: c-family/c-attribs.cc:5455 ada/gcc-interface/utils.cc:6901
+#: c-family/c-attribs.cc:5457 ada/gcc-interface/utils.cc:6901
 #: d/d-attribs.cc:746
 #, fuzzy, gcc-internal-format
 msgid "empty string in attribute %<target%>"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
 #. The argument must be a constant string.
-#: c-family/c-attribs.cc:5474 config/sh/sh.cc:8548
+#: c-family/c-attribs.cc:5476 config/sh/sh.cc:8548
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument not a string constant"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: c-family/c-attribs.cc:5632 ada/gcc-interface/utils.cc:7050
+#: c-family/c-attribs.cc:5640 ada/gcc-interface/utils.cc:7050
 #, fuzzy, gcc-internal-format
 msgid "unrecognized %qE attribute argument %qs"
 msgstr "tunnistamaton osoite"
 
-#: c-family/c-attribs.cc:5650
+#: c-family/c-attribs.cc:5658
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute on a function not returning a pointer"
 msgstr "%<return%> arvon kanssa voidin palauttavassa funktiossa"
 
-#: c-family/c-attribs.cc:5665
+#: c-family/c-attribs.cc:5673
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute is only valid on %<struct%> type"
 msgstr "%qE-attribuutti pätee vain funktiotyyppeihin"
 
-#: c-family/c-attribs.cc:5701
+#: c-family/c-attribs.cc:5709
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument %qE is not an integer constant"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: c-family/c-attribs.cc:5710
+#: c-family/c-attribs.cc:5718
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument %qE exceeds %u"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: c-family/c-attribs.cc:5732
+#: c-family/c-attribs.cc:5740
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute may be put on a typedef only; attribute is ignored"
 msgstr "%qE-attribuuttia ei huomioida %qT-tyyppiselle kentälle"
 
-#: c-family/c-attribs.cc:5744
+#: c-family/c-attribs.cc:5752
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute is for pointer types only"
 msgstr "%qE-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: c-family/c-attribs.cc:5763
+#: c-family/c-attribs.cc:5771
 #, fuzzy, gcc-internal-format
 msgid "%qE is only applicable to Objective-C class interfaces, attribute ignored"
 msgstr "%qE ei ole Objective-C-luokkanimi eikä -alias"
 
-#: c-family/c-attribs.cc:5786
+#: c-family/c-attribs.cc:5794
 #, fuzzy, gcc-internal-format
 msgid "%qE cannot be applied to non-pointer type %qT"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: c-family/c-attribs.cc:5799
+#: c-family/c-attribs.cc:5807
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument %qE is not an integer constant between 0 and 3"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: c-family/c-attribs.cc:5811
+#: c-family/c-attribs.cc:5819
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute argument %qE is not recognised"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: c-family/c-attribs.cc:5826
+#: c-family/c-attribs.cc:5834
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored; valid only for functions and function pointer fields"
 msgstr "%qE-attribuutti pätee vain funktioihin"
 
-#: c-family/c-attribs.cc:5837
+#: c-family/c-attribs.cc:5845
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored; field must be a function pointer"
 msgstr "%qE-attribuutti pätee vain funktiotyyppeihin"
 
-#: c-family/c-attribs.cc:5861
+#: c-family/c-attribs.cc:5869
 #, fuzzy, gcc-internal-format
 msgid "unknown attribute %qE"
 msgstr "<tuntematon>"
 
-#: c-family/c-attribs.cc:5888
+#: c-family/c-attribs.cc:5896
 #, fuzzy, gcc-internal-format
 msgid "invalid operand type %qT for %qs"
 msgstr "virheellinen parametrityyppi %qT"
 
-#: c-family/c-attribs.cc:5992
+#: c-family/c-attribs.cc:6000
 #, fuzzy, gcc-internal-format
 msgid "%qs attribute not supported for %qT in %<__builtin_has_attribute%>"
 msgstr "%Jlohkoattribuutteja ei tueta tälle kohteelle"
 
-#: c-family/c-attribs.cc:5994
+#: c-family/c-attribs.cc:6002
 #, fuzzy, gcc-internal-format
 msgid "%qs attribute not supported for %qE in %<__builtin_has_attribute%>"
 msgstr "%Jlohkoattribuutteja ei tueta tälle kohteelle"
 
-#: c-family/c-attribs.cc:6171
+#: c-family/c-attribs.cc:6179
 #, fuzzy, gcc-internal-format
 msgid "%qs attribute not supported in %<__builtin_has_attribute%>"
 msgstr "Rinnakkaiset työt (-j) eivät ole tuettuja tällä alustalla."
@@ -32861,493 +32970,493 @@ msgstr "vertailu on aina epätosi johtuen tietotyypin rajallisesta arvoalueesta"
 msgid "comparison is always true due to limited range of data type"
 msgstr "vertailu on aina tosi johtuen tietotyypin rajallisesta arvoalueesta"
 
-#: c-family/c-common.cc:3247
+#: c-family/c-common.cc:3251
 #, fuzzy, gcc-internal-format
 msgid "comparison of unsigned expression in %<>= 0%> is always true"
 msgstr "vertailu ”etumerkitön lauseke >= 0” on aina tosi"
 
-#: c-family/c-common.cc:3255
+#: c-family/c-common.cc:3259
 #, fuzzy, gcc-internal-format
 msgid "comparison of unsigned expression in %<< 0%> is always false"
 msgstr "vertailu ”etumerkitön lauseke < 0” on aina epätosi"
 
-#: c-family/c-common.cc:3299
+#: c-family/c-common.cc:3303
 #, gcc-internal-format
 msgid "pointer of type %<void *%> used in arithmetic"
 msgstr "%<void *%>-tyyppistä osoitinta käytetty laskutoimituksessa"
 
-#: c-family/c-common.cc:3308
+#: c-family/c-common.cc:3312
 #, gcc-internal-format
 msgid "pointer to a function used in arithmetic"
 msgstr "funktio-osoitinta käytetty laskutoimituksessa"
 
-#: c-family/c-common.cc:3525
+#: c-family/c-common.cc:3529
 #, fuzzy, gcc-internal-format
 msgid "enum constant in boolean context"
 msgstr "lueteltu tyyppi määritelty täällä"
 
-#: c-family/c-common.cc:3555 d/d-convert.cc:149
+#: c-family/c-common.cc:3559 d/d-convert.cc:149
 #, gcc-internal-format
 msgid "the address of %qD will always evaluate as %<true%>"
 msgstr "%qD:n osoite tulee aina olemaan %<true%>"
 
-#: c-family/c-common.cc:3600
+#: c-family/c-common.cc:3604
 #, gcc-internal-format
 msgid "%<*%> in boolean context, suggest %<&&%> instead"
 msgstr "%<*%> totuusarvokontekstissa, ehdotetaan %<&&%> sen sijaan"
 
-#: c-family/c-common.cc:3612
+#: c-family/c-common.cc:3616
 #, fuzzy, gcc-internal-format
 msgid "%<<<%> in boolean context, did you mean %<<%>?"
 msgstr "%<::%E%> on esittelemättä"
 
-#: c-family/c-common.cc:3628
+#: c-family/c-common.cc:3632
 #, fuzzy, gcc-internal-format
 msgid "%<?:%> using integer constants in boolean context, the expression will always evaluate to %<true%>"
 msgstr "%qD:n osoite tulee aina olemaan %<true%>"
 
-#: c-family/c-common.cc:3637
+#: c-family/c-common.cc:3641
 #, fuzzy, gcc-internal-format
 msgid "%<?:%> using integer constants in boolean context"
 msgstr "lueteltu tyyppi määritelty täällä"
 
-#: c-family/c-common.cc:3673
+#: c-family/c-common.cc:3677
 #, fuzzy, gcc-internal-format
 msgid "the compiler can assume that the address of %qD will always evaluate to %<true%>"
 msgstr "%qD:n osoite tulee aina olemaan %<true%>"
 
-#: c-family/c-common.cc:3708 cp/semantics.cc:843 cp/typeck.cc:9957
+#: c-family/c-common.cc:3712 cp/semantics.cc:843 cp/typeck.cc:9971
 #, gcc-internal-format
 msgid "suggest parentheses around assignment used as truth value"
 msgstr "ehdotetaan sulkeita totuusarvona käytetyn sijoituksen ympärille"
 
-#: c-family/c-common.cc:3795 c/c-decl.cc:4708 c/c-decl.cc:7119
-#: c/c-typeck.cc:15859
+#: c-family/c-common.cc:3799 c/c-decl.cc:4708 c/c-decl.cc:7119
+#: c/c-typeck.cc:15862
 #, gcc-internal-format
 msgid "invalid use of %<restrict%>"
 msgstr "epäkelpo %<restrict%>-avainsanan käyttö"
 
-#: c-family/c-common.cc:3869
+#: c-family/c-common.cc:3873
 #, gcc-internal-format
 msgid "invalid application of %<sizeof%> to a function type"
 msgstr "epäkelpo %<sizeof%>-avainsanan soveltaminen funktiotyyppiin"
 
-#: c-family/c-common.cc:3879
+#: c-family/c-common.cc:3883
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ does not permit %<alignof%> applied to a function type"
 msgstr "ISO C ei salli ylimääräisiä %<;%>-merkkejä funktioiden ulkopuolella"
 
-#: c-family/c-common.cc:3882
+#: c-family/c-common.cc:3886
 #, fuzzy, gcc-internal-format
 msgid "ISO C does not permit %<_Alignof%> applied to a function type"
 msgstr "ISO C ei salli ylimääräisiä %<;%>-merkkejä funktioiden ulkopuolella"
 
-#: c-family/c-common.cc:3893
+#: c-family/c-common.cc:3897 cp/typeck.cc:1905
 #, gcc-internal-format
 msgid "invalid application of %qs to a void type"
 msgstr "epäkelpo %qs:n soveltaminen tyhjään tyyppiin"
 
-#: c-family/c-common.cc:3902
+#: c-family/c-common.cc:3906
 #, fuzzy, gcc-internal-format
 msgid "invalid application of %qs to incomplete type %qT"
 msgstr "epäkelpo %qs:n soveltaminen tyhjään tyyppiin"
 
-#: c-family/c-common.cc:3910
+#: c-family/c-common.cc:3914
 #, fuzzy, gcc-internal-format
 msgid "invalid application of %qs to array type %qT of incomplete element type"
 msgstr "epäkelpo %qs:n soveltaminen vaillinaiseen tyyppiin %qT "
 
-#: c-family/c-common.cc:3962
+#: c-family/c-common.cc:3966
 #, gcc-internal-format
 msgid "%<__alignof%> applied to a bit-field"
 msgstr "%<__alignof%>-avainsanaa sovellettu bittikenttään"
 
-#: c-family/c-common.cc:4762
+#: c-family/c-common.cc:4766
 #, gcc-internal-format
 msgid "first argument to %<va_arg%> not of type %<va_list%>"
 msgstr "%<va_arg%>-funktion ensimmäinen argumentti ei ole tyyppiä %<va_list%>"
 
-#: c-family/c-common.cc:4882
+#: c-family/c-common.cc:4886
 #, gcc-internal-format
 msgid "cannot disable built-in function %qs"
 msgstr "sisäistä funktiota %qs ei voi ottaa pois käytöstä"
 
-#: c-family/c-common.cc:5072
+#: c-family/c-common.cc:5076
 #, gcc-internal-format
 msgid "pointers are not permitted as case values"
 msgstr "osoittimet eivät ole sallittuja case-arvoja"
 
-#: c-family/c-common.cc:5079
+#: c-family/c-common.cc:5083
 #, gcc-internal-format
 msgid "range expressions in switch statements are non-standard"
 msgstr "arvoaluelausekkeet switch-lauseessa eivät ole standardin mukaisia"
 
-#: c-family/c-common.cc:5107
+#: c-family/c-common.cc:5111
 #, gcc-internal-format
 msgid "empty range specified"
 msgstr "tyhjä arvoalue annettu"
 
-#: c-family/c-common.cc:5159
+#: c-family/c-common.cc:5163
 #, gcc-internal-format
 msgid "duplicate (or overlapping) case value"
 msgstr "case-arvon kaksoiskappale (tai limitys)"
 
-#: c-family/c-common.cc:5161
+#: c-family/c-common.cc:5165
 #, gcc-internal-format
 msgid "this is the first entry overlapping that value"
 msgstr "tämä on ensimmäinen arvoa limittävä kenttä"
 
-#: c-family/c-common.cc:5165
+#: c-family/c-common.cc:5169
 #, gcc-internal-format
 msgid "duplicate case value"
 msgstr "case-arvon kaksoiskappale"
 
-#: c-family/c-common.cc:5166 c-family/c-warn.cc:2542
+#: c-family/c-common.cc:5170 c-family/c-warn.cc:2542
 #, gcc-internal-format
 msgid "previously used here"
 msgstr "viimeksi käytetty täällä"
 
-#: c-family/c-common.cc:5170
+#: c-family/c-common.cc:5174
 #, gcc-internal-format
 msgid "multiple default labels in one switch"
 msgstr "useita default-nimikkeitä samassa switch-lauseessa"
 
-#: c-family/c-common.cc:5172
+#: c-family/c-common.cc:5176
 #, gcc-internal-format
 msgid "this is the first default label"
 msgstr "tämä on ensimmäinen default-nimiö"
 
-#: c-family/c-common.cc:5284
+#: c-family/c-common.cc:5288
 #, gcc-internal-format
 msgid "taking the address of a label is non-standard"
 msgstr "nimikkeen osoitteen ottaminen ei ole standardia"
 
-#: c-family/c-common.cc:5462
+#: c-family/c-common.cc:5466
 #, fuzzy, gcc-internal-format
 msgid "requested alignment is not an integer constant"
 msgstr "haluttu sijainti ei ole kokonaislukuvakio"
 
-#: c-family/c-common.cc:5470 c-family/c-common.cc:5480
+#: c-family/c-common.cc:5474 c-family/c-common.cc:5484
 #, fuzzy, gcc-internal-format
 msgid "requested alignment %qE is not a positive power of 2"
 msgstr "pyydetty kohdistus ei ole kahden potenssi"
 
-#: c-family/c-common.cc:5490
+#: c-family/c-common.cc:5494
 #, fuzzy, gcc-internal-format
 msgid "requested alignment %qE exceeds object file maximum %u"
 msgstr "%s: kentän ”%s” arvot eivät saa olla suurempia kuin %d"
 
-#: c-family/c-common.cc:5498
+#: c-family/c-common.cc:5502
 #, fuzzy, gcc-internal-format
 msgid "requested alignment %qE exceeds maximum %u"
 msgstr "%s: kentän ”%s” arvot eivät saa olla suurempia kuin %d"
 
-#: c-family/c-common.cc:5673
+#: c-family/c-common.cc:5677
 #, fuzzy, gcc-internal-format
 msgid "not enough variable arguments to fit a sentinel"
 msgstr "ei tarpeeksi muuttuja-argumentteja lopetusalkion mahduttamiseksi"
 
-#: c-family/c-common.cc:5687
+#: c-family/c-common.cc:5691
 #, gcc-internal-format
 msgid "missing sentinel in function call"
 msgstr "lopetusalkio puuttuu funktiokutsusta"
 
-#: c-family/c-common.cc:5914 c-family/c-common.cc:5964 d/d-attribs.cc:812
+#: c-family/c-common.cc:5918 c-family/c-common.cc:5968 d/d-attribs.cc:812
 #: d/d-attribs.cc:862
 #, fuzzy, gcc-internal-format
 msgid "bad option %qs to attribute %<optimize%>"
 msgstr "%s ei ole liitospiste tai virheellinen valitsin"
 
-#: c-family/c-common.cc:5917 c-family/c-common.cc:5968
+#: c-family/c-common.cc:5921 c-family/c-common.cc:5972
 #, fuzzy, gcc-internal-format
 msgid "bad option %qs to pragma %<optimize%>"
 msgstr "%s ei ole liitospiste tai virheellinen valitsin"
 
-#: c-family/c-common.cc:6016
+#: c-family/c-common.cc:6020
 #, fuzzy, gcc-internal-format
 msgid "attribute %<fallthrough%> specified multiple times"
 msgstr "oletusargumentti määritelty lambda-parametrille"
 
-#: c-family/c-common.cc:6020
+#: c-family/c-common.cc:6024
 #, fuzzy, gcc-internal-format
 msgid "%<fallthrough%> attribute specified with a parameter"
 msgstr "oletusargumentti määritelty lambda-parametrille"
 
-#: c-family/c-common.cc:6200 c-family/c-common.cc:7036
-#: c-family/c-common.cc:7083 c-family/c-common.cc:7158
-#: c-family/c-common.cc:7231 config/aarch64/aarch64-sve-builtins.cc:2122
+#: c-family/c-common.cc:6204 c-family/c-common.cc:7040
+#: c-family/c-common.cc:7087 c-family/c-common.cc:7162
+#: c-family/c-common.cc:7235 config/aarch64/aarch64-sve-builtins.cc:2122
 #: c/c-typeck.cc:3729
 #, gcc-internal-format
 msgid "too few arguments to function %qE"
 msgstr "liian vähän argumentteja funktiolle %qE"
 
-#: c-family/c-common.cc:6205 c-family/c-common.cc:7089
-#: c-family/c-common.cc:7257 config/aarch64/aarch64-sve-builtins.cc:2124
+#: c-family/c-common.cc:6209 c-family/c-common.cc:7093
+#: c-family/c-common.cc:7261 config/aarch64/aarch64-sve-builtins.cc:2124
 #: c/c-typeck.cc:3593
 #, gcc-internal-format
 msgid "too many arguments to function %qE"
 msgstr "liian monta argumenttia funktiolle %qE"
 
-#: c-family/c-common.cc:6247
+#: c-family/c-common.cc:6251
 #, fuzzy, gcc-internal-format
 msgid "third argument to function %qE must be a constant integer"
 msgstr "%<__builtin_prefetch%>-funktion kolmannen argumentin pitää olla vakio"
 
-#: c-family/c-common.cc:6272
+#: c-family/c-common.cc:6276
 #, fuzzy, gcc-internal-format
 msgid "second argument to function %qE must be a constant integer power of 2 between %qi and %qu bits"
 msgstr "%<__builtin_prefetch%>-funktion kolmannen argumentin pitää olla vakio"
 
-#: c-family/c-common.cc:6293 c-family/c-common.cc:6337
+#: c-family/c-common.cc:6297 c-family/c-common.cc:6341
 #, gcc-internal-format
 msgid "non-floating-point argument in call to function %qE"
 msgstr "ei-liukulukuargumentti kutsussa funktiolle %qE"
 
-#: c-family/c-common.cc:6316
+#: c-family/c-common.cc:6320
 #, gcc-internal-format
 msgid "non-floating-point arguments in call to function %qE"
 msgstr "ei-liukulukuargumentteja kutsussa funktiolle %qE"
 
-#: c-family/c-common.cc:6330
+#: c-family/c-common.cc:6334
 #, gcc-internal-format
 msgid "non-const integer argument %u in call to function %qE"
 msgstr "ei-vakio kokonaiskulukuargumentti %u kutsussa funktiolle %qE"
 
-#: c-family/c-common.cc:6350
+#: c-family/c-common.cc:6354
 #, fuzzy, gcc-internal-format
 msgid "non-integer argument 3 in call to function %qE"
 msgstr "ei-vakio kokonaiskulukuargumentti %u kutsussa funktiolle %qE"
 
-#: c-family/c-common.cc:6367 c-family/c-common.cc:6417
+#: c-family/c-common.cc:6371 c-family/c-common.cc:6421
 #, fuzzy, gcc-internal-format
 msgid "argument %u in call to function %qE does not have integral type"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: c-family/c-common.cc:6374
+#: c-family/c-common.cc:6378
 #, fuzzy, gcc-internal-format
 msgid "argument 3 in call to function %qE does not have pointer to integral type"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: c-family/c-common.cc:6380
+#: c-family/c-common.cc:6384
 #, fuzzy, gcc-internal-format
 msgid "argument 3 in call to function %qE has pointer to enumerated type"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: c-family/c-common.cc:6386
+#: c-family/c-common.cc:6390
 #, fuzzy, gcc-internal-format
 msgid "argument 3 in call to function %qE has pointer to boolean type"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: c-family/c-common.cc:6392 c-family/c-common.cc:6399
-#: c-family/c-common.cc:6454 c-family/c-common.cc:6461
+#: c-family/c-common.cc:6396 c-family/c-common.cc:6403
+#: c-family/c-common.cc:6458 c-family/c-common.cc:6465
 #, fuzzy, gcc-internal-format
 msgid "argument %u in call to function %qE has pointer to %qs type (%qT)"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: c-family/c-common.cc:6423
+#: c-family/c-common.cc:6427
 #, fuzzy, gcc-internal-format
 msgid "argument 3 in call to function %qE has enumerated type"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: c-family/c-common.cc:6429
+#: c-family/c-common.cc:6433
 #, fuzzy, gcc-internal-format
 msgid "argument 3 in call to function %qE has boolean type"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: c-family/c-common.cc:6442
+#: c-family/c-common.cc:6446
 #, fuzzy, gcc-internal-format
 msgid "argument %u in call to function %qE does not have pointer type"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: c-family/c-common.cc:6448
+#: c-family/c-common.cc:6452
 #, fuzzy, gcc-internal-format
 msgid "argument %u in call to function %qE points to incomplete type"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: c-family/c-common.cc:6713
+#: c-family/c-common.cc:6717
 #, fuzzy, gcc-internal-format
 msgid "cannot apply %<offsetof%> to static data member %qD"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: c-family/c-common.cc:6718
+#: c-family/c-common.cc:6722
 #, fuzzy, gcc-internal-format
 msgid "cannot apply %<offsetof%> when %<operator[]%> is overloaded"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: c-family/c-common.cc:6725
+#: c-family/c-common.cc:6729
 #, fuzzy, gcc-internal-format
 msgid "cannot apply %<offsetof%> to a non constant address"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: c-family/c-common.cc:6738
+#: c-family/c-common.cc:6742
 #, fuzzy, gcc-internal-format
 msgid "attempt to take address of bit-field structure member %qD"
 msgstr "bittikenttätietueen jäsenestä %qs yritettiin ottaa osoite"
 
-#: c-family/c-common.cc:6791
+#: c-family/c-common.cc:6795
 #, gcc-internal-format
 msgid "index %E denotes an offset greater than size of %qT"
 msgstr ""
 
-#: c-family/c-common.cc:6952
+#: c-family/c-common.cc:6956
 #, gcc-internal-format
 msgid "size of array is too large"
 msgstr "taulukon koko on liian suuri"
 
-#: c-family/c-common.cc:7066 c-family/c-common.cc:7190
+#: c-family/c-common.cc:7070 c-family/c-common.cc:7194
 #, fuzzy, gcc-internal-format
 msgid "operand type %qT is incompatible with argument %d of %qE"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: c-family/c-common.cc:7100
+#: c-family/c-common.cc:7104
 #, fuzzy, gcc-internal-format
 msgid "expecting argument of type pointer or of type integer for argument 1"
 msgstr "argumentin %d antaminen funktiolle %qE tekee kokonaisluvusta osoittimen ilman tyyppimuunnosta"
 
-#: c-family/c-common.cc:7116
+#: c-family/c-common.cc:7120
 #, fuzzy, gcc-internal-format
 msgid "both arguments must be compatible"
 msgstr "argumentin <%s>:lle on oltava yksittäinen merkki"
 
-#: c-family/c-common.cc:7332
+#: c-family/c-common.cc:7336
 #, fuzzy, gcc-internal-format
 msgid "incorrect number of arguments to function %qE"
 msgstr "liian monta argumenttia funktiolle %qE"
 
-#: c-family/c-common.cc:7346
+#: c-family/c-common.cc:7350
 #, fuzzy, gcc-internal-format
 msgid "argument 1 of %qE must be a non-void pointer type"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: c-family/c-common.cc:7353
+#: c-family/c-common.cc:7357
 #, fuzzy, gcc-internal-format
 msgid "argument 1 of %qE must be a pointer to a complete type"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: c-family/c-common.cc:7362
+#: c-family/c-common.cc:7366
 #, fuzzy, gcc-internal-format
 msgid "argument 1 of %qE must be a pointer to a constant size type"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: c-family/c-common.cc:7373
+#: c-family/c-common.cc:7377
 #, fuzzy, gcc-internal-format
 msgid "argument 1 of %qE must be a pointer to a nonzero size object"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: c-family/c-common.cc:7394
+#: c-family/c-common.cc:7398
 #, fuzzy, gcc-internal-format
 msgid "argument %d of %qE must be a pointer type"
 msgstr "annettu yhteensopimatonta osoitintyyppiä oleva %d. argumentti funktiolle %qE"
 
-#: c-family/c-common.cc:7402
+#: c-family/c-common.cc:7406
 #, fuzzy, gcc-internal-format
 msgid "argument %d of %qE must be a pointer to a constant size type"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: c-family/c-common.cc:7408
+#: c-family/c-common.cc:7412
 #, fuzzy, gcc-internal-format
 msgid "argument %d of %qE must not be a pointer to a function"
 msgstr "annettu yhteensopimatonta osoitintyyppiä oleva %d. argumentti funktiolle %qE"
 
-#: c-family/c-common.cc:7416
+#: c-family/c-common.cc:7420
 #, fuzzy, gcc-internal-format
 msgid "size mismatch in argument %d of %qE"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: c-family/c-common.cc:7429
+#: c-family/c-common.cc:7433
 #, fuzzy, gcc-internal-format
 msgid "argument %d of %qE must not be a pointer to a %<const%> type"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: c-family/c-common.cc:7434
+#: c-family/c-common.cc:7438
 #, fuzzy, gcc-internal-format
 msgid "argument %d of %qE discards %<const%> qualifier"
 msgstr "%d. argumentti funktiolle %qE hylkää kohdeosoitintyypin %qv-määritteen"
 
-#: c-family/c-common.cc:7443
+#: c-family/c-common.cc:7447
 #, fuzzy, gcc-internal-format
 msgid "argument %d of %qE must not be a pointer to a %<volatile%> type"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: c-family/c-common.cc:7448
+#: c-family/c-common.cc:7452
 #, fuzzy, gcc-internal-format
 msgid "argument %d of %qE discards %<volatile%> qualifier"
 msgstr "%d. argumentti funktiolle %qE hylkää kohdeosoitintyypin %qv-määritteen"
 
-#: c-family/c-common.cc:7461
+#: c-family/c-common.cc:7465
 #, fuzzy, gcc-internal-format
 msgid "non-integer memory model argument %d of %qE"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: c-family/c-common.cc:7474
+#: c-family/c-common.cc:7478
 #, fuzzy, gcc-internal-format
 msgid "invalid memory model argument %d of %qE"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: c-family/c-common.cc:7875
+#: c-family/c-common.cc:7879
 #, gcc-internal-format
 msgid "this target does not define a speculation barrier; your program will still execute correctly, but incorrect speculation may not be restricted"
 msgstr ""
 
-#: c-family/c-common.cc:8510
+#: c-family/c-common.cc:8514
 #, fuzzy, gcc-internal-format
 msgid "index value is out of bound"
 msgstr "Arvo sallitun välin ulkopuolella."
 
-#: c-family/c-common.cc:8552 c-family/c-common.cc:8601
-#: c-family/c-common.cc:8617
+#: c-family/c-common.cc:8556 c-family/c-common.cc:8605
+#: c-family/c-common.cc:8621
 #, fuzzy, gcc-internal-format
 msgid "conversion of scalar %qT to vector %qT involves truncation"
 msgstr "muunnos tyypistä %qT tyyppiin %qT on moniselitteinen"
 
 #. Reject arguments that are built-in functions with
 #. no library fallback.
-#: c-family/c-common.cc:8705
+#: c-family/c-common.cc:8709
 #, fuzzy, gcc-internal-format
 msgid "built-in function %qE must be directly called"
 msgstr "sisäinen funktio %q+D esitelty ei-funktiona"
 
-#: c-family/c-common.cc:8725
+#: c-family/c-common.cc:8729
 #, fuzzy, gcc-internal-format
 msgid "size of array %qE is not a constant expression"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: c-family/c-common.cc:8728
+#: c-family/c-common.cc:8732
 #, fuzzy, gcc-internal-format
 msgid "size of array is not a constant expression"
 msgstr "taulukon koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: c-family/c-common.cc:8732
+#: c-family/c-common.cc:8736
 #, fuzzy, gcc-internal-format
 msgid "size %qE of array %qE is negative"
 msgstr "taulukon %qE koko on negatiivinen"
 
-#: c-family/c-common.cc:8735
+#: c-family/c-common.cc:8739
 #, fuzzy, gcc-internal-format
 msgid "size %qE of array is negative"
 msgstr "taulukon koko on negatiivinen"
 
-#: c-family/c-common.cc:8740
+#: c-family/c-common.cc:8744
 #, fuzzy, gcc-internal-format
 msgid "size %qE of array %qE exceeds maximum object size %qE"
 msgstr "paikallisten objektien kokonaiskoko on liian suuri"
 
-#: c-family/c-common.cc:8743
+#: c-family/c-common.cc:8747
 #, fuzzy, gcc-internal-format
 msgid "size %qE of array exceeds maximum object size %qE"
 msgstr "paikallisten objektien kokonaiskoko on liian suuri"
 
-#: c-family/c-common.cc:8748
+#: c-family/c-common.cc:8752
 #, fuzzy, gcc-internal-format
 msgid "size of array %qE exceeds maximum object size %qE"
 msgstr "paikallisten objektien kokonaiskoko on liian suuri"
 
-#: c-family/c-common.cc:8751
+#: c-family/c-common.cc:8755
 #, fuzzy, gcc-internal-format
 msgid "size of array exceeds maximum object size %qE"
 msgstr "paikallisten objektien kokonaiskoko on liian suuri"
 
-#: c-family/c-common.cc:8822
+#: c-family/c-common.cc:8826
 #, gcc-internal-format
 msgid "environment variable %qs must expand to a non-negative integer less than or equal to %wd"
 msgstr ""
@@ -34036,7 +34145,7 @@ msgstr "virheellinen loppuliite ”%.*s” liukulukuvakiolla"
 msgid "traditional C rejects string constant concatenation"
 msgstr "perinteinen C ei salli merkkijonovakioiden katenointia"
 
-#: c-family/c-omp.cc:131 cp/pt.cc:19096
+#: c-family/c-omp.cc:131 cp/pt.cc:19141
 #, gcc-internal-format
 msgid "%<#pragma omp critical%> with %<hint%> clause requires a name, except when %<omp_sync_hint_none%> is used"
 msgstr ""
@@ -34056,147 +34165,147 @@ msgstr "roskaa ilmaisun %<#pragma pack%> lopussa"
 msgid "%<#pragma omp atomic compare capture%> with non-integral comparison result"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: c-family/c-omp.cc:535
+#: c-family/c-omp.cc:540
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp atomic update%> uses two different variables for memory"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: c-family/c-omp.cc:538 c-family/c-omp.cc:576
+#: c-family/c-omp.cc:543 c-family/c-omp.cc:581
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp atomic capture%> uses two different variables for memory"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: c-family/c-omp.cc:695
+#: c-family/c-omp.cc:700
 #, fuzzy, gcc-internal-format
 msgid "type of %<depobj%> expression is not %<omp_depend_t%>"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: c-family/c-omp.cc:701
+#: c-family/c-omp.cc:706
 #, gcc-internal-format
 msgid "%<const%> qualified %<depobj%> expression"
 msgstr ""
 
-#: c-family/c-omp.cc:717
+#: c-family/c-omp.cc:722
 #, fuzzy, gcc-internal-format
 msgid "more than one locator in %<depend%> clause on %<depobj%> construct"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c-family/c-omp.cc:723
+#: c-family/c-omp.cc:728
 #, fuzzy, gcc-internal-format
 msgid "%<depobj%> dependence type specified in %<depend%> clause on %<depobj%> construct"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c-family/c-omp.cc:745
+#: c-family/c-omp.cc:750
 #, fuzzy, gcc-internal-format
 msgid "%<iterator%> modifier may not be specified on %<depobj%> construct"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c-family/c-omp.cc:959 cp/semantics.cc:10456
+#: c-family/c-omp.cc:964 cp/semantics.cc:10447
 #, gcc-internal-format
 msgid "invalid type for iteration variable %qE"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: c-family/c-omp.cc:964
+#: c-family/c-omp.cc:969
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> iteration variable %qE"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: c-family/c-omp.cc:980
+#: c-family/c-omp.cc:985
 #, gcc-internal-format
 msgid "%qE is not initialized"
 msgstr "%qE:a ei ole alustettu"
 
-#: c-family/c-omp.cc:1001 cp/semantics.cc:10345
+#: c-family/c-omp.cc:1006 cp/semantics.cc:10336
 #, fuzzy, gcc-internal-format
 msgid "missing controlling predicate"
 msgstr "’(’ puuttuu predikaatin jäljestä"
 
-#: c-family/c-omp.cc:1107 cp/semantics.cc:9961
+#: c-family/c-omp.cc:1112 cp/semantics.cc:9952
 #, fuzzy, gcc-internal-format
 msgid "invalid controlling predicate"
 msgstr "Muotoillun tulosteen hallinta:"
 
-#: c-family/c-omp.cc:1114 cp/semantics.cc:10351
+#: c-family/c-omp.cc:1119 cp/semantics.cc:10342
 #, gcc-internal-format
 msgid "missing increment expression"
 msgstr "puuttuva kasvatuslauseke"
 
-#: c-family/c-omp.cc:1214 c-family/c-omp.cc:1232
+#: c-family/c-omp.cc:1219 c-family/c-omp.cc:1237
 #, gcc-internal-format
 msgid "increment is not constant 1 or -1 for %<!=%> condition"
 msgstr ""
 
-#: c-family/c-omp.cc:1245 cp/semantics.cc:10078
+#: c-family/c-omp.cc:1250 cp/semantics.cc:10069
 #, gcc-internal-format
 msgid "invalid increment expression"
 msgstr "virheellinen kasvatuslauseke"
 
-#: c-family/c-omp.cc:1342
+#: c-family/c-omp.cc:1347
 #, fuzzy, gcc-internal-format
 msgid "initializer expression refers to iteration variable %qD"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: c-family/c-omp.cc:1346
+#: c-family/c-omp.cc:1351
 #, fuzzy, gcc-internal-format
 msgid "condition expression refers to iteration variable %qD"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: c-family/c-omp.cc:1350
+#: c-family/c-omp.cc:1355
 #, fuzzy, gcc-internal-format
 msgid "increment expression refers to iteration variable %qD"
 msgstr "kirjoitussuojatun muuttujan %qD kasvatus"
 
-#: c-family/c-omp.cc:1528
+#: c-family/c-omp.cc:1533
 #, fuzzy, gcc-internal-format
 msgid "outer iteration variable %qD used in initializer expression has type other than %qT"
 msgstr "”!$OMP DO”-iteraatiomuuttuja on läsnä muussa lauseessa kuin PRIVATE tai LASTPRIVATE kohdassa %L"
 
-#: c-family/c-omp.cc:1532
+#: c-family/c-omp.cc:1537
 #, fuzzy, gcc-internal-format
 msgid "outer iteration variable %qD used in condition expression has type other than %qT"
 msgstr "”!$OMP DO”-iteraatiomuuttuja on läsnä muussa lauseessa kuin PRIVATE tai LASTPRIVATE kohdassa %L"
 
-#: c-family/c-omp.cc:1539
+#: c-family/c-omp.cc:1544
 #, gcc-internal-format
 msgid "outer iteration variable %qD multiplier expression %qE is not integral"
 msgstr ""
 
-#: c-family/c-omp.cc:1545
+#: c-family/c-omp.cc:1550
 #, fuzzy, gcc-internal-format
 msgid "outer iteration variable %qD addend expression %qE is not integral"
 msgstr "epäkelvot operandit binääriselle %s-operaatiolle"
 
-#: c-family/c-omp.cc:1610 c-family/c-omp.cc:1695
+#: c-family/c-omp.cc:1615 c-family/c-omp.cc:1700
 #, fuzzy, gcc-internal-format
 msgid "the same loop iteration variables %qD used in multiple associated loops"
 msgstr "sisäkkäisessä funktiossa käytetty rekisterimuuttujaa %qD"
 
-#: c-family/c-omp.cc:1645
+#: c-family/c-omp.cc:1650
 #, gcc-internal-format
 msgid "two different outer iteration variables %qD and %qD used in a single loop"
 msgstr ""
 
-#: c-family/c-omp.cc:2242
+#: c-family/c-omp.cc:2247
 #, gcc-internal-format
 msgid "invalid %<task%> reduction modifier on construct combined with %<simd%> or %<loop%>"
 msgstr ""
 
-#: c-family/c-omp.cc:2253
+#: c-family/c-omp.cc:2258
 #, gcc-internal-format
 msgid "invalid %<task%> reduction modifier on construct not combined with %<parallel%>, %<for%> or %<sections%>"
 msgstr ""
 
-#: c-family/c-omp.cc:2266
+#: c-family/c-omp.cc:2271
 #, gcc-internal-format
 msgid "%<inscan%> %<reduction%> clause on construct other than %<for%>, %<simd%>, %<for simd%>, %<parallel for%>, %<parallel for simd%>"
 msgstr ""
 
-#: c-family/c-omp.cc:2739 c/c-typeck.cc:15672 cp/semantics.cc:9074
+#: c-family/c-omp.cc:2744 c/c-typeck.cc:15675 cp/semantics.cc:9065
 #, gcc-internal-format
 msgid "%qD specified in %<allocate%> clause but not in an explicit privatization clause"
 msgstr ""
 
-#: c-family/c-omp.cc:2831 c-family/c-omp.cc:2846
+#: c-family/c-omp.cc:2836 c-family/c-omp.cc:2851
 #, gcc-internal-format
 msgid "%qD is not a function argument"
 msgstr "%qD ei ole funktioargumentti"
@@ -34261,82 +34370,82 @@ msgstr "%<-Wformat-contains-nul%> jätetty huomiotta ilman valitsinta %<-Wformat
 msgid "%<-Wformat-security%> ignored without %<-Wformat%>"
 msgstr "%<-Wformat-security%> jätetty huomiotta ilman valitsinta %<-Wformat%>"
 
-#: c-family/c-opts.cc:972
+#: c-family/c-opts.cc:974
 #, fuzzy, gcc-internal-format
 msgid "%<-fabi-compat-version=1%> is not supported, using =2"
 msgstr "dwarfin versio %d ei ole tuettu"
 
-#: c-family/c-opts.cc:999
+#: c-family/c-opts.cc:1001
 #, gcc-internal-format
 msgid "%<-Wabi%> won%'t warn about anything"
 msgstr "%<-Wabi%> ei varoita mistään"
 
-#: c-family/c-opts.cc:1001
+#: c-family/c-opts.cc:1003
 #, fuzzy, gcc-internal-format
 msgid "%<-Wabi%> warns about differences from the most up-to-date ABI, which is also used by default"
 msgstr "-Wabi varoittaa eroista ajantasaisimpaan ABIin, joka on myös oletuksena käytössä"
 
-#: c-family/c-opts.cc:1004
+#: c-family/c-opts.cc:1006
 #, fuzzy, gcc-internal-format
 msgid "use e.g. %<-Wabi=11%> to warn about changes from GCC 7"
 msgstr "käytä esim. -Wabi=11 GCC 7:stä muuttuneista asioista varoittamiseksi"
 
-#: c-family/c-opts.cc:1074
+#: c-family/c-opts.cc:1076
 #, fuzzy, gcc-internal-format
 msgid "external TLS initialization functions not supported on this target"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: c-family/c-opts.cc:1098
+#: c-family/c-opts.cc:1100
 #, fuzzy, gcc-internal-format
 msgid "too many filenames given; type %<%s %s%> for usage"
 msgstr "liian monta tiedostonimeä annettu.  Kirjoita %s --help nähdäksesi käyttöohjeen"
 
-#: c-family/c-opts.cc:1112
+#: c-family/c-opts.cc:1114
 #, gcc-internal-format
 msgid "opening output file %s: %m"
 msgstr "avataan tulostetiedosto %s: %m"
 
-#: c-family/c-opts.cc:1130
+#: c-family/c-opts.cc:1132
 #, gcc-internal-format
 msgid "the %qs debug info cannot be used with pre-compiled headers"
 msgstr ""
 
-#: c-family/c-opts.cc:1296 d/d-lang.cc:1292
+#: c-family/c-opts.cc:1298 d/d-lang.cc:1291
 #, gcc-internal-format
 msgid "opening dependency file %s: %m"
 msgstr "avataan riippuvuustiedosto %s: %m"
 
-#: c-family/c-opts.cc:1307 d/d-lang.cc:1305
+#: c-family/c-opts.cc:1309 d/d-lang.cc:1304
 #, gcc-internal-format
 msgid "closing dependency file %s: %m"
 msgstr "suljetaan riippuvuustiedosto %s: %m"
 
-#: c-family/c-opts.cc:1310
+#: c-family/c-opts.cc:1312
 #, gcc-internal-format
 msgid "when writing output to %s: %m"
 msgstr "kirjoitettaessa tulostetta tiedostoon %s: %m"
 
-#: c-family/c-opts.cc:1386
+#: c-family/c-opts.cc:1388
 #, fuzzy, gcc-internal-format
 msgid "to generate dependencies you must specify either %<-M%> or %<-MM%>"
 msgstr "muodostaaksesi riippuvuudet sinun täytyy antaa joko -M tai -MM"
 
-#: c-family/c-opts.cc:1410
+#: c-family/c-opts.cc:1412
 #, fuzzy, gcc-internal-format
 msgid "%<-MG%> may only be used with %<-M%> or %<-MM%>"
 msgstr "Valitsinta --acls voi käyttää vain POSIX-arkistoille"
 
-#: c-family/c-opts.cc:1443
+#: c-family/c-opts.cc:1445
 #, fuzzy, gcc-internal-format
 msgid "%<-fdirectives-only%> is incompatible with %<-Wunused-macros%>"
 msgstr "__COUNTER__ lavennettu direktiivin sisällä valitsimella -fdirectives-only"
 
-#: c-family/c-opts.cc:1446
+#: c-family/c-opts.cc:1448
 #, fuzzy, gcc-internal-format
 msgid "%<-fdirectives-only%> is incompatible with %<-traditional%>"
 msgstr "__COUNTER__ lavennettu direktiivin sisällä valitsimella -fdirectives-only"
 
-#: c-family/c-opts.cc:1644
+#: c-family/c-opts.cc:1646
 #, gcc-internal-format
 msgid "too late for # directive to set debug directory"
 msgstr "#-opastimen on liian myöhäistä asettaa vianjäljityshakemistoa"
@@ -34696,42 +34805,42 @@ msgstr "%<#pragma STDC FLOAT_CONST_DECIMAL64%> ei ole tuettu tällä kohteella"
 msgid "ISO C does not support %<#pragma STDC FLOAT_CONST_DECIMAL64%>"
 msgstr "%<#pragma STDC FLOAT_CONST_DECIMAL64%> ei ole tuettu tällä kohteella"
 
-#: c-family/c-pretty-print.cc:339
+#: c-family/c-pretty-print.cc:340
 #, gcc-internal-format
 msgid "<type-error>"
 msgstr "<tyyppivirhe>"
 
-#: c-family/c-pretty-print.cc:382
+#: c-family/c-pretty-print.cc:383
 #, gcc-internal-format
 msgid "<unnamed-unsigned:"
 msgstr "<nimetön-etumerkitön:"
 
-#: c-family/c-pretty-print.cc:386
+#: c-family/c-pretty-print.cc:387
 #, gcc-internal-format
 msgid "<unnamed-float:"
 msgstr "<nimetön-liukuluku:"
 
-#: c-family/c-pretty-print.cc:389
+#: c-family/c-pretty-print.cc:390
 #, gcc-internal-format
 msgid "<unnamed-fixed:"
 msgstr "<nimetön-kiinteä:"
 
-#: c-family/c-pretty-print.cc:404
+#: c-family/c-pretty-print.cc:405
 #, gcc-internal-format
 msgid "<typedef-error>"
 msgstr "<typedef-virhe>"
 
-#: c-family/c-pretty-print.cc:419
+#: c-family/c-pretty-print.cc:420
 #, gcc-internal-format
 msgid "<tag-error>"
 msgstr "<tunnistevirhe>"
 
-#: c-family/c-pretty-print.cc:1309
+#: c-family/c-pretty-print.cc:1310
 #, gcc-internal-format
 msgid "<erroneous-expression>"
 msgstr "<virheellinen-lauseke>"
 
-#: c-family/c-pretty-print.cc:1313 cp/cxx-pretty-print.cc:133
+#: c-family/c-pretty-print.cc:1314 cp/cxx-pretty-print.cc:133
 #, gcc-internal-format
 msgid "<return-value>"
 msgstr "<paluuarvo>"
@@ -34742,7 +34851,7 @@ msgid "wrong type argument to %s"
 msgstr "abs-funktiolle annettu väärä tyyppiargumentti"
 
 #: c-family/c-warn.cc:58 c-family/c-warn.cc:71 cp/constexpr.cc:3113
-#: cp/constexpr.cc:6476
+#: cp/constexpr.cc:6554
 #, gcc-internal-format
 msgid "overflow in constant expression"
 msgstr "ylivuoto vakiolausekkeessa"
@@ -35688,7 +35797,7 @@ msgstr "liikaa syötetiedostoja"
 msgid "%qs is defined in header %qs; did you forget to %<#include %s%>?"
 msgstr "%qD ei ole nimiavaruuden nimi"
 
-#: common/config/aarch64/aarch64-common.cc:519 config/aarch64/aarch64.cc:16853
+#: common/config/aarch64/aarch64-common.cc:519 config/aarch64/aarch64.cc:17798
 #, fuzzy, gcc-internal-format
 msgid "unknown value %qs for %<-mcpu%>"
 msgstr "tuntematon cc_attr-arvo"
@@ -35720,15 +35829,15 @@ msgid "unrecognized option passed to %%:%<target_mode_check%>"
 msgstr "tuntematon komentorivivalitsin %qs"
 
 #: common/config/arm/arm-common.cc:378 common/config/arm/arm-common.cc:442
-#: common/config/arm/arm-common.cc:489 config/aarch64/aarch64.cc:16785
-#: config/aarch64/aarch64.cc:16823
+#: common/config/arm/arm-common.cc:489 config/aarch64/aarch64.cc:17730
+#: config/aarch64/aarch64.cc:17768
 #, gcc-internal-format
 msgid "valid arguments are: %s; did you mean %qs?"
 msgstr "kelvolliset argumentit ovat: %s; tarkoititko %qs?"
 
 #: common/config/arm/arm-common.cc:381 common/config/arm/arm-common.cc:445
-#: common/config/arm/arm-common.cc:492 config/aarch64/aarch64.cc:16788
-#: config/aarch64/aarch64.cc:16826
+#: common/config/arm/arm-common.cc:492 config/aarch64/aarch64.cc:17733
+#: config/aarch64/aarch64.cc:17771
 #, gcc-internal-format, gfc-internal-format
 msgid "valid arguments are: %s"
 msgstr "kelvolliset argumentit ovat: %s"
@@ -35879,67 +35988,67 @@ msgstr "  uid = %d, gid = %d, oikeudet = 0%o.\n"
 msgid "for the option %<-mcache-block-size=X%>, the valid X must be: 4, 8, 16, 32, 64, 128, 256, or 512"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:378
+#: common/config/riscv/riscv-common.cc:392
 #, fuzzy, gcc-internal-format
 msgid "%<-march=%s%>: extension %qs appear more than one time"
 msgstr "%s %qs"
 
-#: common/config/riscv/riscv-common.cc:626
+#: common/config/riscv/riscv-common.cc:640
 #, fuzzy, gcc-internal-format
 msgid "%<-march=%s%>: expect number after %<%dp%>"
 msgstr "valitsin -mcpu=%s on ristiriidassa valitsimen -march=%s kanssa"
 
-#: common/config/riscv/riscv-common.cc:632
+#: common/config/riscv/riscv-common.cc:646
 #, gcc-internal-format
 msgid "%<-march=%s%>: for %<%s%dp%dp?%>, version number with more than 2 level is not supported"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:702
+#: common/config/riscv/riscv-common.cc:716
 #, fuzzy, gcc-internal-format
 msgid "%<-march=%s%>: rv%de is not a valid base ISA"
 msgstr "luokkanimeä ei ole annettu %qs:n kanssa"
 
-#: common/config/riscv/riscv-common.cc:714
+#: common/config/riscv/riscv-common.cc:728
 #, gcc-internal-format
 msgid "version of %<g%> will be omitted, please specify version for individual extension"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:733
+#: common/config/riscv/riscv-common.cc:747
 #, gcc-internal-format
 msgid "%<-march=%s%>: first ISA subset must be %<e%>, %<i%> or %<g%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:760
+#: common/config/riscv/riscv-common.cc:774
 #, fuzzy, gcc-internal-format
 msgid "%<-march=%s%>: unsupported ISA subset %<%c%>"
 msgstr "valitsin -mcpu=%s on ristiriidassa valitsimen -march=%s kanssa"
 
-#: common/config/riscv/riscv-common.cc:764
+#: common/config/riscv/riscv-common.cc:778
 #, gcc-internal-format
 msgid "%<-march=%s%>: ISA string is not in canonical order. %<%c%>"
 msgstr ""
 
-#: common/config/riscv/riscv-common.cc:907
+#: common/config/riscv/riscv-common.cc:965
 #, fuzzy, gcc-internal-format
 msgid "%<-march=%s%>: name of %s must be more than 1 letter"
 msgstr "%s %qs"
 
-#: common/config/riscv/riscv-common.cc:919
+#: common/config/riscv/riscv-common.cc:977
 #, fuzzy, gcc-internal-format
 msgid "%<-march=%s%>: %s must separate with %<_%>"
 msgstr "%s %qs"
 
-#: common/config/riscv/riscv-common.cc:948
+#: common/config/riscv/riscv-common.cc:1006
 #, fuzzy, gcc-internal-format
 msgid "%<-march=%s%>: ISA string must begin with rv32 or rv64"
 msgstr "%s %qs"
 
-#: common/config/riscv/riscv-common.cc:985
+#: common/config/riscv/riscv-common.cc:1043
 #, fuzzy, gcc-internal-format
 msgid "%<-march=%s%>: unexpected ISA string at end: %qs"
 msgstr "valitsin -mcpu=%s on ristiriidassa valitsimen -march=%s kanssa"
 
-#: common/config/riscv/riscv-common.cc:1161
+#: common/config/riscv/riscv-common.cc:1221
 #, fuzzy, gcc-internal-format
 msgid "%<-mcpu=%s%>: unknown CPU"
 msgstr "%<%s%> on tuntematon"
@@ -35954,7 +36063,12 @@ msgstr "%s: tuntematon valitsin ”%s”\n"
 msgid "unknown switch %<-mlong-double-%s%>"
 msgstr ""
 
-#: common/config/rs6000/rs6000-common.cc:258
+#: common/config/rs6000/rs6000-common.cc:234
+#, gcc-internal-format
+msgid "option %<%s%> requires %<-mlong-double-128%>"
+msgstr ""
+
+#: common/config/rs6000/rs6000-common.cc:268
 #, gcc-internal-format
 msgid "%<-fsplit-stack%> currently only supported on PowerPC64 GNU/Linux with glibc-2.18 or later"
 msgstr ""
@@ -36187,8 +36301,9 @@ msgstr "null-merkit säilytetään literaalissa"
 
 #: config/host-darwin.cc:107
 #, fuzzy, gcc-internal-format
-msgid "PCH memory not available %m"
-msgstr "_Tekstiosa:"
+#| msgid "%qD is not a variable"
+msgid "PCH memory is not available: %m"
+msgstr "%qD ei ole muuttuja"
 
 #: config/sol2-c.cc:91 config/sol2-c.cc:107
 #, gcc-internal-format
@@ -36256,12 +36371,12 @@ msgid "PIC is only supported for RTPs"
 msgstr "Vain 1k-lohkot/vyöhykkeet ovat tuettuja"
 
 #: config/aarch64/aarch64-builtins.cc:1870
-#: config/aarch64/aarch64-builtins.cc:2104 config/arm/arm-builtins.cc:3032
+#: config/aarch64/aarch64-builtins.cc:2104 config/arm/arm-builtins.cc:3086
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "argument %d must be a constant immediate"
 msgstr "%<__builtin_expect%>-funktion toisen argumentin pitää olla vakio"
 
-#: config/aarch64/aarch64-builtins.cc:1942 config/arm/arm-builtins.cc:3380
+#: config/aarch64/aarch64-builtins.cc:1942 config/arm/arm-builtins.cc:3441
 #, fuzzy, gcc-internal-format
 msgid "lane index must be a constant immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
@@ -36685,361 +36800,375 @@ msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 msgid "capture by copy of SVE type %qT"
 msgstr "%2$qD:n parametrilla %1$P on vaillinainen tyyppi %3$qT"
 
-#: config/aarch64/aarch64.cc:2190
+#: config/aarch64/aarch64.cc:2735
 #, fuzzy, gcc-internal-format
 msgid "the %qE attribute cannot be applied to an SVE function type"
 msgstr "funktion paluuarvon tyyppi ei voi olla funktio"
 
-#: config/aarch64/aarch64.cc:2265 config/aarch64/aarch64.cc:2279
+#: config/aarch64/aarch64.cc:2810 config/aarch64/aarch64.cc:2824
 #, fuzzy, gcc-internal-format
 msgid "unexpected %<%s%> after %<%s%>"
 msgstr "tiedostonimi puuttuu %qs:n jälkeen"
 
-#: config/aarch64/aarch64.cc:2732
+#: config/aarch64/aarch64.cc:3277
 #, fuzzy, gcc-internal-format
 msgid "%qs is incompatible with the use of floating-point types"
 msgstr "%s %qs"
 
-#: config/aarch64/aarch64.cc:2735
+#: config/aarch64/aarch64.cc:3280
 #, fuzzy, gcc-internal-format
 msgid "%qs is incompatible with the use of vector types"
 msgstr "%s %qs"
 
-#: config/aarch64/aarch64.cc:2739
+#: config/aarch64/aarch64.cc:3284
 #, fuzzy, gcc-internal-format
 msgid "%qs feature modifier is incompatible with the use of floating-point types"
 msgstr "%s ei tue pituusmäärettä %qs %s"
 
-#: config/aarch64/aarch64.cc:2742
+#: config/aarch64/aarch64.cc:3287
 #, fuzzy, gcc-internal-format
 msgid "%qs feature modifier is incompatible with the use of vector types"
 msgstr "%s ei tue pituusmäärettä %qs %s"
 
-#: config/aarch64/aarch64.cc:2758
+#: config/aarch64/aarch64.cc:3303
 #, fuzzy, gcc-internal-format
 msgid "this operation requires the SVE ISA extension"
 msgstr "Älä varoita Microsoft-laajennosten käytöstä"
 
-#: config/aarch64/aarch64.cc:2759
+#: config/aarch64/aarch64.cc:3304
 #, gcc-internal-format
 msgid "you can enable SVE using the command-line option %<-march%>, or by using the %<target%> attribute or pragma"
 msgstr ""
 
 #. We can't gracefully recover at this point, so make this a
 #. fatal error.
-#: config/aarch64/aarch64.cc:6381
+#: config/aarch64/aarch64.cc:7030
 #, fuzzy, gcc-internal-format
 msgid "arguments of type %qT require the SVE ISA extension"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: config/aarch64/aarch64.cc:6708
+#: config/aarch64/aarch64.cc:7357
 #, fuzzy, gcc-internal-format
 msgid "SVE type %qT cannot be passed to an unprototyped function"
 msgstr "AltiVec-argumentti välitetty funktiolle, jolla ei ole prototyyppiä"
 
-#: config/aarch64/aarch64.cc:6836 config/aarch64/aarch64.cc:6899
-#: config/aarch64/aarch64.cc:7022 config/aarch64/aarch64.cc:18720
-#: config/arm/arm.cc:7193 config/arm/arm.cc:7223 config/arm/arm.cc:28981
+#: config/aarch64/aarch64.cc:7485 config/aarch64/aarch64.cc:7548
+#: config/aarch64/aarch64.cc:7671 config/aarch64/aarch64.cc:19665
+#: config/arm/arm.cc:7234 config/arm/arm.cc:7264 config/arm/arm.cc:29057
 #, gcc-internal-format
 msgid "parameter passing for argument of type %qT changed in GCC 9.1"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:6967
+#: config/aarch64/aarch64.cc:7616
 #, fuzzy, gcc-internal-format
 msgid "%qE requires the SVE ISA extension"
 msgstr "Käytä 64-bittistä ABIa"
 
-#: config/aarch64/aarch64.cc:6970
+#: config/aarch64/aarch64.cc:7619
 #, fuzzy, gcc-internal-format
 msgid "calls to functions of type %qT require the SVE ISA extension"
 msgstr "sisäinen funktio %q+D esitelty ei-funktiona"
 
-#: config/aarch64/aarch64.cc:7147
+#: config/aarch64/aarch64.cc:7796
 #, gcc-internal-format
 msgid "stack probes for SVE frames"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:16287
+#: config/aarch64/aarch64.cc:17228
 #, gcc-internal-format
 msgid "unknown flag passed in %<-moverride=%s%> (%s)"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:16331
+#: config/aarch64/aarch64.cc:17272
 #, fuzzy, gcc-internal-format
 msgid "%qs string ill-formed"
 msgstr ""
 "Käyttö: %s [MERKKIJONO]...\n"
 "  tai:  %s VALITSIN\n"
 
-#: config/aarch64/aarch64.cc:16387
+#: config/aarch64/aarch64.cc:17328
 #, fuzzy, gcc-internal-format
 msgid "invalid format for %<sve_width%>"
 msgstr "virheellinen lauseke kohdemuuttujana"
 
-#: config/aarch64/aarch64.cc:16399
+#: config/aarch64/aarch64.cc:17340
 #, fuzzy, gcc-internal-format
 msgid "invalid %<sve_width%> value: %d"
 msgstr "virheellinen %%h-arvo"
 
-#: config/aarch64/aarch64.cc:16419
+#: config/aarch64/aarch64.cc:17360
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "tuning string missing in option (%s)"
 msgstr ""
 "Käyttö: %s [MERKKIJONO]...\n"
 "  tai:  %s VALITSIN\n"
 
-#: config/aarch64/aarch64.cc:16437
+#: config/aarch64/aarch64.cc:17378
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "unknown tuning option (%s)"
 msgstr "tuntematon valitsin -%s"
 
-#: config/aarch64/aarch64.cc:16605 config/riscv/riscv.cc:5061
+#: config/aarch64/aarch64.cc:17546 config/arm/arm.cc:3188
+#: config/riscv/riscv.cc:5061
 #, gcc-internal-format
 msgid "incompatible options %<-mstack-protector-guard=global%> and %<-mstack-protector-guard-offset=%s%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:16614 config/riscv/riscv.cc:5070
+#: config/aarch64/aarch64.cc:17555 config/riscv/riscv.cc:5070
 #, gcc-internal-format
 msgid "both %<-mstack-protector-guard-offset%> and %<-mstack-protector-guard-reg%> must be used with %<-mstack-protector-guard=sysreg%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:16622
+#: config/aarch64/aarch64.cc:17563
 #, gcc-internal-format
 msgid "specify a system register with a small string length"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:16632 config/arm/arm.cc:3197
-#: config/riscv/riscv.cc:5099 config/rs6000/rs6000.cc:4600
+#: config/aarch64/aarch64.cc:17573 config/arm/arm.cc:3200
+#: config/riscv/riscv.cc:5099 config/rs6000/rs6000.cc:4569
 #, fuzzy, gcc-internal-format
 msgid "%qs is not a valid offset in %qs"
 msgstr "Funktio %qs"
 
-#: config/aarch64/aarch64.cc:16725
+#: config/aarch64/aarch64.cc:17580
+#, gcc-internal-format
+msgid "%<-fsanitize=shadow-call-stack%> requires %<-ffixed-x18%>"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:17670
 #, gcc-internal-format
 msgid "only values 12 (4 KB) and 16 (64 KB) are supported for guard size.  Given value %d (%llu KB) is out of range"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:16741
+#: config/aarch64/aarch64.cc:17686
 #, gcc-internal-format
 msgid "stack clash guard size %<%d%> must be equal to probing interval %<%d%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:16850
+#: config/aarch64/aarch64.cc:17795
 #, fuzzy, gcc-internal-format
 msgid "missing cpu name in %<-mcpu=%s%>"
 msgstr "makron nimi puuttuu %qs:n jälkeen"
 
-#: config/aarch64/aarch64.cc:16857
+#: config/aarch64/aarch64.cc:17802
 #, fuzzy, gcc-internal-format
 msgid "invalid feature modifier %qs in %<-mcpu=%s%>"
 msgstr "tuntematon konetila %qs"
 
-#: config/aarch64/aarch64.cc:16916
+#: config/aarch64/aarch64.cc:17861
 #, fuzzy, gcc-internal-format
 msgid "invalid argument given to %<-mharden-sls=%>"
 msgstr "epäkelpo argumentti funktiolle %<__builtin_frame_address%>"
 
-#: config/aarch64/aarch64.cc:16927
+#: config/aarch64/aarch64.cc:17872
 #, fuzzy, gcc-internal-format
 msgid "%qs must be by itself for %<-mharden-sls=%>"
 msgstr "-Wformat-y2k jätetty huomiotta ilman valitsinta -Wformat"
 
-#: config/aarch64/aarch64.cc:16932
+#: config/aarch64/aarch64.cc:17877
 #, fuzzy, gcc-internal-format
 msgid "invalid argument %<%s%> for %<-mharden-sls=%>"
 msgstr "Virheellinen vähimmäisargumenttimäärä (%d) funktiolle %s"
 
-#: config/aarch64/aarch64.cc:17038
+#: config/aarch64/aarch64.cc:17983
 #, fuzzy, gcc-internal-format
 msgid "invalid argument %<%s%> for %<-mbranch-protection=%>"
 msgstr "Virheellinen vähimmäisargumenttimäärä (%d) funktiolle %s"
 
-#: config/aarch64/aarch64.cc:17040
+#: config/aarch64/aarch64.cc:17985
 #, fuzzy, gcc-internal-format
 msgid "missing argument for %<-mbranch-protection=%>"
 msgstr "Virheellinen vähimmäisargumenttimäärä (%d) funktiolle %s"
 
-#: config/aarch64/aarch64.cc:17064
+#: config/aarch64/aarch64.cc:18009
 #, fuzzy, gcc-internal-format
 msgid "missing arch name in %<-march=%s%>"
 msgstr "makron nimi puuttuu %qs:n jälkeen"
 
-#: config/aarch64/aarch64.cc:17067
+#: config/aarch64/aarch64.cc:18012
 #, fuzzy, gcc-internal-format
 msgid "unknown value %qs for %<-march%>"
 msgstr "tuntematon cc_attr-arvo"
 
-#: config/aarch64/aarch64.cc:17071
+#: config/aarch64/aarch64.cc:18016
 #, fuzzy, gcc-internal-format
 msgid "invalid feature modifier %qs in %<-march=%s%>"
 msgstr "tiedostonimi puuttuu %qs:n jälkeen"
 
-#: config/aarch64/aarch64.cc:17099
+#: config/aarch64/aarch64.cc:18044
 #, fuzzy, gcc-internal-format
 msgid "missing cpu name in %<-mtune=%s%>"
 msgstr "makron nimi puuttuu %qs:n jälkeen"
 
-#: config/aarch64/aarch64.cc:17102
+#: config/aarch64/aarch64.cc:18047
 #, fuzzy, gcc-internal-format
 msgid "unknown value %qs for %<-mtune%>"
 msgstr "tuntematon cc_attr-arvo"
 
-#: config/aarch64/aarch64.cc:17236
+#: config/aarch64/aarch64.cc:18181
 #, fuzzy, gcc-internal-format
 msgid "switch %<-mcpu=%s%> conflicts with %<-march=%s%> switch"
 msgstr "valitsin -mcpu=%s on ristiriidassa valitsimen -march=%s kanssa"
 
-#: config/aarch64/aarch64.cc:17292
+#: config/aarch64/aarch64.cc:18237
 #, fuzzy, gcc-internal-format
 msgid "assembler does not support %<-mabi=ilp32%>"
 msgstr "%s ei tue %%n$-operandinumeromuotoilua"
 
-#: config/aarch64/aarch64.cc:17299
+#: config/aarch64/aarch64.cc:18244
 #, gcc-internal-format
 msgid "return address signing is only supported for %<-mabi=lp64%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:17381
+#: config/aarch64/aarch64.cc:18326
 #, fuzzy, gcc-internal-format
 msgid "code model %qs with %<-f%s%>"
 msgstr "koodimalli %s ei tue PIC-tilaa"
 
-#: config/aarch64/aarch64.cc:17384
+#: config/aarch64/aarch64.cc:18329
 #, fuzzy, gcc-internal-format
 msgid "code model %qs not supported in ilp32 mode"
 msgstr "koodimalli %s ei tue PIC-tilaa"
 
-#: config/aarch64/aarch64.cc:17563
+#: config/aarch64/aarch64.cc:18508
 #, fuzzy, gcc-internal-format
 msgid "missing name in %<target(\"arch=\")%> pragma or attribute"
 msgstr "%s:n perästä puuttuu operandi"
 
-#: config/aarch64/aarch64.cc:17566
+#: config/aarch64/aarch64.cc:18511
 #, fuzzy, gcc-internal-format
-msgid "invalid name (%qs) in %<target(\"arch=\")%> pragma or attribute"
+msgid "invalid name %qs in %<target(\"arch=\")%> pragma or attribute"
 msgstr "tiedostonimi puuttuu %qs:n jälkeen"
 
-#: config/aarch64/aarch64.cc:17570 config/aarch64/aarch64.cc:17612
-#: config/aarch64/aarch64.cc:17719
+#: config/aarch64/aarch64.cc:18515
 #, fuzzy, gcc-internal-format
-msgid "invalid feature modifier %s of value (%qs) in %<target()%> pragma or attribute"
+msgid "invalid feature modifier %s of value %qs in %<target()%> pragma or attribute"
 msgstr "tiedostonimi puuttuu %qs:n jälkeen"
 
-#: config/aarch64/aarch64.cc:17605
+#: config/aarch64/aarch64.cc:18550
 #, fuzzy, gcc-internal-format
 msgid "missing name in %<target(\"cpu=\")%> pragma or attribute"
 msgstr "%s:n perästä puuttuu operandi"
 
-#: config/aarch64/aarch64.cc:17608
+#: config/aarch64/aarch64.cc:18553
 #, fuzzy, gcc-internal-format
-msgid "invalid name (%qs) in %<target(\"cpu=\")%> pragma or attribute"
+msgid "invalid name %qs in %<target(\"cpu=\")%> pragma or attribute"
 msgstr "tiedostonimi puuttuu %qs:n jälkeen"
 
-#: config/aarch64/aarch64.cc:17635
+#: config/aarch64/aarch64.cc:18557 config/aarch64/aarch64.cc:18664
+#, fuzzy, gcc-internal-format
+msgid "invalid feature modifier %qs of value %qs in %<target()%> pragma or attribute"
+msgstr "tiedostonimi puuttuu %qs:n jälkeen"
+
+#: config/aarch64/aarch64.cc:18580
 #, fuzzy, gcc-internal-format
 msgid "missing argument to %<target(\"branch-protection=\")%> pragma or attribute"
 msgstr "%s:n perästä puuttuu operandi"
 
-#: config/aarch64/aarch64.cc:17639
+#: config/aarch64/aarch64.cc:18584
 #, fuzzy, gcc-internal-format
-msgid "invalid protection type (%qs) in %<target(\"branch-protection=\")%> pragma or attribute"
+msgid "invalid protection type %qs in %<target(\"branch-protection=\")%> pragma or attribute"
 msgstr "tiedostonimi puuttuu %qs:n jälkeen"
 
-#: config/aarch64/aarch64.cc:17674
+#: config/aarch64/aarch64.cc:18619
 #, fuzzy, gcc-internal-format
-msgid "invalid name (%qs) in %<target(\"tune=\")%> pragma or attribute"
+msgid "invalid name %qs in %<target(\"tune=\")%> pragma or attribute"
 msgstr "tiedostonimi puuttuu %qs:n jälkeen"
 
-#: config/aarch64/aarch64.cc:17715
+#: config/aarch64/aarch64.cc:18660
 #, fuzzy, gcc-internal-format
 msgid "missing value in %<target()%> pragma or attribute"
 msgstr "%s:n perästä puuttuu operandi"
 
-#: config/aarch64/aarch64.cc:17773 config/aarch64/aarch64.cc:17946
+#: config/aarch64/aarch64.cc:18718 config/aarch64/aarch64.cc:18891
 #, fuzzy, gcc-internal-format
 msgid "malformed %<target()%> pragma or attribute"
 msgstr "Väärin muotoiltu kohdekohtainen muuttujamäärittely"
 
-#: config/aarch64/aarch64.cc:17817
+#: config/aarch64/aarch64.cc:18762
 #, fuzzy, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s\")%> does not accept an argument"
 msgstr "%J%qD sallii vain nolla tai kaksi argumenttia"
 
-#: config/aarch64/aarch64.cc:17825 config/i386/i386-options.cc:1234
+#: config/aarch64/aarch64.cc:18770 config/i386/i386-options.cc:1234
 #, fuzzy, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s\")%> does not allow a negated form"
 msgstr "%s ei tue muotoilua %<%%%s%c%> %s"
 
-#: config/aarch64/aarch64.cc:17879
+#: config/aarch64/aarch64.cc:18824
 #, fuzzy, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s=%s\")%> is not valid"
 msgstr "kohde ”%s” ei täsmää kohdehahmon kanssa"
 
-#: config/aarch64/aarch64.cc:17936 config/arm/arm.cc:33128
-#: config/rs6000/rs6000.cc:24209 config/s390/s390.cc:15840
+#: config/aarch64/aarch64.cc:18881 config/arm/arm.cc:33166
+#: config/rs6000/rs6000.cc:24260 config/s390/s390.cc:15840
 #, fuzzy, gcc-internal-format
 msgid "attribute %<target%> argument not a string"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: config/aarch64/aarch64.cc:17971
+#: config/aarch64/aarch64.cc:18916
 #, gcc-internal-format
 msgid "arch extension %<%s%> should be prefixed by %<+%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:17974
+#: config/aarch64/aarch64.cc:18919
 #, fuzzy, gcc-internal-format
 msgid "pragma or attribute %<target(\"%s\")%> is not valid"
 msgstr "kohde ”%s” ei täsmää kohdehahmon kanssa"
 
-#: config/aarch64/aarch64.cc:17983
+#: config/aarch64/aarch64.cc:18928
 #, fuzzy, gcc-internal-format
 msgid "malformed %<target(\"%s\")%> pragma or attribute"
 msgstr "Väärin muotoiltu kohdekohtainen muuttujamäärittely"
 
-#: config/aarch64/aarch64.cc:19423 config/arm/arm.cc:6545
+#: config/aarch64/aarch64.cc:20393 config/arm/arm.cc:6582
 #: config/rs6000/rs6000-call.cc:374 config/s390/s390.cc:12227
 #: config/s390/s390.cc:12304
 msgid "parameter passing for argument of type %qT with %<[[no_unique_address]]%> members changed %{in GCC 10.1%}"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:19428 config/arm/arm.cc:6550
+#: config/aarch64/aarch64.cc:20398 config/arm/arm.cc:6587
 #: config/rs6000/rs6000-call.cc:369 config/s390/s390.cc:12222
 #: config/s390/s390.cc:12299
 msgid "parameter passing for argument of type %qT when C++17 is enabled changed to match C++14 %{in GCC 10.1%}"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:20578 config/aarch64/aarch64.cc:20581
+#: config/aarch64/aarch64.cc:20403 config/arm/arm.cc:6592
+msgid "parameter passing for argument of type %qT changed %{in GCC 12.1%}"
+msgstr ""
+
+#: config/aarch64/aarch64.cc:21552 config/aarch64/aarch64.cc:21555
 #, fuzzy, gcc-internal-format
 msgid "lane %wd out of range %wd - %wd"
 msgstr "operandinumero on arvoalueen ulkopuolella muotoilussa"
 
-#: config/aarch64/aarch64.cc:25689 config/i386/i386.cc:23312
-#: config/i386/i386.cc:23440
+#: config/aarch64/aarch64.cc:26663 config/i386/i386.cc:23315
+#: config/i386/i386.cc:23443
 #, fuzzy, gcc-internal-format
 msgid "unsupported simdlen %wd"
 msgstr "tuntematon värimoodi"
 
-#: config/aarch64/aarch64.cc:25699 config/aarch64/aarch64.cc:25726
+#: config/aarch64/aarch64.cc:26673 config/aarch64/aarch64.cc:26700
 #, fuzzy, gcc-internal-format
 msgid "GCC does not currently support mixed size types for %<simd%> functions"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: config/aarch64/aarch64.cc:25703
+#: config/aarch64/aarch64.cc:26677
 #, fuzzy, gcc-internal-format
 msgid "GCC does not currently support return type %qT for %<simd%> functions"
 msgstr "%<operator delete%>:n on palautettava tyyppi %qT"
 
-#: config/aarch64/aarch64.cc:25707
+#: config/aarch64/aarch64.cc:26681
 #, fuzzy, gcc-internal-format
 msgid "unsupported return type %qT for %<simd%> functions"
 msgstr "%<operator delete%>:n on palautettava tyyppi %qT"
 
-#: config/aarch64/aarch64.cc:25730
+#: config/aarch64/aarch64.cc:26704
 #, fuzzy, gcc-internal-format
 msgid "GCC does not currently support argument type %qT for %<simd%> functions"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: config/aarch64/aarch64.cc:25755
+#: config/aarch64/aarch64.cc:26729
 #, fuzzy, gcc-internal-format
 msgid "GCC does not currently support simdlen %wd for type %qT"
 msgstr "ISO C++ 1998 ei tue %<long long%> -tyyppiä"
@@ -37100,7 +37229,7 @@ msgid "bad value %qs for %<-mmemory-latency%>"
 msgstr "virheellinen aikakatkaisuarvo: %s"
 
 #: config/alpha/alpha.cc:6651 config/alpha/alpha.cc:6654
-#: config/arc/arc.cc:7071 config/arc/arc.cc:7345 config/s390/s390.cc:882
+#: config/arc/arc.cc:7078 config/arc/arc.cc:7352 config/s390/s390.cc:882
 #: config/tilegx/tilegx.cc:3537 config/tilepro/tilepro.cc:3100
 #, fuzzy, gcc-internal-format
 msgid "bad builtin fcode"
@@ -37220,18 +37349,18 @@ msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 msgid "argument of %qE attribute is not \"ilink\" or \"firq\""
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: config/arc/arc.cc:2129 config/arm/arm.cc:7334 config/arm/arm.cc:7352
-#: config/arm/arm.cc:7533 config/avr/avr.cc:9588 config/avr/avr.cc:9604
-#: config/bfin/bfin.cc:4694 config/bfin/bfin.cc:4755 config/bfin/bfin.cc:4784
+#: config/arc/arc.cc:2129 config/arm/arm.cc:7375 config/arm/arm.cc:7393
+#: config/arm/arm.cc:7574 config/avr/avr.cc:9588 config/avr/avr.cc:9604
+#: config/bfin/bfin.cc:4694 config/bfin/bfin.cc:4755 config/bfin/bfin.cc:4785
 #: config/bpf/bpf.cc:99 config/csky/csky.cc:6454 config/csky/csky.cc:6482
 #: config/epiphany/epiphany.cc:491 config/gcn/gcn.cc:342
 #: config/h8300/h8300.cc:4944 config/i386/i386-options.cc:3336
 #: config/i386/i386-options.cc:3513 config/i386/i386-options.cc:3569
 #: config/i386/i386-options.cc:3620 config/i386/i386-options.cc:3657
 #: config/m68k/m68k.cc:792 config/mcore/mcore.cc:3066
-#: config/nvptx/nvptx.cc:5420 config/riscv/riscv.cc:3273
+#: config/nvptx/nvptx.cc:5785 config/riscv/riscv.cc:3273
 #: config/rl78/rl78.cc:820 config/rl78/rl78.cc:889
-#: config/rs6000/rs6000.cc:20150 config/rx/rx.cc:2727 config/rx/rx.cc:2753
+#: config/rs6000/rs6000.cc:20201 config/rx/rx.cc:2727 config/rx/rx.cc:2753
 #: config/s390/s390.cc:1097 config/s390/s390.cc:1184 config/sh/sh.cc:8428
 #: config/sh/sh.cc:8446 config/sh/sh.cc:8470 config/sh/sh.cc:8541
 #: config/sh/sh.cc:8564 config/stormy16/stormy16.cc:2229
@@ -37240,353 +37369,253 @@ msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 msgid "%qE attribute only applies to functions"
 msgstr "%qE-attribuutti pätee vain funktioihin, ei %s"
 
-#: config/arc/arc.cc:6970
+#: config/arc/arc.cc:6977
 #, fuzzy, gcc-internal-format
 msgid "%<__builtin_arc_aligned%> with non-constant alignment"
 msgstr "funktiota %<__builtin_next_arg%> kutsuttu ilman argumenttia"
 
-#: config/arc/arc.cc:6978
+#: config/arc/arc.cc:6985
 #, fuzzy, gcc-internal-format
 msgid "invalid alignment value for %<__builtin_arc_aligned%>"
 msgstr "epäkelpo argumentti funktiolle %<__builtin_frame_address%>"
 
-#: config/arc/arc.cc:7141
+#: config/arc/arc.cc:7148
 #, fuzzy, gcc-internal-format
 msgid "operand 1 should be an unsigned 3-bit immediate"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/arc/arc.cc:7182 config/arc/arc.cc:7279
+#: config/arc/arc.cc:7189 config/arc/arc.cc:7286
 #, fuzzy, gcc-internal-format
 msgid "operand 2 should be an unsigned 3-bit value (I0-I7)"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/arc/arc.cc:7215 config/arc/arc.cc:7247
+#: config/arc/arc.cc:7222 config/arc/arc.cc:7254
 #, fuzzy, gcc-internal-format
 msgid "operand 1 should be an unsigned 3-bit value (I0-I7)"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/arc/arc.cc:7219 config/arc/arc.cc:7251
+#: config/arc/arc.cc:7226 config/arc/arc.cc:7258
 #, fuzzy, gcc-internal-format
 msgid "operand 2 should be an unsigned 8-bit value"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/arc/arc.cc:7283
+#: config/arc/arc.cc:7290
 #, fuzzy, gcc-internal-format
 msgid "operand 3 should be an unsigned 8-bit value"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/arc/arc.cc:7316
+#: config/arc/arc.cc:7323
 #, fuzzy, gcc-internal-format
 msgid "operand 4 should be an unsigned 8-bit value (0-255)"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/arc/arc.cc:7320
+#: config/arc/arc.cc:7327
 #, fuzzy, gcc-internal-format
 msgid "operand 3 should be an unsigned 3-bit value (I0-I7)"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/arc/arc.cc:7327
+#: config/arc/arc.cc:7334
 #, fuzzy, gcc-internal-format
 msgid "operand 2 should be an unsigned 3-bit value (subreg 0-7)"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/arc/arc.cc:7330
+#: config/arc/arc.cc:7337
 #, fuzzy, gcc-internal-format
 msgid "operand 2 should be an even 3-bit value (subreg 0,2,4,6)"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/arc/arc.cc:7377
+#: config/arc/arc.cc:7384
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "builtin requires an immediate for operand %d"
 msgstr "sijoituksen vasemman operandin on oltava lvalue"
 
-#: config/arc/arc.cc:7382
+#: config/arc/arc.cc:7389
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "operand %d should be a 6 bit unsigned immediate"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/arc/arc.cc:7386
+#: config/arc/arc.cc:7393
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "operand %d should be a 8 bit unsigned immediate"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/arc/arc.cc:7390
+#: config/arc/arc.cc:7397
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "operand %d should be a 3 bit unsigned immediate"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/arc/arc.cc:7393
+#: config/arc/arc.cc:7400
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "unknown builtin immediate operand type for operand %d"
 msgstr "sijoituksen vasemman operandin on oltava lvalue"
 
-#: config/arc/arc.cc:7444
+#: config/arc/arc.cc:7451
 #, gcc-internal-format
 msgid "register number must be a compile-time constant.  Try giving higher optimization levels"
 msgstr ""
 
-#: config/arc/arc.cc:8434
+#: config/arc/arc.cc:8441
 #, fuzzy, gcc-internal-format
 msgid "insn addresses not set after shorten branches"
 msgstr "tämä on käsky:"
 
-#: config/arc/arc.cc:8649
+#: config/arc/arc.cc:8656
 #, fuzzy, gcc-internal-format
 msgid "insn addresses not freed"
 msgstr "tämä on käsky:"
 
-#: config/arc/arc.cc:11057
+#: config/arc/arc.cc:11064
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute only valid for ARCv2 architecture"
 msgstr "%qE-attribuutti pätee vain funktioihin"
 
-#: config/arc/arc.cc:11065 config/arc/arc.cc:11104
+#: config/arc/arc.cc:11072 config/arc/arc.cc:11111
 #, fuzzy, gcc-internal-format
 msgid "argument of %qE attribute is missing"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: config/arc/arc.cc:11076 config/arc/arc.cc:11115 config/arc/arc.cc:11241
+#: config/arc/arc.cc:11083 config/arc/arc.cc:11122 config/arc/arc.cc:11248
 #: config/avr/avr.cc:9660
 #, gcc-internal-format
 msgid "%qE attribute allows only an integer constant argument"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: config/arc/arc.cc:11096
+#: config/arc/arc.cc:11103
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute only valid for ARC EM architecture"
 msgstr "%qE-attribuutti pätee vain funktiotyyppeihin"
 
-#: config/arc/arc.cc:11151
+#: config/arc/arc.cc:11158
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute only applies to types"
 msgstr "%qE-attribuutti pätee vain funktiotyyppeihin"
 
-#: config/arc/arc.cc:11157
+#: config/arc/arc.cc:11164
 #, fuzzy, gcc-internal-format
 msgid "argument of %qE attribute ignored"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: config/arc/arc.cc:11231 config/avr/avr.cc:9647 config/bfin/bfin.cc:4816
-#: config/i386/winnt.cc:63 config/nvptx/nvptx.cc:5443
+#: config/arc/arc.cc:11238 config/avr/avr.cc:9647 config/bfin/bfin.cc:4817
+#: config/i386/winnt.cc:63 config/nvptx/nvptx.cc:5808
 #, gcc-internal-format
 msgid "%qE attribute only applies to variables"
 msgstr "%qE-attribuutti pätee vain muuttujiin"
 
-#: config/arm/aarch-common.cc:550 config/i386/i386.cc:22225
+#: config/arm/aarch-common.cc:550 config/i386/i386.cc:22179
 #, fuzzy, gcc-internal-format
 msgid "alternatives not allowed in %<asm%> flag output"
 msgstr "taulukon indeksin tyyppi on %<char%>"
 
-#: config/arm/aarch-common.cc:611 config/i386/i386.cc:22289
+#: config/arm/aarch-common.cc:611 config/i386/i386.cc:22243
 #, fuzzy, gcc-internal-format
 msgid "unknown %<asm%> flag output %qs"
 msgstr "Funktio %qs"
 
-#: config/arm/aarch-common.cc:621 config/i386/i386.cc:22318
+#: config/arm/aarch-common.cc:621 config/i386/i386.cc:22272
 #, fuzzy, gcc-internal-format
 msgid "invalid type for %<asm%> flag output"
 msgstr "virheellinen lvalue asm-tulosteessa %d"
 
-#: config/arm/arm-builtins.cc:3011
+#: config/arm/arm-builtins.cc:3065
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "coprocessor %d is not enabled with +cdecp%d"
 msgstr "[käytössä]"
 
-#: config/arm/arm-builtins.cc:3015
+#: config/arm/arm-builtins.cc:3069
 #, fuzzy, gcc-internal-format
 msgid "coproc must be a constant immediate in range [0-%d] enabled with %<+cdecp<N>%>"
 msgstr "%<__builtin_expect%>-funktion toisen argumentin pitää olla vakio"
 
-#: config/arm/arm-builtins.cc:3024
+#: config/arm/arm-builtins.cc:3078
 #, fuzzy, gcc-internal-format
 msgid "argument %d to %qE must be a constant immediate in range [0-%d]"
 msgstr "%<__builtin_expect%>-funktion toisen argumentin pitää olla vakio"
 
-#: config/arm/arm-builtins.cc:3143
+#: config/arm/arm-builtins.cc:3197
 #, fuzzy, gcc-internal-format
 msgid "this builtin is not supported for this target"
 msgstr "Ei ole tuettu"
 
-#: config/arm/arm-builtins.cc:3251
+#: config/arm/arm-builtins.cc:3312
 #, fuzzy, gcc-internal-format
 msgid "saturation bit range must be in the range [%wd, %wd]"
 msgstr "%s odottaa kokonaislukuliteraalia väliltä [%d, %d]."
 
-#: config/arm/arm-builtins.cc:3256
+#: config/arm/arm-builtins.cc:3317
 #, fuzzy, gcc-internal-format
 msgid "saturation bit range must be a constant immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/arm/arm-builtins.cc:3279
+#: config/arm/arm-builtins.cc:3340
 #, gcc-internal-format
 msgid "You must enable MVE instructions to use these intrinsics"
 msgstr ""
 
-#: config/arm/arm-builtins.cc:3301
+#: config/arm/arm-builtins.cc:3362
 #, gcc-internal-format
 msgid "You must enable NEON instructions (e.g. %<-mfloat-abi=softfp%> %<-mfpu=neon%>) to use these intrinsics."
 msgstr ""
 
-#: config/arm/arm-builtins.cc:3323
+#: config/arm/arm-builtins.cc:3384
 #, gcc-internal-format
 msgid "You must enable VFP instructions to use these intrinsics."
 msgstr ""
 
-#: config/arm/arm-builtins.cc:3402
+#: config/arm/arm-builtins.cc:3463
 #, gcc-internal-format
 msgid "You must enable crypto instructions (e.g. include %<-mfloat-abi=softfp%> %<-mfpu=crypto-neon%>) to use these intrinsics."
 msgstr ""
 
 #. @@@ better error message
-#: config/arm/arm-builtins.cc:3480 config/arm/arm-builtins.cc:3584
+#: config/arm/arm-builtins.cc:3541 config/arm/arm-builtins.cc:3645
 #, fuzzy, gcc-internal-format
 msgid "selector must be an immediate"
 msgstr "mountin käyttöön vaaditaan pääkäyttäjän oikeudet"
 
-#: config/arm/arm-builtins.cc:3488 config/arm/arm-builtins.cc:3533
-#: config/arm/arm-builtins.cc:3591 config/arm/arm-builtins.cc:3600
+#: config/arm/arm-builtins.cc:3549 config/arm/arm-builtins.cc:3594
+#: config/arm/arm-builtins.cc:3652 config/arm/arm-builtins.cc:3661
 #, fuzzy, gcc-internal-format
 msgid "the range of selector should be in 0 to 7"
 msgstr "haluttu sijainti ei ole kokonaislukuvakio"
 
-#: config/arm/arm-builtins.cc:3493 config/arm/arm-builtins.cc:3602
+#: config/arm/arm-builtins.cc:3554 config/arm/arm-builtins.cc:3663
 #, fuzzy, gcc-internal-format
 msgid "the range of selector should be in 0 to 3"
 msgstr "haluttu sijainti ei ole kokonaislukuvakio"
 
-#: config/arm/arm-builtins.cc:3498 config/arm/arm-builtins.cc:3604
+#: config/arm/arm-builtins.cc:3559 config/arm/arm-builtins.cc:3665
 #, fuzzy, gcc-internal-format
 msgid "the range of selector should be in 0 to 1"
 msgstr "haluttu sijainti ei ole kokonaislukuvakio"
 
-#: config/arm/arm-builtins.cc:3670
+#: config/arm/arm-builtins.cc:3731
 #, fuzzy, gcc-internal-format
 msgid "mask must be an immediate"
 msgstr "PEITE"
 
-#: config/arm/arm-builtins.cc:3675
+#: config/arm/arm-builtins.cc:3736
 #, fuzzy, gcc-internal-format
 msgid "the range of mask should be in 0 to 255"
 msgstr "haluttu sijainti ei ole kokonaislukuvakio"
 
-#: config/arm/arm-builtins.cc:3863
+#: config/arm/arm-builtins.cc:3924
 #, gcc-internal-format
-msgid "the range of count should be in 0 to 32; please check the intrinsic %<_mm_rori_pi16%> in code"
+msgid "the range of count should be in 0 to 32; please check the intrinsic %qs in code"
 msgstr ""
 
-#: config/arm/arm-builtins.cc:3865
+#: config/arm/arm-builtins.cc:3932
 #, gcc-internal-format
-msgid "the range of count should be in 0 to 32; please check the intrinsic %<_mm_rori_pi32%> in code"
+msgid "the range of count should be in 0 to 16; please check the intrinsic %qs in code"
 msgstr ""
 
-#: config/arm/arm-builtins.cc:3867
+#: config/arm/arm-builtins.cc:3940
 #, gcc-internal-format
-msgid "the range of count should be in 0 to 32; please check the intrinsic %<_mm_ror_pi16%> in code"
+msgid "the range of count should be in 0 to 64; please check the intrinsic %qs in code"
 msgstr ""
 
-#: config/arm/arm-builtins.cc:3869
+#: config/arm/arm-builtins.cc:4003
 #, 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.cc:3875
-#, 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.cc:3877
-#, 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.cc:3882
-#, 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.cc:3884
-#, 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.cc:3886
-#, 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.cc:3888
-#, 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.cc:3890
-#, 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.cc:3892
-#, 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.cc:3894
-#, 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.cc:3896
-#, 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.cc:3898
-#, 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.cc:3900
-#, 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.cc:3902
-#, 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.cc:3904
-#, 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.cc:3906
-#, 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.cc:3908
-#, 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.cc:3910
-#, 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.cc:3912
-#, 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.cc:3914
-#, 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.cc:3916
-#, gcc-internal-format
-msgid "the count should be no less than 0; please check the intrinsic %<_mm_sra_si64%> in code"
+msgid "the count should be no less than 0; please check the intrinsic %qs in code"
 msgstr ""
 
 #: config/arm/arm-c.cc:108
@@ -37609,298 +37638,293 @@ msgstr "tuntematon #pragma GCC coprocessor %E"
 msgid "this definition requires the MVE ISA extension"
 msgstr "Älä varoita Microsoft-laajennosten käytöstä"
 
-#: config/arm/arm.cc:2938
+#: config/arm/arm.cc:2941
 #, fuzzy, gcc-internal-format
 msgid "iWMMXt and NEON are incompatible"
 msgstr "-mvsx ja -mpaired ovat yhteensopimattomat"
 
-#: config/arm/arm.cc:2944
+#: config/arm/arm.cc:2947
 #, fuzzy, gcc-internal-format
 msgid "target CPU does not support ARM mode"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: config/arm/arm.cc:2948
+#: config/arm/arm.cc:2951
 #, gcc-internal-format
 msgid "enabling backtrace support is only meaningful when compiling for the Thumb"
 msgstr ""
 
-#: config/arm/arm.cc:2951
+#: config/arm/arm.cc:2954
 #, gcc-internal-format
 msgid "enabling callee interworking support is only meaningful when compiling for the Thumb"
 msgstr ""
 
-#: config/arm/arm.cc:2959
+#: config/arm/arm.cc:2962
 #, gcc-internal-format
 msgid "%<-g%> with %<-mno-apcs-frame%> may not give sensible debugging"
 msgstr ""
 
-#: config/arm/arm.cc:2964
+#: config/arm/arm.cc:2967
 #, gcc-internal-format
 msgid "iWMMXt unsupported under Thumb mode"
 msgstr ""
 
-#: config/arm/arm.cc:2967
+#: config/arm/arm.cc:2970
 #, fuzzy, gcc-internal-format
 msgid "cannot use %<-mtp=cp15%> with 16-bit Thumb"
 msgstr "typeid:tä ei voi käyttää -fno-rtti-valitsimen kanssa"
 
-#: config/arm/arm.cc:2971
+#: config/arm/arm.cc:2974
 #, fuzzy, gcc-internal-format
 msgid "RTP PIC is incompatible with Thumb"
 msgstr "Muodostin %qs"
 
-#: config/arm/arm.cc:2984
+#: config/arm/arm.cc:2987
 #, 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.cc:2989
+#: config/arm/arm.cc:2992
 #, gcc-internal-format, gfc-internal-format
 msgid "%s only supports non-pic code on M-profile targets"
 msgstr ""
 
-#: config/arm/arm.cc:2994
+#: config/arm/arm.cc:2997
 #, fuzzy, gcc-internal-format
 msgid "%s incompatible with %<-mword-relocations%>"
 msgstr "Muodostin %qs"
 
-#: config/arm/arm.cc:3096
+#: config/arm/arm.cc:3099
 #, fuzzy, gcc-internal-format
 msgid "target CPU does not support THUMB instructions"
 msgstr "AAPCS ei tue valitsinta -mcaller-super-interworking"
 
-#: config/arm/arm.cc:3146
+#: config/arm/arm.cc:3149
 #, fuzzy, gcc-internal-format
 msgid "target CPU does not support unaligned accesses"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: config/arm/arm.cc:3185
-#, gcc-internal-format
-msgid "incompatible options %'-mstack-protector-guard=global%' and%'-mstack-protector-guard-offset=%qs%'"
-msgstr ""
-
-#: config/arm/arm.cc:3284
+#: config/arm/arm.cc:3287
 #, fuzzy, gcc-internal-format
 msgid "switch %<-mcpu=%s%> conflicts with switch %<-march=%s%>"
 msgstr "valitsin -mcpu=%s on ristiriidassa valitsimen -march=%s kanssa"
 
-#: config/arm/arm.cc:3539
+#: config/arm/arm.cc:3542
 #, fuzzy, gcc-internal-format
 msgid "%<-mapcs-stack-check%> incompatible with %<-mno-apcs-frame%>"
 msgstr "-mapcs-stack-check on yhteensopimaton valitsimen -mno-apcs-frame kanssa"
 
-#: config/arm/arm.cc:3548
+#: config/arm/arm.cc:3551
 #, fuzzy, gcc-internal-format
 msgid "%<-fpic%> and %<-mapcs-reent%> are incompatible"
 msgstr "-fpic ja -mapcs-reent ovat yhteensopimattomat"
 
-#: config/arm/arm.cc:3551
+#: config/arm/arm.cc:3554
 #, fuzzy, gcc-internal-format
 msgid "APCS reentrant code not supported.  Ignored"
 msgstr "C++-jäsennin ei tue -dy-valitsinta, jätetään se huomiotta"
 
-#: config/arm/arm.cc:3574
+#: config/arm/arm.cc:3577
 #, gcc-internal-format
 msgid "option %<-mstructure-size-boundary%> is deprecated"
 msgstr ""
 
-#: config/arm/arm.cc:3582
+#: config/arm/arm.cc:3585
 #, gcc-internal-format
 msgid "structure size boundary can only be set to 8, 32 or 64"
 msgstr ""
 
-#: config/arm/arm.cc:3584
+#: config/arm/arm.cc:3587
 #, gcc-internal-format
 msgid "structure size boundary can only be set to 8 or 32"
 msgstr ""
 
-#: config/arm/arm.cc:3609
+#: config/arm/arm.cc:3612
 #, fuzzy, gcc-internal-format
 msgid "RTP PIC is incompatible with %<-msingle-pic-base%>"
 msgstr "Muodostin %qs"
 
-#: config/arm/arm.cc:3621 config/arm/arm.cc:33142
+#: config/arm/arm.cc:3624 config/arm/arm.cc:33180
 #, fuzzy, gcc-internal-format
 msgid "FDPIC mode is not supported in Thumb-1 mode"
 msgstr "koodimalli %s ei tue PIC-tilaa"
 
-#: config/arm/arm.cc:3629
+#: config/arm/arm.cc:3632
 #, fuzzy, gcc-internal-format
 msgid "%<-mpic-register=%> is useless without %<-fpic%>"
 msgstr "PROCEDURE-lauseen kohdassa %C on oltava geneerisessä rajapinnassa"
 
-#: config/arm/arm.cc:3638
+#: config/arm/arm.cc:3641
 #, fuzzy, gcc-internal-format
 msgid "unable to use %qs for PIC register"
 msgstr "Tiedostoa ”%s” ei löytynyt."
 
-#: config/arm/arm.cc:3678 config/pru/pru.cc:612
+#: config/arm/arm.cc:3681 config/pru/pru.cc:612
 #, fuzzy, gcc-internal-format
 msgid "%<-freorder-blocks-and-partition%> not supported on this architecture"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: config/arm/arm.cc:3845
+#: config/arm/arm.cc:3848
 #, fuzzy, gcc-internal-format
 msgid "selected fp16 options are incompatible"
 msgstr "valitsimet -l ja -s eivät ole yhteensopivia"
 
-#: config/arm/arm.cc:3880
+#: config/arm/arm.cc:3883
 #, gcc-internal-format
-msgid "%'-mstack-protector-guard=tls%' needs a hardware TLS register"
+msgid "%<-mstack-protector-guard=tls%> needs a hardware TLS register"
 msgstr ""
 
-#: config/arm/arm.cc:3900
+#: config/arm/arm.cc:3903
 #, gcc-internal-format
 msgid "iwmmxt requires an AAPCS compatible ABI for proper operation"
 msgstr ""
 
-#: config/arm/arm.cc:3903
+#: config/arm/arm.cc:3906
 #, gcc-internal-format
 msgid "iwmmxt abi requires an iwmmxt capable cpu"
 msgstr ""
 
-#: config/arm/arm.cc:3911
+#: config/arm/arm.cc:3914
 #, fuzzy, gcc-internal-format
 msgid "target CPU does not support interworking"
 msgstr "AAPCS ei tue valitsinta -mcaller-super-interworking"
 
-#: config/arm/arm.cc:3924
+#: config/arm/arm.cc:3927
 #, fuzzy, gcc-internal-format
 msgid "AAPCS does not support %<-mcaller-super-interworking%>"
 msgstr "AAPCS ei tue valitsinta -mcaller-super-interworking"
 
-#: config/arm/arm.cc:3927
+#: config/arm/arm.cc:3930
 #, fuzzy, gcc-internal-format
 msgid "AAPCS does not support %<-mcallee-super-interworking%>"
 msgstr "AAPCS ei tue valitsinta -mcallee-super-interworking"
 
-#: config/arm/arm.cc:3932
+#: config/arm/arm.cc:3935
 #, gcc-internal-format
 msgid "%<__fp16%> and no ldrh"
 msgstr ""
 
-#: config/arm/arm.cc:3935
+#: config/arm/arm.cc:3938
 #, fuzzy, gcc-internal-format
 msgid "target CPU does not support ARMv8-M Security Extensions"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: config/arm/arm.cc:3940
+#: config/arm/arm.cc:3943
 #, gcc-internal-format
 msgid "ARMv8-M Security Extensions incompatible with selected FPU"
 msgstr ""
 
-#: config/arm/arm.cc:3952
+#: config/arm/arm.cc:3955
 #, gcc-internal-format
 msgid "%<-mfloat-abi=hard%>: selected architecture lacks an FPU"
 msgstr ""
 
-#: config/arm/arm.cc:3960
+#: config/arm/arm.cc:3963
 #, gcc-internal-format
 msgid "%<-mfloat-abi=hard%> and VFP"
 msgstr ""
 
-#: config/arm/arm.cc:6219
+#: config/arm/arm.cc:6222
 #, gcc-internal-format
 msgid "non-AAPCS derived PCS variant"
 msgstr ""
 
-#: config/arm/arm.cc:6221
+#: config/arm/arm.cc:6224
 #, fuzzy, gcc-internal-format
 msgid "variadic functions must use the base AAPCS variant"
 msgstr "kenttä %qE esitelty funktiona"
 
-#: config/arm/arm.cc:6241
+#: config/arm/arm.cc:6253
 #, gcc-internal-format
 msgid "PCS variant"
 msgstr ""
 
-#: config/arm/arm.cc:6493
+#: config/arm/arm.cc:6528
 #, gcc-internal-format
 msgid "Thumb-1 %<hard-float%> VFP ABI"
 msgstr ""
 
-#: config/arm/arm.cc:6582
+#: config/arm/arm.cc:6623
 #, fuzzy, gcc-internal-format
 msgid "argument of type %qT not permitted with %<-mgeneral-regs-only%>"
 msgstr "%qD:n paluuarvoa ei huomioida, esitelty attribuutilla warn_unused_result"
 
-#: config/arm/arm.cc:6966 config/arm/arm.cc:7187 config/arm/arm.cc:7220
-#: config/arm/arm.cc:28974
+#: config/arm/arm.cc:7007 config/arm/arm.cc:7228 config/arm/arm.cc:7261
+#: config/arm/arm.cc:29050
 #, gcc-internal-format
 msgid "parameter passing for argument of type %qT changed in GCC 7.1"
 msgstr ""
 
-#: config/arm/arm.cc:7358
+#: config/arm/arm.cc:7399
 #, gcc-internal-format
 msgid "FP registers might be clobbered despite %qE attribute: compile with %<-mgeneral-regs-only%>"
 msgstr ""
 
-#: config/arm/arm.cc:7482
+#: config/arm/arm.cc:7523
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute not available to functions with arguments passed on the stack"
 msgstr "%qE-attribuutti pätee vain funktioihin, ei %s"
 
-#: config/arm/arm.cc:7494
+#: config/arm/arm.cc:7535
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute not available to functions with variable number of arguments"
 msgstr "%qD:lla ei saa olla vaihtuvaa määrää argumentteja"
 
-#: config/arm/arm.cc:7503
+#: config/arm/arm.cc:7544
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute not available to functions that return value on the stack"
 msgstr "%qE-attribuutti pätee vain funktioihin, ei %s"
 
-#: config/arm/arm.cc:7525 config/arm/arm.cc:7577
+#: config/arm/arm.cc:7566 config/arm/arm.cc:7618
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute ignored without %<-mcmse%> option"
 msgstr "%qE-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: config/arm/arm.cc:7544
+#: config/arm/arm.cc:7585
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute has no effect on functions with static linkage"
 msgstr "%J%qE-attribuutti soveltuu vain funktioihin"
 
-#: config/arm/arm.cc:7593
+#: config/arm/arm.cc:7634
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute only applies to base type of a function pointer"
 msgstr "%qE-attribuutti pätee vain funktiotyyppeihin"
 
-#: config/arm/arm.cc:9573
+#: config/arm/arm.cc:9614
 #, gcc-internal-format
 msgid "accessing thread-local storage is not currently supported with %<-mpure-code%> or %<-mslow-flash-data%>"
 msgstr ""
 
-#: config/arm/arm.cc:13314 config/arm/arm.cc:13316
+#: config/arm/arm.cc:13383 config/arm/arm.cc:13385
 #, fuzzy, gcc-internal-format
 msgid "%s %wd out of range %wd - %wd"
 msgstr "operandinumero on arvoalueen ulkopuolella muotoilussa"
 
-#: config/arm/arm.cc:25594
+#: config/arm/arm.cc:25670
 #, gcc-internal-format
 msgid "unable to compute real location of stacked parameter"
 msgstr ""
 
-#: config/arm/arm.cc:26257
+#: config/arm/arm.cc:26333
 #, fuzzy, gcc-internal-format
 msgid "Unexpected thumb1 far jump"
 msgstr "%qs attribuuttia ei huomioida"
 
-#: config/arm/arm.cc:26516
+#: config/arm/arm.cc:26592
 #, gcc-internal-format
 msgid "no low registers available for popping high registers"
 msgstr ""
 
-#: config/arm/arm.cc:26768
+#: config/arm/arm.cc:26844
 #, fuzzy, gcc-internal-format
 msgid "Interrupt Service Routines cannot be coded in Thumb-1 mode"
 msgstr "keskeytyskäsittelijät eivät voi olla MIPS16-funktioita"
 
-#: config/arm/arm.cc:27014
+#: config/arm/arm.cc:27090
 #, gcc-internal-format
 msgid "%<-fstack-check=specific%> for Thumb-1"
 msgstr ""
 
-#: config/arm/arm.cc:33157
+#: config/arm/arm.cc:33195
 #, fuzzy, gcc-internal-format
 msgid "invalid fpu for target attribute or pragma %qs"
 msgstr "epäkelpo vektorityyppi attribuutille %qs"
@@ -37908,22 +37932,22 @@ msgstr "epäkelpo vektorityyppi attribuutille %qs"
 #. This doesn't really make sense until we support
 #. general dynamic selection of the architecture and all
 #. sub-features.
-#: config/arm/arm.cc:33165
+#: config/arm/arm.cc:33203
 #, gcc-internal-format
 msgid "auto fpu selection not currently permitted here"
 msgstr ""
 
-#: config/arm/arm.cc:33178
+#: config/arm/arm.cc:33216
 #, fuzzy, gcc-internal-format
 msgid "invalid architecture for target attribute or pragma %qs"
 msgstr "epäkelpo vektorityyppi attribuutille %qE"
 
-#: config/arm/arm.cc:33192
+#: config/arm/arm.cc:33230
 #, fuzzy, gcc-internal-format
 msgid "unknown target attribute or pragma %qs"
 msgstr "<tuntematon>"
 
-#: config/arm/arm.cc:34154
+#: config/arm/arm.cc:34192
 #, fuzzy, gcc-internal-format
 msgid "%<asm%> flags not supported in thumb1 mode"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
@@ -38235,7 +38259,7 @@ msgstr "%Javoimelle funktiolle %qD annettu attribuutti noinline"
 
 #: config/bfin/bfin.cc:4766
 #, gcc-internal-format
-msgid "cannott apply both longcall and shortcall attributes to the same function"
+msgid "cannot apply both %<longcall%> and %<shortcall%> attributes to the same function"
 msgstr ""
 
 #: config/bpf/bpf.cc:111
@@ -38289,7 +38313,8 @@ msgstr "ei hajottimia"
 msgid "indirect call in function, which are not supported by eBPF"
 msgstr "#pragma redefine_extname ei ole tuettu tällä kohteella"
 
-#: config/bpf/bpf.cc:1019 config/mips/mips.cc:17049 config/nios2/nios2.cc:3596
+#: config/bpf/bpf.cc:1019 config/loongarch/loongarch-builtins.cc:313
+#: config/mips/mips.cc:17141 config/nios2/nios2.cc:3596
 #: config/riscv/riscv-builtins.cc:222
 #, fuzzy, gcc-internal-format
 msgid "invalid argument to built-in function"
@@ -38581,7 +38606,7 @@ msgstr ""
 msgid "using %<vector_length (64)%>, ignoring runtime setting"
 msgstr ""
 
-#: config/gcn/gcn.cc:5064 config/nvptx/nvptx.cc:6094
+#: config/gcn/gcn.cc:5064 config/nvptx/nvptx.cc:6460
 #, gcc-internal-format
 msgid "using %<num_workers (%d)%>, ignoring %d"
 msgstr ""
@@ -38670,174 +38695,169 @@ msgstr "PROCEDURE-lauseen kohdassa %C on oltava geneerisessä rajapinnassa"
 msgid "%<-mn%> is not supported for linux targets"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: config/i386/host-cygwin.cc:57
-#, fuzzy, gcc-internal-format
-msgid "can%'t get position in PCH file: %m"
-msgstr "%s: ei voida avata PCH-tiedostoa: %m\n"
-
 #: config/i386/host-cygwin.cc:64
 #, fuzzy, gcc-internal-format
-msgid "can%'t extend PCH file: %m"
+msgid "cannot extend PCH file: %m"
 msgstr "%s: ei voitu avata PCH-tiedostoa: %m"
 
 #: config/i386/host-cygwin.cc:75
 #, fuzzy, gcc-internal-format
-msgid "can%'t set position in PCH file: %m"
+msgid "cannot set position in PCH file: %m"
 msgstr "%s: ei voida avata PCH-tiedostoa: %m\n"
 
-#: config/i386/i386-builtins.cc:2053
+#: config/i386/i386-builtins.cc:2058
 #, fuzzy, gcc-internal-format
 msgid "no dispatcher found for the versioning attributes"
 msgstr "%s: %s: täsmäävyyttä ei löydy"
 
-#: config/i386/i386-builtins.cc:2103
+#: config/i386/i386-builtins.cc:2108
 #, fuzzy, gcc-internal-format
 msgid "ISA %qs is not supported in %<target%> attribute, use %<arch=%> syntax"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: config/i386/i386-builtins.cc:2114
+#: config/i386/i386-builtins.cc:2119
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "no dispatcher found for the versioning attributes: %s"
 msgstr "%s: %s: täsmäävyyttä ei löydy"
 
-#: config/i386/i386-builtins.cc:2224
+#: config/i386/i386-builtins.cc:2229
 #, fuzzy, gcc-internal-format
 msgid "parameter to builtin must be a string constant or literal"
 msgstr "%<__builtin_prefetch%>-funktion kolmannen argumentin pitää olla vakio"
 
-#: config/i386/i386-builtins.cc:2248 config/i386/i386-builtins.cc:2298
+#: config/i386/i386-builtins.cc:2253 config/i386/i386-builtins.cc:2303
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "parameter to builtin not valid: %s"
 msgstr "SISÄÄNRAKENNETTU CD %s\n"
 
-#: config/i386/i386-expand.cc:9122
+#: config/i386/i386-expand.cc:9138
 #, fuzzy, gcc-internal-format
 msgid "interrupt service routine cannot be called directly"
 msgstr "keskeytyskäsittelijät eivät voi olla MIPS16-funktioita"
 
-#: config/i386/i386-expand.cc:9546 config/i386/i386-expand.cc:11042
+#: config/i386/i386-expand.cc:9562 config/i386/i386-expand.cc:11058
 #, fuzzy, gcc-internal-format
 msgid "the last argument must be a 2-bit immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/i386/i386-expand.cc:9934
+#: config/i386/i386-expand.cc:9950
 #, fuzzy, gcc-internal-format
 msgid "the fifth argument must be an 8-bit immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/i386/i386-expand.cc:10029
+#: config/i386/i386-expand.cc:10045
 #, fuzzy, gcc-internal-format
 msgid "the third argument must be an 8-bit immediate"
 msgstr "%<__builtin_prefetch%>-funktion kolmannen argumentin pitää olla vakio"
 
-#: config/i386/i386-expand.cc:10971
+#: config/i386/i386-expand.cc:10987
 #, fuzzy, gcc-internal-format
 msgid "the last argument must be an 1-bit immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/i386/i386-expand.cc:10986
+#: config/i386/i386-expand.cc:11002
 #, fuzzy, gcc-internal-format
 msgid "the last argument must be a 3-bit immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/i386/i386-expand.cc:11021
+#: config/i386/i386-expand.cc:11037
 #, fuzzy, gcc-internal-format
 msgid "the last argument must be a 4-bit immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/i386/i386-expand.cc:11061
+#: config/i386/i386-expand.cc:11077
 #, fuzzy, gcc-internal-format
 msgid "the last argument must be a 1-bit immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/i386/i386-expand.cc:11077
+#: config/i386/i386-expand.cc:11093
 #, fuzzy, gcc-internal-format
 msgid "the last argument must be a 5-bit immediate"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/i386/i386-expand.cc:11087
+#: config/i386/i386-expand.cc:11103
 #, fuzzy, gcc-internal-format
 msgid "the next to last argument must be an 8-bit immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/i386/i386-expand.cc:11092
+#: config/i386/i386-expand.cc:11108
 #, fuzzy, gcc-internal-format
 msgid "the last argument must be an 8-bit immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/i386/i386-expand.cc:11229
+#: config/i386/i386-expand.cc:11245
 #, fuzzy, gcc-internal-format
 msgid "the third argument must be comparison constant"
 msgstr "%<__builtin_prefetch%>-funktion kolmannen argumentin pitää olla vakio"
 
-#: config/i386/i386-expand.cc:11234
+#: config/i386/i386-expand.cc:11250
 #, fuzzy, gcc-internal-format
 msgid "incorrect comparison mode"
 msgstr "virheellinen salasana"
 
-#: config/i386/i386-expand.cc:11240 config/i386/i386-expand.cc:11598
+#: config/i386/i386-expand.cc:11256 config/i386/i386-expand.cc:11614
 #, fuzzy, gcc-internal-format
 msgid "incorrect rounding operand"
 msgstr "virheellinen salasana"
 
-#: config/i386/i386-expand.cc:11578
+#: config/i386/i386-expand.cc:11594
 #, fuzzy, gcc-internal-format
 msgid "the immediate argument must be a 4-bit immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/i386/i386-expand.cc:11586
+#: config/i386/i386-expand.cc:11602
 #, fuzzy, gcc-internal-format
 msgid "the immediate argument must be a 5-bit immediate"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/i386/i386-expand.cc:11589
+#: config/i386/i386-expand.cc:11605
 #, fuzzy, gcc-internal-format
 msgid "the immediate argument must be an 8-bit immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/i386/i386-expand.cc:12107 config/rs6000/rs6000-builtin.cc:2387
+#: config/i386/i386-expand.cc:12123 config/rs6000/rs6000-builtin.cc:2393
 #, fuzzy, gcc-internal-format
 msgid "selector must be an integer constant in the range [0, %wi]"
 msgstr "case-nimiö ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: config/i386/i386-expand.cc:12321
+#: config/i386/i386-expand.cc:12354
 #, fuzzy, gcc-internal-format
 msgid "%qE needs unknown isa option"
 msgstr "<%s> ja <%s> ovat virheellisiä nimiä välille"
 
-#: config/i386/i386-expand.cc:12325
+#: config/i386/i386-expand.cc:12358
 #, fuzzy, gcc-internal-format
 msgid "%qE needs isa option %s"
 msgstr "<%s> ja <%s> ovat virheellisiä nimiä välille"
 
-#: config/i386/i386-expand.cc:13269
+#: config/i386/i386-expand.cc:13302
 #, fuzzy, gcc-internal-format
 msgid "the last argument must be a 32-bit immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/i386/i386-expand.cc:13302
+#: config/i386/i386-expand.cc:13335
 #, fuzzy, gcc-internal-format
 msgid "last argument must be an immediate"
 msgstr "argumentin <%s>:lle on oltava yksittäinen merkki"
 
-#: config/i386/i386-expand.cc:14063 config/i386/i386-expand.cc:14275
+#: config/i386/i386-expand.cc:14099 config/i386/i386-expand.cc:14311
 #, fuzzy, gcc-internal-format
 msgid "the last argument must be scale 1, 2, 4, 8"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/i386/i386-expand.cc:14328
+#: config/i386/i386-expand.cc:14364
 #, fuzzy, gcc-internal-format
 msgid "the forth argument must be scale 1, 2, 4, 8"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: config/i386/i386-expand.cc:14334
+#: config/i386/i386-expand.cc:14370
 #, fuzzy, gcc-internal-format
 msgid "incorrect hint operand"
 msgstr ""
 "Vihje: %s\n"
 "\n"
 
-#: config/i386/i386-expand.cc:14353
+#: config/i386/i386-expand.cc:14389
 #, fuzzy, gcc-internal-format
 msgid "the argument to %<xabort%> intrinsic must be an 8-bit immediate"
 msgstr "puhdistusargumentti ei ole tunniste"
@@ -38852,7 +38872,7 @@ msgstr ""
 msgid "virtual function multiversioning not supported"
 msgstr "Varoita ylikuormitetuista virtuaalifunktioiden nimistä"
 
-#: config/i386/i386-features.cc:2822 config/rs6000/rs6000.cc:24921
+#: config/i386/i386-features.cc:2822 config/rs6000/rs6000.cc:24972
 #, fuzzy, gcc-internal-format
 msgid "multiversioning needs %<ifunc%> which is not supported on this target"
 msgstr "#pragma redefine_extname ei ole tuettu tällä kohteella"
@@ -39026,12 +39046,12 @@ msgstr "kohdemuoto ei tue äärettömyyttä"
 
 #: config/i386/i386-options.cc:2215
 #, fuzzy, gcc-internal-format
-msgid "bad value (%qs) for %<-march=%> switch"
+msgid "bad value %qs for %<-march=%> switch"
 msgstr "virheellinen aikakatkaisuarvo: %s"
 
 #: config/i386/i386-options.cc:2216
 #, fuzzy, gcc-internal-format
-msgid "bad value (%qs) for %<target(\"arch=\")%> attribute"
+msgid "bad value %qs for %<target(\"arch=\")%> attribute"
 msgstr "virheellinen aikakatkaisuarvo: %s"
 
 #: config/i386/i386-options.cc:2238
@@ -39056,12 +39076,12 @@ msgstr "Kelvolliset argumentit:"
 
 #: config/i386/i386-options.cc:2295
 #, fuzzy, gcc-internal-format
-msgid "bad value (%qs) for %<-mtune=%> switch"
+msgid "bad value %qs for %<-mtune=%> switch"
 msgstr "virheellinen aikakatkaisuarvo: %s"
 
 #: config/i386/i386-options.cc:2296
 #, fuzzy, gcc-internal-format
-msgid "bad value (%qs) for %<target(\"tune=\")%> attribute"
+msgid "bad value %qs for %<target(\"tune=\")%> attribute"
 msgstr "virheellinen aikakatkaisuarvo: %s"
 
 #: config/i386/i386-options.cc:2317
@@ -39324,7 +39344,7 @@ msgstr "attribuutit fastcall ja cdecl eivät ole yhteensopivia"
 msgid "%qE attribute is used for non-class method"
 msgstr "%qE-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: config/i386/i386-options.cc:3549 config/rs6000/rs6000.cc:20263
+#: config/i386/i386-options.cc:3549 config/rs6000/rs6000.cc:20314
 #, fuzzy, gcc-internal-format
 msgid "%qE incompatible attribute ignored"
 msgstr "%qE-attribuuttia ei huomioida"
@@ -39396,192 +39416,202 @@ msgstr "ISO C ei tue saturoituvia tyyppejä"
 msgid "%<ms_hook_prologue%> attribute is not compatible with nested function"
 msgstr "ISO C kieltää sisäkkäiset funktiot"
 
-#: config/i386/i386.cc:1900
+#: config/i386/i386.cc:1904
 #, fuzzy, gcc-internal-format
 msgid "AVX512F vector argument without AVX512F enabled changes the ABI"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: config/i386/i386.cc:1906
+#: config/i386/i386.cc:1910
 #, fuzzy, gcc-internal-format
 msgid "AVX512F vector return without AVX512F enabled changes the ABI"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: config/i386/i386.cc:1920
+#: config/i386/i386.cc:1924
 #, fuzzy, gcc-internal-format
 msgid "AVX vector argument without AVX enabled changes the ABI"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: config/i386/i386.cc:1926
+#: config/i386/i386.cc:1930
 #, fuzzy, gcc-internal-format
 msgid "AVX vector return without AVX enabled changes the ABI"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: config/i386/i386.cc:1942
+#: config/i386/i386.cc:1946
 #, fuzzy, gcc-internal-format
 msgid "SSE vector argument without SSE enabled changes the ABI"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: config/i386/i386.cc:1948
+#: config/i386/i386.cc:1952
 #, fuzzy, gcc-internal-format
 msgid "SSE vector return without SSE enabled changes the ABI"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: config/i386/i386.cc:1964
+#: config/i386/i386.cc:1968
 #, fuzzy, gcc-internal-format
 msgid "MMX vector argument without MMX enabled changes the ABI"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: config/i386/i386.cc:1970
+#: config/i386/i386.cc:1974
 #, fuzzy, gcc-internal-format
 msgid "MMX vector return without MMX enabled changes the ABI"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: config/i386/i386.cc:2168
+#: config/i386/i386.cc:2172
 #, gcc-internal-format
 msgid "the ABI of passing struct with a flexible array member has changed in GCC 4.4"
 msgstr ""
 
-#: config/i386/i386.cc:2289
+#: config/i386/i386.cc:2293
 #, gcc-internal-format
 msgid "the ABI of passing union with %<long double%> has changed in GCC 4.4"
 msgstr ""
 
-#: config/i386/i386.cc:2422
+#: config/i386/i386.cc:2426
 #, gcc-internal-format
 msgid "the ABI of passing structure with %<complex float%> member has changed in GCC 4.4"
 msgstr ""
 
-#: config/i386/i386.cc:2538
+#: config/i386/i386.cc:2542
 msgid "the ABI of passing C structures with zero-width bit-fields has changed in GCC %{12.1%}"
 msgstr ""
 
-#: config/i386/i386.cc:2633
+#: config/i386/i386.cc:2637
 #, fuzzy, gcc-internal-format
 msgid "SSE register return with SSE disabled"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: config/i386/i386.cc:2639
+#: config/i386/i386.cc:2643
 #, fuzzy, gcc-internal-format
 msgid "SSE register argument with SSE disabled"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: config/i386/i386.cc:2659
+#: config/i386/i386.cc:2663
 #, fuzzy, gcc-internal-format
 msgid "x87 register return with x87 disabled"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: config/i386/i386.cc:2982 config/i386/i386.cc:3223 config/i386/i386.cc:4029
+#: config/i386/i386.cc:2986 config/i386/i386.cc:3227 config/i386/i386.cc:4042
 #, gcc-internal-format
 msgid "calling %qD with SSE calling convention without SSE/SSE2 enabled"
 msgstr ""
 
-#: config/i386/i386.cc:2984 config/i386/i386.cc:3225 config/i386/i386.cc:4031
+#: config/i386/i386.cc:2988 config/i386/i386.cc:3229 config/i386/i386.cc:4044
 #, gcc-internal-format
 msgid "this is a GCC bug that can be worked around by adding attribute used to function called"
 msgstr ""
 
-#: config/i386/i386.cc:3626
+#: config/i386/i386.cc:3630
 #, gcc-internal-format, gfc-internal-format
 msgid "the ABI for passing parameters with %d-byte alignment has changed in GCC 4.6"
 msgstr ""
 
-#: config/i386/i386.cc:6519
+#: config/i386/i386.cc:6532
 #, fuzzy, gcc-internal-format
 msgid "%<-mcall-ms2sysv-xlogues%> is not compatible with %s"
 msgstr "”%s”-liitännäinen on yhteensopiva."
 
-#: config/i386/i386.cc:8423
+#: config/i386/i386.cc:8436
 #, fuzzy, gcc-internal-format
 msgid "%<ms_hook_prologue%> attribute is not compatible with %<-mfentry%> for 32-bit"
 msgstr "ISO C kieltää sisäkkäiset funktiot"
 
-#: config/i386/i386.cc:8513
+#: config/i386/i386.cc:8526
 #, gcc-internal-format
 msgid "Dynamic Realign Argument Pointer (DRAP) not supported in interrupt service routine.  This may be worked around by avoiding functions with aggregate return."
 msgstr ""
 
-#: config/i386/i386.cc:9833
+#: config/i386/i386.cc:9458
+#, fuzzy, gcc-internal-format
+msgid "Stack realignment not supported with %<__builtin_eh_return%>"
+msgstr "Rinnakkaiset työt (-j) eivät ole tuettuja tällä alustalla."
+
+#: config/i386/i386.cc:9463
+#, fuzzy, gcc-internal-format
+msgid "regparm nested function not supported with %<__builtin_eh_return%>"
+msgstr "ISO C kieltää sisäkkäiset funktiot"
+
+#: config/i386/i386.cc:9849
 #, fuzzy, gcc-internal-format
 msgid "%<-fsplit-stack%> does not support fastcall with nested function"
 msgstr "ISO C kieltää sisäkkäiset funktiot"
 
-#: config/i386/i386.cc:9853
+#: config/i386/i386.cc:9869
 #, fuzzy, gcc-internal-format
 msgid "%<-fsplit-stack%> does not support 2 register parameters for a nested function"
 msgstr "ISO C kieltää sisäkkäiset funktiot"
 
 #. FIXME: We could make this work by pushing a register
 #. around the addition and comparison.
-#: config/i386/i386.cc:9864
+#: config/i386/i386.cc:9880
 #, fuzzy, gcc-internal-format
 msgid "%<-fsplit-stack%> does not support 3 register parameters"
 msgstr "ISO C90 ei tue joustavia taulukon jäseniä"
 
-#: config/i386/i386.cc:12897
+#: config/i386/i386.cc:12913
 #, fuzzy, gcc-internal-format
 msgid "%<V%> modifier on non-integer register"
 msgstr "fr30_print_operand: tuntematon koodi"
 
-#: config/i386/i386.cc:12908 config/i386/i386.cc:12922
+#: config/i386/i386.cc:12924 config/i386/i386.cc:12938
 #, fuzzy, gcc-internal-format
 msgid "unsupported size for integer register"
 msgstr "fr30_print_operand: tuntematon koodi"
 
-#: config/i386/i386.cc:12954
+#: config/i386/i386.cc:12970
 #, gcc-internal-format
 msgid "extended registers have no high halves"
 msgstr ""
 
-#: config/i386/i386.cc:12969
+#: config/i386/i386.cc:12985
 #, fuzzy, gcc-internal-format
 msgid "unsupported operand size for extended register"
 msgstr "fr30_print_operand: tuntematon koodi"
 
-#: config/i386/i386.cc:13163
+#: config/i386/i386.cc:13179
 #, fuzzy, gcc-internal-format
 msgid "non-integer operand used with operand code %<z%>"
 msgstr "epäkelvot operandit binääriselle %s-operaatiolle"
 
-#: config/i386/i386.cc:17266
+#: config/i386/i386.cc:17210
 #, fuzzy, gcc-internal-format
 msgid "empty class %qT parameter passing ABI changes in %<-fabi-version=12%> (GCC 8)"
 msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 
-#: config/i386/i386.cc:21478
+#: config/i386/i386.cc:21432
 msgid "the alignment of %<_Atomic %T%> fields changed in %{GCC 11.1%}"
 msgstr ""
 
-#: config/i386/i386.cc:21574
+#: config/i386/i386.cc:21528
 #, fuzzy, gcc-internal-format
 msgid "profiling %<-mcmodel=large%> with PIC is not supported"
 msgstr "valitsin -mmultiple ei ole tuettu little-endian-järjestelmissä"
 
-#: config/i386/i386.cc:23273
+#: config/i386/i386.cc:23276
 #, fuzzy, gcc-internal-format
 msgid "unknown architecture specific memory model"
 msgstr "Tuntematon arkkitehtuuri ”%s”"
 
-#: config/i386/i386.cc:23280
+#: config/i386/i386.cc:23283
 #, gcc-internal-format
 msgid "%<HLE_ACQUIRE%> not used with %<ACQUIRE%> or stronger memory model"
 msgstr ""
 
-#: config/i386/i386.cc:23287
+#: config/i386/i386.cc:23290
 #, gcc-internal-format
 msgid "%<HLE_RELEASE%> not used with %<RELEASE%> or stronger memory model"
 msgstr ""
 
-#: config/i386/i386.cc:23333
+#: config/i386/i386.cc:23336
 #, fuzzy, gcc-internal-format
 msgid "unsupported return type %qT for simd"
 msgstr "%<operator delete%>:n on palautettava tyyppi %qT"
 
-#: config/i386/i386.cc:23363
+#: config/i386/i386.cc:23366
 #, fuzzy, gcc-internal-format
 msgid "unsupported argument type %qT for simd"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: config/i386/i386.cc:23923
+#: config/i386/i386.cc:23909
 #, fuzzy, gcc-internal-format
 msgid "%<-fexcess-precision=16%> is not compatible with %<-mfpmath=387%>"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
@@ -39671,6 +39701,88 @@ msgstr "Tuntematon tiheys: ”%c”"
 msgid "%<PRINT_OPERAND%> null pointer"
 msgstr "PRINT_OPERAND nollaosoitin"
 
+#: config/loongarch/loongarch-cpu.cc:111
+#, fuzzy, gcc-internal-format
+msgid "unknown base architecture %<0x%x%>, %qs failed"
+msgstr "Funktio %qs:"
+
+#: config/loongarch/loongarch-cpu.cc:138
+#, gcc-internal-format
+msgid "unknown FPU type %<0x%x%>, %qs failed"
+msgstr ""
+
+#: config/loongarch/loongarch-cpu.cc:189
+#, gcc-internal-format
+msgid "unknown processor ID %<0x%x%>, some tuning parameters will fall back to default"
+msgstr ""
+
+#: config/loongarch/loongarch-opts.cc:196
+#, gcc-internal-format
+msgid "%<-m%s%> overrides %<-m%s=%s%>, adjusting ABI to %qs"
+msgstr ""
+
+#: config/loongarch/loongarch-opts.cc:211
+#, gcc-internal-format
+msgid "ABI changed (%qs to %qs) while multilib is disabled"
+msgstr ""
+
+#: config/loongarch/loongarch-opts.cc:233
+#: config/loongarch/loongarch-opts.cc:238
+#, fuzzy, gcc-internal-format
+msgid "%qs does not work on a cross compiler"
+msgstr "%qT ei ole luokkatyyppi"
+
+#: config/loongarch/loongarch-opts.cc:278
+#, fuzzy, gcc-internal-format
+msgid "your native CPU architecture (%qs) does not support %qs ABI, falling back to %<-m%s=%s%>"
+msgstr "kohdemuoto ei tue äärettömyyttä"
+
+#: config/loongarch/loongarch-opts.cc:283
+#, fuzzy, gcc-internal-format
+msgid "default CPU architecture (%qs) does not support %qs ABI, falling back to %<-m%s=%s%>"
+msgstr "kohdemuoto ei tue äärettömyyttä"
+
+#: config/loongarch/loongarch-opts.cc:314
+#, gcc-internal-format
+msgid "unable to implement ABI %qs with instruction set %qs"
+msgstr ""
+
+#: config/loongarch/loongarch-opts.cc:336
+#, gcc-internal-format
+msgid "ABI %qs cannot be implemented due to limited instruction set %qs, falling back to %qs"
+msgstr ""
+
+#: config/loongarch/loongarch-opts.cc:347
+#, gcc-internal-format
+msgid "instruction set %qs cannot implement default ABI %qs, falling back to %qs"
+msgstr ""
+
+#: config/loongarch/loongarch-opts.cc:352
+#, gcc-internal-format
+msgid "no multilib-enabled ABI (%qs) can be implemented with instruction set %qs, falling back to %qs"
+msgstr ""
+
+#: config/loongarch/loongarch-opts.cc:368
+#, gcc-internal-format
+msgid "ABI %qs is not enabled at configure-time, the linker might report an error"
+msgstr ""
+
+#: config/loongarch/loongarch-opts.cc:371
+#, gcc-internal-format, gfc-internal-format
+msgid "ABI with startfiles: %s"
+msgstr ""
+
+#: config/loongarch/loongarch.cc:3458
+#, gcc-internal-format
+msgid "Normal symbol loading not implemented in extreme mode."
+msgstr ""
+
+#: config/loongarch/loongarch.cc:5507
+#, fuzzy, gcc-internal-format
+#| msgid "code model %s does not support PIC mode"
+msgid "code model %qs and %qs not support %s mode"
+msgstr "koodimalli %s ei tue PIC-tilaa"
+
 #: config/m32c/m32c-pragma.cc:54
 #, fuzzy, gcc-internal-format
 #| msgid "junk at end of #pragma GCC memregs [0..16]"
@@ -39851,125 +39963,133 @@ msgstr ""
 msgid "argument to %qE attribute is not intstack"
 msgstr "%qE-attribuutti tarvitsee merkkijonovakioargumentin"
 
-#: config/mips/mips.cc:7751
+#: config/mips/mips.cc:6089
+msgid "the ABI for passing a value containing zero-width fields before an adjacent 64-bit floating-point field was changed in GCC %{12.1%}"
+msgstr ""
+
+#: config/mips/mips.cc:6490
+msgid "the ABI for returning a value containing zero-width bit-fields but otherwise an aggregate with only one or two floating-point fields was changed in GCC %{12.1%}"
+msgstr ""
+
+#: config/mips/mips.cc:7831
 #, fuzzy, gcc-internal-format
 msgid "cannot handle inconsistent calls to %qs"
 msgstr "funktiota %<main%> ei voi määrittää avoimeksi"
 
-#: config/mips/mips.cc:10995
+#: config/mips/mips.cc:11075
 #, gcc-internal-format
 msgid "the %<interrupt%> attribute requires a MIPS32r2 processor or greater"
 msgstr ""
 
-#: config/mips/mips.cc:10997
+#: config/mips/mips.cc:11077
 #, gcc-internal-format
 msgid "interrupt handlers cannot be MIPS16 functions"
 msgstr "keskeytyskäsittelijät eivät voi olla MIPS16-funktioita"
 
-#: config/mips/mips.cc:11987
+#: config/mips/mips.cc:12067
 #, gcc-internal-format
 msgid "%<-fstack-check=specific%> not implemented for MIPS16"
 msgstr ""
 
-#: config/mips/mips.cc:17043
+#: config/mips/mips.cc:17135
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "argument %d to the built-in must be a constant in range %d to %d"
 msgstr "%<__builtin_expect%>-funktion toisen argumentin pitää olla vakio"
 
-#: config/mips/mips.cc:17163
+#: config/mips/mips.cc:17255
 #, fuzzy, gcc-internal-format
 msgid "failed to expand built-in function"
 msgstr "virheellinen sisäinen makro ”%s”"
 
-#: config/mips/mips.cc:17294
+#: config/mips/mips.cc:17386
 #, fuzzy, gcc-internal-format
 msgid "built-in function %qE not supported for MIPS16"
 msgstr "weakref ei ole tuettu tässä konfiguraatiossa"
 
-#: config/mips/mips.cc:17902
+#: config/mips/mips.cc:17994
 #, fuzzy, gcc-internal-format
 msgid "%qs does not support MIPS16 code"
 msgstr "koodimalli %s ei tue PIC-tilaa"
 
-#: config/mips/mips.cc:19709
+#: config/mips/mips.cc:19801
 #, gcc-internal-format
 msgid "MIPS16 PIC for ABIs other than o32 and o64"
 msgstr ""
 
-#: config/mips/mips.cc:19712
+#: config/mips/mips.cc:19804
 #, fuzzy, gcc-internal-format
 msgid "MIPS16 %<-mxgot%> code"
 msgstr "Tuota MIPS16-koodia"
 
-#: config/mips/mips.cc:19715
+#: config/mips/mips.cc:19807
 #, gcc-internal-format
 msgid "%<hard-float%> MIPS16 code for ABIs other than o32 and o64"
 msgstr ""
 
-#: config/mips/mips.cc:19718
+#: config/mips/mips.cc:19810
 #, fuzzy, gcc-internal-format
 msgid "MSA MIPS16 code"
 msgstr "Tuota MIPS16-koodia"
 
-#: config/mips/mips.cc:19896 config/mips/mips.cc:19901
-#: config/mips/mips.cc:19983 config/mips/mips.cc:19985
-#: config/mips/mips.cc:20015 config/mips/mips.cc:20025
-#: config/mips/mips.cc:20131 config/mips/mips.cc:20161
+#: config/mips/mips.cc:19988 config/mips/mips.cc:19993
+#: config/mips/mips.cc:20082 config/mips/mips.cc:20084
+#: config/mips/mips.cc:20114 config/mips/mips.cc:20124
+#: config/mips/mips.cc:20230 config/mips/mips.cc:20260
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "unsupported combination: %s"
 msgstr "yritettiin käyttää ominaisuutta, jolle ei ole tukea: ”%s”"
 
-#: config/mips/mips.cc:19935
+#: config/mips/mips.cc:20027
 #, gcc-internal-format
 msgid "%<-%s%> conflicts with the other architecture options, which specify a %s processor"
 msgstr ""
 
-#: config/mips/mips.cc:19945
+#: config/mips/mips.cc:20037
 #, fuzzy, gcc-internal-format
 msgid "%<-march=%s%> is not compatible with the selected ABI"
 msgstr "%s %qs"
 
-#: config/mips/mips.cc:19960
+#: config/mips/mips.cc:20052
 #, fuzzy, gcc-internal-format
 msgid "%<-mgp64%> used with a 32-bit processor"
 msgstr "Käytä 32-bittistä ABIa"
 
-#: config/mips/mips.cc:19962
+#: config/mips/mips.cc:20054
 #, fuzzy, gcc-internal-format
 msgid "%<-mgp32%> used with a 64-bit ABI"
 msgstr "64-bittinen ABI ei ole tuettu ESA/390-tilassa"
 
-#: config/mips/mips.cc:19964
+#: config/mips/mips.cc:20056
 #, fuzzy, gcc-internal-format
 msgid "%<-mgp64%> used with a 32-bit ABI"
 msgstr "Käytä 32-bittistä ABIa"
 
-#: config/mips/mips.cc:19980
+#: config/mips/mips.cc:20079
 #, fuzzy, gcc-internal-format
 msgid "the %qs architecture does not support %<-mfp32%>"
 msgstr "%s ei tue pituusmäärettä %qs %s"
 
-#: config/mips/mips.cc:19989
+#: config/mips/mips.cc:20088
 #, fuzzy, gcc-internal-format
 msgid "%<-mgp32%> and %<-mfp64%> can only be combined if the target supports the mfhc1 and mthc1 instructions"
 msgstr "Valitsinta --acls voi käyttää vain POSIX-arkistoille"
 
-#: config/mips/mips.cc:19992
+#: config/mips/mips.cc:20091
 #, fuzzy, gcc-internal-format
 msgid "%<-mgp32%> and %<-mfp64%> can only be combined when using the o32 ABI"
 msgstr "Valitsinta --acls voi käyttää vain POSIX-arkistoille"
 
-#: config/mips/mips.cc:20013
+#: config/mips/mips.cc:20112
 #, fuzzy, gcc-internal-format
 msgid "%<-mfpxx%> can only be used with the o32 ABI"
 msgstr "Valitsinta --acls voi käyttää vain POSIX-arkistoille"
 
-#: config/mips/mips.cc:20017
+#: config/mips/mips.cc:20116
 #, fuzzy, gcc-internal-format
 msgid "%<-march=%s%> requires %<-mfp32%>"
 msgstr "valitsin -mcpu=%s on ristiriidassa valitsimen -march=%s kanssa"
 
-#: config/mips/mips.cc:20019
+#: config/mips/mips.cc:20118
 #, fuzzy, gcc-internal-format
 msgid "%<-mfpxx%> requires %<-mlra%>"
 msgstr "-m64 vaatii PowerPC64-suorittimen"
@@ -39979,117 +40099,117 @@ msgstr "-m64 vaatii PowerPC64-suorittimen"
 #. effort to support the combination of 32-bit GOT entries
 #. and 64-bit pointers, so we treat the abicalls case as
 #. an error.
-#: config/mips/mips.cc:20044
+#: config/mips/mips.cc:20143
 #, fuzzy, gcc-internal-format
 msgid "the combination of %qs and %qs is incompatible with %qs"
 msgstr "Jäsenfunktio %qs"
 
-#: config/mips/mips.cc:20097
+#: config/mips/mips.cc:20196
 #, fuzzy, gcc-internal-format
 msgid "the %qs architecture does not support branch-likely instructions"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: config/mips/mips.cc:20112
+#: config/mips/mips.cc:20211
 #, fuzzy, gcc-internal-format
 msgid "the %qs architecture does not support madd or msub instructions"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: config/mips/mips.cc:20126
+#: config/mips/mips.cc:20225
 #, fuzzy, gcc-internal-format
 msgid "the %qs architecture does not support odd single-precision registers"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: config/mips/mips.cc:20139 config/mips/mips.cc:20145
+#: config/mips/mips.cc:20238 config/mips/mips.cc:20244
 #, fuzzy, gcc-internal-format
 msgid "unsupported combination: %qs%s %s"
 msgstr "yritettiin käyttää ominaisuutta, jolle ei ole tukea: ”%s”"
 
-#: config/mips/mips.cc:20154
+#: config/mips/mips.cc:20253
 #, fuzzy, gcc-internal-format
 msgid "unsupported combination: %qs %s"
 msgstr "yritettiin käyttää ominaisuutta, jolle ei ole tukea: ”%s”"
 
-#: config/mips/mips.cc:20169
+#: config/mips/mips.cc:20268
 #, fuzzy, gcc-internal-format
 msgid "cannot generate position-independent code for %qs"
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: config/mips/mips.cc:20172
+#: config/mips/mips.cc:20271
 #, fuzzy, gcc-internal-format
 msgid "position-independent code requires %qs"
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: config/mips/mips.cc:20205
+#: config/mips/mips.cc:20304
 #, gcc-internal-format
 msgid "%<-mno-gpopt%> needs %<-mexplicit-relocs%>"
 msgstr ""
 
-#: config/mips/mips.cc:20213 config/mips/mips.cc:20216
+#: config/mips/mips.cc:20312 config/mips/mips.cc:20315
 #, fuzzy, gcc-internal-format
 msgid "cannot use small-data accesses for %qs"
 msgstr "bittikentän %qD osoitetta ei voi ottaa"
 
-#: config/mips/mips.cc:20231
+#: config/mips/mips.cc:20330
 #, fuzzy, gcc-internal-format
 msgid "the %qs architecture does not support %<-m%s=legacy%>"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: config/mips/mips.cc:20238
+#: config/mips/mips.cc:20337
 #, fuzzy, gcc-internal-format
 msgid "the %qs architecture does not support %<-m%s=2008%>"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: config/mips/mips.cc:20256
+#: config/mips/mips.cc:20355
 #, fuzzy, gcc-internal-format
 msgid "%<-mips3d%> requires %<-mpaired-single%>"
 msgstr "-m64 vaatii PowerPC64-suorittimen"
 
-#: config/mips/mips.cc:20266
+#: config/mips/mips.cc:20365
 #, fuzzy, gcc-internal-format
 msgid "%qs must be used with %qs"
 msgstr "Muodostin %qs"
 
-#: config/mips/mips.cc:20276
+#: config/mips/mips.cc:20375
 #, fuzzy, gcc-internal-format
 msgid "%<-mmsa%> must be used with %<-mfp64%> and %<-mhard-float%>"
 msgstr "-Wformat-y2k jätetty huomiotta ilman valitsinta -Wformat"
 
-#: config/mips/mips.cc:20283
+#: config/mips/mips.cc:20382
 #, fuzzy, gcc-internal-format
 msgid "the %qs architecture does not support paired-single instructions"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: config/mips/mips.cc:20292
+#: config/mips/mips.cc:20391
 #, fuzzy, gcc-internal-format
 msgid "%qs requires a target that provides the %qs instruction"
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/mips/mips.cc:20303
+#: config/mips/mips.cc:20402
 #, fuzzy, gcc-internal-format
 msgid "the %qs architecture does not support DSP instructions"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: config/mips/mips.cc:20313
+#: config/mips/mips.cc:20412
 #, fuzzy, gcc-internal-format
 msgid "%<-mloongson-mmi%> must be used with %<-mhard-float%>"
 msgstr "-Wformat-y2k jätetty huomiotta ilman valitsinta -Wformat"
 
-#: config/mips/mips.cc:20323
+#: config/mips/mips.cc:20422
 #, fuzzy, gcc-internal-format
 msgid "%<-mloongson-ext2%> must be used with %<-mloongson-ext%>"
 msgstr "-Wformat-y2k jätetty huomiotta ilman valitsinta -Wformat"
 
-#: config/mips/mips.cc:20429
+#: config/mips/mips.cc:20528
 #, fuzzy, gcc-internal-format
 msgid "%qs requires branch-likely instructions"
 msgstr "Käytä AltiVec-käskyjä"
 
-#: config/mips/mips.cc:20433
+#: config/mips/mips.cc:20532
 #, fuzzy, gcc-internal-format
 msgid "the %qs architecture does not support the synci instruction"
 msgstr "kohdemuoto ei tue äärettömyyttä"
 
-#: config/mips/mips.cc:21269
+#: config/mips/mips.cc:21368
 #, fuzzy, gcc-internal-format
 msgid "mips16 function profiling"
 msgstr "Ota käyttöön funktioprofilointi"
@@ -40375,9 +40495,9 @@ msgstr "%qE-attribuutti on ristiriidassa attribuutin %s kanssa"
 msgid "argument to interrupt attribute is unsupported for weak functions"
 msgstr "%Javoimelle funktiolle %qD annettu attribuutti noinline"
 
-#: config/msp430/msp430.cc:2747
+#: config/msp430/msp430.cc:2747 config/pru/pru.cc:2936
 #, fuzzy, gcc-internal-format
-msgid "%<__delay_cycles()%> only takes constant arguments"
+msgid "%<__delay_cycles%> only takes constant arguments"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
 #: config/msp430/msp430.cc:2757 config/pru/pru.cc:2945
@@ -40734,66 +40854,76 @@ msgstr ""
 msgid "cannot open intermediate ptx file"
 msgstr "%s: ei voida avata COFF-tiedostona"
 
-#: config/nvptx/nvptx.cc:206
+#: config/nvptx/nvptx.cc:207
 #, fuzzy, gcc-internal-format
 msgid "option %s is not supported together with %<-fopenacc%>"
 msgstr "#pragma redefine_extname ei ole tuettu tällä kohteella"
 
-#: config/nvptx/nvptx.cc:307
-#, gcc-internal-format, gfc-internal-format
-msgid "PTX version (-mptx) needs to be at least %s to support selected -misa (sm_%s)"
+#: config/nvptx/nvptx.cc:326
+#, gcc-internal-format
+msgid "PTX version (%<-mptx%>) needs to be at least %s to support selected %<-misa%> (sm_%s)"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:340
+#: config/nvptx/nvptx.cc:359
 #, fuzzy, gcc-internal-format
 msgid "not generating patch area, nops not supported"
 msgstr "%J%qD:n esittely varjostaa parametria"
 
-#: config/nvptx/nvptx.cc:439
+#: config/nvptx/nvptx.cc:458
 #, gcc-internal-format
 msgid "static initialization of variable %q+D in %<.shared%> memory is not supported"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:2279
+#: config/nvptx/nvptx.cc:2330
 #, gcc-internal-format
 msgid "cannot emit unaligned pointers in ptx assembly"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:2504
+#: config/nvptx/nvptx.cc:2555
 #, gcc-internal-format
 msgid "PTX does not support weak declarations (only weak definitions)"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:5425
+#: config/nvptx/nvptx.cc:5790
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute requires a void return type"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: config/nvptx/nvptx.cc:5448
+#: config/nvptx/nvptx.cc:5813
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute not allowed with auto storage class"
 msgstr "%Jlohkoattribuutti ei ole sallittu %qD:lle"
 
-#: config/nvptx/nvptx.cc:6067
+#: config/nvptx/nvptx.cc:6433
 #, gcc-internal-format
 msgid "using %<vector_length (%d)%> due to call to vector-partitionable routine, ignoring %d"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:6075
+#: config/nvptx/nvptx.cc:6441
 #, gcc-internal-format
 msgid "using %<vector_length (%d)%>, ignoring runtime setting"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:6089
+#: config/nvptx/nvptx.cc:6455
 #, gcc-internal-format
 msgid "using %<vector_length (%d)%>, ignoring %d"
 msgstr ""
 
-#: config/nvptx/nvptx.cc:6975
+#: config/nvptx/nvptx.cc:7341
 #, gcc-internal-format
 msgid "variable %qD adjusted for OpenACC privatization level: %qs"
 msgstr ""
 
+#: config/nvptx/nvptx.cc:7455
+#, fuzzy, gcc-internal-format
+msgid "weak alias definitions not supported in this configuration"
+msgstr "weakref ei ole tuettu tässä konfiguraatiossa"
+
+#: config/nvptx/nvptx.cc:7468
+#, fuzzy, gcc-internal-format
+msgid "non-function alias definitions not supported in this configuration"
+msgstr "weakref ei ole tuettu tässä konfiguraatiossa"
+
 #: config/or1k/or1k.cc:1311
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "unexpected operand: %d"
@@ -40896,11 +41026,6 @@ msgstr ""
 msgid "pointers to %<__regio_symbol%> address space are prohibited"
 msgstr ""
 
-#: config/pru/pru.cc:2936
-#, fuzzy, gcc-internal-format
-msgid "%<__delay_cycles%> only takes constant arguments"
-msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
-
 #: config/riscv/riscv.cc:391
 #, fuzzy, gcc-internal-format
 msgid "unknown cpu %qs for %<-mtune%>"
@@ -40946,12 +41071,12 @@ msgstr "  uid = %d, gid = %d, oikeudet = 0%o.\n"
 msgid "%<-mriscv-attribute%> RISC-V ELF attribute requires GNU as 2.32 [%<-mriscv-attribute%>]"
 msgstr ""
 
-#: config/riscv/riscv.cc:5081 config/rs6000/rs6000.cc:4612
+#: config/riscv/riscv.cc:5081 config/rs6000/rs6000.cc:4581
 #, fuzzy, gcc-internal-format
 msgid "%qs is not a valid base register in %qs"
 msgstr "luokkanimeä ei ole annettu %qs:n kanssa"
 
-#: config/riscv/riscv.cc:5095 config/rs6000/rs6000.cc:4595
+#: config/riscv/riscv.cc:5095 config/rs6000/rs6000.cc:4564
 #, fuzzy, gcc-internal-format
 msgid "%qs is not a valid number in %qs"
 msgstr "Funktio %qs"
@@ -41070,84 +41195,89 @@ msgstr "sisäinen funktio %q+D esitelty ei-funktiona"
 msgid "%qs requires quad-precision floating-point arithmetic"
 msgstr "Tuota koodia, joka käyttää 68881-liukulukukäskyjä"
 
-#: config/rs6000/rs6000-builtin.cc:2273
+#: config/rs6000/rs6000-builtin.cc:2279
 #, fuzzy, gcc-internal-format
 msgid "argument 1 of %qs must be a constant"
 msgstr "annettu yhteensopimatonta osoitintyyppiä oleva %d. argumentti funktiolle %qE"
 
-#: config/rs6000/rs6000-builtin.cc:2331
+#: config/rs6000/rs6000-builtin.cc:2337
 #, fuzzy, gcc-internal-format
 msgid "argument 1 of %qs is out of range"
 msgstr "%<__builtin_args_info%>-funktion argumentti on rajojen ulkopuolella"
 
-#: config/rs6000/rs6000-builtin.cc:2603
+#: config/rs6000/rs6000-builtin.cc:2609
 #, fuzzy, gcc-internal-format
 msgid "builtin %qs only accepts a string argument"
 msgstr "%J%qD sallii vain nolla tai kaksi argumenttia"
 
 #. Invalid CPU argument.
-#: config/rs6000/rs6000-builtin.cc:2622
+#: config/rs6000/rs6000-builtin.cc:2628
 #, fuzzy, gcc-internal-format
 msgid "cpu %qs is an invalid argument to builtin %qs"
 msgstr "kokonaislukuargumentti %s ei kelpaa"
 
 #. Invalid HWCAP argument.
-#: config/rs6000/rs6000-builtin.cc:2650
+#: config/rs6000/rs6000-builtin.cc:2656
 #, fuzzy, gcc-internal-format
 msgid "%s %qs is an invalid argument to builtin %qs"
 msgstr "kokonaislukuargumentti %s ei kelpaa"
 
-#: config/rs6000/rs6000-builtin.cc:2679
+#: config/rs6000/rs6000-builtin.cc:2685
 #, gcc-internal-format
 msgid "builtin %qs needs GLIBC (2.23 and newer) that exports hardware capability bits"
 msgstr ""
 
-#: config/rs6000/rs6000-builtin.cc:3026 config/rs6000/rs6000-builtin.cc:3180
+#: config/rs6000/rs6000-builtin.cc:3032 config/rs6000/rs6000-builtin.cc:3186
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "argument %d must be an unsigned literal"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/rs6000/rs6000-builtin.cc:3028 config/rs6000/rs6000-builtin.cc:3182
+#: config/rs6000/rs6000-builtin.cc:3034 config/rs6000/rs6000-builtin.cc:3188
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "argument %d is an unsigned literal that is out of range"
 msgstr "%<__builtin_args_info%>-funktion argumentti on rajojen ulkopuolella"
 
-#: config/rs6000/rs6000-builtin.cc:3133
+#: config/rs6000/rs6000-builtin.cc:3139
 #, fuzzy, gcc-internal-format
 msgid "builtin %qs is only valid in 64-bit mode"
 msgstr "#pragma redefine_extname ei ole tuettu tällä kohteella"
 
-#: config/rs6000/rs6000-builtin.cc:3403
+#: config/rs6000/rs6000-builtin.cc:3409
 #, fuzzy, gcc-internal-format
 msgid "%qs not supported with %<-msoft-float%>"
 msgstr "Profilointiajastin vanhentunut"
 
-#: config/rs6000/rs6000-builtin.cc:3410
+#: config/rs6000/rs6000-builtin.cc:3416
 #, fuzzy, gcc-internal-format
 msgid "%qs is not supported in 32-bit mode"
 msgstr "valitsin -mmultiple ei ole tuettu little-endian-järjestelmissä"
 
-#: config/rs6000/rs6000-builtin.cc:3416
+#: config/rs6000/rs6000-builtin.cc:3422
 #, gcc-internal-format
 msgid "%qs requires %<long double%> to be IBM 128-bit format"
 msgstr ""
 
-#: config/rs6000/rs6000-builtin.cc:3556
+#: config/rs6000/rs6000-builtin.cc:3429
+#, fuzzy, gcc-internal-format
+msgid "%qs requires %<__ibm128%> type support"
+msgstr "%s ei tue muotoilua %<%%%c%> %s"
+
+#: config/rs6000/rs6000-builtin.cc:3584
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "argument %d must be a literal between 0 and %d, inclusive"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/rs6000/rs6000-builtin.cc:3572
+#: config/rs6000/rs6000-builtin.cc:3600
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "argument %d must be a literal between %d and %d, inclusive"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/rs6000/rs6000-builtin.cc:3589
+#: config/rs6000/rs6000-builtin.cc:3617
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "argument %d must be a variable or a literal between %d and %d, inclusive"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
 
-#: config/rs6000/rs6000-builtin.cc:3605
+#: config/rs6000/rs6000-builtin.cc:3633
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "argument %d must be either a literal %d or a literal %d"
 msgstr "argumentin 2 on oltava 5-bittinen etumerkitön literaali"
@@ -41182,47 +41312,48 @@ msgstr "luvun on oltava 0 tai 1"
 msgid "junk at end of %<#pragma longcall%>"
 msgstr "roskaa ilmaisun %<#pragma pack%> lopussa"
 
-#: config/rs6000/rs6000-c.cc:1241 config/rs6000/rs6000-c.cc:1642
+#: config/rs6000/rs6000-c.cc:1249 config/rs6000/rs6000-c.cc:1650
 #, fuzzy, gcc-internal-format
 msgid "builtin %qs only accepts 1 argument"
 msgstr "%J%qD sallii vain nolla tai kaksi argumenttia"
 
-#: config/rs6000/rs6000-c.cc:1248 config/rs6000/rs6000-c.cc:1334
+#: config/rs6000/rs6000-c.cc:1256 config/rs6000/rs6000-c.cc:1342
 #, fuzzy, gcc-internal-format
 msgid "builtin %qs only accepts 2 arguments"
 msgstr "%J%qD sallii vain nolla tai kaksi argumenttia"
 
-#: config/rs6000/rs6000-c.cc:1512
+#: config/rs6000/rs6000-c.cc:1520
 #, fuzzy, gcc-internal-format
 msgid "builtin %qs only accepts 3 arguments"
 msgstr "%J%qD sallii vain nolla tai kaksi argumenttia"
 
-#: config/rs6000/rs6000-c.cc:1723
+#: config/rs6000/rs6000-c.cc:1735
 #, gcc-internal-format
 msgid "%<vec_lvsl%> is deprecated for little endian; use assignment for unaligned loads and stores"
 msgstr ""
 
-#: config/rs6000/rs6000-c.cc:1727
+#: config/rs6000/rs6000-c.cc:1739
 #, gcc-internal-format
 msgid "%<vec_lvsr%> is deprecated for little endian; use assignment for unaligned loads and stores"
 msgstr ""
 
-#: config/rs6000/rs6000-c.cc:1783
+#: config/rs6000/rs6000-c.cc:1795
 #, fuzzy, gcc-internal-format
-msgid "passing argument %d of %qE discards const qualifier from pointer target type"
+#| msgid "passing argument %d of %qE discards %qv qualifier from pointer target type"
+msgid "passing argument %d of %qE discards %qs qualifier from pointer target type"
 msgstr "%d. argumentti funktiolle %qE hylkää kohdeosoitintyypin %qv-määritteen"
 
-#: config/rs6000/rs6000-c.cc:1868 config/rs6000/rs6000-c.cc:2024
+#: config/rs6000/rs6000-c.cc:1881 config/rs6000/rs6000-c.cc:2037
 #, fuzzy, gcc-internal-format
 msgid "invalid parameter combination for AltiVec intrinsic %qs"
 msgstr "virheellinen parametri %qs"
 
-#: config/rs6000/rs6000-c.cc:2013
+#: config/rs6000/rs6000-c.cc:2026
 #, fuzzy, gcc-internal-format
 msgid "overloaded builtin %qs is implemented by builtin %qs"
 msgstr "sisäinen funktio %q+D esitelty ei-funktiona"
 
-#: config/rs6000/rs6000-c.cc:2017
+#: config/rs6000/rs6000-c.cc:2030
 #, fuzzy, gcc-internal-format
 msgid "%qs is not supported in this compiler configuration"
 msgstr "weakref ei ole tuettu tässä konfiguraatiossa"
@@ -41301,11 +41432,6 @@ msgstr "-m64 vaatii PowerPC64-suorittimen, otetaan käyttöön"
 msgid "%<-mcall-aixdesc%> incompatible with %<-mabi=elfv2%>"
 msgstr "-mapcs-stack-check on yhteensopimaton valitsimen -mno-apcs-frame kanssa"
 
-#: config/rs6000/rs6000.cc:3515
-#, fuzzy, gcc-internal-format
-msgid "%<-mcmodel incompatible with other toc options%>"
-msgstr "Muodostin %qs"
-
 #: config/rs6000/rs6000.cc:3536
 #, fuzzy, gcc-internal-format
 msgid "%qs unsupported for this ABI"
@@ -41344,11 +41470,10 @@ msgstr "%s %qs"
 #: config/rs6000/rs6000.cc:3979 config/rs6000/rs6000.cc:3998
 #: config/rs6000/rs6000.cc:4060 config/rs6000/rs6000.cc:4087
 #: config/rs6000/rs6000.cc:4114 config/rs6000/rs6000.cc:4129
-#: config/rs6000/rs6000.cc:4137 config/rs6000/rs6000.cc:4184
-#: config/rs6000/rs6000.cc:4186 config/rs6000/rs6000.cc:4276
-#: config/rs6000/rs6000.cc:4289 config/rs6000/rs6000.cc:4298
-#: config/rs6000/rs6000.cc:4436 config/rs6000/rs6000.cc:4477
-#: config/rs6000/rs6000.cc:4488
+#: config/rs6000/rs6000.cc:4137 config/rs6000/rs6000.cc:4269
+#: config/rs6000/rs6000.cc:4282 config/rs6000/rs6000.cc:4291
+#: config/rs6000/rs6000.cc:4429 config/rs6000/rs6000.cc:4446
+#: config/rs6000/rs6000.cc:4457
 #, fuzzy, gcc-internal-format
 msgid "%qs requires %qs"
 msgstr "%qs määritelty parametrille %qE"
@@ -41358,152 +41483,152 @@ msgstr "%qs määritelty parametrille %qE"
 msgid "target attribute or pragma changes %<long double%> size"
 msgstr "<tuntematon>"
 
-#: config/rs6000/rs6000.cc:4201
+#: config/rs6000/rs6000.cc:4194
 #, fuzzy, gcc-internal-format
 msgid "%qs requires full ISA 2.06 support"
 msgstr "%s ei tue muotoilua %<%%%c%> %s"
 
-#: config/rs6000/rs6000.cc:4214
+#: config/rs6000/rs6000.cc:4207
 #, gcc-internal-format
 msgid "Using IEEE extended precision %<long double%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4217
+#: config/rs6000/rs6000.cc:4210
 #, gcc-internal-format
 msgid "Using IBM extended precision %<long double%>"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4236
+#: config/rs6000/rs6000.cc:4229
 #, fuzzy, gcc-internal-format
 msgid "%qs requires VSX support"
 msgstr "%s ei tue muotoilua %<%%%c%> %s"
 
-#: config/rs6000/rs6000.cc:4245
+#: config/rs6000/rs6000.cc:4238
 #, gcc-internal-format
 msgid "The %<-mfloat128%> option may not be fully supported"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4268
+#: config/rs6000/rs6000.cc:4261
 #, fuzzy, gcc-internal-format
 msgid "%qs requires full ISA 3.0 support"
 msgstr "%s ei tue muotoilua %<%%%c%> %s"
 
-#: config/rs6000/rs6000.cc:4355
+#: config/rs6000/rs6000.cc:4348
 #, fuzzy, gcc-internal-format
-msgid "unknown vectorization library ABI type (%qs) for %qs switch"
+msgid "unknown vectorization library ABI type in %<-mveclibabi=%s%>"
 msgstr "epäkelpo osoitintila %qs"
 
-#: config/rs6000/rs6000.cc:4368 config/rs6000/rs6000.cc:4383
+#: config/rs6000/rs6000.cc:4361 config/rs6000/rs6000.cc:4376
 #, fuzzy, gcc-internal-format
 msgid "target attribute or pragma changes AltiVec ABI"
 msgstr "<tuntematon>"
 
-#: config/rs6000/rs6000.cc:4396
+#: config/rs6000/rs6000.cc:4389
 #, fuzzy, gcc-internal-format
 msgid "target attribute or pragma changes darwin64 ABI"
 msgstr "<tuntematon>"
 
-#: config/rs6000/rs6000.cc:4620
+#: config/rs6000/rs6000.cc:4589
 #, fuzzy, gcc-internal-format
 msgid "%qs needs a valid base register"
 msgstr "luokkanimeä ei ole annettu %qs:n kanssa"
 
-#: config/rs6000/rs6000.cc:4917
+#: config/rs6000/rs6000.cc:4886
 #, fuzzy, gcc-internal-format
 msgid "unknown option for %<%s=%s%>"
 msgstr "tuntematon valitsin -%s"
 
-#: config/rs6000/rs6000.cc:4954
+#: config/rs6000/rs6000.cc:4923
 #, fuzzy, gcc-internal-format
 msgid "%qs is deprecated and not recommended in any circumstances"
 msgstr "Vanhentunut. Tämä valitsin ei vaikuta mihinkään"
 
-#: config/rs6000/rs6000.cc:10753
+#: config/rs6000/rs6000.cc:10793
 #, gcc-internal-format
 msgid "%qs is an opaque type, and you cannot set it to other values"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:17531
+#: config/rs6000/rs6000.cc:17583
 #, fuzzy, gcc-internal-format
 msgid "no profiling of 64-bit code for this ABI"
 msgstr "64-bittinen ABI ei ole tuettu ESA/390-tilassa"
 
-#: config/rs6000/rs6000.cc:19928
+#: config/rs6000/rs6000.cc:19979
 #, fuzzy, gcc-internal-format
 msgid "you cannot take the address of a nested function if you use the %qs option"
 msgstr "bittikentän %qD osoitetta ei voi ottaa"
 
-#: config/rs6000/rs6000.cc:20010
+#: config/rs6000/rs6000.cc:20061
 #, fuzzy, gcc-internal-format
 msgid "use of %<long double%> in AltiVec types is invalid"
 msgstr "%<long long%> virheellinen %qs:lle"
 
-#: config/rs6000/rs6000.cc:20012
+#: config/rs6000/rs6000.cc:20063
 #, fuzzy, gcc-internal-format
 msgid "use of boolean types in AltiVec types is invalid"
 msgstr "%<long long%> virheellinen %qs:lle"
 
-#: config/rs6000/rs6000.cc:20014
+#: config/rs6000/rs6000.cc:20065
 #, fuzzy, gcc-internal-format
 msgid "use of %<complex%> in AltiVec types is invalid"
 msgstr "%<long long%> virheellinen %qs:lle"
 
-#: config/rs6000/rs6000.cc:20016
+#: config/rs6000/rs6000.cc:20067
 #, fuzzy, gcc-internal-format
 msgid "use of decimal floating-point types in AltiVec types is invalid"
 msgstr "%<long long%> virheellinen %qs:lle"
 
-#: config/rs6000/rs6000.cc:20022
+#: config/rs6000/rs6000.cc:20073
 #, fuzzy, gcc-internal-format
 msgid "use of %<long%> in AltiVec types is invalid for 64-bit code without %qs"
 msgstr "%<long long%> virheellinen %qs:lle"
 
-#: config/rs6000/rs6000.cc:20025
+#: config/rs6000/rs6000.cc:20076
 #, fuzzy, gcc-internal-format
 msgid "use of %<long%> in AltiVec types is deprecated; use %<int%>"
 msgstr "%<long long%> virheellinen %qs:lle"
 
-#: config/rs6000/rs6000.cc:20030
+#: config/rs6000/rs6000.cc:20081
 #, fuzzy, gcc-internal-format
 msgid "use of %<long long%> in AltiVec types is invalid without %qs"
 msgstr "%<long long%> virheellinen %qs:lle"
 
-#: config/rs6000/rs6000.cc:20033
+#: config/rs6000/rs6000.cc:20084
 #, fuzzy, gcc-internal-format
 msgid "use of %<double%> in AltiVec types is invalid without %qs"
 msgstr "%<long long%> virheellinen %qs:lle"
 
-#: config/rs6000/rs6000.cc:24181
+#: config/rs6000/rs6000.cc:24232
 #, fuzzy, gcc-internal-format
 msgid "invalid cpu %qs for %s%qs%s"
 msgstr "virheellinen argumentti %s %s:lle"
 
-#: config/rs6000/rs6000.cc:24184
+#: config/rs6000/rs6000.cc:24235
 #, gcc-internal-format
 msgid "%s%qs%s is not allowed"
 msgstr "%s%qs%s ei ole sallittu"
 
-#: config/rs6000/rs6000.cc:24186
+#: config/rs6000/rs6000.cc:24237
 #, gcc-internal-format
 msgid "%s%qs%s is invalid"
 msgstr "%s%qs%s on virheellinen"
 
-#: config/rs6000/rs6000.cc:24730
+#: config/rs6000/rs6000.cc:24781
 #, fuzzy, gcc-internal-format
 msgid "%<-mno-%s%> turns off %<-m%s%>"
 msgstr "valitsin -mcpu=%s on ristiriidassa valitsimen -march=%s kanssa"
 
-#: config/rs6000/rs6000.cc:24889
+#: config/rs6000/rs6000.cc:24940
 #, gcc-internal-format
 msgid "%<target_clones%> attribute needs GLIBC (2.23 and newer) that exports hardware capability bits"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:25177
+#: config/rs6000/rs6000.cc:25228
 #, fuzzy, gcc-internal-format
 msgid "Virtual function multiversioning not supported"
 msgstr "Varoita ylikuormitetuista virtuaalifunktioiden nimistä"
 
-#: config/rs6000/rs6000.cc:28260
+#: config/rs6000/rs6000.cc:28310
 #, gcc-internal-format
 msgid "the result for the xxspltidp instruction is undefined for subnormal input values"
 msgstr ""
@@ -41519,8 +41644,8 @@ msgid "multiple fast interrupt routines seen: %qE and %qE"
 msgstr "%Javoimelle funktiolle %qD annettu attribuutti noinline"
 
 #: config/rx/rx.cc:2480
-#, fuzzy, gcc-internal-format, gfc-internal-format
-msgid "invalid control register for mvtc: %d - using 'psw'"
+#, fuzzy, gcc-internal-format
+msgid "invalid control register %d for mvtc; using %<psw%>"
 msgstr "tunnistamaton rekisterinimi %qs"
 
 #: config/rx/rx.cc:2602
@@ -41919,7 +42044,7 @@ msgstr "PEITE"
 
 #: config/v850/v850-c.cc:67
 #, gcc-internal-format
-msgid "%<#pragma%> GHS endXXXX found without previous startXXX"
+msgid "%<#pragma%> GHS endXXX found without previous startXXX"
 msgstr ""
 
 #: config/v850/v850-c.cc:70
@@ -42224,8 +42349,8 @@ msgstr "%qE-attribuuttia ei huomioida %qE:lle"
 msgid "attribute %qs applies to array types only"
 msgstr "attribuutti %qs soveltuu vain taulukkotyyppeihin"
 
-#: c/c-convert.cc:104 c/c-typeck.cc:2258 c/c-typeck.cc:12921 cp/typeck.cc:2335
-#: cp/typeck.cc:8980 cp/typeck.cc:9782 d/d-convert.cc:262
+#: c/c-convert.cc:104 c/c-typeck.cc:2258 c/c-typeck.cc:12924 cp/typeck.cc:2344
+#: cp/typeck.cc:8994 cp/typeck.cc:9796 d/d-convert.cc:262
 #, gcc-internal-format
 msgid "void value not ignored as it ought to be"
 msgstr "tyhjää arvoa ei jätetä huomioimatta, vaikka kuuluisi"
@@ -42507,7 +42632,7 @@ msgstr "%J%qD:n esittely varjostaa edellistä paikallista"
 msgid "declaration of %qD shadows a parameter"
 msgstr "%q+D:n esittely varjostaa sisäänrakennetun funktion"
 
-#: c/c-decl.cc:3062 cp/name-lookup.cc:3332
+#: c/c-decl.cc:3062 cp/name-lookup.cc:3335
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qD shadows a global declaration"
 msgstr "%q+D:n esittely varjostaa sisäänrakennetun funktion"
@@ -42517,7 +42642,7 @@ msgstr "%q+D:n esittely varjostaa sisäänrakennetun funktion"
 msgid "declaration of %qD shadows a previous local"
 msgstr "%q+D:lla on edellinen esittely täällä"
 
-#: c/c-decl.cc:3094 cp/name-lookup.cc:3100
+#: c/c-decl.cc:3094 cp/name-lookup.cc:3103
 #, gcc-internal-format
 msgid "shadowed declaration is here"
 msgstr "varjostunut esittely on täällä"
@@ -42582,7 +42707,7 @@ msgstr "%qE esittelemättä (ensimmäinen käyttökerta tässä funktiossa)"
 msgid "each undeclared identifier is reported only once for each function it appears in"
 msgstr "(Jokaisesta esittelemättömästä tunnisteesta ilmoitetaan vain"
 
-#: c/c-decl.cc:3852 cp/decl.cc:3289
+#: c/c-decl.cc:3852 cp/decl.cc:3345
 #, fuzzy, gcc-internal-format
 msgid "label %qE referenced outside of any function"
 msgstr "%qD ei ole määritelty funktion näkyvyysalueen ulkopuolella"
@@ -42612,7 +42737,7 @@ msgstr "Odotettiin lauseketta %s-lauseessa kohdassa %C"
 msgid "duplicate label declaration %qE"
 msgstr "%qE-nimiön kaksoisesittely"
 
-#: c/c-decl.cc:4068 cp/decl.cc:3703
+#: c/c-decl.cc:4068 cp/decl.cc:3759
 #, fuzzy, gcc-internal-format
 msgid "duplicate label %qD"
 msgstr "Kaksoiskappale %s-nimiöspesifikaatio kohdassa %C"
@@ -42832,7 +42957,7 @@ msgstr "ei voi laittaa volatile-kenttäistä objektia rekisteriin"
 msgid "uninitialized %<const %D%> is invalid in C++"
 msgstr "alustamaton vakio %qD on virheellinen C++-kielessä"
 
-#: c/c-decl.cc:5684 cp/decl.cc:8434
+#: c/c-decl.cc:5684 cp/decl.cc:8561
 #, fuzzy, gcc-internal-format
 msgid "%q+D in declare target directive does not have mappable type"
 msgstr "%qE nimiavaruudessa %qE ei nimeä tyyppiä"
@@ -43003,7 +43128,7 @@ msgstr "tallennusluokka annettu parametrille %qE"
 msgid "storage class specified for unnamed parameter"
 msgstr "tallennusluokka annettu nimettömälle parametrille"
 
-#: c/c-decl.cc:6536 cp/decl.cc:12450
+#: c/c-decl.cc:6536 cp/decl.cc:12577
 #, gcc-internal-format
 msgid "storage class specified for typename"
 msgstr "tallennusluokka annettu typenamelle"
@@ -43172,7 +43297,7 @@ msgstr "tyyppinimi esitelty taulukon palauttavan funktiona"
 msgid "function definition has qualified void return type"
 msgstr "funktion määrittely oikeuttaa tyhjän paluutyypin"
 
-#: c/c-decl.cc:7109 cp/decl.cc:12750
+#: c/c-decl.cc:7109 cp/decl.cc:12877
 #, gcc-internal-format
 msgid "type qualifiers ignored on function return type"
 msgstr "tyyppimääritteet jätetään huomiotta funktion paluutyypissä"
@@ -43299,7 +43424,7 @@ msgstr "ISO C kieltää const- ja volatile-funktiotyypit"
 msgid "a member of a structure or union cannot have a variably modified type"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: c/c-decl.cc:7445 cp/decl.cc:11343
+#: c/c-decl.cc:7445 cp/decl.cc:11470
 #, gcc-internal-format
 msgid "variable or field %qE declared void"
 msgstr "muuttuja tai kenttä %qE esitelty voidiksi"
@@ -43479,7 +43604,7 @@ msgstr "sisäkkäinen %<struct %E%>:n uudelleenmäärittely"
 msgid "defining type in %qs expression is invalid in C++"
 msgstr "tyypin määritteleminen tyyppimuunnoksessa on virheellistä C++-kielessä"
 
-#: c/c-decl.cc:8402 cp/decl.cc:5255
+#: c/c-decl.cc:8402 cp/decl.cc:5321
 #, gcc-internal-format
 msgid "declaration does not declare anything"
 msgstr "esittely ei esittele mitään"
@@ -43529,7 +43654,7 @@ msgstr "structilla ei ole nimettyjä jäseniä"
 msgid "struct has no members"
 msgstr "structilla ei ole jäseniä"
 
-#: c/c-decl.cc:8806 cp/decl.cc:13715
+#: c/c-decl.cc:8806 cp/decl.cc:13842
 #, gcc-internal-format
 msgid "flexible array member in union"
 msgstr "joustava taulukkojäsen unionissa"
@@ -43570,7 +43695,7 @@ msgstr "sisäkkäinen %<enum %E%>:n uudelleenmäärittely"
 msgid "redeclaration of %<enum %E%>"
 msgstr "%<enum %E%>:n uudelleenmäärittely"
 
-#: c/c-decl.cc:9196 cp/decl.cc:16262
+#: c/c-decl.cc:9196 cp/decl.cc:16393
 #, fuzzy, gcc-internal-format
 msgid "specified mode too small for enumerated values"
 msgstr "annettu tila on liian pieni luetelluille arvoille"
@@ -43600,7 +43725,7 @@ msgstr "ylivuoto luetellun tyypin arvoissa"
 msgid "ISO C restricts enumerator values to range of %<int%>"
 msgstr "ISO C rajoittaa luetellun tyypin arvot %<int%>-tyypin arvoalueelle"
 
-#: c/c-decl.cc:9522 cp/decl.cc:5566 cp/decl.cc:16839
+#: c/c-decl.cc:9522 cp/decl.cc:5634 cp/decl.cc:16972
 #, fuzzy, gcc-internal-format
 msgid "inline function %qD given attribute %qs"
 msgstr "%Javoimelle funktiolle %qD annettu attribuutti noinline"
@@ -43630,7 +43755,7 @@ msgstr "%qD:lle ei ole edellistä prototyyppiä"
 msgid "%qD was used with no prototype before its definition"
 msgstr "%qD käytössä ilman prototyyppiä ennen sen määrittelyä"
 
-#: c/c-decl.cc:9654 cp/decl.cc:16974
+#: c/c-decl.cc:9654 cp/decl.cc:17107
 #, gcc-internal-format
 msgid "no previous declaration for %qD"
 msgstr "%qD:lle ei ole edellistä esittelyä"
@@ -43745,12 +43870,12 @@ msgstr "argumentti %qD ei vastaa sisäistä prototyyppiä"
 msgid "argument %qD doesn%'t match prototype"
 msgstr "argumentti %qD ei sovi prototyyppiin"
 
-#: c/c-decl.cc:10307 cp/decl.cc:17800
+#: c/c-decl.cc:10307 cp/decl.cc:17933
 #, gcc-internal-format
 msgid "no return statement in function returning non-void"
 msgstr "ei palautuslausetta funktiossa, joka palauttaa ei-voidin"
 
-#: c/c-decl.cc:10326 cp/decl.cc:17884
+#: c/c-decl.cc:10326 cp/decl.cc:18017
 #, fuzzy, gcc-internal-format
 msgid "parameter %qD set but not used"
 msgstr "parametri %qD on alustettu"
@@ -43819,7 +43944,7 @@ msgstr "useita tallennusluokkia esittelymääritteissä"
 msgid "two or more data types in declaration specifiers"
 msgstr "yli yksi tietotyyppi esittelymääritteissä"
 
-#: c/c-decl.cc:10892 cp/parser.cc:32692
+#: c/c-decl.cc:10892 cp/parser.cc:32698
 #, gcc-internal-format
 msgid "%<long long long%> is too long for GCC"
 msgstr "%<long long long%> on liian pitkä GCC:lle"
@@ -43969,47 +44094,47 @@ msgstr ""
 msgid "ISO C does not support complex integer types"
 msgstr "ISO C ei tue kompleksikokonaislukutyyppejä"
 
-#: c/c-decl.cc:12448 cp/semantics.cc:5991
+#: c/c-decl.cc:12448 cp/semantics.cc:5982
 #, gcc-internal-format
 msgid "%<#pragma omp declare reduction%> combiner refers to variable %qD which is not %<omp_out%> nor %<omp_in%>"
 msgstr ""
 
-#: c/c-decl.cc:12452 cp/semantics.cc:5995
+#: c/c-decl.cc:12452 cp/semantics.cc:5986
 #, gcc-internal-format
 msgid "%<#pragma omp declare reduction%> initializer refers to variable %qD which is not %<omp_priv%> nor %<omp_orig%>"
 msgstr ""
 
-#: c/c-fold.cc:387 c/c-typeck.cc:12224 cp/typeck.cc:5388
+#: c/c-fold.cc:388 c/c-typeck.cc:12227 cp/typeck.cc:5398
 #, gcc-internal-format
 msgid "left shift of negative value"
 msgstr "negatiivisen arvon siirto vasemmalle"
 
-#: c/c-fold.cc:397 c/c-typeck.cc:12233 cp/typeck.cc:5396
+#: c/c-fold.cc:398 c/c-typeck.cc:12236 cp/typeck.cc:5406
 #, gcc-internal-format
 msgid "left shift count is negative"
 msgstr "vasemmalle siirron lukumäärä on negatiivinen"
 
-#: c/c-fold.cc:398 c/c-typeck.cc:12162 cp/typeck.cc:5336
+#: c/c-fold.cc:399 c/c-typeck.cc:12164 cp/typeck.cc:5345
 #, gcc-internal-format
 msgid "right shift count is negative"
 msgstr "oikealle siirron lukumäärä on negatiivinen"
 
-#: c/c-fold.cc:406 c/c-typeck.cc:12252 cp/typeck.cc:5404
+#: c/c-fold.cc:407 c/c-typeck.cc:12255 cp/typeck.cc:5414
 #, gcc-internal-format
 msgid "left shift count >= width of type"
 msgstr "vasemmalle siirron lukumäärä >= tyypin leveys"
 
-#: c/c-fold.cc:407 c/c-typeck.cc:12186 cp/typeck.cc:5347
+#: c/c-fold.cc:408 c/c-typeck.cc:12188 cp/typeck.cc:5356
 #, gcc-internal-format
 msgid "right shift count >= width of type"
 msgstr "oikealle siirron lukumäärä >= tyypin leveys"
 
-#: c/c-fold.cc:414 c/c-typeck.cc:12244
+#: c/c-fold.cc:415 c/c-typeck.cc:12247
 #, fuzzy, gcc-internal-format
 msgid "left shift count >= width of vector element"
 msgstr "vasemmalle siirron lukumäärä >= tyypin leveys"
 
-#: c/c-fold.cc:415 c/c-typeck.cc:12173
+#: c/c-fold.cc:416 c/c-typeck.cc:12175
 #, fuzzy, gcc-internal-format
 msgid "right shift count >= width of vector element"
 msgstr "oikealle siirron lukumäärä >= tyypin leveys"
@@ -44029,7 +44154,7 @@ msgstr ""
 msgid "to match this %qs"
 msgstr "toinen täsmäävyys on täällä"
 
-#: c/c-parser.cc:1324 cp/parser.cc:32926
+#: c/c-parser.cc:1324 cp/parser.cc:32932
 #, fuzzy, gcc-internal-format
 msgid "expected end of line"
 msgstr "odotettiin %<(%> tai rivin loppu"
@@ -44039,7 +44164,7 @@ msgstr "odotettiin %<(%> tai rivin loppu"
 msgid "ISO C forbids an empty translation unit"
 msgstr "ISO C kieltää tyhjät käännösyksiköt"
 
-#: c/c-parser.cc:1667 cp/semantics.cc:3323
+#: c/c-parser.cc:1667 cp/semantics.cc:3328
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp declare target%> without corresponding %<#pragma omp end declare target%>"
 msgstr "%Jluetellun tyypin jäsenen %qd uudelleenesittely"
@@ -44074,9 +44199,9 @@ msgstr "tyypillä %qT ei ole %qE-nimistä jäsentä"
 msgid "unknown type name %qE"
 msgstr "%qE ei nimeä tyyppiä"
 
-#: c/c-parser.cc:2006 c/c-parser.cc:12610 c/c-parser.cc:19957
-#: c/c-parser.cc:20544 c/c-parser.cc:21066 cp/parser.cc:43736
-#: cp/parser.cc:47996
+#: c/c-parser.cc:2006 c/c-parser.cc:12610 c/c-parser.cc:19966
+#: c/c-parser.cc:20553 c/c-parser.cc:21075 cp/parser.cc:43742
+#: cp/parser.cc:48002
 #, fuzzy, gcc-internal-format
 msgid "expected declaration specifiers"
 msgstr "useita tallennusluokkia esittelymääritteissä"
@@ -44096,7 +44221,7 @@ msgstr "pakattu attribuutti on tarpeeton %q+D:lle"
 msgid "expected %<;%>, identifier or %<(%>"
 msgstr "odotettiin tunnistetta tai %<(%>"
 
-#: c/c-parser.cc:2071 cp/parser.cc:35156 cp/parser.cc:35228
+#: c/c-parser.cc:2071 cp/parser.cc:35162 cp/parser.cc:35234
 #, fuzzy, gcc-internal-format
 msgid "prefix attributes are ignored for methods"
 msgstr "parametritaulukon esittelijän attribuutit jätetään huomiotta"
@@ -44111,7 +44236,7 @@ msgstr "parametritaulukon esittelijän attribuutit jätetään huomiotta"
 msgid "unexpected attribute"
 msgstr "Odottamattomat argumentit"
 
-#: c/c-parser.cc:2137 c/c-parser.cc:6233 cp/parser.cc:12523 cp/parser.cc:12730
+#: c/c-parser.cc:2137 c/c-parser.cc:6233 cp/parser.cc:12517 cp/parser.cc:12724
 #, fuzzy, gcc-internal-format
 msgid "%<fallthrough%> attribute not followed by %<;%>"
 msgstr "pakattu attribuutti on tarpeeton %q+D:lle"
@@ -44149,7 +44274,7 @@ msgstr "%<auto%> tiedostoalueen tyhjässä esittelyssä"
 msgid "%<__auto_type%> may only be used with a single declarator"
 msgstr "tallennusluokan voi antaa vain objekteille ja funktioille"
 
-#: c/c-parser.cc:2420 cp/parser.cc:15393
+#: c/c-parser.cc:2420 cp/parser.cc:15387
 #, gcc-internal-format
 msgid "expected %<,%> or %<;%>"
 msgstr "odotettiin %<,%> tai %<;%>"
@@ -44207,7 +44332,7 @@ msgstr "ei-vakio ehto staattiselle väitteelle"
 msgid "static assertion failed: %E"
 msgstr "staattinen väite epäonnistui: %E"
 
-#: c/c-parser.cc:2688 cp/semantics.cc:11177
+#: c/c-parser.cc:2688 cp/semantics.cc:11168
 #, gcc-internal-format
 msgid "static assertion failed"
 msgstr "staattinen väite epäonnistui"
@@ -44251,17 +44376,17 @@ msgstr "enum-muunnos palautuksessa on virheellistä C++-kielessä"
 #: c/c-parser.cc:11138 c/c-parser.cc:11167 c/c-parser.cc:11180
 #: c/c-parser.cc:11486 c/c-parser.cc:11610 c/c-parser.cc:12194
 #: c/c-parser.cc:12247 c/c-parser.cc:12263 c/c-parser.cc:12309
-#: c/c-parser.cc:13118 c/c-parser.cc:13152 c/c-parser.cc:15788
-#: c/c-parser.cc:15900 c/c-parser.cc:16551 c/c-parser.cc:18933
-#: c/c-parser.cc:21594 c/c-parser.cc:21785 c/gimple-parser.cc:1789
-#: c/gimple-parser.cc:1835 cp/parser.cc:9170 cp/parser.cc:32929
-#: cp/parser.cc:36133 cp/parser.cc:38927 cp/parser.cc:39096 cp/parser.cc:45287
-#: cp/parser.cc:47291
+#: c/c-parser.cc:13118 c/c-parser.cc:13161 c/c-parser.cc:15797
+#: c/c-parser.cc:15909 c/c-parser.cc:16560 c/c-parser.cc:18942
+#: c/c-parser.cc:21603 c/c-parser.cc:21794 c/gimple-parser.cc:1793
+#: c/gimple-parser.cc:1839 cp/parser.cc:9164 cp/parser.cc:32935
+#: cp/parser.cc:36139 cp/parser.cc:38933 cp/parser.cc:39102 cp/parser.cc:45293
+#: cp/parser.cc:47297
 #, gcc-internal-format
 msgid "expected identifier"
 msgstr "odotettu tunniste"
 
-#: c/c-parser.cc:3243 cp/parser.cc:21095
+#: c/c-parser.cc:3243 cp/parser.cc:21093
 #, gcc-internal-format
 msgid "comma at end of enumerator list"
 msgstr "luetellun tyypin luettelon lopussa on pilkku"
@@ -44346,7 +44471,7 @@ msgstr "useita tallennusluokkia esittelymääritteissä"
 msgid "parentheses must be omitted if attribute argument list is empty"
 msgstr ""
 
-#: c/c-parser.cc:4942 cp/parser.cc:29036
+#: c/c-parser.cc:4942 cp/parser.cc:29034
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute does not take any arguments"
 msgstr "%qE-attribuutti tarvitsee prototyyppejä, joilla nimettyjä argumentteja"
@@ -44387,7 +44512,7 @@ msgid "ISO C forbids label declarations"
 msgstr "ISO C kieltää parametrien ennakkoesittelyn"
 
 #: c/c-parser.cc:5672 c/c-parser.cc:5761 c/c-parser.cc:5775
-#: c/gimple-parser.cc:405
+#: c/gimple-parser.cc:409
 #, fuzzy, gcc-internal-format
 msgid "expected declaration or statement"
 msgstr "odotettiin iteraatioesittelyä tai -alustusta"
@@ -44407,7 +44532,7 @@ msgstr "ISO C90 kieltää esittelyjen ja koodin sekoittamisen"
 msgid "expected %<}%> before %<else%>"
 msgstr "#else #else:n jälkeen"
 
-#: c/c-parser.cc:5788 cp/parser.cc:12851
+#: c/c-parser.cc:5788 cp/parser.cc:12845
 #, gcc-internal-format
 msgid "%<else%> without a previous %<if%>"
 msgstr "%<else%> ilman edeltävää %<if%>:iä"
@@ -44422,7 +44547,7 @@ msgstr "Lohkonimiö ei ole sopiva IF-lauseelle kohdassa %C"
 #. delimiter without consuming it, but here we need to consume
 #. it to proceed further.
 #: c/c-parser.cc:5827 c/c-parser.cc:5840 c/c-parser.cc:6254
-#: c/gimple-parser.cc:2306 cp/parser.cc:12432
+#: c/gimple-parser.cc:2328 cp/parser.cc:12426
 #, fuzzy, gcc-internal-format
 msgid "expected statement"
 msgstr "%s-lausetta odotettiin kohdassa %L"
@@ -44447,17 +44572,17 @@ msgstr "odotettiin tunnistetta tai %<*%>"
 msgid "only attribute %<fallthrough%> can be applied to a null statement"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: c/c-parser.cc:6362 cp/parser.cc:14415
+#: c/c-parser.cc:6362 cp/parser.cc:14409
 #, gcc-internal-format
 msgid "suggest braces around empty body in an %<if%> statement"
 msgstr "ehdotetaan aaltosulkeita tyhjän lohkon ympärille %<if%>-lauseessa"
 
-#: c/c-parser.cc:6404 cp/parser.cc:14418
+#: c/c-parser.cc:6404 cp/parser.cc:14412
 #, gcc-internal-format
 msgid "suggest braces around empty body in an %<else%> statement"
 msgstr "ehdotetaan aaltosulkeita tyhjän lohkon ympärille %<else%>-lauseessa"
 
-#: c/c-parser.cc:6535 cp/parser.cc:13220
+#: c/c-parser.cc:6535 cp/parser.cc:13214
 #, gcc-internal-format
 msgid "suggest explicit braces to avoid ambiguous %<else%>"
 msgstr "ehdotetaan aaltosulkeita epäselvän %<else%>:n välttämiseksi"
@@ -44477,12 +44602,12 @@ msgstr "%Javoimelle funktiolle %qD annettu attribuutti noinline"
 msgid "invalid iterating variable in fast enumeration"
 msgstr "epäkelvot operandit binääriselle %s-operaatiolle"
 
-#: c/c-parser.cc:6886 cp/parser.cc:13507
+#: c/c-parser.cc:6886 cp/parser.cc:13501
 #, gcc-internal-format
 msgid "missing loop condition in loop with %<GCC ivdep%> pragma"
 msgstr ""
 
-#: c/c-parser.cc:6892 cp/parser.cc:13513
+#: c/c-parser.cc:6892 cp/parser.cc:13507
 #, gcc-internal-format
 msgid "missing loop condition in loop with %<GCC unroll%> pragma"
 msgstr ""
@@ -44497,8 +44622,8 @@ msgstr "lopetusalkio puuttuu funktiokutsusta"
 msgid "duplicate %<asm%> qualifier %qE"
 msgstr "cv-määreen kaksoiskappale"
 
-#: c/c-parser.cc:7051 c/c-parser.cc:7062 c/c-parser.cc:7073 cp/parser.cc:21967
-#: cp/parser.cc:21984 cp/parser.cc:21998
+#: c/c-parser.cc:7051 c/c-parser.cc:7062 c/c-parser.cc:7073 cp/parser.cc:21965
+#: cp/parser.cc:21982 cp/parser.cc:21996
 #, gcc-internal-format
 msgid "first seen here"
 msgstr "nähty ensimmäisen kerran tässä"
@@ -44513,7 +44638,7 @@ msgstr "  odotettiin luokkamallia, saatiin %qE"
 msgid "expected %<:%> or %<)%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/c-parser.cc:7431 cp/parser.cc:4487
+#: c/c-parser.cc:7431 cp/parser.cc:4485
 #, fuzzy, gcc-internal-format
 msgid "a wide string is invalid in this context"
 msgstr "muotoilu on leveämerkkinen merkkijono"
@@ -44525,12 +44650,12 @@ msgstr "ISO C kieltää ?:-lausekkeen ilman keskimmäistä termiä"
 
 #. Location of the binary operator.
 #. Quiet warning.
-#: c/c-parser.cc:7844 cp/typeck.cc:5164
+#: c/c-parser.cc:7844 cp/typeck.cc:5173
 #, gcc-internal-format
 msgid "division %<sizeof (%T) / sizeof (%T)%> does not compute the number of array elements"
 msgstr ""
 
-#: c/c-parser.cc:7850 cp/typeck.cc:5169
+#: c/c-parser.cc:7850 cp/typeck.cc:5178
 #, fuzzy, gcc-internal-format
 msgid "first %<sizeof%> operand was declared here"
 msgstr "%Jviimeksi käytetty täällä"
@@ -44661,8 +44786,8 @@ msgid "ISO C90 does not support %<__func__%> predefined identifier"
 msgstr "ISO C ei tue kompleksikokonaiskulutyyppejä"
 
 #: c/c-parser.cc:9082 c/c-parser.cc:10206 c/c-parser.cc:10228
-#: c/c-parser.cc:18349 c/gimple-parser.cc:1707 c/gimple-parser.cc:2323
-#: cp/parser.cc:40852
+#: c/c-parser.cc:18358 c/gimple-parser.cc:1711 c/gimple-parser.cc:2345
+#: cp/parser.cc:40858
 #, gcc-internal-format
 msgid "expected expression"
 msgstr "odotettiin lauseketta"
@@ -44804,7 +44929,7 @@ msgstr "?:-lausekkeen operandeilla on eri tyypit, %qT ja %qT"
 msgid "%<__builtin_complex%> operands of different types"
 msgstr "?:-lausekkeen operandeilla on eri tyypit, %qT ja %qT"
 
-#: c/c-parser.cc:10037 c/c-parser.cc:10066 cp/parser.cc:7482
+#: c/c-parser.cc:10037 c/c-parser.cc:10066 cp/parser.cc:7480
 #, fuzzy, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_shuffle%>"
 msgstr "väärä määrä argumentteja funktiolle %<__builtin_next_arg%>"
@@ -44924,12 +45049,12 @@ msgstr "Odotettiin toista ulottuvuutta taulukkoesittelyssä kohdassa %C"
 msgid "no type or storage class may be specified here,"
 msgstr "tallennusluokka annettu %qs:lle"
 
-#: c/c-parser.cc:12048 cp/parser.cc:35990
+#: c/c-parser.cc:12048 cp/parser.cc:35996
 #, fuzzy, gcc-internal-format
 msgid "empty property attribute list"
 msgstr "<tuntematon>"
 
-#: c/c-parser.cc:12062 cp/parser.cc:36003
+#: c/c-parser.cc:12062 cp/parser.cc:36009
 #, fuzzy, gcc-internal-format
 msgid "missing property attribute"
 msgstr "puuttuva Code-attribuutti"
@@ -44939,52 +45064,52 @@ msgstr "puuttuva Code-attribuutti"
 msgid "unknown property attribute %<%s%s%>"
 msgstr "<tuntematon>"
 
-#: c/c-parser.cc:12104 cp/parser.cc:36040
+#: c/c-parser.cc:12104 cp/parser.cc:36046
 #, fuzzy, gcc-internal-format
 msgid "unknown property attribute"
 msgstr "<tuntematon>"
 
-#: c/c-parser.cc:12113 cp/parser.cc:36049
+#: c/c-parser.cc:12113 cp/parser.cc:36055
 #, fuzzy, gcc-internal-format
 msgid "expected %<=%> after Objective-C %qE"
 msgstr "toistuva %<@%> Objective-C-merkkijonon edellä"
 
-#: c/c-parser.cc:12124 cp/parser.cc:36063
+#: c/c-parser.cc:12124 cp/parser.cc:36069
 #, fuzzy, gcc-internal-format
 msgid "expected %qE selector name"
 msgstr "%s-lausetta odotettiin kohdassa %L"
 
-#: c/c-parser.cc:12140 cp/parser.cc:36082
+#: c/c-parser.cc:12140 cp/parser.cc:36088
 #, fuzzy, gcc-internal-format
 msgid "setter method names must terminate with %<:%>"
 msgstr "kuori on annettava polkuineen"
 
-#: c/c-parser.cc:12354 cp/parser.cc:47622
+#: c/c-parser.cc:12354 cp/parser.cc:47628
 #, gcc-internal-format
 msgid "%<#pragma GCC unroll%> requires an assignment-expression that evaluates to a non-negative integral constant less than %u"
 msgstr ""
 
-#: c/c-parser.cc:12398 c/c-parser.cc:20541 c/c-parser.cc:20838
-#: c/c-parser.cc:20897 c/c-parser.cc:20983 cp/parser.cc:43733
-#: cp/parser.cc:44069 cp/parser.cc:44160 cp/parser.cc:44234 cp/parser.cc:47669
-#: cp/parser.cc:47685 cp/parser.cc:47701 cp/parser.cc:47718 cp/parser.cc:47735
-#: cp/parser.cc:47752 cp/parser.cc:47779 cp/parser.cc:47793 cp/parser.cc:47818
-#: cp/parser.cc:47832
+#: c/c-parser.cc:12398 c/c-parser.cc:20550 c/c-parser.cc:20847
+#: c/c-parser.cc:20906 c/c-parser.cc:20992 cp/parser.cc:43739
+#: cp/parser.cc:44075 cp/parser.cc:44166 cp/parser.cc:44240 cp/parser.cc:47675
+#: cp/parser.cc:47691 cp/parser.cc:47707 cp/parser.cc:47724 cp/parser.cc:47741
+#: cp/parser.cc:47758 cp/parser.cc:47785 cp/parser.cc:47799 cp/parser.cc:47824
+#: cp/parser.cc:47838
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma %s%> may only be used in compound statements"
 msgstr "<this%>-sanaa ei voi käyttää tässä yhteydessä"
 
-#: c/c-parser.cc:12421 cp/parser.cc:47807
+#: c/c-parser.cc:12421 cp/parser.cc:47813
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma acc routine%> must be at file scope"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:12507 cp/parser.cc:47915
+#: c/c-parser.cc:12507 cp/parser.cc:47921
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp scan%> may only be used in a loop construct with %<inscan%> %<reduction%> clause"
 msgstr "<this%>-sanaa ei voi käyttää tässä yhteydessä"
 
-#: c/c-parser.cc:12514 cp/parser.cc:47921
+#: c/c-parser.cc:12514 cp/parser.cc:47927
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp section%> may only be used in %<#pragma omp sections%> construct"
 msgstr "<this%>-sanaa ei voi käyttää tässä yhteydessä"
@@ -44994,23 +45119,23 @@ msgstr "<this%>-sanaa ei voi käyttää tässä yhteydessä"
 msgid "%<#pragma omp requires%> may only be used at file scope"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:12555 c/c-parser.cc:12579 cp/parser.cc:47950
-#: cp/parser.cc:47983
+#: c/c-parser.cc:12555 c/c-parser.cc:12579 cp/parser.cc:47956
+#: cp/parser.cc:47989
 #, fuzzy, gcc-internal-format
 msgid "for, while or do statement expected"
 msgstr "Odotettiin =-merkkiä PARAMETER-lauseessa kohdassa %C"
 
-#: c/c-parser.cc:12592 cp/parser.cc:47659
+#: c/c-parser.cc:12592 cp/parser.cc:47665
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma GCC pch_preprocess%> must be first"
 msgstr "roskaa ilmaisun %<#pragma GCC pch_preprocess%> lopussa"
 
-#: c/c-parser.cc:12939 c/c-parser.cc:16396 c/c-parser.cc:18109
-#: c/c-parser.cc:18167 c/c-parser.cc:18174 c/c-parser.cc:18181
-#: c/c-parser.cc:22613 c/c-parser.cc:22621 c/c-parser.cc:22895
-#: c/c-parser.cc:22905 cp/parser.cc:36505 cp/parser.cc:39601
-#: cp/parser.cc:40626 cp/parser.cc:40689 cp/parser.cc:40696 cp/parser.cc:40703
-#: cp/parser.cc:46550 cp/parser.cc:46558 cp/parser.cc:46715 cp/parser.cc:46725
+#: c/c-parser.cc:12939 c/c-parser.cc:16405 c/c-parser.cc:18118
+#: c/c-parser.cc:18176 c/c-parser.cc:18183 c/c-parser.cc:18190
+#: c/c-parser.cc:22622 c/c-parser.cc:22630 c/c-parser.cc:22904
+#: c/c-parser.cc:22914 cp/parser.cc:36511 cp/parser.cc:39607
+#: cp/parser.cc:40632 cp/parser.cc:40695 cp/parser.cc:40702 cp/parser.cc:40709
+#: cp/parser.cc:46556 cp/parser.cc:46564 cp/parser.cc:46721 cp/parser.cc:46731
 #, fuzzy, gcc-internal-format
 msgid "too many %qs clauses"
 msgstr "%s: liian monta arvoa"
@@ -45020,957 +45145,957 @@ msgstr "%s: liian monta arvoa"
 msgid "expression must be integral"
 msgstr "taulukon koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: c/c-parser.cc:13256 c/c-parser.cc:13268
+#: c/c-parser.cc:13265 c/c-parser.cc:13277
 #, fuzzy, gcc-internal-format
 msgid "expected %<)%> or %<,%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/c-parser.cc:13419 c/c-parser.cc:23098
+#: c/c-parser.cc:13428 c/c-parser.cc:23107
 #, gcc-internal-format
 msgid "%qD is not a variable"
 msgstr "%qD ei ole muuttuja"
 
-#: c/c-parser.cc:13423 cp/semantics.cc:8184
+#: c/c-parser.cc:13432 cp/semantics.cc:8175
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a pointer variable"
 msgstr "%qD ei ole muuttuja"
 
-#: c/c-parser.cc:13465 cp/parser.cc:37237
+#: c/c-parser.cc:13474 cp/parser.cc:37243
 #, fuzzy, gcc-internal-format
 msgid "collapse argument needs positive constant integer expression"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: c/c-parser.cc:13560 cp/parser.cc:37315
+#: c/c-parser.cc:13569 cp/parser.cc:37321
 #, fuzzy, gcc-internal-format
 msgid "expected %<none%> or %<present%>"
 msgstr "odotettiin %<none%> tai %<shared%>"
 
-#: c/c-parser.cc:13562 cp/parser.cc:37317
+#: c/c-parser.cc:13571 cp/parser.cc:37323
 #, fuzzy, gcc-internal-format
 msgid "expected %<none%>, %<shared%>, %<private%> or %<firstprivate%>"
 msgstr "%qs määrittää %<auto%>:n tiedostoalue-esittelyssä"
 
-#: c/c-parser.cc:13683 cp/parser.cc:37429
+#: c/c-parser.cc:13692 cp/parser.cc:37435
 #, fuzzy, gcc-internal-format
 msgid "expected %<data%>, %<update%>, %<enter%> or %<exit%>"
 msgstr "käytetty %<__thread%> ennen %<extern%>:a"
 
-#: c/c-parser.cc:13703 c/c-parser.cc:20890 c/c-parser.cc:20976
-#: cp/parser.cc:37447 cp/parser.cc:44061 cp/parser.cc:44152
+#: c/c-parser.cc:13712 c/c-parser.cc:20899 c/c-parser.cc:20985
+#: cp/parser.cc:37453 cp/parser.cc:44067 cp/parser.cc:44158
 #, fuzzy, gcc-internal-format
 msgid "expected %<data%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/c-parser.cc:13756 cp/parser.cc:37502
+#: c/c-parser.cc:13765 cp/parser.cc:37508
 #, fuzzy, gcc-internal-format
 msgid "too many %<if%> clauses with %qs modifier"
 msgstr "%s: Liian monta argumenttia\n"
 
-#: c/c-parser.cc:13763 cp/parser.cc:37509
+#: c/c-parser.cc:13772 cp/parser.cc:37515
 #, fuzzy, gcc-internal-format
 msgid "too many %<if%> clauses"
 msgstr "%s: Liian monta argumenttia\n"
 
-#: c/c-parser.cc:13765 cp/parser.cc:37511
+#: c/c-parser.cc:13774 cp/parser.cc:37517
 #, fuzzy, gcc-internal-format
 msgid "too many %<if%> clauses without modifier"
 msgstr "%s: Liian monta argumenttia\n"
 
-#: c/c-parser.cc:13771 cp/parser.cc:37517
+#: c/c-parser.cc:13780 cp/parser.cc:37523
 #, gcc-internal-format
 msgid "if any %<if%> clause has modifier, then all %<if%> clauses have to use modifier"
 msgstr ""
 
-#: c/c-parser.cc:13876 c/c-parser.cc:13936 c/c-parser.cc:13997
-#: c/c-parser.cc:14044 c/c-parser.cc:14123 c/c-parser.cc:14502
-#: c/c-parser.cc:14584 c/c-parser.cc:15151 c/c-parser.cc:15296
-#: c/c-parser.cc:15361 c/c-parser.cc:16333
+#: c/c-parser.cc:13885 c/c-parser.cc:13945 c/c-parser.cc:14006
+#: c/c-parser.cc:14053 c/c-parser.cc:14132 c/c-parser.cc:14511
+#: c/c-parser.cc:14593 c/c-parser.cc:15160 c/c-parser.cc:15305
+#: c/c-parser.cc:15370 c/c-parser.cc:16342
 #, gcc-internal-format
 msgid "expected integer expression"
 msgstr "odotettiin kokonaislukulauseketta"
 
-#: c/c-parser.cc:13887
+#: c/c-parser.cc:13896
 #, gcc-internal-format
 msgid "%<num_threads%> value must be positive"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: c/c-parser.cc:13947
+#: c/c-parser.cc:13956
 #, fuzzy, gcc-internal-format
 msgid "%<num_tasks%> value must be positive"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: c/c-parser.cc:14008 cp/semantics.cc:8404
+#: c/c-parser.cc:14017 cp/semantics.cc:8395
 #, fuzzy, gcc-internal-format
 msgid "%<grainsize%> value must be positive"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: c/c-parser.cc:14056 cp/semantics.cc:8434
+#: c/c-parser.cc:14065 cp/semantics.cc:8425
 #, fuzzy, gcc-internal-format
 msgid "%<priority%> value must be non-negative"
 msgstr "UNIT-numeron lauseessa kohdassa %L täytyy olla epänegatiivinen"
 
-#: c/c-parser.cc:14090 cp/parser.cc:37743
+#: c/c-parser.cc:14099 cp/parser.cc:37749
 #, fuzzy, gcc-internal-format
 msgid "expected constant integer expression with valid sync-hint value"
 msgstr "odotettiin kokonaislukulauseketta"
 
-#: c/c-parser.cc:14162 cp/parser.cc:37813
+#: c/c-parser.cc:14171 cp/parser.cc:37819
 #, fuzzy, gcc-internal-format
 msgid "expected %<alloc%>, %<to%>, %<from%>, %<tofrom%>, %<firstprivate%>, %<none%> or %<default%>"
 msgstr "odotettiin %<+%>, %<*%>, %<-%>, %<&%>, %<^%>, %<|%>, %<&&%>, %<||%>, %<min%> tai %<max%>"
 
-#: c/c-parser.cc:14223 cp/parser.cc:37878
+#: c/c-parser.cc:14232 cp/parser.cc:37884
 #, fuzzy, gcc-internal-format
 msgid "expected %<scalar%>, %<aggregate%> or %<pointer%>"
 msgstr "  odotettiin luokkamallia, saatiin %qT"
 
-#: c/c-parser.cc:14289 cp/parser.cc:37947
+#: c/c-parser.cc:14298 cp/parser.cc:37953
 #, fuzzy, gcc-internal-format
 msgid "too many %<defaultmap%> clauses with %qs category"
 msgstr "%s: Liian monta argumenttia\n"
 
-#: c/c-parser.cc:14292 cp/parser.cc:37950
+#: c/c-parser.cc:14301 cp/parser.cc:37956
 #, fuzzy, gcc-internal-format
 msgid "too many %<defaultmap%> clauses with unspecified category"
 msgstr "%s: Liian monta argumenttia\n"
 
-#: c/c-parser.cc:14376 cp/semantics.cc:7265 cp/semantics.cc:7318
+#: c/c-parser.cc:14385 cp/semantics.cc:7256 cp/semantics.cc:7309
 #, fuzzy, gcc-internal-format
 msgid "%qs expression must be integral"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: c/c-parser.cc:14388 c/c-parser.cc:14511 cp/semantics.cc:7297
-#: cp/semantics.cc:7332
+#: c/c-parser.cc:14397 c/c-parser.cc:14520 cp/semantics.cc:7288
+#: cp/semantics.cc:7323
 #, fuzzy, gcc-internal-format
 msgid "%qs value must be positive"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: c/c-parser.cc:14450 cp/parser.cc:37009
+#: c/c-parser.cc:14459 cp/parser.cc:37015
 #, fuzzy, gcc-internal-format
 msgid "too many %<static%> arguments"
 msgstr "%s: liian monta argumenttia\n"
 
-#: c/c-parser.cc:14484 cp/parser.cc:37042
+#: c/c-parser.cc:14493 cp/parser.cc:37048
 #, fuzzy, gcc-internal-format
 msgid "unexpected argument"
 msgstr "%qs attribuuttia ei huomioida"
 
-#: c/c-parser.cc:14651 cp/semantics.cc:8614
+#: c/c-parser.cc:14660 cp/semantics.cc:8605
 #, fuzzy, gcc-internal-format
 msgid "%<tile%> argument needs positive integral constant"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: c/c-parser.cc:14726 cp/parser.cc:38000
+#: c/c-parser.cc:14735 cp/parser.cc:38006
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<none%> or %<shared%>"
 msgid "expected %<reproducible%> or %<unconstrained%>"
 msgstr "odotettiin %<none%> tai %<shared%>"
 
-#: c/c-parser.cc:14735 c/c-parser.cc:14741 cp/parser.cc:38009
-#: cp/parser.cc:38019
+#: c/c-parser.cc:14744 c/c-parser.cc:14750 cp/parser.cc:38015
+#: cp/parser.cc:38025
 #, fuzzy, gcc-internal-format
 msgid "expected %<concurrent%>"
 msgstr "odotettiin %<none%> tai %<shared%>"
 
-#: c/c-parser.cc:14777 cp/parser.cc:38059
+#: c/c-parser.cc:14786 cp/parser.cc:38065
 #, fuzzy, gcc-internal-format
 msgid "expected %<teams%>, %<parallel%> or %<thread%>"
 msgstr "  odotettiin luokkamallia, saatiin %qT"
 
-#: c/c-parser.cc:14830 cp/parser.cc:38127
+#: c/c-parser.cc:14839 cp/parser.cc:38133
 #, fuzzy, gcc-internal-format
 msgid "ordered argument needs positive constant integer expression"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: c/c-parser.cc:14955 c/c-parser.cc:22167 cp/parser.cc:46189
+#: c/c-parser.cc:14964 c/c-parser.cc:22176 cp/parser.cc:46195
 #, fuzzy, gcc-internal-format
 msgid "expected %<+%>, %<*%>, %<-%>, %<&%>, %<^%>, %<|%>, %<&&%>, %<||%> or identifier"
 msgstr "odotettiin tunnistetta tai %<(%>"
 
-#: c/c-parser.cc:15075 cp/parser.cc:38385
+#: c/c-parser.cc:15084 cp/parser.cc:38391
 #, fuzzy, gcc-internal-format
 msgid "both %<monotonic%> and %<nonmonotonic%> modifiers specified"
 msgstr "sekä %<long%> että %<void%> esittelymääritteissä"
 
-#: c/c-parser.cc:15129 cp/parser.cc:38401
+#: c/c-parser.cc:15138 cp/parser.cc:38407
 #, gcc-internal-format
 msgid "schedule %<runtime%> does not take a %<chunk_size%> parameter"
 msgstr ""
 
-#: c/c-parser.cc:15133 cp/parser.cc:38404
+#: c/c-parser.cc:15142 cp/parser.cc:38410
 #, gcc-internal-format
 msgid "schedule %<auto%> does not take a %<chunk_size%> parameter"
 msgstr ""
 
-#: c/c-parser.cc:15145 cp/semantics.cc:7379
+#: c/c-parser.cc:15154 cp/semantics.cc:7370
 #, fuzzy, gcc-internal-format
 msgid "chunk size value must be positive"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: c/c-parser.cc:15168 cp/parser.cc:38424
+#: c/c-parser.cc:15177 cp/parser.cc:38430
 #, fuzzy, gcc-internal-format
 msgid "invalid schedule kind"
 msgstr "%qE määritelty vääränlaisena tunnisteena"
 
-#: c/c-parser.cc:15306 c/c-parser.cc:15316
+#: c/c-parser.cc:15315 c/c-parser.cc:15325
 #, fuzzy, gcc-internal-format
 msgid "%<num_teams%> value must be positive"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: c/c-parser.cc:15323 cp/semantics.cc:7346
+#: c/c-parser.cc:15332 cp/semantics.cc:7337
 #, gcc-internal-format
 msgid "%<num_teams%> lower bound %qE bigger than upper bound %qE"
 msgstr ""
 
-#: c/c-parser.cc:15371 cp/semantics.cc:7475
+#: c/c-parser.cc:15380 cp/semantics.cc:7466
 #, fuzzy, gcc-internal-format
 msgid "%<thread_limit%> value must be positive"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: c/c-parser.cc:15416 cp/semantics.cc:7603
+#: c/c-parser.cc:15425 cp/semantics.cc:7594
 #, fuzzy, gcc-internal-format
 msgid "%<aligned%> clause alignment expression must be positive constant integer expression"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: c/c-parser.cc:15526
+#: c/c-parser.cc:15535
 #, fuzzy, gcc-internal-format
 msgid "expected %<allocator%> or %<align%>"
 msgstr "odotettiin %<operator%>"
 
-#: c/c-parser.cc:15533
+#: c/c-parser.cc:15542
 #, fuzzy, gcc-internal-format
 #| msgid "duplicate %qs"
 msgid "duplicate %qs modifier"
 msgstr "kaksois-%qs"
 
-#: c/c-parser.cc:15581 cp/semantics.cc:7738
+#: c/c-parser.cc:15590 cp/semantics.cc:7729
 #, gcc-internal-format
 msgid "%<allocate%> clause allocator expression has type %qT rather than %<omp_allocator_handle_t%>"
 msgstr ""
 
-#: c/c-parser.cc:15592 cp/semantics.cc:7693 cp/semantics.cc:7709
+#: c/c-parser.cc:15601 cp/semantics.cc:7684 cp/semantics.cc:7700
 #, fuzzy, gcc-internal-format
 msgid "%<allocate%> clause %<align%> modifier argument needs to be positive constant power of two integer expression"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: c/c-parser.cc:15668
+#: c/c-parser.cc:15677
 #, fuzzy, gcc-internal-format
 msgid "%<linear%> clause step expression must be integral"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: c/c-parser.cc:15718
+#: c/c-parser.cc:15727
 #, fuzzy, gcc-internal-format
 msgid "%<safelen%> clause expression must be positive constant integer expression"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: c/c-parser.cc:15757
+#: c/c-parser.cc:15766
 #, fuzzy, gcc-internal-format
 msgid "%<simdlen%> clause expression must be positive constant integer expression"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: c/c-parser.cc:16088 cp/parser.cc:39286
+#: c/c-parser.cc:16097 cp/parser.cc:39292
 #, fuzzy, gcc-internal-format
 msgid "%<iterator%> modifier incompatible with %qs"
 msgstr "%s ei tue pituusmäärettä %qs %s"
 
-#: c/c-parser.cc:16135 cp/parser.cc:39340 cp/parser.cc:39662
-#: cp/parser.cc:39712
+#: c/c-parser.cc:16144 cp/parser.cc:39346 cp/parser.cc:39668
+#: cp/parser.cc:39718
 #, fuzzy, gcc-internal-format
 msgid "invalid depend kind"
 msgstr "%qE määritelty vääränlaisena tunnisteena"
 
-#: c/c-parser.cc:16205 cp/parser.cc:39410
+#: c/c-parser.cc:16214 cp/parser.cc:39416
 #, fuzzy, gcc-internal-format
 msgid "too many %<always%> modifiers"
 msgstr "%s: Liian monta argumenttia\n"
 
-#: c/c-parser.cc:16215 cp/parser.cc:39423
+#: c/c-parser.cc:16224 cp/parser.cc:39429
 #, fuzzy, gcc-internal-format
 msgid "too many %<close%> modifiers"
 msgstr "%s: Liian monta argumenttia\n"
 
-#: c/c-parser.cc:16223 cp/parser.cc:39434
+#: c/c-parser.cc:16232 cp/parser.cc:39440
 #, fuzzy, gcc-internal-format
-msgid "%<#pragma omp target%> with modifier other than %<always%> or %<close%>on %<map%> clause"
+msgid "%<#pragma omp target%> with modifier other than %<always%> or %<close%> on %<map%> clause"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:16251 cp/parser.cc:39465
+#: c/c-parser.cc:16260 cp/parser.cc:39471
 #, fuzzy, gcc-internal-format
 msgid "invalid map kind"
 msgstr "%qE määritelty vääränlaisena tunnisteena"
 
-#: c/c-parser.cc:16303 cp/parser.cc:39524
+#: c/c-parser.cc:16312 cp/parser.cc:39530
 #, gcc-internal-format
 msgid "%<ancestor%> device modifier not preceded by %<requires%> directive with %<reverse_offload%> clause"
 msgstr ""
 
-#: c/c-parser.cc:16315 cp/parser.cc:39535
+#: c/c-parser.cc:16324 cp/parser.cc:39541
 #, fuzzy, gcc-internal-format
 msgid "expected %<ancestor%> or %<device_num%>"
 msgstr "odotettiin %<none%> tai %<shared%>"
 
-#: c/c-parser.cc:16338 cp/semantics.cc:7500
+#: c/c-parser.cc:16347 cp/semantics.cc:7491
 #, fuzzy, gcc-internal-format
 msgid "the %<device%> clause expression must evaluate to %<1%>"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: c/c-parser.cc:16371 cp/parser.cc:39606
+#: c/c-parser.cc:16380 cp/parser.cc:39612
 #, fuzzy, gcc-internal-format
 msgid "invalid dist_schedule kind"
 msgstr "virheellinen const_double-operandi"
 
-#: c/c-parser.cc:16450
+#: c/c-parser.cc:16459
 #, fuzzy, gcc-internal-format
 msgid "invalid proc_bind kind"
 msgstr "epäkelvot operandit binääriselle %s-operaatiolle"
 
-#: c/c-parser.cc:16494
+#: c/c-parser.cc:16503
 #, fuzzy, gcc-internal-format
 msgid "expected %<host%>, %<nohost%> or %<any%>"
 msgstr "odotettiin %<,%>, %<;%> tai %<}%>"
 
-#: c/c-parser.cc:16571 cp/semantics.cc:7900
+#: c/c-parser.cc:16580 cp/semantics.cc:7891
 #, gcc-internal-format
 msgid "%<detach%> clause event handle has type %qT rather than %<omp_event_handle_t%>"
 msgstr ""
 
-#: c/c-parser.cc:16773 cp/parser.cc:39951
+#: c/c-parser.cc:16782 cp/parser.cc:39957
 #, fuzzy, gcc-internal-format
 msgid "expected %<#pragma acc%> clause"
 msgstr "odotettiin merkkijonoa ilmaisun %<#pragma message%> jälkeen"
 
-#: c/c-parser.cc:16784 c/c-parser.cc:17128 cp/parser.cc:39962
-#: cp/parser.cc:40354
+#: c/c-parser.cc:16793 c/c-parser.cc:17137 cp/parser.cc:39968
+#: cp/parser.cc:40360
 #, fuzzy, gcc-internal-format
 msgid "%qs is not valid for %qs"
 msgstr "Funktio %qs"
 
-#: c/c-parser.cc:16828 cp/parser.cc:40014
+#: c/c-parser.cc:16837 cp/parser.cc:40020
 #, gcc-internal-format
 msgid "clauses in %<simd%> trait should be separated by %<,%>"
 msgstr ""
 
-#: c/c-parser.cc:16977 cp/parser.cc:40202
+#: c/c-parser.cc:16986 cp/parser.cc:40208
 #, fuzzy, gcc-internal-format
 msgid "%qs must be the first clause of %qs"
 msgstr "käytetty sekä %<__thread%> että %qs"
 
-#: c/c-parser.cc:17117 cp/parser.cc:40343
+#: c/c-parser.cc:17126 cp/parser.cc:40349
 #, fuzzy, gcc-internal-format
 msgid "expected %<#pragma omp%> clause"
 msgstr "odotettiin merkkijonoa ilmaisun %<#pragma message%> jälkeen"
 
-#: c/c-parser.cc:17250 cp/parser.cc:44561
+#: c/c-parser.cc:17259 cp/parser.cc:44567
 #, fuzzy, gcc-internal-format
 msgid "no valid clauses specified in %<#pragma acc declare%>"
 msgstr "%Jluetellun tyypin jäsenen %qd uudelleenesittely"
 
-#: c/c-parser.cc:17260 cp/parser.cc:44571
+#: c/c-parser.cc:17269 cp/parser.cc:44577
 #, fuzzy, gcc-internal-format
 msgid "array section in %<#pragma acc declare%>"
 msgstr "%Jluetellun tyypin jäsenen %qd uudelleenesittely"
 
-#: c/c-parser.cc:17280 cp/parser.cc:44591
+#: c/c-parser.cc:17289 cp/parser.cc:44597
 #, fuzzy, gcc-internal-format
 msgid "%qD must be a global variable in %<#pragma acc declare link%>"
 msgstr "rajat määrittelemättömän taulukon epäkelpo käyttö"
 
-#: c/c-parser.cc:17291 cp/parser.cc:44602
+#: c/c-parser.cc:17300 cp/parser.cc:44608
 #, fuzzy, gcc-internal-format
 msgid "invalid OpenACC clause at file scope"
 msgstr "muuttuja tai kenttä %qs esitelty tyhjäksi"
 
-#: c/c-parser.cc:17298 cp/parser.cc:44609
+#: c/c-parser.cc:17307 cp/parser.cc:44615
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %<extern%> variable %qD in %<#pragma acc declare%>"
 msgstr "%<extern%>-muuttujan %qD esittely %<for%>-silmukan alkuesittelyssä"
 
-#: c/c-parser.cc:17306 cp/parser.cc:44617
+#: c/c-parser.cc:17315 cp/parser.cc:44623
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %<global%> variable %qD in %<#pragma acc declare%>"
 msgstr "rajat määrittelemättömän taulukon epäkelpo käyttö"
 
-#: c/c-parser.cc:17317 cp/parser.cc:44639
+#: c/c-parser.cc:17326 cp/parser.cc:44645
 #, fuzzy, gcc-internal-format
 msgid "%qD must be a variable declared in the same scope as %<#pragma acc declare%>"
 msgstr "rajat määrittelemättömän taulukon epäkelpo käyttö"
 
-#: c/c-parser.cc:17327 cp/parser.cc:44649
+#: c/c-parser.cc:17336 cp/parser.cc:44655
 #, fuzzy, gcc-internal-format
 msgid "variable %qD used more than once with %<#pragma acc declare%>"
 msgstr "%Jluetellun tyypin jäsenen %qd uudelleenesittely"
 
-#: c/c-parser.cc:17420 cp/parser.cc:44747
+#: c/c-parser.cc:17429 cp/parser.cc:44753
 #, fuzzy, gcc-internal-format
 msgid "expected %<data%> after %<#pragma acc %s%>"
 msgstr "odotettiin merkkijonoa ilmaisun %<#pragma message%> jälkeen"
 
-#: c/c-parser.cc:17436 cp/parser.cc:44764
+#: c/c-parser.cc:17445 cp/parser.cc:44770
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma acc %s data%> has no data movement clause"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:17686 cp/parser.cc:3163
+#: c/c-parser.cc:17695 cp/parser.cc:3163
 #, gcc-internal-format
 msgid "%qE has not been declared"
 msgstr "%qE on esittelemättä"
 
-#: c/c-parser.cc:17690
+#: c/c-parser.cc:17699
 #, fuzzy, gcc-internal-format
 msgid "expected function name"
 msgstr "odotettiin luokan nimeä"
 
-#: c/c-parser.cc:17708 cp/parser.cc:46982
+#: c/c-parser.cc:17717 cp/parser.cc:46988
 #, fuzzy, gcc-internal-format
 msgid "%qD does not refer to a function"
 msgstr "funktiomalli %qD esitelty uudelleen luokkamallina"
 
-#: c/c-parser.cc:17731 c/c-parser.cc:17779 cp/parser.cc:1499
+#: c/c-parser.cc:17740 c/c-parser.cc:17788 cp/parser.cc:1499
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma acc routine%> not immediately followed by function declaration or definition"
 msgstr "%Jvanhanmallinen funktiomäärittely"
 
-#: c/c-parser.cc:17771 cp/parser.cc:47033 cp/parser.cc:47080
+#: c/c-parser.cc:17780 cp/parser.cc:47039 cp/parser.cc:47086
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma acc routine%> not immediately followed by a single function declaration or definition"
 msgstr "%Jvanhanmallinen funktiomäärittely"
 
-#: c/c-parser.cc:17802 cp/parser.cc:47108
+#: c/c-parser.cc:17811 cp/parser.cc:47114
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma acc routine%> must be applied before use"
 msgstr "#pragma GCC optimize ei ole sallittu funktioiden sisällä"
 
-#: c/c-parser.cc:17803 cp/parser.cc:47110
+#: c/c-parser.cc:17812 cp/parser.cc:47116
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma acc routine%> must be applied before definition"
 msgstr "#pragma GCC optimize ei ole sallittu funktioiden sisällä"
 
-#: c/c-parser.cc:17847 cp/parser.cc:44965
+#: c/c-parser.cc:17856 cp/parser.cc:44971
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma acc update%> must contain at least one %<device%> or %<host%> or %<self%> clause"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:17902 cp/parser.cc:40440
+#: c/c-parser.cc:17911 cp/parser.cc:40446
 #, fuzzy, gcc-internal-format
 msgid "expected %<allocator%>"
 msgstr "odotettiin %<operator%>"
 
-#: c/c-parser.cc:17918
+#: c/c-parser.cc:17927
 #, gcc-internal-format
 msgid "%<allocator%> clause allocator expression has type %qT rather than %<omp_allocator_handle_t%>"
 msgstr ""
 
-#: c/c-parser.cc:17933 cp/parser.cc:40455
+#: c/c-parser.cc:17942 cp/parser.cc:40461
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp allocate%> not yet supported"
 msgstr "valitsin %qs ei ole enää tuettu"
 
-#: c/c-parser.cc:18075 cp/parser.cc:40592
+#: c/c-parser.cc:18084 cp/parser.cc:40598
 #, fuzzy, gcc-internal-format
 msgid "expected %<read%>, %<write%>, %<update%>, or %<capture%> clause"
 msgstr "odotettiin %<,%>, %<;%> tai %<}%>"
 
-#: c/c-parser.cc:18114 cp/parser.cc:40631
+#: c/c-parser.cc:18123 cp/parser.cc:40637
 #, fuzzy, gcc-internal-format
 msgid "expected %<seq_cst%>, %<acquire%> or %<relaxed%>"
 msgstr "  odotettiin luokkamallia, saatiin %qT"
 
-#: c/c-parser.cc:18138 cp/parser.cc:40660
+#: c/c-parser.cc:18147 cp/parser.cc:40666
 #, fuzzy, gcc-internal-format
 msgid "expected %<read%>, %<write%>, %<update%>, %<capture%>, %<compare%>, %<weak%>, %<fail%>, %<seq_cst%>, %<acq_rel%>, %<release%>, %<relaxed%> or %<hint%> clause"
 msgstr "odotettiin tunnistetta tai %<(%>"
 
-#: c/c-parser.cc:18153 cp/parser.cc:40675
+#: c/c-parser.cc:18162 cp/parser.cc:40681
 #, fuzzy, gcc-internal-format
 msgid "too many atomic clauses"
 msgstr "%s: liian monta arvoa"
 
-#: c/c-parser.cc:18160 cp/parser.cc:40682
+#: c/c-parser.cc:18169 cp/parser.cc:40688
 #, fuzzy, gcc-internal-format
 msgid "too many memory order clauses"
 msgstr "%s: liian monta arvoa"
 
-#: c/c-parser.cc:18198 c/c-parser.cc:18205 cp/parser.cc:40720
-#: cp/parser.cc:40727
+#: c/c-parser.cc:18207 c/c-parser.cc:18214 cp/parser.cc:40726
+#: cp/parser.cc:40733
 #, fuzzy, gcc-internal-format
 msgid "%qs clause is incompatible with %<read%> or %<write%> clauses"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:18211 c/c-parser.cc:18216 cp/parser.cc:40733
-#: cp/parser.cc:40738
+#: c/c-parser.cc:18220 c/c-parser.cc:18225 cp/parser.cc:40739
+#: cp/parser.cc:40744
 #, fuzzy, gcc-internal-format
 msgid "%qs clause requires %qs clause"
 msgstr "%qs määritelty parametrille %qE"
 
-#: c/c-parser.cc:18260 cp/parser.cc:40782
+#: c/c-parser.cc:18269 cp/parser.cc:40788
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp atomic read%> incompatible with %<release%> clause"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:18270 cp/parser.cc:40792
+#: c/c-parser.cc:18279 cp/parser.cc:40798
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp atomic write%> incompatible with %<acquire%> clause"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:18393 cp/parser.cc:40892
+#: c/c-parser.cc:18402 cp/parser.cc:40898
 #, fuzzy, gcc-internal-format
 msgid "expected %<==%> comparison in %<if%> condition"
 msgstr "Odotettiin :: TYPE-määrittelyssä kohdassa %C"
 
-#: c/c-parser.cc:18400 cp/parser.cc:40899
+#: c/c-parser.cc:18409 cp/parser.cc:40905
 #, gcc-internal-format
 msgid "expected %<==%>, %<<%> or %<>%> comparison in %<if%> condition"
 msgstr ""
 
-#: c/c-parser.cc:18473 cp/parser.cc:40964 cp/parser.cc:41245
-#: cp/parser.cc:41339 cp/parser.cc:41357
+#: c/c-parser.cc:18482 cp/parser.cc:40970 cp/parser.cc:41251
+#: cp/parser.cc:41345 cp/parser.cc:41363
 #, fuzzy, gcc-internal-format
 msgid "invalid form of %<#pragma omp atomic compare%>"
 msgstr "roskaa ilmaisun %<#pragma pack%> lopussa"
 
-#: c/c-parser.cc:18484 cp/parser.cc:40975
+#: c/c-parser.cc:18493 cp/parser.cc:40981
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<delete%>"
 msgid "unexpected %<else%>"
 msgstr "odotettiin %<delete%>"
 
-#: c/c-parser.cc:18544 cp/parser.cc:41412
+#: c/c-parser.cc:18553 cp/parser.cc:41418
 #, fuzzy, gcc-internal-format
 msgid "invalid form of %<pragma omp atomic compare%>"
 msgstr "roskaa ilmaisun %<#pragma pack%> lopussa"
 
-#: c/c-parser.cc:18816 cp/parser.cc:41266 cp/parser.cc:41292
+#: c/c-parser.cc:18825 cp/parser.cc:41272 cp/parser.cc:41298
 #, fuzzy, gcc-internal-format
 msgid "invalid form of %<#pragma omp atomic%>"
 msgstr "roskaa ilmaisun %<#pragma pack%> lopussa"
 
-#: c/c-parser.cc:18820 cp/parser.cc:41332 cp/parser.cc:41366
+#: c/c-parser.cc:18829 cp/parser.cc:41338 cp/parser.cc:41372
 #, fuzzy, gcc-internal-format
 msgid "invalid operator for %<#pragma omp atomic%>"
 msgstr "roskaa ilmaisun %<#pragma pack%> lopussa"
 
-#: c/c-parser.cc:18871 cp/parser.cc:41401
+#: c/c-parser.cc:18880 cp/parser.cc:41407
 #, gcc-internal-format
 msgid "%<weak%> clause requires atomic equality comparison"
 msgstr ""
 
-#: c/c-parser.cc:18877 cp/semantics.cc:10754 cp/semantics.cc:10764
+#: c/c-parser.cc:18886 cp/semantics.cc:10745 cp/semantics.cc:10755
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp atomic capture%> uses two different expressions for memory"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: c/c-parser.cc:18977 cp/semantics.cc:10841
+#: c/c-parser.cc:18986 cp/semantics.cc:10832
 #, fuzzy, gcc-internal-format
 msgid "%<depobj%> expression is not lvalue expression"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: c/c-parser.cc:19034 cp/parser.cc:41567
+#: c/c-parser.cc:19043 cp/parser.cc:41573
 #, fuzzy, gcc-internal-format
 msgid "expected %<in%>, %<out%>, %<inout%> or %<mutexinoutset%>"
 msgstr "käytetty %<__thread%> ennen %<extern%>:a"
 
-#: c/c-parser.cc:19046 cp/parser.cc:41583
+#: c/c-parser.cc:19055 cp/parser.cc:41589
 #, fuzzy, gcc-internal-format
 msgid "expected %<depend%>, %<destroy%> or %<update%> clause"
 msgstr "odotettiin %<,%>, %<;%> tai %<}%>"
 
-#: c/c-parser.cc:19084 cp/parser.cc:41623
+#: c/c-parser.cc:19093 cp/parser.cc:41629
 #, fuzzy, gcc-internal-format
 msgid "expected %<seq_cst%>, %<acq_rel%>, %<release%> or %<acquire%>"
 msgstr "  odotettiin luokkamallia, saatiin %qT"
 
-#: c/c-parser.cc:19092 cp/parser.cc:41631
+#: c/c-parser.cc:19101 cp/parser.cc:41637
 #, fuzzy, gcc-internal-format
 msgid "%<flush%> list specified together with memory order clause"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-parser.cc:19097
+#: c/c-parser.cc:19106
 #, gcc-internal-format
 msgid "expected %<(%> or end of line"
 msgstr "odotettiin %<(%> tai rivin loppu"
 
-#: c/c-parser.cc:19176 cp/parser.cc:42350
+#: c/c-parser.cc:19185 cp/parser.cc:42356
 #, fuzzy, gcc-internal-format
 msgid "expected %<inclusive%> or %<exclusive%> clause"
 msgstr "odotettiin %<none%> tai %<shared%>"
 
-#: c/c-parser.cc:19181 cp/parser.cc:42356
+#: c/c-parser.cc:19190 cp/parser.cc:42362
 #, fuzzy, gcc-internal-format
 msgid "expected %<#pragma omp scan%>"
 msgstr "odotettiin merkkijonoa ilmaisun %<#pragma message%> jälkeen"
 
-#: c/c-parser.cc:19237 cp/parser.cc:42407
+#: c/c-parser.cc:19246 cp/parser.cc:42413
 #, fuzzy, gcc-internal-format
 msgid "%<ordered%> clause parameter is less than %<collapse%>"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-parser.cc:19248 cp/parser.cc:42418
+#: c/c-parser.cc:19257 cp/parser.cc:42424
 #, fuzzy, gcc-internal-format
 msgid "%<linear%> clause may not be specified together with %<ordered%> clause with a parameter"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-parser.cc:19266 cp/parser.cc:42446
+#: c/c-parser.cc:19275 cp/parser.cc:42452
 #, fuzzy, gcc-internal-format
 msgid "for statement expected"
 msgstr "%s-lausetta odotettiin kohdassa %L"
 
-#: c/c-parser.cc:19344 cp/semantics.cc:10332 cp/semantics.cc:10423
+#: c/c-parser.cc:19353 cp/semantics.cc:10323 cp/semantics.cc:10414
 #, gcc-internal-format
 msgid "expected iteration declaration or initialization"
 msgstr "odotettiin iteraatioesittelyä tai -alustusta"
 
-#: c/c-parser.cc:19430
+#: c/c-parser.cc:19439
 #, fuzzy, gcc-internal-format
 msgid "not enough perfectly nested loops"
 msgstr "liian vähän argumentteja"
 
-#: c/c-parser.cc:19478 cp/parser.cc:42760
+#: c/c-parser.cc:19487 cp/parser.cc:42766
 #, fuzzy, gcc-internal-format
 msgid "collapsed loops not perfectly nested"
 msgstr "liian vähän argumentteja"
 
-#: c/c-parser.cc:19561 cp/parser.cc:42556 cp/parser.cc:42598 cp/pt.cc:18130
+#: c/c-parser.cc:19570 cp/parser.cc:42562 cp/parser.cc:42604 cp/pt.cc:18175
 #, fuzzy, gcc-internal-format
 msgid "iteration variable %qD should not be firstprivate"
 msgstr "sisäkkäisessä funktiossa käytetty rekisterimuuttujaa %qD"
 
-#: c/c-parser.cc:19697 cp/parser.cc:42881
+#: c/c-parser.cc:19706 cp/parser.cc:42887
 #, fuzzy, gcc-internal-format
 msgid "%<ordered%> clause with parameter may not be specified on %qs construct"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-parser.cc:19976 cp/parser.cc:43174
+#: c/c-parser.cc:19985 cp/parser.cc:43180
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp ordered%> with %<depend%> clause may only be used in compound statements"
 msgstr "<this%>-sanaa ei voi käyttää tässä yhteydessä"
 
-#: c/c-parser.cc:20190 cp/parser.cc:43380
+#: c/c-parser.cc:20199 cp/parser.cc:43386
 #, fuzzy, gcc-internal-format
 msgid "expected %<for%> after %qs"
 msgstr "tiedostonimi puuttuu %qs:n jälkeen"
 
 # XXXXXXX
-#: c/c-parser.cc:20532 cp/parser.cc:43724
+#: c/c-parser.cc:20541 cp/parser.cc:43730
 #, fuzzy, gcc-internal-format
 msgid "expected %<point%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/c-parser.cc:20787 cp/parser.cc:43999
+#: c/c-parser.cc:20796 cp/parser.cc:44005
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp target data%> with map-type other than %<to%>, %<from%>, %<tofrom%> or %<alloc%> on %<map%> clause"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:20803 cp/parser.cc:44015
+#: c/c-parser.cc:20812 cp/parser.cc:44021
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp target data%> must contain at least one %<map%>, %<use_device_ptr%> or %<use_device_addr%> clause"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:20851 cp/parser.cc:44247
+#: c/c-parser.cc:20860 cp/parser.cc:44253
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp target update%> must contain at least one %<from%> or %<to%> clauses"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:20925 cp/parser.cc:44098
+#: c/c-parser.cc:20934 cp/parser.cc:44104
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp target enter data%> with map-type other than %<to%> or %<alloc%> on %<map%> clause"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:20937 cp/parser.cc:44110
+#: c/c-parser.cc:20946 cp/parser.cc:44116
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp target enter data%> must contain at least one %<map%> clause"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:21012 cp/parser.cc:44190
+#: c/c-parser.cc:21021 cp/parser.cc:44196
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp target exit data%> with map-type other than %<from%>, %<release%> or %<delete%> on %<map%> clause"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:21025 cp/parser.cc:44203
+#: c/c-parser.cc:21034 cp/parser.cc:44209
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp target exit data%> must contain at least one %<map%> clause"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:21261 cp/semantics.cc:9863
+#: c/c-parser.cc:21270 cp/semantics.cc:9854
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp target%> with map-type other than %<to%>, %<from%>, %<tofrom%> or %<alloc%> on %<map%> clause"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:21318
+#: c/c-parser.cc:21327
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp declare %s%> must be followed by function declaration or definition or another %<#pragma omp declare %s%>"
 msgstr "%Jvanhanmallinen funktiomäärittely"
 
-#: c/c-parser.cc:21369 c/c-parser.cc:21397
+#: c/c-parser.cc:21378 c/c-parser.cc:21406
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp declare %s%> must be followed by function declaration or definition"
 msgstr "%Jvanhanmallinen funktiomäärittely"
 
-#: c/c-parser.cc:21436 cp/parser.cc:45115
+#: c/c-parser.cc:21445 cp/parser.cc:45121
 #, fuzzy, gcc-internal-format
 msgid "expected trait selector name"
 msgstr "%s-lausetta odotettiin kohdassa %L"
 
-#: c/c-parser.cc:21489 cp/parser.cc:45167
+#: c/c-parser.cc:21498 cp/parser.cc:45173
 #, gcc-internal-format
 msgid "selector %qs not allowed for context selector set %qs"
 msgstr ""
 
-#: c/c-parser.cc:21514 cp/parser.cc:45191
+#: c/c-parser.cc:21523 cp/parser.cc:45197
 #, fuzzy, gcc-internal-format
 msgid "selector %qs does not accept any properties"
 msgstr "%s ei tue muotoilua %<%%%c%> %s"
 
-#: c/c-parser.cc:21541 cp/parser.cc:45230 cp/pt.cc:11610
+#: c/c-parser.cc:21550 cp/parser.cc:45236 cp/pt.cc:11631
 #, fuzzy, gcc-internal-format
 msgid "score argument must be constant integer expression"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: c/c-parser.cc:21544 cp/parser.cc:45233 cp/pt.cc:11627
+#: c/c-parser.cc:21553 cp/parser.cc:45239 cp/pt.cc:11648
 #, fuzzy, gcc-internal-format
 msgid "score argument must be non-negative"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: c/c-parser.cc:21568 cp/parser.cc:45261 cp/pt.cc:11613
+#: c/c-parser.cc:21577 cp/parser.cc:45267 cp/pt.cc:11634
 #, fuzzy, gcc-internal-format
 msgid "property must be constant integer expression or string literal"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: c/c-parser.cc:21613 cp/parser.cc:45305
+#: c/c-parser.cc:21622 cp/parser.cc:45311
 #, fuzzy, gcc-internal-format
 msgid "expected identifier or string literal"
 msgstr "odotettiin merkkijonoliteraalia"
 
-#: c/c-parser.cc:21635 cp/parser.cc:45327 cp/pt.cc:11617
+#: c/c-parser.cc:21644 cp/parser.cc:45333 cp/pt.cc:11638
 #, fuzzy, gcc-internal-format
 msgid "property must be constant integer expression"
 msgstr "odotettiin kokonaislukulauseketta"
 
-#: c/c-parser.cc:21646 cp/parser.cc:45338
+#: c/c-parser.cc:21655 cp/parser.cc:45344
 #, gcc-internal-format
 msgid "properties for %<simd%> selector may not be specified in %<metadirective%>"
 msgstr ""
 
-#: c/c-parser.cc:21733 cp/parser.cc:45424
+#: c/c-parser.cc:21742 cp/parser.cc:45430
 #, fuzzy, gcc-internal-format
 msgid "expected %<construct%>, %<device%>, %<implementation%> or %<user%>"
 msgstr "käytetty %<__thread%> ennen %<extern%>:a"
 
-#: c/c-parser.cc:21808 cp/parser.cc:45538
+#: c/c-parser.cc:21817 cp/parser.cc:45544
 #, fuzzy, gcc-internal-format
 msgid "expected %<match%>"
 msgstr "  siirtyy catch-lohkoon"
 
-#: c/c-parser.cc:21828
+#: c/c-parser.cc:21837
 #, fuzzy, gcc-internal-format
 msgid "variant %qD is not a function"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: c/c-parser.cc:21834 cp/decl.cc:7778
+#: c/c-parser.cc:21843 cp/decl.cc:7902
 #, fuzzy, gcc-internal-format
 msgid "variant %qD and base %qD have incompatible types"
 msgstr "valitsimet -l ja -s eivät ole yhteensopivia"
 
-#: c/c-parser.cc:21846 cp/decl.cc:7787
+#: c/c-parser.cc:21855 cp/decl.cc:7911
 #, gcc-internal-format
 msgid "variant %qD is a built-in"
 msgstr ""
 
-#: c/c-parser.cc:21891
+#: c/c-parser.cc:21900
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp declare %s%> not immediately followed by a function declaration or definition"
 msgstr "%Jvanhanmallinen funktiomäärittely"
 
-#: c/c-parser.cc:21899 cp/parser.cc:45583
+#: c/c-parser.cc:21908 cp/parser.cc:45589
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp declare %s%> not immediately followed by a single function declaration or definition"
 msgstr "%Jvanhanmallinen funktiomäärittely"
 
-#: c/c-parser.cc:22008 cp/parser.cc:45791
+#: c/c-parser.cc:22017 cp/parser.cc:45797
 #, fuzzy, gcc-internal-format
 msgid "%qD specified both in declare target %<link%> and %<to%> clauses"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: c/c-parser.cc:22057 cp/parser.cc:45903
+#: c/c-parser.cc:22066 cp/parser.cc:45909
 #, gcc-internal-format
 msgid "directive with only %<device_type%> clauses ignored"
 msgstr ""
 
-#: c/c-parser.cc:22076 cp/parser.cc:45929
+#: c/c-parser.cc:22085 cp/parser.cc:45935
 #, fuzzy, gcc-internal-format
 msgid "expected %<target%>"
 msgstr "# Ei kohde:"
 
-#: c/c-parser.cc:22083 cp/parser.cc:45936
+#: c/c-parser.cc:22092 cp/parser.cc:45942
 #, fuzzy, gcc-internal-format
 msgid "expected %<declare%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/c-parser.cc:22089 cp/parser.cc:45943
+#: c/c-parser.cc:22098 cp/parser.cc:45949
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp end declare target%> without corresponding %<#pragma omp declare target%>"
 msgstr "%Jluetellun tyypin jäsenen %qd uudelleenesittely"
 
-#: c/c-parser.cc:22117
+#: c/c-parser.cc:22126
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp declare reduction%> not at file or block scope"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:22194
+#: c/c-parser.cc:22203
 #, fuzzy, gcc-internal-format
 msgid "predeclared arithmetic type in %<#pragma omp declare reduction%>"
 msgstr "%Jluetellun tyypin jäsenen %qd uudelleenesittely"
 
-#: c/c-parser.cc:22198
+#: c/c-parser.cc:22207
 #, fuzzy, gcc-internal-format
 msgid "function or array type in %<#pragma omp declare reduction%>"
 msgstr "edellinen esittely"
 
-#: c/c-parser.cc:22201
+#: c/c-parser.cc:22210
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> qualified type in %<#pragma omp declare reduction%>"
 msgstr "edellinen esittely"
 
-#: c/c-parser.cc:22204
+#: c/c-parser.cc:22213
 #, fuzzy, gcc-internal-format
 msgid "const, volatile or restrict qualified type in %<#pragma omp declare reduction%>"
 msgstr "edellinen esittely"
 
-#: c/c-parser.cc:22212
+#: c/c-parser.cc:22221
 #, fuzzy, gcc-internal-format
 msgid "redeclaration of %qs %<#pragma omp declare reduction%> for type %qT"
 msgstr "%Jluetellun tyypin jäsenen %qd uudelleenesittely"
 
-#: c/c-parser.cc:22221
+#: c/c-parser.cc:22230
 #, fuzzy, gcc-internal-format
 msgid "previous %<#pragma omp declare reduction%>"
 msgstr "edellinen esittely"
 
-#: c/c-parser.cc:22338
+#: c/c-parser.cc:22347
 #, fuzzy, gcc-internal-format
 msgid "expected %<omp_priv%> or function-name"
 msgstr "odotettiin %<(%> tai rivin loppu"
 
-#: c/c-parser.cc:22349
+#: c/c-parser.cc:22358
 #, fuzzy, gcc-internal-format
 msgid "expected function-name %<(%>"
 msgstr "odotettiin luokan nimeä"
 
-#: c/c-parser.cc:22368
+#: c/c-parser.cc:22377
 #, gcc-internal-format
 msgid "one of the initializer call arguments should be %<&omp_priv%>"
 msgstr ""
 
-#: c/c-parser.cc:22499 cp/parser.cc:46431
+#: c/c-parser.cc:22508 cp/parser.cc:46437
 #, fuzzy, gcc-internal-format
 msgid "expected %<simd%>, %<reduction%>, %<target%> or %<variant%>"
 msgstr "%qs määrittää %<auto%>:n tiedostoalue-esittelyssä"
 
-#: c/c-parser.cc:22566 cp/parser.cc:46497
+#: c/c-parser.cc:22575 cp/parser.cc:46503
 #, fuzzy, gcc-internal-format
 msgid "expected %<seq_cst%>, %<relaxed%> or %<acq_rel%>"
 msgstr "  odotettiin luokkamallia, saatiin %qT"
 
-#: c/c-parser.cc:22595 cp/parser.cc:46532
+#: c/c-parser.cc:22604 cp/parser.cc:46538
 #, gcc-internal-format
 msgid "expected %<unified_address%>, %<unified_shared_memory%>, %<dynamic_allocators%>, %<reverse_offload%> or %<atomic_default_mem_order%> clause"
 msgstr ""
 
-#: c/c-parser.cc:22604 cp/parser.cc:46541
+#: c/c-parser.cc:22613 cp/parser.cc:46547
 #, fuzzy, gcc-internal-format
 msgid "%qs clause on %<requires%> directive not supported yet"
 msgstr "-pipe ei ole tuettu"
 
-#: c/c-parser.cc:22616 cp/parser.cc:46553
+#: c/c-parser.cc:22625 cp/parser.cc:46559
 #, gcc-internal-format
 msgid "%qs clause used lexically after first target construct or offloading API"
 msgstr ""
 
-#: c/c-parser.cc:22628 cp/parser.cc:46565
+#: c/c-parser.cc:22637 cp/parser.cc:46571
 #, gcc-internal-format
 msgid "more than one %<atomic_default_mem_order%> clause in a single compilation unit"
 msgstr ""
 
-#: c/c-parser.cc:22637 cp/parser.cc:46574
+#: c/c-parser.cc:22646 cp/parser.cc:46580
 #, gcc-internal-format
 msgid "%<atomic_default_mem_order%> clause used lexically after first %<atomic%> construct without memory order clause"
 msgstr ""
 
-#: c/c-parser.cc:22651 cp/parser.cc:46588
+#: c/c-parser.cc:22660 cp/parser.cc:46594
 #, fuzzy, gcc-internal-format
 msgid "%<pragma omp requires%> requires at least one clause"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-parser.cc:22670
+#: c/c-parser.cc:22679
 #, fuzzy, gcc-internal-format
 msgid "zero sized type %qT in %<reduction%> clause"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: c/c-parser.cc:22676
+#: c/c-parser.cc:22685
 #, fuzzy, gcc-internal-format
 msgid "variable sized type %qT in %<reduction%> clause"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: c/c-parser.cc:22837 cp/parser.cc:46650
+#: c/c-parser.cc:22846 cp/parser.cc:46656
 #, fuzzy, gcc-internal-format
 msgid "expected %<at%>, %<severity%> or %<message%> clause"
 msgstr "odotettiin %<,%>, %<;%> tai %<}%>"
 
-#: c/c-parser.cc:22870 cp/parser.cc:46685
+#: c/c-parser.cc:22879 cp/parser.cc:46691
 #, fuzzy, gcc-internal-format
 msgid "expected %qs or %qs"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/c-parser.cc:22927 cp/parser.cc:46747
+#: c/c-parser.cc:22936 cp/parser.cc:46753
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp error%> with %<at(execution)%> clause may only be used in compound statements"
 msgstr "<this%>-sanaa ei voi käyttää tässä yhteydessä"
 
-#: c/c-parser.cc:22950 cp/parser.cc:46774
+#: c/c-parser.cc:22959 cp/parser.cc:46780
 #, fuzzy, gcc-internal-format
 msgid "%<pragma omp error%> encountered: %s"
 msgstr "valitsin %qs ei ole enää tuettu"
 
-#: c/c-parser.cc:22953 cp/parser.cc:46777
+#: c/c-parser.cc:22962 cp/parser.cc:46783
 #, fuzzy, gcc-internal-format
 msgid "%<pragma omp error%> encountered"
 msgstr "valitsin %qs ei ole enää tuettu"
 
-#: c/c-parser.cc:23100 cp/semantics.cc:9238
+#: c/c-parser.cc:23109 cp/semantics.cc:9229
 #, fuzzy, gcc-internal-format
 msgid "%qE declared %<threadprivate%> after first use"
 msgstr "%J%qD esitelty avoimeksi kutsumisen jälkeen"
 
-#: c/c-parser.cc:23102 cp/semantics.cc:9240
+#: c/c-parser.cc:23111 cp/semantics.cc:9231
 #, gcc-internal-format
 msgid "automatic variable %qE cannot be %<threadprivate%>"
 msgstr "automaattimuuttuja %qE ei voi olla %<threadprivate%>"
 
-#: c/c-parser.cc:23106 cp/semantics.cc:9242
+#: c/c-parser.cc:23115 cp/semantics.cc:9233
 #, fuzzy, gcc-internal-format
 msgid "%<threadprivate%> %qE has incomplete type"
 msgstr "parametrilla %u in vaillinainen tyyppi"
 
-#: c/c-parser.cc:23285 cp/parser.cc:47513
+#: c/c-parser.cc:23294 cp/parser.cc:47519
 #, fuzzy, gcc-internal-format
 msgid "%<__transaction_cancel%> without transactional memory support enabled"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/c-parser.cc:23291 cp/parser.cc:47519
+#: c/c-parser.cc:23300 cp/parser.cc:47525
 #, fuzzy, gcc-internal-format
 msgid "%<__transaction_cancel%> within a %<__transaction_relaxed%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/c-parser.cc:23300
+#: c/c-parser.cc:23309
 #, fuzzy, gcc-internal-format
 msgid "outer %<__transaction_cancel%> not within outer %<__transaction_atomic%> or a %<transaction_may_cancel_outer%> function"
 msgstr "Käyttö: %s <transaktiotiedosto> <tiedostojärjestelmä>\n"
 
-#: c/c-parser.cc:23308 cp/parser.cc:47537
+#: c/c-parser.cc:23317 cp/parser.cc:47543
 #, fuzzy, gcc-internal-format
 msgid "%<__transaction_cancel%> not within %<__transaction_atomic%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/c-parser.cc:23392
+#: c/c-parser.cc:23401
 #, fuzzy, gcc-internal-format
 msgid "no closing brace"
 msgstr "          %s"
@@ -45980,7 +46105,7 @@ msgstr "          %s"
 msgid "%qD has an incomplete type %qT"
 msgstr "%2$qD:n parametrilla %1$P on vaillinainen tyyppi %3$qT"
 
-#: c/c-typeck.cc:242 c/c-typeck.cc:10732 c/c-typeck.cc:10774 cp/call.cc:4659
+#: c/c-typeck.cc:242 c/c-typeck.cc:10734 c/c-typeck.cc:10776 cp/call.cc:4659
 #, gcc-internal-format
 msgid "invalid use of void expression"
 msgstr "void-lausekkeen epäkelpo käyttö"
@@ -46062,12 +46187,12 @@ msgstr "funktion paluuarvojen tyypit eivät ole yhteensopivia %<volatile%>:n tak
 msgid "converting an array compound literal to a pointer is ill-formed in C++"
 msgstr "tyypin määritteleminen tyyppimuunnoksessa on virheellistä C++-kielessä"
 
-#: c/c-typeck.cc:2505 c/c-typeck.cc:9287
+#: c/c-typeck.cc:2505 c/c-typeck.cc:9289
 #, fuzzy, gcc-internal-format
 msgid "%qT has no member named %qE; did you mean %qE?"
 msgstr "tyypillä %qT ei ole %qE-nimistä jäsentä"
 
-#: c/c-typeck.cc:2509 c/c-typeck.cc:9291
+#: c/c-typeck.cc:2509 c/c-typeck.cc:9293
 #, gcc-internal-format
 msgid "%qT has no member named %qE"
 msgstr "tyypillä %qT ei ole %qE-nimistä jäsentä"
@@ -46102,7 +46227,7 @@ msgstr "%<void *%>-tyyppistä osoitinta käytetty laskutoimituksessa"
 msgid "subscripted value is neither array nor pointer nor vector"
 msgstr "indeksoitu arvo ei ole taulukko eikä osoitin"
 
-#: c/c-typeck.cc:2702 cp/typeck.cc:3829 cp/typeck.cc:3922
+#: c/c-typeck.cc:2702 cp/typeck.cc:3838 cp/typeck.cc:3931
 #, gcc-internal-format
 msgid "array subscript is not an integer"
 msgstr "taulukon indeksi ei ole kokonaisluku"
@@ -46127,7 +46252,7 @@ msgstr "ISO C kieltää %<register%>-taulukon indeksoinnin"
 msgid "enum constant defined here"
 msgstr "lueteltu tyyppi määritelty täällä"
 
-#: c/c-typeck.cc:2988 cp/typeck.cc:1982
+#: c/c-typeck.cc:2988 cp/typeck.cc:1989
 #, gcc-internal-format
 msgid "%<sizeof%> on array function parameter %qE will return size of %qT"
 msgstr ""
@@ -46240,17 +46365,17 @@ msgstr "muunnos tyypistä %qT tyyppiin %qT on moniselitteinen"
 msgid "too few arguments to built-in function %qE expecting %u"
 msgstr "liian vähän argumentteja funktiolle %qE"
 
-#: c/c-typeck.cc:3916 c/c-typeck.cc:3944 cp/typeck.cc:5434 cp/typeck.cc:5710
+#: c/c-typeck.cc:3916 c/c-typeck.cc:3944 cp/typeck.cc:5444 cp/typeck.cc:5720
 #, gcc-internal-format
 msgid "comparison with string literal results in unspecified behavior"
 msgstr "vertailu merkkijonoliteraalin kanssa aiheuttaa määrittelemätöntä toimintaa"
 
-#: c/c-typeck.cc:3924 c/c-typeck.cc:3935 cp/typeck.cc:5466 cp/typeck.cc:5490
+#: c/c-typeck.cc:3924 c/c-typeck.cc:3935 cp/typeck.cc:5476 cp/typeck.cc:5500
 #, fuzzy, gcc-internal-format
 msgid "comparison between pointer and zero character constant"
 msgstr "osoittimen ja kokonaisluvun välinen vertailu"
 
-#: c/c-typeck.cc:3927 c/c-typeck.cc:3938 cp/typeck.cc:5469 cp/typeck.cc:5493
+#: c/c-typeck.cc:3927 c/c-typeck.cc:3938 cp/typeck.cc:5479 cp/typeck.cc:5503
 #, fuzzy, gcc-internal-format
 msgid "did you mean to dereference the pointer?"
 msgstr "oliko tarkoitus käyttää loogista negaatiota?"
@@ -46276,7 +46401,7 @@ msgstr "vähennyslaskussa käytetty osoitinta funktioon"
 msgid "arithmetic on pointer to an incomplete type"
 msgstr "%<void *%>-tyyppistä osoitinta käytetty laskutoimituksessa"
 
-#: c/c-typeck.cc:4062 cp/typeck.cc:6449
+#: c/c-typeck.cc:4062 cp/typeck.cc:6459
 #, fuzzy, gcc-internal-format
 msgid "arithmetic on pointer to an empty aggregate"
 msgstr "funktio-osoitinta käytetty laskutoimituksessa"
@@ -46481,7 +46606,7 @@ msgstr "%qD esiteltiin täällä"
 msgid "left-hand operand of comma expression has no effect"
 msgstr "pilkkulausekkeen vasemmalla operandilla ei ole vaikutusta"
 
-#: c/c-typeck.cc:5730 c/c-typeck.cc:11307
+#: c/c-typeck.cc:5730 c/c-typeck.cc:11309
 #, fuzzy, gcc-internal-format
 msgid "right-hand operand of comma expression has no effect"
 msgstr "pilkkulausekkeen vasemmalla operandilla ei ole vaikutusta"
@@ -46556,7 +46681,7 @@ msgstr "tyyppimuunnos osoittimesta erikokoiseen kokonaislukuun"
 msgid "cast from function call of type %qT to non-matching type %qT"
 msgstr "tyyppimuunnos %qT-tyyppisestä funktiokutsusta yhteensopimattomaan tyyppiin %qT"
 
-#: c/c-typeck.cc:6077 cp/typeck.cc:8815
+#: c/c-typeck.cc:6077 cp/typeck.cc:8829
 #, gcc-internal-format
 msgid "cast to pointer from integer of different size"
 msgstr "tyyppimuunnos erikokoisesta kokonaisluvusta osoittimeksi"
@@ -46728,7 +46853,7 @@ msgstr "funktio on ehkä mahdollinen ehdokas %qs-muotoiluattribuutille"
 msgid "initialization left-hand side might be a candidate for a format attribute"
 msgstr "funktio on ehkä mahdollinen ehdokas %qs-muotoiluattribuutille"
 
-#: c/c-typeck.cc:7317 cp/typeck.cc:9935
+#: c/c-typeck.cc:7317 cp/typeck.cc:9949
 #, fuzzy, gcc-internal-format
 msgid "return type might be a candidate for a format attribute"
 msgstr "funktio on ehkä mahdollinen ehdokas %qs-muotoiluattribuutille"
@@ -46898,7 +47023,7 @@ msgstr "yhteensopimattomat tyypit alustettaessa tyyppiä %qT käyttäen tyyppiä
 msgid "traditional C rejects automatic aggregate initialization"
 msgstr "perinteinen C ei hyväksy automaattista koostealustusta"
 
-#: c/c-typeck.cc:8027 c/c-typeck.cc:8924 cp/typeck2.cc:1189
+#: c/c-typeck.cc:8027 c/c-typeck.cc:8926 cp/typeck2.cc:1189
 #, gcc-internal-format
 msgid "initialization of a flexible array member"
 msgstr "joustavan taulukkojäsenen alustus"
@@ -46913,13 +47038,13 @@ msgstr "alustus yhteensopimattomasta osoitintyypistä"
 msgid "array of inappropriate type initialized from string constant"
 msgstr "sopimattomasta tyypistä koostuva taulukko alustetaan merkkijonovakiosta"
 
-#: c/c-typeck.cc:8151 cp/typeck.cc:2371
+#: c/c-typeck.cc:8151 cp/typeck.cc:2380
 #, fuzzy, gcc-internal-format
 msgid "invalid use of non-lvalue array"
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
 #: c/c-typeck.cc:8170 c/c-typeck.cc:8194 c/c-typeck.cc:8197 c/c-typeck.cc:8205
-#: c/c-typeck.cc:8248 c/c-typeck.cc:9777 c/c-typeck.cc:9827
+#: c/c-typeck.cc:8248 c/c-typeck.cc:9779 c/c-typeck.cc:9829
 #, gcc-internal-format
 msgid "initializer element is not constant"
 msgstr "alustusalkio ei ole vakio"
@@ -46929,12 +47054,12 @@ msgstr "alustusalkio ei ole vakio"
 msgid "array initialized from non-constant array expression"
 msgstr "taulukko alustetaan muuttuvasta taulukkolausekkeesta"
 
-#: c/c-typeck.cc:8210 c/c-typeck.cc:8261 c/c-typeck.cc:9837
+#: c/c-typeck.cc:8210 c/c-typeck.cc:8261 c/c-typeck.cc:9839
 #, gcc-internal-format
 msgid "initializer element is not a constant expression"
 msgstr "alustinalkio ei ole vakiolauseke"
 
-#: c/c-typeck.cc:8255 c/c-typeck.cc:9832
+#: c/c-typeck.cc:8255 c/c-typeck.cc:9834
 #, gcc-internal-format
 msgid "initializer element is not computable at load time"
 msgstr "alustusalkiota ei pystytä laskemaan latausajankohtana"
@@ -46944,848 +47069,848 @@ msgstr "alustusalkiota ei pystytä laskemaan latausajankohtana"
 msgid "invalid initializer"
 msgstr "epäkelpo alustin"
 
-#: c/c-typeck.cc:8552 cp/decl.cc:7171
+#: c/c-typeck.cc:8555 cp/decl.cc:7291
 #, gcc-internal-format
 msgid "opaque vector types cannot be initialized"
 msgstr "läpinäkymättömiä vektorityyppejä ei voida alustaa"
 
-#: c/c-typeck.cc:8772
+#: c/c-typeck.cc:8774
 #, gcc-internal-format
 msgid "extra brace group at end of initializer"
 msgstr "alustimen lopussa on ylimääräinen lohko"
 
-#: c/c-typeck.cc:8855
+#: c/c-typeck.cc:8857
 #, gcc-internal-format
 msgid "braces around scalar initializer"
 msgstr "skalaarialustimen ympärillä on aaltosulkeet"
 
-#: c/c-typeck.cc:8921 c/c-typeck.cc:10360 cp/typeck2.cc:1216
-#: cp/typeck2.cc:1476
+#: c/c-typeck.cc:8923 c/c-typeck.cc:10362 cp/typeck2.cc:1216
+#: cp/typeck2.cc:1481
 #, gcc-internal-format
 msgid "initialization of flexible array member in a nested context"
 msgstr "joustavan taulukkojäsenen alustaminen sisäkkäisessä asiayhteydessä"
 
-#: c/c-typeck.cc:8958
+#: c/c-typeck.cc:8960
 #, gcc-internal-format
 msgid "missing braces around initializer"
 msgstr "alustimen ympäriltä puuttuu aaltosulkeet"
 
-#: c/c-typeck.cc:8981
+#: c/c-typeck.cc:8983
 #, fuzzy, gcc-internal-format
 msgid "missing initializer for field %qD of %qT"
 msgstr "puuttuva alustin jäsenelle %qD"
 
-#: c/c-typeck.cc:9005
+#: c/c-typeck.cc:9007
 #, gcc-internal-format
 msgid "empty scalar initializer"
 msgstr "tyhjä skalaarialustin"
 
-#: c/c-typeck.cc:9010
+#: c/c-typeck.cc:9012
 #, gcc-internal-format
 msgid "extra elements in scalar initializer"
 msgstr "skalaarialustimessa ylimääräisiä alkioita"
 
-#: c/c-typeck.cc:9129 c/c-typeck.cc:9211
+#: c/c-typeck.cc:9131 c/c-typeck.cc:9213
 #, gcc-internal-format
 msgid "array index in non-array initializer"
 msgstr "taulukkoindeksi ei-taulukkoalustimessa"
 
-#: c/c-typeck.cc:9134 c/c-typeck.cc:9273
+#: c/c-typeck.cc:9136 c/c-typeck.cc:9275
 #, fuzzy, gcc-internal-format
 msgid "field name not in record or union initializer"
 msgstr "ylimääräisiä alkioita union-alustimessa"
 
-#: c/c-typeck.cc:9184
+#: c/c-typeck.cc:9186
 #, gcc-internal-format
 msgid "array index in initializer not of integer type"
 msgstr "taulukkoindeksi alustimessa ei ole kokonaislukutyyppinen"
 
-#: c/c-typeck.cc:9193 c/c-typeck.cc:9202
+#: c/c-typeck.cc:9195 c/c-typeck.cc:9204
 #, gcc-internal-format
 msgid "array index in initializer is not an integer constant expression"
 msgstr "taulukkoindeksi alustimessa ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: c/c-typeck.cc:9207 c/c-typeck.cc:9209
+#: c/c-typeck.cc:9209 c/c-typeck.cc:9211
 #, gcc-internal-format
 msgid "nonconstant array index in initializer"
 msgstr "ei-vakio taulukkoindeksi alustimessa"
 
-#: c/c-typeck.cc:9213 c/c-typeck.cc:9216
+#: c/c-typeck.cc:9215 c/c-typeck.cc:9218
 #, gcc-internal-format
 msgid "array index in initializer exceeds array bounds"
 msgstr "taulukkoindeksi alustimessa ylittää taulukon rajat"
 
-#: c/c-typeck.cc:9235
+#: c/c-typeck.cc:9237
 #, gcc-internal-format
 msgid "empty index range in initializer"
 msgstr "tyhjä indeksiväli alustimessa"
 
-#: c/c-typeck.cc:9244
+#: c/c-typeck.cc:9246
 #, gcc-internal-format
 msgid "array index range in initializer exceeds array bounds"
 msgstr "taulukkoindeksiväli alustimessa ylittää taulukon rajat"
 
-#: c/c-typeck.cc:9346 c/c-typeck.cc:9376 c/c-typeck.cc:9920
+#: c/c-typeck.cc:9348 c/c-typeck.cc:9378 c/c-typeck.cc:9922
 #, fuzzy, gcc-internal-format
 msgid "initialized field with side-effects overwritten"
 msgstr "alustettu kenttä ylikirjoitettu"
 
-#: c/c-typeck.cc:9350 c/c-typeck.cc:9380 c/c-typeck.cc:9923
+#: c/c-typeck.cc:9352 c/c-typeck.cc:9382 c/c-typeck.cc:9925
 #, gcc-internal-format
 msgid "initialized field overwritten"
 msgstr "alustettu kenttä ylikirjoitettu"
 
-#: c/c-typeck.cc:9854
+#: c/c-typeck.cc:9856
 #, gcc-internal-format
 msgid "enum conversion in initialization is invalid in C++"
 msgstr "enum-muunnos alustuksessa on virheellistä C++-kielessä"
 
-#: c/c-typeck.cc:10235
+#: c/c-typeck.cc:10237
 #, fuzzy, gcc-internal-format
 msgid "excess elements in %<char%> array initializer"
 msgstr "ylimääräisiä alkioita merkkitaulukkoalustimessa"
 
-#: c/c-typeck.cc:10242 c/c-typeck.cc:10319
+#: c/c-typeck.cc:10244 c/c-typeck.cc:10321
 #, gcc-internal-format
 msgid "excess elements in struct initializer"
 msgstr "ylimääräisiä alkioita struct-alustimessa"
 
-#: c/c-typeck.cc:10263
+#: c/c-typeck.cc:10265
 #, fuzzy, gcc-internal-format
 msgid "positional initialization of field in %<struct%> declared with %<designated_init%> attribute"
 msgstr "Varoita mahdollisesti puuttuvista aaltosuluista alustimissa"
 
-#: c/c-typeck.cc:10334 cp/typeck2.cc:1193
+#: c/c-typeck.cc:10336 cp/typeck2.cc:1193
 #, gcc-internal-format
 msgid "non-static initialization of a flexible array member"
 msgstr "joustavan taulukkojäsenen ei-staattinen alustus"
 
-#: c/c-typeck.cc:10429
+#: c/c-typeck.cc:10431
 #, gcc-internal-format
 msgid "excess elements in union initializer"
 msgstr "ylimääräisiä alkioita union-alustimessa"
 
-#: c/c-typeck.cc:10451
+#: c/c-typeck.cc:10453
 #, gcc-internal-format
 msgid "traditional C rejects initialization of unions"
 msgstr "perinteinen C ei hyväksy unionien alustusta"
 
-#: c/c-typeck.cc:10513
+#: c/c-typeck.cc:10515
 #, gcc-internal-format
 msgid "excess elements in array initializer"
 msgstr "ylimääräisiä alkioita taulukkoalustimessa"
 
-#: c/c-typeck.cc:10547
+#: c/c-typeck.cc:10549
 #, gcc-internal-format
 msgid "excess elements in vector initializer"
 msgstr "ylimääräisiä alkioita vektorialustimessa"
 
-#: c/c-typeck.cc:10579
+#: c/c-typeck.cc:10581
 #, gcc-internal-format
 msgid "excess elements in scalar initializer"
 msgstr "ylimääräisiä alkioita skalaarialustimessa"
 
-#: c/c-typeck.cc:10822
+#: c/c-typeck.cc:10824
 #, fuzzy, gcc-internal-format
 msgid "ISO C forbids %<goto *expr;%>"
 msgstr "ISO C90 kieltää yhdysliteraalit"
 
-#: c/c-typeck.cc:10828
+#: c/c-typeck.cc:10830
 #, fuzzy, gcc-internal-format
 msgid "computed goto must be pointer type"
 msgstr "annettu yhteensopimatonta osoitintyyppiä oleva %d. argumentti funktiolle %qE"
 
-#: c/c-typeck.cc:10857 c/gimple-parser.cc:2434 cp/typeck.cc:10427
+#: c/c-typeck.cc:10859 c/gimple-parser.cc:2456 cp/typeck.cc:10441
 #, gcc-internal-format
 msgid "function declared %<noreturn%> has a %<return%> statement"
 msgstr "%<noreturn%>-esitellyllä funktiolla on %<return%>-lause"
 
-#: c/c-typeck.cc:10885 c/c-typeck.cc:10889
+#: c/c-typeck.cc:10887 c/c-typeck.cc:10891
 #, gcc-internal-format
 msgid "%<return%> with no value, in function returning non-void"
 msgstr "%<return%> ilman arvoa ei-voidin palauttavassa funktiossa"
 
-#: c/c-typeck.cc:10903 c/gimple-parser.cc:2444
+#: c/c-typeck.cc:10905 c/gimple-parser.cc:2466
 #, gcc-internal-format
 msgid "%<return%> with a value, in function returning void"
 msgstr "%<return%> arvon kanssa voidin palauttavassa funktiossa"
 
-#: c/c-typeck.cc:10906
+#: c/c-typeck.cc:10908
 #, gcc-internal-format
 msgid "ISO C forbids %<return%> with expression, in function returning void"
 msgstr "ISO C kieltää %<return%>:in lausekkeen kanssa voidin palauttavassa funktiossa"
 
-#: c/c-typeck.cc:10983
+#: c/c-typeck.cc:10985
 #, fuzzy, gcc-internal-format
 msgid "function returns address of label"
 msgstr "funktio palauttaa osoitteen paikalliseen muuttujaan"
 
-#: c/c-typeck.cc:11074 cp/semantics.cc:1495
+#: c/c-typeck.cc:11076 cp/semantics.cc:1495
 #, fuzzy, gcc-internal-format
 msgid "switch quantity not an integer"
 msgstr "yhteensopivuusvalitsin (jätetään huomiotta)"
 
-#: c/c-typeck.cc:11099
+#: c/c-typeck.cc:11101
 #, gcc-internal-format
 msgid "%<long%> switch expression not converted to %<int%> in ISO C"
 msgstr "%<long%>-tyyppistä switch-lauseketta ei muunneta %<int%>-tyyppiin ISO C:ssä"
 
-#: c/c-typeck.cc:11137 c/c-typeck.cc:11145
+#: c/c-typeck.cc:11139 c/c-typeck.cc:11147
 #, gcc-internal-format
 msgid "case label is not an integer constant expression"
 msgstr "case-nimiö ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: c/c-typeck.cc:11151 cp/parser.cc:12644
+#: c/c-typeck.cc:11153 cp/parser.cc:12638
 #, fuzzy, gcc-internal-format
 msgid "case label not within a switch statement"
 msgstr "break-lause silmukan tai switch-rakenteen ulkopuolella"
 
-#: c/c-typeck.cc:11153
+#: c/c-typeck.cc:11155
 #, fuzzy, gcc-internal-format
 msgid "%<default%> label not within a switch statement"
 msgstr "break-lause silmukan tai switch-rakenteen ulkopuolella"
 
-#: c/c-typeck.cc:11229 cp/parser.cc:14249
+#: c/c-typeck.cc:11231 cp/parser.cc:14243
 #, gcc-internal-format
 msgid "break statement not within loop or switch"
 msgstr "break-lause silmukan tai switch-rakenteen ulkopuolella"
 
-#: c/c-typeck.cc:11232 c/c-typeck.cc:11252 cp/decl.cc:3675 cp/parser.cc:14259
-#: cp/parser.cc:14280
+#: c/c-typeck.cc:11234 c/c-typeck.cc:11254 cp/decl.cc:3731 cp/parser.cc:14253
+#: cp/parser.cc:14274
 #, fuzzy, gcc-internal-format
 msgid "invalid exit from OpenMP structured block"
 msgstr "%qs-attribuutin virheellinen argumentti"
 
-#: c/c-typeck.cc:11235 cp/parser.cc:14262
+#: c/c-typeck.cc:11237 cp/parser.cc:14256
 #, fuzzy, gcc-internal-format
 msgid "break statement used with OpenMP for loop"
 msgstr "break-lause silmukan tai switch-rakenteen ulkopuolella"
 
-#: c/c-typeck.cc:11249 cp/parser.cc:14272
+#: c/c-typeck.cc:11251 cp/parser.cc:14266
 #, gcc-internal-format
 msgid "continue statement not within a loop"
 msgstr "continue-lause silmukan ulkopuolella"
 
-#: c/c-typeck.cc:11289 cp/cp-gimplify.cc:228
+#: c/c-typeck.cc:11291 cp/cp-gimplify.cc:229
 #, gcc-internal-format
 msgid "statement with no effect"
 msgstr "lauseella ei ole vaikutusta"
 
-#: c/c-typeck.cc:11333
+#: c/c-typeck.cc:11335
 #, fuzzy, gcc-internal-format
 msgid "expression statement has incomplete type"
 msgstr "nimettömällä kentällä on vaillinainen tyyppi"
 
-#: c/c-typeck.cc:11624
+#: c/c-typeck.cc:11626
 #, fuzzy, gcc-internal-format
 msgid "the comparison will always evaluate as %<false%> for the pointer operand in %qE must not be NULL"
 msgstr "%qD:n osoite ei tule koskaan olemaan NULL"
 
-#: c/c-typeck.cc:11629
+#: c/c-typeck.cc:11631
 #, fuzzy, gcc-internal-format
 msgid "the comparison will always evaluate as %<true%> for the pointer operand in %qE must not be NULL"
 msgstr "%qD:n osoite ei tule koskaan olemaan NULL"
 
-#: c/c-typeck.cc:11647 c/c-typeck.cc:11684
+#: c/c-typeck.cc:11649 c/c-typeck.cc:11686
 #, fuzzy, gcc-internal-format
 msgid "the comparison will always evaluate as %<false%> for the address of %qE will never be NULL"
 msgstr "%qD:n osoite ei tule koskaan olemaan NULL"
 
-#: c/c-typeck.cc:11652 c/c-typeck.cc:11689
+#: c/c-typeck.cc:11654 c/c-typeck.cc:11691
 #, fuzzy, gcc-internal-format
 msgid "the comparison will always evaluate as %<true%> for the address of %qE will never be NULL"
 msgstr "%qD:n osoite ei tule koskaan olemaan NULL"
 
-#: c/c-typeck.cc:12274 c/c-typeck.cc:12410 cp/typeck.cc:5732
+#: c/c-typeck.cc:12277 c/c-typeck.cc:12413 cp/typeck.cc:5742
 #, fuzzy, gcc-internal-format
 msgid "comparing vectors with different element types"
 msgstr "Varoita eri enum-tyyppien vertailusta"
 
-#: c/c-typeck.cc:12282 c/c-typeck.cc:12418 cp/typeck.cc:5745
+#: c/c-typeck.cc:12285 c/c-typeck.cc:12421 cp/typeck.cc:5755
 #, fuzzy, gcc-internal-format
 msgid "comparing vectors with different number of elements"
 msgstr "Varoita eri enum-tyyppien vertailusta"
 
-#: c/c-typeck.cc:12297 c/c-typeck.cc:12433 cp/typeck.cc:5763
+#: c/c-typeck.cc:12300 c/c-typeck.cc:12436 cp/typeck.cc:5773
 #, gcc-internal-format
 msgid "comparison between types %qT and %qT"
 msgstr "tyyppien %qT ja %qT välinen vertailu"
 
-#: c/c-typeck.cc:12307 c/c-typeck.cc:12443 cp/typeck.cc:5780
+#: c/c-typeck.cc:12310 c/c-typeck.cc:12446 cp/typeck.cc:5790
 #, fuzzy, gcc-internal-format
 msgid "could not find an integer type of the same size as %qT"
 msgstr "%qD esitelty extern-avainsanalla sisäkkäin"
 
-#: c/c-typeck.cc:12321 cp/typeck.cc:5423
+#: c/c-typeck.cc:12324 cp/typeck.cc:5433
 #, fuzzy, gcc-internal-format
 msgid "comparing floating-point with %<==%> or %<!=%> is unsafe"
 msgstr "liukulukujen vertailu operaattoreilla == ja != on epävarmaa"
 
-#: c/c-typeck.cc:12355 c/c-typeck.cc:12484
+#: c/c-typeck.cc:12358 c/c-typeck.cc:12487
 #, fuzzy, gcc-internal-format
 msgid "comparison of pointers to disjoint address spaces"
 msgstr "osoittimen ja kokonaisluku nollan suuruusvertailu"
 
-#: c/c-typeck.cc:12362 c/c-typeck.cc:12368
+#: c/c-typeck.cc:12365 c/c-typeck.cc:12371
 #, gcc-internal-format
 msgid "ISO C forbids comparison of %<void *%> with function pointer"
 msgstr "ISO C kieltää %<void *%>:n ja funktio-osoittimen vertailun"
 
-#: c/c-typeck.cc:12375 c/c-typeck.cc:12494
+#: c/c-typeck.cc:12378 c/c-typeck.cc:12497
 #, fuzzy, gcc-internal-format
 msgid "comparison of distinct pointer types lacks a cast"
 msgstr "erilaisten Objective-C-tyyppien vertailusta puuttuu tyyppimuunnos"
 
-#: c/c-typeck.cc:12387 c/c-typeck.cc:12392 c/c-typeck.cc:12520
-#: c/c-typeck.cc:12525
+#: c/c-typeck.cc:12390 c/c-typeck.cc:12395 c/c-typeck.cc:12523
+#: c/c-typeck.cc:12528
 #, gcc-internal-format
 msgid "comparison between pointer and integer"
 msgstr "osoittimen ja kokonaisluvun välinen vertailu"
 
-#: c/c-typeck.cc:12472
+#: c/c-typeck.cc:12475
 #, gcc-internal-format
 msgid "comparison of complete and incomplete pointers"
 msgstr "täydellisen ja vaillinaisen osoittimen vertailu"
 
-#: c/c-typeck.cc:12474
+#: c/c-typeck.cc:12477
 #, gcc-internal-format
 msgid "ISO C forbids ordered comparisons of pointers to functions"
 msgstr "ISO C kieltää funktio-osoittimien suuruusvertailun"
 
-#: c/c-typeck.cc:12479
+#: c/c-typeck.cc:12482
 #, fuzzy, gcc-internal-format
 msgid "ordered comparison of pointer with null pointer"
 msgstr "osoittimen ja kokonaisluku nollan suuruusvertailu"
 
-#: c/c-typeck.cc:12502 c/c-typeck.cc:12505 c/c-typeck.cc:12512
-#: c/c-typeck.cc:12515
+#: c/c-typeck.cc:12505 c/c-typeck.cc:12508 c/c-typeck.cc:12515
+#: c/c-typeck.cc:12518
 #, gcc-internal-format
 msgid "ordered comparison of pointer with integer zero"
 msgstr "osoittimen ja kokonaisluku nollan suuruusvertailu"
 
-#: c/c-typeck.cc:12591
+#: c/c-typeck.cc:12594
 #, fuzzy, gcc-internal-format
 msgid "implicit conversion from %qT to %qT to match other operand of binary expression"
 msgstr "muunnos tyypistä %2$qT tyypiksi %1$qT"
 
-#: c/c-typeck.cc:12909
+#: c/c-typeck.cc:12912
 #, gcc-internal-format
 msgid "used array that cannot be converted to pointer where scalar is required"
 msgstr "käytetty osoittimeksi muuntumatonta taulukkoa paikassa, jossa vaaditaan skalaari"
 
-#: c/c-typeck.cc:12913
+#: c/c-typeck.cc:12916
 #, gcc-internal-format
 msgid "used struct type value where scalar is required"
 msgstr "käytetty tietuetyypin arvoa, vaikka vaaditaan skalaari"
 
-#: c/c-typeck.cc:12917
+#: c/c-typeck.cc:12920
 #, gcc-internal-format
 msgid "used union type value where scalar is required"
 msgstr "käytetty unionityypin arvoa, vaikka vaaditaan skalaari"
 
-#: c/c-typeck.cc:12933
+#: c/c-typeck.cc:12936
 #, fuzzy, gcc-internal-format
 msgid "used vector type where scalar is required"
 msgstr "käytetty unionityypin arvoa, vaikka vaaditaan skalaari"
 
-#: c/c-typeck.cc:13123 cp/semantics.cc:10914
+#: c/c-typeck.cc:13126 cp/semantics.cc:10905
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp cancel%> must specify one of %<parallel%>, %<for%>, %<sections%> or %<taskgroup%> clauses"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-typeck.cc:13134 c/c-typeck.cc:13144 cp/semantics.cc:10925
-#: cp/semantics.cc:10935
+#: c/c-typeck.cc:13137 c/c-typeck.cc:13147 cp/semantics.cc:10916
+#: cp/semantics.cc:10926
 #, fuzzy, gcc-internal-format
 msgid "expected %<cancel%> %<if%> clause modifier"
 msgstr "odotettiin %<operator%>"
 
-#: c/c-typeck.cc:13179 cp/semantics.cc:10970
+#: c/c-typeck.cc:13182 cp/semantics.cc:10961
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp cancellation point%> must specify one of %<parallel%>, %<for%>, %<sections%> or %<taskgroup%> clauses"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: c/c-typeck.cc:13224 c/c-typeck.cc:14920 c/c-typeck.cc:15056
-#: c/c-typeck.cc:15139
+#: c/c-typeck.cc:13227 c/c-typeck.cc:14923 c/c-typeck.cc:15059
+#: c/c-typeck.cc:15142
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> %qE in %qs clause"
 msgstr "bittikentän %qs leveys on nolla"
 
-#: c/c-typeck.cc:13248 c/c-typeck.cc:14846 c/c-typeck.cc:15042
-#: cp/semantics.cc:5085 cp/semantics.cc:7823 cp/semantics.cc:8066
+#: c/c-typeck.cc:13251 c/c-typeck.cc:14849 c/c-typeck.cc:15045
+#: cp/semantics.cc:5076 cp/semantics.cc:7814 cp/semantics.cc:8057
 #, fuzzy, gcc-internal-format
 msgid "bit-field %qE in %qs clause"
 msgstr "bittikentän %qs leveys on nolla"
 
-#: c/c-typeck.cc:13257 c/c-typeck.cc:15066 cp/semantics.cc:5095
-#: cp/semantics.cc:8085
+#: c/c-typeck.cc:13260 c/c-typeck.cc:15069 cp/semantics.cc:5086
+#: cp/semantics.cc:8076
 #, fuzzy, gcc-internal-format
 msgid "%qE is a member of a union"
 msgstr "joustava taulukkojäsen unionissa"
 
-#: c/c-typeck.cc:13274 c/c-typeck.cc:15075 cp/semantics.cc:8094
+#: c/c-typeck.cc:13277 c/c-typeck.cc:15078 cp/semantics.cc:8085
 #, fuzzy, gcc-internal-format
 msgid "cannot dereference %qE in %qs clause"
 msgstr "bittikentän %qs leveys on nolla"
 
-#: c/c-typeck.cc:13285 cp/semantics.cc:5120 cp/semantics.cc:8139
+#: c/c-typeck.cc:13288 cp/semantics.cc:5111 cp/semantics.cc:8130
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a variable in %qs clause"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: c/c-typeck.cc:13289 c/c-typeck.cc:15103 cp/semantics.cc:5124
-#: cp/semantics.cc:8143
+#: c/c-typeck.cc:13292 c/c-typeck.cc:15106 cp/semantics.cc:5115
+#: cp/semantics.cc:8134
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a variable in %qs clause"
 msgstr "%qs määritelty parametrille %qE"
 
-#: c/c-typeck.cc:13297
+#: c/c-typeck.cc:13300
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> %qD in %qs clause"
 msgstr "bittikentän %qs leveys on nolla"
 
-#: c/c-typeck.cc:13307 c/c-typeck.cc:15110 c/c-typeck.cc:15237
-#: cp/semantics.cc:5133 cp/semantics.cc:8150 cp/semantics.cc:8339
+#: c/c-typeck.cc:13310 c/c-typeck.cc:15113 c/c-typeck.cc:15240
+#: cp/semantics.cc:5124 cp/semantics.cc:8141 cp/semantics.cc:8330
 #, fuzzy, gcc-internal-format
 msgid "%qD is threadprivate variable in %qs clause"
 msgstr "sisäkkäisessä funktiossa käytetty rekisterimuuttujaa %qD"
 
-#: c/c-typeck.cc:13344 cp/semantics.cc:5167
+#: c/c-typeck.cc:13347 cp/semantics.cc:5158
 #, fuzzy, gcc-internal-format
 msgid "low bound %qE of array section does not have integral type"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: c/c-typeck.cc:13351 cp/semantics.cc:5174
+#: c/c-typeck.cc:13354 cp/semantics.cc:5165
 #, fuzzy, gcc-internal-format
 msgid "length %qE of array section does not have integral type"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: c/c-typeck.cc:13374 cp/semantics.cc:5207
+#: c/c-typeck.cc:13377 cp/semantics.cc:5198
 #, fuzzy, gcc-internal-format
 msgid "expected single pointer in %qs clause"
 msgstr "Rajapintatäsmäämättömyys proseduuriosoitinsijoituksessa kohdassa %L: %s"
 
-#: c/c-typeck.cc:13392 c/c-typeck.cc:13459 c/c-typeck.cc:13751
-#: cp/semantics.cc:5225 cp/semantics.cc:5292
+#: c/c-typeck.cc:13395 c/c-typeck.cc:13462 c/c-typeck.cc:13754
+#: cp/semantics.cc:5216 cp/semantics.cc:5283
 #, fuzzy, gcc-internal-format
 msgid "zero length array section in %qs clause"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: c/c-typeck.cc:13411 cp/semantics.cc:5244
+#: c/c-typeck.cc:13414 cp/semantics.cc:5235
 #, fuzzy, gcc-internal-format
 msgid "for unknown bound array type length expression must be specified"
 msgstr "pilkkulausekkeen vasemmalla operandilla ei ole vaikutusta"
 
-#: c/c-typeck.cc:13419 cp/semantics.cc:5252
+#: c/c-typeck.cc:13422 cp/semantics.cc:5243
 #, fuzzy, gcc-internal-format
 msgid "negative low bound in array section in %qs clause"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: c/c-typeck.cc:13428 c/c-typeck.cc:13552 cp/semantics.cc:5261
-#: cp/semantics.cc:5385
+#: c/c-typeck.cc:13431 c/c-typeck.cc:13555 cp/semantics.cc:5252
+#: cp/semantics.cc:5376
 #, fuzzy, gcc-internal-format
 msgid "negative length in array section in %qs clause"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: c/c-typeck.cc:13445 cp/semantics.cc:5278
+#: c/c-typeck.cc:13448 cp/semantics.cc:5269
 #, fuzzy, gcc-internal-format
 msgid "low bound %qE above array section size in %qs clause"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: c/c-typeck.cc:13488 cp/semantics.cc:5321
+#: c/c-typeck.cc:13491 cp/semantics.cc:5312
 #, fuzzy, gcc-internal-format
 msgid "length %qE above array section size in %qs clause"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: c/c-typeck.cc:13503 cp/semantics.cc:5336
+#: c/c-typeck.cc:13506 cp/semantics.cc:5327
 #, fuzzy, gcc-internal-format
 msgid "high bound %qE above array section size in %qs clause"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: c/c-typeck.cc:13540 cp/semantics.cc:5373
+#: c/c-typeck.cc:13543 cp/semantics.cc:5364
 #, fuzzy, gcc-internal-format
 msgid "for array function parameter length expression must be specified"
 msgstr "pilkkulausekkeen vasemmalla operandilla ei ole vaikutusta"
 
-#: c/c-typeck.cc:13544 cp/semantics.cc:5377
+#: c/c-typeck.cc:13547 cp/semantics.cc:5368
 #, fuzzy, gcc-internal-format
 msgid "for pointer type length expression must be specified"
 msgstr "pilkkulausekkeen vasemmalla operandilla ei ole vaikutusta"
 
-#: c/c-typeck.cc:13571 c/c-typeck.cc:13690 cp/semantics.cc:5404
-#: cp/semantics.cc:5538
+#: c/c-typeck.cc:13574 c/c-typeck.cc:13693 cp/semantics.cc:5395
+#: cp/semantics.cc:5529
 #, fuzzy, gcc-internal-format
 msgid "array section is not contiguous in %qs clause"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: c/c-typeck.cc:13581 cp/semantics.cc:5414
+#: c/c-typeck.cc:13584 cp/semantics.cc:5405
 #, fuzzy, gcc-internal-format
 msgid "%qE does not have pointer or array type"
 msgstr "%qE:lla ei ole luokkatyyppiä"
 
-#: c/c-typeck.cc:13968 cp/semantics.cc:6512
+#: c/c-typeck.cc:13971 cp/semantics.cc:6503
 #, fuzzy, gcc-internal-format
 msgid "iterator %qD has neither integral nor pointer type"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: c/c-typeck.cc:13975
+#: c/c-typeck.cc:13978
 #, fuzzy, gcc-internal-format
 msgid "iterator %qD has %<_Atomic%> qualified type"
 msgstr "tyyppitäsmäämättömyys taulukkoviitteessä"
 
-#: c/c-typeck.cc:13981 cp/semantics.cc:6519
+#: c/c-typeck.cc:13984 cp/semantics.cc:6510
 #, fuzzy, gcc-internal-format
 msgid "iterator %qD has const qualified type"
 msgstr "parametrin %qD tyyppi on vaillinainen"
 
-#: c/c-typeck.cc:13994 cp/semantics.cc:6535
+#: c/c-typeck.cc:13997 cp/semantics.cc:6526
 #, gcc-internal-format
 msgid "iterator step with non-integral type"
 msgstr "iteraattorin askellus ei-kokonaislukutyypillä"
 
-#: c/c-typeck.cc:14014 cp/semantics.cc:6571
+#: c/c-typeck.cc:14017 cp/semantics.cc:6562
 #, fuzzy, gcc-internal-format
 msgid "iterator %qD has zero step"
 msgstr "parametrin %qD tyyppi on vaillinainen"
 
-#: c/c-typeck.cc:14041
+#: c/c-typeck.cc:14044
 #, fuzzy, gcc-internal-format
 msgid "type of iterator %qD refers to outer iterator %qD"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: c/c-typeck.cc:14048 cp/semantics.cc:6605
+#: c/c-typeck.cc:14051 cp/semantics.cc:6596
 #, fuzzy, gcc-internal-format
 msgid "begin expression refers to outer iterator %qD"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: c/c-typeck.cc:14054 cp/semantics.cc:6611
+#: c/c-typeck.cc:14057 cp/semantics.cc:6602
 #, fuzzy, gcc-internal-format
 msgid "end expression refers to outer iterator %qD"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: c/c-typeck.cc:14060 cp/semantics.cc:6617
+#: c/c-typeck.cc:14063 cp/semantics.cc:6608
 #, fuzzy, gcc-internal-format
 msgid "step expression refers to outer iterator %qD"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: c/c-typeck.cc:14097 cp/semantics.cc:6665
+#: c/c-typeck.cc:14100 cp/semantics.cc:6656
 #, fuzzy, gcc-internal-format
 msgid "expected pointer in %qs clause"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/c-typeck.cc:14185 cp/semantics.cc:6746
+#: c/c-typeck.cc:14188 cp/semantics.cc:6737
 #, fuzzy, gcc-internal-format
 msgid "%<inscan%> and non-%<inscan%> %<reduction%> clauses on the same construct"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: c/c-typeck.cc:14207 cp/semantics.cc:6766
+#: c/c-typeck.cc:14210 cp/semantics.cc:6757
 #, fuzzy, gcc-internal-format
 msgid "%<inscan%> %<reduction%> clause with array section"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: c/c-typeck.cc:14233 c/c-typeck.cc:14243
+#: c/c-typeck.cc:14236 c/c-typeck.cc:14246
 #, fuzzy, gcc-internal-format
 msgid "%qD in %<reduction%> clause is a zero size array"
 msgstr "ISO C++ kieltää nollan kokoisen taulukon %qD"
 
-#: c/c-typeck.cc:14263
+#: c/c-typeck.cc:14266
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> %qE in %<reduction%> clause"
 msgstr "tyyppimuunnos määrittää funktiotyypin"
 
-#: c/c-typeck.cc:14275
+#: c/c-typeck.cc:14278
 #, fuzzy, gcc-internal-format
 msgid "zero sized type %qT in %qs clause"
 msgstr "bittikentän %qs leveys on nolla"
 
-#: c/c-typeck.cc:14283
+#: c/c-typeck.cc:14286
 #, fuzzy, gcc-internal-format
 msgid "variable sized type %qT in %qs clause"
 msgstr "bittikentän %qs leveys on nolla"
 
-#: c/c-typeck.cc:14327
+#: c/c-typeck.cc:14330
 #, fuzzy, gcc-internal-format
 msgid "%qE has invalid type for %<reduction(%s)%>"
 msgstr "tyypillä %qE on virtuaalisia jäsenfunktioita"
 
-#: c/c-typeck.cc:14336 cp/semantics.cc:6404
+#: c/c-typeck.cc:14339 cp/semantics.cc:6395
 #, fuzzy, gcc-internal-format
 msgid "user defined reduction not found for %qE"
 msgstr "tyypillä %qE on käyttäjän määrittelemä muodostin"
 
-#: c/c-typeck.cc:14424
+#: c/c-typeck.cc:14427
 #, fuzzy, gcc-internal-format
 msgid "variable length element type in array %<reduction%> clause"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: c/c-typeck.cc:14442 c/c-typeck.cc:15331 cp/semantics.cc:8855
+#: c/c-typeck.cc:14445 c/c-typeck.cc:15334 cp/semantics.cc:8846
 #, fuzzy, gcc-internal-format
 msgid "%<nowait%> clause must not be used together with %<copyprivate%>"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-typeck.cc:14454 cp/semantics.cc:8923
+#: c/c-typeck.cc:14457 cp/semantics.cc:8914
 #, fuzzy, gcc-internal-format
 msgid "%qE must be %<threadprivate%> for %<copyin%>"
 msgstr "automaattimuuttuja %qE ei voi olla %<threadprivate%>"
 
-#: c/c-typeck.cc:14468 cp/semantics.cc:6807
+#: c/c-typeck.cc:14471 cp/semantics.cc:6798
 #, fuzzy, gcc-internal-format
 msgid "modifier should not be specified in %<linear%> clause on %<simd%> or %<for%> constructs"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-typeck.cc:14476
+#: c/c-typeck.cc:14479
 #, gcc-internal-format
 msgid "linear clause applied to non-integral non-pointer variable with type %qT"
 msgstr ""
 
-#: c/c-typeck.cc:14484
+#: c/c-typeck.cc:14487
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<linear%> clause"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: c/c-typeck.cc:14503 cp/semantics.cc:6881
+#: c/c-typeck.cc:14506 cp/semantics.cc:6872
 #, fuzzy, gcc-internal-format
 msgid "%<linear%> clause step %qE is neither constant nor a parameter"
 msgstr "indeksoitu arvo ei ole taulukko eikä osoitin"
 
-#: c/c-typeck.cc:14533 c/c-typeck.cc:15230 c/c-typeck.cc:15476
-#: cp/semantics.cc:6968 cp/semantics.cc:8332 cp/semantics.cc:8675
+#: c/c-typeck.cc:14536 c/c-typeck.cc:15233 c/c-typeck.cc:15479
+#: cp/semantics.cc:6959 cp/semantics.cc:8323 cp/semantics.cc:8666
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a variable in clause %qs"
 msgstr "%qs määritelty parametrille %qE"
 
-#: c/c-typeck.cc:14551 cp/semantics.cc:6986
+#: c/c-typeck.cc:14554 cp/semantics.cc:6977
 #, fuzzy, gcc-internal-format
 msgid "%qD appears more than once in data-sharing clauses"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: c/c-typeck.cc:14562 cp/semantics.cc:6997
+#: c/c-typeck.cc:14565 cp/semantics.cc:6988
 #, fuzzy, gcc-internal-format
 msgid "%qD appears more than once in reduction clauses"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: c/c-typeck.cc:14576 c/c-typeck.cc:14646 c/c-typeck.cc:14680
+#: c/c-typeck.cc:14579 c/c-typeck.cc:14649 c/c-typeck.cc:14683
 #, fuzzy, gcc-internal-format
 msgid "%qE appears more than once in data clauses"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: c/c-typeck.cc:14586 c/c-typeck.cc:14653 c/c-typeck.cc:14964
-#: c/c-typeck.cc:15157 c/c-typeck.cc:15165 c/c-typeck.cc:15182
-#: c/c-typeck.cc:15192 c/c-typeck.cc:15200 cp/semantics.cc:7011
-#: cp/semantics.cc:7021 cp/semantics.cc:7114 cp/semantics.cc:7121
-#: cp/semantics.cc:7168 cp/semantics.cc:7979 cp/semantics.cc:8202
-#: cp/semantics.cc:8210 cp/semantics.cc:8227 cp/semantics.cc:8237
-#: cp/semantics.cc:8245
+#: c/c-typeck.cc:14589 c/c-typeck.cc:14656 c/c-typeck.cc:14967
+#: c/c-typeck.cc:15160 c/c-typeck.cc:15168 c/c-typeck.cc:15185
+#: c/c-typeck.cc:15195 c/c-typeck.cc:15203 cp/semantics.cc:7002
+#: cp/semantics.cc:7012 cp/semantics.cc:7105 cp/semantics.cc:7112
+#: cp/semantics.cc:7159 cp/semantics.cc:7970 cp/semantics.cc:8193
+#: cp/semantics.cc:8201 cp/semantics.cc:8218 cp/semantics.cc:8228
+#: cp/semantics.cc:8236
 #, fuzzy, gcc-internal-format
 msgid "%qD appears more than once in data clauses"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: c/c-typeck.cc:14589 c/c-typeck.cc:14659 c/c-typeck.cc:15168
-#: c/c-typeck.cc:15203 cp/semantics.cc:7024 cp/semantics.cc:7127
-#: cp/semantics.cc:8213 cp/semantics.cc:8248
+#: c/c-typeck.cc:14592 c/c-typeck.cc:14662 c/c-typeck.cc:15171
+#: c/c-typeck.cc:15206 cp/semantics.cc:7015 cp/semantics.cc:7118
+#: cp/semantics.cc:8204 cp/semantics.cc:8239
 #, fuzzy, gcc-internal-format
 msgid "%qD appears both in data and map clauses"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: c/c-typeck.cc:14634 cp/semantics.cc:7101
+#: c/c-typeck.cc:14637 cp/semantics.cc:7092
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a variable in clause %<firstprivate%>"
 msgstr "automaattimuuttuja %qE ei voi olla %<threadprivate%>"
 
-#: c/c-typeck.cc:14673 cp/semantics.cc:7160
+#: c/c-typeck.cc:14676 cp/semantics.cc:7151
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a variable in clause %<lastprivate%>"
 msgstr "automaattimuuttuja %qE ei voi olla %<threadprivate%>"
 
-#: c/c-typeck.cc:14692 cp/semantics.cc:7555
+#: c/c-typeck.cc:14695 cp/semantics.cc:7546
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a variable in %<aligned%> clause"
 msgstr "instanssimuuttuja %qE on esitelty yksityisenä"
 
-#: c/c-typeck.cc:14699
+#: c/c-typeck.cc:14702
 #, fuzzy, gcc-internal-format
 msgid "%qE in %<aligned%> clause is neither a pointer nor an array"
 msgstr "indeksoitu arvo ei ole taulukko eikä osoitin"
 
-#: c/c-typeck.cc:14706
+#: c/c-typeck.cc:14709
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<aligned%> clause"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: c/c-typeck.cc:14713
+#: c/c-typeck.cc:14716
 #, fuzzy, gcc-internal-format
 msgid "%qE appears more than once in %<aligned%> clauses"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: c/c-typeck.cc:14726 cp/semantics.cc:7626
+#: c/c-typeck.cc:14729 cp/semantics.cc:7617
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a variable in %<nontemporal%> clause"
 msgstr "instanssimuuttuja %qE on esitelty yksityisenä"
 
-#: c/c-typeck.cc:14732
+#: c/c-typeck.cc:14735
 #, fuzzy, gcc-internal-format
 msgid "%qE appears more than once in %<nontemporal%> clauses"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: c/c-typeck.cc:14745 cp/semantics.cc:7665
+#: c/c-typeck.cc:14748 cp/semantics.cc:7656
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a variable in %<allocate%> clause"
 msgstr "instanssimuuttuja %qE on esitelty yksityisenä"
 
-#: c/c-typeck.cc:14751
+#: c/c-typeck.cc:14754
 #, fuzzy, gcc-internal-format
 msgid "%qE appears more than once in %<allocate%> clauses"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: c/c-typeck.cc:14824 cp/semantics.cc:7794
+#: c/c-typeck.cc:14827 cp/semantics.cc:7785
 #, fuzzy, gcc-internal-format
 msgid "%<depend%> clause with %<depobj%> dependence type on array section"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-typeck.cc:14835 cp/semantics.cc:7813
+#: c/c-typeck.cc:14838 cp/semantics.cc:7804
 #, fuzzy, gcc-internal-format
 msgid "%qE is not lvalue expression nor array section in %qs clause"
 msgstr "instanssimuuttuja %qE on esitelty yksityisenä"
 
-#: c/c-typeck.cc:14856 cp/semantics.cc:7835
+#: c/c-typeck.cc:14859 cp/semantics.cc:7826
 #, fuzzy, gcc-internal-format
 msgid "%qE does not have %<omp_depend_t%> type in %<depend%> clause with %<depobj%> dependence type"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-typeck.cc:14866 cp/semantics.cc:7847
+#: c/c-typeck.cc:14869 cp/semantics.cc:7838
 #, fuzzy, gcc-internal-format
 msgid "%qE should not have %<omp_depend_t%> type in %<depend%> clause with dependence type other than %<depobj%>"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-typeck.cc:14912 cp/semantics.cc:7931
+#: c/c-typeck.cc:14915 cp/semantics.cc:7922
 #, fuzzy, gcc-internal-format
 msgid "array section does not have mappable type in %qs clause"
 msgstr "%qE:lla ei ole luokkatyyppiä"
 
-#: c/c-typeck.cc:14960 c/c-typeck.cc:15179 cp/semantics.cc:7975
-#: cp/semantics.cc:8224
+#: c/c-typeck.cc:14963 c/c-typeck.cc:15182 cp/semantics.cc:7966
+#: cp/semantics.cc:8215
 #, fuzzy, gcc-internal-format
 msgid "%qD appears more than once in motion clauses"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: c/c-typeck.cc:14968 c/c-typeck.cc:15185 cp/semantics.cc:7983
-#: cp/semantics.cc:8230
+#: c/c-typeck.cc:14971 c/c-typeck.cc:15188 cp/semantics.cc:7974
+#: cp/semantics.cc:8221
 #, fuzzy, gcc-internal-format
 msgid "%qD appears more than once in map clauses"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: c/c-typeck.cc:15049 cp/semantics.cc:8073
+#: c/c-typeck.cc:15052 cp/semantics.cc:8064
 #, fuzzy, gcc-internal-format
 msgid "%qE does not have a mappable type in %qs clause"
 msgstr "%qE:lla ei ole luokkatyyppiä"
 
-#: c/c-typeck.cc:15130 c/c-typeck.cc:15244 cp/semantics.cc:8173
-#: cp/semantics.cc:8346
+#: c/c-typeck.cc:15133 c/c-typeck.cc:15247 cp/semantics.cc:8164
+#: cp/semantics.cc:8337
 #, fuzzy, gcc-internal-format
 msgid "%qD does not have a mappable type in %qs clause"
 msgstr "%qE:lla ei ole luokkatyyppiä"
 
-#: c/c-typeck.cc:15225 cp/semantics.cc:8326
+#: c/c-typeck.cc:15228 cp/semantics.cc:8317
 #, fuzzy, gcc-internal-format
 msgid "%qE is neither a variable nor a function name in clause %qs"
 msgstr "halutaan rekisterimuuttujan %qD osoite"
 
-#: c/c-typeck.cc:15253 cp/semantics.cc:8356
+#: c/c-typeck.cc:15256 cp/semantics.cc:8347
 #, fuzzy, gcc-internal-format
 msgid "%qE appears more than once on the same %<declare target%> directive"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: c/c-typeck.cc:15267 cp/semantics.cc:8372
+#: c/c-typeck.cc:15270 cp/semantics.cc:8363
 #, fuzzy, gcc-internal-format
 msgid "%qD is not an argument in %<uniform%> clause"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: c/c-typeck.cc:15270 cp/semantics.cc:8375
+#: c/c-typeck.cc:15273 cp/semantics.cc:8366
 #, fuzzy, gcc-internal-format
 msgid "%qE is not an argument in %<uniform%> clause"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: c/c-typeck.cc:15289
+#: c/c-typeck.cc:15292
 #, fuzzy, gcc-internal-format
 msgid "%qs variable is not a pointer"
 msgstr "lähde ei ole osoitin"
 
-#: c/c-typeck.cc:15296
+#: c/c-typeck.cc:15299
 #, fuzzy, gcc-internal-format
 msgid "%qs variable is neither a pointer nor an array"
 msgstr "indeksoitu arvo ei ole taulukko eikä osoitin"
 
-#: c/c-typeck.cc:15344 c/c-typeck.cc:15437 cp/semantics.cc:8817
+#: c/c-typeck.cc:15347 c/c-typeck.cc:15440 cp/semantics.cc:8808
 #, fuzzy, gcc-internal-format
 msgid "%<order%> clause must not be used together with %<ordered%>"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-typeck.cc:15364 cp/semantics.cc:7879
+#: c/c-typeck.cc:15367 cp/semantics.cc:7870
 #, fuzzy, gcc-internal-format
 msgid "too many %qs clauses on a task construct"
 msgstr "%s: liian monta arvoa"
 
-#: c/c-typeck.cc:15459 cp/semantics.cc:8643
+#: c/c-typeck.cc:15462 cp/semantics.cc:8634
 #, fuzzy, gcc-internal-format
 msgid "%<inbranch%> clause is incompatible with %<notinbranch%>"
 msgstr "__COUNTER__ lavennettu direktiivin sisällä valitsimella -fdirectives-only"
 
-#: c/c-typeck.cc:15526 cp/semantics.cc:8994
+#: c/c-typeck.cc:15529 cp/semantics.cc:8985
 #, fuzzy, gcc-internal-format
 msgid "%qE is predetermined %qs for %qs"
 msgstr "%qs määritelty parametrille %qE"
 
-#: c/c-typeck.cc:15536
+#: c/c-typeck.cc:15539
 #, gcc-internal-format
 msgid "%<const%> qualified %qE may appear only in %<shared%> or %<firstprivate%> clauses"
 msgstr ""
 
-#: c/c-typeck.cc:15555 cp/semantics.cc:8769
+#: c/c-typeck.cc:15558 cp/semantics.cc:8760
 #, gcc-internal-format
 msgid "%<simdlen%> clause value is bigger than %<safelen%> clause value"
 msgstr ""
 
-#: c/c-typeck.cc:15567 cp/semantics.cc:8782
+#: c/c-typeck.cc:15570 cp/semantics.cc:8773
 #, fuzzy, gcc-internal-format
 msgid "%<nonmonotonic%> schedule modifier specified together with %<ordered%> clause"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-typeck.cc:15578 c/c-typeck.cc:15586 cp/semantics.cc:8791
-#: cp/semantics.cc:8809
+#: c/c-typeck.cc:15581 c/c-typeck.cc:15589 cp/semantics.cc:8782
+#: cp/semantics.cc:8800
 #, fuzzy, gcc-internal-format
 msgid "%qs clause specified together with %<inscan%> %<reduction%> clause"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-typeck.cc:15634 cp/semantics.cc:8749
+#: c/c-typeck.cc:15637 cp/semantics.cc:8740
 #, fuzzy, gcc-internal-format
 msgid "%<linear%> clause step is a parameter %qD not specified in %<uniform%> clause"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-typeck.cc:15685 cp/semantics.cc:8799
+#: c/c-typeck.cc:15688 cp/semantics.cc:8790
 #, fuzzy, gcc-internal-format
 msgid "%<nogroup%> clause must not be used together with %<reduction%> clause"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-typeck.cc:15695 cp/semantics.cc:8828
+#: c/c-typeck.cc:15698 cp/semantics.cc:8819
 #, fuzzy, gcc-internal-format
 msgid "%<detach%> clause must not be used together with %<mergeable%> clause"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: c/c-typeck.cc:15713 cp/semantics.cc:9019
+#: c/c-typeck.cc:15716 cp/semantics.cc:9010
 #, gcc-internal-format
 msgid "the event handle of a %<detach%> clause should not be in a data-sharing clause"
 msgstr ""
 
-#: c/c-typeck.cc:15887
+#: c/c-typeck.cc:15890
 #, fuzzy, gcc-internal-format
 msgid "cannot use %<va_arg%> with reverse storage order"
 msgstr "halutaan rekisterimuuttujan %qD osoite"
 
-#: c/c-typeck.cc:15892
+#: c/c-typeck.cc:15895
 #, fuzzy, gcc-internal-format
 msgid "second argument to %<va_arg%> is of incomplete type %qT"
 msgstr "%<va_arg%>-funktion ensimmäinen argumentti ei ole tyyppiä %<va_list%>"
 
-#: c/c-typeck.cc:15898
+#: c/c-typeck.cc:15901
 #, gcc-internal-format
 msgid "C++ requires promoted type, not enum type, in %<va_arg%>"
 msgstr ""
@@ -47810,178 +47935,183 @@ msgstr "odotettiin luokan nimeä"
 msgid "edge not found"
 msgstr "bittikentän %qs leveys on negatiivinen"
 
-#: c/gimple-parser.cc:478 c/gimple-parser.cc:484
+#: c/gimple-parser.cc:342
+#, fuzzy, gcc-internal-format
+msgid "SSA name %qE with version %d has no definition"
+msgstr "%qD:n poistettu määrittely"
+
+#: c/gimple-parser.cc:482 c/gimple-parser.cc:488
 #, fuzzy, gcc-internal-format
 msgid "expected block index"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/gimple-parser.cc:492
+#: c/gimple-parser.cc:496
 #, fuzzy, gcc-internal-format
 msgid "invalid block index"
 msgstr "Varoita implisiittisistä funktioesittelyistä"
 
-#: c/gimple-parser.cc:503
+#: c/gimple-parser.cc:507
 #, fuzzy, gcc-internal-format
 msgid "expected block specifier"
 msgstr "Odotettiin käyttöoikeustarkennetta kohdassa %C"
 
-#: c/gimple-parser.cc:521
+#: c/gimple-parser.cc:525
 #, fuzzy, gcc-internal-format
 msgid "expected loop number"
 msgstr "odotettiin luokan nimeä"
 
-#: c/gimple-parser.cc:539
+#: c/gimple-parser.cc:543
 #, fuzzy, gcc-internal-format
 msgid "unknown block specifier"
 msgstr "uudelleensijoitusvirhe"
 
-#: c/gimple-parser.cc:552 c/gimple-parser.cc:1964
+#: c/gimple-parser.cc:556 c/gimple-parser.cc:1968
 #, fuzzy, gcc-internal-format
 msgid "expected count value"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/gimple-parser.cc:575 c/gimple-parser.cc:662
+#: c/gimple-parser.cc:579 c/gimple-parser.cc:666
 #, gcc-internal-format
 msgid "stmts without block"
 msgstr ""
 
-#: c/gimple-parser.cc:612
+#: c/gimple-parser.cc:616
 #, fuzzy, gcc-internal-format
 msgid "duplicate loop header"
 msgstr "Kaksoiskappale %s-nimiöspesifikaatio kohdassa %C"
 
-#: c/gimple-parser.cc:819
+#: c/gimple-parser.cc:823
 #, fuzzy, gcc-internal-format
 msgid "invalid source block specification"
 msgstr "perustyypin %qT kaksoiskappale virheellinen"
 
-#: c/gimple-parser.cc:886
+#: c/gimple-parser.cc:890
 #, fuzzy, gcc-internal-format
 msgid "unexpected RHS for assignment"
 msgstr "%qs attribuuttia ei huomioida"
 
-#: c/gimple-parser.cc:990
+#: c/gimple-parser.cc:994
 #, gcc-internal-format
 msgid "%<&&%> not valid in GIMPLE"
 msgstr ""
 
-#: c/gimple-parser.cc:993
+#: c/gimple-parser.cc:997
 #, gcc-internal-format
 msgid "%<||%> not valid in GIMPLE"
 msgstr ""
 
-#: c/gimple-parser.cc:1107
+#: c/gimple-parser.cc:1111
 #, fuzzy, gcc-internal-format
 msgid "expected pointer as argument of unary %<*%>"
 msgstr "odotettiin tunnistetta tai %<*%>"
 
-#: c/gimple-parser.cc:1133
+#: c/gimple-parser.cc:1137
 #, gcc-internal-format
 msgid "%<!%> not valid in GIMPLE"
 msgstr ""
 
-#: c/gimple-parser.cc:1192 c/gimple-parser.cc:1529
+#: c/gimple-parser.cc:1196 c/gimple-parser.cc:1533
 #, fuzzy, gcc-internal-format
 msgid "expected constant offset"
 msgstr "odottamaton siirros"
 
-#: c/gimple-parser.cc:1253
+#: c/gimple-parser.cc:1257
 #, fuzzy, gcc-internal-format
 msgid "SSA name undeclared"
 msgstr "%qD esitelty täällä"
 
-#: c/gimple-parser.cc:1275
+#: c/gimple-parser.cc:1279
 #, fuzzy, gcc-internal-format
 msgid "base variable or SSA name undeclared"
 msgstr "nimetön muuttuja tai kenttä esitelty voidiksi"
 
-#: c/gimple-parser.cc:1282
+#: c/gimple-parser.cc:1286
 #, fuzzy, gcc-internal-format
 msgid "invalid base %qE for SSA name"
 msgstr "epäkelpo %qs:n soveltaminen tyhjään tyyppiin"
 
-#: c/gimple-parser.cc:1310
+#: c/gimple-parser.cc:1314
 #, fuzzy, gcc-internal-format
 msgid "expecting internal function name"
 msgstr "odotettiin luokan nimeä"
 
-#: c/gimple-parser.cc:1323
+#: c/gimple-parser.cc:1327
 #, fuzzy, gcc-internal-format
 msgid "unknown internal function %qE"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: c/gimple-parser.cc:1461
+#: c/gimple-parser.cc:1465
 #, fuzzy, gcc-internal-format
 msgid "invalid type of %<__MEM%> operand"
 msgstr "virheellinen %%P-operandi"
 
-#: c/gimple-parser.cc:1523
+#: c/gimple-parser.cc:1527
 #, fuzzy, gcc-internal-format
 msgid "expected constant size"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/gimple-parser.cc:1561 c/gimple-parser.cc:1591 c/gimple-parser.cc:1631
-#: c/gimple-parser.cc:1639 c/gimple-parser.cc:1648
+#: c/gimple-parser.cc:1565 c/gimple-parser.cc:1595 c/gimple-parser.cc:1635
+#: c/gimple-parser.cc:1643 c/gimple-parser.cc:1652
 #, fuzzy, gcc-internal-format
 msgid "invalid _Literal"
 msgstr "muotomerkkijonolla on epäkelpo operandinumero"
 
-#: c/gimple-parser.cc:1570
+#: c/gimple-parser.cc:1574
 #, fuzzy, gcc-internal-format
 msgid "invalid type for _Literal with constructor"
 msgstr "virheellinen alustin taulukon jäsenelle %q#D"
 
-#: c/gimple-parser.cc:1683
+#: c/gimple-parser.cc:1687
 #, fuzzy, gcc-internal-format
 msgid "anonymous SSA name cannot have default definition"
 msgstr "anonyymillä unionilla ei voi olla funktiojäseniä"
 
-#: c/gimple-parser.cc:1766
+#: c/gimple-parser.cc:1770
 #, fuzzy, gcc-internal-format
 msgid "invalid call to non-function"
 msgstr "%qD on tavallisesti ei-staattinen funktio"
 
-#: c/gimple-parser.cc:1820
+#: c/gimple-parser.cc:1824
 #, fuzzy, gcc-internal-format
 msgid "dereference of non-pointer"
 msgstr "%<void *%>-tyyppistä osoitinta käytetty laskutoimituksessa"
 
-#: c/gimple-parser.cc:1945
+#: c/gimple-parser.cc:1949
 #, fuzzy, gcc-internal-format
 msgid "expected pass name"
 msgstr "odotettiin luokan nimeä"
 
-#: c/gimple-parser.cc:1984
+#: c/gimple-parser.cc:1988
 #, fuzzy, gcc-internal-format
 msgid "invalid operation"
 msgstr "muotomerkkijonolla on epäkelpo operandinumero"
 
-#: c/gimple-parser.cc:2130
+#: c/gimple-parser.cc:2152
 #, fuzzy, gcc-internal-format
 msgid "comparison required"
 msgstr "Varoita eri enum-tyyppien vertailusta"
 
-#: c/gimple-parser.cc:2182
+#: c/gimple-parser.cc:2204
 #, fuzzy, gcc-internal-format
 msgid "%<catch%> is not supported"
 msgstr "%<-fPIC%> ei ole tuettu"
 
-#: c/gimple-parser.cc:2184
+#: c/gimple-parser.cc:2206
 #, fuzzy, gcc-internal-format
 msgid "expected %<finally%> or %<catch%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: c/gimple-parser.cc:2228 c/gimple-parser.cc:2265
+#: c/gimple-parser.cc:2250 c/gimple-parser.cc:2287
 #, fuzzy, gcc-internal-format
 msgid "expected goto expression"
 msgstr "odotettiin lauseketta"
 
-#: c/gimple-parser.cc:2236
+#: c/gimple-parser.cc:2258
 #, fuzzy, gcc-internal-format
 msgid "expected else statement"
 msgstr "%s-lausetta odotettiin kohdassa %L"
 
-#: c/gimple-parser.cc:2379
+#: c/gimple-parser.cc:2401
 #, fuzzy, gcc-internal-format
 msgid "expected case label"
 msgstr "odotettiin %<,%> tai %<;%>"
@@ -48014,14 +48144,14 @@ msgstr "muunnos tyypistä %qT tyyppiin %qT on moniselitteinen"
 msgid "  no known conversion for argument %d from %qH to %qI"
 msgstr "virheellinen muunnos tyypistä %qT tyypiksi %qT"
 
-#: cp/call.cc:3823 cp/pt.cc:6951
+#: cp/call.cc:3823 cp/pt.cc:6945
 #, fuzzy, 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] "  ehdokas odottaa %d argumenttia, %d annettu"
 msgstr[1] "  ehdokas odottaa %d argumenttia, %d annettu"
 
-#: cp/call.cc:3828 cp/pt.cc:6956
+#: cp/call.cc:3828 cp/pt.cc:6950
 #, gcc-internal-format, gfc-internal-format
 msgid "  candidate expects %d argument, %d provided"
 msgid_plural "  candidate expects %d arguments, %d provided"
@@ -48311,537 +48441,542 @@ msgstr "erilaisten osoitintyyppien %qT ja %qT välisestä vertailusta puuttuu ty
 msgid "enumerated and non-enumerated type in conditional expression"
 msgstr "ehtolausekkeessa etumerkkinen ja etumerkitön tyyppi"
 
-#: cp/call.cc:6610
+#: cp/call.cc:6621
 #, gcc-internal-format
 msgid "no %<%D(int)%> declared for postfix %qs, trying prefix operator instead"
 msgstr ""
 
-#: cp/call.cc:6612
+#: cp/call.cc:6623
 #, gcc-internal-format
 msgid "no %<%D(int)%> declared for postfix %qs"
 msgstr ""
 
-#: cp/call.cc:6692
+#: cp/call.cc:6703
 #, gcc-internal-format
 msgid "in C++20 this comparison calls the current function recursively with reversed arguments"
 msgstr ""
 
-#: cp/call.cc:6743
+#: cp/call.cc:6754
 #, fuzzy, gcc-internal-format
 msgid "return type of %qD is not %qs"
 msgstr "%qD:n paluuarvon tyyppi ei ole %<int%>"
 
-#: cp/call.cc:6745
+#: cp/call.cc:6756
 #, gcc-internal-format
 msgid "used as rewritten candidate for comparison of %qT and %qT"
 msgstr ""
 
-#: cp/call.cc:6816
+#: cp/call.cc:6827
 #, fuzzy, gcc-internal-format
 msgid "comparison between %q#T and %q#T"
 msgstr "%q#T ei ole luokka eikä nimiavaruus"
 
-#: cp/call.cc:7009
+#: cp/call.cc:7020
 #, fuzzy, gcc-internal-format
 msgid "no match for call to %<%T::operator[] (%A)%>"
 msgstr "Ei vastaavuutta"
 
-#: cp/call.cc:7023
+#: cp/call.cc:7034
 #, fuzzy, gcc-internal-format
 msgid "call of %<%T::operator[] (%A)%> is ambiguous"
 msgstr "Virheellinen järjestelmäkutsu"
 
-#: cp/call.cc:7298
+#: cp/call.cc:7309
 #, gcc-internal-format
 msgid "exception cleanup for this placement new selects non-placement %<operator delete%>"
 msgstr ""
 
-#: cp/call.cc:7301
+#: cp/call.cc:7312
 #, fuzzy, gcc-internal-format
 msgid "%qD is a usual (non-placement) deallocation function in C++14 (or with %<-fsized-deallocation%>)"
 msgstr "Funktio %qs:"
 
-#: cp/call.cc:7338
+#: cp/call.cc:7349
 #, fuzzy, gcc-internal-format
 msgid "%qD is a usual (non-placement) deallocation function"
 msgstr "Funktio %qs:"
 
-#: cp/call.cc:7532
+#: cp/call.cc:7543
 #, fuzzy, gcc-internal-format
 msgid "no corresponding deallocation function for %qD"
 msgstr "%qD:a käytetään alustamattomana tässä funktiossa"
 
-#: cp/call.cc:7535
+#: cp/call.cc:7546
 #, gcc-internal-format
 msgid "destroying delete %qD cannot be used to release the allocated memory if the initialization throws because the object is not constructed yet"
 msgstr ""
 
-#: cp/call.cc:7544
+#: cp/call.cc:7555
 #, fuzzy, gcc-internal-format
 msgid "no suitable %<operator %s%> for %qT"
 msgstr "%<operator new%>:n on palautettava tyyppi %qT"
 
-#: cp/call.cc:7580
+#: cp/call.cc:7591
 #, fuzzy, gcc-internal-format
 msgid "%q#D is private within this context"
 msgstr "tässä yhteydessä"
 
-#: cp/call.cc:7581 cp/decl.cc:8502
+#: cp/call.cc:7592 cp/decl.cc:8629
 #, fuzzy, gcc-internal-format
 msgid "declared private here"
 msgstr "instanssimuuttuja %qE on esitelty yksityisenä"
 
-#: cp/call.cc:7586
+#: cp/call.cc:7597
 #, fuzzy, gcc-internal-format
 msgid "%q#D is protected within this context"
 msgstr "tässä yhteydessä"
 
-#: cp/call.cc:7587 cp/decl.cc:8503
+#: cp/call.cc:7598 cp/decl.cc:8630
 #, fuzzy, gcc-internal-format
 msgid "declared protected here"
 msgstr "%qD esiteltiin täällä"
 
-#: cp/call.cc:7594
+#: cp/call.cc:7605
 #, fuzzy, gcc-internal-format
 msgid "%q#D is inaccessible within this context"
 msgstr "tässä yhteydessä"
 
-#: cp/call.cc:7675
+#: cp/call.cc:7686
 #, gcc-internal-format
 msgid "passing NULL to non-pointer argument %P of %qD"
 msgstr "annettu NULL funktion %2$qD ei-osoitinargumenttina %1$P"
 
-#: cp/call.cc:7678 cp/call.cc:7697 cp/decl.cc:10181 cp/decl.cc:10189
-#: cp/typeck.cc:4429
+#: cp/call.cc:7689 cp/call.cc:7708 cp/decl.cc:10308 cp/decl.cc:10316
+#: cp/typeck.cc:4438
 #, gcc-internal-format
 msgid "  declared here"
 msgstr "  esitelty täällä"
 
-#: cp/call.cc:7682
+#: cp/call.cc:7693
 #, gcc-internal-format
 msgid "converting to non-pointer type %qT from NULL"
 msgstr "NULLin muunnos epäosoitintyypiksi %qT"
 
-#: cp/call.cc:7694
+#: cp/call.cc:7705
 #, gcc-internal-format
 msgid "converting %<false%> to pointer type for argument %P of %qD"
 msgstr "muunnetaan %<false%> osoitintyyppiksi %2$qD:n argumentissa %1$P"
 
-#: cp/call.cc:7701
+#: cp/call.cc:7712
 #, fuzzy, gcc-internal-format
 msgid "converting %<false%> to pointer type %qT"
 msgstr "NULLin muunnos epäosoitintyypiksi %qT"
 
-#: cp/call.cc:7768
+#: cp/call.cc:7779
 #, gcc-internal-format
 msgid "  initializing argument %P of %qD"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: cp/call.cc:7789
+#: cp/call.cc:7800
 #, fuzzy, gcc-internal-format
 msgid "conversions to arrays of unknown bound are only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/call.cc:7839
+#: cp/call.cc:7850
 #, gcc-internal-format
 msgid "too many braces around initializer for %qT"
 msgstr "liikaa aaltosulkeita %qT:n alustimen ympärillä"
 
 # XXX
 # %s on "initialization", jota EI VOI suomentaa tällä hetkellä.
-#: cp/call.cc:7850
+#: cp/call.cc:7861
 #, fuzzy
 msgid "converting to %qH from %qI requires direct-initialization"
 msgstr "ei voi muuntaa tyypistä %qT tyyppiin %qT (%s)"
 
-#: cp/call.cc:7859
+#: cp/call.cc:7870
 #, fuzzy
 msgid "invalid user-defined conversion from %qH to %qI"
 msgstr "virheellinen muunnos tyypistä %qT tyypiksi %qT"
 
-#: cp/call.cc:7896 cp/cvt.cc:227
+#: cp/call.cc:7907 cp/cvt.cc:227
 #, fuzzy
 msgid "invalid conversion from %qH to %qI"
 msgstr "virheellinen muunnos tyypistä %qT tyypiksi %qT"
 
-#: cp/call.cc:7938 cp/call.cc:7945
+#: cp/call.cc:7949 cp/call.cc:7956
 #, gcc-internal-format
 msgid "converting to %qT from initializer list would use explicit constructor %qD"
 msgstr ""
 
-#: cp/call.cc:7941
+#: cp/call.cc:7952
 #, gcc-internal-format
 msgid "in C++11 and above a default constructor can be explicit"
 msgstr ""
 
-#: cp/call.cc:8211
+#: cp/call.cc:8222
 #, fuzzy
 msgid "cannot bind rvalue reference of type %qH to lvalue of type %qI"
 msgstr "virheellinen %qT-tyyppisen ei-const-viittauksen alustus %qT-tyyppisestä väliaikaisesta muuttujasta"
 
-#: cp/call.cc:8220
+#: cp/call.cc:8231
 #, fuzzy
 msgid "cannot bind non-const lvalue reference of type %qH to a value of type %qI"
 msgstr "virheellinen %qT-tyyppisen ei-const-viittauksen alustus %qT-tyyppisestä väliaikaisesta muuttujasta"
 
-#: cp/call.cc:8225
+#: cp/call.cc:8236
 #, fuzzy
 msgid "cannot bind non-const lvalue reference of type %qH to an rvalue of type %qI"
 msgstr "virheellinen %qT-tyyppisen ei-const-viittauksen alustus %qT-tyyppisestä väliaikaisesta muuttujasta"
 
 #. extype is volatile
-#: cp/call.cc:8228
+#: cp/call.cc:8239
 #, fuzzy
 msgid "cannot bind lvalue reference of type %qH to an rvalue of type %qI"
 msgstr "virheellinen %qT-tyyppisen ei-const-viittauksen alustus %qT-tyyppisestä väliaikaisesta muuttujasta"
 
-#: cp/call.cc:8241
+#: cp/call.cc:8252
 #, fuzzy
 msgid "cannot bind reference of type %qH to %qI due to different array bounds"
 msgstr "virheellinen %qT-tyyppisen ei-const-viittauksen alustus %qT-tyyppisestä väliaikaisesta muuttujasta"
 
 # Tämä esiintynee esim. const char* → char* -muunnoksessa.
-#: cp/call.cc:8244
+#: cp/call.cc:8255
 #, fuzzy
 msgid "binding reference of type %qH to %qI discards qualifiers"
 msgstr "muunnos tyypistä %qT tyyppiin %qT ei säilytä tyyppimääreitä"
 
 # XXX
 # %s on "initialization", jota EI VOI suomentaa tällä hetkellä.
-#: cp/call.cc:8283
+#: cp/call.cc:8294
 #, fuzzy, gcc-internal-format
 msgid "cannot bind bit-field %qE to %qT"
 msgstr "ei voi muuntaa tyypistä %1$qT tyyppiin %2$qT %4$qD:n argumentiksi %3$qP"
 
 # XXX
 # %s on "initialization", jota EI VOI suomentaa tällä hetkellä.
-#: cp/call.cc:8286 cp/call.cc:8304
+#: cp/call.cc:8297 cp/call.cc:8315
 #, fuzzy, gcc-internal-format
 msgid "cannot bind packed field %qE to %qT"
 msgstr "ei voi muuntaa tyypistä %1$qT tyyppiin %2$qT %4$qD:n argumentiksi %3$qP"
 
 # XXX
 # %s on "initialization", jota EI VOI suomentaa tällä hetkellä.
-#: cp/call.cc:8289
+#: cp/call.cc:8300
 #, fuzzy, gcc-internal-format
 msgid "cannot bind rvalue %qE to %qT"
 msgstr "ei voi muuntaa tyypistä %1$qT tyyppiin %2$qT %4$qD:n argumentiksi %3$qP"
 
-#: cp/call.cc:8484
+#: cp/call.cc:8495
 #, fuzzy
 msgid "implicit conversion from %qH to %qI when passing argument to function"
 msgstr "muunnos tyypistä %qT tyyppiin %qT on moniselitteinen"
 
-#: cp/call.cc:8511 cp/cvt.cc:1985
+#: cp/call.cc:8522 cp/cvt.cc:1988
 #, gcc-internal-format
 msgid "scoped enum %qT passed through %<...%> as %qT before %<-fabi-version=6%>, %qT after"
 msgstr ""
 
-#: cp/call.cc:8555
+#: cp/call.cc:8566
 #, fuzzy, gcc-internal-format
 msgid "passing objects of non-trivially-copyable type %q#T through %<...%> is conditionally supported"
 msgstr "ei-triviaalisti-kopioitavan tyyppisiä %q#T-olioita ei voi välittää %<...%>:n kautta"
 
-#: cp/call.cc:8591
+#: cp/call.cc:8602
 #, fuzzy, gcc-internal-format
 msgid "cannot receive reference type %qT through %<...%>"
 msgstr "ei-triviaalisti-kopioitavan tyyppisiä %q#T-olioita ei voi vastaanottaa %<...%>:n kautta"
 
-#: cp/call.cc:8601
+#: cp/call.cc:8612
 #, fuzzy, gcc-internal-format
 msgid "receiving objects of non-trivially-copyable type %q#T through %<...%> is conditionally-supported"
 msgstr "ei-triviaalisti-kopioitavan tyyppisiä %q#T-olioita ei voi vastaanottaa %<...%>:n kautta"
 
-#: cp/call.cc:8669
+#: cp/call.cc:8680
 #, fuzzy, gcc-internal-format
 msgid "recursive evaluation of default argument for %q#D"
 msgstr "oletusargumentti annettu %2$q#D:n parametrille %1$d"
 
-#: cp/call.cc:8678
+#: cp/call.cc:8689
 #, gcc-internal-format
 msgid "call to %qD uses the default argument for parameter %P, which is not yet defined"
 msgstr ""
 
-#: cp/call.cc:8778
+#: cp/call.cc:8789
 #, gcc-internal-format
 msgid "argument of function call might be a candidate for a format attribute"
 msgstr "funktiokutsun argumentti voi olla ehdokas muotoiluattribuutille"
 
 # XXX
-#: cp/call.cc:8840
+#: cp/call.cc:8851
 #, fuzzy, gcc-internal-format
 msgid "use of multiversioned function without a default"
 msgstr "%Hswitch-lauseesta puuttuu default-nimike"
 
 # Tämä esiintynee esim. const char* → char* -muunnoksessa.
-#: cp/call.cc:9442
+#: cp/call.cc:9454
 #, fuzzy, gcc-internal-format
 msgid "passing %qT as %<this%> argument discards qualifiers"
 msgstr "muunnos tyypistä %qT tyyppiin %qT ei säilytä tyyppimääreitä"
 
-#: cp/call.cc:9445 cp/call.cc:12115
+#: cp/call.cc:9457 cp/call.cc:12148
 #, fuzzy, gcc-internal-format
 msgid "  in call to %qD"
 msgstr "%J%qD esitelty turhaan uudestaan"
 
-#: cp/call.cc:9470
+#: cp/call.cc:9482
 #, fuzzy, gcc-internal-format
 msgid "%qT is not an accessible base of %qT"
 msgstr "perustyypin %qT kaksoiskappale virheellinen"
 
-#: cp/call.cc:9667
+#: cp/call.cc:9679
 #, fuzzy, gcc-internal-format
 msgid "passing arguments to ellipsis of inherited constructor %qD"
 msgstr "liikaa argumentteja muodostimelle %q#D"
 
-#: cp/call.cc:9802
+#: cp/call.cc:9814
 #, gcc-internal-format
 msgid "assignment from temporary %<initializer_list%> does not extend the lifetime of the underlying array"
 msgstr ""
 
-#: cp/call.cc:10198
+#: cp/call.cc:10210
 #, fuzzy, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with no trivial copy-assignment"
 msgstr "%q#T-tyyppisiä epä-POD-objekteja ei voi välittää %<...%>:n kautta, ohjelma tulee keskeytymään ajettaessa"
 
-#: cp/call.cc:10201
+#: cp/call.cc:10213
 #, fuzzy, gcc-internal-format
 msgid "%qD writing to an object of non-trivial type %#qT%s"
 msgstr "%q#T-tyyppisiä epä-POD-objekteja ei voi välittää %<...%>:n kautta, ohjelma tulee keskeytymään ajettaessa"
 
-#: cp/call.cc:10206
+#: cp/call.cc:10218
 #, fuzzy, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with %qs member %qD"
 msgstr "%q#T-tyyppisiä epä-POD-objekteja ei voi välittää %<...%>:n kautta, ohjelma tulee keskeytymään ajettaessa"
 
-#: cp/call.cc:10211
+#: cp/call.cc:10223
 #, fuzzy, gcc-internal-format
 msgid "%qD writing to an object of type %#qT containing a pointer to data member%s"
 msgstr "%q#T-tyyppisiä epä-POD-objekteja ei voi välittää %<...%>:n kautta, ohjelma tulee keskeytymään ajettaessa"
 
-#: cp/call.cc:10226
+#: cp/call.cc:10238
 #, fuzzy, gcc-internal-format
 msgid "; use assignment or value-initialization instead"
 msgstr "sijoitus (ei alustus) esittelyssä"
 
-#: cp/call.cc:10228
+#: cp/call.cc:10240
 #, fuzzy, gcc-internal-format
 msgid "; use assignment instead"
 msgstr "käytä #includea sen sijaan"
 
-#: cp/call.cc:10230
+#: cp/call.cc:10242
 #, fuzzy, gcc-internal-format
 msgid "; use value-initialization instead"
 msgstr "virheellinen tyyppimuunnos funktiotyyppiin %qT"
 
-#: cp/call.cc:10233
+#: cp/call.cc:10245
 #, fuzzy, gcc-internal-format
 msgid "%qD clearing an object of type %#qT with no trivial copy-assignment%s"
 msgstr "%q#T-tyyppisiä epä-POD-objekteja ei voi välittää %<...%>:n kautta, ohjelma tulee keskeytymään ajettaessa"
 
-#: cp/call.cc:10236
+#: cp/call.cc:10248
 #, gcc-internal-format
 msgid "%qD clearing an object of non-trivial type %#qT%s"
 msgstr "%qD tyhjentää ei-triviaalintyyppisen objektin %#qT%s"
 
-#: cp/call.cc:10238
+#: cp/call.cc:10250
 #, fuzzy, gcc-internal-format
 msgid "%qD clearing an object of type %#qT containing a pointer-to-member%s"
 msgstr "%q#T-tyyppisiä epä-POD-objekteja ei voi välittää %<...%>:n kautta, ohjelma tulee keskeytymään ajettaessa"
 
-#: cp/call.cc:10259
+#: cp/call.cc:10271
 #, fuzzy, gcc-internal-format
 msgid "; use copy-assignment or copy-initialization instead"
 msgstr "sijoitus (ei alustus) esittelyssä"
 
-#: cp/call.cc:10261
+#: cp/call.cc:10273
 #, gcc-internal-format
 msgid "; use copy-assignment instead"
 msgstr "; käytä kopiosijoitusta sen sijaan"
 
-#: cp/call.cc:10263
+#: cp/call.cc:10275
 #, gcc-internal-format
 msgid "; use copy-initialization instead"
 msgstr "; käytä kopioalustusta sen sijaan"
 
-#: cp/call.cc:10266
+#: cp/call.cc:10278
 #, fuzzy, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with no trivial copy-assignment%s"
 msgstr "%q#T-tyyppisiä epä-POD-objekteja ei voi välittää %<...%>:n kautta, ohjelma tulee keskeytymään ajettaessa"
 
-#: cp/call.cc:10269
+#: cp/call.cc:10281
 #, gcc-internal-format
 msgid "%qD writing to an object of non-trivially copyable type %#qT%s"
 msgstr "%qD kirjoittaa ei-triviaalisti-kopioitavaan tyyppiin %#qT%s"
 
-#: cp/call.cc:10272
+#: cp/call.cc:10284
 #, fuzzy, gcc-internal-format
 msgid "%qD writing to an object with a deleted copy constructor"
 msgstr "%qD siirtää ei-triviaalisti-kopioitavan tyyppisen %q#T-olion; käytä %<new%>:tä ja %<delete%>:ä"
 
-#: cp/call.cc:10283
+#: cp/call.cc:10295
 #, fuzzy, gcc-internal-format
 msgid "%qD copying an object of non-trivial type %#qT from an array of %#qT"
 msgstr "%q#T-tyyppisiä epä-POD-objekteja ei voi välittää %<...%>:n kautta, ohjelma tulee keskeytymään ajettaessa"
 
-#: cp/call.cc:10295
+#: cp/call.cc:10307
 #, gcc-internal-format
 msgid "%qD copying an object of type %#qT with %qs member %qD from an array of %#qT; use assignment or copy-initialization instead"
 msgstr ""
 
-#: cp/call.cc:10312
+#: cp/call.cc:10324
 #, fuzzy, gcc-internal-format
 msgid "%qD writing to an object of a non-trivial type %#qT leaves %wu bytes unchanged"
 msgstr "%q#T-tyyppisiä epä-POD-objekteja ei voi välittää %<...%>:n kautta, ohjelma tulee keskeytymään ajettaessa"
 
-#: cp/call.cc:10315
+#: cp/call.cc:10327
 #, fuzzy, gcc-internal-format
 msgid "%qD writing to an object of a non-trivial type %#qT leaves %wu byte unchanged"
 msgstr "%q#T-tyyppisiä epä-POD-objekteja ei voi välittää %<...%>:n kautta, ohjelma tulee keskeytymään ajettaessa"
 
-#: cp/call.cc:10325
+#: cp/call.cc:10337
 #, gcc-internal-format
 msgid "%qD moving an object of non-trivially copyable type %#qT; use %<new%> and %<delete%> instead"
 msgstr "%qD siirtää ei-triviaalisti-kopioitavan tyyppisen %q#T-olion; käytä %<new%>:tä ja %<delete%>:ä"
 
-#: cp/call.cc:10328
+#: cp/call.cc:10340
 #, fuzzy, gcc-internal-format
 msgid "%qD moving an object of type %#qT with deleted copy constructor; use %<new%> and %<delete%> instead"
 msgstr "%qD siirtää ei-triviaalisti-kopioitavan tyyppisen %q#T-olion; käytä %<new%>:tä ja %<delete%>:ä"
 
-#: cp/call.cc:10331
+#: cp/call.cc:10343
 #, fuzzy, gcc-internal-format
 msgid "%qD moving an object of type %#qT with deleted destructor"
 msgstr "%qD siirtää ei-triviaalisti-kopioitavan tyyppisen %q#T-olion; käytä %<new%>:tä ja %<delete%>:ä"
 
-#: cp/call.cc:10340
+#: cp/call.cc:10352
 #, fuzzy, gcc-internal-format
 msgid "%qD moving an object of non-trivial type %#qT and size %E into a region of size %E"
 msgstr "%qD siirtää ei-triviaalisti-kopioitavan tyyppisen %q#T-olion; käytä %<new%>:tä ja %<delete%>:ä"
 
-#: cp/call.cc:10362
+#: cp/call.cc:10374
 #, gcc-internal-format
 msgid "%#qT declared here"
 msgstr "%#qT esitelty täällä"
 
-#: cp/call.cc:10462
+#: cp/call.cc:10428
+#, fuzzy, gcc-internal-format
+msgid "argument %u in call to function %qE has pointer to a non-trivially-copyable type (%qT)"
+msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
+
+#: cp/call.cc:10495
 #, fuzzy, gcc-internal-format
 msgid "constructor delegates to itself"
 msgstr "Kopiomuodostin %qs"
 
 # XXX
 # %s on "initialization", jota EI VOI suomentaa tällä hetkellä.
-#: cp/call.cc:10737 cp/typeck.cc:9870
+#: cp/call.cc:10770 cp/typeck.cc:9884
 #, fuzzy
 msgid "cannot convert %qH to %qI"
 msgstr "ei voi muuntaa tyypistä %1$qT tyyppiin %2$qT %4$qD:n argumentiksi %3$qP"
 
-#: cp/call.cc:10759
+#: cp/call.cc:10792
 #, fuzzy, gcc-internal-format
 msgid "no matching function for call to %<%T::operator %T(%A)%#V%>"
 msgstr "päättämätön kutsu funktioon ”%s”: puuttuva ”%c”"
 
-#: cp/call.cc:10791
+#: cp/call.cc:10824
 #, fuzzy, gcc-internal-format
 msgid "no matching function for call to %<%T::%s%E(%A)%#V%>"
 msgstr "päättämätön kutsu funktioon ”%s”: puuttuva ”%c”"
 
-#: cp/call.cc:10840
+#: cp/call.cc:10873
 #, fuzzy, gcc-internal-format
 msgid "call to non-function %qD"
 msgstr "%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/call.cc:10878 cp/pt.cc:16471 cp/typeck.cc:3330
+#: cp/call.cc:10911 cp/pt.cc:16500 cp/typeck.cc:3339
 #, gcc-internal-format
 msgid "cannot call constructor %<%T::%D%> directly"
 msgstr ""
 
-#: cp/call.cc:10880
+#: cp/call.cc:10913
 #, gcc-internal-format
 msgid "for a function-style cast, remove the redundant %<::%D%>"
 msgstr ""
 
-#: cp/call.cc:11072
+#: cp/call.cc:11105
 #, fuzzy, gcc-internal-format
 msgid "no matching function for call to %<%s(%A)%>"
 msgstr "päättämätön kutsu funktioon ”%s”: puuttuva ”%c”"
 
-#: cp/call.cc:11075
+#: cp/call.cc:11108
 #, fuzzy, gcc-internal-format
 msgid "call of overloaded %<%s(%A)%> is ambiguous"
 msgstr "%s: valitsin on moniselitteinen; vaihtoehdot:"
 
-#: cp/call.cc:11098
+#: cp/call.cc:11131
 #, fuzzy, gcc-internal-format
 msgid "pure virtual %q#D called from non-static data member initializer"
 msgstr "arvon palautus muodostimesta"
 
-#: cp/call.cc:11103
+#: cp/call.cc:11136
 #, fuzzy, gcc-internal-format
 msgid "pure virtual %q#D called from constructor"
 msgstr "arvon palautus muodostimesta"
 
-#: cp/call.cc:11104
+#: cp/call.cc:11137
 #, fuzzy, gcc-internal-format
 msgid "pure virtual %q#D called from destructor"
 msgstr "arvon palautus hajottimesta"
 
-#: cp/call.cc:11127
+#: cp/call.cc:11160
 #, gcc-internal-format
 msgid "cannot call member function %qD without object"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: cp/call.cc:12113
+#: cp/call.cc:12146
 #, fuzzy, gcc-internal-format
 msgid "passing %qT chooses %qT over %qT"
 msgstr "%qD ei ole %qD:n jäsen"
 
-#: cp/call.cc:12182
+#: cp/call.cc:12215
 #, fuzzy, gcc-internal-format
 msgid "choosing %qD over %qD"
 msgstr "%qD ei ole %qD:n jäsen"
 
-#: cp/call.cc:12183
+#: cp/call.cc:12216
 #, fuzzy
 msgid "  for conversion from %qH to %qI"
 msgstr "virheellinen muunnos tyypistä %qT tyypiksi %qT"
 
-#: cp/call.cc:12186
+#: cp/call.cc:12219
 #, gcc-internal-format
 msgid "  because conversion sequence for the argument is better"
 msgstr ""
 
-#: cp/call.cc:12436
+#: cp/call.cc:12469
 #, fuzzy, gcc-internal-format
 msgid "default argument mismatch in overload resolution"
 msgstr "oletusargumentti määritelty lambda-parametrille"
 
-#: cp/call.cc:12440
+#: cp/call.cc:12473
 #, fuzzy, gcc-internal-format
 msgid " candidate 1: %q#F"
 msgstr " ehdokas 1: %q+#F"
 
-#: cp/call.cc:12442
+#: cp/call.cc:12475
 #, fuzzy, gcc-internal-format
 msgid " candidate 2: %q#F"
 msgstr " ehdokas 2: %q+#F"
 
-#: cp/call.cc:12488
+#: cp/call.cc:12521
 #, 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 "ISO C++:n mukaan nämä ovat moniselitteisiä siitä huolimatta, että ensimmäisen huonoin muunnos on parempi kuin toisen huonoin:"
 
-#: cp/call.cc:12889
+#: cp/call.cc:12922
 #, gcc-internal-format
 msgid "a temporary bound to %qD only persists until the constructor exits"
 msgstr ""
 
-#: cp/call.cc:13044
+#: cp/call.cc:13077
 #, fuzzy
 msgid "invalid initialization of non-const reference of type %qH from an rvalue of type %qI"
 msgstr "virheellinen %qT-tyyppisen ei-const-viittauksen alustus %qT-tyyppisestä väliaikaisesta muuttujasta"
 
-#: cp/call.cc:13048
+#: cp/call.cc:13081
 #, fuzzy
 msgid "invalid initialization of reference of type %qH from expression of type %qI"
 msgstr "virheellinen %qT-tyyppisen viittauksen alustus %qT-tyyppisestä lausekkeesta"
@@ -48881,519 +49016,519 @@ msgstr "ei voi muuntaa tyyppiä %qT tyypiksi %qT"
 msgid "cannot convert from %qT to base class %qT because %qT is incomplete"
 msgstr "ei voi muuntaa tyyppiä %qT tyypiksi %qT"
 
-#: cp/class.cc:1204
+#: cp/class.cc:1209
 #, fuzzy, gcc-internal-format
 msgid "%q#D conflicts with version inherited from %qT"
 msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 
-#: cp/class.cc:1207
+#: cp/class.cc:1212
 #, fuzzy, gcc-internal-format
 msgid "version inherited from %qT declared here"
 msgstr "%qD esiteltiin täällä"
 
-#: cp/class.cc:1225
+#: cp/class.cc:1231
 #, fuzzy, gcc-internal-format
 msgid "%q#D cannot be overloaded with %q#D"
 msgstr "käyttämätön muuttuja %q+D"
 
-#: cp/class.cc:1227 cp/decl.cc:1761 cp/decl.cc:1773 cp/decl.cc:1798
-#: cp/decl.cc:1821 cp/name-lookup.cc:2735 cp/name-lookup.cc:3049
+#: cp/class.cc:1233 cp/decl.cc:1798 cp/decl.cc:1810 cp/decl.cc:1835
+#: cp/decl.cc:1858 cp/name-lookup.cc:2738 cp/name-lookup.cc:3052
 #, fuzzy, gcc-internal-format
 msgid "previous declaration %q#D"
 msgstr "edellinen esittely %q+D"
 
-#: cp/class.cc:1269
+#: cp/class.cc:1275
 #, fuzzy, gcc-internal-format
 msgid "conflicting access specifications for method %q+D, ignored"
 msgstr "ristiriitaiset tyyppimääreet %q+D:lle"
 
-#: cp/class.cc:1272
+#: cp/class.cc:1278
 #, fuzzy, gcc-internal-format
 msgid "conflicting access specifications for field %qE, ignored"
 msgstr "useita tallennusluokkia esittelymääritteissä"
 
-#: cp/class.cc:1341
+#: cp/class.cc:1381
 #, gcc-internal-format
 msgid "%qD invalid in %q#T because of local method %q#D with same name"
 msgstr ""
 
-#: cp/class.cc:1345
+#: cp/class.cc:1385
 #, fuzzy, gcc-internal-format
 msgid "local method %q#D declared here"
 msgstr "%q+D esitelty täällä"
 
-#: cp/class.cc:1351
+#: cp/class.cc:1390
 #, gcc-internal-format
 msgid "%qD invalid in %q#T because of local member %q#D with same name"
 msgstr ""
 
-#: cp/class.cc:1355
+#: cp/class.cc:1394
 #, fuzzy, gcc-internal-format
 msgid "local member %q#D declared here"
 msgstr "%q+#D aiemmin esitelty täällä"
 
-#: cp/class.cc:1432
+#: cp/class.cc:1465
 #, gcc-internal-format
 msgid "%qD inherits the %E ABI tag that %qT (used in its return type) has"
 msgstr "%qD perii %E-ABI-tunnisteen, jota %qT käyttää (paluutyypissään)"
 
-#: cp/class.cc:1435 cp/class.cc:1442 cp/class.cc:1449 cp/class.cc:1461
+#: cp/class.cc:1468 cp/class.cc:1475 cp/class.cc:1482 cp/class.cc:1494
 #: cp/cvt.cc:1098
 #, fuzzy, gcc-internal-format
 msgid "%qT declared here"
 msgstr "esitelty täällä"
 
-#: cp/class.cc:1440
+#: cp/class.cc:1473
 #, gcc-internal-format
 msgid "%qD inherits the %E ABI tag that %qT (used in its type) has"
 msgstr "%qD perii %E-ABI-tunnisteen, jota %qT käyttää (tyypissään)"
 
-#: cp/class.cc:1447
+#: cp/class.cc:1480
 #, fuzzy, gcc-internal-format
 msgid "%qT does not have the %E ABI tag that base %qT has"
 msgstr "%qD perii %E-ABI-tunnisteen, jota %qT käyttää (paluutyypissään)"
 
-#: cp/class.cc:1455
+#: cp/class.cc:1488
 #, fuzzy, gcc-internal-format
 msgid "%qT does not have the %E ABI tag that %qT (used in the type of %qD) has"
 msgstr "%qD perii %E-ABI-tunnisteen, jota %qT käyttää (paluutyypissään)"
 
-#: cp/class.cc:1766
+#: cp/class.cc:1799
 #, gcc-internal-format
 msgid "cannot derive from %<final%> base %qT in derived type %qT"
 msgstr ""
 
-#: cp/class.cc:2240
+#: cp/class.cc:2273
 #, fuzzy, gcc-internal-format
 msgid "all member functions in class %qT are private"
 msgstr "staattinen jäsenfunktio %q#D esitelty tyyppimääreillä"
 
-#: cp/class.cc:2252
+#: cp/class.cc:2285
 #, gcc-internal-format
 msgid "%q#T only defines a private destructor and has no friends"
 msgstr ""
 
-#: cp/class.cc:2295
+#: cp/class.cc:2328
 #, gcc-internal-format
 msgid "%q#T only defines private constructors and has no friends"
 msgstr ""
 
-#: cp/class.cc:2299
+#: cp/class.cc:2332
 #, gcc-internal-format
 msgid "%q#D is public, but requires an existing %q#T object"
 msgstr ""
 
-#: cp/class.cc:2589
+#: cp/class.cc:2622
 #, gcc-internal-format
 msgid "no unique final overrider for %qD in %qT"
 msgstr ""
 
-#: cp/class.cc:2949
+#: cp/class.cc:2982
 #, fuzzy, gcc-internal-format
 msgid "%qD can be marked override"
 msgstr "%q+D esitelty täällä"
 
-#: cp/class.cc:2952
+#: cp/class.cc:2985
 #, fuzzy, gcc-internal-format
 msgid "%q+#D marked %<override%>, but does not override"
 msgstr "%Jnimike %qD määritelty, mutta ei käytetty"
 
-#: cp/class.cc:2967
+#: cp/class.cc:3000
 #, fuzzy, gcc-internal-format
 msgid "%q+#D marked %<final%>, but is not virtual"
 msgstr "funktion %q+D määrittely on merkitty dllimport-tyyppiseksi"
 
-#: cp/class.cc:3029
+#: cp/class.cc:3062
 #, fuzzy, gcc-internal-format
 msgid "%qD was hidden"
 msgstr "Näytä _piilotetut"
 
-#: cp/class.cc:3030
+#: cp/class.cc:3063
 #, fuzzy, gcc-internal-format
 msgid "  by %qD"
 msgstr "nimellä %qD"
 
-#: cp/class.cc:3242
+#: cp/class.cc:3275
 #, fuzzy, gcc-internal-format
 msgid "the ellipsis in %qD is not inherited"
 msgstr "Varoita perittyjen metodien puuttuvista toteutuksista"
 
-#: cp/class.cc:3434
+#: cp/class.cc:3467
 #, gcc-internal-format
 msgid "bit-field %q#D with non-integral type %qT"
 msgstr "bittikenttä %q#D, jolla on ei-kokonaislukutyyppi %qT"
 
-#: cp/class.cc:3450
+#: cp/class.cc:3483
 #, gcc-internal-format
 msgid "bit-field %q+D width not an integer constant"
 msgstr "bittikentän %q+D leveys ei ole kokonaislukuvakio"
 
-#: cp/class.cc:3455
+#: cp/class.cc:3488
 #, gcc-internal-format
 msgid "negative width in bit-field %q+D"
 msgstr "bittikentän %q+D leveys negatiivinen"
 
-#: cp/class.cc:3460
+#: cp/class.cc:3493
 #, gcc-internal-format
 msgid "zero width for bit-field %q+D"
 msgstr "bittikentän %q+D leveys nolla"
 
-#: cp/class.cc:3470
+#: cp/class.cc:3503
 #, fuzzy, gcc-internal-format
 msgid "width of %qD exceeds its type"
 msgstr "bittikentän %qs leveys ylittää tyyppinsä"
 
-#: cp/class.cc:3476
+#: cp/class.cc:3509
 #, fuzzy, gcc-internal-format
 msgid "%qD is too small to hold all values of %q#T"
 msgstr "%q+D on liian pieni sisältämään %q#T:n kaikkia arvoja"
 
-#: cp/class.cc:3537
+#: cp/class.cc:3570
 #, fuzzy, gcc-internal-format
 msgid "member %q+#D with constructor not allowed in union"
 msgstr "ei argumentteja"
 
-#: cp/class.cc:3540
+#: cp/class.cc:3573
 #, fuzzy, gcc-internal-format
 msgid "member %q+#D with destructor not allowed in union"
 msgstr "ei argumentteja"
 
-#: cp/class.cc:3542
+#: cp/class.cc:3575
 #, fuzzy, gcc-internal-format
 msgid "member %q+#D with copy assignment operator not allowed in union"
 msgstr "ei argumentteja"
 
-#: cp/class.cc:3546
+#: cp/class.cc:3579
 #, fuzzy, gcc-internal-format
 msgid "unrestricted unions only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/class.cc:3662
+#: cp/class.cc:3695
 #, fuzzy, gcc-internal-format
 msgid "in C++98 %q+D may not be static because it is a member of a union"
 msgstr "%q+D ei voi olla staattinen koska se on unionin jäsen"
 
-#: cp/class.cc:3675
+#: cp/class.cc:3708
 #, fuzzy, gcc-internal-format
 msgid "non-static data member %q+D in a union may not have reference type %qT"
 msgstr "ei-staattisella datajäsenellä %qD on Java-luokkatyyppi"
 
-#: cp/class.cc:3688
+#: cp/class.cc:3721
 #, fuzzy, gcc-internal-format
 msgid "data member %q+D invalidly declared function type"
 msgstr "staattinen jäsenfunktio %q#D esitelty tyyppimääreillä"
 
-#: cp/class.cc:3694
+#: cp/class.cc:3727
 #, fuzzy, gcc-internal-format
 msgid "data member %q+D invalidly declared method type"
 msgstr "parametri %qD virheellisesti esitelty metodityyppi"
 
-#: cp/class.cc:3765
+#: cp/class.cc:3798
 #, gcc-internal-format
 msgid "ignoring packed attribute because of unpacked non-POD field %q#D"
 msgstr ""
 
-#: cp/class.cc:3817
+#: cp/class.cc:3850
 #, fuzzy, gcc-internal-format
 msgid "member %q+D cannot be declared as a %<mutable%> reference"
 msgstr "%Jparametri %qD esitelty %<inline%>:ksi"
 
-#: cp/class.cc:3820
+#: cp/class.cc:3853
 #, fuzzy, gcc-internal-format
 msgid "member %q+D cannot be declared both %<const%> and %<mutable%>"
 msgstr "jäsentä %qD ei voida esitellä sekä virtuaaliseksi että staattiseksi"
 
-#: cp/class.cc:3851
+#: cp/class.cc:3884
 #, gcc-internal-format
 msgid "multiple fields in union %qT initialized"
 msgstr "useita kenttiä unionissa %qT alustettu"
 
-#: cp/class.cc:3853
+#: cp/class.cc:3886
 #, fuzzy, gcc-internal-format
 msgid "initialized member %q+D declared here"
 msgstr "%q+#D aiemmin esitelty täällä"
 
-#: cp/class.cc:3901
+#: cp/class.cc:3934
 #, fuzzy, gcc-internal-format
 msgid "field %q#D with same name as class"
 msgstr "kentällä %q+#D on sama nimi kuin luokalla"
 
-#: cp/class.cc:3929
+#: cp/class.cc:3962
 #, gcc-internal-format
 msgid "%q#T has pointer data members"
 msgstr "luokalla %q#T on datajäseninä osoittimia"
 
-#: cp/class.cc:3934
+#: cp/class.cc:3967
 #, fuzzy, gcc-internal-format
 msgid "  but does not declare %<%T(const %T&)%>"
 msgstr "  mutta ei ylikuormitusta %<%T(const %T&)%>"
 
-#: cp/class.cc:3936
+#: cp/class.cc:3969
 #, gcc-internal-format
 msgid "  or %<operator=(const %T&)%>"
 msgstr "  eikä %<operator=(const %T&)%>"
 
-#: cp/class.cc:3940
+#: cp/class.cc:3973
 #, fuzzy, gcc-internal-format
 msgid "  but does not declare %<operator=(const %T&)%>"
 msgstr "  mutta ei ylikuormitusta %<operator=(const %T&)%>"
 
-#: cp/class.cc:3942
+#: cp/class.cc:3975
 #, fuzzy, gcc-internal-format
 msgid "pointer member %q+D declared here"
 msgstr "%q+#D aiemmin esitelty täällä"
 
-#: cp/class.cc:4399
+#: cp/class.cc:4432
 #, fuzzy, gcc-internal-format
 msgid "alignment of %qD increased in %<-fabi-version=9%> (GCC 5.2)"
 msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 
-#: cp/class.cc:4402
+#: cp/class.cc:4435
 #, fuzzy, gcc-internal-format
 msgid "alignment of %qD will increase in %<-fabi-version=9%>"
 msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 
-#: cp/class.cc:4730
+#: cp/class.cc:4763
 #, fuzzy, gcc-internal-format
 msgid "initializer specified for non-virtual method %q+D"
 msgstr "indeksoitu arvo on osoitin funktioon"
 
-#: cp/class.cc:4763
+#: cp/class.cc:4796
 #, gcc-internal-format
 msgid "destructor for %qT is ambiguous"
 msgstr "%qT:n hajotin on moniselitteinen"
 
-#: cp/class.cc:5216
+#: cp/class.cc:5249
 #, gcc-internal-format
 msgid "method overrides both %<transaction_pure%> and %qE methods"
 msgstr ""
 
-#: cp/class.cc:5237
+#: cp/class.cc:5270
 #, fuzzy, gcc-internal-format
 msgid "method declared %qE overriding %qE method"
 msgstr "liikaa argumentteja metodille %qE"
 
-#: cp/class.cc:5861 cp/constexpr.cc:261
+#: cp/class.cc:5894 cp/constexpr.cc:261
 #, fuzzy, gcc-internal-format
 msgid "enclosing class of %<constexpr%> non-static member function %q+#D is not a literal type"
 msgstr "%q+D-funktion paluuarvon tyyppi ei ole %<int%>"
 
-#: cp/class.cc:5887
+#: cp/class.cc:5920
 #, gcc-internal-format
 msgid "%q+T is not literal because:"
 msgstr "%q+T ei ole literaali, koska:"
 
-#: cp/class.cc:5890
+#: cp/class.cc:5923
 #, gcc-internal-format
 msgid "  %qT is a closure type, which is only literal in C++17 and later"
 msgstr "  %qT on sulkeumatyyppi, joka on literaali vasta C++17:stä alkaen"
 
-#: cp/class.cc:5893
+#: cp/class.cc:5926
 #, gcc-internal-format
 msgid "  %q+T has a non-trivial destructor"
 msgstr "  %q+T:n hajotin on epätriviaali"
 
-#: cp/class.cc:5896
+#: cp/class.cc:5929
 #, fuzzy, gcc-internal-format
 msgid "  %q+T does not have %<constexpr%> destructor"
 msgstr "esittely ei esittele mitään"
 
-#: cp/class.cc:5904
+#: cp/class.cc:5937
 #, gcc-internal-format
 msgid "  %q+T is not an aggregate, does not have a trivial default constructor, and has no %<constexpr%> constructor that is not a copy or move constructor"
 msgstr ""
 
-#: cp/class.cc:5937
+#: cp/class.cc:5970
 #, gcc-internal-format
 msgid "  base class %qT of %q+T is non-literal"
 msgstr ""
 
-#: cp/class.cc:5952
+#: cp/class.cc:5985
 #, fuzzy, gcc-internal-format
 msgid "  non-static data member %qD has non-literal type"
 msgstr "ei-staattisella datajäsenellä %qD on Java-luokkatyyppi"
 
-#: cp/class.cc:5959
+#: cp/class.cc:5992
 #, fuzzy, gcc-internal-format
 msgid "  non-static data member %qD has volatile type"
 msgstr "ei-staattisella datajäsenellä %qD on Java-luokkatyyppi"
 
-#: cp/class.cc:6090
+#: cp/class.cc:6123
 #, fuzzy, gcc-internal-format
 msgid "base class %q#T has accessible non-virtual destructor"
 msgstr "luokalla %q#T on virtuaalifunktioita ja käytettävissä oleva epävirtuaalinen hajotin"
 
-#: cp/class.cc:6119
+#: cp/class.cc:6152
 #, fuzzy, gcc-internal-format
 msgid "non-static reference %q#D in class without a constructor"
 msgstr "ei-staattinen datajäsen %qE esitelty %<constexpr%>:ksi"
 
-#: cp/class.cc:6125
+#: cp/class.cc:6158
 #, fuzzy, gcc-internal-format
 msgid "non-static const member %q#D in class without a constructor"
 msgstr "ei-staattinen datajäsen %qE esitelty %<constexpr%>:ksi"
 
-#: cp/class.cc:6457
+#: cp/class.cc:6490
 #, fuzzy, gcc-internal-format
 msgid "offset of %qT base class for %<-std=c++14%> and up changes in %<-fabi-version=17%> (GCC 12)"
 msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 
-#: cp/class.cc:6461
+#: cp/class.cc:6494
 #, fuzzy, gcc-internal-format
 msgid "offset of %qD for %<-std=c++14%> and up changes in %<-fabi-version=17%> (GCC 12)"
 msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 
-#: cp/class.cc:6501
+#: cp/class.cc:6534
 #, gcc-internal-format
 msgid "direct base %qT inaccessible in %qT due to ambiguity"
 msgstr ""
 
-#: cp/class.cc:6513
+#: cp/class.cc:6546
 #, gcc-internal-format
 msgid "virtual base %qT inaccessible in %qT due to ambiguity"
 msgstr ""
 
-#: cp/class.cc:6755
+#: cp/class.cc:6788
 #, fuzzy, gcc-internal-format
 msgid "offset of %qD is not ABI-compliant and may change in a future version of GCC"
 msgstr "tyhjästä luokasta %qT perittyjen luokkien rakenne saattaa muuttua GCC:n tulevissa versioissa"
 
-#: cp/class.cc:6950
+#: cp/class.cc:6983
 #, fuzzy, gcc-internal-format
 msgid "size of type %qT is too large (%qE bytes)"
 msgstr "taulukon %qE koko on liian suuri"
 
-#: cp/class.cc:7236
+#: cp/class.cc:7269
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %q#T with a zero-size array in %q#D"
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: cp/class.cc:7238
+#: cp/class.cc:7271
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %q#T with a flexible array member in %q#T"
 msgstr "joustavan taulukkojäsenen sisältävän tietueen epäkelpo käyttö"
 
-#: cp/class.cc:7243
+#: cp/class.cc:7276
 #, fuzzy, gcc-internal-format
 msgid "array member %q#D declared here"
 msgstr "%q+#D aiemmin esitelty täällä"
 
-#: cp/class.cc:7271
+#: cp/class.cc:7304
 #, fuzzy, gcc-internal-format
 msgid "zero-size array member %qD not at end of %q#T"
 msgstr "joustava taulukkojäsen ei ole structin lopussa"
 
-#: cp/class.cc:7273
+#: cp/class.cc:7306
 #, fuzzy, gcc-internal-format
 msgid "zero-size array member %qD in an otherwise empty %q#T"
 msgstr "joustava taulukkojäsen muuten tyhjässä structissa"
 
-#: cp/class.cc:7282 cp/class.cc:7313
+#: cp/class.cc:7315 cp/class.cc:7346
 #, fuzzy, gcc-internal-format
 msgid "in the definition of %q#T"
 msgstr "edellinen %q+#T:n määrittely"
 
-#: cp/class.cc:7290
+#: cp/class.cc:7323
 #, fuzzy, gcc-internal-format
 msgid "flexible array member %qD not at end of %q#T"
 msgstr "joustava taulukkojäsen ei ole structin lopussa"
 
-#: cp/class.cc:7292
+#: cp/class.cc:7325
 #, fuzzy, gcc-internal-format
 msgid "flexible array member %qD in an otherwise empty %q#T"
 msgstr "joustava taulukkojäsen muuten tyhjässä structissa"
 
-#: cp/class.cc:7311
+#: cp/class.cc:7344
 #, fuzzy, gcc-internal-format
 msgid "next member %q#D declared here"
 msgstr "%q+#D aiemmin esitelty täällä"
 
-#: cp/class.cc:7425 cp/decl.cc:16682 cp/parser.cc:26624
+#: cp/class.cc:7458 cp/decl.cc:16815 cp/parser.cc:26622
 #, gcc-internal-format
 msgid "redefinition of %q#T"
 msgstr "%q#T uudelleenmääritelty"
 
-#: cp/class.cc:7569
+#: cp/class.cc:7602
 #, gcc-internal-format
 msgid "%q#T has virtual functions and accessible non-virtual destructor"
 msgstr "luokalla %q#T on virtuaalifunktioita ja käytettävissä oleva epävirtuaalinen hajotin"
 
-#: cp/class.cc:7597
+#: cp/class.cc:7630
 #, fuzzy, gcc-internal-format
 msgid "type transparent %q#T does not have any fields"
 msgstr "luokalla %qT ei ole %qD-nimistä kenttää"
 
-#: cp/class.cc:7603
+#: cp/class.cc:7636
 #, fuzzy, gcc-internal-format
 msgid "type transparent class %qT has base classes"
 msgstr "%<this%> ei ole käytettävissä staattisissa jäsenfunktioissa"
 
-#: cp/class.cc:7607
+#: cp/class.cc:7640
 #, fuzzy, gcc-internal-format
 msgid "type transparent class %qT has virtual functions"
 msgstr "%<this%> ei ole käytettävissä staattisissa jäsenfunktioissa"
 
-#: cp/class.cc:7613
+#: cp/class.cc:7646
 #, gcc-internal-format
 msgid "type transparent %q#T cannot be made transparent because the type of the first field has a different ABI from the class overall"
 msgstr ""
 
-#: cp/class.cc:7772
+#: cp/class.cc:7798
 #, fuzzy, gcc-internal-format
 msgid "definition of %qD does not match %<#include <initializer_list>%>"
 msgstr "funktion %q+D määrittely on merkitty dllimport-tyyppiseksi"
 
-#: cp/class.cc:7783
+#: cp/class.cc:7809
 #, gcc-internal-format
 msgid "trying to finish struct, but kicked out due to previous parse errors"
 msgstr ""
 
-#: cp/class.cc:8290
+#: cp/class.cc:8316
 #, fuzzy, gcc-internal-format
 msgid "language string %<\"%E\"%> not recognized"
 msgstr "Kieli:"
 
-#: cp/class.cc:8380
+#: cp/class.cc:8406
 #, fuzzy, gcc-internal-format
 msgid "cannot resolve overloaded function %qD based on conversion to type %qT"
 msgstr "Varoita ylikuormitetuista virtuaalifunktioiden nimistä"
 
-#: cp/class.cc:8538
+#: cp/class.cc:8564
 #, fuzzy, gcc-internal-format
 msgid "no matches converting function %qD to type %q#T"
 msgstr "ei voi muuntaa tyyppiä %qT tyypiksi %qT"
 
-#: cp/class.cc:8565
+#: cp/class.cc:8591
 #, fuzzy, gcc-internal-format
 msgid "converting overloaded function %qD to type %q#T is ambiguous"
 msgstr "muunnos tyypistä %qT tyyppiin %qT on moniselitteinen"
 
-#: cp/class.cc:8592
+#: cp/class.cc:8618
 #, fuzzy, gcc-internal-format
 msgid "assuming pointer to member %qD"
 msgstr "%qD ei ole %qD:n jäsen"
 
-#: cp/class.cc:8595
+#: cp/class.cc:8621
 #, fuzzy, gcc-internal-format
 msgid "(a pointer to member can only be formed with %<&%E%>)"
 msgstr "keskeytyskäsittelijät eivät voi olla MIPS16-funktioita"
 
-#: cp/class.cc:8671 cp/class.cc:8713
+#: cp/class.cc:8697 cp/class.cc:8739
 #, fuzzy, gcc-internal-format
 msgid "not enough type information"
 msgstr "liian vähän argumentteja"
 
-#: cp/class.cc:8691
+#: cp/class.cc:8717
 #, gcc-internal-format
 msgid "cannot convert %qE from type %qT to type %qT"
 msgstr "%qE:ta ei voi muuntaa tyypistä %qT tyyppiin %qT"
 
-#: cp/class.cc:8965
+#: cp/class.cc:8991
 #, fuzzy, gcc-internal-format
 msgid "declaration of %q#D changes meaning of %qD"
 msgstr "%qD:n esittely %qT:n jäsenenä"
 
-#: cp/class.cc:8968
+#: cp/class.cc:8994
 #, fuzzy, gcc-internal-format
 msgid "%qD declared here as %q#D"
 msgstr "%q+D esitelty uudelleen erityyppisenä symbolina"
@@ -49428,7 +49563,7 @@ msgstr "epäkelpo tallennusluokka funktiolle %qs"
 msgid "lambdas are implicitly %<constexpr%> only in C++17 and later"
 msgstr ""
 
-#: cp/constexpr.cc:232 cp/decl.cc:13817
+#: cp/constexpr.cc:232 cp/decl.cc:13944
 #, fuzzy, gcc-internal-format
 msgid "%<constexpr%> destructors only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
@@ -49478,7 +49613,7 @@ msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 msgid "%q+E is not a constant expression"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: cp/constexpr.cc:1851 cp/constexpr.cc:8494
+#: cp/constexpr.cc:1851 cp/constexpr.cc:8594
 #, fuzzy, gcc-internal-format
 msgid "call to internal function %qE"
 msgstr "lopetusalkio puuttuu funktiokutsusta"
@@ -49524,7 +49659,7 @@ msgstr "muunnos tyypistä %qT tyyppiin %qT on moniselitteinen"
 msgid "dynamic type %qT of its operand does not have an unambiguous public base class %qT"
 msgstr ""
 
-#: cp/constexpr.cc:2315 cp/constexpr.cc:2590 cp/constexpr.cc:8526
+#: cp/constexpr.cc:2315 cp/constexpr.cc:2590 cp/constexpr.cc:8626
 #, fuzzy, gcc-internal-format
 msgid "call to non-%<constexpr%> function %qD"
 msgstr "%qD:n esittely ei-funktiona"
@@ -49647,8 +49782,8 @@ msgstr "taulukon tyypillä on vaillinainen alkiotyyppi"
 msgid "dereferencing a null pointer in %qE"
 msgstr "%<void *%>-tyyppistä osoitinta käytetty laskutoimituksessa"
 
-#: cp/constexpr.cc:4077 cp/constexpr.cc:4176 cp/constexpr.cc:6528
-#: cp/constexpr.cc:6627 cp/constexpr.cc:8446
+#: cp/constexpr.cc:4077 cp/constexpr.cc:4176 cp/constexpr.cc:6606
+#: cp/constexpr.cc:6705 cp/constexpr.cc:8546
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a constant expression"
 msgstr "ylivuoto vakiolausekkeessa"
@@ -49743,7 +49878,7 @@ msgstr "jäsen %qD on alustamaton viittaus"
 msgid "%qs cannot be constant evaluated because the argument cannot be interpreted"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/constexpr.cc:5341 cp/constexpr.cc:7223
+#: cp/constexpr.cc:5341 cp/constexpr.cc:7302
 #, fuzzy, gcc-internal-format
 msgid "dereferencing a null pointer"
 msgstr "%<void *%>-tyyppistä osoitinta käytetty laskutoimituksessa"
@@ -49818,7 +49953,7 @@ msgstr "muunnos tyypistä %qT tyyppiin %qT"
 msgid "change of the active member of a union from %qD to %qD during initialization"
 msgstr "muunnos tyypistä %qT tyyppiin %qT"
 
-#: cp/constexpr.cc:6185 cp/constexpr.cc:7489
+#: cp/constexpr.cc:6185 cp/constexpr.cc:7581
 #, fuzzy, gcc-internal-format
 msgid "statement is not a constant expression"
 msgstr "liukulukuvakio esikääntäjän lausekkeessa"
@@ -49864,187 +49999,192 @@ msgstr ""
 msgid "you can stabilize this value with %<--param hardware_destructive_interference_size=%d%>, or disable this warning with %<-Wno-interference-size%>"
 msgstr ""
 
-#: cp/constexpr.cc:6490
+#: cp/constexpr.cc:6568
 #, fuzzy, gcc-internal-format
 msgid "value %qE of type %qT is not a constant expression"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: cp/constexpr.cc:6503
+#: cp/constexpr.cc:6581
 #, gcc-internal-format
 msgid "%<constexpr%> evaluation operation count exceeds limit of %wd (use %<-fconstexpr-ops-limit=%> to increase the limit)"
 msgstr ""
 
-#: cp/constexpr.cc:6655
+#: cp/constexpr.cc:6734
 #, fuzzy, gcc-internal-format
-msgid "control passes through declaration of %qD with thread storage duration"
-msgstr "%j%qD esitelty ei-säiekohtaisena, edellinen esittely säiekohtainen"
+msgid "control passes through definition of %qD with thread storage duration"
+msgstr "%qD:n poistettu määrittely"
 
-#: cp/constexpr.cc:6658
+#: cp/constexpr.cc:6737
 #, fuzzy, gcc-internal-format
-msgid "control passes through declaration of %qD with static storage duration"
+msgid "control passes through definition of %qD with static storage duration"
 msgstr "poistettu funktio %q+D"
 
-#: cp/constexpr.cc:6706 cp/constexpr.cc:9119
+#: cp/constexpr.cc:6785 cp/constexpr.cc:9226
 #, fuzzy, gcc-internal-format
 msgid "temporary of non-literal type %qT in a constant expression"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: cp/constexpr.cc:7142 cp/constexpr.cc:8651
+#: cp/constexpr.cc:7221 cp/constexpr.cc:8751
 #, fuzzy, gcc-internal-format
 msgid "%<reinterpret_cast%> is not a constant expression"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: cp/constexpr.cc:7170
+#: cp/constexpr.cc:7249
 #, fuzzy, gcc-internal-format
 msgid "conversion from pointer type %qT to arithmetic type %qT in a constant expression"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: cp/constexpr.cc:7198
+#: cp/constexpr.cc:7277
 #, fuzzy, gcc-internal-format
 msgid "cast from %qT is not allowed"
 msgstr "%s%qs%s ei ole sallittu"
 
-#: cp/constexpr.cc:7234
+#: cp/constexpr.cc:7313
 #, fuzzy, gcc-internal-format
 msgid "%<reinterpret_cast<%T>(%E)%> is not a constant expression"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: cp/constexpr.cc:7339 cp/constexpr.cc:8945 cp/constexpr.cc:9335
+#: cp/constexpr.cc:7431 cp/constexpr.cc:9045 cp/constexpr.cc:9446
 #, fuzzy, gcc-internal-format
 msgid "expression %qE is not a constant expression"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: cp/constexpr.cc:7386 cp/constexpr.cc:9373
+#: cp/constexpr.cc:7478 cp/constexpr.cc:9485
 #, fuzzy, gcc-internal-format
 msgid "%<goto%> is not a constant expression"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: cp/constexpr.cc:7442
+#: cp/constexpr.cc:7534
 #, fuzzy, gcc-internal-format
 msgid "unexpected template-id %qE"
 msgstr "odotettiin %<template%>"
 
-#: cp/constexpr.cc:7448 cp/constraint.cc:178 cp/constraint.cc:714
+#: cp/constexpr.cc:7540 cp/constraint.cc:178 cp/constraint.cc:714
 #, fuzzy, gcc-internal-format
 msgid "function concept must be called"
 msgstr "sisäinen funktio %q+D esitelty ei-funktiona"
 
-#: cp/constexpr.cc:7473
+#: cp/constexpr.cc:7565
 #, fuzzy, gcc-internal-format
 msgid "address of a call to %qs is not a constant expression"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/constexpr.cc:7492
+#: cp/constexpr.cc:7584
 #, fuzzy, gcc-internal-format
 msgid "unexpected expression %qE of kind %s"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: cp/constexpr.cc:7727
+#: cp/constexpr.cc:7842
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a constant expression because it refers to mutable subobjects of %qT"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/constexpr.cc:7735
+#: cp/constexpr.cc:7850
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a constant expression because it refers to an incompletely initialized variable"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/constexpr.cc:7750
+#: cp/constexpr.cc:7865
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a constant expression because it refers to a result of %<operator new%>"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/constexpr.cc:7761
+#: cp/constexpr.cc:7876
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a constant expression because allocated storage has not been deallocated"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/constexpr.cc:7779
+#: cp/constexpr.cc:7894
 #, gcc-internal-format
 msgid "immediate evaluation returns address of immediate function %qD"
 msgstr ""
 
-#: cp/constexpr.cc:8386
+#: cp/constexpr.cc:8486
 #, fuzzy, gcc-internal-format
 msgid "lvalue-to-rvalue conversion of a volatile lvalue %qE with type %qT"
 msgstr "virheellinen static_cast-muunnos tyypistä %qT tyyppiin %qT"
 
-#: cp/constexpr.cc:8616
+#: cp/constexpr.cc:8716
 #, fuzzy, gcc-internal-format
 msgid "lambda capture of %qE is not a constant expression"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: cp/constexpr.cc:8619
+#: cp/constexpr.cc:8719
 #, fuzzy, gcc-internal-format
 msgid "because it is used as a glvalue"
 msgstr "virheellinen %%s-arvo"
 
-#: cp/constexpr.cc:8671
+#: cp/constexpr.cc:8771
 #, fuzzy, gcc-internal-format
 msgid "%<reinterpret_cast%> from integer to pointer"
 msgstr "tyyppimuunnos osoittimesta erikokoiseen kokonaislukuun"
 
-#: cp/constexpr.cc:8704
+#: cp/constexpr.cc:8804
 #, fuzzy, gcc-internal-format
 msgid "address-of an object %qE with thread local or automatic storage is not a constant expression"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: cp/constexpr.cc:8743
+#: cp/constexpr.cc:8843
 #, fuzzy, gcc-internal-format
 msgid "use of %<this%> in a constant expression"
 msgstr "liukulukuvakio esikääntäjän lausekkeessa"
 
-#: cp/constexpr.cc:8891
+#: cp/constexpr.cc:8991
 #, fuzzy, gcc-internal-format
 msgid "lambda-expression is not a constant expression before C++17"
 msgstr "liukulukuvakio esikääntäjän lausekkeessa"
 
-#: cp/constexpr.cc:8959
+#: cp/constexpr.cc:9059
 #, fuzzy, gcc-internal-format
 msgid "virtual functions cannot be %<constexpr%> before C++20"
 msgstr "tyypillä %qE on virtuaalisia jäsenfunktioita"
 
-#: cp/constexpr.cc:8974
+#: cp/constexpr.cc:9074
 #, fuzzy, gcc-internal-format
 msgid "%<typeid%> is not a constant expression because %qE is of polymorphic type"
 msgstr "liukulukuvakio esikääntäjän lausekkeessa"
 
-#: cp/constexpr.cc:9038
+#: cp/constexpr.cc:9138
 #, fuzzy, gcc-internal-format
 msgid "cast to non-integral type %qT in a constant expression"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: cp/constexpr.cc:9088
+#: cp/constexpr.cc:9195
 #, fuzzy, gcc-internal-format
-msgid "%qD declared %<thread_local%> in %<constexpr%> context"
+msgid "%qD defined %<thread_local%> in %<constexpr%> context"
 msgstr "tallennusluokka %<thread_local%> virheellinen funktiolle %qs"
 
-#: cp/constexpr.cc:9095
+#: cp/constexpr.cc:9202
 #, fuzzy, gcc-internal-format
-msgid "%qD declared %<static%> in %<constexpr%> context"
+msgid "%qD defined %<static%> in %<constexpr%> context"
 msgstr "ei-staattinen datajäsen %qE esitelty %<constexpr%>:ksi"
 
-#: cp/constexpr.cc:9168
+#: cp/constexpr.cc:9275
 #, fuzzy, gcc-internal-format
 msgid "division by zero is not a constant expression"
 msgstr "Jako nollalla kohdassa %L"
 
-#: cp/constexpr.cc:9269
+#: cp/constexpr.cc:9376
 #, fuzzy, gcc-internal-format
 msgid "%<delete[]%> is not a constant expression"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: cp/constexpr.cc:9343
+#: cp/constexpr.cc:9444
+#, fuzzy, gcc-internal-format
+msgid "neither branch of %<if%> is a constant expression"
+msgstr "liukulukuvakio esikääntäjän lausekkeessa"
+
+#: cp/constexpr.cc:9455
 #, gcc-internal-format
 msgid "non-constant array initialization"
 msgstr "taulukon alustus ei-vakiolla"
 
-#: cp/constexpr.cc:9382
+#: cp/constexpr.cc:9494
 #, fuzzy, gcc-internal-format
 msgid "label definition in %<constexpr%> function only available with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/constexpr.cc:9412
+#: cp/constexpr.cc:9524
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "unexpected AST of kind %s"
 msgstr "Odottamaton %s-lause kohdassa %C"
@@ -50080,290 +50220,342 @@ msgstr "ei argumentteja"
 msgid "argument %qE"
 msgstr "Funktion %s argumentti kohdassa %L on negatiivinen"
 
-#: cp/constraint.cc:1141
+#: cp/constraint.cc:1150
 #, fuzzy, gcc-internal-format
 #| msgid "type of %qD does not match original declaration"
 msgid "%qT does not match original declaration"
 msgstr "%qD:n tyyppi ei täsmää aiemman esittelyn kanssa"
 
-#: cp/constraint.cc:1144
+#: cp/constraint.cc:1153
 #, fuzzy, gcc-internal-format
 msgid "original template declaration here"
 msgstr "%qD esiteltiin täällä"
 
-#: cp/constraint.cc:1348
+#: cp/constraint.cc:1352
 #, fuzzy, gcc-internal-format
 msgid "no matching concepts for %qE"
 msgstr "%qD ei ole mallifunktio"
 
-#: cp/constraint.cc:1649
+#: cp/constraint.cc:1653
 #, fuzzy, gcc-internal-format
 msgid "%qE cannot be introduced with an ellipsis %<...%>"
 msgstr "anonyymit variadiset makrot esiteltiin C99:ssä"
 
-#: cp/constraint.cc:1650
+#: cp/constraint.cc:1654
 #, fuzzy, gcc-internal-format
 #| msgid "previously declared here"
 msgid "prototype declared here"
 msgstr "esitelty aiemmin täällä"
 
-#: cp/constraint.cc:1737
+#: cp/constraint.cc:1741
 #, fuzzy, gcc-internal-format
 msgid "all template parameters of %qD must be introduced"
 msgstr "strftime-muotoilut eivät voi muotoilla argumentteja"
 
-#: cp/constraint.cc:1765
+#: cp/constraint.cc:1769
 #, fuzzy, gcc-internal-format
 msgid "cannot deduce template parameters from introduction list"
 msgstr "%qE ei ole kelvollinen malliargumentti tyypille %qT, koska se ei ole objekti ulkoisella linkityksellä"
 
-#: cp/constraint.cc:1929
+#: cp/constraint.cc:1933
 #, fuzzy, gcc-internal-format
 msgid "the required expression %qE is invalid, because"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: cp/constraint.cc:1936
+#: cp/constraint.cc:1940
 #, fuzzy, gcc-internal-format
 msgid "the required expression %qE is invalid"
 msgstr "vektoriylivuoto lausekkeessa"
 
 #. Replay the substitution error.
-#: cp/constraint.cc:1975
+#: cp/constraint.cc:1979
 #, fuzzy, gcc-internal-format
 msgid "the required type %qT is invalid, because"
 msgstr "bittikentän %qs leveys on nolla"
 
-#: cp/constraint.cc:1979
+#: cp/constraint.cc:1983
 #, fuzzy, gcc-internal-format
 msgid "the required type %qT is invalid"
 msgstr "Odotettiin muuttujanimeä kohdassa %C"
 
 # XXX
 # %s on "initialization", jota EI VOI suomentaa tällä hetkellä.
-#: cp/constraint.cc:2032 cp/constraint.cc:2105
+#: cp/constraint.cc:2036 cp/constraint.cc:2109
 #, fuzzy, gcc-internal-format
 msgid "cannot convert %qE to %qT"
 msgstr "ei voi muuntaa tyypistä %1$qT tyyppiin %2$qT %4$qD:n argumentiksi %3$qP"
 
-#: cp/constraint.cc:2058
+#: cp/constraint.cc:2062
 #, fuzzy, gcc-internal-format
 #| msgid "%qE is not a template"
 msgid "%qE is not %<noexcept%>"
 msgstr "%qE ei ole malli"
 
-#: cp/constraint.cc:2082
+#: cp/constraint.cc:2086
 #, gcc-internal-format
 msgid "%qE does not satisfy return-type-requirement, because"
 msgstr ""
 
-#: cp/constraint.cc:2089
+#: cp/constraint.cc:2093
 #, fuzzy, gcc-internal-format
 msgid "%qE does not satisfy return-type-requirement"
 msgstr "alustusalkio ei ole vakio"
 
 # XXX
 # %s on "initialization", jota EI VOI suomentaa tällä hetkellä.
-#: cp/constraint.cc:2100
+#: cp/constraint.cc:2104
 #, fuzzy, gcc-internal-format
 msgid "cannot convert %qE to %qT because"
 msgstr "ei voi muuntaa tyypistä %1$qT tyyppiin %2$qT %4$qD:n argumentiksi %3$qP"
 
 #. Replay the substitution error.
-#: cp/constraint.cc:2132
+#: cp/constraint.cc:2136
 #, gcc-internal-format
 msgid "nested requirement %qE is not satisfied, because"
 msgstr ""
 
-#: cp/constraint.cc:2136
+#: cp/constraint.cc:2140
 #, fuzzy, gcc-internal-format
 msgid "nested requirement %qE is not satisfied"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: cp/constraint.cc:2623
+#: cp/constraint.cc:2627
 #, fuzzy, gcc-internal-format
 msgid "satisfaction of atomic constraint %qE depends on itself"
 msgstr "%q+D:n edellinen esittely oli täällä"
 
 # Tämä esiintynee esim. const char* → char* -muunnoksessa.
-#: cp/constraint.cc:2669
+#: cp/constraint.cc:2673
 #, fuzzy, gcc-internal-format
 msgid "satisfaction value of atomic constraint %qE changed from %qE to %qE"
 msgstr "muunnos tyypistä %qT tyyppiin %qT ei säilytä tyyppimääreitä"
 
-#: cp/constraint.cc:2672
+#: cp/constraint.cc:2676
 #, gcc-internal-format
 msgid "satisfaction value first evaluated to %qE from here"
 msgstr ""
 
-#: cp/constraint.cc:2789
+#: cp/constraint.cc:2793
 #, gcc-internal-format
 msgid "no operand of the disjunction is satisfied"
 msgstr ""
 
-#: cp/constraint.cc:2802
+#: cp/constraint.cc:2806
 #, gcc-internal-format
 msgid "the operand %qE is unsatisfied because"
 msgstr ""
 
-#: cp/constraint.cc:3422
+#: cp/constraint.cc:3439
 #, fuzzy, gcc-internal-format
 #| msgid "in definition of macro %qs"
 msgid "definition of concept %qD is empty"
 msgstr "%qs-makron määrittelyssä"
 
-#: cp/constraint.cc:3425
+#: cp/constraint.cc:3442
 #, gcc-internal-format
 msgid "definition of concept %qD has multiple statements"
 msgstr ""
 
-#: cp/constraint.cc:3571
+#: cp/constraint.cc:3588
 #, gcc-internal-format
 msgid "  %qT is not %<nothrow%> copy assignable"
 msgstr ""
 
-#: cp/constraint.cc:3574
+#: cp/constraint.cc:3591 cp/constraint.cc:3686
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not %<nothrow%> default constructible"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/constraint.cc:3577
+#: cp/constraint.cc:3594
 #, gcc-internal-format
 msgid "  %qT is not %<nothrow%> copy constructible"
 msgstr ""
 
-#: cp/constraint.cc:3580
+#: cp/constraint.cc:3597
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a variable"
 msgid "  %qT is not trivially copy assignable"
 msgstr "%qD ei ole muuttuja"
 
-#: cp/constraint.cc:3583
+#: cp/constraint.cc:3600 cp/constraint.cc:3680
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not trivially default constructible"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/constraint.cc:3586
+#: cp/constraint.cc:3603
 #, fuzzy, gcc-internal-format
 #| msgid "  %q+T has a non-trivial destructor"
 msgid "  %qT is not trivially copy constructible"
 msgstr "  %q+T:n hajotin on epätriviaali"
 
-#: cp/constraint.cc:3589
+#: cp/constraint.cc:3606
 #, fuzzy, gcc-internal-format
 #| msgid "  %q+T has a non-trivial destructor"
 msgid "  %qT is not trivially destructible"
 msgstr "  %q+T:n hajotin on epätriviaali"
 
-#: cp/constraint.cc:3592
+#: cp/constraint.cc:3609
 #, fuzzy, gcc-internal-format
 msgid "  %qT does not have a virtual destructor"
 msgstr "esittely ei esittele mitään"
 
-#: cp/constraint.cc:3595
+#: cp/constraint.cc:3612
 #, fuzzy, gcc-internal-format
 #| msgid "%q#T is not a class"
 msgid "  %qT is not an abstract class"
 msgstr "%q#T ei ole luokka"
 
-#: cp/constraint.cc:3598
+#: cp/constraint.cc:3615
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not a base of %qT"
 msgstr "perustyypin %qT kaksoiskappale virheellinen"
 
-#: cp/constraint.cc:3601
+#: cp/constraint.cc:3618
 #, fuzzy, gcc-internal-format
 #| msgid "%q#T is not a class"
 msgid "  %qT is not a class"
 msgstr "%q#T ei ole luokka"
 
-#: cp/constraint.cc:3604
+#: cp/constraint.cc:3621
 #, fuzzy, gcc-internal-format
 #| msgid "%q#T is not a class"
 msgid "  %qT is not an empty class"
 msgstr "%q#T ei ole luokka"
 
-#: cp/constraint.cc:3607
+#: cp/constraint.cc:3624
 #, fuzzy, gcc-internal-format
 #| msgid "%qT is not a template"
 msgid "  %qT is not an enum"
 msgstr "%qT ei ole malli"
 
-#: cp/constraint.cc:3610
+#: cp/constraint.cc:3627
 #, fuzzy, gcc-internal-format
 #| msgid "%q#T is not a class"
 msgid "  %qT is not a final class"
 msgstr "%q#T ei ole luokka"
 
-#: cp/constraint.cc:3613
+#: cp/constraint.cc:3630
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not layout compatible with %qT"
 msgstr "%qD ei ole %qD:n jäsen"
 
-#: cp/constraint.cc:3616
+#: cp/constraint.cc:3633
 #, fuzzy, gcc-internal-format
 #| msgid "%qT is not a class type"
 msgid "  %qT is not a literal type"
 msgstr "%qT ei ole luokkatyyppi"
 
-#: cp/constraint.cc:3619
+#: cp/constraint.cc:3636
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not pointer-interconvertible base of %qT"
 msgstr "perustyypin %qT kaksoiskappale virheellinen"
 
-#: cp/constraint.cc:3623
+#: cp/constraint.cc:3640
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a type"
 msgid "  %qT is not a POD type"
 msgstr "%qD ei ole tyyppi"
 
-#: cp/constraint.cc:3626
+#: cp/constraint.cc:3643
 #, fuzzy, gcc-internal-format
 #| msgid "%qT is not a class type"
 msgid "  %qT is not a polymorphic type"
 msgstr "%qT ei ole luokkatyyppi"
 
-#: cp/constraint.cc:3629
+#: cp/constraint.cc:3646
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not the same as %qT"
 msgstr "perustyypin %qT kaksoiskappale virheellinen"
 
-#: cp/constraint.cc:3632
+#: cp/constraint.cc:3649
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not an standard layout type"
 msgstr "%qT ei ole malli"
 
-#: cp/constraint.cc:3635
+#: cp/constraint.cc:3652
 #, fuzzy, gcc-internal-format
 #| msgid "%qT is not a class type"
 msgid "  %qT is not a trivial type"
 msgstr "%qT ei ole luokkatyyppi"
 
-#: cp/constraint.cc:3638
+#: cp/constraint.cc:3655
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not a union"
 msgstr "joustava taulukkojäsen unionissa"
 
-#: cp/constraint.cc:3660
+#: cp/constraint.cc:3658
+#, fuzzy, gcc-internal-format
+#| msgid "%qT is not a template"
+msgid "  %qT is not an aggregate"
+msgstr "%qT ei ole malli"
+
+#: cp/constraint.cc:3661
+#, fuzzy, gcc-internal-format
+#| msgid "%q+T is not literal because:"
+msgid "  %qT is not trivially copyable"
+msgstr "%q+T ei ole literaali, koska:"
+
+#: cp/constraint.cc:3664
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not assignable from %qT"
+msgstr "muunnos tyypistä %qT tyyppiin %qT"
+
+#: cp/constraint.cc:3667
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not trivially assignable from %qT"
+msgstr "muunnos tyypistä %qT tyyppiin %qT"
+
+#: cp/constraint.cc:3670
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not %<nothrow%> assignable from %qT"
+msgstr "muunnos tyypistä %qT tyyppiin %qT"
+
+#: cp/constraint.cc:3674
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not default constructible"
+msgstr "tyypillä %qE on käyttäjän määrittelemä muodostin"
+
+#: cp/constraint.cc:3676
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not constructible from %qE"
+msgstr "muunnos tyypistä %qT tyyppiin %qT"
+
+#: cp/constraint.cc:3682
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not trivially constructible from %qE"
+msgstr "muunnos tyypistä %qT tyyppiin %qT"
+
+#: cp/constraint.cc:3688
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not %<nothrow%> constructible from %qE"
+msgstr "muunnos tyypistä %qT tyyppiin %qT"
+
+#: cp/constraint.cc:3691
+#, fuzzy, gcc-internal-format
+msgid "  %qT does not have unique object representations"
+msgstr "esittely ei esittele mitään"
+
+#: cp/constraint.cc:3717
 #, fuzzy, gcc-internal-format
 msgid "invalid constraints"
 msgstr "virheellinen rotate-käsky"
 
-#: cp/constraint.cc:3686
+#: cp/constraint.cc:3742
 #, fuzzy, gcc-internal-format
 msgid "constraint %qE has type %qT, not %<bool%>"
 msgstr "keskeytysfunktiolla on oltava void-paluutyyppi"
 
-#: cp/constraint.cc:3689
+#: cp/constraint.cc:3745
 #, fuzzy, gcc-internal-format
 msgid "the expression %qE evaluated to %<false%>"
 msgstr "vertailu ”etumerkitön lauseke < 0” on aina epätosi"
 
-#: cp/constraint.cc:3740
+#: cp/constraint.cc:3796
 #, fuzzy, gcc-internal-format
 msgid "constraints not satisfied"
 msgstr "%qD ei ole %qD:n jäsen"
 
-#: cp/constraint.cc:3755
+#: cp/constraint.cc:3811
 #, gcc-internal-format
 msgid "set %qs to at least %d for more detail"
 msgstr ""
@@ -50554,63 +50746,63 @@ msgstr ""
 msgid "cannot initialize a return object of type %qT with an rvalue of type %<void%>"
 msgstr "virheellinen %qT-tyyppisen ei-const-viittauksen alustus %qT-tyyppisestä väliaikaisesta muuttujasta"
 
-#: cp/cp-gimplify.cc:154
+#: cp/cp-gimplify.cc:155
 #, gcc-internal-format
 msgid "both branches of %<if%> statement marked as %qs"
 msgstr ""
 
-#: cp/cp-gimplify.cc:980 cp/cp-gimplify.cc:992
+#: cp/cp-gimplify.cc:981 cp/cp-gimplify.cc:993
 #, fuzzy, gcc-internal-format
 msgid "taking address of an immediate function %qD"
 msgstr "hajottimen %qE osoitteen ottaminen"
 
-#: cp/cp-gimplify.cc:1552
+#: cp/cp-gimplify.cc:1553
 #, fuzzy, gcc-internal-format
 msgid "%<throw%> will always call %<terminate%>"
 msgstr "%qD:n osoite tulee aina olemaan %<true%>"
 
-#: cp/cp-gimplify.cc:1555
+#: cp/cp-gimplify.cc:1556
 #, fuzzy, gcc-internal-format
 msgid "in C++11 destructors default to %<noexcept%>"
 msgstr "hajotin ei voi olla %<constexpr%>"
 
-#: cp/cp-gimplify.cc:1567
+#: cp/cp-gimplify.cc:1568
 #, gcc-internal-format
 msgid "in C++11 this %<throw%> will call %<terminate%> because destructors default to %<noexcept%>"
 msgstr ""
 
-#: cp/cp-gimplify.cc:3028
+#: cp/cp-gimplify.cc:3064
 #, fuzzy, gcc-internal-format
 msgid "ignoring attribute %qE after earlier %qE"
 msgstr "%qD:n malliargumentti käyttää paikallista tyyppiä %qT"
 
-#: cp/cp-gimplify.cc:3050 cp/cp-gimplify.cc:3062 cp/decl.cc:4070
+#: cp/cp-gimplify.cc:3086 cp/cp-gimplify.cc:3098 cp/decl.cc:4126
 #: cp/method.cc:978
 #, gcc-internal-format
 msgid "%qD is not a type"
 msgstr "%qD ei ole tyyppi"
 
-#: cp/cp-gimplify.cc:3068
+#: cp/cp-gimplify.cc:3104
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a class type"
 msgstr "%qT ei ole luokkatyyppi"
 
-#: cp/cp-gimplify.cc:3085
+#: cp/cp-gimplify.cc:3121
 #, fuzzy, gcc-internal-format
 msgid "%qD does not have %<const char *%> type"
 msgstr "%qE:lla ei ole luokkatyyppiä"
 
-#: cp/cp-gimplify.cc:3096
+#: cp/cp-gimplify.cc:3132
 #, fuzzy, gcc-internal-format
 msgid "%qD does not have integral type"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/cp-gimplify.cc:3108
+#: cp/cp-gimplify.cc:3144
 #, 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.cc:3212
+#: cp/cp-gimplify.cc:3248
 #, fuzzy, gcc-internal-format
 msgid "evaluating %qs"
 msgstr "          %s"
@@ -50656,7 +50848,7 @@ msgstr "virheellinen %qT-tyyppisen ei-const-viittauksen alustus %qT-tyyppisestä
 msgid "conversion from %qH to %qI discards qualifiers"
 msgstr "muunnos tyypistä %qT tyyppiin %qT ei säilytä tyyppimääreitä"
 
-#: cp/cvt.cc:498 cp/typeck.cc:8346
+#: cp/cvt.cc:498 cp/typeck.cc:8360
 #, fuzzy, gcc-internal-format
 msgid "casting %qT to %qT does not dereference pointer"
 msgstr "oliko tarkoitus käyttää loogista negaatiota?"
@@ -50866,117 +51058,117 @@ msgstr "ylivuoto vakiolausekkeessa"
 msgid "variable %qE of incomplete type %qT will not be accessed in for increment expression"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: cp/cvt.cc:1498
+#: cp/cvt.cc:1501
 #, fuzzy, gcc-internal-format
 msgid "conversion to void cannot resolve address of overloaded function"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/cvt.cc:1502
+#: cp/cvt.cc:1505
 #, fuzzy, gcc-internal-format
 msgid "second operand of conditional expression cannot resolve address of overloaded function"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/cvt.cc:1506
+#: cp/cvt.cc:1509
 #, fuzzy, gcc-internal-format
 msgid "third operand of conditional expression cannot resolve address of overloaded function"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/cvt.cc:1510
+#: cp/cvt.cc:1513
 #, fuzzy, gcc-internal-format
 msgid "right operand of comma operator cannot resolve address of overloaded function"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/cvt.cc:1514
+#: cp/cvt.cc:1517
 #, fuzzy, gcc-internal-format
 msgid "left operand of comma operator cannot resolve address of overloaded function"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/cvt.cc:1518
+#: cp/cvt.cc:1521
 #, fuzzy, gcc-internal-format
 msgid "statement cannot resolve address of overloaded function"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/cvt.cc:1522
+#: cp/cvt.cc:1525
 #, fuzzy, gcc-internal-format
 msgid "for increment expression cannot resolve address of overloaded function"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/cvt.cc:1538
+#: cp/cvt.cc:1541
 #, fuzzy, gcc-internal-format
 msgid "second operand of conditional expression is a reference, not call, to function %qE"
 msgstr "ei-liukulukuargumentti funktiolle %qs"
 
-#: cp/cvt.cc:1543
+#: cp/cvt.cc:1546
 #, fuzzy, gcc-internal-format
 msgid "third operand of conditional expression is a reference, not call, to function %qE"
 msgstr "ei-liukulukuargumentti funktiolle %qs"
 
-#: cp/cvt.cc:1548
+#: cp/cvt.cc:1551
 #, fuzzy, gcc-internal-format
 msgid "right operand of comma operator is a reference, not call, to function %qE"
 msgstr "ei-liukulukuargumentti kutsussa funktiolle %qE"
 
-#: cp/cvt.cc:1553
+#: cp/cvt.cc:1556
 #, fuzzy, gcc-internal-format
 msgid "left operand of comma operator is a reference, not call, to function %qE"
 msgstr "ei-liukulukuargumentti kutsussa funktiolle %qE"
 
-#: cp/cvt.cc:1558
+#: cp/cvt.cc:1561
 #, fuzzy, gcc-internal-format
 msgid "statement is a reference, not call, to function %qE"
 msgstr "ei-liukulukuargumentti kutsussa funktiolle %qE"
 
-#: cp/cvt.cc:1563
+#: cp/cvt.cc:1566
 #, fuzzy, gcc-internal-format
 msgid "for increment expression is a reference, not call, to function %qE"
 msgstr "ei-liukulukuargumentti funktiolle %qs"
 
-#: cp/cvt.cc:1592
+#: cp/cvt.cc:1595
 #, fuzzy, gcc-internal-format
 msgid "second operand of conditional expression has no effect"
 msgstr "pilkkulausekkeen vasemmalla operandilla ei ole vaikutusta"
 
-#: cp/cvt.cc:1597
+#: cp/cvt.cc:1600
 #, fuzzy, gcc-internal-format
 msgid "third operand of conditional expression has no effect"
 msgstr "pilkkulausekkeen vasemmalla operandilla ei ole vaikutusta"
 
-#: cp/cvt.cc:1602
+#: cp/cvt.cc:1605
 #, fuzzy, gcc-internal-format
 msgid "right operand of comma operator has no effect"
 msgstr "pilkkulausekkeen vasemmalla operandilla ei ole vaikutusta"
 
-#: cp/cvt.cc:1606
+#: cp/cvt.cc:1609
 #, fuzzy, gcc-internal-format
 msgid "left operand of comma operator has no effect"
 msgstr "pilkkulausekkeen vasemmalla operandilla ei ole vaikutusta"
 
-#: cp/cvt.cc:1610
+#: cp/cvt.cc:1613
 #, gcc-internal-format
 msgid "statement has no effect"
 msgstr "lause on vaikutukseton"
 
-#: cp/cvt.cc:1614
+#: cp/cvt.cc:1617
 #, fuzzy, gcc-internal-format
 msgid "for increment expression has no effect"
 msgstr "puuttuva kasvatuslauseke"
 
-#: cp/cvt.cc:1767
+#: cp/cvt.cc:1770
 #, gcc-internal-format
 msgid "converting NULL to non-pointer type"
 msgstr "NULLin muunnos epäosoitintyypiksi"
 
-#: cp/cvt.cc:1885
+#: cp/cvt.cc:1888
 #, fuzzy, gcc-internal-format
 msgid "default type conversion cannot deduce template argument for %qD"
 msgstr "%Juseita parametreja nimellä %qD"
 
-#: cp/cvt.cc:1900
+#: cp/cvt.cc:1903
 #, gcc-internal-format
 msgid "ambiguous default type conversion from %qT"
 msgstr "ei-yksiselitteinen oletustyyppimuunnos tyypistä %qT"
 
-#: cp/cvt.cc:1903
+#: cp/cvt.cc:1906
 #, gcc-internal-format
 msgid "  candidate conversions include %qD and %qD"
 msgstr ""
@@ -51041,7 +51233,7 @@ msgstr "edellisestä esittelystä %q+F"
 msgid "redeclaration %qD differs in %qs from previous declaration"
 msgstr "luetellun tyypin jäsenen %q+D uudelleenesittely"
 
-#: cp/decl.cc:1321 cp/decl.cc:15690
+#: cp/decl.cc:1321 cp/decl.cc:15821
 #, fuzzy, gcc-internal-format
 msgid "previous declaration %qD"
 msgstr "edellinen esittely %q+D"
@@ -51071,188 +51263,198 @@ msgstr "%J%qD:lle ei ole aiempaa esittelyä"
 msgid "ambiguating new declaration %q+#D"
 msgstr "%q+D:lle ei ole edellistä esittelyä"
 
-#: cp/decl.cc:1455 cp/decl.cc:1837
+#: cp/decl.cc:1455 cp/decl.cc:1874
 #, fuzzy, gcc-internal-format
 msgid "old declaration %q#D"
 msgstr "%q+#D:n esittely"
 
-#: cp/decl.cc:1524
+#: cp/decl.cc:1493
+#, fuzzy, gcc-internal-format
+msgid "redefinition of default argument for %q+#D"
+msgstr "%q+D määritelty uudelleen"
+
+#: cp/decl.cc:1495
+#, fuzzy, gcc-internal-format
+msgid "original definition appeared here"
+msgstr "edellinen määrittely oli täällä"
+
+#: cp/decl.cc:1561
 #, fuzzy, gcc-internal-format
 msgid "built-in function %qD declared as non-function"
 msgstr "sisäinen funktio %q+D esitelty ei-funktiona"
 
-#: cp/decl.cc:1537 cp/decl.cc:1663
+#: cp/decl.cc:1574 cp/decl.cc:1700
 #, fuzzy, gcc-internal-format
 msgid "shadowing built-in function %q#D"
 msgstr "%q+D:n esittely varjostaa sisäänrakennetun funktion"
 
-#: cp/decl.cc:1538 cp/decl.cc:1664
+#: cp/decl.cc:1575 cp/decl.cc:1701
 #, fuzzy, gcc-internal-format
 msgid "shadowing library function %q#D"
 msgstr "%q+D on yleensä funktio"
 
-#: cp/decl.cc:1546
+#: cp/decl.cc:1583
 #, fuzzy, gcc-internal-format
 msgid "library function %q#D redeclared as non-function %q#D"
 msgstr "sisäinen funktio %q+D esitelty ei-funktiona"
 
-#: cp/decl.cc:1550 cp/decl.cc:1611
+#: cp/decl.cc:1587 cp/decl.cc:1648
 #, fuzzy, gcc-internal-format
 msgid "declaration of %q#D conflicts with built-in declaration %q#D"
 msgstr "%q+D:n osoitealue on ristiriidassa edellisen esittelyn kanssa"
 
-#: cp/decl.cc:1638
+#: cp/decl.cc:1675
 #, fuzzy, gcc-internal-format
 msgid "definition of %q#D ambiguates built-in declaration %q#D"
 msgstr "ei-yksiselitteistää vanhan esittelyn %q+#D"
 
-#: cp/decl.cc:1644 cp/decl.cc:1658
+#: cp/decl.cc:1681 cp/decl.cc:1695
 #, fuzzy, gcc-internal-format
 msgid "new declaration %q#D ambiguates built-in declaration %q#D"
 msgstr "ei-yksiselitteistää vanhan esittelyn %q+#D"
 
-#: cp/decl.cc:1648
+#: cp/decl.cc:1685
 #, fuzzy, gcc-internal-format
 msgid "ignoring the %q#D declaration"
 msgstr "tyhjä esittely"
 
-#: cp/decl.cc:1752
+#: cp/decl.cc:1789
 #, fuzzy, gcc-internal-format
 msgid "literal operator %q#D conflicts with raw literal operator"
 msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 
-#: cp/decl.cc:1756
+#: cp/decl.cc:1793
 #, fuzzy, gcc-internal-format
 msgid "raw literal operator %q#D conflicts with literal operator template"
 msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 
-#: cp/decl.cc:1772
+#: cp/decl.cc:1809
 #, fuzzy, gcc-internal-format
 msgid "%q#D redeclared as different kind of entity"
 msgstr "%q+D esitelty uudelleen erityyppisenä symbolina"
 
-#: cp/decl.cc:1796
+#: cp/decl.cc:1833
 #, fuzzy, gcc-internal-format
 msgid "conflicting declaration of template %q#D"
 msgstr "malliesittelylle %q+D"
 
-#: cp/decl.cc:1818
+#: cp/decl.cc:1855
 #, fuzzy, gcc-internal-format
 msgid "conflicting declaration of C function %q#D"
 msgstr "ristiriitainen esittely %q#D"
 
-#: cp/decl.cc:1835
+#: cp/decl.cc:1872
 #, fuzzy, gcc-internal-format
 msgid "ambiguating new declaration of %q#D"
 msgstr "%q+D:lle ei ole edellistä esittelyä"
 
-#: cp/decl.cc:1845
+#: cp/decl.cc:1882
 #, gcc-internal-format
 msgid "conflicting declaration %q#D"
 msgstr "ristiriitainen esittely %q#D"
 
-#: cp/decl.cc:1847
+#: cp/decl.cc:1884
 #, fuzzy, gcc-internal-format
 msgid "previous declaration as %q#D"
 msgstr "edellinen esittely %q+D"
 
-#: cp/decl.cc:1857
+#: cp/decl.cc:1894
 #, fuzzy, gcc-internal-format
 msgid "redeclaration of %<pragma omp declare reduction%>"
 msgstr "%Jluetellun tyypin jäsenen %qd uudelleenesittely"
 
-#: cp/decl.cc:1859
+#: cp/decl.cc:1896
 #, fuzzy, gcc-internal-format
 msgid "previous %<pragma omp declare reduction%> declaration"
 msgstr "%J%qD:lle ei ole aiempaa esittelyä"
 
-#: cp/decl.cc:1917
+#: cp/decl.cc:1954
 #, fuzzy, gcc-internal-format
 msgid "%q#D previously defined here"
 msgstr "%q+#D määritelty aiemmin täällä"
 
-#: cp/decl.cc:1918 cp/name-lookup.cc:3175 cp/name-lookup.cc:3204
-#: cp/name-lookup.cc:3228
+#: cp/decl.cc:1955 cp/name-lookup.cc:3178 cp/name-lookup.cc:3207
+#: cp/name-lookup.cc:3231
 #, fuzzy, gcc-internal-format
 msgid "%q#D previously declared here"
 msgstr "%q+#D aiemmin esitelty täällä"
 
-#: cp/decl.cc:1929
+#: cp/decl.cc:1966
 #, fuzzy, gcc-internal-format
 msgid "prototype specified for %q#D"
 msgstr "kohdistusta ei voi määritellä %q+D:lle"
 
-#: cp/decl.cc:1931
+#: cp/decl.cc:1968
 #, fuzzy, gcc-internal-format
 msgid "previous non-prototype definition here"
 msgstr "edellinen määrittely oli täällä"
 
-#: cp/decl.cc:1971
+#: cp/decl.cc:2008
 #, fuzzy, gcc-internal-format
 msgid "conflicting declaration of %q#D with %qL linkage"
 msgstr "%q#D:n esittely C-kielen linkityksellä"
 
-#: cp/decl.cc:1974
+#: cp/decl.cc:2011
 #, fuzzy, gcc-internal-format
 msgid "previous declaration with %qL linkage"
 msgstr "%q#D:n esittely C-kielen linkityksellä"
 
-#: cp/decl.cc:2009 cp/decl.cc:2019
+#: cp/decl.cc:2060 cp/decl.cc:2070
 #, gcc-internal-format
 msgid "default argument given for parameter %d of %q#D"
 msgstr "oletusargumentti annettu %2$q#D:n parametrille %1$d"
 
-#: cp/decl.cc:2012 cp/decl.cc:2022
+#: cp/decl.cc:2063 cp/decl.cc:2073
 #, fuzzy, gcc-internal-format
 msgid "previous specification in %q#D here"
 msgstr "%q+D:n edellinen esittely oli täällä"
 
-#: cp/decl.cc:2062
+#: cp/decl.cc:2113
 #, fuzzy, gcc-internal-format
 msgid "declaration %qD conflicts with builtin"
 msgstr "%q+D:n osoitealue on ristiriidassa edellisen esittelyn kanssa"
 
-#: cp/decl.cc:2070
+#: cp/decl.cc:2121
 #, fuzzy, gcc-internal-format
 msgid "declaration %qD conflicts with import"
 msgstr "nimiavaruuden %qD esittely on ristiriidassa"
 
-#: cp/decl.cc:2071
+#: cp/decl.cc:2122
 #, fuzzy, gcc-internal-format
 msgid "import declared %q#D here"
 msgstr "esitelty täällä"
 
-#: cp/decl.cc:2079
+#: cp/decl.cc:2130
 #, fuzzy, gcc-internal-format
 msgid "conflicting exporting declaration %qD"
 msgstr "ristiriitainen esittely %q#D"
 
-#: cp/decl.cc:2080
+#: cp/decl.cc:2131
 #, fuzzy, gcc-internal-format
 msgid "previous declaration %q#D here"
 msgstr "%J%qD:n edellinen esittely oli täällä"
 
-#: cp/decl.cc:2105
+#: cp/decl.cc:2156
 #, fuzzy, gcc-internal-format
 msgid "previous definition of %qD here"
 msgstr "%q+D:n edellinen määrittely oli täällä"
 
-#: cp/decl.cc:2106
+#: cp/decl.cc:2157
 #, fuzzy, gcc-internal-format
 msgid "previous declaration of %qD here"
 msgstr "%q+D:n edellinen esittely oli täällä"
 
-#: cp/decl.cc:2119
+#: cp/decl.cc:2170
 #, fuzzy, gcc-internal-format
 msgid "function %qD declared %<[[noreturn]]%> but its first declaration was not"
 msgstr "funktio %qD esitelty virtuaaliseksi unionissa"
 
-#: cp/decl.cc:2164
+#: cp/decl.cc:2215
 #, gcc-internal-format
 msgid "redundant redeclaration of %qD in same scope"
 msgstr "%qD uudelleenesitellään tarpeettomasti samalla näkyvyysalueella"
 
-#: cp/decl.cc:2180
+#: cp/decl.cc:2231
 #, fuzzy, gcc-internal-format
 msgid "deleted definition of %qD is not first declaration"
 msgstr "%qD:n poistettu määrittely"
@@ -51265,49 +51467,49 @@ msgstr "%qD:n poistettu määrittely"
 #. that specialization that would cause an implicit
 #. instantiation to take place, in every translation unit in
 #. which such a use occurs.
-#: cp/decl.cc:2655
+#: cp/decl.cc:2711
 #, fuzzy, gcc-internal-format
 msgid "explicit specialization of %qD after first use"
 msgstr "(mahdollisesti %qT:n määrittelyn perästä puuttuu puolipiste)"
 
-#: cp/decl.cc:2794
+#: cp/decl.cc:2850
 #, fuzzy, gcc-internal-format
 msgid "%qD: visibility attribute ignored because it conflicts with previous declaration"
 msgstr "%J%qD:n lohko on ristiriidassa edellisen esittelyn kanssa"
 
 #. Reject two definitions.
-#: cp/decl.cc:3058 cp/decl.cc:3087 cp/decl.cc:3129 cp/decl.cc:3146
-#: cp/decl.cc:3249
+#: cp/decl.cc:3114 cp/decl.cc:3143 cp/decl.cc:3185 cp/decl.cc:3202
+#: cp/decl.cc:3305
 #, fuzzy, gcc-internal-format
 msgid "redefinition of %q#D"
 msgstr "%q+D määritelty uudelleen"
 
-#: cp/decl.cc:3074
+#: cp/decl.cc:3130
 #, fuzzy, gcc-internal-format
 msgid "%qD conflicts with used function"
 msgstr "%qD:a käytetään alustamattomana tässä funktiossa"
 
-#: cp/decl.cc:3084
+#: cp/decl.cc:3140
 #, fuzzy, gcc-internal-format
 msgid "%q#D not declared in class"
 msgstr "%q+D esitelty ystävänä"
 
-#: cp/decl.cc:3098 cp/decl.cc:3156
+#: cp/decl.cc:3154 cp/decl.cc:3212
 #, fuzzy, gcc-internal-format
 msgid "%q+D redeclared inline with %<gnu_inline%> attribute"
 msgstr "%J%qD esitelty uudelleen erityyppisenä symbolina"
 
-#: cp/decl.cc:3101 cp/decl.cc:3159
+#: cp/decl.cc:3157 cp/decl.cc:3215
 #, fuzzy, gcc-internal-format
 msgid "%q+D redeclared inline without %<gnu_inline%> attribute"
 msgstr "%J%qD esitelty uudelleen erityyppisenä symbolina"
 
-#: cp/decl.cc:3108 cp/decl.cc:3166
+#: cp/decl.cc:3164 cp/decl.cc:3222
 #, fuzzy, gcc-internal-format
 msgid "deduction guide %q+D redeclared"
 msgstr "%qD:n esittely ei-funktiona"
 
-#: cp/decl.cc:3115
+#: cp/decl.cc:3171
 #, gcc-internal-format
 msgid "comparison operator %q+D defaulted after its first declaration"
 msgstr ""
@@ -51315,2370 +51517,2369 @@ msgstr ""
 #. is_primary=
 #. is_partial=
 #. is_friend_decl=
-#: cp/decl.cc:3180
+#: cp/decl.cc:3236
 #, fuzzy, gcc-internal-format
 msgid "redeclaration of friend %q#D may not have default template arguments"
 msgstr "strftime-muotoilut eivät voi muotoilla argumentteja"
 
-#: cp/decl.cc:3195
+#: cp/decl.cc:3251
 #, gcc-internal-format
 msgid "thread-local declaration of %q#D follows non-thread-local declaration"
 msgstr "säiekohtainen esittely %q#D seuraa ei-säiekohtaista esittelyä"
 
-#: cp/decl.cc:3198
+#: cp/decl.cc:3254
 #, gcc-internal-format
 msgid "non-thread-local declaration of %q#D follows thread-local declaration"
 msgstr "ei-säiekohtainen esittely %q#D seuraa säiekohtaista esittelyä"
 
-#: cp/decl.cc:3213 cp/decl.cc:3257 cp/name-lookup.cc:2730
-#: cp/name-lookup.cc:3202 cp/name-lookup.cc:3226
+#: cp/decl.cc:3269 cp/decl.cc:3313 cp/name-lookup.cc:2733
+#: cp/name-lookup.cc:3205 cp/name-lookup.cc:3229
 #, fuzzy, gcc-internal-format
 msgid "redeclaration of %q#D"
 msgstr "%q+D:n virheellinen uudelleenesittely"
 
-#: cp/decl.cc:3240
+#: cp/decl.cc:3296
 #, fuzzy, gcc-internal-format
 msgid "redundant redeclaration of %<constexpr%> static data member %qD"
 msgstr "luetellun tyypin jäsenen %q+D uudelleenesittely"
 
-#: cp/decl.cc:3308
+#: cp/decl.cc:3364
 #, fuzzy, gcc-internal-format
 msgid "local label %qE conflicts with existing label"
 msgstr "%q+D:n data-alue on ristiriidassa edellisen esittelyn kanssa"
 
-#: cp/decl.cc:3309
+#: cp/decl.cc:3365
 #, fuzzy, gcc-internal-format
 msgid "previous label"
 msgstr "edellinen esittely"
 
-#: cp/decl.cc:3399
+#: cp/decl.cc:3455
 #, gcc-internal-format
 msgid "  from here"
 msgstr "  täältä"
 
-#: cp/decl.cc:3423 cp/decl.cc:3660
+#: cp/decl.cc:3479 cp/decl.cc:3716
 #, fuzzy, gcc-internal-format
 msgid "  exits OpenMP structured block"
 msgstr "  siirtyy catch-lohkoon"
 
-#: cp/decl.cc:3451
+#: cp/decl.cc:3507
 #, fuzzy, gcc-internal-format
 msgid "  crosses initialization of %q#D"
 msgstr "  ohittaa %q+#D:n alustuksen"
 
-#: cp/decl.cc:3454
+#: cp/decl.cc:3510
 #, fuzzy, gcc-internal-format
 msgid "  enters scope of %q#D, which has non-trivial destructor"
 msgstr "Java-luokalla %qT ei voi olla implisiittistä epätriviaalia hajotinta"
 
-#: cp/decl.cc:3468 cp/decl.cc:3629
+#: cp/decl.cc:3524 cp/decl.cc:3685
 #, fuzzy, gcc-internal-format
 msgid "  enters %<try%> block"
 msgstr "  siirtyy try-lohkoon"
 
-#: cp/decl.cc:3474 cp/decl.cc:3611 cp/decl.cc:3631
+#: cp/decl.cc:3530 cp/decl.cc:3667 cp/decl.cc:3687
 #, fuzzy, gcc-internal-format
 msgid "  enters %<catch%> block"
 msgstr "  siirtyy catch-lohkoon"
 
-#: cp/decl.cc:3480 cp/decl.cc:3643
+#: cp/decl.cc:3536 cp/decl.cc:3699
 #, fuzzy, gcc-internal-format
 msgid "  enters OpenMP structured block"
 msgstr "  siirtyy catch-lohkoon"
 
-#: cp/decl.cc:3486 cp/decl.cc:3633
+#: cp/decl.cc:3542 cp/decl.cc:3689
 #, fuzzy, gcc-internal-format
 msgid "  enters synchronized or atomic statement"
 msgstr "lauseella ei ole vaikutusta"
 
-#: cp/decl.cc:3493 cp/decl.cc:3635
+#: cp/decl.cc:3549 cp/decl.cc:3691
 #, fuzzy, gcc-internal-format
 msgid "  enters %<constexpr if%> statement"
 msgstr "%s-lausetta odotettiin kohdassa %L"
 
-#: cp/decl.cc:3499 cp/decl.cc:3637
+#: cp/decl.cc:3555 cp/decl.cc:3693
 #, fuzzy, gcc-internal-format
 msgid "  enters %<consteval if%> statement"
 msgstr "%s-lausetta odotettiin kohdassa %L"
 
-#: cp/decl.cc:3618
+#: cp/decl.cc:3674
 #, fuzzy, gcc-internal-format
 msgid "  skips initialization of %q#D"
 msgstr "  ohittaa %q+#D:n alustuksen"
 
-#: cp/decl.cc:3621
+#: cp/decl.cc:3677
 #, fuzzy, gcc-internal-format
 msgid "  enters scope of %q#D which has non-trivial destructor"
 msgstr "Java-luokalla %qT ei voi olla implisiittistä epätriviaalia hajotinta"
 
-#: cp/decl.cc:4077 cp/parser.cc:6923
+#: cp/decl.cc:4133 cp/parser.cc:6921
 #, fuzzy, gcc-internal-format
 msgid "%qD used without template arguments"
 msgstr "virheellinen %<auto%>:n käyttö muunnosoperaattorissa"
 
-#: cp/decl.cc:4083
+#: cp/decl.cc:4139
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a function template"
 msgid "%qD is a function, not a type"
 msgstr "%qD ei ole funktiomalli"
 
-#: cp/decl.cc:4094
+#: cp/decl.cc:4150
 #, gcc-internal-format
 msgid "%q#T is not a class"
 msgstr "%q#T ei ole luokka"
 
-#: cp/decl.cc:4122 cp/decl.cc:4213
+#: cp/decl.cc:4178 cp/decl.cc:4279
 #, fuzzy, gcc-internal-format
 msgid "no class template named %q#T in %q#T"
 msgstr "%<typename %T::%D%> nimeää kohteen %q#T:n, joka ei ole luokkamalli"
 
-#: cp/decl.cc:4123
+#: cp/decl.cc:4179
 #, fuzzy, gcc-internal-format
 msgid "no type named %q#T in %q#T"
 msgstr "paluutyyppi %q#T on vaillinainen"
 
-#: cp/decl.cc:4136
+#: cp/decl.cc:4192
 #, fuzzy, gcc-internal-format
 msgid "lookup of %qT in %qT is ambiguous"
 msgstr "muunnos tyypistä %qT tyyppiin %qT on moniselitteinen"
 
-#: cp/decl.cc:4145
+#: cp/decl.cc:4201
 #, gcc-internal-format
 msgid "%<typename %T::%D%> names %q#T, which is not a class template"
 msgstr "%<typename %T::%D%> nimeää kohteen %q#T:n, joka ei ole luokkamalli"
 
-#: cp/decl.cc:4152
+#: cp/decl.cc:4214
 #, gcc-internal-format
 msgid "%<typename %T::%D%> names %q#T, which is not a type"
 msgstr "%<typename %T::%D%> nimeää %q#T:n, joka ei ole tyyppi"
 
-#: cp/decl.cc:4222
+#: cp/decl.cc:4288
 #, fuzzy, gcc-internal-format
 msgid "template parameters do not match template %qD"
 msgstr "tyyppimuunnettu argumentti %qD ei sovi prototyyppiin"
 
-#: cp/decl.cc:4575
+#: cp/decl.cc:4641
 #, fuzzy, gcc-internal-format
 msgid "%<-faligned-new=%d%> is not a power of two"
 msgstr "dwarfin versio %d ei ole tuettu"
 
-#: cp/decl.cc:4755
+#: cp/decl.cc:4821
 #, gcc-internal-format
 msgid "%<--param destructive-interference-size=%d%> is less than %d"
 msgstr ""
 
-#: cp/decl.cc:4759
+#: cp/decl.cc:4825
 #, gcc-internal-format
 msgid "%<--param destructive-interference-size=%d%> is less than %<--param l1-cache-line-size=%d%>"
 msgstr ""
 
-#: cp/decl.cc:4772
+#: cp/decl.cc:4838
 #, gcc-internal-format
 msgid "%<--param constructive-interference-size=%d%> is less than %d"
 msgstr ""
 
-#: cp/decl.cc:4777
+#: cp/decl.cc:4843
 #, gcc-internal-format
 msgid "%<--param constructive-interference-size=%d%> is greater than %<--param l1-cache-line-size=%d%>"
 msgstr ""
 
 # semi-fuzzy
-#: cp/decl.cc:5103
+#: cp/decl.cc:5169
 #, fuzzy, gcc-internal-format
 msgid "%q#D invalid; an anonymous union may only have public non-static data members"
 msgstr "ei-staattista datajäsentä %q+D käytetty virheellisesti"
 
-#: cp/decl.cc:5113 cp/parser.cc:22791
+#: cp/decl.cc:5179 cp/parser.cc:22789
 #, gcc-internal-format
 msgid "this flexibility is deprecated and will be removed"
 msgstr ""
 
-#: cp/decl.cc:5142
+#: cp/decl.cc:5208
 #, fuzzy, gcc-internal-format
 msgid "anonymous struct with base classes"
 msgstr "anonyymillä structilla ei voi olla funktiojäseniä"
 
-#: cp/decl.cc:5154
+#: cp/decl.cc:5220
 #, fuzzy, gcc-internal-format
 msgid "member %q+#D with constructor not allowed in anonymous aggregate"
 msgstr "ei argumentteja"
 
-#: cp/decl.cc:5157
+#: cp/decl.cc:5223
 #, fuzzy, gcc-internal-format
 msgid "member %q+#D with destructor not allowed in anonymous aggregate"
 msgstr "ei argumentteja"
 
-#: cp/decl.cc:5160
+#: cp/decl.cc:5226
 #, fuzzy, gcc-internal-format
 msgid "member %q+#D with copy assignment operator not allowed in anonymous aggregate"
 msgstr "ei argumentteja"
 
-#: cp/decl.cc:5179
+#: cp/decl.cc:5245
 #, fuzzy, gcc-internal-format
 msgid "attribute ignored in declaration of %q#T"
 msgstr "attribuutti jätetty huomioimatta %q+#T:n esittelyssä"
 
-#: cp/decl.cc:5182
+#: cp/decl.cc:5248
 #, fuzzy, gcc-internal-format
 msgid "attribute for %q#T must follow the %qs keyword"
 msgstr "%q+#T:n attribuutin on oltava %qs-avainsanan perässä"
 
-#: cp/decl.cc:5224
+#: cp/decl.cc:5290
 #, gcc-internal-format
 msgid "multiple types in one declaration"
 msgstr "useita tyyppejä yhdessä esittelyssä"
 
-#: cp/decl.cc:5229
+#: cp/decl.cc:5295
 #, gcc-internal-format
 msgid "redeclaration of C++ built-in type %qT"
 msgstr "C++:n sisäinen tietotyyppi %qT määritelty uudelleen"
 
-#: cp/decl.cc:5246
+#: cp/decl.cc:5312
 #, fuzzy, gcc-internal-format
 msgid "%<auto%> can only be specified for variables or function declarations"
 msgstr "tallennusluokan voi antaa vain objekteille ja funktioille"
 
-#: cp/decl.cc:5279
+#: cp/decl.cc:5345
 #, gcc-internal-format
 msgid "missing type-name in typedef-declaration"
 msgstr "tyypin nimi puuttuu typedef-esittelystä"
 
-#: cp/decl.cc:5287
+#: cp/decl.cc:5353
 #, gcc-internal-format
 msgid "ISO C++ prohibits anonymous structs"
 msgstr "ISO C++ kieltää nimettömät structit"
 
-#: cp/decl.cc:5294
+#: cp/decl.cc:5360
 #, fuzzy, gcc-internal-format
 msgid "%<inline%> can only be specified for functions"
 msgstr "määreet voidaan määrittää vain olioille ja funktioille"
 
-#: cp/decl.cc:5297
+#: cp/decl.cc:5363
 #, fuzzy, gcc-internal-format
 msgid "%<virtual%> can only be specified for functions"
 msgstr "määreet voidaan määrittää vain olioille ja funktioille"
 
-#: cp/decl.cc:5302
+#: cp/decl.cc:5368
 #, fuzzy, gcc-internal-format
 msgid "%<friend%> can only be specified inside a class"
 msgstr "tallennusluokan voi antaa vain olioille ja funktioille"
 
-#: cp/decl.cc:5305
+#: cp/decl.cc:5371
 #, fuzzy, gcc-internal-format
 msgid "%<explicit%> can only be specified for constructors"
 msgstr "määreet voidaan määrittää vain olioille ja funktioille"
 
-#: cp/decl.cc:5308
+#: cp/decl.cc:5374
 #, gcc-internal-format
 msgid "a storage class can only be specified for objects and functions"
 msgstr "tallennusluokan voi antaa vain olioille ja funktioille"
 
-#: cp/decl.cc:5312
+#: cp/decl.cc:5378
 #, fuzzy, gcc-internal-format
 msgid "%<const%> can only be specified for objects and functions"
 msgstr "määreet voidaan määrittää vain olioille ja funktioille"
 
-#: cp/decl.cc:5316
+#: cp/decl.cc:5382
 #, fuzzy, gcc-internal-format
 msgid "%<volatile%> can only be specified for objects and functions"
 msgstr "määreet voidaan määrittää vain olioille ja funktioille"
 
-#: cp/decl.cc:5320
+#: cp/decl.cc:5386
 #, fuzzy, gcc-internal-format
 msgid "%<__restrict%> can only be specified for objects and functions"
 msgstr "tallennusluokan voi antaa vain olioille ja funktioille"
 
-#: cp/decl.cc:5324
+#: cp/decl.cc:5390
 #, fuzzy, gcc-internal-format
 msgid "%<__thread%> can only be specified for objects and functions"
 msgstr "määreet voidaan määrittää vain olioille ja funktioille"
 
-#: cp/decl.cc:5328
+#: cp/decl.cc:5394
 #, fuzzy, gcc-internal-format
 msgid "%<typedef%> was ignored in this declaration"
 msgstr "tyypin nimi puuttuu typedef-esittelystä"
 
-#: cp/decl.cc:5331 cp/decl.cc:5334 cp/decl.cc:5337
+#: cp/decl.cc:5397 cp/decl.cc:5400 cp/decl.cc:5403
 #, fuzzy, gcc-internal-format
 msgid "%qs cannot be used for type declarations"
 msgstr "%Hprototyypin esittely"
 
-#: cp/decl.cc:5359
+#: cp/decl.cc:5425
 #, fuzzy, gcc-internal-format
 msgid "attribute ignored in explicit instantiation %q#T"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: cp/decl.cc:5362
+#: cp/decl.cc:5428
 #, fuzzy, gcc-internal-format
 msgid "no attribute can be applied to an explicit instantiation"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: cp/decl.cc:5434
+#: cp/decl.cc:5500
 #, fuzzy, gcc-internal-format
 msgid "ignoring attributes applied to class type %qT outside of definition"
 msgstr "%J%qE-attribuutti soveltuu vain funktioihin"
 
 #. A template type parameter or other dependent type.
-#: cp/decl.cc:5438
+#: cp/decl.cc:5504
 #, fuzzy, gcc-internal-format
 msgid "ignoring attributes applied to dependent type %qT without an associated declaration"
 msgstr "%J%qE-attribuutti soveltuu vain funktioihin"
 
-#: cp/decl.cc:5502 cp/decl2.cc:951
+#: cp/decl.cc:5570 cp/decl2.cc:951
 #, fuzzy, gcc-internal-format
 msgid "typedef %qD is initialized (use %qs instead)"
 msgstr "typedef %qD on alustettu (käytä __typeof__ sen sijaan)"
 
-#: cp/decl.cc:5515
+#: cp/decl.cc:5583
 #, fuzzy, gcc-internal-format
 msgid "declaration of %q#D has %<extern%> and is initialized"
 msgstr "parametrilla %q+D on vain etukäteisesittely"
 
-#: cp/decl.cc:5553
+#: cp/decl.cc:5621
 #, fuzzy, gcc-internal-format
 msgid "definition of %q#D is marked %<dllimport%>"
 msgstr "funktion %q+D määrittely on merkitty dllimport-tyyppiseksi"
 
-#: cp/decl.cc:5577
+#: cp/decl.cc:5645
 #, fuzzy, gcc-internal-format
 msgid "%q+#D is not a static data member of %q#T"
 msgstr "staattinen jäsenfunktio %q#D esitelty tyyppimääreillä"
 
-#: cp/decl.cc:5585
+#: cp/decl.cc:5653
 #, fuzzy, gcc-internal-format
 msgid "non-member-template declaration of %qD"
 msgstr "%qD:n esittely ei-jäsenenä"
 
-#: cp/decl.cc:5586
+#: cp/decl.cc:5654
 #, fuzzy, gcc-internal-format
 msgid "does not match member template declaration here"
 msgstr "malliesittelylle %q+D"
 
-#: cp/decl.cc:5598
+#: cp/decl.cc:5666
 #, gcc-internal-format
 msgid "ISO C++ does not permit %<%T::%D%> to be defined as %<%T::%D%>"
 msgstr ""
 
-#: cp/decl.cc:5610
+#: cp/decl.cc:5678
 #, fuzzy, gcc-internal-format
 msgid "duplicate initialization of %qD"
 msgstr "jäsenen %q+D kaksoiskappale"
 
-#: cp/decl.cc:5658
+#: cp/decl.cc:5726
 #, fuzzy, gcc-internal-format
 msgid "declaration of %q#D outside of class is not definition"
 msgstr "%qD:n esittely ei-funktiona"
 
-#: cp/decl.cc:5675
+#: cp/decl.cc:5743
 #, gcc-internal-format
 msgid "block-scope extern declaration %q#D not permitted in module purview"
 msgstr ""
 
-#: cp/decl.cc:5711
+#: cp/decl.cc:5779
 #, fuzzy, gcc-internal-format
-msgid "%qD declared %<thread_local%> in %qs function only available with %<-std=c++2b%> or %<-std=gnu++2b%>"
+msgid "%qD defined %<thread_local%> in %qs function only available with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/decl.cc:5717
+#: cp/decl.cc:5785
 #, fuzzy, gcc-internal-format
-msgid "%qD declared %<static%> in %qs function only available with %<-std=c++2b%> or %<-std=gnu++2b%>"
+msgid "%qD defined %<static%> in %qs function only available with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/decl.cc:5782
+#: cp/decl.cc:5850
 #, gcc-internal-format
 msgid "variable %q#D has initializer but incomplete type"
 msgstr "muuttujalla %q#D on alustin, mutta vaillinainen tyyppi"
 
-#: cp/decl.cc:5788 cp/decl.cc:7029
+#: cp/decl.cc:5856 cp/decl.cc:7149
 #, gcc-internal-format
 msgid "elements of array %q#D have incomplete type"
 msgstr "taulukon %q#D alkiot ovat vaillinaista tyyppiä"
 
-#: cp/decl.cc:5798
+#: cp/decl.cc:5866
 #, fuzzy, gcc-internal-format
 msgid "aggregate %q#D has incomplete type and cannot be defined"
 msgstr "parametrin %qD tyyppi on vaillinainen"
 
-#: cp/decl.cc:5865
+#: cp/decl.cc:5933
 #, gcc-internal-format
 msgid "%qD declared as reference but not initialized"
 msgstr "%qD esitelty viitteenä, mutta alustamatta"
 
-#: cp/decl.cc:5948
+#: cp/decl.cc:6016
 #, fuzzy, gcc-internal-format
 msgid "name used in a GNU-style designated initializer for an array"
 msgstr "ISO C ei salli ylimääräisiä %<;%>-merkkejä funktion ulkopuolella"
 
-#: cp/decl.cc:5954
+#: cp/decl.cc:6022
 #, fuzzy, gcc-internal-format
 msgid "name %qD used in a GNU-style designated initializer for an array"
 msgstr "ISO C ei salli ylimääräisiä %<;%>-merkkejä funktion ulkopuolella"
 
-#: cp/decl.cc:5973
+#: cp/decl.cc:6041
 #, fuzzy, gcc-internal-format
 msgid "non-trivial designated initializers not supported"
 msgstr "dwarfin versio %d ei ole tuettu"
 
-#: cp/decl.cc:5977
+#: cp/decl.cc:6045
 #, fuzzy, gcc-internal-format
 msgid "C99 designator %qE is not an integral constant-expression"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/decl.cc:6038
+#: cp/decl.cc:6106
 #, fuzzy, gcc-internal-format
 msgid "initializer fails to determine size of %qD"
 msgstr "alustin ei pysty päättelemään taulukon %q+D kokoa"
 
-#: cp/decl.cc:6045
+#: cp/decl.cc:6113
 #, gcc-internal-format
 msgid "array size missing in %qD"
 msgstr "%qD-taulukon koko puuttuu"
 
-#: cp/decl.cc:6057
+#: cp/decl.cc:6125
 #, gcc-internal-format
 msgid "zero-size array %qD"
 msgstr "nollan kokoinen taulukko %qD"
 
-#: cp/decl.cc:6097
+#: cp/decl.cc:6165
 #, gcc-internal-format
 msgid "storage size of %qD isn%'t known"
 msgstr "%qD:n koko muistissa ei ole tunnettu"
 
-#: cp/decl.cc:6122
+#: cp/decl.cc:6190
 #, gcc-internal-format
 msgid "storage size of %qD isn%'t constant"
 msgstr "%qD:n koko muistissa ei ole vakio"
 
-#: cp/decl.cc:6205
+#: cp/decl.cc:6273
 #, gcc-internal-format
 msgid "sorry: semantics of inline variable %q#D are wrong (you%'ll wind up with multiple copies)"
 msgstr ""
 
-#: cp/decl.cc:6209
+#: cp/decl.cc:6277
 #, gcc-internal-format
 msgid "sorry: semantics of inline function static data %q#D are wrong (you%'ll wind up with multiple copies)"
 msgstr ""
 
-#: cp/decl.cc:6215
+#: cp/decl.cc:6283
 #, fuzzy, gcc-internal-format
 msgid "you can work around this by removing the initializer"
 msgstr "  voit kiertää tämän poistamalla alustimen"
 
-#: cp/decl.cc:6257
+#: cp/decl.cc:6325
 #, fuzzy, gcc-internal-format
 msgid "uninitialized %<const %D%>"
 msgstr "alustamaton const %qD"
 
-#: cp/decl.cc:6264
+#: cp/decl.cc:6332
 #, fuzzy, gcc-internal-format
 msgid "uninitialized variable %qD in %<constexpr%> function"
 msgstr "%qD:a käytetään alustamattomana tässä funktiossa"
 
-#: cp/decl.cc:6273
+#: cp/decl.cc:6341
 #, fuzzy, gcc-internal-format
 msgid "uninitialized variable %qD in %<constexpr%> context"
 msgstr "%qD:a käytetään alustamattomana tässä funktiossa"
 
-#: cp/decl.cc:6281
+#: cp/decl.cc:6349
 #, fuzzy, gcc-internal-format
 msgid "%q#T has no user-provided default constructor"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/decl.cc:6285
+#: cp/decl.cc:6353
 #, gcc-internal-format
 msgid "constructor is not user-provided because it is explicitly defaulted in the class body"
 msgstr ""
 
-#: cp/decl.cc:6288
+#: cp/decl.cc:6356
 #, fuzzy, gcc-internal-format
 msgid "and the implicitly-defined constructor does not initialize %q#D"
 msgstr "hajotin ei voi olla staattinen jäsenfunktio"
 
-#: cp/decl.cc:6462
+#: cp/decl.cc:6530
 #, fuzzy, gcc-internal-format
 msgid "invalid type %qT as initializer for a vector of type %qT"
 msgstr "perustyypin %qT kaksoiskappale virheellinen"
 
-#: cp/decl.cc:6519
+#: cp/decl.cc:6602
 #, fuzzy, gcc-internal-format
 msgid "initializer for %qT must be brace-enclosed"
 msgstr "virheellinen alustin taulukon jäsenelle %q#D"
 
-#: cp/decl.cc:6556
+#: cp/decl.cc:6643
 #, fuzzy, gcc-internal-format
 msgid "%<[%E] =%> used in a GNU-style designated initializer for class %qT"
 msgstr "ISO C ei salli ylimääräisiä %<;%>-merkkejä funktion ulkopuolella"
 
-#: cp/decl.cc:6564
+#: cp/decl.cc:6656
 #, fuzzy, gcc-internal-format
 msgid "%qT has no non-static data member named %qD"
 msgstr "ei-staattisella datajäsenellä %qD on Java-luokkatyyppi"
 
-#: cp/decl.cc:6588
+#: cp/decl.cc:6680
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a direct member of %qT"
 msgstr "%qD:n esittely %qT:n jäsenenä"
 
-#: cp/decl.cc:6624
+#: cp/decl.cc:6735
 #, fuzzy, gcc-internal-format
 msgid "invalid initializer for %q#D"
 msgstr "virheellinen alustin taulukon jäsenelle %q#D"
 
-#: cp/decl.cc:6674
+#: cp/decl.cc:6785
 #, fuzzy, gcc-internal-format
 msgid "C99 designator %qE outside aggregate initializer"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/decl.cc:6713 cp/decl.cc:6988 cp/typeck2.cc:1489 cp/typeck2.cc:1786
-#: cp/typeck2.cc:1834 cp/typeck2.cc:1881
+#: cp/decl.cc:6824 cp/decl.cc:7108 cp/typeck2.cc:1494 cp/typeck2.cc:1791
+#: cp/typeck2.cc:1839 cp/typeck2.cc:1886
 #, gcc-internal-format
 msgid "too many initializers for %qT"
 msgstr "liikaa alustimia %qT:lle"
 
-#: cp/decl.cc:6755
+#: cp/decl.cc:6866
 #, fuzzy, gcc-internal-format
 msgid "braces around scalar initializer for type %qT"
 msgstr "skalaarialustimen ympärillä on aaltosulkeet"
 
-#: cp/decl.cc:6765
+#: cp/decl.cc:6876
 #, fuzzy, gcc-internal-format
 msgid "too many braces around scalar initializer for type %qT"
 msgstr "skalaarialustimen ympärillä on aaltosulkeet"
 
-#: cp/decl.cc:6889
+#: cp/decl.cc:7009
 #, fuzzy, gcc-internal-format
 msgid "missing braces around initializer for %qT"
 msgstr "alustimen ympäriltä puuttuu aaltosulkeet"
 
-#: cp/decl.cc:7017
+#: cp/decl.cc:7137
 #, fuzzy, gcc-internal-format
 msgid "structured binding has incomplete type %qT"
 msgstr "ei voida vähentää osoitinta vaillinaiseen tyyppiin %qT"
 
-#: cp/decl.cc:7031
+#: cp/decl.cc:7151
 #, fuzzy, gcc-internal-format
 msgid "elements of array %q#T have incomplete type"
 msgstr "taulukon %q#D alkiot ovat vaillinaista tyyppiä"
 
-#: cp/decl.cc:7044
+#: cp/decl.cc:7164
 #, gcc-internal-format
 msgid "variable-sized compound literal"
 msgstr "muuttuvakokoinen yhdysliteraali"
 
-#: cp/decl.cc:7099
+#: cp/decl.cc:7219
 #, gcc-internal-format
 msgid "%q#D has incomplete type"
 msgstr "%q#D on vaillinaista tyyppiä"
 
-#: cp/decl.cc:7120
+#: cp/decl.cc:7240
 #, gcc-internal-format
 msgid "scalar object %qD requires one element in initializer"
 msgstr "skalaariobjekti %qD vaatii yhden alkion alustimeensa"
 
-#: cp/decl.cc:7165
+#: cp/decl.cc:7285
 #, gcc-internal-format
 msgid "in C++98 %qD must be initialized by constructor, not by %<{...}%>"
 msgstr "C++98:ssa %qD on alustettava muodostimessa, ei käyttäen %<{...}%>"
 
-#: cp/decl.cc:7297
+#: cp/decl.cc:7421
 #, gcc-internal-format
 msgid "array %qD initialized by parenthesized string literal %qE"
 msgstr "taulukko %qD alustettu sulkujen sisällä olevalla merkkijonoliteraalilla %qE"
 
-#: cp/decl.cc:7332
+#: cp/decl.cc:7456
 #, fuzzy, gcc-internal-format
 msgid "initializer invalid for static member with constructor"
 msgstr "virheellinen alustin taulukon jäsenelle %q#D"
 
-#: cp/decl.cc:7334
+#: cp/decl.cc:7458
 #, fuzzy, gcc-internal-format
 msgid "non-constant in-class initialization invalid for static member %qD"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: cp/decl.cc:7337
+#: cp/decl.cc:7461
 #, fuzzy, gcc-internal-format
 msgid "non-constant in-class initialization invalid for non-inline static member %qD"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: cp/decl.cc:7342
+#: cp/decl.cc:7466
 #, fuzzy, gcc-internal-format
 msgid "(an out of class initialization is required)"
 msgstr "  ohittaa %q+#D:n alustuksen"
 
-#: cp/decl.cc:7544
+#: cp/decl.cc:7668
 #, fuzzy, gcc-internal-format
 msgid "reference %qD is initialized with itself"
 msgstr "%qD esitelty viitteenä, mutta ei ole alustettu"
 
-#: cp/decl.cc:7801
+#: cp/decl.cc:7925
 #, fuzzy, gcc-internal-format
 msgid "could not find variant declaration"
 msgstr "%<[*]%> ei ole esittelyssä"
 
-#: cp/decl.cc:7825
+#: cp/decl.cc:7949
 #, fuzzy, gcc-internal-format
 msgid "%<declare variant%> on constructor %qD"
 msgstr "liian vähän argumentteja muodostimelle %q#D"
 
-#: cp/decl.cc:7830
+#: cp/decl.cc:7954
 #, fuzzy, gcc-internal-format
 msgid "%<declare variant%> on destructor %qD"
 msgstr "hajottimen %qE osoitteen ottaminen"
 
-#: cp/decl.cc:7835
+#: cp/decl.cc:7959
 #, gcc-internal-format
 msgid "%<declare variant%> on defaulted %qD"
 msgstr ""
 
-#: cp/decl.cc:7840
+#: cp/decl.cc:7964
 #, gcc-internal-format
 msgid "%<declare variant%> on deleted %qD"
 msgstr ""
 
-#: cp/decl.cc:7845
+#: cp/decl.cc:7969
 #, gcc-internal-format
 msgid "%<declare variant%> on virtual %qD"
 msgstr ""
 
-#: cp/decl.cc:7895
+#: cp/decl.cc:8019
 #, gcc-internal-format
 msgid "assignment (not initialization) in declaration"
 msgstr "sijoitus (ei alustus) esittelyssä"
 
-#: cp/decl.cc:7913 cp/decl.cc:14364
+#: cp/decl.cc:8040 cp/decl.cc:14491
 #, fuzzy, gcc-internal-format
 msgid "ISO C++17 does not allow %<register%> storage class specifier"
 msgstr "ISO C ei salli ylimääräisiä %<;%>-merkkejä funktion ulkopuolella"
 
-#: cp/decl.cc:7917 cp/decl.cc:14368
+#: cp/decl.cc:8044 cp/decl.cc:14495
 #, gcc-internal-format
 msgid "%<register%> storage class specifier used"
 msgstr "%<register%>-tallennusluokkamääritteen käyttö"
 
-#: cp/decl.cc:7983
+#: cp/decl.cc:8110
 #, fuzzy, gcc-internal-format
 msgid "initializer for %<decltype(auto) %D%> has function type; did you forget the %<()%>?"
 msgstr "jäsentä %q+D käytetty virheellisesti staattisessa jäsenfunktiossa"
 
-#: cp/decl.cc:8099
+#: cp/decl.cc:8226
 #, fuzzy, gcc-internal-format
 msgid "variable concept has no initializer"
 msgstr "muuttujalla %qD on alustin, mutta vaillinainen tyyppi"
 
-#: cp/decl.cc:8158
+#: cp/decl.cc:8285
 #, fuzzy, gcc-internal-format
 msgid "shadowing previous type declaration of %q#D"
 msgstr "%q+D:n edellinen esittely"
 
-#: cp/decl.cc:8201
+#: cp/decl.cc:8328
 #, fuzzy, gcc-internal-format
 msgid "%<constinit%> can only be applied to a variable with static or thread storage duration"
 msgstr "%qE-attribuutti soveltuu vain muuttujiin ja funktioihin"
 
-#: cp/decl.cc:8379
+#: cp/decl.cc:8506
 #, gcc-internal-format
 msgid "function %q#D is initialized like a variable"
 msgstr "funktio %q#D alustetaan kuin muuttuja"
 
-#: cp/decl.cc:8488
+#: cp/decl.cc:8615
 #, fuzzy, gcc-internal-format
 msgid "cannot decompose class type %qT because it has an anonymous struct member"
 msgstr "%qE-attribuutti pätee vain muuttujiin"
 
-#: cp/decl.cc:8491
+#: cp/decl.cc:8618
 #, fuzzy, gcc-internal-format
 msgid "cannot decompose class type %qT because it has an anonymous union member"
 msgstr "%qE-attribuutti pätee vain muuttujiin"
 
-#: cp/decl.cc:8498
+#: cp/decl.cc:8625
 #, fuzzy, gcc-internal-format
 msgid "cannot decompose inaccessible member %qD of %qT"
 msgstr "perustyypin %qT kaksoiskappale virheellinen"
 
-#: cp/decl.cc:8524
+#: cp/decl.cc:8651
 #, fuzzy, gcc-internal-format
 msgid "cannot decompose class type %qT: both it and its base class %qT have non-static data members"
 msgstr "%qE-attribuutti pätee vain muuttujiin"
 
-#: cp/decl.cc:8533
+#: cp/decl.cc:8660
 #, fuzzy, gcc-internal-format
 msgid "cannot decompose class type %qT: its base classes %qT and %qT have non-static data members"
 msgstr "%qE-attribuutti pätee vain muuttujiin"
 
-#: cp/decl.cc:8743
+#: cp/decl.cc:8870
 #, fuzzy, gcc-internal-format
 msgid "structured binding refers to incomplete type %qT"
 msgstr "ei voida vähentää osoitinta vaillinaiseen tyyppiin %qT"
 
-#: cp/decl.cc:8759
+#: cp/decl.cc:8886
 #, fuzzy, gcc-internal-format
 msgid "cannot decompose variable length array %qT"
 msgstr "ISO C90 kieltää muuttuvakokoisen taulukon %qE"
 
-#: cp/decl.cc:8768 cp/decl.cc:8853
+#: cp/decl.cc:8895 cp/decl.cc:8980
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%u name provided for structured binding"
 msgid_plural "%u names provided for structured binding"
 msgstr[0] "%qs määritelty tietueen kentälle"
 msgstr[1] "%qs määritelty tietueen kentälle"
 
-#: cp/decl.cc:8772
+#: cp/decl.cc:8899
 #, fuzzy, 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] "%qs määritelty tietueen kentälle"
 msgstr[1] "%qs määritelty tietueen kentälle"
 
-#: cp/decl.cc:8775
+#: cp/decl.cc:8902
 #, gcc-internal-format
 msgid "while %qT decomposes into %wu element"
 msgid_plural "while %qT decomposes into %wu elements"
 msgstr[0] ""
 msgstr[1] ""
 
-#: cp/decl.cc:8820
+#: cp/decl.cc:8947
 #, fuzzy, gcc-internal-format
 msgid "cannot decompose variable length vector %qT"
 msgstr "luokalla %q#T on datajäseninä osoittimia"
 
-#: cp/decl.cc:8846
+#: cp/decl.cc:8973
 #, fuzzy, gcc-internal-format
 msgid "%<std::tuple_size<%T>::value%> is not an integral constant expression"
 msgstr "taulukon koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/decl.cc:8855
+#: cp/decl.cc:8982
 #, gcc-internal-format
 msgid "while %qT decomposes into %E elements"
 msgstr ""
 
-#: cp/decl.cc:8876
+#: cp/decl.cc:9003
 #, gcc-internal-format
 msgid "%<std::tuple_element<%u, %T>::type%> is %<void%>"
 msgstr ""
 
-#: cp/decl.cc:8882
+#: cp/decl.cc:9009
 #, fuzzy, gcc-internal-format
 msgid "in initialization of structured binding variable %qD"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: cp/decl.cc:8911
+#: cp/decl.cc:9038
 #, fuzzy, gcc-internal-format
 msgid "cannot decompose union type %qT"
 msgstr "tyyppimuunnos lisää funktiotyyppiin uusia määreitä"
 
-#: cp/decl.cc:8916
+#: cp/decl.cc:9043
 #, fuzzy, gcc-internal-format
 msgid "cannot decompose non-array non-class type %qT"
 msgstr "ei voida vähentää osoitinta vaillinaiseen tyyppiin %qT"
 
-#: cp/decl.cc:8921
+#: cp/decl.cc:9048
 #, fuzzy, gcc-internal-format
 msgid "cannot decompose lambda closure type %qT"
 msgstr "Pyydettyä osoitetta ei voi asettaa"
 
-#: cp/decl.cc:8927
+#: cp/decl.cc:9054
 #, fuzzy, gcc-internal-format
 msgid "structured binding refers to incomplete class type %qT"
 msgstr "paluutyyppi on vaillinainen tyyppi"
 
-#: cp/decl.cc:8936
+#: cp/decl.cc:9063
 #, fuzzy, gcc-internal-format
 msgid "cannot decompose class type %qT without non-static data members"
 msgstr "%qE-attribuutti pätee vain muuttujiin"
 
-#: cp/decl.cc:9403
+#: cp/decl.cc:9530
 #, fuzzy, gcc-internal-format
 msgid "non-local variable %qD declared %<__thread%> needs dynamic initialization"
 msgstr "Java-luokalla %qT ei voi olla implisiittistä epätriviaalia hajotinta"
 
-#: cp/decl.cc:9406
+#: cp/decl.cc:9533
 #, fuzzy, gcc-internal-format
 msgid "non-local variable %qD declared %<__thread%> has a non-trivial destructor"
 msgstr "Java-luokalla %qT ei voi olla implisiittistä epätriviaalia hajotinta"
 
-#: cp/decl.cc:9411
+#: cp/decl.cc:9538
 #, gcc-internal-format
 msgid "C++11 %<thread_local%> allows dynamic initialization and destruction"
 msgstr ""
 
-#: cp/decl.cc:9630
+#: cp/decl.cc:9757
 #, fuzzy, gcc-internal-format
 msgid "initializer fails to determine size of %qT"
 msgstr "alustin ei pysty päättelemään taulukon %q+D kokoa"
 
-#: cp/decl.cc:9634
+#: cp/decl.cc:9761
 #, fuzzy, gcc-internal-format
 msgid "array size missing in %qT"
 msgstr "%qD-taulukon koko puuttuu"
 
-#: cp/decl.cc:9637
+#: cp/decl.cc:9764
 #, fuzzy, gcc-internal-format
 msgid "zero-size array %qT"
 msgstr "nollan kokoinen taulukko %qD"
 
-#: cp/decl.cc:9653
+#: cp/decl.cc:9780
 #, fuzzy, gcc-internal-format
 msgid "destructor for alien class %qT cannot be a member"
 msgstr "Java-luokalla %qT ei voi olla hajotinta"
 
-#: cp/decl.cc:9655
+#: cp/decl.cc:9782
 #, fuzzy, gcc-internal-format
 msgid "constructor for alien class %qT cannot be a member"
 msgstr "Java-luokalla %qT ei voi olla hajotinta"
 
-#: cp/decl.cc:9681
+#: cp/decl.cc:9808
 #, fuzzy, gcc-internal-format
 msgid "%qD declared as a %<virtual%> variable"
 msgstr "funktio %qD esitelty virtuaaliseksi unionissa"
 
-#: cp/decl.cc:9683
+#: cp/decl.cc:9810
 #, fuzzy, gcc-internal-format
 msgid "%<const%> and %<volatile%> function specifiers on %qD invalid in variable declaration"
 msgstr "tallennusluokkatarkentimet virheellisiä parameteresittelyissä"
 
-#: cp/decl.cc:9689
+#: cp/decl.cc:9816
 #, fuzzy, gcc-internal-format
 msgid "%qD declared as a %<virtual%> parameter"
 msgstr "parametri %qD esitelty void-tyyppisenä"
 
-#: cp/decl.cc:9692
+#: cp/decl.cc:9819
 #, fuzzy, gcc-internal-format
 msgid "%qD declared as an %<inline%> parameter"
 msgstr "parametri %q+D esitelty %<inline%>:ksi"
 
-#: cp/decl.cc:9694
+#: cp/decl.cc:9821
 #, fuzzy, gcc-internal-format
 msgid "%<const%> and %<volatile%> function specifiers on %qD invalid in parameter declaration"
 msgstr "tallennusluokkatarkentimet virheellisiä parameteresittelyissä"
 
-#: cp/decl.cc:9700
+#: cp/decl.cc:9827
 #, fuzzy, gcc-internal-format
 msgid "%qD declared as a %<virtual%> type"
 msgstr "parametri %qD esitelty void-tyyppisenä"
 
-#: cp/decl.cc:9703
+#: cp/decl.cc:9830
 #, fuzzy, gcc-internal-format
 msgid "%qD declared as an %<inline%> type"
 msgstr "parametri %qD esitelty void-tyyppisenä"
 
-#: cp/decl.cc:9705
+#: cp/decl.cc:9832
 #, fuzzy, gcc-internal-format
 msgid "%<const%> and %<volatile%> function specifiers on %qD invalid in type declaration"
 msgstr "tallennusluokkatarkentimet virheellisiä parameteresittelyissä"
 
-#: cp/decl.cc:9711
+#: cp/decl.cc:9838
 #, fuzzy, gcc-internal-format
 msgid "%qD declared as a %<virtual%> field"
 msgstr "funktio %qD esitelty virtuaaliseksi unionissa"
 
-#: cp/decl.cc:9714
+#: cp/decl.cc:9841
 #, fuzzy, gcc-internal-format
 msgid "%qD declared as an %<inline%> field"
 msgstr "parametri %q+D esitelty %<inline%>:ksi"
 
-#: cp/decl.cc:9716
+#: cp/decl.cc:9843
 #, fuzzy, gcc-internal-format
 msgid "%<const%> and %<volatile%> function specifiers on %qD invalid in field declaration"
 msgstr "tallennusluokkatarkentimet virheellisiä parameteresittelyissä"
 
-#: cp/decl.cc:9723
+#: cp/decl.cc:9850
 #, gcc-internal-format
 msgid "%q+D declared as a friend"
 msgstr "%q+D esitelty ystävänä"
 
-#: cp/decl.cc:9730
+#: cp/decl.cc:9857
 #, fuzzy, gcc-internal-format
 msgid "%q+D declared with an exception specification"
 msgstr "nimike %qD esitelty muttei määritelty"
 
-#: cp/decl.cc:9762
+#: cp/decl.cc:9889
 #, fuzzy, gcc-internal-format
 msgid "definition of %qD is not in namespace enclosing %qT"
 msgstr "%qD ei ole luokka eikä nimiavaruus"
 
-#: cp/decl.cc:9802
+#: cp/decl.cc:9929
 #, gcc-internal-format
 msgid "static member function %q#D declared with type qualifiers"
 msgstr "staattinen jäsenfunktio %q#D esitelty tyyppimääreillä"
 
-#: cp/decl.cc:9813
+#: cp/decl.cc:9940
 #, fuzzy, gcc-internal-format
 msgid "concept %q#D declared with function parameters"
 msgstr "sisäinen funktio %q+D esitelty ei-funktiona"
 
-#: cp/decl.cc:9820
+#: cp/decl.cc:9947
 #, fuzzy, gcc-internal-format
 msgid "concept %q#D declared with a deduced return type"
 msgstr "parametri %qD esitelty void-tyyppisenä"
 
-#: cp/decl.cc:9823
+#: cp/decl.cc:9950
 #, fuzzy, gcc-internal-format
 msgid "concept %q#D with non-%<bool%> return type %qT"
 msgstr "parametri %qD esitelty void-tyyppisenä"
 
-#: cp/decl.cc:9899
+#: cp/decl.cc:10026
 #, fuzzy, gcc-internal-format
 msgid "concept %qD has no definition"
 msgstr "%qD:n poistettu määrittely"
 
-#: cp/decl.cc:9928
+#: cp/decl.cc:10055
 #, fuzzy, gcc-internal-format
 msgid "a function concept cannot be constrained"
 msgstr "funktiota %<main%> ei voi määrittää avoimeksi"
 
-#: cp/decl.cc:9938
+#: cp/decl.cc:10065
 #, fuzzy, gcc-internal-format
 msgid "constraints on a non-templated function"
 msgstr "%qD ei ole mallifunktio"
 
-#: cp/decl.cc:9983
+#: cp/decl.cc:10110
 #, fuzzy, gcc-internal-format
 msgid "defining explicit specialization %qD in friend declaration"
 msgstr "%<inline%> tyhjässä esittelyssä"
 
-#: cp/decl.cc:9994
+#: cp/decl.cc:10121
 #, fuzzy, gcc-internal-format
 msgid "invalid use of template-id %qD in declaration of primary template"
 msgstr "%qD ei ole malli"
 
-#: cp/decl.cc:10013
+#: cp/decl.cc:10140
 #, fuzzy, gcc-internal-format
 msgid "default arguments are not allowed in declaration of friend template specialization %qD"
 msgstr "oletusargumentti määritelty lambda-parametrille"
 
-#: cp/decl.cc:10022
+#: cp/decl.cc:10149
 #, fuzzy, gcc-internal-format
 msgid "%<inline%> is not allowed in declaration of friend template specialization %qD"
 msgstr "%J%qE-attribuutti soveltuu vain funktioihin"
 
-#: cp/decl.cc:10039
+#: cp/decl.cc:10166
 #, fuzzy, gcc-internal-format
 msgid "friend declaration of %qD specifies default arguments and isn%'t a definition"
 msgstr "luokkamäärittelyä ei voi esitellä ystäväksi"
 
-#: cp/decl.cc:10084
+#: cp/decl.cc:10211
 #, fuzzy, gcc-internal-format
 msgid "cannot declare %<::main%> to be a template"
 msgstr "funktiota %<main%> ei voi määrittää avoimeksi"
 
-#: cp/decl.cc:10087
+#: cp/decl.cc:10214
 #, fuzzy, gcc-internal-format
 msgid "cannot declare %<::main%> to be inline"
 msgstr "funktiota %<main%> ei voi määrittää avoimeksi"
 
-#: cp/decl.cc:10090 cp/decl.cc:10093
+#: cp/decl.cc:10217 cp/decl.cc:10220
 #, fuzzy, gcc-internal-format
 msgid "cannot declare %<::main%> to be %qs"
 msgstr "funktiota %<main%> ei voi määrittää avoimeksi"
 
-#: cp/decl.cc:10095
+#: cp/decl.cc:10222
 #, fuzzy, gcc-internal-format
 msgid "cannot declare %<::main%> to be static"
 msgstr "funktiota %<main%> ei voi määrittää avoimeksi"
 
-#: cp/decl.cc:10157
+#: cp/decl.cc:10284
 #, fuzzy, gcc-internal-format
 msgid "static member function %qD cannot have cv-qualifier"
 msgstr "staattinen jäsenfunktio %q#D esitelty tyyppimääreillä"
 
-#: cp/decl.cc:10158
+#: cp/decl.cc:10285
 #, fuzzy, gcc-internal-format
 msgid "non-member function %qD cannot have cv-qualifier"
 msgstr "staattinen jäsenfunktio %q#D esitelty tyyppimääreillä"
 
-#: cp/decl.cc:10166
+#: cp/decl.cc:10293
 #, fuzzy, gcc-internal-format
 msgid "static member function %qD cannot have ref-qualifier"
 msgstr "staattinen jäsenfunktio %q#D esitelty tyyppimääreillä"
 
-#: cp/decl.cc:10167
+#: cp/decl.cc:10294
 #, fuzzy, gcc-internal-format
 msgid "non-member function %qD cannot have ref-qualifier"
 msgstr "staattinen jäsenfunktio %q#D esitelty tyyppimääreillä"
 
-#: cp/decl.cc:10179
+#: cp/decl.cc:10306
 #, fuzzy, gcc-internal-format
 msgid "deduction guide %qD must be declared in the same scope as %qT"
 msgstr "%qD:n esittely ei-funktiona"
 
-#: cp/decl.cc:10187
+#: cp/decl.cc:10314
 #, fuzzy, gcc-internal-format
 msgid "deduction guide %qD must have the same access as %qT"
 msgstr "%qD:n esittely ei-funktiona"
 
-#: cp/decl.cc:10193
+#: cp/decl.cc:10320
 #, fuzzy, gcc-internal-format
 msgid "deduction guide %qD must not have a function body"
 msgstr "%qD:n esittely ei-funktiona"
 
-#: cp/decl.cc:10206
+#: cp/decl.cc:10333
 #, fuzzy, gcc-internal-format
 msgid "literal operator with C linkage"
 msgstr "malli C-linkityksellä"
 
-#: cp/decl.cc:10216
+#: cp/decl.cc:10343
 #, fuzzy, gcc-internal-format
 msgid "%qD has invalid argument list"
 msgstr "virheellinen IACC-argumentti"
 
-#: cp/decl.cc:10224
+#: cp/decl.cc:10351
 #, fuzzy, gcc-internal-format
 msgid "integer suffix %qs shadowed by implementation"
 msgstr "virheellinen loppuliite ”%.*s” kokonaislukuvakiolla"
 
-#: cp/decl.cc:10230
+#: cp/decl.cc:10357
 #, fuzzy, gcc-internal-format
 msgid "floating-point suffix %qs shadowed by implementation"
 msgstr "virheellinen loppuliite ”%.*s” kokonaislukuvakiolla"
 
-#: cp/decl.cc:10237
+#: cp/decl.cc:10364
 #, gcc-internal-format
 msgid "literal operator suffixes not preceded by %<_%> are reserved for future standardization"
 msgstr ""
 
-#: cp/decl.cc:10242
+#: cp/decl.cc:10369
 #, fuzzy, gcc-internal-format
 msgid "%qD must be a non-member function"
 msgstr "%qD:n esittely ei-jäsenenä"
 
-#: cp/decl.cc:10325
+#: cp/decl.cc:10452
 #, fuzzy, gcc-internal-format
 msgid "%<::main%> must return %<int%>"
 msgstr "paluutyyppi on oletuksena %<int%>"
 
-#: cp/decl.cc:10365
+#: cp/decl.cc:10492
 #, fuzzy, gcc-internal-format
 msgid "definition of implicitly-declared %qD"
 msgstr "funktion määrittely esitelty %<auto%>:ksi"
 
-#: cp/decl.cc:10370
+#: cp/decl.cc:10497
 #, fuzzy, gcc-internal-format
 msgid "definition of explicitly-defaulted %q+D"
 msgstr "%q+D:n edellinen määrittely oli täällä"
 
-#: cp/decl.cc:10372
+#: cp/decl.cc:10499
 #, fuzzy, gcc-internal-format
 msgid "%q#D explicitly defaulted here"
 msgstr "%q+D:n edellinen määrittely oli täällä"
 
-#: cp/decl.cc:10389
+#: cp/decl.cc:10516
 #, fuzzy, gcc-internal-format
 msgid "no %q#D member function declared in class %qT"
 msgstr "staattinen jäsenfunktio %q#D esitelty tyyppimääreillä"
 
-#: cp/decl.cc:10582
+#: cp/decl.cc:10709
 #, fuzzy, gcc-internal-format
 msgid "cannot declare %<::main%> to be a global variable"
 msgstr "%Jparametri %qD esitelty %<inline%>:ksi"
 
-#: cp/decl.cc:10591
+#: cp/decl.cc:10718
 #, fuzzy, gcc-internal-format
 msgid "a non-template variable cannot be %<concept%>"
 msgstr "automaattimuuttuja %qE ei voi olla %<threadprivate%>"
 
-#: cp/decl.cc:10597
+#: cp/decl.cc:10724
 #, fuzzy, gcc-internal-format
 msgid "concept must be defined at namespace scope"
 msgstr "%qD:n esittely ei-funktiona"
 
-#: cp/decl.cc:10604
+#: cp/decl.cc:10731
 #, fuzzy, gcc-internal-format
 msgid "concept must have type %<bool%>"
 msgstr "keskeytysfunktiolla on oltava void-paluutyyppi"
 
-#: cp/decl.cc:10607
+#: cp/decl.cc:10734
 #, fuzzy, gcc-internal-format
 msgid "a variable concept cannot be constrained"
 msgstr "muuttujalla %qD on alustin, mutta vaillinainen tyyppi"
 
 # semi-fuzzy
-#: cp/decl.cc:10731
+#: cp/decl.cc:10858
 #, fuzzy, gcc-internal-format
 msgid "in-class initialization of static data member %q#D of incomplete type"
 msgstr "ei-staattista datajäsentä %q+D käytetty virheellisesti"
 
-#: cp/decl.cc:10735
+#: cp/decl.cc:10862
 #, fuzzy, gcc-internal-format
 msgid "%<constexpr%> needed for in-class initialization of static data member %q#D of non-integral type"
 msgstr "ISO C++ kieltää epäkokonaislukutyyppiä %2$qT olevan vakiojäsenen %1$qD alustamisen"
 
-#: cp/decl.cc:10739
+#: cp/decl.cc:10866
 #, fuzzy, gcc-internal-format
 msgid "in-class initialization of static data member %q#D of non-literal type"
 msgstr "ISO C++ kieltää epäkokonaislukutyyppiä %2$qT olevan vakiojäsenen %1$qD alustamisen"
 
-#: cp/decl.cc:10750
+#: cp/decl.cc:10877
 #, fuzzy, gcc-internal-format
 msgid "invalid in-class initialization of static data member of non-integral type %qT"
 msgstr "ISO C++ kieltää epäkokonaislukutyyppiä %2$qT olevan vakiojäsenen %1$qD alustamisen"
 
-#: cp/decl.cc:10755
+#: cp/decl.cc:10882
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ forbids in-class initialization of non-const static member %qD"
 msgstr "ISO C++ kieltää jäsenen %qD alustuksen"
 
-#: cp/decl.cc:10760
+#: cp/decl.cc:10887
 #, gcc-internal-format
 msgid "ISO C++ forbids initialization of member constant %qD of non-integral type %qT"
 msgstr "ISO C++ kieltää epäkokonaislukutyyppiä %2$qT olevan vakiojäsenen %1$qD alustamisen"
 
-#: cp/decl.cc:10871
+#: cp/decl.cc:10998
 #, gcc-internal-format
 msgid "size of array %qD has non-integral type %qT"
 msgstr "taulukon %qD koolla on epäkokonaislukutyyppi %qT"
 
-#: cp/decl.cc:10874
+#: cp/decl.cc:11001
 #, gcc-internal-format
 msgid "size of array has non-integral type %qT"
 msgstr "taulukon koolla on epäkokonaislukutyyppi %qT"
 
-#: cp/decl.cc:10905 cp/decl.cc:10977
+#: cp/decl.cc:11032 cp/decl.cc:11104
 #, gcc-internal-format
 msgid "size of array %qD is not an integral constant-expression"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/decl.cc:10909 cp/decl.cc:10980
+#: cp/decl.cc:11036 cp/decl.cc:11107
 #, gcc-internal-format
 msgid "size of array is not an integral constant-expression"
 msgstr "taulukon koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/decl.cc:10960
+#: cp/decl.cc:11087
 #, gcc-internal-format
 msgid "ISO C++ forbids zero-size array %qD"
 msgstr "ISO C++ kieltää nollan kokoisen taulukon %qD"
 
-#: cp/decl.cc:10963
+#: cp/decl.cc:11090
 #, gcc-internal-format
 msgid "ISO C++ forbids zero-size array"
 msgstr "ISO C++ kieltää nollan kokoisen taulukon"
 
-#: cp/decl.cc:10987
+#: cp/decl.cc:11114
 #, gcc-internal-format
 msgid "ISO C++ forbids variable length array %qD"
 msgstr "ISO C++ kieltää muuttuvakokoisen taulukon %qD"
 
-#: cp/decl.cc:10990
+#: cp/decl.cc:11117
 #, gcc-internal-format
 msgid "ISO C++ forbids variable length array"
 msgstr "ISO C++ kieltää muuttuvakokoisen taulukon"
 
-#: cp/decl.cc:10996
+#: cp/decl.cc:11123
 #, fuzzy, gcc-internal-format
 msgid "variable length array %qD is used"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: cp/decl.cc:10999
+#: cp/decl.cc:11126
 #, gcc-internal-format
 msgid "variable length array is used"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: cp/decl.cc:11051
+#: cp/decl.cc:11178
 #, gcc-internal-format
 msgid "overflow in array dimension"
 msgstr "taulukon koon ylivuoto"
 
-#: cp/decl.cc:11111
+#: cp/decl.cc:11238
 #, fuzzy, gcc-internal-format
 msgid "%qD declared as array of template placeholder type %qT"
 msgstr "%qD esiteltiin täällä"
 
-#: cp/decl.cc:11114
+#: cp/decl.cc:11241
 #, fuzzy, gcc-internal-format
 msgid "creating array of template placeholder type %qT"
 msgstr "NULLin muunnos epäosoitintyypiksi %qT"
 
-#: cp/decl.cc:11124
+#: cp/decl.cc:11251
 #, gcc-internal-format
 msgid "declaration of %qD as array of void"
 msgstr "%qD:n esittely void-taulukkona"
 
-#: cp/decl.cc:11126
+#: cp/decl.cc:11253
 #, gcc-internal-format
 msgid "creating array of void"
 msgstr "luodaan void-taulukko"
 
-#: cp/decl.cc:11131
+#: cp/decl.cc:11258
 #, gcc-internal-format
 msgid "declaration of %qD as array of functions"
 msgstr "%qD:n esittely funktioiden taulukkona"
 
-#: cp/decl.cc:11133
+#: cp/decl.cc:11260
 #, gcc-internal-format
 msgid "creating array of functions"
 msgstr "luodaan funktioiden taulukko"
 
-#: cp/decl.cc:11138
+#: cp/decl.cc:11265
 #, gcc-internal-format
 msgid "declaration of %qD as array of references"
 msgstr "%qD:n esittely viitteiden taulukkona"
 
-#: cp/decl.cc:11140
+#: cp/decl.cc:11267
 #, gcc-internal-format
 msgid "creating array of references"
 msgstr "luodaan viitteiden taulukko"
 
-#: cp/decl.cc:11145
+#: cp/decl.cc:11272
 #, gcc-internal-format
 msgid "declaration of %qD as array of function members"
 msgstr "%qD:n esittely funktiojäsenten taulukkona"
 
-#: cp/decl.cc:11148
+#: cp/decl.cc:11275
 #, gcc-internal-format
 msgid "creating array of function members"
 msgstr "luodaan funktiojäsenten taulukkoa"
 
-#: cp/decl.cc:11166
+#: cp/decl.cc:11293
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qD as multidimensional array must have bounds for all dimensions except the first"
 msgstr "moniulotteisell taulukolla on oltava rajat kaikkiin suuntiin paitsi ensimmäiseen"
 
-#: cp/decl.cc:11170
+#: cp/decl.cc:11297
 #, gcc-internal-format
 msgid "multidimensional array must have bounds for all dimensions except the first"
 msgstr "moniulotteisell taulukolla on oltava rajat kaikkiin suuntiin paitsi ensimmäiseen"
 
-#: cp/decl.cc:11184
+#: cp/decl.cc:11311
 #, fuzzy, gcc-internal-format
 #| msgid "variable length array is used"
 msgid "variable-length array of %<auto%>"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: cp/decl.cc:11260
+#: cp/decl.cc:11387
 #, fuzzy, gcc-internal-format
 msgid "return type specification for constructor invalid"
 msgstr "virheellinen hajottimen %qD käyttö tyyppinä"
 
-#: cp/decl.cc:11263
+#: cp/decl.cc:11390
 #, fuzzy, gcc-internal-format
 msgid "qualifiers are not allowed on constructor declaration"
 msgstr "Tyhjä taulukkomuodostin kohdassa %C ei ole sallittu"
 
-#: cp/decl.cc:11274
+#: cp/decl.cc:11401
 #, fuzzy, gcc-internal-format
 msgid "return type specification for destructor invalid"
 msgstr "virheellinen hajottimen %qD käyttö tyyppinä"
 
-#: cp/decl.cc:11277
+#: cp/decl.cc:11404
 #, fuzzy, gcc-internal-format
 msgid "qualifiers are not allowed on destructor declaration"
 msgstr "%Jvanhanmallinen funktiomäärittely"
 
-#: cp/decl.cc:11290
+#: cp/decl.cc:11417
 #, fuzzy, gcc-internal-format
 msgid "return type specified for %<operator %T%>"
 msgstr "paluutyyppi %q#T on vaillinainen"
 
-#: cp/decl.cc:11293
+#: cp/decl.cc:11420
 #, fuzzy, gcc-internal-format
 msgid "qualifiers are not allowed on declaration of %<operator %T%>"
 msgstr "%Jvanhanmallinen funktiomäärittely"
 
-#: cp/decl.cc:11302
+#: cp/decl.cc:11429
 #, fuzzy, gcc-internal-format
 msgid "return type specified for deduction guide"
 msgstr "virheellinen hajottimen %qD käyttö tyyppinä"
 
-#: cp/decl.cc:11305
+#: cp/decl.cc:11432
 #, fuzzy, gcc-internal-format
 msgid "qualifiers are not allowed on declaration of deduction guide"
 msgstr "%Jvanhanmallinen funktiomäärittely"
 
-#: cp/decl.cc:11309
+#: cp/decl.cc:11436
 #, fuzzy, gcc-internal-format
 msgid "template template parameter %qT in declaration of deduction guide"
 msgstr "%qD esitelty ei-parametrina"
 
-#: cp/decl.cc:11318
+#: cp/decl.cc:11445
 #, fuzzy, gcc-internal-format
 msgid "%<decl-specifier%> in declaration of deduction guide"
 msgstr "useita tallennusluokkia esittelymääritteissä"
 
-#: cp/decl.cc:11339
+#: cp/decl.cc:11466
 #, gcc-internal-format
 msgid "unnamed variable or field declared void"
 msgstr "nimetön muuttuja tai kenttä esitelty voidiksi"
 
-#: cp/decl.cc:11347
+#: cp/decl.cc:11474
 #, gcc-internal-format
 msgid "variable or field declared void"
 msgstr "muuttuja tai kenttä esitelty voidiksi"
 
-#: cp/decl.cc:11362
+#: cp/decl.cc:11489
 #, fuzzy, gcc-internal-format
 msgid "%<inline%> specifier invalid for variable %qD declared at block scope"
 msgstr "ystäväesittely ei nimeä luokkaa tai funktiota"
 
-#: cp/decl.cc:11367
+#: cp/decl.cc:11494
 #, fuzzy, gcc-internal-format
 msgid "inline variables are only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/decl.cc:11423
+#: cp/decl.cc:11550
 #, gcc-internal-format
 msgid "%qT as type rather than plain %<decltype(auto)%>"
 msgstr ""
 
-#: cp/decl.cc:11429
+#: cp/decl.cc:11556
 #, fuzzy, gcc-internal-format
 msgid "%<decltype(auto)%> cannot be cv-qualified"
 msgstr "hajottimet eivät voi olla cv-määriteltyjä"
 
-#: cp/decl.cc:11645
+#: cp/decl.cc:11772
 #, fuzzy, gcc-internal-format
 msgid "invalid use of qualified-name %<::%D%>"
 msgstr "Virheellinen käyttäjänimi ”%s” funktiossa %s, rivillä %d. Keskeytys."
 
-#: cp/decl.cc:11648 cp/decl.cc:11670
+#: cp/decl.cc:11775 cp/decl.cc:11797
 #, fuzzy, gcc-internal-format
 msgid "invalid use of qualified-name %<%T::%D%>"
 msgstr "määrittelemättömän tyypin %<%s %s%> epäkelpo käyttö"
 
-#: cp/decl.cc:11651
+#: cp/decl.cc:11778
 #, fuzzy, gcc-internal-format
 msgid "invalid use of qualified-name %<%D::%D%>"
 msgstr "Virheellinen käyttäjänimi ”%s” funktiossa %s, rivillä %d. Keskeytys."
 
-#: cp/decl.cc:11661
+#: cp/decl.cc:11788
 #, fuzzy, gcc-internal-format
 msgid "%q#T is not a class or namespace"
 msgstr "%qT ei ole luokka eikä nimiavaruus"
 
-#: cp/decl.cc:11685
+#: cp/decl.cc:11812
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qE as non-function"
 msgstr "%qD:n esittely ei-funktiona"
 
-#: cp/decl.cc:11692
+#: cp/decl.cc:11819
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qE as non-member"
 msgstr "%qD:n esittely ei-jäsenenä"
 
-#: cp/decl.cc:11720
+#: cp/decl.cc:11847
 #, gcc-internal-format
 msgid "declarator-id missing; using reserved word %qD"
 msgstr ""
 
-#: cp/decl.cc:11771
+#: cp/decl.cc:11898
 #, gcc-internal-format
 msgid "function definition does not declare parameters"
 msgstr "funktion määrittely ei esittele parametrejä"
 
-#: cp/decl.cc:11779 cp/decl.cc:11788 cp/decl.cc:13597
+#: cp/decl.cc:11906 cp/decl.cc:11915 cp/decl.cc:13724
 #, gcc-internal-format
 msgid "declaration of %qD as non-function"
 msgstr "%qD:n esittely ei-funktiona"
 
-#: cp/decl.cc:11796
+#: cp/decl.cc:11923
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qD as %<typedef%>"
 msgstr "vaillinaisen tyypin typedef %qD epäkelpo käyttö"
 
-#: cp/decl.cc:11801
+#: cp/decl.cc:11928
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qD as parameter"
 msgstr "parametrin %qD esittely, mutta parametria ei ole olemassa"
 
-#: cp/decl.cc:11836
+#: cp/decl.cc:11963
 #, gcc-internal-format
 msgid "both %qs and %qs specified"
 msgstr ""
 
-#: cp/decl.cc:11843 cp/decl.cc:11850 cp/decl.cc:11857 cp/decl.cc:11864
+#: cp/decl.cc:11970 cp/decl.cc:11977 cp/decl.cc:11984 cp/decl.cc:11991
 #, fuzzy, gcc-internal-format
 msgid "%qs cannot appear in a typedef declaration"
 msgstr "%Hprototyypin esittely"
 
-#: cp/decl.cc:11875
+#: cp/decl.cc:12002
 #, gcc-internal-format
 msgid "can use at most one of the %<constinit%> and %<constexpr%> specifiers"
 msgstr ""
 
-#: cp/decl.cc:11885
+#: cp/decl.cc:12012
 #, fuzzy, gcc-internal-format
 msgid "two or more data types in declaration of %qs"
 msgstr "yli yksi tietotyyppi esittelymääritteissä"
 
-#: cp/decl.cc:11893
+#: cp/decl.cc:12020
 #, fuzzy, gcc-internal-format
 msgid "conflicting specifiers in declaration of %qs"
 msgstr "useita tallennusluokkia esittelymääritteissä"
 
-#: cp/decl.cc:11944
+#: cp/decl.cc:12071
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ does not support plain %<complex%> meaning %<double complex%>"
 msgstr "ISO C ei tue pelkkää %<complex%>-tyyppiä merkityksellä %<double complex%>"
 
-#: cp/decl.cc:11993 cp/decl.cc:11997 cp/decl.cc:12000
+#: cp/decl.cc:12120 cp/decl.cc:12124 cp/decl.cc:12127
 #, gcc-internal-format
 msgid "ISO C++ forbids declaration of %qs with no type"
 msgstr "ISO C++ kieltää muuttujan %qs esittelyn ilman tyyppiä"
 
-#: cp/decl.cc:12017
+#: cp/decl.cc:12144
 #, fuzzy, gcc-internal-format
 msgid "%<__int%d%> is not supported by this target"
 msgstr "kohteen int-tyyppi on kapeampi kuin kohteen char-tyyppi"
 
-#: cp/decl.cc:12025
+#: cp/decl.cc:12152
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ does not support %<__int%d%> for %qs"
 msgstr "ISO C++ 1998 ei tue %<long long%> -tyyppiä"
 
-#: cp/decl.cc:12079
+#: cp/decl.cc:12206
 #, fuzzy, gcc-internal-format
 msgid "%<signed%> and %<unsigned%> specified together"
 msgstr "sekä %<signed%> että %<unsigned%> määritelty %qs:lle"
 
-#: cp/decl.cc:12085
+#: cp/decl.cc:12212
 #, fuzzy, gcc-internal-format
 msgid "%<long%> and %<short%> specified together"
 msgstr "sekä %<long%> että %<short%> määritelty %qs:lle"
 
-#: cp/decl.cc:12093 cp/decl.cc:12099
+#: cp/decl.cc:12220 cp/decl.cc:12226
 #, fuzzy, gcc-internal-format
 msgid "%qs specified with %qT"
 msgstr "%qE:a käytetään alustamattomana tässä funktiossa"
 
-#: cp/decl.cc:12104
+#: cp/decl.cc:12231
 #, fuzzy, gcc-internal-format
 msgid "%qs specified with %<decltype%>"
 msgstr "%qE ei ole typedef eikä sisäinen tyyppi"
 
-#: cp/decl.cc:12106
+#: cp/decl.cc:12233
 #, fuzzy, gcc-internal-format
 msgid "%qs specified with %<typeof%>"
 msgstr "%qE ei ole typedef eikä sisäinen tyyppi"
 
-#: cp/decl.cc:12173
+#: cp/decl.cc:12300
 #, fuzzy, gcc-internal-format
 msgid "complex invalid for %qs"
 msgstr "epäkelpo osoitintila %qs"
 
-#: cp/decl.cc:12212
+#: cp/decl.cc:12339
 #, gcc-internal-format
 msgid "template placeholder type %qT must be followed by a simple declarator-id"
 msgstr ""
 
-#: cp/decl.cc:12237
+#: cp/decl.cc:12364
 #, fuzzy, gcc-internal-format
 msgid "member %qD cannot be declared both %<virtual%> and %<static%>"
 msgstr "jäsentä %qD ei voida esitellä sekä virtuaaliseksi että staattiseksi"
 
-#: cp/decl.cc:12246
+#: cp/decl.cc:12373
 #, fuzzy, gcc-internal-format
 msgid "member %qD can be declared both %<virtual%> and %<constexpr%> only in %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "jäsentä %qD ei voida esitellä sekä virtuaaliseksi että staattiseksi"
 
-#: cp/decl.cc:12259
+#: cp/decl.cc:12386
 #, fuzzy, gcc-internal-format
 msgid "typedef declaration invalid in parameter declaration"
 msgstr "parametrin %qD esittely, mutta parametria ei ole olemassa"
 
-#: cp/decl.cc:12266
+#: cp/decl.cc:12393
 #, gcc-internal-format
 msgid "storage class specified for template parameter %qs"
 msgstr "tallennusluokka annettu malliparametrille %qs"
 
-#: cp/decl.cc:12276 cp/decl.cc:12448
+#: cp/decl.cc:12403 cp/decl.cc:12575
 #, gcc-internal-format
 msgid "storage class specified for parameter %qs"
 msgstr "tallennusluokka annettu parametrille %qs"
 
-#: cp/decl.cc:12284 cp/decl.cc:12293 cp/decl.cc:12299 cp/decl.cc:12305
+#: cp/decl.cc:12411 cp/decl.cc:12420 cp/decl.cc:12426 cp/decl.cc:12432
 #, fuzzy, gcc-internal-format
 msgid "a parameter cannot be declared %qs"
 msgstr "parametriksi ei voida esitellä %<constexpr%>:ksi"
 
-#: cp/decl.cc:12315
+#: cp/decl.cc:12442
 #, gcc-internal-format
 msgid "%<virtual%> outside class declaration"
 msgstr "%<virtual%> luokan esittelyn ulkopuolella"
 
-#: cp/decl.cc:12325 cp/decl.cc:12328 cp/decl.cc:12330 cp/decl.cc:12333
-#: cp/decl.cc:12343 cp/decl.cc:12353 cp/decl.cc:12363 cp/decl.cc:12367
+#: cp/decl.cc:12452 cp/decl.cc:12455 cp/decl.cc:12457 cp/decl.cc:12460
+#: cp/decl.cc:12470 cp/decl.cc:12480 cp/decl.cc:12490 cp/decl.cc:12494
 #, fuzzy, gcc-internal-format
 msgid "structured binding declaration cannot be %qs"
 msgstr "attribuutti jätetty huomioimatta %q+#T:n esittelyssä"
 
-#: cp/decl.cc:12337 cp/decl.cc:12359
+#: cp/decl.cc:12464 cp/decl.cc:12486
 #, fuzzy, gcc-internal-format
 msgid "structured binding declaration can be %qs only in %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/decl.cc:12347
+#: cp/decl.cc:12474
 #, fuzzy, gcc-internal-format
 msgid "%<volatile%>-qualified structured binding is deprecated"
 msgstr "virheellinen funktioesittely"
 
-#: cp/decl.cc:12371
+#: cp/decl.cc:12498
 #, fuzzy, gcc-internal-format
 msgid "structured binding declaration cannot be C++98 %<auto%>"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: cp/decl.cc:12382
+#: cp/decl.cc:12509
 #, fuzzy, gcc-internal-format
 msgid "structured binding declaration cannot have type %qT"
 msgstr "attribuutti jätetty huomioimatta %q+#T:n esittelyssä"
 
-#: cp/decl.cc:12385
+#: cp/decl.cc:12512
 #, gcc-internal-format
 msgid "type must be cv-qualified %<auto%> or reference to cv-qualified %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:12420
+#: cp/decl.cc:12547
 #, gcc-internal-format
 msgid "multiple storage classes in declaration of %qs"
 msgstr "useita tallennusluokkia %qs:n esittelyssä"
 
-#: cp/decl.cc:12446
+#: cp/decl.cc:12573
 #, gcc-internal-format
 msgid "storage class specified for %qs"
 msgstr "tallennusluokka annettu %qs:lle"
 
-#: cp/decl.cc:12460
+#: cp/decl.cc:12587
 #, gcc-internal-format
 msgid "nested function %qs declared %<extern%>"
 msgstr "sisäkkäinen funktio %qs esitelty %<extern%>:ksi"
 
-#: cp/decl.cc:12465
+#: cp/decl.cc:12592
 #, fuzzy, gcc-internal-format
 msgid "top-level declaration of %qs specifies %<auto%>"
 msgstr "%<auto%> tiedostoalueen tyhjässä esittelyssä"
 
-#: cp/decl.cc:12473
+#: cp/decl.cc:12600
 #, gcc-internal-format
 msgid "function-scope %qs implicitly auto and declared %<__thread%>"
 msgstr "funktioalue %qs implisiittisesti auto ja esitelty %<__thread%>:ksi"
 
-#: cp/decl.cc:12487
+#: cp/decl.cc:12614
 #, fuzzy, gcc-internal-format
 msgid "storage class specifiers invalid in friend function declarations"
 msgstr "tallennusluokkatarkentimet virheellisiä parameteresittelyissä"
 
-#: cp/decl.cc:12518 cp/decl.cc:13969 cp/parser.cc:14835 cp/parser.cc:20645
-#: cp/parser.cc:27043
+#: cp/decl.cc:12645 cp/decl.cc:14096 cp/parser.cc:14829 cp/parser.cc:20643
+#: cp/parser.cc:27041
 #, gcc-internal-format
 msgid "attribute ignored"
 msgstr "attribuuttia ei huomioida"
 
-#: cp/decl.cc:12519
+#: cp/decl.cc:12646
 #, fuzzy, gcc-internal-format
 msgid "an attribute that appertains to a type-specifier is ignored"
 msgstr "%qE-attribuuttia ei huomioida %qT-tyyppiselle kentälle"
 
-#: cp/decl.cc:12577
+#: cp/decl.cc:12704
 #, gcc-internal-format
 msgid "unnecessary parentheses in declaration of %qs"
 msgstr "tarpeettomat sulkeet %qs:n esittelyssä"
 
-#: cp/decl.cc:12583
+#: cp/decl.cc:12710
 #, fuzzy, gcc-internal-format
 msgid "remove parentheses"
 msgstr "Odotettiin oikeaa sulkumerkkiä lausekkeessa kohdassa %C"
 
-#: cp/decl.cc:12632
+#: cp/decl.cc:12759
 #, fuzzy, gcc-internal-format
 msgid "requires-clause on return type"
 msgstr "paluutyyppi on vaillinainen tyyppi"
 
-#: cp/decl.cc:12652
+#: cp/decl.cc:12779
 #, fuzzy, gcc-internal-format
 msgid "%qs function uses %<auto%> type specifier without trailing return type"
 msgstr "%qs-nimikkeen kaksoisesittely"
 
-#: cp/decl.cc:12656
+#: cp/decl.cc:12783
 #, fuzzy, gcc-internal-format
 msgid "deduced return type only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/decl.cc:12661
+#: cp/decl.cc:12788
 #, fuzzy, gcc-internal-format
 msgid "virtual function cannot have deduced return type"
 msgstr "%qs-nimikkeen kaksoisesittely"
 
-#: cp/decl.cc:12668
+#: cp/decl.cc:12795
 #, gcc-internal-format
 msgid "%qs function with trailing return type has %qT as its type rather than plain %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:12677
+#: cp/decl.cc:12804
 #, gcc-internal-format
 msgid "%qs function with trailing return type has %<decltype(auto)%> as its type rather than plain %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:12682
+#: cp/decl.cc:12809
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %<decltype(auto)%>"
 msgstr "virheellinen %<auto%>:n käyttö muunnosoperaattorissa"
 
-#: cp/decl.cc:12693
+#: cp/decl.cc:12820
 #, fuzzy, gcc-internal-format
 msgid "deduced class type %qD in function return type"
 msgstr "tyyppimääreet jätetään huomiotta funktion paluutyypissä"
 
-#: cp/decl.cc:12702
+#: cp/decl.cc:12829
 #, fuzzy, gcc-internal-format
 msgid "deduction guide for %qT must have trailing return type"
 msgstr "%qs-nimikkeen kaksoisesittely"
 
-#: cp/decl.cc:12715
+#: cp/decl.cc:12842
 #, gcc-internal-format
 msgid "trailing return type %qT of deduction guide is not a specialization of %qT"
 msgstr ""
 
-#: cp/decl.cc:12729
+#: cp/decl.cc:12856
 #, fuzzy, gcc-internal-format
 msgid "trailing return type only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/decl.cc:12732
+#: cp/decl.cc:12859
 #, gcc-internal-format
 msgid "%qs function with trailing return type not declared with %<auto%> type specifier"
 msgstr ""
 
-#: cp/decl.cc:12756
+#: cp/decl.cc:12883
 #, fuzzy, gcc-internal-format
 msgid "%<volatile%>-qualified return type is deprecated"
 msgstr "%qD:n paluuarvon tyyppi ei ole %<int%>"
 
-#: cp/decl.cc:12768
+#: cp/decl.cc:12895
 #, gcc-internal-format
 msgid "%qs declared as function returning a function"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: cp/decl.cc:12774
+#: cp/decl.cc:12901
 #, gcc-internal-format
 msgid "%qs declared as function returning an array"
 msgstr "%qs esitelty taulukon palauttavan funktiona"
 
-#: cp/decl.cc:12781
+#: cp/decl.cc:12908
 #, fuzzy, gcc-internal-format
 msgid "%<constinit%> on function return type is not allowed"
 msgstr "%<noreturn%>-funktio palauttaa ei-void-arvon"
 
-#: cp/decl.cc:12814
+#: cp/decl.cc:12941
 #, gcc-internal-format
 msgid "destructor cannot be static member function"
 msgstr "hajotin ei voi olla staattinen jäsenfunktio"
 
-#: cp/decl.cc:12816
+#: cp/decl.cc:12943
 #, gcc-internal-format
 msgid "constructor cannot be static member function"
 msgstr "muodostin ei voi olla staattinen jäsenfunktio"
 
-#: cp/decl.cc:12821
+#: cp/decl.cc:12948
 #, gcc-internal-format
 msgid "destructors may not be cv-qualified"
 msgstr "hajottimet eivät voi olla cv-määriteltyjä"
 
-#: cp/decl.cc:12822
+#: cp/decl.cc:12949
 #, gcc-internal-format
 msgid "constructors may not be cv-qualified"
 msgstr "muodostimet eivät voi olla cv-määriteltyjä"
 
-#: cp/decl.cc:12830
+#: cp/decl.cc:12957
 #, fuzzy, gcc-internal-format
 msgid "destructors may not be ref-qualified"
 msgstr "hajottimet eivät voi olla cv-määriteltyjä"
 
-#: cp/decl.cc:12831
+#: cp/decl.cc:12958
 #, fuzzy, gcc-internal-format
 msgid "constructors may not be ref-qualified"
 msgstr "hajottimet eivät voi olla cv-määriteltyjä"
 
-#: cp/decl.cc:12849
+#: cp/decl.cc:12976
 #, fuzzy, gcc-internal-format
 msgid "constructors cannot be declared %<virtual%>"
 msgstr "muodostimia ei voi esitellä virtuaalisiksi"
 
-#: cp/decl.cc:12866
+#: cp/decl.cc:12993
 #, fuzzy, gcc-internal-format
 msgid "virtual functions cannot be friends"
 msgstr "tyypillä %qE on virtuaalisia jäsenfunktioita"
 
-#: cp/decl.cc:12871
+#: cp/decl.cc:12998
 #, fuzzy, gcc-internal-format
 msgid "friend declaration not in class definition"
 msgstr "luokkamäärittelyä ei voi esitellä ystäväksi"
 
-#: cp/decl.cc:12875
+#: cp/decl.cc:13002
 #, fuzzy, gcc-internal-format
 msgid "cannot define friend function %qs in a local class definition"
 msgstr "luokkamäärittelyä ei voi esitellä ystäväksi"
 
-#: cp/decl.cc:12885
+#: cp/decl.cc:13012
 #, gcc-internal-format
 msgid "friend function definition %qs cannot have a name qualified with %<::%>"
 msgstr ""
 
-#: cp/decl.cc:12889
+#: cp/decl.cc:13016
 #, gcc-internal-format
 msgid "friend function definition %qs cannot have a name qualified with %<%D::%>"
 msgstr ""
 
-#: cp/decl.cc:12902
+#: cp/decl.cc:13029
 #, fuzzy, gcc-internal-format
 msgid "a conversion function cannot have a trailing return type"
 msgstr "%qs-nimikkeen kaksoisesittely"
 
-#: cp/decl.cc:12929
+#: cp/decl.cc:13056
 #, gcc-internal-format
 msgid "destructors may not have parameters"
 msgstr "hajottimilla ei voi olla parametreja"
 
-#: cp/decl.cc:12969
+#: cp/decl.cc:13096
 #, fuzzy, gcc-internal-format
 msgid "cannot declare pointer to %q#T"
 msgstr "luokalla %q#T on datajäseninä osoittimia"
 
-#: cp/decl.cc:12982 cp/decl.cc:12989
+#: cp/decl.cc:13109 cp/decl.cc:13116
 #, fuzzy, gcc-internal-format
 msgid "cannot declare reference to %q#T"
 msgstr "luokalla %q#T on datajäseninä osoittimia"
 
-#: cp/decl.cc:12991
+#: cp/decl.cc:13118
 #, fuzzy, gcc-internal-format
 msgid "cannot declare pointer to %q#T member"
 msgstr "luokalla %q#T on datajäseninä osoittimia"
 
-#: cp/decl.cc:13020
+#: cp/decl.cc:13147
 #, fuzzy, gcc-internal-format
 msgid "cannot declare reference to qualified function type %qT"
 msgstr "tyyppimuunnos lisää funktiotyyppiin uusia määreitä"
 
-#: cp/decl.cc:13021
+#: cp/decl.cc:13148
 #, fuzzy, gcc-internal-format
 msgid "cannot declare pointer to qualified function type %qT"
 msgstr "tyyppimuunnos lisää funktiotyyppiin uusia määreitä"
 
-#: cp/decl.cc:13094
+#: cp/decl.cc:13221
 #, fuzzy, gcc-internal-format
 msgid "cannot declare reference to %q#T, which is not a typedef or a template type argument"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/decl.cc:13174
+#: cp/decl.cc:13301
 #, fuzzy, gcc-internal-format
 msgid "template-id %qD used as a declarator"
 msgstr "%qD ei ole mallifunktio"
 
-#: cp/decl.cc:13200
+#: cp/decl.cc:13327
 #, fuzzy, gcc-internal-format
 msgid "member functions are implicitly friends of their class"
 msgstr "staattinen jäsenfunktio %q#D esitelty tyyppimääreillä"
 
-#: cp/decl.cc:13205
+#: cp/decl.cc:13332
 #, gcc-internal-format
 msgid "extra qualification %<%T::%> on member %qs"
 msgstr "ylimääräinen kvalifiointi %<%T::%> jäsenelle %qs"
 
-#: cp/decl.cc:13235
+#: cp/decl.cc:13362
 #, fuzzy, gcc-internal-format
 msgid "cannot define member function %<%T::%s%> within %qT"
 msgstr "funktiota %<main%> ei voi määrittää avoimeksi"
 
-#: cp/decl.cc:13237
+#: cp/decl.cc:13364
 #, fuzzy, gcc-internal-format
 msgid "cannot declare member function %<%T::%s%> within %qT"
 msgstr "funktiota %<main%> ei voi määrittää avoimeksi"
 
-#: cp/decl.cc:13245
+#: cp/decl.cc:13372
 #, fuzzy, gcc-internal-format
 msgid "cannot declare member %<%T::%s%> within %qT"
 msgstr "funktiota %<main%> ei voi määrittää avoimeksi"
 
-#: cp/decl.cc:13285
+#: cp/decl.cc:13412
 #, fuzzy, gcc-internal-format
 msgid "non-parameter %qs cannot be a parameter pack"
 msgstr "Muuttujatyyppi on UNKNOWN sijoituksessa kohdassa %L"
 
-#: cp/decl.cc:13294
+#: cp/decl.cc:13421
 #, fuzzy, gcc-internal-format
 msgid "data member may not have variably modified type %qT"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: cp/decl.cc:13297
+#: cp/decl.cc:13424
 #, fuzzy, gcc-internal-format
 msgid "parameter may not have variably modified type %qT"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: cp/decl.cc:13308
+#: cp/decl.cc:13435
 #, fuzzy, gcc-internal-format
 msgid "%<explicit%> outside class declaration"
 msgstr "%<virtual%> luokan esittelyn ulkopuolella"
 
-#: cp/decl.cc:13311
+#: cp/decl.cc:13438
 #, fuzzy, gcc-internal-format
 msgid "%<explicit%> in friend declaration"
 msgstr "%<inline%> tyhjässä esittelyssä"
 
-#: cp/decl.cc:13314
+#: cp/decl.cc:13441
 #, fuzzy, gcc-internal-format
 msgid "only declarations of constructors and conversion operators can be %<explicit%>"
 msgstr "vain muodostimen esittely voi olla %<explicit%>"
 
-#: cp/decl.cc:13324
+#: cp/decl.cc:13451
 #, fuzzy, gcc-internal-format
 msgid "non-member %qs cannot be declared %<mutable%>"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: cp/decl.cc:13331
+#: cp/decl.cc:13458
 #, fuzzy, gcc-internal-format
 msgid "non-object member %qs cannot be declared %<mutable%>"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: cp/decl.cc:13337
+#: cp/decl.cc:13464
 #, fuzzy, gcc-internal-format
 msgid "function %qs cannot be declared %<mutable%>"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: cp/decl.cc:13343
+#: cp/decl.cc:13470
 #, fuzzy, gcc-internal-format
 msgid "%<static%> %qs cannot be declared %<mutable%>"
 msgstr "jäsentä %qD ei voida esitellä sekä virtuaaliseksi että staattiseksi"
 
-#: cp/decl.cc:13349
+#: cp/decl.cc:13476
 #, fuzzy, gcc-internal-format
 msgid "%<const%> %qs cannot be declared %<mutable%>"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: cp/decl.cc:13355
+#: cp/decl.cc:13482
 #, fuzzy, gcc-internal-format
 msgid "reference %qs cannot be declared %<mutable%>"
 msgstr "%Jparametri %qD esitelty %<inline%>:ksi"
 
-#: cp/decl.cc:13371
+#: cp/decl.cc:13498
 #, fuzzy, gcc-internal-format
 msgid "typedef may not be a function definition"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/decl.cc:13374
+#: cp/decl.cc:13501
 #, fuzzy, gcc-internal-format
 msgid "typedef may not be a member function definition"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/decl.cc:13400
+#: cp/decl.cc:13527
 #, fuzzy, gcc-internal-format
 msgid "%<auto%> not allowed in alias declaration"
 msgstr "%<[*]%> ei ole esittelyssä"
 
-#: cp/decl.cc:13403
+#: cp/decl.cc:13530
 #, fuzzy, gcc-internal-format
 msgid "typedef declared %<auto%>"
 msgstr "funktion määrittely esitelty %<auto%>:ksi"
 
-#: cp/decl.cc:13408
+#: cp/decl.cc:13535
 #, fuzzy, gcc-internal-format
 msgid "requires-clause on typedef"
 msgstr "<typedef-virhe>"
 
-#: cp/decl.cc:13412
+#: cp/decl.cc:13539
 #, fuzzy, gcc-internal-format
 msgid "typedef name may not be a nested-name-specifier"
 msgstr "Odotettiin käyttöoikeustarkennetta kohdassa %C"
 
-#: cp/decl.cc:13438
+#: cp/decl.cc:13565
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ forbids nested type %qD with same name as enclosing class"
 msgstr "kentällä %q+#D on sama nimi kuin luokalla"
 
-#: cp/decl.cc:13527
+#: cp/decl.cc:13654
 #, fuzzy, gcc-internal-format
 msgid "%<inline%> specified for friend class declaration"
 msgstr "ystäväesittely ei nimeä luokkaa tai funktiota"
 
-#: cp/decl.cc:13535
+#: cp/decl.cc:13662
 #, fuzzy, gcc-internal-format
 msgid "template parameters cannot be friends"
 msgstr "strftime-muotoilut eivät voi muotoilla argumentteja"
 
-#: cp/decl.cc:13537
+#: cp/decl.cc:13664
 #, fuzzy, gcc-internal-format
 msgid "friend declaration requires class-key, i.e. %<friend class %T::%D%>"
 msgstr "luokkamäärittelyä ei voi esitellä ystäväksi"
 
-#: cp/decl.cc:13541
+#: cp/decl.cc:13668
 #, fuzzy, gcc-internal-format
 msgid "friend declaration requires class-key, i.e. %<friend %#T%>"
 msgstr "luokkamäärittelyä ei voi esitellä ystäväksi"
 
-#: cp/decl.cc:13554
+#: cp/decl.cc:13681
 #, gcc-internal-format
 msgid "trying to make class %qT a friend of global scope"
 msgstr ""
 
-#: cp/decl.cc:13574
+#: cp/decl.cc:13701
 #, gcc-internal-format
 msgid "invalid qualifiers on non-member function type"
 msgstr "virheelliset määreet ei-jäsenfunktion tyypissä"
 
-#: cp/decl.cc:13578
+#: cp/decl.cc:13705
 #, fuzzy, gcc-internal-format
 msgid "requires-clause on type-id"
 msgstr "<typedef-virhe>"
 
-#: cp/decl.cc:13588
+#: cp/decl.cc:13715
 #, fuzzy, gcc-internal-format
 msgid "abstract declarator %qT used as declaration"
 msgstr "%q+D esitelty staattisena, edellinen esittely ei-staattinen"
 
-#: cp/decl.cc:13603
+#: cp/decl.cc:13730
 #, fuzzy, gcc-internal-format
 msgid "requires-clause on declaration of non-function type %qT"
 msgstr "virheellinen %qT-tyyppisen viittauksen alustus %qT-tyyppisestä lausekkeesta"
 
-#: cp/decl.cc:13622
+#: cp/decl.cc:13749
 #, fuzzy, gcc-internal-format
 msgid "cannot use %<::%> in parameter declaration"
 msgstr "parametrin %qD esittely, mutta parametria ei ole olemassa"
 
-#: cp/decl.cc:13631 cp/parser.cc:20079
+#: cp/decl.cc:13758 cp/parser.cc:20077
 #, fuzzy, gcc-internal-format
 msgid "cannot declare a parameter with %<decltype(auto)%>"
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: cp/decl.cc:13636
+#: cp/decl.cc:13763
 #, fuzzy, gcc-internal-format
 msgid "class template placeholder %qE not permitted in this context"
 msgstr "parametri esitelty %<auto%>:ksi"
 
-#: cp/decl.cc:13639
+#: cp/decl.cc:13766
 #, fuzzy, gcc-internal-format
 msgid "use %<auto%> for an abbreviated function template"
 msgstr "%qD ei ole funktiomalli"
 
-#: cp/decl.cc:13644
+#: cp/decl.cc:13771
 #, fuzzy, gcc-internal-format
 msgid "%<auto%> parameter not permitted in this context"
 msgstr "parametri esitelty %<auto%>:ksi"
 
-#: cp/decl.cc:13647
+#: cp/decl.cc:13774
 #, gcc-internal-format
 msgid "parameter declared %<auto%>"
 msgstr "parametri esitelty %<auto%>:ksi"
 
-#: cp/decl.cc:13698 cp/parser.cc:3483
+#: cp/decl.cc:13825 cp/parser.cc:3483
 #, gcc-internal-format
 msgid "invalid use of template-name %qE without an argument list"
 msgstr "mallinimen %qE virheellinen käyttö ilman argumenttiluetteloa"
 
-#: cp/decl.cc:13702
+#: cp/decl.cc:13829
 #, fuzzy, gcc-internal-format
 msgid "non-static data member declared with placeholder %qT"
 msgstr "ei-staattinen datajäsen %qE esitelty %<constexpr%>:ksi"
 
-#: cp/decl.cc:13723
+#: cp/decl.cc:13850
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ forbids flexible array member %qs"
 msgstr "ISO C++ kieltää nollan kokoisen taulukon %qD"
 
-#: cp/decl.cc:13726
+#: cp/decl.cc:13853
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ forbids flexible array members"
 msgstr "ISO C90 ei tue joustavia taulukon jäseniä"
 
 #. Something like struct S { int N::j; };
-#: cp/decl.cc:13742
+#: cp/decl.cc:13869
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %<::%>"
 msgstr "%qD:n virheellinen käyttö"
 
-#: cp/decl.cc:13763
+#: cp/decl.cc:13890
 #, fuzzy, gcc-internal-format
 msgid "declaration of function %qD in invalid context"
 msgstr "virheellinen funktioesittely"
 
-#: cp/decl.cc:13773
+#: cp/decl.cc:13900
 #, fuzzy, gcc-internal-format
 msgid "function %qD declared %<virtual%> inside a union"
 msgstr "funktio %qD esitelty virtuaaliseksi unionissa"
 
-#: cp/decl.cc:13783
+#: cp/decl.cc:13910
 #, fuzzy, gcc-internal-format
 msgid "%qD cannot be declared %<virtual%>, since it is always static"
 msgstr "jäsentä %qD ei voida esitellä sekä virtuaaliseksi että staattiseksi"
 
-#: cp/decl.cc:13797
+#: cp/decl.cc:13924
 #, fuzzy, gcc-internal-format
 msgid "expected qualified name in friend declaration for destructor %qD"
 msgstr "%qD esitelty staattisesti sisäkkäin"
 
-#: cp/decl.cc:13804
+#: cp/decl.cc:13931
 #, gcc-internal-format
 msgid "declaration of %qD as member of %qT"
 msgstr "%qD:n esittely %qT:n jäsenenä"
 
-#: cp/decl.cc:13811 cp/decl.cc:13824
+#: cp/decl.cc:13938 cp/decl.cc:13951
 #, fuzzy, gcc-internal-format
 msgid "a destructor cannot be %qs"
 msgstr "hajotin ei voi olla %<constexpr%>"
 
-#: cp/decl.cc:13830
+#: cp/decl.cc:13957
 #, fuzzy, gcc-internal-format
 msgid "expected qualified name in friend declaration for constructor %qD"
 msgstr "%qD esitelty staattisesti sisäkkäin"
 
-#: cp/decl.cc:13839
+#: cp/decl.cc:13966
 #, fuzzy, gcc-internal-format
 msgid "a constructor cannot be %<concept%>"
 msgstr "Kopiomuodostin %qs"
 
-#: cp/decl.cc:13845
+#: cp/decl.cc:13972
 #, fuzzy, gcc-internal-format
 msgid "a concept cannot be a member function"
 msgstr "hajotin ei voi olla staattinen jäsenfunktio"
 
-#: cp/decl.cc:13853 cp/decl.cc:14199
+#: cp/decl.cc:13980 cp/decl.cc:14326
 #, fuzzy, gcc-internal-format
 msgid "%qD cannot be %qs"
 msgstr "tiedostoa %s ei voi avata"
 
-#: cp/decl.cc:13862
+#: cp/decl.cc:13989
 #, fuzzy, gcc-internal-format
 msgid "specialization of variable template %qD declared as function"
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: cp/decl.cc:13865
+#: cp/decl.cc:13992
 #, fuzzy, gcc-internal-format
 msgid "variable template declared here"
 msgstr "%qD esiteltiin täällä"
 
-#: cp/decl.cc:13927
+#: cp/decl.cc:14054
 #, fuzzy, gcc-internal-format
 msgid "field %qD has incomplete type %qT"
 msgstr "%2$qD:n parametrilla %1$P on vaillinainen tyyppi %3$qT"
 
-#: cp/decl.cc:13932
+#: cp/decl.cc:14059
 #, gcc-internal-format
 msgid "name %qT has incomplete type"
 msgstr "nimellä %qT on vaillinainen tyyppi"
 
-#: cp/decl.cc:13952
+#: cp/decl.cc:14079
 #, fuzzy, gcc-internal-format
 msgid "%qE is neither function nor member function; cannot be declared friend"
 msgstr "sisäkkäinen funktio %qs esitelty %<extern%>:ksi"
 
-#: cp/decl.cc:13955
+#: cp/decl.cc:14082
 #, fuzzy, gcc-internal-format
 msgid "unnamed field is neither function nor member function; cannot be declared friend"
 msgstr "sisäkkäinen funktio %qs esitelty %<extern%>:ksi"
 
-#: cp/decl.cc:13970 cp/parser.cc:20646 cp/parser.cc:27044
+#: cp/decl.cc:14097 cp/parser.cc:20644 cp/parser.cc:27042
 #, fuzzy, gcc-internal-format
 msgid "an attribute that appertains to a friend declaration that is not a definition is ignored"
 msgstr "%qE-attribuuttia ei huomioida %qT-tyyppiselle kentälle"
 
-#: cp/decl.cc:14016 cp/decl.cc:14027
+#: cp/decl.cc:14143 cp/decl.cc:14154
 #, fuzzy, gcc-internal-format
 msgid "static data member %qE declared %qs"
 msgstr "ei-staattinen datajäsen %qE esitelty %<constexpr%>:ksi"
 
-#: cp/decl.cc:14021
+#: cp/decl.cc:14148
 #, fuzzy, gcc-internal-format
 msgid "%<constexpr%> static data member %qD must have an initializer"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: cp/decl.cc:14066 cp/decl.cc:14074 cp/decl.cc:14081 cp/decl.cc:14088
+#: cp/decl.cc:14193 cp/decl.cc:14201 cp/decl.cc:14208 cp/decl.cc:14215
 #, fuzzy, gcc-internal-format
 msgid "non-static data member %qE declared %qs"
 msgstr "ei-staattinen datajäsen %qE esitelty %<constexpr%>:ksi"
 
-#: cp/decl.cc:14140
+#: cp/decl.cc:14267
 #, gcc-internal-format
 msgid "storage class %<auto%> invalid for function %qs"
 msgstr "tallennusluokka %<auto%> virheellinen funktiolle %qs"
 
-#: cp/decl.cc:14143
+#: cp/decl.cc:14270
 #, gcc-internal-format
 msgid "storage class %<register%> invalid for function %qs"
 msgstr "tallennusluokka %<register%> virheellinen funktiolle %qs"
 
-#: cp/decl.cc:14149
+#: cp/decl.cc:14276
 #, gcc-internal-format
 msgid "storage class %<__thread%> invalid for function %qs"
 msgstr "tallennusluokka %<__thread%> virheellinen funktiolle %qs"
 
-#: cp/decl.cc:14153
+#: cp/decl.cc:14280
 #, fuzzy, gcc-internal-format
 msgid "storage class %<thread_local%> invalid for function %qs"
 msgstr "tallennusluokka %<__thread%> virheellinen funktiolle %qs"
 
-#: cp/decl.cc:14158
+#: cp/decl.cc:14285
 #, fuzzy, gcc-internal-format
 msgid "virt-specifiers in %qs not allowed outside a class definition"
 msgstr "%Jvanhanmallinen funktiomäärittely"
 
-#: cp/decl.cc:14170
+#: cp/decl.cc:14297
 #, fuzzy, gcc-internal-format
 msgid "%<static%> specifier invalid for function %qs declared out of global scope"
 msgstr "tallennusluokkatarkentimet virheellisiä parameteresittelyissä"
 
-#: cp/decl.cc:14174
+#: cp/decl.cc:14301
 #, fuzzy, gcc-internal-format
 msgid "%<inline%> specifier invalid for function %qs declared out of global scope"
 msgstr "tallennusluokkatarkentimet virheellisiä parameteresittelyissä"
 
-#: cp/decl.cc:14182
+#: cp/decl.cc:14309
 #, gcc-internal-format
 msgid "virtual non-class function %qs"
 msgstr "virtuaalinen ei-luokkafunktio %qs"
 
-#: cp/decl.cc:14189
+#: cp/decl.cc:14316
 #, fuzzy, gcc-internal-format
 msgid "%qs defined in a non-class scope"
 msgstr "virtuaalinen ei-luokkafunktio %qs"
 
-#: cp/decl.cc:14190
+#: cp/decl.cc:14317
 #, fuzzy, gcc-internal-format
 msgid "%qs declared in a non-class scope"
 msgstr "virtuaalinen ei-luokkafunktio %qs"
 
-#: cp/decl.cc:14233
+#: cp/decl.cc:14360
 #, fuzzy, gcc-internal-format
 msgid "cannot declare member function %qD to have static linkage"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: cp/decl.cc:14242
+#: cp/decl.cc:14369
 #, fuzzy, gcc-internal-format
 msgid "cannot declare static function inside another function"
 msgstr "%qE esitelty funktion palauttavana funktiona"
 
-#: cp/decl.cc:14283
+#: cp/decl.cc:14410
 #, gcc-internal-format
 msgid "%<static%> may not be used when defining (as opposed to declaring) a static data member"
 msgstr ""
 
-#: cp/decl.cc:14290
+#: cp/decl.cc:14417
 #, fuzzy, gcc-internal-format
 msgid "static member %qD declared %<register%>"
 msgstr "jäsentä %qD ei voida esitellä sekä virtuaaliseksi että staattiseksi"
 
-#: cp/decl.cc:14296
+#: cp/decl.cc:14423
 #, fuzzy, gcc-internal-format
 msgid "cannot explicitly declare member %q#D to have extern linkage"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: cp/decl.cc:14304
+#: cp/decl.cc:14431
 #, fuzzy, gcc-internal-format
 msgid "declaration of %<constexpr%> variable %qD is not a definition"
 msgstr "%qD käytössä ilman esittelyä ennen sen määrittelyä"
 
-#: cp/decl.cc:14311
+#: cp/decl.cc:14438
 #, fuzzy, gcc-internal-format
 msgid "a variable cannot be declared %<consteval%>"
 msgstr "parametriksi ei voida esitellä %<constexpr%>:ksi"
 
-#: cp/decl.cc:14331
+#: cp/decl.cc:14458
 #, gcc-internal-format
 msgid "declaration of %q#D has no initializer"
 msgstr "%q#D:n esittelyllä ei ole alustimia"
 
-#: cp/decl.cc:14343
+#: cp/decl.cc:14470
 #, gcc-internal-format
 msgid "%qs initialized and declared %<extern%>"
 msgstr "%qs alustettu ja esitelty %<extern%>-avainsanalla"
 
-#: cp/decl.cc:14348
+#: cp/decl.cc:14475
 #, gcc-internal-format
 msgid "%qs has both %<extern%> and initializer"
 msgstr "%qs on sekä %<extern%> että alustin"
 
-#: cp/decl.cc:14528
+#: cp/decl.cc:14655
 #, fuzzy, gcc-internal-format
 msgid "default argument %qE uses %qD"
 msgstr "%qD:n malliargumentti käyttää paikallista tyyppiä %qT"
 
-#: cp/decl.cc:14531
+#: cp/decl.cc:14658
 #, fuzzy, gcc-internal-format
 msgid "default argument %qE uses local variable %qD"
 msgstr "%qD:n malliargumentti käyttää paikallista tyyppiä %qT"
 
-#: cp/decl.cc:14658
+#: cp/decl.cc:14785
 #, fuzzy, gcc-internal-format
 msgid "invalid use of cv-qualified type %qT in parameter declaration"
 msgstr "vaillinaisen tyypin typedef %qD epäkelpo käyttö"
 
-#: cp/decl.cc:14662
+#: cp/decl.cc:14789
 #, fuzzy, gcc-internal-format
 msgid "invalid use of type %<void%> in parameter declaration"
 msgstr "Varoita implisiittisistä funktioesittelyistä"
 
-#: cp/decl.cc:14691
+#: cp/decl.cc:14818
 #, fuzzy, gcc-internal-format
 msgid "%<volatile%>-qualified parameter is deprecated"
 msgstr "virheellinen parametrityyppi %qT"
 
-#: cp/decl.cc:14699
+#: cp/decl.cc:14826
 #, gcc-internal-format
 msgid "parameter %qD invalidly declared method type"
 msgstr "parametri %qD virheellisesti esitelty metodityyppi"
 
-#: cp/decl.cc:14724
+#: cp/decl.cc:14851
 #, fuzzy, gcc-internal-format
 msgid "parameter %qD includes pointer to array of unknown bound %qT"
 msgstr "virheellinen tyyppimuunnos funktiotyyppiin %qT"
 
-#: cp/decl.cc:14726
+#: cp/decl.cc:14853
 #, fuzzy, gcc-internal-format
 msgid "parameter %qD includes reference to array of unknown bound %qT"
 msgstr "virheellinen tyyppimuunnos funktiotyyppiin %qT"
 
-#: cp/decl.cc:14987
+#: cp/decl.cc:15114
 #, gcc-internal-format
 msgid "invalid constructor; you probably meant %<%T (const %T&)%>"
 msgstr "virheellinen muodostin; tarkoitit todennäköisesti %<%T (const %T&)%>"
 
-#: cp/decl.cc:15066
+#: cp/decl.cc:15193
 #, fuzzy, gcc-internal-format
 msgid "%qD may not be declared within a namespace"
 msgstr "%qD esitelty ei-parametrina"
 
-#: cp/decl.cc:15073
+#: cp/decl.cc:15200
 #, fuzzy, gcc-internal-format
 msgid "%qD may not be declared as static"
 msgstr "%q+D esitelty ystävänä"
 
-#: cp/decl.cc:15103
+#: cp/decl.cc:15230
 #, fuzzy, gcc-internal-format
 msgid "%qD must be a non-static member function"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: cp/decl.cc:15109
+#: cp/decl.cc:15236
 #, fuzzy, gcc-internal-format
 msgid "%qD must be either a non-static member function or a non-member function"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: cp/decl.cc:15119
+#: cp/decl.cc:15246
 #, fuzzy, gcc-internal-format
 msgid "%qD must have an argument of class or enumerated type"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
 #. 13.4.0.3
-#: cp/decl.cc:15145
+#: cp/decl.cc:15272
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ prohibits overloading %<operator ?:%>"
 msgstr "ISO C++ kieltää ?:-operaattorin ylikuormituksen"
 
-#. Variadic.
-#: cp/decl.cc:15156
+#: cp/decl.cc:15286
 #, gcc-internal-format
 msgid "%qD must not have variable number of arguments"
 msgstr "%qD:lla ei saa olla vaihtuvaa määrää argumentteja"
 
-#: cp/decl.cc:15182
+#: cp/decl.cc:15312
 #, fuzzy, gcc-internal-format
 msgid "%qD must have either zero or one argument"
 msgstr "%qD:n on otettava joko nolla tai yksi argumenttia"
 
-#: cp/decl.cc:15183
+#: cp/decl.cc:15313
 #, fuzzy, gcc-internal-format
 msgid "%qD must have either one or two arguments"
 msgstr "%qD:n on otettava joko yksi tai kaksi argumenttia"
 
-#: cp/decl.cc:15195
+#: cp/decl.cc:15325
 #, fuzzy, gcc-internal-format
 msgid "postfix %qD must have %<int%> as its argument"
 msgstr "Kääntäjänsisäisellä ”%s”-funktiolla kohdassa %L on oltava vähintään kaksi argumenttia"
 
-#: cp/decl.cc:15196
+#: cp/decl.cc:15326
 #, fuzzy, gcc-internal-format
 msgid "postfix %qD must have %<int%> as its second argument"
 msgstr "Kääntäjänsisäisellä ”%s”-funktiolla kohdassa %L on oltava vähintään kaksi argumenttia"
 
-#: cp/decl.cc:15207
+#: cp/decl.cc:15337
 #, fuzzy, gcc-internal-format
 msgid "%qD must have no arguments"
 msgstr "%qD:n on otettava tasan kaksi argumenttia"
 
-#: cp/decl.cc:15208 cp/decl.cc:15220
+#: cp/decl.cc:15338 cp/decl.cc:15350
 #, fuzzy, gcc-internal-format
 msgid "%qD must have exactly one argument"
 msgstr "%qD:n on otettava tasan yksi argumentti"
 
-#: cp/decl.cc:15221
+#: cp/decl.cc:15351
 #, fuzzy, gcc-internal-format
 msgid "%qD must have exactly two arguments"
 msgstr "%qD:n on otettava tasan kaksi argumenttia"
 
-#: cp/decl.cc:15235
+#: cp/decl.cc:15366
 #, gcc-internal-format
 msgid "%qD cannot have default arguments"
 msgstr "%qD:lla ei voi olla oletusargumentteja"
 
-#: cp/decl.cc:15259
+#: cp/decl.cc:15390
 #, fuzzy, gcc-internal-format
 msgid "converting %qT to %<void%> will never use a type conversion operator"
 msgstr "muunnnos void-tyypiksi ei koskaan käytä tyyppimuunnosoperaattoria"
 
-#: cp/decl.cc:15266
+#: cp/decl.cc:15397
 #, fuzzy, gcc-internal-format
 msgid "converting %qT to a reference to the same type will never use a type conversion operator"
 msgstr "muunnnos void-tyypiksi ei koskaan käytä tyyppimuunnosoperaattoria"
 
-#: cp/decl.cc:15268
+#: cp/decl.cc:15399
 #, fuzzy, gcc-internal-format
 msgid "converting %qT to the same type will never use a type conversion operator"
 msgstr "muunnnos void-tyypiksi ei koskaan käytä tyyppimuunnosoperaattoria"
 
-#: cp/decl.cc:15277
+#: cp/decl.cc:15408
 #, fuzzy, gcc-internal-format
 msgid "converting %qT to a reference to a base class %qT will never use a type conversion operator"
 msgstr "muunnnos void-tyypiksi ei koskaan käytä tyyppimuunnosoperaattoria"
 
-#: cp/decl.cc:15279
+#: cp/decl.cc:15410
 #, fuzzy, gcc-internal-format
 msgid "converting %qT to a base class %qT will never use a type conversion operator"
 msgstr "muunnnos void-tyypiksi ei koskaan käytä tyyppimuunnosoperaattoria"
 
-#: cp/decl.cc:15295
+#: cp/decl.cc:15426
 #, fuzzy, gcc-internal-format
 msgid "user-defined %qD always evaluates both arguments"
 msgstr "vertailu ”etumerkitön lauseke >= 0” on aina tosi"
 
-#: cp/decl.cc:15314
+#: cp/decl.cc:15445
 #, fuzzy, gcc-internal-format
 msgid "prefix %qD should return %qT"
 msgstr "<paluuarvo> "
 
-#: cp/decl.cc:15321
+#: cp/decl.cc:15452
 #, fuzzy, gcc-internal-format
 msgid "postfix %qD should return %qT"
 msgstr "<paluuarvo> "
 
-#: cp/decl.cc:15333
+#: cp/decl.cc:15464
 #, fuzzy, gcc-internal-format
 msgid "%qD should return by value"
 msgstr "<paluuarvo> "
 
-#: cp/decl.cc:15388
+#: cp/decl.cc:15519
 #, fuzzy, gcc-internal-format
 msgid "using template type parameter %qT after %qs"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: cp/decl.cc:15411
+#: cp/decl.cc:15542
 #, fuzzy, gcc-internal-format
 msgid "using alias template specialization %qT after %qs"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: cp/decl.cc:15414
+#: cp/decl.cc:15545
 #, fuzzy, gcc-internal-format
 msgid "using typedef-name %qD after %qs"
 msgstr "tiedostonimi puuttuu %qs:n jälkeen"
 
-#: cp/decl.cc:15416
+#: cp/decl.cc:15547
 #, gcc-internal-format
 msgid "%qD has a previous declaration here"
 msgstr "%q+D:lla on edellinen esittely täällä"
 
-#: cp/decl.cc:15424
+#: cp/decl.cc:15555
 #, fuzzy, gcc-internal-format
 msgid "%qT referred to as %qs"
 msgstr "lueteltu tyyppi määritelty täällä"
 
-#: cp/decl.cc:15425 cp/decl.cc:15432
+#: cp/decl.cc:15556 cp/decl.cc:15563
 #, fuzzy, gcc-internal-format
 msgid "%qT has a previous declaration here"
 msgstr "%q+D:lla on edellinen esittely täällä"
 
-#: cp/decl.cc:15431
+#: cp/decl.cc:15562
 #, fuzzy, gcc-internal-format
 msgid "%qT referred to as enum"
 msgstr "lueteltu tyyppi määritelty täällä"
@@ -53690,111 +53891,111 @@ msgstr "lueteltu tyyppi määritelty täällä"
 #. void f(class C);            // No template header here
 #.
 #. then the required template argument is missing.
-#: cp/decl.cc:15446
+#: cp/decl.cc:15577
 #, fuzzy, gcc-internal-format
 msgid "template argument required for %<%s %T%>"
 msgstr "jäsennysvirhe malliargumenttien luettelossa"
 
-#: cp/decl.cc:15489 cp/name-lookup.cc:5705 cp/name-lookup.cc:5837
-#: cp/parser.cc:6933 cp/parser.cc:30632
+#: cp/decl.cc:15620 cp/name-lookup.cc:5731 cp/name-lookup.cc:5863
+#: cp/parser.cc:6931 cp/parser.cc:30630
 #, gcc-internal-format
 msgid "reference to %qD is ambiguous"
 msgstr "%qD-viittaus on moniselitteinen"
 
-#: cp/decl.cc:15498
+#: cp/decl.cc:15629
 #, fuzzy, gcc-internal-format
 #| msgid "function template %qD redeclared as a class template"
 msgid "class template %qD redeclared as non-template"
 msgstr "funktiomalli %qD esitelty uudelleen luokkamallina"
 
-#: cp/decl.cc:15520 cp/name-lookup.cc:5415
+#: cp/decl.cc:15651 cp/name-lookup.cc:5421
 #, gcc-internal-format
 msgid "%qD has the same name as the class in which it is declared"
 msgstr "%qD:llä on sama nimi kuin luokalla, jossa se on esitelty"
 
-#: cp/decl.cc:15548 cp/friend.cc:315 cp/parser.cc:3308 cp/parser.cc:6638
-#: cp/pt.cc:9827
+#: cp/decl.cc:15679 cp/friend.cc:315 cp/parser.cc:3308 cp/parser.cc:6636
+#: cp/pt.cc:9848
 #, gcc-internal-format
 msgid "%qT is not a template"
 msgstr "%qT ei ole malli"
 
-#: cp/decl.cc:15553
+#: cp/decl.cc:15684
 #, gcc-internal-format
 msgid "perhaps you want to explicitly add %<%T::%>"
 msgstr ""
 
-#: cp/decl.cc:15658
+#: cp/decl.cc:15789
 #, fuzzy, gcc-internal-format
 msgid "use of enum %q#D without previous declaration"
 msgstr "on ristiriidassa %q+#D:n edellisen esittelyn kanssa"
 
-#: cp/decl.cc:15689
+#: cp/decl.cc:15820
 #, fuzzy, gcc-internal-format
 msgid "redeclaration of %qT as a non-template"
 msgstr "C++:n sisäinen tietotyyppi %qT määritelty uudelleen"
 
-#: cp/decl.cc:15700 cp/semantics.cc:3458
+#: cp/decl.cc:15831 cp/semantics.cc:3463
 #, fuzzy, gcc-internal-format
 msgid "cannot declare %qD in a different module"
 msgstr "bittikentän %qD osoitetta ei voi ottaa"
 
-#: cp/decl.cc:15816
+#: cp/decl.cc:15947
 #, fuzzy, gcc-internal-format
 msgid "derived union %qT invalid"
 msgstr "useita kenttiä unionissa %qT alustettu"
 
-#: cp/decl.cc:15823
+#: cp/decl.cc:15954
 #, gcc-internal-format
 msgid "%qT defined with multiple direct bases"
 msgstr "%qT määritelty monella suoralla kannoalla"
 
-#: cp/decl.cc:15834
+#: cp/decl.cc:15965
 #, gcc-internal-format
 msgid "%qT defined with direct virtual base"
 msgstr "%qT määritelty suoralla virtuaalisella kannalla"
 
-#: cp/decl.cc:15859
+#: cp/decl.cc:15990
 #, fuzzy, gcc-internal-format
 msgid "base type %qT fails to be a struct or class type"
 msgstr "%qT ei ole luokka-, struct- eikä unionityyppi"
 
-#: cp/decl.cc:15889
+#: cp/decl.cc:16020
 #, gcc-internal-format
 msgid "recursive type %qT undefined"
 msgstr "rekursiivinen tyyppi %qT määrittelemätön"
 
-#: cp/decl.cc:15891
+#: cp/decl.cc:16022
 #, gcc-internal-format
 msgid "duplicate base type %qT invalid"
 msgstr "perustyypin %qT kaksoiskappale virheellinen"
 
-#: cp/decl.cc:16036
+#: cp/decl.cc:16167
 #, fuzzy, gcc-internal-format
 msgid "scoped/unscoped mismatch in enum %q#T"
 msgstr "tyyppitäsmäämättömyys taulukkoviitteessä"
 
-#: cp/decl.cc:16039 cp/decl.cc:16047 cp/decl.cc:16057 cp/decl.cc:16651
-#: cp/parser.cc:20994
+#: cp/decl.cc:16170 cp/decl.cc:16178 cp/decl.cc:16188 cp/decl.cc:16784
+#: cp/parser.cc:20992
 #, gcc-internal-format
 msgid "previous definition here"
 msgstr "edellinen määrittely täällä"
 
-#: cp/decl.cc:16044
+#: cp/decl.cc:16175
 #, fuzzy, gcc-internal-format
 msgid "underlying type mismatch in enum %q#T"
 msgstr "tyyppitäsmäämättömyys taulukkoviitteessä"
 
-#: cp/decl.cc:16054
+#: cp/decl.cc:16185
 #, fuzzy, gcc-internal-format
 msgid "different underlying type in enum %q#T"
 msgstr "tyyppitäsmäämättömyys taulukkoviitteessä"
 
-#: cp/decl.cc:16065
+#: cp/decl.cc:16196
 #, fuzzy, gcc-internal-format
 msgid "cannot define %qD in different module"
 msgstr "%q+D:n virheellinen uudelleenesittely"
 
-#: cp/decl.cc:16139
+#: cp/decl.cc:16270
 #, fuzzy, gcc-internal-format
 msgid "underlying type %qT of %qT must be an integral type"
 msgstr "cppchar_t:n on oltava etumerkitön tyyppi"
@@ -53803,77 +54004,77 @@ msgstr "cppchar_t:n on oltava etumerkitön tyyppi"
 #.
 #. IF no integral type can represent all the enumerator values, the
 #. enumeration is ill-formed.
-#: cp/decl.cc:16286
+#: cp/decl.cc:16417
 #, gcc-internal-format
 msgid "no integral type can represent all of the enumerator values for %qT"
 msgstr ""
 
-#: cp/decl.cc:16461
+#: cp/decl.cc:16592
 #, fuzzy, gcc-internal-format
 msgid "enumerator value for %qD must have integral or unscoped enumeration type"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: cp/decl.cc:16471
+#: cp/decl.cc:16602
 #, fuzzy, gcc-internal-format
 msgid "enumerator value for %qD is not an integer constant"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: cp/decl.cc:16520
+#: cp/decl.cc:16651
 #, fuzzy, gcc-internal-format
 msgid "incremented enumerator value is too large for %<unsigned long%>"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: cp/decl.cc:16521
+#: cp/decl.cc:16652
 #, fuzzy, gcc-internal-format
 msgid "incremented enumerator value is too large for %<long%>"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: cp/decl.cc:16532
+#: cp/decl.cc:16663
 #, fuzzy, gcc-internal-format
 msgid "overflow in enumeration values at %qD"
 msgstr "ylivuoto luetellun tyypin arvoissa"
 
-#: cp/decl.cc:16552
+#: cp/decl.cc:16683
 #, fuzzy, gcc-internal-format
 msgid "enumerator value %qE is outside the range of underlying type %qT"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: cp/decl.cc:16649 cp/parser.cc:20992
+#: cp/decl.cc:16782 cp/parser.cc:20990
 #, fuzzy, gcc-internal-format
 msgid "multiple definition of %q#T"
 msgstr "edellinen %q+#T:n määrittely"
 
-#: cp/decl.cc:16723
+#: cp/decl.cc:16856
 #, gcc-internal-format
 msgid "return type %q#T is incomplete"
 msgstr "paluutyyppi %q#T on vaillinainen"
 
-#: cp/decl.cc:16883 cp/typeck.cc:10601
+#: cp/decl.cc:17016 cp/typeck.cc:10615
 #, fuzzy, gcc-internal-format
 msgid "%<operator=%> should return a reference to %<*this%>"
 msgstr "%<operator delete%>:n on palautettava tyyppi %qT"
 
-#: cp/decl.cc:17733
+#: cp/decl.cc:17866
 #, fuzzy, gcc-internal-format
 msgid "no return statements in function returning %qT"
 msgstr "return-lause ilman arvoa funktiossa, jonka paluutyyppi on %qT"
 
-#: cp/decl.cc:17735 cp/typeck.cc:10481
+#: cp/decl.cc:17868 cp/typeck.cc:10495
 #, fuzzy, gcc-internal-format
 msgid "only plain %<auto%> return type can be deduced to %<void%>"
 msgstr "funktion paluuarvojen tyypit eivät ole yhteensopivia %<volatile%>:n takia"
 
-#: cp/decl.cc:17797
+#: cp/decl.cc:17930
 #, fuzzy, gcc-internal-format
 msgid "no return statement in %<constexpr%> function returning non-void"
 msgstr "ei palautuslausetta funktiossa, joka palauttaa ei-voidin"
 
-#: cp/decl.cc:17979
+#: cp/decl.cc:18112
 #, fuzzy, gcc-internal-format
 msgid "%qD is already defined in class %qT"
 msgstr "%qD on jo määritelty"
 
-#: cp/decl.cc:18370
+#: cp/decl.cc:18503
 #, fuzzy, gcc-internal-format
 msgid "use of %qD before deduction of %<auto%>"
 msgstr "%q+D:n oletustyyppi on %<int%>"
@@ -53928,7 +54129,7 @@ msgstr ""
 msgid "deleting %qT is undefined"
 msgstr "rekursiivinen tyyppi %qT määrittelemätön"
 
-#: cp/decl2.cc:672 cp/pt.cc:5877
+#: cp/decl2.cc:672 cp/pt.cc:5879
 #, fuzzy, gcc-internal-format
 msgid "template declaration of %q#D"
 msgstr "malliesittelylle %q+D"
@@ -53938,7 +54139,7 @@ msgstr "malliesittelylle %q+D"
 msgid "template parameter lists provided don%'t match the template parameters of %qD"
 msgstr "tyyppimuunnettu argumentti %qD ei sovi prototyyppiin"
 
-#: cp/decl2.cc:727 cp/pt.cc:5845
+#: cp/decl2.cc:727 cp/pt.cc:5847
 #, fuzzy, gcc-internal-format
 msgid "destructor %qD declared as member template"
 msgstr "jäsentä %qD ei voida esitellä sekä virtuaaliseksi että staattiseksi"
@@ -54043,59 +54244,59 @@ msgstr "bittikentän %qD osoitetta ei voi ottaa"
 msgid "width of bit-field %qD has non-integral type %qT"
 msgstr "bittikentän %qs leveys ei ole kokonaislukuvakio"
 
-#: cp/decl2.cc:1536
+#: cp/decl2.cc:1540
 #, fuzzy, gcc-internal-format
 msgid "incomplete type %qT is not mappable"
 msgstr "luokalla %qT ei ole %qD-nimistä kenttää"
 
-#: cp/decl2.cc:1552
+#: cp/decl2.cc:1556
 #, fuzzy, gcc-internal-format
 msgid "static field %qD is not mappable"
 msgstr "polku puuttuu %qs:n jälkeen"
 
-#: cp/decl2.cc:1641
+#: cp/decl2.cc:1645
 #, fuzzy, gcc-internal-format
 msgid "%q+D static data member inside of declare target directive"
 msgstr "staattinen jäsenfunktio %q#D esitelty tyyppimääreillä"
 
-#: cp/decl2.cc:1680 cp/name-lookup.cc:8520
+#: cp/decl2.cc:1684 cp/name-lookup.cc:8546
 #, fuzzy, gcc-internal-format
 #| msgid "%<this%> may not be used in this context"
 msgid "%<omp::%E%> not allowed to be specified in this context"
 msgstr "<this%>-sanaa ei voi käyttää tässä yhteydessä"
 
-#: cp/decl2.cc:1749
+#: cp/decl2.cc:1753
 #, fuzzy, gcc-internal-format
 msgid "anonymous struct not inside named type"
 msgstr "anonyymillä structilla ei voi olla funktiojäseniä"
 
 # semi-fuzzy
-#: cp/decl2.cc:1765
+#: cp/decl2.cc:1769
 #, fuzzy, gcc-internal-format
 msgid "%q#D invalid; an anonymous union can only have non-static data members"
 msgstr "ei-staattista datajäsentä %q+D käytetty virheellisesti"
 
-#: cp/decl2.cc:1772
+#: cp/decl2.cc:1776
 #, fuzzy, gcc-internal-format
 msgid "private member %q#D in anonymous union"
 msgstr "jäsentä %q+D käytetty virheellisesti staattisessa jäsenfunktiossa"
 
-#: cp/decl2.cc:1775
+#: cp/decl2.cc:1779
 #, fuzzy, gcc-internal-format
 msgid "protected member %q#D in anonymous union"
 msgstr "jäsentä %q+D käytetty virheellisesti staattisessa jäsenfunktiossa"
 
-#: cp/decl2.cc:1840
+#: cp/decl2.cc:1844
 #, gcc-internal-format
 msgid "namespace-scope anonymous aggregates must be static"
 msgstr ""
 
-#: cp/decl2.cc:1849
+#: cp/decl2.cc:1853
 #, fuzzy, gcc-internal-format
 msgid "anonymous union with no members"
 msgstr "unionilla ei ole jäseniä"
 
-#: cp/decl2.cc:1886
+#: cp/decl2.cc:1890
 #, gcc-internal-format
 msgid "%<operator new%> must return type %qT"
 msgstr "%<operator new%>:n on palautettava tyyppi %qT"
@@ -54104,82 +54305,82 @@ msgstr "%<operator new%>:n on palautettava tyyppi %qT"
 #.
 #. The first parameter shall not have an associated default
 #. argument.
-#: cp/decl2.cc:1898
+#: cp/decl2.cc:1902
 #, gcc-internal-format
 msgid "the first parameter of %<operator new%> cannot have a default argument"
 msgstr "%<operator new%>:n ensimmäisellä parametrilla ei voi olla oletusargumenttia"
 
-#: cp/decl2.cc:1914
+#: cp/decl2.cc:1918
 #, gcc-internal-format
 msgid "%<operator new%> takes type %<size_t%> (%qT) as first parameter"
 msgstr "%<operator new%>:n ensimmäisen parametrin tyypin on oltava %<size_t%> (%qT)"
 
-#: cp/decl2.cc:1944
+#: cp/decl2.cc:1948
 #, gcc-internal-format
 msgid "%<operator delete%> must return type %qT"
 msgstr "%<operator delete%>:n on palautettava tyyppi %qT"
 
-#: cp/decl2.cc:1959
+#: cp/decl2.cc:1963
 #, fuzzy, gcc-internal-format
 msgid "destroying %<operator delete%> must be a member function"
 msgstr "hajotin ei voi olla staattinen jäsenfunktio"
 
-#: cp/decl2.cc:1962
+#: cp/decl2.cc:1966
 #, fuzzy, gcc-internal-format
 msgid "%<operator delete[]%> cannot be a destroying delete"
 msgstr "operator delete[] ei voi olla tuhoava delete"
 
-#: cp/decl2.cc:1964
+#: cp/decl2.cc:1968
 #, fuzzy, gcc-internal-format
 msgid "destroying %<operator delete%> must be a usual deallocation function"
 msgstr "hajotin ei voi olla staattinen jäsenfunktio"
 
-#: cp/decl2.cc:1974
+#: cp/decl2.cc:1978
 #, gcc-internal-format
 msgid "%<operator delete%> takes type %qT as first parameter"
 msgstr "%<operator delete%>:n ensimmäisen parametrin tyypin on oltava %qT"
 
-#: cp/decl2.cc:2955
+#: cp/decl2.cc:2959
 #, gcc-internal-format
 msgid "%qT has a field %qD whose type has no linkage"
 msgstr ""
 
-#: cp/decl2.cc:2959
+#: cp/decl2.cc:2963
 #, gcc-internal-format
 msgid "%qT has a field %qD whose type depends on the type %qT which has no linkage"
 msgstr ""
 
-#: cp/decl2.cc:2964
+#: cp/decl2.cc:2968
 #, gcc-internal-format
 msgid "%qT has a field %qD whose type uses the anonymous namespace"
 msgstr ""
 
-#: cp/decl2.cc:2972
+#: cp/decl2.cc:2976
 #, fuzzy, gcc-internal-format
 msgid "%qT declared with greater visibility than the type of its field %qD"
 msgstr "%qD esitelty uudelleen eri näkyvyydellä"
 
-#: cp/decl2.cc:2990
+#: cp/decl2.cc:2994
 #, gcc-internal-format
 msgid "%qT has a base %qT whose type has no linkage"
 msgstr ""
 
-#: cp/decl2.cc:2994
+#: cp/decl2.cc:2998
 #, gcc-internal-format
 msgid "%qT has a base %qT whose type depends on the type %qT which has no linkage"
 msgstr ""
 
-#: cp/decl2.cc:2999
+#: cp/decl2.cc:3003
 #, gcc-internal-format
 msgid "%qT has a base %qT whose type uses the anonymous namespace"
 msgstr ""
 
-#: cp/decl2.cc:3006
+#: cp/decl2.cc:3010
 #, fuzzy, gcc-internal-format
 msgid "%qT declared with greater visibility than its base %qT"
 msgstr "%qD esitelty uudelleen eri näkyvyydellä"
 
-#: cp/decl2.cc:4675
+#: cp/decl2.cc:4679
 #, fuzzy, gcc-internal-format
 msgid "%q#D, declared using unnamed type, is used but never defined"
 msgstr "%J%qF käytetty, mutta ei määritelty"
@@ -54188,99 +54389,99 @@ msgstr "%J%qF käytetty, mutta ei määritelty"
 #. no linkage can only be used to declare extern "C"
 #. entities.  Since it's not always an error in the
 #. ISO C++ 90 Standard, we only issue a warning.
-#: cp/decl2.cc:4684
+#: cp/decl2.cc:4688
 #, fuzzy, gcc-internal-format
 msgid "unnamed type with no linkage used to declare variable %q#D with linkage"
 msgstr "%J%qD esitelty uudelleen ilman linkitystä"
 
-#: cp/decl2.cc:4688
+#: cp/decl2.cc:4692
 #, fuzzy, gcc-internal-format
 msgid "unnamed type with no linkage used to declare function %q#D with linkage"
 msgstr "%J%qD esitelty uudelleen ilman linkitystä"
 
-#: cp/decl2.cc:4692
+#: cp/decl2.cc:4696
 #, gcc-internal-format
 msgid "%q#D does not refer to the unqualified type, so it is not used for linkage"
 msgstr ""
 
-#: cp/decl2.cc:4700
+#: cp/decl2.cc:4704
 #, fuzzy, gcc-internal-format
 msgid "%q#D, declared using local type %qT, is used but never defined"
 msgstr "%J%qF käytetty, mutta ei määritelty"
 
-#: cp/decl2.cc:4704
+#: cp/decl2.cc:4708
 #, fuzzy, gcc-internal-format
 msgid "type %qT with no linkage used to declare variable %q#D with linkage"
 msgstr "%J%qD esitelty uudelleen ilman linkitystä"
 
-#: cp/decl2.cc:4707
+#: cp/decl2.cc:4711
 #, fuzzy, gcc-internal-format
 msgid "type %qT with no linkage used to declare function %q#D with linkage"
 msgstr "%J%qD esitelty uudelleen ilman linkitystä"
 
-#: cp/decl2.cc:4895
+#: cp/decl2.cc:4899
 #, fuzzy, gcc-internal-format
 msgid "mangling of %q#D as %qE conflicts with a previous mangle"
 msgstr "%q+D:n data-alue on ristiriidassa edellisen esittelyn kanssa"
 
-#: cp/decl2.cc:4898
+#: cp/decl2.cc:4902
 #, fuzzy, gcc-internal-format
 msgid "previous mangling %q#D"
 msgstr "edellinen esittely %q+D"
 
-#: cp/decl2.cc:4900
+#: cp/decl2.cc:4904
 #, gcc-internal-format
 msgid "a later %<-fabi-version=%> (or =0) avoids this error with a change in mangling"
 msgstr ""
 
-#: cp/decl2.cc:4972 cp/decl2.cc:4975
+#: cp/decl2.cc:4976 cp/decl2.cc:4979
 #, gcc-internal-format
 msgid "the program should also define %qD"
 msgstr ""
 
-#: cp/decl2.cc:5328
+#: cp/decl2.cc:5332
 #, fuzzy, gcc-internal-format
 msgid "inline function %qD used but never defined"
 msgstr "sisäkkäinen funktio %qs esitelty %<extern%>:ksi"
 
-#: cp/decl2.cc:5531
+#: cp/decl2.cc:5535
 #, fuzzy, gcc-internal-format
 msgid "default argument missing for parameter %P of %q#D"
 msgstr "oletusargumentti annettu %2$q#D:n parametrille %1$d"
 
-#: cp/decl2.cc:5536
+#: cp/decl2.cc:5540
 #, fuzzy, gcc-internal-format
 msgid "...following parameter %P which has a default argument"
 msgstr "%<operator new%>:n ensimmäisellä parametrilla ei voi olla oletusargumenttia"
 
-#: cp/decl2.cc:5669
+#: cp/decl2.cc:5673
 #, gcc-internal-format
 msgid "implicitly-declared %qD is deprecated"
 msgstr "implisiittisesti esitelty %qD on vanhentunut"
 
-#: cp/decl2.cc:5673
+#: cp/decl2.cc:5677
 #, gcc-internal-format
 msgid "because %qT has user-provided %qD"
 msgstr ""
 
 #. We mark a lambda conversion op as deleted if we can't
 #. generate it properly; see maybe_add_lambda_conv_op.
-#: cp/decl2.cc:5783
+#: cp/decl2.cc:5813
 #, fuzzy, gcc-internal-format
 msgid "converting lambda that uses %<...%> to function pointer"
 msgstr "NULLin muunnos epäosoitintyypiksi"
 
-#: cp/decl2.cc:5786
+#: cp/decl2.cc:5816
 #, fuzzy, gcc-internal-format
 msgid "use of deleted function %qD"
 msgstr "poistettu funktio %q+D"
 
-#: cp/decl2.cc:5840
+#: cp/decl2.cc:5870
 #, fuzzy, gcc-internal-format
 msgid "use of function %qD with unsatisfied constraints"
 msgstr "%q+D:n virheellinen uudelleenesittely"
 
-#: cp/decl2.cc:5872
+#: cp/decl2.cc:5902
 #, gcc-internal-format
 msgid "use of built-in parameter pack %qD outside of a template"
 msgstr ""
@@ -54385,7 +54586,7 @@ msgstr "palautettu viittaus paikalliseen muuttujaan %q+D"
 msgid "%qD is not a member of %qT; did you mean %qs?"
 msgstr "tyypillä %qT ei ole %qE-nimistä jäsentä"
 
-#: cp/error.cc:4601 cp/typeck.cc:2721
+#: cp/error.cc:4601 cp/typeck.cc:2730
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a member of %qT"
 msgstr "%qD:n esittely %qT:n jäsenenä"
@@ -54395,7 +54596,7 @@ msgstr "%qD:n esittely %qT:n jäsenenä"
 msgid "%qD is not a member of %qD; did you mean %qs?"
 msgstr "tyypillä %qT ei ole %qE-nimistä jäsentä"
 
-#: cp/error.cc:4627 cp/typeck.cc:3314
+#: cp/error.cc:4627 cp/typeck.cc:3323
 #, gcc-internal-format
 msgid "%qD is not a member of %qD"
 msgstr "%qD ei ole %qD:n jäsen"
@@ -54621,18 +54822,18 @@ msgstr "%qD tulee alustaa jäsenten alustuslistassa"
 msgid "invalid initializer for array member %q#D"
 msgstr "virheellinen alustin taulukon jäsenelle %q#D"
 
-#: cp/init.cc:1105 cp/init.cc:1131 cp/init.cc:2717 cp/method.cc:2366
+#: cp/init.cc:1105 cp/init.cc:1131 cp/init.cc:2727 cp/method.cc:2366
 #, fuzzy, gcc-internal-format
 msgid "uninitialized const member in %q#T"
 msgstr "alustamaton const-jäsen %qD"
 
-#: cp/init.cc:1107 cp/init.cc:1125 cp/init.cc:1133 cp/init.cc:2702
-#: cp/init.cc:2730 cp/method.cc:2369 cp/method.cc:2380
+#: cp/init.cc:1107 cp/init.cc:1125 cp/init.cc:1133 cp/init.cc:2712
+#: cp/init.cc:2740 cp/method.cc:2369 cp/method.cc:2380
 #, fuzzy, gcc-internal-format
 msgid "%q#D should be initialized"
 msgstr "%q+D alustetaan jäljempänä kuin"
 
-#: cp/init.cc:1123 cp/init.cc:2689 cp/method.cc:2377
+#: cp/init.cc:1123 cp/init.cc:2699 cp/method.cc:2377
 #, fuzzy, gcc-internal-format
 msgid "uninitialized reference member in %q#T"
 msgstr "jäsen %qD on alustamaton viittaus"
@@ -54722,142 +54923,142 @@ msgstr "perustyypin %qT kaksoiskappale virheellinen"
 msgid "type %qT is not a direct base of %qT"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/init.cc:2003 cp/init.cc:4778 cp/typeck2.cc:1349
+#: cp/init.cc:2003 cp/init.cc:4786 cp/typeck2.cc:1349
 #, fuzzy, gcc-internal-format
 msgid "array must be initialized with a brace-enclosed initializer"
 msgstr "skalaarialustimen ympärillä on aaltosulkeet"
 
-#: cp/init.cc:2328 cp/semantics.cc:3734
+#: cp/init.cc:2324 cp/semantics.cc:3740
 #, gcc-internal-format
 msgid "%qT is not a class type"
 msgstr "%qT ei ole luokkatyyppi"
 
-#: cp/init.cc:2372
+#: cp/init.cc:2382
 #, fuzzy, gcc-internal-format
 msgid "incomplete type %qT does not have member %qD"
 msgstr "luokalla %qT ei ole %qD-nimistä kenttää"
 
-#: cp/init.cc:2386
+#: cp/init.cc:2396
 #, gcc-internal-format
 msgid "invalid pointer to bit-field %qD"
 msgstr "virheellinen osoitin bittikenttään %qD"
 
-#: cp/init.cc:2472 cp/typeck.cc:2199
+#: cp/init.cc:2482 cp/typeck.cc:2208
 #, fuzzy, gcc-internal-format
 msgid "invalid use of non-static member function %qD"
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: cp/init.cc:2479 cp/semantics.cc:2148
+#: cp/init.cc:2489 cp/semantics.cc:2148
 #, fuzzy, gcc-internal-format
 msgid "invalid use of non-static data member %qD"
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: cp/init.cc:2686
+#: cp/init.cc:2696
 #, fuzzy, gcc-internal-format
 msgid "uninitialized reference member in %q#T using %<new%> without new-initializer"
 msgstr "alustamaton const-jäsen %qD"
 
-#: cp/init.cc:2694
+#: cp/init.cc:2704
 #, fuzzy, gcc-internal-format
 msgid "uninitialized reference member in base %q#T of %q#T using %<new%> without new-initializer"
 msgstr "alustamaton const-jäsen %qD"
 
-#: cp/init.cc:2698
+#: cp/init.cc:2708
 #, fuzzy, gcc-internal-format
 msgid "uninitialized reference member in base %q#T of %q#T"
 msgstr "alustamaton const-jäsen %qD"
 
-#: cp/init.cc:2714
+#: cp/init.cc:2724
 #, fuzzy, gcc-internal-format
 msgid "uninitialized const member in %q#T using %<new%> without new-initializer"
 msgstr "alustamaton const-jäsen %qD"
 
-#: cp/init.cc:2722
+#: cp/init.cc:2732
 #, fuzzy, gcc-internal-format
 msgid "uninitialized const member in base %q#T of %q#T using %<new%> without new-initializer"
 msgstr "alustamaton const-jäsen %qD"
 
-#: cp/init.cc:2726
+#: cp/init.cc:2736
 #, fuzzy, gcc-internal-format
 msgid "uninitialized const member in base %q#T of %q#T"
 msgstr "alustamaton const-jäsen %qD"
 
-#: cp/init.cc:2836
+#: cp/init.cc:2846
 #, fuzzy, 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 "%qD siirtää ei-triviaalisti-kopioitavan tyyppisen %q#T-olion; käytä %<new%>:tä ja %<delete%>:ä"
 
-#: cp/init.cc:2839
+#: cp/init.cc:2849
 #, fuzzy, 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 "%qD siirtää ei-triviaalisti-kopioitavan tyyppisen %q#T-olion; käytä %<new%>:tä ja %<delete%>:ä"
 
-#: cp/init.cc:2849
+#: cp/init.cc:2859
 #, fuzzy, 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 "%qD siirtää ei-triviaalisti-kopioitavan tyyppisen %q#T-olion; käytä %<new%>:tä ja %<delete%>:ä"
 
-#: cp/init.cc:2852
+#: cp/init.cc:2862
 #, fuzzy, 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 "%qD siirtää ei-triviaalisti-kopioitavan tyyppisen %q#T-olion; käytä %<new%>:tä ja %<delete%>:ä"
 
-#: cp/init.cc:2861
+#: cp/init.cc:2871
 #, fuzzy, 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 "%qD siirtää ei-triviaalisti-kopioitavan tyyppisen %q#T-olion; käytä %<new%>:tä ja %<delete%>:ä"
 
-#: cp/init.cc:2864
+#: cp/init.cc:2874
 #, fuzzy, 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 "%qD siirtää ei-triviaalisti-kopioitavan tyyppisen %q#T-olion; käytä %<new%>:tä ja %<delete%>:ä"
 
-#: cp/init.cc:2881
+#: cp/init.cc:2891
 #, fuzzy, gcc-internal-format
 msgid "at offset %wi from %qD declared here"
 msgstr "muuttuja %qD esitelty %<inline%>:ksi"
 
-#: cp/init.cc:2885
+#: cp/init.cc:2895
 #, fuzzy, gcc-internal-format
 msgid "at offset [%wi, %wi] from %qD declared here"
 msgstr "muuttuja %qD esitelty %<inline%>:ksi"
 
-#: cp/init.cc:3099
+#: cp/init.cc:3093
 #, fuzzy, gcc-internal-format
 msgid "integer overflow in array size"
 msgstr "kokonaislukuylivuoto lausekkeessa"
 
-#: cp/init.cc:3109
+#: cp/init.cc:3103
 #, fuzzy, gcc-internal-format
 msgid "array size in new-expression must be constant"
 msgstr "taulukon koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/init.cc:3127
+#: cp/init.cc:3121
 #, fuzzy, gcc-internal-format
 msgid "variably modified type not allowed in new-expression"
 msgstr "muuttuja tai kenttä %qs esitelty tyhjäksi"
 
-#: cp/init.cc:3143
+#: cp/init.cc:3137
 #, fuzzy, gcc-internal-format
 msgid "non-constant array new length must be specified directly, not by %<typedef%>"
 msgstr "taulukkoindeksi ei-taulukkoalustimessa"
 
-#: cp/init.cc:3145
+#: cp/init.cc:3139
 #, fuzzy, gcc-internal-format
 msgid "non-constant array new length must be specified without parentheses around the type-id"
 msgstr "taulukkoindeksi ei-taulukkoalustimessa"
 
-#: cp/init.cc:3155
+#: cp/init.cc:3149
 #, fuzzy, gcc-internal-format
 msgid "invalid type %<void%> for %<new%>"
 msgstr "epäkelpo %qs:n soveltaminen tyhjään tyyppiin"
 
-#: cp/init.cc:3161
+#: cp/init.cc:3155
 #, gcc-internal-format
 msgid "%<new%> of %<initializer_list%> does not extend the lifetime of the underlying array"
 msgstr ""
 
-#: cp/init.cc:3203
+#: cp/init.cc:3197
 #, fuzzy, gcc-internal-format
 msgid "uninitialized const in %<new%> of %q#T"
 msgstr "alustamaton const-jäsen %qD"
@@ -54867,87 +55068,87 @@ msgstr "alustamaton const-jäsen %qD"
 msgid "no suitable %qD found in class %qT"
 msgstr "%qD on jo määritelty"
 
-#: cp/init.cc:3360 cp/search.cc:1058
+#: cp/init.cc:3360 cp/search.cc:1179
 #, fuzzy, gcc-internal-format
 msgid "request for member %qD is ambiguous"
 msgstr "%qD:n esittely ei-jäsenenä"
 
-#: cp/init.cc:3435
+#: cp/init.cc:3441
 #, gcc-internal-format
 msgid "%<new%> of type %qT with extended alignment %d"
 msgstr ""
 
-#: cp/init.cc:3438
+#: cp/init.cc:3444
 #, fuzzy, gcc-internal-format
 msgid "uses %qD, which does not have an alignment parameter"
 msgstr "luokalla %qT ei ole %qD-nimistä kenttää"
 
-#: cp/init.cc:3441
+#: cp/init.cc:3447
 #, gcc-internal-format
 msgid "use %<-faligned-new%> to enable C++17 over-aligned new support"
 msgstr ""
 
-#: cp/init.cc:3636
+#: cp/init.cc:3643
 #, fuzzy, gcc-internal-format
 msgid "parenthesized initializer in array new"
 msgstr "taulukkoindeksi ei-taulukkoalustimessa"
 
-#: cp/init.cc:3910
+#: cp/init.cc:3917
 #, fuzzy, gcc-internal-format
 msgid "size in array new must have integral type"
 msgstr "taulukon koolla on epäkokonaislukutyyppi %qT"
 
-#: cp/init.cc:3939
+#: cp/init.cc:3946
 #, fuzzy, gcc-internal-format
 msgid "new cannot be applied to a reference type"
 msgstr "funktion paluuarvon tyyppi ei voi olla funktio"
 
-#: cp/init.cc:3948
+#: cp/init.cc:3955
 #, fuzzy, gcc-internal-format
 msgid "new cannot be applied to a function type"
 msgstr "funktion paluuarvon tyyppi ei voi olla funktio"
 
-#: cp/init.cc:4068
+#: cp/init.cc:4075
 #, gcc-internal-format
 msgid "possible problem detected in invocation of operator %<delete []%>"
 msgstr ""
 
-#: cp/init.cc:4072
+#: cp/init.cc:4079
 #, gcc-internal-format
 msgid "neither the destructor nor the class-specific operator %<delete []%> will be called, even if they are declared when the class is defined"
 msgstr ""
 
-#: cp/init.cc:4682
+#: cp/init.cc:4690
 #, fuzzy, gcc-internal-format
 msgid "initializer ends prematurely"
 msgstr "muotoilu %s päättyy %%:iin"
 
-#: cp/init.cc:4979
+#: cp/init.cc:4987
 #, fuzzy, gcc-internal-format
 msgid "unknown array size in delete"
 msgstr "taulukon %qE koko on negatiivinen"
 
-#: cp/init.cc:5013
+#: cp/init.cc:5021
 #, gcc-internal-format
 msgid "possible problem detected in invocation of %<operator delete%>"
 msgstr ""
 
-#: cp/init.cc:5018
+#: cp/init.cc:5026
 #, gcc-internal-format
 msgid "neither the destructor nor the class-specific %<operator delete%> will be called, even if they are declared when the class is defined"
 msgstr ""
 
-#: cp/init.cc:5033
+#: cp/init.cc:5041
 #, gcc-internal-format
 msgid "deleting object of abstract class type %qT which has non-virtual destructor will cause undefined behavior"
 msgstr ""
 
-#: cp/init.cc:5038
+#: cp/init.cc:5046
 #, gcc-internal-format
 msgid "deleting object of polymorphic class type %qT which has non-virtual destructor might cause undefined behavior"
 msgstr ""
 
-#: cp/init.cc:5345
+#: cp/init.cc:5353
 #, fuzzy, gcc-internal-format
 msgid "type to vector delete is neither pointer or array type"
 msgstr "%qE:lla ei ole luokkatyyppiä"
@@ -55052,62 +55253,62 @@ msgstr "(G++ hyväksyy koodin %<-fpermissive%>-valitsimella)"
 msgid "  # %E"
 msgstr ""
 
-#: cp/mangle.cc:2365
+#: cp/mangle.cc:2386
 #, fuzzy, gcc-internal-format
 msgid "mangling %<typeof%>, use %<decltype%> instead"
 msgstr "typedef %qD on alustettu (käytä __typeof__ sen sijaan)"
 
-#: cp/mangle.cc:2369
+#: cp/mangle.cc:2390
 #, fuzzy, gcc-internal-format
 msgid "mangling %<__underlying_type%>"
 msgstr "Tyyppi"
 
-#: cp/mangle.cc:2676
+#: cp/mangle.cc:2697
 #, fuzzy, gcc-internal-format
 msgid "mangling unknown fixed point type"
 msgstr "Tyyppi"
 
-#: cp/mangle.cc:3454
+#: cp/mangle.cc:3475
 #, gcc-internal-format
 msgid "use of built-in trait %qE in function signature; use library traits instead"
 msgstr ""
 
-#: cp/mangle.cc:3459
+#: cp/mangle.cc:3480
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "mangling %C"
 msgstr "kolmoismerkki ??%c muunnettu merkiksi %c"
 
-#: cp/mangle.cc:3535
+#: cp/mangle.cc:3556
 #, gcc-internal-format
 msgid "omitted middle operand to %<?:%> operand cannot be mangled"
 msgstr ""
 
-#: cp/mangle.cc:4100
+#: cp/mangle.cc:4120
 #, gcc-internal-format
 msgid "mangled name for %qD will change in C++17 because the exception specification is part of a function type"
 msgstr ""
 
-#: cp/mangle.cc:4146
+#: cp/mangle.cc:4166
 #, gcc-internal-format
 msgid "the mangled name of %qD changed between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)"
 msgstr ""
 
-#: cp/mangle.cc:4152
+#: cp/mangle.cc:4172
 #, gcc-internal-format
 msgid "the mangled name of %qD changes between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)"
 msgstr ""
 
-#: cp/mangle.cc:4424
+#: cp/mangle.cc:4444
 #, gcc-internal-format
 msgid "the mangled name of a thunk for %qD changes between %<-fabi-version=%d%> and %<-fabi-version=%d%>"
 msgstr ""
 
-#: cp/mangle.cc:4429
+#: cp/mangle.cc:4449
 #, gcc-internal-format
 msgid "the mangled name of %qD changes between %<-fabi-version=%d%> and %<-fabi-version=%d%>"
 msgstr ""
 
-#: cp/mangle.cc:4434
+#: cp/mangle.cc:4454
 #, gcc-internal-format
 msgid "the mangled name of the initialization guard variable for %qD changes between %<-fabi-version=%d%> and %<-fabi-version=%d%>"
 msgstr ""
@@ -55429,7 +55630,7 @@ msgstr "    Rekursiiviset jäsenet:\n"
 msgid "cannot import module in its own purview"
 msgstr ""
 
-#: cp/module.cc:13883 cp/module.cc:18965
+#: cp/module.cc:13883 cp/module.cc:18966
 #, fuzzy, gcc-internal-format
 msgid "module %qs declared here"
 msgstr "%qD esiteltiin täällä"
@@ -55560,37 +55761,37 @@ msgstr ""
 msgid "returning to the gate for a mechanical issue"
 msgstr ""
 
-#: cp/module.cc:18670
+#: cp/module.cc:18671
 #, fuzzy, gcc-internal-format
 msgid "reading CMI %qs"
 msgstr "          %s"
 
-#: cp/module.cc:18814
+#: cp/module.cc:18815
 #, gcc-internal-format
 msgid "failed to load binding %<%E%s%E%>"
 msgstr ""
 
-#: cp/module.cc:18815
+#: cp/module.cc:18816
 #, gcc-internal-format
 msgid "failed to load binding %<%E%s%E@%s%>"
 msgstr ""
 
-#: cp/module.cc:18822
+#: cp/module.cc:18823
 #, gcc-internal-format
 msgid "during load of binding %<%E%s%E%>"
 msgstr ""
 
-#: cp/module.cc:18823
+#: cp/module.cc:18824
 #, gcc-internal-format
 msgid "during load of binding %<%E%s%E@%s%>"
 msgstr ""
 
-#: cp/module.cc:18881
+#: cp/module.cc:18882
 #, gcc-internal-format
 msgid "failed to load pendings for %<%E%s%E%>"
 msgstr ""
 
-#: cp/module.cc:18885
+#: cp/module.cc:18886
 #, fuzzy, gcc-internal-format
 msgid "during load of pendings for %<%E%s%E%>"
 msgstr "tuntematon valitsin -%s"
@@ -55602,374 +55803,374 @@ msgstr "tuntematon valitsin -%s"
 #. module, so we don't want to confuse things by having to think
 #. about whether 'extern "C++" { import foo; }' puts foo's
 #. contents into the global module all of a sudden.
-#: cp/module.cc:18930
+#: cp/module.cc:18931
 #, gcc-internal-format
 msgid "import of named module %qs inside language-linkage block"
 msgstr ""
 
-#: cp/module.cc:18960
+#: cp/module.cc:18961
 #, fuzzy, gcc-internal-format
 msgid "module already declared"
 msgstr "%qs alustettu ja esitelty %<extern%>-avainsanalla"
 
-#: cp/module.cc:18961
+#: cp/module.cc:18962
 #, fuzzy, gcc-internal-format
 #| msgid "In module imported at"
 msgid "module already imported"
 msgstr "Moduulissa, joka tuotu kohdassa"
 
-#: cp/module.cc:18966
+#: cp/module.cc:18967
 #, fuzzy, gcc-internal-format
 #| msgid "In module imported at"
 msgid "module %qs imported here"
 msgstr "Moduulissa, joka tuotu kohdassa"
 
-#: cp/module.cc:19153
+#: cp/module.cc:19154
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "unknown Compiled Module Interface: %s"
 msgstr "Tuntematon tiheys: ”%c”"
 
-#: cp/module.cc:19196
+#: cp/module.cc:19197
 #, gcc-internal-format
 msgid "cannot determine %<#include%> translation of %s: %s"
 msgstr ""
 
-#: cp/module.cc:19214
+#: cp/module.cc:19215
 #, gcc-internal-format
 msgid "include %qs translated to import"
 msgstr ""
 
-#: cp/module.cc:19215
+#: cp/module.cc:19216
 #, gcc-internal-format
 msgid "include %qs processed textually"
 msgstr ""
 
-#: cp/module.cc:19572
+#: cp/module.cc:19573
 #, gcc-internal-format
 msgid "C++ modules are incompatible with precompiled headers"
 msgstr ""
 
-#: cp/module.cc:19576
+#: cp/module.cc:19577
 #, fuzzy, gcc-internal-format
 msgid "C++ modules are incompatible with traditional preprocessing"
 msgstr "virheellinen esikääntäjän direktiivi #%s"
 
-#: cp/module.cc:19586
+#: cp/module.cc:19587
 #, gcc-internal-format
 msgid "macro debug output may be incomplete with modules"
 msgstr ""
 
-#: cp/module.cc:19587
+#: cp/module.cc:19588
 #, gcc-internal-format
 msgid "module dependencies require preprocessing"
 msgstr ""
 
-#: cp/module.cc:19589
+#: cp/module.cc:19590
 #, fuzzy, gcc-internal-format
 msgid "you should use the %<-%s%> option"
 msgstr "sisäinen funktio %q+D esitelty ei-funktiona"
 
-#: cp/module.cc:19624 cp/module.cc:19653
+#: cp/module.cc:19625 cp/module.cc:19654
 #, fuzzy, gcc-internal-format
 msgid "invalid header name %qs"
 msgstr "virheellinen --param-arvo %qs"
 
-#: cp/module.cc:19663
+#: cp/module.cc:19664
 #, fuzzy, gcc-internal-format
 msgid "invalid module name %qs"
 msgstr "virheellinen --param-arvo %qs"
 
-#: cp/module.cc:19829
+#: cp/module.cc:19830
 #, gcc-internal-format
 msgid "%<-fmodule-only%> used for non-interface"
 msgstr ""
 
-#: cp/module.cc:19869
+#: cp/module.cc:19870
 #, fuzzy, gcc-internal-format
 msgid "writing CMI %qs"
 msgstr "virhe kirjoitettaessa i-solmua"
 
-#: cp/module.cc:19874
+#: cp/module.cc:19875
 #, fuzzy, gcc-internal-format
 #| msgid "Error writing modules file: %s"
 msgid "not writing module %qs due to errors"
 msgstr "Virhe kirjoitettaessa moduulitiedostoa %s"
 
-#: cp/module.cc:19902
+#: cp/module.cc:19903
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "failed to write compiled module: %s"
 msgstr "%s: ei voida avata PCH-tiedostoa: %m\n"
 
-#: cp/module.cc:20039
+#: cp/module.cc:20040
 #, fuzzy, gcc-internal-format
 msgid "unknown header kind %qs"
 msgstr "tls_model-argumentti ei ole merkkijono"
 
-#: cp/name-lookup.cc:2727
+#: cp/name-lookup.cc:2730
 #, fuzzy, gcc-internal-format
 msgid "redeclaration of %q#D with different template parameters"
 msgstr "malliesittelylle %q+D"
 
-#: cp/name-lookup.cc:2733
+#: cp/name-lookup.cc:2736
 #, fuzzy, gcc-internal-format
 msgid "%q#D conflicts with a previous declaration"
 msgstr "%q+D:n data-alue on ristiriidassa edellisen esittelyn kanssa"
 
-#: cp/name-lookup.cc:2898
+#: cp/name-lookup.cc:2901
 #, fuzzy, gcc-internal-format
 msgid "%q#D hides constructor for %q#D"
 msgstr "muuttujan %q+D koko muistissa ei ole tunnettu"
 
-#: cp/name-lookup.cc:3047
+#: cp/name-lookup.cc:3050
 #, fuzzy, gcc-internal-format
 msgid "conflicting C language linkage declaration %q#D"
 msgstr "ristiriitainen esittely %q#D"
 
-#: cp/name-lookup.cc:3052
+#: cp/name-lookup.cc:3055
 #, fuzzy, gcc-internal-format
 msgid "due to different exception specifications"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: cp/name-lookup.cc:3150
+#: cp/name-lookup.cc:3153
 #, fuzzy, gcc-internal-format
 msgid "lambda parameter %qD previously declared as a capture"
 msgstr "parametri %qD virheellisesti esitelty metodityyppi"
 
-#: cp/name-lookup.cc:3173
+#: cp/name-lookup.cc:3176
 #, fuzzy, gcc-internal-format
 msgid "declaration of %q#D shadows a parameter"
 msgstr "%q+D:n esittely varjostaa sisäänrakennetun funktion"
 
-#: cp/name-lookup.cc:3308
+#: cp/name-lookup.cc:3311
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qD shadows a member of %qT"
 msgstr "%qD:n esittely %qT:n jäsenenä"
 
-#: cp/name-lookup.cc:3766
+#: cp/name-lookup.cc:3772
 #, fuzzy, gcc-internal-format
 msgid "friend declaration %qD in local class without prior local declaration"
 msgstr "friend-esittely %qD paikallisessa luokassa ilman edeltävää esittelyä"
 
-#: cp/name-lookup.cc:4233
+#: cp/name-lookup.cc:4239
 #, fuzzy, gcc-internal-format
 msgid "%s %<%s(%E)%> %p %d"
 msgstr "%s %s(%E) %p %d\n"
 
-#: cp/name-lookup.cc:4236
+#: cp/name-lookup.cc:4242
 #, fuzzy, gcc-internal-format
 msgid "%s %s %p %d"
 msgstr "%s %s %p %d\n"
 
-#: cp/name-lookup.cc:4848
+#: cp/name-lookup.cc:4854
 #, fuzzy, gcc-internal-format
 msgid "%q#D does not have external linkage"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/name-lookup.cc:4850 cp/parser.cc:11382 cp/parser.cc:11392
-#: cp/semantics.cc:3920 cp/semantics.cc:3932
+#: cp/name-lookup.cc:4856 cp/parser.cc:11376 cp/parser.cc:11386
+#: cp/semantics.cc:3926 cp/semantics.cc:3938
 #, fuzzy, gcc-internal-format
 msgid "%q#D declared here"
 msgstr "%q+D esitelty täällä"
 
-#: cp/name-lookup.cc:5557
+#: cp/name-lookup.cc:5568
 #, fuzzy, gcc-internal-format
 msgid "%<%T%s%D%> names destructor"
 msgstr "%<%T::%D%> nimeää muodostimen, ei tyyppiä"
 
-#: cp/name-lookup.cc:5573
+#: cp/name-lookup.cc:5584
 #, fuzzy, gcc-internal-format
 msgid "using-declaration for non-member at class scope"
 msgstr "virtuaalinen ei-luokkafunktio %qs"
 
-#: cp/name-lookup.cc:5581
+#: cp/name-lookup.cc:5592
 #, fuzzy, gcc-internal-format
 msgid "%<using%> with enumeration scope %q#T only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/name-lookup.cc:5597 cp/pt.cc:18455
+#: cp/name-lookup.cc:5608 cp/pt.cc:18500
 #, fuzzy, gcc-internal-format
 msgid "%qT is not a class, namespace, or enumeration"
 msgstr "%qE ei ole luokka, nimiavaruus eikä lueteltu tyyppi"
 
-#: cp/name-lookup.cc:5607
+#: cp/name-lookup.cc:5618
 #, fuzzy, gcc-internal-format
 msgid "non-member using-declaration names constructor of %qT"
 msgstr "%qD:n esittely ei-jäsenenä"
 
-#: cp/name-lookup.cc:5618 cp/name-lookup.cc:5676
+#: cp/name-lookup.cc:5629 cp/name-lookup.cc:5702
 #, fuzzy, gcc-internal-format
 msgid "using-declaration for member at non-class scope"
 msgstr "virtuaalinen ei-luokkafunktio %qs"
 
-#: cp/name-lookup.cc:5641
+#: cp/name-lookup.cc:5652
 #, fuzzy, gcc-internal-format
 msgid "%qT is not a direct base of %qT"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/name-lookup.cc:5686
+#: cp/name-lookup.cc:5712
 #, fuzzy, gcc-internal-format
 msgid "did you mean %<using enum %T::%D%>?"
 msgstr "oliko tarkoitus käyttää loogista negaatiota?"
 
-#: cp/name-lookup.cc:5698
+#: cp/name-lookup.cc:5724
 #, fuzzy, gcc-internal-format
 msgid "%qD has not been declared in %qD"
 msgstr "%qD esitelty ei-parametrina"
 
-#: cp/name-lookup.cc:5712
+#: cp/name-lookup.cc:5738
 #, fuzzy, gcc-internal-format
 msgid "using-declaration may not name namespace %qD"
 msgstr "ristiriitainen esittely %q#D"
 
-#: cp/name-lookup.cc:5723
+#: cp/name-lookup.cc:5749
 #, fuzzy, gcc-internal-format
 msgid "%<%T::%D%> names constructor in %qT"
 msgstr "%<%T::%D%> nimeää muodostimen, ei tyyppiä"
 
-#: cp/name-lookup.cc:5816
+#: cp/name-lookup.cc:5842
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qD not in a namespace surrounding %qD"
 msgstr "%qD ei ole luokka eikä nimiavaruus"
 
-#: cp/name-lookup.cc:5857
+#: cp/name-lookup.cc:5883
 #, fuzzy, gcc-internal-format
 msgid "explicit qualification in declaration of %qD"
 msgstr "%qD:n esittely viitteiden taulukkona"
 
-#: cp/name-lookup.cc:5867
+#: cp/name-lookup.cc:5893
 #, fuzzy, gcc-internal-format
 msgid "%qD should have been declared inside %qD"
 msgstr "%qD esitelty ei-parametrina"
 
-#: cp/name-lookup.cc:5920
+#: cp/name-lookup.cc:5946
 #, fuzzy, gcc-internal-format
 msgid "%qD has not been declared within %qD"
 msgstr "%qD esitelty ei-parametrina"
 
-#: cp/name-lookup.cc:5922
+#: cp/name-lookup.cc:5948
 #, fuzzy, gcc-internal-format
 msgid "only here as a %<friend%>"
 msgstr "%q+D esitelty ystävänä"
 
-#: cp/name-lookup.cc:5976
+#: cp/name-lookup.cc:6002
 #, fuzzy, gcc-internal-format
 msgid "%qD attribute requires a single NTBS argument"
 msgstr "%qs-attribuutti tarvitsee prototyyppejä, joilla nimettyjä argumentteja"
 
-#: cp/name-lookup.cc:5983
+#: cp/name-lookup.cc:6009
 #, gcc-internal-format
 msgid "%qD attribute is meaningless since members of the anonymous namespace get local symbols"
 msgstr ""
 
-#: cp/name-lookup.cc:5993 cp/name-lookup.cc:6020
+#: cp/name-lookup.cc:6019 cp/name-lookup.cc:6046
 #, fuzzy, gcc-internal-format
 msgid "ignoring %qD attribute on anonymous namespace"
 msgstr "%J%qE-attribuutti soveltuu vain funktioihin"
 
-#: cp/name-lookup.cc:5999
+#: cp/name-lookup.cc:6025
 #, fuzzy, gcc-internal-format
 msgid "ignoring %qD attribute on non-inline namespace"
 msgstr "%qE-attribuutti pätee vain muuttujiin"
 
-#: cp/name-lookup.cc:6036 cp/name-lookup.cc:8525
+#: cp/name-lookup.cc:6062 cp/name-lookup.cc:8551
 #, fuzzy, gcc-internal-format
 msgid "%qD attribute directive ignored"
 msgstr "%<fast_interrupt%>-attribuuttidirektiivi jätetty huomiotta"
 
-#: cp/name-lookup.cc:6362
+#: cp/name-lookup.cc:6388
 #, gcc-internal-format
 msgid "maximum limit of %d namespaces searched for %qE"
 msgstr ""
 
-#: cp/name-lookup.cc:6414
+#: cp/name-lookup.cc:6440
 #, gcc-internal-format
 msgid "suggested alternative:"
 msgid_plural "suggested alternatives:"
 msgstr[0] "ehdotettu vaihtoehto:"
 msgstr[1] "ehdotetut vaihtoehdot:"
 
-#: cp/name-lookup.cc:6420
+#: cp/name-lookup.cc:6446
 #, fuzzy, gcc-internal-format
 msgid "  %qE"
 msgstr "%qE on vanhentunut"
 
-#: cp/name-lookup.cc:6949
+#: cp/name-lookup.cc:6975
 #, gcc-internal-format
 msgid "%<std::%s%> is defined in header %qs; did you forget to %<#include %s%>?"
 msgstr ""
 
-#: cp/name-lookup.cc:6955
+#: cp/name-lookup.cc:6981
 #, fuzzy, gcc-internal-format
 msgid "%<std::%s%> is only available from %s onwards"
 msgstr "%<this%> ei ole käytettävissä staattisissa jäsenfunktioissa"
 
-#: cp/name-lookup.cc:7391
+#: cp/name-lookup.cc:7417
 #, fuzzy, gcc-internal-format
 msgid "the macro %qs had not yet been defined"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/name-lookup.cc:7394
+#: cp/name-lookup.cc:7420
 #, gcc-internal-format
 msgid "it was later defined here"
 msgstr "määriteltiin myöhemmin tässä"
 
-#: cp/name-lookup.cc:8153
+#: cp/name-lookup.cc:8179
 #, fuzzy, gcc-internal-format
 msgid "declaration of %<std::initializer_list%> does not match %<#include <initializer_list>%>, isn%'t a template"
 msgstr "funktion %q+D määrittely on merkitty dllimport-tyyppiseksi"
 
-#: cp/name-lookup.cc:8509
+#: cp/name-lookup.cc:8535
 #, fuzzy, gcc-internal-format
 msgid "%<strong%> using directive no longer supported"
 msgstr "valitsin %qs ei ole enää tuettu"
 
-#: cp/name-lookup.cc:8512
+#: cp/name-lookup.cc:8538
 #, gcc-internal-format
 msgid "you can use an inline namespace instead"
 msgstr ""
 
 #. We only allow depth 255.
-#: cp/name-lookup.cc:8611
+#: cp/name-lookup.cc:8637
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "cannot nest more than %d namespaces"
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: cp/name-lookup.cc:8708
+#: cp/name-lookup.cc:8734
 #, fuzzy, gcc-internal-format
 msgid "%<namespace %E%> is ambiguous"
 msgstr "muunnos tyypistä %qT tyyppiin %qT on moniselitteinen"
 
-#: cp/name-lookup.cc:8724
+#: cp/name-lookup.cc:8750
 #, fuzzy, gcc-internal-format
 msgid "namespace alias %qD not allowed here, assuming %qD"
 msgstr "%<namespace%>-määrittely ei ole sallittu täällä"
 
-#: cp/name-lookup.cc:8804
+#: cp/name-lookup.cc:8830
 #, fuzzy, gcc-internal-format
 msgid "inline namespace must be specified at initial definition"
 msgstr "%Jlohkoattribuuttia ei voi määrittää paikalliselle muuttujalle"
 
-#: cp/name-lookup.cc:8805
+#: cp/name-lookup.cc:8831
 #, fuzzy, gcc-internal-format
 msgid "%qD defined here"
 msgstr "nimiö %qD määritelty täällä"
 
-#: cp/name-lookup.cc:8854
+#: cp/name-lookup.cc:8880
 #, fuzzy, gcc-internal-format
 msgid "%s namespace %qD conflicts with reachable definition"
 msgstr "%qD:a käytetään alustamattomana tässä funktiossa"
 
-#: cp/name-lookup.cc:8856
+#: cp/name-lookup.cc:8882
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "reachable %s definition here"
 msgstr "edellinen määrittely täällä"
 
-#: cp/name-lookup.cc:8899
+#: cp/name-lookup.cc:8925
 #, gcc-internal-format
 msgid "XXX entering %<pop_everything ()%>"
 msgstr ""
 
-#: cp/name-lookup.cc:8908
+#: cp/name-lookup.cc:8934
 #, gcc-internal-format
 msgid "XXX leaving %<pop_everything ()%>"
 msgstr ""
@@ -55994,7 +56195,7 @@ msgstr "tunniste %qE on ristiriidassa C++:n varatun sanan kanssa"
 msgid "%<LEXER_DEBUGGING_ENABLED_P%> is not set to true"
 msgstr ""
 
-#: cp/parser.cc:1444 cp/parser.cc:45077
+#: cp/parser.cc:1444 cp/parser.cc:45083
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp declare %s%> not immediately followed by function declaration or definition"
 msgstr "%Jvanhanmallinen funktiomäärittely"
@@ -56024,7 +56225,7 @@ msgstr "%<::%E%> on esittelemättä"
 msgid "request for member %qE in non-class type %qT"
 msgstr "pyyntö jäsenen %qs käsittelyyn jossain, joka ei ole tietue tai unioni"
 
-#: cp/parser.cc:3160 cp/parser.cc:20931
+#: cp/parser.cc:3160 cp/parser.cc:20929
 #, gcc-internal-format
 msgid "%<%T::%E%> has not been declared"
 msgstr "%<%T::%E%> on esittelemättä"
@@ -56104,7 +56305,7 @@ msgstr "muodostimen virheellinen käyttö mallina"
 msgid "ISO C++ forbids using a floating-point literal in a constant-expression"
 msgstr "liukulukuylivuoto lausekkeessa"
 
-#: cp/parser.cc:3355 cp/pt.cc:20113
+#: cp/parser.cc:3355 cp/pt.cc:20161
 #, fuzzy, gcc-internal-format
 msgid "a cast to a type other than an integral or enumeration type cannot appear in a constant-expression"
 msgstr "taulukon koko ei ole kokonaislukutyyppinen vakiolauseke"
@@ -56240,7 +56441,7 @@ msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 msgid "%<concept%> only available with %<-std=c++20%> or %<-fconcepts%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:3550 cp/parser.cc:29906
+#: cp/parser.cc:3550 cp/parser.cc:29904
 #, fuzzy, gcc-internal-format
 msgid "%<requires%> only available with %<-std=c++20%> or %<-fconcepts%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
@@ -56300,1439 +56501,1439 @@ msgstr "luokalla %qT ei ole %qD-nimistä kenttää"
 msgid "%qE in %q#T does not name a type"
 msgstr "%qE ei nimeä tyyppiä"
 
-#: cp/parser.cc:4366
+#: cp/parser.cc:4364
 #, fuzzy, gcc-internal-format
 msgid "expected string-literal"
 msgstr "odotettiin merkkijonoliteraalia"
 
-#: cp/parser.cc:4432
+#: cp/parser.cc:4430
 #, gcc-internal-format
 msgid "inconsistent user-defined literal suffixes %qD and %qD in string literal"
 msgstr ""
 
-#: cp/parser.cc:4451
+#: cp/parser.cc:4449
 #, gcc-internal-format
 msgid "concatenation of string literals with conflicting encoding prefixes"
 msgstr ""
 
-#: cp/parser.cc:4618
+#: cp/parser.cc:4616
 #, fuzzy, gcc-internal-format
 msgid "unable to find character literal operator %qD with %qT argument"
 msgstr "epäkelvot operandit binääriselle %s-operaatiolle"
 
-#: cp/parser.cc:4724
+#: cp/parser.cc:4722
 #, fuzzy, gcc-internal-format
 msgid "integer literal exceeds range of %qT type"
 msgstr "liukulukuvakio ylittää %qT:n arvoalueen"
 
-#: cp/parser.cc:4731
+#: cp/parser.cc:4729
 #, fuzzy, gcc-internal-format
 msgid "floating literal exceeds range of %qT type"
 msgstr "liukulukuvakio ylittää %qT:n arvoalueen"
 
-#: cp/parser.cc:4735
+#: cp/parser.cc:4733
 #, fuzzy, gcc-internal-format
 msgid "floating literal truncated to zero"
 msgstr "liukulukuvakio katkaistu nollaksi"
 
-#: cp/parser.cc:4764
+#: cp/parser.cc:4762
 #, gcc-internal-format
 msgid "failed to translate literal to execution character set %qT"
 msgstr ""
 
-#: cp/parser.cc:4798
+#: cp/parser.cc:4796
 #, fuzzy, gcc-internal-format
 msgid "unable to find numeric literal operator %qD"
 msgstr "epäkelvot operandit binääriselle %s-operaatiolle"
 
-#: cp/parser.cc:4804
+#: cp/parser.cc:4802
 #, gcc-internal-format
 msgid "add %<using namespace std::complex_literals%> (from %<<complex>%>) to enable the C++14 user-defined literal suffixes"
 msgstr ""
 
-#: cp/parser.cc:4808
+#: cp/parser.cc:4806
 #, gcc-internal-format
 msgid "or use %<j%> instead of %<i%> for the GNU built-in suffix"
 msgstr ""
 
-#: cp/parser.cc:4812
+#: cp/parser.cc:4810
 #, gcc-internal-format
 msgid "use %<-fext-numeric-literals%> to enable more built-in suffixes"
 msgstr ""
 
-#: cp/parser.cc:4896
+#: cp/parser.cc:4894
 #, fuzzy, gcc-internal-format
 msgid "unable to find string literal operator %qD with %qT, %qT arguments"
 msgstr "epäkelvot operandit binääriselle %s-operaatiolle"
 
-#: cp/parser.cc:4990
+#: cp/parser.cc:4988
 #, gcc-internal-format
 msgid "global module fragment contents must be from preprocessor inclusion"
 msgstr ""
 
-#: cp/parser.cc:5005 cp/parser.cc:15178
+#: cp/parser.cc:5003 cp/parser.cc:15172
 #, fuzzy, gcc-internal-format
 msgid "expected declaration"
 msgstr "odotettiin iteraatioesittelyä tai -alustusta"
 
-#: cp/parser.cc:5366 cp/parser.cc:5381
+#: cp/parser.cc:5364 cp/parser.cc:5379
 #, fuzzy, gcc-internal-format
 msgid "expected binary operator"
 msgstr "%s: odotettiin binääristä operaattoria"
 
-#: cp/parser.cc:5387
+#: cp/parser.cc:5385
 #, fuzzy, gcc-internal-format
 msgid "expected ..."
 msgstr "”)” oli odotus"
 
-#: cp/parser.cc:5399
+#: cp/parser.cc:5397
 #, fuzzy, gcc-internal-format
 msgid "binary expression in operand of fold-expression"
 msgstr "virheellinen lauseke kohdemuuttujana"
 
-#: cp/parser.cc:5404
+#: cp/parser.cc:5402
 #, fuzzy, gcc-internal-format
 msgid "conditional expression in operand of fold-expression"
 msgstr "ehtolausekkeessa ei-lvalue-taulukko"
 
-#: cp/parser.cc:5412
+#: cp/parser.cc:5410
 #, fuzzy, gcc-internal-format
 msgid "mismatched operator in fold-expression"
 msgstr "virheellinen loogisen lausekkeen käyttö operandina %<operator--%>:lle"
 
-#: cp/parser.cc:5516
+#: cp/parser.cc:5514
 #, fuzzy, gcc-internal-format
 msgid "fixed-point types not supported in C++"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: cp/parser.cc:5599
+#: cp/parser.cc:5597
 #, gcc-internal-format
 msgid "ISO C++ forbids braced-groups within expressions"
 msgstr "ISO C++ kieltää lohkot lausekkeiden sisällä"
 
-#: cp/parser.cc:5611
+#: cp/parser.cc:5609
 #, gcc-internal-format
 msgid "statement-expressions are not allowed outside functions nor in template-argument lists"
 msgstr ""
 
-#: cp/parser.cc:5651
+#: cp/parser.cc:5649
 #, fuzzy, gcc-internal-format
 msgid "fold-expressions only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:5712 cp/parser.cc:5893 cp/parser.cc:6074 cp/semantics.cc:4074
+#: cp/parser.cc:5710 cp/parser.cc:5891 cp/parser.cc:6072 cp/semantics.cc:4080
 #, fuzzy, gcc-internal-format
 msgid "expected primary-expression"
 msgstr "odotettiin lauseketta"
 
-#: cp/parser.cc:5742
+#: cp/parser.cc:5740
 #, gcc-internal-format
 msgid "%<this%> may not be used in this context"
 msgstr "<this%>-sanaa ei voi käyttää tässä yhteydessä"
 
-#: cp/parser.cc:5887
+#: cp/parser.cc:5885
 #, fuzzy, gcc-internal-format
 msgid "a template declaration cannot appear at block scope"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: cp/parser.cc:6228
+#: cp/parser.cc:6226
 #, fuzzy, gcc-internal-format
 msgid "expected id-expression"
 msgstr "odotettiin lauseketta"
 
-#: cp/parser.cc:6266
+#: cp/parser.cc:6264
 #, gcc-internal-format
 msgid "expected %qs keyword before dependent template name"
 msgstr ""
 
-#: cp/parser.cc:6393
+#: cp/parser.cc:6391
 #, fuzzy, gcc-internal-format
 msgid "scope %qT before %<~%> is not a class-name"
 msgstr "%qT ei ole luokka tai nimiavaruus"
 
-#: cp/parser.cc:6403
+#: cp/parser.cc:6401
 #, fuzzy, gcc-internal-format
 msgid "%<template%> keyword not permitted in destructor name"
 msgstr "parametri esitelty %<auto%>:ksi"
 
-#: cp/parser.cc:6440 cp/parser.cc:8559
+#: cp/parser.cc:6438 cp/parser.cc:8553
 #, fuzzy, gcc-internal-format
 msgid "%<~auto%> only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:6452
+#: cp/parser.cc:6450
 #, fuzzy, gcc-internal-format
 msgid "template-id not allowed for destructor"
 msgstr "%<[*]%> ei ole esittelyssä"
 
-#: cp/parser.cc:6561
+#: cp/parser.cc:6559
 #, gcc-internal-format
 msgid "declaration of %<~%T%> as member of %qT"
 msgstr "%<~%T%>:n esittely %qT:n jäsenenä"
 
-#: cp/parser.cc:6576
+#: cp/parser.cc:6574
 #, fuzzy, gcc-internal-format
 msgid "typedef-name %qD used as destructor declarator"
 msgstr "%qD ei ole mallifunktio"
 
-#: cp/parser.cc:6612 cp/parser.cc:23381
+#: cp/parser.cc:6610 cp/parser.cc:23379
 #, fuzzy, gcc-internal-format
 msgid "expected unqualified-id"
 msgstr "ID"
 
-#: cp/parser.cc:6639 cp/typeck.cc:3011 cp/typeck.cc:3014 cp/typeck.cc:3031
+#: cp/parser.cc:6637 cp/typeck.cc:3020 cp/typeck.cc:3023 cp/typeck.cc:3040
 #, gcc-internal-format
 msgid "%qD is not a template"
 msgstr "%qD ei ole malli"
 
-#: cp/parser.cc:6753
+#: cp/parser.cc:6751
 #, fuzzy, gcc-internal-format
 msgid "found %<:%> in nested-name-specifier, expected %<::%>"
 msgstr "useita tallennuspaikkoja esittelymääritteissä"
 
-#: cp/parser.cc:6834
+#: cp/parser.cc:6832
 #, fuzzy, gcc-internal-format
 msgid "%<decltype%> evaluates to %qT, which is not a class or enumeration type"
 msgstr "%Jcase-arvo %qs ei ole luetellussa tyypissä"
 
-#: cp/parser.cc:6861 cp/parser.cc:6872
+#: cp/parser.cc:6859 cp/parser.cc:6870
 #, fuzzy, gcc-internal-format
 msgid "concept-id %qD in nested-name-specifier"
 msgstr "useita tallennuspaikkoja esittelymääritteissä"
 
-#: cp/parser.cc:6864
+#: cp/parser.cc:6862
 #, fuzzy, gcc-internal-format
 msgid "function template-id %qD in nested-name-specifier"
 msgstr "useita tallennuspaikkoja esittelymääritteissä"
 
-#: cp/parser.cc:6878
+#: cp/parser.cc:6876
 #, fuzzy, gcc-internal-format
 msgid "variable template-id %qD in nested-name-specifier"
 msgstr "useita tallennuspaikkoja esittelymääritteissä"
 
-#: cp/parser.cc:7052
+#: cp/parser.cc:7050
 #, fuzzy, gcc-internal-format
 msgid "expected nested-name-specifier"
 msgstr "Odotettiin käyttöoikeustarkennetta kohdassa %C"
 
-#: cp/parser.cc:7259 cp/parser.cc:9804
+#: cp/parser.cc:7257 cp/parser.cc:9798
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in casts"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:7348
+#: cp/parser.cc:7346
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in a %<typeid%> expression"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:7440
+#: cp/parser.cc:7438
 #, fuzzy, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_addressof%>"
 msgstr "väärä määrä argumentteja funktiolle %<__builtin_next_arg%>"
 
-#: cp/parser.cc:7452 cp/pt.cc:20793
+#: cp/parser.cc:7450 cp/pt.cc:20841
 #, fuzzy, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_launder%>"
 msgstr "väärä määrä argumentteja funktiolle %<__builtin_next_arg%>"
 
-#: cp/parser.cc:7465
+#: cp/parser.cc:7463
 #, fuzzy, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_assoc_barrier%>"
 msgstr "väärä määrä argumentteja funktiolle %<__builtin_next_arg%>"
 
-#: cp/parser.cc:7491
+#: cp/parser.cc:7489
 #, fuzzy, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_shufflevector%>"
 msgstr "väärä määrä argumentteja funktiolle %<__builtin_next_arg%>"
 
-#: cp/parser.cc:7625
+#: cp/parser.cc:7627
 #, gcc-internal-format
 msgid "ISO C++ forbids compound-literals"
 msgstr "ISO C++ kieltää yhdysliteraalit"
 
-#: cp/parser.cc:7684
+#: cp/parser.cc:7686
 #, gcc-internal-format
 msgid "two consecutive %<[%> shall only introduce an attribute"
 msgstr ""
 
-#: cp/parser.cc:8330 cp/typeck.cc:2899
+#: cp/parser.cc:8326 cp/typeck.cc:2908
 #, gcc-internal-format
 msgid "invalid use of %qD"
 msgstr "%qD:n virheellinen käyttö"
 
-#: cp/parser.cc:8339
+#: cp/parser.cc:8335
 #, gcc-internal-format
 msgid "%<%D::%D%> is not a class member"
 msgstr "%<%D::%D%> ei ole luokan jäsen"
 
-#: cp/parser.cc:8611
+#: cp/parser.cc:8605
 #, fuzzy, gcc-internal-format
 msgid "non-scalar type"
 msgstr "pyydetty muuntoa ei-skalaarityypiksi"
 
-#: cp/parser.cc:8721
+#: cp/parser.cc:8715
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ does not allow %<alignof%> with a non-type"
 msgstr "ISO C ei salli ylimääräisiä %<;%>-merkkejä funktion ulkopuolella"
 
-#: cp/parser.cc:8816
+#: cp/parser.cc:8810
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in %<noexcept%> expressions"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:9090 cp/parser.cc:32445
+#: cp/parser.cc:9084 cp/parser.cc:32451
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in %qs expressions"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:9155
+#: cp/parser.cc:9149
 #, fuzzy, gcc-internal-format
 msgid "%<__builtin_has_attribute%> with dependent argument not supported yet"
 msgstr "%Jlohkoattribuutteja ei tueta tälle kohteelle"
 
-#: cp/parser.cc:9241
+#: cp/parser.cc:9235
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in a new-expression"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:9257
+#: cp/parser.cc:9251
 #, fuzzy, gcc-internal-format
 msgid "array bound forbidden after parenthesized type-id"
 msgstr "taulukkoindeksi ei-taulukkoalustimessa"
 
-#: cp/parser.cc:9259
+#: cp/parser.cc:9253
 #, fuzzy, gcc-internal-format
 msgid "try removing the parentheses around the type-id"
 msgstr "taulukkoindeksi ei-taulukkoalustimessa"
 
-#: cp/parser.cc:9291
+#: cp/parser.cc:9285
 #, gcc-internal-format
 msgid "initialization of new-expression for type %<auto%> requires exactly one element"
 msgstr ""
 
-#: cp/parser.cc:9336
+#: cp/parser.cc:9330
 #, fuzzy, gcc-internal-format
 msgid "expected expression-list or type-id"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: cp/parser.cc:9365
+#: cp/parser.cc:9359
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in a new-type-id"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:9500
+#: cp/parser.cc:9494
 #, fuzzy, gcc-internal-format
 msgid "expression in new-declarator must have integral or enumeration type"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/parser.cc:9909
+#: cp/parser.cc:9903
 #, fuzzy, gcc-internal-format
 msgid "use of old-style cast to %q#T"
 msgstr "vanhanmallisen tyyppimuunnoksen käyttö"
 
-#: cp/parser.cc:10058
+#: cp/parser.cc:10052
 #, gcc-internal-format
 msgid "%<>>%> operator is treated as two right angle brackets in C++11"
 msgstr ""
 
-#: cp/parser.cc:10061
+#: cp/parser.cc:10055
 #, gcc-internal-format
 msgid "suggest parentheses around %<>>%> expression"
 msgstr "suosittellaan sulkumerkkejä %<>>%>-lausekkeen ympärille"
 
-#: cp/parser.cc:10269
+#: cp/parser.cc:10263
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ does not allow %<?:%> with omitted middle operand"
 msgstr "ISO C ei salli ylimääräisiä %<;%>-merkkejä funktion ulkopuolella"
 
-#: cp/parser.cc:10558
+#: cp/parser.cc:10552
 #, gcc-internal-format
 msgid "top-level comma expression in array subscript is deprecated"
 msgstr ""
 
-#: cp/parser.cc:10715
+#: cp/parser.cc:10709
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined within %<__builtin_offsetof%>"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:11027
+#: cp/parser.cc:11021
 #, fuzzy, gcc-internal-format
 msgid "lambda-expression in template parameter type"
 msgstr "oletusargumentti määritelty lambda-parametrille"
 
-#: cp/parser.cc:11037
+#: cp/parser.cc:11031
 #, fuzzy, gcc-internal-format
 msgid "lambda-expression in unevaluated context only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:11047
+#: cp/parser.cc:11041
 #, fuzzy, gcc-internal-format
 msgid "lambda-expression in template-argument only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:11205
+#: cp/parser.cc:11199
 #, fuzzy, gcc-internal-format
 msgid "non-local lambda expression cannot have a capture-default"
 msgstr "oletusargumentti määritelty lambda-parametrille"
 
-#: cp/parser.cc:11227
+#: cp/parser.cc:11221
 #, fuzzy, gcc-internal-format
 msgid "expected end of capture-list"
 msgstr "Odotettiin argumenttiluetteloa kohdassa %C"
 
-#: cp/parser.cc:11243
+#: cp/parser.cc:11237
 #, fuzzy, gcc-internal-format
 msgid "explicit by-copy capture of %<this%> with by-copy capture default only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:11249 cp/parser.cc:11271 cp/parser.cc:11464
+#: cp/parser.cc:11243 cp/parser.cc:11265 cp/parser.cc:11458
 #, fuzzy, gcc-internal-format
 msgid "already captured %qD in lambda expression"
 msgstr "epäkelvot operandit binääriselle %s-operaatiolle"
 
-#: cp/parser.cc:11265
+#: cp/parser.cc:11259
 #, fuzzy, gcc-internal-format
 msgid "%<*this%> capture only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:11285
+#: cp/parser.cc:11279
 #, fuzzy, gcc-internal-format
 msgid "%<this%> cannot be captured by reference"
 msgstr "versioviitetaulukolle ei voi varata muistia"
 
-#: cp/parser.cc:11305
+#: cp/parser.cc:11299
 #, fuzzy, gcc-internal-format
 msgid "pack init-capture only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:11316
+#: cp/parser.cc:11310
 #, gcc-internal-format
 msgid "%<&%> should come before %<...%>"
 msgstr ""
 
-#: cp/parser.cc:11347
+#: cp/parser.cc:11341
 #, fuzzy, gcc-internal-format
 msgid "lambda capture initializers only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:11354
+#: cp/parser.cc:11348
 #, fuzzy, gcc-internal-format
 msgid "empty initializer for lambda init-capture"
 msgstr "tallennusluokka annettu parametrille %qs"
 
-#: cp/parser.cc:11378
+#: cp/parser.cc:11372
 #, fuzzy, gcc-internal-format
 msgid "capture of non-variable %qE"
 msgstr "%qD ei ole muuttuja"
 
-#: cp/parser.cc:11388
+#: cp/parser.cc:11382
 #, fuzzy, gcc-internal-format
 msgid "capture of variable %qD with non-automatic storage duration"
 msgstr "poistettu funktio %q+D"
 
-#: cp/parser.cc:11426
+#: cp/parser.cc:11420
 #, fuzzy, gcc-internal-format
 msgid "too many %<...%> in lambda capture"
 msgstr "%s: Liian monta argumenttia\n"
 
-#: cp/parser.cc:11437
+#: cp/parser.cc:11431
 #, gcc-internal-format
 msgid "explicit by-copy capture of %qD redundant with by-copy capture default"
 msgstr ""
 
-#: cp/parser.cc:11442
+#: cp/parser.cc:11436
 #, gcc-internal-format
 msgid "explicit by-reference capture of %qD redundant with by-reference capture default"
 msgstr ""
 
-#: cp/parser.cc:11521
+#: cp/parser.cc:11515
 #, fuzzy, gcc-internal-format
 msgid "lambda templates are only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:11525
+#: cp/parser.cc:11519
 #, fuzzy, gcc-internal-format
 msgid "lambda templates are only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:11594
+#: cp/parser.cc:11588
 #, gcc-internal-format
 msgid "default argument specified for lambda parameter"
 msgstr "oletusargumentti määritelty lambda-parametrille"
 
-#: cp/parser.cc:11613
+#: cp/parser.cc:11607
 #, fuzzy, gcc-internal-format
 msgid "parameter declaration before lambda declaration specifiers only optional with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:11625
+#: cp/parser.cc:11619
 #, fuzzy, gcc-internal-format
 msgid "duplicate %<mutable%>"
 msgstr "ylimääräinen %<volatile%>"
 
-#: cp/parser.cc:11632
+#: cp/parser.cc:11626
 #, fuzzy, gcc-internal-format
 msgid "parameter declaration before lambda transaction qualifier only optional with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:11645
+#: cp/parser.cc:11639
 #, fuzzy, gcc-internal-format
 msgid "parameter declaration before lambda exception specification only optional with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:11663
+#: cp/parser.cc:11657
 #, fuzzy, gcc-internal-format
 msgid "parameter declaration before lambda trailing return type only optional with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:11705
+#: cp/parser.cc:11699
 #, fuzzy, gcc-internal-format
 msgid "%<constexpr%> lambda only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:11865 cp/parser.cc:12004 cp/parser.cc:45683
+#: cp/parser.cc:11859 cp/parser.cc:11998 cp/parser.cc:45689
 #, gcc-internal-format
 msgid "mixing OpenMP directives with attribute and pragma syntax on the same statement"
 msgstr ""
 
-#: cp/parser.cc:11891 cp/parser.cc:45665
+#: cp/parser.cc:11885 cp/parser.cc:45671
 #, gcc-internal-format
 msgid "unknown OpenMP directive name in %<omp::directive%> attribute argument"
 msgstr ""
 
-#: cp/parser.cc:11973
+#: cp/parser.cc:11967
 #, gcc-internal-format
 msgid "OpenMP construct among %<omp::directive%> attributes requires all %<omp::directive%> attributes on the same statement to be in the same %<omp::sequence%>"
 msgstr ""
 
-#: cp/parser.cc:11981
+#: cp/parser.cc:11975
 #, gcc-internal-format
 msgid "multiple OpenMP standalone directives among %<omp::directive%> attributes must be all within the same %<omp::sequence%>"
 msgstr ""
 
-#: cp/parser.cc:11993
+#: cp/parser.cc:11987
 #, gcc-internal-format
 msgid "standalone OpenMP directives in %<omp::directive%> attribute can only appear on an empty statement"
 msgstr ""
 
-#: cp/parser.cc:12113
+#: cp/parser.cc:12107
 #, gcc-internal-format
 msgid "mixing OpenMP directives with attribute and pragma syntax on the same declaration"
 msgstr ""
 
-#: cp/parser.cc:12536 cp/parser.cc:12737
+#: cp/parser.cc:12530 cp/parser.cc:12731
 #, fuzzy, gcc-internal-format
 msgid "attributes at the beginning of statement are ignored"
 msgstr "parametritaulukon esittelijän attribuutit jätetään huomiotta"
 
-#: cp/parser.cc:12576
+#: cp/parser.cc:12570
 #, fuzzy, gcc-internal-format
 msgid "expected labeled-statement"
 msgstr "%s-lausetta odotettiin kohdassa %L"
 
-#: cp/parser.cc:12625
+#: cp/parser.cc:12619
 #, fuzzy, gcc-internal-format
 msgid "case label %qE not within a switch statement"
 msgstr "nimike yhdyslauseen lopussa"
 
-#: cp/parser.cc:12744
+#: cp/parser.cc:12738
 #, gcc-internal-format
 msgid "need %<typename%> before %qE because %qT is a dependent scope"
 msgstr ""
 
-#: cp/parser.cc:12753
+#: cp/parser.cc:12747
 #, gcc-internal-format
 msgid "%<%T::%D%> names the constructor, not the type"
 msgstr "%<%T::%D%> nimeää muodostimen, ei tyyppiä"
 
-#: cp/parser.cc:12801
+#: cp/parser.cc:12795
 #, fuzzy, gcc-internal-format
 msgid "compound-statement in %<constexpr%> function"
 msgstr "ei palautuslausetta funktiossa, joka palauttaa ei-voidin"
 
-#: cp/parser.cc:12965
+#: cp/parser.cc:12959
 #, fuzzy, gcc-internal-format
 msgid "%<if constexpr%> only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:12987
+#: cp/parser.cc:12981
 #, fuzzy, gcc-internal-format
 msgid "%<if consteval%> only available with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:13012 cp/parser.cc:13047
+#: cp/parser.cc:13006 cp/parser.cc:13041
 #, gcc-internal-format
 msgid "%<if consteval%> requires compound statement"
 msgstr ""
 
-#: cp/parser.cc:13089
+#: cp/parser.cc:13083
 #, fuzzy, gcc-internal-format
 msgid "init-statement in selection statements only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:13257 cp/parser.cc:32932
+#: cp/parser.cc:13251 cp/parser.cc:32938
 #, fuzzy, gcc-internal-format
 msgid "expected selection-statement"
 msgstr "%s-lausetta odotettiin kohdassa %L"
 
-#: cp/parser.cc:13298
+#: cp/parser.cc:13292
 #, fuzzy, gcc-internal-format
 msgid "condition declares an array"
 msgstr "taulukon palauttava funktio"
 
-#: cp/parser.cc:13300
+#: cp/parser.cc:13294
 #, fuzzy, gcc-internal-format
 msgid "condition declares a function"
 msgstr "kenttä %qE esitelty funktiona"
 
-#: cp/parser.cc:13340
+#: cp/parser.cc:13334
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in conditions"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
 #. Anything else is an error.
-#: cp/parser.cc:13422 cp/parser.cc:22661 cp/parser.cc:25180
+#: cp/parser.cc:13416 cp/parser.cc:22659 cp/parser.cc:25178
 #, fuzzy, gcc-internal-format
 msgid "expected initializer"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: cp/parser.cc:13472
+#: cp/parser.cc:13466
 #, fuzzy, gcc-internal-format
 msgid "range-based %<for%> loops with initializer only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:13723
+#: cp/parser.cc:13717
 #, gcc-internal-format
 msgid "loop variable %qD of type %qT binds to a temporary constructed from type %qT"
 msgstr ""
 
 #. rval
-#: cp/parser.cc:13730
+#: cp/parser.cc:13724
 #, gcc-internal-format
 msgid "use non-reference type %qT to make the copy explicit or %qT to prevent copying"
 msgstr ""
 
-#: cp/parser.cc:13755
+#: cp/parser.cc:13749
 #, fuzzy, gcc-internal-format
 msgid "loop variable %qD creates a copy from type %qT"
 msgstr "muuttujalla %qD on funktiotyyppi"
 
-#: cp/parser.cc:13760
+#: cp/parser.cc:13754
 #, gcc-internal-format
 msgid "use reference type to prevent copying"
 msgstr ""
 
-#: cp/parser.cc:13903
+#: cp/parser.cc:13897
 #, fuzzy, gcc-internal-format
 msgid "range-based %<for%> expression of type %qT has incomplete type"
 msgstr "%Jparametrin %qD tyyppi on vaillinainen"
 
-#: cp/parser.cc:13987
+#: cp/parser.cc:13981
 #, fuzzy, gcc-internal-format
 msgid "inconsistent begin/end types in range-based %<for%> statement: %qT and %qT"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: cp/parser.cc:14130 cp/parser.cc:32935
+#: cp/parser.cc:14124 cp/parser.cc:32941
 #, fuzzy, gcc-internal-format
 msgid "expected iteration-statement"
 msgstr "odotettiin iteraatioesittelyä tai -alustusta"
 
-#: cp/parser.cc:14175
+#: cp/parser.cc:14169
 #, fuzzy, gcc-internal-format
 msgid "alias-declaration in init-statement only available with %<-std=c++23%> or %<-std=gnu++23%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:14192
+#: cp/parser.cc:14186
 #, fuzzy, gcc-internal-format
 msgid "range-based %<for%> loops only available with %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:14324
+#: cp/parser.cc:14318
 #, fuzzy, gcc-internal-format
 msgid "%<goto%> in %<constexpr%> function only available with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
 #. Issue a warning about this use of a GNU extension.
-#: cp/parser.cc:14333
+#: cp/parser.cc:14327
 #, gcc-internal-format
 msgid "ISO C++ forbids computed gotos"
 msgstr "ISO C++ kieltää lasketut goto-käskyt"
 
-#: cp/parser.cc:14346 cp/parser.cc:32938
+#: cp/parser.cc:14340 cp/parser.cc:32944
 #, fuzzy, gcc-internal-format
 msgid "expected jump-statement"
 msgstr "%s-lausetta odotettiin kohdassa %L"
 
-#: cp/parser.cc:14523
+#: cp/parser.cc:14517
 #, fuzzy, gcc-internal-format
 msgid "expected module-name"
 msgstr "odotettiin %<template%>"
 
-#: cp/parser.cc:14558
+#: cp/parser.cc:14552
 #, fuzzy, gcc-internal-format
 msgid "module-declaration not permitted in header-unit"
 msgstr "kaksoiskappale-rajapintaesittely luokalle %qE"
 
-#: cp/parser.cc:14583
+#: cp/parser.cc:14577
 #, gcc-internal-format
 msgid "private module fragment only permitted in purview of module interface or partition"
 msgstr ""
 
-#: cp/parser.cc:14588
+#: cp/parser.cc:14582
 #, fuzzy, gcc-internal-format
 msgid "private module fragment"
 msgstr "ylimääräinen %<volatile%>"
 
 #. Neither the first declaration, nor in a GMF.
-#: cp/parser.cc:14594
+#: cp/parser.cc:14588
 #, gcc-internal-format
 msgid "module-declaration only permitted as first declaration, or ending a global module fragment"
 msgstr ""
 
-#: cp/parser.cc:14631
+#: cp/parser.cc:14625
 #, gcc-internal-format
 msgid "post-module-declaration imports must be contiguous"
 msgstr ""
 
-#: cp/parser.cc:14634
+#: cp/parser.cc:14628
 #, gcc-internal-format
 msgid "perhaps insert a line break, or other disambiguation, to prevent this being considered a module control-line"
 msgstr ""
 
-#: cp/parser.cc:14642
+#: cp/parser.cc:14636
 #, fuzzy, gcc-internal-format
 msgid "import-declaration must be at global scope"
 msgstr "virtuaalinen ei-luokkafunktio %qs"
 
-#: cp/parser.cc:14655
+#: cp/parser.cc:14649
 #, fuzzy, gcc-internal-format
 msgid "import cannot appear directly in a linkage-specification"
 msgstr "%s: virheellinen kenttämääritys %s"
 
-#: cp/parser.cc:14663
+#: cp/parser.cc:14657
 #, gcc-internal-format
 msgid "post-module-declaration imports must not be include-translated"
 msgstr ""
 
-#: cp/parser.cc:14668
+#: cp/parser.cc:14662
 #, gcc-internal-format
 msgid "post-module-declaration imports must not be from header inclusion"
 msgstr ""
 
-#: cp/parser.cc:14688
+#: cp/parser.cc:14682
 #, gcc-internal-format
 msgid "%qE may only occur after a module interface declaration"
 msgstr ""
 
-#: cp/parser.cc:14696
+#: cp/parser.cc:14690
 #, fuzzy, gcc-internal-format
 msgid "%qE may only occur once in an export declaration"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:14717
+#: cp/parser.cc:14711
 #, gcc-internal-format
 msgid "%<export%> not part of following module-directive"
 msgstr ""
 
-#: cp/parser.cc:14804 cp/parser.cc:27000
+#: cp/parser.cc:14798 cp/parser.cc:26998
 #, gcc-internal-format
 msgid "extra %<;%>"
 msgstr "ylimääräinen %<;%>"
 
-#: cp/parser.cc:14862
+#: cp/parser.cc:14856
 #, fuzzy, gcc-internal-format
 msgid "attributes are not permitted in this position"
 msgstr "parametri esitelty %<auto%>:ksi"
 
-#: cp/parser.cc:14866
+#: cp/parser.cc:14860
 #, fuzzy, gcc-internal-format
 msgid "attributes may be inserted here"
 msgstr "attribuuttia ei huomioida"
 
-#: cp/parser.cc:15083
+#: cp/parser.cc:15077
 #, gcc-internal-format
 msgid "%<__label__%> not at the beginning of a block"
 msgstr "%<__label__%> ei ole lohkon alussa"
 
-#: cp/parser.cc:15316
+#: cp/parser.cc:15310
 #, gcc-internal-format
 msgid "non-variable %qD in declaration with more than one declarator with placeholder type"
 msgstr ""
 
-#: cp/parser.cc:15336
+#: cp/parser.cc:15330
 #, fuzzy, gcc-internal-format
 msgid "inconsistent deduction for %qT: %qT and then %qT"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: cp/parser.cc:15357
+#: cp/parser.cc:15351
 #, gcc-internal-format
 msgid "mixing declarations and function-definitions is forbidden"
 msgstr ""
 
-#: cp/parser.cc:15382
+#: cp/parser.cc:15376
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in a for-range-declaration"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:15437
+#: cp/parser.cc:15431
 #, fuzzy, gcc-internal-format
 msgid "initializer in range-based %<for%> loop"
 msgstr "tyhjä indeksiväli alustimessa"
 
-#: cp/parser.cc:15440
+#: cp/parser.cc:15434
 #, fuzzy, gcc-internal-format
 msgid "multiple declarations in range-based %<for%> loop"
 msgstr "tyhjä indeksiväli alustimessa"
 
-#: cp/parser.cc:15493
+#: cp/parser.cc:15487
 #, fuzzy, gcc-internal-format
 msgid "structured bindings only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:15545
+#: cp/parser.cc:15539
 #, fuzzy, gcc-internal-format
 msgid "empty structured binding declaration"
 msgstr "odotettiin iteraatioesittelyä tai -alustusta"
 
-#: cp/parser.cc:15563
+#: cp/parser.cc:15557
 #, fuzzy, gcc-internal-format
 msgid "invalid initializer for structured binding declaration"
 msgstr "puuttuva alustin jäsenelle %qD"
 
-#: cp/parser.cc:15732
+#: cp/parser.cc:15726
 #, fuzzy, gcc-internal-format
 msgid "%<friend%> used outside of class"
 msgstr "luokkamäärittelyä ei voi esitellä ystäväksi"
 
-#: cp/parser.cc:15771
+#: cp/parser.cc:15765
 #, fuzzy, gcc-internal-format
 msgid "the %<bool%> keyword is not allowed in a C++20 concept definition"
 msgstr "Attribuutti kohdassa %L ei ole sallittu TYPE-määrittelyssä"
 
-#: cp/parser.cc:15774
+#: cp/parser.cc:15768
 #, gcc-internal-format
 msgid "C++20 concept definition syntax is %<concept <name> = <expr>%>"
 msgstr ""
 
-#: cp/parser.cc:15841
+#: cp/parser.cc:15835
 #, gcc-internal-format
 msgid "%<auto%> changes meaning in C++11; please remove it"
 msgstr "%<auto%> saa uuden merkityksen C++11:ssä; poista se"
 
-#: cp/parser.cc:15877
+#: cp/parser.cc:15871
 #, fuzzy, gcc-internal-format
 #| msgid "%qD invalid in lambda"
 msgid "%qD invalid in condition"
 msgstr "%qD ei kelpaa lambdassa"
 
-#: cp/parser.cc:15884
+#: cp/parser.cc:15878
 #, gcc-internal-format
 msgid "%qD invalid in lambda"
 msgstr "%qD ei kelpaa lambdassa"
 
-#: cp/parser.cc:15965
+#: cp/parser.cc:15959
 #, fuzzy, gcc-internal-format
 msgid "type-specifier invalid in lambda"
 msgstr "virheellinen muunnostarkennin jälkiliitteessä: %c"
 
-#: cp/parser.cc:15977
+#: cp/parser.cc:15971
 #, gcc-internal-format
 msgid "standard attributes in middle of decl-specifiers"
 msgstr ""
 
-#: cp/parser.cc:15979
+#: cp/parser.cc:15973
 #, gcc-internal-format
 msgid "standard attributes must precede the decl-specifiers to apply to the declaration, or follow them to apply to the type"
 msgstr ""
 
-#: cp/parser.cc:15994
+#: cp/parser.cc:15988
 #, gcc-internal-format
 msgid "class definition may not be declared a friend"
 msgstr "luokkamäärittelyä ei voi esitellä ystäväksi"
 
-#: cp/parser.cc:16067 cp/parser.cc:27542
+#: cp/parser.cc:16061 cp/parser.cc:27540
 #, gcc-internal-format
 msgid "templates may not be %<virtual%>"
 msgstr "mallit eivät voi olla virtuaalisia"
 
-#: cp/parser.cc:16086
+#: cp/parser.cc:16080
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in explicit-specifier"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:16090
+#: cp/parser.cc:16084
 #, fuzzy, gcc-internal-format
 msgid "%<explicit(bool)%> only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:16154
+#: cp/parser.cc:16149
 #, fuzzy, gcc-internal-format
 msgid "invalid linkage-specification"
 msgstr "%s: virheellinen kenttämääritys %s"
 
-#: cp/parser.cc:16258
+#: cp/parser.cc:16253
 #, fuzzy, gcc-internal-format
 msgid "%<static_assert%> without a message only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:16460
+#: cp/parser.cc:16455
 #, fuzzy, gcc-internal-format
 msgid "%<decltype(auto)%> type specifier only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:16473
+#: cp/parser.cc:16468
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in %<decltype%> expressions"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:16646
+#: cp/parser.cc:16641
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in a conversion-type-id"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:16675
+#: cp/parser.cc:16670
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in conversion operator"
 msgstr "virheellinen %<auto%>:n käyttö muunnosoperaattorissa"
 
-#: cp/parser.cc:16679
+#: cp/parser.cc:16674
 #, fuzzy, gcc-internal-format
 msgid "use of %<auto%> in member template conversion operator can never be deduced"
 msgstr "epäkelpo %<restrict%>-avainsanan käyttö"
 
-#: cp/parser.cc:16763
+#: cp/parser.cc:16758
 #, fuzzy, gcc-internal-format
 msgid "only constructors take member initializers"
 msgstr "skalaarialustimen ympärillä on aaltosulkeet"
 
-#: cp/parser.cc:16790
+#: cp/parser.cc:16785
 #, fuzzy, gcc-internal-format
 msgid "cannot expand initializer for member %qD"
 msgstr "ei voi laajentaa alustinta jäsenelle %<%D%>"
 
-#: cp/parser.cc:16802 cp/pt.cc:26882
+#: cp/parser.cc:16797 cp/pt.cc:26924
 #, fuzzy, gcc-internal-format
 msgid "mem-initializer for %qD follows constructor delegation"
 msgstr "%q+D esitelty staattisena, edellinen esittely ei-staattinen"
 
-#: cp/parser.cc:16814 cp/pt.cc:26894
+#: cp/parser.cc:16809 cp/pt.cc:26936
 #, fuzzy, gcc-internal-format
 msgid "constructor delegation follows mem-initializer for %qD"
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: cp/parser.cc:16866
+#: cp/parser.cc:16861
 #, gcc-internal-format
 msgid "anachronistic old-style base class initializer"
 msgstr ""
 
-#: cp/parser.cc:16951
+#: cp/parser.cc:16946
 #, fuzzy, gcc-internal-format
 msgid "keyword %<typename%> not allowed in this context (a qualified member initializer is implicitly a type)"
 msgstr "%<[*]%> ei ole esittelyssä"
 
-#: cp/parser.cc:17352
+#: cp/parser.cc:17347
 #, gcc-internal-format
 msgid "unexpected keyword; remove space between quotes and suffix identifier"
 msgstr ""
 
-#: cp/parser.cc:17358
+#: cp/parser.cc:17353
 #, fuzzy, gcc-internal-format
 msgid "expected suffix identifier"
 msgstr "odotettiin tunnistetta tai %<(%>"
 
-#: cp/parser.cc:17367
+#: cp/parser.cc:17362
 #, fuzzy, gcc-internal-format
 msgid "expected empty string after %<operator%> keyword"
 msgstr "leveä merkkijonovakio %<asm%>-lauseessa"
 
-#: cp/parser.cc:17373
+#: cp/parser.cc:17368
 #, fuzzy, gcc-internal-format
 msgid "invalid encoding prefix in literal operator"
 msgstr "epäkelvot operandit binääriselle %s-operaatiolle"
 
-#: cp/parser.cc:17407
+#: cp/parser.cc:17402
 #, fuzzy, gcc-internal-format
 msgid "expected operator"
 msgstr "odotettiin %<operator%>"
 
-#: cp/parser.cc:17454
+#: cp/parser.cc:17449
 #, fuzzy, gcc-internal-format
 msgid "keyword %<export%> not implemented, and will be ignored"
 msgstr "Avainsana %s on tuntematon tai sillä ei vielä ole toteutusta"
 
-#: cp/parser.cc:17456
+#: cp/parser.cc:17451
 #, fuzzy, gcc-internal-format
 msgid "keyword %<export%> is deprecated, and is ignored"
 msgstr "Avainsana %s on tuntematon tai sillä ei vielä ole toteutusta"
 
-#: cp/parser.cc:17458
+#: cp/parser.cc:17453
 #, fuzzy, gcc-internal-format
 msgid "keyword %<export%> is enabled with %<-fmodules-ts%>"
 msgstr "PROCEDURE-lauseen kohdassa %C on oltava geneerisessä rajapinnassa"
 
-#: cp/parser.cc:17637
+#: cp/parser.cc:17632
 #, fuzzy, gcc-internal-format
 msgid "invalid constrained type parameter"
 msgstr "virheellinen parametrityyppi %qT"
 
-#: cp/parser.cc:17645
+#: cp/parser.cc:17640
 #, fuzzy, gcc-internal-format
 msgid "cv-qualified type parameter"
 msgstr "hajottimet eivät voi olla cv-määriteltyjä"
 
-#: cp/parser.cc:17792
+#: cp/parser.cc:17787
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %<auto%> in default template argument"
 msgstr "mallinimen %qE virheellinen käyttö ilman argumenttiluetteloa"
 
-#: cp/parser.cc:18028 cp/parser.cc:18114 cp/parser.cc:24947
+#: cp/parser.cc:18023 cp/parser.cc:18109 cp/parser.cc:24945
 #, fuzzy, gcc-internal-format
 msgid "template parameter pack %qD cannot have a default argument"
 msgstr "strftime-muotoilut eivät voi muotoilla argumentteja"
 
-#: cp/parser.cc:18032 cp/parser.cc:18118
+#: cp/parser.cc:18027 cp/parser.cc:18113
 #, fuzzy, gcc-internal-format
 msgid "template parameter packs cannot have default arguments"
 msgstr "strftime-muotoilut eivät voi muotoilla argumentteja"
 
-#: cp/parser.cc:18185
+#: cp/parser.cc:18180
 #, fuzzy, gcc-internal-format
 msgid "expected template-id"
 msgstr "odotettiin %<template%>"
 
-#: cp/parser.cc:18247
+#: cp/parser.cc:18242
 #, fuzzy, gcc-internal-format
 msgid "%<<::%> cannot begin a template-argument list"
 msgstr "jäsennysvirhe malliargumenttien luettelossa"
 
-#: cp/parser.cc:18251
+#: cp/parser.cc:18246
 #, gcc-internal-format
 msgid "%<<:%> is an alternate spelling for %<[%>. Insert whitespace between %<<%> and %<::%>"
 msgstr ""
 
-#: cp/parser.cc:18255
+#: cp/parser.cc:18250
 #, fuzzy, gcc-internal-format
 msgid "(if you use %<-fpermissive%> or %<-std=c++11%>, or %<-std=gnu++11%> G++ will accept your code)"
 msgstr "(G++ hyväksyy koodin -fpermissive-valitsimella)"
 
-#: cp/parser.cc:18285
+#: cp/parser.cc:18280
 #, fuzzy, gcc-internal-format
 msgid "invalid template-argument-list"
 msgstr "%qD:n malliargumentti käyttää paikallista tyyppiä %qT"
 
-#: cp/parser.cc:18286
+#: cp/parser.cc:18281
 #, gcc-internal-format
 msgid "function name as the left hand operand of %<<%> is ill-formed in C++20; wrap the function name in %<()%>"
 msgstr ""
 
-#: cp/parser.cc:18293
+#: cp/parser.cc:18288
 #, fuzzy, gcc-internal-format
 msgid "expected %<(%> after template-argument-list"
 msgstr "odotettiin %<template%>"
 
-#: cp/parser.cc:18407
+#: cp/parser.cc:18402
 #, gcc-internal-format
 msgid "parse error in template argument list"
 msgstr "jäsennysvirhe malliargumenttien luettelossa"
 
 #. The name does not name a template.
-#: cp/parser.cc:18492 cp/parser.cc:18680 cp/parser.cc:18870
+#: cp/parser.cc:18487 cp/parser.cc:18675 cp/parser.cc:18868
 #, fuzzy, gcc-internal-format
 msgid "expected template-name"
 msgstr "odotettiin %<template%>"
 
 #. Explain what went wrong.
-#: cp/parser.cc:18538
+#: cp/parser.cc:18533
 #, fuzzy, gcc-internal-format
 msgid "non-template %qD used as template"
 msgstr "%qD ei ole mallifunktio"
 
-#: cp/parser.cc:18540
+#: cp/parser.cc:18535
 #, gcc-internal-format
 msgid "use %<%T::template %D%> to indicate that it is a template"
 msgstr ""
 
-#: cp/parser.cc:18739
+#: cp/parser.cc:18737
 #, fuzzy, gcc-internal-format
 msgid "expected parameter pack before %<...%>"
 msgstr "ENUM-määrittelylause odotettiin ennen kohdetta %C"
 
-#: cp/parser.cc:18835 cp/parser.cc:18853 cp/parser.cc:19026
+#: cp/parser.cc:18833 cp/parser.cc:18851 cp/parser.cc:19024
 #, fuzzy, gcc-internal-format
 msgid "expected template-argument"
 msgstr "odotettiin %<template%>"
 
-#: cp/parser.cc:18993
+#: cp/parser.cc:18991
 #, fuzzy, gcc-internal-format
 msgid "invalid non-type template argument"
 msgstr "%qD:n malliargumentti käyttää paikallista tyyppiä %qT"
 
-#: cp/parser.cc:19135
+#: cp/parser.cc:19133
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation shall not use %<inline%> specifier"
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: cp/parser.cc:19139
+#: cp/parser.cc:19137
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation shall not use %<constexpr%> specifier"
 msgstr "muuttuja %qD esitelty %<inline%>:ksi"
 
-#: cp/parser.cc:19143
+#: cp/parser.cc:19141
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation shall not use %<consteval%> specifier"
 msgstr "muuttuja %qD esitelty %<inline%>:ksi"
 
-#: cp/parser.cc:19205
+#: cp/parser.cc:19203
 #, fuzzy, gcc-internal-format
 msgid "template specialization with C linkage"
 msgstr "malli C-linkityksellä"
 
-#: cp/parser.cc:19434
+#: cp/parser.cc:19432
 #, fuzzy, gcc-internal-format
 msgid "expected type specifier"
 msgstr "Odotettiin käyttöoikeustarkennetta kohdassa %C"
 
-#: cp/parser.cc:19626
+#: cp/parser.cc:19624
 #, fuzzy, gcc-internal-format
 msgid "use of %<auto%> in lambda parameter declaration only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:19632
+#: cp/parser.cc:19630
 #, fuzzy, gcc-internal-format
 msgid "use of %<auto%> in parameter declaration only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:19637
+#: cp/parser.cc:19635
 #, fuzzy, gcc-internal-format
 msgid "use of %<auto%> in parameter declaration only available with %<-std=c++20%> or %<-fconcepts%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:19794
+#: cp/parser.cc:19792
 #, fuzzy, gcc-internal-format
 msgid "expected template-id for type"
 msgstr "odotettiin %<template%>"
 
-#: cp/parser.cc:19924
+#: cp/parser.cc:19922
 #, fuzzy, gcc-internal-format
 msgid "expected type-name"
 msgstr "Odotettu nimi"
 
-#: cp/parser.cc:20036
+#: cp/parser.cc:20034
 #, fuzzy, gcc-internal-format
 msgid "%qE does not constrain a type"
 msgstr "%qE ei nimeä tyyppiä"
 
-#: cp/parser.cc:20037
+#: cp/parser.cc:20035
 #, fuzzy, gcc-internal-format
 msgid "concept defined here"
 msgstr "union määritelty täällä"
 
-#: cp/parser.cc:20060
+#: cp/parser.cc:20058
 #, fuzzy, gcc-internal-format
 msgid "expected %<auto%> or %<decltype(auto)%> after %qE"
 msgstr "odotettiin merkkijonoa ilmaisun %<#pragma message%> jälkeen"
 
-#: cp/parser.cc:20067
+#: cp/parser.cc:20065
 #, fuzzy, gcc-internal-format
 msgid "unexpected placeholder in constrained result type"
 msgstr "%qD ei ole %qD:n jäsen"
 
-#: cp/parser.cc:20310
+#: cp/parser.cc:20308
 #, gcc-internal-format
 msgid "elaborated-type-specifier for a scoped enum must not use the %qD keyword"
 msgstr ""
 
-#: cp/parser.cc:20386
+#: cp/parser.cc:20384
 #, fuzzy, gcc-internal-format
 msgid "%<template%> must follow a nested-name-specifier"
 msgstr "Odotettiin käyttöoikeustarkennetta kohdassa %C"
 
-#: cp/parser.cc:20548
+#: cp/parser.cc:20546
 #, gcc-internal-format
 msgid "declaration %qD does not declare anything"
 msgstr "esittely %qD ei esittele mitään"
 
-#: cp/parser.cc:20636
+#: cp/parser.cc:20634
 #, fuzzy, gcc-internal-format
 msgid "attributes ignored on uninstantiated type"
 msgstr "parametritaulukon esittelijän attribuutit jätetään huomiotta"
 
-#: cp/parser.cc:20642
+#: cp/parser.cc:20640
 #, fuzzy, gcc-internal-format
 msgid "attributes ignored on template instantiation"
 msgstr "parametritaulukon esittelijän attribuutit jätetään huomiotta"
 
-#: cp/parser.cc:20653
+#: cp/parser.cc:20651
 #, gcc-internal-format
 msgid "attributes ignored on elaborated-type-specifier that is not a forward declaration"
 msgstr ""
 
-#: cp/parser.cc:20794
+#: cp/parser.cc:20792
 #, fuzzy, gcc-internal-format
 msgid "%qD is an enumeration template"
 msgstr "%qD ei ole malli"
 
-#: cp/parser.cc:20805
+#: cp/parser.cc:20803
 #, fuzzy, gcc-internal-format
 msgid "%qD does not name an enumeration in %qT"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/parser.cc:20820
+#: cp/parser.cc:20818
 #, fuzzy, gcc-internal-format
 msgid "unnamed scoped enum is not allowed"
 msgstr "%<namespace%>-määrittely ei ole sallittu täällä"
 
-#: cp/parser.cc:20836
+#: cp/parser.cc:20834
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in enum-base"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:20881
+#: cp/parser.cc:20879
 #, fuzzy, gcc-internal-format
 msgid "expected %<;%> or %<{%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: cp/parser.cc:20925
+#: cp/parser.cc:20923
 #, fuzzy, gcc-internal-format
 msgid "cannot add an enumerator list to a template instantiation"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: cp/parser.cc:20939
+#: cp/parser.cc:20937
 #, fuzzy, gcc-internal-format
 msgid "nested name specifier %qT for enum declaration does not name a class or namespace"
 msgstr "ystäväesittely ei nimeä luokkaa tai funktiota"
 
-#: cp/parser.cc:20951 cp/parser.cc:26457
+#: cp/parser.cc:20949 cp/parser.cc:26455
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qD in namespace %qD which does not enclose %qD"
 msgstr "%J%qD:n edellinen esittely oli täällä"
 
-#: cp/parser.cc:20956 cp/parser.cc:26462
+#: cp/parser.cc:20954 cp/parser.cc:26460
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qD in %qD which does not enclose %qD"
 msgstr "esittely %qD ei esittele mitään"
 
-#: cp/parser.cc:20968 cp/parser.cc:26475
+#: cp/parser.cc:20966 cp/parser.cc:26473
 #, fuzzy, gcc-internal-format
 msgid "extra qualification not allowed"
 msgstr "ylimääräinen %<;%>"
 
-#: cp/parser.cc:21005
+#: cp/parser.cc:21003
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ forbids empty unnamed enum"
 msgstr "ISO C++ kieltää enumin lisäyksen"
 
-#: cp/parser.cc:21030
+#: cp/parser.cc:21028
 #, gcc-internal-format
 msgid "opaque-enum-specifier without name"
 msgstr ""
 
-#: cp/parser.cc:21033
+#: cp/parser.cc:21031
 #, gcc-internal-format
 msgid "opaque-enum-specifier must use a simple identifier"
 msgstr ""
 
-#: cp/parser.cc:21154
+#: cp/parser.cc:21152
 #, gcc-internal-format
 msgid "unexpanded parameter pack in enumerator in lambda"
 msgstr ""
 
-#: cp/parser.cc:21229
+#: cp/parser.cc:21227
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a namespace-name; did you mean %qs?"
 msgstr "%qD ei ole nimiavaruuden nimi"
 
-#: cp/parser.cc:21233
+#: cp/parser.cc:21231
 #, gcc-internal-format
 msgid "%qD is not a namespace-name"
 msgstr "%qD ei ole nimiavaruuden nimi"
 
-#: cp/parser.cc:21237
+#: cp/parser.cc:21235
 #, fuzzy, gcc-internal-format
 msgid "expected namespace-name"
 msgstr "odotettiin %<namespace%>"
 
-#: cp/parser.cc:21298
+#: cp/parser.cc:21296
 #, fuzzy, gcc-internal-format
 msgid "nested inline namespace definitions only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:21310
+#: cp/parser.cc:21308
 #, gcc-internal-format
 msgid "standard attributes on namespaces must precede the namespace name"
 msgstr ""
 
-#: cp/parser.cc:21329
+#: cp/parser.cc:21327
 #, fuzzy, gcc-internal-format
 msgid "nested namespace definitions only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:21339
+#: cp/parser.cc:21337
 #, fuzzy, gcc-internal-format
 msgid "nested namespace name required"
 msgstr "odotettiin %<namespace%>"
 
-#: cp/parser.cc:21344
+#: cp/parser.cc:21342
 #, fuzzy, gcc-internal-format
 msgid "namespace name required"
 msgstr "%qD on nimiavaruus"
 
-#: cp/parser.cc:21348
+#: cp/parser.cc:21346
 #, fuzzy, gcc-internal-format
 msgid "a nested namespace definition cannot have attributes"
 msgstr "%<namespace%>-määrittely ei ole sallittu täällä"
 
-#: cp/parser.cc:21351
+#: cp/parser.cc:21349
 #, fuzzy, gcc-internal-format
 msgid "a nested namespace definition cannot be inline"
 msgstr "%<namespace%>-määrittely ei ole sallittu täällä"
 
-#: cp/parser.cc:21358
+#: cp/parser.cc:21356
 #, gcc-internal-format
 msgid "namespace %qD entered"
 msgstr "siirryttiin %qD-nimiavaruuteen"
 
-#: cp/parser.cc:21413
+#: cp/parser.cc:21411
 #, gcc-internal-format
 msgid "%<namespace%> definition is not allowed here"
 msgstr "%<namespace%>-määrittely ei ole sallittu täällä"
 
-#: cp/parser.cc:21588
+#: cp/parser.cc:21586
 #, fuzzy, gcc-internal-format
 msgid "pack expansion in using-declaration only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:21603
+#: cp/parser.cc:21601
 #, fuzzy, gcc-internal-format
 msgid "a template-id may not appear in a using-declaration"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:21621
+#: cp/parser.cc:21619
 #, fuzzy, gcc-internal-format
 msgid "comma-separated list in using-declaration only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:21631
+#: cp/parser.cc:21629
 #, gcc-internal-format
 msgid "access declarations are deprecated in favour of using-declarations; suggestion: add the %<using%> keyword"
 msgstr ""
 
-#: cp/parser.cc:21696
+#: cp/parser.cc:21694
 #, fuzzy, gcc-internal-format
 msgid "opaque-enum-declaration here"
 msgstr "%q+D:lla on edellinen esittely täällä"
 
-#: cp/parser.cc:21766
+#: cp/parser.cc:21764
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in alias template declarations"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:21945
+#: cp/parser.cc:21943
 #, fuzzy, gcc-internal-format
 msgid "%<asm%> in %<constexpr%> function only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:21965 cp/parser.cc:21982 cp/parser.cc:21996
+#: cp/parser.cc:21963 cp/parser.cc:21980 cp/parser.cc:21994
 #, fuzzy, gcc-internal-format
 msgid "duplicate %<asm%> qualifier %qT"
 msgstr "cv-määreen kaksoiskappale"
 
-#: cp/parser.cc:21972
+#: cp/parser.cc:21970
 #, fuzzy, gcc-internal-format
 msgid "%<asm%> qualifier %qT ignored outside of function body"
 msgstr "tyyppimääritteet jätetään huomiotta funktion paluutyypissä"
 
-#: cp/parser.cc:22009
+#: cp/parser.cc:22007
 #, fuzzy, gcc-internal-format
 msgid "%qT is not an %<asm%> qualifier"
 msgstr "%qT ei ole nimiavaruus"
 
-#: cp/parser.cc:22025
+#: cp/parser.cc:22023
 #, fuzzy, gcc-internal-format
 msgid "%<asm%> qualifier outside of function body"
 msgstr "poistettu funktio %q+D"
 
-#: cp/parser.cc:22253
+#: cp/parser.cc:22251
 #, fuzzy, gcc-internal-format
 msgid "empty parentheses were disambiguated as a function declaration"
 msgstr "parametrien nimet (ilman tyyppejä) funktion esittelyssä"
 
-#: cp/parser.cc:22264
+#: cp/parser.cc:22262
 #, fuzzy, gcc-internal-format
 msgid "remove parentheses to default-initialize a variable"
 msgstr "taulukkoindeksi ei-taulukkoalustimessa"
 
-#: cp/parser.cc:22269
+#: cp/parser.cc:22267
 #, gcc-internal-format
 msgid "or replace parentheses with braces to aggregate-initialize a variable"
 msgstr ""
 
-#: cp/parser.cc:22272
+#: cp/parser.cc:22270
 #, gcc-internal-format
 msgid "or replace parentheses with braces to value-initialize a variable"
 msgstr ""
 
-#: cp/parser.cc:22289 cp/parser.cc:22314
+#: cp/parser.cc:22287 cp/parser.cc:22312
 #, fuzzy, gcc-internal-format
 msgid "parentheses were disambiguated as a function declaration"
 msgstr "parametrien nimet (ilman tyyppejä) funktion esittelyssä"
 
-#: cp/parser.cc:22301 cp/parser.cc:22322
+#: cp/parser.cc:22299 cp/parser.cc:22320
 #, gcc-internal-format
 msgid "replace parentheses with braces to declare a variable"
 msgstr ""
 
-#: cp/parser.cc:22308
+#: cp/parser.cc:22306
 #, fuzzy, gcc-internal-format
 msgid "add parentheses to declare a variable"
 msgstr "funktio %qD esitelty uudelleen muuttujana"
 
-#: cp/parser.cc:22555
+#: cp/parser.cc:22553
 #, fuzzy, gcc-internal-format
 msgid "a function-definition is not allowed here"
 msgstr "%<namespace%>-määrittely ei ole sallittu täällä"
 
-#: cp/parser.cc:22566
+#: cp/parser.cc:22564
 #, fuzzy, gcc-internal-format
 msgid "an %<asm%> specification is not allowed on a function-definition"
 msgstr "%Jvanhanmallinen funktiomäärittely"
 
-#: cp/parser.cc:22570
+#: cp/parser.cc:22568
 #, fuzzy, gcc-internal-format
 msgid "attributes are not allowed on a function-definition"
 msgstr "Ristiriita funktioargumentin attribuuteissa kohdassa %C"
 
-#: cp/parser.cc:22621
+#: cp/parser.cc:22619
 #, fuzzy, gcc-internal-format
 msgid "expected constructor, destructor, or type conversion"
 msgstr "Varoita kun kaikki muodostimet ja hajottimet ovat yksityisiä"
 
-#: cp/parser.cc:22742
+#: cp/parser.cc:22740
 #, fuzzy, gcc-internal-format
 msgid "initializer provided for function"
 msgstr "epäkelpo alustin"
 
-#: cp/parser.cc:22784
+#: cp/parser.cc:22782
 #, fuzzy, gcc-internal-format
 msgid "attributes after parenthesized initializer ignored"
 msgstr "taulukkoindeksi ei-taulukkoalustimessa"
 
-#: cp/parser.cc:22798
+#: cp/parser.cc:22796
 #, fuzzy, gcc-internal-format
 msgid "non-function %qD declared as implicit template"
 msgstr "%Jsisäänrakennettu funktio %qD esitelty ei-funktiona"
 
-#: cp/parser.cc:23301
+#: cp/parser.cc:23299
 #, fuzzy, gcc-internal-format
 msgid "array bound is not an integer constant"
 msgstr "taulukkoindeksi alustimessa ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/parser.cc:23427
+#: cp/parser.cc:23425
 #, fuzzy, gcc-internal-format
 msgid "cannot define member of dependent typedef %qT"
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: cp/parser.cc:23431
+#: cp/parser.cc:23429
 #, gcc-internal-format
 msgid "%<%T::%E%> is not a type"
 msgstr "%<%T::%E%> ei ole tyyppi"
@@ -57741,234 +57942,234 @@ msgstr "%<%T::%E%> ei ole tyyppi"
 #. here because we do not have enough
 #. information about its original syntactic
 #. form.
-#: cp/parser.cc:23460
+#: cp/parser.cc:23458
 #, fuzzy, gcc-internal-format
 msgid "invalid declarator"
 msgstr "Varoita implisiittisistä funktioesittelyistä"
 
-#: cp/parser.cc:23468
+#: cp/parser.cc:23466
 #, gcc-internal-format
 msgid "invalid use of constructor as a template"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: cp/parser.cc:23470
+#: cp/parser.cc:23468
 #, gcc-internal-format
 msgid "use %<%T::%D%> instead of %<%T::%D%> to name the constructor in a qualified name"
 msgstr ""
 
 #. But declarations with qualified-ids can't appear in a
 #. function.
-#: cp/parser.cc:23585
+#: cp/parser.cc:23583
 #, fuzzy, gcc-internal-format
 msgid "qualified-id in declaration"
 msgstr "id="
 
-#: cp/parser.cc:23610
+#: cp/parser.cc:23608
 #, fuzzy, gcc-internal-format
 msgid "expected declarator"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: cp/parser.cc:23731
+#: cp/parser.cc:23729
 #, gcc-internal-format
 msgid "%qD is a namespace"
 msgstr "%qD on nimiavaruus"
 
-#: cp/parser.cc:23733
+#: cp/parser.cc:23731
 #, fuzzy, gcc-internal-format
 msgid "cannot form pointer to member of non-class %q#T"
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: cp/parser.cc:23754
+#: cp/parser.cc:23752
 #, fuzzy, gcc-internal-format
 msgid "expected ptr-operator"
 msgstr "odotettiin %<operator%>"
 
-#: cp/parser.cc:23815
+#: cp/parser.cc:23813
 #, gcc-internal-format
 msgid "duplicate cv-qualifier"
 msgstr "cv-määreen kaksoiskappale"
 
-#: cp/parser.cc:23869
+#: cp/parser.cc:23867
 #, fuzzy, gcc-internal-format
 msgid "multiple ref-qualifiers"
 msgstr "ristiriitaiset tyyppimääreet %q+D:lle"
 
-#: cp/parser.cc:23906
+#: cp/parser.cc:23904
 #, fuzzy, gcc-internal-format
 msgid "%qE requires %<-fgnu-tm%>"
 msgstr "-m64 vaatii PowerPC64-suorittimen"
 
-#: cp/parser.cc:23964
+#: cp/parser.cc:23962
 #, fuzzy, gcc-internal-format
 msgid "duplicate virt-specifier"
 msgstr "Kaksoiskappale pääsy-tarkenne kohdassa %C"
 
-#: cp/parser.cc:24226
+#: cp/parser.cc:24224
 #, fuzzy, gcc-internal-format
 msgid "missing template arguments after %qT"
 msgstr "%qE ei ole kelvollinen malliargumentti tyypille %qT, koska se ei ole objekti ulkoisella linkityksellä"
 
-#: cp/parser.cc:24232
+#: cp/parser.cc:24230
 #, fuzzy, gcc-internal-format
 msgid "%qT not permitted in template argument"
 msgstr "täsmäämättömät argumentit"
 
-#: cp/parser.cc:24235 cp/typeck2.cc:353 cp/typeck2.cc:400 cp/typeck2.cc:2319
+#: cp/parser.cc:24233 cp/typeck2.cc:353 cp/typeck2.cc:400 cp/typeck2.cc:2330
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %qT"
 msgstr "virheellinen parametrityyppi %qT"
 
-#: cp/parser.cc:24262
+#: cp/parser.cc:24260
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in template arguments"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:24267
+#: cp/parser.cc:24265
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %<auto%> in template argument"
 msgstr "virheellinen %<auto%>:n käyttö muunnosoperaattorissa"
 
-#: cp/parser.cc:24373
+#: cp/parser.cc:24371
 #, fuzzy, gcc-internal-format
 msgid "expected type-specifier"
 msgstr "Odotettiin käyttöoikeustarkennetta kohdassa %C"
 
-#: cp/parser.cc:24654
+#: cp/parser.cc:24652
 #, gcc-internal-format
 msgid "expected %<,%> or %<...%>"
 msgstr "odotettiin %<,%> tai %<...%>"
 
-#: cp/parser.cc:24732
+#: cp/parser.cc:24730
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in parameter types"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:24931
+#: cp/parser.cc:24929
 #, fuzzy, gcc-internal-format
 msgid "default arguments are only permitted for function parameters"
 msgstr "oletusargumentti määritelty lambda-parametrille"
 
-#: cp/parser.cc:24949
+#: cp/parser.cc:24947
 #, fuzzy, gcc-internal-format
 msgid "parameter pack %qD cannot have a default argument"
 msgstr "%<operator new%>:n ensimmäisellä parametrilla ei voi olla oletusargumenttia"
 
-#: cp/parser.cc:24955
+#: cp/parser.cc:24953
 #, fuzzy, gcc-internal-format
 msgid "template parameter pack cannot have a default argument"
 msgstr "%<operator new%>:n ensimmäisellä parametrilla ei voi olla oletusargumenttia"
 
-#: cp/parser.cc:24957
+#: cp/parser.cc:24955
 #, fuzzy, gcc-internal-format
 msgid "parameter pack cannot have a default argument"
 msgstr "%<operator new%>:n ensimmäisellä parametrilla ei voi olla oletusargumenttia"
 
-#: cp/parser.cc:25087
+#: cp/parser.cc:25085
 #, fuzzy, gcc-internal-format
 msgid "function-try-block body of %<constexpr%> constructor only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:25091
+#: cp/parser.cc:25089
 #, fuzzy, gcc-internal-format
 msgid "function-try-block body of %<constexpr%> function only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:25415
+#: cp/parser.cc:25413
 #, fuzzy, gcc-internal-format
 msgid "C++ designated initializers only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:25435
+#: cp/parser.cc:25433
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ does not allow GNU designated initializers"
 msgstr "ISO C ei salli ylimääräisiä %<;%>-merkkejä funktion ulkopuolella"
 
-#: cp/parser.cc:25473
+#: cp/parser.cc:25471
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ does not allow C99 designated initializers"
 msgstr "ISO C90 ei tue joustavia taulukkojäseniä"
 
-#: cp/parser.cc:25487
+#: cp/parser.cc:25485
 #, gcc-internal-format
 msgid "either all initializer clauses should be designated or none of them should be"
 msgstr ""
 
-#: cp/parser.cc:25512
+#: cp/parser.cc:25510
 #, fuzzy, gcc-internal-format
 msgid "%<...%> not allowed in designated initializer list"
 msgstr "ISO C ei salli ylimääräisiä %<;%>-merkkejä funktion ulkopuolella"
 
-#: cp/parser.cc:25563
+#: cp/parser.cc:25561
 #, fuzzy, gcc-internal-format
 msgid "%<.%s%> designator used multiple times in the same initializer list"
 msgstr "ISO C ei salli ylimääräisiä %<;%>-merkkejä funktion ulkopuolella"
 
-#: cp/parser.cc:25619 cp/parser.cc:25756
+#: cp/parser.cc:25617 cp/parser.cc:25754
 #, fuzzy, gcc-internal-format
 msgid "expected class-name"
 msgstr "odotettiin luokan nimeä"
 
-#: cp/parser.cc:25995
+#: cp/parser.cc:25993
 #, fuzzy, gcc-internal-format
 msgid "expected %<;%> after class definition"
 msgstr "Odotettiin :: TYPE-määrittelyssä kohdassa %C"
 
-#: cp/parser.cc:25998
+#: cp/parser.cc:25996
 #, fuzzy, gcc-internal-format
 msgid "expected %<;%> after struct definition"
 msgstr "Odotettiin :: TYPE-määrittelyssä kohdassa %C"
 
-#: cp/parser.cc:26001
+#: cp/parser.cc:25999
 #, fuzzy, gcc-internal-format
 msgid "expected %<;%> after union definition"
 msgstr "Odotettiin :: TYPE-määrittelyssä kohdassa %C"
 
-#: cp/parser.cc:26399
+#: cp/parser.cc:26397
 #, fuzzy, gcc-internal-format
 msgid "expected %<{%> or %<:%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: cp/parser.cc:26410
+#: cp/parser.cc:26408
 #, fuzzy, gcc-internal-format
 msgid "cannot specify %<override%> for a class"
 msgstr "ei löydetä luokkaa %qE"
 
-#: cp/parser.cc:26418
+#: cp/parser.cc:26416
 #, fuzzy, gcc-internal-format
 msgid "global qualification of class name is invalid"
 msgstr "virheellinen luokan nimi %qD:n esittelyssä"
 
-#: cp/parser.cc:26425
+#: cp/parser.cc:26423
 #, fuzzy, gcc-internal-format
 msgid "qualified name does not name a class"
 msgstr "ystäväesittely ei nimeä luokkaa tai funktiota"
 
-#: cp/parser.cc:26437
+#: cp/parser.cc:26435
 #, fuzzy, gcc-internal-format
 msgid "keyword %<template%> not allowed in class-head-name"
 msgstr "%<[*]%> ei ole esittelyssä"
 
-#: cp/parser.cc:26443
+#: cp/parser.cc:26441
 #, gcc-internal-format
 msgid "invalid class name in declaration of %qD"
 msgstr "virheellinen luokan nimi %qD:n esittelyssä"
 
-#: cp/parser.cc:26497
+#: cp/parser.cc:26495
 #, fuzzy, gcc-internal-format
 msgid "an explicit specialization must be preceded by %<template <>%>"
 msgstr "%qs alustettu ja esitelty %<extern%>-avainsanalla"
 
-#: cp/parser.cc:26529
+#: cp/parser.cc:26527
 #, gcc-internal-format
 msgid "function template %qD redeclared as a class template"
 msgstr "funktiomalli %qD esitelty uudelleen luokkamallina"
 
-#: cp/parser.cc:26562
+#: cp/parser.cc:26560
 #, fuzzy, gcc-internal-format
 msgid "could not resolve typename type"
 msgstr "%s: ei voida avata PCH-tiedostoa: %m\n"
 
-#: cp/parser.cc:26626
+#: cp/parser.cc:26624
 #, fuzzy, gcc-internal-format
 msgid "previous definition of %q#T"
 msgstr "edellinen %q+#T:n määrittely"
@@ -57976,229 +58177,229 @@ msgstr "edellinen %q+#T:n määrittely"
 #. In a lambda this should work, but doesn't currently.
 #. We're in a lambda, but it isn't the innermost class.
 #. This should work, but currently doesn't.
-#: cp/parser.cc:26640 cp/pt.cc:4331
+#: cp/parser.cc:26638 cp/pt.cc:4333
 #, gcc-internal-format
 msgid "unexpanded parameter pack in local class in lambda"
 msgstr ""
 
-#: cp/parser.cc:26740 cp/parser.cc:32941
+#: cp/parser.cc:26738 cp/parser.cc:32947
 #, fuzzy, gcc-internal-format
 msgid "expected class-key"
 msgstr "odotettiin %<class%>"
 
-#: cp/parser.cc:26765
+#: cp/parser.cc:26763
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ forbids typename key in template template parameter; use %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:26769
+#: cp/parser.cc:26767
 #, fuzzy, gcc-internal-format
 msgid "expected %<class%> or %<typename%>"
 msgstr "tallennusluokka annettu typenamelle"
 
-#: cp/parser.cc:27019
+#: cp/parser.cc:27017
 #, gcc-internal-format
 msgid "in C++03 a class-key must be used when declaring a friend"
 msgstr ""
 
-#: cp/parser.cc:27050
+#: cp/parser.cc:27048
 #, gcc-internal-format
 msgid "friend declaration does not name a class or function"
 msgstr "ystäväesittely ei nimeä luokkaa tai funktiota"
 
-#: cp/parser.cc:27068
+#: cp/parser.cc:27066
 #, gcc-internal-format
 msgid "a storage class on an anonymous aggregate in class scope is not allowed"
 msgstr ""
 
-#: cp/parser.cc:27170
+#: cp/parser.cc:27168
 #, fuzzy, gcc-internal-format
 msgid "default member initializers for bit-fields only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:27177
+#: cp/parser.cc:27175
 #, fuzzy, gcc-internal-format
 msgid "default member initializer for unnamed bit-field"
 msgstr "tallennusluokka annettu parametrille %qs"
 
-#: cp/parser.cc:27190
+#: cp/parser.cc:27188
 #, gcc-internal-format
 msgid "ISO C++ allows bit-field attributes only before the %<:%> token"
 msgstr "ISO C++ sallii bittikenttien määritteet vain ennen %<:%>-merkkiä"
 
-#: cp/parser.cc:27352
+#: cp/parser.cc:27350
 #, gcc-internal-format
 msgid "bit-field %qD has non-integral type %qT"
 msgstr "bittikentällä %qD on ei-kokonaislukutyyppi %qT"
 
-#: cp/parser.cc:27380
+#: cp/parser.cc:27378
 #, gcc-internal-format
 msgid "pure-specifier on function-definition"
 msgstr "pure-tarkenne funktiomäärittelyssä"
 
-#: cp/parser.cc:27400
+#: cp/parser.cc:27398
 #, gcc-internal-format
 msgid "extra %<;%> after in-class function definition"
 msgstr "ylimääräinen %<;%> luokansisäisen funktiomäärittelyn perässä"
 
-#: cp/parser.cc:27447
+#: cp/parser.cc:27445
 #, gcc-internal-format
 msgid "stray %<,%> at end of member declaration"
 msgstr "ylimääräinen %<,%> jäsenesittelyn lopussa"
 
-#: cp/parser.cc:27461
+#: cp/parser.cc:27459
 #, fuzzy, gcc-internal-format
 msgid "expected %<;%> at end of member declaration"
 msgstr "ylimääräinen %<,%> jäsenesittelyn lopussa"
 
-#: cp/parser.cc:27536
+#: cp/parser.cc:27534
 #, fuzzy, gcc-internal-format
 msgid "invalid pure specifier (only %<= 0%> is allowed)"
 msgstr "epäkelpo osoitintila %qs"
 
-#: cp/parser.cc:27571
+#: cp/parser.cc:27569
 #, fuzzy, gcc-internal-format
 msgid "a brace-enclosed initializer is not allowed here"
 msgstr "skalaarialustimen ympärillä on aaltosulkeet"
 
-#: cp/parser.cc:27701
+#: cp/parser.cc:27699
 #, fuzzy, gcc-internal-format
 msgid "%<virtual%> specified more than once in base-specifier"
 msgstr "varoitus: lähdetiedosto %s annettu useammin kuin kerran"
 
-#: cp/parser.cc:27721
+#: cp/parser.cc:27719
 #, fuzzy, gcc-internal-format
 msgid "more than one access specifier in base-specifier"
 msgstr "varoitus: lähdetiedosto %s annettu useammin kuin kerran"
 
-#: cp/parser.cc:27745
+#: cp/parser.cc:27743
 #, fuzzy, gcc-internal-format
 msgid "keyword %<typename%> not allowed outside of templates"
 msgstr "%<[*]%> ei ole esittelyssä"
 
-#: cp/parser.cc:27748
+#: cp/parser.cc:27746
 #, fuzzy, gcc-internal-format
 msgid "keyword %<typename%> not allowed in this context (the base class is implicitly a type)"
 msgstr "%<[*]%> ei ole esittelyssä"
 
-#: cp/parser.cc:27948 cp/parser.cc:28042
+#: cp/parser.cc:27946 cp/parser.cc:28040
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in an exception-specification"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:28050
+#: cp/parser.cc:28048
 #, gcc-internal-format
 msgid "ISO C++17 does not allow dynamic exception specifications"
 msgstr "ISO C++17 ei salli dynaamisia poikkeusmäärittelyitä"
 
-#: cp/parser.cc:28056
+#: cp/parser.cc:28054
 #, gcc-internal-format
 msgid "dynamic exception specifications are deprecated in C++11"
 msgstr "dynaamiset poikkeusmäärittelyt ovat vanhentuneita C++11:ssä"
 
-#: cp/parser.cc:28100
+#: cp/parser.cc:28098
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %<auto%> in exception-specification"
 msgstr "virheellinen %<auto%>:n käyttö muunnosoperaattorissa"
 
-#: cp/parser.cc:28141
+#: cp/parser.cc:28139
 #, fuzzy, gcc-internal-format
 msgid "%<try%> in %<constexpr%> function only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:28253
+#: cp/parser.cc:28251
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in exception-declarations"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:28802
+#: cp/parser.cc:28800
 #, fuzzy, gcc-internal-format
 msgid "expected OpenMP directive name"
 msgstr "odotettiin luokan nimeä"
 
-#: cp/parser.cc:28811
+#: cp/parser.cc:28809
 #, fuzzy, gcc-internal-format
 #| msgid "expected %qT but argument is of type %qT"
 msgid "expected attribute argument as balanced token sequence"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: cp/parser.cc:28856
+#: cp/parser.cc:28854
 #, fuzzy, gcc-internal-format
 msgid "expected %<directive%> or %<sequence%>"
 msgstr "odotettiin %<none%> tai %<shared%>"
 
-#: cp/parser.cc:28955
+#: cp/parser.cc:28953
 #, fuzzy, gcc-internal-format
 msgid "attribute using prefix used together with scoped attribute token"
 msgstr "%qE-attribuutti on ristiriidassa attribuutin %s kanssa"
 
-#: cp/parser.cc:28969
+#: cp/parser.cc:28967
 #, fuzzy, gcc-internal-format
 msgid "expected an identifier for the attribute name"
 msgstr "vakio tai tunniste odotettu"
 
-#: cp/parser.cc:29020
+#: cp/parser.cc:29018
 #, fuzzy, gcc-internal-format
 msgid "%<omp::%E%> attribute requires argument"
 msgstr "%qE-attribuutti tarvitsee prototyyppejä, joilla nimettyjä argumentteja"
 
 #. e.g. [[attr()]].
-#: cp/parser.cc:29088
+#: cp/parser.cc:29086
 #, gcc-internal-format
 msgid "parentheses must be omitted if %qE attribute argument list is empty"
 msgstr ""
 
-#: cp/parser.cc:29123
+#: cp/parser.cc:29121
 #, fuzzy, gcc-internal-format
 msgid "attribute %qs specified multiple times"
 msgstr "oletusargumentti määritelty lambda-parametrille"
 
-#: cp/parser.cc:29165
+#: cp/parser.cc:29163
 #, fuzzy, gcc-internal-format
 msgid "expected attribute before %<...%>"
 msgstr "ENUM-määrittelylause odotettiin ennen kohdetta %C"
 
-#: cp/parser.cc:29225
+#: cp/parser.cc:29223
 #, fuzzy, gcc-internal-format
 msgid "attribute using prefix only available with %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/parser.cc:29568 cp/parser.cc:29577
+#: cp/parser.cc:29566 cp/parser.cc:29575
 #, fuzzy, gcc-internal-format
 msgid "expression must be enclosed in parentheses"
 msgstr "taulukon koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/parser.cc:29923
+#: cp/parser.cc:29921
 #, gcc-internal-format
 msgid "missing additional %<requires%> to start a requires-expression"
 msgstr ""
 
-#: cp/parser.cc:30152
+#: cp/parser.cc:30150
 #, gcc-internal-format
 msgid "testing if a concept-id is a valid expression; add %<requires%> to check satisfaction"
 msgstr ""
 
-#: cp/parser.cc:30290
+#: cp/parser.cc:30288
 #, fuzzy, gcc-internal-format
 msgid "result type is not a plain type-constraint"
 msgstr "haluttu sijainti ei ole kokonaislukuvakio"
 
-#: cp/parser.cc:30298
+#: cp/parser.cc:30296
 #, fuzzy, gcc-internal-format
 msgid "return-type-requirement is not a type-constraint"
 msgstr "haluttu sijainti ei ole kokonaislukuvakio"
 
-#: cp/parser.cc:30793
+#: cp/parser.cc:30791
 #, gcc-internal-format
 msgid "specializing member %<%T::%E%> requires %<template<>%> syntax"
 msgstr ""
 
-#: cp/parser.cc:30798
+#: cp/parser.cc:30796
 #, gcc-internal-format
 msgid "invalid declaration of %<%T::%E%>"
 msgstr "virheellinen %<%T::%E%>:n esittely"
 
-#: cp/parser.cc:30802
+#: cp/parser.cc:30800
 #, fuzzy, gcc-internal-format
 msgid "too few template-parameter-lists"
 msgstr "%J%qD:n edellinen esittely oli täällä"
@@ -58207,570 +58408,570 @@ msgstr "%J%qD:n edellinen esittely oli täällä"
 #. something like:
 #.
 #. template <class T> template <class U> void S::f();
-#: cp/parser.cc:30809
+#: cp/parser.cc:30807
 #, fuzzy, gcc-internal-format
 msgid "too many template-parameter-lists"
 msgstr "%J%qD:n edellinen esittely oli täällä"
 
-#: cp/parser.cc:31207
+#: cp/parser.cc:31205
 #, gcc-internal-format
 msgid "named return values are no longer supported"
 msgstr "nimetyt paluuarvot eivät ole enää tuettuja"
 
-#: cp/parser.cc:31378
+#: cp/parser.cc:31376
 #, gcc-internal-format
 msgid "ISO C++ did not adopt string literal operator templates taking an argument pack of characters"
 msgstr ""
 
-#: cp/parser.cc:31387
+#: cp/parser.cc:31385
 #, gcc-internal-format
 msgid "literal operator template %qD has invalid parameter list; expected non-type template parameter pack %<<char...>%> or single non-type parameter of class type"
 msgstr ""
 
-#: cp/parser.cc:31393
+#: cp/parser.cc:31391
 #, gcc-internal-format
 msgid "literal operator template %qD has invalid parameter list; expected non-type template parameter pack %<<char...>%>"
 msgstr ""
 
-#: cp/parser.cc:31493
+#: cp/parser.cc:31498
 #, gcc-internal-format
 msgid "template-introductions are not part of C++20 concepts; use %qs to enable"
 msgstr ""
 
-#: cp/parser.cc:31503
+#: cp/parser.cc:31508
 #, fuzzy, gcc-internal-format
 msgid "no matching concept for template-introduction"
 msgstr "lopetusalkio puuttuu funktiokutsusta"
 
-#: cp/parser.cc:31526
+#: cp/parser.cc:31531
 #, fuzzy, gcc-internal-format
 msgid "invalid declaration of member template in local class"
 msgstr "malliesittelylle %q+D"
 
-#: cp/parser.cc:31535
+#: cp/parser.cc:31540
 #, gcc-internal-format
 msgid "template with C linkage"
 msgstr "malli C-linkityksellä"
 
-#: cp/parser.cc:31555
+#: cp/parser.cc:31560
 #, fuzzy, gcc-internal-format
 msgid "invalid explicit specialization"
 msgstr "    Ei ilmaistuja epäjäseniä\n"
 
-#: cp/parser.cc:31667
+#: cp/parser.cc:31672
 #, fuzzy, gcc-internal-format
 msgid "template declaration of %<typedef%>"
 msgstr "malliesittelylle %q+D"
 
-#: cp/parser.cc:31718
+#: cp/parser.cc:31723
 #, fuzzy, gcc-internal-format
 msgid "a class template declaration must not declare anything else"
 msgstr "esittely ei esittele mitään"
 
-#: cp/parser.cc:31770
+#: cp/parser.cc:31775
 #, fuzzy, gcc-internal-format
 msgid "explicit template specialization cannot have a storage class"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: cp/parser.cc:32072
+#: cp/parser.cc:32077
 #, fuzzy, gcc-internal-format
 msgid "%<>>%> should be %<> >%> within a nested template argument list"
 msgstr "mallinimen %qE virheellinen käyttö ilman argumenttiluetteloa"
 
-#: cp/parser.cc:32085
+#: cp/parser.cc:32090
 #, fuzzy, gcc-internal-format
 msgid "spurious %<>>%>, use %<>%> to terminate a template argument list"
 msgstr "mallinimen %qE virheellinen käyttö ilman argumenttiluetteloa"
 
-#: cp/parser.cc:32393
+#: cp/parser.cc:32399
 #, gcc-internal-format
 msgid "%<sizeof...%> argument must be surrounded by parentheses"
 msgstr "%<sizeof...%>-argumentti on ympäröitävä sulkeilla"
 
-#: cp/parser.cc:32548
+#: cp/parser.cc:32554
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %qD in linkage specification"
 msgstr "virheellinen hajottimen %qD käyttö tyyppinä"
 
-#: cp/parser.cc:32563
+#: cp/parser.cc:32569
 #, fuzzy, gcc-internal-format
 msgid "%<__thread%> before %qD"
 msgstr "käytetty %<__thread%> ennen %<extern%>:a"
 
-#: cp/parser.cc:32698
+#: cp/parser.cc:32704
 #, gcc-internal-format
 msgid "ISO C++ 1998 does not support %<long long%>"
 msgstr "ISO C++ 1998 ei tue %<long long%> -tyyppiä"
 
-#: cp/parser.cc:32709
+#: cp/parser.cc:32715
 #, fuzzy, gcc-internal-format
 msgid "both %<__thread%> and %<thread_local%> specified"
 msgstr "sekä %<_Sat%> että %<char%> esittelymääritteissä"
 
-#: cp/parser.cc:32714
+#: cp/parser.cc:32720
 #, fuzzy, gcc-internal-format
 msgid "duplicate %qD"
 msgstr "ylimääräinen %<const%>"
 
-#: cp/parser.cc:32740
+#: cp/parser.cc:32746
 #, gcc-internal-format
 msgid "duplicate %qs"
 msgstr "kaksois-%qs"
 
-#: cp/parser.cc:32792
+#: cp/parser.cc:32798
 #, gcc-internal-format
 msgid "expected %<new%>"
 msgstr "odotettiin %<new%>"
 
-#: cp/parser.cc:32795
+#: cp/parser.cc:32801
 #, gcc-internal-format
 msgid "expected %<delete%>"
 msgstr "odotettiin %<delete%>"
 
-#: cp/parser.cc:32798
+#: cp/parser.cc:32804
 #, gcc-internal-format
 msgid "expected %<return%>"
 msgstr "odotettiin %<return%>"
 
-#: cp/parser.cc:32804
+#: cp/parser.cc:32810
 #, gcc-internal-format
 msgid "expected %<extern%>"
 msgstr "odotettiin %<extern%>"
 
-#: cp/parser.cc:32807
+#: cp/parser.cc:32813
 #, gcc-internal-format
 msgid "expected %<static_assert%>"
 msgstr "odotettiin %<static_assert%>"
 
-#: cp/parser.cc:32810
+#: cp/parser.cc:32816
 #, gcc-internal-format
 msgid "expected %<decltype%>"
 msgstr "odotettiin %<decltype%>"
 
-#: cp/parser.cc:32813
+#: cp/parser.cc:32819
 #, gcc-internal-format
 msgid "expected %<operator%>"
 msgstr "odotettiin %<operator%>"
 
-#: cp/parser.cc:32816
+#: cp/parser.cc:32822
 #, gcc-internal-format
 msgid "expected %<class%>"
 msgstr "odotettiin %<class%>"
 
-#: cp/parser.cc:32819
+#: cp/parser.cc:32825
 #, gcc-internal-format
 msgid "expected %<template%>"
 msgstr "odotettiin %<template%>"
 
-#: cp/parser.cc:32822
+#: cp/parser.cc:32828
 #, gcc-internal-format
 msgid "expected %<namespace%>"
 msgstr "odotettiin %<namespace%>"
 
 # XXXXXXX
-#: cp/parser.cc:32825
+#: cp/parser.cc:32831
 #, fuzzy, gcc-internal-format
 msgid "expected %<using%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: cp/parser.cc:32828
+#: cp/parser.cc:32834
 #, fuzzy, gcc-internal-format
 msgid "expected %<asm%>"
 msgstr "odotettiin %<=%>, %<,%>, %<;%>, %<asm%> tai %<__attribute__%>"
 
-#: cp/parser.cc:32831
+#: cp/parser.cc:32837
 #, fuzzy, gcc-internal-format
 msgid "expected %<try%>"
 msgstr "”)” oli odotus"
 
-#: cp/parser.cc:32834
+#: cp/parser.cc:32840
 #, fuzzy, gcc-internal-format
 msgid "expected %<catch%>"
 msgstr "  siirtyy catch-lohkoon"
 
-#: cp/parser.cc:32837
+#: cp/parser.cc:32843
 #, fuzzy, gcc-internal-format
 msgid "expected %<throw%>"
 msgstr "<throw-lauseke>"
 
-#: cp/parser.cc:32840
+#: cp/parser.cc:32846
 #, fuzzy, gcc-internal-format
 msgid "expected %<auto%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: cp/parser.cc:32843
+#: cp/parser.cc:32849
 #, fuzzy, gcc-internal-format
 msgid "expected %<__label__%>"
 msgstr "nimiö "
 
-#: cp/parser.cc:32846
+#: cp/parser.cc:32852
 #, fuzzy, gcc-internal-format
 msgid "expected %<@try%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: cp/parser.cc:32849
+#: cp/parser.cc:32855
 #, fuzzy, gcc-internal-format
 msgid "expected %<@synchronized%>"
 msgstr "Taso 2 ei ole synkronoitu"
 
-#: cp/parser.cc:32852
+#: cp/parser.cc:32858
 #, fuzzy, gcc-internal-format
 msgid "expected %<@throw%>"
 msgstr "<throw-lauseke>"
 
-#: cp/parser.cc:32855
+#: cp/parser.cc:32861
 #, fuzzy, gcc-internal-format
 msgid "expected %<__transaction_atomic%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: cp/parser.cc:32858
+#: cp/parser.cc:32864
 #, fuzzy, gcc-internal-format
 msgid "expected %<__transaction_relaxed%>"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: cp/parser.cc:32861
+#: cp/parser.cc:32867
 #, fuzzy, gcc-internal-format
 msgid "expected %<co_yield%>"
 msgstr "odotettiin %<(%> tai rivin loppu"
 
-#: cp/parser.cc:32893
+#: cp/parser.cc:32899
 #, fuzzy, gcc-internal-format
 msgid "expected %<::%>"
 msgstr "”)” oli odotus"
 
-#: cp/parser.cc:32905
+#: cp/parser.cc:32911
 #, fuzzy, gcc-internal-format
 msgid "expected %<...%>"
 msgstr "”)” oli odotus"
 
-#: cp/parser.cc:32908
+#: cp/parser.cc:32914
 #, fuzzy, gcc-internal-format
 msgid "expected %<*%>"
 msgstr "”)” oli odotus"
 
-#: cp/parser.cc:32911
+#: cp/parser.cc:32917
 #, fuzzy, gcc-internal-format
 msgid "expected %<~%>"
 msgstr "”)” oli odotus"
 
-#: cp/parser.cc:32917
+#: cp/parser.cc:32923
 #, fuzzy, gcc-internal-format
 msgid "expected %<:%> or %<::%>"
 msgstr "odotettiin %<:%> tai %<...%>"
 
-#: cp/parser.cc:32944
+#: cp/parser.cc:32950
 #, fuzzy, gcc-internal-format
 msgid "expected %<class%>, %<typename%>, or %<template%>"
 msgstr "  odotettiin luokkamallia, saatiin %qT"
 
-#: cp/parser.cc:33276
+#: cp/parser.cc:33282
 #, gcc-internal-format
 msgid "redundant enum-key %<enum%s%> in reference to %q#T"
 msgstr ""
 
-#: cp/parser.cc:33427
+#: cp/parser.cc:33433
 #, fuzzy, gcc-internal-format
 msgid "%qs tag used in naming %q#T"
 msgstr "%qs määritelty parametrille %qE"
 
-#: cp/parser.cc:33432
+#: cp/parser.cc:33438
 #, fuzzy, gcc-internal-format
 msgid "%q#T was previously declared here"
 msgstr "%q+#D aiemmin esitelty täällä"
 
-#: cp/parser.cc:33552
+#: cp/parser.cc:33558
 #, fuzzy, gcc-internal-format
 msgid "redundant class-key %qs in reference to %q#T"
 msgstr "luokalla %q#T on datajäseninä osoittimia"
 
-#: cp/parser.cc:33692 cp/parser.cc:33726
+#: cp/parser.cc:33698 cp/parser.cc:33732
 #, fuzzy, gcc-internal-format
 msgid "%qT declared with a mismatched class-key %qs"
 msgstr "%qD esitelty uudelleen eri näkyvyydellä"
 
-#: cp/parser.cc:33699 cp/parser.cc:33732
+#: cp/parser.cc:33705 cp/parser.cc:33738
 #, gcc-internal-format
 msgid "remove the class-key or replace it with %qs"
 msgstr ""
 
-#: cp/parser.cc:33700 cp/parser.cc:33733
+#: cp/parser.cc:33706 cp/parser.cc:33739
 #, fuzzy, gcc-internal-format
 msgid "replace the class-key with %qs"
 msgstr "odotettiin %<class%>"
 
-#: cp/parser.cc:33707
+#: cp/parser.cc:33713
 #, fuzzy, gcc-internal-format
 msgid "%qT defined as %qs here"
 msgstr "nimiö %qD määritelty täällä"
 
-#: cp/parser.cc:33708
+#: cp/parser.cc:33714
 #, fuzzy, gcc-internal-format
 msgid "%qT first declared as %qs here"
 msgstr "esitelty täällä"
 
-#: cp/parser.cc:33790
+#: cp/parser.cc:33796
 #, fuzzy, gcc-internal-format
 msgid "%qD redeclared with different access"
 msgstr "%qD esitelty uudelleen eri näkyvyydellä"
 
-#: cp/parser.cc:33811
+#: cp/parser.cc:33817
 #, gcc-internal-format
 msgid "in C++98 %<template%> (as a disambiguator) is only allowed within templates"
 msgstr "C++98:ssa %<template%> (selventimenä) on sallittu vain malleissa"
 
 # XXX
-#: cp/parser.cc:34060
+#: cp/parser.cc:34066
 #, fuzzy, gcc-internal-format
 msgid "file ends in default argument"
 msgstr "oletusargumentti määritelty lambda-parametrille"
 
-#: cp/parser.cc:34301 cp/parser.cc:35609 cp/parser.cc:35798
+#: cp/parser.cc:34307 cp/parser.cc:35615 cp/parser.cc:35804
 #, fuzzy, gcc-internal-format
 msgid "misplaced %<@%D%> Objective-C++ construct"
 msgstr "käytetty %<__thread%> ennen %<extern%>:a"
 
-#: cp/parser.cc:34372
+#: cp/parser.cc:34378
 #, fuzzy, gcc-internal-format
 msgid "objective-c++ message receiver expected"
 msgstr "useita tallennuspaikkoja esittelymääritteissä"
 
-#: cp/parser.cc:34442
+#: cp/parser.cc:34448
 #, fuzzy, gcc-internal-format
 msgid "objective-c++ message argument(s) are expected"
 msgstr "useita tallennuspaikkoja esittelymääritteissä"
 
-#: cp/parser.cc:34473
+#: cp/parser.cc:34479
 #, gcc-internal-format
 msgid "%<@encode%> must specify a type as an argument"
 msgstr ""
 
-#: cp/parser.cc:34877
+#: cp/parser.cc:34883
 #, fuzzy, gcc-internal-format
 msgid "invalid Objective-C++ selector name"
 msgstr "%qE ei ole Objective-C-luokkanimi eikä -alias"
 
-#: cp/parser.cc:34952 cp/parser.cc:34970
+#: cp/parser.cc:34958 cp/parser.cc:34976
 #, fuzzy, gcc-internal-format
 msgid "objective-c++ method declaration is expected"
 msgstr "Odotettiin toista ulottuvuutta taulukkoesittelyssä kohdassa %C"
 
-#: cp/parser.cc:34964 cp/parser.cc:35030
+#: cp/parser.cc:34970 cp/parser.cc:35036
 #, fuzzy, gcc-internal-format
 msgid "method attributes must be specified at the end"
 msgstr "%Jlohkoattribuuttia ei voi määrittää paikalliselle muuttujalle"
 
-#: cp/parser.cc:35073
+#: cp/parser.cc:35079
 #, gcc-internal-format
 msgid "stray %qs between Objective-C++ methods"
 msgstr "ylimääräinen %qs Objective-C++-metodien välissä"
 
-#: cp/parser.cc:35270 cp/parser.cc:35277 cp/parser.cc:35284
+#: cp/parser.cc:35276 cp/parser.cc:35283 cp/parser.cc:35290
 #, fuzzy, gcc-internal-format
 msgid "invalid type for instance variable"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: cp/parser.cc:35401
+#: cp/parser.cc:35407
 #, fuzzy, gcc-internal-format
 msgid "identifier expected after %<@protocol%>"
 msgstr "odotettiin tunnistetta tai %<(%>"
 
-#: cp/parser.cc:35574
+#: cp/parser.cc:35580
 #, gcc-internal-format
 msgid "attributes may not be specified before the %<@%D%> Objective-C++ keyword"
 msgstr ""
 
-#: cp/parser.cc:35581
+#: cp/parser.cc:35587
 #, fuzzy, gcc-internal-format
 msgid "prefix attributes are ignored before %<@%D%>"
 msgstr "%qs-attribuuttia ei huomioida %qs:lle"
 
-#: cp/parser.cc:35861 cp/parser.cc:35868 cp/parser.cc:35875
+#: cp/parser.cc:35867 cp/parser.cc:35874 cp/parser.cc:35881
 #, fuzzy, gcc-internal-format
 msgid "invalid type for property"
 msgstr "virheellinen vastaanottajatyyppi %qs"
 
-#: cp/parser.cc:36037
+#: cp/parser.cc:36043
 #, fuzzy, gcc-internal-format
 msgid "unknown property attribute %qE"
 msgstr "<tuntematon>"
 
-#: cp/parser.cc:37152
+#: cp/parser.cc:37158
 #, fuzzy, gcc-internal-format
 msgid "expected integer expression list"
 msgstr "odotettiin kokonaislukulauseketta"
 
-#: cp/parser.cc:37169
+#: cp/parser.cc:37175
 #, fuzzy, gcc-internal-format
 msgid "%<wait%> expression must be integral"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/parser.cc:38258
+#: cp/parser.cc:38264
 #, fuzzy, gcc-internal-format
 msgid "invalid reduction-identifier"
 msgstr "odotettiin tunnistetta tai %<(%>"
 
-#: cp/parser.cc:39086
+#: cp/parser.cc:39092
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in iterator type"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:41854
+#: cp/parser.cc:41860
 #, fuzzy, gcc-internal-format
 msgid "parenthesized initialization is not allowed in OpenMP %<for%> loop"
 msgstr "Alustus kohdassa %C ei ole sallittu PURE-proseduurissa"
 
-#: cp/parser.cc:42258
+#: cp/parser.cc:42264
 #, gcc-internal-format
 msgid "%<[[omp::directive(%s)]]%> must be the only specified attribute on a statement"
 msgstr ""
 
-#: cp/parser.cc:42517
+#: cp/parser.cc:42523
 #, fuzzy, gcc-internal-format
 msgid "%<ordered%> clause with parameter on range-based %<for%> loop"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: cp/parser.cc:42604 cp/pt.cc:18137
+#: cp/parser.cc:42610 cp/pt.cc:18182
 #, fuzzy, gcc-internal-format
 msgid "iteration variable %qD should not be reduction"
 msgstr "sisäkkäisessä funktiossa käytetty rekisterimuuttujaa %qD"
 
-#: cp/parser.cc:42697
+#: cp/parser.cc:42703
 #, fuzzy, gcc-internal-format
 msgid "not enough for loops to collapse"
 msgstr "mahdollisia ikisilmukoita ei voi optimoida"
 
-#: cp/parser.cc:45039
+#: cp/parser.cc:45045
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp declare %s%> followed by %<#pragma omp declare %s%>"
 msgstr "%Jluetellun tyypin jäsenen %qd uudelleenesittely"
 
-#: cp/parser.cc:45674
+#: cp/parser.cc:45680
 #, gcc-internal-format
 msgid "OpenMP directive other than %<declare simd%> or %<declare variant%> appertains to a declaration"
 msgstr ""
 
-#: cp/parser.cc:45953
+#: cp/parser.cc:45959
 #, gcc-internal-format
 msgid "%<declare target%> in attribute syntax terminated with %<end declare target%> in pragma syntax"
 msgstr ""
 
-#: cp/parser.cc:45957
+#: cp/parser.cc:45963
 #, gcc-internal-format
 msgid "%<declare target%> in pragma syntax terminated with %<end declare target%> in attribute syntax"
 msgstr ""
 
-#: cp/parser.cc:46063
+#: cp/parser.cc:46069
 #, fuzzy, gcc-internal-format
 msgid "invalid initializer clause"
 msgstr "epäkelpo alustin"
 
-#: cp/parser.cc:46093
+#: cp/parser.cc:46099
 #, fuzzy, gcc-internal-format
 msgid "expected id-expression (arguments)"
 msgstr "odotettiin kokonaislukulauseketta"
 
-#: cp/parser.cc:46105
+#: cp/parser.cc:46111
 #, gcc-internal-format
 msgid "one of the initializer call arguments should be %<omp_priv%> or %<&omp_priv%>"
 msgstr ""
 
-#: cp/parser.cc:46208
+#: cp/parser.cc:46214
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in declare reduction type list"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/parser.cc:46228 cp/semantics.cc:6048
+#: cp/parser.cc:46234 cp/semantics.cc:6039
 #, fuzzy, gcc-internal-format
 msgid "predeclared arithmetic type %qT in %<#pragma omp declare reduction%>"
 msgstr "%Jluetellun tyypin jäsenen %qd uudelleenesittely"
 
-#: cp/parser.cc:46232 cp/semantics.cc:6056
+#: cp/parser.cc:46238 cp/semantics.cc:6047
 #, fuzzy, gcc-internal-format
 msgid "function or array type %qT in %<#pragma omp declare reduction%>"
 msgstr "edellinen esittely"
 
-#: cp/parser.cc:46235 cp/pt.cc:14126 cp/semantics.cc:6062
+#: cp/parser.cc:46241 cp/pt.cc:14147 cp/semantics.cc:6053
 #, fuzzy, gcc-internal-format
 msgid "reference type %qT in %<#pragma omp declare reduction%>"
 msgstr "%Jluetellun tyypin jäsenen %qd uudelleenesittely"
 
-#: cp/parser.cc:46238 cp/semantics.cc:6068
+#: cp/parser.cc:46244 cp/semantics.cc:6059
 #, fuzzy, gcc-internal-format
 msgid "%<const%>, %<volatile%> or %<__restrict%>-qualified type %qT in %<#pragma omp declare reduction%>"
 msgstr "edellinen esittely"
 
-#: cp/parser.cc:46965
+#: cp/parser.cc:46971
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma acc routine%> names a set of overloads"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: cp/parser.cc:46975
+#: cp/parser.cc:46981
 #, fuzzy, gcc-internal-format
 msgid "%qD does not refer to a namespace scope function"
 msgstr "#pragma GCC optimize ei ole sallittu funktioiden sisällä"
 
 #. cancel-and-throw is unimplemented.
-#: cp/parser.cc:47333
+#: cp/parser.cc:47339
 #, fuzzy, gcc-internal-format
 msgid "%<atomic_cancel%>"
 msgstr "_Peru"
 
-#: cp/parser.cc:47380 cp/semantics.cc:10999
+#: cp/parser.cc:47386 cp/semantics.cc:10990
 #, fuzzy, gcc-internal-format
 msgid "%<__transaction_relaxed%> without transactional memory support enabled"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: cp/parser.cc:47382 cp/semantics.cc:11001
+#: cp/parser.cc:47388 cp/semantics.cc:10992
 #, fuzzy, gcc-internal-format
 msgid "%<__transaction_atomic%> without transactional memory support enabled"
 msgstr "odotettiin %<,%> tai %<;%>"
 
-#: cp/parser.cc:47528
+#: cp/parser.cc:47534
 #, fuzzy, gcc-internal-format
 msgid "outer %<__transaction_cancel%> not within outer %<__transaction_atomic%>"
 msgstr "Käyttö: %s <transaktiotiedosto> <tiedostojärjestelmä>\n"
 
-#: cp/parser.cc:47531
+#: cp/parser.cc:47537
 #, fuzzy, gcc-internal-format
 msgid "  or a %<transaction_may_cancel_outer%> function"
 msgstr "%Jvanhanmallinen funktiomäärittely"
 
-#: cp/parser.cc:47582
+#: cp/parser.cc:47588
 #, fuzzy, gcc-internal-format
 msgid "malformed %<#pragma GCC pch_preprocess%>"
 msgstr "tuntematon #pragma GCC coprocessor %E"
 
-#: cp/parser.cc:47879
+#: cp/parser.cc:47885
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp requires%> may only be used at file or namespace scope"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: cp/parser.cc:47930
+#: cp/parser.cc:47936
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma GCC ivdep%> must be inside a function"
 msgstr "#pragma GCC optimize ei ole sallittu funktioiden sisällä"
 
-#: cp/parser.cc:47962
+#: cp/parser.cc:47968
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma GCC unroll%> must be inside a function"
 msgstr "#pragma GCC optimize ei ole sallittu funktioiden sisällä"
 
-#: cp/parser.cc:48042
+#: cp/parser.cc:48048
 #, fuzzy, gcc-internal-format
 msgid "multi-source compilation not implemented for C++"
 msgstr "moduulienvälisiä optimointeja ei ole toteutettu C++:lle"
 
-#: cp/parser.cc:48081
+#: cp/parser.cc:48087
 #, fuzzy, gcc-internal-format
 msgid "placeholder type not allowed in this context"
 msgstr "Avainsana-argumentti ”%s” kohdassa %L ei ole proseduurissa"
 
-#: cp/parser.cc:48285
+#: cp/parser.cc:48292
 #, fuzzy, gcc-internal-format
 msgid "implicit templates may not be %<virtual%>"
 msgstr "mallit eivät voi olla virtuaalisia"
 
-#: cp/parser.cc:48341
+#: cp/parser.cc:48348
 #, gcc-internal-format
 msgid "%<extern \"C\"%> linkage started here"
 msgstr ""
@@ -58857,7 +59058,7 @@ msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 msgid "specialization of %qD after instantiation"
 msgstr "(mahdollisesti %qT:n määrittelyn perästä puuttuu puolipiste)"
 
-#: cp/pt.cc:2058 cp/semantics.cc:5918
+#: cp/pt.cc:2058 cp/semantics.cc:5909
 #, fuzzy, gcc-internal-format
 msgid "%s %#qD"
 msgstr "%s %d"
@@ -58872,113 +59073,113 @@ msgstr "%qD ei ole funktiomalli"
 msgid "%qD is not a variable template"
 msgstr "%qD ei ole muuttujamalli"
 
-#: cp/pt.cc:2481
+#: cp/pt.cc:2483
 #, fuzzy, gcc-internal-format
 msgid "template-id %qD for %q+D does not match any template declaration"
 msgstr "%qD:n tyyppi ei täsmää aiemman esittelyn kanssa"
 
-#: cp/pt.cc:2485
+#: cp/pt.cc:2487
 #, gcc-internal-format
 msgid "saw %d %<template<>%>, need %d for specializing a member function template"
 msgstr ""
 
-#: cp/pt.cc:2495
+#: cp/pt.cc:2497
 #, fuzzy, gcc-internal-format
 msgid "ambiguous template specialization %qD for %q+D"
 msgstr "malliesittelylle %q+D"
 
-#: cp/pt.cc:2702
+#: cp/pt.cc:2704
 #, fuzzy, gcc-internal-format
 msgid "variable templates only available with %<-std=c++14%> or %<-std=gnu++14%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/pt.cc:2712
+#: cp/pt.cc:2714
 #, fuzzy, gcc-internal-format
 msgid "too many template headers for %qD (should be %d)"
 msgstr "%qD ei ole mallifunktio"
 
-#: cp/pt.cc:2718
+#: cp/pt.cc:2720
 #, gcc-internal-format
 msgid "members of an explicitly specialized class are defined without a template header"
 msgstr ""
 
-#: cp/pt.cc:2742
+#: cp/pt.cc:2744
 #, fuzzy, gcc-internal-format
 msgid "explicit specialization of %qD outside its namespace must use a nested-name-specifier"
 msgstr "(mahdollisesti %qT:n määrittelyn perästä puuttuu puolipiste)"
 
 #. This was allowed in C++98, so only pedwarn.
-#: cp/pt.cc:2747
+#: cp/pt.cc:2749
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation of %qD outside its namespace must use a nested-name-specifier"
 msgstr "%J%qD:n edellinen esittely oli täällä"
 
-#: cp/pt.cc:2783
+#: cp/pt.cc:2785
 #, fuzzy, gcc-internal-format
 msgid "explicit specialization %q#D may be missing attributes"
 msgstr "(mahdollisesti %qT:n määrittelyn perästä puuttuu puolipiste)"
 
-#: cp/pt.cc:2787
+#: cp/pt.cc:2789
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "missing primary template attributes %s"
 msgstr "ensiö"
 
-#: cp/pt.cc:2788
+#: cp/pt.cc:2790
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "missing primary template attribute %s"
 msgstr "ensiö"
 
-#: cp/pt.cc:2878 cp/pt.cc:2938
+#: cp/pt.cc:2880 cp/pt.cc:2940
 #, fuzzy, gcc-internal-format
 msgid "template-id %qE in declaration of primary template"
 msgstr "malliesittelylle %q+D"
 
-#: cp/pt.cc:2891
+#: cp/pt.cc:2893
 #, fuzzy, gcc-internal-format
 msgid "template parameter list used in explicit instantiation"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: cp/pt.cc:2897
+#: cp/pt.cc:2899
 #, fuzzy, gcc-internal-format
 msgid "definition provided for explicit instantiation"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: cp/pt.cc:2905
+#: cp/pt.cc:2907
 #, fuzzy, gcc-internal-format
 msgid "too many template parameter lists in declaration of %qD"
 msgstr "%qD esitelty ei-parametrina"
 
-#: cp/pt.cc:2908
+#: cp/pt.cc:2910
 #, fuzzy, gcc-internal-format
 msgid "too few template parameter lists in declaration of %qD"
 msgstr "Odotettiin toista ulottuvuutta taulukkoesittelyssä kohdassa %C"
 
-#: cp/pt.cc:2910
+#: cp/pt.cc:2912
 #, fuzzy, gcc-internal-format
 msgid "explicit specialization of %qD must be introduced by %<template <>%>"
 msgstr "funktio %qE esitelty implisiittisesti"
 
-#: cp/pt.cc:2916
+#: cp/pt.cc:2918
 #, fuzzy, gcc-internal-format
 msgid "explicit specialization declared %<concept%>"
 msgstr "%qs alustettu ja esitelty %<extern%>-avainsanalla"
 
-#: cp/pt.cc:2949
+#: cp/pt.cc:2951
 #, fuzzy, gcc-internal-format
 msgid "non-type partial specialization %qE is not allowed"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: cp/pt.cc:2953
+#: cp/pt.cc:2955
 #, fuzzy, gcc-internal-format
 msgid "non-class, non-variable partial specialization %qE is not allowed"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: cp/pt.cc:2985
+#: cp/pt.cc:2987
 #, fuzzy, gcc-internal-format
 msgid "default argument specified in explicit specialization"
 msgstr "oletusargumentti määritelty lambda-parametrille"
 
-#: cp/pt.cc:3028
+#: cp/pt.cc:3030
 #, gcc-internal-format
 msgid "%qD is not a template function"
 msgstr "%qD ei ole mallifunktio"
@@ -58991,154 +59192,154 @@ msgstr "%qD ei ole mallifunktio"
 #. program is ill-formed.
 #.
 #. Similar language is found in [temp.explicit].
-#: cp/pt.cc:3090
+#: cp/pt.cc:3092
 #, fuzzy, gcc-internal-format
 msgid "specialization of implicitly-declared special member function"
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: cp/pt.cc:3106
+#: cp/pt.cc:3108
 #, fuzzy, gcc-internal-format
 msgid "no member function %qD declared in %qT"
 msgstr "%qD:n esittely %qT:n jäsenenä"
 
-#: cp/pt.cc:3137
+#: cp/pt.cc:3139
 #, fuzzy, gcc-internal-format
 msgid "friend declaration %qD is not visible to explicit specialization"
 msgstr "useita tallennuspaikkoja esittelymääritteissä"
 
-#: cp/pt.cc:3140
+#: cp/pt.cc:3142
 #, fuzzy, gcc-internal-format
 msgid "friend declaration here"
 msgstr "%q+D:lla on edellinen esittely täällä"
 
-#: cp/pt.cc:3249
+#: cp/pt.cc:3251
 #, fuzzy, gcc-internal-format
 msgid "explicit specialization of function concept %qD"
 msgstr "funktio %qE esitelty implisiittisesti"
 
-#: cp/pt.cc:3847
+#: cp/pt.cc:3849
 #, fuzzy, gcc-internal-format
 msgid "argument to %<__integer_pack%> must be between 0 and %d"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: cp/pt.cc:4194
+#: cp/pt.cc:4196
 #, fuzzy, gcc-internal-format
 msgid "base initializer expansion %qT contains no parameter packs"
 msgstr "Muuttujatyyppi on UNKNOWN sijoituksessa kohdassa %L"
 
-#: cp/pt.cc:4262
+#: cp/pt.cc:4264
 #, fuzzy, gcc-internal-format
 msgid "expansion pattern %qT contains no parameter packs"
 msgstr "Muuttujatyyppi on UNKNOWN sijoituksessa kohdassa %L"
 
-#: cp/pt.cc:4264
+#: cp/pt.cc:4266
 #, fuzzy, gcc-internal-format
 msgid "expansion pattern %qE contains no parameter packs"
 msgstr "Muuttujatyyppi on UNKNOWN sijoituksessa kohdassa %L"
 
-#: cp/pt.cc:4346
+#: cp/pt.cc:4348
 #, fuzzy, gcc-internal-format
 msgid "parameter packs not expanded with %<...%>:"
 msgstr "parametrin %qD esittely, mutta parametria ei ole olemassa"
 
-#: cp/pt.cc:4363 cp/pt.cc:5168
+#: cp/pt.cc:4365 cp/pt.cc:5170
 #, gcc-internal-format
 msgid "        %qD"
 msgstr "        %qD"
 
-#: cp/pt.cc:4365
+#: cp/pt.cc:4367
 #, gcc-internal-format, gfc-internal-format
 msgid "        %s"
 msgstr "        %s"
 
-#: cp/pt.cc:4491
+#: cp/pt.cc:4493
 #, fuzzy, gcc-internal-format
 msgid "declaration of template parameter %q+D shadows template parameter"
 msgstr "%J%qD:n esittely varjostaa parametria"
 
-#: cp/pt.cc:4494
+#: cp/pt.cc:4496
 #, fuzzy, gcc-internal-format
 msgid "declaration of %q+#D shadows template parameter"
 msgstr "malliesittelylle %q+D"
 
-#: cp/pt.cc:4496
+#: cp/pt.cc:4498
 #, fuzzy, gcc-internal-format
 msgid "template parameter %qD declared here"
 msgstr "%qD esitelty ei-parametrina"
 
-#: cp/pt.cc:5104
+#: cp/pt.cc:5106
 #, fuzzy, gcc-internal-format
 msgid "specialization of variable concept %q#D"
 msgstr "muuttuja %qD esitelty %<inline%>:ksi"
 
-#: cp/pt.cc:5163
+#: cp/pt.cc:5165
 #, fuzzy, gcc-internal-format
 msgid "template parameters not deducible in partial specialization:"
 msgstr "%qs:n esittelyssä tyyppi on oletuksena %<int%>"
 
-#: cp/pt.cc:5186
+#: cp/pt.cc:5188
 #, fuzzy, 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 "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:5190
+#: cp/pt.cc:5192
 #, fuzzy, gcc-internal-format
 msgid "partial specialization %q+D does not specialize any template arguments and is not more constrained than the primary template; to define the primary template, remove the template argument list"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:5194 cp/pt.cc:5205 cp/pt.cc:5213
+#: cp/pt.cc:5196 cp/pt.cc:5207 cp/pt.cc:5215
 #, fuzzy, gcc-internal-format
 msgid "primary template here"
 msgstr "ensiö"
 
-#: cp/pt.cc:5202
+#: cp/pt.cc:5204
 #, fuzzy, gcc-internal-format
 msgid "partial specialization is not more specialized than the primary template because it replaces multiple parameters with a pack expansion"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:5212
+#: cp/pt.cc:5214
 #, fuzzy, gcc-internal-format
 msgid "too many arguments for partial specialization %qT"
 msgstr "liian monta argumenttia funktiolle %qE"
 
-#: cp/pt.cc:5226
+#: cp/pt.cc:5228
 #, fuzzy, gcc-internal-format
 msgid "partial specialization %qD is not more specialized than"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:5228
+#: cp/pt.cc:5230
 #, fuzzy, gcc-internal-format
 msgid "primary template %qD"
 msgstr "ensiö"
 
-#: cp/pt.cc:5270
+#: cp/pt.cc:5272
 #, fuzzy, gcc-internal-format
 msgid "parameter pack argument %qE must be at the end of the template argument list"
 msgstr "%Jparametrin nimi puuttuu parametrilistasta"
 
-#: cp/pt.cc:5273
+#: cp/pt.cc:5275
 #, fuzzy, gcc-internal-format
 msgid "parameter pack argument %qT must be at the end of the template argument list"
 msgstr "%Jparametrin nimi puuttuu parametrilistasta"
 
-#: cp/pt.cc:5335
+#: cp/pt.cc:5337
 #, fuzzy, 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] "tyyppimuunnettu argumentti %qD ei sovi prototyyppiin"
 msgstr[1] "tyyppimuunnettu argumentti %qD ei sovi prototyyppiin"
 
-#: cp/pt.cc:5394
+#: cp/pt.cc:5396
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qD ambiguates earlier template instantiation for %qD"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: cp/pt.cc:5398
+#: cp/pt.cc:5400
 #, fuzzy, gcc-internal-format
 msgid "partial specialization of %qD after instantiation of %qD"
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: cp/pt.cc:5581
+#: cp/pt.cc:5583
 #, fuzzy, gcc-internal-format
 msgid "no default argument for %qD"
 msgstr "%qD:lla ei voi olla oletusargumentteja"
@@ -59147,47 +59348,47 @@ msgstr "%qD:lla ei voi olla oletusargumentteja"
 #. (DR 2032), or alias template can only have one
 #. parameter pack, at the end of the template
 #. parameter list.
-#: cp/pt.cc:5604
+#: cp/pt.cc:5606
 #, fuzzy, gcc-internal-format
 msgid "parameter pack %q+D must be at the end of the template parameter list"
 msgstr "%Jparametrin nimi puuttuu parametrilistasta"
 
-#: cp/pt.cc:5640
+#: cp/pt.cc:5642
 #, fuzzy, gcc-internal-format
 msgid "default template arguments may not be used in function template friend re-declaration"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/pt.cc:5643
+#: cp/pt.cc:5645
 #, fuzzy, gcc-internal-format
 msgid "default template arguments may not be used in template friend declarations"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/pt.cc:5646
+#: cp/pt.cc:5648
 #, fuzzy, gcc-internal-format
 msgid "default template arguments may not be used in function templates without %<-std=c++11%> or %<-std=gnu++11%>"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/pt.cc:5649
+#: cp/pt.cc:5651
 #, fuzzy, gcc-internal-format
 msgid "default template arguments may not be used in partial specializations"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/pt.cc:5652 cp/pt.cc:5710
+#: cp/pt.cc:5654 cp/pt.cc:5712
 #, fuzzy, gcc-internal-format
 msgid "default argument for template parameter for class enclosing %qD"
 msgstr "tallennusluokka annettu parametrille %qs"
 
-#: cp/pt.cc:5821
+#: cp/pt.cc:5823
 #, gcc-internal-format
 msgid "template %qD declared"
 msgstr "%qD-malli esitelty"
 
-#: cp/pt.cc:5829
+#: cp/pt.cc:5831
 #, fuzzy, gcc-internal-format
 msgid "template class without a name"
 msgstr "funktiomalli %qD esitelty uudelleen luokkamallina"
 
-#: cp/pt.cc:5837
+#: cp/pt.cc:5839
 #, fuzzy, gcc-internal-format
 msgid "member template %qD may not have virt-specifiers"
 msgstr "useita tallennuspaikkoja esittelymääritteissä"
@@ -59197,266 +59398,256 @@ msgstr "useita tallennuspaikkoja esittelymääritteissä"
 #. An allocation function can be a function
 #. template. ... Template allocation functions shall
 #. have two or more parameters.
-#: cp/pt.cc:5860
+#: cp/pt.cc:5862
 #, fuzzy, gcc-internal-format
 msgid "invalid template declaration of %qD"
 msgstr "%qD ei ole malli"
 
-#: cp/pt.cc:6012
+#: cp/pt.cc:6014
 #, fuzzy, gcc-internal-format
 msgid "template definition of non-template %q#D"
 msgstr "malliesittelylle %q+D"
 
-#: cp/pt.cc:6051
+#: cp/pt.cc:6053
 #, fuzzy, gcc-internal-format
 msgid "expected %d levels of template parms for %q#D, got %d"
 msgstr "  odotettiin tyyppiä, saatiin %qT"
 
-#: cp/pt.cc:6065
+#: cp/pt.cc:6067
 #, fuzzy, gcc-internal-format
 msgid "got %d template parameters for %q#D"
 msgstr "malliesittelylle %q+D"
 
-#: cp/pt.cc:6068
+#: cp/pt.cc:6070
 #, fuzzy, gcc-internal-format
 msgid "got %d template parameters for %q#T"
 msgstr "malliesittelylle %q+D"
 
-#: cp/pt.cc:6070
+#: cp/pt.cc:6072
 #, gcc-internal-format, gfc-internal-format
 msgid "  but %d required"
 msgstr "  mutta %d vaaditaan"
 
-#: cp/pt.cc:6091
+#: cp/pt.cc:6093
 #, fuzzy, gcc-internal-format
 msgid "template arguments to %qD do not match original template %qD"
 msgstr "tyyppimuunnettu argumentti %qD ei sovi prototyyppiin"
 
-#: cp/pt.cc:6094
+#: cp/pt.cc:6096
 #, fuzzy, gcc-internal-format
 msgid "use %<template<>%> for an explicit specialization"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: cp/pt.cc:6239
+#: cp/pt.cc:6241
 #, fuzzy, gcc-internal-format
 msgid "%qT is not a template type"
 msgstr "%qT ei ole malli"
 
-#: cp/pt.cc:6252
+#: cp/pt.cc:6254
 #, fuzzy, gcc-internal-format
 msgid "template specifiers not specified in declaration of %qD"
 msgstr "%qs:n esittelyssä tyyppi on oletuksena %<int%>"
 
-#: cp/pt.cc:6263
+#: cp/pt.cc:6265
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "redeclared with %d template parameter"
 msgid_plural "redeclared with %d template parameters"
 msgstr[0] "%J%qD:n edellinen esittely oli täällä"
 msgstr[1] "%J%qD:n edellinen esittely oli täällä"
 
-#: cp/pt.cc:6267
+#: cp/pt.cc:6269
 #, fuzzy, gcc-internal-format
 msgid "previous declaration %qD used %d template parameter"
 msgid_plural "previous declaration %qD used %d template parameters"
 msgstr[0] "%J%qD:n edellinen esittely oli täällä"
 msgstr[1] "%J%qD:n edellinen esittely oli täällä"
 
-#: cp/pt.cc:6305
+#: cp/pt.cc:6303
 #, fuzzy, gcc-internal-format
 msgid "template parameter %q+#D"
 msgstr "malliesittelylle %q+D"
 
-#: cp/pt.cc:6306
+#: cp/pt.cc:6304
 #, fuzzy, gcc-internal-format
 msgid "redeclared here as %q#D"
 msgstr "%q+D esitelty uudelleen erityyppisenä symbolina"
 
-#: cp/pt.cc:6317
+#: cp/pt.cc:6315
 #, fuzzy, gcc-internal-format
 msgid "declaration of template parameter %q+#D with different constraints"
 msgstr "%q+D:n virheellinen uudelleenesittely"
 
-#: cp/pt.cc:6320 cp/pt.cc:6366
+#: cp/pt.cc:6318 cp/pt.cc:6345
 #, fuzzy, gcc-internal-format
 msgid "original declaration appeared here"
 msgstr "varjostunut esittely on täällä"
 
-#: cp/pt.cc:6331
-#, fuzzy, gcc-internal-format
-msgid "redefinition of default argument for %q#D"
-msgstr "%q+D määritelty uudelleen"
-
-#: cp/pt.cc:6333
-#, fuzzy, gcc-internal-format
-msgid "original definition appeared here"
-msgstr "edellinen määrittely oli täällä"
-
-#: cp/pt.cc:6363
+#: cp/pt.cc:6342
 #, fuzzy, gcc-internal-format
 msgid "redeclaration %q#D with different constraints"
 msgstr "%q+D:n virheellinen uudelleenesittely"
 
-#: cp/pt.cc:6701 cp/pt.cc:6770
+#: cp/pt.cc:6695 cp/pt.cc:6764
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a valid template argument for type %qT"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:6704
+#: cp/pt.cc:6698
 #, fuzzy, gcc-internal-format
 msgid "it must be the address of a function with external linkage"
 msgstr "%J%qE-attribuutti soveltuu vain funktioihin"
 
-#: cp/pt.cc:6707
+#: cp/pt.cc:6701
 #, fuzzy, gcc-internal-format
 msgid "it must be the name of a function with external linkage"
 msgstr "%J%qE-attribuutti soveltuu vain funktioihin"
 
-#: cp/pt.cc:6720
+#: cp/pt.cc:6714
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a valid template argument for type %qT because %qD has no linkage"
 msgstr "%qE ei ole kelvollinen malliargumentti tyypille %qT, koska se ei ole objekti ulkoisella linkityksellä"
 
-#: cp/pt.cc:6724
+#: cp/pt.cc:6718
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a valid template argument for type %qT because %qD does not have external linkage"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:6773
+#: cp/pt.cc:6767
 #, gcc-internal-format
 msgid "it must be a pointer-to-member of the form %<&X::Y%>"
 msgstr ""
 
-#: cp/pt.cc:6775
+#: cp/pt.cc:6769
 #, fuzzy, gcc-internal-format
 msgid "because it is a member of %qT"
 msgstr "%qD:n esittely %qT:n jäsenenä"
 
-#: cp/pt.cc:6844
+#: cp/pt.cc:6838
 #, fuzzy, gcc-internal-format
 msgid "  couldn%'t deduce template parameter %qD"
 msgstr "%Juseita parametreja nimellä %qD"
 
-#: cp/pt.cc:6853
+#: cp/pt.cc:6847
 #, fuzzy, gcc-internal-format
 msgid "  types %qT and %qT have incompatible cv-qualifiers"
 msgstr "valitsimet -l ja -s eivät ole yhteensopivia"
 
-#: cp/pt.cc:6862
+#: cp/pt.cc:6856
 #, gcc-internal-format
 msgid "  mismatched types %qT and %qT"
 msgstr "  täsmäämättömät tyypit %qT ja %qT"
 
-#: cp/pt.cc:6871
+#: cp/pt.cc:6865
 #, fuzzy, gcc-internal-format
 msgid "  template parameter %qD is not a parameter pack, but argument %qD is"
 msgstr "strftime-muotoilut eivät voi muotoilla argumentteja"
 
-#: cp/pt.cc:6882
+#: cp/pt.cc:6876
 #, fuzzy, gcc-internal-format
 msgid "  template argument %qE does not match pointer-to-member constant %qE"
 msgstr "tyyppimuunnettu argumentti %qD ei sovi prototyyppiin"
 
-#: cp/pt.cc:6892
+#: cp/pt.cc:6886
 #, fuzzy, gcc-internal-format
 msgid "  %qE is not equivalent to %qE"
 msgstr "%qE-attribuuttia ei huomioida %qE:lle"
 
-#: cp/pt.cc:6901
+#: cp/pt.cc:6895
 #, fuzzy, gcc-internal-format
 msgid "  inconsistent parameter pack deduction with %qT and %qT"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: cp/pt.cc:6913
+#: cp/pt.cc:6907
 #, fuzzy, gcc-internal-format
 msgid "  deduced conflicting types for parameter %qT (%qT and %qT)"
 msgstr "tyyppien %qT ja %qT välinen vertailu"
 
-#: cp/pt.cc:6917
+#: cp/pt.cc:6911
 #, fuzzy, gcc-internal-format
 msgid "  deduced conflicting values for non-type parameter %qE (%qE and %qE)"
 msgstr "tyyppien %qT ja %qT välinen vertailu"
 
-#: cp/pt.cc:6928
+#: cp/pt.cc:6922
 #, fuzzy, gcc-internal-format
 msgid "  variable-sized array type %qT is not a valid template argument"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:6939
+#: cp/pt.cc:6933
 #, fuzzy, gcc-internal-format
 msgid "  member function type %qT is not a valid template argument"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:6982
+#: cp/pt.cc:6976
 #, fuzzy, gcc-internal-format
 msgid "  cannot convert %qE (type %qT) to type %qT"
 msgstr "%qE:ta ei voi muuntaa tyypistä %qT tyyppiin %qT"
 
-#: cp/pt.cc:6995
+#: cp/pt.cc:6989
 #, fuzzy, gcc-internal-format
 msgid "  %qT is an ambiguous base class of %qT"
 msgstr "muunnos tyypistä %qT tyyppiin %qT on moniselitteinen"
 
-#: cp/pt.cc:6999
+#: cp/pt.cc:6993
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not derived from %qT"
 msgstr "muunnos tyypistä %qT tyyppiin %qT"
 
-#: cp/pt.cc:7010
+#: cp/pt.cc:7004
 #, gcc-internal-format
 msgid "  template parameters of a template template argument are inconsistent with other deduced template arguments"
 msgstr ""
 
-#: cp/pt.cc:7020
+#: cp/pt.cc:7014
 #, fuzzy, gcc-internal-format
 msgid "  cannot deduce a template for %qT from non-template type %qT"
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: cp/pt.cc:7030
+#: cp/pt.cc:7024
 #, fuzzy, gcc-internal-format
 msgid "  template argument %qE does not match %qE"
 msgstr "tyyppimuunnettu argumentti %qD ei sovi prototyyppiin"
 
-#: cp/pt.cc:7091
+#: cp/pt.cc:7085
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a valid template argument of type %qT because %qE is not a variable"
 msgstr "%qE ei ole kelvollinen malliargumentti tyypille %qT, koska se ei ole objekti ulkoisella linkityksellä"
 
-#: cp/pt.cc:7099
+#: cp/pt.cc:7093
 #, fuzzy, 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 "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:7109
+#: cp/pt.cc:7103
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a valid template argument of type %qT because %qD has no linkage"
 msgstr "%qE ei ole kelvollinen malliargumentti tyypille %qT, koska se ei ole objekti ulkoisella linkityksellä"
 
-#: cp/pt.cc:7124
+#: cp/pt.cc:7118
 #, fuzzy, gcc-internal-format
 msgid "the address of %qD is not a valid template argument"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:7134
+#: cp/pt.cc:7128
 #, fuzzy, gcc-internal-format
 msgid "the address of the %qT subobject of %qD is not a valid template argument"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:7141
+#: cp/pt.cc:7135
 #, fuzzy, gcc-internal-format
 msgid "the address of %qD is not a valid template argument because it does not have static storage duration"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:7159
+#: cp/pt.cc:7153
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a valid template argument because %qD is a variable, not the address of a variable"
 msgstr "%qE ei ole kelvollinen malliargumentti tyypille %qT, koska se ei ole objekti ulkoisella linkityksellä"
 
-#: cp/pt.cc:7167
+#: cp/pt.cc:7161
 #, fuzzy, gcc-internal-format
 msgid "%qE is not a valid template argument for %qT because it is not the address of a variable"
 msgstr "%qE ei ole kelvollinen malliargumentti tyypille %qT, koska se ei ole objekti ulkoisella linkityksellä"
 
-#: cp/pt.cc:7279
+#: cp/pt.cc:7273
 #, fuzzy, 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 "%qE ei ole kelvollinen malliargumentti tyypille %qT, koska se ei ole objekti ulkoisella linkityksellä"
@@ -59501,182 +59692,182 @@ msgstr ""
 msgid "%qE is not a valid template argument for type %qT because it is of type %qT"
 msgstr "%qE ei ole kelvollinen malliargumentti tyypille %qT, koska se ei ole objekti ulkoisella linkityksellä"
 
-#: cp/pt.cc:8230
+#: cp/pt.cc:8251
 #, fuzzy, gcc-internal-format
 msgid "ignoring attributes on template argument %qT"
 msgstr "%qD:n malliargumentti käyttää paikallista tyyppiä %qT"
 
-#: cp/pt.cc:8246
+#: cp/pt.cc:8267
 #, fuzzy, gcc-internal-format
 msgid "ignoring attributes in template argument %qE"
 msgstr "%qD:n malliargumentti käyttää paikallista tyyppiä %qT"
 
-#: cp/pt.cc:8382
+#: cp/pt.cc:8403
 #, fuzzy, gcc-internal-format
 msgid "injected-class-name %qD used as template template argument"
 msgstr "%qD ei ole mallifunktio"
 
-#: cp/pt.cc:8411
+#: cp/pt.cc:8432
 #, fuzzy, gcc-internal-format
 msgid "invalid use of destructor %qE as a type"
 msgstr "virheellinen hajottimen %qD käyttö tyyppinä"
 
-#: cp/pt.cc:8416
+#: cp/pt.cc:8437
 #, gcc-internal-format
 msgid "to refer to a type member of a template parameter, use %<typename %E%>"
 msgstr ""
 
-#: cp/pt.cc:8432 cp/pt.cc:8466 cp/pt.cc:8520
+#: cp/pt.cc:8453 cp/pt.cc:8487 cp/pt.cc:8541
 #, fuzzy, gcc-internal-format
 msgid "type/value mismatch at argument %d in template parameter list for %qD"
 msgstr "tallennusluokka annettu parametrille %qs"
 
-#: cp/pt.cc:8440
+#: cp/pt.cc:8461
 #, gcc-internal-format
 msgid "  expected a constant of type %qT, got %qT"
 msgstr "  odotettiin %qT-tyyppistä vakiota, saatiin %qT"
 
-#: cp/pt.cc:8448
+#: cp/pt.cc:8469
 #, fuzzy, gcc-internal-format
 msgid "  ambiguous template argument for non-type template parameter is treated as function type"
 msgstr "tallennusluokka annettu parametrille %qs"
 
-#: cp/pt.cc:8454
+#: cp/pt.cc:8475
 #, gcc-internal-format
 msgid "  expected a class template, got %qE"
 msgstr "  odotettiin luokkamallia, saatiin %qE"
 
-#: cp/pt.cc:8457
+#: cp/pt.cc:8478
 #, gcc-internal-format
 msgid "  expected a type, got %qE"
 msgstr "  odotettiin tyyppiä, saatiin %qE"
 
-#: cp/pt.cc:8471
+#: cp/pt.cc:8492
 #, gcc-internal-format
 msgid "  expected a type, got %qT"
 msgstr "  odotettiin tyyppiä, saatiin %qT"
 
-#: cp/pt.cc:8474
+#: cp/pt.cc:8495
 #, gcc-internal-format
 msgid "  expected a class template, got %qT"
 msgstr "  odotettiin luokkamallia, saatiin %qT"
 
-#: cp/pt.cc:8524
+#: cp/pt.cc:8545
 #, fuzzy, gcc-internal-format
 msgid "  expected a template of type %qD, got %qT"
 msgstr "  odotettiin tyyppiä, saatiin %qT"
 
-#: cp/pt.cc:8538
+#: cp/pt.cc:8559
 #, fuzzy, gcc-internal-format
 msgid "constraint mismatch at argument %d in template parameter list for %qD"
 msgstr "tallennusluokka annettu parametrille %qs"
 
-#: cp/pt.cc:8541
+#: cp/pt.cc:8562
 #, fuzzy, gcc-internal-format
 msgid "  expected %qD but got %qD"
 msgstr "  odotettiin tyyppiä, saatiin %qE"
 
-#: cp/pt.cc:8614
+#: cp/pt.cc:8635
 #, fuzzy, gcc-internal-format
 msgid "could not convert template argument %qE from %qT to %qT"
 msgstr "%qE:ta ei voi muuntaa tyypistä %qT tyyppiin %qT"
 
-#: cp/pt.cc:8752 cp/pt.cc:9065
+#: cp/pt.cc:8773 cp/pt.cc:9086
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "template argument %d is invalid"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: cp/pt.cc:8767 cp/pt.cc:8899
+#: cp/pt.cc:8788 cp/pt.cc:8920
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "wrong number of template arguments (%d, should be %d)"
 msgstr "attribuutille %qs annettu väärä määrä argumentteja"
 
-#: cp/pt.cc:8895
+#: cp/pt.cc:8916
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "wrong number of template arguments (%d, should be at least %d)"
 msgstr "attribuutille %qs annettu väärä määrä argumentteja"
 
-#: cp/pt.cc:8904
+#: cp/pt.cc:8925
 #, fuzzy, gcc-internal-format
 msgid "provided for %qD"
 msgstr "nimellä %qD"
 
-#: cp/pt.cc:8929
+#: cp/pt.cc:8950
 #, fuzzy, gcc-internal-format
 msgid "pack expansion argument for non-pack parameter %qD of alias template %qD"
 msgstr "tallennusluokka annettu parametrille %qs"
 
-#: cp/pt.cc:8933
+#: cp/pt.cc:8954
 #, fuzzy, gcc-internal-format
 msgid "pack expansion argument for non-pack parameter %qD of concept %qD"
 msgstr "tallennusluokka annettu parametrille %qs"
 
-#: cp/pt.cc:9031
+#: cp/pt.cc:9052
 #, fuzzy, gcc-internal-format
 msgid "so any instantiation with a non-empty parameter pack would be ill-formed"
 msgstr "virheellinen muunnos tyypistä %qT tyypiksi %qT"
 
-#: cp/pt.cc:9675
+#: cp/pt.cc:9696
 #, fuzzy, gcc-internal-format
 msgid "%q#D is not a function template"
 msgstr "malliesittelylle %q+D"
 
-#: cp/pt.cc:9839
+#: cp/pt.cc:9860
 #, fuzzy, gcc-internal-format
 msgid "non-template type %qT used as a template"
 msgstr "%qD:n malliargumentti käyttää paikallista tyyppiä %qT"
 
-#: cp/pt.cc:9841
+#: cp/pt.cc:9862
 #, gcc-internal-format
 msgid "for template declaration %q+D"
 msgstr "malliesittelylle %q+D"
 
-#: cp/pt.cc:9977 cp/pt.cc:21648
+#: cp/pt.cc:9998 cp/pt.cc:21699
 #, fuzzy, gcc-internal-format
 msgid "template constraint failure for %qD"
 msgstr "%qT ei ole malli"
 
-#: cp/pt.cc:10353
+#: cp/pt.cc:10374
 #, fuzzy, gcc-internal-format
 msgid "use of invalid variable template %qE"
 msgstr "%qD ei ole muuttuja"
 
-#: cp/pt.cc:11018
+#: cp/pt.cc:11039
 #, gcc-internal-format
 msgid "template instantiation depth exceeds maximum of %d (use %<-ftemplate-depth=%> to increase the maximum)"
 msgstr ""
 
-#: cp/pt.cc:12186
+#: cp/pt.cc:12207
 #, fuzzy, gcc-internal-format
 msgid "flexible array member %qD in union"
 msgstr "joustava taulukkojäsen unionissa"
 
-#: cp/pt.cc:12684
+#: cp/pt.cc:12705
 #, gcc-internal-format
 msgid "fold of empty expansion over %O"
 msgstr ""
 
-#: cp/pt.cc:13113
+#: cp/pt.cc:13134
 #, fuzzy, gcc-internal-format
 msgid "%qE is not the entire pattern of the pack expansion"
 msgstr "%qE ei ole esittelyn alussa"
 
-#: cp/pt.cc:13201
+#: cp/pt.cc:13222
 #, fuzzy, gcc-internal-format
 msgid "mismatched argument pack lengths while expanding %qT"
 msgstr "  täsmäämättömät tyypit %qT ja %qT"
 
-#: cp/pt.cc:13204
+#: cp/pt.cc:13225
 #, fuzzy, gcc-internal-format
 msgid "mismatched argument pack lengths while expanding %qE"
 msgstr "  täsmäämättömät tyypit %qT ja %qT"
 
-#: cp/pt.cc:13816
+#: cp/pt.cc:13837
 #, fuzzy, gcc-internal-format
 msgid "  when instantiating default argument for call to %qD"
 msgstr "%q+D määritelty uudelleen"
 
-#: cp/pt.cc:13911
+#: cp/pt.cc:13932
 #, fuzzy, gcc-internal-format
 msgid "creating pointer to member function of non-class type %qT"
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
@@ -59694,217 +59885,217 @@ msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 #.
 #. is an attempt to declare a variable with function
 #. type.
-#: cp/pt.cc:14936
+#: cp/pt.cc:14960
 #, gcc-internal-format
 msgid "variable %qD has function type"
 msgstr "muuttujalla %qD on funktiotyyppi"
 
-#: cp/pt.cc:15130
+#: cp/pt.cc:15154
 #, gcc-internal-format
 msgid "invalid parameter type %qT"
 msgstr "virheellinen parametrityyppi %qT"
 
-#: cp/pt.cc:15132
+#: cp/pt.cc:15156
 #, gcc-internal-format
 msgid "in declaration %q+D"
 msgstr "esittelyssä %q+D"
 
-#: cp/pt.cc:15258
+#: cp/pt.cc:15282
 #, gcc-internal-format
 msgid "function returning an array"
 msgstr "taulukon palauttava funktio"
 
-#: cp/pt.cc:15260
+#: cp/pt.cc:15284
 #, gcc-internal-format
 msgid "function returning a function"
 msgstr "funktion palauttava funktio"
 
-#: cp/pt.cc:15959
+#: cp/pt.cc:15986
 #, fuzzy, gcc-internal-format
 msgid "forming reference to void"
 msgstr "tyhjää arvoa ei jätetä huomioimatta, vaikka kuuluisi"
 
-#: cp/pt.cc:15961
+#: cp/pt.cc:15988
 #, fuzzy, gcc-internal-format
 msgid "forming pointer to reference type %qT"
 msgstr "NULLin muunnos epäosoitintyypiksi %qT"
 
-#: cp/pt.cc:15963
+#: cp/pt.cc:15990
 #, fuzzy, gcc-internal-format
 msgid "forming reference to reference type %qT"
 msgstr "tyyppitäsmäämättömyys taulukkoviitteessä"
 
-#: cp/pt.cc:15976
+#: cp/pt.cc:16003
 #, fuzzy, gcc-internal-format
 msgid "forming pointer to qualified function type %qT"
 msgstr "tyyppimuunnos lisää funktiotyyppiin uusia määreitä"
 
-#: cp/pt.cc:15979
+#: cp/pt.cc:16006
 #, fuzzy, gcc-internal-format
 msgid "forming reference to qualified function type %qT"
 msgstr "tyyppimuunnos lisää funktiotyyppiin uusia määreitä"
 
-#: cp/pt.cc:16027
+#: cp/pt.cc:16054
 #, fuzzy, gcc-internal-format
 msgid "creating pointer to member of non-class type %qT"
 msgstr "%<void *%>-tyyppistä osoitinta käytetty laskutoimituksessa"
 
-#: cp/pt.cc:16033
+#: cp/pt.cc:16060
 #, fuzzy, gcc-internal-format
 msgid "creating pointer to member reference type %qT"
 msgstr "NULLin muunnos epäosoitintyypiksi %qT"
 
-#: cp/pt.cc:16039
+#: cp/pt.cc:16066
 #, fuzzy, gcc-internal-format
 msgid "creating pointer to member of type void"
 msgstr "%<void *%>-tyyppistä osoitinta käytetty laskutoimituksessa"
 
-#: cp/pt.cc:16105
+#: cp/pt.cc:16132
 #, fuzzy, gcc-internal-format
 msgid "creating array of %qT"
 msgstr "luodaan void-taulukko"
 
-#: cp/pt.cc:16140
+#: cp/pt.cc:16167
 #, gcc-internal-format
 msgid "%qD is instantiated for an empty pack"
 msgstr ""
 
-#: cp/pt.cc:16160
+#: cp/pt.cc:16187
 #, gcc-internal-format
 msgid "%qT is not a class, struct, or union type"
 msgstr "%qT ei ole luokka-, struct- eikä unionityyppi"
 
-#: cp/pt.cc:16192
+#: cp/pt.cc:16221
 #, fuzzy, gcc-internal-format
 msgid "%qT resolves to %qT, which is not an enumeration type"
 msgstr "%Jcase-arvo %qs ei ole luetellussa tyypissä"
 
-#: cp/pt.cc:16200
+#: cp/pt.cc:16229
 #, fuzzy, gcc-internal-format
 msgid "%qT resolves to %qT, which is not a class type"
 msgstr "%qT ei ole luokka-, struct- eikä unionityyppi"
 
-#: cp/pt.cc:16314
+#: cp/pt.cc:16343
 #, fuzzy, gcc-internal-format
 msgid "use of %qs in template"
 msgstr "muodostimen virheellinen käyttö mallina"
 
-#: cp/pt.cc:16605
+#: cp/pt.cc:16642
 #, fuzzy, gcc-internal-format
 msgid "qualifying type %qT does not match destructor name ~%qT"
 msgstr "objektityyppi %qT ei täsmää hajottimen nimen ~%qT kanssa"
 
-#: cp/pt.cc:16620
+#: cp/pt.cc:16657
 #, gcc-internal-format
 msgid "dependent-name %qE is parsed as a non-type, but instantiation yields a type"
 msgstr ""
 
-#: cp/pt.cc:16622
+#: cp/pt.cc:16659
 #, gcc-internal-format
 msgid "say %<typename %E%> if a type is meant"
 msgstr ""
 
-#: cp/pt.cc:16715
+#: cp/pt.cc:16752
 #, fuzzy, gcc-internal-format
 msgid "initializer for %q#D expands to an empty list of expressions"
 msgstr "alustinalkio ei ole vakiolauseke"
 
-#: cp/pt.cc:16866
+#: cp/pt.cc:16903
 #, gcc-internal-format
 msgid "using invalid field %qD"
 msgstr "käytetään virheellistä kenttää %qD"
 
-#: cp/pt.cc:17437 cp/pt.cc:19383
+#: cp/pt.cc:17480 cp/pt.cc:19428
 #, fuzzy, gcc-internal-format
 msgid "invalid use of pack expansion expression"
 msgstr "void-lausekkeen epäkelpo käyttö"
 
-#: cp/pt.cc:17441 cp/pt.cc:19387
+#: cp/pt.cc:17484 cp/pt.cc:19432
 #, fuzzy, gcc-internal-format
 msgid "use %<...%> to expand argument pack"
 msgstr "Käytä rekistereitä argumenttien välittämiseen"
 
-#: cp/pt.cc:19527
+#: cp/pt.cc:19572
 #, fuzzy, gcc-internal-format
 msgid "empty initializer in lambda init-capture"
 msgstr "tallennusluokka annettu parametrille %qs"
 
-#: cp/pt.cc:20709
+#: cp/pt.cc:20757
 #, gcc-internal-format
 msgid "%qD was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation"
 msgstr ""
 
-#: cp/pt.cc:20743
+#: cp/pt.cc:20791
 #, gcc-internal-format
 msgid "declarations in dependent base %qT are not found by unqualified lookup"
 msgstr ""
 
-#: cp/pt.cc:20748
+#: cp/pt.cc:20796
 #, fuzzy, gcc-internal-format
 msgid "use %<this->%D%> instead"
 msgstr "käytä #includea sen sijaan"
 
-#: cp/pt.cc:20751
+#: cp/pt.cc:20799
 #, fuzzy, gcc-internal-format
 msgid "use %<%T::%D%> instead"
 msgstr "käytä #includea sen sijaan"
 
-#: cp/pt.cc:20756
+#: cp/pt.cc:20804
 #, fuzzy, gcc-internal-format
 msgid "%qD declared here, later in the translation unit"
 msgstr "%J%qD esitelty avoimeksi määrittelyn jälkeen"
 
-#: cp/pt.cc:20807
+#: cp/pt.cc:20855
 #, fuzzy, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_convertvector%>"
 msgstr "väärä määrä argumentteja funktiolle %<__builtin_next_arg%>"
 
-#: cp/pt.cc:21042
+#: cp/pt.cc:21090
 #, gcc-internal-format
 msgid "%qT is not a class or namespace"
 msgstr "%qT ei ole luokka eikä nimiavaruus"
 
-#: cp/pt.cc:21045
+#: cp/pt.cc:21093
 #, gcc-internal-format
 msgid "%qD is not a class or namespace"
 msgstr "%qD ei ole luokka eikä nimiavaruus"
 
-#: cp/pt.cc:21366
+#: cp/pt.cc:21417
 #, fuzzy, gcc-internal-format
 msgid "%qT is/uses unnamed type"
 msgstr "%qT on/käyttää anonyymiä tyyppiä"
 
-#: cp/pt.cc:21368
+#: cp/pt.cc:21419
 #, gcc-internal-format
 msgid "template argument for %qD uses local type %qT"
 msgstr "%qD:n malliargumentti käyttää paikallista tyyppiä %qT"
 
-#: cp/pt.cc:21378
+#: cp/pt.cc:21429
 #, fuzzy, gcc-internal-format
 msgid "%qT is a variably modified type"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: cp/pt.cc:21393
+#: cp/pt.cc:21444
 #, fuzzy, gcc-internal-format
 msgid "integral expression %qE is not constant"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/pt.cc:21411
+#: cp/pt.cc:21462
 #, fuzzy, gcc-internal-format
 msgid "  trying to instantiate %qD"
 msgstr "ohjelman alustusta yritettäessä"
 
-#: cp/pt.cc:25563
+#: cp/pt.cc:25611
 #, fuzzy, gcc-internal-format
 msgid "ambiguous template instantiation for %q#T"
 msgstr "%qs-attribuuttia ei huomioida ei-luokkatyypeille"
 
-#: cp/pt.cc:25565
+#: cp/pt.cc:25613
 #, fuzzy, gcc-internal-format
 msgid "ambiguous template instantiation for %q#D"
 msgstr "malliesittelylle %q+D"
 
-#: cp/pt.cc:25571
+#: cp/pt.cc:25619
 #, fuzzy
 msgid "%s %#qS"
 msgstr ""
@@ -59912,82 +60103,82 @@ msgstr ""
 "%s, %s, %s, %s,\n"
 "%s, %s ja %s.\n"
 
-#: cp/pt.cc:25595 cp/pt.cc:25690
+#: cp/pt.cc:25643 cp/pt.cc:25738
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation of non-template %q#D"
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: cp/pt.cc:25601
+#: cp/pt.cc:25649
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation of variable concept %q#D"
 msgstr "muuttuja %qD esitelty %<inline%>:ksi"
 
-#: cp/pt.cc:25603
+#: cp/pt.cc:25651
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation of function concept %q#D"
 msgstr "funktio %qE esitelty implisiittisesti"
 
-#: cp/pt.cc:25622
+#: cp/pt.cc:25670
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a static data member of a class template"
 msgstr "staattinen jäsenfunktio %q#D esitelty tyyppimääreillä"
 
-#: cp/pt.cc:25628 cp/pt.cc:25685
+#: cp/pt.cc:25676 cp/pt.cc:25733
 #, fuzzy, gcc-internal-format
 msgid "no matching template for %qD found"
 msgstr "%qD ei ole mallifunktio"
 
-#: cp/pt.cc:25633
+#: cp/pt.cc:25681
 #, fuzzy, gcc-internal-format
 msgid "type %qT for explicit instantiation %qD does not match declared type %qT"
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: cp/pt.cc:25641
+#: cp/pt.cc:25689
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation of %q#D"
 msgstr "käyttämätön muuttuja %q+D"
 
-#: cp/pt.cc:25677
+#: cp/pt.cc:25725
 #, fuzzy, gcc-internal-format
 msgid "duplicate explicit instantiation of %q#D"
 msgstr "jäsenen %q+D kaksoiskappale"
 
-#: cp/pt.cc:25700 cp/pt.cc:25767
+#: cp/pt.cc:25748 cp/pt.cc:25815
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ 1998 forbids the use of %<extern%> on explicit instantiations"
 msgstr "ISO C++ kieltää metodiosoittimen käytön vähennyslaskussa"
 
-#: cp/pt.cc:25705 cp/pt.cc:25782
+#: cp/pt.cc:25753 cp/pt.cc:25830
 #, fuzzy, gcc-internal-format
 msgid "storage class %qD applied to template instantiation"
 msgstr "%J%qE-attribuutti soveltuu vain funktioihin"
 
-#: cp/pt.cc:25739
+#: cp/pt.cc:25787
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation of non-class template %qD"
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: cp/pt.cc:25742
+#: cp/pt.cc:25790
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation of non-template type %qT"
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: cp/pt.cc:25751
+#: cp/pt.cc:25799
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation of %q#T before definition of template"
 msgstr "%qs:n esittely taulukollisena tyhjiä alkioita"
 
-#: cp/pt.cc:25772
+#: cp/pt.cc:25820
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ forbids the use of %qE on explicit instantiations"
 msgstr "ISO C++ kieltää metodiosoittimen käytön vähennyslaskussa"
 
-#: cp/pt.cc:25812
+#: cp/pt.cc:25860
 #, fuzzy, gcc-internal-format
 msgid "duplicate explicit instantiation of %q#T"
 msgstr "jäsenen %q+D kaksoiskappale"
 
-#: cp/pt.cc:26110
+#: cp/pt.cc:26158
 #, fuzzy, gcc-internal-format
 msgid "exception specification of %qD depends on itself"
 msgstr "%q+D:n edellinen esittely oli täällä"
@@ -59999,153 +60190,158 @@ msgstr "%q+D:n edellinen esittely oli täällä"
 #. member function or static data member of a class template
 #. shall be present in every translation unit in which it is
 #. explicitly instantiated.
-#: cp/pt.cc:26610
+#: cp/pt.cc:26652
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation of %qD but no definition available"
 msgstr "käyttämätön muuttuja %q+D"
 
-#: cp/pt.cc:26658
+#: cp/pt.cc:26700
 #, gcc-internal-format
 msgid "template instantiation depth exceeds maximum of %d instantiating %q+D, possibly from virtual table generation (use %<-ftemplate-depth=%> to increase the maximum)"
 msgstr ""
 
-#: cp/pt.cc:27023
+#: cp/pt.cc:27072
 #, fuzzy, gcc-internal-format
 msgid "non-type template parameters of deduced class type only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/pt.cc:27053
+#: cp/pt.cc:27102
 #, fuzzy, gcc-internal-format
 msgid "%qT is not a valid type for a template non-type parameter because it is not structural"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:27062
+#: cp/pt.cc:27111
 #, fuzzy, gcc-internal-format
 msgid "non-type template parameters of class type only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/pt.cc:27070
+#: cp/pt.cc:27119
 #, fuzzy, gcc-internal-format
 msgid "invalid template non-type parameter"
 msgstr "staattinen tai tyyppimääreitä ei-parametrisessa taulukkoesittelijässä"
 
-#: cp/pt.cc:27072
+#: cp/pt.cc:27121
 #, fuzzy, gcc-internal-format
 msgid "%q#T is not a valid type for a template non-type parameter"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: cp/pt.cc:28465
+#: cp/pt.cc:28519
 #, fuzzy, gcc-internal-format
 msgid "keyword %<template%> not allowed in declarator-id"
 msgstr "%<[*]%> ei ole esittelyssä"
 
-#: cp/pt.cc:28755
+#: cp/pt.cc:28809
 #, fuzzy, gcc-internal-format
 msgid "a concept cannot be constrained"
 msgstr "hajotin ei voi olla staattinen jäsenfunktio"
 
-#: cp/pt.cc:28764
+#: cp/pt.cc:28818
 #, fuzzy, gcc-internal-format
 msgid "concept %qE not in namespace scope"
 msgstr "%qT ei ole luokka eikä nimiavaruus"
 
-#: cp/pt.cc:28791
+#: cp/pt.cc:28824
+#, fuzzy, gcc-internal-format
+msgid "concept %qE has multiple template parameter lists"
+msgstr "malliesittelylle %q+D"
+
+#: cp/pt.cc:28851
 #, fuzzy, gcc-internal-format
 msgid "deducing from brace-enclosed initializer list requires %<#include <initializer_list>%>"
 msgstr "funktion %q+D määrittely on merkitty dllimport-tyyppiseksi"
 
-#: cp/pt.cc:29843
+#: cp/pt.cc:29903
 #, fuzzy, gcc-internal-format
 msgid "non-deducible template %qT used without template arguments"
 msgstr "%qD ei ole mallifunktio"
 
-#: cp/pt.cc:29849
+#: cp/pt.cc:29909
 #, fuzzy, gcc-internal-format
 msgid "alias template deduction only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/pt.cc:29955
+#: cp/pt.cc:30015
 #, fuzzy, 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 "%qE ei ole kelvollinen malliargumentti tyypille %qT, koska se ei ole objekti ulkoisella linkityksellä"
 
-#: cp/pt.cc:29962
+#: cp/pt.cc:30022
 #, fuzzy, gcc-internal-format
 msgid "cannot deduce template arguments of %qT, as it has no viable deduction guides"
 msgstr "%qE ei ole kelvollinen malliargumentti tyypille %qT, koska se ei ole objekti ulkoisella linkityksellä"
 
-#: cp/pt.cc:29974
+#: cp/pt.cc:30034
 #, fuzzy, gcc-internal-format
 msgid "class template argument deduction failed:"
 msgstr "liian paljon argumentteja funktiolle %qs"
 
-#: cp/pt.cc:29977
+#: cp/pt.cc:30037
 #, fuzzy, gcc-internal-format
 msgid "explicit deduction guides not considered for copy-initialization"
 msgstr "Tiedostoa ”%s” on jo tarkasteltu.\n"
 
 #. TODO: Pass down location from cp_finish_decl.
-#: cp/pt.cc:29991
+#: cp/pt.cc:30051
 #, gcc-internal-format
 msgid "class template argument deduction for %qT failed: explicit deduction guide selected in copy-list-initialization"
 msgstr ""
 
-#: cp/pt.cc:29995
+#: cp/pt.cc:30055
 #, fuzzy, gcc-internal-format
 msgid "explicit deduction guide declared here"
 msgstr "sisäkkäinen funktio %qs esitelty %<extern%>:ksi"
 
-#: cp/pt.cc:30009
+#: cp/pt.cc:30069
 #, fuzzy, gcc-internal-format
 msgid "%qT may not intend to support class template argument deduction"
 msgstr "liian paljon argumentteja funktiolle %qs"
 
-#: cp/pt.cc:30011
+#: cp/pt.cc:30071
 #, gcc-internal-format
 msgid "add a deduction guide to suppress this warning"
 msgstr ""
 
-#: cp/pt.cc:30076
+#: cp/pt.cc:30136
 #, gcc-internal-format
 msgid "direct-list-initialization of %<auto%> requires exactly one element"
 msgstr ""
 
-#: cp/pt.cc:30079
+#: cp/pt.cc:30139
 #, gcc-internal-format
 msgid "for deduction to %<std::initializer_list%>, use copy-list-initialization (i.e. add %<=%> before the %<{%>)"
 msgstr ""
 
-#: cp/pt.cc:30169
+#: cp/pt.cc:30229
 #, fuzzy, gcc-internal-format
 msgid "unable to deduce lambda return type from %qE"
 msgstr "ei voi emuloida %qs"
 
-#: cp/pt.cc:30171
+#: cp/pt.cc:30231
 #, fuzzy, gcc-internal-format
 msgid "unable to deduce %qT from %qE"
 msgstr "%qE:n muunnos tyypistä %qT tyyppiin %qT ei ole yksiselitteinen"
 
-#: cp/pt.cc:30243
+#: cp/pt.cc:30303
 #, fuzzy, gcc-internal-format
 msgid "placeholder constraints not satisfied"
 msgstr "%qD ei ole %qD:n jäsen"
 
-#: cp/pt.cc:30247
+#: cp/pt.cc:30307
 #, fuzzy, gcc-internal-format
 msgid "deduced initializer does not satisfy placeholder constraints"
 msgstr "alustusalkio ei ole vakio"
 
-#: cp/pt.cc:30251
+#: cp/pt.cc:30311
 #, fuzzy, gcc-internal-format
 msgid "deduced return type does not satisfy placeholder constraints"
 msgstr "alustusalkio ei ole vakio"
 
-#: cp/pt.cc:30255
+#: cp/pt.cc:30315
 #, fuzzy, gcc-internal-format
 msgid "deduced expression type does not satisfy placeholder constraints"
 msgstr "alustusalkio ei ole vakio"
 
-#: cp/pt.cc:30395
+#: cp/pt.cc:30455
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %qT in template argument"
 msgstr "virheellinen %<auto%>:n käyttö muunnosoperaattorissa"
@@ -60195,87 +60391,87 @@ msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 msgid "%qT is an inaccessible base of %qT"
 msgstr "perustyypin %qT kaksoiskappale virheellinen"
 
-#: cp/search.cc:1917
+#: cp/search.cc:1913
 #, gcc-internal-format
 msgid "looser exception specification on overriding virtual function %q+#F"
 msgstr ""
 
-#: cp/search.cc:1920
+#: cp/search.cc:1916
 #, fuzzy, gcc-internal-format
 msgid "overridden function is %q#F"
 msgstr "poistamaton funktio %q+D"
 
-#: cp/search.cc:1995
+#: cp/search.cc:1991
 #, fuzzy, gcc-internal-format
 msgid "invalid covariant return type for %q#D"
 msgstr "epäkelpo vektorityyppi attribuutille %qs"
 
-#: cp/search.cc:1997 cp/search.cc:2014 cp/search.cc:2031
+#: cp/search.cc:1993 cp/search.cc:2010 cp/search.cc:2027
 #, fuzzy, gcc-internal-format
 msgid "overridden function is %q#D"
 msgstr "poistamaton funktio %q+D"
 
-#: cp/search.cc:2010
+#: cp/search.cc:2006
 #, fuzzy, gcc-internal-format
 msgid "invalid covariant return type for %q+#D"
 msgstr "epäkelpo vektorityyppi attribuutille %qs"
 
-#: cp/search.cc:2012
+#: cp/search.cc:2008
 #, fuzzy, gcc-internal-format
 msgid "conflicting return type specified for %q+#D"
 msgstr "ristiriitaiset tyyppimääreet %q+D:lle"
 
-#: cp/search.cc:2029
+#: cp/search.cc:2025
 #, fuzzy, gcc-internal-format
 msgid "conflicting type attributes specified for %q+#D"
 msgstr "ristiriitaiset tyyppimääreet %q+D:lle"
 
-#: cp/search.cc:2044
+#: cp/search.cc:2040
 #, fuzzy, gcc-internal-format
 msgid "%<consteval%> function %q+D overriding non-%<consteval%> function"
 msgstr "sisäinen funktio %q+D esitelty ei-funktiona"
 
-#: cp/search.cc:2047
+#: cp/search.cc:2043
 #, fuzzy, gcc-internal-format
 msgid "non-%<consteval%> function %q+D overriding %<consteval%> function"
 msgstr "sisäinen funktio %q+D esitelty ei-funktiona"
 
-#: cp/search.cc:2050 cp/search.cc:2079 cp/search.cc:2088 cp/search.cc:2097
+#: cp/search.cc:2046 cp/search.cc:2075 cp/search.cc:2084 cp/search.cc:2093
 #, fuzzy, gcc-internal-format
 msgid "overridden function is %qD"
 msgstr "poistamaton funktio %q+D"
 
-#: cp/search.cc:2066
+#: cp/search.cc:2062
 #, fuzzy, gcc-internal-format
 msgid "%qD declared %<transaction_safe_dynamic%>"
 msgstr "muuttuja %qD esitelty %<inline%>:ksi"
 
-#: cp/search.cc:2068
+#: cp/search.cc:2064
 #, fuzzy, gcc-internal-format
 msgid "overriding %qD declared %<transaction_safe%>"
 msgstr "muuttuja %qD esitelty %<inline%>:ksi"
 
-#: cp/search.cc:2076
+#: cp/search.cc:2072
 #, fuzzy, gcc-internal-format
 msgid "deleted function %q+D overriding non-deleted function"
 msgstr "poistamaton funktio %q+D"
 
-#: cp/search.cc:2085
+#: cp/search.cc:2081
 #, fuzzy, gcc-internal-format
 msgid "non-deleted function %q+D overriding deleted function"
 msgstr "poistamaton funktio %q+D"
 
-#: cp/search.cc:2095
+#: cp/search.cc:2091
 #, fuzzy, gcc-internal-format
 msgid "virtual function %q+D overriding final function"
 msgstr "sisäinen funktio %q+D esitelty ei-funktiona"
 
-#: cp/search.cc:2180
+#: cp/search.cc:2176
 #, fuzzy, gcc-internal-format
 msgid "%q+#D cannot be declared"
 msgstr "%q+D esitelty ystävänä"
 
-#: cp/search.cc:2181
+#: cp/search.cc:2177
 #, fuzzy, gcc-internal-format
 msgid "  since %q+#D declared in base class"
 msgstr "%q+D esitelty ystävänä"
@@ -60330,531 +60526,536 @@ msgstr "%<for%>-silmukan alkuesittelyt ovat sallittuja vain C99-tilassa"
 msgid "invalid use of member %qD in static member function"
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: cp/semantics.cc:2393
+#: cp/semantics.cc:2396
 #, fuzzy, gcc-internal-format
 msgid "%qE missing template arguments"
 msgstr "täsmäämättömät argumentit"
 
-#: cp/semantics.cc:2453
+#: cp/semantics.cc:2456
 #, fuzzy, gcc-internal-format
 msgid "a statement expression is an insufficient context for overload resolution"
 msgstr "liukulukuvakio esikääntäjän lausekkeessa"
 
-#: cp/semantics.cc:2805
+#: cp/semantics.cc:2808
 #, fuzzy, gcc-internal-format
 msgid "cannot call a concept as a function"
 msgstr "%qE:a saatetaan käyttää alustamattomana tässä funktiossa"
 
-#: cp/semantics.cc:2873
+#: cp/semantics.cc:2876
 #, fuzzy, gcc-internal-format
 msgid "arguments to destructor are not allowed"
 msgstr "ei argumentteja"
 
-#: cp/semantics.cc:2970
+#: cp/semantics.cc:2973
 #, gcc-internal-format
 msgid "%<this%> is unavailable for static member functions"
 msgstr "%<this%> ei ole käytettävissä staattisissa jäsenfunktioissa"
 
-#: cp/semantics.cc:2972
+#: cp/semantics.cc:2975
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %<this%> in non-member function"
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: cp/semantics.cc:2974
+#: cp/semantics.cc:2977
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %<this%> at top level"
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: cp/semantics.cc:2996
+#: cp/semantics.cc:2999
 #, fuzzy, gcc-internal-format
 msgid "invalid qualifying scope in pseudo-destructor name"
 msgstr "objektityyppi %qT ei täsmää hajottimen nimen ~%qT kanssa"
 
-#: cp/semantics.cc:3004 cp/typeck.cc:2931
+#: cp/semantics.cc:3007 cp/typeck.cc:2940
 #, fuzzy, gcc-internal-format
 msgid "qualified type %qT does not match destructor name ~%qT"
 msgstr "objektityyppi %qT ei täsmää hajottimen nimen ~%qT kanssa"
 
-#: cp/semantics.cc:3026
+#: cp/semantics.cc:3029
 #, gcc-internal-format
 msgid "%qE is not of type %qT"
 msgstr "%qE ei ole tyyppiä %qT"
 
-#: cp/semantics.cc:3133
+#: cp/semantics.cc:3136
 #, gcc-internal-format
 msgid "compound literal of non-object type %qT"
 msgstr "ei-objektityyppinen yhdysliteraali %qT"
 
-#: cp/semantics.cc:3152
+#: cp/semantics.cc:3156
+#, fuzzy, gcc-internal-format
+msgid "%<auto{x}%> cannot be constrained"
+msgstr "hajotin ei voi olla staattinen jäsenfunktio"
+
+#: cp/semantics.cc:3161
 #, fuzzy, gcc-internal-format
 msgid "%<auto{x}%> only available with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/semantics.cc:3337
+#: cp/semantics.cc:3342
 #, fuzzy, gcc-internal-format
 msgid "template type parameters must use the keyword %<class%> or %<typename%>"
 msgstr "tallennusluokka annettu typenamelle"
 
-#: cp/semantics.cc:3387
+#: cp/semantics.cc:3392
 #, fuzzy, gcc-internal-format
 msgid "invalid use of type %qT as a default value for a template template-parameter"
 msgstr "mallinimen %qE virheellinen käyttö ilman argumenttiluetteloa"
 
-#: cp/semantics.cc:3390
+#: cp/semantics.cc:3395
 #, fuzzy, gcc-internal-format
 msgid "invalid default argument for a template template parameter"
 msgstr "mallinimen %qE virheellinen käyttö ilman argumenttiluetteloa"
 
-#: cp/semantics.cc:3407
+#: cp/semantics.cc:3412
 #, fuzzy, gcc-internal-format
 msgid "definition of %q#T inside template parameter list"
 msgstr "malliesittelylle %q+D"
 
-#: cp/semantics.cc:3438
+#: cp/semantics.cc:3443
 #, fuzzy, gcc-internal-format
 msgid "invalid definition of qualified type %qT"
 msgstr "virheellinen muunnos tyypistä %qT tyyppiin %qT"
 
-#: cp/semantics.cc:3729
+#: cp/semantics.cc:3735
 #, fuzzy, gcc-internal-format
 msgid "invalid base-class specification"
 msgstr "perustyypin %qT kaksoiskappale virheellinen"
 
-#: cp/semantics.cc:3894
+#: cp/semantics.cc:3900
 #, fuzzy, gcc-internal-format
 msgid "cannot capture member %qD of anonymous union"
 msgstr "jäsentä %q+D käytetty virheellisesti staattisessa jäsenfunktiossa"
 
-#: cp/semantics.cc:3911 cp/semantics.cc:12155
+#: cp/semantics.cc:3917 cp/semantics.cc:12154
 #, fuzzy, gcc-internal-format
 msgid "%qD is not captured"
 msgstr "        %qD"
 
-#: cp/semantics.cc:3915
+#: cp/semantics.cc:3921
 #, fuzzy, gcc-internal-format
 msgid "the lambda has no capture-default"
 msgstr "oletusargumentti määritelty lambda-parametrille"
 
-#: cp/semantics.cc:3917
+#: cp/semantics.cc:3923
 #, gcc-internal-format
 msgid "lambda in local class %q+T cannot capture variables from the enclosing context"
 msgstr ""
 
-#: cp/semantics.cc:3929
+#: cp/semantics.cc:3935
 #, fuzzy, gcc-internal-format
 msgid "use of local variable with automatic storage from containing function"
 msgstr "poistettu funktio %q+D"
 
-#: cp/semantics.cc:3931
+#: cp/semantics.cc:3937
 #, fuzzy, gcc-internal-format
 msgid "use of parameter from containing function"
 msgstr "poistettu funktio %q+D"
 
-#: cp/semantics.cc:4058
+#: cp/semantics.cc:4064
 #, fuzzy, gcc-internal-format
 msgid "use of parameter outside function body"
 msgstr "poistettu funktio %q+D"
 
-#: cp/semantics.cc:4068
+#: cp/semantics.cc:4074
 #, fuzzy, gcc-internal-format
 msgid "missing template arguments"
 msgstr "täsmäämättömät argumentit"
 
-#: cp/semantics.cc:4104
+#: cp/semantics.cc:4110
 #, gcc-internal-format
 msgid "template parameter %qD of type %qT is not allowed in an integral constant expression because it is not of integral or enumeration type"
 msgstr ""
 
-#: cp/semantics.cc:4135
+#: cp/semantics.cc:4141
 #, fuzzy, gcc-internal-format
 msgid "use of class template %qT as expression"
 msgstr "  odotettiin luokkamallia, saatiin %qT"
 
 #. Ambiguous reference to base members.
-#: cp/semantics.cc:4142
+#: cp/semantics.cc:4148
 #, fuzzy, gcc-internal-format
 msgid "request for member %qD is ambiguous in multiple inheritance lattice"
 msgstr "%qD:n esittely ei-jäsenenä"
 
-#: cp/semantics.cc:4170
+#: cp/semantics.cc:4176
 #, fuzzy, gcc-internal-format
 msgid "%qD cannot appear in a constant-expression"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/semantics.cc:4347
+#: cp/semantics.cc:4338
 #, fuzzy, gcc-internal-format
 msgid "type of %qE is unknown"
 msgstr "%qE ei ole tyyppi"
 
-#: cp/semantics.cc:4376
+#: cp/semantics.cc:4367
 #, fuzzy, gcc-internal-format
 msgid "%qT is not an enumeration type"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
 #. Parameter packs can only be used in templates
-#: cp/semantics.cc:4510
+#: cp/semantics.cc:4501
 #, fuzzy, gcc-internal-format
 msgid "parameter pack %<__bases%> only valid in template declaration"
 msgstr "tarpeeton tyyppimääre tyhjässä esittelyssä"
 
-#: cp/semantics.cc:4542
+#: cp/semantics.cc:4533
 #, fuzzy, gcc-internal-format
 msgid "cannot apply %<offsetof%> to destructor %<~%T%>"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: cp/semantics.cc:4555
+#: cp/semantics.cc:4546
 #, fuzzy, gcc-internal-format
 msgid "cannot apply %<offsetof%> to member function %qD"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: cp/semantics.cc:4559
+#: cp/semantics.cc:4550
 #, fuzzy, gcc-internal-format
 msgid "cannot apply %<offsetof%> to member function"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: cp/semantics.cc:4564
+#: cp/semantics.cc:4555
 #, fuzzy, gcc-internal-format
 msgid "cannot apply %<offsetof%> to an enumerator %qD"
 msgstr "jäsenfunktiota %qD ei voi kutsua ilman oliota"
 
-#: cp/semantics.cc:4575
+#: cp/semantics.cc:4566
 #, fuzzy, gcc-internal-format
 msgid "%<offsetof%> within non-standard-layout type %qT is conditionally-supported"
 msgstr "ei-triviaalisti-kopioitavan tyyppisiä %q#T-olioita ei voi vastaanottaa %<...%>:n kautta"
 
-#: cp/semantics.cc:5915
+#: cp/semantics.cc:5906
 #, fuzzy, gcc-internal-format
 msgid "user defined reduction lookup is ambiguous"
 msgstr "tyypillä %qE on käyttäjän määrittelemä muodostin"
 
-#: cp/semantics.cc:6188
+#: cp/semantics.cc:6179
 #, fuzzy, gcc-internal-format
 msgid "%qE in %<reduction%> clause is a zero size array"
 msgstr "ISO C kieltää nollan kokoisen taulukon %qE"
 
-#: cp/semantics.cc:6234
+#: cp/semantics.cc:6225
 #, fuzzy, gcc-internal-format
 msgid "%qE has const type for %<reduction%>"
 msgstr "tyypillä %qE on virtuaalisia jäsenfunktioita"
 
-#: cp/semantics.cc:6353
+#: cp/semantics.cc:6344
 #, fuzzy, gcc-internal-format
 msgid "user defined reduction with constructor initializer for base class %qT"
 msgstr "tyypillä %qE on käyttäjän määrittelemä muodostin"
 
-#: cp/semantics.cc:6820
+#: cp/semantics.cc:6811
 #, gcc-internal-format
 msgid "linear clause with %qs modifier applied to non-reference variable with %qT type"
 msgstr ""
 
-#: cp/semantics.cc:6835
+#: cp/semantics.cc:6826
 #, gcc-internal-format
 msgid "linear clause applied to non-integral non-pointer variable with %qT type"
 msgstr ""
 
-#: cp/semantics.cc:6859
+#: cp/semantics.cc:6850
 #, fuzzy, gcc-internal-format
 msgid "linear step expression must be integral"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/semantics.cc:6952 cp/semantics.cc:7084 cp/semantics.cc:7143
-#: cp/semantics.cc:7541 cp/semantics.cc:8658
+#: cp/semantics.cc:6943 cp/semantics.cc:7075 cp/semantics.cc:7134
+#: cp/semantics.cc:7532 cp/semantics.cc:8649
 #, gcc-internal-format
 msgid "%<this%> allowed in OpenMP only in %<declare simd%> clauses"
 msgstr ""
 
-#: cp/semantics.cc:6964 cp/semantics.cc:8671
+#: cp/semantics.cc:6955 cp/semantics.cc:8662
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a variable in clause %qs"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: cp/semantics.cc:7097
+#: cp/semantics.cc:7088
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a variable in clause %<firstprivate%>"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: cp/semantics.cc:7156
+#: cp/semantics.cc:7147
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a variable in clause %<lastprivate%>"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: cp/semantics.cc:7206
+#: cp/semantics.cc:7197
 #, fuzzy, gcc-internal-format
 msgid "%<gang%> static expression must be integral"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: cp/semantics.cc:7220
+#: cp/semantics.cc:7211
 #, fuzzy, gcc-internal-format
 msgid "%<gang%> static value must be positive"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: cp/semantics.cc:7254
+#: cp/semantics.cc:7245
 #, fuzzy, gcc-internal-format
 msgid "%<gang%> num expression must be integral"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: cp/semantics.cc:7257
+#: cp/semantics.cc:7248
 #, fuzzy, gcc-internal-format
 msgid "%<vector%> length expression must be integral"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: cp/semantics.cc:7261
+#: cp/semantics.cc:7252
 #, fuzzy, gcc-internal-format
 msgid "%<worker%> num expression must be integral"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: cp/semantics.cc:7283
+#: cp/semantics.cc:7274
 #, fuzzy, gcc-internal-format
 msgid "%<gang%> num value must be positive"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: cp/semantics.cc:7287
+#: cp/semantics.cc:7278
 #, fuzzy, gcc-internal-format
 msgid "%<vector%> length value must be positive"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: cp/semantics.cc:7292
+#: cp/semantics.cc:7283
 #, fuzzy, gcc-internal-format
 msgid "%<worker%> num value must be positive"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: cp/semantics.cc:7366
+#: cp/semantics.cc:7357
 #, fuzzy, gcc-internal-format
 msgid "schedule chunk size expression must be integral"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/semantics.cc:7399
+#: cp/semantics.cc:7390
 #, fuzzy, gcc-internal-format
 msgid "%qs length expression must be integral"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/semantics.cc:7413
+#: cp/semantics.cc:7404
 #, fuzzy, gcc-internal-format
 msgid "%qs length expression must be positive constant integer expression"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: cp/semantics.cc:7433
+#: cp/semantics.cc:7424
 #, fuzzy, gcc-internal-format
 msgid "%<async%> expression must be integral"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/semantics.cc:7462
+#: cp/semantics.cc:7453
 #, fuzzy, gcc-internal-format
 msgid "%<thread_limit%> expression must be integral"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/semantics.cc:7492
+#: cp/semantics.cc:7483
 #, fuzzy, gcc-internal-format
 msgid "%<device%> id must be integral"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/semantics.cc:7523
+#: cp/semantics.cc:7514
 #, fuzzy, gcc-internal-format
 msgid "%<dist_schedule%> chunk size expression must be integral"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/semantics.cc:7552
+#: cp/semantics.cc:7543
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a variable in %<aligned%> clause"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: cp/semantics.cc:7567
+#: cp/semantics.cc:7558
 #, fuzzy, gcc-internal-format
 msgid "%qE in %<aligned%> clause is neither a pointer nor an array nor a reference to pointer or array"
 msgstr "indeksoitu arvo ei ole taulukko eikä osoitin"
 
-#: cp/semantics.cc:7574
+#: cp/semantics.cc:7565
 #, fuzzy, gcc-internal-format
 msgid "%qD appears more than once in %<aligned%> clauses"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: cp/semantics.cc:7589
+#: cp/semantics.cc:7580
 #, fuzzy, gcc-internal-format
 msgid "%<aligned%> clause alignment expression must be integral"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: cp/semantics.cc:7622
+#: cp/semantics.cc:7613
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a variable in %<nontemporal%> clause"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: cp/semantics.cc:7633
+#: cp/semantics.cc:7624
 #, fuzzy, gcc-internal-format
 msgid "%qD appears more than once in %<nontemporal%> clauses"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: cp/semantics.cc:7650
+#: cp/semantics.cc:7641
 #, fuzzy, gcc-internal-format
 msgid "%<this%> not allowed in %<allocate%> clause"
 msgstr "instanssimuuttuja %qE on esitelty yksityisenä"
 
-#: cp/semantics.cc:7662
+#: cp/semantics.cc:7653
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a variable in %<allocate%> clause"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: cp/semantics.cc:7671
+#: cp/semantics.cc:7662
 #, fuzzy, gcc-internal-format
 msgid "%qD appears more than once in %<allocate%> clauses"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: cp/semantics.cc:7808
+#: cp/semantics.cc:7799
 #, fuzzy, gcc-internal-format
 msgid "%qD is not lvalue expression nor array section in %qs clause"
 msgstr "muuttuja %qD esitelty uudelleen funktiona"
 
-#: cp/semantics.cc:8318
+#: cp/semantics.cc:8309
 #, fuzzy, gcc-internal-format
 msgid "template %qE in clause %qs"
 msgstr "%qE ei ole malli"
 
-#: cp/semantics.cc:8322
+#: cp/semantics.cc:8313
 #, fuzzy, gcc-internal-format
 msgid "overloaded function name %qE in clause %qs"
 msgstr "%qE ei ole malli"
 
-#: cp/semantics.cc:8391
+#: cp/semantics.cc:8382
 #, fuzzy, gcc-internal-format
 msgid "%<grainsize%> expression must be integral"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/semantics.cc:8421
+#: cp/semantics.cc:8412
 #, fuzzy, gcc-internal-format
 msgid "%<priority%> expression must be integral"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/semantics.cc:8451
+#: cp/semantics.cc:8442
 #, fuzzy, gcc-internal-format
 msgid "%<hint%> expression must be integral"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/semantics.cc:8464
+#: cp/semantics.cc:8455
 #, fuzzy, gcc-internal-format
 msgid "%<hint%> expression must be constant integer expression"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: cp/semantics.cc:8481
+#: cp/semantics.cc:8472
 #, fuzzy, gcc-internal-format
 msgid "%<filter%> expression must be integral"
 msgstr "taulukon %qD koko ei ole kokonaislukutyyppinen vakiolauseke"
 
-#: cp/semantics.cc:8512
+#: cp/semantics.cc:8503
 #, fuzzy, gcc-internal-format
 msgid "%qs variable is neither a pointer nor reference to pointer"
 msgstr "indeksoitu arvo ei ole taulukko eikä osoitin"
 
-#: cp/semantics.cc:8522
+#: cp/semantics.cc:8513
 #, fuzzy, gcc-internal-format
 msgid "%qs variable is neither a pointer, nor an array nor reference to pointer or array"
 msgstr "indeksoitu arvo ei ole taulukko eikä osoitin"
 
-#: cp/semantics.cc:8599
+#: cp/semantics.cc:8590
 #, fuzzy, gcc-internal-format
 msgid "%<tile%> argument needs integral type"
 msgstr "%s:n arvon on oltava kokonaisluku"
 
-#: cp/semantics.cc:9004
+#: cp/semantics.cc:8995
 #, gcc-internal-format
 msgid "%<const%> qualified %qE without %<mutable%> member may appear only in %<shared%> or %<firstprivate%> clauses"
 msgstr ""
 
-#: cp/semantics.cc:9231
+#: cp/semantics.cc:9222
 #, gcc-internal-format
 msgid "%<threadprivate%> %qD is not file, namespace or block scope variable"
 msgstr ""
 
-#: cp/semantics.cc:9245
+#: cp/semantics.cc:9236
 #, fuzzy, gcc-internal-format
 msgid "%<threadprivate%> %qE directive not in %qT definition"
 msgstr "%Jparametrin %qD tyyppi on vaillinainen"
 
-#: cp/semantics.cc:9973
+#: cp/semantics.cc:9964
 #, fuzzy, gcc-internal-format
 msgid "difference between %qE and %qD does not have integer type"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: cp/semantics.cc:10441
+#: cp/semantics.cc:10432
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp simd%> used with class iteration variable %qE"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: cp/semantics.cc:10751 cp/semantics.cc:10761
+#: cp/semantics.cc:10742 cp/semantics.cc:10752
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp atomic update%> uses two different expressions for memory"
 msgstr "virheellinen tyyppi iterointimuuttujalle %qE"
 
-#: cp/semantics.cc:11179
+#: cp/semantics.cc:11170
 #, gcc-internal-format, gfc-internal-format
 msgid "static assertion failed: %s"
 msgstr "staattinen väite epäonnistui: %s"
 
-#: cp/semantics.cc:11193
+#: cp/semantics.cc:11184
 #, fuzzy, gcc-internal-format
 msgid "the comparison reduces to %qE"
 msgstr "liikaa argumentteja metodille %qE"
 
-#: cp/semantics.cc:11196
+#: cp/semantics.cc:11187
 #, fuzzy, gcc-internal-format
 msgid "%qE evaluates to false"
 msgstr "vertailu ”etumerkitön lauseke < 0” on aina epätosi"
 
-#: cp/semantics.cc:11200
+#: cp/semantics.cc:11191
 #, gcc-internal-format
 msgid "non-constant condition for static assertion"
 msgstr "ei-vakio ehto staattiselle väitteelle"
 
-#: cp/semantics.cc:11229
+#: cp/semantics.cc:11220
 #, fuzzy, gcc-internal-format
 msgid "argument to %<decltype%> must be an expression"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: cp/semantics.cc:11266
+#: cp/semantics.cc:11265
 #, fuzzy, gcc-internal-format
 msgid "%<decltype%> cannot resolve address of overloaded function"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: cp/semantics.cc:11501
+#: cp/semantics.cc:11500
 #, gcc-internal-format
 msgid "%<__builtin_is_pointer_interconvertible_with_class%> needs a single argument"
 msgstr ""
 
-#: cp/semantics.cc:11510
+#: cp/semantics.cc:11509
 #, gcc-internal-format
 msgid "%<__builtin_is_pointer_interconvertible_with_class%> argument is not pointer to member"
 msgstr ""
 
-#: cp/semantics.cc:11681
+#: cp/semantics.cc:11680
 #, gcc-internal-format
 msgid "%<__builtin_is_corresponding_member%> not well defined for anonymous unions"
 msgstr ""
 
-#: cp/semantics.cc:11705
+#: cp/semantics.cc:11704
 #, fuzzy, gcc-internal-format
 #| msgid "%<__builtin_next_arg%> called without an argument"
 msgid "%<__builtin_is_corresponding_member%> needs two arguments"
 msgstr "funktiota %<__builtin_next_arg%> kutsuttu ilman argumenttia"
 
-#: cp/semantics.cc:11716
+#: cp/semantics.cc:11715
 #, gcc-internal-format
 msgid "%<__builtin_is_corresponding_member%> argument is not pointer to member"
 msgstr ""
 
-#: cp/semantics.cc:12194
+#: cp/semantics.cc:12193
 #, fuzzy, gcc-internal-format
 msgid "operand of fold expression has no unexpanded parameter packs"
 msgstr "pilkkulausekkeen vasemmalla operandilla ei ole vaikutusta"
 
-#: cp/semantics.cc:12253
+#: cp/semantics.cc:12252
 #, fuzzy, gcc-internal-format
 msgid "both arguments in binary fold have unexpanded parameter packs"
 msgstr "pilkkulausekkeen vasemmalla operandilla ei ole vaikutusta"
 
-#: cp/semantics.cc:12255
+#: cp/semantics.cc:12254
 #, gcc-internal-format
 msgid "no unexpanded parameter packs in binary fold"
 msgstr ""
 
-#: cp/semantics.cc:12273
+#: cp/semantics.cc:12272
 #, fuzzy, gcc-internal-format
 msgid "non-pointer argument to %<__builtin_launder%>"
 msgstr "ei-tuettu argumentti funktiolle %<__builtin_return_address%>"
@@ -60862,22 +61063,22 @@ msgstr "ei-tuettu argumentti funktiolle %<__builtin_return_address%>"
 #. std::bit_cast for destination ARRAY_TYPE is not possible,
 #. as functions may not return an array, so don't bother trying
 #. to support this (and then deal with VLAs etc.).
-#: cp/semantics.cc:12322
+#: cp/semantics.cc:12321
 #, gcc-internal-format
 msgid "%<__builtin_bit_cast%> destination type %qT is an array type"
 msgstr ""
 
-#: cp/semantics.cc:12328
+#: cp/semantics.cc:12327
 #, gcc-internal-format
 msgid "%<__builtin_bit_cast%> destination type %qT is not trivially copyable"
 msgstr ""
 
-#: cp/semantics.cc:12355
+#: cp/semantics.cc:12354
 #, gcc-internal-format
 msgid "%<__builtin_bit_cast%> source type %qT is not trivially copyable"
 msgstr ""
 
-#: cp/semantics.cc:12363
+#: cp/semantics.cc:12362
 #, gcc-internal-format
 msgid "%<__builtin_bit_cast%> source size %qE not equal to destination type size %qE"
 msgstr ""
@@ -61122,843 +61323,843 @@ msgstr "?:-lausekkeen operandeilla on eri tyypit, %qT ja %qT"
 msgid "invalid application of %qs to a member function"
 msgstr "Jäsenfunktio %qs"
 
-#: cp/typeck.cc:1993
+#: cp/typeck.cc:2000
 #, gcc-internal-format
 msgid "invalid application of %<sizeof%> to a bit-field"
 msgstr "epäkelpo %<sizeof%>-avainsanan soveltaminen bittikenttään"
 
-#: cp/typeck.cc:2001
+#: cp/typeck.cc:2008
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ forbids applying %<sizeof%> to an expression of function type"
 msgstr "epäkelpo %<sizeof%>-avainsanan soveltaminen funktiotyyppiin"
 
-#: cp/typeck.cc:2066
+#: cp/typeck.cc:2073
 #, fuzzy, gcc-internal-format
 msgid "invalid application of %<__alignof%> to a bit-field"
 msgstr "%<__alignof%>-avainsanaa sovellettu bittikenttään"
 
-#: cp/typeck.cc:2077
+#: cp/typeck.cc:2084
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ forbids applying %<__alignof%> to an expression of function type"
 msgstr "epäkelpo %<sizeof%>-avainsanan soveltaminen funktiotyyppiin"
 
-#: cp/typeck.cc:2159
+#: cp/typeck.cc:2168
 #, fuzzy, gcc-internal-format
 msgid "%<alignas%> argument has non-integral type %qT"
 msgstr "taulukon koolla on epäkokonaislukutyyppi %qT"
 
-#: cp/typeck.cc:2204
+#: cp/typeck.cc:2213
 #, fuzzy, gcc-internal-format
 msgid "invalid use of non-static member function of type %qT"
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: cp/typeck.cc:2380
+#: cp/typeck.cc:2389
 #, fuzzy, gcc-internal-format
 msgid "taking address of temporary array"
 msgstr "nimikkeen osoitteen ottaminen ei ole standardia"
 
-#: cp/typeck.cc:2562
+#: cp/typeck.cc:2571
 #, gcc-internal-format
 msgid "ISO C++ forbids converting a string constant to %qT"
 msgstr "ISO C++ kieltää merkkijonovakion muuntamisen %qT:ksi"
 
-#: cp/typeck.cc:2566
+#: cp/typeck.cc:2575
 #, gcc-internal-format
 msgid "deprecated conversion from string constant to %qT"
 msgstr "vanhentunut tyyppimuunnos merkkijonovakiosta tyyppiin %qT"
 
-#: cp/typeck.cc:2681 cp/typeck.cc:3246
+#: cp/typeck.cc:2690 cp/typeck.cc:3255
 #, fuzzy, gcc-internal-format
 msgid "request for member %qD in %qE, which is of pointer type %qT (maybe you meant to use %<->%> ?)"
 msgstr "pyyntö jäsenen %qs käsittelyyn jossain, joka ei ole tietue tai unioni"
 
-#: cp/typeck.cc:2685 cp/typeck.cc:3250
+#: cp/typeck.cc:2694 cp/typeck.cc:3259
 #, fuzzy, gcc-internal-format
 msgid "request for member %qD in %qE, which is of non-class type %qT"
 msgstr "pyyntö jäsenen %qs käsittelyyn jossain, joka ei ole tietue tai unioni"
 
-#: cp/typeck.cc:2719
+#: cp/typeck.cc:2728
 #, fuzzy, gcc-internal-format
 msgid "invalid use of non-static data member %qE"
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
 # semi-fuzzy
-#: cp/typeck.cc:2796
+#: cp/typeck.cc:2805
 #, fuzzy, gcc-internal-format
 msgid "invalid access to non-static data member %qD in virtual base of NULL object"
 msgstr "ei-staattista datajäsentä %q+D käytetty virheellisesti"
 
-#: cp/typeck.cc:2946
+#: cp/typeck.cc:2955
 #, gcc-internal-format
 msgid "object type %qT does not match destructor name ~%qT"
 msgstr "objektityyppi %qT ei täsmää hajottimen nimen ~%qT kanssa"
 
-#: cp/typeck.cc:2955
+#: cp/typeck.cc:2964
 #, gcc-internal-format
 msgid "the type being destroyed is %qT, but the destructor refers to %qT"
 msgstr ""
 
-#: cp/typeck.cc:3097
+#: cp/typeck.cc:3106
 #, fuzzy, gcc-internal-format
 msgid "field %q#D can be accessed via %q#D"
 msgstr "käyttämätön muuttuja %q+D"
 
 #. No hint.
-#: cp/typeck.cc:3116
+#: cp/typeck.cc:3125
 #, fuzzy, gcc-internal-format
 msgid "%q#T has no member named %qE"
 msgstr "tyypillä %qT ei ole %qE-nimistä jäsentä"
 
-#: cp/typeck.cc:3139
+#: cp/typeck.cc:3148
 #, fuzzy, gcc-internal-format
 msgid "%q#T has no member named %qE; did you mean %q#D? (accessible via %q#D)"
 msgstr "tyypillä %qT ei ole %qE-nimistä jäsentä"
 
-#: cp/typeck.cc:3150
+#: cp/typeck.cc:3159
 #, fuzzy, gcc-internal-format
 msgid "%q#T has no member named %qE; did you mean %q#D? (not accessible from this context)"
 msgstr "tyypillä %qT ei ole %qE-nimistä jäsentä"
 
-#: cp/typeck.cc:3165
+#: cp/typeck.cc:3174
 #, fuzzy, gcc-internal-format
 msgid "%q#T has no member named %qE; did you mean %qE?"
 msgstr "tyypillä %qT ei ole %qE-nimistä jäsentä"
 
-#: cp/typeck.cc:3280 cp/typeck.cc:3306
+#: cp/typeck.cc:3289 cp/typeck.cc:3315
 #, fuzzy, gcc-internal-format
 msgid "%<%D::%D%> is not a member of %qT"
 msgstr "%<%D::%D%> ei ole luokan jäsen"
 
-#: cp/typeck.cc:3345
+#: cp/typeck.cc:3354
 #, fuzzy, gcc-internal-format
 msgid "%qT is not a base of %qT"
 msgstr "perustyypin %qT kaksoiskappale virheellinen"
 
-#: cp/typeck.cc:3408
+#: cp/typeck.cc:3417
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a member template function"
 msgstr "funktiomalli %qD esitelty uudelleen luokkamallina"
 
-#: cp/typeck.cc:3674
+#: cp/typeck.cc:3683
 #, fuzzy, gcc-internal-format
 msgid "%qT is not a pointer-to-object type"
 msgstr "ei voida kasvattaa osoitinta vaillinaiseen tyyppiin %qT"
 
-#: cp/typeck.cc:3706
+#: cp/typeck.cc:3715
 #, fuzzy, gcc-internal-format
 msgid "invalid use of array indexing on pointer to member"
 msgstr "joustavan taulukkojäsenen sisältävän tietueen epäkelpo käyttö"
 
-#: cp/typeck.cc:3709
+#: cp/typeck.cc:3718
 #, fuzzy, gcc-internal-format
 msgid "invalid use of unary %<*%> on pointer to member"
 msgstr "joustavan taulukkojäsenen sisältävän tietueen epäkelpo käyttö"
 
-#: cp/typeck.cc:3712
+#: cp/typeck.cc:3721
 #, fuzzy, gcc-internal-format
 msgid "invalid use of implicit conversion on pointer to member"
 msgstr "epäkelpo %<restrict%>-avainsanan käyttö"
 
-#: cp/typeck.cc:3716
+#: cp/typeck.cc:3725
 #, gcc-internal-format
 msgid "left hand operand of %<->*%> must be a pointer to class, but is a pointer to member of type %qT"
 msgstr ""
 
-#: cp/typeck.cc:3781
+#: cp/typeck.cc:3790
 #, fuzzy, gcc-internal-format
 msgid "subscript missing in array reference"
 msgstr "taulukon indeksi on taulukkorajojen yläpuolella"
 
-#: cp/typeck.cc:3878
+#: cp/typeck.cc:3887
 #, fuzzy, gcc-internal-format
 msgid "subscripting array declared %<register%>"
 msgstr "ISO C kieltää %<register%>-taulukon indeksoinnin"
 
-#: cp/typeck.cc:3916
+#: cp/typeck.cc:3925
 #, gcc-internal-format
 msgid "subscripted value is neither array nor pointer"
 msgstr "indeksoitu arvo ei ole taulukko eikä osoitin"
 
-#: cp/typeck.cc:3988
+#: cp/typeck.cc:3997
 #, fuzzy, gcc-internal-format
 msgid "object missing in use of %qE"
 msgstr "%qE esittelemättä (ensimmäinen käyttökerta tässä funktiossa)"
 
-#: cp/typeck.cc:4213
+#: cp/typeck.cc:4222
 #, gcc-internal-format
 msgid "ISO C++ forbids calling %<::main%> from within program"
 msgstr "ISO C++ kieltää %<::main%>-funktion kutsumisen ohjelmasta"
 
-#: cp/typeck.cc:4234
+#: cp/typeck.cc:4243
 #, gcc-internal-format
 msgid "must use %<.*%> or %<->*%> to call pointer-to-member function in %<%E (...)%>, e.g. %<(... ->* %E) (...)%>"
 msgstr ""
 
-#: cp/typeck.cc:4251
+#: cp/typeck.cc:4260
 #, fuzzy, gcc-internal-format
 msgid "%qE cannot be used as a function"
 msgstr "%qE:a saatetaan käyttää alustamattomana tässä funktiossa"
 
-#: cp/typeck.cc:4254
+#: cp/typeck.cc:4263
 #, fuzzy, gcc-internal-format
 msgid "%qD cannot be used as a function"
 msgstr "%qD:a käytetään alustamattomana tässä funktiossa"
 
-#: cp/typeck.cc:4257
+#: cp/typeck.cc:4266
 #, fuzzy, gcc-internal-format
 msgid "expression cannot be used as a function"
 msgstr "funktio-osoitinta käytetty laskutoimituksessa"
 
-#: cp/typeck.cc:4315
+#: cp/typeck.cc:4324
 #, gcc-internal-format
 msgid "too many arguments to constructor %q#D"
 msgstr "liikaa argumentteja muodostimelle %q#D"
 
-#: cp/typeck.cc:4316
+#: cp/typeck.cc:4325
 #, gcc-internal-format
 msgid "too few arguments to constructor %q#D"
 msgstr "liian vähän argumentteja muodostimelle %q#D"
 
-#: cp/typeck.cc:4321
+#: cp/typeck.cc:4330
 #, gcc-internal-format
 msgid "too many arguments to member function %q#D"
 msgstr "liikaa argumentteja jäsenfunktiolle %q#D"
 
-#: cp/typeck.cc:4322
+#: cp/typeck.cc:4331
 #, gcc-internal-format
 msgid "too few arguments to member function %q#D"
 msgstr "liian vähän argumentteja jäsenfunktiolle %q#D"
 
-#: cp/typeck.cc:4328
+#: cp/typeck.cc:4337
 #, gcc-internal-format
 msgid "too many arguments to function %q#D"
 msgstr "liikaa argumentteja funktiolle %q#D"
 
-#: cp/typeck.cc:4329
+#: cp/typeck.cc:4338
 #, gcc-internal-format
 msgid "too few arguments to function %q#D"
 msgstr "liian vähän argumentteja funktiolle %q#D"
 
-#: cp/typeck.cc:4339
+#: cp/typeck.cc:4348
 #, gcc-internal-format
 msgid "too many arguments to method %q#D"
 msgstr "liikaa argumentteja metodille %q#D"
 
-#: cp/typeck.cc:4340
+#: cp/typeck.cc:4349
 #, gcc-internal-format
 msgid "too few arguments to method %q#D"
 msgstr "liian vähän argumentteja funktiolle %q#D"
 
-#: cp/typeck.cc:4343
+#: cp/typeck.cc:4352
 #, gcc-internal-format
 msgid "too many arguments to function"
 msgstr "liikaa argumentteja funktiolle"
 
-#: cp/typeck.cc:4344
+#: cp/typeck.cc:4353
 #, gcc-internal-format
 msgid "too few arguments to function"
 msgstr "liian vähän argumentteja funktiolle"
 
-#: cp/typeck.cc:4426
+#: cp/typeck.cc:4435
 #, gcc-internal-format
 msgid "parameter %P of %qD has incomplete type %qT"
 msgstr "%2$qD:n parametrilla %1$P on vaillinainen tyyppi %3$qT"
 
-#: cp/typeck.cc:4432
+#: cp/typeck.cc:4441
 #, gcc-internal-format
 msgid "parameter %P has incomplete type %qT"
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: cp/typeck.cc:4692
+#: cp/typeck.cc:4701
 #, fuzzy, gcc-internal-format
 #| msgid "the address of %qD will never be NULL"
 msgid "the address %qE will never be NULL"
 msgstr "%qD:n osoite ei tule koskaan olemaan NULL"
 
-#: cp/typeck.cc:4738
+#: cp/typeck.cc:4747
 #, gcc-internal-format
 msgid "the address of %qD will never be NULL"
 msgstr "%qD:n osoite ei tule koskaan olemaan NULL"
 
-#: cp/typeck.cc:4749
+#: cp/typeck.cc:4758
 #, gcc-internal-format
 msgid "comparing the result of pointer addition %qE and NULL"
 msgstr ""
 
-#: cp/typeck.cc:4763
+#: cp/typeck.cc:4772
 #, gcc-internal-format
 msgid "the compiler can assume that the address of %qD will never be NULL"
 msgstr "kääntäjä voi olettaa, että %qD:n osoite ei koskaan ole NULL"
 
-#: cp/typeck.cc:4812
+#: cp/typeck.cc:4821
 #, fuzzy, gcc-internal-format
 msgid "bitwise operation between different enumeration types %qT and %qT is deprecated"
 msgstr "erilaisten osoitintyyppien %qT ja %qT välisestä muunnoksesta puuttuu tyyppimuunnos"
 
-#: cp/typeck.cc:4817
+#: cp/typeck.cc:4826
 #, fuzzy, gcc-internal-format
 msgid "arithmetic between different enumeration types %qT and %qT is deprecated"
 msgstr "erilaisten osoitintyyppien %qT ja %qT välisestä vertailusta puuttuu tyyppimuunnos"
 
-#: cp/typeck.cc:4847
+#: cp/typeck.cc:4856
 #, gcc-internal-format
 msgid "comparison of enumeration type %qT with floating-point type %qT is deprecated"
 msgstr ""
 
-#: cp/typeck.cc:4851
+#: cp/typeck.cc:4860
 #, fuzzy, gcc-internal-format
 msgid "comparison of floating-point type %qT with enumeration type %qT is deprecated"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: cp/typeck.cc:4860
+#: cp/typeck.cc:4869
 #, gcc-internal-format
 msgid "arithmetic between enumeration type %qT and floating-point type %qT is deprecated"
 msgstr ""
 
-#: cp/typeck.cc:4864
+#: cp/typeck.cc:4873
 #, gcc-internal-format
 msgid "arithmetic between floating-point type %qT and enumeration type %qT is deprecated"
 msgstr ""
 
-#: cp/typeck.cc:4990 cp/typeck.cc:5002
+#: cp/typeck.cc:4999 cp/typeck.cc:5011
 #, fuzzy, gcc-internal-format
 msgid "assuming cast to type %qT from overloaded function"
 msgstr "liian paljon argumentteja funktiolle %qs"
 
-#: cp/typeck.cc:5048
+#: cp/typeck.cc:5057
 #, gcc-internal-format
 msgid "NULL used in arithmetic"
 msgstr "NULL-arvon käyttö laskutoimituksessa"
 
-#: cp/typeck.cc:5509 cp/typeck.cc:5518 cp/typeck.cc:5812 cp/typeck.cc:5821
+#: cp/typeck.cc:5519 cp/typeck.cc:5528 cp/typeck.cc:5822 cp/typeck.cc:5831
 #, gcc-internal-format
 msgid "ISO C++ forbids comparison between pointer and integer"
 msgstr "ISO C++ kieltää osoittimen ja kokonaisluvun vertailun"
 
-#: cp/typeck.cc:5734 cp/typeck.cc:5747
+#: cp/typeck.cc:5744 cp/typeck.cc:5757
 #, fuzzy, gcc-internal-format
 msgid "operand types are %qT and %qT"
 msgstr "tyyppien %qT ja %qT välinen vertailu"
 
-#: cp/typeck.cc:5770
+#: cp/typeck.cc:5780
 #, gcc-internal-format
 msgid "three-way comparison of vectors"
 msgstr ""
 
-#: cp/typeck.cc:5804
+#: cp/typeck.cc:5814
 #, fuzzy, gcc-internal-format
 msgid "ordered comparison of pointer with integer zero (%qT and %qT)"
 msgstr "osoittimen ja kokonaisluku nollan suuruusvertailu"
 
-#: cp/typeck.cc:5851
+#: cp/typeck.cc:5861
 #, fuzzy, gcc-internal-format
 msgid "unordered comparison on non-floating-point argument"
 msgstr "ei-liukulukuargumentti kutsussa funktiolle %qE"
 
-#: cp/typeck.cc:5897
+#: cp/typeck.cc:5907
 #, fuzzy
 msgid "implicit conversion from %qH to %qI to match other operand of binary expression"
 msgstr "muunnos tyypistä %2$qT tyypiksi %1$qT"
 
-#: cp/typeck.cc:5977
+#: cp/typeck.cc:5987
 #, fuzzy, gcc-internal-format
 msgid "invalid operands of types %qT and %qT to binary %qO"
 msgstr "virheellinen parametrityyppi %qT"
 
-#: cp/typeck.cc:6371
+#: cp/typeck.cc:6381
 #, gcc-internal-format
 msgid "ISO C++ forbids using pointer of type %<void *%> in subtraction"
 msgstr "ISO C++ kieltää %<void *%>-tyyppisen osoittimen käytön vähennyslaskussa"
 
-#: cp/typeck.cc:6379
+#: cp/typeck.cc:6389
 #, gcc-internal-format
 msgid "ISO C++ forbids using pointer to a function in subtraction"
 msgstr "ISO C++ kieltää funktio-osoittimen käytön vähennyslaskussa"
 
 # semi-fuzzy; onko metodi tässä luokan jäsenfunktio ja yllä muu funktio?
-#: cp/typeck.cc:6387
+#: cp/typeck.cc:6397
 #, gcc-internal-format
 msgid "ISO C++ forbids using pointer to a method in subtraction"
 msgstr "ISO C++ kieltää metodiosoittimen käytön vähennyslaskussa"
 
-#: cp/typeck.cc:6440
+#: cp/typeck.cc:6450
 #, fuzzy, gcc-internal-format
 msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
 msgstr "ei voida kasvattaa osoitinta vaillinaiseen tyyppiin %qT"
 
-#: cp/typeck.cc:6519
+#: cp/typeck.cc:6529
 #, fuzzy, gcc-internal-format
 msgid "taking address of constructor %qD"
 msgstr "muodostimen %qE osoitteen ottaminen"
 
-#: cp/typeck.cc:6520
+#: cp/typeck.cc:6530
 #, fuzzy, gcc-internal-format
 msgid "taking address of destructor %qD"
 msgstr "hajottimen %qE osoitteen ottaminen"
 
-#: cp/typeck.cc:6536
+#: cp/typeck.cc:6546
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %qE to form a pointer-to-member-function"
 msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
-#: cp/typeck.cc:6539
+#: cp/typeck.cc:6549
 #, fuzzy, gcc-internal-format
 msgid "  a qualified-id is required"
 msgstr "id="
 
-#: cp/typeck.cc:6546
+#: cp/typeck.cc:6556
 #, fuzzy, gcc-internal-format
 msgid "parentheses around %qE cannot be used to form a pointer-to-member-function"
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: cp/typeck.cc:6737
+#: cp/typeck.cc:6747
 #, gcc-internal-format
 msgid "ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function.  Say %<&%T::%D%>"
 msgstr ""
 
-#: cp/typeck.cc:6743
+#: cp/typeck.cc:6753
 #, gcc-internal-format
 msgid "ISO C++ forbids taking the address of a bound member function to form a pointer to member function.  Say %<&%T::%D%>"
 msgstr ""
 
 #. Make this a permerror because we used to accept it.
-#: cp/typeck.cc:6778
+#: cp/typeck.cc:6788
 #, fuzzy, gcc-internal-format
 msgid "taking address of rvalue"
 msgstr "väliaikaismuuttujan osoitteen ottaminen"
 
-#: cp/typeck.cc:6795
+#: cp/typeck.cc:6805
 #, gcc-internal-format
 msgid "ISO C++ forbids taking address of function %<::main%>"
 msgstr "ISO C++ kieltää %<::main%>-funktion osoitteen ottamisen"
 
-#: cp/typeck.cc:6853
+#: cp/typeck.cc:6863
 #, fuzzy, gcc-internal-format
 msgid "cannot create pointer to reference member %qD"
 msgstr "NULLin muunnos epäosoitintyypiksi %qT"
 
-#: cp/typeck.cc:6873 cp/typeck.cc:7432
+#: cp/typeck.cc:6889 cp/typeck.cc:7446
 #, gcc-internal-format
 msgid "attempt to take address of bit-field"
 msgstr "yritys ottaa bittikentän osoite"
 
-#: cp/typeck.cc:7032
+#: cp/typeck.cc:7046
 #, fuzzy, gcc-internal-format
 msgid "%<~%> on an expression of type %<bool%>"
 msgstr "odotettiin lauseketta"
 
-#: cp/typeck.cc:7033
+#: cp/typeck.cc:7047
 #, fuzzy, gcc-internal-format
 msgid "did you mean to use logical not (%<!%>)?"
 msgstr "oliko tarkoitus käyttää loogista negaatiota?"
 
-#: cp/typeck.cc:7156
+#: cp/typeck.cc:7170
 #, gcc-internal-format
 msgid "ISO C++ forbids incrementing an enum"
 msgstr "ISO C++ kieltää enumin lisäyksen"
 
-#: cp/typeck.cc:7157
+#: cp/typeck.cc:7171
 #, gcc-internal-format
 msgid "ISO C++ forbids decrementing an enum"
 msgstr "ISO C++ kieltää enumin vähentämisen"
 
-#: cp/typeck.cc:7173
+#: cp/typeck.cc:7187
 #, gcc-internal-format
 msgid "cannot increment a pointer to incomplete type %qT"
 msgstr "ei voida kasvattaa osoitinta vaillinaiseen tyyppiin %qT"
 
-#: cp/typeck.cc:7175
+#: cp/typeck.cc:7189
 #, gcc-internal-format
 msgid "cannot decrement a pointer to incomplete type %qT"
 msgstr "ei voida vähentää osoitinta vaillinaiseen tyyppiin %qT"
 
-#: cp/typeck.cc:7187
+#: cp/typeck.cc:7201
 #, gcc-internal-format
 msgid "ISO C++ forbids incrementing a pointer of type %qT"
 msgstr "ISO C++ kieltää %qT-tyyppisen osoittimen kasvattamisen"
 
-#: cp/typeck.cc:7189
+#: cp/typeck.cc:7203
 #, gcc-internal-format
 msgid "ISO C++ forbids decrementing a pointer of type %qT"
 msgstr "ISO C++ kieltää %qT-tyyppisen osoittimen vähentämisen"
 
-#: cp/typeck.cc:7228
+#: cp/typeck.cc:7242
 #, gcc-internal-format
 msgid "%qs expression of %<volatile%>-qualified type is deprecated"
 msgstr ""
 
-#: cp/typeck.cc:7241
+#: cp/typeck.cc:7255
 #, gcc-internal-format
 msgid "use of an operand of type %qT in %<operator--%> is forbidden"
 msgstr ""
 
-#: cp/typeck.cc:7251
+#: cp/typeck.cc:7265
 #, gcc-internal-format
 msgid "use of an operand of type %qT in %<operator++%> is forbidden in C++17"
 msgstr ""
 
-#: cp/typeck.cc:7259
+#: cp/typeck.cc:7273
 #, gcc-internal-format
 msgid "use of an operand of type %qT in %<operator++%> is deprecated"
 msgstr ""
 
-#: cp/typeck.cc:7444
+#: cp/typeck.cc:7458
 #, gcc-internal-format
 msgid "cannot take the address of %<this%>, which is an rvalue expression"
 msgstr "ei voi ottaa %<this%>:in osoitetta, joka on rvalue-lauseke"
 
-#: cp/typeck.cc:7466
+#: cp/typeck.cc:7480
 #, fuzzy, gcc-internal-format
 msgid "address of explicit register variable %qD requested"
 msgstr "halutaan rekisterimuuttujan %qD osoite"
 
-#: cp/typeck.cc:7471
+#: cp/typeck.cc:7485
 #, fuzzy, gcc-internal-format
 msgid "address requested for %qD, which is declared %<register%>"
 msgstr "halutaan globaalin rekisterimuuttujan %qD osoite"
 
-#: cp/typeck.cc:7546
+#: cp/typeck.cc:7560
 #, fuzzy, gcc-internal-format
 msgid "list-initializer for non-class type must not be parenthesized"
 msgstr "virheellinen alustin taulukon jäsenelle %q#D"
 
-#: cp/typeck.cc:7558
+#: cp/typeck.cc:7572
 #, fuzzy, gcc-internal-format
 msgid "expression list treated as compound expression in initializer"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: cp/typeck.cc:7562
+#: cp/typeck.cc:7576
 #, fuzzy, gcc-internal-format
 msgid "expression list treated as compound expression in mem-initializer"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: cp/typeck.cc:7566
+#: cp/typeck.cc:7580
 #, fuzzy, gcc-internal-format
 msgid "expression list treated as compound expression in functional cast"
 msgstr "esittely ei esittele mitään"
 
-#: cp/typeck.cc:7604
+#: cp/typeck.cc:7618
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s expression list treated as compound expression"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: cp/typeck.cc:7696
+#: cp/typeck.cc:7710
 #, fuzzy, gcc-internal-format
 msgid "no context to resolve type of %qE"
 msgstr "%qE ei nimeä tyyppiä"
 
-#: cp/typeck.cc:7730
+#: cp/typeck.cc:7744
 #, gcc-internal-format
 msgid "cast from type %qT to type %qT casts away qualifiers"
 msgstr "tyyppimuunnos tyypistä %qT tyyppiin %qT hylkää määreet"
 
-#: cp/typeck.cc:7736
+#: cp/typeck.cc:7750
 #, fuzzy, gcc-internal-format
 msgid "%<static_cast%> from type %qT to type %qT casts away qualifiers"
 msgstr "static_cast-muunnos tyypistä %qT tyyppiin %qT hylkää määreet"
 
-#: cp/typeck.cc:7743
+#: cp/typeck.cc:7757
 #, fuzzy, gcc-internal-format
 msgid "%<reinterpret_cast%> from type %qT to type %qT casts away qualifiers"
 msgstr "reinterpret_cast-muunnos tyypistä %qT tyyppiin %qT hylkää määreet"
 
-#: cp/typeck.cc:7767
+#: cp/typeck.cc:7781
 #, fuzzy, gcc-internal-format
 msgid "useless cast to type %q#T"
 msgstr "tarpeeton tyyppimuunnos tyyppiin %qT"
 
-#: cp/typeck.cc:7781
+#: cp/typeck.cc:7795
 #, fuzzy, gcc-internal-format
 msgid "type qualifiers ignored on cast result type"
 msgstr "tyyppimääreet jätetään huomiotta funktion paluutyypissä"
 
-#: cp/typeck.cc:8218
+#: cp/typeck.cc:8232
 #, fuzzy, gcc-internal-format
 msgid "invalid %<static_cast%> from type %qT to type %qT"
 msgstr "virheellinen static_cast-muunnos tyypistä %qT tyyppiin %qT"
 
-#: cp/typeck.cc:8224 cp/typeck.cc:8230 cp/typeck.cc:9898
+#: cp/typeck.cc:8238 cp/typeck.cc:8244 cp/typeck.cc:9912
 #, fuzzy, gcc-internal-format
 msgid "class type %qT is incomplete"
 msgstr "nimellä %qT on vaillinainen tyyppi"
 
-#: cp/typeck.cc:8258
+#: cp/typeck.cc:8272
 #, fuzzy
 msgid "converting from %qH to %qI"
 msgstr "muunnos tyypistä %qT tyyppiin %qT"
 
-#: cp/typeck.cc:8333
+#: cp/typeck.cc:8347
 #, fuzzy, gcc-internal-format
 msgid "invalid cast of a prvalue expression of type %qT to type %qT"
 msgstr "virheellinen static_cast-muunnos tyypistä %qT tyyppiin %qT"
 
-#: cp/typeck.cc:8403
+#: cp/typeck.cc:8417
 #, fuzzy
 msgid "cast from %qH to %qI loses precision"
 msgstr "muunnoksessa tyypistä %qT tyyppiin %qT menetetään tarkkuutta"
 
-#: cp/typeck.cc:8428
+#: cp/typeck.cc:8442
 #, fuzzy
 msgid "cast between incompatible function types from %qH to %qI"
 msgstr "ei voi muuntaa tyyppiä %qT tyypiksi %qT"
 
-#: cp/typeck.cc:8439
+#: cp/typeck.cc:8453
 msgid "cast between incompatible pointer to member types from %qH to %qI"
 msgstr "muunnos epäyhteensopivien jäsenosoitintyyppien %qH ja %qI välillä"
 
-#: cp/typeck.cc:8460 cp/typeck.cc:8650
+#: cp/typeck.cc:8474 cp/typeck.cc:8664
 #, fuzzy
 msgid "cast from %qH to %qI increases required alignment of target type"
 msgstr "muunnos tyypistä %qT tyyppiin %qT kasvattaa kohdetyypin vaadittua kohdistusta"
 
-#: cp/typeck.cc:8477
+#: cp/typeck.cc:8491
 #, gcc-internal-format
 msgid "casting between pointer-to-function and pointer-to-object is conditionally-supported"
 msgstr "tyyppimuunnos funktio-osoittimen ja olio-osoittimen välillä on ehdollisesti tuettu"
 
-#: cp/typeck.cc:8491
+#: cp/typeck.cc:8505
 #, gcc-internal-format
 msgid "invalid cast from type %qT to type %qT"
 msgstr "virheellinen muunnos tyypistä %qT tyyppiin %qT"
 
-#: cp/typeck.cc:8564
+#: cp/typeck.cc:8578
 #, gcc-internal-format
 msgid "invalid use of %<const_cast%> with type %qT, which is not a pointer, reference, nor a pointer-to-data-member type"
 msgstr ""
 
-#: cp/typeck.cc:8573
+#: cp/typeck.cc:8587
 #, gcc-internal-format
 msgid "invalid use of %<const_cast%> with type %qT, which is a pointer or reference to a function type"
 msgstr ""
 
-#: cp/typeck.cc:8615
+#: cp/typeck.cc:8629
 #, fuzzy, gcc-internal-format
 msgid "invalid %<const_cast%> of an rvalue of type %qT to type %qT"
 msgstr "virheellinen const_cast tyypistä %qT tyyppiin %qT"
 
-#: cp/typeck.cc:8685
+#: cp/typeck.cc:8699
 #, fuzzy, gcc-internal-format
 msgid "invalid %<const_cast%> from type %qT to type %qT"
 msgstr "virheellinen const_cast tyypistä %qT tyyppiin %qT"
 
-#: cp/typeck.cc:8786 cp/typeck.cc:8795
+#: cp/typeck.cc:8800 cp/typeck.cc:8809
 #, gcc-internal-format
 msgid "ISO C++ forbids casting to an array type %qT"
 msgstr "ISO C++ kieltää tyyppimuunnoksen taulukkotyyppiin %qT"
 
-#: cp/typeck.cc:8804
+#: cp/typeck.cc:8818
 #, gcc-internal-format
 msgid "invalid cast to function type %qT"
 msgstr "virheellinen tyyppimuunnos funktiotyyppiin %qT"
 
-#: cp/typeck.cc:9114
+#: cp/typeck.cc:9128
 #, gcc-internal-format
 msgid "compound assignment with %<volatile%>-qualified left operand is deprecated"
 msgstr ""
 
-#: cp/typeck.cc:9134
+#: cp/typeck.cc:9148
 #, fuzzy, gcc-internal-format
 msgid "  in evaluation of %<%Q(%#T, %#T)%>"
 msgstr "%q#T ei ole luokka eikä nimiavaruus"
 
-#: cp/typeck.cc:9194
+#: cp/typeck.cc:9208
 #, fuzzy, gcc-internal-format
 msgid "assigning to an array from an initializer list"
 msgstr "ei-vakio taulukon indeksi alustimessa"
 
-#: cp/typeck.cc:9221
+#: cp/typeck.cc:9235
 #, gcc-internal-format
 msgid "incompatible types in assignment of %qT to %qT"
 msgstr "vaillinaiset tyypit %qT:n sijoituksessa tyyppiin %qT"
 
-#: cp/typeck.cc:9235
+#: cp/typeck.cc:9249
 #, gcc-internal-format
 msgid "array used as initializer"
 msgstr "taulukkoa käytetty alustimena"
 
-#: cp/typeck.cc:9237
+#: cp/typeck.cc:9251
 #, gcc-internal-format
 msgid "invalid array assignment"
 msgstr "virheellinen taulukkosijoitus"
 
-#: cp/typeck.cc:9379
+#: cp/typeck.cc:9393
 #, fuzzy, gcc-internal-format
 msgid "   in pointer to member function conversion"
 msgstr "Jäsenfunktio %qs"
 
-#: cp/typeck.cc:9393
+#: cp/typeck.cc:9407
 #, fuzzy, gcc-internal-format
 msgid "pointer to member conversion via virtual base %qT"
 msgstr "Jäsenfunktio %qs"
 
-#: cp/typeck.cc:9440 cp/typeck.cc:9459
+#: cp/typeck.cc:9454 cp/typeck.cc:9473
 #, fuzzy, gcc-internal-format
 msgid "   in pointer to member conversion"
 msgstr "Jäsenfunktio %qs"
 
-#: cp/typeck.cc:9540
+#: cp/typeck.cc:9554
 #, fuzzy, gcc-internal-format
 msgid "invalid conversion to type %qT from type %qT"
 msgstr "virheellinen muunnos tyypistä %qT tyyppiin %qT"
 
-#: cp/typeck.cc:9861
+#: cp/typeck.cc:9875
 #, fuzzy
 msgid "cannot convert %qH to %qI in default argument"
 msgstr "ei voi muuntaa tyypistä %1$qT tyyppiin %2$qT %4$qD:n argumentiksi %3$qP"
 
 # XXX
 # %s on "initialization", jota EI VOI suomentaa tällä hetkellä.
-#: cp/typeck.cc:9866
+#: cp/typeck.cc:9880
 #, fuzzy
 msgid "cannot convert %qH to %qI in argument passing"
 msgstr "ei voi muuntaa tyypistä %1$qT tyyppiin %2$qT %4$qD:n argumentiksi %3$qP"
 
 # XXX
 # %s on "initialization", jota EI VOI suomentaa tällä hetkellä.
-#: cp/typeck.cc:9875
+#: cp/typeck.cc:9889
 #, fuzzy
 msgid "cannot convert %qH to %qI in initialization"
 msgstr "ei voi muuntaa tyypistä %1$qT tyyppiin %2$qT %4$qD:n argumentiksi %3$qP"
 
 # XXX
 # %s on "initialization", jota EI VOI suomentaa tällä hetkellä.
-#: cp/typeck.cc:9879
+#: cp/typeck.cc:9893
 #, fuzzy
 msgid "cannot convert %qH to %qI in return"
 msgstr "ei voi muuntaa tyyppiä %qT tyypiksi %qT"
 
 # XXX
 # %s on "initialization", jota EI VOI suomentaa tällä hetkellä.
-#: cp/typeck.cc:9884
+#: cp/typeck.cc:9898
 #, fuzzy
 msgid "cannot convert %qH to %qI in assignment"
 msgstr "ei voi muuntaa tyyppiä %qT tyypiksi %qT"
 
-#: cp/typeck.cc:9916
+#: cp/typeck.cc:9930
 #, fuzzy, gcc-internal-format
 msgid "parameter %qP of %qD might be a candidate for a format attribute"
 msgstr "funktio on ehkä mahdollinen ehdokas %qs-muotoiluattribuutille"
 
-#: cp/typeck.cc:9920
+#: cp/typeck.cc:9934
 #, fuzzy, gcc-internal-format
 msgid "parameter might be a candidate for a format attribute"
 msgstr "funktio on ehkä mahdollinen ehdokas %qs-muotoiluattribuutille"
 
-#: cp/typeck.cc:9925
+#: cp/typeck.cc:9939
 #, fuzzy, gcc-internal-format
 msgid "target of conversion might be a candidate for a format attribute"
 msgstr "funktio on ehkä mahdollinen ehdokas %qs-muotoiluattribuutille"
 
-#: cp/typeck.cc:9930
+#: cp/typeck.cc:9944
 #, fuzzy, gcc-internal-format
 msgid "target of initialization might be a candidate for a format attribute"
 msgstr "funktiokutsun argumentti voi olla ehdokas muotoiluattribuutille"
 
-#: cp/typeck.cc:9940
+#: cp/typeck.cc:9954
 #, fuzzy, gcc-internal-format
 msgid "left-hand side of assignment might be a candidate for a format attribute"
 msgstr "funktio on ehkä mahdollinen ehdokas %qs-muotoiluattribuutille"
 
-#: cp/typeck.cc:10036
+#: cp/typeck.cc:10050
 #, fuzzy, gcc-internal-format
 msgid "in passing argument %P of %qD"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: cp/typeck.cc:10118
+#: cp/typeck.cc:10132
 #, fuzzy, gcc-internal-format
 msgid "returning reference to temporary"
 msgstr "tyhjää arvoa ei jätetä huomioimatta, vaikka kuuluisi"
 
-#: cp/typeck.cc:10121
+#: cp/typeck.cc:10135
 #, gcc-internal-format
 msgid "returning temporary %<initializer_list%> does not extend the lifetime of the underlying array"
 msgstr ""
 
-#: cp/typeck.cc:10157
+#: cp/typeck.cc:10171
 #, fuzzy, gcc-internal-format
 msgid "reference to local variable %qD returned"
 msgstr "palautettu viittaus paikalliseen muuttujaan %q+D"
 
-#: cp/typeck.cc:10161
+#: cp/typeck.cc:10175
 #, gcc-internal-format
 msgid "returning local %<initializer_list%> variable %qD does not extend the lifetime of the underlying array"
 msgstr ""
 
-#: cp/typeck.cc:10167
+#: cp/typeck.cc:10181
 #, fuzzy, gcc-internal-format
 msgid "address of label %qD returned"
 msgstr "nimiö %qD määritelty täällä"
 
-#: cp/typeck.cc:10171
+#: cp/typeck.cc:10185
 #, fuzzy, gcc-internal-format
 msgid "address of local variable %qD returned"
 msgstr "palautettu osoite paikalliseen muuttujaan %q+D"
 
-#: cp/typeck.cc:10370
+#: cp/typeck.cc:10384
 #, gcc-internal-format
 msgid "moving a local object in a return statement prevents copy elision"
 msgstr ""
 
-#: cp/typeck.cc:10372 cp/typeck.cc:10395
+#: cp/typeck.cc:10386 cp/typeck.cc:10409
 #, gcc-internal-format
 msgid "remove %<std::move%> call"
 msgstr "poista %<std::move%>-kutsu"
 
-#: cp/typeck.cc:10394
+#: cp/typeck.cc:10408
 #, fuzzy, gcc-internal-format
 msgid "redundant move in return statement"
 msgstr "%s: liian monta arvoa"
 
-#: cp/typeck.cc:10433
+#: cp/typeck.cc:10447
 #, gcc-internal-format
 msgid "returning a value from a destructor"
 msgstr "arvon palautus hajottimesta"
 
 #. If a return statement appears in a handler of the
 #. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.cc:10441
+#: cp/typeck.cc:10455
 #, gcc-internal-format
 msgid "cannot return from a handler of a function-try-block of a constructor"
 msgstr ""
 
 #. You can't return a value from a constructor.
-#: cp/typeck.cc:10444
+#: cp/typeck.cc:10458
 #, gcc-internal-format
 msgid "returning a value from a constructor"
 msgstr "arvon palautus muodostimesta"
 
 #. Give a helpful error message.
-#: cp/typeck.cc:10479 cp/typeck.cc:10525
+#: cp/typeck.cc:10493 cp/typeck.cc:10539
 #, gcc-internal-format
 msgid "return-statement with no value, in function returning %qT"
 msgstr "return-lause ilman arvoa funktiossa, jonka paluutyyppi on %qT"
 
-#: cp/typeck.cc:10487
+#: cp/typeck.cc:10501
 #, fuzzy, gcc-internal-format
 msgid "returning initializer list"
 msgstr "taulukon palauttava funktio"
 
-#: cp/typeck.cc:10506
+#: cp/typeck.cc:10520
 #, fuzzy, gcc-internal-format
 msgid "inconsistent types %qT and %qT deduced for lambda return type"
 msgstr "uusia tyyppejä ei voi määritellä paluutyypissä"
 
-#: cp/typeck.cc:10509
+#: cp/typeck.cc:10523
 #, fuzzy, gcc-internal-format
 msgid "inconsistent deduction for auto return type: %qT and then %qT"
 msgstr "odotettiin %qT, mutta argumentti on tyyppiä %qT"
 
-#: cp/typeck.cc:10544
+#: cp/typeck.cc:10558
 #, fuzzy, gcc-internal-format
 msgid "return-statement with a value, in function returning %qT"
 msgstr "return-lause ilman arvoa funktiossa, jonka paluutyyppi on %qT"
 
-#: cp/typeck.cc:10573
+#: cp/typeck.cc:10587
 #, fuzzy, gcc-internal-format
 msgid "%<operator new%> must not return NULL unless it is declared %<throw()%> (or %<-fcheck-new%> is in effect)"
 msgstr "%<operator new%> ei saa palauttaa NULLia ellei esittely ole %<throw()%> (tai -fcheck-new ole voimassa)"
 
-#: cp/typeck.cc:11219
+#: cp/typeck.cc:11233
 #, fuzzy, gcc-internal-format
 msgid "using rvalue as lvalue"
 msgstr "virheellinen %%s-arvo"
@@ -62224,107 +62425,112 @@ msgstr "skalaarialustimen ympärillä on aaltosulkeet"
 msgid "cannot initialize aggregate of type %qT with a compound literal"
 msgstr ""
 
-#: cp/typeck2.cc:1691 cp/typeck2.cc:1721
+#: cp/typeck2.cc:1696 cp/typeck2.cc:1726
 #, gcc-internal-format
 msgid "missing initializer for member %qD"
 msgstr "puuttuva alustin jäsenelle %qD"
 
-#: cp/typeck2.cc:1698
+#: cp/typeck2.cc:1703
 #, gcc-internal-format
 msgid "member %qD is uninitialized reference"
 msgstr "jäsen %qD on alustamaton viittaus"
 
-#: cp/typeck2.cc:1705
+#: cp/typeck2.cc:1710
 #, fuzzy, gcc-internal-format
 msgid "member %qD with uninitialized reference fields"
 msgstr "jäsen %qD on alustamaton viittaus"
 
-#: cp/typeck2.cc:1783
+#: cp/typeck2.cc:1788
 #, fuzzy, gcc-internal-format
 msgid "designator order for field %qD does not match declaration order in %qT"
 msgstr "%qD:n tyyppi ei täsmää aiemman esittelyn kanssa"
 
-#: cp/typeck2.cc:1856
+#: cp/typeck2.cc:1861
 #, gcc-internal-format
 msgid "no field %qD found in union being initialized"
 msgstr "alustettavassa unionissa ei ole kenttää %qD"
 
-#: cp/typeck2.cc:1867
+#: cp/typeck2.cc:1872
 #, fuzzy, gcc-internal-format
 msgid "index value instead of field name in union initializer"
 msgstr "ylimääräisiä alkioita union-alustimessa"
 
-#: cp/typeck2.cc:2075
+#: cp/typeck2.cc:2080
 #, fuzzy, gcc-internal-format
 msgid "circular pointer delegation detected"
 msgstr "PRINT_OPERAND null-osoitin"
 
-#: cp/typeck2.cc:2089
+#: cp/typeck2.cc:2094
 #, fuzzy, gcc-internal-format
 msgid "base operand of %<->%> has non-pointer type %qT"
 msgstr "PRINT_OPERAND_ADDRESS, null-osoitin"
 
-#: cp/typeck2.cc:2119
+#: cp/typeck2.cc:2124
 #, gcc-internal-format
 msgid "result of %<operator->()%> yields non-pointer result"
 msgstr ""
 
-#: cp/typeck2.cc:2121
+#: cp/typeck2.cc:2126
 #, fuzzy, gcc-internal-format
 msgid "base operand of %<->%> is not a pointer"
 msgstr "PRINT_OPERAND_ADDRESS, null-osoitin"
 
-#: cp/typeck2.cc:2148
+#: cp/typeck2.cc:2153
 #, fuzzy, gcc-internal-format
 msgid "%qE cannot be used as a member pointer, since it is of type %qT"
 msgstr "%qE:a saatetaan käyttää alustamattomana tässä funktiossa"
 
-#: cp/typeck2.cc:2157
+#: cp/typeck2.cc:2162
 #, fuzzy, gcc-internal-format
 msgid "cannot apply member pointer %qE to %qE, which is of non-class type %qT"
 msgstr "parametrilla %P on vaillinainen tyyppi %qT"
 
-#: cp/typeck2.cc:2179
+#: cp/typeck2.cc:2184
 #, fuzzy, gcc-internal-format
 msgid "pointer to member type %qT incompatible with object type %qT"
 msgstr "sijoitus yhteensopimattomasta osoitintyypistä"
 
-#: cp/typeck2.cc:2237
+#: cp/typeck2.cc:2242
 #, fuzzy, gcc-internal-format
 msgid "pointer-to-member-function type %qT requires an rvalue"
 msgstr "jäsenfunktio-osoitinta käytetty laskutoimituksessa"
 
-#: cp/typeck2.cc:2248
+#: cp/typeck2.cc:2253
 #, fuzzy, gcc-internal-format
 msgid "pointer-to-member-function type %qT requires an lvalue"
 msgstr "jäsenfunktio-osoitinta käytetty laskutoimituksessa"
 
-#: cp/typeck2.cc:2256
+#: cp/typeck2.cc:2261
 #, fuzzy, gcc-internal-format
 msgid "pointer-to-member-function type %qT requires an lvalue before C++20"
 msgstr "jäsenfunktio-osoitinta käytetty laskutoimituksessa"
 
-#: cp/typeck2.cc:2297
+#: cp/typeck2.cc:2302
 #, fuzzy, gcc-internal-format
 msgid "functional cast to array type %qT"
 msgstr "tyyppimuunnos määrittää taulukkotyypin"
 
-#: cp/typeck2.cc:2313
+#: cp/typeck2.cc:2319
+#, fuzzy, gcc-internal-format
+msgid "%<auto(x)%> cannot be constrained"
+msgstr "hajotin ei voi olla staattinen jäsenfunktio"
+
+#: cp/typeck2.cc:2324
 #, fuzzy, gcc-internal-format
 msgid "%<auto(x)%> only available with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr "attribuutti %qs pätee vain funktiotyyppeihin"
 
-#: cp/typeck2.cc:2338
+#: cp/typeck2.cc:2349
 #, fuzzy, gcc-internal-format
 msgid "invalid value-initialization of reference type"
 msgstr "virheellinen %qT-tyyppisen viittauksen alustus %qT-tyyppisestä lausekkeesta"
 
-#: cp/typeck2.cc:2579
+#: cp/typeck2.cc:2590
 #, fuzzy, gcc-internal-format
 msgid "call to function %qD which throws incomplete type %q#T"
 msgstr "%2$qD:n parametrilla %1$P on vaillinainen tyyppi %3$qT"
 
-#: cp/typeck2.cc:2582
+#: cp/typeck2.cc:2593
 #, fuzzy, gcc-internal-format
 msgid "call to function which throws incomplete type %q#T"
 msgstr "epäkelpo %qs:n soveltaminen tyhjään tyyppiin"
@@ -62448,55 +62654,55 @@ msgstr "määrittelemättömän tyypin %<%s %E%> epäkelpo käyttö"
 msgid "cast from %qs to %qs will produce zero result"
 msgstr "muunnoksessa tyypistä %qT tyyppiin %qT menetetään tarkkuutta"
 
-#: d/d-lang.cc:477
+#: d/d-lang.cc:476
 #, fuzzy, gcc-internal-format
 msgid "bad argument for %<-fdebug%>: %qs"
 msgstr "Virheellinen vähimmäisargumenttimäärä (%d) funktiolle %s"
 
-#: d/d-lang.cc:532
+#: d/d-lang.cc:531
 #, fuzzy, gcc-internal-format
 msgid "bad argument for %<-fextern-std%>: %qs"
 msgstr "Virheellinen vähimmäisargumenttimäärä (%d) funktiolle %s"
 
-#: d/d-lang.cc:551
+#: d/d-lang.cc:550
 #, fuzzy, gcc-internal-format
 msgid "bad argument for %<-fmodule-file%>: %qs"
 msgstr "Virheellinen vähimmäisargumenttimäärä (%d) funktiolle %s"
 
-#: d/d-lang.cc:730
+#: d/d-lang.cc:729
 #, fuzzy, gcc-internal-format
 msgid "bad argument for %<-fversion%>: %qs"
 msgstr "Virheellinen vähimmäisargumenttimäärä (%d) funktiolle %s"
 
-#: d/d-lang.cc:1032
+#: d/d-lang.cc:1031
 #, gcc-internal-format
 msgid "%<-fonly=%> argument is different from first input file name"
 msgstr ""
 
-#: d/d-lang.cc:1209
+#: d/d-lang.cc:1208
 #, gcc-internal-format
 msgid "unable to resolve forward reference in definition"
 msgstr ""
 
-#: d/d-lang.cc:1326
+#: d/d-lang.cc:1325
 #, fuzzy, gcc-internal-format
 #| msgid "opening output file %s: %m"
 msgid "opening json file %s: %m"
 msgstr "avataan tulostetiedosto %s: %m"
 
-#: d/d-lang.cc:1337
+#: d/d-lang.cc:1336
 #, fuzzy, gcc-internal-format
 #| msgid "closing dependency file %s: %m"
 msgid "closing json file %s: %m"
 msgstr "suljetaan riippuvuustiedosto %s: %m"
 
-#: d/d-lang.cc:1408
+#: d/d-lang.cc:1407
 #, fuzzy, gcc-internal-format
 #| msgid "closing dependency file %s: %m"
 msgid "closing mixin file %s: %m"
 msgstr "suljetaan riippuvuustiedosto %s: %m"
 
-#: d/d-lang.cc:1413
+#: d/d-lang.cc:1412
 #, fuzzy, gcc-internal-format
 #| msgid "opening output file %s: %m"
 msgid "opening mixin file %s: %m"
@@ -62507,7 +62713,7 @@ msgstr "avataan tulostetiedosto %s: %m"
 msgid "D does not support pointers on this target."
 msgstr "%qs ei ole tuettu tällä kohteella"
 
-#: d/d-target.cc:245
+#: d/d-target.cc:252
 #, gcc-internal-format
 msgid "cannot represent built-in %<va_list%> type in D"
 msgstr ""
@@ -62559,60 +62765,60 @@ msgstr ""
 msgid "%s %qs instantiated"
 msgstr "käytä #includea sen sijaan"
 
-#: d/expr.cc:527
+#: d/expr.cc:528
 #, fuzzy, gcc-internal-format
 msgid "cannot handle comparison of type %<%s == %s%>"
 msgstr "funktiota %<main%> ei voi määrittää avoimeksi"
 
 #. Static arrays have already been handled by the front-end.
-#: d/expr.cc:1310
+#: d/expr.cc:1319
 #, fuzzy, gcc-internal-format
 msgid "unexpected type for array length: %qs"
 msgstr "odottamaton siirros"
 
-#: d/expr.cc:1491
+#: d/expr.cc:1454
 #, fuzzy, gcc-internal-format
 msgid "don%'t know how to delete %qs"
 msgstr "tls_model-argumentti ei ole merkkijono"
 
-#: d/expr.cc:1515
+#: d/expr.cc:1478
 #, fuzzy, gcc-internal-format
 msgid "%qs is not an associative array"
 msgstr "lueteltu tyyppi määritelty täällä"
 
-#: d/expr.cc:1799 d/expr.cc:2168
+#: d/expr.cc:1762 d/expr.cc:2138
 #, gcc-internal-format
 msgid "need %<this%> to access member %qs"
 msgstr ""
 
-#: d/expr.cc:1875
+#: d/expr.cc:1838
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is normally a non-static function"
 msgid "delegates are only for non-static functions"
 msgstr "%qD on tavallisesti ei-staattinen funktio"
 
-#: d/expr.cc:1940
+#: d/expr.cc:1910
 #, fuzzy, gcc-internal-format
 msgid "%qs is not a field, but a %qs"
 msgstr "Funktio %qs"
 
-#: d/expr.cc:2204
+#: d/expr.cc:2174
 #, fuzzy, gcc-internal-format
 msgid "recursive reference %qs"
 msgstr "kutsuttu täältä"
 
-#: d/expr.cc:2223 d/expr.cc:3077
+#: d/expr.cc:2193 d/expr.cc:3047
 #, fuzzy, gcc-internal-format
 #| msgid "overflow in constant expression"
 msgid "non-constant expression %qs"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: d/expr.cc:3044
+#: d/expr.cc:3014
 #, fuzzy, gcc-internal-format
 msgid "%qs is not an expression"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: d/expr.cc:3051
+#: d/expr.cc:3021
 #, fuzzy, gcc-internal-format
 msgid "type %qs is not an expression"
 msgstr "ylivuoto vakiolausekkeessa"
@@ -62682,7 +62888,7 @@ msgstr ""
 msgid "missing or corrupt object.d"
 msgstr ""
 
-#: d/types.cc:720
+#: d/types.cc:795
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "invalid expression for static array dimension: %s"
 msgstr "epäkelvot operandit binääriselle %s-operaatiolle"
@@ -62934,9 +63140,9 @@ msgstr "Taulukkoviitteellä kohdassa %C ei voi olla yli %d ulottuvuutta"
 #: fortran/array.cc:241 fortran/array.cc:700 fortran/check.cc:3418
 #: fortran/check.cc:5939 fortran/check.cc:5984 fortran/check.cc:6026
 #: fortran/check.cc:6053 fortran/check.cc:6316 fortran/match.cc:1846
-#: fortran/match.cc:3242 fortran/match.cc:3584 fortran/match.cc:3780
-#: fortran/simplify.cc:2995 fortran/simplify.cc:3025 fortran/simplify.cc:6374
-#: fortran/simplify.cc:8394
+#: fortran/match.cc:3284 fortran/match.cc:3626 fortran/match.cc:3822
+#: fortran/simplify.cc:2996 fortran/simplify.cc:3026 fortran/simplify.cc:6375
+#: fortran/simplify.cc:8395
 #, gcc-internal-format
 msgid "Coarrays disabled at %C, use %<-fcoarray=%> to enable"
 msgstr ""
@@ -63101,7 +63307,7 @@ msgstr "Odotettiin taulukkoindeksiä kohdassa %C"
 msgid "Array constructor including type specification at %C"
 msgstr "%qD esitelty extern-avainsanalla sisäkkäin"
 
-#: fortran/array.cc:1259 fortran/match.cc:4216
+#: fortran/array.cc:1259 fortran/match.cc:4258
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Type-spec at %L cannot contain a deferred type parameter"
 msgstr "Automaattitaulukolla ”%s” kohdassa %L ei voi olla alustinta"
@@ -63212,7 +63418,7 @@ msgstr "Muuttujatyyppi on UNKNOWN sijoituksessa kohdassa %L"
 msgid "Arguments of %qs at %L and %L cannot both be BOZ literal constants"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentin ”%1$s” kohdassa %3$L on oltava vakio"
 
-#: fortran/check.cc:123 fortran/resolve.cc:11031
+#: fortran/check.cc:123 fortran/resolve.cc:11051
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Invalid use of BOZ literal constant at %L"
 msgstr "epäkelpo osoitintila %qs"
@@ -64306,12 +64512,12 @@ msgstr ""
 msgid "Initialization string at %L was truncated to fit the variable (%ld/%ld)"
 msgstr "alustusmerkkijono typistetty, jotta se täsmäisi muuttujaan kohdassa %L"
 
-#: fortran/data.cc:188 fortran/resolve.cc:5169
+#: fortran/data.cc:188 fortran/resolve.cc:5187
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L is less than one"
 msgstr "Alimerkkijonon loppuindeksi kohdassa %L on liian suuri"
 
-#: fortran/data.cc:194 fortran/resolve.cc:5199
+#: fortran/data.cc:194 fortran/resolve.cc:5217
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L exceeds the string length"
 msgstr "Alimerkkijonon loppuindeksi kohdassa %L on liian suuri"
@@ -64351,15 +64557,15 @@ msgstr "epäkelpo lvalue asm-lauseessa"
 msgid "Nonpointer object %qs with default initialization shall not appear in a DATA statement at %L"
 msgstr ""
 
-#: fortran/data.cc:658 fortran/data.cc:677 fortran/data.cc:691
-#: fortran/data.cc:820
+#: fortran/data.cc:662 fortran/data.cc:681 fortran/data.cc:695
+#: fortran/data.cc:824
 #, fuzzy, gcc-internal-format
 msgid "Simplification error"
 msgstr ""
 " EPÄONNISTUI\n"
 "\n"
 
-#: fortran/data.cc:833
+#: fortran/data.cc:837
 #, gcc-internal-format
 msgid "TODO: Vector sections in data statements"
 msgstr ""
@@ -64499,7 +64705,7 @@ msgstr "Kaksoiskappale %s-spesifikaatio kohdassa %C"
 msgid "deferred type parameter at %C"
 msgstr "virheellinen parametrityyppi %qT"
 
-#: fortran/decl.cc:1158 fortran/resolve.cc:12594
+#: fortran/decl.cc:1158 fortran/resolve.cc:12623
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Scalar INTEGER expression expected at %L"
 msgstr "odotettiin kokonaislukulauseketta"
@@ -66337,12 +66543,12 @@ msgstr "vektoriylivuoto lausekkeessa"
 msgid "show_expr(): Don't know how to show expr"
 msgstr ""
 
-#: fortran/dump-parse-tree.cc:3391
+#: fortran/dump-parse-tree.cc:3396
 #, fuzzy, gcc-internal-format
 msgid "show_code_node(): Bad statement code"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/dump-parse-tree.cc:3715 fortran/dump-parse-tree.cc:3820
+#: fortran/dump-parse-tree.cc:3720 fortran/dump-parse-tree.cc:3825
 #, fuzzy, gcc-internal-format
 msgid "Cannot convert %qs to interoperable type at %L"
 msgstr "ei voi muuntaa osoitintyypiksi"
@@ -66405,418 +66611,424 @@ msgstr "ylivuoto vakiolausekkeessa"
 msgid "Index in dimension %d is out of bounds at %L"
 msgstr "Arvo sallitun välin ulkopuolella."
 
-#: fortran/expr.cc:1586 fortran/expr.cc:1637
+#: fortran/expr.cc:1586 fortran/expr.cc:1639
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "index in dimension %d is out of bounds at %L"
 msgstr "Arvo sallitun välin ulkopuolella."
 
-#: fortran/expr.cc:1713
+#: fortran/expr.cc:1715
 #, gcc-internal-format
 msgid "The number of elements in the array constructor at %L requires an increase of the allowed %d upper limit.  See %<-fmax-array-constructor%> option"
 msgstr ""
 
-#: fortran/expr.cc:1821 fortran/primary.cc:2300 fortran/primary.cc:2444
+#: fortran/expr.cc:1725
+#, fuzzy, gcc-internal-format, gfc-internal-format
+#| msgid "Syntax error in array constructor at %C"
+msgid "Error in array constructor referenced at %L"
+msgstr "Syntaksivirhe taulukkomuodostimessa kohdassa %C"
+
+#: fortran/expr.cc:1829 fortran/primary.cc:2300 fortran/primary.cc:2444
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "LEN part_ref at %C"
 msgstr "Odotettiin moduuliproseduurinimeä kohdassa %C"
 
-#: fortran/expr.cc:1839 fortran/primary.cc:2295 fortran/primary.cc:2459
+#: fortran/expr.cc:1847 fortran/primary.cc:2295 fortran/primary.cc:2459
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "KIND part_ref at %C"
 msgstr "Odotettiin moduuliproseduurinimeä kohdassa %C"
 
-#: fortran/expr.cc:1850
+#: fortran/expr.cc:1858
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "RE part_ref at %C"
 msgstr "Odotettiin moduuliproseduurinimeä kohdassa %C"
 
-#: fortran/expr.cc:1862
+#: fortran/expr.cc:1870
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "IM part_ref at %C"
 msgstr "Odotettiin moduuliproseduurinimeä kohdassa %C"
 
-#: fortran/expr.cc:2509
+#: fortran/expr.cc:2517
 #, gcc-internal-format, gfc-internal-format
 msgid "elemental function arguments at %C are not compliant"
 msgstr ""
 
-#: fortran/expr.cc:2553
+#: fortran/expr.cc:2561
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Numeric or CHARACTER operands are required in expression at %L"
 msgstr "Odotettiin PARAMETER-symbolia kompleksivakiossa kohdassa %C"
 
-#: fortran/expr.cc:2578
+#: fortran/expr.cc:2586
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Concatenation operator in expression at %L must have two CHARACTER operands"
 msgstr "Sijoitusoperaattorirajapinta kohdassa %L ei saa määritellä uudelleen INTRINSIC-tyyppisijoitusta"
 
-#: fortran/expr.cc:2585
+#: fortran/expr.cc:2593
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Concat operator at %L must concatenate strings of the same kind"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/expr.cc:2595
+#: fortran/expr.cc:2603
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid ".NOT. operator in expression at %L must have a LOGICAL operand"
 msgstr "Kääntäjänsisäisellä ”%s”-funktiolla kohdassa %L on oltava vähintään kaksi argumenttia"
 
-#: fortran/expr.cc:2611
+#: fortran/expr.cc:2619
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "LOGICAL operands are required in expression at %L"
 msgstr "ei-vakio alustuslauseke kohdassa %L"
 
-#: fortran/expr.cc:2622
+#: fortran/expr.cc:2630
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Only intrinsic operators can be used in expression at %L"
 msgstr "Syntaksivirhe IF-lausekkeessa kohdassa %C"
 
-#: fortran/expr.cc:2630
+#: fortran/expr.cc:2638
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Numeric operands are required in expression at %L"
 msgstr "Odotettiin oikeaa sulkumerkkiä lausekkeessa kohdassa %C"
 
-#: fortran/expr.cc:2653
+#: fortran/expr.cc:2661
 #, fuzzy, gcc-internal-format
 msgid "Invalid initialization expression for ALLOCATABLE component %qs in structure constructor at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/expr.cc:2790
+#: fortran/expr.cc:2798
 #, fuzzy, gcc-internal-format
 msgid "Assumed or deferred character length variable %qs in constant expression at %L"
 msgstr "Syntaksivirhe merkkipituusspesifikaatiossa kohdassa %C"
 
-#: fortran/expr.cc:2865
+#: fortran/expr.cc:2873
 #, fuzzy, gcc-internal-format
 msgid "transformational intrinsic %qs at %L is not permitted in an initialization expression"
 msgstr "Luontaisella ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/expr.cc:2896
+#: fortran/expr.cc:2904
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Evaluation of nonstandard initialization expression at %L"
 msgstr "ASYNCHRONOUS= määrite kohdassa %L täytyy olla alustuslauseke"
 
-#: fortran/expr.cc:2973 fortran/resolve.cc:2790
+#: fortran/expr.cc:2981 fortran/resolve.cc:2808
 #, fuzzy, gcc-internal-format
 msgid "Function %qs in initialization expression at %L must be an intrinsic function"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:2985
+#: fortran/expr.cc:2993
 #, fuzzy, gcc-internal-format
 msgid "Intrinsic function %qs at %L is not permitted in an initialization expression"
 msgstr "Luontaisella ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/expr.cc:3024
+#: fortran/expr.cc:3032
 #, fuzzy, gcc-internal-format
 msgid "PARAMETER %qs is used at %L before its definition is complete"
 msgstr "%J%qD käytössä ilman prototyyppiä ennen määrittelyänsä"
 
-#: fortran/expr.cc:3044
+#: fortran/expr.cc:3052
 #, fuzzy, gcc-internal-format
 msgid "Assumed size array %qs at %L is not permitted in an initialization expression"
 msgstr "ASYNCHRONOUS= määrite kohdassa %L täytyy olla alustuslauseke"
 
-#: fortran/expr.cc:3050
+#: fortran/expr.cc:3058
 #, fuzzy, gcc-internal-format
 msgid "Assumed shape array %qs at %L is not permitted in an initialization expression"
 msgstr "ASYNCHRONOUS= määrite kohdassa %L täytyy olla alustuslauseke"
 
-#: fortran/expr.cc:3059
+#: fortran/expr.cc:3067
 #, fuzzy, gcc-internal-format
 msgid "Assumed-shape array %qs at %L is not permitted in an initialization expression"
 msgstr "ASYNCHRONOUS= määrite kohdassa %L täytyy olla alustuslauseke"
 
-#: fortran/expr.cc:3063
+#: fortran/expr.cc:3071
 #, fuzzy, gcc-internal-format
 msgid "Deferred array %qs at %L is not permitted in an initialization expression"
 msgstr "ASYNCHRONOUS= määrite kohdassa %L täytyy olla alustuslauseke"
 
-#: fortran/expr.cc:3069
+#: fortran/expr.cc:3077
 #, fuzzy, gcc-internal-format
 msgid "Array %qs at %L is a variable, which does not reduce to a constant expression"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: fortran/expr.cc:3075
+#: fortran/expr.cc:3083
 #, fuzzy, gcc-internal-format
 msgid "Assumed-rank array %qs at %L is not permitted in an initialization expression"
 msgstr "ASYNCHRONOUS= määrite kohdassa %L täytyy olla alustuslauseke"
 
-#: fortran/expr.cc:3085
+#: fortran/expr.cc:3093
 #, fuzzy, 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 "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: fortran/expr.cc:3139
+#: fortran/expr.cc:3147
 #, fuzzy, gcc-internal-format
 msgid "check_init_expr(): Unknown expression type"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:3274
+#: fortran/expr.cc:3282
 #, fuzzy, gcc-internal-format
 msgid "Specification function %qs at %L cannot be a statement function"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: fortran/expr.cc:3281
+#: fortran/expr.cc:3289
 #, fuzzy, gcc-internal-format
 msgid "Specification function %qs at %L cannot be an internal function"
 msgstr "Funktiolla ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/expr.cc:3288
+#: fortran/expr.cc:3296
 #, fuzzy, gcc-internal-format
 msgid "Specification function %qs at %L must be PURE"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/expr.cc:3296
+#: fortran/expr.cc:3304
 #, fuzzy, gcc-internal-format
 msgid "Specification function %qs at %L cannot be RECURSIVE"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: fortran/expr.cc:3443
+#: fortran/expr.cc:3451
 #, fuzzy, gcc-internal-format
 msgid "Dummy argument %qs not allowed in expression at %L"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/expr.cc:3451
+#: fortran/expr.cc:3459
 #, fuzzy, gcc-internal-format
 msgid "Dummy argument %qs at %L cannot be OPTIONAL"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentti ”%1$s” kohdassa %3$L ei saa olla OPTIONAL"
 
-#: fortran/expr.cc:3458
+#: fortran/expr.cc:3466
 #, fuzzy, gcc-internal-format
 msgid "Dummy argument %qs at %L cannot be INTENT(OUT)"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentin ”%1$s” kohdassa %3$L ei voi olla INTENT(IN)"
 
-#: fortran/expr.cc:3487
+#: fortran/expr.cc:3495
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs cannot appear in the expression at %L"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: fortran/expr.cc:3518
+#: fortran/expr.cc:3526
 #, fuzzy, gcc-internal-format
 msgid "check_restricted(): Unknown expression type"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:3538
+#: fortran/expr.cc:3546
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expression at %L must be of INTEGER type, found %s"
 msgstr "Lauseke CASE-lauseessa kohdassa %L on oltava %s-tyyppinen"
 
-#: fortran/expr.cc:3550
+#: fortran/expr.cc:3558
 #, fuzzy, gcc-internal-format
 msgid "Function %qs at %L must be PURE"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/expr.cc:3559
+#: fortran/expr.cc:3567
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expression at %L must be scalar"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
 #. Reject truncation.
-#: fortran/expr.cc:3591
+#: fortran/expr.cc:3599
 #, gcc-internal-format, gfc-internal-format
 msgid "optype_msgid overflow: %d"
 msgstr ""
 
-#: fortran/expr.cc:3595
+#: fortran/expr.cc:3603
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Incompatible ranks in %s (%d and %d) at %L"
 msgstr "Yhteensopimattomat tasot %d ja %d sijoituksessa kohdassa %L"
 
-#: fortran/expr.cc:3609
+#: fortran/expr.cc:3617
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Different shape for %s at %L on dimension %d (%d and %d)"
 msgstr "%<__builtin_args_info%>-funktion argumentti puuttuu"
 
-#: fortran/expr.cc:3657
+#: fortran/expr.cc:3665
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assignment to a LEN or KIND part_ref at %L is not allowed"
 msgstr "kirjoitussuojatun muuttujan %qs sijoitus"
 
-#: fortran/expr.cc:3713
+#: fortran/expr.cc:3721
 #, fuzzy, gcc-internal-format
 msgid "%qs at %L is not a VALUE"
 msgstr "virheellinen %%L-arvo"
 
-#: fortran/expr.cc:3724
+#: fortran/expr.cc:3732
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Illegal assignment to external procedure at %L"
 msgstr "Iteraattoriaskel kohdassa %L ei voi olla nolla"
 
-#: fortran/expr.cc:3732
+#: fortran/expr.cc:3740
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible ranks %d and %d in assignment at %L"
 msgstr "Yhteensopimattomat tasot %d ja %d sijoituksessa kohdassa %L"
 
-#: fortran/expr.cc:3739
+#: fortran/expr.cc:3747
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable type is UNKNOWN in assignment at %L"
 msgstr "Muuttujatyyppi on UNKNOWN sijoituksessa kohdassa %L"
 
-#: fortran/expr.cc:3751
+#: fortran/expr.cc:3759
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "NULL appears on right-hand side in assignment at %L"
 msgstr "Yhteensopimattomat tasot %d ja %d sijoituksessa kohdassa %L"
 
-#: fortran/expr.cc:3761
+#: fortran/expr.cc:3769
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "POINTER-valued function appears on right-hand side of assignment at %L"
 msgstr "Yhteensopimattomat tasot %d ja %d sijoituksessa kohdassa %L"
 
-#: fortran/expr.cc:3804
+#: fortran/expr.cc:3812
 #, gcc-internal-format
 msgid "BOZ literal constant near %L cannot be assigned to a %qs variable"
 msgstr ""
 
-#: fortran/expr.cc:3811
+#: fortran/expr.cc:3819
 #, fuzzy, 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 "kirjoitussuojatun muuttujan %qs sijoitus"
 
-#: fortran/expr.cc:3841
+#: fortran/expr.cc:3849
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible types in DATA statement at %L; attempted conversion of %s to %s"
 msgstr "Yhteensopimattomat tyypit DATA-lauseessa kohdassa %L; yritettiin muuntaa tyyppi %s tyypiksi %s"
 
-#: fortran/expr.cc:3885
+#: fortran/expr.cc:3893
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target is not a POINTER at %L"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/expr.cc:3893
+#: fortran/expr.cc:3901
 #, gcc-internal-format
 msgid "%qs in the pointer assignment at %L cannot be an l-value since it is a procedure"
 msgstr ""
 
-#: fortran/expr.cc:3917
+#: fortran/expr.cc:3925
 #, fuzzy, gcc-internal-format
 msgid "Expected bounds specification for %qs at %L"
 msgstr "%J%qD:lle ei ole aiempaa esittelyä"
 
-#: fortran/expr.cc:3922
+#: fortran/expr.cc:3930
 #, fuzzy, gcc-internal-format
 msgid "Bounds specification for %qs in pointer assignment at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:3951
+#: fortran/expr.cc:3959
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Stride must not be present at %L"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/expr.cc:3957 fortran/expr.cc:3977
+#: fortran/expr.cc:3965 fortran/expr.cc:3985
 #, gcc-internal-format
 msgid "Rank remapping requires a list of %<lower-bound : upper-bound%> specifications at %L"
 msgstr ""
 
-#: fortran/expr.cc:3965 fortran/expr.cc:3984
+#: fortran/expr.cc:3973 fortran/expr.cc:3992
 #, gcc-internal-format
 msgid "Expected list of %<lower-bound :%> or list of %<lower-bound : upper-bound%> specifications at %L"
 msgstr ""
 
-#: fortran/expr.cc:4011
+#: fortran/expr.cc:4019
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Pointer object at %L shall not have a coindex"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/expr.cc:4032
+#: fortran/expr.cc:4040
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid procedure pointer assignment at %L"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/expr.cc:4057
+#: fortran/expr.cc:4065
 #, fuzzy, gcc-internal-format
 msgid "Function result %qs is invalid as proc-target in procedure pointer assignment at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:4066
+#: fortran/expr.cc:4074
 #, fuzzy, gcc-internal-format
 msgid "Abstract interface %qs is invalid in procedure pointer assignment at %L"
 msgstr "Käskyfunktio ”%s” on virheellinen proseduuriosoitinsijoituksessa kohdassa %L"
 
-#: fortran/expr.cc:4076
+#: fortran/expr.cc:4084
 #, fuzzy, gcc-internal-format
 msgid "Statement function %qs is invalid in procedure pointer assignment at %L"
 msgstr "Käskyfunktio ”%s” on virheellinen proseduuriosoitinsijoituksessa kohdassa %L"
 
-#: fortran/expr.cc:4082
+#: fortran/expr.cc:4090
 #, fuzzy, gcc-internal-format
 msgid "Internal procedure %qs is invalid in procedure pointer assignment at %L"
 msgstr "Sisäinen proseduuri ”%s” on virheellinen proseduuriosoittimessa kohdassa %L"
 
-#: fortran/expr.cc:4089
+#: fortran/expr.cc:4097
 #, fuzzy, gcc-internal-format
 msgid "Intrinsic %qs at %L is invalid in procedure pointer assignment"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/expr.cc:4097
+#: fortran/expr.cc:4105
 #, fuzzy, gcc-internal-format
 msgid "Nonintrinsic elemental procedure %qs is invalid in procedure pointer assignment at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:4120
+#: fortran/expr.cc:4128
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Mismatch in the procedure pointer assignment at %L: mismatch in the calling convention"
 msgstr "Rajapintatäsmäämättömyys proseduuriosoitinsijoituksessa kohdassa %L: %s"
 
-#: fortran/expr.cc:4173
+#: fortran/expr.cc:4181
 #, fuzzy, gcc-internal-format
 msgid "Interface mismatch in procedure pointer assignment at %L: %qs is not a subroutine"
 msgstr "Rajapintatäsmäämättömyys proseduuriosoitinsijoituksessa kohdassa %L: %s"
 
-#: fortran/expr.cc:4183 fortran/expr.cc:4198
+#: fortran/expr.cc:4191 fortran/expr.cc:4206
 #, fuzzy, gcc-internal-format
 msgid "Explicit interface required for component %qs at %L: %s"
 msgstr "Virheellinen proseduuriargumentti kohdassa %L"
 
-#: fortran/expr.cc:4189 fortran/expr.cc:4204 fortran/resolve.cc:2670
+#: fortran/expr.cc:4197 fortran/expr.cc:4212 fortran/resolve.cc:2688
 #, fuzzy, gcc-internal-format
 msgid "Explicit interface required for %qs at %L: %s"
 msgstr "Virheellinen proseduuriargumentti kohdassa %L"
 
-#: fortran/expr.cc:4216
+#: fortran/expr.cc:4224
 #, gcc-internal-format, gfc-internal-format
 msgid "Interface mismatch in procedure pointer assignment at %L: %s"
 msgstr "Rajapintatäsmäämättömyys proseduuriosoitinsijoituksessa kohdassa %L: %s"
 
-#: fortran/expr.cc:4225
+#: fortran/expr.cc:4233
 #, gcc-internal-format
 msgid "Procedure pointer target %qs at %L must be either an intrinsic, host or use associated, referenced or have the EXTERNAL attribute"
 msgstr ""
 
-#: fortran/expr.cc:4238
+#: fortran/expr.cc:4246
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target cannot be a constant at %L"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/expr.cc:4252
+#: fortran/expr.cc:4260
 #, gcc-internal-format, gfc-internal-format
 msgid "Data-pointer-object at %L must be unlimited polymorphic, or of a type with the BIND or SEQUENCE attribute, to be compatible with an unlimited polymorphic target"
 msgstr ""
 
-#: fortran/expr.cc:4257
+#: fortran/expr.cc:4265
 #, gcc-internal-format, gfc-internal-format
 msgid "Different types in pointer assignment at %L; attempted assignment of %s to %s"
 msgstr "Eri tyypit osoitinsijoituksessa kohdassa %L; yritettiin tyypin %s sijoitusta tyyppiin %s"
 
-#: fortran/expr.cc:4265
+#: fortran/expr.cc:4273
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Different kind type parameters in pointer assignment at %L"
 msgstr "Yhteensopimattomat tasot %d ja %d sijoituksessa kohdassa %L"
 
-#: fortran/expr.cc:4272
+#: fortran/expr.cc:4280
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Different ranks in pointer assignment at %L"
 msgstr "Yhteensopimattomat tasot %d ja %d sijoituksessa kohdassa %L"
 
-#: fortran/expr.cc:4291
+#: fortran/expr.cc:4299
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Rank remapping target is smaller than size of the pointer (%ld < %ld) at %L"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/expr.cc:4304
+#: fortran/expr.cc:4312
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Rank remapping target must be rank 1 or simply contiguous at %L"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/expr.cc:4308
+#: fortran/expr.cc:4316
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Rank remapping target is not rank 1 at %L"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
@@ -66824,187 +67036,187 @@ msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 #. The test above might need to be extend when F08, Note 5.4 has to be
 #. interpreted in the way that target and pointer with the same coindex
 #. are allowed.
-#: fortran/expr.cc:4333 fortran/expr.cc:4459
+#: fortran/expr.cc:4341 fortran/expr.cc:4467
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Data target at %L shall not have a coindex"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/expr.cc:4336
+#: fortran/expr.cc:4344
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Target expression in pointer assignment at %L must deliver a pointer result"
 msgstr "yhteensopimattomat tyypit sijoituksessa"
 
-#: fortran/expr.cc:4350
+#: fortran/expr.cc:4358
 #, gcc-internal-format, gfc-internal-format
 msgid "Zero-sized array detected at %L where an entity with the TARGET attribute is expected"
 msgstr ""
 
-#: fortran/expr.cc:4356 fortran/expr.cc:4371
+#: fortran/expr.cc:4364 fortran/expr.cc:4379
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target in initialization expression does not have the TARGET attribute at %L"
 msgstr "(%qs:n alustuksen lähistöllä)"
 
-#: fortran/expr.cc:4387
+#: fortran/expr.cc:4395
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Every subscript of target specification at %L must be a constant expression"
 msgstr "ASYNCHRONOUS= määrite kohdassa %L täytyy olla alustuslauseke"
 
-#: fortran/expr.cc:4398
+#: fortran/expr.cc:4406
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring starting and ending points of target specification at %L must be constant expressions"
 msgstr ""
 
-#: fortran/expr.cc:4414
+#: fortran/expr.cc:4422
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target is neither TARGET nor POINTER at %L"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/expr.cc:4429
+#: fortran/expr.cc:4437
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Bad target in pointer assignment in PURE procedure at %L"
 msgstr "Muuttuja %s ei voida liittää PURE-proseduuriin kohdassa %C"
 
-#: fortran/expr.cc:4438
+#: fortran/expr.cc:4446
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment with vector subscript on rhs at %L"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/expr.cc:4446
+#: fortran/expr.cc:4454
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target has PROTECTED attribute at %L"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/expr.cc:4474 fortran/expr.cc:4479
+#: fortran/expr.cc:4482 fortran/expr.cc:4487
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to contiguous pointer from non-contiguous target at %L"
 msgstr ""
 
-#: fortran/expr.cc:4519
+#: fortran/expr.cc:4527
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Pointer at %L in pointer assignment might outlive the pointer target"
 msgstr "yhteensopimattomat tyypit sijoituksessa"
 
-#: fortran/expr.cc:4595 fortran/resolve.cc:1512
+#: fortran/expr.cc:4603 fortran/resolve.cc:1529
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Pointer initialization target at %L must not be ALLOCATABLE"
 msgstr "(%qs:n alustuksen lähistöllä)"
 
-#: fortran/expr.cc:4601
+#: fortran/expr.cc:4609
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Pointer initialization target at %L must have the TARGET attribute"
 msgstr "(%qs:n alustuksen lähistöllä)"
 
-#: fortran/expr.cc:4616 fortran/resolve.cc:1518
+#: fortran/expr.cc:4624 fortran/resolve.cc:1535
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Pointer initialization target at %L must have the SAVE attribute"
 msgstr "(%qs:n alustuksen lähistöllä)"
 
-#: fortran/expr.cc:4628
+#: fortran/expr.cc:4636
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Procedure pointer initialization target at %L may not be a procedure pointer"
 msgstr "(%qs:n alustuksen lähistöllä)"
 
-#: fortran/expr.cc:4634
+#: fortran/expr.cc:4642
 #, fuzzy, gcc-internal-format
 msgid "Internal procedure %qs is invalid in procedure pointer initialization at %L"
 msgstr "Sisäinen proseduuri ”%s” on virheellinen proseduuriosoittimessa kohdassa %L"
 
-#: fortran/expr.cc:4641
+#: fortran/expr.cc:4649
 #, fuzzy, gcc-internal-format
 msgid "Dummy procedure %qs is invalid in procedure pointer initialization at %L"
 msgstr "Sisäinen proseduuri ”%s” on virheellinen proseduuriosoittimessa kohdassa %L"
 
-#: fortran/expr.cc:5109
+#: fortran/expr.cc:5117
 #, gcc-internal-format
 msgid "generate_isocbinding_initializer(): bad iso_c_binding type, expected %<c_ptr%> or %<c_funptr%>"
 msgstr ""
 
-#: fortran/expr.cc:6209
+#: fortran/expr.cc:6217
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Fortran 2008: Pointer functions in variable definition context (%s) at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6217
+#: fortran/expr.cc:6225
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Non-variable expression in variable definition context (%s) at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6225
+#: fortran/expr.cc:6233
 #, fuzzy, gcc-internal-format
 msgid "Named constant %qs in variable definition context (%s) at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6236
+#: fortran/expr.cc:6244
 #, fuzzy, gcc-internal-format
 msgid "%qs in variable definition context (%s) at %L is not a variable"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6247
+#: fortran/expr.cc:6255
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Non-POINTER in pointer association context (%s) at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6256
+#: fortran/expr.cc:6264
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Type inaccessible in variable definition context (%s) at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6269
+#: fortran/expr.cc:6277
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "LOCK_TYPE in variable definition context (%s) at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6282
+#: fortran/expr.cc:6290
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "LOCK_EVENT in variable definition context (%s) at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6313
+#: fortran/expr.cc:6321
 #, fuzzy, gcc-internal-format
 msgid "%qs parameter inquiry for %qs in variable definition context (%s) at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6330
+#: fortran/expr.cc:6338
 #, fuzzy, gcc-internal-format
 msgid "Dummy argument %qs with INTENT(IN) in pointer association context (%s) at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6340
+#: fortran/expr.cc:6348
 #, fuzzy, gcc-internal-format
 msgid "Dummy argument %qs with INTENT(IN) in variable definition context (%s) at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6353
+#: fortran/expr.cc:6361
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs is PROTECTED and cannot appear in a pointer association context (%s) at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6361
+#: fortran/expr.cc:6369
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs is PROTECTED and cannot appear in a variable definition context (%s) at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6376
+#: fortran/expr.cc:6384
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs cannot appear in a variable definition context (%s) at %L in PURE procedure"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6435
+#: fortran/expr.cc:6443
 #, fuzzy, gcc-internal-format
 msgid "%qs at %L associated to vector-indexed target cannot be used in a variable definition context (%s)"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6440
+#: fortran/expr.cc:6448
 #, fuzzy, gcc-internal-format
 msgid "%qs at %L associated to expression cannot be used in a variable definition context (%s)"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6452
+#: fortran/expr.cc:6460
 #, fuzzy, 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 "vektoriylivuoto lausekkeessa"
 
-#: fortran/expr.cc:6494
+#: fortran/expr.cc:6502
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Elements with the same value at %L and %L in vector subscript in a variable definition context (%s)"
 msgstr "vektoriylivuoto lausekkeessa"
@@ -67025,8 +67237,8 @@ msgid "Illegal id in copy_walk_reduction_arg"
 msgstr ""
 
 #: fortran/frontend-passes.cc:870 fortran/trans-array.cc:1496
-#: fortran/trans-array.cc:6837 fortran/trans-array.cc:8460
-#: fortran/trans-intrinsic.cc:8440
+#: fortran/trans-array.cc:6844 fortran/trans-array.cc:8467
+#: fortran/trans-intrinsic.cc:8442
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Creating array temporary at %L"
 msgstr "Luodaan väliaikainen komentotiedosto %s\n"
@@ -67056,72 +67268,72 @@ msgstr "Siirrä alas"
 msgid "illegal OP in optimize_comparison"
 msgstr "epäkelpo totuusarvolauseke"
 
-#: fortran/frontend-passes.cc:2351
+#: fortran/frontend-passes.cc:2352
 #, gcc-internal-format
 msgid "Index variable %qs set to undefined as INTENT(OUT) argument at %L in procedure %qs called from within DO loop at %L"
 msgstr ""
 
-#: fortran/frontend-passes.cc:2360
+#: fortran/frontend-passes.cc:2361
 #, gcc-internal-format
 msgid "Index variable %qs not definable as INTENT(INOUT) argument at %L in procedure %qs called from within DO loop at %L"
 msgstr ""
 
-#: fortran/frontend-passes.cc:2498
+#: fortran/frontend-passes.cc:2499
 #, fuzzy, 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 "ylivuoto vakiolausekkeessa"
 
-#: fortran/frontend-passes.cc:2507
+#: fortran/frontend-passes.cc:2508
 #, fuzzy, 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 "ylivuoto vakiolausekkeessa"
 
-#: fortran/frontend-passes.cc:2660
+#: fortran/frontend-passes.cc:2661
 #, fuzzy, 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 "ylivuoto vakiolausekkeessa"
 
-#: fortran/frontend-passes.cc:2667
+#: fortran/frontend-passes.cc:2668
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs at %L not definable inside loop beginning at %L as INTENT(INOUT) argument to subroutine %qs"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: fortran/frontend-passes.cc:2922 fortran/frontend-passes.cc:2948
+#: fortran/frontend-passes.cc:2923 fortran/frontend-passes.cc:2949
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L out of bounds (%ld < %ld) in loop beginning at %L"
 msgstr "Taulukkoviite kohdassa %L on rajojen ulkopuolella (%ld < %ld) ulottuvuudessa %d"
 
-#: fortran/frontend-passes.cc:2932 fortran/frontend-passes.cc:2958
+#: fortran/frontend-passes.cc:2933 fortran/frontend-passes.cc:2959
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L out of bounds (%ld > %ld) in loop beginning at %L"
 msgstr "Taulukkoviite kohdassa %L on rajojen ulkopuolella (%ld < %ld) ulottuvuudessa %d"
 
-#: fortran/frontend-passes.cc:3043
+#: fortran/frontend-passes.cc:3044
 #, fuzzy, 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 "ylivuoto vakiolausekkeessa"
 
-#: fortran/frontend-passes.cc:3049
+#: fortran/frontend-passes.cc:3050
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs at %L not definable inside loop beginning at %L as INTENT(INOUT) argument to function %qs"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: fortran/frontend-passes.cc:3465 fortran/trans-expr.cc:1874
+#: fortran/frontend-passes.cc:3466 fortran/trans-expr.cc:1874
 #, gcc-internal-format, gfc-internal-format
 msgid "Code for reallocating the allocatable array at %L will be added"
 msgstr ""
 
-#: fortran/frontend-passes.cc:3990
+#: fortran/frontend-passes.cc:3991
 #, gcc-internal-format
 msgid "Scalarization using DIMEN_RANGE unimplemented"
 msgstr ""
 
-#: fortran/frontend-passes.cc:5199
+#: fortran/frontend-passes.cc:5200
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Interchanging loops at %L"
 msgstr "continue-lause silmukan ulkopuolella"
 
-#: fortran/frontend-passes.cc:5838
+#: fortran/frontend-passes.cc:5839
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s between %L and %L"
 msgstr "tyyppien %qT ja %qT välinen vertailu"
@@ -67241,12 +67453,12 @@ msgstr "%<__builtin_expect%>-funktion toisen argumentin pitää olla vakio"
 msgid "Second argument of defined assignment at %L must be INTENT(IN)"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentin ”%1$s” kohdassa %3$L ei voi olla INTENT(IN)"
 
-#: fortran/interface.cc:987 fortran/resolve.cc:17351
+#: fortran/interface.cc:987 fortran/resolve.cc:17380
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "First argument of operator interface at %L must be INTENT(IN)"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentin ”%1$s” kohdassa %3$L ei voi olla INTENT(IN)"
 
-#: fortran/interface.cc:994 fortran/resolve.cc:17369
+#: fortran/interface.cc:994 fortran/resolve.cc:17398
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Second argument of operator interface at %L must be INTENT(IN)"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentin ”%1$s” kohdassa %3$L ei voi olla INTENT(IN)"
@@ -67943,7 +68155,7 @@ msgstr ""
 
 #: fortran/intrinsic.cc:1184
 #, gcc-internal-format
-msgid "The intrinsic %qs at %L is not included in the selected standard but %s and %qs will be treated as if declared EXTERNAL.  Use an appropriate %<-std=%>* option or define %<-fall-intrinsics%> to allow this intrinsic."
+msgid "The intrinsic %qs at %L is not included in the selected standard but %s and %qs will be treated as if declared EXTERNAL.  Use an appropriate %<-std=%> option or define %<-fall-intrinsics%> to allow this intrinsic."
 msgstr ""
 
 #: fortran/intrinsic.cc:1219
@@ -68080,7 +68292,7 @@ msgstr "Muunnos tyypistä %s tyyppiin %s kohdassa %L"
 #. Use of -fdec-char-conversions allows assignment of character data
 #. to non-character variables.  This not permited for nonconstant
 #. strings.
-#: fortran/intrinsic.cc:5398 fortran/resolve.cc:11006
+#: fortran/intrinsic.cc:5398 fortran/resolve.cc:11026
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Cannot convert %s to %s at %L"
 msgstr "Ei voi muuntaa tyyppiä %s tyyppiin %s kohdassa %L"
@@ -68536,7 +68748,7 @@ msgstr "UNIT-numeron CLOSE-lauseessa kohdassa %L täytyy olla epänegatiivinen"
 msgid "UNIT number in CLOSE statement at %L must be non-negative"
 msgstr "UNIT-numeron CLOSE-lauseessa kohdassa %L täytyy olla epänegatiivinen"
 
-#: fortran/io.cc:2855 fortran/match.cc:3071
+#: fortran/io.cc:2855 fortran/match.cc:3099
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement not allowed in PURE procedure at %C"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
@@ -68631,7 +68843,7 @@ msgstr ""
 msgid "NAMELIST object %qs in namelist %qs at %L is polymorphic and requires a defined input/output procedure"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/io.cc:3431 fortran/resolve.cc:15219
+#: fortran/io.cc:3431 fortran/resolve.cc:15248
 #, fuzzy, gcc-internal-format
 msgid "NAMELIST object %qs in namelist %qs at %L with ALLOCATABLE or POINTER components"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
@@ -69128,409 +69340,419 @@ msgstr "break-lause silmukan tai switch-rakenteen ulkopuolella"
 msgid "CYCLE statement at %C to non-innermost collapsed !$OMP DO loop"
 msgstr "break-lause silmukan tai switch-rakenteen ulkopuolella"
 
-#: fortran/match.cc:3020
+#: fortran/match.cc:3034
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Blank required in %s statement near %C"
 msgstr "virheellinen lvalue asm-tulosteessa %d"
 
-#: fortran/match.cc:3038
+#: fortran/match.cc:3057
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %C cannot be negative"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/match.cc:3044
+#: fortran/match.cc:3063
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %C contains too many digits"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/match.cc:3065
+#: fortran/match.cc:3079
+#, fuzzy, gcc-internal-format, gfc-internal-format
+msgid "QUIET= specifier for %s at %L"
+msgstr "Piste vaadittu muotomääritteessä kohdassa %L"
+
+#: fortran/match.cc:3093
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C in PURE procedure"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:3081
+#: fortran/match.cc:3109
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Image control statement STOP at %C in CRITICAL block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:3086
+#: fortran/match.cc:3114
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Image control statement STOP at %C in DO CONCURRENT block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:3098
+#: fortran/match.cc:3126
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be a scalar CHARACTER constant or digit[digit[digit[digit[digit]]]]"
 msgstr ""
 
-#: fortran/match.cc:3110
+#: fortran/match.cc:3138
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be a scalar default CHARACTER or INTEGER constant expression"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/match.cc:3117
+#: fortran/match.cc:3145
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be either INTEGER or CHARACTER type"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/match.cc:3124
+#: fortran/match.cc:3152
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be scalar"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/match.cc:3131
+#: fortran/match.cc:3159
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be default character KIND=%d"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/match.cc:3138
+#: fortran/match.cc:3166
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be default integer KIND=%d"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/match.cc:3186
+#: fortran/match.cc:3178 fortran/resolve.cc:11973
+#, fuzzy, gcc-internal-format, gfc-internal-format
+msgid "QUIET specifier at %L must be a scalar LOGICAL"
+msgstr "ASYNCHRONOUS= määrite kohdassa %L täytyy olla alustuslauseke"
+
+#: fortran/match.cc:3228
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "PAUSE statement at %C"
 msgstr "Tauko"
 
-#: fortran/match.cc:3207
+#: fortran/match.cc:3249
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ERROR STOP statement at %C"
 msgstr "Syntaksivirhe !GCC$ ATTRIBUTES-lauseessa kohdassa %C"
 
-#: fortran/match.cc:3233
+#: fortran/match.cc:3275
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Image control statement EVENT %s at %C in PURE procedure"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:3248
+#: fortran/match.cc:3290
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Image control statement EVENT %s at %C in CRITICAL block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:3255
+#: fortran/match.cc:3297
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Image control statement EVENT %s at %C in DO CONCURRENT block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:3285 fortran/match.cc:3627 fortran/match.cc:3839
-#: fortran/match.cc:4391 fortran/match.cc:4762
+#: fortran/match.cc:3327 fortran/match.cc:3669 fortran/match.cc:3881
+#: fortran/match.cc:4433 fortran/match.cc:4804
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Redundant STAT tag found at %L"
 msgstr "<tunnistevirhe>"
 
-#: fortran/match.cc:3306 fortran/match.cc:3648 fortran/match.cc:3859
-#: fortran/match.cc:4423 fortran/match.cc:4787
+#: fortran/match.cc:3348 fortran/match.cc:3690 fortran/match.cc:3901
+#: fortran/match.cc:4465 fortran/match.cc:4829
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Redundant ERRMSG tag found at %L"
 msgstr "<tunnistevirhe>"
 
-#: fortran/match.cc:3327
+#: fortran/match.cc:3369
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Redundant UNTIL_COUNT tag found at %L"
 msgstr "<tunnistevirhe>"
 
-#: fortran/match.cc:3393
+#: fortran/match.cc:3435
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "EVENT POST statement at %C"
 msgstr "Odottamaton %s-lause kohdassa %C"
 
-#: fortran/match.cc:3403
+#: fortran/match.cc:3445
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "EVENT WAIT statement at %C"
 msgstr "Odottamaton %s-lause kohdassa %C"
 
-#: fortran/match.cc:3415
+#: fortran/match.cc:3457
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FAIL IMAGE statement at %C"
 msgstr "Syntaksivirhe VALUE-lauseessa kohdassa %C"
 
-#: fortran/match.cc:3439
+#: fortran/match.cc:3481
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FORM TEAM statement at %C"
 msgstr "Syntaksivirhe IMPORT-lauseessa kohdassa %C"
 
-#: fortran/match.cc:3478
+#: fortran/match.cc:3520
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "CHANGE TEAM statement at %C"
 msgstr "Syntaksivirhe IMPORT-lauseessa kohdassa %C"
 
-#: fortran/match.cc:3508
+#: fortran/match.cc:3550
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "END TEAM statement at %C"
 msgstr "Syntaksivirhe IMPORT-lauseessa kohdassa %C"
 
-#: fortran/match.cc:3532
+#: fortran/match.cc:3574
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "SYNC TEAM statement at %C"
 msgstr "Tyhjä IMPLICIT-lause kohdassa %C"
 
-#: fortran/match.cc:3575
+#: fortran/match.cc:3617
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Image control statement %s at %C in PURE procedure"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:3590
+#: fortran/match.cc:3632
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Image control statement %s at %C in CRITICAL block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:3597
+#: fortran/match.cc:3639
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Image control statement %s at %C in DO CONCURRENT block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:3669
+#: fortran/match.cc:3711
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Redundant ACQUIRED_LOCK tag found at %L"
 msgstr "<tunnistevirhe>"
 
-#: fortran/match.cc:3734
+#: fortran/match.cc:3776
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "LOCK statement at %C"
 msgstr "Syntaksivirhe IMPORT-lauseessa kohdassa %C"
 
-#: fortran/match.cc:3744
+#: fortran/match.cc:3786
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "UNLOCK statement at %C"
 msgstr "Syntaksivirhe IMPORT-lauseessa kohdassa %C"
 
-#: fortran/match.cc:3769
+#: fortran/match.cc:3811
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Image control statement SYNC at %C in PURE procedure"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:3775
+#: fortran/match.cc:3817
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "SYNC statement at %C"
 msgstr "Tyhjä IMPLICIT-lause kohdassa %C"
 
-#: fortran/match.cc:3787
+#: fortran/match.cc:3829
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Image control statement SYNC at %C in CRITICAL block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:3793
+#: fortran/match.cc:3835
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Image control statement SYNC at %C in DO CONCURRENT block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:3973
+#: fortran/match.cc:4015
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ASSIGN statement at %C"
 msgstr "Ei voi sijoitaa nimettyyn vakioon kohdassa %C"
 
-#: fortran/match.cc:4017
+#: fortran/match.cc:4059
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assigned GOTO statement at %C"
 msgstr "Tyhjä IMPLICIT-lause kohdassa %C"
 
-#: fortran/match.cc:4061 fortran/match.cc:4112
+#: fortran/match.cc:4103 fortran/match.cc:4154
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Statement label list in GOTO at %C cannot be empty"
 msgstr "Nolla ei ole kelvollinen lausekenimiö kohdassa %C"
 
-#: fortran/match.cc:4122
+#: fortran/match.cc:4164
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Computed GOTO at %C"
 msgstr "ISO C++ kieltää lasketut goto-käskyt"
 
-#: fortran/match.cc:4197
+#: fortran/match.cc:4239
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Error in type-spec at %L"
 msgstr "<tyyppivirhe>"
 
-#: fortran/match.cc:4210
+#: fortran/match.cc:4252
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "typespec in ALLOCATE at %L"
 msgstr "nimitietueelle ei voi varata muistia"
 
-#: fortran/match.cc:4233
+#: fortran/match.cc:4275
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "The type parameter spec list in the type-spec at %L cannot contain DEFERRED parameters"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: fortran/match.cc:4263 fortran/match.cc:4700
+#: fortran/match.cc:4305 fortran/match.cc:4742
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected constant at %C"
 msgstr "Odottamaton %s-lause kohdassa %C"
 
-#: fortran/match.cc:4273
+#: fortran/match.cc:4315
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Bad allocate-object at %C for a PURE procedure"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:4288
+#: fortran/match.cc:4330
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Incompatible allocate-object at %C for CHARACTER type-spec at %L"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:4310
+#: fortran/match.cc:4352
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ALLOCATE of coarray at %C in DO CONCURRENT block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:4315
+#: fortran/match.cc:4357
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ALLOCATE of coarray at %C in CRITICAL block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:4337
+#: fortran/match.cc:4379
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L is neither a data pointer nor an allocatable variable"
 msgstr "funktiokutsun argumentti voi olla ehdokas muotoiluattribuutille"
 
-#: fortran/match.cc:4349
+#: fortran/match.cc:4391
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Type of entity at %L is type incompatible with typespec"
 msgstr "Jäsenfunktio %qs"
 
-#: fortran/match.cc:4357
+#: fortran/match.cc:4399
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Kind type parameter for entity at %L differs from the kind type parameter of the typespec"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: fortran/match.cc:4374
+#: fortran/match.cc:4416
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Shape specification for allocatable scalar at %C"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/match.cc:4401
+#: fortran/match.cc:4443
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "STAT tag at %L cannot be a constant"
 msgstr "Muuttuja %s ei voida liittää PURE-proseduuriin kohdassa %C"
 
-#: fortran/match.cc:4417
+#: fortran/match.cc:4459
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG tag at %L"
 msgstr "<tunnistevirhe>"
 
-#: fortran/match.cc:4440
+#: fortran/match.cc:4482
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "SOURCE tag at %L"
 msgstr "<tunnistevirhe>"
 
-#: fortran/match.cc:4446
+#: fortran/match.cc:4488
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Redundant SOURCE tag found at %L"
 msgstr "<tunnistevirhe>"
 
-#: fortran/match.cc:4453
+#: fortran/match.cc:4495
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "SOURCE tag at %L conflicts with the typespec at %L"
 msgstr "SAVE-attribuuttia kohdassa %L ei voida määritellä PURE-proseduurissa"
 
-#: fortran/match.cc:4459
+#: fortran/match.cc:4501
 #, gcc-internal-format, gfc-internal-format
 msgid "SOURCE tag at %L with more than a single allocate object"
 msgstr ""
 
-#: fortran/match.cc:4477
+#: fortran/match.cc:4519
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "MOLD tag at %L"
 msgstr "<tunnistevirhe>"
 
-#: fortran/match.cc:4483
+#: fortran/match.cc:4525
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Redundant MOLD tag found at %L"
 msgstr "<tunnistevirhe>"
 
-#: fortran/match.cc:4490
+#: fortran/match.cc:4532
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "MOLD tag at %L conflicts with the typespec at %L"
 msgstr "SAVE-attribuuttia kohdassa %L ei voida määritellä PURE-proseduurissa"
 
-#: fortran/match.cc:4516
+#: fortran/match.cc:4558
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "MOLD tag at %L conflicts with SOURCE tag at %L"
 msgstr "SAVE-attribuuttia kohdassa %L ei voida määritellä PURE-proseduurissa"
 
-#: fortran/match.cc:4524
+#: fortran/match.cc:4566
 #, fuzzy, 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 "kolme pistettä sisältävä parametriluettelo ei sovellu tyhjään parametrinimiluettelon esittelyyn"
 
-#: fortran/match.cc:4536
+#: fortran/match.cc:4578
 #, gcc-internal-format, gfc-internal-format
 msgid "Unlimited polymorphic allocate-object at %L requires either a type-spec or SOURCE tag or a MOLD tag"
 msgstr ""
 
-#: fortran/match.cc:4603
+#: fortran/match.cc:4645
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Pointer object at %C shall not be coindexed"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/match.cc:4618
+#: fortran/match.cc:4660
 #, gcc-internal-format, gfc-internal-format
 msgid "NULLIFY does not allow bounds remapping for pointer object at %C"
 msgstr ""
 
-#: fortran/match.cc:4712
+#: fortran/match.cc:4754
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Illegal allocate-object at %C for a PURE procedure"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:4722
+#: fortran/match.cc:4764
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "DEALLOCATE of coarray at %C in DO CONCURRENT block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:4729
+#: fortran/match.cc:4771
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "DEALLOCATE of coarray at %C in CRITICAL block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:4745
+#: fortran/match.cc:4787
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %C is not a nonprocedure pointer nor an allocatable variable"
 msgstr "funktiokutsun argumentti voi olla ehdokas muotoiluattribuutille"
 
-#: fortran/match.cc:4782
+#: fortran/match.cc:4824
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG at %L"
 msgstr "virheellinen %%L-arvo"
 
-#: fortran/match.cc:4839
+#: fortran/match.cc:4881
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Image control statement RETURN at %C in CRITICAL block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:4845
+#: fortran/match.cc:4887
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Image control statement RETURN at %C in DO CONCURRENT block"
 msgstr "%s-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:4854
+#: fortran/match.cc:4896
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Alternate RETURN statement at %C is only allowed within a SUBROUTINE"
 msgstr "PRINT-lause kohdassa %C ei ole sallittu PURE-proseduurin sisällä"
 
-#: fortran/match.cc:4885
+#: fortran/match.cc:4927
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "RETURN statement in main program at %C"
 msgstr "CLOSE-lause ei ole sallittu PURE-proseduurissa kohdassa %C"
 
-#: fortran/match.cc:4913
+#: fortran/match.cc:4955
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected component reference at %C"
 msgstr "Odotettiin komponenttiviitettä kohdassa %C"
 
-#: fortran/match.cc:4922
+#: fortran/match.cc:4964
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after CALL at %C"
 msgstr "Roskaa CALL-lauseen jälkeen kohdassa %C"
 
-#: fortran/match.cc:4933
+#: fortran/match.cc:4975
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected type-bound procedure or procedure pointer component at %C"
 msgstr "Odotettiin tyyppiriippuvaista proseduuria tai proseduurin osoitinkomponenttia kohdassa %C"
 
-#: fortran/match.cc:5030
+#: fortran/match.cc:5072
 #, gcc-internal-format, gfc-internal-format
 msgid "A BOZ literal constant at %L cannot appear as an actual argument in a subroutine reference"
 msgstr ""
 
-#: fortran/match.cc:5171
+#: fortran/match.cc:5213
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in common block name at %C"
 msgstr "Syntaksivirhe IF-lauseessa kohdassa %C"
@@ -69538,57 +69760,57 @@ msgstr "Syntaksivirhe IF-lauseessa kohdassa %C"
 #. If we find an error, just print it and continue,
 #. cause it's just semantic, and we can see if there
 #. are more errors.
-#: fortran/match.cc:5246
+#: fortran/match.cc:5288
 #, fuzzy, 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 "BIND(C)-funktion ”%s” paluutyyppi kohdassa %L ei voi olla taulukko"
 
-#: fortran/match.cc:5255
+#: fortran/match.cc:5297
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs in common block %qs at %C cannot be bind(c) since it is not global"
 msgstr "BIND(C)-funktion ”%s” paluutyyppi kohdassa %L ei voi olla taulukko"
 
-#: fortran/match.cc:5262
+#: fortran/match.cc:5304
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs at %C is already in a COMMON block"
 msgstr "Symboli ”%s” kohdassa %C on jo COMMON-lohkossa"
 
-#: fortran/match.cc:5270
+#: fortran/match.cc:5312
 #, gcc-internal-format
 msgid "Initialized symbol %qs at %C can only be COMMON in BLOCK DATA"
 msgstr ""
 
-#: fortran/match.cc:5286
+#: fortran/match.cc:5328
 #, gcc-internal-format
 msgid "Array specification for symbol %qs in COMMON at %C must be explicit"
 msgstr ""
 
-#: fortran/match.cc:5293
+#: fortran/match.cc:5335
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs in COMMON at %C cannot be a coarray"
 msgstr "Tyhjällä ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/match.cc:5303
+#: fortran/match.cc:5345
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs in COMMON at %C cannot be a POINTER array"
 msgstr "Tyhjällä ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/match.cc:5349
+#: fortran/match.cc:5391
 #, gcc-internal-format
 msgid "Symbol %qs, in COMMON block %qs at %C is being indirectly equivalenced to another COMMON block %qs"
 msgstr ""
 
-#: fortran/match.cc:5411
+#: fortran/match.cc:5453
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "BLOCK DATA construct at %L"
 msgstr "Lohkonimiö ei ole sopiva IF-lauseelle kohdassa %C"
 
-#: fortran/match.cc:5497
+#: fortran/match.cc:5539
 #, fuzzy, gcc-internal-format
 msgid "Namelist group name %qs at %C already has a basic type of %s"
 msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
 
-#: fortran/match.cc:5505
+#: fortran/match.cc:5547
 #, fuzzy, gcc-internal-format
 msgid "Namelist group name %qs at %C already is USE associated and cannot be respecified."
 msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
@@ -69596,178 +69818,178 @@ msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
 #. It is required that members of a namelist be declared
 #. before the namelist.  We check this by checking if the
 #. symbol has a defined type for IMPLICIT NONE.
-#: fortran/match.cc:5530
+#: fortran/match.cc:5572
 #, gcc-internal-format
 msgid "Symbol %qs in namelist %qs at %C must be declared before the namelist is declared."
 msgstr ""
 
-#: fortran/match.cc:5549
+#: fortran/match.cc:5591
 #, fuzzy, gcc-internal-format
 msgid "Assumed size array %qs in namelist %qs at %C is not allowed"
 msgstr "Tyhjä taulukkomuodostin kohdassa %C ei ole sallittu"
 
-#: fortran/match.cc:5692
+#: fortran/match.cc:5734
 #, gcc-internal-format, gfc-internal-format
 msgid "Derived type component %C is not a permitted EQUIVALENCE member"
 msgstr ""
 
-#: fortran/match.cc:5700
+#: fortran/match.cc:5742
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Array reference in EQUIVALENCE at %C cannot be an array section"
 msgstr "Taulukkoviitteellä kohdassa %C ei voi olla yli %d ulottuvuutta"
 
-#: fortran/match.cc:5733
+#: fortran/match.cc:5775
 #, gcc-internal-format, gfc-internal-format
 msgid "EQUIVALENCE at %C requires two or more objects"
 msgstr ""
 
-#: fortran/match.cc:5747
+#: fortran/match.cc:5789
 #, gcc-internal-format, gfc-internal-format
 msgid "Attempt to indirectly overlap COMMON blocks %s and %s by EQUIVALENCE at %C"
 msgstr ""
 
-#: fortran/match.cc:5760
+#: fortran/match.cc:5802
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expecting a comma in EQUIVALENCE at %C"
 msgstr "Odotettiin argumenttiluetteloa kohdassa %C"
 
-#: fortran/match.cc:5765
+#: fortran/match.cc:5807
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "EQUIVALENCE statement at %C"
 msgstr "Syntaksivirhe VALUE-lauseessa kohdassa %C"
 
-#: fortran/match.cc:5901
+#: fortran/match.cc:5943
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Statement function at %L is recursive"
 msgstr "Ei välitetä lausenimiöstä tyhjässä lauseessa kohdassa %L"
 
-#: fortran/match.cc:5907
+#: fortran/match.cc:5949
 #, fuzzy, gcc-internal-format
 msgid "Statement function %qs at %L conflicts with function name"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: fortran/match.cc:5918
+#: fortran/match.cc:5960
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Statement function at %L cannot appear within an INTERFACE"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: fortran/match.cc:5923
+#: fortran/match.cc:5965
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Statement function at %C"
 msgstr "Syntaksivirhe IMPORT-lauseessa kohdassa %C"
 
-#: fortran/match.cc:6048 fortran/match.cc:6064 fortran/match.cc:6083
+#: fortran/match.cc:6090 fortran/match.cc:6106 fortran/match.cc:6125
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE selector at %L cannot be %s"
 msgstr "Lauseke CASE-lauseessa kohdassa %L on oltava %s-tyyppinen"
 
-#: fortran/match.cc:6093 fortran/match.cc:6099
+#: fortran/match.cc:6135 fortran/match.cc:6141
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expression in CASE statement at %L must be scalar"
 msgid "Expression in CASE selector at %L must be scalar"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/match.cc:6108
+#: fortran/match.cc:6150
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected initialization expression in CASE at %C"
 msgstr "Odotettiin alustuslauseketta CASE-lauseessa kohdassa %C"
 
-#: fortran/match.cc:6140
+#: fortran/match.cc:6182
 #, fuzzy, gcc-internal-format
 msgid "Expected block name %qs of SELECT construct at %C"
 msgstr "tyhjä esittely"
 
-#: fortran/match.cc:6435
+#: fortran/match.cc:6477
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "SELECT TYPE at %C cannot appear in this scope"
 msgstr "%qD on jo määritelty"
 
-#: fortran/match.cc:6476
+#: fortran/match.cc:6518
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "parse error in SELECT TYPE statement at %C"
 msgstr "Syntaksivirhe PROTECTED-lauseessa kohdassa %C"
 
-#: fortran/match.cc:6501
+#: fortran/match.cc:6543
 #, gcc-internal-format, gfc-internal-format
 msgid "Selector in SELECT TYPE at %C is not a named variable; use associate-name=>"
 msgstr ""
 
-#: fortran/match.cc:6657
+#: fortran/match.cc:6699
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "SELECT RANK statement at %C"
 msgstr "Syntaksivirhe IMPORT-lauseessa kohdassa %C"
 
-#: fortran/match.cc:6686 fortran/match.cc:6740
+#: fortran/match.cc:6728 fortran/match.cc:6782
 #, gcc-internal-format, gfc-internal-format
 msgid "The SELECT RANK selector at %C must be an assumed rank variable"
 msgstr ""
 
-#: fortran/match.cc:6750
+#: fortran/match.cc:6792
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "parse error in SELECT RANK statement at %C"
 msgstr "Syntaksivirhe PROTECTED-lauseessa kohdassa %C"
 
-#: fortran/match.cc:6786
+#: fortran/match.cc:6828
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected CASE statement at %C"
 msgstr "Odottamaton CASE-lause kohdassa %C"
 
-#: fortran/match.cc:6838
+#: fortran/match.cc:6880
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in CASE specification at %C"
 msgstr "Syntaksivirhe CASE-spesifikaatiossa kohdassa %C"
 
-#: fortran/match.cc:6856
+#: fortran/match.cc:6898
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected TYPE IS statement at %C"
 msgstr "Odottamaton TYPE IS -lause kohdassa %C"
 
-#: fortran/match.cc:6888
+#: fortran/match.cc:6930
 #, gcc-internal-format, gfc-internal-format
 msgid "The type-spec shall not specify a sequence derived type or a type with the BIND attribute in SELECT TYPE at %C [F2003:C815]"
 msgstr ""
 
-#: fortran/match.cc:6899
+#: fortran/match.cc:6941
 #, gcc-internal-format, gfc-internal-format
 msgid "All the LEN type parameters in the TYPE IS statement at %C must be ASSUMED"
 msgstr ""
 
-#: fortran/match.cc:6910
+#: fortran/match.cc:6952
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in TYPE IS specification at %C"
 msgstr "Syntaksivirhe TYPE IS -spesifikaatiossa kohdassa %C"
 
-#: fortran/match.cc:6986
+#: fortran/match.cc:7028
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in CLASS IS specification at %C"
 msgstr "Syntaksvirhe CLASS IS -spesifikaatiossa kohdassa %C"
 
-#: fortran/match.cc:7006
+#: fortran/match.cc:7048
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected RANK statement at %C"
 msgstr "Odottamaton END-lause kohdassa %C"
 
-#: fortran/match.cc:7052
+#: fortran/match.cc:7094
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "The SELECT RANK CASE expression at %C must be a scalar, integer constant"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/match.cc:7061
+#: fortran/match.cc:7103
 #, gcc-internal-format, gfc-internal-format
 msgid "The value of the SELECT RANK CASE expression at %C must not be less than zero or greater than %d"
 msgstr ""
 
-#: fortran/match.cc:7088
+#: fortran/match.cc:7130
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in RANK specification at %C"
 msgstr "Syntaksivirhe CASE-spesifikaatiossa kohdassa %C"
 
-#: fortran/match.cc:7210
+#: fortran/match.cc:7252
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ELSEWHERE statement at %C not enclosed in WHERE block"
 msgstr "Odottamaton %s-lause WHERE-lohkossa kohdassa %C"
 
-#: fortran/match.cc:7248
+#: fortran/match.cc:7290
 #, fuzzy, gcc-internal-format
 msgid "Label %qs at %C doesn't match WHERE label %qs"
 msgstr "Nimiö ”%s” kohdassa %C ei täsmää IF nimiön ”%s” kanssa"
@@ -69888,232 +70110,232 @@ msgstr "%qD on jo määritelty"
 msgid "Syntax error in SUBMODULE statement at %C"
 msgstr "Syntaksivirhe PROCEDURE-lauseessa kohdassa %C"
 
-#: fortran/module.cc:1201
+#: fortran/module.cc:1202
 #, fuzzy, gcc-internal-format
 msgid "Reading module %qs at line %d column %d: %s"
 msgstr "Luetaan moduulia %s rivillä %d sarake %d: %s"
 
-#: fortran/module.cc:1205
+#: fortran/module.cc:1206
 #, fuzzy, gcc-internal-format
 msgid "Writing module %qs at line %d column %d: %s"
 msgstr "Kirjoitetaan moduuli %s rivillä %d sarake %d: %s"
 
-#: fortran/module.cc:1209
+#: fortran/module.cc:1210
 #, fuzzy, gcc-internal-format
 msgid "Module %qs at line %d column %d: %s"
 msgstr "Moduuli %s rivillä %d sarakkeessa %d: %s"
 
-#: fortran/module.cc:1642
+#: fortran/module.cc:1643
 #, gcc-internal-format
 msgid "require_atom(): bad atom type required"
 msgstr ""
 
-#: fortran/module.cc:1691
+#: fortran/module.cc:1692
 #, gcc-internal-format, gfc-internal-format
 msgid "Error writing modules file: %s"
 msgstr "Virhe kirjoitettaessa moduulitiedostoa %s"
 
-#: fortran/module.cc:1741
+#: fortran/module.cc:1742
 #, gcc-internal-format
 msgid "write_atom(): Trying to write dab atom"
 msgstr ""
 
-#: fortran/module.cc:1962
+#: fortran/module.cc:1963
 #, fuzzy, gcc-internal-format
 msgid "unquote_string(): got bad string"
 msgstr "virheellinen merkkijonovakio"
 
-#: fortran/module.cc:2959
+#: fortran/module.cc:2960
 #, fuzzy, gcc-internal-format
 msgid "mio_array_ref(): Unknown array ref"
 msgstr "luodaan viitteiden taulukko"
 
-#: fortran/module.cc:5094
+#: fortran/module.cc:5095
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Ambiguous !$OMP DECLARE REDUCTION from module %s at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/module.cc:5097
+#: fortran/module.cc:5098
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Previous !$OMP DECLARE REDUCTION from module %s at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/module.cc:5291
+#: fortran/module.cc:5292
 #, gcc-internal-format
 msgid "%qs of module %qs, imported at %C, is also the name of the current program unit"
 msgstr ""
 
-#: fortran/module.cc:5428
+#: fortran/module.cc:5429
 #, gcc-internal-format
 msgid "Mismatch in components of derived type %qs from %qs at %C: expecting %qs, but got %qs"
 msgstr ""
 
-#: fortran/module.cc:5707
+#: fortran/module.cc:5708
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs referenced at %L not found in module %qs"
 msgstr "Nimiö %d kohdassa %L on määritelty, mutta ei käytetty"
 
-#: fortran/module.cc:5714
+#: fortran/module.cc:5715
 #, fuzzy, gcc-internal-format
 msgid "User operator %qs referenced at %L not found in module %qs"
 msgstr "Taulukkoviite kohdassa %L on rajojen ulkopuolella (%ld < %ld) ulottuvuudessa %d"
 
-#: fortran/module.cc:5719
+#: fortran/module.cc:5720
 #, fuzzy, gcc-internal-format
 msgid "Intrinsic operator %qs referenced at %L not found in module %qs"
 msgstr "Taulukkoviite kohdassa %L on rajojen ulkopuolella (%ld < %ld) ulottuvuudessa %d"
 
-#: fortran/module.cc:5955
+#: fortran/module.cc:5956
 #, gcc-internal-format
 msgid "write_symbol(): bad module symbol %qs"
 msgstr ""
 
-#: fortran/module.cc:6299
+#: fortran/module.cc:6300
 #, gcc-internal-format
 msgid "write_symtree(): Symbol not written"
 msgstr ""
 
-#: fortran/module.cc:6489
+#: fortran/module.cc:6490
 #, fuzzy, gcc-internal-format
 msgid "Cannot open module file %qs for writing at %C: %s"
 msgstr "Ei voi avata moduulitiedostoa ”%s” kirjoittamista varten kohdassa %C: %s"
 
-#: fortran/module.cc:6510
+#: fortran/module.cc:6511
 #, fuzzy, gcc-internal-format
 msgid "Error writing module file %qs for writing: %s"
 msgstr "Virhe kirjoitettaessa moduulitiedostoa %s"
 
-#: fortran/module.cc:6521
+#: fortran/module.cc:6522
 #, fuzzy, gcc-internal-format
 msgid "Cannot delete module file %qs: %s"
 msgstr "Ei voida poistaa moduulitiedostoa ”%s”: %s"
 
-#: fortran/module.cc:6524
+#: fortran/module.cc:6525
 #, fuzzy, gcc-internal-format
 msgid "Cannot rename module file %qs to %qs: %s"
 msgstr "Ei voida nimetä uudelleen moduulitiedostoa ”%s” nimellä ”%s”: %s"
 
-#: fortran/module.cc:6530
+#: fortran/module.cc:6531
 #, fuzzy, gcc-internal-format
 msgid "Cannot delete temporary module file %qs: %s"
 msgstr "Ei voida poistaa tilapäistä moduulitiedostoa ”%s”: %s"
 
-#: fortran/module.cc:6587
+#: fortran/module.cc:6588
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs at %C already declared"
 msgstr "%qs alustettu ja esitelty %<extern%>-avainsanalla"
 
-#: fortran/module.cc:6658
+#: fortran/module.cc:6659
 #, gcc-internal-format, gfc-internal-format
 msgid "import_iso_c_binding_module(): Unable to create symbol for %s"
 msgstr ""
 
-#: fortran/module.cc:6766 fortran/module.cc:7110
+#: fortran/module.cc:6767 fortran/module.cc:7111
 #, fuzzy, gcc-internal-format
 msgid "The symbol %qs, referenced at %L, is not in the selected standard"
 msgstr "Nimiö %d kohdassa %L on määritelty, mutta ei käytetty"
 
-#: fortran/module.cc:6894
+#: fortran/module.cc:6895
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs referenced at %L not found in intrinsic module ISO_C_BINDING"
 msgstr "Nimiö %d kohdassa %L on määritelty, mutta ei käytetty"
 
-#: fortran/module.cc:6915 fortran/module.cc:6948 fortran/module.cc:6990
+#: fortran/module.cc:6916 fortran/module.cc:6949 fortran/module.cc:6991
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs already declared"
 msgstr "%qs alustettu ja esitelty %<extern%>-avainsanalla"
 
-#: fortran/module.cc:7095
+#: fortran/module.cc:7096
 #, gcc-internal-format
 msgid "Use of intrinsic module %qs at %C conflicts with non-intrinsic module name used previously"
 msgstr ""
 
-#: fortran/module.cc:7117
+#: fortran/module.cc:7118
 #, gcc-internal-format
 msgid "Use of the NUMERIC_STORAGE_SIZE named constant from intrinsic module ISO_FORTRAN_ENV at %L is incompatible with option %qs"
 msgstr ""
 
-#: fortran/module.cc:7185
+#: fortran/module.cc:7186
 #, gcc-internal-format, gfc-internal-format
 msgid "Use of the NUMERIC_STORAGE_SIZE named constant from intrinsic module ISO_FORTRAN_ENV at %C is incompatible with option %s"
 msgstr ""
 
-#: fortran/module.cc:7239
+#: fortran/module.cc:7240
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs referenced at %L not found in intrinsic module ISO_FORTRAN_ENV"
 msgstr "Nimiö %d kohdassa %L on määritelty, mutta ei käytetty"
 
-#: fortran/module.cc:7265
+#: fortran/module.cc:7266
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "USE statement at %C has no ONLY qualifier"
 msgstr "tyhjä esittely"
 
-#: fortran/module.cc:7294
+#: fortran/module.cc:7295
 #, gcc-internal-format, gfc-internal-format
 msgid "ISO_FORTRAN_ENV intrinsic module at %C"
 msgstr ""
 
-#: fortran/module.cc:7306
+#: fortran/module.cc:7307
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ISO_C_BINDING module at %C"
 msgstr "Odotettiin sitomisattribuuttia kohdassa %C"
 
-#: fortran/module.cc:7319
+#: fortran/module.cc:7320
 #, fuzzy, gcc-internal-format
 msgid "Cannot find an intrinsic module named %qs at %C"
 msgstr "Odotettiin moduuliproseduurinimeä kohdassa %C"
 
-#: fortran/module.cc:7325
+#: fortran/module.cc:7326
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "IEEE_FEATURES module at %C"
 msgstr "odotettiin ”::” moduuliluonteen jälkeen paikassa %C, mutta ei löytynyt"
 
-#: fortran/module.cc:7331
+#: fortran/module.cc:7332
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "IEEE_EXCEPTIONS module at %C"
 msgstr "odotettiin ”::” moduuliluonteen jälkeen paikassa %C, mutta ei löytynyt"
 
-#: fortran/module.cc:7337
+#: fortran/module.cc:7338
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "IEEE_ARITHMETIC module at %C"
 msgstr "odotettiin ”::” moduuliluonteen jälkeen paikassa %C, mutta ei löytynyt"
 
-#: fortran/module.cc:7347
+#: fortran/module.cc:7348
 #, fuzzy, gcc-internal-format
 msgid "Cannot open module file %qs for reading at %C: %s"
 msgstr "Ei voi avata moduulitiedostoa ”%s” lukemista varten kohdassa %C: %s"
 
-#: fortran/module.cc:7350
+#: fortran/module.cc:7351
 #, gcc-internal-format
 msgid "Module file %qs has not been generated, either because the module does not contain a MODULE PROCEDURE or there is an error in the module."
 msgstr ""
 
-#: fortran/module.cc:7361
+#: fortran/module.cc:7362
 #, gcc-internal-format
 msgid "Use of non-intrinsic module %qs at %C conflicts with intrinsic module name used previously"
 msgstr ""
 
-#: fortran/module.cc:7384
+#: fortran/module.cc:7385
 #, gcc-internal-format
 msgid "File %qs opened at %C is not a GNU Fortran module file"
 msgstr ""
 
-#: fortran/module.cc:7392
+#: fortran/module.cc:7393
 #, gcc-internal-format
 msgid "Cannot read module file %qs opened at %C, because it was created by a different version of GNU Fortran"
 msgstr ""
 
-#: fortran/module.cc:7409
+#: fortran/module.cc:7410
 #, gcc-internal-format
 msgid "Cannot USE a submodule that is currently built"
 msgstr ""
 
-#: fortran/module.cc:7411
+#: fortran/module.cc:7412
 #, gcc-internal-format
 msgid "Cannot USE a module that is currently built"
 msgstr ""
 
-#: fortran/openmp.cc:68 fortran/openmp.cc:6028
+#: fortran/openmp.cc:68 fortran/openmp.cc:6020
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk at %C"
 msgstr "Odottamatonta roskaa ELSE-lauseen jälkeen kohdassa %C"
@@ -70123,8 +70345,8 @@ msgstr "Odottamatonta roskaa ELSE-lauseen jälkeen kohdassa %C"
 msgid "List item shall not be coindexed at %C"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/openmp.cc:384 fortran/openmp.cc:485 fortran/openmp.cc:813
-#: fortran/openmp.cc:5107
+#: fortran/openmp.cc:384 fortran/openmp.cc:485 fortran/openmp.cc:805
+#: fortran/openmp.cc:5099
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "COMMON block /%s/ not found at %C"
 msgstr "Odottamaton %s-lause INTERFACE-lohkossa kohdassa %C"
@@ -70134,1545 +70356,1555 @@ msgstr "Odottamaton %s-lause INTERFACE-lohkossa kohdassa %C"
 msgid "Syntax error in OpenMP variable list at %C"
 msgstr "Syntaksivirhe argumenttiluettelossa kohdassa %C"
 
-#: fortran/openmp.cc:536
-#, gcc-internal-format
-msgid "%qs at %L should be of type integer(kind=omp_event_handle_kind)"
-msgstr ""
-
-#: fortran/openmp.cc:548
+#: fortran/openmp.cc:540
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in OpenMP detach clause at %C"
 msgstr "Syntaksivirhe argumenttiluettelossa kohdassa %C"
 
-#: fortran/openmp.cc:620
+#: fortran/openmp.cc:612
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in OpenMP DEPEND SINK list at %C"
 msgstr "Syntaksivirhe argumenttiluettelossa kohdassa %C"
 
-#: fortran/openmp.cc:682
+#: fortran/openmp.cc:674
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in OpenACC expression list at %C"
 msgstr "Syntaksivirhe IF-lausekkeessa kohdassa %C"
 
-#: fortran/openmp.cc:749
+#: fortran/openmp.cc:741
 #, fuzzy, gcc-internal-format
 msgid "Unexpected OpenACC parallelism."
 msgstr "Odotettiin argumenttiluetteloa kohdassa %C"
 
-#: fortran/openmp.cc:781
+#: fortran/openmp.cc:773
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Variable at %C is an element of a COMMON block"
 msgstr "Symboli ”%s” kohdassa %C on jo COMMON-lohkossa"
 
-#: fortran/openmp.cc:841
+#: fortran/openmp.cc:833
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$ACC DECLARE at %C"
 msgstr "Odottamatonta roskaa funktioesittelyn jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:851
+#: fortran/openmp.cc:843
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$ACC DECLARE list at %C"
 msgstr "Syntaksivirhe argumenttiluettelossa kohdassa %C"
 
-#: fortran/openmp.cc:1100
+#: fortran/openmp.cc:1092
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected INTEGER type at %L"
 msgstr "Odotettiin merkkiä ”,” kohdassa %C"
 
-#: fortran/openmp.cc:1114
+#: fortran/openmp.cc:1106
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "expected identifier"
 msgid "Expected identifier at %C"
 msgstr "odotettu tunniste"
 
-#: fortran/openmp.cc:1119
+#: fortran/openmp.cc:1111
 #, fuzzy, gcc-internal-format
 msgid "Same identifier %qs specified again at %C"
 msgstr "virheellinen muunnostarkennin jälkiliitteessä: %c"
 
-#: fortran/openmp.cc:1146
+#: fortran/openmp.cc:1138
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected range-specification at %C"
 msgstr "Odotettiin merkkiä ”,” kohdassa %C"
 
-#: fortran/openmp.cc:1233
+#: fortran/openmp.cc:1225
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Comma expected at %C"
 msgstr "Odotettiin merkkiä ”,” kohdassa %C"
 
-#: fortran/openmp.cc:1345
+#: fortran/openmp.cc:1337
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP DECLARE REDUCTION %s not found at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:1395
+#: fortran/openmp.cc:1387
 #, fuzzy, gcc-internal-format
 #| msgid "Duplicate %s attribute at %L"
 msgid "Duplicated %qs clause at %L"
 msgstr "Kaksoiskappele %s attribuutti kohdassa %L"
 
-#: fortran/openmp.cc:1402
+#: fortran/openmp.cc:1394
 #, fuzzy, gcc-internal-format
 msgid "Expected %<(%> after %qs at %C"
 msgstr "Odotettiin merkkiä ”,” kohdassa %C"
 
-#: fortran/openmp.cc:1409
+#: fortran/openmp.cc:1401
 #, fuzzy, gcc-internal-format
 msgid "Invalid expression after %<%s(%> at %C"
 msgstr "Virheellinen merkki nimessä kohdassa %C"
 
-#: fortran/openmp.cc:1471
+#: fortran/openmp.cc:1463
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Clause expected at %C after trailing comma"
 msgstr "Odotettiin merkkiä ”,” kohdassa %C"
 
-#: fortran/openmp.cc:1533
+#: fortran/openmp.cc:1525
 #, fuzzy, gcc-internal-format
 msgid "Expected %<:%> at %C"
 msgstr "Odotettiin merkkiä ”,” kohdassa %C"
 
-#: fortran/openmp.cc:1576
+#: fortran/openmp.cc:1568
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected variable name at %C"
 msgid "Expected variable list at %C"
 msgstr "Odotettiin muuttujanimeä kohdassa %C"
 
-#: fortran/openmp.cc:1600
+#: fortran/openmp.cc:1592
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected COMPILATION or EXECUTION in AT clause at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:1661
+#: fortran/openmp.cc:1653
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected TEAMS, PARALLEL or THREAD as binding in BIND at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1692
+#: fortran/openmp.cc:1684
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "COLLAPSE clause argument not constant positive integer at %C"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: fortran/openmp.cc:1771
+#: fortran/openmp.cc:1763
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected ALLOC, TO, FROM, TOFROM, FIRSTPRIVATE, NONE or DEFAULT at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1791
+#: fortran/openmp.cc:1783
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected SCALAR, AGGREGATE, ALLOCATABLE or POINTER at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1820
+#: fortran/openmp.cc:1812
 #, gcc-internal-format, gfc-internal-format
 msgid "DEFAULTMAP at %C but prior DEFAULTMAP with unspecified category"
 msgstr ""
 
-#: fortran/openmp.cc:1823
+#: fortran/openmp.cc:1815
 #, gcc-internal-format, gfc-internal-format
 msgid "DEFAULTMAP at %C but prior DEFAULTMAP for category %s"
 msgstr ""
 
-#: fortran/openmp.cc:1859
+#: fortran/openmp.cc:1851
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected NONE or PRESENT in DEFAULT clause at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:1862
+#: fortran/openmp.cc:1854
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected NONE, FIRSTPRIVATE, PRIVATE or SHARED in DEFAULT clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1902
+#: fortran/openmp.cc:1894
 #, gcc-internal-format, gfc-internal-format
 msgid "ITERATOR may not be combined with SOURCE at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1914
+#: fortran/openmp.cc:1906
 #, gcc-internal-format, gfc-internal-format
 msgid "ITERATOR may not be combined with SINK at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1971 fortran/openmp.cc:1999
+#: fortran/openmp.cc:1963 fortran/openmp.cc:1991
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "expected integer expression"
 msgid "Expected integer expression at %C"
 msgstr "odotettiin kokonaislukulauseketta"
 
-#: fortran/openmp.cc:1980
+#: fortran/openmp.cc:1972
 #, gcc-internal-format
 msgid "%<ancestor%> device modifier not preceded by %<requires%> directive with %<reverse_offload%> clause at %C"
 msgstr ""
 
-#: fortran/openmp.cc:1992
+#: fortran/openmp.cc:1984
 #, fuzzy, gcc-internal-format
 msgid "the %<device%> clause expression must evaluate to %<1%> at %C"
 msgstr "%<num_threads%>-arvon on oltava positiivinen"
 
-#: fortran/openmp.cc:2005
+#: fortran/openmp.cc:1997
 #, gcc-internal-format
 msgid "Expected integer expression or a single device-modifier %<device_num%> or %<ancestor%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2035
+#: fortran/openmp.cc:2027
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected HOST, NOHOST or ANY at %C"
 msgstr "Odotettiin merkkiä ”,” kohdassa %C"
 
-#: fortran/openmp.cc:2080
+#: fortran/openmp.cc:2072
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected SEQ_CST, ACQUIRE or RELAXED at %C"
 msgstr "Odotettiin merkkiä ”,” kohdassa %C"
 
-#: fortran/openmp.cc:2393
+#: fortran/openmp.cc:2385
 #, fuzzy, gcc-internal-format
 msgid "too many %<always%> modifiers at %L"
 msgstr "%s: Liian monta argumenttia\n"
 
-#: fortran/openmp.cc:2399
+#: fortran/openmp.cc:2391
 #, fuzzy, gcc-internal-format
 msgid "too many %<close%> modifiers at %L"
 msgstr "%s: Liian monta argumenttia\n"
 
-#: fortran/openmp.cc:2555
+#: fortran/openmp.cc:2547
 #, gcc-internal-format
 msgid "Expected ORDER(CONCURRENT) at %C with optional %<reproducible%> or %<unconstrained%> modifier"
 msgstr ""
 
-#: fortran/openmp.cc:2580
+#: fortran/openmp.cc:2572
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ORDERED clause argument not constant positive integer at %C"
 msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
-#: fortran/openmp.cc:2848
+#: fortran/openmp.cc:2840
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected FATAL or WARNING in SEVERITY clause at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:3031
+#: fortran/openmp.cc:3023
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Failed to match clause at %C"
 msgstr "%s: Tulostetiedoston %s sulkeminen epäonnistui\n"
 
-#: fortran/openmp.cc:3209
+#: fortran/openmp.cc:3201
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Invalid clause in module with !$ACC DECLARE at %L"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: fortran/openmp.cc:3219
+#: fortran/openmp.cc:3211
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Variable is USE-associated with !$ACC DECLARE at %L"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: fortran/openmp.cc:3228
+#: fortran/openmp.cc:3220
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs shall be declared in the same scoping unit as !$ACC DECLARE at %L"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: fortran/openmp.cc:3236
+#: fortran/openmp.cc:3228
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assumed-size dummy array with !$ACC DECLARE at %L"
 msgstr "%Jlohkoattribuutti ei ole sallittu %qD:lle"
 
-#: fortran/openmp.cc:3285
+#: fortran/openmp.cc:3277
 #, fuzzy, gcc-internal-format
 msgid "%<acc update%> must contain at least one %<device%> or %<host%> or %<self%> clause at %L"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: fortran/openmp.cc:3333
+#: fortran/openmp.cc:3325
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Invalid argument to !$ACC WAIT at %C"
 msgstr "Virheellinen proseduuriargumentti kohdassa %L"
 
-#: fortran/openmp.cc:3340
+#: fortran/openmp.cc:3332
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "WAIT clause at %L requires a scalar INTEGER expression"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/openmp.cc:3373
+#: fortran/openmp.cc:3365
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ACC CACHE directive must be inside of loop %C"
 msgstr "ISO C kieltää sisäkkäiset funktiot"
 
-#: fortran/openmp.cc:3442
+#: fortran/openmp.cc:3434
 #, gcc-internal-format, gfc-internal-format
 msgid "Only the !$ACC ROUTINE form without list is allowed in interface block at %C"
 msgstr ""
 
-#: fortran/openmp.cc:3476
+#: fortran/openmp.cc:3468
 #, fuzzy, gcc-internal-format
 msgid "Invalid NAME %qs in !$ACC ROUTINE ( NAME ) at %C"
 msgstr "Syntaksivirhe !GCC$ ATTRIBUTES-lauseessa kohdassa %C"
 
-#: fortran/openmp.cc:3484
+#: fortran/openmp.cc:3476
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$ACC ROUTINE ( NAME ) at %C"
 msgstr "Syntaksivirhe !GCC$ ATTRIBUTES-lauseessa kohdassa %C"
 
-#: fortran/openmp.cc:3491
+#: fortran/openmp.cc:3483
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$ACC ROUTINE ( NAME ) at %C, expecting ')' after NAME"
 msgstr "Syntaksivirhe !GCC$ ATTRIBUTES-lauseessa kohdassa %C"
 
-#: fortran/openmp.cc:3506
+#: fortran/openmp.cc:3498
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Multiple loop axes specified for routine at %C"
 msgstr "tallennusluokka annettu typenamelle"
 
-#: fortran/openmp.cc:3517
+#: fortran/openmp.cc:3509
 #, gcc-internal-format, gfc-internal-format
 msgid "Intrinsic symbol specified in !$ACC ROUTINE ( NAME ) at %C marked with incompatible GANG, WORKER, or VECTOR clause"
 msgstr ""
 
-#: fortran/openmp.cc:3525
+#: fortran/openmp.cc:3517
 #, gcc-internal-format, gfc-internal-format
 msgid "Intrinsic symbol specified in !$ACC ROUTINE ( NAME ) at %C marked with incompatible NOHOST clause"
 msgstr ""
 
-#: fortran/openmp.cc:3546 fortran/openmp.cc:3574
+#: fortran/openmp.cc:3538 fortran/openmp.cc:3566
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC ROUTINE already applied at %C"
 msgstr ""
 
-#: fortran/openmp.cc:3591
+#: fortran/openmp.cc:3583
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC ROUTINE with GANG, WORKER, or VECTOR clause is not permitted in PURE procedure at %C"
 msgstr ""
 
-#: fortran/openmp.cc:3743
+#: fortran/openmp.cc:3735
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP CRITICAL statement at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:3765
+#: fortran/openmp.cc:3757
 #, fuzzy, gcc-internal-format
 msgid "Expected %<( depobj )%> at %C"
 msgstr "Odotettiin merkkiä ”,” kohdassa %C"
 
-#: fortran/openmp.cc:3781
+#: fortran/openmp.cc:3773
 #, gcc-internal-format
 msgid "Expected IN, OUT, INOUT, MUTEXINOUTSET followed by %<)%> at %C"
 msgstr ""
 
-#: fortran/openmp.cc:3799
+#: fortran/openmp.cc:3791
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected DEPEND, UPDATE, or DESTROY clause at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:3807
+#: fortran/openmp.cc:3799
 #, gcc-internal-format, gfc-internal-format
 msgid "DEPEND clause at %L of OMP DEPOBJ construct shall not have dependence-type SOURCE, SINK or DEPOBJ"
 msgstr ""
 
-#: fortran/openmp.cc:3815
+#: fortran/openmp.cc:3807
 #, gcc-internal-format, gfc-internal-format
 msgid "DEPEND clause at %L of OMP DEPOBJ construct shall have only a single locator"
 msgstr ""
 
-#: fortran/openmp.cc:3941 fortran/openmp.cc:7561
+#: fortran/openmp.cc:3933 fortran/openmp.cc:7557
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "MESSAGE clause at %L requires a scalar default-kind CHARACTER expression"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/openmp.cc:3948
+#: fortran/openmp.cc:3940
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Constant character expression required in MESSAGE clause at %L"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: fortran/openmp.cc:3954
+#: fortran/openmp.cc:3946
 #, gcc-internal-format, gfc-internal-format
 msgid "$OMP ERROR encountered at %L: %s"
 msgstr ""
 
-#: fortran/openmp.cc:3973
+#: fortran/openmp.cc:3965
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "$OMP ERROR encountered at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:4001
+#: fortran/openmp.cc:3993
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected SEQ_CST, AQC_REL, RELEASE, or ACQUIRE at %C"
 msgstr ""
 
-#: fortran/openmp.cc:4010
+#: fortran/openmp.cc:4002
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "List specified together with memory order clause in FLUSH directive at %C"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: fortran/openmp.cc:4018
+#: fortran/openmp.cc:4010
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP FLUSH statement at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:4414 fortran/openmp.cc:9353
+#: fortran/openmp.cc:4406 fortran/openmp.cc:9369
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of predefined %s !$OMP DECLARE REDUCTION at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:4418 fortran/openmp.cc:9357
+#: fortran/openmp.cc:4410 fortran/openmp.cc:9373
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of predefined !$OMP DECLARE REDUCTION at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:4423
+#: fortran/openmp.cc:4415
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of !$OMP DECLARE REDUCTION at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:4425
+#: fortran/openmp.cc:4417
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Previous !$OMP DECLARE REDUCTION at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:4445
+#: fortran/openmp.cc:4437
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$OMP DECLARE REDUCTION at %C"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:4482
+#: fortran/openmp.cc:4474
 #, gcc-internal-format, gfc-internal-format
 msgid "Only the !$OMP DECLARE TARGET form without clauses is allowed in interface block at %C"
 msgstr ""
 
-#: fortran/openmp.cc:4497
+#: fortran/openmp.cc:4489
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$OMP DECLARE TARGET at %C"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:4520
+#: fortran/openmp.cc:4512
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "OMP DECLARE TARGET variable at %L is an element of a COMMON block"
 msgstr "Symboli ”%s” kohdassa %C on jo COMMON-lohkossa"
 
-#: fortran/openmp.cc:4525
+#: fortran/openmp.cc:4517
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "OMP DECLARE TARGET variable at %L previously mentioned in LINK clause and later in TO clause"
 msgstr "Symboli ”%s” kohdassa %C on jo COMMON-lohkossa"
 
-#: fortran/openmp.cc:4531
+#: fortran/openmp.cc:4523
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "OMP DECLARE TARGET variable at %L previously mentioned in TO clause and later in LINK clause"
 msgstr "Symboli ”%s” kohdassa %C on jo COMMON-lohkossa"
 
-#: fortran/openmp.cc:4535
+#: fortran/openmp.cc:4527
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable at %L mentioned multiple times in clauses of the same OMP DECLARE TARGET directive"
 msgstr ""
 
-#: fortran/openmp.cc:4549 fortran/openmp.cc:4595
+#: fortran/openmp.cc:4541 fortran/openmp.cc:4587
 #, gcc-internal-format
 msgid "List item %qs at %L set in previous OMP DECLARE TARGET directive to a different DEVICE_TYPE"
 msgstr ""
 
-#: fortran/openmp.cc:4559
+#: fortran/openmp.cc:4551
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "OMP DECLARE TARGET COMMON at %L previously mentioned in LINK clause and later in TO clause"
 msgstr "Symboli ”%s” kohdassa %C on jo COMMON-lohkossa"
 
-#: fortran/openmp.cc:4565
+#: fortran/openmp.cc:4557
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "OMP DECLARE TARGET COMMON at %L previously mentioned in TO clause and later in LINK clause"
 msgstr "Symboli ”%s” kohdassa %C on jo COMMON-lohkossa"
 
-#: fortran/openmp.cc:4569
+#: fortran/openmp.cc:4561
 #, 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.cc:4578
+#: fortran/openmp.cc:4570
 #, 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.cc:4602
+#: fortran/openmp.cc:4594
 #, gcc-internal-format, gfc-internal-format
 msgid "OMP DECLARE TARGET directive at %L with only DEVICE_TYPE clause is ignored"
 msgstr ""
 
-#: fortran/openmp.cc:4612
+#: fortran/openmp.cc:4604
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$OMP DECLARE TARGET list at %C"
 msgstr "Syntaksivirhe VOLATILE-lauseessa kohdassa %C"
 
-#: fortran/openmp.cc:4650
+#: fortran/openmp.cc:4642
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "expected trait selector name at %C"
 msgstr "%s-lausetta odotettiin kohdassa %L"
 
-#: fortran/openmp.cc:4705
+#: fortran/openmp.cc:4697
 #, gcc-internal-format, gfc-internal-format
 msgid "selector '%s' not allowed for context selector set '%s' at %C"
 msgstr ""
 
-#: fortran/openmp.cc:4725
+#: fortran/openmp.cc:4717
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "selector '%s' does not accept any properties at %C"
 msgstr "%s ei tue muotoilua %<%%%c%> %s"
 
-#: fortran/openmp.cc:4734 fortran/openmp.cc:4879 fortran/openmp.cc:4978
-#: fortran/openmp.cc:5045
+#: fortran/openmp.cc:4726 fortran/openmp.cc:4871 fortran/openmp.cc:4970
+#: fortran/openmp.cc:5037
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected ',' at %C"
 msgid "expected '(' at %C"
 msgstr "Odotettiin ”,” kohdassa %C"
 
-#: fortran/openmp.cc:4742
+#: fortran/openmp.cc:4734
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "score argument must be constant integer expression at %C"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: fortran/openmp.cc:4750
+#: fortran/openmp.cc:4742
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "score argument must be non-negative at %C"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/openmp.cc:4756 fortran/openmp.cc:4869 fortran/openmp.cc:5026
-#: fortran/openmp.cc:5054
+#: fortran/openmp.cc:4748 fortran/openmp.cc:4861 fortran/openmp.cc:5018
+#: fortran/openmp.cc:5046
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected ',' at %C"
 msgid "expected ')' at %C"
 msgstr "Odotettiin ”,” kohdassa %C"
 
-#: fortran/openmp.cc:4762
+#: fortran/openmp.cc:4754
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected \",\" at %C"
 msgid "expected : at %C"
 msgstr "Odotettiin merkkiä ”,” kohdassa %C"
 
-#: fortran/openmp.cc:4779
+#: fortran/openmp.cc:4771
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "property must be constant integer expression or string literal at %C"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: fortran/openmp.cc:4799
+#: fortran/openmp.cc:4791
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "expected identifier"
 msgid "expected identifier at %C"
 msgstr "odotettu tunniste"
 
-#: fortran/openmp.cc:4818
+#: fortran/openmp.cc:4810
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "expected identifier or string literal at %C"
 msgstr "odotettiin merkkijonoliteraalia"
 
-#: fortran/openmp.cc:4838
+#: fortran/openmp.cc:4830
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "expected expression"
 msgid "expected expression at %C"
 msgstr "odotettiin lauseketta"
 
-#: fortran/openmp.cc:4846
+#: fortran/openmp.cc:4838
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "property must be constant integer or logical expression at %C"
 msgstr "odotettiin kokonaislukulauseketta"
 
-#: fortran/openmp.cc:4858
+#: fortran/openmp.cc:4850
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected binding name at %C"
 msgid "expected simd clause at %C"
 msgstr "Odotettiin sitomisnimeä kohteessa %C"
 
-#: fortran/openmp.cc:4926
+#: fortran/openmp.cc:4918
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "expected 'construct', 'device', 'implementation' or 'user' at %C"
 msgstr "käytetty %<__thread%> ennen %<extern%>:a"
 
-#: fortran/openmp.cc:4934
+#: fortran/openmp.cc:4926
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected ',' at %C"
 msgid "expected '=' at %C"
 msgstr "Odotettiin ”,” kohdassa %C"
 
-#: fortran/openmp.cc:4941
+#: fortran/openmp.cc:4933
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected ',' at %C"
 msgid "expected '{' at %C"
 msgstr "Odotettiin ”,” kohdassa %C"
 
-#: fortran/openmp.cc:4956
+#: fortran/openmp.cc:4948
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected ',' at %C"
 msgid "expected '}' at %C"
 msgstr "Odotettiin ”,” kohdassa %C"
 
-#: fortran/openmp.cc:4985
+#: fortran/openmp.cc:4977
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "expected name at %C"
 msgstr "Odottamatonta roskaa ELSE-lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:4996
+#: fortran/openmp.cc:4988
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected variable name at %C"
 msgid "expected variant name at %C"
 msgstr "Odotettiin muuttujanimeä kohdassa %C"
 
-#: fortran/openmp.cc:5036
+#: fortran/openmp.cc:5028
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected ',' at %C"
 msgid "expected 'match' at %C"
 msgstr "Odotettiin ”,” kohdassa %C"
 
-#: fortran/openmp.cc:5087
+#: fortran/openmp.cc:5079
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Threadprivate variable at %C is an element of a COMMON block"
 msgstr "Symboli ”%s” kohdassa %C on jo COMMON-lohkossa"
 
-#: fortran/openmp.cc:5124
+#: fortran/openmp.cc:5116
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after OMP THREADPRIVATE at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:5131
+#: fortran/openmp.cc:5123
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$OMP THREADPRIVATE list at %C"
 msgstr "Syntaksivirhe argumenttiluettelossa kohdassa %C"
 
-#: fortran/openmp.cc:5234
+#: fortran/openmp.cc:5226
 #, 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.cc:5239
+#: fortran/openmp.cc:5231
 #, 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.cc:5244
+#: fortran/openmp.cc:5236
 #, 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.cc:5270
+#: fortran/openmp.cc:5262
 #, gcc-internal-format
 msgid "!$OMP REQUIRES clause %qs specified via module %qs use at %L comes after using a device construct/routine"
 msgstr ""
 
-#: fortran/openmp.cc:5274
+#: fortran/openmp.cc:5266
 #, gcc-internal-format
 msgid "!$OMP REQUIRES clause %qs specified at %L comes after using a device construct/routine"
 msgstr ""
 
-#: fortran/openmp.cc:5296
+#: fortran/openmp.cc:5288
 #, 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.cc:5301
+#: fortran/openmp.cc:5293
 #, 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.cc:5312
+#: fortran/openmp.cc:5304
 #, gcc-internal-format
 msgid "!$OMP REQUIRES clause %<atomic_default_mem_order(%s)%> specified via module %qs use at %L but same clause is not specified for the program unit"
 msgstr ""
 
-#: fortran/openmp.cc:5317
+#: fortran/openmp.cc:5309
 #, gcc-internal-format
 msgid "!$OMP REQUIRES clause %qs specified via module %qs use at %L but same clause is not specified for the program unit"
 msgstr ""
 
-#: fortran/openmp.cc:5346
+#: fortran/openmp.cc:5338
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP REQUIRES at %C must appear in the specification part of a program unit"
 msgstr "PROTECTED kohdassa %C on sallittu vain moduulin spesifikaatio-osassa"
 
-#: fortran/openmp.cc:5414
+#: fortran/openmp.cc:5406
 #, 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.cc:5424
+#: fortran/openmp.cc:5416
 #, fuzzy, gcc-internal-format
 msgid "Sorry, %qs clause at %L on REQUIRES directive is not yet supported"
 msgstr "-pipe ei ole tuettu"
 
-#: fortran/openmp.cc:5434
+#: fortran/openmp.cc:5426
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Clause expected at %C"
 msgstr "Odotettiin merkkiä ”,” kohdassa %C"
 
-#: fortran/openmp.cc:5440
+#: fortran/openmp.cc:5432
 #, fuzzy, gcc-internal-format
 msgid "%qs clause at %L specified more than once"
 msgstr "%s: Annettu useampi kuin yksi -d -valitsin\n"
 
-#: fortran/openmp.cc:5443
+#: fortran/openmp.cc:5435
 #, 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.cc:5469
+#: fortran/openmp.cc:5461
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected INCLUSIVE or EXCLUSIVE clause at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:5475
+#: fortran/openmp.cc:5467
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$OMP SCAN at %C"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:5673
+#: fortran/openmp.cc:5665
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after TASKYIELD clause at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:5732
+#: fortran/openmp.cc:5724
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP WORKSHARE statement at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:5767
+#: fortran/openmp.cc:5759
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP MASTER statement at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:5799
+#: fortran/openmp.cc:5791
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP NOTHING statement at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:5834 fortran/openmp.cc:5837 fortran/openmp.cc:5840
+#: fortran/openmp.cc:5826 fortran/openmp.cc:5829 fortran/openmp.cc:5832
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC at %L with %s clause is incompatible with READ or WRITE"
 msgstr ""
 
-#: fortran/openmp.cc:5844
+#: fortran/openmp.cc:5836
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC at %L with %s clause requires %s clause"
 msgstr ""
 
-#: fortran/openmp.cc:5881
+#: fortran/openmp.cc:5873
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC READ at %L incompatible with RELEASE clause"
 msgstr ""
 
-#: fortran/openmp.cc:5891
+#: fortran/openmp.cc:5883
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC WRITE at %L incompatible with ACQUIRE clause"
 msgstr ""
 
-#: fortran/openmp.cc:5928
+#: fortran/openmp.cc:5920
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$ACC ATOMIC statement at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:5943
+#: fortran/openmp.cc:5935
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP BARRIER statement at %C"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:5999
+#: fortran/openmp.cc:5991
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected construct-type PARALLEL, SECTIONS, DO or TASKGROUP in $OMP CANCELLATION POINT statement at %C"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:6005
+#: fortran/openmp.cc:5997
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after $OMP CANCELLATION POINT statement at %C"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:6026
+#: fortran/openmp.cc:6018
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after NOWAIT clause at %C"
 msgstr "Odottamatonta roskaa ELSE-lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:6071
+#: fortran/openmp.cc:6063
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s clause at %L requires a scalar INTEGER expression"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/openmp.cc:6082
+#: fortran/openmp.cc:6074
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "INTEGER expression of %s clause at %L must be positive"
 msgstr "Lauseke CASE-lauseessa kohdassa %L on oltava %s-tyyppinen"
 
-#: fortran/openmp.cc:6093
+#: fortran/openmp.cc:6085
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "INTEGER expression of %s clause at %L must be non-negative"
 msgstr "Lauseke CASE-lauseessa kohdassa %L on oltava %s-tyyppinen"
 
-#: fortran/openmp.cc:6104
+#: fortran/openmp.cc:6096
 #, fuzzy, gcc-internal-format
 msgid "Cray pointer object %qs of derived type in %s clause at %L"
 msgstr "Ei voi muuntaa tyyppiä %s tyyppiin %s kohdassa %L"
 
-#: fortran/openmp.cc:6107
+#: fortran/openmp.cc:6099
 #, fuzzy, gcc-internal-format
 msgid "Cray pointee object %qs of derived type in %s clause at %L"
 msgstr "Ei voi muuntaa tyyppiä %s tyyppiin %s kohdassa %L"
 
-#: fortran/openmp.cc:6113 fortran/openmp.cc:7426
+#: fortran/openmp.cc:6105 fortran/openmp.cc:7422
 #, fuzzy, gcc-internal-format
 msgid "POINTER object %qs of polymorphic type in %s clause at %L"
 msgstr "Ei voi muuntaa tyyppiä %s tyyppiin %s kohdassa %L"
 
-#: fortran/openmp.cc:6118
+#: fortran/openmp.cc:6110
 #, fuzzy, gcc-internal-format
 msgid "Cray pointer object %qs of polymorphic type in %s clause at %L"
 msgstr "Ei voi muuntaa tyyppiä %s tyyppiin %s kohdassa %L"
 
-#: fortran/openmp.cc:6123
+#: fortran/openmp.cc:6115
 #, fuzzy, gcc-internal-format
 msgid "Cray pointee object %qs of polymorphic type in %s clause at %L"
 msgstr "Ei voi muuntaa tyyppiä %s tyyppiin %s kohdassa %L"
 
-#: fortran/openmp.cc:6133 fortran/openmp.cc:7042 fortran/openmp.cc:7194
+#: fortran/openmp.cc:6125 fortran/openmp.cc:7036 fortran/openmp.cc:7190
 #, fuzzy, gcc-internal-format
 msgid "Assumed size array %qs in %s clause at %L"
 msgstr "%Jlohkoattribuutti ei ole sallittu %qD:lle"
 
-#: fortran/openmp.cc:6136
+#: fortran/openmp.cc:6128
 #, fuzzy, gcc-internal-format
 msgid "Assumed rank array %qs in %s clause at %L"
 msgstr "%Jlohkoattribuutti ei ole sallittu %qD:lle"
 
-#: fortran/openmp.cc:6152 fortran/openmp.cc:7135 fortran/openmp.cc:7182
+#: fortran/openmp.cc:6144 fortran/openmp.cc:7129 fortran/openmp.cc:7178
 #, fuzzy, gcc-internal-format
 msgid "POINTER object %qs in %s clause at %L"
 msgstr "Objekti ”%s” ei ole muuttuja kohdassa %L"
 
-#: fortran/openmp.cc:6157 fortran/openmp.cc:7430
+#: fortran/openmp.cc:6149 fortran/openmp.cc:7426
 #, fuzzy, gcc-internal-format
 msgid "Cray pointer object %qs in %s clause at %L"
 msgstr "Ei voi muuntaa tyyppiä %s tyyppiin %s kohdassa %L"
 
-#: fortran/openmp.cc:6162 fortran/openmp.cc:7433
+#: fortran/openmp.cc:6154 fortran/openmp.cc:7429
 #, fuzzy, gcc-internal-format
 msgid "Cray pointee object %qs in %s clause at %L"
 msgstr "Ei voi muuntaa tyyppiä %s tyyppiin %s kohdassa %L"
 
-#: fortran/openmp.cc:6167 fortran/openmp.cc:7130 fortran/openmp.cc:7421
+#: fortran/openmp.cc:6159 fortran/openmp.cc:7124 fortran/openmp.cc:7417
 #, fuzzy, gcc-internal-format
 msgid "ALLOCATABLE object %qs in %s clause at %L"
 msgstr "Objekti ”%s” ei ole muuttuja kohdassa %L"
 
-#: fortran/openmp.cc:6170 fortran/openmp.cc:7138
+#: fortran/openmp.cc:6162 fortran/openmp.cc:7132
 #, fuzzy, gcc-internal-format
 msgid "VALUE object %qs in %s clause at %L"
 msgstr "Objekti ”%s” ei ole muuttuja kohdassa %L"
 
-#: fortran/openmp.cc:6213
+#: fortran/openmp.cc:6205
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Implicitly declared function %s used in !$OMP DECLARE REDUCTION at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:6262
+#: fortran/openmp.cc:6254
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Implicitly declared subroutine %s used in !$OMP DECLARE REDUCTION at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:6300
+#: fortran/openmp.cc:6292
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ORDERED clause parameter is less than COLLAPSE at %L"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: fortran/openmp.cc:6303
+#: fortran/openmp.cc:6295
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ORDER clause must not be used together ORDERED at %L"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: fortran/openmp.cc:6310 fortran/openmp.cc:6321 fortran/resolve.cc:10818
-#: fortran/resolve.cc:12149
+#: fortran/openmp.cc:6302 fortran/openmp.cc:6313 fortran/resolve.cc:10838
+#: fortran/resolve.cc:12178
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "IF clause at %L requires a scalar LOGICAL expression"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/openmp.cc:6325
+#: fortran/openmp.cc:6317
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "IF clause without modifier at %L used together with IF clauses with modifiers"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: fortran/openmp.cc:6450
+#: fortran/openmp.cc:6442
 #, gcc-internal-format, gfc-internal-format
 msgid "IF clause modifier %s at %L not appropriate for the current OpenMP construct"
 msgstr ""
 
-#: fortran/openmp.cc:6460
+#: fortran/openmp.cc:6452
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FINAL clause at %L requires a scalar LOGICAL expression"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/openmp.cc:6470
+#: fortran/openmp.cc:6462
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "SCHEDULE clause's chunk_size at %L requires a scalar INTEGER expression"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/openmp.cc:6475
+#: fortran/openmp.cc:6467
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "INTEGER expression of SCHEDULE clause's chunk_size at %L must be positive"
 msgstr "Lauseke CASE-lauseessa kohdassa %L on oltava %s-tyyppinen"
 
-#: fortran/openmp.cc:6482
+#: fortran/openmp.cc:6474
 #, gcc-internal-format, gfc-internal-format
 msgid "Both MONOTONIC and NONMONOTONIC schedule modifiers specified at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6485
+#: fortran/openmp.cc:6477
 #, gcc-internal-format, gfc-internal-format
 msgid "NONMONOTONIC schedule modifier specified with ORDERED clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6494
+#: fortran/openmp.cc:6486
 #, gcc-internal-format, gfc-internal-format
 msgid "DEPOBJ in DEPOBJ construct at %L shall be a scalar integer of OMP_DEPEND_KIND kind"
 msgstr ""
 
-#: fortran/openmp.cc:6509
+#: fortran/openmp.cc:6501
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs is not a dummy argument at %L"
 msgstr "Muuttujatyyppi on UNKNOWN sijoituksessa kohdassa %L"
 
-#: fortran/openmp.cc:6545
+#: fortran/openmp.cc:6537
 #, fuzzy, gcc-internal-format
 msgid "Object %qs is not a variable at %L; parameters cannot be and need not be copied"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/openmp.cc:6549
+#: fortran/openmp.cc:6541
 #, fuzzy, gcc-internal-format
 msgid "Object %qs is not a variable at %L; parameters cannot be and need not be mapped"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/openmp.cc:6554 fortran/openmp.cc:9059
+#: fortran/openmp.cc:6546 fortran/openmp.cc:9075
 #, fuzzy, gcc-internal-format
 msgid "Object %qs is not a variable at %L"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/openmp.cc:6563
+#: fortran/openmp.cc:6555
 #, gcc-internal-format
 msgid "%<inscan%> REDUCTION clause on construct other than DO, SIMD, DO SIMD, PARALLEL DO, PARALLEL DO SIMD at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6593
+#: fortran/openmp.cc:6585
 #, gcc-internal-format
 msgid "Symbol %qs has mixed component and non-component accesses at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6596 fortran/openmp.cc:6612 fortran/openmp.cc:6620
-#: fortran/openmp.cc:6631 fortran/openmp.cc:6643 fortran/openmp.cc:6730
-#: fortran/openmp.cc:9083
+#: fortran/openmp.cc:6588 fortran/openmp.cc:6604 fortran/openmp.cc:6612
+#: fortran/openmp.cc:6623 fortran/openmp.cc:6635 fortran/openmp.cc:6722
+#: fortran/openmp.cc:9099
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs present on multiple clauses at %L"
 msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
 
-#: fortran/openmp.cc:6655
+#: fortran/openmp.cc:6647
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected integer expression of the 'omp_allocator_handle_kind' kind at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6673
+#: fortran/openmp.cc:6665
 #, fuzzy, gcc-internal-format
 msgid "%qs appears more than once in %<allocate%> clauses at %L"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: fortran/openmp.cc:6715 fortran/trans-openmp.cc:6358
+#: fortran/openmp.cc:6707 fortran/trans-openmp.cc:6403
 #, fuzzy, gcc-internal-format
 msgid "%qs specified in 'allocate' clause at %L but not in an explicit privatization clause"
 msgstr "  alustettaessa funktion %2$qD argumenttia %1$P"
 
-#: fortran/openmp.cc:6737
+#: fortran/openmp.cc:6729
 #, fuzzy, gcc-internal-format
 msgid "Array %qs is not permitted in reduction at %L"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: fortran/openmp.cc:6750
+#: fortran/openmp.cc:6742
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs present on both FROM and TO clauses at %L"
 msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
 
-#: fortran/openmp.cc:6768
+#: fortran/openmp.cc:6760
 #, fuzzy, gcc-internal-format
 msgid "Non-THREADPRIVATE object %qs in COPYIN clause at %L"
 msgstr "Objekti ”%s” ei ole muuttuja kohdassa %L"
 
-#: fortran/openmp.cc:6776
+#: fortran/openmp.cc:6768
 #, fuzzy, gcc-internal-format
 msgid "Assumed size array %qs in COPYPRIVATE clause at %L"
 msgstr "%Jlohkoattribuutti ei ole sallittu %qD:lle"
 
-#: fortran/openmp.cc:6779
+#: fortran/openmp.cc:6771
 #, fuzzy, gcc-internal-format
 msgid "INTENT(IN) POINTER %qs in COPYPRIVATE clause at %L"
 msgstr "Objekti ”%s” ei ole muuttuja kohdassa %L"
 
-#: fortran/openmp.cc:6787
+#: fortran/openmp.cc:6779
 #, fuzzy, gcc-internal-format
 msgid "THREADPRIVATE object %qs in SHARED clause at %L"
 msgstr "Objekti ”%s” ei ole muuttuja kohdassa %L"
 
-#: fortran/openmp.cc:6790
+#: fortran/openmp.cc:6782
 #, fuzzy, gcc-internal-format
 msgid "Cray pointee %qs in SHARED clause at %L"
 msgstr "Virheellinen proseduuriargumentti kohdassa %L"
 
-#: fortran/openmp.cc:6793
+#: fortran/openmp.cc:6785
 #, fuzzy, gcc-internal-format
-msgid "ASSOCIATE name %qs in SHARED clause at %L"
+msgid "Associate name %qs in SHARED clause at %L"
 msgstr "Objekti ”%s” ei ole muuttuja kohdassa %L"
 
-#: fortran/openmp.cc:6797
+#: fortran/openmp.cc:6791
 #, fuzzy, gcc-internal-format
 msgid "DETACH event handle %qs in SHARED clause at %L"
 msgstr "Objekti ”%s” ei ole muuttuja kohdassa %L"
 
-#: fortran/openmp.cc:6812
+#: fortran/openmp.cc:6806
 #, gcc-internal-format
 msgid "%qs in ALIGNED clause must be POINTER, ALLOCATABLE, Cray pointer or C_PTR at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6824
+#: fortran/openmp.cc:6818
 #, fuzzy, gcc-internal-format
 msgid "%qs in ALIGNED clause at %L requires a scalar positive constant integer alignment expression"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: fortran/openmp.cc:6850
+#: fortran/openmp.cc:6844
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Scalar integer expression for range begin expected at %L"
 msgstr "odotettiin kokonaislukulauseketta"
 
-#: fortran/openmp.cc:6856
+#: fortran/openmp.cc:6850
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Scalar integer expression for range end expected at %L"
 msgstr "odotettiin kokonaislukulauseketta"
 
-#: fortran/openmp.cc:6862
+#: fortran/openmp.cc:6856
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Scalar integer expression for range step expected at %L"
 msgstr "odotettiin kokonaislukulauseketta"
 
-#: fortran/openmp.cc:6867
+#: fortran/openmp.cc:6861
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "%s statement expected at %L"
 msgid "Nonzero range step expected at %L"
 msgstr "%s-lausetta odotettiin kohdassa %L"
 
-#: fortran/openmp.cc:6878
+#: fortran/openmp.cc:6872
 #, gcc-internal-format, gfc-internal-format
 msgid "SINK dependence type only allowed on ORDERED directive at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6882
+#: fortran/openmp.cc:6876
 #, gcc-internal-format, gfc-internal-format
 msgid "DEPEND SINK used together with DEPEND SOURCE on the same construct at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6892
+#: fortran/openmp.cc:6886
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "SINK addend not a constant integer at %L"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: fortran/openmp.cc:6898
+#: fortran/openmp.cc:6892
 #, gcc-internal-format, gfc-internal-format
 msgid "Only SOURCE or SINK dependence types are allowed on ORDERED directive at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6907
+#: fortran/openmp.cc:6901
 #, gcc-internal-format
 msgid "Locator %qs at %L in DEPEND clause of depobj type shall be a scalar integer of OMP_DEPEND_KIND kind"
 msgstr ""
 
-#: fortran/openmp.cc:6918
+#: fortran/openmp.cc:6912
 #, gcc-internal-format, gfc-internal-format
 msgid "Locator at %L in DEPEND clause of depobj type shall be a scalar integer of OMP_DEPEND_KIND kind"
 msgstr ""
 
-#: fortran/openmp.cc:6962
+#: fortran/openmp.cc:6956
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Array is not contiguous at %L"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: fortran/openmp.cc:6973
+#: fortran/openmp.cc:6967
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected substring reference in %s clause at %L"
 msgstr "Rajapintatäsmäämättömyys proseduuriosoitinsijoituksessa kohdassa %L: %s"
 
-#: fortran/openmp.cc:6981
+#: fortran/openmp.cc:6975
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected complex-parts designator reference in %s clause at %L"
 msgstr "Rajapintatäsmäämättömyys proseduuriosoitinsijoituksessa kohdassa %L: %s"
 
-#: fortran/openmp.cc:6990 fortran/openmp.cc:7008
+#: fortran/openmp.cc:6984 fortran/openmp.cc:7002
 #, fuzzy, gcc-internal-format
 msgid "%qs in %s clause at %L is not a proper array section"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: fortran/openmp.cc:7000
+#: fortran/openmp.cc:6994
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Stride should not be specified for array section in %s clause at %L"
 msgstr "käytetään muuttuvapituista taulukkoa"
 
-#: fortran/openmp.cc:7022
+#: fortran/openmp.cc:7016
 #, fuzzy, gcc-internal-format
 msgid "%qs in %s clause at %L is a zero size array section"
 msgstr "ISO C++ kieltää nollan kokoisen taulukon %qD"
 
-#: fortran/openmp.cc:7048
+#: fortran/openmp.cc:7042
 #, gcc-internal-format
 msgid "List item %qs with allocatable components is not permitted in map clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:7067
+#: fortran/openmp.cc:7061
 #, gcc-internal-format, gfc-internal-format
 msgid "TARGET%s with map-type other than TO, FROM, TOFROM, or ALLOC on MAP clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:7083
+#: fortran/openmp.cc:7077
 #, 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.cc:7098
+#: fortran/openmp.cc:7092
 #, 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.cc:7114 fortran/openmp.cc:7168
+#: fortran/openmp.cc:7108 fortran/openmp.cc:7162
 #, fuzzy, gcc-internal-format
 msgid "THREADPRIVATE object %qs in %s clause at %L"
 msgstr "Objekti ”%s” ei ole muuttuja kohdassa %L"
 
-#: fortran/openmp.cc:7117 fortran/openmp.cc:7171
+#: fortran/openmp.cc:7111 fortran/openmp.cc:7165
 #, fuzzy, gcc-internal-format
 msgid "Cray pointee %qs in %s clause at %L"
 msgstr "Virheellinen proseduuriargumentti kohdassa %L"
 
-#: fortran/openmp.cc:7125
+#: fortran/openmp.cc:7119
 #, fuzzy, gcc-internal-format
 msgid "Non-dummy object %qs in %s clause at %L"
 msgstr "Objekti ”%s” ei ole muuttuja kohdassa %L"
 
-#: fortran/openmp.cc:7162
+#: fortran/openmp.cc:7156
 #, fuzzy, gcc-internal-format
 msgid "%<inscan%> and non-%<inscan%> %<reduction%> clauses on the same construct at %L"
 msgstr "säiekohtaista muistia ei tueta tälle kohteelle"
 
-#: fortran/openmp.cc:7174
+#: fortran/openmp.cc:7168
 #, fuzzy, gcc-internal-format
-msgid "ASSOCIATE name %qs in %s clause at %L"
+msgid "Associate name %qs in %s clause at %L"
 msgstr "Objekti ”%s” ei ole muuttuja kohdassa %L"
 
-#: fortran/openmp.cc:7179
+#: fortran/openmp.cc:7175
 #, fuzzy, gcc-internal-format
 msgid "Procedure pointer %qs in %s clause at %L"
 msgstr "Rajapintatäsmäämättömyys proseduuriosoitinsijoituksessa kohdassa %L: %s"
 
-#: fortran/openmp.cc:7185
+#: fortran/openmp.cc:7181
 #, fuzzy, gcc-internal-format
 msgid "Cray pointer %qs in %s clause at %L"
 msgstr "Ei voi muuntaa tyyppiä %s tyyppiin %s kohdassa %L"
 
-#: fortran/openmp.cc:7197
+#: fortran/openmp.cc:7193
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs in %s clause is used in NAMELIST statement at %L"
 msgstr "Muuttujatyyppi on UNKNOWN sijoituksessa kohdassa %L"
 
 #. case OMP_LIST_REDUCTION:
-#: fortran/openmp.cc:7207
+#: fortran/openmp.cc:7203
 #, fuzzy, gcc-internal-format
 msgid "INTENT(IN) POINTER %qs in %s clause at %L"
 msgstr "Objekti ”%s” ei ole muuttuja kohdassa %L"
 
-#: fortran/openmp.cc:7218
+#: fortran/openmp.cc:7214
 #, fuzzy, gcc-internal-format
 msgid "DETACH event handle %qs in %s clause at %L"
 msgstr "Objekti ”%s” ei ole muuttuja kohdassa %L"
 
-#: fortran/openmp.cc:7242
+#: fortran/openmp.cc:7238
 #, gcc-internal-format, gfc-internal-format
 msgid "Only DEFAULT permitted as reduction-modifier in REDUCTION clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:7335
+#: fortran/openmp.cc:7331
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP DECLARE REDUCTION %s not found for type %s at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:7361
+#: fortran/openmp.cc:7357
 #, gcc-internal-format, gfc-internal-format
 msgid "LINEAR clause modifier used on DO or SIMD construct at %L"
 msgstr ""
 
-#: fortran/openmp.cc:7366
+#: fortran/openmp.cc:7362
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "LINEAR clause specified together with ORDERED clause with argument at %L"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: fortran/openmp.cc:7371
+#: fortran/openmp.cc:7367
 #, fuzzy, gcc-internal-format
 msgid "LINEAR variable %qs must be INTEGER at %L"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/openmp.cc:7376
+#: fortran/openmp.cc:7372
 #, fuzzy, gcc-internal-format
 msgid "LINEAR dummy argument %qs with VALUE attribute with %s modifier at %L"
 msgstr "Varsinaisen argumentin kohteelle ”%s” on oltava osoitin kohdassa %L"
 
-#: fortran/openmp.cc:7387
+#: fortran/openmp.cc:7383
 #, fuzzy, gcc-internal-format
 msgid "%qs in LINEAR clause at %L requires a scalar integer linear-step expression"
 msgstr "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: fortran/openmp.cc:7404
+#: fortran/openmp.cc:7400
 #, fuzzy, 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 "etumerkillisen ja etumerkittömän kokonaislukulausekkeen vertailu"
 
-#: fortran/openmp.cc:7438
+#: fortran/openmp.cc:7434
 #, fuzzy, gcc-internal-format
 msgid "%s clause variable %qs at %L is neither a POINTER nor an array"
 msgstr "indeksoitu arvo ei ole taulukko eikä osoitin"
 
-#: fortran/openmp.cc:7498
+#: fortran/openmp.cc:7494
 #, gcc-internal-format, gfc-internal-format
 msgid "NUM_TEAMS lower bound at %L larger than upper bound at %L"
 msgstr ""
 
-#: fortran/openmp.cc:7511
+#: fortran/openmp.cc:7507
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Value of HINT clause at %L shall be a valid constant hint expression"
 msgstr "luetellun tyypin jäsenen %qE arvo ei ole kokonaislukuvakio"
 
-#: fortran/openmp.cc:7521
+#: fortran/openmp.cc:7517
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "DIST_SCHEDULE clause's chunk_size at %L requires a scalar INTEGER expression"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/openmp.cc:7551
+#: fortran/openmp.cc:7547
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Incompatible use of TILE and COLLAPSE at %L"
 msgstr "Yhteensopimattomat tasot %d ja %d sijoituksessa kohdassa %L"
 
-#: fortran/openmp.cc:7553
+#: fortran/openmp.cc:7549
 #, gcc-internal-format, gfc-internal-format
 msgid "SOURCE dependence type only allowed on ORDERED directive at %L"
 msgstr ""
 
-#: fortran/openmp.cc:7578
+#: fortran/openmp.cc:7574
 #, fuzzy, 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 "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: fortran/openmp.cc:7581
+#: fortran/openmp.cc:7577
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s must contain at least one MAP clause at %L"
 msgstr "%Hdatamäärittelyllä ei ole tyyppiä eikä tallennusluokkaa"
 
-#: fortran/openmp.cc:7585
+#: fortran/openmp.cc:7587
+#, gcc-internal-format
+msgid "%qs at %L should be a scalar of type integer(kind=omp_event_handle_kind)"
+msgstr ""
+
+#: fortran/openmp.cc:7592
+#, fuzzy, gcc-internal-format, gfc-internal-format
+msgid "The event handle at %L must not be an array element"
+msgstr "%<__builtin_args_info%>-funktion argumentin pitää olla vakio"
+
+#: fortran/openmp.cc:7596
+#, fuzzy, gcc-internal-format, gfc-internal-format
+msgid "The event handle at %L must not be part of a derived type or class"
+msgstr "%<__builtin_args_info%>-funktion argumentin pitää olla vakio"
+
+#: fortran/openmp.cc:7600
 #, fuzzy, gcc-internal-format
 msgid "%<DETACH%> clause at %L must not be used together with %<MERGEABLE%> clause"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: fortran/openmp.cc:7736
+#: fortran/openmp.cc:7752
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected IF at %L in atomic compare capture"
 msgstr ""
 
-#: fortran/openmp.cc:7744
+#: fortran/openmp.cc:7760
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected ELSE at %L in atomic compare capture"
 msgstr ""
 
-#: fortran/openmp.cc:7856
+#: fortran/openmp.cc:7872
 #, gcc-internal-format
 msgid "Expected %<==%>, %<.EQ.%> or %<.EQV.%> atomic comparison expression at %L"
 msgstr ""
 
-#: fortran/openmp.cc:7862
+#: fortran/openmp.cc:7878
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected scalar intrinsic variable at %L in atomic comparison"
 msgstr ""
 
-#: fortran/openmp.cc:7870
+#: fortran/openmp.cc:7886
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected scalar initialization expression at %C"
 msgid "Expected scalar intrinsic expression at %L in atomic comparison"
 msgstr "Odotettiin skalaarialustuslauseketta kohdassa %C"
 
-#: fortran/openmp.cc:7878
+#: fortran/openmp.cc:7894
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC statement must set a scalar variable of intrinsic type at %L"
 msgstr "”!$OMP ATOMIC”-sijoituksen on oltava operaattori tai kääntäjänsisäinen oikealla puolella kohdassa %L"
 
-#: fortran/openmp.cc:7887
+#: fortran/openmp.cc:7903
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC statement must assign an expression of intrinsic type at %L"
 msgstr "”!$OMP ATOMIC”-sijoituksen on oltava operaattori tai kääntäjänsisäinen oikealla puolella kohdassa %L"
 
-#: fortran/openmp.cc:7894
+#: fortran/openmp.cc:7910
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC with ALLOCATABLE variable at %L"
 msgstr "kääntäjänsisäisten ”!$OMP ATOMIC”-argumenttien on oltava skaalaareja kohdassa %L"
 
-#: fortran/openmp.cc:7911
+#: fortran/openmp.cc:7927
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC READ statement must read from a scalar variable of intrinsic type at %L"
 msgstr "”!$OMP ATOMIC”-sijoituksen on oltava operaattori tai kääntäjänsisäinen oikealla puolella kohdassa %L"
 
-#: fortran/openmp.cc:7916
+#: fortran/openmp.cc:7932
 #, fuzzy, 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 "kääntäjänsisäiset ”!$OMP ATOMIC”-argumentit paitsi yksi eivät saa viitata kohteeseen ”%s” kohdassa %L"
 
-#: fortran/openmp.cc:7928
+#: fortran/openmp.cc:7944
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC capture-statement must set a scalar variable of intrinsic type at %L"
 msgstr "”!$OMP ATOMIC”-sijoituksen on oltava operaattori tai kääntäjänsisäinen oikealla puolella kohdassa %L"
 
-#: fortran/openmp.cc:7936
+#: fortran/openmp.cc:7952
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC capture-statement requires a scalar variable of intrinsic type at %L"
 msgstr "”!$OMP ATOMIC”-sijoituksen on oltava operaattori tai kääntäjänsisäinen oikealla puolella kohdassa %L"
 
-#: fortran/openmp.cc:7946
+#: fortran/openmp.cc:7962
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC CAPTURE capture statement reads from different variable than update statement writes into at %L"
 msgstr "”!$OMP ATOMIC”-sijoituksen on oltava operaattori tai kääntäjänsisäinen oikealla puolella kohdassa %L"
 
-#: fortran/openmp.cc:7962
+#: fortran/openmp.cc:7978
 #, fuzzy, gcc-internal-format
 msgid "For !$OMP ATOMIC COMPARE, the first operand in comparison at %L must be the variable %qs that the update statement writes into at %L"
 msgstr "”!$OMP ATOMIC”-sijoituksen on oltava operaattori tai kääntäjänsisäinen oikealla puolella kohdassa %L"
 
-#: fortran/openmp.cc:7970
+#: fortran/openmp.cc:7986
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "expr in !$OMP ATOMIC COMPARE assignment var = expr must be scalar and cannot reference var at %L"
 msgstr "kääntäjänsisäiset ”!$OMP ATOMIC”-argumentit paitsi yksi eivät saa viitata kohteeseen ”%s” kohdassa %L"
 
-#: fortran/openmp.cc:7988
+#: fortran/openmp.cc:8004
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC UPDATE at %L with FAIL clause requiries either the COMPARE clause or using the intrinsic MIN/MAX procedure"
 msgstr ""
 
-#: fortran/openmp.cc:8015
+#: fortran/openmp.cc:8031
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC assignment operator must be binary +, *, -, /, .AND., .OR., .EQV. or .NEQV. at %L"
 msgstr "kääntäjänsisäisen ”!$OMP ATOMIC”-sijoituksen on oltava MIN, MAX, IAND, IOR tai IEOR kohdassa %L"
 
-#: fortran/openmp.cc:8063
+#: fortran/openmp.cc:8079
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC assignment must be var = var op expr or var = expr op var at %L"
 msgstr "”!$OMP ATOMIC”-sijoituksen on oltava operaattori tai kääntäjänsisäinen oikealla puolella kohdassa %L"
 
-#: fortran/openmp.cc:8077
+#: fortran/openmp.cc:8093
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC var = var op expr not mathematically equivalent to var = var op (expr) at %L"
 msgstr "”!$OMP ATOMIC”-sijoituksen on oltava operaattori tai kääntäjänsisäinen oikealla puolella kohdassa %L"
 
-#: fortran/openmp.cc:8110
+#: fortran/openmp.cc:8126
 #, fuzzy, 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 "kääntäjänsisäiset ”!$OMP ATOMIC”-argumentit paitsi yksi eivät saa viitata kohteeseen ”%s” kohdassa %L"
 
-#: fortran/openmp.cc:8134
+#: fortran/openmp.cc:8150
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC assignment intrinsic IAND, IOR or IEOR must have two arguments at %L"
 msgstr "kääntäjänsisäisellä ”!$OMP ATOMIC”-sijoituksella IAND, IOR tai IEOR täytyy olla kaksi argumenttia kohdassa %L"
 
-#: fortran/openmp.cc:8141
+#: fortran/openmp.cc:8157
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC assignment intrinsic must be MIN, MAX, IAND, IOR or IEOR at %L"
 msgstr "kääntäjänsisäisen ”!$OMP ATOMIC”-sijoituksen on oltava MIN, MAX, IAND, IOR tai IEOR kohdassa %L"
 
-#: fortran/openmp.cc:8164
+#: fortran/openmp.cc:8180
 #, fuzzy, gcc-internal-format
 msgid "!$OMP ATOMIC intrinsic arguments except one must not reference %qs at %L"
 msgstr "kääntäjänsisäiset ”!$OMP ATOMIC”-argumentit paitsi yksi eivät saa viitata kohteeseen ”%s” kohdassa %L"
 
-#: fortran/openmp.cc:8171
+#: fortran/openmp.cc:8187
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC intrinsic arguments must be scalar at %L"
 msgstr "kääntäjänsisäisten ”!$OMP ATOMIC”-argumenttien on oltava skaalaareja kohdassa %L"
 
-#: fortran/openmp.cc:8179
+#: fortran/openmp.cc:8195
 #, fuzzy, gcc-internal-format
 msgid "First or last !$OMP ATOMIC intrinsic argument must be %qs at %L"
 msgstr "Ensimmäisen tai viimeisen kääntäjänsisäisen ”!$OMP ATOMIC”-argumentin on oltava ”%s” kohdassa %L"
 
-#: fortran/openmp.cc:8197
+#: fortran/openmp.cc:8213
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC assignment must have an operator or intrinsic on right hand side at %L"
 msgstr "”!$OMP ATOMIC”-sijoituksen on oltava operaattori tai kääntäjänsisäinen oikealla puolella kohdassa %L"
 
-#: fortran/openmp.cc:8202
+#: fortran/openmp.cc:8218
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "unexpected !$OMP ATOMIC expression at %L"
 msgstr "Odottamatonta roskaa ELSE IF -lauseen jälkeen kohdassa %C"
 
-#: fortran/openmp.cc:8248
+#: fortran/openmp.cc:8264
 #, fuzzy, gcc-internal-format
 msgid "ORDERED clause specified together with %<inscan%> REDUCTION clause at %L"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: fortran/openmp.cc:8251
+#: fortran/openmp.cc:8267
 #, fuzzy, gcc-internal-format
 msgid "SCHEDULE clause specified together with %<inscan%> REDUCTION clause at %L"
 msgstr "%<void%> vain parametrina ei ole oikeutettu"
 
-#: fortran/openmp.cc:8259
+#: fortran/openmp.cc:8275
 #, gcc-internal-format, gfc-internal-format
 msgid "With INSCAN at %L, expected loop body with !$OMP SCAN between two structured-block-sequences"
 msgstr ""
 
-#: fortran/openmp.cc:8555
+#: fortran/openmp.cc:8571
 #, gcc-internal-format, gfc-internal-format
 msgid "%s cannot be a DO WHILE or DO without loop control at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8561
+#: fortran/openmp.cc:8577
 #, gcc-internal-format, gfc-internal-format
 msgid "%s cannot be a DO CONCURRENT loop at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8567
+#: fortran/openmp.cc:8583
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s iteration variable must be of type integer at %L"
 msgstr "”!$OMP DO”-iteraatiomuuttuja ei saa olla THREADPRIVATE kohdassa %L"
 
-#: fortran/openmp.cc:8571
+#: fortran/openmp.cc:8587
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s iteration variable must not be THREADPRIVATE at %L"
 msgstr "”!$OMP DO”-iteraatiomuuttuja ei saa olla THREADPRIVATE kohdassa %L"
 
-#: fortran/openmp.cc:8584
+#: fortran/openmp.cc:8600
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s iteration variable present on clause other than PRIVATE, LASTPRIVATE or ALLOCATE at %L"
 msgstr "”!$OMP DO”-iteraatiomuuttuja on läsnä muussa lauseessa kuin PRIVATE tai LASTPRIVATE kohdassa %L"
 
-#: fortran/openmp.cc:8588
+#: fortran/openmp.cc:8604
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s iteration variable present on clause other than PRIVATE, LASTPRIVATE, ALLOCATE or LINEAR at %L"
 msgstr "”!$OMP DO”-iteraatiomuuttuja on läsnä muussa lauseessa kuin PRIVATE tai LASTPRIVATE kohdassa %L"
 
-#: fortran/openmp.cc:8606
+#: fortran/openmp.cc:8622
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s collapsed loops don't form rectangular iteration space at %L"
 msgstr "liian vähän argumentteja"
 
-#: fortran/openmp.cc:8616
+#: fortran/openmp.cc:8632
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "collapsed %s loops not perfectly nested at %L"
 msgstr "liian vähän argumentteja"
 
-#: fortran/openmp.cc:8625 fortran/openmp.cc:8633
+#: fortran/openmp.cc:8641 fortran/openmp.cc:8649
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "not enough DO loops for collapsed %s at %L"
 msgstr "mahdollisia ikisilmukoita ei voi optimoida"
 
-#: fortran/openmp.cc:8838 fortran/openmp.cc:8851
+#: fortran/openmp.cc:8854 fortran/openmp.cc:8867
 #, gcc-internal-format, gfc-internal-format
 msgid "The %s directive cannot be specified within a %s region at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8870
+#: fortran/openmp.cc:8886
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP cannot be a DO WHILE or DO without loop control at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8876
+#: fortran/openmp.cc:8892
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP cannot be a DO CONCURRENT loop at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8882
+#: fortran/openmp.cc:8898
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP iteration variable must be of type integer at %L"
 msgstr "”!$OMP DO”-iteraatiomuuttuja ei saa olla THREADPRIVATE kohdassa %L"
 
-#: fortran/openmp.cc:8898
+#: fortran/openmp.cc:8914
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP %s loops don't form rectangular iteration space at %L"
 msgstr "liian vähän argumentteja"
 
-#: fortran/openmp.cc:8910
+#: fortran/openmp.cc:8926
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s !$ACC LOOP loops not perfectly nested at %L"
 msgstr "liian vähän argumentteja"
 
-#: fortran/openmp.cc:8920 fortran/openmp.cc:8929
+#: fortran/openmp.cc:8936 fortran/openmp.cc:8945
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "not enough DO loops for %s !$ACC LOOP at %L"
 msgstr "mahdollisia ikisilmukoita ei voi optimoida"
 
-#: fortran/openmp.cc:8945
+#: fortran/openmp.cc:8961
 #, gcc-internal-format, gfc-internal-format
 msgid "Tiled loop cannot be parallelized across gangs, workers and vectors at the same time at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8966
+#: fortran/openmp.cc:8982
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "TILE requires constant expression at %L"
 msgstr "ei-vakio alustuslauseke kohdassa %L"
 
-#: fortran/openmp.cc:9066
+#: fortran/openmp.cc:9082
 #, fuzzy, gcc-internal-format
 msgid "Array sections: %qs not allowed in !$ACC DECLARE at %L"
 msgstr "funktiolle %2$qE annettu argumentin %1$d tyyppi on yhteensopimaton"
 
-#: fortran/openmp.cc:9113
+#: fortran/openmp.cc:9129
 #, fuzzy, gcc-internal-format
 msgid "NAME %qs does not refer to a subroutine or function in !$ACC ROUTINE ( NAME ) at %L"
 msgstr "Syntaksivirhe !GCC$ ATTRIBUTES-lauseessa kohdassa %C"
 
-#: fortran/openmp.cc:9119
+#: fortran/openmp.cc:9135
 #, fuzzy, gcc-internal-format
 msgid "NAME %qs invalid in !$ACC ROUTINE ( NAME ) at %L"
 msgstr "Syntaksivirhe !GCC$ ATTRIBUTES-lauseessa kohdassa %C"
 
-#: fortran/openmp.cc:9242
+#: fortran/openmp.cc:9258
 #, gcc-internal-format, gfc-internal-format
 msgid "OMP TARGET UPDATE at %L requires at least one TO or FROM clause"
 msgstr ""
 
-#: fortran/openmp.cc:9256
+#: fortran/openmp.cc:9272
 #, gcc-internal-format, gfc-internal-format
 msgid "OMP CRITICAL at %L with HINT clause requires a NAME, except when omp_sync_hint_none is used"
 msgstr ""
 
-#: fortran/openmp.cc:9262
+#: fortran/openmp.cc:9278
 #, gcc-internal-format
 msgid "Unexpected !$OMP SCAN at %L outside loop construct with %<inscan%> REDUCTION clause"
 msgstr ""
 
-#: fortran/openmp.cc:9283
+#: fortran/openmp.cc:9299
 #, fuzzy, gcc-internal-format
 msgid "!$OMP DECLARE SIMD should refer to containing procedure %qs at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:9307
+#: fortran/openmp.cc:9323
 #, fuzzy, 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 "tyhjä esittely"
 
-#: fortran/openmp.cc:9315
+#: fortran/openmp.cc:9331
 #, fuzzy, 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 "tyhjä esittely"
 
-#: fortran/openmp.cc:9344
+#: fortran/openmp.cc:9360
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Invalid operator for !$OMP DECLARE REDUCTION %s at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:9366
+#: fortran/openmp.cc:9382
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER length in !$OMP DECLARE REDUCTION %s not constant at %L"
 msgstr "Odotettiin PARAMETER-symbolia kompleksivakiossa kohdassa %C"
 
-#: fortran/openmp.cc:9382
+#: fortran/openmp.cc:9398
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Subroutine call with alternate returns in combiner of !$OMP DECLARE REDUCTION at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:9397
+#: fortran/openmp.cc:9413
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Subroutine call with alternate returns in INITIALIZER clause of !$OMP DECLARE REDUCTION at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/openmp.cc:9407
+#: fortran/openmp.cc:9423
 #, fuzzy, 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 "tyhjä esittely"
 
-#: fortran/openmp.cc:9415
+#: fortran/openmp.cc:9431
 #, gcc-internal-format, gfc-internal-format
 msgid "Missing INITIALIZER clause for !$OMP DECLARE REDUCTION of derived type without default initializer at %L"
 msgstr ""
@@ -72167,7 +72399,7 @@ msgstr ""
 msgid "Statement label in END CRITICAL at %C does not match CRITICAL label"
 msgstr "Nimiö ”%s” kohdassa %C ei täsmää IF nimiön ”%s” kanssa"
 
-#: fortran/parse.cc:4860 fortran/parse.cc:5584
+#: fortran/parse.cc:4860 fortran/parse.cc:5602
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "BLOCK construct at %C"
 msgstr "Lohkonimiö ei ole sopiva IF-lauseelle kohdassa %C"
@@ -72177,122 +72409,122 @@ msgstr "Lohkonimiö ei ole sopiva IF-lauseelle kohdassa %C"
 msgid "ASSOCIATE construct at %C"
 msgstr "Muodostin %qs"
 
-#: fortran/parse.cc:5097
+#: fortran/parse.cc:5115
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Statement label in ENDDO at %C doesn't match DO label"
 msgstr "Nimiö ”%s” kohdassa %C ei täsmää IF nimiön ”%s” kanssa"
 
-#: fortran/parse.cc:5113
+#: fortran/parse.cc:5131
 #, gcc-internal-format, gfc-internal-format
 msgid "Named block DO at %L requires matching ENDDO name"
 msgstr ""
 
-#: fortran/parse.cc:5365 fortran/parse.cc:5427
+#: fortran/parse.cc:5383 fortran/parse.cc:5445
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "OpenACC directive inside of CRITICAL block at %C"
 msgstr "ISO C kieltää sisäkkäiset funktiot"
 
-#: fortran/parse.cc:5402
+#: fortran/parse.cc:5420
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expecting %s at %C"
 msgstr "%s (%s, oletus %c): "
 
-#: fortran/parse.cc:5446
+#: fortran/parse.cc:5464
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected DO loop at %C"
 msgstr "Odotettiin merkkiä ”,” kohdassa %C"
 
-#: fortran/parse.cc:5466
+#: fortran/parse.cc:5484
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Redundant !$ACC END LOOP at %C"
 msgstr "<tunnistevirhe>"
 
-#: fortran/parse.cc:5712
+#: fortran/parse.cc:5730
 #, gcc-internal-format, gfc-internal-format
 msgid "Name after !$omp critical and !$omp end critical does not match at %C"
 msgstr ""
 
-#: fortran/parse.cc:5772
+#: fortran/parse.cc:5790
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C cannot terminate a non-block DO loop"
 msgstr "PRINT-lause kohdassa %C ei ole sallittu PURE-proseduurin sisällä"
 
-#: fortran/parse.cc:5786
+#: fortran/parse.cc:5804
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %C after the first executable statement"
 msgstr "Syntaksivirhe SAVE-lauseessa kohdassa %C"
 
-#: fortran/parse.cc:5936
+#: fortran/parse.cc:5954
 #, gcc-internal-format
 msgid "%<GCC unroll%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:5939
+#: fortran/parse.cc:5957
 #, gcc-internal-format
 msgid "%<GCC ivdep%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:5942
+#: fortran/parse.cc:5960
 #, gcc-internal-format
 msgid "%<GCC vector%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:5945
+#: fortran/parse.cc:5963
 #, gcc-internal-format
 msgid "%<GCC novector%> directive not at the start of a loop at %C"
 msgstr ""
 
-#: fortran/parse.cc:6061
+#: fortran/parse.cc:6079
 #, fuzzy, gcc-internal-format
 msgid "Contained procedure %qs at %C is already ambiguous"
 msgstr "Proseduuri ”%s” kohdassa %C on jo määritelty kohdassa %L"
 
-#: fortran/parse.cc:6118
+#: fortran/parse.cc:6136
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in CONTAINS section at %C"
 msgstr "Odottamaton %s-lause CONTAINS-lohkossa kohdassa %C"
 
-#: fortran/parse.cc:6143
+#: fortran/parse.cc:6161
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "CONTAINS statement without FUNCTION or SUBROUTINE statement at %L"
 msgstr "%s-lausetta odotettiin kohdassa %L"
 
-#: fortran/parse.cc:6257
+#: fortran/parse.cc:6275
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "CONTAINS statement at %C is already in a contained program unit"
 msgstr "DATA-lause kohdassa %C ei ole sallittu PURE-proseduurissa"
 
-#: fortran/parse.cc:6309
+#: fortran/parse.cc:6327
 #, fuzzy, gcc-internal-format
 msgid "Global binding name %qs at %L is already being used as a %s at %L"
 msgstr "Nimi ”%s” kohdassa %C on jo määritelty geneerisenä rajapintana kohdassa %L"
 
-#: fortran/parse.cc:6313
+#: fortran/parse.cc:6331
 #, fuzzy, gcc-internal-format
 msgid "Global name %qs at %L is already being used as a %s at %L"
 msgstr "Nimi ”%s” kohdassa %C on jo määritelty geneerisenä rajapintana kohdassa %L"
 
-#: fortran/parse.cc:6319
+#: fortran/parse.cc:6337
 #, fuzzy, gcc-internal-format
 msgid "Global binding name %qs at %L is already being used at %L"
 msgstr "Nimi ”%s” kohdassa %C on jo määritelty geneerisenä rajapintana kohdassa %L"
 
-#: fortran/parse.cc:6322
+#: fortran/parse.cc:6340
 #, fuzzy, gcc-internal-format
 msgid "Global name %qs at %L is already being used at %L"
 msgstr "Nimi ”%s” kohdassa %C on jo määritelty geneerisenä rajapintana kohdassa %L"
 
-#: fortran/parse.cc:6344
+#: fortran/parse.cc:6362
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Blank BLOCK DATA at %C conflicts with prior BLOCK DATA at %L"
 msgstr "SAVE-attribuuttia kohdassa %L ei voida määritellä PURE-proseduurissa"
 
-#: fortran/parse.cc:6370
+#: fortran/parse.cc:6388
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in BLOCK DATA at %C"
 msgstr "Odottamaton %s-lause BLOCK DATA -lohkossa kohdassa %C"
 
-#: fortran/parse.cc:6475
+#: fortran/parse.cc:6493
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in MODULE at %C"
 msgstr "Odottamaton %s-lause MODULE-lohkossa kohdassa %C"
@@ -72300,7 +72532,7 @@ msgstr "Odottamaton %s-lause MODULE-lohkossa kohdassa %C"
 #. If we see a duplicate main program, shut down.  If the second
 #. instance is an implied main program, i.e. data decls or executable
 #. statements, we're in for lots of errors.
-#: fortran/parse.cc:6954
+#: fortran/parse.cc:6972
 #, gcc-internal-format, gfc-internal-format
 msgid "Two main PROGRAMs at %L and %C"
 msgstr ""
@@ -73027,568 +73259,574 @@ msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 msgid "The KIND parameter %qs in the PDT constructor at %C has no value"
 msgstr ""
 
-#: fortran/resolve.cc:1329
+#: fortran/resolve.cc:1333
 #, fuzzy, 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 "Taulukkomuodostimen CHARACTER-alkioiden kohdassa %L on oltava saman pituisia (%d/%d)"
 
-#: fortran/resolve.cc:1350
+#: fortran/resolve.cc:1354
 #, fuzzy, gcc-internal-format
 msgid "The element in the structure constructor at %L, for pointer component %qs, is %s but should be %s"
 msgstr "Taulukkomuodostimen CHARACTER-alkioiden kohdassa %L on oltava saman pituisia (%d/%d)"
 
-#: fortran/resolve.cc:1416
+#: fortran/resolve.cc:1386
+#, fuzzy, gcc-internal-format
+#| msgid "Unequal character lengths (%ld/%ld) in %s at %L"
+msgid "Unequal character lengths (%wd/%wd) for pointer component %qs in constructor at %L"
+msgstr "Erisuuret merkkipituudet (%ld/%ld) merkkijonossa %s kohdassa %L"
+
+#: fortran/resolve.cc:1431
 #, fuzzy, 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 "Taulukkomuodostimen CHARACTER-alkioiden kohdassa %L on oltava saman pituisia (%d/%d)"
 
-#: fortran/resolve.cc:1450
+#: fortran/resolve.cc:1465
 #, fuzzy, gcc-internal-format
 msgid "Interface mismatch for procedure-pointer component %qs in structure constructor at %L: %s"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:1469
+#: fortran/resolve.cc:1484
 #, fuzzy, gcc-internal-format
 msgid "Bad array spec of component %qs referenced in structure constructor at %L"
 msgstr "liikaa argumentteja funktiolle %s %q+#D"
 
-#: fortran/resolve.cc:1480
+#: fortran/resolve.cc:1497
 #, fuzzy, gcc-internal-format
 msgid "The shape of component %qs in the structure constructor at %L differs from the shape of the declared component for dimension %d (%ld/%ld)"
 msgstr "Taulukkomuodostimen CHARACTER-alkioiden kohdassa %L on oltava saman pituisia (%d/%d)"
 
-#: fortran/resolve.cc:1501
+#: fortran/resolve.cc:1518
 #, fuzzy, gcc-internal-format
 msgid "The element in the structure constructor at %L, for pointer component %qs should be a POINTER or a TARGET"
 msgstr "Taulukkomuodostimen CHARACTER-alkioiden kohdassa %L on oltava saman pituisia (%d/%d)"
 
-#: fortran/resolve.cc:1530
+#: fortran/resolve.cc:1547
 #, fuzzy, gcc-internal-format
 msgid "Invalid expression in the structure constructor for pointer component %qs at %L in PURE procedure"
 msgstr "Taulukkomuodostimen CHARACTER-alkioiden kohdassa %L on oltava saman pituisia (%d/%d)"
 
-#: fortran/resolve.cc:1654
+#: fortran/resolve.cc:1671
 #, gcc-internal-format
 msgid "The upper bound in the last dimension must appear in the reference to the assumed size array %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:1716
+#: fortran/resolve.cc:1733
 #, fuzzy, gcc-internal-format
 msgid "%qs at %L is ambiguous"
 msgstr "muunnos tyypistä %qT tyyppiin %qT on moniselitteinen"
 
-#: fortran/resolve.cc:1720
+#: fortran/resolve.cc:1737
 #, fuzzy, gcc-internal-format
 msgid "GENERIC procedure %qs is not allowed as an actual argument at %L"
 msgstr "Virheellinen proseduuriargumentti kohdassa %L"
 
-#: fortran/resolve.cc:1841
+#: fortran/resolve.cc:1858
 #, fuzzy, gcc-internal-format
 msgid "Type specified for intrinsic function %qs at %L is ignored"
 msgstr "Funktion ”%s” paluuarvoa kohdassa %L ei ole asetettu"
 
-#: fortran/resolve.cc:1854
+#: fortran/resolve.cc:1871
 #, fuzzy, gcc-internal-format
 msgid "Intrinsic subroutine %qs at %L shall not have a type specifier"
 msgstr "Luontaisella ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:1865
+#: fortran/resolve.cc:1882
 #, gcc-internal-format
 msgid "%qs declared INTRINSIC at %L does not exist"
 msgstr ""
 
-#: fortran/resolve.cc:1878
+#: fortran/resolve.cc:1895
 #, gcc-internal-format
 msgid "The intrinsic %qs declared INTRINSIC at %L is not available in the current standard settings but %s. Use an appropriate %<-std=*%> option or enable %<-fall-intrinsics%> in order to use it."
 msgstr ""
 
-#: fortran/resolve.cc:1914
+#: fortran/resolve.cc:1931
 #, gcc-internal-format
 msgid "Non-RECURSIVE procedure %qs at %L is possibly calling itself recursively.  Declare it RECURSIVE or use %<-frecursive%>"
 msgstr ""
 
-#: fortran/resolve.cc:1972 fortran/resolve.cc:10347 fortran/resolve.cc:12076
+#: fortran/resolve.cc:1989 fortran/resolve.cc:10367 fortran/resolve.cc:12105
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Label %d referenced at %L is never defined"
 msgstr "Nimiö %d kohdassa %L on määritelty, mutta ei käytetty"
 
-#: fortran/resolve.cc:2004
+#: fortran/resolve.cc:2021
 #, fuzzy, gcc-internal-format
 msgid "Derived type %qs is used as an actual argument at %L"
 msgstr "Virheellinen proseduuriargumentti kohdassa %L"
 
-#: fortran/resolve.cc:2022
+#: fortran/resolve.cc:2039
 #, fuzzy, gcc-internal-format
 msgid "Statement function %qs at %L is not allowed as an actual argument"
 msgstr "tyyppi %qT ei ole tyypin %qT kantatyyppi"
 
-#: fortran/resolve.cc:2030
+#: fortran/resolve.cc:2047
 #, fuzzy, gcc-internal-format
 msgid "Intrinsic %qs at %L is not allowed as an actual argument"
 msgstr "Kääntäjänsisäisellä ”%s”-funktiolla kohdassa %L on oltava vähintään kaksi argumenttia"
 
-#: fortran/resolve.cc:2037
+#: fortran/resolve.cc:2054
 #, fuzzy, gcc-internal-format
 msgid "Internal procedure %qs is used as actual argument at %L"
 msgstr "Virheellinen proseduuriargumentti kohdassa %L"
 
-#: fortran/resolve.cc:2045
+#: fortran/resolve.cc:2062
 #, fuzzy, gcc-internal-format
 msgid "ELEMENTAL non-INTRINSIC procedure %qs is not allowed as an actual argument at %L"
 msgstr "Virheellinen proseduuriargumentti kohdassa %L"
 
-#: fortran/resolve.cc:2072
+#: fortran/resolve.cc:2089
 #, fuzzy, gcc-internal-format
 msgid "Unable to find a specific INTRINSIC procedure for the reference %qs at %L"
 msgstr "%J%qD:lle ei ole aiempaa esittelyä"
 
-#: fortran/resolve.cc:2094
+#: fortran/resolve.cc:2111
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs at %L is ambiguous"
 msgstr "Monimerkityksellinen symboli TYPE-määrittelyssä kohdassa %C"
 
-#: fortran/resolve.cc:2149
+#: fortran/resolve.cc:2166
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L is not of numeric type"
 msgstr "Virheellinen proseduuriargumentti kohdassa %L"
 
-#: fortran/resolve.cc:2156
+#: fortran/resolve.cc:2173
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L cannot be an array or an array section"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: fortran/resolve.cc:2170
+#: fortran/resolve.cc:2187
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L is not allowed in this context"
 msgstr "Avainsana-argumentti ”%s” kohdassa %L ei ole proseduurissa"
 
-#: fortran/resolve.cc:2182
+#: fortran/resolve.cc:2199
 #, gcc-internal-format, gfc-internal-format
 msgid "Passing internal procedure at %L by location not allowed"
 msgstr ""
 
-#: fortran/resolve.cc:2193
+#: fortran/resolve.cc:2210
 #, fuzzy, gcc-internal-format
 msgid "ELEMENTAL procedure pointer component %qs is not allowed as an actual argument at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:2202
+#: fortran/resolve.cc:2219
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Coindexed actual argument at %L with ultimate pointer component"
 msgstr "Varsinaisen argumentin kohteelle ”%s” on oltava osoitin kohdassa %L"
 
-#: fortran/resolve.cc:2349
+#: fortran/resolve.cc:2366
 #, gcc-internal-format
 msgid "%qs at %L is an array and OPTIONAL; If it is not present, then it cannot be the actual argument of an ELEMENTAL procedure unless there is a non-optional argument with the same rank (Fortran 2018, 15.5.2.12)"
 msgstr ""
 
-#: fortran/resolve.cc:2387
+#: fortran/resolve.cc:2405
 #, gcc-internal-format
 msgid "Actual argument at %L for INTENT(%s) dummy %qs of ELEMENTAL subroutine %qs is a scalar, but another actual argument is an array"
 msgstr ""
 
-#: fortran/resolve.cc:2661
+#: fortran/resolve.cc:2679
 #, fuzzy, gcc-internal-format
 msgid "Return type mismatch of function %qs at %L (%s/%s)"
 msgstr "Funktion ”%s” paluuarvoa kohdassa %L ei ole asetettu"
 
-#: fortran/resolve.cc:2688
+#: fortran/resolve.cc:2706
 #, fuzzy, gcc-internal-format
 msgid "Interface mismatch in global procedure %qs at %L: %s"
 msgstr "Rajapintatäsmäämättömyys proseduuriosoitinsijoituksessa kohdassa %L: %s"
 
-#: fortran/resolve.cc:2794
+#: fortran/resolve.cc:2812
 #, fuzzy, gcc-internal-format
 msgid "There is no specific function for the generic %qs at %L"
 msgstr "%J%qD:lle ei ole aiempaa esittelyä"
 
-#: fortran/resolve.cc:2814
+#: fortran/resolve.cc:2832
 #, fuzzy, gcc-internal-format
 msgid "Generic function %qs at %L is not consistent with a specific intrinsic interface"
 msgstr "Luontaisella ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:2852
+#: fortran/resolve.cc:2870
 #, fuzzy, gcc-internal-format
 msgid "Function %qs at %L is INTRINSIC but is not compatible with an intrinsic"
 msgstr "Luontaisella ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:2907
+#: fortran/resolve.cc:2925
 #, fuzzy, gcc-internal-format
 msgid "Unable to resolve the specific function %qs at %L"
 msgstr "%J%qD:lle ei ole aiempaa esittelyä"
 
-#: fortran/resolve.cc:2984
+#: fortran/resolve.cc:3002
 #, gcc-internal-format
 msgid "Missing explicit declaration with EXTERNAL attribute for symbol %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3016
+#: fortran/resolve.cc:3034
 #, fuzzy, gcc-internal-format
 msgid "Function %qs at %L has no IMPLICIT type; did you mean %qs?"
 msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
 
-#: fortran/resolve.cc:3020 fortran/resolve.cc:17283
+#: fortran/resolve.cc:3038 fortran/resolve.cc:17312
 #, fuzzy, gcc-internal-format
 msgid "Function %qs at %L has no IMPLICIT type"
 msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
 
-#: fortran/resolve.cc:3144
+#: fortran/resolve.cc:3162
 #, fuzzy, gcc-internal-format
 msgid "Reference to impure function %qs at %L inside a FORALL %s"
 msgstr "kirjoitussuojatun muuttujan %qs sijoitus"
 
-#: fortran/resolve.cc:3151
+#: fortran/resolve.cc:3169
 #, fuzzy, gcc-internal-format
 msgid "Reference to impure function %qs at %L inside a DO CONCURRENT %s"
 msgstr "kirjoitussuojatun muuttujan %qs sijoitus"
 
-#: fortran/resolve.cc:3158
+#: fortran/resolve.cc:3176
 #, fuzzy, gcc-internal-format
 msgid "Reference to impure function %qs at %L within a PURE procedure"
 msgstr "kirjoitussuojatun muuttujan %qs sijoitus"
 
-#: fortran/resolve.cc:3225
+#: fortran/resolve.cc:3243
 #, fuzzy, gcc-internal-format
 msgid "Unexpected junk after %qs at %L"
 msgstr "Odottamatonta roskaa ELSE-lauseen jälkeen kohdassa %C"
 
-#: fortran/resolve.cc:3236
+#: fortran/resolve.cc:3254
 #, fuzzy, gcc-internal-format
 msgid "%qs at %L is not a function"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: fortran/resolve.cc:3244 fortran/resolve.cc:3741
+#: fortran/resolve.cc:3262 fortran/resolve.cc:3759
 #, fuzzy, gcc-internal-format
 msgid "ABSTRACT INTERFACE %qs must not be referenced at %L"
 msgstr "ABSTRACT-tyyppiä ”%s” käytetty kohdassa %L"
 
-#: fortran/resolve.cc:3256
+#: fortran/resolve.cc:3274
 #, gcc-internal-format
 msgid "ABSTRACT INTERFACE %qs at %L must not have an assumed character length result (F2008: C418)"
 msgstr ""
 
 #. Internal procedures are taken care of in resolve_contained_fntype.
-#: fortran/resolve.cc:3299
+#: fortran/resolve.cc:3317
 #, gcc-internal-format
 msgid "Function %qs is declared CHARACTER(*) and cannot be used at %L since it is not a dummy argument"
 msgstr ""
 
-#: fortran/resolve.cc:3333
+#: fortran/resolve.cc:3351
 #, fuzzy, gcc-internal-format
 msgid "resolve_function(): bad function type"
 msgstr "funktion paluuarvon tyyppi ei voi olla funktio"
 
-#: fortran/resolve.cc:3347
+#: fortran/resolve.cc:3365
 #, gcc-internal-format, gfc-internal-format
 msgid "A BOZ literal constant at %L cannot appear as an actual argument in a function reference"
 msgstr ""
 
-#: fortran/resolve.cc:3363
+#: fortran/resolve.cc:3381
 #, gcc-internal-format
 msgid "User defined non-ELEMENTAL function %qs at %L not allowed in WORKSHARE construct"
 msgstr ""
 
-#: fortran/resolve.cc:3425
+#: fortran/resolve.cc:3443
 #, fuzzy, gcc-internal-format
 msgid "ENTRY %qs at %L cannot be called recursively, as function %qs is not RECURSIVE"
 msgstr "Funktiota ”%s” kohdassa %L ei voida kutsua rekursiivisesti, koska se ei ole RECURSIVE"
 
-#: fortran/resolve.cc:3429
+#: fortran/resolve.cc:3447
 #, fuzzy, gcc-internal-format
 msgid "Function %qs at %L cannot be called recursively, as it is not RECURSIVE"
 msgstr "Funktiota ”%s” kohdassa %L ei voida kutsua rekursiivisesti, koska se ei ole RECURSIVE"
 
-#: fortran/resolve.cc:3469
+#: fortran/resolve.cc:3487
 #, fuzzy, gcc-internal-format
 msgid "Using function %qs at %L is deprecated"
 msgstr "%qE on vanhentunut"
 
-#: fortran/resolve.cc:3485
+#: fortran/resolve.cc:3503
 #, fuzzy, gcc-internal-format
 msgid "Subroutine call to %qs in FORALL block at %L is not PURE"
 msgstr "Odottamaton vaihtoehtoinen paluumäärittely alirutiinikutsussa kohdassa %L"
 
-#: fortran/resolve.cc:3491
+#: fortran/resolve.cc:3509
 #, fuzzy, gcc-internal-format
 msgid "Subroutine call to %qs in DO CONCURRENT block at %L is not PURE"
 msgstr "Odottamaton vaihtoehtoinen paluumäärittely alirutiinikutsussa kohdassa %L"
 
-#: fortran/resolve.cc:3497
+#: fortran/resolve.cc:3515
 #, fuzzy, gcc-internal-format
 msgid "Subroutine call to %qs at %L is not PURE"
 msgstr "Odottamaton vaihtoehtoinen paluumäärittely alirutiinikutsussa kohdassa %L"
 
-#: fortran/resolve.cc:3565
+#: fortran/resolve.cc:3583
 #, fuzzy, gcc-internal-format
 msgid "There is no specific subroutine for the generic %qs at %L"
 msgstr "%J%qD:lle ei ole aiempaa esittelyä"
 
-#: fortran/resolve.cc:3574
+#: fortran/resolve.cc:3592
 #, fuzzy, gcc-internal-format
 msgid "Generic subroutine %qs at %L is not consistent with an intrinsic subroutine interface"
 msgstr "Luontaisella ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:3609
+#: fortran/resolve.cc:3627
 #, fuzzy, gcc-internal-format
 msgid "Subroutine %qs at %L is INTRINSIC but is not compatible with an intrinsic"
 msgstr "Luontaisella ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:3654
+#: fortran/resolve.cc:3672
 #, fuzzy, gcc-internal-format
 msgid "Unable to resolve the specific subroutine %qs at %L"
 msgstr "Odottamaton vaihtoehtoinen paluumäärittely alirutiinikutsussa kohdassa %L"
 
-#: fortran/resolve.cc:3712
+#: fortran/resolve.cc:3730
 #, gcc-internal-format
 msgid "%qs at %L has a type, which is not consistent with the CALL at %L"
 msgstr ""
 
-#: fortran/resolve.cc:3751
+#: fortran/resolve.cc:3769
 #, fuzzy, gcc-internal-format
 msgid "ENTRY %qs at %L cannot be called recursively, as subroutine %qs is not RECURSIVE"
 msgstr "Funktiota ”%s” kohdassa %L ei voida kutsua rekursiivisesti, koska se ei ole RECURSIVE"
 
-#: fortran/resolve.cc:3755
+#: fortran/resolve.cc:3773
 #, fuzzy, gcc-internal-format
 msgid "SUBROUTINE %qs at %L cannot be called recursively, as it is not RECURSIVE"
 msgstr "Funktiota ”%s” kohdassa %L ei voida kutsua rekursiivisesti, koska se ei ole RECURSIVE"
 
-#: fortran/resolve.cc:3800
+#: fortran/resolve.cc:3818
 #, fuzzy, gcc-internal-format
 msgid "resolve_subroutine(): bad function type"
 msgstr "liian paljon argumentteja funktiolle %qs"
 
-#: fortran/resolve.cc:3817
+#: fortran/resolve.cc:3835
 #, fuzzy, gcc-internal-format
 msgid "Using subroutine %qs at %L is deprecated"
 msgstr "%qE on vanhentunut"
 
-#: fortran/resolve.cc:3844
+#: fortran/resolve.cc:3862
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Shapes for operands at %L and %L are not conformable"
 msgstr "attribuutit fastcall ja cdecl eivät ole yhteensopivia"
 
-#: fortran/resolve.cc:3896
+#: fortran/resolve.cc:3914
 #, fuzzy, gcc-internal-format
 msgid "logical_to_bitwise(): Bad intrinsic"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/resolve.cc:3999
+#: fortran/resolve.cc:4017
 #, fuzzy, gcc-internal-format
 msgid "Impure function %qs at %L might not be evaluated"
 msgstr "CHARACTER(*)-funktio ”%s” kohdassa %L ei voi olla osoitinarvoinen"
 
-#: fortran/resolve.cc:4003
+#: fortran/resolve.cc:4021
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Impure function at %L might not be evaluated"
 msgstr "%Javoimelle funktiolle %qD annettu attribuutti noinline"
 
-#: fortran/resolve.cc:4080
+#: fortran/resolve.cc:4098
 #, fuzzy, gcc-internal-format
 msgid "BOZ literal constant at %L cannot be an operand of unary operator %qs"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: fortran/resolve.cc:4104
+#: fortran/resolve.cc:4122
 #, gcc-internal-format
 msgid "Operands at %L and %L cannot appear as operands of binary operator %qs"
 msgstr ""
 
-#: fortran/resolve.cc:4278 fortran/resolve.cc:4293
+#: fortran/resolve.cc:4296 fortran/resolve.cc:4311
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "BOZ literal constant near %L cannot appear as an operand of a relational operator"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: fortran/resolve.cc:4332
+#: fortran/resolve.cc:4350
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Equality comparison for %s at %L"
 msgstr "%s: paniikki: Virheellinen ”l_value” %d\n"
 
-#: fortran/resolve.cc:4334
+#: fortran/resolve.cc:4352
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Inequality comparison for %s at %L"
 msgstr "%s: paniikki: Virheellinen ”l_value” %d\n"
 
-#: fortran/resolve.cc:4394
+#: fortran/resolve.cc:4412
 #, fuzzy, gcc-internal-format
 msgid "resolve_operator(): Bad intrinsic"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/resolve.cc:4564 fortran/resolve.cc:4587
+#: fortran/resolve.cc:4582 fortran/resolve.cc:4605
 #, fuzzy, gcc-internal-format
 msgid "compare_bound_int(): Bad expression"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/resolve.cc:4682
+#: fortran/resolve.cc:4700
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld < %ld) in dimension %d"
 msgstr "Taulukkoviite kohdassa %L on rajojen ulkopuolella (%ld < %ld) ulottuvuudessa %d"
 
-#: fortran/resolve.cc:4687
+#: fortran/resolve.cc:4705
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld < %ld) in codimension %d"
 msgstr "Taulukkoviite kohdassa %L on rajojen ulkopuolella (%ld < %ld) ulottuvuudessa %d"
 
-#: fortran/resolve.cc:4697
+#: fortran/resolve.cc:4715
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld > %ld) in dimension %d"
 msgstr "Taulukkoviite kohdassa %L on rajojen ulkopuolella (%ld < %ld) ulottuvuudessa %d"
 
-#: fortran/resolve.cc:4702
+#: fortran/resolve.cc:4720
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld > %ld) in codimension %d"
 msgstr "Taulukkoviite kohdassa %L on rajojen ulkopuolella (%ld < %ld) ulottuvuudessa %d"
 
-#: fortran/resolve.cc:4722
+#: fortran/resolve.cc:4740
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Illegal stride of zero at %L"
 msgstr "Iteraattoriaskel kohdassa %L ei voi olla nolla"
 
-#: fortran/resolve.cc:4739
+#: fortran/resolve.cc:4757
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Lower array reference at %L is out of bounds (%ld < %ld) in dimension %d"
 msgstr "Taulukkoviite kohdassa %L on rajojen ulkopuolella (%ld < %ld) ulottuvuudessa %d"
 
-#: fortran/resolve.cc:4747
+#: fortran/resolve.cc:4765
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Lower array reference at %L is out of bounds (%ld > %ld) in dimension %d"
 msgstr "Taulukkoviite kohdassa %L on rajojen ulkopuolella (%ld < %ld) ulottuvuudessa %d"
 
-#: fortran/resolve.cc:4763
+#: fortran/resolve.cc:4781
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Upper array reference at %L is out of bounds (%ld < %ld) in dimension %d"
 msgstr "Taulukkoviite kohdassa %L on rajojen ulkopuolella (%ld < %ld) ulottuvuudessa %d"
 
-#: fortran/resolve.cc:4772
+#: fortran/resolve.cc:4790
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Upper array reference at %L is out of bounds (%ld > %ld) in dimension %d"
 msgstr "Taulukkoviite kohdassa %L on rajojen ulkopuolella (%ld < %ld) ulottuvuudessa %d"
 
-#: fortran/resolve.cc:4788
+#: fortran/resolve.cc:4806
 #, fuzzy, gcc-internal-format
 msgid "check_dimension(): Bad array reference"
 msgstr "luodaan viitteiden taulukko"
 
-#: fortran/resolve.cc:4811
+#: fortran/resolve.cc:4829
 #, gcc-internal-format, gfc-internal-format
 msgid "Rightmost upper bound of assumed size array section not specified at %L"
 msgstr ""
 
-#: fortran/resolve.cc:4821
+#: fortran/resolve.cc:4839
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Rank mismatch in array reference at %L (%d/%d)"
 msgstr "Taulukkoviite kohdassa %L on rajojen ulkopuolella (%ld < %ld) ulottuvuudessa %d"
 
-#: fortran/resolve.cc:4829
+#: fortran/resolve.cc:4847
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Coindex rank mismatch in array reference at %L (%d/%d)"
 msgstr "ehtolausekkeessa on tyyppiristiriita"
 
-#: fortran/resolve.cc:4845
+#: fortran/resolve.cc:4863
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Coindex of codimension %d must be a scalar at %L"
 msgstr "Arvo sallitun välin ulkopuolella."
 
-#: fortran/resolve.cc:4873
+#: fortran/resolve.cc:4891
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L must be scalar"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:4879
+#: fortran/resolve.cc:4897
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L must be of INTEGER type, found %s"
 msgstr "Lauseke CASE-lauseessa kohdassa %L on oltava %s-tyyppinen"
 
-#: fortran/resolve.cc:4885
+#: fortran/resolve.cc:4903
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "REAL array index at %L"
 msgstr "taulukkoindeksi ei-taulukkoalustimessa"
 
-#: fortran/resolve.cc:4924
+#: fortran/resolve.cc:4942
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument dim at %L must be scalar"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:4931
+#: fortran/resolve.cc:4949
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument dim at %L must be of INTEGER type"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:4989
+#: fortran/resolve.cc:5007
 #, gcc-internal-format
 msgid "find_array_spec(): Missing spec"
 msgstr ""
 
-#: fortran/resolve.cc:5000
+#: fortran/resolve.cc:5018
 #, gcc-internal-format
 msgid "find_array_spec(): unused as(1)"
 msgstr ""
 
-#: fortran/resolve.cc:5012
+#: fortran/resolve.cc:5030
 #, gcc-internal-format
 msgid "find_array_spec(): unused as(2)"
 msgstr ""
 
-#: fortran/resolve.cc:5055
+#: fortran/resolve.cc:5073
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L is an array of rank %d"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:5153
+#: fortran/resolve.cc:5171
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L must be of type INTEGER"
 msgstr "Alimerkkijonon loppuindeksi kohdassa %L on liian suuri"
 
-#: fortran/resolve.cc:5160
+#: fortran/resolve.cc:5178
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L must be scalar"
 msgstr "Alimerkkijonon loppuindeksi kohdassa %L on liian suuri"
 
-#: fortran/resolve.cc:5182
+#: fortran/resolve.cc:5200
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L must be of type INTEGER"
 msgstr "Alimerkkijonon loppuindeksi kohdassa %L on liian suuri"
 
-#: fortran/resolve.cc:5189
+#: fortran/resolve.cc:5207
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L must be scalar"
 msgstr "Alimerkkijonon loppuindeksi kohdassa %L on liian suuri"
 
-#: fortran/resolve.cc:5209
+#: fortran/resolve.cc:5227
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L is too large"
 msgstr "Alimerkkijonon loppuindeksi kohdassa %L on liian suuri"
 
-#: fortran/resolve.cc:5399
+#: fortran/resolve.cc:5417
 #, fuzzy, gcc-internal-format
 msgid "resolve_ref(): Bad array reference"
 msgstr "luodaan viitteiden taulukko"
 
-#: fortran/resolve.cc:5413
+#: fortran/resolve.cc:5431
 #, fuzzy, 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 "Argumentilla ”%s”/”%s” PASS(%s) kohdassa %L ei voi olla POINTER-attribuuttia"
 
-#: fortran/resolve.cc:5423
+#: fortran/resolve.cc:5441
 #, fuzzy, 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 "Argumentilla ”%s”/”%s” PASS(%s) kohdassa %L ei voi olla POINTER-attribuuttia"
 
-#: fortran/resolve.cc:5469
+#: fortran/resolve.cc:5487
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Two or more part references with nonzero rank must not be specified at %L"
 msgstr "Argumentilla ”%s”/”%s” PASS(%s) kohdassa %L ei voi olla POINTER-attribuuttia"
 
-#: fortran/resolve.cc:5561
+#: fortran/resolve.cc:5579
 #, gcc-internal-format
 msgid "gfc_expression_rank(): Two array specs"
 msgstr ""
 
-#: fortran/resolve.cc:5643
+#: fortran/resolve.cc:5661
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Variable %s at %L with NO_ARG_CHECK attribute may only be used as actual argument"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:5653
+#: fortran/resolve.cc:5671
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L may only be used as actual argument"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
@@ -73597,12 +73835,12 @@ msgstr "muuttuvakokoista objektia ei voi alustaa"
 #. for all inquiry functions in resolve_function; the reason is
 #. that the function-name resolution happens too late in that
 #. function.
-#: fortran/resolve.cc:5663
+#: fortran/resolve.cc:5681
 #, fuzzy, 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 "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:5682
+#: fortran/resolve.cc:5700
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank variable %s at %L may only be used as actual argument"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
@@ -73611,293 +73849,293 @@ msgstr "muuttuvakokoista objektia ei voi alustaa"
 #. for all inquiry functions in resolve_function; the reason is
 #. that the function-name resolution happens too late in that
 #. function.
-#: fortran/resolve.cc:5692
+#: fortran/resolve.cc:5710
 #, fuzzy, 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 "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:5703
+#: fortran/resolve.cc:5721
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Variable %s at %L with NO_ARG_CHECK attribute shall not have a subobject reference"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:5712
+#: fortran/resolve.cc:5730
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L shall not have a subobject reference"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:5728
+#: fortran/resolve.cc:5746
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank variable %s at %L shall not have a subobject reference"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:5910
+#: fortran/resolve.cc:5928
 #, gcc-internal-format
 msgid "Variable %qs, used in a specification expression, is referenced at %L before the ENTRY statement in which it is a parameter"
 msgstr ""
 
-#: fortran/resolve.cc:5915
+#: fortran/resolve.cc:5933
 #, gcc-internal-format
 msgid "Variable %qs is used at %L before the ENTRY statement in which it is a parameter"
 msgstr ""
 
-#: fortran/resolve.cc:5985
+#: fortran/resolve.cc:6003
 #, gcc-internal-format, gfc-internal-format
 msgid "Polymorphic subobject of coindexed object at %L"
 msgstr ""
 
-#: fortran/resolve.cc:5998
+#: fortran/resolve.cc:6016
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Coindexed object with polymorphic allocatable subcomponent at %L"
 msgstr "Ei voi muuntaa tyyppiä %s tyyppiin %s kohdassa %L"
 
-#: fortran/resolve.cc:6014
+#: fortran/resolve.cc:6032
 #, fuzzy, gcc-internal-format
 msgid "Using variable %qs at %L is deprecated"
 msgstr "%qE on vanhentunut"
 
-#: fortran/resolve.cc:6102
+#: fortran/resolve.cc:6120
 #, gcc-internal-format
 msgid "%qs at %L is host associated at %L into a contained procedure with an internal procedure of the same name"
 msgstr ""
 
-#: fortran/resolve.cc:6256 fortran/resolve.cc:6408
+#: fortran/resolve.cc:6274 fortran/resolve.cc:6426
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Error in typebound call at %L"
 msgstr "<tyyppivirhe>"
 
-#: fortran/resolve.cc:6372
+#: fortran/resolve.cc:6390
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Passed-object at %L must be scalar"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:6379
+#: fortran/resolve.cc:6397
 #, fuzzy, gcc-internal-format
 msgid "Base object for procedure-pointer component call at %L is of ABSTRACT type %qs"
 msgstr "FINAL-proseduurin argumentin kohdassa %L täytyy olla tyyppiä ”%s”"
 
-#: fortran/resolve.cc:6418
+#: fortran/resolve.cc:6436
 #, fuzzy, gcc-internal-format
 msgid "Base object for type-bound procedure call at %L is of ABSTRACT type %qs"
 msgstr "FINAL-proseduurin argumentin kohdassa %L täytyy olla tyyppiä ”%s”"
 
-#: fortran/resolve.cc:6427
+#: fortran/resolve.cc:6445
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Base object for NOPASS type-bound procedure call at %L must be scalar"
 msgstr "FINAL-proseduurin argumentin kohdassa %L täytyy olla tyyppiä ”%s”"
 
 #. Nothing matching found!
-#: fortran/resolve.cc:6615
+#: fortran/resolve.cc:6633
 #, fuzzy, gcc-internal-format
 msgid "Found no matching specific binding for the call to the GENERIC %qs at %L"
 msgstr "%J%qD:lle ei ole aiempaa esittelyä"
 
-#: fortran/resolve.cc:6649
+#: fortran/resolve.cc:6667
 #, fuzzy, gcc-internal-format
 msgid "%qs at %L should be a SUBROUTINE"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/resolve.cc:6701
+#: fortran/resolve.cc:6719
 #, fuzzy, gcc-internal-format
 msgid "%qs at %L should be a FUNCTION"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: fortran/resolve.cc:7236
+#: fortran/resolve.cc:7254
 #, fuzzy, gcc-internal-format
 msgid "gfc_resolve_expr(): Bad expression type"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/resolve.cc:7269
+#: fortran/resolve.cc:7287
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be a scalar"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:7279
+#: fortran/resolve.cc:7297
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be integer"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/resolve.cc:7283 fortran/resolve.cc:7290
+#: fortran/resolve.cc:7301 fortran/resolve.cc:7308
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be INTEGER"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/resolve.cc:7345
+#: fortran/resolve.cc:7363
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Step expression in DO loop at %L cannot be zero"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/resolve.cc:7368
+#: fortran/resolve.cc:7386
 #, gcc-internal-format, gfc-internal-format
 msgid "DO loop at %L will be executed zero times"
 msgstr ""
 
-#: fortran/resolve.cc:7385
+#: fortran/resolve.cc:7403
 #, gcc-internal-format, gfc-internal-format
 msgid "DO loop at %L is undefined as it overflows"
 msgstr ""
 
-#: fortran/resolve.cc:7391
+#: fortran/resolve.cc:7409
 #, gcc-internal-format, gfc-internal-format
 msgid "DO loop at %L is undefined as it underflows"
 msgstr ""
 
-#: fortran/resolve.cc:7452
+#: fortran/resolve.cc:7470
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FORALL index-name at %L must be a scalar INTEGER"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:7457
+#: fortran/resolve.cc:7475
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FORALL start expression at %L must be a scalar INTEGER"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:7464
+#: fortran/resolve.cc:7482
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FORALL end expression at %L must be a scalar INTEGER"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:7472
+#: fortran/resolve.cc:7490
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FORALL stride expression at %L must be a scalar %s"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:7477
+#: fortran/resolve.cc:7495
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FORALL stride expression at %L cannot be zero"
 msgstr "Iteraattoriaskel kohdassa %L ei voi olla nolla"
 
-#: fortran/resolve.cc:7490
+#: fortran/resolve.cc:7508
 #, fuzzy, gcc-internal-format
 msgid "FORALL index %qs may not appear in triplet specification at %L"
 msgstr "%J%qD:lle ei ole aiempaa esittelyä"
 
-#: fortran/resolve.cc:7594 fortran/resolve.cc:7892
+#: fortran/resolve.cc:7612 fortran/resolve.cc:7910
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L must be ALLOCATABLE or a POINTER"
 msgstr "Argumentti ”%s”/”%s” PASS(%s) kohdassa %L ei voi olla ALLOCATABLE"
 
-#: fortran/resolve.cc:7602 fortran/resolve.cc:7855
+#: fortran/resolve.cc:7620 fortran/resolve.cc:7873
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Coindexed allocatable object at %L"
 msgstr "tulosta ei voi kirjoittaa: %s"
 
-#: fortran/resolve.cc:7712
+#: fortran/resolve.cc:7730
 #, gcc-internal-format, gfc-internal-format
 msgid "Source-expr at %L must be scalar or have the same rank as the allocate-object at %L"
 msgstr ""
 
-#: fortran/resolve.cc:7743
+#: fortran/resolve.cc:7761
 #, gcc-internal-format, gfc-internal-format
 msgid "Source-expr at %L and allocate-object at %L must have the same shape"
 msgstr ""
 
-#: fortran/resolve.cc:7903
+#: fortran/resolve.cc:7921
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Type of entity at %L is type incompatible with source-expr at %L"
 msgstr "Jäsenfunktio %qs"
 
-#: fortran/resolve.cc:7915
+#: fortran/resolve.cc:7933
 #, gcc-internal-format, gfc-internal-format
 msgid "The allocate-object at %L and the source-expr at %L shall have the same kind type parameter"
 msgstr ""
 
-#: fortran/resolve.cc:7929
+#: fortran/resolve.cc:7947
 #, gcc-internal-format, gfc-internal-format
 msgid "The source-expr at %L shall neither be of type LOCK_TYPE nor have a LOCK_TYPE component if allocate-object at %L is a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:7944
+#: fortran/resolve.cc:7962
 #, gcc-internal-format, gfc-internal-format
 msgid "The source-expr at %L shall neither be of type EVENT_TYPE nor have a EVENT_TYPE component if allocate-object at %L is a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:7957
+#: fortran/resolve.cc:7975
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocating %s of ABSTRACT base type at %L requires a type-spec or source-expr"
 msgstr ""
 
-#: fortran/resolve.cc:7975
+#: fortran/resolve.cc:7993
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocating %s at %L with type-spec requires the same character-length parameter as in the declaration"
 msgstr ""
 
-#: fortran/resolve.cc:8056 fortran/resolve.cc:8071
+#: fortran/resolve.cc:8074 fortran/resolve.cc:8089
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Array specification required in ALLOCATE statement at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:8063
+#: fortran/resolve.cc:8081
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Array specification or array-valued SOURCE= expression required in ALLOCATE statement at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:8088
+#: fortran/resolve.cc:8106
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Coarray specification required in ALLOCATE statement at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:8097 fortran/resolve.cc:8126 fortran/resolve.cc:8154
+#: fortran/resolve.cc:8115 fortran/resolve.cc:8144 fortran/resolve.cc:8172
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Bad array specification in ALLOCATE statement at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:8103
+#: fortran/resolve.cc:8121
 #, gcc-internal-format, gfc-internal-format
 msgid "Upper cobound is less than lower cobound at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8115
+#: fortran/resolve.cc:8133
 #, gcc-internal-format, gfc-internal-format
 msgid "Upper cobound is less than lower cobound of 1 at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8173
+#: fortran/resolve.cc:8191
 #, gcc-internal-format
 msgid "%qs must not appear in the array specification at %L in the same ALLOCATE statement where it is itself allocated"
 msgstr ""
 
-#: fortran/resolve.cc:8188
+#: fortran/resolve.cc:8206
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected '*' in coindex specification in ALLOCATE statement at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:8199
+#: fortran/resolve.cc:8217
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Bad coarray specification in ALLOCATE statement at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:8230
+#: fortran/resolve.cc:8248
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Stat-variable at %L must be a scalar INTEGER variable"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/resolve.cc:8259
+#: fortran/resolve.cc:8277
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Stat-variable at %L shall not be %sd within the same %s statement"
 msgstr "Odotettiin muuttujaa READ-lauseessa kohdassa %C"
 
-#: fortran/resolve.cc:8272
+#: fortran/resolve.cc:8290
 #, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG at %L is useless without a STAT tag"
 msgstr ""
 
-#: fortran/resolve.cc:8286
+#: fortran/resolve.cc:8304
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG variable at %L shall be a scalar default CHARACTER variable"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/resolve.cc:8315
+#: fortran/resolve.cc:8333
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Errmsg-variable at %L shall not be %sd within the same %s statement"
 msgstr "Odotettiin muuttujaa READ-lauseessa kohdassa %C"
 
-#: fortran/resolve.cc:8347
+#: fortran/resolve.cc:8365
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L also appears at %L"
 msgstr "Argumentti ”%s”/”%s” PASS(%s) kohdassa %L ei voi olla ALLOCATABLE"
 
-#: fortran/resolve.cc:8353 fortran/resolve.cc:8359
+#: fortran/resolve.cc:8371 fortran/resolve.cc:8377
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L is subobject of object at %L"
 msgstr "Argumentti ”%s”/”%s” PASS(%s) kohdassa %L ei voi olla ALLOCATABLE"
@@ -73906,284 +74144,284 @@ msgstr "Argumentti ”%s”/”%s” PASS(%s) kohdassa %L ei voi olla ALLOCATABL
 #. element in the list.  Either way, we must
 #. issue an error and get the next case from P.
 #. FIXME: Sort P and Q by line number.
-#: fortran/resolve.cc:8587
+#: fortran/resolve.cc:8605
 #, gcc-internal-format, gfc-internal-format
 msgid "CASE label at %L overlaps with CASE label at %L"
 msgstr "CASE-nimiö kohdassa %L menee CASE-nimiön päälle kohdassa %L"
 
-#: fortran/resolve.cc:8638
+#: fortran/resolve.cc:8656
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L must be of type %s"
 msgstr "Lauseke CASE-lauseessa kohdassa %L on oltava %s-tyyppinen"
 
-#: fortran/resolve.cc:8649
+#: fortran/resolve.cc:8667
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L must be of kind %d"
 msgstr "Lauseke CASE-lauseessa kohdassa %L on oltava %d-kaltainen"
 
-#: fortran/resolve.cc:8662
+#: fortran/resolve.cc:8680
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L must be scalar"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:8708
+#: fortran/resolve.cc:8726
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Selection expression in computed GOTO statement at %L must be a scalar integer expression"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:8727
+#: fortran/resolve.cc:8745
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument of SELECT statement at %L cannot be %s"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:8737
+#: fortran/resolve.cc:8755
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument of SELECT statement at %L must be a scalar expression"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:8755 fortran/resolve.cc:8763
+#: fortran/resolve.cc:8773 fortran/resolve.cc:8781
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expression in CASE statement at %L is not in the range of %s"
 msgstr "Lauseke CASE-lauseessa kohdassa %L on oltava %s-tyyppinen"
 
-#: fortran/resolve.cc:8825 fortran/resolve.cc:9480
+#: fortran/resolve.cc:8843 fortran/resolve.cc:9500
 #, gcc-internal-format, gfc-internal-format
 msgid "The DEFAULT CASE at %L cannot be followed by a second DEFAULT CASE at %L"
 msgstr ""
 
-#: fortran/resolve.cc:8851
+#: fortran/resolve.cc:8869
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Logical range in CASE statement at %L is not allowed"
 msgstr "Lauseke CASE-lauseessa kohdassa %L on oltava %s-tyyppinen"
 
-#: fortran/resolve.cc:8864
+#: fortran/resolve.cc:8882
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Constant logical value in CASE statement is repeated at %L"
 msgstr "Lauseke CASE-lauseessa kohdassa %L on oltava %s-tyyppinen"
 
-#: fortran/resolve.cc:8879
+#: fortran/resolve.cc:8897
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Range specification at %L can never be matched"
 msgstr "Tämä pikanäppäin on jo käytössä toiminnolle %s"
 
-#: fortran/resolve.cc:8982
+#: fortran/resolve.cc:9000
 #, gcc-internal-format, gfc-internal-format
 msgid "Logical SELECT CASE block at %L has more that two cases"
 msgstr ""
 
-#: fortran/resolve.cc:9033
+#: fortran/resolve.cc:9051
 #, fuzzy, gcc-internal-format
 msgid "Associating entity %qs at %L is a procedure pointer"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/resolve.cc:9042
+#: fortran/resolve.cc:9060
 #, fuzzy, gcc-internal-format
 msgid "Derived type %qs cannot be used as a variable at %L"
 msgstr "”%s” ei ole kelvollinen makron nimi, sillä se on C++:n operaattori"
 
-#: fortran/resolve.cc:9059
+#: fortran/resolve.cc:9077
 #, fuzzy, gcc-internal-format
 msgid "Associating entity %qs at %L is a procedure name"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: fortran/resolve.cc:9075
+#: fortran/resolve.cc:9093
 #, gcc-internal-format, gfc-internal-format
 msgid "Associating selector-expression at %L yields a procedure"
 msgstr ""
 
-#: fortran/resolve.cc:9082
+#: fortran/resolve.cc:9100
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Selector at %L cannot be NULL()"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/resolve.cc:9087
+#: fortran/resolve.cc:9105
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Selector at %L has no type"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/resolve.cc:9109
+#: fortran/resolve.cc:9127
 #, fuzzy, gcc-internal-format
 msgid "Associate-name %qs at %L is used as array"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: fortran/resolve.cc:9120
+#: fortran/resolve.cc:9138
 #, gcc-internal-format, gfc-internal-format
 msgid "CLASS selector at %L needs a temporary which is not yet implemented"
 msgstr ""
 
-#: fortran/resolve.cc:9350
+#: fortran/resolve.cc:9370
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Selector shall be polymorphic in SELECT TYPE statement at %L"
 msgstr "yhteensopimattomat tyypit sijoituksessa"
 
-#: fortran/resolve.cc:9388 fortran/resolve.cc:9400
+#: fortran/resolve.cc:9408 fortran/resolve.cc:9420
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Selector at %L must not be coindexed"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/resolve.cc:9429
+#: fortran/resolve.cc:9449
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "TYPE IS at %L overlaps with TYPE IS at %L"
 msgstr "CASE-nimiö kohdassa %L menee CASE-nimiön päälle kohdassa %L"
 
-#: fortran/resolve.cc:9442
+#: fortran/resolve.cc:9462
 #, fuzzy, gcc-internal-format
 msgid "Derived type %qs at %L must be extensible"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:9455
+#: fortran/resolve.cc:9475
 #, fuzzy, gcc-internal-format
 msgid "Derived type %qs at %L must be an extension of %qs"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:9458
+#: fortran/resolve.cc:9478
 #, fuzzy, gcc-internal-format
 msgid "Unexpected intrinsic type %qs at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:9468
+#: fortran/resolve.cc:9488
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "The type-spec at %L shall specify that each length type parameter is assumed"
 msgstr "Automaattitaulukolla ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:9715
+#: fortran/resolve.cc:9735
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Double CLASS IS block in SELECT TYPE statement at %L"
 msgstr "Syntaksivirhe PROTECTED-lauseessa kohdassa %C"
 
-#: fortran/resolve.cc:9849
+#: fortran/resolve.cc:9869
 #, gcc-internal-format, gfc-internal-format
 msgid "RANK DEFAULT at %L is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9858
+#: fortran/resolve.cc:9878
 #, gcc-internal-format, gfc-internal-format
 msgid "RANK (*) at %L is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9861
+#: fortran/resolve.cc:9881
 #, gcc-internal-format, gfc-internal-format
 msgid "RANK (%i) at %L is repeated at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9871 fortran/resolve.cc:9876
+#: fortran/resolve.cc:9891 fortran/resolve.cc:9896
 #, gcc-internal-format, gfc-internal-format
 msgid "RANK (*) at %L cannot be used with the pointer or allocatable selector at %L"
 msgstr ""
 
-#: fortran/resolve.cc:9985
+#: fortran/resolve.cc:10005
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Invalid context for NULL () intrinsic at %L"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/resolve.cc:10037
+#: fortran/resolve.cc:10057
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "DTIO %s procedure at %L must be recursive"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:10047
+#: fortran/resolve.cc:10067
 #, fuzzy, 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 "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:10060
+#: fortran/resolve.cc:10080
 #, fuzzy, 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 "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:10069
+#: fortran/resolve.cc:10089
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Data transfer element at %L cannot have procedure pointer components"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:10076
+#: fortran/resolve.cc:10096
 #, fuzzy, 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 "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:10087
+#: fortran/resolve.cc:10107
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Data transfer element at %L cannot have PRIVATE components"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:10093
+#: fortran/resolve.cc:10113
 #, fuzzy, 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 "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:10108
+#: fortran/resolve.cc:10128
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Data transfer element at %L cannot be a full reference to an assumed-size array"
 msgstr "Varsinainen argumentti kohteelle ”%s” ei voi olla oletetunkokoinen taulukko kohdassa %L"
 
-#: fortran/resolve.cc:10165
+#: fortran/resolve.cc:10185
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Lock variable at %L must be a scalar of type LOCK_TYPE"
 msgstr "Muuttuja %s ei voida liittää PURE-proseduuriin kohdassa %C"
 
-#: fortran/resolve.cc:10175
+#: fortran/resolve.cc:10195
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Event variable at %L must be a scalar of type EVENT_TYPE"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: fortran/resolve.cc:10179
+#: fortran/resolve.cc:10199
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Event variable argument at %L must be a coarray or coindexed"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: fortran/resolve.cc:10182
+#: fortran/resolve.cc:10202
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Event variable argument at %L must be a coarray but not coindexed"
 msgstr "argumentin %d antamisessa funktiolle %qE tehdään osoitin kokonaisluvusta ilman tyyppimuunnosta"
 
-#: fortran/resolve.cc:10189 fortran/resolve.cc:10311
+#: fortran/resolve.cc:10209 fortran/resolve.cc:10331
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "STAT= argument at %L must be a scalar INTEGER variable"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/resolve.cc:10201 fortran/resolve.cc:10323
+#: fortran/resolve.cc:10221 fortran/resolve.cc:10343
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG= argument at %L must be a scalar CHARACTER variable"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/resolve.cc:10213
+#: fortran/resolve.cc:10233
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ACQUIRED_LOCK= argument at %L must be a scalar LOGICAL variable"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/resolve.cc:10226
+#: fortran/resolve.cc:10246
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "UNTIL_COUNT= argument at %L must be a scalar INTEGER expression"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/resolve.cc:10287
+#: fortran/resolve.cc:10307
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Imageset argument at %L must be a scalar or rank-1 INTEGER expression"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/resolve.cc:10291 fortran/resolve.cc:10301
+#: fortran/resolve.cc:10311 fortran/resolve.cc:10321
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Imageset argument at %L must between 1 and num_images()"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: fortran/resolve.cc:10354
+#: fortran/resolve.cc:10374
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Statement at %L is not a valid branch target statement for the branch statement at %L"
 msgstr "Odotettiin muuttujaa READ-lauseessa kohdassa %C"
 
-#: fortran/resolve.cc:10364
+#: fortran/resolve.cc:10384
 #, gcc-internal-format, gfc-internal-format
 msgid "Branch at %L may result in an infinite loop"
 msgstr "Haarautuminen kohdassa %L voi aiheuttaa ikisilmukan"
 
 #. Note: A label at END CRITICAL does not leave the CRITICAL
 #. construct as END CRITICAL is still part of it.
-#: fortran/resolve.cc:10381 fortran/resolve.cc:10404
+#: fortran/resolve.cc:10401 fortran/resolve.cc:10424
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "GOTO statement at %L leaves CRITICAL construct for label at %L"
 msgstr "break-lause silmukan tai switch-rakenteen ulkopuolella"
 
-#: fortran/resolve.cc:10385 fortran/resolve.cc:10410
+#: fortran/resolve.cc:10405 fortran/resolve.cc:10430
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "GOTO statement at %L leaves DO CONCURRENT construct for label at %L"
 msgstr "break-lause silmukan tai switch-rakenteen ulkopuolella"
@@ -74191,198 +74429,198 @@ msgstr "break-lause silmukan tai switch-rakenteen ulkopuolella"
 #. The label is not in an enclosing block, so illegal.  This was
 #. allowed in Fortran 66, so we allow it as extension.  No
 #. further checks are necessary in this case.
-#: fortran/resolve.cc:10425
+#: fortran/resolve.cc:10445
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Label at %L is not in the same block as the GOTO statement at %L"
 msgstr "Odotettiin muuttujaa READ-lauseessa kohdassa %C"
 
-#: fortran/resolve.cc:10497
+#: fortran/resolve.cc:10517
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "WHERE mask at %L has inconsistent shape"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/resolve.cc:10513
+#: fortran/resolve.cc:10533
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "WHERE assignment target at %L has inconsistent shape"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/resolve.cc:10521 fortran/resolve.cc:10608
+#: fortran/resolve.cc:10541 fortran/resolve.cc:10628
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-ELEMENTAL user-defined assignment in WHERE at %L"
 msgstr ""
 
-#: fortran/resolve.cc:10531 fortran/resolve.cc:10618
+#: fortran/resolve.cc:10551 fortran/resolve.cc:10638
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unsupported statement inside WHERE at %L"
 msgstr "Odottamaton %s-lause WHERE-lohkossa kohdassa %C"
 
-#: fortran/resolve.cc:10562
+#: fortran/resolve.cc:10582
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to a FORALL index variable at %L"
 msgstr "Sijoitus FORALL-indeksimuuttujaan kohdassa %L"
 
-#: fortran/resolve.cc:10571
+#: fortran/resolve.cc:10591
 #, gcc-internal-format
 msgid "The FORALL with index %qs is not used on the left side of the assignment at %L and so might cause multiple assignment to this object"
 msgstr ""
 
-#: fortran/resolve.cc:10718
+#: fortran/resolve.cc:10738
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FORALL construct at %L"
 msgstr "Lohkonimiö ei ole sopiva IF-lauseelle kohdassa %C"
 
-#: fortran/resolve.cc:10739
+#: fortran/resolve.cc:10759
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FORALL index-name at %L must be a scalar variable of type integer"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:10749
+#: fortran/resolve.cc:10769
 #, gcc-internal-format, gfc-internal-format
 msgid "An outer FORALL construct already has an index with this name %L"
 msgstr ""
 
-#: fortran/resolve.cc:10826
+#: fortran/resolve.cc:10846
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "WHERE/ELSEWHERE clause at %L requires a LOGICAL array"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/resolve.cc:10941
+#: fortran/resolve.cc:10961
 #, fuzzy, gcc-internal-format
 msgid "gfc_resolve_blocks(): Bad block type"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/resolve.cc:11054
+#: fortran/resolve.cc:11074
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER expression will be truncated in assignment (%ld/%ld) at %L"
 msgstr "CHARACTER-lauseke kohdassa %L on typistetty (%d/%d)"
 
-#: fortran/resolve.cc:11086
+#: fortran/resolve.cc:11106
 #, gcc-internal-format, gfc-internal-format
 msgid "Coindexed expression at %L is assigned to a derived type variable with a POINTER component in a PURE procedure"
 msgstr ""
 
 #. F2008, C1283 (4).
-#: fortran/resolve.cc:11092
+#: fortran/resolve.cc:11112
 #, gcc-internal-format, gfc-internal-format
 msgid "In a pure subprogram an INTENT(IN) dummy argument shall not be used as the expr at %L of an intrinsic assignment statement in which the variable is of a derived type if the derived type has a pointer component at any level of component selection."
 msgstr ""
 
-#: fortran/resolve.cc:11104
+#: fortran/resolve.cc:11124
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assignment to coindexed variable at %L in a PURE procedure"
 msgstr "kirjoitussuojatun muuttujan %qs sijoitus"
 
-#: fortran/resolve.cc:11136
+#: fortran/resolve.cc:11156
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assignment to polymorphic coarray at %L is not permitted"
 msgstr "kirjoitussuojatun muuttujan %qs sijoitus"
 
-#: fortran/resolve.cc:11140
+#: fortran/resolve.cc:11160
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assignment to an allocatable polymorphic variable at %L"
 msgstr "Muuttujatyyppi on UNKNOWN sijoituksessa kohdassa %L"
 
-#: fortran/resolve.cc:11145
+#: fortran/resolve.cc:11165
 #, fuzzy, gcc-internal-format
 msgid "Assignment to an allocatable polymorphic variable at %L requires %<-frealloc-lhs%>"
 msgstr "Muuttujatyyppi on UNKNOWN sijoituksessa kohdassa %L"
 
-#: fortran/resolve.cc:11152
+#: fortran/resolve.cc:11172
 #, 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.cc:11163
+#: fortran/resolve.cc:11183
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Coindexed variable must not have an allocatable ultimate component in assignment at %L"
 msgstr "yhteensopimattomat tyypit sijoituksessa"
 
-#: fortran/resolve.cc:11483
+#: fortran/resolve.cc:11503
 #, gcc-internal-format, gfc-internal-format
 msgid "TODO: type-bound defined assignment(s) at %L not done because multiple part array references would occur in intermediate expressions."
 msgstr ""
 
 #. Even if standard does not support this feature, continue to build
 #. the two statements to avoid upsetting frontend_passes.c.
-#: fortran/resolve.cc:11725
+#: fortran/resolve.cc:11745
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Pointer procedure assignment at %L"
 msgstr "Virheellinen proseduuriosoitinsijoitus kohdassa %L"
 
-#: fortran/resolve.cc:11737
+#: fortran/resolve.cc:11757
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "The function result on the lhs of the assignment at %L must have the pointer attribute."
 msgstr "yhteensopimattomat tyypit sijoituksessa"
 
-#: fortran/resolve.cc:11998
+#: fortran/resolve.cc:12027
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ASSIGNED GOTO statement at %L requires a scalar INTEGER variable"
 msgstr "UNIT-numeron CLOSE-lauseessa kohdassa %L täytyy olla epänegatiivinen"
 
-#: fortran/resolve.cc:12002
+#: fortran/resolve.cc:12031
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs has not been assigned a target label at %L"
 msgstr "Muuttuja %s ei voida liittää PURE-proseduuriin kohdassa %C"
 
-#: fortran/resolve.cc:12013
+#: fortran/resolve.cc:12042
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Alternate RETURN statement at %L requires a SCALAR-INTEGER return specifier"
 msgstr "UNIT-numeron CLOSE-lauseessa kohdassa %L täytyy olla epänegatiivinen"
 
-#: fortran/resolve.cc:12051
+#: fortran/resolve.cc:12080
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected initialization expression in CASE at %C"
 msgid "Expected intrinsic assignment in OMP WORKSHARE at %L"
 msgstr "Odotettiin alustuslauseketta CASE-lauseessa kohdassa %C"
 
-#: fortran/resolve.cc:12085
+#: fortran/resolve.cc:12114
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ASSIGN statement at %L requires a scalar default INTEGER variable"
 msgstr "UNIT-numeron CLOSE-lauseessa kohdassa %L täytyy olla epänegatiivinen"
 
-#: fortran/resolve.cc:12132
+#: fortran/resolve.cc:12161
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Invalid NULL at %L"
 msgstr "virheellinen %%L-arvo"
 
-#: fortran/resolve.cc:12136
+#: fortran/resolve.cc:12165
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Arithmetic IF statement at %L requires a scalar REAL or INTEGER expression"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:12197
+#: fortran/resolve.cc:12226
 #, fuzzy, gcc-internal-format
 msgid "gfc_resolve_code(): No expression on DO WHILE"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/resolve.cc:12202
+#: fortran/resolve.cc:12231
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Exit condition of DO WHILE loop at %L must be a scalar LOGICAL expression"
 msgstr "Lausekkeen CASE-lauseessa kohdassa %L on oltava skalaari"
 
-#: fortran/resolve.cc:12286
+#: fortran/resolve.cc:12315
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FORALL mask clause at %L requires a scalar LOGICAL expression"
 msgstr "decltypen argumentin on oltava lauseke"
 
-#: fortran/resolve.cc:12387
+#: fortran/resolve.cc:12416
 #, fuzzy, gcc-internal-format
 msgid "gfc_resolve_code(): Bad statement code"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/resolve.cc:12408
+#: fortran/resolve.cc:12437
 #, fuzzy, gcc-internal-format
 msgid "Using parameter %qs declared at %L is deprecated"
 msgstr "Käyttämätön parameteri ”%s” esitelty kohdassa %L"
 
-#: fortran/resolve.cc:12502
+#: fortran/resolve.cc:12531
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs with binding label %qs at %L uses the same global identifier as entity at %L"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
 #. This can only happen if the variable is defined in a module - if it
 #. isn't the same module, reject it.
-#: fortran/resolve.cc:12516
+#: fortran/resolve.cc:12545
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs from module %qs with binding label %qs at %L uses the same global identifier as entity at %L from module %qs"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
@@ -74390,114 +74628,114 @@ msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 #. Print an error if the procedure is defined multiple times; we have to
 #. exclude references to the same procedure via module association or
 #. multiple checks for the same procedure.
-#: fortran/resolve.cc:12535
+#: fortran/resolve.cc:12564
 #, fuzzy, gcc-internal-format
 msgid "Procedure %qs with binding label %qs at %L uses the same global identifier as entity at %L"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: fortran/resolve.cc:12621
+#: fortran/resolve.cc:12650
 #, gcc-internal-format, gfc-internal-format
 msgid "String length at %L is too large"
 msgstr "Merkkijonon pituus kohdassa %L on liian suuri"
 
-#: fortran/resolve.cc:12856
+#: fortran/resolve.cc:12885
 #, fuzzy, gcc-internal-format
 msgid "Allocatable array %qs at %L must have a deferred shape or assumed rank"
 msgstr "Automaattitaulukolla ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:12860
+#: fortran/resolve.cc:12889
 #, fuzzy, gcc-internal-format
 msgid "Scalar object %qs at %L may not be ALLOCATABLE"
 msgstr "Argumentti ”%s”/”%s” PASS(%s) kohdassa %L ei voi olla ALLOCATABLE"
 
-#: fortran/resolve.cc:12868
+#: fortran/resolve.cc:12897
 #, fuzzy, gcc-internal-format
 msgid "Array pointer %qs at %L must have a deferred shape or assumed rank"
 msgstr "Automaattitaulukolla ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:12879
+#: fortran/resolve.cc:12908
 #, fuzzy, gcc-internal-format
 msgid "Array %qs at %L cannot have a deferred shape"
 msgstr "Automaattitaulukolla ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:12895
+#: fortran/resolve.cc:12924
 #, fuzzy, gcc-internal-format
 msgid "Type %qs of CLASS variable %qs at %L is not extensible"
 msgstr "Funktion ”%s” paluuarvoa kohdassa %L ei ole asetettu"
 
-#: fortran/resolve.cc:12907
+#: fortran/resolve.cc:12936
 #, fuzzy, gcc-internal-format
 msgid "CLASS variable %qs at %L must be dummy, allocatable or pointer"
 msgstr "Kääntäjänsisäisellä ”%s”-funktiolla kohdassa %L on oltava vähintään kaksi argumenttia"
 
-#: fortran/resolve.cc:12940
+#: fortran/resolve.cc:12969
 #, gcc-internal-format
 msgid "The type %qs cannot be host associated at %L because it is blocked by an incompatible object of the same name declared at %L"
 msgstr ""
 
-#: fortran/resolve.cc:12962
+#: fortran/resolve.cc:12991
 #, fuzzy, gcc-internal-format
 msgid "Implied SAVE for module variable %qs at %L, needed due to the default initialization"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:12995
+#: fortran/resolve.cc:13024
 #, fuzzy, gcc-internal-format
 msgid "Entity %qs at %L has a deferred type parameter and requires either the POINTER or ALLOCATABLE attribute"
 msgstr "kolme pistettä sisältävä parametriluettelo ei sovellu tyhjään parametrinimiluettelon esittelyyn"
 
 #. F08:C541. The shape of an array defined in a main program or module
 #. * needs to be constant.
-#: fortran/resolve.cc:13031
+#: fortran/resolve.cc:13060
 #, fuzzy, gcc-internal-format
 msgid "The module or main program array %qs at %L must have constant shape"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:13056
+#: fortran/resolve.cc:13085
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Entity with assumed character length at %L must be a dummy argument or a PARAMETER"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentin ”%1$s” kohdassa %3$L on oltava valemuuttuja"
 
-#: fortran/resolve.cc:13077
+#: fortran/resolve.cc:13106
 #, fuzzy, gcc-internal-format
 msgid "%qs at %L must have constant character length in this context"
 msgstr "Argumentin %s kohdassa %L on oltava pituudeltaan yksi"
 
-#: fortran/resolve.cc:13084
+#: fortran/resolve.cc:13113
 #, fuzzy, gcc-internal-format
 msgid "COMMON variable %qs at %L must have constant character length"
 msgstr "Argumentin %s kohdassa %L on oltava pituudeltaan yksi"
 
-#: fortran/resolve.cc:13131
+#: fortran/resolve.cc:13160
 #, fuzzy, gcc-internal-format
 msgid "Allocatable %qs at %L cannot have an initializer"
 msgstr "Varattavalla ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:13134
+#: fortran/resolve.cc:13163
 #, fuzzy, gcc-internal-format
 msgid "External %qs at %L cannot have an initializer"
 msgstr "Ulkoisella ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:13137
+#: fortran/resolve.cc:13166
 #, fuzzy, gcc-internal-format
 msgid "Dummy %qs at %L cannot have an initializer"
 msgstr "Tyhjällä ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:13140
+#: fortran/resolve.cc:13169
 #, fuzzy, gcc-internal-format
 msgid "Intrinsic %qs at %L cannot have an initializer"
 msgstr "Luontaisella ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:13143
+#: fortran/resolve.cc:13172
 #, fuzzy, gcc-internal-format
 msgid "Function result %qs at %L cannot have an initializer"
 msgstr "Funktiolla ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:13146
+#: fortran/resolve.cc:13175
 #, fuzzy, gcc-internal-format
 msgid "Automatic array %qs at %L cannot have an initializer"
 msgstr "Automaattitaulukolla ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:13188
+#: fortran/resolve.cc:13217
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s at %L"
 msgstr ""
@@ -74505,852 +74743,852 @@ msgstr ""
 "  tai:  %s -l [SIGNAALI]...\n"
 "  tai:  %s -t [SIGNAALI]...\n"
 
-#: fortran/resolve.cc:13220
+#: fortran/resolve.cc:13249
 #, fuzzy, gcc-internal-format
 msgid "Character-valued statement function %qs at %L must have constant length"
 msgstr "%<__builtin_expect%>-funktion toisen argumentin pitää olla vakio"
 
-#: fortran/resolve.cc:13243
+#: fortran/resolve.cc:13272
 #, fuzzy, gcc-internal-format
 msgid "%qs is of a PRIVATE type and cannot be a dummy argument of %qs, which is PUBLIC at %L"
 msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
 
-#: fortran/resolve.cc:13265
+#: fortran/resolve.cc:13294
 #, gcc-internal-format
 msgid "Procedure %qs in PUBLIC interface %qs at %L takes dummy arguments of %qs which is PRIVATE"
 msgstr ""
 
-#: fortran/resolve.cc:13283
+#: fortran/resolve.cc:13312
 #, fuzzy, gcc-internal-format
 msgid "Function %qs at %L cannot have an initializer"
 msgstr "Funktiolla ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:13295
+#: fortran/resolve.cc:13324
 #, fuzzy, gcc-internal-format
 msgid "External object %qs at %L may not have an initializer"
 msgstr "Ulkoisella objektilla ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:13305
+#: fortran/resolve.cc:13334
 #, fuzzy, gcc-internal-format
 msgid "ELEMENTAL function %qs at %L must have a scalar result"
 msgstr "ELEMENTAL-funktiolla ”%s” kohdassa %L täytyy olla skalaaritulos"
 
-#: fortran/resolve.cc:13315
+#: fortran/resolve.cc:13344
 #, fuzzy, gcc-internal-format
 msgid "Statement function %qs at %L may not have pointer or allocatable attribute"
 msgstr "funktiokutsun argumentti voi olla ehdokas muotoiluattribuutille"
 
-#: fortran/resolve.cc:13334
+#: fortran/resolve.cc:13363
 #, fuzzy, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be array-valued"
 msgstr "CHARACTER(*)-funktio ”%s” kohdassa %L ei voi olla taulukkoarvoinen"
 
-#: fortran/resolve.cc:13338
+#: fortran/resolve.cc:13367
 #, fuzzy, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be pointer-valued"
 msgstr "CHARACTER(*)-funktio ”%s” kohdassa %L ei voi olla osoitinarvoinen"
 
-#: fortran/resolve.cc:13342
+#: fortran/resolve.cc:13371
 #, fuzzy, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be pure"
 msgstr "CHARACTER(*)-funktio ”%s” kohdassa %L ei voi olla puhdas"
 
-#: fortran/resolve.cc:13346
+#: fortran/resolve.cc:13375
 #, fuzzy, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be recursive"
 msgstr "CHARACTER(*)-funktio ”%s” kohdassa %L ei voi olla rekursiivinen"
 
-#: fortran/resolve.cc:13359
+#: fortran/resolve.cc:13388
 #, fuzzy, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L"
 msgstr "%qs esitelty funktion palauttavana funktiona"
 
-#: fortran/resolve.cc:13370
+#: fortran/resolve.cc:13399
 #, fuzzy, gcc-internal-format
 msgid "Procedure pointer %qs at %L shall not be elemental"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:13376
+#: fortran/resolve.cc:13405
 #, fuzzy, gcc-internal-format
 msgid "Dummy procedure %qs at %L shall not be elemental"
 msgstr "Valeproseduurilla ”%s” kohdassa %C ei voi olla geneeristä rajapintaa"
 
-#: fortran/resolve.cc:13396
+#: fortran/resolve.cc:13425
 #, fuzzy, gcc-internal-format
 msgid "Function result variable %qs at %L of elemental function %qs shall not have an ALLOCATABLE or POINTER attribute"
 msgstr "Argumentilla ”%s”/”%s” PASS(%s) kohdassa %L ei voi olla POINTER-attribuuttia"
 
-#: fortran/resolve.cc:13453
+#: fortran/resolve.cc:13482
 #, fuzzy, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with SAVE attribute in %qs at %L"
 msgstr "SAVE-attribuuttia kohdassa %L ei voida määritellä PURE-proseduurissa"
 
-#: fortran/resolve.cc:13459
+#: fortran/resolve.cc:13488
 #, fuzzy, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with INTENT attribute in %qs at %L"
 msgstr "PROCEDURE-attribuutti on ristiriidassa INTENT-attribuutin kanssa kohteessa ”%s” kohdassa %L"
 
-#: fortran/resolve.cc:13465
+#: fortran/resolve.cc:13494
 #, fuzzy, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with RESULT attribute in %qs at %L"
 msgstr "PROCEDURE-attribuutti on ristiriidassa RESULT-attribuutin kanssa kohteessa ”%s” kohdassa %L"
 
-#: fortran/resolve.cc:13473
+#: fortran/resolve.cc:13502
 #, fuzzy, gcc-internal-format
 msgid "EXTERNAL attribute conflicts with FUNCTION attribute in %qs at %L"
 msgstr "EXTERNAL-attribuutti on ristiriidassa FUNCTION-attribuutin kanssa kohteessa ”%s” kohdassa %L"
 
-#: fortran/resolve.cc:13479
+#: fortran/resolve.cc:13508
 #, fuzzy, gcc-internal-format
 msgid "Procedure pointer result %qs at %L is missing the pointer attribute"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:13522
+#: fortran/resolve.cc:13551
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Mismatch in ELEMENTAL attribute between MODULE PROCEDURE at %L and its interface in %s"
 msgstr "Syntaksivirhe PROCEDURE-lauseessa kohdassa %C"
 
-#: fortran/resolve.cc:13530
+#: fortran/resolve.cc:13559
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Mismatch in PURE attribute between MODULE PROCEDURE at %L and its interface in %s"
 msgstr "Syntaksivirhe PROCEDURE-lauseessa kohdassa %C"
 
-#: fortran/resolve.cc:13538
+#: fortran/resolve.cc:13567
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Mismatch in RECURSIVE attribute between MODULE PROCEDURE at %L and its interface in %s"
 msgstr "Syntaksivirhe PROCEDURE-lauseessa kohdassa %C"
 
-#: fortran/resolve.cc:13547
+#: fortran/resolve.cc:13576
 #, gcc-internal-format
 msgid "%s between the MODULE PROCEDURE declaration in MODULE %qs and the declaration at %L in (SUB)MODULE %qs"
 msgstr ""
 
-#: fortran/resolve.cc:13631
+#: fortran/resolve.cc:13660
 #, fuzzy, gcc-internal-format
 msgid "FINAL procedure %qs at %L is not a SUBROUTINE"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/resolve.cc:13640
+#: fortran/resolve.cc:13669
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FINAL procedure at %L must have exactly one argument"
 msgstr "%qD:n on otettava tasan yksi argumentti"
 
-#: fortran/resolve.cc:13649
+#: fortran/resolve.cc:13678
 #, fuzzy, gcc-internal-format
 msgid "Argument of FINAL procedure at %L must be of type %qs"
 msgstr "FINAL-proseduurin argumentin kohdassa %L täytyy olla tyyppiä ”%s”"
 
-#: fortran/resolve.cc:13657
+#: fortran/resolve.cc:13686
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be a POINTER"
 msgstr "FINAL-proseduurin argumentin kohdassa %L täytyy olla tyyppiä ”%s”"
 
-#: fortran/resolve.cc:13663
+#: fortran/resolve.cc:13692
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be ALLOCATABLE"
 msgstr "FINAL-proseduurin argumentin kohdassa %L täytyy olla tyyppiä ”%s”"
 
-#: fortran/resolve.cc:13669
+#: fortran/resolve.cc:13698
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be OPTIONAL"
 msgstr "FINAL-proseduurin argumentin kohdassa %L täytyy olla tyyppiä ”%s”"
 
-#: fortran/resolve.cc:13677
+#: fortran/resolve.cc:13706
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be INTENT(OUT)"
 msgstr "FINAL-proseduurin argumentin kohdassa %L täytyy olla tyyppiä ”%s”"
 
-#: fortran/resolve.cc:13686
+#: fortran/resolve.cc:13715
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Non-scalar FINAL procedure at %L should have assumed shape argument"
 msgstr "Kääntäjänsisäisellä ”%s”-funktiolla kohdassa %L on oltava vähintään kaksi argumenttia"
 
-#: fortran/resolve.cc:13708
+#: fortran/resolve.cc:13737
 #, fuzzy, gcc-internal-format
 msgid "FINAL procedure %qs declared at %L has the same rank (%d) as %qs"
 msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
 
-#: fortran/resolve.cc:13745
+#: fortran/resolve.cc:13774
 #, gcc-internal-format
 msgid "Only array FINAL procedures declared for derived type %qs defined at %L, suggest also scalar one"
 msgstr ""
 
-#: fortran/resolve.cc:13785
+#: fortran/resolve.cc:13814
 #, gcc-internal-format
 msgid "%qs and %qs cannot be mixed FUNCTION/SUBROUTINE for GENERIC %qs at %L"
 msgstr ""
 
-#: fortran/resolve.cc:13821
+#: fortran/resolve.cc:13850
 #, gcc-internal-format
 msgid "%qs and %qs for GENERIC %qs at %L are ambiguous"
 msgstr ""
 
-#: fortran/resolve.cc:13880
+#: fortran/resolve.cc:13909
 #, fuzzy, gcc-internal-format
 msgid "Undefined specific binding %qs as target of GENERIC %qs at %L"
 msgstr "%J%qD:lle ei ole aiempaa esittelyä"
 
-#: fortran/resolve.cc:13892
+#: fortran/resolve.cc:13921
 #, gcc-internal-format
 msgid "GENERIC %qs at %L must target a specific binding, %qs is GENERIC, too"
 msgstr ""
 
-#: fortran/resolve.cc:13920
+#: fortran/resolve.cc:13949
 #, gcc-internal-format
 msgid "GENERIC %qs at %L cannot overwrite specific binding with the same name"
 msgstr ""
 
-#: fortran/resolve.cc:13976
+#: fortran/resolve.cc:14005
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Type-bound operator at %L cannot be NOPASS"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/resolve.cc:14188
+#: fortran/resolve.cc:14217
 #, fuzzy, gcc-internal-format
 msgid "%qs must be a module procedure or an external procedure with an explicit interface at %L"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:14231
+#: fortran/resolve.cc:14260
 #, fuzzy, gcc-internal-format
 msgid "Procedure %qs with PASS(%s) at %L has no argument %qs"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:14245
+#: fortran/resolve.cc:14274
 #, fuzzy, gcc-internal-format
 msgid "Procedure %qs with PASS at %L must have at least one argument"
 msgstr "Kääntäjänsisäisellä ”%s”-funktiolla kohdassa %L on oltava vähintään kaksi argumenttia"
 
-#: fortran/resolve.cc:14259 fortran/resolve.cc:14745
+#: fortran/resolve.cc:14288 fortran/resolve.cc:14774
 #, fuzzy, gcc-internal-format
 msgid "Non-polymorphic passed-object dummy argument of %qs at %L"
 msgstr "%<__builtin_expect%>-funktion toisen argumentin pitää olla vakio"
 
-#: fortran/resolve.cc:14267
+#: fortran/resolve.cc:14296
 #, fuzzy, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived-type %qs"
 msgstr "Argumentin ”%s”/”%s” PASS(%s) kohdassa %L täytyy olla perittyä tyyppiä ”%s”"
 
-#: fortran/resolve.cc:14276
+#: fortran/resolve.cc:14305
 #, fuzzy, gcc-internal-format
 msgid "Passed-object dummy argument of %qs at %L must be scalar"
 msgstr "%<__builtin_expect%>-funktion toisen argumentin pitää olla vakio"
 
-#: fortran/resolve.cc:14282
+#: fortran/resolve.cc:14311
 #, fuzzy, gcc-internal-format
 msgid "Passed-object dummy argument of %qs at %L must not be ALLOCATABLE"
 msgstr "%<__builtin_args_info%>-funktion argumentin pitää olla vakio"
 
-#: fortran/resolve.cc:14288
+#: fortran/resolve.cc:14317
 #, fuzzy, gcc-internal-format
 msgid "Passed-object dummy argument of %qs at %L must not be POINTER"
 msgstr "%<__builtin_args_info%>-funktion argumentin pitää olla vakio"
 
-#: fortran/resolve.cc:14317
+#: fortran/resolve.cc:14346
 #, fuzzy, gcc-internal-format
 msgid "Procedure %qs at %L has the same name as a component of %qs"
 msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
 
-#: fortran/resolve.cc:14327
+#: fortran/resolve.cc:14356
 #, fuzzy, gcc-internal-format
 msgid "Procedure %qs at %L has the same name as an inherited component of %qs"
 msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
 
-#: fortran/resolve.cc:14422
+#: fortran/resolve.cc:14451
 #, fuzzy, gcc-internal-format
 msgid "Derived-type %qs declared at %L must be ABSTRACT because %qs is DEFERRED and not overridden"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:14525
+#: fortran/resolve.cc:14554
 #, fuzzy, gcc-internal-format
 msgid "Coarray component %qs at %L must be allocatable with deferred shape"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:14534
+#: fortran/resolve.cc:14563
 #, gcc-internal-format
 msgid "Component %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:14544
+#: fortran/resolve.cc:14573
 #, gcc-internal-format
 msgid "Component %qs at %L with coarray component shall be a nonpointer, nonallocatable scalar"
 msgstr ""
 
-#: fortran/resolve.cc:14569
+#: fortran/resolve.cc:14598
 #, fuzzy, gcc-internal-format
 msgid "Component %qs at %L has the CONTIGUOUS attribute but is not an array pointer"
 msgstr "Muuttujalla ”%s” kohdassa %L ei voi olla sekä POINTER- että BIND(C)-attribuutit"
 
-#: fortran/resolve.cc:14580
+#: fortran/resolve.cc:14609
 #, fuzzy, gcc-internal-format
 msgid "Component %qs of BIND(C) type at %L must have length one"
 msgstr "Argumentin %s kohdassa %L on oltava pituudeltaan yksi"
 
-#: fortran/resolve.cc:14678
+#: fortran/resolve.cc:14707
 #, fuzzy, gcc-internal-format
 msgid "Procedure pointer component %qs with PASS(%s) at %L has no argument %qs"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:14692
+#: fortran/resolve.cc:14721
 #, fuzzy, gcc-internal-format
 msgid "Procedure pointer component %qs with PASS at %L must have at least one argument"
 msgstr "Kääntäjänsisäisellä ”%s”-funktiolla kohdassa %L on oltava vähintään kaksi argumenttia"
 
-#: fortran/resolve.cc:14708
+#: fortran/resolve.cc:14737
 #, fuzzy, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived type %qs"
 msgstr "Argumentin ”%s”/”%s” PASS(%s) kohdassa %L täytyy olla perittyä tyyppiä ”%s”"
 
-#: fortran/resolve.cc:14718
+#: fortran/resolve.cc:14747
 #, fuzzy, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L must be scalar"
 msgstr "Argumentin ”%s”/”%s” PASS(%s) kohdassa %L täytyy olla skalaari"
 
-#: fortran/resolve.cc:14727
+#: fortran/resolve.cc:14756
 #, fuzzy, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L may not have the POINTER attribute"
 msgstr "Argumentilla ”%s”/”%s” PASS(%s) kohdassa %L ei voi olla POINTER-attribuuttia"
 
-#: fortran/resolve.cc:14736
+#: fortran/resolve.cc:14765
 #, fuzzy, gcc-internal-format
 msgid "Argument %qs of %qs with PASS(%s) at %L may not be ALLOCATABLE"
 msgstr "Argumentti ”%s”/”%s” PASS(%s) kohdassa %L ei voi olla ALLOCATABLE"
 
-#: fortran/resolve.cc:14778
+#: fortran/resolve.cc:14807
 #, fuzzy, gcc-internal-format
 msgid "Component %qs of %qs at %L has the same name as an inherited type-bound procedure"
 msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
 
-#: fortran/resolve.cc:14791
+#: fortran/resolve.cc:14820
 #, gcc-internal-format
 msgid "Character length of component %qs needs to be a constant specification expression at %L"
 msgstr ""
 
-#: fortran/resolve.cc:14802
+#: fortran/resolve.cc:14831
 #, gcc-internal-format
 msgid "Character component %qs of %qs at %L with deferred length must be a POINTER or ALLOCATABLE"
 msgstr ""
 
-#: fortran/resolve.cc:14835
+#: fortran/resolve.cc:14864
 #, fuzzy, gcc-internal-format
 msgid "the component %qs is a PRIVATE type and cannot be a component of %qs, which is PUBLIC at %L"
 msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
 
-#: fortran/resolve.cc:14843
+#: fortran/resolve.cc:14872
 #, gcc-internal-format, gfc-internal-format
 msgid "Polymorphic component %s at %L in SEQUENCE or BIND(C) type %s"
 msgstr ""
 
-#: fortran/resolve.cc:14852
+#: fortran/resolve.cc:14881
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Component %s of SEQUENCE type declared at %L does not have the SEQUENCE attribute"
 msgstr "Argumentilla ”%s”/”%s” PASS(%s) kohdassa %L ei voi olla POINTER-attribuuttia"
 
-#: fortran/resolve.cc:14938
+#: fortran/resolve.cc:14967
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Conflicting initializers in union at %L and %L"
 msgstr "Ristiriita funktioargumentin attribuuteissa kohdassa %C"
 
-#: fortran/resolve.cc:14983
+#: fortran/resolve.cc:15012
 #, gcc-internal-format
 msgid "As extending type %qs at %L has a coarray component, parent type %qs shall also have one"
 msgstr ""
 
-#: fortran/resolve.cc:14996
+#: fortran/resolve.cc:15025
 #, fuzzy, gcc-internal-format
 msgid "Non-extensible derived-type %qs at %L must not be ABSTRACT"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:15060
+#: fortran/resolve.cc:15089
 #, fuzzy, gcc-internal-format
 msgid "Parameterized type %qs does not have a component corresponding to parameter %qs at %L"
 msgstr "kolme pistettä sisältävä parametriluettelo ei sovellu tyhjään parametrinimiluettelon esittelyyn"
 
-#: fortran/resolve.cc:15093
+#: fortran/resolve.cc:15122
 #, fuzzy, gcc-internal-format
 msgid "Generic name %qs of function %qs at %L being the same name as derived type at %L"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: fortran/resolve.cc:15107
+#: fortran/resolve.cc:15136
 #, fuzzy, gcc-internal-format
 msgid "Derived type %qs at %L has not been declared"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:15172
+#: fortran/resolve.cc:15201
 #, fuzzy, gcc-internal-format
 msgid "Assumed size array %qs in namelist %qs at %L is not allowed"
 msgstr "Tyhjä taulukkomuodostin kohdassa %C ei ole sallittu"
 
-#: fortran/resolve.cc:15178
+#: fortran/resolve.cc:15207
 #, fuzzy, gcc-internal-format
 msgid "NAMELIST array object %qs with assumed shape in namelist %qs at %L"
 msgstr "funktiota %<__builtin_next_arg%> kutsuttu ilman argumenttia"
 
-#: fortran/resolve.cc:15184
+#: fortran/resolve.cc:15213
 #, fuzzy, gcc-internal-format
 msgid "NAMELIST array object %qs with nonconstant shape in namelist %qs at %L"
 msgstr "funktiota %<__builtin_next_arg%> kutsuttu ilman argumenttia"
 
-#: fortran/resolve.cc:15192
+#: fortran/resolve.cc:15221
 #, fuzzy, gcc-internal-format
 msgid "NAMELIST object %qs with nonconstant character length in namelist %qs at %L"
 msgstr "funktiota %<__builtin_next_arg%> kutsuttu ilman argumenttia"
 
-#: fortran/resolve.cc:15209
+#: fortran/resolve.cc:15238
 #, fuzzy, gcc-internal-format
 msgid "NAMELIST object %qs was declared PRIVATE and cannot be member of PUBLIC namelist %qs at %L"
 msgstr "funktiota %<__builtin_next_arg%> kutsuttu ilman argumenttia"
 
-#: fortran/resolve.cc:15231
+#: fortran/resolve.cc:15260
 #, fuzzy, gcc-internal-format
 msgid "NAMELIST object %qs has use-associated PRIVATE components and cannot be member of namelist %qs at %L"
 msgstr "funktiota %<__builtin_next_arg%> kutsuttu ilman argumenttia"
 
-#: fortran/resolve.cc:15242
+#: fortran/resolve.cc:15271
 #, fuzzy, gcc-internal-format
 msgid "NAMELIST object %qs has PRIVATE components and cannot be a member of PUBLIC namelist %qs at %L"
 msgstr "funktiota %<__builtin_next_arg%> kutsuttu ilman argumenttia"
 
-#: fortran/resolve.cc:15269
+#: fortran/resolve.cc:15298
 #, fuzzy, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with NAMELIST attribute in %qs at %L"
 msgstr "PROCEDURE-attribuutti on ristiriidassa INTENT-attribuutin kanssa kohteessa ”%s” kohdassa %L"
 
-#: fortran/resolve.cc:15288
+#: fortran/resolve.cc:15317
 #, fuzzy, gcc-internal-format
 msgid "Parameter array %qs at %L cannot be automatic or of deferred shape"
 msgstr "Automaattitaulukolla ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:15304
+#: fortran/resolve.cc:15333
 #, gcc-internal-format
 msgid "Implicitly typed PARAMETER %qs at %L doesn't match a later IMPLICIT type"
 msgstr ""
 
-#: fortran/resolve.cc:15315
+#: fortran/resolve.cc:15344
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Incompatible derived type in PARAMETER at %L"
 msgstr "yhteensopimattomat tyypit sijoituksessa"
 
-#: fortran/resolve.cc:15323
+#: fortran/resolve.cc:15352
 #, fuzzy, gcc-internal-format
 msgid "CLASS variable %qs at %L cannot have the PARAMETER attribute"
 msgstr "Muuttujalla ”%s” kohdassa %L ei voi olla sekä POINTER- että BIND(C)-attribuutit"
 
-#: fortran/resolve.cc:15374
+#: fortran/resolve.cc:15403
 #, fuzzy, gcc-internal-format
 msgid "The object %qs at %L has a deferred LEN parameter %qs and is neither allocatable nor a pointer"
 msgstr "kolme pistettä sisältävä parametriluettelo ei sovellu tyhjään parametrinimiluettelon esittelyyn"
 
-#: fortran/resolve.cc:15385
+#: fortran/resolve.cc:15414
 #, gcc-internal-format
 msgid "The AUTOMATIC object %qs at %L must not have the SAVE attribute or be a variable declared in the main program, a module or a submodule(F08/C513)"
 msgstr ""
 
-#: fortran/resolve.cc:15392
+#: fortran/resolve.cc:15421
 #, gcc-internal-format
 msgid "The object %qs at %L with ASSUMED type parameters must be a dummy or a SELECT TYPE selector(F08/4.2)"
 msgstr ""
 
-#: fortran/resolve.cc:15432
+#: fortran/resolve.cc:15461
 #, gcc-internal-format, gfc-internal-format
 msgid "Sorry, allocatable/pointer components in polymorphic (CLASS) type coarrays at %L are unsupported"
 msgstr ""
 
-#: fortran/resolve.cc:15496
+#: fortran/resolve.cc:15525
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "PROTECTED attribute conflicts with EXTERNAL attribute at %L"
 msgstr "%qE-attribuutti soveltuu vain variadisiin funktioihin"
 
-#: fortran/resolve.cc:15499
+#: fortran/resolve.cc:15528
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "PROCEDURE attribute conflicts with PROTECTED attribute at %L"
 msgstr "SAVE-attribuuttia kohdassa %L ei voida määritellä PURE-proseduurissa"
 
-#: fortran/resolve.cc:15599
+#: fortran/resolve.cc:15628
 #, fuzzy, 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 "Muuttujalla ”%s” kohdassa %L ei voi olla sekä POINTER- että BIND(C)-attribuutit"
 
-#: fortran/resolve.cc:15620
+#: fortran/resolve.cc:15649
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Bad specification for assumed size array at %L"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/resolve.cc:15633
+#: fortran/resolve.cc:15662
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assumed size array at %L must be a dummy argument"
 msgstr "%Jlohkoattribuutti ei ole sallittu %qD:lle"
 
-#: fortran/resolve.cc:15636
+#: fortran/resolve.cc:15665
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assumed shape array at %L must be a dummy argument"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentin ”%1$s” kohdassa %3$L on oltava valemuuttuja"
 
-#: fortran/resolve.cc:15646
+#: fortran/resolve.cc:15675
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank array at %L must be a dummy argument"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:15653
+#: fortran/resolve.cc:15682
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank array at %L may not have the VALUE or CODIMENSION attribute"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:15666
+#: fortran/resolve.cc:15695
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Symbol at %L is not a DUMMY variable"
 msgstr "Sijoitus FORALL-indeksimuuttujaan kohdassa %L"
 
-#: fortran/resolve.cc:15672
+#: fortran/resolve.cc:15701
 #, fuzzy, gcc-internal-format
 msgid "%qs at %L cannot have the VALUE attribute because it is not a dummy argument"
 msgstr "Muuttujalla ”%s” kohdassa %L ei voi olla sekä POINTER- että BIND(C)-attribuutit"
 
-#: fortran/resolve.cc:15682
+#: fortran/resolve.cc:15711
 #, fuzzy, gcc-internal-format
 msgid "Character dummy variable %qs at %L with VALUE attribute must have constant length"
 msgstr "%<__builtin_expect%>-funktion toisen argumentin pitää olla vakio"
 
-#: fortran/resolve.cc:15691
+#: fortran/resolve.cc:15720
 #, fuzzy, gcc-internal-format
 msgid "C interoperable character dummy variable %qs at %L with VALUE attribute must have length one"
 msgstr "%<__builtin_expect%>-funktion toisen argumentin pitää olla vakio"
 
-#: fortran/resolve.cc:15704 fortran/resolve.cc:15881
+#: fortran/resolve.cc:15733 fortran/resolve.cc:15910
 #, fuzzy, gcc-internal-format
 msgid "The derived type %qs at %L is of type %qs, which has not been defined"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:15718
+#: fortran/resolve.cc:15747
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Variable %s at %L with NO_ARG_CHECK attribute shall be a dummy argument"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:15727
+#: fortran/resolve.cc:15756
 #, fuzzy, 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 "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:15736
+#: fortran/resolve.cc:15765
 #, fuzzy, 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 "Muuttujalla ”%s” kohdassa %L ei voi olla sekä ALLOCATABLE- että BIND(C)-attribuutit"
 
-#: fortran/resolve.cc:15744
+#: fortran/resolve.cc:15773
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Variable %s at %L with NO_ARG_CHECK attribute may not have the INTENT(OUT) attribute"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:15751
+#: fortran/resolve.cc:15780
 #, fuzzy, 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 "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:15771
+#: fortran/resolve.cc:15800
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assumed type of variable %s at %L is only permitted for dummy variables"
 msgstr "ASYNCHRONOUS= määrite kohdassa %L täytyy olla alustuslauseke"
 
-#: fortran/resolve.cc:15778
+#: fortran/resolve.cc:15807
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L may not have the ALLOCATABLE, CODIMENSION, POINTER or VALUE attribute"
 msgstr "Muuttujalla ”%s” kohdassa %L ei voi olla sekä ALLOCATABLE- että BIND(C)-attribuutit"
 
-#: fortran/resolve.cc:15785
+#: fortran/resolve.cc:15814
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L may not have the INTENT(OUT) attribute"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:15792
+#: fortran/resolve.cc:15821
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L shall not be an explicit-shape array"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:15818
+#: fortran/resolve.cc:15847
 #, gcc-internal-format
 msgid "Variable %qs at %L cannot be BIND(C) because it is neither a COMMON block nor declared at the module level scope"
 msgstr ""
 
-#: fortran/resolve.cc:15828
+#: fortran/resolve.cc:15857
 #, fuzzy, gcc-internal-format
 msgid "BIND(C) Variable %qs at %L must have length one"
 msgstr "Argumentin %s kohdassa %L on oltava pituudeltaan yksi"
 
-#: fortran/resolve.cc:15907
+#: fortran/resolve.cc:15936
 #, fuzzy, gcc-internal-format
 msgid "PUBLIC %s %qs at %L of PRIVATE derived type %qs"
 msgstr "epäkelpo %qs:n soveltaminen tyhjään tyyppiin"
 
-#: fortran/resolve.cc:15922
+#: fortran/resolve.cc:15951
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable %s at %L of type LOCK_TYPE or with subcomponent of type LOCK_TYPE must be a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:15935
+#: fortran/resolve.cc:15964
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable %s at %L of type EVENT_TYPE or with subcomponent of type EVENT_TYPE must be a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:15953
+#: fortran/resolve.cc:15982
 #, fuzzy, gcc-internal-format
 msgid "The INTENT(OUT) dummy argument %qs at %L is ASSUMED SIZE and so cannot have a default initializer"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentin ”%1$s” kohdassa %3$L ei voi olla INTENT(IN)"
 
-#: fortran/resolve.cc:15965
+#: fortran/resolve.cc:15994
 #, fuzzy, gcc-internal-format
 msgid "Dummy argument %qs at %L of LOCK_TYPE shall not be INTENT(OUT)"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentin ”%1$s” kohdassa %3$L ei voi olla INTENT(IN)"
 
-#: fortran/resolve.cc:15974
+#: fortran/resolve.cc:16003
 #, fuzzy, gcc-internal-format
 msgid "Dummy argument %qs at %L of EVENT_TYPE shall not be INTENT(OUT)"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentin ”%1$s” kohdassa %3$L ei voi olla INTENT(IN)"
 
-#: fortran/resolve.cc:15987
+#: fortran/resolve.cc:16016
 #, fuzzy, gcc-internal-format
 msgid "Function result %qs at %L shall not be a coarray or have a coarray component"
 msgstr "Funktiolla ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:15996
+#: fortran/resolve.cc:16025
 #, gcc-internal-format
 msgid "Variable %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:16009
+#: fortran/resolve.cc:16038
 #, gcc-internal-format
 msgid "Variable %qs at %L with coarray component shall be a nonpointer, nonallocatable scalar, which is not a coarray"
 msgstr ""
 
-#: fortran/resolve.cc:16025
+#: fortran/resolve.cc:16054
 #, gcc-internal-format
 msgid "Variable %qs at %L is a coarray and is not ALLOCATABLE, SAVE nor a dummy argument"
 msgstr ""
 
-#: fortran/resolve.cc:16033
+#: fortran/resolve.cc:16062
 #, fuzzy, gcc-internal-format
 msgid "Coarray variable %qs at %L shall not have codimensions with deferred shape"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:16040
+#: fortran/resolve.cc:16069
 #, fuzzy, gcc-internal-format
 msgid "Allocatable coarray variable %qs at %L must have deferred shape"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:16053
+#: fortran/resolve.cc:16082
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs at %L is INTENT(OUT) and can thus not be an allocatable coarray or have coarray components"
 msgstr "Funktiolla ”%s” kohdassa %L ei voi olla alustinta"
 
-#: fortran/resolve.cc:16062
+#: fortran/resolve.cc:16091
 #, fuzzy, gcc-internal-format
 msgid "Coarray dummy variable %qs at %L not allowed in BIND(C) procedure %qs"
 msgstr "Muuttujan alustus kohdassa %C ei ole sallittu PURE-proseduurissa"
 
-#: fortran/resolve.cc:16078
+#: fortran/resolve.cc:16107
 #, fuzzy, gcc-internal-format
 msgid "LOGICAL dummy argument %qs at %L with non-C_Bool kind in BIND(C) procedure %qs"
 msgstr "Muuttujan alustus kohdassa %C ei ole sallittu PURE-proseduurissa"
 
-#: fortran/resolve.cc:16084
+#: fortran/resolve.cc:16113
 #, fuzzy, gcc-internal-format
 msgid "LOGICAL result variable %qs at %L with non-C_Bool kind in BIND(C) procedure %qs"
 msgstr "Muuttujan alustus kohdassa %C ei ole sallittu PURE-proseduurissa"
 
-#: fortran/resolve.cc:16109
+#: fortran/resolve.cc:16138
 #, fuzzy, gcc-internal-format
 msgid "Namelist %qs cannot be an argument to subroutine or function at %L"
 msgstr "Tuntematon argumenttiluettelofunktio kohdassa %L"
 
-#: fortran/resolve.cc:16180
+#: fortran/resolve.cc:16209
 #, gcc-internal-format, gfc-internal-format
 msgid "Threadprivate at %L isn't SAVEd"
 msgstr ""
 
-#: fortran/resolve.cc:16192
+#: fortran/resolve.cc:16221
 #, fuzzy, gcc-internal-format
 msgid "!$OMP DECLARE TARGET variable %qs at %L isn't SAVEd"
 msgstr "Symboli ”%s” kohdassa %C on jo COMMON-lohkossa"
 
-#: fortran/resolve.cc:16299
+#: fortran/resolve.cc:16328
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expecting definable entity near %L"
 msgstr "%s-lausetta odotettiin kohdassa %L"
 
-#: fortran/resolve.cc:16307
+#: fortran/resolve.cc:16336
 #, fuzzy, gcc-internal-format
 msgid "BLOCK DATA element %qs at %L must be in COMMON"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:16314
+#: fortran/resolve.cc:16343
 #, fuzzy, gcc-internal-format
 msgid "DATA array %qs at %L must be specified in a previous declaration"
 msgstr "Proseduurilla ”%s” kohdassa %C on eksplisiittinen rajapinta ja sillä ei saa olla attribuutteja, jotka on esitelty kohdassa %L"
 
-#: fortran/resolve.cc:16321
+#: fortran/resolve.cc:16350
 #, fuzzy, gcc-internal-format
 msgid "DATA element %qs at %L cannot have a coindex"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:16337
+#: fortran/resolve.cc:16366
 #, fuzzy, gcc-internal-format
 msgid "DATA element %qs at %L is a pointer and so must be a full array"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:16344
+#: fortran/resolve.cc:16373
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA object near %L has the pointer attribute and the corresponding DATA value is not a valid initial-data-target"
 msgstr ""
 
-#: fortran/resolve.cc:16353
+#: fortran/resolve.cc:16382
 #, fuzzy, gcc-internal-format
 msgid "DATA element %qs at %L cannot have the ALLOCATABLE attribute"
 msgstr "Argumentilla ”%s”/”%s” PASS(%s) kohdassa %L ei voi olla POINTER-attribuuttia"
 
-#: fortran/resolve.cc:16399
+#: fortran/resolve.cc:16428
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Nonconstant array section at %L in DATA statement"
 msgstr "tyhjä esittely"
 
-#: fortran/resolve.cc:16412
+#: fortran/resolve.cc:16441
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %L has more variables than values"
 msgstr "DATA-lause kohdassa %C ei ole sallittu PURE-proseduurissa"
 
-#: fortran/resolve.cc:16511
+#: fortran/resolve.cc:16540
 #, gcc-internal-format, gfc-internal-format
 msgid "start of implied-do loop at %L could not be simplified to a constant value"
 msgstr ""
 
-#: fortran/resolve.cc:16519
+#: fortran/resolve.cc:16548
 #, gcc-internal-format, gfc-internal-format
 msgid "end of implied-do loop at %L could not be simplified to a constant value"
 msgstr ""
 
-#: fortran/resolve.cc:16527
+#: fortran/resolve.cc:16556
 #, gcc-internal-format, gfc-internal-format
 msgid "step of implied-do loop at %L could not be simplified to a constant value"
 msgstr ""
 
-#: fortran/resolve.cc:16534
+#: fortran/resolve.cc:16563
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "step of implied-do loop at %L shall not be zero"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/resolve.cc:16659
+#: fortran/resolve.cc:16688
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %L has more values than variables"
 msgstr "DATA-lause kohdassa %C ei ole sallittu PURE-proseduurissa"
 
-#: fortran/resolve.cc:16825
+#: fortran/resolve.cc:16854
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d at %L defined but not used"
 msgstr "Nimiö %d kohdassa %L on määritelty, mutta ei käytetty"
 
-#: fortran/resolve.cc:16831
+#: fortran/resolve.cc:16860
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d at %L defined but cannot be used"
 msgstr "Nimiö %d kohdassa %L on määritelty, mutta sitä ei voida käyttää"
 
-#: fortran/resolve.cc:16915
+#: fortran/resolve.cc:16944
 #, fuzzy, gcc-internal-format
 msgid "Derived type variable %qs at %L must have SEQUENCE attribute to be an EQUIVALENCE object"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:16924
+#: fortran/resolve.cc:16953
 #, fuzzy, gcc-internal-format
 msgid "Derived type variable %qs at %L cannot have ALLOCATABLE components to be an EQUIVALENCE object"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:16932
+#: fortran/resolve.cc:16961
 #, fuzzy, gcc-internal-format
 msgid "Derived type variable %qs at %L with default initialization cannot be in EQUIVALENCE with a variable in COMMON"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:16948
+#: fortran/resolve.cc:16977
 #, fuzzy, gcc-internal-format
 msgid "Derived type variable %qs at %L with pointer component(s) cannot be an EQUIVALENCE object"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:17051
+#: fortran/resolve.cc:17080
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in EQUIVALENCE statement at %L"
 msgstr "Syntaksivirhe IMPORT-lauseessa kohdassa %C"
 
-#: fortran/resolve.cc:17066
+#: fortran/resolve.cc:17095
 #, gcc-internal-format, gfc-internal-format
 msgid "Either all or none of the objects in the EQUIVALENCE set at %L shall have the PROTECTED attribute"
 msgstr ""
 
-#: fortran/resolve.cc:17091
+#: fortran/resolve.cc:17120
 #, fuzzy, gcc-internal-format
 msgid "COMMON block member %qs at %L cannot be an EQUIVALENCE object in the pure procedure %qs"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: fortran/resolve.cc:17100
+#: fortran/resolve.cc:17129
 #, fuzzy, gcc-internal-format
 msgid "Named constant %qs at %L cannot be an EQUIVALENCE object"
 msgstr "Ei voi sijoitaa nimettyyn vakioon kohdassa %C"
 
-#: fortran/resolve.cc:17173
+#: fortran/resolve.cc:17202
 #, fuzzy, gcc-internal-format
 msgid "Array %qs at %L with non-constant bounds cannot be an EQUIVALENCE object"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/resolve.cc:17184
+#: fortran/resolve.cc:17213
 #, fuzzy, gcc-internal-format
 msgid "Structure component %qs at %L cannot be an EQUIVALENCE object"
 msgstr "%J%qD on tavallisesti ei-staattinen funktio"
 
-#: fortran/resolve.cc:17195
+#: fortran/resolve.cc:17224
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Substring at %L has length zero"
 msgstr "Alimerkkijonon loppuindeksi kohdassa %L on liian suuri"
 
-#: fortran/resolve.cc:17226
+#: fortran/resolve.cc:17255
 #, fuzzy, gcc-internal-format
 msgid "Self reference in character length expression for %qs at %L"
 msgstr "Syntaksivirhe merkkipituusspesifikaatiossa kohdassa %C"
 
-#: fortran/resolve.cc:17293
+#: fortran/resolve.cc:17322
 #, fuzzy, gcc-internal-format
 msgid "PUBLIC function %qs at %L of PRIVATE type %qs"
 msgstr "epäkelpo %qs:n soveltaminen tyhjään tyyppiin"
 
-#: fortran/resolve.cc:17306
+#: fortran/resolve.cc:17335
 #, fuzzy, gcc-internal-format
 msgid "ENTRY %qs at %L has no IMPLICIT type"
 msgstr "Proseduuri ”%s” kohdassa %L ei voi olla perustyyppiä %s"
 
-#: fortran/resolve.cc:17326
+#: fortran/resolve.cc:17355
 #, fuzzy, gcc-internal-format
 msgid "User operator procedure %qs at %L must be a FUNCTION"
 msgstr "Kääntäjänsisäisellä ”%s”-funktiolla kohdassa %L on oltava vähintään kaksi argumenttia"
 
-#: fortran/resolve.cc:17336
+#: fortran/resolve.cc:17365
 #, fuzzy, gcc-internal-format
 msgid "User operator procedure %qs at %L cannot be assumed character length"
 msgstr "BIND(C)-funktion ”%s” paluutyyppi kohdassa %L ei voi olla merkkijono"
 
-#: fortran/resolve.cc:17344
+#: fortran/resolve.cc:17373
 #, fuzzy, gcc-internal-format
 msgid "User operator procedure %qs at %L must have at least one argument"
 msgstr "Kääntäjänsisäisellä ”%s”-funktiolla kohdassa %L on oltava vähintään kaksi argumenttia"
 
-#: fortran/resolve.cc:17358
+#: fortran/resolve.cc:17387
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "First argument of operator interface at %L cannot be optional"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentin ”%1$s” kohdassa %3$L on oltava %4$s"
 
-#: fortran/resolve.cc:17376
+#: fortran/resolve.cc:17405
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Second argument of operator interface at %L cannot be optional"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentin ”%1$s” kohdassa %3$L on oltava %4$s"
 
-#: fortran/resolve.cc:17383
+#: fortran/resolve.cc:17412
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Operator interface at %L must have, at most, two arguments"
 msgstr "Kääntäjänsisäisellä ”%s”-funktiolla kohdassa %L on oltava vähintään kaksi argumenttia"
 
-#: fortran/resolve.cc:17462
+#: fortran/resolve.cc:17491
 #, fuzzy, gcc-internal-format
 msgid "Contained procedure %qs at %L of a PURE procedure must also be PURE"
 msgstr "Proseduuri ”%s” kohdassa %C on jo määritelty kohdassa %L"
@@ -75370,92 +75608,92 @@ msgstr "jätetään puuttuva hakemisto ”%s” huomiotta\n"
 msgid "%qs is not a directory"
 msgstr "Ei ole hakemisto"
 
-#: fortran/scanner.cc:793
+#: fortran/scanner.cc:792
 #, gcc-internal-format, gfc-internal-format
 msgid "!$ACC at %C starts a commented line as it neither is followed by a space nor is a continuation line"
 msgstr ""
 
-#: fortran/scanner.cc:833
+#: fortran/scanner.cc:832
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP at %C starts a commented line as it neither is followed by a space nor is a continuation line"
 msgstr ""
 
-#: fortran/scanner.cc:1320 fortran/scanner.cc:1523
+#: fortran/scanner.cc:1319 fortran/scanner.cc:1522
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Line truncated at %L"
 msgstr "Lohkonimiö ei ole sopiva IF-lauseelle kohdassa %C"
 
-#: fortran/scanner.cc:1384 fortran/scanner.cc:1613
+#: fortran/scanner.cc:1383 fortran/scanner.cc:1612
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Limit of %d continuations exceeded in statement at %C"
 msgstr "Odottamaton %s-lause MODULE-lohkossa kohdassa %C"
 
-#: fortran/scanner.cc:1463 fortran/scanner.cc:1572
+#: fortran/scanner.cc:1462 fortran/scanner.cc:1571
 #, gcc-internal-format, gfc-internal-format
 msgid "Wrong OpenACC continuation at %C: expected !$ACC, got !$OMP"
 msgstr ""
 
-#: fortran/scanner.cc:1465 fortran/scanner.cc:1574
+#: fortran/scanner.cc:1464 fortran/scanner.cc:1573
 #, gcc-internal-format, gfc-internal-format
 msgid "Wrong OpenMP continuation at %C: expected !$OMP, got !$ACC"
 msgstr ""
 
-#: fortran/scanner.cc:1478
+#: fortran/scanner.cc:1477
 #, fuzzy, gcc-internal-format
 msgid "Missing %<&%> in continued character constant at %C"
 msgstr "Virheellinen merkki BOZ-vakiossa kohdassa %C"
 
-#: fortran/scanner.cc:1764
+#: fortran/scanner.cc:1763
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Nonconforming tab character at %C"
 msgstr "monimerkkinen sarkain %s"
 
-#: fortran/scanner.cc:1775
+#: fortran/scanner.cc:1774
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Invalid character 0x%s at %C"
 msgstr "Virheellinen merkki nimessä kohdassa %C"
 
-#: fortran/scanner.cc:1864 fortran/scanner.cc:1867
+#: fortran/scanner.cc:1863 fortran/scanner.cc:1866
 #, fuzzy, gcc-internal-format
 msgid "%<&%> not allowed by itself in line %d"
 msgstr "Vastaava sulku löytyi riviltä: %d"
 
-#: fortran/scanner.cc:1957
+#: fortran/scanner.cc:1956
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Nonconforming tab character in column %d of line %d"
 msgstr "monimerkkinen sarkain %s"
 
-#: fortran/scanner.cc:2186
+#: fortran/scanner.cc:2185
 #, fuzzy, gcc-internal-format
 msgid "file %qs left but not entered"
 msgstr "syötetiedosto %qs on sama kuin tulostiedosto"
 
-#: fortran/scanner.cc:2228
+#: fortran/scanner.cc:2227
 #, fuzzy, gcc-internal-format
 msgid "Illegal preprocessor directive"
 msgstr "”override”-toimintaohje"
 
-#: fortran/scanner.cc:2551
+#: fortran/scanner.cc:2550
 #, gcc-internal-format
 msgid "File %qs is being included recursively"
 msgstr ""
 
-#: fortran/scanner.cc:2563
+#: fortran/scanner.cc:2562
 #, fuzzy, gcc-internal-format
 msgid "Cannot open file %qs"
 msgstr "Ei voi avata varmistustiedostoa %s"
 
-#: fortran/scanner.cc:2573
+#: fortran/scanner.cc:2572
 #, fuzzy, gcc-internal-format
 msgid "Cannot open included file %qs"
 msgstr "syötetiedoston avaaminen ei onnistu: %s"
 
-#: fortran/scanner.cc:2575
+#: fortran/scanner.cc:2574
 #, fuzzy, gcc-internal-format
 msgid "Cannot open pre-included file %qs"
 msgstr "syötetiedoston avaaminen ei onnistu: %s"
 
-#: fortran/scanner.cc:2583 fortran/scanner.cc:2585
+#: fortran/scanner.cc:2582 fortran/scanner.cc:2584
 #, fuzzy, gcc-internal-format
 #| msgid "input file %qs is the same as output file"
 msgid "Included file %qs is not a regular file"
@@ -75601,218 +75839,218 @@ msgstr ""
 msgid "in gfc_simplify_cos(): Bad type"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: fortran/simplify.cc:2371
+#: fortran/simplify.cc:2372
 #, fuzzy, gcc-internal-format
 msgid "gfc_simplify_dim(): Bad type"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: fortran/simplify.cc:2945
+#: fortran/simplify.cc:2946
 #, fuzzy, gcc-internal-format
 msgid "in gfc_simplify_exp(): Bad type"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/simplify.cc:3159
+#: fortran/simplify.cc:3160
 #, fuzzy, gcc-internal-format
 msgid "gfc_simplify_floor(): Bad kind"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/simplify.cc:3272
+#: fortran/simplify.cc:3273
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument of IACHAR at %L must be of length one"
 msgstr "Argumentin %s kohdassa %L on oltava pituudeltaan yksi"
 
-#: fortran/simplify.cc:3280
+#: fortran/simplify.cc:3281
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument of IACHAR function at %L outside of range 0..127"
 msgstr "Funktion %s argumentti kohdassa %L on lukualueen [0,127] ulkopuolella"
 
-#: fortran/simplify.cc:3395
+#: fortran/simplify.cc:3396
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Sum of second and third arguments of IBITS exceeds bit size at %L"
 msgstr "%<__builtin_args_info%>-funktion argumentti puuttuu"
 
-#: fortran/simplify.cc:3419
+#: fortran/simplify.cc:3420
 #, fuzzy, gcc-internal-format
 msgid "IBITS: Bad bit"
 msgstr "Käytä bittikenttäkäskyjä"
 
-#: fortran/simplify.cc:3470
+#: fortran/simplify.cc:3471
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument of ICHAR at %L must be of length one"
 msgstr "Argumentin %s kohdassa %L on oltava pituudeltaan yksi"
 
 #. Left shift, as in SHIFTL.
-#: fortran/simplify.cc:3855 fortran/simplify.cc:3863
+#: fortran/simplify.cc:3856 fortran/simplify.cc:3864
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Second argument of %s is negative at %L"
 msgstr "Funktion %s argumentti kohdassa %L on negatiivinen"
 
-#: fortran/simplify.cc:3875
+#: fortran/simplify.cc:3876
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Magnitude of second argument of %s exceeds bit size at %L"
 msgstr "%<__builtin_args_info%>-funktion argumentti puuttuu"
 
-#: fortran/simplify.cc:4000
+#: fortran/simplify.cc:4001
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Magnitude of second argument of ISHFTC exceeds BIT_SIZE of first argument at %C"
 msgstr "%<__builtin_args_info%>-funktion argumentti puuttuu"
 
-#: fortran/simplify.cc:4003
+#: fortran/simplify.cc:4004
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Absolute value of SHIFT shall be less than or equal to SIZE at %C"
 msgstr "%s:n kohdassa %L täytyy olla INTEGER"
 
-#: fortran/simplify.cc:4350 fortran/simplify.cc:4483
+#: fortran/simplify.cc:4351 fortran/simplify.cc:4484
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "DIM argument at %L is out of bounds"
 msgstr "Arvo sallitun välin ulkopuolella."
 
-#: fortran/simplify.cc:4710
+#: fortran/simplify.cc:4711
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument of LOG at %L cannot be less than or equal to zero"
 msgstr "%qs ei ole kelpo tulostetiedosto"
 
-#: fortran/simplify.cc:4723
+#: fortran/simplify.cc:4724
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Complex argument of LOG at %L cannot be zero"
 msgstr "%qs ei ole kelpo tulostetiedosto"
 
-#: fortran/simplify.cc:4734
+#: fortran/simplify.cc:4735
 #, fuzzy, gcc-internal-format
 msgid "gfc_simplify_log: bad type"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/simplify.cc:4751
+#: fortran/simplify.cc:4752
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument of LOG10 at %L cannot be less than or equal to zero"
 msgstr "%qs ei ole kelpo tulostetiedosto"
 
-#: fortran/simplify.cc:5089
+#: fortran/simplify.cc:5090
 #, fuzzy, gcc-internal-format
 msgid "simplify_min_max(): Bad type in arglist"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: fortran/simplify.cc:6010 fortran/simplify.cc:6018
+#: fortran/simplify.cc:6011 fortran/simplify.cc:6019
 #, fuzzy, gcc-internal-format
 msgid "Argument %qs of MOD at %L shall not be zero"
 msgstr "%qs ei ole kelpo tulostetiedosto"
 
-#: fortran/simplify.cc:6024
+#: fortran/simplify.cc:6025
 #, fuzzy, gcc-internal-format
 msgid "gfc_simplify_mod(): Bad arguments"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/simplify.cc:6062 fortran/simplify.cc:6070
+#: fortran/simplify.cc:6063 fortran/simplify.cc:6071
 #, fuzzy, gcc-internal-format
 msgid "Argument %qs of MODULO at %L shall not be zero"
 msgstr "%qs ei ole kelpo tulostetiedosto"
 
-#: fortran/simplify.cc:6076
+#: fortran/simplify.cc:6077
 #, fuzzy, gcc-internal-format
 msgid "gfc_simplify_modulo(): Bad arguments"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/simplify.cc:6148
+#: fortran/simplify.cc:6149
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Result of NEAREST is NaN at %L"
 msgstr "Haarautuminen kohdassa %L voi aiheuttaa ikisilmukan"
 
-#: fortran/simplify.cc:6725
+#: fortran/simplify.cc:6726
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument NCOPIES of REPEAT intrinsic is negative at %L"
 msgstr "%<__builtin_args_info%>-funktion argumentin pitää olla vakio"
 
-#: fortran/simplify.cc:6781
+#: fortran/simplify.cc:6782
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument NCOPIES of REPEAT intrinsic is too large at %L"
 msgstr "%<__builtin_args_info%>-funktion argumentin pitää olla vakio"
 
-#: fortran/simplify.cc:6818
+#: fortran/simplify.cc:6819
 #, gcc-internal-format, gfc-internal-format
 msgid "Evaluation of string longer than 2**28 at %L deferred to runtime, expect bugs"
 msgstr ""
 
-#: fortran/simplify.cc:6876
+#: fortran/simplify.cc:6877
 #, gcc-internal-format, gfc-internal-format
 msgid "The SHAPE array for the RESHAPE intrinsic at %L has a negative value %d for dimension %d"
 msgstr ""
 
-#: fortran/simplify.cc:6900
+#: fortran/simplify.cc:6901
 #, gcc-internal-format, gfc-internal-format
 msgid "Shapes of ORDER at %L and SHAPE at %L are different"
 msgstr ""
 
-#: fortran/simplify.cc:6913
+#: fortran/simplify.cc:6914
 #, gcc-internal-format, gfc-internal-format
 msgid "Sizes of ORDER at %L and SHAPE at %L are different"
 msgstr ""
 
-#: fortran/simplify.cc:6927
+#: fortran/simplify.cc:6928
 #, gcc-internal-format, gfc-internal-format
 msgid "Element with a value of %d in ORDER at %L must be in the range [1, ..., %d] for the RESHAPE intrinsic near %L"
 msgstr ""
 
-#: fortran/simplify.cc:6937
+#: fortran/simplify.cc:6938
 #, gcc-internal-format, gfc-internal-format
 msgid "ORDER at %L is not a permutation of the size of SHAPE at %L"
 msgstr ""
 
-#: fortran/simplify.cc:6998
+#: fortran/simplify.cc:6999
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Reshaped array too large at %C"
 msgstr "Kokonaisluku liian suuri kohdassa %C"
 
-#: fortran/simplify.cc:7114
+#: fortran/simplify.cc:7115
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Result of SCALE overflows its kind at %L"
 msgstr "tulosta ei voi kirjoittaa: %s"
 
-#: fortran/simplify.cc:7703
+#: fortran/simplify.cc:7704
 #, fuzzy, gcc-internal-format
 msgid "Bad type in gfc_simplify_sign"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: fortran/simplify.cc:7732
+#: fortran/simplify.cc:7733
 #, fuzzy, gcc-internal-format
 msgid "in gfc_simplify_sin(): Bad type"
 msgstr "ylivuoto vakiolausekkeessa"
 
-#: fortran/simplify.cc:7870 fortran/simplify.cc:8153
+#: fortran/simplify.cc:7871 fortran/simplify.cc:8154
 #, gcc-internal-format
 msgid "Failure getting length of a constant array."
 msgstr ""
 
-#: fortran/simplify.cc:7880
+#: fortran/simplify.cc:7881
 #, gcc-internal-format
 msgid "The number of elements (%d) in the array constructor at %L requires an increase of the allowed %d upper limit.  See %<-fmax-array-constructor%> option."
 msgstr ""
 
-#: fortran/simplify.cc:7947
+#: fortran/simplify.cc:7948
 #, gcc-internal-format, gfc-internal-format
 msgid "Simplification of SPREAD at %C not yet implemented"
 msgstr ""
 
-#: fortran/simplify.cc:7971
+#: fortran/simplify.cc:7972
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Argument of SQRT at %L has a negative value"
 msgstr "Funktion %s argumentti kohdassa %L on negatiivinen"
 
-#: fortran/simplify.cc:7987
+#: fortran/simplify.cc:7988
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "invalid argument of SQRT at %L"
 msgstr "Virheellinen proseduuriargumentti kohdassa %L"
 
-#: fortran/simplify.cc:8334
+#: fortran/simplify.cc:8335
 #, gcc-internal-format, gfc-internal-format
 msgid "Out of bounds in IMAGE_INDEX at %L for dimension %d, SUB has %ld and COARRAY lower bound is %ld)"
 msgstr ""
 
-#: fortran/simplify.cc:8357
+#: fortran/simplify.cc:8358
 #, gcc-internal-format, gfc-internal-format
 msgid "Out of bounds in IMAGE_INDEX at %L for dimension %d, SUB has %ld and COARRAY upper bound is %ld)"
 msgstr ""
 
-#: fortran/simplify.cc:8841
+#: fortran/simplify.cc:8842
 #, gcc-internal-format
 msgid "Character %qs in string at %L cannot be converted into character kind %d"
 msgstr ""
@@ -76240,17 +76478,17 @@ msgstr "Odotettiin argumenttiluetteloa kohdassa %C"
 
 #. Problems occur when we get something like
 #. integer :: a(lots) = (/(i, i=1, lots)/)
-#: fortran/trans-array.cc:6285
+#: fortran/trans-array.cc:6292
 #, gcc-internal-format
 msgid "The number of elements in the array constructor at %L requires an increase of the allowed %d upper limit. See %<-fmax-array-constructor%> option"
 msgstr ""
 
-#: fortran/trans-array.cc:8456
+#: fortran/trans-array.cc:8463
 #, fuzzy, gcc-internal-format
 msgid "Creating array temporary at %L for argument %qs"
 msgstr "Luodaan väliaikainen komentotiedosto %s\n"
 
-#: fortran/trans-array.cc:11719
+#: fortran/trans-array.cc:11726
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "bad expression type during walk (%d)"
 msgstr "taulukon koko ei ole kokonaislukutyyppinen vakiolauseke"
@@ -76431,17 +76669,17 @@ msgstr "kirjoitussuojatun muuttujan %qs sijoitus"
 msgid "Sorry, coindexed access to an unlimited polymorphic component at %L is not supported"
 msgstr "kirjoitussuojatun muuttujan %qs sijoitus"
 
-#: fortran/trans-expr.cc:3878
+#: fortran/trans-expr.cc:3880
 #, fuzzy, gcc-internal-format
 msgid "Unknown intrinsic op"
 msgstr "last-op"
 
-#: fortran/trans-expr.cc:5396
+#: fortran/trans-expr.cc:5398
 #, gcc-internal-format, gfc-internal-format
 msgid "Unknown argument list function at %L"
 msgstr "Tuntematon argumenttiluettelofunktio kohdassa %L"
 
-#: fortran/trans-expr.cc:9991
+#: fortran/trans-expr.cc:9998
 #, gcc-internal-format, gfc-internal-format
 msgid "If bounds remapping is specified at %L, the pointer target shall not be NULL"
 msgstr ""
@@ -76457,12 +76695,12 @@ msgstr "Luontaisella ”%s” kohdassa %L ei voi olla alustinta"
 msgid "%<dim%> argument of %s intrinsic at %L is not a valid dimension index"
 msgstr "kääntäjänsisäisen ”%2$s”-funktion argumentti ”%1$s” kohdassa %3$L ei ole kelvollinen ulottuvuusindeksi"
 
-#: fortran/trans-intrinsic.cc:11852 fortran/trans-stmt.cc:1091
+#: fortran/trans-intrinsic.cc:11854 fortran/trans-stmt.cc:1100
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Sorry, the event component of derived type at %L is not yet supported"
 msgstr "kirjoitussuojatun muuttujan %qs sijoitus"
 
-#: fortran/trans-intrinsic.cc:11859
+#: fortran/trans-intrinsic.cc:11861
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "The event variable at %L shall not be coindexed"
 msgstr "%<__builtin_args_info%>-funktion argumentin pitää olla vakio"
@@ -76477,77 +76715,77 @@ msgstr ""
 msgid "Bad IO basetype (%d)"
 msgstr "%s: rivi %d: virheellinen komento ”%s”\n"
 
-#: fortran/trans-openmp.cc:824 fortran/trans-openmp.cc:1336
+#: fortran/trans-openmp.cc:829 fortran/trans-openmp.cc:1346
 #, gcc-internal-format
 msgid "Sorry, polymorphic arrays not yet supported for firstprivate"
 msgstr ""
 
-#: fortran/trans-openmp.cc:1490
+#: fortran/trans-openmp.cc:1500
 #, fuzzy, gcc-internal-format
 msgid "implicit mapping of assumed size array %qD"
 msgstr "vektoriylivuoto lausekkeessa"
 
-#: fortran/trans-openmp.cc:3072
+#: fortran/trans-openmp.cc:3082
 #, fuzzy, gcc-internal-format
 msgid "optional class parameter"
 msgstr "valinnainen argumentti"
 
-#: fortran/trans-openmp.cc:3388
+#: fortran/trans-openmp.cc:3399
 #, fuzzy, gcc-internal-format
 msgid "unhandled expression type"
 msgstr "odotettiin lauseketta"
 
-#: fortran/trans-openmp.cc:3542
+#: fortran/trans-openmp.cc:3553
 #, fuzzy, gcc-internal-format
 msgid "unhandled expression"
 msgstr "odotettiin lauseketta"
 
-#: fortran/trans-openmp.cc:7248
+#: fortran/trans-openmp.cc:7293
 #, fuzzy, gcc-internal-format
 msgid "gfc_trans_omp_workshare(): Bad statement code"
 msgstr "lauseella ei ole vaikutusta"
 
-#: fortran/trans-openmp.cc:7546
+#: fortran/trans-openmp.cc:7591
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "The base name for 'declare variant' must be specified at %L "
 msgstr "%Jlohkoattribuuttia ei voi määrittää paikalliselle muuttujalle"
 
-#: fortran/trans-openmp.cc:7556
+#: fortran/trans-openmp.cc:7601
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "The base name at %L does not match the name of the current procedure"
 msgstr "Odotettiin moduuliproseduurinimeä kohdassa %C"
 
-#: fortran/trans-openmp.cc:7559
+#: fortran/trans-openmp.cc:7604
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "The base name at %L must not be an entry name"
 msgstr "puhdistusargumentti ei ole tunniste"
 
-#: fortran/trans-openmp.cc:7562
+#: fortran/trans-openmp.cc:7607
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "The base name at %L must not be a generic name"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/trans-openmp.cc:7565
+#: fortran/trans-openmp.cc:7610
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "The base name at %L must not be a procedure pointer"
 msgstr "(%qs:n alustuksen lähistöllä)"
 
-#: fortran/trans-openmp.cc:7568
+#: fortran/trans-openmp.cc:7613
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "The base procedure at %L must have an explicit interface"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/trans-openmp.cc:7665
+#: fortran/trans-openmp.cc:7710
 #, fuzzy, gcc-internal-format
 msgid "Cannot find symbol %qs"
 msgstr "ei voi emuloida %qs"
 
-#: fortran/trans-openmp.cc:7676
+#: fortran/trans-openmp.cc:7721
 #, fuzzy, gcc-internal-format
 msgid "variant %qs at %L is not a function or subroutine"
 msgstr "muuttuvakokoista objektia ei voi alustaa"
 
-#: fortran/trans-openmp.cc:7688
+#: fortran/trans-openmp.cc:7733
 #, fuzzy, gcc-internal-format
 msgid "variant %qs and base %qs at %L have incompatible types: %s"
 msgstr "valitsimet -l ja -s eivät ole yhteensopivia"
@@ -76557,17 +76795,17 @@ msgstr "valitsimet -l ja -s eivät ole yhteensopivia"
 msgid "An alternate return at %L without a * dummy argument"
 msgstr "DATA-lause kohdassa %C ei ole sallittu PURE-proseduurissa"
 
-#: fortran/trans-stmt.cc:895
+#: fortran/trans-stmt.cc:904
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Sorry, the lock component of derived type at %L is not yet supported"
 msgstr "kirjoitussuojatun muuttujan %qs sijoitus"
 
-#: fortran/trans-stmt.cc:1354
+#: fortran/trans-stmt.cc:1363
 #, gcc-internal-format, gfc-internal-format
 msgid "Sorry, only support for integer kind %d implemented for image-set at %L"
 msgstr ""
 
-#: fortran/trans-stmt.cc:3622
+#: fortran/trans-stmt.cc:3631
 #, fuzzy, gcc-internal-format
 msgid "gfc_trans_select(): Bad type for case expr."
 msgstr "vektoriylivuoto lausekkeessa"
@@ -78065,6 +78303,18 @@ msgstr ""
 #~ msgstr "syntaksivirhe: näennäismuisti on myös lopussa"
 
 #, fuzzy
+#~ msgid "can%'t get position in PCH file: %m"
+#~ msgstr "%s: ei voida avata PCH-tiedostoa: %m\n"
+
+#, fuzzy
+#~ msgid "can%'t set position in PCH file: %m"
+#~ msgstr "%s: ei voida avata PCH-tiedostoa: %m\n"
+
+#, fuzzy
+#~ msgid "bad value (%qs) for %<-mtune=%> switch"
+#~ msgstr "virheellinen aikakatkaisuarvo: %s"
+
+#, fuzzy
 #~ msgid "__delay_cycles() only takes constant arguments"
 #~ msgstr "%qE-attribuutti sallii vain kokonaislukuvakioargumentin"
 
@@ -78239,6 +78489,14 @@ msgstr ""
 #~ msgstr "sisäistä funktiota %qs ei voi ottaa pois käytöstä"
 
 #, fuzzy
+#~ msgid "%<-mcmodel incompatible with other toc options%>"
+#~ msgstr "Muodostin %qs"
+
+#, fuzzy
+#~ msgid "unknown vectorization library ABI type (%qs) for %qs switch"
+#~ msgstr "epäkelpo osoitintila %qs"
+
+#, fuzzy
 #~ msgid "multiversioning needs ifunc which is not supported on this target"
 #~ msgstr "#pragma redefine_extname ei ole tuettu tällä kohteella"
 
@@ -78978,10 +79236,6 @@ msgstr ""
 #~ msgid "ASYNCHRONOUS= specifier at %L must be of default CHARACTER kind"
 #~ msgstr "ASYNCHRONOUS= määrite kohdassa %L täytyy olla alustuslauseke"
 
-#, fuzzy
-#~ msgid "ASYNCHRONOUS= specifier at %L must be scalar"
-#~ msgstr "ASYNCHRONOUS= määrite kohdassa %L täytyy olla alustuslauseke"
-
 #~ msgid "ASYNCHRONOUS= specifier at %L must be an initialization expression"
 #~ msgstr "ASYNCHRONOUS= määrite kohdassa %L täytyy olla alustuslauseke"
 
@@ -79783,10 +80037,6 @@ msgstr ""
 #~ msgstr "virheellinen ei-staattisen jäsenfunktion käyttö"
 
 #, fuzzy
-#~ msgid "%s is not in a class scope"
-#~ msgstr "%qT ei ole luokkatyyppi"
-
-#, fuzzy
 #~ msgid "class %s has no 'super'"
 #~ msgstr "%qs on ylivuotanut"