Update gcc .po files
[platform/upstream/gcc.git] / gcc / po / zh_CN.po
index accb625..4240e53 100644 (file)
@@ -33,7 +33,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: gcc 9.1.0\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: 2019-08-19 15:13-0400\n"
 "Last-Translator: Boyuan Yang <073plan@gmail.com>\n"
 "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
@@ -621,10 +621,10 @@ msgid "Warn about creation of array temporaries."
 msgstr "创建临时数组时给出警告"
 
 #: 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 "不起作用。为向前兼容保留的选项。"
@@ -1270,16 +1270,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 "不起作用。为向前兼容保留的选项。"
@@ -1532,2248 +1532,2248 @@ msgstr "-Wlarger-than=<N>\t当目标文件大于 N 字节时给出警告"
 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 "对不同枚举类型之间的比较给出警告"
 
-#: 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 multiple declarations of the same object"
 msgid "Warn about mismatched declarations of array parameters and unsafe accesses to them."
 msgstr "对同一个对象多次声明时给出警告"
 
-#: c-family/c.opt:367
+#: c-family/c.opt:363
 #, fuzzy, no-c-format
 #| msgid "Warn about zero-length formats"
 msgid "Warn about accesses to interior zero-length array members."
 msgstr "对长度为 0 的格式字符串给出警告"
 
-#: c-family/c.opt:371
+#: c-family/c.opt:367
 #, fuzzy, no-c-format
 #| msgid "Warn whenever an Objective-C assignment is being intercepted by the garbage collector"
 msgid "Warn whenever an Objective-C assignment is being intercepted by the garbage collector."
 msgstr "当 Objective-C 赋值可能为垃圾回收所介入时给出警告"
 
-#: c-family/c.opt:375
+#: c-family/c.opt:371
 #, fuzzy, no-c-format
 #| msgid "Warn about casting functions to incompatible types"
 msgid "Warn about casting functions to incompatible types."
 msgstr "当把函数转换为不兼容类型时给出警告"
 
-#: 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 "对被截断的字符表达式给出警告"
 
-#: 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 an inlined function cannot be inlined"
 msgid "Warn when a built-in function is declared with the wrong signature."
 msgstr "当内联函数无法被内联时给出警告"
 
-#: 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"
 msgid "Warn when a built-in preprocessor macro is undefined or redefined."
 msgstr "当内建预处理宏未定义或重定义时给出警告"
 
-#: c-family/c.opt:426
+#: c-family/c.opt:422
 #, fuzzy, no-c-format
 msgid "Warn about features not present in ISO C11, but present in ISO C2X."
 msgstr "使用了传统 C 不支持的特性时给出警告"
 
-#: c-family/c.opt:430
+#: c-family/c.opt:426
 #, fuzzy, no-c-format
 msgid "Warn about features not present in ISO C90, but present in ISO C99."
 msgstr "使用了传统 C 不支持的特性时给出警告"
 
-#: c-family/c.opt:434
+#: c-family/c.opt:430
 #, fuzzy, no-c-format
 msgid "Warn about features not present in ISO C99, but present in ISO C11."
 msgstr "使用了传统 C 不支持的特性时给出警告"
 
-#: c-family/c.opt:438
+#: c-family/c.opt:434
 #, fuzzy, no-c-format
 #| msgid "Warn about C constructs that are not in the common subset of C and C++"
 msgid "Warn about C constructs that are not in the common subset of C and C++."
 msgstr "当在 C 语言中使用了 C 与 C++ 交集以外的构造时给出警告"
 
-#: c-family/c.opt:445
+#: c-family/c.opt:441
 #, fuzzy, no-c-format
 msgid "Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO C++ 2011."
 msgstr "当 C++ 构造的意义在 ISO C++ 1998 和 ISO C++ 200x 中不同时给出警告"
 
-#: c-family/c.opt:449
+#: c-family/c.opt:445
 #, fuzzy, no-c-format
 msgid "Warn about C++ constructs whose meaning differs between ISO C++ 2011 and ISO C++ 2014."
 msgstr "当 C++ 构造的意义在 ISO C++ 1998 和 ISO C++ 200x 中不同时给出警告"
 
-#: c-family/c.opt:456
+#: c-family/c.opt:452
 #, fuzzy, no-c-format
 msgid "Warn about C++ constructs whose meaning differs between ISO C++ 2014 and ISO C++ 2017."
 msgstr "当 C++ 构造的意义在 ISO C++ 1998 和 ISO C++ 200x 中不同时给出警告"
 
-#: 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 "当 C++ 构造的意义在 ISO C++ 1998 和 ISO C++ 200x 中不同时给出警告"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Warn about casting functions to incompatible types"
 msgid "Warn about casts between incompatible function types."
 msgstr "当把函数转换为不兼容类型时给出警告"
 
-#: c-family/c.opt:491
+#: c-family/c.opt:487
 #, fuzzy, no-c-format
 #| msgid "Warn about casts which discard qualifiers"
 msgid "Warn about casts which discard qualifiers."
 msgstr "当类型转换丢失限定信息时给出警告"
 
-#: 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 comparison of different enum types"
 msgid "Warn about catch handlers of non-reference type."
 msgstr "对不同枚举类型之间的比较给出警告"
 
-#: c-family/c.opt:503
+#: c-family/c.opt:499
 #, fuzzy, no-c-format
 #| msgid "Warn about subscripts whose type is \"char\""
 msgid "Warn about subscripts whose type is \"char\"."
 msgstr "当下标类型为“char”时给出警告"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Deprecated.  This switch has no effect"
 msgid "Removed in GCC 9.  This switch has no effect."
 msgstr "已弃用。此开关不起作用。"
 
-#: c-family/c.opt:511
+#: c-family/c.opt:507
 #, fuzzy, no-c-format
 #| msgid "Warn about variables that might be changed by \"longjmp\" or \"vfork\""
 msgid "Warn about variables that might be changed by \"longjmp\" or \"vfork\"."
 msgstr "对能为\"longjmp\"或\"vfork\"所篡改的变量给出警告"
 
-#: c-family/c.opt:515
+#: c-family/c.opt:511
 #, fuzzy, no-c-format
 #| msgid "Warn about overflow in arithmetic expressions"
 msgid "Warn about uses of a comma operator within a subscripting expression."
 msgstr "算术表示式溢出时给出警告"
 
-#: c-family/c.opt:519
+#: c-family/c.opt:515
 #, fuzzy, no-c-format
 #| msgid "Warn about possibly nested block comments, and C++ comments spanning more than one physical line"
 msgid "Warn about possibly nested block comments, and C++ comments spanning more than one physical line."
 msgstr "对可能嵌套的注释和长度超过一个物理行长的 C++ 注释给出警告"
 
-#: c-family/c.opt:523
+#: c-family/c.opt:519
 #, no-c-format
 msgid "Synonym for -Wcomment."
 msgstr "-Wcomment 的同义词。"
 
-#: c-family/c.opt:527
+#: c-family/c.opt:523
 #, fuzzy, no-c-format
 msgid "Warn for conditionally-supported constructs."
 msgstr "对“可疑”的构造给出警告"
 
-#: c-family/c.opt:531
+#: c-family/c.opt:527
 #, fuzzy, no-c-format
 #| msgid "Warn for implicit type conversions that may change a value"
 msgid "Warn for implicit type conversions that may change a value."
 msgstr "当隐式类型转换可能改变值时给出警告"
 
-#: c-family/c.opt:535
+#: c-family/c.opt:531
 #, fuzzy, no-c-format
 #| msgid "Warn for converting NULL from/to a non-pointer type"
 msgid "Warn for converting NULL from/to a non-pointer type."
 msgstr "将 NULL 转换为非指针类型时给出警告"
 
-#: 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不是类型%qT的有效模板实参,因为对象%qD没有外部链接"
 
-#: c-family/c.opt:548
+#: c-family/c.opt:544
 #, fuzzy, no-c-format
 #| msgid "Warn when all constructors and destructors are private"
 msgid "Warn when all constructors and destructors are private."
 msgstr "当所有构造函数和析构函数都是私有时给出警告"
 
-#: c-family/c.opt:552
+#: c-family/c.opt:548
 #, fuzzy, no-c-format
 #| msgid "Warn about implicit declarations"
 msgid "Warn about dangling else."
 msgstr "对隐式函数声明给出警告"
 
-#: 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 ""
 
-#: c-family/c.opt:568
+#: c-family/c.opt:564
 #, fuzzy, no-c-format
 #| msgid "Warn when a declaration is found after a statement"
 msgid "Warn when a declaration is found after a statement."
 msgstr "当声明出现在语句后时给出警告"
 
-#: c-family/c.opt:572
+#: c-family/c.opt:568
 #, fuzzy, no-c-format
 msgid "Warn when deleting a pointer to incomplete type."
 msgstr "提领指向不完全类型的指针"
 
-#: c-family/c.opt:576
+#: c-family/c.opt:572
 #, fuzzy, no-c-format
 msgid "Warn about deleting polymorphic objects with non-virtual destructors."
 msgstr "当析构函数不是虚函数时给出警告"
 
-#: 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 "对被截断的字符表达式给出警告"
 
-#: 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 "若初始值设定项中可能缺少花括号则给出警告"
 
-#: 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 "当改变成员函数指针的类型时给出警告"
 
-#: c-family/c.opt:611
+#: c-family/c.opt:607
 #, fuzzy, no-c-format
 msgid "Warn if type qualifiers on pointers are discarded."
 msgstr "当改变成员函数指针的类型时给出警告"
 
-#: c-family/c.opt:615
+#: c-family/c.opt:611
 #, fuzzy, no-c-format
 #| msgid "Warn about compile-time integer division by zero"
 msgid "Warn about compile-time integer division by zero."
 msgstr "对编译时发现的零除给出警告"
 
-#: c-family/c.opt:619
+#: c-family/c.opt:615
 #, fuzzy, no-c-format
 #| msgid "Warn about an empty body in an if or else statement"
 msgid "Warn about duplicated branches in if-else statements."
 msgstr "当 if 或 else 语句体为空时给出警告"
 
-#: 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 ""
 
-#: c-family/c.opt:627
+#: c-family/c.opt:623
 #, fuzzy, no-c-format
 #| msgid "Warn about violations of Effective C++ style rules"
 msgid "Warn about violations of Effective C++ style rules."
 msgstr "对不遵循《Effetive C++》的风格给出警告"
 
-#: c-family/c.opt:631
+#: c-family/c.opt:627
 #, fuzzy, no-c-format
 #| msgid "Warn about an empty body in an if or else statement"
 msgid "Warn about an empty body in an if or else statement."
 msgstr "当 if 或 else 语句体为空时给出警告"
 
-#: c-family/c.opt:635
+#: c-family/c.opt:631
 #, fuzzy, no-c-format
 #| msgid "Warn about stray tokens after #elif and #endif"
 msgid "Warn about stray tokens after #else and #endif."
 msgstr "当 #elif 和 #endif 后面跟有其他标识符时给出警告"
 
-#: c-family/c.opt:639
+#: c-family/c.opt:635
 #, fuzzy, no-c-format
 #| msgid "Warn about comparison of different enum types"
 msgid "Warn about comparison of different enum types."
 msgstr "对不同枚举类型之间的比较给出警告"
 
-#: c-family/c.opt:643
+#: c-family/c.opt:639
 #, fuzzy, no-c-format
 #| msgid "Warn about most implicit conversions"
 msgid "Warn about implicit conversion of enum types."
 msgstr "对大多数隐式类型转换给出警告"
 
-#: 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"
 msgid "This switch is deprecated; use -Werror=implicit-function-declaration instead."
 msgstr "已弃用此开关;请改用 -Werror=implicit-function-declaration"
 
-#: c-family/c.opt:655
+#: c-family/c.opt:651
 #, fuzzy, no-c-format
 #| msgid "Warn when one local variable shadows another"
 msgid "Warn when an exception handler is shadowed by another handler."
 msgstr "当一个局部变量掩盖了另一个局部变量时给出警告"
 
-#: c-family/c.opt:663
+#: c-family/c.opt:659
 #, fuzzy, no-c-format
 #| msgid "Warn about implicit function declarations"
 msgid "Warn about semicolon after in-class function definition."
 msgstr "对隐式函数声明给出警告"
 
-#: c-family/c.opt:667
+#: c-family/c.opt:663
 #, fuzzy, no-c-format
 msgid "Warn for implicit type conversions that cause loss of floating point precision."
 msgstr "当隐式类型转换可能改变值时给出警告"
 
-#: c-family/c.opt:671
+#: c-family/c.opt:667
 #, fuzzy, no-c-format
 #| msgid "Warn if testing floating point numbers for equality"
 msgid "Warn if testing floating point numbers for equality."
 msgstr "当比较浮点数是否相等时给出警告"
 
-#: c-family/c.opt:675 c-family/c.opt:721
+#: c-family/c.opt:671 c-family/c.opt:717
 #, fuzzy, no-c-format
 #| msgid "Warn about printf/scanf/strftime/strfmon format string anomalies"
 msgid "Warn about printf/scanf/strftime/strfmon format string anomalies."
 msgstr "对 printf/scanf/strftime/strfmon 中的格式字符串异常给出警告"
 
-#: c-family/c.opt:679
+#: c-family/c.opt:675
 #, fuzzy, no-c-format
 #| msgid "Warn about format strings that contain NUL bytes"
 msgid "Warn about format strings that contain NUL bytes."
 msgstr "当格式字符串包含 NUL 字节时给出警告"
 
-#: c-family/c.opt:683
+#: c-family/c.opt:679
 #, fuzzy, no-c-format
 #| msgid "Warn about format strings that are not literals"
 msgid "Warn about GCC format strings with strings unsuitable for diagnostics."
 msgstr "当格式字符串不是字面量时给出警告"
 
-#: 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"
 msgid "Warn if passing too many arguments to a function for its format string."
 msgstr "当传递给格式字符串的参数太多时给出警告"
 
-#: c-family/c.opt:691
+#: c-family/c.opt:687
 #, fuzzy, no-c-format
 #| msgid "Warn about format strings that are not literals"
 msgid "Warn about format strings that are not literals."
 msgstr "当格式字符串不是字面量时给出警告"
 
-#: c-family/c.opt:695
+#: c-family/c.opt:691
 #, no-c-format
 msgid "Warn about function calls with format strings that write past the end of the destination region.  Same as -Wformat-overflow=1."
 msgstr ""
 
-#: c-family/c.opt:700
+#: c-family/c.opt:696
 #, fuzzy, no-c-format
 #| msgid "Warn about possible security problems with format functions"
 msgid "Warn about possible security problems with format functions."
 msgstr "当使用格式字符串的函数可能导致安全问题时给出警告"
 
-#: c-family/c.opt:704
+#: c-family/c.opt:700
 #, fuzzy, no-c-format
 msgid "Warn about sign differences with format functions."
 msgstr "当使用格式字符串的函数可能导致安全问题时给出警告"
 
-#: c-family/c.opt:708
+#: c-family/c.opt:704
 #, no-c-format
 msgid "Warn about calls to snprintf and similar functions that truncate output. Same as -Wformat-truncation=1."
 msgstr ""
 
-#: c-family/c.opt:713
+#: c-family/c.opt:709
 #, fuzzy, no-c-format
 #| msgid "Warn about strftime formats yielding 2-digit years"
 msgid "Warn about strftime formats yielding 2-digit years."
 msgstr "当 strftime 格式给出 2 位记年时给出警告"
 
-#: c-family/c.opt:717
+#: c-family/c.opt:713
 #, fuzzy, no-c-format
 #| msgid "Warn about zero-length formats"
 msgid "Warn about zero-length formats."
 msgstr "对长度为 0 的格式字符串给出警告"
 
-#: c-family/c.opt:725
+#: c-family/c.opt:721
 #, no-c-format
 msgid "Warn about function calls with format strings that write past the end of the destination region."
 msgstr ""
 
-#: c-family/c.opt:730
+#: c-family/c.opt:726
 #, fuzzy, no-c-format
 #| msgid "Warn about casting functions to incompatible types"
 msgid "Warn about calls to snprintf and similar functions that truncate output."
 msgstr "当把函数转换为不兼容类型时给出警告"
 
-#: c-family/c.opt:734
+#: c-family/c.opt:730
 #, fuzzy, no-c-format
 #| msgid "Warn when a Cell microcoded instruction is emitted"
 msgid "Warn when the field in a struct is not aligned."
 msgstr "生成 Cell 微代码时给出警告"
 
-#: c-family/c.opt:738
+#: c-family/c.opt:734
 #, no-c-format
 msgid "Warn whenever type qualifiers are ignored."
 msgstr "当类型限定符被忽略时给出警告。"
 
-#: c-family/c.opt:742
+#: c-family/c.opt:738
 #, fuzzy, no-c-format
 #| msgid "Warn whenever type qualifiers are ignored."
 msgid "Warn whenever attributes are ignored."
 msgstr "当类型限定符被忽略时给出警告。"
 
-#: c-family/c.opt:746
+#: c-family/c.opt:742
 #, fuzzy, no-c-format
 #| msgid "direct base %qT inaccessible in %qT due to ambiguity"
 msgid "Warn when a base is inaccessible in derived due to ambiguity."
 msgstr "由于存在歧义,直接基类%qT在%qT中无法访问"
 
-#: 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 "提领指向不完全类型的指针"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Warn about variables which are initialized to themselves"
 msgid "Warn about variables which are initialized to themselves."
 msgstr "对初始化为自身的变量给出警告。"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Warn about implicit declarations"
 msgid "Warn about implicit declarations."
 msgstr "对隐式函数声明给出警告"
 
-#: c-family/c.opt:783
+#: c-family/c.opt:779
 #, fuzzy, no-c-format
 #| msgid "Warn about implicit conversions from \"float\" to \"double\""
 msgid "Warn about implicit conversions from \"float\" to \"double\"."
 msgstr "对从“float”到“double”的隐式转换给出警告"
 
-#: c-family/c.opt:787
+#: c-family/c.opt:783
 #, fuzzy, no-c-format
 #| msgid "Warn if an undefined macro is used in an #if directive"
 msgid "Warn if \"defined\" is used outside #if."
 msgstr "当 #if 指令中用到未定义的宏时给出警告"
 
-#: c-family/c.opt:791
+#: c-family/c.opt:787
 #, fuzzy, no-c-format
 #| msgid "Warn about implicit function declarations"
 msgid "Warn about implicit function declarations."
 msgstr "对隐式函数声明给出警告"
 
-#: c-family/c.opt:795
+#: c-family/c.opt:791
 #, fuzzy, no-c-format
 #| msgid "Warn when a declaration does not specify a type"
 msgid "Warn when a declaration does not specify a type."
 msgstr "当声明未指定类型时给出警告"
 
-#: 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
 #, no-c-format
 msgid "Warn for suspicious integer expressions in boolean context."
 msgstr ""
 
-#: c-family/c.opt:814
+#: c-family/c.opt:810
 #, fuzzy, no-c-format
 #| msgid "Warn when there is a cast to a pointer from an integer of a different size"
 msgid "Warn when there is a cast to a pointer from an integer of a different size."
 msgstr "当将一个大小不同的整数转换为指针时给出警告"
 
-#: c-family/c.opt:818
+#: c-family/c.opt:814
 #, fuzzy, no-c-format
 #| msgid "Warn about invalid uses of the \"offsetof\" macro"
 msgid "Warn about invalid uses of the \"offsetof\" macro."
 msgstr "对“offsetof”宏无效的使用给出警告"
 
-#: c-family/c.opt:822
+#: c-family/c.opt:818
 #, fuzzy, no-c-format
 #| msgid "Warn about PCH files that are found but not used"
 msgid "Warn about PCH files that are found but not used."
 msgstr "在找到了 PCH 文件但未使用的情况给出警告"
 
-#: c-family/c.opt:826
+#: c-family/c.opt:822
 #, fuzzy, no-c-format
 #| msgid "Warn when a jump misses a variable initialization"
 msgid "Warn when a jump misses a variable initialization."
 msgstr "当跳转略过变量初始化时给出警告"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Warn when a logical operator is suspiciously always evaluating to true or false"
 msgid "Warn when a logical operator is suspiciously always evaluating to true or false."
 msgstr "当逻辑操作结果似乎总为真或假时给出警告"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Do not warn about using \"long long\" when -pedantic"
 msgid "Do not warn about using \"long long\" when -pedantic."
 msgstr "当使用 -pedantic 时不对“long long”给出警告"
 
-#: c-family/c.opt:846
+#: c-family/c.opt:842
 #, fuzzy, no-c-format
 #| msgid "Warn about suspicious declarations of \"main\""
 msgid "Warn about suspicious declarations of \"main\"."
 msgstr "对可疑的“main”声明给出警告"
 
-#: 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 packed attribute has no effect on struct layout"
 msgid "Warn when the indentation of the code does not reflect the block structure."
 msgstr "当 packed 属性对结构布局不起作用时给出警告"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Warn about possibly missing braces around initializers"
 msgid "Warn about possibly missing braces around initializers."
 msgstr "若初始值设定项中可能缺少花括号则给出警告"
 
-#: c-family/c.opt:884
+#: c-family/c.opt:880
 #, fuzzy, no-c-format
 #| msgid "Warn about global functions without previous declarations"
 msgid "Warn about global functions without previous declarations."
 msgstr "当全局函数没有前向声明时给出警告"
 
-#: c-family/c.opt:888
+#: c-family/c.opt:884
 #, fuzzy, no-c-format
 #| msgid "Warn about missing fields in struct initializers"
 msgid "Warn about missing fields in struct initializers."
 msgstr "若结构初始值设定项中缺少字段则给出警告"
 
-#: 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 "可能缺少括号的情况下给出警告"
 
-#: 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 ""
 
-#: c-family/c.opt:908
+#: c-family/c.opt:904
 #, no-c-format
 msgid "Warn on namespace definition."
 msgstr ""
 
-#: c-family/c.opt:912
+#: c-family/c.opt:908
 #, no-c-format
 msgid "Warn when fields in a struct with the packed attribute are misaligned."
 msgstr ""
 
-#: 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 "若结构初始值设定项中缺少字段则给出警告"
 
-#: 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
 #, no-c-format
 msgid "Warn about buffer overflow in string manipulation functions like memcpy and strcpy."
 msgstr ""
 
-#: c-family/c.opt:956
+#: c-family/c.opt:952
 #, no-c-format
 msgid "Under the control of Object Size type, warn about buffer overflow in string manipulation functions like memcpy and strcpy."
 msgstr ""
 
-#: c-family/c.opt:961
+#: c-family/c.opt:957
 #, no-c-format
 msgid "Warn about reading past the end of a source array in string manipulation functions like memchr and memcpy."
 msgstr ""
 
-#: c-family/c.opt:965
+#: c-family/c.opt:961
 #, no-c-format
 msgid "Warn about truncation in string manipulation functions like strncat and strncpy."
 msgstr ""
 
-#: 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"
 msgid "Warn about functions which might be candidates for format attributes."
 msgstr "当函数可能是 format 属性的备选时给出警告"
 
-#: 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"
 msgid "Warn about enumerated switches, with no default, missing a case."
 msgstr "当使用枚举类型作为开关变量,没有提供 default 分支,但又缺少某个 case 时给出警告"
 
-#: c-family/c.opt:982
+#: c-family/c.opt:978
 #, fuzzy, no-c-format
 #| msgid "Warn about enumerated switches missing a \"default:\" statement"
 msgid "Warn about enumerated switches missing a \"default:\" statement."
 msgstr "当使用枚举类型作为开关变量,但没有提供“default”分支时给出警告"
 
-#: c-family/c.opt:986
+#: c-family/c.opt:982
 #, fuzzy, no-c-format
 #| msgid "Warn about all enumerated switches missing a specific case"
 msgid "Warn about all enumerated switches missing a specific case."
 msgstr "当使用枚举类型作为开关变量但又缺少某个 case 时给出警告"
 
-#: c-family/c.opt:990
+#: c-family/c.opt:986
 #, fuzzy, no-c-format
 msgid "Warn about switches with boolean controlling expression."
 msgstr "对被截断的字符表达式给出警告"
 
-#: 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 "for template declaration %q+D"
 msgid "Warn on primary template declaration."
 msgstr "对于模板声明%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"
 msgid "Warn about user-specified include directories that do not exist."
 msgstr "当用户给定的包含目录不存在时给出警告"
 
-#: c-family/c.opt:1015
+#: c-family/c.opt:1011
 #, fuzzy, no-c-format
 #| msgid "Warn about function parameters declared without a type specifier in K&R-style functions"
 msgid "Warn about function parameters declared without a type specifier in K&R-style functions."
 msgstr "K&R 风格函数参数声明中未指定类型限定符时给出警告"
 
-#: c-family/c.opt:1019
+#: c-family/c.opt:1015
 #, fuzzy, no-c-format
 #| msgid "Warn about global functions without prototypes"
 msgid "Warn about global functions without prototypes."
 msgstr "全局函数没有原型时给出警告"
 
-#: c-family/c.opt:1026
+#: c-family/c.opt:1022
 #, fuzzy, no-c-format
 #| msgid "Warn about use of multi-character character constants"
 msgid "Warn about use of multi-character character constants."
 msgstr "使用多字节字符集的字符常量时给出警告"
 
-#: 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 "警告关于 narrowing 转换在之内 {} 所不当形式的在中 C++11"
 
-#: c-family/c.opt:1034
+#: c-family/c.opt:1030
 #, fuzzy, no-c-format
 #| msgid "Warn about \"extern\" declarations not at file scope"
 msgid "Warn about \"extern\" declarations not at file scope."
 msgstr "当“extern”声明不在文件作用域时给出警告"
 
-#: c-family/c.opt:1038
+#: c-family/c.opt:1034
 #, fuzzy, no-c-format
 msgid "Warn when a noexcept expression evaluates to false even though the expression can't actually throw."
 msgstr "警告时 noexcept 运算式评估到假甚至虽然运算式无法实际的丢掷"
 
-#: 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"
 msgid "Warn when non-templatized friend functions are declared within a template."
 msgstr "在模板内声明未模板化的友元函数时给出警告"
 
-#: c-family/c.opt:1050
+#: c-family/c.opt:1046
 #, fuzzy, no-c-format
 #| msgid "conversion to void will never use a type conversion operator"
 msgid "Warn when a conversion function will never be called due to the type it converts to."
 msgstr "向 void 的转换永远不会用到类型转换运算符"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Warn about non-virtual destructors"
 msgid "Warn about non-virtual destructors."
 msgstr "当析构函数不是虚函数时给出警告"
 
-#: c-family/c.opt:1062
+#: c-family/c.opt:1058
 #, fuzzy, no-c-format
 #| msgid "Warn about NULL being passed to argument slots marked as requiring non-NULL"
 msgid "Warn about NULL being passed to argument slots marked as requiring non-NULL."
 msgstr "当将 NULL 传递给需要非 NULL 的参数的函数时给出警告"
 
-#: c-family/c.opt:1078
+#: c-family/c.opt:1074
 #, fuzzy, no-c-format
 msgid "-Wnormalized=[none|id|nfc|nfkc]\tWarn about non-normalized Unicode strings."
 msgstr "-Wnormalized=<id|nfc|nfkc>\t对未归一化的 Unicode 字符串给出警告"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Warn if a C-style cast is used in a program"
 msgid "Warn if a C-style cast is used in a program."
 msgstr "程序使用 C 风格的类型转换时给出警告"
 
-#: c-family/c.opt:1110
+#: c-family/c.opt:1106
 #, fuzzy, no-c-format
 #| msgid "Warn for obsolescent usage in a declaration"
 msgid "Warn for obsolescent usage in a declaration."
 msgstr "对声明中的过时用法给出警告"
 
-#: c-family/c.opt:1114
+#: c-family/c.opt:1110
 #, fuzzy, no-c-format
 #| msgid "Warn if an old-style parameter definition is used"
 msgid "Warn if an old-style parameter definition is used."
 msgstr "使用旧式形参定义时给出警告"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Warn if a string is longer than the maximum portable length specified by the standard"
 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
 #, fuzzy, no-c-format
 #| msgid "Warn about overloaded virtual function names"
 msgid "Warn about overloaded virtual function names."
 msgstr "重载虚函数名时给出警告"
 
-#: c-family/c.opt:1134
+#: c-family/c.opt:1130
 #, fuzzy, no-c-format
 #| msgid "Warn about overriding initializers without side effects"
 msgid "Warn about overriding initializers without side effects."
 msgstr "覆盖无副作用的初始值设定时给出警告"
 
-#: c-family/c.opt:1138
+#: c-family/c.opt:1134
 #, fuzzy, no-c-format
 #| msgid "Warn about overriding initializers without side effects"
 msgid "Warn about overriding initializers with side effects."
 msgstr "覆盖无副作用的初始值设定时给出警告"
 
-#: c-family/c.opt:1142
+#: c-family/c.opt:1138
 #, fuzzy, no-c-format
 #| msgid "Warn about packed bit-fields whose offset changed in GCC 4.4"
 msgid "Warn about packed bit-fields whose offset changed in GCC 4.4."
 msgstr "当紧实位段的偏移量因 GCC 4.4 而改变时给出警告"
 
-#: c-family/c.opt:1146
+#: c-family/c.opt:1142
 #, fuzzy, no-c-format
 #| msgid "Warn about possibly missing parentheses"
 msgid "Warn about possibly missing parentheses."
 msgstr "可能缺少括号的情况下给出警告"
 
-#: 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"
 msgid "Warn when converting the type of pointers to member functions."
 msgstr "当改变成员函数指针的类型时给出警告"
 
-#: c-family/c.opt:1162
+#: c-family/c.opt:1158
 #, fuzzy, no-c-format
 #| msgid "Warn about function pointer arithmetic"
 msgid "Warn about function pointer arithmetic."
 msgstr "当在算术表达式中使用函数指针时给出警告"
 
-#: 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"
 msgid "Warn when a pointer differs in signedness in an assignment."
 msgstr "赋值时如指针符号不一致则给出警告"
 
-#: c-family/c.opt:1170
+#: c-family/c.opt:1166
 #, fuzzy, no-c-format
 #| msgid "Warn about use of multi-character character constants"
 msgid "Warn when a pointer is compared with a zero character constant."
 msgstr "使用多字节字符集的字符常量时给出警告"
 
-#: c-family/c.opt:1174
+#: c-family/c.opt:1170
 #, fuzzy, no-c-format
 #| msgid "Warn when a pointer is cast to an integer of a different size"
 msgid "Warn when a pointer is cast to an integer of a different size."
 msgstr "将一个指针转换为大小不同的整数时给出警告"
 
-#: c-family/c.opt:1178
+#: c-family/c.opt:1174
 #, fuzzy, no-c-format
 #| msgid "Warn about misuses of pragmas"
 msgid "Warn about misuses of pragmas."
 msgstr "对错误使用的 pragma 加以警告"
 
-#: 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
 #, fuzzy, no-c-format
 msgid "Warn if a property for an Objective-C object has no assign semantics specified."
 msgstr "警告如果内容用于 Objective-C 对象没有任何指派语意指定的"
 
-#: c-family/c.opt:1190
+#: c-family/c.opt:1186
 #, fuzzy, no-c-format
 #| msgid "Warn if inherited methods are unimplemented"
 msgid "Warn if inherited methods are unimplemented."
 msgstr "当继承来的方法未被实现时给出警告"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Warn about multiple declarations of the same object"
 msgid "Warn about multiple declarations of the same object."
 msgstr "对同一个对象多次声明时给出警告"
 
-#: c-family/c.opt:1206
+#: c-family/c.opt:1202
 #, no-c-format
 msgid "Warn about redundant calls to std::move."
 msgstr ""
 
-#: c-family/c.opt:1210
+#: c-family/c.opt:1206
 #, fuzzy, no-c-format
 #| msgid "Warn about misuses of pragmas"
 msgid "Warn about uses of register storage specifier."
 msgstr "对错误使用的 pragma 加以警告"
 
-#: c-family/c.opt:1214
+#: c-family/c.opt:1210
 #, fuzzy, no-c-format
 #| msgid "Warn when the compiler reorders code"
 msgid "Warn when the compiler reorders code."
 msgstr "编译器将代码重新排序时给出警告"
 
-#: c-family/c.opt:1218
+#: c-family/c.opt:1214
 #, fuzzy, no-c-format
 #| msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)"
 msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)."
 msgstr "当 C 函数的返回值默认为“int”,或者 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"
 msgid "Warn if a selector has multiple methods."
 msgstr "当选择子有多个方法时给出警告"
 
-#: c-family/c.opt:1230
+#: c-family/c.opt:1226
 #, fuzzy, no-c-format
 #| msgid "Warn about possible violations of sequence point rules"
 msgid "Warn about possible violations of sequence point rules."
 msgstr "当可能违反定序点规则时给出警告"
 
-#: c-family/c.opt:1234
+#: c-family/c.opt:1230
 #, fuzzy, no-c-format
 msgid "Warn if a local declaration hides an instance variable."
 msgstr "%qE的局部声明隐藏了实例变量"
 
-#: c-family/c.opt:1238 c-family/c.opt:1242
+#: c-family/c.opt:1234 c-family/c.opt:1238
 #, no-c-format
 msgid "Warn if left shift of a signed value overflows."
 msgstr ""
 
-#: c-family/c.opt:1246
+#: c-family/c.opt:1242
 #, fuzzy, no-c-format
 msgid "Warn if shift count is negative."
 msgstr "右移次数为负"
 
-#: c-family/c.opt:1250
+#: c-family/c.opt:1246
 #, fuzzy, no-c-format
 msgid "Warn if shift count >= width of type."
 msgstr "右移次数大于或等于类型宽度"
 
-#: c-family/c.opt:1254
+#: c-family/c.opt:1250
 #, fuzzy, no-c-format
 msgid "Warn if left shifting a negative value."
 msgstr "右移次数为负"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Warn about signed-unsigned comparisons"
 msgid "Warn about signed-unsigned comparisons."
 msgstr "在有符号和无符号数间进行比较时给出警告"
 
-#: 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"
 msgid "Warn for implicit type conversions between signed and unsigned integers."
 msgstr "为有符号和无符号整数间的隐式类型转换给出警告"
 
-#: c-family/c.opt:1274
+#: c-family/c.opt:1270
 #, fuzzy, no-c-format
 #| msgid "Warn when overload promotes from unsigned to signed"
 msgid "Warn when overload promotes from unsigned to signed."
 msgstr "当重载将无符号数提升为有符号数时给出警告"
 
-#: c-family/c.opt:1278
+#: c-family/c.opt:1274
 #, fuzzy, no-c-format
 #| msgid "Warn about uncasted NULL used as sentinel"
 msgid "Warn about uncasted NULL used as sentinel."
 msgstr "将未作转换的 NULL 用作哨兵时给出警告"
 
-#: c-family/c.opt:1282
+#: c-family/c.opt:1278
 #, fuzzy, no-c-format
 #| msgid "Warn about unprototyped function declarations"
 msgid "Warn about unprototyped function declarations."
 msgstr "使用了非原型的函数声明时给出警告"
 
-#: c-family/c.opt:1294
+#: c-family/c.opt:1290
 #, fuzzy, no-c-format
 #| msgid "Warn if type signatures of candidate methods do not match exactly"
 msgid "Warn if type signatures of candidate methods do not match exactly."
 msgstr "当备选方法的类型签字不完全匹配时给出警告"
 
-#: c-family/c.opt:1298
+#: c-family/c.opt:1294
 #, fuzzy, no-c-format
 #| msgid "Warn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions are used"
 msgid "Warn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions are used."
 msgstr "当 __sync_fetch_and_nand 和 __sync_nand_and_fetch 内建函数被使用时给出警告"
 
-#: c-family/c.opt:1302
+#: c-family/c.opt:1298
 #, fuzzy, no-c-format
 #| msgid "Deprecated.  This switch has no effect"
 msgid "Deprecated.  This switch has no effect."
 msgstr "已弃用。此开关不起作用。"
 
-#: c-family/c.opt:1310
+#: c-family/c.opt:1306
 #, fuzzy, no-c-format
 #| msgid "Warn when a logical operator is suspiciously always evaluating to true or false"
 msgid "Warn if a comparison always evaluates to true or false."
 msgstr "当逻辑操作结果似乎总为真或假时给出警告"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Warn about features not present in traditional C"
 msgid "Warn about features not present in traditional C."
 msgstr "使用了传统 C 不支持的特性时给出警告"
 
-#: c-family/c.opt:1322
+#: c-family/c.opt:1318
 #, fuzzy, no-c-format
 #| msgid "Warn of prototypes causing type conversions different from what would happen in the absence of prototype"
 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
 #, fuzzy, no-c-format
 #| msgid "Warn if trigraphs are encountered that might affect the meaning of the program"
 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"
 msgid "Warn about @selector()s without previously declared methods."
 msgstr "当使用 @selector() 却不作事先声明时给出警告"
 
-#: c-family/c.opt:1334
+#: c-family/c.opt:1330
 #, fuzzy, no-c-format
 #| msgid "Warn if an undefined macro is used in an #if directive"
 msgid "Warn if an undefined macro is used in an #if directive."
 msgstr "当 #if 指令中用到未定义的宏时给出警告"
 
-#: c-family/c.opt:1346
+#: c-family/c.opt:1342
 #, fuzzy, no-c-format
 #| msgid "Warn about unrecognized pragmas"
 msgid "Warn about unrecognized pragmas."
 msgstr "对无法识别的 pragma 加以警告"
 
-#: c-family/c.opt:1350
+#: c-family/c.opt:1346
 #, fuzzy, no-c-format
 #| msgid "Warn about unsuffixed float constants"
 msgid "Warn about unsuffixed float constants."
 msgstr "对不带后缀的浮点常量给出警告"
 
-#: 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 "当定义在主文件中的宏未被使用时给出警告"
 
-#: 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"
 msgid "Warn about macros defined in the main file that are not used."
 msgstr "当定义在主文件中的宏未被使用时给出警告"
 
-#: 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"
 msgid "Warn if a caller of a function, marked with attribute warn_unused_result, does not use its return value."
 msgstr "当一个带有 warn_unused_result 属性的函数的调用者未使用前者的返回值时给出警告"
 
-#: c-family/c.opt:1374 c-family/c.opt:1378
+#: c-family/c.opt:1370 c-family/c.opt:1374
 #, fuzzy, no-c-format
 #| msgid "Warn when a variable is unused"
 msgid "Warn when a const variable is unused."
 msgstr "有未使用的变量时警告"
 
-#: c-family/c.opt:1382
-#, no-c-format
-msgid "# effect."
-msgstr ""
-
-#: c-family/c.opt:1394
+#: c-family/c.opt:1386
 #, fuzzy, no-c-format
 msgid "Warn about using variadic macros."
 msgstr "当定义在主文件中的宏未被使用时给出警告"
 
-#: 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"
 msgid "Warn if a variable length array is used."
 msgstr "使用变长数组时警告"
 
-#: c-family/c.opt:1410
+#: c-family/c.opt:1402
 #, fuzzy, no-c-format
 #| msgid "-Wlarger-than=<number>\tWarn if an object is larger than <number> bytes"
 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 "-Wlarger-than=<N>\t当目标文件大于 N 字节时给出警告"
 
-#: 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 multiple declarations of the same object"
 msgid "Warn about mismatched declarations of VLA parameters."
 msgstr "对同一个对象多次声明时给出警告"
 
-#: c-family/c.opt:1424
+#: c-family/c.opt:1416
 #, fuzzy, no-c-format
 #| msgid "Warn about deprecated 'vector long ...' AltiVec type usage"
 msgid "Warn about deprecated uses of volatile qualifier."
 msgstr "遇到已弃用的‘vector long ...’AltiVec 类型时给出警告"
 
-#: c-family/c.opt:1428
+#: c-family/c.opt:1420
 #, fuzzy, no-c-format
 #| msgid "Warn when a register variable is declared volatile"
 msgid "Warn when a register variable is declared volatile."
 msgstr "当一个寄存器变量被声明为 volatile 时给出警告"
 
-#: c-family/c.opt:1432
+#: c-family/c.opt:1424
 #, no-c-format
 msgid "Warn on direct virtual inheritance."
 msgstr ""
 
-#: c-family/c.opt:1436
+#: c-family/c.opt:1428
 #, fuzzy, no-c-format
 msgid "Warn if a virtual base has a non-trivial move assignment operator."
 msgstr "%qT 有虚拟基底,缺省移动指派运算符无法产生"
 
-#: 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++ 中,非零值表示将字面字符串转换为‘char *’时给出警告。在 C 中,给出相似的警告,但这种类型转换是符合 ISO C 标准的。"
 
-#: c-family/c.opt:1444
+#: c-family/c.opt:1436
 #, fuzzy, no-c-format
 msgid "Warn when a literal '0' is used as null pointer."
 msgstr "有未使用的标号时警告"
 
-#: c-family/c.opt:1448
+#: c-family/c.opt:1440
 #, fuzzy, no-c-format
 msgid "Warn about useless casts."
 msgstr "当类型转换丢失限定信息时给出警告"
 
-#: 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 does not specify a type"
 msgid "Warn when a declaration has duplicate const, volatile, restrict or _Atomic specifier."
 msgstr "当声明未指定类型时给出警告"
 
-#: c-family/c.opt:1460
+#: c-family/c.opt:1452
 #, no-c-format
 msgid "Warn when an argument passed to a restrict-qualified parameter aliases with another argument."
 msgstr ""
 
-#: c-family/c.opt:1465
+#: c-family/c.opt:1457
 #, fuzzy, no-c-format
 #| msgid "A synonym for -std=c89 (for C) or -std=c++98 (for C++)"
 msgid "A synonym for -std=c89 (for C) or -std=c++98 (for C++)."
 msgstr "-std=c89 (对 C 来说) 或 -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 "用于 -Wabi 警告和链接兼容性别名的 C++ ABI 版本。"
 
-#: c-family/c.opt:1477
+#: c-family/c.opt:1469
 #, fuzzy, no-c-format
 #| msgid "Enforce class member access control semantics"
 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 "可变参数函数必须使用基础的 AAPCS 变种"
 
-#: 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 "不再支持。"
 
-#: c-family/c.opt:1504
+#: c-family/c.opt:1496
 #, no-c-format
 msgid "Recognize the \"asm\" keyword."
 msgstr "识别“asm”关键字。"
 
-#: c-family/c.opt:1512
+#: c-family/c.opt:1504
 #, fuzzy, no-c-format
 #| msgid "Recognize built-in functions"
 msgid "Recognize built-in functions."
 msgstr "识别内建函数"
 
-#: 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 "Deprecated.  This switch has no effect"
 msgid "Removed in GCC 8.  This switch has no effect."
 msgstr "已弃用。此开关不起作用。"
 
-#: c-family/c.opt:1615
+#: c-family/c.opt:1607
 #, fuzzy, no-c-format
 msgid "Enable support for C++ concepts."
 msgstr "启用支持用于 GNU transactional 内存"
 
-#: c-family/c.opt:1619
+#: c-family/c.opt:1611
 #, fuzzy, no-c-format
 #| msgid "Warn about features not present in traditional C"
 msgid "Enable certain features present in the Concepts TS."
 msgstr "使用了传统 C 不支持的特性时给出警告"
 
-#: 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"
 msgid "Allow the arguments of the '?' operator to have different types."
 msgstr "允许‘?’运算符的参数有不同的类型"
 
-#: 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"
 msgid "-fconst-string-class=<name>\tUse class <name> for constant strings."
 msgstr "-fconst-string-class=<名字>\t使用名字作为常量字符串类的名称"
 
-#: c-family/c.opt:1639
+#: c-family/c.opt:1631
 #, fuzzy, no-c-format
 msgid "-fconstexpr-depth=<number>\tSpecify maximum constexpr recursion depth."
 msgstr "-ftemplate-depth=<N>\t指定模板实例化的最大深度"
 
-#: c-family/c.opt:1643
+#: c-family/c.opt:1635
 #, fuzzy, no-c-format
 msgid "-fconstexpr-cache-depth=<number>\tSpecify maximum constexpr recursion cache depth."
 msgstr "-ftemplate-depth=<N>\t指定模板实例化的最大深度"
 
-#: c-family/c.opt:1647
+#: c-family/c.opt:1639
 #, fuzzy, no-c-format
 #| msgid "lambda-expression in a constant expression"
 msgid "Allow IEC559 floating point exceptions in constant expressions."
 msgstr "常量表达式中的 Lambda 表达式"
 
-#: c-family/c.opt:1651
+#: c-family/c.opt:1643
 #, fuzzy, no-c-format
 msgid "-fconstexpr-loop-limit=<number>\tSpecify maximum constexpr loop iteration count."
 msgstr "-ftemplate-depth=<N>\t指定模板实例化的最大深度"
 
-#: c-family/c.opt:1655
+#: c-family/c.opt:1647
 #, fuzzy, no-c-format
 msgid "-fconstexpr-ops-limit=<number>\tSpecify maximum number of constexpr operations during a single constexpr evaluation."
 msgstr "-ftemplate-depth=<N>\t指定模板实例化的最大深度"
 
-#: 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 "启用传统预处理"
 
-#: 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 "当所有构造函数和析构函数都是私有时给出警告"
 
-#: 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
 #, no-c-format
 msgid "Preprocess directives only."
 msgstr "仅预处理指示。"
 
-#: c-family/c.opt:1687
+#: c-family/c.opt:1679
 #, fuzzy, no-c-format
 #| msgid "Permit '$' as an identifier character"
 msgid "Permit '$' as an identifier character."
 msgstr "允许‘$’作为标识符的一部分"
 
-#: c-family/c.opt:1691
+#: c-family/c.opt:1683
 #, fuzzy, no-c-format
 #| msgid "Map one directory name to another in debug information"
 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
 #, no-c-format
 msgid "Write all declarations as Ada code transitively."
 msgstr ""
 
-#: c-family/c.opt:1699
+#: c-family/c.opt:1691
 #, no-c-format
 msgid "Write all declarations as Ada code for the given file only."
 msgstr ""
 
-#: c-family/c.opt:1706
+#: c-family/c.opt:1698
 #, fuzzy, no-c-format
 #| msgid "Do not discard comments in macro expansions"
 msgid "Do not elide common elements in template comparisons."
 msgstr "展开宏时不丢弃注释"
 
-#: c-family/c.opt:1710
+#: c-family/c.opt:1702
 #, fuzzy, no-c-format
 #| msgid "Generate code to check exception specifications"
 msgid "Generate code to check exception specifications."
 msgstr "生成检查异常规范的代码"
 
-#: c-family/c.opt:1717
+#: c-family/c.opt:1709
 #, fuzzy, no-c-format
 #| msgid "-fexec-charset=<cset>\tConvert all strings and character constants to character set <cset>"
 msgid "-fexec-charset=<cset>\tConvert all strings and character constants to character set <cset>."
 msgstr "-fexec-charset=<字符集>\t将所有字符串和字符常量转换到字符集"
 
-#: c-family/c.opt:1721
+#: c-family/c.opt:1713
 #, fuzzy, no-c-format
 #| msgid "Permit universal character names (\\u and \\U) in identifiers"
 msgid "Permit universal character names (\\u and \\U) in identifiers."
 msgstr "允许标识符中出现 Unicode 字符名(\\u 和 \\U)"
 
-#: c-family/c.opt:1725
+#: c-family/c.opt:1717
 #, fuzzy, no-c-format
 #| msgid "-finput-charset=<cset>\tSpecify the default character set for source files"
 msgid "-finput-charset=<cset>\tSpecify the default character set for source files."
 msgstr "-finput-charset=<字符集>\t指定源代码的默认字符集"
 
-#: 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 "内部函数"
+
+#: c-family/c.opt:1735
 #, fuzzy, no-c-format
 #| msgid "Do not assume that standard C libraries and \"main\" exist"
 msgid "Do not assume that standard C libraries and \"main\" exist."
 msgstr "不假定标准 C 库和“main”存在"
 
-#: c-family/c.opt:1743
+#: c-family/c.opt:1739
 #, no-c-format
 msgid "Recognize GNU-defined keywords."
 msgstr "识别 GNU 定义的关键字。"
 
-#: c-family/c.opt:1747
+#: c-family/c.opt:1743
 #, fuzzy, no-c-format
 #| msgid "Generate code for GNU runtime environment"
 msgid "Generate code for GNU runtime environment."
 msgstr "为 GNU 运行时环境生成代码"
 
-#: c-family/c.opt:1751
+#: c-family/c.opt:1747
 #, fuzzy, no-c-format
 #| msgid "Use traditional GNU semantics for inline functions"
 msgid "Use traditional GNU semantics for inline functions."
 msgstr "为内联函数使用传统的 GNU 语义"
 
-#: c-family/c.opt:1764
+#: c-family/c.opt:1760
 #, fuzzy, no-c-format
 #| msgid "Assume normal C execution environment"
 msgid "Assume normal C execution environment."
 msgstr "假定一般的 C 执行环境"
 
-#: c-family/c.opt:1772
+#: c-family/c.opt:1768
 #, fuzzy, no-c-format
 #| msgid "Export functions even if they can be inlined"
 msgid "Export functions even if they can be inlined."
 msgstr "导出被内联的函数"
 
-#: c-family/c.opt:1776
+#: c-family/c.opt:1772
 #, fuzzy, no-c-format
 #| msgid "Make \"char\" unsigned by default."
 msgid "Make inline functions constexpr by default."
 msgstr "使“char”类型默认为无符号。"
 
-#: c-family/c.opt:1780
+#: c-family/c.opt:1776
 #, fuzzy, no-c-format
 #| msgid "Emit implicit instantiations of inline templates"
 msgid "Emit implicit instantiations of inline templates."
 msgstr "允许内联模板隐式实例化"
 
-#: c-family/c.opt:1784
+#: c-family/c.opt:1780
 #, fuzzy, no-c-format
 #| msgid "Emit implicit instantiations of templates"
 msgid "Emit implicit instantiations of templates."
 msgstr "允许模板隐式实例化"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Don't emit dllexported inline functions unless needed"
 msgid "Don't emit dllexported inline functions unless needed."
 msgstr "除非必需,不生成 DLL 导出的内联函数"
 
-#: 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 dead store elimination"
 msgid "Enable lazy module importing."
 msgstr "删除死存储"
 
-#: c-family/c.opt:1841
+#: c-family/c.opt:1837
 #, fuzzy, no-c-format
 #| msgid "Warn about implicit function declarations"
 msgid "Warn about macros that have conflicting header units definitions."
 msgstr "对隐式函数声明给出警告"
 
-#: 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"
 msgid "Don't warn about uses of Microsoft extensions."
 msgstr "使用微软扩展时不给出警告"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
 msgid "Generate code for NeXT (Apple Mac OS X) runtime environment."
 msgstr "为 NeXT (苹果 Mac OS X) 运行时环境生成代码"
 
-#: c-family/c.opt:1896
+#: c-family/c.opt:1892
 #, fuzzy, no-c-format
 #| msgid "Assume that receivers of Objective-C messages may be nil"
 msgid "Assume that receivers of Objective-C messages may be nil."
 msgstr "假定 Objective-C 消息的接受者可能是 nil"
 
-#: 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
 #, fuzzy, no-c-format
 msgid "-fvisibility=[private|protected|public|package]\tSet the default symbol visibility."
 msgstr "-fvisibility=[default|internal|hidden|protected]\t设置符号的默认可见性"
 
-#: c-family/c.opt:1929
+#: c-family/c.opt:1925
 #, fuzzy, no-c-format
 msgid "Treat a throw() exception specification as noexcept to improve code size."
 msgstr "对待丢掷() 异常规格作为 noexcept 到改善编码大小"
 
-#: c-family/c.opt:1933
+#: c-family/c.opt:1929
 #, fuzzy, no-c-format
 msgid "Specify which ABI to use for Objective-C family code and meta-data generation."
 msgstr "指定该项 ABI 以使用用于 Objective-C 家族编码和元数据产生。"
 
-#: c-family/c.opt:1939
+#: c-family/c.opt:1935
 #, fuzzy, no-c-format
 #| msgid "Generate special Objective-C methods to initialize/destroy non-POD C++ ivars, if needed"
 msgid "Generate special Objective-C methods to initialize/destroy non-POD C++ ivars, if needed."
 msgstr "如果需要,生成特殊的 Objective-C 方法来初始化/析构非简单旧数据 C++ 变量"
 
-#: c-family/c.opt:1943
+#: c-family/c.opt:1939
 #, fuzzy, no-c-format
 #| msgid "Allow fast jumps to the message dispatcher"
 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"
 msgid "Enable Objective-C exception and synchronization syntax."
 msgstr "启用 Objective-C 异常和同步语法"
 
-#: 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"
 msgid "Enable garbage collection (GC) in Objective-C/Objective-C++ programs."
 msgstr "在 Objective-C/Objective-C++ 程序中启用垃圾收集"
 
-#: c-family/c.opt:1957
+#: c-family/c.opt:1953
 #, fuzzy, no-c-format
 msgid "Enable inline checks for nil receivers with the NeXT runtime and ABI version 2."
 msgstr "启用内联检查看看零收件者与下一个运行阶段和 ABI 版本 2。"
 
-#: c-family/c.opt:1962
+#: c-family/c.opt:1958
 #, fuzzy, no-c-format
 #| msgid "Enable Objective-C setjmp exception handling runtime"
 msgid "Enable Objective-C setjmp exception handling runtime."
 msgstr "启用 Objective-C setjmp 异常处理运行时"
 
-#: 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"
 msgid "Conform to the Objective-C 1.0 language as implemented in GCC 4.0."
 msgstr "遵循于 GCC 4.0 实现的 Ojbective-C 1.0 语言"
 
-#: c-family/c.opt:1970
+#: c-family/c.opt:1966
 #, fuzzy, no-c-format
 msgid "Enable OpenACC."
 msgstr "对齐 COMMON 块"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Enable OpenMP (implies -frecursive in Fortran)"
 msgid "Enable OpenMP (implies -frecursive in Fortran)."
 msgstr "启用 OpenMP(对 Fortran 而言也同时设定 -frecursive)"
 
-#: c-family/c.opt:1982
+#: c-family/c.opt:1978
 #, fuzzy, no-c-format
 msgid "Enable OpenMP's SIMD directives."
 msgstr "启用 OpenMP(对 Fortran 而言也同时设定 -frecursive)"
 
-#: c-family/c.opt:1986
+#: c-family/c.opt:1982
 #, fuzzy, no-c-format
 #| msgid "Recognize C++ keywords like \"compl\" and \"xor\""
 msgid "Recognize C++ keywords like \"compl\" and \"xor\"."
 msgstr "识别“compl”、“xor”等 C++ 关键词"
 
-#: c-family/c.opt:1997
+#: c-family/c.opt:1993
 #, fuzzy, no-c-format
 #| msgid "Look for and use PCH files even when preprocessing"
 msgid "Look for and use PCH files even when preprocessing."
 msgstr "即使在预处理时也搜索并使用 PCH 文件"
 
-#: c-family/c.opt:2001
+#: c-family/c.opt:1997
 #, fuzzy, no-c-format
 #| msgid "Downgrade conformance errors to warnings"
 msgid "Downgrade conformance errors to warnings."
 msgstr "将兼容性错误降格为警告"
 
-#: c-family/c.opt:2005
+#: c-family/c.opt:2001
 #, fuzzy, no-c-format
 #| msgid "Enable Plan 9 language extensions"
 msgid "Enable Plan 9 language extensions."
 msgstr "启用九号计划语言扩展"
 
-#: c-family/c.opt:2009
+#: c-family/c.opt:2005
 #, fuzzy, no-c-format
 #| msgid "Treat the input file as already preprocessed"
 msgid "Treat the input file as already preprocessed."
 msgstr "将输入文件当作已经预处理过的"
 
-#: c-family/c.opt:2017
+#: c-family/c.opt:2013
 #, fuzzy, 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 "-ftrack-macro-expansion=<0|1|2> 轨段位置的字组来自宏展开和显示它们在中错误消息"
 
-#: c-family/c.opt:2021
+#: c-family/c.opt:2017
 #, fuzzy, no-c-format
 #| msgid "-fno-pretty-templates Do not pretty-print template specializations as the template signature followed by the arguments"
 msgid "Do not pretty-print template specializations as the template signature followed by the arguments."
 msgstr "-fno-pretty-templates 不使用模板签名加实参的方式美化模板特例化的打印"
 
-#: c-family/c.opt:2025
+#: c-family/c.opt:2021
 #, no-c-format
 msgid "Treat known sprintf return values as constants."
 msgstr ""
 
-#: c-family/c.opt:2029
+#: c-family/c.opt:2025
 #, fuzzy, no-c-format
 #| msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime"
 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
 #, fuzzy, no-c-format
 #| msgid "Deprecated.  This switch has no effect"
 msgid "Removed in GCC 10.  This switch has no effect."
 msgstr "已弃用。此开关不起作用。"
 
-#: c-family/c.opt:2037
+#: c-family/c.opt:2033
 #, fuzzy, no-c-format
 #| msgid "Generate run time type descriptor information"
 msgid "Generate run time type descriptor information."
 msgstr "生成运行时类型描述信息"
 
-#: c-family/c.opt:2041 ada/gcc-interface/lang.opt:81
+#: c-family/c.opt:2037 ada/gcc-interface/lang.opt:81
 #, fuzzy, no-c-format
 #| msgid "Use the narrowest integer type possible for enumeration types"
 msgid "Use the narrowest integer type possible for enumeration types."
 msgstr "为枚举类型使用尽可能窄的整数类型"
 
-#: c-family/c.opt:2045
+#: c-family/c.opt:2041
 #, fuzzy, no-c-format
 #| msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\""
 msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"."
 msgstr "强制指定“wchar_t”的内在类型为“unsigned short”"
 
-#: c-family/c.opt:2049
+#: c-family/c.opt:2045
 #, fuzzy, no-c-format
 #| msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed"
 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed."
 msgstr "没有给定“signed”或“unsigned”时将位段视作有符号的"
 
-#: c-family/c.opt:2053 ada/gcc-interface/lang.opt:85
+#: c-family/c.opt:2049 ada/gcc-interface/lang.opt:85
 #, fuzzy, no-c-format
 #| msgid "Make \"char\" signed by default"
 msgid "Make \"char\" signed by default."
 msgstr "使“char”类型默认为有符号"
 
-#: c-family/c.opt:2057
+#: c-family/c.opt:2053
 #, fuzzy, no-c-format
 msgid "Enable C++14 sized deallocation support."
 msgstr "启用硬件十进制浮点支持"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Display statistics accumulated during compilation"
 msgid "Display statistics accumulated during compilation."
 msgstr "显示编译过程中累计的统计数字"
 
-#: c-family/c.opt:2084
+#: c-family/c.opt:2080
 #, fuzzy, no-c-format
 msgid "Assume that values of enumeration type are always within the minimum range of that type."
 msgstr "假设该值的枚举类型类型是一律在之内最小范围的该类型"
 
-#: 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 "单个循环最大的剥离数"
 
-#: c-family/c.opt:2120
+#: c-family/c.opt:2116
 #, fuzzy, no-c-format
 #| msgid "-ftemplate-depth=<number>\tSpecify maximum template instantiation depth"
 msgid "-ftemplate-depth=<number>\tSpecify maximum template instantiation depth."
 msgstr "-ftemplate-depth=<N>\t指定模板实例化的最大深度"
 
-#: 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"
 msgid "-fno-threadsafe-statics\tDo not generate thread-safe code for initializing local statics."
 msgstr "-fno-threadsafe-statics\t不为局部静态变量生成线程安全的初始化代码"
 
-#: c-family/c.opt:2131
+#: c-family/c.opt:2127
 #, fuzzy, no-c-format
 #| msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned"
 msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned."
 msgstr "未指定“signed”或“unsigned”时默认位段为无符号的"
 
-#: c-family/c.opt:2135 ada/gcc-interface/lang.opt:89
+#: c-family/c.opt:2131 ada/gcc-interface/lang.opt:89
 #, no-c-format
 msgid "Make \"char\" unsigned by default."
 msgstr "使“char”类型默认为无符号。"
 
-#: c-family/c.opt:2139
+#: c-family/c.opt:2135
 #, fuzzy, no-c-format
 #| msgid "Use __cxa_atexit to register destructors"
 msgid "Use __cxa_atexit to register destructors."
 msgstr "将 __cxa_atexit 而非 atexit 登记为析构函数"
 
-#: c-family/c.opt:2143
+#: c-family/c.opt:2139
 #, fuzzy, no-c-format
 #| msgid "Use __cxa_get_exception_ptr in exception handling"
 msgid "Use __cxa_get_exception_ptr in exception handling."
 msgstr "在异常处理中使用 __cxa_get_exception_ptr"
 
-#: c-family/c.opt:2147
+#: c-family/c.opt:2143
 #, fuzzy, 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
 #, fuzzy, no-c-format
 #| msgid "Changes visibility to match Microsoft Visual Studio by default"
 msgid "Changes visibility to match Microsoft Visual Studio by default."
 msgstr "默认使用与 Microsoft Visual Studio 匹配的可见性"
 
-#: c-family/c.opt:2163
+#: c-family/c.opt:2159
 #, fuzzy, no-c-format
 #| msgid "Emit common-like symbols as weak symbols"
 msgid "Emit common-like symbols as weak symbols."
 msgstr "将公共符号视作弱符号"
 
-#: c-family/c.opt:2167
+#: c-family/c.opt:2163
 #, fuzzy, no-c-format
 #| msgid "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants to character set <cset>"
 msgid "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants to character set <cset>."
 msgstr "-finput-charset=<字符集>\t将所有宽字符串和字符常量都转换为字符集"
 
-#: c-family/c.opt:2171
+#: c-family/c.opt:2167
 #, fuzzy, no-c-format
 #| msgid "Generate a #line directive pointing at the current working directory"
 msgid "Generate a #line directive pointing at the current working directory."
 msgstr "生成一个指向当前工作目录的 #line 预处理指令"
 
-#: c-family/c.opt:2179
+#: c-family/c.opt:2175
 #, fuzzy, no-c-format
 #| msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode"
 msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode."
 msgstr "为 Zero-Link 模式生成后期类查找(通过 objc_getClass())"
 
-#: c-family/c.opt:2183
+#: c-family/c.opt:2179
 #, fuzzy, no-c-format
 #| msgid "Dump declarations to a .decl file"
 msgid "Dump declarations to a .decl file."
 msgstr "将声明转储到一个 .decl 文件中"
 
-#: c-family/c.opt:2187
+#: c-family/c.opt:2183
 #, fuzzy, no-c-format
 #| msgid "-femit-struct-debug-baseonly\tAggressive reduced debug info for structs"
 msgid "-femit-struct-debug-baseonly\tAggressive reduced debug info for structs."
 msgstr "-femit-struct-debug-baseonly\t积极地缩减结构体的调试信息"
 
-#: c-family/c.opt:2191
+#: c-family/c.opt:2187
 #, fuzzy, no-c-format
 #| msgid "-femit-struct-debug-reduced\tConservative reduced debug info for structs"
 msgid "-femit-struct-debug-reduced\tConservative reduced debug info for structs."
 msgstr "-femit-struct-debug-reduced\t保守地缩减结构体的调试信息"
 
-#: c-family/c.opt:2195
+#: c-family/c.opt:2191
 #, fuzzy, no-c-format
 #| msgid "-femit-struct-debug-detailed=<spec-list>\tDetailed reduced debug info for structs"
 msgid "-femit-struct-debug-detailed=<spec-list>\tDetailed reduced debug info for structs."
 msgstr "-femit-struct-debug-detailed=<规格列表>\t详细指定如何缩减结构体的调试信息"
 
-#: 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"
 msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path."
 msgstr "-idirafter <目录>\t将目录添加至系统包含路径末尾"
 
-#: c-family/c.opt:2208
+#: c-family/c.opt:2204
 #, fuzzy, no-c-format
 #| msgid "-imacros <file>\tAccept definition of macros in <file>"
 msgid "-imacros <file>\tAccept definition of macros in <file>."
 msgstr "-imacros <文件>\t接受文件中定义的宏"
 
-#: 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"
 msgid "-imultilib <dir>\tSet <dir> to be the multilib include subdirectory."
 msgstr "-imultilib <目录>\t将目录设定为 multilib 的包含子目录"
 
-#: c-family/c.opt:2216
+#: c-family/c.opt:2212
 #, fuzzy, no-c-format
 #| msgid "-include <file>\tInclude the contents of <file> before other files"
 msgid "-include <file>\tInclude the contents of <file> before other files."
 msgstr "-include <文件>\t在包含其它文件之前先包含该文件的内容"
 
-#: 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"
 msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options."
 msgstr "-iprefix <路径>\t将路径指定为下两个选项的前缀"
 
-#: 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"
 msgid "-isysroot <dir>\tSet <dir> to be the system root directory."
 msgstr "-isysroot <目录>\t将目录设为系统根目录"
 
-#: 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"
 msgid "-isystem <dir>\tAdd <dir> to the start of the system include path."
 msgstr "-isystem <目录>\t将目录添加至系统包含路径开头"
 
-#: 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"
 msgid "-iquote <dir>\tAdd <dir> to the end of the quote include path."
 msgstr "-iquote <目录>\t将目录添加至括起的包含路径末尾"
 
-#: 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"
 msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path."
 msgstr "-iwithprefix <目录>\t将目录添加至系统包含路径末尾"
 
-#: 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"
 msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path."
 msgstr "-iwithprefixbefore <目录>\t将目录添加至主包含路径末尾"
 
-#: c-family/c.opt:2250
+#: c-family/c.opt:2246
 #, fuzzy, no-c-format
 #| msgid "Do not search standard system include directories (those specified with -isystem will still be used)"
 msgid "Do not search standard system include directories (those specified with -isystem will still be used)."
 msgstr "不搜索标准系统头文件目录(但仍将使用由 -isystem 指定的目录)"
 
-#: c-family/c.opt:2254
+#: c-family/c.opt:2250
 #, fuzzy, no-c-format
 #| msgid "Do not search standard system include directories for C++"
 msgid "Do not search standard system include directories for C++."
 msgstr "不搜索 C++ 标准系统头文件目录"
 
-#: c-family/c.opt:2266
+#: c-family/c.opt:2262
 #, fuzzy, no-c-format
 #| msgid "Generate C header of platform-specific features"
 msgid "Generate C header of platform-specific features."
 msgstr "生成有平台相关特性的 C 头文件"
 
-#: c-family/c.opt:2270
+#: c-family/c.opt:2266
 #, fuzzy, no-c-format
 #| msgid "Remap file names when including files"
 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"
 msgid "Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum."
 msgstr "遵循 ISO 1998 C++ 标准于 2003 年的技术勘误版本"
 
-#: c-family/c.opt:2282
+#: c-family/c.opt:2278
 #, fuzzy, no-c-format
 #| msgid "Conform to the ISO 2011 C++ standard"
 msgid "Conform to the ISO 2011 C++ standard."
 msgstr "遵循 ISO 2011 C++ 标准"
 
-#: c-family/c.opt:2286
+#: c-family/c.opt:2282
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=c++11."
 msgstr "已弃用,请改用 -std=gnu99"
 
-#: c-family/c.opt:2290
+#: c-family/c.opt:2286
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=c++14."
 msgstr "已弃用,请改用 -std=gnu99"
 
-#: c-family/c.opt:2294
+#: c-family/c.opt:2290
 #, fuzzy, no-c-format
 #| msgid "Conform to the ISO 2011 C++ standard"
 msgid "Conform to the ISO 2014 C++ standard."
 msgstr "遵循 ISO 2011 C++ 标准"
 
-#: c-family/c.opt:2298
+#: c-family/c.opt:2294
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=c++17."
 msgstr "已弃用,请改用 -std=gnu99"
 
-#: c-family/c.opt:2302
+#: c-family/c.opt:2298
 #, fuzzy, no-c-format
 #| msgid "Conform to the ISO 2011 C++ standard"
 msgid "Conform to the ISO 2017 C++ standard."
 msgstr "遵循 ISO 2011 C++ 标准"
 
-#: 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 2017(?) C++ draft standard (experimental and incomplete support)"
 msgid "Conform to the ISO 2020 C++ standard (experimental and incomplete support)."
 msgstr "遵循 ISO 2017(?) C++ 标准草案(试验性质的不完全支持)"
 
-#: 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 2017(?) C++ draft standard (experimental and incomplete support)"
 msgid "Conform to the ISO 2023 C++ draft standard (experimental and incomplete support)."
 msgstr "遵循 ISO 2017(?) C++ 标准草案(试验性质的不完全支持)"
 
-#: c-family/c.opt:2322 c-family/c.opt:2460
+#: c-family/c.opt:2318 c-family/c.opt:2456
 #, fuzzy, no-c-format
 #| msgid "Conform to the ISO 2011 C++ standard"
 msgid "Conform to the ISO 2011 C standard."
 msgstr "遵循 ISO 2011 C++ 标准"
 
-#: c-family/c.opt:2326
+#: c-family/c.opt:2322
 #, fuzzy, no-c-format
 msgid "Deprecated in favor of -std=c11."
 msgstr "已弃用,请改用 -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
 #, fuzzy, no-c-format
 #| msgid "Conform to the ISO 2011 C++ standard"
 msgid "Conform to the ISO 2017 C standard (published in 2018)."
 msgstr "遵循 ISO 2011 C++ 标准"
 
-#: c-family/c.opt:2338
+#: c-family/c.opt:2334
 #, fuzzy, no-c-format
 #| msgid "Conform to the ISO 2017(?) C++ draft standard (experimental and incomplete support)"
 msgid "Conform to the ISO 202X C standard draft (experimental and incomplete support)."
 msgstr "遵循 ISO 2017(?) C++ 标准草案(试验性质的不完全支持)"
 
-#: 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"
 msgid "Conform to the ISO 1990 C standard."
 msgstr "遵循 ISO 1990 C 标准"
 
-#: 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"
 msgid "Conform to the ISO 1999 C standard."
 msgstr "遵循 ISO 1999 C 标准"
 
-#: c-family/c.opt:2354
+#: c-family/c.opt:2350
 #, fuzzy, no-c-format
 #| msgid "Deprecated in favor of -std=c99"
 msgid "Deprecated in favor of -std=c99."
 msgstr "已弃用,请改用 -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"
 msgid "Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum with GNU extensions."
 msgstr "遵循 ISO 1998 C++ 标准于 2003 年的技术勘误版本"
 
-#: c-family/c.opt:2368
+#: c-family/c.opt:2364
 #, fuzzy, no-c-format
 #| msgid "Conform to the ISO 1990 C standard with GNU extensions"
 msgid "Conform to the ISO 2011 C++ standard with GNU extensions."
 msgstr "遵循 ISO 1990 C 标准,也支持 GNU 扩展"
 
-#: c-family/c.opt:2372
+#: c-family/c.opt:2368
 #, no-c-format
 msgid "Deprecated in favor of -std=gnu++11."
 msgstr "已弃用,请改用 -std=gnu++11。"
 
-#: c-family/c.opt:2376
+#: c-family/c.opt:2372
 #, no-c-format
 msgid "Deprecated in favor of -std=gnu++14."
 msgstr "已弃用,请改用 -std=gnu++14。"
 
-#: c-family/c.opt:2380
+#: c-family/c.opt:2376
 #, fuzzy, no-c-format
 #| msgid "Conform to the ISO 1990 C standard with GNU extensions"
 msgid "Conform to the ISO 2014 C++ standard with GNU extensions."
 msgstr "遵循 ISO 1990 C 标准,也支持 GNU 扩展"
 
-#: c-family/c.opt:2384
+#: c-family/c.opt:2380
 #, no-c-format
 msgid "Deprecated in favor of -std=gnu++17."
 msgstr "已弃用,请改用 -std=gnu+17。"
 
-#: c-family/c.opt:2388
+#: c-family/c.opt:2384
 #, fuzzy, no-c-format
 #| msgid "Conform to the ISO 1990 C standard with GNU extensions"
 msgid "Conform to the ISO 2017 C++ standard with GNU extensions."
 msgstr "遵循 ISO 1990 C 标准,也支持 GNU 扩展"
 
-#: 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 201z(7?) C++ draft standard with GNU extensions (experimental and incomplete support)"
 msgid "Conform to the ISO 2020 C++ standard with GNU extensions (experimental and incomplete support)."
 msgstr "遵循 ISO 201z(7?) C++ 标准草案和 GNU 扩展(试验性质的不完全支持)"
 
-#: 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 201z(7?) C++ draft standard with GNU extensions (experimental and incomplete support)"
 msgid "Conform to the ISO 2023 C++ draft standard with GNU extensions (experimental and incomplete support)."
 msgstr "遵循 ISO 201z(7?) C++ 标准草案和 GNU 扩展(试验性质的不完全支持)"
 
-#: c-family/c.opt:2408
+#: c-family/c.opt:2404
 #, fuzzy, no-c-format
 #| msgid "Conform to the ISO 1990 C standard with GNU extensions"
 msgid "Conform to the ISO 2011 C standard with GNU extensions."
 msgstr "遵循 ISO 1990 C 标准,也支持 GNU 扩展"
 
-#: c-family/c.opt:2412
+#: c-family/c.opt:2408
 #, no-c-format
 msgid "Deprecated in favor of -std=gnu11."
 msgstr "已弃用,请改用 -std=gnu11。"
 
-#: 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 1990 C standard with GNU extensions"
 msgid "Conform to the ISO 2017 C standard (published in 2018) with GNU extensions."
 msgstr "遵循 ISO 1990 C 标准,也支持 GNU 扩展"
 
-#: c-family/c.opt:2424
+#: c-family/c.opt:2420
 #, fuzzy, no-c-format
 #| msgid "Conform to the ISO 201z(7?) C++ draft standard with GNU extensions (experimental and incomplete support)"
 msgid "Conform to the ISO 202X C standard draft with GNU extensions (experimental and incomplete support)."
 msgstr "遵循 ISO 201z(7?) C++ 标准草案和 GNU 扩展(试验性质的不完全支持)"
 
-#: 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"
 msgid "Conform to the ISO 1990 C standard with GNU extensions."
 msgstr "遵循 ISO 1990 C 标准,也支持 GNU 扩展"
 
-#: 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"
 msgid "Conform to the ISO 1999 C standard with GNU extensions."
 msgstr "遵循 ISO 1999 C 标准,也支持 GNU 扩展"
 
-#: c-family/c.opt:2440
+#: c-family/c.opt:2436
 #, fuzzy, no-c-format
 #| msgid "Deprecated in favor of -std=gnu99"
 msgid "Deprecated in favor of -std=gnu99."
 msgstr "已弃用,请改用 -std=gnu99"
 
-#: 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"
 msgid "Conform to the ISO 1990 C standard as amended in 1994."
 msgstr "遵循 ISO 1990 C 标准于 1994 年修订的版本"
 
-#: c-family/c.opt:2456
+#: c-family/c.opt:2452
 #, fuzzy, no-c-format
 #| msgid "Deprecated in favor of -std=iso9899:1999"
 msgid "Deprecated in favor of -std=iso9899:1999."
 msgstr "已弃用,为 -std=iso9899:1999 所取代"
 
-#: 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
 #, no-c-format
 msgid "Enable traditional preprocessing."
 msgstr "启用传统预处理。"
 
-#: c-family/c.opt:2493
+#: c-family/c.opt:2489
 #, no-c-format
 msgid "-trigraphs\tSupport ISO C trigraphs."
 msgstr "-trigraphs\t支持 ISO C 三元符。"
 
-#: c-family/c.opt:2497
+#: c-family/c.opt:2493
 #, fuzzy, no-c-format
 #| msgid "Do not predefine system-specific and GCC-specific macros"
 msgid "Do not predefine system-specific and GCC-specific macros."
@@ -3937,7 +3937,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 "-fdump-go-spec=文件名\t写入所有声明到文件作为前往编码"
 
 #: d/lang.opt:284
@@ -4032,7 +4032,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
@@ -4545,6 +4545,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
 #, fuzzy, no-c-format
 #| msgid "Malloc data into P2 space"
@@ -5648,11 +5653,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 "使用给定的 x86-64 代码模式"
 
-#: config/riscv/riscv.opt:114
+#: config/riscv/riscv.opt:114 config/loongarch/loongarch.opt:158
 #, fuzzy, no-c-format
 #| msgid "Do not use unaligned memory references"
 msgid "Do not generate unaligned memory accesses."
@@ -5692,26 +5698,26 @@ msgstr "无效的 __fp16 浮点选项:-mfp16-format=%s"
 
 #: 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 "使用 propolice 来保护堆栈"
 
 #: 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 -mfloat-gprs=:"
 msgid "Valid arguments to -mstack-protector-guard=:"
 msgstr "-mfloat-gprs 的有效参数为:"
 
 #: 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 "使用 propolice 来保护堆栈"
 
 #: 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 "使用 propolice 来保护堆栈"
@@ -5859,7 +5865,7 @@ msgstr ""
 msgid "The possible TLS dialects:"
 msgstr "假定大的线程局部存储段"
 
-#: 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 ""
@@ -6043,6 +6049,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"
@@ -8051,64 +8062,76 @@ msgstr "使用共享库。"
 msgid "Support multi-threading."
 msgstr "支持多线程。"
 
-#: config/nvptx/nvptx.opt:28 config/gcn/gcn.opt:54
-#, no-c-format
-msgid "Generate code for a 64-bit ABI."
-msgstr "为 64 位 ABI 生成代码。"
+#: config/nvptx/nvptx-gen.opt:24
+#, fuzzy, no-c-format
+#| msgid "Known ARM architectures (for use with the -march= option):"
+msgid "Known PTX ISA target architectures (for use with the -misa= option):"
+msgstr "已知 ARM 架构 (用于 -march= 选项):"
 
-#: 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 "不起作用。为向前兼容保留的选项。"
+
+#: config/nvptx/nvptx.opt:33
 #, fuzzy, no-c-format
 msgid "Link in code for a __main kernel."
 msgstr "为内核或可加载内核扩展生成代码"
 
-#: config/nvptx/nvptx.opt:36
+#: config/nvptx/nvptx.opt:37
 #, no-c-format
 msgid "Optimize partition neutering."
 msgstr ""
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Generate code that can be used in SVR4-style dynamic objects"
 msgid "Generate code that can keep local state uniform across all lanes."
 msgstr "生成能用在 SVR4 风格动态目标文件中的代码"
 
-#: 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 MIPS ISA levels (for use with the -mips option):"
-msgid "Known PTX ISA versions (for use with the -misa= option):"
-msgstr "已知 MIPS ISA 等级 (用于 -mips 选项):"
+msgid "Specify the PTX ISA target architecture to use."
+msgstr "指定目标架构的名称"
 
-#: config/nvptx/nvptx.opt:76
-#, fuzzy, no-c-format
-msgid "Specify the version of the ptx ISA to use."
-msgstr "ELF 文件 ABI 版本无效"
+#: 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 MIPS ISA levels (for use with the -mips option):"
-msgid "Known PTX versions (for use with the -mptx= option):"
+msgid "Known PTX ISA versions (for use with the -mptx= option):"
 msgstr "已知 MIPS ISA 等级 (用于 -mips 选项):"
 
-#: 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 "ELF 文件 ABI 版本无效"
 
+#: config/nvptx/nvptx.opt:140
+#, fuzzy, no-c-format
+#| msgid "Use fp registers"
+msgid "Initialize ptx registers."
+msgstr "使用浮点寄存器"
+
 #: config/vxworks.opt:36
 #, fuzzy, no-c-format
 #| msgid "Assume the VxWorks RTP environment"
@@ -9554,176 +9577,151 @@ msgstr "对齐字符串操作的目标"
 msgid "Use vector and scalar instructions added in ISA 2.07."
 msgstr "使用向量/标量(VSX)指令"
 
-#: 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 "使用向量/标量(VSX)指令"
 
-#: config/rs6000/rs6000.opt:526
+#: config/rs6000/rs6000.opt:502
 #, fuzzy, no-c-format
 msgid "Use ISA 2.07 transactional memory (HTM) instructions."
 msgstr "使用向量/标量(VSX)指令"
 
-#: config/rs6000/rs6000.opt:530
+#: config/rs6000/rs6000.opt:506
 #, fuzzy, no-c-format
 msgid "Generate the quad word memory instructions (lq/stq)."
 msgstr "生成加载/存储乘法指令"
 
-#: config/rs6000/rs6000.opt:534
+#: config/rs6000/rs6000.opt:510
 #, no-c-format
 msgid "Generate the quad word memory atomic instructions (lqarx/stqcx)."
 msgstr ""
 
-#: 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 "使用浮点双精度指令"
 
-#: config/rs6000/rs6000.opt:554
+#: config/rs6000/rs6000.opt:530
 #, fuzzy, no-c-format
 #| msgid "Use vector/scalar (VSX) instructions"
 msgid "Use vector instructions added in ISA 3.0."
 msgstr "使用向量/标量(VSX)指令"
 
-#: config/rs6000/rs6000.opt:558
+#: config/rs6000/rs6000.opt:534
 #, fuzzy, no-c-format
 #| msgid "Enable min/max instructions"
 msgid "Use the new min/max instructions defined in ISA 3.0."
 msgstr "启用最小/最大值指令"
 
-#: config/rs6000/rs6000.opt:562
+#: config/rs6000/rs6000.opt:538
 #, fuzzy, no-c-format
 #| msgid "Generate isel instructions"
 msgid "Generate the integer modulo instructions."
 msgstr "生成 isel 指令"
 
-#: config/rs6000/rs6000.opt:566
+#: config/rs6000/rs6000.opt:542
 #, fuzzy, no-c-format
 #| msgid "Use decimal floating point instructions"
 msgid "Enable IEEE 128-bit floating point via the __float128 keyword."
 msgstr "使用十进制浮点指令"
 
-#: config/rs6000/rs6000.opt:570
+#: config/rs6000/rs6000.opt:546
 #, fuzzy, no-c-format
 #| msgid "Use decimal floating point instructions"
 msgid "Enable using IEEE 128-bit floating point instructions."
 msgstr "使用十进制浮点指令"
 
-#: 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 "生成加载/存储乘法指令"
 
-#: config/rs6000/rs6000.opt:618
+#: config/rs6000/rs6000.opt:594
 #, fuzzy, no-c-format
 #| msgid "Do not use unaligned memory references"
 msgid "Generate (do not generate) pc-relative memory addressing."
 msgstr "不使用未对齐的内存引用"
 
-#: config/rs6000/rs6000.opt:622
+#: config/rs6000/rs6000.opt:598
 #, no-c-format
 msgid "Generate (do not generate) pc-relative memory optimizations for externals."
 msgstr ""
 
-#: config/rs6000/rs6000.opt:626
+#: config/rs6000/rs6000.opt:602
 #, fuzzy, no-c-format
 msgid "Generate (do not generate) MMA instructions."
 msgstr "在函数序言中生成 cld 指令"
 
-#: 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 "为 32 位寻址生成代码"
 
-#: config/rs6000/rs6000.opt:641
+#: config/rs6000/rs6000.opt:617
 #, fuzzy, no-c-format
 #| msgid "Do not generate load/store with update instructions"
 msgid "Generate (do not generate) code that uses the XXSPLTIW instruction."
 msgstr "不生成带更新的加载/存储指令"
 
-#: config/rs6000/rs6000.opt:645
+#: config/rs6000/rs6000.opt:621
 #, fuzzy, no-c-format
 #| msgid "Do not generate load/store with update instructions"
 msgid "Generate (do not generate) code that uses the XXSPLTIDP instruction."
 msgstr "不生成带更新的加载/存储指令"
 
-#: config/rs6000/rs6000.opt:649
+#: config/rs6000/rs6000.opt:625
 #, fuzzy, no-c-format
 #| msgid "Do not generate load/store with update instructions"
 msgid "Generate (do not generate) code that uses the LXVKQ instruction."
 msgstr "不生成带更新的加载/存储指令"
 
-#: 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 ""
@@ -10047,6 +10045,100 @@ msgstr "启用符号扩展指令"
 msgid "Enable user-defined instructions."
 msgstr "启用用户自定义指令"
 
+#: 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 "-march=ISA\tGenerate code for the given ISA"
+msgid "-mfpu=FPU\tGenerate code for the given FPU."
+msgstr "-march=ISA\t为给定的 ISA 生成代码"
+
+#: config/loongarch/loongarch.opt:76 config/mips/mips.opt:377
+#, fuzzy, no-c-format
+#| msgid "Prevent the use of all hardware floating-point instructions"
+msgid "Prevent the use of all hardware floating-point instructions."
+msgstr "不允许使用任何硬件浮点指令"
+
+#: 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"
+msgid "Restrict the use of hardware floating-point instructions to 32-bit operations."
+msgstr "只为 32 位操作使用硬件浮点指令"
+
+#: 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"
+msgid "Allow hardware floating-point instructions to cover both 32-bit and 64-bit operations."
+msgstr "允许 32 位和 64 位硬件浮点指令"
+
+#: config/loongarch/loongarch.opt:90
+#, no-c-format
+msgid "LoongArch CPU types:"
+msgstr ""
+
+#: config/loongarch/loongarch.opt:103
+#, fuzzy, no-c-format
+#| msgid "-march=ISA\tGenerate code for the given ISA"
+msgid "-march=PROCESSOR\tGenerate code for the given PROCESSOR ISA."
+msgstr "-march=ISA\t为给定的 ISA 生成代码"
+
+#: config/loongarch/loongarch.opt:107
+#, fuzzy, no-c-format
+#| msgid "-mtune=PROCESSOR\tOptimize the output for PROCESSOR"
+msgid "-mtune=PROCESSOR\tGenerate optimized code for PROCESSOR."
+msgstr "-mtune=处理器\t为指定的处理器优化输出"
+
+#: 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=ABI\tGenerate code that conforms to the given ABI"
+msgid "-mabi=BASEABI\tGenerate code that conforms to the given BASEABI."
+msgstr "-mabi=ABI\t生成遵循给定 ABI 的代码"
+
+#: config/loongarch/loongarch.opt:138 config/mips/mips.opt:71
+#, fuzzy, no-c-format
+#| msgid "-mbranch-cost=COST\tSet the cost of branches to roughly COST instructions"
+msgid "-mbranch-cost=COST\tSet the cost of branches to roughly COST instructions."
+msgstr "-mbranch-cost=COST\t将分支的开销大致设定为 COST 条指令"
+
+#: config/loongarch/loongarch.opt:142 config/mips/mips.opt:83
+#, fuzzy, no-c-format
+#| msgid "Trap on integer divide by zero"
+msgid "Trap on integer divide by zero."
+msgstr "整数被零除时进入陷阱"
+
+#: 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."
@@ -12445,6 +12537,11 @@ msgstr "指定目标 CPU 的名称"
 msgid "Generate code for a 32-bit ABI."
 msgstr "为 32 位 ABI 生成代码。"
 
+#: config/gcn/gcn.opt:54
+#, no-c-format
+msgid "Generate code for a 64-bit ABI."
+msgstr "为 64 位 ABI 生成代码。"
+
 #: config/gcn/gcn.opt:58
 #, no-c-format
 msgid "Enable OpenMP GPU offloading."
@@ -12573,12 +12670,6 @@ msgstr "使用整数乘加/减指令"
 msgid "-march=ISA\tGenerate code for the given ISA."
 msgstr "-march=ISA\t为给定的 ISA 生成代码"
 
-#: config/mips/mips.opt:71
-#, fuzzy, no-c-format
-#| msgid "-mbranch-cost=COST\tSet the cost of branches to roughly COST instructions"
-msgid "-mbranch-cost=COST\tSet the cost of branches to roughly COST instructions."
-msgstr "-mbranch-cost=COST\t将分支的开销大致设定为 COST 条指令"
-
 #: config/mips/mips.opt:75
 #, fuzzy, no-c-format
 #| msgid "Use Branch Likely instructions, overriding the architecture default"
@@ -12591,12 +12682,6 @@ msgstr "使用 Branch Likely 指令,忽略架构默认值"
 msgid "Switch on/off MIPS16 ASE on alternating functions for compiler testing."
 msgstr "为测试编译器为交替的函数切换 MIPS16 ASE 的使用"
 
-#: config/mips/mips.opt:83
-#, fuzzy, no-c-format
-#| msgid "Trap on integer divide by zero"
-msgid "Trap on integer divide by zero."
-msgstr "整数被零除时进入陷阱"
-
 #: config/mips/mips.opt:87
 #, fuzzy, no-c-format
 #| msgid "-mcode-readable=SETTING\tSpecify when instructions are allowed to access code"
@@ -12626,12 +12711,6 @@ msgstr "使用陷阱指令检测整数零除"
 msgid "Allow the use of MDMX instructions."
 msgstr "允许使用 MDMX 指令"
 
-#: config/mips/mips.opt:116
-#, fuzzy, no-c-format
-#| msgid "Allow hardware floating-point instructions to cover both 32-bit and 64-bit operations"
-msgid "Allow hardware floating-point instructions to cover both 32-bit and 64-bit operations."
-msgstr "允许 32 位和 64 位硬件浮点指令"
-
 #: config/mips/mips.opt:120
 #, fuzzy, no-c-format
 #| msgid "Use MIPS-DSP instructions"
@@ -12945,24 +13024,12 @@ msgstr "允许链接器将 PIC 调用转化为直接调用"
 msgid "When generating -mabicalls code, make the code suitable for use in shared libraries."
 msgstr "生成 -mabicalls 代码时,使代码可用于共享库"
 
-#: config/mips/mips.opt:369
-#, fuzzy, no-c-format
-#| msgid "Restrict the use of hardware floating-point instructions to 32-bit operations"
-msgid "Restrict the use of hardware floating-point instructions to 32-bit operations."
-msgstr "只为 32 位操作使用硬件浮点指令"
-
 #: config/mips/mips.opt:373
 #, fuzzy, no-c-format
 #| msgid "Use SmartMIPS instructions"
 msgid "Use SmartMIPS instructions."
 msgstr "使用 SmartMIPS 指令"
 
-#: config/mips/mips.opt:377
-#, fuzzy, no-c-format
-#| msgid "Prevent the use of all hardware floating-point instructions"
-msgid "Prevent the use of all hardware floating-point instructions."
-msgstr "不允许使用任何硬件浮点指令"
-
 #: config/mips/mips.opt:381
 #, fuzzy, no-c-format
 #| msgid "Optimize lui/addiu address loads"
@@ -13969,2597 +14036,2602 @@ msgstr "当类型限定符被忽略时给出警告。"
 
 #: common.opt:806
 #, fuzzy, no-c-format
+msgid "Warn about cases where -ftrivial-auto-var-init cannot initialize an auto variable."
+msgstr "自动变量未初始化时警告"
+
+#: 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"
 msgid "Warn if a comparison is always true or always false due to the limited range of the data type."
 msgstr "当由于数据类型范围限制比较结果永远为真或假时给出警告"
 
-#: common.opt:810
+#: common.opt:814
 #, fuzzy, no-c-format
 #| msgid "Warn about uninitialized automatic variables"
 msgid "Warn about uninitialized automatic variables."
 msgstr "自动变量未初始化时警告"
 
-#: common.opt:814
+#: common.opt:818
 #, fuzzy, no-c-format
 msgid "Warn about maybe uninitialized automatic variables."
 msgstr "自动变量未初始化时警告"
 
-#: common.opt:822
+#: common.opt:826
 #, fuzzy, no-c-format
 #| msgid "Enable all -Wunused- warnings"
 msgid "Enable all -Wunused- warnings."
 msgstr "启用所有关于“XX未使用”的警告"
 
-#: common.opt:826
+#: common.opt:830
 #, fuzzy, no-c-format
 msgid "Warn when a function parameter is only set, otherwise unused."
 msgstr "发现未使用的函数指针时给出警告"
 
-#: common.opt:830
+#: common.opt:834
 #, fuzzy, no-c-format
 msgid "Warn when a variable is only set, otherwise unused."
 msgstr "有未使用的变量时警告"
 
-#: common.opt:834
+#: common.opt:838
 #, fuzzy, no-c-format
 #| msgid "Warn when a function is unused"
 msgid "Warn when a function is unused."
 msgstr "有未使用的函数时警告"
 
-#: common.opt:838
+#: common.opt:842
 #, fuzzy, no-c-format
 #| msgid "Warn when a label is unused"
 msgid "Warn when a label is unused."
 msgstr "有未使用的标号时警告"
 
-#: common.opt:842
+#: common.opt:846
 #, fuzzy, no-c-format
 #| msgid "Warn when a function parameter is unused"
 msgid "Warn when a function parameter is unused."
 msgstr "发现未使用的函数指针时给出警告"
 
-#: common.opt:846
+#: common.opt:850
 #, fuzzy, no-c-format
 #| msgid "Warn when an expression value is unused"
 msgid "Warn when an expression value is unused."
 msgstr "当一个表达式的值未被使用时给出警告"
 
-#: common.opt:850
+#: common.opt:854
 #, fuzzy, no-c-format
 #| msgid "Warn when a variable is unused"
 msgid "Warn when a variable is unused."
 msgstr "有未使用的变量时警告"
 
-#: common.opt:854
+#: common.opt:858
 #, fuzzy, no-c-format
 msgid "Warn in case profiles in -fprofile-use do not match."
 msgstr "当 -fprofile-use 中的样本不匹配时给出警告而非错误"
 
-#: 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 "当 -fprofile-use 中的样本不匹配时给出警告而非错误"
 
-#: common.opt:866
+#: common.opt:870
 #, fuzzy, no-c-format
 msgid "Warn when a vector operation is compiled outside the SIMD."
 msgstr "警告时矢量作业被编译外侧 SIMD"
 
-#: common.opt:870
+#: common.opt:874
 #, fuzzy, no-c-format
 #| msgid "Warn about unprototyped function declarations"
 msgid "Warn about unsupported features in ThreadSanitizer."
 msgstr "使用了非原型的函数声明时给出警告"
 
-#: common.opt:886
+#: common.opt:890
 #, fuzzy, no-c-format
 #| msgid "-aux-info <file>\tEmit declaration information into <file>"
 msgid "-aux-info <file>\tEmit declaration information into <file>."
 msgstr "-aux-info <文件>\t将声明信息写入文件"
 
-#: common.opt:899
+#: common.opt:903
 #, fuzzy, no-c-format
 #| msgid "-d<letters>\tEnable dumps from specific passes of the compiler"
 msgid "-d<letters>\tEnable dumps from specific passes of the compiler."
 msgstr "-d<字母>\t为指定的某趟汇译启用内存转储"
 
-#: common.opt:903
+#: common.opt:907
 #, fuzzy, no-c-format
 #| msgid "-dumpbase <file>\tSet the file basename to be used for dumps"
 msgid "-dumpbase <file>\tSet the file basename to be used for dumps."
 msgstr "-dumpbase <文件>\t设定内存转储使用的文件基本名"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "-dumpdir <dir>\tSet the directory name to be used for dumps"
 msgid "-dumpdir <dir>\tSet the directory name to be used for dumps."
 msgstr "-dumpdir <目录>\t设定内存转储使用的目录名"
 
-#: common.opt:1009
+#: common.opt:1013
 #, fuzzy, no-c-format
 msgid "The version of the C++ ABI in use."
 msgstr "ELF 文件 ABI 版本无效"
 
-#: common.opt:1013
+#: common.opt:1017
 #, no-c-format
 msgid "Aggressively optimize loops using language constraints."
 msgstr ""
 
-#: common.opt:1017
+#: common.opt:1021
 #, fuzzy, no-c-format
 #| msgid "Align the start of functions"
 msgid "Align the start of functions."
 msgstr "对齐函数入口"
 
-#: common.opt:1027
+#: common.opt:1031
 #, fuzzy, no-c-format
 #| msgid "Align labels which are only reached by jumping"
 msgid "Align labels which are only reached by jumping."
 msgstr "对齐只能为跳转所到达的标号"
 
-#: common.opt:1034
+#: common.opt:1038
 #, fuzzy, no-c-format
 #| msgid "Align all labels"
 msgid "Align all labels."
 msgstr "对齐所有的标号"
 
-#: common.opt:1041
+#: common.opt:1045
 #, fuzzy, no-c-format
 #| msgid "Align the start of loops"
 msgid "Align the start of loops."
 msgstr "对齐循环入口"
 
-#: 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 traditional preprocessing."
 msgid "Enable static analysis pass."
 msgstr "启用传统预处理。"
 
-#: common.opt:1072
+#: common.opt:1076
 #, fuzzy, no-c-format
 msgid "Select what to sanitize."
 msgstr "要显示什么以代替标记"
 
-#: common.opt:1076
+#: common.opt:1080
 #, fuzzy, no-c-format
 msgid "Select type of coverage sanitization."
 msgstr "要显示什么以代替标记"
 
-#: 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 "已弃用此开关;请改用 -Wextra"
 
-#: 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"
 msgid "Generate unwind tables that are exact at each instruction boundary."
 msgstr "生成精确到每条指令边界的堆栈展开表"
 
-#: common.opt:1117
+#: common.opt:1121
 #, fuzzy, no-c-format
 #| msgid "Generate auto-inc/dec instructions"
 msgid "Generate auto-inc/dec instructions."
 msgstr "生成 auto-inc/dec指令"
 
-#: common.opt:1121
+#: common.opt:1125
 #, fuzzy, 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
 #, fuzzy, 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"
 msgid "Generate code to check bounds before indexing arrays."
 msgstr "生成检查数组访问是否越界的代码"
 
-#: common.opt:1139
+#: common.opt:1143
 #, fuzzy, no-c-format
 #| msgid "Replace add, compare, branch with branch on count register"
 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"
 msgid "Use profiling information for branch probabilities."
 msgstr "为分支概率使用取样信息"
 
-#: common.opt:1159
+#: common.opt:1163
 #, fuzzy, no-c-format
 msgid "Output callgraph information on a per-file basis."
 msgstr "为每个函数重用 r30"
 
-#: common.opt:1163
+#: common.opt:1167
 #, fuzzy, no-c-format
 msgid "Output callgraph information on a per-file basis with decorations."
 msgstr "为每个函数重用 r30"
 
-#: common.opt:1167
+#: common.opt:1171
 #, fuzzy, no-c-format
 #| msgid "-fcall-saved-<register>\tMark <register> as being preserved across functions"
 msgid "-fcall-saved-<register>\tMark <register> as being preserved across functions."
 msgstr "-fcall-saved-<寄存器>\t认为寄存器在函数调用后值不变"
 
-#: common.opt:1171
+#: common.opt:1175
 #, fuzzy, no-c-format
 #| msgid "-fcall-used-<register>\tMark <register> as being corrupted by function calls"
 msgid "-fcall-used-<register>\tMark <register> as being corrupted by function calls."
 msgstr "-fcall-used-<寄存器>\t认为寄存器的值将被函数调用所改变"
 
-#: common.opt:1178
+#: common.opt:1182
 #, fuzzy, no-c-format
 #| msgid "Save registers around function calls"
 msgid "Save registers around function calls."
 msgstr "函数调用前后保存/恢复寄存器值"
 
-#: common.opt:1182
+#: common.opt:1186
 #, fuzzy, no-c-format
 #| msgid "This switch is deprecated; use -Wextra instead"
 msgid "This switch is deprecated; do not use."
 msgstr "已弃用此开关;请改用 -Wextra"
 
-#: common.opt:1186
+#: common.opt:1190
 #, fuzzy, no-c-format
 msgid "Check the return value of new in C++."
 msgstr "检查 new 的返回值"
 
-#: common.opt:1190 common.opt:1194
+#: common.opt:1194 common.opt:1198
 #, fuzzy, no-c-format
 #| msgid "internal consistency failure"
 msgid "Perform internal consistency checkings."
 msgstr "内部一致性错误"
 
-#: common.opt:1198
+#: common.opt:1202
 #, fuzzy, no-c-format
 #| msgid "Enable dead store elimination"
 msgid "Enable code hoisting."
 msgstr "删除死存储"
 
-#: common.opt:1202
+#: common.opt:1206
 #, fuzzy, 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 "Do not put uninitialized globals in the common section"
 msgid "Put uninitialized globals in the common section."
 msgstr "不将未初始化的全局数据放在公共节中"
 
-#: common.opt:1214
+#: common.opt:1218
 #, fuzzy, no-c-format
 #| msgid "-fcompare-debug[=<opts>]\tCompile with and without e.g. -gtoggle, and compare the final-insns dump"
 msgid "-fcompare-debug[=<opts>]\tCompile with and without e.g. -gtoggle, and compare the final-insns dump."
 msgstr "-fcompare-debug[=<选项>]\t分别在带与不带“选项”,例如 -gtoggle,的情况下编译,然后比较最后的指令输出"
 
-#: common.opt:1218
+#: common.opt:1222
 #, fuzzy, no-c-format
 #| msgid "Run only the second compilation of -fcompare-debug"
 msgid "Run only the second compilation of -fcompare-debug."
 msgstr "只为 -fcompare-debug 运行第二遍编译"
 
-#: common.opt:1222
+#: common.opt:1226
 #, fuzzy, no-c-format
 msgid "Perform comparison elimination after register allocation has finished."
 msgstr "在分配寄存器后进行全局公共子表达式消除"
 
-#: common.opt:1226
+#: common.opt:1230
 #, fuzzy, no-c-format
 #| msgid "Do not perform optimizations increasing noticeably stack usage"
 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"
 msgid "Perform a register copy-propagation optimization pass."
 msgstr "进行一趟寄存器副本传递优化"
 
-#: common.opt:1234
+#: common.opt:1238
 #, fuzzy, no-c-format
 #| msgid "Perform cross-jumping optimization"
 msgid "Perform cross-jumping optimization."
 msgstr "进行跨跳转优化"
 
-#: common.opt:1238
+#: common.opt:1242
 #, fuzzy, no-c-format
 #| msgid "When running CSE, follow jumps to their targets"
 msgid "When running CSE, follow jumps to their targets."
 msgstr "进行 CSE 时,跟随跳转至目标"
 
-#: common.opt:1246
+#: common.opt:1250
 #, fuzzy, no-c-format
 #| msgid "Omit range reduction step when performing complex division"
 msgid "Omit range reduction step when performing complex division."
 msgstr "当进行复数除法时省略缩减范围的步骤"
 
-#: common.opt:1250
+#: common.opt:1254
 #, fuzzy, no-c-format
 #| msgid "Complex multiplication and division follow Fortran rules"
 msgid "Complex multiplication and division follow Fortran rules."
 msgstr "复数乘除遵循 Fortran 规则"
 
-#: common.opt:1254
+#: common.opt:1258
 #, fuzzy, no-c-format
 #| msgid "Place data items into their own section"
 msgid "Place data items into their own section."
 msgstr "将每个数据项分别放在它们各自的节中"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "-fdbg-cnt=<counter>:<limit>[,<counter>:<limit>,...]\tSet the debug counter limit.   "
 msgid "-fdbg-cnt=<counter>[:<lower_limit1>-]<upper_limit1>[:<lower_limit2>-<upper_limit2>:...][,<counter>:...]\tSet the debug counter limit."
 msgstr "-fdbg-cnt=<计数器>:<极限>[,<计数器>:<极限>,...]\t设定调试计数器极限。"
 
-#: common.opt:1266
+#: common.opt:1270
 #, fuzzy, no-c-format
 #| msgid "Map one directory name to another in debug information"
 msgid "-fdebug-prefix-map=<old>=<new>\tMap one directory name to another in debug information."
 msgstr "在调试信息中将一个目录名映射到另一个"
 
-#: common.opt:1270
+#: common.opt:1274
 #, fuzzy, no-c-format
 #| msgid "Map one directory name to another in debug information"
 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 "使用 DWARF v4 debuginfo 时输出 .debug_types 区段。"
 
-#: common.opt:1280
+#: common.opt:1284
 #, fuzzy, no-c-format
 #| msgid "Defer popping functions args from stack until later"
 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"
 msgid "Attempt to fill delay slots of branch instructions."
 msgstr "尝试填充分支指令的延迟槽"
 
-#: common.opt:1288
+#: common.opt:1292
 #, no-c-format
 msgid "Delete dead instructions that may throw exceptions."
 msgstr ""
 
-#: common.opt:1292
+#: common.opt:1296
 #, fuzzy, no-c-format
 #| msgid "Delete useless null pointer checks"
 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 "允许非载入的投机移动"
 
-#: common.opt:1304
+#: common.opt:1308
 #, fuzzy, no-c-format
 msgid "Try to convert virtual calls to direct ones."
 msgstr "允许链接器将 PIC 调用转化为直接调用"
 
-#: common.opt:1308
+#: common.opt:1312
 #, fuzzy, no-c-format
 #| msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics"
 msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics."
 msgstr "-fdiagnostics-show-location=[once|every-line]\t指定在自动换行的诊断信息开始给出源位置的频率"
 
-#: 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
 #, no-c-format
 msgid "-fdiagnostics-color=[never|always|auto]\tColorize diagnostics."
 msgstr ""
 
-#: common.opt:1361
+#: common.opt:1365
 #, no-c-format
 msgid "-fdiagnostics-urls=[never|always|auto]\tEmbed URLs in diagnostics."
 msgstr ""
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Amend appropriate diagnostic messages with the command line option that controls them"
 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
 #, fuzzy, no-c-format
 #| msgid "-ftabstop=<number>\tDistance between tab stops for column reporting"
 msgid "-ftabstop=<number>      Distance between tab stops for column reporting."
 msgstr "-ftabstop=<N>\t指定报告列号时制表位间的距离"
 
-#: 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
 #, fuzzy, no-c-format
 msgid "-fdisable-[tree|rtl|ipa]-<pass>=range1+range2\tDisable an optimization pass."
 msgstr "-fdisable-[ 树|rtl|ipa ]-<pass>=range1+range2 停用最佳化回合"
 
-#: common.opt:1480
+#: common.opt:1484
 #, fuzzy, no-c-format
 msgid "-fenable-[tree|rtl|ipa]-<pass>=range1+range2\tEnable an optimization pass."
 msgstr "-fenable-[ 树|rtl|ipa ]-<pass>=range1+range2 启用最佳化回合"
 
-#: common.opt:1484
+#: common.opt:1488
 #, fuzzy, no-c-format
 #| msgid "-fdump-<type>\tDump various compiler internals to a file"
 msgid "-fdump-<type>\tDump various compiler internals to a file."
 msgstr "-fdump-<类型>\t将一些编译器内部信息转储到一个文件里"
 
-#: common.opt:1491
+#: common.opt:1495
 #, fuzzy, no-c-format
 #| msgid "-fdump-final-insns=filename\tDump to filename the insns at the end of translation"
 msgid "-fdump-final-insns=filename\tDump to filename the insns at the end of translation."
 msgstr "-fdump-final-insns=文件名\t在翻译完毕后将指令输出到文件中"
 
-#: common.opt:1495
+#: common.opt:1499
 #, fuzzy, no-c-format
 msgid "-fdump-go-spec=filename\tWrite all declarations to file as Go code."
 msgstr "-fdump-go-spec=文件名\t写入所有声明到文件作为前往编码"
 
-#: common.opt:1499
+#: common.opt:1503
 #, fuzzy, no-c-format
 #| msgid "Suppress output of addresses in debugging dumps"
 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 "调出基本的文件信息"
 
-#: common.opt:1516
+#: common.opt:1520
 #, fuzzy, no-c-format
 #| msgid "Suppress output of instruction numbers, line number notes and addresses in debugging dumps"
 msgid "Suppress output of instruction numbers, line number notes and addresses in debugging dumps."
 msgstr "在调试转储中不输出指令数、行号标记和地址"
 
-#: common.opt:1520
+#: common.opt:1524
 #, fuzzy, no-c-format
 #| msgid "Suppress output of previous and next insn numbers in debugging dumps"
 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 "用 GAS 汇编指示来启用 CFI 表"
 
-#: common.opt:1528
+#: common.opt:1532
 #, fuzzy, no-c-format
 #| msgid "Perform early inlining"
 msgid "Perform early inlining."
 msgstr "进行早内联"
 
-#: common.opt:1536
+#: common.opt:1540
 #, fuzzy, no-c-format
 #| msgid "Perform interprocedural reduction of aggregates"
 msgid "Perform interprocedural reduction of aggregates."
 msgstr "为聚合类型进行跨进程标量替换"
 
-#: common.opt:1540
+#: common.opt:1544
 #, fuzzy, no-c-format
 msgid "Perform unused symbol elimination in debug info."
 msgstr "在调试信息中进行无用类型消除"
 
-#: common.opt:1544
+#: common.opt:1548
 #, fuzzy, no-c-format
 #| msgid "Perform unused type elimination in debug info"
 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 "保留 C++ 类调试信息。"
 
-#: common.opt:1552
+#: common.opt:1556
 #, fuzzy, no-c-format
 #| msgid "Enable exception handling"
 msgid "Enable exception handling."
 msgstr "启用异常处理"
 
-#: common.opt:1556
+#: common.opt:1560
 #, fuzzy, no-c-format
 #| msgid "Perform a number of minor, expensive optimizations"
 msgid "Perform a number of minor, expensive optimizations."
 msgstr "进行一些细微的、代价高昂的优化"
 
-#: common.opt:1560
+#: common.opt:1564
 #, fuzzy, no-c-format
 #| msgid "-fexcess-precision=[fast|standard]\tSpecify handling of excess floating-point precision"
 msgid "-fexcess-precision=[fast|standard|16]\tSpecify handling of excess floating-point precision."
 msgstr "-fexcess-precision=[fast|standard]\t指定如何处理有额外精度的浮点数"
 
-#: 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
 #, fuzzy, no-c-format
 msgid "Output lto objects containing both the intermediate language and binary output."
 msgstr "输出 lto 对象包含两者中介语言和二进制输出。"
 
-#: common.opt:1598
+#: common.opt:1602
 #, fuzzy, no-c-format
 #| msgid "Assume no NaNs or infinities are generated"
 msgid "Assume no NaNs or infinities are generated."
 msgstr "假定结果不会是 NaN 或无穷大浮点数"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "-ffixed-<register>\tMark <register> as being unavailable to the compiler"
 msgid "-ffixed-<register>\tMark <register> as being unavailable to the compiler."
 msgstr "-ffixed-<寄存器>\t认为寄存器对编译器而言不可用"
 
-#: common.opt:1610
+#: common.opt:1614
 #, fuzzy, no-c-format
 #| msgid "Don't allocate floats and doubles in extended-precision registers"
 msgid "Don't allocate floats and doubles in extended-precision registers."
 msgstr "不将单精度和双精度浮点数分配到扩展精度的寄存器中"
 
-#: common.opt:1618
+#: common.opt:1622
 #, fuzzy, no-c-format
 #| msgid "Perform a forward propagation pass on RTL"
 msgid "Perform a forward propagation pass on RTL."
 msgstr "进行 RTL 上的前向传递"
 
-#: common.opt:1622
+#: common.opt:1626
 #, fuzzy, no-c-format
 msgid "-ffp-contract=[off|on|fast]\tPerform floating-point expression contraction."
 msgstr "-ffp-contract=[关闭|于|快速] 施行浮点运算式合约。"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Allow function addresses to be held in registers"
 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"
 msgid "Place each function into its own section."
 msgstr "将每个函数分别放在它们各自的节中"
 
-#: common.opt:1654
+#: common.opt:1658
 #, fuzzy, no-c-format
 #| msgid "Perform global common subexpression elimination"
 msgid "Perform global common subexpression elimination."
 msgstr "进行全局公共子表达式消除"
 
-#: common.opt:1658
+#: common.opt:1662
 #, fuzzy, no-c-format
 #| msgid "Perform enhanced load motion during global common subexpression elimination"
 msgid "Perform enhanced load motion during global common subexpression elimination."
 msgstr "在全局公共子表达式消除中进行增强的读转移优化"
 
-#: common.opt:1662
+#: common.opt:1666
 #, fuzzy, no-c-format
 #| msgid "Perform store motion after global common subexpression elimination"
 msgid "Perform store motion after global common subexpression elimination."
 msgstr "在全局公共子表达式消除后进行存储转移"
 
-#: common.opt:1666
+#: common.opt:1670
 #, fuzzy, no-c-format
 #| msgid "Perform redundant load after store elimination in global common subexpression"
 msgid "Perform redundant load after store elimination in global common subexpression elimination."
 msgstr "在全局公共子表达式消除中进行冗余的写后读消除"
 
-#: common.opt:1671
+#: common.opt:1675
 #, fuzzy, no-c-format
 #| msgid "Perform global common subexpression elimination after register allocation"
 msgid "Perform global common subexpression elimination after register allocation has finished."
 msgstr "在分配寄存器后进行全局公共子表达式消除"
 
-#: 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"
 msgid "Enable in and out of Graphite representation."
 msgstr "启用 Graphite 表示的输入输出"
 
-#: common.opt:1697
+#: common.opt:1701
 #, fuzzy, no-c-format
 #| msgid "Enable Graphite Identity transformation"
 msgid "Enable Graphite Identity transformation."
 msgstr "启用 Graphite 身份转换"
 
-#: common.opt:1701
+#: common.opt:1705
 #, fuzzy, no-c-format
 msgid "Enable hoisting adjacent loads to encourage generating conditional move instructions."
 msgstr "为条件指针外提内存读取操作。"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Mark all loops as parallel"
 msgid "Mark all loops as parallel."
 msgstr "将所有循环标记为并行"
 
-#: 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 "启用循环交换转换"
 
-#: common.opt:1723
+#: common.opt:1727
 #, fuzzy, no-c-format
 #| msgid "Enable loop header copying on trees"
 msgid "Enable loop interchange on trees."
 msgstr "启用树上的循环不变量转移"
 
-#: common.opt:1731
+#: common.opt:1735
 #, fuzzy, no-c-format
 #| msgid "Perform loop unrolling for all loops"
 msgid "Perform unroll-and-jam on loops."
 msgstr "展开所有循环"
 
-#: common.opt:1735
+#: common.opt:1739
 #, fuzzy, no-c-format
 msgid "Enable support for GNU transactional memory."
 msgstr "启用支持用于 GNU transactional 内存"
 
-#: common.opt:1739
+#: common.opt:1743
 #, no-c-format
 msgid "Use STB_GNU_UNIQUE if supported by the assembler."
 msgstr ""
 
-#: common.opt:1747
+#: common.opt:1751
 #, fuzzy, no-c-format
 #| msgid "Enable label alignment optimizations"
 msgid "Enable the loop nest optimizer."
 msgstr "启用标号对齐优化"
 
-#: common.opt:1751
+#: common.opt:1755
 #, fuzzy, no-c-format
 msgid "Force bitfield accesses to match their type width."
 msgstr "强制 bitfield 访问到匹配它们的类型宽度"
 
-#: 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"
 msgid "Enable guessing of branch probabilities."
 msgstr "启用分支概率猜测"
 
-#: 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"
 msgid "Process #ident directives."
 msgstr "处理 #ident 指令"
 
-#: common.opt:1779
+#: common.opt:1783
 #, fuzzy, no-c-format
 #| msgid "Perform conversion of conditional jumps to branchless equivalents"
 msgid "Perform conversion of conditional jumps to branchless equivalents."
 msgstr "将条件跳转替换为没有跳转的等值表示"
 
-#: common.opt:1783
+#: common.opt:1787
 #, fuzzy, no-c-format
 #| msgid "Perform conversion of conditional jumps to conditional execution"
 msgid "Perform conversion of conditional jumps to conditional execution."
 msgstr "将条件跳转替换为条件执行"
 
-#: 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 "将条件跳转替换为没有跳转的等值表示"
 
-#: common.opt:1815
+#: common.opt:1819
 #, fuzzy, no-c-format
 #| msgid "Do not generate .size directives"
 msgid "Do not generate .size directives."
 msgstr "不生成 .size 伪指令"
 
-#: common.opt:1819
+#: common.opt:1823
 #, fuzzy, no-c-format
 #| msgid "Perform indirect inlining"
 msgid "Perform indirect inlining."
 msgstr "进行间接内联"
 
-#: common.opt:1825
+#: common.opt:1829
 #, fuzzy, 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 "在不导致代码膨胀的情况下将简单函数集成到它们的调用者中"
 
-#: common.opt:1833
+#: common.opt:1837
 #, fuzzy, no-c-format
 msgid "Integrate functions not declared \"inline\" into their callers when profitable."
 msgstr "将只被调用一次的函数集成到它们的调用者中"
 
-#: common.opt:1837
+#: common.opt:1841
 #, fuzzy, no-c-format
 msgid "Integrate functions only required by their single caller."
 msgstr "将只被调用一次的函数集成到它们的调用者中"
 
-#: common.opt:1844
+#: common.opt:1848
 #, fuzzy, no-c-format
 #| msgid "-finline-limit=<number>\tLimit the size of inlined functions to <number>"
 msgid "-finline-limit=<number>\tLimit the size of inlined functions to <number>."
 msgstr "-finline-limit=<N>\t将内联函数的大小限制在 N 以内"
 
-#: common.opt:1848
+#: common.opt:1852
 #, fuzzy, no-c-format
 msgid "Inline __atomic operations when a lock free instruction sequence is available."
 msgstr "内联 __atomic 计算时锁定自由指令串行是可用。"
 
-#: 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"
 msgid "Instrument function entry and exit with profiling calls."
 msgstr "在函数入口和出口加入取样调用"
 
-#: common.opt:1882
+#: common.opt:1886
 #, fuzzy, no-c-format
 #| msgid "-finstrument-functions-exclude-function-list=name,...  Do not instrument listed functions"
 msgid "-finstrument-functions-exclude-function-list=name,...\tDo not instrument listed functions."
 msgstr "-finstrument-functions-exclude-function-list=函数名,...  取样时排除列出的函数"
 
-#: common.opt:1886
+#: common.opt:1890
 #, fuzzy, no-c-format
 #| msgid "-finstrument-functions-exclude-file-list=filename,...  Do not instrument functions listed in files"
 msgid "-finstrument-functions-exclude-file-list=filename,...\tDo not instrument functions listed in files."
 msgstr "-finstrument-functions-exclude-file-list=文件名,...  取样时排除列出的文件中的函数"
 
-#: common.opt:1890
+#: common.opt:1894
 #, fuzzy, no-c-format
 msgid "Perform interprocedural constant propagation."
 msgstr "进行进程间的复写传递"
 
-#: common.opt:1894
+#: common.opt:1898
 #, fuzzy, no-c-format
 #| msgid "Perform cloning to make Interprocedural constant propagation stronger"
 msgid "Perform cloning to make Interprocedural constant propagation stronger."
 msgstr "进行复制以使跨进程常量传递更有效"
 
-#: common.opt:1902
+#: common.opt:1906
 #, fuzzy, no-c-format
 msgid "Perform interprocedural bitwise constant propagation."
 msgstr "进行进程间的复写传递"
 
-#: common.opt:1906
+#: common.opt:1910
 #, fuzzy, no-c-format
 #| msgid "Perform interprocedural points-to analysis"
 msgid "Perform interprocedural modref analysis."
 msgstr "进行进程间的指向分析"
 
-#: common.opt:1910
+#: common.opt:1914
 #, fuzzy, no-c-format
 msgid "Perform interprocedural profile propagation."
 msgstr "进行进程间的复写传递"
 
-#: common.opt:1914
+#: common.opt:1918
 #, fuzzy, no-c-format
 #| msgid "Perform interprocedural points-to analysis"
 msgid "Perform interprocedural points-to analysis."
 msgstr "进行进程间的指向分析"
 
-#: common.opt:1918
+#: common.opt:1922
 #, fuzzy, no-c-format
 #| msgid "Discover pure and const functions"
 msgid "Discover pure and const functions."
 msgstr "发现纯函数和常函数"
 
-#: common.opt:1922
+#: common.opt:1926
 #, fuzzy, no-c-format
 msgid "Perform Identical Code Folding for functions and read-only variables."
 msgstr "展开所有循环"
 
-#: common.opt:1926
+#: common.opt:1930
 #, fuzzy, no-c-format
 msgid "Perform Identical Code Folding for functions."
 msgstr "展开所有循环"
 
-#: common.opt:1930
+#: common.opt:1934
 #, fuzzy, no-c-format
 msgid "Perform Identical Code Folding for variables."
 msgstr "展开所有循环"
 
-#: common.opt:1934
+#: common.opt:1938
 #, fuzzy, no-c-format
 #| msgid "Discover readonly and non addressable static variables"
 msgid "Discover read-only and non addressable static variables."
 msgstr "发现只读和不可寻址静态变量"
 
-#: common.opt:1938
+#: common.opt:1942
 #, fuzzy, no-c-format
 #| msgid "Discover readonly and non addressable static variables"
 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 Value Range Propagation on trees"
 msgid "Perform IPA Value Range Propagation."
 msgstr "进行树上的值域传递"
 
-#: common.opt:1958
+#: common.opt:1962
 #, fuzzy, no-c-format
 #| msgid "-fira-algorithm=[CB|priority] Set the used IRA algorithm"
 msgid "-fira-algorithm=[CB|priority]\tSet the used IRA algorithm."
 msgstr "-fira-algorithm=|CB|priority] 设置使用的 IRA 算法"
 
-#: common.opt:1962
+#: common.opt:1966
 #, fuzzy, no-c-format
 #| msgid "Assume strict aliasing rules apply"
 msgid "Assume strict aliasing rules apply across (uninlined) function boundaries."
 msgstr "假定应用强重叠规则"
 
-#: common.opt:1975
+#: common.opt:1979
 #, fuzzy, no-c-format
 #| msgid "-fira-region=[one|all|mixed] Set regions for IRA"
 msgid "-fira-region=[one|all|mixed]\tSet regions for IRA."
 msgstr "-fira-region=[one|all|mixed] 设置 IRA 的区域"
 
-#: common.opt:1991
+#: common.opt:1995
 #, fuzzy, no-c-format
 #| msgid "Use IRA based register pressure calculation"
 msgid "Use IRA based register pressure calculation in RTL hoist optimizations."
 msgstr "使用基于 IRA 的寄存器压力计算"
 
-#: common.opt:1996
+#: common.opt:2000
 #, fuzzy, no-c-format
 #| msgid "Use IRA based register pressure calculation"
 msgid "Use IRA based register pressure calculation in RTL loop optimizations."
 msgstr "使用基于 IRA 的寄存器压力计算"
 
-#: 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 "-fira-verbose=<N>\t控制 IRA 诊断信息的级别。"
 
-#: common.opt:2013
+#: common.opt:2017
 #, fuzzy, no-c-format
 #| msgid "Optimize induction variables on trees"
 msgid "Optimize induction variables on trees."
 msgstr "在树上优化归纳变量"
 
-#: common.opt:2017
+#: common.opt:2021
 #, fuzzy, no-c-format
 #| msgid "Use jump tables for sufficiently large switch statements"
 msgid "Use jump tables for sufficiently large switch statements."
 msgstr "为足够大的 switch 语句使用跳转表"
 
-#: common.opt:2021
+#: common.opt:2025
 #, fuzzy, no-c-format
 #| msgid "Use jump tables for sufficiently large switch statements"
 msgid "Use bit tests for sufficiently large switch statements."
 msgstr "为足够大的 switch 语句使用跳转表"
 
-#: common.opt:2025
+#: common.opt:2029
 #, fuzzy, no-c-format
 #| msgid "Generate code for functions even if they are fully inlined"
 msgid "Generate code for functions even if they are fully inlined."
 msgstr "为完全内联的函数生成代码"
 
-#: common.opt:2029
+#: common.opt:2033
 #, fuzzy, no-c-format
 #| msgid "Generate code for functions even if they are fully inlined"
 msgid "Generate code for static functions even if they are never called."
 msgstr "为完全内联的函数生成代码"
 
-#: common.opt:2033
+#: common.opt:2037
 #, fuzzy, no-c-format
 #| msgid "Emit static const variables even if they are not used"
 msgid "Emit static const variables even if they are not used."
 msgstr "保留未用到的静态常量"
 
-#: common.opt:2037
+#: common.opt:2041
 #, fuzzy, no-c-format
 #| msgid "Give external symbols a leading underscore"
 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
 #, no-c-format
 msgid "Enable link-time optimization."
 msgstr "启用链接时优化。"
 
-#: common.opt:2053
+#: common.opt:2057
 #, fuzzy, no-c-format
 msgid "Link-time optimization with number of parallel jobs or jobserver."
 msgstr "Link-time 最佳化与平行工作编号的或 jobserver。"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "-flto-compression-level=<number>\tUse zlib compression level <number> for IL"
 msgid "-flto-compression-level=<number>\tUse zlib/zstd compression level <number> for IL."
 msgstr "-flto-compression-level=<N>\t为 IL 使用 zlib 压缩级别 N"
 
-#: common.opt:2088
+#: common.opt:2092
 #, fuzzy, no-c-format
 #| msgid "Report various link-time optimization statistics"
 msgid "Report various link-time optimization statistics."
 msgstr "报告各种链接时优化统计"
 
-#: common.opt:2092
+#: common.opt:2096
 #, fuzzy, no-c-format
 msgid "Report various link-time optimization statistics for WPA only."
 msgstr "报告各种链接时优化统计"
 
-#: common.opt:2096
+#: common.opt:2100
 #, fuzzy, no-c-format
 #| msgid "Set errno after built-in math functions"
 msgid "Set errno after built-in math functions."
 msgstr "执行内建数学函数后设置 errno"
 
-#: common.opt:2100
+#: common.opt:2104
 #, fuzzy, no-c-format
 #| msgid "-fmax-errors=<number>\tMaximum number of errors to report"
 msgid "-fmax-errors=<number>\tMaximum number of errors to report."
 msgstr "-fmax-errors=<n>\t报告错误数量的上限值"
 
-#: common.opt:2104
+#: common.opt:2108
 #, fuzzy, no-c-format
 #| msgid "Report on permanent memory allocation"
 msgid "Report on permanent memory allocation."
 msgstr "报告永久性内存分配"
 
-#: common.opt:2108
+#: common.opt:2112
 #, fuzzy, no-c-format
 msgid "Report on permanent memory allocation in WPA only."
 msgstr "报告永久性内存分配"
 
-#: common.opt:2115
+#: common.opt:2119
 #, fuzzy, no-c-format
 #| msgid "Attempt to merge identical constants and constant variables"
 msgid "Attempt to merge identical constants and constant variables."
 msgstr "试图合并相同的常量和常变量"
 
-#: common.opt:2119
+#: common.opt:2123
 #, fuzzy, no-c-format
 #| msgid "Attempt to merge identical constants across compilation units"
 msgid "Attempt to merge identical constants across compilation units."
 msgstr "试图合并不同编译单元中的相同常量"
 
-#: common.opt:2123
+#: common.opt:2127
 #, fuzzy, no-c-format
 #| msgid "Attempt to merge identical debug strings across compilation units"
 msgid "Attempt to merge identical debug strings across compilation units."
 msgstr "试图合并不同编译单元中的相同调试字符串"
 
-#: common.opt:2127
+#: common.opt:2131
 #, fuzzy, no-c-format
 #| msgid "-fmessage-length=<number>\tLimit diagnostics to <number> characters per line.  0 suppresses line-wrapping"
 msgid "-fmessage-length=<number>\tLimit diagnostics to <number> characters per line.  0 suppresses line-wrapping."
 msgstr "-fmessage-length=<N>\t将诊断信息限制在每行 N 个字符。0 取消自动换行"
 
-#: common.opt:2131
+#: common.opt:2135
 #, fuzzy, no-c-format
 #| msgid "Perform SMS based modulo scheduling before the first scheduling pass"
 msgid "Perform SMS based modulo scheduling before the first scheduling pass."
 msgstr "在首趟调度前进行基于 SMS 的模调度"
 
-#: common.opt:2135
+#: common.opt:2139
 #, fuzzy, no-c-format
 #| msgid "Perform SMS based modulo scheduling with register moves allowed"
 msgid "Perform SMS based modulo scheduling with register moves allowed."
 msgstr "进行基于 SMS 且允许寄存器转移的模调度"
 
-#: common.opt:2139
+#: common.opt:2143
 #, fuzzy, no-c-format
 #| msgid "Move loop invariant computations out of loops"
 msgid "Move loop invariant computations out of loops."
 msgstr "将每次循环中不变的计算外提"
 
-#: common.opt:2143
+#: common.opt:2147
 #, fuzzy, no-c-format
 #| msgid "Align the start of loops"
 msgid "Move stores out of loops."
 msgstr "对齐循环入口"
 
-#: common.opt:2147
+#: common.opt:2151
 #, fuzzy, no-c-format
 #| msgid "Use the RTL dead code elimination pass"
 msgid "Use the RTL dead code elimination pass."
 msgstr "使用 RTL 死代码清除"
 
-#: common.opt:2151
+#: common.opt:2155
 #, fuzzy, no-c-format
 #| msgid "Use the RTL dead store elimination pass"
 msgid "Use the RTL dead store elimination pass."
 msgstr "使用 RTL 死存储清除"
 
-#: common.opt:2155
+#: common.opt:2159
 #, fuzzy, no-c-format
 #| msgid "Enable/Disable the traditional scheduling in loops that already passed modulo scheduling"
 msgid "Enable/Disable the traditional scheduling in loops that already passed modulo scheduling."
 msgstr "启用/禁用已经通过模调度的循环中的传统调度"
 
-#: common.opt:2159
+#: common.opt:2163
 #, fuzzy, no-c-format
 #| msgid "Support synchronous non-call exceptions"
 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
 #, fuzzy, no-c-format
 #| msgid "When possible do not generate stack frames"
 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 "在树级别进行循环优化"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Optimize sibling and tail recursive calls"
 msgid "Optimize sibling and tail recursive calls."
 msgstr "优化同级递归和尾递归"
 
-#: common.opt:2207
+#: common.opt:2211
 #, fuzzy, no-c-format
 #| msgid "Perform partial inlining"
 msgid "Perform partial inlining."
 msgstr "进行部分内联"
 
-#: common.opt:2211 common.opt:2215
+#: common.opt:2215 common.opt:2219
 #, fuzzy, no-c-format
 #| msgid "Report on memory allocation before interprocedural optimization"
 msgid "Report on memory allocation before interprocedural optimization."
 msgstr "在跨进程优化前报告内存分配"
 
-#: common.opt:2219
+#: common.opt:2223
 #, fuzzy, no-c-format
 #| msgid "Pack structure members together without holes"
 msgid "Pack structure members together without holes."
 msgstr "将结构成员不带间隔地紧实存放"
 
-#: common.opt:2223
+#: common.opt:2227
 #, fuzzy, no-c-format
 #| msgid "-fpack-struct=<number>\tSet initial maximum structure member alignment"
 msgid "-fpack-struct=<number>\tSet initial maximum structure member alignment."
 msgstr "-fpack-struct=<N>\t设定结构成员最大对齐边界的初始值"
 
-#: common.opt:2227
+#: common.opt:2231
 #, fuzzy, no-c-format
 #| msgid "Return small aggregates in memory, not registers"
 msgid "Return small aggregates in memory, not registers."
 msgstr "在内存而不是寄存器中返回小聚合"
 
-#: common.opt:2231
+#: common.opt:2235
 #, fuzzy, no-c-format
 #| msgid "Perform loop peeling"
 msgid "Perform loop peeling."
 msgstr "进行循环剥离"
 
-#: common.opt:2235
+#: common.opt:2239
 #, fuzzy, no-c-format
 #| msgid "Enable machine specific peephole optimizations"
 msgid "Enable machine specific peephole optimizations."
 msgstr "启用机器相关的窥孔优化"
 
-#: common.opt:2239
+#: common.opt:2243
 #, fuzzy, no-c-format
 #| msgid "Enable an RTL peephole pass before sched2"
 msgid "Enable an RTL peephole pass before sched2."
 msgstr "在 sched2 前进行一趟 RTL 窥孔优化"
 
-#: common.opt:2243
+#: common.opt:2247
 #, fuzzy, no-c-format
 #| msgid "Generate position-independent code if possible (large mode)"
 msgid "Generate position-independent code if possible (large mode)."
 msgstr "尽可能生成与位置无关的代码(大模式)"
 
-#: common.opt:2247
+#: common.opt:2251
 #, fuzzy, no-c-format
 #| msgid "Generate position-independent code for executables if possible (large mode)"
 msgid "Generate position-independent code for executables if possible (large mode)."
 msgstr "为可执行文件尽可能生成与位置无关的代码(大模式)"
 
-#: common.opt:2251
+#: common.opt:2255
 #, fuzzy, no-c-format
 #| msgid "Generate position-independent code if possible (small mode)"
 msgid "Generate position-independent code if possible (small mode)."
 msgstr "尽可能生成与位置无关的代码(小模式)"
 
-#: common.opt:2255
+#: common.opt:2259
 #, fuzzy, no-c-format
 #| msgid "Generate position-independent code for executables if possible (small mode)"
 msgid "Generate position-independent code for executables if possible (small mode)."
 msgstr "为可执行文件尽可能生成与位置无关的代码(小模式)"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Specify a plugin to load"
 msgid "Specify a plugin to load."
 msgstr "指定要加载的插件"
 
-#: common.opt:2267
+#: common.opt:2271
 #, fuzzy, no-c-format
 #| msgid "-fplugin-arg-<name>-<key>[=<value>]\tSpecify argument <key>=<value> for plugin <name>"
 msgid "-fplugin-arg-<name>-<key>[=<value>]\tSpecify argument <key>=<value> for plugin <name>."
 msgstr "-fplugin-arg-<插件>-<键>[=<值>]\t为插件指定参数键=值"
 
-#: common.opt:2271
+#: common.opt:2275
 #, no-c-format
 msgid "Run predictive commoning optimization."
 msgstr "启用预测公因子优化。"
 
-#: common.opt:2275
+#: common.opt:2279
 #, fuzzy, no-c-format
 #| msgid "Generate prefetch instructions, if available, for arrays in loops"
 msgid "Generate prefetch instructions, if available, for arrays in loops."
 msgstr "如果可用,为循环中的数组生成预取指令"
 
-#: common.opt:2279
+#: common.opt:2283
 #, fuzzy, no-c-format
 #| msgid "Enable basic program profiling code"
 msgid "Enable basic program profiling code."
 msgstr "启用基本程序取样代码"
 
-#: common.opt:2283
+#: common.opt:2287
 #, fuzzy, no-c-format
 msgid "Generate absolute source path names for gcov."
 msgstr "生成快速间接调用"
 
-#: common.opt:2287
+#: common.opt:2291
 #, fuzzy, no-c-format
 #| msgid "Insert arc-based program profiling code"
 msgid "Insert arc-based program profiling code."
 msgstr "插入基于弧的程序取样代码"
 
-#: common.opt:2291
+#: common.opt:2295
 #, fuzzy, no-c-format
 #| msgid "Set the top-level directory for storing the profile data."
 msgid "Set the top-level directory for storing the profile data. The default is 'pwd'."
 msgstr "指定存储的取样数据的顶级目录"
 
-#: common.opt:2296
+#: common.opt:2300
 #, fuzzy, no-c-format
 #| msgid "Set the top-level directory for storing the profile data."
 msgid "Select the name for storing the profile note file."
 msgstr "指定存储的取样数据的顶级目录"
 
-#: common.opt:2300
+#: common.opt:2304
 #, fuzzy, no-c-format
 #| msgid "Enable correction of flow inconsistent profile data input"
 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
 #, fuzzy, no-c-format
 #| msgid "Map one directory name to another in debug information"
 msgid "-fprofile-prefix-map=<old>=<new>\tMap one directory name to another in GCOV coverage result."
 msgstr "在调试信息中将一个目录名映射到另一个"
 
-#: common.opt:2352
+#: common.opt:2356
 #, fuzzy, no-c-format
 #| msgid "Enable common options for generating profile info for profile feedback directed optimizations"
 msgid "Enable common options for generating profile info for profile feedback directed optimizations."
 msgstr "启用一些公共选项来生成样本文件,以便进行基于取样的优化"
 
-#: common.opt:2356
+#: common.opt:2360
 #, fuzzy, no-c-format
 #| msgid "Enable common options for generating profile info for profile feedback directed optimizations, and set -fprofile-dir="
 msgid "Enable common options for generating profile info for profile feedback directed optimizations, and set -fprofile-dir=."
 msgstr "启用生成取样信息的公共选项以支持基于取样反馈的优化,同时设置 -fprofile-dir="
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Enable common options for performing profile feedback directed optimizations"
 msgid "Enable common options for performing profile feedback directed optimizations."
 msgstr "启用一些公共选项以进行基于取样的优化"
 
-#: common.opt:2376
+#: common.opt:2380
 #, fuzzy, no-c-format
 #| msgid "Enable common options for performing profile feedback directed optimizations, and set -fprofile-dir="
 msgid "Enable common options for performing profile feedback directed optimizations, and set -fprofile-dir=."
 msgstr "启用公共选项以进行基于取样反馈的优化,同时设置 -fprofile-dir="
 
-#: common.opt:2380
+#: common.opt:2384
 #, fuzzy, no-c-format
 #| msgid "Insert code to profile values of expressions"
 msgid "Insert code to profile values of expressions."
 msgstr "为取样表达式的值插入相关代码"
 
-#: common.opt:2384
+#: common.opt:2388
 #, fuzzy, no-c-format
 msgid "Report on consistency of profile."
 msgstr "内部一致性错误"
 
-#: common.opt:2388
+#: common.opt:2392
 #, fuzzy, no-c-format
 msgid "Enable function reordering that improves code placement."
 msgstr "函数重新排序以改善代码布局"
 
-#: common.opt:2392
+#: common.opt:2396
 #, fuzzy, no-c-format
 #| msgid "Generate cld instruction in the function prologue."
 msgid "Insert NOP instructions at each function entry."
 msgstr "在函数序言中生成 cld 指令"
 
-#: common.opt:2399
+#: common.opt:2403
 #, fuzzy, no-c-format
 #| msgid "-frandom-seed=<number>\tMake compile reproducible using <number>"
 msgid "-frandom-seed=<string>\tMake compile reproducible using <string>."
 msgstr "-frandom-seed=<数字>\t使用 <数字> 以使编译可复现"
 
-#: common.opt:2409
+#: common.opt:2413
 #, no-c-format
 msgid "Record gcc command line switches in the object file."
 msgstr "在目标文件中记录 gcc 命令行开关。"
 
-#: common.opt:2413
+#: common.opt:2417
 #, fuzzy, no-c-format
 #| msgid "Return small aggregates in registers"
 msgid "Return small aggregates in registers."
 msgstr "在寄存器中返回小聚合"
 
-#: 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 "启用对寄存器压力敏感的指令调度"
 
-#: common.opt:2455
+#: common.opt:2459
 #, fuzzy, no-c-format
 #| msgid "Perform a register renaming optimization pass"
 msgid "Perform a register renaming optimization pass."
 msgstr "进行寄存器重命名优化"
 
-#: common.opt:2459
+#: common.opt:2463
 #, fuzzy, no-c-format
 msgid "Perform a target dependent instruction fusion optimization pass."
 msgstr "进行寄存器重命名优化"
 
-#: common.opt:2463
+#: common.opt:2467
 #, fuzzy, no-c-format
 #| msgid "Reorder basic blocks to improve code placement"
 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
 #, fuzzy, no-c-format
 #| msgid "Reorder basic blocks and partition into hot and cold sections"
 msgid "Reorder basic blocks and partition into hot and cold sections."
 msgstr "对基本块重新排序并划分为热区和冷区"
 
-#: common.opt:2484
+#: common.opt:2488
 #, fuzzy, no-c-format
 #| msgid "Reorder functions to improve code placement"
 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"
 msgid "Add a common subexpression elimination pass after loop optimizations."
 msgstr "在循环优化结束后增加一趟公共子表达式消除"
 
-#: common.opt:2496
+#: common.opt:2500
 #, fuzzy, no-c-format
 #| msgid "Disable optimizations that assume default FP rounding behavior"
 msgid "Disable optimizations that assume default FP rounding behavior."
 msgstr "禁用假定默认浮点舍入行为的优化"
 
-#: common.opt:2500
+#: common.opt:2504
 #, fuzzy, no-c-format
 #| msgid "Enable scheduling across basic blocks"
 msgid "Enable scheduling across basic blocks."
 msgstr "启用基本块间的调度"
 
-#: common.opt:2504
+#: common.opt:2508
 #, fuzzy, no-c-format
 #| msgid "Enable register pressure sensitive insn scheduling"
 msgid "Enable register pressure sensitive insn scheduling."
 msgstr "启用对寄存器压力敏感的指令调度"
 
-#: common.opt:2508
+#: common.opt:2512
 #, fuzzy, no-c-format
 #| msgid "Allow speculative motion of non-loads"
 msgid "Allow speculative motion of non-loads."
 msgstr "允许非载入的投机移动"
 
-#: common.opt:2512
+#: common.opt:2516
 #, fuzzy, no-c-format
 #| msgid "Allow speculative motion of some loads"
 msgid "Allow speculative motion of some loads."
 msgstr "允许一些载入的投机移动"
 
-#: common.opt:2516
+#: common.opt:2520
 #, fuzzy, no-c-format
 #| msgid "Allow speculative motion of more loads"
 msgid "Allow speculative motion of more loads."
 msgstr "允许更多载入的投机移动"
 
-#: common.opt:2520
+#: common.opt:2524
 #, fuzzy, no-c-format
 #| msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler"
 msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler."
 msgstr "-fsched-verbose=<N>\t指定调度器的冗余级别"
 
-#: common.opt:2524
+#: common.opt:2528
 #, fuzzy, no-c-format
 #| msgid "If scheduling post reload, do superblock scheduling"
 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"
 msgid "Reschedule instructions before register allocation."
 msgstr "分配寄存器前重新调度指令"
 
-#: common.opt:2536
+#: common.opt:2540
 #, fuzzy, no-c-format
 #| msgid "Reschedule instructions after register allocation"
 msgid "Reschedule instructions after register allocation."
 msgstr "分配寄存器后重新调度指令"
 
-#: common.opt:2543
+#: common.opt:2547
 #, fuzzy, no-c-format
 #| msgid "Schedule instructions using selective scheduling algorithm"
 msgid "Schedule instructions using selective scheduling algorithm."
 msgstr "用选择性调度算法调度指令"
 
-#: common.opt:2547
+#: common.opt:2551
 #, fuzzy, no-c-format
 #| msgid "Run selective scheduling after reload"
 msgid "Run selective scheduling after reload."
 msgstr "在重加载后使用选择性调度"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Perform software pipelining of inner loops during selective scheduling"
 msgid "Perform software pipelining of inner loops during selective scheduling."
 msgstr "在选择性调度中对内层循环进行软件流水化"
 
-#: common.opt:2559
+#: common.opt:2563
 #, fuzzy, no-c-format
 #| msgid "Perform software pipelining of outer loops during selective scheduling"
 msgid "Perform software pipelining of outer loops during selective scheduling."
 msgstr "在选择性调度中对外层循环进行软件流水化"
 
-#: common.opt:2563
+#: common.opt:2567
 #, fuzzy, no-c-format
 #| msgid "Reschedule pipelined regions without pipelining"
 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
 #, fuzzy, no-c-format
 #| msgid "Allow premature scheduling of queued insns"
 msgid "Allow premature scheduling of queued insns."
 msgstr "允许对队列中的指令进行早调度"
 
-#: common.opt:2577
+#: common.opt:2581
 #, fuzzy, no-c-format
 #| msgid "-fsched-stalled-insns=<number>\tSet number of queued insns that can be prematurely scheduled"
 msgid "-fsched-stalled-insns=<number>\tSet number of queued insns that can be prematurely scheduled."
 msgstr "-fsched-stalled-insns=<N>\t指定能被早期调度的在排队中的指令的最大数量"
 
-#: common.opt:2585
+#: common.opt:2589
 #, fuzzy, no-c-format
 #| msgid "Set dependence distance checking in premature scheduling of queued insns"
 msgid "Set dependence distance checking in premature scheduling of queued insns."
 msgstr "设置排队中指令的进行早调度的依赖距离检查"
 
-#: common.opt:2589
+#: common.opt:2593
 #, fuzzy, no-c-format
 #| msgid "-fsched-stalled-insns-dep=<number>\tSet dependence distance checking in premature scheduling of queued insns"
 msgid "-fsched-stalled-insns-dep=<number>\tSet dependence distance checking in premature scheduling of queued insns."
 msgstr "-fsched-stalled-insns-dep=<N>\t设置排队中指令的进行早调度的依赖距离检查"
 
-#: common.opt:2593
+#: common.opt:2597
 #, fuzzy, no-c-format
 #| msgid "Enable the group heuristic in the scheduler"
 msgid "Enable the group heuristic in the scheduler."
 msgstr "在调度器中启用组启发"
 
-#: common.opt:2597
+#: common.opt:2601
 #, fuzzy, no-c-format
 #| msgid "Enable the critical path heuristic in the scheduler"
 msgid "Enable the critical path heuristic in the scheduler."
 msgstr "为调度器启用关键路径启发式发现"
 
-#: common.opt:2601
+#: common.opt:2605
 #, fuzzy, no-c-format
 #| msgid "Enable the speculative instruction heuristic in the scheduler"
 msgid "Enable the speculative instruction heuristic in the scheduler."
 msgstr "为调度器启用投机指令启发式发现"
 
-#: common.opt:2605
+#: common.opt:2609
 #, fuzzy, no-c-format
 #| msgid "Enable the rank heuristic in the scheduler"
 msgid "Enable the rank heuristic in the scheduler."
 msgstr "在调度器中启用秩启发"
 
-#: common.opt:2609
+#: common.opt:2613
 #, fuzzy, no-c-format
 #| msgid "Enable the last instruction heuristic in the scheduler"
 msgid "Enable the last instruction heuristic in the scheduler."
 msgstr "为调度器启用最近指令启发式发现"
 
-#: common.opt:2613
+#: common.opt:2617
 #, fuzzy, no-c-format
 #| msgid "Enable the dependent count heuristic in the scheduler"
 msgid "Enable the dependent count heuristic in the scheduler."
 msgstr "为调度器启用依赖计数启发式发现"
 
-#: common.opt:2617
+#: common.opt:2621
 #, fuzzy, no-c-format
 #| msgid "Access data in the same section from shared anchor points"
 msgid "Access data in the same section from shared anchor points."
 msgstr "从共享的锚点访问在同样的节中的数据"
 
-#: common.opt:2629
+#: common.opt:2633
 #, fuzzy, no-c-format
 msgid "Turn on Redundant Extensions Elimination pass."
 msgstr "打开冗余延伸 Elimination 回合。"
 
-#: common.opt:2633
+#: common.opt:2637
 #, fuzzy, no-c-format
 #| msgid "Show column numbers in diagnostics, when available.  Default on"
 msgid "Show column numbers in diagnostics, when available.  Default on."
 msgstr "诊断信息中给出行号。默认打开"
 
-#: common.opt:2637
+#: common.opt:2641
 #, fuzzy, 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 "Emit 函数 prologues 只有之前零件的函数该需要它,"
 
-#: common.opt:2642
+#: common.opt:2646
 #, no-c-format
 msgid "Shrink-wrap parts of the prologue and epilogue separately."
 msgstr ""
 
-#: common.opt:2646
+#: common.opt:2650
 #, fuzzy, no-c-format
 #| msgid "Disable optimizations observable by IEEE signaling NaNs"
 msgid "Disable optimizations observable by IEEE signaling NaNs."
 msgstr "禁用为 IEEE NaN 可见的优化"
 
-#: common.opt:2650
+#: common.opt:2654
 #, fuzzy, no-c-format
 #| msgid "Disable floating point optimizations that ignore the IEEE signedness of zero"
 msgid "Disable floating point optimizations that ignore the IEEE signedness of zero."
 msgstr "禁用忽略 IEEE 中零的符号的浮点优化"
 
-#: common.opt:2654
+#: common.opt:2658
 #, fuzzy, no-c-format
 #| msgid "Convert floating point constants to single precision constants"
 msgid "Convert floating point constants to single precision constants."
 msgstr "将浮点常量转换为单精度常量"
 
-#: common.opt:2658
+#: common.opt:2662
 #, fuzzy, no-c-format
 #| msgid "Split lifetimes of induction variables when loops are unrolled"
 msgid "Split lifetimes of induction variables when loops are unrolled."
 msgstr "展开循环时分离归纳变量的生存期"
 
-#: common.opt:2662
+#: common.opt:2666
 #, fuzzy, no-c-format
 msgid "Generate discontiguous stack frames."
 msgstr "生成与 APCS 相容的栈帧"
 
-#: common.opt:2666
+#: common.opt:2670
 #, fuzzy, no-c-format
 #| msgid "Split wide types into independent registers"
 msgid "Split wide types into independent registers."
 msgstr "将宽类型分割到独立的寄存器中"
 
-#: common.opt:2670
+#: common.opt:2674
 #, fuzzy, no-c-format
 #| msgid "Split wide types into independent registers"
 msgid "Split wide types into independent registers earlier."
 msgstr "将宽类型分割到独立的寄存器中"
 
-#: common.opt:2674
+#: common.opt:2678
 #, fuzzy, no-c-format
 #| msgid "Enable forward propagation on trees"
 msgid "Enable backward propagation of use properties at the SSA level."
 msgstr "在树级别进行前向复写传递"
 
-#: common.opt:2678
+#: common.opt:2682
 #, no-c-format
 msgid "Optimize conditional patterns using SSA PHI nodes."
 msgstr ""
 
-#: common.opt:2682
+#: common.opt:2686
 #, fuzzy, 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"
 msgid "Apply variable expansion when loops are unrolled."
 msgstr "展开循环时也展开变量"
 
-#: common.opt:2690
+#: common.opt:2694
 #, fuzzy, no-c-format
 #| msgid "-fstack-check=[no|generic|specific]\tInsert stack checking code into the program"
 msgid "-fstack-check=[no|generic|specific]\tInsert stack checking code into the program."
 msgstr "-fstack-check=[no|generic|specific]\t在程序中插入检查栈溢出的代码"
 
-#: common.opt:2694
+#: common.opt:2698
 #, fuzzy, no-c-format
 #| msgid "Insert stack checking code into the program.  Same as -fstack-check=specific"
 msgid "Insert stack checking code into the program.  Same as -fstack-check=specific."
 msgstr "在程序中插入检查栈溢出的代码。与 fstack-check=specific 相同"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>"
 msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>."
 msgstr "-fstack-limit-symbol=<寄存器>\t当堆栈越过寄存器时引发陷阱"
 
-#: common.opt:2710
+#: common.opt:2714
 #, fuzzy, no-c-format
 #| msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>"
 msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>."
 msgstr "-fstack-limit-symbol=<符号>\t当堆栈越过符号时引发陷阱"
 
-#: common.opt:2714
+#: common.opt:2718
 #, fuzzy, no-c-format
 #| msgid "Use propolice as a stack protection method"
 msgid "Use propolice as a stack protection method."
 msgstr "使用 propolice 来保护堆栈"
 
-#: common.opt:2718
+#: common.opt:2722
 #, fuzzy, no-c-format
 #| msgid "Use a stack protection method for every function"
 msgid "Use a stack protection method for every function."
 msgstr "为每个函数使用堆栈保护机制"
 
-#: common.opt:2722
+#: common.opt:2726
 #, fuzzy, no-c-format
 msgid "Use a smart stack protection method for certain functions."
 msgstr "为每个函数使用堆栈保护机制"
 
-#: common.opt:2726
+#: common.opt:2730
 #, fuzzy, no-c-format
 msgid "Use stack protection method only for functions with the stack_protect attribute."
 msgstr "为每个函数使用堆栈保护机制"
 
-#: common.opt:2730
+#: common.opt:2734
 #, fuzzy, no-c-format
 msgid "Output stack usage information on a per-function basis."
 msgstr "为每个函数重用 r30"
 
-#: common.opt:2742
+#: common.opt:2746
 #, fuzzy, no-c-format
 #| msgid "Assume strict aliasing rules apply"
 msgid "Assume strict aliasing rules apply."
 msgstr "假定应用强重叠规则"
 
-#: common.opt:2746
+#: common.opt:2750
 #, fuzzy, no-c-format
 #| msgid "Treat signed overflow as undefined"
 msgid "Treat signed overflow as undefined.  Negated as -fwrapv -fwrapv-pointer."
 msgstr "将有符号数溢出的行为视为未定义的"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Check for syntax errors, then stop"
 msgid "Check for syntax errors, then stop."
 msgstr "检查语法错误,然后停止"
 
-#: common.opt:2758
+#: common.opt:2762
 #, fuzzy, no-c-format
 #| msgid "Create data files needed by \"gcov\""
 msgid "Create data files needed by \"gcov\"."
 msgstr "生成“gcov”需要的数据文件"
 
-#: common.opt:2762
+#: common.opt:2766
 #, fuzzy, no-c-format
 #| msgid "Perform jump threading optimizations"
 msgid "Perform jump threading optimizations."
 msgstr "进行跳转线程优化"
 
-#: common.opt:2766
+#: common.opt:2770
 #, fuzzy, no-c-format
 #| msgid "Report the time taken by each compiler pass"
 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
 #, fuzzy, no-c-format
 #| msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model"
 msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model."
 msgstr "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\t设定默认的线程局部存储代码生成模式"
 
-#: common.opt:2793
+#: common.opt:2797
 #, fuzzy, no-c-format
 #| msgid "Reorder top level functions, variables, and asms"
 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"
 msgid "Perform superblock formation via tail duplication."
 msgstr "通过尾复制进行超块合成"
 
-#: 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"
 msgid "Assume floating-point operations can trap."
 msgstr "假定浮点运算可能引发陷阱"
 
-#: common.opt:2813
+#: common.opt:2817
 #, fuzzy, no-c-format
 #| msgid "Trap for signed overflow in addition, subtraction and multiplication"
 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"
 msgid "Enable SSA-CCP optimization on trees."
 msgstr "启用树上的 SSA-CCP 优化"
 
-#: common.opt:2821
+#: common.opt:2825
 #, fuzzy, no-c-format
 msgid "Enable SSA-BIT-CCP optimization on trees."
 msgstr "启用树上的 SSA-CCP 优化"
 
-#: common.opt:2829
+#: common.opt:2833
 #, fuzzy, no-c-format
 #| msgid "Enable loop header copying on trees"
 msgid "Enable loop header copying on trees."
 msgstr "启用树上的循环不变量转移"
 
-#: common.opt:2837
+#: common.opt:2841
 #, fuzzy, no-c-format
 msgid "Enable SSA coalescing of user variables."
 msgstr "进行变量追踪并且标记未被初始化的变量"
 
-#: common.opt:2845
+#: common.opt:2849
 #, fuzzy, no-c-format
 #| msgid "Enable copy propagation on trees"
 msgid "Enable copy propagation on trees."
 msgstr "在树级别进行复写传递"
 
-#: common.opt:2853
+#: common.opt:2857
 #, fuzzy, no-c-format
 #| msgid "Transform condition stores into unconditional ones"
 msgid "Transform condition stores into unconditional ones."
 msgstr "将条件存储转换为非条件存储"
 
-#: common.opt:2857
+#: common.opt:2861
 #, no-c-format
 msgid "Perform conversions of switch initializations."
 msgstr "转换开关初始化"
 
-#: common.opt:2861
+#: common.opt:2865
 #, fuzzy, no-c-format
 #| msgid "Enable SSA dead code elimination optimization on trees"
 msgid "Enable SSA dead code elimination optimization on trees."
 msgstr "启用树上的 SSA 死代码消除优化"
 
-#: common.opt:2865
+#: common.opt:2869
 #, fuzzy, no-c-format
 #| msgid "Enable dominator optimizations"
 msgid "Enable dominator optimizations."
 msgstr "启用主导优化"
 
-#: common.opt:2869
+#: common.opt:2873
 #, fuzzy, no-c-format
 msgid "Enable tail merging on trees."
 msgstr "在树级别进行复写传递"
 
-#: common.opt:2873
+#: common.opt:2877
 #, fuzzy, no-c-format
 #| msgid "Enable dead store elimination"
 msgid "Enable dead store elimination."
 msgstr "删除死存储"
 
-#: common.opt:2877
+#: common.opt:2881
 #, fuzzy, no-c-format
 #| msgid "Enable forward propagation on trees"
 msgid "Enable forward propagation on trees."
 msgstr "在树级别进行前向复写传递"
 
-#: common.opt:2881
+#: common.opt:2885
 #, fuzzy, no-c-format
 #| msgid "Enable Full Redundancy Elimination (FRE) on trees"
 msgid "Enable Full Redundancy Elimination (FRE) on trees."
 msgstr "启用树上的完全冗余消除(FRE)"
 
-#: common.opt:2885
+#: common.opt:2889
 #, fuzzy, no-c-format
 msgid "Enable string length optimizations on trees."
 msgstr "启用树上的 SSA-CCP 优化"
 
-#: 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"
 msgid "Enable loop distribution on trees."
 msgstr "在树上进行循环分配"
 
-#: common.opt:2906
+#: common.opt:2910
 #, fuzzy, no-c-format
 msgid "Enable loop distribution for patterns transformed into a library call."
 msgstr "在树上进行循环分配"
 
-#: common.opt:2910
+#: common.opt:2914
 #, fuzzy, no-c-format
 #| msgid "Enable loop invariant motion on trees"
 msgid "Enable loop invariant motion on trees."
 msgstr "启用树上的循环不变量转移"
 
-#: common.opt:2918
+#: common.opt:2922
 #, fuzzy, no-c-format
 #| msgid "Create canonical induction variables in loops"
 msgid "Create canonical induction variables in loops."
 msgstr "在循环中生成正规的归纳变量"
 
-#: common.opt:2922
+#: common.opt:2926
 #, fuzzy, no-c-format
 #| msgid "Enable loop optimizations on tree level"
 msgid "Enable loop optimizations on tree level."
 msgstr "在树级别进行循环优化"
 
-#: common.opt:2926
+#: common.opt:2930
 #, fuzzy, no-c-format
 #| msgid "Enable automatic parallelization of loops"
 msgid "-ftree-parallelize-loops=<number>\tEnable automatic parallelization of loops."
 msgstr "启用循环的自动并行化"
 
-#: common.opt:2930
+#: common.opt:2934
 #, no-c-format
 msgid "Enable hoisting loads from conditional pointers."
 msgstr "为条件指针外提内存读取操作。"
 
-#: common.opt:2934
+#: common.opt:2938
 #, fuzzy, no-c-format
 #| msgid "Enable SSA-PRE optimization on trees"
 msgid "Enable SSA-PRE optimization on trees."
 msgstr "启用树上的 SSA-PRE 优化"
 
-#: 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
 #, no-c-format
 msgid "Perform function-local points-to analysis on trees."
 msgstr "在树上进行函数内的指向分析。"
 
-#: common.opt:2946
+#: common.opt:2950
 #, fuzzy, no-c-format
 #| msgid "Enable reassociation on tree level"
 msgid "Enable reassociation on tree level."
 msgstr "在树级别进行重结合"
 
-#: common.opt:2954
+#: common.opt:2958
 #, fuzzy, no-c-format
 #| msgid "Enable SSA code sinking on trees"
 msgid "Enable SSA code sinking on trees."
 msgstr "启用树上的 SSA 代码下沉优化"
 
-#: common.opt:2958
+#: common.opt:2962
 #, fuzzy, 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"
 msgid "Perform scalar replacement of aggregates."
 msgstr "为聚合类型进行标量替换"
 
-#: common.opt:2966
+#: common.opt:2970
 #, fuzzy, no-c-format
 #| msgid "Replace temporary expressions in the SSA->normal pass"
 msgid "Replace temporary expressions in the SSA->normal pass."
 msgstr "在 SSA->normal 过程中替换临时表达式"
 
-#: common.opt:2970
+#: common.opt:2974
 #, fuzzy, no-c-format
 #| msgid "Perform live range splitting during the SSA->normal pass"
 msgid "Perform live range splitting during the SSA->normal pass."
 msgstr "在 SSA->normal 过程中分离活动范围"
 
-#: common.opt:2974
+#: common.opt:2978
 #, fuzzy, no-c-format
 #| msgid "Perform Value Range Propagation on trees"
 msgid "Perform Value Range Propagation on trees."
 msgstr "进行树上的值域传递"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Compile whole compilation unit at a time"
 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"
 msgid "Perform loop unrolling when iteration count is known."
 msgstr "展开所有迭代次数已知的循环"
 
-#: common.opt:2995
+#: common.opt:2999
 #, fuzzy, no-c-format
 #| msgid "Perform loop unrolling for all loops"
 msgid "Perform loop unrolling for all loops."
 msgstr "展开所有循环"
 
-#: common.opt:3010
+#: common.opt:3014
 #, fuzzy, no-c-format
 #| msgid "Allow optimization for floating-point arithmetic which may change the"
 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 "与 -fassociative-math 相同,作用于包含除法的表达式。"
 
-#: common.opt:3023
+#: common.opt:3027
 #, fuzzy, no-c-format
 #| msgid "Allow math optimizations that may violate IEEE or ISO standards"
 msgid "Allow math optimizations that may violate IEEE or ISO standards."
 msgstr "允许可能违反 IEEE 或 ISO 标准的优化"
 
-#: common.opt:3027
+#: common.opt:3031
 #, fuzzy, no-c-format
 #| msgid "Perform loop unswitching"
 msgid "Perform loop unswitching."
 msgstr "外提循环内的测试语句"
 
-#: common.opt:3031
+#: common.opt:3035
 #, fuzzy, no-c-format
 #| msgid "Perform loop peeling"
 msgid "Perform loop splitting."
 msgstr "进行循环剥离"
 
-#: 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"
 msgid "Just generate unwind tables for exception handling."
 msgstr "仅为异常处理生成堆栈展开表"
 
-#: common.opt:3043
+#: common.opt:3047
 #, fuzzy, no-c-format
 msgid "Use the bfd linker instead of the default linker."
 msgstr "使用硬件桶型移位器代替仿真"
 
-#: common.opt:3047
+#: common.opt:3051
 #, fuzzy, no-c-format
 msgid "Use the gold linker instead of the default linker."
 msgstr "使用硬件桶型移位器代替仿真"
 
-#: common.opt:3051
+#: common.opt:3055
 #, fuzzy, no-c-format
 msgid "Use the lld LLVM linker instead of the default linker."
 msgstr "使用硬件桶型移位器代替仿真"
 
-#: common.opt:3055
+#: common.opt:3059
 #, fuzzy, no-c-format
 msgid "Use the Modern linker (MOLD) linker instead of the default linker."
 msgstr "使用硬件桶型移位器代替仿真"
 
-#: common.opt:3065
+#: common.opt:3069
 #, fuzzy, no-c-format
 #| msgid "Perform variable tracking"
 msgid "Perform variable tracking."
 msgstr "进行变量跟踪"
 
-#: common.opt:3072
+#: common.opt:3076
 #, fuzzy, no-c-format
 #| msgid "Perform variable tracking by annotating assignments"
 msgid "Perform variable tracking by annotating assignments."
 msgstr "评注赋值以进行变量跟踪"
 
-#: common.opt:3078
+#: common.opt:3082
 #, fuzzy, no-c-format
 #| msgid "Toggle -fvar-tracking-assignments"
 msgid "Toggle -fvar-tracking-assignments."
 msgstr "切换 -fvar-tracking-assignments"
 
-#: common.opt:3085
+#: common.opt:3089
 #, fuzzy, no-c-format
 #| msgid "Perform variable tracking and also tag variables that are uninitialized"
 msgid "Perform variable tracking and also tag variables that are uninitialized."
 msgstr "进行变量追踪并且标记未被初始化的变量"
 
-#: common.opt:3090
+#: common.opt:3094
 #, fuzzy, no-c-format
 msgid "Enable vectorization on trees."
 msgstr "在树上进行循环向量化"
 
-#: common.opt:3098
+#: common.opt:3102
 #, fuzzy, no-c-format
 #| msgid "Enable loop vectorization on trees"
 msgid "Enable loop vectorization on trees."
 msgstr "在树上进行循环向量化"
 
-#: common.opt:3102
+#: common.opt:3106
 #, fuzzy, no-c-format
 #| msgid "Enable basic block vectorization (SLP) on trees"
 msgid "Enable basic block vectorization (SLP) on trees."
 msgstr "在树上进行基本块向量化(SLP)"
 
-#: 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 "启用向量化开销模型"
 
-#: 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 "启用向量化开销模型"
 
-#: common.opt:3129
+#: common.opt:3133
 #, fuzzy, no-c-format
 msgid "Enables the dynamic vectorizer cost model.  Preserved for backward compatibility."
 msgstr "不起作用。为向前兼容保留的选项。"
 
-#: common.opt:3137
+#: common.opt:3141
 #, no-c-format
 msgid "Enable copy propagation of scalar-evolution information."
 msgstr "为标量演化信息进行复写传递。"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Add extra commentary to assembler output"
 msgid "Add extra commentary to assembler output."
 msgstr "为汇编输出添加额外注释"
 
-#: common.opt:3167
+#: common.opt:3171
 #, fuzzy, no-c-format
 #| msgid "-fvisibility=[default|internal|hidden|protected]\tSet the default symbol visibility"
 msgid "-fvisibility=[default|internal|hidden|protected]\tSet the default symbol visibility."
 msgstr "-fvisibility=[default|internal|hidden|protected]\t设置符号的默认可见性"
 
-#: common.opt:3186
+#: common.opt:3190
 #, no-c-format
 msgid "Validate vtable pointers before using them."
 msgstr ""
 
-#: common.opt:3202
+#: common.opt:3206
 #, no-c-format
 msgid "Output vtable verification counters."
 msgstr ""
 
-#: common.opt:3206
+#: common.opt:3210
 #, no-c-format
 msgid "Output vtable verification pointer sets information."
 msgstr ""
 
-#: common.opt:3210
+#: common.opt:3214
 #, fuzzy, no-c-format
 #| msgid "Use expression value profiles in optimizations"
 msgid "Use expression value profiles in optimizations."
 msgstr "在优化中使用表达式值样本提供的信息"
 
-#: common.opt:3214
+#: common.opt:3218
 #, fuzzy, no-c-format
 #| msgid "Construct webs and split unrelated uses of single variable"
 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"
 msgid "Enable conditional dead code elimination for builtin calls."
 msgstr "为内建函数启用有条件的死代码消除优化"
 
-#: common.opt:3222
+#: common.opt:3226
 #, fuzzy, no-c-format
 #| msgid "Perform whole program optimizations"
 msgid "Perform whole program optimizations."
 msgstr "进行全程序优化"
 
-#: common.opt:3226
+#: common.opt:3230
 #, fuzzy, no-c-format
 #| msgid "Assume signed arithmetic overflow wraps around"
 msgid "Assume pointer overflow wraps around."
 msgstr "假定有符号运算溢出时回绕"
 
-#: common.opt:3230
+#: common.opt:3234
 #, fuzzy, no-c-format
 #| msgid "Assume signed arithmetic overflow wraps around"
 msgid "Assume signed arithmetic overflow wraps around."
 msgstr "假定有符号运算溢出时回绕"
 
-#: common.opt:3234
+#: common.opt:3238
 #, fuzzy, no-c-format
 #| msgid "Put zero initialized data in the bss section"
 msgid "Put zero initialized data in the bss section."
 msgstr "将初始化为零的数据存放在 bss 节中"
 
-#: common.opt:3238
+#: common.opt:3242
 #, fuzzy, no-c-format
 #| msgid "Save registers around function calls"
 msgid "Clear call-used registers upon function return."
 msgstr "函数调用前后保存/恢复寄存器值"
 
-#: common.opt:3242
+#: common.opt:3246
 #, fuzzy, no-c-format
 #| msgid "Generate debug information in default format"
 msgid "Generate debug information in default format."
 msgstr "生成默认格式的调试信息"
 
-#: common.opt:3246
+#: common.opt:3250
 #, fuzzy, no-c-format
 #| msgid "%<-fsplit-stack%> requires assembler support for CFI directives"
 msgid "Assume assembler support for (DWARF2+) .loc directives."
 msgstr "%<-fsplit-stack%>需要汇编器支持 CFI 伪指令"
 
-#: common.opt:3250
+#: common.opt:3254
 #, fuzzy, no-c-format
 #| msgid "%<-fsplit-stack%> requires assembler support for CFI directives"
 msgid "Assume assembler support for view in (DWARF2+) .loc directives."
 msgstr "%<-fsplit-stack%>需要汇编器支持 CFI 伪指令"
 
-#: 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 "生成默认格式的调试信息"
 
-#: 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 "生成默认格式的调试信息"
 
-#: common.opt:3284
+#: common.opt:3288
 #, fuzzy, no-c-format
 msgid "Generate debug information in default version of DWARF format."
 msgstr "生成 DWARF v2(或更新)格式的调试信息"
 
-#: common.opt:3288
+#: common.opt:3292
 #, fuzzy, no-c-format
 #| msgid "Generate debug information in DWARF v2 (or later) format"
 msgid "Generate debug information in DWARF v2 (or later) format."
 msgstr "生成 DWARF v2(或更新)格式的调试信息"
 
-#: 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"
 msgid "Generate debug information in default extended format."
 msgstr "生成默认扩展格式的调试信息"
 
-#: common.opt:3304
+#: common.opt:3308
 #, fuzzy, no-c-format
 #| msgid "Generate a single exit point for each function"
 msgid "Generate extended entry point information for inlined functions."
 msgstr "为每个函数生成单一的退出点"
 
-#: 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
 #, no-c-format
 msgid "Don't generate DWARF pubnames and pubtypes sections."
 msgstr ""
 
-#: common.opt:3320
+#: common.opt:3324
 #, no-c-format
 msgid "Generate DWARF pubnames and pubtypes sections."
 msgstr ""
 
-#: common.opt:3324
+#: common.opt:3328
 #, no-c-format
 msgid "Generate DWARF pubnames and pubtypes sections with GNU extensions."
 msgstr ""
 
-#: common.opt:3328
+#: common.opt:3332
 #, fuzzy, no-c-format
 msgid "Record gcc command line switches in DWARF DW_AT_producer."
 msgstr "在目标文件中记录 gcc 命令行开关。"
 
-#: common.opt:3332
+#: common.opt:3336
 #, fuzzy, no-c-format
 msgid "Generate debug information in separate .dwo files."
 msgstr "生成默认格式的调试信息"
 
-#: common.opt:3336
+#: common.opt:3340
 #, fuzzy, no-c-format
 #| msgid "Generate debug information in STABS format"
 msgid "Generate debug information in STABS format."
 msgstr "生成 STABS 格式的调试信息"
 
-#: common.opt:3340
+#: common.opt:3344
 #, fuzzy, no-c-format
 #| msgid "Generate debug information in extended STABS format"
 msgid "Generate debug information in extended STABS format."
 msgstr "生成扩展 STABS 格式的调试信息"
 
-#: common.opt:3344
+#: common.opt:3348
 #, no-c-format
 msgid "Emit progressive recommended breakpoint locations."
 msgstr ""
 
-#: common.opt:3348
+#: common.opt:3352
 #, fuzzy, no-c-format
 #| msgid "Don't emit DWARF additions beyond selected version"
 msgid "Don't emit DWARF additions beyond selected version."
 msgstr "不生成较所选版本更先进的 DWARF 附加信息"
 
-#: 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"
 msgid "Toggle debug information generation."
 msgstr "切换调试信息生成"
 
-#: common.opt:3360
+#: common.opt:3364
 #, no-c-format
 msgid "Augment variable location lists with progressive views."
 msgstr ""
 
-#: common.opt:3367
+#: common.opt:3371
 #, fuzzy, no-c-format
 #| msgid "Generate debug information in VMS format"
 msgid "Generate debug information in VMS format."
 msgstr "生成 VMS 格式的调试信息"
 
-#: common.opt:3371
+#: common.opt:3375
 #, fuzzy, no-c-format
 #| msgid "Generate debug information in XCOFF format"
 msgid "Generate debug information in XCOFF format."
 msgstr "生成 XCOFF 格式的调试信息"
 
-#: common.opt:3375
+#: common.opt:3379
 #, fuzzy, no-c-format
 #| msgid "Generate debug information in extended XCOFF format"
 msgid "Generate debug information in extended XCOFF format."
 msgstr "生成 XCOFF 扩展格式的调试信息"
 
-#: common.opt:3393
+#: common.opt:3397
 #, fuzzy, no-c-format
 msgid "Generate compressed debug sections."
 msgstr "生成 VMS 格式的调试信息"
 
-#: common.opt:3397
+#: common.opt:3401
 #, fuzzy, no-c-format
 msgid "-gz=<format>\tGenerate compressed debug sections in format <format>."
 msgstr "生成默认格式的调试信息"
 
-#: common.opt:3404
+#: common.opt:3408
 #, fuzzy, no-c-format
 #| msgid "-iplugindir=<dir>\tSet <dir> to be the default plugin directory"
 msgid "-iplugindir=<dir>\tSet <dir> to be the default plugin directory."
 msgstr "-iplugindir=<目录>\t将目录设定为默认的插件子目录"
 
-#: common.opt:3408
+#: common.opt:3412
 #, fuzzy, no-c-format
 msgid "-imultiarch <dir>\tSet <dir> to be the multiarch include subdirectory."
 msgstr "-imultilib <目录>\t将目录设定为 multilib 的包含子目录"
 
-#: common.opt:3433
+#: common.opt:3437
 #, fuzzy, no-c-format
 #| msgid "-o <file>\tPlace output into <file>"
 msgid "-o <file>\tPlace output into <file>."
 msgstr "-o <文件>\t将输出写入文件"
 
-#: common.opt:3437
+#: common.opt:3441
 #, fuzzy, no-c-format
 #| msgid "Enable function profiling"
 msgid "Enable function profiling."
 msgstr "启用函数取样"
 
-#: common.opt:3447
+#: common.opt:3451
 #, fuzzy, no-c-format
 #| msgid "Like -pedantic but issue them as errors"
 msgid "Like -pedantic but issue them as errors."
 msgstr "与 -pedantic 类似,但将它们视作错误"
 
-#: common.opt:3487
+#: common.opt:3491
 #, fuzzy, no-c-format
 #| msgid "Do not display functions compiled or elapsed time"
 msgid "Do not display functions compiled or elapsed time."
 msgstr "不显示编译的函数或逝去的时间"
 
-#: common.opt:3519
+#: common.opt:3523
 #, fuzzy, no-c-format
 #| msgid "Enable verbose output"
 msgid "Enable verbose output."
 msgstr "启用详细输出"
 
-#: common.opt:3523
+#: common.opt:3527
 #, fuzzy, no-c-format
 #| msgid "Display the compiler's version"
 msgid "Display the compiler's version."
 msgstr "显示编译器版本"
 
-#: common.opt:3527
+#: common.opt:3531
 #, fuzzy, no-c-format
 #| msgid "Suppress warnings"
 msgid "Suppress warnings."
 msgstr "不显示警告"
 
-#: common.opt:3537
+#: common.opt:3541
 #, fuzzy, no-c-format
 #| msgid "Create a shared library"
 msgid "Create a shared library."
 msgstr "生成一个共享库"
 
-#: common.opt:3589
+#: common.opt:3593
 #, fuzzy, no-c-format
 #| msgid "Create a position independent executable"
 msgid "Don't create a dynamically linked position independent executable."
 msgstr "生成位置无关可执行文件"
 
-#: common.opt:3593
+#: common.opt:3597
 #, fuzzy, no-c-format
 #| msgid "Create a position independent executable"
 msgid "Create a dynamically linked position independent executable."
 msgstr "生成位置无关可执行文件"
 
-#: common.opt:3597
+#: common.opt:3601
 #, fuzzy, no-c-format
 #| msgid "Create a position independent executable"
 msgid "Create a static position independent executable."
 msgstr "生成位置无关可执行文件"
 
-#: common.opt:3604
+#: common.opt:3608
 #, no-c-format
 msgid "Use caller save register across calls if possible."
 msgstr ""
@@ -16852,7 +16924,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
@@ -17257,7 +17329,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
@@ -17350,676 +17422,687 @@ msgid "The maximum number of backtrack attempts the scheduler should make when m
 msgstr "单个循环中考虑展开的最大指令数"
 
 #: params.opt:618
+#, no-c-format
+msgid "Minimum page size for warning purposes."
+msgstr ""
+
+#: params.opt:622
 #, fuzzy, no-c-format
 #| msgid "Maximum length of partial antic set when performing tree pre optimization"
 msgid "Maximum length of partial antic set when performing tree pre optimization."
 msgstr "进行树上部分冗余消除时部分可预期集的最大长度"
 
-#: params.opt:622
+#: params.opt:626
 #, fuzzy, no-c-format
 msgid "The maximum number of branches on the path through the peeled sequence."
 msgstr "通过 CFG 以扩展区域的最大循环次数"
 
-#: params.opt:626
+#: params.opt:630
 #, fuzzy, no-c-format
 #| msgid "The maximum number of peelings of a single loop"
 msgid "The maximum number of peelings of a single loop."
 msgstr "单个循环最大的剥离数"
 
-#: params.opt:630
+#: params.opt:634
 #, fuzzy, no-c-format
 #| msgid "The maximum number of insns of a peeled loop"
 msgid "The maximum number of insns of a peeled loop."
 msgstr "剥离后的循环所能有的最大指令数"
 
-#: params.opt:634
+#: params.opt:638
 #, fuzzy, no-c-format
 #| msgid "The maximum length of scheduling's pending operations list"
 msgid "The maximum length of scheduling's pending operations list."
 msgstr "调度候选操作列表的最大长度"
 
-#: 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"
 msgid "The maximum number of blocks in a region to be considered for interblock scheduling."
 msgstr "一个区域中考虑进行块间调度的最大块数"
 
-#: 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"
 msgid "The maximum number of insns in a region to be considered for interblock scheduling."
 msgstr "一个区域中考虑进行块间调度的最大指令数"
 
-#: 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"
 msgid "The maximum number of loop iterations we predict statically."
 msgstr "静态预测时的最多循环次数"
 
-#: params.opt:654
+#: params.opt:658
 #, fuzzy, no-c-format
 #| msgid "The maximum number of instructions to search backward when looking for equivalent reload"
 msgid "The maximum number of instructions to search backward when looking for equivalent reload."
 msgstr "后向搜索以寻找等价重载入时要搜索的最大指令数量"
 
-#: params.opt:658
+#: params.opt:662
 #, fuzzy, no-c-format
 #| msgid "Maximum number of instructions in basic block to be considered for SLP vectorization"
 msgid "Maximum number of insns in a basic block to consider for RTL if-conversion."
 msgstr "考虑进行基本块向量化的基本块能包含的指令数上限"
 
-#: 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"
 msgid "The maximum number of iterations through CFG to extend regions."
 msgstr "通过 CFG 以扩展区域的最大循环次数"
 
-#: params.opt:674
+#: params.opt:678
 #, fuzzy, no-c-format
 #| msgid "The maximum conflict delay for an insn to be considered for speculative motion"
 msgid "The maximum conflict delay for an insn to be considered for speculative motion."
 msgstr "考虑进行投机移动的指令的最大冲突延迟数"
 
-#: 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"
 msgid "The maximum number of instructions ready to be issued to be considered by the scheduler during the first scheduling pass."
 msgstr "首趟调度考虑准备生成的指令的最大数量"
 
-#: params.opt:690
+#: params.opt:694
 #, fuzzy, 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 "最大值现用本地保存数量在中 RTL 无作用保存体 elimination"
 
-#: params.opt:706
+#: params.opt:710
 #, fuzzy, no-c-format
 msgid "Maximum number of conditional store pairs that can be sunk."
 msgstr "指定一条指令最多能被调度几次"
 
-#: 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 "最大值现用本地保存数量在中 RTL 无作用保存体 elimination"
 
-#: params.opt:718
+#: params.opt:722
 #, fuzzy, no-c-format
 msgid "Maximum amount of similar bbs to compare a bb with."
 msgstr "最大值数目的类似的 bbs 到比较 bb 与"
 
-#: params.opt:722
+#: params.opt:726
 #, fuzzy, no-c-format
 msgid "Maximum amount of iterations of the pass over a function."
 msgstr "最大值数目的反复运算的回合之上函数"
 
-#: params.opt:726
+#: params.opt:730
 #, fuzzy, no-c-format
 msgid "Maximum number of strings for which strlen optimization pass will track string lengths."
 msgstr "最大值字串数量用于该项 strlen 最佳化回合将轨段字串长度"
 
-#: 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"
 msgid "The maximum number of unrollings of a single loop."
 msgstr "单个循环最多可以被展开的次数"
 
-#: params.opt:738
+#: params.opt:742
 #, fuzzy, no-c-format
 #| msgid "The maximum number of instructions to consider to unroll in a loop"
 msgid "The maximum number of instructions to consider to unroll in a loop."
 msgstr "单个循环中考虑展开的最大指令数"
 
-#: params.opt:742
+#: params.opt:746
 #, fuzzy, no-c-format
 #| msgid "The maximum number of insns of an unswitched loop"
 msgid "The maximum number of insns of an unswitched loop."
 msgstr "去开关后的循环所能有的最大指令数"
 
-#: params.opt:746
+#: params.opt:750
 #, fuzzy, no-c-format
 #| msgid "The maximum number of unswitchings in a single loop"
 msgid "The maximum number of unswitchings in a single loop."
 msgstr "单个循环中考虑去开关的最大指令数"
 
-#: params.opt:750
+#: params.opt:754
 #, fuzzy, no-c-format
 #| msgid "If -fvariable-expansion-in-unroller is used, the maximum number of times that an individual variable will be expanded during loop unrolling"
 msgid "If -fvariable-expansion-in-unroller is used, the maximum number of times that an individual variable will be expanded during loop unrolling."
 msgstr "如果使用了 -fvariable-expansion-in-unroller,即指单个变量在循环展开时可以同时被展开的次数"
 
-#: params.opt:754
+#: params.opt:758
 #, fuzzy, no-c-format
 msgid "Max. recursion depth for expanding var tracking expressions."
 msgstr "最大递归深度用于展开 var 追踪运算式"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Max. size of var tracking hash tables"
 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
 #, no-c-format
 msgid "Maximum number of assertions to add along the default edge of a switch statement during VRP."
 msgstr ""
 
-#: params.opt:774
+#: params.opt:778
 #, fuzzy, no-c-format
 #| msgid "The minimum number of matching instructions to consider for crossjumping"
 msgid "The minimum number of matching instructions to consider for crossjumping."
 msgstr "考虑进行交叉跳转的最小匹配指令数量"
 
-#: params.opt:778
+#: params.opt:782
 #, fuzzy, no-c-format
 #| msgid "Inline recursively only when the probability of call being executed exceeds the parameter"
 msgid "Inline recursively only when the probability of call being executed exceeds the parameter."
 msgstr "仅当被执行的调用的概率超过此参数时方进行递归地内联"
 
-#: params.opt:782
+#: params.opt:786
 #, fuzzy, no-c-format
 #| msgid "Min. ratio of insns to prefetches to enable prefetching for a loop with an unknown trip count"
 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
 #, fuzzy, no-c-format
 #| msgid "The minimum UID to be used for a nondebug insn"
 msgid "The minimum UID to be used for a nondebug insn."
 msgstr "非调试指令所使用的最小 UID"
 
-#: 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"
 msgid "The minimum probability of reaching a source block for interblock speculative scheduling."
 msgstr "块间投机调度时到达一个源块的最小概率"
 
-#: params.opt:802
+#: params.opt:806
 #, fuzzy, no-c-format
 #| msgid "If -ftree-vectorize is used, the minimal loop bound of a loop to be considered for vectorization"
 msgid "If -ftree-vectorize is used, the minimal loop bound of a loop to be considered for vectorization."
 msgstr "使用 -ftree-vectorize 时考虑进行向量化的循环次数下限"
 
-#: 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 "The maximum number of instructions to consider to unroll in a loop"
 msgid "Minimum number of iterations per thread of an innermost parallelized loop."
 msgstr "单个循环中考虑展开的最大指令数"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "Maximum probability of the entry BB of split region (in percent relative to entry BB of the function) to make partial inlining happen"
 msgid "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
 #, fuzzy, no-c-format
 #| msgid "Maximal estimated outcome of branch considered predictable"
 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"
 msgid "The number of insns executed before prefetch is completed."
 msgstr "预取操作完成前执行指令的数目"
 
-#: params.opt:878
+#: params.opt:882
 #, fuzzy, no-c-format
 #| msgid "Min. ratio of insns to mem ops to enable prefetching in a loop"
 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 "gimple 调用中有非法函数"
 
-#: 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 times that an insn could be scheduled"
 msgid "Maximum number of relations the oracle will register in a basic block."
 msgstr "指定一条指令最多能被调度几次"
 
-#: params.opt:924
+#: params.opt:928
 #, fuzzy, no-c-format
 #| msgid "The maximum depth of a loop nest we completely peel"
 msgid "Maximum depth of a loop nest to fully value-number optimistically."
 msgstr "一个完全剥离的循环嵌套所能有的最大深度"
 
-#: params.opt:928
+#: params.opt:932
 #, fuzzy, no-c-format
 msgid "Maximum number of disambiguations to perform per memory access."
 msgstr "最大值条件保存对数量该可以是 sunk"
 
-#: params.opt:932
+#: params.opt:936
 #, fuzzy, no-c-format
 msgid "Bound on the complexity of the expressions in the scalar evolutions analyzer."
 msgstr "用在标量演化分析器中的表达式的大小上限"
 
-#: params.opt:936
+#: params.opt:940
 #, fuzzy, no-c-format
 #| msgid "Bound on size of expressions used in the scalar evolutions analyzer"
 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
 #, fuzzy, no-c-format
 #| msgid "Minimal distance between possibly conflicting store and load"
 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
 #, no-c-format
 msgid "The minimal probability of speculation success (in percents), so that speculative insn will be scheduled."
 msgstr "以百分比表示的投机成功的最小概率,影响对投机指令的调度"
 
-#: 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"
 msgid "Maximum number of instructions in the ready list that are considered eligible for renaming."
 msgstr "在适合行重命名的就绪列表中最多的指令数"
 
-#: params.opt:964
+#: params.opt:968
 #, fuzzy, no-c-format
 #| msgid "The maximum size of the lookahead window of selective scheduling"
 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"
 msgid "Maximum number of times that an insn could be scheduled."
 msgstr "指定一条指令最多能被调度几次"
 
-#: params.opt:972
+#: params.opt:976
 #, fuzzy, no-c-format
 #| msgid "The number of prefetches that can run at the same time"
 msgid "The number of prefetches that can run at the same time."
 msgstr "可以同时运行的预取操作数目"
 
-#: params.opt:976
+#: params.opt:980
 #, fuzzy, 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
 #, fuzzy, no-c-format
 #| msgid "The number of cycles the swing modulo scheduler considers when checking conflicts using DFA"
 msgid "The number of cycles the swing modulo scheduler considers when checking conflicts using DFA."
 msgstr "使用 DFA 检查冲突时摆动模调度器考虑的周期数"
 
-#: params.opt:984
+#: params.opt:988
 #, fuzzy, no-c-format
 #| msgid "A threshold on the average loop count considered by the swing modulo scheduler"
 msgid "A threshold on the average loop count considered by the swing modulo scheduler."
 msgstr "由摆动模调度程序考虑的关于平均循环计数的阈值 "
 
-#: params.opt:988
+#: params.opt:992
 #, fuzzy, no-c-format
 #| msgid "A factor for tuning the upper bound that swing modulo scheduler uses for scheduling a loop"
 msgid "A factor for tuning the upper bound that swing modulo scheduler uses for scheduling a loop."
 msgstr "调整摆动模调度器调度循环时使用的上限的一个因素"
 
-#: params.opt:992
+#: params.opt:996
 #, fuzzy, no-c-format
 msgid "The minimum value of stage count that swing modulo scheduler will generate."
 msgstr "最小值的阶段计数该 Swing 类别 modulo 调度程序将产生。"
 
-#: 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 instructions to consider to unroll in a loop on average"
 msgid "The maximum number of SSA_NAME assignments to follow in determining a value."
 msgstr "单个循环中考虑展开的平均最大指令数"
 
-#: params.opt:1012
+#: params.opt:1016
 #, fuzzy, no-c-format
 #| msgid "The lower bound for a buffer to be considered for stack smashing protection"
 msgid "The lower bound for a buffer to be considered for stack smashing protection."
 msgstr "考虑预防堆栈溢出的缓冲区的下限值"
 
-#: 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
 #, fuzzy, no-c-format
 #| msgid "The maximum ratio between array size and switch branches for a switch conversion to take place"
 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 parameters in a SCoP"
 msgid "Maximum number of bases stored in each modref tree."
 msgstr "一个静态控制部分(ScoP)中参数的最大数量"
 
-#: params.opt:1040
+#: params.opt:1044
 #, fuzzy, no-c-format
 #| msgid "maximum number of parameters in a SCoP"
 msgid "Maximum number of references stored in each modref base."
 msgstr "一个静态控制部分(ScoP)中参数的最大数量"
 
-#: params.opt:1044
+#: params.opt:1048
 #, fuzzy, no-c-format
 msgid "Maximum number of accesses stored in each modref reference."
 msgstr "最大值现用本地保存数量在中 RTL 无作用保存体 elimination"
 
-#: params.opt:1048
+#: params.opt:1052
 #, fuzzy, no-c-format
 msgid "Maximum number of tests performed by modref query."
 msgstr "最大值条件保存对数量该可以是 sunk"
 
-#: 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 times that an insn could be scheduled"
 msgid "Maximum number of escape points tracked by modref per SSA-name."
 msgstr "指定一条指令最多能被调度几次"
 
-#: params.opt:1060
+#: params.opt:1064
 #, fuzzy, no-c-format
 #| msgid "Maximum number of times that an insn could be scheduled"
 msgid "Maximum number of times a given range is adjusted during the dataflow."
 msgstr "指定一条指令最多能被调度几次"
 
-#: 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
 #, fuzzy, 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 "大小在中字节之后该项 thread-local 汇总应该被器具与记录档函数以代替保存/还原对"
 
-#: params.opt:1081
+#: params.opt:1085
 #, fuzzy, no-c-format
 #| msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
 msgid "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
 #, fuzzy, no-c-format
 #| msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
 msgid "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
 #, fuzzy, no-c-format
 #| msgid "Maximal code growth caused by tail duplication (in percent)"
 msgid "Maximal code growth caused by tail duplication (in percent)."
 msgstr "以百分比表示的尾复制所引起的最大代码膨胀"
 
-#: params.opt:1093
+#: params.opt:1097
 #, fuzzy, no-c-format
 #| msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is not available"
 msgid "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
 #, fuzzy, no-c-format
 #| msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is available"
 msgid "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
 #, fuzzy, no-c-format
 #| msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent)"
 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
 #, fuzzy, no-c-format
 msgid "Set the maximum number of instructions executed in parallel in reassociated tree.  If 0, use the target dependent heuristic."
 msgstr "设置最大值指令数量运行的在中平行在中 reassociated 树。如果 0, 使用目标附属试探。"
 
-#: params.opt:1109
+#: params.opt:1113
 #, fuzzy, no-c-format
 #| msgid "Emit implicit instantiations of templates"
 msgid "Emit special instrumentation for accesses to volatiles."
 msgstr "允许模板隐式实例化"
 
-#: 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 "为实现跳转提示插入的 nop 的最大数(默认 2)"
 
-#: params.opt:1121
+#: params.opt:1125
 #, fuzzy, no-c-format
 #| msgid "Use subroutines for function prologues and epilogues"
 msgid "Instruction accounted for function prologue, epilogue and other overhead."
 msgstr "使用子程序完成函数前言/尾声"
 
-#: params.opt:1125
+#: params.opt:1129
 #, fuzzy, no-c-format
 #| msgid "Use subroutines for function prologues and epilogues"
 msgid "Time accounted for function prologue, epilogue and other overhead."
 msgstr "使用子程序完成函数前言/尾声"
 
-#: params.opt:1129
+#: params.opt:1133
 #, no-c-format
 msgid "Instruction accounted for function thunk overhead."
 msgstr ""
 
-#: params.opt:1133
+#: params.opt:1137
 #, no-c-format
 msgid "Time accounted for function thunk overhead."
 msgstr ""
 
-#: 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"
 msgid "Whether to use canonical types."
 msgstr "是否使用合乎规范的类型"
 
-#: params.opt:1157
+#: params.opt:1161
 #, fuzzy, no-c-format
 #| msgid "Enable loop vectorization on trees"
 msgid "Enable loop epilogue vectorization using smaller vector size."
 msgstr "在树上进行循环向量化"
 
-#: 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 "为实现跳转提示插入的 nop 的最大数(默认 2)"
 
-#: params.opt:1165
+#: params.opt:1169
 #, fuzzy, no-c-format
 #| msgid "Bound on number of runtime checks inserted by the vectorizer's loop versioning for alias check"
 msgid "Bound on number of runtime checks inserted by the vectorizer's loop versioning for alias check."
 msgstr "向量循环版本化插入的运行时别名检查次数的上限"
 
-#: params.opt:1169
+#: params.opt:1173
 #, fuzzy, no-c-format
 #| msgid "Bound on number of runtime checks inserted by the vectorizer's loop versioning for alignment check"
 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 on trees"
+msgid "Enable loop vectorization of floating point inductions."
+msgstr "在树上进行循环向量化"
+
+#: 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 ""
@@ -18101,7 +18184,7 @@ msgstr "%s:所有的警告都被当作是错误"
 msgid "%s: some warnings being treated as errors"
 msgstr "%s:有些警告被当作是错误"
 
-#: 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 "<built-in>"
@@ -18248,12 +18331,12 @@ msgstr "‘%%l’操作数不是一个标号"
 #. 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 "错误地使用了浮点常量"
 
-#: 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"
@@ -19272,7 +19355,7 @@ msgstr "    内联自%qs于 %r%s:%d%R"
 msgid "    inlined from %qs"
 msgstr "    内联自%qs"
 
-#: lra-assigns.cc:1837 reload1.cc:2073
+#: lra-assigns.cc:1871 reload1.cc:2073
 msgid "this is the insn:"
 msgstr "这是指令:"
 
@@ -19282,7 +19365,7 @@ msgstr "这是指令:"
 msgid "unable to generate reloads for impossible constraints:"
 msgstr "无法生成重新载入,为:"
 
-#: lra-constraints.cc:4168 reload.cc:3841
+#: lra-constraints.cc:4168 reload.cc:3844
 msgid "unable to generate reloads for:"
 msgstr "无法生成重新载入,为:"
 
@@ -19295,68 +19378,68 @@ msgstr "此开关缺少文档。"
 msgid "Uses of this option are diagnosed."
 msgstr "对此选项的使用将被诊断。"
 
-#: opts.cc:1577
+#: opts.cc:1584
 #, c-format
 msgid "Same as %s%s (or, in negated form, %s%s)."
 msgstr ""
 
-#: opts.cc:1582
+#: opts.cc:1589
 #, fuzzy, c-format
 #| msgid "%s  Same as %s."
 msgid "Same as %s%s."
 msgstr "%s  与 %s 相同。"
 
-#: opts.cc:1587
+#: opts.cc:1594
 #, fuzzy, c-format
 #| msgid "%s  Same as %s."
 msgid "Same as %s."
 msgstr "%s  与 %s 相同。"
 
-#: opts.cc:1595
+#: opts.cc:1602
 #, c-format
 msgid "%s  Same as %s."
 msgstr "%s  与 %s 相同。"
 
-#: opts.cc:1658
+#: opts.cc:1665
 #, fuzzy
 #| msgid "Loop variable"
 msgid "[available in "
 msgstr "循环变量"
 
-#: opts.cc:1690
+#: opts.cc:1697
 msgid "[default]"
 msgstr "[默认]"
 
-#: opts.cc:1699
+#: opts.cc:1706
 #, c-format
 msgid "%llu bytes"
 msgstr ""
 
-#: opts.cc:1736
+#: opts.cc:1743
 msgid "[enabled]"
 msgstr "[启用]"
 
-#: opts.cc:1738
+#: opts.cc:1745
 msgid "[disabled]"
 msgstr "[禁用]"
 
-#: opts.cc:1774
+#: opts.cc:1781
 #, c-format
 msgid " No options with the desired characteristics were found\n"
 msgstr " 找不到具有指定特性的选项\n"
 
-#: opts.cc:1783
+#: opts.cc:1790
 #, fuzzy, c-format
 #| msgid " None found.  Use --help=%s to show *all* the options supported by the %s front-end\n"
 msgid " None found.  Use --help=%s to show *all* the options supported by the %s front-end.\n"
 msgstr " 找不到对应的选项。使用 --help=%s 显示 %s 前端所支持的所有选项\n"
 
-#: opts.cc:1789
+#: opts.cc:1796
 #, c-format
 msgid " All options with the desired characteristics have already been displayed\n"
 msgstr " 所有具有指定特性的选项已被显示\n"
 
-#: opts.cc:1834
+#: opts.cc:1841
 #, fuzzy, c-format
 #| msgid "Valid arguments for the -msdata= option"
 msgid ""
@@ -19364,59 +19447,59 @@ msgid ""
 "   "
 msgstr "-msdata= 选项的有效参数为:"
 
-#: opts.cc:1884
+#: opts.cc:1891
 msgid "The following options are target specific"
 msgstr "下列选项与特定目标机相关"
 
-#: opts.cc:1887
+#: opts.cc:1894
 msgid "The following options control compiler warning messages"
 msgstr "下列选项控制编译器警告信息"
 
-#: opts.cc:1890
+#: opts.cc:1897
 msgid "The following options control optimizations"
 msgstr "下列选项控制优化"
 
-#: opts.cc:1893 opts.cc:1933
+#: opts.cc:1900 opts.cc:1940
 msgid "The following options are language-independent"
 msgstr "下列选项与具体语言无关"
 
-#: opts.cc:1896
+#: opts.cc:1903
 #, fuzzy
 #| msgid "The following options control optimizations"
 msgid "The following options control parameters"
 msgstr "下列选项控制优化"
 
-#: opts.cc:1902
+#: opts.cc:1909
 msgid "The following options are specific to just the language "
 msgstr "下列选项只与特定语言相关 "
 
-#: opts.cc:1904
+#: opts.cc:1911
 msgid "The following options are supported by the language "
 msgstr "下列选项被语言支持"
 
-#: opts.cc:1915
+#: opts.cc:1922
 msgid "The following options are not documented"
 msgstr "下列选项未列入文档"
 
-#: opts.cc:1917
+#: opts.cc:1924
 msgid "The following options take separate arguments"
 msgstr "下列选项带分立的参数"
 
-#: opts.cc:1919
+#: opts.cc:1926
 msgid "The following options take joined arguments"
 msgstr "下列选项带联合的参数"
 
-#: opts.cc:1931
+#: opts.cc:1938
 msgid "The following options are language-related"
 msgstr "下列选项与语言相关"
 
-#: passes.cc:1832
+#: passes.cc:1833
 #, fuzzy, c-format
 #| msgid "deducing %qT as %qT"
 msgid "during %s pass: %s\n"
 msgstr "演绎 %qT 为 %qT"
 
-#: passes.cc:1837
+#: passes.cc:1838
 #, fuzzy, c-format
 #| msgid "open %s failed: %s"
 msgid "dump file: %s\n"
@@ -19515,7 +19598,7 @@ msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d
 msgstr "%s%sGGC 准则:--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 "<匿名>"
@@ -19793,94 +19876,94 @@ msgid "length modifier in strfmon format"
 msgstr "strfmon 格式的长度修饰符"
 
 #. 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 "<命令行>"
 
-#: config/aarch64/aarch64.cc:10978
+#: config/aarch64/aarch64.cc:11676
 #, fuzzy, c-format
 msgid "unsupported operand for code '%c'"
 msgstr "代码‘%c’的操作数无效"
 
-#: 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 "无效的操作数代码‘%c’"
 
-#: 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 "%<#pragma pack%>中有无效常量 - 已忽略"
 
-#: 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 "无效的操作数代码‘%c’"
 
-#: 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 "缺少操作数"
 
-#: config/aarch64/aarch64.cc:11294
+#: config/aarch64/aarch64.cc:11992
 #, fuzzy, c-format
 msgid "invalid constant"
 msgstr "%<#pragma pack%>中有无效常量 - 已忽略"
 
-#: config/aarch64/aarch64.cc:11297
+#: config/aarch64/aarch64.cc:11995
 #, fuzzy, c-format
 msgid "invalid operand"
 msgstr "%%R 代码的操作数无效"
 
-#: 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 "‘%%%c’不是一个有效的操作数前缀"
 
-#: config/aarch64/aarch64.cc:11450
+#: config/aarch64/aarch64.cc:12148
 #, fuzzy, c-format
 #| msgid "invalid addressing mode"
 msgid "invalid address mode"
 msgstr "无效寻址模式"
 
-#: 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 %<__fpreg%>"
 msgid "invalid conversion from type %<bfloat16_t%>"
 msgstr "从%<__fpreg%>的转换无效"
 
-#: 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 %qT from type %qT"
 msgid "invalid conversion to type %<bfloat16_t%>"
 msgstr "到类型%qT的转换无效,从类型%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 "invalid operands in binary operation"
 msgid "cannot combine GNU and SVE vectors in a binary operation"
 msgstr "二元操作中中操作数无效"
 
-#: 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 "使用‘%%&’ 时没有指定任何动态 TLS 引用"
@@ -19897,18 +19980,18 @@ msgid "invalid %%r value"
 msgstr "无效 %%r 值"
 
 #: 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 "无效 %%R 值"
 
-#: 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 "无效 %%N 值"
 
-#: 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 "无效 %%P 值"
@@ -19938,7 +20021,7 @@ msgstr "无效 %%M 值"
 msgid "invalid %%U value"
 msgstr "无效 %%U 值"
 
-#: 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 "无效 %%s 值"
@@ -19948,7 +20031,7 @@ msgstr "无效 %%s 值"
 msgid "invalid %%C value"
 msgstr "无效 %%C 值"
 
-#: 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 "无效 %%E 值"
@@ -19961,7 +20044,7 @@ msgstr "未指定未知的重定位方式"
 #: 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 "无效的 %%xn 代码"
@@ -19971,109 +20054,109 @@ msgstr "无效的 %%xn 代码"
 msgid "invalid operand address"
 msgstr "fr30_print_operand:未处理的指针"
 
-#: config/arc/arc.cc:4517
+#: config/arc/arc.cc:4524
 #, c-format
 msgid "invalid operand to %%Z code"
 msgstr "%%Z 代码的操作数无效"
 
-#: config/arc/arc.cc:4525
+#: config/arc/arc.cc:4532
 #, c-format
 msgid "invalid operand to %%z code"
 msgstr "%%z 代码的操作数无效"
 
-#: config/arc/arc.cc:4533
+#: config/arc/arc.cc:4540
 #, fuzzy, c-format
 #| msgid "invalid operand to %%Z code"
 msgid "invalid operands to %%c code"
 msgstr "%%Z 代码的操作数无效"
 
-#: config/arc/arc.cc:4541
+#: config/arc/arc.cc:4548
 #, c-format
 msgid "invalid operand to %%M code"
 msgstr "%%M 代码的操作数无效"
 
-#: config/arc/arc.cc:4549 config/m32r/m32r.cc:2086
+#: config/arc/arc.cc:4556 config/m32r/m32r.cc:2086
 #, c-format
 msgid "invalid operand to %%p code"
 msgstr "%%p 代码的操作数无效"
 
-#: config/arc/arc.cc:4560 config/m32r/m32r.cc:2079
+#: config/arc/arc.cc:4567 config/m32r/m32r.cc:2079
 #, c-format
 msgid "invalid operand to %%s code"
 msgstr "%%s 代码的操作数无效"
 
-#: 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 "%%R 代码的操作数无效"
 
-#: 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 "%%H/%%L 代码的操作数无效"
 
-#: 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 "%%U 代码的操作数无效"
 
-#: config/arc/arc.cc:4864
+#: config/arc/arc.cc:4871
 #, c-format
 msgid "invalid operand to %%V code"
 msgstr "%%V 代码的操作数无效"
 
-#: config/arc/arc.cc:4921
+#: config/arc/arc.cc:4928
 #, c-format
 msgid "invalid operand to %%O code"
 msgstr "%%O 代码的操作数无效"
 
 #. 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
 #, c-format
 msgid "invalid operand output code"
 msgstr "无效的操作数输出代码"
 
-#: config/arc/arc.cc:6487
+#: config/arc/arc.cc:6494
 #, fuzzy, c-format
 msgid "invalid UNSPEC as operand: %d"
 msgstr "无效的 UNSPEC 用作操作数"
 
-#: config/arc/arc.cc:6703
+#: config/arc/arc.cc:6710
 msgid "unrecognized supposed constant"
 msgstr "预期的常量无法识别"
 
-#: 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
 #, c-format
 msgid "invalid shift operand"
 msgstr "无效的移位操作数"
 
-#: config/arm/arm.cc:23678 config/arm/arm.cc:23696
+#: config/arm/arm.cc:23748 config/arm/arm.cc:23766
 #, c-format
 msgid "predicated Thumb instruction"
 msgstr "预测到的 Thumb 指令"
 
-#: config/arm/arm.cc:23684
+#: config/arm/arm.cc:23754
 #, c-format
 msgid "predicated instruction in conditional sequence"
 msgstr "在条件序列中预测到的指令"
 
-#: 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 "代码‘%c’的操作数无效"
 
-#: 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
@@ -20081,13 +20164,13 @@ msgstr "代码‘%c’的操作数无效"
 msgid "invalid operand for code '%c'"
 msgstr "代码‘%c’的操作数无效"
 
-#: config/arm/arm.cc:24021
+#: config/arm/arm.cc:24091
 #, c-format
 msgid "instruction never executed"
 msgstr "指令从不被执行"
 
 #. 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 "不受支持的算符用于编码‘%c’"
@@ -20230,7 +20313,7 @@ msgstr "非预期的操作数"
 #: 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
@@ -20471,103 +20554,103 @@ msgstr "%<#pragma pack%>中有无效常量 - 已忽略"
 msgid "Expected register or constant integer."
 msgstr "%C 需要一个无名接口"
 
-#: config/i386/i386.cc:12344
+#: config/i386/i386.cc:12360
 #, c-format
 msgid "invalid UNSPEC as operand"
 msgstr "无效的 UNSPEC 用作操作数"
 
-#: config/i386/i386.cc:12883
+#: config/i386/i386.cc:12899
 #, fuzzy, c-format
 #| msgid "invalid use of %<restrict%>"
 msgid "invalid use of register '%s'"
 msgstr "错误地使用了%<restrict%>"
 
-#: config/i386/i386.cc:12888
+#: config/i386/i386.cc:12904
 #, fuzzy, c-format
 msgid "invalid use of asm flag output"
 msgstr "向函数类型%qT的转换无效"
 
-#: 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:%%A 代码操作数无效"
 
-#: config/i386/i386.cc:13156
+#: config/i386/i386.cc:13172
 #, fuzzy, c-format
 msgid "invalid operand size for operand code 'z'"
 msgstr "‘z’修饰符的操作数无效"
 
-#: config/i386/i386.cc:13225
+#: config/i386/i386.cc:13241
 #, fuzzy, c-format
 msgid "invalid operand type used with operand code 'Z'"
 msgstr "操作数代码‘%c’的操作数类型无效"
 
-#: config/i386/i386.cc:13230
+#: config/i386/i386.cc:13246
 #, fuzzy, c-format
 msgid "invalid operand size for operand code 'Z'"
 msgstr "‘z’修饰符的操作数无效"
 
-#: config/i386/i386.cc:13307
+#: config/i386/i386.cc:13323
 #, c-format
 msgid "operand is not a condition code, invalid operand code 'Y'"
 msgstr "操作数不是一个条件码,无效的操作数代码‘Y’"
 
-#: config/i386/i386.cc:13386
+#: config/i386/i386.cc:13402
 #, c-format
 msgid "operand is not a condition code, invalid operand code 'D'"
 msgstr "操作数不是一个条件码,无效的操作数代码‘D’"
 
-#: 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 "操作数不是一个条件码,无效的操作数代码‘D’"
 
-#: 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 "操作数不是一个条件码,无效的操作数代码‘D’"
 
-#: config/i386/i386.cc:13432
+#: config/i386/i386.cc:13448
 #, fuzzy, c-format
 #| msgid "operand is not a condition code, invalid operand code 'Y'"
 msgid "operand is not an integer, invalid operand code 'K'"
 msgstr "操作数不是一个条件码,无效的操作数代码‘Y’"
 
-#: config/i386/i386.cc:13460
+#: config/i386/i386.cc:13476
 #, fuzzy, c-format
 #| msgid "operand is not a condition code, invalid operand code 'Y'"
 msgid "operand is not a specific integer, invalid operand code 'r'"
 msgstr "操作数不是一个条件码,无效的操作数代码‘Y’"
 
-#: config/i386/i386.cc:13478
+#: config/i386/i386.cc:13494
 #, fuzzy, c-format
 #| msgid "operand is not a condition code, invalid operand code 'Y'"
 msgid "operand is not an integer, invalid operand code 'R'"
 msgstr "操作数不是一个条件码,无效的操作数代码‘Y’"
 
-#: config/i386/i386.cc:13501
+#: config/i386/i386.cc:13517
 #, fuzzy, c-format
 #| msgid "operand is not a condition code, invalid operand code 'Y'"
 msgid "operand is not a specific integer, invalid operand code 'R'"
 msgstr "操作数不是一个条件码,无效的操作数代码‘Y’"
 
-#: config/i386/i386.cc:13605
+#: config/i386/i386.cc:13621
 #, c-format
 msgid "invalid operand code '%c'"
 msgstr "无效的操作数代码‘%c’"
 
-#: config/i386/i386.cc:13667 config/i386/i386.cc:14056
+#: config/i386/i386.cc:13683 config/i386/i386.cc:14072
 #, c-format
 msgid "invalid constraints for operand"
 msgstr "操作数的约束无效"
 
-#: config/i386/i386.cc:13768
+#: config/i386/i386.cc:13784
 #, fuzzy, c-format
 #| msgid "invalid controlling predicate"
 msgid "invalid vector immediate"
 msgstr "无效的控制谓词"
 
-#: config/i386/i386.cc:16847
+#: config/i386/i386.cc:16791
 msgid "unknown insn mode"
 msgstr "未知的指令模式"
 
@@ -20599,7 +20682,7 @@ msgstr "对%<__fpreg%>的操作无效"
 msgid "invalid %%P operand"
 msgstr "无效的 %%P 操作数"
 
-#: 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 "无效的 %%p 值"
@@ -20626,6 +20709,30 @@ msgstr "不能使用非 GP 相对的绝对地址"
 msgid "invalid addressing mode"
 msgstr "无效寻址模式"
 
+#: 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
+#, c-format
+msgid "'%%%c' is not a valid operand prefix"
+msgstr "‘%%%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 "对‘%%%c’的使用无效"
+
 #: config/m32r/m32r.cc:2144
 msgid "bad insn for 'A'"
 msgstr "‘A’的指令错误"
@@ -20653,7 +20760,7 @@ msgid "post-increment address is not a register"
 msgstr "后自增地址不是一个寄存器"
 
 #: config/m32r/m32r.cc:2336 config/m32r/m32r.cc:2351
-#: config/rs6000/rs6000.cc:20490
+#: config/rs6000/rs6000.cc:20541
 msgid "bad address"
 msgstr "错误地址"
 
@@ -20695,23 +20802,6 @@ msgstr "无效地址"
 msgid "letter %c was found & insn was not CONST_INT"
 msgstr "找到字母 %c 且指令不是 CONST_INT"
 
-#: config/mips/mips.cc:8936 config/mips/mips.cc:8963 config/mips/mips.cc:9146
-#, c-format
-msgid "'%%%c' is not a valid operand prefix"
-msgstr "‘%%%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 "对‘%%%c’的使用无效"
-
 #: config/mmix/mmix.cc:1635 config/mmix/mmix.cc:1756
 msgid "MMIX Internal: Expected a CONST_INT, not this"
 msgstr "MMIX 内部错误:预期的是整常量,不是这个"
@@ -20889,182 +20979,182 @@ msgstr "-mquad-memory 需要 64 位模式"
 msgid "%<-mquad-memory%> is not available in little endian mode"
 msgstr "生成小端在前的代码"
 
-#: config/rs6000/rs6000.cc:10923
+#: config/rs6000/rs6000.cc:10963
 msgid "bad move"
 msgstr "错误的移动"
 
-#: config/rs6000/rs6000.cc:13494
+#: config/rs6000/rs6000.cc:13540
 msgid "Bad 128-bit move"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:13674
+#: config/rs6000/rs6000.cc:13720
 #, fuzzy, c-format
 #| msgid "invalid %%J value"
 msgid "invalid %%A value"
 msgstr "无效 %%J 值"
 
-#: 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 "无效的 %%D 值"
 
-#: config/rs6000/rs6000.cc:13698
+#: config/rs6000/rs6000.cc:13744
 #, c-format
 msgid "invalid %%e value"
 msgstr "无效 %%e 值"
 
-#: config/rs6000/rs6000.cc:13719
+#: config/rs6000/rs6000.cc:13765
 #, c-format
 msgid "invalid %%f value"
 msgstr "无效 %%f 值"
 
-#: config/rs6000/rs6000.cc:13728
+#: config/rs6000/rs6000.cc:13774
 #, c-format
 msgid "invalid %%F value"
 msgstr "无效 %%F 值"
 
-#: config/rs6000/rs6000.cc:13737
+#: config/rs6000/rs6000.cc:13783
 #, c-format
 msgid "invalid %%G value"
 msgstr "无效 %%G 值"
 
-#: config/rs6000/rs6000.cc:13772
+#: config/rs6000/rs6000.cc:13818
 #, c-format
 msgid "invalid %%j code"
 msgstr "无效 %%j 代码"
 
-#: config/rs6000/rs6000.cc:13782
+#: config/rs6000/rs6000.cc:13828
 #, c-format
 msgid "invalid %%J code"
 msgstr "无效 %%J 代码"
 
-#: config/rs6000/rs6000.cc:13792
+#: config/rs6000/rs6000.cc:13838
 #, c-format
 msgid "invalid %%k value"
 msgstr "无效 %%k 值"
 
-#: 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 "无效 %%K 值"
 
-#: config/rs6000/rs6000.cc:13854
+#: config/rs6000/rs6000.cc:13900
 #, c-format
 msgid "invalid %%O value"
 msgstr "无效 %%O 值"
 
-#: config/rs6000/rs6000.cc:13901
+#: config/rs6000/rs6000.cc:13947
 #, c-format
 msgid "invalid %%q value"
 msgstr "无效 %%q 值"
 
-#: config/rs6000/rs6000.cc:13943
+#: config/rs6000/rs6000.cc:13989
 #, c-format
 msgid "invalid %%t value"
 msgstr "无效 %%t 值"
 
-#: config/rs6000/rs6000.cc:13960
+#: config/rs6000/rs6000.cc:14006
 #, c-format
 msgid "invalid %%T value"
 msgstr "无效 %%T 值"
 
-#: config/rs6000/rs6000.cc:13972
+#: config/rs6000/rs6000.cc:14018
 #, c-format
 msgid "invalid %%u value"
 msgstr "无效 %%u 值"
 
-#: 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 "无效 %%v 值"
 
-#: config/rs6000/rs6000.cc:14036
+#: config/rs6000/rs6000.cc:14082
 #, c-format
 msgid "invalid %%V value"
 msgstr "无效 %%V 值"
 
-#: 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 "无效 %%x 值"
 
-#: config/rs6000/rs6000.cc:14110
+#: config/rs6000/rs6000.cc:14156
 #, c-format
 msgid "invalid %%z value"
 msgstr "无效 %%z 值"
 
-#: config/rs6000/rs6000.cc:14179
+#: config/rs6000/rs6000.cc:14225
 #, c-format
 msgid "invalid %%y value, try using the 'Z' constraint"
 msgstr "无效 %%y 值,请试用“Z”约束"
 
-#: config/rs6000/rs6000.cc:15047
+#: config/rs6000/rs6000.cc:15093
 #, fuzzy
 #| msgid "Use decimal floating point instructions"
 msgid "Invalid mixing of IEEE 128-bit and IBM 128-bit floating point types"
 msgstr "使用十进制浮点指令"
 
-#: config/rs6000/rs6000.cc:23874
+#: config/rs6000/rs6000.cc:23925
 msgid "AltiVec argument passed to unprototyped function"
 msgstr "传递 AltiVec 参数给无原型的函数"
 
-#: config/rs6000/rs6000.cc:27522
+#: config/rs6000/rs6000.cc:27573
 #, fuzzy
 msgid "Could not generate addis value for fusion"
 msgstr "不为每个函数生成单一的退出点"
 
-#: config/rs6000/rs6000.cc:27591
+#: config/rs6000/rs6000.cc:27642
 #, fuzzy
 msgid "Unable to generate load/store offset for fusion"
 msgstr "无法生成重新载入,为:"
 
-#: config/rs6000/rs6000.cc:27667
+#: config/rs6000/rs6000.cc:27718
 msgid "Bad GPR fusion"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:28207
+#: config/rs6000/rs6000.cc:28257
 #, fuzzy
 #| msgid "invalid conversion from %<__fpreg%>"
 msgid "invalid conversion from type %<__vector_quad%>"
 msgstr "从%<__fpreg%>的转换无效"
 
-#: config/rs6000/rs6000.cc:28209
+#: config/rs6000/rs6000.cc:28259
 #, fuzzy
 #| msgid "invalid conversion to %<__fpreg%>"
 msgid "invalid conversion to type %<__vector_quad%>"
 msgstr "向%<__fpreg%>的转换无效"
 
-#: config/rs6000/rs6000.cc:28211
+#: config/rs6000/rs6000.cc:28261
 #, fuzzy
 #| msgid "invalid conversion from %<__fpreg%>"
 msgid "invalid conversion from type %<__vector_pair%>"
 msgstr "从%<__fpreg%>的转换无效"
 
-#: config/rs6000/rs6000.cc:28213
+#: config/rs6000/rs6000.cc:28263
 #, fuzzy
 #| msgid "invalid conversion to %<__fpreg%>"
 msgid "invalid conversion to type %<__vector_pair%>"
 msgstr "向%<__fpreg%>的转换无效"
 
-#: config/rs6000/rs6000.cc:28228
+#: config/rs6000/rs6000.cc:28278
 #, fuzzy
 #| msgid "invalid conversion from %<__fpreg%>"
 msgid "invalid conversion from type %<* __vector_quad%>"
 msgstr "从%<__fpreg%>的转换无效"
 
-#: config/rs6000/rs6000.cc:28230
+#: config/rs6000/rs6000.cc:28280
 #, fuzzy
 #| msgid "invalid conversion to %<__fpreg%>"
 msgid "invalid conversion to type %<* __vector_quad%>"
 msgstr "向%<__fpreg%>的转换无效"
 
-#: config/rs6000/rs6000.cc:28232
+#: config/rs6000/rs6000.cc:28282
 #, fuzzy
 #| msgid "invalid conversion from %<__fpreg%>"
 msgid "invalid conversion from type %<* __vector_pair%>"
 msgstr "从%<__fpreg%>的转换无效"
 
-#: config/rs6000/rs6000.cc:28234
+#: config/rs6000/rs6000.cc:28284
 #, fuzzy
 #| msgid "invalid conversion to %<__fpreg%>"
 msgid "invalid conversion to type %<* __vector_pair%>"
@@ -21436,14 +21526,14 @@ msgstr "({匿名})"
 #: 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
 #, gcc-internal-format
 msgid "expected %<;%>"
 msgstr "需要%<;%>"
@@ -21452,19 +21542,19 @@ msgstr "需要%<;%>"
 #: 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
 #, gcc-internal-format
 msgid "expected %<)%>"
 msgstr "需要%<)%>"
@@ -21472,7 +21562,7 @@ msgstr "需要%<)%>"
 #: 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
 #, gcc-internal-format
 msgid "expected %<]%>"
 msgstr "需要%<]%>"
@@ -21482,58 +21572,58 @@ msgid "expected %<;%>, %<,%> or %<)%>"
 msgstr "需要 %<;%>、%<,%> 或 %<)%>"
 
 #. 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
 #, gcc-internal-format
 msgid "expected %<(%>"
 msgstr "需要%<(%>"
 
 #: 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
 #, gcc-internal-format
 msgid "expected %<[%>"
 msgstr "需要%<[%>"
 
-#: 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
 #, gcc-internal-format
 msgid "expected %<{%>"
 msgstr "需要%<{%>"
 
 #: 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
 #, gcc-internal-format
 msgid "expected %<:%>"
 msgstr "需要 %<:%>"
 
-#: c/c-parser.cc:6681 cp/parser.cc:32801
+#: c/c-parser.cc:6681 cp/parser.cc:32807
 #, gcc-internal-format
 msgid "expected %<while%>"
 msgstr "需要 %<while%>"
 
 #: 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
 #, gcc-internal-format
 msgid "expected %<,%>"
 msgstr "需要 %<,%>"
@@ -21543,65 +21633,65 @@ msgid "expected %<.%>"
 msgstr "需要%<.%>"
 
 #: 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
 #, gcc-internal-format
 msgid "expected %<@end%>"
 msgstr "需要 %<@end%>"
 
-#: 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
 #, gcc-internal-format
 msgid "expected %<>%>"
 msgstr "需要 %<>%>"
 
-#: 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
 #, gcc-internal-format
 msgid "expected %<,%> or %<)%>"
 msgstr "需要 %<,%> 或 %<)%>"
 
 #. 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
 #, gcc-internal-format
 msgid "expected %<=%>"
 msgstr "需要%<=%>"
 
-#: 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
 #, gcc-internal-format
 msgid "expected %<}%>"
 msgstr "需要 %<}%>"
 
-#: 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 "需要%<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
 #, gcc-internal-format
 msgid "expected %<#pragma omp section%> or %<}%>"
 msgstr "需要%<#pragma omp section%>或%<}%>"
 
-#: 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 "(匿名)"
 
-#: 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
 #, gcc-internal-format
 msgid "expected %<<%>"
 msgstr "需要%<<%>"
 
-#: 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 channel"
 msgid "expected label"
@@ -21613,30 +21703,30 @@ msgstr "需要通道"
 msgid "candidate:"
 msgstr "备选 1:"
 
-#: cp/call.cc:7724
+#: cp/call.cc:7735
 #, fuzzy
 #| msgid "Enable user-defined instructions"
 msgid "  after user-defined conversion:"
 msgstr "启用用户自定义指令"
 
-#: 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] "备选是:"
 
-#: cp/call.cc:12492
+#: cp/call.cc:12525
 msgid "candidate 1:"
 msgstr "备选 1:"
 
-#: cp/call.cc:12493
+#: cp/call.cc:12526
 msgid "candidate 2:"
 msgstr "备选 2:"
 
-#: cp/decl.cc:3396
+#: cp/decl.cc:3452
 msgid "jump to label %qD"
 msgstr "跳转至标号%qD"
 
-#: cp/decl.cc:3397
+#: cp/decl.cc:3453
 msgid "jump to case label"
 msgstr "跳转至 case 标号"
 
@@ -21729,7 +21819,7 @@ msgstr "<模板参数数错误>"
 msgid "<statement>"
 msgstr "<语句>"
 
-#: 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 "<未知>"
@@ -21861,43 +21951,43 @@ msgstr "%s:%d:%d:在%qs的广义常表达式扩展中"
 msgid "%r%s:%d:%R   in %<constexpr%> expansion of %qs"
 msgstr "%s:%d:在%qs的广义常表达式扩展中"
 
-#: cp/parser.cc:6034
+#: cp/parser.cc:6032
 #, fuzzy
 #| msgid "local variable %qD may not appear in this context"
 msgid "parameter %qD may not appear in this context"
 msgstr "局部变量%qD不应出现在此上下文中"
 
-#: cp/parser.cc:6035
+#: cp/parser.cc:6033
 msgid "local variable %qD may not appear in this context"
 msgstr "局部变量%qD不应出现在此上下文中"
 
-#: cp/parser.cc:21677
+#: cp/parser.cc:21675
 #, fuzzy
 msgid "%<using enum%> only available with %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "C++0x auto 只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:21680
+#: cp/parser.cc:21678
 #, fuzzy
 #| msgid "invalid use of dependent type %qT"
 msgid "%<using enum%> of dependent type %qT"
 msgstr "对依赖类型%qT的使用无效"
 
-#: cp/parser.cc:21682
+#: cp/parser.cc:21680
 #, fuzzy
 msgid "%<using enum%> of non-enumeration type %q#T"
 msgstr "%qD不是一个枚举名"
 
-#: cp/parser.cc:21684
+#: cp/parser.cc:21682
 #, fuzzy
 #| msgid "invalid use of incomplete type %q#T"
 msgid "%<using enum%> of incomplete type %qT"
 msgstr "对不完全的类型%q#T的非法使用"
 
-#: 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 "备选为:"
 
@@ -21941,48 +22031,48 @@ msgstr "转换丢失了常量属性"
 msgid "source type is not polymorphic"
 msgstr "源类型不是多态的"
 
-#: 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 "单目减的操作数类型错误"
 
-#: 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 "单目加的操作数类型错误"
 
-#: 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 "按位取反的参数类型错误"
 
-#: 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 "不能对该类型的参数求绝对值"
 
-#: 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 "不能对该类型的参数求共轭"
 
-#: cp/typeck.cc:7072
+#: cp/typeck.cc:7086
 msgid "in argument to unary !"
 msgstr "单目 ! 的参数中"
 
-#: cp/typeck.cc:7118
+#: cp/typeck.cc:7132
 msgid "no pre-increment operator for type"
 msgstr "类型没有前自增运算符"
 
-#: cp/typeck.cc:7120
+#: cp/typeck.cc:7134
 msgid "no post-increment operator for type"
 msgstr "类型没有后自增运算符"
 
-#: cp/typeck.cc:7122
+#: cp/typeck.cc:7136
 msgid "no pre-decrement operator for type"
 msgstr "类型没有前自减运算符"
 
-#: cp/typeck.cc:7124
+#: cp/typeck.cc:7138
 msgid "no post-decrement operator for type"
 msgstr "类型没有后自减运算符"
 
@@ -22009,7 +22099,7 @@ msgstr "‘%s’和‘%s’用作内建函数‘%s’的参数"
 msgid "arguments '%s' and '%s' for intrinsic '%s'"
 msgstr "‘%s’和‘%s’用作内建函数‘%s’的参数"
 
-#: fortran/dump-parse-tree.cc:3548
+#: fortran/dump-parse-tree.cc:3553
 #, c-format
 msgid ""
 "/* Prototypes for external procedures generated from %s\n"
@@ -22056,26 +22146,26 @@ msgstr "对声明中的过时用法给出警告"
 msgid "Deleted feature:"
 msgstr "删除的特性:"
 
-#: fortran/expr.cc:3766
+#: fortran/expr.cc:3774
 msgid "array assignment"
 msgstr "数组赋值"
 
-#: 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
 #, c-format
 msgid "Array bound mismatch for dimension 1 of array (%ld/%ld)"
 msgstr ""
 
-#: fortran/frontend-passes.cc:4072
+#: fortran/frontend-passes.cc:4073
 #, c-format
 msgid "Array bound mismatch for dimension 2 of array (%ld/%ld)"
 msgstr ""
@@ -22160,76 +22250,76 @@ msgstr "%s 标记"
 msgid "Syntax error in expression at %C"
 msgstr "%C 表达式语法错误"
 
-#: fortran/module.cc:1253
+#: fortran/module.cc:1254
 msgid "Unexpected EOF"
 msgstr "非预期的文件结束"
 
-#: fortran/module.cc:1378
+#: fortran/module.cc:1379
 msgid "Name too long"
 msgstr "名字太长"
 
-#: 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 "错误的名字"
 
-#: fortran/module.cc:1627
+#: fortran/module.cc:1628
 msgid "Expected name"
 msgstr "需要名字"
 
-#: fortran/module.cc:1630
+#: fortran/module.cc:1631
 msgid "Expected left parenthesis"
 msgstr "需要左圆括号"
 
-#: fortran/module.cc:1633
+#: fortran/module.cc:1634
 msgid "Expected right parenthesis"
 msgstr "需要右圆括号"
 
-#: fortran/module.cc:1636
+#: fortran/module.cc:1637
 msgid "Expected integer"
 msgstr "需要整数"
 
-#: fortran/module.cc:1639 fortran/module.cc:2844
+#: fortran/module.cc:1640 fortran/module.cc:2845
 msgid "Expected string"
 msgstr "需要字符串"
 
-#: fortran/module.cc:1664
+#: fortran/module.cc:1665
 msgid "find_enum(): Enum not found"
 msgstr "find_enum():找不到枚举"
 
-#: 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
 msgid "Expected attribute bit name"
 msgstr "需要属性位名"
 
-#: fortran/module.cc:3473
+#: fortran/module.cc:3474
 msgid "Expected integer string"
 msgstr "需要整数字符串"
 
-#: fortran/module.cc:3477
+#: fortran/module.cc:3478
 msgid "Error converting integer"
 msgstr "转换整数时出错"
 
-#: fortran/module.cc:3499
+#: fortran/module.cc:3500
 msgid "Expected real string"
 msgstr "需要实数字符串"
 
-#: fortran/module.cc:3724
+#: fortran/module.cc:3725
 msgid "Expected expression type"
 msgstr "需要表达式类型"
 
-#: fortran/module.cc:3804
+#: fortran/module.cc:3805
 msgid "Bad operator"
 msgstr "错误的运算符"
 
-#: fortran/module.cc:3921
+#: fortran/module.cc:3922
 msgid "Bad type in constant expression"
 msgstr "常量表达式中类型错误"
 
-#: fortran/module.cc:7379
+#: fortran/module.cc:7380
 msgid "Unexpected end of module"
 msgstr "非预期的模块结束"
 
@@ -22257,11 +22347,11 @@ msgstr "块 IF"
 msgid "implied END DO"
 msgstr "暗示的 END DO"
 
-#: fortran/parse.cc:2229 fortran/resolve.cc:12044
+#: fortran/parse.cc:2229 fortran/resolve.cc:12073
 msgid "assignment"
 msgstr "赋值"
 
-#: fortran/parse.cc:2232 fortran/resolve.cc:12102 fortran/resolve.cc:12105
+#: fortran/parse.cc:2232 fortran/resolve.cc:12131 fortran/resolve.cc:12134
 msgid "pointer assignment"
 msgstr "指针赋值"
 
@@ -22269,229 +22359,229 @@ msgstr "指针赋值"
 msgid "simple IF"
 msgstr "简单的 IF"
 
-#: fortran/resolve.cc:2371 fortran/resolve.cc:2565
+#: fortran/resolve.cc:2388 fortran/resolve.cc:2583
 msgid "elemental procedure"
 msgstr "基本过程"
 
-#: fortran/resolve.cc:2468
+#: fortran/resolve.cc:2486
 #, fuzzy
 msgid "allocatable argument"
 msgstr "没有参数"
 
-#: fortran/resolve.cc:2473
+#: fortran/resolve.cc:2491
 #, fuzzy
 msgid "asynchronous argument"
 msgstr "参数"
 
-#: fortran/resolve.cc:2478
+#: fortran/resolve.cc:2496
 msgid "optional argument"
 msgstr "可选参数"
 
-#: fortran/resolve.cc:2483
+#: fortran/resolve.cc:2501
 #, fuzzy
 msgid "pointer argument"
 msgstr "对空指针指向内容的写操作(实参 %d)"
 
-#: fortran/resolve.cc:2488
+#: fortran/resolve.cc:2506
 #, fuzzy
 msgid "target argument"
 msgstr "目标"
 
-#: fortran/resolve.cc:2493
+#: fortran/resolve.cc:2511
 #, fuzzy
 msgid "value argument"
 msgstr "%L处按值传递的实参不能是数组或数组段"
 
-#: fortran/resolve.cc:2498
+#: fortran/resolve.cc:2516
 #, fuzzy
 msgid "volatile argument"
 msgstr "重复的%<volatile%>"
 
-#: fortran/resolve.cc:2503
+#: fortran/resolve.cc:2521
 #, fuzzy
 msgid "assumed-shape argument"
 msgstr "%L处的非标量 FINAL 过程应当有假定外形的参数"
 
-#: fortran/resolve.cc:2508
+#: fortran/resolve.cc:2526
 #, fuzzy
 msgid "assumed-rank argument"
 msgstr "在调度器中启用秩启发"
 
-#: fortran/resolve.cc:2513
+#: fortran/resolve.cc:2531
 #, fuzzy
 msgid "coarray argument"
 msgstr "无效的参数"
 
-#: fortran/resolve.cc:2518
+#: fortran/resolve.cc:2536
 #, fuzzy
 msgid "parametrized derived type argument"
 msgstr "%L处 PARAMETER 中派生类型不兼容"
 
-#: fortran/resolve.cc:2523
+#: fortran/resolve.cc:2541
 #, fuzzy
 msgid "polymorphic argument"
 msgstr "源类型不是多态的"
 
-#: fortran/resolve.cc:2528
+#: fortran/resolve.cc:2546
 msgid "NO_ARG_CHECK attribute"
 msgstr "NO_ARG_CHECK 属性"
 
 #. 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 "该类型不支持自增"
 
-#: fortran/resolve.cc:2546
+#: fortran/resolve.cc:2564
 msgid "array result"
 msgstr "数组结果"
 
-#: fortran/resolve.cc:2551
+#: fortran/resolve.cc:2569
 #, fuzzy
 msgid "pointer or allocatable result"
 msgstr "%3$L 处“%1$s”分句对象“%2$s”有 ALLOCATABLE 组件"
 
-#: fortran/resolve.cc:2558
+#: fortran/resolve.cc:2576
 #, fuzzy
 msgid "result with non-constant character length"
 msgstr "变量‘%s’在%L处上下文中字符长度必须为常量"
 
-#: fortran/resolve.cc:2570
+#: fortran/resolve.cc:2588
 #, fuzzy
 msgid "bind(c) procedure"
 msgstr "%C处带有 NAME 的 BIND(C)过程不能有 POINTER 属性"
 
-#: fortran/resolve.cc:4114
+#: fortran/resolve.cc:4132
 #, c-format
 msgid "Invalid context for NULL() pointer at %%L"
 msgstr "%%L处 NULL() 指针上下文无效"
 
-#: fortran/resolve.cc:4131
+#: fortran/resolve.cc:4149
 #, fuzzy, c-format
 #| msgid "Operand of unary numeric operator '%s' at %%L is %s"
 msgid "Operand of unary numeric operator %%<%s%%> at %%L is %s"
 msgstr "单目数值运算符‘%s’(位于 %%L)的操作数为 %s"
 
-#: fortran/resolve.cc:4148
+#: fortran/resolve.cc:4166
 #, fuzzy, c-format
 #| msgid "Operands of binary numeric operator '%s' at %%L are %s/%s"
 msgid "Unexpected derived-type entities in binary intrinsic numeric operator %%<%s%%> at %%L"
 msgstr "二元数值运算符‘%s’(位于 %%L)的操作数为 %s/%s"
 
-#: fortran/resolve.cc:4153
+#: fortran/resolve.cc:4171
 #, fuzzy, c-format
 #| msgid "Operands of binary numeric operator '%s' at %%L are %s/%s"
 msgid "Operands of binary numeric operator %%<%s%%> at %%L are %s/%s"
 msgstr "二元数值运算符‘%s’(位于 %%L)的操作数为 %s/%s"
 
-#: fortran/resolve.cc:4168
+#: fortran/resolve.cc:4186
 #, c-format
 msgid "Operands of string concatenation operator at %%L are %s/%s"
 msgstr "字符串毗连运算符(位于 %%L)的操作数为 %s/%s"
 
-#: fortran/resolve.cc:4211
+#: fortran/resolve.cc:4229
 #, fuzzy, c-format
 #| msgid "Operands of logical operator '%s' at %%L are %s/%s"
 msgid "Operands of logical operator %%<%s%%> at %%L are %s/%s"
 msgstr "逻辑运算符‘%s’(位于 %%L)的操作数为 %s/%s"
 
-#: fortran/resolve.cc:4234
+#: fortran/resolve.cc:4252
 #, c-format
 msgid "Operand of .not. operator at %%L is %s"
 msgstr "%%L处的 .not. 运算符的操作数为 %s"
 
-#: fortran/resolve.cc:4248
+#: fortran/resolve.cc:4266
 msgid "COMPLEX quantities cannot be compared at %L"
 msgstr "%L处复数不能比较大小"
 
-#: fortran/resolve.cc:4346
+#: fortran/resolve.cc:4364
 #, c-format
 msgid "Logicals at %%L must be compared with %s instead of %s"
 msgstr "%%L处逻辑值必须与 %s 比较,而不是 %s"
 
-#: fortran/resolve.cc:4352
+#: fortran/resolve.cc:4370
 #, fuzzy, c-format
 #| msgid "Operands of comparison operator '%s' at %%L are %s/%s"
 msgid "Operands of comparison operator %%<%s%%> at %%L are %s/%s"
 msgstr "比较运算符‘%s’(位于 %%L)的操作数为 %s/%s"
 
-#: fortran/resolve.cc:4366
+#: fortran/resolve.cc:4384
 #, fuzzy, c-format
 #| msgid "Unknown operator '%s' at %%L"
 msgid "Unknown operator %%<%s%%> at %%L; did you mean '%s'?"
 msgstr "未知的运算符‘%s’在 %%L处"
 
-#: fortran/resolve.cc:4369
+#: fortran/resolve.cc:4387
 #, fuzzy, c-format
 #| msgid "Unknown operator '%s' at %%L"
 msgid "Unknown operator %%<%s%%> at %%L"
 msgstr "未知的运算符‘%s’在 %%L处"
 
-#: fortran/resolve.cc:4374
+#: fortran/resolve.cc:4392
 #, fuzzy, c-format
 #| msgid "Operand of user operator '%s' at %%L is %s"
 msgid "Operand of user operator %%<%s%%> at %%L is %s"
 msgstr "用户运算符‘%s’(位于 %%L)的操作数为 %s"
 
-#: fortran/resolve.cc:4379
+#: fortran/resolve.cc:4397
 #, fuzzy, c-format
 #| msgid "Operands of user operator '%s' at %%L are %s/%s"
 msgid "Operands of user operator %%<%s%%> at %%L are %s/%s"
 msgstr "用户运算符‘%s’(位于 %%L)的操作数为 %s/%s"
 
-#: fortran/resolve.cc:4465
+#: fortran/resolve.cc:4483
 #, c-format
 msgid "Inconsistent ranks for operator at %%L and %%L"
 msgstr "%%L和%%L处的操作数的秩不一致"
 
-#: fortran/resolve.cc:7306
+#: fortran/resolve.cc:7324
 msgid "Loop variable"
 msgstr "循环变量"
 
-#: fortran/resolve.cc:7310
+#: fortran/resolve.cc:7328
 #, fuzzy
 msgid "iterator variable"
 msgstr "变量"
 
-#: fortran/resolve.cc:7314
+#: fortran/resolve.cc:7332
 msgid "Start expression in DO loop"
 msgstr "DO 循环中的开始表达式"
 
-#: fortran/resolve.cc:7318
+#: fortran/resolve.cc:7336
 msgid "End expression in DO loop"
 msgstr "DO 循环中结束表达式"
 
-#: fortran/resolve.cc:7322
+#: fortran/resolve.cc:7340
 msgid "Step expression in DO loop"
 msgstr "DO 循环中的步进表达式"
 
-#: fortran/resolve.cc:7608 fortran/resolve.cc:7611
+#: fortran/resolve.cc:7626 fortran/resolve.cc:7629
 #, fuzzy
 msgid "DEALLOCATE object"
 msgstr "试图 DEALLOCATE 未分配的‘%s’"
 
-#: fortran/resolve.cc:7989 fortran/resolve.cc:7992
+#: fortran/resolve.cc:8007 fortran/resolve.cc:8010
 #, fuzzy
 msgid "ALLOCATE object"
 msgstr "%L处的源表达式和%L处的分配对象必须有相同的外形"
 
-#: 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 "%1$L处的统计变量不能在同一个 %3$s 语句中被 %2$s"
 
-#: 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 "%1$L处的错误信息变量不能在同一 %3$s 语句中被 %2$s"
 
-#: fortran/resolve.cc:10000
+#: fortran/resolve.cc:10020
 #, fuzzy
 msgid "item in READ"
 msgstr "读取概要:"
 
-#: fortran/resolve.cc:10218
+#: fortran/resolve.cc:10238
 #, fuzzy
 msgid "ACQUIRED_LOCK variable"
 msgstr "无法锁定新归档文件"
@@ -22506,7 +22596,7 @@ msgstr "数组构造函数中 CHARACTER 长度不同(%ld/%ld)"
 msgid "Integer overflow when calculating the amount of memory to allocate"
 msgstr "试图分配负数大小的内存。可能有整数溢出"
 
-#: fortran/trans-array.cc:10064
+#: fortran/trans-array.cc:10071
 #, c-format
 msgid "The value of the PDT LEN parameter '%s' does not agree with that in the dummy declaration"
 msgstr ""
@@ -22521,12 +22611,12 @@ msgstr "字符串的实际长度不匹配其虚参声明‘%s’(%ld/%ld)"
 msgid "Actual string length is shorter than the declared one for dummy argument '%s' (%ld/%ld)"
 msgstr "字符串的实际长度短于其虚参声明‘%s’(%ld/%ld)"
 
-#: fortran/trans-expr.cc:10290
+#: fortran/trans-expr.cc:10297
 #, fuzzy, c-format
 msgid "Target of rank remapping is too small (%ld < %ld)"
 msgstr "目标的分级重新映射太小 (%ld<%ld)"
 
-#: fortran/trans-expr.cc:11750
+#: fortran/trans-expr.cc:11757
 msgid "Assignment of scalar to unallocated array"
 msgstr ""
 
@@ -22582,36 +22672,36 @@ 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 "内建函数 REPEAT 的 NCOPIES 参数为负(其值是 %lld)"
 
-#: fortran/trans-intrinsic.cc:9309
+#: fortran/trans-intrinsic.cc:9311
 msgid "Argument NCOPIES of REPEAT intrinsic is too large"
 msgstr "内建函数 REPEAT 的 NCOPIES 参数太大"
 
-#: fortran/trans-intrinsic.cc:12025
+#: fortran/trans-intrinsic.cc:12027
 #, c-format
 msgid "FROMPOS argument (%ld) out of range 0:%d in intrinsic MVBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12037
+#: fortran/trans-intrinsic.cc:12039
 #, c-format
 msgid "LEN argument (%ld) out of range 0:%d in intrinsic MVBITS"
 msgstr ""
 
-#: fortran/trans-intrinsic.cc:12049
+#: fortran/trans-intrinsic.cc:12051
 #, c-format
 msgid "TOPOS argument (%ld) out of range 0:%d in intrinsic MVBITS"
 msgstr ""
 
-#: 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 ""
@@ -22628,20 +22718,20 @@ msgstr "I/O 语句中单位数太大"
 msgid "Assigned label is not a target label"
 msgstr "赋值标号不是目标标号"
 
-#: fortran/trans-stmt.cc:1278
+#: fortran/trans-stmt.cc:1287
 #, fuzzy, c-format
 msgid "Invalid image number %d in SYNC IMAGES"
 msgstr "无效的影像号码 %d 在中同步影像"
 
-#: 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
 msgid "Loop variable has been modified"
 msgstr "循环变量已被修改"
 
-#: fortran/trans-stmt.cc:2569
+#: fortran/trans-stmt.cc:2578
 msgid "DO step value is zero"
 msgstr "DO 步进值为零"
 
@@ -22722,8 +22812,8 @@ msgstr "需要数字类型"
 msgid "expected boolean type"
 msgstr "需要整数或布尔类型"
 
-#: 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
 #, fuzzy, gcc-internal-format
 #| msgid "Expected integer"
 msgid "expected integer"
@@ -22796,7 +22886,7 @@ msgstr "实参太少"
 #: 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 "实参太多"
@@ -23122,74 +23212,74 @@ msgstr "不能将类型 %s 用作 %s"
 msgid "conversion from normal type to notinheap type"
 msgstr "转换为不完全类型"
 
-#: go/gofrontend/types.cc:4796
+#: go/gofrontend/types.cc:4793
 msgid "different receiver types"
 msgstr "不同的接收器类型"
 
-#: 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
 msgid "different number of parameters"
 msgstr "形参数量不同"
 
-#: go/gofrontend/types.cc:4839
+#: go/gofrontend/types.cc:4836
 msgid "different parameter types"
 msgstr "形参类型不同"
 
-#: go/gofrontend/types.cc:4854
+#: go/gofrontend/types.cc:4851
 msgid "different varargs"
 msgstr "不同的可变参数"
 
-#: 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
 #, fuzzy
 msgid "different number of results"
 msgstr "形参数量不同"
 
-#: go/gofrontend/types.cc:4887
+#: go/gofrontend/types.cc:4884
 #, fuzzy
 msgid "different result types"
 msgstr "不同的接收器类型"
 
-#: go/gofrontend/types.cc:9305
+#: go/gofrontend/types.cc:9302
 #, c-format
 msgid "need explicit conversion; missing method %s%s%s"
 msgstr "需要显式转换;缺少方法%s%s%s"
 
-#: go/gofrontend/types.cc:9323 go/gofrontend/types.cc:9468
+#: go/gofrontend/types.cc:9320 go/gofrontend/types.cc:9465
 #, c-format
 msgid "incompatible type for method %s%s%s"
 msgstr "方法%s%s%s类型不兼容"
 
-#: 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 "方法%s%s%s类型不兼容"
 
-#: 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 "类型没有方法"
 
-#: go/gofrontend/types.cc:9410 go/gofrontend/types.cc:9423
+#: go/gofrontend/types.cc:9407 go/gofrontend/types.cc:9420
 msgid "type has no methods"
 msgstr "类型没有方法"
 
-#: go/gofrontend/types.cc:9444
+#: go/gofrontend/types.cc:9441
 #, c-format
 msgid "ambiguous method %s%s%s"
 msgstr "有歧义的方法%s%s%s"
 
-#: go/gofrontend/types.cc:9447
+#: go/gofrontend/types.cc:9444
 #, c-format
 msgid "missing method %s%s%s"
 msgstr "缺少方法%s%s%s"
 
-#: go/gofrontend/types.cc:9489
+#: go/gofrontend/types.cc:9486
 #, fuzzy, c-format
 msgid "method %s%s%s requires a pointer receiver"
 msgstr "方法%s%s%s需要一个指针"
 
-#: go/gofrontend/types.cc:9507
+#: go/gofrontend/types.cc:9504
 #, fuzzy, c-format
 msgid "method %s%s%s is marked go:nointerface"
 msgstr "方法%s%s%s需要一个指针"
@@ -23225,7 +23315,7 @@ msgstr "对 VxWorks 的取样支持"
 msgid "target OS does not support unaligned accesses"
 msgstr "目标操作系统不支持未对齐的访问"
 
-#: 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 "侧写档不是未实现的用于这个架构"
@@ -23402,7 +23492,7 @@ msgid "%<-maix64%> required: 64-bit computation with 32-bit addressing not yet s
 msgstr "需要 -maix64:目前尚不支持 64 位计算和 32 位寻址混用"
 
 #: 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"
 msgid "%<-mcmodel%> incompatible with other toc options"
@@ -23532,15 +23622,15 @@ msgstr "%qs后缺少宏名"
 
 #: 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 "%qs后缺少文件名"
 
 #: 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 "%qs后缺少路径"
@@ -23556,52 +23646,52 @@ msgstr "%qs后缺少 makefile 目标"
 msgid "argument %qs to %<-Waligned-new%> not recognized"
 msgstr "实参%qs(给予%<-Wnormalized%>)无法识别"
 
-#: c-family/c.opt:390
+#: c-family/c.opt:386
 #, fuzzy, gcc-internal-format
 #| msgid "argument %qs to %<-Wnormalized%> not recognized"
 msgid "argument %qs to %<-Wbidi-chars%> not recognized"
 msgstr "实参%qs(给予%<-Wnormalized%>)无法识别"
 
-#: c-family/c.opt:1085
+#: c-family/c.opt:1081
 #, gcc-internal-format
 msgid "argument %qs to %<-Wnormalized%> not recognized"
 msgstr "实参%qs(给予%<-Wnormalized%>)无法识别"
 
-#: c-family/c.opt:1634
+#: c-family/c.opt:1626
 #, gcc-internal-format
 msgid "no class name specified with %qs"
 msgstr "%qs没有指定类名"
 
-#: 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)"
 msgid "%<-fhandle-exceptions%> has been renamed %<-fexceptions%> (and is now on by default)"
 msgstr "-fhandle-exceptions 已被重命名为 -fexceptions (并且现在默认为开)"
 
-#: c-family/c.opt:1828
+#: c-family/c.opt:1824
 #, fuzzy, gcc-internal-format
 #| msgid "missing number"
 msgid "missing mapper"
 msgstr "缺少数字"
 
-#: c-family/c.opt:1852
+#: c-family/c.opt:1848
 #, fuzzy, gcc-internal-format
 #| msgid "missing number"
 msgid "missing header name"
 msgstr "缺少数字"
 
-#: c-family/c.opt:1860
+#: c-family/c.opt:1856
 #, fuzzy, gcc-internal-format
 #| msgid "missing open paren"
 msgid "missing module name"
 msgstr "缺少左括号"
 
-#: c-family/c.opt:1907
+#: c-family/c.opt:1903
 #, fuzzy, gcc-internal-format
 msgid "unrecognized ivar visibility value %qs"
 msgstr "无效的 --param 值%qs"
 
-#: c-family/c.opt:2067
+#: c-family/c.opt:2063
 #, fuzzy, gcc-internal-format
 msgid "unrecognized scalar storage order value %qs"
 msgstr "无效的 --param 值%qs"
@@ -23697,104 +23787,104 @@ msgstr "%qs 已弃用"
 msgid "unknown linker output %qs"
 msgstr "未知的 TLS 模型%qs"
 
-#: common.opt:1563
+#: common.opt:1567
 #, fuzzy, gcc-internal-format
 msgid "unknown excess precision style %qs"
 msgstr "未知的额外精度风格“%s”"
 
-#: 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 "在 TOC 中存放浮点常量"
 
-#: common.opt:1790
+#: common.opt:1794
 #, gcc-internal-format
 msgid "unknown Stack Reuse Level %qs"
 msgstr "未知的栈重用级别%qs"
 
-#: common.opt:1859
+#: common.opt:1863
 #, fuzzy, gcc-internal-format
 #| msgid "unknown Stack Reuse Level %qs"
 msgid "unknown Control-Flow Protection Level %qs"
 msgstr "未知的栈重用级别%qs"
 
-#: common.opt:1965
+#: common.opt:1969
 #, gcc-internal-format
 msgid "unknown IRA algorithm %qs"
 msgstr "未知的 IRA 算法 %qs"
 
-#: common.opt:1978
+#: common.opt:1982
 #, fuzzy, gcc-internal-format
 msgid "unknown IRA region %qs"
 msgstr "未知的 TLS 模型%qs"
 
-#: common.opt:2056
+#: common.opt:2060
 #, fuzzy, gcc-internal-format
 msgid "unknown LTO partitioning model %qs"
 msgstr "未知的 TLS 模型%qs"
 
-#: common.opt:2162
+#: common.opt:2166
 #, fuzzy, gcc-internal-format
 msgid "targets missing after %qs"
 msgstr "%qs后缺少文件名"
 
-#: common.opt:2165
+#: common.opt:2169
 #, fuzzy, gcc-internal-format
 msgid "options or targets=options missing after %qs"
 msgstr "%qs后缺少文件名"
 
-#: common.opt:2173
+#: common.opt:2177
 #, fuzzy, gcc-internal-format
 msgid "unknown offload ABI %qs"
 msgstr ",未知 ABI"
 
-#: common.opt:2315
+#: common.opt:2319
 #, fuzzy, gcc-internal-format
 msgid "unknown profile reproducibility method %qs"
 msgstr "未知的 TLS 模型%qs"
 
-#: common.opt:2331
+#: common.opt:2335
 #, fuzzy, gcc-internal-format
 msgid "unknown profile update method %qs"
 msgstr "未知的 TLS 模型%qs"
 
-#: common.opt:2437
+#: common.opt:2441
 #, fuzzy, gcc-internal-format
 #| msgid "unknown Stack Reuse Level %qs"
 msgid "unknown Live-Patching Level %qs"
 msgstr "未知的栈重用级别%qs"
 
-#: common.opt:2470
+#: common.opt:2474
 #, fuzzy, gcc-internal-format
 msgid "unknown basic block reordering algorithm %qs"
 msgstr "未知的 TLS 模型%qs"
 
-#: common.opt:2777
+#: common.opt:2781
 #, gcc-internal-format
 msgid "unknown TLS model %qs"
 msgstr "未知的 TLS 模型 %qs"
 
-#: common.opt:3113
+#: common.opt:3117
 #, fuzzy, gcc-internal-format
 msgid "unknown vectorizer cost model %qs"
 msgstr "未知的 TLS 模型%qs"
 
-#: common.opt:3144
+#: common.opt:3148
 #, fuzzy, gcc-internal-format
 msgid "unrecognized automatic variable initialization type %qs"
 msgstr "无效的 --param 值%qs"
 
-#: common.opt:3170
+#: common.opt:3174
 #, fuzzy, gcc-internal-format
 msgid "unrecognized visibility value %qs"
 msgstr "不可识别的寄存名%qs"
 
-#: common.opt:3189
+#: common.opt:3193
 #, fuzzy, gcc-internal-format
 msgid "unknown vtable verify initialization priority %qs"
 msgstr "(在%qs的初始化附近)"
@@ -23805,17 +23895,17 @@ msgstr "(在%qs的初始化附近)"
 msgid "unknown evrp mode %qs"
 msgstr "未知的 TLS 模型 %qs"
 
-#: params.opt:893
+#: params.opt:897
 #, fuzzy, gcc-internal-format
 msgid "unknown ranger debug mode %qs"
 msgstr "未知的 TLS 模型%qs"
 
-#: params.opt:1067
+#: params.opt:1071
 #, fuzzy, gcc-internal-format
 msgid "unknown threader debug mode %qs"
 msgstr "未知的 TLS 模型%qs"
 
-#: params.opt:1188
+#: params.opt:1196
 #, fuzzy, gcc-internal-format
 #| msgid "unknown TLS model %qs"
 msgid "unknown vrp mode %qs"
@@ -23842,16 +23932,16 @@ msgstr ""
 msgid "ignoring attribute %qE because it conflicts with attribute %qs"
 msgstr "%qE属性与 %s 属性冲突"
 
-#: 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+T先前在此处有过声明"
 
 #. 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
 #, gcc-internal-format
 msgid "%qE attribute directive ignored"
@@ -23878,7 +23968,7 @@ msgstr "需要%<(%>或行尾"
 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"
@@ -23902,43 +23992,43 @@ msgstr "类型属性在定义后被忽略"
 #. 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
@@ -23962,8 +24052,8 @@ msgstr "%qE属性被忽略"
 msgid "missing %<target%> attribute for multi-versioned %qD"
 msgstr "%qE不兼容的属性已被忽略"
 
-#: 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先前没有声明"
@@ -24073,7 +24163,7 @@ msgstr "无法从 “%s” 中读取 LTO decls"
 msgid "offset %qwi outside bounds of constant string"
 msgstr "偏移量越过字符串常量界"
 
-#: 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
 #, fuzzy, gcc-internal-format
 #| msgid "%qD declared here"
 msgid "%qE declared here"
@@ -24099,13 +24189,13 @@ msgstr "%<__builtin_prefetch%>的第三个实参必须是一个常量"
 msgid "invalid third argument to %<__builtin_prefetch%>; using zero"
 msgstr "%<__builtin_prefetch%>的第三个实参无效;使用 0"
 
-#: 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
 #, gcc-internal-format
 msgid "%qD specified bound %E equals destination size"
 msgstr ""
 
-#: builtins.cc:4818 gimplify.cc:3513
+#: builtins.cc:4818 gimplify.cc:3600
 #, gcc-internal-format
 msgid "too few arguments to function %<va_start%>"
 msgstr "给函数%<va_start%>的参数太少"
@@ -24252,18 +24342,18 @@ msgstr "%K%D 的第一个实参必须是一个指针,第二个必须是整常
 msgid "last argument of %qD is not integer constant between 0 and 3"
 msgstr "%K%D 的最后一个实参不是一个 0 到 3 之间的整常量"
 
-#: calls.cc:1232
+#: calls.cc:1233
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "[cannot find %s]"
 msgid "cannot tail-call: %s"
 msgstr "[找不到 %s]"
 
-#: calls.cc:2728
+#: calls.cc:2729
 #, gcc-internal-format
 msgid "function call has aggregate value"
 msgstr "函数调用有聚合类型"
 
-#: calls.cc:3449
+#: calls.cc:3451
 #, fuzzy, gcc-internal-format
 msgid "passing too large argument on stack"
 msgstr "栈帧太大"
@@ -24354,40 +24444,40 @@ msgstr ""
 msgid "invalid hard register usage between earlyclobber operand and input operand"
 msgstr ""
 
-#: cfgexpand.cc:3309
+#: cfgexpand.cc:3314
 #, gcc-internal-format, gfc-internal-format
 msgid "output number %d not directly addressable"
 msgstr "输出数 %d 不可直接寻址"
 
-#: cfgexpand.cc:3405
+#: cfgexpand.cc:3410
 #, fuzzy, gcc-internal-format
 #| msgid "asm operand %d probably doesn%'t match constraints"
 msgid "%<asm%> operand %d probably does not match constraints"
 msgstr "汇编操作数 %d 与约束可能不匹配"
 
-#: cfgexpand.cc:3590
+#: cfgexpand.cc:3595
 #, fuzzy, gcc-internal-format
 #| msgid "asm clobber conflict with output operand"
 msgid "%<asm%> clobber conflict with output operand"
 msgstr "汇编篡改列表与输出操作数冲突"
 
-#: cfgexpand.cc:3595
+#: cfgexpand.cc:3600
 #, fuzzy, gcc-internal-format
 #| msgid "asm clobber conflict with input operand"
 msgid "%<asm%> clobber conflict with input operand"
 msgstr "汇编篡改列表与输入操作数冲突"
 
-#: cfgexpand.cc:6648
+#: cfgexpand.cc:6659
 #, fuzzy, gcc-internal-format
 msgid "stack protector not protecting local variables: variable length buffer"
 msgstr "没有保护局部变量:可变长度的缓冲区"
 
-#: cfgexpand.cc:6652
+#: cfgexpand.cc:6663
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "stack protector not protecting function: all local arrays are less than %d bytes long"
 msgstr "没有保护函数:没有至少有 %d 字节长的缓冲区"
 
-#: cfgexpand.cc:6941
+#: cfgexpand.cc:6952
 #, gcc-internal-format
 msgid "patchable function entry %wu exceeds size %wu"
 msgstr ""
@@ -24583,147 +24673,152 @@ msgstr "%s 不支持 block_ends_with_condjump_p"
 msgid "%s does not support flow_call_edges_add"
 msgstr "%s 不支持 flow_call_edges_add"
 
-#: 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 "启用树上的循环不变量转移"
 
-#: cfgloop.cc:1440
+#: cfgloop.cc:1442
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "loop with header %d not in loop tree"
 msgstr "在树级别进行循环优化"
 
-#: cfgloop.cc:1446
+#: cfgloop.cc:1448
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "non-loop with header %d not marked for removal"
 msgstr "启用树上的循环不变量转移"
 
-#: cfgloop.cc:1460
+#: cfgloop.cc:1462
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "removed loop %d in loop tree"
 msgstr "在树级别进行循环优化"
 
-#: cfgloop.cc:1468
+#: cfgloop.cc:1470
 #, gcc-internal-format, gfc-internal-format
 msgid "size of loop %d should be %d, not %d"
 msgstr "循环 %d 的大小应该为 %d,而不是%d"
 
-#: cfgloop.cc:1479
+#: cfgloop.cc:1481
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "bb %d does not belong to loop %d"
 msgstr "基本块 %d 中,返回边并不指向退出"
 
-#: 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 "循环 %d 的大小应该为 %d,而不是%d"
 
-#: cfgloop.cc:1507
+#: cfgloop.cc:1509
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s header is not a loop header"
 msgstr "启用树上的循环不变量转移"
 
-#: cfgloop.cc:1513
+#: cfgloop.cc:1515
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s header does not have exactly 2 entries"
 msgstr "循环 %d 的头并非只有 2 个入口"
 
-#: cfgloop.cc:1520
+#: cfgloop.cc:1522
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s latch does not have an edge to its header"
 msgstr "循环 %d 的锁存的后继不是头"
 
-#: cfgloop.cc:1525
+#: cfgloop.cc:1527
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s latch is not dominated by its header"
 msgstr "循环 %d 的锁存的后继不是头"
 
-#: cfgloop.cc:1533
+#: cfgloop.cc:1535
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s latch does not have exactly 1 successor"
 msgstr "循环 %d 的锁存并非只有一个后继"
 
-#: cfgloop.cc:1538
+#: cfgloop.cc:1540
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s latch does not have header as successor"
 msgstr "循环 %d 的锁存的后继不是头"
 
-#: cfgloop.cc:1543
+#: cfgloop.cc:1545
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s latch does not belong directly to it"
 msgstr "循环 %d 的锁存并非直接属于该循环"
 
-#: cfgloop.cc:1549
+#: cfgloop.cc:1551
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s header does not belong directly to it"
 msgstr "循环 %d 的头并非直接属于该循环 "
 
-#: cfgloop.cc:1559
+#: cfgloop.cc:1561
 #, fuzzy, gcc-internal-format
 msgid "loop %d%'s latch is marked as part of irreducible region"
 msgstr "循环 %d 的锁存被标记为属于一个不可归约区域"
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "basic block %d should be marked irreducible"
 msgstr "基本块 %d 应被标记为不可归约的"
 
-#: cfgloop.cc:1599
+#: cfgloop.cc:1612
 #, gcc-internal-format, gfc-internal-format
 msgid "basic block %d should not be marked irreducible"
 msgstr "基本块 %d 不应被标记为不可归约的"
 
-#: cfgloop.cc:1608
+#: cfgloop.cc:1621
 #, gcc-internal-format, gfc-internal-format
 msgid "edge from %d to %d should be marked irreducible"
 msgstr "从 %d 到 %d 的边应被标记为不可归约的"
 
-#: cfgloop.cc:1615
+#: cfgloop.cc:1628
 #, gcc-internal-format, gfc-internal-format
 msgid "edge from %d to %d should not be marked irreducible"
 msgstr "从 %d 到 %d 的边不应被标记为不可归约的"
 
-#: cfgloop.cc:1629
+#: cfgloop.cc:1642
 #, gcc-internal-format, gfc-internal-format
 msgid "corrupted head of the exits list of loop %d"
 msgstr "循环 %d 的退出列表头已损坏"
 
-#: cfgloop.cc:1647
+#: cfgloop.cc:1660
 #, gcc-internal-format, gfc-internal-format
 msgid "corrupted exits list of loop %d"
 msgstr "循环 %d 的出口列表已损坏"
 
-#: 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 "循环 %d 退出列表非空,但是退出未被记录"
 
-#: cfgloop.cc:1683
+#: cfgloop.cc:1696
 #, gcc-internal-format, gfc-internal-format
 msgid "exit %d->%d not recorded"
 msgstr "退出 %d->%d 未被记录"
 
-#: cfgloop.cc:1706
+#: cfgloop.cc:1719
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "wrong list of exited loops for edge %d->%d"
 msgstr " 边缘 %d->%d 的错误退出的循环列表"
 
-#: cfgloop.cc:1715
+#: cfgloop.cc:1728
 #, fuzzy, gcc-internal-format
 msgid "too many loop exits recorded"
 msgstr "循环 %d 退出列表非空,但是退出未被记录"
 
-#: cfgloop.cc:1726
+#: cfgloop.cc:1739
 #, gcc-internal-format, gfc-internal-format
 msgid "%d exits recorded for loop %d (having %d exits)"
 msgstr "循环 %2$d 记录了 %1$d 个退出(有 %3$d 个退出)"
@@ -25900,7 +25995,7 @@ msgstr "region_array 不匹配 region_tree"
 msgid "%<lp_array%> does not match %<region_tree%>"
 msgstr "lp_array 不匹配 region_tree"
 
-#: 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 "open %s failed: %s"
 msgid "%qs failed"
@@ -25976,42 +26071,42 @@ msgstr "无法关闭最终指令转储文件%qs:%s"
 msgid "large fixed-point constant implicitly truncated to fixed-point type"
 msgstr "大定点常量隐式截断为定点类型"
 
-#: 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 "由于位段宽度所限,比较结果永远为 %d"
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "comparison is always %d"
 msgstr "比较结果始终为 %d"
 
-#: fold-const.cc:6654
+#: fold-const.cc:6657
 #, gcc-internal-format
 msgid "%<or%> of unmatched not-equal tests is always 1"
 msgstr "对两个不匹配的不等比较取%<or%>的结果总为 1"
 
-#: fold-const.cc:6659
+#: fold-const.cc:6662
 #, gcc-internal-format
 msgid "%<and%> of mutually exclusive equal-tests is always 0"
 msgstr "对两个互斥的相等比较取%<and%>的结果永远是 0"
 
-#: 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 "折叠检查: 原始树因折叠而改变 "
@@ -26028,7 +26123,7 @@ msgstr "局部对象的总大小太大"
 msgid "total size of local objects exceeds maximum %wu"
 msgstr "局部对象的总大小太大"
 
-#: function.cc:1788 gimplify.cc:6474 gimplify.cc:6636
+#: function.cc:1788 gimplify.cc:6599 gimplify.cc:6761
 #, gcc-internal-format
 msgid "impossible constraint in %<asm%>"
 msgstr "%<asm%>中不可能的约束"
@@ -26592,7 +26687,7 @@ msgstr "无法写入 PCH 文件:%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 "can%'t get position in PCH file: %m"
 msgid "cannot get position in PCH file: %m"
@@ -26710,48 +26805,48 @@ msgstr "数组下标小于数组边界"
 msgid "array subscript %wu is above array bounds of %qT"
 msgstr "数组下标大于数组边界"
 
-#: 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的参数无效"
 
-#: gimple-fold.cc:2142
+#: gimple-fold.cc:2145
 #, gcc-internal-format
 msgid "%qD destination unchanged after copying no bytes from a string of length %E"
 msgstr ""
 
-#: gimple-fold.cc:2147
+#: gimple-fold.cc:2150
 #, gcc-internal-format
 msgid "%qD destination unchanged after copying no bytes"
 msgstr ""
 
-#: gimple-fold.cc:2522 gimple-ssa-warn-access.cc:856
+#: gimple-fold.cc:2525 gimple-ssa-warn-access.cc:856
 #, gcc-internal-format
 msgid "%qD specified bound %E exceeds destination size %E"
 msgstr ""
 
-#: gimple-fold.cc:2541
+#: gimple-fold.cc:2544
 #, gcc-internal-format
 msgid "%qD specified bound %E equals source length"
 msgstr ""
 
-#: gimple-fold.cc:4529 gimple-fold.cc:4733
+#: gimple-fold.cc:4542 gimple-fold.cc:4746
 #, fuzzy, gcc-internal-format
 #| msgid "flexible array member not at end of struct"
 msgid "flexible array member %qD does not have well defined padding bits for %qs"
 msgstr "可变数组成员没有出现在结构的末尾"
 
-#: 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 "堆栈限制在此目标机上不受支持"
 
-#: gimple-fold.cc:4915
+#: gimple-fold.cc:4928
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "SPE not supported in this target"
 msgid "%s not supported on this target"
@@ -26774,21 +26869,21 @@ msgstr "空指针"
 msgid "function may return address of local variable"
 msgstr "函数可能返回局部变量的地址"
 
-#: 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 "函数返回局部变量的地址"
 
 #: 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 "在此声明"
@@ -27883,114 +27978,114 @@ msgstr "#pragma GCC optimize 不允许用在函数中"
 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 "%3$L处 %2$s 分句中的 Cray 指针‘%1$s’"
 
-#: gimple-ssa-warn-access.cc:3916
+#: gimple-ssa-warn-access.cc:3911
 #, fuzzy, gcc-internal-format
 msgid "pointer %qE used after %qD"
 msgstr "%3$L处 %2$s 分句中的 Cray 指针‘%1$s’"
 
-#: 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 "不能为%q+D指定对齐"
 
-#: gimple-ssa-warn-access.cc:3921
+#: gimple-ssa-warn-access.cc:3916
 #, fuzzy, gcc-internal-format
 #| msgid "unused parameter %q+D"
 msgid "pointer used after %qD"
 msgstr "未使用的参数%q+D"
 
-#: gimple-ssa-warn-access.cc:3925
+#: gimple-ssa-warn-access.cc:3920
 #, fuzzy, gcc-internal-format
 #| msgid "%qD declared here"
 msgid "call to %qD here"
 msgstr "%qD在此声明"
 
-#: 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 "无效的指针模式%qs"
 
-#: gimple-ssa-warn-access.cc:3946
+#: gimple-ssa-warn-access.cc:3941
 #, fuzzy, gcc-internal-format
 #| msgid "assuming pointer to member %qD"
 msgid "dangling pointer to %qD may be used"
 msgstr "假定是成员指针%qD"
 
-#: 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 "无效的指针模式%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在此声明"
 
-#: 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 "plugin cannot register an unnamed pass"
 msgid "using a dangling pointer to an unnamed temporary"
 msgstr "插件不能注册一趟无名处理"
 
-#: gimple-ssa-warn-access.cc:3972
+#: gimple-ssa-warn-access.cc:3967
 #, fuzzy, gcc-internal-format
 msgid "unnamed temporary defined here"
 msgstr "%B:警告:在此定义\n"
 
-#: gimple-ssa-warn-access.cc:4062
+#: gimple-ssa-warn-access.cc:4057
 #, fuzzy, gcc-internal-format
 #| msgid "call to non-function %qD"
 msgid "%qD called on pointer %qE passed to mismatched allocation function %qD"
 msgstr "调用非函数的%qD"
 
-#: gimple-ssa-warn-access.cc:4067
+#: gimple-ssa-warn-access.cc:4062
 #, fuzzy, gcc-internal-format
 #| msgid "call to non-function %qD"
 msgid "%qD called on a pointer passed to mismatched reallocation function %qD"
 msgstr "调用非函数的%qD"
 
-#: gimple-ssa-warn-access.cc:4073
+#: gimple-ssa-warn-access.cc:4068
 #, fuzzy, gcc-internal-format
 #| msgid "  in call to %qD"
 msgid "call to %qD"
 msgstr "在调用%qD时"
 
-#: gimple-ssa-warn-access.cc:4578
+#: gimple-ssa-warn-access.cc:4581
 #, fuzzy, gcc-internal-format
 #| msgid "address of local variable %q+D returned"
 msgid "storing the address of local variable %qD in %qE"
@@ -28262,13 +28357,13 @@ msgstr "枚举值 %E 对其类型%<%T%>而言太大了"
 msgid "bytecode stream: unknown GIMPLE statement tag %s"
 msgstr "字节码流:未知的 GIMPLE 语句标记 %s"
 
-#: gimple-warn-recursion.cc:183
+#: gimple-warn-recursion.cc:195
 #, fuzzy, gcc-internal-format
 #| msgid "circular pointer delegation detected"
 msgid "infinite recursion detected"
 msgstr "检测到循环指针代理"
 
-#: gimple-warn-recursion.cc:190
+#: gimple-warn-recursion.cc:202
 #, fuzzy, gcc-internal-format
 #| msgid "recursive inlining"
 msgid "recursive call"
@@ -28279,367 +28374,372 @@ msgstr "递归内联"
 msgid "gimple check: expected %s(%s), have %s(%s) in %s, at %s:%d"
 msgstr "gimple 检查:需要 %s(%s),得到 %s(%s) 在 %s 中,于 %s:%d"
 
-#: gimplify.cc:2108
+#: gimplify.cc:2068
 #, fuzzy, gcc-internal-format
 #| msgid "statement with no effect"
 msgid "statement will never be executed"
 msgstr "语句不起作用"
 
-#: 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 ""
 
-#: gimplify.cc:2457
+#: gimplify.cc:2534
 #, gcc-internal-format
 msgid "here"
 msgstr ""
 
 #. We've found [[fallthrough]]; at the end of a switch, which the C++
 #. standard says is ill-formed; see [dcl.attr.fallthrough].
-#: gimplify.cc:2569 gimplify.cc:2592
+#: gimplify.cc:2646 gimplify.cc:2669
 #, gcc-internal-format
 msgid "attribute %<fallthrough%> not preceding a case label or default label"
 msgstr ""
 
-#: gimplify.cc:3680
+#: gimplify.cc:3767
 #, gcc-internal-format
 msgid "using result of function returning %<void%>"
 msgstr "使用返回%<void%>的函数的结果"
 
-#: gimplify.cc:6475
+#: gimplify.cc:6600
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "non-memory input %d must stay in memory"
 msgid "non-memory output %d must stay in memory"
 msgstr "非内存输入 %d 必须在内存中"
 
-#: gimplify.cc:6490
+#: gimplify.cc:6615
 #, fuzzy, gcc-internal-format
 #| msgid "invalid lvalue in asm output %d"
 msgid "invalid lvalue in %<asm%> output %d"
 msgstr "汇编输出 %d 中左值无效"
 
-#: gimplify.cc:6637
+#: gimplify.cc:6762
 #, gcc-internal-format, gfc-internal-format
 msgid "non-memory input %d must stay in memory"
 msgstr "非内存输入 %d 必须在内存中"
 
-#: 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 "内存输入 %d 不可直接寻址"
 
-#: gimplify.cc:7304
+#: gimplify.cc:7427
 #, fuzzy, gcc-internal-format
 msgid "threadprivate variable %qE used in a region with %<order(concurrent)%> clause"
 msgstr "嵌套函数中使用了寄存器变量%qD"
 
-#: gimplify.cc:7306
+#: gimplify.cc:7429
 #, fuzzy, gcc-internal-format
 msgid "enclosing region"
 msgstr "括入并行"
 
-#: gimplify.cc:7310
+#: gimplify.cc:7433
 #, fuzzy, gcc-internal-format
 msgid "threadprivate variable %qE used in target region"
 msgstr "嵌套函数中使用了寄存器变量%qD"
 
-#: gimplify.cc:7312
+#: gimplify.cc:7435
 #, fuzzy, gcc-internal-format
 msgid "enclosing target region"
 msgstr "括入并行"
 
-#: gimplify.cc:7325
+#: gimplify.cc:7448
 #, fuzzy, gcc-internal-format
 msgid "threadprivate variable %qE used in untied task"
 msgstr "嵌套函数中使用了寄存器变量%qD"
 
-#: gimplify.cc:7327
+#: gimplify.cc:7450
 #, fuzzy, gcc-internal-format
 msgid "enclosing task"
 msgstr "括入并行"
 
-#: gimplify.cc:7424
+#: gimplify.cc:7547
 #, fuzzy, gcc-internal-format
 msgid "%qE not specified in enclosing %qs"
 msgstr "%qE未为在括入的并行中指定"
 
-#: gimplify.cc:7426
+#: gimplify.cc:7549
 #, fuzzy, gcc-internal-format
 msgid "enclosing %qs"
 msgstr "括入并行"
 
-#: gimplify.cc:7569
+#: gimplify.cc:7692
 #, fuzzy, gcc-internal-format
 msgid "%qE not specified in enclosing OpenACC %qs construct"
 msgstr "%qE未为在括入的并行中指定"
 
-#: gimplify.cc:7571
+#: gimplify.cc:7694
 #, fuzzy, gcc-internal-format
 msgid "enclosing OpenACC %qs construct"
 msgstr "括入并行"
 
-#: gimplify.cc:7632
+#: gimplify.cc:7755
 #, gcc-internal-format
 msgid "%qE with %<link%> clause used in %<routine%> function"
 msgstr ""
 
-#: gimplify.cc:7640
+#: gimplify.cc:7763
 #, fuzzy, gcc-internal-format
 #| msgid "%qE undeclared (first use in this function)"
 msgid "%qE requires a %<declare%> directive for use in a %<routine%> function"
 msgstr "%qE未声明(在此函数内第一次使用)"
 
-#: gimplify.cc:7709
+#: gimplify.cc:7832
 #, fuzzy, gcc-internal-format
 msgid "%qE not specified in enclosing %<target%>"
 msgstr "%qE未为在括入的并行中指定"
 
-#: gimplify.cc:7711
+#: gimplify.cc:7834
 #, fuzzy, gcc-internal-format
 msgid "enclosing %<target%>"
 msgstr "括入并行"
 
-#: gimplify.cc:7741 gimplify.cc:9442
+#: gimplify.cc:7864 gimplify.cc:9565
 #, fuzzy, gcc-internal-format
 #| msgid "variable %q+D declared %<inline%>"
 msgid "variable %qE declared in enclosing %<host_data%> region"
 msgstr "变量%q+D声明为%<inline%>"
 
-#: gimplify.cc:7762
+#: gimplify.cc:7885
 #, gcc-internal-format
 msgid "%qD referenced in target region does not have a mappable type"
 msgstr ""
 
-#: gimplify.cc:7893
+#: gimplify.cc:8016
 #, fuzzy, gcc-internal-format
 msgid "iteration variable %qE is predetermined linear"
 msgstr "迭代变量%qE不应当是 reduction"
 
-#: gimplify.cc:7896
+#: gimplify.cc:8019
 #, gcc-internal-format
 msgid "iteration variable %qE should be private"
 msgstr "迭代变量%qE应当是私有的"
 
-#: gimplify.cc:7910
+#: gimplify.cc:8033
 #, gcc-internal-format
 msgid "iteration variable %qE should not be firstprivate"
 msgstr "迭代变量%qE不应当是 firstprivate"
 
-#: gimplify.cc:7913
+#: gimplify.cc:8036
 #, gcc-internal-format
 msgid "iteration variable %qE should not be reduction"
 msgstr "迭代变量%qE不应当是 reduction"
 
-#: gimplify.cc:7916
+#: gimplify.cc:8039
 #, fuzzy, gcc-internal-format
 msgid "iteration variable %qE should not be linear"
 msgstr "迭代变量%qE应当是私有的"
 
-#: gimplify.cc:9103 gimplify.cc:9109
+#: gimplify.cc:9226 gimplify.cc:9232
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a variable in clause %<lastprivate%>"
 msgid "conditional %<lastprivate%> clause on %qs construct"
 msgstr "%qD在%<lastprivate%>子句中不是一个变量"
 
-#: gimplify.cc:9126
+#: gimplify.cc:9249
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a variable in clause %<lastprivate%>"
 msgid "non-scalar variable %qD in conditional %<lastprivate%> clause"
 msgstr "%qD在%<lastprivate%>子句中不是一个变量"
 
-#: 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 "尚未支持代码模式 %<large%>"
 
-#: 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 "%qD在数据子句中多次出现"
 
-#: gimplify.cc:10424
+#: gimplify.cc:10547
 #, fuzzy, gcc-internal-format
 msgid "copyprivate variable %qE is not threadprivate or private in outer context"
 msgstr "%s 变量%qE在外层上下文中是私有的"
 
-#: gimplify.cc:10481
+#: gimplify.cc:10604
 #, gcc-internal-format
 msgid "%s variable %qE is private in outer context"
 msgstr "%s 变量%qE在外层上下文中是私有的"
 
-#: gimplify.cc:10513
+#: gimplify.cc:10636
 #, fuzzy, gcc-internal-format
 msgid "expected %qs %<if%> clause modifier rather than %qs"
 msgstr "{ 预期于运算式中 ? 之后"
 
-#: gimplify.cc:10551
+#: gimplify.cc:10674
 #, fuzzy, gcc-internal-format
 #| msgid "%<void%> as only parameter may not be qualified"
 msgid "%<device%> clause with %<ancestor%> is only allowed on %<target%> construct"
 msgstr "%<void%>作为仅有的参数时不能被限定"
 
-#: 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
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in implicit %<map%> clause"
 msgstr ""
 
-#: gimplify.cc:11047
+#: gimplify.cc:11170
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in implicit %<firstprivate%> clause on %<target%> construct"
 msgstr ""
 
-#: gimplify.cc:11304
+#: gimplify.cc:11427
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<firstprivate%> clause on %<target%> construct"
 msgstr ""
 
-#: gimplify.cc:11377
+#: gimplify.cc:11500
 #, gcc-internal-format
 msgid "same variable used in %<firstprivate%> and %<lastprivate%> clauses on %<distribute%> construct"
 msgstr ""
 
-#: 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 template declaration of %qD"
 msgid "invalid private reduction on %qE"
 msgstr "%qD模板声明无效"
 
-#: gimplify.cc:11796
+#: gimplify.cc:11919
 #, gcc-internal-format
 msgid "%<inscan%> %<reduction%> clause used together with %<linear%> clause for a variable other than loop iterator"
 msgstr ""
 
-#: gimplify.cc:12130
+#: gimplify.cc:12253
 #, gcc-internal-format
 msgid "%<mutexinoutset%> kind in %<depend%> clause on a %<taskwait%> construct"
 msgstr ""
 
-#: 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 "迭代变量%qE类型无效"
 
-#: gimplify.cc:12652 gimplify.cc:12760
+#: gimplify.cc:12775 gimplify.cc:12883
 #, gcc-internal-format
 msgid "conditional %<lastprivate%> on loop iterator %qD ignored"
 msgstr ""
 
-#: gimplify.cc:13460
+#: gimplify.cc:13585
 #, fuzzy, 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
 #, fuzzy, 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 region must be closely nested inside a loop region with an ordered clause"
 msgid "%<ordered%> construct with %<depend%> clause must be closely nested inside a loop with %<ordered%> clause with a parameter"
 msgstr "有序区域必须紧密嵌套在一个有次序分句的循环内"
 
-#: 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 results does not match number of values"
 msgid "number of variables in %<depend%> clause with %<sink%> modifier does not match number of iteration variables"
 msgstr "返回值的数量不匹配值的数量"
 
-#: gimplify.cc:14683
+#: gimplify.cc:14808
 #, gcc-internal-format
 msgid "more than one %<depend%> clause with %<source%> modifier on an %<ordered%> construct"
 msgstr ""
 
-#: gimplify.cc:14694
+#: gimplify.cc:14819
 #, gcc-internal-format
 msgid "%<depend%> clause with %<source%> modifier specified together with %<depend%> clauses with %<sink%> modifier on the same construct"
 msgstr ""
 
-#: gimplify.cc:15986
+#: gimplify.cc:16122
 #, gcc-internal-format
 msgid "gimplification failed"
 msgstr "gimplification 失败"
 
-#: gimplify.cc:16514
+#: gimplify.cc:16650
 #, gcc-internal-format
 msgid "%qT is promoted to %qT when passed through %<...%>"
 msgstr "通过%<...%>传递时%qT被提升为%qT"
 
-#: gimplify.cc:16519
+#: gimplify.cc:16655
 #, gcc-internal-format
 msgid "(so you should pass %qT not %qT to %<va_arg%>)"
 msgstr "(因此您应该向%<va_arg%>传递%qT而不是%qT)"
 
-#: gimplify.cc:16526
+#: gimplify.cc:16662
 #, gcc-internal-format
 msgid "if this code is reached, the program will abort"
 msgstr "如果执行到这段代码,程序将中止"
@@ -29035,7 +29135,7 @@ msgstr "ipa 内联概要缺少在中输入文件"
 msgid "IPA modref summary is missing in input file"
 msgstr "ipa 内联概要缺少在中输入文件"
 
-#: 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 function in gimple call"
 msgid "invalid jump function in LTO stream"
@@ -29118,17 +29218,17 @@ msgstr "对可靠的堆栈检查来说框架太大了"
 msgid "maximum number of LRA assignment passes is achieved (%d)"
 msgstr "最大值条件保存对数量该可以是 sunk"
 
-#: lra-assigns.cc:1821 reload1.cc:1242
+#: lra-assigns.cc:1855 reload1.cc:1242
 #, gcc-internal-format
 msgid "%<asm%> operand has impossible constraints"
 msgstr "%<asm%>操作数中有不可能的约束"
 
-#: lra-assigns.cc:1836
+#: lra-assigns.cc:1870
 #, fuzzy, gcc-internal-format
 msgid "unable to find a register to spill"
 msgstr "在类%qs中找不到可溢出的寄存器"
 
-#: lra-constraints.cc:4170 reload.cc:3842 reload.cc:4097
+#: lra-constraints.cc:4170 reload.cc:3845 reload.cc:4100
 #, gcc-internal-format
 msgid "inconsistent operand constraints in an %<asm%>"
 msgstr "%<asm%>中操作数约束不一致"
@@ -29423,35 +29523,35 @@ msgstr "目标操作系统不支持未对齐的访问"
 msgid "default %<target_clones%> attribute was not set"
 msgstr "版本属性不是一个字符串"
 
-#: multiple_target.cc:351
+#: multiple_target.cc:327 c-family/c-attribs.cc:5494
 #, fuzzy, gcc-internal-format
 #| msgid "%qE incompatible attribute ignored"
 msgid "single %<target_clones%> attribute is ignored"
 msgstr "%qE不兼容的属性已被忽略"
 
-#: multiple_target.cc:360
+#: multiple_target.cc:336
 #, fuzzy, gcc-internal-format
 #| msgid "version attribute is not a string"
 msgid "clones for %<target_clones%> attribute cannot be created"
 msgstr "版本属性不是一个字符串"
 
-#: multiple_target.cc:363
+#: multiple_target.cc:339
 #, fuzzy, gcc-internal-format
 #| msgid "function %q+F can never be copied because it receives a non-local goto"
 msgid "function %q+F can never be copied because it has %<noclone%> attribute"
 msgstr "函数%q+F无法被复制,因为它接受了非局部的 goto"
 
-#: multiple_target.cc:384
+#: multiple_target.cc:360
 #, fuzzy, gcc-internal-format
 msgid "%<default%> target was not set"
 msgstr "默认实参%qE使用了局部变量%qD"
 
-#: multiple_target.cc:388
+#: multiple_target.cc:364
 #, gcc-internal-format
 msgid "an empty string cannot be in %<target_clones%> attribute"
 msgstr ""
 
-#: multiple_target.cc:392
+#: multiple_target.cc:368
 #, fuzzy, gcc-internal-format
 #| msgid "multiple default labels in one switch"
 msgid "multiple %<default%> targets were set"
@@ -29546,283 +29646,283 @@ msgstr "开关语句从此开始"
 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 "pointers are not permitted as case values"
 msgid "argument not permitted on %qs clause"
 msgstr "指针不能用作 case 常量"
 
-#: omp-low.cc:2740
+#: omp-low.cc:2766
 #, fuzzy, gcc-internal-format
 msgid "enclosing parent compute construct"
 msgstr "括入并行"
 
-#: omp-low.cc:2743
+#: omp-low.cc:2769
 #, fuzzy, gcc-internal-format
 msgid "enclosing routine"
 msgstr "括入并行"
 
-#: omp-low.cc:2784
+#: omp-low.cc:2810
 #, fuzzy, gcc-internal-format
 #| msgid "conflicting types for %q+D"
 msgid "conflicting reduction operations for %qE"
 msgstr "与%q+D类型冲突"
 
-#: omp-low.cc:2787
+#: omp-low.cc:2813
 #, fuzzy, gcc-internal-format
 #| msgid "no previous declaration for %qD"
 msgid "location of the previous reduction for %qE"
 msgstr "%qD先前没有声明"
 
-#: 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
 #, fuzzy, gcc-internal-format
 msgid "non-OpenACC construct inside of OpenACC routine"
 msgstr "%P: 找不到 %s 于 %s 内部\n"
 
-#: 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 region may not be closely nested inside of critical or explicit task region"
 msgid "%<ordered simd threads%> must be closely nested inside of %<%s simd%> region"
 msgstr "有序区域不可以紧密嵌套在临界或显式的任务区域内"
 
-#: omp-low.cc:3219
+#: omp-low.cc:3245
 #, fuzzy, gcc-internal-format
 #| msgid "ordered region must be closely nested inside a loop region with an ordered clause"
 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 "位置错误的%<@%D%>Objective-C++ 构造"
 
-#: omp-low.cc:3367
+#: omp-low.cc:3393
 #, fuzzy, gcc-internal-format
 msgid "%<cancel for%> inside %<nowait%> for construct"
 msgstr "%<#pragma omp section%>只能用在%<#pragma omp sections%>结构中"
 
-#: omp-low.cc:3372
+#: omp-low.cc:3398
 #, fuzzy, gcc-internal-format
 msgid "%<cancel for%> inside %<ordered%> for construct"
 msgstr "%<#pragma omp section%>只能用在%<#pragma omp sections%>结构中"
 
-#: 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 "%<#pragma omp section%>只能用在%<#pragma omp sections%>结构中"
 
-#: omp-low.cc:3434
+#: omp-low.cc:3460
 #, fuzzy, gcc-internal-format
 msgid "%<%s taskgroup%> construct not closely nested inside of %<taskgroup%> region"
 msgstr "主要区域不可以紧密嵌套在工作共享或显式的任务区域内"
 
-#: omp-low.cc:3459
+#: omp-low.cc:3485
 #, fuzzy, gcc-internal-format
 msgid "invalid arguments"
 msgstr "%<...%>作为实参。)"
 
-#: 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
 #, fuzzy, gcc-internal-format
 #| msgid "barrier region may not be closely nested inside of work-sharing, critical, ordered, master or explicit task region"
 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
 #, fuzzy, gcc-internal-format
 #| msgid "work-sharing region may not be closely nested inside of work-sharing, critical, ordered, master or explicit task region"
 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
 #, fuzzy, gcc-internal-format
 #| msgid "master region may not be closely nested inside of work-sharing or explicit task region"
 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
 #, fuzzy, gcc-internal-format
 #| msgid "barrier region may not be closely nested inside of work-sharing, critical, ordered, master or explicit task region"
 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
 #, fuzzy, gcc-internal-format
 #| msgid "ordered region must be closely nested inside a loop region with an ordered clause"
 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
 #, fuzzy, gcc-internal-format
 #| msgid "ordered region must be closely nested inside a loop region with an ordered clause"
 msgid "%<ordered%> %<simd%> must be closely nested inside %<simd%> region"
 msgstr "有序区域必须紧密嵌套在一个有次序分句的循环内"
 
-#: omp-low.cc:3665
+#: omp-low.cc:3691
 #, fuzzy, gcc-internal-format
 #| msgid "ordered region may not be closely nested inside of critical or explicit task region"
 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
 #, fuzzy, gcc-internal-format
 #| msgid "ordered region must be closely nested inside a loop region with an ordered clause"
 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 must be closely nested inside a loop region with an ordered clause"
 msgid "%<ordered%> region without %<depend%> clause may not be closely nested inside a loop region with an %<ordered%> clause with a parameter"
 msgstr "有序区域必须紧密嵌套在一个有次序分句的循环内"
 
-#: omp-low.cc:3717
+#: omp-low.cc:3743
 #, fuzzy, gcc-internal-format
 #| msgid "critical region may not be nested inside a critical region with the same name"
 msgid "%<critical%> region may not be nested inside a %<critical%> region with the same name"
 msgstr "临界区域不可以被嵌套在同名的临界区域内"
 
-#: omp-low.cc:3735
+#: omp-low.cc:3761
 #, fuzzy, 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
 #, fuzzy, gcc-internal-format
 msgid "%s %qs construct inside of %s %qs region"
 msgstr "%P: 找不到 %s 于 %s 内部\n"
 
-#: omp-low.cc:3844 omp-low.cc:3851
+#: omp-low.cc:3870 omp-low.cc:3877
 #, fuzzy, gcc-internal-format
 msgid "%qs construct inside of %qs region"
 msgstr "%P: 找不到 %s 于 %s 内部\n"
 
-#: 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
 #, gcc-internal-format
 msgid "OpenMP runtime API call %qD in a region with %<device(ancestor)%> clause"
 msgstr ""
 
-#: 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 "OpenMP 结构块出口无效"
 
-#: 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 "OpenMP 结构块出口无效"
 
 #. 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 "OpenMP 结构块出口无效"
@@ -29859,7 +29959,12 @@ msgstr ""
 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 "%P%F:不支持 -shared\n"
+
+#: omp-oacc-neuter-broadcast.cc:1764
 #, gcc-internal-format
 msgid "shared-memory region overflow"
 msgstr ""
@@ -29983,7 +30088,7 @@ msgstr "进行跨跳转优化"
 msgid "command-line option %qs is not supported by this configuration"
 msgstr "此配置不支持命令行选项%qs"
 
-#: opts-common.cc:1389 opts.cc:2410
+#: opts-common.cc:1389 opts.cc:2419
 #, gcc-internal-format
 msgid "missing argument to %qs"
 msgstr "%qs缺少参数"
@@ -30123,8 +30228,8 @@ msgstr "“%s”的实参应该是一个非负整数"
 
 #: 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 "%qs必须与%qs一起使用"
@@ -30218,189 +30323,189 @@ msgstr "取样不支持 -mg"
 msgid "vtable verification is not supported with LTO"
 msgstr "取样不支持 -mg"
 
-#: opts.cc:1323
+#: opts.cc:1351
 #, gcc-internal-format
 msgid "var-tracking-assignments changes selective scheduling"
 msgstr "var-tracking-assignments 改变了选择性调度"
 
-#: 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"
 msgid "%<-freorder-blocks-and-partition%> does not work with exceptions on this architecture"
 msgstr "-freorder-blocks-and-partition 不能在此架构下和异常一起工作"
 
-#: opts.cc:1395
+#: opts.cc:1402
 #, fuzzy, gcc-internal-format
 #| msgid "-freorder-blocks-and-partition does not support unwind info on this architecture"
 msgid "%<-freorder-blocks-and-partition%> does not support unwind info on this architecture"
 msgstr "-freorder-blocks-and-partition 在此架构下不支持堆栈展开信息"
 
-#: 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"
 msgid "%<-freorder-blocks-and-partition%> does not work on this architecture"
 msgstr "-freorder-blocks-and-partition 不能在此架构下工作"
 
-#: opts.cc:1922
+#: opts.cc:1929
 #, fuzzy, gcc-internal-format
 #| msgid "unrecognized include_flags 0x%x passed to print_specific_help"
 msgid "unrecognized %<include_flags 0x%x%> passed to %<print_specific_help%>"
 msgstr "传递给 print_specific_help 的 include_flags 0x%x 不可识别"
 
-#: opts.cc:2142
+#: opts.cc:2150
 #, gcc-internal-format
 msgid "%<-fsanitize=all%> option is not valid"
 msgstr ""
 
-#: 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 "警告:--help= 选项的参数不可识别:%.*s\n"
 
-#: opts.cc:2186
+#: opts.cc:2195
 #, fuzzy, gcc-internal-format
 msgid "unrecognized argument to %<-f%ssanitize%s=%> option: %q.*s"
 msgstr "警告:--help= 选项的参数不可识别:%.*s\n"
 
-#: opts.cc:2221
+#: opts.cc:2230
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute directive ignored"
 msgid "%qs attribute directive ignored"
 msgstr "%qE属性指定被忽略"
 
-#: opts.cc:2245
+#: opts.cc:2254
 #, fuzzy, gcc-internal-format
 msgid "unrecognized argument to %<-fzero-call-used-regs=%>: %qs"
 msgstr "%P: 无法辨认的仿真模式: %s\n"
 
-#: opts.cc:2269
+#: opts.cc:2278
 #, fuzzy, gcc-internal-format
 msgid "invalid arguments for %<-falign-%s%> option: %qs"
 msgstr "内建函数实参无效"
 
-#: opts.cc:2284
+#: opts.cc:2293
 #, fuzzy, gcc-internal-format
 msgid "invalid number of arguments for %<-falign-%s%> option: %qs"
 msgstr "提供给函数%qE的实参太多"
 
-#: opts.cc:2293
+#: opts.cc:2302
 #, fuzzy, gcc-internal-format
 #| msgid "-malign-loops=%d is not between 0 and %d"
 msgid "%<-falign-%s%> is not between 0 and %d"
 msgstr "-malign-loops=%d 不在 0 和 %d 之间"
 
-#: opts.cc:2352
+#: opts.cc:2361
 #, fuzzy, gcc-internal-format
 msgid "invalid arguments for %<-fpatchable-function-entry%>"
 msgstr "内建函数实参无效"
 
-#: opts.cc:2465
+#: opts.cc:2474
 #, fuzzy, gcc-internal-format
 #| msgid "--help argument %q.*s is ambiguous, please be more specific"
 msgid "%<--help%> argument %q.*s is ambiguous, please be more specific"
 msgstr "--help 的参数%q.*s有歧义,请改用更加明确的参数"
 
-#: opts.cc:2474
+#: opts.cc:2483
 #, fuzzy, gcc-internal-format
 #| msgid "unrecognized argument to --help= option: %q.*s"
 msgid "unrecognized argument to %<--help=%> option: %q.*s"
 msgstr "--help= 选项的参数未知:%q.*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 %d"
 msgid "structure alignment must be a small power of two, not %wu"
 msgstr "结构的对齐必须是 2 的较小次方,而不是 %d"
 
-#: opts.cc:2982
+#: opts.cc:2991
 #, fuzzy, gcc-internal-format
 msgid "unknown stack check parameter %qs"
 msgstr "未知的堆栈检查参数“%s”"
 
-#: 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
 #, fuzzy, gcc-internal-format
 #| msgid "dwarf version %d is not supported"
 msgid "dwarf version %wu is not supported"
 msgstr "不支持 dwarf 版本 %d"
 
-#: opts.cc:3088
+#: opts.cc:3097
 #, fuzzy, gcc-internal-format
 #| msgid "unrecognized argument to --help= option: %q.*s"
 msgid "unrecognized argument to %<-flto=%> option: %qs"
 msgstr "--help= 选项的参数未知:%q.*s"
 
-#: opts.cc:3288
+#: opts.cc:3297
 #, gcc-internal-format
 msgid "target system does not support debug output"
 msgstr "目标系统不支持调试输出"
 
-#: opts.cc:3326
+#: opts.cc:3335
 #, fuzzy, gcc-internal-format
 msgid "debug format %qs conflicts with prior selection"
 msgstr "调试格式“%s”与先前的选择冲突"
 
-#: opts.cc:3350
+#: opts.cc:3359
 #, fuzzy, gcc-internal-format
 msgid "unrecognized debug output level %qs"
 msgstr "无法识别的调试输出级别“%s”"
 
-#: opts.cc:3352
+#: opts.cc:3361
 #, fuzzy, gcc-internal-format
 msgid "debug output level %qs is too high"
 msgstr "调试输出级别 %s 太高"
 
-#: opts.cc:3364
+#: opts.cc:3373
 #, fuzzy, gcc-internal-format
 msgid "unrecognized btf debug output level %qs"
 msgstr "无法识别的调试输出级别“%s”"
 
-#: opts.cc:3381
+#: opts.cc:3390
 #, gcc-internal-format
 msgid "getting core file size maximum limit: %m"
 msgstr "获取核心文件大小上限:%m"
 
-#: opts.cc:3385
+#: opts.cc:3394
 #, gcc-internal-format
 msgid "setting core file size limit to maximum: %m"
 msgstr "将核心文件大小上限设为最大值:%m"
 
-#: opts.cc:3430
+#: opts.cc:3439
 #, gcc-internal-format, gfc-internal-format
 msgid "unrecognized gcc debugging option: %c"
 msgstr "无法识别的 gcc 调试选项:%c"
 
-#: opts.cc:3459
+#: opts.cc:3468
 #, fuzzy, gcc-internal-format
 msgid "%<-W%serror=%s%>: no option %<-%s%>; did you mean %<-%s%>?"
 msgstr "命令行选项文件“%s”不存在"
 
-#: opts.cc:3463
+#: opts.cc:3472
 #, fuzzy, gcc-internal-format
 #| msgid "-Werror=%s: no option -%s"
 msgid "%<-W%serror=%s%>: no option %<-%s%>"
 msgstr "-Werror=%s:没有选项 -%s"
 
-#: opts.cc:3467
+#: opts.cc:3476
 #, fuzzy, gcc-internal-format
 msgid "%<-Werror=%s%>: %<-%s%> is not an option that controls warnings"
 msgstr "%qs对%qs而言无效"
@@ -30599,7 +30704,7 @@ msgstr "无法初始化插件 %s"
 #: plugin.cc:1009
 #, fuzzy, gcc-internal-format
 #| msgid "-iplugindir <dir> option not passed from the gcc driver"
-msgid "%<-iplugindir%> <dir> option not passed from the gcc driver"
+msgid "%<-iplugindir%> option not passed from the gcc driver"
 msgstr "-iplugindir <目录>选项未被传递给 gcc 驱动程序"
 
 #: pointer-query.cc:1202
@@ -30882,7 +30987,7 @@ msgstr "%<asm%>中不可能的寄存器约束"
 msgid "the target does not support %<asm goto%> with outputs in %<asm%>"
 msgstr "此目标机不支持 %qs"
 
-#: reload.cc:3699
+#: reload.cc:3702
 #, gcc-internal-format
 msgid "%<&%> constraint used with no register class"
 msgstr "%<&%>约束未与寄存器类型一起使用"
@@ -31544,27 +31649,37 @@ msgstr "全局构造函数在此目标机上不受支持"
 msgid "%qs is not supported for this target"
 msgstr "堆栈限制在此目标机上不受支持"
 
-#: toplev.cc:2016
+#: toplev.cc:1685
+#, fuzzy, gcc-internal-format
+msgid "%<-fsanitize=shadow-call-stack%> not supported in current platform"
+msgstr "全局构造函数在此目标机上不受支持"
+
+#: toplev.cc:1688
+#, gcc-internal-format
+msgid "%<-fsanitize=shadow-call-stack%> requires %<-fno-exceptions%>"
+msgstr ""
+
+#: toplev.cc:2026
 #, gcc-internal-format
 msgid "error writing to %s: %m"
 msgstr "写入 %s 时出错:%m"
 
-#: toplev.cc:2018
+#: toplev.cc:2028
 #, gcc-internal-format
 msgid "error closing %s: %m"
 msgstr "关闭 %s 时出错:%m"
 
-#: 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
 #, gcc-internal-format
 msgid "self-tests are not enabled in this build"
 msgstr ""
 
-#: toplev.cc:2315
+#: toplev.cc:2325
 #, fuzzy, gcc-internal-format
 msgid "self-tests incompatible with %<-E%>"
 msgstr "%qs必须与%qs一起使用"
@@ -32107,7 +32222,7 @@ msgstr ""
 msgid "invalid operand in return statement"
 msgstr "返回语句操作数无效"
 
-#: tree-cfg.cc:4794 c/gimple-parser.cc:2452
+#: tree-cfg.cc:4794 c/gimple-parser.cc:2474
 #, gcc-internal-format
 msgid "invalid conversion in return statement"
 msgstr "返回语句转换无效"
@@ -32565,30 +32680,30 @@ msgstr "无效的表达式用作操作数"
 msgid "target does not support atomic profile update, single mode is selected"
 msgstr ""
 
-#: tree-ssa-alias.cc:3968
+#: tree-ssa-alias.cc:3991
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "invalid element type for attribute %qs"
 msgid "invalid fn spec attribute \"%s\""
 msgstr "属性%qs的元素类型无效"
 
-#: tree-ssa-alias.cc:4007
+#: tree-ssa-alias.cc:4030
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "invalid use of %<auto%>"
 msgid "invalid fn spec attribute \"%s\" arg %i"
 msgstr "错误地使用了%<auto%>"
 
-#: 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 "invalid use of non-static member function %qD"
 msgid "in a call to non-static member function %qD"
 msgstr "对非静态成员函数%qD的使用无效"
 
-#: 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 ""
@@ -32598,17 +32713,17 @@ msgstr ""
 msgid "in a call to built-in function %qD"
 msgstr "内建函数实参无效"
 
-#: 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 "内联函数%q+D声明过但从未定义"
 
-#: 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 "%qE上的运算结果可能是未定义的"
 
-#: tree-ssa-loop-niter.cc:3473
+#: tree-ssa-loop-niter.cc:3479
 #, fuzzy, gcc-internal-format
 #| msgid "within this context"
 msgid "within this loop"
@@ -32802,7 +32917,7 @@ msgstr "%qE未经初始化"
 msgid "%qs may be used uninitialized"
 msgstr "此函数中的%qD在使用前可能未初始化"
 
-#: 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在此声明"
@@ -33040,145 +33155,145 @@ msgstr "矢量作业将被展开 piecewise"
 msgid "vector shuffling operation will be expanded piecewise"
 msgstr "矢量随机播放作业将被展开 piecewise"
 
-#: 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
 #, gcc-internal-format
 msgid "non-constant element in constant CONSTRUCTOR"
 msgstr ""
 
-#: tree.cc:2225
+#: tree.cc:2261
 #, gcc-internal-format
 msgid "side-effects element in no-side-effects CONSTRUCTOR"
 msgstr ""
 
-#: tree.cc:7143
+#: tree.cc:7179
 #, gcc-internal-format
 msgid "arrays of functions are not meaningful"
 msgstr "函数数组是没有意义的"
 
-#: tree.cc:7307
+#: tree.cc:7343
 #, gcc-internal-format
 msgid "function return type cannot be function"
 msgstr "函数不能返回函数"
 
-#: tree.cc:8688 tree.cc:8773 tree.cc:8836
+#: tree.cc:8724 tree.cc:8809 tree.cc:8872
 #, gcc-internal-format, gfc-internal-format
 msgid "tree check: %s, have %s in %s, at %s:%d"
 msgstr "树检查:%s,得到 %s 在 %s,于 %s:%d"
 
-#: tree.cc:8725
+#: tree.cc:8761
 #, gcc-internal-format, gfc-internal-format
 msgid "tree check: expected none of %s, have %s in %s, at %s:%d"
 msgstr "树检查:不需要 %s,得到 %s 在 %s,于 %s:%d"
 
-#: tree.cc:8738
+#: tree.cc:8774
 #, gcc-internal-format
 msgid "tree check: expected class %qs, have %qs (%s) in %s, at %s:%d"
 msgstr "树检查:需要类%qs,得到%qs(%s) 在 %s,于 %s:%d"
 
-#: tree.cc:8787
+#: tree.cc:8823
 #, gcc-internal-format
 msgid "tree check: did not expect class %qs, have %qs (%s) in %s, at %s:%d"
 msgstr "树检查:不需要类%qs,得到%qs(%s) 在 %s,于 %s:%d"
 
-#: tree.cc:8800
+#: tree.cc:8836
 #, fuzzy, gcc-internal-format
 #| msgid "tree check: expected omp_clause %s, have %s in %s, at %s:%d"
 msgid "tree check: expected %<omp_clause %s%>, have %qs in %s, at %s:%d"
 msgstr "树检查:需要 omp_clause %s,得到 %s 在 %s,于 %s:%d"
 
-#: tree.cc:8862
+#: tree.cc:8898
 #, gcc-internal-format
 msgid "tree check: expected tree that contains %qs structure, have %qs in %s, at %s:%d"
 msgstr "树检查:需要包含%qs结构的树,得到%qs在 %s,于 %s:%d"
 
-#: 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 "树检查:访问了 %3$s 中有 %2$d 个 elt  的 tree_vec 的 elt %1$d,于 %4$s:%5$d"
 
-#: 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"
 msgid "tree check: accessed elt %d of %<tree_vec%> with %d elts in %s, at %s:%d"
 msgstr "树检查:访问了 %3$s 中有 %2$d 个 elt  的 tree_vec 的 elt %1$d,于 %4$s:%5$d"
 
-#: tree.cc:8902
+#: tree.cc:8938
 #, gcc-internal-format, gfc-internal-format
 msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
 msgstr "树检查:在 %4$s 中访问有 %3$d 个操作数的 %2$s 的第 %1$d 个操作数,于 %5$s:%6$d"
 
-#: 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"
 msgid "tree check: accessed operand %d of %<omp_clause %s%> with %d operands in %s, at %s:%d"
 msgstr "树检查:在 %4$s 中访问有 %3$d 个操作数的 omp_clause %2$s 的第 %1$d 个操作数,于 %5$s:%6$d"
 
-#: tree.cc:12069
+#: tree.cc:12112
 #, fuzzy, gcc-internal-format
 msgid "%qD is deprecated: %s"
 msgstr "已弃用%qE:%s"
 
-#: tree.cc:12072
+#: tree.cc:12115
 #, fuzzy, gcc-internal-format
 msgid "%qD is deprecated"
 msgstr "已弃用%qE"
 
-#: tree.cc:12095
+#: tree.cc:12138
 #, gcc-internal-format
 msgid "%qE is deprecated: %s"
 msgstr "已弃用%qE:%s"
 
-#: tree.cc:12098
+#: tree.cc:12141
 #, gcc-internal-format
 msgid "%qE is deprecated"
 msgstr "已弃用%qE"
 
-#: tree.cc:12104
+#: tree.cc:12147
 #, gcc-internal-format, gfc-internal-format
 msgid "type is deprecated: %s"
 msgstr "已弃用类型:%s"
 
-#: tree.cc:12107
+#: tree.cc:12150
 #, gcc-internal-format
 msgid "type is deprecated"
 msgstr "已弃用此类型"
 
-#: tree.cc:12149
+#: tree.cc:12192
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a variable"
 msgid "%qD is unavailable: %s"
 msgstr "%qD不是一个变量"
 
-#: tree.cc:12151
+#: tree.cc:12194
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a variable"
 msgid "%qD is unavailable"
 msgstr "%qD不是一个变量"
 
-#: tree.cc:12172
+#: tree.cc:12215
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a variable"
 msgid "%qE is unavailable: %s"
 msgstr "%qD不是一个变量"
 
-#: tree.cc:12174
+#: tree.cc:12217
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a variable"
 msgid "%qE is unavailable"
 msgstr "%qD不是一个变量"
 
-#: tree.cc:12179
+#: tree.cc:12222
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "open %s failed: %s"
 msgid "type is unavailable: %s"
 msgstr "打开 %s 失败:%s"
 
-#: tree.cc:12181
+#: tree.cc:12224
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a variable"
 msgid "type is unavailable"
@@ -33204,237 +33319,237 @@ msgstr "%qD不是一个变量"
 #. - vector types may differ by TYPE_VECTOR_OPAQUE
 #.
 #. Convenience macro for matching individual fields.
-#: tree.cc:12994
+#: tree.cc:13037
 #, gcc-internal-format, gfc-internal-format
 msgid "type variant differs by %s"
 msgstr ""
 
-#: tree.cc:13039
+#: tree.cc:13082
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_SIZE_UNIT%>"
 msgstr ""
 
-#: tree.cc:13041
+#: tree.cc:13084
 #, gcc-internal-format
 msgid "type variant%'s %<TYPE_SIZE_UNIT%>"
 msgstr ""
 
-#: tree.cc:13043
+#: tree.cc:13086
 #, gcc-internal-format
 msgid "type%'s %<TYPE_SIZE_UNIT%>"
 msgstr ""
 
-#: tree.cc:13068
+#: tree.cc:13111
 #, gcc-internal-format
 msgid "type variant with %<TYPE_ALIAS_SET_KNOWN_P%>"
 msgstr ""
 
-#: tree.cc:13081
+#: tree.cc:13124
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_VFIELD%>"
 msgstr ""
 
-#: tree.cc:13117
+#: tree.cc:13160
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_BINFO%>"
 msgstr ""
 
-#: tree.cc:13119
+#: tree.cc:13162
 #, gcc-internal-format
 msgid "type variant%'s %<TYPE_BINFO%>"
 msgstr ""
 
-#: tree.cc:13121
+#: tree.cc:13164
 #, gcc-internal-format
 msgid "type%'s %<TYPE_BINFO%>"
 msgstr ""
 
-#: tree.cc:13160
+#: tree.cc:13203
 #, gcc-internal-format
 msgid "type variant has different %<TYPE_FIELDS%>"
 msgstr ""
 
-#: tree.cc:13162
+#: tree.cc:13205
 #, fuzzy, gcc-internal-format
 #| msgid "%s:stamp mismatch with notes file\n"
 msgid "first mismatch is field"
 msgstr "%s:时间戳与说明文件不匹配\n"
 
-#: tree.cc:13164
+#: tree.cc:13207
 #, gcc-internal-format
 msgid "and field"
 msgstr ""
 
-#: tree.cc:13181
+#: tree.cc:13224
 #, gcc-internal-format
 msgid "type variant has different %<TREE_TYPE%>"
 msgstr ""
 
-#: tree.cc:13183 tree.cc:13194
+#: tree.cc:13226 tree.cc:13237
 #, gcc-internal-format
 msgid "type variant%'s %<TREE_TYPE%>"
 msgstr ""
 
-#: tree.cc:13185 tree.cc:13196
+#: tree.cc:13228 tree.cc:13239
 #, gcc-internal-format
 msgid "type%'s %<TREE_TYPE%>"
 msgstr ""
 
-#: tree.cc:13192
+#: tree.cc:13235
 #, fuzzy, gcc-internal-format
 #| msgid "-mnop-mcount is not compatible with this target"
 msgid "type is not compatible with its variant"
 msgstr "-mnop-mcount 与此目标不兼容"
 
-#: tree.cc:13504
+#: tree.cc:13547
 #, fuzzy, gcc-internal-format
 #| msgid "environment variable %qs not defined"
 msgid "main variant is not defined"
 msgstr "环境变量%qs未定义"
 
-#: tree.cc:13509
+#: tree.cc:13552
 #, gcc-internal-format
 msgid "%<TYPE_MAIN_VARIANT%> has different %<TYPE_MAIN_VARIANT%>"
 msgstr ""
 
-#: tree.cc:13521
+#: tree.cc:13564
 #, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> has different %<TYPE_CANONICAL%>"
 msgstr ""
 
-#: tree.cc:13540
+#: tree.cc:13583
 #, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> is not compatible"
 msgstr ""
 
-#: tree.cc:13548
+#: tree.cc:13591
 #, gcc-internal-format
 msgid "%<TYPE_MODE%> of %<TYPE_CANONICAL%> is not compatible"
 msgstr ""
 
-#: tree.cc:13554
+#: tree.cc:13597
 #, gcc-internal-format
 msgid "%<TYPE_CANONICAL%> of main variant is not main variant"
 msgstr ""
 
-#: 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
 #, gcc-internal-format
 msgid "%<TYPE_NEXT_PTR_TO%> is not %<POINTER_TYPE%>"
 msgstr ""
 
-#: tree.cc:13590
+#: tree.cc:13633
 #, gcc-internal-format
 msgid "%<TYPE_NEXT_REF_TO%> is not %<REFERENCE_TYPE%>"
 msgstr ""
 
-#: tree.cc:13611
+#: tree.cc:13654
 #, gcc-internal-format
 msgid "%<TYPE_BINFO%> is not %<TREE_BINFO%>"
 msgstr ""
 
-#: tree.cc:13617
+#: tree.cc:13660
 #, gcc-internal-format
 msgid "%<TYPE_BINFO%> type is not %<TYPE_MAIN_VARIANT%>"
 msgstr ""
 
-#: tree.cc:13628
+#: tree.cc:13671
 #, gcc-internal-format
 msgid "%<TYPE_METHOD_BASETYPE%> is not record nor union"
 msgstr ""
 
-#: tree.cc:13639
+#: tree.cc:13682
 #, gcc-internal-format
 msgid "%<TYPE_OFFSET_BASETYPE%> is not record nor union"
 msgstr ""
 
-#: tree.cc:13657
+#: tree.cc:13700
 #, gcc-internal-format
 msgid "%<TYPE_ARRAY_MAX_SIZE%> not %<INTEGER_CST%>"
 msgstr ""
 
-#: tree.cc:13664
+#: tree.cc:13707
 #, gcc-internal-format
 msgid "%<TYPE_MAX_VALUE_RAW%> non-NULL"
 msgstr ""
 
-#: tree.cc:13671
+#: tree.cc:13714
 #, gcc-internal-format
 msgid "%<TYPE_LANG_SLOT_1 (binfo)%> field is non-NULL"
 msgstr ""
 
-#: 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 "size of array %qE has non-integer type"
 msgid "array %<TYPE_DOMAIN%> is not integer type"
 msgstr "数组%qE的大小的类型不是整数"
 
-#: tree.cc:13723
+#: tree.cc:13766
 #, fuzzy, gcc-internal-format
 #| msgid "field %qE has incomplete type"
 msgid "%<TYPE_FIELDS%> defined in incomplete type"
 msgstr "字段%qE的类型不完全"
 
-#: 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
 #, gcc-internal-format
 msgid "%<TYPE_VALUES_RAW%> field is non-NULL"
 msgstr ""
 
-#: 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
 #, gcc-internal-format
 msgid "%<TYPE_METHOD_BASETYPE%> is not main variant"
 msgstr ""
@@ -33576,87 +33691,87 @@ msgstr "%q+D需要的对齐边界大于实现的对齐边界 %wu"
 msgid "storage size of %q+D isn%'t known"
 msgstr "%q+D的存储大小未知"
 
-#: varasm.cc:5266
+#: varasm.cc:5269
 #, gcc-internal-format
 msgid "initializer for integer/fixed-point value is too complicated"
 msgstr "整数/定点值的初始值设定太复杂"
 
-#: varasm.cc:5271
+#: varasm.cc:5274
 #, gcc-internal-format
 msgid "initializer for floating value is not a floating constant"
 msgstr "浮点值的初始值设定不是一个浮点常量"
 
-#: varasm.cc:5616
+#: varasm.cc:5619
 #, gcc-internal-format
 msgid "invalid initial value for member %qE"
 msgstr "成员%qE的初始值无效"
 
-#: varasm.cc:5872
+#: varasm.cc:5875
 #, fuzzy, gcc-internal-format
 msgid "%qD declared weak after being used"
 msgstr "%q+D声明为友元"
 
-#: varasm.cc:5924
+#: varasm.cc:5927
 #, fuzzy, gcc-internal-format
 #| msgid "declaration of %q#D outside of class is not definition"
 msgid "weak declaration of %q+D being applied to a already existing, static definition"
 msgstr "出现在类外的%q#D的声明不是定义"
 
-#: varasm.cc:5965
+#: varasm.cc:5968
 #, gcc-internal-format
 msgid "weak declaration of %q+D must be public"
 msgstr "%q+D的弱声明必须是公共的"
 
-#: varasm.cc:5969
+#: varasm.cc:5972
 #, gcc-internal-format
 msgid "weak declaration of %q+D not supported"
 msgstr "不支持%q+D的弱声明"
 
-#: varasm.cc:5998 varasm.cc:6318
+#: varasm.cc:6001 varasm.cc:6321
 #, gcc-internal-format
 msgid "only weak aliases are supported in this configuration"
 msgstr "此配置下只支持弱别名"
 
-#: varasm.cc:6193 varasm.cc:6315
+#: varasm.cc:6196 varasm.cc:6318
 #, fuzzy, gcc-internal-format
 #| msgid "%s is not supported by this configuration"
 msgid "%qs is not supported in this configuration"
 msgstr "%s 不为这个配置所支持"
 
-#: varasm.cc:6221
+#: varasm.cc:6224
 #, fuzzy, gcc-internal-format
 msgid "%qs is not supported on this target"
 msgstr "堆栈限制在此目标机上不受支持"
 
-#: varasm.cc:6277
+#: varasm.cc:6280
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute is not supported on this platform"
 msgid "symver is only supported on ELF platforms"
 msgstr "%qE属性在此平台上不受支持"
 
-#: varasm.cc:6296
+#: varasm.cc:6299
 #, fuzzy, gcc-internal-format
 #| msgid "weakref %q+D ultimately targets itself"
 msgid "%qs symbol %q+D ultimately targets itself"
 msgstr "weakref%q+D最终指向其自身"
 
-#: varasm.cc:6298
+#: varasm.cc:6301
 #, fuzzy, gcc-internal-format
 #| msgid "weakref %q+D must have static linkage"
 msgid "%qs symbol %q+D must have static linkage"
 msgstr "弱引用%q+D必须有静态链接"
 
-#: varasm.cc:6305
+#: varasm.cc:6308 config/nvptx/nvptx.cc:7445
 #, gcc-internal-format
 msgid "alias definitions not supported in this configuration"
 msgstr "别名定义在此配置下不受支持"
 
-#: varasm.cc:6533 config/sol2.cc:160 config/i386/winnt.cc:265
+#: varasm.cc:6536 config/sol2.cc:160 config/i386/winnt.cc:265
 #, gcc-internal-format
 msgid "visibility attribute not supported in this configuration; ignored"
 msgstr "可见性属性在此配置下不受支持;已忽略"
 
-#: 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 ""
@@ -33723,7 +33838,7 @@ msgstr "将%<abs (X)%>简化为%<X%>或%<-X%>时假定有符号数从不溢出"
 msgid "no sclass for %s stab (0x%x)"
 msgstr "%s stab (0x%x)没有 sclass"
 
-#: c-family/c-ada-spec.cc:2858
+#: c-family/c-ada-spec.cc:2877
 #, fuzzy, gcc-internal-format
 #| msgid "Use packed stack layout"
 msgid "packed layout"
@@ -33753,8 +33868,8 @@ msgstr "需要类型%qT,但实参的类型为%qT"
 msgid "%qE attribute argument %i has type %qT"
 msgstr "需要类型%qT,但实参的类型为%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 not an integer constant"
 msgid "%qE attribute argument value %qE is not an integer constant"
@@ -33822,451 +33937,451 @@ msgstr "%qE属性只能用于带可变参数函数"
 msgid "%qE attribute argument %i value %qE refers to a variadic function parameter of unknown type"
 msgstr ""
 
-#: 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属性与 %s 属性冲突"
 
-#: c-family/c-attribs.cc:944
+#: c-family/c-attribs.cc:946
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute ignored on non-class types"
 msgid "%qE attribute only supported on boolean types"
 msgstr "%qE属性在不是类的类型上被忽略"
 
-#: c-family/c-attribs.cc:954
+#: c-family/c-attribs.cc:956
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute is not supported on this platform"
 msgid "%qE attribute with unsupported boolean precision"
 msgstr "%qE属性在此平台上不受支持"
 
-#: c-family/c-attribs.cc:977
+#: c-family/c-attribs.cc:979
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute ignored for %qE"
 msgid "%qE attribute ignored for type %qT"
 msgstr "%qE属性为%qE所忽略"
 
-#: 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属性为类型为%qT的字段所忽略"
 
-#: 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属性需要一个字符串常量作为实参"
 
-#: 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属性与 %s 属性冲突"
 
-#: c-family/c-attribs.cc:1371
+#: c-family/c-attribs.cc:1373
 #, gcc-internal-format
 msgid "%qE attribute ignored. Use %<-fcf-protection%> option to enable it"
 msgstr ""
 
-#: 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属性与 %s 属性冲突"
 
-#: 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 "%qE属性只能用于函数"
 
-#: 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 %qT is already defined"
 msgid "%qE attribute ignored because %qD is not a variable"
 msgstr "%qE属性被忽略,因为%qT已被定义"
 
-#: c-family/c-attribs.cc:1649
+#: c-family/c-attribs.cc:1651
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute ignored because %qT is already defined"
 msgid "%qE attribute ignored because %qD is not a local variable"
 msgstr "%qE属性被忽略,因为%qT已被定义"
 
-#: 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属性只能应用到公共对象上"
 
-#: 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只能用于变量"
 
-#: 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 "using result of function returning %<void%>"
 msgid "%qE attribute on function returning %<void%>"
 msgstr "使用返回%<void%>的函数的结果"
 
-#: c-family/c-attribs.cc:1765
+#: c-family/c-attribs.cc:1767
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute is not supported on this platform"
 msgid "%qE attribute is not supported because endianness is not uniform"
 msgstr "%qE属性在此平台上不受支持"
 
-#: 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属性需要一个字符串常量作为实参"
 
-#: c-family/c-attribs.cc:1878
+#: c-family/c-attribs.cc:1880
 #, gcc-internal-format
 msgid "destructor priorities are not supported"
 msgstr "不支持析构函数优先级"
 
-#: c-family/c-attribs.cc:1880
+#: c-family/c-attribs.cc:1882
 #, gcc-internal-format
 msgid "constructor priorities are not supported"
 msgstr "不支持构造函数优先级"
 
-#: c-family/c-attribs.cc:1902
+#: c-family/c-attribs.cc:1904
 #, gcc-internal-format, gfc-internal-format
 msgid "destructor priorities from 0 to %d are reserved for the implementation"
 msgstr "析构函数优先级 0 到 %d 为实现所保留"
 
-#: c-family/c-attribs.cc:1907
+#: c-family/c-attribs.cc:1909
 #, gcc-internal-format, gfc-internal-format
 msgid "constructor priorities from 0 to %d are reserved for the implementation"
 msgstr "构造函数优先级 0 到 %d 为实现所保留"
 
-#: c-family/c-attribs.cc:1915
+#: c-family/c-attribs.cc:1917
 #, gcc-internal-format, gfc-internal-format
 msgid "destructor priorities must be integers from 0 to %d inclusive"
 msgstr "析构函数优先级必须为 0 到 %d 间的整数"
 
-#: c-family/c-attribs.cc:1918
+#: c-family/c-attribs.cc:1920
 #, gcc-internal-format, gfc-internal-format
 msgid "constructor priorities must be integers from 0 to %d inclusive"
 msgstr "构造函数优先级必须为 0 到 %d 间的整数"
 
-#: c-family/c-attribs.cc:2071
+#: c-family/c-attribs.cc:2073
 #, gcc-internal-format
 msgid "unknown machine mode %qE"
 msgstr "未知的机器模式%qE"
 
-#: 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"
 msgid "specifying vector types with %<__attribute__ ((mode))%> is deprecated"
 msgstr "已弃用在指定向量类型时使用 __attribute__ ((mode))"
 
-#: c-family/c-attribs.cc:2108
+#: c-family/c-attribs.cc:2110
 #, fuzzy, gcc-internal-format
 #| msgid "use __attribute__ ((vector_size)) instead"
 msgid "use %<__attribute__ ((vector_size))%> instead"
 msgstr "改用 __attribute__ ((vector_size))"
 
-#: c-family/c-attribs.cc:2117
+#: c-family/c-attribs.cc:2119
 #, gcc-internal-format
 msgid "unable to emulate %qs"
 msgstr "无法枚举%qs"
 
-#: c-family/c-attribs.cc:2130
+#: c-family/c-attribs.cc:2132
 #, gcc-internal-format
 msgid "invalid pointer mode %qs"
 msgstr "无效的指针模式%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 "类型的符号与机器模式%qs不匹配"
 
-#: c-family/c-attribs.cc:2158
+#: c-family/c-attribs.cc:2160
 #, gcc-internal-format
 msgid "no data type for mode %qs"
 msgstr "没有模式为%qs的数据类型"
 
-#: c-family/c-attribs.cc:2168
+#: c-family/c-attribs.cc:2170
 #, fuzzy, gcc-internal-format
 #| msgid "cannot use mode %qs for enumeral types"
 msgid "cannot use mode %qs for enumerated types"
 msgstr "无法为枚举类型使用模式%qs"
 
-#: c-family/c-attribs.cc:2196
+#: c-family/c-attribs.cc:2198
 #, gcc-internal-format
 msgid "mode %qs applied to inappropriate type"
 msgstr "对不合适的类型应用模式%qs"
 
-#: 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
 #, gcc-internal-format
 msgid "section attributes are not supported for this target"
 msgstr "此目标机不支持节属性"
 
-#: c-family/c-attribs.cc:2227 d/d-attribs.cc:1006
+#: c-family/c-attribs.cc:2229 d/d-attribs.cc:1006
 #, gcc-internal-format
 msgid "section attribute not allowed for %q+D"
 msgstr "%q+D不能有 section 属性"
 
-#: 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 "%qE attribute argument not a string constant"
 msgid "section attribute argument not a string constant"
 msgstr "%qE属性需要一个字符串常量作为实参"
 
-#: c-family/c-attribs.cc:2242 d/d-attribs.cc:1022
+#: c-family/c-attribs.cc:2244 d/d-attribs.cc:1022
 #, gcc-internal-format
 msgid "section attribute cannot be specified for local variables"
 msgstr "不能为局部变量指定节属性"
 
-#: 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
 #, gcc-internal-format
 msgid "section of %q+D conflicts with previous declaration"
 msgstr "%q+D的节与早先的声明冲突"
 
-#: 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
 #, gcc-internal-format
 msgid "section of %q+D cannot be overridden"
 msgstr "节%q+D无法被重载"
 
-#: 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 "不能为%q+D指定对齐"
 
-#: 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 "%s 属性与 %s 属性在%L处冲突"
 
-#: c-family/c-attribs.cc:2448
+#: c-family/c-attribs.cc:2450
 #, fuzzy, gcc-internal-format
 #| msgid "alignment may not be specified for %q+D"
 msgid "%<warn_if_not_aligned%> may not be specified for %q+D"
 msgstr "不能为%q+D指定对齐"
 
-#: 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 "内联函数%q+D声明过但从未定义"
 
-#: 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 "内联函数%q+D不能声明为有弱链接"
 
-#: 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 "%qE属性只能用于函数"
 
-#: c-family/c-attribs.cc:2552 config/bfin/bfin.cc:4823
+#: c-family/c-attribs.cc:2554 config/bfin/bfin.cc:4824
 #, gcc-internal-format
 msgid "%qE attribute cannot be specified for local variables"
 msgstr "不能为局部变量指定%qE属性"
 
-#: c-family/c-attribs.cc:2567
+#: c-family/c-attribs.cc:2569
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute is not supported for R8C target"
 msgid "%qE attribute is specific to ELF targets"
 msgstr "%qE属性在 R8C 目标机上不受支持"
 
-#: 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 "%qs(有%qT)的实参类型无效"
 
-#: 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 "%qs(有%qT)的实参类型无效"
 
-#: 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 "%qs(有%qT)的实参类型无效"
 
-#: c-family/c-attribs.cc:2631
+#: c-family/c-attribs.cc:2633
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute only applies to functions"
 msgid "%qE attribute is only applicable on functions"
 msgstr "%qE属性只能用于函数"
 
-#: 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 "%qs attribute only applies to functions"
 msgid "%<symver%> attribute only applies to functions and variables"
 msgstr "%qs属性只能应用于函数"
 
-#: 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 "%qE attribute only applies to functions"
 msgid "%<symver%> attribute is only applicable to symbols"
 msgstr "%qE属性只能用于函数"
 
-#: 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 "%qE attribute argument not a string constant"
 msgid "%<symver%> attribute argument not a string constant"
 msgstr "%qE属性需要一个字符串常量作为实参"
 
-#: 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 "%qE attribute argument not an integer constant"
 msgid "%<symver%> attribute argument %qs must contain one or two %<@%>"
 msgstr "%qE属性需要一个整常量作为实参"
 
-#: 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 "%q+D既有正常定义又有别名定义"
 
-#: 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 "聚合%q#D类型不完全,无法被定义"
 
-#: 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属性需要一个字符串常量作为实参"
 
-#: c-family/c-attribs.cc:2776
+#: c-family/c-attribs.cc:2778
 #, fuzzy, gcc-internal-format
 msgid "%+qD declared %qs after being used"
 msgstr "%q+D声明为友元"
 
-#: c-family/c-attribs.cc:2826
+#: c-family/c-attribs.cc:2828
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute argument not a string constant"
 msgid "%qE attribute argument cannot be a string"
 msgstr "%qE属性需要一个字符串常量作为实参"
 
-#: c-family/c-attribs.cc:2839
+#: c-family/c-attribs.cc:2841
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute argument not a string constant"
 msgid "%qE attribute argument cannot be a constant arithmetic expression"
 msgstr "%qE属性需要一个字符串常量作为实参"
 
-#: 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 "%q+T先前在此处有过声明"
 
-#: c-family/c-attribs.cc:2905
+#: c-family/c-attribs.cc:2907
 #, fuzzy, gcc-internal-format
 #| msgid "%qE redeclared as different kind of symbol"
 msgid "%qE attribute ignored on a declaration of a different kind than referenced symbol"
 msgstr "%qE被重新声明为不同意义的符号"
 
-#: c-family/c-attribs.cc:2910
+#: c-family/c-attribs.cc:2912
 #, fuzzy, gcc-internal-format
 #| msgid "template parameter type %qT declared %<friend%>"
 msgid "symbol %qD referenced by %qD declared here"
 msgstr "模板形参类型%qT声明为%<friend%>"
 
-#: 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"
 
-#: 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 "内联函数%q+D不能声明为有弱链接"
 
-#: c-family/c-attribs.cc:3039
+#: c-family/c-attribs.cc:3041
 #, fuzzy, gcc-internal-format
 #| msgid "weakref attribute must appear before alias attribute"
 msgid "%qE attribute must appear before %qs attribute"
 msgstr "weakref 属性必须出现在 alias 属性前"
 
-#: c-family/c-attribs.cc:3052
+#: c-family/c-attribs.cc:3054
 #, fuzzy, gcc-internal-format
 msgid "%+qD declared %qE after being used"
 msgstr "%q+D声明为友元"
 
-#: 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属性在不是类的类型上被忽略"
 
-#: 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属性被忽略,因为%qT已被定义"
 
-#: c-family/c-attribs.cc:3095
+#: c-family/c-attribs.cc:3097
 #, gcc-internal-format
 msgid "visibility argument not a string"
 msgstr "visibility 的实参不是一个字符串"
 
-#: c-family/c-attribs.cc:3107
+#: c-family/c-attribs.cc:3109
 #, gcc-internal-format
 msgid "%qE attribute ignored on types"
 msgstr "%qE属性在类型上被忽略"
 
-#: 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属性需要一个字符串常量作为实参"
 
-#: c-family/c-attribs.cc:3135
+#: c-family/c-attribs.cc:3137
 #, gcc-internal-format
 msgid "%qD redeclared with different visibility"
 msgstr "%qD重声明时有不同的可见性"
 
-#: 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声明为有默认可见性的%qs"
 
-#: c-family/c-attribs.cc:3179
+#: c-family/c-attribs.cc:3181
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute ignored because %qT is already defined"
 msgid "%qE attribute ignored because %qD does not have thread storage duration"
 msgstr "%qE属性被忽略,因为%qT已被定义"
 
-#: 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属性只能用于函数"
 
-#: c-family/c-attribs.cc:3269
+#: c-family/c-attribs.cc:3271
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute ignored for %qE"
 msgid "%<%E (%E)%> attribute ignored on functions declared %qs"
 msgstr "%qE属性为%qE所忽略"
 
-#: 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属性被忽略,因为%qT已被定义"
 
-#: c-family/c-attribs.cc:3283
+#: c-family/c-attribs.cc:3285
 #, fuzzy, gcc-internal-format
 msgid "deallocation function declared here"
 msgstr "内联函数%q+D声明过但从未定义"
 
-#: c-family/c-attribs.cc:3310
+#: c-family/c-attribs.cc:3312
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute applies only to functions"
 msgid "%qE attribute ignored; valid only for functions"
 msgstr "%qE属性只能用于函数"
 
-#: c-family/c-attribs.cc:3320
+#: c-family/c-attribs.cc:3322
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute ignored for %qE"
 msgid "%qE attribute ignored on functions returning %qT; valid only for pointer return types"
@@ -34274,36 +34389,36 @@ msgstr "%qE属性为%qE所忽略"
 
 #. 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 "template argument %d is invalid"
 msgid "%qE attribute argument 1 is ambiguous"
 msgstr "模板第 %d 个参数无效"
 
-#: 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"
 
-#: c-family/c-attribs.cc:3376
+#: c-family/c-attribs.cc:3378
 #, fuzzy, gcc-internal-format
 #| msgid "template parameter type %qT declared %<friend%>"
 msgid "argument references a symbol declared here"
 msgstr "模板形参类型%qT声明为%<friend%>"
 
 #. 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 not an integer constant"
 msgid "%qE attribute argument 1 must take a pointer type as its first argument"
 msgstr "%qE属性需要一个整常量作为实参"
 
-#: 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 "template parameter type %qT declared %<friend%>"
 msgid "referenced symbol declared here"
@@ -34311,217 +34426,217 @@ msgstr "模板形参类型%qT声明为%<friend%>"
 
 #. 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属性在类型上被忽略"
 
-#: 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
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute ignored for %qE"
 msgid "%qE attribute ignored on a function returning %qT"
 msgstr "%qE属性为%qE所忽略"
 
-#: c-family/c-attribs.cc:3613
+#: c-family/c-attribs.cc:3615
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute argument not an integer constant"
 msgid "%qE attribute argument %E is not an integer constant"
 msgstr "%qE属性需要一个整常量作为实参"
 
-#: c-family/c-attribs.cc:3621
+#: c-family/c-attribs.cc:3623
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute argument not an integer constant"
 msgid "%qE attribute argument %E is not positive"
 msgstr "%qE属性需要一个整常量作为实参"
 
-#: c-family/c-attribs.cc:3632
+#: c-family/c-attribs.cc:3634
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute argument not an integer constant"
 msgid "%qE attribute argument %E is not a power of 2"
 msgstr "%qE属性需要一个整常量作为实参"
 
-#: c-family/c-attribs.cc:3645
+#: c-family/c-attribs.cc:3647
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute argument not an integer constant"
 msgid "%qE attribute argument %E is not in the range [0, %wu]"
 msgstr "%qE属性需要一个整常量作为实参"
 
-#: 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 "can%'t set %qE attribute after definition"
 msgid "cannot set %qE attribute after definition"
 msgstr "定义之后不能设定%qE属性"
 
-#: c-family/c-attribs.cc:3892
+#: c-family/c-attribs.cc:3894
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute duplicated"
 msgstr "%qE属性为%qE所忽略"
 
-#: c-family/c-attribs.cc:3894
+#: c-family/c-attribs.cc:3896
 #, fuzzy, gcc-internal-format
 msgid "%qE attribute follows %qE"
 msgstr "%qE属性为%qE所忽略"
 
-#: c-family/c-attribs.cc:3993
+#: c-family/c-attribs.cc:3995
 #, fuzzy, gcc-internal-format
 msgid "type was previously declared %qE"
 msgstr "以前在此声明过"
 
-#: 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 "%qs can only be specified for functions"
 msgid "%<transaction_safe_dynamic%> may only be specified for a virtual function"
 msgstr "只能为函数指定%qs"
 
-#: c-family/c-attribs.cc:4064
+#: c-family/c-attribs.cc:4066
 #, fuzzy, gcc-internal-format
 msgid "%qE argument not an identifier"
 msgstr "cleanup 实参不是一个标识符"
 
-#: 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而不是%qD"
 
-#: 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的参数无效"
 
-#: c-family/c-attribs.cc:4126 cp/name-lookup.cc:6026
+#: c-family/c-attribs.cc:4128 cp/name-lookup.cc:6052
 #, gcc-internal-format
 msgid "deprecated message is not a string"
 msgstr "过时消息不是一个字符串"
 
-#: 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属性为%qE所忽略"
 
-#: 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 "属性%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 not an integer constant"
 msgid "%qE attribute argument value %qE is negative"
 msgstr "%qE属性需要一个整常量作为实参"
 
-#: 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 should be between 0 to 255"
 msgid "%qE attribute argument value %qE exceeds %wu"
 msgstr "%qE属性的参数应当在 0 和 255 之间"
 
-#: 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
 #, gcc-internal-format
 msgid "zero vector size"
 msgstr "向量大小为 0"
 
-#: 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 "向量中分量数不是 2 的某次方"
 
-#: 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 ignored on non-class types"
 msgid "%qE attribute only supported on non-mask vector types"
 msgstr "%qE属性在不是类的类型上被忽略"
 
-#: c-family/c-attribs.cc:4478
+#: c-family/c-attribs.cc:4480
 #, fuzzy, gcc-internal-format
 #| msgid "nonnull attribute without arguments on a non-prototype"
 msgid "%qE attribute without arguments on a non-prototype"
 msgstr "非空的属性在非原型中没有实参"
 
-#: c-family/c-attribs.cc:4535
+#: c-family/c-attribs.cc:4537
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute ignored for field of type %qT"
 msgid "%qE attribute ignored on objects of type %qT"
 msgstr "%qE属性为类型为%qT的字段所忽略"
 
-#: 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"
 
-#: 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的属性必须跟在%qs关键字后面"
 
-#: c-family/c-attribs.cc:4726
+#: c-family/c-attribs.cc:4728
 #, gcc-internal-format
 msgid "attribute %qs missing positional argument 2 provided in previous designation by argument %u"
 msgstr ""
 
-#: c-family/c-attribs.cc:4732
+#: c-family/c-attribs.cc:4734
 #, gcc-internal-format
 msgid "attribute %qs positional argument 2 missing in previous designation"
 msgstr ""
 
-#: 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 "%q+D的数据区域与先前的声明冲突"
 
-#: 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 "ISO C90 forbids variable length array"
 msgid "designating the bound of variable length array argument %u"
 msgstr "ISO C90 不允许变长数组"
 
-#: c-family/c-attribs.cc:4851
+#: c-family/c-attribs.cc:4853
 #, fuzzy, gcc-internal-format
 #| msgid "nonnull attribute without arguments on a non-prototype"
 msgid "attribute %qE without arguments on a non-prototype"
 msgstr "非空的属性在非原型中没有实参"
 
-#: c-family/c-attribs.cc:4901
+#: c-family/c-attribs.cc:4903
 #, fuzzy, gcc-internal-format
 msgid "attribute %qE invalid mode"
 msgstr "忽略%qs属性"
 
-#: c-family/c-attribs.cc:4910
+#: c-family/c-attribs.cc:4912
 #, gcc-internal-format
 msgid "attribute %qE mode %qE is not an identifier; expected one of %qs, %qs, %qs, or %qs"
 msgstr ""
 
-#: c-family/c-attribs.cc:4938
+#: c-family/c-attribs.cc:4940
 #, gcc-internal-format
 msgid "attribute %qE invalid mode %qs; expected one of %qs, %qs, %qs, or %qs"
 msgstr ""
 
-#: 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 ""
@@ -34530,202 +34645,202 @@ 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 "%s 只接受 2 个参数"
 
-#: 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 "template argument %d is invalid"
 msgid "attribute %qs positional argument %i invalid value %wi"
 msgstr "模板第 %d 个参数无效"
 
-#: c-family/c-attribs.cc:5035
+#: c-family/c-attribs.cc:5037
 #, fuzzy, gcc-internal-format
 #| msgid "default arguments are only permitted for function parameters"
 msgid "attribute %qs positional argument %i value %wi exceeds number of function arguments %u"
 msgstr "默认参数只允许出现在函数参数中"
 
-#: c-family/c-attribs.cc:5042
+#: c-family/c-attribs.cc:5044
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute requires a string constant argument"
 msgid "attribute %qs invalid positional argument"
 msgstr "%qE属性需要一个字符串常量作为实参"
 
 #. 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 "nonnull argument references non-pointer operand (argument %lu, operand %lu)"
 msgid "attribute %qs positional argument 1 references non-pointer argument type %qT"
 msgstr "非空的实参 %lu 引用了非指针操作数 %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 "%qE属性在类型上被忽略"
 
-#: c-family/c-attribs.cc:5092
+#: c-family/c-attribs.cc:5094
 #, fuzzy, gcc-internal-format
 #| msgid "nonnull argument references non-pointer operand (argument %lu, operand %lu)"
 msgid "attribute %qs positional argument 2 references non-integer argument type %qT"
 msgstr "非空的实参 %lu 引用了非指针操作数 %lu"
 
-#: c-family/c-attribs.cc:5324
+#: c-family/c-attribs.cc:5326
 #, gcc-internal-format
 msgid "cleanup argument not an identifier"
 msgstr "cleanup 实参不是一个标识符"
 
-#: c-family/c-attribs.cc:5331
+#: c-family/c-attribs.cc:5333
 #, gcc-internal-format
 msgid "cleanup argument not a function"
 msgstr "cleanup 实参不是一个函数"
 
-#: 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属性需要带有名实参的原型"
 
-#: 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属性只能用于带可变参数函数"
 
-#: 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 "要求的位置不是一个整数常量"
 
-#: 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 "要求的位置小于 0"
 
-#: 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 "嵌套函数在此目标机上不受支持"
 
 #. 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
 #, gcc-internal-format
 msgid "%qE attribute argument not a string constant"
 msgstr "%qE属性需要一个字符串常量作为实参"
 
-#: 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 address"
 msgid "unrecognized %qE attribute argument %qs"
 msgstr "无法识别的地址"
 
-#: 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%>不带返回值"
 
-#: 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属性只能用于函数类型"
 
-#: c-family/c-attribs.cc:5701
+#: c-family/c-attribs.cc:5709
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute argument not an integer constant"
 msgid "%qE attribute argument %qE is not an integer constant"
 msgstr "%qE属性需要一个整常量作为实参"
 
-#: c-family/c-attribs.cc:5710
+#: c-family/c-attribs.cc:5718
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute argument should be between 0 to 255"
 msgid "%qE attribute argument %qE exceeds %u"
 msgstr "%qE属性的参数应当在 0 和 255 之间"
 
-#: 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 "类型在非前向声明的详尽类型限定符中被忽略"
 
-#: c-family/c-attribs.cc:5744
+#: c-family/c-attribs.cc:5752
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute ignored on types"
 msgid "%qE attribute is for pointer types only"
 msgstr "%qE属性在类型上被忽略"
 
-#: c-family/c-attribs.cc:5763
+#: c-family/c-attribs.cc:5771
 #, fuzzy, gcc-internal-format
 #| msgid "%qE is not an Objective-C class name or alias"
 msgid "%qE is only applicable to Objective-C class interfaces, attribute ignored"
 msgstr "%qE不是一个 Objective-C 类名或别名"
 
-#: 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 "%qE属性在不是类的类型上被忽略"
 
-#: c-family/c-attribs.cc:5799
+#: c-family/c-attribs.cc:5807
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute argument not an integer constant"
 msgid "%qE attribute argument %qE is not an integer constant between 0 and 3"
 msgstr "%qE属性需要一个整常量作为实参"
 
-#: c-family/c-attribs.cc:5811
+#: c-family/c-attribs.cc:5819
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute argument not an integer constant"
 msgid "%qE attribute argument %qE is not recognised"
 msgstr "%qE属性需要一个整常量作为实参"
 
-#: c-family/c-attribs.cc:5826
+#: c-family/c-attribs.cc:5834
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute only applies to function types"
 msgid "%qE attribute ignored; valid only for functions and function pointer fields"
 msgstr "%qE属性只能用于函数类型"
 
-#: c-family/c-attribs.cc:5837
+#: c-family/c-attribs.cc:5845
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute only applies to function types"
 msgid "%qE attribute ignored; field must be a function pointer"
 msgstr "%qE属性只能用于函数类型"
 
-#: c-family/c-attribs.cc:5861
+#: c-family/c-attribs.cc:5869
 #, fuzzy, gcc-internal-format
 msgid "unknown attribute %qE"
 msgstr "不能设置只读属性"
 
-#: c-family/c-attribs.cc:5888
+#: c-family/c-attribs.cc:5896
 #, fuzzy, gcc-internal-format
 #| msgid "invalid abstract type %qT for %qE"
 msgid "invalid operand type %qT for %qs"
 msgstr "抽象类型%qT无效,对于%qE无效"
 
-#: c-family/c-attribs.cc:5992
+#: c-family/c-attribs.cc:6000
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute is not supported for R8C target"
 msgid "%qs attribute not supported for %qT in %<__builtin_has_attribute%>"
 msgstr "%qE属性在 R8C 目标机上不受支持"
 
-#: c-family/c-attribs.cc:5994
+#: c-family/c-attribs.cc:6002
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute is not supported for R8C target"
 msgid "%qs attribute not supported for %qE in %<__builtin_has_attribute%>"
 msgstr "%qE属性在 R8C 目标机上不受支持"
 
-#: c-family/c-attribs.cc:6171
+#: c-family/c-attribs.cc:6179
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute is not supported on this platform"
 msgid "%qs attribute not supported in %<__builtin_has_attribute%>"
@@ -34848,513 +34963,513 @@ msgstr "由于数据类型范围限制,比较结果永远为假"
 msgid "comparison is always true due to limited range of data type"
 msgstr "由于数据类型范围限制,比较结果永远为真"
 
-#: c-family/c-common.cc:3247
+#: c-family/c-common.cc:3251
 #, fuzzy, gcc-internal-format
 #| msgid "comparison of unsigned expression >= 0 is always true"
 msgid "comparison of unsigned expression in %<>= 0%> is always true"
 msgstr "无符号表达式永远大于或等于 0"
 
-#: c-family/c-common.cc:3255
+#: c-family/c-common.cc:3259
 #, fuzzy, gcc-internal-format
 #| msgid "comparison of unsigned expression < 0 is always false"
 msgid "comparison of unsigned expression in %<< 0%> is always false"
 msgstr "无符号表达式永远不小于 0"
 
-#: 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 *%>型指针用在了算术表达式中"
 
-#: c-family/c-common.cc:3308
+#: c-family/c-common.cc:3312
 #, gcc-internal-format
 msgid "pointer to a function used in arithmetic"
 msgstr "在算术表达式中使用了函数指针"
 
-#: c-family/c-common.cc:3525
+#: c-family/c-common.cc:3529
 #, fuzzy, gcc-internal-format
 #| msgid "enum constant defined here"
 msgid "enum constant in boolean context"
 msgstr "枚举常量在此定义"
 
-#: 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的地址总是等价为%<true%>"
 
-#: c-family/c-common.cc:3600
+#: c-family/c-common.cc:3604
 #, gcc-internal-format
 msgid "%<*%> in boolean context, suggest %<&&%> instead"
 msgstr ""
 
-#: c-family/c-common.cc:3612
+#: c-family/c-common.cc:3616
 #, fuzzy, gcc-internal-format
 #| msgid "%<::%D%> has not been declared"
 msgid "%<<<%> in boolean context, did you mean %<<%>?"
 msgstr "%<::%D%>未被声明"
 
-#: c-family/c-common.cc:3628
+#: c-family/c-common.cc:3632
 #, fuzzy, gcc-internal-format
 #| msgid "the address of %qD will always evaluate as %<true%>"
 msgid "%<?:%> using integer constants in boolean context, the expression will always evaluate to %<true%>"
 msgstr "%qD的地址总是等价为%<true%>"
 
-#: c-family/c-common.cc:3637
+#: c-family/c-common.cc:3641
 #, fuzzy, gcc-internal-format
 #| msgid "enum constant defined here"
 msgid "%<?:%> using integer constants in boolean context"
 msgstr "枚举常量在此定义"
 
-#: c-family/c-common.cc:3673
+#: c-family/c-common.cc:3677
 #, fuzzy, gcc-internal-format
 #| msgid "the address of %qD will always evaluate as %<true%>"
 msgid "the compiler can assume that the address of %qD will always evaluate to %<true%>"
 msgstr "%qD的地址总是等价为%<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 "建议在用作真值的赋值语句前后加上括号"
 
-#: 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 "错误地使用了%<restrict%>"
 
-#: 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 "%<sizeof%>不能用于函数类型"
 
-#: 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++ 不允许对非类型使用%<alignof%>"
 
-#: 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++ 不允许对非类型使用%<alignof%>"
 
-#: 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 "%qs不能用于 void 类型"
 
-#: 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 "%qs不能用于 void 类型"
 
-#: 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 "%qs不能用于不完全的类型%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%>用于位段"
 
-#: 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%>的第一个参数的类型不是%<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 "无法禁用内建函数%qs"
 
-#: c-family/c-common.cc:5072
+#: c-family/c-common.cc:5076
 #, gcc-internal-format
 msgid "pointers are not permitted as case values"
 msgstr "指针不能用作 case 常量"
 
-#: 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 "在 switch 语句中使用范围表达式不符合标准"
 
-#: c-family/c-common.cc:5107
+#: c-family/c-common.cc:5111
 #, gcc-internal-format
 msgid "empty range specified"
 msgstr "指定范围为空"
 
-#: c-family/c-common.cc:5159
+#: c-family/c-common.cc:5163
 #, gcc-internal-format
 msgid "duplicate (or overlapping) case value"
 msgstr "重复 (或重叠) 的 case 值"
 
-#: 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 "这是重叠此值的第一个条目"
 
-#: c-family/c-common.cc:5165
+#: c-family/c-common.cc:5169
 #, gcc-internal-format
 msgid "duplicate case value"
 msgstr "重复的 case 常量"
 
-#: 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 "已在这里使用过"
 
-#: c-family/c-common.cc:5170
+#: c-family/c-common.cc:5174
 #, gcc-internal-format
 msgid "multiple default labels in one switch"
 msgstr "单个 switch 语句中出现了多个 default 标号"
 
-#: c-family/c-common.cc:5172
+#: c-family/c-common.cc:5176
 #, gcc-internal-format
 msgid "this is the first default label"
 msgstr "这是第一个默认标号"
 
-#: 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 "取标号的地址不符合标准"
 
-#: 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 "要求的位置不是一个整数常量"
 
-#: 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 "要求的对齐边界不是 2 的某次方"
 
-#: 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 "%q+D的大小超过 %wd 字节"
 
-#: c-family/c-common.cc:5498
+#: c-family/c-common.cc:5502
 #, fuzzy, gcc-internal-format
 msgid "requested alignment %qE exceeds maximum %u"
 msgstr "%q+D的大小超过 %wd 字节"
 
-#: c-family/c-common.cc:5673
+#: c-family/c-common.cc:5677
 #, gcc-internal-format
 msgid "not enough variable arguments to fit a sentinel"
 msgstr "变量实参太少,不足以填满一个哨兵"
 
-#: c-family/c-common.cc:5687
+#: c-family/c-common.cc:5691
 #, gcc-internal-format
 msgid "missing sentinel in function call"
 msgstr "函数调用中缺少哨兵"
 
-#: 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 %s to pragma attribute"
 msgid "bad option %qs to attribute %<optimize%>"
 msgstr "pragma 属性选项 %s 无效"
 
-#: 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 %s to pragma attribute"
 msgid "bad option %qs to pragma %<optimize%>"
 msgstr "pragma 属性选项 %s 无效"
 
-#: c-family/c-common.cc:6016
+#: c-family/c-common.cc:6020
 #, fuzzy, gcc-internal-format
 msgid "attribute %<fallthrough%> specified multiple times"
 msgstr "只能为类定义应用%qE属性"
 
-#: c-family/c-common.cc:6020
+#: c-family/c-common.cc:6024
 #, fuzzy, gcc-internal-format
 #| msgid "default argument specified for lambda parameter"
 msgid "%<fallthrough%> attribute specified with a parameter"
 msgstr "为 lambda 形参指定了默认参数"
 
-#: 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 "提供给函数%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 "提供给函数%qE的实参太多"
 
-#: c-family/c-common.cc:6247
+#: c-family/c-common.cc:6251
 #, fuzzy, gcc-internal-format
 #| msgid "third argument to %<__builtin_prefetch%> must be a constant"
 msgid "third argument to function %qE must be a constant integer"
 msgstr "%<__builtin_prefetch%>的第三个实参必须是一个常量"
 
-#: c-family/c-common.cc:6272
+#: c-family/c-common.cc:6276
 #, gcc-internal-format
 msgid "second argument to function %qE must be a constant integer power of 2 between %qi and %qu bits"
 msgstr ""
 
-#: c-family/c-common.cc: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 "给予函数%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 "给予函数%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 "给予函数%2$qE的参数%1$u不是整型常量"
 
-#: 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 "给予函数%2$qE的参数%1$u不是整型常量"
 
-#: 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 "数组 new 的大小必须有整数类型"
 
-#: 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 "%K%D 的第一个实参必须是一个指针,第二个必须是整常量"
 
-#: 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 "%K%D 的第一个实参必须是一个指针,第二个必须是整常量"
 
-#: 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 "%K%D 的第一个实参必须是一个指针,第二个必须是整常量"
 
-#: 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 "%K%D 的第一个实参必须是一个指针,第二个必须是整常量"
 
-#: 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 "数组 new 的大小必须有整数类型"
 
-#: 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 "数组 new 的大小必须有整数类型"
 
-#: 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 "数组 new 的大小必须有整数类型"
 
-#: 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 "%K%D 的第一个实参必须是一个指针,第二个必须是整常量"
 
-#: c-family/c-common.cc:6713
+#: c-family/c-common.cc:6717
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to static data member %qD"
 msgstr "不能对静态数据成员%qD取%<offsetof%>"
 
-#: c-family/c-common.cc:6718
+#: c-family/c-common.cc:6722
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> when %<operator[]%> is overloaded"
 msgstr "%<operator[]%>重载后便不能使用%<offsetof%>"
 
-#: c-family/c-common.cc:6725
+#: c-family/c-common.cc:6729
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to a non constant address"
 msgstr "不能为非常量地址应用%<offsetof%>"
 
-#: c-family/c-common.cc:6738
+#: c-family/c-common.cc:6742
 #, gcc-internal-format
 msgid "attempt to take address of bit-field structure member %qD"
 msgstr "试图取位段结构成员%qD的地址"
 
-#: 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 "索引 %E 指定了一个大于%qT大小的偏移量"
 
-#: c-family/c-common.cc:6952
+#: c-family/c-common.cc:6956
 #, gcc-internal-format
 msgid "size of array is too large"
 msgstr "数组太大"
 
-#: 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 "incompatible type for argument %d of %qE"
 msgid "operand type %qT is incompatible with argument %d of %qE"
 msgstr "%2$qE的第 %1$d 个实参类型不兼容"
 
-#: c-family/c-common.cc:7100
+#: c-family/c-common.cc:7104
 #, fuzzy, gcc-internal-format
 #| msgid "passing argument %d of %qE makes pointer from integer without a cast"
 msgid "expecting argument of type pointer or of type integer for argument 1"
 msgstr "传递%2$qE的第 %1$d 个参数时将整数赋给指针,未作类型转换"
 
-#: c-family/c-common.cc:7116
+#: c-family/c-common.cc:7120
 #, fuzzy, gcc-internal-format
 #| msgid "left argument must be a slice"
 msgid "both arguments must be compatible"
 msgstr "左实参必须是一个切片"
 
-#: 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 "提供给函数%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 "%2$qE的实参 %1$d 必须是地址"
 
-#: 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 "%K%D 的第一个实参必须是一个指针,第二个必须是整常量"
 
-#: 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 "%K%D 的第一个实参必须是一个指针,第二个必须是整常量"
 
-#: 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 "%K%D 的第一个实参必须是一个指针,第二个必须是整常量"
 
-#: 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 "%2$qE的实参 %1$d 必须是地址"
 
-#: 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 "%K%D 的第一个实参必须是一个指针,第二个必须是整常量"
 
-#: 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 "%2$qE的实参 %1$d 必须是地址"
 
-#: 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 "%2$qE的第 %1$d 个参数必须是在 %3$d 和 %4$d 之间"
 
-#: 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 "%K%D 的第一个实参必须是一个指针,第二个必须是整常量"
 
-#: 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 "传递%2$qE的第 %1$d 个实参时丢弃了指针目标类型的限定"
 
-#: 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 "%K%D 的第一个实参必须是一个指针,第二个必须是整常量"
 
-#: 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 "传递%2$qE的第 %1$d 个实参时丢弃了指针目标类型的限定"
 
-#: 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 "%2$qE的第 %1$d 个实参类型不兼容"
 
-#: 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 "%2$qE的第 %1$d 个实参类型不兼容"
 
-#: 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
 #, gcc-internal-format
 msgid "index value is out of bound"
 msgstr "索引值越界"
 
-#: 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 "从%qT到%qT的转换有歧义"
 
 #. 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 %qD takes one argument only"
 msgid "built-in function %qE must be directly called"
 msgstr "内建函数%qD只需要一个实参"
 
-#: c-family/c-common.cc:8725
+#: c-family/c-common.cc:8729
 #, fuzzy, gcc-internal-format
 #| msgid "size of array %qD is not an integral constant-expression"
 msgid "size of array %qE is not a constant expression"
 msgstr "数组%qD的大小不是一个整数常表达式"
 
-#: c-family/c-common.cc:8728
+#: c-family/c-common.cc:8732
 #, fuzzy, gcc-internal-format
 #| msgid "size of array is not an integral constant-expression"
 msgid "size of array is not a constant expression"
 msgstr "数组大小不是一个整数常表达式"
 
-#: c-family/c-common.cc:8732
+#: c-family/c-common.cc:8736
 #, fuzzy, gcc-internal-format
 #| msgid "size of array %qE is negative"
 msgid "size %qE of array %qE is negative"
 msgstr "数组%qE的大小为负"
 
-#: c-family/c-common.cc:8735
+#: c-family/c-common.cc:8739
 #, fuzzy, gcc-internal-format
 #| msgid "size of array is negative"
 msgid "size %qE of array is negative"
 msgstr "数组大小为负数"
 
-#: c-family/c-common.cc:8740
+#: c-family/c-common.cc:8744
 #, gcc-internal-format
 msgid "size %qE of array %qE exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.cc:8743
+#: c-family/c-common.cc:8747
 #, gcc-internal-format
 msgid "size %qE of array exceeds maximum object size %qE"
 msgstr ""
 
-#: c-family/c-common.cc:8748
+#: c-family/c-common.cc:8752
 #, fuzzy, gcc-internal-format
 #| msgid "size of array %qE is negative"
 msgid "size of array %qE exceeds maximum object size %qE"
 msgstr "数组%qE的大小为负"
 
-#: c-family/c-common.cc:8751
+#: c-family/c-common.cc:8755
 #, gcc-internal-format
 msgid "size of array exceeds maximum object size %qE"
 msgstr ""
 
-#: 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 ""
@@ -36063,7 +36178,7 @@ msgstr "不受支持的非标准字面字符串毗连"
 msgid "traditional C rejects string constant concatenation"
 msgstr "传统 C 不接受字符串常量毗连"
 
-#: 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 ""
@@ -36084,153 +36199,153 @@ msgstr "%<#pragma omp atomic%>表达式类型无效"
 msgid "%<#pragma omp atomic compare capture%> with non-integral comparison result"
 msgstr "%<# pragma omp 基元的 capture%>使用两不同的变量用于内存"
 
-#: 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 "%<# pragma omp 基元的 update%>使用两不同的变量用于内存"
 
-#: 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 "%<# pragma omp 基元的 capture%>使用两不同的变量用于内存"
 
-#: c-family/c-omp.cc:695
+#: c-family/c-omp.cc:700
 #, gcc-internal-format
 msgid "type of %<depobj%> expression is not %<omp_depend_t%>"
 msgstr ""
 
-#: 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
 #, gcc-internal-format
 msgid "more than one locator in %<depend%> clause on %<depobj%> construct"
 msgstr ""
 
-#: c-family/c-omp.cc:723
+#: c-family/c-omp.cc:728
 #, gcc-internal-format
 msgid "%<depobj%> dependence type specified in %<depend%> clause on %<depobj%> construct"
 msgstr ""
 
-#: c-family/c-omp.cc:745
+#: c-family/c-omp.cc:750
 #, fuzzy, gcc-internal-format
 #| msgid "%<void%> as only parameter may not be qualified"
 msgid "%<iterator%> modifier may not be specified on %<depobj%> construct"
 msgstr "%<void%>作为仅有的参数时不能被限定"
 
-#: 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 "迭代变量%qE类型无效"
 
-#: c-family/c-omp.cc:964
+#: c-family/c-omp.cc:969
 #, fuzzy, gcc-internal-format
 #| msgid "invalid type for iteration variable %qE"
 msgid "%<_Atomic%> iteration variable %qE"
 msgstr "迭代变量%qE类型无效"
 
-#: c-family/c-omp.cc:980
+#: c-family/c-omp.cc:985
 #, gcc-internal-format
 msgid "%qE is not initialized"
 msgstr "%qE未经初始化"
 
-#: c-family/c-omp.cc:1001 cp/semantics.cc:10345
+#: c-family/c-omp.cc:1006 cp/semantics.cc:10336
 #, gcc-internal-format
 msgid "missing controlling predicate"
 msgstr "缺少控制谓词"
 
-#: c-family/c-omp.cc:1107 cp/semantics.cc:9961
+#: c-family/c-omp.cc:1112 cp/semantics.cc:9952
 #, gcc-internal-format
 msgid "invalid controlling predicate"
 msgstr "无效的控制谓词"
 
-#: 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 "缺少自增语句"
 
-#: 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 "无效的自增语句"
 
-#: c-family/c-omp.cc:1342
+#: c-family/c-omp.cc:1347
 #, fuzzy, gcc-internal-format
 #| msgid "invalid type for iteration variable %qE"
 msgid "initializer expression refers to iteration variable %qD"
 msgstr "迭代变量%qE类型无效"
 
-#: c-family/c-omp.cc:1346
+#: c-family/c-omp.cc:1351
 #, fuzzy, gcc-internal-format
 #| msgid "invalid type for iteration variable %qE"
 msgid "condition expression refers to iteration variable %qD"
 msgstr "迭代变量%qE类型无效"
 
-#: c-family/c-omp.cc:1350
+#: c-family/c-omp.cc:1355
 #, fuzzy, gcc-internal-format
 #| msgid "increment of read-only variable %qD"
 msgid "increment expression refers to iteration variable %qD"
 msgstr "令只读变量%qD自增"
 
-#: 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 "%L处 !$OMP DO 迭代变量出现在非 PRIVATE 或 LASTPRIVATE 分句中"
 
-#: 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 "%L处 !$OMP DO 迭代变量出现在非 PRIVATE 或 LASTPRIVATE 分句中"
 
-#: 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 "iterating variable in fast enumeration is not an object"
 msgid "outer iteration variable %qD addend expression %qE is not integral"
 msgstr "快速枚举中的迭代变量不是对象"
 
-#: 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 "嵌套函数中使用了寄存器变量%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
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a function argument"
 msgstr "  初始化%2$qD的实参 %1$P"
@@ -36305,87 +36420,87 @@ msgstr "-Wformat-contains-nul 未与 -Wformat 一起使用,已忽略"
 msgid "%<-Wformat-security%> ignored without %<-Wformat%>"
 msgstr "-Wformat-security 未与 -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 "不支持 -falign-loops=%d"
 
-#: c-family/c-opts.cc:999
+#: c-family/c-opts.cc:1001
 #, gcc-internal-format
 msgid "%<-Wabi%> won%'t warn about anything"
 msgstr ""
 
-#: c-family/c-opts.cc:1001
+#: c-family/c-opts.cc:1003
 #, gcc-internal-format
 msgid "%<-Wabi%> warns about differences from the most up-to-date ABI, which is also used by default"
 msgstr ""
 
-#: c-family/c-opts.cc:1004
+#: c-family/c-opts.cc:1006
 #, gcc-internal-format
 msgid "use e.g. %<-Wabi=11%> to warn about changes from GCC 7"
 msgstr ""
 
-#: 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 "嵌套函数在此目标机上不受支持"
 
-#: c-family/c-opts.cc:1098
+#: c-family/c-opts.cc:1100
 #, fuzzy, gcc-internal-format
 #| msgid "too many filenames given.  Type %s --help for usage"
 msgid "too many filenames given; type %<%s %s%> for usage"
 msgstr "给定了太多文件名。试用 %s --help 以了解用法"
 
-#: c-family/c-opts.cc:1112
+#: c-family/c-opts.cc:1114
 #, gcc-internal-format
 msgid "opening output file %s: %m"
 msgstr "打开输出文件 %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 "打开依赖文件 %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 "关闭依赖文件 %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 "当写入输出到 %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"
 msgid "to generate dependencies you must specify either %<-M%> or %<-MM%>"
 msgstr "要生成依赖项,您必须指定 -M 或 -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"
 msgid "%<-MG%> may only be used with %<-M%> or %<-MM%>"
 msgstr "-MG 只能与 -M 或 -MM 一起使用"
 
-#: c-family/c-opts.cc:1443
+#: c-family/c-opts.cc:1445
 #, fuzzy, gcc-internal-format
 #| msgid "-fdirectives-only is incompatible with -Wunused_macros"
 msgid "%<-fdirectives-only%> is incompatible with %<-Wunused-macros%>"
 msgstr "-fdirectives-only 与 -Wunused_macros 不兼容"
 
-#: c-family/c-opts.cc:1446
+#: c-family/c-opts.cc:1448
 #, fuzzy, gcc-internal-format
 #| msgid "-fdirectives-only is incompatible with -traditional"
 msgid "%<-fdirectives-only%> is incompatible with %<-traditional%>"
 msgstr "-fdirectives-only 与 -traditional 不兼容"
 
-#: 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 "使用 # 指示设定调试目录太迟"
@@ -36773,42 +36888,42 @@ msgstr "%<#pragma STDC FLOAT_CONST_DECIMAL64%>在此目标机上不受支持"
 msgid "ISO C does not support %<#pragma STDC FLOAT_CONST_DECIMAL64%>"
 msgstr "ISO C 不支持%<#pragma STDC FLOAT_CONST_DECIMAL64%>"
 
-#: c-family/c-pretty-print.cc:339
+#: c-family/c-pretty-print.cc:340
 #, gcc-internal-format
 msgid "<type-error>"
 msgstr "<类型错误>"
 
-#: c-family/c-pretty-print.cc:382
+#: c-family/c-pretty-print.cc:383
 #, gcc-internal-format
 msgid "<unnamed-unsigned:"
 msgstr "<无名无符号:"
 
-#: c-family/c-pretty-print.cc:386
+#: c-family/c-pretty-print.cc:387
 #, gcc-internal-format
 msgid "<unnamed-float:"
 msgstr "<无名浮点数:"
 
-#: c-family/c-pretty-print.cc:389
+#: c-family/c-pretty-print.cc:390
 #, gcc-internal-format
 msgid "<unnamed-fixed:"
 msgstr "<无名定点数:"
 
-#: c-family/c-pretty-print.cc:404
+#: c-family/c-pretty-print.cc:405
 #, gcc-internal-format
 msgid "<typedef-error>"
 msgstr "<typedef 错误>"
 
-#: c-family/c-pretty-print.cc:419
+#: c-family/c-pretty-print.cc:420
 #, gcc-internal-format
 msgid "<tag-error>"
 msgstr "<tag 错误>"
 
-#: c-family/c-pretty-print.cc:1309
+#: c-family/c-pretty-print.cc:1310
 #, gcc-internal-format
 msgid "<erroneous-expression>"
 msgstr "<错误表达式>"
 
-#: 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 "<返回值>"
@@ -36819,7 +36934,7 @@ msgid "wrong type argument to %s"
 msgstr "不能对该类型的参数求绝对值"
 
 #: 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 "常量表达式溢出"
@@ -37798,7 +37913,7 @@ msgstr "输入文件太多"
 msgid "%qs is defined in header %qs; did you forget to %<#include %s%>?"
 msgstr ""
 
-#: 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"
 msgid "unknown value %qs for %<-mcpu%>"
@@ -37832,15 +37947,15 @@ msgid "unrecognized option passed to %%:%<target_mode_check%>"
 msgstr "无法识别的选项"
 
 #: common/config/arm/arm-common.cc:378 common/config/arm/arm-common.cc:442
-#: common/config/arm/arm-common.cc:489 config/aarch64/aarch64.cc:16785
-#: config/aarch64/aarch64.cc:16823
+#: common/config/arm/arm-common.cc:489 config/aarch64/aarch64.cc:17730
+#: config/aarch64/aarch64.cc:17768
 #, fuzzy, gcc-internal-format
 msgid "valid arguments are: %s; did you mean %qs?"
 msgstr "%qs对%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
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "valid arguments are: %s"
 msgstr "%qs对%qs而言无效"
@@ -38003,69 +38118,69 @@ msgstr "-mregparm=%d 不在 0 和 %d 之间"
 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
 #, gcc-internal-format
 msgid "%<-march=%s%>: extension %qs appear more than one time"
 msgstr ""
 
-#: 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 "%<-march=%s%>与所选 ABI 不兼容"
 
-#: 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
 #, gcc-internal-format
 msgid "%<-march=%s%>: rv%de is not a valid base ISA"
 msgstr ""
 
-#: 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
 #, gcc-internal-format
 msgid "%<-march=%s%>: unsupported ISA subset %<%c%>"
 msgstr ""
 
-#: 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%> is not compatible with the selected ABI"
 msgid "%<-march=%s%>: name of %s must be more than 1 letter"
 msgstr "%<-march=%s%>与所选 ABI 不兼容"
 
-#: common/config/riscv/riscv-common.cc:919
+#: common/config/riscv/riscv-common.cc:977
 #, fuzzy, gcc-internal-format
 #| msgid "%<-march=%s%> is not compatible with the selected ABI"
 msgid "%<-march=%s%>: %s must separate with %<_%>"
 msgstr "%<-march=%s%>与所选 ABI 不兼容"
 
-#: common/config/riscv/riscv-common.cc:948
+#: common/config/riscv/riscv-common.cc:1006
 #, gcc-internal-format
 msgid "%<-march=%s%>: ISA string must begin with rv32 or rv64"
 msgstr ""
 
-#: 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 "%<-march=%s%>与所选 ABI 不兼容"
 
-#: 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%s:未知的主机。\n"
@@ -38081,7 +38196,12 @@ msgstr "未知的 -mdebug-%s 开关"
 msgid "unknown switch %<-mlong-double-%s%>"
 msgstr "未知的 -mdebug-%s 开关"
 
-#: common/config/rs6000/rs6000-common.cc:258
+#: common/config/rs6000/rs6000-common.cc:234
+#, fuzzy, gcc-internal-format
+msgid "option %<%s%> requires %<-mlong-double-128%>"
+msgstr "未知的 -mdebug-%s 开关"
+
+#: common/config/rs6000/rs6000-common.cc:268
 #, fuzzy, gcc-internal-format
 #| msgid "%<-fsplit-stack%> currently only supported on GNU/Linux"
 msgid "%<-fsplit-stack%> currently only supported on PowerPC64 GNU/Linux with glibc-2.18 or later"
@@ -38338,9 +38458,9 @@ msgstr "CFString 字面量里有 %s"
 
 #: config/host-darwin.cc:107
 #, fuzzy, gcc-internal-format
-#| msgid "function body not available"
-msgid "PCH memory not available %m"
-msgstr "函数体不可用"
+#| msgid "%qD is not a variable"
+msgid "PCH memory is not available: %m"
+msgstr "%qD不是一个变量"
 
 #: config/sol2-c.cc:91 config/sol2-c.cc:107
 #, gcc-internal-format
@@ -38409,12 +38529,12 @@ msgid "PIC is only supported for RTPs"
 msgstr "PIC 只在 RTP 上受支持"
 
 #: 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 "实参必须是常数"
 
-#: 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 "掩码必须是一个立即数"
@@ -38851,368 +38971,382 @@ msgstr "无法为有抽象类型%qT的对象分配内存"
 msgid "capture by copy of SVE type %qT"
 msgstr "向 void 的类型转换不会访问具有不完全类型%qT的对象"
 
-#: config/aarch64/aarch64.cc:2190
+#: config/aarch64/aarch64.cc:2735
 #, fuzzy, gcc-internal-format
 #| msgid "new cannot be applied to a function type"
 msgid "the %qE attribute cannot be applied to an SVE function type"
 msgstr "new 不能用于函数类型"
 
-#: 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 "{ 预期于运算式中 ? 之后"
 
-#: 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 "%qs必须与%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 "%qs必须与%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 "%qs必须与%qs一起使用"
 
-#: 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 "%qs必须与%qs一起使用"
 
-#: config/aarch64/aarch64.cc:2758
+#: config/aarch64/aarch64.cc:3303
 #, fuzzy, gcc-internal-format
 msgid "this operation requires the SVE ISA extension"
 msgstr "不使用位段指令"
 
-#: 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 "argument to decltype must be an expression"
 msgid "arguments of type %qT require the SVE ISA extension"
 msgstr "decltype 的实参必须是一个表达式"
 
-#: config/aarch64/aarch64.cc:6708
+#: config/aarch64/aarch64.cc:7357
 #, fuzzy, gcc-internal-format
 #| msgid "AltiVec argument passed to unprototyped function"
 msgid "SVE type %qT cannot be passed to an unprototyped function"
 msgstr "传递 AltiVec 参数给无原型的函数"
 
-#: 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 "目标属性或 pragma 改变了 SPE ABI"
 
-#: 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 "内建函数%q+D未被声明为函数"
 
-#: 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 attribute ignored"
 msgid "%qs string ill-formed"
 msgstr "忽略%qs属性"
 
-#: config/aarch64/aarch64.cc:16387
+#: config/aarch64/aarch64.cc:17328
 #, fuzzy, gcc-internal-format
 msgid "invalid format for %<sve_width%>"
 msgstr "操作无效的对象"
 
-#: config/aarch64/aarch64.cc:16399
+#: config/aarch64/aarch64.cc:17340
 #, fuzzy, gcc-internal-format
 #| msgid "invalid %%h value"
 msgid "invalid %<sve_width%> value: %d"
 msgstr "无效 %%h 值"
 
-#: 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 "%s: 不适用的选项 -- %c\n"
 
-#: config/aarch64/aarch64.cc:16437
+#: config/aarch64/aarch64.cc:17378
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "unknown tuning option (%s)"
 msgstr "spec 函数名格式错误"
 
-#: 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 valid for %qs"
 msgid "%qs is not a valid offset in %qs"
 msgstr "%qs对%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 "%qs后缺少宏名"
 
-#: config/aarch64/aarch64.cc:16857
+#: config/aarch64/aarch64.cc:17802
 #, fuzzy, gcc-internal-format
 msgid "invalid feature modifier %qs in %<-mcpu=%s%>"
 msgstr "%X%P: 未知特征 %s\n"
 
-#: config/aarch64/aarch64.cc:16916
+#: config/aarch64/aarch64.cc:17861
 #, fuzzy, gcc-internal-format
 msgid "invalid argument given to %<-mharden-sls=%>"
 msgstr "%<...%>作为实参。)"
 
-#: config/aarch64/aarch64.cc:16927
+#: config/aarch64/aarch64.cc:17872
 #, gcc-internal-format
 msgid "%qs must be by itself for %<-mharden-sls=%>"
 msgstr ""
 
-#: config/aarch64/aarch64.cc:16932
+#: config/aarch64/aarch64.cc:17877
 #, fuzzy, gcc-internal-format
 msgid "invalid argument %<%s%> for %<-mharden-sls=%>"
 msgstr "内建函数实参无效"
 
-#: config/aarch64/aarch64.cc:17038
+#: config/aarch64/aarch64.cc:17983
 #, fuzzy, gcc-internal-format
 msgid "invalid argument %<%s%> for %<-mbranch-protection=%>"
 msgstr "内建函数实参无效"
 
-#: config/aarch64/aarch64.cc:17040
+#: config/aarch64/aarch64.cc:17985
 #, fuzzy, gcc-internal-format
 msgid "missing argument for %<-mbranch-protection=%>"
 msgstr "内建函数实参无效"
 
-#: config/aarch64/aarch64.cc:17064
+#: config/aarch64/aarch64.cc:18009
 #, fuzzy, gcc-internal-format
 msgid "missing arch name in %<-march=%s%>"
 msgstr "%qs后缺少宏名"
 
-#: config/aarch64/aarch64.cc:17067
+#: config/aarch64/aarch64.cc:18012
 #, fuzzy, gcc-internal-format
 msgid "unknown value %qs for %<-march%>"
 msgstr "未知的 TLS 模型%qs"
 
-#: config/aarch64/aarch64.cc:17071
+#: config/aarch64/aarch64.cc:18016
 #, fuzzy, gcc-internal-format
 msgid "invalid feature modifier %qs in %<-march=%s%>"
 msgstr "%qs后缺少宏名"
 
-#: config/aarch64/aarch64.cc:17099
+#: config/aarch64/aarch64.cc:18044
 #, fuzzy, gcc-internal-format
 msgid "missing cpu name in %<-mtune=%s%>"
 msgstr "%qs后缺少宏名"
 
-#: config/aarch64/aarch64.cc:17102
+#: config/aarch64/aarch64.cc:18047
 #, fuzzy, gcc-internal-format
 #| msgid "unknown value %qs for -mtune"
 msgid "unknown value %qs for %<-mtune%>"
 msgstr "-mtune 参数的值 %qs 未知"
 
-#: config/aarch64/aarch64.cc:17236
+#: config/aarch64/aarch64.cc:18181
 #, fuzzy, gcc-internal-format
 #| msgid "switch -mcpu=%s conflicts with -march=%s switch"
 msgid "switch %<-mcpu=%s%> conflicts with %<-march=%s%> switch"
 msgstr "开关 -mcpu=%s 与 -march=%s 冲突"
 
-#: config/aarch64/aarch64.cc:17292
+#: config/aarch64/aarch64.cc:18237
 #, fuzzy, gcc-internal-format
 #| msgid "Assembler does not support -mabi=ilp32"
 msgid "assembler does not support %<-mabi=ilp32%>"
 msgstr "汇编器不支持 -mabi=ilp32"
 
-#: 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 "代码模式%qs在 %s 位模式下不受支持"
 
-#: config/aarch64/aarch64.cc:17384
+#: config/aarch64/aarch64.cc:18329
 #, fuzzy, gcc-internal-format
 msgid "code model %qs not supported in ilp32 mode"
 msgstr "代码模式%qs在 %s 位模式下不受支持"
 
-#: config/aarch64/aarch64.cc:17563
+#: config/aarch64/aarch64.cc:18508
 #, gcc-internal-format
 msgid "missing name in %<target(\"arch=\")%> pragma or attribute"
 msgstr ""
 
-#: 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 "%qs后断言"
 
-#: 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 "%qs后缺少宏名"
 
-#: config/aarch64/aarch64.cc:17605
+#: config/aarch64/aarch64.cc:18550
 #, gcc-internal-format
 msgid "missing name in %<target(\"cpu=\")%> pragma or attribute"
 msgstr ""
 
-#: 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 "%qs后断言"
 
-#: 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 "%qs后缺少宏名"
+
+#: config/aarch64/aarch64.cc:18580
 #, gcc-internal-format
 msgid "missing argument to %<target(\"branch-protection=\")%> pragma or attribute"
 msgstr ""
 
-#: 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 "%qs后缺少宏名"
 
-#: 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 "%qs后断言"
 
-#: config/aarch64/aarch64.cc:17715
+#: config/aarch64/aarch64.cc:18660
 #, fuzzy, gcc-internal-format
 msgid "missing value in %<target()%> pragma or attribute"
 msgstr "%qs后断言"
 
-#: 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 "异常的 URL"
 
-#: 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 "%s 只接受 2 个参数"
 
-#: 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 "目标系统不支持调试输出"
 
-#: config/aarch64/aarch64.cc:17879
+#: config/aarch64/aarch64.cc:18824
 #, fuzzy, gcc-internal-format
 #| msgid "attribute(target(\"%s\")) is unknown"
 msgid "pragma or attribute %<target(\"%s=%s\")%> is not valid"
 msgstr "attribute(target(\"%s\"))未知"
 
-#: 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属性需要一个字符串常量作为实参"
 
-#: 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 "attribute(target(\"%s\")) is unknown"
 msgid "pragma or attribute %<target(\"%s\")%> is not valid"
 msgstr "attribute(target(\"%s\"))未知"
 
-#: config/aarch64/aarch64.cc:17983
+#: config/aarch64/aarch64.cc:18928
 #, fuzzy, gcc-internal-format
 msgid "malformed %<target(\"%s\")%> pragma or attribute"
 msgstr "异常的 URL"
 
-#: 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 "操作数号超出范围"
 
-#: 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 "不支持的真理哈希类型 %d。\n"
 
-#: config/aarch64/aarch64.cc:25699 config/aarch64/aarch64.cc:25726
+#: config/aarch64/aarch64.cc:26673 config/aarch64/aarch64.cc:26700
 #, gcc-internal-format
 msgid "GCC does not currently support mixed size types for %<simd%> functions"
 msgstr ""
 
-#: 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 new%>必须返回%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 new%>必须返回%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 "需要类型%qT,但实参的类型为%qT"
 
-#: config/aarch64/aarch64.cc:25755
+#: config/aarch64/aarch64.cc:26729
 #, fuzzy, gcc-internal-format
 #| msgid "the -shared option is not currently supported for VAX ELF"
 msgid "GCC does not currently support simdlen %wd for type %qT"
@@ -39282,7 +39416,7 @@ msgid "bad value %qs for %<-mmemory-latency%>"
 msgstr "-mmemory-latency 开关的值%qs错误"
 
 #: 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
 #, gcc-internal-format
 msgid "bad builtin fcode"
@@ -39408,18 +39542,18 @@ msgstr "%qE属性的实参不是“ilink1”或“ilink2”"
 msgid "argument of %qE attribute is not \"ilink\" or \"firq\""
 msgstr "%qE属性的实参不是“ilink1”或“ilink2”"
 
-#: 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
@@ -39428,363 +39562,263 @@ msgstr "%qE属性的实参不是“ilink1”或“ilink2”"
 msgid "%qE attribute only applies to functions"
 msgstr "%qE属性只能用于函数"
 
-#: config/arc/arc.cc:6970
+#: config/arc/arc.cc:6977
 #, fuzzy, gcc-internal-format
 msgid "%<__builtin_arc_aligned%> with non-constant alignment"
 msgstr "调用%<__builtin_next_arg%>时没有给定实参"
 
-#: config/arc/arc.cc:6978
+#: config/arc/arc.cc:6985
 #, fuzzy, gcc-internal-format
 msgid "invalid alignment value for %<__builtin_arc_aligned%>"
 msgstr "%<__builtin_frame_address%>的实参无效"
 
-#: config/arc/arc.cc:7141
+#: config/arc/arc.cc:7148
 #, fuzzy, gcc-internal-format
 #| msgid "-mcorea should be used with -mmulticore"
 msgid "operand 1 should be an unsigned 3-bit immediate"
 msgstr "-mcorea 必须与 -mmulticore 一起使用"
 
-#: config/arc/arc.cc:7182 config/arc/arc.cc:7279
+#: config/arc/arc.cc:7189 config/arc/arc.cc:7286
 #, gcc-internal-format
 msgid "operand 2 should be an unsigned 3-bit value (I0-I7)"
 msgstr ""
 
-#: config/arc/arc.cc:7215 config/arc/arc.cc:7247
+#: config/arc/arc.cc:7222 config/arc/arc.cc:7254
 #, gcc-internal-format
 msgid "operand 1 should be an unsigned 3-bit value (I0-I7)"
 msgstr ""
 
-#: 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 "实参 2 必须是一个 5 位无符号字面量"
 
-#: 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 "实参 2 必须是一个 5 位无符号字面量"
 
-#: config/arc/arc.cc:7316
+#: config/arc/arc.cc:7323
 #, gcc-internal-format
 msgid "operand 4 should be an unsigned 8-bit value (0-255)"
 msgstr ""
 
-#: config/arc/arc.cc:7320
+#: config/arc/arc.cc:7327
 #, gcc-internal-format
 msgid "operand 3 should be an unsigned 3-bit value (I0-I7)"
 msgstr ""
 
-#: config/arc/arc.cc:7327
+#: config/arc/arc.cc:7334
 #, gcc-internal-format
 msgid "operand 2 should be an unsigned 3-bit value (subreg 0-7)"
 msgstr ""
 
-#: config/arc/arc.cc:7330
+#: config/arc/arc.cc:7337
 #, gcc-internal-format
 msgid "operand 2 should be an even 3-bit value (subreg 0,2,4,6)"
 msgstr ""
 
-#: config/arc/arc.cc:7377
+#: config/arc/arc.cc:7384
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "symbol used as immediate operand"
 msgid "builtin requires an immediate for operand %d"
 msgstr "符号被用作立即操作数"
 
-#: 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 "实参 2 必须是一个 5 位无符号字面量"
 
-#: config/arc/arc.cc:7386
+#: config/arc/arc.cc:7393
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "argument 2 must be a 5-bit unsigned literal"
 msgid "operand %d should be a 8 bit unsigned immediate"
 msgstr "实参 2 必须是一个 5 位无符号字面量"
 
-#: config/arc/arc.cc:7390
+#: config/arc/arc.cc:7397
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "argument 2 must be a 5-bit unsigned literal"
 msgid "operand %d should be a 3 bit unsigned immediate"
 msgstr "实参 2 必须是一个 5 位无符号字面量"
 
-#: config/arc/arc.cc:7393
+#: config/arc/arc.cc:7400
 #, gcc-internal-format, gfc-internal-format
 msgid "unknown builtin immediate operand type for operand %d"
 msgstr ""
 
-#: 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 "在 %2$s 缓存中 %1$zu 字节可用"
 
-#: config/arc/arc.cc:8649
+#: config/arc/arc.cc:8656
 #, fuzzy, gcc-internal-format
 msgid "insn addresses not freed"
 msgstr "在 %2$s 缓存中 %1$zu 字节可用"
 
-#: config/arc/arc.cc:11057
+#: config/arc/arc.cc:11064
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute only available for 32-bit"
 msgid "%qE attribute only valid for ARCv2 architecture"
 msgstr "%qE属性只能在 32 位下使用"
 
-#: 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 not \"ilink1\" or \"ilink2\""
 msgid "argument of %qE attribute is missing"
 msgstr "%qE属性的实参不是“ilink1”或“ilink2”"
 
-#: 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属性需要一个整常量作为实参"
 
-#: 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属性只能用于函数类型"
 
-#: config/arc/arc.cc:11151
+#: config/arc/arc.cc:11158
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute only applies to function types"
 msgid "%qE attribute only applies to types"
 msgstr "%qE属性只能用于函数类型"
 
-#: config/arc/arc.cc:11157
+#: config/arc/arc.cc:11164
 #, fuzzy, gcc-internal-format
 #| msgid "argument of %qE attribute is not \"ilink1\" or \"ilink2\""
 msgid "argument of %qE attribute ignored"
 msgstr "%qE属性的实参不是“ilink1”或“ilink2”"
 
-#: 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只能用于变量"
 
-#: 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 "By-value argument at %L is not allowed in this context"
 msgid "alternatives not allowed in %<asm%> flag output"
 msgstr "%L处上下文中不允许使用按值传递的实参"
 
-#: 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 "未知的 TLS 模型%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 "向函数类型%qT的转换无效"
 
-#: config/arm/arm-builtins.cc:3011
+#: config/arm/arm-builtins.cc:3065
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "coprocessor not enabled"
 msgid "coprocessor %d is not enabled with +cdecp%d"
 msgstr "协处理器未被启用"
 
-#: config/arm/arm-builtins.cc:3015
+#: config/arm/arm-builtins.cc:3069
 #, gcc-internal-format
 msgid "coproc must be a constant immediate in range [0-%d] enabled with %<+cdecp<N>%>"
 msgstr ""
 
-#: 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 "实参必须是常数"
 
-#: 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 "堆栈限制在此目标机上不受支持"
 
-#: 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 需要范围在[%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 "掩码必须是一个立即数"
 
-#: 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
 #, gcc-internal-format
 msgid "selector must be an immediate"
 msgstr "选择子必须是立即数"
 
-#: 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 "选择子必须是 0 到 %wi 间的整常量"
 
-#: 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 "选择子必须是 0 到 %wi 间的整常量"
 
-#: 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 "选择子必须是 0 到 %wi 间的整常量"
 
-#: config/arm/arm-builtins.cc:3670
+#: config/arm/arm-builtins.cc:3731
 #, gcc-internal-format
 msgid "mask must be an immediate"
 msgstr "掩码必须是一个立即数"
 
-#: 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 "%qE属性的参数应当在 0 和 255 之间"
 
-#: 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
@@ -39808,322 +39842,317 @@ msgstr "未知‘# pragma externmodel’式样‘%s’(_M)"
 msgid "this definition requires the MVE ISA extension"
 msgstr "内建函数%q+D未被声明为函数"
 
-#: config/arm/arm.cc:2938
+#: config/arm/arm.cc:2941
 #, gcc-internal-format
 msgid "iWMMXt and NEON are incompatible"
 msgstr "iWMMXt 与 NEON 互不兼容"
 
-#: config/arm/arm.cc:2944
+#: config/arm/arm.cc:2947
 #, gcc-internal-format
 msgid "target CPU does not support ARM mode"
 msgstr "目标 CPU 不支持 ARM 模式"
 
-#: 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 "函数调用回溯支持只在为 Thumb 编译时有意义"
 
-#: 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 "被调用者协作只在为 Thumb 编译时有意义"
 
-#: config/arm/arm.cc:2959
+#: config/arm/arm.cc:2962
 #, fuzzy, gcc-internal-format
 #| msgid "-g with -mno-apcs-frame may not give sensible debugging"
 msgid "%<-g%> with %<-mno-apcs-frame%> may not give sensible debugging"
 msgstr "-g 与 -mno-apcs-frame 并用可能不能给出有意义的调试信息"
 
-#: 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 "can not use -mtp=cp15 with 16-bit Thumb"
 msgid "cannot use %<-mtp=cp15%> with 16-bit Thumb"
 msgstr "-mtp=cp15 和 16 位 Thumb 不能并用"
 
-#: config/arm/arm.cc:2971
+#: config/arm/arm.cc:2974
 #, gcc-internal-format
 msgid "RTP PIC is incompatible with Thumb"
 msgstr "RTP PIC 与 Thumb 不兼容"
 
-#: 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 "-fjni is incompatible with -freduced-reflection"
 msgid "%s incompatible with %<-mword-relocations%>"
 msgstr "-fjni 与 -freduced-reflection 不兼容"
 
-#: config/arm/arm.cc:3096
+#: config/arm/arm.cc:3099
 #, gcc-internal-format
 msgid "target CPU does not support THUMB instructions"
 msgstr "目标 CPU 不支持 THUMB 指令"
 
-#: config/arm/arm.cc:3146
+#: config/arm/arm.cc:3149
 #, gcc-internal-format
 msgid "target CPU does not support unaligned accesses"
 msgstr "目标 CPU 不支持未对齐的访问"
 
-#: 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 -march=%s switch"
 msgid "switch %<-mcpu=%s%> conflicts with switch %<-march=%s%>"
 msgstr "开关 -mcpu=%s 与 -march=%s 冲突"
 
-#: config/arm/arm.cc:3539
+#: config/arm/arm.cc:3542
 #, fuzzy, gcc-internal-format
 #| msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
 msgid "%<-mapcs-stack-check%> incompatible with %<-mno-apcs-frame%>"
 msgstr "-mapcs-stack-check 和 -mno-apcs-frame 互不兼容"
 
-#: config/arm/arm.cc:3548
+#: config/arm/arm.cc:3551
 #, fuzzy, gcc-internal-format
 #| msgid "-fpic and -mapcs-reent are incompatible"
 msgid "%<-fpic%> and %<-mapcs-reent%> are incompatible"
 msgstr "-fpic 和 -mapcs-reent 互不兼容"
 
-#: config/arm/arm.cc:3551
+#: config/arm/arm.cc:3554
 #, gcc-internal-format
 msgid "APCS reentrant code not supported.  Ignored"
 msgstr "不支持 APCS 重入代码。已忽略"
 
-#: 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
 #, fuzzy, gcc-internal-format
 msgid "structure size boundary can only be set to 8, 32 or 64"
 msgstr "结构大小边界只能被设定为 %s"
 
-#: config/arm/arm.cc:3584
+#: config/arm/arm.cc:3587
 #, fuzzy, gcc-internal-format
 msgid "structure size boundary can only be set to 8 or 32"
 msgstr "结构大小边界只能被设定为 %s"
 
-#: config/arm/arm.cc:3609
+#: config/arm/arm.cc:3612
 #, fuzzy, gcc-internal-format
 #| msgid "RTP PIC is incompatible with -msingle-pic-base"
 msgid "RTP PIC is incompatible with %<-msingle-pic-base%>"
 msgstr "RTP PIC 与 -msingle-pic-base 不兼容"
 
-#: 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 "代码模式%qs在 %s 位模式下不受支持"
 
-#: config/arm/arm.cc:3629
+#: config/arm/arm.cc:3632
 #, fuzzy, gcc-internal-format
 #| msgid "-mpic-register= is useless without -fpic"
 msgid "%<-mpic-register=%> is useless without %<-fpic%>"
 msgstr "-mpic-register= 不与 -fpic 并用时不起作用"
 
-#: config/arm/arm.cc:3638
+#: config/arm/arm.cc:3641
 #, fuzzy, gcc-internal-format
 #| msgid "unable to use '%s' for PIC register"
 msgid "unable to use %qs for PIC register"
 msgstr "‘%s’不能被用作 PIC 寄存器"
 
-#: 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"
 msgid "%<-freorder-blocks-and-partition%> not supported on this architecture"
 msgstr "-freorder-blocks-and-partition 不能在此架构下工作"
 
-#: config/arm/arm.cc:3845
+#: config/arm/arm.cc:3848
 #, fuzzy, gcc-internal-format
 #| msgid "-mrelocatable and -msdata=%s are incompatible"
 msgid "selected fp16 options are incompatible"
 msgstr "-mrelocatable 与 -msdata=%s 互不兼容"
 
-#: 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 "iwmmxt 需要与 AAPCS 兼容的 ABI 方能正确操作"
 
-#: config/arm/arm.cc:3903
+#: config/arm/arm.cc:3906
 #, gcc-internal-format
 msgid "iwmmxt abi requires an iwmmxt capable cpu"
 msgstr "iwmmxt abi 需要相应 CPU 的支持"
 
-#: config/arm/arm.cc:3911
+#: config/arm/arm.cc:3914
 #, gcc-internal-format
 msgid "target CPU does not support interworking"
 msgstr "目标 CPU 不支持交互工作"
 
-#: config/arm/arm.cc:3924
+#: config/arm/arm.cc:3927
 #, fuzzy, gcc-internal-format
 #| msgid "AAPCS does not support -mcaller-super-interworking"
 msgid "AAPCS does not support %<-mcaller-super-interworking%>"
 msgstr "AAPCS 不支持 -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"
 msgid "AAPCS does not support %<-mcallee-super-interworking%>"
 msgstr "AAPCS 不支持 -mcallee-super-interworking"
 
-#: config/arm/arm.cc:3932
+#: config/arm/arm.cc:3935
 #, fuzzy, gcc-internal-format
 #| msgid "__fp16 and no ldrh"
 msgid "%<__fp16%> and no ldrh"
 msgstr "__fp16 而无 ldrh"
 
-#: config/arm/arm.cc:3935
+#: config/arm/arm.cc:3938
 #, fuzzy, gcc-internal-format
 #| msgid "target CPU does not support THUMB instructions"
 msgid "target CPU does not support ARMv8-M Security Extensions"
 msgstr "目标 CPU 不支持 THUMB 指令"
 
-#: 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
 #, fuzzy, gcc-internal-format
 #| msgid "-mfloat-abi=hard and VFP"
 msgid "%<-mfloat-abi=hard%>: selected architecture lacks an FPU"
 msgstr "-mfloat-abi=hard 和 VFP"
 
-#: config/arm/arm.cc:3960
+#: config/arm/arm.cc:3963
 #, fuzzy, gcc-internal-format
 #| msgid "-mfloat-abi=hard and VFP"
 msgid "%<-mfloat-abi=hard%> and VFP"
 msgstr "-mfloat-abi=hard 和 VFP"
 
-#: config/arm/arm.cc:6219
+#: config/arm/arm.cc:6222
 #, fuzzy, gcc-internal-format
 msgid "non-AAPCS derived PCS variant"
 msgstr "不是从 AAPCS 派生出的 PCS 变种"
 
-#: config/arm/arm.cc:6221
+#: config/arm/arm.cc:6224
 #, fuzzy, gcc-internal-format
 msgid "variadic functions must use the base AAPCS variant"
 msgstr "可变参数函数必须使用基础的 AAPCS 变种"
 
-#: config/arm/arm.cc:6241
+#: config/arm/arm.cc:6253
 #, gcc-internal-format
 msgid "PCS variant"
 msgstr "PCS 变动"
 
-#: config/arm/arm.cc:6493
+#: config/arm/arm.cc:6528
 #, fuzzy, gcc-internal-format
 #| msgid "Thumb-1 hard-float VFP ABI"
 msgid "Thumb-1 %<hard-float%> VFP ABI"
 msgstr "Thumb-1 硬件浮点 VFP ABI"
 
-#: config/arm/arm.cc:6582
+#: config/arm/arm.cc:6623
 #, gcc-internal-format
 msgid "argument of type %qT not permitted with %<-mgeneral-regs-only%>"
 msgstr ""
 
-#: 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 only applies to functions, not %s"
 msgid "%qE attribute not available to functions with arguments passed on the stack"
 msgstr "%qE属性只能用于函数而非 %s"
 
-#: config/arm/arm.cc:7494
+#: config/arm/arm.cc:7535
 #, fuzzy, gcc-internal-format
 #| msgid "%qD must not have variable number of arguments"
 msgid "%qE attribute not available to functions with variable number of arguments"
 msgstr "%qD不能带可变数量的实参"
 
-#: config/arm/arm.cc:7503
+#: config/arm/arm.cc:7544
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute only applies to functions, not %s"
 msgid "%qE attribute not available to functions that return value on the stack"
 msgstr "%qE属性只能用于函数而非 %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 on non-class types"
 msgid "%qE attribute ignored without %<-mcmse%> option"
 msgstr "%qE属性在不是类的类型上被忽略"
 
-#: 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 "%qE属性只能用于函数"
 
-#: config/arm/arm.cc:7593
+#: config/arm/arm.cc:7634
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute only applies to function types"
 msgid "%qE attribute only applies to base type of a function pointer"
 msgstr "%qE属性只能用于函数类型"
 
-#: 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 "操作数号超出范围"
 
-#: 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 "非预期的模块结束"
 
-#: 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 mode"
 msgid "Interrupt Service Routines cannot be coded in Thumb-1 mode"
 msgstr "Thumb 模式中不能编码中断服务进程"
 
-#: 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 element type for attribute %qs"
 msgid "invalid fpu for target attribute or pragma %qs"
@@ -40132,24 +40161,24 @@ msgstr "属性%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 vector type for attribute %qE"
 msgid "invalid architecture for target attribute or pragma %qs"
 msgstr "属性%qE的向量类型无效"
 
-#: config/arm/arm.cc:33192
+#: config/arm/arm.cc:33230
 #, fuzzy, gcc-internal-format
 #| msgid "target attribute or pragma changes SPE ABI"
 msgid "unknown target attribute or pragma %qs"
 msgstr "目标属性或 pragma 改变了 SPE ABI"
 
-#: config/arm/arm.cc:34154
+#: config/arm/arm.cc:34192
 #, fuzzy, gcc-internal-format
 #| msgid "-mcmodel= is not supported on 32 bit systems"
 msgid "%<asm%> flags not supported in thumb1 mode"
@@ -40474,7 +40503,7 @@ msgstr "指定了多个函数类型属性"
 
 #: config/bfin/bfin.cc:4766
 #, fuzzy, 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 "同一个函数不能既有 longcall 又有 shortcall 属性"
 
 #: config/bpf/bpf.cc:111
@@ -40534,7 +40563,8 @@ msgstr "在析构函数%qs中"
 msgid "indirect call in function, which are not supported by eBPF"
 msgstr "嵌套函数在此目标机上不受支持"
 
-#: 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
 #, gcc-internal-format
 msgid "invalid argument to built-in function"
@@ -40849,7 +40879,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 ""
@@ -40943,176 +40973,172 @@ msgstr "-mexr 未与 -ms 或 -msx 一起使用"
 msgid "%<-mn%> is not supported for linux targets"
 msgstr "堆栈限制在此目标机上不受支持"
 
-#: config/i386/host-cygwin.cc:57
-#, gcc-internal-format
-msgid "can%'t get position in PCH file: %m"
-msgstr "不能在 PCH 文件中找到位置:%m"
-
 #: config/i386/host-cygwin.cc:64
-#, gcc-internal-format
-msgid "can%'t extend PCH file: %m"
+#, fuzzy, gcc-internal-format
+#| msgid "can%'t extend PCH file: %m"
+msgid "cannot extend PCH file: %m"
 msgstr "无法扩展 PCH 文件:%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 "不能在 PCH 文件中找到位置:%m"
 
-#: 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\n"
 
-#: 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 "嵌套函数在此目标机上不受支持"
 
-#: 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\n"
 
-#: 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 "%qs的实参必须是一个 2 位无符号字面常量"
 
-#: 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 ""
 "\n"
 "错误:“%s”并非有效新闻群组!\n"
 
-#: config/i386/i386-expand.cc:9122
+#: config/i386/i386-expand.cc:9138
 #, fuzzy, gcc-internal-format
 #| msgid "interrupt Service Routines cannot be coded in Thumb mode"
 msgid "interrupt service routine cannot be called directly"
 msgstr "Thumb 模式中不能编码中断服务进程"
 
-#: config/i386/i386-expand.cc:9546 config/i386/i386-expand.cc:11042
+#: config/i386/i386-expand.cc:9562 config/i386/i386-expand.cc:11058
 #, gcc-internal-format
 msgid "the last argument must be a 2-bit immediate"
 msgstr "最后一个实参必须是一个 2 位立即数"
 
-#: 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 "最后一个实参必须是一个 8 位立即数"
 
-#: 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 "最后一个实参必须是一个 8 位立即数"
 
-#: config/i386/i386-expand.cc:10971
+#: config/i386/i386-expand.cc:10987
 #, gcc-internal-format
 msgid "the last argument must be an 1-bit immediate"
 msgstr "最后一个实参必须是一个 1 位立即数"
 
-#: config/i386/i386-expand.cc:10986
+#: config/i386/i386-expand.cc:11002
 #, gcc-internal-format
 msgid "the last argument must be a 3-bit immediate"
 msgstr "最后一个实参必须是一个 3 位立即数"
 
-#: config/i386/i386-expand.cc:11021
+#: config/i386/i386-expand.cc:11037
 #, gcc-internal-format
 msgid "the last argument must be a 4-bit immediate"
 msgstr "最后一个实参必须是一个 4 位立即数"
 
-#: config/i386/i386-expand.cc:11061
+#: config/i386/i386-expand.cc:11077
 #, gcc-internal-format
 msgid "the last argument must be a 1-bit immediate"
 msgstr "最后一个实参必须是一个 1 位立即数"
 
-#: config/i386/i386-expand.cc:11077
+#: config/i386/i386-expand.cc:11093
 #, gcc-internal-format
 msgid "the last argument must be a 5-bit immediate"
 msgstr "最后一个实参必须是一个 5 位立即数"
 
-#: config/i386/i386-expand.cc:11087
+#: config/i386/i386-expand.cc:11103
 #, gcc-internal-format
 msgid "the next to last argument must be an 8-bit immediate"
 msgstr "倒数第二个实参必须是一个 8 位立即数"
 
-#: config/i386/i386-expand.cc:11092
+#: config/i386/i386-expand.cc:11108
 #, gcc-internal-format
 msgid "the last argument must be an 8-bit immediate"
 msgstr "最后一个实参必须是一个 8 位立即数"
 
-#: 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%>的第三个实参必须是一个常量"
 
-#: config/i386/i386-expand.cc:11234
+#: config/i386/i386-expand.cc:11250
 #, fuzzy, gcc-internal-format
 msgid "incorrect comparison mode"
 msgstr "不正确的格式:%s\n"
 
-#: 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 "控制生成的浮点舍入模式"
 
-#: 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 "最后一个实参必须是一个 4 位立即数"
 
-#: 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 "最后一个实参必须是一个 5 位立即数"
 
-#: 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 "最后一个实参必须是一个 8 位立即数"
 
-#: 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"
 msgid "selector must be an integer constant in the range [0, %wi]"
 msgstr "选择子必须是 0 到 %wi 间的整常量"
 
-#: config/i386/i386-expand.cc:12321
+#: config/i386/i386-expand.cc:12354
 #, gcc-internal-format
 msgid "%qE needs unknown isa option"
 msgstr "%qE需要未知的 ISA 选项"
 
-#: config/i386/i386-expand.cc:12325
+#: config/i386/i386-expand.cc:12358
 #, gcc-internal-format
 msgid "%qE needs isa option %s"
 msgstr "%qE需要 ISA 选项 %s"
 
-#: config/i386/i386-expand.cc:13269
+#: config/i386/i386-expand.cc:13302
 #, gcc-internal-format
 msgid "the last argument must be a 32-bit immediate"
 msgstr "最后一个参数必须是一个 32 位立即数"
 
-#: config/i386/i386-expand.cc:13302
+#: config/i386/i386-expand.cc:13335
 #, gcc-internal-format
 msgid "last argument must be an immediate"
 msgstr "最后一个实参必须是一个立即数"
 
-#: 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 "最后一个实参必须是一个 4 位立即数"
 
-#: 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 "左实参必须是一个切片"
 
-#: config/i386/i386-expand.cc:14334
+#: config/i386/i386-expand.cc:14370
 #, fuzzy, gcc-internal-format
 msgid "incorrect hint operand"
 msgstr "(提示略过)"
 
-#: config/i386/i386-expand.cc:14353
+#: config/i386/i386-expand.cc:14389
 #, fuzzy, gcc-internal-format
 #| msgid "the next to last argument must be an 8-bit immediate"
 msgid "the argument to %<xabort%> intrinsic must be an 8-bit immediate"
@@ -41128,7 +41154,7 @@ msgstr ""
 msgid "virtual function multiversioning not supported"
 msgstr "联合成员函数%qD被声明为虚函数"
 
-#: 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 "嵌套函数在此目标机上不受支持"
@@ -41315,13 +41341,13 @@ msgstr "您选择的 CPU 不支持 x86-64 指令集"
 #: config/i386/i386-options.cc:2215
 #, fuzzy, gcc-internal-format
 #| msgid "bad value (%s) for -march= switch"
-msgid "bad value (%qs) for %<-march=%> switch"
+msgid "bad value %qs for %<-march=%> switch"
 msgstr "-march= 的值(%s)不正确"
 
 #: config/i386/i386-options.cc:2216
 #, fuzzy, gcc-internal-format
 #| msgid "bad value (%s) for %sarch=%s %s"
-msgid "bad value (%qs) for %<target(\"arch=\")%> attribute"
+msgid "bad value %qs for %<target(\"arch=\")%> attribute"
 msgstr "%2$sarch=%3$s %4$s所带参数(%1$s)不正确"
 
 #: config/i386/i386-options.cc:2238
@@ -41346,14 +41372,14 @@ msgstr "%qs对%qs而言无效"
 
 #: config/i386/i386-options.cc:2295
 #, fuzzy, gcc-internal-format
-#| msgid "bad value (%s) for -mtune= switch"
-msgid "bad value (%qs) for %<-mtune=%> switch"
-msgstr "-mtune= 开关的值 (%s) 错误"
+#| msgid "bad value %qs for -mtune switch"
+msgid "bad value %qs for %<-mtune=%> switch"
+msgstr "-mtune 开关的值%qs错误"
 
 #: config/i386/i386-options.cc:2296
 #, fuzzy, gcc-internal-format
 #| msgid "bad value (%s) for %stune=%s %s"
-msgid "bad value (%qs) for %<target(\"tune=\")%> attribute"
+msgid "bad value %qs for %<target(\"tune=\")%> attribute"
 msgstr "%2$stune=%3$s%4$s所带参数(%1$s)不正确"
 
 #: config/i386/i386-options.cc:2317
@@ -41636,7 +41662,7 @@ msgstr "cdecl 和 thiscall 属性互不兼容"
 msgid "%qE attribute is used for non-class method"
 msgstr "%qE属性在不是类的类型上被忽略"
 
-#: config/i386/i386-options.cc:3549 config/rs6000/rs6000.cc:20263
+#: config/i386/i386-options.cc:3549 config/rs6000/rs6000.cc:20314
 #, gcc-internal-format
 msgid "%qE incompatible attribute ignored"
 msgstr "%qE不兼容的属性已被忽略"
@@ -41714,122 +41740,134 @@ msgstr "X32 不支持 ms_abi 属性"
 msgid "%<ms_hook_prologue%> attribute is not compatible with nested function"
 msgstr "ms_hook_prologue 与嵌套函数不兼容"
 
-#: 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 "没有启用 MMX,却出现了 MMX 向量实参,这改变了 ABI"
 
-#: 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 "没有启用 SSE,却有 SSE 向量返回值,这改变了 ABI"
 
-#: config/i386/i386.cc:1920
+#: config/i386/i386.cc:1924
 #, gcc-internal-format
 msgid "AVX vector argument without AVX enabled changes the ABI"
 msgstr "没有启用 AVX,却出现了 AVX 向量实参,这改变了 ABI"
 
-#: 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 "没有启用 AVX,却出现了 AVX 向量实参,这改变了 ABI"
 
-#: config/i386/i386.cc:1942
+#: config/i386/i386.cc:1946
 #, gcc-internal-format
 msgid "SSE vector argument without SSE enabled changes the ABI"
 msgstr "没有启用 SSE,却出现了 SSE 向量实参,这改变了 ABI"
 
-#: config/i386/i386.cc:1948
+#: config/i386/i386.cc:1952
 #, gcc-internal-format
 msgid "SSE vector return without SSE enabled changes the ABI"
 msgstr "没有启用 SSE,却有 SSE 向量返回值,这改变了 ABI"
 
-#: config/i386/i386.cc:1964
+#: config/i386/i386.cc:1968
 #, gcc-internal-format
 msgid "MMX vector argument without MMX enabled changes the ABI"
 msgstr "没有启用 MMX,却出现了 MMX 向量实参,这改变了 ABI"
 
-#: config/i386/i386.cc:1970
+#: config/i386/i386.cc:1974
 #, gcc-internal-format
 msgid "MMX vector return without MMX enabled changes the ABI"
 msgstr "没有启用 MMX却返回 MMX 向量,这改变了 ABI"
 
-#: 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 "在 GCC 4.4 中传递带有一个可变数组成员的结构的 ABI 有了改变"
 
-#: config/i386/i386.cc:2289
+#: config/i386/i386.cc:2293
 #, fuzzy, gcc-internal-format
 #| msgid "the ABI of passing union with long double has changed in GCC 4.4"
 msgid "the ABI of passing union with %<long double%> has changed in GCC 4.4"
 msgstr "在 GCC 4.4 中传递有 long double 的联合的 ABI 有改变"
 
-#: config/i386/i386.cc:2422
+#: config/i386/i386.cc:2426
 #, fuzzy, gcc-internal-format
 #| msgid "the ABI of passing structure with complex float member has changed in GCC 4.4"
 msgid "the ABI of passing structure with %<complex float%> member has changed in GCC 4.4"
 msgstr "在 GCC 4.4 中传递带有复数浮点成员结构的 ABI 有了改变"
 
-#: config/i386/i386.cc:2538
+#: config/i386/i386.cc:2542
 #, fuzzy
 #| msgid "the ABI of passing structure with complex float member has changed in GCC 4.4"
 msgid "the ABI of passing C structures with zero-width bit-fields has changed in GCC %{12.1%}"
 msgstr "在 GCC 4.4 中传递带有复数浮点成员结构的 ABI 有了改变"
 
-#: config/i386/i386.cc:2633
+#: config/i386/i386.cc:2637
 #, gcc-internal-format
 msgid "SSE register return with SSE disabled"
 msgstr "已禁用 SSE 却在 SSE 寄存器中返回"
 
-#: config/i386/i386.cc:2639
+#: config/i386/i386.cc:2643
 #, gcc-internal-format
 msgid "SSE register argument with SSE disabled"
 msgstr "已禁用 SSE 却在 SSE 寄存器中传递参数"
 
-#: config/i386/i386.cc:2659
+#: config/i386/i386.cc:2663
 #, gcc-internal-format
 msgid "x87 register return with x87 disabled"
 msgstr "已禁用 x87 却在 x87 寄存器中返回"
 
-#: 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
 #, fuzzy, gcc-internal-format
 msgid "calling %qD with SSE calling convention without SSE/SSE2 enabled"
 msgstr "带属性 sseregparm 调用%qD却没有启用 SSE/SSE2"
 
-#: 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
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "the ABI for passing parameters with %d-byte alignment has changed in GCC 4.6"
 msgstr "在 GCC 4.4 中传递有 long double 的联合的 ABI 有改变"
 
-#: config/i386/i386.cc:6519
+#: config/i386/i386.cc:6532
 #, fuzzy, gcc-internal-format
 #| msgid "assert: %s is assign compatible with %s"
 msgid "%<-mcall-ms2sysv-xlogues%> is not compatible with %s"
 msgstr "assert:%s 与 %s 赋值兼容"
 
-#: 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 "ms_hook_prologue 与嵌套函数不兼容"
 
-#: 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 "%qE attribute is not supported on this platform"
+msgid "Stack realignment not supported with %<__builtin_eh_return%>"
+msgstr "%qE属性在此平台上不受支持"
+
+#: config/i386/i386.cc:9463
+#, fuzzy, gcc-internal-format
+#| msgid "nested functions not supported on this target"
+msgid "regparm nested function not supported with %<__builtin_eh_return%>"
+msgstr "嵌套函数在此目标机上不受支持"
+
+#: config/i386/i386.cc:9849
 #, fuzzy, gcc-internal-format
 #| msgid "-fsplit-stack does not support fastcall with nested function"
 msgid "%<-fsplit-stack%> does not support fastcall with nested function"
 msgstr "-fsplit-stack 不支持对嵌套函数使用 fastcall"
 
-#: 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"
 msgid "%<-fsplit-stack%> does not support 2 register parameters for a nested function"
@@ -41837,79 +41875,79 @@ msgstr "-fsplit-stack 不支持在嵌套函数中使用 2 个寄存器参数"
 
 #. 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"
 msgid "%<-fsplit-stack%> does not support 3 register parameters"
 msgstr "-fsplit-stack 不支持 3 个寄存器参数"
 
-#: config/i386/i386.cc:12897
+#: config/i386/i386.cc:12913
 #, gcc-internal-format
 msgid "%<V%> modifier on non-integer register"
 msgstr ""
 
-#: 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 operand size for extended register"
 msgid "unsupported size for integer register"
 msgstr "扩展的寄存器不支持的操作数大小"
 
-#: 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
 #, gcc-internal-format
 msgid "unsupported operand size for extended register"
 msgstr "扩展的寄存器不支持的操作数大小"
 
-#: config/i386/i386.cc:13163
+#: config/i386/i386.cc:13179
 #, fuzzy, gcc-internal-format
 msgid "non-integer operand used with operand code %<z%>"
 msgstr "非整数操作数使用了操作数代码‘%c’"
 
-#: config/i386/i386.cc:17266
+#: config/i386/i386.cc:17210
 #, gcc-internal-format
 msgid "empty class %qT parameter passing ABI changes in %<-fabi-version=12%> (GCC 8)"
 msgstr ""
 
-#: 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 "-mcmodel= is not supported on 32 bit systems"
 msgid "profiling %<-mcmodel=large%> with PIC is not supported"
 msgstr "32 位系统不支持 -mcmodel="
 
-#: config/i386/i386.cc:23273
+#: config/i386/i386.cc:23276
 #, fuzzy, gcc-internal-format
 msgid "unknown architecture specific memory model"
 msgstr "未知的架构‘%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 new%>必须返回%qT"
 
-#: config/i386/i386.cc:23363
+#: config/i386/i386.cc:23366
 #, fuzzy, gcc-internal-format
 msgid "unsupported argument type %qT for simd"
 msgstr "需要类型%qT,但实参的类型为%qT"
 
-#: config/i386/i386.cc:23923
+#: config/i386/i386.cc:23909
 #, fuzzy, gcc-internal-format
 #| msgid "-fdirectives-only is incompatible with -traditional"
 msgid "%<-fexcess-precision=16%> is not compatible with %<-mfpmath=387%>"
@@ -42001,6 +42039,91 @@ msgstr "PRINT_OPERAND:未知的标点‘%c’"
 msgid "%<PRINT_OPERAND%> null pointer"
 msgstr "PRINT_OPERAND 空指针"
 
+#: config/loongarch/loongarch-cpu.cc:111
+#, fuzzy, gcc-internal-format
+msgid "unknown base architecture %<0x%x%>, %qs failed"
+msgstr "不能为%q+D指定对齐"
+
+#: 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 "%qE does not have class type"
+msgid "%qs does not work on a cross compiler"
+msgstr "%qE不是一个类"
+
+#: config/loongarch/loongarch-opts.cc:278
+#, fuzzy, gcc-internal-format
+#| msgid "the %qs architecture does not support %<-m%s=2008%>"
+msgid "your native CPU architecture (%qs) does not support %qs ABI, falling back to %<-m%s=%s%>"
+msgstr "%qs 架构不支持 %<-m%s=2008%>"
+
+#: config/loongarch/loongarch-opts.cc:283
+#, fuzzy, gcc-internal-format
+#| msgid "the %qs architecture does not support %<-m%s=2008%>"
+msgid "default CPU architecture (%qs) does not support %qs ABI, falling back to %<-m%s=%s%>"
+msgstr "%qs 架构不支持 %<-m%s=2008%>"
+
+#: 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 "代码模式 %s 在 PIC 模式下不受支持"
+
 #: config/m32c/m32c-pragma.cc:54
 #, fuzzy, gcc-internal-format
 #| msgid "junk at end of #pragma GCC memregs [0..16]"
@@ -42194,129 +42317,137 @@ msgstr ""
 msgid "argument to %qE attribute is not intstack"
 msgstr "%qE属性的实参不是一个字符串常量"
 
-#: 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
 #, gcc-internal-format
 msgid "cannot handle inconsistent calls to %qs"
 msgstr "无法处理对%qs不一致的调用"
 
-#: config/mips/mips.cc:10995
+#: config/mips/mips.cc:11075
 #, fuzzy, gcc-internal-format
 msgid "the %<interrupt%> attribute requires a MIPS32r2 processor or greater"
 msgstr "%<interrupt%>属性需要 MIPS32r2 处理器"
 
-#: config/mips/mips.cc:10997
+#: config/mips/mips.cc:11077
 #, gcc-internal-format
 msgid "interrupt handlers cannot be MIPS16 functions"
 msgstr "中断处理程序不能是 MIPS16 函数"
 
-#: 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 "实参必须是常数"
 
-#: config/mips/mips.cc:17163
+#: config/mips/mips.cc:17255
 #, fuzzy, gcc-internal-format
 #| msgid "failed to reclaim unneeded function"
 msgid "failed to expand built-in function"
 msgstr "无法收回不需要的函数"
 
-#: config/mips/mips.cc:17294
+#: config/mips/mips.cc:17386
 #, gcc-internal-format
 msgid "built-in function %qE not supported for MIPS16"
 msgstr "MIPS16 不支持内建函数%qE"
 
-#: config/mips/mips.cc:17902
+#: config/mips/mips.cc:17994
 #, gcc-internal-format
 msgid "%qs does not support MIPS16 code"
 msgstr "%qs不支持 MIPS16 代码"
 
-#: config/mips/mips.cc:19709
+#: config/mips/mips.cc:19801
 #, gcc-internal-format
 msgid "MIPS16 PIC for ABIs other than o32 and o64"
 msgstr "MIPS16 PIC 代码的 ABI 不是 o32 或 o64"
 
-#: config/mips/mips.cc:19712
+#: config/mips/mips.cc:19804
 #, fuzzy, gcc-internal-format
 #| msgid "MIPS16 -mxgot code"
 msgid "MIPS16 %<-mxgot%> code"
 msgstr "MIPS16 -mxgot 代码"
 
-#: config/mips/mips.cc:19715
+#: config/mips/mips.cc:19807
 #, fuzzy, gcc-internal-format
 #| msgid "hard-float MIPS16 code for ABIs other than o32 and o64"
 msgid "%<hard-float%> MIPS16 code for ABIs other than o32 and o64"
 msgstr "硬件浮点 MIPS16 代码的 ABI 不是 o32 或 o64"
 
-#: config/mips/mips.cc:19718
+#: config/mips/mips.cc:19810
 #, fuzzy, gcc-internal-format
 #| msgid "Generate MIPS16 code"
 msgid "MSA MIPS16 code"
 msgstr "生成 MIPS16 代码"
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "unsupported combination: %s"
 msgstr "不支持的组合:%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 "%<-%s%>与指定了 %s 处理器的其他架构选项冲突"
 
-#: config/mips/mips.cc:19945
+#: config/mips/mips.cc:20037
 #, gcc-internal-format
 msgid "%<-march=%s%> is not compatible with the selected ABI"
 msgstr "%<-march=%s%>与所选 ABI 不兼容"
 
-#: config/mips/mips.cc:19960
+#: config/mips/mips.cc:20052
 #, gcc-internal-format
 msgid "%<-mgp64%> used with a 32-bit processor"
 msgstr "%<-mgp64%>与 32 位处理器一起使用"
 
-#: config/mips/mips.cc:19962
+#: config/mips/mips.cc:20054
 #, gcc-internal-format
 msgid "%<-mgp32%> used with a 64-bit ABI"
 msgstr "%<-mgp32%>与 64 位 ABI 一起使用"
 
-#: config/mips/mips.cc:19964
+#: config/mips/mips.cc:20056
 #, gcc-internal-format
 msgid "%<-mgp64%> used with a 32-bit ABI"
 msgstr "%<-mgp64%>与 32 位 ABI 一起使用"
 
-#: config/mips/mips.cc:19980
+#: config/mips/mips.cc:20079
 #, gcc-internal-format
 msgid "the %qs architecture does not support %<-mfp32%>"
 msgstr "%qs 架构不支持 %<-mfp32%>"
 
-#: config/mips/mips.cc:19989
+#: config/mips/mips.cc:20088
 #, gcc-internal-format
 msgid "%<-mgp32%> and %<-mfp64%> can only be combined if the target supports the mfhc1 and mthc1 instructions"
 msgstr "%<-mgp32%>和%<-mfp64%>只有当目标机支持 mfhc1 和 mthc1 指令时才能一起使用"
 
-#: config/mips/mips.cc:19992
+#: config/mips/mips.cc:20091
 #, gcc-internal-format
 msgid "%<-mgp32%> and %<-mfp64%> can only be combined when using the o32 ABI"
 msgstr "%<-mgp32%>和%<-mfp64%>只有当使用 o32 ABI 时才能一起使用"
 
-#: 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 "%<-mgp32%>和%<-mfp64%>只有当使用 o32 ABI 时才能一起使用"
 
-#: config/mips/mips.cc:20017
+#: config/mips/mips.cc:20116
 #, fuzzy, gcc-internal-format
 msgid "%<-march=%s%> requires %<-mfp32%>"
 msgstr "%<-march=%s%>与所选 ABI 不兼容"
 
-#: config/mips/mips.cc:20019
+#: config/mips/mips.cc:20118
 #, gcc-internal-format
 msgid "%<-mfpxx%> requires %<-mlra%>"
 msgstr "%<-mfpxx%> 需要 %<-mlra%>"
@@ -42326,119 +42457,119 @@ msgstr "%<-mfpxx%> 需要 %<-mlra%>"
 #. 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 "不兼容的地址空间限定符%qs和%qs"
 
-#: config/mips/mips.cc:20097
+#: config/mips/mips.cc:20196
 #, gcc-internal-format
 msgid "the %qs architecture does not support branch-likely instructions"
 msgstr "%qs架构不支持 Branch-Likely 指令"
 
-#: config/mips/mips.cc:20112
+#: config/mips/mips.cc:20211
 #, gcc-internal-format
 msgid "the %qs architecture does not support madd or msub instructions"
 msgstr "%qs 架构不支持 madd 或 msub 指令"
 
-#: 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 "%qs架构不支持配对单精度指令"
 
-#: 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: %s"
 msgid "unsupported combination: %qs%s %s"
 msgstr "不支持的组合:%s"
 
-#: config/mips/mips.cc:20154
+#: config/mips/mips.cc:20253
 #, fuzzy, gcc-internal-format
 #| msgid "unsupported combination: %s"
 msgid "unsupported combination: %qs %s"
 msgstr "不支持的组合:%s"
 
-#: config/mips/mips.cc:20169
+#: config/mips/mips.cc:20268
 #, fuzzy, gcc-internal-format
 msgid "cannot generate position-independent code for %qs"
 msgstr "尽可能生成与位置无关的代码(大模式)"
 
-#: config/mips/mips.cc:20172
+#: config/mips/mips.cc:20271
 #, fuzzy, gcc-internal-format
 msgid "position-independent code requires %qs"
 msgstr "尽可能生成与位置无关的代码(大模式)"
 
-#: config/mips/mips.cc:20205
+#: config/mips/mips.cc:20304
 #, gcc-internal-format
 msgid "%<-mno-gpopt%> needs %<-mexplicit-relocs%>"
 msgstr "%<-mno-gpopt%>需要%<-mexplicit-relocs%>"
 
-#: config/mips/mips.cc:20213 config/mips/mips.cc:20216
+#: config/mips/mips.cc:20312 config/mips/mips.cc:20315
 #, gcc-internal-format
 msgid "cannot use small-data accesses for %qs"
 msgstr "不能为%qs使用小数据访问"
 
-#: config/mips/mips.cc:20231
+#: config/mips/mips.cc:20330
 #, gcc-internal-format
 msgid "the %qs architecture does not support %<-m%s=legacy%>"
 msgstr "%qs 架构不支持 %<-m%s=legacy%>"
 
-#: config/mips/mips.cc:20238
+#: config/mips/mips.cc:20337
 #, gcc-internal-format
 msgid "the %qs architecture does not support %<-m%s=2008%>"
 msgstr "%qs 架构不支持 %<-m%s=2008%>"
 
-#: config/mips/mips.cc:20256
+#: config/mips/mips.cc:20355
 #, gcc-internal-format
 msgid "%<-mips3d%> requires %<-mpaired-single%>"
 msgstr "%<-mips3d%>需要%<-mpaired-single%>"
 
-#: config/mips/mips.cc:20266
+#: config/mips/mips.cc:20365
 #, gcc-internal-format
 msgid "%qs must be used with %qs"
 msgstr "%qs必须与%qs一起使用"
 
-#: config/mips/mips.cc:20276
+#: config/mips/mips.cc:20375
 #, gcc-internal-format
 msgid "%<-mmsa%> must be used with %<-mfp64%> and %<-mhard-float%>"
 msgstr ""
 
-#: config/mips/mips.cc:20283
+#: config/mips/mips.cc:20382
 #, gcc-internal-format
 msgid "the %qs architecture does not support paired-single instructions"
 msgstr "%qs架构不支持配对单精度指令"
 
-#: config/mips/mips.cc:20292
+#: config/mips/mips.cc:20391
 #, gcc-internal-format
 msgid "%qs requires a target that provides the %qs instruction"
 msgstr "%qs需要一个能提供%qs指令的目标机"
 
-#: config/mips/mips.cc:20303
+#: config/mips/mips.cc:20402
 #, gcc-internal-format
 msgid "the %qs architecture does not support DSP instructions"
 msgstr "%qs 架构不支持 DSP 诸指令"
 
-#: config/mips/mips.cc:20313
+#: config/mips/mips.cc:20412
 #, gcc-internal-format
 msgid "%<-mloongson-mmi%> must be used with %<-mhard-float%>"
 msgstr ""
 
-#: config/mips/mips.cc:20323
+#: config/mips/mips.cc:20422
 #, gcc-internal-format
 msgid "%<-mloongson-ext2%> must be used with %<-mloongson-ext%>"
 msgstr ""
 
-#: config/mips/mips.cc:20429
+#: config/mips/mips.cc:20528
 #, gcc-internal-format
 msgid "%qs requires branch-likely instructions"
 msgstr "%qs需要 Branch-Likely 指令"
 
-#: config/mips/mips.cc:20433
+#: config/mips/mips.cc:20532
 #, gcc-internal-format
 msgid "the %qs architecture does not support the synci instruction"
 msgstr "%qs架构不支持 synci 指令"
 
-#: config/mips/mips.cc:21269
+#: config/mips/mips.cc:21368
 #, gcc-internal-format
 msgid "mips16 function profiling"
 msgstr "mips16 函数取样"
@@ -42731,9 +42862,9 @@ msgstr "%qE属性与 %s 属性冲突"
 msgid "argument to interrupt attribute is unsupported for weak functions"
 msgstr "无法设定中断属性:没有当前函数"
 
-#: 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属性需要一个整常量作为实参"
 
 #: config/msp430/msp430.cc:2757 config/pru/pru.cc:2945
@@ -43103,67 +43234,79 @@ msgstr ""
 msgid "cannot open intermediate ptx file"
 msgstr "无法打开输入文件“%s”"
 
-#: config/nvptx/nvptx.cc:206
+#: config/nvptx/nvptx.cc:207
 #, fuzzy, gcc-internal-format
 msgid "option %s is not supported together with %<-fopenacc%>"
 msgstr "嵌套函数在此目标机上不受支持"
 
-#: 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 "不兼容的地址空间限定符%qs和%qs"
 
-#: 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 "%qE属性在类型上被忽略"
 
-#: config/nvptx/nvptx.cc:5448
+#: config/nvptx/nvptx.cc:5813
 #, fuzzy, gcc-internal-format
 #| msgid "__BELOW100__ attribute not allowed with auto storage class"
 msgid "%qE attribute not allowed with auto storage class"
 msgstr "__BELOW100__ 属性不允许用于自动存储类"
 
-#: 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 "alias definitions not supported in this configuration"
+msgid "weak alias definitions not supported in this configuration"
+msgstr "别名定义在此配置下不受支持"
+
+#: config/nvptx/nvptx.cc:7468
+#, fuzzy, gcc-internal-format
+#| msgid "alias definitions not supported in this configuration"
+msgid "non-function alias definitions not supported in this configuration"
+msgstr "别名定义在此配置下不受支持"
+
 #: config/or1k/or1k.cc:1311
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "unexpected operand"
@@ -43272,11 +43415,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属性需要一个整常量作为实参"
-
 #: config/riscv/riscv.cc:391
 #, fuzzy, gcc-internal-format
 #| msgid "unknown value %qs for -mtune"
@@ -43326,12 +43464,12 @@ msgstr "-mpreferred-stack-boundary=%d 的值不在 %d 和 %d 之间"
 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 "%qs没有指定类名"
 
-#: 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 valid for %qs"
 msgid "%qs is not a valid number in %qs"
@@ -43458,91 +43596,97 @@ msgstr "内建函数%q+D未被声明为函数"
 msgid "%qs requires quad-precision floating-point arithmetic"
 msgstr "生成使用 68881 浮点指令的代码"
 
-#: 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 "%2$qE的实参 %1$d 必须是地址"
 
-#: config/rs6000/rs6000-builtin.cc:2331
+#: config/rs6000/rs6000-builtin.cc:2337
 #, fuzzy, gcc-internal-format
 #| msgid "argument 1 of __builtin_spe_predicate is out of range"
 msgid "argument 1 of %qs is out of range"
 msgstr "__builtin_spe_predicate 的第 1 个实参越界"
 
-#: config/rs6000/rs6000-builtin.cc:2603
+#: config/rs6000/rs6000-builtin.cc:2609
 #, fuzzy, gcc-internal-format
 #| msgid "%s only accepts 1 argument"
 msgid "builtin %qs only accepts a string argument"
 msgstr "%s 只接受 1 个参数"
 
 #. 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 "属性%qs的参数无效"
 
 #. 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 "属性%qs的参数无效"
 
-#: 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 "实参 2 必须是一个 5 位无符号字面量"
 
-#: 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_spe_predicate 的第 1 个实参越界"
 
-#: 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 "%srtd%s 在 64 位模式下被忽略"
 
-#: config/rs6000/rs6000-builtin.cc:3403
+#: config/rs6000/rs6000-builtin.cc:3409
 #, fuzzy, gcc-internal-format
 #| msgid "__builtin_saveregs not supported by this subtarget"
 msgid "%qs not supported with %<-msoft-float%>"
 msgstr "__builtin_saveregs 在此子目标上不受支持"
 
-#: config/rs6000/rs6000-builtin.cc:3410
+#: config/rs6000/rs6000-builtin.cc:3416
 #, fuzzy, gcc-internal-format
 #| msgid "-mcmodel= is not supported on 32 bit systems"
 msgid "%qs is not supported in 32-bit mode"
 msgstr "32 位系统不支持 -mcmodel="
 
-#: 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 "%s does not support %s"
+msgid "%qs requires %<__ibm128%> type support"
+msgstr "%s 不支持 %s"
+
+#: config/rs6000/rs6000-builtin.cc:3584
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Argument of ACOS at %L must be between -1 and 1"
 msgid "argument %d must be a literal between 0 and %d, inclusive"
 msgstr "%L处 ACOS 的参数必须在 -1 和 1 之间"
 
-#: config/rs6000/rs6000-builtin.cc:3572
+#: config/rs6000/rs6000-builtin.cc:3600
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Argument of ACOS at %L must be between -1 and 1"
 msgid "argument %d must be a literal between %d and %d, inclusive"
 msgstr "%L处 ACOS 的参数必须在 -1 和 1 之间"
 
-#: config/rs6000/rs6000-builtin.cc:3589
+#: config/rs6000/rs6000-builtin.cc:3617
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Argument of ACOS at %L must be between -1 and 1"
 msgid "argument %d must be a variable or a literal between %d and %d, inclusive"
 msgstr "%L处 ACOS 的参数必须在 -1 和 1 之间"
 
-#: 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 "实参 2 必须是一个 5 位无符号字面量"
@@ -43579,51 +43723,51 @@ msgstr "数字必须是 0 或 1"
 msgid "junk at end of %<#pragma longcall%>"
 msgstr "#pragma longcall 末尾有垃圾字符"
 
-#: 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 "%s only accepts 1 argument"
 msgid "builtin %qs only accepts 1 argument"
 msgstr "%s 只接受 1 个参数"
 
-#: 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 "%s only accepts 1 argument"
 msgid "builtin %qs only accepts 2 arguments"
 msgstr "%s 只接受 1 个参数"
 
-#: config/rs6000/rs6000-c.cc:1512
+#: config/rs6000/rs6000-c.cc:1520
 #, fuzzy, gcc-internal-format
 #| msgid "%s only accepts 1 argument"
 msgid "builtin %qs only accepts 3 arguments"
 msgstr "%s 只接受 1 个参数"
 
-#: 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 %qs qualifier from pointer target type"
 msgstr "传递%2$qE的第 %1$d 个实参时丢弃了指针目标类型的限定"
 
-#: 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"
 msgid "invalid parameter combination for AltiVec intrinsic %qs"
 msgstr "对 AltiVec 内建函数来说无效的参数组合"
 
-#: 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 "内建函数%q+D未被声明为函数"
 
-#: config/rs6000/rs6000-c.cc:2017
+#: config/rs6000/rs6000-c.cc:2030
 #, fuzzy, gcc-internal-format
 #| msgid "%s is not supported by this configuration"
 msgid "%qs is not supported in this compiler configuration"
@@ -43711,12 +43855,6 @@ msgstr "-m64 需要 PowerPC64 架构,正在启用"
 msgid "%<-mcall-aixdesc%> incompatible with %<-mabi=elfv2%>"
 msgstr "-mcall-aixdesc 与 -mabi=elfv2 不兼容"
 
-#: config/rs6000/rs6000.cc:3515
-#, fuzzy, gcc-internal-format
-#| msgid "-mcmodel incompatible with other toc options"
-msgid "%<-mcmodel incompatible with other toc options%>"
-msgstr "-mcmodel incompatible 与其他 toc 选项不兼容"
-
 #: config/rs6000/rs6000.cc:3536
 #, fuzzy, gcc-internal-format
 msgid "%qs unsupported for this ABI"
@@ -43757,11 +43895,10 @@ msgstr "%qs必须与%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 "%qT referred to as %qs"
 msgid "%qs requires %qs"
@@ -43773,159 +43910,159 @@ msgstr "%qT作为%qs被引用"
 msgid "target attribute or pragma changes %<long double%> size"
 msgstr "目标属性或 pragma 改变了 long double 的大小"
 
-#: config/rs6000/rs6000.cc:4201
+#: config/rs6000/rs6000.cc:4194
 #, gcc-internal-format
 msgid "%qs requires full ISA 2.06 support"
 msgstr ""
 
-#: config/rs6000/rs6000.cc:4214
+#: config/rs6000/rs6000.cc:4207
 #, fuzzy, gcc-internal-format
 #| msgid "using IEEE extended precision long double"
 msgid "Using IEEE extended precision %<long double%>"
 msgstr "使用 IEEE 扩展精度 long double"
 
-#: config/rs6000/rs6000.cc:4217
+#: config/rs6000/rs6000.cc:4210
 #, fuzzy, gcc-internal-format
 #| msgid "using IBM extended precision long double"
 msgid "Using IBM extended precision %<long double%>"
 msgstr "使用 IBM 扩展精度 long double"
 
-#: config/rs6000/rs6000.cc:4236
+#: config/rs6000/rs6000.cc:4229
 #, fuzzy, gcc-internal-format
 #| msgid "%s does not support %s"
 msgid "%qs requires VSX support"
 msgstr "%s 不支持 %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
 #, gcc-internal-format
 msgid "%qs requires full ISA 3.0 support"
 msgstr ""
 
-#: 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 "%2$sveclibabi=%3$s %4$s向量库 ABI 类型(%1$s)未知"
 
-#: config/rs6000/rs6000.cc:4368 config/rs6000/rs6000.cc:4383
+#: config/rs6000/rs6000.cc:4361 config/rs6000/rs6000.cc:4376
 #, gcc-internal-format
 msgid "target attribute or pragma changes AltiVec ABI"
 msgstr "目标属性或 pragma 改变了 AltiVec ABI"
 
-#: config/rs6000/rs6000.cc:4396
+#: config/rs6000/rs6000.cc:4389
 #, gcc-internal-format
 msgid "target attribute or pragma changes darwin64 ABI"
 msgstr "目标属性或 pragma 改变了 darwin64 ABI"
 
-#: config/rs6000/rs6000.cc:4620
+#: config/rs6000/rs6000.cc:4589
 #, fuzzy, gcc-internal-format
 msgid "%qs needs a valid base register"
 msgstr "调用篡改寄存器用作全局寄存器变量"
 
-#: config/rs6000/rs6000.cc:4917
+#: config/rs6000/rs6000.cc:4886
 #, fuzzy, gcc-internal-format
 msgid "unknown option for %<%s=%s%>"
 msgstr "未知的选项:%s %s %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 "已弃用。此开关不起作用。"
 
-#: 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
 #, gcc-internal-format
 msgid "no profiling of 64-bit code for this ABI"
 msgstr "此 ABI 不支持取样 64 位代码"
 
-#: 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 "您无法需地址的嵌套的函数如果您使用 -mno-pointers-to-nested-functions 选项。"
 
-#: config/rs6000/rs6000.cc:20010
+#: config/rs6000/rs6000.cc:20061
 #, gcc-internal-format
 msgid "use of %<long double%> in AltiVec types is invalid"
 msgstr "在 AltiVec 类型中使用%<long double%>无效"
 
-#: config/rs6000/rs6000.cc:20012
+#: config/rs6000/rs6000.cc:20063
 #, gcc-internal-format
 msgid "use of boolean types in AltiVec types is invalid"
 msgstr "在 AltiVec 类型中使用布尔类型无效"
 
-#: config/rs6000/rs6000.cc:20014
+#: config/rs6000/rs6000.cc:20065
 #, gcc-internal-format
 msgid "use of %<complex%> in AltiVec types is invalid"
 msgstr "在 AltiVec 类型中使用%<complex%>无效"
 
-#: 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"
 msgid "use of decimal floating-point types in AltiVec types is invalid"
 msgstr "在 AltiVec 类型中使用十进制浮点类型无效"
 
-#: 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 -mvsx"
 msgid "use of %<long%> in AltiVec types is invalid for 64-bit code without %qs"
 msgstr "不使用 -mvsx 时,在 AltiVec 类型中使用%<long%>对 64 位代码无效"
 
-#: config/rs6000/rs6000.cc:20025
+#: config/rs6000/rs6000.cc:20076
 #, gcc-internal-format
 msgid "use of %<long%> in AltiVec types is deprecated; use %<int%>"
 msgstr "已弃用在 AltiVec 类型中使用%<long%>;请改用%<int%>"
 
-#: 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 -mvsx"
 msgid "use of %<long long%> in AltiVec types is invalid without %qs"
 msgstr "不使用 -mvsx 时,在 AltiVec 类型中使用%<long long%>无效"
 
-#: config/rs6000/rs6000.cc:20033
+#: config/rs6000/rs6000.cc:20084
 #, fuzzy, gcc-internal-format
 #| msgid "use of %<double%> in AltiVec types is invalid without -mvsx"
 msgid "use of %<double%> in AltiVec types is invalid without %qs"
 msgstr "不使用 -mvsx 时,在 AltiVec 类型中使用%<double%>无效"
 
-#: config/rs6000/rs6000.cc:24181
+#: config/rs6000/rs6000.cc:24232
 #, fuzzy, gcc-internal-format
 msgid "invalid cpu %qs for %s%qs%s"
 msgstr "%s:无效的目的:%s\n"
 
-#: config/rs6000/rs6000.cc:24184
+#: config/rs6000/rs6000.cc:24235
 #, fuzzy, gcc-internal-format
 msgid "%s%qs%s is not allowed"
 msgstr "%s:不允许空权字符串"
 
-#: config/rs6000/rs6000.cc:24186
+#: config/rs6000/rs6000.cc:24237
 #, fuzzy, gcc-internal-format
 msgid "%s%qs%s is invalid"
 msgstr "无效的 %s 字组:%s\n"
 
-#: config/rs6000/rs6000.cc:24730
+#: config/rs6000/rs6000.cc:24781
 #, fuzzy, gcc-internal-format
 msgid "%<-mno-%s%> turns off %<-m%s%>"
 msgstr "%<-march=%s%>与所选 ABI 不兼容"
 
-#: 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 "联合成员函数%qD被声明为虚函数"
 
-#: 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 ""
@@ -43941,8 +44078,8 @@ msgid "multiple fast interrupt routines seen: %qE and %qE"
 msgstr "不允许多个中断属性"
 
 #: 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 "无法识别的控制寄存器号:%d - 使用‘psw’"
 
 #: config/rx/rx.cc:2602
@@ -44369,7 +44506,7 @@ msgstr "掩码必须是一个立即数"
 #: config/v850/v850-c.cc:67
 #, fuzzy, gcc-internal-format
 #| msgid "#pragma GHS endXXXX found without previous startXXX"
-msgid "%<#pragma%> GHS endXXXX found without previous startXXX"
+msgid "%<#pragma%> GHS endXXX found without previous startXXX"
 msgstr "#pragma GHS endXXXX 前没有 startXXX"
 
 #: config/v850/v850-c.cc:70
@@ -44694,8 +44831,8 @@ msgstr "语句不起作用"
 msgid "attribute %qs applies to array types only"
 msgstr "%qs属性只能为数组类型使用"
 
-#: 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 "void 值未如预期地被忽略"
@@ -44988,7 +45125,7 @@ msgstr "%q+D的声明隐藏了先前的一个非变量声明"
 msgid "declaration of %qD shadows a parameter"
 msgstr "%q+D的声明隐藏了一个形参"
 
-#: c/c-decl.cc:3062 cp/name-lookup.cc:3332
+#: c/c-decl.cc:3062 cp/name-lookup.cc:3335
 #, gcc-internal-format
 msgid "declaration of %qD shadows a global declaration"
 msgstr "%qD的声明隐藏了一个全局声明"
@@ -44998,7 +45135,7 @@ msgstr "%qD的声明隐藏了一个全局声明"
 msgid "declaration of %qD shadows a previous local"
 msgstr "%qD的声明隐藏了先前的一个局部变量"
 
-#: 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 "被隐藏的声明在这里"
@@ -45066,7 +45203,7 @@ msgstr "%qE未声明(在此函数内第一次使用)"
 msgid "each undeclared identifier is reported only once for each function it appears in"
 msgstr "每个未声明的标识符在其出现的函数内只报告一次"
 
-#: c/c-decl.cc:3852 cp/decl.cc:3289
+#: c/c-decl.cc:3852 cp/decl.cc:3345
 #, gcc-internal-format
 msgid "label %qE referenced outside of any function"
 msgstr "标号%qE在所有函数外被引用"
@@ -45096,7 +45233,7 @@ msgstr "跳转至语句表达式中"
 msgid "duplicate label declaration %qE"
 msgstr "重复的标号定义%qE"
 
-#: c/c-decl.cc:4068 cp/decl.cc:3703
+#: c/c-decl.cc:4068 cp/decl.cc:3759
 #, gcc-internal-format
 msgid "duplicate label %qD"
 msgstr "重复的标号%qD"
@@ -45319,7 +45456,7 @@ msgstr "不能将带有 volatile 字段的对象放入寄存器"
 msgid "uninitialized %<const %D%> is invalid in C++"
 msgstr "未初始化的常量%qD在C++中是无效的"
 
-#: c/c-decl.cc:5684 cp/decl.cc:8434
+#: c/c-decl.cc:5684 cp/decl.cc:8561
 #, gcc-internal-format
 msgid "%q+D in declare target directive does not have mappable type"
 msgstr ""
@@ -45492,7 +45629,7 @@ msgstr "为形参%qE指定了存储类"
 msgid "storage class specified for unnamed parameter"
 msgstr "为无名形参指定了存储类"
 
-#: 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 "为类型名指定了存储类"
@@ -45665,7 +45802,7 @@ msgstr "类型名声明为返回一个数组的函数"
 msgid "function definition has qualified void return type"
 msgstr "函数定义有限定的 void 返回类型"
 
-#: 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 "忽略函数返回类型的类型限定"
@@ -45792,7 +45929,7 @@ msgstr "ISO C 不允许使用 const 或 volatile 限定函数类型"
 msgid "a member of a structure or union cannot have a variably modified type"
 msgstr "结构或联合成员不能具有可变类型"
 
-#: 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 "变量或字段%qE声明为 void"
@@ -45972,7 +46109,7 @@ msgstr "嵌套的%<struct %E%>重定义"
 msgid "defining type in %qs expression is invalid in C++"
 msgstr "C++ 不允许在%qs表达式中定义类型"
 
-#: 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 "没有声明任何东西"
@@ -46022,7 +46159,7 @@ msgstr "结构不包含任何有名成员"
 msgid "struct has no members"
 msgstr "结构体没有成员"
 
-#: 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 "联合和可变数组成员"
@@ -46064,7 +46201,7 @@ msgstr "嵌套的%<enum %E%>重定义"
 msgid "redeclaration of %<enum %E%>"
 msgstr "%<enum %E%>重声明"
 
-#: 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 enumeral values"
 msgid "specified mode too small for enumerated values"
@@ -46095,7 +46232,7 @@ msgstr "枚举值溢出"
 msgid "ISO C restricts enumerator values to range of %<int%>"
 msgstr "ISO C 将枚举值限制在%<int%>范围内"
 
-#: 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 noinline"
 msgid "inline function %qD given attribute %qs"
@@ -46126,7 +46263,7 @@ msgstr "%qD先前没有原型"
 msgid "%qD was used with no prototype before its definition"
 msgstr "使用%qD时先前既没有原型也没有定义"
 
-#: 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先前没有声明"
@@ -46242,12 +46379,12 @@ msgstr "实参%qD与内建原型不符"
 msgid "argument %qD doesn%'t match prototype"
 msgstr "实参%qD与原型不符"
 
-#: 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 "在有返回值的函数中未发现 return 语句"
 
-#: c/c-decl.cc:10326 cp/decl.cc:17884
+#: c/c-decl.cc:10326 cp/decl.cc:18017
 #, gcc-internal-format
 msgid "parameter %qD set but not used"
 msgstr "形参%qD被设定但未被使用"
@@ -46317,7 +46454,7 @@ msgstr "需要指定声明"
 msgid "two or more data types in declaration specifiers"
 msgstr "声明指定了两个以上的数据类型"
 
-#: 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%>对 GCC 来说太长了"
@@ -46469,49 +46606,49 @@ msgstr ""
 msgid "ISO C does not support complex integer types"
 msgstr "ISO C 不支持复整数"
 
-#: 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
 #, fuzzy, gcc-internal-format
 #| msgid "left shift count is negative"
 msgid "left shift of negative value"
 msgstr "左移次数为负"
 
-#: 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 "左移次数为负"
 
-#: 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 "右移次数为负"
 
-#: 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 "左移次数大于或等于类型宽度"
 
-#: 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 "右移次数大于或等于类型宽度"
 
-#: 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 type"
 msgid "left shift count >= width of vector element"
 msgstr "左移次数大于或等于类型宽度"
 
-#: 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 type"
 msgid "right shift count >= width of vector element"
@@ -46532,7 +46669,7 @@ msgstr ""
 msgid "to match this %qs"
 msgstr "没有匹配"
 
-#: c/c-parser.cc:1324 cp/parser.cc:32926
+#: c/c-parser.cc:1324 cp/parser.cc:32932
 #, gcc-internal-format
 msgid "expected end of line"
 msgstr "需要行尾"
@@ -46542,7 +46679,7 @@ msgstr "需要行尾"
 msgid "ISO C forbids an empty translation unit"
 msgstr "ISO C 不允许翻译单元为空"
 
-#: 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 "%<#pragma GCC pop_options%>缺少相应的%<#pragma GCC push_options%>"
@@ -46578,9 +46715,9 @@ msgstr "%qT没有名为%qE的成员"
 msgid "unknown type name %qE"
 msgstr "未知的类型名%qE"
 
-#: 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
 #, gcc-internal-format
 msgid "expected declaration specifiers"
 msgstr "需要指定声明"
@@ -46601,7 +46738,7 @@ msgstr "%q+D不能有 section 属性"
 msgid "expected %<;%>, identifier or %<(%>"
 msgstr "需要标识符或%<(%>"
 
-#: 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 "属性在未初始化类型上被忽略"
@@ -46616,7 +46753,7 @@ msgstr "属性在模板实例化上被忽略"
 msgid "unexpected attribute"
 msgstr "非预期的属性"
 
-#: 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 "section attribute not allowed for %q+D"
 msgid "%<fallthrough%> attribute not followed by %<;%>"
@@ -46655,7 +46792,7 @@ msgstr "文件作用域中出现%<auto%>空声明"
 msgid "%<__auto_type%> may only be used with a single declarator"
 msgstr "%<auto%> 只能被指定的用于变量或函数声明"
 
-#: 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 "需要%<,%>或%<;%>"
@@ -46714,7 +46851,7 @@ msgstr "静态断言中出现非常量条件"
 msgid "static assertion failed: %E"
 msgstr "静态断言错误:%E"
 
-#: c/c-parser.cc:2688 cp/semantics.cc:11177
+#: c/c-parser.cc:2688 cp/semantics.cc:11168
 #, fuzzy, gcc-internal-format
 #| msgid "static assertion failed: %E"
 msgid "static assertion failed"
@@ -46760,17 +46897,17 @@ msgstr "模板第 %d 个参数无效"
 #: 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 "需要标识符"
 
-#: 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 "枚举表以逗号结尾"
@@ -46855,7 +46992,7 @@ msgstr "需要指定声明或%<...%>"
 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属性需要带有名实参的原型"
@@ -46897,7 +47034,7 @@ msgid "ISO C forbids label declarations"
 msgstr "HISO C 不允许标号声明"
 
 #: 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
 #, gcc-internal-format
 msgid "expected declaration or statement"
 msgstr "需要声明或语句"
@@ -46917,7 +47054,7 @@ msgstr "ISO C90 不允许混合使用声明和代码"
 msgid "expected %<}%> before %<else%>"
 msgstr "%<else%>前需要%<}%>"
 
-#: 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%>之前没有%<if%>"
@@ -46932,7 +47069,7 @@ msgstr "标号位于复合语句末尾"
 #. 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
 #, gcc-internal-format
 msgid "expected statement"
 msgstr "需要语句"
@@ -46957,17 +47094,17 @@ msgstr "需要标识符或%<*%>"
 msgid "only attribute %<fallthrough%> can be applied to a null statement"
 msgstr "只能为类定义应用%qE属性"
 
-#: 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 "建议在空的%<if%>语句体周围加上花括号"
 
-#: 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 "建议在空的%<else%>语句体周围加上花括号"
 
-#: 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 "建议显式地使用花括号以避免出现有歧义的%<else%>"
@@ -46987,12 +47124,12 @@ msgstr "不允许多个中断属性"
 msgid "invalid iterating variable in fast enumeration"
 msgstr "此指令中寄存器无效"
 
-#: 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 ""
@@ -47008,8 +47145,8 @@ msgstr "快速枚举在 Objective-C 1.0 里不可用"
 msgid "duplicate %<asm%> qualifier %qE"
 msgstr "重复的 cv 限定"
 
-#: 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 ""
@@ -47025,7 +47162,7 @@ msgstr "需要一个类模板,却给出了%qE"
 msgid "expected %<:%> or %<)%>"
 msgstr "需要 %<,%> 或 %<)%>"
 
-#: c/c-parser.cc:7431 cp/parser.cc:4487
+#: c/c-parser.cc:7431 cp/parser.cc:4485
 #, gcc-internal-format
 msgid "a wide string is invalid in this context"
 msgstr "此上下文中宽字符串无效"
@@ -47038,12 +47175,12 @@ msgstr "ISO C 不允许省略 ?: 表达式中的第二项"
 
 #. 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 "%qD was declared here"
 msgid "first %<sizeof%> operand was declared here"
@@ -47180,8 +47317,8 @@ msgid "ISO C90 does not support %<__func__%> predefined identifier"
 msgstr "ISO C90 不支持 %<__func__%> 预定义标识符"
 
 #: 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 "需要表达式"
@@ -47330,7 +47467,7 @@ msgstr "%<__builtin_complex%>算符无法的真实二进制浮点类型"
 msgid "%<__builtin_complex%> operands of different types"
 msgstr "?: 的操作数类型不一致,分别为%qT和%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 "给函数%<__builtin_next_arg%>的参数数目不对"
@@ -47450,12 +47587,12 @@ msgstr "%C处数组声明需要另外一维"
 msgid "no type or storage class may be specified here,"
 msgstr "为%qs指定了存储类"
 
-#: 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 "不能设置只读属性"
 
-#: c/c-parser.cc:12062 cp/parser.cc:36003
+#: c/c-parser.cc:12062 cp/parser.cc:36009
 #, fuzzy, gcc-internal-format
 #| msgid "missing Code attribute"
 msgid "missing property attribute"
@@ -47466,56 +47603,56 @@ msgstr "缺少 Code 属性"
 msgid "unknown property attribute %<%s%s%>"
 msgstr "不能设置只读属性"
 
-#: 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 "不能设置只读属性"
 
-#: 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 "位置错误的%<@%D%>Objective-C++ 构造"
 
-#: c/c-parser.cc:12124 cp/parser.cc:36063
+#: c/c-parser.cc:12124 cp/parser.cc:36069
 #, fuzzy, gcc-internal-format
 #| msgid "expected selection-statement"
 msgid "expected %qE selector name"
 msgstr "需要选择语句"
 
-#: c/c-parser.cc:12140 cp/parser.cc:36082
+#: c/c-parser.cc:12140 cp/parser.cc:36088
 #, fuzzy, gcc-internal-format
 #| msgid "setter name must terminate with %<:%>"
 msgid "setter method names must terminate with %<:%>"
 msgstr "setter 的名字必须以%<:%>结尾"
 
-#: 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 omp flush%> may only be used in compound statements"
 msgid "%<#pragma %s%> may only be used in compound statements"
 msgstr "%<#pragma omp flush%>只能用在复合语句中"
 
-#: 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 "Objective-C 声明只能出现在全局作用域中"
 
-#: 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 section%> may only be used in %<#pragma omp sections%> construct"
 msgid "%<#pragma omp scan%> may only be used in a loop construct with %<inscan%> %<reduction%> clause"
 msgstr "%<#pragma omp section%>只能用在%<#pragma omp sections%>结构中"
 
-#: c/c-parser.cc:12514 cp/parser.cc:47921
+#: c/c-parser.cc:12514 cp/parser.cc:47927
 #, gcc-internal-format
 msgid "%<#pragma omp section%> may only be used in %<#pragma omp sections%> construct"
 msgstr "%<#pragma omp section%>只能用在%<#pragma omp sections%>结构中"
@@ -47526,23 +47663,23 @@ msgstr "%<#pragma omp section%>只能用在%<#pragma omp sections%>结构中"
 msgid "%<#pragma omp requires%> may only be used at file scope"
 msgstr "%<#pragma omp barrier%>只能用在复合语句中"
 
-#: 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 "需要语句"
 
-#: c/c-parser.cc:12592 cp/parser.cc:47659
+#: c/c-parser.cc:12592 cp/parser.cc:47665
 #, gcc-internal-format
 msgid "%<#pragma GCC pch_preprocess%> must be first"
 msgstr "%<#pragma GCC pch_preprocess%>必须是第一个"
 
-#: 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
 #, gcc-internal-format
 msgid "too many %qs clauses"
 msgstr "太多的%qs子句"
@@ -47552,1006 +47689,1006 @@ msgstr "太多的%qs子句"
 msgid "expression must be integral"
 msgstr "调度块大小表达式必须为整型"
 
-#: 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 %<)%>"
 msgid "expected %<)%> or %<,%>"
 msgstr "需要 %<,%> 或 %<)%>"
 
-#: 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不是一个变量"
 
-#: 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不是一个变量"
 
-#: c/c-parser.cc:13465 cp/parser.cc:37237
+#: c/c-parser.cc:13474 cp/parser.cc:37243
 #, gcc-internal-format
 msgid "collapse argument needs positive constant integer expression"
 msgstr "折叠参数需要正整常量表达式"
 
-#: 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 %<shared%>"
 msgid "expected %<none%> or %<present%>"
 msgstr "需要%<none%>或%<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 %<class%>, %<typename%>, or %<template%>"
 msgid "expected %<none%>, %<shared%>, %<private%> or %<firstprivate%>"
 msgstr "需要%<class%>、%<typename%>或%<template%>"
 
-#: c/c-parser.cc:13683 cp/parser.cc:37429
+#: c/c-parser.cc:13692 cp/parser.cc:37435
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<;%>, %<,%> or %<)%>"
 msgid "expected %<data%>, %<update%>, %<enter%> or %<exit%>"
 msgstr "需要 %<;%>、%<,%> 或 %<)%>"
 
-#: 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 %<catch%>"
 msgid "expected %<data%>"
 msgstr "需要%<catch%>"
 
-#: c/c-parser.cc:13756 cp/parser.cc:37502
+#: c/c-parser.cc:13765 cp/parser.cc:37508
 #, gcc-internal-format
 msgid "too many %<if%> clauses with %qs modifier"
 msgstr ""
 
-#: 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 %qs clauses"
 msgid "too many %<if%> clauses"
 msgstr "太多的%qs子句"
 
-#: 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 %qs clauses"
 msgid "too many %<if%> clauses without modifier"
 msgstr "太多的%qs子句"
 
-#: 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 "需要整数表达式"
 
-#: c/c-parser.cc:13887
+#: c/c-parser.cc:13896
 #, gcc-internal-format
 msgid "%<num_threads%> value must be positive"
 msgstr "%<num_threads%>值必须为正"
 
-#: c/c-parser.cc:13947
+#: c/c-parser.cc:13956
 #, fuzzy, gcc-internal-format
 msgid "%<num_tasks%> value must be positive"
 msgstr "%<num_threads%>值必须为正"
 
-#: 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%>值必须为正"
 
-#: 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 "%<num_threads%>值必须为正"
 
-#: c/c-parser.cc:14090 cp/parser.cc:37743
+#: c/c-parser.cc:14099 cp/parser.cc:37749
 #, fuzzy, gcc-internal-format
 #| msgid "expected integer expression"
 msgid "expected constant integer expression with valid sync-hint value"
 msgstr "需要整数表达式"
 
-#: 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 "启用最小/最大值指令"
 
-#: c/c-parser.cc:14223 cp/parser.cc:37878
+#: c/c-parser.cc:14232 cp/parser.cc:37884
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<class%>, %<typename%>, or %<template%>"
 msgid "expected %<scalar%>, %<aggregate%> or %<pointer%>"
 msgstr "需要%<class%>、%<typename%>或%<template%>"
 
-#: 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 %qs clauses"
 msgid "too many %<defaultmap%> clauses with %qs category"
 msgstr "太多的%qs子句"
 
-#: 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 %qs clauses"
 msgid "too many %<defaultmap%> clauses with unspecified category"
 msgstr "太多的%qs子句"
 
-#: 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 "调度块大小表达式必须为整型"
 
-#: 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%>值必须为正"
 
-#: c/c-parser.cc:14450 cp/parser.cc:37009
+#: c/c-parser.cc:14459 cp/parser.cc:37015
 #, gcc-internal-format
 msgid "too many %<static%> arguments"
 msgstr "太多 %<static%> 参数"
 
-#: c/c-parser.cc:14484 cp/parser.cc:37042
+#: c/c-parser.cc:14493 cp/parser.cc:37048
 #, gcc-internal-format
 msgid "unexpected argument"
 msgstr "非预期的参数"
 
-#: c/c-parser.cc:14651 cp/semantics.cc:8614
+#: c/c-parser.cc:14660 cp/semantics.cc:8605
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute argument not an integer constant"
 msgid "%<tile%> argument needs positive integral constant"
 msgstr "%qE属性需要一个整常量作为实参"
 
-#: 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 "需要%<none%>或%<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 %<new%>"
 msgid "expected %<concurrent%>"
 msgstr "需要%<new%>"
 
-#: c/c-parser.cc:14777 cp/parser.cc:38059
+#: c/c-parser.cc:14786 cp/parser.cc:38065
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<class%>, %<typename%>, or %<template%>"
 msgid "expected %<teams%>, %<parallel%> or %<thread%>"
 msgstr "需要%<class%>、%<typename%>或%<template%>"
 
-#: c/c-parser.cc:14830 cp/parser.cc:38127
+#: c/c-parser.cc:14839 cp/parser.cc:38133
 #, fuzzy, gcc-internal-format
 #| msgid "collapse argument needs positive constant integer expression"
 msgid "ordered argument needs positive constant integer expression"
 msgstr "折叠参数需要正整常量表达式"
 
-#: 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 "需要标识符或%<(%>"
 
-#: c/c-parser.cc:15075 cp/parser.cc:38385
+#: c/c-parser.cc:15084 cp/parser.cc:38391
 #, gcc-internal-format
 msgid "both %<monotonic%> and %<nonmonotonic%> modifiers specified"
 msgstr ""
 
-#: 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 "调度%<runtime%>不接受一个%<chunk_size%>参数"
 
-#: 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 "调度%<auto%>不接受一个%<chunk_size%>参数"
 
-#: 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%>值必须为正"
 
-#: c/c-parser.cc:15168 cp/parser.cc:38424
+#: c/c-parser.cc:15177 cp/parser.cc:38430
 #, gcc-internal-format
 msgid "invalid schedule kind"
 msgstr "无效的调度类型"
 
-#: 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%>值必须为正"
 
-#: 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%>值必须为正"
 
-#: 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 "%H折叠变量需要正整常数表达式"
 
-#: c/c-parser.cc:15526
+#: c/c-parser.cc:15535
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<,%> or %<)%>"
 msgid "expected %<allocator%> or %<align%>"
 msgstr "需要 %<,%> 或 %<)%>"
 
-#: c/c-parser.cc:15533
+#: c/c-parser.cc:15542
 #, fuzzy, gcc-internal-format
 #| msgid "duplicate %qs"
 msgid "duplicate %qs modifier"
 msgstr "重复的%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 "%H折叠变量需要正整常数表达式"
 
-#: c/c-parser.cc:15668
+#: c/c-parser.cc:15677
 #, fuzzy, gcc-internal-format
 msgid "%<linear%> clause step expression must be integral"
 msgstr "调度块大小表达式必须为整型"
 
-#: 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 "%H折叠变量需要正整常数表达式"
 
-#: 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 "%H折叠变量需要正整常数表达式"
 
-#: 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 "%qs必须与%qs一起使用"
 
-#: 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 "无效的调度类型"
 
-#: 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 %qs clauses"
 msgid "too many %<always%> modifiers"
 msgstr "太多的%qs子句"
 
-#: 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 %qs clauses"
 msgid "too many %<close%> modifiers"
 msgstr "太多的%qs子句"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "无效的实型种别 %d,在%C处"
 
-#: 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 %<none%> or %<shared%>"
 msgid "expected %<ancestor%> or %<device_num%>"
 msgstr "需要%<none%>或%<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 "调度块大小表达式必须为整型"
 
-#: 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 "无效的调度类型"
 
-#: c/c-parser.cc:16450
+#: c/c-parser.cc:16459
 #, fuzzy, gcc-internal-format
 msgid "invalid proc_bind kind"
 msgstr "无效的调度类型"
 
-#: c/c-parser.cc:16494
+#: c/c-parser.cc:16503
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<;%>, %<,%> or %<)%>"
 msgid "expected %<host%>, %<nohost%> or %<any%>"
 msgstr "需要 %<;%>、%<,%> 或 %<)%>"
 
-#: 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 "需要%<#pragma omp%>子句"
 
-#: 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
 #, gcc-internal-format
 msgid "%qs is not valid for %qs"
 msgstr "%qs对%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 "%qE在子句%qs中不是一个变量"
 
-#: c/c-parser.cc:17117 cp/parser.cc:40343
+#: c/c-parser.cc:17126 cp/parser.cc:40349
 #, gcc-internal-format
 msgid "expected %<#pragma omp%> clause"
 msgstr "需要%<#pragma omp%>子句"
 
-#: c/c-parser.cc:17250 cp/parser.cc:44561
+#: c/c-parser.cc:17259 cp/parser.cc:44567
 #, gcc-internal-format
 msgid "no valid clauses specified in %<#pragma acc declare%>"
 msgstr ""
 
-#: 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 "%qD的声明隐藏了一个全局声明"
 
-#: 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 "指定链接时使用%qD无效"
 
-#: c/c-parser.cc:17291 cp/parser.cc:44602
+#: c/c-parser.cc:17300 cp/parser.cc:44608
 #, fuzzy, gcc-internal-format
 #| msgid "variably modified field at file scope"
 msgid "invalid OpenACC clause at file scope"
 msgstr "文件域中的动态可变字段"
 
-#: c/c-parser.cc:17298 cp/parser.cc:44609
+#: c/c-parser.cc:17307 cp/parser.cc:44615
 #, fuzzy, gcc-internal-format
 #| msgid "declaration of %<extern%> variable %qD in %<for%> loop initial declaration"
 msgid "invalid use of %<extern%> variable %qD in %<#pragma acc declare%>"
 msgstr "在%<for%>循环初始声明中声明了%<extern%>变量%qD"
 
-#: 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 "指定链接时使用%qD无效"
 
-#: 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 "指定链接时使用%qD无效"
 
-#: c/c-parser.cc:17327 cp/parser.cc:44649
+#: c/c-parser.cc:17336 cp/parser.cc:44655
 #, gcc-internal-format
 msgid "variable %qD used more than once with %<#pragma acc declare%>"
 msgstr ""
 
-#: 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 "%<#pragma message%>后需要一个字符串"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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未声明"
 
-#: c/c-parser.cc:17690
+#: c/c-parser.cc:17699
 #, fuzzy, gcc-internal-format
 #| msgid "expected function"
 msgid "expected function name"
 msgstr "需要函数"
 
-#: c/c-parser.cc:17708 cp/parser.cc:46982
+#: c/c-parser.cc:17717 cp/parser.cc:46988
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a member template function"
 msgid "%qD does not refer to a function"
 msgstr "%qD不是一个成员模板函数"
 
-#: 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 "%<#pragma align%>必须出现在 %D 的声明之前,忽略"
 
-#: 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 "%<#pragma align%>必须出现在 %D 的声明之前,忽略"
 
-#: 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 不允许用在函数中"
 
-#: 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 不允许用在函数中"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: c/c-parser.cc:17902 cp/parser.cc:40440
+#: c/c-parser.cc:17911 cp/parser.cc:40446
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<operator%>"
 msgid "expected %<allocator%>"
 msgstr "需要%<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 vtable no longer supported"
 msgid "%<#pragma omp allocate%> not yet supported"
 msgstr "#pragma vtable 不再受支持"
 
-#: c/c-parser.cc:18075 cp/parser.cc:40592
+#: c/c-parser.cc:18084 cp/parser.cc:40598
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<;%>, %<,%> or %<)%>"
 msgid "expected %<read%>, %<write%>, %<update%>, or %<capture%> clause"
 msgstr "需要 %<;%>、%<,%> 或 %<)%>"
 
-#: c/c-parser.cc:18114 cp/parser.cc:40631
+#: c/c-parser.cc:18123 cp/parser.cc:40637
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<class%>, %<typename%>, or %<template%>"
 msgid "expected %<seq_cst%>, %<acquire%> or %<relaxed%>"
 msgstr "需要%<class%>、%<typename%>或%<template%>"
 
-#: 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 "需要标识符或%<(%>"
 
-#: 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 %qs clauses"
 msgid "too many atomic clauses"
 msgstr "太多的%qs子句"
 
-#: 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 %qs clauses"
 msgid "too many memory order clauses"
 msgstr "太多的%qs子句"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "%qT referred to as %qs"
 msgid "%qs clause requires %qs clause"
 msgstr "%qT作为%qs被引用"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: c/c-parser.cc:18393 cp/parser.cc:40892
+#: c/c-parser.cc:18402 cp/parser.cc:40898
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<;%> after union definition"
 msgid "expected %<==%> comparison in %<if%> condition"
 msgstr "联合定义后需要%<;%>"
 
-#: 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 "%<#pragma omp atomic%>运算符无效"
 
-#: 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 "需要%<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 "%<#pragma omp atomic%>运算符无效"
 
-#: 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 "%<#pragma omp atomic%>运算符无效"
 
-#: 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
 #, gcc-internal-format
 msgid "invalid operator for %<#pragma omp atomic%>"
 msgstr "%<#pragma omp atomic%>运算符无效"
 
-#: 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 "%<# pragma omp 基元的 capture%>使用两不同的变量用于内存"
 
-#: 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 "整型表达式%qE不是常量"
 
-#: c/c-parser.cc:19034 cp/parser.cc:41567
+#: c/c-parser.cc:19043 cp/parser.cc:41573
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<;%>, %<,%> or %<)%>"
 msgid "expected %<in%>, %<out%>, %<inout%> or %<mutexinoutset%>"
 msgstr "需要 %<;%>、%<,%> 或 %<)%>"
 
-#: c/c-parser.cc:19046 cp/parser.cc:41583
+#: c/c-parser.cc:19055 cp/parser.cc:41589
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<;%>, %<,%> or %<)%>"
 msgid "expected %<depend%>, %<destroy%> or %<update%> clause"
 msgstr "需要 %<;%>、%<,%> 或 %<)%>"
 
-#: c/c-parser.cc:19084 cp/parser.cc:41623
+#: c/c-parser.cc:19093 cp/parser.cc:41629
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<class%>, %<typename%>, or %<template%>"
 msgid "expected %<seq_cst%>, %<acq_rel%>, %<release%> or %<acquire%>"
 msgstr "需要%<class%>、%<typename%>或%<template%>"
 
-#: c/c-parser.cc:19092 cp/parser.cc:41631
+#: c/c-parser.cc:19101 cp/parser.cc:41637
 #, gcc-internal-format
 msgid "%<flush%> list specified together with memory order clause"
 msgstr ""
 
-#: c/c-parser.cc:19097
+#: c/c-parser.cc:19106
 #, gcc-internal-format
 msgid "expected %<(%> or end of line"
 msgstr "需要%<(%>或行尾"
 
-#: c/c-parser.cc:19176 cp/parser.cc:42350
+#: c/c-parser.cc:19185 cp/parser.cc:42356
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<none%> or %<shared%>"
 msgid "expected %<inclusive%> or %<exclusive%> clause"
 msgstr "需要%<none%>或%<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%> clause"
 msgid "expected %<#pragma omp scan%>"
 msgstr "需要%<#pragma omp%>子句"
 
-#: c/c-parser.cc:19237 cp/parser.cc:42407
+#: c/c-parser.cc:19246 cp/parser.cc:42413
 #, gcc-internal-format
 msgid "%<ordered%> clause parameter is less than %<collapse%>"
 msgstr ""
 
-#: c/c-parser.cc:19248 cp/parser.cc:42418
+#: c/c-parser.cc:19257 cp/parser.cc:42424
 #, gcc-internal-format
 msgid "%<linear%> clause may not be specified together with %<ordered%> clause with a parameter"
 msgstr ""
 
-#: c/c-parser.cc:19266 cp/parser.cc:42446
+#: c/c-parser.cc:19275 cp/parser.cc:42452
 #, gcc-internal-format
 msgid "for statement expected"
 msgstr "需要 for 语句"
 
-#: 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 "需要迭代声明或初始化"
 
-#: c/c-parser.cc:19430
+#: c/c-parser.cc:19439
 #, gcc-internal-format
 msgid "not enough perfectly nested loops"
 msgstr "不够完美的嵌套循环"
 
-#: c/c-parser.cc:19478 cp/parser.cc:42760
+#: c/c-parser.cc:19487 cp/parser.cc:42766
 #, gcc-internal-format
 msgid "collapsed loops not perfectly nested"
 msgstr "折叠的循环没有完美的嵌套"
 
-#: 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
 #, gcc-internal-format
 msgid "iteration variable %qD should not be firstprivate"
 msgstr "迭代变量%qD不应当是 firstprivate"
 
-#: c/c-parser.cc:19697 cp/parser.cc:42881
+#: c/c-parser.cc:19706 cp/parser.cc:42887
 #, fuzzy, gcc-internal-format
 #| msgid "%<void%> as only parameter may not be qualified"
 msgid "%<ordered%> clause with parameter may not be specified on %qs construct"
 msgstr "%<void%>作为仅有的参数时不能被限定"
 
-#: 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 barrier%> may only be used in compound statements"
 msgid "%<#pragma omp ordered%> with %<depend%> clause may only be used in compound statements"
 msgstr "%<#pragma omp barrier%>只能用在复合语句中"
 
-#: 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 "{ 预期于运算式中 ? 之后"
 
-#: 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 "需要%<;%>"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "%<#pragma align%>必须出现在 %D 的声明之前,忽略"
 
-#: 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 "%<#pragma align%>必须出现在 %D 的声明之前,忽略"
 
-#: c/c-parser.cc:21436 cp/parser.cc:45115
+#: c/c-parser.cc:21445 cp/parser.cc:45121
 #, fuzzy, gcc-internal-format
 #| msgid "expected selection-statement"
 msgid "expected trait selector name"
 msgstr "需要选择语句"
 
-#: 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 只接受 2 个参数"
 
-#: 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 "collapse argument needs positive constant integer expression"
 msgid "score argument must be constant integer expression"
 msgstr "折叠参数需要正整常量表达式"
 
-#: 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 "%qs必须与%qs一起使用"
 
-#: 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 "%H折叠变量需要正整常数表达式"
 
-#: c/c-parser.cc:21613 cp/parser.cc:45305
+#: c/c-parser.cc:21622 cp/parser.cc:45311
 #, fuzzy, gcc-internal-format
 #| msgid "expected string literal"
 msgid "expected identifier or string literal"
 msgstr "需要字面字符串"
 
-#: 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 "expected integer expression"
 msgid "property must be constant integer expression"
 msgstr "需要整数表达式"
 
-#: c/c-parser.cc:21646 cp/parser.cc:45338
+#: c/c-parser.cc:21655 cp/parser.cc:45344
 #, fuzzy, gcc-internal-format
 msgid "properties for %<simd%> selector may not be specified in %<metadirective%>"
 msgstr "内容 %qs 已经指定的在中 %<@synthesize%>"
 
-#: c/c-parser.cc:21733 cp/parser.cc:45424
+#: c/c-parser.cc:21742 cp/parser.cc:45430
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<;%>, %<,%> or %<)%>"
 msgid "expected %<construct%>, %<device%>, %<implementation%> or %<user%>"
 msgstr "需要 %<;%>、%<,%> 或 %<)%>"
 
-#: c/c-parser.cc:21808 cp/parser.cc:45538
+#: c/c-parser.cc:21817 cp/parser.cc:45544
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<catch%>"
 msgid "expected %<match%>"
 msgstr "需要%<catch%>"
 
-#: c/c-parser.cc:21828
+#: c/c-parser.cc:21837
 #, fuzzy, gcc-internal-format
 msgid "variant %qD is not a function"
 msgstr "在函数%qs中"
 
-#: c/c-parser.cc:21834 cp/decl.cc:7778
+#: c/c-parser.cc:21843 cp/decl.cc:7902
 #, fuzzy, gcc-internal-format
 #| msgid "-f%s and -msdata=%s are incompatible"
 msgid "variant %qD and base %qD have incompatible types"
 msgstr "-f%s 和 -msdata=%s 互不兼容"
 
-#: 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 "%<#pragma align%>必须出现在 %D 的声明之前,忽略"
 
-#: 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 "%<#pragma align%>必须出现在 %D 的声明之前,忽略"
 
-#: c/c-parser.cc:22008 cp/parser.cc:45791
+#: c/c-parser.cc:22017 cp/parser.cc:45797
 #, gcc-internal-format
 msgid "%qD specified both in declare target %<link%> and %<to%> clauses"
 msgstr ""
 
-#: 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 "需要%<;%>"
 
-#: 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 "需要%<;%>"
 
-#: 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 "%<#pragma GCC pop_options%>缺少相应的%<#pragma GCC push_options%>"
 
-#: 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 "Objective-C 声明只能出现在全局作用域中"
 
-#: c/c-parser.cc:22194
+#: c/c-parser.cc:22203
 #, gcc-internal-format
 msgid "predeclared arithmetic type in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.cc:22198
+#: c/c-parser.cc:22207
 #, gcc-internal-format
 msgid "function or array type in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.cc:22201
+#: c/c-parser.cc:22210
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> qualified type in %<#pragma omp declare reduction%>"
 msgstr "上一个声明"
 
-#: c/c-parser.cc:22204
+#: c/c-parser.cc:22213
 #, gcc-internal-format
 msgid "const, volatile or restrict qualified type in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: c/c-parser.cc:22212
+#: c/c-parser.cc:22221
 #, gcc-internal-format
 msgid "redeclaration of %qs %<#pragma omp declare reduction%> for type %qT"
 msgstr ""
 
-#: c/c-parser.cc:22221
+#: c/c-parser.cc:22230
 #, fuzzy, gcc-internal-format
 msgid "previous %<#pragma omp declare reduction%>"
 msgstr "上一个声明"
 
-#: c/c-parser.cc:22338
+#: c/c-parser.cc:22347
 #, fuzzy, gcc-internal-format
 msgid "expected %<omp_priv%> or function-name"
 msgstr "需要%<(%>或行尾"
 
-#: c/c-parser.cc:22349
+#: c/c-parser.cc:22358
 #, fuzzy, gcc-internal-format
 msgid "expected function-name %<(%>"
 msgstr "需要函数"
 
-#: 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 "需要%<#pragma omp section%>或%<}%>"
 
-#: c/c-parser.cc:22566 cp/parser.cc:46497
+#: c/c-parser.cc:22575 cp/parser.cc:46503
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<class%>, %<typename%>, or %<template%>"
 msgid "expected %<seq_cst%>, %<relaxed%> or %<acq_rel%>"
 msgstr "需要%<class%>、%<typename%>或%<template%>"
 
-#: 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 "尚未支持代码模式 %<large%>"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: c/c-parser.cc:22670
+#: c/c-parser.cc:22679
 #, fuzzy, gcc-internal-format
 msgid "zero sized type %qT in %<reduction%> clause"
 msgstr "使用了变长数组"
 
-#: c/c-parser.cc:22676
+#: c/c-parser.cc:22685
 #, fuzzy, gcc-internal-format
 msgid "variable sized type %qT in %<reduction%> clause"
 msgstr "使用了变长数组"
 
-#: c/c-parser.cc:22837 cp/parser.cc:46650
+#: c/c-parser.cc:22846 cp/parser.cc:46656
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<;%>, %<,%> or %<)%>"
 msgid "expected %<at%>, %<severity%> or %<message%> clause"
 msgstr "需要 %<;%>、%<,%> 或 %<)%>"
 
-#: c/c-parser.cc:22870 cp/parser.cc:46685
+#: c/c-parser.cc:22879 cp/parser.cc:46691
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<,%> or %<)%>"
 msgid "expected %qs or %qs"
 msgstr "需要 %<,%> 或 %<)%>"
 
-#: 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 barrier%> may only be used in compound statements"
 msgid "%<#pragma omp error%> with %<at(execution)%> clause may only be used in compound statements"
 msgstr "%<#pragma omp barrier%>只能用在复合语句中"
 
-#: c/c-parser.cc:22950 cp/parser.cc:46774
+#: c/c-parser.cc:22959 cp/parser.cc:46780
 #, gcc-internal-format
 msgid "%<pragma omp error%> encountered: %s"
 msgstr ""
 
-#: c/c-parser.cc:22953 cp/parser.cc:46777
+#: c/c-parser.cc:22962 cp/parser.cc:46783
 #, gcc-internal-format
 msgid "%<pragma omp error%> encountered"
 msgstr ""
 
-#: c/c-parser.cc:23100 cp/semantics.cc:9238
+#: c/c-parser.cc:23109 cp/semantics.cc:9229
 #, gcc-internal-format
 msgid "%qE declared %<threadprivate%> after first use"
 msgstr "%qE在其首次使用后被声明为%<threadprivate%>"
 
-#: 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 "自动变量%qE不能是%<threadprivate%>"
 
-#: c/c-parser.cc:23106 cp/semantics.cc:9242
+#: c/c-parser.cc:23115 cp/semantics.cc:9233
 #, gcc-internal-format
 msgid "%<threadprivate%> %qE has incomplete type"
 msgstr "%<threadprivate%>%qE的类型不完全"
 
-#: 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 "%<__transaction_cancel%>而无需 transactional 内存支持已启用"
 
-#: 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 "%<__transaction_cancel%>在之内 %<__transaction_relaxed%>"
 
-#: 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 "%<transaction_may_cancel_outer%> 函数调用无法在之内外异动作业或 %<transaction_may_cancel_outer%>"
 
-#: 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 "%<__transaction_cancel%>无法在之内 %<__transaction_atomic%>"
 
-#: c/c-parser.cc:23392
+#: c/c-parser.cc:23401
 #, fuzzy, gcc-internal-format
 msgid "no closing brace"
 msgstr "括入并行"
@@ -48562,7 +48699,7 @@ msgstr "括入并行"
 msgid "%qD has an incomplete type %qT"
 msgstr "%qD类型不完全"
 
-#: 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 表达式的使用无效"
@@ -48649,13 +48786,13 @@ msgstr "由于%<volatile%>,函数返回类型不兼容"
 msgid "converting an array compound literal to a pointer is ill-formed in C++"
 msgstr "C++ 不允许在组合字面常量中定义类型"
 
-#: 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"
 msgid "%qT has no member named %qE; did you mean %qE?"
 msgstr "%qT没有名为%qE的成员"
 
-#: 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 "%qT没有名为%qE的成员"
@@ -48690,7 +48827,7 @@ msgstr "提领%<void *%>指针"
 msgid "subscripted value is neither array nor pointer nor vector"
 msgstr "下标运算的左操作数既非数组也非指针"
 
-#: 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 "数组下标不是一个整数"
@@ -48715,7 +48852,7 @@ msgstr "ISO C90 不允许非左值的数组作为下标运算的左操作数"
 msgid "enum constant defined here"
 msgstr "枚举常量在此定义"
 
-#: 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 ""
@@ -48830,18 +48967,18 @@ msgstr "C++ 中不允许从%qT到%qT的隐式转换"
 msgid "too few arguments to built-in function %qE expecting %u"
 msgstr "提供给函数%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 "与字面字符串比较的结构是不可预测的"
 
-#: 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 integer"
 msgid "comparison between pointer and zero character constant"
 msgstr "比较指针和整数"
 
-#: 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 "casting %qT to %qT does not dereference pointer"
 msgid "did you mean to dereference the pointer?"
@@ -48867,7 +49004,7 @@ msgstr "函数指针不能相减"
 msgid "arithmetic on pointer to an incomplete type"
 msgstr "在指向不完全类型的指针上执行算术运算"
 
-#: 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 "在指向不完全类型的指针上执行算术运算"
@@ -49084,7 +49221,7 @@ msgstr "%qD在此声明"
 msgid "left-hand operand of comma expression has no effect"
 msgstr "逗号表达式的左操作数不起作用"
 
-#: 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 "逗号表达式的左操作数不起作用"
@@ -49159,7 +49296,7 @@ msgstr "将一个指针转换为大小不同的整数"
 msgid "cast from function call of type %qT to non-matching type %qT"
 msgstr "从类型为%qT的函数调用转换到不匹配的类型%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 "将一个整数转换为大小不同的指针"
@@ -49340,7 +49477,7 @@ msgstr "赋值的左手边可能是 format 属性的备选时"
 msgid "initialization left-hand side might be a candidate for a format attribute"
 msgstr "初始化的左手边可能是 format 属性的备选时"
 
-#: c/c-typeck.cc:7317 cp/typeck.cc:9935
+#: c/c-typeck.cc:7317 cp/typeck.cc:9949
 #, gcc-internal-format
 msgid "return type might be a candidate for a format attribute"
 msgstr "返回类型可能是 format 属性的备选"
@@ -49525,7 +49662,7 @@ msgstr "将%qT返回为%qT时类型不兼容"
 msgid "traditional C rejects automatic aggregate initialization"
 msgstr "传统 C 不接受自动的聚合初始化"
 
-#: 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 "对可变数组成员的初始化"
@@ -49540,13 +49677,13 @@ msgstr ""
 msgid "array of inappropriate type initialized from string constant"
 msgstr "用字符串常量初始化的数组类型不合适"
 
-#: c/c-typeck.cc:8151 cp/typeck.cc:2371
+#: c/c-typeck.cc:8151 cp/typeck.cc:2380
 #, gcc-internal-format
 msgid "invalid use of non-lvalue array"
 msgstr "对非左值数组的使用无效"
 
 #: 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 "初始值设定元素不是常量"
@@ -49556,12 +49693,12 @@ msgstr "初始值设定元素不是常量"
 msgid "array initialized from non-constant array expression"
 msgstr "用非常量的数组表达式初始化数组"
 
-#: 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 "初始值设定中元素不是常量表达式"
 
-#: 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 "初始值设定中的元素在载入时无法被计算出"
@@ -49571,864 +49708,864 @@ msgstr "初始值设定中的元素在载入时无法被计算出"
 msgid "invalid initializer"
 msgstr "无效的初始值设定"
 
-#: 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 "不透明的向量类型不能被初始化"
 
-#: c/c-typeck.cc:8772
+#: c/c-typeck.cc:8774
 #, gcc-internal-format
 msgid "extra brace group at end of initializer"
 msgstr "初始值设定项末尾有多余的花括号组"
 
-#: c/c-typeck.cc:8855
+#: c/c-typeck.cc:8857
 #, gcc-internal-format
 msgid "braces around scalar initializer"
 msgstr "标量初始化带花括号"
 
-#: 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 "在嵌套的上下文中初始化可变数组成员"
 
-#: c/c-typeck.cc:8958
+#: c/c-typeck.cc:8960
 #, gcc-internal-format
 msgid "missing braces around initializer"
 msgstr "初始值设定周围缺少花括号"
 
-#: c/c-typeck.cc:8981
+#: c/c-typeck.cc:8983
 #, fuzzy, gcc-internal-format
 msgid "missing initializer for field %qD of %qT"
 msgstr "成员%qD缺少初始值设定"
 
-#: c/c-typeck.cc:9005
+#: c/c-typeck.cc:9007
 #, gcc-internal-format
 msgid "empty scalar initializer"
 msgstr "空的标量初始值设定项"
 
-#: c/c-typeck.cc:9010
+#: c/c-typeck.cc:9012
 #, gcc-internal-format
 msgid "extra elements in scalar initializer"
 msgstr "标量初始值设定中有多余元素"
 
-#: 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 "在非数组初始值设定项中出现数组索引"
 
-#: c/c-typeck.cc:9134 c/c-typeck.cc:9273
+#: c/c-typeck.cc:9136 c/c-typeck.cc:9275
 #, gcc-internal-format
 msgid "field name not in record or union initializer"
 msgstr "字段名不在记录或联合初始值设定中"
 
-#: c/c-typeck.cc:9184
+#: c/c-typeck.cc:9186
 #, gcc-internal-format
 msgid "array index in initializer not of integer type"
 msgstr "初始值设定中数组索引不是整型"
 
-#: 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 "初始值设定中数组索引不是整型常量表达式"
 
-#: 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 "初始值设定中数组索引不是常数"
 
-#: 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 "初始化时数组索引越界"
 
-#: c/c-typeck.cc:9235
+#: c/c-typeck.cc:9237
 #, gcc-internal-format
 msgid "empty index range in initializer"
 msgstr "初始值设定项中索引范围为空"
 
-#: c/c-typeck.cc:9244
+#: c/c-typeck.cc:9246
 #, gcc-internal-format
 msgid "array index range in initializer exceeds array bounds"
 msgstr "初始值设定中数据索引范围超出数组边界"
 
-#: 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
 #, gcc-internal-format
 msgid "initialized field with side-effects overwritten"
 msgstr "带副作用的字段初始值设定被覆盖"
 
-#: 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 "已初始化的字段被覆盖"
 
-#: c/c-typeck.cc:9854
+#: c/c-typeck.cc:9856
 #, gcc-internal-format
 msgid "enum conversion in initialization is invalid in C++"
 msgstr "C++ 禁止在初始化时进行枚举转换"
 
-#: c/c-typeck.cc:10235
+#: c/c-typeck.cc:10237
 #, fuzzy, gcc-internal-format
 #| msgid "excess elements in char array initializer"
 msgid "excess elements in %<char%> array initializer"
 msgstr "字符数组初始值设定项中有多余元素"
 
-#: 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 "结构初始值设定项中有多余元素"
 
-#: c/c-typeck.cc:10263
+#: c/c-typeck.cc:10265
 #, gcc-internal-format
 msgid "positional initialization of field in %<struct%> declared with %<designated_init%> attribute"
 msgstr ""
 
-#: 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 "对可变数组成员非静态地初始化"
 
-#: c/c-typeck.cc:10429
+#: c/c-typeck.cc:10431
 #, gcc-internal-format
 msgid "excess elements in union initializer"
 msgstr "联合初始值设定项中有多余元素"
 
-#: c/c-typeck.cc:10451
+#: c/c-typeck.cc:10453
 #, gcc-internal-format
 msgid "traditional C rejects initialization of unions"
 msgstr "传统 C 不接受对联合的初始化"
 
-#: c/c-typeck.cc:10513
+#: c/c-typeck.cc:10515
 #, gcc-internal-format
 msgid "excess elements in array initializer"
 msgstr "数组初始值设定项中有多余的元素"
 
-#: c/c-typeck.cc:10547
+#: c/c-typeck.cc:10549
 #, gcc-internal-format
 msgid "excess elements in vector initializer"
 msgstr "向量初始值设定项中有多余元素"
 
-#: c/c-typeck.cc:10579
+#: c/c-typeck.cc:10581
 #, gcc-internal-format
 msgid "excess elements in scalar initializer"
 msgstr "标量初始值设定项中有多余元素"
 
-#: c/c-typeck.cc:10822
+#: c/c-typeck.cc:10824
 #, gcc-internal-format
 msgid "ISO C forbids %<goto *expr;%>"
 msgstr "ISO C++ 不允许%<goto *expr;%>"
 
-#: c/c-typeck.cc:10828
+#: c/c-typeck.cc:10830
 #, fuzzy, gcc-internal-format
 msgid "computed goto must be pointer type"
 msgstr "%2$qE的实参 %1$d 必须是地址"
 
-#: 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%>的函数却有%<return%>语句"
 
-#: 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%>不带返回值"
 
-#: 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%>带返回值"
 
-#: 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 不允许在无返回值的函数中%<return%>带返回值"
 
-#: c/c-typeck.cc:10983
+#: c/c-typeck.cc:10985
 #, fuzzy, gcc-internal-format
 msgid "function returns address of label"
 msgstr "函数返回局部变量的地址"
 
-#: c/c-typeck.cc:11074 cp/semantics.cc:1495
+#: c/c-typeck.cc:11076 cp/semantics.cc:1495
 #, gcc-internal-format
 msgid "switch quantity not an integer"
 msgstr "switch 语句中的值不是一个整数"
 
-#: 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 "在 ISO C 中,%<long%>开关表达式不被转换为%<int%>"
 
-#: 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 标号不是一个整数常量表达式"
 
-#: c/c-typeck.cc:11151 cp/parser.cc:12644
+#: c/c-typeck.cc:11153 cp/parser.cc:12638
 #, gcc-internal-format
 msgid "case label not within a switch statement"
 msgstr "case 标号出现在开关语句外"
 
-#: c/c-typeck.cc:11153
+#: c/c-typeck.cc:11155
 #, gcc-internal-format
 msgid "%<default%> label not within a switch statement"
 msgstr "%<default%>标号未出现在 switch 语句内"
 
-#: 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 语句不在循环或开关语句内"
 
-#: 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
 #, gcc-internal-format
 msgid "invalid exit from OpenMP structured block"
 msgstr "OpenMP 结构块出口无效"
 
-#: c/c-typeck.cc:11235 cp/parser.cc:14262
+#: c/c-typeck.cc:11237 cp/parser.cc:14256
 #, gcc-internal-format
 msgid "break statement used with OpenMP for loop"
 msgstr "OpenMP for 循环中使用了 break 语句"
 
-#: 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 语句出现在循环以外"
 
-#: 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 "语句不起作用"
 
-#: c/c-typeck.cc:11333
+#: c/c-typeck.cc:11335
 #, gcc-internal-format
 msgid "expression statement has incomplete type"
 msgstr "表达式语句类型不完全"
 
-#: 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 "比较将一律评估作为 %<false%> 用于地址的 %qD 将永不是空值"
 
-#: 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 "比较将一律评估作为 %<true%> 用于地址的 %qD 将永不是空值"
 
-#: 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 "比较将一律评估作为 %<false%> 用于地址的 %qD 将永不是空值"
 
-#: 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 "比较将一律评估作为 %<true%> 用于地址的 %qD 将永不是空值"
 
-#: 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 "对不同枚举类型之间的比较给出警告"
 
-#: 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 "形参数量不同"
 
-#: 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 "在类型%qT和%qT间比较"
 
-#: 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 "找不到类%qE的接口"
 
-#: 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"
 msgid "comparing floating-point with %<==%> or %<!=%> is unsafe"
 msgstr "使用 == 或 != 比较浮点数是不安全的"
 
-#: c/c-typeck.cc:12355 c/c-typeck.cc:12484
+#: c/c-typeck.cc:12358 c/c-typeck.cc:12487
 #, gcc-internal-format
 msgid "comparison of pointers to disjoint address spaces"
 msgstr "比较指向不相交的地址空间的指针"
 
-#: 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 不允许在%<void *%>和函数指针间比较"
 
-#: c/c-typeck.cc:12375 c/c-typeck.cc:12494
+#: c/c-typeck.cc:12378 c/c-typeck.cc:12497
 #, gcc-internal-format
 msgid "comparison of distinct pointer types lacks a cast"
 msgstr "比较不相关的指针时缺少类型转换"
 
-#: 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 "比较指针和整数"
 
-#: c/c-typeck.cc:12472
+#: c/c-typeck.cc:12475
 #, gcc-internal-format
 msgid "comparison of complete and incomplete pointers"
 msgstr "在完全和不完全指针间比较"
 
-#: 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 不允许函数指针间比较大小"
 
-#: c/c-typeck.cc:12479
+#: c/c-typeck.cc:12482
 #, fuzzy, gcc-internal-format
 msgid "ordered comparison of pointer with null pointer"
 msgstr "指针与整数 0 比较大小"
 
-#: 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 "指针与整数 0 比较大小"
 
-#: 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 "C++ 中不允许从%qT到%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 "需要标量时使用了不能被转换为指针的数组"
 
-#: c/c-typeck.cc:12913
+#: c/c-typeck.cc:12916
 #, gcc-internal-format
 msgid "used struct type value where scalar is required"
 msgstr "需要标量时使用了结构类型"
 
-#: c/c-typeck.cc:12917
+#: c/c-typeck.cc:12920
 #, gcc-internal-format
 msgid "used union type value where scalar is required"
 msgstr "需要标量时使用了联合类型"
 
-#: c/c-typeck.cc:12933
+#: c/c-typeck.cc:12936
 #, fuzzy, gcc-internal-format
 msgid "used vector type where scalar is required"
 msgstr "需要标量时使用了联合类型"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "{ 预期于运算式中 ? 之后"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "字段%qE的类型不完全"
 
-#: 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 "字段%qE的类型不完全"
 
-#: 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 "%qD is not a member template function"
 msgid "%qE is a member of a union"
 msgstr "%qD不是一个成员模板函数"
 
-#: 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 "字段%qE的类型不完全"
 
-#: 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 "%qD在子句%qs中不是一个变量"
 
-#: 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 "%qE在子句%qs中不是一个变量"
 
-#: c/c-typeck.cc:13297
+#: c/c-typeck.cc:13300
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> %qD in %qs clause"
 msgstr "字段%qE的类型不完全"
 
-#: 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 "%qD在子句%qs中不是一个变量"
 
-#: 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 "数组 new 的大小必须有整数类型"
 
-#: 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 "数组 new 的大小必须有整数类型"
 
-#: 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 "%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 "使用了变长数组"
 
-#: c/c-typeck.cc:13411 cp/semantics.cc:5244
+#: c/c-typeck.cc:13414 cp/semantics.cc:5235
 #, gcc-internal-format
 msgid "for unknown bound array type length expression must be specified"
 msgstr ""
 
-#: c/c-typeck.cc:13419 cp/semantics.cc:5252
+#: c/c-typeck.cc:13422 cp/semantics.cc:5243
 #, gcc-internal-format
 msgid "negative low bound in array section in %qs clause"
 msgstr ""
 
-#: 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 "使用了变长数组"
 
-#: c/c-typeck.cc:13445 cp/semantics.cc:5278
+#: c/c-typeck.cc:13448 cp/semantics.cc:5269
 #, gcc-internal-format
 msgid "low bound %qE above array section size in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13488 cp/semantics.cc:5321
+#: c/c-typeck.cc:13491 cp/semantics.cc:5312
 #, gcc-internal-format
 msgid "length %qE above array section size in %qs clause"
 msgstr ""
 
-#: c/c-typeck.cc:13503 cp/semantics.cc:5336
+#: c/c-typeck.cc:13506 cp/semantics.cc:5327
 #, gcc-internal-format
 msgid "high bound %qE above array section size in %qs clause"
 msgstr ""
 
-#: 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 "for 循环増量表达式不起作用"
 
-#: 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 "for 循环増量表达式不起作用"
 
-#: 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 "在过程入口处将数组段复制到一个连续的块中"
 
-#: 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不是一个类"
 
-#: c/c-typeck.cc:13968 cp/semantics.cc:6512
+#: c/c-typeck.cc:13971 cp/semantics.cc:6503
 #, fuzzy, gcc-internal-format
 #| msgid "throwing NULL, which has integral, not pointer type"
 msgid "iterator %qD has neither integral nor pointer type"
 msgstr "抛出 NULL,它的类型是整数而不是指针"
 
-#: c/c-typeck.cc:13975
+#: c/c-typeck.cc:13978
 #, fuzzy, gcc-internal-format
 msgid "iterator %qD has %<_Atomic%> qualified type"
 msgstr "%<#pragma omp atomic%>表达式类型无效"
 
-#: c/c-typeck.cc:13981 cp/semantics.cc:6519
+#: c/c-typeck.cc:13984 cp/semantics.cc:6510
 #, fuzzy, gcc-internal-format
 #| msgid "parameter %qD has incomplete type"
 msgid "iterator %qD has const qualified type"
 msgstr "形参%qD类型不完全"
 
-#: c/c-typeck.cc:13994 cp/semantics.cc:6535
+#: c/c-typeck.cc:13997 cp/semantics.cc:6526
 #, fuzzy, gcc-internal-format
 #| msgid "bit-field %qD with non-integral type"
 msgid "iterator step with non-integral type"
 msgstr "位段%qD非整型"
 
-#: c/c-typeck.cc:14014 cp/semantics.cc:6571
+#: c/c-typeck.cc:14017 cp/semantics.cc:6562
 #, gcc-internal-format
 msgid "iterator %qD has zero step"
 msgstr ""
 
-#: c/c-typeck.cc:14041
+#: c/c-typeck.cc:14044
 #, gcc-internal-format
 msgid "type of iterator %qD refers to outer iterator %qD"
 msgstr ""
 
-#: c/c-typeck.cc:14048 cp/semantics.cc:6605
+#: c/c-typeck.cc:14051 cp/semantics.cc:6596
 #, fuzzy, gcc-internal-format
 #| msgid "invalid type for iteration variable %qE"
 msgid "begin expression refers to outer iterator %qD"
 msgstr "迭代变量%qE类型无效"
 
-#: c/c-typeck.cc:14054 cp/semantics.cc:6611
+#: c/c-typeck.cc:14057 cp/semantics.cc:6602
 #, fuzzy, gcc-internal-format
 #| msgid "invalid type for iteration variable %qE"
 msgid "end expression refers to outer iterator %qD"
 msgstr "迭代变量%qE类型无效"
 
-#: c/c-typeck.cc:14060 cp/semantics.cc:6617
+#: c/c-typeck.cc:14063 cp/semantics.cc:6608
 #, fuzzy, gcc-internal-format
 #| msgid "invalid type for iteration variable %qE"
 msgid "step expression refers to outer iterator %qD"
 msgstr "迭代变量%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"
 msgid "expected pointer in %qs clause"
 msgstr "需要指针"
 
-#: 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 "尚未支持代码模式 %<large%>"
 
-#: 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 "尚未支持代码模式 %<large%>"
 
-#: 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 "向量 delete 的实参类型既非指针也非数组"
 
-#: c/c-typeck.cc:14263
+#: c/c-typeck.cc:14266
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> %qE in %<reduction%> clause"
 msgstr "调用了有限定 void 返回类型的函数"
 
-#: c/c-typeck.cc:14275
+#: c/c-typeck.cc:14278
 #, fuzzy, gcc-internal-format
 msgid "zero sized type %qT in %qs clause"
 msgstr "字段%qE的类型不完全"
 
-#: c/c-typeck.cc:14283
+#: c/c-typeck.cc:14286
 #, fuzzy, gcc-internal-format
 msgid "variable sized type %qT in %qs clause"
 msgstr "字段%qE的类型不完全"
 
-#: c/c-typeck.cc:14327
+#: c/c-typeck.cc:14330
 #, gcc-internal-format
 msgid "%qE has invalid type for %<reduction(%s)%>"
 msgstr "%qE的类型对%<reduction(%s)%>无效"
 
-#: 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 "用户定义的%qD总是计算所有两个参数"
 
-#: c/c-typeck.cc:14424
+#: c/c-typeck.cc:14427
 #, fuzzy, gcc-internal-format
 msgid "variable length element type in array %<reduction%> clause"
 msgstr "使用了变长数组"
 
-#: 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
 #, gcc-internal-format
 msgid "%<nowait%> clause must not be used together with %<copyprivate%>"
 msgstr ""
 
-#: c/c-typeck.cc:14454 cp/semantics.cc:8923
+#: c/c-typeck.cc:14457 cp/semantics.cc:8914
 #, gcc-internal-format
 msgid "%qE must be %<threadprivate%> for %<copyin%>"
 msgstr "%qE必须是%<threadprivate%>方可%<copyin%>"
 
-#: c/c-typeck.cc:14468 cp/semantics.cc:6807
+#: c/c-typeck.cc:14471 cp/semantics.cc:6798
 #, gcc-internal-format
 msgid "modifier should not be specified in %<linear%> clause on %<simd%> or %<for%> constructs"
 msgstr ""
 
-#: 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
 #, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<linear%> clause"
 msgstr ""
 
-#: 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 "向量 delete 的实参类型既非指针也非数组"
 
-#: 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
 #, gcc-internal-format
 msgid "%qE is not a variable in clause %qs"
 msgstr "%qE在子句%qs中不是一个变量"
 
-#: 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 clauses"
 msgid "%qD appears more than once in data-sharing clauses"
 msgstr "%qD在数据子句中多次出现"
 
-#: 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 "%qD在数据子句中多次出现"
 
-#: 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
 #, gcc-internal-format
 msgid "%qE appears more than once in data clauses"
 msgstr "%qE在数据子句中多次出现"
 
-#: 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
 #, gcc-internal-format
 msgid "%qD appears more than once in data clauses"
 msgstr "%qD在数据子句中多次出现"
 
-#: 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 "%qD在数据子句中多次出现"
 
-#: c/c-typeck.cc:14634 cp/semantics.cc:7101
+#: c/c-typeck.cc:14637 cp/semantics.cc:7092
 #, gcc-internal-format
 msgid "%qE is not a variable in clause %<firstprivate%>"
 msgstr "%qE在子句%<firstprivate%>中不是一个变量"
 
-#: c/c-typeck.cc:14673 cp/semantics.cc:7160
+#: c/c-typeck.cc:14676 cp/semantics.cc:7151
 #, gcc-internal-format
 msgid "%qE is not a variable in clause %<lastprivate%>"
 msgstr "%qE在子句%<lastprivate%>中不是一个变量"
 
-#: 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 "%qE在子句%<firstprivate%>中不是一个变量"
 
-#: 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 "向量 delete 的实参类型既非指针也非数组"
 
-#: c/c-typeck.cc:14706
+#: c/c-typeck.cc:14709
 #, fuzzy, gcc-internal-format
 msgid "%<_Atomic%> %qD in %<aligned%> clause"
 msgstr "%qD在%<lastprivate%>子句中不是一个变量"
 
-#: c/c-typeck.cc:14713
+#: c/c-typeck.cc:14716
 #, fuzzy, gcc-internal-format
 msgid "%qE appears more than once in %<aligned%> clauses"
 msgstr "%qE在数据子句中多次出现"
 
-#: 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 "%qE在子句%<lastprivate%>中不是一个变量"
 
-#: c/c-typeck.cc:14732
+#: c/c-typeck.cc:14735
 #, fuzzy, gcc-internal-format
 msgid "%qE appears more than once in %<nontemporal%> clauses"
 msgstr "%qE在数据子句中多次出现"
 
-#: 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 "%qE在子句%<firstprivate%>中不是一个变量"
 
-#: c/c-typeck.cc:14751
+#: c/c-typeck.cc:14754
 #, fuzzy, gcc-internal-format
 msgid "%qE appears more than once in %<allocate%> clauses"
 msgstr "%qE在数据子句中多次出现"
 
-#: c/c-typeck.cc:14824 cp/semantics.cc:7794
+#: c/c-typeck.cc:14827 cp/semantics.cc:7785
 #, gcc-internal-format
 msgid "%<depend%> clause with %<depobj%> dependence type on array section"
 msgstr ""
 
-#: 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 "%qE在子句%<lastprivate%>中不是一个变量"
 
-#: c/c-typeck.cc:14856 cp/semantics.cc:7835
+#: c/c-typeck.cc:14859 cp/semantics.cc:7826
 #, gcc-internal-format
 msgid "%qE does not have %<omp_depend_t%> type in %<depend%> clause with %<depobj%> dependence type"
 msgstr ""
 
-#: c/c-typeck.cc:14866 cp/semantics.cc:7847
+#: c/c-typeck.cc:14869 cp/semantics.cc:7838
 #, gcc-internal-format
 msgid "%qE should not have %<omp_depend_t%> type in %<depend%> clause with dependence type other than %<depobj%>"
 msgstr ""
 
-#: c/c-typeck.cc: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 "在 %L 处的推迟数组“%1$s”在初始化表达式中不被允许"
 
-#: 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 "%qD在数据子句中多次出现"
 
-#: 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 "%qD在数据子句中多次出现"
 
-#: 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 "%qD在子句%qs中不是一个变量"
 
-#: 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 "%qD在子句%qs中不是一个变量"
 
-#: 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 not a variable in clause %qs"
 msgid "%qE is neither a variable nor a function name in clause %qs"
 msgstr "%qE在子句%qs中不是一个变量"
 
-#: 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 "%qE在数据子句中多次出现"
 
-#: 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 "%qD在%<lastprivate%>子句中不是一个变量"
 
-#: 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 "%qE在子句%<lastprivate%>中不是一个变量"
 
-#: c/c-typeck.cc:15289
+#: c/c-typeck.cc:15292
 #, fuzzy, gcc-internal-format
 #| msgid "source is not a pointer"
 msgid "%qs variable is not a pointer"
 msgstr "源不是一个指针"
 
-#: 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 "向量 delete 的实参类型既非指针也非数组"
 
-#: 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 "-frepo must be used with -c"
 msgid "%<order%> clause must not be used together with %<ordered%>"
 msgstr "-frepo 必须与 -c 一起使用"
 
-#: 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"
 msgid "too many %qs clauses on a task construct"
 msgstr "太多的%qs子句"
 
-#: c/c-typeck.cc:15459 cp/semantics.cc:8643
+#: c/c-typeck.cc:15462 cp/semantics.cc:8634
 #, gcc-internal-format
 msgid "%<inbranch%> clause is incompatible with %<notinbranch%>"
 msgstr ""
 
-#: c/c-typeck.cc:15526 cp/semantics.cc:8994
+#: c/c-typeck.cc:15529 cp/semantics.cc:8985
 #, gcc-internal-format
 msgid "%qE is predetermined %qs for %qs"
 msgstr "%qE可被预先确定为%qs,为%qs"
 
-#: 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
 #, gcc-internal-format
 msgid "%<nonmonotonic%> schedule modifier specified together with %<ordered%> clause"
 msgstr ""
 
-#: 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 "使用了变长数组"
 
-#: c/c-typeck.cc:15634 cp/semantics.cc:8749
+#: c/c-typeck.cc:15637 cp/semantics.cc:8740
 #, gcc-internal-format
 msgid "%<linear%> clause step is a parameter %qD not specified in %<uniform%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:15685 cp/semantics.cc:8799
+#: c/c-typeck.cc:15688 cp/semantics.cc:8790
 #, gcc-internal-format
 msgid "%<nogroup%> clause must not be used together with %<reduction%> clause"
 msgstr ""
 
-#: c/c-typeck.cc:15695 cp/semantics.cc:8828
+#: c/c-typeck.cc:15698 cp/semantics.cc:8819
 #, gcc-internal-format
 msgid "%<detach%> clause must not be used together with %<mergeable%> clause"
 msgstr ""
 
-#: 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
 #, gcc-internal-format
 msgid "cannot use %<va_arg%> with reverse storage order"
 msgstr ""
 
-#: c/c-typeck.cc:15892
+#: c/c-typeck.cc:15895
 #, fuzzy, gcc-internal-format
 #| msgid "first argument to %<va_arg%> not of type %<va_list%>"
 msgid "second argument to %<va_arg%> is of incomplete type %qT"
 msgstr "给%<va_arg%>的第一个参数的类型不是%<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 "C++ 在%<va_arg%>中需要提升后的类型而不是枚举"
@@ -50455,202 +50592,207 @@ msgstr "需要函数"
 msgid "edge not found"
 msgstr "找不到字段%qs。"
 
-#: 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 "-fmit-class-file 的别名"
+
+#: c/gimple-parser.cc:482 c/gimple-parser.cc:488
 #, fuzzy, gcc-internal-format
 #| msgid "expected pointer"
 msgid "expected block index"
 msgstr "需要指针"
 
-#: c/gimple-parser.cc:492
+#: c/gimple-parser.cc:496
 #, fuzzy, gcc-internal-format
 msgid "invalid block index"
 msgstr "无效的实型种别 %d,在%C处"
 
-#: c/gimple-parser.cc:503
+#: c/gimple-parser.cc:507
 #, fuzzy, gcc-internal-format
 msgid "expected block specifier"
 msgstr "需要类型限定"
 
-#: c/gimple-parser.cc:521
+#: c/gimple-parser.cc:525
 #, fuzzy, gcc-internal-format
 #| msgid "expected pointer"
 msgid "expected loop number"
 msgstr "需要指针"
 
-#: c/gimple-parser.cc:539
+#: c/gimple-parser.cc:543
 #, fuzzy, gcc-internal-format
 #| msgid "unknown relocation unspec"
 msgid "unknown block specifier"
 msgstr "未指定未知的重定位方式"
 
-#: 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 pointer"
 msgid "expected count value"
 msgstr "需要指针"
 
-#: 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 label %qD"
 msgid "duplicate loop header"
 msgstr "重复的标号%qD"
 
-#: c/gimple-parser.cc:819
+#: c/gimple-parser.cc:823
 #, fuzzy, gcc-internal-format
 #| msgid "invalid base-class specification"
 msgid "invalid source block specification"
 msgstr "无效的基类"
 
-#: c/gimple-parser.cc:886
+#: c/gimple-parser.cc:890
 #, fuzzy, gcc-internal-format
 #| msgid "unexpected argument"
 msgid "unexpected RHS for assignment"
 msgstr "非预期的参数"
 
-#: 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 identifier or %<*%>"
 msgid "expected pointer as argument of unary %<*%>"
 msgstr "需要标识符或%<*%>"
 
-#: 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 "unexpected offset"
 msgid "expected constant offset"
 msgstr "非预期的偏移"
 
-#: c/gimple-parser.cc:1253
+#: c/gimple-parser.cc:1257
 #, fuzzy, gcc-internal-format
 #| msgid "%qD not declared"
 msgid "SSA name undeclared"
 msgstr "%qD未声明"
 
-#: c/gimple-parser.cc:1275
+#: c/gimple-parser.cc:1279
 #, fuzzy, gcc-internal-format
 #| msgid "unnamed variable or field declared void"
 msgid "base variable or SSA name undeclared"
 msgstr "无名变量或字段声明为 void"
 
-#: c/gimple-parser.cc:1282
+#: c/gimple-parser.cc:1286
 #, fuzzy, gcc-internal-format
 #| msgid "invalid type %<void%> for new"
 msgid "invalid base %qE for SSA name"
 msgstr "对 new 而言类型%<void%>无效"
 
-#: c/gimple-parser.cc:1310
+#: c/gimple-parser.cc:1314
 #, fuzzy, gcc-internal-format
 #| msgid "expected function"
 msgid "expecting internal function name"
 msgstr "需要函数"
 
-#: c/gimple-parser.cc:1323
+#: c/gimple-parser.cc:1327
 #, fuzzy, gcc-internal-format
 msgid "unknown internal function %qE"
 msgstr "spec 函数名格式错误"
 
-#: c/gimple-parser.cc:1461
+#: c/gimple-parser.cc:1465
 #, fuzzy, gcc-internal-format
 #| msgid "invalid %%P operand"
 msgid "invalid type of %<__MEM%> operand"
 msgstr "无效的 %%P 操作数"
 
-#: c/gimple-parser.cc:1523
+#: c/gimple-parser.cc:1527
 #, fuzzy, gcc-internal-format
 #| msgid "expected initializer"
 msgid "expected constant size"
 msgstr "需要初始值设定"
 
-#: 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 "%%R 代码的操作数无效"
 
-#: c/gimple-parser.cc:1570
+#: c/gimple-parser.cc:1574
 #, fuzzy, gcc-internal-format
 #| msgid "initializer invalid for static member with constructor"
 msgid "invalid type for _Literal with constructor"
 msgstr "构造函数中对静态成员的初始化无效"
 
-#: c/gimple-parser.cc:1683
+#: c/gimple-parser.cc:1687
 #, fuzzy, gcc-internal-format
 #| msgid "an anonymous union cannot have function members"
 msgid "anonymous SSA name cannot have default definition"
 msgstr "匿名联合不能有函数成员"
 
-#: c/gimple-parser.cc:1766
+#: c/gimple-parser.cc:1770
 #, fuzzy, gcc-internal-format
 #| msgid "call to non-function %qD"
 msgid "invalid call to non-function"
 msgstr "调用非函数的%qD"
 
-#: c/gimple-parser.cc:1820
+#: c/gimple-parser.cc:1824
 #, fuzzy, gcc-internal-format
 #| msgid "dereferencing %<void *%> pointer"
 msgid "dereference of non-pointer"
 msgstr "提领%<void *%>指针"
 
-#: c/gimple-parser.cc:1945
+#: c/gimple-parser.cc:1949
 #, fuzzy, gcc-internal-format
 #| msgid "expected class name"
 msgid "expected pass name"
 msgstr "需要类名"
 
-#: c/gimple-parser.cc:1984
+#: c/gimple-parser.cc:1988
 #, fuzzy, gcc-internal-format
 msgid "invalid operation"
 msgstr "%%R 代码的操作数无效"
 
-#: c/gimple-parser.cc:2130
+#: c/gimple-parser.cc:2152
 #, fuzzy, gcc-internal-format
 msgid "comparison required"
 msgstr "对不同枚举类型之间的比较给出警告"
 
-#: c/gimple-parser.cc:2182
+#: c/gimple-parser.cc:2204
 #, fuzzy, gcc-internal-format
 #| msgid "-fpic is not supported"
 msgid "%<catch%> is not supported"
 msgstr "不支持 -fpic"
 
-#: c/gimple-parser.cc:2184
+#: c/gimple-parser.cc:2206
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<,%> or %<)%>"
 msgid "expected %<finally%> or %<catch%>"
 msgstr "需要 %<,%> 或 %<)%>"
 
-#: 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 expression"
 msgid "expected goto expression"
 msgstr "需要表达式"
 
-#: c/gimple-parser.cc:2236
+#: c/gimple-parser.cc:2258
 #, fuzzy, gcc-internal-format
 #| msgid "expected statement"
 msgid "expected else statement"
 msgstr "需要语句"
 
-#: c/gimple-parser.cc:2379
+#: c/gimple-parser.cc:2401
 #, fuzzy, gcc-internal-format
 #| msgid "expected class name"
 msgid "expected case label"
@@ -50683,13 +50825,13 @@ msgstr "以从%qT转换为%qT"
 msgid "  no known conversion for argument %d from %qH to %qI"
 msgstr "以从%qT转换为%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] " 备选需要 %d 实参,但提供了 %d 个"
 
-#: 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"
@@ -50994,555 +51136,560 @@ msgstr "不同的指针类型%qT和%qT组成的条件表达式中需要一个类
 msgid "enumerated and non-enumerated type in conditional expression"
 msgstr "枚举和非枚举类型一起出现在条件表达式中"
 
-#: cp/call.cc:6610
+#: cp/call.cc:6621
 #, gcc-internal-format
 msgid "no %<%D(int)%> declared for postfix %qs, trying prefix operator instead"
 msgstr "%<%D(int)%>没有出现在后缀%qs中,尝试使用前缀运算符"
 
-#: cp/call.cc:6612
+#: cp/call.cc:6623
 #, gcc-internal-format
 msgid "no %<%D(int)%> declared for postfix %qs"
 msgstr "没有为后缀%2$qs声明%<%1$D(int)%>"
 
-#: 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 %<int%>"
 msgid "return type of %qD is not %qs"
 msgstr "%qD的返回类型不是%<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
 #, gcc-internal-format
 msgid "comparison between %q#T and %q#T"
 msgstr "在%q#T和%q#T间比较"
 
-#: cp/call.cc:7009
+#: cp/call.cc:7020
 #, fuzzy, gcc-internal-format
 #| msgid "no match for call to %<(%T) (%A)%>"
 msgid "no match for call to %<%T::operator[] (%A)%>"
 msgstr "对%<(%T) (%A)%>的调用没有匹配"
 
-#: cp/call.cc:7023
+#: cp/call.cc:7034
 #, fuzzy, gcc-internal-format
 #| msgid "call of %<(%T) (%A)%> is ambiguous"
 msgid "call of %<%T::operator[] (%A)%> is ambiguous"
 msgstr "对%<(%T) (%A)%>的调用有歧义"
 
-#: 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 "non-placement deallocation function %q+D"
 msgid "%qD is a usual (non-placement) deallocation function in C++14 (or with %<-fsized-deallocation%>)"
 msgstr "非预定位的释放函数%q+D"
 
-#: cp/call.cc:7338
+#: cp/call.cc:7349
 #, fuzzy, gcc-internal-format
 #| msgid "non-placement deallocation function %q+D"
 msgid "%qD is a usual (non-placement) deallocation function"
 msgstr "非预定位的释放函数%q+D"
 
-#: cp/call.cc:7532
+#: cp/call.cc:7543
 #, gcc-internal-format
 msgid "no corresponding deallocation function for %qD"
 msgstr "%qD没有相应的释放函数"
 
-#: 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
 #, gcc-internal-format
 msgid "no suitable %<operator %s%> for %qT"
 msgstr "没有合适的%<operator %s%>给%qT"
 
-#: cp/call.cc:7580
+#: cp/call.cc:7591
 #, fuzzy, gcc-internal-format
 #| msgid "within this context"
 msgid "%q#D is private within this context"
 msgstr "在此上下文中"
 
-#: cp/call.cc:7581 cp/decl.cc:8502
+#: cp/call.cc:7592 cp/decl.cc:8629
 #, fuzzy, gcc-internal-format
 #| msgid "declared here"
 msgid "declared private here"
 msgstr "在此声明"
 
-#: cp/call.cc:7586
+#: cp/call.cc:7597
 #, fuzzy, gcc-internal-format
 #| msgid "within this context"
 msgid "%q#D is protected within this context"
 msgstr "在此上下文中"
 
-#: cp/call.cc:7587 cp/decl.cc:8503
+#: cp/call.cc:7598 cp/decl.cc:8630
 #, fuzzy, gcc-internal-format
 #| msgid "declared here"
 msgid "declared protected here"
 msgstr "在此声明"
 
-#: cp/call.cc:7594
+#: cp/call.cc:7605
 #, fuzzy, gcc-internal-format
 #| msgid "%q+#D is inaccessible"
 msgid "%q#D is inaccessible within this context"
 msgstr "%q+#D无法访问"
 
-#: cp/call.cc:7675
+#: cp/call.cc:7686
 #, gcc-internal-format
 msgid "passing NULL to non-pointer argument %P of %qD"
 msgstr "将 NULL 作为非指针实参 %P 传递给%qD"
 
-#: 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
 #, fuzzy, gcc-internal-format
 #| msgid "declared here"
 msgid "  declared here"
 msgstr "在此声明"
 
-#: cp/call.cc:7682
+#: cp/call.cc:7693
 #, gcc-internal-format
 msgid "converting to non-pointer type %qT from NULL"
 msgstr "将 NULL 转换到非指针类型%qT"
 
-#: cp/call.cc:7694
+#: cp/call.cc:7705
 #, gcc-internal-format
 msgid "converting %<false%> to pointer type for argument %P of %qD"
 msgstr "将%<false%>转换为指向%2$qD的实参 %1$P 的指针类型"
 
-#: cp/call.cc:7701
+#: cp/call.cc:7712
 #, fuzzy, gcc-internal-format
 msgid "converting %<false%> to pointer type %qT"
 msgstr "将%<false%>转换为指向%2$qD的实参 %1$P 的指针类型"
 
-#: cp/call.cc:7768
+#: cp/call.cc:7779
 #, gcc-internal-format
 msgid "  initializing argument %P of %qD"
 msgstr "  初始化%2$qD的实参 %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 "显式转换运算符只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/call.cc:7839
+#: cp/call.cc:7850
 #, gcc-internal-format
 msgid "too many braces around initializer for %qT"
 msgstr "%qT的初始值设定周围花括号太多"
 
-#: cp/call.cc:7850
+#: cp/call.cc:7861
 #, fuzzy
 msgid "converting to %qH from %qI requires direct-initialization"
 msgstr "不能在初始化时将%qT转换为%qT"
 
-#: cp/call.cc:7859
+#: cp/call.cc:7870
 #, fuzzy
 msgid "invalid user-defined conversion from %qH to %qI"
 msgstr "到类型%qT的转换无效,从类型%qT"
 
-#: cp/call.cc:7896 cp/cvt.cc:227
+#: cp/call.cc:7907 cp/cvt.cc:227
 #, fuzzy
 #| msgid "invalid conversion from %qT to %qT"
 msgid "invalid conversion from %qH to %qI"
 msgstr "从类型%qT到类型%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 "从初始化列表转换为%qT将使用显式构造函数%qD"
 
-#: 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 "conversion to volatile reference type %q#T from rvalue of type %qT"
 msgid "cannot bind rvalue reference of type %qH to lvalue of type %qI"
 msgstr "将类型为%2$qT的右值转换为%1$qT的 volatile 引用"
 
-#: cp/call.cc:8220
+#: cp/call.cc:8231
 #, fuzzy
 #| msgid "invalid initialization of non-const reference of type %qT from an rvalue of type %qT"
 msgid "cannot bind non-const lvalue reference of type %qH to a value of type %qI"
 msgstr "用类型为%2$qT的右值初始化类型为%1$qT的非常量引用无效"
 
-#: cp/call.cc:8225
+#: cp/call.cc:8236
 #, fuzzy
 #| msgid "invalid initialization of non-const reference of type %qT from an rvalue of type %qT"
 msgid "cannot bind non-const lvalue reference of type %qH to an rvalue of type %qI"
 msgstr "用类型为%2$qT的右值初始化类型为%1$qT的非常量引用无效"
 
 #. extype is volatile
-#: cp/call.cc:8228
+#: cp/call.cc:8239
 #, fuzzy
 #| msgid "conversion to volatile reference type %q#T from rvalue of type %qT"
 msgid "cannot bind lvalue reference of type %qH to an rvalue of type %qI"
 msgstr "将类型为%2$qT的右值转换为%1$qT的 volatile 引用"
 
-#: cp/call.cc:8241
+#: cp/call.cc:8252
 #, fuzzy
 #| msgid "conversion to volatile reference type %q#T from rvalue of type %qT"
 msgid "cannot bind reference of type %qH to %qI due to different array bounds"
 msgstr "将类型为%2$qT的右值转换为%1$qT的 volatile 引用"
 
-#: cp/call.cc:8244
+#: cp/call.cc:8255
 #, fuzzy
 msgid "binding reference of type %qH to %qI discards qualifiers"
 msgstr "将%qT作为%q#D的%<this%>实参时丢弃了类型限定"
 
-#: cp/call.cc:8283
+#: cp/call.cc:8294
 #, fuzzy, gcc-internal-format
 #| msgid "cannot bind bitfield %qE to %qT"
 msgid "cannot bind bit-field %qE to %qT"
 msgstr "无法将位段%qE绑定到%qT"
 
-#: cp/call.cc:8286 cp/call.cc:8304
+#: cp/call.cc:8297 cp/call.cc:8315
 #, gcc-internal-format
 msgid "cannot bind packed field %qE to %qT"
 msgstr "不能将紧实的字段%qE绑定到%qT"
 
-#: cp/call.cc:8289
+#: cp/call.cc:8300
 #, gcc-internal-format
 msgid "cannot bind rvalue %qE to %qT"
 msgstr "无法将右值%qE绑定到%qT"
 
-#: cp/call.cc:8484
+#: cp/call.cc:8495
 #, fuzzy
 msgid "implicit conversion from %qH to %qI when passing argument to function"
 msgstr "C++ 中不允许从%qT到%qT的隐式转换"
 
-#: 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 "不能通过%<...%>传递有不能平凡复制的类型%q#T"
 
-#: cp/call.cc:8591
+#: cp/call.cc:8602
 #, fuzzy, gcc-internal-format
 msgid "cannot receive reference type %qT through %<...%>"
 msgstr "不能声明指向限定函数类型%qT的引用"
 
-#: 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 "不能通过%<...%>接受不能平凡复制的类型%q#T;"
 
-#: cp/call.cc:8669
+#: cp/call.cc:8680
 #, gcc-internal-format
 msgid "recursive evaluation of default argument for %q#D"
 msgstr "递归计算%q#D的默认参数"
 
-#: cp/call.cc:8678
+#: cp/call.cc:8689
 #, fuzzy, gcc-internal-format
 msgid "call to %qD uses the default argument for parameter %P, which is not yet defined"
 msgstr "%2$qD的第 %1$d 个形参的默认实参尚未被解析到"
 
-#: 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 "函数的实参可能是 format 属性的备选"
 
-#: cp/call.cc:8840
+#: cp/call.cc:8851
 #, fuzzy, gcc-internal-format
 msgid "use of multiversioned function without a default"
 msgstr "已弃用为非函数指定默认参数"
 
-#: cp/call.cc:9442
+#: cp/call.cc:9454
 #, fuzzy, gcc-internal-format
 msgid "passing %qT as %<this%> argument discards qualifiers"
 msgstr "从%qT到%qT的转换丢失了限定信息"
 
-#: cp/call.cc:9445 cp/call.cc:12115
+#: cp/call.cc:9457 cp/call.cc:12148
 #, gcc-internal-format
 msgid "  in call to %qD"
 msgstr "在调用%qD时"
 
-#: cp/call.cc:9470
+#: cp/call.cc:9482
 #, gcc-internal-format
 msgid "%qT is not an accessible base of %qT"
 msgstr "%qT是%qT的一个不可访问的基类"
 
-#: cp/call.cc:9667
+#: cp/call.cc:9679
 #, fuzzy, gcc-internal-format
 msgid "passing arguments to ellipsis of inherited constructor %qD"
 msgstr "给予函数 %s 的参数太多,于 %L"
 
-#: 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
 #, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with no trivial copy-assignment"
 msgstr ""
 
-#: cp/call.cc:10201
+#: cp/call.cc:10213
 #, fuzzy, gcc-internal-format
 #| msgid "conversion to void will not access object of non-trivially-copyable type %qT"
 msgid "%qD writing to an object of non-trivial type %#qT%s"
 msgstr "向 void 的转换不会访问具有不能平凡复制类型%qT的对象"
 
-#: cp/call.cc:10206
+#: cp/call.cc:10218
 #, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with %qs member %qD"
 msgstr ""
 
-#: cp/call.cc:10211
+#: cp/call.cc:10223
 #, gcc-internal-format
 msgid "%qD writing to an object of type %#qT containing a pointer to data member%s"
 msgstr ""
 
-#: cp/call.cc:10226
+#: cp/call.cc:10238
 #, fuzzy, gcc-internal-format
 #| msgid "assignment (not initialization) in declaration"
 msgid "; use assignment or value-initialization instead"
 msgstr "赋值(不是初始化)出现在声明中"
 
-#: cp/call.cc:10228
+#: cp/call.cc:10240
 #, fuzzy, gcc-internal-format
 #| msgid "use #include instead"
 msgid "; use assignment instead"
 msgstr "改用 #include"
 
-#: cp/call.cc:10230
+#: cp/call.cc:10242
 #, fuzzy, gcc-internal-format
 msgid "; use value-initialization instead"
 msgstr "在返回%qT的函数中,返回语句不带返回值"
 
-#: cp/call.cc:10233
+#: cp/call.cc:10245
 #, gcc-internal-format
 msgid "%qD clearing an object of type %#qT with no trivial copy-assignment%s"
 msgstr ""
 
-#: cp/call.cc:10236
+#: cp/call.cc:10248
 #, fuzzy, gcc-internal-format
 #| msgid "creating pointer to member of non-class type %qT"
 msgid "%qD clearing an object of non-trivial type %#qT%s"
 msgstr "生成非类类型%qT的成员指针"
 
-#: cp/call.cc:10238
+#: cp/call.cc:10250
 #, gcc-internal-format
 msgid "%qD clearing an object of type %#qT containing a pointer-to-member%s"
 msgstr ""
 
-#: cp/call.cc:10259
+#: cp/call.cc:10271
 #, fuzzy, gcc-internal-format
 #| msgid "assignment (not initialization) in declaration"
 msgid "; use copy-assignment or copy-initialization instead"
 msgstr "赋值(不是初始化)出现在声明中"
 
-#: cp/call.cc:10261
+#: cp/call.cc:10273
 #, fuzzy, gcc-internal-format
 #| msgid "use #include instead"
 msgid "; use copy-assignment instead"
 msgstr "改用 #include"
 
-#: cp/call.cc:10263
+#: cp/call.cc:10275
 #, fuzzy, gcc-internal-format
 msgid "; use copy-initialization instead"
 msgstr "(在%qs的初始化附近)"
 
-#: cp/call.cc:10266
+#: cp/call.cc:10278
 #, gcc-internal-format
 msgid "%qD writing to an object of type %#qT with no trivial copy-assignment%s"
 msgstr ""
 
-#: cp/call.cc:10269
+#: cp/call.cc:10281
 #, fuzzy, gcc-internal-format
 #| msgid "conversion to void will not access object of non-trivially-copyable type %qT"
 msgid "%qD writing to an object of non-trivially copyable type %#qT%s"
 msgstr "向 void 的转换不会访问具有不能平凡复制类型%qT的对象"
 
-#: cp/call.cc:10272
+#: cp/call.cc:10284
 #, gcc-internal-format
 msgid "%qD writing to an object with a deleted copy constructor"
 msgstr ""
 
-#: cp/call.cc:10283
+#: cp/call.cc:10295
 #, gcc-internal-format
 msgid "%qD copying an object of non-trivial type %#qT from an array of %#qT"
 msgstr ""
 
-#: 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
 #, gcc-internal-format
 msgid "%qD writing to an object of a non-trivial type %#qT leaves %wu bytes unchanged"
 msgstr ""
 
-#: cp/call.cc:10315
+#: cp/call.cc:10327
 #, gcc-internal-format
 msgid "%qD writing to an object of a non-trivial type %#qT leaves %wu byte unchanged"
 msgstr ""
 
-#: cp/call.cc:10325
+#: cp/call.cc:10337
 #, fuzzy, gcc-internal-format
 msgid "%qD moving an object of non-trivially copyable type %#qT; use %<new%> and %<delete%> instead"
 msgstr "不能通过%<...%>接受不能平凡复制的类型%q#T;"
 
-#: cp/call.cc:10328
+#: cp/call.cc:10340
 #, gcc-internal-format
 msgid "%qD moving an object of type %#qT with deleted copy constructor; use %<new%> and %<delete%> instead"
 msgstr ""
 
-#: cp/call.cc:10331
+#: cp/call.cc:10343
 #, gcc-internal-format
 msgid "%qD moving an object of type %#qT with deleted destructor"
 msgstr ""
 
-#: cp/call.cc:10340
+#: cp/call.cc:10352
 #, gcc-internal-format
 msgid "%qD moving an object of non-trivial type %#qT and size %E into a region of size %E"
 msgstr ""
 
-#: cp/call.cc:10362
+#: cp/call.cc:10374
 #, fuzzy, gcc-internal-format
 msgid "%#qT declared here"
 msgstr "在此声明"
 
-#: 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 "%K%D 的第一个实参必须是一个指针,第二个必须是整常量"
+
+#: cp/call.cc:10495
 #, fuzzy, gcc-internal-format
 msgid "constructor delegates to itself"
 msgstr "inlined_to pointer 指向自身"
 
-#: cp/call.cc:10737 cp/typeck.cc:9870
+#: cp/call.cc:10770 cp/typeck.cc:9884
 #, fuzzy
 #| msgid "cannot convert %qT to %qT"
 msgid "cannot convert %qH to %qI"
 msgstr "不能将%qT转换为%qT"
 
-#: 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 "对%<%T::%s(%A)%#V%>的调用没有匹配的函数"
 
-#: cp/call.cc:10791
+#: cp/call.cc:10824
 #, fuzzy, gcc-internal-format
 #| msgid "no matching function for call to %<%T::%s(%A)%#V%>"
 msgid "no matching function for call to %<%T::%s%E(%A)%#V%>"
 msgstr "对%<%T::%s(%A)%#V%>的调用没有匹配的函数"
 
-#: cp/call.cc:10840
+#: cp/call.cc:10873
 #, gcc-internal-format
 msgid "call to non-function %qD"
 msgstr "调用非函数的%qD"
 
-#: 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 "不能直接调用构造函数%<%T::%D%>"
 
-#: cp/call.cc:10880
+#: cp/call.cc:10913
 #, fuzzy, gcc-internal-format
 msgid "for a function-style cast, remove the redundant %<::%D%>"
 msgstr "对于函数类型的类型转换,移除冗余的%<::%D%>"
 
-#: cp/call.cc:11072
+#: cp/call.cc:11105
 #, fuzzy, gcc-internal-format
 msgid "no matching function for call to %<%s(%A)%>"
 msgstr "对%<%D(%A)%>的调用没有匹配的函数"
 
-#: cp/call.cc:11075
+#: cp/call.cc:11108
 #, gcc-internal-format
 msgid "call of overloaded %<%s(%A)%> is ambiguous"
 msgstr "对重载的%<%s(%A)%>的调用有歧义"
 
-#: 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 "对非静态数据成员%q+D的无效使用"
 
-#: cp/call.cc:11103
+#: cp/call.cc:11136
 #, fuzzy, gcc-internal-format
 msgid "pure virtual %q#D called from constructor"
 msgstr "对非静态数据成员%q+D的无效使用"
 
-#: cp/call.cc:11104
+#: cp/call.cc:11137
 #, fuzzy, gcc-internal-format
 msgid "pure virtual %q#D called from destructor"
 msgstr "对非静态数据成员%q+D的无效使用"
 
-#: cp/call.cc:11127
+#: cp/call.cc:11160
 #, gcc-internal-format
 msgid "cannot call member function %qD without object"
 msgstr "没有对象无法调用成员函数%qD"
 
-#: cp/call.cc:12113
+#: cp/call.cc:12146
 #, gcc-internal-format
 msgid "passing %qT chooses %qT over %qT"
 msgstr "传递%qT时选择%qT而不是%qT"
 
-#: cp/call.cc:12182
+#: cp/call.cc:12215
 #, gcc-internal-format
 msgid "choosing %qD over %qD"
 msgstr "选择%qD而不是%qD"
 
-#: cp/call.cc:12183
+#: cp/call.cc:12216
 #, fuzzy
 #| msgid "  for conversion from %qT to %qT"
 msgid "  for conversion from %qH to %qI"
 msgstr "以从%qT转换为%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
 #, gcc-internal-format
 msgid "default argument mismatch in overload resolution"
 msgstr "重载解决时默认参数不匹配"
 
-#: cp/call.cc:12440
+#: cp/call.cc:12473
 #, fuzzy, gcc-internal-format
 #| msgid " candidate 1: %q+#F"
 msgid " candidate 1: %q#F"
 msgstr "备选 1: %q+#F"
 
-#: cp/call.cc:12442
+#: cp/call.cc:12475
 #, fuzzy, gcc-internal-format
 #| msgid " candidate 2: %q+#F"
 msgid " candidate 2: %q#F"
 msgstr "备选 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++ 认为有歧义,尽管第一个备选的最差类型转换要好于第二个备选的最差类型转换"
 
-#: cp/call.cc:12889
+#: cp/call.cc:12922
 #, fuzzy, gcc-internal-format
 msgid "a temporary bound to %qD only persists until the constructor exits"
 msgstr "暂时的约束到 %qD 只有持续直到建构子离开"
 
-#: cp/call.cc:13044
+#: cp/call.cc:13077
 #, fuzzy
 #| msgid "invalid initialization of non-const reference of type %qT from an rvalue of type %qT"
 msgid "invalid initialization of non-const reference of type %qH from an rvalue of type %qI"
 msgstr "用类型为%2$qT的右值初始化类型为%1$qT的非常量引用无效"
 
-#: cp/call.cc:13048
+#: cp/call.cc:13081
 #, fuzzy
 #| msgid "invalid initialization of reference of type %qT from expression of type %qT"
 msgid "invalid initialization of reference of type %qH from expression of type %qI"
@@ -51573,546 +51720,546 @@ msgstr "无法从基类%qT转换到派生类%qT,通过虚基类%qT"
 msgid "cannot convert from %qT to base class %qT because %qT is incomplete"
 msgstr "无法从基类%qT转换到派生类%qT,通过虚基类%qT"
 
-#: cp/class.cc:1204
+#: cp/class.cc:1209
 #, fuzzy, gcc-internal-format
 msgid "%q#D conflicts with version inherited from %qT"
 msgstr "与先前此处的声明冲突"
 
-#: cp/class.cc:1207
+#: cp/class.cc:1212
 #, fuzzy, gcc-internal-format
 #| msgid "%qD declared here"
 msgid "version inherited from %qT declared here"
 msgstr "%qD在此声明"
 
-#: cp/class.cc:1225
+#: cp/class.cc:1231
 #, fuzzy, gcc-internal-format
 #| msgid "%q+#D cannot be overloaded"
 msgid "%q#D cannot be overloaded with %q#D"
 msgstr "%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 "先前的声明%q+D"
 
-#: cp/class.cc:1269
+#: cp/class.cc:1275
 #, gcc-internal-format
 msgid "conflicting access specifications for method %q+D, ignored"
 msgstr "方法%q+D的权限设定冲突,已忽略"
 
-#: cp/class.cc:1272
+#: cp/class.cc:1278
 #, gcc-internal-format
 msgid "conflicting access specifications for field %qE, ignored"
 msgstr "字段%qE的权限设定冲突,已忽略"
 
-#: cp/class.cc:1341
+#: cp/class.cc:1381
 #, fuzzy, gcc-internal-format
 #| msgid "  because of local method %q+#D with same name"
 msgid "%qD invalid in %q#T because of local method %q#D with same name"
 msgstr " 因为局部方法%q+#D与之重名"
 
-#: cp/class.cc:1345
+#: cp/class.cc:1385
 #, fuzzy, gcc-internal-format
 msgid "local method %q#D declared here"
 msgstr "%q+D已在此声明过"
 
-#: cp/class.cc:1351
+#: cp/class.cc:1390
 #, fuzzy, gcc-internal-format
 #| msgid "  because of local member %q+#D with same name"
 msgid "%qD invalid in %q#T because of local member %q#D with same name"
 msgstr " 因为局部成员%q+#D与之重名"
 
-#: cp/class.cc:1355
+#: cp/class.cc:1394
 #, fuzzy, gcc-internal-format
 msgid "local member %q#D declared here"
 msgstr "%q+D已在此声明过"
 
-#: 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 ""
 
-#: 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 "在此声明"
 
-#: 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 ""
 
-#: cp/class.cc:1447
+#: cp/class.cc:1480
 #, gcc-internal-format
 msgid "%qT does not have the %E ABI tag that base %qT has"
 msgstr ""
 
-#: cp/class.cc:1455
+#: cp/class.cc:1488
 #, gcc-internal-format
 msgid "%qT does not have the %E ABI tag that %qT (used in the type of %qD) has"
 msgstr ""
 
-#: cp/class.cc:1766
+#: cp/class.cc:1799
 #, fuzzy, gcc-internal-format
 msgid "cannot derive from %<final%> base %qT in derived type %qT"
 msgstr "无法从基类%qT转换到派生类%qT,通过虚基类%qT"
 
-#: cp/class.cc:2240
+#: cp/class.cc:2273
 #, gcc-internal-format
 msgid "all member functions in class %qT are private"
 msgstr "类%qT中所有成员函数都是私有的"
 
-#: cp/class.cc:2252
+#: cp/class.cc:2285
 #, gcc-internal-format
 msgid "%q#T only defines a private destructor and has no friends"
 msgstr "%q#T仅定义了一个私有析构函数且没有友元"
 
-#: cp/class.cc:2295
+#: cp/class.cc:2328
 #, gcc-internal-format
 msgid "%q#T only defines private constructors and has no friends"
 msgstr "%q#T仅定义了一个私有构造函数且没有友元"
 
-#: 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 "%qD的最终重载在%qT中不唯一"
 
-#: cp/class.cc:2949
+#: cp/class.cc:2982
 #, fuzzy, gcc-internal-format
 msgid "%qD can be marked override"
 msgstr "函数%q+D的定义被标记为 dllimport"
 
-#: cp/class.cc:2952
+#: cp/class.cc:2985
 #, fuzzy, gcc-internal-format
 msgid "%q+#D marked %<override%>, but does not override"
 msgstr "%q+D定义后未使用"
 
-#: cp/class.cc:2967
+#: cp/class.cc:3000
 #, fuzzy, gcc-internal-format
 msgid "%q+#D marked %<final%>, but is not virtual"
 msgstr "%q#D的定义被标记为 %<dllimport%>"
 
-#: cp/class.cc:3029
+#: cp/class.cc:3062
 #, fuzzy, gcc-internal-format
 #| msgid "%q+D was hidden"
 msgid "%qD was hidden"
 msgstr "%q+D为"
 
-#: cp/class.cc:3030
+#: cp/class.cc:3063
 #, fuzzy, gcc-internal-format
 #| msgid "  by %q+D"
 msgid "  by %qD"
 msgstr "%q+D所隐藏"
 
-#: cp/class.cc:3242
+#: cp/class.cc:3275
 #, fuzzy, gcc-internal-format
 msgid "the ellipsis in %qD is not inherited"
 msgstr "当继承来的方法未被实现时给出警告"
 
-#: cp/class.cc:3434
+#: cp/class.cc:3467
 #, fuzzy, gcc-internal-format
 #| msgid "bit-field %q+#D with non-integral type"
 msgid "bit-field %q#D with non-integral type %qT"
 msgstr "位段%q+#D有非整数的类型"
 
-#: cp/class.cc:3450
+#: cp/class.cc:3483
 #, gcc-internal-format
 msgid "bit-field %q+D width not an integer constant"
 msgstr "位段%q+D的宽度不是一个整数常量"
 
-#: cp/class.cc:3455
+#: cp/class.cc:3488
 #, gcc-internal-format
 msgid "negative width in bit-field %q+D"
 msgstr "位段%q+D宽度为负"
 
-#: cp/class.cc:3460
+#: cp/class.cc:3493
 #, gcc-internal-format
 msgid "zero width for bit-field %q+D"
 msgstr "位段%q+D宽度为 0"
 
-#: cp/class.cc:3470
+#: cp/class.cc:3503
 #, fuzzy, gcc-internal-format
 #| msgid "width of %q+D exceeds its type"
 msgid "width of %qD exceeds its type"
 msgstr "%q+D的宽度超过了它的类型"
 
-#: cp/class.cc:3476
+#: cp/class.cc:3509
 #, fuzzy, gcc-internal-format
 #| msgid "%q+D is too small to hold all values of %q#T"
 msgid "%qD is too small to hold all values of %q#T"
 msgstr "%q+D太小而不能存放%q#T的所有可能值"
 
-#: cp/class.cc:3537
+#: cp/class.cc:3570
 #, gcc-internal-format
 msgid "member %q+#D with constructor not allowed in union"
 msgstr "有构造函数的成员%q+#D不能用在联合中"
 
-#: cp/class.cc:3540
+#: cp/class.cc:3573
 #, gcc-internal-format
 msgid "member %q+#D with destructor not allowed in union"
 msgstr "有析构函数的成员%q+#D不能用在联合中"
 
-#: cp/class.cc:3542
+#: cp/class.cc:3575
 #, gcc-internal-format
 msgid "member %q+#D with copy assignment operator not allowed in union"
 msgstr "有拷贝赋值运算符的成员%q+#D不能用在联合中"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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不能是静态的,因为它是联合的成员"
 
-#: 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 "非静态数据成员%qD具有 Java 类类型"
 
-#: cp/class.cc:3688
+#: cp/class.cc:3721
 #, fuzzy, gcc-internal-format
 #| msgid "field %q+D invalidly declared function type"
 msgid "data member %q+D invalidly declared function type"
 msgstr "字段%q+D无效地声明为函数类型"
 
-#: cp/class.cc:3694
+#: cp/class.cc:3727
 #, fuzzy, gcc-internal-format
 #| msgid "parameter %qD invalidly declared method type"
 msgid "data member %q+D invalidly declared method type"
 msgstr "形参%qD被无效地被声明为具有方法类型"
 
-#: cp/class.cc:3765
+#: cp/class.cc:3798
 #, fuzzy, gcc-internal-format
 #| msgid "ignoring packed attribute because of unpacked non-POD field %q+#D"
 msgid "ignoring packed attribute because of unpacked non-POD field %q#D"
 msgstr "为非紧实的非简单旧数据字段%q+#D忽略 packed 属性"
 
-#: cp/class.cc:3817
+#: cp/class.cc:3850
 #, fuzzy, gcc-internal-format
 msgid "member %q+D cannot be declared as a %<mutable%> reference"
 msgstr "非成员%qs不能被声明为%<mutable%>"
 
-#: cp/class.cc:3820
+#: cp/class.cc:3853
 #, fuzzy, gcc-internal-format
 msgid "member %q+D cannot be declared both %<const%> and %<mutable%>"
 msgstr "非成员%qs不能被声明为%<mutable%>"
 
-#: cp/class.cc:3851
+#: cp/class.cc:3884
 #, gcc-internal-format
 msgid "multiple fields in union %qT initialized"
 msgstr "初始化了联合%qT中的多个字段"
 
-#: cp/class.cc:3853
+#: cp/class.cc:3886
 #, fuzzy, gcc-internal-format
 msgid "initialized member %q+D declared here"
 msgstr "%q+D已在此声明过"
 
-#: cp/class.cc:3901
+#: cp/class.cc:3934
 #, fuzzy, gcc-internal-format
 #| msgid "field %q+#D with same name as class"
 msgid "field %q#D with same name as class"
 msgstr "字段%q+#D与类重名"
 
-#: cp/class.cc:3929
+#: cp/class.cc:3962
 #, gcc-internal-format
 msgid "%q#T has pointer data members"
 msgstr "%q#T有指针数据成员"
 
-#: cp/class.cc:3934
+#: cp/class.cc:3967
 #, fuzzy, gcc-internal-format
 #| msgid "  but does not override %<%T(const %T&)%>"
 msgid "  but does not declare %<%T(const %T&)%>"
 msgstr "但没有重载%<%T(const %T&)%>"
 
-#: cp/class.cc:3936
+#: cp/class.cc:3969
 #, gcc-internal-format
 msgid "  or %<operator=(const %T&)%>"
 msgstr "或者%<operator=(const %T&)%>"
 
-#: cp/class.cc:3940
+#: cp/class.cc:3973
 #, fuzzy, gcc-internal-format
 #| msgid "  but does not override %<operator=(const %T&)%>"
 msgid "  but does not declare %<operator=(const %T&)%>"
 msgstr "但没有重载%<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已在此声明过"
 
-#: 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 "%qD的对齐"
 
-#: cp/class.cc:4402
+#: cp/class.cc:4435
 #, fuzzy, gcc-internal-format
 msgid "alignment of %qD will increase in %<-fabi-version=9%>"
 msgstr "%qD的对齐"
 
-#: cp/class.cc:4730
+#: cp/class.cc:4763
 #, gcc-internal-format
 msgid "initializer specified for non-virtual method %q+D"
 msgstr "为非虚方法%q+D指定了初始值设定项"
 
-#: cp/class.cc:4763
+#: cp/class.cc:4796
 #, fuzzy, gcc-internal-format
 #| msgid "reference to %qD is ambiguous"
 msgid "destructor for %qT is ambiguous"
 msgstr "对%qD的引用有歧义"
 
-#: cp/class.cc:5216
+#: cp/class.cc:5249
 #, fuzzy, gcc-internal-format
 msgid "method overrides both %<transaction_pure%> and %qE methods"
 msgstr "方法强制变更两者 %<transaction_pure%> 和 %qE 方法"
 
-#: cp/class.cc:5237
+#: cp/class.cc:5270
 #, fuzzy, gcc-internal-format
 msgid "method declared %qE overriding %qE method"
 msgstr "为不存在的方法%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 "%3$L处 CLASS 变量‘%2$s’的类型‘%1$s’不能被扩展"
 
-#: cp/class.cc:5887
+#: cp/class.cc:5920
 #, fuzzy, gcc-internal-format
 msgid "%q+T is not literal because:"
 msgstr "在%q#T和%q#T间比较"
 
-#: 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 ""
 
-#: cp/class.cc:5893
+#: cp/class.cc:5926
 #, fuzzy, gcc-internal-format
 msgid "  %q+T has a non-trivial destructor"
 msgstr "基类%q#T有一个非虚析构函数"
 
-#: cp/class.cc:5896
+#: cp/class.cc:5929
 #, fuzzy, gcc-internal-format
 msgid "  %q+T does not have %<constexpr%> destructor"
 msgstr "友元声明没有指定类或函数名"
 
-#: cp/class.cc:5904
+#: cp/class.cc:5937
 #, fuzzy, 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 "  %q+T 不是汇总,没有 trivial 缺省构造函数,而没有任何 constexpr 建构子该并非复制或移动建构子"
 
-#: cp/class.cc:5937
+#: cp/class.cc:5970
 #, fuzzy, gcc-internal-format
 msgid "  base class %qT of %q+T is non-literal"
 msgstr "%3$L处 CLASS 变量‘%2$s’的类型‘%1$s’不能被扩展"
 
-#: cp/class.cc:5952
+#: cp/class.cc:5985
 #, fuzzy, gcc-internal-format
 msgid "  non-static data member %qD has non-literal type"
 msgstr "非静态数据成员%qD具有 Java 类类型"
 
-#: cp/class.cc:5959
+#: cp/class.cc:5992
 #, fuzzy, gcc-internal-format
 msgid "  non-static data member %qD has volatile type"
 msgstr "非静态数据成员%qD具有 Java 类类型"
 
-#: cp/class.cc:6090
+#: cp/class.cc:6123
 #, fuzzy, gcc-internal-format
 msgid "base class %q#T has accessible non-virtual destructor"
 msgstr "%q#T有虚函数和可访问的非虚拟析构函数"
 
-#: cp/class.cc:6119
+#: cp/class.cc:6152
 #, fuzzy, gcc-internal-format
 #| msgid "non-static reference %q+#D in class without a constructor"
 msgid "non-static reference %q#D in class without a constructor"
 msgstr "类中有非静态引用%q+#D,却没有提供构造函数"
 
-#: cp/class.cc:6125
+#: cp/class.cc:6158
 #, fuzzy, gcc-internal-format
 #| msgid "non-static const member %q+#D in class without a constructor"
 msgid "non-static const member %q#D in class without a constructor"
 msgstr "类中有非静态常量成员%q+#D却没有构造函数"
 
-#: cp/class.cc:6457
+#: cp/class.cc:6490
 #, gcc-internal-format
 msgid "offset of %qT base class for %<-std=c++14%> and up changes in %<-fabi-version=17%> (GCC 12)"
 msgstr ""
 
-#: cp/class.cc: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 "%qD的对齐"
 
-#: cp/class.cc:6501
+#: cp/class.cc:6534
 #, gcc-internal-format
 msgid "direct base %qT inaccessible in %qT due to ambiguity"
 msgstr "由于存在歧义,直接基类%qT在%qT中无法访问"
 
-#: cp/class.cc:6513
+#: cp/class.cc:6546
 #, gcc-internal-format
 msgid "virtual base %qT inaccessible in %qT due to ambiguity"
 msgstr "由于存在歧义,虚基类%qT在%qT中无法访问"
 
-#: cp/class.cc:6755
+#: cp/class.cc:6788
 #, fuzzy, gcc-internal-format
 #| msgid "offset of %q+D is not ABI-compliant and may change in a future version of GCC"
 msgid "offset of %qD is not ABI-compliant and may change in a future version of GCC"
 msgstr "%q+D的偏移量与 ABI 不兼容,并且在 GCC 的未来版本中可能会有变化"
 
-#: cp/class.cc:6950
+#: cp/class.cc:6983
 #, fuzzy, gcc-internal-format
 #| msgid "size of array %qE is too large"
 msgid "size of type %qT is too large (%qE bytes)"
 msgstr "数组%qE太大"
 
-#: 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 "对非左值数组的使用无效"
 
-#: cp/class.cc:7238
+#: cp/class.cc:7271
 #, fuzzy, gcc-internal-format
 #| msgid "invalid use of structure with flexible array member"
 msgid "invalid use of %q#T with a flexible array member in %q#T"
 msgstr "对包含可变数组成员的结构的无效使用"
 
-#: cp/class.cc:7243
+#: cp/class.cc:7276
 #, fuzzy, gcc-internal-format
 msgid "array member %q#D declared here"
 msgstr "%q+D已在此声明过"
 
-#: cp/class.cc:7271
+#: cp/class.cc:7304
 #, fuzzy, gcc-internal-format
 #| msgid "flexible array member not at end of struct"
 msgid "zero-size array member %qD not at end of %q#T"
 msgstr "可变数组成员没有出现在结构的末尾"
 
-#: cp/class.cc:7273
+#: cp/class.cc:7306
 #, fuzzy, gcc-internal-format
 #| msgid "flexible array member in otherwise empty struct"
 msgid "zero-size array member %qD in an otherwise empty %q#T"
 msgstr "可变数组是结构中的唯一成员"
 
-#: cp/class.cc:7282 cp/class.cc:7313
+#: cp/class.cc:7315 cp/class.cc:7346
 #, fuzzy, gcc-internal-format
 #| msgid "redefinition of %q#T"
 msgid "in the definition of %q#T"
 msgstr "%q#T重定义"
 
-#: cp/class.cc:7290
+#: cp/class.cc:7323
 #, fuzzy, gcc-internal-format
 #| msgid "flexible array member not at end of struct"
 msgid "flexible array member %qD not at end of %q#T"
 msgstr "可变数组成员没有出现在结构的末尾"
 
-#: cp/class.cc:7292
+#: cp/class.cc:7325
 #, fuzzy, gcc-internal-format
 #| msgid "flexible array member in otherwise empty struct"
 msgid "flexible array member %qD in an otherwise empty %q#T"
 msgstr "可变数组是结构中的唯一成员"
 
-#: cp/class.cc:7311
+#: cp/class.cc:7344
 #, fuzzy, gcc-internal-format
 msgid "next member %q#D declared here"
 msgstr "%q+D已在此声明过"
 
-#: 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重定义"
 
-#: cp/class.cc:7569
+#: cp/class.cc:7602
 #, gcc-internal-format
 msgid "%q#T has virtual functions and accessible non-virtual destructor"
 msgstr "%q#T有虚函数和可访问的非虚拟析构函数"
 
-#: cp/class.cc:7597
+#: cp/class.cc:7630
 #, fuzzy, gcc-internal-format
 msgid "type transparent %q#T does not have any fields"
 msgstr "类型%qT大小未知"
 
-#: cp/class.cc:7603
+#: cp/class.cc:7636
 #, fuzzy, gcc-internal-format
 msgid "type transparent class %qT has base classes"
 msgstr "类型透明类别 %qT 有基础类别"
 
-#: cp/class.cc:7607
+#: cp/class.cc:7640
 #, fuzzy, gcc-internal-format
 msgid "type transparent class %qT has virtual functions"
 msgstr "类型%qE有虚成员函数"
 
-#: 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 "从花括号中的初始化列表演绎需要 #include <initializer_list>"
 
-#: 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
 #, gcc-internal-format
 msgid "language string %<\"%E\"%> not recognized"
 msgstr "语言字符串%<\"%E\"%>不可识别"
 
-#: cp/class.cc:8380
+#: cp/class.cc:8406
 #, gcc-internal-format
 msgid "cannot resolve overloaded function %qD based on conversion to type %qT"
 msgstr "无法解析重载函数%qD,基于向类型%qT的转换"
 
-#: cp/class.cc:8538
+#: cp/class.cc:8564
 #, gcc-internal-format
 msgid "no matches converting function %qD to type %q#T"
 msgstr "没有可将函数%qD转换到类型%q#T的匹配项"
 
-#: cp/class.cc:8565
+#: cp/class.cc:8591
 #, gcc-internal-format
 msgid "converting overloaded function %qD to type %q#T is ambiguous"
 msgstr "将重载函数%qD转换为类型%q#T有歧义"
 
-#: cp/class.cc:8592
+#: cp/class.cc:8618
 #, gcc-internal-format
 msgid "assuming pointer to member %qD"
 msgstr "假定是成员指针%qD"
 
-#: cp/class.cc:8595
+#: cp/class.cc:8621
 #, gcc-internal-format
 msgid "(a pointer to member can only be formed with %<&%E%>)"
 msgstr "(成员指针只能用%<&%E%>构成)"
 
-#: cp/class.cc:8671 cp/class.cc:8713
+#: cp/class.cc:8697 cp/class.cc:8739
 #, gcc-internal-format
 msgid "not enough type information"
 msgstr "类型信息不充分"
 
-#: cp/class.cc:8691
+#: cp/class.cc:8717
 #, gcc-internal-format
 msgid "cannot convert %qE from type %qT to type %qT"
 msgstr "无法将%qE从类型%qT转换到类型%qT"
 
-#: cp/class.cc:8965
+#: cp/class.cc:8991
 #, fuzzy, gcc-internal-format
 #| msgid "declaration of %qD as member of %qT"
 msgid "declaration of %q#D changes meaning of %qD"
 msgstr "%qD声明为%qT的一个成员"
 
-#: cp/class.cc:8968
+#: cp/class.cc:8994
 #, fuzzy, gcc-internal-format
 #| msgid "redeclared here as %q#D"
 msgid "%qD declared here as %q#D"
@@ -52150,7 +52297,7 @@ msgstr "函数%q+#D的抽象返回类型无效"
 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 "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
@@ -52201,7 +52348,7 @@ msgstr "调用这些函数时给出警告"
 msgid "%q+E is not a constant expression"
 msgstr "%q+E不是一个常量表达式"
 
-#: 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 "内部函数"
@@ -52250,7 +52397,7 @@ msgstr "%qT是%qT的有歧义的基类"
 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"
@@ -52376,8 +52523,8 @@ msgstr "成员%qD是未初始化的引用"
 msgid "dereferencing a null pointer in %qE"
 msgstr "提领%<void *%>指针"
 
-#: 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
 #, gcc-internal-format
 msgid "%qE is not a constant expression"
 msgstr "%qE不是一个常量表达式"
@@ -52473,7 +52620,7 @@ msgstr "成员%qD是未初始化的引用"
 msgid "%qs cannot be constant evaluated because the argument cannot be interpreted"
 msgstr ""
 
-#: cp/constexpr.cc:5341 cp/constexpr.cc:7223
+#: cp/constexpr.cc:5341 cp/constexpr.cc:7302
 #, fuzzy, gcc-internal-format
 #| msgid "dereferencing %<void *%> pointer"
 msgid "dereferencing a null pointer"
@@ -52551,7 +52698,7 @@ msgstr "扩展:从 %s 到 %s,位于 %L"
 msgid "change of the active member of a union from %qD to %qD during initialization"
 msgstr "扩展:从 %s 到 %s,位于 %L"
 
-#: 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 "跳转至语句表达式中"
@@ -52598,196 +52745,200 @@ 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 "%qE is not a constant expression"
 msgid "value %qE of type %qT is not a constant expression"
 msgstr "%qE不是一个常量表达式"
 
-#: cp/constexpr.cc:6503
+#: cp/constexpr.cc:6581
 #, fuzzy, gcc-internal-format
 msgid "%<constexpr%> evaluation operation count exceeds limit of %wd (use %<-fconstexpr-ops-limit=%> to increase the limit)"
 msgstr "在实例化%2$qD时模板实例化深度超过最大值 %1$d(使用 use -ftemplate-depth= 来增大最大值)"
 
-#: cp/constexpr.cc:6655
-#, fuzzy, gcc-internal-format
-#| msgid "non-thread-local declaration of %q+D follows thread-local declaration"
-msgid "control passes through declaration of %qD with thread storage duration"
-msgstr "%q+D的线程局部声明跟在其非线程局部声明之后"
+#: cp/constexpr.cc:6734
+#, gcc-internal-format
+msgid "control passes through definition of %qD with thread storage duration"
+msgstr ""
 
-#: 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 "截取的变量 %qD 与 non-automatic 贮藏体持续时间"
 
-#: 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 "枚举和非枚举类型一起出现在条件表达式中"
 
-#: 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 "跳转至语句表达式中"
 
-#: 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 "表达式%qE具有抽象类类型%qT,不能用于 throw 表达式中"
 
-#: cp/constexpr.cc:7198
+#: cp/constexpr.cc:7277
 #, fuzzy, gcc-internal-format
 msgid "cast from %qT is not allowed"
 msgstr "%s:不允许空权字符串"
 
-#: cp/constexpr.cc:7234
+#: cp/constexpr.cc:7313
 #, fuzzy, gcc-internal-format
 msgid "%<reinterpret_cast<%T>(%E)%> is not a constant expression"
 msgstr "跳转至语句表达式中"
 
-#: 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 "整型表达式%qE不是常量"
 
-#: cp/constexpr.cc:7386 cp/constexpr.cc:9373
+#: cp/constexpr.cc:7478 cp/constexpr.cc:9485
 #, fuzzy, gcc-internal-format
 #| msgid "%qE is not a constant expression"
 msgid "%<goto%> is not a constant expression"
 msgstr "%qE不是一个常量表达式"
 
-#: cp/constexpr.cc:7442
+#: cp/constexpr.cc:7534
 #, fuzzy, gcc-internal-format
 #| msgid "expected template-id"
 msgid "unexpected template-id %qE"
 msgstr "需要模板 ID"
 
-#: 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 "built-in function %qD takes one argument only"
 msgid "function concept must be called"
 msgstr "内建函数%qD只需要一个实参"
 
-#: cp/constexpr.cc:7473
+#: cp/constexpr.cc:7565
 #, fuzzy, gcc-internal-format
 #| msgid "size of array %qD is not an integral constant-expression"
 msgid "address of a call to %qs is not a constant expression"
 msgstr "数组%qD的大小不是一个整数常表达式"
 
-#: cp/constexpr.cc:7492
+#: cp/constexpr.cc:7584
 #, fuzzy, gcc-internal-format
 msgid "unexpected expression %qE of kind %s"
 msgstr "KIND 参数 %s 在%L处必须是初始化表达式"
 
-#: 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 "%qT 无法类型的完成常数运算式因为它有可变的 sub-objects"
 
-#: 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 "%qT 无法类型的完成常数运算式因为它有可变的 sub-objects"
 
-#: 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 "%qT 无法类型的完成常数运算式因为它有可变的 sub-objects"
 
-#: 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 "%qT 无法类型的完成常数运算式因为它有可变的 sub-objects"
 
-#: 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 "invalid cast of an rvalue expression of type %qT to type %qT"
 msgid "lvalue-to-rvalue conversion of a volatile lvalue %qE with type %qT"
 msgstr "从具有类型%qT的右值表达式到类型%qT中的转换无效"
 
-#: cp/constexpr.cc:8616
+#: cp/constexpr.cc:8716
 #, fuzzy, gcc-internal-format
 msgid "lambda capture of %qE is not a constant expression"
 msgstr "整型表达式%qE不是常量"
 
-#: cp/constexpr.cc:8619
+#: cp/constexpr.cc:8719
 #, gcc-internal-format
 msgid "because it is used as a glvalue"
 msgstr ""
 
-#: cp/constexpr.cc:8671
+#: cp/constexpr.cc:8771
 #, fuzzy, gcc-internal-format
 msgid "%<reinterpret_cast%> from integer to pointer"
 msgstr "赋值时将整数赋给指针,未作类型转换"
 
-#: 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 "address-of 对象 %qE 与线程本地或自动贮藏体并非常数运算式"
 
-#: cp/constexpr.cc:8743
+#: cp/constexpr.cc:8843
 #, fuzzy, gcc-internal-format
 msgid "use of %<this%> in a constant expression"
 msgstr "整型表达式%qE不是常量"
 
-#: cp/constexpr.cc:8891
+#: cp/constexpr.cc:8991
 #, fuzzy, gcc-internal-format
 #| msgid "lambda-expression in a constant expression"
 msgid "lambda-expression is not a constant expression before C++17"
 msgstr "常量表达式中的 Lambda 表达式"
 
-#: cp/constexpr.cc:8959
+#: cp/constexpr.cc:9059
 #, fuzzy, gcc-internal-format
 #| msgid "virtual functions cannot be friends"
 msgid "virtual functions cannot be %<constexpr%> before C++20"
 msgstr "虚函数不能是友元"
 
-#: 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 "typeid-expression 并非常数运算式因为 %qE 是的 polymorphic 类型"
 
-#: cp/constexpr.cc:9038
+#: cp/constexpr.cc:9138
 #, fuzzy, gcc-internal-format
 msgid "cast to non-integral type %qT in a constant expression"
 msgstr "常量表达式中类型错误"
 
-#: 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 "函数%qs的存储类%<__thread%>无效"
 
-#: 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 "非静态数据成员%qE被声明为%<constexpr%>"
 
-#: cp/constexpr.cc:9168
+#: cp/constexpr.cc:9275
 #, fuzzy, gcc-internal-format
 msgid "division by zero is not a constant expression"
 msgstr "%L处被零除"
 
-#: cp/constexpr.cc:9269
+#: cp/constexpr.cc:9376
 #, fuzzy, gcc-internal-format
 msgid "%<delete[]%> is not a constant expression"
 msgstr "跳转至语句表达式中"
 
-#: cp/constexpr.cc:9343
+#: cp/constexpr.cc:9444
+#, fuzzy, gcc-internal-format
+msgid "neither branch of %<if%> is a constant expression"
+msgstr "整型表达式%qE不是常量"
+
+#: cp/constexpr.cc:9455
 #, fuzzy, gcc-internal-format
 msgid "non-constant array initialization"
 msgstr "%L处非常量初始化表达式"
 
-#: 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 "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/constexpr.cc:9412
+#: cp/constexpr.cc:9524
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "unexpected AST of kind %s"
 msgstr "%2$L处 %1$s 种别无效"
@@ -52824,297 +52975,349 @@ msgstr "没有参数"
 msgid "argument %qE"
 msgstr "%L处内建 REPEAT 的 NCOPIES 实参是负的"
 
-#: 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不匹配原先的声明"
 
-#: cp/constraint.cc:1144
+#: cp/constraint.cc:1153
 #, fuzzy, gcc-internal-format
 msgid "original template declaration here"
 msgstr "%q+D已在此声明过"
 
-#: cp/constraint.cc:1348
+#: cp/constraint.cc:1352
 #, fuzzy, gcc-internal-format
 #| msgid "no matching template for %qD found"
 msgid "no matching concepts for %qE"
 msgstr "没有找到与%qD匹配的模板"
 
-#: cp/constraint.cc:1649
+#: cp/constraint.cc:1653
 #, gcc-internal-format
 msgid "%qE cannot be introduced with an ellipsis %<...%>"
 msgstr ""
 
-#: cp/constraint.cc:1650
+#: cp/constraint.cc:1654
 #, fuzzy, gcc-internal-format
 #| msgid "previously declared here"
 msgid "prototype declared here"
 msgstr "以前在此声明过"
 
-#: cp/constraint.cc:1737
+#: cp/constraint.cc:1741
 #, fuzzy, gcc-internal-format
 #| msgid "template parameters cannot be friends"
 msgid "all template parameters of %qD must be introduced"
 msgstr "模板参数不能是友元"
 
-#: cp/constraint.cc:1765
+#: cp/constraint.cc:1769
 #, fuzzy, gcc-internal-format
 msgid "cannot deduce template parameters from introduction list"
 msgstr "%qE不是类型%qT的有效模板实参,因为%qE不是一个变量"
 
-#: cp/constraint.cc:1929
+#: cp/constraint.cc:1933
 #, fuzzy, gcc-internal-format
 msgid "the required expression %qE is invalid, because"
 msgstr "KIND 参数 %s 在%L处必须是初始化表达式"
 
-#: cp/constraint.cc:1936
+#: cp/constraint.cc:1940
 #, fuzzy, gcc-internal-format
 msgid "the required expression %qE is invalid"
 msgstr "KIND 参数 %s 在%L处必须是初始化表达式"
 
 #. 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 "字段%qE的类型不完全"
 
-#: cp/constraint.cc:1979
+#: cp/constraint.cc:1983
 #, fuzzy, gcc-internal-format
 #| msgid "duplicate base type %qT invalid"
 msgid "the required type %qT is invalid"
 msgstr "重复的基类型%qT无效"
 
-#: cp/constraint.cc:2032 cp/constraint.cc:2105
+#: cp/constraint.cc:2036 cp/constraint.cc:2109
 #, fuzzy, gcc-internal-format
 #| msgid "cannot convert %qT to %qT"
 msgid "cannot convert %qE to %qT"
 msgstr "不能将%qT转换为%qT"
 
-#: 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不是一个模板"
 
-#: 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 "insn does not satisfy its constraints:"
 msgid "%qE does not satisfy return-type-requirement"
 msgstr "指令不满足其约束:"
 
-#: cp/constraint.cc:2100
+#: cp/constraint.cc:2104
 #, fuzzy, gcc-internal-format
 #| msgid "cannot convert %qT to %qT"
 msgid "cannot convert %qE to %qT because"
 msgstr "不能将%qT转换为%qT"
 
 #. 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 "析构函数不能被 cv 限定"
 
-#: cp/constraint.cc:2623
+#: cp/constraint.cc:2627
 #, fuzzy, gcc-internal-format
 #| msgid "explicit specialization of %qD after first use"
 msgid "satisfaction of atomic constraint %qE depends on itself"
 msgstr "在初次使用后显式特例化%qD"
 
-#: cp/constraint.cc:2669
+#: cp/constraint.cc:2673
 #, fuzzy, gcc-internal-format
 #| msgid "conversion from %qT to %qT discards qualifiers"
 msgid "satisfaction value of atomic constraint %qE changed from %qE to %qE"
 msgstr "从%qT到%qT的转换丢失了限定信息"
 
-#: 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 "definition of concept %qD is empty"
 msgstr "%qs后缺少宏名"
 
-#: 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 "%q#T has no user-provided default constructor"
 msgid "  %qT is not %<nothrow%> default constructible"
 msgstr "%q#T没有用户提供的默认构造函数"
 
-#: 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不是一个变量"
 
-#: cp/constraint.cc:3583
+#: cp/constraint.cc:3600 cp/constraint.cc:3680
 #, fuzzy, gcc-internal-format
 #| msgid "%q#T has no user-provided default constructor"
 msgid "  %qT is not trivially default constructible"
 msgstr "%q#T没有用户提供的默认构造函数"
 
-#: cp/constraint.cc:3586
+#: cp/constraint.cc:3603
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not trivially copy constructible"
 msgstr "基类%q#T有一个非虚析构函数"
 
-#: cp/constraint.cc:3589
+#: cp/constraint.cc:3606
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not trivially destructible"
 msgstr "基类%q#T有一个非虚析构函数"
 
-#: cp/constraint.cc:3592
+#: cp/constraint.cc:3609
 #, fuzzy, gcc-internal-format
 msgid "  %qT does not have a virtual destructor"
 msgstr "基类%q#T有一个非虚析构函数"
 
-#: 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不是一个类"
 
-#: cp/constraint.cc:3598
+#: cp/constraint.cc:3615
 #, fuzzy, gcc-internal-format
 #| msgid "%qT is not a base of %qT"
 msgid "  %qT is not a base of %qT"
 msgstr "%qT不是%qT的基类"
 
-#: 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不是一个类"
 
-#: 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不是一个类"
 
-#: 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不是一个模板"
 
-#: 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不是一个类"
 
-#: cp/constraint.cc:3613
+#: cp/constraint.cc:3630
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not layout compatible with %qT"
 msgstr "选择%qD而不是%qD"
 
-#: 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不是一个类"
 
-#: cp/constraint.cc:3619
+#: cp/constraint.cc:3636
 #, fuzzy, gcc-internal-format
 #| msgid "%qT is not an accessible base of %qT"
 msgid "  %qT is not pointer-interconvertible base of %qT"
 msgstr "%qT是%qT的一个不可访问的基类"
 
-#: 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不是一个类型"
 
-#: 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不是一个类"
 
-#: cp/constraint.cc:3629
+#: cp/constraint.cc:3646
 #, fuzzy, gcc-internal-format
 #| msgid "%qT is not a base of %qT"
 msgid "  %qT is not the same as %qT"
 msgstr "%qT不是%qT的基类"
 
-#: cp/constraint.cc:3632
+#: cp/constraint.cc:3649
 #, fuzzy, gcc-internal-format
 #| msgid "%qT is not a template type"
 msgid "  %qT is not an standard layout type"
 msgstr "%qT不是一个模板类型"
 
-#: 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不是一个类"
 
-#: cp/constraint.cc:3638
+#: cp/constraint.cc:3655
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not a union"
 msgstr "在函数%qs中"
 
-#: 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不是一个模板"
+
+#: cp/constraint.cc:3661
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not trivially copyable"
+msgstr "在%q#T和%q#T间比较"
+
+#: cp/constraint.cc:3664
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not assignable from %qT"
+msgstr "派生联合%qT无效"
+
+#: cp/constraint.cc:3667
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not trivially assignable from %qT"
+msgstr "派生联合%qT无效"
+
+#: cp/constraint.cc:3670
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not %<nothrow%> assignable from %qT"
+msgstr "派生联合%qT无效"
+
+#: cp/constraint.cc:3674
+#, fuzzy, gcc-internal-format
+#| msgid "type %qE has no default constructor to call"
+msgid "  %qT is not default constructible"
+msgstr "类型%qE没有可以调用的默认构造函数"
+
+#: cp/constraint.cc:3676
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not constructible from %qE"
+msgstr "派生联合%qT无效"
+
+#: cp/constraint.cc:3682
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not trivially constructible from %qE"
+msgstr "派生联合%qT无效"
+
+#: cp/constraint.cc:3688
+#, fuzzy, gcc-internal-format
+msgid "  %qT is not %<nothrow%> constructible from %qE"
+msgstr "派生联合%qT无效"
+
+#: cp/constraint.cc:3691
+#, fuzzy, gcc-internal-format
+msgid "  %qT does not have unique object representations"
+msgstr "new 声明中的表达式必须具有整数或枚举类型"
+
+#: cp/constraint.cc:3717
 #, fuzzy, gcc-internal-format
 msgid "invalid constraints"
 msgstr "%<#pragma pack%>中有无效常量 - 已忽略"
 
-#: cp/constraint.cc:3686
+#: cp/constraint.cc:3742
 #, gcc-internal-format
 msgid "constraint %qE has type %qT, not %<bool%>"
 msgstr ""
 
-#: cp/constraint.cc:3689
+#: cp/constraint.cc:3745
 #, fuzzy, gcc-internal-format
 #| msgid "user-defined %qD always evaluates both arguments"
 msgid "the expression %qE evaluated to %<false%>"
 msgstr "用户定义的%qD总是计算所有两个参数"
 
-#: cp/constraint.cc:3740
+#: cp/constraint.cc:3796
 #, fuzzy, gcc-internal-format
 msgid "constraints not satisfied"
 msgstr "析构函数不能被 cv 限定"
 
-#: cp/constraint.cc:3755
+#: cp/constraint.cc:3811
 #, gcc-internal-format
 msgid "set %qs to at least %d for more detail"
 msgstr ""
@@ -53317,67 +53520,67 @@ msgstr ""
 msgid "cannot initialize a return object of type %qT with an rvalue of type %<void%>"
 msgstr "用类型为%2$qT的右值初始化类型为%1$qT的非常量引用无效"
 
-#: 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 destructor %qE"
 msgid "taking address of an immediate function %qD"
 msgstr "取析构函数%qE的地址"
 
-#: cp/cp-gimplify.cc:1552
+#: cp/cp-gimplify.cc:1553
 #, fuzzy, gcc-internal-format
 #| msgid "the address of %qD will always evaluate as %<true%>"
 msgid "%<throw%> will always call %<terminate%>"
 msgstr "%qD的地址总是等价为%<true%>"
 
-#: cp/cp-gimplify.cc:1555
+#: cp/cp-gimplify.cc:1556
 #, fuzzy, gcc-internal-format
 #| msgid "a destructor cannot be %<constexpr%>"
 msgid "in C++11 destructors default to %<noexcept%>"
 msgstr "析构函数不能是%<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 "忽略在其定义之后为%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不是一个类型"
 
-#: cp/cp-gimplify.cc:3068
+#: cp/cp-gimplify.cc:3104
 #, fuzzy, gcc-internal-format
 #| msgid "%qT is not a class type"
 msgid "%qD is not a class type"
 msgstr "%qT不是一个类"
 
-#: cp/cp-gimplify.cc:3085
+#: cp/cp-gimplify.cc:3121
 #, fuzzy, gcc-internal-format
 msgid "%qD does not have %<const char *%> type"
 msgstr "%qE不是一个类"
 
-#: cp/cp-gimplify.cc:3096
+#: cp/cp-gimplify.cc:3132
 #, fuzzy, gcc-internal-format
 msgid "%qD does not have integral type"
 msgstr "new 声明中的表达式必须具有整数或枚举类型"
 
-#: 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 "括入并行"
@@ -53426,7 +53629,7 @@ msgstr "将类型为%2$qT的右值转换为非常量引用类型%1$q#T"
 msgid "conversion from %qH to %qI discards qualifiers"
 msgstr "从%qT到%qT的转换丢失了限定信息"
 
-#: cp/cvt.cc:498 cp/typeck.cc:8346
+#: cp/cvt.cc:498 cp/typeck.cc:8360
 #, gcc-internal-format
 msgid "casting %qT to %qT does not dereference pointer"
 msgstr "从%qT转换到%qT并未提领指针"
@@ -53644,117 +53847,117 @@ msgstr "语句中的对象%qE具有不完全的类型%qT,不会被访问"
 msgid "variable %qE of incomplete type %qT will not be accessed in for increment expression"
 msgstr "for 循环增量表达式中的对象%qE具有不完全的类型%qT,不会被访问"
 
-#: cp/cvt.cc:1498
+#: cp/cvt.cc:1501
 #, fuzzy, gcc-internal-format
 msgid "conversion to void cannot resolve address of overloaded function"
 msgstr "无法解析重载函数%qD,基于向类型%qT的转换"
 
-#: 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 "%s 无法解析重载的函数地址"
 
-#: 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 "%s 无法解析重载的函数地址"
 
-#: 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 "%s 无法解析重载的函数地址"
 
-#: 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 "%s 无法解析重载的函数地址"
 
-#: cp/cvt.cc:1518
+#: cp/cvt.cc:1521
 #, fuzzy, gcc-internal-format
 msgid "statement cannot resolve address of overloaded function"
 msgstr "%s 无法解析重载的函数地址"
 
-#: cp/cvt.cc:1522
+#: cp/cvt.cc:1525
 #, fuzzy, gcc-internal-format
 msgid "for increment expression cannot resolve address of overloaded function"
 msgstr "%s 无法解析重载的函数地址"
 
-#: 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 "%s 是对函数%qE的一个引用而不是调用"
 
-#: 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 "%s 是对函数%qE的一个引用而不是调用"
 
-#: 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 "%s 是对函数%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 "%s 是对函数%qE的一个引用而不是调用"
 
-#: cp/cvt.cc:1558
+#: cp/cvt.cc:1561
 #, fuzzy, gcc-internal-format
 msgid "statement is a reference, not call, to function %qE"
 msgstr "给予函数%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 "%s 是对函数%qE的一个引用而不是调用"
 
-#: cp/cvt.cc:1592
+#: cp/cvt.cc:1595
 #, fuzzy, gcc-internal-format
 msgid "second operand of conditional expression has no effect"
 msgstr "逗号表达式的左操作数不起作用"
 
-#: cp/cvt.cc:1597
+#: cp/cvt.cc:1600
 #, fuzzy, gcc-internal-format
 msgid "third operand of conditional expression has no effect"
 msgstr "逗号表达式的左操作数不起作用"
 
-#: cp/cvt.cc:1602
+#: cp/cvt.cc:1605
 #, fuzzy, gcc-internal-format
 msgid "right operand of comma operator has no effect"
 msgstr "逗号表达式的左操作数不起作用"
 
-#: cp/cvt.cc:1606
+#: cp/cvt.cc:1609
 #, fuzzy, gcc-internal-format
 msgid "left operand of comma operator has no effect"
 msgstr "逗号表达式的左操作数不起作用"
 
-#: cp/cvt.cc:1610
+#: cp/cvt.cc:1613
 #, gcc-internal-format
 msgid "statement has no effect"
 msgstr "语句不起作用"
 
-#: cp/cvt.cc:1614
+#: cp/cvt.cc:1617
 #, gcc-internal-format
 msgid "for increment expression has no effect"
 msgstr "for 循环増量表达式不起作用"
 
-#: cp/cvt.cc:1767
+#: cp/cvt.cc:1770
 #, gcc-internal-format
 msgid "converting NULL to non-pointer type"
 msgstr "将 NULL 转换为非指针类型"
 
-#: cp/cvt.cc:1885
+#: cp/cvt.cc:1888
 #, fuzzy, gcc-internal-format
 msgid "default type conversion cannot deduce template argument for %qD"
 msgstr "不能将模板参数从%qE转换到%qT"
 
-#: cp/cvt.cc:1900
+#: cp/cvt.cc:1903
 #, gcc-internal-format
 msgid "ambiguous default type conversion from %qT"
 msgstr "%qT的默认类型转换有歧义"
 
-#: cp/cvt.cc:1903
+#: cp/cvt.cc:1906
 #, gcc-internal-format
 msgid "  candidate conversions include %qD and %qD"
 msgstr "  备选转换包括%qD和%qD"
@@ -53827,7 +54030,7 @@ msgstr "从先前的声明%q+F"
 msgid "redeclaration %qD differs in %qs from previous declaration"
 msgstr "对%qD的重声明在%<constexpr%>方面"
 
-#: 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 "先前的声明%q+D"
@@ -53859,199 +54062,210 @@ msgstr "%qD先前没有声明"
 msgid "ambiguating new declaration %q+#D"
 msgstr "%q+D先前没有声明过"
 
-#: 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的声明"
 
-#: cp/decl.cc:1524
+#: cp/decl.cc:1493
+#, fuzzy, gcc-internal-format
+#| msgid "redefinition of default argument for %q#D"
+msgid "redefinition of default argument for %q+#D"
+msgstr "重定义%q#D的默认参数"
+
+#: cp/decl.cc:1495
+#, gcc-internal-format
+msgid "original definition appeared here"
+msgstr "原始定义在此"
+
+#: cp/decl.cc:1561
 #, fuzzy, gcc-internal-format
 #| msgid "built-in function %q+D declared as non-function"
 msgid "built-in function %qD declared as non-function"
 msgstr "内建函数%q+D未被声明为函数"
 
-#: cp/decl.cc:1537 cp/decl.cc:1663
+#: cp/decl.cc:1574 cp/decl.cc:1700
 #, gcc-internal-format
 msgid "shadowing built-in function %q#D"
 msgstr "隐藏了内建函数%q#D"
 
-#: cp/decl.cc:1538 cp/decl.cc:1664
+#: cp/decl.cc:1575 cp/decl.cc:1701
 #, gcc-internal-format
 msgid "shadowing library function %q#D"
 msgstr "隐藏了库函数%q#D"
 
-#: cp/decl.cc:1546
+#: cp/decl.cc:1583
 #, gcc-internal-format
 msgid "library function %q#D redeclared as non-function %q#D"
 msgstr "库函数%q#D重声明为非函数%q#D"
 
-#: 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的节与早先的声明冲突"
 
-#: cp/decl.cc:1638
+#: cp/decl.cc:1675
 #, fuzzy, gcc-internal-format
 msgid "definition of %q#D ambiguates built-in declaration %q#D"
 msgstr "使内建声明%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 "使内建声明%q#D出现歧义"
 
-#: cp/decl.cc:1648
+#: cp/decl.cc:1685
 #, fuzzy, gcc-internal-format
 #| msgid "derived type declaration"
 msgid "ignoring the %q#D declaration"
 msgstr "派生的类型声明"
 
-#: cp/decl.cc:1752
+#: cp/decl.cc:1789
 #, fuzzy, gcc-internal-format
 msgid "literal operator %q#D conflicts with raw literal operator"
 msgstr "实字运算符模板 %q+D 冲突与原始实字运算符 %qD"
 
-#: cp/decl.cc:1756
+#: cp/decl.cc:1793
 #, fuzzy, gcc-internal-format
 msgid "raw literal operator %q#D conflicts with literal operator template"
 msgstr "原始实字运算符 %q+D 冲突与实字运算符模板 %qD"
 
-#: cp/decl.cc:1772
+#: cp/decl.cc:1809
 #, fuzzy, gcc-internal-format
 #| msgid "%q#D redeclared as different kind of symbol"
 msgid "%q#D redeclared as different kind of entity"
 msgstr "%q#D被重新声明为不同意义的符号"
 
-#: cp/decl.cc:1796
+#: cp/decl.cc:1833
 #, fuzzy, gcc-internal-format
 msgid "conflicting declaration of template %q#D"
 msgstr "相互冲突的声明%q#D"
 
-#: cp/decl.cc:1818
+#: cp/decl.cc:1855
 #, fuzzy, gcc-internal-format
 msgid "conflicting declaration of C function %q#D"
 msgstr "相互冲突的声明%q#D"
 
-#: cp/decl.cc:1835
+#: cp/decl.cc:1872
 #, fuzzy, gcc-internal-format
 msgid "ambiguating new declaration of %q#D"
 msgstr "%q+D先前没有声明过"
 
-#: cp/decl.cc:1845
+#: cp/decl.cc:1882
 #, fuzzy, gcc-internal-format
 #| msgid "conflicting declaration %q#D"
 msgid "conflicting declaration %q#D"
 msgstr "相互冲突的声明%q#D"
 
-#: cp/decl.cc:1847
+#: cp/decl.cc:1884
 #, fuzzy, gcc-internal-format
 msgid "previous declaration as %q#D"
 msgstr "先前的声明%q+D"
 
-#: cp/decl.cc:1857
+#: cp/decl.cc:1894
 #, fuzzy, gcc-internal-format
 msgid "redeclaration of %<pragma omp declare reduction%>"
 msgstr "%qD的声明隐藏了一个全局声明"
 
-#: cp/decl.cc:1859
+#: cp/decl.cc:1896
 #, fuzzy, gcc-internal-format
 msgid "previous %<pragma omp declare reduction%> declaration"
 msgstr "先前对于%q+#D的非函数声明"
 
-#: cp/decl.cc:1917
+#: cp/decl.cc:1954
 #, fuzzy, gcc-internal-format
 #| msgid "%q+#D previously defined here"
 msgid "%q#D previously defined here"
 msgstr "%q+#D已在此定义过"
 
-#: 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已在此定义过"
 
-#: cp/decl.cc:1929
+#: cp/decl.cc:1966
 #, fuzzy, gcc-internal-format
 msgid "prototype specified for %q#D"
 msgstr "%q+D的寄存器名无效"
 
-#: cp/decl.cc:1931
+#: cp/decl.cc:1968
 #, fuzzy, gcc-internal-format
 msgid "previous non-prototype definition here"
 msgstr "%q+D的上一个定义在此"
 
-#: cp/decl.cc:1971
+#: cp/decl.cc:2008
 #, fuzzy, gcc-internal-format
 msgid "conflicting declaration of %q#D with %qL linkage"
 msgstr "%q+D声明为没有外部链接的,之前却有外部声明"
 
-#: cp/decl.cc:1974
+#: cp/decl.cc:2011
 #, fuzzy, gcc-internal-format
 msgid "previous declaration with %qL linkage"
 msgstr "%qD先前没有声明"
 
-#: 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 "为%2$q#D的第 %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的上一个定义在此"
 
-#: cp/decl.cc:2062
+#: cp/decl.cc:2113
 #, fuzzy, gcc-internal-format
 msgid "declaration %qD conflicts with builtin"
 msgstr "%q+D的节与早先的声明冲突"
 
-#: cp/decl.cc:2070
+#: cp/decl.cc:2121
 #, fuzzy, gcc-internal-format
 msgid "declaration %qD conflicts with import"
 msgstr "%q+D的节与早先的声明冲突"
 
-#: cp/decl.cc:2071
+#: cp/decl.cc:2122
 #, fuzzy, gcc-internal-format
 #| msgid "declared here"
 msgid "import declared %q#D here"
 msgstr "在此声明"
 
-#: cp/decl.cc:2079
+#: cp/decl.cc:2130
 #, fuzzy, gcc-internal-format
 #| msgid "conflicting declaration %q#D"
 msgid "conflicting exporting declaration %qD"
 msgstr "相互冲突的声明%q#D"
 
-#: cp/decl.cc:2080
+#: cp/decl.cc:2131
 #, fuzzy, gcc-internal-format
 #| msgid "previous declaration of %q+D was here"
 msgid "previous declaration %q#D here"
 msgstr "%q+D的上一个声明在此"
 
-#: cp/decl.cc:2105
+#: cp/decl.cc:2156
 #, fuzzy, gcc-internal-format
 #| msgid "previous definition of %q+D was here"
 msgid "previous definition of %qD here"
 msgstr "%q+D的上一个定义在此"
 
-#: cp/decl.cc:2106
+#: cp/decl.cc:2157
 #, fuzzy, gcc-internal-format
 #| msgid "previous declaration of %q+D was here"
 msgid "previous declaration of %qD here"
 msgstr "%q+D的上一个声明在此"
 
-#: cp/decl.cc:2119
+#: cp/decl.cc:2170
 #, fuzzy, gcc-internal-format
 #| msgid "function %qD declared virtual inside a union"
 msgid "function %qD declared %<[[noreturn]]%> but its first declaration was not"
 msgstr "联合成员函数%qD被声明为虚函数"
 
-#: cp/decl.cc:2164
+#: cp/decl.cc:2215
 #, gcc-internal-format
 msgid "redundant redeclaration of %qD in same scope"
 msgstr "同一作用域中%qD冗余的重声明"
 
-#: cp/decl.cc:2180
+#: cp/decl.cc:2231
 #, fuzzy, gcc-internal-format
 #| msgid "deleted definition of %qD"
 msgid "deleted definition of %qD is not first declaration"
@@ -54065,50 +54279,50 @@ msgstr "删除了%qD的定义"
 #. 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
 #, gcc-internal-format
 msgid "explicit specialization of %qD after first use"
 msgstr "在初次使用后显式特例化%qD"
 
-#: cp/decl.cc:2794
+#: cp/decl.cc:2850
 #, fuzzy, gcc-internal-format
 msgid "%qD: visibility attribute ignored because it conflicts with previous declaration"
 msgstr "%q+D的数据区域与先前的声明冲突"
 
 #. 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
 #, gcc-internal-format
 msgid "redefinition of %q#D"
 msgstr "%q#D 重定义"
 
-#: cp/decl.cc:3074
+#: cp/decl.cc:3130
 #, gcc-internal-format
 msgid "%qD conflicts with used function"
 msgstr "%qD与已用的函数冲突"
 
-#: cp/decl.cc:3084
+#: cp/decl.cc:3140
 #, gcc-internal-format
 msgid "%q#D not declared in class"
 msgstr "%q#D未在类中声明"
 
-#: cp/decl.cc:3098 cp/decl.cc:3156
+#: cp/decl.cc:3154 cp/decl.cc:3212
 #, gcc-internal-format
 msgid "%q+D redeclared inline with %<gnu_inline%> attribute"
 msgstr "%q+D重声明内联并有%<gnu_inline%>属性"
 
-#: cp/decl.cc:3101 cp/decl.cc:3159
+#: cp/decl.cc:3157 cp/decl.cc:3215
 #, gcc-internal-format
 msgid "%q+D redeclared inline without %<gnu_inline%> attribute"
 msgstr "%q+D重声明为内联而没有%<gnu_inline%>属性"
 
-#: cp/decl.cc:3108 cp/decl.cc:3166
+#: cp/decl.cc:3164 cp/decl.cc:3222
 #, fuzzy, gcc-internal-format
 #| msgid "specialization of %qD must appear at namespace scope"
 msgid "deduction guide %q+D redeclared"
 msgstr "%qD的特例化必须出现在命名空间内"
 
-#: cp/decl.cc:3115
+#: cp/decl.cc:3171
 #, gcc-internal-format
 msgid "comparison operator %q+D defaulted after its first declaration"
 msgstr ""
@@ -54116,2480 +54330,2479 @@ msgstr ""
 #. is_primary=
 #. is_partial=
 #. is_friend_decl=
-#: cp/decl.cc:3180
+#: cp/decl.cc:3236
 #, gcc-internal-format
 msgid "redeclaration of friend %q#D may not have default template arguments"
 msgstr "友元%q#D的重声明不能有默认模板参数"
 
-#: cp/decl.cc:3195
+#: cp/decl.cc:3251
 #, gcc-internal-format
 msgid "thread-local declaration of %q#D follows non-thread-local declaration"
 msgstr "%q#D的线程局部声明出现在其非线程局部声明之后"
 
-#: cp/decl.cc:3198
+#: cp/decl.cc:3254
 #, gcc-internal-format
 msgid "non-thread-local declaration of %q#D follows thread-local declaration"
 msgstr "%q#D的非线程局部声明出现在其线程局部声明之后"
 
-#: 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
 #, gcc-internal-format
 msgid "redeclaration of %q#D"
 msgstr "%q#D重声明"
 
-#: cp/decl.cc:3240
+#: cp/decl.cc:3296
 #, fuzzy, gcc-internal-format
 #| msgid "redundant redeclaration of %qD in same scope"
 msgid "redundant redeclaration of %<constexpr%> static data member %qD"
 msgstr "同一作用域中%qD冗余的重声明"
 
-#: cp/decl.cc:3308
+#: cp/decl.cc:3364
 #, gcc-internal-format
 msgid "local label %qE conflicts with existing label"
 msgstr ""
 
-#: cp/decl.cc:3309
+#: cp/decl.cc:3365
 #, fuzzy, gcc-internal-format
 #| msgid "previous declaration"
 msgid "previous label"
 msgstr "上一个声明"
 
-#: cp/decl.cc:3399
+#: cp/decl.cc:3455
 #, gcc-internal-format
 msgid "  from here"
 msgstr "从这里"
 
-#: cp/decl.cc:3423 cp/decl.cc:3660
+#: cp/decl.cc:3479 cp/decl.cc:3716
 #, gcc-internal-format
 msgid "  exits OpenMP structured block"
 msgstr "退出了 OpenMP 结构块"
 
-#: cp/decl.cc:3451
+#: cp/decl.cc:3507
 #, fuzzy, gcc-internal-format
 #| msgid "  crosses initialization of %q+#D"
 msgid "  crosses initialization of %q#D"
 msgstr "跳过了%q+#D的初始化"
 
-#: cp/decl.cc:3454
+#: cp/decl.cc:3510
 #, fuzzy, gcc-internal-format
 #| msgid "  enters scope of %q+#D which has non-trivial destructor"
 msgid "  enters scope of %q#D, which has non-trivial destructor"
 msgstr "进入了有不平凡析构函数的%q+#D的作用域"
 
-#: cp/decl.cc:3468 cp/decl.cc:3629
+#: cp/decl.cc:3524 cp/decl.cc:3685
 #, fuzzy, gcc-internal-format
 #| msgid "  enters try block"
 msgid "  enters %<try%> block"
 msgstr "进入了 try 块"
 
-#: 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"
 msgid "  enters %<catch%> block"
 msgstr "进入了 catch 块"
 
-#: cp/decl.cc:3480 cp/decl.cc:3643
+#: cp/decl.cc:3536 cp/decl.cc:3699
 #, gcc-internal-format
 msgid "  enters OpenMP structured block"
 msgstr "进入了 OpenMP 结构块"
 
-#: cp/decl.cc:3486 cp/decl.cc:3633
+#: cp/decl.cc:3542 cp/decl.cc:3689
 #, gcc-internal-format
 msgid "  enters synchronized or atomic statement"
 msgstr ""
 
-#: cp/decl.cc:3493 cp/decl.cc:3635
+#: cp/decl.cc:3549 cp/decl.cc:3691
 #, fuzzy, gcc-internal-format
 #| msgid "expected statement"
 msgid "  enters %<constexpr if%> statement"
 msgstr "需要语句"
 
-#: cp/decl.cc:3499 cp/decl.cc:3637
+#: cp/decl.cc:3555 cp/decl.cc:3693
 #, fuzzy, gcc-internal-format
 #| msgid "expected statement"
 msgid "  enters %<consteval if%> statement"
 msgstr "需要语句"
 
-#: cp/decl.cc:3618
+#: cp/decl.cc:3674
 #, fuzzy, gcc-internal-format
 #| msgid "  skips initialization of %q+#D"
 msgid "  skips initialization of %q#D"
 msgstr "跳过了%q+#D的初始化"
 
-#: cp/decl.cc:3621
+#: cp/decl.cc:3677
 #, fuzzy, gcc-internal-format
 #| msgid "  enters scope of %q+#D which has non-trivial destructor"
 msgid "  enters scope of %q#D which has non-trivial destructor"
 msgstr "进入了有不平凡析构函数的%q+#D的作用域"
 
-#: 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 parameters"
 msgid "%qD used without template arguments"
 msgstr "%qD使用时未带模板参数"
 
-#: 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不是一个函数模板"
 
-#: cp/decl.cc:4094
+#: cp/decl.cc:4150
 #, gcc-internal-format
 msgid "%q#T is not a class"
 msgstr "%q#T不是一个类"
 
-#: cp/decl.cc:4122 cp/decl.cc:4213
+#: cp/decl.cc:4178 cp/decl.cc:4279
 #, gcc-internal-format
 msgid "no class template named %q#T in %q#T"
 msgstr "没有名为%q#T的类模板,在%q#T中 "
 
-#: cp/decl.cc:4123
+#: cp/decl.cc:4179
 #, fuzzy, gcc-internal-format
 msgid "no type named %q#T in %q#T"
 msgstr "没有名为%q#T的类模板,在%q#T中 "
 
-#: cp/decl.cc:4136
+#: cp/decl.cc:4192
 #, gcc-internal-format
 msgid "lookup of %qT in %qT is ambiguous"
 msgstr "在%2$qT中查询%1$qT有歧义"
 
-#: 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%>指定了%q#T,但后者不是一个类模板"
 
-#: 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%>指定了%q#T,但后者不是一个类型"
 
-#: cp/decl.cc:4222
+#: cp/decl.cc:4288
 #, fuzzy, gcc-internal-format
 msgid "template parameters do not match template %qD"
 msgstr "给%qD的模板实参不匹配原先的模板%qD"
 
-#: cp/decl.cc:4575
+#: cp/decl.cc:4641
 #, fuzzy, gcc-internal-format
 #| msgid "-falign-labels=%d is not supported"
 msgid "%<-faligned-new=%d%> is not a power of two"
 msgstr "不支持 -falign-labels=%d"
 
-#: 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 ""
 
-#: cp/decl.cc:5103
+#: cp/decl.cc:5169
 #, fuzzy, gcc-internal-format
 #| msgid "%q+#D invalid; an anonymous union can only have non-static data members"
 msgid "%q#D invalid; an anonymous union may only have public non-static data members"
 msgstr "%q+#D无效;匿名联合只能有非静态的数据成员"
 
-#: 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 not inside named type"
 msgid "anonymous struct with base classes"
 msgstr "匿名结构不在有名类型内"
 
-#: cp/decl.cc:5154
+#: cp/decl.cc:5220
 #, gcc-internal-format
 msgid "member %q+#D with constructor not allowed in anonymous aggregate"
 msgstr "有构造函数的成员%q+#D不允许在匿名聚合中出现"
 
-#: cp/decl.cc:5157
+#: cp/decl.cc:5223
 #, gcc-internal-format
 msgid "member %q+#D with destructor not allowed in anonymous aggregate"
 msgstr "有构构函数的成员%q+#D不允许在匿名聚合中出现"
 
-#: cp/decl.cc:5160
+#: cp/decl.cc:5226
 #, gcc-internal-format
 msgid "member %q+#D with copy assignment operator not allowed in anonymous aggregate"
 msgstr "有拷贝赋值运算符的成员%q+#D不能用在联合中"
 
-#: cp/decl.cc:5179
+#: cp/decl.cc:5245
 #, fuzzy, gcc-internal-format
 msgid "attribute ignored in declaration of %q#T"
 msgstr "%q+T先前在此处有过声明"
 
-#: 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的属性必须跟在%qs关键字后面"
 
-#: cp/decl.cc:5224
+#: cp/decl.cc:5290
 #, gcc-internal-format
 msgid "multiple types in one declaration"
 msgstr "一个声明指定了多个类型"
 
-#: cp/decl.cc:5229
+#: cp/decl.cc:5295
 #, gcc-internal-format
 msgid "redeclaration of C++ built-in type %qT"
 msgstr "对 C++ 内建类型%qT的重声明"
 
-#: cp/decl.cc:5246
+#: cp/decl.cc:5312
 #, fuzzy, gcc-internal-format
 msgid "%<auto%> can only be specified for variables or function declarations"
 msgstr "只能为函数指定%qs"
 
-#: cp/decl.cc:5279
+#: cp/decl.cc:5345
 #, gcc-internal-format
 msgid "missing type-name in typedef-declaration"
 msgstr "typedef 声明中缺少类型名"
 
-#: cp/decl.cc:5287
+#: cp/decl.cc:5353
 #, gcc-internal-format
 msgid "ISO C++ prohibits anonymous structs"
 msgstr "ISO C++ 不允许匿名结构"
 
-#: cp/decl.cc:5294
+#: cp/decl.cc:5360
 #, fuzzy, gcc-internal-format
 #| msgid "%qs can only be specified for functions"
 msgid "%<inline%> can only be specified for functions"
 msgstr "只能为函数指定%qs"
 
-#: cp/decl.cc:5297
+#: cp/decl.cc:5363
 #, fuzzy, gcc-internal-format
 #| msgid "%qs can only be specified for functions"
 msgid "%<virtual%> can only be specified for functions"
 msgstr "只能为函数指定%qs"
 
-#: cp/decl.cc:5302
+#: cp/decl.cc:5368
 #, gcc-internal-format
 msgid "%<friend%> can only be specified inside a class"
 msgstr "%<friend%>只能在类中指定"
 
-#: cp/decl.cc:5305
+#: cp/decl.cc:5371
 #, gcc-internal-format
 msgid "%<explicit%> can only be specified for constructors"
 msgstr "只能为构造函数指定%<explicit%>"
 
-#: cp/decl.cc:5308
+#: cp/decl.cc:5374
 #, gcc-internal-format
 msgid "a storage class can only be specified for objects and functions"
 msgstr "只能为对象和函数指定存储类"
 
-#: cp/decl.cc:5312
+#: cp/decl.cc:5378
 #, fuzzy, gcc-internal-format
 #| msgid "qualifiers can only be specified for objects and functions"
 msgid "%<const%> can only be specified for objects and functions"
 msgstr "只能为对象和函数指定类型限定"
 
-#: cp/decl.cc:5316
+#: cp/decl.cc:5382
 #, fuzzy, gcc-internal-format
 #| msgid "qualifiers can only be specified for objects and functions"
 msgid "%<volatile%> can only be specified for objects and functions"
 msgstr "只能为对象和函数指定类型限定"
 
-#: cp/decl.cc:5320
+#: cp/decl.cc:5386
 #, fuzzy, gcc-internal-format
 #| msgid "qualifiers can only be specified for objects and functions"
 msgid "%<__restrict%> can only be specified for objects and functions"
 msgstr "只能为对象和函数指定类型限定"
 
-#: cp/decl.cc:5324
+#: cp/decl.cc:5390
 #, fuzzy, gcc-internal-format
 #| msgid "a storage class can only be specified for objects and functions"
 msgid "%<__thread%> can only be specified for objects and functions"
 msgstr "只能为对象和函数指定存储类"
 
-#: cp/decl.cc:5328
+#: cp/decl.cc:5394
 #, gcc-internal-format
 msgid "%<typedef%> was ignored in this declaration"
 msgstr "此声明中的%<typedef%>被忽略"
 
-#: 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 "%<constexpr%> cannot be used for type declarations"
 msgid "%qs cannot be used for type declarations"
 msgstr "%<constexpr%>不能被用作类型声明"
 
-#: cp/decl.cc:5359
+#: cp/decl.cc:5425
 #, fuzzy, gcc-internal-format
 msgid "attribute ignored in explicit instantiation %q#T"
 msgstr "对%q#T重复的显式实例化"
 
-#: cp/decl.cc:5362
+#: cp/decl.cc:5428
 #, fuzzy, gcc-internal-format
 msgid "no attribute can be applied to an explicit instantiation"
 msgstr "只能为类定义应用%qE属性"
 
-#: cp/decl.cc:5434
+#: cp/decl.cc:5500
 #, gcc-internal-format
 msgid "ignoring attributes applied to class type %qT outside of definition"
 msgstr "忽略在定义之外为类类型%qT应用的属性"
 
 #. A template type parameter or other dependent type.
-#: cp/decl.cc:5438
+#: cp/decl.cc:5504
 #, gcc-internal-format
 msgid "ignoring attributes applied to dependent type %qT without an associated declaration"
 msgstr "忽略在关联定义之外为依赖类类型%qT应用的属性"
 
-#: 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 decltype instead)"
 msgid "typedef %qD is initialized (use %qs instead)"
 msgstr "typedef%qD被初始化(改用 decltype)"
 
-#: cp/decl.cc:5515
+#: cp/decl.cc:5583
 #, gcc-internal-format
 msgid "declaration of %q#D has %<extern%> and is initialized"
 msgstr "%q#D声明有%<extern%>并被初始化"
 
-#: cp/decl.cc:5553
+#: cp/decl.cc:5621
 #, gcc-internal-format
 msgid "definition of %q#D is marked %<dllimport%>"
 msgstr "%q#D的定义被标记为 %<dllimport%>"
 
-#: 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 "%q#D不是%qT的非静态数据成员"
 
-#: cp/decl.cc:5585
+#: cp/decl.cc:5653
 #, fuzzy, gcc-internal-format
 msgid "non-member-template declaration of %qD"
 msgstr "无效的成员模板声明%qD"
 
-#: cp/decl.cc:5586
+#: cp/decl.cc:5654
 #, fuzzy, gcc-internal-format
 msgid "does not match member template declaration here"
 msgstr "无效的成员模板声明%qD"
 
-#: 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 "ISO C++ 不允许将%<%T::%D%>定义为%<%T::%D%>"
 
-#: cp/decl.cc:5610
+#: cp/decl.cc:5678
 #, gcc-internal-format
 msgid "duplicate initialization of %qD"
 msgstr "ISO C++ 不允许成员%qD的初始化"
 
-#: cp/decl.cc:5658
+#: cp/decl.cc:5726
 #, gcc-internal-format
 msgid "declaration of %q#D outside of class is not definition"
 msgstr "出现在类外的%q#D的声明不是定义"
 
-#: 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 "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/decl.cc:5782
+#: cp/decl.cc:5850
 #, gcc-internal-format
 msgid "variable %q#D has initializer but incomplete type"
 msgstr "变量%q#D有初始值设定,但是类型不完全"
 
-#: 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 "数组%q#D的元素类型不完全"
 
-#: cp/decl.cc:5798
+#: cp/decl.cc:5866
 #, gcc-internal-format
 msgid "aggregate %q#D has incomplete type and cannot be defined"
 msgstr "聚合%q#D类型不完全,无法被定义"
 
-#: cp/decl.cc:5865
+#: cp/decl.cc:5933
 #, gcc-internal-format
 msgid "%qD declared as reference but not initialized"
 msgstr "%qD声明为引用却未被初始化"
 
-#: cp/decl.cc:5948
+#: cp/decl.cc:6016
 #, gcc-internal-format
 msgid "name used in a GNU-style designated initializer for an array"
 msgstr "名字被用在 GNU 风格的数组指定元素初始值设定中"
 
-#: cp/decl.cc:5954
+#: cp/decl.cc:6022
 #, gcc-internal-format
 msgid "name %qD used in a GNU-style designated initializer for an array"
 msgstr "名字%qD用在 GNU 风格的数组指定元素初始值设定中"
 
-#: cp/decl.cc:5973
+#: cp/decl.cc:6041
 #, gcc-internal-format
 msgid "non-trivial designated initializers not supported"
 msgstr "不平凡的代理初始值设定不受支持"
 
-#: cp/decl.cc:5977
+#: cp/decl.cc:6045
 #, fuzzy, gcc-internal-format
 msgid "C99 designator %qE is not an integral constant-expression"
 msgstr "整型表达式%qE不是常量"
 
-#: cp/decl.cc:6038
+#: cp/decl.cc:6106
 #, gcc-internal-format
 msgid "initializer fails to determine size of %qD"
 msgstr "初始值设定无法决定%qD的大小"
 
-#: cp/decl.cc:6045
+#: cp/decl.cc:6113
 #, gcc-internal-format
 msgid "array size missing in %qD"
 msgstr "%qD缺少数组大小"
 
-#: cp/decl.cc:6057
+#: cp/decl.cc:6125
 #, gcc-internal-format
 msgid "zero-size array %qD"
 msgstr "大小为 0 的数组%qD"
 
-#: cp/decl.cc:6097
+#: cp/decl.cc:6165
 #, gcc-internal-format
 msgid "storage size of %qD isn%'t known"
 msgstr "%qD的存储大小未知"
 
-#: cp/decl.cc:6122
+#: cp/decl.cc:6190
 #, gcc-internal-format
 msgid "storage size of %qD isn%'t constant"
 msgstr "%qD的存储大小不是常量"
 
-#: cp/decl.cc:6205
+#: cp/decl.cc:6273
 #, fuzzy, gcc-internal-format
 msgid "sorry: semantics of inline variable %q#D are wrong (you%'ll wind up with multiple copies)"
 msgstr "对不起:内联函数中静态数据%q+#D的语义是错的(您会得到此变量的多份复制)"
 
-#: cp/decl.cc:6209
+#: cp/decl.cc:6277
 #, fuzzy, gcc-internal-format
 msgid "sorry: semantics of inline function static data %q#D are wrong (you%'ll wind up with multiple copies)"
 msgstr "对不起:内联函数中静态数据%q+#D的语义是错的(您会得到此变量的多份复制)"
 
-#: cp/decl.cc:6215
+#: cp/decl.cc:6283
 #, fuzzy, gcc-internal-format
 msgid "you can work around this by removing the initializer"
 msgstr " 变通的作法是删除初始值设定"
 
-#: cp/decl.cc:6257
+#: cp/decl.cc:6325
 #, fuzzy, gcc-internal-format
 #| msgid "uninitialized const %qD"
 msgid "uninitialized %<const %D%>"
 msgstr "未初始化的常量%qD"
 
-#: cp/decl.cc:6264
+#: cp/decl.cc:6332
 #, fuzzy, gcc-internal-format
 msgid "uninitialized variable %qD in %<constexpr%> function"
 msgstr "对广义常变量%qD的声明不同时是定义"
 
-#: cp/decl.cc:6273
+#: cp/decl.cc:6341
 #, fuzzy, gcc-internal-format
 msgid "uninitialized variable %qD in %<constexpr%> context"
 msgstr "对广义常变量%qD的声明不同时是定义"
 
-#: cp/decl.cc:6281
+#: cp/decl.cc:6349
 #, gcc-internal-format
 msgid "%q#T has no user-provided default constructor"
 msgstr "%q#T没有用户提供的默认构造函数"
 
-#: cp/decl.cc:6285
+#: cp/decl.cc:6353
 #, fuzzy, gcc-internal-format
 msgid "constructor is not user-provided because it is explicitly defaulted in the class body"
 msgstr "建构子未被 user-provided 因为它是明确的缺席在中类别本体"
 
-#: cp/decl.cc:6288
+#: cp/decl.cc:6356
 #, fuzzy, gcc-internal-format
 msgid "and the implicitly-defined constructor does not initialize %q#D"
 msgstr "和 implicitly-defined 建构子不初始化 %q+#D"
 
-#: cp/decl.cc:6462
+#: cp/decl.cc:6530
 #, gcc-internal-format
 msgid "invalid type %qT as initializer for a vector of type %qT"
 msgstr "无效类型%qT被用作类型为%qT的向量的初始值设定"
 
-#: cp/decl.cc:6519
+#: cp/decl.cc:6602
 #, gcc-internal-format
 msgid "initializer for %qT must be brace-enclosed"
 msgstr "%qT的初始值设定必须在花括号内"
 
-#: 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 "名字%qD用在 GNU 风格的数组指定元素初始值设定中"
 
-#: cp/decl.cc:6564
+#: cp/decl.cc:6656
 #, gcc-internal-format
 msgid "%qT has no non-static data member named %qD"
 msgstr "%qT没有名为%qD的非静态数据成员"
 
-#: cp/decl.cc:6588
+#: cp/decl.cc:6680
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a member of %qT"
 msgid "%qD is not a direct member of %qT"
 msgstr "%qD不是%qT的成员"
 
-#: cp/decl.cc:6624
+#: cp/decl.cc:6735
 #, fuzzy, gcc-internal-format
 msgid "invalid initializer for %q#D"
 msgstr "初始值设定无法决定%q+D的大小"
 
-#: cp/decl.cc:6674
+#: cp/decl.cc:6785
 #, fuzzy, gcc-internal-format
 msgid "C99 designator %qE outside aggregate initializer"
 msgstr "C99 指示项 %qE 外侧汇总初始设置式"
 
-#: 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 "%qT的初始值设定项太多"
 
-#: cp/decl.cc:6755
+#: cp/decl.cc:6866
 #, gcc-internal-format
 msgid "braces around scalar initializer for type %qT"
 msgstr "类型%qT的标量初始化带花括号"
 
-#: cp/decl.cc:6765
+#: cp/decl.cc:6876
 #, fuzzy, gcc-internal-format
 #| msgid "braces around scalar initializer for type %qT"
 msgid "too many braces around scalar initializer for type %qT"
 msgstr "类型%qT的标量初始化带花括号"
 
-#: cp/decl.cc:6889
+#: cp/decl.cc:7009
 #, gcc-internal-format
 msgid "missing braces around initializer for %qT"
 msgstr "%qT的初始值设定周围缺少花括号"
 
-#: cp/decl.cc:7017
+#: cp/decl.cc:7137
 #, fuzzy, gcc-internal-format
 msgid "structured binding has incomplete type %qT"
 msgstr "指向不完全类型%qT的指针不能自减"
 
-#: cp/decl.cc:7031
+#: cp/decl.cc:7151
 #, gcc-internal-format
 msgid "elements of array %q#T have incomplete type"
 msgstr "数组%q#T的元素类型不完全"
 
-#: cp/decl.cc:7044
+#: cp/decl.cc:7164
 #, gcc-internal-format
 msgid "variable-sized compound literal"
 msgstr "变长复合字面量"
 
-#: cp/decl.cc:7099
+#: cp/decl.cc:7219
 #, fuzzy, gcc-internal-format
 msgid "%q#D has incomplete type"
 msgstr "%q+D类型不完全"
 
-#: cp/decl.cc:7120
+#: cp/decl.cc:7240
 #, gcc-internal-format
 msgid "scalar object %qD requires one element in initializer"
 msgstr "标量对象%qD在初始值设定中需要一个元素"
 
-#: 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 中%qD必须由构造函数而不是%<{...}%>初始化"
 
-#: cp/decl.cc:7297
+#: cp/decl.cc:7421
 #, gcc-internal-format
 msgid "array %qD initialized by parenthesized string literal %qE"
 msgstr "数组%qD被有括号的字面字符串%qE所初始化"
 
-#: cp/decl.cc:7332
+#: cp/decl.cc:7456
 #, gcc-internal-format
 msgid "initializer invalid for static member with constructor"
 msgstr "构造函数中对静态成员的初始化无效"
 
-#: cp/decl.cc:7334
+#: cp/decl.cc:7458
 #, fuzzy, gcc-internal-format
 msgid "non-constant in-class initialization invalid for static member %qD"
 msgstr "类中对具有非整数类型%qT的静态数据成员的初始化无效"
 
-#: 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 "类中对具有非整数类型%qT的静态数据成员的初始化无效"
 
-#: cp/decl.cc:7342
+#: cp/decl.cc:7466
 #, gcc-internal-format
 msgid "(an out of class initialization is required)"
 msgstr "(需要一个类外的初始化)"
 
-#: cp/decl.cc:7544
+#: cp/decl.cc:7668
 #, fuzzy, gcc-internal-format
 msgid "reference %qD is initialized with itself"
 msgstr "%qD声明为引用却未被初始化"
 
-#: cp/decl.cc:7801
+#: cp/decl.cc:7925
 #, fuzzy, gcc-internal-format
 #| msgid "%<[*]%> not in a declaration"
 msgid "could not find variant declaration"
 msgstr "%<[*]%>不在声明中"
 
-#: cp/decl.cc:7825
+#: cp/decl.cc:7949
 #, fuzzy, gcc-internal-format
 msgid "%<declare variant%> on constructor %qD"
 msgstr "给 %qE 的实递参数太少"
 
-#: cp/decl.cc:7830
+#: cp/decl.cc:7954
 #, fuzzy, gcc-internal-format
 #| msgid "taking address of destructor %qE"
 msgid "%<declare variant%> on destructor %qD"
 msgstr "取析构函数%qE的地址"
 
-#: 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 "赋值(不是初始化)出现在声明中"
 
-#: cp/decl.cc:7913 cp/decl.cc:14364
+#: cp/decl.cc:8040 cp/decl.cc:14491
 #, fuzzy, gcc-internal-format
 #| msgid "ISO C++ does not allow designated initializers"
 msgid "ISO C++17 does not allow %<register%> storage class specifier"
 msgstr "ISO C++ 不允许指定元素初始值设定"
 
-#: cp/decl.cc:7917 cp/decl.cc:14368
+#: cp/decl.cc:8044 cp/decl.cc:14495
 #, fuzzy, gcc-internal-format
 #| msgid "storage class specified for %qs"
 msgid "%<register%> storage class specifier used"
 msgstr "为%qs指定了存储类"
 
-#: 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 "对成员的使用无效(您是否遗忘了%<&%>?)"
 
-#: cp/decl.cc:8099
+#: cp/decl.cc:8226
 #, fuzzy, gcc-internal-format
 #| msgid "variable-sized object may not be initialized"
 msgid "variable concept has no initializer"
 msgstr "可变大小的对象不能被初始化"
 
-#: cp/decl.cc:8158
+#: cp/decl.cc:8285
 #, gcc-internal-format
 msgid "shadowing previous type declaration of %q#D"
 msgstr "隐藏了早先的类型声明%q#D"
 
-#: cp/decl.cc:8201
+#: cp/decl.cc:8328
 #, fuzzy, gcc-internal-format
 #| msgid "%qE attribute only applies to variables and functions"
 msgid "%<constinit%> can only be applied to a variable with static or thread storage duration"
 msgstr "%qE属性只能为变量或函数所使用"
 
-#: cp/decl.cc:8379
+#: cp/decl.cc:8506
 #, gcc-internal-format
 msgid "function %q#D is initialized like a variable"
 msgstr "函数%q#D像变量一样被初始化"
 
-#: cp/decl.cc:8488
+#: cp/decl.cc:8615
 #, fuzzy, gcc-internal-format
 #| msgid "  cannot use obsolete binding at %q+D because it has a destructor"
 msgid "cannot decompose class type %qT because it has an anonymous struct member"
 msgstr "不能在%q+D使用过时的绑定,因为它有析构函数"
 
-#: cp/decl.cc:8491
+#: cp/decl.cc:8618
 #, gcc-internal-format
 msgid "cannot decompose class type %qT because it has an anonymous union member"
 msgstr ""
 
-#: cp/decl.cc:8498
+#: cp/decl.cc:8625
 #, fuzzy, gcc-internal-format
 #| msgid "%qT is an inaccessible base of %qT"
 msgid "cannot decompose inaccessible member %qD of %qT"
 msgstr "%qT是%qT不可访问的基类"
 
-#: cp/decl.cc:8524
+#: cp/decl.cc:8651
 #, gcc-internal-format
 msgid "cannot decompose class type %qT: both it and its base class %qT have non-static data members"
 msgstr ""
 
-#: cp/decl.cc:8533
+#: cp/decl.cc:8660
 #, gcc-internal-format
 msgid "cannot decompose class type %qT: its base classes %qT and %qT have non-static data members"
 msgstr ""
 
-#: cp/decl.cc:8743
+#: cp/decl.cc:8870
 #, fuzzy, gcc-internal-format
 msgid "structured binding refers to incomplete type %qT"
 msgstr "指向不完全类型%qT的指针不能自减"
 
-#: cp/decl.cc:8759
+#: cp/decl.cc:8886
 #, fuzzy, gcc-internal-format
 #| msgid "ISO C90 forbids variable length array %qE"
 msgid "cannot decompose variable length array %qT"
 msgstr "ISO C90 不允许变长数组%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 "%qs specified for structure field"
 msgid "%u name provided for structured binding"
 msgid_plural "%u names provided for structured binding"
 msgstr[0] "为结构字段指定了%qs"
 
-#: cp/decl.cc:8772
+#: cp/decl.cc:8899
 #, 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] ""
 
-#: 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] ""
 
-#: cp/decl.cc:8820
+#: cp/decl.cc:8947
 #, fuzzy, gcc-internal-format
 #| msgid "cannot declare pointer to %q#T"
 msgid "cannot decompose variable length vector %qT"
 msgstr "无法声明指向%q#T的指针"
 
-#: cp/decl.cc:8846
+#: cp/decl.cc:8973
 #, fuzzy, gcc-internal-format
 #| msgid "size of array is not an integral constant-expression"
 msgid "%<std::tuple_size<%T>::value%> is not an integral constant expression"
 msgstr "数组大小不是一个整数常表达式"
 
-#: 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 "invalid type for iteration variable %qE"
 msgid "in initialization of structured binding variable %qD"
 msgstr "迭代变量%qE类型无效"
 
-#: cp/decl.cc:8911
+#: cp/decl.cc:9038
 #, fuzzy, gcc-internal-format
 #| msgid "cannot declare pointer to qualified function type %qT"
 msgid "cannot decompose union type %qT"
 msgstr "不能声明指向限定函数类型%qT的指针"
 
-#: cp/decl.cc:8916
+#: cp/decl.cc:9043
 #, fuzzy, gcc-internal-format
 #| msgid "creating pointer to member of non-class type %qT"
 msgid "cannot decompose non-array non-class type %qT"
 msgstr "生成非类类型%qT的成员指针"
 
-#: cp/decl.cc:8921
+#: cp/decl.cc:9048
 #, fuzzy, gcc-internal-format
 #| msgid "cannot decompose address"
 msgid "cannot decompose lambda closure type %qT"
 msgstr "无法分解地址"
 
-#: cp/decl.cc:8927
+#: cp/decl.cc:9054
 #, fuzzy, gcc-internal-format
 #| msgid "source is of incomplete class type"
 msgid "structured binding refers to incomplete class type %qT"
 msgstr "源有不完全的类类型"
 
-#: cp/decl.cc:8936
+#: cp/decl.cc:9063
 #, fuzzy, gcc-internal-format
 #| msgid "cannot apply %<offsetof%> to static data member %qD"
 msgid "cannot decompose class type %qT without non-static data members"
 msgstr "不能对静态数据成员%qD取%<offsetof%>"
 
-#: cp/decl.cc:9403
+#: cp/decl.cc:9530
 #, gcc-internal-format
 msgid "non-local variable %qD declared %<__thread%> needs dynamic initialization"
 msgstr ""
 
-#: 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 "  %q+T 有 non-trivial 解构式"
 
-#: 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 "初始值设定无法决定%qD的大小"
 
-#: cp/decl.cc:9634
+#: cp/decl.cc:9761
 #, fuzzy, gcc-internal-format
 msgid "array size missing in %qT"
 msgstr "%qD缺少数组大小"
 
-#: cp/decl.cc:9637
+#: cp/decl.cc:9764
 #, fuzzy, gcc-internal-format
 msgid "zero-size array %qT"
 msgstr "大小为 0 的数组%qD"
 
-#: cp/decl.cc:9653
+#: cp/decl.cc:9780
 #, gcc-internal-format
 msgid "destructor for alien class %qT cannot be a member"
 msgstr "其他类%qT的析构函数不能用作成员"
 
-#: cp/decl.cc:9655
+#: cp/decl.cc:9782
 #, gcc-internal-format
 msgid "constructor for alien class %qT cannot be a member"
 msgstr "其他类%qT的构造函数不能用作成员"
 
-#: cp/decl.cc:9681
+#: cp/decl.cc:9808
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> variable"
 msgstr "%qD声明为%<virtual%>变量"
 
-#: 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 "为%qD指定的%<const%>和%<volatile%>在 %s 声明中无效"
 
-#: cp/decl.cc:9689
+#: cp/decl.cc:9816
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> parameter"
 msgstr "%qD声明为%<virtual%>参数"
 
-#: cp/decl.cc:9692
+#: cp/decl.cc:9819
 #, gcc-internal-format
 msgid "%qD declared as an %<inline%> parameter"
 msgstr "%qD声明为%<inline%>参数"
 
-#: 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 "为%qD指定的%<const%>和%<volatile%>在 %s 声明中无效"
 
-#: cp/decl.cc:9700
+#: cp/decl.cc:9827
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> type"
 msgstr "%qD声明为%<virtual%>类型"
 
-#: cp/decl.cc:9703
+#: cp/decl.cc:9830
 #, gcc-internal-format
 msgid "%qD declared as an %<inline%> type"
 msgstr "%qD声明为%<inline%>类型"
 
-#: 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 "为%qD指定的%<const%>和%<volatile%>在 %s 声明中无效"
 
-#: cp/decl.cc:9711
+#: cp/decl.cc:9838
 #, gcc-internal-format
 msgid "%qD declared as a %<virtual%> field"
 msgstr "%qD声明为%<virtual%>字段"
 
-#: cp/decl.cc:9714
+#: cp/decl.cc:9841
 #, gcc-internal-format
 msgid "%qD declared as an %<inline%> field"
 msgstr "%qD声明为%<inline%>字段"
 
-#: 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 "为%qD指定的%<const%>和%<volatile%>在 %s 声明中无效"
 
-#: cp/decl.cc:9723
+#: cp/decl.cc:9850
 #, gcc-internal-format
 msgid "%q+D declared as a friend"
 msgstr "%q+D声明为友元"
 
-#: cp/decl.cc:9730
+#: cp/decl.cc:9857
 #, gcc-internal-format
 msgid "%q+D declared with an exception specification"
 msgstr "%q+D声明时带有异常规范"
 
-#: cp/decl.cc:9762
+#: cp/decl.cc:9889
 #, gcc-internal-format
 msgid "definition of %qD is not in namespace enclosing %qT"
 msgstr "%qD的定义不在包含%qT的命名空间中"
 
-#: cp/decl.cc:9802
+#: cp/decl.cc:9929
 #, gcc-internal-format
 msgid "static member function %q#D declared with type qualifiers"
 msgstr "静态成员函数%q#D的声明带有类型限定符"
 
-#: cp/decl.cc:9813
+#: cp/decl.cc:9940
 #, fuzzy, gcc-internal-format
 #| msgid "%qD declared as a non-parameter"
 msgid "concept %q#D declared with function parameters"
 msgstr "%qD没有声明为一个参数"
 
-#: cp/decl.cc:9820
+#: cp/decl.cc:9947
 #, fuzzy, gcc-internal-format
 #| msgid "parameter %qD declared with void type"
 msgid "concept %q#D declared with a deduced return type"
 msgstr "形参%qD被声明为有 void 类型"
 
-#: cp/decl.cc:9823
+#: cp/decl.cc:9950
 #, fuzzy, gcc-internal-format
 #| msgid "Java method %qD has non-Java return type %qT"
 msgid "concept %q#D with non-%<bool%> return type %qT"
 msgstr "Java 方法%qD返回非 Java 类型%qT"
 
-#: cp/decl.cc:9899
+#: cp/decl.cc:10026
 #, fuzzy, gcc-internal-format
 msgid "concept %qD has no definition"
 msgstr "-fmit-class-file 的别名"
 
-#: cp/decl.cc:9928
+#: cp/decl.cc:10055
 #, fuzzy, gcc-internal-format
 msgid "a function concept cannot be constrained"
 msgstr "不能内联%<main%>函数"
 
-#: cp/decl.cc:9938
+#: cp/decl.cc:10065
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a template function"
 msgid "constraints on a non-templated function"
 msgstr "%qD不是一个模板函数"
 
-#: cp/decl.cc:9983
+#: cp/decl.cc:10110
 #, gcc-internal-format
 msgid "defining explicit specialization %qD in friend declaration"
 msgstr "在友元声明中定义显式特例化%qD"
 
-#: cp/decl.cc:9994
+#: cp/decl.cc:10121
 #, gcc-internal-format
 msgid "invalid use of template-id %qD in declaration of primary template"
 msgstr "在基本模板的声明中对模板标识符%qD的使用无效"
 
-#: cp/decl.cc:10013
+#: cp/decl.cc:10140
 #, gcc-internal-format
 msgid "default arguments are not allowed in declaration of friend template specialization %qD"
 msgstr "友元模板特例化%qD中不允许出现默认参数"
 
-#: cp/decl.cc:10022
+#: cp/decl.cc:10149
 #, gcc-internal-format
 msgid "%<inline%> is not allowed in declaration of friend template specialization %qD"
 msgstr "%<inline%>不允许用于友元模板特例化%qD的声明"
 
-#: cp/decl.cc:10039
+#: cp/decl.cc:10166
 #, fuzzy, gcc-internal-format
 #| msgid "declaration of %q#D outside of class is not definition"
 msgid "friend declaration of %qD specifies default arguments and isn%'t a definition"
 msgstr "出现在类外的%q#D的声明不是定义"
 
-#: cp/decl.cc:10084
+#: cp/decl.cc:10211
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be a template"
 msgstr "不能将%<::main%>声明为一个模板"
 
-#: cp/decl.cc:10087
+#: cp/decl.cc:10214
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be inline"
 msgstr "不能将%<::main%>声明为 inline"
 
-#: 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 static"
 msgid "cannot declare %<::main%> to be %qs"
 msgstr "不能将%<::main%>声明为 static"
 
-#: cp/decl.cc:10095
+#: cp/decl.cc:10222
 #, gcc-internal-format
 msgid "cannot declare %<::main%> to be static"
 msgstr "不能将%<::main%>声明为 static"
 
-#: cp/decl.cc:10157
+#: cp/decl.cc:10284
 #, gcc-internal-format
 msgid "static member function %qD cannot have cv-qualifier"
 msgstr "成员函数%qD不能拥有 cv 限定符"
 
-#: cp/decl.cc:10158
+#: cp/decl.cc:10285
 #, gcc-internal-format
 msgid "non-member function %qD cannot have cv-qualifier"
 msgstr "非成员函数%qD不能拥有 cv 限定符"
 
-#: cp/decl.cc:10166
+#: cp/decl.cc:10293
 #, fuzzy, gcc-internal-format
 msgid "static member function %qD cannot have ref-qualifier"
 msgstr "成员函数%qD不能拥有 cv 限定符"
 
-#: cp/decl.cc:10167
+#: cp/decl.cc:10294
 #, fuzzy, gcc-internal-format
 msgid "non-member function %qD cannot have ref-qualifier"
 msgstr "非成员函数%qD不能拥有 cv 限定符"
 
-#: cp/decl.cc:10179
+#: cp/decl.cc:10306
 #, fuzzy, gcc-internal-format
 #| msgid "specialization of %qD must appear at namespace scope"
 msgid "deduction guide %qD must be declared in the same scope as %qT"
 msgstr "%qD的特例化必须出现在命名空间内"
 
-#: cp/decl.cc:10187
+#: cp/decl.cc:10314
 #, fuzzy, gcc-internal-format
 #| msgid "specialization of %qD must appear at namespace scope"
 msgid "deduction guide %qD must have the same access as %qT"
 msgstr "%qD的特例化必须出现在命名空间内"
 
-#: cp/decl.cc:10193
+#: cp/decl.cc:10320
 #, fuzzy, gcc-internal-format
 #| msgid "declaration of %qD as non-function"
 msgid "deduction guide %qD must not have a function body"
 msgstr "%qD没有声明为一个函数"
 
-#: cp/decl.cc:10206
+#: cp/decl.cc:10333
 #, fuzzy, gcc-internal-format
 msgid "literal operator with C linkage"
 msgstr "特例化模板有 C 链接"
 
-#: cp/decl.cc:10216
+#: cp/decl.cc:10343
 #, gcc-internal-format
 msgid "%qD has invalid argument list"
 msgstr "%qD 带有无效参数列表"
 
-#: cp/decl.cc:10224
+#: cp/decl.cc:10351
 #, fuzzy, gcc-internal-format
 msgid "integer suffix %qs shadowed by implementation"
 msgstr "整数字尾 %<%s%>带阴影由实现"
 
-#: cp/decl.cc:10230
+#: cp/decl.cc:10357
 #, fuzzy, gcc-internal-format
 msgid "floating-point suffix %qs shadowed by implementation"
 msgstr "浮点数字尾 %<%s%>带阴影由实现"
 
-#: cp/decl.cc:10237
+#: cp/decl.cc:10364
 #, fuzzy, 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必须是一个非静态的成员函数"
 
-#: cp/decl.cc:10325
+#: cp/decl.cc:10452
 #, gcc-internal-format
 msgid "%<::main%> must return %<int%>"
 msgstr "%<::main%>必须返回%<int%>"
 
-#: cp/decl.cc:10365
+#: cp/decl.cc:10492
 #, gcc-internal-format
 msgid "definition of implicitly-declared %qD"
 msgstr "隐式声明的%qD的定义"
 
-#: cp/decl.cc:10370
+#: cp/decl.cc:10497
 #, fuzzy, gcc-internal-format
 msgid "definition of explicitly-defaulted %q+D"
 msgstr "默认化声明%q+D"
 
-#: cp/decl.cc:10372
+#: cp/decl.cc:10499
 #, fuzzy, gcc-internal-format
 msgid "%q#D explicitly defaulted here"
 msgstr "默认化声明%q+D"
 
-#: cp/decl.cc:10389
+#: cp/decl.cc:10516
 #, gcc-internal-format
 msgid "no %q#D member function declared in class %qT"
 msgstr "成员函数%q#D未在类%qT中声明"
 
-#: cp/decl.cc:10582
+#: cp/decl.cc:10709
 #, fuzzy, gcc-internal-format
 #| msgid "cannot declare %<::main%> to be a template"
 msgid "cannot declare %<::main%> to be a global variable"
 msgstr "不能将%<::main%>声明为一个模板"
 
-#: cp/decl.cc:10591
+#: cp/decl.cc:10718
 #, fuzzy, gcc-internal-format
 #| msgid "automatic variable %qE cannot be %<threadprivate%>"
 msgid "a non-template variable cannot be %<concept%>"
 msgstr "自动变量%qE不能是%<threadprivate%>"
 
-#: cp/decl.cc:10597
+#: cp/decl.cc:10724
 #, fuzzy, gcc-internal-format
 #| msgid "specialization of %qD must appear at namespace scope"
 msgid "concept must be defined at namespace scope"
 msgstr "%qD的特例化必须出现在命名空间内"
 
-#: cp/decl.cc:10604
+#: cp/decl.cc:10731
 #, gcc-internal-format
 msgid "concept must have type %<bool%>"
 msgstr ""
 
-#: cp/decl.cc:10607
+#: cp/decl.cc:10734
 #, fuzzy, gcc-internal-format
 #| msgid "variable-sized object may not be initialized"
 msgid "a variable concept cannot be constrained"
 msgstr "可变大小的对象不能被初始化"
 
-#: 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 "类中对具有非整数类型%qT的静态数据成员的初始化无效"
 
-#: 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 "类中对具有非整数类型%qT的静态数据成员的初始化无效"
 
-#: 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 "类中对具有非整数类型%qT的静态数据成员的初始化无效"
 
-#: cp/decl.cc:10750
+#: cp/decl.cc:10877
 #, gcc-internal-format
 msgid "invalid in-class initialization of static data member of non-integral type %qT"
 msgstr "类中对具有非整数类型%qT的静态数据成员的初始化无效"
 
-#: cp/decl.cc:10755
+#: cp/decl.cc:10882
 #, gcc-internal-format
 msgid "ISO C++ forbids in-class initialization of non-const static member %qD"
 msgstr "ISO C++ 不允许在类内初始化非常量静态成员%qD"
 
-#: 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++ 不允许初始化成员常量%qD,因为它有非整数的类型%qT"
 
-#: cp/decl.cc:10871
+#: cp/decl.cc:10998
 #, gcc-internal-format
 msgid "size of array %qD has non-integral type %qT"
 msgstr "数组%qD的大小具有非整数类型%qT"
 
-#: cp/decl.cc:10874
+#: cp/decl.cc:11001
 #, gcc-internal-format
 msgid "size of array has non-integral type %qT"
 msgstr "数组%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 "数组%qD的大小不是一个整数常表达式"
 
-#: 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 "数组大小不是一个整数常表达式"
 
-#: cp/decl.cc:10960
+#: cp/decl.cc:11087
 #, gcc-internal-format
 msgid "ISO C++ forbids zero-size array %qD"
 msgstr "ISO C 不允许大小为 0 的数组%qD"
 
-#: cp/decl.cc:10963
+#: cp/decl.cc:11090
 #, gcc-internal-format
 msgid "ISO C++ forbids zero-size array"
 msgstr "ISO C++ 不允许大小为 0 的数组"
 
-#: cp/decl.cc:10987
+#: cp/decl.cc:11114
 #, gcc-internal-format
 msgid "ISO C++ forbids variable length array %qD"
 msgstr "ISO C++ 不允许变长数组%qD"
 
-#: cp/decl.cc:10990
+#: cp/decl.cc:11117
 #, gcc-internal-format
 msgid "ISO C++ forbids variable length array"
 msgstr "ISO C++ 不允许变长数组"
 
-#: cp/decl.cc:10996
+#: cp/decl.cc:11123
 #, gcc-internal-format
 msgid "variable length array %qD is used"
 msgstr "使用了变长数组%qD"
 
-#: cp/decl.cc:10999
+#: cp/decl.cc:11126
 #, gcc-internal-format
 msgid "variable length array is used"
 msgstr "使用了变长数组"
 
-#: cp/decl.cc:11051
+#: cp/decl.cc:11178
 #, gcc-internal-format
 msgid "overflow in array dimension"
 msgstr "数组维数溢出"
 
-#: cp/decl.cc:11111
+#: cp/decl.cc:11238
 #, fuzzy, gcc-internal-format
 msgid "%qD declared as array of template placeholder type %qT"
 msgstr "成员函数%qD未在%qT中声明"
 
-#: cp/decl.cc:11114
+#: cp/decl.cc:11241
 #, fuzzy, gcc-internal-format
 #| msgid "creating pointer to member reference type %qT"
 msgid "creating array of template placeholder type %qT"
 msgstr "生成引用类型%qT的成员指针"
 
-#: cp/decl.cc:11124
+#: cp/decl.cc:11251
 #, gcc-internal-format
 msgid "declaration of %qD as array of void"
 msgstr "%qD声明为 void 的数组"
 
-#: cp/decl.cc:11126
+#: cp/decl.cc:11253
 #, gcc-internal-format
 msgid "creating array of void"
 msgstr "创建 void 数组"
 
-#: cp/decl.cc:11131
+#: cp/decl.cc:11258
 #, gcc-internal-format
 msgid "declaration of %qD as array of functions"
 msgstr "%qD声明为函数的数组"
 
-#: cp/decl.cc:11133
+#: cp/decl.cc:11260
 #, gcc-internal-format
 msgid "creating array of functions"
 msgstr "创建函数的数组"
 
-#: cp/decl.cc:11138
+#: cp/decl.cc:11265
 #, gcc-internal-format
 msgid "declaration of %qD as array of references"
 msgstr "%qD声明为引用的数组"
 
-#: cp/decl.cc:11140
+#: cp/decl.cc:11267
 #, gcc-internal-format
 msgid "creating array of references"
 msgstr "创建引用的数组"
 
-#: cp/decl.cc:11145
+#: cp/decl.cc:11272
 #, gcc-internal-format
 msgid "declaration of %qD as array of function members"
 msgstr "%qD声明为函数成员的数组"
 
-#: cp/decl.cc:11148
+#: cp/decl.cc:11275
 #, gcc-internal-format
 msgid "creating array of function members"
 msgstr "创建函数成员的组织"
 
-#: cp/decl.cc:11166
+#: cp/decl.cc:11293
 #, gcc-internal-format
 msgid "declaration of %qD as multidimensional array must have bounds for all dimensions except the first"
 msgstr "多维数组%qD的声明必须至少指定除第一维以外所有维的大小"
 
-#: cp/decl.cc:11170
+#: cp/decl.cc:11297
 #, gcc-internal-format
 msgid "multidimensional array must have bounds for all dimensions except the first"
 msgstr "声明多维数组必须至少指定除第一维以外所有维的大小"
 
-#: 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 "使用了变长数组"
 
-#: cp/decl.cc:11260
+#: cp/decl.cc:11387
 #, gcc-internal-format
 msgid "return type specification for constructor invalid"
 msgstr "为构造函数指定返回值无效"
 
-#: cp/decl.cc:11263
+#: cp/decl.cc:11390
 #, fuzzy, gcc-internal-format
 #| msgid "qualifiers are not allowed on declaration of %<operator %T%>"
 msgid "qualifiers are not allowed on constructor declaration"
 msgstr "%<operator %T%>的声明中不能使用限定符"
 
-#: cp/decl.cc:11274
+#: cp/decl.cc:11401
 #, gcc-internal-format
 msgid "return type specification for destructor invalid"
 msgstr "指定析构函数的返回类型无效"
 
-#: cp/decl.cc:11277
+#: cp/decl.cc:11404
 #, fuzzy, gcc-internal-format
 #| msgid "qualifiers are not allowed on declaration of %<operator %T%>"
 msgid "qualifiers are not allowed on destructor declaration"
 msgstr "%<operator %T%>的声明中不能使用限定符"
 
-#: cp/decl.cc:11290
+#: cp/decl.cc:11417
 #, gcc-internal-format
 msgid "return type specified for %<operator %T%>"
 msgstr "为%<operator %T%>指定了返回值"
 
-#: cp/decl.cc:11293
+#: cp/decl.cc:11420
 #, gcc-internal-format
 msgid "qualifiers are not allowed on declaration of %<operator %T%>"
 msgstr "%<operator %T%>的声明中不能使用限定符"
 
-#: cp/decl.cc:11302
+#: cp/decl.cc:11429
 #, fuzzy, gcc-internal-format
 #| msgid "return type specification for destructor invalid"
 msgid "return type specified for deduction guide"
 msgstr "指定析构函数的返回类型无效"
 
-#: cp/decl.cc:11305
+#: cp/decl.cc:11432
 #, fuzzy, gcc-internal-format
 #| msgid "qualifiers are not allowed on declaration of %<operator %T%>"
 msgid "qualifiers are not allowed on declaration of deduction guide"
 msgstr "%<operator %T%>的声明中不能使用限定符"
 
-#: cp/decl.cc:11309
+#: cp/decl.cc:11436
 #, fuzzy, gcc-internal-format
 #| msgid "too many template parameter lists in declaration of %qD"
 msgid "template template parameter %qT in declaration of deduction guide"
 msgstr "%qD声明时模板参数表太多"
 
-#: cp/decl.cc:11318
+#: cp/decl.cc:11445
 #, fuzzy, gcc-internal-format
 #| msgid "conflicting specifiers in declaration of %qs"
 msgid "%<decl-specifier%> in declaration of deduction guide"
 msgstr "%qs的声明中有相互冲突的限定符"
 
-#: cp/decl.cc:11339
+#: cp/decl.cc:11466
 #, gcc-internal-format
 msgid "unnamed variable or field declared void"
 msgstr "无名变量或字段声明为 void"
 
-#: cp/decl.cc:11347
+#: cp/decl.cc:11474
 #, gcc-internal-format
 msgid "variable or field declared void"
 msgstr "变量或字段声明为 void"
 
-#: cp/decl.cc:11362
+#: cp/decl.cc:11489
 #, fuzzy, gcc-internal-format
 #| msgid "%<inline%> specifier invalid for function %qs declared out of global scope"
 msgid "%<inline%> specifier invalid for variable %qD declared at block scope"
 msgstr "在全局作用域外为函数%qs指定%<inline%>无效"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "destructors may not be cv-qualified"
 msgid "%<decltype(auto)%> cannot be cv-qualified"
 msgstr "析构函数不能被 cv 限定"
 
-#: cp/decl.cc:11645
+#: cp/decl.cc:11772
 #, gcc-internal-format
 msgid "invalid use of qualified-name %<::%D%>"
 msgstr "对限定名%<::%D%>的使用无效"
 
-#: cp/decl.cc:11648 cp/decl.cc:11670
+#: cp/decl.cc:11775 cp/decl.cc:11797
 #, gcc-internal-format
 msgid "invalid use of qualified-name %<%T::%D%>"
 msgstr "对限定名%<%T::%D%>的使用无效"
 
-#: cp/decl.cc:11651
+#: cp/decl.cc:11778
 #, gcc-internal-format
 msgid "invalid use of qualified-name %<%D::%D%>"
 msgstr "对限定名%<%D::%D%>的使用无效"
 
-#: cp/decl.cc:11661
+#: cp/decl.cc:11788
 #, fuzzy, gcc-internal-format
 #| msgid "%qT is not a class or namespace"
 msgid "%q#T is not a class or namespace"
 msgstr "%qT既不是类也不是命名空间"
 
-#: cp/decl.cc:11685
+#: cp/decl.cc:11812
 #, fuzzy, gcc-internal-format
 #| msgid "declaration of %qD as non-function"
 msgid "declaration of %qE as non-function"
 msgstr "%qD没有声明为一个函数"
 
-#: cp/decl.cc:11692
+#: cp/decl.cc:11819
 #, fuzzy, gcc-internal-format
 #| msgid "declaration of %qD as non-member"
 msgid "declaration of %qE as non-member"
 msgstr "%qD未声明为成员"
 
-#: cp/decl.cc:11720
+#: cp/decl.cc:11847
 #, gcc-internal-format
 msgid "declarator-id missing; using reserved word %qD"
 msgstr "缺少声明标识符:使用了保留字%qD"
 
-#: cp/decl.cc:11771
+#: cp/decl.cc:11898
 #, gcc-internal-format
 msgid "function definition does not declare parameters"
 msgstr "函数定义未声明形参"
 
-#: 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没有声明为一个函数"
 
-#: cp/decl.cc:11796
+#: cp/decl.cc:11923
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qD as %<typedef%>"
 msgstr "形参声明中出现的 typedef 声明无效"
 
-#: cp/decl.cc:11801
+#: cp/decl.cc:11928
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qD as parameter"
 msgstr "声明的形参%qD不存在"
 
-#: 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 "%<constexpr%> cannot appear in a typedef declaration"
 msgid "%qs cannot appear in a typedef declaration"
 msgstr "%<constexpr%>不能被用于 typedef 声明"
 
-#: 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
 #, gcc-internal-format
 msgid "two or more data types in declaration of %qs"
 msgstr "%qs的声明指定了两个以上的数据类型"
 
-#: cp/decl.cc:11893
+#: cp/decl.cc:12020
 #, gcc-internal-format
 msgid "conflicting specifiers in declaration of %qs"
 msgstr "%qs的声明中有相互冲突的限定符"
 
-#: cp/decl.cc:11944
+#: cp/decl.cc:12071
 #, gcc-internal-format
 msgid "ISO C++ does not support plain %<complex%> meaning %<double complex%>"
 msgstr "ISO C++ 不支持单独以 %<complex%> 表示 %<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++ 不允许声明无类型的%qs"
 
-#: cp/decl.cc:12017
+#: cp/decl.cc:12144
 #, fuzzy, gcc-internal-format
 msgid "%<__int%d%> is not supported by this target"
 msgstr "嵌套函数在此目标机上不受支持"
 
-#: cp/decl.cc:12025
+#: cp/decl.cc:12152
 #, gcc-internal-format
 msgid "ISO C++ does not support %<__int%d%> for %qs"
 msgstr "ISO C++ 对 %2$qs 不支持 %<__int%1$d%>"
 
-#: cp/decl.cc:12079
+#: cp/decl.cc:12206
 #, fuzzy, gcc-internal-format
 #| msgid "%<signed%> and %<unsigned%> specified together for %qs"
 msgid "%<signed%> and %<unsigned%> specified together"
 msgstr "为%qs同时给定了%<signed%>和%<unsigned%>"
 
-#: cp/decl.cc:12085
+#: cp/decl.cc:12212
 #, fuzzy, gcc-internal-format
 #| msgid "%<long%> and %<short%> specified together for %qs"
 msgid "%<long%> and %<short%> specified together"
 msgstr "为%qs同时给定了%<long%>和%<short%>"
 
-#: 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可被预先确定为%qs,为%qs"
 
-#: cp/decl.cc:12104
+#: cp/decl.cc:12231
 #, fuzzy, gcc-internal-format
 msgid "%qs specified with %<decltype%>"
 msgstr "%qE不是一个 typedef 类型,也不是一个内建类型"
 
-#: cp/decl.cc:12106
+#: cp/decl.cc:12233
 #, fuzzy, gcc-internal-format
 msgid "%qs specified with %<typeof%>"
 msgstr "%qE不是一个 typedef 类型,也不是一个内建类型"
 
-#: cp/decl.cc:12173
+#: cp/decl.cc:12300
 #, gcc-internal-format
 msgid "complex invalid for %qs"
 msgstr "对%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"
 msgid "member %qD cannot be declared both %<virtual%> and %<static%>"
 msgstr "成员%qD不能既被声明为虚函数,又被声明为静态函数"
 
-#: cp/decl.cc:12246
+#: cp/decl.cc:12373
 #, fuzzy, gcc-internal-format
 #| msgid "member %qD cannot be declared both virtual and static"
 msgid "member %qD can be declared both %<virtual%> and %<constexpr%> only in %<-std=c++20%> or %<-std=gnu++20%>"
 msgstr "成员%qD不能既被声明为虚函数,又被声明为静态函数"
 
-#: cp/decl.cc:12259
+#: cp/decl.cc:12386
 #, gcc-internal-format
 msgid "typedef declaration invalid in parameter declaration"
 msgstr "形参声明中出现的 typedef 声明无效"
 
-#: cp/decl.cc:12266
+#: cp/decl.cc:12393
 #, gcc-internal-format
 msgid "storage class specified for template parameter %qs"
 msgstr "为模板参数%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 "为形参%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 %<constexpr%>"
 msgid "a parameter cannot be declared %qs"
 msgstr "形参不能被声明为%<constexpr%>"
 
-#: cp/decl.cc:12315
+#: cp/decl.cc:12442
 #, gcc-internal-format
 msgid "%<virtual%> outside class declaration"
 msgstr "%<virtual%>用在类声明以外"
 
-#: 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 "%q+T先前在此处有过声明"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/decl.cc:12347
+#: cp/decl.cc:12474
 #, fuzzy, gcc-internal-format
 #| msgid "invalid function declaration"
 msgid "%<volatile%>-qualified structured binding is deprecated"
 msgstr "无效的函数声明"
 
-#: cp/decl.cc:12371
+#: cp/decl.cc:12498
 #, gcc-internal-format
 msgid "structured binding declaration cannot be C++98 %<auto%>"
 msgstr ""
 
-#: cp/decl.cc:12382
+#: cp/decl.cc:12509
 #, fuzzy, gcc-internal-format
 msgid "structured binding declaration cannot have type %qT"
 msgstr "%q+T先前在此处有过声明"
 
-#: 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 "%qs的声明指定了多个存储类"
 
-#: cp/decl.cc:12446
+#: cp/decl.cc:12573
 #, gcc-internal-format
 msgid "storage class specified for %qs"
 msgstr "为%qs指定了存储类"
 
-#: cp/decl.cc:12460
+#: cp/decl.cc:12587
 #, gcc-internal-format
 msgid "nested function %qs declared %<extern%>"
 msgstr "嵌套函数%qs被声明为%<extern%>"
 
-#: cp/decl.cc:12465
+#: cp/decl.cc:12592
 #, gcc-internal-format
 msgid "top-level declaration of %qs specifies %<auto%>"
 msgstr "在文件层将%qs声明为%<auto%>"
 
-#: cp/decl.cc:12473
+#: cp/decl.cc:12600
 #, gcc-internal-format
 msgid "function-scope %qs implicitly auto and declared %<__thread%>"
 msgstr "函数作用域的%qs隐式为 auto,却被声明为%<__thread%>"
 
-#: cp/decl.cc:12487
+#: cp/decl.cc:12614
 #, gcc-internal-format
 msgid "storage class specifiers invalid in friend function declarations"
 msgstr "为友元函数声明指定了无效的存储类"
 
-#: 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
 #, fuzzy, gcc-internal-format
 msgid "attribute ignored"
 msgstr "忽略%qs属性"
 
-#: cp/decl.cc:12519
+#: cp/decl.cc:12646
 #, fuzzy, gcc-internal-format
 msgid "an attribute that appertains to a type-specifier is ignored"
 msgstr "类型在非前向声明的详尽类型限定符中被忽略"
 
-#: cp/decl.cc:12577
+#: cp/decl.cc:12704
 #, fuzzy, gcc-internal-format
 #| msgid "multiple storage classes in declaration of %qs"
 msgid "unnecessary parentheses in declaration of %qs"
 msgstr "%qs的声明指定了多个存储类"
 
-#: cp/decl.cc:12583
+#: cp/decl.cc:12710
 #, fuzzy, gcc-internal-format
 #| msgid "Expected left parenthesis"
 msgid "remove parentheses"
 msgstr "需要左圆括号"
 
-#: cp/decl.cc:12632
+#: cp/decl.cc:12759
 #, fuzzy, gcc-internal-format
 msgid "requires-clause on return type"
 msgstr "%qE属性在类型上被忽略"
 
-#: 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函数使用了%<auto%>类型限定却没有迟返回类型"
 
-#: 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 "带作用域的枚举只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/decl.cc:12661
+#: cp/decl.cc:12788
 #, fuzzy, gcc-internal-format
 msgid "virtual function cannot have deduced return type"
 msgstr "虚函数不能是友元"
 
-#: cp/decl.cc:12668
+#: cp/decl.cc:12795
 #, fuzzy, gcc-internal-format
 msgid "%qs function with trailing return type has %qT as its type rather than plain %<auto%>"
 msgstr "%qs函数使用迟返回类型%qT作为它的类型,而不是%<auto%>"
 
-#: cp/decl.cc:12677
+#: cp/decl.cc:12804
 #, fuzzy, gcc-internal-format
 msgid "%qs function with trailing return type has %<decltype(auto)%> as its type rather than plain %<auto%>"
 msgstr "%qs函数使用迟返回类型%qT作为它的类型,而不是%<auto%>"
 
-#: cp/decl.cc:12682
+#: cp/decl.cc:12809
 #, fuzzy, gcc-internal-format
 #| msgid "invalid use of %<auto%>"
 msgid "invalid use of %<decltype(auto)%>"
 msgstr "错误地使用了%<auto%>"
 
-#: cp/decl.cc:12693
+#: cp/decl.cc:12820
 #, fuzzy, gcc-internal-format
 #| msgid "type qualifiers ignored on function return type"
 msgid "deduced class type %qD in function return type"
 msgstr "忽略函数返回类型的类型限定"
 
-#: cp/decl.cc:12702
+#: cp/decl.cc:12829
 #, fuzzy, gcc-internal-format
 msgid "deduction guide for %qT must have trailing return type"
 msgstr "虚函数不能是友元"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/decl.cc:12732
+#: cp/decl.cc:12859
 #, fuzzy, gcc-internal-format
 msgid "%qs function with trailing return type not declared with %<auto%> type specifier"
 msgstr "%qs函数使用了迟返回类型却未用%<auto%>类型限定声明"
 
-#: cp/decl.cc:12756
+#: cp/decl.cc:12883
 #, fuzzy, gcc-internal-format
 msgid "%<volatile%>-qualified return type is deprecated"
 msgstr "调用了有限定 void 返回类型的函数"
 
-#: cp/decl.cc:12768
+#: cp/decl.cc:12895
 #, gcc-internal-format
 msgid "%qs declared as function returning a function"
 msgstr "%qs声明为返回一个函数的函数"
 
-#: cp/decl.cc:12774
+#: cp/decl.cc:12901
 #, gcc-internal-format
 msgid "%qs declared as function returning an array"
 msgstr "%qs声明为返回一个数组的函数"
 
-#: cp/decl.cc:12781
+#: cp/decl.cc:12908
 #, fuzzy, gcc-internal-format
 msgid "%<constinit%> on function return type is not allowed"
 msgstr "%L处 CASE 语句中的逻辑范围是不被允许的"
 
-#: cp/decl.cc:12814
+#: cp/decl.cc:12941
 #, gcc-internal-format
 msgid "destructor cannot be static member function"
 msgstr "析构函数不能是静态成员函数"
 
-#: cp/decl.cc:12816
+#: cp/decl.cc:12943
 #, fuzzy, gcc-internal-format
 msgid "constructor cannot be static member function"
 msgstr "析构函数不能是静态成员函数"
 
-#: cp/decl.cc:12821
+#: cp/decl.cc:12948
 #, gcc-internal-format
 msgid "destructors may not be cv-qualified"
 msgstr "析构函数不能被 cv 限定"
 
-#: cp/decl.cc:12822
+#: cp/decl.cc:12949
 #, fuzzy, gcc-internal-format
 msgid "constructors may not be cv-qualified"
 msgstr "析构函数不能被 cv 限定"
 
-#: cp/decl.cc:12830
+#: cp/decl.cc:12957
 #, fuzzy, gcc-internal-format
 msgid "destructors may not be ref-qualified"
 msgstr "析构函数不能被 cv 限定"
 
-#: cp/decl.cc:12831
+#: cp/decl.cc:12958
 #, fuzzy, gcc-internal-format
 msgid "constructors may not be ref-qualified"
 msgstr "析构函数不能被 cv 限定"
 
-#: cp/decl.cc:12849
+#: cp/decl.cc:12976
 #, fuzzy, gcc-internal-format
 #| msgid "constructors cannot be declared virtual"
 msgid "constructors cannot be declared %<virtual%>"
 msgstr "构造函数不能被声明为虚函数"
 
-#: cp/decl.cc:12866
+#: cp/decl.cc:12993
 #, gcc-internal-format
 msgid "virtual functions cannot be friends"
 msgstr "虚函数不能是友元"
 
-#: cp/decl.cc:12871
+#: cp/decl.cc:12998
 #, gcc-internal-format
 msgid "friend declaration not in class definition"
 msgstr "友元声明不在类定义内"
 
-#: cp/decl.cc:12875
+#: cp/decl.cc:13002
 #, fuzzy, gcc-internal-format
 msgid "cannot define friend function %qs in a local class definition"
 msgstr "局部类定义中不能定义友元函数%qs"
 
-#: 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 "虚函数不能是友元"
 
-#: cp/decl.cc:12929
+#: cp/decl.cc:13056
 #, gcc-internal-format
 msgid "destructors may not have parameters"
 msgstr "析构函数不能有参数"
 
-#: cp/decl.cc:12969
+#: cp/decl.cc:13096
 #, gcc-internal-format
 msgid "cannot declare pointer to %q#T"
 msgstr "无法声明指向%q#T的指针"
 
-#: cp/decl.cc:12982 cp/decl.cc:12989
+#: cp/decl.cc:13109 cp/decl.cc:13116
 #, gcc-internal-format
 msgid "cannot declare reference to %q#T"
 msgstr "无法声明对%q#T的引用"
 
-#: cp/decl.cc:12991
+#: cp/decl.cc:13118
 #, gcc-internal-format
 msgid "cannot declare pointer to %q#T member"
 msgstr "无法声明指向%q#T成员的指针"
 
-#: cp/decl.cc:13020
+#: cp/decl.cc:13147
 #, gcc-internal-format
 msgid "cannot declare reference to qualified function type %qT"
 msgstr "不能声明指向限定函数类型%qT的引用"
 
-#: cp/decl.cc:13021
+#: cp/decl.cc:13148
 #, gcc-internal-format
 msgid "cannot declare pointer to qualified function type %qT"
 msgstr "不能声明指向限定函数类型%qT的指针"
 
-#: cp/decl.cc:13094
+#: cp/decl.cc:13221
 #, gcc-internal-format
 msgid "cannot declare reference to %q#T, which is not a typedef or a template type argument"
 msgstr "无法声明对%q#T的引用,因为它不是 typedef 或者模板类型实参"
 
-#: cp/decl.cc:13174
+#: cp/decl.cc:13301
 #, gcc-internal-format
 msgid "template-id %qD used as a declarator"
 msgstr "模板标识符%qD用作声明"
 
-#: cp/decl.cc:13200
+#: cp/decl.cc:13327
 #, gcc-internal-format
 msgid "member functions are implicitly friends of their class"
 msgstr "成员函数隐式地成为所属类的友元"
 
-#: cp/decl.cc:13205
+#: cp/decl.cc:13332
 #, gcc-internal-format
 msgid "extra qualification %<%T::%> on member %qs"
 msgstr "有多余的限定%<%T::%>在成员%qs上"
 
-#: cp/decl.cc:13235
+#: cp/decl.cc:13362
 #, fuzzy, gcc-internal-format
 #| msgid "cannot define member function %<%T::%s%> within %<%T%>"
 msgid "cannot define member function %<%T::%s%> within %qT"
 msgstr "无法定义成员函数%<%T::%s%>,在%<%T%>中"
 
-#: cp/decl.cc:13237
+#: cp/decl.cc:13364
 #, fuzzy, gcc-internal-format
 msgid "cannot declare member function %<%T::%s%> within %qT"
 msgstr "无法声明成员%<%T::%s%>,在%qT中"
 
-#: cp/decl.cc:13245
+#: cp/decl.cc:13372
 #, gcc-internal-format
 msgid "cannot declare member %<%T::%s%> within %qT"
 msgstr "无法声明成员%<%T::%s%>,在%qT中"
 
-#: cp/decl.cc:13285
+#: cp/decl.cc:13412
 #, gcc-internal-format
 msgid "non-parameter %qs cannot be a parameter pack"
 msgstr "非形参%qs不能是一个参数包"
 
-#: cp/decl.cc:13294
+#: cp/decl.cc:13421
 #, gcc-internal-format
 msgid "data member may not have variably modified type %qT"
 msgstr "数据成员不能具有可变类型%qT"
 
-#: cp/decl.cc:13297
+#: cp/decl.cc:13424
 #, gcc-internal-format
 msgid "parameter may not have variably modified type %qT"
 msgstr "参数不能具有可变类型%qT"
 
-#: cp/decl.cc:13308
+#: cp/decl.cc:13435
 #, fuzzy, gcc-internal-format
 msgid "%<explicit%> outside class declaration"
 msgstr "%<virtual%>用在类声明以外"
 
-#: cp/decl.cc:13311
+#: cp/decl.cc:13438
 #, fuzzy, gcc-internal-format
 msgid "%<explicit%> in friend declaration"
 msgstr "%<inline%>用于空声明中"
 
-#: cp/decl.cc:13314
+#: cp/decl.cc:13441
 #, fuzzy, gcc-internal-format
 msgid "only declarations of constructors and conversion operators can be %<explicit%>"
 msgstr "只有构造函数才能被声明为%<explicit%>"
 
-#: cp/decl.cc:13324
+#: cp/decl.cc:13451
 #, gcc-internal-format
 msgid "non-member %qs cannot be declared %<mutable%>"
 msgstr "非成员%qs不能被声明为%<mutable%>"
 
-#: cp/decl.cc:13331
+#: cp/decl.cc:13458
 #, gcc-internal-format
 msgid "non-object member %qs cannot be declared %<mutable%>"
 msgstr "非对象成员%qs不能被声明为%<mutable%>"
 
-#: cp/decl.cc:13337
+#: cp/decl.cc:13464
 #, gcc-internal-format
 msgid "function %qs cannot be declared %<mutable%>"
 msgstr "函数%qs不能被声明为%<mutable%>"
 
-#: cp/decl.cc:13343
+#: cp/decl.cc:13470
 #, fuzzy, gcc-internal-format
 #| msgid "static %qs cannot be declared %<mutable%>"
 msgid "%<static%> %qs cannot be declared %<mutable%>"
 msgstr "静态%qs不能被声明为%<mutable%>"
 
-#: cp/decl.cc:13349
+#: cp/decl.cc:13476
 #, fuzzy, gcc-internal-format
 #| msgid "const %qs cannot be declared %<mutable%>"
 msgid "%<const%> %qs cannot be declared %<mutable%>"
 msgstr "常量%qs不能被声明为%<mutable%>"
 
-#: cp/decl.cc:13355
+#: cp/decl.cc:13482
 #, fuzzy, gcc-internal-format
 msgid "reference %qs cannot be declared %<mutable%>"
 msgstr "常量%qs不能被声明为%<mutable%>"
 
-#: cp/decl.cc:13371
+#: cp/decl.cc:13498
 #, fuzzy, gcc-internal-format
 #| msgid "types may not be defined in conditions"
 msgid "typedef may not be a function definition"
 msgstr "类型不能定义在条件表达式中"
 
-#: cp/decl.cc:13374
+#: cp/decl.cc:13501
 #, fuzzy, gcc-internal-format
 #| msgid "types may not be defined in conditions"
 msgid "typedef may not be a member function definition"
 msgstr "类型不能定义在条件表达式中"
 
-#: cp/decl.cc:13400
+#: cp/decl.cc:13527
 #, fuzzy, gcc-internal-format
 #| msgid "%<[*]%> not in a declaration"
 msgid "%<auto%> not allowed in alias declaration"
 msgstr "%<[*]%>不在声明中"
 
-#: cp/decl.cc:13403
+#: cp/decl.cc:13530
 #, fuzzy, gcc-internal-format
 msgid "typedef declared %<auto%>"
 msgstr "typedef%q+D声明为%<inline%>"
 
-#: cp/decl.cc:13408
+#: cp/decl.cc:13535
 #, gcc-internal-format
 msgid "requires-clause on typedef"
 msgstr ""
 
-#: cp/decl.cc:13412
+#: cp/decl.cc:13539
 #, gcc-internal-format
 msgid "typedef name may not be a nested-name-specifier"
 msgstr "typedef 名不能是嵌套名指定"
 
-#: cp/decl.cc:13438
+#: cp/decl.cc:13565
 #, gcc-internal-format
 msgid "ISO C++ forbids nested type %qD with same name as enclosing class"
 msgstr "ISO C++ 不允许嵌类的类型%qD与其所属的类重名"
 
-#: cp/decl.cc:13527
+#: cp/decl.cc:13654
 #, gcc-internal-format
 msgid "%<inline%> specified for friend class declaration"
 msgstr "友元函数声明中出现了%<inline%>"
 
-#: cp/decl.cc:13535
+#: cp/decl.cc:13662
 #, gcc-internal-format
 msgid "template parameters cannot be friends"
 msgstr "模板参数不能是友元"
 
-#: cp/decl.cc:13537
+#: cp/decl.cc:13664
 #, gcc-internal-format
 msgid "friend declaration requires class-key, i.e. %<friend class %T::%D%>"
 msgstr "友元声明需要 class,即%<friend class %T::%D%>"
 
-#: cp/decl.cc:13541
+#: cp/decl.cc:13668
 #, gcc-internal-format
 msgid "friend declaration requires class-key, i.e. %<friend %#T%>"
 msgstr "友元声明需要 class,即%<friend %#T%>"
 
-#: cp/decl.cc:13554
+#: cp/decl.cc:13681
 #, gcc-internal-format
 msgid "trying to make class %qT a friend of global scope"
 msgstr "试图让%qT成为全局域的友元"
 
-#: cp/decl.cc:13574
+#: cp/decl.cc:13701
 #, gcc-internal-format
 msgid "invalid qualifiers on non-member function type"
 msgstr "非成员函数类型上的限定符无效"
 
-#: cp/decl.cc:13578
+#: cp/decl.cc:13705
 #, gcc-internal-format
 msgid "requires-clause on type-id"
 msgstr ""
 
-#: cp/decl.cc:13588
+#: cp/decl.cc:13715
 #, gcc-internal-format
 msgid "abstract declarator %qT used as declaration"
 msgstr "抽象声明%qT被用作声明"
 
-#: cp/decl.cc:13603
+#: cp/decl.cc:13730
 #, fuzzy, gcc-internal-format
 msgid "requires-clause on declaration of non-function type %qT"
 msgstr "在返回%qT的函数中,返回语句不带返回值"
 
-#: cp/decl.cc:13622
+#: cp/decl.cc:13749
 #, gcc-internal-format
 msgid "cannot use %<::%> in parameter declaration"
 msgstr "不能在参数声明中使用%<::%>"
 
-#: 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 "不能将形参%q+D声明为具有抽象类型%qT"
 
-#: cp/decl.cc:13636
+#: cp/decl.cc:13763
 #, fuzzy, gcc-internal-format
 msgid "class template placeholder %qE not permitted in this context"
 msgstr "形参声明为%<auto%>"
 
-#: cp/decl.cc:13639
+#: cp/decl.cc:13766
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a function template"
 msgid "use %<auto%> for an abbreviated function template"
 msgstr "%qD不是一个函数模板"
 
-#: cp/decl.cc:13644
+#: cp/decl.cc:13771
 #, fuzzy, gcc-internal-format
 msgid "%<auto%> parameter not permitted in this context"
 msgstr "形参声明为%<auto%>"
 
-#: cp/decl.cc:13647
+#: cp/decl.cc:13774
 #, gcc-internal-format
 msgid "parameter declared %<auto%>"
 msgstr "形参声明为%<auto%>"
 
-#: 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 "使用模板名%qE时不带实参表无效"
 
-#: cp/decl.cc:13702
+#: cp/decl.cc:13829
 #, fuzzy, gcc-internal-format
 msgid "non-static data member declared with placeholder %qT"
 msgstr "非静态数据成员%qE被声明为%<constexpr%>"
 
-#: cp/decl.cc:13723
+#: cp/decl.cc:13850
 #, fuzzy, gcc-internal-format
 #| msgid "ISO C++ forbids zero-size array %qD"
 msgid "ISO C++ forbids flexible array member %qs"
 msgstr "ISO C 不允许大小为 0 的数组%qD"
 
-#: cp/decl.cc:13726
+#: cp/decl.cc:13853
 #, fuzzy, gcc-internal-format
 #| msgid "ISO C90 does not support flexible array members"
 msgid "ISO C++ forbids flexible array members"
 msgstr "ISO C90 不允许可变数组成员"
 
 #. Something like struct S { int N::j; };
-#: cp/decl.cc:13742
+#: cp/decl.cc:13869
 #, gcc-internal-format
 msgid "invalid use of %<::%>"
 msgstr "错误地使用了%<::%>"
 
-#: cp/decl.cc:13763
+#: cp/decl.cc:13890
 #, fuzzy, gcc-internal-format
 msgid "declaration of function %qD in invalid context"
 msgstr "%qD模板声明无效"
 
-#: cp/decl.cc:13773
+#: cp/decl.cc:13900
 #, fuzzy, gcc-internal-format
 #| msgid "function %qD declared virtual inside a union"
 msgid "function %qD declared %<virtual%> inside a union"
 msgstr "联合成员函数%qD被声明为虚函数"
 
-#: cp/decl.cc:13783
+#: cp/decl.cc:13910
 #, fuzzy, gcc-internal-format
 #| msgid "%qD cannot be declared virtual, since it is always static"
 msgid "%qD cannot be declared %<virtual%>, since it is always static"
 msgstr "%qD不能声明为虚函数,因为它总是静态的"
 
-#: cp/decl.cc:13797
+#: cp/decl.cc:13924
 #, gcc-internal-format
 msgid "expected qualified name in friend declaration for destructor %qD"
 msgstr "在析构函数%qD中的友元声明需要限定名"
 
-#: cp/decl.cc:13804
+#: cp/decl.cc:13931
 #, gcc-internal-format
 msgid "declaration of %qD as member of %qT"
 msgstr "%qD声明为%qT的一个成员"
 
-#: 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 %<constexpr%>"
 msgid "a destructor cannot be %qs"
 msgstr "析构函数不能是%<constexpr%>"
 
-#: cp/decl.cc:13830
+#: cp/decl.cc:13957
 #, gcc-internal-format
 msgid "expected qualified name in friend declaration for constructor %qD"
 msgstr "在构造函数%qD中的友元声明需要限定名"
 
-#: cp/decl.cc:13839
+#: cp/decl.cc:13966
 #, fuzzy, gcc-internal-format
 #| msgid "a destructor cannot be %<constexpr%>"
 msgid "a constructor cannot be %<concept%>"
 msgstr "析构函数不能是%<constexpr%>"
 
-#: cp/decl.cc:13845
+#: cp/decl.cc:13972
 #, fuzzy, gcc-internal-format
 msgid "a concept cannot be a member function"
 msgstr "析构函数不能是静态成员函数"
 
-#: cp/decl.cc:13853 cp/decl.cc:14199
+#: cp/decl.cc:13980 cp/decl.cc:14326
 #, fuzzy, gcc-internal-format
 #| msgid "cannot open %s"
 msgid "%qD cannot be %qs"
 msgstr "不能打开 %s"
 
-#: cp/decl.cc:13862
+#: cp/decl.cc:13989
 #, fuzzy, gcc-internal-format
 msgid "specialization of variable template %qD declared as function"
 msgstr "模板声明%q#D"
 
-#: cp/decl.cc:13865
+#: cp/decl.cc:13992
 #, fuzzy, gcc-internal-format
 msgid "variable template declared here"
 msgstr "%q+D已在此声明过"
 
-#: cp/decl.cc:13927
+#: cp/decl.cc:14054
 #, fuzzy, gcc-internal-format
 msgid "field %qD has incomplete type %qT"
 msgstr "%qD类型不完全"
 
-#: cp/decl.cc:13932
+#: cp/decl.cc:14059
 #, gcc-internal-format
 msgid "name %qT has incomplete type"
 msgstr "名字%qT类型不完全"
 
-#: cp/decl.cc:13952
+#: cp/decl.cc:14079
 #, gcc-internal-format
 msgid "%qE is neither function nor member function; cannot be declared friend"
 msgstr "%qE既不是函数也不是成员函数;不能声明为友元"
 
-#: cp/decl.cc:13955
+#: cp/decl.cc:14082
 #, fuzzy, gcc-internal-format
 #| msgid "%qE is neither function nor member function; cannot be declared friend"
 msgid "unnamed field is neither function nor member function; cannot be declared friend"
 msgstr "%qE既不是函数也不是成员函数;不能声明为友元"
 
-#: 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 "类型在非前向声明的详尽类型限定符中被忽略"
 
-#: cp/decl.cc:14016 cp/decl.cc:14027
+#: cp/decl.cc:14143 cp/decl.cc:14154
 #, fuzzy, gcc-internal-format
 #| msgid "non-static data member %qE declared %<constexpr%>"
 msgid "static data member %qE declared %qs"
 msgstr "非静态数据成员%qE被声明为%<constexpr%>"
 
-#: cp/decl.cc:14021
+#: cp/decl.cc:14148
 #, fuzzy, gcc-internal-format
 msgid "%<constexpr%> static data member %qD must have an initializer"
 msgstr "非静态数据成员%qD具有 Java 类类型"
 
-#: 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 %<constexpr%>"
 msgid "non-static data member %qE declared %qs"
 msgstr "非静态数据成员%qE被声明为%<constexpr%>"
 
-#: cp/decl.cc:14140
+#: cp/decl.cc:14267
 #, gcc-internal-format
 msgid "storage class %<auto%> invalid for function %qs"
 msgstr "函数%qs的存储类%<auto%>无效"
 
-#: cp/decl.cc:14143
+#: cp/decl.cc:14270
 #, gcc-internal-format
 msgid "storage class %<register%> invalid for function %qs"
 msgstr "函数%qs的存储类%<register%>无效"
 
-#: cp/decl.cc:14149
+#: cp/decl.cc:14276
 #, gcc-internal-format
 msgid "storage class %<__thread%> invalid for function %qs"
 msgstr "函数%qs的存储类%<__thread%>无效"
 
-#: cp/decl.cc:14153
+#: cp/decl.cc:14280
 #, fuzzy, gcc-internal-format
 msgid "storage class %<thread_local%> invalid for function %qs"
 msgstr "函数%qs的存储类%<__thread%>无效"
 
-#: cp/decl.cc:14158
+#: cp/decl.cc:14285
 #, fuzzy, gcc-internal-format
 msgid "virt-specifiers in %qs not allowed outside a class definition"
 msgstr "函数定义中不允许出现 asm 指定"
 
-#: cp/decl.cc:14170
+#: cp/decl.cc:14297
 #, fuzzy, gcc-internal-format
 #| msgid "%<static%> specified invalid for function %qs declared out of global scope"
 msgid "%<static%> specifier invalid for function %qs declared out of global scope"
 msgstr "在全局作用域外为函数%qs指定%<static%>无效"
 
-#: cp/decl.cc:14174
+#: cp/decl.cc:14301
 #, gcc-internal-format
 msgid "%<inline%> specifier invalid for function %qs declared out of global scope"
 msgstr "在全局作用域外为函数%qs指定%<inline%>无效"
 
-#: cp/decl.cc:14182
+#: cp/decl.cc:14309
 #, gcc-internal-format
 msgid "virtual non-class function %qs"
 msgstr "虚函数%qs不是类成员"
 
-#: cp/decl.cc:14189
+#: cp/decl.cc:14316
 #, gcc-internal-format
 msgid "%qs defined in a non-class scope"
 msgstr "%qs定义在在非类作用域中"
 
-#: cp/decl.cc:14190
+#: cp/decl.cc:14317
 #, fuzzy, gcc-internal-format
 msgid "%qs declared in a non-class scope"
 msgstr "%qs定义在在非类作用域中"
 
-#: cp/decl.cc:14233
+#: cp/decl.cc:14360
 #, gcc-internal-format
 msgid "cannot declare member function %qD to have static linkage"
 msgstr "不能将成员函数%qD声明为有静态链接"
 
-#: cp/decl.cc:14242
+#: cp/decl.cc:14369
 #, gcc-internal-format
 msgid "cannot declare static function inside another function"
 msgstr "不能在另一个函数中声明一个静态函数"
 
-#: 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 "与声明不同,定义静态数据成员时不能使用%<static%>"
 
-#: cp/decl.cc:14290
+#: cp/decl.cc:14417
 #, gcc-internal-format
 msgid "static member %qD declared %<register%>"
 msgstr "静态成员%qD声明为%<register%>"
 
-#: cp/decl.cc:14296
+#: cp/decl.cc:14423
 #, gcc-internal-format
 msgid "cannot explicitly declare member %q#D to have extern linkage"
 msgstr "不能显式地将成员%q#D声明为有外部链接"
 
-#: cp/decl.cc:14304
+#: cp/decl.cc:14431
 #, fuzzy, gcc-internal-format
 #| msgid "declaration of constexpr variable %qD is not a definition"
 msgid "declaration of %<constexpr%> variable %qD is not a definition"
 msgstr "对广义常变量%qD的声明不同时是定义"
 
-#: cp/decl.cc:14311
+#: cp/decl.cc:14438
 #, fuzzy, gcc-internal-format
 #| msgid "a parameter cannot be declared %<constexpr%>"
 msgid "a variable cannot be declared %<consteval%>"
 msgstr "形参不能被声明为%<constexpr%>"
 
-#: cp/decl.cc:14331
+#: cp/decl.cc:14458
 #, gcc-internal-format
 msgid "declaration of %q#D has no initializer"
 msgstr "%q#D声明有缺少初始值设定"
 
-#: cp/decl.cc:14343
+#: cp/decl.cc:14470
 #, gcc-internal-format
 msgid "%qs initialized and declared %<extern%>"
 msgstr "%qs已初始化,却又被声明为%<extern%>"
 
-#: cp/decl.cc:14348
+#: cp/decl.cc:14475
 #, gcc-internal-format
 msgid "%qs has both %<extern%> and initializer"
 msgstr "%qs既有%<extern%>又有初始值设定"
 
-#: cp/decl.cc:14528
+#: cp/decl.cc:14655
 #, fuzzy, gcc-internal-format
 msgid "default argument %qE uses %qD"
 msgstr "默认实参%qE使用了局部变量%qD"
 
-#: cp/decl.cc:14531
+#: cp/decl.cc:14658
 #, gcc-internal-format
 msgid "default argument %qE uses local variable %qD"
 msgstr "默认实参%qE使用了局部变量%qD"
 
-#: cp/decl.cc:14658
+#: cp/decl.cc:14785
 #, fuzzy, gcc-internal-format
 msgid "invalid use of cv-qualified type %qT in parameter declaration"
 msgstr "ISO C 不允许前向参数声明"
 
-#: cp/decl.cc:14662
+#: cp/decl.cc:14789
 #, fuzzy, gcc-internal-format
 msgid "invalid use of type %<void%> in parameter declaration"
 msgstr "对模板类型参数%qT的使用无效"
 
-#: cp/decl.cc:14691
+#: cp/decl.cc:14818
 #, fuzzy, gcc-internal-format
 msgid "%<volatile%>-qualified parameter is deprecated"
 msgstr "不能将形参%q+D声明为具有抽象类型%qT"
 
-#: cp/decl.cc:14699
+#: cp/decl.cc:14826
 #, gcc-internal-format
 msgid "parameter %qD invalidly declared method type"
 msgstr "形参%qD被无效地被声明为具有方法类型"
 
-#: cp/decl.cc:14724
+#: cp/decl.cc:14851
 #, gcc-internal-format
 msgid "parameter %qD includes pointer to array of unknown bound %qT"
 msgstr "形参%qD包含了指向具有未知边界数组%qT的指针"
 
-#: cp/decl.cc:14726
+#: cp/decl.cc:14853
 #, gcc-internal-format
 msgid "parameter %qD includes reference to array of unknown bound %qT"
 msgstr "形参%qD包含了指向具有未知边界数组%qT的引用"
 
-#: cp/decl.cc:14987
+#: cp/decl.cc:15114
 #, gcc-internal-format
 msgid "invalid constructor; you probably meant %<%T (const %T&)%>"
 msgstr "无效的构造函数:您要的可能是%<%T (const %T&)%>"
 
-#: cp/decl.cc:15066
+#: cp/decl.cc:15193
 #, gcc-internal-format
 msgid "%qD may not be declared within a namespace"
 msgstr "%qD不能在命名空间声明"
 
-#: cp/decl.cc:15073
+#: cp/decl.cc:15200
 #, gcc-internal-format
 msgid "%qD may not be declared as static"
 msgstr "%qD不能被声明为静态的"
 
-#: cp/decl.cc:15103
+#: cp/decl.cc:15230
 #, fuzzy, gcc-internal-format
 #| msgid "%qD must be a nonstatic member function"
 msgid "%qD must be a non-static member function"
 msgstr "%qD必须是一个非静态的成员函数"
 
-#: cp/decl.cc:15109
+#: cp/decl.cc:15236
 #, gcc-internal-format
 msgid "%qD must be either a non-static member function or a non-member function"
 msgstr "%qD必须是一个非静态成员函数或非成员函数"
 
-#: cp/decl.cc:15119
+#: cp/decl.cc:15246
 #, gcc-internal-format
 msgid "%qD must have an argument of class or enumerated type"
 msgstr "%qD的实参必须有类或枚举类型"
 
 #. 13.4.0.3
-#: cp/decl.cc:15145
+#: cp/decl.cc:15272
 #, fuzzy, gcc-internal-format
 #| msgid "ISO C++ prohibits overloading operator ?:"
 msgid "ISO C++ prohibits overloading %<operator ?:%>"
 msgstr "ISO C++ 不允许重载 ?: 运算符"
 
-#. Variadic.
-#: cp/decl.cc:15156
+#: cp/decl.cc:15286
 #, gcc-internal-format
 msgid "%qD must not have variable number of arguments"
 msgstr "%qD不能带可变数量的实参"
 
-#: cp/decl.cc:15182
+#: cp/decl.cc:15312
 #, fuzzy, gcc-internal-format
 #| msgid "%qD must take either zero or one argument"
 msgid "%qD must have either zero or one argument"
 msgstr "%qD必须带 0 或 1 个实参"
 
-#: cp/decl.cc:15183
+#: cp/decl.cc:15313
 #, fuzzy, gcc-internal-format
 #| msgid "%qD must take either one or two arguments"
 msgid "%qD must have either one or two arguments"
 msgstr "%qD必须带 1 或 2 个实参"
 
-#: cp/decl.cc:15195
+#: cp/decl.cc:15325
 #, fuzzy, gcc-internal-format
 #| msgid "postfix %qD must take %<int%> as its argument"
 msgid "postfix %qD must have %<int%> as its argument"
 msgstr "后缀%qD必须使用%<int%>作为它的参数"
 
-#: cp/decl.cc:15196
+#: cp/decl.cc:15326
 #, fuzzy, gcc-internal-format
 #| msgid "postfix %qD must take %<int%> as its second argument"
 msgid "postfix %qD must have %<int%> as its second argument"
 msgstr "后缀%qD必须使用%<int%>作为它的第二个参数"
 
-#: cp/decl.cc:15207
+#: cp/decl.cc:15337
 #, fuzzy, gcc-internal-format
 #| msgid "%qD must take exactly two arguments"
 msgid "%qD must have no arguments"
 msgstr "%qD带且仅带 2 个实参"
 
-#: cp/decl.cc:15208 cp/decl.cc:15220
+#: cp/decl.cc:15338 cp/decl.cc:15350
 #, fuzzy, gcc-internal-format
 #| msgid "%qD must take exactly one argument"
 msgid "%qD must have exactly one argument"
 msgstr "%qD带且仅带 1 个实参"
 
-#: cp/decl.cc:15221
+#: cp/decl.cc:15351
 #, fuzzy, gcc-internal-format
 #| msgid "%qD must take exactly two arguments"
 msgid "%qD must have exactly two arguments"
 msgstr "%qD带且仅带 2 个实参"
 
-#: cp/decl.cc:15235
+#: cp/decl.cc:15366
 #, gcc-internal-format
 msgid "%qD cannot have default arguments"
 msgstr "%qD不能有默认参数"
 
-#: cp/decl.cc:15259
+#: cp/decl.cc:15390
 #, fuzzy, gcc-internal-format
 #| msgid "conversion to void will never use a type conversion operator"
 msgid "converting %qT to %<void%> will never use a type conversion operator"
 msgstr "向 void 的转换永远不会用到类型转换运算符"
 
-#: cp/decl.cc:15266
+#: cp/decl.cc:15397
 #, fuzzy, gcc-internal-format
 #| msgid "conversion to a reference to the same type will never use a type conversion operator"
 msgid "converting %qT to a reference to the same type will never use a type conversion operator"
 msgstr "向具有相同类型的引用的转换永远不会用到类型转换运算符"
 
-#: cp/decl.cc:15268
+#: cp/decl.cc:15399
 #, fuzzy, gcc-internal-format
 #| msgid "conversion to the same type will never use a type conversion operator"
 msgid "converting %qT to the same type will never use a type conversion operator"
 msgstr "向相同类型的转换永远不会用到类型转换运算符"
 
-#: cp/decl.cc:15277
+#: cp/decl.cc:15408
 #, fuzzy, gcc-internal-format
 #| msgid "conversion to a reference to a base class will never use a type conversion operator"
 msgid "converting %qT to a reference to a base class %qT will never use a type conversion operator"
 msgstr "向指向基类的引用的转换永远不会用到类型转换运算符"
 
-#: cp/decl.cc:15279
+#: cp/decl.cc:15410
 #, fuzzy, gcc-internal-format
 #| msgid "conversion to a base class will never use a type conversion operator"
 msgid "converting %qT to a base class %qT will never use a type conversion operator"
 msgstr "向基类的转换永远不会用到类型转换运算符"
 
-#: cp/decl.cc:15295
+#: cp/decl.cc:15426
 #, gcc-internal-format
 msgid "user-defined %qD always evaluates both arguments"
 msgstr "用户定义的%qD总是计算所有两个参数"
 
-#: cp/decl.cc:15314
+#: cp/decl.cc:15445
 #, gcc-internal-format
 msgid "prefix %qD should return %qT"
 msgstr "前缀%qD应当返回%qT"
 
-#: cp/decl.cc:15321
+#: cp/decl.cc:15452
 #, gcc-internal-format
 msgid "postfix %qD should return %qT"
 msgstr "后缀%qD应当返回%qT"
 
-#: cp/decl.cc:15333
+#: cp/decl.cc:15464
 #, gcc-internal-format
 msgid "%qD should return by value"
 msgstr "%qD应当返回值而非引用"
 
-#: cp/decl.cc:15388
+#: cp/decl.cc:15519
 #, gcc-internal-format
 msgid "using template type parameter %qT after %qs"
 msgstr "使用模板类型形参%qT,在%qs后"
 
-#: cp/decl.cc:15411
+#: cp/decl.cc:15542
 #, fuzzy, gcc-internal-format
 msgid "using alias template specialization %qT after %qs"
 msgstr "使用模板类型形参%qT,在%qs后"
 
-#: cp/decl.cc:15414
+#: cp/decl.cc:15545
 #, gcc-internal-format
 msgid "using typedef-name %qD after %qs"
 msgstr "使用 typedef 名%qD,在%qs后"
 
-#: cp/decl.cc:15416
+#: cp/decl.cc:15547
 #, fuzzy, gcc-internal-format
 msgid "%qD has a previous declaration here"
 msgstr "%q+T先前在此处有过声明"
 
-#: cp/decl.cc:15424
+#: cp/decl.cc:15555
 #, gcc-internal-format
 msgid "%qT referred to as %qs"
 msgstr "%qT作为%qs被引用"
 
-#: cp/decl.cc:15425 cp/decl.cc:15432
+#: cp/decl.cc:15556 cp/decl.cc:15563
 #, fuzzy, gcc-internal-format
 #| msgid "%q+T has a previous declaration here"
 msgid "%qT has a previous declaration here"
 msgstr "%q+T先前在此处有过声明"
 
-#: cp/decl.cc:15431
+#: cp/decl.cc:15562
 #, gcc-internal-format
 msgid "%qT referred to as enum"
 msgstr "%qT作为枚举被引用"
@@ -56601,114 +56814,114 @@ msgstr "%qT作为枚举被引用"
 #. void f(class C);            // No template header here
 #.
 #. then the required template argument is missing.
-#: cp/decl.cc:15446
+#: cp/decl.cc:15577
 #, gcc-internal-format
 msgid "template argument required for %<%s %T%>"
 msgstr "%<%s %T%>需要模板参数"
 
-#: 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的引用有歧义"
 
-#: 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 "函数模板%qD重声明为类模板"
 
-#: 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与其声明所在的类重名"
 
-#: 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不是一个模板"
 
-#: 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
 #, gcc-internal-format
 msgid "use of enum %q#D without previous declaration"
 msgstr "使用枚举%q#D前没有给出声明"
 
-#: cp/decl.cc:15689
+#: cp/decl.cc:15820
 #, gcc-internal-format
 msgid "redeclaration of %qT as a non-template"
 msgstr "%qT重声明为非模板"
 
-#: cp/decl.cc:15700 cp/semantics.cc:3458
+#: cp/decl.cc:15831 cp/semantics.cc:3463
 #, fuzzy, gcc-internal-format
 #| msgid "cannot declare %qD to be a bit-field type"
 msgid "cannot declare %qD in a different module"
 msgstr "不能将%qD声明为位段类型"
 
-#: cp/decl.cc:15816
+#: cp/decl.cc:15947
 #, gcc-internal-format
 msgid "derived union %qT invalid"
 msgstr "派生联合%qT无效"
 
-#: cp/decl.cc:15823
+#: cp/decl.cc:15954
 #, fuzzy, gcc-internal-format
 msgid "%qT defined with multiple direct bases"
 msgstr "此函数中的%qD在使用前未初始化"
 
-#: cp/decl.cc:15834
+#: cp/decl.cc:15965
 #, fuzzy, gcc-internal-format
 #| msgid "type %qT is not a direct or virtual base of %qT"
 msgid "%qT defined with direct virtual base"
 msgstr "类型%qT不是%qT的直接或虚基类"
 
-#: cp/decl.cc:15859
+#: cp/decl.cc:15990
 #, gcc-internal-format
 msgid "base type %qT fails to be a struct or class type"
 msgstr "基类型%qT不是结构或类"
 
-#: cp/decl.cc:15889
+#: cp/decl.cc:16020
 #, gcc-internal-format
 msgid "recursive type %qT undefined"
 msgstr "递归的类型%qT未定义"
 
-#: cp/decl.cc:15891
+#: cp/decl.cc:16022
 #, gcc-internal-format
 msgid "duplicate base type %qT invalid"
 msgstr "重复的基类型%qT无效"
 
-#: cp/decl.cc:16036
+#: cp/decl.cc:16167
 #, fuzzy, gcc-internal-format
 msgid "scoped/unscoped mismatch in enum %q#T"
 msgstr "范围/unscoped 不匹配在中 enum %q#T"
 
-#: 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 "先前的定义在这里"
 
-#: cp/decl.cc:16044
+#: cp/decl.cc:16175
 #, fuzzy, gcc-internal-format
 msgid "underlying type mismatch in enum %q#T"
 msgstr "条件表达式中类型不匹配"
 
-#: cp/decl.cc:16054
+#: cp/decl.cc:16185
 #, fuzzy, gcc-internal-format
 msgid "different underlying type in enum %q#T"
 msgstr "不同的下层的输入 enum %q#T"
 
-#: cp/decl.cc:16065
+#: cp/decl.cc:16196
 #, fuzzy, gcc-internal-format
 #| msgid "specialization of %qD in different namespace"
 msgid "cannot define %qD in different module"
 msgstr "在不同命名空间内对%qD的特例化"
 
-#: cp/decl.cc:16139
+#: cp/decl.cc:16270
 #, fuzzy, gcc-internal-format
 #| msgid "underlying type %<%T%> of %<%T%> must be an integral type"
 msgid "underlying type %qT of %qT must be an integral type"
@@ -56718,79 +56931,79 @@ msgstr "%<%2$T%>的内在类型%<%1$T%>必须是整型"
 #.
 #. 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 "没有一个整数类型可以表示%qT的所有枚举值"
 
-#: cp/decl.cc:16461
+#: cp/decl.cc:16592
 #, fuzzy, gcc-internal-format
 #| msgid "enumerator value for %qD is not an integer constant"
 msgid "enumerator value for %qD must have integral or unscoped enumeration type"
 msgstr "%qD的枚举值不是一个整数常量"
 
-#: cp/decl.cc:16471
+#: cp/decl.cc:16602
 #, gcc-internal-format
 msgid "enumerator value for %qD is not an integer constant"
 msgstr "%qD的枚举值不是一个整数常量"
 
-#: cp/decl.cc:16520
+#: cp/decl.cc:16651
 #, fuzzy, gcc-internal-format
 msgid "incremented enumerator value is too large for %<unsigned long%>"
 msgstr "对%<unsigned long%>类型而言整数常量太大"
 
-#: cp/decl.cc:16521
+#: cp/decl.cc:16652
 #, fuzzy, gcc-internal-format
 msgid "incremented enumerator value is too large for %<long%>"
 msgstr "对%<unsigned long%>类型而言整数常量太大"
 
-#: cp/decl.cc:16532
+#: cp/decl.cc:16663
 #, gcc-internal-format
 msgid "overflow in enumeration values at %qD"
 msgstr "%qD处枚举值溢出"
 
-#: 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 "枚举值 %E 对其类型%<%T%>而言太大了"
 
-#: cp/decl.cc:16649 cp/parser.cc:20992
+#: cp/decl.cc:16782 cp/parser.cc:20990
 #, gcc-internal-format
 msgid "multiple definition of %q#T"
 msgstr "%q#T多次定义"
 
-#: cp/decl.cc:16723
+#: cp/decl.cc:16856
 #, gcc-internal-format
 msgid "return type %q#T is incomplete"
 msgstr "返回值类型%q#T不完全"
 
-#: cp/decl.cc:16883 cp/typeck.cc:10601
+#: cp/decl.cc:17016 cp/typeck.cc:10615
 #, gcc-internal-format
 msgid "%<operator=%> should return a reference to %<*this%>"
 msgstr "%<operator=%>应当返回一个对%<*this%>的引用"
 
-#: cp/decl.cc:17733
+#: cp/decl.cc:17866
 #, fuzzy, gcc-internal-format
 msgid "no return statements in function returning %qT"
 msgstr "在返回%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 "由于%<volatile%>,函数返回类型不兼容"
 
-#: cp/decl.cc:17797
+#: cp/decl.cc:17930
 #, fuzzy, gcc-internal-format
 #| msgid "no return statement in function returning non-void"
 msgid "no return statement in %<constexpr%> function returning non-void"
 msgstr "在有返回值的函数中未发现 return 语句"
 
-#: cp/decl.cc:17979
+#: cp/decl.cc:18112
 #, gcc-internal-format
 msgid "%qD is already defined in class %qT"
 msgstr "%qD已在类%qT中定义过"
 
-#: cp/decl.cc:18370
+#: cp/decl.cc:18503
 #, fuzzy, gcc-internal-format
 msgid "use of %qD before deduction of %<auto%>"
 msgstr "%qD的类型默认为%<int%>"
@@ -56845,7 +57058,7 @@ msgstr "不能 delete 一个函数。只有指向对象的指针才是%<delete%>
 msgid "deleting %qT is undefined"
 msgstr "删除%qT未定义"
 
-#: cp/decl2.cc:672 cp/pt.cc:5877
+#: cp/decl2.cc:672 cp/pt.cc:5879
 #, gcc-internal-format
 msgid "template declaration of %q#D"
 msgstr "%q#D声明为模板"
@@ -56855,7 +57068,7 @@ msgstr "%q#D声明为模板"
 msgid "template parameter lists provided don%'t match the template parameters of %qD"
 msgstr "提供的模板参数列表与 %qD 的模板不符"
 
-#: cp/decl2.cc:727 cp/pt.cc:5845
+#: cp/decl2.cc:727 cp/pt.cc:5847
 #, gcc-internal-format
 msgid "destructor %qD declared as member template"
 msgstr "析构函数%qD被声明为一个成员模板"
@@ -56964,62 +57177,62 @@ msgstr "静态成员%qD不能是位段"
 msgid "width of bit-field %qD has non-integral type %qT"
 msgstr "位段%qD非整型"
 
-#: cp/decl2.cc:1536
+#: cp/decl2.cc:1540
 #, fuzzy, gcc-internal-format
 #| msgid "incomplete type %qT does not have member %qD"
 msgid "incomplete type %qT is not mappable"
 msgstr "不完全类型%qT没有成员%qD"
 
-#: cp/decl2.cc:1552
+#: cp/decl2.cc:1556
 #, fuzzy, gcc-internal-format
 msgid "static field %qD is not mappable"
 msgstr "为 auto 变量%2$qE指定了%1$qs"
 
-#: cp/decl2.cc:1641
+#: cp/decl2.cc:1645
 #, fuzzy, gcc-internal-format
 msgid "%q+D static data member inside of declare target directive"
 msgstr "%qD不是类模板的非静态数据成员"
 
-#: 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%>不能用在此上下文中"
 
-#: cp/decl2.cc:1749
+#: cp/decl2.cc:1753
 #, gcc-internal-format
 msgid "anonymous struct not inside named type"
 msgstr "匿名结构不在有名类型内"
 
-#: 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"
 msgid "%q#D invalid; an anonymous union can only have non-static data members"
 msgstr "%q+#D无效;匿名联合只能有非静态的数据成员"
 
-#: cp/decl2.cc:1772
+#: cp/decl2.cc:1776
 #, fuzzy, gcc-internal-format
 #| msgid "private member %q+#D in anonymous union"
 msgid "private member %q#D in anonymous union"
 msgstr "匿名联合中出现私有成员%q+#D"
 
-#: cp/decl2.cc:1775
+#: cp/decl2.cc:1779
 #, fuzzy, gcc-internal-format
 #| msgid "protected member %q+#D in anonymous union"
 msgid "protected member %q#D in anonymous union"
 msgstr "匿名联合中出现保护成员%q+#D"
 
-#: 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
 #, gcc-internal-format
 msgid "anonymous union with no members"
 msgstr "匿名联合没有成员"
 
-#: cp/decl2.cc:1886
+#: cp/decl2.cc:1890
 #, gcc-internal-format
 msgid "%<operator new%> must return type %qT"
 msgstr "%<operator new%>必须返回%qT"
@@ -57028,89 +57241,89 @@ msgstr "%<operator new%>必须返回%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%>的第一个形参不能有默认参数"
 
-#: 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%>的第一个形参类型为%<size_t%>(%qT)"
 
-#: cp/decl2.cc:1944
+#: cp/decl2.cc:1948
 #, gcc-internal-format
 msgid "%<operator delete%> must return type %qT"
 msgstr "%<operator delete%>必须返回%qT"
 
-#: cp/decl2.cc:1959
+#: cp/decl2.cc:1963
 #, fuzzy, gcc-internal-format
 #| msgid "destructor cannot be static member function"
 msgid "destroying %<operator delete%> must be a member function"
 msgstr "析构函数不能是静态成员函数"
 
-#: cp/decl2.cc:1962
+#: cp/decl2.cc:1966
 #, fuzzy, gcc-internal-format
 #| msgid "%<operator delete%> must return type %qT"
 msgid "%<operator delete[]%> cannot be a destroying delete"
 msgstr "%<operator delete%>必须返回%qT"
 
-#: cp/decl2.cc:1964
+#: cp/decl2.cc:1968
 #, fuzzy, gcc-internal-format
 #| msgid "destructor cannot be static member function"
 msgid "destroying %<operator delete%> must be a usual deallocation function"
 msgstr "析构函数不能是静态成员函数"
 
-#: cp/decl2.cc:1974
+#: cp/decl2.cc:1978
 #, gcc-internal-format
 msgid "%<operator delete%> takes type %qT as first parameter"
 msgstr "%<operator delete%>的第一个形参类型为%qT"
 
-#: cp/decl2.cc:2955
+#: cp/decl2.cc:2959
 #, fuzzy, gcc-internal-format
 #| msgid "%qT has a field %qD whose type uses the anonymous namespace"
 msgid "%qT has a field %qD whose type has no linkage"
 msgstr "%qT有一个字段%qD使用匿名命名空间"
 
-#: cp/decl2.cc:2959
+#: cp/decl2.cc:2963
 #, fuzzy, gcc-internal-format
 #| msgid "%qT has a field %qD whose type uses the anonymous namespace"
 msgid "%qT has a field %qD whose type depends on the type %qT which has no linkage"
 msgstr "%qT有一个字段%qD使用匿名命名空间"
 
-#: cp/decl2.cc:2964
+#: cp/decl2.cc:2968
 #, gcc-internal-format
 msgid "%qT has a field %qD whose type uses the anonymous namespace"
 msgstr "%qT有一个字段%qD使用匿名命名空间"
 
-#: cp/decl2.cc:2972
+#: cp/decl2.cc:2976
 #, gcc-internal-format
 msgid "%qT declared with greater visibility than the type of its field %qD"
 msgstr "%qT被声明为比其字段%qD的类型有更高的可见性"
 
-#: cp/decl2.cc:2990
+#: cp/decl2.cc:2994
 #, fuzzy, gcc-internal-format
 #| msgid "%qT has a base %qT whose type uses the anonymous namespace"
 msgid "%qT has a base %qT whose type has no linkage"
 msgstr "%qT有一个基类%qT使用匿名命名空间"
 
-#: cp/decl2.cc:2994
+#: cp/decl2.cc:2998
 #, fuzzy, gcc-internal-format
 #| msgid "%qT has a base %qT whose type uses the anonymous namespace"
 msgid "%qT has a base %qT whose type depends on the type %qT which has no linkage"
 msgstr "%qT有一个基类%qT使用匿名命名空间"
 
-#: cp/decl2.cc:2999
+#: cp/decl2.cc:3003
 #, gcc-internal-format
 msgid "%qT has a base %qT whose type uses the anonymous namespace"
 msgstr "%qT有一个基类%qT使用匿名命名空间"
 
-#: cp/decl2.cc:3006
+#: cp/decl2.cc:3010
 #, gcc-internal-format
 msgid "%qT declared with greater visibility than its base %qT"
 msgstr "%qT被声明为比其基类%qT有更高的可见性"
 
-#: 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 "%q+#D声明为具有匿名类型,在使用前未被定义"
@@ -57119,104 +57332,104 @@ msgstr "%q+#D声明为具有匿名类型,在使用前未被定义"
 #. 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 "匿名类型不具任何链结用来声明变量 %q#D 与链结"
 
-#: 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 "匿名类型不具任何链结用来声明函数 %q#D 与链结"
 
-#: cp/decl2.cc:4692
+#: cp/decl2.cc:4696
 #, fuzzy, gcc-internal-format
 msgid "%q#D does not refer to the unqualified type, so it is not used for linkage"
 msgstr "%q+#D未指明非限定类型,所以它不被用作外部链接"
 
-#: 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 "%q+#D声明为具有局部类型%qT,在使用前未被定义"
 
-#: 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 "constexpr 变量%2$qD的类型%1$qT不是字面常量"
 
-#: 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 "%q+#D的早先声明有%qL链接"
 
-#: 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的节与早先的声明冲突"
 
-#: cp/decl2.cc:4898
+#: cp/decl2.cc:4902
 #, fuzzy, gcc-internal-format
 msgid "previous mangling %q#D"
 msgstr "先前的声明%q+D"
 
-#: cp/decl2.cc:4900
+#: cp/decl2.cc:4904
 #, fuzzy, gcc-internal-format
 msgid "a later %<-fabi-version=%> (or =0) avoids this error with a change in mangling"
 msgstr "-fabi-version=4 (or =0) 可以改变向量修饰来避免这个错误"
 
-#: 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 %q+D used but never defined"
 msgid "inline function %qD used but never defined"
 msgstr "使用了内联函数%q+D但从未定义过"
 
-#: cp/decl2.cc:5531
+#: cp/decl2.cc:5535
 #, fuzzy, gcc-internal-format
 #| msgid "default argument missing for parameter %P of %q+#D"
 msgid "default argument missing for parameter %P of %q#D"
 msgstr "%2$q+#D的第 %1$P 个形参缺少默认实参"
 
-#: cp/decl2.cc:5536
+#: cp/decl2.cc:5540
 #, fuzzy, gcc-internal-format
 msgid "...following parameter %P which has a default argument"
 msgstr "模板参数包不能有默认参数"
 
-#: cp/decl2.cc:5669
+#: cp/decl2.cc:5673
 #, fuzzy, gcc-internal-format
 #| msgid "class %qE is deprecated"
 msgid "implicitly-declared %qD is deprecated"
 msgstr "已弃用类%qE"
 
-#: 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 which uses %<...%> to function pointer"
 msgid "converting lambda that uses %<...%> to function pointer"
 msgstr "将使用了%<...%>的 Lambda 转换为函数指针"
 
-#: cp/decl2.cc:5786
+#: cp/decl2.cc:5816
 #, gcc-internal-format
 msgid "use of deleted function %qD"
 msgstr "使用了被删除的函数%qD"
 
-#: cp/decl2.cc:5840
+#: cp/decl2.cc:5870
 #, fuzzy, gcc-internal-format
 #| msgid "redeclaration %qD differs in %<constexpr%>"
 msgid "use of function %qD with unsatisfied constraints"
 msgstr "对%qD的重声明在%<constexpr%>方面"
 
-#: cp/decl2.cc:5872
+#: cp/decl2.cc:5902
 #, gcc-internal-format
 msgid "use of built-in parameter pack %qD outside of a template"
 msgstr ""
@@ -57323,7 +57536,7 @@ msgstr "对%<%T::%D%>的引用有歧义"
 msgid "%qD is not a member of %qT; did you mean %qs?"
 msgstr "%qT没有名为%qE的成员"
 
-#: cp/error.cc:4601 cp/typeck.cc:2721
+#: cp/error.cc:4601 cp/typeck.cc:2730
 #, gcc-internal-format
 msgid "%qD is not a member of %qT"
 msgstr "%qD不是%qT的成员"
@@ -57334,7 +57547,7 @@ msgstr "%qD不是%qT的成员"
 msgid "%qD is not a member of %qD; did you mean %qs?"
 msgstr "%qT没有名为%qE的成员"
 
-#: 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不是%qD的成员"
@@ -57566,18 +57779,18 @@ msgstr "%qD应该在成员初始化列表中被初始化"
 msgid "invalid initializer for array member %q#D"
 msgstr "成员函数%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 "%<new%>%q#T时常量未初始化"
 
-#: 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将在"
 
-#: cp/init.cc:1123 cp/init.cc:2689 cp/method.cc:2377
+#: cp/init.cc:1123 cp/init.cc:2699 cp/method.cc:2377
 #, gcc-internal-format
 msgid "uninitialized reference member in %q#T"
 msgstr "%q#T中有未初始化的引用成员"
@@ -57669,147 +57882,147 @@ msgstr "类型%qT不是%qT的直接或虚基类"
 msgid "type %qT is not a direct base of %qT"
 msgstr "类型%qT不是%qT的直接基类"
 
-#: cp/init.cc:2003 cp/init.cc:4778 cp/typeck2.cc:1349
+#: cp/init.cc:2003 cp/init.cc:4786 cp/typeck2.cc:1349
 #, gcc-internal-format
 msgid "array must be initialized with a brace-enclosed initializer"
 msgstr "数组必须为一个由花括号包围的初始值设定所初始化"
 
-#: 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不是一个类"
 
-#: cp/init.cc:2372
+#: cp/init.cc:2382
 #, gcc-internal-format
 msgid "incomplete type %qT does not have member %qD"
 msgstr "不完全类型%qT没有成员%qD"
 
-#: cp/init.cc:2386
+#: cp/init.cc:2396
 #, gcc-internal-format
 msgid "invalid pointer to bit-field %qD"
 msgstr "指向位段%qD指针无效"
 
-#: cp/init.cc:2472 cp/typeck.cc:2199
+#: cp/init.cc:2482 cp/typeck.cc:2208
 #, gcc-internal-format
 msgid "invalid use of non-static member function %qD"
 msgstr "对非静态成员函数%qD的使用无效"
 
-#: cp/init.cc:2479 cp/semantics.cc:2148
+#: cp/init.cc:2489 cp/semantics.cc:2148
 #, gcc-internal-format
 msgid "invalid use of non-static data member %qD"
 msgstr "对非静态数据成员%qD的无效使用"
 
-#: 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 "未初始化的引用成员%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 "未初始化的引用成员%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 "%q#T中有未初始化的引用成员"
 
-#: 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 "%<new%>%q#T时常量未初始化"
 
-#: 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 "%<new%>%q#T时常量未初始化"
 
-#: cp/init.cc:2726
+#: cp/init.cc:2736
 #, fuzzy, gcc-internal-format
 msgid "uninitialized const member in base %q#T of %q#T"
 msgstr "%q#T中有未初始化的引用成员"
 
-#: cp/init.cc:2836
+#: cp/init.cc:2846
 #, gcc-internal-format
 msgid "placement new constructing an object of type %<%T [%wu]%> and size %qwu in a region of type %qT and size %qwi"
 msgstr ""
 
-#: cp/init.cc:2839
+#: cp/init.cc:2849
 #, gcc-internal-format
 msgid "placement new constructing an object of type %<%T [%wu]%> and size %qwu in a region of type %qT and size at most %qwu"
 msgstr ""
 
-#: cp/init.cc:2849
+#: cp/init.cc:2859
 #, gcc-internal-format
 msgid "placement new constructing an array of objects of type %qT and size %qwu in a region of type %qT and size %qwi"
 msgstr ""
 
-#: cp/init.cc:2852
+#: cp/init.cc:2862
 #, gcc-internal-format
 msgid "placement new constructing an array of objects of type %qT and size %qwu in a region of type %qT and size at most %qwu"
 msgstr ""
 
-#: cp/init.cc:2861
+#: cp/init.cc:2871
 #, gcc-internal-format
 msgid "placement new constructing an object of type %qT and size %qwu in a region of type %qT and size %qwi"
 msgstr ""
 
-#: cp/init.cc:2864
+#: cp/init.cc:2874
 #, gcc-internal-format
 msgid "placement new constructing an object of type %qT and size %qwu in a region of type %qT and size at most %qwu"
 msgstr ""
 
-#: cp/init.cc:2881
+#: cp/init.cc:2891
 #, fuzzy, gcc-internal-format
 #| msgid "%qD declared here"
 msgid "at offset %wi from %qD declared here"
 msgstr "%qD在此声明"
 
-#: cp/init.cc:2885
+#: cp/init.cc:2895
 #, fuzzy, gcc-internal-format
 #| msgid "%qD declared here"
 msgid "at offset [%wi, %wi] from %qD declared here"
 msgstr "%qD在此声明"
 
-#: cp/init.cc:3099
+#: cp/init.cc:3093
 #, fuzzy, gcc-internal-format
 msgid "integer overflow in array size"
 msgstr "表达式中整复数溢出"
 
-#: cp/init.cc:3109
+#: cp/init.cc:3103
 #, fuzzy, gcc-internal-format
 msgid "array size in new-expression must be constant"
 msgstr "数组 new 的大小必须有整数类型"
 
-#: cp/init.cc:3127
+#: cp/init.cc:3121
 #, fuzzy, gcc-internal-format
 msgid "variably modified type not allowed in new-expression"
 msgstr "文件域中的动态可变字段"
 
-#: cp/init.cc:3143
+#: cp/init.cc:3137
 #, fuzzy, gcc-internal-format
 #| msgid "try removing the parentheses around the type-id"
 msgid "non-constant array new length must be specified directly, not by %<typedef%>"
 msgstr "请尝试删除类型标识符两边的括号"
 
-#: cp/init.cc:3145
+#: cp/init.cc:3139
 #, fuzzy, gcc-internal-format
 #| msgid "try removing the parentheses around the type-id"
 msgid "non-constant array new length must be specified without parentheses around the type-id"
 msgstr "请尝试删除类型标识符两边的括号"
 
-#: cp/init.cc:3155
+#: cp/init.cc:3149
 #, fuzzy, gcc-internal-format
 #| msgid "invalid type %<void%> for new"
 msgid "invalid type %<void%> for %<new%>"
 msgstr "对 new 而言类型%<void%>无效"
 
-#: 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
 #, gcc-internal-format
 msgid "uninitialized const in %<new%> of %q#T"
 msgstr "%<new%>%q#T时常量未初始化"
@@ -57819,90 +58032,90 @@ msgstr "%<new%>%q#T时常量未初始化"
 msgid "no suitable %qD found in class %qT"
 msgstr "找不到合适的%qD,在类%qT中"
 
-#: cp/init.cc:3360 cp/search.cc:1058
+#: cp/init.cc:3360 cp/search.cc:1179
 #, gcc-internal-format
 msgid "request for member %qD is ambiguous"
 msgstr "对成员%qD的请求有歧义"
 
-#: 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 "class %qT does not have any field named %qD"
 msgid "uses %qD, which does not have an alignment parameter"
 msgstr "类%qT没有名为%qD的字段"
 
-#: 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 "括起的初始值设定后出现的属性被忽略"
 
-#: cp/init.cc:3910
+#: cp/init.cc:3917
 #, gcc-internal-format
 msgid "size in array new must have integral type"
 msgstr "数组 new 的大小必须有整数类型"
 
-#: cp/init.cc:3939
+#: cp/init.cc:3946
 #, gcc-internal-format
 msgid "new cannot be applied to a reference type"
 msgstr "new 不能用于引用类型"
 
-#: cp/init.cc:3948
+#: cp/init.cc:3955
 #, gcc-internal-format
 msgid "new cannot be applied to a function type"
 msgstr "new 不能用于函数类型"
 
-#: cp/init.cc:4068
+#: cp/init.cc:4075
 #, fuzzy, gcc-internal-format
 #| msgid "possible problem detected in invocation of delete operator:"
 msgid "possible problem detected in invocation of operator %<delete []%>"
 msgstr "检测到调用 delete 运算符时可能出现的问题:"
 
-#: cp/init.cc:4072
+#: cp/init.cc:4079
 #, fuzzy, 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 "析构函数和类特定的 delete 运算符均不会被调用,即使它们在类定义时已经声明。"
 
-#: cp/init.cc:4682
+#: cp/init.cc:4690
 #, gcc-internal-format
 msgid "initializer ends prematurely"
 msgstr "初始值设定在完成之前结束"
 
-#: cp/init.cc:4979
+#: cp/init.cc:4987
 #, gcc-internal-format
 msgid "unknown array size in delete"
 msgstr "delete 时数组大小未知"
 
-#: cp/init.cc:5013
+#: cp/init.cc:5021
 #, fuzzy, gcc-internal-format
 #| msgid "possible problem detected in invocation of delete operator:"
 msgid "possible problem detected in invocation of %<operator delete%>"
 msgstr "检测到调用 delete 运算符时可能出现的问题:"
 
-#: cp/init.cc:5018
+#: cp/init.cc:5026
 #, fuzzy, 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 "析构函数和类特定的 delete 运算符均不会被调用,即使它们在类定义时已经声明。"
 
-#: cp/init.cc:5033
+#: cp/init.cc:5041
 #, fuzzy, gcc-internal-format
 msgid "deleting object of abstract class type %qT which has non-virtual destructor will cause undefined behavior"
 msgstr "删除对象的抽象类别类型 %qT 该项有 non-virtual 解构式将造成未定义的行为"
 
-#: cp/init.cc:5038
+#: cp/init.cc:5046
 #, fuzzy, gcc-internal-format
 msgid "deleting object of polymorphic class type %qT which has non-virtual destructor might cause undefined behavior"
 msgstr "删除对象的 polymorphic 类别类型 %qT 该项有 non-virtual 解构式也许造成未定义的行为"
 
-#: cp/init.cc:5345
+#: cp/init.cc:5353
 #, gcc-internal-format
 msgid "type to vector delete is neither pointer or array type"
 msgstr "向量 delete 的实参类型既非指针也非数组"
@@ -58011,63 +58224,63 @@ msgstr "(如果您使用%<-fpermissive%>,G++ 会接受您的代码,但是允
 msgid "  # %E"
 msgstr ""
 
-#: cp/mangle.cc:2365
+#: cp/mangle.cc:2386
 #, fuzzy, gcc-internal-format
 #| msgid "mangling typeof, use decltype instead"
 msgid "mangling %<typeof%>, use %<decltype%> instead"
 msgstr "修饰 typeof,请改用 decltype"
 
-#: cp/mangle.cc:2369
+#: cp/mangle.cc:2390
 #, fuzzy, gcc-internal-format
 msgid "mangling %<__underlying_type%>"
 msgstr "修饰未知的定点类型"
 
-#: cp/mangle.cc:2676
+#: cp/mangle.cc:2697
 #, gcc-internal-format
 msgid "mangling unknown fixed point type"
 msgstr "修饰未知的定点类型"
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "mangling %C"
 msgstr "修饰 %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
 #, fuzzy, gcc-internal-format
 msgid "the mangled name of %qD changed between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)"
 msgstr "%qD修饰后的名字将在 GCC 的未来版本中有变化"
 
-#: cp/mangle.cc:4152
+#: cp/mangle.cc:4172
 #, fuzzy, gcc-internal-format
 msgid "the mangled name of %qD changes between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)"
 msgstr "%qD修饰后的名字将在 GCC 的未来版本中有变化"
 
-#: cp/mangle.cc:4424
+#: cp/mangle.cc:4444
 #, fuzzy, gcc-internal-format
 msgid "the mangled name of a thunk for %qD changes between %<-fabi-version=%d%> and %<-fabi-version=%d%>"
 msgstr "%qD修饰后的名字将在 GCC 的未来版本中有变化"
 
-#: cp/mangle.cc:4429
+#: cp/mangle.cc:4449
 #, fuzzy, gcc-internal-format
 msgid "the mangled name of %qD changes between %<-fabi-version=%d%> and %<-fabi-version=%d%>"
 msgstr "%qD修饰后的名字将在 GCC 的未来版本中有变化"
 
-#: cp/mangle.cc:4434
+#: cp/mangle.cc:4454
 #, fuzzy, gcc-internal-format
 msgid "the mangled name of the initialization guard variable for %qD changes between %<-fabi-version=%d%> and %<-fabi-version=%d%>"
 msgstr "%qD修饰后的名字将在 GCC 的未来版本中有变化"
@@ -58398,7 +58611,7 @@ msgstr ""
 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 "%qD declared here"
 msgid "module %qs declared here"
@@ -58537,38 +58750,38 @@ msgstr ""
 msgid "returning to the gate for a mechanical issue"
 msgstr ""
 
-#: cp/module.cc:18670
+#: cp/module.cc:18671
 #, fuzzy, gcc-internal-format
 #| msgid "Creating '%s'\n"
 msgid "reading CMI %qs"
 msgstr "正在创建 '%s'\n"
 
-#: 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 "未知的选项:%s %s %s"
@@ -58580,400 +58793,400 @@ msgstr "未知的选项:%s %s %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 "`%.*s' 已被定义为对照符号"
 
-#: cp/module.cc:18961
+#: cp/module.cc:18962
 #, fuzzy, gcc-internal-format
 #| msgid "module procedure"
 msgid "module already imported"
 msgstr "模块过程"
 
-#: cp/module.cc:18966
+#: cp/module.cc:18967
 #, fuzzy, gcc-internal-format
 #| msgid "module procedure"
 msgid "module %qs imported here"
 msgstr "模块过程"
 
-#: cp/module.cc:19153
+#: cp/module.cc:19154
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "unknown Compiled Module Interface: %s"
 msgstr "PRINT_OPERAND:未知的标点‘%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 "Enable traditional preprocessing."
 msgid "C++ modules are incompatible with traditional preprocessing"
 msgstr "启用传统预处理。"
 
-#: 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
 #, gcc-internal-format
 msgid "you should use the %<-%s%> option"
 msgstr ""
 
-#: cp/module.cc:19624 cp/module.cc:19653
+#: cp/module.cc:19625 cp/module.cc:19654
 #, fuzzy, gcc-internal-format
 #| msgid "invalid --param value %qs"
 msgid "invalid header name %qs"
 msgstr "无效的 --param 值%qs"
 
-#: cp/module.cc:19663
+#: cp/module.cc:19664
 #, fuzzy, gcc-internal-format
 #| msgid "invalid --param value %qs"
 msgid "invalid module name %qs"
 msgstr "无效的 --param 值%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 "error writing %qs"
 msgid "writing CMI %qs"
 msgstr "写入%qs时错误"
 
-#: 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 "写入模块文件时出错:%s"
 
-#: cp/module.cc:19902
+#: cp/module.cc:19903
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "failed to find class '%s'"
 msgid "failed to write compiled module: %s"
 msgstr "找不到类‘%s’"
 
-#: cp/module.cc:20039
+#: cp/module.cc:20040
 #, fuzzy, gcc-internal-format
 msgid "unknown header kind %qs"
 msgstr "spec 函数名格式错误"
 
-#: cp/name-lookup.cc:2727
+#: cp/name-lookup.cc:2730
 #, fuzzy, gcc-internal-format
 #| msgid "declaration of %q+D shadows a parameter"
 msgid "redeclaration of %q#D with different template parameters"
 msgstr "%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的节与早先的声明冲突"
 
-#: cp/name-lookup.cc:2898
+#: cp/name-lookup.cc:2901
 #, fuzzy, gcc-internal-format
 #| msgid "%q#D hides constructor for %q#T"
 msgid "%q#D hides constructor for %q#D"
 msgstr "%q#D隐藏了%q#T的构造函数"
 
-#: cp/name-lookup.cc:3047
+#: cp/name-lookup.cc:3050
 #, fuzzy, gcc-internal-format
 #| msgid "conflicting declaration %q#D"
 msgid "conflicting C language linkage declaration %q#D"
 msgstr "相互冲突的声明%q#D"
 
-#: cp/name-lookup.cc:3052
+#: cp/name-lookup.cc:3055
 #, gcc-internal-format
 msgid "due to different exception specifications"
 msgstr "因为异常规范不一致"
 
-#: cp/name-lookup.cc:3150
+#: cp/name-lookup.cc:3153
 #, fuzzy, gcc-internal-format
 #| msgid "parameter %qD invalidly declared method type"
 msgid "lambda parameter %qD previously declared as a capture"
 msgstr "形参%qD被无效地被声明为具有方法类型"
 
-#: cp/name-lookup.cc:3173
+#: cp/name-lookup.cc:3176
 #, gcc-internal-format
 msgid "declaration of %q#D shadows a parameter"
 msgstr "%q#D的声明隐藏了一个形参"
 
-#: 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声明为%qT的一个成员"
 
-#: cp/name-lookup.cc:3766
+#: cp/name-lookup.cc:3772
 #, fuzzy, gcc-internal-format
 #| msgid "friend declaration %qD in local class without prior declaration"
 msgid "friend declaration %qD in local class without prior local declaration"
 msgstr "本地类中的友元声明%qD没有先前声明"
 
-#: cp/name-lookup.cc:4233
+#: cp/name-lookup.cc:4239
 #, fuzzy, gcc-internal-format
 #| msgid "%s %s(%E) %p %d\n"
 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\n"
 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 "new 声明中的表达式必须具有整数或枚举类型"
 
-#: 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已在此声明过"
 
-#: cp/name-lookup.cc:5557
+#: cp/name-lookup.cc:5568
 #, fuzzy, gcc-internal-format
 #| msgid "%<%T::%D%> names destructor"
 msgid "%<%T%s%D%> names destructor"
 msgstr "%<%T::%D%>指定了析构函数"
 
-#: cp/name-lookup.cc:5573
+#: cp/name-lookup.cc:5584
 #, gcc-internal-format
 msgid "using-declaration for non-member at class scope"
 msgstr "在类作用域使用非成员的 using 声明"
 
-#: 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 "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/name-lookup.cc:5597 cp/pt.cc:18455
+#: cp/name-lookup.cc:5608 cp/pt.cc:18500
 #, fuzzy, gcc-internal-format
 #| msgid "%qE is not a class, namespace, or enumeration"
 msgid "%qT is not a class, namespace, or enumeration"
 msgstr "%qE不是一个类、命名空间或枚举"
 
-#: 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"
 
-#: 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 non-member at class scope"
 msgid "using-declaration for member at non-class scope"
 msgstr "在类作用域使用非成员的 using 声明"
 
-#: cp/name-lookup.cc:5641
+#: cp/name-lookup.cc:5652
 #, fuzzy, gcc-internal-format
 #| msgid "type %qT is not a direct base of %qT"
 msgid "%qT is not a direct base of %qT"
 msgstr "类型%qT不是%qT的直接基类"
 
-#: cp/name-lookup.cc:5686
+#: cp/name-lookup.cc:5712
 #, gcc-internal-format
 msgid "did you mean %<using enum %T::%D%>?"
 msgstr ""
 
-#: cp/name-lookup.cc:5698
+#: cp/name-lookup.cc:5724
 #, fuzzy, gcc-internal-format
 #| msgid "%qE has not been declared"
 msgid "%qD has not been declared in %qD"
 msgstr "%qE未声明"
 
-#: cp/name-lookup.cc:5712
+#: cp/name-lookup.cc:5738
 #, fuzzy, gcc-internal-format
 msgid "using-declaration may not name namespace %qD"
 msgstr "不允许在 using 声明中使用命名空间%qD"
 
-#: cp/name-lookup.cc:5723
+#: cp/name-lookup.cc:5749
 #, gcc-internal-format
 msgid "%<%T::%D%> names constructor in %qT"
 msgstr "%<%T::%D%>在%qT内指定了构造函数"
 
-#: cp/name-lookup.cc:5816
+#: cp/name-lookup.cc:5842
 #, gcc-internal-format
 msgid "declaration of %qD not in a namespace surrounding %qD"
 msgstr "%qD的声明不在包含%qD的命名空间中"
 
-#: cp/name-lookup.cc:5857
+#: cp/name-lookup.cc:5883
 #, gcc-internal-format
 msgid "explicit qualification in declaration of %qD"
 msgstr "%qD的声明中有显式的限定"
 
-#: cp/name-lookup.cc:5867
+#: cp/name-lookup.cc:5893
 #, gcc-internal-format
 msgid "%qD should have been declared inside %qD"
 msgstr "%qD应当先在%qD内声明"
 
-#: cp/name-lookup.cc:5920
+#: cp/name-lookup.cc:5946
 #, fuzzy, gcc-internal-format
 #| msgid "%qE has not been declared"
 msgid "%qD has not been declared within %qD"
 msgstr "%qE未声明"
 
-#: cp/name-lookup.cc:5922
+#: cp/name-lookup.cc:5948
 #, fuzzy, gcc-internal-format
 #| msgid "%q+D declared as a friend"
 msgid "only here as a %<friend%>"
 msgstr "%q+D声明为友元"
 
-#: cp/name-lookup.cc:5976
+#: cp/name-lookup.cc:6002
 #, gcc-internal-format
 msgid "%qD attribute requires a single NTBS argument"
 msgstr "%qD属性需要一个 NTBS 作为实参"
 
-#: 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 "%qD属性无意义,因为匿名命名空间的成员拥有局部符号"
 
-#: 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 "%qs(有%qT)的实参类型无效"
 
-#: cp/name-lookup.cc:5999
+#: cp/name-lookup.cc:6025
 #, fuzzy, gcc-internal-format
 msgid "ignoring %qD attribute on non-inline namespace"
 msgstr "%qs(有%qT)的实参类型无效"
 
-#: cp/name-lookup.cc:6036 cp/name-lookup.cc:8525
+#: cp/name-lookup.cc:6062 cp/name-lookup.cc:8551
 #, gcc-internal-format
 msgid "%qD attribute directive ignored"
 msgstr "指定%qD属性被忽略"
 
-#: cp/name-lookup.cc:6362
+#: cp/name-lookup.cc:6388
 #, fuzzy, gcc-internal-format
 msgid "maximum limit of %d namespaces searched for %qE"
 msgstr "最大值限制的 %d 命名空间搜索的用于 %qE"
 
-#: cp/name-lookup.cc:6414
+#: cp/name-lookup.cc:6440
 #, gcc-internal-format
 msgid "suggested alternative:"
 msgid_plural "suggested alternatives:"
 msgstr[0] "建议的替代:"
 
-#: cp/name-lookup.cc:6420
+#: cp/name-lookup.cc:6446
 #, gcc-internal-format
 msgid "  %qE"
 msgstr "  %qE"
 
-#: 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 "%<this%> is unavailable for static member functions"
 msgid "%<std::%s%> is only available from %s onwards"
 msgstr "静态成员函数中不能使用%<this%>"
 
-#: cp/name-lookup.cc:7391
+#: cp/name-lookup.cc:7417
 #, fuzzy, gcc-internal-format
 msgid "the macro %qs had not yet been defined"
 msgstr "聚合%q#D类型不完全,无法被定义"
 
-#: cp/name-lookup.cc:7394
+#: cp/name-lookup.cc:7420
 #, fuzzy, gcc-internal-format
 #| msgid "struct defined here"
 msgid "it was later defined here"
 msgstr "结构在此定义"
 
-#: 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 "从花括号中的初始化列表演绎需要 #include <initializer_list>"
 
-#: cp/name-lookup.cc:8509
+#: cp/name-lookup.cc:8535
 #, fuzzy, gcc-internal-format
 #| msgid "switch %qs is no longer supported"
 msgid "%<strong%> using directive no longer supported"
 msgstr "开关%qs不再被支持"
 
-#: 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 "%qD may not be declared within a namespace"
 msgid "cannot nest more than %d namespaces"
 msgstr "%qD不能在命名空间声明"
 
-#: cp/name-lookup.cc:8708
+#: cp/name-lookup.cc:8734
 #, fuzzy, gcc-internal-format
 msgid "%<namespace %E%> is ambiguous"
 msgstr "‘%s’(位于 %L)有歧义"
 
-#: cp/name-lookup.cc:8724
+#: cp/name-lookup.cc:8750
 #, gcc-internal-format
 msgid "namespace alias %qD not allowed here, assuming %qD"
 msgstr "这里不允许命名空间别名%qD,假定为%qD"
 
-#: cp/name-lookup.cc:8804
+#: cp/name-lookup.cc:8830
 #, fuzzy, gcc-internal-format
 msgid "inline namespace must be specified at initial definition"
 msgstr "方法属性必须被指定的于结束只有"
 
-#: cp/name-lookup.cc:8805
+#: cp/name-lookup.cc:8831
 #, fuzzy, gcc-internal-format
 #| msgid "label %qD defined here"
 msgid "%qD defined here"
 msgstr "标号%qD在此定义"
 
-#: cp/name-lookup.cc:8854
+#: cp/name-lookup.cc:8880
 #, fuzzy, gcc-internal-format
 #| msgid "%qD conflicts with used function"
 msgid "%s namespace %qD conflicts with reachable definition"
 msgstr "%qD与已用的函数冲突"
 
-#: cp/name-lookup.cc:8856
+#: cp/name-lookup.cc:8882
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "previous definition here"
 msgid "reachable %s definition here"
 msgstr "先前的定义在这里"
 
-#: cp/name-lookup.cc:8899
+#: cp/name-lookup.cc:8925
 #, fuzzy, gcc-internal-format
 #| msgid "XXX entering pop_everything ()\n"
 msgid "XXX entering %<pop_everything ()%>"
 msgstr "XXX 进入 pop_everything ()\n"
 
-#: cp/name-lookup.cc:8908
+#: cp/name-lookup.cc:8934
 #, fuzzy, gcc-internal-format
 #| msgid "XXX leaving pop_everything ()\n"
 msgid "XXX leaving %<pop_everything ()%>"
@@ -58999,7 +59212,7 @@ msgstr "标识符%qE与 C++ 关键字冲突"
 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 "%<#pragma align%>必须出现在 %D 的声明之前,忽略"
@@ -59029,7 +59242,7 @@ msgstr "%<::%E%>尚未声明"
 msgid "request for member %qE in non-class type %qT"
 msgstr "在非类类型%2$qT中请求成员%1$qE"
 
-#: 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%>尚未声明"
@@ -59110,7 +59323,7 @@ msgstr "无效的模板 ID"
 msgid "ISO C++ forbids using a floating-point literal in a constant-expression"
 msgstr "浮点字面量不能出现在常量表达式中"
 
-#: cp/parser.cc:3355 cp/pt.cc:20113
+#: cp/parser.cc:3355 cp/pt.cc:20161
 #, gcc-internal-format
 msgid "a cast to a type other than an integral or enumeration type cannot appear in a constant-expression"
 msgstr "常量表达式中不能出现目标不是整型或枚举型的类型转换"
@@ -59248,7 +59461,7 @@ msgstr "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
 msgid "%<concept%> only available with %<-std=c++20%> or %<-fconcepts%>"
 msgstr "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "带作用域的枚举只在 -std=c++0x 或 -std=gnu++0x 下可用"
@@ -59310,1487 +59523,1487 @@ msgstr "%qE不是类%qT中的一个类型名"
 msgid "%qE in %q#T does not name a type"
 msgstr "%qE不是一个类型名"
 
-#: cp/parser.cc:4366
+#: cp/parser.cc:4364
 #, gcc-internal-format
 msgid "expected string-literal"
 msgstr "需要字面字符串"
 
-#: cp/parser.cc:4432
+#: cp/parser.cc:4430
 #, fuzzy, gcc-internal-format
 msgid "inconsistent user-defined literal suffixes %qD and %qD in string literal"
 msgstr "不一致用户定义的实字后缀 %qD 和 %qD 在中字串实字"
 
-#: 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 "无法找到字符实字运算符 %qD 与 %qT 参数"
 
-#: cp/parser.cc:4724
+#: cp/parser.cc:4722
 #, fuzzy, gcc-internal-format
 msgid "integer literal exceeds range of %qT type"
 msgstr "浮点常量超出%qT的范围"
 
-#: cp/parser.cc:4731
+#: cp/parser.cc:4729
 #, fuzzy, gcc-internal-format
 msgid "floating literal exceeds range of %qT type"
 msgstr "浮点常量超出%qT的范围"
 
-#: cp/parser.cc:4735
+#: cp/parser.cc:4733
 #, fuzzy, gcc-internal-format
 msgid "floating literal truncated to zero"
 msgstr "浮点常量向零截断"
 
-#: 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 "在类%qs中找不到可溢出的寄存器"
 
-#: 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 "无法找到字串实字运算符 %qD 与 %qT,%qT 参数"
 
-#: 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
 #, gcc-internal-format
 msgid "expected declaration"
 msgstr "需要声明"
 
-#: cp/parser.cc:5366 cp/parser.cc:5381
+#: cp/parser.cc:5364 cp/parser.cc:5379
 #, fuzzy, gcc-internal-format
 #| msgid "expected operator"
 msgid "expected binary operator"
 msgstr "需要操作符"
 
-#: cp/parser.cc:5387
+#: cp/parser.cc:5385
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<...%>"
 msgid "expected ..."
 msgstr "需要%<...%>"
 
-#: cp/parser.cc:5399
+#: cp/parser.cc:5397
 #, fuzzy, gcc-internal-format
 #| msgid "lambda-expression in a constant expression"
 msgid "binary expression in operand of fold-expression"
 msgstr "常量表达式中的 Lambda 表达式"
 
-#: cp/parser.cc:5404
+#: cp/parser.cc:5402
 #, fuzzy, gcc-internal-format
 msgid "conditional expression in operand of fold-expression"
 msgstr "自增不能出现在常量表达式中"
 
-#: cp/parser.cc:5412
+#: cp/parser.cc:5410
 #, fuzzy, gcc-internal-format
 msgid "mismatched operator in fold-expression"
 msgstr "移位表达式类型不匹配"
 
-#: cp/parser.cc:5516
+#: cp/parser.cc:5514
 #, gcc-internal-format
 msgid "fixed-point types not supported in C++"
 msgstr "C++ 不支持定点类型"
 
-#: cp/parser.cc:5599
+#: cp/parser.cc:5597
 #, gcc-internal-format
 msgid "ISO C++ forbids braced-groups within expressions"
 msgstr "ISO C++ 不允许在表达式中使用花括号组"
 
-#: 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 "Lambda 表达式只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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
 #, gcc-internal-format
 msgid "expected primary-expression"
 msgstr "需要元表达式"
 
-#: cp/parser.cc:5742
+#: cp/parser.cc:5740
 #, gcc-internal-format
 msgid "%<this%> may not be used in this context"
 msgstr "%<this%>不能用在此上下文中"
 
-#: cp/parser.cc:5887
+#: cp/parser.cc:5885
 #, fuzzy, gcc-internal-format
 msgid "a template declaration cannot appear at block scope"
 msgstr "Objective-C 声明只能出现在全局作用域中"
 
-#: cp/parser.cc:6228
+#: cp/parser.cc:6226
 #, fuzzy, gcc-internal-format
 msgid "expected id-expression"
 msgstr "? 预期于运算式中"
 
-#: 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
 #, gcc-internal-format
 msgid "scope %qT before %<~%> is not a class-name"
 msgstr "%<~%>前的作用域%qT不是一个类名"
 
-#: cp/parser.cc:6403
+#: cp/parser.cc:6401
 #, fuzzy, gcc-internal-format
 msgid "%<template%> keyword not permitted in destructor name"
 msgstr "形参声明为%<auto%>"
 
-#: 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 "C++0x auto 只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:6452
+#: cp/parser.cc:6450
 #, fuzzy, gcc-internal-format
 #| msgid "keyword %<typename%> not allowed outside of templates"
 msgid "template-id not allowed for destructor"
 msgstr "关键字%<typename%>不能在模板以外使用"
 
-#: cp/parser.cc:6561
+#: cp/parser.cc:6559
 #, gcc-internal-format
 msgid "declaration of %<~%T%> as member of %qT"
 msgstr "%<~%T%>声明为%qT的一个成员"
 
-#: cp/parser.cc:6576
+#: cp/parser.cc:6574
 #, gcc-internal-format
 msgid "typedef-name %qD used as destructor declarator"
 msgstr "typedef 名%qD用于析构函数声明"
 
-#: 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不是一个模板"
 
-#: cp/parser.cc:6753
+#: cp/parser.cc:6751
 #, fuzzy, gcc-internal-format
 msgid "found %<:%> in nested-name-specifier, expected %<::%>"
 msgstr "嵌套名指定中使用了不完全的类型%qT"
 
-#: 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 "%qT被解析到非枚举类型%qT"
 
-#: 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 "嵌套名指定中使用了不完全的类型%qT"
 
-#: cp/parser.cc:6864
+#: cp/parser.cc:6862
 #, fuzzy, gcc-internal-format
 msgid "function template-id %qD in nested-name-specifier"
 msgstr "嵌套名指定中使用了不完全的类型%qT"
 
-#: cp/parser.cc:6878
+#: cp/parser.cc:6876
 #, fuzzy, gcc-internal-format
 msgid "variable template-id %qD in nested-name-specifier"
 msgstr "%C 期待访问指定符"
 
-#: cp/parser.cc:7052
+#: cp/parser.cc:7050
 #, fuzzy, gcc-internal-format
 msgid "expected nested-name-specifier"
 msgstr "typedef 名不能是嵌套名指定"
 
-#: cp/parser.cc:7259 cp/parser.cc:9804
+#: cp/parser.cc:7257 cp/parser.cc:9798
 #, gcc-internal-format
 msgid "types may not be defined in casts"
 msgstr "类型不能定义在类型转换中"
 
-#: cp/parser.cc:7348
+#: cp/parser.cc:7346
 #, gcc-internal-format
 msgid "types may not be defined in a %<typeid%> expression"
 msgstr "类型不能定义在%<typeid%>表达式中"
 
-#: cp/parser.cc:7440
+#: cp/parser.cc:7438
 #, fuzzy, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_addressof%>"
 msgstr "给函数%<__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 "给函数%<__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 "给函数%<__builtin_next_arg%>的参数数目不对"
 
-#: cp/parser.cc:7491
+#: cp/parser.cc:7489
 #, fuzzy, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_shufflevector%>"
 msgstr "给函数%<__builtin_next_arg%>的参数数目不对"
 
-#: cp/parser.cc:7625
+#: cp/parser.cc:7627
 #, gcc-internal-format
 msgid "ISO C++ forbids compound-literals"
 msgstr "ISO C++ 不允许复合字面量"
 
-#: 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"
 
-#: cp/parser.cc:8339
+#: cp/parser.cc:8335
 #, fuzzy, gcc-internal-format
 msgid "%<%D::%D%> is not a class member"
 msgstr "%<%D::%D%>不是%qT的成员"
 
-#: cp/parser.cc:8611
+#: cp/parser.cc:8605
 #, gcc-internal-format
 msgid "non-scalar type"
 msgstr "非标准类型"
 
-#: cp/parser.cc:8721
+#: cp/parser.cc:8715
 #, gcc-internal-format
 msgid "ISO C++ does not allow %<alignof%> with a non-type"
 msgstr "ISO C++ 不允许对非类型使用%<alignof%>"
 
-#: cp/parser.cc:8816
+#: cp/parser.cc:8810
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in %<noexcept%> expressions"
 msgstr "类型不能定义在%<decltype%>中"
 
-#: 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 "不能在返回类型中定义新类型"
 
-#: cp/parser.cc:9155
+#: cp/parser.cc:9149
 #, fuzzy, gcc-internal-format
 msgid "%<__builtin_has_attribute%> with dependent argument not supported yet"
 msgstr "__builtin_saveregs 不为此目标所支持"
 
-#: cp/parser.cc:9241
+#: cp/parser.cc:9235
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in a new-expression"
 msgstr "不能在返回类型中定义新类型"
 
-#: cp/parser.cc:9257
+#: cp/parser.cc:9251
 #, gcc-internal-format
 msgid "array bound forbidden after parenthesized type-id"
 msgstr "括起的类型标识符后面不能出现数组边界"
 
-#: cp/parser.cc:9259
+#: cp/parser.cc:9253
 #, gcc-internal-format
 msgid "try removing the parentheses around the type-id"
 msgstr "请尝试删除类型标识符两边的括号"
 
-#: 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 type"
 msgid "expected expression-list or type-id"
 msgstr "需要表达式类型"
 
-#: cp/parser.cc:9365
+#: cp/parser.cc:9359
 #, gcc-internal-format
 msgid "types may not be defined in a new-type-id"
 msgstr "类型不能定义在 new-type-id 中"
 
-#: cp/parser.cc:9500
+#: cp/parser.cc:9494
 #, gcc-internal-format
 msgid "expression in new-declarator must have integral or enumeration type"
 msgstr "new 声明中的表达式必须具有整数或枚举类型"
 
-#: cp/parser.cc:9909
+#: cp/parser.cc:9903
 #, fuzzy, gcc-internal-format
 #| msgid "use of old-style cast"
 msgid "use of old-style cast to %q#T"
 msgstr "使用旧式的类型转换"
 
-#: cp/parser.cc:10058
+#: cp/parser.cc:10052
 #, fuzzy, gcc-internal-format
 msgid "%<>>%> operator is treated as two right angle brackets in C++11"
 msgstr "%<>>%>运算符在 C++0x 中将被认为是两个右尖括号"
 
-#: cp/parser.cc:10061
+#: cp/parser.cc:10055
 #, gcc-internal-format
 msgid "suggest parentheses around %<>>%> expression"
 msgstr "建议%<>>%>表达式周围加上括号"
 
-#: cp/parser.cc:10269
+#: cp/parser.cc:10263
 #, fuzzy, gcc-internal-format
 #| msgid "ISO C++ does not allow ?: with omitted middle operand"
 msgid "ISO C++ does not allow %<?:%> with omitted middle operand"
 msgstr "ISO C++ 不允许省略 ?: 的中间操作数"
 
-#: 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 in conditions"
 msgid "types may not be defined within %<__builtin_offsetof%>"
 msgstr "类型不能定义在条件表达式中"
 
-#: cp/parser.cc:11027
+#: cp/parser.cc:11021
 #, fuzzy, gcc-internal-format
 msgid "lambda-expression in template parameter type"
 msgstr "为 lambda 形参指定了默认参数"
 
-#: 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 "Lambda 表达式只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:11205
+#: cp/parser.cc:11199
 #, fuzzy, gcc-internal-format
 msgid "non-local lambda expression cannot have a capture-default"
 msgstr "为 lambda 形参指定了默认参数"
 
-#: cp/parser.cc:11227
+#: cp/parser.cc:11221
 #, gcc-internal-format
 msgid "expected end of capture-list"
 msgstr "捕获列表应在此结束"
 
-#: 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 "C++0x auto 只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "已经在 Lambda 表达式中捕获了%<this%>"
 
-#: 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 "C++0x auto 只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:11285
+#: cp/parser.cc:11279
 #, fuzzy, gcc-internal-format
 #| msgid "cannot capture %qE by reference"
 msgid "%<this%> cannot be captured by reference"
 msgstr "无法通过引用捕获%qE"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "Lambda 表达式只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:11354
+#: cp/parser.cc:11348
 #, gcc-internal-format
 msgid "empty initializer for lambda init-capture"
 msgstr ""
 
-#: cp/parser.cc:11378
+#: cp/parser.cc:11372
 #, fuzzy, gcc-internal-format
 msgid "capture of non-variable %qE"
 msgstr "%qD不是一个变量"
 
-#: cp/parser.cc:11388
+#: cp/parser.cc:11382
 #, fuzzy, gcc-internal-format
 msgid "capture of variable %qD with non-automatic storage duration"
 msgstr "截取的变量 %qD 与 non-automatic 贮藏体持续时间"
 
-#: cp/parser.cc:11426
+#: cp/parser.cc:11420
 #, fuzzy, gcc-internal-format
 #| msgid "too many %qs clauses"
 msgid "too many %<...%> in lambda capture"
 msgstr "太多的%qs子句"
 
-#: cp/parser.cc:11437
+#: cp/parser.cc:11431
 #, fuzzy, gcc-internal-format
 msgid "explicit by-copy capture of %qD redundant with by-copy capture default"
 msgstr "明确的 by-copy 截取的 %qD 冗余与 by-copy 截取缺省"
 
-#: cp/parser.cc:11442
+#: cp/parser.cc:11436
 #, fuzzy, gcc-internal-format
 msgid "explicit by-reference capture of %qD redundant with by-reference capture default"
 msgstr "明确的 by-reference 截取的 %qD 冗余与 by-reference 截取缺省"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:11594
+#: cp/parser.cc:11588
 #, gcc-internal-format
 msgid "default argument specified for lambda parameter"
 msgstr "为 lambda 形参指定了默认参数"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:11625
+#: cp/parser.cc:11619
 #, fuzzy, gcc-internal-format
 #| msgid "duplicate %<volatile%>"
 msgid "duplicate %<mutable%>"
 msgstr "重复的%<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 "带作用域的枚举只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "属性在模板实例化上被忽略"
 
-#: cp/parser.cc:12576
+#: cp/parser.cc:12570
 #, gcc-internal-format
 msgid "expected labeled-statement"
 msgstr "需要标号语句"
 
-#: cp/parser.cc:12625
+#: cp/parser.cc:12619
 #, gcc-internal-format
 msgid "case label %qE not within a switch statement"
 msgstr "case 标号%qE未出现在 switch 语句中"
 
-#: cp/parser.cc:12744
+#: cp/parser.cc:12738
 #, gcc-internal-format
 msgid "need %<typename%> before %qE because %qT is a dependent scope"
 msgstr "%qE之前需要%<typename%>,因为%qT是一个有依赖的作用域"
 
-#: cp/parser.cc:12753
+#: cp/parser.cc:12747
 #, gcc-internal-format
 msgid "%<%T::%D%> names the constructor, not the type"
 msgstr "%<%T::%D%>命名了一个构造函数而非类型"
 
-#: cp/parser.cc:12801
+#: cp/parser.cc:12795
 #, fuzzy, gcc-internal-format
 msgid "compound-statement in %<constexpr%> function"
 msgstr "标号位于复合语句末尾"
 
-#: 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 "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:13012 cp/parser.cc:13047
+#: cp/parser.cc:13006 cp/parser.cc:13041
 #, fuzzy, gcc-internal-format
 #| msgid "lvalue required in asm statement"
 msgid "%<if consteval%> requires compound statement"
 msgstr "asm 语句中需要左值"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:13257 cp/parser.cc:32932
+#: cp/parser.cc:13251 cp/parser.cc:32938
 #, gcc-internal-format
 msgid "expected selection-statement"
 msgstr "需要选择语句"
 
-#: cp/parser.cc:13298
+#: cp/parser.cc:13292
 #, fuzzy, gcc-internal-format
 #| msgid "function returning an array"
 msgid "condition declares an array"
 msgstr "函数返回了一个数组"
 
-#: cp/parser.cc:13300
+#: cp/parser.cc:13294
 #, fuzzy, gcc-internal-format
 #| msgid "field %qE declared as a function"
 msgid "condition declares a function"
 msgstr "字段%qE声明为一个函数"
 
-#: cp/parser.cc:13340
+#: cp/parser.cc:13334
 #, gcc-internal-format
 msgid "types may not be defined in conditions"
 msgstr "类型不能定义在条件表达式中"
 
 #. 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
 #, gcc-internal-format
 msgid "expected initializer"
 msgstr "需要初始值设定"
 
-#: 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 "带作用域的枚举只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "%C处的循环变量不能是一个子组件"
 
-#: 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 "表达式语句类型不完全"
 
-#: 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 "对%qT不一致的演绎:先是%qT然后是%qT"
 
-#: cp/parser.cc:14130 cp/parser.cc:32935
+#: cp/parser.cc:14124 cp/parser.cc:32941
 #, gcc-internal-format
 msgid "expected iteration-statement"
 msgstr "需要循环语句"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "带作用域的枚举只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
 #. 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++ 不允许计算转移"
 
-#: cp/parser.cc:14346 cp/parser.cc:32938
+#: cp/parser.cc:14340 cp/parser.cc:32944
 #, gcc-internal-format
 msgid "expected jump-statement"
 msgstr "需要跳转语句"
 
-#: cp/parser.cc:14523
+#: cp/parser.cc:14517
 #, fuzzy, gcc-internal-format
 #| msgid "expected template-name"
 msgid "expected module-name"
 msgstr "需要模板名"
 
-#: cp/parser.cc:14558
+#: cp/parser.cc:14552
 #, fuzzy, gcc-internal-format
 #| msgid "method declaration not in @interface context"
 msgid "module-declaration not permitted in header-unit"
 msgstr "方法声明不在@interface 上下文中"
 
-#: 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 "重复的%<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 "using-declaration for non-member at class scope"
 msgid "import-declaration must be at global scope"
 msgstr "在类作用域使用非成员的 using 声明"
 
-#: cp/parser.cc:14655
+#: cp/parser.cc:14649
 #, fuzzy, gcc-internal-format
 msgid "import cannot appear directly in a linkage-specification"
 msgstr "指定链接时使用%qD无效"
 
-#: 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 "types may not be defined in exception-declarations"
 msgid "%qE may only occur once in an export declaration"
 msgstr "类型不能定义在异常声明中"
 
-#: 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 "多余的%<;%>"
 
-#: cp/parser.cc:14862
+#: cp/parser.cc:14856
 #, fuzzy, gcc-internal-format
 msgid "attributes are not permitted in this position"
 msgstr "形参声明为%<auto%>"
 
-#: cp/parser.cc:14866
+#: cp/parser.cc:14860
 #, fuzzy, gcc-internal-format
 msgid "attributes may be inserted here"
 msgstr "忽略%qs属性"
 
-#: cp/parser.cc:15083
+#: cp/parser.cc:15077
 #, gcc-internal-format
 msgid "%<__label__%> not at the beginning of a block"
 msgstr "%<__label__%>未出现在块起始"
 
-#: 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
 #, gcc-internal-format
 msgid "inconsistent deduction for %qT: %qT and then %qT"
 msgstr "对%qT不一致的演绎:先是%qT然后是%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 exception-declarations"
 msgid "types may not be defined in a for-range-declaration"
 msgstr "类型不能定义在异常声明中"
 
-#: cp/parser.cc:15437
+#: cp/parser.cc:15431
 #, fuzzy, gcc-internal-format
 msgid "initializer in range-based %<for%> loop"
 msgstr "初始值设定项中索引范围为空"
 
-#: cp/parser.cc:15440
+#: cp/parser.cc:15434
 #, gcc-internal-format
 msgid "multiple declarations in range-based %<for%> loop"
 msgstr ""
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:15545
+#: cp/parser.cc:15539
 #, fuzzy, gcc-internal-format
 #| msgid "expected declaration"
 msgid "empty structured binding declaration"
 msgstr "需要声明"
 
-#: cp/parser.cc:15563
+#: cp/parser.cc:15557
 #, fuzzy, gcc-internal-format
 #| msgid "invalid initializer for member function %qD"
 msgid "invalid initializer for structured binding declaration"
 msgstr "成员函数%qD的初始值设定无效"
 
-#: cp/parser.cc:15732
+#: cp/parser.cc:15726
 #, gcc-internal-format
 msgid "%<friend%> used outside of class"
 msgstr "%<friend%>用在类外"
 
-#: cp/parser.cc:15771
+#: cp/parser.cc:15765
 #, fuzzy, gcc-internal-format
 #| msgid "Attribute at %L is not allowed in a TYPE definition"
 msgid "the %<bool%> keyword is not allowed in a C++20 concept definition"
 msgstr "%L处的属性不允许出现在 TYPE 定义中"
 
-#: 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
 #, fuzzy, gcc-internal-format
 msgid "%<auto%> changes meaning in C++11; please remove it"
 msgstr "%<auto%>的语义在 C++0x 中将被改变;请考虑删除它"
 
-#: cp/parser.cc:15877
+#: cp/parser.cc:15871
 #, fuzzy, gcc-internal-format
 msgid "%qD invalid in condition"
 msgstr "%s:无效的新列指定符号“%s”\n"
 
-#: cp/parser.cc:15884
+#: cp/parser.cc:15878
 #, fuzzy, gcc-internal-format
 #| msgid "%q+D invalid in %q#T"
 msgid "%qD invalid in lambda"
 msgstr "%q+D无效,在%q#T中"
 
-#: cp/parser.cc:15965
+#: cp/parser.cc:15959
 #, fuzzy, gcc-internal-format
 msgid "type-specifier invalid in lambda"
 msgstr "%s:无效的新列指定符号“%s”\n"
 
-#: 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 "类定义不能被声明为友元"
 
-#: 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 "模板不能是%<virtual%>的"
 
-#: cp/parser.cc:16086
+#: cp/parser.cc:16080
 #, fuzzy, gcc-internal-format
 #| msgid "types may not be defined in an exception-specification"
 msgid "types may not be defined in explicit-specifier"
 msgstr "类型不能定义在异常规范中"
 
-#: 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 "C++0x auto 只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:16154
+#: cp/parser.cc:16149
 #, fuzzy, gcc-internal-format
 msgid "invalid linkage-specification"
 msgstr "指定链接时使用%qD无效"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "C++0x auto 只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:16473
+#: cp/parser.cc:16468
 #, gcc-internal-format
 msgid "types may not be defined in %<decltype%> expressions"
 msgstr "类型不能定义在%<decltype%>中"
 
-#: cp/parser.cc:16646
+#: cp/parser.cc:16641
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in a conversion-type-id"
 msgstr "类型不能定义在 new-type-id 中"
 
-#: cp/parser.cc:16675
+#: cp/parser.cc:16670
 #, gcc-internal-format
 msgid "invalid use of %<auto%> in conversion operator"
 msgstr "在转换运算符中使用%<auto%>无效"
 
-#: 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 "在转换运算符中使用%<auto%>无效"
 
-#: cp/parser.cc:16763
+#: cp/parser.cc:16758
 #, fuzzy, gcc-internal-format
 msgid "only constructors take member initializers"
 msgstr "只有构造函数才能有基类初始值设定"
 
-#: cp/parser.cc:16790
+#: cp/parser.cc:16785
 #, fuzzy, gcc-internal-format
 #| msgid "cannot expand initializer for member %<%D%>"
 msgid "cannot expand initializer for member %qD"
 msgstr "无法从成员%<%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 "对%qD的静态声明出现在非静态声明之后"
 
-#: 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 "建构子 delegation 追随 mem-initializer 用于 %qD"
 
-#: 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
 #, gcc-internal-format
 msgid "keyword %<typename%> not allowed in this context (a qualified member initializer is implicitly a type)"
 msgstr "关键字%<typename%>不允许用在此上下文中(限定的初始值设定隐式地是一个类型)"
 
-#: cp/parser.cc:17352
+#: cp/parser.cc:17347
 #, fuzzy, 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 "需要标识符或%<(%>"
 
-#: cp/parser.cc:17367
+#: cp/parser.cc:17362
 #, fuzzy, gcc-internal-format
 msgid "expected empty string after %<operator%> keyword"
 msgstr "%<#pragma message%>后需要一个字符串"
 
-#: cp/parser.cc:17373
+#: cp/parser.cc:17368
 #, fuzzy, gcc-internal-format
 msgid "invalid encoding prefix in literal operator"
 msgstr "二元操作中中操作数无效"
 
-#: cp/parser.cc:17407
+#: cp/parser.cc:17402
 #, gcc-internal-format
 msgid "expected operator"
 msgstr "需要操作符"
 
-#: cp/parser.cc:17454
+#: cp/parser.cc:17449
 #, gcc-internal-format
 msgid "keyword %<export%> not implemented, and will be ignored"
 msgstr "关键字%<export%>未实现,将被忽略"
 
-#: cp/parser.cc:17456
+#: cp/parser.cc:17451
 #, fuzzy, gcc-internal-format
 #| msgid "keyword %<export%> not implemented, and will be ignored"
 msgid "keyword %<export%> is deprecated, and is ignored"
 msgstr "关键字%<export%>未实现,将被忽略"
 
-#: cp/parser.cc:17458
+#: cp/parser.cc:17453
 #, fuzzy, gcc-internal-format
 #| msgid "-mexr is used without -ms"
 msgid "keyword %<export%> is enabled with %<-fmodules-ts%>"
 msgstr "-mexr 未与 -ms 一起使用"
 
-#: cp/parser.cc:17637
+#: cp/parser.cc:17632
 #, fuzzy, gcc-internal-format
 msgid "invalid constrained type parameter"
 msgstr "对模板类型参数%qT的使用无效"
 
-#: cp/parser.cc:17645
+#: cp/parser.cc:17640
 #, fuzzy, gcc-internal-format
 msgid "cv-qualified type parameter"
 msgstr "对模板类型参数%qT的使用无效"
 
-#: cp/parser.cc:17792
+#: cp/parser.cc:17787
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %<auto%> in default template argument"
 msgstr "模板第 %d 个参数无效"
 
-#: cp/parser.cc:18028 cp/parser.cc:18114 cp/parser.cc:24947
+#: cp/parser.cc:18023 cp/parser.cc:18109 cp/parser.cc:24945
 #, gcc-internal-format
 msgid "template parameter pack %qD cannot have a default argument"
 msgstr "模板参数包%qD不能有默认参数"
 
-#: cp/parser.cc:18032 cp/parser.cc:18118
+#: cp/parser.cc:18027 cp/parser.cc:18113
 #, gcc-internal-format
 msgid "template parameter packs cannot have default arguments"
 msgstr "模板参数包不能有默认参数"
 
-#: cp/parser.cc:18185
+#: cp/parser.cc:18180
 #, gcc-internal-format
 msgid "expected template-id"
 msgstr "需要模板 ID"
 
-#: cp/parser.cc:18247
+#: cp/parser.cc:18242
 #, gcc-internal-format
 msgid "%<<::%> cannot begin a template-argument list"
 msgstr "不能以%<<::%>开始一个模板实参列表"
 
-#: 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 "(如果您使用%<-fpermissive%>G++ 会接受您的代码)"
 
-#: cp/parser.cc:18285
+#: cp/parser.cc:18280
 #, fuzzy, gcc-internal-format
 msgid "invalid template-argument-list"
 msgstr "模板第 %d 个参数无效"
 
-#: 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 template-argument"
 msgid "expected %<(%> after template-argument-list"
 msgstr "需要模板实参"
 
-#: cp/parser.cc:18407
+#: cp/parser.cc:18402
 #, gcc-internal-format
 msgid "parse error in template argument list"
 msgstr "模板实参表语法错误"
 
 #. 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
 #, gcc-internal-format
 msgid "expected template-name"
 msgstr "需要模板名"
 
 #. Explain what went wrong.
-#: cp/parser.cc:18538
+#: cp/parser.cc:18533
 #, gcc-internal-format
 msgid "non-template %qD used as template"
 msgstr "非模板%qD用作模板"
 
-#: cp/parser.cc:18540
+#: cp/parser.cc:18535
 #, gcc-internal-format
 msgid "use %<%T::template %D%> to indicate that it is a template"
 msgstr "使用%<%T::template %D%>来表示这是一个模板"
 
-#: cp/parser.cc:18739
+#: cp/parser.cc:18737
 #, gcc-internal-format
 msgid "expected parameter pack before %<...%>"
 msgstr "%<...%>前需要形参包"
 
-#: cp/parser.cc:18835 cp/parser.cc:18853 cp/parser.cc:19026
+#: cp/parser.cc:18833 cp/parser.cc:18851 cp/parser.cc:19024
 #, gcc-internal-format
 msgid "expected template-argument"
 msgstr "需要模板实参"
 
-#: cp/parser.cc:18993
+#: cp/parser.cc:18991
 #, fuzzy, gcc-internal-format
 msgid "invalid non-type template argument"
 msgstr "模板第 %d 个参数无效"
 
-#: cp/parser.cc:19135
+#: cp/parser.cc:19133
 #, gcc-internal-format
 msgid "explicit instantiation shall not use %<inline%> specifier"
 msgstr "显式实例化不应当使用%<inline%>限定符"
 
-#: cp/parser.cc:19139
+#: cp/parser.cc:19137
 #, gcc-internal-format
 msgid "explicit instantiation shall not use %<constexpr%> specifier"
 msgstr "显式实例化不应当使用%<constexpr%>限定符"
 
-#: cp/parser.cc:19143
+#: cp/parser.cc:19141
 #, fuzzy, gcc-internal-format
 #| msgid "explicit instantiation shall not use %<constexpr%> specifier"
 msgid "explicit instantiation shall not use %<consteval%> specifier"
 msgstr "显式实例化不应当使用%<constexpr%>限定符"
 
-#: cp/parser.cc:19205
+#: cp/parser.cc:19203
 #, gcc-internal-format
 msgid "template specialization with C linkage"
 msgstr "特例化模板有 C 链接"
 
-#: cp/parser.cc:19434
+#: cp/parser.cc:19432
 #, fuzzy, gcc-internal-format
 msgid "expected type specifier"
 msgstr "需要类型限定"
 
-#: 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 "默认化和被删除的函数只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "默认化和被删除的函数只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "默认化和被删除的函数只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:19794
+#: cp/parser.cc:19792
 #, fuzzy, gcc-internal-format
 msgid "expected template-id for type"
 msgstr "需要模板 ID"
 
-#: cp/parser.cc:19924
+#: cp/parser.cc:19922
 #, gcc-internal-format
 msgid "expected type-name"
 msgstr "需要类型名"
 
-#: cp/parser.cc:20036
+#: cp/parser.cc:20034
 #, fuzzy, gcc-internal-format
 #| msgid "%qE does not name a type"
 msgid "%qE does not constrain a type"
 msgstr "%qE不是一个类型名"
 
-#: cp/parser.cc:20037
+#: cp/parser.cc:20035
 #, fuzzy, gcc-internal-format
 #| msgid "union defined here"
 msgid "concept defined here"
 msgstr "联合在此定义"
 
-#: cp/parser.cc:20060
+#: cp/parser.cc:20058
 #, fuzzy, gcc-internal-format
 msgid "expected %<auto%> or %<decltype(auto)%> after %qE"
 msgstr "{ 预期于运算式中 ? 之后"
 
-#: cp/parser.cc:20067
+#: cp/parser.cc:20065
 #, gcc-internal-format
 msgid "unexpected placeholder in constrained result type"
 msgstr ""
 
-#: cp/parser.cc:20310
+#: cp/parser.cc:20308
 #, fuzzy, gcc-internal-format
 msgid "elaborated-type-specifier for a scoped enum must not use the %qD keyword"
 msgstr "elaborated-type-specifier 用于范围的 enum 必须不使用 %<%D%>关键字"
 
-#: cp/parser.cc:20386
+#: cp/parser.cc:20384
 #, fuzzy, gcc-internal-format
 #| msgid "typedef name may not be a nested-name-specifier"
 msgid "%<template%> must follow a nested-name-specifier"
 msgstr "typedef 名不能是嵌套名指定"
 
-#: cp/parser.cc:20548
+#: cp/parser.cc:20546
 #, gcc-internal-format
 msgid "declaration %qD does not declare anything"
 msgstr "声明%qD没有声明任何东西"
 
-#: cp/parser.cc:20636
+#: cp/parser.cc:20634
 #, gcc-internal-format
 msgid "attributes ignored on uninstantiated type"
 msgstr "属性在未初始化类型上被忽略"
 
-#: cp/parser.cc:20642
+#: cp/parser.cc:20640
 #, gcc-internal-format
 msgid "attributes ignored on template instantiation"
 msgstr "属性在模板实例化上被忽略"
 
-#: 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
 #, gcc-internal-format
 msgid "%qD is an enumeration template"
 msgstr "%qD不是一个枚举模板"
 
-#: cp/parser.cc:20805
+#: cp/parser.cc:20803
 #, fuzzy, gcc-internal-format
 msgid "%qD does not name an enumeration in %qT"
 msgstr "new 声明中的表达式必须具有整数或枚举类型"
 
-#: cp/parser.cc:20820
+#: cp/parser.cc:20818
 #, fuzzy, gcc-internal-format
 #| msgid "%<namespace%> definition is not allowed here"
 msgid "unnamed scoped enum is not allowed"
 msgstr "在这里不允许使用%<namespace%>定义"
 
-#: cp/parser.cc:20836
+#: cp/parser.cc:20834
 #, fuzzy, gcc-internal-format
 #| msgid "types may not be defined in casts"
 msgid "types may not be defined in enum-base"
 msgstr "类型不能定义在类型转换中"
 
-#: cp/parser.cc:20881
+#: cp/parser.cc:20879
 #, fuzzy, gcc-internal-format
 msgid "expected %<;%> or %<{%>"
 msgstr "需要 %<;%>、%<,%> 或 %<)%>"
 
-#: cp/parser.cc:20925
+#: cp/parser.cc:20923
 #, fuzzy, gcc-internal-format
 msgid "cannot add an enumerator list to a template instantiation"
 msgstr "启用模板自动实例化"
 
-#: cp/parser.cc:20939
+#: cp/parser.cc:20937
 #, fuzzy, gcc-internal-format
 #| msgid "friend declaration does not name a class or function"
 msgid "nested name specifier %qT for enum declaration does not name a class or namespace"
 msgstr "友元声明没有指定类或函数名"
 
-#: cp/parser.cc:20951 cp/parser.cc:26457
+#: cp/parser.cc:20949 cp/parser.cc:26455
 #, gcc-internal-format
 msgid "declaration of %qD in namespace %qD which does not enclose %qD"
 msgstr "%qD声明出现在命名空间%qD中,而后者并不包含%qD"
 
-#: cp/parser.cc:20956 cp/parser.cc:26462
+#: cp/parser.cc:20954 cp/parser.cc:26460
 #, gcc-internal-format
 msgid "declaration of %qD in %qD which does not enclose %qD"
 msgstr "%qD声明出现在%qD中,而后者并不包含%qD"
 
-#: cp/parser.cc:20968 cp/parser.cc:26475
+#: cp/parser.cc:20966 cp/parser.cc:26473
 #, gcc-internal-format
 msgid "extra qualification not allowed"
 msgstr "不允许有多余的限定"
 
-#: cp/parser.cc:21005
+#: cp/parser.cc:21003
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ forbids empty unnamed enum"
 msgstr "ISO C++ 不允许枚举自减"
 
-#: cp/parser.cc:21030
+#: cp/parser.cc:21028
 #, fuzzy, gcc-internal-format
 msgid "opaque-enum-specifier without name"
 msgstr "opaque-enum-specifier 而无需名称"
 
-#: cp/parser.cc:21033
+#: cp/parser.cc:21031
 #, fuzzy, gcc-internal-format
 msgid "opaque-enum-specifier must use a simple identifier"
 msgstr "opaque-enum-specifier 必须使用简单的识别码"
 
-#: 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"
 msgid "%qD is not a namespace-name; did you mean %qs?"
 msgstr "%qD不是一个命名空间名"
 
-#: cp/parser.cc:21233
+#: cp/parser.cc:21231
 #, gcc-internal-format
 msgid "%qD is not a namespace-name"
 msgstr "%qD不是一个命名空间名"
 
-#: cp/parser.cc:21237
+#: cp/parser.cc:21235
 #, gcc-internal-format
 msgid "expected namespace-name"
 msgstr "需要命名空间名"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:21339
+#: cp/parser.cc:21337
 #, fuzzy, gcc-internal-format
 #| msgid "expected namespace-name"
 msgid "nested namespace name required"
 msgstr "需要命名空间名"
 
-#: cp/parser.cc:21344
+#: cp/parser.cc:21342
 #, fuzzy, gcc-internal-format
 #| msgid "use of namespace %qD as expression"
 msgid "namespace name required"
 msgstr "命名空间%qD被用作表达式"
 
-#: cp/parser.cc:21348
+#: cp/parser.cc:21346
 #, fuzzy, gcc-internal-format
 #| msgid "%<namespace%> definition is not allowed here"
 msgid "a nested namespace definition cannot have attributes"
 msgstr "在这里不允许使用%<namespace%>定义"
 
-#: cp/parser.cc:21351
+#: cp/parser.cc:21349
 #, fuzzy, gcc-internal-format
 #| msgid "Warn when an inlined function cannot be inlined"
 msgid "a nested namespace definition cannot be inline"
 msgstr "当内联函数无法被内联时给出警告"
 
-#: cp/parser.cc:21358
+#: cp/parser.cc:21356
 #, fuzzy, gcc-internal-format
 #| msgid "use of namespace %qD as expression"
 msgid "namespace %qD entered"
 msgstr "命名空间%qD被用作表达式"
 
-#: cp/parser.cc:21413
+#: cp/parser.cc:21411
 #, gcc-internal-format
 msgid "%<namespace%> definition is not allowed here"
 msgstr "在这里不允许使用%<namespace%>定义"
 
-#: 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 "默认化和被删除的函数只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:21603
+#: cp/parser.cc:21601
 #, gcc-internal-format
 msgid "a template-id may not appear in a using-declaration"
 msgstr "模板标识符不允许出现在 using 声明中"
 
-#: 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 "默认化和被删除的函数只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:21631
+#: cp/parser.cc:21629
 #, fuzzy, gcc-internal-format
 msgid "access declarations are deprecated in favour of using-declarations; suggestion: add the %<using%> keyword"
 msgstr "访问声明被不宜用在中 favour 的 using-declarations;建议:加入 %<using%> 关键字"
 
-#: cp/parser.cc:21696
+#: cp/parser.cc:21694
 #, fuzzy, gcc-internal-format
 msgid "opaque-enum-declaration here"
 msgstr "%q+T先前在此处有过声明"
 
-#: cp/parser.cc:21766
+#: cp/parser.cc:21764
 #, fuzzy, gcc-internal-format
 msgid "types may not be defined in alias template declarations"
 msgstr "类型不能定义在异常声明中"
 
-#: 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 "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 cv-qualifier"
 msgid "duplicate %<asm%> qualifier %qT"
 msgstr "重复的 cv 限定"
 
-#: cp/parser.cc:21972
+#: cp/parser.cc:21970
 #, fuzzy, gcc-internal-format
 #| msgid "type qualifiers ignored on function return type"
 msgid "%<asm%> qualifier %qT ignored outside of function body"
 msgstr "忽略函数返回类型的类型限定"
 
-#: cp/parser.cc:22009
+#: cp/parser.cc:22007
 #, fuzzy, gcc-internal-format
 #| msgid "%qT is not a namespace"
 msgid "%qT is not an %<asm%> qualifier"
 msgstr "%qT不是一个命名空间"
 
-#: cp/parser.cc:22025
+#: cp/parser.cc:22023
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not defined outside of function scope"
 msgid "%<asm%> qualifier outside of function body"
 msgstr "%qD在函数作用域外未被定义"
 
-#: cp/parser.cc:22253
+#: cp/parser.cc:22251
 #, fuzzy, gcc-internal-format
 #| msgid "parameter names (without types) in function declaration"
 msgid "empty parentheses were disambiguated as a function declaration"
 msgstr "函数声明中出现形参名却未指定类型"
 
-#: cp/parser.cc:22264
+#: cp/parser.cc:22262
 #, fuzzy, gcc-internal-format
 msgid "remove parentheses to default-initialize a variable"
 msgstr "括起的初始值设定后出现的属性被忽略"
 
-#: 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 "parameter names (without types) in function declaration"
 msgid "parentheses were disambiguated as a function declaration"
 msgstr "函数声明中出现形参名却未指定类型"
 
-#: 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 "function %qD redeclared as variable"
 msgid "add parentheses to declare a variable"
 msgstr "函数%qD重声明为变量"
 
-#: cp/parser.cc:22555
+#: cp/parser.cc:22553
 #, fuzzy, gcc-internal-format
 msgid "a function-definition is not allowed here"
 msgstr "在这里不允许使用%<namespace%>定义"
 
-#: cp/parser.cc:22566
+#: cp/parser.cc:22564
 #, fuzzy, gcc-internal-format
 #| msgid "an asm-specification is not allowed on a function-definition"
 msgid "an %<asm%> specification is not allowed on a function-definition"
 msgstr "函数定义中不允许出现 asm 指定"
 
-#: cp/parser.cc:22570
+#: cp/parser.cc:22568
 #, gcc-internal-format
 msgid "attributes are not allowed on a function-definition"
 msgstr "函数定义中不允许有属性"
 
-#: cp/parser.cc:22621
+#: cp/parser.cc:22619
 #, fuzzy, gcc-internal-format
 msgid "expected constructor, destructor, or type conversion"
 msgstr "预期的建构子、解构式,或类型转换"
 
-#: cp/parser.cc:22742
+#: cp/parser.cc:22740
 #, gcc-internal-format
 msgid "initializer provided for function"
 msgstr "为函数提供了初始值设定"
 
-#: cp/parser.cc:22784
+#: cp/parser.cc:22782
 #, gcc-internal-format
 msgid "attributes after parenthesized initializer ignored"
 msgstr "括起的初始值设定后出现的属性被忽略"
 
-#: cp/parser.cc:22798
+#: cp/parser.cc:22796
 #, fuzzy, gcc-internal-format
 msgid "non-function %qD declared as implicit template"
 msgstr "函数%q+D重声明为内联的"
 
-#: cp/parser.cc:23301
+#: cp/parser.cc:23299
 #, gcc-internal-format
 msgid "array bound is not an integer constant"
 msgstr "数组边界不是一个整数常量"
 
-#: cp/parser.cc:23427
+#: cp/parser.cc:23425
 #, gcc-internal-format
 msgid "cannot define member of dependent typedef %qT"
 msgstr "生成引用类型%qT的成员指针"
 
-#: cp/parser.cc:23431
+#: cp/parser.cc:23429
 #, gcc-internal-format
 msgid "%<%T::%E%> is not a type"
 msgstr "%<%T::%E%>不是一个类型"
@@ -60799,239 +61012,239 @@ msgstr "%<%T::%E%>不是一个类型"
 #. here because we do not have enough
 #. information about its original syntactic
 #. form.
-#: cp/parser.cc:23460
+#: cp/parser.cc:23458
 #, gcc-internal-format
 msgid "invalid declarator"
 msgstr "无效的声明"
 
-#: cp/parser.cc:23468
+#: cp/parser.cc:23466
 #, gcc-internal-format
 msgid "invalid use of constructor as a template"
 msgstr "将构造函数用作模板无效"
 
-#: 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 "使用%<%T::%D%>而不是%<%T::%D%>来以限定名指定构造函数"
 
 #. 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 "需要一个限定的标识符"
 
-#: cp/parser.cc:23610
+#: cp/parser.cc:23608
 #, gcc-internal-format
 msgid "expected declarator"
 msgstr "需要声明"
 
-#: cp/parser.cc:23731
+#: cp/parser.cc:23729
 #, gcc-internal-format
 msgid "%qD is a namespace"
 msgstr "%qD是一个命名空间"
 
-#: cp/parser.cc:23733
+#: cp/parser.cc:23731
 #, fuzzy, gcc-internal-format
 msgid "cannot form pointer to member of non-class %q#T"
 msgstr "生成非类类型%qT的成员指针"
 
-#: cp/parser.cc:23754
+#: cp/parser.cc:23752
 #, fuzzy, gcc-internal-format
 msgid "expected ptr-operator"
 msgstr "需要%<operator%>"
 
-#: cp/parser.cc:23815
+#: cp/parser.cc:23813
 #, gcc-internal-format
 msgid "duplicate cv-qualifier"
 msgstr "重复的 cv 限定"
 
-#: cp/parser.cc:23869
+#: cp/parser.cc:23867
 #, fuzzy, gcc-internal-format
 msgid "multiple ref-qualifiers"
 msgstr "%q+D的类型限定冲突"
 
-#: cp/parser.cc:23906
+#: cp/parser.cc:23904
 #, fuzzy, gcc-internal-format
 #| msgid "%<-mfpxx%> requires %<-mlra%>"
 msgid "%qE requires %<-fgnu-tm%>"
 msgstr "%<-mfpxx%> 需要 %<-mlra%>"
 
-#: cp/parser.cc:23964
+#: cp/parser.cc:23962
 #, fuzzy, gcc-internal-format
 msgid "duplicate virt-specifier"
 msgstr "%C处重复访问限定符"
 
-#: cp/parser.cc:24226
+#: cp/parser.cc:24224
 #, fuzzy, gcc-internal-format
 msgid "missing template arguments after %qT"
 msgstr "%qE不是类型%qT的有效模板实参,因为%qE不是一个变量"
 
-#: cp/parser.cc:24232
+#: cp/parser.cc:24230
 #, fuzzy, gcc-internal-format
 #| msgid "mismatched arguments"
 msgid "%qT not permitted in template argument"
 msgstr "参数不匹配"
 
-#: 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
 #, gcc-internal-format
 msgid "invalid use of %qT"
 msgstr "对%qT的使用非法"
 
-#: cp/parser.cc:24262
+#: cp/parser.cc:24260
 #, gcc-internal-format
 msgid "types may not be defined in template arguments"
 msgstr "不能在模板实参中定义类型"
 
-#: cp/parser.cc:24267
+#: cp/parser.cc:24265
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %<auto%> in template argument"
 msgstr "模板第 %d 个参数无效"
 
-#: cp/parser.cc:24373
+#: cp/parser.cc:24371
 #, gcc-internal-format
 msgid "expected type-specifier"
 msgstr "需要类型限定"
 
-#: cp/parser.cc:24654
+#: cp/parser.cc:24652
 #, gcc-internal-format
 msgid "expected %<,%> or %<...%>"
 msgstr "需要%<,%>或%<...%>"
 
-#: cp/parser.cc:24732
+#: cp/parser.cc:24730
 #, gcc-internal-format
 msgid "types may not be defined in parameter types"
 msgstr "类型不能定义在参数类型中"
 
-#: cp/parser.cc:24931
+#: cp/parser.cc:24929
 #, gcc-internal-format
 msgid "default arguments are only permitted for function parameters"
 msgstr "默认参数只允许出现在函数参数中"
 
-#: cp/parser.cc:24949
+#: cp/parser.cc:24947
 #, fuzzy, gcc-internal-format
 msgid "parameter pack %qD cannot have a default argument"
 msgstr "模板参数包%qD不能有默认参数"
 
-#: cp/parser.cc:24955
+#: cp/parser.cc:24953
 #, gcc-internal-format
 msgid "template parameter pack cannot have a default argument"
 msgstr "模板参数包不能有默认参数"
 
-#: cp/parser.cc:24957
+#: cp/parser.cc:24955
 #, fuzzy, gcc-internal-format
 msgid "parameter pack cannot have a default argument"
 msgstr "模板参数包不能有默认参数"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "扩展初始值设定列表只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:25435
+#: cp/parser.cc:25433
 #, fuzzy, gcc-internal-format
 #| msgid "ISO C++ does not allow designated initializers"
 msgid "ISO C++ does not allow GNU designated initializers"
 msgstr "ISO C++ 不允许指定元素初始值设定"
 
-#: cp/parser.cc:25473
+#: cp/parser.cc:25471
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ does not allow C99 designated initializers"
 msgstr "ISO C++ 不允许指定元素初始值设定"
 
-#: 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 "ISO C++ does not allow designated initializers"
 msgid "%<...%> not allowed in designated initializer list"
 msgstr "ISO C++ 不允许指定元素初始值设定"
 
-#: cp/parser.cc:25563
+#: cp/parser.cc:25561
 #, gcc-internal-format
 msgid "%<.%s%> designator used multiple times in the same initializer list"
 msgstr ""
 
-#: cp/parser.cc:25619 cp/parser.cc:25756
+#: cp/parser.cc:25617 cp/parser.cc:25754
 #, gcc-internal-format
 msgid "expected class-name"
 msgstr "需要类名"
 
-#: cp/parser.cc:25995
+#: cp/parser.cc:25993
 #, gcc-internal-format
 msgid "expected %<;%> after class definition"
 msgstr "类定义后需要%<;%>"
 
-#: cp/parser.cc:25998
+#: cp/parser.cc:25996
 #, gcc-internal-format
 msgid "expected %<;%> after struct definition"
 msgstr "结构定义后需要%<;%>"
 
-#: cp/parser.cc:26001
+#: cp/parser.cc:25999
 #, gcc-internal-format
 msgid "expected %<;%> after union definition"
 msgstr "联合定义后需要%<;%>"
 
-#: cp/parser.cc:26399
+#: cp/parser.cc:26397
 #, gcc-internal-format
 msgid "expected %<{%> or %<:%>"
 msgstr "需要%<{%>或%<:%>"
 
-#: cp/parser.cc:26410
+#: cp/parser.cc:26408
 #, gcc-internal-format
 msgid "cannot specify %<override%> for a class"
 msgstr "不能为类指定 %<override%>"
 
-#: cp/parser.cc:26418
+#: cp/parser.cc:26416
 #, fuzzy, gcc-internal-format
 msgid "global qualification of class name is invalid"
 msgstr "%qD的声明中类名无效"
 
-#: cp/parser.cc:26425
+#: cp/parser.cc:26423
 #, fuzzy, gcc-internal-format
 msgid "qualified name does not name a class"
 msgstr "友元声明没有指定类或函数名"
 
-#: cp/parser.cc:26437
+#: cp/parser.cc:26435
 #, fuzzy, gcc-internal-format
 #| msgid "keyword %<typename%> not allowed outside of templates"
 msgid "keyword %<template%> not allowed in class-head-name"
 msgstr "关键字%<typename%>不能在模板以外使用"
 
-#: cp/parser.cc:26443
+#: cp/parser.cc:26441
 #, gcc-internal-format
 msgid "invalid class name in declaration of %qD"
 msgstr "%qD的声明中类名无效"
 
-#: cp/parser.cc:26497
+#: cp/parser.cc:26495
 #, gcc-internal-format
 msgid "an explicit specialization must be preceded by %<template <>%>"
 msgstr "显式特例化前必须有%<template <>%>"
 
-#: cp/parser.cc:26529
+#: cp/parser.cc:26527
 #, gcc-internal-format
 msgid "function template %qD redeclared as a class template"
 msgstr "函数模板%qD重声明为类模板"
 
-#: cp/parser.cc:26562
+#: cp/parser.cc:26560
 #, fuzzy, gcc-internal-format
 msgid "could not resolve typename type"
 msgstr "缺少用以解析%qE类型的上下文"
 
-#: cp/parser.cc:26626
+#: cp/parser.cc:26624
 #, fuzzy, gcc-internal-format
 #| msgid "previous definition of %q+#T"
 msgid "previous definition of %q#T"
@@ -61040,238 +61253,238 @@ msgstr "%q+#T的前一个定义"
 #. 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 "需要%<class%>"
 
-#: cp/parser.cc:26765
+#: cp/parser.cc:26763
 #, gcc-internal-format
 msgid "ISO C++ forbids typename key in template template parameter; use %<-std=c++17%> or %<-std=gnu++17%>"
 msgstr ""
 
-#: cp/parser.cc:26769
+#: cp/parser.cc:26767
 #, fuzzy, gcc-internal-format
 msgid "expected %<class%> or %<typename%>"
 msgstr "需要%<class%>、%<typename%>或%<template%>"
 
-#: cp/parser.cc:27019
+#: cp/parser.cc:27017
 #, fuzzy, gcc-internal-format
 msgid "in C++03 a class-key must be used when declaring a friend"
 msgstr "声明友元时必须使用 class 关键字"
 
-#: cp/parser.cc:27050
+#: cp/parser.cc:27048
 #, gcc-internal-format
 msgid "friend declaration does not name a class or function"
 msgstr "友元声明没有指定类或函数名"
 
-#: 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 "扩展初始值设定列表只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:27177
+#: cp/parser.cc:27175
 #, fuzzy, gcc-internal-format
 msgid "default member initializer for unnamed bit-field"
 msgstr "为无名形参指定了%qs"
 
-#: cp/parser.cc:27190
+#: cp/parser.cc:27188
 #, gcc-internal-format
 msgid "ISO C++ allows bit-field attributes only before the %<:%> token"
 msgstr ""
 
-#: cp/parser.cc:27352
+#: cp/parser.cc:27350
 #, fuzzy, gcc-internal-format
 #| msgid "bit-field %qD with non-integral type"
 msgid "bit-field %qD has non-integral type %qT"
 msgstr "位段%qD非整型"
 
-#: cp/parser.cc:27380
+#: cp/parser.cc:27378
 #, gcc-internal-format
 msgid "pure-specifier on function-definition"
 msgstr "函数定义上有 pure 指定"
 
-#: cp/parser.cc:27400
+#: cp/parser.cc:27398
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<;%> after class definition"
 msgid "extra %<;%> after in-class function definition"
 msgstr "类定义后需要%<;%>"
 
-#: cp/parser.cc:27447
+#: cp/parser.cc:27445
 #, fuzzy, gcc-internal-format
 msgid "stray %<,%> at end of member declaration"
 msgstr "可变数组成员没有出现在结构的末尾"
 
-#: cp/parser.cc:27461
+#: cp/parser.cc:27459
 #, fuzzy, gcc-internal-format
 msgid "expected %<;%> at end of member declaration"
 msgstr "需要声明"
 
-#: cp/parser.cc:27536
+#: cp/parser.cc:27534
 #, fuzzy, gcc-internal-format
 msgid "invalid pure specifier (only %<= 0%> is allowed)"
 msgstr "指定了无效的 AE 类型(%s)\n"
 
-#: cp/parser.cc:27571
+#: cp/parser.cc:27569
 #, fuzzy, gcc-internal-format
 msgid "a brace-enclosed initializer is not allowed here"
 msgstr "%qT的初始值设定必须在花括号内"
 
-#: cp/parser.cc:27701
+#: cp/parser.cc:27699
 #, fuzzy, gcc-internal-format
 #| msgid "%<virtual%> specified more than once in base-specified"
 msgid "%<virtual%> specified more than once in base-specifier"
 msgstr "在基类限定中指定了多于一次的%<virtual%>"
 
-#: cp/parser.cc:27721
+#: cp/parser.cc:27719
 #, fuzzy, gcc-internal-format
 msgid "more than one access specifier in base-specifier"
 msgstr "超过一个访问说明符在中 base-specified"
 
-#: cp/parser.cc:27745
+#: cp/parser.cc:27743
 #, gcc-internal-format
 msgid "keyword %<typename%> not allowed outside of templates"
 msgstr "关键字%<typename%>不能在模板以外使用"
 
-#: cp/parser.cc:27748
+#: cp/parser.cc:27746
 #, gcc-internal-format
 msgid "keyword %<typename%> not allowed in this context (the base class is implicitly a type)"
 msgstr "关键字%<typename%>不允许用在此上下文中(基类隐式地是一个类型)"
 
-#: cp/parser.cc:27948 cp/parser.cc:28042
+#: cp/parser.cc:27946 cp/parser.cc:28040
 #, gcc-internal-format
 msgid "types may not be defined in an exception-specification"
 msgstr "类型不能定义在异常规范中"
 
-#: cp/parser.cc:28050
+#: cp/parser.cc:28048
 #, fuzzy, gcc-internal-format
 #| msgid "due to different exception specifications"
 msgid "ISO C++17 does not allow dynamic exception specifications"
 msgstr "因为异常规范不一致"
 
-#: cp/parser.cc:28056
+#: cp/parser.cc:28054
 #, fuzzy, gcc-internal-format
 msgid "dynamic exception specifications are deprecated in C++11"
 msgstr "动态异常规格被不宜用在中 C++0x; 使用 %<noexcept%> 作为替代"
 
-#: cp/parser.cc:28100
+#: cp/parser.cc:28098
 #, fuzzy, gcc-internal-format
 #| msgid "invalid use of %<auto%> in conversion operator"
 msgid "invalid use of %<auto%> in exception-specification"
 msgstr "在转换运算符中使用%<auto%>无效"
 
-#: 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 "C++0x %<constexpr%>只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/parser.cc:28253
+#: cp/parser.cc:28251
 #, gcc-internal-format
 msgid "types may not be defined in exception-declarations"
 msgstr "类型不能定义在异常声明中"
 
-#: cp/parser.cc:28802
+#: cp/parser.cc:28800
 #, fuzzy, gcc-internal-format
 #| msgid "expected function"
 msgid "expected OpenMP directive name"
 msgstr "需要函数"
 
-#: 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 "需要类型%qT,但实参的类型为%qT"
 
-#: cp/parser.cc:28856
+#: cp/parser.cc:28854
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<none%> or %<shared%>"
 msgid "expected %<directive%> or %<sequence%>"
 msgstr "需要%<none%>或%<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属性与 %s 属性冲突"
 
-#: cp/parser.cc:28969
+#: cp/parser.cc:28967
 #, fuzzy, gcc-internal-format
 msgid "expected an identifier for the attribute name"
 msgstr "需要标识符"
 
-#: cp/parser.cc:29020
+#: cp/parser.cc:29018
 #, fuzzy, gcc-internal-format
 msgid "%<omp::%E%> attribute requires argument"
 msgstr "%qE属性需要带有名实参的原型"
 
 #. 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 "不能为局部变量指定节属性"
 
-#: cp/parser.cc:29165
+#: cp/parser.cc:29163
 #, fuzzy, gcc-internal-format
 #| msgid "expected parameter pack before %<...%>"
 msgid "expected attribute before %<...%>"
 msgstr "%<...%>前需要形参包"
 
-#: 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 "C++0x auto 只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "调度块大小表达式必须为整型"
 
-#: 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 "requested position is not an integer constant"
 msgid "result type is not a plain type-constraint"
 msgstr "要求的位置不是一个整数常量"
 
-#: cp/parser.cc:30298
+#: cp/parser.cc:30296
 #, fuzzy, gcc-internal-format
 msgid "return-type-requirement is not a type-constraint"
 msgstr "要求的位置不是一个整数常量"
 
-#: cp/parser.cc:30793
+#: cp/parser.cc:30791
 #, gcc-internal-format
 msgid "specializing member %<%T::%E%> requires %<template<>%> syntax"
 msgstr "特例化成员%<%T::%E%>需要%<template<>%>语法"
 
-#: cp/parser.cc:30798
+#: cp/parser.cc:30796
 #, gcc-internal-format
 msgid "invalid declaration of %<%T::%E%>"
 msgstr "%<%T::%E%>声明无效"
 
-#: cp/parser.cc:30802
+#: cp/parser.cc:30800
 #, gcc-internal-format
 msgid "too few template-parameter-lists"
 msgstr "模板参数表太少"
@@ -61280,582 +61493,582 @@ msgstr "模板参数表太少"
 #. something like:
 #.
 #. template <class T> template <class U> void S::f();
-#: cp/parser.cc:30809
+#: cp/parser.cc:30807
 #, gcc-internal-format
 msgid "too many template-parameter-lists"
 msgstr "模板参数表太多"
 
-#: cp/parser.cc:31207
+#: cp/parser.cc:31205
 #, gcc-internal-format
 msgid "named return values are no longer supported"
 msgstr "有名返回值不再被支持"
 
-#: 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
 #, fuzzy, 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 "实字运算符模板 %qD 有无效的参数清单。 预期 non-type 模板参数包装 <char...>"
 
-#: cp/parser.cc:31393
+#: cp/parser.cc:31391
 #, fuzzy, gcc-internal-format
 msgid "literal operator template %qD has invalid parameter list; expected non-type template parameter pack %<<char...>%>"
 msgstr "实字运算符模板 %qD 有无效的参数清单。 预期 non-type 模板参数包装 <char...>"
 
-#: 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 template for %qD found"
 msgid "no matching concept for template-introduction"
 msgstr "没有找到与%qD匹配的模板"
 
-#: cp/parser.cc:31526
+#: cp/parser.cc:31531
 #, gcc-internal-format
 msgid "invalid declaration of member template in local class"
 msgstr "局部类中对成员模板的声明无效"
 
-#: cp/parser.cc:31535
+#: cp/parser.cc:31540
 #, gcc-internal-format
 msgid "template with C linkage"
 msgstr "模板有 C 链接"
 
-#: cp/parser.cc:31555
+#: cp/parser.cc:31560
 #, fuzzy, gcc-internal-format
 msgid "invalid explicit specialization"
 msgstr "显式特例化前必须有%<template <>%>"
 
-#: cp/parser.cc:31667
+#: cp/parser.cc:31672
 #, gcc-internal-format
 msgid "template declaration of %<typedef%>"
 msgstr "%<typedef%>的模板声明"
 
-#: cp/parser.cc:31718
+#: cp/parser.cc:31723
 #, fuzzy, gcc-internal-format
 #| msgid "declaration does not declare anything"
 msgid "a class template declaration must not declare anything else"
 msgstr "没有声明任何东西"
 
-#: cp/parser.cc:31770
+#: cp/parser.cc:31775
 #, gcc-internal-format
 msgid "explicit template specialization cannot have a storage class"
 msgstr "显式特例化不能有存储类型"
 
-#: cp/parser.cc:32072
+#: cp/parser.cc:32077
 #, gcc-internal-format
 msgid "%<>>%> should be %<> >%> within a nested template argument list"
 msgstr "在嵌套模板实参列表中应当使用%<> >%>而非%<>>%>"
 
-#: cp/parser.cc:32085
+#: cp/parser.cc:32090
 #, gcc-internal-format
 msgid "spurious %<>>%>, use %<>%> to terminate a template argument list"
 msgstr "可疑的%<>>%>,使用%<>%>来结束模板实参列表"
 
-#: cp/parser.cc:32393
+#: cp/parser.cc:32399
 #, gcc-internal-format
 msgid "%<sizeof...%> argument must be surrounded by parentheses"
 msgstr ""
 
-#: cp/parser.cc:32548
+#: cp/parser.cc:32554
 #, gcc-internal-format
 msgid "invalid use of %qD in linkage specification"
 msgstr "指定链接时使用%qD无效"
 
-#: cp/parser.cc:32563
+#: cp/parser.cc:32569
 #, gcc-internal-format
 msgid "%<__thread%> before %qD"
 msgstr "%<__thread%>出现在%qD之前"
 
-#: cp/parser.cc:32698
+#: cp/parser.cc:32704
 #, gcc-internal-format
 msgid "ISO C++ 1998 does not support %<long long%>"
 msgstr "ISO C++ 1998 不支持%<long long%>"
 
-#: cp/parser.cc:32709
+#: cp/parser.cc:32715
 #, fuzzy, gcc-internal-format
 msgid "both %<__thread%> and %<thread_local%> specified"
 msgstr "线程局部的 COMMON 数据没有实现"
 
-#: cp/parser.cc:32714
+#: cp/parser.cc:32720
 #, fuzzy, gcc-internal-format
 msgid "duplicate %qD"
 msgstr "重复的标号%qD"
 
-#: cp/parser.cc:32740
+#: cp/parser.cc:32746
 #, gcc-internal-format
 msgid "duplicate %qs"
 msgstr "重复的%qs"
 
-#: cp/parser.cc:32792
+#: cp/parser.cc:32798
 #, gcc-internal-format
 msgid "expected %<new%>"
 msgstr "需要%<new%>"
 
-#: cp/parser.cc:32795
+#: cp/parser.cc:32801
 #, gcc-internal-format
 msgid "expected %<delete%>"
 msgstr "需要%<delete%>"
 
-#: cp/parser.cc:32798
+#: cp/parser.cc:32804
 #, gcc-internal-format
 msgid "expected %<return%>"
 msgstr "需要%<return%>"
 
-#: cp/parser.cc:32804
+#: cp/parser.cc:32810
 #, gcc-internal-format
 msgid "expected %<extern%>"
 msgstr "需要%<extern%>"
 
-#: cp/parser.cc:32807
+#: cp/parser.cc:32813
 #, gcc-internal-format
 msgid "expected %<static_assert%>"
 msgstr "需要%<static_assert%>"
 
-#: cp/parser.cc:32810
+#: cp/parser.cc:32816
 #, gcc-internal-format
 msgid "expected %<decltype%>"
 msgstr "需要%<decltype%>"
 
-#: cp/parser.cc:32813
+#: cp/parser.cc:32819
 #, gcc-internal-format
 msgid "expected %<operator%>"
 msgstr "需要%<operator%>"
 
-#: cp/parser.cc:32816
+#: cp/parser.cc:32822
 #, gcc-internal-format
 msgid "expected %<class%>"
 msgstr "需要%<class%>"
 
-#: cp/parser.cc:32819
+#: cp/parser.cc:32825
 #, gcc-internal-format
 msgid "expected %<template%>"
 msgstr "需要%<template%>"
 
-#: cp/parser.cc:32822
+#: cp/parser.cc:32828
 #, gcc-internal-format
 msgid "expected %<namespace%>"
 msgstr "需要%<namespace%>"
 
-#: cp/parser.cc:32825
+#: cp/parser.cc:32831
 #, gcc-internal-format
 msgid "expected %<using%>"
 msgstr "需要%<using%>"
 
-#: cp/parser.cc:32828
+#: cp/parser.cc:32834
 #, gcc-internal-format
 msgid "expected %<asm%>"
 msgstr "需要%<asm%>"
 
-#: cp/parser.cc:32831
+#: cp/parser.cc:32837
 #, gcc-internal-format
 msgid "expected %<try%>"
 msgstr "需要%<try%>"
 
-#: cp/parser.cc:32834
+#: cp/parser.cc:32840
 #, gcc-internal-format
 msgid "expected %<catch%>"
 msgstr "需要%<catch%>"
 
-#: cp/parser.cc:32837
+#: cp/parser.cc:32843
 #, gcc-internal-format
 msgid "expected %<throw%>"
 msgstr "需要%<throw%>"
 
-#: cp/parser.cc:32840
+#: cp/parser.cc:32846
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<catch%>"
 msgid "expected %<auto%>"
 msgstr "需要%<catch%>"
 
-#: cp/parser.cc:32843
+#: cp/parser.cc:32849
 #, gcc-internal-format
 msgid "expected %<__label__%>"
 msgstr "需要%<__label__%>"
 
-#: cp/parser.cc:32846
+#: cp/parser.cc:32852
 #, gcc-internal-format
 msgid "expected %<@try%>"
 msgstr "需要%<@try%>"
 
-#: cp/parser.cc:32849
+#: cp/parser.cc:32855
 #, gcc-internal-format
 msgid "expected %<@synchronized%>"
 msgstr "需要%<@synchronized%>"
 
-#: cp/parser.cc:32852
+#: cp/parser.cc:32858
 #, gcc-internal-format
 msgid "expected %<@throw%>"
 msgstr "需要%<@throw%>"
 
-#: cp/parser.cc:32855
+#: cp/parser.cc:32861
 #, fuzzy, gcc-internal-format
 msgid "expected %<__transaction_atomic%>"
 msgstr "对 rpmtxn 数据库异动作业进行除错"
 
-#: cp/parser.cc:32858
+#: cp/parser.cc:32864
 #, fuzzy, gcc-internal-format
 msgid "expected %<__transaction_relaxed%>"
 msgstr "于 %s 等待异动作业锁定\n"
 
-#: cp/parser.cc:32861
+#: cp/parser.cc:32867
 #, fuzzy, gcc-internal-format
 #| msgid "expected %<@end%>"
 msgid "expected %<co_yield%>"
 msgstr "需要 %<@end%>"
 
-#: cp/parser.cc:32893
+#: cp/parser.cc:32899
 #, gcc-internal-format
 msgid "expected %<::%>"
 msgstr "需要%<::%>"
 
-#: cp/parser.cc:32905
+#: cp/parser.cc:32911
 #, gcc-internal-format
 msgid "expected %<...%>"
 msgstr "需要%<...%>"
 
-#: cp/parser.cc:32908
+#: cp/parser.cc:32914
 #, gcc-internal-format
 msgid "expected %<*%>"
 msgstr "需要%<*%>"
 
-#: cp/parser.cc:32911
+#: cp/parser.cc:32917
 #, gcc-internal-format
 msgid "expected %<~%>"
 msgstr "需要%<~%>"
 
-#: cp/parser.cc:32917
+#: cp/parser.cc:32923
 #, gcc-internal-format
 msgid "expected %<:%> or %<::%>"
 msgstr "需要%<:%>或%<::%>"
 
-#: cp/parser.cc:32944
+#: cp/parser.cc:32950
 #, gcc-internal-format
 msgid "expected %<class%>, %<typename%>, or %<template%>"
 msgstr "需要%<class%>、%<typename%>或%<template%>"
 
-#: 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
 #, gcc-internal-format
 msgid "%qs tag used in naming %q#T"
 msgstr "使用了%qs标记,在命名%q#T时"
 
-#: cp/parser.cc:33432
+#: cp/parser.cc:33438
 #, fuzzy, gcc-internal-format
 msgid "%q#T was previously declared here"
 msgstr "以前在此声明过"
 
-#: cp/parser.cc:33552
+#: cp/parser.cc:33558
 #, fuzzy, gcc-internal-format
 #| msgid "cannot declare reference to %q#T"
 msgid "redundant class-key %qs in reference to %q#T"
 msgstr "无法声明对%q#T的引用"
 
-#: cp/parser.cc:33692 cp/parser.cc:33726
+#: cp/parser.cc:33698 cp/parser.cc:33732
 #, fuzzy, gcc-internal-format
 #| msgid "%qT declared with greater visibility than its base %qT"
 msgid "%qT declared with a mismatched class-key %qs"
 msgstr "%qT被声明为比其基类%qT有更高的可见性"
 
-#: 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 "需要%<class%>"
 
-#: cp/parser.cc:33707
+#: cp/parser.cc:33713
 #, fuzzy, gcc-internal-format
 #| msgid "label %qD defined here"
 msgid "%qT defined as %qs here"
 msgstr "标号%qD在此定义"
 
-#: cp/parser.cc:33708
+#: cp/parser.cc:33714
 #, fuzzy, gcc-internal-format
 msgid "%qT first declared as %qs here"
 msgstr "在此声明"
 
-#: cp/parser.cc:33790
+#: cp/parser.cc:33796
 #, gcc-internal-format
 msgid "%qD redeclared with different access"
 msgstr "%qD重声明时有不同的可访问性"
 
-#: cp/parser.cc:33811
+#: cp/parser.cc:33817
 #, fuzzy, gcc-internal-format
 msgid "in C++98 %<template%> (as a disambiguator) is only allowed within templates"
 msgstr "用作消歧义的%<template%>只能用于模板内"
 
-#: cp/parser.cc:34060
+#: cp/parser.cc:34066
 #, gcc-internal-format
 msgid "file ends in default argument"
 msgstr "文件在默认参数处结束"
 
-#: cp/parser.cc:34301 cp/parser.cc:35609 cp/parser.cc:35798
+#: cp/parser.cc:34307 cp/parser.cc:35615 cp/parser.cc:35804
 #, gcc-internal-format
 msgid "misplaced %<@%D%> Objective-C++ construct"
 msgstr "位置错误的%<@%D%>Objective-C++ 构造"
 
-#: cp/parser.cc:34372
+#: cp/parser.cc:34378
 #, fuzzy, gcc-internal-format
 msgid "objective-c++ message receiver expected"
 msgstr "需要指定声明"
 
-#: cp/parser.cc:34442
+#: cp/parser.cc:34448
 #, fuzzy, gcc-internal-format
 msgid "objective-c++ message argument(s) are expected"
 msgstr "objective-c++ 消息参数被预期"
 
-#: cp/parser.cc:34473
+#: cp/parser.cc:34479
 #, gcc-internal-format
 msgid "%<@encode%> must specify a type as an argument"
 msgstr "%<@encode%>必须指定一个类型作为实参"
 
-#: cp/parser.cc:34877
+#: cp/parser.cc:34883
 #, gcc-internal-format
 msgid "invalid Objective-C++ selector name"
 msgstr "无效的 Objective-C++ 选择子名"
 
-#: 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 "%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 "不能为局部变量指定节属性"
 
-#: cp/parser.cc:35073
+#: cp/parser.cc:35079
 #, fuzzy, gcc-internal-format
 msgid "stray %qs between Objective-C++ methods"
 msgstr "零星的 %qs 介于 Objective-C++ 方法"
 
-#: 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 "不一致的实例变量指定"
 
-#: cp/parser.cc:35401
+#: cp/parser.cc:35407
 #, gcc-internal-format
 msgid "identifier expected after %<@protocol%>"
 msgstr "%<@protocol%>需要标识符"
 
-#: cp/parser.cc:35574
+#: cp/parser.cc:35580
 #, fuzzy, gcc-internal-format
 msgid "attributes may not be specified before the %<@%D%> Objective-C++ keyword"
 msgstr "属性可能无法被指定的之前 %<@%D%>Objective-C++ 关键字"
 
-#: cp/parser.cc:35581
+#: cp/parser.cc:35587
 #, fuzzy, gcc-internal-format
 msgid "prefix attributes are ignored before %<@%D%>"
 msgstr "%qE属性为%qE所忽略"
 
-#: 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 "不能设置只读属性"
 
-#: cp/parser.cc:36037
+#: cp/parser.cc:36043
 #, fuzzy, gcc-internal-format
 msgid "unknown property attribute %qE"
 msgstr "不能设置只读属性"
 
-#: cp/parser.cc:37152
+#: cp/parser.cc:37158
 #, fuzzy, gcc-internal-format
 #| msgid "expected integer expression"
 msgid "expected integer expression list"
 msgstr "需要整数表达式"
 
-#: cp/parser.cc:37169
+#: cp/parser.cc:37175
 #, fuzzy, gcc-internal-format
 msgid "%<wait%> expression must be integral"
 msgstr "num_threads 表达式必须是整型的"
 
-#: cp/parser.cc:38258
+#: cp/parser.cc:38264
 #, gcc-internal-format
 msgid "invalid reduction-identifier"
 msgstr "无效还原标识符"
 
-#: cp/parser.cc:39086
+#: cp/parser.cc:39092
 #, fuzzy, gcc-internal-format
 #| msgid "types may not be defined in parameter types"
 msgid "types may not be defined in iterator type"
 msgstr "类型不能定义在参数类型中"
 
-#: cp/parser.cc:41854
+#: cp/parser.cc:41860
 #, gcc-internal-format
 msgid "parenthesized initialization is not allowed in OpenMP %<for%> loop"
 msgstr "括起的初始化不允许使用在 OpenMP %<for%>循环中"
 
-#: 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 "%<void%> as only parameter may not be qualified"
 msgid "%<ordered%> clause with parameter on range-based %<for%> loop"
 msgstr "%<void%>作为仅有的参数时不能被限定"
 
-#: cp/parser.cc:42604 cp/pt.cc:18137
+#: cp/parser.cc:42610 cp/pt.cc:18182
 #, gcc-internal-format
 msgid "iteration variable %qD should not be reduction"
 msgstr "迭代变量%qD不应当是 reduction"
 
-#: cp/parser.cc:42697
+#: cp/parser.cc:42703
 #, fuzzy, gcc-internal-format
 msgid "not enough for loops to collapse"
 msgstr "%L处折叠的 !$OMP DO 没有足够的 DO 循环"
 
-#: cp/parser.cc:45039
+#: cp/parser.cc:45045
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp declare %s%> followed by %<#pragma omp declare %s%>"
 msgstr "%<#pragma GCC pop_options%>缺少相应的%<#pragma GCC push_options%>"
 
-#: 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 "无效的初始值设定"
 
-#: cp/parser.cc:46093
+#: cp/parser.cc:46099
 #, fuzzy, gcc-internal-format
 msgid "expected id-expression (arguments)"
 msgstr "? 预期于运算式中"
 
-#: 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 "不能在返回类型中定义新类型"
 
-#: cp/parser.cc:46228 cp/semantics.cc:6048
+#: cp/parser.cc:46234 cp/semantics.cc:6039
 #, gcc-internal-format
 msgid "predeclared arithmetic type %qT in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.cc:46232 cp/semantics.cc:6056
+#: cp/parser.cc:46238 cp/semantics.cc:6047
 #, gcc-internal-format
 msgid "function or array type %qT in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: cp/parser.cc:46235 cp/pt.cc:14126 cp/semantics.cc:6062
+#: cp/parser.cc:46241 cp/pt.cc:14147 cp/semantics.cc:6053
 #, gcc-internal-format
 msgid "reference type %qT in %<#pragma omp declare reduction%>"
 msgstr ""
 
-#: 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 "上一个声明"
 
-#: cp/parser.cc:46965
+#: cp/parser.cc:46971
 #, gcc-internal-format
 msgid "%<#pragma acc routine%> names a set of overloads"
 msgstr ""
 
-#: 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 不允许用在函数中"
 
 #. cancel-and-throw is unimplemented.
-#: cp/parser.cc:47333
+#: cp/parser.cc:47339
 #, gcc-internal-format
 msgid "%<atomic_cancel%>"
 msgstr ""
 
-#: 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 "%<__transaction_relaxed%>而无需 transactional 内存支持已启用"
 
-#: 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 "%<__transaction_atomic%>而无需 transactional 内存支持已启用"
 
-#: cp/parser.cc:47528
+#: cp/parser.cc:47534
 #, fuzzy, gcc-internal-format
 msgid "outer %<__transaction_cancel%> not within outer %<__transaction_atomic%>"
 msgstr "外 %<__transaction_cancel%>无法在之内外 %<__transaction_atomic%>"
 
-#: cp/parser.cc:47531
+#: cp/parser.cc:47537
 #, fuzzy, gcc-internal-format
 msgid "  or a %<transaction_may_cancel_outer%> function"
 msgstr "  或 %<transaction_may_cancel_outer%> 函数"
 
-#: cp/parser.cc:47582
+#: cp/parser.cc:47588
 #, fuzzy, gcc-internal-format
 #| msgid "malformed #pragma GCC coprocessor"
 msgid "malformed %<#pragma GCC pch_preprocess%>"
 msgstr "#pragma GCC coprocessor 格式错误"
 
-#: cp/parser.cc:47879
+#: cp/parser.cc:47885
 #, fuzzy, gcc-internal-format
 #| msgid "%<#pragma omp barrier%> may only be used in compound statements"
 msgid "%<#pragma omp requires%> may only be used at file or namespace scope"
 msgstr "%<#pragma omp barrier%>只能用在复合语句中"
 
-#: cp/parser.cc:47930
+#: cp/parser.cc:47936
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma GCC ivdep%> must be inside a function"
 msgstr "#pragma GCC memregs 必须出现在所有函数声明之前"
 
-#: cp/parser.cc:47962
+#: cp/parser.cc:47968
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma GCC unroll%> must be inside a function"
 msgstr "#pragma GCC memregs 必须出现在所有函数声明之前"
 
-#: cp/parser.cc:48042
+#: cp/parser.cc:48048
 #, fuzzy, gcc-internal-format
 #| msgid "inter-module optimizations not implemented for C++"
 msgid "multi-source compilation not implemented for C++"
 msgstr "模块间优化未为 C++ 实现"
 
-#: cp/parser.cc:48081
+#: cp/parser.cc:48087
 #, fuzzy, gcc-internal-format
 #| msgid "standard conversions are not allowed in this context"
 msgid "placeholder type not allowed in this context"
 msgstr "此上下文中不允许标准转换"
 
-#: cp/parser.cc:48285
+#: cp/parser.cc:48292
 #, fuzzy, gcc-internal-format
 msgid "implicit templates may not be %<virtual%>"
 msgstr "模板不能是%<virtual%>的"
 
-#: cp/parser.cc:48341
+#: cp/parser.cc:48348
 #, gcc-internal-format
 msgid "%<extern \"C\"%> linkage started here"
 msgstr ""
@@ -61944,7 +62157,7 @@ msgstr "友元模板特例化%qD中不允许出现默认参数"
 msgid "specialization of %qD after instantiation"
 msgstr "%qD的特例化在实例化之后"
 
-#: 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"
@@ -61959,118 +62172,118 @@ msgstr "%qD不是一个函数模板"
 msgid "%qD is not a variable template"
 msgstr "%qD不是一个模板"
 
-#: cp/pt.cc:2481
+#: cp/pt.cc:2483
 #, gcc-internal-format
 msgid "template-id %qD for %q+D does not match any template declaration"
 msgstr "%2$q+D的模板标识符%1$qD不匹配任何模板声明"
 
-#: cp/pt.cc:2485
+#: cp/pt.cc:2487
 #, gcc-internal-format
 msgid "saw %d %<template<>%>, need %d for specializing a member function template"
 msgstr "发现 %d 个%<template<>%>,需要 %d 来特例化一个成员函数模板"
 
-#: cp/pt.cc:2495
+#: cp/pt.cc:2497
 #, gcc-internal-format
 msgid "ambiguous template specialization %qD for %q+D"
 msgstr "有歧义的模板特例化%qD(为%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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/pt.cc:2712
+#: cp/pt.cc:2714
 #, fuzzy, gcc-internal-format
 msgid "too many template headers for %qD (should be %d)"
 msgstr "模板参数数目不对(不应是 %d 个而应是 %d 个)"
 
-#: 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 after first use"
 msgid "explicit specialization of %qD outside its namespace must use a nested-name-specifier"
 msgstr "在初次使用后显式特例化%qD"
 
 #. 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 in namespace %qD (which does not enclose namespace %qD)"
 msgid "explicit instantiation of %qD outside its namespace must use a nested-name-specifier"
 msgstr "%qD的显式实例化出现在命名空间%qD中,而后者并不包含命名空间%qD"
 
-#: cp/pt.cc:2783
+#: cp/pt.cc:2785
 #, fuzzy, gcc-internal-format
 #| msgid "explicit specialization of %qD after first use"
 msgid "explicit specialization %q#D may be missing attributes"
 msgstr "在初次使用后显式特例化%qD"
 
-#: cp/pt.cc:2787
+#: cp/pt.cc:2789
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "missing primary template attributes %s"
 msgstr "以前在此声明过"
 
-#: cp/pt.cc:2788
+#: cp/pt.cc:2790
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "missing primary template attribute %s"
 msgstr "以前在此声明过"
 
-#: cp/pt.cc:2878 cp/pt.cc:2938
+#: cp/pt.cc:2880 cp/pt.cc:2940
 #, fuzzy, gcc-internal-format
 #| msgid "template-id %qD in declaration of primary template"
 msgid "template-id %qE in declaration of primary template"
 msgstr "模板标识符%qD出现在基本模板的声明中"
 
-#: cp/pt.cc:2891
+#: cp/pt.cc:2893
 #, gcc-internal-format
 msgid "template parameter list used in explicit instantiation"
 msgstr "显式初始化中出现了模板参数列表"
 
-#: cp/pt.cc:2897
+#: cp/pt.cc:2899
 #, gcc-internal-format
 msgid "definition provided for explicit instantiation"
 msgstr "为显式实例化提供的定义"
 
-#: cp/pt.cc:2905
+#: cp/pt.cc:2907
 #, gcc-internal-format
 msgid "too many template parameter lists in declaration of %qD"
 msgstr "%qD声明时模板参数表太多"
 
-#: cp/pt.cc:2908
+#: cp/pt.cc:2910
 #, gcc-internal-format
 msgid "too few template parameter lists in declaration of %qD"
 msgstr "%qD声明时模板参数表太少"
 
-#: cp/pt.cc:2910
+#: cp/pt.cc:2912
 #, gcc-internal-format
 msgid "explicit specialization of %qD must be introduced by %<template <>%>"
 msgstr "%qD的显式特例化必须由%<template <>%>引入"
 
-#: cp/pt.cc:2916
+#: cp/pt.cc:2918
 #, fuzzy, gcc-internal-format
 #| msgid "explicit specialization of non-template %qT"
 msgid "explicit specialization declared %<concept%>"
 msgstr "显式特例化非模板%qT"
 
-#: cp/pt.cc:2949
+#: cp/pt.cc:2951
 #, fuzzy, gcc-internal-format
 msgid "non-type partial specialization %qE is not allowed"
 msgstr "函数模板部分特例化%qD是不允许的"
 
-#: cp/pt.cc:2953
+#: cp/pt.cc:2955
 #, fuzzy, gcc-internal-format
 msgid "non-class, non-variable partial specialization %qE is not allowed"
 msgstr "函数模板部分特例化%qD是不允许的"
 
-#: cp/pt.cc:2985
+#: cp/pt.cc:2987
 #, gcc-internal-format
 msgid "default argument specified in explicit specialization"
 msgstr "显式特例化时指定了默认参数"
 
-#: cp/pt.cc:3028
+#: cp/pt.cc:3030
 #, gcc-internal-format
 msgid "%qD is not a template function"
 msgstr "%qD不是一个模板函数"
@@ -62083,163 +62296,163 @@ msgstr "%qD不是一个模板函数"
 #. program is ill-formed.
 #.
 #. Similar language is found in [temp.explicit].
-#: cp/pt.cc:3090
+#: cp/pt.cc:3092
 #, gcc-internal-format
 msgid "specialization of implicitly-declared special member function"
 msgstr "特例化了隐式声明的特殊成员函数"
 
-#: cp/pt.cc:3106
+#: cp/pt.cc:3108
 #, gcc-internal-format
 msgid "no member function %qD declared in %qT"
 msgstr "成员函数%qD未在%qT中声明"
 
-#: cp/pt.cc:3137
+#: cp/pt.cc:3139
 #, fuzzy, gcc-internal-format
 msgid "friend declaration %qD is not visible to explicit specialization"
 msgstr "友元%q#D的重声明不能有默认模板参数"
 
-#: cp/pt.cc:3140
+#: cp/pt.cc:3142
 #, fuzzy, gcc-internal-format
 msgid "friend declaration here"
 msgstr "%q+T先前在此处有过声明"
 
-#: cp/pt.cc:3249
+#: cp/pt.cc:3251
 #, fuzzy, gcc-internal-format
 #| msgid "explicit specialization of non-template %qT"
 msgid "explicit specialization of function concept %qD"
 msgstr "显式特例化非模板%qT"
 
-#: cp/pt.cc:3847
+#: cp/pt.cc:3849
 #, fuzzy, gcc-internal-format
 #| msgid "Argument of ACOS at %L must be between -1 and 1"
 msgid "argument to %<__integer_pack%> must be between 0 and %d"
 msgstr "%L处 ACOS 的参数必须在 -1 和 1 之间"
 
-#: cp/pt.cc:4194
+#: cp/pt.cc:4196
 #, fuzzy, gcc-internal-format
 #| msgid "base initializer expansion %<%T%> contains no parameter packs"
 msgid "base initializer expansion %qT contains no parameter packs"
 msgstr "基类初始值设定展开%<%T%>不包括参数包"
 
-#: cp/pt.cc:4262
+#: cp/pt.cc:4264
 #, fuzzy, gcc-internal-format
 #| msgid "expansion pattern %<%T%> contains no argument packs"
 msgid "expansion pattern %qT contains no parameter packs"
 msgstr "展开样式%<%T%>不包括参数包"
 
-#: cp/pt.cc:4264
+#: cp/pt.cc:4266
 #, fuzzy, gcc-internal-format
 #| msgid "expansion pattern %<%E%> contains no argument packs"
 msgid "expansion pattern %qE contains no parameter packs"
 msgstr "展开样式%<%E%>不包括参数包"
 
-#: cp/pt.cc:4346
+#: cp/pt.cc:4348
 #, gcc-internal-format
 msgid "parameter packs not expanded with %<...%>:"
 msgstr "参数包未能在%<...%>中被展开:"
 
-#: 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
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "          %s"
 msgid "        %s"
 msgstr "          %s"
 
-#: cp/pt.cc:4491
+#: cp/pt.cc:4493
 #, fuzzy, gcc-internal-format
 #| msgid "declaration of %q+D shadows a parameter"
 msgid "declaration of template parameter %q+D shadows template parameter"
 msgstr "%q+D的声明隐藏了一个形参"
 
-#: cp/pt.cc:4494
+#: cp/pt.cc:4496
 #, fuzzy, gcc-internal-format
 #| msgid "declaration of %q+D shadows a parameter"
 msgid "declaration of %q+#D shadows template parameter"
 msgstr "%q+D的声明隐藏了一个形参"
 
-#: cp/pt.cc:4496
+#: cp/pt.cc:4498
 #, fuzzy, gcc-internal-format
 #| msgid "template parameter type %qT declared %<friend%>"
 msgid "template parameter %qD declared here"
 msgstr "模板形参类型%qT声明为%<friend%>"
 
-#: cp/pt.cc:5104
+#: cp/pt.cc:5106
 #, fuzzy, gcc-internal-format
 msgid "specialization of variable concept %q#D"
 msgstr "有歧义的模板特例化%qD(为%q+D)"
 
-#: cp/pt.cc:5163
+#: cp/pt.cc:5165
 #, fuzzy, gcc-internal-format
 msgid "template parameters not deducible in partial specialization:"
 msgstr "部分特例化中未用到模板参数:"
 
-#: 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 "部分特例化%qT并未特例化任何模板参数"
 
-#: 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 "部分特例化%qT并未特例化任何模板参数"
 
-#: 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 "以前在此声明过"
 
-#: cp/pt.cc:5202
+#: cp/pt.cc:5204
 #, gcc-internal-format
 msgid "partial specialization is not more specialized than the primary template because it replaces multiple parameters with a pack expansion"
 msgstr ""
 
-#: cp/pt.cc:5212
+#: cp/pt.cc:5214
 #, fuzzy, gcc-internal-format
 #| msgid "too many arguments to function %qE"
 msgid "too many arguments for partial specialization %qT"
 msgstr "提供给函数%qE的实参太多"
 
-#: cp/pt.cc:5226
+#: cp/pt.cc:5228
 #, fuzzy, gcc-internal-format
 msgid "partial specialization %qD is not more specialized than"
 msgstr "部分特例化%qT并未特例化任何模板参数"
 
-#: cp/pt.cc:5228
+#: cp/pt.cc:5230
 #, fuzzy, gcc-internal-format
 msgid "primary template %qD"
 msgstr "以前在此声明过"
 
-#: cp/pt.cc:5270
+#: cp/pt.cc:5272
 #, gcc-internal-format
 msgid "parameter pack argument %qE must be at the end of the template argument list"
 msgstr "参数包实参%qE必须出现在模板实参表末尾"
 
-#: cp/pt.cc:5273
+#: cp/pt.cc:5275
 #, gcc-internal-format
 msgid "parameter pack argument %qT must be at the end of the template argument list"
 msgstr "参数包实参%qT必须出现在模板实参表末尾"
 
-#: cp/pt.cc:5335
+#: cp/pt.cc:5337
 #, 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] "模板实参%2$qE的类型%1$qT取决于模板参数"
 
-#: cp/pt.cc:5394
+#: cp/pt.cc:5396
 #, fuzzy, gcc-internal-format
 msgid "declaration of %qD ambiguates earlier template instantiation for %qD"
 msgstr "有歧义的模板特例化%qD(为%q+D)"
 
-#: cp/pt.cc:5398
+#: cp/pt.cc:5400
 #, fuzzy, gcc-internal-format
 msgid "partial specialization of %qD after instantiation of %qD"
 msgstr "%qD的特例化在实例化之后"
 
-#: cp/pt.cc:5581
+#: cp/pt.cc:5583
 #, gcc-internal-format
 msgid "no default argument for %qD"
 msgstr "%qD没有默认参数"
@@ -62248,49 +62461,49 @@ msgstr "%qD没有默认参数"
 #. (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 "参数包实参%qE必须出现在模板实参表末尾"
 
-#: cp/pt.cc:5640
+#: cp/pt.cc:5642
 #, gcc-internal-format
 msgid "default template arguments may not be used in function template friend re-declaration"
 msgstr "默认参数不能用在函数模板友元重声明中"
 
-#: cp/pt.cc:5643
+#: cp/pt.cc:5645
 #, fuzzy, gcc-internal-format
 #| msgid "default template arguments may not be used in function template friend declarations"
 msgid "default template arguments may not be used in template friend declarations"
 msgstr "默认参数不能用在函数模板友元重声明中"
 
-#: 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 "只有指定了 -std=c++0x 或 -std=gnu++0x 时才能在函数模板中使用默认参数"
 
-#: cp/pt.cc:5649
+#: cp/pt.cc:5651
 #, gcc-internal-format
 msgid "default template arguments may not be used in partial specializations"
 msgstr "默认参数不能用在部分特例化中"
 
-#: cp/pt.cc:5652 cp/pt.cc:5710
+#: cp/pt.cc:5654 cp/pt.cc:5712
 #, gcc-internal-format
 msgid "default argument for template parameter for class enclosing %qD"
 msgstr "包含%qD的类的模板参数有默认参数"
 
-#: cp/pt.cc:5821
+#: cp/pt.cc:5823
 #, fuzzy, gcc-internal-format
 #| msgid "parameter %qD declared void"
 msgid "template %qD declared"
 msgstr "形参%qD被声明为 void"
 
-#: cp/pt.cc:5829
+#: cp/pt.cc:5831
 #, gcc-internal-format
 msgid "template class without a name"
 msgstr "模板类没有名字"
 
-#: cp/pt.cc:5837
+#: cp/pt.cc:5839
 #, fuzzy, gcc-internal-format
 msgid "member template %qD may not have virt-specifiers"
 msgstr "非成员函数%qD不能拥有 cv 限定符"
@@ -62300,64 +62513,64 @@ msgstr "非成员函数%qD不能拥有 cv 限定符"
 #. 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
 #, gcc-internal-format
 msgid "invalid template declaration of %qD"
 msgstr "%qD模板声明无效"
 
-#: cp/pt.cc:6012
+#: cp/pt.cc:6014
 #, gcc-internal-format
 msgid "template definition of non-template %q#D"
 msgstr "对非模板%q#D的模板定义"
 
-#: cp/pt.cc:6051
+#: cp/pt.cc:6053
 #, gcc-internal-format
 msgid "expected %d levels of template parms for %q#D, got %d"
 msgstr "需要 %d 级的%q#D模板参数,却给出了 %d 级"
 
-#: cp/pt.cc:6065
+#: cp/pt.cc:6067
 #, gcc-internal-format
 msgid "got %d template parameters for %q#D"
 msgstr "得到 %d 个模板参数,为%q#D"
 
-#: cp/pt.cc:6068
+#: cp/pt.cc:6070
 #, gcc-internal-format
 msgid "got %d template parameters for %q#T"
 msgstr "%2$q#T得到了 %1$d 个模板参数"
 
-#: cp/pt.cc:6070
+#: cp/pt.cc:6072
 #, gcc-internal-format, gfc-internal-format
 msgid "  but %d required"
 msgstr "但实际需要 %d 个"
 
-#: cp/pt.cc:6091
+#: cp/pt.cc:6093
 #, gcc-internal-format
 msgid "template arguments to %qD do not match original template %qD"
 msgstr "给%qD的模板实参不匹配原先的模板%qD"
 
-#: cp/pt.cc:6094
+#: cp/pt.cc:6096
 #, fuzzy, gcc-internal-format
 #| msgid "use template<> for an explicit specialization"
 msgid "use %<template<>%> for an explicit specialization"
 msgstr "使用 template<> 来显式特例化"
 
-#: cp/pt.cc:6239
+#: cp/pt.cc:6241
 #, gcc-internal-format
 msgid "%qT is not a template type"
 msgstr "%qT不是一个模板类型"
 
-#: cp/pt.cc:6252
+#: cp/pt.cc:6254
 #, gcc-internal-format
 msgid "template specifiers not specified in declaration of %qD"
 msgstr "%qD的声明中没有 template 限定"
 
-#: cp/pt.cc:6263
+#: cp/pt.cc:6265
 #, gcc-internal-format, gfc-internal-format
 msgid "redeclared with %d template parameter"
 msgid_plural "redeclared with %d template parameters"
 msgstr[0] "重声明为具有 %d 个模板参数"
 
-#: cp/pt.cc:6267
+#: cp/pt.cc:6269
 #, fuzzy, gcc-internal-format
 #| msgid "previous declaration %q+D used %d template parameter"
 #| msgid_plural "previous declaration %q+D used %d template parameters"
@@ -62365,208 +62578,198 @@ msgid "previous declaration %qD used %d template parameter"
 msgid_plural "previous declaration %qD used %d template parameters"
 msgstr[0] "先前的声明%q+D使用了 %d 个模板参数"
 
-#: cp/pt.cc:6305
+#: cp/pt.cc:6303
 #, gcc-internal-format
 msgid "template parameter %q+#D"
 msgstr "模板形参%q+#D"
 
-#: cp/pt.cc:6306
+#: cp/pt.cc:6304
 #, gcc-internal-format
 msgid "redeclared here as %q#D"
 msgstr "在这里又被声明为%q#D"
 
-#: cp/pt.cc:6317
+#: cp/pt.cc:6315
 #, fuzzy, gcc-internal-format
 #| msgid "redeclaration %qD differs in %<constexpr%>"
 msgid "declaration of template parameter %q+#D with different constraints"
 msgstr "对%qD的重声明在%<constexpr%>方面"
 
-#: cp/pt.cc:6320 cp/pt.cc:6366
+#: cp/pt.cc:6318 cp/pt.cc:6345
 #, fuzzy, gcc-internal-format
 #| msgid "original definition appeared here"
 msgid "original declaration appeared here"
 msgstr "原始定义在此"
 
-#: cp/pt.cc:6331
-#, gcc-internal-format
-msgid "redefinition of default argument for %q#D"
-msgstr "重定义%q#D的默认参数"
-
-#: cp/pt.cc:6333
-#, gcc-internal-format
-msgid "original definition appeared here"
-msgstr "原始定义在此"
-
-#: cp/pt.cc:6363
+#: cp/pt.cc:6342
 #, fuzzy, gcc-internal-format
 #| msgid "redeclaration %qD differs in %<constexpr%>"
 msgid "redeclaration %q#D with different constraints"
 msgstr "对%qD的重声明在%<constexpr%>方面"
 
-#: cp/pt.cc:6701 cp/pt.cc:6770
+#: cp/pt.cc:6695 cp/pt.cc:6764
 #, gcc-internal-format
 msgid "%qE is not a valid template argument for type %qT"
 msgstr "%qE不是类型%qT的有效模板参数"
 
-#: cp/pt.cc:6704
+#: cp/pt.cc:6698
 #, gcc-internal-format
 msgid "it must be the address of a function with external linkage"
 msgstr "它必须是一个具有外部链接函数的地址"
 
-#: 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 "它必须是一个具有外部链接函数的地址"
 
-#: 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不是类型%qT的有效模板实参,因为对象%qD没有外部链接"
 
-#: 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 "%qE不是类型%qT的有效模板实参,因为函数%qD没有外部链接"
 
-#: cp/pt.cc:6773
+#: cp/pt.cc:6767
 #, fuzzy, gcc-internal-format
 msgid "it must be a pointer-to-member of the form %<&X::Y%>"
 msgstr "它必须是格式为‘&X::Y’的成员指针"
 
-#: cp/pt.cc:6775
+#: cp/pt.cc:6769
 #, fuzzy, gcc-internal-format
 #| msgid "%qD is not a member of %qT"
 msgid "because it is a member of %qT"
 msgstr "%qD不是%qT的成员"
 
-#: cp/pt.cc:6844
+#: cp/pt.cc:6838
 #, fuzzy, gcc-internal-format
 msgid "  couldn%'t deduce template parameter %qD"
 msgstr "%qD声明时模板参数表太多"
 
-#: cp/pt.cc:6853
+#: cp/pt.cc:6847
 #, fuzzy, gcc-internal-format
 msgid "  types %qT and %qT have incompatible cv-qualifiers"
 msgstr "  类型 %qT 和 %qT 有不兼容的 cv-qualifiers"
 
-#: cp/pt.cc:6862
+#: cp/pt.cc:6856
 #, fuzzy, gcc-internal-format
 msgid "  mismatched types %qT and %qT"
 msgstr "在类型%qT和%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 "模板参数包%qD不能有默认参数"
 
-#: 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 "给%qD的模板实参不匹配原先的模板%qD"
 
-#: cp/pt.cc:6892
+#: cp/pt.cc:6886
 #, fuzzy, gcc-internal-format
 msgid "  %qE is not equivalent to %qE"
 msgstr "%qE属性为%qE所忽略"
 
-#: cp/pt.cc:6901
+#: cp/pt.cc:6895
 #, fuzzy, gcc-internal-format
 msgid "  inconsistent parameter pack deduction with %qT and %qT"
 msgstr "对%qT不一致的演绎:先是%qT然后是%qT"
 
-#: cp/pt.cc:6913
+#: cp/pt.cc:6907
 #, fuzzy, gcc-internal-format
 msgid "  deduced conflicting types for parameter %qT (%qT and %qT)"
 msgstr "Lambda 返回类型演绎得到不一致的类型%qT和%qT"
 
-#: 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 "  deduced 冲突值用于 non-type 参数 %qE (%qE 和 %qE)"
 
-#: 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 "%qE不是类型%qT的有效模板实参,因为%qE不是一个变量"
 
-#: cp/pt.cc:6939
+#: cp/pt.cc:6933
 #, fuzzy, gcc-internal-format
 msgid "  member function type %qT is not a valid template argument"
 msgstr "%qE不是类型%qT的有效模板实参,因为它的类型是%qT"
 
-#: cp/pt.cc:6982
+#: cp/pt.cc:6976
 #, fuzzy, gcc-internal-format
 msgid "  cannot convert %qE (type %qT) to type %qT"
 msgstr "无法将%qE从类型%qT转换到类型%qT"
 
-#: cp/pt.cc:6995
+#: cp/pt.cc:6989
 #, fuzzy, gcc-internal-format
 msgid "  %qT is an ambiguous base class of %qT"
 msgstr "%qT是%qT的有歧义的基类"
 
-#: cp/pt.cc:6999
+#: cp/pt.cc:6993
 #, fuzzy, gcc-internal-format
 msgid "  %qT is not derived from %qT"
 msgstr "派生联合%qT无效"
 
-#: cp/pt.cc:7010
+#: cp/pt.cc:7004
 #, fuzzy, gcc-internal-format
 msgid "  template parameters of a template template argument are inconsistent with other deduced template arguments"
 msgstr "  模板参数的模板模板参数是不一致与其他 deduced 模板参数"
 
-#: 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 "指向不完全类型%qT的指针不能自减"
 
-#: cp/pt.cc:7030
+#: cp/pt.cc:7024
 #, fuzzy, gcc-internal-format
 msgid "  template argument %qE does not match %qE"
 msgstr "给%qD的模板实参不匹配原先的模板%qD"
 
-#: cp/pt.cc:7091
+#: cp/pt.cc:7085
 #, gcc-internal-format
 msgid "%qE is not a valid template argument of type %qT because %qE is not a variable"
 msgstr "%qE不是类型%qT的有效模板实参,因为%qE不是一个变量"
 
-#: cp/pt.cc:7099
+#: cp/pt.cc:7093
 #, fuzzy, gcc-internal-format
 #| msgid "%qE is not a valid template argument of type %qT because %qD does not have external linkage"
 msgid "%qE is not a valid template argument of type %qT in C++98 because %qD does not have external linkage"
 msgstr "%qE不是类型%qT的有效模板实参,因为函数%qD没有外部链接"
 
-#: 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不是类型%qT的有效模板实参,因为对象%qD没有外部链接"
 
-#: cp/pt.cc:7124
+#: cp/pt.cc:7118
 #, fuzzy, gcc-internal-format
 msgid "the address of %qD is not a valid template argument"
 msgstr "%qE不是类型%qT的有效模板实参,因为%qE不是一个变量"
 
-#: 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 "%qE不是类型%qT的有效模板实参,因为%qE不是一个变量"
 
-#: cp/pt.cc:7141
+#: cp/pt.cc:7135
 #, fuzzy, gcc-internal-format
 #| msgid "%qE is not a valid template argument of type %qT because %qD does not have external linkage"
 msgid "the address of %qD is not a valid template argument because it does not have static storage duration"
 msgstr "%qE不是类型%qT的有效模板实参,因为函数%qD没有外部链接"
 
-#: cp/pt.cc:7159
+#: cp/pt.cc:7153
 #, gcc-internal-format
 msgid "%qD is not a valid template argument because %qD is a variable, not the address of a variable"
 msgstr "%qD不是一个有效模板实参,因为%qD是一个变量,而非变量的地址"
 
-#: 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不是类型%qT的有效模板实参,因为%qE不是一个变量"
 
-#: cp/pt.cc:7279
+#: cp/pt.cc:7273
 #, 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不是类型%qT的有效模板实参,因为字面字符串不能用在此上下文中"
@@ -62611,192 +62814,192 @@ msgstr "尝试使用%qE代替"
 msgid "%qE is not a valid template argument for type %qT because it is of type %qT"
 msgstr "%qE不是类型%qT的有效模板实参,因为它的类型是%qT"
 
-#: cp/pt.cc:8230
+#: cp/pt.cc:8251
 #, fuzzy, gcc-internal-format
 msgid "ignoring attributes on template argument %qT"
 msgstr "忽略在其定义之后为%qT应用的属性"
 
-#: cp/pt.cc:8246
+#: cp/pt.cc:8267
 #, fuzzy, gcc-internal-format
 msgid "ignoring attributes in template argument %qE"
 msgstr "忽略在其定义之后为%qT应用的属性"
 
-#: cp/pt.cc:8382
+#: cp/pt.cc:8403
 #, gcc-internal-format
 msgid "injected-class-name %qD used as template template argument"
 msgstr "注入的类名%qD被用作模板的模板参数"
 
-#: cp/pt.cc:8411
+#: cp/pt.cc:8432
 #, fuzzy, gcc-internal-format
 msgid "invalid use of destructor %qE as a type"
 msgstr "将析构函数%qD用作类型无效"
 
-#: 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 "需要使用某个模板参数的类型成员时,请使用%<typename %E%>"
 
-#: cp/pt.cc:8432 cp/pt.cc:8466 cp/pt.cc:8520
+#: cp/pt.cc:8453 cp/pt.cc:8487 cp/pt.cc:8541
 #, gcc-internal-format
 msgid "type/value mismatch at argument %d in template parameter list for %qD"
 msgstr "实参 %d 的类型/值不匹配,在%qD的模板参数列表中"
 
-#: cp/pt.cc:8440
+#: cp/pt.cc:8461
 #, gcc-internal-format
 msgid "  expected a constant of type %qT, got %qT"
 msgstr "需要一个%qT类型的常量,却给出了%qT"
 
-#: cp/pt.cc:8448
+#: cp/pt.cc:8469
 #, fuzzy, gcc-internal-format
 #| msgid "default argument for template parameter for class enclosing %qD"
 msgid "  ambiguous template argument for non-type template parameter is treated as function type"
 msgstr "包含%qD的类的模板参数有默认参数"
 
-#: cp/pt.cc:8454
+#: cp/pt.cc:8475
 #, gcc-internal-format
 msgid "  expected a class template, got %qE"
 msgstr "需要一个类模板,却给出了%qE"
 
-#: cp/pt.cc:8457
+#: cp/pt.cc:8478
 #, gcc-internal-format
 msgid "  expected a type, got %qE"
 msgstr "需要一个类型,却给出了%qE"
 
-#: cp/pt.cc:8471
+#: cp/pt.cc:8492
 #, gcc-internal-format
 msgid "  expected a type, got %qT"
 msgstr "需要一个类型,却给出了%qT"
 
-#: cp/pt.cc:8474
+#: cp/pt.cc:8495
 #, gcc-internal-format
 msgid "  expected a class template, got %qT"
 msgstr "需要一个类模板,却给出了%qT"
 
-#: cp/pt.cc:8524
+#: cp/pt.cc:8545
 #, gcc-internal-format
 msgid "  expected a template of type %qD, got %qT"
 msgstr "需要有%qD类型的模板,却得到了%qT"
 
-#: cp/pt.cc:8538
+#: cp/pt.cc:8559
 #, fuzzy, gcc-internal-format
 #| msgid "type/value mismatch at argument %d in template parameter list for %qD"
 msgid "constraint mismatch at argument %d in template parameter list for %qD"
 msgstr "实参 %d 的类型/值不匹配,在%qD的模板参数列表中"
 
-#: cp/pt.cc:8541
+#: cp/pt.cc:8562
 #, fuzzy, gcc-internal-format
 #| msgid "  expected a type, got %qE"
 msgid "  expected %qD but got %qD"
 msgstr "需要一个类型,却给出了%qE"
 
-#: cp/pt.cc:8614
+#: cp/pt.cc:8635
 #, fuzzy, gcc-internal-format
 #| msgid "could not convert template argument %qE to %qT"
 msgid "could not convert template argument %qE from %qT to %qT"
 msgstr "不能将模板参数从%qE转换到%qT"
 
-#: cp/pt.cc:8752 cp/pt.cc:9065
+#: cp/pt.cc:8773 cp/pt.cc:9086
 #, gcc-internal-format, gfc-internal-format
 msgid "template argument %d is invalid"
 msgstr "模板第 %d 个参数无效"
 
-#: cp/pt.cc:8767 cp/pt.cc:8899
+#: cp/pt.cc:8788 cp/pt.cc:8920
 #, gcc-internal-format, gfc-internal-format
 msgid "wrong number of template arguments (%d, should be %d)"
 msgstr "模板参数数目不对(不应是 %d 个而应是 %d 个)"
 
-#: 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 "模板参数数目不对(不应是 %d 个而应是 %d 个)"
 
-#: cp/pt.cc:8904
+#: cp/pt.cc:8925
 #, fuzzy, gcc-internal-format
 #| msgid "provided for %q+D"
 msgid "provided for %qD"
 msgstr "提供给%q+D"
 
-#: 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 "包含%qD的类的模板参数有默认参数"
 
-#: 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 "包含%qD的类的模板参数有默认参数"
 
-#: cp/pt.cc:9031
+#: cp/pt.cc:9052
 #, gcc-internal-format
 msgid "so any instantiation with a non-empty parameter pack would be ill-formed"
 msgstr ""
 
-#: cp/pt.cc:9675
+#: cp/pt.cc:9696
 #, fuzzy, gcc-internal-format
 msgid "%q#D is not a function template"
 msgstr "%q#D声明为模板"
 
-#: cp/pt.cc:9839
+#: cp/pt.cc:9860
 #, gcc-internal-format
 msgid "non-template type %qT used as a template"
 msgstr "非模板类型%qT用作模板"
 
-#: cp/pt.cc:9841
+#: cp/pt.cc:9862
 #, gcc-internal-format
 msgid "for template declaration %q+D"
 msgstr "对于模板声明%q+D"
 
-#: cp/pt.cc:9977 cp/pt.cc:21648
+#: cp/pt.cc:9998 cp/pt.cc:21699
 #, fuzzy, gcc-internal-format
 #| msgid "internal consistency failure"
 msgid "template constraint failure for %qD"
 msgstr "内部一致性错误"
 
-#: cp/pt.cc:10353
+#: cp/pt.cc:10374
 #, fuzzy, gcc-internal-format
 msgid "use of invalid variable template %qE"
 msgstr "%qD不是一个模板"
 
-#: cp/pt.cc:11018
+#: cp/pt.cc:11039
 #, fuzzy, gcc-internal-format
 msgid "template instantiation depth exceeds maximum of %d (use %<-ftemplate-depth=%> to increase the maximum)"
 msgstr "在实例化%2$qD时模板实例化深度超过最大值 %1$d(使用 use -ftemplate-depth= 来增大最大值)"
 
-#: cp/pt.cc:12186
+#: cp/pt.cc:12207
 #, fuzzy, gcc-internal-format
 #| msgid "flexible array member in union"
 msgid "flexible array member %qD in union"
 msgstr "联合和可变数组成员"
 
-#: 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 at beginning of declaration"
 msgid "%qE is not the entire pattern of the pack expansion"
 msgstr "%qE没有出现在声明的开头"
 
-#: cp/pt.cc:13201
+#: cp/pt.cc:13222
 #, fuzzy, gcc-internal-format
 #| msgid "mismatched argument pack lengths while expanding %<%T%>"
 msgid "mismatched argument pack lengths while expanding %qT"
 msgstr "展开%<%T%>时参数包长度不匹配"
 
-#: cp/pt.cc:13204
+#: cp/pt.cc:13225
 #, fuzzy, gcc-internal-format
 #| msgid "mismatched argument pack lengths while expanding %<%E%>"
 msgid "mismatched argument pack lengths while expanding %qE"
 msgstr "展开%<%E%>时参数包长度不匹配"
 
-#: cp/pt.cc:13816
+#: cp/pt.cc:13837
 #, fuzzy, gcc-internal-format
 msgid "  when instantiating default argument for call to %qD"
 msgstr "重定义%q#D的默认参数"
 
-#: cp/pt.cc:13911
+#: cp/pt.cc:13932
 #, gcc-internal-format
 msgid "creating pointer to member function of non-class type %qT"
 msgstr "生成非类类型%qT的成员函数指针"
@@ -62814,301 +63017,301 @@ msgstr "生成非类类型%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 "变量%qD有函数类型"
 
-#: cp/pt.cc:15130
+#: cp/pt.cc:15154
 #, gcc-internal-format
 msgid "invalid parameter type %qT"
 msgstr "无效的参数类型%qT"
 
-#: cp/pt.cc:15132
+#: cp/pt.cc:15156
 #, gcc-internal-format
 msgid "in declaration %q+D"
 msgstr "在声明%q+D中"
 
-#: cp/pt.cc:15258
+#: cp/pt.cc:15282
 #, gcc-internal-format
 msgid "function returning an array"
 msgstr "函数返回了一个数组"
 
-#: cp/pt.cc:15260
+#: cp/pt.cc:15284
 #, gcc-internal-format
 msgid "function returning a function"
 msgstr "函数返回了一个函数"
 
-#: cp/pt.cc:15959
+#: cp/pt.cc:15986
 #, gcc-internal-format
 msgid "forming reference to void"
 msgstr "形成对 void 的引用"
 
-#: cp/pt.cc:15961
+#: cp/pt.cc:15988
 #, gcc-internal-format
 msgid "forming pointer to reference type %qT"
 msgstr "生成指向引用类型%qT的指针"
 
-#: cp/pt.cc:15963
+#: cp/pt.cc:15990
 #, gcc-internal-format
 msgid "forming reference to reference type %qT"
 msgstr "生成指向引用类型%qT的引用"
 
-#: cp/pt.cc:15976
+#: cp/pt.cc:16003
 #, fuzzy, gcc-internal-format
 msgid "forming pointer to qualified function type %qT"
 msgstr "不能声明指向限定函数类型%qT的指针"
 
-#: cp/pt.cc:15979
+#: cp/pt.cc:16006
 #, fuzzy, gcc-internal-format
 msgid "forming reference to qualified function type %qT"
 msgstr "不能声明指向限定函数类型%qT的引用"
 
-#: cp/pt.cc:16027
+#: cp/pt.cc:16054
 #, gcc-internal-format
 msgid "creating pointer to member of non-class type %qT"
 msgstr "生成非类类型%qT的成员指针"
 
-#: cp/pt.cc:16033
+#: cp/pt.cc:16060
 #, gcc-internal-format
 msgid "creating pointer to member reference type %qT"
 msgstr "生成引用类型%qT的成员指针"
 
-#: cp/pt.cc:16039
+#: cp/pt.cc:16066
 #, gcc-internal-format
 msgid "creating pointer to member of type void"
 msgstr "创建指向 void 类型的成员指针"
 
-#: cp/pt.cc:16105
+#: cp/pt.cc:16132
 #, gcc-internal-format
 msgid "creating array of %qT"
 msgstr "生成%qT的数组"
 
-#: 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不是类、结构或联合类型"
 
-#: cp/pt.cc:16192
+#: cp/pt.cc:16221
 #, gcc-internal-format
 msgid "%qT resolves to %qT, which is not an enumeration type"
 msgstr "%qT被解析到非枚举类型%qT"
 
-#: cp/pt.cc:16200
+#: cp/pt.cc:16229
 #, fuzzy, gcc-internal-format
 #| msgid "%qT resolves to %qT, which is is not a class type"
 msgid "%qT resolves to %qT, which is not a class type"
 msgstr "%qT被解析到非类类型%qT"
 
-#: cp/pt.cc:16314
+#: cp/pt.cc:16343
 #, gcc-internal-format
 msgid "use of %qs in template"
 msgstr "在模板中使用%qs"
 
-#: cp/pt.cc:16605
+#: cp/pt.cc:16642
 #, gcc-internal-format
 msgid "qualifying type %qT does not match destructor name ~%qT"
 msgstr "限定类型%qT不匹配析构函数名 ~%qT"
 
-#: 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 "依赖名%qE被解析为非类型,但实例化却产生了一个类型"
 
-#: cp/pt.cc:16622
+#: cp/pt.cc:16659
 #, gcc-internal-format
 msgid "say %<typename %E%> if a type is meant"
 msgstr "如果您想指定类型,请使用%<typename %E%>"
 
-#: cp/pt.cc:16715
+#: cp/pt.cc:16752
 #, fuzzy, gcc-internal-format
 #| msgid "initializer element is not a constant expression"
 msgid "initializer for %q#D expands to an empty list of expressions"
 msgstr "初始值设定中元素不是常量表达式"
 
-#: cp/pt.cc:16866
+#: cp/pt.cc:16903
 #, gcc-internal-format
 msgid "using invalid field %qD"
 msgstr "使用无效字段%qD"
 
-#: cp/pt.cc:17437 cp/pt.cc:19383
+#: cp/pt.cc:17480 cp/pt.cc:19428
 #, gcc-internal-format
 msgid "invalid use of pack expansion expression"
 msgstr "对集展开表达式的无效使用"
 
-#: cp/pt.cc:17441 cp/pt.cc:19387
+#: cp/pt.cc:17484 cp/pt.cc:19432
 #, gcc-internal-format
 msgid "use %<...%> to expand argument pack"
 msgstr "使用%<...%>来展开实参集"
 
-#: cp/pt.cc:19527
+#: cp/pt.cc:19572
 #, gcc-internal-format
 msgid "empty initializer in lambda init-capture"
 msgstr ""
 
-#: cp/pt.cc:20709
+#: cp/pt.cc:20757
 #, fuzzy, 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 "%qD 未被声明在中这个范围,而找不到任何声明是由 argument-dependent 查找于点的实体化"
 
-#: cp/pt.cc:20743
+#: cp/pt.cc:20791
 #, fuzzy, gcc-internal-format
 msgid "declarations in dependent base %qT are not found by unqualified lookup"
 msgstr "声明在中附属基底 %qT 找不到由资格不符的查找"
 
-#: cp/pt.cc:20748
+#: cp/pt.cc:20796
 #, fuzzy, gcc-internal-format
 msgid "use %<this->%D%> instead"
 msgstr "使用%<%T::%D%>而不是%<%T::%D%>来以限定名指定构造函数"
 
-#: cp/pt.cc:20751
+#: cp/pt.cc:20799
 #, fuzzy, gcc-internal-format
 msgid "use %<%T::%D%> instead"
 msgstr "使用%<%T::%D%>而不是%<%T::%D%>来以限定名指定构造函数"
 
-#: cp/pt.cc:20756
+#: cp/pt.cc:20804
 #, fuzzy, gcc-internal-format
 msgid "%qD declared here, later in the translation unit"
 msgstr "%qE未声明(不在函数内)"
 
-#: cp/pt.cc:20807
+#: cp/pt.cc:20855
 #, fuzzy, gcc-internal-format
 msgid "wrong number of arguments to %<__builtin_convertvector%>"
 msgstr "给函数%<__builtin_next_arg%>的参数数目不对"
 
-#: cp/pt.cc:21042
+#: cp/pt.cc:21090
 #, gcc-internal-format
 msgid "%qT is not a class or namespace"
 msgstr "%qT既不是类也不是命名空间"
 
-#: cp/pt.cc:21045
+#: cp/pt.cc:21093
 #, gcc-internal-format
 msgid "%qD is not a class or namespace"
 msgstr "%qD既不是类也不是命名空间"
 
-#: cp/pt.cc:21366
+#: cp/pt.cc:21417
 #, fuzzy, gcc-internal-format
 #| msgid "%qT is/uses anonymous type"
 msgid "%qT is/uses unnamed type"
 msgstr "%qT是/使用了匿名类型"
 
-#: cp/pt.cc:21368
+#: cp/pt.cc:21419
 #, gcc-internal-format
 msgid "template argument for %qD uses local type %qT"
 msgstr "%qD的模板实参使用了局部类型%qT"
 
-#: cp/pt.cc:21378
+#: cp/pt.cc:21429
 #, gcc-internal-format
 msgid "%qT is a variably modified type"
 msgstr "%qT是一个可变类型"
 
-#: cp/pt.cc:21393
+#: cp/pt.cc:21444
 #, gcc-internal-format
 msgid "integral expression %qE is not constant"
 msgstr "整型表达式%qE不是常量"
 
-#: cp/pt.cc:21411
+#: cp/pt.cc:21462
 #, gcc-internal-format
 msgid "  trying to instantiate %qD"
 msgstr "  试图实例化%qD"
 
-#: cp/pt.cc:25563
+#: cp/pt.cc:25611
 #, fuzzy, gcc-internal-format
 msgid "ambiguous template instantiation for %q#T"
 msgstr "%q#T的显式实例化出现在模板定义之前"
 
-#: cp/pt.cc:25565
+#: cp/pt.cc:25613
 #, fuzzy, gcc-internal-format
 msgid "ambiguous template instantiation for %q#D"
 msgstr "有歧义的模板特例化%qD(为%q+D)"
 
-#: cp/pt.cc:25571
+#: cp/pt.cc:25619
 #, fuzzy
 msgid "%s %#qS"
 msgstr "张贴被搁置的文章 [%%s]?(%s/%s/%s/%s/%s):"
 
-#: cp/pt.cc:25595 cp/pt.cc:25690
+#: cp/pt.cc:25643 cp/pt.cc:25738
 #, gcc-internal-format
 msgid "explicit instantiation of non-template %q#D"
 msgstr "对非模板%q#D的显式实例化"
 
-#: cp/pt.cc:25601
+#: cp/pt.cc:25649
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation of variable concept %q#D"
 msgstr "有歧义的模板特例化%qD(为%q+D)"
 
-#: cp/pt.cc:25603
+#: cp/pt.cc:25651
 #, fuzzy, gcc-internal-format
 #| msgid "explicit specialization of non-template %qT"
 msgid "explicit instantiation of function concept %q#D"
 msgstr "显式特例化非模板%qT"
 
-#: cp/pt.cc:25622
+#: cp/pt.cc:25670
 #, gcc-internal-format
 msgid "%qD is not a static data member of a class template"
 msgstr "%qD不是类模板的非静态数据成员"
 
-#: cp/pt.cc:25628 cp/pt.cc:25685
+#: cp/pt.cc:25676 cp/pt.cc:25733
 #, gcc-internal-format
 msgid "no matching template for %qD found"
 msgstr "没有找到与%qD匹配的模板"
 
-#: cp/pt.cc:25633
+#: cp/pt.cc:25681
 #, gcc-internal-format
 msgid "type %qT for explicit instantiation %qD does not match declared type %qT"
 msgstr "类型%qT用于显式实例化%qD时不匹配声明的类型%qT"
 
-#: cp/pt.cc:25641
+#: cp/pt.cc:25689
 #, gcc-internal-format
 msgid "explicit instantiation of %q#D"
 msgstr "对%q#D的显式实例化"
 
-#: cp/pt.cc:25677
+#: cp/pt.cc:25725
 #, gcc-internal-format
 msgid "duplicate explicit instantiation of %q#D"
 msgstr "对%q#D重复的显式实例化"
 
-#: cp/pt.cc:25700 cp/pt.cc:25767
+#: cp/pt.cc:25748 cp/pt.cc:25815
 #, gcc-internal-format
 msgid "ISO C++ 1998 forbids the use of %<extern%> on explicit instantiations"
 msgstr "ISO C++ 1998 不允许在显式实例化时使用%<extern%>"
 
-#: cp/pt.cc:25705 cp/pt.cc:25782
+#: cp/pt.cc:25753 cp/pt.cc:25830
 #, gcc-internal-format
 msgid "storage class %qD applied to template instantiation"
 msgstr "为模板实例化化应用了存储类型%qD"
 
-#: cp/pt.cc:25739
+#: cp/pt.cc:25787
 #, fuzzy, gcc-internal-format
 msgid "explicit instantiation of non-class template %qD"
 msgstr "显式实例化非模板类型%qT"
 
-#: cp/pt.cc:25742
+#: cp/pt.cc:25790
 #, gcc-internal-format
 msgid "explicit instantiation of non-template type %qT"
 msgstr "显式实例化非模板类型%qT"
 
-#: cp/pt.cc:25751
+#: cp/pt.cc:25799
 #, gcc-internal-format
 msgid "explicit instantiation of %q#T before definition of template"
 msgstr "%q#T的显式实例化出现在模板定义之前"
 
-#: cp/pt.cc:25772
+#: cp/pt.cc:25820
 #, gcc-internal-format
 msgid "ISO C++ forbids the use of %qE on explicit instantiations"
 msgstr "ISO C++ 不允许在显式实例化时使用%qE"
 
-#: cp/pt.cc:25812
+#: cp/pt.cc:25860
 #, gcc-internal-format
 msgid "duplicate explicit instantiation of %q#T"
 msgstr "对%q#T重复的显式实例化"
 
-#: cp/pt.cc:26110
+#: cp/pt.cc:26158
 #, fuzzy, gcc-internal-format
 #| msgid "explicit specialization of %qD after first use"
 msgid "exception specification of %qD depends on itself"
@@ -63121,162 +63324,168 @@ msgstr "在初次使用后显式特例化%qD"
 #. 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
 #, gcc-internal-format
 msgid "explicit instantiation of %qD but no definition available"
 msgstr "显式实例化%qD时没有可用的定义"
 
-#: cp/pt.cc:26658
+#: cp/pt.cc:26700
 #, fuzzy, 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)"
 msgid "template instantiation depth exceeds maximum of %d instantiating %q+D, possibly from virtual table generation (use %<-ftemplate-depth=%> to increase the maximum)"
 msgstr "在实例化%2$q+D时模板实例化深度超过了最大值 %1$d,可能是由于生成虚函数表所致(使用 -ftemplate-depth= 来增大最大值)"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: 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 "%q#T不是一个有效的模板常量参数类型"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/pt.cc:27070
+#: cp/pt.cc:27119
 #, fuzzy, gcc-internal-format
 msgid "invalid template non-type parameter"
 msgstr "对模板类型参数%qT的使用无效"
 
-#: 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 "%q#T不是一个有效的模板常量参数类型"
 
-#: cp/pt.cc:28465
+#: cp/pt.cc:28519
 #, fuzzy, gcc-internal-format
 #| msgid "keyword %<typename%> not allowed outside of templates"
 msgid "keyword %<template%> not allowed in declarator-id"
 msgstr "关键字%<typename%>不能在模板以外使用"
 
-#: cp/pt.cc:28755
+#: cp/pt.cc:28809
 #, fuzzy, gcc-internal-format
 msgid "a concept cannot be constrained"
 msgstr "析构函数不能是静态成员函数"
 
-#: cp/pt.cc:28764
+#: cp/pt.cc:28818
 #, fuzzy, gcc-internal-format
 msgid "concept %qE not in namespace scope"
 msgstr "%qT作为枚举被引用"
 
-#: cp/pt.cc:28791
+#: cp/pt.cc:28824
+#, fuzzy, gcc-internal-format
+#| msgid "definition of %q#T inside template parameter list"
+msgid "concept %qE has multiple template parameter lists"
+msgstr "在模板参数列表中定义了%q#T"
+
+#: cp/pt.cc:28851
 #, fuzzy, gcc-internal-format
 #| msgid "deducing from brace-enclosed initializer list requires #include <initializer_list>"
 msgid "deducing from brace-enclosed initializer list requires %<#include <initializer_list>%>"
 msgstr "从花括号中的初始化列表演绎需要 #include <initializer_list>"
 
-#: cp/pt.cc:29843
+#: cp/pt.cc:29903
 #, fuzzy, gcc-internal-format
 #| msgid "non-template %qD used as template"
 msgid "non-deducible template %qT used without template arguments"
 msgstr "非模板%qD用作模板"
 
-#: 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 "可变参数模板只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/pt.cc:29955
+#: cp/pt.cc:30015
 #, gcc-internal-format
 msgid "cannot deduce template arguments for copy-initialization of %qT, as it has no non-explicit deduction guides or user-declared constructors"
 msgstr ""
 
-#: cp/pt.cc: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不是类型%qT的有效模板实参,因为对象%qD没有外部链接"
 
-#: cp/pt.cc:29974
+#: cp/pt.cc:30034
 #, fuzzy, gcc-internal-format
 msgid "class template argument deduction failed:"
 msgstr "模板第 %d 个参数无效"
 
-#: cp/pt.cc:29977
+#: cp/pt.cc:30037
 #, fuzzy, gcc-internal-format
 #| msgid "function not considered for inlining"
 msgid "explicit deduction guides not considered for copy-initialization"
 msgstr "不考虑内联函数"
 
 #. 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 "indirect function %q+D cannot be declared weakref"
 msgid "explicit deduction guide declared here"
 msgstr "内联函数%q+D不能声明为有弱链接"
 
-#: cp/pt.cc:30009
+#: cp/pt.cc:30069
 #, fuzzy, gcc-internal-format
 msgid "%qT may not intend to support class template argument deduction"
 msgstr "模板第 %d 个参数无效"
 
-#: 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 "无法从%2$qE推导出%1$qT"
 
-#: cp/pt.cc:30171
+#: cp/pt.cc:30231
 #, gcc-internal-format
 msgid "unable to deduce %qT from %qE"
 msgstr "无法从%2$qE推导出%1$qT"
 
-#: cp/pt.cc:30243
+#: cp/pt.cc:30303
 #, gcc-internal-format
 msgid "placeholder constraints not satisfied"
 msgstr ""
 
-#: cp/pt.cc:30247
+#: cp/pt.cc:30307
 #, fuzzy, gcc-internal-format
 #| msgid "insn does not satisfy its constraints:"
 msgid "deduced initializer does not satisfy placeholder constraints"
 msgstr "指令不满足其约束:"
 
-#: cp/pt.cc:30251
+#: cp/pt.cc:30311
 #, fuzzy, gcc-internal-format
 #| msgid "insn does not satisfy its constraints:"
 msgid "deduced return type does not satisfy placeholder constraints"
 msgstr "指令不满足其约束:"
 
-#: cp/pt.cc:30255
+#: cp/pt.cc:30315
 #, fuzzy, gcc-internal-format
 #| msgid "insn does not satisfy its constraints:"
 msgid "deduced expression type does not satisfy placeholder constraints"
 msgstr "指令不满足其约束:"
 
-#: cp/pt.cc:30395
+#: cp/pt.cc:30455
 #, fuzzy, gcc-internal-format
 msgid "invalid use of %qT in template argument"
 msgstr "模板第 %d 个参数无效"
@@ -63331,96 +63540,96 @@ msgstr "%qT是%qT的有歧义的基类"
 msgid "%qT is an inaccessible base of %qT"
 msgstr "%qT是%qT不可访问的基类"
 
-#: 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 "overriding deleted function %q+D"
 msgid "overridden function is %q#F"
 msgstr "隐藏了被删除的函数%q+D"
 
-#: cp/search.cc:1995
+#: cp/search.cc:1991
 #, fuzzy, gcc-internal-format
 msgid "invalid covariant return type for %q#D"
 msgstr "%q+#D的协变返回类型无效"
 
-#: 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 "overriding deleted function %q+D"
 msgid "overridden function is %q#D"
 msgstr "隐藏了被删除的函数%q+D"
 
-#: cp/search.cc:2010
+#: cp/search.cc:2006
 #, gcc-internal-format
 msgid "invalid covariant return type for %q+#D"
 msgstr "%q+#D的协变返回类型无效"
 
-#: cp/search.cc:2012
+#: cp/search.cc:2008
 #, gcc-internal-format
 msgid "conflicting return type specified for %q+#D"
 msgstr "为%q+#D指定了冲突的返回类型"
 
-#: cp/search.cc:2029
+#: cp/search.cc:2025
 #, gcc-internal-format
 msgid "conflicting type attributes specified for %q+#D"
 msgstr "为%q+#D指定了冲突的属性"
 
-#: cp/search.cc:2044
+#: cp/search.cc:2040
 #, fuzzy, gcc-internal-format
 #| msgid "built-in function %q+D declared as non-function"
 msgid "%<consteval%> function %q+D overriding non-%<consteval%> function"
 msgstr "内建函数%q+D未被声明为函数"
 
-#: cp/search.cc:2047
+#: cp/search.cc:2043
 #, fuzzy, gcc-internal-format
 #| msgid "built-in function %q+D declared as non-function"
 msgid "non-%<consteval%> function %q+D overriding %<consteval%> function"
 msgstr "内建函数%q+D未被声明为函数"
 
-#: 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 "overriding deleted function %q+D"
 msgid "overridden function is %qD"
 msgstr "隐藏了被删除的函数%q+D"
 
-#: cp/search.cc:2066
+#: cp/search.cc:2062
 #, fuzzy, gcc-internal-format
 msgid "%qD declared %<transaction_safe_dynamic%>"
 msgstr "对 rpmtxn 数据库异动作业进行除错"
 
-#: cp/search.cc:2068
+#: cp/search.cc:2064
 #, fuzzy, gcc-internal-format
 #| msgid "variable %q+D declared %<inline%>"
 msgid "overriding %qD declared %<transaction_safe%>"
 msgstr "变量%q+D声明为%<inline%>"
 
-#: cp/search.cc:2076
+#: cp/search.cc:2072
 #, fuzzy, gcc-internal-format
 #| msgid "overriding non-deleted function %q+D"
 msgid "deleted function %q+D overriding non-deleted function"
 msgstr "覆盖了未被删除的函数%q+D"
 
-#: cp/search.cc:2085
+#: cp/search.cc:2081
 #, fuzzy, gcc-internal-format
 #| msgid "non-deleted function %q+D"
 msgid "non-deleted function %q+D overriding deleted function"
 msgstr "未被删除的函数%q+D"
 
-#: cp/search.cc:2095
+#: cp/search.cc:2091
 #, fuzzy, gcc-internal-format
 #| msgid "built-in function %q+D declared as non-function"
 msgid "virtual function %q+D overriding final function"
 msgstr "内建函数%q+D未被声明为函数"
 
-#: cp/search.cc:2180
+#: cp/search.cc:2176
 #, gcc-internal-format
 msgid "%q+#D cannot be declared"
 msgstr "无法声明%q+#D"
 
-#: cp/search.cc:2181
+#: cp/search.cc:2177
 #, gcc-internal-format
 msgid "  since %q+#D declared in base class"
 msgstr "因为%q+#D已在基类中声明过"
@@ -63478,542 +63687,547 @@ msgstr "__label__ 声明只能出现在函数作用域中"
 msgid "invalid use of member %qD in static member function"
 msgstr "对非静态成员函数%qD的使用无效"
 
-#: cp/semantics.cc:2393
+#: cp/semantics.cc:2396
 #, fuzzy, gcc-internal-format
 #| msgid "mismatched arguments"
 msgid "%qE missing template arguments"
 msgstr "参数不匹配"
 
-#: cp/semantics.cc:2453
+#: cp/semantics.cc:2456
 #, gcc-internal-format
 msgid "a statement expression is an insufficient context for overload resolution"
 msgstr ""
 
-#: cp/semantics.cc:2805
+#: cp/semantics.cc:2808
 #, fuzzy, gcc-internal-format
 #| msgid "%qE cannot be used as a function"
 msgid "cannot call a concept as a function"
 msgstr "%qE不能用作函数"
 
-#: cp/semantics.cc:2873
+#: cp/semantics.cc:2876
 #, gcc-internal-format
 msgid "arguments to destructor are not allowed"
 msgstr "析构函数不能有参数"
 
-#: cp/semantics.cc:2970
+#: cp/semantics.cc:2973
 #, gcc-internal-format
 msgid "%<this%> is unavailable for static member functions"
 msgstr "静态成员函数中不能使用%<this%>"
 
-#: cp/semantics.cc:2972
+#: cp/semantics.cc:2975
 #, gcc-internal-format
 msgid "invalid use of %<this%> in non-member function"
 msgstr "在非成员函数中使用%<this%>无效"
 
-#: cp/semantics.cc:2974
+#: cp/semantics.cc:2977
 #, gcc-internal-format
 msgid "invalid use of %<this%> at top level"
 msgstr "在文件作用域使用%<this%>无效"
 
-#: cp/semantics.cc:2996
+#: cp/semantics.cc:2999
 #, gcc-internal-format
 msgid "invalid qualifying scope in pseudo-destructor name"
 msgstr "伪析构函数名的限定作用域无效"
 
-#: cp/semantics.cc:3004 cp/typeck.cc:2931
+#: cp/semantics.cc:3007 cp/typeck.cc:2940
 #, gcc-internal-format
 msgid "qualified type %qT does not match destructor name ~%qT"
 msgstr "限定的类型%qT不匹配析构函数名 ~%qT"
 
-#: cp/semantics.cc:3026
+#: cp/semantics.cc:3029
 #, gcc-internal-format
 msgid "%qE is not of type %qT"
 msgstr "%qE的类型不是%qT"
 
-#: cp/semantics.cc:3133
+#: cp/semantics.cc:3136
 #, gcc-internal-format
 msgid "compound literal of non-object type %qT"
 msgstr "非对象类型%qT的复合字面常量"
 
-#: cp/semantics.cc:3152
+#: cp/semantics.cc:3156
+#, fuzzy, gcc-internal-format
+msgid "%<auto{x}%> cannot be constrained"
+msgstr "不能内联%<main%>函数"
+
+#: cp/semantics.cc:3161
 #, fuzzy, gcc-internal-format
 msgid "%<auto{x}%> only available with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr "C++0x auto 只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/semantics.cc:3337
+#: cp/semantics.cc:3342
 #, gcc-internal-format
 msgid "template type parameters must use the keyword %<class%> or %<typename%>"
 msgstr "模板形参必须使用%<class%>或%<typename%>关键字"
 
-#: cp/semantics.cc:3387
+#: cp/semantics.cc:3392
 #, gcc-internal-format
 msgid "invalid use of type %qT as a default value for a template template-parameter"
 msgstr "将类型%qT用作模板的模板参数的默认值无效"
 
-#: cp/semantics.cc:3390
+#: cp/semantics.cc:3395
 #, gcc-internal-format
 msgid "invalid default argument for a template template parameter"
 msgstr "模板的模板形参的默认实参无效"
 
-#: cp/semantics.cc:3407
+#: cp/semantics.cc:3412
 #, gcc-internal-format
 msgid "definition of %q#T inside template parameter list"
 msgstr "在模板参数列表中定义了%q#T"
 
-#: cp/semantics.cc:3438
+#: cp/semantics.cc:3443
 #, gcc-internal-format
 msgid "invalid definition of qualified type %qT"
 msgstr "对限定类型%qT的定义无效"
 
-#: cp/semantics.cc:3729
+#: cp/semantics.cc:3735
 #, gcc-internal-format
 msgid "invalid base-class specification"
 msgstr "无效的基类"
 
-#: cp/semantics.cc:3894
+#: cp/semantics.cc:3900
 #, fuzzy, gcc-internal-format
 msgid "cannot capture member %qD of anonymous union"
 msgstr "匿名联合中出现保护成员%q+#D"
 
-#: cp/semantics.cc:3911 cp/semantics.cc:12155
+#: cp/semantics.cc:3917 cp/semantics.cc:12154
 #, 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 "为 lambda 形参指定了默认参数"
 
-#: 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 "在包含函数中使用%<auto%>变量"
 
-#: cp/semantics.cc:3931
+#: cp/semantics.cc:3937
 #, fuzzy, gcc-internal-format
 msgid "use of parameter from containing function"
 msgstr "已弃用为非函数指定默认参数"
 
-#: cp/semantics.cc:4058
+#: cp/semantics.cc:4064
 #, fuzzy, gcc-internal-format
 msgid "use of parameter outside function body"
 msgstr "已弃用为非函数指定默认参数"
 
-#: cp/semantics.cc:4068
+#: cp/semantics.cc:4074
 #, fuzzy, gcc-internal-format
 #| msgid "mismatched arguments"
 msgid "missing template arguments"
 msgstr "参数不匹配"
 
-#: 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 "模板参数%qD(类型为%qT)不允许出现在整数表达式中,因为它的类型不是整数或枚举"
 
-#: cp/semantics.cc:4135
+#: cp/semantics.cc:4141
 #, gcc-internal-format
 msgid "use of class template %qT as expression"
 msgstr "将类模板%qT用作表达式"
 
 #. Ambiguous reference to base members.
-#: cp/semantics.cc:4142
+#: cp/semantics.cc:4148
 #, gcc-internal-format
 msgid "request for member %qD is ambiguous in multiple inheritance lattice"
 msgstr "在多继承网格中对%qD的访问有歧义"
 
-#: cp/semantics.cc:4170
+#: cp/semantics.cc:4176
 #, gcc-internal-format
 msgid "%qD cannot appear in a constant-expression"
 msgstr "%qD不能出现在常量表达式中"
 
-#: cp/semantics.cc:4347
+#: cp/semantics.cc:4338
 #, gcc-internal-format
 msgid "type of %qE is unknown"
 msgstr "%qE的类型未知"
 
-#: cp/semantics.cc:4376
+#: cp/semantics.cc:4367
 #, fuzzy, gcc-internal-format
 msgid "%qT is not an enumeration type"
 msgstr "%qD不是一个枚举名"
 
 #. 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 "为形参声明指定了无效的存储类"
 
-#: cp/semantics.cc:4542
+#: cp/semantics.cc:4533
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to destructor %<~%T%>"
 msgstr "不能为析构函数%<~%T%>使用%<offsetof%>"
 
-#: cp/semantics.cc:4555
+#: cp/semantics.cc:4546
 #, gcc-internal-format
 msgid "cannot apply %<offsetof%> to member function %qD"
 msgstr "不能为成员函数%qD应用%<offsetof%>"
 
-#: cp/semantics.cc:4559
+#: cp/semantics.cc:4550
 #, fuzzy, gcc-internal-format
 #| msgid "cannot apply %<offsetof%> to member function %qD"
 msgid "cannot apply %<offsetof%> to member function"
 msgstr "不能为成员函数%qD应用%<offsetof%>"
 
-#: cp/semantics.cc:4564
+#: cp/semantics.cc:4555
 #, fuzzy, gcc-internal-format
 #| msgid "cannot apply %<offsetof%> to member function %qD"
 msgid "cannot apply %<offsetof%> to an enumerator %qD"
 msgstr "不能为成员函数%qD应用%<offsetof%>"
 
-#: cp/semantics.cc:4575
+#: cp/semantics.cc:4566
 #, fuzzy, gcc-internal-format
 msgid "%<offsetof%> within non-standard-layout type %qT is conditionally-supported"
 msgstr "不能通过%<...%>接受不能平凡复制的类型%q#T;"
 
-#: cp/semantics.cc:5915
+#: cp/semantics.cc:5906
 #, fuzzy, gcc-internal-format
 msgid "user defined reduction lookup is ambiguous"
 msgstr "对%qD的引用有歧义"
 
-#: cp/semantics.cc:6188
+#: cp/semantics.cc:6179
 #, fuzzy, gcc-internal-format
 msgid "%qE in %<reduction%> clause is a zero size array"
 msgstr "向量 delete 的实参类型既非指针也非数组"
 
-#: cp/semantics.cc:6234
+#: cp/semantics.cc:6225
 #, fuzzy, gcc-internal-format
 #| msgid "%qE has invalid type for %<reduction%>"
 msgid "%qE has const type for %<reduction%>"
 msgstr "%qE的类型对%<reduction%>无效"
 
-#: cp/semantics.cc:6353
+#: cp/semantics.cc:6344
 #, gcc-internal-format
 msgid "user defined reduction with constructor initializer for base class %qT"
 msgstr ""
 
-#: 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 "num_threads 表达式必须是整型的"
 
-#: 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
 #, gcc-internal-format
 msgid "%qD is not a variable in clause %qs"
 msgstr "%qD在子句%qs中不是一个变量"
 
-#: cp/semantics.cc:7097
+#: cp/semantics.cc:7088
 #, gcc-internal-format
 msgid "%qD is not a variable in clause %<firstprivate%>"
 msgstr "%qD在%<firstprivate%>子句中不是一个变量"
 
-#: cp/semantics.cc:7156
+#: cp/semantics.cc:7147
 #, gcc-internal-format
 msgid "%qD is not a variable in clause %<lastprivate%>"
 msgstr "%qD在%<lastprivate%>子句中不是一个变量"
 
-#: cp/semantics.cc:7206
+#: cp/semantics.cc:7197
 #, fuzzy, gcc-internal-format
 msgid "%<gang%> static expression must be integral"
 msgstr "num_threads 表达式必须是整型的"
 
-#: cp/semantics.cc:7220
+#: cp/semantics.cc:7211
 #, fuzzy, gcc-internal-format
 msgid "%<gang%> static value must be positive"
 msgstr "%<num_threads%>值必须为正"
 
-#: cp/semantics.cc:7254
+#: cp/semantics.cc:7245
 #, fuzzy, gcc-internal-format
 msgid "%<gang%> num expression must be integral"
 msgstr "num_threads 表达式必须是整型的"
 
-#: cp/semantics.cc:7257
+#: cp/semantics.cc:7248
 #, fuzzy, gcc-internal-format
 msgid "%<vector%> length expression must be integral"
 msgstr "num_threads 表达式必须是整型的"
 
-#: cp/semantics.cc:7261
+#: cp/semantics.cc:7252
 #, fuzzy, gcc-internal-format
 msgid "%<worker%> num expression must be integral"
 msgstr "num_threads 表达式必须是整型的"
 
-#: cp/semantics.cc:7283
+#: cp/semantics.cc:7274
 #, fuzzy, gcc-internal-format
 msgid "%<gang%> num value must be positive"
 msgstr "%<num_threads%>值必须为正"
 
-#: cp/semantics.cc:7287
+#: cp/semantics.cc:7278
 #, fuzzy, gcc-internal-format
 msgid "%<vector%> length value must be positive"
 msgstr "%<num_threads%>值必须为正"
 
-#: cp/semantics.cc:7292
+#: cp/semantics.cc:7283
 #, fuzzy, gcc-internal-format
 msgid "%<worker%> num value must be positive"
 msgstr "%<num_threads%>值必须为正"
 
-#: cp/semantics.cc:7366
+#: cp/semantics.cc:7357
 #, gcc-internal-format
 msgid "schedule chunk size expression must be integral"
 msgstr "调度块大小表达式必须为整型"
 
-#: cp/semantics.cc:7399
+#: cp/semantics.cc:7390
 #, fuzzy, gcc-internal-format
 msgid "%qs length expression must be integral"
 msgstr "num_threads 表达式必须是整型的"
 
-#: cp/semantics.cc:7413
+#: cp/semantics.cc:7404
 #, fuzzy, gcc-internal-format
 msgid "%qs length expression must be positive constant integer expression"
 msgstr "%H折叠变量需要正整常数表达式"
 
-#: cp/semantics.cc:7433
+#: cp/semantics.cc:7424
 #, fuzzy, gcc-internal-format
 msgid "%<async%> expression must be integral"
 msgstr "num_threads 表达式必须是整型的"
 
-#: cp/semantics.cc:7462
+#: cp/semantics.cc:7453
 #, fuzzy, gcc-internal-format
 msgid "%<thread_limit%> expression must be integral"
 msgstr "num_threads 表达式必须是整型的"
 
-#: cp/semantics.cc:7492
+#: cp/semantics.cc:7483
 #, fuzzy, gcc-internal-format
 msgid "%<device%> id must be integral"
 msgstr "调度块大小表达式必须为整型"
 
-#: cp/semantics.cc:7523
+#: cp/semantics.cc:7514
 #, fuzzy, gcc-internal-format
 msgid "%<dist_schedule%> chunk size expression must be integral"
 msgstr "调度块大小表达式必须为整型"
 
-#: cp/semantics.cc:7552
+#: cp/semantics.cc:7543
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a variable in %<aligned%> clause"
 msgstr "%qD在%<lastprivate%>子句中不是一个变量"
 
-#: cp/semantics.cc:7567
+#: cp/semantics.cc:7558
 #, gcc-internal-format
 msgid "%qE in %<aligned%> clause is neither a pointer nor an array nor a reference to pointer or array"
 msgstr ""
 
-#: cp/semantics.cc:7574
+#: cp/semantics.cc:7565
 #, fuzzy, gcc-internal-format
 msgid "%qD appears more than once in %<aligned%> clauses"
 msgstr "%qD在数据子句中多次出现"
 
-#: cp/semantics.cc:7589
+#: cp/semantics.cc:7580
 #, fuzzy, gcc-internal-format
 msgid "%<aligned%> clause alignment expression must be integral"
 msgstr "调度块大小表达式必须为整型"
 
-#: cp/semantics.cc:7622
+#: cp/semantics.cc:7613
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a variable in %<nontemporal%> clause"
 msgstr "%qD在子句%qs中不是一个变量"
 
-#: cp/semantics.cc:7633
+#: cp/semantics.cc:7624
 #, fuzzy, gcc-internal-format
 msgid "%qD appears more than once in %<nontemporal%> clauses"
 msgstr "%qD在数据子句中多次出现"
 
-#: cp/semantics.cc:7650
+#: cp/semantics.cc:7641
 #, fuzzy, gcc-internal-format
 msgid "%<this%> not allowed in %<allocate%> clause"
 msgstr "%qE在子句%<firstprivate%>中不是一个变量"
 
-#: cp/semantics.cc:7662
+#: cp/semantics.cc:7653
 #, fuzzy, gcc-internal-format
 msgid "%qD is not a variable in %<allocate%> clause"
 msgstr "%qD在%<lastprivate%>子句中不是一个变量"
 
-#: cp/semantics.cc:7671
+#: cp/semantics.cc:7662
 #, fuzzy, gcc-internal-format
 msgid "%qD appears more than once in %<allocate%> clauses"
 msgstr "%qD在数据子句中多次出现"
 
-#: 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 "%qD在子句%qs中不是一个变量"
 
-#: cp/semantics.cc:8318
+#: cp/semantics.cc:8309
 #, fuzzy, gcc-internal-format
 #| msgid "too many %qs clauses"
 msgid "template %qE in clause %qs"
 msgstr "太多的%qs子句"
 
-#: cp/semantics.cc:8322
+#: cp/semantics.cc:8313
 #, gcc-internal-format
 msgid "overloaded function name %qE in clause %qs"
 msgstr ""
 
-#: cp/semantics.cc:8391
+#: cp/semantics.cc:8382
 #, fuzzy, gcc-internal-format
 msgid "%<grainsize%> expression must be integral"
 msgstr "num_threads 表达式必须是整型的"
 
-#: cp/semantics.cc:8421
+#: cp/semantics.cc:8412
 #, fuzzy, gcc-internal-format
 msgid "%<priority%> expression must be integral"
 msgstr "num_threads 表达式必须是整型的"
 
-#: cp/semantics.cc:8451
+#: cp/semantics.cc:8442
 #, fuzzy, gcc-internal-format
 msgid "%<hint%> expression must be integral"
 msgstr "num_threads 表达式必须是整型的"
 
-#: cp/semantics.cc:8464
+#: cp/semantics.cc:8455
 #, fuzzy, gcc-internal-format
 msgid "%<hint%> expression must be constant integer expression"
 msgstr "%H折叠变量需要正整常数表达式"
 
-#: cp/semantics.cc:8481
+#: cp/semantics.cc:8472
 #, fuzzy, gcc-internal-format
 msgid "%<filter%> expression must be integral"
 msgstr "num_threads 表达式必须是整型的"
 
-#: cp/semantics.cc:8512
+#: cp/semantics.cc:8503
 #, fuzzy, gcc-internal-format
 msgid "%qs variable is neither a pointer nor reference to pointer"
 msgstr "向量 delete 的实参类型既非指针也非数组"
 
-#: 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 "向量 delete 的实参类型既非指针也非数组"
 
-#: cp/semantics.cc:8599
+#: cp/semantics.cc:8590
 #, fuzzy, gcc-internal-format
 msgid "%<tile%> argument needs integral type"
 msgstr "调度块大小表达式必须为整型"
 
-#: 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 "%<threadprivate%>%qD不是一个文件、命名空间或块作用域变量"
 
-#: cp/semantics.cc:9245
+#: cp/semantics.cc:9236
 #, gcc-internal-format
 msgid "%<threadprivate%> %qE directive not in %qT definition"
 msgstr "%<threadprivate%>%qE指示不在%qT定义中"
 
-#: cp/semantics.cc:9973
+#: cp/semantics.cc:9964
 #, gcc-internal-format
 msgid "difference between %qE and %qD does not have integer type"
 msgstr "%qE和%qD之间的差不具有整数类型"
 
-#: cp/semantics.cc:10441
+#: cp/semantics.cc:10432
 #, fuzzy, gcc-internal-format
 msgid "%<#pragma omp simd%> used with class iteration variable %qE"
 msgstr "%<# pragma omp 基元的 update%>使用两不同的变量用于内存"
 
-#: 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 "%<# pragma omp 基元的 update%>使用两不同的变量用于内存"
 
-#: cp/semantics.cc:11179
+#: cp/semantics.cc:11170
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "static assertion failed: %s"
 msgstr "静态断言错误:%E"
 
-#: cp/semantics.cc:11193
+#: cp/semantics.cc:11184
 #, fuzzy, gcc-internal-format
 #| msgid "too many arguments to %qE"
 msgid "the comparison reduces to %qE"
 msgstr "%qE实参太多"
 
-#: cp/semantics.cc:11196
+#: cp/semantics.cc:11187
 #, fuzzy, gcc-internal-format
 #| msgid "user-defined %qD always evaluates both arguments"
 msgid "%qE evaluates to false"
 msgstr "用户定义的%qD总是计算所有两个参数"
 
-#: cp/semantics.cc:11200
+#: cp/semantics.cc:11191
 #, gcc-internal-format
 msgid "non-constant condition for static assertion"
 msgstr "静态断言中出现非常量条件"
 
-#: cp/semantics.cc:11229
+#: cp/semantics.cc:11220
 #, fuzzy, gcc-internal-format
 #| msgid "argument to decltype must be an expression"
 msgid "argument to %<decltype%> must be an expression"
 msgstr "decltype 的实参必须是一个表达式"
 
-#: cp/semantics.cc:11266
+#: cp/semantics.cc:11265
 #, fuzzy, gcc-internal-format
 msgid "%<decltype%> cannot resolve address of overloaded function"
 msgstr "%s 无法解析重载的函数地址"
 
-#: 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 "调用%<__builtin_next_arg%>时没有给定实参"
 
-#: 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 "逗号表达式的左操作数不起作用"
 
-#: cp/semantics.cc:12253
+#: cp/semantics.cc:12252
 #, fuzzy, gcc-internal-format
 #| msgid "template argument %qE involves template parameter(s)"
 msgid "both arguments in binary fold have unexpanded parameter packs"
 msgstr "模板实参%qE混杂了模板形参"
 
-#: 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 "给函数%<__builtin_next_arg%>的参数数目不对"
@@ -64021,22 +64235,22 @@ msgstr "给函数%<__builtin_next_arg%>的参数数目不对"
 #. 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 ""
@@ -64296,870 +64510,870 @@ msgstr "不同类型 %T 和 %T 有相同的正规类型节点"
 msgid "invalid application of %qs to a member function"
 msgstr "%qs用于成员函数无效"
 
-#: cp/typeck.cc:1993
+#: cp/typeck.cc:2000
 #, gcc-internal-format
 msgid "invalid application of %<sizeof%> to a bit-field"
 msgstr "对位段使用%<sizeof%>无效"
 
-#: cp/typeck.cc:2001
+#: cp/typeck.cc:2008
 #, gcc-internal-format
 msgid "ISO C++ forbids applying %<sizeof%> to an expression of function type"
 msgstr "ISO C++ 不允许将%<sizeof%>应用到函数类型的表达式上"
 
-#: cp/typeck.cc:2066
+#: cp/typeck.cc:2073
 #, gcc-internal-format
 msgid "invalid application of %<__alignof%> to a bit-field"
 msgstr "对位段使用%<__alignof%>无效"
 
-#: cp/typeck.cc:2077
+#: cp/typeck.cc:2084
 #, gcc-internal-format
 msgid "ISO C++ forbids applying %<__alignof%> to an expression of function type"
 msgstr "ISO C++ 不允许将%<__alignof%>应用到函数类型的表达式上"
 
-#: cp/typeck.cc:2159
+#: cp/typeck.cc:2168
 #, fuzzy, gcc-internal-format
 #| msgid "size of array has non-integral type %qT"
 msgid "%<alignas%> argument has non-integral type %qT"
 msgstr "数组%qT的大小的类型不是整数"
 
-#: cp/typeck.cc:2204
+#: cp/typeck.cc:2213
 #, fuzzy, gcc-internal-format
 #| msgid "invalid use of non-static member function %qD"
 msgid "invalid use of non-static member function of type %qT"
 msgstr "对非静态成员函数%qD的使用无效"
 
-#: cp/typeck.cc:2380
+#: cp/typeck.cc:2389
 #, fuzzy, gcc-internal-format
 msgid "taking address of temporary array"
 msgstr "取临时变量的地址"
 
-#: cp/typeck.cc:2562
+#: cp/typeck.cc:2571
 #, fuzzy, gcc-internal-format
 msgid "ISO C++ forbids converting a string constant to %qT"
 msgstr "已弃用从字符串常量到%qT的转换"
 
-#: cp/typeck.cc:2566
+#: cp/typeck.cc:2575
 #, gcc-internal-format
 msgid "deprecated conversion from string constant to %qT"
 msgstr "已弃用从字符串常量到%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 "对成员%qD的请求出现在%qE中,而后者具有非类类型%qT"
 
-#: cp/typeck.cc:2685 cp/typeck.cc:3250
+#: cp/typeck.cc:2694 cp/typeck.cc:3259
 #, gcc-internal-format
 msgid "request for member %qD in %qE, which is of non-class type %qT"
 msgstr "对成员%qD的请求出现在%qE中,而后者具有非类类型%qT"
 
-#: cp/typeck.cc:2719
+#: cp/typeck.cc:2728
 #, fuzzy, gcc-internal-format
 #| msgid "invalid use of nonstatic data member %qE"
 msgid "invalid use of non-static data member %qE"
 msgstr "对非静态数据成员%qE的使用无效"
 
-#: 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 "对 NULL 对象非静态数据成员%qD的访问无效"
 
-#: cp/typeck.cc:2946
+#: cp/typeck.cc:2955
 #, gcc-internal-format
 msgid "object type %qT does not match destructor name ~%qT"
 msgstr "对象类型%qT的析构函数名~%qT不匹配"
 
-#: 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 "被析构的类型是%qT,但析构函数却使用了%qT"
 
-#: cp/typeck.cc:3097
+#: cp/typeck.cc:3106
 #, gcc-internal-format
 msgid "field %q#D can be accessed via %q#D"
 msgstr ""
 
 #. No hint.
-#: cp/typeck.cc:3116
+#: cp/typeck.cc:3125
 #, fuzzy, gcc-internal-format
 msgid "%q#T has no member named %qE"
 msgstr "%qT没有名为%qE的成员"
 
-#: 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 "%qT没有名为%qE的成员"
 
-#: 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 "%qT没有名为%qE的成员"
 
-#: 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 "%qT没有名为%qE的成员"
 
-#: cp/typeck.cc:3280 cp/typeck.cc:3306
+#: cp/typeck.cc:3289 cp/typeck.cc:3315
 #, gcc-internal-format
 msgid "%<%D::%D%> is not a member of %qT"
 msgstr "%<%D::%D%>不是%qT的成员"
 
-#: cp/typeck.cc:3345
+#: cp/typeck.cc:3354
 #, gcc-internal-format
 msgid "%qT is not a base of %qT"
 msgstr "%qT不是%qT的基类"
 
-#: cp/typeck.cc:3408
+#: cp/typeck.cc:3417
 #, gcc-internal-format
 msgid "%qD is not a member template function"
 msgstr "%qD不是一个成员模板函数"
 
-#: cp/typeck.cc:3674
+#: cp/typeck.cc:3683
 #, gcc-internal-format
 msgid "%qT is not a pointer-to-object type"
 msgstr "%qT不是一个指向对象的类型"
 
-#: cp/typeck.cc:3706
+#: cp/typeck.cc:3715
 #, gcc-internal-format
 msgid "invalid use of array indexing on pointer to member"
 msgstr "对成员指针数组索引的使用无效"
 
-#: cp/typeck.cc:3709
+#: cp/typeck.cc:3718
 #, gcc-internal-format
 msgid "invalid use of unary %<*%> on pointer to member"
 msgstr "对成员指针使用一元%<*%>非法"
 
-#: cp/typeck.cc:3712
+#: cp/typeck.cc:3721
 #, gcc-internal-format
 msgid "invalid use of implicit conversion on pointer to member"
 msgstr "隐式转换成员指针用法无效"
 
-#: 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
 #, gcc-internal-format
 msgid "subscript missing in array reference"
 msgstr "数组引用缺少下标"
 
-#: cp/typeck.cc:3878
+#: cp/typeck.cc:3887
 #, gcc-internal-format
 msgid "subscripting array declared %<register%>"
 msgstr "按下标访问声明为%<register%>的数组"
 
-#: cp/typeck.cc:3916
+#: cp/typeck.cc:3925
 #, gcc-internal-format
 msgid "subscripted value is neither array nor pointer"
 msgstr "下标运算的左操作数既非数组也非指针"
 
-#: cp/typeck.cc:3988
+#: cp/typeck.cc:3997
 #, gcc-internal-format
 msgid "object missing in use of %qE"
 msgstr "使用%qE时缺少对象"
 
-#: cp/typeck.cc:4213
+#: cp/typeck.cc:4222
 #, gcc-internal-format
 msgid "ISO C++ forbids calling %<::main%> from within program"
 msgstr "ISO C++ 不允许在程序里调用%<::main%>"
 
-#: 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 "必须用%<.*%>or%<->*%>调用%<%E (...)%>中的成员函数指针,例如%<(... ->* %E) (...)%>"
 
-#: cp/typeck.cc:4251
+#: cp/typeck.cc:4260
 #, gcc-internal-format
 msgid "%qE cannot be used as a function"
 msgstr "%qE不能用作函数"
 
-#: cp/typeck.cc:4254
+#: cp/typeck.cc:4263
 #, fuzzy, gcc-internal-format
 msgid "%qD cannot be used as a function"
 msgstr "%qE不能用作函数"
 
-#: cp/typeck.cc:4257
+#: cp/typeck.cc:4266
 #, fuzzy, gcc-internal-format
 msgid "expression cannot be used as a function"
 msgstr "%qE不能用作函数"
 
-#: cp/typeck.cc:4315
+#: cp/typeck.cc:4324
 #, fuzzy, gcc-internal-format
 msgid "too many arguments to constructor %q#D"
 msgstr "给予函数 %s 的参数太多,于 %L"
 
-#: cp/typeck.cc:4316
+#: cp/typeck.cc:4325
 #, fuzzy, gcc-internal-format
 msgid "too few arguments to constructor %q#D"
 msgstr "给 %qE 的实递参数太少"
 
-#: cp/typeck.cc:4321
+#: cp/typeck.cc:4330
 #, fuzzy, gcc-internal-format
 msgid "too many arguments to member function %q#D"
 msgstr "提供给函数%qE的实参太多"
 
-#: cp/typeck.cc:4322
+#: cp/typeck.cc:4331
 #, fuzzy, gcc-internal-format
 msgid "too few arguments to member function %q#D"
 msgstr "提供给函数%qE的实参太少"
 
-#: cp/typeck.cc:4328
+#: cp/typeck.cc:4337
 #, fuzzy, gcc-internal-format
 msgid "too many arguments to function %q#D"
 msgstr "给予函数的实参太多"
 
-#: cp/typeck.cc:4329
+#: cp/typeck.cc:4338
 #, fuzzy, gcc-internal-format
 msgid "too few arguments to function %q#D"
 msgstr "给予函数的实参太少"
 
-#: cp/typeck.cc:4339
+#: cp/typeck.cc:4348
 #, fuzzy, gcc-internal-format
 msgid "too many arguments to method %q#D"
 msgstr "给予函数 %s 的参数太多,于 %L"
 
-#: cp/typeck.cc:4340
+#: cp/typeck.cc:4349
 #, fuzzy, gcc-internal-format
 msgid "too few arguments to method %q#D"
 msgstr "给 %qE 的实递参数太少"
 
-#: cp/typeck.cc:4343
+#: cp/typeck.cc:4352
 #, gcc-internal-format
 msgid "too many arguments to function"
 msgstr "给予函数的实参太多"
 
-#: cp/typeck.cc:4344
+#: cp/typeck.cc:4353
 #, gcc-internal-format
 msgid "too few arguments to function"
 msgstr "给予函数的实参太少"
 
-#: cp/typeck.cc:4426
+#: cp/typeck.cc:4435
 #, gcc-internal-format
 msgid "parameter %P of %qD has incomplete type %qT"
 msgstr "%2$qD的第 %1$P 个形参的类型%3$qT不完全"
 
-#: cp/typeck.cc:4432
+#: cp/typeck.cc:4441
 #, gcc-internal-format
 msgid "parameter %P has incomplete type %qT"
 msgstr "形参 %P 的类型%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的地址永远不会为 NULL"
 
-#: cp/typeck.cc:4738
+#: cp/typeck.cc:4747
 #, gcc-internal-format
 msgid "the address of %qD will never be NULL"
 msgstr "%qD的地址永远不会为 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
 #, fuzzy, gcc-internal-format
 msgid "the compiler can assume that the address of %qD will never be NULL"
 msgstr "比较将一律评估作为 %<true%> 用于地址的 %qD 将永不是空值"
 
-#: cp/typeck.cc:4812
+#: cp/typeck.cc:4821
 #, fuzzy, gcc-internal-format
 #| msgid "conversion between distinct pointer types %qT and %qT lacks a cast"
 msgid "bitwise operation between different enumeration types %qT and %qT is deprecated"
 msgstr "在不同的指针类型%qT和%qT之间的转换要一个类型转换"
 
-#: cp/typeck.cc:4817
+#: cp/typeck.cc:4826
 #, fuzzy, gcc-internal-format
 #| msgid "comparison between distinct pointer types %qT and %qT lacks a cast"
 msgid "arithmetic between different enumeration types %qT and %qT is deprecated"
 msgstr "在不同的指针类型%qT和%qT之间的比较需要一个类型转换"
 
-#: 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 "表达式%qE具有抽象类类型%qT,不能用于 throw 表达式中"
 
-#: 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
 #, gcc-internal-format
 msgid "assuming cast to type %qT from overloaded function"
 msgstr "假定从重载函数转换到类型%qT"
 
-#: cp/typeck.cc:5048
+#: cp/typeck.cc:5057
 #, gcc-internal-format
 msgid "NULL used in arithmetic"
 msgstr "算术表达式中使用了 NULL"
 
-#: 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++ 不允许比较指针和整数的值"
 
-#: 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 "在类型%qT和%qT间比较"
 
-#: 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"
 msgid "ordered comparison of pointer with integer zero (%qT and %qT)"
 msgstr "指针与整数 0 比较大小"
 
-#: cp/typeck.cc:5851
+#: cp/typeck.cc:5861
 #, fuzzy, gcc-internal-format
 #| msgid "unordered comparison on non-floating point argument"
 msgid "unordered comparison on non-floating-point argument"
 msgstr "非浮点实参间的无效比较"
 
-#: cp/typeck.cc:5897
+#: cp/typeck.cc:5907
 #, fuzzy
 msgid "implicit conversion from %qH to %qI to match other operand of binary expression"
 msgstr "C++ 中不允许从%qT到%qT的隐式转换"
 
-#: cp/typeck.cc:5977
+#: cp/typeck.cc:5987
 #, gcc-internal-format
 msgid "invalid operands of types %qT and %qT to binary %qO"
 msgstr "操作数类型%qT和%qT对双目%qO而言无效"
 
-#: 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++ 不允许在减法中使用类型为%<void *%>的指针"
 
-#: 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++ 不允许在减法中使用函数指针"
 
-#: 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++ 不允许在减法中使用指向方法的指针"
 
-#: cp/typeck.cc:6440
+#: cp/typeck.cc:6450
 #, gcc-internal-format
 msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
 msgstr "在指针算术中使用指向不完全类型的指针无效"
 
-#: cp/typeck.cc:6519
+#: cp/typeck.cc:6529
 #, fuzzy, gcc-internal-format
 #| msgid "taking address of constructor %qE"
 msgid "taking address of constructor %qD"
 msgstr "取构造函数%qE的地址"
 
-#: cp/typeck.cc:6520
+#: cp/typeck.cc:6530
 #, fuzzy, gcc-internal-format
 #| msgid "taking address of destructor %qE"
 msgid "taking address of destructor %qD"
 msgstr "取析构函数%qE的地址"
 
-#: cp/typeck.cc:6536
+#: cp/typeck.cc:6546
 #, gcc-internal-format
 msgid "invalid use of %qE to form a pointer-to-member-function"
 msgstr "用%qE形成成员函数指针的用法无效"
 
-#: cp/typeck.cc:6539
+#: cp/typeck.cc:6549
 #, gcc-internal-format
 msgid "  a qualified-id is required"
 msgstr "需要一个限定的标识符"
 
-#: cp/typeck.cc:6546
+#: cp/typeck.cc:6556
 #, gcc-internal-format
 msgid "parentheses around %qE cannot be used to form a pointer-to-member-function"
 msgstr "%qE两边的括号不能用来构造一个成员函数指针"
 
-#: 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 "ISO C++ 不允许通过提取一个未限定的或带括号的非静态成员函数的地址来形成一个成员函数指针。请使用%<&%T::%D%>"
 
-#: 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 "ISO C++ 不允许通过取已绑定的成员函数的地址来构造成员函数指针。请改用%<&%T::%D%>"
 
 #. 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 temporary"
 msgid "taking address of rvalue"
 msgstr "取临时变量的地址"
 
-#: cp/typeck.cc:6795
+#: cp/typeck.cc:6805
 #, gcc-internal-format
 msgid "ISO C++ forbids taking address of function %<::main%>"
 msgstr "ISO C++ 不允许取函数%<::main%>的地址"
 
-#: cp/typeck.cc:6853
+#: cp/typeck.cc:6863
 #, gcc-internal-format
 msgid "cannot create pointer to reference member %qD"
 msgstr "不能创建指向引用成员%qD的指针"
 
-#: cp/typeck.cc:6873 cp/typeck.cc:7432
+#: cp/typeck.cc:6889 cp/typeck.cc:7446
 #, fuzzy, gcc-internal-format
 #| msgid "cannot take address of bit-field %qD"
 msgid "attempt to take address of bit-field"
 msgstr "无法取得位段%qD的地址"
 
-#: cp/typeck.cc:7032
+#: cp/typeck.cc:7046
 #, fuzzy, gcc-internal-format
 #| msgid "taking address of expression of type %<void%>"
 msgid "%<~%> on an expression of type %<bool%>"
 msgstr "取一个类型为%<void%>的表达式的地址"
 
-#: cp/typeck.cc:7033
+#: cp/typeck.cc:7047
 #, gcc-internal-format
 msgid "did you mean to use logical not (%<!%>)?"
 msgstr ""
 
-#: cp/typeck.cc:7156
+#: cp/typeck.cc:7170
 #, gcc-internal-format
 msgid "ISO C++ forbids incrementing an enum"
 msgstr "ISO C++ 不允许枚举自增"
 
-#: cp/typeck.cc:7157
+#: cp/typeck.cc:7171
 #, gcc-internal-format
 msgid "ISO C++ forbids decrementing an enum"
 msgstr "ISO C++ 不允许枚举自减"
 
-#: cp/typeck.cc:7173
+#: cp/typeck.cc:7187
 #, gcc-internal-format
 msgid "cannot increment a pointer to incomplete type %qT"
 msgstr "指向不完全类型%qT的指针不能自增"
 
-#: cp/typeck.cc:7175
+#: cp/typeck.cc:7189
 #, gcc-internal-format
 msgid "cannot decrement a pointer to incomplete type %qT"
 msgstr "指向不完全类型%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++ 不允许对类型为%qT的指针自增"
 
-#: cp/typeck.cc:7189
+#: cp/typeck.cc:7203
 #, gcc-internal-format
 msgid "ISO C++ forbids decrementing a pointer of type %qT"
 msgstr "ISO C++ 不允许对类型为%qT的指针自减"
 
-#: 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 "无法取右值表达式%<this%>的地址"
 
-#: cp/typeck.cc:7466
+#: cp/typeck.cc:7480
 #, gcc-internal-format
 msgid "address of explicit register variable %qD requested"
 msgstr "要求显式寄存器变量%qD的地址。"
 
-#: cp/typeck.cc:7471
+#: cp/typeck.cc:7485
 #, gcc-internal-format
 msgid "address requested for %qD, which is declared %<register%>"
 msgstr "请求声明为%<register%>的%qD的地址"
 
-#: cp/typeck.cc:7546
+#: cp/typeck.cc:7560
 #, fuzzy, gcc-internal-format
 msgid "list-initializer for non-class type must not be parenthesized"
 msgstr "%qT的初始值设定必须在花括号内"
 
-#: cp/typeck.cc:7558
+#: cp/typeck.cc:7572
 #, fuzzy, gcc-internal-format
 msgid "expression list treated as compound expression in initializer"
 msgstr "%s 表达式列表被看作复合表达式"
 
-#: cp/typeck.cc:7562
+#: cp/typeck.cc:7576
 #, fuzzy, gcc-internal-format
 msgid "expression list treated as compound expression in mem-initializer"
 msgstr "%s 表达式列表被看作复合表达式"
 
-#: cp/typeck.cc:7566
+#: cp/typeck.cc:7580
 #, fuzzy, gcc-internal-format
 msgid "expression list treated as compound expression in functional cast"
 msgstr "%s 表达式列表被看作复合表达式"
 
-#: cp/typeck.cc:7604
+#: cp/typeck.cc:7618
 #, gcc-internal-format, gfc-internal-format
 msgid "%s expression list treated as compound expression"
 msgstr "%s 表达式列表被看作复合表达式"
 
-#: cp/typeck.cc:7696
+#: cp/typeck.cc:7710
 #, gcc-internal-format
 msgid "no context to resolve type of %qE"
 msgstr "缺少用以解析%qE类型的上下文"
 
-#: cp/typeck.cc:7730
+#: cp/typeck.cc:7744
 #, gcc-internal-format
 msgid "cast from type %qT to type %qT casts away qualifiers"
 msgstr "从类型%qT到类型%qT的类型转换丢失了限定符"
 
-#: cp/typeck.cc:7736
+#: cp/typeck.cc:7750
 #, fuzzy, gcc-internal-format
 #| msgid "static_cast from type %qT to type %qT casts away qualifiers"
 msgid "%<static_cast%> from type %qT to type %qT casts away qualifiers"
 msgstr "从类型%qT到类型%qT的 static_cast 丢失了限定符"
 
-#: cp/typeck.cc:7743
+#: cp/typeck.cc:7757
 #, fuzzy, gcc-internal-format
 #| msgid "reinterpret_cast from type %qT to type %qT casts away qualifiers"
 msgid "%<reinterpret_cast%> from type %qT to type %qT casts away qualifiers"
 msgstr "从类型%qT到类型%qT的 reinterpret_cast 丢失了限定符"
 
-#: cp/typeck.cc:7767
+#: cp/typeck.cc:7781
 #, fuzzy, gcc-internal-format
 msgid "useless cast to type %q#T"
 msgstr "向函数类型%qT的转换无效"
 
-#: cp/typeck.cc:7781
+#: cp/typeck.cc:7795
 #, fuzzy, gcc-internal-format
 #| msgid "type qualifiers ignored on function return type"
 msgid "type qualifiers ignored on cast result type"
 msgstr "忽略函数返回类型的类型限定"
 
-#: cp/typeck.cc:8218
+#: cp/typeck.cc:8232
 #, fuzzy, gcc-internal-format
 #| msgid "invalid static_cast from type %qT to type %qT"
 msgid "invalid %<static_cast%> from type %qT to type %qT"
 msgstr "从类型%qT到类型%qT中的 static_cast 无效"
 
-#: 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 "源有不完全的类类型"
 
-#: cp/typeck.cc:8258
+#: cp/typeck.cc:8272
 #, fuzzy
 #| msgid "converting from %qT to %qT"
 msgid "converting from %qH to %qI"
 msgstr "从%qT转换到%qT"
 
-#: cp/typeck.cc:8333
+#: cp/typeck.cc:8347
 #, fuzzy, gcc-internal-format
 #| msgid "invalid cast of an rvalue expression of type %qT to type %qT"
 msgid "invalid cast of a prvalue expression of type %qT to type %qT"
 msgstr "从具有类型%qT的右值表达式到类型%qT中的转换无效"
 
-#: cp/typeck.cc:8403
+#: cp/typeck.cc:8417
 #, fuzzy
 #| msgid "cast from %qT to %qT loses precision"
 msgid "cast from %qH to %qI loses precision"
 msgstr "从%qT到%qT的转换损失精度"
 
-#: cp/typeck.cc:8428
+#: cp/typeck.cc:8442
 msgid "cast between incompatible function types from %qH to %qI"
 msgstr ""
 
-#: cp/typeck.cc:8439
+#: cp/typeck.cc:8453
 #, fuzzy
 #| msgid "comparison between distinct pointer-to-member types %qT and %qT lacks a cast"
 msgid "cast between incompatible pointer to member types from %qH to %qI"
 msgstr "在不同的成员指针类型%qT和%qT之间的比较需要一个类型转换"
 
-#: cp/typeck.cc:8460 cp/typeck.cc:8650
+#: cp/typeck.cc:8474 cp/typeck.cc:8664
 #, fuzzy
 #| msgid "cast from %qT to %qT increases required alignment of target type"
 msgid "cast from %qH to %qI increases required alignment of target type"
 msgstr "从%qT到%qT的转换增大了目标类型的对齐需求"
 
-#: cp/typeck.cc:8477
+#: cp/typeck.cc:8491
 #, fuzzy, gcc-internal-format
 msgid "casting between pointer-to-function and pointer-to-object is conditionally-supported"
 msgstr "ISO C++ 不允许在函数指针和对象指针间进行转换"
 
-#: cp/typeck.cc:8491
+#: cp/typeck.cc:8505
 #, gcc-internal-format
 msgid "invalid cast from type %qT to type %qT"
 msgstr "从类型%qT到类型%qT的转换无效"
 
-#: cp/typeck.cc:8564
+#: cp/typeck.cc:8578
 #, fuzzy, 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"
 msgid "invalid use of %<const_cast%> with type %qT, which is not a pointer, reference, nor a pointer-to-data-member type"
 msgstr "在类型%qT上使用 const_cast 无效,因为它既不是指针,也不是引用,也不是数据成员指针"
 
-#: cp/typeck.cc:8573
+#: cp/typeck.cc:8587
 #, fuzzy, gcc-internal-format
 #| msgid "invalid use of const_cast with type %qT, which is a pointer or reference to a function type"
 msgid "invalid use of %<const_cast%> with type %qT, which is a pointer or reference to a function type"
 msgstr "在类型%qT上使用 const_cast 无效,因为它是一个指针函数类型的指针或引用"
 
-#: 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"
 msgid "invalid %<const_cast%> of an rvalue of type %qT to type %qT"
 msgstr "从类型%qT到类型%qT中的 const_cast 无效"
 
-#: cp/typeck.cc:8685
+#: cp/typeck.cc:8699
 #, fuzzy, gcc-internal-format
 #| msgid "invalid const_cast from type %qT to type %qT"
 msgid "invalid %<const_cast%> from type %qT to type %qT"
 msgstr "从类型%qT到类型%qT中的 const_cast 无效"
 
-#: 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++ 不允许转换为数组类型%qT"
 
-#: cp/typeck.cc:8804
+#: cp/typeck.cc:8818
 #, gcc-internal-format
 msgid "invalid cast to function type %qT"
 msgstr "向函数类型%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
 #, gcc-internal-format
 msgid "  in evaluation of %<%Q(%#T, %#T)%>"
 msgstr "在求%<%Q(%#T, %#T)%>值时"
 
-#: cp/typeck.cc:9194
+#: cp/typeck.cc:9208
 #, fuzzy, gcc-internal-format
 msgid "assigning to an array from an initializer list"
 msgstr "初始值设定中数组索引不是常数"
 
-#: cp/typeck.cc:9221
+#: cp/typeck.cc:9235
 #, gcc-internal-format
 msgid "incompatible types in assignment of %qT to %qT"
 msgstr "将%qT赋值给%qT时类型不兼容"
 
-#: cp/typeck.cc:9235
+#: cp/typeck.cc:9249
 #, gcc-internal-format
 msgid "array used as initializer"
 msgstr "数组被用作初始值设定"
 
-#: cp/typeck.cc:9237
+#: cp/typeck.cc:9251
 #, gcc-internal-format
 msgid "invalid array assignment"
 msgstr "无效的数组赋值"
 
-#: cp/typeck.cc:9379
+#: cp/typeck.cc:9393
 #, gcc-internal-format
 msgid "   in pointer to member function conversion"
 msgstr "在成员函数指针转换中"
 
-#: cp/typeck.cc:9393
+#: cp/typeck.cc:9407
 #, gcc-internal-format
 msgid "pointer to member conversion via virtual base %qT"
 msgstr "成员指针转换经由虚基类%qT"
 
-#: cp/typeck.cc:9440 cp/typeck.cc:9459
+#: cp/typeck.cc:9454 cp/typeck.cc:9473
 #, gcc-internal-format
 msgid "   in pointer to member conversion"
 msgstr "在成员指针转换中"
 
-#: cp/typeck.cc:9540
+#: cp/typeck.cc:9554
 #, gcc-internal-format
 msgid "invalid conversion to type %qT from type %qT"
 msgstr "到类型%qT的转换无效,从类型%qT"
 
-#: cp/typeck.cc:9861
+#: cp/typeck.cc:9875
 #, fuzzy
 #| msgid "cannot convert %qT to %qT in default argument"
 msgid "cannot convert %qH to %qI in default argument"
 msgstr "不能在参数默认时将%qT转换为%qT"
 
-#: cp/typeck.cc:9866
+#: cp/typeck.cc:9880
 #, fuzzy
 #| msgid "cannot convert %qT to %qT in argument passing"
 msgid "cannot convert %qH to %qI in argument passing"
 msgstr "不能在传参时将%qT转换为%qT"
 
-#: cp/typeck.cc:9875
+#: cp/typeck.cc:9889
 #, fuzzy
 #| msgid "cannot convert %qT to %qT in initialization"
 msgid "cannot convert %qH to %qI in initialization"
 msgstr "不能在初始化时将%qT转换为%qT"
 
-#: cp/typeck.cc:9879
+#: cp/typeck.cc:9893
 #, fuzzy
 #| msgid "cannot convert %qT to %qT in return"
 msgid "cannot convert %qH to %qI in return"
 msgstr "不能在返回时将%qT转换为%qT"
 
-#: cp/typeck.cc:9884
+#: cp/typeck.cc:9898
 #, fuzzy
 #| msgid "cannot convert %qT to %qT in assignment"
 msgid "cannot convert %qH to %qI in assignment"
 msgstr "不能在赋值时将%qT转换为%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 "%2$qE的第 %1$d 个实参可能是 format 属性的备选"
 
-#: cp/typeck.cc:9920
+#: cp/typeck.cc:9934
 #, fuzzy, gcc-internal-format
 msgid "parameter might be a candidate for a format attribute"
 msgstr "返回类型可能是 format 属性的备选"
 
-#: 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 "函数的实参可能是 format 属性的备选"
 
-#: 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 "初始化的左手边可能是 format 属性的备选时"
 
-#: 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 "赋值的左手边可能是 format 属性的备选时"
 
-#: cp/typeck.cc:10036
+#: cp/typeck.cc:10050
 #, fuzzy, gcc-internal-format
 #| msgid "in passing argument %P of %q+D"
 msgid "in passing argument %P of %qD"
 msgstr "在传递%2$q+D的第 %1$P 个实参时"
 
-#: cp/typeck.cc:10118
+#: cp/typeck.cc:10132
 #, gcc-internal-format
 msgid "returning reference to temporary"
 msgstr "返回临时变量的引用"
 
-#: 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 %q+D returned"
 msgid "reference to local variable %qD returned"
 msgstr "返回了对局部变量的%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 "返回了局部变量的%q+D的地址"
 
-#: cp/typeck.cc:10171
+#: cp/typeck.cc:10185
 #, fuzzy, gcc-internal-format
 #| msgid "address of local variable %q+D returned"
 msgid "address of local variable %qD returned"
 msgstr "返回了局部变量的%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 ""
 
-#: cp/typeck.cc:10394
+#: cp/typeck.cc:10408
 #, fuzzy, gcc-internal-format
 #| msgid "too many values in return statement"
 msgid "redundant move in return statement"
 msgstr "返回语句中值太多"
 
-#: cp/typeck.cc:10433
+#: cp/typeck.cc:10447
 #, gcc-internal-format
 msgid "returning a value from a destructor"
 msgstr "析构函数返回值"
 
 #. If a return statement appears in a handler of the
 #. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.cc: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 "构造函数返回值"
 
 #. 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 "在返回%qT的函数中,返回语句不带返回值"
 
-#: cp/typeck.cc:10487
+#: cp/typeck.cc:10501
 #, fuzzy, gcc-internal-format
 msgid "returning initializer list"
 msgstr "<花括号内的初始值列表>"
 
-#: cp/typeck.cc:10506
+#: cp/typeck.cc:10520
 #, gcc-internal-format
 msgid "inconsistent types %qT and %qT deduced for lambda return type"
 msgstr "Lambda 返回类型演绎得到不一致的类型%qT和%qT"
 
-#: cp/typeck.cc:10509
+#: cp/typeck.cc:10523
 #, fuzzy, gcc-internal-format
 #| msgid "inconsistent deduction for %qT: %qT and then %qT"
 msgid "inconsistent deduction for auto return type: %qT and then %qT"
 msgstr "对%qT不一致的演绎:先是%qT然后是%qT"
 
-#: cp/typeck.cc:10544
+#: cp/typeck.cc:10558
 #, fuzzy, gcc-internal-format
 #| msgid "return-statement with no value, in function returning %qT"
 msgid "return-statement with a value, in function returning %qT"
 msgstr "在返回%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)"
 msgid "%<operator new%> must not return NULL unless it is declared %<throw()%> (or %<-fcheck-new%> is in effect)"
 msgstr "%<operator new%>不能返回 NULL,除非它被声明为%<throw()%>(或 -fcheck-new 起作用)"
 
-#: cp/typeck.cc:11219
+#: cp/typeck.cc:11233
 #, fuzzy, gcc-internal-format
 msgid "using rvalue as lvalue"
 msgstr "右值的引用用作左值"
@@ -65432,108 +65646,113 @@ msgstr "标量初始化带花括号"
 msgid "cannot initialize aggregate of type %qT with a compound literal"
 msgstr "无法用复合字面常量初始化类型为%qT的聚集"
 
-#: 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 "成员%qD缺少初始值设定"
 
-#: cp/typeck2.cc:1698
+#: cp/typeck2.cc:1703
 #, gcc-internal-format
 msgid "member %qD is uninitialized reference"
 msgstr "成员%qD是未初始化的引用"
 
-#: cp/typeck2.cc:1705
+#: cp/typeck2.cc:1710
 #, fuzzy, gcc-internal-format
 msgid "member %qD with uninitialized reference fields"
 msgstr "成员%qD是未初始化的引用"
 
-#: cp/typeck2.cc:1783
+#: cp/typeck2.cc:1788
 #, fuzzy, gcc-internal-format
 #| msgid "type of %qD does not match original declaration"
 msgid "designator order for field %qD does not match declaration order in %qT"
 msgstr "类型%qD不匹配原先的声明"
 
-#: cp/typeck2.cc:1856
+#: cp/typeck2.cc:1861
 #, gcc-internal-format
 msgid "no field %qD found in union being initialized"
 msgstr "在初始化的联合中找不到字段%qD"
 
-#: cp/typeck2.cc:1867
+#: cp/typeck2.cc:1872
 #, gcc-internal-format
 msgid "index value instead of field name in union initializer"
 msgstr "在联合初始值设定中出现了索引值而不是字段名"
 
-#: cp/typeck2.cc:2075
+#: cp/typeck2.cc:2080
 #, gcc-internal-format
 msgid "circular pointer delegation detected"
 msgstr "检测到循环指针代理"
 
-#: cp/typeck2.cc:2089
+#: cp/typeck2.cc:2094
 #, gcc-internal-format
 msgid "base operand of %<->%> has non-pointer type %qT"
 msgstr "%<->%>的基操作数具有非指针类型%qT"
 
-#: cp/typeck2.cc:2119
+#: cp/typeck2.cc:2124
 #, gcc-internal-format
 msgid "result of %<operator->()%> yields non-pointer result"
 msgstr "%<operator->()%>的结果给出了非指针的结果"
 
-#: cp/typeck2.cc:2121
+#: cp/typeck2.cc:2126
 #, gcc-internal-format
 msgid "base operand of %<->%> is not a pointer"
 msgstr "%<->%>的左操作数不是一个指针"
 
-#: cp/typeck2.cc:2148
+#: cp/typeck2.cc:2153
 #, gcc-internal-format
 msgid "%qE cannot be used as a member pointer, since it is of type %qT"
 msgstr "%qE不能用作成员指针,因为它的类型为%qT"
 
-#: cp/typeck2.cc:2157
+#: cp/typeck2.cc:2162
 #, gcc-internal-format
 msgid "cannot apply member pointer %qE to %qE, which is of non-class type %qT"
 msgstr "无法将成员指针%qE应用到%qE上,因为后者的类型%qT不是一个类"
 
-#: cp/typeck2.cc:2179
+#: cp/typeck2.cc:2184
 #, gcc-internal-format
 msgid "pointer to member type %qT incompatible with object type %qT"
 msgstr "成员指针类型%qT与对象类型%qT不兼容"
 
-#: cp/typeck2.cc:2237
+#: cp/typeck2.cc:2242
 #, fuzzy, gcc-internal-format
 msgid "pointer-to-member-function type %qT requires an rvalue"
 msgstr "生成非类类型%qT的成员函数指针"
 
-#: cp/typeck2.cc:2248
+#: cp/typeck2.cc:2253
 #, fuzzy, gcc-internal-format
 msgid "pointer-to-member-function type %qT requires an lvalue"
 msgstr "生成非类类型%qT的成员函数指针"
 
-#: 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 "生成非类类型%qT的成员函数指针"
 
-#: cp/typeck2.cc:2297
+#: cp/typeck2.cc:2302
 #, fuzzy, gcc-internal-format
 msgid "functional cast to array type %qT"
 msgstr "从类型%qT到类型%qT的转换无效"
 
-#: cp/typeck2.cc:2313
+#: cp/typeck2.cc:2319
+#, fuzzy, gcc-internal-format
+msgid "%<auto(x)%> cannot be constrained"
+msgstr "不能内联%<main%>函数"
+
+#: cp/typeck2.cc:2324
 #, fuzzy, gcc-internal-format
 msgid "%<auto(x)%> only available with %<-std=c++2b%> or %<-std=gnu++2b%>"
 msgstr "C++0x auto 只在 -std=c++0x 或 -std=gnu++0x 下可用"
 
-#: cp/typeck2.cc:2338
+#: cp/typeck2.cc:2349
 #, fuzzy, gcc-internal-format
 msgid "invalid value-initialization of reference type"
 msgstr "引用类型的非法值初始化"
 
-#: cp/typeck2.cc:2579
+#: cp/typeck2.cc:2590
 #, gcc-internal-format
 msgid "call to function %qD which throws incomplete type %q#T"
 msgstr "调用的函数%qD会抛出不完全的类型%q#T"
 
-#: cp/typeck2.cc:2582
+#: cp/typeck2.cc:2593
 #, gcc-internal-format
 msgid "call to function which throws incomplete type %q#T"
 msgstr "调用的函数会抛出不完全的类型%q#T"
@@ -65666,55 +65885,55 @@ msgstr "从具有类型%qT的右值表达式到类型%qT中的转换无效"
 msgid "cast from %qs to %qs will produce zero result"
 msgstr "从%qT到%qT的转换损失精度"
 
-#: d/d-lang.cc:477
+#: d/d-lang.cc:476
 #, fuzzy, gcc-internal-format
 msgid "bad argument for %<-fdebug%>: %qs"
 msgstr "内建函数实参无效"
 
-#: d/d-lang.cc:532
+#: d/d-lang.cc:531
 #, fuzzy, gcc-internal-format
 msgid "bad argument for %<-fextern-std%>: %qs"
 msgstr "内建函数实参无效"
 
-#: d/d-lang.cc:551
+#: d/d-lang.cc:550
 #, fuzzy, gcc-internal-format
 msgid "bad argument for %<-fmodule-file%>: %qs"
 msgstr "内建函数实参无效"
 
-#: d/d-lang.cc:730
+#: d/d-lang.cc:729
 #, fuzzy, gcc-internal-format
 msgid "bad argument for %<-fversion%>: %qs"
 msgstr "内建函数实参无效"
 
-#: 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 "打开输出文件 %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 "关闭依赖文件 %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 "关闭依赖文件 %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"
@@ -65725,7 +65944,7 @@ msgstr "打开输出文件 %s:%m"
 msgid "D does not support pointers on this target."
 msgstr "堆栈限制在此目标机上不受支持"
 
-#: d/d-target.cc:245
+#: d/d-target.cc:252
 #, gcc-internal-format
 msgid "cannot represent built-in %<va_list%> type in D"
 msgstr ""
@@ -65778,65 +65997,65 @@ msgstr ""
 msgid "%s %qs instantiated"
 msgstr "%C处类型指定无效"
 
-#: d/expr.cc:527
+#: d/expr.cc:528
 #, fuzzy, gcc-internal-format
 #| msgid "cannot handle inconsistent calls to %qs"
 msgid "cannot handle comparison of type %<%s == %s%>"
 msgstr "无法处理对%qs不一致的调用"
 
 #. Static arrays have already been handled by the front-end.
-#: d/expr.cc:1310
+#: d/expr.cc:1319
 #, fuzzy, gcc-internal-format
 #| msgid "unexpected operand"
 msgid "unexpected type for array length: %qs"
 msgstr "非预期的操作数"
 
-#: d/expr.cc:1491
+#: d/expr.cc:1454
 #, fuzzy, gcc-internal-format
 #| msgid "unknown TLS model %qs"
 msgid "don%'t know how to delete %qs"
 msgstr "未知的 TLS 模型 %qs"
 
-#: d/expr.cc:1515
+#: d/expr.cc:1478
 #, fuzzy, gcc-internal-format
 msgid "%qs is not an associative array"
 msgstr "%qD不是一个变量"
 
-#: 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通常不是一个静态函数"
 
-#: d/expr.cc:1940
+#: d/expr.cc:1910
 #, fuzzy, gcc-internal-format
 #| msgid "%qs is not valid for %qs"
 msgid "%qs is not a field, but a %qs"
 msgstr "%qs对%qs而言无效"
 
-#: d/expr.cc:2204
+#: d/expr.cc:2174
 #, fuzzy, gcc-internal-format
 msgid "recursive reference %qs"
 msgstr "与先前的声明%q+D不同"
 
-#: 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 "常量表达式溢出"
 
-#: d/expr.cc:3044
+#: d/expr.cc:3014
 #, fuzzy, gcc-internal-format
 #| msgid "%qE is not a constant expression"
 msgid "%qs is not an expression"
 msgstr "%qE不是一个常量表达式"
 
-#: d/expr.cc:3051
+#: d/expr.cc:3021
 #, fuzzy, gcc-internal-format
 #| msgid "%qE is not a constant expression"
 msgid "type %qs is not an expression"
@@ -65911,7 +66130,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 "C++ 不允许在%qs表达式中定义类型"
@@ -66167,9 +66386,9 @@ msgstr "%C处的任何引用都不能多于 %d 维"
 #: 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
 #, fuzzy, gcc-internal-format
 msgid "Coarrays disabled at %C, use %<-fcoarray=%> to enable"
 msgstr "集合数组在%C处被禁用,使用 -fcoarray= 来启用"
@@ -66337,7 +66556,7 @@ msgstr "程序使用 C 风格的类型转换时给出警告"
 msgid "Array constructor including type specification at %C"
 msgstr "Fortran 2003:%C处包含类型规格的数组构造"
 
-#: 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 "数组‘%s’在%L处不能有延迟的外形"
@@ -66452,7 +66671,7 @@ msgstr "名字列表 %s 不能为对 %s 的 USE 关联来更名"
 msgid "Arguments of %qs at %L and %L cannot both be BOZ literal constants"
 msgstr "‘我’于 %L 和‘J’于 %L 无法两者是 BOZ 实字常数"
 
-#: 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 "%2$C处 DATA 语句初始值设定 %1$s 无效"
@@ -67550,12 +67769,12 @@ msgstr ""
 msgid "Initialization string at %L was truncated to fit the variable (%ld/%ld)"
 msgstr "初始化字符串被截断,以匹配%L处的变量"
 
-#: fortran/data.cc:188 fortran/resolve.cc:5169
+#: fortran/data.cc:188 fortran/resolve.cc:5187
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L is less than one"
 msgstr "%L处的子字符串起始索引小于 1"
 
-#: fortran/data.cc:194 fortran/resolve.cc:5199
+#: fortran/data.cc:194 fortran/resolve.cc:5217
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L exceeds the string length"
 msgstr "%L处的子字符串终止索引超过了字符串长度"
@@ -67597,14 +67816,14 @@ msgstr "%L处 DATA 语句简化子串引用时失败"
 msgid "Nonpointer object %qs with default initialization shall not appear in a DATA statement at %L"
 msgstr "%2$C处有初始值设定的变量‘%1$s’已经出现在一个 DATA 语句中"
 
-#: 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 "gimplification failed"
 msgid "Simplification error"
 msgstr "gimplification 失败"
 
-#: fortran/data.cc:833
+#: fortran/data.cc:837
 #, gcc-internal-format
 msgid "TODO: Vector sections in data statements"
 msgstr ""
@@ -67755,7 +67974,7 @@ msgstr "%C处错误的 INTENT 规格"
 msgid "deferred type parameter at %C"
 msgstr "%C处重复的 DEFERRED 语句"
 
-#: fortran/decl.cc:1158 fortran/resolve.cc:12594
+#: fortran/decl.cc:1158 fortran/resolve.cc:12623
 #, gcc-internal-format, gfc-internal-format
 msgid "Scalar INTEGER expression expected at %L"
 msgstr ""
@@ -69637,12 +69856,12 @@ msgstr "需要表达式类型"
 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 "gfc_trans_code():错误的语句代码"
 
-#: 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 to a pointer type"
 msgid "Cannot convert %qs to interoperable type at %L"
@@ -69706,421 +69925,427 @@ msgstr ""
 msgid "Index in dimension %d is out of bounds at %L"
 msgstr "%2$L处第 %1$d 维下标越界"
 
-#: fortran/expr.cc:1586 fortran/expr.cc:1637
+#: fortran/expr.cc:1586 fortran/expr.cc:1639
 #, gcc-internal-format, gfc-internal-format
 msgid "index in dimension %d is out of bounds at %L"
 msgstr "%2$L处第 %1$d 维下标越界"
 
-#: fortran/expr.cc:1713
+#: fortran/expr.cc:1715
 #, fuzzy, 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 "%L处数组构造函数中的元素数超过容许的上限 %d。请参见 -fmax-array-constructor 选项"
 
-#: 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 "%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 "初始化不允许出现在%C处的 PURE 过程中"
 
-#: 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 "初始化不允许出现在%C处的 PURE 过程中"
 
-#: fortran/expr.cc:1850
+#: fortran/expr.cc:1858
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "RE part_ref at %C"
 msgstr "初始化不允许出现在%C处的 PURE 过程中"
 
-#: fortran/expr.cc:1862
+#: fortran/expr.cc:1870
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "IM part_ref at %C"
 msgstr "初始化不允许出现在%C处的 PURE 过程中"
 
-#: fortran/expr.cc:2509
+#: fortran/expr.cc:2517
 #, gcc-internal-format, gfc-internal-format
 msgid "elemental function arguments at %C are not compliant"
 msgstr "%C处基本函数的实参不兼容"
 
-#: fortran/expr.cc:2553
+#: fortran/expr.cc:2561
 #, gcc-internal-format, gfc-internal-format
 msgid "Numeric or CHARACTER operands are required in expression at %L"
 msgstr "%L处的表达式中需要数字或 CHARACTER 操作数"
 
-#: fortran/expr.cc:2578
+#: fortran/expr.cc:2586
 #, gcc-internal-format, gfc-internal-format
 msgid "Concatenation operator in expression at %L must have two CHARACTER operands"
 msgstr "%L处表达式中的毗连运算符必须有两个 CHARACTER 操作数"
 
-#: fortran/expr.cc:2585
+#: fortran/expr.cc:2593
 #, gcc-internal-format, gfc-internal-format
 msgid "Concat operator at %L must concatenate strings of the same kind"
 msgstr "%L处的毗连运算符必须毗连同一种别的字符串"
 
-#: fortran/expr.cc:2595
+#: fortran/expr.cc:2603
 #, gcc-internal-format, gfc-internal-format
 msgid ".NOT. operator in expression at %L must have a LOGICAL operand"
 msgstr "%L处的表达式中的 .NOT. 运算符必须带 LOGICAL 操作数"
 
-#: fortran/expr.cc:2611
+#: fortran/expr.cc:2619
 #, gcc-internal-format, gfc-internal-format
 msgid "LOGICAL operands are required in expression at %L"
 msgstr "%L处的表达式需要 LOGICAL 操作数"
 
-#: fortran/expr.cc:2622
+#: fortran/expr.cc:2630
 #, gcc-internal-format, gfc-internal-format
 msgid "Only intrinsic operators can be used in expression at %L"
 msgstr "%L处只有内建运算符才能用于表达式中"
 
-#: fortran/expr.cc:2630
+#: fortran/expr.cc:2638
 #, gcc-internal-format, gfc-internal-format
 msgid "Numeric operands are required in expression at %L"
 msgstr "%L处的表达式需要数字操作数"
 
-#: 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 "%2$L处结构构造函数中 ALLOCATABLE 组件‘%1$s’的初始化表达式无效"
 
-#: 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 "%2$L处常量表达式中有假定字符长度变量‘%1$s’"
 
-#: 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 "%2$L 处初始化表达式中的函数 ‘%1$qs’ 必须是一个内建函数"
 
-#: fortran/expr.cc:2896
+#: fortran/expr.cc:2904
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Evaluation of nonstandard initialization expression at %L"
 msgstr "必须为%L处的 ASYNCHRONOUS= 指定一个初始化表达式"
 
-#: fortran/expr.cc:2973 fortran/resolve.cc:2790
+#: fortran/expr.cc:2981 fortran/resolve.cc:2808
 #, gcc-internal-format
 msgid "Function %qs in initialization expression at %L must be an intrinsic function"
 msgstr "%2$L 处初始化表达式中的函数 ‘%1$qs’ 必须是一个内建函数"
 
-#: 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 "%2$L 处初始化表达式中的函数 ‘%1$qs’ 必须是一个内建函数"
 
-#: 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 "%2$L处 PARAMETER‘%1$s’在其定义完全之前被使用"
 
-#: 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 "%2$L处的假定大小数组‘%1$s’不能用在初始化表达式中"
 
-#: 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 "%2$L处假定外形数组‘%1$s’不能用在初始化表达式中"
 
-#: 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 "%2$L处假定外形数组‘%1$s’不能用在初始化表达式中"
 
-#: 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 "%2$L处的延迟数组‘%1$s’不允许出现在初始化表达式中"
 
-#: 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 "%2$L处数组‘%1$s’是个变量,不能被归约为常量表达式"
 
-#: 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 "%2$L处假定外形数组‘%1$s’不能用在初始化表达式中"
 
-#: 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 "参数’%s在%L处尚未声明或者是一个不能被归约为常量表达式的变量"
 
-#: fortran/expr.cc:3139
+#: fortran/expr.cc:3147
 #, fuzzy, gcc-internal-format
 msgid "check_init_expr(): Unknown expression type"
 msgstr "需要表达式类型"
 
-#: fortran/expr.cc:3274
+#: fortran/expr.cc:3282
 #, fuzzy, gcc-internal-format
 msgid "Specification function %qs at %L cannot be a statement function"
 msgstr "%2$L处规格函数‘%1$s’不能是一个语句函数"
 
-#: fortran/expr.cc:3281
+#: fortran/expr.cc:3289
 #, fuzzy, gcc-internal-format
 msgid "Specification function %qs at %L cannot be an internal function"
 msgstr "%2$L处规格函数‘%1$s’不能是一个内部函数"
 
-#: fortran/expr.cc:3288
+#: fortran/expr.cc:3296
 #, fuzzy, gcc-internal-format
 msgid "Specification function %qs at %L must be PURE"
 msgstr "%2$L 处初始化表达式中的函数 ‘%1$qs’ 必须是一个内建函数"
 
-#: fortran/expr.cc:3296
+#: fortran/expr.cc:3304
 #, fuzzy, gcc-internal-format
 msgid "Specification function %qs at %L cannot be RECURSIVE"
 msgstr "%2$L处规格函数‘%1$s’不能是 RECURSIVE"
 
-#: fortran/expr.cc:3443
+#: fortran/expr.cc:3451
 #, fuzzy, gcc-internal-format
 msgid "Dummy argument %qs not allowed in expression at %L"
 msgstr "虚参‘%s’不能出现在%L处的表达式中"
 
-#: fortran/expr.cc:3451
+#: fortran/expr.cc:3459
 #, fuzzy, gcc-internal-format
 msgid "Dummy argument %qs at %L cannot be OPTIONAL"
 msgstr "%L处运算符接口的第一个参数不能是可选的"
 
-#: fortran/expr.cc:3458
+#: fortran/expr.cc:3466
 #, fuzzy, gcc-internal-format
 msgid "Dummy argument %qs at %L cannot be INTENT(OUT)"
 msgstr "%2$L处的‘%1$s’虚参不能是 INTENT(OUT)"
 
-#: fortran/expr.cc:3487
+#: fortran/expr.cc:3495
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs cannot appear in the expression at %L"
 msgstr "变量‘%s’不能出现在%L处的表达式中"
 
-#: fortran/expr.cc:3518
+#: fortran/expr.cc:3526
 #, fuzzy, gcc-internal-format
 msgid "check_restricted(): Unknown expression type"
 msgstr "需要表达式类型"
 
-#: fortran/expr.cc:3538
+#: fortran/expr.cc:3546
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression at %L must be of INTEGER type, found %s"
 msgstr "%L处的表达式必须具有 INTEGER 类型而不是 %s"
 
-#: fortran/expr.cc:3550
+#: fortran/expr.cc:3558
 #, fuzzy, gcc-internal-format
 msgid "Function %qs at %L must be PURE"
 msgstr "%L处内建运算符接口必须是一个 FUNCTION"
 
-#: fortran/expr.cc:3559
+#: fortran/expr.cc:3567
 #, gcc-internal-format, gfc-internal-format
 msgid "Expression at %L must be scalar"
 msgstr "%L处的表达式必须具有标量类型"
 
 #. 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
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible ranks in %s (%d and %d) at %L"
 msgstr "%4$L%1$s 中秩(%2$d 和 %3$d)不兼容"
 
-#: fortran/expr.cc:3609
+#: fortran/expr.cc:3617
 #, gcc-internal-format, gfc-internal-format
 msgid "Different shape for %s at %L on dimension %d (%d and %d)"
 msgstr "%2$L处 %1$s 在第 %3$d 维上外形不同(%4$d 和 %5$d)"
 
-#: 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 "不能在%2$C处的 PURE 过程中读取变量‘%1$s’"
 
-#: fortran/expr.cc:3713
+#: fortran/expr.cc:3721
 #, gcc-internal-format
 msgid "%qs at %L is not a VALUE"
 msgstr "%2$L 处的 %1$qs 不是一个 VALUE"
 
-#: fortran/expr.cc:3724
+#: fortran/expr.cc:3732
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Illegal stride of zero at %L"
 msgid "Illegal assignment to external procedure at %L"
 msgstr "%L 零间隔非法"
 
-#: 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 "赋值中有不兼容的秩 %d 和 %d,位于 %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 "%L处赋值中的变量类型是 UNKNOWN"
 
-#: fortran/expr.cc:3751
+#: fortran/expr.cc:3759
 #, gcc-internal-format, gfc-internal-format
 msgid "NULL appears on right-hand side in assignment at %L"
 msgstr "%L处赋值右手边出现 NULL"
 
-#: 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 "%L处赋值右手边出现值为 POINTER 的函数"
 
-#: 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 "%L处指针赋值时参数种别类型不同"
 
-#: 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 "%L处 DATA 语句中类型不兼容;试图从 %s 转换到 %s"
 
-#: fortran/expr.cc:3885
+#: fortran/expr.cc:3893
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target is not a POINTER at %L"
 msgstr "%L处指针赋值的目标不是一个 POINTER"
 
-#: fortran/expr.cc:3893
+#: fortran/expr.cc:3901
 #, fuzzy, gcc-internal-format
 msgid "%qs in the pointer assignment at %L cannot be an l-value since it is a procedure"
 msgstr "%2$L处指针赋值中的‘%1$s’不能是一个左值,因为它是一个过程"
 
-#: fortran/expr.cc:3917
+#: fortran/expr.cc:3925
 #, fuzzy, gcc-internal-format
 msgid "Expected bounds specification for %qs at %L"
 msgstr "%2$L处‘%1$s’需要边界规格"
 
-#: fortran/expr.cc:3922
+#: fortran/expr.cc:3930
 #, fuzzy, gcc-internal-format
 msgid "Bounds specification for %qs in pointer assignment at %L"
 msgstr "Fortran 2003:%2$L处指针赋值语句中‘%1$s’的边界规格"
 
-#: fortran/expr.cc:3951
+#: fortran/expr.cc:3959
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Stride must not be present at %L"
 msgstr "%L 零间隔非法"
 
-#: 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 "外部对象‘%s’在%L处不能有初始值设定"
 
-#: fortran/expr.cc:4032
+#: fortran/expr.cc:4040
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid procedure pointer assignment at %L"
 msgstr "%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 "语句函数‘%s’在%L处的过程指针赋值中是非法的"
 
-#: 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 "抽象接口‘%s’在%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 "语句函数‘%s’在%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 "内部过程‘%s’在%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 "%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 "内部过程‘%s’在%L处的过程指针赋值中是非法的"
 
-#: fortran/expr.cc:4120
+#: fortran/expr.cc:4128
 #, gcc-internal-format, gfc-internal-format
 msgid "Mismatch in the procedure pointer assignment at %L: mismatch in the calling convention"
 msgstr "%L处过程指针赋值不匹配:调用约定不匹配"
 
-#: fortran/expr.cc:4173
+#: fortran/expr.cc:4181
 #, fuzzy, gcc-internal-format
 #| msgid "Interface mismatch in procedure pointer assignment at %L: %s"
 msgid "Interface mismatch in procedure pointer assignment at %L: %qs is not a subroutine"
 msgstr "%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 "%C处需要 NOPASS 或显式接口"
 
-#: 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 "%C处需要 NOPASS 或显式接口"
 
-#: 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 "%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 is not a POINTER at %L"
 msgid "Pointer assignment target cannot be a constant at %L"
 msgstr "%L处指针赋值的目标不是一个 POINTER"
 
-#: 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 "%L处指针赋值时类型不同;试图将 %s 赋值给 %s"
 
-#: fortran/expr.cc:4265
+#: fortran/expr.cc:4273
 #, gcc-internal-format, gfc-internal-format
 msgid "Different kind type parameters in pointer assignment at %L"
 msgstr "%L处指针赋值时参数种别类型不同"
 
-#: fortran/expr.cc:4272
+#: fortran/expr.cc:4280
 #, gcc-internal-format, gfc-internal-format
 msgid "Different ranks in pointer assignment at %L"
 msgstr "%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 "分级重新映射目标是小于大小的指标 (%ld<%ld) 于 %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 "分级重新映射目标必须是分级 1 或仅需 contiguous 于 %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 "Fortran 2008:%L处格式中的‘G0’"
@@ -70128,187 +70353,187 @@ msgstr "Fortran 2008:%L处格式中的‘G0’"
 #. 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 "%L处数据传输元素不能有 POINTER 组件"
 
-#: 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 "%L处计算转移 GOTO 语句的选择表达式必须是一个标量整数表达式"
 
-#: 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 "%L 处指针赋值目标对象有 PROTECTED 属性"
 
-#: 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 "必须为%L处的 ASYNCHRONOUS= 指定一个初始化表达式"
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target is neither TARGET nor POINTER at %L"
 msgstr "%L处指针赋值的目标既不是 TARGET 也不是 POINTER"
 
-#: fortran/expr.cc:4429
+#: fortran/expr.cc:4437
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad target in pointer assignment in PURE procedure at %L"
 msgstr "%L处 PURE 过程中指针赋值目标错误"
 
-#: fortran/expr.cc:4438
+#: fortran/expr.cc:4446
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment with vector subscript on rhs at %L"
 msgstr "%L处指针赋值的右手边带有向量下标"
 
-#: fortran/expr.cc:4446
+#: fortran/expr.cc:4454
 #, gcc-internal-format, gfc-internal-format
 msgid "Pointer assignment target has PROTECTED attribute at %L"
 msgstr "%L处指针赋值目标对象有 PROTECTED 属性"
 
-#: 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 "%L处指针赋值的目标既不是 TARGET 也不是 POINTER"
 
-#: 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 "%L处的分配对象必须是 ALLOCATABLE 或 POINTER"
 
-#: 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 "%L 处指针赋值目标对象有 PROTECTED 属性"
 
-#: 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 "%2$L 处的对象“%1$s”对于成分的默认初始化必须有 SAVE 属性,"
 
-#: 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 "%L处 PURE 过程中指针赋值目标错误"
 
-#: 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 "内部过程‘%s’在%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 "内部过程‘%s’在%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 "Fortran 2003:%L处初始化表达式中非整数指数"
 
-#: 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 "Non-variable 运算式在中变量定义语境 (%s) 于 %L"
 
-#: fortran/expr.cc:6225
+#: fortran/expr.cc:6233
 #, fuzzy, gcc-internal-format
 msgid "Named constant %qs in variable definition context (%s) at %L"
 msgstr "变量‘%s’在%L处上下文中必须是常量"
 
-#: 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 "%L处的属性不允许出现在 TYPE 定义中"
 
-#: 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 "Non-POINTER 在中指标关联语境 (%s) 于 %L"
 
-#: 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 "变量‘%s’在%L处上下文中必须是常量"
 
-#: 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 "变量‘%s’在%L处上下文中必须是常量"
 
-#: 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 "变量‘%s’在%L处上下文中必须是常量"
 
-#: 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 "变量‘%s’在%L处上下文中必须是常量"
 
-#: 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 "虚参‘%s’不能出现在%L处的表达式中"
 
-#: 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 "虚参‘%s’不能出现在%L处的表达式中"
 
-#: 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 "变量‘%s’不能出现在%L处的表达式中"
 
-#: 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 "变量‘%s’不能出现在%L处的表达式中"
 
-#: 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 "变量‘%s’不能出现在%L处的表达式中"
 
-#: 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 "变量‘%s’在%L处上下文中必须是常量"
 
-#: 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 "变量‘%s’不能出现在%L处的表达式中"
 
-#: 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 "Associate-name‘%s’无法出现在中变量定义语境 (%s) 于 %L 因为它的目标于 %L 无法,还是"
 
-#: 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 "‘%s’于 %L 关联的到运算式无法已用于变量定义语境 (%s)"
@@ -70331,8 +70556,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
 #, gcc-internal-format, gfc-internal-format
 msgid "Creating array temporary at %L"
 msgstr "在%L处建立临时数组"
@@ -70364,72 +70589,72 @@ msgstr "错误的移动"
 msgid "illegal OP in optimize_comparison"
 msgstr "gimple 比较中操作数无效"
 
-#: 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 "变量‘%s’(位于 %C)不能在从 %L 开始的循环的内部重定义"
 
-#: 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 "变量‘%s’(位于 %C)不能在从 %L 开始的循环的内部重定义"
 
-#: 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 "变量‘%s’(位于 %C)不能在从 %L 开始的循环的内部重定义"
 
-#: 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 "变量‘%s’(位于 %C)不能在从 %L 开始的循环的内部重定义"
 
-#: 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 "%1$L处数组引用在第 %4$d 维中越界(%2$ld < %3$ld)"
 
-#: 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 "%1$L处数组引用在第 %4$d 维中越界(%2$ld < %3$ld)"
 
-#: 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 "变量‘%s’(位于 %C)不能在从 %L 开始的循环的内部重定义"
 
-#: 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 "变量‘%s’(位于 %C)不能在从 %L 开始的循环的内部重定义"
 
-#: 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 "循环变量"
 
-#: fortran/frontend-passes.cc:5838
+#: fortran/frontend-passes.cc:5839
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "comparison between %qT and %qT"
 msgid "%s between %L and %L"
@@ -70550,12 +70775,12 @@ msgstr "%L处定义赋值的第一个参数必须是 INTENT(OUT) 或 INTENT(INOU
 msgid "Second argument of defined assignment at %L must be INTENT(IN)"
 msgstr "%L处定义赋值的第二个参数必须是 INTENT(IN)"
 
-#: fortran/interface.cc:987 fortran/resolve.cc:17351
+#: fortran/interface.cc:987 fortran/resolve.cc:17380
 #, gcc-internal-format, gfc-internal-format
 msgid "First argument of operator interface at %L must be INTENT(IN)"
 msgstr "%L处运算符接口的第一个参数必须是 INTENT(IN)"
 
-#: fortran/interface.cc:994 fortran/resolve.cc:17369
+#: fortran/interface.cc:994 fortran/resolve.cc:17398
 #, gcc-internal-format, gfc-internal-format
 msgid "Second argument of operator interface at %L must be INTENT(IN)"
 msgstr "%L处运算符接口的第二个参数必须是 INTENT(IN)"
@@ -71259,7 +71484,7 @@ msgstr ""
 
 #: fortran/intrinsic.cc:1184
 #, fuzzy, 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 "%2$L处内建的‘%1$s’不包含在选中的标准中,但是 %3$s 和‘%4$s’将按声明为 EXTERNAL 来处理。使用一个适当的 -std=* 选项或定义 -fall-intrinsics 以允许这个建函数。"
 
 #: fortran/intrinsic.cc:1219
@@ -71397,7 +71622,7 @@ msgstr "从 %s 转换到 %s,位于 %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 "Can't convert %s to %s at %L"
 msgid "Cannot convert %s to %s at %L"
@@ -71882,7 +72107,7 @@ msgstr "%L处的 CLOSE 语句需要一个 UNIT 数"
 msgid "UNIT number in CLOSE statement at %L must be non-negative"
 msgstr "%L处 CLOSE 语句中的 UNIT 数必须是非负的"
 
-#: 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 语句不允许出现在%C处的 PURE 程序中"
@@ -71979,7 +72204,7 @@ msgstr "名称表列‘%s’在中读取叙述于 %L 含有符号‘%s’该项
 msgid "NAMELIST object %qs in namelist %qs at %L is polymorphic and requires a defined input/output procedure"
 msgstr "%3$L处 NAMELIST 数组对象‘%1$s’在名字列表‘%2$s’不能有 POINTER 组件"
 
-#: 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 "%3$L处 NAMELIST 数组对象‘%1$s’在名字列表‘%2$s’必须有 ALLOCATABLE 组件"
@@ -72492,416 +72717,427 @@ msgstr "%C处的 EXIT 语句终结了 !$OMP DO 循环"
 msgid "CYCLE statement at %C to non-innermost collapsed !$OMP DO loop"
 msgstr "%C处的 EXIT 语句终结了 !$OMP DO 循环"
 
-#: fortran/match.cc:3020
+#: fortran/match.cc:3034
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "lvalue required in asm statement"
 msgid "Blank required in %s statement near %C"
 msgstr "asm 语句中需要左值"
 
-#: fortran/match.cc:3038
+#: fortran/match.cc:3057
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %C cannot be negative"
 msgstr "%L处的表达式必须具有标量类型"
 
-#: fortran/match.cc:3044
+#: fortran/match.cc:3063
 #, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %C contains too many digits"
 msgstr ""
 
-#: fortran/match.cc:3065
+#: fortran/match.cc:3079
+#, fuzzy, gcc-internal-format, gfc-internal-format
+msgid "QUIET= specifier for %s at %L"
+msgstr "不能为%C处的 NEWUNIT 指定 UNIT"
+
+#: fortran/match.cc:3093
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C in PURE procedure"
 msgstr "%s 语句不允许出现在%C处的 PURE 程序中"
 
-#: 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 "影像控制叙述停止于 %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 "PRINT 语句不允许出现在%C处的 PURE 过程中"
 
-#: 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 "%L处 SELECT 语句中的实参必须为标量"
 
-#: 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 "%L处的 UNIT 规格必须是 INTEGER 表达式或一个 CHARACTER 变量"
 
-#: fortran/match.cc:3124
+#: fortran/match.cc:3152
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "STOP code at %L must be scalar"
 msgstr "%L处的表达式必须具有标量类型"
 
-#: 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 "停止编码于 %L 必须是缺省字符 KIND=%d"
 
-#: 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 "%C处 Cray 指针必须是一个整数"
 
-#: fortran/match.cc:3186
+#: fortran/match.cc:3178 fortran/resolve.cc:11973
+#, fuzzy, gcc-internal-format, gfc-internal-format
+#| msgid "ASYNCHRONOUS= specifier at %L must be an initialization expression"
+msgid "QUIET specifier at %L must be a scalar LOGICAL"
+msgstr "必须为%L处的 ASYNCHRONOUS= 指定一个初始化表达式"
+
+#: fortran/match.cc:3228
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "PAUSE statement at %C"
 msgstr " 暂停   "
 
-#: fortran/match.cc:3207
+#: fortran/match.cc:3249
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ERROR STOP statement at %C"
 msgstr "%C处的 VOLATILE 语句语法错误"
 
-#: 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 语句不允许出现在%C处的 PURE 程序中"
 
-#: 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 "PRINT 语句不允许出现在%C处的 PURE 过程中"
 
-#: 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 "PRINT 语句不允许出现在%C处的 PURE 过程中"
 
-#: 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 "
 msgid "Redundant STAT tag found at %L"
 msgstr "%L处有多余的 STAT 标记"
 
-#: 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 "
 msgid "Redundant ERRMSG tag found at %L"
 msgstr "%L有多余的 ERRMSG 标记"
 
-#: fortran/match.cc:3327
+#: fortran/match.cc:3369
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Redundant STAT tag found at %L "
 msgid "Redundant UNTIL_COUNT tag found at %L"
 msgstr "%L处有多余的 STAT 标记"
 
-#: fortran/match.cc:3393
+#: fortran/match.cc:3435
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "EVENT POST statement at %C"
 msgstr "%C处的 ENTRY 语句不能出现在 BLOCK DATA 中"
 
-#: fortran/match.cc:3403
+#: fortran/match.cc:3445
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "EVENT WAIT statement at %C"
 msgstr "%C处的 ENTRY 语句不能出现在 BLOCK DATA 中"
 
-#: fortran/match.cc:3415
+#: fortran/match.cc:3457
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FAIL IMAGE statement at %C"
 msgstr "%C处 VALUE 语句语法错误"
 
-#: fortran/match.cc:3439
+#: fortran/match.cc:3481
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FORM TEAM statement at %C"
 msgstr "%C处 IMPORT 语句只允许出现在接口体中"
 
-#: fortran/match.cc:3478
+#: fortran/match.cc:3520
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "CHANGE TEAM statement at %C"
 msgstr "未定义 C++ 基类"
 
-#: fortran/match.cc:3508
+#: fortran/match.cc:3550
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "END TEAM statement at %C"
 msgstr "%C处的 ENTRY 语句不能出现在 BLOCK DATA 中"
 
-#: fortran/match.cc:3532
+#: fortran/match.cc:3574
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "SYNC TEAM statement at %C"
 msgstr "%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 语句不允许出现在%C处的 PURE 程序中"
 
-#: 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 "PRINT 语句不允许出现在%C处的 PURE 过程中"
 
-#: 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 "PRINT 语句不允许出现在%C处的 PURE 过程中"
 
-#: fortran/match.cc:3669
+#: fortran/match.cc:3711
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Redundant ACQUIRED_LOCK tag found at %L"
 msgstr "%L有多余的 ERRMSG 标记"
 
-#: fortran/match.cc:3734
+#: fortran/match.cc:3776
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "LOCK statement at %C"
 msgstr "%C处的语句标号为零"
 
-#: fortran/match.cc:3744
+#: fortran/match.cc:3786
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "UNLOCK statement at %C"
 msgstr "无法解锁内存。\n"
 
-#: 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 "PRINT 语句不允许出现在%C处的 PURE 过程中"
 
-#: fortran/match.cc:3775
+#: fortran/match.cc:3817
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "SYNC statement at %C"
 msgstr "%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 "影像控制叙述同步于 %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 "PRINT 语句不允许出现在%C处的 PURE 过程中"
 
-#: fortran/match.cc:3973
+#: fortran/match.cc:4015
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ASSIGN statement at %C"
 msgstr "无法赋值给%C处的有名常量"
 
-#: fortran/match.cc:4017
+#: fortran/match.cc:4059
 #, gcc-internal-format, gfc-internal-format
 msgid "Assigned GOTO statement at %C"
 msgstr "%C 处赋值 GOTO 语句"
 
-#: fortran/match.cc:4061 fortran/match.cc:4112
+#: fortran/match.cc:4103 fortran/match.cc:4154
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement label list in GOTO at %C cannot be empty"
 msgstr "%C处 GOTO 中的语句标号列表不能为空"
 
-#: fortran/match.cc:4122
+#: fortran/match.cc:4164
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Computed GOTO at %C"
 msgstr "ISO C++ 不允许计算转移"
 
-#: fortran/match.cc:4197
+#: fortran/match.cc:4239
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Error in type-spec at %L"
 msgstr "%C处类型指定无效"
 
-#: fortran/match.cc:4210
+#: fortran/match.cc:4252
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "typespec in ALLOCATE at %L"
 msgstr "Fortran 2003:%L处 ALLOCATE 中有 typespec"
 
-#: fortran/match.cc:4233
+#: fortran/match.cc:4275
 #, gcc-internal-format, gfc-internal-format
 msgid "The type parameter spec list in the type-spec at %L cannot contain DEFERRED parameters"
 msgstr ""
 
-#: fortran/match.cc:4263 fortran/match.cc:4700
+#: fortran/match.cc:4305 fortran/match.cc:4742
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Unexpected %s statement at %C"
 msgid "Unexpected constant at %C"
 msgstr "%2$C处有非预期的 %1$s 语句"
 
-#: fortran/match.cc:4273
+#: fortran/match.cc:4315
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad allocate-object at %C for a PURE procedure"
 msgstr "%C处 PURE 过程中分配对象错误"
 
-#: fortran/match.cc:4288
+#: fortran/match.cc:4330
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Illegal allocate-object at %C for a PURE procedure"
 msgid "Incompatible allocate-object at %C for CHARACTER type-spec at %L"
 msgstr "%C处 PURE 过程中的分配对象非法"
 
-#: 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 "配置的 coarray 于 %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 "配置的 coarray 于 %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 "%C处的分配对象不是一个非过程指针或可分配的变量"
 
-#: fortran/match.cc:4349
+#: fortran/match.cc:4391
 #, gcc-internal-format, gfc-internal-format
 msgid "Type of entity at %L is type incompatible with typespec"
 msgstr "%L处实体类型与 typepec 类型不兼容"
 
-#: fortran/match.cc:4357
+#: fortran/match.cc:4399
 #, gcc-internal-format, gfc-internal-format
 msgid "Kind type parameter for entity at %L differs from the kind type parameter of the typespec"
 msgstr "%L实体的种别类型参数与类型限定中的种别类型参数不同"
 
-#: fortran/match.cc:4374
+#: fortran/match.cc:4416
 #, gcc-internal-format, gfc-internal-format
 msgid "Shape specification for allocatable scalar at %C"
 msgstr "%C处可分配标量的外形规格说明"
 
-#: 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 "%C处的循环变量不能是一个子组件"
 
-#: fortran/match.cc:4417
+#: fortran/match.cc:4459
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG tag at %L"
 msgstr "%L有多余的 ERRMSG 标记"
 
-#: fortran/match.cc:4440
+#: fortran/match.cc:4482
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "SOURCE tag at %L"
 msgstr "%L处的 SOURCE 标记与%L处的类型指定冲突"
 
-#: fortran/match.cc:4446
+#: fortran/match.cc:4488
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Redundant SOURCE tag found at %L "
 msgid "Redundant SOURCE tag found at %L"
 msgstr "%L有多余的 SOURCE 标记"
 
-#: fortran/match.cc:4453
+#: fortran/match.cc:4495
 #, gcc-internal-format, gfc-internal-format
 msgid "SOURCE tag at %L conflicts with the typespec at %L"
 msgstr "%L处的 SOURCE 标记与%L处的类型指定冲突"
 
-#: fortran/match.cc:4459
+#: fortran/match.cc:4501
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "SOURCE tag at %L with more than a single allocate object"
 msgstr "%L处的 SOURCE 标记在分配列表中只需要一个单独的实体"
 
-#: fortran/match.cc:4477
+#: fortran/match.cc:4519
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "MOLD tag at %L"
 msgstr "%s 标记在%L处必须是标量"
 
-#: fortran/match.cc:4483
+#: fortran/match.cc:4525
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Redundant MOLD tag found at %L"
 msgstr "%L处有多余的 STAT 标记"
 
-#: 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 "%L处的 SOURCE 标记与%L处的类型指定冲突"
 
-#: 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 "%L处的 SOURCE 标记与%L处的类型指定冲突"
 
-#: 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 "Allocate-object 于 %L 与已推迟类型参数需求还是 type-spec 或来源标签或铸型标签"
 
-#: fortran/match.cc:4536
+#: fortran/match.cc:4578
 #, fuzzy, 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 "Allocate-object 于 %L 与已推迟类型参数需求还是 type-spec 或来源标签或铸型标签"
 
-#: 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 "外部对象‘%s’在%L处不能有初始值设定"
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "Illegal allocate-object at %C for a PURE procedure"
 msgstr "%C处 PURE 过程中的分配对象非法"
 
-#: 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 "取消配置的 coarray 于 %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 "取消配置的 coarray 于 %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 "%C处的分配对象不是一个非过程指针或可分配的变量"
 
-#: fortran/match.cc:4782
+#: fortran/match.cc:4824
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ERRMSG at %L"
 msgstr "%L处的 ERRMSG 没有 STAT 标记所以不起作用"
 
-#: 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 "影像控制叙述返回于 %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 "PRINT 语句不允许出现在%C处的 PURE 过程中"
 
-#: fortran/match.cc:4854
+#: fortran/match.cc:4896
 #, gcc-internal-format, gfc-internal-format
 msgid "Alternate RETURN statement at %C is only allowed within a SUBROUTINE"
 msgstr "%C处的替代 RETURN 语句只允许出现在 SUBROUTINE 中"
 
-#: fortran/match.cc:4885
+#: fortran/match.cc:4927
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "RETURN statement in main program at %C"
 msgstr "%C处 PROGRAM 语句格式无效"
 
-#: fortran/match.cc:4913
+#: fortran/match.cc:4955
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected component reference at %C"
 msgstr "%C处需要组件引用"
 
-#: fortran/match.cc:4922
+#: fortran/match.cc:4964
 #, gcc-internal-format, gfc-internal-format
 msgid "Junk after CALL at %C"
 msgstr "%C处在 CALL 以后有垃圾字符"
 
-#: 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 "%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
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in common block name at %C"
 msgstr "%C处公共块名语法错误"
@@ -72909,58 +73145,58 @@ msgstr "%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 '%s' at %L in common block '%s' at %C must be declared with a C interoperable kind since common block '%s' is bind(c)"
 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 "%4$C处公共块‘%3$s’中的%2$L处的变量‘%1$s’必须声明为有与 C 可互操作的种别,因为公共块‘%5$s’是 bind(c)"
 
-#: 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 "%3$C处的公共块‘%2$s’中的变量‘%1$s’不能是 bind(c),因为它不是全局的"
 
-#: fortran/match.cc:5262
+#: fortran/match.cc:5304
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs at %C is already in a COMMON block"
 msgstr "符号‘%s’在%C处已经在一个 COMMON 块中"
 
-#: fortran/match.cc:5270
+#: fortran/match.cc:5312
 #, fuzzy, gcc-internal-format
 msgid "Initialized symbol %qs at %C can only be COMMON in BLOCK DATA"
 msgstr "%2$C处已初始化的符号‘%1$s’仅可以是在 BLOCK DATA 中的 COMMON"
 
-#: fortran/match.cc:5286
+#: fortran/match.cc:5328
 #, fuzzy, gcc-internal-format
 msgid "Array specification for symbol %qs in COMMON at %C must be explicit"
 msgstr "%2$C处 COMMON 中符号‘%1$s’的数组规格必须是显式的"
 
-#: fortran/match.cc:5293
+#: fortran/match.cc:5335
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs in COMMON at %C cannot be a coarray"
 msgstr "%2$C处 COMMON 中的符号‘%1$s’不能是个 POINTER 数组"
 
-#: 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 "%2$C处 COMMON 中的符号‘%1$s’不能是个 POINTER 数组"
 
-#: fortran/match.cc:5349
+#: fortran/match.cc:5391
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs, in COMMON block %qs at %C is being indirectly equivalenced to another COMMON block %qs"
 msgstr "%3$C处 COMMON 块‘%2$s’的中符号‘%1$s’间接地等价于另一个 COMMON 块‘%4$s’"
 
-#: fortran/match.cc:5411
+#: fortran/match.cc:5453
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "BLOCK DATA construct at %L"
 msgstr "位置错误的%<@%D%>Objective-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 "%2$C处的组名列表‘%1$s’已经有一个基本类型 %3$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 "%2$C处组名列表‘%1$s’已经为 USE 相关因此不能被重新指定。"
@@ -72968,184 +73204,184 @@ msgstr "%2$C处组名列表‘%1$s’已经为 USE 相关因此不能被重新
 #. 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 "%3$C处名字列表‘%2$s’中的假定大小数组‘%1$s’不被允许"
 
-#: 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 "派生类型组件%C不是允许的 EQUIVALENCE 成员"
 
-#: fortran/match.cc:5700
+#: fortran/match.cc:5742
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference in EQUIVALENCE at %C cannot be an array section"
 msgstr "%C处 EQUIVALENCE 中的数组引用不能是个数组段"
 
-#: fortran/match.cc:5733
+#: fortran/match.cc:5775
 #, gcc-internal-format, gfc-internal-format
 msgid "EQUIVALENCE at %C requires two or more objects"
 msgstr "%C处的 EQUIVALENCE 需要两个或更多的对象"
 
-#: 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 "%3$C处的 EQUIVALENCE 试图间接地重叠 COMMON 块 %1$s 和 %2$s"
 
-#: fortran/match.cc:5760
+#: fortran/match.cc:5802
 #, gcc-internal-format, gfc-internal-format
 msgid "Expecting a comma in EQUIVALENCE at %C"
 msgstr "%C处 EQUIVALENCE 中需要逗号"
 
-#: fortran/match.cc:5765
+#: fortran/match.cc:5807
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "EQUIVALENCE statement at %C"
 msgstr "%C处 VALUE 语句语法错误"
 
-#: fortran/match.cc:5901
+#: fortran/match.cc:5943
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement function at %L is recursive"
 msgstr "%L处的语句函数是递归的"
 
-#: fortran/match.cc:5907
+#: fortran/match.cc:5949
 #, fuzzy, gcc-internal-format
 msgid "Statement function %qs at %L conflicts with function name"
 msgstr "语句函数‘%s’在%L处不允许用作实参"
 
-#: fortran/match.cc:5918
+#: fortran/match.cc:5960
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "ENTRY statement at %C cannot appear within an INTERFACE"
 msgid "Statement function at %L cannot appear within an INTERFACE"
 msgstr "%C处的 ENTRY 语句不能出现在 INTERFACE 中"
 
-#: fortran/match.cc:5923
+#: fortran/match.cc:5965
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Statement function at %C"
 msgstr "%C处 IMPLICIT 语句为空"
 
-#: 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 statement at %L must be scalar"
 msgid "Expression in CASE selector at %L cannot be %s"
 msgstr "%L处 CASE 语句中的表达式必须为标量"
 
-#: 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 "%L处 CASE 语句中的表达式必须为标量"
 
-#: fortran/match.cc:6108
+#: fortran/match.cc:6150
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected initialization expression in CASE at %C"
 msgstr "%C处 CASE 中需要初始化表达式"
 
-#: fortran/match.cc:6140
+#: fortran/match.cc:6182
 #, fuzzy, gcc-internal-format
 msgid "Expected block name %qs of SELECT construct at %C"
 msgstr "%2$C处需要 SELECT 构造的块名‘%1$s’"
 
-#: fortran/match.cc:6435
+#: fortran/match.cc:6477
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "ENTRY statement at %C cannot appear within a contained subprogram"
 msgid "SELECT TYPE at %C cannot appear in this scope"
 msgstr "%C处的 ENTRY 语句不能出现在嵌套的子程序中"
 
-#: 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 "%C处 PROTECTED 语句语法错误"
 
-#: 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 "%C处 SELECT TYPE 中的选择子不是一个有名变量;请使用 associate-name=>"
 
-#: fortran/match.cc:6657
+#: fortran/match.cc:6699
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "SELECT RANK statement at %C"
 msgstr "%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 "%C处 PROTECTED 语句语法错误"
 
-#: fortran/match.cc:6786
+#: fortran/match.cc:6828
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected CASE statement at %C"
 msgstr "%C处非预期的 CASE 语句"
 
-#: fortran/match.cc:6838
+#: fortran/match.cc:6880
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in CASE specification at %C"
 msgstr "%C处 CASE 规格语法错误"
 
-#: fortran/match.cc:6856
+#: fortran/match.cc:6898
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected TYPE IS statement at %C"
 msgstr "%C处非预期的 TYPE IS 语句"
 
-#: 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 "%C处 TYPE IS 规格语法错误"
 
-#: fortran/match.cc:6986
+#: fortran/match.cc:7028
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in CLASS IS specification at %C"
 msgstr "%C处 CLASS IS 规格语法错误"
 
-#: fortran/match.cc:7006
+#: fortran/match.cc:7048
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Unexpected END statement at %C"
 msgid "Unexpected RANK statement at %C"
 msgstr "%C处非预期的 END 语句"
 
-#: fortran/match.cc:7052
+#: fortran/match.cc:7094
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "FORALL stride expression at %L must be a scalar %s"
 msgid "The SELECT RANK CASE expression at %C must be a scalar, integer constant"
 msgstr "%L处 FORALL 间隔表达式必须是一个标量 %s"
 
-#: 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 CASE specification at %C"
 msgid "Syntax error in RANK specification at %C"
 msgstr "%C处 CASE 规格语法错误"
 
-#: fortran/match.cc:7210
+#: fortran/match.cc:7252
 #, gcc-internal-format, gfc-internal-format
 msgid "ELSEWHERE statement at %C not enclosed in WHERE block"
 msgstr "%C处的 ELSEWHERE 语句不在 WHERE 块中"
 
-#: fortran/match.cc:7248
+#: fortran/match.cc:7290
 #, fuzzy, gcc-internal-format
 msgid "Label %qs at %C doesn't match WHERE label %qs"
 msgstr "%2$C处的标号‘%1$s’不匹配 WHERE 标号‘%3$s’"
@@ -73269,232 +73505,232 @@ msgstr "%C处的 ENTRY 语句不能出现在嵌套的子程序中"
 msgid "Syntax error in SUBMODULE statement at %C"
 msgstr "%C SAVE 语句语法错误"
 
-#: fortran/module.cc:1201
+#: fortran/module.cc:1202
 #, fuzzy, gcc-internal-format
 msgid "Reading module %qs at line %d column %d: %s"
 msgstr "读出模块 %s,于行 %d 列 %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 "读入模块 %s,于行 %d 列 %d:%s"
 
-#: fortran/module.cc:1209
+#: fortran/module.cc:1210
 #, fuzzy, gcc-internal-format
 msgid "Module %qs at line %d column %d: %s"
 msgstr "模块 %s 位于行 %d 列 %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 "写入模块文件时出错:%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 "错误的字符串常量"
 
-#: fortran/module.cc:2959
+#: fortran/module.cc:2960
 #, gcc-internal-format
 msgid "mio_array_ref(): Unknown array ref"
 msgstr ""
 
-#: fortran/module.cc:5094
+#: fortran/module.cc:5095
 #, gcc-internal-format, gfc-internal-format
 msgid "Ambiguous !$OMP DECLARE REDUCTION from module %s at %L"
 msgstr ""
 
-#: fortran/module.cc:5097
+#: fortran/module.cc:5098
 #, gcc-internal-format, gfc-internal-format
 msgid "Previous !$OMP DECLARE REDUCTION from module %s at %L"
 msgstr ""
 
-#: fortran/module.cc:5291
+#: fortran/module.cc:5292
 #, fuzzy, gcc-internal-format
 msgid "%qs of module %qs, imported at %C, is also the name of the current program unit"
 msgstr "%2$C处的名字‘%1$s’是从当前程序单元对‘%3$s’有歧义的引用"
 
-#: 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 "%2$L处引用的符号‘%1$s’在模块‘%3$s’中找不到"
 
-#: 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 "%2$L处引用的用户运算符‘%1$s’在模块‘%3$s’中找不到"
 
-#: 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 "%2$L处引用的内建运算符‘%1$s’在模块‘%3$s’中找不到"
 
-#: 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 "不能打开模块文件‘%s’写入,在%C处:%s"
 
-#: fortran/module.cc:6510
+#: fortran/module.cc:6511
 #, fuzzy, gcc-internal-format
 msgid "Error writing module file %qs for writing: %s"
 msgstr "写入到输出文件 '%s' 时出错\n"
 
-#: fortran/module.cc:6521
+#: fortran/module.cc:6522
 #, fuzzy, gcc-internal-format
 msgid "Cannot delete module file %qs: %s"
 msgstr "%s:无法找到模块文件 %s\n"
 
-#: fortran/module.cc:6524
+#: fortran/module.cc:6525
 #, fuzzy, gcc-internal-format
 msgid "Cannot rename module file %qs to %qs: %s"
 msgstr "无法将模块文件‘%s’重命名为‘%s’:%s"
 
-#: fortran/module.cc:6530
+#: fortran/module.cc:6531
 #, fuzzy, gcc-internal-format
 msgid "Cannot delete temporary module file %qs: %s"
 msgstr "无法删除临时模块文件‘%s’:%s"
 
-#: fortran/module.cc:6587
+#: fortran/module.cc:6588
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs at %C already declared"
 msgstr "`%.*s' 已被定义为对照符号"
 
-#: 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 "%2$L处引用的符号‘%1$s’在模块‘%3$s’中找不到"
 
-#: 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 "%2$L处引用的符号‘%1$s’在内建模块 ISO_C_BINDING 中找不到"
 
-#: 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 "`%.*s' 已被定义为对照符号"
 
-#: fortran/module.cc:7095
+#: fortran/module.cc:7096
 #, fuzzy, gcc-internal-format
 msgid "Use of intrinsic module %qs at %C conflicts with non-intrinsic module name used previously"
 msgstr "%2$C处对内建模块‘%1$s’的使用与以前使用的非内建模块名字冲突"
 
-#: fortran/module.cc:7117
+#: fortran/module.cc:7118
 #, fuzzy, 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 "%C处在内建模块 ISO_FORTRAN_ENV 中对 NUMERIC_STORAGE_SIZE 命名常数的使用与选项 %s 不兼容"
 
-#: 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 "%C处在内建模块 ISO_FORTRAN_ENV 中对 NUMERIC_STORAGE_SIZE 命名常数的使用与选项 %s 不兼容"
 
-#: 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 "%2$L处引用的符号‘%1$s’在内建模块 ISO_FORTRAN_ENV 中找不到"
 
-#: 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 "%C处非预期的 CASE 语句"
 
-#: fortran/module.cc:7294
+#: fortran/module.cc:7295
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ISO_FORTRAN_ENV intrinsic module at %C"
 msgstr "Fortran 2003:%C 处的 ISO_FORTRAN_ENV 内建模块"
 
-#: fortran/module.cc:7306
+#: fortran/module.cc:7307
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "ISO_C_BINDING module at %C"
 msgstr "%C处需要绑定名"
 
-#: fortran/module.cc:7319
+#: fortran/module.cc:7320
 #, fuzzy, gcc-internal-format
 msgid "Cannot find an intrinsic module named %qs at %C"
 msgstr "%2$C处无法找到名为‘%1$s’的内建模块"
 
-#: fortran/module.cc:7325
+#: fortran/module.cc:7326
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "IEEE_FEATURES module at %C"
 msgstr "使用了传统 C 不支持的特性时给出警告"
 
-#: fortran/module.cc:7331
+#: fortran/module.cc:7332
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "IEEE_EXCEPTIONS module at %C"
 msgstr "模块间优化未为 C++ 实现"
 
-#: fortran/module.cc:7337
+#: fortran/module.cc:7338
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "IEEE_ARITHMETIC module at %C"
 msgstr "模块间优化未为 C++ 实现"
 
-#: fortran/module.cc:7347
+#: fortran/module.cc:7348
 #, fuzzy, gcc-internal-format
 msgid "Cannot open module file %qs for reading at %C: %s"
 msgstr "无法打开模块文件‘%s’读取,在%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
 #, fuzzy, gcc-internal-format
 msgid "Use of non-intrinsic module %qs at %C conflicts with intrinsic module name used previously"
 msgstr "%2$C处对非内建模块‘%1$s’的使用与之前对内建模块名字的使用相冲突"
 
-#: fortran/module.cc:7384
+#: fortran/module.cc:7385
 #, fuzzy, gcc-internal-format
 msgid "File %qs opened at %C is not a GNU Fortran module file"
 msgstr "%2$C处打开的文件的‘%1$s’并非一个 GFORTRAN 模块文件"
 
-#: 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 "%C处 ELSE 语句后有非预期的垃圾字符"
@@ -73504,8 +73740,8 @@ msgstr "%C处 ELSE 语句后有非预期的垃圾字符"
 msgid "List item shall not be coindexed at %C"
 msgstr "外部对象‘%s’在%L处不能有初始值设定"
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "COMMON block /%s/ not found at %C"
 msgstr "%2$C处未发现 COMMON 块 /%1$s/"
@@ -73515,1566 +73751,1576 @@ msgstr "%2$C处未发现 COMMON 块 /%1$s/"
 msgid "Syntax error in OpenMP variable list at %C"
 msgstr "%C处的 OpenMP 变量列表语法错误"
 
-#: 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 variable list at %C"
 msgid "Syntax error in OpenMP detach clause at %C"
 msgstr "%C处的 OpenMP 变量列表语法错误"
 
-#: fortran/openmp.cc:620
+#: fortran/openmp.cc:612
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Syntax error in OpenMP variable list at %C"
 msgid "Syntax error in OpenMP DEPEND SINK list at %C"
 msgstr "%C处的 OpenMP 变量列表语法错误"
 
-#: 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 "%C处的参数列表语法错误"
 
-#: fortran/openmp.cc:749
+#: fortran/openmp.cc:741
 #, fuzzy, gcc-internal-format
 #| msgid "expected end of capture-list"
 msgid "Unexpected OpenACC parallelism."
 msgstr "捕获列表应在此结束"
 
-#: fortran/openmp.cc:781
+#: fortran/openmp.cc:773
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Threadprivate variable at %C is an element of a COMMON block"
 msgid "Variable at %C is an element of a COMMON block"
 msgstr " %C 处线程局部变量是个 COMMON 块的元素"
 
-#: fortran/openmp.cc:841
+#: fortran/openmp.cc:833
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$ACC DECLARE at %C"
 msgstr "%C处 ELSE 语句后有非预期的垃圾字符"
 
-#: 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 "%C处 !$OMP THREADPRIVATE 列表语法错误"
 
-#: fortran/openmp.cc:1100
+#: fortran/openmp.cc:1092
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected INTEGER type at %L"
 msgstr "DO 循环中的开始表达式"
 
-#: fortran/openmp.cc:1114
+#: fortran/openmp.cc:1106
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "expected identifier"
 msgid "Expected identifier at %C"
 msgstr "需要标识符"
 
-#: fortran/openmp.cc:1119
+#: fortran/openmp.cc:1111
 #, fuzzy, gcc-internal-format
 msgid "Same identifier %qs specified again at %C"
 msgstr "%C处的名字中有非法字符"
 
-#: fortran/openmp.cc:1146
+#: fortran/openmp.cc:1138
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected range-specification at %C"
 msgstr "在%C处需要“,”"
 
-#: fortran/openmp.cc:1233
+#: fortran/openmp.cc:1225
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Comma expected at %C"
 msgstr "在%C处需要“,”"
 
-#: fortran/openmp.cc:1345
+#: fortran/openmp.cc:1337
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP DECLARE REDUCTION %s not found at %L"
 msgstr ""
 
-#: 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 "重复的 %s 属性,位于 %L"
 
-#: fortran/openmp.cc:1402
+#: fortran/openmp.cc:1394
 #, fuzzy, gcc-internal-format
 msgid "Expected %<(%> after %qs at %C"
 msgstr "在%C处需要“,”"
 
-#: fortran/openmp.cc:1409
+#: fortran/openmp.cc:1401
 #, fuzzy, gcc-internal-format
 #| msgid "Invalid character in name at %C"
 msgid "Invalid expression after %<%s(%> at %C"
 msgstr "%C处的名字中有非法字符"
 
-#: fortran/openmp.cc:1471
+#: fortran/openmp.cc:1463
 #, gcc-internal-format, gfc-internal-format
 msgid "Clause expected at %C after trailing comma"
 msgstr ""
 
-#: fortran/openmp.cc:1533
+#: fortran/openmp.cc:1525
 #, fuzzy, gcc-internal-format
 msgid "Expected %<:%> at %C"
 msgstr "在%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 "在%C处需要变量名"
 
-#: fortran/openmp.cc:1600
+#: fortran/openmp.cc:1592
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected COMPILATION or EXECUTION in AT clause at %C"
 msgstr ""
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "COLLAPSE clause argument not constant positive integer at %C"
 msgstr "%C处的 COLLAPSE 分句参数不是正整数常量"
 
-#: 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 "%C处 ELSE 语句后有非预期的垃圾字符"
 
-#: 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 "需要整数表达式"
 
-#: 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 "调度块大小表达式必须为整型"
 
-#: 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 "DO 循环中的开始表达式"
 
-#: fortran/openmp.cc:2080
+#: fortran/openmp.cc:2072
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected SEQ_CST, ACQUIRE or RELAXED at %C"
 msgstr ""
 
-#: fortran/openmp.cc:2393
+#: fortran/openmp.cc:2385
 #, fuzzy, gcc-internal-format
 #| msgid "too many %qs clauses"
 msgid "too many %<always%> modifiers at %L"
 msgstr "太多的%qs子句"
 
-#: fortran/openmp.cc:2399
+#: fortran/openmp.cc:2391
 #, fuzzy, gcc-internal-format
 #| msgid "too many %qs clauses"
 msgid "too many %<close%> modifiers at %L"
 msgstr "太多的%qs子句"
 
-#: 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 "COLLAPSE clause argument not constant positive integer at %C"
 msgid "ORDERED clause argument not constant positive integer at %C"
 msgstr "%C处的 COLLAPSE 分句参数不是正整数常量"
 
-#: 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 "%C处 ELSE 语句后有非预期的垃圾字符"
 
-#: fortran/openmp.cc:3031
+#: fortran/openmp.cc:3023
 #, gcc-internal-format, gfc-internal-format
 msgid "Failed to match clause at %C"
 msgstr ""
 
-#: 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 "%L过程参数无效"
 
-#: 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 "%L过程参数无效"
 
-#: 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 "%L过程参数无效"
 
-#: 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 "%3$L处 %2$s 分句中假定大小的数组‘%1$s’"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: fortran/openmp.cc:3333
+#: fortran/openmp.cc:3325
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Invalid argument to !$ACC WAIT at %C"
 msgstr "%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 "%L处的 NUM_THREADS 分句需要一个标量 INTEGER 表达式"
 
-#: fortran/openmp.cc:3373
+#: fortran/openmp.cc:3365
 #, gcc-internal-format, gfc-internal-format
 msgid "ACC CACHE directive must be inside of loop %C"
 msgstr ""
 
-#: 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 "%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 "%C处公共块名语法错误"
 
-#: fortran/openmp.cc:3491
+#: fortran/openmp.cc:3483
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$ACC ROUTINE ( NAME ) at %C, expecting ')' after NAME"
 msgstr ""
 
-#: fortran/openmp.cc:3506
+#: fortran/openmp.cc:3498
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "storage class specified for typename"
 msgid "Multiple loop axes specified for routine at %C"
 msgstr "为类型名指定了存储类"
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: fortran/openmp.cc:3765
+#: fortran/openmp.cc:3757
 #, fuzzy, gcc-internal-format
 msgid "Expected %<( depobj )%> at %C"
 msgstr "在%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
 #, gcc-internal-format, gfc-internal-format
 msgid "Expected DEPEND, UPDATE, or DESTROY clause at %C"
 msgstr ""
 
-#: 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 "%L处的 NUM_THREADS 分句需要一个标量 INTEGER 表达式"
 
-#: fortran/openmp.cc:3948
+#: fortran/openmp.cc:3940
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Constant expression required at %C"
 msgid "Constant character expression required in MESSAGE clause at %L"
 msgstr "%C处需要常量表达式"
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "$OMP ERROR encountered at %L"
 msgstr ""
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "List specified together with memory order clause in FLUSH directive at %C"
 msgstr ""
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: fortran/openmp.cc:4414 fortran/openmp.cc:9353
+#: fortran/openmp.cc:4406 fortran/openmp.cc:9369
 #, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of predefined %s !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:4418 fortran/openmp.cc:9357
+#: fortran/openmp.cc:4410 fortran/openmp.cc:9373
 #, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of predefined !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:4423
+#: fortran/openmp.cc:4415
 #, gcc-internal-format, gfc-internal-format
 msgid "Redefinition of !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:4425
+#: fortran/openmp.cc:4417
 #, gcc-internal-format, gfc-internal-format
 msgid "Previous !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: 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 " %C 处线程局部变量是个 COMMON 块的元素"
 
-#: fortran/openmp.cc:4525
+#: fortran/openmp.cc:4517
 #, gcc-internal-format, gfc-internal-format
 msgid "OMP DECLARE TARGET variable at %L previously mentioned in LINK clause and later in TO clause"
 msgstr ""
 
-#: fortran/openmp.cc:4531
+#: fortran/openmp.cc:4523
 #, gcc-internal-format, gfc-internal-format
 msgid "OMP DECLARE TARGET variable at %L previously mentioned in TO clause and later in LINK clause"
 msgstr ""
 
-#: fortran/openmp.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
 #, gcc-internal-format, gfc-internal-format
 msgid "OMP DECLARE TARGET COMMON at %L previously mentioned in LINK clause and later in TO clause"
 msgstr ""
 
-#: fortran/openmp.cc:4565
+#: fortran/openmp.cc:4557
 #, gcc-internal-format, gfc-internal-format
 msgid "OMP DECLARE TARGET COMMON at %L previously mentioned in TO clause and later in LINK clause"
 msgstr ""
 
-#: fortran/openmp.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 "%C处 !$OMP THREADPRIVATE 列表语法错误"
 
-#: fortran/openmp.cc:4650
+#: fortran/openmp.cc:4642
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected variable name at %C"
 msgid "expected trait selector name at %C"
 msgstr "在%C处需要变量名"
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "selector '%s' does not accept any properties at %C"
 msgstr ""
 
-#: 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"
 msgstr "在%C处需要“,”"
 
-#: fortran/openmp.cc:4742
+#: fortran/openmp.cc:4734
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "collapse argument needs positive constant integer expression"
 msgid "score argument must be constant integer expression at %C"
 msgstr "折叠参数需要正整常量表达式"
 
-#: 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 "%2$L处 %1$s 函数的参数是负的"
 
-#: 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 "在%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 "在%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 "%H折叠变量需要正整常数表达式"
 
-#: fortran/openmp.cc:4799
+#: fortran/openmp.cc:4791
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "expected identifier"
 msgid "expected identifier at %C"
 msgstr "需要标识符"
 
-#: fortran/openmp.cc:4818
+#: fortran/openmp.cc:4810
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "expected string literal"
 msgid "expected identifier or string literal at %C"
 msgstr "需要字面字符串"
 
-#: fortran/openmp.cc:4838
+#: fortran/openmp.cc:4830
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "expected expression"
 msgid "expected expression at %C"
 msgstr "需要表达式"
 
-#: 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 "%H折叠变量需要正整常数表达式"
 
-#: 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 "%C处需要绑定名"
 
-#: fortran/openmp.cc:4926
+#: fortran/openmp.cc:4918
 #, gcc-internal-format, gfc-internal-format
 msgid "expected 'construct', 'device', 'implementation' or 'user' at %C"
 msgstr ""
 
-#: fortran/openmp.cc:4934
+#: fortran/openmp.cc:4926
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected \",\" at %C"
 msgid "expected '=' at %C"
 msgstr "在%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 "在%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 "在%C处需要“,”"
 
-#: fortran/openmp.cc:4985
+#: fortran/openmp.cc:4977
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expected binding name at %C"
 msgid "expected name at %C"
 msgstr "%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 "在%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 "在%C处需要“,”"
 
-#: fortran/openmp.cc:5087
+#: fortran/openmp.cc:5079
 #, gcc-internal-format, gfc-internal-format
 msgid "Threadprivate variable at %C is an element of a COMMON block"
 msgstr " %C 处线程局部变量是个 COMMON 块的元素"
 
-#: fortran/openmp.cc:5124
+#: fortran/openmp.cc:5116
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after OMP THREADPRIVATE at %C"
 msgstr "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: fortran/openmp.cc:5131
+#: fortran/openmp.cc:5123
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in !$OMP THREADPRIVATE list at %C"
 msgstr "%C处 !$OMP THREADPRIVATE 列表语法错误"
 
-#: 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 "PRIVATE statement at %C is only allowed in the specification part of a module"
 msgid "!$OMP REQUIRES at %C must appear in the specification part of a program unit"
 msgstr "%C处的 PRIVATE 语句仅允许出现在模块规格说明部分内"
 
-#: 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 "尚未支持代码模式 %<large%>"
 
-#: fortran/openmp.cc:5434
+#: fortran/openmp.cc:5426
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Clause expected at %C"
 msgstr "在%C处需要“,”"
 
-#: fortran/openmp.cc:5440
+#: fortran/openmp.cc:5432
 #, fuzzy, gcc-internal-format
 msgid "%qs clause at %L specified more than once"
 msgstr "在基类限定中指定了多于一次的%<virtual%>"
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: fortran/openmp.cc:5475
+#: fortran/openmp.cc:5467
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after !$OMP SCAN at %C"
 msgstr "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: fortran/openmp.cc:5673
+#: fortran/openmp.cc:5665
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after TASKYIELD clause at %C"
 msgstr "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: fortran/openmp.cc:6026
+#: fortran/openmp.cc:6018
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Unexpected junk after NOWAIT clause at %C"
 msgstr "%C处 ELSE 语句后有非预期的垃圾字符"
 
-#: 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 "%L处的 NUM_THREADS 分句需要一个标量 INTEGER 表达式"
 
-#: 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 "%L处的表达式必须具有 INTEGER 类型而不是 %s"
 
-#: 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 "%L处的表达式必须具有 INTEGER 类型而不是 %s"
 
-#: 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 "%3$L处 %2$s 分句中的 Cray 指针‘%1$s’"
 
-#: 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 "%3$L处 %2$s 分句中 的Cray 指针目标‘%1$s’"
 
-#: 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 "%3$L处 %2$s 分句中的 POINTER 对象‘%1$s’"
 
-#: 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 "%3$L处 %2$s 分句中的 Cray 指针‘%1$s’"
 
-#: 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 "%3$L处 %2$s 分句中 的Cray 指针目标‘%1$s’"
 
-#: 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 "%3$L处 %2$s 分句中假定大小的数组‘%1$s’"
 
-#: fortran/openmp.cc:6136
+#: fortran/openmp.cc:6128
 #, fuzzy, gcc-internal-format
 msgid "Assumed rank array %qs in %s clause at %L"
 msgstr "%3$L处 %2$s 分句中假定大小的数组‘%1$s’"
 
-#: 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 "%3$L处 %2$s 分句中的 POINTER 对象‘%1$s’"
 
-#: 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 "%3$L处 %2$s 分句中的 Cray 指针‘%1$s’"
 
-#: 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 "%3$L处 %2$s 分句中 的Cray 指针目标‘%1$s’"
 
-#: 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 "%3$L处 %2$s 分句中的 POINTER 对象‘%1$s’"
 
-#: 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 "%3$L处 %2$s 分句中的 POINTER 对象‘%1$s’"
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: 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 "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: fortran/openmp.cc:6300
+#: fortran/openmp.cc:6292
 #, gcc-internal-format, gfc-internal-format
 msgid "ORDERED clause parameter is less than COLLAPSE at %L"
 msgstr ""
 
-#: fortran/openmp.cc:6303
+#: fortran/openmp.cc:6295
 #, gcc-internal-format, gfc-internal-format
 msgid "ORDER clause must not be used together ORDERED at %L"
 msgstr ""
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "IF clause at %L requires a scalar LOGICAL expression"
 msgstr "%L处的 IF 分句需要一个标量 LOGICAL 表达式"
 
-#: fortran/openmp.cc:6325
+#: fortran/openmp.cc:6317
 #, gcc-internal-format, gfc-internal-format
 msgid "IF clause without modifier at %L used together with IF clauses with modifiers"
 msgstr ""
 
-#: 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 "%L处的 IF 分句需要一个标量 LOGICAL 表达式"
 
-#: fortran/openmp.cc:6470
+#: fortran/openmp.cc:6462
 #, gcc-internal-format, gfc-internal-format
 msgid "SCHEDULE clause's chunk_size at %L requires a scalar INTEGER expression"
 msgstr "%L处的 SCHEDULE 分句的 chunk_size 需要一个标量 INTEGER 表达式"
 
-#: 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 "%L处的表达式必须具有 INTEGER 类型而不是 %s"
 
-#: 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 "%L处的符号不是一个 DUMMY 变量"
 
-#: 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 "可变大小的对象不能被初始化"
 
-#: 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 "可变大小的对象不能被初始化"
 
-#: 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 "可变大小的对象不能被初始化"
 
-#: 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 "%2$L处符号‘%1$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 "%qE在数据子句中多次出现"
 
-#: fortran/openmp.cc:6715 fortran/trans-openmp.cc:6358
+#: fortran/openmp.cc:6707 fortran/trans-openmp.cc:6403
 #, gcc-internal-format
 msgid "%qs specified in 'allocate' clause at %L but not in an explicit privatization clause"
 msgstr ""
 
-#: fortran/openmp.cc:6737
+#: fortran/openmp.cc:6729
 #, fuzzy, gcc-internal-format
 msgid "Array %qs is not permitted in reduction at %L"
 msgstr "变量‘%s’不能出现在%L处的表达式中"
 
-#: 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 "%2$L处符号‘%1$s’出现在多个分句上"
 
-#: fortran/openmp.cc:6768
+#: fortran/openmp.cc:6760
 #, fuzzy, gcc-internal-format
 msgid "Non-THREADPRIVATE object %qs in COPYIN clause at %L"
 msgstr "%2$L处 COPYIN 分句中的非 THREADPRIVATE 对象‘%1$s’"
 
-#: fortran/openmp.cc:6776
+#: fortran/openmp.cc:6768
 #, fuzzy, gcc-internal-format
 msgid "Assumed size array %qs in COPYPRIVATE clause at %L"
 msgstr "%2$L处 COPYPRIVATE 分句中有假定大小的数组‘%1$s’"
 
-#: fortran/openmp.cc:6779
+#: fortran/openmp.cc:6771
 #, fuzzy, gcc-internal-format
 msgid "INTENT(IN) POINTER %qs in COPYPRIVATE clause at %L"
 msgstr "%2$L处 COPYPRIVATE 分句中有假定大小的数组‘%1$s’"
 
-#: fortran/openmp.cc:6787
+#: fortran/openmp.cc:6779
 #, fuzzy, gcc-internal-format
 msgid "THREADPRIVATE object %qs in SHARED clause at %L"
 msgstr "%2$L处 SHARED 分句中的 THREADPRIVATE 对象‘%1$s’"
 
-#: fortran/openmp.cc:6790
+#: fortran/openmp.cc:6782
 #, fuzzy, gcc-internal-format
 msgid "Cray pointee %qs in SHARED clause at %L"
 msgstr "%2$L处 SHARED 分句中为 Cray 指针引用的‘%1$s’"
 
-#: 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 "%2$L处 SHARED 分句中的 THREADPRIVATE 对象‘%1$s’"
 
-#: fortran/openmp.cc:6797
+#: fortran/openmp.cc:6791
 #, fuzzy, gcc-internal-format
 msgid "DETACH event handle %qs in SHARED clause at %L"
 msgstr "%2$L处 SHARED 分句中的 THREADPRIVATE 对象‘%1$s’"
 
-#: 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 "%H折叠变量需要正整常数表达式"
 
-#: fortran/openmp.cc:6850
+#: fortran/openmp.cc:6844
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Integer expression required at %C"
 msgid "Scalar integer expression for range begin expected at %L"
 msgstr "%C处需要整数表达式"
 
-#: fortran/openmp.cc:6856
+#: fortran/openmp.cc:6850
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Integer expression required at %C"
 msgid "Scalar integer expression for range end expected at %L"
 msgstr "%C处需要整数表达式"
 
-#: fortran/openmp.cc:6862
+#: fortran/openmp.cc:6856
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Integer expression required at %C"
 msgid "Scalar integer expression for range step expected at %L"
 msgstr "%C处需要整数表达式"
 
-#: 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 语句在%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 "accumulator is not a constant integer"
 msgid "SINK addend not a constant integer at %L"
 msgstr "累加数不是一个整常量"
 
-#: 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 "在过程入口处将数组段复制到一个连续的块中"
 
-#: 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 "%C处 ELSE 语句后有非预期的垃圾字符"
 
-#: 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 "%C处非预期的 TYPE IS 语句"
 
-#: fortran/openmp.cc:6990 fortran/openmp.cc:7008
+#: fortran/openmp.cc:6984 fortran/openmp.cc:7002
 #, gcc-internal-format
 msgid "%qs in %s clause at %L is not a proper array section"
 msgstr ""
 
-#: 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 "使用了变长数组"
 
-#: 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 "向量 delete 的实参类型既非指针也非数组"
 
-#: 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 "%3$L处 %2$s 分句中的 THREADPRIVATE 对象‘%1$s’"
 
-#: 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 "%3$L处 %2$s 分句中 的Cray 指针目标‘%1$s’"
 
-#: fortran/openmp.cc:7125
+#: fortran/openmp.cc:7119
 #, fuzzy, gcc-internal-format
 msgid "Non-dummy object %qs in %s clause at %L"
 msgstr "%3$L处 %2$s 分句中的 POINTER 对象‘%1$s’"
 
-#: 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 "尚未支持代码模式 %<large%>"
 
-#: 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 "%3$L处 %2$s 分句中的 POINTER 对象‘%1$s’"
 
-#: fortran/openmp.cc:7179
+#: fortran/openmp.cc:7175
 #, fuzzy, gcc-internal-format
 msgid "Procedure pointer %qs in %s clause at %L"
 msgstr "%L处过程指针赋值中接口不匹配:%s"
 
-#: fortran/openmp.cc:7185
+#: fortran/openmp.cc:7181
 #, fuzzy, gcc-internal-format
 msgid "Cray pointer %qs in %s clause at %L"
 msgstr "%3$L处 %2$s 分句中的 Cray 指针‘%1$s’"
 
-#: 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 "%2$s 分句中的变量‘%1$s’被用在%3$L处的 NAMELIST 语句中"
 
 #. 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 "%3$L处 %2$s 分句中的 POINTER 对象‘%1$s’"
 
-#: fortran/openmp.cc:7218
+#: fortran/openmp.cc:7214
 #, fuzzy, gcc-internal-format
 msgid "DETACH event handle %qs in %s clause at %L"
 msgstr "%3$L处 %2$s 分句中的 POINTER 对象‘%1$s’"
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP DECLARE REDUCTION %s not found for type %s at %L"
 msgstr ""
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "LINEAR clause specified together with ORDERED clause with argument at %L"
 msgstr ""
 
-#: fortran/openmp.cc:7371
+#: fortran/openmp.cc:7367
 #, fuzzy, gcc-internal-format
 msgid "LINEAR variable %qs must be INTEGER at %L"
 msgstr "%L处 stat 变量必须是一个标量 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 "‘%s’的实参在%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 "%L处的 IF 分句需要一个标量 LOGICAL 表达式"
 
-#: 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 "%L处的 IF 分句需要一个标量 LOGICAL 表达式"
 
-#: 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 "向量 delete 的实参类型既非指针也非数组"
 
-#: 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 "%qD的枚举值不是一个整数常量"
 
-#: 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 "%L处的 SCHEDULE 分句的 chunk_size 需要一个标量 INTEGER 表达式"
 
-#: fortran/openmp.cc:7551
+#: fortran/openmp.cc:7547
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Incompatible ranks in %s (%d and %d) at %L"
 msgid "Incompatible use of TILE and COLLAPSE at %L"
 msgstr "%4$L%1$s 中秩(%2$d 和 %3$d)不兼容"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "%<#pragma omp taskwait%>只能用在复合语句中"
 
-#: 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 "外部对象‘%s’在%L处不能有初始值设定"
+
+#: 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 "外部对象‘%s’在%L处不能有初始值设定"
+
+#: fortran/openmp.cc:7600
 #, gcc-internal-format
 msgid "%<DETACH%> clause at %L must not be used together with %<MERGEABLE%> clause"
 msgstr ""
 
-#: 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 "%C处需要标量初始化表达式"
 
-#: fortran/openmp.cc:7878
+#: fortran/openmp.cc:7894
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC statement must set a scalar variable of intrinsic type at %L"
 msgstr "%L处 !$OMP ATOMIC 语句必须设定一个内建类型的标量值"
 
-#: fortran/openmp.cc:7887
+#: fortran/openmp.cc:7903
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "!$OMP ATOMIC statement must set a scalar variable of intrinsic type at %L"
 msgid "!$OMP ATOMIC statement must assign an expression of intrinsic type at %L"
 msgstr "%L处 !$OMP ATOMIC 语句必须设定一个内建类型的标量值"
 
-#: fortran/openmp.cc:7894
+#: fortran/openmp.cc:7910
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC with ALLOCATABLE variable at %L"
 msgstr "%L处 !$OMP ATOMIC 内建函数的实参必须是标量"
 
-#: 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 "%L处 !$OMP ATOMIC 语句必须设定一个内建类型的标量值"
 
-#: 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 "%L处 !$OMP ATOMIC 赋值“变量 = 变量 运算符 表达式”中的“表达式”必须是标量并且不能引用“变量”"
 
-#: fortran/openmp.cc:7928
+#: fortran/openmp.cc:7944
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "!$OMP ATOMIC statement must set a scalar variable of intrinsic type at %L"
 msgid "!$OMP ATOMIC capture-statement must set a scalar variable of intrinsic type at %L"
 msgstr "%L处 !$OMP ATOMIC 语句必须设定一个内建类型的标量值"
 
-#: 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 "%L处 !$OMP ATOMIC 语句必须设定一个内建类型的标量值"
 
-#: 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 基元的截取截取叙述读取从不同的变量比更新叙述写入进入于 %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 基元的截取截取叙述读取从不同的变量比更新叙述写入进入于 %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 "%L处 !$OMP ATOMIC 赋值“变量 = 变量 运算符 表达式”中的“表达式”必须是标量并且不能引用“变量”"
 
-#: 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 "%L处 !$OMP ATOMIC 赋值运算符必须是 +、*、-、/、.AND.、.OR.、.EQV. 或 .NEQV."
 
-#: fortran/openmp.cc:8063
+#: fortran/openmp.cc:8079
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC assignment must be var = var op expr or var = expr op var at %L"
 msgstr "%L处 !$OMP ATOMIC 赋值形式必须为“变量 = 变量 运算符 表达式”或“变量 = 表达式 运算符 变量”"
 
-#: fortran/openmp.cc:8077
+#: fortran/openmp.cc:8093
 #, gcc-internal-format, gfc-internal-format
 msgid "!$OMP ATOMIC var = var op expr not mathematically equivalent to var = var op (expr) at %L"
 msgstr "%L处 !$OMP ATOMIC“变量 = 变量 运算符 表达式”与“变量 = 变量 运算符 (表达式)”在数学上不等价"
 
-#: fortran/openmp.cc:8110
+#: fortran/openmp.cc:8126
 #, 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 "%L处 !$OMP ATOMIC 赋值“变量 = 变量 运算符 表达式”中的“表达式”必须是标量并且不能引用“变量”"
 
-#: 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 "%L处 !$OMP ATOMIC 赋值内建函数 IAND、IOR 或 IEOR 必须带两个实参"
 
-#: 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 "%L处!$OMP ATOMIC 赋值内建函数必须是 MIN、MAX、IAND、IOR 或 IEOR"
 
-#: 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 "!$OMP ATOMIC 内建函数的实参除一个以外不能在%2$L处引用‘%1$s’"
 
-#: 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 "%L处 !$OMP ATOMIC 内建函数的实参必须是标量"
 
-#: 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 "第一个或最后一个 !$OMP ATOMIC 内建函数实参在%2$L处必须是‘%1$s’"
 
-#: 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 "%L处 !$OMP ATOMIC 赋值的右手边必须有一个运算符或内建函数"
 
-#: fortran/openmp.cc:8202
+#: fortran/openmp.cc:8218
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "unexpected !$OMP ATOMIC expression at %L"
 msgstr "%C处 ELSE IF 语句后有非预期的垃圾字符"
 
-#: fortran/openmp.cc:8248
+#: fortran/openmp.cc:8264
 #, gcc-internal-format
 msgid "ORDERED clause specified together with %<inscan%> REDUCTION clause at %L"
 msgstr ""
 
-#: fortran/openmp.cc:8251
+#: fortran/openmp.cc:8267
 #, gcc-internal-format
 msgid "SCHEDULE clause specified together with %<inscan%> REDUCTION clause at %L"
 msgstr ""
 
-#: 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
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s cannot be a DO WHILE or DO without loop control at %L"
 msgstr "%L处 !$OMP DO 不能是一个 DO WHILE 或不带循环控制的 DO"
 
-#: fortran/openmp.cc:8561
+#: fortran/openmp.cc:8577
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s cannot be a DO CONCURRENT loop at %L"
 msgstr "%L处的 DO 循环中的步进表达式不能为零"
 
-#: 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 "%L处的表达式必须具有 INTEGER 类型而不是 %s"
 
-#: 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 "%L处 !$OMP DO 迭代变量不能是 THREADPRIVATE"
 
-#: 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 "%L处 !$OMP DO 迭代变量出现在非 PRIVATE 或 LASTPRIVATE 分句中"
 
-#: 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 "%L处 !$OMP DO 迭代变量出现在非 PRIVATE 或 LASTPRIVATE 分句中"
 
-#: 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 "%L处 !$OMP DO 折叠的循环不形成矩形迭代空间"
 
-#: 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 "折叠的循环没有完美的嵌套"
 
-#: 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 "%L处折叠的 !$OMP DO 没有足够的 DO 循环"
 
-#: 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
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP cannot be a DO WHILE or DO without loop control at %L"
 msgstr "%L处 !$OMP DO 不能是一个 DO WHILE 或不带循环控制的 DO"
 
-#: fortran/openmp.cc:8876
+#: fortran/openmp.cc:8892
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "!$ACC LOOP cannot be a DO CONCURRENT loop at %L"
 msgstr "%L处的 DO 循环中的步进表达式不能为零"
 
-#: 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 "%L处 !$OMP DO 迭代变量必须具有整数类型"
 
-#: 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 "%L处 !$OMP DO 折叠的循环不形成矩形迭代空间"
 
-#: 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 "折叠的 !$OMP DO 循环没有完美的嵌套于%L处"
 
-#: 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 "%L处折叠的 !$OMP DO 没有足够的 DO 循环"
 
-#: 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 "%L处的 IF 分句需要一个标量 LOGICAL 表达式"
 
-#: fortran/openmp.cc:9066
+#: fortran/openmp.cc:9082
 #, fuzzy, gcc-internal-format
 msgid "Array sections: %qs not allowed in !$ACC DECLARE at %L"
 msgstr "%L过程参数无效"
 
-#: 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 "%C处公共块名语法错误"
 
-#: fortran/openmp.cc:9119
+#: fortran/openmp.cc:9135
 #, fuzzy, gcc-internal-format
 msgid "NAME %qs invalid in !$ACC ROUTINE ( NAME ) at %L"
 msgstr "%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
 #, gcc-internal-format
 msgid "!$OMP DECLARE SIMD should refer to containing procedure %qs at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9307
+#: fortran/openmp.cc:9323
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable other than OMP_PRIV or OMP_ORIG used in INITIALIZER clause of !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9315
+#: fortran/openmp.cc:9331
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable other than OMP_OUT or OMP_IN used in combiner of !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9344
+#: fortran/openmp.cc:9360
 #, gcc-internal-format, gfc-internal-format
 msgid "Invalid operator for !$OMP DECLARE REDUCTION %s at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9366
+#: fortran/openmp.cc:9382
 #, gcc-internal-format, gfc-internal-format
 msgid "CHARACTER length in !$OMP DECLARE REDUCTION %s not constant at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9382
+#: fortran/openmp.cc:9398
 #, gcc-internal-format, gfc-internal-format
 msgid "Subroutine call with alternate returns in combiner of !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9397
+#: fortran/openmp.cc:9413
 #, gcc-internal-format, gfc-internal-format
 msgid "Subroutine call with alternate returns in INITIALIZER clause of !$OMP DECLARE REDUCTION at %L"
 msgstr ""
 
-#: fortran/openmp.cc:9407
+#: fortran/openmp.cc:9423
 #, gcc-internal-format, gfc-internal-format
 msgid "One of actual subroutine arguments in INITIALIZER clause of !$OMP DECLARE REDUCTION must be OMP_PRIV at %L"
 msgstr ""
 
-#: fortran/openmp.cc: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 ""
@@ -75578,7 +75824,7 @@ msgstr "Fortran 2003:%C处的派生类型定义中的 CONTAINS 块"
 msgid "Statement label in END CRITICAL at %C does not match CRITICAL label"
 msgstr "%C处 ENDDO 中的语句标号与 DO 标号不匹配"
 
-#: 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 "位置错误的%<@%D%>Objective-C++ 构造"
@@ -75588,124 +75834,124 @@ msgstr "位置错误的%<@%D%>Objective-C++ 构造"
 msgid "ASSOCIATE construct at %C"
 msgstr "位置错误的%<@%D%>Objective-C++ 构造"
 
-#: fortran/parse.cc:5097
+#: fortran/parse.cc:5115
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement label in ENDDO at %C doesn't match DO label"
 msgstr "%C处 ENDDO 中的语句标号与 DO 标号不匹配"
 
-#: 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 "%L处有名的块 DO 需要匹配的 ENDDO 名"
 
-#: 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 "没有在%C处发现 COMMON 块 /%s/"
 
-#: fortran/parse.cc:5402
+#: fortran/parse.cc:5420
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expecting %s at %C"
 msgstr "%C处需要有名实体列表"
 
-#: fortran/parse.cc:5446
+#: fortran/parse.cc:5464
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Expected DO loop at %C"
 msgstr "DO 循环中的开始表达式"
 
-#: fortran/parse.cc:5466
+#: fortran/parse.cc:5484
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Redundant !$ACC END LOOP at %C"
 msgstr "%L有多余的 SOURCE 标记"
 
-#: 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 "%C处 !$omp critical 和 !$omp end critical 后的名字不匹配"
 
-#: fortran/parse.cc:5772
+#: fortran/parse.cc:5790
 #, gcc-internal-format, gfc-internal-format
 msgid "%s statement at %C cannot terminate a non-block DO loop"
 msgstr "%2$C处的 %1$s 语句不能终止一个不成块的 DO 循环"
 
-#: 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 "%L处 FORMAT 语句没有语句标号"
 
-#: 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 "%2$C处包含的过程‘%1$s’已经有歧义"
 
-#: fortran/parse.cc:6118
+#: fortran/parse.cc:6136
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in CONTAINS section at %C"
 msgstr "非预期的 %s 语句出现在%C处的 CONTAINS 段中"
 
-#: 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 "Fortran 2008:%C处 CONTAINS 语句没有 FUNCTION 或 SUBROUTINE 语句"
 
-#: fortran/parse.cc:6257
+#: fortran/parse.cc:6275
 #, gcc-internal-format, gfc-internal-format
 msgid "CONTAINS statement at %C is already in a contained program unit"
 msgstr "%C处的 CONTAINS 语句已经在包含的程序单元中"
 
-#: 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 "%2$L处的名字‘%1$s’已经在%4$L处被用作 %3$s"
 
-#: fortran/parse.cc:6313
+#: fortran/parse.cc:6331
 #, fuzzy, gcc-internal-format
 #| msgid "Global name '%s' at %L is already being used as a %s at %L"
 msgid "Global name %qs at %L is already being used as a %s at %L"
 msgstr "%2$L处的名字‘%1$s’已经在%4$L处被用作 %3$s"
 
-#: 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 "%2$L处的名字‘%1$s’已经在%4$L处被用作 %3$s"
 
-#: fortran/parse.cc:6322
+#: fortran/parse.cc:6340
 #, fuzzy, gcc-internal-format
 #| msgid "Global name '%s' at %L is already being used as a %s at %L"
 msgid "Global name %qs at %L is already being used at %L"
 msgstr "%2$L处的名字‘%1$s’已经在%4$L处被用作 %3$s"
 
-#: fortran/parse.cc:6344
+#: fortran/parse.cc:6362
 #, gcc-internal-format, gfc-internal-format
 msgid "Blank BLOCK DATA at %C conflicts with prior BLOCK DATA at %L"
 msgstr "%C处空白 BLOCK DATA 与%L处先前的 BLOCK DATA 冲突"
 
-#: fortran/parse.cc:6370
+#: fortran/parse.cc:6388
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in BLOCK DATA at %C"
 msgstr "非预期的 %s 语句出现在%C处的 BLOCK DATA 块中"
 
-#: fortran/parse.cc:6475
+#: fortran/parse.cc:6493
 #, gcc-internal-format, gfc-internal-format
 msgid "Unexpected %s statement in MODULE at %C"
 msgstr "非预期的 %s 语句出现在%C处的 MODULE 中"
@@ -75713,7 +75959,7 @@ msgstr "非预期的 %s 语句出现在%C处的 MODULE 中"
 #. 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 "%L 和%C处有两个主 PROGRAM"
@@ -76458,572 +76704,578 @@ msgstr "Fortran 2003:%2$L处的 COMMON 块‘%1$s’也是一个全局过程"
 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 "%L处的派生类型构造函数中元素的秩与该组件(%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 "%L处指针组件‘%s’的派生类型构造函数中的元素是 %s 但应该是 %s"
 
-#: 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 "%4$L处 %3$s 中字符长度不相等 (%1$ld/%2$ld)"
+
+#: 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 "%L处派生类型构造函数中的 NULL 被用在既不是一个指针也不是 ALLOCATABLE 的组件‘%s’上"
 
-#: 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 "%C处结构构造函数中组件太多!"
 
-#: 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 "%C处结构构造函数中组件太多!"
 
-#: 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 "%L处的派生类型构造函数中元素的秩与该组件(%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 "%L处指针组件‘%s’的派生类型构造函数中的元素应该是 POINTER 或 TARGET"
 
-#: 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 "%2$L处指针组件‘%1$s’的派生类型构造函数中表达式无效"
 
-#: fortran/resolve.cc:1654
+#: fortran/resolve.cc:1671
 #, fuzzy, 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 "最后一维的上限必须出现在对在%2$L处假定大小数组‘%1$s’的引用中"
 
-#: fortran/resolve.cc:1716
+#: fortran/resolve.cc:1733
 #, fuzzy, gcc-internal-format
 msgid "%qs at %L is ambiguous"
 msgstr "‘%s’(位于 %L)有歧义"
 
-#: 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 "GENERIC 过程‘%s’在%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 "%2$L处为内建函数‘%1$s’指定的类型被忽略"
 
-#: 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 "%2$L处的内建子例程‘%1$s’不应该有类型限定符"
 
-#: fortran/resolve.cc:1865
+#: fortran/resolve.cc:1882
 #, fuzzy, gcc-internal-format
 msgid "%qs declared INTRINSIC at %L does not exist"
 msgstr "%2$L 处‘%1$s’声明的 INTRINSIC 不存在"
 
-#: fortran/resolve.cc:1878
+#: fortran/resolve.cc:1895
 #, fuzzy, 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 "在%2$L处由内建函数‘%1$s’声明的 INTRINSIC 在当前的标准设置中是不可用的,但在 %3$s 下可用。使用一个适当的 -std=* 选项或启用 -fall-intrinsics 以便使用它。"
 
-#: fortran/resolve.cc:1914
+#: fortran/resolve.cc:1931
 #, fuzzy, gcc-internal-format
 msgid "Non-RECURSIVE procedure %qs at %L is possibly calling itself recursively.  Declare it RECURSIVE or use %<-frecursive%>"
 msgstr "%2$L处非 RECURSIVE 过程‘%1$s’可能递归地调用它自己。请将它声明为 RECURSIVE 或使用 -frecursive"
 
-#: fortran/resolve.cc:1972 fortran/resolve.cc:10347 fortran/resolve.cc:12076
+#: fortran/resolve.cc:1989 fortran/resolve.cc:10367 fortran/resolve.cc:12105
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d referenced at %L is never defined"
 msgstr "标号 %d(引用自 %L)从未被定义"
 
-#: 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 "内部过程‘%s’在%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 "语句函数‘%s’在%L处不允许用作实参"
 
-#: 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 "内建函数‘%s’在%L处不允许用作实参"
 
-#: fortran/resolve.cc:2037
+#: fortran/resolve.cc:2054
 #, fuzzy, gcc-internal-format
 msgid "Internal procedure %qs is used as actual argument at %L"
 msgstr "内部过程‘%s’在%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 "ELEMENTAL 非 INTRINSIC 过程‘%s’不允许在%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 "%2$L处对‘%1$s’的引用找不到特定的 INTRINSIC 过程"
 
-#: fortran/resolve.cc:2094
+#: fortran/resolve.cc:2111
 #, fuzzy, gcc-internal-format
 msgid "Symbol %qs at %L is ambiguous"
 msgstr "%C处 TYPE 定义中的歧义符号"
 
-#: fortran/resolve.cc:2149
+#: fortran/resolve.cc:2166
 #, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L is not of numeric type"
 msgstr "%L处按值传递的实参不具有数字类型"
 
-#: fortran/resolve.cc:2156
+#: fortran/resolve.cc:2173
 #, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L cannot be an array or an array section"
 msgstr "%L处按值传递的实参不能是数组或数组段"
 
-#: fortran/resolve.cc:2170
+#: fortran/resolve.cc:2187
 #, gcc-internal-format, gfc-internal-format
 msgid "By-value argument at %L is not allowed in this context"
 msgstr "%L处上下文中不允许使用按值传递的实参"
 
-#: 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 "不允许按位置传递%L处的内部过程"
 
-#: 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 "ELEMENTAL 非 INTRINSIC 过程‘%s’不允许在%L处作为实际参数"
 
-#: 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 "Coindexed 实际参数于 %L 与 ultimate 指标成分"
 
-#: fortran/resolve.cc:2349
+#: fortran/resolve.cc:2366
 #, fuzzy, 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 "%2$L处的‘%1$s’是个数组且是可选的;如果它缺失, 它不能是一个 ELEMENTAL 过程的实际参数,除非有一个具有相同秩的非可选的参数(12.4.1.5)"
 
-#: fortran/resolve.cc:2387
+#: fortran/resolve.cc:2405
 #, fuzzy, 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 "%1$L处 ELEMENTAL 子程序‘%4$s’的 INTENT(%2$s) 哑‘%3$s’的实际参数是一个标量,但是另一个实际参数是一个数组"
 
-#: fortran/resolve.cc:2661
+#: fortran/resolve.cc:2679
 #, fuzzy, gcc-internal-format
 msgid "Return type mismatch of function %qs at %L (%s/%s)"
 msgstr "函数不能返回函数"
 
-#: fortran/resolve.cc:2688
+#: fortran/resolve.cc:2706
 #, fuzzy, gcc-internal-format
 msgid "Interface mismatch in global procedure %qs at %L: %s"
 msgstr "%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 "%2$L处的泛型‘%1$s’没有指定的函数"
 
-#: 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 "%2$L处泛型函数‘%1$s’与特定的内建接口不一致"
 
-#: 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 "%2$L 处初始化表达式中的函数 ‘%1$qs’ 必须是一个内建函数"
 
-#: fortran/resolve.cc:2907
+#: fortran/resolve.cc:2925
 #, fuzzy, gcc-internal-format
 msgid "Unable to resolve the specific function %qs at %L"
 msgstr "不能解析 %2$L处的函数‘%1$s’"
 
-#: 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 "%2$L处的函数‘%1$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 "%2$L处的函数‘%1$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 "%2$L处对非 PURE 函数‘%1$s’的引用出现在 FORALL %3$s 中"
 
-#: 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 "%2$L处对非 PURE 函数‘%1$s’的引用出现在 FORALL %3$s 中"
 
-#: 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 "%2$L处对非 PURE 函数‘%1$s’的引用出现在 FORALL %3$s 中"
 
-#: fortran/resolve.cc:3225
+#: fortran/resolve.cc:3243
 #, fuzzy, gcc-internal-format
 msgid "Unexpected junk after %qs at %L"
 msgstr "%C处 ELSE 语句后有非预期的垃圾字符"
 
-#: fortran/resolve.cc:3236
+#: fortran/resolve.cc:3254
 #, fuzzy, gcc-internal-format
 msgid "%qs at %L is not a function"
 msgstr "在函数%qs中"
 
-#: 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 "%2$L处的 ABSTRACT INTERFACE‘%1$s’不能被引用"
 
-#: 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
 #, fuzzy, gcc-internal-format
 msgid "Function %qs is declared CHARACTER(*) and cannot be used at %L since it is not a dummy argument"
 msgstr "函数‘%s’被声明为 CHARACTER(*)从而不能被使用在%L处,因为它不是一个虚参"
 
-#: fortran/resolve.cc:3333
+#: fortran/resolve.cc:3351
 #, fuzzy, gcc-internal-format
 msgid "resolve_function(): bad function type"
 msgstr "不良的 C++ 方法函数类型"
 
-#: 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
 #, fuzzy, gcc-internal-format
 msgid "User defined non-ELEMENTAL function %qs at %L not allowed in WORKSHARE construct"
 msgstr "%2$L处用户定义的非 ELEMENTAL 函数‘%1$s’不允许出现在 WORKSHARE 构造中"
 
-#: 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 "%2$L处 ENTRY‘%1$s’不能递归调用,因为函数‘%3$s’并非 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 "%2$L处的函数‘%1$s’不能被递归调用,因为它并非 RECURSIVE"
 
-#: fortran/resolve.cc:3469
+#: fortran/resolve.cc:3487
 #, fuzzy, gcc-internal-format
 msgid "Using function %qs at %L is deprecated"
 msgstr "已弃用%qE"
 
-#: 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 "%2$L处 FORALL 块内对‘%1$s’子例程的调用不是 PURE"
 
-#: 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 "%2$L处 FORALL 块内对‘%1$s’子例程的调用不是 PURE"
 
-#: fortran/resolve.cc:3497
+#: fortran/resolve.cc:3515
 #, fuzzy, gcc-internal-format
 msgid "Subroutine call to %qs at %L is not PURE"
 msgstr "%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 "泛型‘%s’在%L处没有特定的子进程"
 
-#: 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 "%2$L处泛型子进程‘%1$s’与一个内建子进程接口不一致"
 
-#: 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 "%2$L 处初始化表达式中的函数 ‘%1$qs’ 必须是一个内建函数"
 
-#: fortran/resolve.cc:3654
+#: fortran/resolve.cc:3672
 #, fuzzy, gcc-internal-format
 msgid "Unable to resolve the specific subroutine %qs at %L"
 msgstr "不能解决%2$L处的指定子例程‘%1$s’"
 
-#: fortran/resolve.cc:3712
+#: fortran/resolve.cc:3730
 #, fuzzy, gcc-internal-format
 #| msgid "'%s' at %L has a type, which is not consistent with the CALL at %L"
 msgid "%qs at %L has a type, which is not consistent with the CALL at %L"
 msgstr "%2$L处的‘%1$s’的类型与%3$L处 CALL 的类型不一致"
 
-#: 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 "%2$L处 ENTRY‘%1$s’不能被递归调用,因为子进程‘%3$s’并非 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 "%2$L处 SUBROUTINE‘%1$s’不能递归调用,因为它并非 RECURSIVE"
 
-#: fortran/resolve.cc:3800
+#: fortran/resolve.cc:3818
 #, fuzzy, gcc-internal-format
 msgid "resolve_subroutine(): bad function type"
 msgstr "不良的 C++ 方法函数类型"
 
-#: fortran/resolve.cc:3817
+#: fortran/resolve.cc:3835
 #, fuzzy, gcc-internal-format
 msgid "Using subroutine %qs at %L is deprecated"
 msgstr "已弃用%qE"
 
-#: fortran/resolve.cc:3844
+#: fortran/resolve.cc:3862
 #, gcc-internal-format, gfc-internal-format
 msgid "Shapes for operands at %L and %L are not conformable"
 msgstr "%L和%L处的操作数外形不相容"
 
-#: fortran/resolve.cc:3896
+#: fortran/resolve.cc:3914
 #, fuzzy, gcc-internal-format
 msgid "logical_to_bitwise(): Bad intrinsic"
 msgstr "%L处内建运算符接口必须是一个 FUNCTION"
 
-#: fortran/resolve.cc:3999
+#: fortran/resolve.cc:4017
 #, fuzzy, gcc-internal-format
 msgid "Impure function %qs at %L might not be evaluated"
 msgstr "指定CHARACTER(*) 函数‘%s’在%L处不能为指针值"
 
-#: 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 "当内联函数无法被内联时给出警告"
 
-#: fortran/resolve.cc:4080
+#: fortran/resolve.cc:4098
 #, fuzzy, gcc-internal-format
 #| msgid "By-value argument at %L cannot be an array or an array section"
 msgid "BOZ literal constant at %L cannot be an operand of unary operator %qs"
 msgstr "%L处按值传递的实参不能是数组或数组段"
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "BOZ literal constant near %L cannot appear as an operand of a relational operator"
 msgstr ""
 
-#: fortran/resolve.cc:4332
+#: fortran/resolve.cc:4350
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Invalid kind for %s at %L"
 msgid "Equality comparison for %s at %L"
 msgstr "%2$L处 %1$s 种别无效"
 
-#: fortran/resolve.cc:4334
+#: fortran/resolve.cc:4352
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Invalid kind for %s at %L"
 msgid "Inequality comparison for %s at %L"
 msgstr "%2$L处 %1$s 种别无效"
 
-#: fortran/resolve.cc:4394
+#: fortran/resolve.cc:4412
 #, fuzzy, gcc-internal-format
 msgid "resolve_operator(): Bad intrinsic"
 msgstr "%L处内建运算符接口必须是一个 FUNCTION"
 
-#: fortran/resolve.cc:4564 fortran/resolve.cc:4587
+#: fortran/resolve.cc:4582 fortran/resolve.cc:4605
 #, gcc-internal-format
 msgid "compare_bound_int(): Bad expression"
 msgstr ""
 
-#: 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 "%1$L处数组引用在第 %4$d 维中越界(%2$ld < %3$ld)"
 
-#: 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 "%1$L处数组引用在第 %4$d 维中越界(%2$ld < %3$ld)"
 
-#: fortran/resolve.cc:4697
+#: fortran/resolve.cc:4715
 #, gcc-internal-format, gfc-internal-format
 msgid "Array reference at %L is out of bounds (%ld > %ld) in dimension %d"
 msgstr "%1$L处数组引用在第 %4$d 维中越界(%2$ld > %3$ld)"
 
-#: 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 "%1$L处数组引用在第 %4$d 维中越界(%2$ld < %3$ld)"
 
-#: fortran/resolve.cc:4722
+#: fortran/resolve.cc:4740
 #, gcc-internal-format, gfc-internal-format
 msgid "Illegal stride of zero at %L"
 msgstr "%L 零间隔非法"
 
-#: fortran/resolve.cc:4739
+#: fortran/resolve.cc:4757
 #, gcc-internal-format, gfc-internal-format
 msgid "Lower array reference at %L is out of bounds (%ld < %ld) in dimension %d"
 msgstr "%1$L处数组下限引用在第 %4$d 维中越界(%2$ld < %3$ld)"
 
-#: fortran/resolve.cc:4747
+#: fortran/resolve.cc:4765
 #, gcc-internal-format, gfc-internal-format
 msgid "Lower array reference at %L is out of bounds (%ld > %ld) in dimension %d"
 msgstr "%1$L处数组下限引用在第 %4$d 维中越界(%2$ld > %3$ld)"
 
-#: fortran/resolve.cc:4763
+#: fortran/resolve.cc:4781
 #, gcc-internal-format, gfc-internal-format
 msgid "Upper array reference at %L is out of bounds (%ld < %ld) in dimension %d"
 msgstr "%1$L处数组上限引用在第 %4$d 维中越界(%2$ld < %3$ld)"
 
-#: fortran/resolve.cc:4772
+#: fortran/resolve.cc:4790
 #, gcc-internal-format, gfc-internal-format
 msgid "Upper array reference at %L is out of bounds (%ld > %ld) in dimension %d"
 msgstr "%1$L处数组上限引用在第 %4$d 维中越界(%2$ld > %3$ld)"
 
-#: fortran/resolve.cc:4788
+#: fortran/resolve.cc:4806
 #, fuzzy, gcc-internal-format
 msgid "check_dimension(): Bad array reference"
 msgstr "%L处数组引用错误"
 
-#: 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 "%L处未指定假定大小数组段的最右端上限"
 
-#: fortran/resolve.cc:4821
+#: fortran/resolve.cc:4839
 #, gcc-internal-format, gfc-internal-format
 msgid "Rank mismatch in array reference at %L (%d/%d)"
 msgstr "%L处数组引用中秩不匹配(%d/%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 "%L处数组引用中秩不匹配(%d/%d)"
 
-#: 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 "%3$L处内建函数‘%2$s’的实参‘%1$s’必须是一个标量"
 
-#: fortran/resolve.cc:4873
+#: fortran/resolve.cc:4891
 #, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L must be scalar"
 msgstr "%L处数组索引必须是标量"
 
-#: fortran/resolve.cc:4879
+#: fortran/resolve.cc:4897
 #, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L must be of INTEGER type, found %s"
 msgstr "%L处数组索引必须具有 INTEGER 类型而不是 %s"
 
-#: fortran/resolve.cc:4885
+#: fortran/resolve.cc:4903
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "REAL array index at %L"
 msgstr "%L处数组索引是一个秩为 %d 的数组"
 
-#: fortran/resolve.cc:4924
+#: fortran/resolve.cc:4942
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument dim at %L must be scalar"
 msgstr "%L 实参维数必须是标量"
 
-#: fortran/resolve.cc:4931
+#: fortran/resolve.cc:4949
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument dim at %L must be of INTEGER type"
 msgstr "%L处实参维数必须具有 INTEGER 类型"
 
-#: fortran/resolve.cc:4989
+#: fortran/resolve.cc:5007
 #, fuzzy, gcc-internal-format
 msgid "find_array_spec(): Missing spec"
 msgstr "%C处 Cray 指针重复指定了数组"
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "Array index at %L is an array of rank %d"
 msgstr "%L处数组索引是一个秩为 %d 的数组"
 
-#: fortran/resolve.cc:5153
+#: fortran/resolve.cc:5171
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L must be of type INTEGER"
 msgstr "%L处的子字符串起始索引类型必须为 INTEGER"
 
-#: fortran/resolve.cc:5160
+#: fortran/resolve.cc:5178
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring start index at %L must be scalar"
 msgstr "%L处的子字符串起始索引必须是标量"
 
-#: fortran/resolve.cc:5182
+#: fortran/resolve.cc:5200
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L must be of type INTEGER"
 msgstr "%L处的子字符串终止索引类型必须为 INTEGER"
 
-#: fortran/resolve.cc:5189
+#: fortran/resolve.cc:5207
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L must be scalar"
 msgstr "%L处的子字符串终止索引必须是标量"
 
-#: fortran/resolve.cc:5209
+#: fortran/resolve.cc:5227
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring end index at %L is too large"
 msgstr "%L处子串结束索引太大"
 
-#: fortran/resolve.cc:5399
+#: fortran/resolve.cc:5417
 #, fuzzy, gcc-internal-format
 msgid "resolve_ref(): Bad array reference"
 msgstr "%L处数组引用错误"
 
-#: fortran/resolve.cc:5413
+#: fortran/resolve.cc:5431
 #, 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 "%L处对有非零秩的部分引用的右侧的组件不能有 POINTER 属性"
 
-#: fortran/resolve.cc:5423
+#: fortran/resolve.cc:5441
 #, 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 "%L处对有非零秩的部分引用的右侧的组件不能有 ALLOCATABLE 属性"
 
-#: fortran/resolve.cc:5469
+#: fortran/resolve.cc:5487
 #, gcc-internal-format, gfc-internal-format
 msgid "Two or more part references with nonzero rank must not be specified at %L"
 msgstr "%L处不能指定两个或以上秩不为零的部分引用"
 
-#: 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 "假定外形的数组在 %L 处必须是哑参数"
 
-#: 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 "%L处假定外形的数组必须是一个虚参"
@@ -77032,12 +77284,12 @@ msgstr "%L处假定外形的数组必须是一个虚参"
 #. 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
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-type variable %s at %L as actual argument to an inquiry function shall be the first argument"
 msgstr ""
 
-#: fortran/resolve.cc: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 "%L处假定外形的数组必须是一个虚参"
@@ -77046,294 +77298,294 @@ msgstr "%L处假定外形的数组必须是一个虚参"
 #. 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
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank variable %s at %L as actual argument to an inquiry function shall be the first argument"
 msgstr ""
 
-#: fortran/resolve.cc: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 "“%s”是必须是一个模块过程或有显式接口的外部过程于 %L 处"
 
-#: 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 "数组‘%s’在%L处不能有延迟的外形"
 
-#: 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 "数组‘%s’在%L处不能有延迟的外形"
 
-#: fortran/resolve.cc:5910
+#: fortran/resolve.cc:5928
 #, fuzzy, 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 "用在一个规格说明表达式中的变量‘%s’在%L处的引用出现在该变量是其参数的 ENTRY 语句之前"
 
-#: fortran/resolve.cc:5915
+#: fortran/resolve.cc:5933
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs is used at %L before the ENTRY statement in which it is a parameter"
 msgstr "变量‘%s’在%L处的使用出现在该变量是其参数的 ENTRY 语句之前"
 
-#: fortran/resolve.cc:5985
+#: fortran/resolve.cc:6003
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Polymorphic subobject of coindexed object at %L"
 msgstr "%2$L处非多态的传递对象哑元实参‘%1$s’"
 
-#: 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 "Coindexed 对象与 polymorphic allocatable subcomponent 于 %L"
 
-#: fortran/resolve.cc:6014
+#: fortran/resolve.cc:6032
 #, fuzzy, gcc-internal-format
 msgid "Using variable %qs at %L is deprecated"
 msgstr "已弃用%qE"
 
-#: 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 "%C处类型指定无效"
 
-#: fortran/resolve.cc:6372
+#: fortran/resolve.cc:6390
 #, gcc-internal-format, gfc-internal-format
 msgid "Passed-object at %L must be scalar"
 msgstr "%L处传递的对象必须是标量"
 
-#: 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 "%L处类型限定过程调用的基类型是 ABSTRACT 类型‘%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 "%L处 NOPASS 类型限定过程调用的基对象必须是标量"
 
-#: fortran/resolve.cc:6427
+#: fortran/resolve.cc:6445
 #, gcc-internal-format, gfc-internal-format
 msgid "Base object for NOPASS type-bound procedure call at %L must be scalar"
 msgstr "%L处 NOPASS 类型限定过程调用的基对象必须是标量"
 
 #. 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 "%2$L处对 GENERIC‘%1$s’的调用没有找到匹配特别的限定"
 
-#: fortran/resolve.cc:6649
+#: fortran/resolve.cc:6667
 #, fuzzy, gcc-internal-format
 msgid "%qs at %L should be a SUBROUTINE"
 msgstr "%L处的运算符接口必须是一个 SUBROUTINE"
 
-#: fortran/resolve.cc:6701
+#: fortran/resolve.cc:6719
 #, fuzzy, gcc-internal-format
 msgid "%qs at %L should be a FUNCTION"
 msgstr "在函数%qs中"
 
-#: fortran/resolve.cc:7236
+#: fortran/resolve.cc:7254
 #, fuzzy, gcc-internal-format
 msgid "gfc_resolve_expr(): Bad expression type"
 msgstr "需要表达式类型"
 
-#: fortran/resolve.cc:7269
+#: fortran/resolve.cc:7287
 #, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be a scalar"
 msgstr "%s (%L处)必须是一个标量"
 
-#: fortran/resolve.cc:7279
+#: fortran/resolve.cc:7297
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "%s at %L must be integer"
 msgstr "%s (%L处)必须是 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 (%L处)必须是 INTEGER"
 
-#: fortran/resolve.cc:7345
+#: fortran/resolve.cc:7363
 #, gcc-internal-format, gfc-internal-format
 msgid "Step expression in DO loop at %L cannot be zero"
 msgstr "%L处的 DO 循环中的步进表达式不能为零"
 
-#: fortran/resolve.cc:7368
+#: fortran/resolve.cc:7386
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "DO loop at %L will be executed zero times"
 msgstr "%L处的 DO 循环中的步进表达式不能为零"
 
-#: 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
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL index-name at %L must be a scalar INTEGER"
 msgstr "%L处 FORALL 索引名必须是一个标量整数"
 
-#: fortran/resolve.cc:7457
+#: fortran/resolve.cc:7475
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL start expression at %L must be a scalar INTEGER"
 msgstr "%L处 FORALL 起始表达式必须是一个标量整数"
 
-#: fortran/resolve.cc:7464
+#: fortran/resolve.cc:7482
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL end expression at %L must be a scalar INTEGER"
 msgstr "%L处 FORALL 结束表达式必须是一个标量整数"
 
-#: fortran/resolve.cc:7472
+#: fortran/resolve.cc:7490
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL stride expression at %L must be a scalar %s"
 msgstr "%L处 FORALL 间隔表达式必须是一个标量 %s"
 
-#: fortran/resolve.cc:7477
+#: fortran/resolve.cc:7495
 #, gcc-internal-format, gfc-internal-format
 msgid "FORALL stride expression at %L cannot be zero"
 msgstr "%L处 FORALL 间隔表达式不能是零"
 
-#: 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 "FORALL 索引‘%s’不能出现在%L处的三元组规格说明中"
 
-#: fortran/resolve.cc:7594 fortran/resolve.cc:7892
+#: fortran/resolve.cc:7612 fortran/resolve.cc:7910
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L must be ALLOCATABLE or a POINTER"
 msgstr "%L处的分配对象必须是 ALLOCATABLE 或 POINTER"
 
-#: 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 "%L处的分配对象必须是 ALLOCATABLE 或 POINTER"
 
-#: 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 "%L处的源表达式必须是标量或者与%L处的分配对象有相同的秩"
 
-#: 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 "%L处的源表达式和%L处的分配对象必须有相同的外形"
 
-#: fortran/resolve.cc:7903
+#: fortran/resolve.cc:7921
 #, gcc-internal-format, gfc-internal-format
 msgid "Type of entity at %L is type incompatible with source-expr at %L"
 msgstr "%L处实体的类型与%L处的源表达式类型不兼容"
 
-#: 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 "%L处的分配对象和%L处的源表达式应该有相同的种别类型参数"
 
-#: fortran/resolve.cc:7929
+#: fortran/resolve.cc:7947
 #, fuzzy, 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 "source-expr 于 %L 应该 neither 是的类型 LOCK_TYPE nor 有 LOCK_TYPE 成分如果 allocate-object 于 %L 是 coarray"
 
-#: fortran/resolve.cc:7944
+#: fortran/resolve.cc:7962
 #, fuzzy, 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 "source-expr 于 %L 应该 neither 是的类型 LOCK_TYPE nor 有 LOCK_TYPE 成分如果 allocate-object 于 %L 是 coarray"
 
-#: fortran/resolve.cc:7957
+#: fortran/resolve.cc:7975
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Allocating %s of ABSTRACT base type at %L requires a type-spec or source-expr"
 msgstr "%2$L处分配具有 ABSTRACT 基类型的 %1$s 需要一个类型指定或 SOURCE="
 
-#: fortran/resolve.cc:7975
+#: fortran/resolve.cc:7993
 #, fuzzy, 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 "配置 %s 于 %L 与 type-spec 需求相同 character-length 参数作为在中声明"
 
-#: fortran/resolve.cc:8056 fortran/resolve.cc:8071
+#: fortran/resolve.cc:8074 fortran/resolve.cc:8089
 #, gcc-internal-format, gfc-internal-format
 msgid "Array specification required in ALLOCATE statement at %L"
 msgstr "%L处的 ALLOCATE 语句中需要数组规格说明"
 
-#: fortran/resolve.cc:8063
+#: fortran/resolve.cc:8081
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Array specification required in ALLOCATE statement at %L"
 msgid "Array specification or array-valued SOURCE= expression required in ALLOCATE statement at %L"
 msgstr "%L处的 ALLOCATE 语句中需要数组规格说明"
 
-#: 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 "%L处的 ALLOCATE 语句中需要数组规格说明"
 
-#: fortran/resolve.cc:8097 fortran/resolve.cc:8126 fortran/resolve.cc:8154
+#: fortran/resolve.cc:8115 fortran/resolve.cc:8144 fortran/resolve.cc:8172
 #, gcc-internal-format, gfc-internal-format
 msgid "Bad array specification in ALLOCATE statement at %L"
 msgstr "%L处的 ALLOCATE 语句中有错误的数组规格"
 
-#: 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
 #, fuzzy, 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 "‘%s’不能出现在%L处其自身被分配的 ALLOCATE 语句的数组规格说明中"
 
-#: 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 "%L处的 ALLOCATE 语句中需要数组规格说明"
 
-#: 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 "%L处的 ALLOCATE 语句中有错误的数组规格"
 
-#: fortran/resolve.cc:8230
+#: fortran/resolve.cc:8248
 #, gcc-internal-format, gfc-internal-format
 msgid "Stat-variable at %L must be a scalar INTEGER variable"
 msgstr "%L处 stat 变量必须是一个标量 INTEGER 变量"
 
-#: fortran/resolve.cc:8259
+#: fortran/resolve.cc:8277
 #, gcc-internal-format, gfc-internal-format
 msgid "Stat-variable at %L shall not be %sd within the same %s statement"
 msgstr "%1$L处的统计变量不能在同一个 %3$s 语句中被 %2$s"
 
-#: 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 "%L处的 ERRMSG 没有 STAT 标记所以不起作用"
 
-#: 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 "%L处错误信息变量必须是一个标量 CHARACTER 变量"
 
-#: fortran/resolve.cc:8315
+#: fortran/resolve.cc:8333
 #, gcc-internal-format, gfc-internal-format
 msgid "Errmsg-variable at %L shall not be %sd within the same %s statement"
 msgstr "%1$L处的错误信息变量不能在同一 %3$s 语句中被 %2$s"
 
-#: fortran/resolve.cc:8347
+#: fortran/resolve.cc:8365
 #, gcc-internal-format, gfc-internal-format
 msgid "Allocate-object at %L also appears at %L"
 msgstr "%L处分配的对象也出现在%L处"
 
-#: 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 "%L处的分配对象必须是 ALLOCATABLE 或 POINTER"
@@ -77342,285 +77594,285 @@ msgstr "%L处的分配对象必须是 ALLOCATABLE 或 POINTER"
 #. 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 "%L处的 CASE 标号与%L处的 CASE 标号重叠"
 
-#: 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 "%L处 CASE 语句中的表达式必须具有 %s 类型"
 
-#: 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 "%L 处 CASE 语句中的表达式种别必须为 %d"
 
-#: 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 "%L处 CASE 语句中的表达式必须为标量"
 
-#: fortran/resolve.cc:8708
+#: fortran/resolve.cc:8726
 #, gcc-internal-format, gfc-internal-format
 msgid "Selection expression in computed GOTO statement at %L must be a scalar integer expression"
 msgstr "%L处计算转移 GOTO 语句的选择表达式必须是一个标量整数表达式"
 
-#: fortran/resolve.cc:8727
+#: fortran/resolve.cc:8745
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of SELECT statement at %L cannot be %s"
 msgstr "%L处 SELECT 语句的实参不能是 %s"
 
-#: fortran/resolve.cc:8737
+#: fortran/resolve.cc:8755
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of SELECT statement at %L must be a scalar expression"
 msgstr "%L处 SELECT 语句中的实参必须为标量"
 
-#: 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 "%L处 CASE 语句中的表达式必须具有 %s 类型"
 
-#: 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 "%L处的 DEFAULT CASE 为%L处的第二个 DEFAULT CASE 所跟随"
 
-#: fortran/resolve.cc:8851
+#: fortran/resolve.cc:8869
 #, gcc-internal-format, gfc-internal-format
 msgid "Logical range in CASE statement at %L is not allowed"
 msgstr "%L处 CASE 语句中的逻辑范围是不被允许的"
 
-#: 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 "%L 处 CASE 语句中的常量逻辑值被重复了"
 
-#: fortran/resolve.cc:8879
+#: fortran/resolve.cc:8897
 #, gcc-internal-format, gfc-internal-format
 msgid "Range specification at %L can never be matched"
 msgstr "%L处范围规格无法匹配"
 
-#: 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 "%L处逻辑 SELECT CASE 块有多于两个的情况"
 
-#: fortran/resolve.cc:9033
+#: fortran/resolve.cc:9051
 #, fuzzy, gcc-internal-format
 msgid "Associating entity %qs at %L is a procedure pointer"
 msgstr "%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’在%C处不能用作已定义的运算符"
 
-#: fortran/resolve.cc:9059
+#: fortran/resolve.cc:9077
 #, fuzzy, gcc-internal-format
 msgid "Associating entity %qs at %L is a procedure name"
 msgstr "%2$L 处的名字“%1$s”已经在 %4$L 处被用作 %3$s"
 
-#: 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 "选择子必须是立即数"
 
-#: fortran/resolve.cc:9087
+#: fortran/resolve.cc:9105
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Selector at %L has no type"
 msgstr "选择子必须是立即数"
 
-#: fortran/resolve.cc:9109
+#: fortran/resolve.cc:9127
 #, fuzzy, gcc-internal-format
 msgid "Associate-name %qs at %L is used as array"
 msgstr "%2$L 处的名字“%1$s”已经在 %4$L 处被用作 %3$s"
 
-#: 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 "%C处 SELECT TYPE 语句中的选择子应该是多态的"
 
-#: 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 "选择子必须是立即数"
 
-#: fortran/resolve.cc:9429
+#: fortran/resolve.cc:9449
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "CASE label at %L overlaps with CASE label at %L"
 msgid "TYPE IS at %L overlaps with TYPE IS at %L"
 msgstr "%L处的 CASE 标号与%L处的 CASE 标号重叠"
 
-#: fortran/resolve.cc:9442
+#: fortran/resolve.cc:9462
 #, fuzzy, gcc-internal-format
 msgid "Derived type %qs at %L must be extensible"
 msgstr "%2$L处派生类型‘%1$s’必须是可扩展的"
 
-#: 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 "%2$L处派生类型‘%1$s’必须是‘%3$s’的一个扩展"
 
-#: fortran/resolve.cc:9458
+#: fortran/resolve.cc:9478
 #, fuzzy, gcc-internal-format
 msgid "Unexpected intrinsic type %qs at %L"
 msgstr "对子进程名‘%s’非预期的使用,在%C处"
 
-#: 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 "数组‘%s’在%L处不能有延迟的外形"
 
-#: fortran/resolve.cc:9715
+#: fortran/resolve.cc:9735
 #, gcc-internal-format, gfc-internal-format
 msgid "Double CLASS IS block in SELECT TYPE statement at %L"
 msgstr "%L处 SELECT TYPE 语句中有双重的 CLASS IS 块"
 
-#: 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 "%%L处 NULL() 指针上下文无效"
 
-#: 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 "%L处的表达式必须具有标量类型"
 
-#: 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 "数据转移组件于 %L 无法 polymorphic 除非它被处理由定义的输入/输出进程"
 
-#: 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 "%L处数据传输元素不能有 POINTER 组件"
 
-#: 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 "%L处数据传输元素不能有 PRIVATE 组件"
 
-#: 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 "%L处数据传输元素不能有 ALLOCATABLE 组件"
 
-#: fortran/resolve.cc:10087
+#: fortran/resolve.cc:10107
 #, gcc-internal-format, gfc-internal-format
 msgid "Data transfer element at %L cannot have PRIVATE components"
 msgstr "%L处数据传输元素不能有 PRIVATE 组件"
 
-#: 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 "%L处数据传输元素不能有 POINTER 组件"
 
-#: fortran/resolve.cc:10108
+#: fortran/resolve.cc:10128
 #, gcc-internal-format, gfc-internal-format
 msgid "Data transfer element at %L cannot be a full reference to an assumed-size array"
 msgstr "%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 "%L处 !$OMP ATOMIC 语句必须设定一个内建类型的标量值"
 
-#: 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 "%L处 !$OMP ATOMIC 语句必须设定一个内建类型的标量值"
 
-#: 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 "‘%s’的实参在%L处必须是一个指针"
 
-#: 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 "‘%s’的实参在%L处必须是一个指针"
 
-#: 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 "%L处 stat 变量必须是一个标量 INTEGER 变量"
 
-#: 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 "%L处错误信息变量必须是一个标量 CHARACTER 变量"
 
-#: 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 "%L处 stat 变量必须是一个标量 INTEGER 变量"
 
-#: 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 "%L处 SELECT 语句中的实参必须为标量"
 
-#: 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 "%L处 SELECT 语句中的实参必须为标量"
 
-#: 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 "%L处 ACOS 的参数必须在 -1 和 1 之间"
 
-#: fortran/resolve.cc:10354
+#: fortran/resolve.cc:10374
 #, gcc-internal-format, gfc-internal-format
 msgid "Statement at %L is not a valid branch target statement for the branch statement at %L"
 msgstr "%L处的语句对%L处的分支语句而言不是一个有效的分支目标语句"
 
-#: 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 "%L处的分支可能导致无穷循环"
 
 #. 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 "前往叙述于 %L 树叶重要建构用于标贴于 %L"
 
-#: 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 "%s 语句在%C处离开 OpenMP 结构块"
@@ -77628,204 +77880,204 @@ msgstr "%s 语句在%C处离开 OpenMP 结构块"
 #. 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
 #, gcc-internal-format, gfc-internal-format
 msgid "Label at %L is not in the same block as the GOTO statement at %L"
 msgstr "%L处的标号与%L处 GOTO 语句不在相同的块中"
 
-#: fortran/resolve.cc:10497
+#: fortran/resolve.cc:10517
 #, gcc-internal-format, gfc-internal-format
 msgid "WHERE mask at %L has inconsistent shape"
 msgstr "%L处的 WHERE 掩码外形不一致"
 
-#: fortran/resolve.cc:10513
+#: fortran/resolve.cc:10533
 #, gcc-internal-format, gfc-internal-format
 msgid "WHERE assignment target at %L has inconsistent shape"
 msgstr "%L处 WHERE 赋值目标外形不一致"
 
-#: 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 "%L处 WHERE 中用户定义的非 ELEMENTAL 用户赋值"
 
-#: fortran/resolve.cc:10531 fortran/resolve.cc:10618
+#: fortran/resolve.cc:10551 fortran/resolve.cc:10638
 #, gcc-internal-format, gfc-internal-format
 msgid "Unsupported statement inside WHERE at %L"
 msgstr "%L处在 WHERE 内不支持的语句"
 
-#: fortran/resolve.cc:10562
+#: fortran/resolve.cc:10582
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to a FORALL index variable at %L"
 msgstr "%L处向 FORALL 索引变量赋值"
 
-#: fortran/resolve.cc:10571
+#: fortran/resolve.cc:10591
 #, fuzzy, 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 "%2$L处带索引‘%1$s’的 FORALL 没有被用在赋值的左侧,所以可能导致对这个对象的多个赋值"
 
-#: fortran/resolve.cc:10718
+#: fortran/resolve.cc:10738
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "FORALL construct at %L"
 msgstr "位置错误的%<@%D%>Objective-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 INTEGER"
 msgid "FORALL index-name at %L must be a scalar variable of type integer"
 msgstr "%L处 FORALL 索引名必须是一个标量整数"
 
-#: 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 "%L处外部 FORALL 构造已经有一个同名的索引"
 
-#: fortran/resolve.cc:10826
+#: fortran/resolve.cc:10846
 #, gcc-internal-format, gfc-internal-format
 msgid "WHERE/ELSEWHERE clause at %L requires a LOGICAL array"
 msgstr "%L处的 WHERE/ELSEWHERE 子句需要一个 LOGICAL 数组"
 
-#: fortran/resolve.cc:10941
+#: fortran/resolve.cc:10961
 #, gcc-internal-format
 msgid "gfc_resolve_blocks(): Bad block type"
 msgstr ""
 
-#: fortran/resolve.cc:11054
+#: fortran/resolve.cc:11074
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "CHARACTER expression will be truncated in assignment (%d/%d) at %L"
 msgid "CHARACTER expression will be truncated in assignment (%ld/%ld) at %L"
 msgstr "CHARACTER 表达式在%3$L处赋值时将被截断(%1$d/%2$d)"
 
-#: fortran/resolve.cc:11086
+#: fortran/resolve.cc:11106
 #, fuzzy, 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 "%L处一个非纯变量在 PURE 过程中被赋值给带有 POINTER 组件派生类型变量(12.6)"
 
 #. 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 "%L处 PURE 过程中指针赋值目标错误"
 
-#: fortran/resolve.cc:11136
+#: fortran/resolve.cc:11156
 #, gcc-internal-format, gfc-internal-format
 msgid "Assignment to polymorphic coarray at %L is not permitted"
 msgstr ""
 
-#: 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 "%L处赋值中的变量类型是 UNKNOWN"
 
-#: 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 "%L处向 FORALL 索引变量赋值"
 
-#: fortran/resolve.cc:11152
+#: fortran/resolve.cc:11172
 #, fuzzy, 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 "变量必须不是 polymorphic 在中 intrinsic 指派于 %L - 检查该有匹配特定的副常式用于‘=’运算符"
 
-#: 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 "%L处赋值中的变量类型不能是多态的"
 
-#: 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 "Invalid procedure pointer assignment at %L"
 msgid "Pointer procedure assignment at %L"
 msgstr "%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 "%L处计算转移 GOTO 语句的选择表达式必须是一个标量整数表达式"
 
-#: fortran/resolve.cc:11998
+#: fortran/resolve.cc:12027
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "ASSIGNED GOTO statement at %L requires an INTEGER variable"
 msgid "ASSIGNED GOTO statement at %L requires a scalar INTEGER variable"
 msgstr "ASSIGNED GOTO 语句在%L处需要一个 INTEGER 变量"
 
-#: 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 "变量‘%s’在 %L 尚未指派目标标号"
 
-#: fortran/resolve.cc:12013
+#: fortran/resolve.cc:12042
 #, gcc-internal-format, gfc-internal-format
 msgid "Alternate RETURN statement at %L requires a SCALAR-INTEGER return specifier"
 msgstr "%L处的替代 RETURN 语句需要一个 SCALAR-INTEGER 返回限定符"
 
-#: 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 "%C处 CASE 中需要初始化表达式"
 
-#: fortran/resolve.cc:12085
+#: fortran/resolve.cc:12114
 #, gcc-internal-format, gfc-internal-format
 msgid "ASSIGN statement at %L requires a scalar default INTEGER variable"
 msgstr "%L处的 ASSIGN 语句需要一个默认标量 INTEGER 变量"
 
-#: fortran/resolve.cc:12132
+#: fortran/resolve.cc:12161
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Invalid kind for %s at %L"
 msgid "Invalid NULL at %L"
 msgstr "%2$L处 %1$s 种别无效"
 
-#: fortran/resolve.cc:12136
+#: fortran/resolve.cc:12165
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Arithmetic IF statement at %L requires a numeric expression"
 msgid "Arithmetic IF statement at %L requires a scalar REAL or INTEGER expression"
 msgstr "%L处的算术 IF 语句要求一个数字表达式"
 
-#: fortran/resolve.cc:12197
+#: fortran/resolve.cc:12226
 #, gcc-internal-format
 msgid "gfc_resolve_code(): No expression on DO WHILE"
 msgstr ""
 
-#: fortran/resolve.cc:12202
+#: fortran/resolve.cc:12231
 #, gcc-internal-format, gfc-internal-format
 msgid "Exit condition of DO WHILE loop at %L must be a scalar LOGICAL expression"
 msgstr "%L处 DO WHILE 循环的退出条件必须是一个标量 LOGICAL 表达式"
 
-#: 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 "%L处的 IF 分句需要一个标量 LOGICAL 表达式"
 
-#: fortran/resolve.cc:12387
+#: fortran/resolve.cc:12416
 #, fuzzy, gcc-internal-format
 msgid "gfc_resolve_code(): Bad statement code"
 msgstr "gfc_trans_code():错误的语句代码"
 
-#: fortran/resolve.cc:12408
+#: fortran/resolve.cc:12437
 #, fuzzy, gcc-internal-format
 msgid "Using parameter %qs declared at %L is deprecated"
 msgstr "%2$L处声明了未使用的参数‘%1$s’"
 
-#: 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 "%2$L处的绑定标号‘%1$s’与 %4$L 处的全局实体‘%3$s’冲突"
 
 #. 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 "%2$L处的绑定标号‘%1$s’与 %4$L 处的全局实体‘%3$s’冲突"
@@ -77833,975 +78085,975 @@ msgstr "%2$L处的绑定标号‘%1$s’与 %4$L 处的全局实体‘%3$s’冲
 #. 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 "%2$L处的绑定标号‘%1$s’与 %4$L 处的全局实体‘%3$s’冲突"
 
-#: fortran/resolve.cc:12621
+#: fortran/resolve.cc:12650
 #, gcc-internal-format, gfc-internal-format
 msgid "String length at %L is too large"
 msgstr "%L处字符串太长"
 
-#: 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 "可分配的数组‘%s’在%L处必须有延迟的外形"
 
-#: fortran/resolve.cc:12860
+#: fortran/resolve.cc:12889
 #, fuzzy, gcc-internal-format
 msgid "Scalar object %qs at %L may not be ALLOCATABLE"
 msgstr "%2$L处标量对象‘%1$s’不能为 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 "数组指针‘%s’在%L处必须有延迟的外形"
 
-#: fortran/resolve.cc:12879
+#: fortran/resolve.cc:12908
 #, fuzzy, gcc-internal-format
 msgid "Array %qs at %L cannot have a deferred shape"
 msgstr "数组‘%s’在%L处不能有延迟的外形"
 
-#: 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 "%3$L处 CLASS 变量‘%2$s’的类型‘%1$s’不能被扩展"
 
-#: 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 "%2$L处的 CLASS 变量‘%1$s’必须是哑元、可分配的或者指针"
 
-#: fortran/resolve.cc:12940
+#: fortran/resolve.cc:12969
 #, fuzzy, gcc-internal-format
 #| msgid "The type '%s' cannot be host associated at %L because it is blocked by an incompatible object of the same name declared at %L"
 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 "‘%s’在%L处不能是主机相关的,因为它被在%L处声明的一个不兼容的同名对象所阻碍"
 
-#: 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 "Fortran 2008:%2$L处模块变量‘%1$s’隐含使用了 SAVE,因为默认初始化有此需求"
 
-#: 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 "语句函数‘%s’在%L处不允许用作实参"
 
 #. 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 '%s' at %L must have constant shape"
 msgid "The module or main program array %qs at %L must have constant shape"
 msgstr "%2$L处的模块或主程序数组‘%1$s’必须有常量外形"
 
-#: fortran/resolve.cc:13056
+#: fortran/resolve.cc:13085
 #, gcc-internal-format, gfc-internal-format
 msgid "Entity with assumed character length at %L must be a dummy argument or a PARAMETER"
 msgstr "%L处假定字符长度的实体必须是个虚参或是个 PARAMETER"
 
-#: fortran/resolve.cc:13077
+#: fortran/resolve.cc:13106
 #, fuzzy, gcc-internal-format
 #| msgid "'%s' at %L must have constant character length in this context"
 msgid "%qs at %L must have constant character length in this context"
 msgstr "变量‘%s’在%L处上下文中字符长度必须为常量"
 
-#: fortran/resolve.cc:13084
+#: fortran/resolve.cc:13113
 #, fuzzy, gcc-internal-format
 msgid "COMMON variable %qs at %L must have constant character length"
 msgstr "变量‘%s’在%L处上下文中字符长度必须为常量"
 
-#: fortran/resolve.cc:13131
+#: fortran/resolve.cc:13160
 #, fuzzy, gcc-internal-format
 msgid "Allocatable %qs at %L cannot have an initializer"
 msgstr "可分配的‘%s’在%L处不能有初始值设定"
 
-#: fortran/resolve.cc:13134
+#: fortran/resolve.cc:13163
 #, fuzzy, gcc-internal-format
 msgid "External %qs at %L cannot have an initializer"
 msgstr "外部‘%s’在%L处不能有初始值设定"
 
-#: fortran/resolve.cc:13137
+#: fortran/resolve.cc:13166
 #, fuzzy, gcc-internal-format
 msgid "Dummy %qs at %L cannot have an initializer"
 msgstr "哑元‘%s’在%L处不能有初始值设定"
 
-#: fortran/resolve.cc:13140
+#: fortran/resolve.cc:13169
 #, fuzzy, gcc-internal-format
 msgid "Intrinsic %qs at %L cannot have an initializer"
 msgstr "内建函数‘%s’在%L处不能有初始值设定"
 
-#: fortran/resolve.cc:13143
+#: fortran/resolve.cc:13172
 #, fuzzy, gcc-internal-format
 msgid "Function result %qs at %L cannot have an initializer"
 msgstr "函数结果‘%s’在%L处不能有初始值设定"
 
-#: fortran/resolve.cc:13146
+#: fortran/resolve.cc:13175
 #, fuzzy, gcc-internal-format
 msgid "Automatic array %qs at %L cannot have an initializer"
 msgstr "自动数组‘%s’在%L处不能有初始值设定"
 
-#: fortran/resolve.cc:13188
+#: fortran/resolve.cc:13217
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "in %s, at %s:%d"
 msgid "%s at %L"
 msgstr "在 %s 中,于 %s:%d"
 
-#: 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 "%2$L处有字符值的语句函数‘%1$s’必须有常量长度"
 
-#: 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 "Fortran 2003:%3$L处‘%1$s’是 PRIVATE 类型因而不能是 PUBLIC 类型‘%2$s’的虚参"
 
-#: fortran/resolve.cc:13265
+#: fortran/resolve.cc:13294
 #, fuzzy, gcc-internal-format
 msgid "Procedure %qs in PUBLIC interface %qs at %L takes dummy arguments of %qs which is PRIVATE"
 msgstr "Fortran 2003: %3$L处 PUBLIC 接口‘%2$s’中的过程‘%1$s’有 PRIVATE 的虚参‘%4$s’"
 
-#: fortran/resolve.cc:13283
+#: fortran/resolve.cc:13312
 #, fuzzy, gcc-internal-format
 msgid "Function %qs at %L cannot have an initializer"
 msgstr "函数‘%s’在%L处不能有初始值设定"
 
-#: fortran/resolve.cc:13295
+#: fortran/resolve.cc:13324
 #, fuzzy, gcc-internal-format
 msgid "External object %qs at %L may not have an initializer"
 msgstr "外部对象‘%s’在%L处不能有初始值设定"
 
-#: fortran/resolve.cc:13305
+#: fortran/resolve.cc:13334
 #, fuzzy, gcc-internal-format
 msgid "ELEMENTAL function %qs at %L must have a scalar result"
 msgstr "%2$L处 ELEMENTAL 函数‘%1$s’必须有一个标量返回值"
 
-#: 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 "语句函数‘%s’在%L处不允许用作实参"
 
-#: fortran/resolve.cc:13334
+#: fortran/resolve.cc:13363
 #, fuzzy, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be array-valued"
 msgstr "CHARACTER(*) 函数‘%s’在%L处不能为数组值"
 
-#: fortran/resolve.cc:13338
+#: fortran/resolve.cc:13367
 #, fuzzy, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be pointer-valued"
 msgstr "指定CHARACTER(*) 函数‘%s’在%L处不能为指针值"
 
-#: fortran/resolve.cc:13342
+#: fortran/resolve.cc:13371
 #, fuzzy, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be pure"
 msgstr "CHARACTER(*) 函数‘%s’在%L处不能为纯函数"
 
-#: fortran/resolve.cc:13346
+#: fortran/resolve.cc:13375
 #, fuzzy, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L cannot be recursive"
 msgstr "CHARACTER(*) 函数‘%s’在%L处不能是递归的"
 
-#: fortran/resolve.cc:13359
+#: fortran/resolve.cc:13388
 #, fuzzy, gcc-internal-format
 msgid "CHARACTER(*) function %qs at %L"
 msgstr "在函数%qs中"
 
-#: fortran/resolve.cc:13370
+#: fortran/resolve.cc:13399
 #, fuzzy, gcc-internal-format
 msgid "Procedure pointer %qs at %L shall not be elemental"
 msgstr "%2$L处的具有 PASS 的过程指针组件‘%1$s’必须至少有一个实参"
 
-#: fortran/resolve.cc:13376
+#: fortran/resolve.cc:13405
 #, fuzzy, gcc-internal-format
 msgid "Dummy procedure %qs at %L shall not be elemental"
 msgstr "哑过程‘%s’在%C处不能有泛型接口"
 
-#: 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 "%2$L处变量‘%1$s’不能既有 ALLOCATABLE 又有 BIND(C) 属性"
 
-#: fortran/resolve.cc:13453
+#: fortran/resolve.cc:13482
 #, fuzzy, gcc-internal-format
 msgid "PROCEDURE attribute conflicts with SAVE attribute in %qs at %L"
 msgstr "%L处 PURE 过程不能指定 SAVE 属性"
 
-#: 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 属性与%2$L处‘%1$s’中的 INTENT 属性冲突"
 
-#: 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 属性与在%2$L处‘%1$s’中的 RESULT 属性冲突"
 
-#: 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 属性与在%2$L处‘%1$s’中的 FUNCTION 属性冲突"
 
-#: 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 "%2$L处过程指针结果‘%1$s’缺少指针属性"
 
-#: fortran/resolve.cc:13522
+#: fortran/resolve.cc:13551
 #, gcc-internal-format, gfc-internal-format
 msgid "Mismatch in ELEMENTAL attribute between MODULE PROCEDURE at %L and its interface in %s"
 msgstr ""
 
-#: fortran/resolve.cc:13530
+#: fortran/resolve.cc:13559
 #, gcc-internal-format, gfc-internal-format
 msgid "Mismatch in PURE attribute between MODULE PROCEDURE at %L and its interface in %s"
 msgstr ""
 
-#: fortran/resolve.cc:13538
+#: fortran/resolve.cc:13567
 #, gcc-internal-format, gfc-internal-format
 msgid "Mismatch in RECURSIVE attribute between MODULE PROCEDURE at %L and its interface in %s"
 msgstr ""
 
-#: fortran/resolve.cc: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 "%L处 FINAL 过程的参数必须不是 OPTIONAL"
 
-#: fortran/resolve.cc:13640
+#: fortran/resolve.cc:13669
 #, gcc-internal-format, gfc-internal-format
 msgid "FINAL procedure at %L must have exactly one argument"
 msgstr "%L处的 FINAL 过程有且只有一个参数"
 
-#: 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 "%L处 FINAL 过程的参数必须不是 OPTIONAL"
 
-#: fortran/resolve.cc:13657
+#: fortran/resolve.cc:13686
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be a POINTER"
 msgstr "%L处 FINAL 过程的参数必须不是 POINTER"
 
-#: fortran/resolve.cc:13663
+#: fortran/resolve.cc:13692
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be ALLOCATABLE"
 msgstr "%L处 FINAL 过程的参数必须不是 ALLOCATABLE"
 
-#: fortran/resolve.cc:13669
+#: fortran/resolve.cc:13698
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be OPTIONAL"
 msgstr "%L处 FINAL 过程的参数必须不是 OPTIONAL"
 
-#: fortran/resolve.cc:13677
+#: fortran/resolve.cc:13706
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of FINAL procedure at %L must not be INTENT(OUT)"
 msgstr "%L处 FINAL 过程的参数必须不是 INTENT(OUT)"
 
-#: fortran/resolve.cc:13686
+#: fortran/resolve.cc:13715
 #, gcc-internal-format, gfc-internal-format
 msgid "Non-scalar FINAL procedure at %L should have assumed shape argument"
 msgstr "%L处的非标量 FINAL 过程应当有假定外形的参数"
 
-#: 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 "%2$L处声明的 FINAL 过程‘%1$s’有与‘%4$s’相同的秩(%3$d)"
 
-#: fortran/resolve.cc:13745
+#: fortran/resolve.cc:13774
 #, fuzzy, gcc-internal-format
 msgid "Only array FINAL procedures declared for derived type %qs defined at %L, suggest also scalar one"
 msgstr "仅为定义在%2$L处的派生类型‘%1$s’声明了数组 FINAL 过程,建议也定义一个标量过程"
 
-#: fortran/resolve.cc:13785
+#: fortran/resolve.cc:13814
 #, fuzzy, gcc-internal-format
 msgid "%qs and %qs cannot be mixed FUNCTION/SUBROUTINE for GENERIC %qs at %L"
 msgstr "%4$L处‘%1$s’和‘%2$s’对 GENERIC‘%3$s’不能是混合的 FUNCTION/SUBROUTINE"
 
-#: fortran/resolve.cc:13821
+#: fortran/resolve.cc:13850
 #, fuzzy, gcc-internal-format
 msgid "%qs and %qs for GENERIC %qs at %L are ambiguous"
 msgstr "引用%qs有歧义:出现在接口%qs和接口%qs中"
 
-#: 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 "未定义的指定绑定‘%1$s’用作%3$L处的 GENERIC‘%2$s’的目标"
 
-#: fortran/resolve.cc:13892
+#: fortran/resolve.cc:13921
 #, fuzzy, gcc-internal-format
 msgid "GENERIC %qs at %L must target a specific binding, %qs is GENERIC, too"
 msgstr "%2$L处 GENERIC‘%1$s’必须定位一个特定的绑定,‘%3$s’也是 GENERIC"
 
-#: fortran/resolve.cc:13920
+#: fortran/resolve.cc:13949
 #, fuzzy, gcc-internal-format
 msgid "GENERIC %qs at %L cannot overwrite specific binding with the same name"
 msgstr "%2$L处 GENERIC‘%1$s’无法覆盖同名的特定绑定"
 
-#: fortran/resolve.cc:13976
+#: fortran/resolve.cc:14005
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Type-bound operator at %L can't be NOPASS"
 msgid "Type-bound operator at %L cannot be NOPASS"
 msgstr "%L处类型限定的操作数不能是 NOPASS"
 
-#: 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 "%2$L处的‘%1$s’必须是一个模块过程或带有显式接口的外部过程"
 
-#: 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 "%3$L处有 PASS(%2$s)的过程‘%1$s’没有参数‘%4$s’"
 
-#: 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 "%2$L处有 PASS 的过程‘%1$s’必须至少带一个参数"
 
-#: 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 "%2$L处非多态的传递对象虚参‘%1$s’"
 
-#: 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 " %4$L处的具有 PASS(%3$s) 的‘%2$s’的参数‘%1$s’必须具有派生类型‘%5$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 "%2$L处‘%1$s’的传递对象虚参必须是标量"
 
-#: 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 "%2$L处‘%1$s’的传递对象虚参不能是 ALLOCATABLE"
 
-#: 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 "%2$L处‘%1$s’的传递对象虚参不能是 POINTER"
 
-#: 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 "%2$L处过程‘%1$s’和‘%3$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 "%2$L处过程‘%1$s’和‘%3$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 "%2$L处声明的派生类型‘%1$s’必须是 ABSTRACT,因为‘%3$s’是 DEFERRED 且没有被覆盖"
 
-#: 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 "数组指针‘%s’在%L处必须有延迟的外形"
 
-#: fortran/resolve.cc:14534
+#: fortran/resolve.cc:14563
 #, fuzzy, gcc-internal-format
 msgid "Component %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray"
 msgstr "成分‘%s’于 %L 的类型 (C_PTR) 或类型 (C_FUNPTR) 不应该是 coarray"
 
-#: fortran/resolve.cc:14544
+#: fortran/resolve.cc:14573
 #, fuzzy, gcc-internal-format
 msgid "Component %qs at %L with coarray component shall be a nonpointer, nonallocatable scalar"
 msgstr "成分‘%s’于 %L 与 coarray 成分应该是 nonpointer,nonallocatable 纯量"
 
-#: 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 "%2$L 处的“%1$s”不能有 VALUE 属性,因为它不是个虚参"
 
-#: fortran/resolve.cc:14580
+#: fortran/resolve.cc:14609
 #, fuzzy, gcc-internal-format
 #| msgid "Argument of ICHAR at %L must be of length one"
 msgid "Component %qs of BIND(C) type at %L must have length one"
 msgstr "%L处 ICHAR 的参数长度必须为 1"
 
-#: 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 "%3$L处带有 PASS(%2$s)的过程指针组件‘%1$s’没有参数‘%4$s’"
 
-#: 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 "%2$L处的具有 PASS 的过程指针组件‘%1$s’必须至少有一个实参"
 
-#: 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 "%4$L处具有 PASS(%3$s) 的‘%2$s’的参数‘%1$s’必须有派生类型‘%5$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 "%4$L 处的具有 PASS(%3$s) 的‘%2$s’的参数‘%1$s’必须是标量"
 
-#: 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 "%4$L处带 PASS(%3$s) 的‘%2$s’的参数‘%1$s’不能有 POINTER 属性"
 
-#: 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 "%4$L处带 PASS(%3$s) 的‘%2$s’的参数‘%1$s’不能是 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 "%3$L处‘%2$s’的组件‘%1$s’与一个继承的类型限定过程同名"
 
-#: fortran/resolve.cc:14791
+#: fortran/resolve.cc:14820
 #, fuzzy, gcc-internal-format
 msgid "Character length of component %qs needs to be a constant specification expression at %L"
 msgstr "%2$L处组件‘%1$s’的字符长度必须是一个常量规格表达式"
 
-#: fortran/resolve.cc:14802
+#: fortran/resolve.cc:14831
 #, fuzzy, gcc-internal-format
 msgid "Character component %qs of %qs at %L with deferred length must be a POINTER or ALLOCATABLE"
 msgstr "字符成分‘%s’的‘%s’于 %L 与已推迟长度必须是指标或 ALLOCATABLE"
 
-#: 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 "Fortran 2003:%3$L处组合‘%1$s’是一个 PRIVATE 类型,因此不能是 PUBLIC‘%2$s’的组合"
 
-#: fortran/resolve.cc:14843
+#: fortran/resolve.cc:14872
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Polymorphic component %s at %L in SEQUENCE or BIND(C) type %s"
 msgstr "Polymorphic 成分 %s 于 %L 在中串行或绑定©类型 %s"
 
-#: fortran/resolve.cc:14852
+#: fortran/resolve.cc:14881
 #, gcc-internal-format, gfc-internal-format
 msgid "Component %s of SEQUENCE type declared at %L does not have the SEQUENCE attribute"
 msgstr "%2$L处声明的有 SEQUENCE 类型的组件 %1$s 没有 SEQUENCE 属性"
 
-#: fortran/resolve.cc:14938
+#: fortran/resolve.cc:14967
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "non-constant initialization expression at %L"
 msgid "Conflicting initializers in union at %L and %L"
 msgstr "%L处非常量初始化表达式"
 
-#: fortran/resolve.cc:14983
+#: fortran/resolve.cc:15012
 #, fuzzy, gcc-internal-format
 msgid "As extending type %qs at %L has a coarray component, parent type %qs shall also have one"
 msgstr "作为延伸类型‘%s’于 %L 有 coarray 成分,亲代类型‘%s’应该也有一个"
 
-#: 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 "%2$L处不能扩展的派生类型‘%1$s’不能是 ABSTRACT"
 
-#: fortran/resolve.cc:15060
+#: fortran/resolve.cc:15089
 #, gcc-internal-format
 msgid "Parameterized type %qs does not have a component corresponding to parameter %qs at %L"
 msgstr ""
 
-#: 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 "%3$L处‘%2$s’的组件‘%1$s’与一个继承的类型限定过程同名"
 
-#: fortran/resolve.cc:15107
+#: fortran/resolve.cc:15136
 #, fuzzy, gcc-internal-format
 msgid "Derived type %qs at %L has not been declared"
 msgstr "%2$L处派生类型‘%1$s’必须是可扩展的"
 
-#: 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 "不允许 %3$L 处 %2$s 名字列表中假定大小的数组“%1$s”"
 
-#: 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 "%3$L处 NAMELIST 数组对象‘%1$s’在名字列表‘%2$s’不能有假定外形"
 
-#: 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 "%3$L处 NAMELIST 数组对象‘%1$s’在名字列表‘%2$s’必须有常外形"
 
-#: 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 "%3$L处 NAMELIST 数组对象‘%1$s’在名字列表‘%2$s’必须有常外形"
 
-#: 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 "%3$L处 NAMELIST 对象‘%1$s’声明为 PRIVATE 因此不能是 PUBLIC 名字列表‘%2$s’的成员"
 
-#: 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 "%3$L处 NAMELIST 对象‘%1$s’有使用相关的 PRIVATE 组件因此不能是 NAMELIST‘%2$s’的成员"
 
-#: 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 "%3$L处 NAMELIST 对象‘%1$s’有 PRIVATE 组件因此不能是 PUBLIC 名字列表‘%2$s’的成员"
 
-#: 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 属性与%2$L处‘%1$s’中的 NAMELIST 属性冲突"
 
-#: 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 "%2$L处的参数数组‘%1$s’不能是自动的或有延迟的外形"
 
-#: fortran/resolve.cc:15304
+#: fortran/resolve.cc:15333
 #, fuzzy, gcc-internal-format
 msgid "Implicitly typed PARAMETER %qs at %L doesn't match a later IMPLICIT type"
 msgstr "%2$L处隐式类型的 PARAMETER‘%1$s’与随后的 IMPLICIT 类型不匹配"
 
-#: fortran/resolve.cc:15315
+#: fortran/resolve.cc:15344
 #, gcc-internal-format, gfc-internal-format
 msgid "Incompatible derived type in PARAMETER at %L"
 msgstr "%L处 PARAMETER 中派生类型不兼容"
 
-#: fortran/resolve.cc:15323
+#: fortran/resolve.cc:15352
 #, fuzzy, gcc-internal-format
 msgid "CLASS variable %qs at %L cannot have the PARAMETER attribute"
 msgstr "%2$L处变量‘%1$s’不能既有 POINTER 又有 BIND(C) 属性"
 
-#: 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 "语句函数‘%s’在%L处不允许用作实参"
 
-#: 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 "%s 属性与 %s 属性在%L处冲突"
 
-#: 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 "%s 属性与 %s 属性在%L处冲突"
 
-#: 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 "%2$L 处的“%1$s”不能有 VALUE 属性,因为它不是个虚参"
 
-#: fortran/resolve.cc:15620
+#: fortran/resolve.cc:15649
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Bad specification for assumed size array at %C"
 msgid "Bad specification for assumed size array at %L"
 msgstr "%C处假定大小数组的规格说明错误"
 
-#: fortran/resolve.cc:15633
+#: fortran/resolve.cc:15662
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed size array at %L must be a dummy argument"
 msgstr "%L处假定大小的数组必须是一个虚参"
 
-#: fortran/resolve.cc:15636
+#: fortran/resolve.cc:15665
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed shape array at %L must be a dummy argument"
 msgstr "%L处假定外形的数组必须是一个虚参"
 
-#: 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 "%L处假定大小的数组必须是一个虚参"
 
-#: fortran/resolve.cc:15653
+#: fortran/resolve.cc:15682
 #, gcc-internal-format, gfc-internal-format
 msgid "Assumed-rank array at %L may not have the VALUE or CODIMENSION attribute"
 msgstr ""
 
-#: fortran/resolve.cc:15666
+#: fortran/resolve.cc:15695
 #, gcc-internal-format, gfc-internal-format
 msgid "Symbol at %L is not a DUMMY variable"
 msgstr "%L处的符号不是一个 DUMMY 变量"
 
-#: 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 "%2$L 处的“%1$s”不能有 VALUE 属性,因为它不是个虚参"
 
-#: 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 "%2$L处带 VALUE 属性的字符哑元‘%1$s’必须具有常数长度"
 
-#: 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 "%2$L处带 VALUE 属性与 C 可互操作的字符哑元‘%1$s’长度必须为 1"
 
-#: 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 "%2$L处派生类型‘%1$s’的类型‘%3$s’尚未定义"
 
-#: fortran/resolve.cc:15718
+#: fortran/resolve.cc:15747
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable %s at %L with NO_ARG_CHECK attribute shall be a dummy argument"
 msgstr ""
 
-#: fortran/resolve.cc:15727
+#: fortran/resolve.cc:15756
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable %s at %L with NO_ARG_CHECK attribute shall be of type TYPE(*) or of an numeric intrinsic type"
 msgstr ""
 
-#: fortran/resolve.cc: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 "%2$L处变量‘%1$s’不能既有 ALLOCATABLE 又有 BIND(C) 属性"
 
-#: 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 "%2$L处变量‘%1$s’不能既有 POINTER 又有 BIND(C) 属性"
 
-#: fortran/resolve.cc:15751
+#: fortran/resolve.cc:15780
 #, gcc-internal-format, gfc-internal-format
 msgid "Variable %s at %L with NO_ARG_CHECK attribute shall either be a scalar or an assumed-size array"
 msgstr ""
 
-#: fortran/resolve.cc: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 "%2$L处假定外形数组‘%1$s’不能用在初始化表达式中"
 
-#: 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 "%2$L处变量‘%1$s’不能既有 ALLOCATABLE 又有 BIND(C) 属性"
 
-#: 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 "%2$L处变量‘%1$s’不能既有 POINTER 又有 BIND(C) 属性"
 
-#: 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 "%C处的循环变量不能是一个子组件"
 
-#: fortran/resolve.cc:15818
+#: fortran/resolve.cc:15847
 #, fuzzy, 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 "%2$L处变量‘%1$s’不能是 BIND(C) 因为它既不是一个 COMMON 块也不是于模块级作用域声明的"
 
-#: fortran/resolve.cc:15828
+#: fortran/resolve.cc:15857
 #, fuzzy, gcc-internal-format
 msgid "BIND(C) Variable %qs at %L must have length one"
 msgstr "变量‘%s’在%L处上下文中字符长度必须为常量"
 
-#: fortran/resolve.cc:15907
+#: fortran/resolve.cc:15936
 #, fuzzy, gcc-internal-format
 msgid "PUBLIC %s %qs at %L of PRIVATE derived type %qs"
 msgstr "Fortran 2003:%3$L处 PUBLIC %1$s‘%2$s’具有 PRIVATE 派生类型‘%4$s’"
 
-#: fortran/resolve.cc:15922
+#: fortran/resolve.cc:15951
 #, fuzzy, 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 "变量 %s 于 %L 的类型 LOCK_TYPE 或与 subcomponent 的类型 LOCK_TYPE 必须是 coarray"
 
-#: fortran/resolve.cc:15935
+#: fortran/resolve.cc:15964
 #, fuzzy, 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 "变量 %s 于 %L 的类型 LOCK_TYPE 或与 subcomponent 的类型 LOCK_TYPE 必须是 coarray"
 
-#: 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 "%2$L处INTENT(OUT) 虚参‘%1$s’是 ASSUMED SIZE,所以不能有一个默认初始值设定"
 
-#: 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 "%2$L处的‘%1$s’虚参不能是 INTENT(OUT)"
 
-#: 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 "%2$L处的‘%1$s’虚参不能是 INTENT(OUT)"
 
-#: 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 "函数结果‘%s’在%L处不能有初始值设定"
 
-#: fortran/resolve.cc:15996
+#: fortran/resolve.cc:16025
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray"
 msgstr "变量‘%s’于 %L 的类型 (C_PTR) 或类型 (C_FUNPTR) 不应该是 coarray"
 
-#: fortran/resolve.cc:16009
+#: fortran/resolve.cc:16038
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs at %L with coarray component shall be a nonpointer, nonallocatable scalar, which is not a coarray"
 msgstr "变量‘%s’于 %L 与 coarray 成分应该是 nonpointer,nonallocatable 纯量"
 
-#: fortran/resolve.cc:16025
+#: fortran/resolve.cc:16054
 #, fuzzy, gcc-internal-format
 msgid "Variable %qs at %L is a coarray and is not ALLOCATABLE, SAVE nor a dummy argument"
 msgstr "变量‘%s’于 %L 是 coarray 和不是 ALLOCATABLE,保存 nor 虚参数"
 
-#: 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 "数组‘%s’在%L处不能有延迟的外形"
 
-#: fortran/resolve.cc:16040
+#: fortran/resolve.cc:16069
 #, fuzzy, gcc-internal-format
 msgid "Allocatable coarray variable %qs at %L must have deferred shape"
 msgstr "%C处可分配的组件必须有延迟的外形"
 
-#: 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 "函数结果‘%s’在%L处不能有初始值设定"
 
-#: 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 "%L处的哑过程不允许出现在 ELEMENTAL 过程中"
 
-#: 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 "%L处的哑过程不允许出现在 ELEMENTAL 过程中"
 
-#: 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 "%L处的哑过程不允许出现在 ELEMENTAL 过程中"
 
-#: fortran/resolve.cc:16109
+#: fortran/resolve.cc:16138
 #, fuzzy, gcc-internal-format
 #| msgid "Namelist %s cannot be renamed by USE association to %s"
 msgid "Namelist %qs cannot be an argument to subroutine or function at %L"
 msgstr "名字列表 %s 不能为对 %s 的 USE 关联来更名"
 
-#: fortran/resolve.cc:16180
+#: fortran/resolve.cc:16209
 #, gcc-internal-format, gfc-internal-format
 msgid "Threadprivate at %L isn't SAVEd"
 msgstr "%L处的线程私有变量未被保存"
 
-#: fortran/resolve.cc:16192
+#: fortran/resolve.cc:16221
 #, gcc-internal-format
 msgid "!$OMP DECLARE TARGET variable %qs at %L isn't SAVEd"
 msgstr ""
 
-#: fortran/resolve.cc:16299
+#: fortran/resolve.cc:16328
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Expecting list of named entities at %C"
 msgid "Expecting definable entity near %L"
 msgstr "%C处需要有名实体列表"
 
-#: fortran/resolve.cc:16307
+#: fortran/resolve.cc:16336
 #, fuzzy, gcc-internal-format
 msgid "BLOCK DATA element %qs at %L must be in COMMON"
 msgstr "%2$L处 BLOCK DATA 元素‘%1$s’必须在 COMMON 中"
 
-#: 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 "%2$L处 BLOCK DATA 元素‘%1$s’必在前一个声明中指定"
 
-#: fortran/resolve.cc:16321
+#: fortran/resolve.cc:16350
 #, fuzzy, gcc-internal-format
 msgid "DATA element %qs at %L cannot have a coindex"
 msgstr "%L处数据传输元素不能有 PRIVATE 组件"
 
-#: 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 "%2$L处的 DATA 元素‘%1$s’是一个指针所以必须是一个完全的数组"
 
-#: 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 "在 %2$L 处基本过程的参数“%1$s”不能有 POINTER 属性"
 
-#: fortran/resolve.cc:16399
+#: fortran/resolve.cc:16428
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonconstant array section at %L in DATA statement"
 msgstr "%L处 DATA 语句中有非常量数组段"
 
-#: fortran/resolve.cc:16412
+#: fortran/resolve.cc:16441
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %L has more variables than values"
 msgstr "%L处的 DATA 语名中变量比值多"
 
-#: fortran/resolve.cc:16511
+#: fortran/resolve.cc:16540
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "start of implied-do loop at %L could not be simplified to a constant value"
 msgstr "开始的 implied-do 循环于 %L 无法被简化到常数"
 
-#: fortran/resolve.cc:16519
+#: fortran/resolve.cc:16548
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "end of implied-do loop at %L could not be simplified to a constant value"
 msgstr "结束的 implied-do 循环于 %L 无法被简化到常数"
 
-#: fortran/resolve.cc:16527
+#: fortran/resolve.cc:16556
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "step of implied-do loop at %L could not be simplified to a constant value"
 msgstr "步骤的 implied-do 循环于 %L 无法被简化到常数"
 
-#: 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 "步骤的 implied-do 循环于 %L 无法被简化到常数"
 
-#: fortran/resolve.cc:16659
+#: fortran/resolve.cc:16688
 #, gcc-internal-format, gfc-internal-format
 msgid "DATA statement at %L has more values than variables"
 msgstr "%L处的 DATA 语句中值比变量多"
 
-#: fortran/resolve.cc:16825
+#: fortran/resolve.cc:16854
 #, gcc-internal-format, gfc-internal-format
 msgid "Label %d at %L defined but not used"
 msgstr "标号 %d 于 %L 经定义但未被使用"
 
-#: 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 "标号 %d 于 %L 经定义但无法被使用"
 
-#: 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 "%2$L处的派生类型变量‘%1$s’必须有 SEQUENCE 属性方能成为 EQUIVALENCE 对象"
 
-#: 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 "%2$L处的派生类型变量‘%1$s’必须没有 ALLOCATABLE 组件方能成为一个 EQUIVALENCE 对象"
 
-#: 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 "%2$L处的默认初始化的派生类型变量‘%1$s’不能成为 EQUIVALENCE 对象,因为它在 COMMON 中有变量"
 
-#: 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 "%2$L处的带指针组件的派生类型变量‘%1$s’不能成为一个 EQUIVALENCE 对象"
 
-#: fortran/resolve.cc:17051
+#: fortran/resolve.cc:17080
 #, gcc-internal-format, gfc-internal-format
 msgid "Syntax error in EQUIVALENCE statement at %L"
 msgstr "%L处 EQUIVALENCE 语句语法错误"
 
-#: 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 "%L处 EQUIVALENCE 集中的对象必须都带有或者都不带有 PROTECTED 属性"
 
-#: 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 "%2$L处的公共块成员‘%1$s’不能在纯过程‘%3$s’中成为一个 EQUIVALENCE 对象"
 
-#: fortran/resolve.cc:17100
+#: fortran/resolve.cc:17129
 #, fuzzy, gcc-internal-format
 msgid "Named constant %qs at %L cannot be an EQUIVALENCE object"
 msgstr "%2$L处的有名常量‘%1$s’不能是一个 EQUIVALENCE 对象"
 
-#: 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 "%2$L处有非常量界限的数组‘%1$s’不能是一个 EQUIVALENCE 对象"
 
-#: fortran/resolve.cc:17184
+#: fortran/resolve.cc:17213
 #, fuzzy, gcc-internal-format
 msgid "Structure component %qs at %L cannot be an EQUIVALENCE object"
 msgstr "%2$L处结构组件‘%1$s’不能是一个 EQUIVALENCE 对象"
 
-#: fortran/resolve.cc:17195
+#: fortran/resolve.cc:17224
 #, gcc-internal-format, gfc-internal-format
 msgid "Substring at %L has length zero"
 msgstr "%L 的子字符串长度为零"
 
-#: fortran/resolve.cc:17226
+#: fortran/resolve.cc:17255
 #, fuzzy, gcc-internal-format
 #| msgid "Syntax error in character length specification at %C"
 msgid "Self reference in character length expression for %qs at %L"
 msgstr "%C处字符长度规格语法错误"
 
-#: fortran/resolve.cc:17293
+#: fortran/resolve.cc:17322
 #, fuzzy, gcc-internal-format
 msgid "PUBLIC function %qs at %L of PRIVATE type %qs"
 msgstr "Fortran 2003:%2$L处 PRIVATE 类型‘%3$s’的 PUBLIC 函数‘%1$s’"
 
-#: fortran/resolve.cc:17306
+#: fortran/resolve.cc:17335
 #, fuzzy, gcc-internal-format
 msgid "ENTRY %qs at %L has no IMPLICIT type"
 msgstr "%2$L处的 ENTRY‘%1$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 "%2$L处的用户运算符‘%1$s’必须是一个 FUNCTION"
 
-#: 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 "%2$L处用户运算符过程‘%1$s’不能有假定字符长度"
 
-#: 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 "%2$L处的用户运算符‘%1$s’必须至少有一个实参"
 
-#: fortran/resolve.cc:17358
+#: fortran/resolve.cc:17387
 #, gcc-internal-format, gfc-internal-format
 msgid "First argument of operator interface at %L cannot be optional"
 msgstr "%L处运算符接口的第一个参数不能是可选的"
 
-#: fortran/resolve.cc:17376
+#: fortran/resolve.cc:17405
 #, gcc-internal-format, gfc-internal-format
 msgid "Second argument of operator interface at %L cannot be optional"
 msgstr "%L处运算符接口的第二个参数不能是可选的"
 
-#: fortran/resolve.cc:17383
+#: fortran/resolve.cc:17412
 #, gcc-internal-format, gfc-internal-format
 msgid "Operator interface at %L must have, at most, two arguments"
 msgstr "%L处的运算符接口必须有至多两个实参"
 
-#: 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 "%2$L处 PURE 过程中包含的过程‘%1$s’必须也是 PURE"
@@ -78821,96 +79073,96 @@ msgstr "不存在的 include 目录 %qs"
 msgid "%qs is not a directory"
 msgstr "%qs 不是目录"
 
-#: fortran/scanner.cc:793
+#: fortran/scanner.cc:792
 #, fuzzy, 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 "%C处的 !$OMP 开始了一个注释行,因为它既不是由一个空白符跟随也不是一个续行"
 
-#: 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 "%C处的 !$OMP 开始了一个注释行,因为它既不是由一个空白符跟随也不是一个续行"
 
-#: fortran/scanner.cc:1320 fortran/scanner.cc:1523
+#: fortran/scanner.cc:1319 fortran/scanner.cc:1522
 #, gcc-internal-format, gfc-internal-format
 msgid "Line truncated at %L"
 msgstr "行在%L处被截断"
 
-#: fortran/scanner.cc:1384 fortran/scanner.cc:1613
+#: fortran/scanner.cc:1383 fortran/scanner.cc:1612
 #, gcc-internal-format, gfc-internal-format
 msgid "Limit of %d continuations exceeded in statement at %C"
 msgstr "%2$C处语句超出 %1$d 个续行的限制"
 
-#: 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 "若延续字符常量中缺少 & 则给出警告"
 
-#: fortran/scanner.cc:1764
+#: fortran/scanner.cc:1763
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonconforming tab character at %C"
 msgstr "%C处的制表符不相容"
 
-#: fortran/scanner.cc:1775
+#: fortran/scanner.cc:1774
 #, fuzzy, gcc-internal-format, gfc-internal-format
 #| msgid "Invalid character in name at %C"
 msgid "Invalid character 0x%s at %C"
 msgstr "%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 "weakref%q+D最终指向其自身"
 
-#: fortran/scanner.cc:1957
+#: fortran/scanner.cc:1956
 #, gcc-internal-format, gfc-internal-format
 msgid "Nonconforming tab character in column %d of line %d"
 msgstr "第 %d 列第 %d 行有不相容的制表符"
 
-#: fortran/scanner.cc:2186
+#: fortran/scanner.cc:2185
 #, fuzzy, gcc-internal-format
 #| msgid "%s:%d: file %s left but not entered"
 msgid "file %qs left but not entered"
 msgstr "%s:%d:文件 %s 被留下但未进入"
 
-#: fortran/scanner.cc:2228
+#: fortran/scanner.cc:2227
 #, fuzzy, gcc-internal-format
 #| msgid "%s:%d: Illegal preprocessor directive"
 msgid "Illegal preprocessor directive"
 msgstr "%s:%d:无效的预处理指令"
 
-#: 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
 #, gcc-internal-format
 msgid "Cannot open file %qs"
 msgstr "无法打开文件 %qs"
 
-#: fortran/scanner.cc:2573
+#: fortran/scanner.cc:2572
 #, fuzzy, gcc-internal-format
 #| msgid "Cannot open file %qs"
 msgid "Cannot open included file %qs"
 msgstr "无法打开文件 %qs"
 
-#: fortran/scanner.cc:2575
+#: fortran/scanner.cc:2574
 #, fuzzy, gcc-internal-format
 msgid "Cannot open pre-included file %qs"
 msgstr "无法打开输出文件“%s”"
 
-#: fortran/scanner.cc:2583 fortran/scanner.cc:2585
+#: fortran/scanner.cc:2582 fortran/scanner.cc:2584
 #, fuzzy, gcc-internal-format
 msgid "Included file %qs is not a regular file"
 msgstr "用法:%s [选项] [输入文件] [输出文件]\n"
@@ -79059,219 +79311,219 @@ msgstr "如果 ATAN2 %L 的第一个参数为 0,第二个参数必须不为 0"
 msgid "in gfc_simplify_cos(): Bad type"
 msgstr "在 gfc_simplify_cos():不恰当的类型"
 
-#: fortran/simplify.cc:2371
+#: fortran/simplify.cc:2372
 #, gcc-internal-format
 msgid "gfc_simplify_dim(): Bad type"
 msgstr "gfc_simplify_dim():不恰当的类型"
 
-#: fortran/simplify.cc:2945
+#: fortran/simplify.cc:2946
 #, gcc-internal-format
 msgid "in gfc_simplify_exp(): Bad type"
 msgstr "在 gfc_simplify_exp():不恰当的类型"
 
-#: fortran/simplify.cc:3159
+#: fortran/simplify.cc:3160
 #, gcc-internal-format
 msgid "gfc_simplify_floor(): Bad kind"
 msgstr "gfc_simplify_floor():不恰当的种类"
 
-#: fortran/simplify.cc:3272
+#: fortran/simplify.cc:3273
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of IACHAR at %L must be of length one"
 msgstr "%L处 IACHAR 的参数长度必须为 1"
 
-#: fortran/simplify.cc:3280
+#: fortran/simplify.cc:3281
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of IACHAR function at %L outside of range 0..127"
 msgstr "%L处 IACHAR 函数的实参不在 0..127 范围内"
 
-#: fortran/simplify.cc:3395
+#: fortran/simplify.cc:3396
 #, gcc-internal-format, gfc-internal-format
 msgid "Sum of second and third arguments of IBITS exceeds bit size at %L"
 msgstr "%L处 IBSET 的第二个和第三个参数的总和超过位大小"
 
-#: fortran/simplify.cc:3419
+#: fortran/simplify.cc:3420
 #, gcc-internal-format
 msgid "IBITS: Bad bit"
 msgstr ""
 
-#: fortran/simplify.cc:3470
+#: fortran/simplify.cc:3471
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of ICHAR at %L must be of length one"
 msgstr "%L处 ICHAR 的参数长度必须为 1"
 
 #. 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 "%2$L处 %1$s 函数的参数是负的"
 
-#: 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 "%L处 ISHFTC 的第二个参数大小超过第一个实参的 BIT_SIZE"
 
-#: 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 %L"
 msgid "Magnitude of second argument of ISHFTC exceeds BIT_SIZE of first argument at %C"
 msgstr "%L处 ISHFTC 的第二个参数大小超过第一个实参的 BIT_SIZE"
 
-#: 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 "%L处 LOG 的实参不可以小于或等于零"
 
-#: fortran/simplify.cc:4350 fortran/simplify.cc:4483
+#: fortran/simplify.cc:4351 fortran/simplify.cc:4484
 #, gcc-internal-format, gfc-internal-format
 msgid "DIM argument at %L is out of bounds"
 msgstr "%L处的 DIM 参数越界"
 
-#: fortran/simplify.cc:4710
+#: fortran/simplify.cc:4711
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of LOG at %L cannot be less than or equal to zero"
 msgstr "%L处 LOG 的实参不可以小于或等于零"
 
-#: fortran/simplify.cc:4723
+#: fortran/simplify.cc:4724
 #, gcc-internal-format, gfc-internal-format
 msgid "Complex argument of LOG at %L cannot be zero"
 msgstr "%L处 LOG 的复数实参不可为零"
 
-#: fortran/simplify.cc:4734
+#: fortran/simplify.cc:4735
 #, gcc-internal-format
 msgid "gfc_simplify_log: bad type"
 msgstr ""
 
-#: fortran/simplify.cc:4751
+#: fortran/simplify.cc:4752
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of LOG10 at %L cannot be less than or equal to zero"
 msgstr "%L处 LOG10 的实参不可以小于或等于零"
 
-#: fortran/simplify.cc:5089
+#: fortran/simplify.cc:5090
 #, gcc-internal-format
 msgid "simplify_min_max(): Bad type in arglist"
 msgstr ""
 
-#: 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 "%L处 NEAREST 的第二个参数不能为 0"
 
-#: fortran/simplify.cc:6024
+#: fortran/simplify.cc:6025
 #, fuzzy, gcc-internal-format
 msgid "gfc_simplify_mod(): Bad arguments"
 msgstr "gfc_trans_code():错误的语句代码"
 
-#: 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 "%L处 NEAREST 的第二个参数不能为 0"
 
-#: fortran/simplify.cc:6076
+#: fortran/simplify.cc:6077
 #, gcc-internal-format
 msgid "gfc_simplify_modulo(): Bad arguments"
 msgstr ""
 
-#: fortran/simplify.cc:6148
+#: fortran/simplify.cc:6149
 #, gcc-internal-format, gfc-internal-format
 msgid "Result of NEAREST is NaN at %L"
 msgstr "NEAREST 的结果在%L处为 NaN"
 
-#: fortran/simplify.cc:6725
+#: fortran/simplify.cc:6726
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument NCOPIES of REPEAT intrinsic is negative at %L"
 msgstr "%L处内建 REPEAT 的 NCOPIES 实参是负的"
 
-#: fortran/simplify.cc:6781
+#: fortran/simplify.cc:6782
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument NCOPIES of REPEAT intrinsic is too large at %L"
 msgstr "%L处内建 REPEAT 的 NCOPIES 实参太大"
 
-#: 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 "%C处整数太大"
 
-#: fortran/simplify.cc:7114
+#: fortran/simplify.cc:7115
 #, gcc-internal-format, gfc-internal-format
 msgid "Result of SCALE overflows its kind at %L"
 msgstr "%L处 SCALE 的结果上溢其种别"
 
-#: fortran/simplify.cc:7703
+#: fortran/simplify.cc:7704
 #, fuzzy, gcc-internal-format
 msgid "Bad type in gfc_simplify_sign"
 msgstr "常量表达式中类型错误"
 
-#: fortran/simplify.cc:7732
+#: fortran/simplify.cc:7733
 #, gcc-internal-format
 msgid "in gfc_simplify_sin(): Bad type"
 msgstr ""
 
-#: 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
 #, fuzzy, 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 "%L处数组构造函数中的元素数超过容许的上限 %d。请参见 -fmax-array-constructor 选项"
 
-#: fortran/simplify.cc:7947
+#: fortran/simplify.cc:7948
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Simplification of SPREAD at %C not yet implemented"
 msgstr "尚未描述"
 
-#: fortran/simplify.cc:7971
+#: fortran/simplify.cc:7972
 #, gcc-internal-format, gfc-internal-format
 msgid "Argument of SQRT at %L has a negative value"
 msgstr "%L处 SQRT 的参数为负"
 
-#: fortran/simplify.cc:7987
+#: fortran/simplify.cc:7988
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "invalid argument of SQRT at %L"
 msgstr "%L处 SQRT 的参数为负"
 
-#: fortran/simplify.cc:8334
+#: fortran/simplify.cc:8335
 #, fuzzy, 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 "发信匣的边界在中 IMAGE_INDEX 于 %L 用于尺寸 %d,子有 %ld 和 COARRAY 下限是 %ld)"
 
-#: fortran/simplify.cc:8357
+#: fortran/simplify.cc:8358
 #, fuzzy, 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 "发信匣的边界在中 IMAGE_INDEX 于 %L 用于尺寸 %d,子有 %ld 和 COARRAY 上限是 %ld)"
 
-#: fortran/simplify.cc:8841
+#: fortran/simplify.cc:8842
 #, fuzzy, gcc-internal-format
 msgid "Character %qs in string at %L cannot be converted into character kind %d"
 msgstr "%2$L处字符串中的字符‘%1$s’不能被转换到字符种别 %3$d"
@@ -79707,17 +79959,17 @@ msgstr "%L 处  EQUIVALENCE 中不等的初始值设定重叠"
 
 #. Problems occur when we get something like
 #. integer :: a(lots) = (/(i, i=1, lots)/)
-#: fortran/trans-array.cc:6285
+#: fortran/trans-array.cc:6292
 #, fuzzy, 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 "%L处数组构造函数中的元素数超过容许的上限 %d。请参见 -fmax-array-constructor 选项"
 
-#: fortran/trans-array.cc:8456
+#: fortran/trans-array.cc:8463
 #, fuzzy, gcc-internal-format
 msgid "Creating array temporary at %L for argument %qs"
 msgstr "在%L处建立临时数组"
 
-#: fortran/trans-array.cc:11719
+#: fortran/trans-array.cc:11726
 #, gcc-internal-format, gfc-internal-format
 msgid "bad expression type during walk (%d)"
 msgstr "走过错误的表达式类型(%d)"
@@ -79900,17 +80152,17 @@ msgstr "不能在%2$C处的 PURE 过程中读取变量‘%1$s’"
 msgid "Sorry, coindexed access to an unlimited polymorphic component at %L is not supported"
 msgstr "不能在%2$C处的 PURE 过程中读取变量‘%1$s’"
 
-#: fortran/trans-expr.cc:3878
+#: fortran/trans-expr.cc:3880
 #, gcc-internal-format
 msgid "Unknown intrinsic op"
 msgstr "未知的内建操作"
 
-#: fortran/trans-expr.cc:5396
+#: fortran/trans-expr.cc:5398
 #, gcc-internal-format, gfc-internal-format
 msgid "Unknown argument list function at %L"
 msgstr "%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 ""
@@ -79926,12 +80178,12 @@ msgstr "内部函数 %s(%d) 无法识别"
 msgid "%<dim%> argument of %s intrinsic at %L is not a valid dimension index"
 msgstr "%2$L处‘%1$s’内建函数的‘dim’实参不是一个有效的维数索引"
 
-#: 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 "%L处指针赋值时参数种别类型不同"
 
-#: 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 "外部对象‘%s’在%L处不能有初始值设定"
@@ -79946,81 +80198,81 @@ msgstr "Fortran 2003:%L处内部文件有名字列表"
 msgid "Bad IO basetype (%d)"
 msgstr "错误的 IO 基类型(%d)"
 
-#: 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 "Bad specification for assumed size array at %C"
 msgid "implicit mapping of assumed size array %qD"
 msgstr "%C处假定大小数组的规格说明错误"
 
-#: fortran/trans-openmp.cc:3072
+#: fortran/trans-openmp.cc:3082
 #, fuzzy, gcc-internal-format
 #| msgid "optional argument"
 msgid "optional class parameter"
 msgstr "可选参数"
 
-#: fortran/trans-openmp.cc:3388
+#: fortran/trans-openmp.cc:3399
 #, fuzzy, gcc-internal-format
 #| msgid "Expected expression type"
 msgid "unhandled expression type"
 msgstr "需要表达式类型"
 
-#: fortran/trans-openmp.cc:3542
+#: fortran/trans-openmp.cc:3553
 #, fuzzy, gcc-internal-format
 #| msgid "expected expression"
 msgid "unhandled expression"
 msgstr "需要表达式"
 
-#: fortran/trans-openmp.cc:7248
+#: fortran/trans-openmp.cc:7293
 #, gcc-internal-format
 msgid "gfc_trans_omp_workshare(): Bad statement code"
 msgstr "gfc_trans_omp_workshare():错误的语句代码"
 
-#: 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 "还是所有或没有任何上限必须被指定的于 %L"
 
-#: 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 "%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 "%L处 stat 变量必须是一个标量 INTEGER 变量"
 
-#: 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 "%2$C处的接口‘%1$s’不能是泛型"
 
-#: 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 "%L处 PURE 过程中指针赋值目标错误"
 
-#: 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 "%3$L处 %2$s 中的过程‘%1$s’没有显式接口"
 
-#: fortran/trans-openmp.cc:7665
+#: fortran/trans-openmp.cc:7710
 #, fuzzy, gcc-internal-format
 msgid "Cannot find symbol %qs"
 msgstr "在类%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 "过程‘%s’(在 %s 中,位于 %L) 既不是函数也不是子进程"
 
-#: fortran/trans-openmp.cc:7688
+#: fortran/trans-openmp.cc:7733
 #, fuzzy, gcc-internal-format
 #| msgid "-f%s and -msdata=%s are incompatible"
 msgid "variant %qs and base %qs at %L have incompatible types: %s"
@@ -80031,17 +80283,17 @@ msgstr "-f%s 和 -msdata=%s 互不兼容"
 msgid "An alternate return at %L without a * dummy argument"
 msgstr "%L 不带 * 虚参的替代返回"
 
-#: 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 "%L处指针赋值时参数种别类型不同"
 
-#: fortran/trans-stmt.cc:1354
+#: fortran/trans-stmt.cc:1363
 #, fuzzy, gcc-internal-format, gfc-internal-format
 msgid "Sorry, only support for integer kind %d implemented for image-set at %L"
 msgstr "抱歉,只有支持用于整数 kind %d 实现的用于 image-set 于 %L"
 
-#: fortran/trans-stmt.cc:3622
+#: fortran/trans-stmt.cc:3631
 #, fuzzy, gcc-internal-format
 msgid "gfc_trans_select(): Bad type for case expr."
 msgstr "gfc_trans_code():错误的语句代码"
@@ -82149,6 +82401,11 @@ msgstr "为不存在的方法%qE创建选择子"
 #~ msgid "%<-mint32%> is not supported for H8300 and H8300L targets"
 #~ msgstr "%<__int128%>在此目标机上不受支持"
 
+#, fuzzy
+#~| msgid "bad value (%s) for -mtune= switch"
+#~ msgid "bad value (%qs) for %<-mtune=%> switch"
+#~ msgstr "-mtune= 开关的值 (%s) 错误"
+
 #~ msgid "option(\"%s\") was already specified"
 #~ msgstr "option(\"%s\")已经被指定"
 
@@ -82170,6 +82427,10 @@ msgstr "为不存在的方法%qE创建选择子"
 #~ msgstr "弱引用在此配置下不受支持"
 
 #, fuzzy
+#~ msgid "unknown vectorization library ABI type (%qs) for %qs switch"
+#~ msgstr "%2$sveclibabi=%3$s %4$s向量库 ABI 类型(%1$s)未知"
+
+#, fuzzy
 #~ msgid "the layout of aggregates containing vectors with %d-byte alignment has changed in GCC 5"
 #~ msgstr "在 GCC 4.4 中传递有 long double 的联合的 ABI 有改变"
 
@@ -82310,6 +82571,11 @@ msgstr "为不存在的方法%qE创建选择子"
 #~ msgstr "内部错误:内建函数 %s 的第 %d 个参数有非预期的参数类型 %s"
 
 #, fuzzy
+#~| msgid "-mcmodel incompatible with other toc options"
+#~ msgid "%<-mcmodel incompatible with other toc options%>"
+#~ msgstr "-mcmodel incompatible 与其他 toc 选项不兼容"
+
+#, fuzzy
 #~ msgid "insufficient arguments to overloaded function %s"
 #~ msgstr "给予重载函数%qs的参数太少"
 
@@ -82667,11 +82933,6 @@ msgstr "为不存在的方法%qE创建选择子"
 #~ msgid "ASYNCHRONOUS= specifier at %L must be of default CHARACTER kind"
 #~ msgstr "必须为%L处的 ASYNCHRONOUS= 指定一个初始化表达式"
 
-#, fuzzy
-#~| msgid "ASYNCHRONOUS= specifier at %L must be an initialization expression"
-#~ msgid "ASYNCHRONOUS= specifier at %L must be scalar"
-#~ msgstr "必须为%L处的 ASYNCHRONOUS= 指定一个初始化表达式"
-
 #~ msgid "ASYNCHRONOUS= specifier at %L must be an initialization expression"
 #~ msgstr "必须为%L处的 ASYNCHRONOUS= 指定一个初始化表达式"
 
@@ -84742,9 +85003,6 @@ msgstr "为不存在的方法%qE创建选择子"
 #~ msgid "argument dependent lookup finds %q+D"
 #~ msgstr "依赖参数的查找找到了%q+D"
 
-#~ msgid "%qE does not have class type"
-#~ msgstr "%qE不是一个类"
-
 #, fuzzy
 #~ msgid "lambda-expression in unevaluated context"
 #~ msgstr "已经在 Lambda 表达式中捕获了%<this%>"